diff --git a/.gitignore b/.gitignore index 3e7e9cc..2d06e3e 100644 --- a/.gitignore +++ b/.gitignore @@ -151,12 +151,6 @@ cython_debug/ # option (not recommended) you can uncomment the following to ignore the entire idea folder. #.idea/ -# Differential Gaussian Rasterization -diff-gaussian-rasterization/ - -# Nvdiffrast -nvdiffrast/ - # Model files *.ckpt *.bin @@ -166,5 +160,7 @@ nvdiffrast/ # Ignore test outputs outputs/ -# Ignore git cloned project only for build dependencies -_Pre_Builds/_Build_Dependencies \ No newline at end of file +# Ignore folders only used for build dependencies +_Pre_Builds/_Build_Dependencies +_Pre_Builds/_Build_Wheels +_Pre_Builds/_Libs \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json index 13cd9e2..3579b90 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2,6 +2,7 @@ "cmake.sourceDirectory": "C:/Users/reall/Softwares/ComfyUI_windows_portable/ComfyUI/custom_nodes/ComfyUI-3D-Pack/diff-gaussian-rasterization", "python.analysis.extraPaths": [ "./gen_3d_modules", - "./MVs_Algorithms" + "./MVs_Algorithms", + "./_Pre_Builds/_Build_Scripts" ] } \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 4678751..6153931 100644 --- a/Dockerfile +++ b/Dockerfile @@ -52,24 +52,20 @@ ENV NVIDIA_DRIVER_CAPABILITIES compute,utility,graphics # Default pyopengl to EGL for good headless rendering support ENV PYOPENGL_PLATFORM egl -RUN pip install --no-cache --index-url https://download.pytorch.org/whl/cu121 \ - torch==2.2.0 torchvision==0.17.0 xformers==0.0.24 - WORKDIR /app RUN git clone "https://github.com/comfyanonymous/ComfyUI.git" ./ && \ git reset --hard 05cd00695a84cebd5603a31f665eb7301fba2beb RUN pip install --no-cache -r requirements.txt WORKDIR /app/custom_nodes/ComfyUI-3D-Pack/ -COPY --chown=user:user requirements.txt requirements_post.txt ./ -COPY --chown=user:user _Pre_Builds/_Libs _Pre_Builds/_Libs +COPY --chown=user:user requirements.txt ./ RUN pip install --no-cache -r requirements.txt \ # post requirements installation require gpu, setup # `nvidia-container-runtime`, for docker, see # https://stackoverflow.com/a/61737404 - -r requirements_post.txt \ # those seem to be missed - ninja scikit-learn rembg[gpu] open_clip_torch + ninja rembg[gpu] open_clip_torch \ + python install.py WORKDIR /app/custom_nodes/ RUN git clone "https://github.com/ltdrdata/ComfyUI-Impact-Pack" && \ diff --git a/Libs/simple-knn/ext.cpp b/Libs/simple-knn/ext.cpp deleted file mode 100644 index ae6cefe..0000000 --- a/Libs/simple-knn/ext.cpp +++ /dev/null @@ -1,17 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#include -#include "spatial.h" - -PYBIND11_MODULE(TORCH_EXTENSION_NAME, m) { - m.def("distCUDA2", &distCUDA2); -} diff --git a/Libs/simple-knn/setup.py b/Libs/simple-knn/setup.py deleted file mode 100644 index 580d2bd..0000000 --- a/Libs/simple-knn/setup.py +++ /dev/null @@ -1,35 +0,0 @@ -# -# Copyright (C) 2023, Inria -# GRAPHDECO research group, https://team.inria.fr/graphdeco -# All rights reserved. -# -# This software is free for non-commercial, research and evaluation use -# under the terms of the LICENSE.md file. -# -# For inquiries contact george.drettakis@inria.fr -# - -from setuptools import setup -from torch.utils.cpp_extension import CUDAExtension, BuildExtension -import os - -cxx_compiler_flags = [] - -if os.name == 'nt': - cxx_compiler_flags.append("/wd4624") - -setup( - name="simple_knn", - ext_modules=[ - CUDAExtension( - name="simple_knn._C", - sources=[ - "spatial.cu", - "simple_knn.cu", - "ext.cpp"], - extra_compile_args={"nvcc": [], "cxx": cxx_compiler_flags}) - ], - cmdclass={ - 'build_ext': BuildExtension - } -) diff --git a/Libs/simple-knn/simple_knn.cu b/Libs/simple-knn/simple_knn.cu deleted file mode 100644 index 880a49b..0000000 --- a/Libs/simple-knn/simple_knn.cu +++ /dev/null @@ -1,222 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#define BOX_SIZE 1024 - -#include "cuda_runtime.h" -#include "device_launch_parameters.h" -#include "simple_knn.h" -#include -#include -#include -#include -#include -#include -#define __CUDACC__ -#include -#include -#include - -namespace cg = cooperative_groups; - -struct CustomMin -{ - __device__ __forceinline__ - float3 operator()(const float3& a, const float3& b) const { - return { min(a.x, b.x), min(a.y, b.y), min(a.z, b.z) }; - } -}; - -struct CustomMax -{ - __device__ __forceinline__ - float3 operator()(const float3& a, const float3& b) const { - return { max(a.x, b.x), max(a.y, b.y), max(a.z, b.z) }; - } -}; - -__host__ __device__ uint32_t prepMorton(uint32_t x) -{ - x = (x | (x << 16)) & 0x030000FF; - x = (x | (x << 8)) & 0x0300F00F; - x = (x | (x << 4)) & 0x030C30C3; - x = (x | (x << 2)) & 0x09249249; - return x; -} - -__host__ __device__ uint32_t coord2Morton(float3 coord, float3 minn, float3 maxx) -{ - uint32_t x = prepMorton(((coord.x - minn.x) / (maxx.x - minn.x)) * ((1 << 10) - 1)); - uint32_t y = prepMorton(((coord.y - minn.y) / (maxx.y - minn.y)) * ((1 << 10) - 1)); - uint32_t z = prepMorton(((coord.z - minn.z) / (maxx.z - minn.z)) * ((1 << 10) - 1)); - - return x | (y << 1) | (z << 2); -} - -__global__ void coord2Morton(int P, const float3* points, float3 minn, float3 maxx, uint32_t* codes) -{ - auto idx = cg::this_grid().thread_rank(); - if (idx >= P) - return; - - codes[idx] = coord2Morton(points[idx], minn, maxx); -} - -struct MinMax -{ - float3 minn; - float3 maxx; -}; - -__global__ void boxMinMax(uint32_t P, float3* points, uint32_t* indices, MinMax* boxes) -{ - auto idx = cg::this_grid().thread_rank(); - - MinMax me; - if (idx < P) - { - me.minn = points[indices[idx]]; - me.maxx = points[indices[idx]]; - } - else - { - me.minn = { FLT_MAX, FLT_MAX, FLT_MAX }; - me.maxx = { -FLT_MAX,-FLT_MAX,-FLT_MAX }; - } - - __shared__ MinMax redResult[BOX_SIZE]; - - for (int off = BOX_SIZE / 2; off >= 1; off /= 2) - { - if (threadIdx.x < 2 * off) - redResult[threadIdx.x] = me; - __syncthreads(); - - if (threadIdx.x < off) - { - MinMax other = redResult[threadIdx.x + off]; - me.minn.x = min(me.minn.x, other.minn.x); - me.minn.y = min(me.minn.y, other.minn.y); - me.minn.z = min(me.minn.z, other.minn.z); - me.maxx.x = max(me.maxx.x, other.maxx.x); - me.maxx.y = max(me.maxx.y, other.maxx.y); - me.maxx.z = max(me.maxx.z, other.maxx.z); - } - __syncthreads(); - } - - if (threadIdx.x == 0) - boxes[blockIdx.x] = me; -} - -__device__ __host__ float distBoxPoint(const MinMax& box, const float3& p) -{ - float3 diff = { 0, 0, 0 }; - if (p.x < box.minn.x || p.x > box.maxx.x) - diff.x = min(abs(p.x - box.minn.x), abs(p.x - box.maxx.x)); - if (p.y < box.minn.y || p.y > box.maxx.y) - diff.y = min(abs(p.y - box.minn.y), abs(p.y - box.maxx.y)); - if (p.z < box.minn.z || p.z > box.maxx.z) - diff.z = min(abs(p.z - box.minn.z), abs(p.z - box.maxx.z)); - return diff.x * diff.x + diff.y * diff.y + diff.z * diff.z; -} - -template -__device__ void updateKBest(const float3& ref, const float3& point, float* knn) -{ - float3 d = { point.x - ref.x, point.y - ref.y, point.z - ref.z }; - float dist = d.x * d.x + d.y * d.y + d.z * d.z; - for (int j = 0; j < K; j++) - { - if (knn[j] > dist) - { - float t = knn[j]; - knn[j] = dist; - dist = t; - } - } -} - -__global__ void boxMeanDist(uint32_t P, float3* points, uint32_t* indices, MinMax* boxes, float* dists) -{ - int idx = cg::this_grid().thread_rank(); - if (idx >= P) - return; - - float3 point = points[indices[idx]]; - float best[3] = { FLT_MAX, FLT_MAX, FLT_MAX }; - - for (int i = max(0, idx - 3); i <= min(P - 1, idx + 3); i++) - { - if (i == idx) - continue; - updateKBest<3>(point, points[indices[i]], best); - } - - float reject = best[2]; - best[0] = FLT_MAX; - best[1] = FLT_MAX; - best[2] = FLT_MAX; - - for (int b = 0; b < (P + BOX_SIZE - 1) / BOX_SIZE; b++) - { - MinMax box = boxes[b]; - float dist = distBoxPoint(box, point); - if (dist > reject || dist > best[2]) - continue; - - for (int i = b * BOX_SIZE; i < min(P, (b + 1) * BOX_SIZE); i++) - { - if (i == idx) - continue; - updateKBest<3>(point, points[indices[i]], best); - } - } - dists[indices[idx]] = (best[0] + best[1] + best[2]) / 3.0f; -} - -void SimpleKNN::knn(int P, float3* points, float* meanDists) -{ - float3* result; - cudaMalloc(&result, sizeof(float3)); - size_t temp_storage_bytes; - - float3 init = { 0, 0, 0 }, minn, maxx; - - cub::DeviceReduce::Reduce(nullptr, temp_storage_bytes, points, result, P, CustomMin(), init); - thrust::device_vector temp_storage(temp_storage_bytes); - - cub::DeviceReduce::Reduce(temp_storage.data().get(), temp_storage_bytes, points, result, P, CustomMin(), init); - cudaMemcpy(&minn, result, sizeof(float3), cudaMemcpyDeviceToHost); - - cub::DeviceReduce::Reduce(temp_storage.data().get(), temp_storage_bytes, points, result, P, CustomMax(), init); - cudaMemcpy(&maxx, result, sizeof(float3), cudaMemcpyDeviceToHost); - - thrust::device_vector morton(P); - thrust::device_vector morton_sorted(P); - coord2Morton << <(P + 255) / 256, 256 >> > (P, points, minn, maxx, morton.data().get()); - - thrust::device_vector indices(P); - thrust::sequence(indices.begin(), indices.end()); - thrust::device_vector indices_sorted(P); - - cub::DeviceRadixSort::SortPairs(nullptr, temp_storage_bytes, morton.data().get(), morton_sorted.data().get(), indices.data().get(), indices_sorted.data().get(), P); - temp_storage.resize(temp_storage_bytes); - - cub::DeviceRadixSort::SortPairs(temp_storage.data().get(), temp_storage_bytes, morton.data().get(), morton_sorted.data().get(), indices.data().get(), indices_sorted.data().get(), P); - - uint32_t num_boxes = (P + BOX_SIZE - 1) / BOX_SIZE; - thrust::device_vector boxes(num_boxes); - boxMinMax << > > (P, points, indices_sorted.data().get(), boxes.data().get()); - boxMeanDist << > > (P, points, indices_sorted.data().get(), boxes.data().get(), meanDists); - - cudaFree(result); -} diff --git a/Libs/simple-knn/simple_knn.h b/Libs/simple-knn/simple_knn.h deleted file mode 100644 index 3fcfdb8..0000000 --- a/Libs/simple-knn/simple_knn.h +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#ifndef SIMPLEKNN_H_INCLUDED -#define SIMPLEKNN_H_INCLUDED - -class SimpleKNN -{ -public: - static void knn(int P, float3* points, float* meanDists); -}; - -#endif \ No newline at end of file diff --git a/Libs/simple-knn/simple_knn/.gitkeep b/Libs/simple-knn/simple_knn/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/Libs/simple-knn/spatial.cu b/Libs/simple-knn/spatial.cu deleted file mode 100644 index 1a6a654..0000000 --- a/Libs/simple-knn/spatial.cu +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#include "spatial.h" -#include "simple_knn.h" - -torch::Tensor -distCUDA2(const torch::Tensor& points) -{ - const int P = points.size(0); - - auto float_opts = points.options().dtype(torch::kFloat32); - torch::Tensor means = torch::full({P}, 0.0, float_opts); - - SimpleKNN::knn(P, (float3*)points.contiguous().data(), means.contiguous().data()); - - return means; -} \ No newline at end of file diff --git a/Libs/simple-knn/spatial.h b/Libs/simple-knn/spatial.h deleted file mode 100644 index 280c953..0000000 --- a/Libs/simple-knn/spatial.h +++ /dev/null @@ -1,14 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#include - -torch::Tensor distCUDA2(const torch::Tensor& points); \ No newline at end of file diff --git a/NeuS/models/dataset_mvdiff.py b/NeuS/models/dataset_mvdiff.py deleted file mode 100644 index e9ce144..0000000 --- a/NeuS/models/dataset_mvdiff.py +++ /dev/null @@ -1,306 +0,0 @@ -import torch -import torch.nn.functional as F -import cv2 -import numpy as np -import os -from glob import glob -from scipy.spatial.transform import Rotation as Rot -from scipy.spatial.transform import Slerp -from glob import glob - -from shared_utils.image_utils import prepare_torch_img - -def camNormal2worldNormal(rot_c2w, camNormal): - H,W,_ = camNormal.shape - normal_img = np.matmul(rot_c2w[None, :, :], camNormal.reshape(-1,3)[:, :, None]).reshape([H, W, 3]) - - return normal_img - -def worldNormal2camNormal(rot_w2c, worldNormal): - H,W,_ = worldNormal.shape - normal_img = np.matmul(rot_w2c[None, :, :], worldNormal.reshape(-1,3)[:, :, None]).reshape([H, W, 3]) - - return normal_img - -def trans_normal(normal, RT_w2c, RT_w2c_target): - - normal_world = camNormal2worldNormal(np.linalg.inv(RT_w2c[:3,:3]), normal) - normal_target_cam = worldNormal2camNormal(RT_w2c_target[:3,:3], normal_world) - - return normal_target_cam - -def img2normal(img): - return (img/255.)*2-1 - -def normal2img(normal): - return np.uint8((normal*0.5+0.5)*255) - -def norm_normalize(normal, dim=-1): - - normal = normal/(np.linalg.norm(normal, axis=dim, keepdims=True)+1e-6) - - return normal - -def RT_opengl2opencv(RT): - # Build the coordinate transform matrix from world to computer vision camera - # R_world2cv = R_bcam2cv@R_world2bcam - # T_world2cv = R_bcam2cv@T_world2bcam - - R = RT[:3, :3] - t = RT[:3, 3] - - R_bcam2cv = np.asarray([[1, 0, 0], [0, -1, 0], [0, 0, -1]], np.float32) - - R_world2cv = R_bcam2cv @ R - t_world2cv = R_bcam2cv @ t - - RT = np.concatenate([R_world2cv,t_world2cv[:,None]],1) - - return RT - -def normal_opengl2opencv(normal): - H,W,C = np.shape(normal) - # normal_img = np.reshape(normal, (H*W,C)) - R_bcam2cv = np.array([1, -1, -1], np.float32) - normal_cv = normal * R_bcam2cv[None, None, :] - - return normal_cv - -def inv_RT(RT): - RT_h = np.concatenate([RT, np.array([[0,0,0,1]])], axis=0) - RT_inv = np.linalg.inv(RT_h) - - return RT_inv[:3, :] - -def load_pose_and_preprocess(mv_images, mv_masks, mv_normals, imSize, view_types, cam_pose_dir=None, normal_system='front'): - - all_images = [] - all_masks = [] - all_normals = [] - all_normals_world = [] - all_poses = [] - all_w2cs = [] - - RT_front = np.loadtxt(glob(os.path.join(cam_pose_dir, '*_%s_RT.txt'%( 'front')))[0]) # world2cam matrix - RT_front_cv = RT_opengl2opencv(RT_front) # convert normal from opengl to opencv - img_H, img_W = imSize[0], imSize[1] - - # rgb to bgr - mv_images = mv_images[:, :, :, [2, 1, 0]].contiguous() - - for idx, view in enumerate(view_types): - - image = prepare_torch_img(mv_images[idx].unsqueeze(0), img_H, img_W, keep_shape=True).squeeze(0).detach().cpu().numpy() - mask = prepare_torch_img(mv_masks[idx].unsqueeze(2).unsqueeze(0), img_H, img_W, keep_shape=True).squeeze(0).squeeze(2).detach().cpu().numpy() - normal = prepare_torch_img(mv_normals[idx].unsqueeze(0), img_H, img_W, keep_shape=True).detach().squeeze(0).cpu().numpy() - - RT = np.loadtxt(os.path.join(cam_pose_dir, '000_%s_RT.txt'%( view))) # world2cam matrix - - # [0, 1] -> [-1, 1] - normal = normal * 2 - 1 - normal[mask==0] = [0,0,0] - - RT_cv = RT_opengl2opencv(RT) # convert normal from opengl to opencv - all_poses.append(inv_RT(RT_cv)) # cam2world - all_w2cs.append(RT_cv) - - # whether to - normal_cam_cv = normal_opengl2opencv(normal) - - if normal_system == 'front': - normal_world = camNormal2worldNormal(inv_RT(RT_front_cv)[:3, :3], normal_cam_cv) - elif normal_system == 'self': - normal_world = camNormal2worldNormal(inv_RT(RT_cv)[:3, :3], normal_cam_cv) - - all_images.append(image) - all_masks.append(mask) - all_normals.append(normal_cam_cv) - all_normals_world.append(normal_world) - - return np.stack(all_images), np.stack(all_masks), np.stack(all_normals), np.stack(all_normals_world), np.stack(all_poses), np.stack(all_w2cs) - - -class Dataset: - def __init__(self, mv_images, mv_masks, mv_normals, conf, cam_pose_dir, num_views=6): - super(Dataset, self).__init__() - self.device = torch.device('cuda') - self.conf = conf - - self.object_viewidx = conf.get_int('object_viewidx') - self.imSize = conf['imSize'] - self.stage = conf['stage'] - self.mtype = conf['mtype'] - - if num_views == 4: - view_types = ['front', 'right', 'back', 'left'] - elif num_views == 5: - view_types = ['front', 'front_right', 'right', 'back', 'left'] - elif num_views == 6: - view_types = ['front', 'front_right', 'right', 'back', 'left', 'front_left'] - - self.images_np, self.masks_np, self.normals_cam_np, self.normals_world_np ,self.pose_all_np, self.w2c_all_np = load_pose_and_preprocess( - mv_images, mv_masks, mv_normals, self.imSize, view_types, cam_pose_dir - ) - - self.n_images = num_views - - self.images = torch.from_numpy(self.images_np.astype(np.float32)).cpu() # [n_images, H, W, 3] - self.masks = torch.from_numpy(self.masks_np.astype(np.float32)).cpu() # [n_images, H, W] - self.normals_cam = torch.from_numpy(self.normals_cam_np.astype(np.float32)).cpu() # [n_images, H, W, 3] - self.normals_world = torch.from_numpy(self.normals_world_np.astype(np.float32)).cpu() # [n_images, H, W, 3] - self.pose_all = torch.from_numpy(self.pose_all_np.astype(np.float32)).cpu() # [n_images,3, 4] cam2world - # self.pose_all = torch.stack(self.pose_all).to(self.device) # [n_images, 4, 4] - self.H, self.W = self.images.shape[1], self.images.shape[2] - self.image_pixels = self.H * self.W - - self.intrinsic = torch.from_numpy(np.array([ - [self.W/2.0, 0, self.W / 2.0, 0], - [0, self.H/2.0, self.H/ 2.0, 0], - [0, 0, 1, 0], - [0, 0, 0, 1] - ]).astype(np.float32)) - - self.intrinsics_all = torch.stack([self.intrinsic]*num_views, dim=0).cpu() - self.intrinsics_all_inv = torch.inverse(self.intrinsics_all).cpu() # [n_images, 4, 4] - - object_bbox_min = np.array([-1.01, -1.01, -1.01, 1.0]) - object_bbox_max = np.array([ 1.01, 1.01, 1.01, 1.0]) - - self.object_bbox_min = object_bbox_min[:3] - self.object_bbox_max = object_bbox_max[:3] - - self.near = 0.2 - self.far = 2.4 - - self.cos = torch.nn.CosineSimilarity(dim=1, eps=1e-6) - self.all_rays = self.prepare_all_rays() - - def gen_rays_at(self, img_idx, resolution_level=1): - """ - Generate rays at world space from one camera. - """ - l = resolution_level - tx = torch.linspace(0, self.W - 1, self.W // l) - ty = torch.linspace(0, self.H - 1, self.H // l) - pixels_x, pixels_y = torch.meshgrid(tx, ty) - q = torch.stack([(pixels_x/self.W-0.5)*2, (pixels_y/self.H-0.5)*2, torch.zeros_like(pixels_y)], dim=-1) # W, H, 3 - - v = torch.stack([torch.zeros_like(pixels_y), torch.zeros_like(pixels_y), torch.ones_like(pixels_y)], dim=-1) # W, H, 3 - - # orthogonal projection - rays_v = v / torch.linalg.norm(v, ord=2, dim=-1, keepdim=True) # W, H, 3 - rays_v = torch.matmul(self.pose_all[img_idx, None, None, :3, :3].cuda(), rays_v[:, :, :, None].cuda()).squeeze() # W, H, 3 - - rays_o = torch.matmul(self.pose_all[img_idx, None, None, :3, :3].cuda(), q[:, :, :, None].cuda()).squeeze() # W, H, 3 - rays_o = self.pose_all[img_idx, None, None, :3, 3].expand(rays_v.shape).cuda() + rays_o # W, H, 3 - return rays_o.transpose(0, 1), rays_v.transpose(0, 1) - - def get_batch_of_random_rays(self, batch_size): - """ - Get batch of random rays at world space. - """ - batch_index = torch.randint(low=0, high=self.__len__(), size=[batch_size]) - return self.all_rays[batch_index, :] # batch_size, 14 - - def prepare_rays_a_view(self, img_idx): - """ - Generate random rays at world space from one camera. - """ - tx = torch.linspace(0, self.W - 1, self.W) - ty = torch.linspace(0, self.H - 1, self.H) - pixels_x, pixels_y = torch.meshgrid(tx, ty) - - pixels_x = pixels_x.reshape(-1).long() - pixels_y = pixels_y.reshape(-1).long() - color = self.images[img_idx][(pixels_y, pixels_x)] # batch_size, 3 - mask = self.masks[img_idx][(pixels_y, pixels_x)] # batch_size, 3 - normal = self.normals_world[img_idx][(pixels_y, pixels_x)] # batch_size, 3 - - q = torch.stack([(pixels_x / self.W-0.5)*2, (pixels_y / self.H-0.5)*2, torch.zeros_like(pixels_y)], dim=-1).float() # batch_size, 3 - v = torch.stack([torch.zeros_like(pixels_y), torch.zeros_like(pixels_y), torch.ones_like(pixels_y)], dim=-1).float() - - rays_v = v / torch.linalg.norm(v, ord=2, dim=-1, keepdim=True) # batch_size, 3 - rays_v = torch.matmul(self.pose_all[img_idx, None, :3, :3], rays_v[:, :, None]).squeeze() # batch_size, 3 - - rays_o = torch.matmul(self.pose_all[img_idx, None, :3, :3], q[:, :, None]).squeeze() # batch_size, 3 - rays_o = self.pose_all[img_idx, None, :3, 3].expand(rays_v.shape) + rays_o # batch_size, 3 - - cosines = self.cos(rays_v, normal) - - # pdb.set_trace() - - return torch.cat([rays_o.cpu(), rays_v.cpu(), color, mask[:, None], normal, cosines[:, None]], dim=-1) # batch_size, 10 - - - def prepare_all_rays(self,): - all_rays = [] - for idx in range(self.n_images): - rays = self.prepare_rays_a_view(idx) - all_rays.append(rays) - all_rays = torch.concat(all_rays, dim=0) - return all_rays - - def __getitem__(self, idx): - return self.all_rays[idx] - - def __len__(self): - return self.all_rays.shape[0] - - def gen_rays_between(self, idx_0, idx_1, ratio, resolution_level=1): - """ - Interpolate pose between two cameras. - """ - l = resolution_level - tx = torch.linspace(0, self.W - 1, self.W // l) - ty = torch.linspace(0, self.H - 1, self.H // l) - pixels_x, pixels_y = torch.meshgrid(tx, ty) - p = torch.stack([pixels_x, pixels_y, torch.ones_like(pixels_y)], dim=-1) # W, H, 3 - p = torch.matmul(self.intrinsics_all_inv[0, None, None, :3, :3], p[:, :, :, None]).squeeze() # W, H, 3 - rays_v = p / torch.linalg.norm(p, ord=2, dim=-1, keepdim=True) # W, H, 3 - trans = self.pose_all[idx_0, :3, 3] * (1.0 - ratio) + self.pose_all[idx_1, :3, 3] * ratio - pose_0 = self.pose_all[idx_0].detach().cpu().numpy() - pose_1 = self.pose_all[idx_1].detach().cpu().numpy() - pose_0 = np.linalg.inv(pose_0) - pose_1 = np.linalg.inv(pose_1) - rot_0 = pose_0[:3, :3] - rot_1 = pose_1[:3, :3] - rots = Rot.from_matrix(np.stack([rot_0, rot_1])) - key_times = [0, 1] - slerp = Slerp(key_times, rots) - rot = slerp(ratio) - pose = np.diag([1.0, 1.0, 1.0, 1.0]) - pose = pose.astype(np.float32) - pose[:3, :3] = rot.as_matrix() - pose[:3, 3] = ((1.0 - ratio) * pose_0 + ratio * pose_1)[:3, 3] - pose = np.linalg.inv(pose) - rot = torch.from_numpy(pose[:3, :3]).cuda() - trans = torch.from_numpy(pose[:3, 3]).cuda() - rays_v = torch.matmul(rot[None, None, :3, :3], rays_v[:, :, :, None]).squeeze() # W, H, 3 - rays_o = trans[None, None, :3].expand(rays_v.shape) # W, H, 3 - return rays_o.transpose(0, 1), rays_v.transpose(0, 1) - - def near_far_from_sphere(self, rays_o, rays_d): - a = torch.sum(rays_d**2, dim=-1, keepdim=True) - b = 2.0 * torch.sum(rays_o * rays_d, dim=-1, keepdim=True) - mid = 0.5 * (-b) / a - near = mid - 1.0 - far = mid + 1.0 - return near, far - - def get_near_far(self,): - return self.near, self.far - - def image_at(self, idx, resolution_level): - img = self.images_np[idx] - return (cv2.resize(img, (self.W // resolution_level, self.H // resolution_level))).clip(0, 255) - - def normal_cam_at(self, idx, resolution_level): - normal_cam = self.normals_cam_np[idx] - img = normal2img(normal_cam) - return (cv2.resize(img, (self.W // resolution_level, self.H // resolution_level))).clip(0, 255) - - def mask_at(self, idx, resolution_level): - mask = np.uint8(self.masks_np[idx]*255)[:, :, None] - mask = np.concatenate([mask]*3, axis=-1) - return (cv2.resize(mask, (self.W // resolution_level, self.H // resolution_level))).clip(0, 255) - diff --git a/NeuS/models/embedder.py b/NeuS/models/embedder.py deleted file mode 100644 index c74f16b..0000000 --- a/NeuS/models/embedder.py +++ /dev/null @@ -1,51 +0,0 @@ -import torch -import torch.nn as nn - - -# Positional encoding embedding. Code was taken from https://github.com/bmild/nerf. -class Embedder: - def __init__(self, **kwargs): - self.kwargs = kwargs - self.create_embedding_fn() - - def create_embedding_fn(self): - embed_fns = [] - d = self.kwargs['input_dims'] - out_dim = 0 - if self.kwargs['include_input']: - embed_fns.append(lambda x: x) - out_dim += d - - max_freq = self.kwargs['max_freq_log2'] - N_freqs = self.kwargs['num_freqs'] - - if self.kwargs['log_sampling']: - freq_bands = 2. ** torch.linspace(0., max_freq, N_freqs) - else: - freq_bands = torch.linspace(2.**0., 2.**max_freq, N_freqs) - - for freq in freq_bands: - for p_fn in self.kwargs['periodic_fns']: - embed_fns.append(lambda x, p_fn=p_fn, freq=freq: p_fn(x * freq)) - out_dim += d - - self.embed_fns = embed_fns - self.out_dim = out_dim - - def embed(self, inputs): - return torch.cat([fn(inputs) for fn in self.embed_fns], -1) - - -def get_embedder(multires, input_dims=3): - embed_kwargs = { - 'include_input': True, - 'input_dims': input_dims, - 'max_freq_log2': multires-1, - 'num_freqs': multires, - 'log_sampling': True, - 'periodic_fns': [torch.sin, torch.cos], - } - - embedder_obj = Embedder(**embed_kwargs) - def embed(x, eo=embedder_obj): return eo.embed(x) - return embed, embedder_obj.out_dim diff --git a/NeuS/models/fields.py b/NeuS/models/fields.py deleted file mode 100644 index abadfe4..0000000 --- a/NeuS/models/fields.py +++ /dev/null @@ -1,264 +0,0 @@ -import torch -import torch.nn as nn -import torch.nn.functional as F -import numpy as np -from .embedder import get_embedder - - -# This implementation is borrowed from IDR: https://github.com/lioryariv/idr -class SDFNetwork(nn.Module): - def __init__(self, - d_in, - d_out, - d_hidden, - n_layers, - skip_in=(4,), - multires=0, - bias=0.5, - scale=1, - geometric_init=True, - weight_norm=True, - inside_outside=False): - super(SDFNetwork, self).__init__() - - dims = [d_in] + [d_hidden for _ in range(n_layers)] + [d_out] - - self.embed_fn_fine = None - - if multires > 0: - embed_fn, input_ch = get_embedder(multires, input_dims=d_in) - self.embed_fn_fine = embed_fn - dims[0] = input_ch - - self.num_layers = len(dims) - self.skip_in = skip_in - self.scale = scale - - for l in range(0, self.num_layers - 1): - if l + 1 in self.skip_in: - out_dim = dims[l + 1] - dims[0] - else: - out_dim = dims[l + 1] - - lin = nn.Linear(dims[l], out_dim) - - if geometric_init: - if l == self.num_layers - 2: - if not inside_outside: - torch.nn.init.normal_(lin.weight, mean=np.sqrt(np.pi) / np.sqrt(dims[l]), std=0.0001) - torch.nn.init.constant_(lin.bias, -bias) - else: - torch.nn.init.normal_(lin.weight, mean=-np.sqrt(np.pi) / np.sqrt(dims[l]), std=0.0001) - torch.nn.init.constant_(lin.bias, bias) - elif multires > 0 and l == 0: - torch.nn.init.constant_(lin.bias, 0.0) - torch.nn.init.constant_(lin.weight[:, 3:], 0.0) - torch.nn.init.normal_(lin.weight[:, :3], 0.0, np.sqrt(2) / np.sqrt(out_dim)) - elif multires > 0 and l in self.skip_in: - torch.nn.init.constant_(lin.bias, 0.0) - torch.nn.init.normal_(lin.weight, 0.0, np.sqrt(2) / np.sqrt(out_dim)) - torch.nn.init.constant_(lin.weight[:, -(dims[0] - 3):], 0.0) - else: - torch.nn.init.constant_(lin.bias, 0.0) - torch.nn.init.normal_(lin.weight, 0.0, np.sqrt(2) / np.sqrt(out_dim)) - - if weight_norm: - lin = nn.utils.weight_norm(lin) - - setattr(self, "lin" + str(l), lin) - - self.activation = nn.Softplus(beta=100) - - def forward(self, inputs): - inputs = inputs * self.scale - if self.embed_fn_fine is not None: - inputs = self.embed_fn_fine(inputs) - - x = inputs - for l in range(0, self.num_layers - 1): - lin = getattr(self, "lin" + str(l)) - - if l in self.skip_in: - x = torch.cat([x, inputs], 1) / np.sqrt(2) - - x = lin(x) - - if l < self.num_layers - 2: - x = self.activation(x) - return torch.cat([x[:, :1] / self.scale, x[:, 1:]], dim=-1) - - def sdf(self, x): - return self.forward(x)[:, :1] - - def sdf_hidden_appearance(self, x): - return self.forward(x) - - def gradient(self, x): - x.requires_grad_(True) - with torch.enable_grad(): - y = self.sdf(x) - d_output = torch.ones_like(y, requires_grad=False, device=y.device) - gradients = torch.autograd.grad( - outputs=y, - inputs=x, - grad_outputs=d_output, - create_graph=True, - retain_graph=True, - only_inputs=True)[0] - return gradients.unsqueeze(1) - - -# This implementation is borrowed from IDR: https://github.com/lioryariv/idr -class RenderingNetwork(nn.Module): - def __init__(self, - d_feature, - mode, - d_in, - d_out, - d_hidden, - n_layers, - weight_norm=True, - multires_view=0, - squeeze_out=True): - super().__init__() - - self.mode = mode - self.squeeze_out = squeeze_out - dims = [d_in + d_feature] + [d_hidden for _ in range(n_layers)] + [d_out] - - self.embedview_fn = None - if multires_view > 0: - embedview_fn, input_ch = get_embedder(multires_view) - self.embedview_fn = embedview_fn - dims[0] += (input_ch - 3) - - self.num_layers = len(dims) - - for l in range(0, self.num_layers - 1): - out_dim = dims[l + 1] - lin = nn.Linear(dims[l], out_dim) - - if weight_norm: - lin = nn.utils.weight_norm(lin) - - setattr(self, "lin" + str(l), lin) - - self.relu = nn.ReLU() - - def forward(self, points, normals, view_dirs, feature_vectors): - if self.embedview_fn is not None: - view_dirs = self.embedview_fn(view_dirs) - - rendering_input = None - - if self.mode == 'idr': - rendering_input = torch.cat([points, view_dirs, normals, feature_vectors], dim=-1) - elif self.mode == 'no_view_dir': - rendering_input = torch.cat([points, normals, feature_vectors], dim=-1) - elif self.mode == 'no_normal': - rendering_input = torch.cat([points, view_dirs, feature_vectors], dim=-1) - - x = rendering_input - - for l in range(0, self.num_layers - 1): - lin = getattr(self, "lin" + str(l)) - - x = lin(x) - - if l < self.num_layers - 2: - x = self.relu(x) - - if self.squeeze_out: - x = torch.sigmoid(x) - return x - - -# This implementation is borrowed from nerf-pytorch: https://github.com/yenchenlin/nerf-pytorch -class NeRF(nn.Module): - def __init__(self, - D=8, - W=256, - d_in=3, - d_in_view=3, - multires=0, - multires_view=0, - output_ch=4, - skips=[4], - use_viewdirs=False): - super(NeRF, self).__init__() - self.D = D - self.W = W - self.d_in = d_in - self.d_in_view = d_in_view - self.input_ch = 3 - self.input_ch_view = 3 - self.embed_fn = None - self.embed_fn_view = None - - if multires > 0: - embed_fn, input_ch = get_embedder(multires, input_dims=d_in) - self.embed_fn = embed_fn - self.input_ch = input_ch - - if multires_view > 0: - embed_fn_view, input_ch_view = get_embedder(multires_view, input_dims=d_in_view) - self.embed_fn_view = embed_fn_view - self.input_ch_view = input_ch_view - - self.skips = skips - self.use_viewdirs = use_viewdirs - - self.pts_linears = nn.ModuleList( - [nn.Linear(self.input_ch, W)] + - [nn.Linear(W, W) if i not in self.skips else nn.Linear(W + self.input_ch, W) for i in range(D - 1)]) - - ### Implementation according to the official code release - ### (https://github.com/bmild/nerf/blob/master/run_nerf_helpers.py#L104-L105) - self.views_linears = nn.ModuleList([nn.Linear(self.input_ch_view + W, W // 2)]) - - ### Implementation according to the paper - # self.views_linears = nn.ModuleList( - # [nn.Linear(input_ch_views + W, W//2)] + [nn.Linear(W//2, W//2) for i in range(D//2)]) - - if use_viewdirs: - self.feature_linear = nn.Linear(W, W) - self.alpha_linear = nn.Linear(W, 1) - self.rgb_linear = nn.Linear(W // 2, 3) - else: - self.output_linear = nn.Linear(W, output_ch) - - def forward(self, input_pts, input_views): - if self.embed_fn is not None: - input_pts = self.embed_fn(input_pts) - if self.embed_fn_view is not None: - input_views = self.embed_fn_view(input_views) - - h = input_pts - for i, l in enumerate(self.pts_linears): - h = self.pts_linears[i](h) - h = F.relu(h) - if i in self.skips: - h = torch.cat([input_pts, h], -1) - - if self.use_viewdirs: - alpha = self.alpha_linear(h) - feature = self.feature_linear(h) - h = torch.cat([feature, input_views], -1) - - for i, l in enumerate(self.views_linears): - h = self.views_linears[i](h) - h = F.relu(h) - - rgb = self.rgb_linear(h) - return alpha, rgb - else: - assert False - - -class SingleVarianceNetwork(nn.Module): - def __init__(self, init_val): - super(SingleVarianceNetwork, self).__init__() - self.register_parameter('variance', nn.Parameter(torch.tensor(init_val))) - - def forward(self, x): - return torch.ones([len(x), 1]).to(x.device) * torch.exp(self.variance * 10.0) diff --git a/NeuS/models/fixed_poses/000_back_RT.txt b/NeuS/models/fixed_poses/000_back_RT.txt deleted file mode 100644 index 7ef2610..0000000 --- a/NeuS/models/fixed_poses/000_back_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ --5.266582965850830078e-01 7.410295009613037109e-01 -4.165407419204711914e-01 -5.960464477539062500e-08 -5.865638996738198330e-08 4.900035560131072998e-01 8.717204332351684570e-01 -9.462351613365171943e-08 -8.500770330429077148e-01 4.590988159179687500e-01 -2.580644786357879639e-01 -1.300000071525573730e+00 diff --git a/NeuS/models/fixed_poses/000_back_left_RT.txt b/NeuS/models/fixed_poses/000_back_left_RT.txt deleted file mode 100644 index 7db25bb..0000000 --- a/NeuS/models/fixed_poses/000_back_left_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ --9.734988808631896973e-01 1.993551850318908691e-01 -1.120596975088119507e-01 -1.713633537292480469e-07 -3.790224578636980368e-09 4.900034964084625244e-01 8.717204928398132324e-01 1.772203575001185527e-07 -2.286916375160217285e-01 8.486189246177673340e-01 -4.770178496837615967e-01 -1.838477611541748047e+00 diff --git a/NeuS/models/fixed_poses/000_back_right_RT.txt b/NeuS/models/fixed_poses/000_back_right_RT.txt deleted file mode 100644 index be45ed8..0000000 --- a/NeuS/models/fixed_poses/000_back_right_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ -2.286914736032485962e-01 8.486190438270568848e-01 -4.770178198814392090e-01 1.564621925354003906e-07 --3.417914484771245043e-08 4.900034070014953613e-01 8.717205524444580078e-01 -7.293811421504869941e-08 -9.734990000724792480e-01 -1.993550658226013184e-01 1.120596155524253845e-01 -1.838477969169616699e+00 diff --git a/NeuS/models/fixed_poses/000_front_RT.txt b/NeuS/models/fixed_poses/000_front_RT.txt deleted file mode 100644 index 8278639..0000000 --- a/NeuS/models/fixed_poses/000_front_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ -5.266583561897277832e-01 -7.410295009613037109e-01 4.165407419204711914e-01 0.000000000000000000e+00 -5.865638996738198330e-08 4.900035560131072998e-01 8.717204332351684570e-01 9.462351613365171943e-08 --8.500770330429077148e-01 -4.590988159179687500e-01 2.580645382404327393e-01 -1.300000071525573730e+00 diff --git a/NeuS/models/fixed_poses/000_front_left_RT.txt b/NeuS/models/fixed_poses/000_front_left_RT.txt deleted file mode 100644 index 6255b9f..0000000 --- a/NeuS/models/fixed_poses/000_front_left_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ --2.286916971206665039e-01 -8.486189842224121094e-01 4.770179092884063721e-01 -2.458691596984863281e-07 -9.085837859856837895e-09 4.900034666061401367e-01 8.717205524444580078e-01 1.205695667749751010e-07 --9.734990000724792480e-01 1.993551701307296753e-01 -1.120597645640373230e-01 -1.838477969169616699e+00 diff --git a/NeuS/models/fixed_poses/000_front_right_RT.txt b/NeuS/models/fixed_poses/000_front_right_RT.txt deleted file mode 100644 index e1d76c8..0000000 --- a/NeuS/models/fixed_poses/000_front_right_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ -9.734989404678344727e-01 -1.993551850318908691e-01 1.120596975088119507e-01 -1.415610313415527344e-07 -3.790224578636980368e-09 4.900034964084625244e-01 8.717204928398132324e-01 -1.772203575001185527e-07 --2.286916375160217285e-01 -8.486189246177673340e-01 4.770178794860839844e-01 -1.838477611541748047e+00 diff --git a/NeuS/models/fixed_poses/000_left_RT.txt b/NeuS/models/fixed_poses/000_left_RT.txt deleted file mode 100644 index bd42197..0000000 --- a/NeuS/models/fixed_poses/000_left_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ --8.500771522521972656e-01 -4.590989053249359131e-01 2.580644488334655762e-01 0.000000000000000000e+00 --4.257411134744870651e-08 4.900034964084625244e-01 8.717204928398132324e-01 9.006067358541258727e-08 --5.266583561897277832e-01 7.410295605659484863e-01 -4.165408313274383545e-01 -1.300000071525573730e+00 diff --git a/NeuS/models/fixed_poses/000_right_RT.txt b/NeuS/models/fixed_poses/000_right_RT.txt deleted file mode 100644 index 2d37c02..0000000 --- a/NeuS/models/fixed_poses/000_right_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ -8.500770330429077148e-01 4.590989053249359131e-01 -2.580644488334655762e-01 5.960464477539062500e-08 --4.257411134744870651e-08 4.900034964084625244e-01 8.717204928398132324e-01 -9.006067358541258727e-08 -5.266583561897277832e-01 -7.410295605659484863e-01 4.165407419204711914e-01 -1.300000071525573730e+00 diff --git a/NeuS/models/fixed_poses/000_top_RT.txt b/NeuS/models/fixed_poses/000_top_RT.txt deleted file mode 100644 index 1d71f22..0000000 --- a/NeuS/models/fixed_poses/000_top_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ -9.958608150482177734e-01 7.923202216625213623e-02 -4.453715682029724121e-02 -3.098167056236889039e-09 --9.089154005050659180e-02 8.681122064590454102e-01 -4.879753291606903076e-01 5.784738377201392723e-08 --2.028124157504862524e-08 4.900035560131072998e-01 8.717204332351684570e-01 -1.300000071525573730e+00 diff --git a/NeuS/models/normal_utils.py b/NeuS/models/normal_utils.py deleted file mode 100644 index dff3730..0000000 --- a/NeuS/models/normal_utils.py +++ /dev/null @@ -1,45 +0,0 @@ -import numpy as np - -def camNormal2worldNormal(rot_c2w, camNormal): - H,W,_ = camNormal.shape - normal_img = np.matmul(rot_c2w[None, :, :], camNormal.reshape(-1,3)[:, :, None]).reshape([H, W, 3]) - - return normal_img - -def worldNormal2camNormal(rot_w2c, normal_map_world): - H,W,_ = normal_map_world.shape - # normal_img = np.matmul(rot_w2c[None, :, :], worldNormal.reshape(-1,3)[:, :, None]).reshape([H, W, 3]) - - # faster version - # Reshape the normal map into a 2D array where each row represents a normal vector - normal_map_flat = normal_map_world.reshape(-1, 3) - - # Transform the normal vectors using the transformation matrix - normal_map_camera_flat = np.dot(normal_map_flat, rot_w2c.T) - - # Reshape the transformed normal map back to its original shape - normal_map_camera = normal_map_camera_flat.reshape(normal_map_world.shape) - - return normal_map_camera - -def trans_normal(normal, RT_w2c, RT_w2c_target): - - # normal_world = camNormal2worldNormal(np.linalg.inv(RT_w2c[:3,:3]), normal) - # normal_target_cam = worldNormal2camNormal(RT_w2c_target[:3,:3], normal_world) - - relative_RT = np.matmul(RT_w2c_target[:3,:3], np.linalg.inv(RT_w2c[:3,:3])) - normal_target_cam = worldNormal2camNormal(relative_RT[:3,:3], normal) - - return normal_target_cam - -def img2normal(img): - return (img/255.)*2-1 - -def normal2img(normal): - return np.uint8((normal*0.5+0.5)*255) - -def norm_normalize(normal, dim=-1): - - normal = normal/(np.linalg.norm(normal, axis=dim, keepdims=True)+1e-6) - - return normal \ No newline at end of file diff --git a/NeuS/models/ops.py b/NeuS/models/ops.py deleted file mode 100644 index 526635c..0000000 --- a/NeuS/models/ops.py +++ /dev/null @@ -1,19 +0,0 @@ -import cv2 -import numpy as np - -def visualize_depth_numpy(depth, minmax=None, cmap=cv2.COLORMAP_JET): - """ - depth: (H, W) - """ - - x = np.nan_to_num(depth) # change nan to 0 - if minmax is None: - mi = np.min(x[x > 0]) # get minimum positive depth (ignore background) - ma = np.max(x) - else: - mi, ma = minmax - - x = (x - mi) / (ma - mi + 1e-8) # normalize to 0~1 - x = (255 * x).astype(np.uint8) - x_ = cv2.applyColorMap(x, cmap) - return x_, [mi, ma] \ No newline at end of file diff --git a/NeuS/models/renderer.py b/NeuS/models/renderer.py deleted file mode 100644 index 20c4cbe..0000000 --- a/NeuS/models/renderer.py +++ /dev/null @@ -1,431 +0,0 @@ -import torch -import torch.nn as nn -import torch.nn.functional as F -import numpy as np -import mcubes - -def extract_fields(bound_min, bound_max, resolution, query_func): - N = 64 - X = torch.linspace(bound_min[0], bound_max[0], resolution).split(N) - Y = torch.linspace(bound_min[1], bound_max[1], resolution).split(N) - Z = torch.linspace(bound_min[2], bound_max[2], resolution).split(N) - - u = np.zeros([resolution, resolution, resolution], dtype=np.float32) - with torch.no_grad(): - for xi, xs in enumerate(X): - for yi, ys in enumerate(Y): - for zi, zs in enumerate(Z): - xx, yy, zz = torch.meshgrid(xs, ys, zs) - pts = torch.cat([xx.reshape(-1, 1), yy.reshape(-1, 1), zz.reshape(-1, 1)], dim=-1) - val = query_func(pts.cuda()).reshape(len(xs), len(ys), len(zs)).detach().cpu().numpy() - u[xi * N: xi * N + len(xs), yi * N: yi * N + len(ys), zi * N: zi * N + len(zs)] = val - return u - - -def extract_geometry(bound_min, bound_max, resolution, threshold, query_func, color_func): - u = extract_fields(bound_min, bound_max, resolution, query_func) - vertices, triangles = mcubes.marching_cubes(u, threshold) - b_max_np = bound_max.detach().cpu().numpy() - b_min_np = bound_min.detach().cpu().numpy() - - vertices = vertices / (resolution - 1.0) * (b_max_np - b_min_np)[None, :] + b_min_np[None, :] - - vertices_color = color_func(vertices) - - return vertices, triangles, vertices_color - - -def sample_pdf(bins, weights, n_samples, det=False): - # This implementation is from NeRF - # Get pdf - device = weights.device - weights = weights + 1e-5 # prevent nans - pdf = weights / torch.sum(weights, -1, keepdim=True) - cdf = torch.cumsum(pdf, -1) - cdf = torch.cat([torch.zeros_like(cdf[..., :1]), cdf], -1) - # Take uniform samples - if det: - u = torch.linspace(0. + 0.5 / n_samples, 1. - 0.5 / n_samples, steps=n_samples).to(device) - u = u.expand(list(cdf.shape[:-1]) + [n_samples]) - else: - u = torch.rand(list(cdf.shape[:-1]) + [n_samples]).to(device) - - # Invert CDF - u = u.contiguous() - inds = torch.searchsorted(cdf, u, right=True) - below = torch.max(torch.zeros_like(inds - 1).to(device), inds - 1) - above = torch.min((cdf.shape[-1] - 1) * torch.ones_like(inds).to(device), inds) - inds_g = torch.stack([below, above], -1) # (batch, N_samples, 2) - - matched_shape = [inds_g.shape[0], inds_g.shape[1], cdf.shape[-1]] - cdf_g = torch.gather(cdf.unsqueeze(1).expand(matched_shape), 2, inds_g) - bins_g = torch.gather(bins.unsqueeze(1).expand(matched_shape), 2, inds_g) - - denom = (cdf_g[..., 1] - cdf_g[..., 0]) - denom = torch.where(denom < 1e-5, torch.ones_like(denom).to(device), denom) - t = (u - cdf_g[..., 0]) / denom - samples = bins_g[..., 0] + t * (bins_g[..., 1] - bins_g[..., 0]) - - return samples - - -class NeuSRenderer: - def __init__(self, - nerf, - sdf_network, - deviation_network, - color_network, - n_samples, - n_importance, - n_outside, - up_sample_steps, - perturb, - sdf_decay_param): - self.nerf = nerf - self.sdf_network = sdf_network - self.deviation_network = deviation_network - self.color_network = color_network - self.n_samples = n_samples - self.n_importance = n_importance - self.n_outside = n_outside - self.up_sample_steps = up_sample_steps - self.perturb = perturb - - self.sdf_decay_param = sdf_decay_param - - def render_core_outside(self, rays_o, rays_d, z_vals, sample_dist, nerf, background_rgb=None): - """ - Render background - """ - batch_size, n_samples = z_vals.shape - - # Section length - dists = z_vals[..., 1:] - z_vals[..., :-1] - dists = torch.cat([dists, torch.Tensor([sample_dist]).expand(dists[..., :1].shape)], -1) - mid_z_vals = z_vals + dists * 0.5 - - # Section midpoints - pts = rays_o[:, None, :] + rays_d[:, None, :] * mid_z_vals[..., :, None] # batch_size, n_samples, 3 - - dis_to_center = torch.linalg.norm(pts, ord=2, dim=-1, keepdim=True).clip(1.0, 1e10) - pts = torch.cat([pts / dis_to_center, 1.0 / dis_to_center], dim=-1) # batch_size, n_samples, 4 - - dirs = rays_d[:, None, :].expand(batch_size, n_samples, 3) - - pts = pts.reshape(-1, 3 + int(self.n_outside > 0)) - dirs = dirs.reshape(-1, 3) - - density, sampled_color = nerf(pts, dirs) - sampled_color = torch.sigmoid(sampled_color) - alpha = 1.0 - torch.exp(-F.softplus(density.reshape(batch_size, n_samples)) * dists) - alpha = alpha.reshape(batch_size, n_samples) - weights = alpha * torch.cumprod(torch.cat([torch.ones([batch_size, 1]), 1. - alpha + 1e-7], -1), -1)[:, :-1] - sampled_color = sampled_color.reshape(batch_size, n_samples, 3) - color = (weights[:, :, None] * sampled_color).sum(dim=1) - if background_rgb is not None: - color = color + background_rgb * (1.0 - weights.sum(dim=-1, keepdim=True)) - - return { - 'color': color, - 'sampled_color': sampled_color, - 'alpha': alpha, - 'weights': weights, - } - - def up_sample(self, rays_o, rays_d, z_vals, sdf, n_importance, inv_s): - """ - Up sampling give a fixed inv_s - """ - device = rays_o.device - batch_size, n_samples = z_vals.shape - pts = rays_o[:, None, :] + rays_d[:, None, :] * z_vals[..., :, None] # n_rays, n_samples, 3 - radius = torch.linalg.norm(pts, ord=2, dim=-1, keepdim=False) - inside_sphere = (radius[:, :-1] < 1.0) | (radius[:, 1:] < 1.0) - sdf = sdf.reshape(batch_size, n_samples) - prev_sdf, next_sdf = sdf[:, :-1], sdf[:, 1:] - prev_z_vals, next_z_vals = z_vals[:, :-1], z_vals[:, 1:] - mid_sdf = (prev_sdf + next_sdf) * 0.5 - cos_val = (next_sdf - prev_sdf) / (next_z_vals - prev_z_vals + 1e-5) - - # ---------------------------------------------------------------------------------------------------------- - # Use min value of [ cos, prev_cos ] - # Though it makes the sampling (not rendering) a little bit biased, this strategy can make the sampling more - # robust when meeting situations like below: - # - # SDF - # ^ - # |\ -----x----... - # | \ / - # | x x - # |---\----/-------------> 0 level - # | \ / - # | \/ - # | - # ---------------------------------------------------------------------------------------------------------- - prev_cos_val = torch.cat([torch.zeros([batch_size, 1]).to(device), cos_val[:, :-1]], dim=-1) - cos_val = torch.stack([prev_cos_val, cos_val], dim=-1) - cos_val, _ = torch.min(cos_val, dim=-1, keepdim=False) - cos_val = cos_val.clip(-1e3, 0.0) * inside_sphere - - dist = (next_z_vals - prev_z_vals) - prev_esti_sdf = mid_sdf - cos_val * dist * 0.5 - next_esti_sdf = mid_sdf + cos_val * dist * 0.5 - prev_cdf = torch.sigmoid(prev_esti_sdf * inv_s) - next_cdf = torch.sigmoid(next_esti_sdf * inv_s) - alpha = (prev_cdf - next_cdf + 1e-5) / (prev_cdf + 1e-5) - weights = alpha * torch.cumprod( - torch.cat([torch.ones([batch_size, 1]).to(device), 1. - alpha + 1e-7], -1), -1)[:, :-1] - - z_samples = sample_pdf(z_vals, weights, n_importance, det=True).detach() - return z_samples - - def cat_z_vals(self, rays_o, rays_d, z_vals, new_z_vals, sdf, last=False): - batch_size, n_samples = z_vals.shape - _, n_importance = new_z_vals.shape - pts = rays_o[:, None, :] + rays_d[:, None, :] * new_z_vals[..., :, None] - z_vals = torch.cat([z_vals, new_z_vals], dim=-1) - z_vals, index = torch.sort(z_vals, dim=-1) - - if not last: - new_sdf = self.sdf_network.sdf(pts.reshape(-1, 3)).reshape(batch_size, n_importance) - sdf = torch.cat([sdf, new_sdf], dim=-1) - xx = torch.arange(batch_size)[:, None].expand(batch_size, n_samples + n_importance).reshape(-1) - index = index.reshape(-1) - sdf = sdf[(xx, index)].reshape(batch_size, n_samples + n_importance) - - return z_vals, sdf - - def render_core(self, - rays_o, - rays_d, - z_vals, - sample_dist, - sdf_network, - deviation_network, - color_network, - background_alpha=None, - background_sampled_color=None, - background_rgb=None, - cos_anneal_ratio=0.0): - batch_size, n_samples = z_vals.shape - device = rays_o.device - # Section length - dists = z_vals[..., 1:] - z_vals[..., :-1] - dists = torch.cat([dists, torch.Tensor([sample_dist]).expand(dists[..., :1].shape).to(device)], -1) - mid_z_vals = z_vals + dists * 0.5 - - # Section midpoints - pts = rays_o[:, None, :] + rays_d[:, None, :] * mid_z_vals[..., :, None] # n_rays, n_samples, 3 - dirs = rays_d[:, None, :].expand(pts.shape) - - pts = pts.reshape(-1, 3) - dirs = dirs.reshape(-1, 3) - - sdf_nn_output = sdf_network(pts) - sdf = sdf_nn_output[:, :1] - feature_vector = sdf_nn_output[:, 1:] - - gradients = sdf_network.gradient(pts).squeeze() - sampled_color = color_network(pts, gradients, dirs, feature_vector).reshape(batch_size, n_samples, 3) - - inv_s = deviation_network(torch.zeros([1, 3]).to(device))[:, :1].clip(1e-6, 1e6) # Single parameter - inv_s = inv_s.expand(batch_size * n_samples, 1) - - true_cos = (dirs * gradients).sum(-1, keepdim=True) - - # "cos_anneal_ratio" grows from 0 to 1 in the beginning training iterations. The anneal strategy below makes - # the cos value "not dead" at the beginning training iterations, for better convergence. - iter_cos = -(F.relu(-true_cos * 0.5 + 0.5) * (1.0 - cos_anneal_ratio) + - F.relu(-true_cos) * cos_anneal_ratio) # always non-positive - - # Estimate signed distances at section points - estimated_next_sdf = sdf + iter_cos * dists.reshape(-1, 1) * 0.5 - estimated_prev_sdf = sdf - iter_cos * dists.reshape(-1, 1) * 0.5 - - prev_cdf = torch.sigmoid(estimated_prev_sdf * inv_s) - next_cdf = torch.sigmoid(estimated_next_sdf * inv_s) - - p = prev_cdf - next_cdf - c = prev_cdf - - alpha = ((p + 1e-5) / (c + 1e-5)).reshape(batch_size, n_samples).clip(0.0, 1.0) - - pts_norm = torch.linalg.norm(pts, ord=2, dim=-1, keepdim=True).reshape(batch_size, n_samples) - inside_sphere = (pts_norm < 1.0).float().detach() - relax_inside_sphere = (pts_norm < 1.2).float().detach() - - # Render with background - if background_alpha is not None: - alpha = alpha * inside_sphere + background_alpha[:, :n_samples] * (1.0 - inside_sphere) - alpha = torch.cat([alpha, background_alpha[:, n_samples:]], dim=-1) - sampled_color = sampled_color * inside_sphere[:, :, None] +\ - background_sampled_color[:, :n_samples] * (1.0 - inside_sphere)[:, :, None] - sampled_color = torch.cat([sampled_color, background_sampled_color[:, n_samples:]], dim=1) - - weights = alpha * torch.cumprod(torch.cat([torch.ones([batch_size, 1]).to(device), 1. - alpha + 1e-7], -1), -1)[:, :-1] - weights_sum = weights.sum(dim=-1, keepdim=True) - - color = (sampled_color * weights[:, :, None]).sum(dim=1) - if background_rgb is not None: # Fixed background, usually black - color = color + background_rgb.to(device) * (1.0 - weights_sum) - - # Eikonal loss - gradient_error = (torch.linalg.norm(gradients.reshape(batch_size, n_samples, 3), ord=2, - dim=-1) - 1.0) ** 2 - gradient_error = (relax_inside_sphere * gradient_error).sum() / (relax_inside_sphere.sum() + 1e-5) - - depth = (mid_z_vals * weights[:, :n_samples]).sum(dim=1, keepdim=True) - - return { - 'color': color, - 'sdf': sdf, - 'dists': dists, - 'gradients': gradients.reshape(batch_size, n_samples, 3), - 's_val': 1.0 / inv_s, - 'mid_z_vals': mid_z_vals, - 'weights': weights, - 'cdf': c.reshape(batch_size, n_samples), - 'gradient_error': gradient_error, - 'inside_sphere': inside_sphere, - 'depth': depth, - } - - def render(self, rays_o, rays_d, near, far, perturb_overwrite=-1, background_rgb=None, cos_anneal_ratio=0.0): - batch_size = len(rays_o) - device = rays_o.device - sample_dist = 2.0 / self.n_samples # Assuming the region of interest is a unit sphere - z_vals = torch.linspace(0.0, 1.0, self.n_samples) - z_vals = near + (far - near) * z_vals[None, :] - - z_vals_outside = None - if self.n_outside > 0: - z_vals_outside = torch.linspace(1e-3, 1.0 - 1.0 / (self.n_outside + 1.0), self.n_outside) - - n_samples = self.n_samples - perturb = self.perturb - - if perturb_overwrite >= 0: - perturb = perturb_overwrite - if perturb > 0: - t_rand = (torch.rand([batch_size, 1]) - 0.5) - z_vals = z_vals + t_rand * 2.0 / self.n_samples - z_vals = z_vals.to(device) - - if self.n_outside > 0: - mids = .5 * (z_vals_outside[..., 1:] + z_vals_outside[..., :-1]) - upper = torch.cat([mids, z_vals_outside[..., -1:]], -1) - lower = torch.cat([z_vals_outside[..., :1], mids], -1) - t_rand = torch.rand([batch_size, z_vals_outside.shape[-1]]) - z_vals_outside = lower[None, :] + (upper - lower)[None, :] * t_rand - - if self.n_outside > 0: - z_vals_outside = far / torch.flip(z_vals_outside, dims=[-1]) + 1.0 / self.n_samples - - background_alpha = None - background_sampled_color = None - - # Up sample - if self.n_importance > 0: - with torch.no_grad(): - pts = rays_o[:, None, :] + rays_d[:, None, :] * z_vals[..., :, None] - sdf = self.sdf_network.sdf(pts.reshape(-1, 3)).reshape(batch_size, self.n_samples) - - for i in range(self.up_sample_steps): - new_z_vals = self.up_sample(rays_o, - rays_d, - z_vals, - sdf, - self.n_importance // self.up_sample_steps, - 64 * 2**i) - z_vals, sdf = self.cat_z_vals(rays_o, - rays_d, - z_vals, - new_z_vals, - sdf, - last=(i + 1 == self.up_sample_steps)) - - n_samples = self.n_samples + self.n_importance - - # Background model - if self.n_outside > 0: - z_vals_feed = torch.cat([z_vals, z_vals_outside], dim=-1) - z_vals_feed, _ = torch.sort(z_vals_feed, dim=-1) - ret_outside = self.render_core_outside(rays_o, rays_d, z_vals_feed, sample_dist, self.nerf) - - background_sampled_color = ret_outside['sampled_color'] - background_alpha = ret_outside['alpha'] - - # Render core - ret_fine = self.render_core(rays_o, - rays_d, - z_vals, - sample_dist, - self.sdf_network, - self.deviation_network, - self.color_network, - background_rgb=background_rgb, - background_alpha=background_alpha, - background_sampled_color=background_sampled_color, - cos_anneal_ratio=cos_anneal_ratio) - - color_fine = ret_fine['color'] - weights = ret_fine['weights'] - weights_sum = weights.sum(dim=-1, keepdim=True) - gradients = ret_fine['gradients'] - s_val = ret_fine['s_val'].reshape(batch_size, n_samples).mean(dim=-1, keepdim=True) - - - # - randomly sample points from the volume, and maximize the sdf - pts_random = torch.rand([1024, 3]).float().cuda() * 2 - 1 # normalized to (-1, 1) - sdf_random = self.sdf_network(pts_random)[:, :1] - - sparse_loss_1 = torch.exp( - -1 * torch.abs(sdf_random) * self.sdf_decay_param).mean() # - should equal - sparse_loss_2 = torch.exp(-1 * torch.abs(ret_fine['sdf']) * self.sdf_decay_param).mean() - sparse_loss = (sparse_loss_1 + sparse_loss_2) / 2 - - return { - 'color_fine': color_fine, - 'depth': ret_fine['depth'], - 's_val': s_val, - 'sparse_loss': sparse_loss, - 'cdf_fine': ret_fine['cdf'], - 'weight_sum': weights_sum, - 'weight_max': torch.max(weights, dim=-1, keepdim=True)[0], - 'gradients': gradients, - 'weights': weights, - 'gradient_error': ret_fine['gradient_error'], - 'inside_sphere': ret_fine['inside_sphere'] - } - - - def get_vertex_colors(self, vertices): - """ - @param vertices: n,3 - @return: - """ - V = vertices.shape[0] - bn = 20480 - verts_colors = [] - with torch.no_grad(): - for vi in range(0, V, bn): - verts = torch.from_numpy(vertices[vi:vi+bn].astype(np.float32)).cuda() - feats = self.sdf_network(verts)[..., 1:] - # pdb.set_trace() - gradients = self.sdf_network.gradient(verts) # ...,3 - gradients = F.normalize(gradients, dim=-1).squeeze(1) - # pdb.set_trace() - colors = self.color_network(verts, gradients, gradients, feats) - colors = torch.clamp(colors,min=0,max=1).cpu().numpy() - verts_colors.append(colors) - - verts_colors = (np.concatenate(verts_colors, 0)*255).astype(np.uint8) - return verts_colors[:, ::-1] - - def extract_geometry(self, bound_min, bound_max, resolution, threshold=0.0): - return extract_geometry(bound_min, - bound_max, - resolution=resolution, - threshold=threshold, - query_func=lambda pts: -self.sdf_network.sdf(pts), - color_func=lambda pts: self.get_vertex_colors(pts)) diff --git a/README.md b/README.md index 26f7af7..dd9b1c5 100644 --- a/README.md +++ b/README.md @@ -4,16 +4,28 @@ This is an extensive node suite that enables ComfyUI to process 3D inputs (Mesh & UV Texture, etc.) using cutting edge algorithms (3DGS, NeRF, etc.) and models (InstantMesh, CRM, TripoSR, etc.) -Features — -Roadmap — +Features — Install — -Run — +Roadmap — +Development — Tips — Supporters -## Currently support: -- For use case please check [Example Workflows](./_Example_Workflows/). [**Last update: 07/06/2024**] +## Install: +**Can be installed directly from [ComfyUI-Manager](https://github.com/ltdrdata/ComfyUI-Manager)🚀** + +- [Pre-builds](https://github.com/MrForExample/Comfy3D_Pre_Builds) are available for: + - Windows 10/11, Ubuntu 22.04 + - Python 3.10/3.11/3.12 + - CUDA 12.1/11.8 + - torch 2.3.0+cu121/cu118, torchvision 0.18.0+cu121/cu118 +- [install.py](install.py) will download & install Pre-builds automatically according to your runtime environment, if it couldn't find corresponding Pre-builds, then [build script](_Pre_Builds/_Build_Scripts/auto_build_all.py) will start automatically, if automatic build doesn't work for you, then please check out [Semi-Automatic Build Guide](_Pre_Builds/README.md#build-required-packages-semi-automatically) +- If you have any missing node in any open Comfy3D workflow, try simply click [Install Missing Custom Nodes](https://github.com/ltdrdata/ComfyUI-Manager?tab=readme-ov-file#support-of-missing-nodes-installation) in ComfyUI-Manager +- **Note:** at this moment, you'll still need to install [Visual Studio Build Tools for windows](_Pre_Builds/README.md#build-for-windows) and [install `gcc g++` for Linux](_Pre_Builds/README.md#build-for-linux) in order for `InstantNGP & Convert 3DGS to Mesh with NeRF and Marching_Cubes` nodes to work, since those two nodes used JIT torch cpp extension that builds in runtime, but I plan to replace those nodes soon + +## Features: +- For use cases please check out [Example Workflows](./_Example_Workflows/). [**Last update: 04/July/2024**] - **Note:** you need to put [Example Inputs Files & Folders](_Example_Workflows/_Example_Inputs_Files/) under ComfyUI Root Directory\ComfyUI\input folder before you can run the example workflow - [tripoSR-layered-diffusion workflow](https://github.com/C0nsumption/Consume-ComfyUI-Workflows/tree/main/assets/tripo_sr/00) by [@Consumption](https://twitter.com/c0nsumption_) @@ -143,178 +155,70 @@ This is an extensive node suite that enables ComfyUI to process 3D inputs (Mesh - Custom clients IP address ## Roadmap: -- [x] Add DMTet algorithm to allow conversion from points cloud(Gaussian/.ply) to mesh (.obj, .ply, .glb) +- [ ] Integrate [CharacterGen](https://github.com/zjp-shadow/CharacterGen) -- [x] Integrate [Triplane Meets Gaussian Splatting: Fast and Generalizable Single-View 3D Reconstruction with Transformers](https://zouzx.github.io/TriplaneGaussian/) +- [ ] Improve 3DGS/Nerf to Mesh conversion algorithms: + - Find better methods to converts 3DGS or Points Cloud to Mesh (Normal maps reconstruction maybe?) -- [x] Add interactive 3D UI inside ComfuUI to visulaize training and generated results for 3D representations - -- [x] Add a new node to generate renderer image sequence given a 3D gaussians and orbit camera poses (So we can later feed it to the differentiable renderer to bake it onto a given mesh) - -- [x] Integrate [LGM: Large Multi-View Gaussian Model for High-Resolution 3D Content Creation](https://me.kiui.moe/lgm/) +- [ ] Add & Improve a few best MVS algorithms (e.g 2DGS, etc.) - [ ] Add camera pose estimation from raw multi-views images -- [ ] Add & Improve a few best MVS algorithms (e.g instant-ngp, NeuS2, GaussianPro, etc.) +## Development +#### How to Contribute +1. Fork the project +2. Make Improvements/Add New Features +3. Creating a Pull Request -- [ ] Improve 3DGS/Nerf to Mesh conversion algorithms: - - Support to training DMTet with images(RGB, Alpha, Normal Map) - - Find better methods to converts 3DGS or Points Cloud to Mesh (Normal maps reconstruction maybe?) +#### Project Structure +- **[nodes.py](nodes.py)**: +
Contains the interface code for all Comfy3D nodes (i.e. the nodes you can actually seen & use inside ComfyUI), you can add your new nodes here -- Add a general SDS/ISM Optimization algorithm to allow training 3D representations with diffusion model - - Need to do some in-depth research on Interval Score Matching (ISM), since math behind it makes perfect sense and also there are so many ways we could improve upon the result obtained from [LucidDreamer](https://github.com/EnVision-Research/LucidDreamer) - - On Hold since runtime cost to generate an is too big (3+hours for an average RTX GPU like 3080) +- **[Gen_3D_Modules](Gen_3D_Modules)**: +
A folder that contains the code for all generative models/systems (e.g. multi-view diffusion models, 3D reconstruction models). New 3D generative modules should be added here -## Install: +- **[MVs_Algorithms](MVs_Algorithms)**: +
A folder that contains the code for all multi-view stereo algorithms, i.e. algorighms (e.g. Gaussian Splatting, NeRF and FlexiCubes) that takes multi-view images and convert it to 3D representation (e.g. Gaussians, MLP or Mesh). New MVS algorithms should be added here -**[IMPORTANT!!!]**
Currently this package is only been tested in following setups: -- Windows 10/11 (Tested on my laptop) -- Ubuntu 23.10 [(Tested by @watsieboi)](https://github.com/MrForExample/ComfyUI-3D-Pack/issues/16) -- ComfyUI python_embed/Miniconda/Conda Python 3.11.x -- Torch version >= 2.1.2+cu121 +- **[web](web)**: +
A folder that contains the files & code (html, js, css) for all browser UI related things (e.g. the html layout, style and the core logics for preview 3D Mesh & Gaussians). New web UI should be added here -
+- **[webserver](webserver)**: +
A folder that contains the code for communicate with browser, i.e. deal with web client requests (e.g. Sending 3D Mesh to client when requested with certain url routes). New web server related functions should be added here -Assume you have already downloaded [ComfyUI](https://github.com/comfyanonymous/ComfyUI) & Configed your [CUDA](https://developer.nvidia.com/cuda-12-1-0-download-archive) environment. +- **[Configs](Configs)**: +
A folder that contains different config files for different modules, new config should be added here, use a sub folder if there are more than one config to a single module (e.g. [Unique3D](Configs/Unique3D_configs), [CRM](Configs/CRM_configs)) -### Install Method 0: Directly inside ComfyUI Windows Python Embeded Environment -***Currently support: (python3.10/3.11/3.12 cuda12.1)*** +- **[Checkpoints](Checkpoints)**: +
A folder that contains all the pre-trained model and some of the model architecture config files required by diffusers, New checkpoints if could be downloaded automatically by `Load_Diffusers Pipeline` node, then it should be added here -First install [Visual Studio Build Tools 2022/2019](https://visualstudio.microsoft.com/downloads/?q=build+tools) with Workloads: Desktop development with C++ (There are a few JIT torch cpp extension that builds in runtime) -- Alternatively, according to [@doctorpangloss](https://github.com/MrForExample/ComfyUI-3D-Pack/issues/5), you can setup the c++/cuda build environments in windows by using [chocolatey](https://chocolatey.org/) +- **[install.py](install.py)**: +
Main install script, will download & install [Pre-builds](https://github.com/MrForExample/Comfy3D_Pre_Builds) automatically according to your runtime environment, if it couldn't find corresponding Pre-builds, then [build script](_Pre_Builds/_Build_Scripts/auto_build_all.py) will start automatically, called by ComfyUI-Manager right after it installed the dependencies listed in [requirements.txt](requirements.txt) using pip +
If the new modules your are trying to add needs some additional packages that cannot be simplly added into [requirements.txt](requirements.txt) and [build_config.remote_packages](_Pre_Builds/_Build_Scripts/build_config.yaml), then you can try to add it by modify this script -Go to the Comfy3D root directory: *ComfyUI Root Directory\ComfyUI\custom_nodes\ComfyUI-3D-Pack* and run: - -```bash -# Run .bat with python version corresponding to the version of your ComfyUI python environment - -# install_windows_portable_win_py310_cu121.bat -install_windows_portable_win_py311_cu121.bat -# install_windows_portable_win_py312_cu121.bat -``` - -### Install Method 1: Using Miniconda(Works on Windows & Linux & Mac) -***Note: [In some edge cases Miniconda fails but Anaconda could fix the issue](https://github.com/MrForExample/ComfyUI-3D-Pack/issues/49)*** - -#### Setup with Miniconda: -First download [Miniconda](https://docs.conda.io/projects/miniconda/en/latest/) (*One of the best way to manage a clean and separated python envirments*) - -Then running following commands to setup the Miniconda environment for ComfyUI: - -```bash -# Go to your Your ComfyUI root directory, for my example: -cd C:\Users\reall\Softwares\ComfyUI_windows_portable - -conda create -p ./python_miniconda_env/ComfyUI python=3.11 - -# conda will tell what command to use to activate the env -conda activate C:\Users\reall\Softwares\ComfyUI_windows_portable\python_miniconda_env\ComfyUI - -# update pip -python -m pip install --upgrade pip - -# You can using following command to installing CUDA only in the miniconda environment you just created if you don't want to donwload and install it manually & globally: -# conda install -c "nvidia/label/cuda-12.1.0" cuda-toolkit - -# Install the main packahes -pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121 - -pip install -r ./ComfyUI/requirements.txt - -# Then go to ComfyUI-3D-Pack directory under the ComfyUI Root Directory\ComfyUI\custom_nodes for my example is: -cd C:\Users\reall\Softwares\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-3D-Pack -``` - - - Alternatively you can check this tutorial: [Installing ComfyUI with Miniconda On Windows and Mac](https://www.comflowy.com/preparation-for-study/install#step-two-download-comfyui) - -#### Install with Miniconda: -Go to the Comfy3D root directory: *ComfyUI Root Directory\ComfyUI\custom_nodes\ComfyUI-3D-Pack* and run: - -```bash -install_miniconda.bat -``` -Just in case `install_miniconda.bat` may not working in your OS, you could also run the following commands under the same directory: (Works with Linux & macOS) - -```bash -pip install -r requirements.txt - -pip install -r requirements_post.txt -``` -
- -**Plus:**
-- For those who want to run it inside Google Colab, you can check the [install instruction from @lovisdotio](https://github.com/MrForExample/ComfyUI-3D-Pack/issues/13) -- You can find some of the pre-build wheels for Linux here: [remsky/ComfyUI3D-Assorted-Wheels](https://github.com/remsky/ComfyUI3D-Assorted-Wheels) - -#### Install and run with docker: - -Gpu support during Docker build time is required to install all requirenents. -On Linux host you could setup `nvidia-container-runtime`. On Windows -it is quite different and not checked at moment. - -##### Linux setup: - -1. Install nvidia-container-runtime: - ```bash - sudo apt-get install nvidia-container-runtime - ``` - -1. Edit/create the /etc/docker/daemon.json with content: - ```json - { - "runtimes": { - "nvidia": { - "path": "/usr/bin/nvidia-container-runtime", - "runtimeArgs": [] - } - }, - "default-runtime": "nvidia" - } - ``` - -1. Restart docker daemon: - ```bash - sudo systemctl restart docker - ``` - -Finally build and run docker container with: -```bash -docker build -t comfy3d . && docker run --rm -it -p 8188:8188 --gpus all comfy3d -``` - -## Run: -Copy the files inside folder [__New_ComfyUI_Bats](./_New_ComfyUI_Bats/) to your ComfyUI root directory, and double click run_nvidia_gpu_miniconda.bat to start ComfyUI! -- Alternatively you can just activate the Conda env: `python_miniconda_env\ComfyUI`, and go to your ComfyUI root directory then run command `python ./ComfyUI/main.py` +- **[_Pre_Builds](_Pre_Builds)**: +
A folder that contains the files & code for build all required dependencies, if you want to pre-build some additional dependencies, then please check [_Pre_Builds/README.md](_Pre_Builds/README.md) for more informations ## Tips -* OpenGL world & camera coordinate system: -``` - World Camera - - +y up target - | | / - | | / - |______+x |/______right - / / - / / - / / - +z forward - -elevation: in (-90, 90), from +y to -y is (-90, 90) -azimuth: in (-180, 180), from +z to +x is (0, 90) -``` - -* Wonder3D world & camera coordinate system: - -![wonder3d_coordinate](_Example_Workflows/_Example_Outputs/wonder3d_coordinate.png) - -* Three.js coordinate system: (z-axis is pointing towards you and is coming out of the screen) - -![right_hand_coordinate_system](_Example_Workflows/_Example_Outputs/right_hand_coordinate_system.png) +* OpenGL (Three.js, Blender) world & camera coordinate system: + ``` + World Camera + + +y up target + | | / + | | / + |______+x |/______right + / / + / / + / / + +z forward + z-axis is pointing towards you and is coming out of the screen + elevation: in (-90, 90), from +y to +x is (-90, 0) + azimuth: in (-180, 180), from +z to +x is (0, 90) + ``` * If you encounter OpenGL errors (e.g., `[F glutil.cpp:338] eglInitialize() failed`), then set `force_cuda_rasterize` to true on corresponding node * If after the installation, your ComfyUI get stucked at starting or running, you could following the instruction in following link to solve the problem: [Code Hangs Indefinitely When Evaluating Neuron Models on GPU](https://github.com/lava-nc/lava-dl/discussions/211) - ## Supporters - [MrNeRF](https://twitter.com/janusch_patas) diff --git a/_Example_Workflows/Multi-View-Images_to_3DGS_to_3DMesh(DMTet and DiffRast).json b/_Example_Workflows/Multi-View-Images_to_3DGS_to_3DMesh(DMTet and DiffRast).json deleted file mode 100644 index 64094a9..0000000 --- a/_Example_Workflows/Multi-View-Images_to_3DGS_to_3DMesh(DMTet and DiffRast).json +++ /dev/null @@ -1,1511 +0,0 @@ -{ - "last_node_id": 48, - "last_link_id": 81, - "nodes": [ - { - "id": 9, - "type": "MaskToImage", - "pos": [ - 835, - -309 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 10, - "mode": 0, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 8 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 4 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 10, - "type": "PreviewImage", - "pos": [ - 1114, - -310 - ], - "size": { - "0": 210, - "1": 246 - }, - "flags": { - "collapsed": true - }, - "order": 14, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 4 - } - ], - "properties": { - "Node name for S&R": "PreviewImage" - } - }, - { - "id": 19, - "type": "PreviewImage", - "pos": [ - 448, - -310 - ], - "size": { - "0": 210, - "1": 246 - }, - "flags": { - "collapsed": true - }, - "order": 5, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 22 - } - ], - "properties": { - "Node name for S&R": "PreviewImage" - } - }, - { - "id": 33, - "type": "VHS_VideoCombine", - "pos": [ - 3320, - -600 - ], - "size": [ - 315, - 270 - ], - "flags": {}, - "order": 20, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 50 - }, - { - "name": "audio", - "type": "VHS_AUDIO", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 12, - "loop_count": 0, - "filename_prefix": "MeshTest\\3DGS_video", - "format": "video/h265-mp4", - "pix_fmt": "yuv420p10le", - "crf": 22, - "save_metadata": true, - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "3DGS_video_00005.mp4", - "subfolder": "MeshTest", - "type": "output", - "format": "video/h265-mp4" - } - } - } - }, - { - "id": 29, - "type": "MaskToImage", - "pos": [ - 2830, - -240 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 22, - "mode": 0, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 45 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 38 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 39, - "type": "Reroute", - "pos": [ - 440, - -551 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 6, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 58 - } - ], - "outputs": [ - { - "name": "", - "type": "IMAGE", - "links": [ - 59 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 41, - "type": "Reroute", - "pos": [ - 835, - -483 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 11, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 61 - } - ], - "outputs": [ - { - "name": "", - "type": "MASK", - "links": [ - 62 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 31, - "type": "Reroute", - "pos": [ - 1410, - -380 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 8, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 40 - } - ], - "outputs": [ - { - "name": "", - "type": "ORBIT_CAMPOSES", - "links": [ - 42, - 64 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 35, - "type": "[Comfy3D] Convert 3DGS To Pointcloud", - "pos": [ - 2029, - 249 - ], - "size": { - "0": 218.39999389648438, - "1": 26 - }, - "flags": {}, - "order": 16, - "mode": 0, - "inputs": [ - { - "name": "gs_ply", - "type": "GS_PLY", - "link": 74 - } - ], - "outputs": [ - { - "name": "points_cloud", - "type": "POINTCLOUD", - "links": [ - 53 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Convert 3DGS To Pointcloud" - } - }, - { - "id": 30, - "type": "PreviewImage", - "pos": [ - 3080, - -240 - ], - "size": { - "0": 215.39028930664062, - "1": 246 - }, - "flags": { - "collapsed": false - }, - "order": 25, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 38 - } - ], - "properties": { - "Node name for S&R": "PreviewImage" - } - }, - { - "id": 28, - "type": "PreviewImage", - "pos": [ - 3080, - -540 - ], - "size": { - "0": 210, - "1": 246 - }, - "flags": { - "collapsed": false - }, - "order": 21, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 51 - } - ], - "properties": { - "Node name for S&R": "PreviewImage" - } - }, - { - "id": 23, - "type": "[Comfy3D] Preview 3DGS", - "pos": [ - 2702, - 854 - ], - "size": [ - 600, - 500 - ], - "flags": {}, - "order": 26, - "mode": 0, - "inputs": [ - { - "name": "gs_file_path", - "type": "STRING", - "link": 27, - "widget": { - "name": "gs_file_path" - } - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Preview 3DGS" - }, - "widgets_values": [ - "", - null - ] - }, - { - "id": 21, - "type": "[Comfy3D] Save 3DGS", - "pos": [ - 2313, - 854 - ], - "size": { - "0": 348.45050048828125, - "1": 58 - }, - "flags": {}, - "order": 23, - "mode": 0, - "inputs": [ - { - "name": "gs_ply", - "type": "GS_PLY", - "link": 29 - } - ], - "outputs": [ - { - "name": "save_path", - "type": "STRING", - "links": [ - 27 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Save 3DGS" - }, - "widgets_values": [ - "MeshTest\\3DGS_%Y-%m-%d-%M-%S-%f.ply" - ] - }, - { - "id": 13, - "type": "[Comfy3D] Load 3D Mesh", - "pos": [ - 1061, - 1001 - ], - "size": { - "0": 315, - "1": 154 - }, - "flags": {}, - "order": 0, - "mode": 0, - "outputs": [ - { - "name": "mesh", - "type": "MESH", - "links": [], - "shape": 3, - "slot_index": 0 - } - ], - "title": "Load 3D Mesh [Optional]", - "properties": { - "Node name for S&R": "[Comfy3D] Load 3D Mesh" - }, - "widgets_values": [ - "Meshes\\Cammy_Uniform.obj", - false, - true, - false, - false - ] - }, - { - "id": 32, - "type": "[Comfy3D] Gaussian Splatting Orbit Renderer", - "pos": [ - 1980, - -400 - ], - "size": { - "0": 556.800048828125, - "1": 198 - }, - "flags": {}, - "order": 17, - "mode": 0, - "inputs": [ - { - "name": "gs_ply", - "type": "GS_PLY", - "link": 75 - }, - { - "name": "render_orbit_camera_poses", - "type": "ORBIT_CAMPOSES", - "link": 42 - } - ], - "outputs": [ - { - "name": "rendered_gs_images", - "type": "IMAGE", - "links": [ - 50, - 51 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "rendered_gs_masks", - "type": "MASK", - "links": [ - 45 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Gaussian Splatting Orbit Renderer" - }, - "widgets_values": [ - 1024, - 1024, - 49.1, - 0, - 0, - 0 - ] - }, - { - "id": 7, - "type": "VHS_LoadImages", - "pos": [ - 113, - 54 - ], - "size": [ - 243.60000610351562, - 194 - ], - "flags": {}, - "order": 1, - "mode": 0, - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 1, - 22, - 58, - 70 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "MASK", - "type": "MASK", - "links": [ - 2 - ], - "shape": 3, - "slot_index": 1 - }, - { - "name": "INT", - "type": "INT", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_LoadImages" - }, - "widgets_values": { - "directory": "Images_enhanced", - "image_load_cap": 0, - "skip_first_images": 0, - "select_every_nth": 1, - "choose folder to upload": "image", - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "frame_load_cap": 0, - "skip_first_images": 0, - "filename": "Images_enhanced", - "type": "input", - "format": "folder", - "select_every_nth": 1 - } - } - } - }, - { - "id": 4, - "type": "[Comfy3D] Generate Orbit Camera Poses", - "pos": [ - 435, - 148 - ], - "size": { - "0": 908.027099609375, - "1": 153.19027709960938 - }, - "flags": {}, - "order": 4, - "mode": 0, - "inputs": [ - { - "name": "reference_images", - "type": "IMAGE", - "link": 1 - } - ], - "outputs": [ - { - "name": "orbit_camposes", - "type": "ORBIT_CAMPOSES", - "links": [], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Generate Orbit Camera Poses" - }, - "widgets_values": [ - "#([start_reference_image_index : end_reference_image_index], orbit_radius, elevation_angle [-90, 90], start_azimuth_angle [0, 360], end_azimuth_angle [0, 360])\n([0:120], 1.75, 0, 0, 360)" - ] - }, - { - "id": 27, - "type": "[Comfy3D] Stack Orbit Camera Poses", - "pos": [ - 1034, - 367 - ], - "size": { - "0": 315, - "1": 586 - }, - "flags": {}, - "order": 2, - "mode": 0, - "outputs": [ - { - "name": "orbit_camposes", - "type": "ORBIT_CAMPOSES", - "links": [ - 40, - 72 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "orbit_radius_list", - "type": "FLOAT", - "links": null, - "shape": 6 - }, - { - "name": "elevation_list", - "type": "FLOAT", - "links": null, - "shape": 6 - }, - { - "name": "azimuth_list", - "type": "FLOAT", - "links": null, - "shape": 6 - }, - { - "name": "orbit_center_X_list", - "type": "FLOAT", - "links": null, - "shape": 6 - }, - { - "name": "orbit_center_Y_list", - "type": "FLOAT", - "links": null, - "shape": 6 - }, - { - "name": "orbit_center_Z_list", - "type": "FLOAT", - "links": null, - "shape": 6 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Stack Orbit Camera Poses" - }, - "widgets_values": [ - 1.75, - 1.75, - 0.1, - 0, - 0, - 0, - 0, - -0.01, - 3, - 0, - 0, - 0.1, - 0, - 0, - 0.1, - 0, - 0, - 0.1 - ] - }, - { - "id": 8, - "type": "InvertMask", - "pos": [ - 545, - 6 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 7, - "mode": 0, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 2 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 8, - 61, - 73 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "InvertMask" - } - }, - { - "id": 47, - "type": "[Comfy3D] Gaussian Splatting 3D", - "pos": [ - 1415, - 52 - ], - "size": { - "0": 531.5999755859375, - "1": 734 - }, - "flags": {}, - "order": 12, - "mode": 0, - "inputs": [ - { - "name": "reference_images", - "type": "IMAGE", - "link": 70 - }, - { - "name": "reference_masks", - "type": "MASK", - "link": 73 - }, - { - "name": "reference_orbit_camera_poses", - "type": "ORBIT_CAMPOSES", - "link": 72 - }, - { - "name": "points_cloud_to_initialize_gaussian", - "type": "POINTCLOUD", - "link": null - }, - { - "name": "ply_to_initialize_gaussian", - "type": "GS_PLY", - "link": null - }, - { - "name": "mesh_to_initialize_gaussian", - "type": "MESH", - "link": null - } - ], - "outputs": [ - { - "name": "gs_ply", - "type": "GS_PLY", - "links": [ - 74, - 75, - 76 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Gaussian Splatting 3D" - }, - "widgets_values": [ - 49.1, - 30000, - 1, - 0.2, - 3, - 0, - 0, - 0.5, - 0.0025, - 0.05, - 0.005, - 0.001, - 0.00016, - 0.0000016, - 0.01, - 30000, - 10000, - 3, - 0.01, - 500, - 15000, - 100, - 3000, - 0.0002, - 3 - ] - }, - { - "id": 24, - "type": "[Comfy3D] Switch 3DGS Axis", - "pos": [ - 1970, - 855 - ], - "size": { - "0": 315, - "1": 106 - }, - "flags": {}, - "order": 18, - "mode": 0, - "inputs": [ - { - "name": "gs_ply", - "type": "GS_PLY", - "link": 76 - } - ], - "outputs": [ - { - "name": "switched_gs_ply", - "type": "GS_PLY", - "links": [ - 29 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Switch 3DGS Axis" - }, - "widgets_values": [ - "+x", - "-y", - "-z" - ] - }, - { - "id": 22, - "type": "Note", - "pos": [ - 1976, - 670 - ], - "size": { - "0": 347.9384460449219, - "1": 141.6276092529297 - }, - "flags": {}, - "order": 3, - "mode": 0, - "title": "Switch 3DGS Axis Note", - "properties": { - "text": "" - }, - "widgets_values": [ - "Triplane Gaussian Transformers to Preview:\n axis x to: -y\n axis y to: +z\n axis z to: -x\n\nGaussian Splatting to Preview:\n axis x to: +x\n axis y to: -y\n axis z to: -z" - ], - "color": "#432", - "bgcolor": "#653" - }, - { - "id": 40, - "type": "Reroute", - "pos": [ - 2288, - -552 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 9, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 59 - } - ], - "outputs": [ - { - "name": "", - "type": "IMAGE", - "links": [ - 77 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 42, - "type": "Reroute", - "pos": [ - 2241, - -484 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 15, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 62 - } - ], - "outputs": [ - { - "name": "", - "type": "MASK", - "links": [ - 78 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 34, - "type": "[Comfy3D] Deep Marching Tetrahedrons", - "pos": [ - 2332, - 249 - ], - "size": { - "0": 443.4000244140625, - "1": 314 - }, - "flags": {}, - "order": 19, - "mode": 0, - "inputs": [ - { - "name": "reference_points_cloud", - "type": "POINTCLOUD", - "link": 53 - }, - { - "name": "reference_images", - "type": "IMAGE", - "link": null - }, - { - "name": "reference_masks", - "type": "MASK", - "link": null - } - ], - "outputs": [ - { - "name": "trained_mesh", - "type": "MESH", - "links": [ - 79 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Deep Marching Tetrahedrons" - }, - "widgets_values": [ - 3000, - 1, - 0.1, - 1, - 1, - 128, - 0.0001, - 2, - 128, - 5 - ] - }, - { - "id": 43, - "type": "Reroute", - "pos": [ - 2195, - -25 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 13, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 64 - } - ], - "outputs": [ - { - "name": "", - "type": "ORBIT_CAMPOSES", - "links": [ - 80 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 48, - "type": "[Comfy3D] Fitting Mesh With Multiview Images", - "pos": [ - 2831, - 90 - ], - "size": { - "0": 531.5999755859375, - "1": 358 - }, - "flags": {}, - "order": 24, - "mode": 0, - "inputs": [ - { - "name": "reference_images", - "type": "IMAGE", - "link": 77 - }, - { - "name": "reference_masks", - "type": "MASK", - "link": 78 - }, - { - "name": "reference_orbit_camera_poses", - "type": "ORBIT_CAMPOSES", - "link": 80 - }, - { - "name": "mesh", - "type": "MESH", - "link": 79 - } - ], - "outputs": [ - { - "name": "trained_mesh", - "type": "MESH", - "links": [ - 81 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "baked_texture", - "type": "IMAGE", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Fitting Mesh With Multiview Images" - }, - "widgets_values": [ - 49.1, - 1024, - 1024, - 1024, - 3, - 0.001, - false, - 0.0001, - 0.5, - 512, - false - ] - }, - { - "id": 36, - "type": "[Comfy3D] Save 3D Mesh", - "pos": [ - 3398, - 89 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 27, - "mode": 0, - "inputs": [ - { - "name": "mesh", - "type": "MESH", - "link": 81 - } - ], - "outputs": [ - { - "name": "save_path", - "type": "STRING", - "links": [ - 55 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Save 3D Mesh" - }, - "widgets_values": [ - "MeshTest\\3DMesh_%Y-%m-%d-%M-%S-%f.obj" - ] - }, - { - "id": 37, - "type": "[Comfy3D] Preview 3DMesh", - "pos": [ - 3744, - 89 - ], - "size": [ - 600, - 500 - ], - "flags": {}, - "order": 28, - "mode": 0, - "inputs": [ - { - "name": "mesh_file_path", - "type": "STRING", - "link": 55, - "widget": { - "name": "mesh_file_path" - } - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Preview 3DMesh" - }, - "widgets_values": [ - "", - null - ] - } - ], - "links": [ - [ - 1, - 7, - 0, - 4, - 0, - "IMAGE" - ], - [ - 2, - 7, - 1, - 8, - 0, - "MASK" - ], - [ - 4, - 9, - 0, - 10, - 0, - "IMAGE" - ], - [ - 8, - 8, - 0, - 9, - 0, - "MASK" - ], - [ - 22, - 7, - 0, - 19, - 0, - "IMAGE" - ], - [ - 27, - 21, - 0, - 23, - 0, - "STRING" - ], - [ - 29, - 24, - 0, - 21, - 0, - "GS_PLY" - ], - [ - 38, - 29, - 0, - 30, - 0, - "IMAGE" - ], - [ - 40, - 27, - 0, - 31, - 0, - "*" - ], - [ - 42, - 31, - 0, - 32, - 1, - "ORBIT_CAMPOSES" - ], - [ - 45, - 32, - 1, - 29, - 0, - "MASK" - ], - [ - 50, - 32, - 0, - 33, - 0, - "IMAGE" - ], - [ - 51, - 32, - 0, - 28, - 0, - "IMAGE" - ], - [ - 53, - 35, - 0, - 34, - 0, - "POINTCLOUD" - ], - [ - 55, - 36, - 0, - 37, - 0, - "STRING" - ], - [ - 58, - 7, - 0, - 39, - 0, - "*" - ], - [ - 59, - 39, - 0, - 40, - 0, - "*" - ], - [ - 61, - 8, - 0, - 41, - 0, - "*" - ], - [ - 62, - 41, - 0, - 42, - 0, - "*" - ], - [ - 64, - 31, - 0, - 43, - 0, - "*" - ], - [ - 70, - 7, - 0, - 47, - 0, - "IMAGE" - ], - [ - 72, - 27, - 0, - 47, - 2, - "ORBIT_CAMPOSES" - ], - [ - 73, - 8, - 0, - 47, - 1, - "MASK" - ], - [ - 74, - 47, - 0, - 35, - 0, - "GS_PLY" - ], - [ - 75, - 47, - 0, - 32, - 0, - "GS_PLY" - ], - [ - 76, - 47, - 0, - 24, - 0, - "GS_PLY" - ], - [ - 77, - 40, - 0, - 48, - 0, - "IMAGE" - ], - [ - 78, - 42, - 0, - 48, - 1, - "MASK" - ], - [ - 79, - 34, - 0, - 48, - 3, - "MESH" - ], - [ - 80, - 43, - 0, - 48, - 2, - "ORBIT_CAMPOSES" - ], - [ - 81, - 48, - 0, - 36, - 0, - "MESH" - ] - ], - "groups": [ - { - "title": "3DGS to Mesh using DMTet and DiffRast", - "bounding": [ - 1970, - -674, - 2380, - 1294 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - } - ], - "config": {}, - "extra": {}, - "version": 0.4 -} \ No newline at end of file diff --git a/_Example_Workflows/Multi-View-Images_to_Instant-NGP_to_3DMesh.json b/_Example_Workflows/Multi-View-Images_to_Instant-NGP_to_3DMesh.json deleted file mode 100644 index e64f1e0..0000000 --- a/_Example_Workflows/Multi-View-Images_to_Instant-NGP_to_3DMesh.json +++ /dev/null @@ -1,959 +0,0 @@ -{ - "last_node_id": 27, - "last_link_id": 46, - "nodes": [ - { - "id": 6, - "type": "MaskToImage", - "pos": [ - 1490, - 740 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 9, - "mode": 0, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 6 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 4 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 10, - "type": "[Comfy3D] Preview 3DMesh", - "pos": [ - 2400, - 684 - ], - "size": [ - 600, - 500 - ], - "flags": {}, - "order": 15, - "mode": 0, - "inputs": [ - { - "name": "mesh_file_path", - "type": "STRING", - "link": 14, - "widget": { - "name": "mesh_file_path" - } - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Preview 3DMesh" - }, - "widgets_values": [ - "", - null - ] - }, - { - "id": 9, - "type": "Reroute", - "pos": [ - 1237, - 553 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 4, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 11 - } - ], - "outputs": [ - { - "name": "", - "type": "ORBIT_CAMPOSES", - "links": [ - 19, - 34 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 5, - "type": "[Comfy3D] Stack Orbit Camera Poses", - "pos": [ - 362, - 389 - ], - "size": { - "0": 315, - "1": 586 - }, - "flags": {}, - "order": 0, - "mode": 0, - "outputs": [ - { - "name": "orbit_camposes", - "type": "ORBIT_CAMPOSES", - "links": [ - 5, - 9 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "orbit_radius_list", - "type": "FLOAT", - "links": null, - "shape": 6 - }, - { - "name": "elevation_list", - "type": "FLOAT", - "links": null, - "shape": 6 - }, - { - "name": "azimuth_list", - "type": "FLOAT", - "links": null, - "shape": 6 - }, - { - "name": "orbit_center_X_list", - "type": "FLOAT", - "links": null, - "shape": 6 - }, - { - "name": "orbit_center_Y_list", - "type": "FLOAT", - "links": null, - "shape": 6 - }, - { - "name": "orbit_center_Z_list", - "type": "FLOAT", - "links": null, - "shape": 6 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Stack Orbit Camera Poses" - }, - "widgets_values": [ - 1.75, - 1.75, - 0.1, - -45, - 45, - 45, - 0, - -0.01, - 6, - 0, - 0, - 0.1, - 0, - 0, - 0.1, - 0, - 0, - 0.1 - ] - }, - { - "id": 8, - "type": "Reroute", - "pos": [ - 808, - 553 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 2, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 9 - } - ], - "outputs": [ - { - "name": "", - "type": "ORBIT_CAMPOSES", - "links": [ - 11 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 16, - "type": "Reroute", - "pos": [ - 1526, - 189 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 8, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 21 - } - ], - "outputs": [ - { - "name": "", - "type": "IMAGE", - "links": [ - 37 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 17, - "type": "Reroute", - "pos": [ - 1551, - 226 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 10, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 23 - } - ], - "outputs": [ - { - "name": "", - "type": "MASK", - "links": [ - 38 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 15, - "type": "Reroute", - "pos": [ - 2124, - 552 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 6, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 19 - } - ], - "outputs": [ - { - "name": "", - "type": "ORBIT_CAMPOSES", - "links": [ - 40 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 11, - "type": "[Comfy3D] Save 3D Mesh", - "pos": [ - 2035, - 684 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 13, - "mode": 0, - "inputs": [ - { - "name": "mesh", - "type": "MESH", - "link": 36 - } - ], - "outputs": [ - { - "name": "save_path", - "type": "STRING", - "links": [ - 14 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Save 3D Mesh" - }, - "widgets_values": [ - "Instant_NGP_Test/CatCoffee.obj" - ] - }, - { - "id": 1, - "type": "[Comfy3D] Load 3DGS", - "pos": [ - 104, - 218 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 1, - "mode": 0, - "outputs": [ - { - "name": "gs_ply", - "type": "GS_PLY", - "links": [ - 15 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Load 3DGS" - }, - "widgets_values": [ - "C:\\Users\\reall\\Softwares\\ComfyUI_windows_portable\\ComfyUI\\custom_nodes\\ComfyUI-3D-Pack\\_Example_Workflows\\_Example_Inputs_Files\\Meshes\\CatCoffee.ply" - ] - }, - { - "id": 12, - "type": "[Comfy3D] Switch 3DGS Axis", - "pos": [ - 466, - 219 - ], - "size": { - "0": 210, - "1": 106 - }, - "flags": {}, - "order": 3, - "mode": 0, - "inputs": [ - { - "name": "gs_ply", - "type": "GS_PLY", - "link": 15 - } - ], - "outputs": [ - { - "name": "switched_gs_ply", - "type": "GS_PLY", - "links": [ - 16 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Switch 3DGS Axis" - }, - "widgets_values": [ - "+x", - "-y", - "-z" - ] - }, - { - "id": 18, - "type": "[Comfy3D] Preview 3DMesh", - "pos": [ - 3303, - 189 - ], - "size": [ - 600, - 500 - ], - "flags": {}, - "order": 17, - "mode": 0, - "inputs": [ - { - "name": "mesh_file_path", - "type": "STRING", - "link": 25, - "widget": { - "name": "mesh_file_path" - } - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Preview 3DMesh" - }, - "widgets_values": [ - "", - null - ] - }, - { - "id": 19, - "type": "[Comfy3D] Save 3D Mesh", - "pos": [ - 2945, - 188 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 16, - "mode": 0, - "inputs": [ - { - "name": "mesh", - "type": "MESH", - "link": 41 - } - ], - "outputs": [ - { - "name": "save_path", - "type": "STRING", - "links": [ - 25 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Save 3D Mesh" - }, - "widgets_values": [ - "Instant_NGP_Test/CatCoffee_1.obj" - ] - }, - { - "id": 22, - "type": "[Comfy3D] Fitting Mesh With Multiview Images", - "pos": [ - 2358, - 188 - ], - "size": { - "0": 531.5999755859375, - "1": 406 - }, - "flags": {}, - "order": 14, - "mode": 0, - "inputs": [ - { - "name": "reference_images", - "type": "IMAGE", - "link": 37 - }, - { - "name": "reference_masks", - "type": "MASK", - "link": 38 - }, - { - "name": "reference_orbit_camera_poses", - "type": "ORBIT_CAMPOSES", - "link": 40 - }, - { - "name": "mesh", - "type": "MESH", - "link": 39 - } - ], - "outputs": [ - { - "name": "trained_mesh", - "type": "MESH", - "links": [ - 41 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "baked_texture", - "type": "IMAGE", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Fitting Mesh With Multiview Images" - }, - "widgets_values": [ - 49.1, - 1024, - 1024, - 2048, - 1, - 0.1, - false, - 0.0001, - 0.5, - 512, - 0, - false - ] - }, - { - "id": 13, - "type": "PreviewImage", - "pos": [ - 1506, - -109 - ], - "size": { - "0": 215.39028930664062, - "1": 246 - }, - "flags": { - "collapsed": false - }, - "order": 7, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 17 - } - ], - "properties": { - "Node name for S&R": "PreviewImage" - } - }, - { - "id": 7, - "type": "PreviewImage", - "pos": [ - 1742, - 740 - ], - "size": { - "0": 215.39028930664062, - "1": 246 - }, - "flags": { - "collapsed": false - }, - "order": 12, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 4 - } - ], - "properties": { - "Node name for S&R": "PreviewImage" - } - }, - { - "id": 21, - "type": "[Comfy3D] Instant NGP", - "pos": [ - 1570, - 288 - ], - "size": { - "0": 418.1999816894531, - "1": 290 - }, - "flags": {}, - "order": 11, - "mode": 0, - "inputs": [ - { - "name": "reference_image", - "type": "IMAGE", - "link": 32 - }, - { - "name": "reference_mask", - "type": "MASK", - "link": 33 - }, - { - "name": "reference_orbit_camera_poses", - "type": "ORBIT_CAMPOSES", - "link": 34 - } - ], - "outputs": [ - { - "name": "mesh", - "type": "MESH", - "links": [ - 36, - 39 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Instant NGP" - }, - "widgets_values": [ - 49.1, - 1024, - 128, - 256, - 128, - 10, - 1024, - 1, - false - ] - }, - { - "id": 2, - "type": "[Comfy3D] Gaussian Splatting Orbit Renderer", - "pos": [ - 807, - 289 - ], - "size": { - "0": 556.800048828125, - "1": 198 - }, - "flags": {}, - "order": 5, - "mode": 0, - "inputs": [ - { - "name": "gs_ply", - "type": "GS_PLY", - "link": 16 - }, - { - "name": "render_orbit_camera_poses", - "type": "ORBIT_CAMPOSES", - "link": 5 - } - ], - "outputs": [ - { - "name": "rendered_gs_images", - "type": "IMAGE", - "links": [ - 17, - 21, - 32 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "rendered_gs_masks", - "type": "MASK", - "links": [ - 6, - 23, - 33 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Gaussian Splatting Orbit Renderer" - }, - "widgets_values": [ - 1024, - 1024, - 49.1, - 1, - 1, - 1 - ] - } - ], - "links": [ - [ - 4, - 6, - 0, - 7, - 0, - "IMAGE" - ], - [ - 5, - 5, - 0, - 2, - 1, - "ORBIT_CAMPOSES" - ], - [ - 6, - 2, - 1, - 6, - 0, - "MASK" - ], - [ - 9, - 5, - 0, - 8, - 0, - "*" - ], - [ - 11, - 8, - 0, - 9, - 0, - "*" - ], - [ - 14, - 11, - 0, - 10, - 0, - "STRING" - ], - [ - 15, - 1, - 0, - 12, - 0, - "GS_PLY" - ], - [ - 16, - 12, - 0, - 2, - 0, - "GS_PLY" - ], - [ - 17, - 2, - 0, - 13, - 0, - "IMAGE" - ], - [ - 19, - 9, - 0, - 15, - 0, - "*" - ], - [ - 21, - 2, - 0, - 16, - 0, - "*" - ], - [ - 23, - 2, - 1, - 17, - 0, - "*" - ], - [ - 25, - 19, - 0, - 18, - 0, - "STRING" - ], - [ - 32, - 2, - 0, - 21, - 0, - "IMAGE" - ], - [ - 33, - 2, - 1, - 21, - 1, - "MASK" - ], - [ - 34, - 9, - 0, - 21, - 2, - "ORBIT_CAMPOSES" - ], - [ - 36, - 21, - 0, - 11, - 0, - "MESH" - ], - [ - 37, - 16, - 0, - 22, - 0, - "IMAGE" - ], - [ - 38, - 17, - 0, - 22, - 1, - "MASK" - ], - [ - 39, - 21, - 0, - 22, - 3, - "MESH" - ], - [ - 40, - 15, - 0, - 22, - 2, - "ORBIT_CAMPOSES" - ], - [ - 41, - 22, - 0, - 19, - 0, - "MESH" - ] - ], - "groups": [], - "config": {}, - "extra": { - "ds": { - "scale": 0.6934334949441353, - "offset": [ - -1086.556448784114, - 243.62758422318373 - ] - } - }, - "version": 0.4 -} \ No newline at end of file diff --git a/_Example_Workflows/Wonder3D_to_NeuS_to_Mesh.json b/_Example_Workflows/Wonder3D_to_NeuS_to_Mesh.json deleted file mode 100644 index b24566e..0000000 --- a/_Example_Workflows/Wonder3D_to_NeuS_to_Mesh.json +++ /dev/null @@ -1,644 +0,0 @@ -{ - "last_node_id": 47, - "last_link_id": 68, - "nodes": [ - { - "id": 21, - "type": "PreviewImage", - "pos": [ - 1265, - 880 - ], - "size": { - "0": 199.94778442382812, - "1": 274.4532775878906 - }, - "flags": {}, - "order": 6, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 32 - } - ], - "properties": { - "Node name for S&R": "PreviewImage" - } - }, - { - "id": 28, - "type": "Image Rembg (Remove Background)", - "pos": [ - 1487, - 475 - ], - "size": { - "0": 315, - "1": 250 - }, - "flags": {}, - "order": 5, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 37 - } - ], - "outputs": [ - { - "name": "images", - "type": "IMAGE", - "links": [ - 38, - 39 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "Image Rembg (Remove Background)" - }, - "widgets_values": [ - false, - "u2net", - false, - true, - true, - 240, - 10, - 10, - "none" - ] - }, - { - "id": 30, - "type": "ImageToMask", - "pos": [ - 1859, - 475 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 8, - "mode": 0, - "inputs": [ - { - "name": "image", - "type": "IMAGE", - "link": 39 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 46 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ImageToMask" - }, - "widgets_values": [ - "red" - ] - }, - { - "id": 32, - "type": "[Comfy3D] Preview 3DMesh", - "pos": [ - 3339, - 369 - ], - "size": [ - 600, - 500 - ], - "flags": {}, - "order": 12, - "mode": 0, - "inputs": [ - { - "name": "mesh_file_path", - "type": "STRING", - "link": 44, - "widget": { - "name": "mesh_file_path" - } - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Preview 3DMesh" - }, - "widgets_values": [ - "", - null - ] - }, - { - "id": 29, - "type": "PreviewImage", - "pos": [ - 1857, - 609 - ], - "size": { - "0": 210, - "1": 246 - }, - "flags": {}, - "order": 7, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 38 - } - ], - "properties": { - "Node name for S&R": "PreviewImage" - } - }, - { - "id": 33, - "type": "[Comfy3D] Save 3D Mesh", - "pos": [ - 2980, - 370 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 11, - "mode": 0, - "inputs": [ - { - "name": "mesh", - "type": "MESH", - "link": 65 - } - ], - "outputs": [ - { - "name": "save_path", - "type": "STRING", - "links": [ - 44 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Save 3D Mesh" - }, - "widgets_values": [ - "NeuS/Cat.obj" - ] - }, - { - "id": 22, - "type": "InvertMask", - "pos": [ - 562, - 468 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 2, - "mode": 0, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 33 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 34 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "InvertMask" - } - }, - { - "id": 19, - "type": "PreviewImage", - "pos": [ - 1293, - 538 - ], - "size": { - "0": 172.59315490722656, - "1": 299.3858947753906 - }, - "flags": {}, - "order": 4, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 31 - } - ], - "properties": { - "Node name for S&R": "PreviewImage" - } - }, - { - "id": 4, - "type": "LoadImage", - "pos": [ - 186, - 391 - ], - "size": { - "0": 318.80224609375, - "1": 348.95855712890625 - }, - "flags": {}, - "order": 0, - "mode": 0, - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 30 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "MASK", - "type": "MASK", - "links": [ - 33 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "LoadImage" - }, - "widgets_values": [ - "round_cat.png", - "image" - ] - }, - { - "id": 2, - "type": "[Comfy3D] Load Diffusers Pipeline", - "pos": [ - 307, - 216 - ], - "size": { - "0": 392.1646728515625, - "1": 86.24864196777344 - }, - "flags": {}, - "order": 1, - "mode": 0, - "outputs": [ - { - "name": "pipe", - "type": "DIFFUSERS_PIPE", - "links": [ - 29 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Load Diffusers Pipeline" - }, - "widgets_values": [ - "Wonder3DMVDiffusionPipeline", - "flamehaze1115/wonder3d-v1.0" - ] - }, - { - "id": 20, - "type": "[Comfy3D] Wonder3D MVDiffusion Model", - "pos": [ - 806, - 370 - ], - "size": { - "0": 430.8000183105469, - "1": 170 - }, - "flags": {}, - "order": 3, - "mode": 0, - "inputs": [ - { - "name": "mvdiffusion_pipe", - "type": "DIFFUSERS_PIPE", - "link": 29 - }, - { - "name": "reference_image", - "type": "IMAGE", - "link": 30 - }, - { - "name": "reference_mask", - "type": "MASK", - "link": 34 - } - ], - "outputs": [ - { - "name": "multiview_images", - "type": "IMAGE", - "links": [ - 31, - 37, - 47 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "multiview_normals", - "type": "IMAGE", - "links": [ - 32, - 48 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Wonder3D MVDiffusion Model" - }, - "widgets_values": [ - 999, - "fixed", - 1, - 30 - ] - }, - { - "id": 34, - "type": "[Comfy3D] NeuS", - "pos": [ - 2270, - 370 - ], - "size": { - "0": 315, - "1": 410 - }, - "flags": {}, - "order": 9, - "mode": 0, - "inputs": [ - { - "name": "reference_image", - "type": "IMAGE", - "link": 47 - }, - { - "name": "reference_mask", - "type": "MASK", - "link": 46 - }, - { - "name": "reference_normals", - "type": "IMAGE", - "link": 48 - } - ], - "outputs": [ - { - "name": "mesh", - "type": "MESH", - "links": [ - 64 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] NeuS" - }, - "widgets_values": [ - 1500, - 512, - 0.0005, - 0.0005, - 1, - 0.1, - 1, - 1, - 0.1, - 500, - 0, - true, - 512, - 0 - ] - }, - { - "id": 44, - "type": "[Comfy3D] Switch Mesh Axis", - "pos": [ - 2630, - 370 - ], - "size": { - "0": 315, - "1": 130 - }, - "flags": {}, - "order": 10, - "mode": 0, - "inputs": [ - { - "name": "mesh", - "type": "MESH", - "link": 64 - } - ], - "outputs": [ - { - "name": "switched_mesh", - "type": "MESH", - "links": [ - 65 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "[Comfy3D] Switch Mesh Axis" - }, - "widgets_values": [ - "-x", - "-z", - "+y", - false - ] - } - ], - "links": [ - [ - 29, - 2, - 0, - 20, - 0, - "DIFFUSERS_PIPE" - ], - [ - 30, - 4, - 0, - 20, - 1, - "IMAGE" - ], - [ - 31, - 20, - 0, - 19, - 0, - "IMAGE" - ], - [ - 32, - 20, - 1, - 21, - 0, - "IMAGE" - ], - [ - 33, - 4, - 1, - 22, - 0, - "MASK" - ], - [ - 34, - 22, - 0, - 20, - 2, - "MASK" - ], - [ - 37, - 20, - 0, - 28, - 0, - "IMAGE" - ], - [ - 38, - 28, - 0, - 29, - 0, - "IMAGE" - ], - [ - 39, - 28, - 0, - 30, - 0, - "IMAGE" - ], - [ - 44, - 33, - 0, - 32, - 0, - "STRING" - ], - [ - 46, - 30, - 0, - 34, - 1, - "MASK" - ], - [ - 47, - 20, - 0, - 34, - 0, - "IMAGE" - ], - [ - 48, - 20, - 1, - 34, - 2, - "IMAGE" - ], - [ - 64, - 34, - 0, - 44, - 0, - "MESH" - ], - [ - 65, - 44, - 0, - 33, - 0, - "MESH" - ] - ], - "groups": [], - "config": {}, - "extra": {}, - "version": 0.4 -} \ No newline at end of file diff --git a/_Example_Workflows/_Example_Outputs/right_hand_coordinate_system.png b/_Example_Workflows/_Example_Outputs/right_hand_coordinate_system.png deleted file mode 100644 index 1e969ef..0000000 Binary files a/_Example_Workflows/_Example_Outputs/right_hand_coordinate_system.png and /dev/null differ diff --git a/_Example_Workflows/_Example_Outputs/wonder3d_coordinate.png b/_Example_Workflows/_Example_Outputs/wonder3d_coordinate.png deleted file mode 100644 index fb31905..0000000 Binary files a/_Example_Workflows/_Example_Outputs/wonder3d_coordinate.png and /dev/null differ diff --git a/_New_ComfyUI_Bats/run_nvidia_gpu_miniconda.bat b/_New_ComfyUI_Bats/run_nvidia_gpu_miniconda.bat deleted file mode 100644 index 449a809..0000000 --- a/_New_ComfyUI_Bats/run_nvidia_gpu_miniconda.bat +++ /dev/null @@ -1,2 +0,0 @@ -.\python_miniconda_env\ComfyUI\python.exe -s ComfyUI\main.py --windows-standalone-build -pause diff --git a/_New_ComfyUI_Bats/update/update_comfyui_and_python_dependencies_miniconda.bat b/_New_ComfyUI_Bats/update/update_comfyui_and_python_dependencies_miniconda.bat deleted file mode 100644 index cbee4da..0000000 --- a/_New_ComfyUI_Bats/update/update_comfyui_and_python_dependencies_miniconda.bat +++ /dev/null @@ -1,11 +0,0 @@ -@echo off -..\python_miniconda_env\ComfyUI\python.exe .\update.py ..\ComfyUI\ -echo - -echo This will try to update pytorch and all python dependencies, if you get an error wait for pytorch/xformers to fix their stuff -echo You should not be running this anyways unless you really have to -echo - -echo If you just want to update normally, close this and run update_comfyui.bat instead. -echo - -pause -..\python_miniconda_env\ComfyUI\python.exe -s -m pip install --upgrade torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu121 -r ../ComfyUI/requirements.txt pygit2 -pause diff --git a/_Pre_Builds/README.md b/_Pre_Builds/README.md new file mode 100644 index 0000000..a7c9e00 --- /dev/null +++ b/_Pre_Builds/README.md @@ -0,0 +1,143 @@ +## Automatic Build System +- **[_Build_Scripts/auto_build_all.py](_Pre_Builds/_Build_Scripts/auto_build_all.py)**: The build pipeline for a single given build environment (e.g. py311, cu121) +- **[_Build_Scripts/build_config.yaml](_Pre_Builds/_Build_Scripts/build_config.yaml)**: Core config for build pipeline + +## Build Required Packages Semi-Automatically +#### Build for Windows: +The following steps are the one that I took to build all required packages for install Comfy3D in Windows 11: +1. Install [Visual Studio Build Tools 2022/2019](https://visualstudio.microsoft.com/downloads/?q=build+tools) with Workloads: Desktop development with C++ (There are a few JIT torch cpp extension that builds in runtime) + - Alternatively, according to [@doctorpangloss](https://github.com/MrForExample/ComfyUI-3D-Pack/issues/5), you can setup the c++/cuda build environments in windows by using [chocolatey](https://chocolatey.org/) +2. Download [CUDA 12.1](https://developer.nvidia.com/cuda-12-1-0-download-archive?target_os=Windows&target_arch=x86_64&target_version=11&target_type=exe_network) and [CUDA 11.8](https://developer.nvidia.com/cuda-11-8-0-download-archive?target_os=Windows&target_arch=x86_64&target_version=11&target_type=exe_network) environment. +3. Download [Miniconda](https://docs.conda.io/projects/miniconda/en/latest/) (*Note: [In a few edge cases Miniconda fails but Anaconda could fix the issue](https://github.com/MrForExample/ComfyUI-3D-Pack/issues/49)*) +4. Create conda environments: + ``` + conda create --name Comy3D_py310_cu121 python=3.10 + conda create --name Comy3D_py311_cu121 python=3.11 + conda create --name Comy3D_py312_cu121 python=3.12 + conda create --name Comy3D_py310_cu118 python=3.10 + conda create --name Comy3D_py311_cu118 python=3.11 + conda create --name Comy3D_py312_cu118 python=3.12 + ``` +5. Download Comfy3D: `git clone https://github.com/MrForExample/ComfyUI-3D-Pack.git` +6. Swap CUDA Toolkit Versions to 12.1 ([Follow this 3 simple steps guide](https://github.com/bycloudai/SwapCudaVersionWindows)) +7. Build Wheels with cuda 12.1: + ``` + # Example of using the path to the miniconda envs on my PC, you may need to change the python path + C:\Users\reall\Softwares\Miniconda\envs\Comy3D_py310_cu121\python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py + C:\Users\reall\Softwares\Miniconda\envs\Comy3D_py311_cu121\python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py + C:\Users\reall\Softwares\Miniconda\envs\Comy3D_py312_cu121\python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py + ``` +8. Swap CUDA Toolkit Versions to 11.8 ([Follow this 3 simple steps guide](https://github.com/bycloudai/SwapCudaVersionWindows)) +9. Build Wheels with cuda 11.8: + ``` + # Example of using the path to the miniconda envs on my PC, you may need to change the python path + C:\Users\reall\Softwares\Miniconda\envs\Comy3D_py310_cu118\python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py + C:\Users\reall\Softwares\Miniconda\envs\Comy3D_py311_cu118\python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py + C:\Users\reall\Softwares\Miniconda\envs\Comy3D_py312_cu118\python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py + ``` +**Additional Information:** +- [Fix for Ninja doesn't support filename longer than 260 characters issue](https://github.com/ninja-build/ninja/issues/1900#issuecomment-1817532728) +- pytorch3d pre-build wheels from [MiroPsota/torch_packages_builder](https://github.com/MiroPsota/torch_packages_builder/releases) +- [Fix for CUDA Toolkits unsupported Microsoft Visual Studio version error](https://forums.developer.nvidia.com/t/problems-with-latest-vs2022-update/294150) +#### Build for Linux: + +Then following commands are the one that I used to build all required packages for install Comfy3D in Ubuntu 22.04: + +```bash +# Install build tools: +sudo apt update +sudo apt install gcc g++ + +# Install CUDA 12.1: +# https://developer.nvidia.com/cuda-12-1-0-download-archive?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=22.04&target_type=runfile_local +wget https://developer.download.nvidia.com/compute/cuda/12.1.0/local_installers/cuda_12.1.0_530.30.02_linux.run +sudo sh cuda_12.1.0_530.30.02_linux.run + +# Install CUDA 11.8: +# https://developer.nvidia.com/cuda-11-8-0-download-archive?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=22.04&target_type=runfile_local +wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run +sudo sh cuda_11.8.0_520.61.05_linux.run + +# Add CUDA environment variables: +export PATH="/usr/local/cuda-11.8/bin:$PATH" +export LD_LIBRARY_PATH="/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH" +export PATH="/usr/local/cuda-12.1/bin:$PATH" +export LD_LIBRARY_PATH="/usr/local/cuda-12.1/lib64:$LD_LIBRARY_PATH" + +# Managing Multiple CUDA: +# https://medium.com/@yushantripleseven/managing-multiple-cuda-cudnn-installations-ba9cdc5e2654 +sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-11.8 10 +sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-12.1 10 + +# Install Miniconda: +# https://www.rosehosting.com/blog/how-to-install-miniconda-on-ubuntu-22-04/ +wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda-installer.sh +bash miniconda-installer.sh +# Open Miniconda prompt +source ~/.bashrc + +# Create conda environments +conda create --name Comy3D_py310_cu121 python=3.10 +conda create --name Comy3D_py311_cu121 python=3.11 +conda create --name Comy3D_py312_cu121 python=3.12 +conda create --name Comy3D_py310_cu118 python=3.10 +conda create --name Comy3D_py311_cu118 python=3.11 +conda create --name Comy3D_py312_cu118 python=3.12 + +# Download Comfy3D +git clone https://github.com/MrForExample/ComfyUI-3D-Pack.git + +# Build Wheels with cuda 12.1: +sudo update-alternatives --config cuda +2 +export CUDA_HOME="/usr/local/cuda-12.1/" +~/miniconda3/envs/Comy3D_py310_cu121/bin/python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py +~/miniconda3/envs/Comy3D_py311_cu121/bin/python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py +~/miniconda3/envs/Comy3D_py312_cu121/bin/python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py + +# Build Wheels with cuda 11.8: +sudo update-alternatives --config cuda +1 +export CUDA_HOME="/usr/local/cuda-11.8/" +~/miniconda3/envs/Comy3D_py310_cu118/bin/python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py +~/miniconda3/envs/Comy3D_py311_cu118/bin/python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py +~/miniconda3/envs/Comy3D_py312_cu118/bin/python ./ComfyUI-3D-Pack/_Pre_Builds/_Build_Scripts/auto_build_all.py +``` + +#### Use your Built Wheels: +In order to use your built wheels, you need to copy the folder `_Wheels_win_py{python_version}_cu{cuda_version}` to `{Your ComfyUI Root Folder Path}\ComfyUI\custom_nodes\ComfyUI-3D-Pack\_Pre_Builds\_Build_Wheels` and then reinstall the Comfy3D +
For example, `_Wheels_win_py311_cu121` to `C:\Users\reall\Softwares\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-3D-Pack\_Pre_Builds\_Build_Wheels` +
+ +### Install and run with docker: +Gpu support during Docker build time is required to install all requirenents. +On Linux host you could setup `nvidia-container-runtime`. On Windows +it is quite different and not checked at moment. + +#### Linux setup: +1. Install nvidia-container-runtime: + ```bash + sudo apt-get install nvidia-container-runtime + ``` +2. Edit/create the /etc/docker/daemon.json with content: + ```json + { + "runtimes": { + "nvidia": { + "path": "/usr/bin/nvidia-container-runtime", + "runtimeArgs": [] + } + }, + "default-runtime": "nvidia" + } + ``` + +3. Restart docker daemon: + ```bash + sudo systemctl restart docker + ``` + +4. Finally build and run docker container with: + ```bash + docker build -t comfy3d . && docker run --rm -it -p 8188:8188 --gpus all comfy3d + ``` \ No newline at end of file diff --git a/crm/imagedream/ldm/__init__.py b/_Pre_Builds/_Build_Scripts/__init__.py similarity index 100% rename from crm/imagedream/ldm/__init__.py rename to _Pre_Builds/_Build_Scripts/__init__.py diff --git a/_Pre_Builds/_Build_Scripts/auto_build_all.py b/_Pre_Builds/_Build_Scripts/auto_build_all.py index 71c6e4c..854bdab 100644 --- a/_Pre_Builds/_Build_Scripts/auto_build_all.py +++ b/_Pre_Builds/_Build_Scripts/auto_build_all.py @@ -1,46 +1,34 @@ import sys import os from os.path import dirname -import glob -import platform import subprocess import re +import time -SCRIPT_ROOT_ABS_PATH = dirname(os.path.abspath(__file__)) -DEPENDENCIES_FILE_ABS_PATH = os.path.join(SCRIPT_ROOT_ABS_PATH, "dependencies.txt") -BUILD_REQUIREMENTS_FILE_ABS_PATH = os.path.join(SCRIPT_ROOT_ABS_PATH, "build_requirements.txt") -BUILD_ROOT_ABS_PATH = dirname(SCRIPT_ROOT_ABS_PATH) -DEPENDENCIES_ROOT_ABS_PATH = os.path.join(BUILD_ROOT_ABS_PATH, "_Build_Dependencies") -LIBS_ROOT_ABS_PATH = os.path.join(BUILD_ROOT_ABS_PATH, "_Libs") +BUILD_SCRIPT_ROOT_ABS_PATH = dirname(__file__) +sys.path.append(BUILD_SCRIPT_ROOT_ABS_PATH) -def get_parent_dirpath_n_level_up(abs_path, n=1): - for i in range(n): - abs_path = dirname(abs_path) - return abs_path - -COMFY_PYTHON_ABS_PATH = os.path.join(get_parent_dirpath_n_level_up(BUILD_ROOT_ABS_PATH, 4), "python_embeded", "python") - -def get_platform_config_name(cuda_version): - platform_config_name = "_Wheels" - - # Add OS Type - if platform.system() == 'Windows': - platform_config_name += "_win" - elif platform.system() == "Linux": - platform_config_name += "_linux" - else: - raise NotImplementedError(f"Platform {platform.system()} not supported!") - - # Add Python Version, only first two version numbers, e.g. 3.12.4 -> 312 - platform_config_name += "_py" + "".join(platform.python_version().split('.')[:-1]) - - # Add CUDA Version - platform_config_name += "_" + cuda_version - - return platform_config_name +from build_utils import ( + get_platform_config_name, + calculate_runtime, + git_folder_parallel, + install_remote_packages, + build_config, + PYTHON_PATH, + DEPENDENCIES_FILE_ABS_PATH, + BUILD_REQUIREMENTS_FILE_ABS_PATH, + DEPENDENCIES_ROOT_ABS_PATH, + WHEELS_ROOT_ABS_PATH, + LIBS_ROOT_ABS_PATH +) def read_dependencies(file_path): + # Download required source libraries from remote + if not os.path.exists(LIBS_ROOT_ABS_PATH): + if not git_folder_parallel(build_config.repo_id, build_config.libs_dir_name, recursive=True, root_outdir=LIBS_ROOT_ABS_PATH): + raise RuntimeError(f"Comfy3D install failed, couldn't download directory {build_config.libs_dir_name} in remote repository {build_config.repo_id}") dependencies = [ f.path for f in os.scandir(LIBS_ROOT_ABS_PATH) if f.is_dir() ] + #dependencies = [] #ignore libraries for debug with open(file_path, "r") as f: dependencies += [line.strip() for line in f] @@ -55,15 +43,12 @@ def get_dependency_dir(dependency): dependency_dir = os.path.join(LIBS_ROOT_ABS_PATH, dependency) return dependency_dir, is_url -def setup_build_env(python_path, args): +def setup_build_env(): # Set CMake argumens fo build packages based on CUDA os.environ["CMAKE_ARGS"]="-DBUILD_opencv_world=ON -DWITH_CUDA=ON -DCUDA_FAST_MATH=ON -DWITH_CUBLAS=ON -DCUDA_ARCH_PTX=9.0 -DWITH_NVCUVID=ON" - subprocess.run([python_path, "-s", "-m", "pip", "install", "-r", BUILD_REQUIREMENTS_FILE_ABS_PATH]) - subprocess.run([ - python_path, "-s", "-m", "pip", "install", - f"torch=={args.torch_version}", f"torchvision=={args.torchvision_version}", - "--index-url", f"https://download.pytorch.org/whl/{args.cuda_version}" - ]) + subprocess.run([PYTHON_PATH, "-s", "-m", "pip", "install", "-r", BUILD_REQUIREMENTS_FILE_ABS_PATH]) + + install_remote_packages(build_config.build_base_packages) def clone_or_update_read_dependency(dependency_url, dependency_dir): if os.path.exists(dependency_dir): @@ -73,37 +58,53 @@ def clone_or_update_read_dependency(dependency_url, dependency_dir): # Clone the dependency subprocess.run(["git", "clone", "--recursive", dependency_url, dependency_dir]) -def build_python_wheel(python_path, dependency_dir, output_dir): +def build_python_wheel(dependency_dir, output_dir): # Build wheel and move the wheel file we just built to the output directory - subprocess.run([python_path, "setup.py", "bdist_wheel", "--dist-dir", output_dir], cwd=dependency_dir) + print(f"Building {dependency_dir}") + + result = subprocess.run([PYTHON_PATH, "setup.py", "bdist_wheel", "--dist-dir", output_dir], cwd=dependency_dir, shell=True, text=True, capture_output=True) + #print(f"returncode: {result.returncode} \n\n Output: {result.stdout} \n\n Error: {result.stderr}") + build_failed = result.returncode != 0 + + print(f" Build {dependency_dir} {'Failed' if build_failed else 'Succeed'}") + return build_failed def main(args): - # Get python executable from path - python_path = sys.executable + start_time = time.time() # Create the output folder if it doesn't exist output_root_path = args.output_root_dir if output_root_path is None: - output_root_path = os.path.join(BUILD_ROOT_ABS_PATH, get_platform_config_name(args.cuda_version)) + output_root_path = os.path.join(WHEELS_ROOT_ABS_PATH, get_platform_config_name()) elif not os.path.isabs(output_root_path): - output_root_path = os.path.join(BUILD_ROOT_ABS_PATH, output_root_path) + output_root_path = os.path.join(WHEELS_ROOT_ABS_PATH, output_root_path) os.makedirs(output_root_path, exist_ok=True) - - # Read dependencies names from the text file - dependencies = read_dependencies(DEPENDENCIES_FILE_ABS_PATH) - print(dependencies) # Setup environment variables and fundamental packages for build - setup_build_env(python_path, args) + setup_build_env() + + # Read dependencies names from the text file + dependencies = read_dependencies(DEPENDENCIES_FILE_ABS_PATH) # Build all dependencies and move them to output_root_path + failed_build = [] for dependency in dependencies: dependency_dir, is_url = get_dependency_dir(dependency) if is_url: clone_or_update_read_dependency(dependency, dependency_dir) - build_python_wheel(python_path, dependency_dir, output_root_path) + build_failed = build_python_wheel(dependency_dir, output_root_path) + if build_failed: + failed_build.append(dependency) + + hours, minutes, seconds = calculate_runtime(start_time) + print(f"Build all dependencies finished in {int(hours):0>2}:{int(minutes):0>2}:{seconds:05.2f}") + + if len(failed_build) == 0: + print(f"[Comfy3D BUILD SUCCEED]") + else: + raise RuntimeError(f"[Comfy3D BUILD FAILED]: Following dependencies failed to build: {failed_build}") if __name__ == "__main__": import argparse @@ -114,27 +115,6 @@ if __name__ == "__main__": default=None, help="Path to the target build directory", ) - parser.add_argument( - "--cuda_version", - type=str, - default="cu121", - choices="[cu121, cu118]", - help="CUDA Toolkit version", - ) - parser.add_argument( - "--torch_version", - type=str, - default="2.3.0", - help="Pytorch version", - ) - parser.add_argument( - "--torchvision_version", - type=str, - default="0.18.0", - help="Pytorch vision library version", - ) args = parser.parse_args() - main(args) - - #C:\Users\reall\Softwares\Miniconda\envs\Comfy3D_Builds_py310_cu118\python _Pre_Builds\_Build_Scripts\auto_build_all.py --cuda_version cu118 \ No newline at end of file + main(args) \ No newline at end of file diff --git a/_Pre_Builds/_Build_Scripts/build_config.yaml b/_Pre_Builds/_Build_Scripts/build_config.yaml new file mode 100644 index 0000000..56e34de --- /dev/null +++ b/_Pre_Builds/_Build_Scripts/build_config.yaml @@ -0,0 +1,33 @@ +repo_id: "MrForExample/Comfy3D_Pre_Builds" +supported_cuda_versions: ["12.1", "11.8"] +cuda_version: "12.1" + +# Packages inside this file will be pip downloaded before actual build start +build_requirements: "build_requirements.txt" +# Dependencies to build wheels from +dependencies: "dependencies.txt" +# Folder used to store `git clone` project files from dependencies +dependencies_dir_name: "_Build_Dependencies" +# Folder used to store library files download from remote +libs_dir_name: "_Libs" +# Folder used to store built wheels +wheels_dir_name: "_Build_Wheels" + +build_base_packages: ["torch", "torchvision"] +# All packages will be automatically installed at beginning of install.py follwing orders from top to bottom +remote_packages: + torch: + version: "2.3.0" + url: "https://download.pytorch.org/whl/${cuda_version}" + + torchvision: + version: "0.18.0" + url: "https://download.pytorch.org/whl/${cuda_version}" + + torch-scatter: + url_option: "--find-links" + url: "https://data.pyg.org/whl/torch-${remote_packages.torch.version}+${cuda_version}.html" + + xformers: + version: "0.0.26.post1" + url: "https://download.pytorch.org/whl/${cuda_version}" \ No newline at end of file diff --git a/_Pre_Builds/_Build_Scripts/build_requirements.txt b/_Pre_Builds/_Build_Scripts/build_requirements.txt index eb0a8b9..f58dc0d 100644 --- a/_Pre_Builds/_Build_Scripts/build_requirements.txt +++ b/_Pre_Builds/_Build_Scripts/build_requirements.txt @@ -1,2 +1,7 @@ +# build tools cmake -ninja \ No newline at end of file +ninja + +# web tools +PyGithub +requests \ No newline at end of file diff --git a/_Pre_Builds/_Build_Scripts/build_utils.py b/_Pre_Builds/_Build_Scripts/build_utils.py new file mode 100644 index 0000000..edb241a --- /dev/null +++ b/_Pre_Builds/_Build_Scripts/build_utils.py @@ -0,0 +1,140 @@ +import sys +import os +from os.path import dirname +import platform +import subprocess +import time + +PYTHON_PATH = sys.executable + +try: + from omegaconf import OmegaConf +except ImportError as e: + subprocess.run([PYTHON_PATH, "-s", "-m", "pip", "install", ]) + from omegaconf import OmegaConf + +BUILD_SCRIPT_ROOT_ABS_PATH = dirname(os.path.abspath(__file__)) +build_config = OmegaConf.load(os.path.join(BUILD_SCRIPT_ROOT_ABS_PATH, "build_config.yaml")) + +DEPENDENCIES_FILE_ABS_PATH = os.path.join(BUILD_SCRIPT_ROOT_ABS_PATH, build_config.dependencies) +BUILD_REQUIREMENTS_FILE_ABS_PATH = os.path.join(BUILD_SCRIPT_ROOT_ABS_PATH, build_config.build_requirements) +BUILD_ROOT_ABS_PATH = dirname(BUILD_SCRIPT_ROOT_ABS_PATH) +DEPENDENCIES_ROOT_ABS_PATH = os.path.join(BUILD_ROOT_ABS_PATH, build_config.dependencies_dir_name) +WHEELS_ROOT_ABS_PATH = os.path.join(BUILD_ROOT_ABS_PATH, build_config.wheels_dir_name) +LIBS_ROOT_ABS_PATH = os.path.join(BUILD_ROOT_ABS_PATH, build_config.libs_dir_name) + +def get_python_version(): + # Output: only first two version numbers, e.g. 3.12.4 -> py312 + return "py" + "".join(platform.python_version().split('.')[:-1]) + +def get_cuda_version(): + # Output: e.g. "cu121" or cu118 + result = subprocess.run(["nvcc", "--version"], shell=True, text=True, capture_output=True) + if result.returncode == 0: + for cuda_version in build_config.supported_cuda_versions: + if "cuda_" + cuda_version in result.stdout: + return "cu" + cuda_version.replace(".", "") + + raise RuntimeError(f"Please install/reinstall CUDA tookit with any of the following supported version: {build_config.supported_cuda_versions}") + +PYTHON_VERSION = get_python_version() +CUDA_VERSION = get_cuda_version() +build_config.cuda_version = CUDA_VERSION + +def get_platform_config_name(): + platform_config_name = "_Wheels" + + # Add OS Type + if platform.system() == 'Windows': + platform_config_name += "_win" + elif platform.system() == "Linux": + platform_config_name += "_linux" + else: + raise NotImplementedError(f"Platform {platform.system()} not supported!") + + # Add Python Version + platform_config_name += "_" + PYTHON_VERSION + + # Add CUDA Version + platform_config_name += "_" + CUDA_VERSION + + return platform_config_name + +def calculate_runtime(start_time): + end_time = time.time() + hours, rem = divmod(end_time - start_time, 3600) + minutes, seconds = divmod(rem, 60) + return hours, minutes, seconds + +def git_file(data): + try: + import requests + + c, out, folder = data + + r = requests.get(c.download_url) + output_path = c.path[len(folder):] + output_abs_path = out + output_path + os.makedirs(dirname(output_abs_path), exist_ok=True) + with open(output_abs_path, 'wb') as f: + print(f"Downloading {output_path} to {output_abs_path}") + f.write(r.content) + return False, c + + except Exception as e: + print(f"Exception in download_url(): {c.download_url}", e) + return True, c + +def git_contents_in_folder(repo, folder: str, recursive: bool=True): + # Modified from https://github.com/Nordgaren/Github-Folder-Downloader + contents = repo.get_contents(folder) + file_contents = [] + for c in contents: + if c.download_url is None: + if recursive: + file_contents += git_contents_in_folder(repo, c.path, recursive) + continue + + file_contents.append(c) + + return file_contents + +def git_folder_parallel(repo_id: str, folder: str, recursive: bool=True, root_outdir: str=""): + try: + from github import Github + from multiprocessing import cpu_count + from concurrent.futures.thread import ThreadPoolExecutor + + start_time = time.time() + + # Get all the file contents from repo (i.e. urls, relative path) + repo = Github().get_repo(repo_id) + file_contents = git_contents_in_folder(repo, folder, recursive) + + inputs = zip(file_contents, [root_outdir] * len(file_contents), [folder] * len(file_contents)) + with ThreadPoolExecutor(max_workers=cpu_count() - 1) as executor: + results = executor.map(git_file, inputs) + #results = ThreadPool(cpus - 1).imap_unordered(git_file, inputs) + for git_failed, c in results: + if git_failed: + raise RuntimeError(f"Could not download {c.path} from {c.download_url}, please check your internet connection.") + + hours, minutes, seconds = calculate_runtime(start_time) + print(f"Git folder finished in {int(hours):0>2}:{int(minutes):0>2}:{seconds:05.2f}") + return True + + except Exception as e: + print(f"Couldn't download folder {folder} from repo {repo_id}", e) + return False + +def install_remote_packages(package_names): + for package_name in package_names: + package_attr = build_config.remote_packages[package_name] + if hasattr(package_attr, "version"): + package_name += f"=={package_attr.version}" + url_option = package_attr.url_option if hasattr(package_attr, "url_option") else "--index-url" + + subprocess.run([ + PYTHON_PATH, "-s", "-m", "pip", "install", + package_name, url_option, package_attr.url + ]) \ No newline at end of file diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/__init__.py b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/__init__.py deleted file mode 100644 index 5fd361f..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/__init__.py +++ /dev/null @@ -1,3 +0,0 @@ -import pointnet2_ops.pointnet2_modules -import pointnet2_ops.pointnet2_utils -from pointnet2_ops._version import __version__ diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/ball_query.h b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/ball_query.h deleted file mode 100644 index 1bbc638..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/ball_query.h +++ /dev/null @@ -1,5 +0,0 @@ -#pragma once -#include - -at::Tensor ball_query(at::Tensor new_xyz, at::Tensor xyz, const float radius, - const int nsample); diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/cuda_utils.h b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/cuda_utils.h deleted file mode 100644 index 0fd5b6e..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/cuda_utils.h +++ /dev/null @@ -1,41 +0,0 @@ -#ifndef _CUDA_UTILS_H -#define _CUDA_UTILS_H - -#include -#include -#include - -#include -#include - -#include - -#define TOTAL_THREADS 512 - -inline int opt_n_threads(int work_size) { - const int pow_2 = std::log(static_cast(work_size)) / std::log(2.0); - - return max(min(1 << pow_2, TOTAL_THREADS), 1); -} - -inline dim3 opt_block_config(int x, int y) { - const int x_threads = opt_n_threads(x); - const int y_threads = - max(min(opt_n_threads(y), TOTAL_THREADS / x_threads), 1); - dim3 block_config(x_threads, y_threads, 1); - - return block_config; -} - -#define CUDA_CHECK_ERRORS() \ - do { \ - cudaError_t err = cudaGetLastError(); \ - if (cudaSuccess != err) { \ - fprintf(stderr, "CUDA kernel failed : %s\n%s at L:%d in %s\n", \ - cudaGetErrorString(err), __PRETTY_FUNCTION__, __LINE__, \ - __FILE__); \ - exit(-1); \ - } \ - } while (0) - -#endif diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/group_points.h b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/group_points.h deleted file mode 100644 index ad20cda..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/group_points.h +++ /dev/null @@ -1,5 +0,0 @@ -#pragma once -#include - -at::Tensor group_points(at::Tensor points, at::Tensor idx); -at::Tensor group_points_grad(at::Tensor grad_out, at::Tensor idx, const int n); diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/interpolate.h b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/interpolate.h deleted file mode 100644 index 26b3464..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/interpolate.h +++ /dev/null @@ -1,10 +0,0 @@ -#pragma once - -#include -#include - -std::vector three_nn(at::Tensor unknowns, at::Tensor knows); -at::Tensor three_interpolate(at::Tensor points, at::Tensor idx, - at::Tensor weight); -at::Tensor three_interpolate_grad(at::Tensor grad_out, at::Tensor idx, - at::Tensor weight, const int m); diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/sampling.h b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/sampling.h deleted file mode 100644 index d795271..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/sampling.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once -#include - -at::Tensor gather_points(at::Tensor points, at::Tensor idx); -at::Tensor gather_points_grad(at::Tensor grad_out, at::Tensor idx, const int n); -at::Tensor furthest_point_sampling(at::Tensor points, const int nsamples); diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/utils.h b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/utils.h deleted file mode 100644 index 5f080ed..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/include/utils.h +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once -#include -#include - -#define CHECK_CUDA(x) \ - do { \ - AT_ASSERT(x.is_cuda(), #x " must be a CUDA tensor"); \ - } while (0) - -#define CHECK_CONTIGUOUS(x) \ - do { \ - AT_ASSERT(x.is_contiguous(), #x " must be a contiguous tensor"); \ - } while (0) - -#define CHECK_IS_INT(x) \ - do { \ - AT_ASSERT(x.scalar_type() == at::ScalarType::Int, \ - #x " must be an int tensor"); \ - } while (0) - -#define CHECK_IS_FLOAT(x) \ - do { \ - AT_ASSERT(x.scalar_type() == at::ScalarType::Float, \ - #x " must be a float tensor"); \ - } while (0) diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/ball_query.cpp b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/ball_query.cpp deleted file mode 100644 index b1797c1..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/ball_query.cpp +++ /dev/null @@ -1,32 +0,0 @@ -#include "ball_query.h" -#include "utils.h" - -void query_ball_point_kernel_wrapper(int b, int n, int m, float radius, - int nsample, const float *new_xyz, - const float *xyz, int *idx); - -at::Tensor ball_query(at::Tensor new_xyz, at::Tensor xyz, const float radius, - const int nsample) { - CHECK_CONTIGUOUS(new_xyz); - CHECK_CONTIGUOUS(xyz); - CHECK_IS_FLOAT(new_xyz); - CHECK_IS_FLOAT(xyz); - - if (new_xyz.is_cuda()) { - CHECK_CUDA(xyz); - } - - at::Tensor idx = - torch::zeros({new_xyz.size(0), new_xyz.size(1), nsample}, - at::device(new_xyz.device()).dtype(at::ScalarType::Int)); - - if (new_xyz.is_cuda()) { - query_ball_point_kernel_wrapper(xyz.size(0), xyz.size(1), new_xyz.size(1), - radius, nsample, new_xyz.data_ptr(), - xyz.data_ptr(), idx.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return idx; -} diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/ball_query_gpu.cu b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/ball_query_gpu.cu deleted file mode 100644 index 559aef9..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/ball_query_gpu.cu +++ /dev/null @@ -1,54 +0,0 @@ -#include -#include -#include - -#include "cuda_utils.h" - -// input: new_xyz(b, m, 3) xyz(b, n, 3) -// output: idx(b, m, nsample) -__global__ void query_ball_point_kernel(int b, int n, int m, float radius, - int nsample, - const float *__restrict__ new_xyz, - const float *__restrict__ xyz, - int *__restrict__ idx) { - int batch_index = blockIdx.x; - xyz += batch_index * n * 3; - new_xyz += batch_index * m * 3; - idx += m * nsample * batch_index; - - int index = threadIdx.x; - int stride = blockDim.x; - - float radius2 = radius * radius; - for (int j = index; j < m; j += stride) { - float new_x = new_xyz[j * 3 + 0]; - float new_y = new_xyz[j * 3 + 1]; - float new_z = new_xyz[j * 3 + 2]; - for (int k = 0, cnt = 0; k < n && cnt < nsample; ++k) { - float x = xyz[k * 3 + 0]; - float y = xyz[k * 3 + 1]; - float z = xyz[k * 3 + 2]; - float d2 = (new_x - x) * (new_x - x) + (new_y - y) * (new_y - y) + - (new_z - z) * (new_z - z); - if (d2 < radius2) { - if (cnt == 0) { - for (int l = 0; l < nsample; ++l) { - idx[j * nsample + l] = k; - } - } - idx[j * nsample + cnt] = k; - ++cnt; - } - } - } -} - -void query_ball_point_kernel_wrapper(int b, int n, int m, float radius, - int nsample, const float *new_xyz, - const float *xyz, int *idx) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - query_ball_point_kernel<<>>( - b, n, m, radius, nsample, new_xyz, xyz, idx); - - CUDA_CHECK_ERRORS(); -} diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/bindings.cpp b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/bindings.cpp deleted file mode 100644 index d1916ce..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/bindings.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ball_query.h" -#include "group_points.h" -#include "interpolate.h" -#include "sampling.h" - -PYBIND11_MODULE(TORCH_EXTENSION_NAME, m) { - m.def("gather_points", &gather_points); - m.def("gather_points_grad", &gather_points_grad); - m.def("furthest_point_sampling", &furthest_point_sampling); - - m.def("three_nn", &three_nn); - m.def("three_interpolate", &three_interpolate); - m.def("three_interpolate_grad", &three_interpolate_grad); - - m.def("ball_query", &ball_query); - - m.def("group_points", &group_points); - m.def("group_points_grad", &group_points_grad); -} diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/group_points.cpp b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/group_points.cpp deleted file mode 100644 index 285a4bd..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/group_points.cpp +++ /dev/null @@ -1,62 +0,0 @@ -#include "group_points.h" -#include "utils.h" - -void group_points_kernel_wrapper(int b, int c, int n, int npoints, int nsample, - const float *points, const int *idx, - float *out); - -void group_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - int nsample, const float *grad_out, - const int *idx, float *grad_points); - -at::Tensor group_points(at::Tensor points, at::Tensor idx) { - CHECK_CONTIGUOUS(points); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(points); - CHECK_IS_INT(idx); - - if (points.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({points.size(0), points.size(1), idx.size(1), idx.size(2)}, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - group_points_kernel_wrapper(points.size(0), points.size(1), points.size(2), - idx.size(1), idx.size(2), - points.data_ptr(), idx.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} - -at::Tensor group_points_grad(at::Tensor grad_out, at::Tensor idx, const int n) { - CHECK_CONTIGUOUS(grad_out); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(grad_out); - CHECK_IS_INT(idx); - - if (grad_out.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({grad_out.size(0), grad_out.size(1), n}, - at::device(grad_out.device()).dtype(at::ScalarType::Float)); - - if (grad_out.is_cuda()) { - group_points_grad_kernel_wrapper( - grad_out.size(0), grad_out.size(1), n, idx.size(1), idx.size(2), - grad_out.data_ptr(), idx.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/group_points_gpu.cu b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/group_points_gpu.cu deleted file mode 100644 index 57c2b1b..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/group_points_gpu.cu +++ /dev/null @@ -1,75 +0,0 @@ -#include -#include - -#include "cuda_utils.h" - -// input: points(b, c, n) idx(b, npoints, nsample) -// output: out(b, c, npoints, nsample) -__global__ void group_points_kernel(int b, int c, int n, int npoints, - int nsample, - const float *__restrict__ points, - const int *__restrict__ idx, - float *__restrict__ out) { - int batch_index = blockIdx.x; - points += batch_index * n * c; - idx += batch_index * npoints * nsample; - out += batch_index * npoints * nsample * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * npoints; i += stride) { - const int l = i / npoints; - const int j = i % npoints; - for (int k = 0; k < nsample; ++k) { - int ii = idx[j * nsample + k]; - out[(l * npoints + j) * nsample + k] = points[l * n + ii]; - } - } -} - -void group_points_kernel_wrapper(int b, int c, int n, int npoints, int nsample, - const float *points, const int *idx, - float *out) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - - group_points_kernel<<>>( - b, c, n, npoints, nsample, points, idx, out); - - CUDA_CHECK_ERRORS(); -} - -// input: grad_out(b, c, npoints, nsample), idx(b, npoints, nsample) -// output: grad_points(b, c, n) -__global__ void group_points_grad_kernel(int b, int c, int n, int npoints, - int nsample, - const float *__restrict__ grad_out, - const int *__restrict__ idx, - float *__restrict__ grad_points) { - int batch_index = blockIdx.x; - grad_out += batch_index * npoints * nsample * c; - idx += batch_index * npoints * nsample; - grad_points += batch_index * n * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * npoints; i += stride) { - const int l = i / npoints; - const int j = i % npoints; - for (int k = 0; k < nsample; ++k) { - int ii = idx[j * nsample + k]; - atomicAdd(grad_points + l * n + ii, - grad_out[(l * npoints + j) * nsample + k]); - } - } -} - -void group_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - int nsample, const float *grad_out, - const int *idx, float *grad_points) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - - group_points_grad_kernel<<>>( - b, c, n, npoints, nsample, grad_out, idx, grad_points); - - CUDA_CHECK_ERRORS(); -} diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/interpolate.cpp b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/interpolate.cpp deleted file mode 100644 index cdee31c..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/interpolate.cpp +++ /dev/null @@ -1,99 +0,0 @@ -#include "interpolate.h" -#include "utils.h" - -void three_nn_kernel_wrapper(int b, int n, int m, const float *unknown, - const float *known, float *dist2, int *idx); -void three_interpolate_kernel_wrapper(int b, int c, int m, int n, - const float *points, const int *idx, - const float *weight, float *out); -void three_interpolate_grad_kernel_wrapper(int b, int c, int n, int m, - const float *grad_out, - const int *idx, const float *weight, - float *grad_points); - -std::vector three_nn(at::Tensor unknowns, at::Tensor knows) { - CHECK_CONTIGUOUS(unknowns); - CHECK_CONTIGUOUS(knows); - CHECK_IS_FLOAT(unknowns); - CHECK_IS_FLOAT(knows); - - if (unknowns.is_cuda()) { - CHECK_CUDA(knows); - } - - at::Tensor idx = - torch::zeros({unknowns.size(0), unknowns.size(1), 3}, - at::device(unknowns.device()).dtype(at::ScalarType::Int)); - at::Tensor dist2 = - torch::zeros({unknowns.size(0), unknowns.size(1), 3}, - at::device(unknowns.device()).dtype(at::ScalarType::Float)); - - if (unknowns.is_cuda()) { - three_nn_kernel_wrapper(unknowns.size(0), unknowns.size(1), knows.size(1), - unknowns.data_ptr(), knows.data_ptr(), - dist2.data_ptr(), idx.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return {dist2, idx}; -} - -at::Tensor three_interpolate(at::Tensor points, at::Tensor idx, - at::Tensor weight) { - CHECK_CONTIGUOUS(points); - CHECK_CONTIGUOUS(idx); - CHECK_CONTIGUOUS(weight); - CHECK_IS_FLOAT(points); - CHECK_IS_INT(idx); - CHECK_IS_FLOAT(weight); - - if (points.is_cuda()) { - CHECK_CUDA(idx); - CHECK_CUDA(weight); - } - - at::Tensor output = - torch::zeros({points.size(0), points.size(1), idx.size(1)}, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - three_interpolate_kernel_wrapper( - points.size(0), points.size(1), points.size(2), idx.size(1), - points.data_ptr(), idx.data_ptr(), weight.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} -at::Tensor three_interpolate_grad(at::Tensor grad_out, at::Tensor idx, - at::Tensor weight, const int m) { - CHECK_CONTIGUOUS(grad_out); - CHECK_CONTIGUOUS(idx); - CHECK_CONTIGUOUS(weight); - CHECK_IS_FLOAT(grad_out); - CHECK_IS_INT(idx); - CHECK_IS_FLOAT(weight); - - if (grad_out.is_cuda()) { - CHECK_CUDA(idx); - CHECK_CUDA(weight); - } - - at::Tensor output = - torch::zeros({grad_out.size(0), grad_out.size(1), m}, - at::device(grad_out.device()).dtype(at::ScalarType::Float)); - - if (grad_out.is_cuda()) { - three_interpolate_grad_kernel_wrapper( - grad_out.size(0), grad_out.size(1), grad_out.size(2), m, - grad_out.data_ptr(), idx.data_ptr(), - weight.data_ptr(), output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/interpolate_gpu.cu b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/interpolate_gpu.cu deleted file mode 100644 index 81c5548..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/interpolate_gpu.cu +++ /dev/null @@ -1,154 +0,0 @@ -#include -#include -#include - -#include "cuda_utils.h" - -// input: unknown(b, n, 3) known(b, m, 3) -// output: dist2(b, n, 3), idx(b, n, 3) -__global__ void three_nn_kernel(int b, int n, int m, - const float *__restrict__ unknown, - const float *__restrict__ known, - float *__restrict__ dist2, - int *__restrict__ idx) { - int batch_index = blockIdx.x; - unknown += batch_index * n * 3; - known += batch_index * m * 3; - dist2 += batch_index * n * 3; - idx += batch_index * n * 3; - - int index = threadIdx.x; - int stride = blockDim.x; - for (int j = index; j < n; j += stride) { - float ux = unknown[j * 3 + 0]; - float uy = unknown[j * 3 + 1]; - float uz = unknown[j * 3 + 2]; - - double best1 = 1e40, best2 = 1e40, best3 = 1e40; - int besti1 = 0, besti2 = 0, besti3 = 0; - for (int k = 0; k < m; ++k) { - float x = known[k * 3 + 0]; - float y = known[k * 3 + 1]; - float z = known[k * 3 + 2]; - float d = (ux - x) * (ux - x) + (uy - y) * (uy - y) + (uz - z) * (uz - z); - if (d < best1) { - best3 = best2; - besti3 = besti2; - best2 = best1; - besti2 = besti1; - best1 = d; - besti1 = k; - } else if (d < best2) { - best3 = best2; - besti3 = besti2; - best2 = d; - besti2 = k; - } else if (d < best3) { - best3 = d; - besti3 = k; - } - } - dist2[j * 3 + 0] = best1; - dist2[j * 3 + 1] = best2; - dist2[j * 3 + 2] = best3; - - idx[j * 3 + 0] = besti1; - idx[j * 3 + 1] = besti2; - idx[j * 3 + 2] = besti3; - } -} - -void three_nn_kernel_wrapper(int b, int n, int m, const float *unknown, - const float *known, float *dist2, int *idx) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - three_nn_kernel<<>>(b, n, m, unknown, known, - dist2, idx); - - CUDA_CHECK_ERRORS(); -} - -// input: points(b, c, m), idx(b, n, 3), weight(b, n, 3) -// output: out(b, c, n) -__global__ void three_interpolate_kernel(int b, int c, int m, int n, - const float *__restrict__ points, - const int *__restrict__ idx, - const float *__restrict__ weight, - float *__restrict__ out) { - int batch_index = blockIdx.x; - points += batch_index * m * c; - - idx += batch_index * n * 3; - weight += batch_index * n * 3; - - out += batch_index * n * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * n; i += stride) { - const int l = i / n; - const int j = i % n; - float w1 = weight[j * 3 + 0]; - float w2 = weight[j * 3 + 1]; - float w3 = weight[j * 3 + 2]; - - int i1 = idx[j * 3 + 0]; - int i2 = idx[j * 3 + 1]; - int i3 = idx[j * 3 + 2]; - - out[i] = points[l * m + i1] * w1 + points[l * m + i2] * w2 + - points[l * m + i3] * w3; - } -} - -void three_interpolate_kernel_wrapper(int b, int c, int m, int n, - const float *points, const int *idx, - const float *weight, float *out) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - three_interpolate_kernel<<>>( - b, c, m, n, points, idx, weight, out); - - CUDA_CHECK_ERRORS(); -} - -// input: grad_out(b, c, n), idx(b, n, 3), weight(b, n, 3) -// output: grad_points(b, c, m) - -__global__ void three_interpolate_grad_kernel( - int b, int c, int n, int m, const float *__restrict__ grad_out, - const int *__restrict__ idx, const float *__restrict__ weight, - float *__restrict__ grad_points) { - int batch_index = blockIdx.x; - grad_out += batch_index * n * c; - idx += batch_index * n * 3; - weight += batch_index * n * 3; - grad_points += batch_index * m * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * n; i += stride) { - const int l = i / n; - const int j = i % n; - float w1 = weight[j * 3 + 0]; - float w2 = weight[j * 3 + 1]; - float w3 = weight[j * 3 + 2]; - - int i1 = idx[j * 3 + 0]; - int i2 = idx[j * 3 + 1]; - int i3 = idx[j * 3 + 2]; - - atomicAdd(grad_points + l * m + i1, grad_out[i] * w1); - atomicAdd(grad_points + l * m + i2, grad_out[i] * w2); - atomicAdd(grad_points + l * m + i3, grad_out[i] * w3); - } -} - -void three_interpolate_grad_kernel_wrapper(int b, int c, int n, int m, - const float *grad_out, - const int *idx, const float *weight, - float *grad_points) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - three_interpolate_grad_kernel<<>>( - b, c, n, m, grad_out, idx, weight, grad_points); - - CUDA_CHECK_ERRORS(); -} diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/sampling.cpp b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/sampling.cpp deleted file mode 100644 index ddbdc11..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/sampling.cpp +++ /dev/null @@ -1,87 +0,0 @@ -#include "sampling.h" -#include "utils.h" - -void gather_points_kernel_wrapper(int b, int c, int n, int npoints, - const float *points, const int *idx, - float *out); -void gather_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - const float *grad_out, const int *idx, - float *grad_points); - -void furthest_point_sampling_kernel_wrapper(int b, int n, int m, - const float *dataset, float *temp, - int *idxs); - -at::Tensor gather_points(at::Tensor points, at::Tensor idx) { - CHECK_CONTIGUOUS(points); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(points); - CHECK_IS_INT(idx); - - if (points.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({points.size(0), points.size(1), idx.size(1)}, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - gather_points_kernel_wrapper(points.size(0), points.size(1), points.size(2), - idx.size(1), points.data_ptr(), - idx.data_ptr(), output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} - -at::Tensor gather_points_grad(at::Tensor grad_out, at::Tensor idx, - const int n) { - CHECK_CONTIGUOUS(grad_out); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(grad_out); - CHECK_IS_INT(idx); - - if (grad_out.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({grad_out.size(0), grad_out.size(1), n}, - at::device(grad_out.device()).dtype(at::ScalarType::Float)); - - if (grad_out.is_cuda()) { - gather_points_grad_kernel_wrapper(grad_out.size(0), grad_out.size(1), n, - idx.size(1), grad_out.data_ptr(), - idx.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} -at::Tensor furthest_point_sampling(at::Tensor points, const int nsamples) { - CHECK_CONTIGUOUS(points); - CHECK_IS_FLOAT(points); - - at::Tensor output = - torch::zeros({points.size(0), nsamples}, - at::device(points.device()).dtype(at::ScalarType::Int)); - - at::Tensor tmp = - torch::full({points.size(0), points.size(1)}, 1e10, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - furthest_point_sampling_kernel_wrapper( - points.size(0), points.size(1), nsamples, points.data_ptr(), - tmp.data_ptr(), output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/sampling_gpu.cu b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/sampling_gpu.cu deleted file mode 100644 index fc573f0..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_ext-src/src/sampling_gpu.cu +++ /dev/null @@ -1,229 +0,0 @@ -#include -#include - -#include "cuda_utils.h" - -// input: points(b, c, n) idx(b, m) -// output: out(b, c, m) -__global__ void gather_points_kernel(int b, int c, int n, int m, - const float *__restrict__ points, - const int *__restrict__ idx, - float *__restrict__ out) { - for (int i = blockIdx.x; i < b; i += gridDim.x) { - for (int l = blockIdx.y; l < c; l += gridDim.y) { - for (int j = threadIdx.x; j < m; j += blockDim.x) { - int a = idx[i * m + j]; - out[(i * c + l) * m + j] = points[(i * c + l) * n + a]; - } - } - } -} - -void gather_points_kernel_wrapper(int b, int c, int n, int npoints, - const float *points, const int *idx, - float *out) { - gather_points_kernel<<>>(b, c, n, npoints, - points, idx, out); - - CUDA_CHECK_ERRORS(); -} - -// input: grad_out(b, c, m) idx(b, m) -// output: grad_points(b, c, n) -__global__ void gather_points_grad_kernel(int b, int c, int n, int m, - const float *__restrict__ grad_out, - const int *__restrict__ idx, - float *__restrict__ grad_points) { - for (int i = blockIdx.x; i < b; i += gridDim.x) { - for (int l = blockIdx.y; l < c; l += gridDim.y) { - for (int j = threadIdx.x; j < m; j += blockDim.x) { - int a = idx[i * m + j]; - atomicAdd(grad_points + (i * c + l) * n + a, - grad_out[(i * c + l) * m + j]); - } - } - } -} - -void gather_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - const float *grad_out, const int *idx, - float *grad_points) { - gather_points_grad_kernel<<>>( - b, c, n, npoints, grad_out, idx, grad_points); - - CUDA_CHECK_ERRORS(); -} - -__device__ void __update(float *__restrict__ dists, int *__restrict__ dists_i, - int idx1, int idx2) { - const float v1 = dists[idx1], v2 = dists[idx2]; - const int i1 = dists_i[idx1], i2 = dists_i[idx2]; - dists[idx1] = max(v1, v2); - dists_i[idx1] = v2 > v1 ? i2 : i1; -} - -// Input dataset: (b, n, 3), tmp: (b, n) -// Ouput idxs (b, m) -template -__global__ void furthest_point_sampling_kernel( - int b, int n, int m, const float *__restrict__ dataset, - float *__restrict__ temp, int *__restrict__ idxs) { - if (m <= 0) return; - __shared__ float dists[block_size]; - __shared__ int dists_i[block_size]; - - int batch_index = blockIdx.x; - dataset += batch_index * n * 3; - temp += batch_index * n; - idxs += batch_index * m; - - int tid = threadIdx.x; - const int stride = block_size; - - int old = 0; - if (threadIdx.x == 0) idxs[0] = old; - - __syncthreads(); - for (int j = 1; j < m; j++) { - int besti = 0; - float best = -1; - float x1 = dataset[old * 3 + 0]; - float y1 = dataset[old * 3 + 1]; - float z1 = dataset[old * 3 + 2]; - for (int k = tid; k < n; k += stride) { - float x2, y2, z2; - x2 = dataset[k * 3 + 0]; - y2 = dataset[k * 3 + 1]; - z2 = dataset[k * 3 + 2]; - float mag = (x2 * x2) + (y2 * y2) + (z2 * z2); - if (mag <= 1e-3) continue; - - float d = - (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1) + (z2 - z1) * (z2 - z1); - - float d2 = min(d, temp[k]); - temp[k] = d2; - besti = d2 > best ? k : besti; - best = d2 > best ? d2 : best; - } - dists[tid] = best; - dists_i[tid] = besti; - __syncthreads(); - - if (block_size >= 512) { - if (tid < 256) { - __update(dists, dists_i, tid, tid + 256); - } - __syncthreads(); - } - if (block_size >= 256) { - if (tid < 128) { - __update(dists, dists_i, tid, tid + 128); - } - __syncthreads(); - } - if (block_size >= 128) { - if (tid < 64) { - __update(dists, dists_i, tid, tid + 64); - } - __syncthreads(); - } - if (block_size >= 64) { - if (tid < 32) { - __update(dists, dists_i, tid, tid + 32); - } - __syncthreads(); - } - if (block_size >= 32) { - if (tid < 16) { - __update(dists, dists_i, tid, tid + 16); - } - __syncthreads(); - } - if (block_size >= 16) { - if (tid < 8) { - __update(dists, dists_i, tid, tid + 8); - } - __syncthreads(); - } - if (block_size >= 8) { - if (tid < 4) { - __update(dists, dists_i, tid, tid + 4); - } - __syncthreads(); - } - if (block_size >= 4) { - if (tid < 2) { - __update(dists, dists_i, tid, tid + 2); - } - __syncthreads(); - } - if (block_size >= 2) { - if (tid < 1) { - __update(dists, dists_i, tid, tid + 1); - } - __syncthreads(); - } - - old = dists_i[0]; - if (tid == 0) idxs[j] = old; - } -} - -void furthest_point_sampling_kernel_wrapper(int b, int n, int m, - const float *dataset, float *temp, - int *idxs) { - unsigned int n_threads = opt_n_threads(n); - - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - - switch (n_threads) { - case 512: - furthest_point_sampling_kernel<512> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 256: - furthest_point_sampling_kernel<256> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 128: - furthest_point_sampling_kernel<128> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 64: - furthest_point_sampling_kernel<64> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 32: - furthest_point_sampling_kernel<32> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 16: - furthest_point_sampling_kernel<16> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 8: - furthest_point_sampling_kernel<8> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 4: - furthest_point_sampling_kernel<4> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 2: - furthest_point_sampling_kernel<2> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 1: - furthest_point_sampling_kernel<1> - <<>>(b, n, m, dataset, temp, idxs); - break; - default: - furthest_point_sampling_kernel<512> - <<>>(b, n, m, dataset, temp, idxs); - } - - CUDA_CHECK_ERRORS(); -} diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_version.py b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_version.py deleted file mode 100644 index 528787c..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/_version.py +++ /dev/null @@ -1 +0,0 @@ -__version__ = "3.0.0" diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/pointnet2_modules.py b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/pointnet2_modules.py deleted file mode 100644 index a0ad4f6..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/pointnet2_modules.py +++ /dev/null @@ -1,209 +0,0 @@ -from typing import List, Optional, Tuple - -import torch -import torch.nn as nn -import torch.nn.functional as F -from pointnet2_ops import pointnet2_utils - - -def build_shared_mlp(mlp_spec: List[int], bn: bool = True): - layers = [] - for i in range(1, len(mlp_spec)): - layers.append( - nn.Conv2d(mlp_spec[i - 1], mlp_spec[i], kernel_size=1, bias=not bn) - ) - if bn: - layers.append(nn.BatchNorm2d(mlp_spec[i])) - layers.append(nn.ReLU(True)) - - return nn.Sequential(*layers) - - -class _PointnetSAModuleBase(nn.Module): - def __init__(self): - super(_PointnetSAModuleBase, self).__init__() - self.npoint = None - self.groupers = None - self.mlps = None - - def forward( - self, xyz: torch.Tensor, features: Optional[torch.Tensor] - ) -> Tuple[torch.Tensor, torch.Tensor]: - r""" - Parameters - ---------- - xyz : torch.Tensor - (B, N, 3) tensor of the xyz coordinates of the features - features : torch.Tensor - (B, C, N) tensor of the descriptors of the the features - - Returns - ------- - new_xyz : torch.Tensor - (B, npoint, 3) tensor of the new features' xyz - new_features : torch.Tensor - (B, \sum_k(mlps[k][-1]), npoint) tensor of the new_features descriptors - """ - - new_features_list = [] - - xyz_flipped = xyz.transpose(1, 2).contiguous() - new_xyz = ( - pointnet2_utils.gather_operation( - xyz_flipped, pointnet2_utils.furthest_point_sample(xyz, self.npoint) - ) - .transpose(1, 2) - .contiguous() - if self.npoint is not None - else None - ) - - for i in range(len(self.groupers)): - new_features = self.groupers[i]( - xyz, new_xyz, features - ) # (B, C, npoint, nsample) - - new_features = self.mlps[i](new_features) # (B, mlp[-1], npoint, nsample) - new_features = F.max_pool2d( - new_features, kernel_size=[1, new_features.size(3)] - ) # (B, mlp[-1], npoint, 1) - new_features = new_features.squeeze(-1) # (B, mlp[-1], npoint) - - new_features_list.append(new_features) - - return new_xyz, torch.cat(new_features_list, dim=1) - - -class PointnetSAModuleMSG(_PointnetSAModuleBase): - r"""Pointnet set abstrction layer with multiscale grouping - - Parameters - ---------- - npoint : int - Number of features - radii : list of float32 - list of radii to group with - nsamples : list of int32 - Number of samples in each ball query - mlps : list of list of int32 - Spec of the pointnet before the global max_pool for each scale - bn : bool - Use batchnorm - """ - - def __init__(self, npoint, radii, nsamples, mlps, bn=True, use_xyz=True): - # type: (PointnetSAModuleMSG, int, List[float], List[int], List[List[int]], bool, bool) -> None - super(PointnetSAModuleMSG, self).__init__() - - assert len(radii) == len(nsamples) == len(mlps) - - self.npoint = npoint - self.groupers = nn.ModuleList() - self.mlps = nn.ModuleList() - for i in range(len(radii)): - radius = radii[i] - nsample = nsamples[i] - self.groupers.append( - pointnet2_utils.QueryAndGroup(radius, nsample, use_xyz=use_xyz) - if npoint is not None - else pointnet2_utils.GroupAll(use_xyz) - ) - mlp_spec = mlps[i] - if use_xyz: - mlp_spec[0] += 3 - - self.mlps.append(build_shared_mlp(mlp_spec, bn)) - - -class PointnetSAModule(PointnetSAModuleMSG): - r"""Pointnet set abstrction layer - - Parameters - ---------- - npoint : int - Number of features - radius : float - Radius of ball - nsample : int - Number of samples in the ball query - mlp : list - Spec of the pointnet before the global max_pool - bn : bool - Use batchnorm - """ - - def __init__( - self, mlp, npoint=None, radius=None, nsample=None, bn=True, use_xyz=True - ): - # type: (PointnetSAModule, List[int], int, float, int, bool, bool) -> None - super(PointnetSAModule, self).__init__( - mlps=[mlp], - npoint=npoint, - radii=[radius], - nsamples=[nsample], - bn=bn, - use_xyz=use_xyz, - ) - - -class PointnetFPModule(nn.Module): - r"""Propigates the features of one set to another - - Parameters - ---------- - mlp : list - Pointnet module parameters - bn : bool - Use batchnorm - """ - - def __init__(self, mlp, bn=True): - # type: (PointnetFPModule, List[int], bool) -> None - super(PointnetFPModule, self).__init__() - self.mlp = build_shared_mlp(mlp, bn=bn) - - def forward(self, unknown, known, unknow_feats, known_feats): - # type: (PointnetFPModule, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - Parameters - ---------- - unknown : torch.Tensor - (B, n, 3) tensor of the xyz positions of the unknown features - known : torch.Tensor - (B, m, 3) tensor of the xyz positions of the known features - unknow_feats : torch.Tensor - (B, C1, n) tensor of the features to be propigated to - known_feats : torch.Tensor - (B, C2, m) tensor of features to be propigated - - Returns - ------- - new_features : torch.Tensor - (B, mlp[-1], n) tensor of the features of the unknown features - """ - - if known is not None: - dist, idx = pointnet2_utils.three_nn(unknown, known) - dist_recip = 1.0 / (dist + 1e-8) - norm = torch.sum(dist_recip, dim=2, keepdim=True) - weight = dist_recip / norm - - interpolated_feats = pointnet2_utils.three_interpolate( - known_feats, idx, weight - ) - else: - interpolated_feats = known_feats.expand( - *(known_feats.size()[0:2] + [unknown.size(1)]) - ) - - if unknow_feats is not None: - new_features = torch.cat( - [interpolated_feats, unknow_feats], dim=1 - ) # (B, C2 + C1, n) - else: - new_features = interpolated_feats - - new_features = new_features.unsqueeze(-1) - new_features = self.mlp(new_features) - - return new_features.squeeze(-1) diff --git a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/pointnet2_utils.py b/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/pointnet2_utils.py deleted file mode 100644 index 150fccc..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/pointnet2_ops/pointnet2_utils.py +++ /dev/null @@ -1,379 +0,0 @@ -import torch -import torch.nn as nn -import warnings -from torch.autograd import Function -from typing import * - -try: - import pointnet2_ops._ext as _ext -except ImportError: - from torch.utils.cpp_extension import load - import glob - import os.path as osp - import os - - warnings.warn("Unable to load pointnet2_ops cpp extension. JIT Compiling.") - - _ext_src_root = osp.join(osp.dirname(__file__), "_ext-src") - _ext_sources = glob.glob(osp.join(_ext_src_root, "src", "*.cpp")) + glob.glob( - osp.join(_ext_src_root, "src", "*.cu") - ) - _ext_headers = glob.glob(osp.join(_ext_src_root, "include", "*")) - - os.environ["TORCH_CUDA_ARCH_LIST"] = "3.7+PTX;5.0;6.0;6.1;6.2;7.0;7.5" - _ext = load( - "_ext", - sources=_ext_sources, - extra_include_paths=[osp.join(_ext_src_root, "include")], - extra_cflags=["-O3"], - extra_cuda_cflags=["-O3", "-Xfatbin", "-compress-all"], - with_cuda=True, - ) - - -class FurthestPointSampling(Function): - @staticmethod - def forward(ctx, xyz, npoint): - # type: (Any, torch.Tensor, int) -> torch.Tensor - r""" - Uses iterative furthest point sampling to select a set of npoint features that have the largest - minimum distance - - Parameters - ---------- - xyz : torch.Tensor - (B, N, 3) tensor where N > npoint - npoint : int32 - number of features in the sampled set - - Returns - ------- - torch.Tensor - (B, npoint) tensor containing the set - """ - out = _ext.furthest_point_sampling(xyz, npoint) - - ctx.mark_non_differentiable(out) - - return out - - @staticmethod - def backward(ctx, grad_out): - return () - - -furthest_point_sample = FurthestPointSampling.apply - - -class GatherOperation(Function): - @staticmethod - def forward(ctx, features, idx): - # type: (Any, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - - Parameters - ---------- - features : torch.Tensor - (B, C, N) tensor - - idx : torch.Tensor - (B, npoint) tensor of the features to gather - - Returns - ------- - torch.Tensor - (B, C, npoint) tensor - """ - - ctx.save_for_backward(idx, features) - - return _ext.gather_points(features, idx) - - @staticmethod - def backward(ctx, grad_out): - idx, features = ctx.saved_tensors - N = features.size(2) - - grad_features = _ext.gather_points_grad(grad_out.contiguous(), idx, N) - return grad_features, None - - -gather_operation = GatherOperation.apply - - -class ThreeNN(Function): - @staticmethod - def forward(ctx, unknown, known): - # type: (Any, torch.Tensor, torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor] - r""" - Find the three nearest neighbors of unknown in known - Parameters - ---------- - unknown : torch.Tensor - (B, n, 3) tensor of known features - known : torch.Tensor - (B, m, 3) tensor of unknown features - - Returns - ------- - dist : torch.Tensor - (B, n, 3) l2 distance to the three nearest neighbors - idx : torch.Tensor - (B, n, 3) index of 3 nearest neighbors - """ - dist2, idx = _ext.three_nn(unknown, known) - dist = torch.sqrt(dist2) - - ctx.mark_non_differentiable(dist, idx) - - return dist, idx - - @staticmethod - def backward(ctx, grad_dist, grad_idx): - return () - - -three_nn = ThreeNN.apply - - -class ThreeInterpolate(Function): - @staticmethod - def forward(ctx, features, idx, weight): - # type(Any, torch.Tensor, torch.Tensor, torch.Tensor) -> Torch.Tensor - r""" - Performs weight linear interpolation on 3 features - Parameters - ---------- - features : torch.Tensor - (B, c, m) Features descriptors to be interpolated from - idx : torch.Tensor - (B, n, 3) three nearest neighbors of the target features in features - weight : torch.Tensor - (B, n, 3) weights - - Returns - ------- - torch.Tensor - (B, c, n) tensor of the interpolated features - """ - ctx.save_for_backward(idx, weight, features) - - return _ext.three_interpolate(features, idx, weight) - - @staticmethod - def backward(ctx, grad_out): - # type: (Any, torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor] - r""" - Parameters - ---------- - grad_out : torch.Tensor - (B, c, n) tensor with gradients of ouputs - - Returns - ------- - grad_features : torch.Tensor - (B, c, m) tensor with gradients of features - - None - - None - """ - idx, weight, features = ctx.saved_tensors - m = features.size(2) - - grad_features = _ext.three_interpolate_grad( - grad_out.contiguous(), idx, weight, m - ) - - return grad_features, torch.zeros_like(idx), torch.zeros_like(weight) - - -three_interpolate = ThreeInterpolate.apply - - -class GroupingOperation(Function): - @staticmethod - def forward(ctx, features, idx): - # type: (Any, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - - Parameters - ---------- - features : torch.Tensor - (B, C, N) tensor of features to group - idx : torch.Tensor - (B, npoint, nsample) tensor containing the indicies of features to group with - - Returns - ------- - torch.Tensor - (B, C, npoint, nsample) tensor - """ - ctx.save_for_backward(idx, features) - - return _ext.group_points(features, idx) - - @staticmethod - def backward(ctx, grad_out): - # type: (Any, torch.tensor) -> Tuple[torch.Tensor, torch.Tensor] - r""" - - Parameters - ---------- - grad_out : torch.Tensor - (B, C, npoint, nsample) tensor of the gradients of the output from forward - - Returns - ------- - torch.Tensor - (B, C, N) gradient of the features - None - """ - idx, features = ctx.saved_tensors - N = features.size(2) - - grad_features = _ext.group_points_grad(grad_out.contiguous(), idx, N) - - return grad_features, torch.zeros_like(idx) - - -grouping_operation = GroupingOperation.apply - - -class BallQuery(Function): - @staticmethod - def forward(ctx, radius, nsample, xyz, new_xyz): - # type: (Any, float, int, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - - Parameters - ---------- - radius : float - radius of the balls - nsample : int - maximum number of features in the balls - xyz : torch.Tensor - (B, N, 3) xyz coordinates of the features - new_xyz : torch.Tensor - (B, npoint, 3) centers of the ball query - - Returns - ------- - torch.Tensor - (B, npoint, nsample) tensor with the indicies of the features that form the query balls - """ - output = _ext.ball_query(new_xyz, xyz, radius, nsample) - - ctx.mark_non_differentiable(output) - - return output - - @staticmethod - def backward(ctx, grad_out): - return () - - -ball_query = BallQuery.apply - - -class QueryAndGroup(nn.Module): - r""" - Groups with a ball query of radius - - Parameters - --------- - radius : float32 - Radius of ball - nsample : int32 - Maximum number of features to gather in the ball - """ - - def __init__(self, radius, nsample, use_xyz=True): - # type: (QueryAndGroup, float, int, bool) -> None - super(QueryAndGroup, self).__init__() - self.radius, self.nsample, self.use_xyz = radius, nsample, use_xyz - - def forward(self, xyz, new_xyz, features=None): - # type: (QueryAndGroup, torch.Tensor. torch.Tensor, torch.Tensor) -> Tuple[Torch.Tensor] - r""" - Parameters - ---------- - xyz : torch.Tensor - xyz coordinates of the features (B, N, 3) - new_xyz : torch.Tensor - centriods (B, npoint, 3) - features : torch.Tensor - Descriptors of the features (B, C, N) - - Returns - ------- - new_features : torch.Tensor - (B, 3 + C, npoint, nsample) tensor - """ - - idx = ball_query(self.radius, self.nsample, xyz, new_xyz) - xyz_trans = xyz.transpose(1, 2).contiguous() - grouped_xyz = grouping_operation(xyz_trans, idx) # (B, 3, npoint, nsample) - grouped_xyz -= new_xyz.transpose(1, 2).unsqueeze(-1) - - if features is not None: - grouped_features = grouping_operation(features, idx) - if self.use_xyz: - new_features = torch.cat( - [grouped_xyz, grouped_features], dim=1 - ) # (B, C + 3, npoint, nsample) - else: - new_features = grouped_features - else: - assert ( - self.use_xyz - ), "Cannot have not features and not use xyz as a feature!" - new_features = grouped_xyz - - return new_features - - -class GroupAll(nn.Module): - r""" - Groups all features - - Parameters - --------- - """ - - def __init__(self, use_xyz=True): - # type: (GroupAll, bool) -> None - super(GroupAll, self).__init__() - self.use_xyz = use_xyz - - def forward(self, xyz, new_xyz, features=None): - # type: (GroupAll, torch.Tensor, torch.Tensor, torch.Tensor) -> Tuple[torch.Tensor] - r""" - Parameters - ---------- - xyz : torch.Tensor - xyz coordinates of the features (B, N, 3) - new_xyz : torch.Tensor - Ignored - features : torch.Tensor - Descriptors of the features (B, C, N) - - Returns - ------- - new_features : torch.Tensor - (B, C + 3, 1, N) tensor - """ - - grouped_xyz = xyz.transpose(1, 2).unsqueeze(2) - if features is not None: - grouped_features = features.unsqueeze(2) - if self.use_xyz: - new_features = torch.cat( - [grouped_xyz, grouped_features], dim=1 - ) # (B, 3 + C, 1, N) - else: - new_features = grouped_features - else: - new_features = grouped_xyz - - return new_features diff --git a/_Pre_Builds/_Libs/pointnet2_ops/setup.py b/_Pre_Builds/_Libs/pointnet2_ops/setup.py deleted file mode 100644 index fc39d02..0000000 --- a/_Pre_Builds/_Libs/pointnet2_ops/setup.py +++ /dev/null @@ -1,41 +0,0 @@ -import glob -import os -import os.path as osp - -from setuptools import find_packages, setup -import torch -from torch.utils.cpp_extension import BuildExtension, CUDAExtension - -this_dir = osp.dirname(osp.abspath(__file__)) -_ext_src_root = osp.join("pointnet2_ops", "_ext-src") -_ext_sources = glob.glob(osp.join(_ext_src_root, "src", "*.cpp")) + glob.glob( - osp.join(_ext_src_root, "src", "*.cu") -) -_ext_headers = glob.glob(osp.join(_ext_src_root, "include", "*")) - -requirements = [] - -exec(open(osp.join("pointnet2_ops", "_version.py")).read()) - -os.environ["TORCH_CUDA_ARCH_LIST"] = ".".join(map(str, torch.cuda.get_device_capability())) -# os.environ["TORCH_CUDA_ARCH_LIST"] = "5.0;6.0;6.1;6.2;7.0;7.5;8.0;8.6" -setup( - name="pointnet2_ops", - version=__version__, - author="Erik Wijmans", - packages=find_packages(), - install_requires=requirements, - ext_modules=[ - CUDAExtension( - name="pointnet2_ops._ext", - sources=_ext_sources, - extra_compile_args={ - "cxx": ["-O3"], - "nvcc": ["-O3", "-Xfatbin", "-compress-all"], - }, - include_dirs=[osp.join(this_dir, _ext_src_root, "include")], - ) - ], - cmdclass={"build_ext": BuildExtension}, - include_package_data=True, -) diff --git a/_Pre_Builds/_Libs/simple-knn/ext.cpp b/_Pre_Builds/_Libs/simple-knn/ext.cpp deleted file mode 100644 index ae6cefe..0000000 --- a/_Pre_Builds/_Libs/simple-knn/ext.cpp +++ /dev/null @@ -1,17 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#include -#include "spatial.h" - -PYBIND11_MODULE(TORCH_EXTENSION_NAME, m) { - m.def("distCUDA2", &distCUDA2); -} diff --git a/_Pre_Builds/_Libs/simple-knn/setup.py b/_Pre_Builds/_Libs/simple-knn/setup.py deleted file mode 100644 index 580d2bd..0000000 --- a/_Pre_Builds/_Libs/simple-knn/setup.py +++ /dev/null @@ -1,35 +0,0 @@ -# -# Copyright (C) 2023, Inria -# GRAPHDECO research group, https://team.inria.fr/graphdeco -# All rights reserved. -# -# This software is free for non-commercial, research and evaluation use -# under the terms of the LICENSE.md file. -# -# For inquiries contact george.drettakis@inria.fr -# - -from setuptools import setup -from torch.utils.cpp_extension import CUDAExtension, BuildExtension -import os - -cxx_compiler_flags = [] - -if os.name == 'nt': - cxx_compiler_flags.append("/wd4624") - -setup( - name="simple_knn", - ext_modules=[ - CUDAExtension( - name="simple_knn._C", - sources=[ - "spatial.cu", - "simple_knn.cu", - "ext.cpp"], - extra_compile_args={"nvcc": [], "cxx": cxx_compiler_flags}) - ], - cmdclass={ - 'build_ext': BuildExtension - } -) diff --git a/_Pre_Builds/_Libs/simple-knn/simple_knn.cu b/_Pre_Builds/_Libs/simple-knn/simple_knn.cu deleted file mode 100644 index 880a49b..0000000 --- a/_Pre_Builds/_Libs/simple-knn/simple_knn.cu +++ /dev/null @@ -1,222 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#define BOX_SIZE 1024 - -#include "cuda_runtime.h" -#include "device_launch_parameters.h" -#include "simple_knn.h" -#include -#include -#include -#include -#include -#include -#define __CUDACC__ -#include -#include -#include - -namespace cg = cooperative_groups; - -struct CustomMin -{ - __device__ __forceinline__ - float3 operator()(const float3& a, const float3& b) const { - return { min(a.x, b.x), min(a.y, b.y), min(a.z, b.z) }; - } -}; - -struct CustomMax -{ - __device__ __forceinline__ - float3 operator()(const float3& a, const float3& b) const { - return { max(a.x, b.x), max(a.y, b.y), max(a.z, b.z) }; - } -}; - -__host__ __device__ uint32_t prepMorton(uint32_t x) -{ - x = (x | (x << 16)) & 0x030000FF; - x = (x | (x << 8)) & 0x0300F00F; - x = (x | (x << 4)) & 0x030C30C3; - x = (x | (x << 2)) & 0x09249249; - return x; -} - -__host__ __device__ uint32_t coord2Morton(float3 coord, float3 minn, float3 maxx) -{ - uint32_t x = prepMorton(((coord.x - minn.x) / (maxx.x - minn.x)) * ((1 << 10) - 1)); - uint32_t y = prepMorton(((coord.y - minn.y) / (maxx.y - minn.y)) * ((1 << 10) - 1)); - uint32_t z = prepMorton(((coord.z - minn.z) / (maxx.z - minn.z)) * ((1 << 10) - 1)); - - return x | (y << 1) | (z << 2); -} - -__global__ void coord2Morton(int P, const float3* points, float3 minn, float3 maxx, uint32_t* codes) -{ - auto idx = cg::this_grid().thread_rank(); - if (idx >= P) - return; - - codes[idx] = coord2Morton(points[idx], minn, maxx); -} - -struct MinMax -{ - float3 minn; - float3 maxx; -}; - -__global__ void boxMinMax(uint32_t P, float3* points, uint32_t* indices, MinMax* boxes) -{ - auto idx = cg::this_grid().thread_rank(); - - MinMax me; - if (idx < P) - { - me.minn = points[indices[idx]]; - me.maxx = points[indices[idx]]; - } - else - { - me.minn = { FLT_MAX, FLT_MAX, FLT_MAX }; - me.maxx = { -FLT_MAX,-FLT_MAX,-FLT_MAX }; - } - - __shared__ MinMax redResult[BOX_SIZE]; - - for (int off = BOX_SIZE / 2; off >= 1; off /= 2) - { - if (threadIdx.x < 2 * off) - redResult[threadIdx.x] = me; - __syncthreads(); - - if (threadIdx.x < off) - { - MinMax other = redResult[threadIdx.x + off]; - me.minn.x = min(me.minn.x, other.minn.x); - me.minn.y = min(me.minn.y, other.minn.y); - me.minn.z = min(me.minn.z, other.minn.z); - me.maxx.x = max(me.maxx.x, other.maxx.x); - me.maxx.y = max(me.maxx.y, other.maxx.y); - me.maxx.z = max(me.maxx.z, other.maxx.z); - } - __syncthreads(); - } - - if (threadIdx.x == 0) - boxes[blockIdx.x] = me; -} - -__device__ __host__ float distBoxPoint(const MinMax& box, const float3& p) -{ - float3 diff = { 0, 0, 0 }; - if (p.x < box.minn.x || p.x > box.maxx.x) - diff.x = min(abs(p.x - box.minn.x), abs(p.x - box.maxx.x)); - if (p.y < box.minn.y || p.y > box.maxx.y) - diff.y = min(abs(p.y - box.minn.y), abs(p.y - box.maxx.y)); - if (p.z < box.minn.z || p.z > box.maxx.z) - diff.z = min(abs(p.z - box.minn.z), abs(p.z - box.maxx.z)); - return diff.x * diff.x + diff.y * diff.y + diff.z * diff.z; -} - -template -__device__ void updateKBest(const float3& ref, const float3& point, float* knn) -{ - float3 d = { point.x - ref.x, point.y - ref.y, point.z - ref.z }; - float dist = d.x * d.x + d.y * d.y + d.z * d.z; - for (int j = 0; j < K; j++) - { - if (knn[j] > dist) - { - float t = knn[j]; - knn[j] = dist; - dist = t; - } - } -} - -__global__ void boxMeanDist(uint32_t P, float3* points, uint32_t* indices, MinMax* boxes, float* dists) -{ - int idx = cg::this_grid().thread_rank(); - if (idx >= P) - return; - - float3 point = points[indices[idx]]; - float best[3] = { FLT_MAX, FLT_MAX, FLT_MAX }; - - for (int i = max(0, idx - 3); i <= min(P - 1, idx + 3); i++) - { - if (i == idx) - continue; - updateKBest<3>(point, points[indices[i]], best); - } - - float reject = best[2]; - best[0] = FLT_MAX; - best[1] = FLT_MAX; - best[2] = FLT_MAX; - - for (int b = 0; b < (P + BOX_SIZE - 1) / BOX_SIZE; b++) - { - MinMax box = boxes[b]; - float dist = distBoxPoint(box, point); - if (dist > reject || dist > best[2]) - continue; - - for (int i = b * BOX_SIZE; i < min(P, (b + 1) * BOX_SIZE); i++) - { - if (i == idx) - continue; - updateKBest<3>(point, points[indices[i]], best); - } - } - dists[indices[idx]] = (best[0] + best[1] + best[2]) / 3.0f; -} - -void SimpleKNN::knn(int P, float3* points, float* meanDists) -{ - float3* result; - cudaMalloc(&result, sizeof(float3)); - size_t temp_storage_bytes; - - float3 init = { 0, 0, 0 }, minn, maxx; - - cub::DeviceReduce::Reduce(nullptr, temp_storage_bytes, points, result, P, CustomMin(), init); - thrust::device_vector temp_storage(temp_storage_bytes); - - cub::DeviceReduce::Reduce(temp_storage.data().get(), temp_storage_bytes, points, result, P, CustomMin(), init); - cudaMemcpy(&minn, result, sizeof(float3), cudaMemcpyDeviceToHost); - - cub::DeviceReduce::Reduce(temp_storage.data().get(), temp_storage_bytes, points, result, P, CustomMax(), init); - cudaMemcpy(&maxx, result, sizeof(float3), cudaMemcpyDeviceToHost); - - thrust::device_vector morton(P); - thrust::device_vector morton_sorted(P); - coord2Morton << <(P + 255) / 256, 256 >> > (P, points, minn, maxx, morton.data().get()); - - thrust::device_vector indices(P); - thrust::sequence(indices.begin(), indices.end()); - thrust::device_vector indices_sorted(P); - - cub::DeviceRadixSort::SortPairs(nullptr, temp_storage_bytes, morton.data().get(), morton_sorted.data().get(), indices.data().get(), indices_sorted.data().get(), P); - temp_storage.resize(temp_storage_bytes); - - cub::DeviceRadixSort::SortPairs(temp_storage.data().get(), temp_storage_bytes, morton.data().get(), morton_sorted.data().get(), indices.data().get(), indices_sorted.data().get(), P); - - uint32_t num_boxes = (P + BOX_SIZE - 1) / BOX_SIZE; - thrust::device_vector boxes(num_boxes); - boxMinMax << > > (P, points, indices_sorted.data().get(), boxes.data().get()); - boxMeanDist << > > (P, points, indices_sorted.data().get(), boxes.data().get(), meanDists); - - cudaFree(result); -} diff --git a/_Pre_Builds/_Libs/simple-knn/simple_knn.h b/_Pre_Builds/_Libs/simple-knn/simple_knn.h deleted file mode 100644 index 3fcfdb8..0000000 --- a/_Pre_Builds/_Libs/simple-knn/simple_knn.h +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#ifndef SIMPLEKNN_H_INCLUDED -#define SIMPLEKNN_H_INCLUDED - -class SimpleKNN -{ -public: - static void knn(int P, float3* points, float* meanDists); -}; - -#endif \ No newline at end of file diff --git a/_Pre_Builds/_Libs/simple-knn/simple_knn/.gitkeep b/_Pre_Builds/_Libs/simple-knn/simple_knn/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/_Pre_Builds/_Libs/simple-knn/spatial.cu b/_Pre_Builds/_Libs/simple-knn/spatial.cu deleted file mode 100644 index 1a6a654..0000000 --- a/_Pre_Builds/_Libs/simple-knn/spatial.cu +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#include "spatial.h" -#include "simple_knn.h" - -torch::Tensor -distCUDA2(const torch::Tensor& points) -{ - const int P = points.size(0); - - auto float_opts = points.options().dtype(torch::kFloat32); - torch::Tensor means = torch::full({P}, 0.0, float_opts); - - SimpleKNN::knn(P, (float3*)points.contiguous().data(), means.contiguous().data()); - - return means; -} \ No newline at end of file diff --git a/_Pre_Builds/_Libs/simple-knn/spatial.h b/_Pre_Builds/_Libs/simple-knn/spatial.h deleted file mode 100644 index 280c953..0000000 --- a/_Pre_Builds/_Libs/simple-knn/spatial.h +++ /dev/null @@ -1,14 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#include - -torch::Tensor distCUDA2(const torch::Tensor& points); \ No newline at end of file diff --git a/_Pre_Builds/_Python310_cpp/include/Python.h b/_Pre_Builds/_Python310_cpp/include/Python.h deleted file mode 100644 index d3186c3..0000000 --- a/_Pre_Builds/_Python310_cpp/include/Python.h +++ /dev/null @@ -1,148 +0,0 @@ -#ifndef Py_PYTHON_H -#define Py_PYTHON_H -/* Since this is a "meta-include" file, no #ifdef __cplusplus / extern "C" { */ - -/* Include nearly all Python header files */ - -#include "patchlevel.h" -#include "pyconfig.h" -#include "pymacconfig.h" - -#include - -#ifndef UCHAR_MAX -#error "Something's broken. UCHAR_MAX should be defined in limits.h." -#endif - -#if UCHAR_MAX != 255 -#error "Python's source code assumes C's unsigned char is an 8-bit type." -#endif - -#if defined(__sgi) && !defined(_SGI_MP_SOURCE) -#define _SGI_MP_SOURCE -#endif - -#include -#ifndef NULL -# error "Python.h requires that stdio.h define NULL." -#endif - -#include -#ifdef HAVE_ERRNO_H -#include -#endif -#include -#ifndef MS_WINDOWS -#include -#endif - -/* For size_t? */ -#ifdef HAVE_STDDEF_H -#include -#endif - -/* CAUTION: Build setups should ensure that NDEBUG is defined on the - * compiler command line when building Python in release mode; else - * assert() calls won't be removed. - */ -#include - -#include "pyport.h" -#include "pymacro.h" - -/* A convenient way for code to know if sanitizers are enabled. */ -#if defined(__has_feature) -# if __has_feature(memory_sanitizer) -# if !defined(_Py_MEMORY_SANITIZER) -# define _Py_MEMORY_SANITIZER -# endif -# endif -# if __has_feature(address_sanitizer) -# if !defined(_Py_ADDRESS_SANITIZER) -# define _Py_ADDRESS_SANITIZER -# endif -# endif -#elif defined(__GNUC__) -# if defined(__SANITIZE_ADDRESS__) -# define _Py_ADDRESS_SANITIZER -# endif -#endif - -#include "pymath.h" -#include "pymem.h" - -#include "object.h" -#include "objimpl.h" -#include "typeslots.h" -#include "pyhash.h" - -#include "cpython/pydebug.h" - -#include "bytearrayobject.h" -#include "bytesobject.h" -#include "unicodeobject.h" -#include "longobject.h" -#include "longintrepr.h" -#include "boolobject.h" -#include "floatobject.h" -#include "complexobject.h" -#include "rangeobject.h" -#include "memoryobject.h" -#include "tupleobject.h" -#include "listobject.h" -#include "dictobject.h" -#include "cpython/odictobject.h" -#include "enumobject.h" -#include "setobject.h" -#include "methodobject.h" -#include "moduleobject.h" -#include "funcobject.h" -#include "classobject.h" -#include "fileobject.h" -#include "pycapsule.h" -#include "code.h" -#include "pyframe.h" -#include "traceback.h" -#include "sliceobject.h" -#include "cellobject.h" -#include "iterobject.h" -#include "cpython/initconfig.h" -#include "genobject.h" -#include "descrobject.h" -#include "genericaliasobject.h" -#include "warnings.h" -#include "weakrefobject.h" -#include "structseq.h" -#include "namespaceobject.h" -#include "cpython/picklebufobject.h" -#include "cpython/pytime.h" - -#include "codecs.h" -#include "pyerrors.h" -#include "pythread.h" -#include "pystate.h" -#include "context.h" - -#include "modsupport.h" -#include "compile.h" -#include "pythonrun.h" -#include "pylifecycle.h" -#include "ceval.h" -#include "sysmodule.h" -#include "osmodule.h" -#include "intrcheck.h" -#include "import.h" - -#include "abstract.h" -#include "bltinmodule.h" - -#include "eval.h" - -#include "cpython/pyctype.h" -#include "pystrtod.h" -#include "pystrcmp.h" -#include "fileutils.h" -#include "cpython/pyfpe.h" -#include "tracemalloc.h" - -#endif /* !Py_PYTHON_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/README.rst b/_Pre_Builds/_Python310_cpp/include/README.rst deleted file mode 100644 index f52e690..0000000 --- a/_Pre_Builds/_Python310_cpp/include/README.rst +++ /dev/null @@ -1,12 +0,0 @@ -The Python C API -================ - -The C API is divided into three sections: - -1. ``Include/``: Limited API -2. ``Include/cpython/``: CPython implementation details -3. ``Include/internal/``: The internal API - -Information on changing the C API is available `in the developer guide`_ - -.. _in the developer guide: https://devguide.python.org/c-api/ diff --git a/_Pre_Builds/_Python310_cpp/include/abstract.h b/_Pre_Builds/_Python310_cpp/include/abstract.h deleted file mode 100644 index 9eaab6b..0000000 --- a/_Pre_Builds/_Python310_cpp/include/abstract.h +++ /dev/null @@ -1,873 +0,0 @@ -/* Abstract Object Interface (many thanks to Jim Fulton) */ - -#ifndef Py_ABSTRACTOBJECT_H -#define Py_ABSTRACTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* === Object Protocol ================================================== */ - -/* Implemented elsewhere: - - int PyObject_Print(PyObject *o, FILE *fp, int flags); - - Print an object 'o' on file 'fp'. Returns -1 on error. The flags argument - is used to enable certain printing options. The only option currently - supported is Py_Print_RAW. - - (What should be said about Py_Print_RAW?). */ - - -/* Implemented elsewhere: - - int PyObject_HasAttrString(PyObject *o, const char *attr_name); - - Returns 1 if object 'o' has the attribute attr_name, and 0 otherwise. - - This is equivalent to the Python expression: hasattr(o,attr_name). - - This function always succeeds. */ - - -/* Implemented elsewhere: - - PyObject* PyObject_GetAttrString(PyObject *o, const char *attr_name); - - Retrieve an attributed named attr_name form object o. - Returns the attribute value on success, or NULL on failure. - - This is the equivalent of the Python expression: o.attr_name. */ - - -/* Implemented elsewhere: - - int PyObject_HasAttr(PyObject *o, PyObject *attr_name); - - Returns 1 if o has the attribute attr_name, and 0 otherwise. - - This is equivalent to the Python expression: hasattr(o,attr_name). - - This function always succeeds. */ - -/* Implemented elsewhere: - - PyObject* PyObject_GetAttr(PyObject *o, PyObject *attr_name); - - Retrieve an attributed named 'attr_name' form object 'o'. - Returns the attribute value on success, or NULL on failure. - - This is the equivalent of the Python expression: o.attr_name. */ - - -/* Implemented elsewhere: - - int PyObject_SetAttrString(PyObject *o, const char *attr_name, PyObject *v); - - Set the value of the attribute named attr_name, for object 'o', - to the value 'v'. Raise an exception and return -1 on failure; return 0 on - success. - - This is the equivalent of the Python statement o.attr_name=v. */ - - -/* Implemented elsewhere: - - int PyObject_SetAttr(PyObject *o, PyObject *attr_name, PyObject *v); - - Set the value of the attribute named attr_name, for object 'o', to the value - 'v'. an exception and return -1 on failure; return 0 on success. - - This is the equivalent of the Python statement o.attr_name=v. */ - -/* Implemented as a macro: - - int PyObject_DelAttrString(PyObject *o, const char *attr_name); - - Delete attribute named attr_name, for object o. Returns - -1 on failure. - - This is the equivalent of the Python statement: del o.attr_name. */ -#define PyObject_DelAttrString(O,A) PyObject_SetAttrString((O),(A), NULL) - - -/* Implemented as a macro: - - int PyObject_DelAttr(PyObject *o, PyObject *attr_name); - - Delete attribute named attr_name, for object o. Returns -1 - on failure. This is the equivalent of the Python - statement: del o.attr_name. */ -#define PyObject_DelAttr(O,A) PyObject_SetAttr((O),(A), NULL) - - -/* Implemented elsewhere: - - PyObject *PyObject_Repr(PyObject *o); - - Compute the string representation of object 'o'. Returns the - string representation on success, NULL on failure. - - This is the equivalent of the Python expression: repr(o). - - Called by the repr() built-in function. */ - - -/* Implemented elsewhere: - - PyObject *PyObject_Str(PyObject *o); - - Compute the string representation of object, o. Returns the - string representation on success, NULL on failure. - - This is the equivalent of the Python expression: str(o). - - Called by the str() and print() built-in functions. */ - - -/* Declared elsewhere - - PyAPI_FUNC(int) PyCallable_Check(PyObject *o); - - Determine if the object, o, is callable. Return 1 if the object is callable - and 0 otherwise. - - This function always succeeds. */ - - -#ifdef PY_SSIZE_T_CLEAN -# define PyObject_CallFunction _PyObject_CallFunction_SizeT -# define PyObject_CallMethod _PyObject_CallMethod_SizeT -#endif - - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* Call a callable Python object without any arguments */ -PyAPI_FUNC(PyObject *) PyObject_CallNoArgs(PyObject *func); -#endif - - -/* Call a callable Python object 'callable' with arguments given by the - tuple 'args' and keywords arguments given by the dictionary 'kwargs'. - - 'args' must not be NULL, use an empty tuple if no arguments are - needed. If no named arguments are needed, 'kwargs' can be NULL. - - This is the equivalent of the Python expression: - callable(*args, **kwargs). */ -PyAPI_FUNC(PyObject *) PyObject_Call(PyObject *callable, - PyObject *args, PyObject *kwargs); - - -/* Call a callable Python object 'callable', with arguments given by the - tuple 'args'. If no arguments are needed, then 'args' can be NULL. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - callable(*args). */ -PyAPI_FUNC(PyObject *) PyObject_CallObject(PyObject *callable, - PyObject *args); - -/* Call a callable Python object, callable, with a variable number of C - arguments. The C arguments are described using a mkvalue-style format - string. - - The format may be NULL, indicating that no arguments are provided. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - callable(arg1, arg2, ...). */ -PyAPI_FUNC(PyObject *) PyObject_CallFunction(PyObject *callable, - const char *format, ...); - -/* Call the method named 'name' of object 'obj' with a variable number of - C arguments. The C arguments are described by a mkvalue format string. - - The format can be NULL, indicating that no arguments are provided. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - obj.name(arg1, arg2, ...). */ -PyAPI_FUNC(PyObject *) PyObject_CallMethod(PyObject *obj, - const char *name, - const char *format, ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallFunction_SizeT(PyObject *callable, - const char *format, - ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallMethod_SizeT(PyObject *obj, - const char *name, - const char *format, - ...); - -/* Call a callable Python object 'callable' with a variable number of C - arguments. The C arguments are provided as PyObject* values, terminated - by a NULL. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - callable(arg1, arg2, ...). */ -PyAPI_FUNC(PyObject *) PyObject_CallFunctionObjArgs(PyObject *callable, - ...); - -/* Call the method named 'name' of object 'obj' with a variable number of - C arguments. The C arguments are provided as PyObject* values, terminated - by NULL. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: obj.name(*args). */ - -PyAPI_FUNC(PyObject *) PyObject_CallMethodObjArgs( - PyObject *obj, - PyObject *name, - ...); - - -/* Implemented elsewhere: - - Py_hash_t PyObject_Hash(PyObject *o); - - Compute and return the hash, hash_value, of an object, o. On - failure, return -1. - - This is the equivalent of the Python expression: hash(o). */ - - -/* Implemented elsewhere: - - int PyObject_IsTrue(PyObject *o); - - Returns 1 if the object, o, is considered to be true, 0 if o is - considered to be false and -1 on failure. - - This is equivalent to the Python expression: not not o. */ - - -/* Implemented elsewhere: - - int PyObject_Not(PyObject *o); - - Returns 0 if the object, o, is considered to be true, 1 if o is - considered to be false and -1 on failure. - - This is equivalent to the Python expression: not o. */ - - -/* Get the type of an object. - - On success, returns a type object corresponding to the object type of object - 'o'. On failure, returns NULL. - - This is equivalent to the Python expression: type(o) */ -PyAPI_FUNC(PyObject *) PyObject_Type(PyObject *o); - - -/* Return the size of object 'o'. If the object 'o' provides both sequence and - mapping protocols, the sequence size is returned. - - On error, -1 is returned. - - This is the equivalent to the Python expression: len(o) */ -PyAPI_FUNC(Py_ssize_t) PyObject_Size(PyObject *o); - - -/* For DLL compatibility */ -#undef PyObject_Length -PyAPI_FUNC(Py_ssize_t) PyObject_Length(PyObject *o); -#define PyObject_Length PyObject_Size - -/* Return element of 'o' corresponding to the object 'key'. Return NULL - on failure. - - This is the equivalent of the Python expression: o[key] */ -PyAPI_FUNC(PyObject *) PyObject_GetItem(PyObject *o, PyObject *key); - - -/* Map the object 'key' to the value 'v' into 'o'. - - Raise an exception and return -1 on failure; return 0 on success. - - This is the equivalent of the Python statement: o[key]=v. */ -PyAPI_FUNC(int) PyObject_SetItem(PyObject *o, PyObject *key, PyObject *v); - -/* Remove the mapping for the string 'key' from the object 'o'. - Returns -1 on failure. - - This is equivalent to the Python statement: del o[key]. */ -PyAPI_FUNC(int) PyObject_DelItemString(PyObject *o, const char *key); - -/* Delete the mapping for the object 'key' from the object 'o'. - Returns -1 on failure. - - This is the equivalent of the Python statement: del o[key]. */ -PyAPI_FUNC(int) PyObject_DelItem(PyObject *o, PyObject *key); - - -/* === Old Buffer API ============================================ */ - -/* FIXME: usage of these should all be replaced in Python itself - but for backwards compatibility we will implement them. - Their usage without a corresponding "unlock" mechanism - may create issues (but they would already be there). */ - -/* Takes an arbitrary object which must support the (character, single segment) - buffer interface and returns a pointer to a read-only memory location - usable as character based input for subsequent processing. - - Return 0 on success. buffer and buffer_len are only set in case no error - occurs. Otherwise, -1 is returned and an exception set. */ -Py_DEPRECATED(3.0) -PyAPI_FUNC(int) PyObject_AsCharBuffer(PyObject *obj, - const char **buffer, - Py_ssize_t *buffer_len); - -/* Checks whether an arbitrary object supports the (character, single segment) - buffer interface. - - Returns 1 on success, 0 on failure. */ -Py_DEPRECATED(3.0) PyAPI_FUNC(int) PyObject_CheckReadBuffer(PyObject *obj); - -/* Same as PyObject_AsCharBuffer() except that this API expects (readable, - single segment) buffer interface and returns a pointer to a read-only memory - location which can contain arbitrary data. - - 0 is returned on success. buffer and buffer_len are only set in case no - error occurs. Otherwise, -1 is returned and an exception set. */ -Py_DEPRECATED(3.0) -PyAPI_FUNC(int) PyObject_AsReadBuffer(PyObject *obj, - const void **buffer, - Py_ssize_t *buffer_len); - -/* Takes an arbitrary object which must support the (writable, single segment) - buffer interface and returns a pointer to a writable memory location in - buffer of size 'buffer_len'. - - Return 0 on success. buffer and buffer_len are only set in case no error - occurs. Otherwise, -1 is returned and an exception set. */ -Py_DEPRECATED(3.0) -PyAPI_FUNC(int) PyObject_AsWriteBuffer(PyObject *obj, - void **buffer, - Py_ssize_t *buffer_len); - - -/* === New Buffer API ============================================ */ - -/* Takes an arbitrary object and returns the result of calling - obj.__format__(format_spec). */ -PyAPI_FUNC(PyObject *) PyObject_Format(PyObject *obj, - PyObject *format_spec); - - -/* ==== Iterators ================================================ */ - -/* Takes an object and returns an iterator for it. - This is typically a new iterator but if the argument is an iterator, this - returns itself. */ -PyAPI_FUNC(PyObject *) PyObject_GetIter(PyObject *); - -/* Takes an AsyncIterable object and returns an AsyncIterator for it. - This is typically a new iterator but if the argument is an AsyncIterator, - this returns itself. */ -PyAPI_FUNC(PyObject *) PyObject_GetAIter(PyObject *); - -/* Returns non-zero if the object 'obj' provides iterator protocols, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyIter_Check(PyObject *); - -/* Returns non-zero if the object 'obj' provides AsyncIterator protocols, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyAIter_Check(PyObject *); - -/* Takes an iterator object and calls its tp_iternext slot, - returning the next value. - - If the iterator is exhausted, this returns NULL without setting an - exception. - - NULL with an exception means an error occurred. */ -PyAPI_FUNC(PyObject *) PyIter_Next(PyObject *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 - -/* Takes generator, coroutine or iterator object and sends the value into it. - Returns: - - PYGEN_RETURN (0) if generator has returned. - 'result' parameter is filled with return value - - PYGEN_ERROR (-1) if exception was raised. - 'result' parameter is NULL - - PYGEN_NEXT (1) if generator has yielded. - 'result' parameter is filled with yielded value. */ -PyAPI_FUNC(PySendResult) PyIter_Send(PyObject *, PyObject *, PyObject **); -#endif - - -/* === Number Protocol ================================================== */ - -/* Returns 1 if the object 'o' provides numeric protocols, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyNumber_Check(PyObject *o); - -/* Returns the result of adding o1 and o2, or NULL on failure. - - This is the equivalent of the Python expression: o1 + o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Add(PyObject *o1, PyObject *o2); - -/* Returns the result of subtracting o2 from o1, or NULL on failure. - - This is the equivalent of the Python expression: o1 - o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Subtract(PyObject *o1, PyObject *o2); - -/* Returns the result of multiplying o1 and o2, or NULL on failure. - - This is the equivalent of the Python expression: o1 * o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Multiply(PyObject *o1, PyObject *o2); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* This is the equivalent of the Python expression: o1 @ o2. */ -PyAPI_FUNC(PyObject *) PyNumber_MatrixMultiply(PyObject *o1, PyObject *o2); -#endif - -/* Returns the result of dividing o1 by o2 giving an integral result, - or NULL on failure. - - This is the equivalent of the Python expression: o1 // o2. */ -PyAPI_FUNC(PyObject *) PyNumber_FloorDivide(PyObject *o1, PyObject *o2); - -/* Returns the result of dividing o1 by o2 giving a float result, or NULL on - failure. - - This is the equivalent of the Python expression: o1 / o2. */ -PyAPI_FUNC(PyObject *) PyNumber_TrueDivide(PyObject *o1, PyObject *o2); - -/* Returns the remainder of dividing o1 by o2, or NULL on failure. - - This is the equivalent of the Python expression: o1 % o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Remainder(PyObject *o1, PyObject *o2); - -/* See the built-in function divmod. - - Returns NULL on failure. - - This is the equivalent of the Python expression: divmod(o1, o2). */ -PyAPI_FUNC(PyObject *) PyNumber_Divmod(PyObject *o1, PyObject *o2); - -/* See the built-in function pow. Returns NULL on failure. - - This is the equivalent of the Python expression: pow(o1, o2, o3), - where o3 is optional. */ -PyAPI_FUNC(PyObject *) PyNumber_Power(PyObject *o1, PyObject *o2, - PyObject *o3); - -/* Returns the negation of o on success, or NULL on failure. - - This is the equivalent of the Python expression: -o. */ -PyAPI_FUNC(PyObject *) PyNumber_Negative(PyObject *o); - -/* Returns the positive of o on success, or NULL on failure. - - This is the equivalent of the Python expression: +o. */ -PyAPI_FUNC(PyObject *) PyNumber_Positive(PyObject *o); - -/* Returns the absolute value of 'o', or NULL on failure. - - This is the equivalent of the Python expression: abs(o). */ -PyAPI_FUNC(PyObject *) PyNumber_Absolute(PyObject *o); - -/* Returns the bitwise negation of 'o' on success, or NULL on failure. - - This is the equivalent of the Python expression: ~o. */ -PyAPI_FUNC(PyObject *) PyNumber_Invert(PyObject *o); - -/* Returns the result of left shifting o1 by o2 on success, or NULL on failure. - - This is the equivalent of the Python expression: o1 << o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Lshift(PyObject *o1, PyObject *o2); - -/* Returns the result of right shifting o1 by o2 on success, or NULL on - failure. - - This is the equivalent of the Python expression: o1 >> o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Rshift(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise and of o1 and o2 on success, or NULL on - failure. - - This is the equivalent of the Python expression: o1 & o2. */ -PyAPI_FUNC(PyObject *) PyNumber_And(PyObject *o1, PyObject *o2); - -/* Returns the bitwise exclusive or of o1 by o2 on success, or NULL on failure. - - This is the equivalent of the Python expression: o1 ^ o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Xor(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise or on o1 and o2 on success, or NULL on - failure. - - This is the equivalent of the Python expression: o1 | o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Or(PyObject *o1, PyObject *o2); - -/* Returns 1 if obj is an index integer (has the nb_index slot of the - tp_as_number structure filled in), and 0 otherwise. */ -PyAPI_FUNC(int) PyIndex_Check(PyObject *); - -/* Returns the object 'o' converted to a Python int, or NULL with an exception - raised on failure. */ -PyAPI_FUNC(PyObject *) PyNumber_Index(PyObject *o); - -/* Returns the object 'o' converted to Py_ssize_t by going through - PyNumber_Index() first. - - If an overflow error occurs while converting the int to Py_ssize_t, then the - second argument 'exc' is the error-type to return. If it is NULL, then the - overflow error is cleared and the value is clipped. */ -PyAPI_FUNC(Py_ssize_t) PyNumber_AsSsize_t(PyObject *o, PyObject *exc); - -/* Returns the object 'o' converted to an integer object on success, or NULL - on failure. - - This is the equivalent of the Python expression: int(o). */ -PyAPI_FUNC(PyObject *) PyNumber_Long(PyObject *o); - -/* Returns the object 'o' converted to a float object on success, or NULL - on failure. - - This is the equivalent of the Python expression: float(o). */ -PyAPI_FUNC(PyObject *) PyNumber_Float(PyObject *o); - - -/* --- In-place variants of (some of) the above number protocol functions -- */ - -/* Returns the result of adding o2 to o1, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 += o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceAdd(PyObject *o1, PyObject *o2); - -/* Returns the result of subtracting o2 from o1, possibly in-place or - NULL on failure. - - This is the equivalent of the Python expression: o1 -= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceSubtract(PyObject *o1, PyObject *o2); - -/* Returns the result of multiplying o1 by o2, possibly in-place, or NULL on - failure. - - This is the equivalent of the Python expression: o1 *= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceMultiply(PyObject *o1, PyObject *o2); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* This is the equivalent of the Python expression: o1 @= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceMatrixMultiply(PyObject *o1, PyObject *o2); -#endif - -/* Returns the result of dividing o1 by o2 giving an integral result, possibly - in-place, or NULL on failure. - - This is the equivalent of the Python expression: o1 /= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceFloorDivide(PyObject *o1, - PyObject *o2); - -/* Returns the result of dividing o1 by o2 giving a float result, possibly - in-place, or null on failure. - - This is the equivalent of the Python expression: o1 /= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceTrueDivide(PyObject *o1, - PyObject *o2); - -/* Returns the remainder of dividing o1 by o2, possibly in-place, or NULL on - failure. - - This is the equivalent of the Python expression: o1 %= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceRemainder(PyObject *o1, PyObject *o2); - -/* Returns the result of raising o1 to the power of o2, possibly in-place, - or NULL on failure. - - This is the equivalent of the Python expression: o1 **= o2, - or o1 = pow(o1, o2, o3) if o3 is present. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlacePower(PyObject *o1, PyObject *o2, - PyObject *o3); - -/* Returns the result of left shifting o1 by o2, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 <<= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceLshift(PyObject *o1, PyObject *o2); - -/* Returns the result of right shifting o1 by o2, possibly in-place or NULL - on failure. - - This is the equivalent of the Python expression: o1 >>= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceRshift(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise and of o1 and o2, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 &= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceAnd(PyObject *o1, PyObject *o2); - -/* Returns the bitwise exclusive or of o1 by o2, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 ^= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceXor(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise or of o1 and o2, possibly in-place, - or NULL on failure. - - This is the equivalent of the Python expression: o1 |= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceOr(PyObject *o1, PyObject *o2); - -/* Returns the integer n converted to a string with a base, with a base - marker of 0b, 0o or 0x prefixed if applicable. - - If n is not an int object, it is converted with PyNumber_Index first. */ -PyAPI_FUNC(PyObject *) PyNumber_ToBase(PyObject *n, int base); - - -/* === Sequence protocol ================================================ */ - -/* Return 1 if the object provides sequence protocol, and zero - otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PySequence_Check(PyObject *o); - -/* Return the size of sequence object o, or -1 on failure. */ -PyAPI_FUNC(Py_ssize_t) PySequence_Size(PyObject *o); - -/* For DLL compatibility */ -#undef PySequence_Length -PyAPI_FUNC(Py_ssize_t) PySequence_Length(PyObject *o); -#define PySequence_Length PySequence_Size - - -/* Return the concatenation of o1 and o2 on success, and NULL on failure. - - This is the equivalent of the Python expression: o1 + o2. */ -PyAPI_FUNC(PyObject *) PySequence_Concat(PyObject *o1, PyObject *o2); - -/* Return the result of repeating sequence object 'o' 'count' times, - or NULL on failure. - - This is the equivalent of the Python expression: o * count. */ -PyAPI_FUNC(PyObject *) PySequence_Repeat(PyObject *o, Py_ssize_t count); - -/* Return the ith element of o, or NULL on failure. - - This is the equivalent of the Python expression: o[i]. */ -PyAPI_FUNC(PyObject *) PySequence_GetItem(PyObject *o, Py_ssize_t i); - -/* Return the slice of sequence object o between i1 and i2, or NULL on failure. - - This is the equivalent of the Python expression: o[i1:i2]. */ -PyAPI_FUNC(PyObject *) PySequence_GetSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2); - -/* Assign object 'v' to the ith element of the sequence 'o'. Raise an exception - and return -1 on failure; return 0 on success. - - This is the equivalent of the Python statement o[i] = v. */ -PyAPI_FUNC(int) PySequence_SetItem(PyObject *o, Py_ssize_t i, PyObject *v); - -/* Delete the 'i'-th element of the sequence 'v'. Returns -1 on failure. - - This is the equivalent of the Python statement: del o[i]. */ -PyAPI_FUNC(int) PySequence_DelItem(PyObject *o, Py_ssize_t i); - -/* Assign the sequence object 'v' to the slice in sequence object 'o', - from 'i1' to 'i2'. Returns -1 on failure. - - This is the equivalent of the Python statement: o[i1:i2] = v. */ -PyAPI_FUNC(int) PySequence_SetSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2, - PyObject *v); - -/* Delete the slice in sequence object 'o' from 'i1' to 'i2'. - Returns -1 on failure. - - This is the equivalent of the Python statement: del o[i1:i2]. */ -PyAPI_FUNC(int) PySequence_DelSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2); - -/* Returns the sequence 'o' as a tuple on success, and NULL on failure. - - This is equivalent to the Python expression: tuple(o). */ -PyAPI_FUNC(PyObject *) PySequence_Tuple(PyObject *o); - -/* Returns the sequence 'o' as a list on success, and NULL on failure. - This is equivalent to the Python expression: list(o) */ -PyAPI_FUNC(PyObject *) PySequence_List(PyObject *o); - -/* Return the sequence 'o' as a list, unless it's already a tuple or list. - - Use PySequence_Fast_GET_ITEM to access the members of this list, and - PySequence_Fast_GET_SIZE to get its length. - - Returns NULL on failure. If the object does not support iteration, raises a - TypeError exception with 'm' as the message text. */ -PyAPI_FUNC(PyObject *) PySequence_Fast(PyObject *o, const char* m); - -/* Return the size of the sequence 'o', assuming that 'o' was returned by - PySequence_Fast and is not NULL. */ -#define PySequence_Fast_GET_SIZE(o) \ - (PyList_Check(o) ? PyList_GET_SIZE(o) : PyTuple_GET_SIZE(o)) - -/* Return the 'i'-th element of the sequence 'o', assuming that o was returned - by PySequence_Fast, and that i is within bounds. */ -#define PySequence_Fast_GET_ITEM(o, i)\ - (PyList_Check(o) ? PyList_GET_ITEM(o, i) : PyTuple_GET_ITEM(o, i)) - -/* Return a pointer to the underlying item array for - an object returned by PySequence_Fast */ -#define PySequence_Fast_ITEMS(sf) \ - (PyList_Check(sf) ? ((PyListObject *)(sf))->ob_item \ - : ((PyTupleObject *)(sf))->ob_item) - -/* Return the number of occurrences on value on 'o', that is, return - the number of keys for which o[key] == value. - - On failure, return -1. This is equivalent to the Python expression: - o.count(value). */ -PyAPI_FUNC(Py_ssize_t) PySequence_Count(PyObject *o, PyObject *value); - -/* Return 1 if 'ob' is in the sequence 'seq'; 0 if 'ob' is not in the sequence - 'seq'; -1 on error. - - Use __contains__ if possible, else _PySequence_IterSearch(). */ -PyAPI_FUNC(int) PySequence_Contains(PyObject *seq, PyObject *ob); - -/* For DLL-level backwards compatibility */ -#undef PySequence_In -/* Determine if the sequence 'o' contains 'value'. If an item in 'o' is equal - to 'value', return 1, otherwise return 0. On error, return -1. - - This is equivalent to the Python expression: value in o. */ -PyAPI_FUNC(int) PySequence_In(PyObject *o, PyObject *value); - -/* For source-level backwards compatibility */ -#define PySequence_In PySequence_Contains - - -/* Return the first index for which o[i] == value. - On error, return -1. - - This is equivalent to the Python expression: o.index(value). */ -PyAPI_FUNC(Py_ssize_t) PySequence_Index(PyObject *o, PyObject *value); - - -/* --- In-place versions of some of the above Sequence functions --- */ - -/* Append sequence 'o2' to sequence 'o1', in-place when possible. Return the - resulting object, which could be 'o1', or NULL on failure. - - This is the equivalent of the Python expression: o1 += o2. */ -PyAPI_FUNC(PyObject *) PySequence_InPlaceConcat(PyObject *o1, PyObject *o2); - -/* Repeat sequence 'o' by 'count', in-place when possible. Return the resulting - object, which could be 'o', or NULL on failure. - - This is the equivalent of the Python expression: o1 *= count. */ -PyAPI_FUNC(PyObject *) PySequence_InPlaceRepeat(PyObject *o, Py_ssize_t count); - - -/* === Mapping protocol ================================================= */ - -/* Return 1 if the object provides mapping protocol, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyMapping_Check(PyObject *o); - -/* Returns the number of keys in mapping object 'o' on success, and -1 on - failure. This is equivalent to the Python expression: len(o). */ -PyAPI_FUNC(Py_ssize_t) PyMapping_Size(PyObject *o); - -/* For DLL compatibility */ -#undef PyMapping_Length -PyAPI_FUNC(Py_ssize_t) PyMapping_Length(PyObject *o); -#define PyMapping_Length PyMapping_Size - - -/* Implemented as a macro: - - int PyMapping_DelItemString(PyObject *o, const char *key); - - Remove the mapping for the string 'key' from the mapping 'o'. Returns -1 on - failure. - - This is equivalent to the Python statement: del o[key]. */ -#define PyMapping_DelItemString(O,K) PyObject_DelItemString((O),(K)) - -/* Implemented as a macro: - - int PyMapping_DelItem(PyObject *o, PyObject *key); - - Remove the mapping for the object 'key' from the mapping object 'o'. - Returns -1 on failure. - - This is equivalent to the Python statement: del o[key]. */ -#define PyMapping_DelItem(O,K) PyObject_DelItem((O),(K)) - -/* On success, return 1 if the mapping object 'o' has the key 'key', - and 0 otherwise. - - This is equivalent to the Python expression: key in o. - - This function always succeeds. */ -PyAPI_FUNC(int) PyMapping_HasKeyString(PyObject *o, const char *key); - -/* Return 1 if the mapping object has the key 'key', and 0 otherwise. - - This is equivalent to the Python expression: key in o. - - This function always succeeds. */ -PyAPI_FUNC(int) PyMapping_HasKey(PyObject *o, PyObject *key); - -/* On success, return a list or tuple of the keys in mapping object 'o'. - On failure, return NULL. */ -PyAPI_FUNC(PyObject *) PyMapping_Keys(PyObject *o); - -/* On success, return a list or tuple of the values in mapping object 'o'. - On failure, return NULL. */ -PyAPI_FUNC(PyObject *) PyMapping_Values(PyObject *o); - -/* On success, return a list or tuple of the items in mapping object 'o', - where each item is a tuple containing a key-value pair. On failure, return - NULL. */ -PyAPI_FUNC(PyObject *) PyMapping_Items(PyObject *o); - -/* Return element of 'o' corresponding to the string 'key' or NULL on failure. - - This is the equivalent of the Python expression: o[key]. */ -PyAPI_FUNC(PyObject *) PyMapping_GetItemString(PyObject *o, - const char *key); - -/* Map the string 'key' to the value 'v' in the mapping 'o'. - Returns -1 on failure. - - This is the equivalent of the Python statement: o[key]=v. */ -PyAPI_FUNC(int) PyMapping_SetItemString(PyObject *o, const char *key, - PyObject *value); - -/* isinstance(object, typeorclass) */ -PyAPI_FUNC(int) PyObject_IsInstance(PyObject *object, PyObject *typeorclass); - -/* issubclass(object, typeorclass) */ -PyAPI_FUNC(int) PyObject_IsSubclass(PyObject *object, PyObject *typeorclass); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_ABSTRACTOBJECT_H -# include "cpython/abstract.h" -# undef Py_CPYTHON_ABSTRACTOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* Py_ABSTRACTOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/bltinmodule.h b/_Pre_Builds/_Python310_cpp/include/bltinmodule.h deleted file mode 100644 index 868c9e6..0000000 --- a/_Pre_Builds/_Python310_cpp/include/bltinmodule.h +++ /dev/null @@ -1,14 +0,0 @@ -#ifndef Py_BLTINMODULE_H -#define Py_BLTINMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyFilter_Type; -PyAPI_DATA(PyTypeObject) PyMap_Type; -PyAPI_DATA(PyTypeObject) PyZip_Type; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BLTINMODULE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/boolobject.h b/_Pre_Builds/_Python310_cpp/include/boolobject.h deleted file mode 100644 index cda6f89..0000000 --- a/_Pre_Builds/_Python310_cpp/include/boolobject.h +++ /dev/null @@ -1,43 +0,0 @@ -/* Boolean object interface */ - -#ifndef Py_BOOLOBJECT_H -#define Py_BOOLOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -PyAPI_DATA(PyTypeObject) PyBool_Type; - -#define PyBool_Check(x) Py_IS_TYPE(x, &PyBool_Type) - -/* Py_False and Py_True are the only two bools in existence. -Don't forget to apply Py_INCREF() when returning either!!! */ - -/* Don't use these directly */ -PyAPI_DATA(struct _longobject) _Py_FalseStruct; -PyAPI_DATA(struct _longobject) _Py_TrueStruct; - -/* Use these macros */ -#define Py_False ((PyObject *) &_Py_FalseStruct) -#define Py_True ((PyObject *) &_Py_TrueStruct) - -// Test if an object is the True singleton, the same as "x is True" in Python. -PyAPI_FUNC(int) Py_IsTrue(PyObject *x); -#define Py_IsTrue(x) Py_Is((x), Py_True) - -// Test if an object is the False singleton, the same as "x is False" in Python. -PyAPI_FUNC(int) Py_IsFalse(PyObject *x); -#define Py_IsFalse(x) Py_Is((x), Py_False) - -/* Macros for returning Py_True or Py_False, respectively */ -#define Py_RETURN_TRUE return Py_NewRef(Py_True) -#define Py_RETURN_FALSE return Py_NewRef(Py_False) - -/* Function to return a bool from a C long */ -PyAPI_FUNC(PyObject *) PyBool_FromLong(long); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BOOLOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/bytearrayobject.h b/_Pre_Builds/_Python310_cpp/include/bytearrayobject.h deleted file mode 100644 index 9e95433..0000000 --- a/_Pre_Builds/_Python310_cpp/include/bytearrayobject.h +++ /dev/null @@ -1,46 +0,0 @@ -/* ByteArray object interface */ - -#ifndef Py_BYTEARRAYOBJECT_H -#define Py_BYTEARRAYOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#include - -/* Type PyByteArrayObject represents a mutable array of bytes. - * The Python API is that of a sequence; - * the bytes are mapped to ints in [0, 256). - * Bytes are not characters; they may be used to encode characters. - * The only way to go between bytes and str/unicode is via encoding - * and decoding. - * For the convenience of C programmers, the bytes type is considered - * to contain a char pointer, not an unsigned char pointer. - */ - -/* Type object */ -PyAPI_DATA(PyTypeObject) PyByteArray_Type; -PyAPI_DATA(PyTypeObject) PyByteArrayIter_Type; - -/* Type check macros */ -#define PyByteArray_Check(self) PyObject_TypeCheck(self, &PyByteArray_Type) -#define PyByteArray_CheckExact(self) Py_IS_TYPE(self, &PyByteArray_Type) - -/* Direct API functions */ -PyAPI_FUNC(PyObject *) PyByteArray_FromObject(PyObject *); -PyAPI_FUNC(PyObject *) PyByteArray_Concat(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyByteArray_FromStringAndSize(const char *, Py_ssize_t); -PyAPI_FUNC(Py_ssize_t) PyByteArray_Size(PyObject *); -PyAPI_FUNC(char *) PyByteArray_AsString(PyObject *); -PyAPI_FUNC(int) PyByteArray_Resize(PyObject *, Py_ssize_t); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_BYTEARRAYOBJECT_H -# include "cpython/bytearrayobject.h" -# undef Py_CPYTHON_BYTEARRAYOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BYTEARRAYOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/bytesobject.h b/_Pre_Builds/_Python310_cpp/include/bytesobject.h deleted file mode 100644 index 39c241a..0000000 --- a/_Pre_Builds/_Python310_cpp/include/bytesobject.h +++ /dev/null @@ -1,69 +0,0 @@ - -/* Bytes object interface */ - -#ifndef Py_BYTESOBJECT_H -#define Py_BYTESOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#include - -/* -Type PyBytesObject represents a byte string. An extra zero byte is -reserved at the end to ensure it is zero-terminated, but a size is -present so strings with null bytes in them can be represented. This -is an immutable object type. - -There are functions to create new bytes objects, to test -an object for bytes-ness, and to get the -byte string value. The latter function returns a null pointer -if the object is not of the proper type. -There is a variant that takes an explicit size as well as a -variant that assumes a zero-terminated string. Note that none of the -functions should be applied to NULL pointer. -*/ - -PyAPI_DATA(PyTypeObject) PyBytes_Type; -PyAPI_DATA(PyTypeObject) PyBytesIter_Type; - -#define PyBytes_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_BYTES_SUBCLASS) -#define PyBytes_CheckExact(op) Py_IS_TYPE(op, &PyBytes_Type) - -PyAPI_FUNC(PyObject *) PyBytes_FromStringAndSize(const char *, Py_ssize_t); -PyAPI_FUNC(PyObject *) PyBytes_FromString(const char *); -PyAPI_FUNC(PyObject *) PyBytes_FromObject(PyObject *); -PyAPI_FUNC(PyObject *) PyBytes_FromFormatV(const char*, va_list) - Py_GCC_ATTRIBUTE((format(printf, 1, 0))); -PyAPI_FUNC(PyObject *) PyBytes_FromFormat(const char*, ...) - Py_GCC_ATTRIBUTE((format(printf, 1, 2))); -PyAPI_FUNC(Py_ssize_t) PyBytes_Size(PyObject *); -PyAPI_FUNC(char *) PyBytes_AsString(PyObject *); -PyAPI_FUNC(PyObject *) PyBytes_Repr(PyObject *, int); -PyAPI_FUNC(void) PyBytes_Concat(PyObject **, PyObject *); -PyAPI_FUNC(void) PyBytes_ConcatAndDel(PyObject **, PyObject *); -PyAPI_FUNC(PyObject *) PyBytes_DecodeEscape(const char *, Py_ssize_t, - const char *, Py_ssize_t, - const char *); - -/* Provides access to the internal data buffer and size of a bytes object. - Passing NULL as len parameter will force the string buffer to be - 0-terminated (passing a string with embedded NUL characters will - cause an exception). */ -PyAPI_FUNC(int) PyBytes_AsStringAndSize( - PyObject *obj, /* bytes object */ - char **s, /* pointer to buffer variable */ - Py_ssize_t *len /* pointer to length variable or NULL */ - ); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_BYTESOBJECT_H -# include "cpython/bytesobject.h" -# undef Py_CPYTHON_BYTESOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BYTESOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/cellobject.h b/_Pre_Builds/_Python310_cpp/include/cellobject.h deleted file mode 100644 index 81bc784..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cellobject.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Cell object interface */ -#ifndef Py_LIMITED_API -#ifndef Py_CELLOBJECT_H -#define Py_CELLOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct { - PyObject_HEAD - PyObject *ob_ref; /* Content of the cell or NULL when empty */ -} PyCellObject; - -PyAPI_DATA(PyTypeObject) PyCell_Type; - -#define PyCell_Check(op) Py_IS_TYPE(op, &PyCell_Type) - -PyAPI_FUNC(PyObject *) PyCell_New(PyObject *); -PyAPI_FUNC(PyObject *) PyCell_Get(PyObject *); -PyAPI_FUNC(int) PyCell_Set(PyObject *, PyObject *); - -#define PyCell_GET(op) (((PyCellObject *)(op))->ob_ref) -#define PyCell_SET(op, v) ((void)(((PyCellObject *)(op))->ob_ref = v)) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_TUPLEOBJECT_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/ceval.h b/_Pre_Builds/_Python310_cpp/include/ceval.h deleted file mode 100644 index 0f68766..0000000 --- a/_Pre_Builds/_Python310_cpp/include/ceval.h +++ /dev/null @@ -1,158 +0,0 @@ -#ifndef Py_CEVAL_H -#define Py_CEVAL_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Interface to random parts in ceval.c */ - -/* PyEval_CallObjectWithKeywords(), PyEval_CallObject(), PyEval_CallFunction - * and PyEval_CallMethod are deprecated. Since they are officially part of the - * stable ABI (PEP 384), they must be kept for backward compatibility. - * PyObject_Call(), PyObject_CallFunction() and PyObject_CallMethod() are - * recommended to call a callable object. - */ - -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallObjectWithKeywords( - PyObject *callable, - PyObject *args, - PyObject *kwargs); - -/* Deprecated since PyEval_CallObjectWithKeywords is deprecated */ -#define PyEval_CallObject(callable, arg) \ - PyEval_CallObjectWithKeywords(callable, arg, (PyObject *)NULL) - -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallFunction( - PyObject *callable, const char *format, ...); -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallMethod( - PyObject *obj, const char *name, const char *format, ...); - -PyAPI_FUNC(PyObject *) PyEval_GetBuiltins(void); -PyAPI_FUNC(PyObject *) PyEval_GetGlobals(void); -PyAPI_FUNC(PyObject *) PyEval_GetLocals(void); -PyAPI_FUNC(PyFrameObject *) PyEval_GetFrame(void); - -PyAPI_FUNC(int) Py_AddPendingCall(int (*func)(void *), void *arg); -PyAPI_FUNC(int) Py_MakePendingCalls(void); - -/* Protection against deeply nested recursive calls - - In Python 3.0, this protection has two levels: - * normal anti-recursion protection is triggered when the recursion level - exceeds the current recursion limit. It raises a RecursionError, and sets - the "overflowed" flag in the thread state structure. This flag - temporarily *disables* the normal protection; this allows cleanup code - to potentially outgrow the recursion limit while processing the - RecursionError. - * "last chance" anti-recursion protection is triggered when the recursion - level exceeds "current recursion limit + 50". By construction, this - protection can only be triggered when the "overflowed" flag is set. It - means the cleanup code has itself gone into an infinite loop, or the - RecursionError has been mistakingly ignored. When this protection is - triggered, the interpreter aborts with a Fatal Error. - - In addition, the "overflowed" flag is automatically reset when the - recursion level drops below "current recursion limit - 50". This heuristic - is meant to ensure that the normal anti-recursion protection doesn't get - disabled too long. - - Please note: this scheme has its own limitations. See: - http://mail.python.org/pipermail/python-dev/2008-August/082106.html - for some observations. -*/ -PyAPI_FUNC(void) Py_SetRecursionLimit(int); -PyAPI_FUNC(int) Py_GetRecursionLimit(void); - -PyAPI_FUNC(int) Py_EnterRecursiveCall(const char *where); -PyAPI_FUNC(void) Py_LeaveRecursiveCall(void); - -PyAPI_FUNC(const char *) PyEval_GetFuncName(PyObject *); -PyAPI_FUNC(const char *) PyEval_GetFuncDesc(PyObject *); - -PyAPI_FUNC(PyObject *) PyEval_EvalFrame(PyFrameObject *); -PyAPI_FUNC(PyObject *) PyEval_EvalFrameEx(PyFrameObject *f, int exc); - -/* Interface for threads. - - A module that plans to do a blocking system call (or something else - that lasts a long time and doesn't touch Python data) can allow other - threads to run as follows: - - ...preparations here... - Py_BEGIN_ALLOW_THREADS - ...blocking system call here... - Py_END_ALLOW_THREADS - ...interpret result here... - - The Py_BEGIN_ALLOW_THREADS/Py_END_ALLOW_THREADS pair expands to a - {}-surrounded block. - To leave the block in the middle (e.g., with return), you must insert - a line containing Py_BLOCK_THREADS before the return, e.g. - - if (...premature_exit...) { - Py_BLOCK_THREADS - PyErr_SetFromErrno(PyExc_OSError); - return NULL; - } - - An alternative is: - - Py_BLOCK_THREADS - if (...premature_exit...) { - PyErr_SetFromErrno(PyExc_OSError); - return NULL; - } - Py_UNBLOCK_THREADS - - For convenience, that the value of 'errno' is restored across - Py_END_ALLOW_THREADS and Py_BLOCK_THREADS. - - WARNING: NEVER NEST CALLS TO Py_BEGIN_ALLOW_THREADS AND - Py_END_ALLOW_THREADS!!! - - Note that not yet all candidates have been converted to use this - mechanism! -*/ - -PyAPI_FUNC(PyThreadState *) PyEval_SaveThread(void); -PyAPI_FUNC(void) PyEval_RestoreThread(PyThreadState *); - -Py_DEPRECATED(3.9) PyAPI_FUNC(int) PyEval_ThreadsInitialized(void); -Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void); -/* PyEval_AcquireLock() and PyEval_ReleaseLock() are part of stable ABI. - * They will be removed from this header file in the future version. - * But they will be remained in ABI until Python 4.0. - */ -Py_DEPRECATED(3.2) PyAPI_FUNC(void) PyEval_AcquireLock(void); -Py_DEPRECATED(3.2) PyAPI_FUNC(void) PyEval_ReleaseLock(void); -PyAPI_FUNC(void) PyEval_AcquireThread(PyThreadState *tstate); -PyAPI_FUNC(void) PyEval_ReleaseThread(PyThreadState *tstate); - -#define Py_BEGIN_ALLOW_THREADS { \ - PyThreadState *_save; \ - _save = PyEval_SaveThread(); -#define Py_BLOCK_THREADS PyEval_RestoreThread(_save); -#define Py_UNBLOCK_THREADS _save = PyEval_SaveThread(); -#define Py_END_ALLOW_THREADS PyEval_RestoreThread(_save); \ - } - -/* Masks and values used by FORMAT_VALUE opcode. */ -#define FVC_MASK 0x3 -#define FVC_NONE 0x0 -#define FVC_STR 0x1 -#define FVC_REPR 0x2 -#define FVC_ASCII 0x3 -#define FVS_MASK 0x4 -#define FVS_HAVE_SPEC 0x4 - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_CEVAL_H -# include "cpython/ceval.h" -# undef Py_CPYTHON_CEVAL_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CEVAL_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/classobject.h b/_Pre_Builds/_Python310_cpp/include/classobject.h deleted file mode 100644 index 1952f67..0000000 --- a/_Pre_Builds/_Python310_cpp/include/classobject.h +++ /dev/null @@ -1,57 +0,0 @@ -/* Former class object interface -- now only bound methods are here */ - -/* Revealing some structures (not for general use) */ - -#ifndef Py_LIMITED_API -#ifndef Py_CLASSOBJECT_H -#define Py_CLASSOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct { - PyObject_HEAD - PyObject *im_func; /* The callable object implementing the method */ - PyObject *im_self; /* The instance it is bound to */ - PyObject *im_weakreflist; /* List of weak references */ - vectorcallfunc vectorcall; -} PyMethodObject; - -PyAPI_DATA(PyTypeObject) PyMethod_Type; - -#define PyMethod_Check(op) Py_IS_TYPE(op, &PyMethod_Type) - -PyAPI_FUNC(PyObject *) PyMethod_New(PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) PyMethod_Function(PyObject *); -PyAPI_FUNC(PyObject *) PyMethod_Self(PyObject *); - -/* Macros for direct access to these values. Type checks are *not* - done, so use with care. */ -#define PyMethod_GET_FUNCTION(meth) \ - (((PyMethodObject *)meth) -> im_func) -#define PyMethod_GET_SELF(meth) \ - (((PyMethodObject *)meth) -> im_self) - -typedef struct { - PyObject_HEAD - PyObject *func; -} PyInstanceMethodObject; - -PyAPI_DATA(PyTypeObject) PyInstanceMethod_Type; - -#define PyInstanceMethod_Check(op) Py_IS_TYPE(op, &PyInstanceMethod_Type) - -PyAPI_FUNC(PyObject *) PyInstanceMethod_New(PyObject *); -PyAPI_FUNC(PyObject *) PyInstanceMethod_Function(PyObject *); - -/* Macros for direct access to these values. Type checks are *not* - done, so use with care. */ -#define PyInstanceMethod_GET_FUNCTION(meth) \ - (((PyInstanceMethodObject *)meth) -> func) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CLASSOBJECT_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/code.h b/_Pre_Builds/_Python310_cpp/include/code.h deleted file mode 100644 index b9e23eb..0000000 --- a/_Pre_Builds/_Python310_cpp/include/code.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Definitions for bytecode */ - -#ifndef Py_CODE_H -#define Py_CODE_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct PyCodeObject PyCodeObject; - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_CODE_H -# include "cpython/code.h" -# undef Py_CPYTHON_CODE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CODE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/codecs.h b/_Pre_Builds/_Python310_cpp/include/codecs.h deleted file mode 100644 index 37ecfb4..0000000 --- a/_Pre_Builds/_Python310_cpp/include/codecs.h +++ /dev/null @@ -1,248 +0,0 @@ -#ifndef Py_CODECREGISTRY_H -#define Py_CODECREGISTRY_H -#ifdef __cplusplus -extern "C" { -#endif - -/* ------------------------------------------------------------------------ - - Python Codec Registry and support functions - - -Written by Marc-Andre Lemburg (mal@lemburg.com). - -Copyright (c) Corporation for National Research Initiatives. - - ------------------------------------------------------------------------ */ - -/* Register a new codec search function. - - As side effect, this tries to load the encodings package, if not - yet done, to make sure that it is always first in the list of - search functions. - - The search_function's refcount is incremented by this function. */ - -PyAPI_FUNC(int) PyCodec_Register( - PyObject *search_function - ); - -/* Unregister a codec search function and clear the registry's cache. - If the search function is not registered, do nothing. - Return 0 on success. Raise an exception and return -1 on error. */ - -PyAPI_FUNC(int) PyCodec_Unregister( - PyObject *search_function - ); - -/* Codec registry lookup API. - - Looks up the given encoding and returns a CodecInfo object with - function attributes which implement the different aspects of - processing the encoding. - - The encoding string is looked up converted to all lower-case - characters. This makes encodings looked up through this mechanism - effectively case-insensitive. - - If no codec is found, a KeyError is set and NULL returned. - - As side effect, this tries to load the encodings package, if not - yet done. This is part of the lazy load strategy for the encodings - package. - - */ - -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PyCodec_Lookup( - const char *encoding - ); - -PyAPI_FUNC(int) _PyCodec_Forget( - const char *encoding - ); -#endif - -/* Codec registry encoding check API. - - Returns 1/0 depending on whether there is a registered codec for - the given encoding. - -*/ - -PyAPI_FUNC(int) PyCodec_KnownEncoding( - const char *encoding - ); - -/* Generic codec based encoding API. - - object is passed through the encoder function found for the given - encoding using the error handling method defined by errors. errors - may be NULL to use the default method defined for the codec. - - Raises a LookupError in case no encoder can be found. - - */ - -PyAPI_FUNC(PyObject *) PyCodec_Encode( - PyObject *object, - const char *encoding, - const char *errors - ); - -/* Generic codec based decoding API. - - object is passed through the decoder function found for the given - encoding using the error handling method defined by errors. errors - may be NULL to use the default method defined for the codec. - - Raises a LookupError in case no encoder can be found. - - */ - -PyAPI_FUNC(PyObject *) PyCodec_Decode( - PyObject *object, - const char *encoding, - const char *errors - ); - -#ifndef Py_LIMITED_API -/* Text codec specific encoding and decoding API. - - Checks the encoding against a list of codecs which do not - implement a str<->bytes encoding before attempting the - operation. - - Please note that these APIs are internal and should not - be used in Python C extensions. - - XXX (ncoghlan): should we make these, or something like them, public - in Python 3.5+? - - */ -PyAPI_FUNC(PyObject *) _PyCodec_LookupTextEncoding( - const char *encoding, - const char *alternate_command - ); - -PyAPI_FUNC(PyObject *) _PyCodec_EncodeText( - PyObject *object, - const char *encoding, - const char *errors - ); - -PyAPI_FUNC(PyObject *) _PyCodec_DecodeText( - PyObject *object, - const char *encoding, - const char *errors - ); - -/* These two aren't actually text encoding specific, but _io.TextIOWrapper - * is the only current API consumer. - */ -PyAPI_FUNC(PyObject *) _PyCodecInfo_GetIncrementalDecoder( - PyObject *codec_info, - const char *errors - ); - -PyAPI_FUNC(PyObject *) _PyCodecInfo_GetIncrementalEncoder( - PyObject *codec_info, - const char *errors - ); -#endif - - - -/* --- Codec Lookup APIs -------------------------------------------------- - - All APIs return a codec object with incremented refcount and are - based on _PyCodec_Lookup(). The same comments w/r to the encoding - name also apply to these APIs. - -*/ - -/* Get an encoder function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_Encoder( - const char *encoding - ); - -/* Get a decoder function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_Decoder( - const char *encoding - ); - -/* Get an IncrementalEncoder object for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_IncrementalEncoder( - const char *encoding, - const char *errors - ); - -/* Get an IncrementalDecoder object function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_IncrementalDecoder( - const char *encoding, - const char *errors - ); - -/* Get a StreamReader factory function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_StreamReader( - const char *encoding, - PyObject *stream, - const char *errors - ); - -/* Get a StreamWriter factory function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_StreamWriter( - const char *encoding, - PyObject *stream, - const char *errors - ); - -/* Unicode encoding error handling callback registry API */ - -/* Register the error handling callback function error under the given - name. This function will be called by the codec when it encounters - unencodable characters/undecodable bytes and doesn't know the - callback name, when name is specified as the error parameter - in the call to the encode/decode function. - Return 0 on success, -1 on error */ -PyAPI_FUNC(int) PyCodec_RegisterError(const char *name, PyObject *error); - -/* Lookup the error handling callback function registered under the given - name. As a special case NULL can be passed, in which case - the error handling callback for "strict" will be returned. */ -PyAPI_FUNC(PyObject *) PyCodec_LookupError(const char *name); - -/* raise exc as an exception */ -PyAPI_FUNC(PyObject *) PyCodec_StrictErrors(PyObject *exc); - -/* ignore the unicode error, skipping the faulty input */ -PyAPI_FUNC(PyObject *) PyCodec_IgnoreErrors(PyObject *exc); - -/* replace the unicode encode error with ? or U+FFFD */ -PyAPI_FUNC(PyObject *) PyCodec_ReplaceErrors(PyObject *exc); - -/* replace the unicode encode error with XML character references */ -PyAPI_FUNC(PyObject *) PyCodec_XMLCharRefReplaceErrors(PyObject *exc); - -/* replace the unicode encode error with backslash escapes (\x, \u and \U) */ -PyAPI_FUNC(PyObject *) PyCodec_BackslashReplaceErrors(PyObject *exc); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* replace the unicode encode error with backslash escapes (\N, \x, \u and \U) */ -PyAPI_FUNC(PyObject *) PyCodec_NameReplaceErrors(PyObject *exc); -#endif - -#ifndef Py_LIMITED_API -PyAPI_DATA(const char *) Py_hexdigits; -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CODECREGISTRY_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/compile.h b/_Pre_Builds/_Python310_cpp/include/compile.h deleted file mode 100644 index 3c5acd7..0000000 --- a/_Pre_Builds/_Python310_cpp/include/compile.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef Py_COMPILE_H -#define Py_COMPILE_H -#ifdef __cplusplus -extern "C" { -#endif - -/* These definitions must match corresponding definitions in graminit.h. */ -#define Py_single_input 256 -#define Py_file_input 257 -#define Py_eval_input 258 -#define Py_func_type_input 345 - -/* This doesn't need to match anything */ -#define Py_fstring_input 800 - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_COMPILE_H -# include "cpython/compile.h" -# undef Py_CPYTHON_COMPILE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_COMPILE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/complexobject.h b/_Pre_Builds/_Python310_cpp/include/complexobject.h deleted file mode 100644 index 9221f9c..0000000 --- a/_Pre_Builds/_Python310_cpp/include/complexobject.h +++ /dev/null @@ -1,69 +0,0 @@ -/* Complex number structure */ - -#ifndef Py_COMPLEXOBJECT_H -#define Py_COMPLEXOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API -typedef struct { - double real; - double imag; -} Py_complex; - -/* Operations on complex numbers from complexmodule.c */ - -PyAPI_FUNC(Py_complex) _Py_c_sum(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_diff(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_neg(Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_prod(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_quot(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_pow(Py_complex, Py_complex); -PyAPI_FUNC(double) _Py_c_abs(Py_complex); -#endif - -/* Complex object interface */ - -/* -PyComplexObject represents a complex number with double-precision -real and imaginary parts. -*/ -#ifndef Py_LIMITED_API -typedef struct { - PyObject_HEAD - Py_complex cval; -} PyComplexObject; -#endif - -PyAPI_DATA(PyTypeObject) PyComplex_Type; - -#define PyComplex_Check(op) PyObject_TypeCheck(op, &PyComplex_Type) -#define PyComplex_CheckExact(op) Py_IS_TYPE(op, &PyComplex_Type) - -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) PyComplex_FromCComplex(Py_complex); -#endif -PyAPI_FUNC(PyObject *) PyComplex_FromDoubles(double real, double imag); - -PyAPI_FUNC(double) PyComplex_RealAsDouble(PyObject *op); -PyAPI_FUNC(double) PyComplex_ImagAsDouble(PyObject *op); -#ifndef Py_LIMITED_API -PyAPI_FUNC(Py_complex) PyComplex_AsCComplex(PyObject *op); -#endif - -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -#ifndef Py_LIMITED_API -PyAPI_FUNC(int) _PyComplex_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_COMPLEXOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/context.h b/_Pre_Builds/_Python310_cpp/include/context.h deleted file mode 100644 index 4e50070..0000000 --- a/_Pre_Builds/_Python310_cpp/include/context.h +++ /dev/null @@ -1,81 +0,0 @@ -#ifndef Py_CONTEXT_H -#define Py_CONTEXT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API - - -PyAPI_DATA(PyTypeObject) PyContext_Type; -typedef struct _pycontextobject PyContext; - -PyAPI_DATA(PyTypeObject) PyContextVar_Type; -typedef struct _pycontextvarobject PyContextVar; - -PyAPI_DATA(PyTypeObject) PyContextToken_Type; -typedef struct _pycontexttokenobject PyContextToken; - - -#define PyContext_CheckExact(o) Py_IS_TYPE(o, &PyContext_Type) -#define PyContextVar_CheckExact(o) Py_IS_TYPE(o, &PyContextVar_Type) -#define PyContextToken_CheckExact(o) Py_IS_TYPE(o, &PyContextToken_Type) - - -PyAPI_FUNC(PyObject *) PyContext_New(void); -PyAPI_FUNC(PyObject *) PyContext_Copy(PyObject *); -PyAPI_FUNC(PyObject *) PyContext_CopyCurrent(void); - -PyAPI_FUNC(int) PyContext_Enter(PyObject *); -PyAPI_FUNC(int) PyContext_Exit(PyObject *); - - -/* Create a new context variable. - - default_value can be NULL. -*/ -PyAPI_FUNC(PyObject *) PyContextVar_New( - const char *name, PyObject *default_value); - - -/* Get a value for the variable. - - Returns -1 if an error occurred during lookup. - - Returns 0 if value either was or was not found. - - If value was found, *value will point to it. - If not, it will point to: - - - default_value, if not NULL; - - the default value of "var", if not NULL; - - NULL. - - '*value' will be a new ref, if not NULL. -*/ -PyAPI_FUNC(int) PyContextVar_Get( - PyObject *var, PyObject *default_value, PyObject **value); - - -/* Set a new value for the variable. - Returns NULL if an error occurs. -*/ -PyAPI_FUNC(PyObject *) PyContextVar_Set(PyObject *var, PyObject *value); - - -/* Reset a variable to its previous value. - Returns 0 on success, -1 on error. -*/ -PyAPI_FUNC(int) PyContextVar_Reset(PyObject *var, PyObject *token); - - -/* This method is exposed only for CPython tests. Don not use it. */ -PyAPI_FUNC(PyObject *) _PyContext_NewHamtForTests(void); - - -#endif /* !Py_LIMITED_API */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CONTEXT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/abstract.h b/_Pre_Builds/_Python310_cpp/include/cpython/abstract.h deleted file mode 100644 index db85021..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/abstract.h +++ /dev/null @@ -1,373 +0,0 @@ -#ifndef Py_CPYTHON_ABSTRACTOBJECT_H -# error "this header file must not be included directly" -#endif - -/* === Object Protocol ================================================== */ - -#ifdef PY_SSIZE_T_CLEAN -# define _PyObject_CallMethodId _PyObject_CallMethodId_SizeT -#endif - -/* Convert keyword arguments from the FASTCALL (stack: C array, kwnames: tuple) - format to a Python dictionary ("kwargs" dict). - - The type of kwnames keys is not checked. The final function getting - arguments is responsible to check if all keys are strings, for example using - PyArg_ParseTupleAndKeywords() or PyArg_ValidateKeywordArguments(). - - Duplicate keys are merged using the last value. If duplicate keys must raise - an exception, the caller is responsible to implement an explicit keys on - kwnames. */ -PyAPI_FUNC(PyObject *) _PyStack_AsDict( - PyObject *const *values, - PyObject *kwnames); - -/* Suggested size (number of positional arguments) for arrays of PyObject* - allocated on a C stack to avoid allocating memory on the heap memory. Such - array is used to pass positional arguments to call functions of the - PyObject_Vectorcall() family. - - The size is chosen to not abuse the C stack and so limit the risk of stack - overflow. The size is also chosen to allow using the small stack for most - function calls of the Python standard library. On 64-bit CPU, it allocates - 40 bytes on the stack. */ -#define _PY_FASTCALL_SMALL_STACK 5 - -PyAPI_FUNC(PyObject *) _Py_CheckFunctionResult( - PyThreadState *tstate, - PyObject *callable, - PyObject *result, - const char *where); - -/* === Vectorcall protocol (PEP 590) ============================= */ - -/* Call callable using tp_call. Arguments are like PyObject_Vectorcall() - or PyObject_FastCallDict() (both forms are supported), - except that nargs is plainly the number of arguments without flags. */ -PyAPI_FUNC(PyObject *) _PyObject_MakeTpCall( - PyThreadState *tstate, - PyObject *callable, - PyObject *const *args, Py_ssize_t nargs, - PyObject *keywords); - -#define PY_VECTORCALL_ARGUMENTS_OFFSET ((size_t)1 << (8 * sizeof(size_t) - 1)) - -static inline Py_ssize_t -PyVectorcall_NARGS(size_t n) -{ - return n & ~PY_VECTORCALL_ARGUMENTS_OFFSET; -} - -static inline vectorcallfunc -PyVectorcall_Function(PyObject *callable) -{ - PyTypeObject *tp; - Py_ssize_t offset; - vectorcallfunc ptr; - - assert(callable != NULL); - tp = Py_TYPE(callable); - if (!PyType_HasFeature(tp, Py_TPFLAGS_HAVE_VECTORCALL)) { - return NULL; - } - assert(PyCallable_Check(callable)); - offset = tp->tp_vectorcall_offset; - assert(offset > 0); - memcpy(&ptr, (char *) callable + offset, sizeof(ptr)); - return ptr; -} - -/* Call the callable object 'callable' with the "vectorcall" calling - convention. - - args is a C array for positional arguments. - - nargsf is the number of positional arguments plus optionally the flag - PY_VECTORCALL_ARGUMENTS_OFFSET which means that the caller is allowed to - modify args[-1]. - - kwnames is a tuple of keyword names. The values of the keyword arguments - are stored in "args" after the positional arguments (note that the number - of keyword arguments does not change nargsf). kwnames can also be NULL if - there are no keyword arguments. - - keywords must only contain strings and all keys must be unique. - - Return the result on success. Raise an exception and return NULL on - error. */ -static inline PyObject * -_PyObject_VectorcallTstate(PyThreadState *tstate, PyObject *callable, - PyObject *const *args, size_t nargsf, - PyObject *kwnames) -{ - vectorcallfunc func; - PyObject *res; - - assert(kwnames == NULL || PyTuple_Check(kwnames)); - assert(args != NULL || PyVectorcall_NARGS(nargsf) == 0); - - func = PyVectorcall_Function(callable); - if (func == NULL) { - Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); - return _PyObject_MakeTpCall(tstate, callable, args, nargs, kwnames); - } - res = func(callable, args, nargsf, kwnames); - return _Py_CheckFunctionResult(tstate, callable, res, NULL); -} - -static inline PyObject * -PyObject_Vectorcall(PyObject *callable, PyObject *const *args, - size_t nargsf, PyObject *kwnames) -{ - PyThreadState *tstate = PyThreadState_Get(); - return _PyObject_VectorcallTstate(tstate, callable, - args, nargsf, kwnames); -} - -// Backwards compatibility aliases for API that was provisional in Python 3.8 -#define _PyObject_Vectorcall PyObject_Vectorcall -#define _PyObject_VectorcallMethod PyObject_VectorcallMethod -#define _PyObject_FastCallDict PyObject_VectorcallDict -#define _PyVectorcall_Function PyVectorcall_Function -#define _PyObject_CallOneArg PyObject_CallOneArg -#define _PyObject_CallMethodNoArgs PyObject_CallMethodNoArgs -#define _PyObject_CallMethodOneArg PyObject_CallMethodOneArg - -/* Same as PyObject_Vectorcall except that keyword arguments are passed as - dict, which may be NULL if there are no keyword arguments. */ -PyAPI_FUNC(PyObject *) PyObject_VectorcallDict( - PyObject *callable, - PyObject *const *args, - size_t nargsf, - PyObject *kwargs); - -/* Call "callable" (which must support vectorcall) with positional arguments - "tuple" and keyword arguments "dict". "dict" may also be NULL */ -PyAPI_FUNC(PyObject *) PyVectorcall_Call(PyObject *callable, PyObject *tuple, PyObject *dict); - -static inline PyObject * -_PyObject_FastCallTstate(PyThreadState *tstate, PyObject *func, PyObject *const *args, Py_ssize_t nargs) -{ - return _PyObject_VectorcallTstate(tstate, func, args, (size_t)nargs, NULL); -} - -/* Same as PyObject_Vectorcall except without keyword arguments */ -static inline PyObject * -_PyObject_FastCall(PyObject *func, PyObject *const *args, Py_ssize_t nargs) -{ - PyThreadState *tstate = PyThreadState_Get(); - return _PyObject_FastCallTstate(tstate, func, args, nargs); -} - -/* Call a callable without any arguments - Private static inline function variant of public function - PyObject_CallNoArgs(). */ -static inline PyObject * -_PyObject_CallNoArg(PyObject *func) { - PyThreadState *tstate = PyThreadState_Get(); - return _PyObject_VectorcallTstate(tstate, func, NULL, 0, NULL); -} - -static inline PyObject * -PyObject_CallOneArg(PyObject *func, PyObject *arg) -{ - PyObject *_args[2]; - PyObject **args; - PyThreadState *tstate; - size_t nargsf; - - assert(arg != NULL); - args = _args + 1; // For PY_VECTORCALL_ARGUMENTS_OFFSET - args[0] = arg; - tstate = PyThreadState_Get(); - nargsf = 1 | PY_VECTORCALL_ARGUMENTS_OFFSET; - return _PyObject_VectorcallTstate(tstate, func, args, nargsf, NULL); -} - -PyAPI_FUNC(PyObject *) PyObject_VectorcallMethod( - PyObject *name, PyObject *const *args, - size_t nargsf, PyObject *kwnames); - -static inline PyObject * -PyObject_CallMethodNoArgs(PyObject *self, PyObject *name) -{ - return PyObject_VectorcallMethod(name, &self, - 1 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); -} - -static inline PyObject * -PyObject_CallMethodOneArg(PyObject *self, PyObject *name, PyObject *arg) -{ - PyObject *args[2] = {self, arg}; - - assert(arg != NULL); - return PyObject_VectorcallMethod(name, args, - 2 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); -} - -/* Like PyObject_CallMethod(), but expect a _Py_Identifier* - as the method name. */ -PyAPI_FUNC(PyObject *) _PyObject_CallMethodId(PyObject *obj, - _Py_Identifier *name, - const char *format, ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallMethodId_SizeT(PyObject *obj, - _Py_Identifier *name, - const char *format, - ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallMethodIdObjArgs( - PyObject *obj, - struct _Py_Identifier *name, - ...); - -static inline PyObject * -_PyObject_VectorcallMethodId( - _Py_Identifier *name, PyObject *const *args, - size_t nargsf, PyObject *kwnames) -{ - PyObject *oname = _PyUnicode_FromId(name); /* borrowed */ - if (!oname) { - return NULL; - } - return PyObject_VectorcallMethod(oname, args, nargsf, kwnames); -} - -static inline PyObject * -_PyObject_CallMethodIdNoArgs(PyObject *self, _Py_Identifier *name) -{ - return _PyObject_VectorcallMethodId(name, &self, - 1 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); -} - -static inline PyObject * -_PyObject_CallMethodIdOneArg(PyObject *self, _Py_Identifier *name, PyObject *arg) -{ - PyObject *args[2] = {self, arg}; - - assert(arg != NULL); - return _PyObject_VectorcallMethodId(name, args, - 2 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); -} - -PyAPI_FUNC(int) _PyObject_HasLen(PyObject *o); - -/* Guess the size of object 'o' using len(o) or o.__length_hint__(). - If neither of those return a non-negative value, then return the default - value. If one of the calls fails, this function returns -1. */ -PyAPI_FUNC(Py_ssize_t) PyObject_LengthHint(PyObject *o, Py_ssize_t); - -/* === New Buffer API ============================================ */ - -/* Return 1 if the getbuffer function is available, otherwise return 0. */ -PyAPI_FUNC(int) PyObject_CheckBuffer(PyObject *obj); - -/* This is a C-API version of the getbuffer function call. It checks - to make sure object has the required function pointer and issues the - call. - - Returns -1 and raises an error on failure and returns 0 on success. */ -PyAPI_FUNC(int) PyObject_GetBuffer(PyObject *obj, Py_buffer *view, - int flags); - -/* Get the memory area pointed to by the indices for the buffer given. - Note that view->ndim is the assumed size of indices. */ -PyAPI_FUNC(void *) PyBuffer_GetPointer(Py_buffer *view, Py_ssize_t *indices); - -/* Return the implied itemsize of the data-format area from a - struct-style description. */ -PyAPI_FUNC(Py_ssize_t) PyBuffer_SizeFromFormat(const char *format); - -/* Implementation in memoryobject.c */ -PyAPI_FUNC(int) PyBuffer_ToContiguous(void *buf, Py_buffer *view, - Py_ssize_t len, char order); - -PyAPI_FUNC(int) PyBuffer_FromContiguous(Py_buffer *view, void *buf, - Py_ssize_t len, char order); - -/* Copy len bytes of data from the contiguous chunk of memory - pointed to by buf into the buffer exported by obj. Return - 0 on success and return -1 and raise a PyBuffer_Error on - error (i.e. the object does not have a buffer interface or - it is not working). - - If fort is 'F', then if the object is multi-dimensional, - then the data will be copied into the array in - Fortran-style (first dimension varies the fastest). If - fort is 'C', then the data will be copied into the array - in C-style (last dimension varies the fastest). If fort - is 'A', then it does not matter and the copy will be made - in whatever way is more efficient. */ -PyAPI_FUNC(int) PyObject_CopyData(PyObject *dest, PyObject *src); - -/* Copy the data from the src buffer to the buffer of destination. */ -PyAPI_FUNC(int) PyBuffer_IsContiguous(const Py_buffer *view, char fort); - -/*Fill the strides array with byte-strides of a contiguous - (Fortran-style if fort is 'F' or C-style otherwise) - array of the given shape with the given number of bytes - per element. */ -PyAPI_FUNC(void) PyBuffer_FillContiguousStrides(int ndims, - Py_ssize_t *shape, - Py_ssize_t *strides, - int itemsize, - char fort); - -/* Fills in a buffer-info structure correctly for an exporter - that can only share a contiguous chunk of memory of - "unsigned bytes" of the given length. - - Returns 0 on success and -1 (with raising an error) on error. */ -PyAPI_FUNC(int) PyBuffer_FillInfo(Py_buffer *view, PyObject *o, void *buf, - Py_ssize_t len, int readonly, - int flags); - -/* Releases a Py_buffer obtained from getbuffer ParseTuple's "s*". */ -PyAPI_FUNC(void) PyBuffer_Release(Py_buffer *view); - -/* === Sequence protocol ================================================ */ - -/* Assume tp_as_sequence and sq_item exist and that 'i' does not - need to be corrected for a negative index. */ -#define PySequence_ITEM(o, i)\ - ( Py_TYPE(o)->tp_as_sequence->sq_item(o, i) ) - -#define PY_ITERSEARCH_COUNT 1 -#define PY_ITERSEARCH_INDEX 2 -#define PY_ITERSEARCH_CONTAINS 3 - -/* Iterate over seq. - - Result depends on the operation: - - PY_ITERSEARCH_COUNT: return # of times obj appears in seq; -1 if - error. - PY_ITERSEARCH_INDEX: return 0-based index of first occurrence of - obj in seq; set ValueError and return -1 if none found; - also return -1 on error. - PY_ITERSEARCH_CONTAINS: return 1 if obj in seq, else 0; -1 on - error. */ -PyAPI_FUNC(Py_ssize_t) _PySequence_IterSearch(PyObject *seq, - PyObject *obj, int operation); - -/* === Mapping protocol ================================================= */ - -PyAPI_FUNC(int) _PyObject_RealIsInstance(PyObject *inst, PyObject *cls); - -PyAPI_FUNC(int) _PyObject_RealIsSubclass(PyObject *derived, PyObject *cls); - -PyAPI_FUNC(char *const *) _PySequence_BytesToCharpArray(PyObject* self); - -PyAPI_FUNC(void) _Py_FreeCharPArray(char *const array[]); - -/* For internal use by buffer API functions */ -PyAPI_FUNC(void) _Py_add_one_to_index_F(int nd, Py_ssize_t *index, - const Py_ssize_t *shape); -PyAPI_FUNC(void) _Py_add_one_to_index_C(int nd, Py_ssize_t *index, - const Py_ssize_t *shape); - -/* Convert Python int to Py_ssize_t. Do nothing if the argument is None. */ -PyAPI_FUNC(int) _Py_convert_optional_to_ssize_t(PyObject *, void *); - -/* Same as PyNumber_Index but can return an instance of a subclass of int. */ -PyAPI_FUNC(PyObject *) _PyNumber_Index(PyObject *o); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/bytearrayobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/bytearrayobject.h deleted file mode 100644 index 569b0cd..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/bytearrayobject.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef Py_CPYTHON_BYTEARRAYOBJECT_H -# error "this header file must not be included directly" -#endif - -/* Object layout */ -typedef struct { - PyObject_VAR_HEAD - Py_ssize_t ob_alloc; /* How many bytes allocated in ob_bytes */ - char *ob_bytes; /* Physical backing buffer */ - char *ob_start; /* Logical start inside ob_bytes */ - Py_ssize_t ob_exports; /* How many buffer exports */ -} PyByteArrayObject; - -/* Macros, trading safety for speed */ -#define PyByteArray_AS_STRING(self) \ - (assert(PyByteArray_Check(self)), \ - Py_SIZE(self) ? ((PyByteArrayObject *)(self))->ob_start : _PyByteArray_empty_string) -#define PyByteArray_GET_SIZE(self) (assert(PyByteArray_Check(self)), Py_SIZE(self)) - -PyAPI_DATA(char) _PyByteArray_empty_string[]; diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/bytesobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/bytesobject.h deleted file mode 100644 index 6b3f552..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/bytesobject.h +++ /dev/null @@ -1,118 +0,0 @@ -#ifndef Py_CPYTHON_BYTESOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - PyObject_VAR_HEAD - Py_hash_t ob_shash; - char ob_sval[1]; - - /* Invariants: - * ob_sval contains space for 'ob_size+1' elements. - * ob_sval[ob_size] == 0. - * ob_shash is the hash of the byte string or -1 if not computed yet. - */ -} PyBytesObject; - -PyAPI_FUNC(int) _PyBytes_Resize(PyObject **, Py_ssize_t); -PyAPI_FUNC(PyObject*) _PyBytes_FormatEx( - const char *format, - Py_ssize_t format_len, - PyObject *args, - int use_bytearray); -PyAPI_FUNC(PyObject*) _PyBytes_FromHex( - PyObject *string, - int use_bytearray); - -/* Helper for PyBytes_DecodeEscape that detects invalid escape chars. */ -PyAPI_FUNC(PyObject *) _PyBytes_DecodeEscape(const char *, Py_ssize_t, - const char *, const char **); - -/* Macro, trading safety for speed */ -#define PyBytes_AS_STRING(op) (assert(PyBytes_Check(op)), \ - (((PyBytesObject *)(op))->ob_sval)) -#define PyBytes_GET_SIZE(op) (assert(PyBytes_Check(op)),Py_SIZE(op)) - -/* _PyBytes_Join(sep, x) is like sep.join(x). sep must be PyBytesObject*, - x must be an iterable object. */ -PyAPI_FUNC(PyObject *) _PyBytes_Join(PyObject *sep, PyObject *x); - - -/* The _PyBytesWriter structure is big: it contains an embedded "stack buffer". - A _PyBytesWriter variable must be declared at the end of variables in a - function to optimize the memory allocation on the stack. */ -typedef struct { - /* bytes, bytearray or NULL (when the small buffer is used) */ - PyObject *buffer; - - /* Number of allocated size. */ - Py_ssize_t allocated; - - /* Minimum number of allocated bytes, - incremented by _PyBytesWriter_Prepare() */ - Py_ssize_t min_size; - - /* If non-zero, use a bytearray instead of a bytes object for buffer. */ - int use_bytearray; - - /* If non-zero, overallocate the buffer (default: 0). - This flag must be zero if use_bytearray is non-zero. */ - int overallocate; - - /* Stack buffer */ - int use_small_buffer; - char small_buffer[512]; -} _PyBytesWriter; - -/* Initialize a bytes writer - - By default, the overallocation is disabled. Set the overallocate attribute - to control the allocation of the buffer. */ -PyAPI_FUNC(void) _PyBytesWriter_Init(_PyBytesWriter *writer); - -/* Get the buffer content and reset the writer. - Return a bytes object, or a bytearray object if use_bytearray is non-zero. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(PyObject *) _PyBytesWriter_Finish(_PyBytesWriter *writer, - void *str); - -/* Deallocate memory of a writer (clear its internal buffer). */ -PyAPI_FUNC(void) _PyBytesWriter_Dealloc(_PyBytesWriter *writer); - -/* Allocate the buffer to write size bytes. - Return the pointer to the beginning of buffer data. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(void*) _PyBytesWriter_Alloc(_PyBytesWriter *writer, - Py_ssize_t size); - -/* Ensure that the buffer is large enough to write *size* bytes. - Add size to the writer minimum size (min_size attribute). - - str is the current pointer inside the buffer. - Return the updated current pointer inside the buffer. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(void*) _PyBytesWriter_Prepare(_PyBytesWriter *writer, - void *str, - Py_ssize_t size); - -/* Resize the buffer to make it larger. - The new buffer may be larger than size bytes because of overallocation. - Return the updated current pointer inside the buffer. - Raise an exception and return NULL on error. - - Note: size must be greater than the number of allocated bytes in the writer. - - This function doesn't use the writer minimum size (min_size attribute). - - See also _PyBytesWriter_Prepare(). - */ -PyAPI_FUNC(void*) _PyBytesWriter_Resize(_PyBytesWriter *writer, - void *str, - Py_ssize_t size); - -/* Write bytes. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(void*) _PyBytesWriter_WriteBytes(_PyBytesWriter *writer, - void *str, - const void *bytes, - Py_ssize_t size); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/ceval.h b/_Pre_Builds/_Python310_cpp/include/cpython/ceval.h deleted file mode 100644 index 0633892..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/ceval.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef Py_CPYTHON_CEVAL_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(void) PyEval_SetProfile(Py_tracefunc, PyObject *); -PyAPI_DATA(int) _PyEval_SetProfile(PyThreadState *tstate, Py_tracefunc func, PyObject *arg); -PyAPI_FUNC(void) PyEval_SetTrace(Py_tracefunc, PyObject *); -PyAPI_FUNC(int) _PyEval_SetTrace(PyThreadState *tstate, Py_tracefunc func, PyObject *arg); -PyAPI_FUNC(int) _PyEval_GetCoroutineOriginTrackingDepth(void); -PyAPI_FUNC(int) _PyEval_SetAsyncGenFirstiter(PyObject *); -PyAPI_FUNC(PyObject *) _PyEval_GetAsyncGenFirstiter(void); -PyAPI_FUNC(int) _PyEval_SetAsyncGenFinalizer(PyObject *); -PyAPI_FUNC(PyObject *) _PyEval_GetAsyncGenFinalizer(void); - -/* Helper to look up a builtin object */ -PyAPI_FUNC(PyObject *) _PyEval_GetBuiltinId(_Py_Identifier *); -/* Look at the current frame's (if any) code's co_flags, and turn on - the corresponding compiler flags in cf->cf_flags. Return 1 if any - flag was set, else return 0. */ -PyAPI_FUNC(int) PyEval_MergeCompilerFlags(PyCompilerFlags *cf); - -PyAPI_FUNC(PyObject *) _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int exc); - -PyAPI_FUNC(void) _PyEval_SetSwitchInterval(unsigned long microseconds); -PyAPI_FUNC(unsigned long) _PyEval_GetSwitchInterval(void); - -PyAPI_FUNC(Py_ssize_t) _PyEval_RequestCodeExtraIndex(freefunc); - -PyAPI_FUNC(int) _PyEval_SliceIndex(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) _PyEval_SliceIndexNotNone(PyObject *, Py_ssize_t *); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/code.h b/_Pre_Builds/_Python310_cpp/include/cpython/code.h deleted file mode 100644 index fa64085..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/code.h +++ /dev/null @@ -1,184 +0,0 @@ -#ifndef Py_CPYTHON_CODE_H -# error "this header file must not be included directly" -#endif - -typedef uint16_t _Py_CODEUNIT; - -#ifdef WORDS_BIGENDIAN -# define _Py_OPCODE(word) ((word) >> 8) -# define _Py_OPARG(word) ((word) & 255) -#else -# define _Py_OPCODE(word) ((word) & 255) -# define _Py_OPARG(word) ((word) >> 8) -#endif - -typedef struct _PyOpcache _PyOpcache; - -/* Bytecode object */ -struct PyCodeObject { - PyObject_HEAD - int co_argcount; /* #arguments, except *args */ - int co_posonlyargcount; /* #positional only arguments */ - int co_kwonlyargcount; /* #keyword only arguments */ - int co_nlocals; /* #local variables */ - int co_stacksize; /* #entries needed for evaluation stack */ - int co_flags; /* CO_..., see below */ - int co_firstlineno; /* first source line number */ - PyObject *co_code; /* instruction opcodes */ - PyObject *co_consts; /* list (constants used) */ - PyObject *co_names; /* list of strings (names used) */ - PyObject *co_varnames; /* tuple of strings (local variable names) */ - PyObject *co_freevars; /* tuple of strings (free variable names) */ - PyObject *co_cellvars; /* tuple of strings (cell variable names) */ - /* The rest aren't used in either hash or comparisons, except for co_name, - used in both. This is done to preserve the name and line number - for tracebacks and debuggers; otherwise, constant de-duplication - would collapse identical functions/lambdas defined on different lines. - */ - Py_ssize_t *co_cell2arg; /* Maps cell vars which are arguments. */ - PyObject *co_filename; /* unicode (where it was loaded from) */ - PyObject *co_name; /* unicode (name, for reference) */ - PyObject *co_linetable; /* string (encoding addr<->lineno mapping) See - Objects/lnotab_notes.txt for details. */ - void *co_zombieframe; /* for optimization only (see frameobject.c) */ - PyObject *co_weakreflist; /* to support weakrefs to code objects */ - /* Scratch space for extra data relating to the code object. - Type is a void* to keep the format private in codeobject.c to force - people to go through the proper APIs. */ - void *co_extra; - - /* Per opcodes just-in-time cache - * - * To reduce cache size, we use indirect mapping from opcode index to - * cache object: - * cache = co_opcache[co_opcache_map[next_instr - first_instr] - 1] - */ - - // co_opcache_map is indexed by (next_instr - first_instr). - // * 0 means there is no cache for this opcode. - // * n > 0 means there is cache in co_opcache[n-1]. - unsigned char *co_opcache_map; - _PyOpcache *co_opcache; - int co_opcache_flag; // used to determine when create a cache. - unsigned char co_opcache_size; // length of co_opcache. -}; - -/* Masks for co_flags above */ -#define CO_OPTIMIZED 0x0001 -#define CO_NEWLOCALS 0x0002 -#define CO_VARARGS 0x0004 -#define CO_VARKEYWORDS 0x0008 -#define CO_NESTED 0x0010 -#define CO_GENERATOR 0x0020 -/* The CO_NOFREE flag is set if there are no free or cell variables. - This information is redundant, but it allows a single flag test - to determine whether there is any extra work to be done when the - call frame it setup. -*/ -#define CO_NOFREE 0x0040 - -/* The CO_COROUTINE flag is set for coroutine functions (defined with - ``async def`` keywords) */ -#define CO_COROUTINE 0x0080 -#define CO_ITERABLE_COROUTINE 0x0100 -#define CO_ASYNC_GENERATOR 0x0200 - -/* bpo-39562: These constant values are changed in Python 3.9 - to prevent collision with compiler flags. CO_FUTURE_ and PyCF_ - constants must be kept unique. PyCF_ constants can use bits from - 0x0100 to 0x10000. CO_FUTURE_ constants use bits starting at 0x20000. */ -#define CO_FUTURE_DIVISION 0x20000 -#define CO_FUTURE_ABSOLUTE_IMPORT 0x40000 /* do absolute imports by default */ -#define CO_FUTURE_WITH_STATEMENT 0x80000 -#define CO_FUTURE_PRINT_FUNCTION 0x100000 -#define CO_FUTURE_UNICODE_LITERALS 0x200000 - -#define CO_FUTURE_BARRY_AS_BDFL 0x400000 -#define CO_FUTURE_GENERATOR_STOP 0x800000 -#define CO_FUTURE_ANNOTATIONS 0x1000000 - -/* This value is found in the co_cell2arg array when the associated cell - variable does not correspond to an argument. */ -#define CO_CELL_NOT_AN_ARG (-1) - -/* This should be defined if a future statement modifies the syntax. - For example, when a keyword is added. -*/ -#define PY_PARSER_REQUIRES_FUTURE_KEYWORD - -#define CO_MAXBLOCKS 20 /* Max static block nesting within a function */ - -PyAPI_DATA(PyTypeObject) PyCode_Type; - -#define PyCode_Check(op) Py_IS_TYPE(op, &PyCode_Type) -#define PyCode_GetNumFree(op) (PyTuple_GET_SIZE((op)->co_freevars)) - -/* Public interface */ -PyAPI_FUNC(PyCodeObject *) PyCode_New( - int, int, int, int, int, PyObject *, PyObject *, - PyObject *, PyObject *, PyObject *, PyObject *, - PyObject *, PyObject *, int, PyObject *); - -PyAPI_FUNC(PyCodeObject *) PyCode_NewWithPosOnlyArgs( - int, int, int, int, int, int, PyObject *, PyObject *, - PyObject *, PyObject *, PyObject *, PyObject *, - PyObject *, PyObject *, int, PyObject *); - /* same as struct above */ - -/* Creates a new empty code object with the specified source location. */ -PyAPI_FUNC(PyCodeObject *) -PyCode_NewEmpty(const char *filename, const char *funcname, int firstlineno); - -/* Return the line number associated with the specified bytecode index - in this code object. If you just need the line number of a frame, - use PyFrame_GetLineNumber() instead. */ -PyAPI_FUNC(int) PyCode_Addr2Line(PyCodeObject *, int); - -/* for internal use only */ -struct _opaque { - int computed_line; - const char *lo_next; - const char *limit; -}; - -typedef struct _line_offsets { - int ar_start; - int ar_end; - int ar_line; - struct _opaque opaque; -} PyCodeAddressRange; - -/* Update *bounds to describe the first and one-past-the-last instructions in the - same line as lasti. Return the number of that line. -*/ -PyAPI_FUNC(int) _PyCode_CheckLineNumber(int lasti, PyCodeAddressRange *bounds); - -/* Create a comparable key used to compare constants taking in account the - * object type. It is used to make sure types are not coerced (e.g., float and - * complex) _and_ to distinguish 0.0 from -0.0 e.g. on IEEE platforms - * - * Return (type(obj), obj, ...): a tuple with variable size (at least 2 items) - * depending on the type and the value. The type is the first item to not - * compare bytes and str which can raise a BytesWarning exception. */ -PyAPI_FUNC(PyObject*) _PyCode_ConstantKey(PyObject *obj); - -PyAPI_FUNC(PyObject*) PyCode_Optimize(PyObject *code, PyObject* consts, - PyObject *names, PyObject *lnotab); - - -PyAPI_FUNC(int) _PyCode_GetExtra(PyObject *code, Py_ssize_t index, - void **extra); -PyAPI_FUNC(int) _PyCode_SetExtra(PyObject *code, Py_ssize_t index, - void *extra); - -/** API for initializing the line number table. */ -int _PyCode_InitAddressRange(PyCodeObject* co, PyCodeAddressRange *bounds); - -/** Out of process API for initializing the line number table. */ -void PyLineTable_InitAddressRange(const char *linetable, Py_ssize_t length, int firstlineno, PyCodeAddressRange *range); - -/** API for traversing the line number table. */ -int PyLineTable_NextAddressRange(PyCodeAddressRange *range); -int PyLineTable_PreviousAddressRange(PyCodeAddressRange *range); - - diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/compile.h b/_Pre_Builds/_Python310_cpp/include/cpython/compile.h deleted file mode 100644 index 518a376..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/compile.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Py_CPYTHON_COMPILE_H -# error "this header file must not be included directly" -#endif - -/* Public interface */ -#define PyCF_MASK (CO_FUTURE_DIVISION | CO_FUTURE_ABSOLUTE_IMPORT | \ - CO_FUTURE_WITH_STATEMENT | CO_FUTURE_PRINT_FUNCTION | \ - CO_FUTURE_UNICODE_LITERALS | CO_FUTURE_BARRY_AS_BDFL | \ - CO_FUTURE_GENERATOR_STOP | CO_FUTURE_ANNOTATIONS) -#define PyCF_MASK_OBSOLETE (CO_NESTED) - -/* bpo-39562: CO_FUTURE_ and PyCF_ constants must be kept unique. - PyCF_ constants can use bits from 0x0100 to 0x10000. - CO_FUTURE_ constants use bits starting at 0x20000. */ -#define PyCF_SOURCE_IS_UTF8 0x0100 -#define PyCF_DONT_IMPLY_DEDENT 0x0200 -#define PyCF_ONLY_AST 0x0400 -#define PyCF_IGNORE_COOKIE 0x0800 -#define PyCF_TYPE_COMMENTS 0x1000 -#define PyCF_ALLOW_TOP_LEVEL_AWAIT 0x2000 -#define PyCF_ALLOW_INCOMPLETE_INPUT 0x4000 -#define PyCF_COMPILE_MASK (PyCF_ONLY_AST | PyCF_ALLOW_TOP_LEVEL_AWAIT | \ - PyCF_TYPE_COMMENTS | PyCF_DONT_IMPLY_DEDENT | \ - PyCF_ALLOW_INCOMPLETE_INPUT) - -typedef struct { - int cf_flags; /* bitmask of CO_xxx flags relevant to future */ - int cf_feature_version; /* minor Python version (PyCF_ONLY_AST) */ -} PyCompilerFlags; - -#define _PyCompilerFlags_INIT \ - (PyCompilerFlags){.cf_flags = 0, .cf_feature_version = PY_MINOR_VERSION} - -/* Future feature support */ - -typedef struct { - int ff_features; /* flags set by future statements */ - int ff_lineno; /* line number of last future statement */ -} PyFutureFeatures; - -#define FUTURE_NESTED_SCOPES "nested_scopes" -#define FUTURE_GENERATORS "generators" -#define FUTURE_DIVISION "division" -#define FUTURE_ABSOLUTE_IMPORT "absolute_import" -#define FUTURE_WITH_STATEMENT "with_statement" -#define FUTURE_PRINT_FUNCTION "print_function" -#define FUTURE_UNICODE_LITERALS "unicode_literals" -#define FUTURE_BARRY_AS_BDFL "barry_as_FLUFL" -#define FUTURE_GENERATOR_STOP "generator_stop" -#define FUTURE_ANNOTATIONS "annotations" - -#define PY_INVALID_STACK_EFFECT INT_MAX -PyAPI_FUNC(int) PyCompile_OpcodeStackEffect(int opcode, int oparg); -PyAPI_FUNC(int) PyCompile_OpcodeStackEffectWithJump(int opcode, int oparg, int jump); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/dictobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/dictobject.h deleted file mode 100644 index 641d7bd..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/dictobject.h +++ /dev/null @@ -1,84 +0,0 @@ -#ifndef Py_CPYTHON_DICTOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct _dictkeysobject PyDictKeysObject; - -/* The ma_values pointer is NULL for a combined table - * or points to an array of PyObject* for a split table - */ -typedef struct { - PyObject_HEAD - - /* Number of items in the dictionary */ - Py_ssize_t ma_used; - - /* Dictionary version: globally unique, value change each time - the dictionary is modified */ - uint64_t ma_version_tag; - - PyDictKeysObject *ma_keys; - - /* If ma_values is NULL, the table is "combined": keys and values - are stored in ma_keys. - - If ma_values is not NULL, the table is split: - keys are stored in ma_keys and values are stored in ma_values */ - PyObject **ma_values; -} PyDictObject; - -PyAPI_FUNC(PyObject *) _PyDict_GetItem_KnownHash(PyObject *mp, PyObject *key, - Py_hash_t hash); -PyAPI_FUNC(PyObject *) _PyDict_GetItemIdWithError(PyObject *dp, - struct _Py_Identifier *key); -PyAPI_FUNC(PyObject *) _PyDict_GetItemStringWithError(PyObject *, const char *); -PyAPI_FUNC(PyObject *) PyDict_SetDefault( - PyObject *mp, PyObject *key, PyObject *defaultobj); -PyAPI_FUNC(int) _PyDict_SetItem_KnownHash(PyObject *mp, PyObject *key, - PyObject *item, Py_hash_t hash); -PyAPI_FUNC(int) _PyDict_DelItem_KnownHash(PyObject *mp, PyObject *key, - Py_hash_t hash); -PyAPI_FUNC(int) _PyDict_DelItemIf(PyObject *mp, PyObject *key, - int (*predicate)(PyObject *value)); -PyDictKeysObject *_PyDict_NewKeysForClass(void); -PyAPI_FUNC(int) _PyDict_Next( - PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value, Py_hash_t *hash); - -/* Get the number of items of a dictionary. */ -#define PyDict_GET_SIZE(mp) (assert(PyDict_Check(mp)),((PyDictObject *)mp)->ma_used) -PyAPI_FUNC(int) _PyDict_Contains_KnownHash(PyObject *, PyObject *, Py_hash_t); -PyAPI_FUNC(int) _PyDict_ContainsId(PyObject *, struct _Py_Identifier *); -PyAPI_FUNC(PyObject *) _PyDict_NewPresized(Py_ssize_t minused); -PyAPI_FUNC(void) _PyDict_MaybeUntrack(PyObject *mp); -PyAPI_FUNC(int) _PyDict_HasOnlyStringKeys(PyObject *mp); -Py_ssize_t _PyDict_KeysSize(PyDictKeysObject *keys); -PyAPI_FUNC(Py_ssize_t) _PyDict_SizeOf(PyDictObject *); -PyAPI_FUNC(PyObject *) _PyDict_Pop(PyObject *, PyObject *, PyObject *); -PyObject *_PyDict_Pop_KnownHash(PyObject *, PyObject *, Py_hash_t, PyObject *); -PyObject *_PyDict_FromKeys(PyObject *, PyObject *, PyObject *); -#define _PyDict_HasSplitTable(d) ((d)->ma_values != NULL) - -/* Like PyDict_Merge, but override can be 0, 1 or 2. If override is 0, - the first occurrence of a key wins, if override is 1, the last occurrence - of a key wins, if override is 2, a KeyError with conflicting key as - argument is raised. -*/ -PyAPI_FUNC(int) _PyDict_MergeEx(PyObject *mp, PyObject *other, int override); -PyAPI_FUNC(int) _PyDict_SetItemId(PyObject *dp, struct _Py_Identifier *key, PyObject *item); - -PyAPI_FUNC(int) _PyDict_DelItemId(PyObject *mp, struct _Py_Identifier *key); -PyAPI_FUNC(void) _PyDict_DebugMallocStats(FILE *out); - -int _PyObjectDict_SetItem(PyTypeObject *tp, PyObject **dictptr, PyObject *name, PyObject *value); -PyObject *_PyDict_LoadGlobal(PyDictObject *, PyDictObject *, PyObject *); -Py_ssize_t _PyDict_GetItemHint(PyDictObject *, PyObject *, Py_ssize_t, PyObject **); - -/* _PyDictView */ - -typedef struct { - PyObject_HEAD - PyDictObject *dv_dict; -} _PyDictViewObject; - -PyAPI_FUNC(PyObject *) _PyDictView_New(PyObject *, PyTypeObject *); -PyAPI_FUNC(PyObject *) _PyDictView_Intersect(PyObject* self, PyObject *other); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/fileobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/fileobject.h deleted file mode 100644 index cff2243..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/fileobject.h +++ /dev/null @@ -1,18 +0,0 @@ -#ifndef Py_CPYTHON_FILEOBJECT_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(char *) Py_UniversalNewlineFgets(char *, int, FILE*, PyObject *); - -/* The std printer acts as a preliminary sys.stderr until the new io - infrastructure is in place. */ -PyAPI_FUNC(PyObject *) PyFile_NewStdPrinter(int); -PyAPI_DATA(PyTypeObject) PyStdPrinter_Type; - -typedef PyObject * (*Py_OpenCodeHookFunction)(PyObject *, void *); - -PyAPI_FUNC(PyObject *) PyFile_OpenCode(const char *utf8path); -PyAPI_FUNC(PyObject *) PyFile_OpenCodeObject(PyObject *path); -PyAPI_FUNC(int) PyFile_SetOpenCodeHook(Py_OpenCodeHookFunction hook, void *userData); - -PyAPI_FUNC(int) _PyLong_FileDescriptor_Converter(PyObject *, void *); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/fileutils.h b/_Pre_Builds/_Python310_cpp/include/cpython/fileutils.h deleted file mode 100644 index ccf37e9..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/fileutils.h +++ /dev/null @@ -1,172 +0,0 @@ -#ifndef Py_CPYTHON_FILEUTILS_H -# error "this header file must not be included directly" -#endif - -typedef enum { - _Py_ERROR_UNKNOWN=0, - _Py_ERROR_STRICT, - _Py_ERROR_SURROGATEESCAPE, - _Py_ERROR_REPLACE, - _Py_ERROR_IGNORE, - _Py_ERROR_BACKSLASHREPLACE, - _Py_ERROR_SURROGATEPASS, - _Py_ERROR_XMLCHARREFREPLACE, - _Py_ERROR_OTHER -} _Py_error_handler; - -PyAPI_FUNC(_Py_error_handler) _Py_GetErrorHandler(const char *errors); - -PyAPI_FUNC(int) _Py_DecodeLocaleEx( - const char *arg, - wchar_t **wstr, - size_t *wlen, - const char **reason, - int current_locale, - _Py_error_handler errors); - -PyAPI_FUNC(int) _Py_EncodeLocaleEx( - const wchar_t *text, - char **str, - size_t *error_pos, - const char **reason, - int current_locale, - _Py_error_handler errors); - -PyAPI_FUNC(char*) _Py_EncodeLocaleRaw( - const wchar_t *text, - size_t *error_pos); - -PyAPI_FUNC(PyObject *) _Py_device_encoding(int); - -#if defined(MS_WINDOWS) || defined(__APPLE__) - /* On Windows, the count parameter of read() is an int (bpo-9015, bpo-9611). - On macOS 10.13, read() and write() with more than INT_MAX bytes - fail with EINVAL (bpo-24658). */ -# define _PY_READ_MAX INT_MAX -# define _PY_WRITE_MAX INT_MAX -#else - /* write() should truncate the input to PY_SSIZE_T_MAX bytes, - but it's safer to do it ourself to have a portable behaviour */ -# define _PY_READ_MAX PY_SSIZE_T_MAX -# define _PY_WRITE_MAX PY_SSIZE_T_MAX -#endif - -#ifdef MS_WINDOWS -struct _Py_stat_struct { - unsigned long st_dev; - uint64_t st_ino; - unsigned short st_mode; - int st_nlink; - int st_uid; - int st_gid; - unsigned long st_rdev; - __int64 st_size; - time_t st_atime; - int st_atime_nsec; - time_t st_mtime; - int st_mtime_nsec; - time_t st_ctime; - int st_ctime_nsec; - unsigned long st_file_attributes; - unsigned long st_reparse_tag; -}; -#else -# define _Py_stat_struct stat -#endif - -PyAPI_FUNC(int) _Py_fstat( - int fd, - struct _Py_stat_struct *status); - -PyAPI_FUNC(int) _Py_fstat_noraise( - int fd, - struct _Py_stat_struct *status); - -PyAPI_FUNC(int) _Py_stat( - PyObject *path, - struct stat *status); - -PyAPI_FUNC(int) _Py_open( - const char *pathname, - int flags); - -PyAPI_FUNC(int) _Py_open_noraise( - const char *pathname, - int flags); - -PyAPI_FUNC(FILE *) _Py_wfopen( - const wchar_t *path, - const wchar_t *mode); - -PyAPI_FUNC(FILE*) _Py_fopen_obj( - PyObject *path, - const char *mode); - -PyAPI_FUNC(Py_ssize_t) _Py_read( - int fd, - void *buf, - size_t count); - -PyAPI_FUNC(Py_ssize_t) _Py_write( - int fd, - const void *buf, - size_t count); - -PyAPI_FUNC(Py_ssize_t) _Py_write_noraise( - int fd, - const void *buf, - size_t count); - -#ifdef HAVE_READLINK -PyAPI_FUNC(int) _Py_wreadlink( - const wchar_t *path, - wchar_t *buf, - /* Number of characters of 'buf' buffer - including the trailing NUL character */ - size_t buflen); -#endif - -#ifdef HAVE_REALPATH -PyAPI_FUNC(wchar_t*) _Py_wrealpath( - const wchar_t *path, - wchar_t *resolved_path, - /* Number of characters of 'resolved_path' buffer - including the trailing NUL character */ - size_t resolved_path_len); -#endif - -#ifndef MS_WINDOWS -PyAPI_FUNC(int) _Py_isabs(const wchar_t *path); -#endif - -PyAPI_FUNC(int) _Py_abspath(const wchar_t *path, wchar_t **abspath_p); - -PyAPI_FUNC(wchar_t*) _Py_wgetcwd( - wchar_t *buf, - /* Number of characters of 'buf' buffer - including the trailing NUL character */ - size_t buflen); - -PyAPI_FUNC(int) _Py_get_inheritable(int fd); - -PyAPI_FUNC(int) _Py_set_inheritable(int fd, int inheritable, - int *atomic_flag_works); - -PyAPI_FUNC(int) _Py_set_inheritable_async_safe(int fd, int inheritable, - int *atomic_flag_works); - -PyAPI_FUNC(int) _Py_dup(int fd); - -#ifndef MS_WINDOWS -PyAPI_FUNC(int) _Py_get_blocking(int fd); - -PyAPI_FUNC(int) _Py_set_blocking(int fd, int blocking); -#else /* MS_WINDOWS */ -PyAPI_FUNC(void*) _Py_get_osfhandle_noraise(int fd); - -PyAPI_FUNC(void*) _Py_get_osfhandle(int fd); - -PyAPI_FUNC(int) _Py_open_osfhandle_noraise(void *handle, int flags); - -PyAPI_FUNC(int) _Py_open_osfhandle(void *handle, int flags); -#endif /* MS_WINDOWS */ diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/frameobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/frameobject.h deleted file mode 100644 index 5122ec4..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/frameobject.h +++ /dev/null @@ -1,94 +0,0 @@ -/* Frame object interface */ - -#ifndef Py_CPYTHON_FRAMEOBJECT_H -# error "this header file must not be included directly" -#endif - -/* These values are chosen so that the inline functions below all - * compare f_state to zero. - */ -enum _framestate { - FRAME_CREATED = -2, - FRAME_SUSPENDED = -1, - FRAME_EXECUTING = 0, - FRAME_RETURNED = 1, - FRAME_UNWINDING = 2, - FRAME_RAISED = 3, - FRAME_CLEARED = 4 -}; - -typedef signed char PyFrameState; - -typedef struct { - int b_type; /* what kind of block this is */ - int b_handler; /* where to jump to find handler */ - int b_level; /* value stack level to pop to */ -} PyTryBlock; - -struct _frame { - PyObject_VAR_HEAD - struct _frame *f_back; /* previous frame, or NULL */ - PyCodeObject *f_code; /* code segment */ - PyObject *f_builtins; /* builtin symbol table (PyDictObject) */ - PyObject *f_globals; /* global symbol table (PyDictObject) */ - PyObject *f_locals; /* local symbol table (any mapping) */ - PyObject **f_valuestack; /* points after the last local */ - PyObject *f_trace; /* Trace function */ - int f_stackdepth; /* Depth of value stack */ - char f_trace_lines; /* Emit per-line trace events? */ - char f_trace_opcodes; /* Emit per-opcode trace events? */ - - /* Borrowed reference to a generator, or NULL */ - PyObject *f_gen; - - int f_lasti; /* Last instruction if called */ - int f_lineno; /* Current line number. Only valid if non-zero */ - int f_iblock; /* index in f_blockstack */ - PyFrameState f_state; /* What state the frame is in */ - PyTryBlock f_blockstack[CO_MAXBLOCKS]; /* for try and loop blocks */ - PyObject *f_localsplus[1]; /* locals+stack, dynamically sized */ -}; - -static inline int _PyFrame_IsRunnable(struct _frame *f) { - return f->f_state < FRAME_EXECUTING; -} - -static inline int _PyFrame_IsExecuting(struct _frame *f) { - return f->f_state == FRAME_EXECUTING; -} - -static inline int _PyFrameHasCompleted(struct _frame *f) { - return f->f_state > FRAME_EXECUTING; -} - -/* Standard object interface */ - -PyAPI_DATA(PyTypeObject) PyFrame_Type; - -#define PyFrame_Check(op) Py_IS_TYPE(op, &PyFrame_Type) - -PyAPI_FUNC(PyFrameObject *) PyFrame_New(PyThreadState *, PyCodeObject *, - PyObject *, PyObject *); - -/* only internal use */ -PyFrameObject* -_PyFrame_New_NoTrack(PyThreadState *, PyFrameConstructor *, PyObject *); - - -/* The rest of the interface is specific for frame objects */ - -/* Block management functions */ - -PyAPI_FUNC(void) PyFrame_BlockSetup(PyFrameObject *, int, int, int); -PyAPI_FUNC(PyTryBlock *) PyFrame_BlockPop(PyFrameObject *); - -/* Conversions between "fast locals" and locals in dictionary */ - -PyAPI_FUNC(void) PyFrame_LocalsToFast(PyFrameObject *, int); - -PyAPI_FUNC(int) PyFrame_FastToLocalsWithError(PyFrameObject *f); -PyAPI_FUNC(void) PyFrame_FastToLocals(PyFrameObject *); - -PyAPI_FUNC(void) _PyFrame_DebugMallocStats(FILE *out); - -PyAPI_FUNC(PyFrameObject *) PyFrame_GetBack(PyFrameObject *frame); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/import.h b/_Pre_Builds/_Python310_cpp/include/cpython/import.h deleted file mode 100644 index 419945f..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/import.h +++ /dev/null @@ -1,46 +0,0 @@ -#ifndef Py_CPYTHON_IMPORT_H -# error "this header file must not be included directly" -#endif - -PyMODINIT_FUNC PyInit__imp(void); - -PyAPI_FUNC(int) _PyImport_IsInitialized(PyInterpreterState *); - -PyAPI_FUNC(PyObject *) _PyImport_GetModuleId(struct _Py_Identifier *name); -PyAPI_FUNC(int) _PyImport_SetModule(PyObject *name, PyObject *module); -PyAPI_FUNC(int) _PyImport_SetModuleString(const char *name, PyObject* module); - -PyAPI_FUNC(void) _PyImport_AcquireLock(void); -PyAPI_FUNC(int) _PyImport_ReleaseLock(void); - -/* Obsolete since 3.5, will be removed in 3.11. */ -Py_DEPRECATED(3.10) PyAPI_FUNC(PyObject *) _PyImport_FindExtensionObject(PyObject *, PyObject *); - -PyAPI_FUNC(int) _PyImport_FixupBuiltin( - PyObject *mod, - const char *name, /* UTF-8 encoded string */ - PyObject *modules - ); -PyAPI_FUNC(int) _PyImport_FixupExtensionObject(PyObject*, PyObject *, - PyObject *, PyObject *); - -struct _inittab { - const char *name; /* ASCII encoded string */ - PyObject* (*initfunc)(void); -}; -PyAPI_DATA(struct _inittab *) PyImport_Inittab; -PyAPI_FUNC(int) PyImport_ExtendInittab(struct _inittab *newtab); - -struct _frozen { - const char *name; /* ASCII encoded string */ - const unsigned char *code; - int size; -}; - -/* Embedding apps may change this pointer to point to their favorite - collection of frozen modules: */ - -PyAPI_DATA(const struct _frozen *) PyImport_FrozenModules; - -PyAPI_DATA(PyObject *) _PyImport_GetModuleAttr(PyObject *, PyObject *); -PyAPI_DATA(PyObject *) _PyImport_GetModuleAttrString(const char *, const char *); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/initconfig.h b/_Pre_Builds/_Python310_cpp/include/cpython/initconfig.h deleted file mode 100644 index 583165b..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/initconfig.h +++ /dev/null @@ -1,249 +0,0 @@ -#ifndef Py_PYCORECONFIG_H -#define Py_PYCORECONFIG_H -#ifndef Py_LIMITED_API -#ifdef __cplusplus -extern "C" { -#endif - -/* --- PyStatus ----------------------------------------------- */ - -typedef struct { - enum { - _PyStatus_TYPE_OK=0, - _PyStatus_TYPE_ERROR=1, - _PyStatus_TYPE_EXIT=2 - } _type; - const char *func; - const char *err_msg; - int exitcode; -} PyStatus; - -PyAPI_FUNC(PyStatus) PyStatus_Ok(void); -PyAPI_FUNC(PyStatus) PyStatus_Error(const char *err_msg); -PyAPI_FUNC(PyStatus) PyStatus_NoMemory(void); -PyAPI_FUNC(PyStatus) PyStatus_Exit(int exitcode); -PyAPI_FUNC(int) PyStatus_IsError(PyStatus err); -PyAPI_FUNC(int) PyStatus_IsExit(PyStatus err); -PyAPI_FUNC(int) PyStatus_Exception(PyStatus err); - -/* --- PyWideStringList ------------------------------------------------ */ - -typedef struct { - /* If length is greater than zero, items must be non-NULL - and all items strings must be non-NULL */ - Py_ssize_t length; - wchar_t **items; -} PyWideStringList; - -PyAPI_FUNC(PyStatus) PyWideStringList_Append(PyWideStringList *list, - const wchar_t *item); -PyAPI_FUNC(PyStatus) PyWideStringList_Insert(PyWideStringList *list, - Py_ssize_t index, - const wchar_t *item); - - -/* --- PyPreConfig ----------------------------------------------- */ - -typedef struct PyPreConfig { - int _config_init; /* _PyConfigInitEnum value */ - - /* Parse Py_PreInitializeFromBytesArgs() arguments? - See PyConfig.parse_argv */ - int parse_argv; - - /* If greater than 0, enable isolated mode: sys.path contains - neither the script's directory nor the user's site-packages directory. - - Set to 1 by the -I command line option. If set to -1 (default), inherit - Py_IsolatedFlag value. */ - int isolated; - - /* If greater than 0: use environment variables. - Set to 0 by -E command line option. If set to -1 (default), it is - set to !Py_IgnoreEnvironmentFlag. */ - int use_environment; - - /* Set the LC_CTYPE locale to the user preferred locale? If equals to 0, - set coerce_c_locale and coerce_c_locale_warn to 0. */ - int configure_locale; - - /* Coerce the LC_CTYPE locale if it's equal to "C"? (PEP 538) - - Set to 0 by PYTHONCOERCECLOCALE=0. Set to 1 by PYTHONCOERCECLOCALE=1. - Set to 2 if the user preferred LC_CTYPE locale is "C". - - If it is equal to 1, LC_CTYPE locale is read to decide if it should be - coerced or not (ex: PYTHONCOERCECLOCALE=1). Internally, it is set to 2 - if the LC_CTYPE locale must be coerced. - - Disable by default (set to 0). Set it to -1 to let Python decide if it - should be enabled or not. */ - int coerce_c_locale; - - /* Emit a warning if the LC_CTYPE locale is coerced? - - Set to 1 by PYTHONCOERCECLOCALE=warn. - - Disable by default (set to 0). Set it to -1 to let Python decide if it - should be enabled or not. */ - int coerce_c_locale_warn; - -#ifdef MS_WINDOWS - /* If greater than 1, use the "mbcs" encoding instead of the UTF-8 - encoding for the filesystem encoding. - - Set to 1 if the PYTHONLEGACYWINDOWSFSENCODING environment variable is - set to a non-empty string. If set to -1 (default), inherit - Py_LegacyWindowsFSEncodingFlag value. - - See PEP 529 for more details. */ - int legacy_windows_fs_encoding; -#endif - - /* Enable UTF-8 mode? (PEP 540) - - Disabled by default (equals to 0). - - Set to 1 by "-X utf8" and "-X utf8=1" command line options. - Set to 1 by PYTHONUTF8=1 environment variable. - - Set to 0 by "-X utf8=0" and PYTHONUTF8=0. - - If equals to -1, it is set to 1 if the LC_CTYPE locale is "C" or - "POSIX", otherwise it is set to 0. Inherit Py_UTF8Mode value value. */ - int utf8_mode; - - /* If non-zero, enable the Python Development Mode. - - Set to 1 by the -X dev command line option. Set by the PYTHONDEVMODE - environment variable. */ - int dev_mode; - - /* Memory allocator: PYTHONMALLOC env var. - See PyMemAllocatorName for valid values. */ - int allocator; -} PyPreConfig; - -PyAPI_FUNC(void) PyPreConfig_InitPythonConfig(PyPreConfig *config); -PyAPI_FUNC(void) PyPreConfig_InitIsolatedConfig(PyPreConfig *config); - - -/* --- PyConfig ---------------------------------------------- */ - -/* This structure is best documented in the Doc/c-api/init_config.rst file. */ -typedef struct PyConfig { - int _config_init; /* _PyConfigInitEnum value */ - - int isolated; - int use_environment; - int dev_mode; - int install_signal_handlers; - int use_hash_seed; - unsigned long hash_seed; - int faulthandler; - int tracemalloc; - int import_time; - int show_ref_count; - int dump_refs; - int malloc_stats; - wchar_t *filesystem_encoding; - wchar_t *filesystem_errors; - wchar_t *pycache_prefix; - int parse_argv; - PyWideStringList orig_argv; - PyWideStringList argv; - PyWideStringList xoptions; - PyWideStringList warnoptions; - int site_import; - int bytes_warning; - int warn_default_encoding; - int inspect; - int interactive; - int optimization_level; - int parser_debug; - int write_bytecode; - int verbose; - int quiet; - int user_site_directory; - int configure_c_stdio; - int buffered_stdio; - wchar_t *stdio_encoding; - wchar_t *stdio_errors; -#ifdef MS_WINDOWS - int legacy_windows_stdio; -#endif - wchar_t *check_hash_pycs_mode; - - /* --- Path configuration inputs ------------ */ - int pathconfig_warnings; - wchar_t *program_name; - wchar_t *pythonpath_env; - wchar_t *home; - wchar_t *platlibdir; - - /* --- Path configuration outputs ----------- */ - int module_search_paths_set; - PyWideStringList module_search_paths; - wchar_t *executable; - wchar_t *base_executable; - wchar_t *prefix; - wchar_t *base_prefix; - wchar_t *exec_prefix; - wchar_t *base_exec_prefix; - - /* --- Parameter only used by Py_Main() ---------- */ - int skip_source_first_line; - wchar_t *run_command; - wchar_t *run_module; - wchar_t *run_filename; - - /* --- Private fields ---------------------------- */ - - // Install importlib? If equals to 0, importlib is not initialized at all. - // Needed by freeze_importlib. - int _install_importlib; - - // If equal to 0, stop Python initialization before the "main" phase. - int _init_main; - - // If non-zero, disallow threads, subprocesses, and fork. - // Default: 0. - int _isolated_interpreter; -} PyConfig; - -PyAPI_FUNC(void) PyConfig_InitPythonConfig(PyConfig *config); -PyAPI_FUNC(void) PyConfig_InitIsolatedConfig(PyConfig *config); -PyAPI_FUNC(void) PyConfig_Clear(PyConfig *); -PyAPI_FUNC(PyStatus) PyConfig_SetString( - PyConfig *config, - wchar_t **config_str, - const wchar_t *str); -PyAPI_FUNC(PyStatus) PyConfig_SetBytesString( - PyConfig *config, - wchar_t **config_str, - const char *str); -PyAPI_FUNC(PyStatus) PyConfig_Read(PyConfig *config); -PyAPI_FUNC(PyStatus) PyConfig_SetBytesArgv( - PyConfig *config, - Py_ssize_t argc, - char * const *argv); -PyAPI_FUNC(PyStatus) PyConfig_SetArgv(PyConfig *config, - Py_ssize_t argc, - wchar_t * const *argv); -PyAPI_FUNC(PyStatus) PyConfig_SetWideStringList(PyConfig *config, - PyWideStringList *list, - Py_ssize_t length, wchar_t **items); - - -/* --- Helper functions --------------------------------------- */ - -/* Get the original command line arguments, before Python modified them. - - See also PyConfig.orig_argv. */ -PyAPI_FUNC(void) Py_GetArgcArgv(int *argc, wchar_t ***argv); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LIMITED_API */ -#endif /* !Py_PYCORECONFIG_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/interpreteridobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/interpreteridobject.h deleted file mode 100644 index 5076584..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/interpreteridobject.h +++ /dev/null @@ -1,11 +0,0 @@ -#ifndef Py_CPYTHON_INTERPRETERIDOBJECT_H -# error "this header file must not be included directly" -#endif - -/* Interpreter ID Object */ - -PyAPI_DATA(PyTypeObject) _PyInterpreterID_Type; - -PyAPI_FUNC(PyObject *) _PyInterpreterID_New(int64_t); -PyAPI_FUNC(PyObject *) _PyInterpreterState_GetIDObject(PyInterpreterState *); -PyAPI_FUNC(PyInterpreterState *) _PyInterpreterID_LookUp(PyObject *); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/listobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/listobject.h deleted file mode 100644 index e323915..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/listobject.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef Py_CPYTHON_LISTOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - PyObject_VAR_HEAD - /* Vector of pointers to list elements. list[0] is ob_item[0], etc. */ - PyObject **ob_item; - - /* ob_item contains space for 'allocated' elements. The number - * currently in use is ob_size. - * Invariants: - * 0 <= ob_size <= allocated - * len(list) == ob_size - * ob_item == NULL implies ob_size == allocated == 0 - * list.sort() temporarily sets allocated to -1 to detect mutations. - * - * Items must normally not be NULL, except during construction when - * the list is not yet visible outside the function that builds it. - */ - Py_ssize_t allocated; -} PyListObject; - -PyAPI_FUNC(PyObject *) _PyList_Extend(PyListObject *, PyObject *); -PyAPI_FUNC(void) _PyList_DebugMallocStats(FILE *out); - -/* Macro, trading safety for speed */ - -/* Cast argument to PyListObject* type. */ -#define _PyList_CAST(op) (assert(PyList_Check(op)), (PyListObject *)(op)) - -#define PyList_GET_ITEM(op, i) (_PyList_CAST(op)->ob_item[i]) -#define PyList_SET_ITEM(op, i, v) ((void)(_PyList_CAST(op)->ob_item[i] = (v))) -#define PyList_GET_SIZE(op) Py_SIZE(_PyList_CAST(op)) diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/methodobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/methodobject.h deleted file mode 100644 index 7ecbfe3..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/methodobject.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef Py_CPYTHON_METHODOBJECT_H -# error "this header file must not be included directly" -#endif - -PyAPI_DATA(PyTypeObject) PyCMethod_Type; - -#define PyCMethod_CheckExact(op) Py_IS_TYPE(op, &PyCMethod_Type) -#define PyCMethod_Check(op) PyObject_TypeCheck(op, &PyCMethod_Type) - -/* Macros for direct access to these values. Type checks are *not* - done, so use with care. */ -#define PyCFunction_GET_FUNCTION(func) \ - (((PyCFunctionObject *)func) -> m_ml -> ml_meth) -#define PyCFunction_GET_SELF(func) \ - (((PyCFunctionObject *)func) -> m_ml -> ml_flags & METH_STATIC ? \ - NULL : ((PyCFunctionObject *)func) -> m_self) -#define PyCFunction_GET_FLAGS(func) \ - (((PyCFunctionObject *)func) -> m_ml -> ml_flags) -#define PyCFunction_GET_CLASS(func) \ - (((PyCFunctionObject *)func) -> m_ml -> ml_flags & METH_METHOD ? \ - ((PyCMethodObject *)func) -> mm_class : NULL) - -typedef struct { - PyObject_HEAD - PyMethodDef *m_ml; /* Description of the C function to call */ - PyObject *m_self; /* Passed as 'self' arg to the C func, can be NULL */ - PyObject *m_module; /* The __module__ attribute, can be anything */ - PyObject *m_weakreflist; /* List of weak references */ - vectorcallfunc vectorcall; -} PyCFunctionObject; - -typedef struct { - PyCFunctionObject func; - PyTypeObject *mm_class; /* Class that defines this method */ -} PyCMethodObject; diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/object.h b/_Pre_Builds/_Python310_cpp/include/cpython/object.h deleted file mode 100644 index 84c60e5..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/object.h +++ /dev/null @@ -1,552 +0,0 @@ -#ifndef Py_CPYTHON_OBJECT_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(void) _Py_NewReference(PyObject *op); - -#ifdef Py_TRACE_REFS -/* Py_TRACE_REFS is such major surgery that we call external routines. */ -PyAPI_FUNC(void) _Py_ForgetReference(PyObject *); -#endif - -#ifdef Py_REF_DEBUG -PyAPI_FUNC(Py_ssize_t) _Py_GetRefTotal(void); -#endif - - -/********************* String Literals ****************************************/ -/* This structure helps managing static strings. The basic usage goes like this: - Instead of doing - - r = PyObject_CallMethod(o, "foo", "args", ...); - - do - - _Py_IDENTIFIER(foo); - ... - r = _PyObject_CallMethodId(o, &PyId_foo, "args", ...); - - PyId_foo is a static variable, either on block level or file level. On first - usage, the string "foo" is interned, and the structures are linked. On interpreter - shutdown, all strings are released. - - Alternatively, _Py_static_string allows choosing the variable name. - _PyUnicode_FromId returns a borrowed reference to the interned string. - _PyObject_{Get,Set,Has}AttrId are __getattr__ versions using _Py_Identifier*. -*/ -typedef struct _Py_Identifier { - const char* string; - // Index in PyInterpreterState.unicode.ids.array. It is process-wide - // unique and must be initialized to -1. - Py_ssize_t index; -} _Py_Identifier; - -#define _Py_static_string_init(value) { .string = value, .index = -1 } -#define _Py_static_string(varname, value) static _Py_Identifier varname = _Py_static_string_init(value) -#define _Py_IDENTIFIER(varname) _Py_static_string(PyId_##varname, #varname) - -/* buffer interface */ -typedef struct bufferinfo { - void *buf; - PyObject *obj; /* owned reference */ - Py_ssize_t len; - Py_ssize_t itemsize; /* This is Py_ssize_t so it can be - pointed to by strides in simple case.*/ - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; -} Py_buffer; - -typedef int (*getbufferproc)(PyObject *, Py_buffer *, int); -typedef void (*releasebufferproc)(PyObject *, Py_buffer *); - -typedef PyObject *(*vectorcallfunc)(PyObject *callable, PyObject *const *args, - size_t nargsf, PyObject *kwnames); - -/* Maximum number of dimensions */ -#define PyBUF_MAX_NDIM 64 - -/* Flags for getting buffers */ -#define PyBUF_SIMPLE 0 -#define PyBUF_WRITABLE 0x0001 -/* we used to include an E, backwards compatible alias */ -#define PyBUF_WRITEABLE PyBUF_WRITABLE -#define PyBUF_FORMAT 0x0004 -#define PyBUF_ND 0x0008 -#define PyBUF_STRIDES (0x0010 | PyBUF_ND) -#define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) -#define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) -#define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) -#define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#define PyBUF_CONTIG (PyBUF_ND | PyBUF_WRITABLE) -#define PyBUF_CONTIG_RO (PyBUF_ND) - -#define PyBUF_STRIDED (PyBUF_STRIDES | PyBUF_WRITABLE) -#define PyBUF_STRIDED_RO (PyBUF_STRIDES) - -#define PyBUF_RECORDS (PyBUF_STRIDES | PyBUF_WRITABLE | PyBUF_FORMAT) -#define PyBUF_RECORDS_RO (PyBUF_STRIDES | PyBUF_FORMAT) - -#define PyBUF_FULL (PyBUF_INDIRECT | PyBUF_WRITABLE | PyBUF_FORMAT) -#define PyBUF_FULL_RO (PyBUF_INDIRECT | PyBUF_FORMAT) - - -#define PyBUF_READ 0x100 -#define PyBUF_WRITE 0x200 -/* End buffer interface */ - - -typedef struct { - /* Number implementations must check *both* - arguments for proper type and implement the necessary conversions - in the slot functions themselves. */ - - binaryfunc nb_add; - binaryfunc nb_subtract; - binaryfunc nb_multiply; - binaryfunc nb_remainder; - binaryfunc nb_divmod; - ternaryfunc nb_power; - unaryfunc nb_negative; - unaryfunc nb_positive; - unaryfunc nb_absolute; - inquiry nb_bool; - unaryfunc nb_invert; - binaryfunc nb_lshift; - binaryfunc nb_rshift; - binaryfunc nb_and; - binaryfunc nb_xor; - binaryfunc nb_or; - unaryfunc nb_int; - void *nb_reserved; /* the slot formerly known as nb_long */ - unaryfunc nb_float; - - binaryfunc nb_inplace_add; - binaryfunc nb_inplace_subtract; - binaryfunc nb_inplace_multiply; - binaryfunc nb_inplace_remainder; - ternaryfunc nb_inplace_power; - binaryfunc nb_inplace_lshift; - binaryfunc nb_inplace_rshift; - binaryfunc nb_inplace_and; - binaryfunc nb_inplace_xor; - binaryfunc nb_inplace_or; - - binaryfunc nb_floor_divide; - binaryfunc nb_true_divide; - binaryfunc nb_inplace_floor_divide; - binaryfunc nb_inplace_true_divide; - - unaryfunc nb_index; - - binaryfunc nb_matrix_multiply; - binaryfunc nb_inplace_matrix_multiply; -} PyNumberMethods; - -typedef struct { - lenfunc sq_length; - binaryfunc sq_concat; - ssizeargfunc sq_repeat; - ssizeargfunc sq_item; - void *was_sq_slice; - ssizeobjargproc sq_ass_item; - void *was_sq_ass_slice; - objobjproc sq_contains; - - binaryfunc sq_inplace_concat; - ssizeargfunc sq_inplace_repeat; -} PySequenceMethods; - -typedef struct { - lenfunc mp_length; - binaryfunc mp_subscript; - objobjargproc mp_ass_subscript; -} PyMappingMethods; - -typedef PySendResult (*sendfunc)(PyObject *iter, PyObject *value, PyObject **result); - -typedef struct { - unaryfunc am_await; - unaryfunc am_aiter; - unaryfunc am_anext; - sendfunc am_send; -} PyAsyncMethods; - -typedef struct { - getbufferproc bf_getbuffer; - releasebufferproc bf_releasebuffer; -} PyBufferProcs; - -/* Allow printfunc in the tp_vectorcall_offset slot for - * backwards-compatibility */ -typedef Py_ssize_t printfunc; - -// If this structure is modified, Doc/includes/typestruct.h should be updated -// as well. -struct _typeobject { - PyObject_VAR_HEAD - const char *tp_name; /* For printing, in format "." */ - Py_ssize_t tp_basicsize, tp_itemsize; /* For allocation */ - - /* Methods to implement standard operations */ - - destructor tp_dealloc; - Py_ssize_t tp_vectorcall_offset; - getattrfunc tp_getattr; - setattrfunc tp_setattr; - PyAsyncMethods *tp_as_async; /* formerly known as tp_compare (Python 2) - or tp_reserved (Python 3) */ - reprfunc tp_repr; - - /* Method suites for standard classes */ - - PyNumberMethods *tp_as_number; - PySequenceMethods *tp_as_sequence; - PyMappingMethods *tp_as_mapping; - - /* More standard operations (here for binary compatibility) */ - - hashfunc tp_hash; - ternaryfunc tp_call; - reprfunc tp_str; - getattrofunc tp_getattro; - setattrofunc tp_setattro; - - /* Functions to access object as input/output buffer */ - PyBufferProcs *tp_as_buffer; - - /* Flags to define presence of optional/expanded features */ - unsigned long tp_flags; - - const char *tp_doc; /* Documentation string */ - - /* Assigned meaning in release 2.0 */ - /* call function for all accessible objects */ - traverseproc tp_traverse; - - /* delete references to contained objects */ - inquiry tp_clear; - - /* Assigned meaning in release 2.1 */ - /* rich comparisons */ - richcmpfunc tp_richcompare; - - /* weak reference enabler */ - Py_ssize_t tp_weaklistoffset; - - /* Iterators */ - getiterfunc tp_iter; - iternextfunc tp_iternext; - - /* Attribute descriptor and subclassing stuff */ - struct PyMethodDef *tp_methods; - struct PyMemberDef *tp_members; - struct PyGetSetDef *tp_getset; - // Strong reference on a heap type, borrowed reference on a static type - struct _typeobject *tp_base; - PyObject *tp_dict; - descrgetfunc tp_descr_get; - descrsetfunc tp_descr_set; - Py_ssize_t tp_dictoffset; - initproc tp_init; - allocfunc tp_alloc; - newfunc tp_new; - freefunc tp_free; /* Low-level free-memory routine */ - inquiry tp_is_gc; /* For PyObject_IS_GC */ - PyObject *tp_bases; - PyObject *tp_mro; /* method resolution order */ - PyObject *tp_cache; - PyObject *tp_subclasses; - PyObject *tp_weaklist; - destructor tp_del; - - /* Type attribute cache version tag. Added in version 2.6 */ - unsigned int tp_version_tag; - - destructor tp_finalize; - vectorcallfunc tp_vectorcall; -}; - -/* The *real* layout of a type object when allocated on the heap */ -typedef struct _heaptypeobject { - /* Note: there's a dependency on the order of these members - in slotptr() in typeobject.c . */ - PyTypeObject ht_type; - PyAsyncMethods as_async; - PyNumberMethods as_number; - PyMappingMethods as_mapping; - PySequenceMethods as_sequence; /* as_sequence comes after as_mapping, - so that the mapping wins when both - the mapping and the sequence define - a given operator (e.g. __getitem__). - see add_operators() in typeobject.c . */ - PyBufferProcs as_buffer; - PyObject *ht_name, *ht_slots, *ht_qualname; - struct _dictkeysobject *ht_cached_keys; - PyObject *ht_module; - /* here are optional user slots, followed by the members. */ -} PyHeapTypeObject; - -/* access macro to the members which are floating "behind" the object */ -#define PyHeapType_GET_MEMBERS(etype) \ - ((PyMemberDef *)(((char *)etype) + Py_TYPE(etype)->tp_basicsize)) - -PyAPI_FUNC(const char *) _PyType_Name(PyTypeObject *); -PyAPI_FUNC(PyObject *) _PyType_Lookup(PyTypeObject *, PyObject *); -PyAPI_FUNC(PyObject *) _PyType_LookupId(PyTypeObject *, _Py_Identifier *); -PyAPI_FUNC(PyObject *) _PyObject_LookupSpecial(PyObject *, _Py_Identifier *); -PyAPI_FUNC(PyTypeObject *) _PyType_CalculateMetaclass(PyTypeObject *, PyObject *); -PyAPI_FUNC(PyObject *) _PyType_GetDocFromInternalDoc(const char *, const char *); -PyAPI_FUNC(PyObject *) _PyType_GetTextSignatureFromInternalDoc(const char *, const char *); -struct PyModuleDef; -PyAPI_FUNC(PyObject *) _PyType_GetModuleByDef(PyTypeObject *, struct PyModuleDef *); - -struct _Py_Identifier; -PyAPI_FUNC(int) PyObject_Print(PyObject *, FILE *, int); -PyAPI_FUNC(void) _Py_BreakPoint(void); -PyAPI_FUNC(void) _PyObject_Dump(PyObject *); -PyAPI_FUNC(int) _PyObject_IsFreed(PyObject *); - -PyAPI_FUNC(int) _PyObject_IsAbstract(PyObject *); -PyAPI_FUNC(PyObject *) _PyObject_GetAttrId(PyObject *, struct _Py_Identifier *); -PyAPI_FUNC(int) _PyObject_SetAttrId(PyObject *, struct _Py_Identifier *, PyObject *); -/* Replacements of PyObject_GetAttr() and _PyObject_GetAttrId() which - don't raise AttributeError. - - Return 1 and set *result != NULL if an attribute is found. - Return 0 and set *result == NULL if an attribute is not found; - an AttributeError is silenced. - Return -1 and set *result == NULL if an error other than AttributeError - is raised. -*/ -PyAPI_FUNC(int) _PyObject_LookupAttr(PyObject *, PyObject *, PyObject **); -PyAPI_FUNC(int) _PyObject_LookupAttrId(PyObject *, struct _Py_Identifier *, PyObject **); - -PyAPI_FUNC(int) _PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **method); - -PyAPI_FUNC(PyObject **) _PyObject_GetDictPtr(PyObject *); -PyAPI_FUNC(PyObject *) _PyObject_NextNotImplemented(PyObject *); -PyAPI_FUNC(void) PyObject_CallFinalizer(PyObject *); -PyAPI_FUNC(int) PyObject_CallFinalizerFromDealloc(PyObject *); - -/* Same as PyObject_Generic{Get,Set}Attr, but passing the attributes - dict as the last parameter. */ -PyAPI_FUNC(PyObject *) -_PyObject_GenericGetAttrWithDict(PyObject *, PyObject *, PyObject *, int); -PyAPI_FUNC(int) -_PyObject_GenericSetAttrWithDict(PyObject *, PyObject *, - PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) _PyObject_FunctionStr(PyObject *); - -/* Safely decref `op` and set `op` to `op2`. - * - * As in case of Py_CLEAR "the obvious" code can be deadly: - * - * Py_DECREF(op); - * op = op2; - * - * The safe way is: - * - * Py_SETREF(op, op2); - * - * That arranges to set `op` to `op2` _before_ decref'ing, so that any code - * triggered as a side-effect of `op` getting torn down no longer believes - * `op` points to a valid object. - * - * Py_XSETREF is a variant of Py_SETREF that uses Py_XDECREF instead of - * Py_DECREF. - */ - -#define Py_SETREF(op, op2) \ - do { \ - PyObject *_py_tmp = _PyObject_CAST(op); \ - (op) = (op2); \ - Py_DECREF(_py_tmp); \ - } while (0) - -#define Py_XSETREF(op, op2) \ - do { \ - PyObject *_py_tmp = _PyObject_CAST(op); \ - (op) = (op2); \ - Py_XDECREF(_py_tmp); \ - } while (0) - - -PyAPI_DATA(PyTypeObject) _PyNone_Type; -PyAPI_DATA(PyTypeObject) _PyNotImplemented_Type; - -/* Maps Py_LT to Py_GT, ..., Py_GE to Py_LE. - * Defined in object.c. - */ -PyAPI_DATA(int) _Py_SwappedOp[]; - -PyAPI_FUNC(void) -_PyDebugAllocatorStats(FILE *out, const char *block_name, int num_blocks, - size_t sizeof_block); -PyAPI_FUNC(void) -_PyObject_DebugTypeStats(FILE *out); - -/* Define a pair of assertion macros: - _PyObject_ASSERT_FROM(), _PyObject_ASSERT_WITH_MSG() and _PyObject_ASSERT(). - - These work like the regular C assert(), in that they will abort the - process with a message on stderr if the given condition fails to hold, - but compile away to nothing if NDEBUG is defined. - - However, before aborting, Python will also try to call _PyObject_Dump() on - the given object. This may be of use when investigating bugs in which a - particular object is corrupt (e.g. buggy a tp_visit method in an extension - module breaking the garbage collector), to help locate the broken objects. - - The WITH_MSG variant allows you to supply an additional message that Python - will attempt to print to stderr, after the object dump. */ -#ifdef NDEBUG - /* No debugging: compile away the assertions: */ -# define _PyObject_ASSERT_FROM(obj, expr, msg, filename, lineno, func) \ - ((void)0) -#else - /* With debugging: generate checks: */ -# define _PyObject_ASSERT_FROM(obj, expr, msg, filename, lineno, func) \ - ((expr) \ - ? (void)(0) \ - : _PyObject_AssertFailed((obj), Py_STRINGIFY(expr), \ - (msg), (filename), (lineno), (func))) -#endif - -#define _PyObject_ASSERT_WITH_MSG(obj, expr, msg) \ - _PyObject_ASSERT_FROM(obj, expr, msg, __FILE__, __LINE__, __func__) -#define _PyObject_ASSERT(obj, expr) \ - _PyObject_ASSERT_WITH_MSG(obj, expr, NULL) - -#define _PyObject_ASSERT_FAILED_MSG(obj, msg) \ - _PyObject_AssertFailed((obj), NULL, (msg), __FILE__, __LINE__, __func__) - -/* Declare and define _PyObject_AssertFailed() even when NDEBUG is defined, - to avoid causing compiler/linker errors when building extensions without - NDEBUG against a Python built with NDEBUG defined. - - msg, expr and function can be NULL. */ -PyAPI_FUNC(void) _Py_NO_RETURN _PyObject_AssertFailed( - PyObject *obj, - const char *expr, - const char *msg, - const char *file, - int line, - const char *function); - -/* Check if an object is consistent. For example, ensure that the reference - counter is greater than or equal to 1, and ensure that ob_type is not NULL. - - Call _PyObject_AssertFailed() if the object is inconsistent. - - If check_content is zero, only check header fields: reduce the overhead. - - The function always return 1. The return value is just here to be able to - write: - - assert(_PyObject_CheckConsistency(obj, 1)); */ -PyAPI_FUNC(int) _PyObject_CheckConsistency( - PyObject *op, - int check_content); - - -/* Trashcan mechanism, thanks to Christian Tismer. - -When deallocating a container object, it's possible to trigger an unbounded -chain of deallocations, as each Py_DECREF in turn drops the refcount on "the -next" object in the chain to 0. This can easily lead to stack overflows, -especially in threads (which typically have less stack space to work with). - -A container object can avoid this by bracketing the body of its tp_dealloc -function with a pair of macros: - -static void -mytype_dealloc(mytype *p) -{ - ... declarations go here ... - - PyObject_GC_UnTrack(p); // must untrack first - Py_TRASHCAN_BEGIN(p, mytype_dealloc) - ... The body of the deallocator goes here, including all calls ... - ... to Py_DECREF on contained objects. ... - Py_TRASHCAN_END // there should be no code after this -} - -CAUTION: Never return from the middle of the body! If the body needs to -"get out early", put a label immediately before the Py_TRASHCAN_END -call, and goto it. Else the call-depth counter (see below) will stay -above 0 forever, and the trashcan will never get emptied. - -How it works: The BEGIN macro increments a call-depth counter. So long -as this counter is small, the body of the deallocator is run directly without -further ado. But if the counter gets large, it instead adds p to a list of -objects to be deallocated later, skips the body of the deallocator, and -resumes execution after the END macro. The tp_dealloc routine then returns -without deallocating anything (and so unbounded call-stack depth is avoided). - -When the call stack finishes unwinding again, code generated by the END macro -notices this, and calls another routine to deallocate all the objects that -may have been added to the list of deferred deallocations. In effect, a -chain of N deallocations is broken into (N-1)/(PyTrash_UNWIND_LEVEL-1) pieces, -with the call stack never exceeding a depth of PyTrash_UNWIND_LEVEL. - -Since the tp_dealloc of a subclass typically calls the tp_dealloc of the base -class, we need to ensure that the trashcan is only triggered on the tp_dealloc -of the actual class being deallocated. Otherwise we might end up with a -partially-deallocated object. To check this, the tp_dealloc function must be -passed as second argument to Py_TRASHCAN_BEGIN(). -*/ - -/* This is the old private API, invoked by the macros before 3.2.4. - Kept for binary compatibility of extensions using the stable ABI. */ -PyAPI_FUNC(void) _PyTrash_deposit_object(PyObject*); -PyAPI_FUNC(void) _PyTrash_destroy_chain(void); - -/* This is the old private API, invoked by the macros before 3.9. - Kept for binary compatibility of extensions using the stable ABI. */ -PyAPI_FUNC(void) _PyTrash_thread_deposit_object(PyObject*); -PyAPI_FUNC(void) _PyTrash_thread_destroy_chain(void); - -/* Forward declarations for PyThreadState */ -struct _ts; - -/* Python 3.9 private API, invoked by the macros below. */ -PyAPI_FUNC(int) _PyTrash_begin(struct _ts *tstate, PyObject *op); -PyAPI_FUNC(void) _PyTrash_end(struct _ts *tstate); -/* Python 3.10 private API, invoked by the Py_TRASHCAN_BEGIN(). */ -PyAPI_FUNC(int) _PyTrash_cond(PyObject *op, destructor dealloc); - -#define PyTrash_UNWIND_LEVEL 50 - -#define Py_TRASHCAN_BEGIN_CONDITION(op, cond) \ - do { \ - PyThreadState *_tstate = NULL; \ - /* If "cond" is false, then _tstate remains NULL and the deallocator \ - * is run normally without involving the trashcan */ \ - if (cond) { \ - _tstate = PyThreadState_Get(); \ - if (_PyTrash_begin(_tstate, _PyObject_CAST(op))) { \ - break; \ - } \ - } - /* The body of the deallocator is here. */ -#define Py_TRASHCAN_END \ - if (_tstate) { \ - _PyTrash_end(_tstate); \ - } \ - } while (0); - -#define Py_TRASHCAN_BEGIN(op, dealloc) \ - Py_TRASHCAN_BEGIN_CONDITION(op, \ - _PyTrash_cond(_PyObject_CAST(op), (destructor)dealloc)) - -/* For backwards compatibility, these macros enable the trashcan - * unconditionally */ -#define Py_TRASHCAN_SAFE_BEGIN(op) Py_TRASHCAN_BEGIN_CONDITION(op, 1) -#define Py_TRASHCAN_SAFE_END(op) Py_TRASHCAN_END diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/objimpl.h b/_Pre_Builds/_Python310_cpp/include/cpython/objimpl.h deleted file mode 100644 index d83700e..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/objimpl.h +++ /dev/null @@ -1,100 +0,0 @@ -#ifndef Py_CPYTHON_OBJIMPL_H -# error "this header file must not be included directly" -#endif - -#define _PyObject_SIZE(typeobj) ( (typeobj)->tp_basicsize ) - -/* _PyObject_VAR_SIZE returns the number of bytes (as size_t) allocated for a - vrbl-size object with nitems items, exclusive of gc overhead (if any). The - value is rounded up to the closest multiple of sizeof(void *), in order to - ensure that pointer fields at the end of the object are correctly aligned - for the platform (this is of special importance for subclasses of, e.g., - str or int, so that pointers can be stored after the embedded data). - - Note that there's no memory wastage in doing this, as malloc has to - return (at worst) pointer-aligned memory anyway. -*/ -#if ((SIZEOF_VOID_P - 1) & SIZEOF_VOID_P) != 0 -# error "_PyObject_VAR_SIZE requires SIZEOF_VOID_P be a power of 2" -#endif - -#define _PyObject_VAR_SIZE(typeobj, nitems) \ - _Py_SIZE_ROUND_UP((typeobj)->tp_basicsize + \ - (nitems)*(typeobj)->tp_itemsize, \ - SIZEOF_VOID_P) - - -/* This example code implements an object constructor with a custom - allocator, where PyObject_New is inlined, and shows the important - distinction between two steps (at least): - 1) the actual allocation of the object storage; - 2) the initialization of the Python specific fields - in this storage with PyObject_{Init, InitVar}. - - PyObject * - YourObject_New(...) - { - PyObject *op; - - op = (PyObject *) Your_Allocator(_PyObject_SIZE(YourTypeStruct)); - if (op == NULL) { - return PyErr_NoMemory(); - } - - PyObject_Init(op, &YourTypeStruct); - - op->ob_field = value; - ... - return op; - } - - Note that in C++, the use of the new operator usually implies that - the 1st step is performed automatically for you, so in a C++ class - constructor you would start directly with PyObject_Init/InitVar. */ - -/* This function returns the number of allocated memory blocks, regardless of size */ -PyAPI_FUNC(Py_ssize_t) _Py_GetAllocatedBlocks(void); - -/* Macros */ -#ifdef WITH_PYMALLOC -PyAPI_FUNC(int) _PyObject_DebugMallocStats(FILE *out); -#endif - - -typedef struct { - /* user context passed as the first argument to the 2 functions */ - void *ctx; - - /* allocate an arena of size bytes */ - void* (*alloc) (void *ctx, size_t size); - - /* free an arena */ - void (*free) (void *ctx, void *ptr, size_t size); -} PyObjectArenaAllocator; - -/* Get the arena allocator. */ -PyAPI_FUNC(void) PyObject_GetArenaAllocator(PyObjectArenaAllocator *allocator); - -/* Set the arena allocator. */ -PyAPI_FUNC(void) PyObject_SetArenaAllocator(PyObjectArenaAllocator *allocator); - - -/* Test if an object implements the garbage collector protocol */ -PyAPI_FUNC(int) PyObject_IS_GC(PyObject *obj); - - -/* Code built with Py_BUILD_CORE must include pycore_gc.h instead which - defines a different _PyGC_FINALIZED() macro. */ -#ifndef Py_BUILD_CORE - // Kept for backward compatibility with Python 3.8 -# define _PyGC_FINALIZED(o) PyObject_GC_IsFinalized(o) -#endif - -PyAPI_FUNC(PyObject *) _PyObject_GC_Malloc(size_t size); -PyAPI_FUNC(PyObject *) _PyObject_GC_Calloc(size_t size); - - -/* Test if a type supports weak references */ -#define PyType_SUPPORTS_WEAKREFS(t) ((t)->tp_weaklistoffset > 0) - -PyAPI_FUNC(PyObject **) PyObject_GET_WEAKREFS_LISTPTR(PyObject *op); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/odictobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/odictobject.h deleted file mode 100644 index e070413..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/odictobject.h +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef Py_ODICTOBJECT_H -#define Py_ODICTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* OrderedDict */ -/* This API is optional and mostly redundant. */ - -#ifndef Py_LIMITED_API - -typedef struct _odictobject PyODictObject; - -PyAPI_DATA(PyTypeObject) PyODict_Type; -PyAPI_DATA(PyTypeObject) PyODictIter_Type; -PyAPI_DATA(PyTypeObject) PyODictKeys_Type; -PyAPI_DATA(PyTypeObject) PyODictItems_Type; -PyAPI_DATA(PyTypeObject) PyODictValues_Type; - -#define PyODict_Check(op) PyObject_TypeCheck(op, &PyODict_Type) -#define PyODict_CheckExact(op) Py_IS_TYPE(op, &PyODict_Type) -#define PyODict_SIZE(op) PyDict_GET_SIZE((op)) - -PyAPI_FUNC(PyObject *) PyODict_New(void); -PyAPI_FUNC(int) PyODict_SetItem(PyObject *od, PyObject *key, PyObject *item); -PyAPI_FUNC(int) PyODict_DelItem(PyObject *od, PyObject *key); - -/* wrappers around PyDict* functions */ -#define PyODict_GetItem(od, key) PyDict_GetItem(_PyObject_CAST(od), key) -#define PyODict_GetItemWithError(od, key) \ - PyDict_GetItemWithError(_PyObject_CAST(od), key) -#define PyODict_Contains(od, key) PyDict_Contains(_PyObject_CAST(od), key) -#define PyODict_Size(od) PyDict_Size(_PyObject_CAST(od)) -#define PyODict_GetItemString(od, key) \ - PyDict_GetItemString(_PyObject_CAST(od), key) - -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ODICTOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/picklebufobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/picklebufobject.h deleted file mode 100644 index 0df2561..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/picklebufobject.h +++ /dev/null @@ -1,31 +0,0 @@ -/* PickleBuffer object. This is built-in for ease of use from third-party - * C extensions. - */ - -#ifndef Py_PICKLEBUFOBJECT_H -#define Py_PICKLEBUFOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API - -PyAPI_DATA(PyTypeObject) PyPickleBuffer_Type; - -#define PyPickleBuffer_Check(op) Py_IS_TYPE(op, &PyPickleBuffer_Type) - -/* Create a PickleBuffer redirecting to the given buffer-enabled object */ -PyAPI_FUNC(PyObject *) PyPickleBuffer_FromObject(PyObject *); -/* Get the PickleBuffer's underlying view to the original object - * (NULL if released) - */ -PyAPI_FUNC(const Py_buffer *) PyPickleBuffer_GetBuffer(PyObject *); -/* Release the PickleBuffer. Returns 0 on success, -1 on error. */ -PyAPI_FUNC(int) PyPickleBuffer_Release(PyObject *); - -#endif /* !Py_LIMITED_API */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PICKLEBUFOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/pyctype.h b/_Pre_Builds/_Python310_cpp/include/cpython/pyctype.h deleted file mode 100644 index 729d932..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/pyctype.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef PYCTYPE_H -#define PYCTYPE_H -#ifdef __cplusplus -extern "C" { -#endif - -#define PY_CTF_LOWER 0x01 -#define PY_CTF_UPPER 0x02 -#define PY_CTF_ALPHA (PY_CTF_LOWER|PY_CTF_UPPER) -#define PY_CTF_DIGIT 0x04 -#define PY_CTF_ALNUM (PY_CTF_ALPHA|PY_CTF_DIGIT) -#define PY_CTF_SPACE 0x08 -#define PY_CTF_XDIGIT 0x10 - -PyAPI_DATA(const unsigned int) _Py_ctype_table[256]; - -/* Unlike their C counterparts, the following macros are not meant to - * handle an int with any of the values [EOF, 0-UCHAR_MAX]. The argument - * must be a signed/unsigned char. */ -#define Py_ISLOWER(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_LOWER) -#define Py_ISUPPER(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_UPPER) -#define Py_ISALPHA(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_ALPHA) -#define Py_ISDIGIT(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_DIGIT) -#define Py_ISXDIGIT(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_XDIGIT) -#define Py_ISALNUM(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_ALNUM) -#define Py_ISSPACE(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_SPACE) - -PyAPI_DATA(const unsigned char) _Py_ctype_tolower[256]; -PyAPI_DATA(const unsigned char) _Py_ctype_toupper[256]; - -#define Py_TOLOWER(c) (_Py_ctype_tolower[Py_CHARMASK(c)]) -#define Py_TOUPPER(c) (_Py_ctype_toupper[Py_CHARMASK(c)]) - -#ifdef __cplusplus -} -#endif -#endif /* !PYCTYPE_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/pydebug.h b/_Pre_Builds/_Python310_cpp/include/cpython/pydebug.h deleted file mode 100644 index 78bcb11..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/pydebug.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_PYDEBUG_H -#define Py_PYDEBUG_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(int) Py_DebugFlag; -PyAPI_DATA(int) Py_VerboseFlag; -PyAPI_DATA(int) Py_QuietFlag; -PyAPI_DATA(int) Py_InteractiveFlag; -PyAPI_DATA(int) Py_InspectFlag; -PyAPI_DATA(int) Py_OptimizeFlag; -PyAPI_DATA(int) Py_NoSiteFlag; -PyAPI_DATA(int) Py_BytesWarningFlag; -PyAPI_DATA(int) Py_FrozenFlag; -PyAPI_DATA(int) Py_IgnoreEnvironmentFlag; -PyAPI_DATA(int) Py_DontWriteBytecodeFlag; -PyAPI_DATA(int) Py_NoUserSiteDirectory; -PyAPI_DATA(int) Py_UnbufferedStdioFlag; -PyAPI_DATA(int) Py_HashRandomizationFlag; -PyAPI_DATA(int) Py_IsolatedFlag; - -#ifdef MS_WINDOWS -PyAPI_DATA(int) Py_LegacyWindowsFSEncodingFlag; -PyAPI_DATA(int) Py_LegacyWindowsStdioFlag; -#endif - -/* this is a wrapper around getenv() that pays attention to - Py_IgnoreEnvironmentFlag. It should be used for getting variables like - PYTHONPATH and PYTHONHOME from the environment */ -#define Py_GETENV(s) (Py_IgnoreEnvironmentFlag ? NULL : getenv(s)) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYDEBUG_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/pyerrors.h b/_Pre_Builds/_Python310_cpp/include/cpython/pyerrors.h deleted file mode 100644 index 3f95245..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/pyerrors.h +++ /dev/null @@ -1,214 +0,0 @@ -#ifndef Py_CPYTHON_ERRORS_H -# error "this header file must not be included directly" -#endif - -/* Error objects */ - -/* PyException_HEAD defines the initial segment of every exception class. */ -#define PyException_HEAD PyObject_HEAD PyObject *dict;\ - PyObject *args; PyObject *traceback;\ - PyObject *context; PyObject *cause;\ - char suppress_context; - -typedef struct { - PyException_HEAD -} PyBaseExceptionObject; - -typedef struct { - PyException_HEAD - PyObject *msg; - PyObject *filename; - PyObject *lineno; - PyObject *offset; - PyObject *end_lineno; - PyObject *end_offset; - PyObject *text; - PyObject *print_file_and_line; -} PySyntaxErrorObject; - -typedef struct { - PyException_HEAD - PyObject *msg; - PyObject *name; - PyObject *path; -} PyImportErrorObject; - -typedef struct { - PyException_HEAD - PyObject *encoding; - PyObject *object; - Py_ssize_t start; - Py_ssize_t end; - PyObject *reason; -} PyUnicodeErrorObject; - -typedef struct { - PyException_HEAD - PyObject *code; -} PySystemExitObject; - -typedef struct { - PyException_HEAD - PyObject *myerrno; - PyObject *strerror; - PyObject *filename; - PyObject *filename2; -#ifdef MS_WINDOWS - PyObject *winerror; -#endif - Py_ssize_t written; /* only for BlockingIOError, -1 otherwise */ -} PyOSErrorObject; - -typedef struct { - PyException_HEAD - PyObject *value; -} PyStopIterationObject; - -typedef struct { - PyException_HEAD - PyObject *name; -} PyNameErrorObject; - -typedef struct { - PyException_HEAD - PyObject *obj; - PyObject *name; -} PyAttributeErrorObject; - -/* Compatibility typedefs */ -typedef PyOSErrorObject PyEnvironmentErrorObject; -#ifdef MS_WINDOWS -typedef PyOSErrorObject PyWindowsErrorObject; -#endif - -/* Error handling definitions */ - -PyAPI_FUNC(void) _PyErr_SetKeyError(PyObject *); -PyAPI_FUNC(_PyErr_StackItem*) _PyErr_GetTopmostException(PyThreadState *tstate); -PyAPI_FUNC(void) _PyErr_GetExcInfo(PyThreadState *, PyObject **, PyObject **, PyObject **); - -/* Context manipulation (PEP 3134) */ - -PyAPI_FUNC(void) _PyErr_ChainExceptions(PyObject *, PyObject *, PyObject *); - -/* Convenience functions */ - -#ifdef MS_WINDOWS -Py_DEPRECATED(3.3) -PyAPI_FUNC(PyObject *) PyErr_SetFromErrnoWithUnicodeFilename( - PyObject *, const Py_UNICODE *); -#endif /* MS_WINDOWS */ - -/* Like PyErr_Format(), but saves current exception as __context__ and - __cause__. - */ -PyAPI_FUNC(PyObject *) _PyErr_FormatFromCause( - PyObject *exception, - const char *format, /* ASCII-encoded string */ - ... - ); - -#ifdef MS_WINDOWS -/* XXX redeclare to use WSTRING */ -Py_DEPRECATED(3.3) -PyAPI_FUNC(PyObject *) PyErr_SetFromWindowsErrWithUnicodeFilename( - int, const Py_UNICODE *); -Py_DEPRECATED(3.3) -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErrWithUnicodeFilename( - PyObject *,int, const Py_UNICODE *); -#endif - -/* In exceptions.c */ - -/* Helper that attempts to replace the current exception with one of the - * same type but with a prefix added to the exception text. The resulting - * exception description looks like: - * - * prefix (exc_type: original_exc_str) - * - * Only some exceptions can be safely replaced. If the function determines - * it isn't safe to perform the replacement, it will leave the original - * unmodified exception in place. - * - * Returns a borrowed reference to the new exception (if any), NULL if the - * existing exception was left in place. - */ -PyAPI_FUNC(PyObject *) _PyErr_TrySetFromCause( - const char *prefix_format, /* ASCII-encoded string */ - ... - ); - -/* In signalmodule.c */ - -int PySignal_SetWakeupFd(int fd); -PyAPI_FUNC(int) _PyErr_CheckSignals(void); - -/* Support for adding program text to SyntaxErrors */ - -PyAPI_FUNC(void) PyErr_SyntaxLocationObject( - PyObject *filename, - int lineno, - int col_offset); - -PyAPI_FUNC(void) PyErr_RangedSyntaxLocationObject( - PyObject *filename, - int lineno, - int col_offset, - int end_lineno, - int end_col_offset); - -PyAPI_FUNC(PyObject *) PyErr_ProgramTextObject( - PyObject *filename, - int lineno); - -/* Create a UnicodeEncodeError object. - * - * TODO: This API will be removed in Python 3.11. - */ -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject *) PyUnicodeEncodeError_Create( - const char *encoding, /* UTF-8 encoded string */ - const Py_UNICODE *object, - Py_ssize_t length, - Py_ssize_t start, - Py_ssize_t end, - const char *reason /* UTF-8 encoded string */ - ); - -/* Create a UnicodeTranslateError object. - * - * TODO: This API will be removed in Python 3.11. - */ -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject *) PyUnicodeTranslateError_Create( - const Py_UNICODE *object, - Py_ssize_t length, - Py_ssize_t start, - Py_ssize_t end, - const char *reason /* UTF-8 encoded string */ - ); - -PyAPI_FUNC(PyObject *) _PyErr_ProgramDecodedTextObject( - PyObject *filename, - int lineno, - const char* encoding); - -PyAPI_FUNC(PyObject *) _PyUnicodeTranslateError_Create( - PyObject *object, - Py_ssize_t start, - Py_ssize_t end, - const char *reason /* UTF-8 encoded string */ - ); - -PyAPI_FUNC(void) _PyErr_WriteUnraisableMsg( - const char *err_msg, - PyObject *obj); - -PyAPI_FUNC(void) _Py_NO_RETURN _Py_FatalErrorFunc( - const char *func, - const char *message); - -PyAPI_FUNC(void) _Py_NO_RETURN _Py_FatalErrorFormat( - const char *func, - const char *format, - ...); - -#define Py_FatalError(message) _Py_FatalErrorFunc(__func__, message) diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/pyfpe.h b/_Pre_Builds/_Python310_cpp/include/cpython/pyfpe.h deleted file mode 100644 index cc2def6..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/pyfpe.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef Py_PYFPE_H -#define Py_PYFPE_H -/* Header excluded from the stable API */ -#ifndef Py_LIMITED_API - -/* These macros used to do something when Python was built with --with-fpectl, - * but support for that was dropped in 3.7. We continue to define them though, - * to avoid breaking API users. - */ - -#define PyFPE_START_PROTECT(err_string, leave_stmt) -#define PyFPE_END_PROTECT(v) - -#endif /* !defined(Py_LIMITED_API) */ -#endif /* !Py_PYFPE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/pylifecycle.h b/_Pre_Builds/_Python310_cpp/include/cpython/pylifecycle.h deleted file mode 100644 index 5faeb35..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/pylifecycle.h +++ /dev/null @@ -1,64 +0,0 @@ -#ifndef Py_CPYTHON_PYLIFECYCLE_H -# error "this header file must not be included directly" -#endif - -/* Py_FrozenMain is kept out of the Limited API until documented and present - in all builds of Python */ -PyAPI_FUNC(int) Py_FrozenMain(int argc, char **argv); - -/* Only used by applications that embed the interpreter and need to - * override the standard encoding determination mechanism - */ -PyAPI_FUNC(int) Py_SetStandardStreamEncoding(const char *encoding, - const char *errors); - -/* PEP 432 Multi-phase initialization API (Private while provisional!) */ - -PyAPI_FUNC(PyStatus) Py_PreInitialize( - const PyPreConfig *src_config); -PyAPI_FUNC(PyStatus) Py_PreInitializeFromBytesArgs( - const PyPreConfig *src_config, - Py_ssize_t argc, - char **argv); -PyAPI_FUNC(PyStatus) Py_PreInitializeFromArgs( - const PyPreConfig *src_config, - Py_ssize_t argc, - wchar_t **argv); - -PyAPI_FUNC(int) _Py_IsCoreInitialized(void); - - -/* Initialization and finalization */ - -PyAPI_FUNC(PyStatus) Py_InitializeFromConfig( - const PyConfig *config); -PyAPI_FUNC(PyStatus) _Py_InitializeMain(void); - -PyAPI_FUNC(int) Py_RunMain(void); - - -PyAPI_FUNC(void) _Py_NO_RETURN Py_ExitStatusException(PyStatus err); - -/* Restore signals that the interpreter has called SIG_IGN on to SIG_DFL. */ -PyAPI_FUNC(void) _Py_RestoreSignals(void); - -PyAPI_FUNC(int) Py_FdIsInteractive(FILE *, const char *); -PyAPI_FUNC(int) _Py_FdIsInteractive(FILE *fp, PyObject *filename); - -PyAPI_FUNC(void) _Py_SetProgramFullPath(const wchar_t *); - -PyAPI_FUNC(const char *) _Py_gitidentifier(void); -PyAPI_FUNC(const char *) _Py_gitversion(void); - -PyAPI_FUNC(int) _Py_IsFinalizing(void); - -/* Random */ -PyAPI_FUNC(int) _PyOS_URandom(void *buffer, Py_ssize_t size); -PyAPI_FUNC(int) _PyOS_URandomNonblock(void *buffer, Py_ssize_t size); - -/* Legacy locale support */ -PyAPI_FUNC(int) _Py_CoerceLegacyLocale(int warn); -PyAPI_FUNC(int) _Py_LegacyLocaleDetected(int warn); -PyAPI_FUNC(char *) _Py_SetLocaleFromEnv(int category); - -PyAPI_FUNC(PyThreadState *) _Py_NewInterpreter(int isolated_subinterpreter); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/pymem.h b/_Pre_Builds/_Python310_cpp/include/cpython/pymem.h deleted file mode 100644 index d1054d7..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/pymem.h +++ /dev/null @@ -1,98 +0,0 @@ -#ifndef Py_CPYTHON_PYMEM_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(void *) PyMem_RawMalloc(size_t size); -PyAPI_FUNC(void *) PyMem_RawCalloc(size_t nelem, size_t elsize); -PyAPI_FUNC(void *) PyMem_RawRealloc(void *ptr, size_t new_size); -PyAPI_FUNC(void) PyMem_RawFree(void *ptr); - -/* Try to get the allocators name set by _PyMem_SetupAllocators(). */ -PyAPI_FUNC(const char*) _PyMem_GetCurrentAllocatorName(void); - -/* strdup() using PyMem_RawMalloc() */ -PyAPI_FUNC(char *) _PyMem_RawStrdup(const char *str); - -/* strdup() using PyMem_Malloc() */ -PyAPI_FUNC(char *) _PyMem_Strdup(const char *str); - -/* wcsdup() using PyMem_RawMalloc() */ -PyAPI_FUNC(wchar_t*) _PyMem_RawWcsdup(const wchar_t *str); - - -typedef enum { - /* PyMem_RawMalloc(), PyMem_RawRealloc() and PyMem_RawFree() */ - PYMEM_DOMAIN_RAW, - - /* PyMem_Malloc(), PyMem_Realloc() and PyMem_Free() */ - PYMEM_DOMAIN_MEM, - - /* PyObject_Malloc(), PyObject_Realloc() and PyObject_Free() */ - PYMEM_DOMAIN_OBJ -} PyMemAllocatorDomain; - -typedef enum { - PYMEM_ALLOCATOR_NOT_SET = 0, - PYMEM_ALLOCATOR_DEFAULT = 1, - PYMEM_ALLOCATOR_DEBUG = 2, - PYMEM_ALLOCATOR_MALLOC = 3, - PYMEM_ALLOCATOR_MALLOC_DEBUG = 4, -#ifdef WITH_PYMALLOC - PYMEM_ALLOCATOR_PYMALLOC = 5, - PYMEM_ALLOCATOR_PYMALLOC_DEBUG = 6, -#endif -} PyMemAllocatorName; - - -typedef struct { - /* user context passed as the first argument to the 4 functions */ - void *ctx; - - /* allocate a memory block */ - void* (*malloc) (void *ctx, size_t size); - - /* allocate a memory block initialized by zeros */ - void* (*calloc) (void *ctx, size_t nelem, size_t elsize); - - /* allocate or resize a memory block */ - void* (*realloc) (void *ctx, void *ptr, size_t new_size); - - /* release a memory block */ - void (*free) (void *ctx, void *ptr); -} PyMemAllocatorEx; - -/* Get the memory block allocator of the specified domain. */ -PyAPI_FUNC(void) PyMem_GetAllocator(PyMemAllocatorDomain domain, - PyMemAllocatorEx *allocator); - -/* Set the memory block allocator of the specified domain. - - The new allocator must return a distinct non-NULL pointer when requesting - zero bytes. - - For the PYMEM_DOMAIN_RAW domain, the allocator must be thread-safe: the GIL - is not held when the allocator is called. - - If the new allocator is not a hook (don't call the previous allocator), the - PyMem_SetupDebugHooks() function must be called to reinstall the debug hooks - on top on the new allocator. */ -PyAPI_FUNC(void) PyMem_SetAllocator(PyMemAllocatorDomain domain, - PyMemAllocatorEx *allocator); - -/* Setup hooks to detect bugs in the following Python memory allocator - functions: - - - PyMem_RawMalloc(), PyMem_RawRealloc(), PyMem_RawFree() - - PyMem_Malloc(), PyMem_Realloc(), PyMem_Free() - - PyObject_Malloc(), PyObject_Realloc() and PyObject_Free() - - Newly allocated memory is filled with the byte 0xCB, freed memory is filled - with the byte 0xDB. Additional checks: - - - detect API violations, ex: PyObject_Free() called on a buffer allocated - by PyMem_Malloc() - - detect write before the start of the buffer (buffer underflow) - - detect write after the end of the buffer (buffer overflow) - - The function does nothing if Python is not compiled is debug mode. */ -PyAPI_FUNC(void) PyMem_SetupDebugHooks(void); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/pystate.h b/_Pre_Builds/_Python310_cpp/include/cpython/pystate.h deleted file mode 100644 index 7c995b9..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/pystate.h +++ /dev/null @@ -1,305 +0,0 @@ -#ifndef Py_CPYTHON_PYSTATE_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(int) _PyInterpreterState_RequiresIDRef(PyInterpreterState *); -PyAPI_FUNC(void) _PyInterpreterState_RequireIDRef(PyInterpreterState *, int); - -PyAPI_FUNC(PyObject *) _PyInterpreterState_GetMainModule(PyInterpreterState *); - -/* State unique per thread */ - -/* Py_tracefunc return -1 when raising an exception, or 0 for success. */ -typedef int (*Py_tracefunc)(PyObject *, PyFrameObject *, int, PyObject *); - -/* The following values are used for 'what' for tracefunc functions - * - * To add a new kind of trace event, also update "trace_init" in - * Python/sysmodule.c to define the Python level event name - */ -#define PyTrace_CALL 0 -#define PyTrace_EXCEPTION 1 -#define PyTrace_LINE 2 -#define PyTrace_RETURN 3 -#define PyTrace_C_CALL 4 -#define PyTrace_C_EXCEPTION 5 -#define PyTrace_C_RETURN 6 -#define PyTrace_OPCODE 7 - - -typedef struct _cframe { - /* This struct will be threaded through the C stack - * allowing fast access to per-thread state that needs - * to be accessed quickly by the interpreter, but can - * be modified outside of the interpreter. - * - * WARNING: This makes data on the C stack accessible from - * heap objects. Care must be taken to maintain stack - * discipline and make sure that instances of this struct cannot - * accessed outside of their lifetime. - */ - int use_tracing; - struct _cframe *previous; -} CFrame; - -typedef struct _err_stackitem { - /* This struct represents an entry on the exception stack, which is a - * per-coroutine state. (Coroutine in the computer science sense, - * including the thread and generators). - * This ensures that the exception state is not impacted by "yields" - * from an except handler. - */ - PyObject *exc_type, *exc_value, *exc_traceback; - - struct _err_stackitem *previous_item; - -} _PyErr_StackItem; - - -// The PyThreadState typedef is in Include/pystate.h. -struct _ts { - /* See Python/ceval.c for comments explaining most fields */ - - struct _ts *prev; - struct _ts *next; - PyInterpreterState *interp; - - /* Borrowed reference to the current frame (it can be NULL) */ - PyFrameObject *frame; - int recursion_depth; - int recursion_headroom; /* Allow 50 more calls to handle any errors. */ - int stackcheck_counter; - - /* 'tracing' keeps track of the execution depth when tracing/profiling. - This is to prevent the actual trace/profile code from being recorded in - the trace/profile. */ - int tracing; - - /* Pointer to current CFrame in the C stack frame of the currently, - * or most recently, executing _PyEval_EvalFrameDefault. */ - CFrame *cframe; - - Py_tracefunc c_profilefunc; - Py_tracefunc c_tracefunc; - PyObject *c_profileobj; - PyObject *c_traceobj; - - /* The exception currently being raised */ - PyObject *curexc_type; - PyObject *curexc_value; - PyObject *curexc_traceback; - - /* The exception currently being handled, if no coroutines/generators - * are present. Always last element on the stack referred to be exc_info. - */ - _PyErr_StackItem exc_state; - - /* Pointer to the top of the stack of the exceptions currently - * being handled */ - _PyErr_StackItem *exc_info; - - PyObject *dict; /* Stores per-thread state */ - - int gilstate_counter; - - PyObject *async_exc; /* Asynchronous exception to raise */ - unsigned long thread_id; /* Thread id where this tstate was created */ - - int trash_delete_nesting; - PyObject *trash_delete_later; - - /* Called when a thread state is deleted normally, but not when it - * is destroyed after fork(). - * Pain: to prevent rare but fatal shutdown errors (issue 18808), - * Thread.join() must wait for the join'ed thread's tstate to be unlinked - * from the tstate chain. That happens at the end of a thread's life, - * in pystate.c. - * The obvious way doesn't quite work: create a lock which the tstate - * unlinking code releases, and have Thread.join() wait to acquire that - * lock. The problem is that we _are_ at the end of the thread's life: - * if the thread holds the last reference to the lock, decref'ing the - * lock will delete the lock, and that may trigger arbitrary Python code - * if there's a weakref, with a callback, to the lock. But by this time - * _PyRuntime.gilstate.tstate_current is already NULL, so only the simplest - * of C code can be allowed to run (in particular it must not be possible to - * release the GIL). - * So instead of holding the lock directly, the tstate holds a weakref to - * the lock: that's the value of on_delete_data below. Decref'ing a - * weakref is harmless. - * on_delete points to _threadmodule.c's static release_sentinel() function. - * After the tstate is unlinked, release_sentinel is called with the - * weakref-to-lock (on_delete_data) argument, and release_sentinel releases - * the indirectly held lock. - */ - void (*on_delete)(void *); - void *on_delete_data; - - int coroutine_origin_tracking_depth; - - PyObject *async_gen_firstiter; - PyObject *async_gen_finalizer; - - PyObject *context; - uint64_t context_ver; - - /* Unique thread state id. */ - uint64_t id; - - CFrame root_cframe; - - /* XXX signal handlers should also be here */ - -}; - -// Alias for backward compatibility with Python 3.8 -#define _PyInterpreterState_Get PyInterpreterState_Get - -PyAPI_FUNC(PyThreadState *) _PyThreadState_Prealloc(PyInterpreterState *); - -/* Similar to PyThreadState_Get(), but don't issue a fatal error - * if it is NULL. */ -PyAPI_FUNC(PyThreadState *) _PyThreadState_UncheckedGet(void); - -PyAPI_FUNC(PyObject *) _PyThreadState_GetDict(PyThreadState *tstate); - -/* PyGILState */ - -/* Helper/diagnostic function - return 1 if the current thread - currently holds the GIL, 0 otherwise. - - The function returns 1 if _PyGILState_check_enabled is non-zero. */ -PyAPI_FUNC(int) PyGILState_Check(void); - -/* Get the single PyInterpreterState used by this process' GILState - implementation. - - This function doesn't check for error. Return NULL before _PyGILState_Init() - is called and after _PyGILState_Fini() is called. - - See also _PyInterpreterState_Get() and _PyInterpreterState_GET(). */ -PyAPI_FUNC(PyInterpreterState *) _PyGILState_GetInterpreterStateUnsafe(void); - -/* The implementation of sys._current_frames() Returns a dict mapping - thread id to that thread's current frame. -*/ -PyAPI_FUNC(PyObject *) _PyThread_CurrentFrames(void); - -/* The implementation of sys._current_exceptions() Returns a dict mapping - thread id to that thread's current exception. -*/ -PyAPI_FUNC(PyObject *) _PyThread_CurrentExceptions(void); - -/* Routines for advanced debuggers, requested by David Beazley. - Don't use unless you know what you are doing! */ -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Main(void); -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Head(void); -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Next(PyInterpreterState *); -PyAPI_FUNC(PyThreadState *) PyInterpreterState_ThreadHead(PyInterpreterState *); -PyAPI_FUNC(PyThreadState *) PyThreadState_Next(PyThreadState *); -PyAPI_FUNC(void) PyThreadState_DeleteCurrent(void); - -/* Frame evaluation API */ - -typedef PyObject* (*_PyFrameEvalFunction)(PyThreadState *tstate, PyFrameObject *, int); - -PyAPI_FUNC(_PyFrameEvalFunction) _PyInterpreterState_GetEvalFrameFunc( - PyInterpreterState *interp); -PyAPI_FUNC(void) _PyInterpreterState_SetEvalFrameFunc( - PyInterpreterState *interp, - _PyFrameEvalFunction eval_frame); - -PyAPI_FUNC(const PyConfig*) _PyInterpreterState_GetConfig(PyInterpreterState *interp); - -/* Get a copy of the current interpreter configuration. - - Return 0 on success. Raise an exception and return -1 on error. - - The caller must initialize 'config', using PyConfig_InitPythonConfig() - for example. - - Python must be preinitialized to call this method. - The caller must hold the GIL. */ -PyAPI_FUNC(int) _PyInterpreterState_GetConfigCopy( - struct PyConfig *config); - -/* Set the configuration of the current interpreter. - - This function should be called during or just after the Python - initialization. - - Update the sys module with the new configuration. If the sys module was - modified directly after the Python initialization, these changes are lost. - - Some configuration like faulthandler or warnoptions can be updated in the - configuration, but don't reconfigure Python (don't enable/disable - faulthandler and don't reconfigure warnings filters). - - Return 0 on success. Raise an exception and return -1 on error. - - The configuration should come from _PyInterpreterState_GetConfigCopy(). */ -PyAPI_FUNC(int) _PyInterpreterState_SetConfig( - const struct PyConfig *config); - -// Get the configuration of the current interpreter. -// The caller must hold the GIL. -PyAPI_FUNC(const PyConfig*) _Py_GetConfig(void); - - -/* cross-interpreter data */ - -struct _xid; - -// _PyCrossInterpreterData is similar to Py_buffer as an effectively -// opaque struct that holds data outside the object machinery. This -// is necessary to pass safely between interpreters in the same process. -typedef struct _xid { - // data is the cross-interpreter-safe derivation of a Python object - // (see _PyObject_GetCrossInterpreterData). It will be NULL if the - // new_object func (below) encodes the data. - void *data; - // obj is the Python object from which the data was derived. This - // is non-NULL only if the data remains bound to the object in some - // way, such that the object must be "released" (via a decref) when - // the data is released. In that case the code that sets the field, - // likely a registered "crossinterpdatafunc", is responsible for - // ensuring it owns the reference (i.e. incref). - PyObject *obj; - // interp is the ID of the owning interpreter of the original - // object. It corresponds to the active interpreter when - // _PyObject_GetCrossInterpreterData() was called. This should only - // be set by the cross-interpreter machinery. - // - // We use the ID rather than the PyInterpreterState to avoid issues - // with deleted interpreters. Note that IDs are never re-used, so - // each one will always correspond to a specific interpreter - // (whether still alive or not). - int64_t interp; - // new_object is a function that returns a new object in the current - // interpreter given the data. The resulting object (a new - // reference) will be equivalent to the original object. This field - // is required. - PyObject *(*new_object)(struct _xid *); - // free is called when the data is released. If it is NULL then - // nothing will be done to free the data. For some types this is - // okay (e.g. bytes) and for those types this field should be set - // to NULL. However, for most the data was allocated just for - // cross-interpreter use, so it must be freed when - // _PyCrossInterpreterData_Release is called or the memory will - // leak. In that case, at the very least this field should be set - // to PyMem_RawFree (the default if not explicitly set to NULL). - // The call will happen with the original interpreter activated. - void (*free)(void *); -} _PyCrossInterpreterData; - -PyAPI_FUNC(int) _PyObject_GetCrossInterpreterData(PyObject *, _PyCrossInterpreterData *); -PyAPI_FUNC(PyObject *) _PyCrossInterpreterData_NewObject(_PyCrossInterpreterData *); -PyAPI_FUNC(void) _PyCrossInterpreterData_Release(_PyCrossInterpreterData *); - -PyAPI_FUNC(int) _PyObject_CheckCrossInterpreterData(PyObject *); - -/* cross-interpreter data registry */ - -typedef int (*crossinterpdatafunc)(PyObject *, struct _xid *); - -PyAPI_FUNC(int) _PyCrossInterpreterData_RegisterClass(PyTypeObject *, crossinterpdatafunc); -PyAPI_FUNC(crossinterpdatafunc) _PyCrossInterpreterData_Lookup(PyObject *); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/pythonrun.h b/_Pre_Builds/_Python310_cpp/include/cpython/pythonrun.h deleted file mode 100644 index 2e72d08..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/pythonrun.h +++ /dev/null @@ -1,121 +0,0 @@ -#ifndef Py_CPYTHON_PYTHONRUN_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(int) PyRun_SimpleStringFlags(const char *, PyCompilerFlags *); -PyAPI_FUNC(int) _PyRun_SimpleFileObject( - FILE *fp, - PyObject *filename, - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_AnyFileExFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) _PyRun_AnyFileObject( - FILE *fp, - PyObject *filename, - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_SimpleFileExFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_InteractiveOneFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_InteractiveOneObject( - FILE *fp, - PyObject *filename, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_InteractiveLoopFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - PyCompilerFlags *flags); -PyAPI_FUNC(int) _PyRun_InteractiveLoopObject( - FILE *fp, - PyObject *filename, - PyCompilerFlags *flags); - - -PyAPI_FUNC(PyObject *) PyRun_StringFlags(const char *, int, PyObject *, - PyObject *, PyCompilerFlags *); - -PyAPI_FUNC(PyObject *) PyRun_FileExFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - int start, - PyObject *globals, - PyObject *locals, - int closeit, - PyCompilerFlags *flags); - - -PyAPI_FUNC(PyObject *) Py_CompileStringExFlags( - const char *str, - const char *filename, /* decoded from the filesystem encoding */ - int start, - PyCompilerFlags *flags, - int optimize); -PyAPI_FUNC(PyObject *) Py_CompileStringObject( - const char *str, - PyObject *filename, int start, - PyCompilerFlags *flags, - int optimize); - -#define Py_CompileString(str, p, s) Py_CompileStringExFlags(str, p, s, NULL, -1) -#define Py_CompileStringFlags(str, p, s, f) Py_CompileStringExFlags(str, p, s, f, -1) - - -PyAPI_FUNC(const char *) _Py_SourceAsString( - PyObject *cmd, - const char *funcname, - const char *what, - PyCompilerFlags *cf, - PyObject **cmd_copy); - - -/* A function flavor is also exported by libpython. It is required when - libpython is accessed directly rather than using header files which defines - macros below. On Windows, for example, PyAPI_FUNC() uses dllexport to - export functions in pythonXX.dll. */ -PyAPI_FUNC(PyObject *) PyRun_String(const char *str, int s, PyObject *g, PyObject *l); -PyAPI_FUNC(int) PyRun_AnyFile(FILE *fp, const char *name); -PyAPI_FUNC(int) PyRun_AnyFileEx(FILE *fp, const char *name, int closeit); -PyAPI_FUNC(int) PyRun_AnyFileFlags(FILE *, const char *, PyCompilerFlags *); -PyAPI_FUNC(int) PyRun_SimpleString(const char *s); -PyAPI_FUNC(int) PyRun_SimpleFile(FILE *f, const char *p); -PyAPI_FUNC(int) PyRun_SimpleFileEx(FILE *f, const char *p, int c); -PyAPI_FUNC(int) PyRun_InteractiveOne(FILE *f, const char *p); -PyAPI_FUNC(int) PyRun_InteractiveLoop(FILE *f, const char *p); -PyAPI_FUNC(PyObject *) PyRun_File(FILE *fp, const char *p, int s, PyObject *g, PyObject *l); -PyAPI_FUNC(PyObject *) PyRun_FileEx(FILE *fp, const char *p, int s, PyObject *g, PyObject *l, int c); -PyAPI_FUNC(PyObject *) PyRun_FileFlags(FILE *fp, const char *p, int s, PyObject *g, PyObject *l, PyCompilerFlags *flags); - -/* Use macros for a bunch of old variants */ -#define PyRun_String(str, s, g, l) PyRun_StringFlags(str, s, g, l, NULL) -#define PyRun_AnyFile(fp, name) PyRun_AnyFileExFlags(fp, name, 0, NULL) -#define PyRun_AnyFileEx(fp, name, closeit) \ - PyRun_AnyFileExFlags(fp, name, closeit, NULL) -#define PyRun_AnyFileFlags(fp, name, flags) \ - PyRun_AnyFileExFlags(fp, name, 0, flags) -#define PyRun_SimpleString(s) PyRun_SimpleStringFlags(s, NULL) -#define PyRun_SimpleFile(f, p) PyRun_SimpleFileExFlags(f, p, 0, NULL) -#define PyRun_SimpleFileEx(f, p, c) PyRun_SimpleFileExFlags(f, p, c, NULL) -#define PyRun_InteractiveOne(f, p) PyRun_InteractiveOneFlags(f, p, NULL) -#define PyRun_InteractiveLoop(f, p) PyRun_InteractiveLoopFlags(f, p, NULL) -#define PyRun_File(fp, p, s, g, l) \ - PyRun_FileExFlags(fp, p, s, g, l, 0, NULL) -#define PyRun_FileEx(fp, p, s, g, l, c) \ - PyRun_FileExFlags(fp, p, s, g, l, c, NULL) -#define PyRun_FileFlags(fp, p, s, g, l, flags) \ - PyRun_FileExFlags(fp, p, s, g, l, 0, flags) - - -/* Stuff with no proper home (yet) */ -PyAPI_FUNC(char *) PyOS_Readline(FILE *, FILE *, const char *); -PyAPI_DATA(PyThreadState*) _PyOS_ReadlineTState; -PyAPI_DATA(char) *(*PyOS_ReadlineFunctionPointer)(FILE *, FILE *, const char *); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/pytime.h b/_Pre_Builds/_Python310_cpp/include/cpython/pytime.h deleted file mode 100644 index 754c7f4..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/pytime.h +++ /dev/null @@ -1,247 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_PYTIME_H -#define Py_PYTIME_H - -/************************************************************************** -Symbols and macros to supply platform-independent interfaces to time related -functions and constants -**************************************************************************/ -#ifdef __cplusplus -extern "C" { -#endif - -/* _PyTime_t: Python timestamp with subsecond precision. It can be used to - store a duration, and so indirectly a date (related to another date, like - UNIX epoch). */ -typedef int64_t _PyTime_t; -#define _PyTime_MIN INT64_MIN -#define _PyTime_MAX INT64_MAX - -typedef enum { - /* Round towards minus infinity (-inf). - For example, used to read a clock. */ - _PyTime_ROUND_FLOOR=0, - /* Round towards infinity (+inf). - For example, used for timeout to wait "at least" N seconds. */ - _PyTime_ROUND_CEILING=1, - /* Round to nearest with ties going to nearest even integer. - For example, used to round from a Python float. */ - _PyTime_ROUND_HALF_EVEN=2, - /* Round away from zero - For example, used for timeout. _PyTime_ROUND_CEILING rounds - -1e-9 to 0 milliseconds which causes bpo-31786 issue. - _PyTime_ROUND_UP rounds -1e-9 to -1 millisecond which keeps - the timeout sign as expected. select.poll(timeout) must block - for negative values." */ - _PyTime_ROUND_UP=3, - /* _PyTime_ROUND_TIMEOUT (an alias for _PyTime_ROUND_UP) should be - used for timeouts. */ - _PyTime_ROUND_TIMEOUT = _PyTime_ROUND_UP -} _PyTime_round_t; - - -/* Convert a time_t to a PyLong. */ -PyAPI_FUNC(PyObject *) _PyLong_FromTime_t( - time_t sec); - -/* Convert a PyLong to a time_t. */ -PyAPI_FUNC(time_t) _PyLong_AsTime_t( - PyObject *obj); - -/* Convert a number of seconds, int or float, to time_t. */ -PyAPI_FUNC(int) _PyTime_ObjectToTime_t( - PyObject *obj, - time_t *sec, - _PyTime_round_t); - -/* Convert a number of seconds, int or float, to a timeval structure. - usec is in the range [0; 999999] and rounded towards zero. - For example, -1.2 is converted to (-2, 800000). */ -PyAPI_FUNC(int) _PyTime_ObjectToTimeval( - PyObject *obj, - time_t *sec, - long *usec, - _PyTime_round_t); - -/* Convert a number of seconds, int or float, to a timespec structure. - nsec is in the range [0; 999999999] and rounded towards zero. - For example, -1.2 is converted to (-2, 800000000). */ -PyAPI_FUNC(int) _PyTime_ObjectToTimespec( - PyObject *obj, - time_t *sec, - long *nsec, - _PyTime_round_t); - - -/* Create a timestamp from a number of seconds. */ -PyAPI_FUNC(_PyTime_t) _PyTime_FromSeconds(int seconds); - -/* Macro to create a timestamp from a number of seconds, no integer overflow. - Only use the macro for small values, prefer _PyTime_FromSeconds(). */ -#define _PYTIME_FROMSECONDS(seconds) \ - ((_PyTime_t)(seconds) * (1000 * 1000 * 1000)) - -/* Create a timestamp from a number of nanoseconds. */ -PyAPI_FUNC(_PyTime_t) _PyTime_FromNanoseconds(_PyTime_t ns); - -/* Create a timestamp from nanoseconds (Python int). */ -PyAPI_FUNC(int) _PyTime_FromNanosecondsObject(_PyTime_t *t, - PyObject *obj); - -/* Convert a number of seconds (Python float or int) to a timestamp. - Raise an exception and return -1 on error, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromSecondsObject(_PyTime_t *t, - PyObject *obj, - _PyTime_round_t round); - -/* Convert a number of milliseconds (Python float or int, 10^-3) to a timestamp. - Raise an exception and return -1 on error, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromMillisecondsObject(_PyTime_t *t, - PyObject *obj, - _PyTime_round_t round); - -/* Convert a timestamp to a number of seconds as a C double. */ -PyAPI_FUNC(double) _PyTime_AsSecondsDouble(_PyTime_t t); - -/* Convert timestamp to a number of milliseconds (10^-3 seconds). */ -PyAPI_FUNC(_PyTime_t) _PyTime_AsMilliseconds(_PyTime_t t, - _PyTime_round_t round); - -/* Convert timestamp to a number of microseconds (10^-6 seconds). */ -PyAPI_FUNC(_PyTime_t) _PyTime_AsMicroseconds(_PyTime_t t, - _PyTime_round_t round); - -/* Convert timestamp to a number of nanoseconds (10^-9 seconds) as a Python int - object. */ -PyAPI_FUNC(PyObject *) _PyTime_AsNanosecondsObject(_PyTime_t t); - -/* Create a timestamp from a timeval structure. - Raise an exception and return -1 on overflow, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromTimeval(_PyTime_t *tp, struct timeval *tv); - -/* Convert a timestamp to a timeval structure (microsecond resolution). - tv_usec is always positive. - Raise an exception and return -1 if the conversion overflowed, - return 0 on success. */ -PyAPI_FUNC(int) _PyTime_AsTimeval(_PyTime_t t, - struct timeval *tv, - _PyTime_round_t round); - -/* Similar to _PyTime_AsTimeval(), but don't raise an exception on error. */ -PyAPI_FUNC(int) _PyTime_AsTimeval_noraise(_PyTime_t t, - struct timeval *tv, - _PyTime_round_t round); - -/* Convert a timestamp to a number of seconds (secs) and microseconds (us). - us is always positive. This function is similar to _PyTime_AsTimeval() - except that secs is always a time_t type, whereas the timeval structure - uses a C long for tv_sec on Windows. - Raise an exception and return -1 if the conversion overflowed, - return 0 on success. */ -PyAPI_FUNC(int) _PyTime_AsTimevalTime_t( - _PyTime_t t, - time_t *secs, - int *us, - _PyTime_round_t round); - -#if defined(HAVE_CLOCK_GETTIME) || defined(HAVE_KQUEUE) -/* Create a timestamp from a timespec structure. - Raise an exception and return -1 on overflow, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromTimespec(_PyTime_t *tp, struct timespec *ts); - -/* Convert a timestamp to a timespec structure (nanosecond resolution). - tv_nsec is always positive. - Raise an exception and return -1 on error, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_AsTimespec(_PyTime_t t, struct timespec *ts); -#endif - -/* Compute ticks * mul / div. - The caller must ensure that ((div - 1) * mul) cannot overflow. */ -PyAPI_FUNC(_PyTime_t) _PyTime_MulDiv(_PyTime_t ticks, - _PyTime_t mul, - _PyTime_t div); - -/* Structure used by time.get_clock_info() */ -typedef struct { - const char *implementation; - int monotonic; - int adjustable; - double resolution; -} _Py_clock_info_t; - -/* Get the current time from the system clock. - - If the internal clock fails, silently ignore the error and return 0. - On integer overflow, silently ignore the overflow and truncated the clock to - _PyTime_MIN or _PyTime_MAX. - - Use _PyTime_GetSystemClockWithInfo() to check for failure. */ -PyAPI_FUNC(_PyTime_t) _PyTime_GetSystemClock(void); - -/* Get the current time from the system clock. - * On success, set *t and *info (if not NULL), and return 0. - * On error, raise an exception and return -1. - */ -PyAPI_FUNC(int) _PyTime_GetSystemClockWithInfo( - _PyTime_t *t, - _Py_clock_info_t *info); - -/* Get the time of a monotonic clock, i.e. a clock that cannot go backwards. - The clock is not affected by system clock updates. The reference point of - the returned value is undefined, so that only the difference between the - results of consecutive calls is valid. - - If the internal clock fails, silently ignore the error and return 0. - On integer overflow, silently ignore the overflow and truncated the clock to - _PyTime_MIN or _PyTime_MAX. - - Use _PyTime_GetMonotonicClockWithInfo() to check for failure. */ -PyAPI_FUNC(_PyTime_t) _PyTime_GetMonotonicClock(void); - -/* Get the time of a monotonic clock, i.e. a clock that cannot go backwards. - The clock is not affected by system clock updates. The reference point of - the returned value is undefined, so that only the difference between the - results of consecutive calls is valid. - - Fill info (if set) with information of the function used to get the time. - - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_GetMonotonicClockWithInfo( - _PyTime_t *t, - _Py_clock_info_t *info); - - -/* Converts a timestamp to the Gregorian time, using the local time zone. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_localtime(time_t t, struct tm *tm); - -/* Converts a timestamp to the Gregorian time, assuming UTC. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_gmtime(time_t t, struct tm *tm); - -/* Get the performance counter: clock with the highest available resolution to - measure a short duration. - - If the internal clock fails, silently ignore the error and return 0. - On integer overflow, silently ignore the overflow and truncated the clock to - _PyTime_MIN or _PyTime_MAX. - - Use _PyTime_GetPerfCounterWithInfo() to check for failure. */ -PyAPI_FUNC(_PyTime_t) _PyTime_GetPerfCounter(void); - -/* Get the performance counter: clock with the highest available resolution to - measure a short duration. - - Fill info (if set) with information of the function used to get the time. - - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_GetPerfCounterWithInfo( - _PyTime_t *t, - _Py_clock_info_t *info); - -#ifdef __cplusplus -} -#endif - -#endif /* Py_PYTIME_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/sysmodule.h b/_Pre_Builds/_Python310_cpp/include/cpython/sysmodule.h deleted file mode 100644 index fc4c899..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/sysmodule.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef Py_CPYTHON_SYSMODULE_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(PyObject *) _PySys_GetObjectId(_Py_Identifier *key); -PyAPI_FUNC(int) _PySys_SetObjectId(_Py_Identifier *key, PyObject *); - -PyAPI_FUNC(size_t) _PySys_GetSizeOf(PyObject *); - -typedef int(*Py_AuditHookFunction)(const char *, PyObject *, void *); - -PyAPI_FUNC(int) PySys_Audit( - const char *event, - const char *argFormat, - ...); -PyAPI_FUNC(int) PySys_AddAuditHook(Py_AuditHookFunction, void*); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/traceback.h b/_Pre_Builds/_Python310_cpp/include/cpython/traceback.h deleted file mode 100644 index aac5b42..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/traceback.h +++ /dev/null @@ -1,14 +0,0 @@ -#ifndef Py_CPYTHON_TRACEBACK_H -# error "this header file must not be included directly" -#endif - -typedef struct _traceback { - PyObject_HEAD - struct _traceback *tb_next; - PyFrameObject *tb_frame; - int tb_lasti; - int tb_lineno; -} PyTracebackObject; - -PyAPI_FUNC(int) _Py_DisplaySourceLine(PyObject *, PyObject *, int, int); -PyAPI_FUNC(void) _PyTraceback_Add(const char *, const char *, int); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/tupleobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/tupleobject.h deleted file mode 100644 index 7cada88..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/tupleobject.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef Py_CPYTHON_TUPLEOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - PyObject_VAR_HEAD - /* ob_item contains space for 'ob_size' elements. - Items must normally not be NULL, except during construction when - the tuple is not yet visible outside the function that builds it. */ - PyObject *ob_item[1]; -} PyTupleObject; - -PyAPI_FUNC(int) _PyTuple_Resize(PyObject **, Py_ssize_t); -PyAPI_FUNC(void) _PyTuple_MaybeUntrack(PyObject *); - -/* Macros trading safety for speed */ - -/* Cast argument to PyTupleObject* type. */ -#define _PyTuple_CAST(op) (assert(PyTuple_Check(op)), (PyTupleObject *)(op)) - -#define PyTuple_GET_SIZE(op) Py_SIZE(_PyTuple_CAST(op)) - -#define PyTuple_GET_ITEM(op, i) (_PyTuple_CAST(op)->ob_item[i]) - -/* Macro, *only* to be used to fill in brand new tuples */ -#define PyTuple_SET_ITEM(op, i, v) ((void)(_PyTuple_CAST(op)->ob_item[i] = v)) - -PyAPI_FUNC(void) _PyTuple_DebugMallocStats(FILE *out); diff --git a/_Pre_Builds/_Python310_cpp/include/cpython/unicodeobject.h b/_Pre_Builds/_Python310_cpp/include/cpython/unicodeobject.h deleted file mode 100644 index 0761f01..0000000 --- a/_Pre_Builds/_Python310_cpp/include/cpython/unicodeobject.h +++ /dev/null @@ -1,1169 +0,0 @@ -#ifndef Py_CPYTHON_UNICODEOBJECT_H -# error "this header file must not be included directly" -#endif - -/* Py_UNICODE was the native Unicode storage format (code unit) used by - Python and represents a single Unicode element in the Unicode type. - With PEP 393, Py_UNICODE is deprecated and replaced with a - typedef to wchar_t. */ -#define PY_UNICODE_TYPE wchar_t -/* Py_DEPRECATED(3.3) */ typedef wchar_t Py_UNICODE; - -/* --- Internal Unicode Operations ---------------------------------------- */ - -#ifndef USE_UNICODE_WCHAR_CACHE -# define USE_UNICODE_WCHAR_CACHE 1 -#endif /* USE_UNICODE_WCHAR_CACHE */ - -/* Since splitting on whitespace is an important use case, and - whitespace in most situations is solely ASCII whitespace, we - optimize for the common case by using a quick look-up table - _Py_ascii_whitespace (see below) with an inlined check. - - */ -#define Py_UNICODE_ISSPACE(ch) \ - ((Py_UCS4)(ch) < 128U ? _Py_ascii_whitespace[(ch)] : _PyUnicode_IsWhitespace(ch)) - -#define Py_UNICODE_ISLOWER(ch) _PyUnicode_IsLowercase(ch) -#define Py_UNICODE_ISUPPER(ch) _PyUnicode_IsUppercase(ch) -#define Py_UNICODE_ISTITLE(ch) _PyUnicode_IsTitlecase(ch) -#define Py_UNICODE_ISLINEBREAK(ch) _PyUnicode_IsLinebreak(ch) - -#define Py_UNICODE_TOLOWER(ch) _PyUnicode_ToLowercase(ch) -#define Py_UNICODE_TOUPPER(ch) _PyUnicode_ToUppercase(ch) -#define Py_UNICODE_TOTITLE(ch) _PyUnicode_ToTitlecase(ch) - -#define Py_UNICODE_ISDECIMAL(ch) _PyUnicode_IsDecimalDigit(ch) -#define Py_UNICODE_ISDIGIT(ch) _PyUnicode_IsDigit(ch) -#define Py_UNICODE_ISNUMERIC(ch) _PyUnicode_IsNumeric(ch) -#define Py_UNICODE_ISPRINTABLE(ch) _PyUnicode_IsPrintable(ch) - -#define Py_UNICODE_TODECIMAL(ch) _PyUnicode_ToDecimalDigit(ch) -#define Py_UNICODE_TODIGIT(ch) _PyUnicode_ToDigit(ch) -#define Py_UNICODE_TONUMERIC(ch) _PyUnicode_ToNumeric(ch) - -#define Py_UNICODE_ISALPHA(ch) _PyUnicode_IsAlpha(ch) - -#define Py_UNICODE_ISALNUM(ch) \ - (Py_UNICODE_ISALPHA(ch) || \ - Py_UNICODE_ISDECIMAL(ch) || \ - Py_UNICODE_ISDIGIT(ch) || \ - Py_UNICODE_ISNUMERIC(ch)) - -Py_DEPRECATED(3.3) static inline void -Py_UNICODE_COPY(Py_UNICODE *target, const Py_UNICODE *source, Py_ssize_t length) { - memcpy(target, source, (size_t)(length) * sizeof(Py_UNICODE)); -} - -Py_DEPRECATED(3.3) static inline void -Py_UNICODE_FILL(Py_UNICODE *target, Py_UNICODE value, Py_ssize_t length) { - Py_ssize_t i; - for (i = 0; i < length; i++) { - target[i] = value; - } -} - -/* macros to work with surrogates */ -#define Py_UNICODE_IS_SURROGATE(ch) (0xD800 <= (ch) && (ch) <= 0xDFFF) -#define Py_UNICODE_IS_HIGH_SURROGATE(ch) (0xD800 <= (ch) && (ch) <= 0xDBFF) -#define Py_UNICODE_IS_LOW_SURROGATE(ch) (0xDC00 <= (ch) && (ch) <= 0xDFFF) -/* Join two surrogate characters and return a single Py_UCS4 value. */ -#define Py_UNICODE_JOIN_SURROGATES(high, low) \ - (((((Py_UCS4)(high) & 0x03FF) << 10) | \ - ((Py_UCS4)(low) & 0x03FF)) + 0x10000) -/* high surrogate = top 10 bits added to D800 */ -#define Py_UNICODE_HIGH_SURROGATE(ch) (0xD800 - (0x10000 >> 10) + ((ch) >> 10)) -/* low surrogate = bottom 10 bits added to DC00 */ -#define Py_UNICODE_LOW_SURROGATE(ch) (0xDC00 + ((ch) & 0x3FF)) - -/* --- Unicode Type ------------------------------------------------------- */ - -/* ASCII-only strings created through PyUnicode_New use the PyASCIIObject - structure. state.ascii and state.compact are set, and the data - immediately follow the structure. utf8_length and wstr_length can be found - in the length field; the utf8 pointer is equal to the data pointer. */ -typedef struct { - /* There are 4 forms of Unicode strings: - - - compact ascii: - - * structure = PyASCIIObject - * test: PyUnicode_IS_COMPACT_ASCII(op) - * kind = PyUnicode_1BYTE_KIND - * compact = 1 - * ascii = 1 - * ready = 1 - * (length is the length of the utf8 and wstr strings) - * (data starts just after the structure) - * (since ASCII is decoded from UTF-8, the utf8 string are the data) - - - compact: - - * structure = PyCompactUnicodeObject - * test: PyUnicode_IS_COMPACT(op) && !PyUnicode_IS_ASCII(op) - * kind = PyUnicode_1BYTE_KIND, PyUnicode_2BYTE_KIND or - PyUnicode_4BYTE_KIND - * compact = 1 - * ready = 1 - * ascii = 0 - * utf8 is not shared with data - * utf8_length = 0 if utf8 is NULL - * wstr is shared with data and wstr_length=length - if kind=PyUnicode_2BYTE_KIND and sizeof(wchar_t)=2 - or if kind=PyUnicode_4BYTE_KIND and sizeof(wchar_t)=4 - * wstr_length = 0 if wstr is NULL - * (data starts just after the structure) - - - legacy string, not ready: - - * structure = PyUnicodeObject - * test: kind == PyUnicode_WCHAR_KIND - * length = 0 (use wstr_length) - * hash = -1 - * kind = PyUnicode_WCHAR_KIND - * compact = 0 - * ascii = 0 - * ready = 0 - * interned = SSTATE_NOT_INTERNED - * wstr is not NULL - * data.any is NULL - * utf8 is NULL - * utf8_length = 0 - - - legacy string, ready: - - * structure = PyUnicodeObject structure - * test: !PyUnicode_IS_COMPACT(op) && kind != PyUnicode_WCHAR_KIND - * kind = PyUnicode_1BYTE_KIND, PyUnicode_2BYTE_KIND or - PyUnicode_4BYTE_KIND - * compact = 0 - * ready = 1 - * data.any is not NULL - * utf8 is shared and utf8_length = length with data.any if ascii = 1 - * utf8_length = 0 if utf8 is NULL - * wstr is shared with data.any and wstr_length = length - if kind=PyUnicode_2BYTE_KIND and sizeof(wchar_t)=2 - or if kind=PyUnicode_4BYTE_KIND and sizeof(wchar_4)=4 - * wstr_length = 0 if wstr is NULL - - Compact strings use only one memory block (structure + characters), - whereas legacy strings use one block for the structure and one block - for characters. - - Legacy strings are created by PyUnicode_FromUnicode() and - PyUnicode_FromStringAndSize(NULL, size) functions. They become ready - when PyUnicode_READY() is called. - - See also _PyUnicode_CheckConsistency(). - */ - PyObject_HEAD - Py_ssize_t length; /* Number of code points in the string */ - Py_hash_t hash; /* Hash value; -1 if not set */ - struct { - /* - SSTATE_NOT_INTERNED (0) - SSTATE_INTERNED_MORTAL (1) - SSTATE_INTERNED_IMMORTAL (2) - - If interned != SSTATE_NOT_INTERNED, the two references from the - dictionary to this object are *not* counted in ob_refcnt. - */ - unsigned int interned:2; - /* Character size: - - - PyUnicode_WCHAR_KIND (0): - - * character type = wchar_t (16 or 32 bits, depending on the - platform) - - - PyUnicode_1BYTE_KIND (1): - - * character type = Py_UCS1 (8 bits, unsigned) - * all characters are in the range U+0000-U+00FF (latin1) - * if ascii is set, all characters are in the range U+0000-U+007F - (ASCII), otherwise at least one character is in the range - U+0080-U+00FF - - - PyUnicode_2BYTE_KIND (2): - - * character type = Py_UCS2 (16 bits, unsigned) - * all characters are in the range U+0000-U+FFFF (BMP) - * at least one character is in the range U+0100-U+FFFF - - - PyUnicode_4BYTE_KIND (4): - - * character type = Py_UCS4 (32 bits, unsigned) - * all characters are in the range U+0000-U+10FFFF - * at least one character is in the range U+10000-U+10FFFF - */ - unsigned int kind:3; - /* Compact is with respect to the allocation scheme. Compact unicode - objects only require one memory block while non-compact objects use - one block for the PyUnicodeObject struct and another for its data - buffer. */ - unsigned int compact:1; - /* The string only contains characters in the range U+0000-U+007F (ASCII) - and the kind is PyUnicode_1BYTE_KIND. If ascii is set and compact is - set, use the PyASCIIObject structure. */ - unsigned int ascii:1; - /* The ready flag indicates whether the object layout is initialized - completely. This means that this is either a compact object, or - the data pointer is filled out. The bit is redundant, and helps - to minimize the test in PyUnicode_IS_READY(). */ - unsigned int ready:1; - /* Padding to ensure that PyUnicode_DATA() is always aligned to - 4 bytes (see issue #19537 on m68k). */ - unsigned int :24; - } state; - wchar_t *wstr; /* wchar_t representation (null-terminated) */ -} PyASCIIObject; - -/* Non-ASCII strings allocated through PyUnicode_New use the - PyCompactUnicodeObject structure. state.compact is set, and the data - immediately follow the structure. */ -typedef struct { - PyASCIIObject _base; - Py_ssize_t utf8_length; /* Number of bytes in utf8, excluding the - * terminating \0. */ - char *utf8; /* UTF-8 representation (null-terminated) */ - Py_ssize_t wstr_length; /* Number of code points in wstr, possible - * surrogates count as two code points. */ -} PyCompactUnicodeObject; - -/* Strings allocated through PyUnicode_FromUnicode(NULL, len) use the - PyUnicodeObject structure. The actual string data is initially in the wstr - block, and copied into the data block using _PyUnicode_Ready. */ -typedef struct { - PyCompactUnicodeObject _base; - union { - void *any; - Py_UCS1 *latin1; - Py_UCS2 *ucs2; - Py_UCS4 *ucs4; - } data; /* Canonical, smallest-form Unicode buffer */ -} PyUnicodeObject; - -PyAPI_FUNC(int) _PyUnicode_CheckConsistency( - PyObject *op, - int check_content); - -/* Fast access macros */ - -/* Returns the deprecated Py_UNICODE representation's size in code units - (this includes surrogate pairs as 2 units). - If the Py_UNICODE representation is not available, it will be computed - on request. Use PyUnicode_GET_LENGTH() for the length in code points. */ - -/* Py_DEPRECATED(3.3) */ -#define PyUnicode_GET_SIZE(op) \ - (assert(PyUnicode_Check(op)), \ - (((PyASCIIObject *)(op))->wstr) ? \ - PyUnicode_WSTR_LENGTH(op) : \ - ((void)PyUnicode_AsUnicode(_PyObject_CAST(op)),\ - assert(((PyASCIIObject *)(op))->wstr), \ - PyUnicode_WSTR_LENGTH(op))) - -/* Py_DEPRECATED(3.3) */ -#define PyUnicode_GET_DATA_SIZE(op) \ - (PyUnicode_GET_SIZE(op) * Py_UNICODE_SIZE) - -/* Alias for PyUnicode_AsUnicode(). This will create a wchar_t/Py_UNICODE - representation on demand. Using this macro is very inefficient now, - try to port your code to use the new PyUnicode_*BYTE_DATA() macros or - use PyUnicode_WRITE() and PyUnicode_READ(). */ - -/* Py_DEPRECATED(3.3) */ -#define PyUnicode_AS_UNICODE(op) \ - (assert(PyUnicode_Check(op)), \ - (((PyASCIIObject *)(op))->wstr) ? (((PyASCIIObject *)(op))->wstr) : \ - PyUnicode_AsUnicode(_PyObject_CAST(op))) - -/* Py_DEPRECATED(3.3) */ -#define PyUnicode_AS_DATA(op) \ - ((const char *)(PyUnicode_AS_UNICODE(op))) - - -/* --- Flexible String Representation Helper Macros (PEP 393) -------------- */ - -/* Values for PyASCIIObject.state: */ - -/* Interning state. */ -#define SSTATE_NOT_INTERNED 0 -#define SSTATE_INTERNED_MORTAL 1 -#define SSTATE_INTERNED_IMMORTAL 2 - -/* Return true if the string contains only ASCII characters, or 0 if not. The - string may be compact (PyUnicode_IS_COMPACT_ASCII) or not, but must be - ready. */ -#define PyUnicode_IS_ASCII(op) \ - (assert(PyUnicode_Check(op)), \ - assert(PyUnicode_IS_READY(op)), \ - ((PyASCIIObject*)op)->state.ascii) - -/* Return true if the string is compact or 0 if not. - No type checks or Ready calls are performed. */ -#define PyUnicode_IS_COMPACT(op) \ - (((PyASCIIObject*)(op))->state.compact) - -/* Return true if the string is a compact ASCII string (use PyASCIIObject - structure), or 0 if not. No type checks or Ready calls are performed. */ -#define PyUnicode_IS_COMPACT_ASCII(op) \ - (((PyASCIIObject*)op)->state.ascii && PyUnicode_IS_COMPACT(op)) - -enum PyUnicode_Kind { -/* String contains only wstr byte characters. This is only possible - when the string was created with a legacy API and _PyUnicode_Ready() - has not been called yet. */ - PyUnicode_WCHAR_KIND = 0, -/* Return values of the PyUnicode_KIND() macro: */ - PyUnicode_1BYTE_KIND = 1, - PyUnicode_2BYTE_KIND = 2, - PyUnicode_4BYTE_KIND = 4 -}; - -/* Return pointers to the canonical representation cast to unsigned char, - Py_UCS2, or Py_UCS4 for direct character access. - No checks are performed, use PyUnicode_KIND() before to ensure - these will work correctly. */ - -#define PyUnicode_1BYTE_DATA(op) ((Py_UCS1*)PyUnicode_DATA(op)) -#define PyUnicode_2BYTE_DATA(op) ((Py_UCS2*)PyUnicode_DATA(op)) -#define PyUnicode_4BYTE_DATA(op) ((Py_UCS4*)PyUnicode_DATA(op)) - -/* Return one of the PyUnicode_*_KIND values defined above. */ -#define PyUnicode_KIND(op) \ - (assert(PyUnicode_Check(op)), \ - assert(PyUnicode_IS_READY(op)), \ - ((PyASCIIObject *)(op))->state.kind) - -/* Return a void pointer to the raw unicode buffer. */ -#define _PyUnicode_COMPACT_DATA(op) \ - (PyUnicode_IS_ASCII(op) ? \ - ((void*)((PyASCIIObject*)(op) + 1)) : \ - ((void*)((PyCompactUnicodeObject*)(op) + 1))) - -#define _PyUnicode_NONCOMPACT_DATA(op) \ - (assert(((PyUnicodeObject*)(op))->data.any), \ - ((((PyUnicodeObject *)(op))->data.any))) - -#define PyUnicode_DATA(op) \ - (assert(PyUnicode_Check(op)), \ - PyUnicode_IS_COMPACT(op) ? _PyUnicode_COMPACT_DATA(op) : \ - _PyUnicode_NONCOMPACT_DATA(op)) - -/* In the access macros below, "kind" may be evaluated more than once. - All other macro parameters are evaluated exactly once, so it is safe - to put side effects into them (such as increasing the index). */ - -/* Write into the canonical representation, this macro does not do any sanity - checks and is intended for usage in loops. The caller should cache the - kind and data pointers obtained from other macro calls. - index is the index in the string (starts at 0) and value is the new - code point value which should be written to that location. */ -#define PyUnicode_WRITE(kind, data, index, value) \ - do { \ - switch ((kind)) { \ - case PyUnicode_1BYTE_KIND: { \ - ((Py_UCS1 *)(data))[(index)] = (Py_UCS1)(value); \ - break; \ - } \ - case PyUnicode_2BYTE_KIND: { \ - ((Py_UCS2 *)(data))[(index)] = (Py_UCS2)(value); \ - break; \ - } \ - default: { \ - assert((kind) == PyUnicode_4BYTE_KIND); \ - ((Py_UCS4 *)(data))[(index)] = (Py_UCS4)(value); \ - } \ - } \ - } while (0) - -/* Read a code point from the string's canonical representation. No checks - or ready calls are performed. */ -#define PyUnicode_READ(kind, data, index) \ - ((Py_UCS4) \ - ((kind) == PyUnicode_1BYTE_KIND ? \ - ((const Py_UCS1 *)(data))[(index)] : \ - ((kind) == PyUnicode_2BYTE_KIND ? \ - ((const Py_UCS2 *)(data))[(index)] : \ - ((const Py_UCS4 *)(data))[(index)] \ - ) \ - )) - -/* PyUnicode_READ_CHAR() is less efficient than PyUnicode_READ() because it - calls PyUnicode_KIND() and might call it twice. For single reads, use - PyUnicode_READ_CHAR, for multiple consecutive reads callers should - cache kind and use PyUnicode_READ instead. */ -#define PyUnicode_READ_CHAR(unicode, index) \ - (assert(PyUnicode_Check(unicode)), \ - assert(PyUnicode_IS_READY(unicode)), \ - (Py_UCS4) \ - (PyUnicode_KIND((unicode)) == PyUnicode_1BYTE_KIND ? \ - ((const Py_UCS1 *)(PyUnicode_DATA((unicode))))[(index)] : \ - (PyUnicode_KIND((unicode)) == PyUnicode_2BYTE_KIND ? \ - ((const Py_UCS2 *)(PyUnicode_DATA((unicode))))[(index)] : \ - ((const Py_UCS4 *)(PyUnicode_DATA((unicode))))[(index)] \ - ) \ - )) - -/* Returns the length of the unicode string. The caller has to make sure that - the string has it's canonical representation set before calling - this macro. Call PyUnicode_(FAST_)Ready to ensure that. */ -#define PyUnicode_GET_LENGTH(op) \ - (assert(PyUnicode_Check(op)), \ - assert(PyUnicode_IS_READY(op)), \ - ((PyASCIIObject *)(op))->length) - - -/* Fast check to determine whether an object is ready. Equivalent to - PyUnicode_IS_COMPACT(op) || ((PyUnicodeObject*)(op))->data.any */ - -#define PyUnicode_IS_READY(op) (((PyASCIIObject*)op)->state.ready) - -/* PyUnicode_READY() does less work than _PyUnicode_Ready() in the best - case. If the canonical representation is not yet set, it will still call - _PyUnicode_Ready(). - Returns 0 on success and -1 on errors. */ -#define PyUnicode_READY(op) \ - (assert(PyUnicode_Check(op)), \ - (PyUnicode_IS_READY(op) ? \ - 0 : _PyUnicode_Ready(_PyObject_CAST(op)))) - -/* Return a maximum character value which is suitable for creating another - string based on op. This is always an approximation but more efficient - than iterating over the string. */ -#define PyUnicode_MAX_CHAR_VALUE(op) \ - (assert(PyUnicode_IS_READY(op)), \ - (PyUnicode_IS_ASCII(op) ? \ - (0x7f) : \ - (PyUnicode_KIND(op) == PyUnicode_1BYTE_KIND ? \ - (0xffU) : \ - (PyUnicode_KIND(op) == PyUnicode_2BYTE_KIND ? \ - (0xffffU) : \ - (0x10ffffU))))) - -Py_DEPRECATED(3.3) -static inline Py_ssize_t _PyUnicode_get_wstr_length(PyObject *op) { - return PyUnicode_IS_COMPACT_ASCII(op) ? - ((PyASCIIObject*)op)->length : - ((PyCompactUnicodeObject*)op)->wstr_length; -} -#define PyUnicode_WSTR_LENGTH(op) _PyUnicode_get_wstr_length((PyObject*)op) - -/* === Public API ========================================================= */ - -/* --- Plain Py_UNICODE --------------------------------------------------- */ - -/* With PEP 393, this is the recommended way to allocate a new unicode object. - This function will allocate the object and its buffer in a single memory - block. Objects created using this function are not resizable. */ -PyAPI_FUNC(PyObject*) PyUnicode_New( - Py_ssize_t size, /* Number of code points in the new string */ - Py_UCS4 maxchar /* maximum code point value in the string */ - ); - -/* Initializes the canonical string representation from the deprecated - wstr/Py_UNICODE representation. This function is used to convert Unicode - objects which were created using the old API to the new flexible format - introduced with PEP 393. - - Don't call this function directly, use the public PyUnicode_READY() macro - instead. */ -PyAPI_FUNC(int) _PyUnicode_Ready( - PyObject *unicode /* Unicode object */ - ); - -/* Get a copy of a Unicode string. */ -PyAPI_FUNC(PyObject*) _PyUnicode_Copy( - PyObject *unicode - ); - -/* Copy character from one unicode object into another, this function performs - character conversion when necessary and falls back to memcpy() if possible. - - Fail if to is too small (smaller than *how_many* or smaller than - len(from)-from_start), or if kind(from[from_start:from_start+how_many]) > - kind(to), or if *to* has more than 1 reference. - - Return the number of written character, or return -1 and raise an exception - on error. - - Pseudo-code: - - how_many = min(how_many, len(from) - from_start) - to[to_start:to_start+how_many] = from[from_start:from_start+how_many] - return how_many - - Note: The function doesn't write a terminating null character. - */ -PyAPI_FUNC(Py_ssize_t) PyUnicode_CopyCharacters( - PyObject *to, - Py_ssize_t to_start, - PyObject *from, - Py_ssize_t from_start, - Py_ssize_t how_many - ); - -/* Unsafe version of PyUnicode_CopyCharacters(): don't check arguments and so - may crash if parameters are invalid (e.g. if the output string - is too short). */ -PyAPI_FUNC(void) _PyUnicode_FastCopyCharacters( - PyObject *to, - Py_ssize_t to_start, - PyObject *from, - Py_ssize_t from_start, - Py_ssize_t how_many - ); - -/* Fill a string with a character: write fill_char into - unicode[start:start+length]. - - Fail if fill_char is bigger than the string maximum character, or if the - string has more than 1 reference. - - Return the number of written character, or return -1 and raise an exception - on error. */ -PyAPI_FUNC(Py_ssize_t) PyUnicode_Fill( - PyObject *unicode, - Py_ssize_t start, - Py_ssize_t length, - Py_UCS4 fill_char - ); - -/* Unsafe version of PyUnicode_Fill(): don't check arguments and so may crash - if parameters are invalid (e.g. if length is longer than the string). */ -PyAPI_FUNC(void) _PyUnicode_FastFill( - PyObject *unicode, - Py_ssize_t start, - Py_ssize_t length, - Py_UCS4 fill_char - ); - -/* Create a Unicode Object from the Py_UNICODE buffer u of the given - size. - - u may be NULL which causes the contents to be undefined. It is the - user's responsibility to fill in the needed data afterwards. Note - that modifying the Unicode object contents after construction is - only allowed if u was set to NULL. - - The buffer is copied into the new object. */ -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_FromUnicode( - const Py_UNICODE *u, /* Unicode buffer */ - Py_ssize_t size /* size of buffer */ - ); - -/* Create a new string from a buffer of Py_UCS1, Py_UCS2 or Py_UCS4 characters. - Scan the string to find the maximum character. */ -PyAPI_FUNC(PyObject*) PyUnicode_FromKindAndData( - int kind, - const void *buffer, - Py_ssize_t size); - -/* Create a new string from a buffer of ASCII characters. - WARNING: Don't check if the string contains any non-ASCII character. */ -PyAPI_FUNC(PyObject*) _PyUnicode_FromASCII( - const char *buffer, - Py_ssize_t size); - -/* Compute the maximum character of the substring unicode[start:end]. - Return 127 for an empty string. */ -PyAPI_FUNC(Py_UCS4) _PyUnicode_FindMaxChar ( - PyObject *unicode, - Py_ssize_t start, - Py_ssize_t end); - -/* Return a read-only pointer to the Unicode object's internal - Py_UNICODE buffer. - If the wchar_t/Py_UNICODE representation is not yet available, this - function will calculate it. */ -Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode( - PyObject *unicode /* Unicode object */ - ); - -/* Similar to PyUnicode_AsUnicode(), but raises a ValueError if the string - contains null characters. */ -PyAPI_FUNC(const Py_UNICODE *) _PyUnicode_AsUnicode( - PyObject *unicode /* Unicode object */ - ); - -/* Return a read-only pointer to the Unicode object's internal - Py_UNICODE buffer and save the length at size. - If the wchar_t/Py_UNICODE representation is not yet available, this - function will calculate it. */ - -Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicodeAndSize( - PyObject *unicode, /* Unicode object */ - Py_ssize_t *size /* location where to save the length */ - ); - - -/* --- _PyUnicodeWriter API ----------------------------------------------- */ - -typedef struct { - PyObject *buffer; - void *data; - enum PyUnicode_Kind kind; - Py_UCS4 maxchar; - Py_ssize_t size; - Py_ssize_t pos; - - /* minimum number of allocated characters (default: 0) */ - Py_ssize_t min_length; - - /* minimum character (default: 127, ASCII) */ - Py_UCS4 min_char; - - /* If non-zero, overallocate the buffer (default: 0). */ - unsigned char overallocate; - - /* If readonly is 1, buffer is a shared string (cannot be modified) - and size is set to 0. */ - unsigned char readonly; -} _PyUnicodeWriter ; - -/* Initialize a Unicode writer. - * - * By default, the minimum buffer size is 0 character and overallocation is - * disabled. Set min_length, min_char and overallocate attributes to control - * the allocation of the buffer. */ -PyAPI_FUNC(void) -_PyUnicodeWriter_Init(_PyUnicodeWriter *writer); - -/* Prepare the buffer to write 'length' characters - with the specified maximum character. - - Return 0 on success, raise an exception and return -1 on error. */ -#define _PyUnicodeWriter_Prepare(WRITER, LENGTH, MAXCHAR) \ - (((MAXCHAR) <= (WRITER)->maxchar \ - && (LENGTH) <= (WRITER)->size - (WRITER)->pos) \ - ? 0 \ - : (((LENGTH) == 0) \ - ? 0 \ - : _PyUnicodeWriter_PrepareInternal((WRITER), (LENGTH), (MAXCHAR)))) - -/* Don't call this function directly, use the _PyUnicodeWriter_Prepare() macro - instead. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_PrepareInternal(_PyUnicodeWriter *writer, - Py_ssize_t length, Py_UCS4 maxchar); - -/* Prepare the buffer to have at least the kind KIND. - For example, kind=PyUnicode_2BYTE_KIND ensures that the writer will - support characters in range U+000-U+FFFF. - - Return 0 on success, raise an exception and return -1 on error. */ -#define _PyUnicodeWriter_PrepareKind(WRITER, KIND) \ - (assert((KIND) != PyUnicode_WCHAR_KIND), \ - (KIND) <= (WRITER)->kind \ - ? 0 \ - : _PyUnicodeWriter_PrepareKindInternal((WRITER), (KIND))) - -/* Don't call this function directly, use the _PyUnicodeWriter_PrepareKind() - macro instead. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_PrepareKindInternal(_PyUnicodeWriter *writer, - enum PyUnicode_Kind kind); - -/* Append a Unicode character. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteChar(_PyUnicodeWriter *writer, - Py_UCS4 ch - ); - -/* Append a Unicode string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteStr(_PyUnicodeWriter *writer, - PyObject *str /* Unicode string */ - ); - -/* Append a substring of a Unicode string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteSubstring(_PyUnicodeWriter *writer, - PyObject *str, /* Unicode string */ - Py_ssize_t start, - Py_ssize_t end - ); - -/* Append an ASCII-encoded byte string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteASCIIString(_PyUnicodeWriter *writer, - const char *str, /* ASCII-encoded byte string */ - Py_ssize_t len /* number of bytes, or -1 if unknown */ - ); - -/* Append a latin1-encoded byte string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteLatin1String(_PyUnicodeWriter *writer, - const char *str, /* latin1-encoded byte string */ - Py_ssize_t len /* length in bytes */ - ); - -/* Get the value of the writer as a Unicode string. Clear the - buffer of the writer. Raise an exception and return NULL - on error. */ -PyAPI_FUNC(PyObject *) -_PyUnicodeWriter_Finish(_PyUnicodeWriter *writer); - -/* Deallocate memory of a writer (clear its internal buffer). */ -PyAPI_FUNC(void) -_PyUnicodeWriter_Dealloc(_PyUnicodeWriter *writer); - - -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -PyAPI_FUNC(int) _PyUnicode_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); - -/* --- Manage the default encoding ---------------------------------------- */ - -/* Returns a pointer to the default encoding (UTF-8) of the - Unicode object unicode. - - Like PyUnicode_AsUTF8AndSize(), this also caches the UTF-8 representation - in the unicodeobject. - - _PyUnicode_AsString is a #define for PyUnicode_AsUTF8 to - support the previous internal function with the same behaviour. - - Use of this API is DEPRECATED since no size information can be - extracted from the returned data. -*/ - -PyAPI_FUNC(const char *) PyUnicode_AsUTF8(PyObject *unicode); - -#define _PyUnicode_AsString PyUnicode_AsUTF8 - -/* --- Generic Codecs ----------------------------------------------------- */ - -/* Encodes a Py_UNICODE buffer of the given size and returns a - Python string object. */ -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_Encode( - const Py_UNICODE *s, /* Unicode char buffer */ - Py_ssize_t size, /* number of Py_UNICODE chars to encode */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* --- UTF-7 Codecs ------------------------------------------------------- */ - -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_EncodeUTF7( - const Py_UNICODE *data, /* Unicode char buffer */ - Py_ssize_t length, /* number of Py_UNICODE chars to encode */ - int base64SetO, /* Encode RFC2152 Set O characters in base64 */ - int base64WhiteSpace, /* Encode whitespace (sp, ht, nl, cr) in base64 */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeUTF7( - PyObject *unicode, /* Unicode object */ - int base64SetO, /* Encode RFC2152 Set O characters in base64 */ - int base64WhiteSpace, /* Encode whitespace (sp, ht, nl, cr) in base64 */ - const char *errors /* error handling */ - ); - -/* --- UTF-8 Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) _PyUnicode_AsUTF8String( - PyObject *unicode, - const char *errors); - -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_EncodeUTF8( - const Py_UNICODE *data, /* Unicode char buffer */ - Py_ssize_t length, /* number of Py_UNICODE chars to encode */ - const char *errors /* error handling */ - ); - -/* --- UTF-32 Codecs ------------------------------------------------------ */ - -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_EncodeUTF32( - const Py_UNICODE *data, /* Unicode char buffer */ - Py_ssize_t length, /* number of Py_UNICODE chars to encode */ - const char *errors, /* error handling */ - int byteorder /* byteorder to use 0=BOM+native;-1=LE,1=BE */ - ); - -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeUTF32( - PyObject *object, /* Unicode object */ - const char *errors, /* error handling */ - int byteorder /* byteorder to use 0=BOM+native;-1=LE,1=BE */ - ); - -/* --- UTF-16 Codecs ------------------------------------------------------ */ - -/* Returns a Python string object holding the UTF-16 encoded value of - the Unicode data. - - If byteorder is not 0, output is written according to the following - byte order: - - byteorder == -1: little endian - byteorder == 0: native byte order (writes a BOM mark) - byteorder == 1: big endian - - If byteorder is 0, the output string will always start with the - Unicode BOM mark (U+FEFF). In the other two modes, no BOM mark is - prepended. - - Note that Py_UNICODE data is being interpreted as UTF-16 reduced to - UCS-2. This trick makes it possible to add full UTF-16 capabilities - at a later point without compromising the APIs. - -*/ -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_EncodeUTF16( - const Py_UNICODE *data, /* Unicode char buffer */ - Py_ssize_t length, /* number of Py_UNICODE chars to encode */ - const char *errors, /* error handling */ - int byteorder /* byteorder to use 0=BOM+native;-1=LE,1=BE */ - ); - -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeUTF16( - PyObject* unicode, /* Unicode object */ - const char *errors, /* error handling */ - int byteorder /* byteorder to use 0=BOM+native;-1=LE,1=BE */ - ); - -/* --- Unicode-Escape Codecs ---------------------------------------------- */ - -/* Variant of PyUnicode_DecodeUnicodeEscape that supports partial decoding. */ -PyAPI_FUNC(PyObject*) _PyUnicode_DecodeUnicodeEscapeStateful( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ -); - -/* Helper for PyUnicode_DecodeUnicodeEscape that detects invalid escape - chars. */ -PyAPI_FUNC(PyObject*) _PyUnicode_DecodeUnicodeEscapeInternal( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed, /* bytes consumed */ - const char **first_invalid_escape /* on return, points to first - invalid escaped char in - string. */ -); - -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_EncodeUnicodeEscape( - const Py_UNICODE *data, /* Unicode char buffer */ - Py_ssize_t length /* Number of Py_UNICODE chars to encode */ - ); - -/* --- Raw-Unicode-Escape Codecs ------------------------------------------ */ - -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_EncodeRawUnicodeEscape( - const Py_UNICODE *data, /* Unicode char buffer */ - Py_ssize_t length /* Number of Py_UNICODE chars to encode */ - ); - -/* Variant of PyUnicode_DecodeRawUnicodeEscape that supports partial decoding. */ -PyAPI_FUNC(PyObject*) _PyUnicode_DecodeRawUnicodeEscapeStateful( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ -); - -/* --- Latin-1 Codecs ----------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) _PyUnicode_AsLatin1String( - PyObject* unicode, - const char* errors); - -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_EncodeLatin1( - const Py_UNICODE *data, /* Unicode char buffer */ - Py_ssize_t length, /* Number of Py_UNICODE chars to encode */ - const char *errors /* error handling */ - ); - -/* --- ASCII Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) _PyUnicode_AsASCIIString( - PyObject* unicode, - const char* errors); - -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_EncodeASCII( - const Py_UNICODE *data, /* Unicode char buffer */ - Py_ssize_t length, /* Number of Py_UNICODE chars to encode */ - const char *errors /* error handling */ - ); - -/* --- Character Map Codecs ----------------------------------------------- */ - -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_EncodeCharmap( - const Py_UNICODE *data, /* Unicode char buffer */ - Py_ssize_t length, /* Number of Py_UNICODE chars to encode */ - PyObject *mapping, /* encoding mapping */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeCharmap( - PyObject *unicode, /* Unicode object */ - PyObject *mapping, /* encoding mapping */ - const char *errors /* error handling */ - ); - -/* Translate a Py_UNICODE buffer of the given length by applying a - character mapping table to it and return the resulting Unicode - object. - - The mapping table must map Unicode ordinal integers to Unicode strings, - Unicode ordinal integers or None (causing deletion of the character). - - Mapping tables may be dictionaries or sequences. Unmapped character - ordinals (ones which cause a LookupError) are left untouched and - are copied as-is. - -*/ -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject *) PyUnicode_TranslateCharmap( - const Py_UNICODE *data, /* Unicode char buffer */ - Py_ssize_t length, /* Number of Py_UNICODE chars to encode */ - PyObject *table, /* Translate table */ - const char *errors /* error handling */ - ); - -/* --- MBCS codecs for Windows -------------------------------------------- */ - -#ifdef MS_WINDOWS -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_EncodeMBCS( - const Py_UNICODE *data, /* Unicode char buffer */ - Py_ssize_t length, /* number of Py_UNICODE chars to encode */ - const char *errors /* error handling */ - ); -#endif - -/* --- Decimal Encoder ---------------------------------------------------- */ - -/* Takes a Unicode string holding a decimal value and writes it into - an output buffer using standard ASCII digit codes. - - The output buffer has to provide at least length+1 bytes of storage - area. The output string is 0-terminated. - - The encoder converts whitespace to ' ', decimal characters to their - corresponding ASCII digit and all other Latin-1 characters except - \0 as-is. Characters outside this range (Unicode ordinals 1-256) - are treated as errors. This includes embedded NULL bytes. - - Error handling is defined by the errors argument: - - NULL or "strict": raise a ValueError - "ignore": ignore the wrong characters (these are not copied to the - output buffer) - "replace": replaces illegal characters with '?' - - Returns 0 on success, -1 on failure. - -*/ - -Py_DEPRECATED(3.3) PyAPI_FUNC(int) PyUnicode_EncodeDecimal( - Py_UNICODE *s, /* Unicode buffer */ - Py_ssize_t length, /* Number of Py_UNICODE chars to encode */ - char *output, /* Output buffer; must have size >= length */ - const char *errors /* error handling */ - ); - -/* Transforms code points that have decimal digit property to the - corresponding ASCII digit code points. - - Returns a new Unicode string on success, NULL on failure. -*/ - -Py_DEPRECATED(3.3) -PyAPI_FUNC(PyObject*) PyUnicode_TransformDecimalToASCII( - Py_UNICODE *s, /* Unicode buffer */ - Py_ssize_t length /* Number of Py_UNICODE chars to transform */ - ); - -/* Coverts a Unicode object holding a decimal value to an ASCII string - for using in int, float and complex parsers. - Transforms code points that have decimal digit property to the - corresponding ASCII digit code points. Transforms spaces to ASCII. - Transforms code points starting from the first non-ASCII code point that - is neither a decimal digit nor a space to the end into '?'. */ - -PyAPI_FUNC(PyObject*) _PyUnicode_TransformDecimalAndSpaceToASCII( - PyObject *unicode /* Unicode object */ - ); - -/* --- Methods & Slots ---------------------------------------------------- */ - -PyAPI_FUNC(PyObject *) _PyUnicode_JoinArray( - PyObject *separator, - PyObject *const *items, - Py_ssize_t seqlen - ); - -/* Test whether a unicode is equal to ASCII identifier. Return 1 if true, - 0 otherwise. The right argument must be ASCII identifier. - Any error occurs inside will be cleared before return. */ -PyAPI_FUNC(int) _PyUnicode_EqualToASCIIId( - PyObject *left, /* Left string */ - _Py_Identifier *right /* Right identifier */ - ); - -/* Test whether a unicode is equal to ASCII string. Return 1 if true, - 0 otherwise. The right argument must be ASCII-encoded string. - Any error occurs inside will be cleared before return. */ -PyAPI_FUNC(int) _PyUnicode_EqualToASCIIString( - PyObject *left, - const char *right /* ASCII-encoded string */ - ); - -/* Externally visible for str.strip(unicode) */ -PyAPI_FUNC(PyObject *) _PyUnicode_XStrip( - PyObject *self, - int striptype, - PyObject *sepobj - ); - -/* Using explicit passed-in values, insert the thousands grouping - into the string pointed to by buffer. For the argument descriptions, - see Objects/stringlib/localeutil.h */ -PyAPI_FUNC(Py_ssize_t) _PyUnicode_InsertThousandsGrouping( - _PyUnicodeWriter *writer, - Py_ssize_t n_buffer, - PyObject *digits, - Py_ssize_t d_pos, - Py_ssize_t n_digits, - Py_ssize_t min_width, - const char *grouping, - PyObject *thousands_sep, - Py_UCS4 *maxchar); - -/* === Characters Type APIs =============================================== */ - -/* Helper array used by Py_UNICODE_ISSPACE(). */ - -PyAPI_DATA(const unsigned char) _Py_ascii_whitespace[]; - -/* These should not be used directly. Use the Py_UNICODE_IS* and - Py_UNICODE_TO* macros instead. - - These APIs are implemented in Objects/unicodectype.c. - -*/ - -PyAPI_FUNC(int) _PyUnicode_IsLowercase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsUppercase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsTitlecase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsXidStart( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsXidContinue( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsWhitespace( - const Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsLinebreak( - const Py_UCS4 ch /* Unicode character */ - ); - -/* Py_DEPRECATED(3.3) */ PyAPI_FUNC(Py_UCS4) _PyUnicode_ToLowercase( - Py_UCS4 ch /* Unicode character */ - ); - -/* Py_DEPRECATED(3.3) */ PyAPI_FUNC(Py_UCS4) _PyUnicode_ToUppercase( - Py_UCS4 ch /* Unicode character */ - ); - -Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UCS4) _PyUnicode_ToTitlecase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_ToLowerFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_ToTitleFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_ToUpperFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_ToFoldedFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_IsCaseIgnorable( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsCased( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_ToDecimalDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_ToDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(double) _PyUnicode_ToNumeric( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsDecimalDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsNumeric( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsPrintable( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsAlpha( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(PyObject*) _PyUnicode_FormatLong(PyObject *, int, int, int); - -/* Return an interned Unicode object for an Identifier; may fail if there is no memory.*/ -PyAPI_FUNC(PyObject*) _PyUnicode_FromId(_Py_Identifier*); - -/* Fast equality check when the inputs are known to be exact unicode types - and where the hash values are equal (i.e. a very probable match) */ -PyAPI_FUNC(int) _PyUnicode_EQ(PyObject *, PyObject *); - -PyAPI_FUNC(int) _PyUnicode_WideCharString_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyUnicode_WideCharString_Opt_Converter(PyObject *, void *); - -PyAPI_FUNC(Py_ssize_t) _PyUnicode_ScanIdentifier(PyObject *); diff --git a/_Pre_Builds/_Python310_cpp/include/datetime.h b/_Pre_Builds/_Python310_cpp/include/datetime.h deleted file mode 100644 index bb56520..0000000 --- a/_Pre_Builds/_Python310_cpp/include/datetime.h +++ /dev/null @@ -1,267 +0,0 @@ -/* datetime.h - */ -#ifndef Py_LIMITED_API -#ifndef DATETIME_H -#define DATETIME_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Fields are packed into successive bytes, each viewed as unsigned and - * big-endian, unless otherwise noted: - * - * byte offset - * 0 year 2 bytes, 1-9999 - * 2 month 1 byte, 1-12 - * 3 day 1 byte, 1-31 - * 4 hour 1 byte, 0-23 - * 5 minute 1 byte, 0-59 - * 6 second 1 byte, 0-59 - * 7 usecond 3 bytes, 0-999999 - * 10 - */ - -/* # of bytes for year, month, and day. */ -#define _PyDateTime_DATE_DATASIZE 4 - -/* # of bytes for hour, minute, second, and usecond. */ -#define _PyDateTime_TIME_DATASIZE 6 - -/* # of bytes for year, month, day, hour, minute, second, and usecond. */ -#define _PyDateTime_DATETIME_DATASIZE 10 - - -typedef struct -{ - PyObject_HEAD - Py_hash_t hashcode; /* -1 when unknown */ - int days; /* -MAX_DELTA_DAYS <= days <= MAX_DELTA_DAYS */ - int seconds; /* 0 <= seconds < 24*3600 is invariant */ - int microseconds; /* 0 <= microseconds < 1000000 is invariant */ -} PyDateTime_Delta; - -typedef struct -{ - PyObject_HEAD /* a pure abstract base class */ -} PyDateTime_TZInfo; - - -/* The datetime and time types have hashcodes, and an optional tzinfo member, - * present if and only if hastzinfo is true. - */ -#define _PyTZINFO_HEAD \ - PyObject_HEAD \ - Py_hash_t hashcode; \ - char hastzinfo; /* boolean flag */ - -/* No _PyDateTime_BaseTZInfo is allocated; it's just to have something - * convenient to cast to, when getting at the hastzinfo member of objects - * starting with _PyTZINFO_HEAD. - */ -typedef struct -{ - _PyTZINFO_HEAD -} _PyDateTime_BaseTZInfo; - -/* All time objects are of PyDateTime_TimeType, but that can be allocated - * in two ways, with or without a tzinfo member. Without is the same as - * tzinfo == None, but consumes less memory. _PyDateTime_BaseTime is an - * internal struct used to allocate the right amount of space for the - * "without" case. - */ -#define _PyDateTime_TIMEHEAD \ - _PyTZINFO_HEAD \ - unsigned char data[_PyDateTime_TIME_DATASIZE]; - -typedef struct -{ - _PyDateTime_TIMEHEAD -} _PyDateTime_BaseTime; /* hastzinfo false */ - -typedef struct -{ - _PyDateTime_TIMEHEAD - unsigned char fold; - PyObject *tzinfo; -} PyDateTime_Time; /* hastzinfo true */ - - -/* All datetime objects are of PyDateTime_DateTimeType, but that can be - * allocated in two ways too, just like for time objects above. In addition, - * the plain date type is a base class for datetime, so it must also have - * a hastzinfo member (although it's unused there). - */ -typedef struct -{ - _PyTZINFO_HEAD - unsigned char data[_PyDateTime_DATE_DATASIZE]; -} PyDateTime_Date; - -#define _PyDateTime_DATETIMEHEAD \ - _PyTZINFO_HEAD \ - unsigned char data[_PyDateTime_DATETIME_DATASIZE]; - -typedef struct -{ - _PyDateTime_DATETIMEHEAD -} _PyDateTime_BaseDateTime; /* hastzinfo false */ - -typedef struct -{ - _PyDateTime_DATETIMEHEAD - unsigned char fold; - PyObject *tzinfo; -} PyDateTime_DateTime; /* hastzinfo true */ - - -/* Apply for date and datetime instances. */ - -// o is a pointer to a time or a datetime object. -#define _PyDateTime_HAS_TZINFO(o) (((_PyDateTime_BaseTZInfo *)(o))->hastzinfo) - -#define PyDateTime_GET_YEAR(o) ((((PyDateTime_Date*)o)->data[0] << 8) | \ - ((PyDateTime_Date*)o)->data[1]) -#define PyDateTime_GET_MONTH(o) (((PyDateTime_Date*)o)->data[2]) -#define PyDateTime_GET_DAY(o) (((PyDateTime_Date*)o)->data[3]) - -#define PyDateTime_DATE_GET_HOUR(o) (((PyDateTime_DateTime*)o)->data[4]) -#define PyDateTime_DATE_GET_MINUTE(o) (((PyDateTime_DateTime*)o)->data[5]) -#define PyDateTime_DATE_GET_SECOND(o) (((PyDateTime_DateTime*)o)->data[6]) -#define PyDateTime_DATE_GET_MICROSECOND(o) \ - ((((PyDateTime_DateTime*)o)->data[7] << 16) | \ - (((PyDateTime_DateTime*)o)->data[8] << 8) | \ - ((PyDateTime_DateTime*)o)->data[9]) -#define PyDateTime_DATE_GET_FOLD(o) (((PyDateTime_DateTime*)o)->fold) -#define PyDateTime_DATE_GET_TZINFO(o) (_PyDateTime_HAS_TZINFO(o) ? \ - ((PyDateTime_DateTime *)(o))->tzinfo : Py_None) - -/* Apply for time instances. */ -#define PyDateTime_TIME_GET_HOUR(o) (((PyDateTime_Time*)o)->data[0]) -#define PyDateTime_TIME_GET_MINUTE(o) (((PyDateTime_Time*)o)->data[1]) -#define PyDateTime_TIME_GET_SECOND(o) (((PyDateTime_Time*)o)->data[2]) -#define PyDateTime_TIME_GET_MICROSECOND(o) \ - ((((PyDateTime_Time*)o)->data[3] << 16) | \ - (((PyDateTime_Time*)o)->data[4] << 8) | \ - ((PyDateTime_Time*)o)->data[5]) -#define PyDateTime_TIME_GET_FOLD(o) (((PyDateTime_Time*)o)->fold) -#define PyDateTime_TIME_GET_TZINFO(o) (_PyDateTime_HAS_TZINFO(o) ? \ - ((PyDateTime_Time *)(o))->tzinfo : Py_None) - -/* Apply for time delta instances */ -#define PyDateTime_DELTA_GET_DAYS(o) (((PyDateTime_Delta*)o)->days) -#define PyDateTime_DELTA_GET_SECONDS(o) (((PyDateTime_Delta*)o)->seconds) -#define PyDateTime_DELTA_GET_MICROSECONDS(o) \ - (((PyDateTime_Delta*)o)->microseconds) - - -/* Define structure for C API. */ -typedef struct { - /* type objects */ - PyTypeObject *DateType; - PyTypeObject *DateTimeType; - PyTypeObject *TimeType; - PyTypeObject *DeltaType; - PyTypeObject *TZInfoType; - - /* singletons */ - PyObject *TimeZone_UTC; - - /* constructors */ - PyObject *(*Date_FromDate)(int, int, int, PyTypeObject*); - PyObject *(*DateTime_FromDateAndTime)(int, int, int, int, int, int, int, - PyObject*, PyTypeObject*); - PyObject *(*Time_FromTime)(int, int, int, int, PyObject*, PyTypeObject*); - PyObject *(*Delta_FromDelta)(int, int, int, int, PyTypeObject*); - PyObject *(*TimeZone_FromTimeZone)(PyObject *offset, PyObject *name); - - /* constructors for the DB API */ - PyObject *(*DateTime_FromTimestamp)(PyObject*, PyObject*, PyObject*); - PyObject *(*Date_FromTimestamp)(PyObject*, PyObject*); - - /* PEP 495 constructors */ - PyObject *(*DateTime_FromDateAndTimeAndFold)(int, int, int, int, int, int, int, - PyObject*, int, PyTypeObject*); - PyObject *(*Time_FromTimeAndFold)(int, int, int, int, PyObject*, int, PyTypeObject*); - -} PyDateTime_CAPI; - -#define PyDateTime_CAPSULE_NAME "datetime.datetime_CAPI" - - -/* This block is only used as part of the public API and should not be - * included in _datetimemodule.c, which does not use the C API capsule. - * See bpo-35081 for more details. - * */ -#ifndef _PY_DATETIME_IMPL -/* Define global variable for the C API and a macro for setting it. */ -static PyDateTime_CAPI *PyDateTimeAPI = NULL; - -#define PyDateTime_IMPORT \ - PyDateTimeAPI = (PyDateTime_CAPI *)PyCapsule_Import(PyDateTime_CAPSULE_NAME, 0) - -/* Macro for access to the UTC singleton */ -#define PyDateTime_TimeZone_UTC PyDateTimeAPI->TimeZone_UTC - -/* Macros for type checking when not building the Python core. */ -#define PyDate_Check(op) PyObject_TypeCheck(op, PyDateTimeAPI->DateType) -#define PyDate_CheckExact(op) Py_IS_TYPE(op, PyDateTimeAPI->DateType) - -#define PyDateTime_Check(op) PyObject_TypeCheck(op, PyDateTimeAPI->DateTimeType) -#define PyDateTime_CheckExact(op) Py_IS_TYPE(op, PyDateTimeAPI->DateTimeType) - -#define PyTime_Check(op) PyObject_TypeCheck(op, PyDateTimeAPI->TimeType) -#define PyTime_CheckExact(op) Py_IS_TYPE(op, PyDateTimeAPI->TimeType) - -#define PyDelta_Check(op) PyObject_TypeCheck(op, PyDateTimeAPI->DeltaType) -#define PyDelta_CheckExact(op) Py_IS_TYPE(op, PyDateTimeAPI->DeltaType) - -#define PyTZInfo_Check(op) PyObject_TypeCheck(op, PyDateTimeAPI->TZInfoType) -#define PyTZInfo_CheckExact(op) Py_IS_TYPE(op, PyDateTimeAPI->TZInfoType) - - -/* Macros for accessing constructors in a simplified fashion. */ -#define PyDate_FromDate(year, month, day) \ - PyDateTimeAPI->Date_FromDate(year, month, day, PyDateTimeAPI->DateType) - -#define PyDateTime_FromDateAndTime(year, month, day, hour, min, sec, usec) \ - PyDateTimeAPI->DateTime_FromDateAndTime(year, month, day, hour, \ - min, sec, usec, Py_None, PyDateTimeAPI->DateTimeType) - -#define PyDateTime_FromDateAndTimeAndFold(year, month, day, hour, min, sec, usec, fold) \ - PyDateTimeAPI->DateTime_FromDateAndTimeAndFold(year, month, day, hour, \ - min, sec, usec, Py_None, fold, PyDateTimeAPI->DateTimeType) - -#define PyTime_FromTime(hour, minute, second, usecond) \ - PyDateTimeAPI->Time_FromTime(hour, minute, second, usecond, \ - Py_None, PyDateTimeAPI->TimeType) - -#define PyTime_FromTimeAndFold(hour, minute, second, usecond, fold) \ - PyDateTimeAPI->Time_FromTimeAndFold(hour, minute, second, usecond, \ - Py_None, fold, PyDateTimeAPI->TimeType) - -#define PyDelta_FromDSU(days, seconds, useconds) \ - PyDateTimeAPI->Delta_FromDelta(days, seconds, useconds, 1, \ - PyDateTimeAPI->DeltaType) - -#define PyTimeZone_FromOffset(offset) \ - PyDateTimeAPI->TimeZone_FromTimeZone(offset, NULL) - -#define PyTimeZone_FromOffsetAndName(offset, name) \ - PyDateTimeAPI->TimeZone_FromTimeZone(offset, name) - -/* Macros supporting the DB API. */ -#define PyDateTime_FromTimestamp(args) \ - PyDateTimeAPI->DateTime_FromTimestamp( \ - (PyObject*) (PyDateTimeAPI->DateTimeType), args, NULL) - -#define PyDate_FromTimestamp(args) \ - PyDateTimeAPI->Date_FromTimestamp( \ - (PyObject*) (PyDateTimeAPI->DateType), args) - -#endif /* !defined(_PY_DATETIME_IMPL) */ - -#ifdef __cplusplus -} -#endif -#endif -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/descrobject.h b/_Pre_Builds/_Python310_cpp/include/descrobject.h deleted file mode 100644 index 703bc8f..0000000 --- a/_Pre_Builds/_Python310_cpp/include/descrobject.h +++ /dev/null @@ -1,108 +0,0 @@ -/* Descriptors */ -#ifndef Py_DESCROBJECT_H -#define Py_DESCROBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef PyObject *(*getter)(PyObject *, void *); -typedef int (*setter)(PyObject *, PyObject *, void *); - -typedef struct PyGetSetDef { - const char *name; - getter get; - setter set; - const char *doc; - void *closure; -} PyGetSetDef; - -#ifndef Py_LIMITED_API -typedef PyObject *(*wrapperfunc)(PyObject *self, PyObject *args, - void *wrapped); - -typedef PyObject *(*wrapperfunc_kwds)(PyObject *self, PyObject *args, - void *wrapped, PyObject *kwds); - -struct wrapperbase { - const char *name; - int offset; - void *function; - wrapperfunc wrapper; - const char *doc; - int flags; - PyObject *name_strobj; -}; - -/* Flags for above struct */ -#define PyWrapperFlag_KEYWORDS 1 /* wrapper function takes keyword args */ - -/* Various kinds of descriptor objects */ - -typedef struct { - PyObject_HEAD - PyTypeObject *d_type; - PyObject *d_name; - PyObject *d_qualname; -} PyDescrObject; - -#define PyDescr_COMMON PyDescrObject d_common - -#define PyDescr_TYPE(x) (((PyDescrObject *)(x))->d_type) -#define PyDescr_NAME(x) (((PyDescrObject *)(x))->d_name) - -typedef struct { - PyDescr_COMMON; - PyMethodDef *d_method; - vectorcallfunc vectorcall; -} PyMethodDescrObject; - -typedef struct { - PyDescr_COMMON; - struct PyMemberDef *d_member; -} PyMemberDescrObject; - -typedef struct { - PyDescr_COMMON; - PyGetSetDef *d_getset; -} PyGetSetDescrObject; - -typedef struct { - PyDescr_COMMON; - struct wrapperbase *d_base; - void *d_wrapped; /* This can be any function pointer */ -} PyWrapperDescrObject; -#endif /* Py_LIMITED_API */ - -PyAPI_DATA(PyTypeObject) PyClassMethodDescr_Type; -PyAPI_DATA(PyTypeObject) PyGetSetDescr_Type; -PyAPI_DATA(PyTypeObject) PyMemberDescr_Type; -PyAPI_DATA(PyTypeObject) PyMethodDescr_Type; -PyAPI_DATA(PyTypeObject) PyWrapperDescr_Type; -PyAPI_DATA(PyTypeObject) PyDictProxy_Type; -#ifndef Py_LIMITED_API -PyAPI_DATA(PyTypeObject) _PyMethodWrapper_Type; -#endif /* Py_LIMITED_API */ - -PyAPI_FUNC(PyObject *) PyDescr_NewMethod(PyTypeObject *, PyMethodDef *); -PyAPI_FUNC(PyObject *) PyDescr_NewClassMethod(PyTypeObject *, PyMethodDef *); -struct PyMemberDef; /* forward declaration for following prototype */ -PyAPI_FUNC(PyObject *) PyDescr_NewMember(PyTypeObject *, - struct PyMemberDef *); -PyAPI_FUNC(PyObject *) PyDescr_NewGetSet(PyTypeObject *, - struct PyGetSetDef *); -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) PyDescr_NewWrapper(PyTypeObject *, - struct wrapperbase *, void *); -PyAPI_FUNC(int) PyDescr_IsData(PyObject *); -#endif - -PyAPI_FUNC(PyObject *) PyDictProxy_New(PyObject *); -PyAPI_FUNC(PyObject *) PyWrapper_New(PyObject *, PyObject *); - - -PyAPI_DATA(PyTypeObject) PyProperty_Type; -#ifdef __cplusplus -} -#endif -#endif /* !Py_DESCROBJECT_H */ - diff --git a/_Pre_Builds/_Python310_cpp/include/dictobject.h b/_Pre_Builds/_Python310_cpp/include/dictobject.h deleted file mode 100644 index da5a36b..0000000 --- a/_Pre_Builds/_Python310_cpp/include/dictobject.h +++ /dev/null @@ -1,97 +0,0 @@ -#ifndef Py_DICTOBJECT_H -#define Py_DICTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Dictionary object type -- mapping from hashable object to object */ - -/* The distribution includes a separate file, Objects/dictnotes.txt, - describing explorations into dictionary design and optimization. - It covers typical dictionary use patterns, the parameters for - tuning dictionaries, and several ideas for possible optimizations. -*/ - -PyAPI_DATA(PyTypeObject) PyDict_Type; - -#define PyDict_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_DICT_SUBCLASS) -#define PyDict_CheckExact(op) Py_IS_TYPE(op, &PyDict_Type) - -PyAPI_FUNC(PyObject *) PyDict_New(void); -PyAPI_FUNC(PyObject *) PyDict_GetItem(PyObject *mp, PyObject *key); -PyAPI_FUNC(PyObject *) PyDict_GetItemWithError(PyObject *mp, PyObject *key); -PyAPI_FUNC(int) PyDict_SetItem(PyObject *mp, PyObject *key, PyObject *item); -PyAPI_FUNC(int) PyDict_DelItem(PyObject *mp, PyObject *key); -PyAPI_FUNC(void) PyDict_Clear(PyObject *mp); -PyAPI_FUNC(int) PyDict_Next( - PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value); -PyAPI_FUNC(PyObject *) PyDict_Keys(PyObject *mp); -PyAPI_FUNC(PyObject *) PyDict_Values(PyObject *mp); -PyAPI_FUNC(PyObject *) PyDict_Items(PyObject *mp); -PyAPI_FUNC(Py_ssize_t) PyDict_Size(PyObject *mp); -PyAPI_FUNC(PyObject *) PyDict_Copy(PyObject *mp); -PyAPI_FUNC(int) PyDict_Contains(PyObject *mp, PyObject *key); - -/* PyDict_Update(mp, other) is equivalent to PyDict_Merge(mp, other, 1). */ -PyAPI_FUNC(int) PyDict_Update(PyObject *mp, PyObject *other); - -/* PyDict_Merge updates/merges from a mapping object (an object that - supports PyMapping_Keys() and PyObject_GetItem()). If override is true, - the last occurrence of a key wins, else the first. The Python - dict.update(other) is equivalent to PyDict_Merge(dict, other, 1). -*/ -PyAPI_FUNC(int) PyDict_Merge(PyObject *mp, - PyObject *other, - int override); - -/* PyDict_MergeFromSeq2 updates/merges from an iterable object producing - iterable objects of length 2. If override is true, the last occurrence - of a key wins, else the first. The Python dict constructor dict(seq2) - is equivalent to dict={}; PyDict_MergeFromSeq(dict, seq2, 1). -*/ -PyAPI_FUNC(int) PyDict_MergeFromSeq2(PyObject *d, - PyObject *seq2, - int override); - -PyAPI_FUNC(PyObject *) PyDict_GetItemString(PyObject *dp, const char *key); -PyAPI_FUNC(int) PyDict_SetItemString(PyObject *dp, const char *key, PyObject *item); -PyAPI_FUNC(int) PyDict_DelItemString(PyObject *dp, const char *key); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -PyAPI_FUNC(PyObject *) PyObject_GenericGetDict(PyObject *, void *); -#endif - -/* Dictionary (keys, values, items) views */ - -PyAPI_DATA(PyTypeObject) PyDictKeys_Type; -PyAPI_DATA(PyTypeObject) PyDictValues_Type; -PyAPI_DATA(PyTypeObject) PyDictItems_Type; - -#define PyDictKeys_Check(op) PyObject_TypeCheck(op, &PyDictKeys_Type) -#define PyDictValues_Check(op) PyObject_TypeCheck(op, &PyDictValues_Type) -#define PyDictItems_Check(op) PyObject_TypeCheck(op, &PyDictItems_Type) -/* This excludes Values, since they are not sets. */ -# define PyDictViewSet_Check(op) \ - (PyDictKeys_Check(op) || PyDictItems_Check(op)) - -/* Dictionary (key, value, items) iterators */ - -PyAPI_DATA(PyTypeObject) PyDictIterKey_Type; -PyAPI_DATA(PyTypeObject) PyDictIterValue_Type; -PyAPI_DATA(PyTypeObject) PyDictIterItem_Type; - -PyAPI_DATA(PyTypeObject) PyDictRevIterKey_Type; -PyAPI_DATA(PyTypeObject) PyDictRevIterItem_Type; -PyAPI_DATA(PyTypeObject) PyDictRevIterValue_Type; - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_DICTOBJECT_H -# include "cpython/dictobject.h" -# undef Py_CPYTHON_DICTOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_DICTOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/dynamic_annotations.h b/_Pre_Builds/_Python310_cpp/include/dynamic_annotations.h deleted file mode 100644 index 4d4def9..0000000 --- a/_Pre_Builds/_Python310_cpp/include/dynamic_annotations.h +++ /dev/null @@ -1,499 +0,0 @@ -/* Copyright (c) 2008-2009, Google Inc. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Neither the name of Google Inc. nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * --- - * Author: Kostya Serebryany - * Copied to CPython by Jeffrey Yasskin, with all macros renamed to - * start with _Py_ to avoid colliding with users embedding Python, and - * with deprecated macros removed. - */ - -/* This file defines dynamic annotations for use with dynamic analysis - tool such as valgrind, PIN, etc. - - Dynamic annotation is a source code annotation that affects - the generated code (that is, the annotation is not a comment). - Each such annotation is attached to a particular - instruction and/or to a particular object (address) in the program. - - The annotations that should be used by users are macros in all upper-case - (e.g., _Py_ANNOTATE_NEW_MEMORY). - - Actual implementation of these macros may differ depending on the - dynamic analysis tool being used. - - See https://code.google.com/p/data-race-test/ for more information. - - This file supports the following dynamic analysis tools: - - None (DYNAMIC_ANNOTATIONS_ENABLED is not defined or zero). - Macros are defined empty. - - ThreadSanitizer, Helgrind, DRD (DYNAMIC_ANNOTATIONS_ENABLED is 1). - Macros are defined as calls to non-inlinable empty functions - that are intercepted by Valgrind. */ - -#ifndef __DYNAMIC_ANNOTATIONS_H__ -#define __DYNAMIC_ANNOTATIONS_H__ - -#ifndef DYNAMIC_ANNOTATIONS_ENABLED -# define DYNAMIC_ANNOTATIONS_ENABLED 0 -#endif - -#if DYNAMIC_ANNOTATIONS_ENABLED != 0 - - /* ------------------------------------------------------------- - Annotations useful when implementing condition variables such as CondVar, - using conditional critical sections (Await/LockWhen) and when constructing - user-defined synchronization mechanisms. - - The annotations _Py_ANNOTATE_HAPPENS_BEFORE() and - _Py_ANNOTATE_HAPPENS_AFTER() can be used to define happens-before arcs in - user-defined synchronization mechanisms: the race detector will infer an - arc from the former to the latter when they share the same argument - pointer. - - Example 1 (reference counting): - - void Unref() { - _Py_ANNOTATE_HAPPENS_BEFORE(&refcount_); - if (AtomicDecrementByOne(&refcount_) == 0) { - _Py_ANNOTATE_HAPPENS_AFTER(&refcount_); - delete this; - } - } - - Example 2 (message queue): - - void MyQueue::Put(Type *e) { - MutexLock lock(&mu_); - _Py_ANNOTATE_HAPPENS_BEFORE(e); - PutElementIntoMyQueue(e); - } - - Type *MyQueue::Get() { - MutexLock lock(&mu_); - Type *e = GetElementFromMyQueue(); - _Py_ANNOTATE_HAPPENS_AFTER(e); - return e; - } - - Note: when possible, please use the existing reference counting and message - queue implementations instead of inventing new ones. */ - - /* Report that wait on the condition variable at address "cv" has succeeded - and the lock at address "lock" is held. */ -#define _Py_ANNOTATE_CONDVAR_LOCK_WAIT(cv, lock) \ - AnnotateCondVarWait(__FILE__, __LINE__, cv, lock) - - /* Report that wait on the condition variable at "cv" has succeeded. Variant - w/o lock. */ -#define _Py_ANNOTATE_CONDVAR_WAIT(cv) \ - AnnotateCondVarWait(__FILE__, __LINE__, cv, NULL) - - /* Report that we are about to signal on the condition variable at address - "cv". */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL(cv) \ - AnnotateCondVarSignal(__FILE__, __LINE__, cv) - - /* Report that we are about to signal_all on the condition variable at "cv". */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL_ALL(cv) \ - AnnotateCondVarSignalAll(__FILE__, __LINE__, cv) - - /* Annotations for user-defined synchronization mechanisms. */ -#define _Py_ANNOTATE_HAPPENS_BEFORE(obj) _Py_ANNOTATE_CONDVAR_SIGNAL(obj) -#define _Py_ANNOTATE_HAPPENS_AFTER(obj) _Py_ANNOTATE_CONDVAR_WAIT(obj) - - /* Report that the bytes in the range [pointer, pointer+size) are about - to be published safely. The race checker will create a happens-before - arc from the call _Py_ANNOTATE_PUBLISH_MEMORY_RANGE(pointer, size) to - subsequent accesses to this memory. - Note: this annotation may not work properly if the race detector uses - sampling, i.e. does not observe all memory accesses. - */ -#define _Py_ANNOTATE_PUBLISH_MEMORY_RANGE(pointer, size) \ - AnnotatePublishMemoryRange(__FILE__, __LINE__, pointer, size) - - /* Instruct the tool to create a happens-before arc between mu->Unlock() and - mu->Lock(). This annotation may slow down the race detector and hide real - races. Normally it is used only when it would be difficult to annotate each - of the mutex's critical sections individually using the annotations above. - This annotation makes sense only for hybrid race detectors. For pure - happens-before detectors this is a no-op. For more details see - https://code.google.com/p/data-race-test/wiki/PureHappensBeforeVsHybrid . */ -#define _Py_ANNOTATE_PURE_HAPPENS_BEFORE_MUTEX(mu) \ - AnnotateMutexIsUsedAsCondVar(__FILE__, __LINE__, mu) - - /* ------------------------------------------------------------- - Annotations useful when defining memory allocators, or when memory that - was protected in one way starts to be protected in another. */ - - /* Report that a new memory at "address" of size "size" has been allocated. - This might be used when the memory has been retrieved from a free list and - is about to be reused, or when the locking discipline for a variable - changes. */ -#define _Py_ANNOTATE_NEW_MEMORY(address, size) \ - AnnotateNewMemory(__FILE__, __LINE__, address, size) - - /* ------------------------------------------------------------- - Annotations useful when defining FIFO queues that transfer data between - threads. */ - - /* Report that the producer-consumer queue (such as ProducerConsumerQueue) at - address "pcq" has been created. The _Py_ANNOTATE_PCQ_* annotations should - be used only for FIFO queues. For non-FIFO queues use - _Py_ANNOTATE_HAPPENS_BEFORE (for put) and _Py_ANNOTATE_HAPPENS_AFTER (for - get). */ -#define _Py_ANNOTATE_PCQ_CREATE(pcq) \ - AnnotatePCQCreate(__FILE__, __LINE__, pcq) - - /* Report that the queue at address "pcq" is about to be destroyed. */ -#define _Py_ANNOTATE_PCQ_DESTROY(pcq) \ - AnnotatePCQDestroy(__FILE__, __LINE__, pcq) - - /* Report that we are about to put an element into a FIFO queue at address - "pcq". */ -#define _Py_ANNOTATE_PCQ_PUT(pcq) \ - AnnotatePCQPut(__FILE__, __LINE__, pcq) - - /* Report that we've just got an element from a FIFO queue at address "pcq". */ -#define _Py_ANNOTATE_PCQ_GET(pcq) \ - AnnotatePCQGet(__FILE__, __LINE__, pcq) - - /* ------------------------------------------------------------- - Annotations that suppress errors. It is usually better to express the - program's synchronization using the other annotations, but these can - be used when all else fails. */ - - /* Report that we may have a benign race at "pointer", with size - "sizeof(*(pointer))". "pointer" must be a non-void* pointer. Insert at the - point where "pointer" has been allocated, preferably close to the point - where the race happens. See also _Py_ANNOTATE_BENIGN_RACE_STATIC. */ -#define _Py_ANNOTATE_BENIGN_RACE(pointer, description) \ - AnnotateBenignRaceSized(__FILE__, __LINE__, pointer, \ - sizeof(*(pointer)), description) - - /* Same as _Py_ANNOTATE_BENIGN_RACE(address, description), but applies to - the memory range [address, address+size). */ -#define _Py_ANNOTATE_BENIGN_RACE_SIZED(address, size, description) \ - AnnotateBenignRaceSized(__FILE__, __LINE__, address, size, description) - - /* Request the analysis tool to ignore all reads in the current thread - until _Py_ANNOTATE_IGNORE_READS_END is called. - Useful to ignore intentional racey reads, while still checking - other reads and all writes. - See also _Py_ANNOTATE_UNPROTECTED_READ. */ -#define _Py_ANNOTATE_IGNORE_READS_BEGIN() \ - AnnotateIgnoreReadsBegin(__FILE__, __LINE__) - - /* Stop ignoring reads. */ -#define _Py_ANNOTATE_IGNORE_READS_END() \ - AnnotateIgnoreReadsEnd(__FILE__, __LINE__) - - /* Similar to _Py_ANNOTATE_IGNORE_READS_BEGIN, but ignore writes. */ -#define _Py_ANNOTATE_IGNORE_WRITES_BEGIN() \ - AnnotateIgnoreWritesBegin(__FILE__, __LINE__) - - /* Stop ignoring writes. */ -#define _Py_ANNOTATE_IGNORE_WRITES_END() \ - AnnotateIgnoreWritesEnd(__FILE__, __LINE__) - - /* Start ignoring all memory accesses (reads and writes). */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_BEGIN() \ - do {\ - _Py_ANNOTATE_IGNORE_READS_BEGIN();\ - _Py_ANNOTATE_IGNORE_WRITES_BEGIN();\ - }while(0)\ - - /* Stop ignoring all memory accesses. */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_END() \ - do {\ - _Py_ANNOTATE_IGNORE_WRITES_END();\ - _Py_ANNOTATE_IGNORE_READS_END();\ - }while(0)\ - - /* Similar to _Py_ANNOTATE_IGNORE_READS_BEGIN, but ignore synchronization events: - RWLOCK* and CONDVAR*. */ -#define _Py_ANNOTATE_IGNORE_SYNC_BEGIN() \ - AnnotateIgnoreSyncBegin(__FILE__, __LINE__) - - /* Stop ignoring sync events. */ -#define _Py_ANNOTATE_IGNORE_SYNC_END() \ - AnnotateIgnoreSyncEnd(__FILE__, __LINE__) - - - /* Enable (enable!=0) or disable (enable==0) race detection for all threads. - This annotation could be useful if you want to skip expensive race analysis - during some period of program execution, e.g. during initialization. */ -#define _Py_ANNOTATE_ENABLE_RACE_DETECTION(enable) \ - AnnotateEnableRaceDetection(__FILE__, __LINE__, enable) - - /* ------------------------------------------------------------- - Annotations useful for debugging. */ - - /* Request to trace every access to "address". */ -#define _Py_ANNOTATE_TRACE_MEMORY(address) \ - AnnotateTraceMemory(__FILE__, __LINE__, address) - - /* Report the current thread name to a race detector. */ -#define _Py_ANNOTATE_THREAD_NAME(name) \ - AnnotateThreadName(__FILE__, __LINE__, name) - - /* ------------------------------------------------------------- - Annotations useful when implementing locks. They are not - normally needed by modules that merely use locks. - The "lock" argument is a pointer to the lock object. */ - - /* Report that a lock has been created at address "lock". */ -#define _Py_ANNOTATE_RWLOCK_CREATE(lock) \ - AnnotateRWLockCreate(__FILE__, __LINE__, lock) - - /* Report that the lock at address "lock" is about to be destroyed. */ -#define _Py_ANNOTATE_RWLOCK_DESTROY(lock) \ - AnnotateRWLockDestroy(__FILE__, __LINE__, lock) - - /* Report that the lock at address "lock" has been acquired. - is_w=1 for writer lock, is_w=0 for reader lock. */ -#define _Py_ANNOTATE_RWLOCK_ACQUIRED(lock, is_w) \ - AnnotateRWLockAcquired(__FILE__, __LINE__, lock, is_w) - - /* Report that the lock at address "lock" is about to be released. */ -#define _Py_ANNOTATE_RWLOCK_RELEASED(lock, is_w) \ - AnnotateRWLockReleased(__FILE__, __LINE__, lock, is_w) - - /* ------------------------------------------------------------- - Annotations useful when implementing barriers. They are not - normally needed by modules that merely use barriers. - The "barrier" argument is a pointer to the barrier object. */ - - /* Report that the "barrier" has been initialized with initial "count". - If 'reinitialization_allowed' is true, initialization is allowed to happen - multiple times w/o calling barrier_destroy() */ -#define _Py_ANNOTATE_BARRIER_INIT(barrier, count, reinitialization_allowed) \ - AnnotateBarrierInit(__FILE__, __LINE__, barrier, count, \ - reinitialization_allowed) - - /* Report that we are about to enter barrier_wait("barrier"). */ -#define _Py_ANNOTATE_BARRIER_WAIT_BEFORE(barrier) \ - AnnotateBarrierWaitBefore(__FILE__, __LINE__, barrier) - - /* Report that we just exited barrier_wait("barrier"). */ -#define _Py_ANNOTATE_BARRIER_WAIT_AFTER(barrier) \ - AnnotateBarrierWaitAfter(__FILE__, __LINE__, barrier) - - /* Report that the "barrier" has been destroyed. */ -#define _Py_ANNOTATE_BARRIER_DESTROY(barrier) \ - AnnotateBarrierDestroy(__FILE__, __LINE__, barrier) - - /* ------------------------------------------------------------- - Annotations useful for testing race detectors. */ - - /* Report that we expect a race on the variable at "address". - Use only in unit tests for a race detector. */ -#define _Py_ANNOTATE_EXPECT_RACE(address, description) \ - AnnotateExpectRace(__FILE__, __LINE__, address, description) - - /* A no-op. Insert where you like to test the interceptors. */ -#define _Py_ANNOTATE_NO_OP(arg) \ - AnnotateNoOp(__FILE__, __LINE__, arg) - - /* Force the race detector to flush its state. The actual effect depends on - * the implementation of the detector. */ -#define _Py_ANNOTATE_FLUSH_STATE() \ - AnnotateFlushState(__FILE__, __LINE__) - - -#else /* DYNAMIC_ANNOTATIONS_ENABLED == 0 */ - -#define _Py_ANNOTATE_RWLOCK_CREATE(lock) /* empty */ -#define _Py_ANNOTATE_RWLOCK_DESTROY(lock) /* empty */ -#define _Py_ANNOTATE_RWLOCK_ACQUIRED(lock, is_w) /* empty */ -#define _Py_ANNOTATE_RWLOCK_RELEASED(lock, is_w) /* empty */ -#define _Py_ANNOTATE_BARRIER_INIT(barrier, count, reinitialization_allowed) /* */ -#define _Py_ANNOTATE_BARRIER_WAIT_BEFORE(barrier) /* empty */ -#define _Py_ANNOTATE_BARRIER_WAIT_AFTER(barrier) /* empty */ -#define _Py_ANNOTATE_BARRIER_DESTROY(barrier) /* empty */ -#define _Py_ANNOTATE_CONDVAR_LOCK_WAIT(cv, lock) /* empty */ -#define _Py_ANNOTATE_CONDVAR_WAIT(cv) /* empty */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL(cv) /* empty */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL_ALL(cv) /* empty */ -#define _Py_ANNOTATE_HAPPENS_BEFORE(obj) /* empty */ -#define _Py_ANNOTATE_HAPPENS_AFTER(obj) /* empty */ -#define _Py_ANNOTATE_PUBLISH_MEMORY_RANGE(address, size) /* empty */ -#define _Py_ANNOTATE_UNPUBLISH_MEMORY_RANGE(address, size) /* empty */ -#define _Py_ANNOTATE_SWAP_MEMORY_RANGE(address, size) /* empty */ -#define _Py_ANNOTATE_PCQ_CREATE(pcq) /* empty */ -#define _Py_ANNOTATE_PCQ_DESTROY(pcq) /* empty */ -#define _Py_ANNOTATE_PCQ_PUT(pcq) /* empty */ -#define _Py_ANNOTATE_PCQ_GET(pcq) /* empty */ -#define _Py_ANNOTATE_NEW_MEMORY(address, size) /* empty */ -#define _Py_ANNOTATE_EXPECT_RACE(address, description) /* empty */ -#define _Py_ANNOTATE_BENIGN_RACE(address, description) /* empty */ -#define _Py_ANNOTATE_BENIGN_RACE_SIZED(address, size, description) /* empty */ -#define _Py_ANNOTATE_PURE_HAPPENS_BEFORE_MUTEX(mu) /* empty */ -#define _Py_ANNOTATE_MUTEX_IS_USED_AS_CONDVAR(mu) /* empty */ -#define _Py_ANNOTATE_TRACE_MEMORY(arg) /* empty */ -#define _Py_ANNOTATE_THREAD_NAME(name) /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_END() /* empty */ -#define _Py_ANNOTATE_IGNORE_WRITES_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_WRITES_END() /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_END() /* empty */ -#define _Py_ANNOTATE_IGNORE_SYNC_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_SYNC_END() /* empty */ -#define _Py_ANNOTATE_ENABLE_RACE_DETECTION(enable) /* empty */ -#define _Py_ANNOTATE_NO_OP(arg) /* empty */ -#define _Py_ANNOTATE_FLUSH_STATE() /* empty */ - -#endif /* DYNAMIC_ANNOTATIONS_ENABLED */ - -/* Use the macros above rather than using these functions directly. */ -#ifdef __cplusplus -extern "C" { -#endif -void AnnotateRWLockCreate(const char *file, int line, - const volatile void *lock); -void AnnotateRWLockDestroy(const char *file, int line, - const volatile void *lock); -void AnnotateRWLockAcquired(const char *file, int line, - const volatile void *lock, long is_w); -void AnnotateRWLockReleased(const char *file, int line, - const volatile void *lock, long is_w); -void AnnotateBarrierInit(const char *file, int line, - const volatile void *barrier, long count, - long reinitialization_allowed); -void AnnotateBarrierWaitBefore(const char *file, int line, - const volatile void *barrier); -void AnnotateBarrierWaitAfter(const char *file, int line, - const volatile void *barrier); -void AnnotateBarrierDestroy(const char *file, int line, - const volatile void *barrier); -void AnnotateCondVarWait(const char *file, int line, - const volatile void *cv, - const volatile void *lock); -void AnnotateCondVarSignal(const char *file, int line, - const volatile void *cv); -void AnnotateCondVarSignalAll(const char *file, int line, - const volatile void *cv); -void AnnotatePublishMemoryRange(const char *file, int line, - const volatile void *address, - long size); -void AnnotateUnpublishMemoryRange(const char *file, int line, - const volatile void *address, - long size); -void AnnotatePCQCreate(const char *file, int line, - const volatile void *pcq); -void AnnotatePCQDestroy(const char *file, int line, - const volatile void *pcq); -void AnnotatePCQPut(const char *file, int line, - const volatile void *pcq); -void AnnotatePCQGet(const char *file, int line, - const volatile void *pcq); -void AnnotateNewMemory(const char *file, int line, - const volatile void *address, - long size); -void AnnotateExpectRace(const char *file, int line, - const volatile void *address, - const char *description); -void AnnotateBenignRace(const char *file, int line, - const volatile void *address, - const char *description); -void AnnotateBenignRaceSized(const char *file, int line, - const volatile void *address, - long size, - const char *description); -void AnnotateMutexIsUsedAsCondVar(const char *file, int line, - const volatile void *mu); -void AnnotateTraceMemory(const char *file, int line, - const volatile void *arg); -void AnnotateThreadName(const char *file, int line, - const char *name); -void AnnotateIgnoreReadsBegin(const char *file, int line); -void AnnotateIgnoreReadsEnd(const char *file, int line); -void AnnotateIgnoreWritesBegin(const char *file, int line); -void AnnotateIgnoreWritesEnd(const char *file, int line); -void AnnotateEnableRaceDetection(const char *file, int line, int enable); -void AnnotateNoOp(const char *file, int line, - const volatile void *arg); -void AnnotateFlushState(const char *file, int line); - -/* Return non-zero value if running under valgrind. - - If "valgrind.h" is included into dynamic_annotations.c, - the regular valgrind mechanism will be used. - See http://valgrind.org/docs/manual/manual-core-adv.html about - RUNNING_ON_VALGRIND and other valgrind "client requests". - The file "valgrind.h" may be obtained by doing - svn co svn://svn.valgrind.org/valgrind/trunk/include - - If for some reason you can't use "valgrind.h" or want to fake valgrind, - there are two ways to make this function return non-zero: - - Use environment variable: export RUNNING_ON_VALGRIND=1 - - Make your tool intercept the function RunningOnValgrind() and - change its return value. - */ -int RunningOnValgrind(void); - -#ifdef __cplusplus -} -#endif - -#if DYNAMIC_ANNOTATIONS_ENABLED != 0 && defined(__cplusplus) - - /* _Py_ANNOTATE_UNPROTECTED_READ is the preferred way to annotate racey reads. - - Instead of doing - _Py_ANNOTATE_IGNORE_READS_BEGIN(); - ... = x; - _Py_ANNOTATE_IGNORE_READS_END(); - one can use - ... = _Py_ANNOTATE_UNPROTECTED_READ(x); */ - template - inline T _Py_ANNOTATE_UNPROTECTED_READ(const volatile T &x) { - _Py_ANNOTATE_IGNORE_READS_BEGIN(); - T res = x; - _Py_ANNOTATE_IGNORE_READS_END(); - return res; - } - /* Apply _Py_ANNOTATE_BENIGN_RACE_SIZED to a static variable. */ -#define _Py_ANNOTATE_BENIGN_RACE_STATIC(static_var, description) \ - namespace { \ - class static_var ## _annotator { \ - public: \ - static_var ## _annotator() { \ - _Py_ANNOTATE_BENIGN_RACE_SIZED(&static_var, \ - sizeof(static_var), \ - # static_var ": " description); \ - } \ - }; \ - static static_var ## _annotator the ## static_var ## _annotator;\ - } -#else /* DYNAMIC_ANNOTATIONS_ENABLED == 0 */ - -#define _Py_ANNOTATE_UNPROTECTED_READ(x) (x) -#define _Py_ANNOTATE_BENIGN_RACE_STATIC(static_var, description) /* empty */ - -#endif /* DYNAMIC_ANNOTATIONS_ENABLED */ - -#endif /* __DYNAMIC_ANNOTATIONS_H__ */ diff --git a/_Pre_Builds/_Python310_cpp/include/enumobject.h b/_Pre_Builds/_Python310_cpp/include/enumobject.h deleted file mode 100644 index c14dbfc..0000000 --- a/_Pre_Builds/_Python310_cpp/include/enumobject.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef Py_ENUMOBJECT_H -#define Py_ENUMOBJECT_H - -/* Enumerate Object */ - -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyEnum_Type; -PyAPI_DATA(PyTypeObject) PyReversed_Type; - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_ENUMOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/errcode.h b/_Pre_Builds/_Python310_cpp/include/errcode.h deleted file mode 100644 index 54ae929..0000000 --- a/_Pre_Builds/_Python310_cpp/include/errcode.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef Py_ERRCODE_H -#define Py_ERRCODE_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Error codes passed around between file input, tokenizer, parser and - interpreter. This is necessary so we can turn them into Python - exceptions at a higher level. Note that some errors have a - slightly different meaning when passed from the tokenizer to the - parser than when passed from the parser to the interpreter; e.g. - the parser only returns E_EOF when it hits EOF immediately, and it - never returns E_OK. */ - -#define E_OK 10 /* No error */ -#define E_EOF 11 /* End Of File */ -#define E_INTR 12 /* Interrupted */ -#define E_TOKEN 13 /* Bad token */ -#define E_SYNTAX 14 /* Syntax error */ -#define E_NOMEM 15 /* Ran out of memory */ -#define E_DONE 16 /* Parsing complete */ -#define E_ERROR 17 /* Execution error */ -#define E_TABSPACE 18 /* Inconsistent mixing of tabs and spaces */ -#define E_OVERFLOW 19 /* Node had too many children */ -#define E_TOODEEP 20 /* Too many indentation levels */ -#define E_DEDENT 21 /* No matching outer block for dedent */ -#define E_DECODE 22 /* Error in decoding into Unicode */ -#define E_EOFS 23 /* EOF in triple-quoted string */ -#define E_EOLS 24 /* EOL in single-quoted string */ -#define E_LINECONT 25 /* Unexpected characters after a line continuation */ -#define E_BADSINGLE 27 /* Ill-formed single statement input */ -#define E_INTERACT_STOP 28 /* Interactive mode stopped tokenization */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ERRCODE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/eval.h b/_Pre_Builds/_Python310_cpp/include/eval.h deleted file mode 100644 index eda28df..0000000 --- a/_Pre_Builds/_Python310_cpp/include/eval.h +++ /dev/null @@ -1,27 +0,0 @@ - -/* Interface to execute compiled code */ - -#ifndef Py_EVAL_H -#define Py_EVAL_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) PyEval_EvalCode(PyObject *, PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) PyEval_EvalCodeEx(PyObject *co, - PyObject *globals, - PyObject *locals, - PyObject *const *args, int argc, - PyObject *const *kwds, int kwdc, - PyObject *const *defs, int defc, - PyObject *kwdefs, PyObject *closure); - -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PyEval_CallTracing(PyObject *func, PyObject *args); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_EVAL_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/exports.h b/_Pre_Builds/_Python310_cpp/include/exports.h deleted file mode 100644 index fc1a5c5..0000000 --- a/_Pre_Builds/_Python310_cpp/include/exports.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef Py_EXPORTS_H -#define Py_EXPORTS_H - -#if defined(_WIN32) || defined(__CYGWIN__) - #define Py_IMPORTED_SYMBOL __declspec(dllimport) - #define Py_EXPORTED_SYMBOL __declspec(dllexport) - #define Py_LOCAL_SYMBOL -#else -/* - * If we only ever used gcc >= 5, we could use __has_attribute(visibility) - * as a cross-platform way to determine if visibility is supported. However, - * we may still need to support gcc >= 4, as some Ubuntu LTS and Centos versions - * have 4 < gcc < 5. - */ - #ifndef __has_attribute - #define __has_attribute(x) 0 // Compatibility with non-clang compilers. - #endif - #if (defined(__GNUC__) && (__GNUC__ >= 4)) ||\ - (defined(__clang__) && __has_attribute(visibility)) - #define Py_IMPORTED_SYMBOL __attribute__ ((visibility ("default"))) - #define Py_EXPORTED_SYMBOL __attribute__ ((visibility ("default"))) - #define Py_LOCAL_SYMBOL __attribute__ ((visibility ("hidden"))) - #else - #define Py_IMPORTED_SYMBOL - #define Py_EXPORTED_SYMBOL - #define Py_LOCAL_SYMBOL - #endif -#endif - -#endif /* Py_EXPORTS_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/fileobject.h b/_Pre_Builds/_Python310_cpp/include/fileobject.h deleted file mode 100644 index 6ec2994..0000000 --- a/_Pre_Builds/_Python310_cpp/include/fileobject.h +++ /dev/null @@ -1,49 +0,0 @@ -/* File object interface (what's left of it -- see io.py) */ - -#ifndef Py_FILEOBJECT_H -#define Py_FILEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#define PY_STDIOTEXTMODE "b" - -PyAPI_FUNC(PyObject *) PyFile_FromFd(int, const char *, const char *, int, - const char *, const char *, - const char *, int); -PyAPI_FUNC(PyObject *) PyFile_GetLine(PyObject *, int); -PyAPI_FUNC(int) PyFile_WriteObject(PyObject *, PyObject *, int); -PyAPI_FUNC(int) PyFile_WriteString(const char *, PyObject *); -PyAPI_FUNC(int) PyObject_AsFileDescriptor(PyObject *); - -/* The default encoding used by the platform file system APIs - If non-NULL, this is different than the default encoding for strings -*/ -PyAPI_DATA(const char *) Py_FileSystemDefaultEncoding; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_DATA(const char *) Py_FileSystemDefaultEncodeErrors; -#endif -PyAPI_DATA(int) Py_HasFileSystemDefaultEncoding; - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -PyAPI_DATA(int) Py_UTF8Mode; -#endif - -/* A routine to check if a file descriptor can be select()-ed. */ -#ifdef _MSC_VER - /* On Windows, any socket fd can be select()-ed, no matter how high */ - #define _PyIsSelectable_fd(FD) (1) -#else - #define _PyIsSelectable_fd(FD) ((unsigned int)(FD) < (unsigned int)FD_SETSIZE) -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_FILEOBJECT_H -# include "cpython/fileobject.h" -# undef Py_CPYTHON_FILEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FILEOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/fileutils.h b/_Pre_Builds/_Python310_cpp/include/fileutils.h deleted file mode 100644 index 16f3b63..0000000 --- a/_Pre_Builds/_Python310_cpp/include/fileutils.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef Py_FILEUTILS_H -#define Py_FILEUTILS_H -#ifdef __cplusplus -extern "C" { -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(wchar_t *) Py_DecodeLocale( - const char *arg, - size_t *size); - -PyAPI_FUNC(char*) Py_EncodeLocale( - const wchar_t *text, - size_t *error_pos); -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_FILEUTILS_H -# include "cpython/fileutils.h" -# undef Py_CPYTHON_FILEUTILS_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FILEUTILS_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/floatobject.h b/_Pre_Builds/_Python310_cpp/include/floatobject.h deleted file mode 100644 index e994aa8..0000000 --- a/_Pre_Builds/_Python310_cpp/include/floatobject.h +++ /dev/null @@ -1,118 +0,0 @@ - -/* Float object interface */ - -/* -PyFloatObject represents a (double precision) floating point number. -*/ - -#ifndef Py_FLOATOBJECT_H -#define Py_FLOATOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API -typedef struct { - PyObject_HEAD - double ob_fval; -} PyFloatObject; -#endif - -PyAPI_DATA(PyTypeObject) PyFloat_Type; - -#define PyFloat_Check(op) PyObject_TypeCheck(op, &PyFloat_Type) -#define PyFloat_CheckExact(op) Py_IS_TYPE(op, &PyFloat_Type) - -#ifdef Py_NAN -#define Py_RETURN_NAN return PyFloat_FromDouble(Py_NAN) -#endif - -#define Py_RETURN_INF(sign) do \ - if (copysign(1., sign) == 1.) { \ - return PyFloat_FromDouble(Py_HUGE_VAL); \ - } else { \ - return PyFloat_FromDouble(-Py_HUGE_VAL); \ - } while(0) - -PyAPI_FUNC(double) PyFloat_GetMax(void); -PyAPI_FUNC(double) PyFloat_GetMin(void); -PyAPI_FUNC(PyObject *) PyFloat_GetInfo(void); - -/* Return Python float from string PyObject. */ -PyAPI_FUNC(PyObject *) PyFloat_FromString(PyObject*); - -/* Return Python float from C double. */ -PyAPI_FUNC(PyObject *) PyFloat_FromDouble(double); - -/* Extract C double from Python float. The macro version trades safety for - speed. */ -PyAPI_FUNC(double) PyFloat_AsDouble(PyObject *); -#ifndef Py_LIMITED_API -#define PyFloat_AS_DOUBLE(op) (((PyFloatObject *)(op))->ob_fval) -#endif - -#ifndef Py_LIMITED_API -/* _PyFloat_{Pack,Unpack}{4,8} - * - * The struct and pickle (at least) modules need an efficient platform- - * independent way to store floating-point values as byte strings. - * The Pack routines produce a string from a C double, and the Unpack - * routines produce a C double from such a string. The suffix (4 or 8) - * specifies the number of bytes in the string. - * - * On platforms that appear to use (see _PyFloat_Init()) IEEE-754 formats - * these functions work by copying bits. On other platforms, the formats the - * 4- byte format is identical to the IEEE-754 single precision format, and - * the 8-byte format to the IEEE-754 double precision format, although the - * packing of INFs and NaNs (if such things exist on the platform) isn't - * handled correctly, and attempting to unpack a string containing an IEEE - * INF or NaN will raise an exception. - * - * On non-IEEE platforms with more precision, or larger dynamic range, than - * 754 supports, not all values can be packed; on non-IEEE platforms with less - * precision, or smaller dynamic range, not all values can be unpacked. What - * happens in such cases is partly accidental (alas). - */ - -/* The pack routines write 2, 4 or 8 bytes, starting at p. le is a bool - * argument, true if you want the string in little-endian format (exponent - * last, at p+1, p+3 or p+7), false if you want big-endian format (exponent - * first, at p). - * Return value: 0 if all is OK, -1 if error (and an exception is - * set, most likely OverflowError). - * There are two problems on non-IEEE platforms: - * 1): What this does is undefined if x is a NaN or infinity. - * 2): -0.0 and +0.0 produce the same string. - */ -PyAPI_FUNC(int) _PyFloat_Pack2(double x, unsigned char *p, int le); -PyAPI_FUNC(int) _PyFloat_Pack4(double x, unsigned char *p, int le); -PyAPI_FUNC(int) _PyFloat_Pack8(double x, unsigned char *p, int le); - -/* The unpack routines read 2, 4 or 8 bytes, starting at p. le is a bool - * argument, true if the string is in little-endian format (exponent - * last, at p+1, p+3 or p+7), false if big-endian (exponent first, at p). - * Return value: The unpacked double. On error, this is -1.0 and - * PyErr_Occurred() is true (and an exception is set, most likely - * OverflowError). Note that on a non-IEEE platform this will refuse - * to unpack a string that represents a NaN or infinity. - */ -PyAPI_FUNC(double) _PyFloat_Unpack2(const unsigned char *p, int le); -PyAPI_FUNC(double) _PyFloat_Unpack4(const unsigned char *p, int le); -PyAPI_FUNC(double) _PyFloat_Unpack8(const unsigned char *p, int le); - -PyAPI_FUNC(void) _PyFloat_DebugMallocStats(FILE* out); - -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -PyAPI_FUNC(int) _PyFloat_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); -#endif /* Py_LIMITED_API */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FLOATOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/frameobject.h b/_Pre_Builds/_Python310_cpp/include/frameobject.h deleted file mode 100644 index c118af1..0000000 --- a/_Pre_Builds/_Python310_cpp/include/frameobject.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Frame object interface */ - -#ifndef Py_FRAMEOBJECT_H -#define Py_FRAMEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#include "pyframe.h" - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_FRAMEOBJECT_H -# include "cpython/frameobject.h" -# undef Py_CPYTHON_FRAMEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FRAMEOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/funcobject.h b/_Pre_Builds/_Python310_cpp/include/funcobject.h deleted file mode 100644 index d7acd18..0000000 --- a/_Pre_Builds/_Python310_cpp/include/funcobject.h +++ /dev/null @@ -1,110 +0,0 @@ - -/* Function object interface */ -#ifndef Py_LIMITED_API -#ifndef Py_FUNCOBJECT_H -#define Py_FUNCOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -#define COMMON_FIELDS(PREFIX) \ - PyObject *PREFIX ## globals; \ - PyObject *PREFIX ## builtins; \ - PyObject *PREFIX ## name; \ - PyObject *PREFIX ## qualname; \ - PyObject *PREFIX ## code; /* A code object, the __code__ attribute */ \ - PyObject *PREFIX ## defaults; /* NULL or a tuple */ \ - PyObject *PREFIX ## kwdefaults; /* NULL or a dict */ \ - PyObject *PREFIX ## closure; /* NULL or a tuple of cell objects */ - -typedef struct { - COMMON_FIELDS(fc_) -} PyFrameConstructor; - -/* Function objects and code objects should not be confused with each other: - * - * Function objects are created by the execution of the 'def' statement. - * They reference a code object in their __code__ attribute, which is a - * purely syntactic object, i.e. nothing more than a compiled version of some - * source code lines. There is one code object per source code "fragment", - * but each code object can be referenced by zero or many function objects - * depending only on how many times the 'def' statement in the source was - * executed so far. - */ - -typedef struct { - PyObject_HEAD - COMMON_FIELDS(func_) - PyObject *func_doc; /* The __doc__ attribute, can be anything */ - PyObject *func_dict; /* The __dict__ attribute, a dict or NULL */ - PyObject *func_weakreflist; /* List of weak references */ - PyObject *func_module; /* The __module__ attribute, can be anything */ - PyObject *func_annotations; /* Annotations, a dict or NULL */ - vectorcallfunc vectorcall; - - /* Invariant: - * func_closure contains the bindings for func_code->co_freevars, so - * PyTuple_Size(func_closure) == PyCode_GetNumFree(func_code) - * (func_closure may be NULL if PyCode_GetNumFree(func_code) == 0). - */ -} PyFunctionObject; - -PyAPI_DATA(PyTypeObject) PyFunction_Type; - -#define PyFunction_Check(op) Py_IS_TYPE(op, &PyFunction_Type) - -PyAPI_FUNC(PyObject *) PyFunction_New(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_NewWithQualName(PyObject *, PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetCode(PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetGlobals(PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetModule(PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetDefaults(PyObject *); -PyAPI_FUNC(int) PyFunction_SetDefaults(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetKwDefaults(PyObject *); -PyAPI_FUNC(int) PyFunction_SetKwDefaults(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetClosure(PyObject *); -PyAPI_FUNC(int) PyFunction_SetClosure(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetAnnotations(PyObject *); -PyAPI_FUNC(int) PyFunction_SetAnnotations(PyObject *, PyObject *); - -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PyFunction_Vectorcall( - PyObject *func, - PyObject *const *stack, - size_t nargsf, - PyObject *kwnames); -#endif - -/* Macros for direct access to these values. Type checks are *not* - done, so use with care. */ -#define PyFunction_GET_CODE(func) \ - (((PyFunctionObject *)func) -> func_code) -#define PyFunction_GET_GLOBALS(func) \ - (((PyFunctionObject *)func) -> func_globals) -#define PyFunction_GET_MODULE(func) \ - (((PyFunctionObject *)func) -> func_module) -#define PyFunction_GET_DEFAULTS(func) \ - (((PyFunctionObject *)func) -> func_defaults) -#define PyFunction_GET_KW_DEFAULTS(func) \ - (((PyFunctionObject *)func) -> func_kwdefaults) -#define PyFunction_GET_CLOSURE(func) \ - (((PyFunctionObject *)func) -> func_closure) -#define PyFunction_GET_ANNOTATIONS(func) \ - (((PyFunctionObject *)func) -> func_annotations) - -#define PyFunction_AS_FRAME_CONSTRUCTOR(func) \ - ((PyFrameConstructor *)&((PyFunctionObject *)(func))->func_globals) - -/* The classmethod and staticmethod types lives here, too */ -PyAPI_DATA(PyTypeObject) PyClassMethod_Type; -PyAPI_DATA(PyTypeObject) PyStaticMethod_Type; - -PyAPI_FUNC(PyObject *) PyClassMethod_New(PyObject *); -PyAPI_FUNC(PyObject *) PyStaticMethod_New(PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FUNCOBJECT_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/genericaliasobject.h b/_Pre_Builds/_Python310_cpp/include/genericaliasobject.h deleted file mode 100644 index cf00297..0000000 --- a/_Pre_Builds/_Python310_cpp/include/genericaliasobject.h +++ /dev/null @@ -1,14 +0,0 @@ -// Implementation of PEP 585: support list[int] etc. -#ifndef Py_GENERICALIASOBJECT_H -#define Py_GENERICALIASOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) Py_GenericAlias(PyObject *, PyObject *); -PyAPI_DATA(PyTypeObject) Py_GenericAliasType; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_GENERICALIASOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/genobject.h b/_Pre_Builds/_Python310_cpp/include/genobject.h deleted file mode 100644 index e965334..0000000 --- a/_Pre_Builds/_Python310_cpp/include/genobject.h +++ /dev/null @@ -1,100 +0,0 @@ - -/* Generator object interface */ - -#ifndef Py_LIMITED_API -#ifndef Py_GENOBJECT_H -#define Py_GENOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#include "pystate.h" /* _PyErr_StackItem */ -#include "abstract.h" /* PySendResult */ - -/* _PyGenObject_HEAD defines the initial segment of generator - and coroutine objects. */ -#define _PyGenObject_HEAD(prefix) \ - PyObject_HEAD \ - /* Note: gi_frame can be NULL if the generator is "finished" */ \ - PyFrameObject *prefix##_frame; \ - /* The code object backing the generator */ \ - PyObject *prefix##_code; \ - /* List of weak reference. */ \ - PyObject *prefix##_weakreflist; \ - /* Name of the generator. */ \ - PyObject *prefix##_name; \ - /* Qualified name of the generator. */ \ - PyObject *prefix##_qualname; \ - _PyErr_StackItem prefix##_exc_state; - -typedef struct { - /* The gi_ prefix is intended to remind of generator-iterator. */ - _PyGenObject_HEAD(gi) -} PyGenObject; - -PyAPI_DATA(PyTypeObject) PyGen_Type; - -#define PyGen_Check(op) PyObject_TypeCheck(op, &PyGen_Type) -#define PyGen_CheckExact(op) Py_IS_TYPE(op, &PyGen_Type) - -PyAPI_FUNC(PyObject *) PyGen_New(PyFrameObject *); -PyAPI_FUNC(PyObject *) PyGen_NewWithQualName(PyFrameObject *, - PyObject *name, PyObject *qualname); -PyAPI_FUNC(int) _PyGen_SetStopIterationValue(PyObject *); -PyAPI_FUNC(int) _PyGen_FetchStopIterationValue(PyObject **); -PyObject *_PyGen_yf(PyGenObject *); -PyAPI_FUNC(void) _PyGen_Finalize(PyObject *self); - -#ifndef Py_LIMITED_API -typedef struct { - _PyGenObject_HEAD(cr) - PyObject *cr_origin; -} PyCoroObject; - -PyAPI_DATA(PyTypeObject) PyCoro_Type; -PyAPI_DATA(PyTypeObject) _PyCoroWrapper_Type; - -#define PyCoro_CheckExact(op) Py_IS_TYPE(op, &PyCoro_Type) -PyObject *_PyCoro_GetAwaitableIter(PyObject *o); -PyAPI_FUNC(PyObject *) PyCoro_New(PyFrameObject *, - PyObject *name, PyObject *qualname); - -/* Asynchronous Generators */ - -typedef struct { - _PyGenObject_HEAD(ag) - PyObject *ag_finalizer; - - /* Flag is set to 1 when hooks set up by sys.set_asyncgen_hooks - were called on the generator, to avoid calling them more - than once. */ - int ag_hooks_inited; - - /* Flag is set to 1 when aclose() is called for the first time, or - when a StopAsyncIteration exception is raised. */ - int ag_closed; - - int ag_running_async; -} PyAsyncGenObject; - -PyAPI_DATA(PyTypeObject) PyAsyncGen_Type; -PyAPI_DATA(PyTypeObject) _PyAsyncGenASend_Type; -PyAPI_DATA(PyTypeObject) _PyAsyncGenWrappedValue_Type; -PyAPI_DATA(PyTypeObject) _PyAsyncGenAThrow_Type; - -PyAPI_FUNC(PyObject *) PyAsyncGen_New(PyFrameObject *, - PyObject *name, PyObject *qualname); - -#define PyAsyncGen_CheckExact(op) Py_IS_TYPE(op, &PyAsyncGen_Type) - -PyObject *_PyAsyncGenValueWrapperNew(PyObject *); - -#endif - -#undef _PyGenObject_HEAD - -#ifdef __cplusplus -} -#endif -#endif /* !Py_GENOBJECT_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/import.h b/_Pre_Builds/_Python310_cpp/include/import.h deleted file mode 100644 index aeef3ef..0000000 --- a/_Pre_Builds/_Python310_cpp/include/import.h +++ /dev/null @@ -1,98 +0,0 @@ -/* Module definition and import interface */ - -#ifndef Py_IMPORT_H -#define Py_IMPORT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(long) PyImport_GetMagicNumber(void); -PyAPI_FUNC(const char *) PyImport_GetMagicTag(void); -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModule( - const char *name, /* UTF-8 encoded string */ - PyObject *co - ); -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleEx( - const char *name, /* UTF-8 encoded string */ - PyObject *co, - const char *pathname /* decoded from the filesystem encoding */ - ); -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleWithPathnames( - const char *name, /* UTF-8 encoded string */ - PyObject *co, - const char *pathname, /* decoded from the filesystem encoding */ - const char *cpathname /* decoded from the filesystem encoding */ - ); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleObject( - PyObject *name, - PyObject *co, - PyObject *pathname, - PyObject *cpathname - ); -#endif -PyAPI_FUNC(PyObject *) PyImport_GetModuleDict(void); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -PyAPI_FUNC(PyObject *) PyImport_GetModule(PyObject *name); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyImport_AddModuleObject( - PyObject *name - ); -#endif -PyAPI_FUNC(PyObject *) PyImport_AddModule( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyImport_ImportModule( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyImport_ImportModuleNoBlock( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyImport_ImportModuleLevel( - const char *name, /* UTF-8 encoded string */ - PyObject *globals, - PyObject *locals, - PyObject *fromlist, - int level - ); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(PyObject *) PyImport_ImportModuleLevelObject( - PyObject *name, - PyObject *globals, - PyObject *locals, - PyObject *fromlist, - int level - ); -#endif - -#define PyImport_ImportModuleEx(n, g, l, f) \ - PyImport_ImportModuleLevel(n, g, l, f, 0) - -PyAPI_FUNC(PyObject *) PyImport_GetImporter(PyObject *path); -PyAPI_FUNC(PyObject *) PyImport_Import(PyObject *name); -PyAPI_FUNC(PyObject *) PyImport_ReloadModule(PyObject *m); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(int) PyImport_ImportFrozenModuleObject( - PyObject *name - ); -#endif -PyAPI_FUNC(int) PyImport_ImportFrozenModule( - const char *name /* UTF-8 encoded string */ - ); - -PyAPI_FUNC(int) PyImport_AppendInittab( - const char *name, /* ASCII encoded string */ - PyObject* (*initfunc)(void) - ); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_IMPORT_H -# include "cpython/import.h" -# undef Py_CPYTHON_IMPORT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_IMPORT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_abstract.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_abstract.h deleted file mode 100644 index b791bf2..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_abstract.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef Py_INTERNAL_ABSTRACT_H -#define Py_INTERNAL_ABSTRACT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -// Fast inlined version of PyIndex_Check() -static inline int -_PyIndex_Check(PyObject *obj) -{ - PyNumberMethods *tp_as_number = Py_TYPE(obj)->tp_as_number; - return (tp_as_number != NULL && tp_as_number->nb_index != NULL); -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_ABSTRACT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_accu.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_accu.h deleted file mode 100644 index d346222..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_accu.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_INTERNAL_ACCU_H -#define Py_INTERNAL_ACCU_H -#ifdef __cplusplus -extern "C" { -#endif - -/*** This is a private API for use by the interpreter and the stdlib. - *** Its definition may be changed or removed at any moment. - ***/ - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* - * A two-level accumulator of unicode objects that avoids both the overhead - * of keeping a huge number of small separate objects, and the quadratic - * behaviour of using a naive repeated concatenation scheme. - */ - -#undef small /* defined by some Windows headers */ - -typedef struct { - PyObject *large; /* A list of previously accumulated large strings */ - PyObject *small; /* Pending small strings */ -} _PyAccu; - -PyAPI_FUNC(int) _PyAccu_Init(_PyAccu *acc); -PyAPI_FUNC(int) _PyAccu_Accumulate(_PyAccu *acc, PyObject *unicode); -PyAPI_FUNC(PyObject *) _PyAccu_FinishAsList(_PyAccu *acc); -PyAPI_FUNC(PyObject *) _PyAccu_Finish(_PyAccu *acc); -PyAPI_FUNC(void) _PyAccu_Destroy(_PyAccu *acc); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_ACCU_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_asdl.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_asdl.h deleted file mode 100644 index c0b07c3..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_asdl.h +++ /dev/null @@ -1,112 +0,0 @@ -#ifndef Py_INTERNAL_ASDL_H -#define Py_INTERNAL_ASDL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_pyarena.h" // _PyArena_Malloc() - -typedef PyObject * identifier; -typedef PyObject * string; -typedef PyObject * object; -typedef PyObject * constant; - -/* It would be nice if the code generated by asdl_c.py was completely - independent of Python, but it is a goal the requires too much work - at this stage. So, for example, I'll represent identifiers as - interned Python strings. -*/ - -#define _ASDL_SEQ_HEAD \ - Py_ssize_t size; \ - void **elements; - -typedef struct { - _ASDL_SEQ_HEAD -} asdl_seq; - -typedef struct { - _ASDL_SEQ_HEAD - void *typed_elements[1]; -} asdl_generic_seq; - -typedef struct { - _ASDL_SEQ_HEAD - PyObject *typed_elements[1]; -} asdl_identifier_seq; - -typedef struct { - _ASDL_SEQ_HEAD - int typed_elements[1]; -} asdl_int_seq; - -asdl_generic_seq *_Py_asdl_generic_seq_new(Py_ssize_t size, PyArena *arena); -asdl_identifier_seq *_Py_asdl_identifier_seq_new(Py_ssize_t size, PyArena *arena); -asdl_int_seq *_Py_asdl_int_seq_new(Py_ssize_t size, PyArena *arena); - - -#define GENERATE_ASDL_SEQ_CONSTRUCTOR(NAME, TYPE) \ -asdl_ ## NAME ## _seq *_Py_asdl_ ## NAME ## _seq_new(Py_ssize_t size, PyArena *arena) \ -{ \ - asdl_ ## NAME ## _seq *seq = NULL; \ - size_t n; \ - /* check size is sane */ \ - if (size < 0 || \ - (size && (((size_t)size - 1) > (SIZE_MAX / sizeof(void *))))) { \ - PyErr_NoMemory(); \ - return NULL; \ - } \ - n = (size ? (sizeof(TYPE *) * (size - 1)) : 0); \ - /* check if size can be added safely */ \ - if (n > SIZE_MAX - sizeof(asdl_ ## NAME ## _seq)) { \ - PyErr_NoMemory(); \ - return NULL; \ - } \ - n += sizeof(asdl_ ## NAME ## _seq); \ - seq = (asdl_ ## NAME ## _seq *)_PyArena_Malloc(arena, n); \ - if (!seq) { \ - PyErr_NoMemory(); \ - return NULL; \ - } \ - memset(seq, 0, n); \ - seq->size = size; \ - seq->elements = (void**)seq->typed_elements; \ - return seq; \ -} - -#define asdl_seq_GET_UNTYPED(S, I) (S)->elements[(I)] -#define asdl_seq_GET(S, I) (S)->typed_elements[(I)] -#define asdl_seq_LEN(S) ((S) == NULL ? 0 : (S)->size) - -#ifdef Py_DEBUG -# define asdl_seq_SET(S, I, V) \ - do { \ - Py_ssize_t _asdl_i = (I); \ - assert((S) != NULL); \ - assert(0 <= _asdl_i && _asdl_i < (S)->size); \ - (S)->typed_elements[_asdl_i] = (V); \ - } while (0) -#else -# define asdl_seq_SET(S, I, V) (S)->typed_elements[I] = (V) -#endif - -#ifdef Py_DEBUG -# define asdl_seq_SET_UNTYPED(S, I, V) \ - do { \ - Py_ssize_t _asdl_i = (I); \ - assert((S) != NULL); \ - assert(0 <= _asdl_i && _asdl_i < (S)->size); \ - (S)->elements[_asdl_i] = (V); \ - } while (0) -#else -# define asdl_seq_SET_UNTYPED(S, I, V) (S)->elements[I] = (V) -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_ASDL_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_ast.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_ast.h deleted file mode 100644 index ebb6a90..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_ast.h +++ /dev/null @@ -1,855 +0,0 @@ -// File automatically generated by Parser/asdl_c.py. - -#ifndef Py_INTERNAL_AST_H -#define Py_INTERNAL_AST_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_asdl.h" - -typedef struct _mod *mod_ty; - -typedef struct _stmt *stmt_ty; - -typedef struct _expr *expr_ty; - -typedef enum _expr_context { Load=1, Store=2, Del=3 } expr_context_ty; - -typedef enum _boolop { And=1, Or=2 } boolop_ty; - -typedef enum _operator { Add=1, Sub=2, Mult=3, MatMult=4, Div=5, Mod=6, Pow=7, - LShift=8, RShift=9, BitOr=10, BitXor=11, BitAnd=12, - FloorDiv=13 } operator_ty; - -typedef enum _unaryop { Invert=1, Not=2, UAdd=3, USub=4 } unaryop_ty; - -typedef enum _cmpop { Eq=1, NotEq=2, Lt=3, LtE=4, Gt=5, GtE=6, Is=7, IsNot=8, - In=9, NotIn=10 } cmpop_ty; - -typedef struct _comprehension *comprehension_ty; - -typedef struct _excepthandler *excepthandler_ty; - -typedef struct _arguments *arguments_ty; - -typedef struct _arg *arg_ty; - -typedef struct _keyword *keyword_ty; - -typedef struct _alias *alias_ty; - -typedef struct _withitem *withitem_ty; - -typedef struct _match_case *match_case_ty; - -typedef struct _pattern *pattern_ty; - -typedef struct _type_ignore *type_ignore_ty; - - -typedef struct { - _ASDL_SEQ_HEAD - mod_ty typed_elements[1]; -} asdl_mod_seq; - -asdl_mod_seq *_Py_asdl_mod_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - stmt_ty typed_elements[1]; -} asdl_stmt_seq; - -asdl_stmt_seq *_Py_asdl_stmt_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - expr_ty typed_elements[1]; -} asdl_expr_seq; - -asdl_expr_seq *_Py_asdl_expr_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - comprehension_ty typed_elements[1]; -} asdl_comprehension_seq; - -asdl_comprehension_seq *_Py_asdl_comprehension_seq_new(Py_ssize_t size, PyArena - *arena); - -typedef struct { - _ASDL_SEQ_HEAD - excepthandler_ty typed_elements[1]; -} asdl_excepthandler_seq; - -asdl_excepthandler_seq *_Py_asdl_excepthandler_seq_new(Py_ssize_t size, PyArena - *arena); - -typedef struct { - _ASDL_SEQ_HEAD - arguments_ty typed_elements[1]; -} asdl_arguments_seq; - -asdl_arguments_seq *_Py_asdl_arguments_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - arg_ty typed_elements[1]; -} asdl_arg_seq; - -asdl_arg_seq *_Py_asdl_arg_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - keyword_ty typed_elements[1]; -} asdl_keyword_seq; - -asdl_keyword_seq *_Py_asdl_keyword_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - alias_ty typed_elements[1]; -} asdl_alias_seq; - -asdl_alias_seq *_Py_asdl_alias_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - withitem_ty typed_elements[1]; -} asdl_withitem_seq; - -asdl_withitem_seq *_Py_asdl_withitem_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - match_case_ty typed_elements[1]; -} asdl_match_case_seq; - -asdl_match_case_seq *_Py_asdl_match_case_seq_new(Py_ssize_t size, PyArena - *arena); - -typedef struct { - _ASDL_SEQ_HEAD - pattern_ty typed_elements[1]; -} asdl_pattern_seq; - -asdl_pattern_seq *_Py_asdl_pattern_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - type_ignore_ty typed_elements[1]; -} asdl_type_ignore_seq; - -asdl_type_ignore_seq *_Py_asdl_type_ignore_seq_new(Py_ssize_t size, PyArena - *arena); - - -enum _mod_kind {Module_kind=1, Interactive_kind=2, Expression_kind=3, - FunctionType_kind=4}; -struct _mod { - enum _mod_kind kind; - union { - struct { - asdl_stmt_seq *body; - asdl_type_ignore_seq *type_ignores; - } Module; - - struct { - asdl_stmt_seq *body; - } Interactive; - - struct { - expr_ty body; - } Expression; - - struct { - asdl_expr_seq *argtypes; - expr_ty returns; - } FunctionType; - - } v; -}; - -enum _stmt_kind {FunctionDef_kind=1, AsyncFunctionDef_kind=2, ClassDef_kind=3, - Return_kind=4, Delete_kind=5, Assign_kind=6, - AugAssign_kind=7, AnnAssign_kind=8, For_kind=9, - AsyncFor_kind=10, While_kind=11, If_kind=12, With_kind=13, - AsyncWith_kind=14, Match_kind=15, Raise_kind=16, Try_kind=17, - Assert_kind=18, Import_kind=19, ImportFrom_kind=20, - Global_kind=21, Nonlocal_kind=22, Expr_kind=23, Pass_kind=24, - Break_kind=25, Continue_kind=26}; -struct _stmt { - enum _stmt_kind kind; - union { - struct { - identifier name; - arguments_ty args; - asdl_stmt_seq *body; - asdl_expr_seq *decorator_list; - expr_ty returns; - string type_comment; - } FunctionDef; - - struct { - identifier name; - arguments_ty args; - asdl_stmt_seq *body; - asdl_expr_seq *decorator_list; - expr_ty returns; - string type_comment; - } AsyncFunctionDef; - - struct { - identifier name; - asdl_expr_seq *bases; - asdl_keyword_seq *keywords; - asdl_stmt_seq *body; - asdl_expr_seq *decorator_list; - } ClassDef; - - struct { - expr_ty value; - } Return; - - struct { - asdl_expr_seq *targets; - } Delete; - - struct { - asdl_expr_seq *targets; - expr_ty value; - string type_comment; - } Assign; - - struct { - expr_ty target; - operator_ty op; - expr_ty value; - } AugAssign; - - struct { - expr_ty target; - expr_ty annotation; - expr_ty value; - int simple; - } AnnAssign; - - struct { - expr_ty target; - expr_ty iter; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - string type_comment; - } For; - - struct { - expr_ty target; - expr_ty iter; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - string type_comment; - } AsyncFor; - - struct { - expr_ty test; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - } While; - - struct { - expr_ty test; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - } If; - - struct { - asdl_withitem_seq *items; - asdl_stmt_seq *body; - string type_comment; - } With; - - struct { - asdl_withitem_seq *items; - asdl_stmt_seq *body; - string type_comment; - } AsyncWith; - - struct { - expr_ty subject; - asdl_match_case_seq *cases; - } Match; - - struct { - expr_ty exc; - expr_ty cause; - } Raise; - - struct { - asdl_stmt_seq *body; - asdl_excepthandler_seq *handlers; - asdl_stmt_seq *orelse; - asdl_stmt_seq *finalbody; - } Try; - - struct { - expr_ty test; - expr_ty msg; - } Assert; - - struct { - asdl_alias_seq *names; - } Import; - - struct { - identifier module; - asdl_alias_seq *names; - int level; - } ImportFrom; - - struct { - asdl_identifier_seq *names; - } Global; - - struct { - asdl_identifier_seq *names; - } Nonlocal; - - struct { - expr_ty value; - } Expr; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -enum _expr_kind {BoolOp_kind=1, NamedExpr_kind=2, BinOp_kind=3, UnaryOp_kind=4, - Lambda_kind=5, IfExp_kind=6, Dict_kind=7, Set_kind=8, - ListComp_kind=9, SetComp_kind=10, DictComp_kind=11, - GeneratorExp_kind=12, Await_kind=13, Yield_kind=14, - YieldFrom_kind=15, Compare_kind=16, Call_kind=17, - FormattedValue_kind=18, JoinedStr_kind=19, Constant_kind=20, - Attribute_kind=21, Subscript_kind=22, Starred_kind=23, - Name_kind=24, List_kind=25, Tuple_kind=26, Slice_kind=27}; -struct _expr { - enum _expr_kind kind; - union { - struct { - boolop_ty op; - asdl_expr_seq *values; - } BoolOp; - - struct { - expr_ty target; - expr_ty value; - } NamedExpr; - - struct { - expr_ty left; - operator_ty op; - expr_ty right; - } BinOp; - - struct { - unaryop_ty op; - expr_ty operand; - } UnaryOp; - - struct { - arguments_ty args; - expr_ty body; - } Lambda; - - struct { - expr_ty test; - expr_ty body; - expr_ty orelse; - } IfExp; - - struct { - asdl_expr_seq *keys; - asdl_expr_seq *values; - } Dict; - - struct { - asdl_expr_seq *elts; - } Set; - - struct { - expr_ty elt; - asdl_comprehension_seq *generators; - } ListComp; - - struct { - expr_ty elt; - asdl_comprehension_seq *generators; - } SetComp; - - struct { - expr_ty key; - expr_ty value; - asdl_comprehension_seq *generators; - } DictComp; - - struct { - expr_ty elt; - asdl_comprehension_seq *generators; - } GeneratorExp; - - struct { - expr_ty value; - } Await; - - struct { - expr_ty value; - } Yield; - - struct { - expr_ty value; - } YieldFrom; - - struct { - expr_ty left; - asdl_int_seq *ops; - asdl_expr_seq *comparators; - } Compare; - - struct { - expr_ty func; - asdl_expr_seq *args; - asdl_keyword_seq *keywords; - } Call; - - struct { - expr_ty value; - int conversion; - expr_ty format_spec; - } FormattedValue; - - struct { - asdl_expr_seq *values; - } JoinedStr; - - struct { - constant value; - string kind; - } Constant; - - struct { - expr_ty value; - identifier attr; - expr_context_ty ctx; - } Attribute; - - struct { - expr_ty value; - expr_ty slice; - expr_context_ty ctx; - } Subscript; - - struct { - expr_ty value; - expr_context_ty ctx; - } Starred; - - struct { - identifier id; - expr_context_ty ctx; - } Name; - - struct { - asdl_expr_seq *elts; - expr_context_ty ctx; - } List; - - struct { - asdl_expr_seq *elts; - expr_context_ty ctx; - } Tuple; - - struct { - expr_ty lower; - expr_ty upper; - expr_ty step; - } Slice; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _comprehension { - expr_ty target; - expr_ty iter; - asdl_expr_seq *ifs; - int is_async; -}; - -enum _excepthandler_kind {ExceptHandler_kind=1}; -struct _excepthandler { - enum _excepthandler_kind kind; - union { - struct { - expr_ty type; - identifier name; - asdl_stmt_seq *body; - } ExceptHandler; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _arguments { - asdl_arg_seq *posonlyargs; - asdl_arg_seq *args; - arg_ty vararg; - asdl_arg_seq *kwonlyargs; - asdl_expr_seq *kw_defaults; - arg_ty kwarg; - asdl_expr_seq *defaults; -}; - -struct _arg { - identifier arg; - expr_ty annotation; - string type_comment; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _keyword { - identifier arg; - expr_ty value; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _alias { - identifier name; - identifier asname; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _withitem { - expr_ty context_expr; - expr_ty optional_vars; -}; - -struct _match_case { - pattern_ty pattern; - expr_ty guard; - asdl_stmt_seq *body; -}; - -enum _pattern_kind {MatchValue_kind=1, MatchSingleton_kind=2, - MatchSequence_kind=3, MatchMapping_kind=4, - MatchClass_kind=5, MatchStar_kind=6, MatchAs_kind=7, - MatchOr_kind=8}; -struct _pattern { - enum _pattern_kind kind; - union { - struct { - expr_ty value; - } MatchValue; - - struct { - constant value; - } MatchSingleton; - - struct { - asdl_pattern_seq *patterns; - } MatchSequence; - - struct { - asdl_expr_seq *keys; - asdl_pattern_seq *patterns; - identifier rest; - } MatchMapping; - - struct { - expr_ty cls; - asdl_pattern_seq *patterns; - asdl_identifier_seq *kwd_attrs; - asdl_pattern_seq *kwd_patterns; - } MatchClass; - - struct { - identifier name; - } MatchStar; - - struct { - pattern_ty pattern; - identifier name; - } MatchAs; - - struct { - asdl_pattern_seq *patterns; - } MatchOr; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -enum _type_ignore_kind {TypeIgnore_kind=1}; -struct _type_ignore { - enum _type_ignore_kind kind; - union { - struct { - int lineno; - string tag; - } TypeIgnore; - - } v; -}; - - -// Note: these macros affect function definitions, not only call sites. -mod_ty _PyAST_Module(asdl_stmt_seq * body, asdl_type_ignore_seq * type_ignores, - PyArena *arena); -mod_ty _PyAST_Interactive(asdl_stmt_seq * body, PyArena *arena); -mod_ty _PyAST_Expression(expr_ty body, PyArena *arena); -mod_ty _PyAST_FunctionType(asdl_expr_seq * argtypes, expr_ty returns, PyArena - *arena); -stmt_ty _PyAST_FunctionDef(identifier name, arguments_ty args, asdl_stmt_seq * - body, asdl_expr_seq * decorator_list, expr_ty - returns, string type_comment, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -stmt_ty _PyAST_AsyncFunctionDef(identifier name, arguments_ty args, - asdl_stmt_seq * body, asdl_expr_seq * - decorator_list, expr_ty returns, string - type_comment, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_ClassDef(identifier name, asdl_expr_seq * bases, - asdl_keyword_seq * keywords, asdl_stmt_seq * body, - asdl_expr_seq * decorator_list, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -stmt_ty _PyAST_Return(expr_ty value, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Delete(asdl_expr_seq * targets, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Assign(asdl_expr_seq * targets, expr_ty value, string - type_comment, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_AugAssign(expr_ty target, operator_ty op, expr_ty value, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_AnnAssign(expr_ty target, expr_ty annotation, expr_ty value, int - simple, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_For(expr_ty target, expr_ty iter, asdl_stmt_seq * body, - asdl_stmt_seq * orelse, string type_comment, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -stmt_ty _PyAST_AsyncFor(expr_ty target, expr_ty iter, asdl_stmt_seq * body, - asdl_stmt_seq * orelse, string type_comment, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_While(expr_ty test, asdl_stmt_seq * body, asdl_stmt_seq * - orelse, int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_If(expr_ty test, asdl_stmt_seq * body, asdl_stmt_seq * orelse, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_With(asdl_withitem_seq * items, asdl_stmt_seq * body, string - type_comment, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_AsyncWith(asdl_withitem_seq * items, asdl_stmt_seq * body, - string type_comment, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Match(expr_ty subject, asdl_match_case_seq * cases, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -stmt_ty _PyAST_Raise(expr_ty exc, expr_ty cause, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Try(asdl_stmt_seq * body, asdl_excepthandler_seq * handlers, - asdl_stmt_seq * orelse, asdl_stmt_seq * finalbody, int - lineno, int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -stmt_ty _PyAST_Assert(expr_ty test, expr_ty msg, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Import(asdl_alias_seq * names, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_ImportFrom(identifier module, asdl_alias_seq * names, int level, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_Global(asdl_identifier_seq * names, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Nonlocal(asdl_identifier_seq * names, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -stmt_ty _PyAST_Expr(expr_ty value, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Pass(int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_Break(int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_Continue(int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_BoolOp(boolop_ty op, asdl_expr_seq * values, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_NamedExpr(expr_ty target, expr_ty value, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -expr_ty _PyAST_BinOp(expr_ty left, operator_ty op, expr_ty right, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -expr_ty _PyAST_UnaryOp(unaryop_ty op, expr_ty operand, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Lambda(arguments_ty args, expr_ty body, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_IfExp(expr_ty test, expr_ty body, expr_ty orelse, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -expr_ty _PyAST_Dict(asdl_expr_seq * keys, asdl_expr_seq * values, int lineno, - int col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Set(asdl_expr_seq * elts, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_ListComp(expr_ty elt, asdl_comprehension_seq * generators, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_SetComp(expr_ty elt, asdl_comprehension_seq * generators, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_DictComp(expr_ty key, expr_ty value, asdl_comprehension_seq * - generators, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_GeneratorExp(expr_ty elt, asdl_comprehension_seq * generators, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_Await(expr_ty value, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_Yield(expr_ty value, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_YieldFrom(expr_ty value, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_Compare(expr_ty left, asdl_int_seq * ops, asdl_expr_seq * - comparators, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_Call(expr_ty func, asdl_expr_seq * args, asdl_keyword_seq * - keywords, int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_FormattedValue(expr_ty value, int conversion, expr_ty - format_spec, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_JoinedStr(asdl_expr_seq * values, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_Constant(constant value, string kind, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Attribute(expr_ty value, identifier attr, expr_context_ty ctx, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_Subscript(expr_ty value, expr_ty slice, expr_context_ty ctx, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_Starred(expr_ty value, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Name(identifier id, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_List(asdl_expr_seq * elts, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Tuple(asdl_expr_seq * elts, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Slice(expr_ty lower, expr_ty upper, expr_ty step, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -comprehension_ty _PyAST_comprehension(expr_ty target, expr_ty iter, - asdl_expr_seq * ifs, int is_async, - PyArena *arena); -excepthandler_ty _PyAST_ExceptHandler(expr_ty type, identifier name, - asdl_stmt_seq * body, int lineno, int - col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -arguments_ty _PyAST_arguments(asdl_arg_seq * posonlyargs, asdl_arg_seq * args, - arg_ty vararg, asdl_arg_seq * kwonlyargs, - asdl_expr_seq * kw_defaults, arg_ty kwarg, - asdl_expr_seq * defaults, PyArena *arena); -arg_ty _PyAST_arg(identifier arg, expr_ty annotation, string type_comment, int - lineno, int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -keyword_ty _PyAST_keyword(identifier arg, expr_ty value, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -alias_ty _PyAST_alias(identifier name, identifier asname, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -withitem_ty _PyAST_withitem(expr_ty context_expr, expr_ty optional_vars, - PyArena *arena); -match_case_ty _PyAST_match_case(pattern_ty pattern, expr_ty guard, - asdl_stmt_seq * body, PyArena *arena); -pattern_ty _PyAST_MatchValue(expr_ty value, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -pattern_ty _PyAST_MatchSingleton(constant value, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena - *arena); -pattern_ty _PyAST_MatchSequence(asdl_pattern_seq * patterns, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -pattern_ty _PyAST_MatchMapping(asdl_expr_seq * keys, asdl_pattern_seq * - patterns, identifier rest, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -pattern_ty _PyAST_MatchClass(expr_ty cls, asdl_pattern_seq * patterns, - asdl_identifier_seq * kwd_attrs, asdl_pattern_seq - * kwd_patterns, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -pattern_ty _PyAST_MatchStar(identifier name, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -pattern_ty _PyAST_MatchAs(pattern_ty pattern, identifier name, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -pattern_ty _PyAST_MatchOr(asdl_pattern_seq * patterns, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -type_ignore_ty _PyAST_TypeIgnore(int lineno, string tag, PyArena *arena); - - -PyObject* PyAST_mod2obj(mod_ty t); -mod_ty PyAST_obj2mod(PyObject* ast, PyArena* arena, int mode); -int PyAST_Check(PyObject* obj); - -extern int _PyAST_Validate(mod_ty); - -/* _PyAST_ExprAsUnicode is defined in ast_unparse.c */ -extern PyObject* _PyAST_ExprAsUnicode(expr_ty); - -/* Return the borrowed reference to the first literal string in the - sequence of statements or NULL if it doesn't start from a literal string. - Doesn't set exception. */ -extern PyObject* _PyAST_GetDocString(asdl_stmt_seq *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_AST_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_ast_state.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_ast_state.h deleted file mode 100644 index 882cd09..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_ast_state.h +++ /dev/null @@ -1,255 +0,0 @@ -// File automatically generated by Parser/asdl_c.py. - -#ifndef Py_INTERNAL_AST_STATE_H -#define Py_INTERNAL_AST_STATE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct ast_state { - int initialized; - PyObject *AST_type; - PyObject *Add_singleton; - PyObject *Add_type; - PyObject *And_singleton; - PyObject *And_type; - PyObject *AnnAssign_type; - PyObject *Assert_type; - PyObject *Assign_type; - PyObject *AsyncFor_type; - PyObject *AsyncFunctionDef_type; - PyObject *AsyncWith_type; - PyObject *Attribute_type; - PyObject *AugAssign_type; - PyObject *Await_type; - PyObject *BinOp_type; - PyObject *BitAnd_singleton; - PyObject *BitAnd_type; - PyObject *BitOr_singleton; - PyObject *BitOr_type; - PyObject *BitXor_singleton; - PyObject *BitXor_type; - PyObject *BoolOp_type; - PyObject *Break_type; - PyObject *Call_type; - PyObject *ClassDef_type; - PyObject *Compare_type; - PyObject *Constant_type; - PyObject *Continue_type; - PyObject *Del_singleton; - PyObject *Del_type; - PyObject *Delete_type; - PyObject *DictComp_type; - PyObject *Dict_type; - PyObject *Div_singleton; - PyObject *Div_type; - PyObject *Eq_singleton; - PyObject *Eq_type; - PyObject *ExceptHandler_type; - PyObject *Expr_type; - PyObject *Expression_type; - PyObject *FloorDiv_singleton; - PyObject *FloorDiv_type; - PyObject *For_type; - PyObject *FormattedValue_type; - PyObject *FunctionDef_type; - PyObject *FunctionType_type; - PyObject *GeneratorExp_type; - PyObject *Global_type; - PyObject *GtE_singleton; - PyObject *GtE_type; - PyObject *Gt_singleton; - PyObject *Gt_type; - PyObject *IfExp_type; - PyObject *If_type; - PyObject *ImportFrom_type; - PyObject *Import_type; - PyObject *In_singleton; - PyObject *In_type; - PyObject *Interactive_type; - PyObject *Invert_singleton; - PyObject *Invert_type; - PyObject *IsNot_singleton; - PyObject *IsNot_type; - PyObject *Is_singleton; - PyObject *Is_type; - PyObject *JoinedStr_type; - PyObject *LShift_singleton; - PyObject *LShift_type; - PyObject *Lambda_type; - PyObject *ListComp_type; - PyObject *List_type; - PyObject *Load_singleton; - PyObject *Load_type; - PyObject *LtE_singleton; - PyObject *LtE_type; - PyObject *Lt_singleton; - PyObject *Lt_type; - PyObject *MatMult_singleton; - PyObject *MatMult_type; - PyObject *MatchAs_type; - PyObject *MatchClass_type; - PyObject *MatchMapping_type; - PyObject *MatchOr_type; - PyObject *MatchSequence_type; - PyObject *MatchSingleton_type; - PyObject *MatchStar_type; - PyObject *MatchValue_type; - PyObject *Match_type; - PyObject *Mod_singleton; - PyObject *Mod_type; - PyObject *Module_type; - PyObject *Mult_singleton; - PyObject *Mult_type; - PyObject *Name_type; - PyObject *NamedExpr_type; - PyObject *Nonlocal_type; - PyObject *NotEq_singleton; - PyObject *NotEq_type; - PyObject *NotIn_singleton; - PyObject *NotIn_type; - PyObject *Not_singleton; - PyObject *Not_type; - PyObject *Or_singleton; - PyObject *Or_type; - PyObject *Pass_type; - PyObject *Pow_singleton; - PyObject *Pow_type; - PyObject *RShift_singleton; - PyObject *RShift_type; - PyObject *Raise_type; - PyObject *Return_type; - PyObject *SetComp_type; - PyObject *Set_type; - PyObject *Slice_type; - PyObject *Starred_type; - PyObject *Store_singleton; - PyObject *Store_type; - PyObject *Sub_singleton; - PyObject *Sub_type; - PyObject *Subscript_type; - PyObject *Try_type; - PyObject *Tuple_type; - PyObject *TypeIgnore_type; - PyObject *UAdd_singleton; - PyObject *UAdd_type; - PyObject *USub_singleton; - PyObject *USub_type; - PyObject *UnaryOp_type; - PyObject *While_type; - PyObject *With_type; - PyObject *YieldFrom_type; - PyObject *Yield_type; - PyObject *__dict__; - PyObject *__doc__; - PyObject *__match_args__; - PyObject *__module__; - PyObject *_attributes; - PyObject *_fields; - PyObject *alias_type; - PyObject *annotation; - PyObject *arg; - PyObject *arg_type; - PyObject *args; - PyObject *argtypes; - PyObject *arguments_type; - PyObject *asname; - PyObject *ast; - PyObject *attr; - PyObject *bases; - PyObject *body; - PyObject *boolop_type; - PyObject *cases; - PyObject *cause; - PyObject *cls; - PyObject *cmpop_type; - PyObject *col_offset; - PyObject *comparators; - PyObject *comprehension_type; - PyObject *context_expr; - PyObject *conversion; - PyObject *ctx; - PyObject *decorator_list; - PyObject *defaults; - PyObject *elt; - PyObject *elts; - PyObject *end_col_offset; - PyObject *end_lineno; - PyObject *exc; - PyObject *excepthandler_type; - PyObject *expr_context_type; - PyObject *expr_type; - PyObject *finalbody; - PyObject *format_spec; - PyObject *func; - PyObject *generators; - PyObject *guard; - PyObject *handlers; - PyObject *id; - PyObject *ifs; - PyObject *is_async; - PyObject *items; - PyObject *iter; - PyObject *key; - PyObject *keys; - PyObject *keyword_type; - PyObject *keywords; - PyObject *kind; - PyObject *kw_defaults; - PyObject *kwarg; - PyObject *kwd_attrs; - PyObject *kwd_patterns; - PyObject *kwonlyargs; - PyObject *left; - PyObject *level; - PyObject *lineno; - PyObject *lower; - PyObject *match_case_type; - PyObject *mod_type; - PyObject *module; - PyObject *msg; - PyObject *name; - PyObject *names; - PyObject *op; - PyObject *operand; - PyObject *operator_type; - PyObject *ops; - PyObject *optional_vars; - PyObject *orelse; - PyObject *pattern; - PyObject *pattern_type; - PyObject *patterns; - PyObject *posonlyargs; - PyObject *rest; - PyObject *returns; - PyObject *right; - PyObject *simple; - PyObject *slice; - PyObject *step; - PyObject *stmt_type; - PyObject *subject; - PyObject *tag; - PyObject *target; - PyObject *targets; - PyObject *test; - PyObject *type; - PyObject *type_comment; - PyObject *type_ignore_type; - PyObject *type_ignores; - PyObject *unaryop_type; - PyObject *upper; - PyObject *value; - PyObject *values; - PyObject *vararg; - PyObject *withitem_type; -}; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_AST_STATE_H */ - diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_atomic.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_atomic.h deleted file mode 100644 index 425d69f..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_atomic.h +++ /dev/null @@ -1,557 +0,0 @@ -#ifndef Py_ATOMIC_H -#define Py_ATOMIC_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "dynamic_annotations.h" /* _Py_ANNOTATE_MEMORY_ORDER */ -#include "pyconfig.h" - -#ifdef HAVE_STD_ATOMIC -# include -#endif - - -#if defined(_MSC_VER) -#include -#if defined(_M_IX86) || defined(_M_X64) -# include -#endif -#endif - -/* This is modeled after the atomics interface from C1x, according to - * the draft at - * http://www.open-std.org/JTC1/SC22/wg14/www/docs/n1425.pdf. - * Operations and types are named the same except with a _Py_ prefix - * and have the same semantics. - * - * Beware, the implementations here are deep magic. - */ - -#if defined(HAVE_STD_ATOMIC) - -typedef enum _Py_memory_order { - _Py_memory_order_relaxed = memory_order_relaxed, - _Py_memory_order_acquire = memory_order_acquire, - _Py_memory_order_release = memory_order_release, - _Py_memory_order_acq_rel = memory_order_acq_rel, - _Py_memory_order_seq_cst = memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - atomic_uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - atomic_int _value; -} _Py_atomic_int; - -#define _Py_atomic_signal_fence(/*memory_order*/ ORDER) \ - atomic_signal_fence(ORDER) - -#define _Py_atomic_thread_fence(/*memory_order*/ ORDER) \ - atomic_thread_fence(ORDER) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - atomic_store_explicit(&((ATOMIC_VAL)->_value), NEW_VAL, ORDER) - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - atomic_load_explicit(&((ATOMIC_VAL)->_value), ORDER) - -// Use builtin atomic operations in GCC >= 4.7 and clang -#elif defined(HAVE_BUILTIN_ATOMIC) - -typedef enum _Py_memory_order { - _Py_memory_order_relaxed = __ATOMIC_RELAXED, - _Py_memory_order_acquire = __ATOMIC_ACQUIRE, - _Py_memory_order_release = __ATOMIC_RELEASE, - _Py_memory_order_acq_rel = __ATOMIC_ACQ_REL, - _Py_memory_order_seq_cst = __ATOMIC_SEQ_CST -} _Py_memory_order; - -typedef struct _Py_atomic_address { - uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - int _value; -} _Py_atomic_int; - -#define _Py_atomic_signal_fence(/*memory_order*/ ORDER) \ - __atomic_signal_fence(ORDER) - -#define _Py_atomic_thread_fence(/*memory_order*/ ORDER) \ - __atomic_thread_fence(ORDER) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - (assert((ORDER) == __ATOMIC_RELAXED \ - || (ORDER) == __ATOMIC_SEQ_CST \ - || (ORDER) == __ATOMIC_RELEASE), \ - __atomic_store_n(&((ATOMIC_VAL)->_value), NEW_VAL, ORDER)) - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - (assert((ORDER) == __ATOMIC_RELAXED \ - || (ORDER) == __ATOMIC_SEQ_CST \ - || (ORDER) == __ATOMIC_ACQUIRE \ - || (ORDER) == __ATOMIC_CONSUME), \ - __atomic_load_n(&((ATOMIC_VAL)->_value), ORDER)) - -/* Only support GCC (for expression statements) and x86 (for simple - * atomic semantics) and MSVC x86/x64/ARM */ -#elif defined(__GNUC__) && (defined(__i386__) || defined(__amd64)) -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - int _value; -} _Py_atomic_int; - - -static __inline__ void -_Py_atomic_signal_fence(_Py_memory_order order) -{ - if (order != _Py_memory_order_relaxed) - __asm__ volatile("":::"memory"); -} - -static __inline__ void -_Py_atomic_thread_fence(_Py_memory_order order) -{ - if (order != _Py_memory_order_relaxed) - __asm__ volatile("mfence":::"memory"); -} - -/* Tell the race checker about this operation's effects. */ -static __inline__ void -_Py_ANNOTATE_MEMORY_ORDER(const volatile void *address, _Py_memory_order order) -{ - (void)address; /* shut up -Wunused-parameter */ - switch(order) { - case _Py_memory_order_release: - case _Py_memory_order_acq_rel: - case _Py_memory_order_seq_cst: - _Py_ANNOTATE_HAPPENS_BEFORE(address); - break; - case _Py_memory_order_relaxed: - case _Py_memory_order_acquire: - break; - } - switch(order) { - case _Py_memory_order_acquire: - case _Py_memory_order_acq_rel: - case _Py_memory_order_seq_cst: - _Py_ANNOTATE_HAPPENS_AFTER(address); - break; - case _Py_memory_order_relaxed: - case _Py_memory_order_release: - break; - } -} - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - __extension__ ({ \ - __typeof__(ATOMIC_VAL) atomic_val = ATOMIC_VAL; \ - __typeof__(atomic_val->_value) new_val = NEW_VAL;\ - volatile __typeof__(new_val) *volatile_data = &atomic_val->_value; \ - _Py_memory_order order = ORDER; \ - _Py_ANNOTATE_MEMORY_ORDER(atomic_val, order); \ - \ - /* Perform the operation. */ \ - _Py_ANNOTATE_IGNORE_WRITES_BEGIN(); \ - switch(order) { \ - case _Py_memory_order_release: \ - _Py_atomic_signal_fence(_Py_memory_order_release); \ - /* fallthrough */ \ - case _Py_memory_order_relaxed: \ - *volatile_data = new_val; \ - break; \ - \ - case _Py_memory_order_acquire: \ - case _Py_memory_order_acq_rel: \ - case _Py_memory_order_seq_cst: \ - __asm__ volatile("xchg %0, %1" \ - : "+r"(new_val) \ - : "m"(atomic_val->_value) \ - : "memory"); \ - break; \ - } \ - _Py_ANNOTATE_IGNORE_WRITES_END(); \ - }) - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - __extension__ ({ \ - __typeof__(ATOMIC_VAL) atomic_val = ATOMIC_VAL; \ - __typeof__(atomic_val->_value) result; \ - volatile __typeof__(result) *volatile_data = &atomic_val->_value; \ - _Py_memory_order order = ORDER; \ - _Py_ANNOTATE_MEMORY_ORDER(atomic_val, order); \ - \ - /* Perform the operation. */ \ - _Py_ANNOTATE_IGNORE_READS_BEGIN(); \ - switch(order) { \ - case _Py_memory_order_release: \ - case _Py_memory_order_acq_rel: \ - case _Py_memory_order_seq_cst: \ - /* Loads on x86 are not releases by default, so need a */ \ - /* thread fence. */ \ - _Py_atomic_thread_fence(_Py_memory_order_release); \ - break; \ - default: \ - /* No fence */ \ - break; \ - } \ - result = *volatile_data; \ - switch(order) { \ - case _Py_memory_order_acquire: \ - case _Py_memory_order_acq_rel: \ - case _Py_memory_order_seq_cst: \ - /* Loads on x86 are automatically acquire operations so */ \ - /* can get by with just a compiler fence. */ \ - _Py_atomic_signal_fence(_Py_memory_order_acquire); \ - break; \ - default: \ - /* No fence */ \ - break; \ - } \ - _Py_ANNOTATE_IGNORE_READS_END(); \ - result; \ - }) - -#elif defined(_MSC_VER) -/* _Interlocked* functions provide a full memory barrier and are therefore - enough for acq_rel and seq_cst. If the HLE variants aren't available - in hardware they will fall back to a full memory barrier as well. - - This might affect performance but likely only in some very specific and - hard to measure scenario. -*/ -#if defined(_M_IX86) || defined(_M_X64) -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - volatile uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - volatile int _value; -} _Py_atomic_int; - - -#if defined(_M_X64) -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange64_HLEAcquire((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)(NEW_VAL)); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange64_HLERelease((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)(NEW_VAL)); \ - break; \ - default: \ - _InterlockedExchange64((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)(NEW_VAL)); \ - break; \ - } -#else -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) ((void)0); -#endif - -#define _Py_atomic_store_32bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange_HLEAcquire((volatile long*)&((ATOMIC_VAL)->_value), (int)(NEW_VAL)); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange_HLERelease((volatile long*)&((ATOMIC_VAL)->_value), (int)(NEW_VAL)); \ - break; \ - default: \ - _InterlockedExchange((volatile long*)&((ATOMIC_VAL)->_value), (int)(NEW_VAL)); \ - break; \ - } - -#if defined(_M_X64) -/* This has to be an intptr_t for now. - gil_created() uses -1 as a sentinel value, if this returns - a uintptr_t it will do an unsigned compare and crash -*/ -inline intptr_t _Py_atomic_load_64bit_impl(volatile uintptr_t* value, int order) { - __int64 old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_HLEAcquire((volatile __int64*)value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_HLERelease((volatile __int64*)value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange64((volatile __int64*)value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_64bit_impl((volatile uintptr_t*)&((ATOMIC_VAL)->_value), (ORDER)) - -#else -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) ((ATOMIC_VAL)->_value) -#endif - -inline int _Py_atomic_load_32bit_impl(volatile int* value, int order) { - long old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange_HLEAcquire((volatile long*)value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange_HLERelease((volatile long*)value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange((volatile long*)value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_32bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_32bit_impl((volatile int*)&((ATOMIC_VAL)->_value), (ORDER)) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - if (sizeof((ATOMIC_VAL)->_value) == 8) { \ - _Py_atomic_store_64bit((ATOMIC_VAL), NEW_VAL, ORDER) } else { \ - _Py_atomic_store_32bit((ATOMIC_VAL), NEW_VAL, ORDER) } - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - ( \ - sizeof((ATOMIC_VAL)->_value) == 8 ? \ - _Py_atomic_load_64bit((ATOMIC_VAL), ORDER) : \ - _Py_atomic_load_32bit((ATOMIC_VAL), ORDER) \ - ) -#elif defined(_M_ARM) || defined(_M_ARM64) -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - volatile uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - volatile int _value; -} _Py_atomic_int; - - -#if defined(_M_ARM64) -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange64_acq((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)NEW_VAL); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange64_rel((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)NEW_VAL); \ - break; \ - default: \ - _InterlockedExchange64((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)NEW_VAL); \ - break; \ - } -#else -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) ((void)0); -#endif - -#define _Py_atomic_store_32bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange_acq((volatile long*)&((ATOMIC_VAL)->_value), (int)NEW_VAL); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange_rel((volatile long*)&((ATOMIC_VAL)->_value), (int)NEW_VAL); \ - break; \ - default: \ - _InterlockedExchange((volatile long*)&((ATOMIC_VAL)->_value), (int)NEW_VAL); \ - break; \ - } - -#if defined(_M_ARM64) -/* This has to be an intptr_t for now. - gil_created() uses -1 as a sentinel value, if this returns - a uintptr_t it will do an unsigned compare and crash -*/ -inline intptr_t _Py_atomic_load_64bit_impl(volatile uintptr_t* value, int order) { - uintptr_t old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_acq(value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_rel(value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange64(value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_64bit_impl((volatile uintptr_t*)&((ATOMIC_VAL)->_value), (ORDER)) - -#else -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) ((ATOMIC_VAL)->_value) -#endif - -inline int _Py_atomic_load_32bit_impl(volatile int* value, int order) { - int old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange_acq(value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange_rel(value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange(value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_32bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_32bit_impl((volatile int*)&((ATOMIC_VAL)->_value), (ORDER)) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - if (sizeof((ATOMIC_VAL)->_value) == 8) { \ - _Py_atomic_store_64bit((ATOMIC_VAL), (NEW_VAL), (ORDER)) } else { \ - _Py_atomic_store_32bit((ATOMIC_VAL), (NEW_VAL), (ORDER)) } - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - ( \ - sizeof((ATOMIC_VAL)->_value) == 8 ? \ - _Py_atomic_load_64bit((ATOMIC_VAL), (ORDER)) : \ - _Py_atomic_load_32bit((ATOMIC_VAL), (ORDER)) \ - ) -#endif -#else /* !gcc x86 !_msc_ver */ -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - int _value; -} _Py_atomic_int; -/* Fall back to other compilers and processors by assuming that simple - volatile accesses are atomic. This is false, so people should port - this. */ -#define _Py_atomic_signal_fence(/*memory_order*/ ORDER) ((void)0) -#define _Py_atomic_thread_fence(/*memory_order*/ ORDER) ((void)0) -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - ((ATOMIC_VAL)->_value = NEW_VAL) -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - ((ATOMIC_VAL)->_value) -#endif - -/* Standardized shortcuts. */ -#define _Py_atomic_store(ATOMIC_VAL, NEW_VAL) \ - _Py_atomic_store_explicit((ATOMIC_VAL), (NEW_VAL), _Py_memory_order_seq_cst) -#define _Py_atomic_load(ATOMIC_VAL) \ - _Py_atomic_load_explicit((ATOMIC_VAL), _Py_memory_order_seq_cst) - -/* Python-local extensions */ - -#define _Py_atomic_store_relaxed(ATOMIC_VAL, NEW_VAL) \ - _Py_atomic_store_explicit((ATOMIC_VAL), (NEW_VAL), _Py_memory_order_relaxed) -#define _Py_atomic_load_relaxed(ATOMIC_VAL) \ - _Py_atomic_load_explicit((ATOMIC_VAL), _Py_memory_order_relaxed) - -#ifdef __cplusplus -} -#endif -#endif /* Py_ATOMIC_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_atomic_funcs.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_atomic_funcs.h deleted file mode 100644 index a708789..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_atomic_funcs.h +++ /dev/null @@ -1,94 +0,0 @@ -/* Atomic functions: similar to pycore_atomic.h, but don't need - to declare variables as atomic. - - Py_ssize_t type: - - * value = _Py_atomic_size_get(&var) - * _Py_atomic_size_set(&var, value) - - Use sequentially-consistent ordering (__ATOMIC_SEQ_CST memory order): - enforce total ordering with all other atomic functions. -*/ -#ifndef Py_ATOMIC_FUNC_H -#define Py_ATOMIC_FUNC_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#if defined(_MSC_VER) -# include // _InterlockedExchange() -#endif - - -// Use builtin atomic operations in GCC >= 4.7 and clang -#ifdef HAVE_BUILTIN_ATOMIC - -static inline Py_ssize_t _Py_atomic_size_get(Py_ssize_t *var) -{ - return __atomic_load_n(var, __ATOMIC_SEQ_CST); -} - -static inline void _Py_atomic_size_set(Py_ssize_t *var, Py_ssize_t value) -{ - __atomic_store_n(var, value, __ATOMIC_SEQ_CST); -} - -#elif defined(_MSC_VER) - -static inline Py_ssize_t _Py_atomic_size_get(Py_ssize_t *var) -{ -#if SIZEOF_VOID_P == 8 - Py_BUILD_ASSERT(sizeof(__int64) == sizeof(*var)); - volatile __int64 *volatile_var = (volatile __int64 *)var; - __int64 old; - do { - old = *volatile_var; - } while(_InterlockedCompareExchange64(volatile_var, old, old) != old); -#else - Py_BUILD_ASSERT(sizeof(long) == sizeof(*var)); - volatile long *volatile_var = (volatile long *)var; - long old; - do { - old = *volatile_var; - } while(_InterlockedCompareExchange(volatile_var, old, old) != old); -#endif - return old; -} - -static inline void _Py_atomic_size_set(Py_ssize_t *var, Py_ssize_t value) -{ -#if SIZEOF_VOID_P == 8 - Py_BUILD_ASSERT(sizeof(__int64) == sizeof(*var)); - volatile __int64 *volatile_var = (volatile __int64 *)var; - _InterlockedExchange64(volatile_var, value); -#else - Py_BUILD_ASSERT(sizeof(long) == sizeof(*var)); - volatile long *volatile_var = (volatile long *)var; - _InterlockedExchange(volatile_var, value); -#endif -} - -#else -// Fallback implementation using volatile - -static inline Py_ssize_t _Py_atomic_size_get(Py_ssize_t *var) -{ - volatile Py_ssize_t *volatile_var = (volatile Py_ssize_t *)var; - return *volatile_var; -} - -static inline void _Py_atomic_size_set(Py_ssize_t *var, Py_ssize_t value) -{ - volatile Py_ssize_t *volatile_var = (volatile Py_ssize_t *)var; - *volatile_var = value; -} -#endif - -#ifdef __cplusplus -} -#endif -#endif /* Py_ATOMIC_FUNC_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_bitutils.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_bitutils.h deleted file mode 100644 index e4aa7a3..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_bitutils.h +++ /dev/null @@ -1,176 +0,0 @@ -/* Bit and bytes utilities. - - Bytes swap functions, reverse order of bytes: - - - _Py_bswap16(uint16_t) - - _Py_bswap32(uint32_t) - - _Py_bswap64(uint64_t) -*/ - -#ifndef Py_INTERNAL_BITUTILS_H -#define Py_INTERNAL_BITUTILS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#if defined(__GNUC__) \ - && ((__GNUC__ >= 5) || (__GNUC__ == 4) && (__GNUC_MINOR__ >= 8)) - /* __builtin_bswap16() is available since GCC 4.8, - __builtin_bswap32() is available since GCC 4.3, - __builtin_bswap64() is available since GCC 4.3. */ -# define _PY_HAVE_BUILTIN_BSWAP -#endif - -#ifdef _MSC_VER - /* Get _byteswap_ushort(), _byteswap_ulong(), _byteswap_uint64() */ -# include -#endif - -static inline uint16_t -_Py_bswap16(uint16_t word) -{ -#if defined(_PY_HAVE_BUILTIN_BSWAP) || _Py__has_builtin(__builtin_bswap16) - return __builtin_bswap16(word); -#elif defined(_MSC_VER) - Py_BUILD_ASSERT(sizeof(word) == sizeof(unsigned short)); - return _byteswap_ushort(word); -#else - // Portable implementation which doesn't rely on circular bit shift - return ( ((word & UINT16_C(0x00FF)) << 8) - | ((word & UINT16_C(0xFF00)) >> 8)); -#endif -} - -static inline uint32_t -_Py_bswap32(uint32_t word) -{ -#if defined(_PY_HAVE_BUILTIN_BSWAP) || _Py__has_builtin(__builtin_bswap32) - return __builtin_bswap32(word); -#elif defined(_MSC_VER) - Py_BUILD_ASSERT(sizeof(word) == sizeof(unsigned long)); - return _byteswap_ulong(word); -#else - // Portable implementation which doesn't rely on circular bit shift - return ( ((word & UINT32_C(0x000000FF)) << 24) - | ((word & UINT32_C(0x0000FF00)) << 8) - | ((word & UINT32_C(0x00FF0000)) >> 8) - | ((word & UINT32_C(0xFF000000)) >> 24)); -#endif -} - -static inline uint64_t -_Py_bswap64(uint64_t word) -{ -#if defined(_PY_HAVE_BUILTIN_BSWAP) || _Py__has_builtin(__builtin_bswap64) - return __builtin_bswap64(word); -#elif defined(_MSC_VER) - return _byteswap_uint64(word); -#else - // Portable implementation which doesn't rely on circular bit shift - return ( ((word & UINT64_C(0x00000000000000FF)) << 56) - | ((word & UINT64_C(0x000000000000FF00)) << 40) - | ((word & UINT64_C(0x0000000000FF0000)) << 24) - | ((word & UINT64_C(0x00000000FF000000)) << 8) - | ((word & UINT64_C(0x000000FF00000000)) >> 8) - | ((word & UINT64_C(0x0000FF0000000000)) >> 24) - | ((word & UINT64_C(0x00FF000000000000)) >> 40) - | ((word & UINT64_C(0xFF00000000000000)) >> 56)); -#endif -} - - -// Population count: count the number of 1's in 'x' -// (number of bits set to 1), also known as the hamming weight. -// -// Implementation note. CPUID is not used, to test if x86 POPCNT instruction -// can be used, to keep the implementation simple. For example, Visual Studio -// __popcnt() is not used this reason. The clang and GCC builtin function can -// use the x86 POPCNT instruction if the target architecture has SSE4a or -// newer. -static inline int -_Py_popcount32(uint32_t x) -{ -#if (defined(__clang__) || defined(__GNUC__)) - -#if SIZEOF_INT >= 4 - Py_BUILD_ASSERT(sizeof(x) <= sizeof(unsigned int)); - return __builtin_popcount(x); -#else - // The C standard guarantees that unsigned long will always be big enough - // to hold a uint32_t value without losing information. - Py_BUILD_ASSERT(sizeof(x) <= sizeof(unsigned long)); - return __builtin_popcountl(x); -#endif - -#else - // 32-bit SWAR (SIMD Within A Register) popcount - - // Binary: 0 1 0 1 ... - const uint32_t M1 = 0x55555555; - // Binary: 00 11 00 11. .. - const uint32_t M2 = 0x33333333; - // Binary: 0000 1111 0000 1111 ... - const uint32_t M4 = 0x0F0F0F0F; - // 256**4 + 256**3 + 256**2 + 256**1 - const uint32_t SUM = 0x01010101; - - // Put count of each 2 bits into those 2 bits - x = x - ((x >> 1) & M1); - // Put count of each 4 bits into those 4 bits - x = (x & M2) + ((x >> 2) & M2); - // Put count of each 8 bits into those 8 bits - x = (x + (x >> 4)) & M4; - // Sum of the 4 byte counts - return (uint32_t)((uint64_t)x * (uint64_t)SUM) >> 24; -#endif -} - - -// Return the index of the most significant 1 bit in 'x'. This is the smallest -// integer k such that x < 2**k. Equivalent to floor(log2(x)) + 1 for x != 0. -static inline int -_Py_bit_length(unsigned long x) -{ -#if (defined(__clang__) || defined(__GNUC__)) - if (x != 0) { - // __builtin_clzl() is available since GCC 3.4. - // Undefined behavior for x == 0. - return (int)sizeof(unsigned long) * 8 - __builtin_clzl(x); - } - else { - return 0; - } -#elif defined(_MSC_VER) - // _BitScanReverse() is documented to search 32 bits. - Py_BUILD_ASSERT(sizeof(unsigned long) <= 4); - unsigned long msb; - if (_BitScanReverse(&msb, x)) { - return (int)msb + 1; - } - else { - return 0; - } -#else - const int BIT_LENGTH_TABLE[32] = { - 0, 1, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 - }; - int msb = 0; - while (x >= 32) { - msb += 6; - x >>= 6; - } - msb += BIT_LENGTH_TABLE[x]; - return msb; -#endif -} - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_BITUTILS_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_blocks_output_buffer.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_blocks_output_buffer.h deleted file mode 100644 index 28cf6fb..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_blocks_output_buffer.h +++ /dev/null @@ -1,317 +0,0 @@ -/* - _BlocksOutputBuffer is used to maintain an output buffer - that has unpredictable size. Suitable for compression/decompression - API (bz2/lzma/zlib) that has stream->next_out and stream->avail_out: - - stream->next_out: point to the next output position. - stream->avail_out: the number of available bytes left in the buffer. - - It maintains a list of bytes object, so there is no overhead of resizing - the buffer. - - Usage: - - 1, Initialize the struct instance like this: - _BlocksOutputBuffer buffer = {.list = NULL}; - Set .list to NULL for _BlocksOutputBuffer_OnError() - - 2, Initialize the buffer use one of these functions: - _BlocksOutputBuffer_InitAndGrow() - _BlocksOutputBuffer_InitWithSize() - - 3, If (avail_out == 0), grow the buffer: - _BlocksOutputBuffer_Grow() - - 4, Get the current outputted data size: - _BlocksOutputBuffer_GetDataSize() - - 5, Finish the buffer, and return a bytes object: - _BlocksOutputBuffer_Finish() - - 6, Clean up the buffer when an error occurred: - _BlocksOutputBuffer_OnError() -*/ - -#ifndef Py_INTERNAL_BLOCKS_OUTPUT_BUFFER_H -#define Py_INTERNAL_BLOCKS_OUTPUT_BUFFER_H -#ifdef __cplusplus -extern "C" { -#endif - -#include "Python.h" - -typedef struct { - // List of bytes objects - PyObject *list; - // Number of whole allocated size - Py_ssize_t allocated; - // Max length of the buffer, negative number means unlimited length. - Py_ssize_t max_length; -} _BlocksOutputBuffer; - -static const char unable_allocate_msg[] = "Unable to allocate output buffer."; - -/* In 32-bit build, the max block size should <= INT32_MAX. */ -#define OUTPUT_BUFFER_MAX_BLOCK_SIZE (256*1024*1024) - -/* Block size sequence */ -#define KB (1024) -#define MB (1024*1024) -static const Py_ssize_t BUFFER_BLOCK_SIZE[] = - { 32*KB, 64*KB, 256*KB, 1*MB, 4*MB, 8*MB, 16*MB, 16*MB, - 32*MB, 32*MB, 32*MB, 32*MB, 64*MB, 64*MB, 128*MB, 128*MB, - OUTPUT_BUFFER_MAX_BLOCK_SIZE }; -#undef KB -#undef MB - -/* According to the block sizes defined by BUFFER_BLOCK_SIZE, the whole - allocated size growth step is: - 1 32 KB +32 KB - 2 96 KB +64 KB - 3 352 KB +256 KB - 4 1.34 MB +1 MB - 5 5.34 MB +4 MB - 6 13.34 MB +8 MB - 7 29.34 MB +16 MB - 8 45.34 MB +16 MB - 9 77.34 MB +32 MB - 10 109.34 MB +32 MB - 11 141.34 MB +32 MB - 12 173.34 MB +32 MB - 13 237.34 MB +64 MB - 14 301.34 MB +64 MB - 15 429.34 MB +128 MB - 16 557.34 MB +128 MB - 17 813.34 MB +256 MB - 18 1069.34 MB +256 MB - 19 1325.34 MB +256 MB - 20 1581.34 MB +256 MB - 21 1837.34 MB +256 MB - 22 2093.34 MB +256 MB - ... -*/ - -/* Initialize the buffer, and grow the buffer. - - max_length: Max length of the buffer, -1 for unlimited length. - - On success, return allocated size (>=0) - On failure, return -1 -*/ -static inline Py_ssize_t -_BlocksOutputBuffer_InitAndGrow(_BlocksOutputBuffer *buffer, - const Py_ssize_t max_length, - void **next_out) -{ - PyObject *b; - Py_ssize_t block_size; - - // ensure .list was set to NULL - assert(buffer->list == NULL); - - // get block size - if (0 <= max_length && max_length < BUFFER_BLOCK_SIZE[0]) { - block_size = max_length; - } else { - block_size = BUFFER_BLOCK_SIZE[0]; - } - - // the first block - b = PyBytes_FromStringAndSize(NULL, block_size); - if (b == NULL) { - return -1; - } - - // create the list - buffer->list = PyList_New(1); - if (buffer->list == NULL) { - Py_DECREF(b); - return -1; - } - PyList_SET_ITEM(buffer->list, 0, b); - - // set variables - buffer->allocated = block_size; - buffer->max_length = max_length; - - *next_out = PyBytes_AS_STRING(b); - return block_size; -} - -/* Initialize the buffer, with an initial size. - - Check block size limit in the outer wrapper function. For example, some libs - accept UINT32_MAX as the maximum block size, then init_size should <= it. - - On success, return allocated size (>=0) - On failure, return -1 -*/ -static inline Py_ssize_t -_BlocksOutputBuffer_InitWithSize(_BlocksOutputBuffer *buffer, - const Py_ssize_t init_size, - void **next_out) -{ - PyObject *b; - - // ensure .list was set to NULL - assert(buffer->list == NULL); - - // the first block - b = PyBytes_FromStringAndSize(NULL, init_size); - if (b == NULL) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return -1; - } - - // create the list - buffer->list = PyList_New(1); - if (buffer->list == NULL) { - Py_DECREF(b); - return -1; - } - PyList_SET_ITEM(buffer->list, 0, b); - - // set variables - buffer->allocated = init_size; - buffer->max_length = -1; - - *next_out = PyBytes_AS_STRING(b); - return init_size; -} - -/* Grow the buffer. The avail_out must be 0, please check it before calling. - - On success, return allocated size (>=0) - On failure, return -1 -*/ -static inline Py_ssize_t -_BlocksOutputBuffer_Grow(_BlocksOutputBuffer *buffer, - void **next_out, - const Py_ssize_t avail_out) -{ - PyObject *b; - const Py_ssize_t list_len = Py_SIZE(buffer->list); - Py_ssize_t block_size; - - // ensure no gaps in the data - if (avail_out != 0) { - PyErr_SetString(PyExc_SystemError, - "avail_out is non-zero in _BlocksOutputBuffer_Grow()."); - return -1; - } - - // get block size - if (list_len < (Py_ssize_t) Py_ARRAY_LENGTH(BUFFER_BLOCK_SIZE)) { - block_size = BUFFER_BLOCK_SIZE[list_len]; - } else { - block_size = BUFFER_BLOCK_SIZE[Py_ARRAY_LENGTH(BUFFER_BLOCK_SIZE) - 1]; - } - - // check max_length - if (buffer->max_length >= 0) { - // if (rest == 0), should not grow the buffer. - Py_ssize_t rest = buffer->max_length - buffer->allocated; - assert(rest > 0); - - // block_size of the last block - if (block_size > rest) { - block_size = rest; - } - } - - // check buffer->allocated overflow - if (block_size > PY_SSIZE_T_MAX - buffer->allocated) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return -1; - } - - // create the block - b = PyBytes_FromStringAndSize(NULL, block_size); - if (b == NULL) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return -1; - } - if (PyList_Append(buffer->list, b) < 0) { - Py_DECREF(b); - return -1; - } - Py_DECREF(b); - - // set variables - buffer->allocated += block_size; - - *next_out = PyBytes_AS_STRING(b); - return block_size; -} - -/* Return the current outputted data size. */ -static inline Py_ssize_t -_BlocksOutputBuffer_GetDataSize(_BlocksOutputBuffer *buffer, - const Py_ssize_t avail_out) -{ - return buffer->allocated - avail_out; -} - -/* Finish the buffer. - - Return a bytes object on success - Return NULL on failure -*/ -static inline PyObject * -_BlocksOutputBuffer_Finish(_BlocksOutputBuffer *buffer, - const Py_ssize_t avail_out) -{ - PyObject *result, *block; - const Py_ssize_t list_len = Py_SIZE(buffer->list); - - // fast path for single block - if ((list_len == 1 && avail_out == 0) || - (list_len == 2 && Py_SIZE(PyList_GET_ITEM(buffer->list, 1)) == avail_out)) - { - block = PyList_GET_ITEM(buffer->list, 0); - Py_INCREF(block); - - Py_CLEAR(buffer->list); - return block; - } - - // final bytes object - result = PyBytes_FromStringAndSize(NULL, buffer->allocated - avail_out); - if (result == NULL) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return NULL; - } - - // memory copy - if (list_len > 0) { - char *posi = PyBytes_AS_STRING(result); - - // blocks except the last one - Py_ssize_t i = 0; - for (; i < list_len-1; i++) { - block = PyList_GET_ITEM(buffer->list, i); - memcpy(posi, PyBytes_AS_STRING(block), Py_SIZE(block)); - posi += Py_SIZE(block); - } - // the last block - block = PyList_GET_ITEM(buffer->list, i); - memcpy(posi, PyBytes_AS_STRING(block), Py_SIZE(block) - avail_out); - } else { - assert(Py_SIZE(result) == 0); - } - - Py_CLEAR(buffer->list); - return result; -} - -/* Clean up the buffer when an error occurred. */ -static inline void -_BlocksOutputBuffer_OnError(_BlocksOutputBuffer *buffer) -{ - Py_CLEAR(buffer->list); -} - -#ifdef __cplusplus -} -#endif -#endif /* Py_INTERNAL_BLOCKS_OUTPUT_BUFFER_H */ \ No newline at end of file diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_bytes_methods.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_bytes_methods.h deleted file mode 100644 index 11e8ab2..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_bytes_methods.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_BYTES_CTYPE_H -#define Py_BYTES_CTYPE_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* - * The internal implementation behind PyBytes (bytes) and PyByteArray (bytearray) - * methods of the given names, they operate on ASCII byte strings. - */ -extern PyObject* _Py_bytes_isspace(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isalpha(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isalnum(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isascii(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isdigit(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_islower(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isupper(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_istitle(const char *cptr, Py_ssize_t len); - -/* These store their len sized answer in the given preallocated *result arg. */ -extern void _Py_bytes_lower(char *result, const char *cptr, Py_ssize_t len); -extern void _Py_bytes_upper(char *result, const char *cptr, Py_ssize_t len); -extern void _Py_bytes_title(char *result, const char *s, Py_ssize_t len); -extern void _Py_bytes_capitalize(char *result, const char *s, Py_ssize_t len); -extern void _Py_bytes_swapcase(char *result, const char *s, Py_ssize_t len); - -extern PyObject *_Py_bytes_find(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_index(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_rfind(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_rindex(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_count(const char *str, Py_ssize_t len, PyObject *args); -extern int _Py_bytes_contains(const char *str, Py_ssize_t len, PyObject *arg); -extern PyObject *_Py_bytes_startswith(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_endswith(const char *str, Py_ssize_t len, PyObject *args); - -/* The maketrans() static method. */ -extern PyObject* _Py_bytes_maketrans(Py_buffer *frm, Py_buffer *to); - -/* Shared __doc__ strings. */ -extern const char _Py_isspace__doc__[]; -extern const char _Py_isalpha__doc__[]; -extern const char _Py_isalnum__doc__[]; -extern const char _Py_isascii__doc__[]; -extern const char _Py_isdigit__doc__[]; -extern const char _Py_islower__doc__[]; -extern const char _Py_isupper__doc__[]; -extern const char _Py_istitle__doc__[]; -extern const char _Py_lower__doc__[]; -extern const char _Py_upper__doc__[]; -extern const char _Py_title__doc__[]; -extern const char _Py_capitalize__doc__[]; -extern const char _Py_swapcase__doc__[]; -extern const char _Py_count__doc__[]; -extern const char _Py_find__doc__[]; -extern const char _Py_index__doc__[]; -extern const char _Py_rfind__doc__[]; -extern const char _Py_rindex__doc__[]; -extern const char _Py_startswith__doc__[]; -extern const char _Py_endswith__doc__[]; -extern const char _Py_maketrans__doc__[]; -extern const char _Py_expandtabs__doc__[]; -extern const char _Py_ljust__doc__[]; -extern const char _Py_rjust__doc__[]; -extern const char _Py_center__doc__[]; -extern const char _Py_zfill__doc__[]; - -/* this is needed because some docs are shared from the .o, not static */ -#define PyDoc_STRVAR_shared(name,str) const char name[] = PyDoc_STR(str) - -#endif /* !Py_BYTES_CTYPE_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_call.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_call.h deleted file mode 100644 index f7d856a..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_call.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef Py_INTERNAL_CALL_H -#define Py_INTERNAL_CALL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -PyAPI_FUNC(PyObject *) _PyObject_Call_Prepend( - PyThreadState *tstate, - PyObject *callable, - PyObject *obj, - PyObject *args, - PyObject *kwargs); - -PyAPI_FUNC(PyObject *) _PyObject_FastCallDictTstate( - PyThreadState *tstate, - PyObject *callable, - PyObject *const *args, - size_t nargsf, - PyObject *kwargs); - -PyAPI_FUNC(PyObject *) _PyObject_Call( - PyThreadState *tstate, - PyObject *callable, - PyObject *args, - PyObject *kwargs); - -static inline PyObject * -_PyObject_CallNoArgTstate(PyThreadState *tstate, PyObject *func) { - return _PyObject_VectorcallTstate(tstate, func, NULL, 0, NULL); -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CALL_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_ceval.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_ceval.h deleted file mode 100644 index f573c3e..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_ceval.h +++ /dev/null @@ -1,114 +0,0 @@ -#ifndef Py_INTERNAL_CEVAL_H -#define Py_INTERNAL_CEVAL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Forward declarations */ -struct pyruntimestate; -struct _ceval_runtime_state; - -#include "pycore_interp.h" /* PyInterpreterState.eval_frame */ - -extern void _Py_FinishPendingCalls(PyThreadState *tstate); -extern void _PyEval_InitRuntimeState(struct _ceval_runtime_state *); -extern int _PyEval_InitState(struct _ceval_state *ceval); -extern void _PyEval_FiniState(struct _ceval_state *ceval); -PyAPI_FUNC(void) _PyEval_SignalReceived(PyInterpreterState *interp); -PyAPI_FUNC(int) _PyEval_AddPendingCall( - PyInterpreterState *interp, - int (*func)(void *), - void *arg); -PyAPI_FUNC(void) _PyEval_SignalAsyncExc(PyInterpreterState *interp); -#ifdef HAVE_FORK -extern PyStatus _PyEval_ReInitThreads(PyThreadState *tstate); -#endif -PyAPI_FUNC(void) _PyEval_SetCoroutineOriginTrackingDepth( - PyThreadState *tstate, - int new_depth); - -void _PyEval_Fini(void); - - -extern PyObject* _PyEval_GetBuiltins(PyThreadState *tstate); -extern PyObject *_PyEval_BuiltinsFromGlobals( - PyThreadState *tstate, - PyObject *globals); - - -static inline PyObject* -_PyEval_EvalFrame(PyThreadState *tstate, PyFrameObject *f, int throwflag) -{ - return tstate->interp->eval_frame(tstate, f, throwflag); -} - -extern PyObject * -_PyEval_Vector(PyThreadState *tstate, - PyFrameConstructor *desc, PyObject *locals, - PyObject* const* args, size_t argcount, - PyObject *kwnames); - -#ifdef EXPERIMENTAL_ISOLATED_SUBINTERPRETERS -extern int _PyEval_ThreadsInitialized(PyInterpreterState *interp); -#else -extern int _PyEval_ThreadsInitialized(struct pyruntimestate *runtime); -#endif -extern PyStatus _PyEval_InitGIL(PyThreadState *tstate); -extern void _PyEval_FiniGIL(PyInterpreterState *interp); - -extern void _PyEval_ReleaseLock(PyThreadState *tstate); - -extern void _PyEval_DeactivateOpCache(void); - - -/* --- _Py_EnterRecursiveCall() ----------------------------------------- */ - -#ifdef USE_STACKCHECK -/* With USE_STACKCHECK macro defined, trigger stack checks in - _Py_CheckRecursiveCall() on every 64th call to Py_EnterRecursiveCall. */ -static inline int _Py_MakeRecCheck(PyThreadState *tstate) { - return (++tstate->recursion_depth > tstate->interp->ceval.recursion_limit - || ++tstate->stackcheck_counter > 64); -} -#else -static inline int _Py_MakeRecCheck(PyThreadState *tstate) { - return (++tstate->recursion_depth > tstate->interp->ceval.recursion_limit); -} -#endif - -PyAPI_FUNC(int) _Py_CheckRecursiveCall( - PyThreadState *tstate, - const char *where); - -static inline int _Py_EnterRecursiveCall(PyThreadState *tstate, - const char *where) { - return (_Py_MakeRecCheck(tstate) && _Py_CheckRecursiveCall(tstate, where)); -} - -static inline int _Py_EnterRecursiveCall_inline(const char *where) { - PyThreadState *tstate = PyThreadState_GET(); - return _Py_EnterRecursiveCall(tstate, where); -} - -#define Py_EnterRecursiveCall(where) _Py_EnterRecursiveCall_inline(where) - -static inline void _Py_LeaveRecursiveCall(PyThreadState *tstate) { - tstate->recursion_depth--; -} - -static inline void _Py_LeaveRecursiveCall_inline(void) { - PyThreadState *tstate = PyThreadState_GET(); - _Py_LeaveRecursiveCall(tstate); -} - -#define Py_LeaveRecursiveCall() _Py_LeaveRecursiveCall_inline() - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CEVAL_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_code.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_code.h deleted file mode 100644 index 8ff1863..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_code.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef Py_INTERNAL_CODE_H -#define Py_INTERNAL_CODE_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct { - PyObject *ptr; /* Cached pointer (borrowed reference) */ - uint64_t globals_ver; /* ma_version of global dict */ - uint64_t builtins_ver; /* ma_version of builtin dict */ -} _PyOpcache_LoadGlobal; - -typedef struct { - PyTypeObject *type; - Py_ssize_t hint; - unsigned int tp_version_tag; -} _PyOpCodeOpt_LoadAttr; - -struct _PyOpcache { - union { - _PyOpcache_LoadGlobal lg; - _PyOpCodeOpt_LoadAttr la; - } u; - char optimized; -}; - -/* Private API */ -int _PyCode_InitOpcache(PyCodeObject *co); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CODE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_compile.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_compile.h deleted file mode 100644 index 06a6082..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_compile.h +++ /dev/null @@ -1,44 +0,0 @@ -#ifndef Py_INTERNAL_COMPILE_H -#define Py_INTERNAL_COMPILE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct _arena; // Type defined in pycore_pyarena.h -struct _mod; // Type defined in pycore_ast.h - -// Export the symbol for test_peg_generator (built as a library) -PyAPI_FUNC(PyCodeObject*) _PyAST_Compile( - struct _mod *mod, - PyObject *filename, - PyCompilerFlags *flags, - int optimize, - struct _arena *arena); -extern PyFutureFeatures* _PyFuture_FromAST( - struct _mod * mod, - PyObject *filename - ); - -extern PyObject* _Py_Mangle(PyObject *p, PyObject *name); - -typedef struct { - int optimize; - int ff_features; - - int recursion_depth; /* current recursion depth */ - int recursion_limit; /* recursion limit */ -} _PyASTOptimizeState; - -extern int _PyAST_Optimize( - struct _mod *, - struct _arena *arena, - _PyASTOptimizeState *state); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_COMPILE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_condvar.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_condvar.h deleted file mode 100644 index 8b89d70..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_condvar.h +++ /dev/null @@ -1,95 +0,0 @@ -#ifndef Py_INTERNAL_CONDVAR_H -#define Py_INTERNAL_CONDVAR_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#ifndef _POSIX_THREADS -/* This means pthreads are not implemented in libc headers, hence the macro - not present in unistd.h. But they still can be implemented as an external - library (e.g. gnu pth in pthread emulation) */ -# ifdef HAVE_PTHREAD_H -# include /* _POSIX_THREADS */ -# endif -#endif - -#ifdef _POSIX_THREADS -/* - * POSIX support - */ -#define Py_HAVE_CONDVAR - -#include - -#define PyMUTEX_T pthread_mutex_t -#define PyCOND_T pthread_cond_t - -#elif defined(NT_THREADS) -/* - * Windows (XP, 2003 server and later, as well as (hopefully) CE) support - * - * Emulated condition variables ones that work with XP and later, plus - * example native support on VISTA and onwards. - */ -#define Py_HAVE_CONDVAR - -/* include windows if it hasn't been done before */ -#define WIN32_LEAN_AND_MEAN -#include - -/* options */ -/* non-emulated condition variables are provided for those that want - * to target Windows Vista. Modify this macro to enable them. - */ -#ifndef _PY_EMULATED_WIN_CV -#define _PY_EMULATED_WIN_CV 1 /* use emulated condition variables */ -#endif - -/* fall back to emulation if not targeting Vista */ -#if !defined NTDDI_VISTA || NTDDI_VERSION < NTDDI_VISTA -#undef _PY_EMULATED_WIN_CV -#define _PY_EMULATED_WIN_CV 1 -#endif - -#if _PY_EMULATED_WIN_CV - -typedef CRITICAL_SECTION PyMUTEX_T; - -/* The ConditionVariable object. From XP onwards it is easily emulated - with a Semaphore. - Semaphores are available on Windows XP (2003 server) and later. - We use a Semaphore rather than an auto-reset event, because although - an auto-resent event might appear to solve the lost-wakeup bug (race - condition between releasing the outer lock and waiting) because it - maintains state even though a wait hasn't happened, there is still - a lost wakeup problem if more than one thread are interrupted in the - critical place. A semaphore solves that, because its state is - counted, not Boolean. - Because it is ok to signal a condition variable with no one - waiting, we need to keep track of the number of - waiting threads. Otherwise, the semaphore's state could rise - without bound. This also helps reduce the number of "spurious wakeups" - that would otherwise happen. - */ - -typedef struct _PyCOND_T -{ - HANDLE sem; - int waiting; /* to allow PyCOND_SIGNAL to be a no-op */ -} PyCOND_T; - -#else /* !_PY_EMULATED_WIN_CV */ - -/* Use native Win7 primitives if build target is Win7 or higher */ - -/* SRWLOCK is faster and better than CriticalSection */ -typedef SRWLOCK PyMUTEX_T; - -typedef CONDITION_VARIABLE PyCOND_T; - -#endif /* _PY_EMULATED_WIN_CV */ - -#endif /* _POSIX_THREADS, NT_THREADS */ - -#endif /* Py_INTERNAL_CONDVAR_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_context.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_context.h deleted file mode 100644 index a482dd4..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_context.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef Py_INTERNAL_CONTEXT_H -#define Py_INTERNAL_CONTEXT_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_hamt.h" /* PyHamtObject */ - -struct _pycontextobject { - PyObject_HEAD - PyContext *ctx_prev; - PyHamtObject *ctx_vars; - PyObject *ctx_weakreflist; - int ctx_entered; -}; - - -struct _pycontextvarobject { - PyObject_HEAD - PyObject *var_name; - PyObject *var_default; - PyObject *var_cached; - uint64_t var_cached_tsid; - uint64_t var_cached_tsver; - Py_hash_t var_hash; -}; - - -struct _pycontexttokenobject { - PyObject_HEAD - PyContext *tok_ctx; - PyContextVar *tok_var; - PyObject *tok_oldval; - int tok_used; -}; - - -int _PyContext_Init(void); -void _PyContext_Fini(PyInterpreterState *interp); - -#endif /* !Py_INTERNAL_CONTEXT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_dtoa.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_dtoa.h deleted file mode 100644 index 3faf8cf..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_dtoa.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef PY_NO_SHORT_FLOAT_REPR -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* These functions are used by modules compiled as C extension like math: - they must be exported. */ - -PyAPI_FUNC(double) _Py_dg_strtod(const char *str, char **ptr); -PyAPI_FUNC(char *) _Py_dg_dtoa(double d, int mode, int ndigits, - int *decpt, int *sign, char **rve); -PyAPI_FUNC(void) _Py_dg_freedtoa(char *s); -PyAPI_FUNC(double) _Py_dg_stdnan(int sign); -PyAPI_FUNC(double) _Py_dg_infinity(int sign); - -#ifdef __cplusplus -} -#endif -#endif /* !PY_NO_SHORT_FLOAT_REPR */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_fileutils.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_fileutils.h deleted file mode 100644 index c1c9244..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_fileutils.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef Py_INTERNAL_FILEUTILS_H -#define Py_INTERNAL_FILEUTILS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "Py_BUILD_CORE must be defined to include this header" -#endif - -#include /* struct lconv */ - -PyAPI_DATA(int) _Py_HasFileSystemDefaultEncodeErrors; - -PyAPI_FUNC(int) _Py_DecodeUTF8Ex( - const char *arg, - Py_ssize_t arglen, - wchar_t **wstr, - size_t *wlen, - const char **reason, - _Py_error_handler errors); - -PyAPI_FUNC(int) _Py_EncodeUTF8Ex( - const wchar_t *text, - char **str, - size_t *error_pos, - const char **reason, - int raw_malloc, - _Py_error_handler errors); - -PyAPI_FUNC(wchar_t*) _Py_DecodeUTF8_surrogateescape( - const char *arg, - Py_ssize_t arglen, - size_t *wlen); - -PyAPI_FUNC(int) _Py_GetForceASCII(void); - -/* Reset "force ASCII" mode (if it was initialized). - - This function should be called when Python changes the LC_CTYPE locale, - so the "force ASCII" mode can be detected again on the new locale - encoding. */ -PyAPI_FUNC(void) _Py_ResetForceASCII(void); - - -PyAPI_FUNC(int) _Py_GetLocaleconvNumeric( - struct lconv *lc, - PyObject **decimal_point, - PyObject **thousands_sep); - -PyAPI_FUNC(void) _Py_closerange(int first, int last); - -PyAPI_FUNC(wchar_t*) _Py_GetLocaleEncoding(void); -PyAPI_FUNC(PyObject*) _Py_GetLocaleEncodingObject(void); - -#ifdef HAVE_NON_UNICODE_WCHAR_T_REPRESENTATION -extern int _Py_LocaleUsesNonUnicodeWchar(void); - -extern wchar_t* _Py_DecodeNonUnicodeWchar( - const wchar_t* native, - Py_ssize_t size); - -extern int _Py_EncodeNonUnicodeWchar_InPlace( - wchar_t* unicode, - Py_ssize_t size); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FILEUTILS_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_format.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_format.h deleted file mode 100644 index 1b8d575..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_format.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef Py_INTERNAL_FORMAT_H -#define Py_INTERNAL_FORMAT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Format codes - * F_LJUST '-' - * F_SIGN '+' - * F_BLANK ' ' - * F_ALT '#' - * F_ZERO '0' - */ -#define F_LJUST (1<<0) -#define F_SIGN (1<<1) -#define F_BLANK (1<<2) -#define F_ALT (1<<3) -#define F_ZERO (1<<4) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FORMAT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_gc.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_gc.h deleted file mode 100644 index 9db4a47..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_gc.h +++ /dev/null @@ -1,181 +0,0 @@ -#ifndef Py_INTERNAL_GC_H -#define Py_INTERNAL_GC_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* GC information is stored BEFORE the object structure. */ -typedef struct { - // Pointer to next object in the list. - // 0 means the object is not tracked - uintptr_t _gc_next; - - // Pointer to previous object in the list. - // Lowest two bits are used for flags documented later. - uintptr_t _gc_prev; -} PyGC_Head; - -#define _Py_AS_GC(o) ((PyGC_Head *)(o)-1) - -/* True if the object is currently tracked by the GC. */ -#define _PyObject_GC_IS_TRACKED(o) (_Py_AS_GC(o)->_gc_next != 0) - -/* True if the object may be tracked by the GC in the future, or already is. - This can be useful to implement some optimizations. */ -#define _PyObject_GC_MAY_BE_TRACKED(obj) \ - (PyObject_IS_GC(obj) && \ - (!PyTuple_CheckExact(obj) || _PyObject_GC_IS_TRACKED(obj))) - - -/* Bit flags for _gc_prev */ -/* Bit 0 is set when tp_finalize is called */ -#define _PyGC_PREV_MASK_FINALIZED (1) -/* Bit 1 is set when the object is in generation which is GCed currently. */ -#define _PyGC_PREV_MASK_COLLECTING (2) -/* The (N-2) most significant bits contain the real address. */ -#define _PyGC_PREV_SHIFT (2) -#define _PyGC_PREV_MASK (((uintptr_t) -1) << _PyGC_PREV_SHIFT) - -// Lowest bit of _gc_next is used for flags only in GC. -// But it is always 0 for normal code. -#define _PyGCHead_NEXT(g) ((PyGC_Head*)(g)->_gc_next) -#define _PyGCHead_SET_NEXT(g, p) ((g)->_gc_next = (uintptr_t)(p)) - -// Lowest two bits of _gc_prev is used for _PyGC_PREV_MASK_* flags. -#define _PyGCHead_PREV(g) ((PyGC_Head*)((g)->_gc_prev & _PyGC_PREV_MASK)) -#define _PyGCHead_SET_PREV(g, p) do { \ - assert(((uintptr_t)p & ~_PyGC_PREV_MASK) == 0); \ - (g)->_gc_prev = ((g)->_gc_prev & ~_PyGC_PREV_MASK) \ - | ((uintptr_t)(p)); \ - } while (0) - -#define _PyGCHead_FINALIZED(g) \ - (((g)->_gc_prev & _PyGC_PREV_MASK_FINALIZED) != 0) -#define _PyGCHead_SET_FINALIZED(g) \ - ((g)->_gc_prev |= _PyGC_PREV_MASK_FINALIZED) - -#define _PyGC_FINALIZED(o) \ - _PyGCHead_FINALIZED(_Py_AS_GC(o)) -#define _PyGC_SET_FINALIZED(o) \ - _PyGCHead_SET_FINALIZED(_Py_AS_GC(o)) - - -/* GC runtime state */ - -/* If we change this, we need to change the default value in the - signature of gc.collect. */ -#define NUM_GENERATIONS 3 -/* - NOTE: about untracking of mutable objects. - - Certain types of container cannot participate in a reference cycle, and - so do not need to be tracked by the garbage collector. Untracking these - objects reduces the cost of garbage collections. However, determining - which objects may be untracked is not free, and the costs must be - weighed against the benefits for garbage collection. - - There are two possible strategies for when to untrack a container: - - i) When the container is created. - ii) When the container is examined by the garbage collector. - - Tuples containing only immutable objects (integers, strings etc, and - recursively, tuples of immutable objects) do not need to be tracked. - The interpreter creates a large number of tuples, many of which will - not survive until garbage collection. It is therefore not worthwhile - to untrack eligible tuples at creation time. - - Instead, all tuples except the empty tuple are tracked when created. - During garbage collection it is determined whether any surviving tuples - can be untracked. A tuple can be untracked if all of its contents are - already not tracked. Tuples are examined for untracking in all garbage - collection cycles. It may take more than one cycle to untrack a tuple. - - Dictionaries containing only immutable objects also do not need to be - tracked. Dictionaries are untracked when created. If a tracked item is - inserted into a dictionary (either as a key or value), the dictionary - becomes tracked. During a full garbage collection (all generations), - the collector will untrack any dictionaries whose contents are not - tracked. - - The module provides the python function is_tracked(obj), which returns - the CURRENT tracking status of the object. Subsequent garbage - collections may change the tracking status of the object. - - Untracking of certain containers was introduced in issue #4688, and - the algorithm was refined in response to issue #14775. -*/ - -struct gc_generation { - PyGC_Head head; - int threshold; /* collection threshold */ - int count; /* count of allocations or collections of younger - generations */ -}; - -/* Running stats per generation */ -struct gc_generation_stats { - /* total number of collections */ - Py_ssize_t collections; - /* total number of collected objects */ - Py_ssize_t collected; - /* total number of uncollectable objects (put into gc.garbage) */ - Py_ssize_t uncollectable; -}; - -struct _gc_runtime_state { - /* List of objects that still need to be cleaned up, singly linked - * via their gc headers' gc_prev pointers. */ - PyObject *trash_delete_later; - /* Current call-stack depth of tp_dealloc calls. */ - int trash_delete_nesting; - - int enabled; - int debug; - /* linked lists of container objects */ - struct gc_generation generations[NUM_GENERATIONS]; - PyGC_Head *generation0; - /* a permanent generation which won't be collected */ - struct gc_generation permanent_generation; - struct gc_generation_stats generation_stats[NUM_GENERATIONS]; - /* true if we are currently running the collector */ - int collecting; - /* list of uncollectable objects */ - PyObject *garbage; - /* a list of callbacks to be invoked when collection is performed */ - PyObject *callbacks; - /* This is the number of objects that survived the last full - collection. It approximates the number of long lived objects - tracked by the GC. - - (by "full collection", we mean a collection of the oldest - generation). */ - Py_ssize_t long_lived_total; - /* This is the number of objects that survived all "non-full" - collections, and are awaiting to undergo a full collection for - the first time. */ - Py_ssize_t long_lived_pending; -}; - -extern void _PyGC_InitState(struct _gc_runtime_state *); - -extern Py_ssize_t _PyGC_CollectNoFail(PyThreadState *tstate); - - -// Functions to clear types free lists -extern void _PyFrame_ClearFreeList(PyInterpreterState *interp); -extern void _PyTuple_ClearFreeList(PyInterpreterState *interp); -extern void _PyFloat_ClearFreeList(PyInterpreterState *interp); -extern void _PyList_ClearFreeList(PyInterpreterState *interp); -extern void _PyDict_ClearFreeList(PyInterpreterState *interp); -extern void _PyAsyncGen_ClearFreeLists(PyInterpreterState *interp); -extern void _PyContext_ClearFreeList(PyInterpreterState *interp); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GC_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_getopt.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_getopt.h deleted file mode 100644 index 7f0dd13..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_getopt.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef Py_INTERNAL_PYGETOPT_H -#define Py_INTERNAL_PYGETOPT_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern int _PyOS_opterr; -extern Py_ssize_t _PyOS_optind; -extern const wchar_t *_PyOS_optarg; - -extern void _PyOS_ResetGetOpt(void); - -typedef struct { - const wchar_t *name; - int has_arg; - int val; -} _PyOS_LongOption; - -extern int _PyOS_GetOpt(Py_ssize_t argc, wchar_t * const *argv, int *longindex); - -#endif /* !Py_INTERNAL_PYGETOPT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_gil.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_gil.h deleted file mode 100644 index 8ebad37..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_gil.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef Py_INTERNAL_GIL_H -#define Py_INTERNAL_GIL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_atomic.h" /* _Py_atomic_address */ -#include "pycore_condvar.h" /* PyCOND_T */ - -#ifndef Py_HAVE_CONDVAR -# error You need either a POSIX-compatible or a Windows system! -#endif - -/* Enable if you want to force the switching of threads at least - every `interval`. */ -#undef FORCE_SWITCHING -#define FORCE_SWITCHING - -struct _gil_runtime_state { - /* microseconds (the Python API uses seconds, though) */ - unsigned long interval; - /* Last PyThreadState holding / having held the GIL. This helps us - know whether anyone else was scheduled after we dropped the GIL. */ - _Py_atomic_address last_holder; - /* Whether the GIL is already taken (-1 if uninitialized). This is - atomic because it can be read without any lock taken in ceval.c. */ - _Py_atomic_int locked; - /* Number of GIL switches since the beginning. */ - unsigned long switch_number; - /* This condition variable allows one or several threads to wait - until the GIL is released. In addition, the mutex also protects - the above variables. */ - PyCOND_T cond; - PyMUTEX_T mutex; -#ifdef FORCE_SWITCHING - /* This condition variable helps the GIL-releasing thread wait for - a GIL-awaiting thread to be scheduled and take the GIL. */ - PyCOND_T switch_cond; - PyMUTEX_T switch_mutex; -#endif -}; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GIL_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_hamt.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_hamt.h deleted file mode 100644 index 357d966..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_hamt.h +++ /dev/null @@ -1,128 +0,0 @@ -#ifndef Py_INTERNAL_HAMT_H -#define Py_INTERNAL_HAMT_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* -HAMT tree is shaped by hashes of keys. Every group of 5 bits of a hash denotes -the exact position of the key in one level of the tree. Since we're using -32 bit hashes, we can have at most 7 such levels. Although if there are -two distinct keys with equal hashes, they will have to occupy the same -cell in the 7th level of the tree -- so we'd put them in a "collision" node. -Which brings the total possible tree depth to 8. Read more about the actual -layout of the HAMT tree in `hamt.c`. - -This constant is used to define a datastucture for storing iteration state. -*/ -#define _Py_HAMT_MAX_TREE_DEPTH 8 - - -#define PyHamt_Check(o) Py_IS_TYPE(o, &_PyHamt_Type) - - -/* Abstract tree node. */ -typedef struct { - PyObject_HEAD -} PyHamtNode; - - -/* An HAMT immutable mapping collection. */ -typedef struct { - PyObject_HEAD - PyHamtNode *h_root; - PyObject *h_weakreflist; - Py_ssize_t h_count; -} PyHamtObject; - - -/* A struct to hold the state of depth-first traverse of the tree. - - HAMT is an immutable collection. Iterators will hold a strong reference - to it, and every node in the HAMT has strong references to its children. - - So for iterators, we can implement zero allocations and zero reference - inc/dec depth-first iteration. - - - i_nodes: an array of seven pointers to tree nodes - - i_level: the current node in i_nodes - - i_pos: an array of positions within nodes in i_nodes. -*/ -typedef struct { - PyHamtNode *i_nodes[_Py_HAMT_MAX_TREE_DEPTH]; - Py_ssize_t i_pos[_Py_HAMT_MAX_TREE_DEPTH]; - int8_t i_level; -} PyHamtIteratorState; - - -/* Base iterator object. - - Contains the iteration state, a pointer to the HAMT tree, - and a pointer to the 'yield function'. The latter is a simple - function that returns a key/value tuple for the 'Items' iterator, - just a key for the 'Keys' iterator, and a value for the 'Values' - iterator. -*/ -typedef struct { - PyObject_HEAD - PyHamtObject *hi_obj; - PyHamtIteratorState hi_iter; - binaryfunc hi_yield; -} PyHamtIterator; - - -PyAPI_DATA(PyTypeObject) _PyHamt_Type; -PyAPI_DATA(PyTypeObject) _PyHamt_ArrayNode_Type; -PyAPI_DATA(PyTypeObject) _PyHamt_BitmapNode_Type; -PyAPI_DATA(PyTypeObject) _PyHamt_CollisionNode_Type; -PyAPI_DATA(PyTypeObject) _PyHamtKeys_Type; -PyAPI_DATA(PyTypeObject) _PyHamtValues_Type; -PyAPI_DATA(PyTypeObject) _PyHamtItems_Type; - - -/* Create a new HAMT immutable mapping. */ -PyHamtObject * _PyHamt_New(void); - -/* Return a new collection based on "o", but with an additional - key/val pair. */ -PyHamtObject * _PyHamt_Assoc(PyHamtObject *o, PyObject *key, PyObject *val); - -/* Return a new collection based on "o", but without "key". */ -PyHamtObject * _PyHamt_Without(PyHamtObject *o, PyObject *key); - -/* Find "key" in the "o" collection. - - Return: - - -1: An error occurred. - - 0: "key" wasn't found in "o". - - 1: "key" is in "o"; "*val" is set to its value (a borrowed ref). -*/ -int _PyHamt_Find(PyHamtObject *o, PyObject *key, PyObject **val); - -/* Check if "v" is equal to "w". - - Return: - - 0: v != w - - 1: v == w - - -1: An error occurred. -*/ -int _PyHamt_Eq(PyHamtObject *v, PyHamtObject *w); - -/* Return the size of "o"; equivalent of "len(o)". */ -Py_ssize_t _PyHamt_Len(PyHamtObject *o); - -/* Return a Keys iterator over "o". */ -PyObject * _PyHamt_NewIterKeys(PyHamtObject *o); - -/* Return a Values iterator over "o". */ -PyObject * _PyHamt_NewIterValues(PyHamtObject *o); - -/* Return a Items iterator over "o". */ -PyObject * _PyHamt_NewIterItems(PyHamtObject *o); - -int _PyHamt_Init(void); -void _PyHamt_Fini(void); - -#endif /* !Py_INTERNAL_HAMT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_hashtable.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_hashtable.h deleted file mode 100644 index 18757ab..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_hashtable.h +++ /dev/null @@ -1,148 +0,0 @@ -#ifndef Py_INTERNAL_HASHTABLE_H -#define Py_INTERNAL_HASHTABLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Single linked list */ - -typedef struct _Py_slist_item_s { - struct _Py_slist_item_s *next; -} _Py_slist_item_t; - -typedef struct { - _Py_slist_item_t *head; -} _Py_slist_t; - -#define _Py_SLIST_ITEM_NEXT(ITEM) (((_Py_slist_item_t *)ITEM)->next) - -#define _Py_SLIST_HEAD(SLIST) (((_Py_slist_t *)SLIST)->head) - - -/* _Py_hashtable: table entry */ - -typedef struct { - /* used by _Py_hashtable_t.buckets to link entries */ - _Py_slist_item_t _Py_slist_item; - - Py_uhash_t key_hash; - void *key; - void *value; -} _Py_hashtable_entry_t; - - -/* _Py_hashtable: prototypes */ - -/* Forward declaration */ -struct _Py_hashtable_t; -typedef struct _Py_hashtable_t _Py_hashtable_t; - -typedef Py_uhash_t (*_Py_hashtable_hash_func) (const void *key); -typedef int (*_Py_hashtable_compare_func) (const void *key1, const void *key2); -typedef void (*_Py_hashtable_destroy_func) (void *key); -typedef _Py_hashtable_entry_t* (*_Py_hashtable_get_entry_func)(_Py_hashtable_t *ht, - const void *key); - -typedef struct { - // Allocate a memory block - void* (*malloc) (size_t size); - - // Release a memory block - void (*free) (void *ptr); -} _Py_hashtable_allocator_t; - - -/* _Py_hashtable: table */ -struct _Py_hashtable_t { - size_t nentries; // Total number of entries in the table - size_t nbuckets; - _Py_slist_t *buckets; - - _Py_hashtable_get_entry_func get_entry_func; - _Py_hashtable_hash_func hash_func; - _Py_hashtable_compare_func compare_func; - _Py_hashtable_destroy_func key_destroy_func; - _Py_hashtable_destroy_func value_destroy_func; - _Py_hashtable_allocator_t alloc; -}; - -/* Hash a pointer (void*) */ -PyAPI_FUNC(Py_uhash_t) _Py_hashtable_hash_ptr(const void *key); - -/* Comparison using memcmp() */ -PyAPI_FUNC(int) _Py_hashtable_compare_direct( - const void *key1, - const void *key2); - -PyAPI_FUNC(_Py_hashtable_t *) _Py_hashtable_new( - _Py_hashtable_hash_func hash_func, - _Py_hashtable_compare_func compare_func); - -PyAPI_FUNC(_Py_hashtable_t *) _Py_hashtable_new_full( - _Py_hashtable_hash_func hash_func, - _Py_hashtable_compare_func compare_func, - _Py_hashtable_destroy_func key_destroy_func, - _Py_hashtable_destroy_func value_destroy_func, - _Py_hashtable_allocator_t *allocator); - -PyAPI_FUNC(void) _Py_hashtable_destroy(_Py_hashtable_t *ht); - -PyAPI_FUNC(void) _Py_hashtable_clear(_Py_hashtable_t *ht); - -typedef int (*_Py_hashtable_foreach_func) (_Py_hashtable_t *ht, - const void *key, const void *value, - void *user_data); - -/* Call func() on each entry of the hashtable. - Iteration stops if func() result is non-zero, in this case it's the result - of the call. Otherwise, the function returns 0. */ -PyAPI_FUNC(int) _Py_hashtable_foreach( - _Py_hashtable_t *ht, - _Py_hashtable_foreach_func func, - void *user_data); - -PyAPI_FUNC(size_t) _Py_hashtable_size(const _Py_hashtable_t *ht); - -/* Add a new entry to the hash. The key must not be present in the hash table. - Return 0 on success, -1 on memory error. */ -PyAPI_FUNC(int) _Py_hashtable_set( - _Py_hashtable_t *ht, - const void *key, - void *value); - - -/* Get an entry. - Return NULL if the key does not exist. */ -static inline _Py_hashtable_entry_t * -_Py_hashtable_get_entry(_Py_hashtable_t *ht, const void *key) -{ - return ht->get_entry_func(ht, key); -} - - -/* Get value from an entry. - Return NULL if the entry is not found. - - Use _Py_hashtable_get_entry() to distinguish entry value equal to NULL - and entry not found. */ -PyAPI_FUNC(void*) _Py_hashtable_get(_Py_hashtable_t *ht, const void *key); - - -/* Remove a key and its associated value without calling key and value destroy - functions. - - Return the removed value if the key was found. - Return NULL if the key was not found. */ -PyAPI_FUNC(void*) _Py_hashtable_steal( - _Py_hashtable_t *ht, - const void *key); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_HASHTABLE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_import.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_import.h deleted file mode 100644 index e21ed0a..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_import.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_INTERNAL_IMPORT_H -#define Py_INTERNAL_IMPORT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef HAVE_FORK -extern PyStatus _PyImport_ReInitLock(void); -#endif -extern PyObject* _PyImport_BootstrapImp(PyThreadState *tstate); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_IMPORT_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_initconfig.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_initconfig.h deleted file mode 100644 index 21c71bf..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_initconfig.h +++ /dev/null @@ -1,178 +0,0 @@ -#ifndef Py_INTERNAL_CORECONFIG_H -#define Py_INTERNAL_CORECONFIG_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Forward declaration */ -struct pyruntimestate; - -/* --- PyStatus ----------------------------------------------- */ - -/* Almost all errors causing Python initialization to fail */ -#ifdef _MSC_VER - /* Visual Studio 2015 doesn't implement C99 __func__ in C */ -# define _PyStatus_GET_FUNC() __FUNCTION__ -#else -# define _PyStatus_GET_FUNC() __func__ -#endif - -#define _PyStatus_OK() \ - (PyStatus){._type = _PyStatus_TYPE_OK,} - /* other fields are set to 0 */ -#define _PyStatus_ERR(ERR_MSG) \ - (PyStatus){ \ - ._type = _PyStatus_TYPE_ERROR, \ - .func = _PyStatus_GET_FUNC(), \ - .err_msg = (ERR_MSG)} - /* other fields are set to 0 */ -#define _PyStatus_NO_MEMORY() _PyStatus_ERR("memory allocation failed") -#define _PyStatus_EXIT(EXITCODE) \ - (PyStatus){ \ - ._type = _PyStatus_TYPE_EXIT, \ - .exitcode = (EXITCODE)} -#define _PyStatus_IS_ERROR(err) \ - (err._type == _PyStatus_TYPE_ERROR) -#define _PyStatus_IS_EXIT(err) \ - (err._type == _PyStatus_TYPE_EXIT) -#define _PyStatus_EXCEPTION(err) \ - (err._type != _PyStatus_TYPE_OK) -#define _PyStatus_UPDATE_FUNC(err) \ - do { err.func = _PyStatus_GET_FUNC(); } while (0) - -PyObject* _PyErr_SetFromPyStatus(PyStatus status); - -/* --- PyWideStringList ------------------------------------------------ */ - -#define _PyWideStringList_INIT (PyWideStringList){.length = 0, .items = NULL} - -#ifndef NDEBUG -PyAPI_FUNC(int) _PyWideStringList_CheckConsistency(const PyWideStringList *list); -#endif -PyAPI_FUNC(void) _PyWideStringList_Clear(PyWideStringList *list); -PyAPI_FUNC(int) _PyWideStringList_Copy(PyWideStringList *list, - const PyWideStringList *list2); -PyAPI_FUNC(PyStatus) _PyWideStringList_Extend(PyWideStringList *list, - const PyWideStringList *list2); -PyAPI_FUNC(PyObject*) _PyWideStringList_AsList(const PyWideStringList *list); - - -/* --- _PyArgv ---------------------------------------------------- */ - -typedef struct _PyArgv { - Py_ssize_t argc; - int use_bytes_argv; - char * const *bytes_argv; - wchar_t * const *wchar_argv; -} _PyArgv; - -PyAPI_FUNC(PyStatus) _PyArgv_AsWstrList(const _PyArgv *args, - PyWideStringList *list); - - -/* --- Helper functions ------------------------------------------- */ - -PyAPI_FUNC(int) _Py_str_to_int( - const char *str, - int *result); -PyAPI_FUNC(const wchar_t*) _Py_get_xoption( - const PyWideStringList *xoptions, - const wchar_t *name); -PyAPI_FUNC(const char*) _Py_GetEnv( - int use_environment, - const char *name); -PyAPI_FUNC(void) _Py_get_env_flag( - int use_environment, - int *flag, - const char *name); - -/* Py_GetArgcArgv() helper */ -PyAPI_FUNC(void) _Py_ClearArgcArgv(void); - - -/* --- _PyPreCmdline ------------------------------------------------- */ - -typedef struct { - PyWideStringList argv; - PyWideStringList xoptions; /* "-X value" option */ - int isolated; /* -I option */ - int use_environment; /* -E option */ - int dev_mode; /* -X dev and PYTHONDEVMODE */ - int warn_default_encoding; /* -X warn_default_encoding and PYTHONWARNDEFAULTENCODING */ -} _PyPreCmdline; - -#define _PyPreCmdline_INIT \ - (_PyPreCmdline){ \ - .use_environment = -1, \ - .isolated = -1, \ - .dev_mode = -1} -/* Note: _PyPreCmdline_INIT sets other fields to 0/NULL */ - -extern void _PyPreCmdline_Clear(_PyPreCmdline *cmdline); -extern PyStatus _PyPreCmdline_SetArgv(_PyPreCmdline *cmdline, - const _PyArgv *args); -extern PyStatus _PyPreCmdline_SetConfig( - const _PyPreCmdline *cmdline, - PyConfig *config); -extern PyStatus _PyPreCmdline_Read(_PyPreCmdline *cmdline, - const PyPreConfig *preconfig); - - -/* --- PyPreConfig ----------------------------------------------- */ - -PyAPI_FUNC(void) _PyPreConfig_InitCompatConfig(PyPreConfig *preconfig); -extern void _PyPreConfig_InitFromConfig( - PyPreConfig *preconfig, - const PyConfig *config); -extern PyStatus _PyPreConfig_InitFromPreConfig( - PyPreConfig *preconfig, - const PyPreConfig *config2); -extern PyObject* _PyPreConfig_AsDict(const PyPreConfig *preconfig); -extern void _PyPreConfig_GetConfig(PyPreConfig *preconfig, - const PyConfig *config); -extern PyStatus _PyPreConfig_Read(PyPreConfig *preconfig, - const _PyArgv *args); -extern PyStatus _PyPreConfig_Write(const PyPreConfig *preconfig); - - -/* --- PyConfig ---------------------------------------------- */ - -typedef enum { - /* Py_Initialize() API: backward compatibility with Python 3.6 and 3.7 */ - _PyConfig_INIT_COMPAT = 1, - _PyConfig_INIT_PYTHON = 2, - _PyConfig_INIT_ISOLATED = 3 -} _PyConfigInitEnum; - -PyAPI_FUNC(void) _PyConfig_InitCompatConfig(PyConfig *config); -extern PyStatus _PyConfig_Copy( - PyConfig *config, - const PyConfig *config2); -extern PyStatus _PyConfig_InitPathConfig( - PyConfig *config, - int compute_path_config); -extern PyStatus _PyConfig_Read(PyConfig *config, int compute_path_config); -extern PyStatus _PyConfig_Write(const PyConfig *config, - struct pyruntimestate *runtime); -extern PyStatus _PyConfig_SetPyArgv( - PyConfig *config, - const _PyArgv *args); - -PyAPI_FUNC(PyObject*) _PyConfig_AsDict(const PyConfig *config); -PyAPI_FUNC(int) _PyConfig_FromDict(PyConfig *config, PyObject *dict); - -extern int _Py_global_config_int_max_str_digits; - - -/* --- Function used for testing ---------------------------------- */ - -PyAPI_FUNC(PyObject*) _Py_GetConfigsAsDict(void); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CORECONFIG_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_interp.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_interp.h deleted file mode 100644 index a564b12..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_interp.h +++ /dev/null @@ -1,339 +0,0 @@ -#ifndef Py_INTERNAL_INTERP_H -#define Py_INTERNAL_INTERP_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_atomic.h" // _Py_atomic_address -#include "pycore_ast_state.h" // struct ast_state -#include "pycore_gil.h" // struct _gil_runtime_state -#include "pycore_gc.h" // struct _gc_runtime_state -#include "pycore_warnings.h" // struct _warnings_runtime_state - -struct _pending_calls { - PyThread_type_lock lock; - /* Request for running pending calls. */ - _Py_atomic_int calls_to_do; - /* Request for looking at the `async_exc` field of the current - thread state. - Guarded by the GIL. */ - int async_exc; -#define NPENDINGCALLS 32 - struct { - int (*func)(void *); - void *arg; - } calls[NPENDINGCALLS]; - int first; - int last; -}; - -struct _ceval_state { - int recursion_limit; - /* This single variable consolidates all requests to break out of - the fast path in the eval loop. */ - _Py_atomic_int eval_breaker; - /* Request for dropping the GIL */ - _Py_atomic_int gil_drop_request; - struct _pending_calls pending; -#ifdef EXPERIMENTAL_ISOLATED_SUBINTERPRETERS - struct _gil_runtime_state gil; -#endif -}; - -/* fs_codec.encoding is initialized to NULL. - Later, it is set to a non-NULL string by _PyUnicode_InitEncodings(). */ -struct _Py_unicode_fs_codec { - char *encoding; // Filesystem encoding (encoded to UTF-8) - int utf8; // encoding=="utf-8"? - char *errors; // Filesystem errors (encoded to UTF-8) - _Py_error_handler error_handler; -}; - -struct _Py_bytes_state { - PyObject *empty_string; - PyBytesObject *characters[256]; -}; - -struct _Py_unicode_ids { - Py_ssize_t size; - PyObject **array; -}; - -struct _Py_unicode_state { - // The empty Unicode object is a singleton to improve performance. - PyObject *empty_string; - /* Single character Unicode strings in the Latin-1 range are being - shared as well. */ - PyObject *latin1[256]; - struct _Py_unicode_fs_codec fs_codec; - - // Unused member kept for ABI backward compatibility with Python 3.10.0: - // see bpo-46006. - PyObject *unused_interned; - - // Unicode identifiers (_Py_Identifier): see _PyUnicode_FromId() - struct _Py_unicode_ids ids; -}; - -struct _Py_float_state { - /* Special free list - free_list is a singly-linked list of available PyFloatObjects, - linked via abuse of their ob_type members. */ - int numfree; - PyFloatObject *free_list; -}; - -/* Speed optimization to avoid frequent malloc/free of small tuples */ -#ifndef PyTuple_MAXSAVESIZE - // Largest tuple to save on free list -# define PyTuple_MAXSAVESIZE 20 -#endif -#ifndef PyTuple_MAXFREELIST - // Maximum number of tuples of each size to save -# define PyTuple_MAXFREELIST 2000 -#endif - -struct _Py_tuple_state { -#if PyTuple_MAXSAVESIZE > 0 - /* Entries 1 up to PyTuple_MAXSAVESIZE are free lists, - entry 0 is the empty tuple () of which at most one instance - will be allocated. */ - PyTupleObject *free_list[PyTuple_MAXSAVESIZE]; - int numfree[PyTuple_MAXSAVESIZE]; -#endif -}; - -/* Empty list reuse scheme to save calls to malloc and free */ -#ifndef PyList_MAXFREELIST -# define PyList_MAXFREELIST 80 -#endif - -struct _Py_list_state { - PyListObject *free_list[PyList_MAXFREELIST]; - int numfree; -}; - -#ifndef PyDict_MAXFREELIST -# define PyDict_MAXFREELIST 80 -#endif - -struct _Py_dict_state { - /* Dictionary reuse scheme to save calls to malloc and free */ - PyDictObject *free_list[PyDict_MAXFREELIST]; - int numfree; - PyDictKeysObject *keys_free_list[PyDict_MAXFREELIST]; - int keys_numfree; -}; - -struct _Py_frame_state { - PyFrameObject *free_list; - /* number of frames currently in free_list */ - int numfree; -}; - -#ifndef _PyAsyncGen_MAXFREELIST -# define _PyAsyncGen_MAXFREELIST 80 -#endif - -struct _Py_async_gen_state { - /* Freelists boost performance 6-10%; they also reduce memory - fragmentation, as _PyAsyncGenWrappedValue and PyAsyncGenASend - are short-living objects that are instantiated for every - __anext__() call. */ - struct _PyAsyncGenWrappedValue* value_freelist[_PyAsyncGen_MAXFREELIST]; - int value_numfree; - - struct PyAsyncGenASend* asend_freelist[_PyAsyncGen_MAXFREELIST]; - int asend_numfree; -}; - -struct _Py_context_state { - // List of free PyContext objects - PyContext *freelist; - int numfree; -}; - -struct _Py_exc_state { - // The dict mapping from errno codes to OSError subclasses - PyObject *errnomap; - PyBaseExceptionObject *memerrors_freelist; - int memerrors_numfree; -}; - - -// atexit state -typedef struct { - PyObject *func; - PyObject *args; - PyObject *kwargs; -} atexit_callback; - -struct atexit_state { - atexit_callback **callbacks; - int ncallbacks; - int callback_len; -}; - - -// Type attribute lookup cache: speed up attribute and method lookups, -// see _PyType_Lookup(). -struct type_cache_entry { - unsigned int version; // initialized from type->tp_version_tag - PyObject *name; // reference to exactly a str or None - PyObject *value; // borrowed reference or NULL -}; - -#define MCACHE_SIZE_EXP 12 -#define MCACHE_STATS 0 - -struct type_cache { - struct type_cache_entry hashtable[1 << MCACHE_SIZE_EXP]; -#if MCACHE_STATS - size_t hits; - size_t misses; - size_t collisions; -#endif -}; - - -/* interpreter state */ - -#define _PY_NSMALLPOSINTS 257 -#define _PY_NSMALLNEGINTS 5 - -// _PyLong_GetZero() and _PyLong_GetOne() must always be available -#if _PY_NSMALLPOSINTS < 2 -# error "_PY_NSMALLPOSINTS must be greater than 1" -#endif - -// The PyInterpreterState typedef is in Include/pystate.h. -struct _is { - - struct _is *next; - struct _ts *tstate_head; - - /* Reference to the _PyRuntime global variable. This field exists - to not have to pass runtime in addition to tstate to a function. - Get runtime from tstate: tstate->interp->runtime. */ - struct pyruntimestate *runtime; - - int64_t id; - int64_t id_refcount; - int requires_idref; - PyThread_type_lock id_mutex; - - int finalizing; - - struct _ceval_state ceval; - struct _gc_runtime_state gc; - - // sys.modules dictionary - PyObject *modules; - PyObject *modules_by_index; - // Dictionary of the sys module - PyObject *sysdict; - // Dictionary of the builtins module - PyObject *builtins; - // importlib module - PyObject *importlib; - - /* Used in Modules/_threadmodule.c. */ - long num_threads; - /* Support for runtime thread stack size tuning. - A value of 0 means using the platform's default stack size - or the size specified by the THREAD_STACK_SIZE macro. */ - /* Used in Python/thread.c. */ - size_t pythread_stacksize; - - PyObject *codec_search_path; - PyObject *codec_search_cache; - PyObject *codec_error_registry; - int codecs_initialized; - - PyConfig config; -#ifdef HAVE_DLOPEN - int dlopenflags; -#endif - - PyObject *dict; /* Stores per-interpreter state */ - - PyObject *builtins_copy; - PyObject *import_func; - // Initialized to _PyEval_EvalFrameDefault(). - _PyFrameEvalFunction eval_frame; - - Py_ssize_t co_extra_user_count; - freefunc co_extra_freefuncs[MAX_CO_EXTRA_USERS]; - -#ifdef HAVE_FORK - PyObject *before_forkers; - PyObject *after_forkers_parent; - PyObject *after_forkers_child; -#endif - - uint64_t tstate_next_unique_id; - - struct _warnings_runtime_state warnings; - struct atexit_state atexit; - - PyObject *audit_hooks; - - /* Small integers are preallocated in this array so that they - can be shared. - The integers that are preallocated are those in the range - -_PY_NSMALLNEGINTS (inclusive) to _PY_NSMALLPOSINTS (not inclusive). - */ - PyLongObject* small_ints[_PY_NSMALLNEGINTS + _PY_NSMALLPOSINTS]; - struct _Py_bytes_state bytes; - struct _Py_unicode_state unicode; - struct _Py_float_state float_state; - /* Using a cache is very effective since typically only a single slice is - created and then deleted again. */ - PySliceObject *slice_cache; - - struct _Py_tuple_state tuple; - struct _Py_list_state list; - struct _Py_dict_state dict_state; - struct _Py_frame_state frame; - struct _Py_async_gen_state async_gen; - struct _Py_context_state context; - struct _Py_exc_state exc_state; - - struct ast_state ast; - struct type_cache type_cache; - - int int_max_str_digits; -}; - -extern void _PyInterpreterState_ClearModules(PyInterpreterState *interp); -extern void _PyInterpreterState_Clear(PyThreadState *tstate); - - -/* cross-interpreter data registry */ - -/* For now we use a global registry of shareable classes. An - alternative would be to add a tp_* slot for a class's - crossinterpdatafunc. It would be simpler and more efficient. */ - -struct _xidregitem; - -struct _xidregitem { - PyTypeObject *cls; - crossinterpdatafunc getdata; - struct _xidregitem *next; -}; - -PyAPI_FUNC(struct _is*) _PyInterpreterState_LookUpID(int64_t); - -PyAPI_FUNC(int) _PyInterpreterState_IDInitref(struct _is *); -PyAPI_FUNC(int) _PyInterpreterState_IDIncref(struct _is *); -PyAPI_FUNC(void) _PyInterpreterState_IDDecref(struct _is *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_INTERP_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_list.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_list.h deleted file mode 100644 index f18fb05..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_list.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef Py_INTERNAL_LIST_H -#define Py_INTERNAL_LIST_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "listobject.h" // _PyList_CAST() - - -#define _PyList_ITEMS(op) (_PyList_CAST(op)->ob_item) - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_LIST_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_long.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_long.h deleted file mode 100644 index 90069f8..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_long.h +++ /dev/null @@ -1,75 +0,0 @@ -#ifndef Py_INTERNAL_LONG_H -#define Py_INTERNAL_LONG_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_interp.h" // PyInterpreterState.small_ints -#include "pycore_pystate.h" // _PyThreadState_GET() - -/* - * Default int base conversion size limitation: Denial of Service prevention. - * - * Chosen such that this isn't wildly slow on modern hardware and so that - * everyone's existing deployed numpy test suite passes before - * https://github.com/numpy/numpy/issues/22098 is widely available. - * - * $ python -m timeit -s 's = "1"*4300' 'int(s)' - * 2000 loops, best of 5: 125 usec per loop - * $ python -m timeit -s 's = "1"*4300; v = int(s)' 'str(v)' - * 1000 loops, best of 5: 311 usec per loop - * (zen2 cloud VM) - * - * 4300 decimal digits fits a ~14284 bit number. - */ -#define _PY_LONG_DEFAULT_MAX_STR_DIGITS 4300 -/* - * Threshold for max digits check. For performance reasons int() and - * int.__str__() don't checks values that are smaller than this - * threshold. Acts as a guaranteed minimum size limit for bignums that - * applications can expect from CPython. - * - * % python -m timeit -s 's = "1"*640; v = int(s)' 'str(int(s))' - * 20000 loops, best of 5: 12 usec per loop - * - * "640 digits should be enough for anyone." - gps - * fits a ~2126 bit decimal number. - */ -#define _PY_LONG_MAX_STR_DIGITS_THRESHOLD 640 - -#if ((_PY_LONG_DEFAULT_MAX_STR_DIGITS != 0) && \ - (_PY_LONG_DEFAULT_MAX_STR_DIGITS < _PY_LONG_MAX_STR_DIGITS_THRESHOLD)) -# error "_PY_LONG_DEFAULT_MAX_STR_DIGITS smaller than threshold." -#endif - -// Don't call this function but _PyLong_GetZero() and _PyLong_GetOne() -static inline PyObject* __PyLong_GetSmallInt_internal(int value) -{ - PyInterpreterState *interp = _PyInterpreterState_GET(); - assert(-_PY_NSMALLNEGINTS <= value && value < _PY_NSMALLPOSINTS); - size_t index = _PY_NSMALLNEGINTS + value; - PyObject *obj = (PyObject*)interp->small_ints[index]; - // _PyLong_GetZero(), _PyLong_GetOne() and get_small_int() must not be - // called before _PyLong_Init() nor after _PyLong_Fini(). - assert(obj != NULL); - return obj; -} - -// Return a borrowed reference to the zero singleton. -// The function cannot return NULL. -static inline PyObject* _PyLong_GetZero(void) -{ return __PyLong_GetSmallInt_internal(0); } - -// Return a borrowed reference to the one singleton. -// The function cannot return NULL. -static inline PyObject* _PyLong_GetOne(void) -{ return __PyLong_GetSmallInt_internal(1); } - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_LONG_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_moduleobject.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_moduleobject.h deleted file mode 100644 index e9978ab..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_moduleobject.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef Py_INTERNAL_MODULEOBJECT_H -#define Py_INTERNAL_MODULEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -typedef struct { - PyObject_HEAD - PyObject *md_dict; - struct PyModuleDef *md_def; - void *md_state; - PyObject *md_weaklist; - // for logging purposes after md_dict is cleared - PyObject *md_name; -} PyModuleObject; - -static inline PyModuleDef* _PyModule_GetDef(PyObject *mod) { - assert(PyModule_Check(mod)); - return ((PyModuleObject *)mod)->md_def; -} - -static inline void* _PyModule_GetState(PyObject* mod) { - assert(PyModule_Check(mod)); - return ((PyModuleObject *)mod)->md_state; -} - -static inline PyObject* _PyModule_GetDict(PyObject *mod) { - assert(PyModule_Check(mod)); - PyObject *dict = ((PyModuleObject *)mod) -> md_dict; - // _PyModule_GetDict(mod) must not be used after calling module_clear(mod) - assert(dict != NULL); - return dict; -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_MODULEOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_object.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_object.h deleted file mode 100644 index 90d9813..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_object.h +++ /dev/null @@ -1,186 +0,0 @@ -#ifndef Py_INTERNAL_OBJECT_H -#define Py_INTERNAL_OBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_gc.h" // _PyObject_GC_IS_TRACKED() -#include "pycore_interp.h" // PyInterpreterState.gc -#include "pycore_pystate.h" // _PyInterpreterState_GET() - -PyAPI_FUNC(int) _PyType_CheckConsistency(PyTypeObject *type); -PyAPI_FUNC(int) _PyDict_CheckConsistency(PyObject *mp, int check_content); - -/* Update the Python traceback of an object. This function must be called - when a memory block is reused from a free list. - - Internal function called by _Py_NewReference(). */ -extern int _PyTraceMalloc_NewReference(PyObject *op); - -// Fast inlined version of PyType_HasFeature() -static inline int -_PyType_HasFeature(PyTypeObject *type, unsigned long feature) { - return ((type->tp_flags & feature) != 0); -} - -extern void _PyType_InitCache(PyInterpreterState *interp); - -/* Only private in Python 3.10 and 3.9.8+; public in 3.11 */ -extern PyObject *_PyType_GetQualName(PyTypeObject *type); - -/* Inline functions trading binary compatibility for speed: - _PyObject_Init() is the fast version of PyObject_Init(), and - _PyObject_InitVar() is the fast version of PyObject_InitVar(). - - These inline functions must not be called with op=NULL. */ -static inline void -_PyObject_Init(PyObject *op, PyTypeObject *typeobj) -{ - assert(op != NULL); - Py_SET_TYPE(op, typeobj); - if (_PyType_HasFeature(typeobj, Py_TPFLAGS_HEAPTYPE)) { - Py_INCREF(typeobj); - } - _Py_NewReference(op); -} - -static inline void -_PyObject_InitVar(PyVarObject *op, PyTypeObject *typeobj, Py_ssize_t size) -{ - assert(op != NULL); - Py_SET_SIZE(op, size); - _PyObject_Init((PyObject *)op, typeobj); -} - - -/* Tell the GC to track this object. - * - * The object must not be tracked by the GC. - * - * NB: While the object is tracked by the collector, it must be safe to call the - * ob_traverse method. - * - * Internal note: interp->gc.generation0->_gc_prev doesn't have any bit flags - * because it's not object header. So we don't use _PyGCHead_PREV() and - * _PyGCHead_SET_PREV() for it to avoid unnecessary bitwise operations. - * - * See also the public PyObject_GC_Track() function. - */ -static inline void _PyObject_GC_TRACK( -// The preprocessor removes _PyObject_ASSERT_FROM() calls if NDEBUG is defined -#ifndef NDEBUG - const char *filename, int lineno, -#endif - PyObject *op) -{ - _PyObject_ASSERT_FROM(op, !_PyObject_GC_IS_TRACKED(op), - "object already tracked by the garbage collector", - filename, lineno, __func__); - - PyGC_Head *gc = _Py_AS_GC(op); - _PyObject_ASSERT_FROM(op, - (gc->_gc_prev & _PyGC_PREV_MASK_COLLECTING) == 0, - "object is in generation which is garbage collected", - filename, lineno, __func__); - - PyInterpreterState *interp = _PyInterpreterState_GET(); - PyGC_Head *generation0 = interp->gc.generation0; - PyGC_Head *last = (PyGC_Head*)(generation0->_gc_prev); - _PyGCHead_SET_NEXT(last, gc); - _PyGCHead_SET_PREV(gc, last); - _PyGCHead_SET_NEXT(gc, generation0); - generation0->_gc_prev = (uintptr_t)gc; -} - -/* Tell the GC to stop tracking this object. - * - * Internal note: This may be called while GC. So _PyGC_PREV_MASK_COLLECTING - * must be cleared. But _PyGC_PREV_MASK_FINALIZED bit is kept. - * - * The object must be tracked by the GC. - * - * See also the public PyObject_GC_UnTrack() which accept an object which is - * not tracked. - */ -static inline void _PyObject_GC_UNTRACK( -// The preprocessor removes _PyObject_ASSERT_FROM() calls if NDEBUG is defined -#ifndef NDEBUG - const char *filename, int lineno, -#endif - PyObject *op) -{ - _PyObject_ASSERT_FROM(op, _PyObject_GC_IS_TRACKED(op), - "object not tracked by the garbage collector", - filename, lineno, __func__); - - PyGC_Head *gc = _Py_AS_GC(op); - PyGC_Head *prev = _PyGCHead_PREV(gc); - PyGC_Head *next = _PyGCHead_NEXT(gc); - _PyGCHead_SET_NEXT(prev, next); - _PyGCHead_SET_PREV(next, prev); - gc->_gc_next = 0; - gc->_gc_prev &= _PyGC_PREV_MASK_FINALIZED; -} - -// Macros to accept any type for the parameter, and to automatically pass -// the filename and the filename (if NDEBUG is not defined) where the macro -// is called. -#ifdef NDEBUG -# define _PyObject_GC_TRACK(op) \ - _PyObject_GC_TRACK(_PyObject_CAST(op)) -# define _PyObject_GC_UNTRACK(op) \ - _PyObject_GC_UNTRACK(_PyObject_CAST(op)) -#else -# define _PyObject_GC_TRACK(op) \ - _PyObject_GC_TRACK(__FILE__, __LINE__, _PyObject_CAST(op)) -# define _PyObject_GC_UNTRACK(op) \ - _PyObject_GC_UNTRACK(__FILE__, __LINE__, _PyObject_CAST(op)) -#endif - -#ifdef Py_REF_DEBUG -extern void _PyDebug_PrintTotalRefs(void); -#endif - -#ifdef Py_TRACE_REFS -extern void _Py_AddToAllObjects(PyObject *op, int force); -extern void _Py_PrintReferences(FILE *); -extern void _Py_PrintReferenceAddresses(FILE *); -#endif - -static inline PyObject ** -_PyObject_GET_WEAKREFS_LISTPTR(PyObject *op) -{ - Py_ssize_t offset = Py_TYPE(op)->tp_weaklistoffset; - return (PyObject **)((char *)op + offset); -} - -// Fast inlined version of PyObject_IS_GC() -static inline int -_PyObject_IS_GC(PyObject *obj) -{ - return (PyType_IS_GC(Py_TYPE(obj)) - && (Py_TYPE(obj)->tp_is_gc == NULL - || Py_TYPE(obj)->tp_is_gc(obj))); -} - -// Fast inlined version of PyType_IS_GC() -#define _PyType_IS_GC(t) _PyType_HasFeature((t), Py_TPFLAGS_HAVE_GC) - -// Usage: assert(_Py_CheckSlotResult(obj, "__getitem__", result != NULL)); -extern int _Py_CheckSlotResult( - PyObject *obj, - const char *slot_name, - int success); - -// PyType_Ready() must be called if _PyType_IsReady() is false. -// See also the Py_TPFLAGS_READY flag. -#define _PyType_IsReady(type) ((type)->tp_dict != NULL) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_OBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_parser.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_parser.h deleted file mode 100644 index e2de24e..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_parser.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef Py_INTERNAL_PARSER_H -#define Py_INTERNAL_PARSER_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern struct _mod* _PyParser_ASTFromString( - const char *str, - PyObject* filename, - int mode, - PyCompilerFlags *flags, - PyArena *arena); -extern struct _mod* _PyParser_ASTFromFile( - FILE *fp, - PyObject *filename_ob, - const char *enc, - int mode, - const char *ps1, - const char *ps2, - PyCompilerFlags *flags, - int *errcode, - PyArena *arena); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PARSER_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pathconfig.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_pathconfig.h deleted file mode 100644 index 15447f5..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pathconfig.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef Py_INTERNAL_PATHCONFIG_H -#define Py_INTERNAL_PATHCONFIG_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -typedef struct _PyPathConfig { - /* Full path to the Python program */ - wchar_t *program_full_path; - wchar_t *prefix; - wchar_t *exec_prefix; - /* Set by Py_SetPath(), or computed by _PyConfig_InitPathConfig() */ - wchar_t *module_search_path; - /* Python program name */ - wchar_t *program_name; - /* Set by Py_SetPythonHome() or PYTHONHOME environment variable */ - wchar_t *home; -#ifdef MS_WINDOWS - /* isolated and site_import are used to set Py_IsolatedFlag and - Py_NoSiteFlag flags on Windows in read_pth_file(). These fields - are ignored when their value are equal to -1 (unset). */ - int isolated; - int site_import; - /* Set when a venv is detected */ - wchar_t *base_executable; -#endif -} _PyPathConfig; - -#ifdef MS_WINDOWS -# define _PyPathConfig_INIT \ - {.module_search_path = NULL, \ - .isolated = -1, \ - .site_import = -1} -#else -# define _PyPathConfig_INIT \ - {.module_search_path = NULL} -#endif -/* Note: _PyPathConfig_INIT sets other fields to 0/NULL */ - -PyAPI_DATA(_PyPathConfig) _Py_path_config; -#ifdef MS_WINDOWS -PyAPI_DATA(wchar_t*) _Py_dll_path; -#endif - -extern void _PyPathConfig_ClearGlobal(void); - -extern PyStatus _PyPathConfig_Calculate( - _PyPathConfig *pathconfig, - const PyConfig *config); -extern int _PyPathConfig_ComputeSysPath0( - const PyWideStringList *argv, - PyObject **path0); -extern PyStatus _Py_FindEnvConfigValue( - FILE *env_file, - const wchar_t *key, - wchar_t **value_p); - -#ifdef MS_WINDOWS -extern wchar_t* _Py_GetDLLPath(void); -#endif - -extern PyStatus _PyConfig_WritePathConfig(const PyConfig *config); -extern void _Py_DumpPathConfig(PyThreadState *tstate); -extern PyObject* _PyPathConfig_AsDict(void); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PATHCONFIG_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pyarena.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_pyarena.h deleted file mode 100644 index d78972a..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pyarena.h +++ /dev/null @@ -1,64 +0,0 @@ -/* An arena-like memory interface for the compiler. - */ - -#ifndef Py_INTERNAL_PYARENA_H -#define Py_INTERNAL_PYARENA_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -typedef struct _arena PyArena; - -/* _PyArena_New() and _PyArena_Free() create a new arena and free it, - respectively. Once an arena has been created, it can be used - to allocate memory via _PyArena_Malloc(). Pointers to PyObject can - also be registered with the arena via _PyArena_AddPyObject(), and the - arena will ensure that the PyObjects stay alive at least until - _PyArena_Free() is called. When an arena is freed, all the memory it - allocated is freed, the arena releases internal references to registered - PyObject*, and none of its pointers are valid. - XXX (tim) What does "none of its pointers are valid" mean? Does it - XXX mean that pointers previously obtained via _PyArena_Malloc() are - XXX no longer valid? (That's clearly true, but not sure that's what - XXX the text is trying to say.) - - _PyArena_New() returns an arena pointer. On error, it - returns a negative number and sets an exception. - XXX (tim): Not true. On error, _PyArena_New() actually returns NULL, - XXX and looks like it may or may not set an exception (e.g., if the - XXX internal PyList_New(0) returns NULL, _PyArena_New() passes that on - XXX and an exception is set; OTOH, if the internal - XXX block_new(DEFAULT_BLOCK_SIZE) returns NULL, that's passed on but - XXX an exception is not set in that case). -*/ -PyAPI_FUNC(PyArena*) _PyArena_New(void); -PyAPI_FUNC(void) _PyArena_Free(PyArena *); - -/* Mostly like malloc(), return the address of a block of memory spanning - * `size` bytes, or return NULL (without setting an exception) if enough - * new memory can't be obtained. Unlike malloc(0), _PyArena_Malloc() with - * size=0 does not guarantee to return a unique pointer (the pointer - * returned may equal one or more other pointers obtained from - * _PyArena_Malloc()). - * Note that pointers obtained via _PyArena_Malloc() must never be passed to - * the system free() or realloc(), or to any of Python's similar memory- - * management functions. _PyArena_Malloc()-obtained pointers remain valid - * until _PyArena_Free(ar) is called, at which point all pointers obtained - * from the arena `ar` become invalid simultaneously. - */ -PyAPI_FUNC(void*) _PyArena_Malloc(PyArena *, size_t size); - -/* This routine isn't a proper arena allocation routine. It takes - * a PyObject* and records it so that it can be DECREFed when the - * arena is freed. - */ -PyAPI_FUNC(int) _PyArena_AddPyObject(PyArena *, PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYARENA_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pyerrors.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_pyerrors.h deleted file mode 100644 index a5e97fe..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pyerrors.h +++ /dev/null @@ -1,96 +0,0 @@ -#ifndef Py_INTERNAL_PYERRORS_H -#define Py_INTERNAL_PYERRORS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -static inline PyObject* _PyErr_Occurred(PyThreadState *tstate) -{ - assert(tstate != NULL); - return tstate->curexc_type; -} - -static inline void _PyErr_ClearExcState(_PyErr_StackItem *exc_state) -{ - PyObject *t, *v, *tb; - t = exc_state->exc_type; - v = exc_state->exc_value; - tb = exc_state->exc_traceback; - exc_state->exc_type = NULL; - exc_state->exc_value = NULL; - exc_state->exc_traceback = NULL; - Py_XDECREF(t); - Py_XDECREF(v); - Py_XDECREF(tb); -} - - -PyAPI_FUNC(void) _PyErr_Fetch( - PyThreadState *tstate, - PyObject **type, - PyObject **value, - PyObject **traceback); - -PyAPI_FUNC(int) _PyErr_ExceptionMatches( - PyThreadState *tstate, - PyObject *exc); - -PyAPI_FUNC(void) _PyErr_Restore( - PyThreadState *tstate, - PyObject *type, - PyObject *value, - PyObject *traceback); - -PyAPI_FUNC(void) _PyErr_SetObject( - PyThreadState *tstate, - PyObject *type, - PyObject *value); - -PyAPI_FUNC(void) _PyErr_ChainStackItem( - _PyErr_StackItem *exc_info); - -PyAPI_FUNC(void) _PyErr_Clear(PyThreadState *tstate); - -PyAPI_FUNC(void) _PyErr_SetNone(PyThreadState *tstate, PyObject *exception); - -PyAPI_FUNC(PyObject *) _PyErr_NoMemory(PyThreadState *tstate); - -PyAPI_FUNC(void) _PyErr_SetString( - PyThreadState *tstate, - PyObject *exception, - const char *string); - -PyAPI_FUNC(PyObject *) _PyErr_Format( - PyThreadState *tstate, - PyObject *exception, - const char *format, - ...); - -PyAPI_FUNC(void) _PyErr_NormalizeException( - PyThreadState *tstate, - PyObject **exc, - PyObject **val, - PyObject **tb); - -PyAPI_FUNC(PyObject *) _PyErr_FormatFromCauseTstate( - PyThreadState *tstate, - PyObject *exception, - const char *format, - ...); - -PyAPI_FUNC(int) _PyErr_CheckSignalsTstate(PyThreadState *tstate); - -PyAPI_FUNC(void) _Py_DumpExtensionModules(int fd, PyInterpreterState *interp); - -extern PyObject* _Py_Offer_Suggestions(PyObject* exception); -PyAPI_FUNC(Py_ssize_t) _Py_UTF8_Edit_Cost(PyObject *str_a, PyObject *str_b, - Py_ssize_t max_cost); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYERRORS_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pyhash.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_pyhash.h deleted file mode 100644 index a229f8d..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pyhash.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef Py_INTERNAL_HASH_H -#define Py_INTERNAL_HASH_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -uint64_t _Py_KeyedHash(uint64_t, const char *, Py_ssize_t); - -#endif diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pylifecycle.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_pylifecycle.h deleted file mode 100644 index 524be9d..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pylifecycle.h +++ /dev/null @@ -1,141 +0,0 @@ -#ifndef Py_INTERNAL_LIFECYCLE_H -#define Py_INTERNAL_LIFECYCLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#ifdef HAVE_SIGNAL_H -#include -#endif - -#include "pycore_runtime.h" // _PyRuntimeState - -#ifndef NSIG -# if defined(_NSIG) -# define NSIG _NSIG /* For BSD/SysV */ -# elif defined(_SIGMAX) -# define NSIG (_SIGMAX + 1) /* For QNX */ -# elif defined(SIGMAX) -# define NSIG (SIGMAX + 1) /* For djgpp */ -# else -# define NSIG 64 /* Use a reasonable default value */ -# endif -#endif - -/* Forward declarations */ -struct _PyArgv; -struct pyruntimestate; - -/* True if the main interpreter thread exited due to an unhandled - * KeyboardInterrupt exception, suggesting the user pressed ^C. */ -PyAPI_DATA(int) _Py_UnhandledKeyboardInterrupt; - -extern int _Py_SetFileSystemEncoding( - const char *encoding, - const char *errors); -extern void _Py_ClearFileSystemEncoding(void); -extern PyStatus _PyUnicode_InitEncodings(PyThreadState *tstate); -#ifdef MS_WINDOWS -extern int _PyUnicode_EnableLegacyWindowsFSEncoding(void); -#endif - -PyAPI_FUNC(void) _Py_ClearStandardStreamEncoding(void); - -PyAPI_FUNC(int) _Py_IsLocaleCoercionTarget(const char *ctype_loc); - -/* Various one-time initializers */ - -extern PyStatus _PyUnicode_Init(PyInterpreterState *interp); -extern PyStatus _PyUnicode_InitTypes(void); -extern PyStatus _PyBytes_Init(PyInterpreterState *interp); -extern int _PyStructSequence_Init(void); -extern int _PyLong_Init(PyInterpreterState *interp); -extern int _PyLong_InitTypes(void); -extern PyStatus _PyTuple_Init(PyInterpreterState *interp); -extern PyStatus _PyFaulthandler_Init(int enable); -extern int _PyTraceMalloc_Init(int enable); -extern PyObject * _PyBuiltin_Init(PyInterpreterState *interp); -extern PyStatus _PySys_Create( - PyThreadState *tstate, - PyObject **sysmod_p); -extern PyStatus _PySys_ReadPreinitWarnOptions(PyWideStringList *options); -extern PyStatus _PySys_ReadPreinitXOptions(PyConfig *config); -extern int _PySys_UpdateConfig(PyThreadState *tstate); -extern PyStatus _PyExc_Init(PyInterpreterState *interp); -extern PyStatus _PyErr_InitTypes(void); -extern PyStatus _PyBuiltins_AddExceptions(PyObject * bltinmod); -extern void _PyFloat_Init(void); -extern int _PyFloat_InitTypes(void); -extern PyStatus _Py_HashRandomization_Init(const PyConfig *); - -extern PyStatus _PyTypes_Init(void); -extern PyStatus _PyTypes_InitSlotDefs(void); -extern PyStatus _PyImportZip_Init(PyThreadState *tstate); -extern PyStatus _PyGC_Init(PyInterpreterState *interp); -extern PyStatus _PyAtExit_Init(PyInterpreterState *interp); - - -/* Various internal finalizers */ - -extern void _PyFrame_Fini(PyInterpreterState *interp); -extern void _PyDict_Fini(PyInterpreterState *interp); -extern void _PyTuple_Fini(PyInterpreterState *interp); -extern void _PyList_Fini(PyInterpreterState *interp); -extern void _PyBytes_Fini(PyInterpreterState *interp); -extern void _PyFloat_Fini(PyInterpreterState *interp); -extern void _PySlice_Fini(PyInterpreterState *interp); -extern void _PyAsyncGen_Fini(PyInterpreterState *interp); - -extern int _PySignal_Init(int install_signal_handlers); -extern void _PySignal_Fini(void); - -extern void _PyExc_Fini(PyInterpreterState *interp); -extern void _PyImport_Fini(void); -extern void _PyImport_Fini2(void); -extern void _PyGC_Fini(PyInterpreterState *interp); -extern void _PyType_Fini(PyInterpreterState *interp); -extern void _Py_HashRandomization_Fini(void); -extern void _PyUnicode_Fini(PyInterpreterState *interp); -extern void _PyUnicode_ClearInterned(PyInterpreterState *interp); -extern void _PyLong_Fini(PyInterpreterState *interp); -extern void _PyFaulthandler_Fini(void); -extern void _PyHash_Fini(void); -extern void _PyTraceMalloc_Fini(void); -extern void _PyWarnings_Fini(PyInterpreterState *interp); -extern void _PyAST_Fini(PyInterpreterState *interp); -extern void _PyAtExit_Fini(PyInterpreterState *interp); - -extern PyStatus _PyGILState_Init(_PyRuntimeState *runtime); -extern PyStatus _PyGILState_SetTstate(PyThreadState *tstate); -extern void _PyGILState_Fini(PyInterpreterState *interp); - -PyAPI_FUNC(void) _PyGC_DumpShutdownStats(PyInterpreterState *interp); - -PyAPI_FUNC(PyStatus) _Py_PreInitializeFromPyArgv( - const PyPreConfig *src_config, - const struct _PyArgv *args); -PyAPI_FUNC(PyStatus) _Py_PreInitializeFromConfig( - const PyConfig *config, - const struct _PyArgv *args); - - -PyAPI_FUNC(int) _Py_HandleSystemExit(int *exitcode_p); - -PyAPI_FUNC(PyObject*) _PyErr_WriteUnraisableDefaultHook(PyObject *unraisable); - -PyAPI_FUNC(void) _PyErr_Print(PyThreadState *tstate); -PyAPI_FUNC(void) _PyErr_Display(PyObject *file, PyObject *exception, - PyObject *value, PyObject *tb); - -PyAPI_FUNC(void) _PyThreadState_DeleteCurrent(PyThreadState *tstate); - -extern void _PyAtExit_Call(PyInterpreterState *interp); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_LIFECYCLE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pymem.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_pymem.h deleted file mode 100644 index 49af171..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pymem.h +++ /dev/null @@ -1,101 +0,0 @@ -#ifndef Py_INTERNAL_PYMEM_H -#define Py_INTERNAL_PYMEM_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pymem.h" // PyMemAllocatorName - - -/* Set the memory allocator of the specified domain to the default. - Save the old allocator into *old_alloc if it's non-NULL. - Return on success, or return -1 if the domain is unknown. */ -PyAPI_FUNC(int) _PyMem_SetDefaultAllocator( - PyMemAllocatorDomain domain, - PyMemAllocatorEx *old_alloc); - -/* Special bytes broadcast into debug memory blocks at appropriate times. - Strings of these are unlikely to be valid addresses, floats, ints or - 7-bit ASCII. - - - PYMEM_CLEANBYTE: clean (newly allocated) memory - - PYMEM_DEADBYTE dead (newly freed) memory - - PYMEM_FORBIDDENBYTE: untouchable bytes at each end of a block - - Byte patterns 0xCB, 0xDB and 0xFB have been replaced with 0xCD, 0xDD and - 0xFD to use the same values than Windows CRT debug malloc() and free(). - If modified, _PyMem_IsPtrFreed() should be updated as well. */ -#define PYMEM_CLEANBYTE 0xCD -#define PYMEM_DEADBYTE 0xDD -#define PYMEM_FORBIDDENBYTE 0xFD - -/* Heuristic checking if a pointer value is newly allocated - (uninitialized), newly freed or NULL (is equal to zero). - - The pointer is not dereferenced, only the pointer value is checked. - - The heuristic relies on the debug hooks on Python memory allocators which - fills newly allocated memory with CLEANBYTE (0xCD) and newly freed memory - with DEADBYTE (0xDD). Detect also "untouchable bytes" marked - with FORBIDDENBYTE (0xFD). */ -static inline int _PyMem_IsPtrFreed(const void *ptr) -{ - uintptr_t value = (uintptr_t)ptr; -#if SIZEOF_VOID_P == 8 - return (value == 0 - || value == (uintptr_t)0xCDCDCDCDCDCDCDCD - || value == (uintptr_t)0xDDDDDDDDDDDDDDDD - || value == (uintptr_t)0xFDFDFDFDFDFDFDFD); -#elif SIZEOF_VOID_P == 4 - return (value == 0 - || value == (uintptr_t)0xCDCDCDCD - || value == (uintptr_t)0xDDDDDDDD - || value == (uintptr_t)0xFDFDFDFD); -#else -# error "unknown pointer size" -#endif -} - -PyAPI_FUNC(int) _PyMem_GetAllocatorName( - const char *name, - PyMemAllocatorName *allocator); - -/* Configure the Python memory allocators. - Pass PYMEM_ALLOCATOR_DEFAULT to use default allocators. - PYMEM_ALLOCATOR_NOT_SET does nothing. */ -PyAPI_FUNC(int) _PyMem_SetupAllocators(PyMemAllocatorName allocator); - -struct _PyTraceMalloc_Config { - /* Module initialized? - Variable protected by the GIL */ - enum { - TRACEMALLOC_NOT_INITIALIZED, - TRACEMALLOC_INITIALIZED, - TRACEMALLOC_FINALIZED - } initialized; - - /* Is tracemalloc tracing memory allocations? - Variable protected by the GIL */ - int tracing; - - /* limit of the number of frames in a traceback, 1 by default. - Variable protected by the GIL. */ - int max_nframe; -}; - -#define _PyTraceMalloc_Config_INIT \ - {.initialized = TRACEMALLOC_NOT_INITIALIZED, \ - .tracing = 0, \ - .max_nframe = 1} - -PyAPI_DATA(struct _PyTraceMalloc_Config) _Py_tracemalloc_config; - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYMEM_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pystate.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_pystate.h deleted file mode 100644 index 4b894f3..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_pystate.h +++ /dev/null @@ -1,153 +0,0 @@ -#ifndef Py_INTERNAL_PYSTATE_H -#define Py_INTERNAL_PYSTATE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_runtime.h" /* PyRuntimeState */ - - -/* Check if the current thread is the main thread. - Use _Py_IsMainInterpreter() to check if it's the main interpreter. */ -static inline int -_Py_IsMainThread(void) -{ - unsigned long thread = PyThread_get_thread_ident(); - return (thread == _PyRuntime.main_thread); -} - - -static inline int -_Py_IsMainInterpreter(PyInterpreterState *interp) -{ - /* Use directly _PyRuntime rather than tstate->interp->runtime, since - this function is used in performance critical code path (ceval) */ - return (interp == _PyRuntime.interpreters.main); -} - - -/* Only handle signals on the main thread of the main interpreter. */ -static inline int -_Py_ThreadCanHandleSignals(PyInterpreterState *interp) -{ - return (_Py_IsMainThread() && interp == _PyRuntime.interpreters.main); -} - - -/* Only execute pending calls on the main thread. */ -static inline int -_Py_ThreadCanHandlePendingCalls(void) -{ - return _Py_IsMainThread(); -} - - -/* Variable and macro for in-line access to current thread - and interpreter state */ - -#ifdef EXPERIMENTAL_ISOLATED_SUBINTERPRETERS -PyAPI_FUNC(PyThreadState*) _PyThreadState_GetTSS(void); -#endif - -static inline PyThreadState* -_PyRuntimeState_GetThreadState(_PyRuntimeState *runtime) -{ -#ifdef EXPERIMENTAL_ISOLATED_SUBINTERPRETERS - return _PyThreadState_GetTSS(); -#else - return (PyThreadState*)_Py_atomic_load_relaxed(&runtime->gilstate.tstate_current); -#endif -} - -/* Get the current Python thread state. - - Efficient macro reading directly the 'gilstate.tstate_current' atomic - variable. The macro is unsafe: it does not check for error and it can - return NULL. - - The caller must hold the GIL. - - See also PyThreadState_Get() and PyThreadState_GET(). */ -static inline PyThreadState* -_PyThreadState_GET(void) -{ -#ifdef EXPERIMENTAL_ISOLATED_SUBINTERPRETERS - return _PyThreadState_GetTSS(); -#else - return _PyRuntimeState_GetThreadState(&_PyRuntime); -#endif -} - -/* Redefine PyThreadState_GET() as an alias to _PyThreadState_GET() */ -#undef PyThreadState_GET -#define PyThreadState_GET() _PyThreadState_GET() - -PyAPI_FUNC(void) _Py_NO_RETURN _Py_FatalError_TstateNULL(const char *func); - -static inline void -_Py_EnsureFuncTstateNotNULL(const char *func, PyThreadState *tstate) -{ - if (tstate == NULL) { - _Py_FatalError_TstateNULL(func); - } -} - -// Call Py_FatalError() if tstate is NULL -#define _Py_EnsureTstateNotNULL(tstate) \ - _Py_EnsureFuncTstateNotNULL(__func__, tstate) - - -/* Get the current interpreter state. - - The macro is unsafe: it does not check for error and it can return NULL. - - The caller must hold the GIL. - - See also _PyInterpreterState_Get() - and _PyGILState_GetInterpreterStateUnsafe(). */ -static inline PyInterpreterState* _PyInterpreterState_GET(void) { - PyThreadState *tstate = _PyThreadState_GET(); -#ifdef Py_DEBUG - _Py_EnsureTstateNotNULL(tstate); -#endif - return tstate->interp; -} - - -/* Other */ - -PyAPI_FUNC(void) _PyThreadState_Init( - PyThreadState *tstate); -PyAPI_FUNC(void) _PyThreadState_DeleteExcept( - _PyRuntimeState *runtime, - PyThreadState *tstate); - -PyAPI_FUNC(PyThreadState *) _PyThreadState_Swap( - struct _gilstate_runtime_state *gilstate, - PyThreadState *newts); - -PyAPI_FUNC(PyStatus) _PyInterpreterState_Enable(_PyRuntimeState *runtime); - -#ifdef HAVE_FORK -extern PyStatus _PyInterpreterState_DeleteExceptMain(_PyRuntimeState *runtime); -extern PyStatus _PyGILState_Reinit(_PyRuntimeState *runtime); -extern void _PySignal_AfterFork(void); -#endif - - -PyAPI_FUNC(int) _PyState_AddModule( - PyThreadState *tstate, - PyObject* module, - struct PyModuleDef* def); - - -PyAPI_FUNC(int) _PyOS_InterruptOccurred(PyThreadState *tstate); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYSTATE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_runtime.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_runtime.h deleted file mode 100644 index bcd710c..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_runtime.h +++ /dev/null @@ -1,157 +0,0 @@ -#ifndef Py_INTERNAL_RUNTIME_H -#define Py_INTERNAL_RUNTIME_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_atomic.h" /* _Py_atomic_address */ -#include "pycore_gil.h" // struct _gil_runtime_state - -/* ceval state */ - -struct _ceval_runtime_state { - /* Request for checking signals. It is shared by all interpreters (see - bpo-40513). Any thread of any interpreter can receive a signal, but only - the main thread of the main interpreter can handle signals: see - _Py_ThreadCanHandleSignals(). */ - _Py_atomic_int signals_pending; -#ifndef EXPERIMENTAL_ISOLATED_SUBINTERPRETERS - struct _gil_runtime_state gil; -#endif -}; - -/* GIL state */ - -struct _gilstate_runtime_state { - /* bpo-26558: Flag to disable PyGILState_Check(). - If set to non-zero, PyGILState_Check() always return 1. */ - int check_enabled; - /* Assuming the current thread holds the GIL, this is the - PyThreadState for the current thread. */ - _Py_atomic_address tstate_current; - /* The single PyInterpreterState used by this process' - GILState implementation - */ - /* TODO: Given interp_main, it may be possible to kill this ref */ - PyInterpreterState *autoInterpreterState; - Py_tss_t autoTSSkey; -}; - -/* Runtime audit hook state */ - -typedef struct _Py_AuditHookEntry { - struct _Py_AuditHookEntry *next; - Py_AuditHookFunction hookCFunction; - void *userData; -} _Py_AuditHookEntry; - -struct _Py_unicode_runtime_ids { - PyThread_type_lock lock; - // next_index value must be preserved when Py_Initialize()/Py_Finalize() - // is called multiple times: see _PyUnicode_FromId() implementation. - Py_ssize_t next_index; -}; - -/* Full Python runtime state */ - -typedef struct pyruntimestate { - /* Is running Py_PreInitialize()? */ - int preinitializing; - - /* Is Python preinitialized? Set to 1 by Py_PreInitialize() */ - int preinitialized; - - /* Is Python core initialized? Set to 1 by _Py_InitializeCore() */ - int core_initialized; - - /* Is Python fully initialized? Set to 1 by Py_Initialize() */ - int initialized; - - /* Set by Py_FinalizeEx(). Only reset to NULL if Py_Initialize() - is called again. - - Use _PyRuntimeState_GetFinalizing() and _PyRuntimeState_SetFinalizing() - to access it, don't access it directly. */ - _Py_atomic_address _finalizing; - - struct pyinterpreters { - PyThread_type_lock mutex; - PyInterpreterState *head; - PyInterpreterState *main; - /* _next_interp_id is an auto-numbered sequence of small - integers. It gets initialized in _PyInterpreterState_Init(), - which is called in Py_Initialize(), and used in - PyInterpreterState_New(). A negative interpreter ID - indicates an error occurred. The main interpreter will - always have an ID of 0. Overflow results in a RuntimeError. - If that becomes a problem later then we can adjust, e.g. by - using a Python int. */ - int64_t next_id; - } interpreters; - // XXX Remove this field once we have a tp_* slot. - struct _xidregistry { - PyThread_type_lock mutex; - struct _xidregitem *head; - } xidregistry; - - unsigned long main_thread; - -#define NEXITFUNCS 32 - void (*exitfuncs[NEXITFUNCS])(void); - int nexitfuncs; - - struct _ceval_runtime_state ceval; - struct _gilstate_runtime_state gilstate; - - PyPreConfig preconfig; - - // Audit values must be preserved when Py_Initialize()/Py_Finalize() - // is called multiple times. - Py_OpenCodeHookFunction open_code_hook; - void *open_code_userdata; - _Py_AuditHookEntry *audit_hook_head; - - struct _Py_unicode_runtime_ids unicode_ids; - - // XXX Consolidate globals found via the check-c-globals script. -} _PyRuntimeState; - -#define _PyRuntimeState_INIT \ - {.preinitialized = 0, .core_initialized = 0, .initialized = 0} -/* Note: _PyRuntimeState_INIT sets other fields to 0/NULL */ - - -PyAPI_DATA(_PyRuntimeState) _PyRuntime; - -PyAPI_FUNC(PyStatus) _PyRuntimeState_Init(_PyRuntimeState *runtime); -PyAPI_FUNC(void) _PyRuntimeState_Fini(_PyRuntimeState *runtime); - -#ifdef HAVE_FORK -extern PyStatus _PyRuntimeState_ReInitThreads(_PyRuntimeState *runtime); -#endif - -/* Initialize _PyRuntimeState. - Return NULL on success, or return an error message on failure. */ -PyAPI_FUNC(PyStatus) _PyRuntime_Initialize(void); - -PyAPI_FUNC(void) _PyRuntime_Finalize(void); - - -static inline PyThreadState* -_PyRuntimeState_GetFinalizing(_PyRuntimeState *runtime) { - return (PyThreadState*)_Py_atomic_load_relaxed(&runtime->_finalizing); -} - -static inline void -_PyRuntimeState_SetFinalizing(_PyRuntimeState *runtime, PyThreadState *tstate) { - _Py_atomic_store_relaxed(&runtime->_finalizing, (uintptr_t)tstate); -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_RUNTIME_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_structseq.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_structseq.h deleted file mode 100644 index 84c8d47..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_structseq.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef Py_INTERNAL_STRUCTSEQ_H -#define Py_INTERNAL_STRUCTSEQ_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -PyAPI_FUNC(int) _PyStructSequence_InitType( - PyTypeObject *type, - PyStructSequence_Desc *desc, - unsigned long tp_flags); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_STRUCTSEQ_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_symtable.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_symtable.h deleted file mode 100644 index a2e520b..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_symtable.h +++ /dev/null @@ -1,133 +0,0 @@ -#ifndef Py_INTERNAL_SYMTABLE_H -#define Py_INTERNAL_SYMTABLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct _mod; // Type defined in pycore_ast.h - -typedef enum _block_type { FunctionBlock, ClassBlock, ModuleBlock, AnnotationBlock } - _Py_block_ty; - -typedef enum _comprehension_type { - NoComprehension = 0, - ListComprehension = 1, - DictComprehension = 2, - SetComprehension = 3, - GeneratorExpression = 4 } _Py_comprehension_ty; - -struct _symtable_entry; - -struct symtable { - PyObject *st_filename; /* name of file being compiled, - decoded from the filesystem encoding */ - struct _symtable_entry *st_cur; /* current symbol table entry */ - struct _symtable_entry *st_top; /* symbol table entry for module */ - PyObject *st_blocks; /* dict: map AST node addresses - * to symbol table entries */ - PyObject *st_stack; /* list: stack of namespace info */ - PyObject *st_global; /* borrowed ref to st_top->ste_symbols */ - int st_nblocks; /* number of blocks used. kept for - consistency with the corresponding - compiler structure */ - PyObject *st_private; /* name of current class or NULL */ - PyFutureFeatures *st_future; /* module's future features that affect - the symbol table */ - int recursion_depth; /* current recursion depth */ - int recursion_limit; /* recursion limit */ -}; - -typedef struct _symtable_entry { - PyObject_HEAD - PyObject *ste_id; /* int: key in ste_table->st_blocks */ - PyObject *ste_symbols; /* dict: variable names to flags */ - PyObject *ste_name; /* string: name of current block */ - PyObject *ste_varnames; /* list of function parameters */ - PyObject *ste_children; /* list of child blocks */ - PyObject *ste_directives;/* locations of global and nonlocal statements */ - _Py_block_ty ste_type; /* module, class or function */ - int ste_nested; /* true if block is nested */ - unsigned ste_free : 1; /* true if block has free variables */ - unsigned ste_child_free : 1; /* true if a child block has free vars, - including free refs to globals */ - unsigned ste_generator : 1; /* true if namespace is a generator */ - unsigned ste_coroutine : 1; /* true if namespace is a coroutine */ - _Py_comprehension_ty ste_comprehension; /* Kind of comprehension (if any) */ - unsigned ste_varargs : 1; /* true if block has varargs */ - unsigned ste_varkeywords : 1; /* true if block has varkeywords */ - unsigned ste_returns_value : 1; /* true if namespace uses return with - an argument */ - unsigned ste_needs_class_closure : 1; /* for class scopes, true if a - closure over __class__ - should be created */ - unsigned ste_comp_iter_target : 1; /* true if visiting comprehension target */ - int ste_comp_iter_expr; /* non-zero if visiting a comprehension range expression */ - int ste_lineno; /* first line of block */ - int ste_col_offset; /* offset of first line of block */ - int ste_end_lineno; /* end line of block */ - int ste_end_col_offset; /* end offset of first line of block */ - int ste_opt_lineno; /* lineno of last exec or import * */ - int ste_opt_col_offset; /* offset of last exec or import * */ - struct symtable *ste_table; -} PySTEntryObject; - -extern PyTypeObject PySTEntry_Type; - -#define PySTEntry_Check(op) Py_IS_TYPE(op, &PySTEntry_Type) - -extern int _PyST_GetScope(PySTEntryObject *, PyObject *); - -extern struct symtable* _PySymtable_Build( - struct _mod *mod, - PyObject *filename, - PyFutureFeatures *future); -PyAPI_FUNC(PySTEntryObject *) PySymtable_Lookup(struct symtable *, void *); - -extern void _PySymtable_Free(struct symtable *); - -/* Flags for def-use information */ - -#define DEF_GLOBAL 1 /* global stmt */ -#define DEF_LOCAL 2 /* assignment in code block */ -#define DEF_PARAM 2<<1 /* formal parameter */ -#define DEF_NONLOCAL 2<<2 /* nonlocal stmt */ -#define USE 2<<3 /* name is used */ -#define DEF_FREE 2<<4 /* name used but not defined in nested block */ -#define DEF_FREE_CLASS 2<<5 /* free variable from class's method */ -#define DEF_IMPORT 2<<6 /* assignment occurred via import */ -#define DEF_ANNOT 2<<7 /* this name is annotated */ -#define DEF_COMP_ITER 2<<8 /* this name is a comprehension iteration variable */ - -#define DEF_BOUND (DEF_LOCAL | DEF_PARAM | DEF_IMPORT) - -/* GLOBAL_EXPLICIT and GLOBAL_IMPLICIT are used internally by the symbol - table. GLOBAL is returned from PyST_GetScope() for either of them. - It is stored in ste_symbols at bits 12-15. -*/ -#define SCOPE_OFFSET 11 -#define SCOPE_MASK (DEF_GLOBAL | DEF_LOCAL | DEF_PARAM | DEF_NONLOCAL) - -#define LOCAL 1 -#define GLOBAL_EXPLICIT 2 -#define GLOBAL_IMPLICIT 3 -#define FREE 4 -#define CELL 5 - -#define GENERATOR 1 -#define GENERATOR_EXPRESSION 2 - -// Used by symtablemodule.c -extern struct symtable* _Py_SymtableStringObjectFlags( - const char *str, - PyObject *filename, - int start, - PyCompilerFlags *flags); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_SYMTABLE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_sysmodule.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_sysmodule.h deleted file mode 100644 index 738a774..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_sysmodule.h +++ /dev/null @@ -1,24 +0,0 @@ -#ifndef Py_INTERNAL_SYSMODULE_H -#define Py_INTERNAL_SYSMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -PyAPI_FUNC(int) _PySys_Audit( - PyThreadState *tstate, - const char *event, - const char *argFormat, - ...); - -/* We want minimal exposure of this function, so use extern rather than - PyAPI_FUNC() to not export the symbol. */ -extern void _PySys_ClearAuditHooks(PyThreadState *tstate); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_SYSMODULE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_traceback.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_traceback.h deleted file mode 100644 index c01a476..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_traceback.h +++ /dev/null @@ -1,93 +0,0 @@ -#ifndef Py_INTERNAL_TRACEBACK_H -#define Py_INTERNAL_TRACEBACK_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Forward declaration */ -struct _is; - -/* Write the Python traceback into the file 'fd'. For example: - - Traceback (most recent call first): - File "xxx", line xxx in - File "xxx", line xxx in - ... - File "xxx", line xxx in - - This function is written for debug purpose only, to dump the traceback in - the worst case: after a segmentation fault, at fatal error, etc. That's why, - it is very limited. Strings are truncated to 100 characters and encoded to - ASCII with backslashreplace. It doesn't write the source code, only the - function name, filename and line number of each frame. Write only the first - 100 frames: if the traceback is truncated, write the line " ...". - - This function is signal safe. */ - -PyAPI_FUNC(void) _Py_DumpTraceback( - int fd, - PyThreadState *tstate); - -/* Write the traceback of all threads into the file 'fd'. current_thread can be - NULL. - - Return NULL on success, or an error message on error. - - This function is written for debug purpose only. It calls - _Py_DumpTraceback() for each thread, and so has the same limitations. It - only write the traceback of the first 100 threads: write "..." if there are - more threads. - - If current_tstate is NULL, the function tries to get the Python thread state - of the current thread. It is not an error if the function is unable to get - the current Python thread state. - - If interp is NULL, the function tries to get the interpreter state from - the current Python thread state, or from - _PyGILState_GetInterpreterStateUnsafe() in last resort. - - It is better to pass NULL to interp and current_tstate, the function tries - different options to retrieve this information. - - This function is signal safe. */ - -PyAPI_FUNC(const char*) _Py_DumpTracebackThreads( - int fd, - struct _is *interp, - PyThreadState *current_tstate); - -/* Write a Unicode object into the file descriptor fd. Encode the string to - ASCII using the backslashreplace error handler. - - Do nothing if text is not a Unicode object. The function accepts Unicode - string which is not ready (PyUnicode_WCHAR_KIND). - - This function is signal safe. */ -PyAPI_FUNC(void) _Py_DumpASCII(int fd, PyObject *text); - -/* Format an integer as decimal into the file descriptor fd. - - This function is signal safe. */ -PyAPI_FUNC(void) _Py_DumpDecimal( - int fd, - size_t value); - -/* Format an integer as hexadecimal with width digits into fd file descriptor. - The function is signal safe. */ -PyAPI_FUNC(void) _Py_DumpHexadecimal( - int fd, - uintptr_t value, - Py_ssize_t width); - -PyAPI_FUNC(PyObject*) _PyTraceBack_FromFrame( - PyObject *tb_next, - PyFrameObject *frame); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_TRACEBACK_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_tuple.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_tuple.h deleted file mode 100644 index 5353e18..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_tuple.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef Py_INTERNAL_TUPLE_H -#define Py_INTERNAL_TUPLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "tupleobject.h" /* _PyTuple_CAST() */ - -#define _PyTuple_ITEMS(op) (_PyTuple_CAST(op)->ob_item) - -PyAPI_FUNC(PyObject *) _PyTuple_FromArray(PyObject *const *, Py_ssize_t); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_TUPLE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_ucnhash.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_ucnhash.h deleted file mode 100644 index 187dd68..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_ucnhash.h +++ /dev/null @@ -1,34 +0,0 @@ -/* Unicode name database interface */ -#ifndef Py_INTERNAL_UCNHASH_H -#define Py_INTERNAL_UCNHASH_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* revised ucnhash CAPI interface (exported through a "wrapper") */ - -#define PyUnicodeData_CAPSULE_NAME "unicodedata._ucnhash_CAPI" - -typedef struct { - - /* Get name for a given character code. - Returns non-zero if success, zero if not. - Does not set Python exceptions. */ - int (*getname)(Py_UCS4 code, char* buffer, int buflen, - int with_alias_and_seq); - - /* Get character code for a given name. - Same error handling as for getname(). */ - int (*getcode)(const char* name, int namelen, Py_UCS4* code, - int with_named_seq); - -} _PyUnicode_Name_CAPI; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_UCNHASH_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_unionobject.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_unionobject.h deleted file mode 100644 index 9962f57..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_unionobject.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef Py_INTERNAL_UNIONOBJECT_H -#define Py_INTERNAL_UNIONOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern PyTypeObject _PyUnion_Type; -#define _PyUnion_Check(op) Py_IS_TYPE(op, &_PyUnion_Type) -extern PyObject *_Py_union_type_or(PyObject *, PyObject *); - -#define _PyGenericAlias_Check(op) PyObject_TypeCheck(op, &Py_GenericAliasType) -extern PyObject *_Py_subs_parameters(PyObject *, PyObject *, PyObject *, PyObject *); -extern PyObject *_Py_make_parameters(PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_UNIONOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/internal/pycore_warnings.h b/_Pre_Builds/_Python310_cpp/include/internal/pycore_warnings.h deleted file mode 100644 index f728ec3..0000000 --- a/_Pre_Builds/_Python310_cpp/include/internal/pycore_warnings.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef Py_INTERNAL_WARNINGS_H -#define Py_INTERNAL_WARNINGS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct _warnings_runtime_state { - /* Both 'filters' and 'onceregistry' can be set in warnings.py; - get_warnings_attr() will reset these variables accordingly. */ - PyObject *filters; /* List */ - PyObject *once_registry; /* Dict */ - PyObject *default_action; /* String */ - long filters_version; -}; - -extern int _PyWarnings_InitState(PyInterpreterState *interp); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_WARNINGS_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/interpreteridobject.h b/_Pre_Builds/_Python310_cpp/include/interpreteridobject.h deleted file mode 100644 index e744fcd..0000000 --- a/_Pre_Builds/_Python310_cpp/include/interpreteridobject.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef Py_INTERPRETERIDOBJECT_H -#define Py_INTERPRETERIDOBJECT_H - -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_INTERPRETERIDOBJECT_H -# include "cpython/interpreteridobject.h" -# undef Py_CPYTHON_INTERPRETERIDOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERPRETERIDOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/intrcheck.h b/_Pre_Builds/_Python310_cpp/include/intrcheck.h deleted file mode 100644 index b8cc656..0000000 --- a/_Pre_Builds/_Python310_cpp/include/intrcheck.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef Py_INTRCHECK_H -#define Py_INTRCHECK_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(int) PyOS_InterruptOccurred(void); -#ifdef HAVE_FORK -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -PyAPI_FUNC(void) PyOS_BeforeFork(void); -PyAPI_FUNC(void) PyOS_AfterFork_Parent(void); -PyAPI_FUNC(void) PyOS_AfterFork_Child(void); -#endif -#endif -/* Deprecated, please use PyOS_AfterFork_Child() instead */ -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyOS_AfterFork(void); - -#ifndef Py_LIMITED_API -PyAPI_FUNC(int) _PyOS_IsMainThread(void); - -#ifdef MS_WINDOWS -/* windows.h is not included by Python.h so use void* instead of HANDLE */ -PyAPI_FUNC(void*) _PyOS_SigintEvent(void); -#endif -#endif /* !Py_LIMITED_API */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTRCHECK_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/iterobject.h b/_Pre_Builds/_Python310_cpp/include/iterobject.h deleted file mode 100644 index 6454611..0000000 --- a/_Pre_Builds/_Python310_cpp/include/iterobject.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef Py_ITEROBJECT_H -#define Py_ITEROBJECT_H -/* Iterators (the basic kind, over a sequence) */ -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PySeqIter_Type; -PyAPI_DATA(PyTypeObject) PyCallIter_Type; -#ifdef Py_BUILD_CORE -extern PyTypeObject _PyAnextAwaitable_Type; -#endif - -#define PySeqIter_Check(op) Py_IS_TYPE(op, &PySeqIter_Type) - -PyAPI_FUNC(PyObject *) PySeqIter_New(PyObject *); - - -#define PyCallIter_Check(op) Py_IS_TYPE(op, &PyCallIter_Type) - -PyAPI_FUNC(PyObject *) PyCallIter_New(PyObject *, PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ITEROBJECT_H */ - diff --git a/_Pre_Builds/_Python310_cpp/include/listobject.h b/_Pre_Builds/_Python310_cpp/include/listobject.h deleted file mode 100644 index 2a8a255..0000000 --- a/_Pre_Builds/_Python310_cpp/include/listobject.h +++ /dev/null @@ -1,52 +0,0 @@ -/* List object interface - - Another generally useful object type is a list of object pointers. - This is a mutable type: the list items can be changed, and items can be - added or removed. Out-of-range indices or non-list objects are ignored. - - WARNING: PyList_SetItem does not increment the new item's reference count, - but does decrement the reference count of the item it replaces, if not nil. - It does *decrement* the reference count if it is *not* inserted in the list. - Similarly, PyList_GetItem does not increment the returned item's reference - count. -*/ - -#ifndef Py_LISTOBJECT_H -#define Py_LISTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyList_Type; -PyAPI_DATA(PyTypeObject) PyListIter_Type; -PyAPI_DATA(PyTypeObject) PyListRevIter_Type; - -#define PyList_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_LIST_SUBCLASS) -#define PyList_CheckExact(op) Py_IS_TYPE(op, &PyList_Type) - -PyAPI_FUNC(PyObject *) PyList_New(Py_ssize_t size); -PyAPI_FUNC(Py_ssize_t) PyList_Size(PyObject *); - -PyAPI_FUNC(PyObject *) PyList_GetItem(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyList_SetItem(PyObject *, Py_ssize_t, PyObject *); -PyAPI_FUNC(int) PyList_Insert(PyObject *, Py_ssize_t, PyObject *); -PyAPI_FUNC(int) PyList_Append(PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) PyList_GetSlice(PyObject *, Py_ssize_t, Py_ssize_t); -PyAPI_FUNC(int) PyList_SetSlice(PyObject *, Py_ssize_t, Py_ssize_t, PyObject *); - -PyAPI_FUNC(int) PyList_Sort(PyObject *); -PyAPI_FUNC(int) PyList_Reverse(PyObject *); -PyAPI_FUNC(PyObject *) PyList_AsTuple(PyObject *); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_LISTOBJECT_H -# include "cpython/listobject.h" -# undef Py_CPYTHON_LISTOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LISTOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/longintrepr.h b/_Pre_Builds/_Python310_cpp/include/longintrepr.h deleted file mode 100644 index ff4155f..0000000 --- a/_Pre_Builds/_Python310_cpp/include/longintrepr.h +++ /dev/null @@ -1,99 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_LONGINTREPR_H -#define Py_LONGINTREPR_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* This is published for the benefit of "friends" marshal.c and _decimal.c. */ - -/* Parameters of the integer representation. There are two different - sets of parameters: one set for 30-bit digits, stored in an unsigned 32-bit - integer type, and one set for 15-bit digits with each digit stored in an - unsigned short. The value of PYLONG_BITS_IN_DIGIT, defined either at - configure time or in pyport.h, is used to decide which digit size to use. - - Type 'digit' should be able to hold 2*PyLong_BASE-1, and type 'twodigits' - should be an unsigned integer type able to hold all integers up to - PyLong_BASE*PyLong_BASE-1. x_sub assumes that 'digit' is an unsigned type, - and that overflow is handled by taking the result modulo 2**N for some N > - PyLong_SHIFT. The majority of the code doesn't care about the precise - value of PyLong_SHIFT, but there are some notable exceptions: - - - long_pow() requires that PyLong_SHIFT be divisible by 5 - - - PyLong_{As,From}ByteArray require that PyLong_SHIFT be at least 8 - - - long_hash() requires that PyLong_SHIFT is *strictly* less than the number - of bits in an unsigned long, as do the PyLong <-> long (or unsigned long) - conversion functions - - - the Python int <-> size_t/Py_ssize_t conversion functions expect that - PyLong_SHIFT is strictly less than the number of bits in a size_t - - - the marshal code currently expects that PyLong_SHIFT is a multiple of 15 - - - NSMALLNEGINTS and NSMALLPOSINTS should be small enough to fit in a single - digit; with the current values this forces PyLong_SHIFT >= 9 - - The values 15 and 30 should fit all of the above requirements, on any - platform. -*/ - -#if PYLONG_BITS_IN_DIGIT == 30 -typedef uint32_t digit; -typedef int32_t sdigit; /* signed variant of digit */ -typedef uint64_t twodigits; -typedef int64_t stwodigits; /* signed variant of twodigits */ -#define PyLong_SHIFT 30 -#define _PyLong_DECIMAL_SHIFT 9 /* max(e such that 10**e fits in a digit) */ -#define _PyLong_DECIMAL_BASE ((digit)1000000000) /* 10 ** DECIMAL_SHIFT */ -#elif PYLONG_BITS_IN_DIGIT == 15 -typedef unsigned short digit; -typedef short sdigit; /* signed variant of digit */ -typedef unsigned long twodigits; -typedef long stwodigits; /* signed variant of twodigits */ -#define PyLong_SHIFT 15 -#define _PyLong_DECIMAL_SHIFT 4 /* max(e such that 10**e fits in a digit) */ -#define _PyLong_DECIMAL_BASE ((digit)10000) /* 10 ** DECIMAL_SHIFT */ -#else -#error "PYLONG_BITS_IN_DIGIT should be 15 or 30" -#endif -#define PyLong_BASE ((digit)1 << PyLong_SHIFT) -#define PyLong_MASK ((digit)(PyLong_BASE - 1)) - -#if PyLong_SHIFT % 5 != 0 -#error "longobject.c requires that PyLong_SHIFT be divisible by 5" -#endif - -/* Long integer representation. - The absolute value of a number is equal to - SUM(for i=0 through abs(ob_size)-1) ob_digit[i] * 2**(SHIFT*i) - Negative numbers are represented with ob_size < 0; - zero is represented by ob_size == 0. - In a normalized number, ob_digit[abs(ob_size)-1] (the most significant - digit) is never zero. Also, in all cases, for all valid i, - 0 <= ob_digit[i] <= MASK. - The allocation function takes care of allocating extra memory - so that ob_digit[0] ... ob_digit[abs(ob_size)-1] are actually available. - - CAUTION: Generic code manipulating subtypes of PyVarObject has to - aware that ints abuse ob_size's sign bit. -*/ - -struct _longobject { - PyObject_VAR_HEAD - digit ob_digit[1]; -}; - -PyAPI_FUNC(PyLongObject *) _PyLong_New(Py_ssize_t); - -/* Return a copy of src. */ -PyAPI_FUNC(PyObject *) _PyLong_Copy(PyLongObject *src); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LONGINTREPR_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/longobject.h b/_Pre_Builds/_Python310_cpp/include/longobject.h deleted file mode 100644 index e2301d7..0000000 --- a/_Pre_Builds/_Python310_cpp/include/longobject.h +++ /dev/null @@ -1,220 +0,0 @@ -#ifndef Py_LONGOBJECT_H -#define Py_LONGOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Long (arbitrary precision) integer object interface */ - -typedef struct _longobject PyLongObject; /* Revealed in longintrepr.h */ - -PyAPI_DATA(PyTypeObject) PyLong_Type; - -#define PyLong_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_LONG_SUBCLASS) -#define PyLong_CheckExact(op) Py_IS_TYPE(op, &PyLong_Type) - -PyAPI_FUNC(PyObject *) PyLong_FromLong(long); -PyAPI_FUNC(PyObject *) PyLong_FromUnsignedLong(unsigned long); -PyAPI_FUNC(PyObject *) PyLong_FromSize_t(size_t); -PyAPI_FUNC(PyObject *) PyLong_FromSsize_t(Py_ssize_t); -PyAPI_FUNC(PyObject *) PyLong_FromDouble(double); -PyAPI_FUNC(long) PyLong_AsLong(PyObject *); -PyAPI_FUNC(long) PyLong_AsLongAndOverflow(PyObject *, int *); -PyAPI_FUNC(Py_ssize_t) PyLong_AsSsize_t(PyObject *); -PyAPI_FUNC(size_t) PyLong_AsSize_t(PyObject *); -PyAPI_FUNC(unsigned long) PyLong_AsUnsignedLong(PyObject *); -PyAPI_FUNC(unsigned long) PyLong_AsUnsignedLongMask(PyObject *); -#ifndef Py_LIMITED_API -PyAPI_FUNC(int) _PyLong_AsInt(PyObject *); -#endif -PyAPI_FUNC(PyObject *) PyLong_GetInfo(void); - -/* It may be useful in the future. I've added it in the PyInt -> PyLong - cleanup to keep the extra information. [CH] */ -#define PyLong_AS_LONG(op) PyLong_AsLong(op) - -/* Issue #1983: pid_t can be longer than a C long on some systems */ -#if !defined(SIZEOF_PID_T) || SIZEOF_PID_T == SIZEOF_INT -#define _Py_PARSE_PID "i" -#define PyLong_FromPid PyLong_FromLong -#define PyLong_AsPid PyLong_AsLong -#elif SIZEOF_PID_T == SIZEOF_LONG -#define _Py_PARSE_PID "l" -#define PyLong_FromPid PyLong_FromLong -#define PyLong_AsPid PyLong_AsLong -#elif defined(SIZEOF_LONG_LONG) && SIZEOF_PID_T == SIZEOF_LONG_LONG -#define _Py_PARSE_PID "L" -#define PyLong_FromPid PyLong_FromLongLong -#define PyLong_AsPid PyLong_AsLongLong -#else -#error "sizeof(pid_t) is neither sizeof(int), sizeof(long) or sizeof(long long)" -#endif /* SIZEOF_PID_T */ - -#if SIZEOF_VOID_P == SIZEOF_INT -# define _Py_PARSE_INTPTR "i" -# define _Py_PARSE_UINTPTR "I" -#elif SIZEOF_VOID_P == SIZEOF_LONG -# define _Py_PARSE_INTPTR "l" -# define _Py_PARSE_UINTPTR "k" -#elif defined(SIZEOF_LONG_LONG) && SIZEOF_VOID_P == SIZEOF_LONG_LONG -# define _Py_PARSE_INTPTR "L" -# define _Py_PARSE_UINTPTR "K" -#else -# error "void* different in size from int, long and long long" -#endif /* SIZEOF_VOID_P */ - -#ifndef Py_LIMITED_API -PyAPI_FUNC(int) _PyLong_UnsignedShort_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_UnsignedInt_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_UnsignedLong_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_UnsignedLongLong_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_Size_t_Converter(PyObject *, void *); -#endif - -/* Used by Python/mystrtoul.c, _PyBytes_FromHex(), - _PyBytes_DecodeEscape(), etc. */ -#ifndef Py_LIMITED_API -PyAPI_DATA(unsigned char) _PyLong_DigitValue[256]; -#endif - -/* _PyLong_Frexp returns a double x and an exponent e such that the - true value is approximately equal to x * 2**e. e is >= 0. x is - 0.0 if and only if the input is 0 (in which case, e and x are both - zeroes); otherwise, 0.5 <= abs(x) < 1.0. On overflow, which is - possible if the number of bits doesn't fit into a Py_ssize_t, sets - OverflowError and returns -1.0 for x, 0 for e. */ -#ifndef Py_LIMITED_API -PyAPI_FUNC(double) _PyLong_Frexp(PyLongObject *a, Py_ssize_t *e); -#endif - -PyAPI_FUNC(double) PyLong_AsDouble(PyObject *); -PyAPI_FUNC(PyObject *) PyLong_FromVoidPtr(void *); -PyAPI_FUNC(void *) PyLong_AsVoidPtr(PyObject *); - -PyAPI_FUNC(PyObject *) PyLong_FromLongLong(long long); -PyAPI_FUNC(PyObject *) PyLong_FromUnsignedLongLong(unsigned long long); -PyAPI_FUNC(long long) PyLong_AsLongLong(PyObject *); -PyAPI_FUNC(unsigned long long) PyLong_AsUnsignedLongLong(PyObject *); -PyAPI_FUNC(unsigned long long) PyLong_AsUnsignedLongLongMask(PyObject *); -PyAPI_FUNC(long long) PyLong_AsLongLongAndOverflow(PyObject *, int *); - -PyAPI_FUNC(PyObject *) PyLong_FromString(const char *, char **, int); -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) PyLong_FromUnicodeObject(PyObject *u, int base); -PyAPI_FUNC(PyObject *) _PyLong_FromBytes(const char *, Py_ssize_t, int); -#endif - -#ifndef Py_LIMITED_API -/* _PyLong_Sign. Return 0 if v is 0, -1 if v < 0, +1 if v > 0. - v must not be NULL, and must be a normalized long. - There are no error cases. -*/ -PyAPI_FUNC(int) _PyLong_Sign(PyObject *v); - - -/* _PyLong_NumBits. Return the number of bits needed to represent the - absolute value of a long. For example, this returns 1 for 1 and -1, 2 - for 2 and -2, and 2 for 3 and -3. It returns 0 for 0. - v must not be NULL, and must be a normalized long. - (size_t)-1 is returned and OverflowError set if the true result doesn't - fit in a size_t. -*/ -PyAPI_FUNC(size_t) _PyLong_NumBits(PyObject *v); - -/* _PyLong_DivmodNear. Given integers a and b, compute the nearest - integer q to the exact quotient a / b, rounding to the nearest even integer - in the case of a tie. Return (q, r), where r = a - q*b. The remainder r - will satisfy abs(r) <= abs(b)/2, with equality possible only if q is - even. -*/ -PyAPI_FUNC(PyObject *) _PyLong_DivmodNear(PyObject *, PyObject *); - -/* _PyLong_FromByteArray: View the n unsigned bytes as a binary integer in - base 256, and return a Python int with the same numeric value. - If n is 0, the integer is 0. Else: - If little_endian is 1/true, bytes[n-1] is the MSB and bytes[0] the LSB; - else (little_endian is 0/false) bytes[0] is the MSB and bytes[n-1] the - LSB. - If is_signed is 0/false, view the bytes as a non-negative integer. - If is_signed is 1/true, view the bytes as a 2's-complement integer, - non-negative if bit 0x80 of the MSB is clear, negative if set. - Error returns: - + Return NULL with the appropriate exception set if there's not - enough memory to create the Python int. -*/ -PyAPI_FUNC(PyObject *) _PyLong_FromByteArray( - const unsigned char* bytes, size_t n, - int little_endian, int is_signed); - -/* _PyLong_AsByteArray: Convert the least-significant 8*n bits of long - v to a base-256 integer, stored in array bytes. Normally return 0, - return -1 on error. - If little_endian is 1/true, store the MSB at bytes[n-1] and the LSB at - bytes[0]; else (little_endian is 0/false) store the MSB at bytes[0] and - the LSB at bytes[n-1]. - If is_signed is 0/false, it's an error if v < 0; else (v >= 0) n bytes - are filled and there's nothing special about bit 0x80 of the MSB. - If is_signed is 1/true, bytes is filled with the 2's-complement - representation of v's value. Bit 0x80 of the MSB is the sign bit. - Error returns (-1): - + is_signed is 0 and v < 0. TypeError is set in this case, and bytes - isn't altered. - + n isn't big enough to hold the full mathematical value of v. For - example, if is_signed is 0 and there are more digits in the v than - fit in n; or if is_signed is 1, v < 0, and n is just 1 bit shy of - being large enough to hold a sign bit. OverflowError is set in this - case, but bytes holds the least-significant n bytes of the true value. -*/ -PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v, - unsigned char* bytes, size_t n, - int little_endian, int is_signed); - -/* _PyLong_Format: Convert the long to a string object with given base, - appending a base prefix of 0[box] if base is 2, 8 or 16. */ -PyAPI_FUNC(PyObject *) _PyLong_Format(PyObject *obj, int base); - -PyAPI_FUNC(int) _PyLong_FormatWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - int base, - int alternate); - -PyAPI_FUNC(char*) _PyLong_FormatBytesWriter( - _PyBytesWriter *writer, - char *str, - PyObject *obj, - int base, - int alternate); - -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -PyAPI_FUNC(int) _PyLong_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); -#endif /* Py_LIMITED_API */ - -/* These aren't really part of the int object, but they're handy. The - functions are in Python/mystrtoul.c. - */ -PyAPI_FUNC(unsigned long) PyOS_strtoul(const char *, char **, int); -PyAPI_FUNC(long) PyOS_strtol(const char *, char **, int); - -#ifndef Py_LIMITED_API -/* For use by the gcd function in mathmodule.c */ -PyAPI_FUNC(PyObject *) _PyLong_GCD(PyObject *, PyObject *); -#endif /* !Py_LIMITED_API */ - -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PyLong_Rshift(PyObject *, size_t); -PyAPI_FUNC(PyObject *) _PyLong_Lshift(PyObject *, size_t); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LONGOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/marshal.h b/_Pre_Builds/_Python310_cpp/include/marshal.h deleted file mode 100644 index 09d9337..0000000 --- a/_Pre_Builds/_Python310_cpp/include/marshal.h +++ /dev/null @@ -1,28 +0,0 @@ - -/* Interface for marshal.c */ - -#ifndef Py_MARSHAL_H -#define Py_MARSHAL_H -#ifdef __cplusplus -extern "C" { -#endif - -#define Py_MARSHAL_VERSION 4 - -PyAPI_FUNC(void) PyMarshal_WriteLongToFile(long, FILE *, int); -PyAPI_FUNC(void) PyMarshal_WriteObjectToFile(PyObject *, FILE *, int); -PyAPI_FUNC(PyObject *) PyMarshal_WriteObjectToString(PyObject *, int); - -#ifndef Py_LIMITED_API -PyAPI_FUNC(long) PyMarshal_ReadLongFromFile(FILE *); -PyAPI_FUNC(int) PyMarshal_ReadShortFromFile(FILE *); -PyAPI_FUNC(PyObject *) PyMarshal_ReadObjectFromFile(FILE *); -PyAPI_FUNC(PyObject *) PyMarshal_ReadLastObjectFromFile(FILE *); -#endif -PyAPI_FUNC(PyObject *) PyMarshal_ReadObjectFromString(const char *, - Py_ssize_t); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_MARSHAL_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/memoryobject.h b/_Pre_Builds/_Python310_cpp/include/memoryobject.h deleted file mode 100644 index 306028f..0000000 --- a/_Pre_Builds/_Python310_cpp/include/memoryobject.h +++ /dev/null @@ -1,72 +0,0 @@ -/* Memory view object. In Python this is available as "memoryview". */ - -#ifndef Py_MEMORYOBJECT_H -#define Py_MEMORYOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API -PyAPI_DATA(PyTypeObject) _PyManagedBuffer_Type; -#endif -PyAPI_DATA(PyTypeObject) PyMemoryView_Type; - -#define PyMemoryView_Check(op) Py_IS_TYPE(op, &PyMemoryView_Type) - -#ifndef Py_LIMITED_API -/* Get a pointer to the memoryview's private copy of the exporter's buffer. */ -#define PyMemoryView_GET_BUFFER(op) (&((PyMemoryViewObject *)(op))->view) -/* Get a pointer to the exporting object (this may be NULL!). */ -#define PyMemoryView_GET_BASE(op) (((PyMemoryViewObject *)(op))->view.obj) -#endif - -PyAPI_FUNC(PyObject *) PyMemoryView_FromObject(PyObject *base); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyMemoryView_FromMemory(char *mem, Py_ssize_t size, - int flags); -#endif -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) PyMemoryView_FromBuffer(Py_buffer *info); -#endif -PyAPI_FUNC(PyObject *) PyMemoryView_GetContiguous(PyObject *base, - int buffertype, - char order); - - -/* The structs are declared here so that macros can work, but they shouldn't - be considered public. Don't access their fields directly, use the macros - and functions instead! */ -#ifndef Py_LIMITED_API -#define _Py_MANAGED_BUFFER_RELEASED 0x001 /* access to exporter blocked */ -#define _Py_MANAGED_BUFFER_FREE_FORMAT 0x002 /* free format */ -typedef struct { - PyObject_HEAD - int flags; /* state flags */ - Py_ssize_t exports; /* number of direct memoryview exports */ - Py_buffer master; /* snapshot buffer obtained from the original exporter */ -} _PyManagedBufferObject; - - -/* memoryview state flags */ -#define _Py_MEMORYVIEW_RELEASED 0x001 /* access to master buffer blocked */ -#define _Py_MEMORYVIEW_C 0x002 /* C-contiguous layout */ -#define _Py_MEMORYVIEW_FORTRAN 0x004 /* Fortran contiguous layout */ -#define _Py_MEMORYVIEW_SCALAR 0x008 /* scalar: ndim = 0 */ -#define _Py_MEMORYVIEW_PIL 0x010 /* PIL-style layout */ - -typedef struct { - PyObject_VAR_HEAD - _PyManagedBufferObject *mbuf; /* managed buffer */ - Py_hash_t hash; /* hash value for read-only views */ - int flags; /* state flags */ - Py_ssize_t exports; /* number of buffer re-exports */ - Py_buffer view; /* private copy of the exporter's view */ - PyObject *weakreflist; - Py_ssize_t ob_array[1]; /* shape, strides, suboffsets */ -} PyMemoryViewObject; -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_MEMORYOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/methodobject.h b/_Pre_Builds/_Python310_cpp/include/methodobject.h deleted file mode 100644 index 9ffe8e1..0000000 --- a/_Pre_Builds/_Python310_cpp/include/methodobject.h +++ /dev/null @@ -1,116 +0,0 @@ - -/* Method object interface */ - -#ifndef Py_METHODOBJECT_H -#define Py_METHODOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* This is about the type 'builtin_function_or_method', - not Python methods in user-defined classes. See classobject.h - for the latter. */ - -PyAPI_DATA(PyTypeObject) PyCFunction_Type; - -#define PyCFunction_CheckExact(op) Py_IS_TYPE(op, &PyCFunction_Type) -#define PyCFunction_Check(op) PyObject_TypeCheck(op, &PyCFunction_Type) - -typedef PyObject *(*PyCFunction)(PyObject *, PyObject *); -typedef PyObject *(*_PyCFunctionFast) (PyObject *, PyObject *const *, Py_ssize_t); -typedef PyObject *(*PyCFunctionWithKeywords)(PyObject *, PyObject *, - PyObject *); -typedef PyObject *(*_PyCFunctionFastWithKeywords) (PyObject *, - PyObject *const *, Py_ssize_t, - PyObject *); -typedef PyObject *(*PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, - size_t, PyObject *); - -PyAPI_FUNC(PyCFunction) PyCFunction_GetFunction(PyObject *); -PyAPI_FUNC(PyObject *) PyCFunction_GetSelf(PyObject *); -PyAPI_FUNC(int) PyCFunction_GetFlags(PyObject *); - -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyCFunction_Call(PyObject *, PyObject *, PyObject *); - -struct PyMethodDef { - const char *ml_name; /* The name of the built-in function/method */ - PyCFunction ml_meth; /* The C function that implements it */ - int ml_flags; /* Combination of METH_xxx flags, which mostly - describe the args expected by the C func */ - const char *ml_doc; /* The __doc__ attribute, or NULL */ -}; -typedef struct PyMethodDef PyMethodDef; - -/* PyCFunction_New is declared as a function for stable ABI (declaration is - * needed for e.g. GCC with -fvisibility=hidden), but redefined as a macro - * that calls PyCFunction_NewEx. */ -PyAPI_FUNC(PyObject *) PyCFunction_New(PyMethodDef *, PyObject *); -#define PyCFunction_New(ML, SELF) PyCFunction_NewEx((ML), (SELF), NULL) - -/* PyCFunction_NewEx is similar: on 3.9+, this calls PyCMethod_New. */ -PyAPI_FUNC(PyObject *) PyCFunction_NewEx(PyMethodDef *, PyObject *, - PyObject *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -#define PyCFunction_NewEx(ML, SELF, MOD) PyCMethod_New((ML), (SELF), (MOD), NULL) -PyAPI_FUNC(PyObject *) PyCMethod_New(PyMethodDef *, PyObject *, - PyObject *, PyTypeObject *); -#endif - - -/* Flag passed to newmethodobject */ -/* #define METH_OLDARGS 0x0000 -- unsupported now */ -#define METH_VARARGS 0x0001 -#define METH_KEYWORDS 0x0002 -/* METH_NOARGS and METH_O must not be combined with the flags above. */ -#define METH_NOARGS 0x0004 -#define METH_O 0x0008 - -/* METH_CLASS and METH_STATIC are a little different; these control - the construction of methods for a class. These cannot be used for - functions in modules. */ -#define METH_CLASS 0x0010 -#define METH_STATIC 0x0020 - -/* METH_COEXIST allows a method to be entered even though a slot has - already filled the entry. When defined, the flag allows a separate - method, "__contains__" for example, to coexist with a defined - slot like sq_contains. */ - -#define METH_COEXIST 0x0040 - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030a0000 -# define METH_FASTCALL 0x0080 -#endif - -/* This bit is preserved for Stackless Python */ -#ifdef STACKLESS -# define METH_STACKLESS 0x0100 -#else -# define METH_STACKLESS 0x0000 -#endif - -/* METH_METHOD means the function stores an - * additional reference to the class that defines it; - * both self and class are passed to it. - * It uses PyCMethodObject instead of PyCFunctionObject. - * May not be combined with METH_NOARGS, METH_O, METH_CLASS or METH_STATIC. - */ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -#define METH_METHOD 0x0200 -#endif - - -#ifndef Py_LIMITED_API - -#define Py_CPYTHON_METHODOBJECT_H -#include "cpython/methodobject.h" -#undef Py_CPYTHON_METHODOBJECT_H - -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_METHODOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/modsupport.h b/_Pre_Builds/_Python310_cpp/include/modsupport.h deleted file mode 100644 index f009d58..0000000 --- a/_Pre_Builds/_Python310_cpp/include/modsupport.h +++ /dev/null @@ -1,263 +0,0 @@ - -#ifndef Py_MODSUPPORT_H -#define Py_MODSUPPORT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Module support interface */ - -#include - -/* If PY_SSIZE_T_CLEAN is defined, each functions treats #-specifier - to mean Py_ssize_t */ -#ifdef PY_SSIZE_T_CLEAN -#define PyArg_Parse _PyArg_Parse_SizeT -#define PyArg_ParseTuple _PyArg_ParseTuple_SizeT -#define PyArg_ParseTupleAndKeywords _PyArg_ParseTupleAndKeywords_SizeT -#define PyArg_VaParse _PyArg_VaParse_SizeT -#define PyArg_VaParseTupleAndKeywords _PyArg_VaParseTupleAndKeywords_SizeT -#define Py_BuildValue _Py_BuildValue_SizeT -#define Py_VaBuildValue _Py_VaBuildValue_SizeT -#ifndef Py_LIMITED_API -#define _Py_VaBuildStack _Py_VaBuildStack_SizeT -#endif -#else -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _Py_VaBuildValue_SizeT(const char *, va_list); -PyAPI_FUNC(PyObject **) _Py_VaBuildStack_SizeT( - PyObject **small_stack, - Py_ssize_t small_stack_len, - const char *format, - va_list va, - Py_ssize_t *p_nargs); -#endif /* !Py_LIMITED_API */ -#endif - -/* Due to a glitch in 3.2, the _SizeT versions weren't exported from the DLL. */ -#if !defined(PY_SSIZE_T_CLEAN) || !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(int) PyArg_Parse(PyObject *, const char *, ...); -PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...); -PyAPI_FUNC(int) PyArg_ParseTupleAndKeywords(PyObject *, PyObject *, - const char *, char **, ...); -PyAPI_FUNC(int) PyArg_VaParse(PyObject *, const char *, va_list); -PyAPI_FUNC(int) PyArg_VaParseTupleAndKeywords(PyObject *, PyObject *, - const char *, char **, va_list); -#endif -PyAPI_FUNC(int) PyArg_ValidateKeywordArguments(PyObject *); -PyAPI_FUNC(int) PyArg_UnpackTuple(PyObject *, const char *, Py_ssize_t, Py_ssize_t, ...); -PyAPI_FUNC(PyObject *) Py_BuildValue(const char *, ...); -PyAPI_FUNC(PyObject *) _Py_BuildValue_SizeT(const char *, ...); - - -#ifndef Py_LIMITED_API -PyAPI_FUNC(int) _PyArg_UnpackStack( - PyObject *const *args, - Py_ssize_t nargs, - const char *name, - Py_ssize_t min, - Py_ssize_t max, - ...); - -PyAPI_FUNC(int) _PyArg_NoKeywords(const char *funcname, PyObject *kwargs); -PyAPI_FUNC(int) _PyArg_NoKwnames(const char *funcname, PyObject *kwnames); -PyAPI_FUNC(int) _PyArg_NoPositional(const char *funcname, PyObject *args); -#define _PyArg_NoKeywords(funcname, kwargs) \ - ((kwargs) == NULL || _PyArg_NoKeywords((funcname), (kwargs))) -#define _PyArg_NoKwnames(funcname, kwnames) \ - ((kwnames) == NULL || _PyArg_NoKwnames((funcname), (kwnames))) -#define _PyArg_NoPositional(funcname, args) \ - ((args) == NULL || _PyArg_NoPositional((funcname), (args))) - -PyAPI_FUNC(void) _PyArg_BadArgument(const char *, const char *, const char *, PyObject *); -PyAPI_FUNC(int) _PyArg_CheckPositional(const char *, Py_ssize_t, - Py_ssize_t, Py_ssize_t); -#define _PyArg_CheckPositional(funcname, nargs, min, max) \ - (((min) <= (nargs) && (nargs) <= (max)) \ - || _PyArg_CheckPositional((funcname), (nargs), (min), (max))) - -#endif - -PyAPI_FUNC(PyObject *) Py_VaBuildValue(const char *, va_list); -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject **) _Py_VaBuildStack( - PyObject **small_stack, - Py_ssize_t small_stack_len, - const char *format, - va_list va, - Py_ssize_t *p_nargs); -#endif - -#ifndef Py_LIMITED_API -typedef struct _PyArg_Parser { - const char *format; - const char * const *keywords; - const char *fname; - const char *custom_msg; - int pos; /* number of positional-only arguments */ - int min; /* minimal number of arguments */ - int max; /* maximal number of positional arguments */ - PyObject *kwtuple; /* tuple of keyword parameter names */ - struct _PyArg_Parser *next; -} _PyArg_Parser; -#ifdef PY_SSIZE_T_CLEAN -#define _PyArg_ParseTupleAndKeywordsFast _PyArg_ParseTupleAndKeywordsFast_SizeT -#define _PyArg_ParseStack _PyArg_ParseStack_SizeT -#define _PyArg_ParseStackAndKeywords _PyArg_ParseStackAndKeywords_SizeT -#define _PyArg_VaParseTupleAndKeywordsFast _PyArg_VaParseTupleAndKeywordsFast_SizeT -#endif -PyAPI_FUNC(int) _PyArg_ParseTupleAndKeywordsFast(PyObject *, PyObject *, - struct _PyArg_Parser *, ...); -PyAPI_FUNC(int) _PyArg_ParseStack( - PyObject *const *args, - Py_ssize_t nargs, - const char *format, - ...); -PyAPI_FUNC(int) _PyArg_ParseStackAndKeywords( - PyObject *const *args, - Py_ssize_t nargs, - PyObject *kwnames, - struct _PyArg_Parser *, - ...); -PyAPI_FUNC(int) _PyArg_VaParseTupleAndKeywordsFast(PyObject *, PyObject *, - struct _PyArg_Parser *, va_list); -PyAPI_FUNC(PyObject * const *) _PyArg_UnpackKeywords( - PyObject *const *args, Py_ssize_t nargs, - PyObject *kwargs, PyObject *kwnames, - struct _PyArg_Parser *parser, - int minpos, int maxpos, int minkw, - PyObject **buf); -#define _PyArg_UnpackKeywords(args, nargs, kwargs, kwnames, parser, minpos, maxpos, minkw, buf) \ - (((minkw) == 0 && (kwargs) == NULL && (kwnames) == NULL && \ - (minpos) <= (nargs) && (nargs) <= (maxpos) && args != NULL) ? (args) : \ - _PyArg_UnpackKeywords((args), (nargs), (kwargs), (kwnames), (parser), \ - (minpos), (maxpos), (minkw), (buf))) - -void _PyArg_Fini(void); -#endif /* Py_LIMITED_API */ - -// Add an attribute with name 'name' and value 'obj' to the module 'mod. -// On success, return 0 on success. -// On error, raise an exception and return -1. -PyAPI_FUNC(int) PyModule_AddObjectRef(PyObject *mod, const char *name, PyObject *value); - -// Similar to PyModule_AddObjectRef() but steal a reference to 'obj' -// (Py_DECREF(obj)) on success (if it returns 0). -PyAPI_FUNC(int) PyModule_AddObject(PyObject *mod, const char *, PyObject *value); - -PyAPI_FUNC(int) PyModule_AddIntConstant(PyObject *, const char *, long); -PyAPI_FUNC(int) PyModule_AddStringConstant(PyObject *, const char *, const char *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* New in 3.9 */ -PyAPI_FUNC(int) PyModule_AddType(PyObject *module, PyTypeObject *type); -#endif /* Py_LIMITED_API */ -#define PyModule_AddIntMacro(m, c) PyModule_AddIntConstant(m, #c, c) -#define PyModule_AddStringMacro(m, c) PyModule_AddStringConstant(m, #c, c) - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -PyAPI_FUNC(int) PyModule_SetDocString(PyObject *, const char *); -PyAPI_FUNC(int) PyModule_AddFunctions(PyObject *, PyMethodDef *); -PyAPI_FUNC(int) PyModule_ExecDef(PyObject *module, PyModuleDef *def); -#endif - -#define Py_CLEANUP_SUPPORTED 0x20000 - -#define PYTHON_API_VERSION 1013 -#define PYTHON_API_STRING "1013" -/* The API version is maintained (independently from the Python version) - so we can detect mismatches between the interpreter and dynamically - loaded modules. These are diagnosed by an error message but - the module is still loaded (because the mismatch can only be tested - after loading the module). The error message is intended to - explain the core dump a few seconds later. - - The symbol PYTHON_API_STRING defines the same value as a string - literal. *** PLEASE MAKE SURE THE DEFINITIONS MATCH. *** - - Please add a line or two to the top of this log for each API - version change: - - 22-Feb-2006 MvL 1013 PEP 353 - long indices for sequence lengths - - 19-Aug-2002 GvR 1012 Changes to string object struct for - interning changes, saving 3 bytes. - - 17-Jul-2001 GvR 1011 Descr-branch, just to be on the safe side - - 25-Jan-2001 FLD 1010 Parameters added to PyCode_New() and - PyFrame_New(); Python 2.1a2 - - 14-Mar-2000 GvR 1009 Unicode API added - - 3-Jan-1999 GvR 1007 Decided to change back! (Don't reuse 1008!) - - 3-Dec-1998 GvR 1008 Python 1.5.2b1 - - 18-Jan-1997 GvR 1007 string interning and other speedups - - 11-Oct-1996 GvR renamed Py_Ellipses to Py_Ellipsis :-( - - 30-Jul-1996 GvR Slice and ellipses syntax added - - 23-Jul-1996 GvR For 1.4 -- better safe than sorry this time :-) - - 7-Nov-1995 GvR Keyword arguments (should've been done at 1.3 :-( ) - - 10-Jan-1995 GvR Renamed globals to new naming scheme - - 9-Jan-1995 GvR Initial version (incompatible with older API) -*/ - -/* The PYTHON_ABI_VERSION is introduced in PEP 384. For the lifetime of - Python 3, it will stay at the value of 3; changes to the limited API - must be performed in a strictly backwards-compatible manner. */ -#define PYTHON_ABI_VERSION 3 -#define PYTHON_ABI_STRING "3" - -#ifdef Py_TRACE_REFS - /* When we are tracing reference counts, rename module creation functions so - modules compiled with incompatible settings will generate a - link-time error. */ - #define PyModule_Create2 PyModule_Create2TraceRefs - #define PyModule_FromDefAndSpec2 PyModule_FromDefAndSpec2TraceRefs -#endif - -PyAPI_FUNC(PyObject *) PyModule_Create2(struct PyModuleDef*, - int apiver); -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PyModule_CreateInitialized(struct PyModuleDef*, - int apiver); -#endif - -#ifdef Py_LIMITED_API -#define PyModule_Create(module) \ - PyModule_Create2(module, PYTHON_ABI_VERSION) -#else -#define PyModule_Create(module) \ - PyModule_Create2(module, PYTHON_API_VERSION) -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -PyAPI_FUNC(PyObject *) PyModule_FromDefAndSpec2(PyModuleDef *def, - PyObject *spec, - int module_api_version); - -#ifdef Py_LIMITED_API -#define PyModule_FromDefAndSpec(module, spec) \ - PyModule_FromDefAndSpec2(module, spec, PYTHON_ABI_VERSION) -#else -#define PyModule_FromDefAndSpec(module, spec) \ - PyModule_FromDefAndSpec2(module, spec, PYTHON_API_VERSION) -#endif /* Py_LIMITED_API */ -#endif /* New in 3.5 */ - -#ifndef Py_LIMITED_API -PyAPI_DATA(const char *) _Py_PackageContext; -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_MODSUPPORT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/moduleobject.h b/_Pre_Builds/_Python310_cpp/include/moduleobject.h deleted file mode 100644 index 49b116c..0000000 --- a/_Pre_Builds/_Python310_cpp/include/moduleobject.h +++ /dev/null @@ -1,96 +0,0 @@ - -/* Module object interface */ - -#ifndef Py_MODULEOBJECT_H -#define Py_MODULEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyModule_Type; - -#define PyModule_Check(op) PyObject_TypeCheck(op, &PyModule_Type) -#define PyModule_CheckExact(op) Py_IS_TYPE(op, &PyModule_Type) - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyModule_NewObject( - PyObject *name - ); -#endif -PyAPI_FUNC(PyObject *) PyModule_New( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyModule_GetDict(PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyModule_GetNameObject(PyObject *); -#endif -PyAPI_FUNC(const char *) PyModule_GetName(PyObject *); -Py_DEPRECATED(3.2) PyAPI_FUNC(const char *) PyModule_GetFilename(PyObject *); -PyAPI_FUNC(PyObject *) PyModule_GetFilenameObject(PyObject *); -#ifndef Py_LIMITED_API -PyAPI_FUNC(void) _PyModule_Clear(PyObject *); -PyAPI_FUNC(void) _PyModule_ClearDict(PyObject *); -PyAPI_FUNC(int) _PyModuleSpec_IsInitializing(PyObject *); -#endif -PyAPI_FUNC(struct PyModuleDef*) PyModule_GetDef(PyObject*); -PyAPI_FUNC(void*) PyModule_GetState(PyObject*); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -PyAPI_FUNC(PyObject *) PyModuleDef_Init(struct PyModuleDef*); -PyAPI_DATA(PyTypeObject) PyModuleDef_Type; -#endif - -typedef struct PyModuleDef_Base { - PyObject_HEAD - PyObject* (*m_init)(void); - Py_ssize_t m_index; - PyObject* m_copy; -} PyModuleDef_Base; - -#define PyModuleDef_HEAD_INIT { \ - PyObject_HEAD_INIT(NULL) \ - NULL, /* m_init */ \ - 0, /* m_index */ \ - NULL, /* m_copy */ \ - } - -struct PyModuleDef_Slot; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -typedef struct PyModuleDef_Slot{ - int slot; - void *value; -} PyModuleDef_Slot; - -#define Py_mod_create 1 -#define Py_mod_exec 2 - -#ifndef Py_LIMITED_API -#define _Py_mod_LAST_SLOT 2 -#endif - -#endif /* New in 3.5 */ - -typedef struct PyModuleDef{ - PyModuleDef_Base m_base; - const char* m_name; - const char* m_doc; - Py_ssize_t m_size; - PyMethodDef *m_methods; - struct PyModuleDef_Slot* m_slots; - traverseproc m_traverse; - inquiry m_clear; - freefunc m_free; -} PyModuleDef; - - -// Internal C API -#ifdef Py_BUILD_CORE -extern int _PyModule_IsExtension(PyObject *obj); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_MODULEOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/namespaceobject.h b/_Pre_Builds/_Python310_cpp/include/namespaceobject.h deleted file mode 100644 index 0c8d95c..0000000 --- a/_Pre_Builds/_Python310_cpp/include/namespaceobject.h +++ /dev/null @@ -1,19 +0,0 @@ - -/* simple namespace object interface */ - -#ifndef NAMESPACEOBJECT_H -#define NAMESPACEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API -PyAPI_DATA(PyTypeObject) _PyNamespace_Type; - -PyAPI_FUNC(PyObject *) _PyNamespace_New(PyObject *kwds); -#endif /* !Py_LIMITED_API */ - -#ifdef __cplusplus -} -#endif -#endif /* !NAMESPACEOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/object.h b/_Pre_Builds/_Python310_cpp/include/object.h deleted file mode 100644 index 61e638c..0000000 --- a/_Pre_Builds/_Python310_cpp/include/object.h +++ /dev/null @@ -1,749 +0,0 @@ -#ifndef Py_OBJECT_H -#define Py_OBJECT_H - -#ifdef __cplusplus -extern "C" { -#endif - - -/* Object and type object interface */ - -/* -Objects are structures allocated on the heap. Special rules apply to -the use of objects to ensure they are properly garbage-collected. -Objects are never allocated statically or on the stack; they must be -accessed through special macros and functions only. (Type objects are -exceptions to the first rule; the standard types are represented by -statically initialized type objects, although work on type/class unification -for Python 2.2 made it possible to have heap-allocated type objects too). - -An object has a 'reference count' that is increased or decreased when a -pointer to the object is copied or deleted; when the reference count -reaches zero there are no references to the object left and it can be -removed from the heap. - -An object has a 'type' that determines what it represents and what kind -of data it contains. An object's type is fixed when it is created. -Types themselves are represented as objects; an object contains a -pointer to the corresponding type object. The type itself has a type -pointer pointing to the object representing the type 'type', which -contains a pointer to itself!. - -Objects do not float around in memory; once allocated an object keeps -the same size and address. Objects that must hold variable-size data -can contain pointers to variable-size parts of the object. Not all -objects of the same type have the same size; but the size cannot change -after allocation. (These restrictions are made so a reference to an -object can be simply a pointer -- moving an object would require -updating all the pointers, and changing an object's size would require -moving it if there was another object right next to it.) - -Objects are always accessed through pointers of the type 'PyObject *'. -The type 'PyObject' is a structure that only contains the reference count -and the type pointer. The actual memory allocated for an object -contains other data that can only be accessed after casting the pointer -to a pointer to a longer structure type. This longer type must start -with the reference count and type fields; the macro PyObject_HEAD should be -used for this (to accommodate for future changes). The implementation -of a particular object type can cast the object pointer to the proper -type and back. - -A standard interface exists for objects that contain an array of items -whose size is determined when the object is allocated. -*/ - -/* Py_DEBUG implies Py_REF_DEBUG. */ -#if defined(Py_DEBUG) && !defined(Py_REF_DEBUG) -# define Py_REF_DEBUG -#endif - -#if defined(Py_LIMITED_API) && defined(Py_TRACE_REFS) -# error Py_LIMITED_API is incompatible with Py_TRACE_REFS -#endif - -/* PyTypeObject structure is defined in cpython/object.h. - In Py_LIMITED_API, PyTypeObject is an opaque structure. */ -typedef struct _typeobject PyTypeObject; - -#ifdef Py_TRACE_REFS -/* Define pointers to support a doubly-linked list of all live heap objects. */ -#define _PyObject_HEAD_EXTRA \ - struct _object *_ob_next; \ - struct _object *_ob_prev; - -#define _PyObject_EXTRA_INIT 0, 0, - -#else -# define _PyObject_HEAD_EXTRA -# define _PyObject_EXTRA_INIT -#endif - -/* PyObject_HEAD defines the initial segment of every PyObject. */ -#define PyObject_HEAD PyObject ob_base; - -#define PyObject_HEAD_INIT(type) \ - { _PyObject_EXTRA_INIT \ - 1, type }, - -#define PyVarObject_HEAD_INIT(type, size) \ - { PyObject_HEAD_INIT(type) size }, - -/* PyObject_VAR_HEAD defines the initial segment of all variable-size - * container objects. These end with a declaration of an array with 1 - * element, but enough space is malloc'ed so that the array actually - * has room for ob_size elements. Note that ob_size is an element count, - * not necessarily a byte count. - */ -#define PyObject_VAR_HEAD PyVarObject ob_base; -#define Py_INVALID_SIZE (Py_ssize_t)-1 - -/* Nothing is actually declared to be a PyObject, but every pointer to - * a Python object can be cast to a PyObject*. This is inheritance built - * by hand. Similarly every pointer to a variable-size Python object can, - * in addition, be cast to PyVarObject*. - */ -typedef struct _object { - _PyObject_HEAD_EXTRA - Py_ssize_t ob_refcnt; - PyTypeObject *ob_type; -} PyObject; - -/* Cast argument to PyObject* type. */ -#define _PyObject_CAST(op) ((PyObject*)(op)) -#define _PyObject_CAST_CONST(op) ((const PyObject*)(op)) - -typedef struct { - PyObject ob_base; - Py_ssize_t ob_size; /* Number of items in variable part */ -} PyVarObject; - -/* Cast argument to PyVarObject* type. */ -#define _PyVarObject_CAST(op) ((PyVarObject*)(op)) -#define _PyVarObject_CAST_CONST(op) ((const PyVarObject*)(op)) - - -// Test if the 'x' object is the 'y' object, the same as "x is y" in Python. -PyAPI_FUNC(int) Py_Is(PyObject *x, PyObject *y); -#define Py_Is(x, y) ((x) == (y)) - - -static inline Py_ssize_t _Py_REFCNT(const PyObject *ob) { - return ob->ob_refcnt; -} -#define Py_REFCNT(ob) _Py_REFCNT(_PyObject_CAST_CONST(ob)) - - -// bpo-39573: The Py_SET_TYPE() function must be used to set an object type. -#define Py_TYPE(ob) (_PyObject_CAST(ob)->ob_type) - -// bpo-39573: The Py_SET_SIZE() function must be used to set an object size. -#define Py_SIZE(ob) (_PyVarObject_CAST(ob)->ob_size) - - -static inline int _Py_IS_TYPE(const PyObject *ob, const PyTypeObject *type) { - // bpo-44378: Don't use Py_TYPE() since Py_TYPE() requires a non-const - // object. - return ob->ob_type == type; -} -#define Py_IS_TYPE(ob, type) _Py_IS_TYPE(_PyObject_CAST_CONST(ob), type) - - -static inline void _Py_SET_REFCNT(PyObject *ob, Py_ssize_t refcnt) { - ob->ob_refcnt = refcnt; -} -#define Py_SET_REFCNT(ob, refcnt) _Py_SET_REFCNT(_PyObject_CAST(ob), refcnt) - - -static inline void _Py_SET_TYPE(PyObject *ob, PyTypeObject *type) { - ob->ob_type = type; -} -#define Py_SET_TYPE(ob, type) _Py_SET_TYPE(_PyObject_CAST(ob), type) - - -static inline void _Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) { - ob->ob_size = size; -} -#define Py_SET_SIZE(ob, size) _Py_SET_SIZE(_PyVarObject_CAST(ob), size) - - -/* -Type objects contain a string containing the type name (to help somewhat -in debugging), the allocation parameters (see PyObject_New() and -PyObject_NewVar()), -and methods for accessing objects of the type. Methods are optional, a -nil pointer meaning that particular kind of access is not available for -this type. The Py_DECREF() macro uses the tp_dealloc method without -checking for a nil pointer; it should always be implemented except if -the implementation can guarantee that the reference count will never -reach zero (e.g., for statically allocated type objects). - -NB: the methods for certain type groups are now contained in separate -method blocks. -*/ - -typedef PyObject * (*unaryfunc)(PyObject *); -typedef PyObject * (*binaryfunc)(PyObject *, PyObject *); -typedef PyObject * (*ternaryfunc)(PyObject *, PyObject *, PyObject *); -typedef int (*inquiry)(PyObject *); -typedef Py_ssize_t (*lenfunc)(PyObject *); -typedef PyObject *(*ssizeargfunc)(PyObject *, Py_ssize_t); -typedef PyObject *(*ssizessizeargfunc)(PyObject *, Py_ssize_t, Py_ssize_t); -typedef int(*ssizeobjargproc)(PyObject *, Py_ssize_t, PyObject *); -typedef int(*ssizessizeobjargproc)(PyObject *, Py_ssize_t, Py_ssize_t, PyObject *); -typedef int(*objobjargproc)(PyObject *, PyObject *, PyObject *); - -typedef int (*objobjproc)(PyObject *, PyObject *); -typedef int (*visitproc)(PyObject *, void *); -typedef int (*traverseproc)(PyObject *, visitproc, void *); - - -typedef void (*freefunc)(void *); -typedef void (*destructor)(PyObject *); -typedef PyObject *(*getattrfunc)(PyObject *, char *); -typedef PyObject *(*getattrofunc)(PyObject *, PyObject *); -typedef int (*setattrfunc)(PyObject *, char *, PyObject *); -typedef int (*setattrofunc)(PyObject *, PyObject *, PyObject *); -typedef PyObject *(*reprfunc)(PyObject *); -typedef Py_hash_t (*hashfunc)(PyObject *); -typedef PyObject *(*richcmpfunc) (PyObject *, PyObject *, int); -typedef PyObject *(*getiterfunc) (PyObject *); -typedef PyObject *(*iternextfunc) (PyObject *); -typedef PyObject *(*descrgetfunc) (PyObject *, PyObject *, PyObject *); -typedef int (*descrsetfunc) (PyObject *, PyObject *, PyObject *); -typedef int (*initproc)(PyObject *, PyObject *, PyObject *); -typedef PyObject *(*newfunc)(PyTypeObject *, PyObject *, PyObject *); -typedef PyObject *(*allocfunc)(PyTypeObject *, Py_ssize_t); - -typedef struct{ - int slot; /* slot id, see below */ - void *pfunc; /* function pointer */ -} PyType_Slot; - -typedef struct{ - const char* name; - int basicsize; - int itemsize; - unsigned int flags; - PyType_Slot *slots; /* terminated by slot==0. */ -} PyType_Spec; - -PyAPI_FUNC(PyObject*) PyType_FromSpec(PyType_Spec*); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyType_FromSpecWithBases(PyType_Spec*, PyObject*); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03040000 -PyAPI_FUNC(void*) PyType_GetSlot(PyTypeObject*, int); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -PyAPI_FUNC(PyObject*) PyType_FromModuleAndSpec(PyObject *, PyType_Spec *, PyObject *); -PyAPI_FUNC(PyObject *) PyType_GetModule(struct _typeobject *); -PyAPI_FUNC(void *) PyType_GetModuleState(struct _typeobject *); -#endif - -/* Generic type check */ -PyAPI_FUNC(int) PyType_IsSubtype(PyTypeObject *, PyTypeObject *); - -static inline int _PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) { - return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type); -} -#define PyObject_TypeCheck(ob, type) _PyObject_TypeCheck(_PyObject_CAST(ob), type) - -PyAPI_DATA(PyTypeObject) PyType_Type; /* built-in 'type' */ -PyAPI_DATA(PyTypeObject) PyBaseObject_Type; /* built-in 'object' */ -PyAPI_DATA(PyTypeObject) PySuper_Type; /* built-in 'super' */ - -PyAPI_FUNC(unsigned long) PyType_GetFlags(PyTypeObject*); - -PyAPI_FUNC(int) PyType_Ready(PyTypeObject *); -PyAPI_FUNC(PyObject *) PyType_GenericAlloc(PyTypeObject *, Py_ssize_t); -PyAPI_FUNC(PyObject *) PyType_GenericNew(PyTypeObject *, - PyObject *, PyObject *); -PyAPI_FUNC(unsigned int) PyType_ClearCache(void); -PyAPI_FUNC(void) PyType_Modified(PyTypeObject *); - -/* Generic operations on objects */ -PyAPI_FUNC(PyObject *) PyObject_Repr(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_Str(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_ASCII(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_Bytes(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_RichCompare(PyObject *, PyObject *, int); -PyAPI_FUNC(int) PyObject_RichCompareBool(PyObject *, PyObject *, int); -PyAPI_FUNC(PyObject *) PyObject_GetAttrString(PyObject *, const char *); -PyAPI_FUNC(int) PyObject_SetAttrString(PyObject *, const char *, PyObject *); -PyAPI_FUNC(int) PyObject_HasAttrString(PyObject *, const char *); -PyAPI_FUNC(PyObject *) PyObject_GetAttr(PyObject *, PyObject *); -PyAPI_FUNC(int) PyObject_SetAttr(PyObject *, PyObject *, PyObject *); -PyAPI_FUNC(int) PyObject_HasAttr(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyObject_SelfIter(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_GenericGetAttr(PyObject *, PyObject *); -PyAPI_FUNC(int) PyObject_GenericSetAttr(PyObject *, PyObject *, PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(int) PyObject_GenericSetDict(PyObject *, PyObject *, void *); -#endif -PyAPI_FUNC(Py_hash_t) PyObject_Hash(PyObject *); -PyAPI_FUNC(Py_hash_t) PyObject_HashNotImplemented(PyObject *); -PyAPI_FUNC(int) PyObject_IsTrue(PyObject *); -PyAPI_FUNC(int) PyObject_Not(PyObject *); -PyAPI_FUNC(int) PyCallable_Check(PyObject *); -PyAPI_FUNC(void) PyObject_ClearWeakRefs(PyObject *); - -/* PyObject_Dir(obj) acts like Python builtins.dir(obj), returning a - list of strings. PyObject_Dir(NULL) is like builtins.dir(), - returning the names of the current locals. In this case, if there are - no current locals, NULL is returned, and PyErr_Occurred() is false. -*/ -PyAPI_FUNC(PyObject *) PyObject_Dir(PyObject *); - - -/* Helpers for printing recursive container types */ -PyAPI_FUNC(int) Py_ReprEnter(PyObject *); -PyAPI_FUNC(void) Py_ReprLeave(PyObject *); - -/* Flag bits for printing: */ -#define Py_PRINT_RAW 1 /* No string quotes etc. */ - -/* -Type flags (tp_flags) - -These flags are used to change expected features and behavior for a -particular type. - -Arbitration of the flag bit positions will need to be coordinated among -all extension writers who publicly release their extensions (this will -be fewer than you might expect!). - -Most flags were removed as of Python 3.0 to make room for new flags. (Some -flags are not for backwards compatibility but to indicate the presence of an -optional feature; these flags remain of course.) - -Type definitions should use Py_TPFLAGS_DEFAULT for their tp_flags value. - -Code can use PyType_HasFeature(type_ob, flag_value) to test whether the -given type object has a specified feature. -*/ - -#ifndef Py_LIMITED_API -/* Set if instances of the type object are treated as sequences for pattern matching */ -#define Py_TPFLAGS_SEQUENCE (1 << 5) -/* Set if instances of the type object are treated as mappings for pattern matching */ -#define Py_TPFLAGS_MAPPING (1 << 6) -#endif - -/* Disallow creating instances of the type: set tp_new to NULL and don't create - * the "__new__" key in the type dictionary. */ -#define Py_TPFLAGS_DISALLOW_INSTANTIATION (1UL << 7) - -/* Set if the type object is immutable: type attributes cannot be set nor deleted */ -#define Py_TPFLAGS_IMMUTABLETYPE (1UL << 8) - -/* Set if the type object is dynamically allocated */ -#define Py_TPFLAGS_HEAPTYPE (1UL << 9) - -/* Set if the type allows subclassing */ -#define Py_TPFLAGS_BASETYPE (1UL << 10) - -/* Set if the type implements the vectorcall protocol (PEP 590) */ -#ifndef Py_LIMITED_API -#define Py_TPFLAGS_HAVE_VECTORCALL (1UL << 11) -// Backwards compatibility alias for API that was provisional in Python 3.8 -#define _Py_TPFLAGS_HAVE_VECTORCALL Py_TPFLAGS_HAVE_VECTORCALL -#endif - -/* Set if the type is 'ready' -- fully initialized */ -#define Py_TPFLAGS_READY (1UL << 12) - -/* Set while the type is being 'readied', to prevent recursive ready calls */ -#define Py_TPFLAGS_READYING (1UL << 13) - -/* Objects support garbage collection (see objimpl.h) */ -#define Py_TPFLAGS_HAVE_GC (1UL << 14) - -/* These two bits are preserved for Stackless Python, next after this is 17 */ -#ifdef STACKLESS -#define Py_TPFLAGS_HAVE_STACKLESS_EXTENSION (3UL << 15) -#else -#define Py_TPFLAGS_HAVE_STACKLESS_EXTENSION 0 -#endif - -/* Objects behave like an unbound method */ -#define Py_TPFLAGS_METHOD_DESCRIPTOR (1UL << 17) - -/* Object has up-to-date type attribute cache */ -#define Py_TPFLAGS_VALID_VERSION_TAG (1UL << 19) - -/* Type is abstract and cannot be instantiated */ -#define Py_TPFLAGS_IS_ABSTRACT (1UL << 20) - -// This undocumented flag gives certain built-ins their unique pattern-matching -// behavior, which allows a single positional subpattern to match against the -// subject itself (rather than a mapped attribute on it): -#define _Py_TPFLAGS_MATCH_SELF (1UL << 22) - -/* These flags are used to determine if a type is a subclass. */ -#define Py_TPFLAGS_LONG_SUBCLASS (1UL << 24) -#define Py_TPFLAGS_LIST_SUBCLASS (1UL << 25) -#define Py_TPFLAGS_TUPLE_SUBCLASS (1UL << 26) -#define Py_TPFLAGS_BYTES_SUBCLASS (1UL << 27) -#define Py_TPFLAGS_UNICODE_SUBCLASS (1UL << 28) -#define Py_TPFLAGS_DICT_SUBCLASS (1UL << 29) -#define Py_TPFLAGS_BASE_EXC_SUBCLASS (1UL << 30) -#define Py_TPFLAGS_TYPE_SUBCLASS (1UL << 31) - -#define Py_TPFLAGS_DEFAULT ( \ - Py_TPFLAGS_HAVE_STACKLESS_EXTENSION | \ - 0) - -/* NOTE: Some of the following flags reuse lower bits (removed as part of the - * Python 3.0 transition). */ - -/* The following flags are kept for compatibility; in previous - * versions they indicated presence of newer tp_* fields on the - * type struct. - * Starting with 3.8, binary compatibility of C extensions across - * feature releases of Python is not supported anymore (except when - * using the stable ABI, in which all classes are created dynamically, - * using the interpreter's memory layout.) - * Note that older extensions using the stable ABI set these flags, - * so the bits must not be repurposed. - */ -#define Py_TPFLAGS_HAVE_FINALIZE (1UL << 0) -#define Py_TPFLAGS_HAVE_VERSION_TAG (1UL << 18) - - -/* -The macros Py_INCREF(op) and Py_DECREF(op) are used to increment or decrement -reference counts. Py_DECREF calls the object's deallocator function when -the refcount falls to 0; for -objects that don't contain references to other objects or heap memory -this can be the standard function free(). Both macros can be used -wherever a void expression is allowed. The argument must not be a -NULL pointer. If it may be NULL, use Py_XINCREF/Py_XDECREF instead. -The macro _Py_NewReference(op) initialize reference counts to 1, and -in special builds (Py_REF_DEBUG, Py_TRACE_REFS) performs additional -bookkeeping appropriate to the special build. - -We assume that the reference count field can never overflow; this can -be proven when the size of the field is the same as the pointer size, so -we ignore the possibility. Provided a C int is at least 32 bits (which -is implicitly assumed in many parts of this code), that's enough for -about 2**31 references to an object. - -XXX The following became out of date in Python 2.2, but I'm not sure -XXX what the full truth is now. Certainly, heap-allocated type objects -XXX can and should be deallocated. -Type objects should never be deallocated; the type pointer in an object -is not considered to be a reference to the type object, to save -complications in the deallocation function. (This is actually a -decision that's up to the implementer of each new type so if you want, -you can count such references to the type object.) -*/ - -#ifdef Py_REF_DEBUG -PyAPI_DATA(Py_ssize_t) _Py_RefTotal; -PyAPI_FUNC(void) _Py_NegativeRefcount(const char *filename, int lineno, - PyObject *op); -#endif /* Py_REF_DEBUG */ - -PyAPI_FUNC(void) _Py_Dealloc(PyObject *); - -/* -These are provided as conveniences to Python runtime embedders, so that -they can have object code that is not dependent on Python compilation flags. -*/ -PyAPI_FUNC(void) Py_IncRef(PyObject *); -PyAPI_FUNC(void) Py_DecRef(PyObject *); - -// Similar to Py_IncRef() and Py_DecRef() but the argument must be non-NULL. -// Private functions used by Py_INCREF() and Py_DECREF(). -PyAPI_FUNC(void) _Py_IncRef(PyObject *); -PyAPI_FUNC(void) _Py_DecRef(PyObject *); - -static inline void _Py_INCREF(PyObject *op) -{ -#if defined(Py_REF_DEBUG) && defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x030A0000 - // Stable ABI for Python 3.10 built in debug mode. - _Py_IncRef(op); -#else - // Non-limited C API and limited C API for Python 3.9 and older access - // directly PyObject.ob_refcnt. -#ifdef Py_REF_DEBUG - _Py_RefTotal++; -#endif - op->ob_refcnt++; -#endif -} -#define Py_INCREF(op) _Py_INCREF(_PyObject_CAST(op)) - -static inline void _Py_DECREF( -#if defined(Py_REF_DEBUG) && !(defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x030A0000) - const char *filename, int lineno, -#endif - PyObject *op) -{ -#if defined(Py_REF_DEBUG) && defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x030A0000 - // Stable ABI for Python 3.10 built in debug mode. - _Py_DecRef(op); -#else - // Non-limited C API and limited C API for Python 3.9 and older access - // directly PyObject.ob_refcnt. -#ifdef Py_REF_DEBUG - _Py_RefTotal--; -#endif - if (--op->ob_refcnt != 0) { -#ifdef Py_REF_DEBUG - if (op->ob_refcnt < 0) { - _Py_NegativeRefcount(filename, lineno, op); - } -#endif - } - else { - _Py_Dealloc(op); - } -#endif -} -#if defined(Py_REF_DEBUG) && !(defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x030A0000) -# define Py_DECREF(op) _Py_DECREF(__FILE__, __LINE__, _PyObject_CAST(op)) -#else -# define Py_DECREF(op) _Py_DECREF(_PyObject_CAST(op)) -#endif - - -/* Safely decref `op` and set `op` to NULL, especially useful in tp_clear - * and tp_dealloc implementations. - * - * Note that "the obvious" code can be deadly: - * - * Py_XDECREF(op); - * op = NULL; - * - * Typically, `op` is something like self->containee, and `self` is done - * using its `containee` member. In the code sequence above, suppose - * `containee` is non-NULL with a refcount of 1. Its refcount falls to - * 0 on the first line, which can trigger an arbitrary amount of code, - * possibly including finalizers (like __del__ methods or weakref callbacks) - * coded in Python, which in turn can release the GIL and allow other threads - * to run, etc. Such code may even invoke methods of `self` again, or cause - * cyclic gc to trigger, but-- oops! --self->containee still points to the - * object being torn down, and it may be in an insane state while being torn - * down. This has in fact been a rich historic source of miserable (rare & - * hard-to-diagnose) segfaulting (and other) bugs. - * - * The safe way is: - * - * Py_CLEAR(op); - * - * That arranges to set `op` to NULL _before_ decref'ing, so that any code - * triggered as a side-effect of `op` getting torn down no longer believes - * `op` points to a valid object. - * - * There are cases where it's safe to use the naive code, but they're brittle. - * For example, if `op` points to a Python integer, you know that destroying - * one of those can't cause problems -- but in part that relies on that - * Python integers aren't currently weakly referencable. Best practice is - * to use Py_CLEAR() even if you can't think of a reason for why you need to. - */ -#define Py_CLEAR(op) \ - do { \ - PyObject *_py_tmp = _PyObject_CAST(op); \ - if (_py_tmp != NULL) { \ - (op) = NULL; \ - Py_DECREF(_py_tmp); \ - } \ - } while (0) - -/* Function to use in case the object pointer can be NULL: */ -static inline void _Py_XINCREF(PyObject *op) -{ - if (op != NULL) { - Py_INCREF(op); - } -} - -#define Py_XINCREF(op) _Py_XINCREF(_PyObject_CAST(op)) - -static inline void _Py_XDECREF(PyObject *op) -{ - if (op != NULL) { - Py_DECREF(op); - } -} - -#define Py_XDECREF(op) _Py_XDECREF(_PyObject_CAST(op)) - -// Create a new strong reference to an object: -// increment the reference count of the object and return the object. -PyAPI_FUNC(PyObject*) Py_NewRef(PyObject *obj); - -// Similar to Py_NewRef(), but the object can be NULL. -PyAPI_FUNC(PyObject*) Py_XNewRef(PyObject *obj); - -static inline PyObject* _Py_NewRef(PyObject *obj) -{ - Py_INCREF(obj); - return obj; -} - -static inline PyObject* _Py_XNewRef(PyObject *obj) -{ - Py_XINCREF(obj); - return obj; -} - -// Py_NewRef() and Py_XNewRef() are exported as functions for the stable ABI. -// Names overridden with macros by static inline functions for best -// performances. -#define Py_NewRef(obj) _Py_NewRef(_PyObject_CAST(obj)) -#define Py_XNewRef(obj) _Py_XNewRef(_PyObject_CAST(obj)) - - -/* -_Py_NoneStruct is an object of undefined type which can be used in contexts -where NULL (nil) is not suitable (since NULL often means 'error'). - -Don't forget to apply Py_INCREF() when returning this value!!! -*/ -PyAPI_DATA(PyObject) _Py_NoneStruct; /* Don't use this directly */ -#define Py_None (&_Py_NoneStruct) - -// Test if an object is the None singleton, the same as "x is None" in Python. -PyAPI_FUNC(int) Py_IsNone(PyObject *x); -#define Py_IsNone(x) Py_Is((x), Py_None) - -/* Macro for returning Py_None from a function */ -#define Py_RETURN_NONE return Py_NewRef(Py_None) - -/* -Py_NotImplemented is a singleton used to signal that an operation is -not implemented for a given type combination. -*/ -PyAPI_DATA(PyObject) _Py_NotImplementedStruct; /* Don't use this directly */ -#define Py_NotImplemented (&_Py_NotImplementedStruct) - -/* Macro for returning Py_NotImplemented from a function */ -#define Py_RETURN_NOTIMPLEMENTED return Py_NewRef(Py_NotImplemented) - -/* Rich comparison opcodes */ -#define Py_LT 0 -#define Py_LE 1 -#define Py_EQ 2 -#define Py_NE 3 -#define Py_GT 4 -#define Py_GE 5 - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -/* Result of calling PyIter_Send */ -typedef enum { - PYGEN_RETURN = 0, - PYGEN_ERROR = -1, - PYGEN_NEXT = 1, -} PySendResult; -#endif - -/* - * Macro for implementing rich comparisons - * - * Needs to be a macro because any C-comparable type can be used. - */ -#define Py_RETURN_RICHCOMPARE(val1, val2, op) \ - do { \ - switch (op) { \ - case Py_EQ: if ((val1) == (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_NE: if ((val1) != (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_LT: if ((val1) < (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_GT: if ((val1) > (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_LE: if ((val1) <= (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_GE: if ((val1) >= (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - default: \ - Py_UNREACHABLE(); \ - } \ - } while (0) - - -/* -More conventions -================ - -Argument Checking ------------------ - -Functions that take objects as arguments normally don't check for nil -arguments, but they do check the type of the argument, and return an -error if the function doesn't apply to the type. - -Failure Modes -------------- - -Functions may fail for a variety of reasons, including running out of -memory. This is communicated to the caller in two ways: an error string -is set (see errors.h), and the function result differs: functions that -normally return a pointer return NULL for failure, functions returning -an integer return -1 (which could be a legal return value too!), and -other functions return 0 for success and -1 for failure. -Callers should always check for errors before using the result. If -an error was set, the caller must either explicitly clear it, or pass -the error on to its caller. - -Reference Counts ----------------- - -It takes a while to get used to the proper usage of reference counts. - -Functions that create an object set the reference count to 1; such new -objects must be stored somewhere or destroyed again with Py_DECREF(). -Some functions that 'store' objects, such as PyTuple_SetItem() and -PyList_SetItem(), -don't increment the reference count of the object, since the most -frequent use is to store a fresh object. Functions that 'retrieve' -objects, such as PyTuple_GetItem() and PyDict_GetItemString(), also -don't increment -the reference count, since most frequently the object is only looked at -quickly. Thus, to retrieve an object and store it again, the caller -must call Py_INCREF() explicitly. - -NOTE: functions that 'consume' a reference count, like -PyList_SetItem(), consume the reference even if the object wasn't -successfully stored, to simplify error handling. - -It seems attractive to make other functions that take an object as -argument consume a reference count; however, this may quickly get -confusing (even the current practice is already confusing). Consider -it carefully, it may save lots of calls to Py_INCREF() and Py_DECREF() at -times. -*/ - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_OBJECT_H -# include "cpython/object.h" -# undef Py_CPYTHON_OBJECT_H -#endif - - -static inline int -PyType_HasFeature(PyTypeObject *type, unsigned long feature) -{ - unsigned long flags; -#ifdef Py_LIMITED_API - // PyTypeObject is opaque in the limited C API - flags = PyType_GetFlags(type); -#else - flags = type->tp_flags; -#endif - return ((flags & feature) != 0); -} - -#define PyType_FastSubclass(type, flag) PyType_HasFeature(type, flag) - -static inline int _PyType_Check(PyObject *op) { - return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS); -} -#define PyType_Check(op) _PyType_Check(_PyObject_CAST(op)) - -static inline int _PyType_CheckExact(PyObject *op) { - return Py_IS_TYPE(op, &PyType_Type); -} -#define PyType_CheckExact(op) _PyType_CheckExact(_PyObject_CAST(op)) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/objimpl.h b/_Pre_Builds/_Python310_cpp/include/objimpl.h deleted file mode 100644 index 450befa..0000000 --- a/_Pre_Builds/_Python310_cpp/include/objimpl.h +++ /dev/null @@ -1,215 +0,0 @@ -/* The PyObject_ memory family: high-level object memory interfaces. - See pymem.h for the low-level PyMem_ family. -*/ - -#ifndef Py_OBJIMPL_H -#define Py_OBJIMPL_H - -#include "pymem.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BEWARE: - - Each interface exports both functions and macros. Extension modules should - use the functions, to ensure binary compatibility across Python versions. - Because the Python implementation is free to change internal details, and - the macros may (or may not) expose details for speed, if you do use the - macros you must recompile your extensions with each Python release. - - Never mix calls to PyObject_ memory functions with calls to the platform - malloc/realloc/ calloc/free, or with calls to PyMem_. -*/ - -/* -Functions and macros for modules that implement new object types. - - - PyObject_New(type, typeobj) allocates memory for a new object of the given - type, and initializes part of it. 'type' must be the C structure type used - to represent the object, and 'typeobj' the address of the corresponding - type object. Reference count and type pointer are filled in; the rest of - the bytes of the object are *undefined*! The resulting expression type is - 'type *'. The size of the object is determined by the tp_basicsize field - of the type object. - - - PyObject_NewVar(type, typeobj, n) is similar but allocates a variable-size - object with room for n items. In addition to the refcount and type pointer - fields, this also fills in the ob_size field. - - - PyObject_Free(op) releases the memory allocated for an object. It does not - run a destructor -- it only frees the memory. PyObject_Free is identical. - - - PyObject_Init(op, typeobj) and PyObject_InitVar(op, typeobj, n) don't - allocate memory. Instead of a 'type' parameter, they take a pointer to a - new object (allocated by an arbitrary allocator), and initialize its object - header fields. - -Note that objects created with PyObject_{New, NewVar} are allocated using the -specialized Python allocator (implemented in obmalloc.c), if WITH_PYMALLOC is -enabled. In addition, a special debugging allocator is used if Py_DEBUG -macro is also defined. - -In case a specific form of memory management is needed (for example, if you -must use the platform malloc heap(s), or shared memory, or C++ local storage or -operator new), you must first allocate the object with your custom allocator, -then pass its pointer to PyObject_{Init, InitVar} for filling in its Python- -specific fields: reference count, type pointer, possibly others. You should -be aware that Python has no control over these objects because they don't -cooperate with the Python memory manager. Such objects may not be eligible -for automatic garbage collection and you have to make sure that they are -released accordingly whenever their destructor gets called (cf. the specific -form of memory management you're using). - -Unless you have specific memory management requirements, use -PyObject_{New, NewVar, Del}. -*/ - -/* - * Raw object memory interface - * =========================== - */ - -/* Functions to call the same malloc/realloc/free as used by Python's - object allocator. If WITH_PYMALLOC is enabled, these may differ from - the platform malloc/realloc/free. The Python object allocator is - designed for fast, cache-conscious allocation of many "small" objects, - and with low hidden memory overhead. - - PyObject_Malloc(0) returns a unique non-NULL pointer if possible. - - PyObject_Realloc(NULL, n) acts like PyObject_Malloc(n). - PyObject_Realloc(p != NULL, 0) does not return NULL, or free the memory - at p. - - Returned pointers must be checked for NULL explicitly; no action is - performed on failure other than to return NULL (no warning it printed, no - exception is set, etc). - - For allocating objects, use PyObject_{New, NewVar} instead whenever - possible. The PyObject_{Malloc, Realloc, Free} family is exposed - so that you can exploit Python's small-block allocator for non-object - uses. If you must use these routines to allocate object memory, make sure - the object gets initialized via PyObject_{Init, InitVar} after obtaining - the raw memory. -*/ -PyAPI_FUNC(void *) PyObject_Malloc(size_t size); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(void *) PyObject_Calloc(size_t nelem, size_t elsize); -#endif -PyAPI_FUNC(void *) PyObject_Realloc(void *ptr, size_t new_size); -PyAPI_FUNC(void) PyObject_Free(void *ptr); - - -// Deprecated aliases only kept for backward compatibility. -// PyObject_Del and PyObject_DEL are defined with no parameter to be able to -// use them as function pointers (ex: tp_free = PyObject_Del). -#define PyObject_MALLOC PyObject_Malloc -#define PyObject_REALLOC PyObject_Realloc -#define PyObject_FREE PyObject_Free -#define PyObject_Del PyObject_Free -#define PyObject_DEL PyObject_Free - - -/* - * Generic object allocator interface - * ================================== - */ - -/* Functions */ -PyAPI_FUNC(PyObject *) PyObject_Init(PyObject *, PyTypeObject *); -PyAPI_FUNC(PyVarObject *) PyObject_InitVar(PyVarObject *, - PyTypeObject *, Py_ssize_t); - -#define PyObject_INIT(op, typeobj) \ - PyObject_Init(_PyObject_CAST(op), (typeobj)) -#define PyObject_INIT_VAR(op, typeobj, size) \ - PyObject_InitVar(_PyVarObject_CAST(op), (typeobj), (size)) - - -PyAPI_FUNC(PyObject *) _PyObject_New(PyTypeObject *); -PyAPI_FUNC(PyVarObject *) _PyObject_NewVar(PyTypeObject *, Py_ssize_t); - -#define PyObject_New(type, typeobj) ((type *)_PyObject_New(typeobj)) - -// Alias to PyObject_New(). In Python 3.8, PyObject_NEW() called directly -// PyObject_MALLOC() with _PyObject_SIZE(). -#define PyObject_NEW(type, typeobj) PyObject_New(type, typeobj) - -#define PyObject_NewVar(type, typeobj, n) \ - ( (type *) _PyObject_NewVar((typeobj), (n)) ) - -// Alias to PyObject_NewVar(). In Python 3.8, PyObject_NEW_VAR() called -// directly PyObject_MALLOC() with _PyObject_VAR_SIZE(). -#define PyObject_NEW_VAR(type, typeobj, n) PyObject_NewVar(type, typeobj, n) - - -/* - * Garbage Collection Support - * ========================== - */ - -/* C equivalent of gc.collect(). */ -PyAPI_FUNC(Py_ssize_t) PyGC_Collect(void); -/* C API for controlling the state of the garbage collector */ -PyAPI_FUNC(int) PyGC_Enable(void); -PyAPI_FUNC(int) PyGC_Disable(void); -PyAPI_FUNC(int) PyGC_IsEnabled(void); - -/* Test if a type has a GC head */ -#define PyType_IS_GC(t) PyType_HasFeature((t), Py_TPFLAGS_HAVE_GC) - -PyAPI_FUNC(PyVarObject *) _PyObject_GC_Resize(PyVarObject *, Py_ssize_t); -#define PyObject_GC_Resize(type, op, n) \ - ( (type *) _PyObject_GC_Resize(_PyVarObject_CAST(op), (n)) ) - - - -PyAPI_FUNC(PyObject *) _PyObject_GC_New(PyTypeObject *); -PyAPI_FUNC(PyVarObject *) _PyObject_GC_NewVar(PyTypeObject *, Py_ssize_t); - -/* Tell the GC to track this object. - * - * See also private _PyObject_GC_TRACK() macro. */ -PyAPI_FUNC(void) PyObject_GC_Track(void *); - -/* Tell the GC to stop tracking this object. - * - * See also private _PyObject_GC_UNTRACK() macro. */ -PyAPI_FUNC(void) PyObject_GC_UnTrack(void *); - -PyAPI_FUNC(void) PyObject_GC_Del(void *); - -#define PyObject_GC_New(type, typeobj) \ - ( (type *) _PyObject_GC_New(typeobj) ) -#define PyObject_GC_NewVar(type, typeobj, n) \ - ( (type *) _PyObject_GC_NewVar((typeobj), (n)) ) - -PyAPI_FUNC(int) PyObject_GC_IsTracked(PyObject *); -PyAPI_FUNC(int) PyObject_GC_IsFinalized(PyObject *); - -/* Utility macro to help write tp_traverse functions. - * To use this macro, the tp_traverse function must name its arguments - * "visit" and "arg". This is intended to keep tp_traverse functions - * looking as much alike as possible. - */ -#define Py_VISIT(op) \ - do { \ - if (op) { \ - int vret = visit(_PyObject_CAST(op), arg); \ - if (vret) \ - return vret; \ - } \ - } while (0) - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_OBJIMPL_H -# include "cpython/objimpl.h" -# undef Py_CPYTHON_OBJIMPL_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OBJIMPL_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/opcode.h b/_Pre_Builds/_Python310_cpp/include/opcode.h deleted file mode 100644 index 5203975..0000000 --- a/_Pre_Builds/_Python310_cpp/include/opcode.h +++ /dev/null @@ -1,172 +0,0 @@ -/* Auto-generated by Tools/scripts/generate_opcode_h.py from Lib/opcode.py */ -#ifndef Py_OPCODE_H -#define Py_OPCODE_H -#ifdef __cplusplus -extern "C" { -#endif - - - /* Instruction opcodes for compiled code */ -#define POP_TOP 1 -#define ROT_TWO 2 -#define ROT_THREE 3 -#define DUP_TOP 4 -#define DUP_TOP_TWO 5 -#define ROT_FOUR 6 -#define NOP 9 -#define UNARY_POSITIVE 10 -#define UNARY_NEGATIVE 11 -#define UNARY_NOT 12 -#define UNARY_INVERT 15 -#define BINARY_MATRIX_MULTIPLY 16 -#define INPLACE_MATRIX_MULTIPLY 17 -#define BINARY_POWER 19 -#define BINARY_MULTIPLY 20 -#define BINARY_MODULO 22 -#define BINARY_ADD 23 -#define BINARY_SUBTRACT 24 -#define BINARY_SUBSCR 25 -#define BINARY_FLOOR_DIVIDE 26 -#define BINARY_TRUE_DIVIDE 27 -#define INPLACE_FLOOR_DIVIDE 28 -#define INPLACE_TRUE_DIVIDE 29 -#define GET_LEN 30 -#define MATCH_MAPPING 31 -#define MATCH_SEQUENCE 32 -#define MATCH_KEYS 33 -#define COPY_DICT_WITHOUT_KEYS 34 -#define WITH_EXCEPT_START 49 -#define GET_AITER 50 -#define GET_ANEXT 51 -#define BEFORE_ASYNC_WITH 52 -#define END_ASYNC_FOR 54 -#define INPLACE_ADD 55 -#define INPLACE_SUBTRACT 56 -#define INPLACE_MULTIPLY 57 -#define INPLACE_MODULO 59 -#define STORE_SUBSCR 60 -#define DELETE_SUBSCR 61 -#define BINARY_LSHIFT 62 -#define BINARY_RSHIFT 63 -#define BINARY_AND 64 -#define BINARY_XOR 65 -#define BINARY_OR 66 -#define INPLACE_POWER 67 -#define GET_ITER 68 -#define GET_YIELD_FROM_ITER 69 -#define PRINT_EXPR 70 -#define LOAD_BUILD_CLASS 71 -#define YIELD_FROM 72 -#define GET_AWAITABLE 73 -#define LOAD_ASSERTION_ERROR 74 -#define INPLACE_LSHIFT 75 -#define INPLACE_RSHIFT 76 -#define INPLACE_AND 77 -#define INPLACE_XOR 78 -#define INPLACE_OR 79 -#define LIST_TO_TUPLE 82 -#define RETURN_VALUE 83 -#define IMPORT_STAR 84 -#define SETUP_ANNOTATIONS 85 -#define YIELD_VALUE 86 -#define POP_BLOCK 87 -#define POP_EXCEPT 89 -#define HAVE_ARGUMENT 90 -#define STORE_NAME 90 -#define DELETE_NAME 91 -#define UNPACK_SEQUENCE 92 -#define FOR_ITER 93 -#define UNPACK_EX 94 -#define STORE_ATTR 95 -#define DELETE_ATTR 96 -#define STORE_GLOBAL 97 -#define DELETE_GLOBAL 98 -#define ROT_N 99 -#define LOAD_CONST 100 -#define LOAD_NAME 101 -#define BUILD_TUPLE 102 -#define BUILD_LIST 103 -#define BUILD_SET 104 -#define BUILD_MAP 105 -#define LOAD_ATTR 106 -#define COMPARE_OP 107 -#define IMPORT_NAME 108 -#define IMPORT_FROM 109 -#define JUMP_FORWARD 110 -#define JUMP_IF_FALSE_OR_POP 111 -#define JUMP_IF_TRUE_OR_POP 112 -#define JUMP_ABSOLUTE 113 -#define POP_JUMP_IF_FALSE 114 -#define POP_JUMP_IF_TRUE 115 -#define LOAD_GLOBAL 116 -#define IS_OP 117 -#define CONTAINS_OP 118 -#define RERAISE 119 -#define JUMP_IF_NOT_EXC_MATCH 121 -#define SETUP_FINALLY 122 -#define LOAD_FAST 124 -#define STORE_FAST 125 -#define DELETE_FAST 126 -#define GEN_START 129 -#define RAISE_VARARGS 130 -#define CALL_FUNCTION 131 -#define MAKE_FUNCTION 132 -#define BUILD_SLICE 133 -#define LOAD_CLOSURE 135 -#define LOAD_DEREF 136 -#define STORE_DEREF 137 -#define DELETE_DEREF 138 -#define CALL_FUNCTION_KW 141 -#define CALL_FUNCTION_EX 142 -#define SETUP_WITH 143 -#define EXTENDED_ARG 144 -#define LIST_APPEND 145 -#define SET_ADD 146 -#define MAP_ADD 147 -#define LOAD_CLASSDEREF 148 -#define MATCH_CLASS 152 -#define SETUP_ASYNC_WITH 154 -#define FORMAT_VALUE 155 -#define BUILD_CONST_KEY_MAP 156 -#define BUILD_STRING 157 -#define LOAD_METHOD 160 -#define CALL_METHOD 161 -#define LIST_EXTEND 162 -#define SET_UPDATE 163 -#define DICT_MERGE 164 -#define DICT_UPDATE 165 -#ifdef NEED_OPCODE_JUMP_TABLES -static uint32_t _PyOpcode_RelativeJump[8] = { - 0U, - 0U, - 536870912U, - 67125248U, - 67141632U, - 0U, - 0U, - 0U, -}; -static uint32_t _PyOpcode_Jump[8] = { - 0U, - 0U, - 536870912U, - 101695488U, - 67141632U, - 0U, - 0U, - 0U, -}; -#endif /* OPCODE_TABLES */ - -/* EXCEPT_HANDLER is a special, implicit block type which is created when - entering an except handler. It is not an opcode but we define it here - as we want it to be available to both frameobject.c and ceval.c, while - remaining private.*/ -#define EXCEPT_HANDLER 257 - -#define HAS_ARG(op) ((op) >= HAVE_ARGUMENT) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OPCODE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/osdefs.h b/_Pre_Builds/_Python310_cpp/include/osdefs.h deleted file mode 100644 index 3243944..0000000 --- a/_Pre_Builds/_Python310_cpp/include/osdefs.h +++ /dev/null @@ -1,51 +0,0 @@ -#ifndef Py_OSDEFS_H -#define Py_OSDEFS_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Operating system dependencies */ - -#ifdef MS_WINDOWS -#define SEP L'\\' -#define ALTSEP L'/' -#define MAXPATHLEN 256 -#define DELIM L';' -#endif - -#ifdef __VXWORKS__ -#define DELIM L';' -#endif - -/* Filename separator */ -#ifndef SEP -#define SEP L'/' -#endif - -/* Max pathname length */ -#ifdef __hpux -#include -#include -#ifndef PATH_MAX -#define PATH_MAX MAXPATHLEN -#endif -#endif - -#ifndef MAXPATHLEN -#if defined(PATH_MAX) && PATH_MAX > 1024 -#define MAXPATHLEN PATH_MAX -#else -#define MAXPATHLEN 1024 -#endif -#endif - -/* Search path entry delimiter */ -#ifndef DELIM -#define DELIM L':' -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OSDEFS_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/osmodule.h b/_Pre_Builds/_Python310_cpp/include/osmodule.h deleted file mode 100644 index 9095c2f..0000000 --- a/_Pre_Builds/_Python310_cpp/include/osmodule.h +++ /dev/null @@ -1,17 +0,0 @@ - -/* os module interface */ - -#ifndef Py_OSMODULE_H -#define Py_OSMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_FUNC(PyObject *) PyOS_FSPath(PyObject *path); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OSMODULE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/patchlevel.h b/_Pre_Builds/_Python310_cpp/include/patchlevel.h deleted file mode 100644 index a4c3636..0000000 --- a/_Pre_Builds/_Python310_cpp/include/patchlevel.h +++ /dev/null @@ -1,35 +0,0 @@ - -/* Python version identification scheme. - - When the major or minor version changes, the VERSION variable in - configure.ac must also be changed. - - There is also (independent) API version information in modsupport.h. -*/ - -/* Values for PY_RELEASE_LEVEL */ -#define PY_RELEASE_LEVEL_ALPHA 0xA -#define PY_RELEASE_LEVEL_BETA 0xB -#define PY_RELEASE_LEVEL_GAMMA 0xC /* For release candidates */ -#define PY_RELEASE_LEVEL_FINAL 0xF /* Serial should be 0 here */ - /* Higher for patch releases */ - -/* Version parsed out into numeric values */ -/*--start constants--*/ -#define PY_MAJOR_VERSION 3 -#define PY_MINOR_VERSION 10 -#define PY_MICRO_VERSION 13 -#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL -#define PY_RELEASE_SERIAL 0 - -/* Version as a string */ -#define PY_VERSION "3.10.13" -/*--end constants--*/ - -/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2. - Use this for numeric comparisons, e.g. #if PY_VERSION_HEX >= ... */ -#define PY_VERSION_HEX ((PY_MAJOR_VERSION << 24) | \ - (PY_MINOR_VERSION << 16) | \ - (PY_MICRO_VERSION << 8) | \ - (PY_RELEASE_LEVEL << 4) | \ - (PY_RELEASE_SERIAL << 0)) diff --git a/_Pre_Builds/_Python310_cpp/include/py_curses.h b/_Pre_Builds/_Python310_cpp/include/py_curses.h deleted file mode 100644 index b70252d..0000000 --- a/_Pre_Builds/_Python310_cpp/include/py_curses.h +++ /dev/null @@ -1,99 +0,0 @@ - -#ifndef Py_CURSES_H -#define Py_CURSES_H - -#ifdef __APPLE__ -/* -** On Mac OS X 10.2 [n]curses.h and stdlib.h use different guards -** against multiple definition of wchar_t. -*/ -#ifdef _BSD_WCHAR_T_DEFINED_ -#define _WCHAR_T -#endif -#endif /* __APPLE__ */ - -/* On FreeBSD, [n]curses.h and stdlib.h/wchar.h use different guards - against multiple definition of wchar_t and wint_t. */ -#if defined(__FreeBSD__) && defined(_XOPEN_SOURCE_EXTENDED) -# ifndef __wchar_t -# define __wchar_t -# endif -# ifndef __wint_t -# define __wint_t -# endif -#endif - -#if !defined(HAVE_CURSES_IS_PAD) && defined(WINDOW_HAS_FLAGS) -/* The following definition is necessary for ncurses 5.7; without it, - some of [n]curses.h set NCURSES_OPAQUE to 1, and then Python - can't get at the WINDOW flags field. */ -#define NCURSES_OPAQUE 0 -#endif - -#ifdef HAVE_NCURSES_H -#include -#else -#include -#endif - -#ifdef HAVE_NCURSES_H -/* configure was checking , but we will - use , which has some or all these features. */ -#if !defined(WINDOW_HAS_FLAGS) && !(NCURSES_OPAQUE+0) -#define WINDOW_HAS_FLAGS 1 -#endif -#if !defined(HAVE_CURSES_IS_PAD) && NCURSES_VERSION_PATCH+0 >= 20090906 -#define HAVE_CURSES_IS_PAD 1 -#endif -#ifndef MVWDELCH_IS_EXPRESSION -#define MVWDELCH_IS_EXPRESSION 1 -#endif -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -#define PyCurses_API_pointers 4 - -/* Type declarations */ - -typedef struct { - PyObject_HEAD - WINDOW *win; - char *encoding; -} PyCursesWindowObject; - -#define PyCursesWindow_Check(v) Py_IS_TYPE(v, &PyCursesWindow_Type) - -#define PyCurses_CAPSULE_NAME "_curses._C_API" - - -#ifdef CURSES_MODULE -/* This section is used when compiling _cursesmodule.c */ - -#else -/* This section is used in modules that use the _cursesmodule API */ - -static void **PyCurses_API; - -#define PyCursesWindow_Type (*(PyTypeObject *) PyCurses_API[0]) -#define PyCursesSetupTermCalled {if (! ((int (*)(void))PyCurses_API[1]) () ) return NULL;} -#define PyCursesInitialised {if (! ((int (*)(void))PyCurses_API[2]) () ) return NULL;} -#define PyCursesInitialisedColor {if (! ((int (*)(void))PyCurses_API[3]) () ) return NULL;} - -#define import_curses() \ - PyCurses_API = (void **)PyCapsule_Import(PyCurses_CAPSULE_NAME, 1); - -#endif - -/* general error messages */ -static const char catchall_ERR[] = "curses function returned ERR"; -static const char catchall_NULL[] = "curses function returned NULL"; - -#ifdef __cplusplus -} -#endif - -#endif /* !defined(Py_CURSES_H) */ - diff --git a/_Pre_Builds/_Python310_cpp/include/pycapsule.h b/_Pre_Builds/_Python310_cpp/include/pycapsule.h deleted file mode 100644 index fb5d503..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pycapsule.h +++ /dev/null @@ -1,59 +0,0 @@ - -/* Capsule objects let you wrap a C "void *" pointer in a Python - object. They're a way of passing data through the Python interpreter - without creating your own custom type. - - Capsules are used for communication between extension modules. - They provide a way for an extension module to export a C interface - to other extension modules, so that extension modules can use the - Python import mechanism to link to one another. - - For more information, please see "c-api/capsule.html" in the - documentation. -*/ - -#ifndef Py_CAPSULE_H -#define Py_CAPSULE_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyCapsule_Type; - -typedef void (*PyCapsule_Destructor)(PyObject *); - -#define PyCapsule_CheckExact(op) Py_IS_TYPE(op, &PyCapsule_Type) - - -PyAPI_FUNC(PyObject *) PyCapsule_New( - void *pointer, - const char *name, - PyCapsule_Destructor destructor); - -PyAPI_FUNC(void *) PyCapsule_GetPointer(PyObject *capsule, const char *name); - -PyAPI_FUNC(PyCapsule_Destructor) PyCapsule_GetDestructor(PyObject *capsule); - -PyAPI_FUNC(const char *) PyCapsule_GetName(PyObject *capsule); - -PyAPI_FUNC(void *) PyCapsule_GetContext(PyObject *capsule); - -PyAPI_FUNC(int) PyCapsule_IsValid(PyObject *capsule, const char *name); - -PyAPI_FUNC(int) PyCapsule_SetPointer(PyObject *capsule, void *pointer); - -PyAPI_FUNC(int) PyCapsule_SetDestructor(PyObject *capsule, PyCapsule_Destructor destructor); - -PyAPI_FUNC(int) PyCapsule_SetName(PyObject *capsule, const char *name); - -PyAPI_FUNC(int) PyCapsule_SetContext(PyObject *capsule, void *context); - -PyAPI_FUNC(void *) PyCapsule_Import( - const char *name, /* UTF-8 encoded string */ - int no_block); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CAPSULE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pyconfig.h b/_Pre_Builds/_Python310_cpp/include/pyconfig.h deleted file mode 100644 index 103e647..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pyconfig.h +++ /dev/null @@ -1,690 +0,0 @@ -#ifndef Py_CONFIG_H -#define Py_CONFIG_H - -/* pyconfig.h. NOT Generated automatically by configure. - -This is a manually maintained version used for the Watcom, -Borland and Microsoft Visual C++ compilers. It is a -standard part of the Python distribution. - -WINDOWS DEFINES: -The code specific to Windows should be wrapped around one of -the following #defines - -MS_WIN64 - Code specific to the MS Win64 API -MS_WIN32 - Code specific to the MS Win32 (and Win64) API (obsolete, this covers all supported APIs) -MS_WINDOWS - Code specific to Windows, but all versions. -Py_ENABLE_SHARED - Code if the Python core is built as a DLL. - -Also note that neither "_M_IX86" or "_MSC_VER" should be used for -any purpose other than "Windows Intel x86 specific" and "Microsoft -compiler specific". Therefore, these should be very rare. - - -NOTE: The following symbols are deprecated: -NT, USE_DL_EXPORT, USE_DL_IMPORT, DL_EXPORT, DL_IMPORT -MS_CORE_DLL. - -WIN32 is still required for the locale module. - -*/ - -/* Deprecated USE_DL_EXPORT macro - please use Py_BUILD_CORE */ -#ifdef USE_DL_EXPORT -# define Py_BUILD_CORE -#endif /* USE_DL_EXPORT */ - -/* Visual Studio 2005 introduces deprecation warnings for - "insecure" and POSIX functions. The insecure functions should - be replaced by *_s versions (according to Microsoft); the - POSIX functions by _* versions (which, according to Microsoft, - would be ISO C conforming). Neither renaming is feasible, so - we just silence the warnings. */ - -#ifndef _CRT_SECURE_NO_DEPRECATE -#define _CRT_SECURE_NO_DEPRECATE 1 -#endif -#ifndef _CRT_NONSTDC_NO_DEPRECATE -#define _CRT_NONSTDC_NO_DEPRECATE 1 -#endif - -#define HAVE_IO_H -#define HAVE_SYS_UTIME_H -#define HAVE_TEMPNAM -#define HAVE_TMPFILE -#define HAVE_TMPNAM -#define HAVE_CLOCK -#define HAVE_STRERROR - -#include - -#define HAVE_HYPOT -#define HAVE_STRFTIME -#define DONT_HAVE_SIG_ALARM -#define DONT_HAVE_SIG_PAUSE -#define LONG_BIT 32 -#define WORD_BIT 32 - -#define MS_WIN32 /* only support win32 and greater. */ -#define MS_WINDOWS -#ifndef PYTHONPATH -# define PYTHONPATH L".\\DLLs;.\\lib" -#endif -#define NT_THREADS -#define WITH_THREAD -#ifndef NETSCAPE_PI -#define USE_SOCKET -#endif - - -/* Compiler specific defines */ - -/* ------------------------------------------------------------------------*/ -/* Microsoft C defines _MSC_VER */ -#ifdef _MSC_VER - -/* We want COMPILER to expand to a string containing _MSC_VER's *value*. - * This is horridly tricky, because the stringization operator only works - * on macro arguments, and doesn't evaluate macros passed *as* arguments. - * Attempts simpler than the following appear doomed to produce "_MSC_VER" - * literally in the string. - */ -#define _Py_PASTE_VERSION(SUFFIX) \ - ("[MSC v." _Py_STRINGIZE(_MSC_VER) " " SUFFIX "]") -/* e.g., this produces, after compile-time string catenation, - * ("[MSC v.1200 32 bit (Intel)]") - * - * _Py_STRINGIZE(_MSC_VER) expands to - * _Py_STRINGIZE1((_MSC_VER)) expands to - * _Py_STRINGIZE2(_MSC_VER) but as this call is the result of token-pasting - * it's scanned again for macros and so further expands to (under MSVC 6) - * _Py_STRINGIZE2(1200) which then expands to - * "1200" - */ -#define _Py_STRINGIZE(X) _Py_STRINGIZE1((X)) -#define _Py_STRINGIZE1(X) _Py_STRINGIZE2 ## X -#define _Py_STRINGIZE2(X) #X - -/* MSVC defines _WINxx to differentiate the windows platform types - - Note that for compatibility reasons _WIN32 is defined on Win32 - *and* on Win64. For the same reasons, in Python, MS_WIN32 is - defined on Win32 *and* Win64. Win32 only code must therefore be - guarded as follows: - #if defined(MS_WIN32) && !defined(MS_WIN64) -*/ -#ifdef _WIN64 -#define MS_WIN64 -#endif - -/* set the COMPILER */ -#ifdef MS_WIN64 -#if defined(_M_X64) || defined(_M_AMD64) -#if defined(__INTEL_COMPILER) -#define COMPILER ("[ICC v." _Py_STRINGIZE(__INTEL_COMPILER) " 64 bit (amd64) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]") -#else -#define COMPILER _Py_PASTE_VERSION("64 bit (AMD64)") -#endif /* __INTEL_COMPILER */ -#define PYD_PLATFORM_TAG "win_amd64" -#elif defined(_M_ARM64) -#define COMPILER _Py_PASTE_VERSION("64 bit (ARM64)") -#define PYD_PLATFORM_TAG "win_arm64" -#else -#define COMPILER _Py_PASTE_VERSION("64 bit (Unknown)") -#endif -#endif /* MS_WIN64 */ - -/* set the version macros for the windows headers */ -/* Python 3.9+ requires Windows 8 or greater */ -#define Py_WINVER 0x0602 /* _WIN32_WINNT_WIN8 */ -#define Py_NTDDI NTDDI_WIN8 - -/* We only set these values when building Python - we don't want to force - these values on extensions, as that will affect the prototypes and - structures exposed in the Windows headers. Even when building Python, we - allow a single source file to override this - they may need access to - structures etc so it can optionally use new Windows features if it - determines at runtime they are available. -*/ -#if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_BUILTIN) || defined(Py_BUILD_CORE_MODULE) -#ifndef NTDDI_VERSION -#define NTDDI_VERSION Py_NTDDI -#endif -#ifndef WINVER -#define WINVER Py_WINVER -#endif -#ifndef _WIN32_WINNT -#define _WIN32_WINNT Py_WINVER -#endif -#endif - -/* _W64 is not defined for VC6 or eVC4 */ -#ifndef _W64 -#define _W64 -#endif - -/* Define like size_t, omitting the "unsigned" */ -#ifdef MS_WIN64 -typedef __int64 Py_ssize_t; -#else -typedef _W64 int Py_ssize_t; -#endif -#define HAVE_PY_SSIZE_T 1 - -#if defined(MS_WIN32) && !defined(MS_WIN64) -#if defined(_M_IX86) -#if defined(__INTEL_COMPILER) -#define COMPILER ("[ICC v." _Py_STRINGIZE(__INTEL_COMPILER) " 32 bit (Intel) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]") -#else -#define COMPILER _Py_PASTE_VERSION("32 bit (Intel)") -#endif /* __INTEL_COMPILER */ -#define PYD_PLATFORM_TAG "win32" -#elif defined(_M_ARM) -#define COMPILER _Py_PASTE_VERSION("32 bit (ARM)") -#define PYD_PLATFORM_TAG "win_arm32" -#else -#define COMPILER _Py_PASTE_VERSION("32 bit (Unknown)") -#endif -#endif /* MS_WIN32 && !MS_WIN64 */ - -typedef int pid_t; - -#include -#define Py_IS_NAN _isnan -#define Py_IS_INFINITY(X) (!_finite(X) && !_isnan(X)) -#define Py_IS_FINITE(X) _finite(X) - -/* define some ANSI types that are not defined in earlier Win headers */ -#if _MSC_VER >= 1200 -/* This file only exists in VC 6.0 or higher */ -#include -#endif - -#endif /* _MSC_VER */ - -/* ------------------------------------------------------------------------*/ -/* egcs/gnu-win32 defines __GNUC__ and _WIN32 */ -#if defined(__GNUC__) && defined(_WIN32) -/* XXX These defines are likely incomplete, but should be easy to fix. - They should be complete enough to build extension modules. */ -/* Suggested by Rene Liebscher to avoid a GCC 2.91.* - bug that requires structure imports. More recent versions of the - compiler don't exhibit this bug. -*/ -#if (__GNUC__==2) && (__GNUC_MINOR__<=91) -#warning "Please use an up-to-date version of gcc! (>2.91 recommended)" -#endif - -#define COMPILER "[gcc]" -#define PY_LONG_LONG long long -#define PY_LLONG_MIN LLONG_MIN -#define PY_LLONG_MAX LLONG_MAX -#define PY_ULLONG_MAX ULLONG_MAX -#endif /* GNUC */ - -/* ------------------------------------------------------------------------*/ -/* lcc-win32 defines __LCC__ */ -#if defined(__LCC__) -/* XXX These defines are likely incomplete, but should be easy to fix. - They should be complete enough to build extension modules. */ - -#define COMPILER "[lcc-win32]" -typedef int pid_t; -/* __declspec() is supported here too - do nothing to get the defaults */ - -#endif /* LCC */ - -/* ------------------------------------------------------------------------*/ -/* End of compilers - finish up */ - -#ifndef NO_STDIO_H -# include -#endif - -/* 64 bit ints are usually spelt __int64 unless compiler has overridden */ -#ifndef PY_LONG_LONG -# define PY_LONG_LONG __int64 -# define PY_LLONG_MAX _I64_MAX -# define PY_LLONG_MIN _I64_MIN -# define PY_ULLONG_MAX _UI64_MAX -#endif - -/* For Windows the Python core is in a DLL by default. Test -Py_NO_ENABLE_SHARED to find out. Also support MS_NO_COREDLL for b/w compat */ -#if !defined(MS_NO_COREDLL) && !defined(Py_NO_ENABLE_SHARED) -# define Py_ENABLE_SHARED 1 /* standard symbol for shared library */ -# define MS_COREDLL /* deprecated old symbol */ -#endif /* !MS_NO_COREDLL && ... */ - -/* All windows compilers that use this header support __declspec */ -#define HAVE_DECLSPEC_DLL - -/* For an MSVC DLL, we can nominate the .lib files used by extensions */ -#ifdef MS_COREDLL -# if !defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_BUILTIN) - /* not building the core - must be an ext */ -# if defined(_MSC_VER) - /* So MSVC users need not specify the .lib - file in their Makefile (other compilers are - generally taken care of by distutils.) */ -# if defined(_DEBUG) -# pragma comment(lib,"python310_d.lib") -# elif defined(Py_LIMITED_API) -# pragma comment(lib,"python3.lib") -# else -# pragma comment(lib,"python310.lib") -# endif /* _DEBUG */ -# endif /* _MSC_VER */ -# endif /* Py_BUILD_CORE */ -#endif /* MS_COREDLL */ - -#if defined(MS_WIN64) -/* maintain "win32" sys.platform for backward compatibility of Python code, - the Win64 API should be close enough to the Win32 API to make this - preferable */ -# define PLATFORM "win32" -# define SIZEOF_VOID_P 8 -# define SIZEOF_TIME_T 8 -# define SIZEOF_OFF_T 4 -# define SIZEOF_FPOS_T 8 -# define SIZEOF_HKEY 8 -# define SIZEOF_SIZE_T 8 -# define ALIGNOF_SIZE_T 8 -/* configure.ac defines HAVE_LARGEFILE_SUPPORT iff - sizeof(off_t) > sizeof(long), and sizeof(long long) >= sizeof(off_t). - On Win64 the second condition is not true, but if fpos_t replaces off_t - then this is true. The uses of HAVE_LARGEFILE_SUPPORT imply that Win64 - should define this. */ -# define HAVE_LARGEFILE_SUPPORT -#elif defined(MS_WIN32) -# define PLATFORM "win32" -# define HAVE_LARGEFILE_SUPPORT -# define SIZEOF_VOID_P 4 -# define SIZEOF_OFF_T 4 -# define SIZEOF_FPOS_T 8 -# define SIZEOF_HKEY 4 -# define SIZEOF_SIZE_T 4 -# define ALIGNOF_SIZE_T 4 - /* MS VS2005 changes time_t to a 64-bit type on all platforms */ -# if defined(_MSC_VER) && _MSC_VER >= 1400 -# define SIZEOF_TIME_T 8 -# else -# define SIZEOF_TIME_T 4 -# endif -#endif - -#ifdef _DEBUG -# define Py_DEBUG -#endif - - -#ifdef MS_WIN32 - -#define SIZEOF_SHORT 2 -#define SIZEOF_INT 4 -#define SIZEOF_LONG 4 -#define ALIGNOF_LONG 4 -#define SIZEOF_LONG_LONG 8 -#define SIZEOF_DOUBLE 8 -#define SIZEOF_FLOAT 4 - -/* VC 7.1 has them and VC 6.0 does not. VC 6.0 has a version number of 1200. - Microsoft eMbedded Visual C++ 4.0 has a version number of 1201 and doesn't - define these. - If some compiler does not provide them, modify the #if appropriately. */ -#if defined(_MSC_VER) -#if _MSC_VER > 1300 -#define HAVE_UINTPTR_T 1 -#define HAVE_INTPTR_T 1 -#else -/* VC6, VS 2002 and eVC4 don't support the C99 LL suffix for 64-bit integer literals */ -#define Py_LL(x) x##I64 -#endif /* _MSC_VER > 1300 */ -#endif /* _MSC_VER */ - -#endif - -/* define signed and unsigned exact-width 32-bit and 64-bit types, used in the - implementation of Python integers. */ -#define PY_UINT32_T uint32_t -#define PY_UINT64_T uint64_t -#define PY_INT32_T int32_t -#define PY_INT64_T int64_t - -/* Fairly standard from here! */ - -/* Define to 1 if you have the `copysign' function. */ -#define HAVE_COPYSIGN 1 - -/* Define to 1 if you have the `round' function. */ -#if _MSC_VER >= 1800 -#define HAVE_ROUND 1 -#endif - -/* Define to 1 if you have the `isinf' macro. */ -#define HAVE_DECL_ISINF 1 - -/* Define to 1 if you have the `isnan' function. */ -#define HAVE_DECL_ISNAN 1 - -/* Define if on AIX 3. - System headers sometimes define this. - We just want to avoid a redefinition error message. */ -#ifndef _ALL_SOURCE -/* #undef _ALL_SOURCE */ -#endif - -/* Define to empty if the keyword does not work. */ -/* #define const */ - -/* Define to 1 if you have the header file. */ -#define HAVE_CONIO_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_DIRECT_H 1 - -/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't. - */ -#define HAVE_DECL_TZNAME 1 - -/* Define if you have dirent.h. */ -/* #define DIRENT 1 */ - -/* Define to the type of elements in the array set by `getgroups'. - Usually this is either `int' or `gid_t'. */ -/* #undef GETGROUPS_T */ - -/* Define to `int' if doesn't define. */ -/* #undef gid_t */ - -/* Define if your struct tm has tm_zone. */ -/* #undef HAVE_TM_ZONE */ - -/* Define if you don't have tm_zone but do have the external array - tzname. */ -#define HAVE_TZNAME - -/* Define to `int' if doesn't define. */ -/* #undef mode_t */ - -/* Define if you don't have dirent.h, but have ndir.h. */ -/* #undef NDIR */ - -/* Define to `long' if doesn't define. */ -/* #undef off_t */ - -/* Define to `int' if doesn't define. */ -/* #undef pid_t */ - -/* Define if the system does not provide POSIX.1 features except - with this defined. */ -/* #undef _POSIX_1_SOURCE */ - -/* Define if you need to in order for stat and other things to work. */ -/* #undef _POSIX_SOURCE */ - -/* Define as the return type of signal handlers (int or void). */ -#define RETSIGTYPE void - -/* Define to `unsigned' if doesn't define. */ -/* #undef size_t */ - -/* Define if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Define if you don't have dirent.h, but have sys/dir.h. */ -/* #undef SYSDIR */ - -/* Define if you don't have dirent.h, but have sys/ndir.h. */ -/* #undef SYSNDIR */ - -/* Define if you can safely include both and . */ -/* #undef TIME_WITH_SYS_TIME */ - -/* Define if your declares struct tm. */ -/* #define TM_IN_SYS_TIME 1 */ - -/* Define to `int' if doesn't define. */ -/* #undef uid_t */ - -/* Define if the closedir function returns void instead of int. */ -/* #undef VOID_CLOSEDIR */ - -/* Define if getpgrp() must be called as getpgrp(0) - and (consequently) setpgrp() as setpgrp(0, 0). */ -/* #undef GETPGRP_HAVE_ARGS */ - -/* Define this if your time.h defines altzone */ -/* #define HAVE_ALTZONE */ - -/* Define if you have the putenv function. */ -#define HAVE_PUTENV - -/* Define if your compiler supports function prototypes */ -#define HAVE_PROTOTYPES - -/* Define if you can safely include both and - (which you can't on SCO ODT 3.0). */ -/* #undef SYS_SELECT_WITH_SYS_TIME */ - -/* Define if you want build the _decimal module using a coroutine-local rather - than a thread-local context */ -#define WITH_DECIMAL_CONTEXTVAR 1 - -/* Define if you want documentation strings in extension modules */ -#define WITH_DOC_STRINGS 1 - -/* Define if you want to compile in rudimentary thread support */ -/* #undef WITH_THREAD */ - -/* Define if you want to use the GNU readline library */ -/* #define WITH_READLINE 1 */ - -/* Use Python's own small-block memory-allocator. */ -#define WITH_PYMALLOC 1 - -/* Define if you have clock. */ -/* #define HAVE_CLOCK */ - -/* Define when any dynamic module loading is enabled */ -#define HAVE_DYNAMIC_LOADING - -/* Define if you have ftime. */ -#define HAVE_FTIME - -/* Define if you have getpeername. */ -#define HAVE_GETPEERNAME - -/* Define if you have getpgrp. */ -/* #undef HAVE_GETPGRP */ - -/* Define if you have getpid. */ -#define HAVE_GETPID - -/* Define if you have gettimeofday. */ -/* #undef HAVE_GETTIMEOFDAY */ - -/* Define if you have getwd. */ -/* #undef HAVE_GETWD */ - -/* Define if you have lstat. */ -/* #undef HAVE_LSTAT */ - -/* Define if you have the mktime function. */ -#define HAVE_MKTIME - -/* Define if you have nice. */ -/* #undef HAVE_NICE */ - -/* Define if you have readlink. */ -/* #undef HAVE_READLINK */ - -/* Define if you have setpgid. */ -/* #undef HAVE_SETPGID */ - -/* Define if you have setpgrp. */ -/* #undef HAVE_SETPGRP */ - -/* Define if you have setsid. */ -/* #undef HAVE_SETSID */ - -/* Define if you have setvbuf. */ -#define HAVE_SETVBUF - -/* Define if you have siginterrupt. */ -/* #undef HAVE_SIGINTERRUPT */ - -/* Define if you have symlink. */ -/* #undef HAVE_SYMLINK */ - -/* Define if you have tcgetpgrp. */ -/* #undef HAVE_TCGETPGRP */ - -/* Define if you have tcsetpgrp. */ -/* #undef HAVE_TCSETPGRP */ - -/* Define if you have times. */ -/* #undef HAVE_TIMES */ - -/* Define if you have uname. */ -/* #undef HAVE_UNAME */ - -/* Define if you have waitpid. */ -/* #undef HAVE_WAITPID */ - -/* Define to 1 if you have the `wcsftime' function. */ -#if defined(_MSC_VER) && _MSC_VER >= 1310 -#define HAVE_WCSFTIME 1 -#endif - -/* Define to 1 if you have the `wcscoll' function. */ -#define HAVE_WCSCOLL 1 - -/* Define to 1 if you have the `wcsxfrm' function. */ -#define HAVE_WCSXFRM 1 - -/* Define if the zlib library has inflateCopy */ -#define HAVE_ZLIB_COPY 1 - -/* Define if you have the header file. */ -/* #undef HAVE_DLFCN_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_ERRNO_H 1 - -/* Define if you have the header file. */ -#define HAVE_FCNTL_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_PROCESS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SIGNAL_H 1 - -/* Define if you have the prototypes. */ -#define HAVE_STDARG_PROTOTYPES - -/* Define if you have the header file. */ -#define HAVE_STDDEF_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_SYS_AUDIOIO_H */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_PARAM_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_SELECT_H 1 */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define if you have the header file. */ -/* #define HAVE_SYS_TIME_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_TIMES_H 1 */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define if you have the header file. */ -/* #define HAVE_SYS_UN_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_UTIME_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_UTSNAME_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_UNISTD_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_UTIME_H 1 */ - -/* Define if the compiler provides a wchar.h header file. */ -#define HAVE_WCHAR_H 1 - -/* The size of `wchar_t', as computed by sizeof. */ -#define SIZEOF_WCHAR_T 2 - -/* The size of `_Bool', as computed by sizeof. */ -#define SIZEOF__BOOL 1 - -/* The size of `pid_t', as computed by sizeof. */ -#define SIZEOF_PID_T SIZEOF_INT - -/* Define if you have the dl library (-ldl). */ -/* #undef HAVE_LIBDL */ - -/* Define if you have the mpc library (-lmpc). */ -/* #undef HAVE_LIBMPC */ - -/* Define if you have the nsl library (-lnsl). */ -#define HAVE_LIBNSL 1 - -/* Define if you have the seq library (-lseq). */ -/* #undef HAVE_LIBSEQ */ - -/* Define if you have the socket library (-lsocket). */ -#define HAVE_LIBSOCKET 1 - -/* Define if you have the sun library (-lsun). */ -/* #undef HAVE_LIBSUN */ - -/* Define if you have the termcap library (-ltermcap). */ -/* #undef HAVE_LIBTERMCAP */ - -/* Define if you have the termlib library (-ltermlib). */ -/* #undef HAVE_LIBTERMLIB */ - -/* Define if you have the thread library (-lthread). */ -/* #undef HAVE_LIBTHREAD */ - -/* WinSock does not use a bitmask in select, and uses - socket handles greater than FD_SETSIZE */ -#define Py_SOCKET_FD_CAN_BE_GE_FD_SETSIZE - -/* Define if C doubles are 64-bit IEEE 754 binary format, stored with the - least significant byte first */ -#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 1 - -/* Define to 1 if you have the `erf' function. */ -#define HAVE_ERF 1 - -/* Define to 1 if you have the `erfc' function. */ -#define HAVE_ERFC 1 - -/* Define if you have the 'inet_pton' function. */ -#define HAVE_INET_PTON 1 - -/* framework name */ -#define _PYTHONFRAMEWORK "" - -/* Define if libssl has X509_VERIFY_PARAM_set1_host and related function */ -#define HAVE_X509_VERIFY_PARAM_SET1_HOST 1 - -#define PLATLIBDIR "lib" - -#endif /* !Py_CONFIG_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pydtrace.d b/_Pre_Builds/_Python310_cpp/include/pydtrace.d deleted file mode 100644 index 5e6a626..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pydtrace.d +++ /dev/null @@ -1,22 +0,0 @@ -/* Python DTrace provider */ - -provider python { - probe function__entry(const char *, const char *, int); - probe function__return(const char *, const char *, int); - probe instance__new__start(const char *, const char *); - probe instance__new__done(const char *, const char *); - probe instance__delete__start(const char *, const char *); - probe instance__delete__done(const char *, const char *); - probe line(const char *, const char *, int); - probe gc__start(int); - probe gc__done(long); - probe import__find__load__start(const char *); - probe import__find__load__done(const char *, int); - probe audit(const char *, void *); -}; - -#pragma D attributes Evolving/Evolving/Common provider python provider -#pragma D attributes Evolving/Evolving/Common provider python module -#pragma D attributes Evolving/Evolving/Common provider python function -#pragma D attributes Evolving/Evolving/Common provider python name -#pragma D attributes Evolving/Evolving/Common provider python args diff --git a/_Pre_Builds/_Python310_cpp/include/pydtrace.h b/_Pre_Builds/_Python310_cpp/include/pydtrace.h deleted file mode 100644 index 75f8e7f..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pydtrace.h +++ /dev/null @@ -1,59 +0,0 @@ -/* Static DTrace probes interface */ - -#ifndef Py_DTRACE_H -#define Py_DTRACE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef WITH_DTRACE - -#include "pydtrace_probes.h" - -/* pydtrace_probes.h, on systems with DTrace, is auto-generated to include - `PyDTrace_{PROBE}` and `PyDTrace_{PROBE}_ENABLED()` macros for every probe - defined in pydtrace_provider.d. - - Calling these functions must be guarded by a `PyDTrace_{PROBE}_ENABLED()` - check to minimize performance impact when probing is off. For example: - - if (PyDTrace_FUNCTION_ENTRY_ENABLED()) - PyDTrace_FUNCTION_ENTRY(f); -*/ - -#else - -/* Without DTrace, compile to nothing. */ - -static inline void PyDTrace_LINE(const char *arg0, const char *arg1, int arg2) {} -static inline void PyDTrace_FUNCTION_ENTRY(const char *arg0, const char *arg1, int arg2) {} -static inline void PyDTrace_FUNCTION_RETURN(const char *arg0, const char *arg1, int arg2) {} -static inline void PyDTrace_GC_START(int arg0) {} -static inline void PyDTrace_GC_DONE(Py_ssize_t arg0) {} -static inline void PyDTrace_INSTANCE_NEW_START(int arg0) {} -static inline void PyDTrace_INSTANCE_NEW_DONE(int arg0) {} -static inline void PyDTrace_INSTANCE_DELETE_START(int arg0) {} -static inline void PyDTrace_INSTANCE_DELETE_DONE(int arg0) {} -static inline void PyDTrace_IMPORT_FIND_LOAD_START(const char *arg0) {} -static inline void PyDTrace_IMPORT_FIND_LOAD_DONE(const char *arg0, int arg1) {} -static inline void PyDTrace_AUDIT(const char *arg0, void *arg1) {} - -static inline int PyDTrace_LINE_ENABLED(void) { return 0; } -static inline int PyDTrace_FUNCTION_ENTRY_ENABLED(void) { return 0; } -static inline int PyDTrace_FUNCTION_RETURN_ENABLED(void) { return 0; } -static inline int PyDTrace_GC_START_ENABLED(void) { return 0; } -static inline int PyDTrace_GC_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_NEW_START_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_NEW_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_DELETE_START_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_DELETE_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_IMPORT_FIND_LOAD_START_ENABLED(void) { return 0; } -static inline int PyDTrace_IMPORT_FIND_LOAD_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_AUDIT_ENABLED(void) { return 0; } - -#endif /* !WITH_DTRACE */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_DTRACE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pyerrors.h b/_Pre_Builds/_Python310_cpp/include/pyerrors.h deleted file mode 100644 index f5d1c71..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pyerrors.h +++ /dev/null @@ -1,324 +0,0 @@ -#ifndef Py_ERRORS_H -#define Py_ERRORS_H -#ifdef __cplusplus -extern "C" { -#endif - -#include // va_list - -/* Error handling definitions */ - -PyAPI_FUNC(void) PyErr_SetNone(PyObject *); -PyAPI_FUNC(void) PyErr_SetObject(PyObject *, PyObject *); -PyAPI_FUNC(void) PyErr_SetString( - PyObject *exception, - const char *string /* decoded from utf-8 */ - ); -PyAPI_FUNC(PyObject *) PyErr_Occurred(void); -PyAPI_FUNC(void) PyErr_Clear(void); -PyAPI_FUNC(void) PyErr_Fetch(PyObject **, PyObject **, PyObject **); -PyAPI_FUNC(void) PyErr_Restore(PyObject *, PyObject *, PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(void) PyErr_GetExcInfo(PyObject **, PyObject **, PyObject **); -PyAPI_FUNC(void) PyErr_SetExcInfo(PyObject *, PyObject *, PyObject *); -#endif - -/* Defined in Python/pylifecycle.c - - The Py_FatalError() function is replaced with a macro which logs - automatically the name of the current function, unless the Py_LIMITED_API - macro is defined. */ -PyAPI_FUNC(void) _Py_NO_RETURN Py_FatalError(const char *message); - -/* Error testing and normalization */ -PyAPI_FUNC(int) PyErr_GivenExceptionMatches(PyObject *, PyObject *); -PyAPI_FUNC(int) PyErr_ExceptionMatches(PyObject *); -PyAPI_FUNC(void) PyErr_NormalizeException(PyObject**, PyObject**, PyObject**); - -/* Traceback manipulation (PEP 3134) */ -PyAPI_FUNC(int) PyException_SetTraceback(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyException_GetTraceback(PyObject *); - -/* Cause manipulation (PEP 3134) */ -PyAPI_FUNC(PyObject *) PyException_GetCause(PyObject *); -PyAPI_FUNC(void) PyException_SetCause(PyObject *, PyObject *); - -/* Context manipulation (PEP 3134) */ -PyAPI_FUNC(PyObject *) PyException_GetContext(PyObject *); -PyAPI_FUNC(void) PyException_SetContext(PyObject *, PyObject *); - -/* */ - -#define PyExceptionClass_Check(x) \ - (PyType_Check((x)) && \ - PyType_FastSubclass((PyTypeObject*)(x), Py_TPFLAGS_BASE_EXC_SUBCLASS)) - -#define PyExceptionInstance_Check(x) \ - PyType_FastSubclass(Py_TYPE(x), Py_TPFLAGS_BASE_EXC_SUBCLASS) - -PyAPI_FUNC(const char *) PyExceptionClass_Name(PyObject *); - -#define PyExceptionInstance_Class(x) ((PyObject*)Py_TYPE(x)) - - -/* Predefined exceptions */ - -PyAPI_DATA(PyObject *) PyExc_BaseException; -PyAPI_DATA(PyObject *) PyExc_Exception; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_DATA(PyObject *) PyExc_StopAsyncIteration; -#endif -PyAPI_DATA(PyObject *) PyExc_StopIteration; -PyAPI_DATA(PyObject *) PyExc_GeneratorExit; -PyAPI_DATA(PyObject *) PyExc_ArithmeticError; -PyAPI_DATA(PyObject *) PyExc_LookupError; - -PyAPI_DATA(PyObject *) PyExc_AssertionError; -PyAPI_DATA(PyObject *) PyExc_AttributeError; -PyAPI_DATA(PyObject *) PyExc_BufferError; -PyAPI_DATA(PyObject *) PyExc_EOFError; -PyAPI_DATA(PyObject *) PyExc_FloatingPointError; -PyAPI_DATA(PyObject *) PyExc_OSError; -PyAPI_DATA(PyObject *) PyExc_ImportError; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_DATA(PyObject *) PyExc_ModuleNotFoundError; -#endif -PyAPI_DATA(PyObject *) PyExc_IndexError; -PyAPI_DATA(PyObject *) PyExc_KeyError; -PyAPI_DATA(PyObject *) PyExc_KeyboardInterrupt; -PyAPI_DATA(PyObject *) PyExc_MemoryError; -PyAPI_DATA(PyObject *) PyExc_NameError; -PyAPI_DATA(PyObject *) PyExc_OverflowError; -PyAPI_DATA(PyObject *) PyExc_RuntimeError; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_DATA(PyObject *) PyExc_RecursionError; -#endif -PyAPI_DATA(PyObject *) PyExc_NotImplementedError; -PyAPI_DATA(PyObject *) PyExc_SyntaxError; -PyAPI_DATA(PyObject *) PyExc_IndentationError; -PyAPI_DATA(PyObject *) PyExc_TabError; -PyAPI_DATA(PyObject *) PyExc_ReferenceError; -PyAPI_DATA(PyObject *) PyExc_SystemError; -PyAPI_DATA(PyObject *) PyExc_SystemExit; -PyAPI_DATA(PyObject *) PyExc_TypeError; -PyAPI_DATA(PyObject *) PyExc_UnboundLocalError; -PyAPI_DATA(PyObject *) PyExc_UnicodeError; -PyAPI_DATA(PyObject *) PyExc_UnicodeEncodeError; -PyAPI_DATA(PyObject *) PyExc_UnicodeDecodeError; -PyAPI_DATA(PyObject *) PyExc_UnicodeTranslateError; -PyAPI_DATA(PyObject *) PyExc_ValueError; -PyAPI_DATA(PyObject *) PyExc_ZeroDivisionError; - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_DATA(PyObject *) PyExc_BlockingIOError; -PyAPI_DATA(PyObject *) PyExc_BrokenPipeError; -PyAPI_DATA(PyObject *) PyExc_ChildProcessError; -PyAPI_DATA(PyObject *) PyExc_ConnectionError; -PyAPI_DATA(PyObject *) PyExc_ConnectionAbortedError; -PyAPI_DATA(PyObject *) PyExc_ConnectionRefusedError; -PyAPI_DATA(PyObject *) PyExc_ConnectionResetError; -PyAPI_DATA(PyObject *) PyExc_FileExistsError; -PyAPI_DATA(PyObject *) PyExc_FileNotFoundError; -PyAPI_DATA(PyObject *) PyExc_InterruptedError; -PyAPI_DATA(PyObject *) PyExc_IsADirectoryError; -PyAPI_DATA(PyObject *) PyExc_NotADirectoryError; -PyAPI_DATA(PyObject *) PyExc_PermissionError; -PyAPI_DATA(PyObject *) PyExc_ProcessLookupError; -PyAPI_DATA(PyObject *) PyExc_TimeoutError; -#endif - - -/* Compatibility aliases */ -PyAPI_DATA(PyObject *) PyExc_EnvironmentError; -PyAPI_DATA(PyObject *) PyExc_IOError; -#ifdef MS_WINDOWS -PyAPI_DATA(PyObject *) PyExc_WindowsError; -#endif - -/* Predefined warning categories */ -PyAPI_DATA(PyObject *) PyExc_Warning; -PyAPI_DATA(PyObject *) PyExc_UserWarning; -PyAPI_DATA(PyObject *) PyExc_DeprecationWarning; -PyAPI_DATA(PyObject *) PyExc_PendingDeprecationWarning; -PyAPI_DATA(PyObject *) PyExc_SyntaxWarning; -PyAPI_DATA(PyObject *) PyExc_RuntimeWarning; -PyAPI_DATA(PyObject *) PyExc_FutureWarning; -PyAPI_DATA(PyObject *) PyExc_ImportWarning; -PyAPI_DATA(PyObject *) PyExc_UnicodeWarning; -PyAPI_DATA(PyObject *) PyExc_BytesWarning; -PyAPI_DATA(PyObject *) PyExc_EncodingWarning; -PyAPI_DATA(PyObject *) PyExc_ResourceWarning; - - -/* Convenience functions */ - -PyAPI_FUNC(int) PyErr_BadArgument(void); -PyAPI_FUNC(PyObject *) PyErr_NoMemory(void); -PyAPI_FUNC(PyObject *) PyErr_SetFromErrno(PyObject *); -PyAPI_FUNC(PyObject *) PyErr_SetFromErrnoWithFilenameObject( - PyObject *, PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03040000 -PyAPI_FUNC(PyObject *) PyErr_SetFromErrnoWithFilenameObjects( - PyObject *, PyObject *, PyObject *); -#endif -PyAPI_FUNC(PyObject *) PyErr_SetFromErrnoWithFilename( - PyObject *exc, - const char *filename /* decoded from the filesystem encoding */ - ); - -PyAPI_FUNC(PyObject *) PyErr_Format( - PyObject *exception, - const char *format, /* ASCII-encoded string */ - ... - ); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(PyObject *) PyErr_FormatV( - PyObject *exception, - const char *format, - va_list vargs); -#endif - -#ifdef MS_WINDOWS -PyAPI_FUNC(PyObject *) PyErr_SetFromWindowsErrWithFilename( - int ierr, - const char *filename /* decoded from the filesystem encoding */ - ); -PyAPI_FUNC(PyObject *) PyErr_SetFromWindowsErr(int); -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErrWithFilenameObject( - PyObject *,int, PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03040000 -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErrWithFilenameObjects( - PyObject *,int, PyObject *, PyObject *); -#endif -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErrWithFilename( - PyObject *exc, - int ierr, - const char *filename /* decoded from the filesystem encoding */ - ); -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErr(PyObject *, int); -#endif /* MS_WINDOWS */ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_FUNC(PyObject *) PyErr_SetImportErrorSubclass(PyObject *, PyObject *, - PyObject *, PyObject *); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyErr_SetImportError(PyObject *, PyObject *, - PyObject *); -#endif - -/* Export the old function so that the existing API remains available: */ -PyAPI_FUNC(void) PyErr_BadInternalCall(void); -PyAPI_FUNC(void) _PyErr_BadInternalCall(const char *filename, int lineno); -/* Mask the old API with a call to the new API for code compiled under - Python 2.0: */ -#define PyErr_BadInternalCall() _PyErr_BadInternalCall(__FILE__, __LINE__) - -/* Function to create a new exception */ -PyAPI_FUNC(PyObject *) PyErr_NewException( - const char *name, PyObject *base, PyObject *dict); -PyAPI_FUNC(PyObject *) PyErr_NewExceptionWithDoc( - const char *name, const char *doc, PyObject *base, PyObject *dict); -PyAPI_FUNC(void) PyErr_WriteUnraisable(PyObject *); - - -/* In signalmodule.c */ -PyAPI_FUNC(int) PyErr_CheckSignals(void); -PyAPI_FUNC(void) PyErr_SetInterrupt(void); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -PyAPI_FUNC(int) PyErr_SetInterruptEx(int signum); -#endif - -/* Support for adding program text to SyntaxErrors */ -PyAPI_FUNC(void) PyErr_SyntaxLocation( - const char *filename, /* decoded from the filesystem encoding */ - int lineno); -PyAPI_FUNC(void) PyErr_SyntaxLocationEx( - const char *filename, /* decoded from the filesystem encoding */ - int lineno, - int col_offset); -PyAPI_FUNC(PyObject *) PyErr_ProgramText( - const char *filename, /* decoded from the filesystem encoding */ - int lineno); - -/* The following functions are used to create and modify unicode - exceptions from C */ - -/* create a UnicodeDecodeError object */ -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_Create( - const char *encoding, /* UTF-8 encoded string */ - const char *object, - Py_ssize_t length, - Py_ssize_t start, - Py_ssize_t end, - const char *reason /* UTF-8 encoded string */ - ); - -/* get the encoding attribute */ -PyAPI_FUNC(PyObject *) PyUnicodeEncodeError_GetEncoding(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_GetEncoding(PyObject *); - -/* get the object attribute */ -PyAPI_FUNC(PyObject *) PyUnicodeEncodeError_GetObject(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_GetObject(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeTranslateError_GetObject(PyObject *); - -/* get the value of the start attribute (the int * may not be NULL) - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_GetStart(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeDecodeError_GetStart(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeTranslateError_GetStart(PyObject *, Py_ssize_t *); - -/* assign a new value to the start attribute - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_SetStart(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeDecodeError_SetStart(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeTranslateError_SetStart(PyObject *, Py_ssize_t); - -/* get the value of the end attribute (the int *may not be NULL) - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_GetEnd(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeDecodeError_GetEnd(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeTranslateError_GetEnd(PyObject *, Py_ssize_t *); - -/* assign a new value to the end attribute - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_SetEnd(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeDecodeError_SetEnd(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeTranslateError_SetEnd(PyObject *, Py_ssize_t); - -/* get the value of the reason attribute */ -PyAPI_FUNC(PyObject *) PyUnicodeEncodeError_GetReason(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_GetReason(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeTranslateError_GetReason(PyObject *); - -/* assign a new value to the reason attribute - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_SetReason( - PyObject *exc, - const char *reason /* UTF-8 encoded string */ - ); -PyAPI_FUNC(int) PyUnicodeDecodeError_SetReason( - PyObject *exc, - const char *reason /* UTF-8 encoded string */ - ); -PyAPI_FUNC(int) PyUnicodeTranslateError_SetReason( - PyObject *exc, - const char *reason /* UTF-8 encoded string */ - ); - -PyAPI_FUNC(int) PyOS_snprintf(char *str, size_t size, const char *format, ...) - Py_GCC_ATTRIBUTE((format(printf, 3, 4))); -PyAPI_FUNC(int) PyOS_vsnprintf(char *str, size_t size, const char *format, va_list va) - Py_GCC_ATTRIBUTE((format(printf, 3, 0))); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_ERRORS_H -# include "cpython/pyerrors.h" -# undef Py_CPYTHON_ERRORS_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ERRORS_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pyexpat.h b/_Pre_Builds/_Python310_cpp/include/pyexpat.h deleted file mode 100644 index 07020b5..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pyexpat.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Stuff to export relevant 'expat' entry points from pyexpat to other - * parser modules, such as cElementTree. */ - -/* note: you must import expat.h before importing this module! */ - -#define PyExpat_CAPI_MAGIC "pyexpat.expat_CAPI 1.1" -#define PyExpat_CAPSULE_NAME "pyexpat.expat_CAPI" - -struct PyExpat_CAPI -{ - char* magic; /* set to PyExpat_CAPI_MAGIC */ - int size; /* set to sizeof(struct PyExpat_CAPI) */ - int MAJOR_VERSION; - int MINOR_VERSION; - int MICRO_VERSION; - /* pointers to selected expat functions. add new functions at - the end, if needed */ - const XML_LChar * (*ErrorString)(enum XML_Error code); - enum XML_Error (*GetErrorCode)(XML_Parser parser); - XML_Size (*GetErrorColumnNumber)(XML_Parser parser); - XML_Size (*GetErrorLineNumber)(XML_Parser parser); - enum XML_Status (*Parse)( - XML_Parser parser, const char *s, int len, int isFinal); - XML_Parser (*ParserCreate_MM)( - const XML_Char *encoding, const XML_Memory_Handling_Suite *memsuite, - const XML_Char *namespaceSeparator); - void (*ParserFree)(XML_Parser parser); - void (*SetCharacterDataHandler)( - XML_Parser parser, XML_CharacterDataHandler handler); - void (*SetCommentHandler)( - XML_Parser parser, XML_CommentHandler handler); - void (*SetDefaultHandlerExpand)( - XML_Parser parser, XML_DefaultHandler handler); - void (*SetElementHandler)( - XML_Parser parser, XML_StartElementHandler start, - XML_EndElementHandler end); - void (*SetNamespaceDeclHandler)( - XML_Parser parser, XML_StartNamespaceDeclHandler start, - XML_EndNamespaceDeclHandler end); - void (*SetProcessingInstructionHandler)( - XML_Parser parser, XML_ProcessingInstructionHandler handler); - void (*SetUnknownEncodingHandler)( - XML_Parser parser, XML_UnknownEncodingHandler handler, - void *encodingHandlerData); - void (*SetUserData)(XML_Parser parser, void *userData); - void (*SetStartDoctypeDeclHandler)(XML_Parser parser, - XML_StartDoctypeDeclHandler start); - enum XML_Status (*SetEncoding)(XML_Parser parser, const XML_Char *encoding); - int (*DefaultUnknownEncodingHandler)( - void *encodingHandlerData, const XML_Char *name, XML_Encoding *info); - /* might be none for expat < 2.1.0 */ - int (*SetHashSalt)(XML_Parser parser, unsigned long hash_salt); - /* always add new stuff to the end! */ -}; - diff --git a/_Pre_Builds/_Python310_cpp/include/pyframe.h b/_Pre_Builds/_Python310_cpp/include/pyframe.h deleted file mode 100644 index 3816224..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pyframe.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Limited C API of PyFrame API - * - * Include "frameobject.h" to get the PyFrameObject structure. - */ - -#ifndef Py_PYFRAME_H -#define Py_PYFRAME_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct _frame PyFrameObject; - -/* Return the line of code the frame is currently executing. */ -PyAPI_FUNC(int) PyFrame_GetLineNumber(PyFrameObject *); - -PyAPI_FUNC(PyCodeObject *) PyFrame_GetCode(PyFrameObject *frame); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYFRAME_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pyhash.h b/_Pre_Builds/_Python310_cpp/include/pyhash.h deleted file mode 100644 index a314ea9..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pyhash.h +++ /dev/null @@ -1,144 +0,0 @@ -#ifndef Py_HASH_H - -#define Py_HASH_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Helpers for hash functions */ -#ifndef Py_LIMITED_API -PyAPI_FUNC(Py_hash_t) _Py_HashDouble(PyObject *, double); -PyAPI_FUNC(Py_hash_t) _Py_HashPointer(const void*); -// Similar to _Py_HashPointer(), but don't replace -1 with -2 -PyAPI_FUNC(Py_hash_t) _Py_HashPointerRaw(const void*); -PyAPI_FUNC(Py_hash_t) _Py_HashBytes(const void*, Py_ssize_t); -#endif - -/* Prime multiplier used in string and various other hashes. */ -#define _PyHASH_MULTIPLIER 1000003UL /* 0xf4243 */ - -/* Parameters used for the numeric hash implementation. See notes for - _Py_HashDouble in Python/pyhash.c. Numeric hashes are based on - reduction modulo the prime 2**_PyHASH_BITS - 1. */ - -#if SIZEOF_VOID_P >= 8 -# define _PyHASH_BITS 61 -#else -# define _PyHASH_BITS 31 -#endif - -#define _PyHASH_MODULUS (((size_t)1 << _PyHASH_BITS) - 1) -#define _PyHASH_INF 314159 -#define _PyHASH_IMAG _PyHASH_MULTIPLIER - - -/* hash secret - * - * memory layout on 64 bit systems - * cccccccc cccccccc cccccccc uc -- unsigned char[24] - * pppppppp ssssssss ........ fnv -- two Py_hash_t - * k0k0k0k0 k1k1k1k1 ........ siphash -- two uint64_t - * ........ ........ ssssssss djbx33a -- 16 bytes padding + one Py_hash_t - * ........ ........ eeeeeeee pyexpat XML hash salt - * - * memory layout on 32 bit systems - * cccccccc cccccccc cccccccc uc - * ppppssss ........ ........ fnv -- two Py_hash_t - * k0k0k0k0 k1k1k1k1 ........ siphash -- two uint64_t (*) - * ........ ........ ssss.... djbx33a -- 16 bytes padding + one Py_hash_t - * ........ ........ eeee.... pyexpat XML hash salt - * - * (*) The siphash member may not be available on 32 bit platforms without - * an unsigned int64 data type. - */ -#ifndef Py_LIMITED_API -typedef union { - /* ensure 24 bytes */ - unsigned char uc[24]; - /* two Py_hash_t for FNV */ - struct { - Py_hash_t prefix; - Py_hash_t suffix; - } fnv; - /* two uint64 for SipHash24 */ - struct { - uint64_t k0; - uint64_t k1; - } siphash; - /* a different (!) Py_hash_t for small string optimization */ - struct { - unsigned char padding[16]; - Py_hash_t suffix; - } djbx33a; - struct { - unsigned char padding[16]; - Py_hash_t hashsalt; - } expat; -} _Py_HashSecret_t; -PyAPI_DATA(_Py_HashSecret_t) _Py_HashSecret; - -#ifdef Py_DEBUG -PyAPI_DATA(int) _Py_HashSecret_Initialized; -#endif - - -/* hash function definition */ -typedef struct { - Py_hash_t (*const hash)(const void *, Py_ssize_t); - const char *name; - const int hash_bits; - const int seed_bits; -} PyHash_FuncDef; - -PyAPI_FUNC(PyHash_FuncDef*) PyHash_GetFuncDef(void); -#endif - - -/* cutoff for small string DJBX33A optimization in range [1, cutoff). - * - * About 50% of the strings in a typical Python application are smaller than - * 6 to 7 chars. However DJBX33A is vulnerable to hash collision attacks. - * NEVER use DJBX33A for long strings! - * - * A Py_HASH_CUTOFF of 0 disables small string optimization. 32 bit platforms - * should use a smaller cutoff because it is easier to create colliding - * strings. A cutoff of 7 on 64bit platforms and 5 on 32bit platforms should - * provide a decent safety margin. - */ -#ifndef Py_HASH_CUTOFF -# define Py_HASH_CUTOFF 0 -#elif (Py_HASH_CUTOFF > 7 || Py_HASH_CUTOFF < 0) -# error Py_HASH_CUTOFF must in range 0...7. -#endif /* Py_HASH_CUTOFF */ - - -/* hash algorithm selection - * - * The values for Py_HASH_SIPHASH24 and Py_HASH_FNV are hard-coded in the - * configure script. - * - * - FNV is available on all platforms and architectures. - * - SIPHASH24 only works on platforms that don't require aligned memory for integers. - * - With EXTERNAL embedders can provide an alternative implementation with:: - * - * PyHash_FuncDef PyHash_Func = {...}; - * - * XXX: Figure out __declspec() for extern PyHash_FuncDef. - */ -#define Py_HASH_EXTERNAL 0 -#define Py_HASH_SIPHASH24 1 -#define Py_HASH_FNV 2 - -#ifndef Py_HASH_ALGORITHM -# ifndef HAVE_ALIGNED_REQUIRED -# define Py_HASH_ALGORITHM Py_HASH_SIPHASH24 -# else -# define Py_HASH_ALGORITHM Py_HASH_FNV -# endif /* uint64_t && uint32_t && aligned */ -#endif /* Py_HASH_ALGORITHM */ - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_HASH_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pylifecycle.h b/_Pre_Builds/_Python310_cpp/include/pylifecycle.h deleted file mode 100644 index 2df7fe6..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pylifecycle.h +++ /dev/null @@ -1,74 +0,0 @@ - -/* Interfaces to configure, query, create & destroy the Python runtime */ - -#ifndef Py_PYLIFECYCLE_H -#define Py_PYLIFECYCLE_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Initialization and finalization */ -PyAPI_FUNC(void) Py_Initialize(void); -PyAPI_FUNC(void) Py_InitializeEx(int); -PyAPI_FUNC(void) Py_Finalize(void); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_FUNC(int) Py_FinalizeEx(void); -#endif -PyAPI_FUNC(int) Py_IsInitialized(void); - -/* Subinterpreter support */ -PyAPI_FUNC(PyThreadState *) Py_NewInterpreter(void); -PyAPI_FUNC(void) Py_EndInterpreter(PyThreadState *); - - -/* Py_PyAtExit is for the atexit module, Py_AtExit is for low-level - * exit functions. - */ -PyAPI_FUNC(int) Py_AtExit(void (*func)(void)); - -PyAPI_FUNC(void) _Py_NO_RETURN Py_Exit(int); - -/* Bootstrap __main__ (defined in Modules/main.c) */ -PyAPI_FUNC(int) Py_Main(int argc, wchar_t **argv); -PyAPI_FUNC(int) Py_BytesMain(int argc, char **argv); - -/* In pathconfig.c */ -PyAPI_FUNC(void) Py_SetProgramName(const wchar_t *); -PyAPI_FUNC(wchar_t *) Py_GetProgramName(void); - -PyAPI_FUNC(void) Py_SetPythonHome(const wchar_t *); -PyAPI_FUNC(wchar_t *) Py_GetPythonHome(void); - -PyAPI_FUNC(wchar_t *) Py_GetProgramFullPath(void); - -PyAPI_FUNC(wchar_t *) Py_GetPrefix(void); -PyAPI_FUNC(wchar_t *) Py_GetExecPrefix(void); -PyAPI_FUNC(wchar_t *) Py_GetPath(void); -PyAPI_FUNC(void) Py_SetPath(const wchar_t *); -#ifdef MS_WINDOWS -int _Py_CheckPython3(void); -#endif - -/* In their own files */ -PyAPI_FUNC(const char *) Py_GetVersion(void); -PyAPI_FUNC(const char *) Py_GetPlatform(void); -PyAPI_FUNC(const char *) Py_GetCopyright(void); -PyAPI_FUNC(const char *) Py_GetCompiler(void); -PyAPI_FUNC(const char *) Py_GetBuildInfo(void); - -/* Signals */ -typedef void (*PyOS_sighandler_t)(int); -PyAPI_FUNC(PyOS_sighandler_t) PyOS_getsig(int); -PyAPI_FUNC(PyOS_sighandler_t) PyOS_setsig(int, PyOS_sighandler_t); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYLIFECYCLE_H -# include "cpython/pylifecycle.h" -# undef Py_CPYTHON_PYLIFECYCLE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYLIFECYCLE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pymacconfig.h b/_Pre_Builds/_Python310_cpp/include/pymacconfig.h deleted file mode 100644 index 9dde11b..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pymacconfig.h +++ /dev/null @@ -1,102 +0,0 @@ -#ifndef PYMACCONFIG_H -#define PYMACCONFIG_H - /* - * This file moves some of the autoconf magic to compile-time - * when building on MacOSX. This is needed for building 4-way - * universal binaries and for 64-bit universal binaries because - * the values redefined below aren't configure-time constant but - * only compile-time constant in these scenarios. - */ - -#if defined(__APPLE__) - -# undef SIZEOF_LONG -# undef SIZEOF_PTHREAD_T -# undef SIZEOF_SIZE_T -# undef SIZEOF_TIME_T -# undef SIZEOF_VOID_P -# undef SIZEOF__BOOL -# undef SIZEOF_UINTPTR_T -# undef SIZEOF_PTHREAD_T -# undef WORDS_BIGENDIAN -# undef DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754 -# undef DOUBLE_IS_BIG_ENDIAN_IEEE754 -# undef DOUBLE_IS_LITTLE_ENDIAN_IEEE754 -# undef HAVE_GCC_ASM_FOR_X87 - -# undef VA_LIST_IS_ARRAY -# if defined(__LP64__) && defined(__x86_64__) -# define VA_LIST_IS_ARRAY 1 -# endif - -# undef HAVE_LARGEFILE_SUPPORT -# ifndef __LP64__ -# define HAVE_LARGEFILE_SUPPORT 1 -# endif - -# undef SIZEOF_LONG -# ifdef __LP64__ -# define SIZEOF__BOOL 1 -# define SIZEOF__BOOL 1 -# define SIZEOF_LONG 8 -# define SIZEOF_PTHREAD_T 8 -# define SIZEOF_SIZE_T 8 -# define SIZEOF_TIME_T 8 -# define SIZEOF_VOID_P 8 -# define SIZEOF_UINTPTR_T 8 -# define SIZEOF_PTHREAD_T 8 -# else -# ifdef __ppc__ -# define SIZEOF__BOOL 4 -# else -# define SIZEOF__BOOL 1 -# endif -# define SIZEOF_LONG 4 -# define SIZEOF_PTHREAD_T 4 -# define SIZEOF_SIZE_T 4 -# define SIZEOF_TIME_T 4 -# define SIZEOF_VOID_P 4 -# define SIZEOF_UINTPTR_T 4 -# define SIZEOF_PTHREAD_T 4 -# endif - -# if defined(__LP64__) - /* MacOSX 10.4 (the first release to support 64-bit code - * at all) only supports 64-bit in the UNIX layer. - * Therefore suppress the toolbox-glue in 64-bit mode. - */ - - /* In 64-bit mode setpgrp always has no arguments, in 32-bit - * mode that depends on the compilation environment - */ -# undef SETPGRP_HAVE_ARG - -# endif - -#ifdef __BIG_ENDIAN__ -#define WORDS_BIGENDIAN 1 -#define DOUBLE_IS_BIG_ENDIAN_IEEE754 -#else -#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 -#endif /* __BIG_ENDIAN */ - -#ifdef __i386__ -# define HAVE_GCC_ASM_FOR_X87 -#endif - - /* - * The definition in pyconfig.h is only valid on the OS release - * where configure ran on and not necessarily for all systems where - * the executable can be used on. - * - * Specifically: OSX 10.4 has limited supported for '%zd', while - * 10.5 has full support for '%zd'. A binary built on 10.5 won't - * work properly on 10.4 unless we suppress the definition - * of PY_FORMAT_SIZE_T - */ -#undef PY_FORMAT_SIZE_T - - -#endif /* defined(_APPLE__) */ - -#endif /* PYMACCONFIG_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pymacro.h b/_Pre_Builds/_Python310_cpp/include/pymacro.h deleted file mode 100644 index 202b936..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pymacro.h +++ /dev/null @@ -1,132 +0,0 @@ -#ifndef Py_PYMACRO_H -#define Py_PYMACRO_H - -/* Minimum value between x and y */ -#define Py_MIN(x, y) (((x) > (y)) ? (y) : (x)) - -/* Maximum value between x and y */ -#define Py_MAX(x, y) (((x) > (y)) ? (x) : (y)) - -/* Absolute value of the number x */ -#define Py_ABS(x) ((x) < 0 ? -(x) : (x)) - -#define _Py_XSTRINGIFY(x) #x - -/* Convert the argument to a string. For example, Py_STRINGIFY(123) is replaced - with "123" by the preprocessor. Defines are also replaced by their value. - For example Py_STRINGIFY(__LINE__) is replaced by the line number, not - by "__LINE__". */ -#define Py_STRINGIFY(x) _Py_XSTRINGIFY(x) - -/* Get the size of a structure member in bytes */ -#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) - -/* Argument must be a char or an int in [-128, 127] or [0, 255]. */ -#define Py_CHARMASK(c) ((unsigned char)((c) & 0xff)) - -/* Assert a build-time dependency, as an expression. - - Your compile will fail if the condition isn't true, or can't be evaluated - by the compiler. This can be used in an expression: its value is 0. - - Example: - - #define foo_to_char(foo) \ - ((char *)(foo) \ - + Py_BUILD_ASSERT_EXPR(offsetof(struct foo, string) == 0)) - - Written by Rusty Russell, public domain, http://ccodearchive.net/ */ -#define Py_BUILD_ASSERT_EXPR(cond) \ - (sizeof(char [1 - 2*!(cond)]) - 1) - -#define Py_BUILD_ASSERT(cond) do { \ - (void)Py_BUILD_ASSERT_EXPR(cond); \ - } while(0) - -/* Get the number of elements in a visible array - - This does not work on pointers, or arrays declared as [], or function - parameters. With correct compiler support, such usage will cause a build - error (see Py_BUILD_ASSERT_EXPR). - - Written by Rusty Russell, public domain, http://ccodearchive.net/ - - Requires at GCC 3.1+ */ -#if (defined(__GNUC__) && !defined(__STRICT_ANSI__) && \ - (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 1)) || (__GNUC__ >= 4))) -/* Two gcc extensions. - &a[0] degrades to a pointer: a different type from an array */ -#define Py_ARRAY_LENGTH(array) \ - (sizeof(array) / sizeof((array)[0]) \ - + Py_BUILD_ASSERT_EXPR(!__builtin_types_compatible_p(typeof(array), \ - typeof(&(array)[0])))) -#else -#define Py_ARRAY_LENGTH(array) \ - (sizeof(array) / sizeof((array)[0])) -#endif - - -/* Define macros for inline documentation. */ -#define PyDoc_VAR(name) static const char name[] -#define PyDoc_STRVAR(name,str) PyDoc_VAR(name) = PyDoc_STR(str) -#ifdef WITH_DOC_STRINGS -#define PyDoc_STR(str) str -#else -#define PyDoc_STR(str) "" -#endif - -/* Below "a" is a power of 2. */ -/* Round down size "n" to be a multiple of "a". */ -#define _Py_SIZE_ROUND_DOWN(n, a) ((size_t)(n) & ~(size_t)((a) - 1)) -/* Round up size "n" to be a multiple of "a". */ -#define _Py_SIZE_ROUND_UP(n, a) (((size_t)(n) + \ - (size_t)((a) - 1)) & ~(size_t)((a) - 1)) -/* Round pointer "p" down to the closest "a"-aligned address <= "p". */ -#define _Py_ALIGN_DOWN(p, a) ((void *)((uintptr_t)(p) & ~(uintptr_t)((a) - 1))) -/* Round pointer "p" up to the closest "a"-aligned address >= "p". */ -#define _Py_ALIGN_UP(p, a) ((void *)(((uintptr_t)(p) + \ - (uintptr_t)((a) - 1)) & ~(uintptr_t)((a) - 1))) -/* Check if pointer "p" is aligned to "a"-bytes boundary. */ -#define _Py_IS_ALIGNED(p, a) (!((uintptr_t)(p) & (uintptr_t)((a) - 1))) - -/* Use this for unused arguments in a function definition to silence compiler - * warnings. Example: - * - * int func(int a, int Py_UNUSED(b)) { return a; } - */ -#if defined(__GNUC__) || defined(__clang__) -# define Py_UNUSED(name) _unused_ ## name __attribute__((unused)) -#else -# define Py_UNUSED(name) _unused_ ## name -#endif - -#if defined(RANDALL_WAS_HERE) -# define Py_UNREACHABLE() \ - Py_FatalError( \ - "If you're seeing this, the code is in what I thought was\n" \ - "an unreachable state.\n\n" \ - "I could give you advice for what to do, but honestly, why\n" \ - "should you trust me? I clearly screwed this up. I'm writing\n" \ - "a message that should never appear, yet I know it will\n" \ - "probably appear someday.\n\n" \ - "On a deep level, I know I'm not up to this task.\n" \ - "I'm so sorry.\n" \ - "https://xkcd.com/2200") -#elif defined(Py_DEBUG) -# define Py_UNREACHABLE() \ - Py_FatalError( \ - "We've reached an unreachable state. Anything is possible.\n" \ - "The limits were in our heads all along. Follow your dreams.\n" \ - "https://xkcd.com/2200") -#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5)) -# define Py_UNREACHABLE() __builtin_unreachable() -#elif defined(__clang__) || defined(__INTEL_COMPILER) -# define Py_UNREACHABLE() __builtin_unreachable() -#elif defined(_MSC_VER) -# define Py_UNREACHABLE() __assume(0) -#else -# define Py_UNREACHABLE() \ - Py_FatalError("Unreachable C code path reached") -#endif - -#endif /* Py_PYMACRO_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pymath.h b/_Pre_Builds/_Python310_cpp/include/pymath.h deleted file mode 100644 index f869724..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pymath.h +++ /dev/null @@ -1,230 +0,0 @@ -#ifndef Py_PYMATH_H -#define Py_PYMATH_H - -#include "pyconfig.h" /* include for defines */ - -/************************************************************************** -Symbols and macros to supply platform-independent interfaces to mathematical -functions and constants -**************************************************************************/ - -/* Python provides implementations for copysign, round and hypot in - * Python/pymath.c just in case your math library doesn't provide the - * functions. - * - *Note: PC/pyconfig.h defines copysign as _copysign - */ -#ifndef HAVE_COPYSIGN -extern double copysign(double, double); -#endif - -#ifndef HAVE_ROUND -extern double round(double); -#endif - -#ifndef HAVE_HYPOT -extern double hypot(double, double); -#endif - -/* extra declarations */ -#ifndef _MSC_VER -#ifndef __STDC__ -extern double fmod (double, double); -extern double frexp (double, int *); -extern double ldexp (double, int); -extern double modf (double, double *); -extern double pow(double, double); -#endif /* __STDC__ */ -#endif /* _MSC_VER */ - -/* High precision definition of pi and e (Euler) - * The values are taken from libc6's math.h. - */ -#ifndef Py_MATH_PIl -#define Py_MATH_PIl 3.1415926535897932384626433832795029L -#endif -#ifndef Py_MATH_PI -#define Py_MATH_PI 3.14159265358979323846 -#endif - -#ifndef Py_MATH_El -#define Py_MATH_El 2.7182818284590452353602874713526625L -#endif - -#ifndef Py_MATH_E -#define Py_MATH_E 2.7182818284590452354 -#endif - -/* Tau (2pi) to 40 digits, taken from tauday.com/tau-digits. */ -#ifndef Py_MATH_TAU -#define Py_MATH_TAU 6.2831853071795864769252867665590057683943L -#endif - - -/* On x86, Py_FORCE_DOUBLE forces a floating-point number out of an x87 FPU - register and into a 64-bit memory location, rounding from extended - precision to double precision in the process. On other platforms it does - nothing. */ - -/* we take double rounding as evidence of x87 usage */ -#ifndef Py_LIMITED_API -#ifndef Py_FORCE_DOUBLE -# ifdef X87_DOUBLE_ROUNDING -PyAPI_FUNC(double) _Py_force_double(double); -# define Py_FORCE_DOUBLE(X) (_Py_force_double(X)) -# else -# define Py_FORCE_DOUBLE(X) (X) -# endif -#endif -#endif - -#ifndef Py_LIMITED_API -#ifdef HAVE_GCC_ASM_FOR_X87 -PyAPI_FUNC(unsigned short) _Py_get_387controlword(void); -PyAPI_FUNC(void) _Py_set_387controlword(unsigned short); -#endif -#endif - -/* Py_IS_NAN(X) - * Return 1 if float or double arg is a NaN, else 0. - * Caution: - * X is evaluated more than once. - * This may not work on all platforms. Each platform has *some* - * way to spell this, though -- override in pyconfig.h if you have - * a platform where it doesn't work. - * Note: PC/pyconfig.h defines Py_IS_NAN as _isnan - */ -#ifndef Py_IS_NAN -#if defined HAVE_DECL_ISNAN && HAVE_DECL_ISNAN == 1 -#define Py_IS_NAN(X) isnan(X) -#else -#define Py_IS_NAN(X) ((X) != (X)) -#endif -#endif - -/* Py_IS_INFINITY(X) - * Return 1 if float or double arg is an infinity, else 0. - * Caution: - * X is evaluated more than once. - * This implementation may set the underflow flag if |X| is very small; - * it really can't be implemented correctly (& easily) before C99. - * Override in pyconfig.h if you have a better spelling on your platform. - * Py_FORCE_DOUBLE is used to avoid getting false negatives from a - * non-infinite value v sitting in an 80-bit x87 register such that - * v becomes infinite when spilled from the register to 64-bit memory. - * Note: PC/pyconfig.h defines Py_IS_INFINITY as _isinf - */ -#ifndef Py_IS_INFINITY -# if defined HAVE_DECL_ISINF && HAVE_DECL_ISINF == 1 -# define Py_IS_INFINITY(X) isinf(X) -# else -# define Py_IS_INFINITY(X) ((X) && \ - (Py_FORCE_DOUBLE(X)*0.5 == Py_FORCE_DOUBLE(X))) -# endif -#endif - -/* Py_IS_FINITE(X) - * Return 1 if float or double arg is neither infinite nor NAN, else 0. - * Some compilers (e.g. VisualStudio) have intrinsics for this, so a special - * macro for this particular test is useful - * Note: PC/pyconfig.h defines Py_IS_FINITE as _finite - */ -#ifndef Py_IS_FINITE -#if defined HAVE_DECL_ISFINITE && HAVE_DECL_ISFINITE == 1 -#define Py_IS_FINITE(X) isfinite(X) -#elif defined HAVE_FINITE -#define Py_IS_FINITE(X) finite(X) -#else -#define Py_IS_FINITE(X) (!Py_IS_INFINITY(X) && !Py_IS_NAN(X)) -#endif -#endif - -/* HUGE_VAL is supposed to expand to a positive double infinity. Python - * uses Py_HUGE_VAL instead because some platforms are broken in this - * respect. We used to embed code in pyport.h to try to worm around that, - * but different platforms are broken in conflicting ways. If you're on - * a platform where HUGE_VAL is defined incorrectly, fiddle your Python - * config to #define Py_HUGE_VAL to something that works on your platform. - */ -#ifndef Py_HUGE_VAL -#define Py_HUGE_VAL HUGE_VAL -#endif - -/* Py_NAN - * A value that evaluates to a NaN. On IEEE 754 platforms INF*0 or - * INF/INF works. Define Py_NO_NAN in pyconfig.h if your platform - * doesn't support NaNs. - */ -#if !defined(Py_NAN) && !defined(Py_NO_NAN) -#if !defined(__INTEL_COMPILER) - #define Py_NAN (Py_HUGE_VAL * 0.) -#else /* __INTEL_COMPILER */ - #if defined(ICC_NAN_STRICT) - #pragma float_control(push) - #pragma float_control(precise, on) - #pragma float_control(except, on) - #if defined(_MSC_VER) - __declspec(noinline) - #else /* Linux */ - __attribute__((noinline)) - #endif /* _MSC_VER */ - static double __icc_nan() - { - return sqrt(-1.0); - } - #pragma float_control (pop) - #define Py_NAN __icc_nan() - #else /* ICC_NAN_RELAXED as default for Intel Compiler */ - static const union { unsigned char buf[8]; double __icc_nan; } __nan_store = {0,0,0,0,0,0,0xf8,0x7f}; - #define Py_NAN (__nan_store.__icc_nan) - #endif /* ICC_NAN_STRICT */ -#endif /* __INTEL_COMPILER */ -#endif - -/* Py_OVERFLOWED(X) - * Return 1 iff a libm function overflowed. Set errno to 0 before calling - * a libm function, and invoke this macro after, passing the function - * result. - * Caution: - * This isn't reliable. C99 no longer requires libm to set errno under - * any exceptional condition, but does require +- HUGE_VAL return - * values on overflow. A 754 box *probably* maps HUGE_VAL to a - * double infinity, and we're cool if that's so, unless the input - * was an infinity and an infinity is the expected result. A C89 - * system sets errno to ERANGE, so we check for that too. We're - * out of luck if a C99 754 box doesn't map HUGE_VAL to +Inf, or - * if the returned result is a NaN, or if a C89 box returns HUGE_VAL - * in non-overflow cases. - * X is evaluated more than once. - * Some platforms have better way to spell this, so expect some #ifdef'ery. - * - * OpenBSD uses 'isinf()' because a compiler bug on that platform causes - * the longer macro version to be mis-compiled. This isn't optimal, and - * should be removed once a newer compiler is available on that platform. - * The system that had the failure was running OpenBSD 3.2 on Intel, with - * gcc 2.95.3. - * - * According to Tim's checkin, the FreeBSD systems use isinf() to work - * around a FPE bug on that platform. - */ -#if defined(__FreeBSD__) || defined(__OpenBSD__) -#define Py_OVERFLOWED(X) isinf(X) -#else -#define Py_OVERFLOWED(X) ((X) != 0.0 && (errno == ERANGE || \ - (X) == Py_HUGE_VAL || \ - (X) == -Py_HUGE_VAL)) -#endif - -/* Return whether integral type *type* is signed or not. */ -#define _Py_IntegralTypeSigned(type) ((type)(-1) < 0) -/* Return the maximum value of integral type *type*. */ -#define _Py_IntegralTypeMax(type) ((_Py_IntegralTypeSigned(type)) ? (((((type)1 << (sizeof(type)*CHAR_BIT - 2)) - 1) << 1) + 1) : ~(type)0) -/* Return the minimum value of integral type *type*. */ -#define _Py_IntegralTypeMin(type) ((_Py_IntegralTypeSigned(type)) ? -_Py_IntegralTypeMax(type) - 1 : 0) -/* Check whether *v* is in the range of integral type *type*. This is most - * useful if *v* is floating-point, since demoting a floating-point *v* to an - * integral type that cannot represent *v*'s integral part is undefined - * behavior. */ -#define _Py_InIntegralTypeRange(type, v) (_Py_IntegralTypeMin(type) <= v && v <= _Py_IntegralTypeMax(type)) - -#endif /* Py_PYMATH_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pymem.h b/_Pre_Builds/_Python310_cpp/include/pymem.h deleted file mode 100644 index 66cdb0d..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pymem.h +++ /dev/null @@ -1,104 +0,0 @@ -/* The PyMem_ family: low-level memory allocation interfaces. - See objimpl.h for the PyObject_ memory family. -*/ - -#ifndef Py_PYMEM_H -#define Py_PYMEM_H - -#include "pyport.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BEWARE: - - Each interface exports both functions and macros. Extension modules should - use the functions, to ensure binary compatibility across Python versions. - Because the Python implementation is free to change internal details, and - the macros may (or may not) expose details for speed, if you do use the - macros you must recompile your extensions with each Python release. - - Never mix calls to PyMem_ with calls to the platform malloc/realloc/ - calloc/free. For example, on Windows different DLLs may end up using - different heaps, and if you use PyMem_Malloc you'll get the memory from the - heap used by the Python DLL; it could be a disaster if you free()'ed that - directly in your own extension. Using PyMem_Free instead ensures Python - can return the memory to the proper heap. As another example, in - a debug build (Py_DEBUG macro), Python wraps all calls to all PyMem_ and - PyObject_ memory functions in special debugging wrappers that add additional - debugging info to dynamic memory blocks. The system routines have no idea - what to do with that stuff, and the Python wrappers have no idea what to do - with raw blocks obtained directly by the system routines then. - - The GIL must be held when using these APIs. -*/ - -/* - * Raw memory interface - * ==================== - */ - -/* Functions - - Functions supplying platform-independent semantics for malloc/realloc/ - free. These functions make sure that allocating 0 bytes returns a distinct - non-NULL pointer (whenever possible -- if we're flat out of memory, NULL - may be returned), even if the platform malloc and realloc don't. - Returned pointers must be checked for NULL explicitly. No action is - performed on failure (no exception is set, no warning is printed, etc). -*/ - -PyAPI_FUNC(void *) PyMem_Malloc(size_t size); -PyAPI_FUNC(void *) PyMem_Calloc(size_t nelem, size_t elsize); -PyAPI_FUNC(void *) PyMem_Realloc(void *ptr, size_t new_size); -PyAPI_FUNC(void) PyMem_Free(void *ptr); - -/* - * Type-oriented memory interface - * ============================== - * - * Allocate memory for n objects of the given type. Returns a new pointer - * or NULL if the request was too large or memory allocation failed. Use - * these macros rather than doing the multiplication yourself so that proper - * overflow checking is always done. - */ - -#define PyMem_New(type, n) \ - ( ((size_t)(n) > PY_SSIZE_T_MAX / sizeof(type)) ? NULL : \ - ( (type *) PyMem_Malloc((n) * sizeof(type)) ) ) - -/* - * The value of (p) is always clobbered by this macro regardless of success. - * The caller MUST check if (p) is NULL afterwards and deal with the memory - * error if so. This means the original value of (p) MUST be saved for the - * caller's memory error handler to not lose track of it. - */ -#define PyMem_Resize(p, type, n) \ - ( (p) = ((size_t)(n) > PY_SSIZE_T_MAX / sizeof(type)) ? NULL : \ - (type *) PyMem_Realloc((p), (n) * sizeof(type)) ) - - -// Deprecated aliases only kept for backward compatibility. -// PyMem_Del and PyMem_DEL are defined with no parameter to be able to use -// them as function pointers (ex: dealloc = PyMem_Del). -#define PyMem_MALLOC(n) PyMem_Malloc(n) -#define PyMem_NEW(type, n) PyMem_New(type, n) -#define PyMem_REALLOC(p, n) PyMem_Realloc(p, n) -#define PyMem_RESIZE(p, type, n) PyMem_Resize(p, type, n) -#define PyMem_FREE(p) PyMem_Free(p) -#define PyMem_Del PyMem_Free -#define PyMem_DEL PyMem_Free - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYMEM_H -# include "cpython/pymem.h" -# undef Py_CPYTHON_PYMEM_H -#endif - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_PYMEM_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pyport.h b/_Pre_Builds/_Python310_cpp/include/pyport.h deleted file mode 100644 index 6ab0ae4..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pyport.h +++ /dev/null @@ -1,889 +0,0 @@ -#ifndef Py_PYPORT_H -#define Py_PYPORT_H - -#include "pyconfig.h" /* include for defines */ - -#include - - -/* Defines to build Python and its standard library: - * - * - Py_BUILD_CORE: Build Python core. Give access to Python internals, but - * should not be used by third-party modules. - * - Py_BUILD_CORE_BUILTIN: Build a Python stdlib module as a built-in module. - * - Py_BUILD_CORE_MODULE: Build a Python stdlib module as a dynamic library. - * - * Py_BUILD_CORE_BUILTIN and Py_BUILD_CORE_MODULE imply Py_BUILD_CORE. - * - * On Windows, Py_BUILD_CORE_MODULE exports "PyInit_xxx" symbol, whereas - * Py_BUILD_CORE_BUILTIN does not. - */ -#if defined(Py_BUILD_CORE_BUILTIN) && !defined(Py_BUILD_CORE) -# define Py_BUILD_CORE -#endif -#if defined(Py_BUILD_CORE_MODULE) && !defined(Py_BUILD_CORE) -# define Py_BUILD_CORE -#endif - - -/************************************************************************** -Symbols and macros to supply platform-independent interfaces to basic -C language & library operations whose spellings vary across platforms. - -Please try to make documentation here as clear as possible: by definition, -the stuff here is trying to illuminate C's darkest corners. - -Config #defines referenced here: - -SIGNED_RIGHT_SHIFT_ZERO_FILLS -Meaning: To be defined iff i>>j does not extend the sign bit when i is a - signed integral type and i < 0. -Used in: Py_ARITHMETIC_RIGHT_SHIFT - -Py_DEBUG -Meaning: Extra checks compiled in for debug mode. -Used in: Py_SAFE_DOWNCAST - -**************************************************************************/ - -/* typedefs for some C9X-defined synonyms for integral types. - * - * The names in Python are exactly the same as the C9X names, except with a - * Py_ prefix. Until C9X is universally implemented, this is the only way - * to ensure that Python gets reliable names that don't conflict with names - * in non-Python code that are playing their own tricks to define the C9X - * names. - * - * NOTE: don't go nuts here! Python has no use for *most* of the C9X - * integral synonyms. Only define the ones we actually need. - */ - -/* long long is required. Ensure HAVE_LONG_LONG is defined for compatibility. */ -#ifndef HAVE_LONG_LONG -#define HAVE_LONG_LONG 1 -#endif -#ifndef PY_LONG_LONG -#define PY_LONG_LONG long long -/* If LLONG_MAX is defined in limits.h, use that. */ -#define PY_LLONG_MIN LLONG_MIN -#define PY_LLONG_MAX LLONG_MAX -#define PY_ULLONG_MAX ULLONG_MAX -#endif - -#define PY_UINT32_T uint32_t -#define PY_UINT64_T uint64_t - -/* Signed variants of the above */ -#define PY_INT32_T int32_t -#define PY_INT64_T int64_t - -/* If PYLONG_BITS_IN_DIGIT is not defined then we'll use 30-bit digits if all - the necessary integer types are available, and we're on a 64-bit platform - (as determined by SIZEOF_VOID_P); otherwise we use 15-bit digits. */ - -#ifndef PYLONG_BITS_IN_DIGIT -#if SIZEOF_VOID_P >= 8 -#define PYLONG_BITS_IN_DIGIT 30 -#else -#define PYLONG_BITS_IN_DIGIT 15 -#endif -#endif - -/* uintptr_t is the C9X name for an unsigned integral type such that a - * legitimate void* can be cast to uintptr_t and then back to void* again - * without loss of information. Similarly for intptr_t, wrt a signed - * integral type. - */ -typedef uintptr_t Py_uintptr_t; -typedef intptr_t Py_intptr_t; - -/* Py_ssize_t is a signed integral type such that sizeof(Py_ssize_t) == - * sizeof(size_t). C99 doesn't define such a thing directly (size_t is an - * unsigned integral type). See PEP 353 for details. - */ -#ifdef HAVE_PY_SSIZE_T - -#elif HAVE_SSIZE_T -typedef ssize_t Py_ssize_t; -#elif SIZEOF_VOID_P == SIZEOF_SIZE_T -typedef Py_intptr_t Py_ssize_t; -#else -# error "Python needs a typedef for Py_ssize_t in pyport.h." -#endif - -/* Py_hash_t is the same size as a pointer. */ -#define SIZEOF_PY_HASH_T SIZEOF_SIZE_T -typedef Py_ssize_t Py_hash_t; -/* Py_uhash_t is the unsigned equivalent needed to calculate numeric hash. */ -#define SIZEOF_PY_UHASH_T SIZEOF_SIZE_T -typedef size_t Py_uhash_t; - -/* Only used for compatibility with code that may not be PY_SSIZE_T_CLEAN. */ -#ifdef PY_SSIZE_T_CLEAN -typedef Py_ssize_t Py_ssize_clean_t; -#else -typedef int Py_ssize_clean_t; -#endif - -/* Largest possible value of size_t. */ -#define PY_SIZE_MAX SIZE_MAX - -/* Largest positive value of type Py_ssize_t. */ -#define PY_SSIZE_T_MAX ((Py_ssize_t)(((size_t)-1)>>1)) -/* Smallest negative value of type Py_ssize_t. */ -#define PY_SSIZE_T_MIN (-PY_SSIZE_T_MAX-1) - -/* Macro kept for backward compatibility: use "z" in new code. - * - * PY_FORMAT_SIZE_T is a platform-specific modifier for use in a printf - * format to convert an argument with the width of a size_t or Py_ssize_t. - * C99 introduced "z" for this purpose, but old MSVCs had not supported it. - * Since MSVC supports "z" since (at least) 2015, we can just use "z" - * for new code. - * - * These "high level" Python format functions interpret "z" correctly on - * all platforms (Python interprets the format string itself, and does whatever - * the platform C requires to convert a size_t/Py_ssize_t argument): - * - * PyBytes_FromFormat - * PyErr_Format - * PyBytes_FromFormatV - * PyUnicode_FromFormatV - * - * Lower-level uses require that you interpolate the correct format modifier - * yourself (e.g., calling printf, fprintf, sprintf, PyOS_snprintf); for - * example, - * - * Py_ssize_t index; - * fprintf(stderr, "index %" PY_FORMAT_SIZE_T "d sucks\n", index); - * - * That will expand to %zd or to something else correct for a Py_ssize_t on - * the platform. - */ -#ifndef PY_FORMAT_SIZE_T -# define PY_FORMAT_SIZE_T "z" -#endif - -/* Py_LOCAL can be used instead of static to get the fastest possible calling - * convention for functions that are local to a given module. - * - * Py_LOCAL_INLINE does the same thing, and also explicitly requests inlining, - * for platforms that support that. - * - * If PY_LOCAL_AGGRESSIVE is defined before python.h is included, more - * "aggressive" inlining/optimization is enabled for the entire module. This - * may lead to code bloat, and may slow things down for those reasons. It may - * also lead to errors, if the code relies on pointer aliasing. Use with - * care. - * - * NOTE: You can only use this for functions that are entirely local to a - * module; functions that are exported via method tables, callbacks, etc, - * should keep using static. - */ - -#if defined(_MSC_VER) -# if defined(PY_LOCAL_AGGRESSIVE) - /* enable more aggressive optimization for MSVC */ - /* active in both release and debug builds - see bpo-43271 */ -# pragma optimize("gt", on) -#endif - /* ignore warnings if the compiler decides not to inline a function */ -# pragma warning(disable: 4710) - /* fastest possible local call under MSVC */ -# define Py_LOCAL(type) static type __fastcall -# define Py_LOCAL_INLINE(type) static __inline type __fastcall -#else -# define Py_LOCAL(type) static type -# define Py_LOCAL_INLINE(type) static inline type -#endif - -/* Py_MEMCPY is kept for backwards compatibility, - * see https://bugs.python.org/issue28126 */ -#define Py_MEMCPY memcpy - -#include - -#ifdef HAVE_IEEEFP_H -#include /* needed for 'finite' declaration on some platforms */ -#endif - -#include /* Moved here from the math section, before extern "C" */ - -/******************************************** - * WRAPPER FOR and/or * - ********************************************/ - -#ifdef TIME_WITH_SYS_TIME -#include -#include -#else /* !TIME_WITH_SYS_TIME */ -#ifdef HAVE_SYS_TIME_H -#include -#else /* !HAVE_SYS_TIME_H */ -#include -#endif /* !HAVE_SYS_TIME_H */ -#endif /* !TIME_WITH_SYS_TIME */ - - -/****************************** - * WRAPPER FOR * - ******************************/ - -/* NB caller must include */ - -#ifdef HAVE_SYS_SELECT_H -#include -#endif /* !HAVE_SYS_SELECT_H */ - -/******************************* - * stat() and fstat() fiddling * - *******************************/ - -#ifdef HAVE_SYS_STAT_H -#include -#elif defined(HAVE_STAT_H) -#include -#endif - -#ifndef S_IFMT -/* VisualAge C/C++ Failed to Define MountType Field in sys/stat.h */ -#define S_IFMT 0170000 -#endif - -#ifndef S_IFLNK -/* Windows doesn't define S_IFLNK but posixmodule.c maps - * IO_REPARSE_TAG_SYMLINK to S_IFLNK */ -# define S_IFLNK 0120000 -#endif - -#ifndef S_ISREG -#define S_ISREG(x) (((x) & S_IFMT) == S_IFREG) -#endif - -#ifndef S_ISDIR -#define S_ISDIR(x) (((x) & S_IFMT) == S_IFDIR) -#endif - -#ifndef S_ISCHR -#define S_ISCHR(x) (((x) & S_IFMT) == S_IFCHR) -#endif - -#ifdef __cplusplus -/* Move this down here since some C++ #include's don't like to be included - inside an extern "C" */ -extern "C" { -#endif - - -/* Py_ARITHMETIC_RIGHT_SHIFT - * C doesn't define whether a right-shift of a signed integer sign-extends - * or zero-fills. Here a macro to force sign extension: - * Py_ARITHMETIC_RIGHT_SHIFT(TYPE, I, J) - * Return I >> J, forcing sign extension. Arithmetically, return the - * floor of I/2**J. - * Requirements: - * I should have signed integer type. In the terminology of C99, this can - * be either one of the five standard signed integer types (signed char, - * short, int, long, long long) or an extended signed integer type. - * J is an integer >= 0 and strictly less than the number of bits in the - * type of I (because C doesn't define what happens for J outside that - * range either). - * TYPE used to specify the type of I, but is now ignored. It's been left - * in for backwards compatibility with versions <= 2.6 or 3.0. - * Caution: - * I may be evaluated more than once. - */ -#ifdef SIGNED_RIGHT_SHIFT_ZERO_FILLS -#define Py_ARITHMETIC_RIGHT_SHIFT(TYPE, I, J) \ - ((I) < 0 ? -1-((-1-(I)) >> (J)) : (I) >> (J)) -#else -#define Py_ARITHMETIC_RIGHT_SHIFT(TYPE, I, J) ((I) >> (J)) -#endif - -/* Py_FORCE_EXPANSION(X) - * "Simply" returns its argument. However, macro expansions within the - * argument are evaluated. This unfortunate trickery is needed to get - * token-pasting to work as desired in some cases. - */ -#define Py_FORCE_EXPANSION(X) X - -/* Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) - * Cast VALUE to type NARROW from type WIDE. In Py_DEBUG mode, this - * assert-fails if any information is lost. - * Caution: - * VALUE may be evaluated more than once. - */ -#ifdef Py_DEBUG -#define Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) \ - (assert((WIDE)(NARROW)(VALUE) == (VALUE)), (NARROW)(VALUE)) -#else -#define Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) (NARROW)(VALUE) -#endif - -/* Py_SET_ERRNO_ON_MATH_ERROR(x) - * If a libm function did not set errno, but it looks like the result - * overflowed or not-a-number, set errno to ERANGE or EDOM. Set errno - * to 0 before calling a libm function, and invoke this macro after, - * passing the function result. - * Caution: - * This isn't reliable. See Py_OVERFLOWED comments. - * X is evaluated more than once. - */ -#if defined(__FreeBSD__) || defined(__OpenBSD__) || (defined(__hpux) && defined(__ia64)) -#define _Py_SET_EDOM_FOR_NAN(X) if (isnan(X)) errno = EDOM; -#else -#define _Py_SET_EDOM_FOR_NAN(X) ; -#endif -#define Py_SET_ERRNO_ON_MATH_ERROR(X) \ - do { \ - if (errno == 0) { \ - if ((X) == Py_HUGE_VAL || (X) == -Py_HUGE_VAL) \ - errno = ERANGE; \ - else _Py_SET_EDOM_FOR_NAN(X) \ - } \ - } while(0) - -/* Py_SET_ERANGE_IF_OVERFLOW(x) - * An alias of Py_SET_ERRNO_ON_MATH_ERROR for backward-compatibility. - */ -#define Py_SET_ERANGE_IF_OVERFLOW(X) Py_SET_ERRNO_ON_MATH_ERROR(X) - -/* Py_ADJUST_ERANGE1(x) - * Py_ADJUST_ERANGE2(x, y) - * Set errno to 0 before calling a libm function, and invoke one of these - * macros after, passing the function result(s) (Py_ADJUST_ERANGE2 is useful - * for functions returning complex results). This makes two kinds of - * adjustments to errno: (A) If it looks like the platform libm set - * errno=ERANGE due to underflow, clear errno. (B) If it looks like the - * platform libm overflowed but didn't set errno, force errno to ERANGE. In - * effect, we're trying to force a useful implementation of C89 errno - * behavior. - * Caution: - * This isn't reliable. See Py_OVERFLOWED comments. - * X and Y may be evaluated more than once. - */ -#define Py_ADJUST_ERANGE1(X) \ - do { \ - if (errno == 0) { \ - if ((X) == Py_HUGE_VAL || (X) == -Py_HUGE_VAL) \ - errno = ERANGE; \ - } \ - else if (errno == ERANGE && (X) == 0.0) \ - errno = 0; \ - } while(0) - -#define Py_ADJUST_ERANGE2(X, Y) \ - do { \ - if ((X) == Py_HUGE_VAL || (X) == -Py_HUGE_VAL || \ - (Y) == Py_HUGE_VAL || (Y) == -Py_HUGE_VAL) { \ - if (errno == 0) \ - errno = ERANGE; \ - } \ - else if (errno == ERANGE) \ - errno = 0; \ - } while(0) - -/* The functions _Py_dg_strtod and _Py_dg_dtoa in Python/dtoa.c (which are - * required to support the short float repr introduced in Python 3.1) require - * that the floating-point unit that's being used for arithmetic operations - * on C doubles is set to use 53-bit precision. It also requires that the - * FPU rounding mode is round-half-to-even, but that's less often an issue. - * - * If your FPU isn't already set to 53-bit precision/round-half-to-even, and - * you want to make use of _Py_dg_strtod and _Py_dg_dtoa, then you should - * - * #define HAVE_PY_SET_53BIT_PRECISION 1 - * - * and also give appropriate definitions for the following three macros: - * - * _PY_SET_53BIT_PRECISION_START : store original FPU settings, and - * set FPU to 53-bit precision/round-half-to-even - * _PY_SET_53BIT_PRECISION_END : restore original FPU settings - * _PY_SET_53BIT_PRECISION_HEADER : any variable declarations needed to - * use the two macros above. - * - * The macros are designed to be used within a single C function: see - * Python/pystrtod.c for an example of their use. - */ - -/* get and set x87 control word for gcc/x86 */ -#ifdef HAVE_GCC_ASM_FOR_X87 -#define HAVE_PY_SET_53BIT_PRECISION 1 -/* _Py_get/set_387controlword functions are defined in Python/pymath.c */ -#define _Py_SET_53BIT_PRECISION_HEADER \ - unsigned short old_387controlword, new_387controlword -#define _Py_SET_53BIT_PRECISION_START \ - do { \ - old_387controlword = _Py_get_387controlword(); \ - new_387controlword = (old_387controlword & ~0x0f00) | 0x0200; \ - if (new_387controlword != old_387controlword) \ - _Py_set_387controlword(new_387controlword); \ - } while (0) -#define _Py_SET_53BIT_PRECISION_END \ - if (new_387controlword != old_387controlword) \ - _Py_set_387controlword(old_387controlword) -#endif - -/* get and set x87 control word for VisualStudio/x86 */ -#if defined(_MSC_VER) && !defined(_WIN64) && !defined(_M_ARM) /* x87 not supported in 64-bit or ARM */ -#define HAVE_PY_SET_53BIT_PRECISION 1 -#define _Py_SET_53BIT_PRECISION_HEADER \ - unsigned int old_387controlword, new_387controlword, out_387controlword -/* We use the __control87_2 function to set only the x87 control word. - The SSE control word is unaffected. */ -#define _Py_SET_53BIT_PRECISION_START \ - do { \ - __control87_2(0, 0, &old_387controlword, NULL); \ - new_387controlword = \ - (old_387controlword & ~(_MCW_PC | _MCW_RC)) | (_PC_53 | _RC_NEAR); \ - if (new_387controlword != old_387controlword) \ - __control87_2(new_387controlword, _MCW_PC | _MCW_RC, \ - &out_387controlword, NULL); \ - } while (0) -#define _Py_SET_53BIT_PRECISION_END \ - do { \ - if (new_387controlword != old_387controlword) \ - __control87_2(old_387controlword, _MCW_PC | _MCW_RC, \ - &out_387controlword, NULL); \ - } while (0) -#endif - -#ifdef HAVE_GCC_ASM_FOR_MC68881 -#define HAVE_PY_SET_53BIT_PRECISION 1 -#define _Py_SET_53BIT_PRECISION_HEADER \ - unsigned int old_fpcr, new_fpcr -#define _Py_SET_53BIT_PRECISION_START \ - do { \ - __asm__ ("fmove.l %%fpcr,%0" : "=g" (old_fpcr)); \ - /* Set double precision / round to nearest. */ \ - new_fpcr = (old_fpcr & ~0xf0) | 0x80; \ - if (new_fpcr != old_fpcr) \ - __asm__ volatile ("fmove.l %0,%%fpcr" : : "g" (new_fpcr)); \ - } while (0) -#define _Py_SET_53BIT_PRECISION_END \ - do { \ - if (new_fpcr != old_fpcr) \ - __asm__ volatile ("fmove.l %0,%%fpcr" : : "g" (old_fpcr)); \ - } while (0) -#endif - -/* default definitions are empty */ -#ifndef HAVE_PY_SET_53BIT_PRECISION -#define _Py_SET_53BIT_PRECISION_HEADER -#define _Py_SET_53BIT_PRECISION_START -#define _Py_SET_53BIT_PRECISION_END -#endif - -/* If we can't guarantee 53-bit precision, don't use the code - in Python/dtoa.c, but fall back to standard code. This - means that repr of a float will be long (17 sig digits). - - Realistically, there are two things that could go wrong: - - (1) doubles aren't IEEE 754 doubles, or - (2) we're on x86 with the rounding precision set to 64-bits - (extended precision), and we don't know how to change - the rounding precision. - */ - -#if !defined(DOUBLE_IS_LITTLE_ENDIAN_IEEE754) && \ - !defined(DOUBLE_IS_BIG_ENDIAN_IEEE754) && \ - !defined(DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754) -#define PY_NO_SHORT_FLOAT_REPR -#endif - -/* double rounding is symptomatic of use of extended precision on x86. If - we're seeing double rounding, and we don't have any mechanism available for - changing the FPU rounding precision, then don't use Python/dtoa.c. */ -#if defined(X87_DOUBLE_ROUNDING) && !defined(HAVE_PY_SET_53BIT_PRECISION) -#define PY_NO_SHORT_FLOAT_REPR -#endif - - -/* Py_DEPRECATED(version) - * Declare a variable, type, or function deprecated. - * The macro must be placed before the declaration. - * Usage: - * Py_DEPRECATED(3.3) extern int old_var; - * Py_DEPRECATED(3.4) typedef int T1; - * Py_DEPRECATED(3.8) PyAPI_FUNC(int) Py_OldFunction(void); - */ -#if defined(__GNUC__) \ - && ((__GNUC__ >= 4) || (__GNUC__ == 3) && (__GNUC_MINOR__ >= 1)) -#define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__)) -#elif defined(_MSC_VER) -#define Py_DEPRECATED(VERSION) __declspec(deprecated( \ - "deprecated in " #VERSION)) -#else -#define Py_DEPRECATED(VERSION_UNUSED) -#endif - -#if defined(__clang__) -#define _Py_COMP_DIAG_PUSH _Pragma("clang diagnostic push") -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS \ - _Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\"") -#define _Py_COMP_DIAG_POP _Pragma("clang diagnostic pop") -#elif defined(__GNUC__) \ - && ((__GNUC__ >= 5) || (__GNUC__ == 4) && (__GNUC_MINOR__ >= 6)) -#define _Py_COMP_DIAG_PUSH _Pragma("GCC diagnostic push") -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS \ - _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") -#define _Py_COMP_DIAG_POP _Pragma("GCC diagnostic pop") -#elif defined(_MSC_VER) -#define _Py_COMP_DIAG_PUSH __pragma(warning(push)) -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS __pragma(warning(disable: 4996)) -#define _Py_COMP_DIAG_POP __pragma(warning(pop)) -#else -#define _Py_COMP_DIAG_PUSH -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS -#define _Py_COMP_DIAG_POP -#endif - -/* _Py_HOT_FUNCTION - * The hot attribute on a function is used to inform the compiler that the - * function is a hot spot of the compiled program. The function is optimized - * more aggressively and on many target it is placed into special subsection of - * the text section so all hot functions appears close together improving - * locality. - * - * Usage: - * int _Py_HOT_FUNCTION x(void) { return 3; } - * - * Issue #28618: This attribute must not be abused, otherwise it can have a - * negative effect on performance. Only the functions were Python spend most of - * its time must use it. Use a profiler when running performance benchmark - * suite to find these functions. - */ -#if defined(__GNUC__) \ - && ((__GNUC__ >= 5) || (__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)) -#define _Py_HOT_FUNCTION __attribute__((hot)) -#else -#define _Py_HOT_FUNCTION -#endif - -/* _Py_NO_INLINE - * Disable inlining on a function. For example, it helps to reduce the C stack - * consumption. - * - * Usage: - * int _Py_NO_INLINE x(void) { return 3; } - */ -#if defined(_MSC_VER) -# define _Py_NO_INLINE __declspec(noinline) -#elif defined(__GNUC__) || defined(__clang__) -# define _Py_NO_INLINE __attribute__ ((noinline)) -#else -# define _Py_NO_INLINE -#endif - -/************************************************************************** -Prototypes that are missing from the standard include files on some systems -(and possibly only some versions of such systems.) - -Please be conservative with adding new ones, document them and enclose them -in platform-specific #ifdefs. -**************************************************************************/ - -#ifdef SOLARIS -/* Unchecked */ -extern int gethostname(char *, int); -#endif - -#ifdef HAVE__GETPTY -#include /* we need to import mode_t */ -extern char * _getpty(int *, int, mode_t, int); -#endif - -/* On QNX 6, struct termio must be declared by including sys/termio.h - if TCGETA, TCSETA, TCSETAW, or TCSETAF are used. sys/termio.h must - be included before termios.h or it will generate an error. */ -#if defined(HAVE_SYS_TERMIO_H) && !defined(__hpux) -#include -#endif - - -/* On 4.4BSD-descendants, ctype functions serves the whole range of - * wchar_t character set rather than single byte code points only. - * This characteristic can break some operations of string object - * including str.upper() and str.split() on UTF-8 locales. This - * workaround was provided by Tim Robbins of FreeBSD project. - */ - -#if defined(__APPLE__) -# define _PY_PORT_CTYPE_UTF8_ISSUE -#endif - -#ifdef _PY_PORT_CTYPE_UTF8_ISSUE -#ifndef __cplusplus - /* The workaround below is unsafe in C++ because - * the defines these symbols as real functions, - * with a slightly different signature. - * See issue #10910 - */ -#include -#include -#undef isalnum -#define isalnum(c) iswalnum(btowc(c)) -#undef isalpha -#define isalpha(c) iswalpha(btowc(c)) -#undef islower -#define islower(c) iswlower(btowc(c)) -#undef isspace -#define isspace(c) iswspace(btowc(c)) -#undef isupper -#define isupper(c) iswupper(btowc(c)) -#undef tolower -#define tolower(c) towlower(btowc(c)) -#undef toupper -#define toupper(c) towupper(btowc(c)) -#endif -#endif - - -/* Declarations for symbol visibility. - - PyAPI_FUNC(type): Declares a public Python API function and return type - PyAPI_DATA(type): Declares public Python data and its type - PyMODINIT_FUNC: A Python module init function. If these functions are - inside the Python core, they are private to the core. - If in an extension module, it may be declared with - external linkage depending on the platform. - - As a number of platforms support/require "__declspec(dllimport/dllexport)", - we support a HAVE_DECLSPEC_DLL macro to save duplication. -*/ - -/* - All windows ports, except cygwin, are handled in PC/pyconfig.h. - - Cygwin is the only other autoconf platform requiring special - linkage handling and it uses __declspec(). -*/ -#if defined(__CYGWIN__) -# define HAVE_DECLSPEC_DLL -#endif - -#include "exports.h" - -/* only get special linkage if built as shared or platform is Cygwin */ -#if defined(Py_ENABLE_SHARED) || defined(__CYGWIN__) -# if defined(HAVE_DECLSPEC_DLL) -# if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) -# define PyAPI_FUNC(RTYPE) Py_EXPORTED_SYMBOL RTYPE -# define PyAPI_DATA(RTYPE) extern Py_EXPORTED_SYMBOL RTYPE - /* module init functions inside the core need no external linkage */ - /* except for Cygwin to handle embedding */ -# if defined(__CYGWIN__) -# define PyMODINIT_FUNC Py_EXPORTED_SYMBOL PyObject* -# else /* __CYGWIN__ */ -# define PyMODINIT_FUNC PyObject* -# endif /* __CYGWIN__ */ -# else /* Py_BUILD_CORE */ - /* Building an extension module, or an embedded situation */ - /* public Python functions and data are imported */ - /* Under Cygwin, auto-import functions to prevent compilation */ - /* failures similar to those described at the bottom of 4.1: */ - /* http://docs.python.org/extending/windows.html#a-cookbook-approach */ -# if !defined(__CYGWIN__) -# define PyAPI_FUNC(RTYPE) Py_IMPORTED_SYMBOL RTYPE -# endif /* !__CYGWIN__ */ -# define PyAPI_DATA(RTYPE) extern Py_IMPORTED_SYMBOL RTYPE - /* module init functions outside the core must be exported */ -# if defined(__cplusplus) -# define PyMODINIT_FUNC extern "C" Py_EXPORTED_SYMBOL PyObject* -# else /* __cplusplus */ -# define PyMODINIT_FUNC Py_EXPORTED_SYMBOL PyObject* -# endif /* __cplusplus */ -# endif /* Py_BUILD_CORE */ -# endif /* HAVE_DECLSPEC_DLL */ -#endif /* Py_ENABLE_SHARED */ - -/* If no external linkage macros defined by now, create defaults */ -#ifndef PyAPI_FUNC -# define PyAPI_FUNC(RTYPE) Py_EXPORTED_SYMBOL RTYPE -#endif -#ifndef PyAPI_DATA -# define PyAPI_DATA(RTYPE) extern Py_EXPORTED_SYMBOL RTYPE -#endif -#ifndef PyMODINIT_FUNC -# if defined(__cplusplus) -# define PyMODINIT_FUNC extern "C" Py_EXPORTED_SYMBOL PyObject* -# else /* __cplusplus */ -# define PyMODINIT_FUNC Py_EXPORTED_SYMBOL PyObject* -# endif /* __cplusplus */ -#endif - -/* limits.h constants that may be missing */ - -#ifndef INT_MAX -#define INT_MAX 2147483647 -#endif - -#ifndef LONG_MAX -#if SIZEOF_LONG == 4 -#define LONG_MAX 0X7FFFFFFFL -#elif SIZEOF_LONG == 8 -#define LONG_MAX 0X7FFFFFFFFFFFFFFFL -#else -#error "could not set LONG_MAX in pyport.h" -#endif -#endif - -#ifndef LONG_MIN -#define LONG_MIN (-LONG_MAX-1) -#endif - -#ifndef LONG_BIT -#define LONG_BIT (8 * SIZEOF_LONG) -#endif - -#if LONG_BIT != 8 * SIZEOF_LONG -/* 04-Oct-2000 LONG_BIT is apparently (mis)defined as 64 on some recent - * 32-bit platforms using gcc. We try to catch that here at compile-time - * rather than waiting for integer multiplication to trigger bogus - * overflows. - */ -#error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)." -#endif - -#ifdef __cplusplus -} -#endif - -/* - * Hide GCC attributes from compilers that don't support them. - */ -#if (!defined(__GNUC__) || __GNUC__ < 2 || \ - (__GNUC__ == 2 && __GNUC_MINOR__ < 7) ) -#define Py_GCC_ATTRIBUTE(x) -#else -#define Py_GCC_ATTRIBUTE(x) __attribute__(x) -#endif - -/* - * Specify alignment on compilers that support it. - */ -#if defined(__GNUC__) && __GNUC__ >= 3 -#define Py_ALIGNED(x) __attribute__((aligned(x))) -#else -#define Py_ALIGNED(x) -#endif - -/* Eliminate end-of-loop code not reached warnings from SunPro C - * when using do{...}while(0) macros - */ -#ifdef __SUNPRO_C -#pragma error_messages (off,E_END_OF_LOOP_CODE_NOT_REACHED) -#endif - -#ifndef Py_LL -#define Py_LL(x) x##LL -#endif - -#ifndef Py_ULL -#define Py_ULL(x) Py_LL(x##U) -#endif - -#define Py_VA_COPY va_copy - -/* - * Convenient macros to deal with endianness of the platform. WORDS_BIGENDIAN is - * detected by configure and defined in pyconfig.h. The code in pyconfig.h - * also takes care of Apple's universal builds. - */ - -#ifdef WORDS_BIGENDIAN -# define PY_BIG_ENDIAN 1 -# define PY_LITTLE_ENDIAN 0 -#else -# define PY_BIG_ENDIAN 0 -# define PY_LITTLE_ENDIAN 1 -#endif - -#ifdef Py_BUILD_CORE -/* - * Macros to protect CRT calls against instant termination when passed an - * invalid parameter (issue23524). - */ -#if defined _MSC_VER && _MSC_VER >= 1900 - -extern _invalid_parameter_handler _Py_silent_invalid_parameter_handler; -#define _Py_BEGIN_SUPPRESS_IPH { _invalid_parameter_handler _Py_old_handler = \ - _set_thread_local_invalid_parameter_handler(_Py_silent_invalid_parameter_handler); -#define _Py_END_SUPPRESS_IPH _set_thread_local_invalid_parameter_handler(_Py_old_handler); } - -#else - -#define _Py_BEGIN_SUPPRESS_IPH -#define _Py_END_SUPPRESS_IPH - -#endif /* _MSC_VER >= 1900 */ -#endif /* Py_BUILD_CORE */ - -#ifdef __ANDROID__ - /* The Android langinfo.h header is not used. */ -# undef HAVE_LANGINFO_H -# undef CODESET -#endif - -/* Maximum value of the Windows DWORD type */ -#define PY_DWORD_MAX 4294967295U - -/* This macro used to tell whether Python was built with multithreading - * enabled. Now multithreading is always enabled, but keep the macro - * for compatibility. - */ -#ifndef WITH_THREAD -# define WITH_THREAD -#endif - -/* Check that ALT_SOABI is consistent with Py_TRACE_REFS: - ./configure --with-trace-refs should must be used to define Py_TRACE_REFS */ -#if defined(ALT_SOABI) && defined(Py_TRACE_REFS) -# error "Py_TRACE_REFS ABI is not compatible with release and debug ABI" -#endif - -#if defined(__ANDROID__) || defined(__VXWORKS__) - // Use UTF-8 as the locale encoding, ignore the LC_CTYPE locale. - // See _Py_GetLocaleEncoding(), PyUnicode_DecodeLocale() - // and PyUnicode_EncodeLocale(). -# define _Py_FORCE_UTF8_LOCALE -#endif - -#if defined(_Py_FORCE_UTF8_LOCALE) || defined(__APPLE__) - // Use UTF-8 as the filesystem encoding. - // See PyUnicode_DecodeFSDefaultAndSize(), PyUnicode_EncodeFSDefault(), - // Py_DecodeLocale() and Py_EncodeLocale(). -# define _Py_FORCE_UTF8_FS_ENCODING -#endif - -/* Mark a function which cannot return. Example: - PyAPI_FUNC(void) _Py_NO_RETURN PyThread_exit_thread(void); - - XLC support is intentionally omitted due to bpo-40244 */ -#ifndef _Py_NO_RETURN -#if defined(__clang__) || \ - (defined(__GNUC__) && \ - ((__GNUC__ >= 3) || \ - (__GNUC__ == 2) && (__GNUC_MINOR__ >= 5))) -# define _Py_NO_RETURN __attribute__((__noreturn__)) -#elif defined(_MSC_VER) -# define _Py_NO_RETURN __declspec(noreturn) -#else -# define _Py_NO_RETURN -#endif -#endif - - -// Preprocessor check for a builtin preprocessor function. Always return 0 -// if __has_builtin() macro is not defined. -// -// __has_builtin() is available on clang and GCC 10. -#ifdef __has_builtin -# define _Py__has_builtin(x) __has_builtin(x) -#else -# define _Py__has_builtin(x) 0 -#endif - - -#endif /* Py_PYPORT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pystate.h b/_Pre_Builds/_Python310_cpp/include/pystate.h deleted file mode 100644 index bae4407..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pystate.h +++ /dev/null @@ -1,150 +0,0 @@ -/* Thread and interpreter state structures and their interfaces */ - - -#ifndef Py_PYSTATE_H -#define Py_PYSTATE_H -#ifdef __cplusplus -extern "C" { -#endif - -/* This limitation is for performance and simplicity. If needed it can be -removed (with effort). */ -#define MAX_CO_EXTRA_USERS 255 - -/* Forward declarations for PyFrameObject, PyThreadState - and PyInterpreterState */ -struct _ts; -struct _is; - -/* struct _ts is defined in cpython/pystate.h */ -typedef struct _ts PyThreadState; -/* struct _is is defined in internal/pycore_interp.h */ -typedef struct _is PyInterpreterState; - -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_New(void); -PyAPI_FUNC(void) PyInterpreterState_Clear(PyInterpreterState *); -PyAPI_FUNC(void) PyInterpreterState_Delete(PyInterpreterState *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* New in 3.9 */ -/* Get the current interpreter state. - - Issue a fatal error if there no current Python thread state or no current - interpreter. It cannot return NULL. - - The caller must hold the GIL. */ -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Get(void); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03080000 -/* New in 3.8 */ -PyAPI_FUNC(PyObject *) PyInterpreterState_GetDict(PyInterpreterState *); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -/* New in 3.7 */ -PyAPI_FUNC(int64_t) PyInterpreterState_GetID(PyInterpreterState *); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 - -/* State unique per thread */ - -/* New in 3.3 */ -PyAPI_FUNC(int) PyState_AddModule(PyObject*, struct PyModuleDef*); -PyAPI_FUNC(int) PyState_RemoveModule(struct PyModuleDef*); -#endif -PyAPI_FUNC(PyObject*) PyState_FindModule(struct PyModuleDef*); - -PyAPI_FUNC(PyThreadState *) PyThreadState_New(PyInterpreterState *); -PyAPI_FUNC(void) PyThreadState_Clear(PyThreadState *); -PyAPI_FUNC(void) PyThreadState_Delete(PyThreadState *); - -/* Get the current thread state. - - When the current thread state is NULL, this issues a fatal error (so that - the caller needn't check for NULL). - - The caller must hold the GIL. - - See also PyThreadState_GET() and _PyThreadState_GET(). */ -PyAPI_FUNC(PyThreadState *) PyThreadState_Get(void); - -/* Get the current Python thread state. - - Macro using PyThreadState_Get() or _PyThreadState_GET() depending if - pycore_pystate.h is included or not (this header redefines the macro). - - If PyThreadState_Get() is used, issue a fatal error if the current thread - state is NULL. - - See also PyThreadState_Get() and _PyThreadState_GET(). */ -#define PyThreadState_GET() PyThreadState_Get() - -PyAPI_FUNC(PyThreadState *) PyThreadState_Swap(PyThreadState *); -PyAPI_FUNC(PyObject *) PyThreadState_GetDict(void); -PyAPI_FUNC(int) PyThreadState_SetAsyncExc(unsigned long, PyObject *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* New in 3.9 */ -PyAPI_FUNC(PyInterpreterState*) PyThreadState_GetInterpreter(PyThreadState *tstate); -PyAPI_FUNC(PyFrameObject*) PyThreadState_GetFrame(PyThreadState *tstate); -PyAPI_FUNC(uint64_t) PyThreadState_GetID(PyThreadState *tstate); -#endif - -typedef - enum {PyGILState_LOCKED, PyGILState_UNLOCKED} - PyGILState_STATE; - - -/* Ensure that the current thread is ready to call the Python - C API, regardless of the current state of Python, or of its - thread lock. This may be called as many times as desired - by a thread so long as each call is matched with a call to - PyGILState_Release(). In general, other thread-state APIs may - be used between _Ensure() and _Release() calls, so long as the - thread-state is restored to its previous state before the Release(). - For example, normal use of the Py_BEGIN_ALLOW_THREADS/ - Py_END_ALLOW_THREADS macros are acceptable. - - The return value is an opaque "handle" to the thread state when - PyGILState_Ensure() was called, and must be passed to - PyGILState_Release() to ensure Python is left in the same state. Even - though recursive calls are allowed, these handles can *not* be shared - - each unique call to PyGILState_Ensure must save the handle for its - call to PyGILState_Release. - - When the function returns, the current thread will hold the GIL. - - Failure is a fatal error. -*/ -PyAPI_FUNC(PyGILState_STATE) PyGILState_Ensure(void); - -/* Release any resources previously acquired. After this call, Python's - state will be the same as it was prior to the corresponding - PyGILState_Ensure() call (but generally this state will be unknown to - the caller, hence the use of the GILState API.) - - Every call to PyGILState_Ensure must be matched by a call to - PyGILState_Release on the same thread. -*/ -PyAPI_FUNC(void) PyGILState_Release(PyGILState_STATE); - -/* Helper/diagnostic function - get the current thread state for - this thread. May return NULL if no GILState API has been used - on the current thread. Note that the main thread always has such a - thread-state, even if no auto-thread-state call has been made - on the main thread. -*/ -PyAPI_FUNC(PyThreadState *) PyGILState_GetThisThreadState(void); - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYSTATE_H -# include "cpython/pystate.h" -# undef Py_CPYTHON_PYSTATE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYSTATE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pystrcmp.h b/_Pre_Builds/_Python310_cpp/include/pystrcmp.h deleted file mode 100644 index edb1239..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pystrcmp.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef Py_STRCMP_H -#define Py_STRCMP_H - -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(int) PyOS_mystrnicmp(const char *, const char *, Py_ssize_t); -PyAPI_FUNC(int) PyOS_mystricmp(const char *, const char *); - -#ifdef MS_WINDOWS -#define PyOS_strnicmp strnicmp -#define PyOS_stricmp stricmp -#else -#define PyOS_strnicmp PyOS_mystrnicmp -#define PyOS_stricmp PyOS_mystricmp -#endif - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_STRCMP_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pystrhex.h b/_Pre_Builds/_Python310_cpp/include/pystrhex.h deleted file mode 100644 index a4f3630..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pystrhex.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef Py_STRHEX_H -#define Py_STRHEX_H - -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API -/* Returns a str() containing the hex representation of argbuf. */ -PyAPI_FUNC(PyObject*) _Py_strhex(const char* argbuf, const Py_ssize_t arglen); -/* Returns a bytes() containing the ASCII hex representation of argbuf. */ -PyAPI_FUNC(PyObject*) _Py_strhex_bytes(const char* argbuf, const Py_ssize_t arglen); -/* These variants include support for a separator between every N bytes: */ -PyAPI_FUNC(PyObject*) _Py_strhex_with_sep(const char* argbuf, const Py_ssize_t arglen, const PyObject* sep, const int bytes_per_group); -PyAPI_FUNC(PyObject*) _Py_strhex_bytes_with_sep(const char* argbuf, const Py_ssize_t arglen, const PyObject* sep, const int bytes_per_group); -#endif /* !Py_LIMITED_API */ - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_STRHEX_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pystrtod.h b/_Pre_Builds/_Python310_cpp/include/pystrtod.h deleted file mode 100644 index c1e84de..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pystrtod.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef Py_STRTOD_H -#define Py_STRTOD_H - -#ifdef __cplusplus -extern "C" { -#endif - - -PyAPI_FUNC(double) PyOS_string_to_double(const char *str, - char **endptr, - PyObject *overflow_exception); - -/* The caller is responsible for calling PyMem_Free to free the buffer - that's is returned. */ -PyAPI_FUNC(char *) PyOS_double_to_string(double val, - char format_code, - int precision, - int flags, - int *type); - -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _Py_string_to_number_with_underscores( - const char *str, Py_ssize_t len, const char *what, PyObject *obj, void *arg, - PyObject *(*innerfunc)(const char *, Py_ssize_t, void *)); - -PyAPI_FUNC(double) _Py_parse_inf_or_nan(const char *p, char **endptr); -#endif - - -/* PyOS_double_to_string's "flags" parameter can be set to 0 or more of: */ -#define Py_DTSF_SIGN 0x01 /* always add the sign */ -#define Py_DTSF_ADD_DOT_0 0x02 /* if the result is an integer add ".0" */ -#define Py_DTSF_ALT 0x04 /* "alternate" formatting. it's format_code - specific */ - -/* PyOS_double_to_string's "type", if non-NULL, will be set to one of: */ -#define Py_DTST_FINITE 0 -#define Py_DTST_INFINITE 1 -#define Py_DTST_NAN 2 - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_STRTOD_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pythonrun.h b/_Pre_Builds/_Python310_cpp/include/pythonrun.h deleted file mode 100644 index b0a2fc3..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pythonrun.h +++ /dev/null @@ -1,44 +0,0 @@ - -/* Interfaces to parse and execute pieces of python code */ - -#ifndef Py_PYTHONRUN_H -#define Py_PYTHONRUN_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) Py_CompileString(const char *, const char *, int); - -PyAPI_FUNC(void) PyErr_Print(void); -PyAPI_FUNC(void) PyErr_PrintEx(int); -PyAPI_FUNC(void) PyErr_Display(PyObject *, PyObject *, PyObject *); - - -/* Stuff with no proper home (yet) */ -PyAPI_DATA(int) (*PyOS_InputHook)(void); - -/* Stack size, in "pointers" (so we get extra safety margins - on 64-bit platforms). On a 32-bit platform, this translates - to an 8k margin. */ -#define PYOS_STACK_MARGIN 2048 - -#if defined(WIN32) && !defined(MS_WIN64) && !defined(_M_ARM) && defined(_MSC_VER) && _MSC_VER >= 1300 -/* Enable stack checking under Microsoft C */ -#define USE_STACKCHECK -#endif - -#ifdef USE_STACKCHECK -/* Check that we aren't overflowing our stack */ -PyAPI_FUNC(int) PyOS_CheckStack(void); -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYTHONRUN_H -# include "cpython/pythonrun.h" -# undef Py_CPYTHON_PYTHONRUN_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYTHONRUN_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/pythread.h b/_Pre_Builds/_Python310_cpp/include/pythread.h deleted file mode 100644 index bb9d864..0000000 --- a/_Pre_Builds/_Python310_cpp/include/pythread.h +++ /dev/null @@ -1,169 +0,0 @@ - -#ifndef Py_PYTHREAD_H -#define Py_PYTHREAD_H - -typedef void *PyThread_type_lock; - -#ifdef __cplusplus -extern "C" { -#endif - -/* Return status codes for Python lock acquisition. Chosen for maximum - * backwards compatibility, ie failure -> 0, success -> 1. */ -typedef enum PyLockStatus { - PY_LOCK_FAILURE = 0, - PY_LOCK_ACQUIRED = 1, - PY_LOCK_INTR -} PyLockStatus; - -#ifndef Py_LIMITED_API -#define PYTHREAD_INVALID_THREAD_ID ((unsigned long)-1) -#endif - -PyAPI_FUNC(void) PyThread_init_thread(void); -PyAPI_FUNC(unsigned long) PyThread_start_new_thread(void (*)(void *), void *); -PyAPI_FUNC(void) _Py_NO_RETURN PyThread_exit_thread(void); -PyAPI_FUNC(unsigned long) PyThread_get_thread_ident(void); - -#if defined(__APPLE__) || defined(__linux__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(_WIN32) || defined(_AIX) -#define PY_HAVE_THREAD_NATIVE_ID -PyAPI_FUNC(unsigned long) PyThread_get_thread_native_id(void); -#endif - -PyAPI_FUNC(PyThread_type_lock) PyThread_allocate_lock(void); -PyAPI_FUNC(void) PyThread_free_lock(PyThread_type_lock); -PyAPI_FUNC(int) PyThread_acquire_lock(PyThread_type_lock, int); -#define WAIT_LOCK 1 -#define NOWAIT_LOCK 0 - -#ifndef Py_LIMITED_API -#ifdef HAVE_FORK -/* Private function to reinitialize a lock at fork in the child process. - Reset the lock to the unlocked state. - Return 0 on success, return -1 on error. */ -PyAPI_FUNC(int) _PyThread_at_fork_reinit(PyThread_type_lock *lock); -#endif /* HAVE_FORK */ -#endif /* !Py_LIMITED_API */ - -/* PY_TIMEOUT_T is the integral type used to specify timeouts when waiting - on a lock (see PyThread_acquire_lock_timed() below). - PY_TIMEOUT_MAX is the highest usable value (in microseconds) of that - type, and depends on the system threading API. - - NOTE: this isn't the same value as `_thread.TIMEOUT_MAX`. The _thread - module exposes a higher-level API, with timeouts expressed in seconds - and floating-point numbers allowed. -*/ -#define PY_TIMEOUT_T long long - -#if defined(_POSIX_THREADS) - /* PyThread_acquire_lock_timed() uses _PyTime_FromNanoseconds(us * 1000), - convert microseconds to nanoseconds. */ -# define PY_TIMEOUT_MAX (LLONG_MAX / 1000) -#elif defined (NT_THREADS) - /* In the NT API, the timeout is a DWORD and is expressed in milliseconds */ -# if 0xFFFFFFFFLL * 1000 < LLONG_MAX -# define PY_TIMEOUT_MAX (0xFFFFFFFFLL * 1000) -# else -# define PY_TIMEOUT_MAX LLONG_MAX -# endif -#else -# define PY_TIMEOUT_MAX LLONG_MAX -#endif - - -/* If microseconds == 0, the call is non-blocking: it returns immediately - even when the lock can't be acquired. - If microseconds > 0, the call waits up to the specified duration. - If microseconds < 0, the call waits until success (or abnormal failure) - - microseconds must be less than PY_TIMEOUT_MAX. Behaviour otherwise is - undefined. - - If intr_flag is true and the acquire is interrupted by a signal, then the - call will return PY_LOCK_INTR. The caller may reattempt to acquire the - lock. -*/ -PyAPI_FUNC(PyLockStatus) PyThread_acquire_lock_timed(PyThread_type_lock, - PY_TIMEOUT_T microseconds, - int intr_flag); - -PyAPI_FUNC(void) PyThread_release_lock(PyThread_type_lock); - -PyAPI_FUNC(size_t) PyThread_get_stacksize(void); -PyAPI_FUNC(int) PyThread_set_stacksize(size_t); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyThread_GetInfo(void); -#endif - - -/* Thread Local Storage (TLS) API - TLS API is DEPRECATED. Use Thread Specific Storage (TSS) API. - - The existing TLS API has used int to represent TLS keys across all - platforms, but it is not POSIX-compliant. Therefore, the new TSS API uses - opaque data type to represent TSS keys to be compatible (see PEP 539). -*/ -Py_DEPRECATED(3.7) PyAPI_FUNC(int) PyThread_create_key(void); -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyThread_delete_key(int key); -Py_DEPRECATED(3.7) PyAPI_FUNC(int) PyThread_set_key_value(int key, - void *value); -Py_DEPRECATED(3.7) PyAPI_FUNC(void *) PyThread_get_key_value(int key); -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyThread_delete_key_value(int key); - -/* Cleanup after a fork */ -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyThread_ReInitTLS(void); - - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -/* New in 3.7 */ -/* Thread Specific Storage (TSS) API */ - -typedef struct _Py_tss_t Py_tss_t; /* opaque */ - -#ifndef Py_LIMITED_API -#if defined(_POSIX_THREADS) - /* Darwin needs pthread.h to know type name the pthread_key_t. */ -# include -# define NATIVE_TSS_KEY_T pthread_key_t -#elif defined(NT_THREADS) - /* In Windows, native TSS key type is DWORD, - but hardcode the unsigned long to avoid errors for include directive. - */ -# define NATIVE_TSS_KEY_T unsigned long -#else -# error "Require native threads. See https://bugs.python.org/issue31370" -#endif - -/* When Py_LIMITED_API is not defined, the type layout of Py_tss_t is - exposed to allow static allocation in the API clients. Even in this case, - you must handle TSS keys through API functions due to compatibility. -*/ -struct _Py_tss_t { - int _is_initialized; - NATIVE_TSS_KEY_T _key; -}; - -#undef NATIVE_TSS_KEY_T - -/* When static allocation, you must initialize with Py_tss_NEEDS_INIT. */ -#define Py_tss_NEEDS_INIT {0} -#endif /* !Py_LIMITED_API */ - -PyAPI_FUNC(Py_tss_t *) PyThread_tss_alloc(void); -PyAPI_FUNC(void) PyThread_tss_free(Py_tss_t *key); - -/* The parameter key must not be NULL. */ -PyAPI_FUNC(int) PyThread_tss_is_created(Py_tss_t *key); -PyAPI_FUNC(int) PyThread_tss_create(Py_tss_t *key); -PyAPI_FUNC(void) PyThread_tss_delete(Py_tss_t *key); -PyAPI_FUNC(int) PyThread_tss_set(Py_tss_t *key, void *value); -PyAPI_FUNC(void *) PyThread_tss_get(Py_tss_t *key); -#endif /* New in 3.7 */ - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_PYTHREAD_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/rangeobject.h b/_Pre_Builds/_Python310_cpp/include/rangeobject.h deleted file mode 100644 index d6af847..0000000 --- a/_Pre_Builds/_Python310_cpp/include/rangeobject.h +++ /dev/null @@ -1,27 +0,0 @@ - -/* Range object interface */ - -#ifndef Py_RANGEOBJECT_H -#define Py_RANGEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* -A range object represents an integer range. This is an immutable object; -a range cannot change its value after creation. - -Range objects behave like the corresponding tuple objects except that -they are represented by a start, stop, and step datamembers. -*/ - -PyAPI_DATA(PyTypeObject) PyRange_Type; -PyAPI_DATA(PyTypeObject) PyRangeIter_Type; -PyAPI_DATA(PyTypeObject) PyLongRangeIter_Type; - -#define PyRange_Check(op) Py_IS_TYPE(op, &PyRange_Type) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_RANGEOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/setobject.h b/_Pre_Builds/_Python310_cpp/include/setobject.h deleted file mode 100644 index 62516be..0000000 --- a/_Pre_Builds/_Python310_cpp/include/setobject.h +++ /dev/null @@ -1,110 +0,0 @@ -/* Set object interface */ - -#ifndef Py_SETOBJECT_H -#define Py_SETOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API - -/* There are three kinds of entries in the table: - -1. Unused: key == NULL and hash == 0 -2. Dummy: key == dummy and hash == -1 -3. Active: key != NULL and key != dummy and hash != -1 - -The hash field of Unused slots is always zero. - -The hash field of Dummy slots are set to -1 -meaning that dummy entries can be detected by -either entry->key==dummy or by entry->hash==-1. -*/ - -#define PySet_MINSIZE 8 - -typedef struct { - PyObject *key; - Py_hash_t hash; /* Cached hash code of the key */ -} setentry; - -/* The SetObject data structure is shared by set and frozenset objects. - -Invariant for sets: - - hash is -1 - -Invariants for frozensets: - - data is immutable. - - hash is the hash of the frozenset or -1 if not computed yet. - -*/ - -typedef struct { - PyObject_HEAD - - Py_ssize_t fill; /* Number active and dummy entries*/ - Py_ssize_t used; /* Number active entries */ - - /* The table contains mask + 1 slots, and that's a power of 2. - * We store the mask instead of the size because the mask is more - * frequently needed. - */ - Py_ssize_t mask; - - /* The table points to a fixed-size smalltable for small tables - * or to additional malloc'ed memory for bigger tables. - * The table pointer is never NULL which saves us from repeated - * runtime null-tests. - */ - setentry *table; - Py_hash_t hash; /* Only used by frozenset objects */ - Py_ssize_t finger; /* Search finger for pop() */ - - setentry smalltable[PySet_MINSIZE]; - PyObject *weakreflist; /* List of weak references */ -} PySetObject; - -#define PySet_GET_SIZE(so) (assert(PyAnySet_Check(so)),(((PySetObject *)(so))->used)) - -PyAPI_DATA(PyObject *) _PySet_Dummy; - -PyAPI_FUNC(int) _PySet_NextEntry(PyObject *set, Py_ssize_t *pos, PyObject **key, Py_hash_t *hash); -PyAPI_FUNC(int) _PySet_Update(PyObject *set, PyObject *iterable); - -#endif /* Section excluded by Py_LIMITED_API */ - -PyAPI_DATA(PyTypeObject) PySet_Type; -PyAPI_DATA(PyTypeObject) PyFrozenSet_Type; -PyAPI_DATA(PyTypeObject) PySetIter_Type; - -PyAPI_FUNC(PyObject *) PySet_New(PyObject *); -PyAPI_FUNC(PyObject *) PyFrozenSet_New(PyObject *); - -PyAPI_FUNC(int) PySet_Add(PyObject *set, PyObject *key); -PyAPI_FUNC(int) PySet_Clear(PyObject *set); -PyAPI_FUNC(int) PySet_Contains(PyObject *anyset, PyObject *key); -PyAPI_FUNC(int) PySet_Discard(PyObject *set, PyObject *key); -PyAPI_FUNC(PyObject *) PySet_Pop(PyObject *set); -PyAPI_FUNC(Py_ssize_t) PySet_Size(PyObject *anyset); - -#define PyFrozenSet_CheckExact(ob) Py_IS_TYPE(ob, &PyFrozenSet_Type) -#define PyFrozenSet_Check(ob) \ - (Py_IS_TYPE(ob, &PyFrozenSet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PyFrozenSet_Type)) - -#define PyAnySet_CheckExact(ob) \ - (Py_IS_TYPE(ob, &PySet_Type) || Py_IS_TYPE(ob, &PyFrozenSet_Type)) -#define PyAnySet_Check(ob) \ - (Py_IS_TYPE(ob, &PySet_Type) || Py_IS_TYPE(ob, &PyFrozenSet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PySet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PyFrozenSet_Type)) - -#define PySet_CheckExact(op) Py_IS_TYPE(op, &PySet_Type) -#define PySet_Check(ob) \ - (Py_IS_TYPE(ob, &PySet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PySet_Type)) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_SETOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/sliceobject.h b/_Pre_Builds/_Python310_cpp/include/sliceobject.h deleted file mode 100644 index 2c88950..0000000 --- a/_Pre_Builds/_Python310_cpp/include/sliceobject.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef Py_SLICEOBJECT_H -#define Py_SLICEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* The unique ellipsis object "..." */ - -PyAPI_DATA(PyObject) _Py_EllipsisObject; /* Don't use this directly */ - -#define Py_Ellipsis (&_Py_EllipsisObject) - -/* Slice object interface */ - -/* - -A slice object containing start, stop, and step data members (the -names are from range). After much talk with Guido, it was decided to -let these be any arbitrary python type. Py_None stands for omitted values. -*/ -#ifndef Py_LIMITED_API -typedef struct { - PyObject_HEAD - PyObject *start, *stop, *step; /* not NULL */ -} PySliceObject; -#endif - -PyAPI_DATA(PyTypeObject) PySlice_Type; -PyAPI_DATA(PyTypeObject) PyEllipsis_Type; - -#define PySlice_Check(op) Py_IS_TYPE(op, &PySlice_Type) - -PyAPI_FUNC(PyObject *) PySlice_New(PyObject* start, PyObject* stop, - PyObject* step); -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PySlice_FromIndices(Py_ssize_t start, Py_ssize_t stop); -PyAPI_FUNC(int) _PySlice_GetLongIndices(PySliceObject *self, PyObject *length, - PyObject **start_ptr, PyObject **stop_ptr, - PyObject **step_ptr); -#endif -PyAPI_FUNC(int) PySlice_GetIndices(PyObject *r, Py_ssize_t length, - Py_ssize_t *start, Py_ssize_t *stop, Py_ssize_t *step); -Py_DEPRECATED(3.7) -PyAPI_FUNC(int) PySlice_GetIndicesEx(PyObject *r, Py_ssize_t length, - Py_ssize_t *start, Py_ssize_t *stop, - Py_ssize_t *step, - Py_ssize_t *slicelength); - -#if !defined(Py_LIMITED_API) || (Py_LIMITED_API+0 >= 0x03050400 && Py_LIMITED_API+0 < 0x03060000) || Py_LIMITED_API+0 >= 0x03060100 -#define PySlice_GetIndicesEx(slice, length, start, stop, step, slicelen) ( \ - PySlice_Unpack((slice), (start), (stop), (step)) < 0 ? \ - ((*(slicelen) = 0), -1) : \ - ((*(slicelen) = PySlice_AdjustIndices((length), (start), (stop), *(step))), \ - 0)) -PyAPI_FUNC(int) PySlice_Unpack(PyObject *slice, - Py_ssize_t *start, Py_ssize_t *stop, Py_ssize_t *step); -PyAPI_FUNC(Py_ssize_t) PySlice_AdjustIndices(Py_ssize_t length, - Py_ssize_t *start, Py_ssize_t *stop, - Py_ssize_t step); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_SLICEOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/structmember.h b/_Pre_Builds/_Python310_cpp/include/structmember.h deleted file mode 100644 index 93b7aff..0000000 --- a/_Pre_Builds/_Python310_cpp/include/structmember.h +++ /dev/null @@ -1,75 +0,0 @@ -#ifndef Py_STRUCTMEMBER_H -#define Py_STRUCTMEMBER_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Interface to map C struct members to Python object attributes */ - -#include /* For offsetof */ - -/* An array of PyMemberDef structures defines the name, type and offset - of selected members of a C structure. These can be read by - PyMember_GetOne() and set by PyMember_SetOne() (except if their READONLY - flag is set). The array must be terminated with an entry whose name - pointer is NULL. */ - -typedef struct PyMemberDef { - const char *name; - int type; - Py_ssize_t offset; - int flags; - const char *doc; -} PyMemberDef; - -/* Types */ -#define T_SHORT 0 -#define T_INT 1 -#define T_LONG 2 -#define T_FLOAT 3 -#define T_DOUBLE 4 -#define T_STRING 5 -#define T_OBJECT 6 -/* XXX the ordering here is weird for binary compatibility */ -#define T_CHAR 7 /* 1-character string */ -#define T_BYTE 8 /* 8-bit signed int */ -/* unsigned variants: */ -#define T_UBYTE 9 -#define T_USHORT 10 -#define T_UINT 11 -#define T_ULONG 12 - -/* Added by Jack: strings contained in the structure */ -#define T_STRING_INPLACE 13 - -/* Added by Lillo: bools contained in the structure (assumed char) */ -#define T_BOOL 14 - -#define T_OBJECT_EX 16 /* Like T_OBJECT, but raises AttributeError - when the value is NULL, instead of - converting to None. */ -#define T_LONGLONG 17 -#define T_ULONGLONG 18 - -#define T_PYSSIZET 19 /* Py_ssize_t */ -#define T_NONE 20 /* Value is always None */ - - -/* Flags */ -#define READONLY 1 -#define READ_RESTRICTED 2 -#define PY_WRITE_RESTRICTED 4 -#define RESTRICTED (READ_RESTRICTED | PY_WRITE_RESTRICTED) - -#define PY_AUDIT_READ READ_RESTRICTED - -/* Current API, use this */ -PyAPI_FUNC(PyObject *) PyMember_GetOne(const char *, struct PyMemberDef *); -PyAPI_FUNC(int) PyMember_SetOne(char *, struct PyMemberDef *, PyObject *); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_STRUCTMEMBER_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/structseq.h b/_Pre_Builds/_Python310_cpp/include/structseq.h deleted file mode 100644 index 8f51c89..0000000 --- a/_Pre_Builds/_Python310_cpp/include/structseq.h +++ /dev/null @@ -1,49 +0,0 @@ - -/* Named tuple object interface */ - -#ifndef Py_STRUCTSEQ_H -#define Py_STRUCTSEQ_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct PyStructSequence_Field { - const char *name; - const char *doc; -} PyStructSequence_Field; - -typedef struct PyStructSequence_Desc { - const char *name; - const char *doc; - struct PyStructSequence_Field *fields; - int n_in_sequence; -} PyStructSequence_Desc; - -extern const char * const PyStructSequence_UnnamedField; - -#ifndef Py_LIMITED_API -PyAPI_FUNC(void) PyStructSequence_InitType(PyTypeObject *type, - PyStructSequence_Desc *desc); -PyAPI_FUNC(int) PyStructSequence_InitType2(PyTypeObject *type, - PyStructSequence_Desc *desc); -#endif -PyAPI_FUNC(PyTypeObject*) PyStructSequence_NewType(PyStructSequence_Desc *desc); - -PyAPI_FUNC(PyObject *) PyStructSequence_New(PyTypeObject* type); - -#ifndef Py_LIMITED_API -typedef PyTupleObject PyStructSequence; - -/* Macro, *only* to be used to fill in brand new objects */ -#define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v) - -#define PyStructSequence_GET_ITEM(op, i) PyTuple_GET_ITEM(op, i) -#endif - -PyAPI_FUNC(void) PyStructSequence_SetItem(PyObject*, Py_ssize_t, PyObject*); -PyAPI_FUNC(PyObject*) PyStructSequence_GetItem(PyObject*, Py_ssize_t); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_STRUCTSEQ_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/sysmodule.h b/_Pre_Builds/_Python310_cpp/include/sysmodule.h deleted file mode 100644 index 670e5d2..0000000 --- a/_Pre_Builds/_Python310_cpp/include/sysmodule.h +++ /dev/null @@ -1,41 +0,0 @@ - -/* System module interface */ - -#ifndef Py_SYSMODULE_H -#define Py_SYSMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) PySys_GetObject(const char *); -PyAPI_FUNC(int) PySys_SetObject(const char *, PyObject *); - -PyAPI_FUNC(void) PySys_SetArgv(int, wchar_t **); -PyAPI_FUNC(void) PySys_SetArgvEx(int, wchar_t **, int); -PyAPI_FUNC(void) PySys_SetPath(const wchar_t *); - -PyAPI_FUNC(void) PySys_WriteStdout(const char *format, ...) - Py_GCC_ATTRIBUTE((format(printf, 1, 2))); -PyAPI_FUNC(void) PySys_WriteStderr(const char *format, ...) - Py_GCC_ATTRIBUTE((format(printf, 1, 2))); -PyAPI_FUNC(void) PySys_FormatStdout(const char *format, ...); -PyAPI_FUNC(void) PySys_FormatStderr(const char *format, ...); - -PyAPI_FUNC(void) PySys_ResetWarnOptions(void); -PyAPI_FUNC(void) PySys_AddWarnOption(const wchar_t *); -PyAPI_FUNC(void) PySys_AddWarnOptionUnicode(PyObject *); -PyAPI_FUNC(int) PySys_HasWarnOptions(void); - -PyAPI_FUNC(void) PySys_AddXOption(const wchar_t *); -PyAPI_FUNC(PyObject *) PySys_GetXOptions(void); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_SYSMODULE_H -# include "cpython/sysmodule.h" -# undef Py_CPYTHON_SYSMODULE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_SYSMODULE_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/token.h b/_Pre_Builds/_Python310_cpp/include/token.h deleted file mode 100644 index eb1b9ea..0000000 --- a/_Pre_Builds/_Python310_cpp/include/token.h +++ /dev/null @@ -1,97 +0,0 @@ -/* Auto-generated by Tools/scripts/generate_token.py */ - -/* Token types */ -#ifndef Py_LIMITED_API -#ifndef Py_TOKEN_H -#define Py_TOKEN_H -#ifdef __cplusplus -extern "C" { -#endif - -#undef TILDE /* Prevent clash of our definition with system macro. Ex AIX, ioctl.h */ - -#define ENDMARKER 0 -#define NAME 1 -#define NUMBER 2 -#define STRING 3 -#define NEWLINE 4 -#define INDENT 5 -#define DEDENT 6 -#define LPAR 7 -#define RPAR 8 -#define LSQB 9 -#define RSQB 10 -#define COLON 11 -#define COMMA 12 -#define SEMI 13 -#define PLUS 14 -#define MINUS 15 -#define STAR 16 -#define SLASH 17 -#define VBAR 18 -#define AMPER 19 -#define LESS 20 -#define GREATER 21 -#define EQUAL 22 -#define DOT 23 -#define PERCENT 24 -#define LBRACE 25 -#define RBRACE 26 -#define EQEQUAL 27 -#define NOTEQUAL 28 -#define LESSEQUAL 29 -#define GREATEREQUAL 30 -#define TILDE 31 -#define CIRCUMFLEX 32 -#define LEFTSHIFT 33 -#define RIGHTSHIFT 34 -#define DOUBLESTAR 35 -#define PLUSEQUAL 36 -#define MINEQUAL 37 -#define STAREQUAL 38 -#define SLASHEQUAL 39 -#define PERCENTEQUAL 40 -#define AMPEREQUAL 41 -#define VBAREQUAL 42 -#define CIRCUMFLEXEQUAL 43 -#define LEFTSHIFTEQUAL 44 -#define RIGHTSHIFTEQUAL 45 -#define DOUBLESTAREQUAL 46 -#define DOUBLESLASH 47 -#define DOUBLESLASHEQUAL 48 -#define AT 49 -#define ATEQUAL 50 -#define RARROW 51 -#define ELLIPSIS 52 -#define COLONEQUAL 53 -#define OP 54 -#define AWAIT 55 -#define ASYNC 56 -#define TYPE_IGNORE 57 -#define TYPE_COMMENT 58 -#define SOFT_KEYWORD 59 -#define ERRORTOKEN 60 -#define N_TOKENS 64 -#define NT_OFFSET 256 - -/* Special definitions for cooperation with parser */ - -#define ISTERMINAL(x) ((x) < NT_OFFSET) -#define ISNONTERMINAL(x) ((x) >= NT_OFFSET) -#define ISEOF(x) ((x) == ENDMARKER) -#define ISWHITESPACE(x) ((x) == ENDMARKER || \ - (x) == NEWLINE || \ - (x) == INDENT || \ - (x) == DEDENT) - - -PyAPI_DATA(const char * const) _PyParser_TokenNames[]; /* Token names */ -PyAPI_FUNC(int) PyToken_OneChar(int); -PyAPI_FUNC(int) PyToken_TwoChars(int, int); -PyAPI_FUNC(int) PyToken_ThreeChars(int, int, int); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_TOKEN_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python310_cpp/include/traceback.h b/_Pre_Builds/_Python310_cpp/include/traceback.h deleted file mode 100644 index 781e5a6..0000000 --- a/_Pre_Builds/_Python310_cpp/include/traceback.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef Py_TRACEBACK_H -#define Py_TRACEBACK_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Traceback interface */ - -PyAPI_FUNC(int) PyTraceBack_Here(PyFrameObject *); -PyAPI_FUNC(int) PyTraceBack_Print(PyObject *, PyObject *); - -/* Reveal traceback type so we can typecheck traceback objects */ -PyAPI_DATA(PyTypeObject) PyTraceBack_Type; -#define PyTraceBack_Check(v) Py_IS_TYPE(v, &PyTraceBack_Type) - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_TRACEBACK_H -# include "cpython/traceback.h" -# undef Py_CPYTHON_TRACEBACK_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_TRACEBACK_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/tracemalloc.h b/_Pre_Builds/_Python310_cpp/include/tracemalloc.h deleted file mode 100644 index bd14217..0000000 --- a/_Pre_Builds/_Python310_cpp/include/tracemalloc.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef Py_TRACEMALLOC_H -#define Py_TRACEMALLOC_H - -#ifndef Py_LIMITED_API -/* Track an allocated memory block in the tracemalloc module. - Return 0 on success, return -1 on error (failed to allocate memory to store - the trace). - - Return -2 if tracemalloc is disabled. - - If memory block is already tracked, update the existing trace. */ -PyAPI_FUNC(int) PyTraceMalloc_Track( - unsigned int domain, - uintptr_t ptr, - size_t size); - -/* Untrack an allocated memory block in the tracemalloc module. - Do nothing if the block was not tracked. - - Return -2 if tracemalloc is disabled, otherwise return 0. */ -PyAPI_FUNC(int) PyTraceMalloc_Untrack( - unsigned int domain, - uintptr_t ptr); - -/* Get the traceback where a memory block was allocated. - - Return a tuple of (filename: str, lineno: int) tuples. - - Return None if the tracemalloc module is disabled or if the memory block - is not tracked by tracemalloc. - - Raise an exception and return NULL on error. */ -PyAPI_FUNC(PyObject*) _PyTraceMalloc_GetTraceback( - unsigned int domain, - uintptr_t ptr); -#endif - -#endif /* !Py_TRACEMALLOC_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/tupleobject.h b/_Pre_Builds/_Python310_cpp/include/tupleobject.h deleted file mode 100644 index e796a32..0000000 --- a/_Pre_Builds/_Python310_cpp/include/tupleobject.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Tuple object interface */ - -#ifndef Py_TUPLEOBJECT_H -#define Py_TUPLEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* -Another generally useful object type is a tuple of object pointers. -For Python, this is an immutable type. C code can change the tuple items -(but not their number), and even use tuples as general-purpose arrays of -object references, but in general only brand new tuples should be mutated, -not ones that might already have been exposed to Python code. - -*** WARNING *** PyTuple_SetItem does not increment the new item's reference -count, but does decrement the reference count of the item it replaces, -if not nil. It does *decrement* the reference count if it is *not* -inserted in the tuple. Similarly, PyTuple_GetItem does not increment the -returned item's reference count. -*/ - -PyAPI_DATA(PyTypeObject) PyTuple_Type; -PyAPI_DATA(PyTypeObject) PyTupleIter_Type; - -#define PyTuple_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TUPLE_SUBCLASS) -#define PyTuple_CheckExact(op) Py_IS_TYPE(op, &PyTuple_Type) - -PyAPI_FUNC(PyObject *) PyTuple_New(Py_ssize_t size); -PyAPI_FUNC(Py_ssize_t) PyTuple_Size(PyObject *); -PyAPI_FUNC(PyObject *) PyTuple_GetItem(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyTuple_SetItem(PyObject *, Py_ssize_t, PyObject *); -PyAPI_FUNC(PyObject *) PyTuple_GetSlice(PyObject *, Py_ssize_t, Py_ssize_t); -PyAPI_FUNC(PyObject *) PyTuple_Pack(Py_ssize_t, ...); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_TUPLEOBJECT_H -# include "cpython/tupleobject.h" -# undef Py_CPYTHON_TUPLEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_TUPLEOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/typeslots.h b/_Pre_Builds/_Python310_cpp/include/typeslots.h deleted file mode 100644 index 5800d01..0000000 --- a/_Pre_Builds/_Python310_cpp/include/typeslots.h +++ /dev/null @@ -1,94 +0,0 @@ -/* Do not renumber the file; these numbers are part of the stable ABI. */ -#if defined(Py_LIMITED_API) -/* Disabled, see #10181 */ -#undef Py_bf_getbuffer -#undef Py_bf_releasebuffer -#else -#define Py_bf_getbuffer 1 -#define Py_bf_releasebuffer 2 -#endif -#define Py_mp_ass_subscript 3 -#define Py_mp_length 4 -#define Py_mp_subscript 5 -#define Py_nb_absolute 6 -#define Py_nb_add 7 -#define Py_nb_and 8 -#define Py_nb_bool 9 -#define Py_nb_divmod 10 -#define Py_nb_float 11 -#define Py_nb_floor_divide 12 -#define Py_nb_index 13 -#define Py_nb_inplace_add 14 -#define Py_nb_inplace_and 15 -#define Py_nb_inplace_floor_divide 16 -#define Py_nb_inplace_lshift 17 -#define Py_nb_inplace_multiply 18 -#define Py_nb_inplace_or 19 -#define Py_nb_inplace_power 20 -#define Py_nb_inplace_remainder 21 -#define Py_nb_inplace_rshift 22 -#define Py_nb_inplace_subtract 23 -#define Py_nb_inplace_true_divide 24 -#define Py_nb_inplace_xor 25 -#define Py_nb_int 26 -#define Py_nb_invert 27 -#define Py_nb_lshift 28 -#define Py_nb_multiply 29 -#define Py_nb_negative 30 -#define Py_nb_or 31 -#define Py_nb_positive 32 -#define Py_nb_power 33 -#define Py_nb_remainder 34 -#define Py_nb_rshift 35 -#define Py_nb_subtract 36 -#define Py_nb_true_divide 37 -#define Py_nb_xor 38 -#define Py_sq_ass_item 39 -#define Py_sq_concat 40 -#define Py_sq_contains 41 -#define Py_sq_inplace_concat 42 -#define Py_sq_inplace_repeat 43 -#define Py_sq_item 44 -#define Py_sq_length 45 -#define Py_sq_repeat 46 -#define Py_tp_alloc 47 -#define Py_tp_base 48 -#define Py_tp_bases 49 -#define Py_tp_call 50 -#define Py_tp_clear 51 -#define Py_tp_dealloc 52 -#define Py_tp_del 53 -#define Py_tp_descr_get 54 -#define Py_tp_descr_set 55 -#define Py_tp_doc 56 -#define Py_tp_getattr 57 -#define Py_tp_getattro 58 -#define Py_tp_hash 59 -#define Py_tp_init 60 -#define Py_tp_is_gc 61 -#define Py_tp_iter 62 -#define Py_tp_iternext 63 -#define Py_tp_methods 64 -#define Py_tp_new 65 -#define Py_tp_repr 66 -#define Py_tp_richcompare 67 -#define Py_tp_setattr 68 -#define Py_tp_setattro 69 -#define Py_tp_str 70 -#define Py_tp_traverse 71 -#define Py_tp_members 72 -#define Py_tp_getset 73 -#define Py_tp_free 74 -#define Py_nb_matrix_multiply 75 -#define Py_nb_inplace_matrix_multiply 76 -#define Py_am_await 77 -#define Py_am_aiter 78 -#define Py_am_anext 79 -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -#define Py_tp_finalize 80 -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -/* New in 3.10 */ -#define Py_am_send 81 -#endif diff --git a/_Pre_Builds/_Python310_cpp/include/unicodeobject.h b/_Pre_Builds/_Python310_cpp/include/unicodeobject.h deleted file mode 100644 index b0ac086..0000000 --- a/_Pre_Builds/_Python310_cpp/include/unicodeobject.h +++ /dev/null @@ -1,1053 +0,0 @@ -#ifndef Py_UNICODEOBJECT_H -#define Py_UNICODEOBJECT_H - -#include - -/* - -Unicode implementation based on original code by Fredrik Lundh, -modified by Marc-Andre Lemburg (mal@lemburg.com) according to the -Unicode Integration Proposal. (See -http://www.egenix.com/files/python/unicode-proposal.txt). - -Copyright (c) Corporation for National Research Initiatives. - - - Original header: - -------------------------------------------------------------------- - - * Yet another Unicode string type for Python. This type supports the - * 16-bit Basic Multilingual Plane (BMP) only. - * - * Written by Fredrik Lundh, January 1999. - * - * Copyright (c) 1999 by Secret Labs AB. - * Copyright (c) 1999 by Fredrik Lundh. - * - * fredrik@pythonware.com - * http://www.pythonware.com - * - * -------------------------------------------------------------------- - * This Unicode String Type is - * - * Copyright (c) 1999 by Secret Labs AB - * Copyright (c) 1999 by Fredrik Lundh - * - * By obtaining, using, and/or copying this software and/or its - * associated documentation, you agree that you have read, understood, - * and will comply with the following terms and conditions: - * - * Permission to use, copy, modify, and distribute this software and its - * associated documentation for any purpose and without fee is hereby - * granted, provided that the above copyright notice appears in all - * copies, and that both that copyright notice and this permission notice - * appear in supporting documentation, and that the name of Secret Labs - * AB or the author not be used in advertising or publicity pertaining to - * distribution of the software without specific, written prior - * permission. - * - * SECRET LABS AB AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO - * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND - * FITNESS. IN NO EVENT SHALL SECRET LABS AB OR THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT - * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - * -------------------------------------------------------------------- */ - -#include - -/* === Internal API ======================================================= */ - -/* --- Internal Unicode Format -------------------------------------------- */ - -/* Python 3.x requires unicode */ -#define Py_USING_UNICODE - -#ifndef SIZEOF_WCHAR_T -#error Must define SIZEOF_WCHAR_T -#endif - -#define Py_UNICODE_SIZE SIZEOF_WCHAR_T - -/* If wchar_t can be used for UCS-4 storage, set Py_UNICODE_WIDE. - Otherwise, Unicode strings are stored as UCS-2 (with limited support - for UTF-16) */ - -#if Py_UNICODE_SIZE >= 4 -#define Py_UNICODE_WIDE -#endif - -/* Set these flags if the platform has "wchar.h" and the - wchar_t type is a 16-bit unsigned type */ -/* #define HAVE_WCHAR_H */ -/* #define HAVE_USABLE_WCHAR_T */ - -/* If the compiler provides a wchar_t type we try to support it - through the interface functions PyUnicode_FromWideChar(), - PyUnicode_AsWideChar() and PyUnicode_AsWideCharString(). */ - -#ifdef HAVE_USABLE_WCHAR_T -# ifndef HAVE_WCHAR_H -# define HAVE_WCHAR_H -# endif -#endif - -#ifdef HAVE_WCHAR_H -# include -#endif - -/* Py_UCS4 and Py_UCS2 are typedefs for the respective - unicode representations. */ -typedef uint32_t Py_UCS4; -typedef uint16_t Py_UCS2; -typedef uint8_t Py_UCS1; - -#ifdef __cplusplus -extern "C" { -#endif - - -PyAPI_DATA(PyTypeObject) PyUnicode_Type; -PyAPI_DATA(PyTypeObject) PyUnicodeIter_Type; - -#define PyUnicode_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_UNICODE_SUBCLASS) -#define PyUnicode_CheckExact(op) Py_IS_TYPE(op, &PyUnicode_Type) - -/* --- Constants ---------------------------------------------------------- */ - -/* This Unicode character will be used as replacement character during - decoding if the errors argument is set to "replace". Note: the - Unicode character U+FFFD is the official REPLACEMENT CHARACTER in - Unicode 3.0. */ - -#define Py_UNICODE_REPLACEMENT_CHARACTER ((Py_UCS4) 0xFFFD) - -/* === Public API ========================================================= */ - -/* Similar to PyUnicode_FromUnicode(), but u points to UTF-8 encoded bytes */ -PyAPI_FUNC(PyObject*) PyUnicode_FromStringAndSize( - const char *u, /* UTF-8 encoded string */ - Py_ssize_t size /* size of buffer */ - ); - -/* Similar to PyUnicode_FromUnicode(), but u points to null-terminated - UTF-8 encoded bytes. The size is determined with strlen(). */ -PyAPI_FUNC(PyObject*) PyUnicode_FromString( - const char *u /* UTF-8 encoded string */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyUnicode_Substring( - PyObject *str, - Py_ssize_t start, - Py_ssize_t end); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Copy the string into a UCS4 buffer including the null character if copy_null - is set. Return NULL and raise an exception on error. Raise a SystemError if - the buffer is smaller than the string. Return buffer on success. - - buflen is the length of the buffer in (Py_UCS4) characters. */ -PyAPI_FUNC(Py_UCS4*) PyUnicode_AsUCS4( - PyObject *unicode, - Py_UCS4* buffer, - Py_ssize_t buflen, - int copy_null); - -/* Copy the string into a UCS4 buffer. A new buffer is allocated using - * PyMem_Malloc; if this fails, NULL is returned with a memory error - exception set. */ -PyAPI_FUNC(Py_UCS4*) PyUnicode_AsUCS4Copy(PyObject *unicode); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Get the length of the Unicode object. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_GetLength( - PyObject *unicode -); -#endif - -/* Get the number of Py_UNICODE units in the - string representation. */ - -Py_DEPRECATED(3.3) PyAPI_FUNC(Py_ssize_t) PyUnicode_GetSize( - PyObject *unicode /* Unicode object */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Read a character from the string. */ - -PyAPI_FUNC(Py_UCS4) PyUnicode_ReadChar( - PyObject *unicode, - Py_ssize_t index - ); - -/* Write a character to the string. The string must have been created through - PyUnicode_New, must not be shared, and must not have been hashed yet. - - Return 0 on success, -1 on error. */ - -PyAPI_FUNC(int) PyUnicode_WriteChar( - PyObject *unicode, - Py_ssize_t index, - Py_UCS4 character - ); -#endif - -/* Resize a Unicode object. The length is the number of characters, except - if the kind of the string is PyUnicode_WCHAR_KIND: in this case, the length - is the number of Py_UNICODE characters. - - *unicode is modified to point to the new (resized) object and 0 - returned on success. - - Try to resize the string in place (which is usually faster than allocating - a new string and copy characters), or create a new string. - - Error handling is implemented as follows: an exception is set, -1 - is returned and *unicode left untouched. - - WARNING: The function doesn't check string content, the result may not be a - string in canonical representation. */ - -PyAPI_FUNC(int) PyUnicode_Resize( - PyObject **unicode, /* Pointer to the Unicode object */ - Py_ssize_t length /* New length */ - ); - -/* Decode obj to a Unicode object. - - bytes, bytearray and other bytes-like objects are decoded according to the - given encoding and error handler. The encoding and error handler can be - NULL to have the interface use UTF-8 and "strict". - - All other objects (including Unicode objects) raise an exception. - - The API returns NULL in case of an error. The caller is responsible - for decref'ing the returned objects. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_FromEncodedObject( - PyObject *obj, /* Object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Copy an instance of a Unicode subtype to a new true Unicode object if - necessary. If obj is already a true Unicode object (not a subtype), return - the reference with *incremented* refcount. - - The API returns NULL in case of an error. The caller is responsible - for decref'ing the returned objects. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_FromObject( - PyObject *obj /* Object */ - ); - -PyAPI_FUNC(PyObject *) PyUnicode_FromFormatV( - const char *format, /* ASCII-encoded string */ - va_list vargs - ); -PyAPI_FUNC(PyObject *) PyUnicode_FromFormat( - const char *format, /* ASCII-encoded string */ - ... - ); - -PyAPI_FUNC(void) PyUnicode_InternInPlace(PyObject **); -PyAPI_FUNC(PyObject *) PyUnicode_InternFromString( - const char *u /* UTF-8 encoded string */ - ); - -// PyUnicode_InternImmortal() is deprecated since Python 3.10 -// and will be removed in Python 3.12. Use PyUnicode_InternInPlace() instead. -Py_DEPRECATED(3.10) PyAPI_FUNC(void) PyUnicode_InternImmortal(PyObject **); - -/* Use only if you know it's a string */ -#define PyUnicode_CHECK_INTERNED(op) \ - (((PyASCIIObject *)(op))->state.interned) - -/* --- wchar_t support for platforms which support it --------------------- */ - -#ifdef HAVE_WCHAR_H - -/* Create a Unicode Object from the wchar_t buffer w of the given - size. - - The buffer is copied into the new object. */ - -PyAPI_FUNC(PyObject*) PyUnicode_FromWideChar( - const wchar_t *w, /* wchar_t buffer */ - Py_ssize_t size /* size of buffer */ - ); - -/* Copies the Unicode Object contents into the wchar_t buffer w. At - most size wchar_t characters are copied. - - Note that the resulting wchar_t string may or may not be - 0-terminated. It is the responsibility of the caller to make sure - that the wchar_t string is 0-terminated in case this is required by - the application. - - Returns the number of wchar_t characters copied (excluding a - possibly trailing 0-termination character) or -1 in case of an - error. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_AsWideChar( - PyObject *unicode, /* Unicode object */ - wchar_t *w, /* wchar_t buffer */ - Py_ssize_t size /* size of buffer */ - ); - -/* Convert the Unicode object to a wide character string. The output string - always ends with a nul character. If size is not NULL, write the number of - wide characters (excluding the null character) into *size. - - Returns a buffer allocated by PyMem_Malloc() (use PyMem_Free() to free it) - on success. On error, returns NULL, *size is undefined and raises a - MemoryError. */ - -PyAPI_FUNC(wchar_t*) PyUnicode_AsWideCharString( - PyObject *unicode, /* Unicode object */ - Py_ssize_t *size /* number of characters of the result */ - ); - -#endif - -/* --- Unicode ordinals --------------------------------------------------- */ - -/* Create a Unicode Object from the given Unicode code point ordinal. - - The ordinal must be in range(0x110000). A ValueError is - raised in case it is not. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_FromOrdinal(int ordinal); - -/* === Builtin Codecs ===================================================== - - Many of these APIs take two arguments encoding and errors. These - parameters encoding and errors have the same semantics as the ones - of the builtin str() API. - - Setting encoding to NULL causes the default encoding (UTF-8) to be used. - - Error handling is set by errors which may also be set to NULL - meaning to use the default handling defined for the codec. Default - error handling for all builtin codecs is "strict" (ValueErrors are - raised). - - The codecs all use a similar interface. Only deviation from the - generic ones are documented. - -*/ - -/* --- Manage the default encoding ---------------------------------------- */ - -/* Returns "utf-8". */ -PyAPI_FUNC(const char*) PyUnicode_GetDefaultEncoding(void); - -/* --- Generic Codecs ----------------------------------------------------- */ - -/* Create a Unicode object by decoding the encoded string s of the - given size. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Decode( - const char *s, /* encoded string */ - Py_ssize_t size, /* size of buffer */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Decode a Unicode object unicode and return the result as Python - object. - - This API is DEPRECATED. The only supported standard encoding is rot13. - Use PyCodec_Decode() to decode with rot13 and non-standard codecs - that decode from str. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsDecodedObject( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Decode a Unicode object unicode and return the result as Unicode - object. - - This API is DEPRECATED. The only supported standard encoding is rot13. - Use PyCodec_Decode() to decode with rot13 and non-standard codecs - that decode from str to str. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsDecodedUnicode( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Encodes a Unicode object and returns the result as Python - object. - - This API is DEPRECATED. It is superseded by PyUnicode_AsEncodedString() - since all standard encodings (except rot13) encode str to bytes. - Use PyCodec_Encode() for encoding with rot13 and non-standard codecs - that encode form str to non-bytes. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsEncodedObject( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Encodes a Unicode object and returns the result as Python string - object. */ - -PyAPI_FUNC(PyObject*) PyUnicode_AsEncodedString( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Encodes a Unicode object and returns the result as Unicode - object. - - This API is DEPRECATED. The only supported standard encodings is rot13. - Use PyCodec_Encode() to encode with rot13 and non-standard codecs - that encode from str to str. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsEncodedUnicode( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Build an encoding map. */ - -PyAPI_FUNC(PyObject*) PyUnicode_BuildEncodingMap( - PyObject* string /* 256 character map */ - ); - -/* --- UTF-7 Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF7( - const char *string, /* UTF-7 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF7Stateful( - const char *string, /* UTF-7 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -/* --- UTF-8 Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF8( - const char *string, /* UTF-8 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF8Stateful( - const char *string, /* UTF-8 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsUTF8String( - PyObject *unicode /* Unicode object */ - ); - -/* Returns a pointer to the default encoding (UTF-8) of the - Unicode object unicode and the size of the encoded representation - in bytes stored in *size. - - In case of an error, no *size is set. - - This function caches the UTF-8 encoded string in the unicodeobject - and subsequent calls will return the same string. The memory is released - when the unicodeobject is deallocated. -*/ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -PyAPI_FUNC(const char *) PyUnicode_AsUTF8AndSize( - PyObject *unicode, - Py_ssize_t *size); -#endif - -/* --- UTF-32 Codecs ------------------------------------------------------ */ - -/* Decodes length bytes from a UTF-32 encoded buffer string and returns - the corresponding Unicode object. - - errors (if non-NULL) defines the error handling. It defaults - to "strict". - - If byteorder is non-NULL, the decoder starts decoding using the - given byte order: - - *byteorder == -1: little endian - *byteorder == 0: native order - *byteorder == 1: big endian - - In native mode, the first four bytes of the stream are checked for a - BOM mark. If found, the BOM mark is analysed, the byte order - adjusted and the BOM skipped. In the other modes, no BOM mark - interpretation is done. After completion, *byteorder is set to the - current byte order at the end of input data. - - If byteorder is NULL, the codec starts in native order mode. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF32( - const char *string, /* UTF-32 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF32Stateful( - const char *string, /* UTF-32 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder, /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -/* Returns a Python string using the UTF-32 encoding in native byte - order. The string always starts with a BOM mark. */ - -PyAPI_FUNC(PyObject*) PyUnicode_AsUTF32String( - PyObject *unicode /* Unicode object */ - ); - -/* Returns a Python string object holding the UTF-32 encoded value of - the Unicode data. - - If byteorder is not 0, output is written according to the following - byte order: - - byteorder == -1: little endian - byteorder == 0: native byte order (writes a BOM mark) - byteorder == 1: big endian - - If byteorder is 0, the output string will always start with the - Unicode BOM mark (U+FEFF). In the other two modes, no BOM mark is - prepended. - -*/ - -/* --- UTF-16 Codecs ------------------------------------------------------ */ - -/* Decodes length bytes from a UTF-16 encoded buffer string and returns - the corresponding Unicode object. - - errors (if non-NULL) defines the error handling. It defaults - to "strict". - - If byteorder is non-NULL, the decoder starts decoding using the - given byte order: - - *byteorder == -1: little endian - *byteorder == 0: native order - *byteorder == 1: big endian - - In native mode, the first two bytes of the stream are checked for a - BOM mark. If found, the BOM mark is analysed, the byte order - adjusted and the BOM skipped. In the other modes, no BOM mark - interpretation is done. After completion, *byteorder is set to the - current byte order at the end of input data. - - If byteorder is NULL, the codec starts in native order mode. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF16( - const char *string, /* UTF-16 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF16Stateful( - const char *string, /* UTF-16 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder, /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -/* Returns a Python string using the UTF-16 encoding in native byte - order. The string always starts with a BOM mark. */ - -PyAPI_FUNC(PyObject*) PyUnicode_AsUTF16String( - PyObject *unicode /* Unicode object */ - ); - -/* --- Unicode-Escape Codecs ---------------------------------------------- */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUnicodeEscape( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsUnicodeEscapeString( - PyObject *unicode /* Unicode object */ - ); - -/* --- Raw-Unicode-Escape Codecs ------------------------------------------ */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeRawUnicodeEscape( - const char *string, /* Raw-Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsRawUnicodeEscapeString( - PyObject *unicode /* Unicode object */ - ); - -/* --- Latin-1 Codecs ----------------------------------------------------- - - Note: Latin-1 corresponds to the first 256 Unicode ordinals. */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeLatin1( - const char *string, /* Latin-1 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsLatin1String( - PyObject *unicode /* Unicode object */ - ); - -/* --- ASCII Codecs ------------------------------------------------------- - - Only 7-bit ASCII data is excepted. All other codes generate errors. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeASCII( - const char *string, /* ASCII encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsASCIIString( - PyObject *unicode /* Unicode object */ - ); - -/* --- Character Map Codecs ----------------------------------------------- - - This codec uses mappings to encode and decode characters. - - Decoding mappings must map byte ordinals (integers in the range from 0 to - 255) to Unicode strings, integers (which are then interpreted as Unicode - ordinals) or None. Unmapped data bytes (ones which cause a LookupError) - as well as mapped to None, 0xFFFE or '\ufffe' are treated as "undefined - mapping" and cause an error. - - Encoding mappings must map Unicode ordinal integers to bytes objects, - integers in the range from 0 to 255 or None. Unmapped character - ordinals (ones which cause a LookupError) as well as mapped to - None are treated as "undefined mapping" and cause an error. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeCharmap( - const char *string, /* Encoded string */ - Py_ssize_t length, /* size of string */ - PyObject *mapping, /* decoding mapping */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsCharmapString( - PyObject *unicode, /* Unicode object */ - PyObject *mapping /* encoding mapping */ - ); - -/* --- MBCS codecs for Windows -------------------------------------------- */ - -#ifdef MS_WINDOWS -PyAPI_FUNC(PyObject*) PyUnicode_DecodeMBCS( - const char *string, /* MBCS encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeMBCSStateful( - const char *string, /* MBCS encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyUnicode_DecodeCodePageStateful( - int code_page, /* code page number */ - const char *string, /* encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); -#endif - -PyAPI_FUNC(PyObject*) PyUnicode_AsMBCSString( - PyObject *unicode /* Unicode object */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyUnicode_EncodeCodePage( - int code_page, /* code page number */ - PyObject *unicode, /* Unicode object */ - const char *errors /* error handling */ - ); -#endif - -#endif /* MS_WINDOWS */ - -/* --- Locale encoding --------------------------------------------------- */ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Decode a string from the current locale encoding. The decoder is strict if - *surrogateescape* is equal to zero, otherwise it uses the 'surrogateescape' - error handler (PEP 383) to escape undecodable bytes. If a byte sequence can - be decoded as a surrogate character and *surrogateescape* is not equal to - zero, the byte sequence is escaped using the 'surrogateescape' error handler - instead of being decoded. *str* must end with a null character but cannot - contain embedded null characters. */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeLocaleAndSize( - const char *str, - Py_ssize_t len, - const char *errors); - -/* Similar to PyUnicode_DecodeLocaleAndSize(), but compute the string - length using strlen(). */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeLocale( - const char *str, - const char *errors); - -/* Encode a Unicode object to the current locale encoding. The encoder is - strict is *surrogateescape* is equal to zero, otherwise the - "surrogateescape" error handler is used. Return a bytes object. The string - cannot contain embedded null characters. */ - -PyAPI_FUNC(PyObject*) PyUnicode_EncodeLocale( - PyObject *unicode, - const char *errors - ); -#endif - -/* --- File system encoding ---------------------------------------------- */ - -/* ParseTuple converter: encode str objects to bytes using - PyUnicode_EncodeFSDefault(); bytes objects are output as-is. */ - -PyAPI_FUNC(int) PyUnicode_FSConverter(PyObject*, void*); - -/* ParseTuple converter: decode bytes objects to unicode using - PyUnicode_DecodeFSDefaultAndSize(); str objects are output as-is. */ - -PyAPI_FUNC(int) PyUnicode_FSDecoder(PyObject*, void*); - -/* Decode a null-terminated string using Py_FileSystemDefaultEncoding - and the "surrogateescape" error handler. - - If Py_FileSystemDefaultEncoding is not set, fall back to the locale - encoding. - - Use PyUnicode_DecodeFSDefaultAndSize() if the string length is known. -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeFSDefault( - const char *s /* encoded string */ - ); - -/* Decode a string using Py_FileSystemDefaultEncoding - and the "surrogateescape" error handler. - - If Py_FileSystemDefaultEncoding is not set, fall back to the locale - encoding. -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeFSDefaultAndSize( - const char *s, /* encoded string */ - Py_ssize_t size /* size */ - ); - -/* Encode a Unicode object to Py_FileSystemDefaultEncoding with the - "surrogateescape" error handler, and return bytes. - - If Py_FileSystemDefaultEncoding is not set, fall back to the locale - encoding. -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_EncodeFSDefault( - PyObject *unicode - ); - -/* --- Methods & Slots ---------------------------------------------------- - - These are capable of handling Unicode objects and strings on input - (we refer to them as strings in the descriptions) and return - Unicode objects or integers as appropriate. */ - -/* Concat two strings giving a new Unicode string. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Concat( - PyObject *left, /* Left string */ - PyObject *right /* Right string */ - ); - -/* Concat two strings and put the result in *pleft - (sets *pleft to NULL on error) */ - -PyAPI_FUNC(void) PyUnicode_Append( - PyObject **pleft, /* Pointer to left string */ - PyObject *right /* Right string */ - ); - -/* Concat two strings, put the result in *pleft and drop the right object - (sets *pleft to NULL on error) */ - -PyAPI_FUNC(void) PyUnicode_AppendAndDel( - PyObject **pleft, /* Pointer to left string */ - PyObject *right /* Right string */ - ); - -/* Split a string giving a list of Unicode strings. - - If sep is NULL, splitting will be done at all whitespace - substrings. Otherwise, splits occur at the given separator. - - At most maxsplit splits will be done. If negative, no limit is set. - - Separators are not included in the resulting list. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_Split( - PyObject *s, /* String to split */ - PyObject *sep, /* String separator */ - Py_ssize_t maxsplit /* Maxsplit count */ - ); - -/* Dito, but split at line breaks. - - CRLF is considered to be one line break. Line breaks are not - included in the resulting list. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Splitlines( - PyObject *s, /* String to split */ - int keepends /* If true, line end markers are included */ - ); - -/* Partition a string using a given separator. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Partition( - PyObject *s, /* String to partition */ - PyObject *sep /* String separator */ - ); - -/* Partition a string using a given separator, searching from the end of the - string. */ - -PyAPI_FUNC(PyObject*) PyUnicode_RPartition( - PyObject *s, /* String to partition */ - PyObject *sep /* String separator */ - ); - -/* Split a string giving a list of Unicode strings. - - If sep is NULL, splitting will be done at all whitespace - substrings. Otherwise, splits occur at the given separator. - - At most maxsplit splits will be done. But unlike PyUnicode_Split - PyUnicode_RSplit splits from the end of the string. If negative, - no limit is set. - - Separators are not included in the resulting list. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_RSplit( - PyObject *s, /* String to split */ - PyObject *sep, /* String separator */ - Py_ssize_t maxsplit /* Maxsplit count */ - ); - -/* Translate a string by applying a character mapping table to it and - return the resulting Unicode object. - - The mapping table must map Unicode ordinal integers to Unicode strings, - Unicode ordinal integers or None (causing deletion of the character). - - Mapping tables may be dictionaries or sequences. Unmapped character - ordinals (ones which cause a LookupError) are left untouched and - are copied as-is. - -*/ - -PyAPI_FUNC(PyObject *) PyUnicode_Translate( - PyObject *str, /* String */ - PyObject *table, /* Translate table */ - const char *errors /* error handling */ - ); - -/* Join a sequence of strings using the given separator and return - the resulting Unicode string. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Join( - PyObject *separator, /* Separator string */ - PyObject *seq /* Sequence object */ - ); - -/* Return 1 if substr matches str[start:end] at the given tail end, 0 - otherwise. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_Tailmatch( - PyObject *str, /* String */ - PyObject *substr, /* Prefix or Suffix string */ - Py_ssize_t start, /* Start index */ - Py_ssize_t end, /* Stop index */ - int direction /* Tail end: -1 prefix, +1 suffix */ - ); - -/* Return the first position of substr in str[start:end] using the - given search direction or -1 if not found. -2 is returned in case - an error occurred and an exception is set. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_Find( - PyObject *str, /* String */ - PyObject *substr, /* Substring to find */ - Py_ssize_t start, /* Start index */ - Py_ssize_t end, /* Stop index */ - int direction /* Find direction: +1 forward, -1 backward */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Like PyUnicode_Find, but search for single character only. */ -PyAPI_FUNC(Py_ssize_t) PyUnicode_FindChar( - PyObject *str, - Py_UCS4 ch, - Py_ssize_t start, - Py_ssize_t end, - int direction - ); -#endif - -/* Count the number of occurrences of substr in str[start:end]. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_Count( - PyObject *str, /* String */ - PyObject *substr, /* Substring to count */ - Py_ssize_t start, /* Start index */ - Py_ssize_t end /* Stop index */ - ); - -/* Replace at most maxcount occurrences of substr in str with replstr - and return the resulting Unicode object. */ - -PyAPI_FUNC(PyObject *) PyUnicode_Replace( - PyObject *str, /* String */ - PyObject *substr, /* Substring to find */ - PyObject *replstr, /* Substring to replace */ - Py_ssize_t maxcount /* Max. number of replacements to apply; - -1 = all */ - ); - -/* Compare two strings and return -1, 0, 1 for less than, equal, - greater than resp. - Raise an exception and return -1 on error. */ - -PyAPI_FUNC(int) PyUnicode_Compare( - PyObject *left, /* Left string */ - PyObject *right /* Right string */ - ); - -/* Compare a Unicode object with C string and return -1, 0, 1 for less than, - equal, and greater than, respectively. It is best to pass only - ASCII-encoded strings, but the function interprets the input string as - ISO-8859-1 if it contains non-ASCII characters. - This function does not raise exceptions. */ - -PyAPI_FUNC(int) PyUnicode_CompareWithASCIIString( - PyObject *left, - const char *right /* ASCII-encoded string */ - ); - -/* Rich compare two strings and return one of the following: - - - NULL in case an exception was raised - - Py_True or Py_False for successful comparisons - - Py_NotImplemented in case the type combination is unknown - - Possible values for op: - - Py_GT, Py_GE, Py_EQ, Py_NE, Py_LT, Py_LE - -*/ - -PyAPI_FUNC(PyObject *) PyUnicode_RichCompare( - PyObject *left, /* Left string */ - PyObject *right, /* Right string */ - int op /* Operation: Py_EQ, Py_NE, Py_GT, etc. */ - ); - -/* Apply an argument tuple or dictionary to a format string and return - the resulting Unicode string. */ - -PyAPI_FUNC(PyObject *) PyUnicode_Format( - PyObject *format, /* Format string */ - PyObject *args /* Argument tuple or dictionary */ - ); - -/* Checks whether element is contained in container and return 1/0 - accordingly. - - element has to coerce to a one element Unicode string. -1 is - returned in case of an error. */ - -PyAPI_FUNC(int) PyUnicode_Contains( - PyObject *container, /* Container string */ - PyObject *element /* Element string */ - ); - -/* Checks whether argument is a valid identifier. */ - -PyAPI_FUNC(int) PyUnicode_IsIdentifier(PyObject *s); - -/* === Characters Type APIs =============================================== */ - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_UNICODEOBJECT_H -# include "cpython/unicodeobject.h" -# undef Py_CPYTHON_UNICODEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_UNICODEOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/include/warnings.h b/_Pre_Builds/_Python310_cpp/include/warnings.h deleted file mode 100644 index a675bb5..0000000 --- a/_Pre_Builds/_Python310_cpp/include/warnings.h +++ /dev/null @@ -1,67 +0,0 @@ -#ifndef Py_WARNINGS_H -#define Py_WARNINGS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject*) _PyWarnings_Init(void); -#endif - -PyAPI_FUNC(int) PyErr_WarnEx( - PyObject *category, - const char *message, /* UTF-8 encoded string */ - Py_ssize_t stack_level); -PyAPI_FUNC(int) PyErr_WarnFormat( - PyObject *category, - Py_ssize_t stack_level, - const char *format, /* ASCII-encoded string */ - ...); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -/* Emit a ResourceWarning warning */ -PyAPI_FUNC(int) PyErr_ResourceWarning( - PyObject *source, - Py_ssize_t stack_level, - const char *format, /* ASCII-encoded string */ - ...); -#endif -#ifndef Py_LIMITED_API -PyAPI_FUNC(int) PyErr_WarnExplicitObject( - PyObject *category, - PyObject *message, - PyObject *filename, - int lineno, - PyObject *module, - PyObject *registry); -#endif -PyAPI_FUNC(int) PyErr_WarnExplicit( - PyObject *category, - const char *message, /* UTF-8 encoded string */ - const char *filename, /* decoded from the filesystem encoding */ - int lineno, - const char *module, /* UTF-8 encoded string */ - PyObject *registry); - -#ifndef Py_LIMITED_API -PyAPI_FUNC(int) -PyErr_WarnExplicitFormat(PyObject *category, - const char *filename, int lineno, - const char *module, PyObject *registry, - const char *format, ...); -#endif - -/* DEPRECATED: Use PyErr_WarnEx() instead. */ -#ifndef Py_LIMITED_API -#define PyErr_Warn(category, msg) PyErr_WarnEx(category, msg, 1) -#endif - -#ifndef Py_LIMITED_API -void _PyErr_WarnUnawaitedCoroutine(PyObject *coro); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_WARNINGS_H */ - diff --git a/_Pre_Builds/_Python310_cpp/include/weakrefobject.h b/_Pre_Builds/_Python310_cpp/include/weakrefobject.h deleted file mode 100644 index ac4b482..0000000 --- a/_Pre_Builds/_Python310_cpp/include/weakrefobject.h +++ /dev/null @@ -1,86 +0,0 @@ -/* Weak references objects for Python. */ - -#ifndef Py_WEAKREFOBJECT_H -#define Py_WEAKREFOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -typedef struct _PyWeakReference PyWeakReference; - -/* PyWeakReference is the base struct for the Python ReferenceType, ProxyType, - * and CallableProxyType. - */ -#ifndef Py_LIMITED_API -struct _PyWeakReference { - PyObject_HEAD - - /* The object to which this is a weak reference, or Py_None if none. - * Note that this is a stealth reference: wr_object's refcount is - * not incremented to reflect this pointer. - */ - PyObject *wr_object; - - /* A callable to invoke when wr_object dies, or NULL if none. */ - PyObject *wr_callback; - - /* A cache for wr_object's hash code. As usual for hashes, this is -1 - * if the hash code isn't known yet. - */ - Py_hash_t hash; - - /* If wr_object is weakly referenced, wr_object has a doubly-linked NULL- - * terminated list of weak references to it. These are the list pointers. - * If wr_object goes away, wr_object is set to Py_None, and these pointers - * have no meaning then. - */ - PyWeakReference *wr_prev; - PyWeakReference *wr_next; -}; -#endif - -PyAPI_DATA(PyTypeObject) _PyWeakref_RefType; -PyAPI_DATA(PyTypeObject) _PyWeakref_ProxyType; -PyAPI_DATA(PyTypeObject) _PyWeakref_CallableProxyType; - -#define PyWeakref_CheckRef(op) PyObject_TypeCheck(op, &_PyWeakref_RefType) -#define PyWeakref_CheckRefExact(op) \ - Py_IS_TYPE(op, &_PyWeakref_RefType) -#define PyWeakref_CheckProxy(op) \ - (Py_IS_TYPE(op, &_PyWeakref_ProxyType) || \ - Py_IS_TYPE(op, &_PyWeakref_CallableProxyType)) - -#define PyWeakref_Check(op) \ - (PyWeakref_CheckRef(op) || PyWeakref_CheckProxy(op)) - - -PyAPI_FUNC(PyObject *) PyWeakref_NewRef(PyObject *ob, - PyObject *callback); -PyAPI_FUNC(PyObject *) PyWeakref_NewProxy(PyObject *ob, - PyObject *callback); -PyAPI_FUNC(PyObject *) PyWeakref_GetObject(PyObject *ref); - -#ifndef Py_LIMITED_API -PyAPI_FUNC(Py_ssize_t) _PyWeakref_GetWeakrefCount(PyWeakReference *head); - -PyAPI_FUNC(void) _PyWeakref_ClearRef(PyWeakReference *self); -#endif - -/* Explanation for the Py_REFCNT() check: when a weakref's target is part - of a long chain of deallocations which triggers the trashcan mechanism, - clearing the weakrefs can be delayed long after the target's refcount - has dropped to zero. In the meantime, code accessing the weakref will - be able to "see" the target object even though it is supposed to be - unreachable. See issue #16602. */ - -#define PyWeakref_GET_OBJECT(ref) \ - (Py_REFCNT(((PyWeakReference *)(ref))->wr_object) > 0 \ - ? ((PyWeakReference *)(ref))->wr_object \ - : Py_None) - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_WEAKREFOBJECT_H */ diff --git a/_Pre_Builds/_Python310_cpp/libs/_tkinter.lib b/_Pre_Builds/_Python310_cpp/libs/_tkinter.lib deleted file mode 100644 index 53b1762..0000000 Binary files a/_Pre_Builds/_Python310_cpp/libs/_tkinter.lib and /dev/null differ diff --git a/_Pre_Builds/_Python310_cpp/libs/python3.lib b/_Pre_Builds/_Python310_cpp/libs/python3.lib deleted file mode 100644 index 0c00291..0000000 Binary files a/_Pre_Builds/_Python310_cpp/libs/python3.lib and /dev/null differ diff --git a/_Pre_Builds/_Python310_cpp/libs/python310.lib b/_Pre_Builds/_Python310_cpp/libs/python310.lib deleted file mode 100644 index 35506e7..0000000 Binary files a/_Pre_Builds/_Python310_cpp/libs/python310.lib and /dev/null differ diff --git a/_Pre_Builds/_Python311_cpp/include/Python.h b/_Pre_Builds/_Python311_cpp/include/Python.h deleted file mode 100644 index 52a7aac..0000000 --- a/_Pre_Builds/_Python311_cpp/include/Python.h +++ /dev/null @@ -1,109 +0,0 @@ -// Entry point of the Python C API. -// C extensions should only #include , and not include directly -// the other Python header files included by . - -#ifndef Py_PYTHON_H -#define Py_PYTHON_H - -// Since this is a "meta-include" file, no #ifdef __cplusplus / extern "C" { - -// Include Python header files -#include "patchlevel.h" -#include "pyconfig.h" -#include "pymacconfig.h" - -#if defined(__sgi) && !defined(_SGI_MP_SOURCE) -# define _SGI_MP_SOURCE -#endif - -// stdlib.h, stdio.h, errno.h and string.h headers are not used by Python -// headers, but kept for backward compatibility. They are excluded from the -// limited C API of Python 3.11. -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# include -# include // FILE* -# include // errno -# include // memcpy() -#endif -#ifndef MS_WINDOWS -# include -#endif -#ifdef HAVE_STDDEF_H -# include // size_t -#endif - -#include // assert() -#include // wchar_t - -#include "pyport.h" -#include "pymacro.h" -#include "pymath.h" -#include "pymem.h" -#include "pytypedefs.h" -#include "pybuffer.h" -#include "object.h" -#include "objimpl.h" -#include "typeslots.h" -#include "pyhash.h" -#include "cpython/pydebug.h" -#include "bytearrayobject.h" -#include "bytesobject.h" -#include "unicodeobject.h" -#include "longobject.h" -#include "cpython/longintrepr.h" -#include "boolobject.h" -#include "floatobject.h" -#include "complexobject.h" -#include "rangeobject.h" -#include "memoryobject.h" -#include "tupleobject.h" -#include "listobject.h" -#include "dictobject.h" -#include "cpython/odictobject.h" -#include "enumobject.h" -#include "setobject.h" -#include "methodobject.h" -#include "moduleobject.h" -#include "cpython/funcobject.h" -#include "cpython/classobject.h" -#include "fileobject.h" -#include "pycapsule.h" -#include "cpython/code.h" -#include "pyframe.h" -#include "traceback.h" -#include "sliceobject.h" -#include "cpython/cellobject.h" -#include "iterobject.h" -#include "cpython/initconfig.h" -#include "pystate.h" -#include "cpython/genobject.h" -#include "descrobject.h" -#include "genericaliasobject.h" -#include "warnings.h" -#include "weakrefobject.h" -#include "structseq.h" -#include "cpython/picklebufobject.h" -#include "cpython/pytime.h" -#include "codecs.h" -#include "pyerrors.h" -#include "pythread.h" -#include "cpython/context.h" -#include "modsupport.h" -#include "compile.h" -#include "pythonrun.h" -#include "pylifecycle.h" -#include "ceval.h" -#include "sysmodule.h" -#include "osmodule.h" -#include "intrcheck.h" -#include "import.h" -#include "abstract.h" -#include "bltinmodule.h" -#include "cpython/pyctype.h" -#include "pystrtod.h" -#include "pystrcmp.h" -#include "fileutils.h" -#include "cpython/pyfpe.h" -#include "tracemalloc.h" - -#endif /* !Py_PYTHON_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/README.rst b/_Pre_Builds/_Python311_cpp/include/README.rst deleted file mode 100644 index f52e690..0000000 --- a/_Pre_Builds/_Python311_cpp/include/README.rst +++ /dev/null @@ -1,12 +0,0 @@ -The Python C API -================ - -The C API is divided into three sections: - -1. ``Include/``: Limited API -2. ``Include/cpython/``: CPython implementation details -3. ``Include/internal/``: The internal API - -Information on changing the C API is available `in the developer guide`_ - -.. _in the developer guide: https://devguide.python.org/c-api/ diff --git a/_Pre_Builds/_Python311_cpp/include/abstract.h b/_Pre_Builds/_Python311_cpp/include/abstract.h deleted file mode 100644 index 9e06fbb..0000000 --- a/_Pre_Builds/_Python311_cpp/include/abstract.h +++ /dev/null @@ -1,873 +0,0 @@ -/* Abstract Object Interface (many thanks to Jim Fulton) */ - -#ifndef Py_ABSTRACTOBJECT_H -#define Py_ABSTRACTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* === Object Protocol ================================================== */ - -/* Implemented elsewhere: - - int PyObject_Print(PyObject *o, FILE *fp, int flags); - - Print an object 'o' on file 'fp'. Returns -1 on error. The flags argument - is used to enable certain printing options. The only option currently - supported is Py_Print_RAW. - - (What should be said about Py_Print_RAW?). */ - - -/* Implemented elsewhere: - - int PyObject_HasAttrString(PyObject *o, const char *attr_name); - - Returns 1 if object 'o' has the attribute attr_name, and 0 otherwise. - - This is equivalent to the Python expression: hasattr(o,attr_name). - - This function always succeeds. */ - - -/* Implemented elsewhere: - - PyObject* PyObject_GetAttrString(PyObject *o, const char *attr_name); - - Retrieve an attributed named attr_name form object o. - Returns the attribute value on success, or NULL on failure. - - This is the equivalent of the Python expression: o.attr_name. */ - - -/* Implemented elsewhere: - - int PyObject_HasAttr(PyObject *o, PyObject *attr_name); - - Returns 1 if o has the attribute attr_name, and 0 otherwise. - - This is equivalent to the Python expression: hasattr(o,attr_name). - - This function always succeeds. */ - -/* Implemented elsewhere: - - PyObject* PyObject_GetAttr(PyObject *o, PyObject *attr_name); - - Retrieve an attributed named 'attr_name' form object 'o'. - Returns the attribute value on success, or NULL on failure. - - This is the equivalent of the Python expression: o.attr_name. */ - - -/* Implemented elsewhere: - - int PyObject_SetAttrString(PyObject *o, const char *attr_name, PyObject *v); - - Set the value of the attribute named attr_name, for object 'o', - to the value 'v'. Raise an exception and return -1 on failure; return 0 on - success. - - This is the equivalent of the Python statement o.attr_name=v. */ - - -/* Implemented elsewhere: - - int PyObject_SetAttr(PyObject *o, PyObject *attr_name, PyObject *v); - - Set the value of the attribute named attr_name, for object 'o', to the value - 'v'. an exception and return -1 on failure; return 0 on success. - - This is the equivalent of the Python statement o.attr_name=v. */ - -/* Implemented as a macro: - - int PyObject_DelAttrString(PyObject *o, const char *attr_name); - - Delete attribute named attr_name, for object o. Returns - -1 on failure. - - This is the equivalent of the Python statement: del o.attr_name. */ -#define PyObject_DelAttrString(O,A) PyObject_SetAttrString((O),(A), NULL) - - -/* Implemented as a macro: - - int PyObject_DelAttr(PyObject *o, PyObject *attr_name); - - Delete attribute named attr_name, for object o. Returns -1 - on failure. This is the equivalent of the Python - statement: del o.attr_name. */ -#define PyObject_DelAttr(O,A) PyObject_SetAttr((O),(A), NULL) - - -/* Implemented elsewhere: - - PyObject *PyObject_Repr(PyObject *o); - - Compute the string representation of object 'o'. Returns the - string representation on success, NULL on failure. - - This is the equivalent of the Python expression: repr(o). - - Called by the repr() built-in function. */ - - -/* Implemented elsewhere: - - PyObject *PyObject_Str(PyObject *o); - - Compute the string representation of object, o. Returns the - string representation on success, NULL on failure. - - This is the equivalent of the Python expression: str(o). - - Called by the str() and print() built-in functions. */ - - -/* Declared elsewhere - - PyAPI_FUNC(int) PyCallable_Check(PyObject *o); - - Determine if the object, o, is callable. Return 1 if the object is callable - and 0 otherwise. - - This function always succeeds. */ - - -#ifdef PY_SSIZE_T_CLEAN -# define PyObject_CallFunction _PyObject_CallFunction_SizeT -# define PyObject_CallMethod _PyObject_CallMethod_SizeT -#endif - - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* Call a callable Python object without any arguments */ -PyAPI_FUNC(PyObject *) PyObject_CallNoArgs(PyObject *func); -#endif - - -/* Call a callable Python object 'callable' with arguments given by the - tuple 'args' and keywords arguments given by the dictionary 'kwargs'. - - 'args' must not be NULL, use an empty tuple if no arguments are - needed. If no named arguments are needed, 'kwargs' can be NULL. - - This is the equivalent of the Python expression: - callable(*args, **kwargs). */ -PyAPI_FUNC(PyObject *) PyObject_Call(PyObject *callable, - PyObject *args, PyObject *kwargs); - - -/* Call a callable Python object 'callable', with arguments given by the - tuple 'args'. If no arguments are needed, then 'args' can be NULL. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - callable(*args). */ -PyAPI_FUNC(PyObject *) PyObject_CallObject(PyObject *callable, - PyObject *args); - -/* Call a callable Python object, callable, with a variable number of C - arguments. The C arguments are described using a mkvalue-style format - string. - - The format may be NULL, indicating that no arguments are provided. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - callable(arg1, arg2, ...). */ -PyAPI_FUNC(PyObject *) PyObject_CallFunction(PyObject *callable, - const char *format, ...); - -/* Call the method named 'name' of object 'obj' with a variable number of - C arguments. The C arguments are described by a mkvalue format string. - - The format can be NULL, indicating that no arguments are provided. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - obj.name(arg1, arg2, ...). */ -PyAPI_FUNC(PyObject *) PyObject_CallMethod(PyObject *obj, - const char *name, - const char *format, ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallFunction_SizeT(PyObject *callable, - const char *format, - ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallMethod_SizeT(PyObject *obj, - const char *name, - const char *format, - ...); - -/* Call a callable Python object 'callable' with a variable number of C - arguments. The C arguments are provided as PyObject* values, terminated - by a NULL. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - callable(arg1, arg2, ...). */ -PyAPI_FUNC(PyObject *) PyObject_CallFunctionObjArgs(PyObject *callable, - ...); - -/* Call the method named 'name' of object 'obj' with a variable number of - C arguments. The C arguments are provided as PyObject* values, terminated - by NULL. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: obj.name(*args). */ - -PyAPI_FUNC(PyObject *) PyObject_CallMethodObjArgs( - PyObject *obj, - PyObject *name, - ...); - - -/* Implemented elsewhere: - - Py_hash_t PyObject_Hash(PyObject *o); - - Compute and return the hash, hash_value, of an object, o. On - failure, return -1. - - This is the equivalent of the Python expression: hash(o). */ - - -/* Implemented elsewhere: - - int PyObject_IsTrue(PyObject *o); - - Returns 1 if the object, o, is considered to be true, 0 if o is - considered to be false and -1 on failure. - - This is equivalent to the Python expression: not not o. */ - - -/* Implemented elsewhere: - - int PyObject_Not(PyObject *o); - - Returns 0 if the object, o, is considered to be true, 1 if o is - considered to be false and -1 on failure. - - This is equivalent to the Python expression: not o. */ - - -/* Get the type of an object. - - On success, returns a type object corresponding to the object type of object - 'o'. On failure, returns NULL. - - This is equivalent to the Python expression: type(o) */ -PyAPI_FUNC(PyObject *) PyObject_Type(PyObject *o); - - -/* Return the size of object 'o'. If the object 'o' provides both sequence and - mapping protocols, the sequence size is returned. - - On error, -1 is returned. - - This is the equivalent to the Python expression: len(o) */ -PyAPI_FUNC(Py_ssize_t) PyObject_Size(PyObject *o); - - -/* For DLL compatibility */ -#undef PyObject_Length -PyAPI_FUNC(Py_ssize_t) PyObject_Length(PyObject *o); -#define PyObject_Length PyObject_Size - -/* Return element of 'o' corresponding to the object 'key'. Return NULL - on failure. - - This is the equivalent of the Python expression: o[key] */ -PyAPI_FUNC(PyObject *) PyObject_GetItem(PyObject *o, PyObject *key); - - -/* Map the object 'key' to the value 'v' into 'o'. - - Raise an exception and return -1 on failure; return 0 on success. - - This is the equivalent of the Python statement: o[key]=v. */ -PyAPI_FUNC(int) PyObject_SetItem(PyObject *o, PyObject *key, PyObject *v); - -/* Remove the mapping for the string 'key' from the object 'o'. - Returns -1 on failure. - - This is equivalent to the Python statement: del o[key]. */ -PyAPI_FUNC(int) PyObject_DelItemString(PyObject *o, const char *key); - -/* Delete the mapping for the object 'key' from the object 'o'. - Returns -1 on failure. - - This is the equivalent of the Python statement: del o[key]. */ -PyAPI_FUNC(int) PyObject_DelItem(PyObject *o, PyObject *key); - - -/* === Old Buffer API ============================================ */ - -/* FIXME: usage of these should all be replaced in Python itself - but for backwards compatibility we will implement them. - Their usage without a corresponding "unlock" mechanism - may create issues (but they would already be there). */ - -/* Takes an arbitrary object which must support the (character, single segment) - buffer interface and returns a pointer to a read-only memory location - usable as character based input for subsequent processing. - - Return 0 on success. buffer and buffer_len are only set in case no error - occurs. Otherwise, -1 is returned and an exception set. */ -Py_DEPRECATED(3.0) -PyAPI_FUNC(int) PyObject_AsCharBuffer(PyObject *obj, - const char **buffer, - Py_ssize_t *buffer_len); - -/* Checks whether an arbitrary object supports the (character, single segment) - buffer interface. - - Returns 1 on success, 0 on failure. */ -Py_DEPRECATED(3.0) PyAPI_FUNC(int) PyObject_CheckReadBuffer(PyObject *obj); - -/* Same as PyObject_AsCharBuffer() except that this API expects (readable, - single segment) buffer interface and returns a pointer to a read-only memory - location which can contain arbitrary data. - - 0 is returned on success. buffer and buffer_len are only set in case no - error occurs. Otherwise, -1 is returned and an exception set. */ -Py_DEPRECATED(3.0) -PyAPI_FUNC(int) PyObject_AsReadBuffer(PyObject *obj, - const void **buffer, - Py_ssize_t *buffer_len); - -/* Takes an arbitrary object which must support the (writable, single segment) - buffer interface and returns a pointer to a writable memory location in - buffer of size 'buffer_len'. - - Return 0 on success. buffer and buffer_len are only set in case no error - occurs. Otherwise, -1 is returned and an exception set. */ -Py_DEPRECATED(3.0) -PyAPI_FUNC(int) PyObject_AsWriteBuffer(PyObject *obj, - void **buffer, - Py_ssize_t *buffer_len); - - -/* === New Buffer API ============================================ */ - -/* Takes an arbitrary object and returns the result of calling - obj.__format__(format_spec). */ -PyAPI_FUNC(PyObject *) PyObject_Format(PyObject *obj, - PyObject *format_spec); - - -/* ==== Iterators ================================================ */ - -/* Takes an object and returns an iterator for it. - This is typically a new iterator but if the argument is an iterator, this - returns itself. */ -PyAPI_FUNC(PyObject *) PyObject_GetIter(PyObject *); - -/* Takes an AsyncIterable object and returns an AsyncIterator for it. - This is typically a new iterator but if the argument is an AsyncIterator, - this returns itself. */ -PyAPI_FUNC(PyObject *) PyObject_GetAIter(PyObject *); - -/* Returns non-zero if the object 'obj' provides iterator protocols, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyIter_Check(PyObject *); - -/* Returns non-zero if the object 'obj' provides AsyncIterator protocols, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyAIter_Check(PyObject *); - -/* Takes an iterator object and calls its tp_iternext slot, - returning the next value. - - If the iterator is exhausted, this returns NULL without setting an - exception. - - NULL with an exception means an error occurred. */ -PyAPI_FUNC(PyObject *) PyIter_Next(PyObject *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 - -/* Takes generator, coroutine or iterator object and sends the value into it. - Returns: - - PYGEN_RETURN (0) if generator has returned. - 'result' parameter is filled with return value - - PYGEN_ERROR (-1) if exception was raised. - 'result' parameter is NULL - - PYGEN_NEXT (1) if generator has yielded. - 'result' parameter is filled with yielded value. */ -PyAPI_FUNC(PySendResult) PyIter_Send(PyObject *, PyObject *, PyObject **); -#endif - - -/* === Number Protocol ================================================== */ - -/* Returns 1 if the object 'o' provides numeric protocols, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyNumber_Check(PyObject *o); - -/* Returns the result of adding o1 and o2, or NULL on failure. - - This is the equivalent of the Python expression: o1 + o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Add(PyObject *o1, PyObject *o2); - -/* Returns the result of subtracting o2 from o1, or NULL on failure. - - This is the equivalent of the Python expression: o1 - o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Subtract(PyObject *o1, PyObject *o2); - -/* Returns the result of multiplying o1 and o2, or NULL on failure. - - This is the equivalent of the Python expression: o1 * o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Multiply(PyObject *o1, PyObject *o2); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* This is the equivalent of the Python expression: o1 @ o2. */ -PyAPI_FUNC(PyObject *) PyNumber_MatrixMultiply(PyObject *o1, PyObject *o2); -#endif - -/* Returns the result of dividing o1 by o2 giving an integral result, - or NULL on failure. - - This is the equivalent of the Python expression: o1 // o2. */ -PyAPI_FUNC(PyObject *) PyNumber_FloorDivide(PyObject *o1, PyObject *o2); - -/* Returns the result of dividing o1 by o2 giving a float result, or NULL on - failure. - - This is the equivalent of the Python expression: o1 / o2. */ -PyAPI_FUNC(PyObject *) PyNumber_TrueDivide(PyObject *o1, PyObject *o2); - -/* Returns the remainder of dividing o1 by o2, or NULL on failure. - - This is the equivalent of the Python expression: o1 % o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Remainder(PyObject *o1, PyObject *o2); - -/* See the built-in function divmod. - - Returns NULL on failure. - - This is the equivalent of the Python expression: divmod(o1, o2). */ -PyAPI_FUNC(PyObject *) PyNumber_Divmod(PyObject *o1, PyObject *o2); - -/* See the built-in function pow. Returns NULL on failure. - - This is the equivalent of the Python expression: pow(o1, o2, o3), - where o3 is optional. */ -PyAPI_FUNC(PyObject *) PyNumber_Power(PyObject *o1, PyObject *o2, - PyObject *o3); - -/* Returns the negation of o on success, or NULL on failure. - - This is the equivalent of the Python expression: -o. */ -PyAPI_FUNC(PyObject *) PyNumber_Negative(PyObject *o); - -/* Returns the positive of o on success, or NULL on failure. - - This is the equivalent of the Python expression: +o. */ -PyAPI_FUNC(PyObject *) PyNumber_Positive(PyObject *o); - -/* Returns the absolute value of 'o', or NULL on failure. - - This is the equivalent of the Python expression: abs(o). */ -PyAPI_FUNC(PyObject *) PyNumber_Absolute(PyObject *o); - -/* Returns the bitwise negation of 'o' on success, or NULL on failure. - - This is the equivalent of the Python expression: ~o. */ -PyAPI_FUNC(PyObject *) PyNumber_Invert(PyObject *o); - -/* Returns the result of left shifting o1 by o2 on success, or NULL on failure. - - This is the equivalent of the Python expression: o1 << o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Lshift(PyObject *o1, PyObject *o2); - -/* Returns the result of right shifting o1 by o2 on success, or NULL on - failure. - - This is the equivalent of the Python expression: o1 >> o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Rshift(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise and of o1 and o2 on success, or NULL on - failure. - - This is the equivalent of the Python expression: o1 & o2. */ -PyAPI_FUNC(PyObject *) PyNumber_And(PyObject *o1, PyObject *o2); - -/* Returns the bitwise exclusive or of o1 by o2 on success, or NULL on failure. - - This is the equivalent of the Python expression: o1 ^ o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Xor(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise or on o1 and o2 on success, or NULL on - failure. - - This is the equivalent of the Python expression: o1 | o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Or(PyObject *o1, PyObject *o2); - -/* Returns 1 if obj is an index integer (has the nb_index slot of the - tp_as_number structure filled in), and 0 otherwise. */ -PyAPI_FUNC(int) PyIndex_Check(PyObject *); - -/* Returns the object 'o' converted to a Python int, or NULL with an exception - raised on failure. */ -PyAPI_FUNC(PyObject *) PyNumber_Index(PyObject *o); - -/* Returns the object 'o' converted to Py_ssize_t by going through - PyNumber_Index() first. - - If an overflow error occurs while converting the int to Py_ssize_t, then the - second argument 'exc' is the error-type to return. If it is NULL, then the - overflow error is cleared and the value is clipped. */ -PyAPI_FUNC(Py_ssize_t) PyNumber_AsSsize_t(PyObject *o, PyObject *exc); - -/* Returns the object 'o' converted to an integer object on success, or NULL - on failure. - - This is the equivalent of the Python expression: int(o). */ -PyAPI_FUNC(PyObject *) PyNumber_Long(PyObject *o); - -/* Returns the object 'o' converted to a float object on success, or NULL - on failure. - - This is the equivalent of the Python expression: float(o). */ -PyAPI_FUNC(PyObject *) PyNumber_Float(PyObject *o); - - -/* --- In-place variants of (some of) the above number protocol functions -- */ - -/* Returns the result of adding o2 to o1, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 += o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceAdd(PyObject *o1, PyObject *o2); - -/* Returns the result of subtracting o2 from o1, possibly in-place or - NULL on failure. - - This is the equivalent of the Python expression: o1 -= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceSubtract(PyObject *o1, PyObject *o2); - -/* Returns the result of multiplying o1 by o2, possibly in-place, or NULL on - failure. - - This is the equivalent of the Python expression: o1 *= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceMultiply(PyObject *o1, PyObject *o2); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* This is the equivalent of the Python expression: o1 @= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceMatrixMultiply(PyObject *o1, PyObject *o2); -#endif - -/* Returns the result of dividing o1 by o2 giving an integral result, possibly - in-place, or NULL on failure. - - This is the equivalent of the Python expression: o1 /= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceFloorDivide(PyObject *o1, - PyObject *o2); - -/* Returns the result of dividing o1 by o2 giving a float result, possibly - in-place, or null on failure. - - This is the equivalent of the Python expression: o1 /= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceTrueDivide(PyObject *o1, - PyObject *o2); - -/* Returns the remainder of dividing o1 by o2, possibly in-place, or NULL on - failure. - - This is the equivalent of the Python expression: o1 %= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceRemainder(PyObject *o1, PyObject *o2); - -/* Returns the result of raising o1 to the power of o2, possibly in-place, - or NULL on failure. - - This is the equivalent of the Python expression: o1 **= o2, - or o1 = pow(o1, o2, o3) if o3 is present. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlacePower(PyObject *o1, PyObject *o2, - PyObject *o3); - -/* Returns the result of left shifting o1 by o2, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 <<= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceLshift(PyObject *o1, PyObject *o2); - -/* Returns the result of right shifting o1 by o2, possibly in-place or NULL - on failure. - - This is the equivalent of the Python expression: o1 >>= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceRshift(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise and of o1 and o2, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 &= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceAnd(PyObject *o1, PyObject *o2); - -/* Returns the bitwise exclusive or of o1 by o2, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 ^= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceXor(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise or of o1 and o2, possibly in-place, - or NULL on failure. - - This is the equivalent of the Python expression: o1 |= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceOr(PyObject *o1, PyObject *o2); - -/* Returns the integer n converted to a string with a base, with a base - marker of 0b, 0o or 0x prefixed if applicable. - - If n is not an int object, it is converted with PyNumber_Index first. */ -PyAPI_FUNC(PyObject *) PyNumber_ToBase(PyObject *n, int base); - - -/* === Sequence protocol ================================================ */ - -/* Return 1 if the object provides sequence protocol, and zero - otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PySequence_Check(PyObject *o); - -/* Return the size of sequence object o, or -1 on failure. */ -PyAPI_FUNC(Py_ssize_t) PySequence_Size(PyObject *o); - -/* For DLL compatibility */ -#undef PySequence_Length -PyAPI_FUNC(Py_ssize_t) PySequence_Length(PyObject *o); -#define PySequence_Length PySequence_Size - - -/* Return the concatenation of o1 and o2 on success, and NULL on failure. - - This is the equivalent of the Python expression: o1 + o2. */ -PyAPI_FUNC(PyObject *) PySequence_Concat(PyObject *o1, PyObject *o2); - -/* Return the result of repeating sequence object 'o' 'count' times, - or NULL on failure. - - This is the equivalent of the Python expression: o * count. */ -PyAPI_FUNC(PyObject *) PySequence_Repeat(PyObject *o, Py_ssize_t count); - -/* Return the ith element of o, or NULL on failure. - - This is the equivalent of the Python expression: o[i]. */ -PyAPI_FUNC(PyObject *) PySequence_GetItem(PyObject *o, Py_ssize_t i); - -/* Return the slice of sequence object o between i1 and i2, or NULL on failure. - - This is the equivalent of the Python expression: o[i1:i2]. */ -PyAPI_FUNC(PyObject *) PySequence_GetSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2); - -/* Assign object 'v' to the ith element of the sequence 'o'. Raise an exception - and return -1 on failure; return 0 on success. - - This is the equivalent of the Python statement o[i] = v. */ -PyAPI_FUNC(int) PySequence_SetItem(PyObject *o, Py_ssize_t i, PyObject *v); - -/* Delete the 'i'-th element of the sequence 'v'. Returns -1 on failure. - - This is the equivalent of the Python statement: del o[i]. */ -PyAPI_FUNC(int) PySequence_DelItem(PyObject *o, Py_ssize_t i); - -/* Assign the sequence object 'v' to the slice in sequence object 'o', - from 'i1' to 'i2'. Returns -1 on failure. - - This is the equivalent of the Python statement: o[i1:i2] = v. */ -PyAPI_FUNC(int) PySequence_SetSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2, - PyObject *v); - -/* Delete the slice in sequence object 'o' from 'i1' to 'i2'. - Returns -1 on failure. - - This is the equivalent of the Python statement: del o[i1:i2]. */ -PyAPI_FUNC(int) PySequence_DelSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2); - -/* Returns the sequence 'o' as a tuple on success, and NULL on failure. - - This is equivalent to the Python expression: tuple(o). */ -PyAPI_FUNC(PyObject *) PySequence_Tuple(PyObject *o); - -/* Returns the sequence 'o' as a list on success, and NULL on failure. - This is equivalent to the Python expression: list(o) */ -PyAPI_FUNC(PyObject *) PySequence_List(PyObject *o); - -/* Return the sequence 'o' as a list, unless it's already a tuple or list. - - Use PySequence_Fast_GET_ITEM to access the members of this list, and - PySequence_Fast_GET_SIZE to get its length. - - Returns NULL on failure. If the object does not support iteration, raises a - TypeError exception with 'm' as the message text. */ -PyAPI_FUNC(PyObject *) PySequence_Fast(PyObject *o, const char* m); - -/* Return the size of the sequence 'o', assuming that 'o' was returned by - PySequence_Fast and is not NULL. */ -#define PySequence_Fast_GET_SIZE(o) \ - (PyList_Check(o) ? PyList_GET_SIZE(o) : PyTuple_GET_SIZE(o)) - -/* Return the 'i'-th element of the sequence 'o', assuming that o was returned - by PySequence_Fast, and that i is within bounds. */ -#define PySequence_Fast_GET_ITEM(o, i)\ - (PyList_Check(o) ? PyList_GET_ITEM(o, i) : PyTuple_GET_ITEM(o, i)) - -/* Return a pointer to the underlying item array for - an object returned by PySequence_Fast */ -#define PySequence_Fast_ITEMS(sf) \ - (PyList_Check(sf) ? ((PyListObject *)(sf))->ob_item \ - : ((PyTupleObject *)(sf))->ob_item) - -/* Return the number of occurrences on value on 'o', that is, return - the number of keys for which o[key] == value. - - On failure, return -1. This is equivalent to the Python expression: - o.count(value). */ -PyAPI_FUNC(Py_ssize_t) PySequence_Count(PyObject *o, PyObject *value); - -/* Return 1 if 'ob' is in the sequence 'seq'; 0 if 'ob' is not in the sequence - 'seq'; -1 on error. - - Use __contains__ if possible, else _PySequence_IterSearch(). */ -PyAPI_FUNC(int) PySequence_Contains(PyObject *seq, PyObject *ob); - -/* For DLL-level backwards compatibility */ -#undef PySequence_In -/* Determine if the sequence 'o' contains 'value'. If an item in 'o' is equal - to 'value', return 1, otherwise return 0. On error, return -1. - - This is equivalent to the Python expression: value in o. */ -PyAPI_FUNC(int) PySequence_In(PyObject *o, PyObject *value); - -/* For source-level backwards compatibility */ -#define PySequence_In PySequence_Contains - - -/* Return the first index for which o[i] == value. - On error, return -1. - - This is equivalent to the Python expression: o.index(value). */ -PyAPI_FUNC(Py_ssize_t) PySequence_Index(PyObject *o, PyObject *value); - - -/* --- In-place versions of some of the above Sequence functions --- */ - -/* Append sequence 'o2' to sequence 'o1', in-place when possible. Return the - resulting object, which could be 'o1', or NULL on failure. - - This is the equivalent of the Python expression: o1 += o2. */ -PyAPI_FUNC(PyObject *) PySequence_InPlaceConcat(PyObject *o1, PyObject *o2); - -/* Repeat sequence 'o' by 'count', in-place when possible. Return the resulting - object, which could be 'o', or NULL on failure. - - This is the equivalent of the Python expression: o1 *= count. */ -PyAPI_FUNC(PyObject *) PySequence_InPlaceRepeat(PyObject *o, Py_ssize_t count); - - -/* === Mapping protocol ================================================= */ - -/* Return 1 if the object provides mapping protocol, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyMapping_Check(PyObject *o); - -/* Returns the number of keys in mapping object 'o' on success, and -1 on - failure. This is equivalent to the Python expression: len(o). */ -PyAPI_FUNC(Py_ssize_t) PyMapping_Size(PyObject *o); - -/* For DLL compatibility */ -#undef PyMapping_Length -PyAPI_FUNC(Py_ssize_t) PyMapping_Length(PyObject *o); -#define PyMapping_Length PyMapping_Size - - -/* Implemented as a macro: - - int PyMapping_DelItemString(PyObject *o, const char *key); - - Remove the mapping for the string 'key' from the mapping 'o'. Returns -1 on - failure. - - This is equivalent to the Python statement: del o[key]. */ -#define PyMapping_DelItemString(O,K) PyObject_DelItemString((O),(K)) - -/* Implemented as a macro: - - int PyMapping_DelItem(PyObject *o, PyObject *key); - - Remove the mapping for the object 'key' from the mapping object 'o'. - Returns -1 on failure. - - This is equivalent to the Python statement: del o[key]. */ -#define PyMapping_DelItem(O,K) PyObject_DelItem((O),(K)) - -/* On success, return 1 if the mapping object 'o' has the key 'key', - and 0 otherwise. - - This is equivalent to the Python expression: key in o. - - This function always succeeds. */ -PyAPI_FUNC(int) PyMapping_HasKeyString(PyObject *o, const char *key); - -/* Return 1 if the mapping object has the key 'key', and 0 otherwise. - - This is equivalent to the Python expression: key in o. - - This function always succeeds. */ -PyAPI_FUNC(int) PyMapping_HasKey(PyObject *o, PyObject *key); - -/* On success, return a list or tuple of the keys in mapping object 'o'. - On failure, return NULL. */ -PyAPI_FUNC(PyObject *) PyMapping_Keys(PyObject *o); - -/* On success, return a list or tuple of the values in mapping object 'o'. - On failure, return NULL. */ -PyAPI_FUNC(PyObject *) PyMapping_Values(PyObject *o); - -/* On success, return a list or tuple of the items in mapping object 'o', - where each item is a tuple containing a key-value pair. On failure, return - NULL. */ -PyAPI_FUNC(PyObject *) PyMapping_Items(PyObject *o); - -/* Return element of 'o' corresponding to the string 'key' or NULL on failure. - - This is the equivalent of the Python expression: o[key]. */ -PyAPI_FUNC(PyObject *) PyMapping_GetItemString(PyObject *o, - const char *key); - -/* Map the string 'key' to the value 'v' in the mapping 'o'. - Returns -1 on failure. - - This is the equivalent of the Python statement: o[key]=v. */ -PyAPI_FUNC(int) PyMapping_SetItemString(PyObject *o, const char *key, - PyObject *value); - -/* isinstance(object, typeorclass) */ -PyAPI_FUNC(int) PyObject_IsInstance(PyObject *object, PyObject *typeorclass); - -/* issubclass(object, typeorclass) */ -PyAPI_FUNC(int) PyObject_IsSubclass(PyObject *object, PyObject *typeorclass); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_ABSTRACTOBJECT_H -# include "cpython/abstract.h" -# undef Py_CPYTHON_ABSTRACTOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* Py_ABSTRACTOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/bltinmodule.h b/_Pre_Builds/_Python311_cpp/include/bltinmodule.h deleted file mode 100644 index 868c9e6..0000000 --- a/_Pre_Builds/_Python311_cpp/include/bltinmodule.h +++ /dev/null @@ -1,14 +0,0 @@ -#ifndef Py_BLTINMODULE_H -#define Py_BLTINMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyFilter_Type; -PyAPI_DATA(PyTypeObject) PyMap_Type; -PyAPI_DATA(PyTypeObject) PyZip_Type; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BLTINMODULE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/boolobject.h b/_Pre_Builds/_Python311_cpp/include/boolobject.h deleted file mode 100644 index 28068d1..0000000 --- a/_Pre_Builds/_Python311_cpp/include/boolobject.h +++ /dev/null @@ -1,43 +0,0 @@ -/* Boolean object interface */ - -#ifndef Py_BOOLOBJECT_H -#define Py_BOOLOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -PyAPI_DATA(PyTypeObject) PyBool_Type; - -#define PyBool_Check(x) Py_IS_TYPE(x, &PyBool_Type) - -/* Py_False and Py_True are the only two bools in existence. -Don't forget to apply Py_INCREF() when returning either!!! */ - -/* Don't use these directly */ -PyAPI_DATA(PyLongObject) _Py_FalseStruct; -PyAPI_DATA(PyLongObject) _Py_TrueStruct; - -/* Use these macros */ -#define Py_False ((PyObject *) &_Py_FalseStruct) -#define Py_True ((PyObject *) &_Py_TrueStruct) - -// Test if an object is the True singleton, the same as "x is True" in Python. -PyAPI_FUNC(int) Py_IsTrue(PyObject *x); -#define Py_IsTrue(x) Py_Is((x), Py_True) - -// Test if an object is the False singleton, the same as "x is False" in Python. -PyAPI_FUNC(int) Py_IsFalse(PyObject *x); -#define Py_IsFalse(x) Py_Is((x), Py_False) - -/* Macros for returning Py_True or Py_False, respectively */ -#define Py_RETURN_TRUE return Py_NewRef(Py_True) -#define Py_RETURN_FALSE return Py_NewRef(Py_False) - -/* Function to return a bool from a C long */ -PyAPI_FUNC(PyObject *) PyBool_FromLong(long); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BOOLOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/bytearrayobject.h b/_Pre_Builds/_Python311_cpp/include/bytearrayobject.h deleted file mode 100644 index ae2bde1..0000000 --- a/_Pre_Builds/_Python311_cpp/include/bytearrayobject.h +++ /dev/null @@ -1,44 +0,0 @@ -/* ByteArray object interface */ - -#ifndef Py_BYTEARRAYOBJECT_H -#define Py_BYTEARRAYOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Type PyByteArrayObject represents a mutable array of bytes. - * The Python API is that of a sequence; - * the bytes are mapped to ints in [0, 256). - * Bytes are not characters; they may be used to encode characters. - * The only way to go between bytes and str/unicode is via encoding - * and decoding. - * For the convenience of C programmers, the bytes type is considered - * to contain a char pointer, not an unsigned char pointer. - */ - -/* Type object */ -PyAPI_DATA(PyTypeObject) PyByteArray_Type; -PyAPI_DATA(PyTypeObject) PyByteArrayIter_Type; - -/* Type check macros */ -#define PyByteArray_Check(self) PyObject_TypeCheck(self, &PyByteArray_Type) -#define PyByteArray_CheckExact(self) Py_IS_TYPE(self, &PyByteArray_Type) - -/* Direct API functions */ -PyAPI_FUNC(PyObject *) PyByteArray_FromObject(PyObject *); -PyAPI_FUNC(PyObject *) PyByteArray_Concat(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyByteArray_FromStringAndSize(const char *, Py_ssize_t); -PyAPI_FUNC(Py_ssize_t) PyByteArray_Size(PyObject *); -PyAPI_FUNC(char *) PyByteArray_AsString(PyObject *); -PyAPI_FUNC(int) PyByteArray_Resize(PyObject *, Py_ssize_t); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_BYTEARRAYOBJECT_H -# include "cpython/bytearrayobject.h" -# undef Py_CPYTHON_BYTEARRAYOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BYTEARRAYOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/bytesobject.h b/_Pre_Builds/_Python311_cpp/include/bytesobject.h deleted file mode 100644 index 4c4dc40..0000000 --- a/_Pre_Builds/_Python311_cpp/include/bytesobject.h +++ /dev/null @@ -1,69 +0,0 @@ - -/* Bytes object interface */ - -#ifndef Py_BYTESOBJECT_H -#define Py_BYTESOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#include // va_list - -/* -Type PyBytesObject represents a byte string. An extra zero byte is -reserved at the end to ensure it is zero-terminated, but a size is -present so strings with null bytes in them can be represented. This -is an immutable object type. - -There are functions to create new bytes objects, to test -an object for bytes-ness, and to get the -byte string value. The latter function returns a null pointer -if the object is not of the proper type. -There is a variant that takes an explicit size as well as a -variant that assumes a zero-terminated string. Note that none of the -functions should be applied to NULL pointer. -*/ - -PyAPI_DATA(PyTypeObject) PyBytes_Type; -PyAPI_DATA(PyTypeObject) PyBytesIter_Type; - -#define PyBytes_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_BYTES_SUBCLASS) -#define PyBytes_CheckExact(op) Py_IS_TYPE(op, &PyBytes_Type) - -PyAPI_FUNC(PyObject *) PyBytes_FromStringAndSize(const char *, Py_ssize_t); -PyAPI_FUNC(PyObject *) PyBytes_FromString(const char *); -PyAPI_FUNC(PyObject *) PyBytes_FromObject(PyObject *); -PyAPI_FUNC(PyObject *) PyBytes_FromFormatV(const char*, va_list) - Py_GCC_ATTRIBUTE((format(printf, 1, 0))); -PyAPI_FUNC(PyObject *) PyBytes_FromFormat(const char*, ...) - Py_GCC_ATTRIBUTE((format(printf, 1, 2))); -PyAPI_FUNC(Py_ssize_t) PyBytes_Size(PyObject *); -PyAPI_FUNC(char *) PyBytes_AsString(PyObject *); -PyAPI_FUNC(PyObject *) PyBytes_Repr(PyObject *, int); -PyAPI_FUNC(void) PyBytes_Concat(PyObject **, PyObject *); -PyAPI_FUNC(void) PyBytes_ConcatAndDel(PyObject **, PyObject *); -PyAPI_FUNC(PyObject *) PyBytes_DecodeEscape(const char *, Py_ssize_t, - const char *, Py_ssize_t, - const char *); - -/* Provides access to the internal data buffer and size of a bytes object. - Passing NULL as len parameter will force the string buffer to be - 0-terminated (passing a string with embedded NUL characters will - cause an exception). */ -PyAPI_FUNC(int) PyBytes_AsStringAndSize( - PyObject *obj, /* bytes object */ - char **s, /* pointer to buffer variable */ - Py_ssize_t *len /* pointer to length variable or NULL */ - ); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_BYTESOBJECT_H -# include "cpython/bytesobject.h" -# undef Py_CPYTHON_BYTESOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BYTESOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/ceval.h b/_Pre_Builds/_Python311_cpp/include/ceval.h deleted file mode 100644 index 1b57f6e..0000000 --- a/_Pre_Builds/_Python311_cpp/include/ceval.h +++ /dev/null @@ -1,168 +0,0 @@ -/* Interface to random parts in ceval.c */ - -#ifndef Py_CEVAL_H -#define Py_CEVAL_H -#ifdef __cplusplus -extern "C" { -#endif - - -PyAPI_FUNC(PyObject *) PyEval_EvalCode(PyObject *, PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) PyEval_EvalCodeEx(PyObject *co, - PyObject *globals, - PyObject *locals, - PyObject *const *args, int argc, - PyObject *const *kwds, int kwdc, - PyObject *const *defs, int defc, - PyObject *kwdefs, PyObject *closure); - -/* PyEval_CallObjectWithKeywords(), PyEval_CallObject(), PyEval_CallFunction - * and PyEval_CallMethod are deprecated. Since they are officially part of the - * stable ABI (PEP 384), they must be kept for backward compatibility. - * PyObject_Call(), PyObject_CallFunction() and PyObject_CallMethod() are - * recommended to call a callable object. - */ - -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallObjectWithKeywords( - PyObject *callable, - PyObject *args, - PyObject *kwargs); - -/* Deprecated since PyEval_CallObjectWithKeywords is deprecated */ -#define PyEval_CallObject(callable, arg) \ - PyEval_CallObjectWithKeywords(callable, arg, (PyObject *)NULL) - -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallFunction( - PyObject *callable, const char *format, ...); -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallMethod( - PyObject *obj, const char *name, const char *format, ...); - -PyAPI_FUNC(PyObject *) PyEval_GetBuiltins(void); -PyAPI_FUNC(PyObject *) PyEval_GetGlobals(void); -PyAPI_FUNC(PyObject *) PyEval_GetLocals(void); -PyAPI_FUNC(PyFrameObject *) PyEval_GetFrame(void); - -PyAPI_FUNC(int) Py_AddPendingCall(int (*func)(void *), void *arg); -PyAPI_FUNC(int) Py_MakePendingCalls(void); - -/* Protection against deeply nested recursive calls - - In Python 3.0, this protection has two levels: - * normal anti-recursion protection is triggered when the recursion level - exceeds the current recursion limit. It raises a RecursionError, and sets - the "overflowed" flag in the thread state structure. This flag - temporarily *disables* the normal protection; this allows cleanup code - to potentially outgrow the recursion limit while processing the - RecursionError. - * "last chance" anti-recursion protection is triggered when the recursion - level exceeds "current recursion limit + 50". By construction, this - protection can only be triggered when the "overflowed" flag is set. It - means the cleanup code has itself gone into an infinite loop, or the - RecursionError has been mistakingly ignored. When this protection is - triggered, the interpreter aborts with a Fatal Error. - - In addition, the "overflowed" flag is automatically reset when the - recursion level drops below "current recursion limit - 50". This heuristic - is meant to ensure that the normal anti-recursion protection doesn't get - disabled too long. - - Please note: this scheme has its own limitations. See: - http://mail.python.org/pipermail/python-dev/2008-August/082106.html - for some observations. -*/ -PyAPI_FUNC(void) Py_SetRecursionLimit(int); -PyAPI_FUNC(int) Py_GetRecursionLimit(void); - -PyAPI_FUNC(int) Py_EnterRecursiveCall(const char *where); -PyAPI_FUNC(void) Py_LeaveRecursiveCall(void); - -PyAPI_FUNC(const char *) PyEval_GetFuncName(PyObject *); -PyAPI_FUNC(const char *) PyEval_GetFuncDesc(PyObject *); - -PyAPI_FUNC(PyObject *) PyEval_EvalFrame(PyFrameObject *); -PyAPI_FUNC(PyObject *) PyEval_EvalFrameEx(PyFrameObject *f, int exc); - -/* Interface for threads. - - A module that plans to do a blocking system call (or something else - that lasts a long time and doesn't touch Python data) can allow other - threads to run as follows: - - ...preparations here... - Py_BEGIN_ALLOW_THREADS - ...blocking system call here... - Py_END_ALLOW_THREADS - ...interpret result here... - - The Py_BEGIN_ALLOW_THREADS/Py_END_ALLOW_THREADS pair expands to a - {}-surrounded block. - To leave the block in the middle (e.g., with return), you must insert - a line containing Py_BLOCK_THREADS before the return, e.g. - - if (...premature_exit...) { - Py_BLOCK_THREADS - PyErr_SetFromErrno(PyExc_OSError); - return NULL; - } - - An alternative is: - - Py_BLOCK_THREADS - if (...premature_exit...) { - PyErr_SetFromErrno(PyExc_OSError); - return NULL; - } - Py_UNBLOCK_THREADS - - For convenience, that the value of 'errno' is restored across - Py_END_ALLOW_THREADS and Py_BLOCK_THREADS. - - WARNING: NEVER NEST CALLS TO Py_BEGIN_ALLOW_THREADS AND - Py_END_ALLOW_THREADS!!! - - Note that not yet all candidates have been converted to use this - mechanism! -*/ - -PyAPI_FUNC(PyThreadState *) PyEval_SaveThread(void); -PyAPI_FUNC(void) PyEval_RestoreThread(PyThreadState *); - -Py_DEPRECATED(3.9) PyAPI_FUNC(int) PyEval_ThreadsInitialized(void); -Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void); -/* PyEval_AcquireLock() and PyEval_ReleaseLock() are part of stable ABI. - * They will be removed from this header file in the future version. - * But they will be remained in ABI until Python 4.0. - */ -Py_DEPRECATED(3.2) PyAPI_FUNC(void) PyEval_AcquireLock(void); -Py_DEPRECATED(3.2) PyAPI_FUNC(void) PyEval_ReleaseLock(void); -PyAPI_FUNC(void) PyEval_AcquireThread(PyThreadState *tstate); -PyAPI_FUNC(void) PyEval_ReleaseThread(PyThreadState *tstate); - -#define Py_BEGIN_ALLOW_THREADS { \ - PyThreadState *_save; \ - _save = PyEval_SaveThread(); -#define Py_BLOCK_THREADS PyEval_RestoreThread(_save); -#define Py_UNBLOCK_THREADS _save = PyEval_SaveThread(); -#define Py_END_ALLOW_THREADS PyEval_RestoreThread(_save); \ - } - -/* Masks and values used by FORMAT_VALUE opcode. */ -#define FVC_MASK 0x3 -#define FVC_NONE 0x0 -#define FVC_STR 0x1 -#define FVC_REPR 0x2 -#define FVC_ASCII 0x3 -#define FVS_MASK 0x4 -#define FVS_HAVE_SPEC 0x4 - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_CEVAL_H -# include "cpython/ceval.h" -# undef Py_CPYTHON_CEVAL_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CEVAL_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/codecs.h b/_Pre_Builds/_Python311_cpp/include/codecs.h deleted file mode 100644 index 37ecfb4..0000000 --- a/_Pre_Builds/_Python311_cpp/include/codecs.h +++ /dev/null @@ -1,248 +0,0 @@ -#ifndef Py_CODECREGISTRY_H -#define Py_CODECREGISTRY_H -#ifdef __cplusplus -extern "C" { -#endif - -/* ------------------------------------------------------------------------ - - Python Codec Registry and support functions - - -Written by Marc-Andre Lemburg (mal@lemburg.com). - -Copyright (c) Corporation for National Research Initiatives. - - ------------------------------------------------------------------------ */ - -/* Register a new codec search function. - - As side effect, this tries to load the encodings package, if not - yet done, to make sure that it is always first in the list of - search functions. - - The search_function's refcount is incremented by this function. */ - -PyAPI_FUNC(int) PyCodec_Register( - PyObject *search_function - ); - -/* Unregister a codec search function and clear the registry's cache. - If the search function is not registered, do nothing. - Return 0 on success. Raise an exception and return -1 on error. */ - -PyAPI_FUNC(int) PyCodec_Unregister( - PyObject *search_function - ); - -/* Codec registry lookup API. - - Looks up the given encoding and returns a CodecInfo object with - function attributes which implement the different aspects of - processing the encoding. - - The encoding string is looked up converted to all lower-case - characters. This makes encodings looked up through this mechanism - effectively case-insensitive. - - If no codec is found, a KeyError is set and NULL returned. - - As side effect, this tries to load the encodings package, if not - yet done. This is part of the lazy load strategy for the encodings - package. - - */ - -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PyCodec_Lookup( - const char *encoding - ); - -PyAPI_FUNC(int) _PyCodec_Forget( - const char *encoding - ); -#endif - -/* Codec registry encoding check API. - - Returns 1/0 depending on whether there is a registered codec for - the given encoding. - -*/ - -PyAPI_FUNC(int) PyCodec_KnownEncoding( - const char *encoding - ); - -/* Generic codec based encoding API. - - object is passed through the encoder function found for the given - encoding using the error handling method defined by errors. errors - may be NULL to use the default method defined for the codec. - - Raises a LookupError in case no encoder can be found. - - */ - -PyAPI_FUNC(PyObject *) PyCodec_Encode( - PyObject *object, - const char *encoding, - const char *errors - ); - -/* Generic codec based decoding API. - - object is passed through the decoder function found for the given - encoding using the error handling method defined by errors. errors - may be NULL to use the default method defined for the codec. - - Raises a LookupError in case no encoder can be found. - - */ - -PyAPI_FUNC(PyObject *) PyCodec_Decode( - PyObject *object, - const char *encoding, - const char *errors - ); - -#ifndef Py_LIMITED_API -/* Text codec specific encoding and decoding API. - - Checks the encoding against a list of codecs which do not - implement a str<->bytes encoding before attempting the - operation. - - Please note that these APIs are internal and should not - be used in Python C extensions. - - XXX (ncoghlan): should we make these, or something like them, public - in Python 3.5+? - - */ -PyAPI_FUNC(PyObject *) _PyCodec_LookupTextEncoding( - const char *encoding, - const char *alternate_command - ); - -PyAPI_FUNC(PyObject *) _PyCodec_EncodeText( - PyObject *object, - const char *encoding, - const char *errors - ); - -PyAPI_FUNC(PyObject *) _PyCodec_DecodeText( - PyObject *object, - const char *encoding, - const char *errors - ); - -/* These two aren't actually text encoding specific, but _io.TextIOWrapper - * is the only current API consumer. - */ -PyAPI_FUNC(PyObject *) _PyCodecInfo_GetIncrementalDecoder( - PyObject *codec_info, - const char *errors - ); - -PyAPI_FUNC(PyObject *) _PyCodecInfo_GetIncrementalEncoder( - PyObject *codec_info, - const char *errors - ); -#endif - - - -/* --- Codec Lookup APIs -------------------------------------------------- - - All APIs return a codec object with incremented refcount and are - based on _PyCodec_Lookup(). The same comments w/r to the encoding - name also apply to these APIs. - -*/ - -/* Get an encoder function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_Encoder( - const char *encoding - ); - -/* Get a decoder function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_Decoder( - const char *encoding - ); - -/* Get an IncrementalEncoder object for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_IncrementalEncoder( - const char *encoding, - const char *errors - ); - -/* Get an IncrementalDecoder object function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_IncrementalDecoder( - const char *encoding, - const char *errors - ); - -/* Get a StreamReader factory function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_StreamReader( - const char *encoding, - PyObject *stream, - const char *errors - ); - -/* Get a StreamWriter factory function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_StreamWriter( - const char *encoding, - PyObject *stream, - const char *errors - ); - -/* Unicode encoding error handling callback registry API */ - -/* Register the error handling callback function error under the given - name. This function will be called by the codec when it encounters - unencodable characters/undecodable bytes and doesn't know the - callback name, when name is specified as the error parameter - in the call to the encode/decode function. - Return 0 on success, -1 on error */ -PyAPI_FUNC(int) PyCodec_RegisterError(const char *name, PyObject *error); - -/* Lookup the error handling callback function registered under the given - name. As a special case NULL can be passed, in which case - the error handling callback for "strict" will be returned. */ -PyAPI_FUNC(PyObject *) PyCodec_LookupError(const char *name); - -/* raise exc as an exception */ -PyAPI_FUNC(PyObject *) PyCodec_StrictErrors(PyObject *exc); - -/* ignore the unicode error, skipping the faulty input */ -PyAPI_FUNC(PyObject *) PyCodec_IgnoreErrors(PyObject *exc); - -/* replace the unicode encode error with ? or U+FFFD */ -PyAPI_FUNC(PyObject *) PyCodec_ReplaceErrors(PyObject *exc); - -/* replace the unicode encode error with XML character references */ -PyAPI_FUNC(PyObject *) PyCodec_XMLCharRefReplaceErrors(PyObject *exc); - -/* replace the unicode encode error with backslash escapes (\x, \u and \U) */ -PyAPI_FUNC(PyObject *) PyCodec_BackslashReplaceErrors(PyObject *exc); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* replace the unicode encode error with backslash escapes (\N, \x, \u and \U) */ -PyAPI_FUNC(PyObject *) PyCodec_NameReplaceErrors(PyObject *exc); -#endif - -#ifndef Py_LIMITED_API -PyAPI_DATA(const char *) Py_hexdigits; -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CODECREGISTRY_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/compile.h b/_Pre_Builds/_Python311_cpp/include/compile.h deleted file mode 100644 index 3c5acd7..0000000 --- a/_Pre_Builds/_Python311_cpp/include/compile.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef Py_COMPILE_H -#define Py_COMPILE_H -#ifdef __cplusplus -extern "C" { -#endif - -/* These definitions must match corresponding definitions in graminit.h. */ -#define Py_single_input 256 -#define Py_file_input 257 -#define Py_eval_input 258 -#define Py_func_type_input 345 - -/* This doesn't need to match anything */ -#define Py_fstring_input 800 - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_COMPILE_H -# include "cpython/compile.h" -# undef Py_CPYTHON_COMPILE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_COMPILE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/complexobject.h b/_Pre_Builds/_Python311_cpp/include/complexobject.h deleted file mode 100644 index c7764e4..0000000 --- a/_Pre_Builds/_Python311_cpp/include/complexobject.h +++ /dev/null @@ -1,30 +0,0 @@ -/* Complex number structure */ - -#ifndef Py_COMPLEXOBJECT_H -#define Py_COMPLEXOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Complex object interface */ - -PyAPI_DATA(PyTypeObject) PyComplex_Type; - -#define PyComplex_Check(op) PyObject_TypeCheck(op, &PyComplex_Type) -#define PyComplex_CheckExact(op) Py_IS_TYPE(op, &PyComplex_Type) - -PyAPI_FUNC(PyObject *) PyComplex_FromDoubles(double real, double imag); - -PyAPI_FUNC(double) PyComplex_RealAsDouble(PyObject *op); -PyAPI_FUNC(double) PyComplex_ImagAsDouble(PyObject *op); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_COMPLEXOBJECT_H -# include "cpython/complexobject.h" -# undef Py_CPYTHON_COMPLEXOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_COMPLEXOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/abstract.h b/_Pre_Builds/_Python311_cpp/include/cpython/abstract.h deleted file mode 100644 index d276669..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/abstract.h +++ /dev/null @@ -1,219 +0,0 @@ -#ifndef Py_CPYTHON_ABSTRACTOBJECT_H -# error "this header file must not be included directly" -#endif - -/* === Object Protocol ================================================== */ - -#ifdef PY_SSIZE_T_CLEAN -# define _PyObject_CallMethodId _PyObject_CallMethodId_SizeT -#endif - -/* Convert keyword arguments from the FASTCALL (stack: C array, kwnames: tuple) - format to a Python dictionary ("kwargs" dict). - - The type of kwnames keys is not checked. The final function getting - arguments is responsible to check if all keys are strings, for example using - PyArg_ParseTupleAndKeywords() or PyArg_ValidateKeywordArguments(). - - Duplicate keys are merged using the last value. If duplicate keys must raise - an exception, the caller is responsible to implement an explicit keys on - kwnames. */ -PyAPI_FUNC(PyObject *) _PyStack_AsDict( - PyObject *const *values, - PyObject *kwnames); - -/* Suggested size (number of positional arguments) for arrays of PyObject* - allocated on a C stack to avoid allocating memory on the heap memory. Such - array is used to pass positional arguments to call functions of the - PyObject_Vectorcall() family. - - The size is chosen to not abuse the C stack and so limit the risk of stack - overflow. The size is also chosen to allow using the small stack for most - function calls of the Python standard library. On 64-bit CPU, it allocates - 40 bytes on the stack. */ -#define _PY_FASTCALL_SMALL_STACK 5 - -PyAPI_FUNC(PyObject *) _Py_CheckFunctionResult( - PyThreadState *tstate, - PyObject *callable, - PyObject *result, - const char *where); - -/* === Vectorcall protocol (PEP 590) ============================= */ - -/* Call callable using tp_call. Arguments are like PyObject_Vectorcall() - or PyObject_FastCallDict() (both forms are supported), - except that nargs is plainly the number of arguments without flags. */ -PyAPI_FUNC(PyObject *) _PyObject_MakeTpCall( - PyThreadState *tstate, - PyObject *callable, - PyObject *const *args, Py_ssize_t nargs, - PyObject *keywords); - -#define PY_VECTORCALL_ARGUMENTS_OFFSET \ - (_Py_STATIC_CAST(size_t, 1) << (8 * sizeof(size_t) - 1)) - -static inline Py_ssize_t -PyVectorcall_NARGS(size_t n) -{ - return n & ~PY_VECTORCALL_ARGUMENTS_OFFSET; -} - -PyAPI_FUNC(vectorcallfunc) PyVectorcall_Function(PyObject *callable); - -PyAPI_FUNC(PyObject *) PyObject_Vectorcall( - PyObject *callable, - PyObject *const *args, - size_t nargsf, - PyObject *kwnames); - -// Backwards compatibility aliases for API that was provisional in Python 3.8 -#define _PyObject_Vectorcall PyObject_Vectorcall -#define _PyObject_VectorcallMethod PyObject_VectorcallMethod -#define _PyObject_FastCallDict PyObject_VectorcallDict -#define _PyVectorcall_Function PyVectorcall_Function -#define _PyObject_CallOneArg PyObject_CallOneArg -#define _PyObject_CallMethodNoArgs PyObject_CallMethodNoArgs -#define _PyObject_CallMethodOneArg PyObject_CallMethodOneArg - -/* Same as PyObject_Vectorcall except that keyword arguments are passed as - dict, which may be NULL if there are no keyword arguments. */ -PyAPI_FUNC(PyObject *) PyObject_VectorcallDict( - PyObject *callable, - PyObject *const *args, - size_t nargsf, - PyObject *kwargs); - -/* Call "callable" (which must support vectorcall) with positional arguments - "tuple" and keyword arguments "dict". "dict" may also be NULL */ -PyAPI_FUNC(PyObject *) PyVectorcall_Call(PyObject *callable, PyObject *tuple, PyObject *dict); - -// Same as PyObject_Vectorcall(), except without keyword arguments -PyAPI_FUNC(PyObject *) _PyObject_FastCall( - PyObject *func, - PyObject *const *args, - Py_ssize_t nargs); - -PyAPI_FUNC(PyObject *) PyObject_CallOneArg(PyObject *func, PyObject *arg); - -PyAPI_FUNC(PyObject *) PyObject_VectorcallMethod( - PyObject *name, PyObject *const *args, - size_t nargsf, PyObject *kwnames); - -static inline PyObject * -PyObject_CallMethodNoArgs(PyObject *self, PyObject *name) -{ - size_t nargsf = 1 | PY_VECTORCALL_ARGUMENTS_OFFSET; - return PyObject_VectorcallMethod(name, &self, nargsf, _Py_NULL); -} - -static inline PyObject * -PyObject_CallMethodOneArg(PyObject *self, PyObject *name, PyObject *arg) -{ - PyObject *args[2] = {self, arg}; - size_t nargsf = 2 | PY_VECTORCALL_ARGUMENTS_OFFSET; - assert(arg != NULL); - return PyObject_VectorcallMethod(name, args, nargsf, _Py_NULL); -} - -PyAPI_FUNC(PyObject *) _PyObject_CallMethod(PyObject *obj, - PyObject *name, - const char *format, ...); - -/* Like PyObject_CallMethod(), but expect a _Py_Identifier* - as the method name. */ -PyAPI_FUNC(PyObject *) _PyObject_CallMethodId(PyObject *obj, - _Py_Identifier *name, - const char *format, ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallMethodId_SizeT(PyObject *obj, - _Py_Identifier *name, - const char *format, - ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallMethodIdObjArgs( - PyObject *obj, - _Py_Identifier *name, - ...); - -static inline PyObject * -_PyObject_VectorcallMethodId( - _Py_Identifier *name, PyObject *const *args, - size_t nargsf, PyObject *kwnames) -{ - PyObject *oname = _PyUnicode_FromId(name); /* borrowed */ - if (!oname) { - return _Py_NULL; - } - return PyObject_VectorcallMethod(oname, args, nargsf, kwnames); -} - -static inline PyObject * -_PyObject_CallMethodIdNoArgs(PyObject *self, _Py_Identifier *name) -{ - size_t nargsf = 1 | PY_VECTORCALL_ARGUMENTS_OFFSET; - return _PyObject_VectorcallMethodId(name, &self, nargsf, _Py_NULL); -} - -static inline PyObject * -_PyObject_CallMethodIdOneArg(PyObject *self, _Py_Identifier *name, PyObject *arg) -{ - PyObject *args[2] = {self, arg}; - size_t nargsf = 2 | PY_VECTORCALL_ARGUMENTS_OFFSET; - assert(arg != NULL); - return _PyObject_VectorcallMethodId(name, args, nargsf, _Py_NULL); -} - -PyAPI_FUNC(int) _PyObject_HasLen(PyObject *o); - -/* Guess the size of object 'o' using len(o) or o.__length_hint__(). - If neither of those return a non-negative value, then return the default - value. If one of the calls fails, this function returns -1. */ -PyAPI_FUNC(Py_ssize_t) PyObject_LengthHint(PyObject *o, Py_ssize_t); - -/* === Sequence protocol ================================================ */ - -/* Assume tp_as_sequence and sq_item exist and that 'i' does not - need to be corrected for a negative index. */ -#define PySequence_ITEM(o, i)\ - ( Py_TYPE(o)->tp_as_sequence->sq_item(o, i) ) - -#define PY_ITERSEARCH_COUNT 1 -#define PY_ITERSEARCH_INDEX 2 -#define PY_ITERSEARCH_CONTAINS 3 - -/* Iterate over seq. - - Result depends on the operation: - - PY_ITERSEARCH_COUNT: return # of times obj appears in seq; -1 if - error. - PY_ITERSEARCH_INDEX: return 0-based index of first occurrence of - obj in seq; set ValueError and return -1 if none found; - also return -1 on error. - PY_ITERSEARCH_CONTAINS: return 1 if obj in seq, else 0; -1 on - error. */ -PyAPI_FUNC(Py_ssize_t) _PySequence_IterSearch(PyObject *seq, - PyObject *obj, int operation); - -/* === Mapping protocol ================================================= */ - -PyAPI_FUNC(int) _PyObject_RealIsInstance(PyObject *inst, PyObject *cls); - -PyAPI_FUNC(int) _PyObject_RealIsSubclass(PyObject *derived, PyObject *cls); - -PyAPI_FUNC(char *const *) _PySequence_BytesToCharpArray(PyObject* self); - -PyAPI_FUNC(void) _Py_FreeCharPArray(char *const array[]); - -/* For internal use by buffer API functions */ -PyAPI_FUNC(void) _Py_add_one_to_index_F(int nd, Py_ssize_t *index, - const Py_ssize_t *shape); -PyAPI_FUNC(void) _Py_add_one_to_index_C(int nd, Py_ssize_t *index, - const Py_ssize_t *shape); - -/* Convert Python int to Py_ssize_t. Do nothing if the argument is None. */ -PyAPI_FUNC(int) _Py_convert_optional_to_ssize_t(PyObject *, void *); - -/* Same as PyNumber_Index but can return an instance of a subclass of int. */ -PyAPI_FUNC(PyObject *) _PyNumber_Index(PyObject *o); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/bytearrayobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/bytearrayobject.h deleted file mode 100644 index 5114169..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/bytearrayobject.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef Py_CPYTHON_BYTEARRAYOBJECT_H -# error "this header file must not be included directly" -#endif - -/* Object layout */ -typedef struct { - PyObject_VAR_HEAD - Py_ssize_t ob_alloc; /* How many bytes allocated in ob_bytes */ - char *ob_bytes; /* Physical backing buffer */ - char *ob_start; /* Logical start inside ob_bytes */ - Py_ssize_t ob_exports; /* How many buffer exports */ -} PyByteArrayObject; - -PyAPI_DATA(char) _PyByteArray_empty_string[]; - -/* Macros and static inline functions, trading safety for speed */ -#define _PyByteArray_CAST(op) \ - (assert(PyByteArray_Check(op)), _Py_CAST(PyByteArrayObject*, op)) - -static inline char* PyByteArray_AS_STRING(PyObject *op) -{ - PyByteArrayObject *self = _PyByteArray_CAST(op); - if (Py_SIZE(self)) { - return self->ob_start; - } - return _PyByteArray_empty_string; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyByteArray_AS_STRING(self) PyByteArray_AS_STRING(_PyObject_CAST(self)) -#endif - -static inline Py_ssize_t PyByteArray_GET_SIZE(PyObject *op) { - PyByteArrayObject *self = _PyByteArray_CAST(op); - return Py_SIZE(self); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyByteArray_GET_SIZE(self) PyByteArray_GET_SIZE(_PyObject_CAST(self)) -#endif diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/bytesobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/bytesobject.h deleted file mode 100644 index 5334366..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/bytesobject.h +++ /dev/null @@ -1,133 +0,0 @@ -#ifndef Py_CPYTHON_BYTESOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - PyObject_VAR_HEAD - Py_DEPRECATED(3.11) Py_hash_t ob_shash; - char ob_sval[1]; - - /* Invariants: - * ob_sval contains space for 'ob_size+1' elements. - * ob_sval[ob_size] == 0. - * ob_shash is the hash of the byte string or -1 if not computed yet. - */ -} PyBytesObject; - -PyAPI_FUNC(int) _PyBytes_Resize(PyObject **, Py_ssize_t); -PyAPI_FUNC(PyObject*) _PyBytes_FormatEx( - const char *format, - Py_ssize_t format_len, - PyObject *args, - int use_bytearray); -PyAPI_FUNC(PyObject*) _PyBytes_FromHex( - PyObject *string, - int use_bytearray); - -/* Helper for PyBytes_DecodeEscape that detects invalid escape chars. */ -PyAPI_FUNC(PyObject *) _PyBytes_DecodeEscape(const char *, Py_ssize_t, - const char *, const char **); - -/* Macros and static inline functions, trading safety for speed */ -#define _PyBytes_CAST(op) \ - (assert(PyBytes_Check(op)), _Py_CAST(PyBytesObject*, op)) - -static inline char* PyBytes_AS_STRING(PyObject *op) -{ - return _PyBytes_CAST(op)->ob_sval; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyBytes_AS_STRING(op) PyBytes_AS_STRING(_PyObject_CAST(op)) -#endif - -static inline Py_ssize_t PyBytes_GET_SIZE(PyObject *op) { - PyBytesObject *self = _PyBytes_CAST(op); - return Py_SIZE(self); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyBytes_GET_SIZE(self) PyBytes_GET_SIZE(_PyObject_CAST(self)) -#endif - -/* _PyBytes_Join(sep, x) is like sep.join(x). sep must be PyBytesObject*, - x must be an iterable object. */ -PyAPI_FUNC(PyObject *) _PyBytes_Join(PyObject *sep, PyObject *x); - - -/* The _PyBytesWriter structure is big: it contains an embedded "stack buffer". - A _PyBytesWriter variable must be declared at the end of variables in a - function to optimize the memory allocation on the stack. */ -typedef struct { - /* bytes, bytearray or NULL (when the small buffer is used) */ - PyObject *buffer; - - /* Number of allocated size. */ - Py_ssize_t allocated; - - /* Minimum number of allocated bytes, - incremented by _PyBytesWriter_Prepare() */ - Py_ssize_t min_size; - - /* If non-zero, use a bytearray instead of a bytes object for buffer. */ - int use_bytearray; - - /* If non-zero, overallocate the buffer (default: 0). - This flag must be zero if use_bytearray is non-zero. */ - int overallocate; - - /* Stack buffer */ - int use_small_buffer; - char small_buffer[512]; -} _PyBytesWriter; - -/* Initialize a bytes writer - - By default, the overallocation is disabled. Set the overallocate attribute - to control the allocation of the buffer. */ -PyAPI_FUNC(void) _PyBytesWriter_Init(_PyBytesWriter *writer); - -/* Get the buffer content and reset the writer. - Return a bytes object, or a bytearray object if use_bytearray is non-zero. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(PyObject *) _PyBytesWriter_Finish(_PyBytesWriter *writer, - void *str); - -/* Deallocate memory of a writer (clear its internal buffer). */ -PyAPI_FUNC(void) _PyBytesWriter_Dealloc(_PyBytesWriter *writer); - -/* Allocate the buffer to write size bytes. - Return the pointer to the beginning of buffer data. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(void*) _PyBytesWriter_Alloc(_PyBytesWriter *writer, - Py_ssize_t size); - -/* Ensure that the buffer is large enough to write *size* bytes. - Add size to the writer minimum size (min_size attribute). - - str is the current pointer inside the buffer. - Return the updated current pointer inside the buffer. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(void*) _PyBytesWriter_Prepare(_PyBytesWriter *writer, - void *str, - Py_ssize_t size); - -/* Resize the buffer to make it larger. - The new buffer may be larger than size bytes because of overallocation. - Return the updated current pointer inside the buffer. - Raise an exception and return NULL on error. - - Note: size must be greater than the number of allocated bytes in the writer. - - This function doesn't use the writer minimum size (min_size attribute). - - See also _PyBytesWriter_Prepare(). - */ -PyAPI_FUNC(void*) _PyBytesWriter_Resize(_PyBytesWriter *writer, - void *str, - Py_ssize_t size); - -/* Write bytes. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(void*) _PyBytesWriter_WriteBytes(_PyBytesWriter *writer, - void *str, - const void *bytes, - Py_ssize_t size); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/cellobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/cellobject.h deleted file mode 100644 index e07f9d1..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/cellobject.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Cell object interface */ - -#ifndef Py_LIMITED_API -#ifndef Py_CELLOBJECT_H -#define Py_CELLOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct { - PyObject_HEAD - /* Content of the cell or NULL when empty */ - PyObject *ob_ref; -} PyCellObject; - -PyAPI_DATA(PyTypeObject) PyCell_Type; - -#define PyCell_Check(op) Py_IS_TYPE(op, &PyCell_Type) - -PyAPI_FUNC(PyObject *) PyCell_New(PyObject *); -PyAPI_FUNC(PyObject *) PyCell_Get(PyObject *); -PyAPI_FUNC(int) PyCell_Set(PyObject *, PyObject *); - -#define PyCell_GET(op) (((PyCellObject *)(op))->ob_ref) -#define PyCell_SET(op, v) _Py_RVALUE(((PyCellObject *)(op))->ob_ref = (v)) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_TUPLEOBJECT_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/ceval.h b/_Pre_Builds/_Python311_cpp/include/cpython/ceval.h deleted file mode 100644 index 9d4eeaf..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/ceval.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef Py_CPYTHON_CEVAL_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(void) PyEval_SetProfile(Py_tracefunc, PyObject *); -PyAPI_DATA(int) _PyEval_SetProfile(PyThreadState *tstate, Py_tracefunc func, PyObject *arg); -PyAPI_FUNC(void) PyEval_SetTrace(Py_tracefunc, PyObject *); -PyAPI_FUNC(int) _PyEval_SetTrace(PyThreadState *tstate, Py_tracefunc func, PyObject *arg); - -/* Helper to look up a builtin object */ -PyAPI_FUNC(PyObject *) _PyEval_GetBuiltin(PyObject *); -PyAPI_FUNC(PyObject *) _PyEval_GetBuiltinId(_Py_Identifier *); -/* Look at the current frame's (if any) code's co_flags, and turn on - the corresponding compiler flags in cf->cf_flags. Return 1 if any - flag was set, else return 0. */ -PyAPI_FUNC(int) PyEval_MergeCompilerFlags(PyCompilerFlags *cf); - -PyAPI_FUNC(PyObject *) _PyEval_EvalFrameDefault(PyThreadState *tstate, struct _PyInterpreterFrame *f, int exc); - -PyAPI_FUNC(void) _PyEval_SetSwitchInterval(unsigned long microseconds); -PyAPI_FUNC(unsigned long) _PyEval_GetSwitchInterval(void); - -PyAPI_FUNC(Py_ssize_t) _PyEval_RequestCodeExtraIndex(freefunc); - -PyAPI_FUNC(int) _PyEval_SliceIndex(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) _PyEval_SliceIndexNotNone(PyObject *, Py_ssize_t *); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/classobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/classobject.h deleted file mode 100644 index 80df884..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/classobject.h +++ /dev/null @@ -1,57 +0,0 @@ -/* Former class object interface -- now only bound methods are here */ - -/* Revealing some structures (not for general use) */ - -#ifndef Py_LIMITED_API -#ifndef Py_CLASSOBJECT_H -#define Py_CLASSOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct { - PyObject_HEAD - PyObject *im_func; /* The callable object implementing the method */ - PyObject *im_self; /* The instance it is bound to */ - PyObject *im_weakreflist; /* List of weak references */ - vectorcallfunc vectorcall; -} PyMethodObject; - -PyAPI_DATA(PyTypeObject) PyMethod_Type; - -#define PyMethod_Check(op) Py_IS_TYPE(op, &PyMethod_Type) - -PyAPI_FUNC(PyObject *) PyMethod_New(PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) PyMethod_Function(PyObject *); -PyAPI_FUNC(PyObject *) PyMethod_Self(PyObject *); - -/* Macros for direct access to these values. Type checks are *not* - done, so use with care. */ -#define PyMethod_GET_FUNCTION(meth) \ - (((PyMethodObject *)meth) -> im_func) -#define PyMethod_GET_SELF(meth) \ - (((PyMethodObject *)meth) -> im_self) - -typedef struct { - PyObject_HEAD - PyObject *func; -} PyInstanceMethodObject; - -PyAPI_DATA(PyTypeObject) PyInstanceMethod_Type; - -#define PyInstanceMethod_Check(op) Py_IS_TYPE(op, &PyInstanceMethod_Type) - -PyAPI_FUNC(PyObject *) PyInstanceMethod_New(PyObject *); -PyAPI_FUNC(PyObject *) PyInstanceMethod_Function(PyObject *); - -/* Macros for direct access to these values. Type checks are *not* - done, so use with care. */ -#define PyInstanceMethod_GET_FUNCTION(meth) \ - (((PyInstanceMethodObject *)meth) -> func) - -#ifdef __cplusplus -} -#endif -#endif // !Py_CLASSOBJECT_H -#endif // !Py_LIMITED_API diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/code.h b/_Pre_Builds/_Python311_cpp/include/cpython/code.h deleted file mode 100644 index 7006060..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/code.h +++ /dev/null @@ -1,236 +0,0 @@ -/* Definitions for bytecode */ - -#ifndef Py_LIMITED_API -#ifndef Py_CODE_H -#define Py_CODE_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Each instruction in a code object is a fixed-width value, - * currently 2 bytes: 1-byte opcode + 1-byte oparg. The EXTENDED_ARG - * opcode allows for larger values but the current limit is 3 uses - * of EXTENDED_ARG (see Python/compile.c), for a maximum - * 32-bit value. This aligns with the note in Python/compile.c - * (compiler_addop_i_line) indicating that the max oparg value is - * 2**32 - 1, rather than INT_MAX. - */ - -typedef uint16_t _Py_CODEUNIT; - -#ifdef WORDS_BIGENDIAN -# define _Py_OPCODE(word) ((word) >> 8) -# define _Py_OPARG(word) ((word) & 255) -# define _Py_MAKECODEUNIT(opcode, oparg) (((opcode)<<8)|(oparg)) -#else -# define _Py_OPCODE(word) ((word) & 255) -# define _Py_OPARG(word) ((word) >> 8) -# define _Py_MAKECODEUNIT(opcode, oparg) ((opcode)|((oparg)<<8)) -#endif - -// Use "unsigned char" instead of "uint8_t" here to avoid illegal aliasing: -#define _Py_SET_OPCODE(word, opcode) (((unsigned char *)&(word))[0] = (opcode)) - -// To avoid repeating ourselves in deepfreeze.py, all PyCodeObject members are -// defined in this macro: -#define _PyCode_DEF(SIZE) { \ - PyObject_VAR_HEAD \ - \ - /* Note only the following fields are used in hash and/or comparisons \ - * \ - * - co_name \ - * - co_argcount \ - * - co_posonlyargcount \ - * - co_kwonlyargcount \ - * - co_nlocals \ - * - co_stacksize \ - * - co_flags \ - * - co_firstlineno \ - * - co_consts \ - * - co_names \ - * - co_localsplusnames \ - * This is done to preserve the name and line number for tracebacks \ - * and debuggers; otherwise, constant de-duplication would collapse \ - * identical functions/lambdas defined on different lines. \ - */ \ - \ - /* These fields are set with provided values on new code objects. */ \ - \ - /* The hottest fields (in the eval loop) are grouped here at the top. */ \ - PyObject *co_consts; /* list (constants used) */ \ - PyObject *co_names; /* list of strings (names used) */ \ - PyObject *co_exceptiontable; /* Byte string encoding exception handling \ - table */ \ - int co_flags; /* CO_..., see below */ \ - short co_warmup; /* Warmup counter for quickening */ \ - short _co_linearray_entry_size; /* Size of each entry in _co_linearray */ \ - \ - /* The rest are not so impactful on performance. */ \ - int co_argcount; /* #arguments, except *args */ \ - int co_posonlyargcount; /* #positional only arguments */ \ - int co_kwonlyargcount; /* #keyword only arguments */ \ - int co_stacksize; /* #entries needed for evaluation stack */ \ - int co_firstlineno; /* first source line number */ \ - \ - /* redundant values (derived from co_localsplusnames and \ - co_localspluskinds) */ \ - int co_nlocalsplus; /* number of local + cell + free variables \ - */ \ - int co_nlocals; /* number of local variables */ \ - int co_nplaincellvars; /* number of non-arg cell variables */ \ - int co_ncellvars; /* total number of cell variables */ \ - int co_nfreevars; /* number of free variables */ \ - \ - PyObject *co_localsplusnames; /* tuple mapping offsets to names */ \ - PyObject *co_localspluskinds; /* Bytes mapping to local kinds (one byte \ - per variable) */ \ - PyObject *co_filename; /* unicode (where it was loaded from) */ \ - PyObject *co_name; /* unicode (name, for reference) */ \ - PyObject *co_qualname; /* unicode (qualname, for reference) */ \ - PyObject *co_linetable; /* bytes object that holds location info */ \ - PyObject *co_weakreflist; /* to support weakrefs to code objects */ \ - PyObject *_co_code; /* cached co_code object/attribute */ \ - char *_co_linearray; /* array of line offsets */ \ - int _co_firsttraceable; /* index of first traceable instruction */ \ - /* Scratch space for extra data relating to the code object. \ - Type is a void* to keep the format private in codeobject.c to force \ - people to go through the proper APIs. */ \ - void *co_extra; \ - char co_code_adaptive[(SIZE)]; \ -} - -/* Bytecode object */ -struct PyCodeObject _PyCode_DEF(1); - -/* Masks for co_flags above */ -#define CO_OPTIMIZED 0x0001 -#define CO_NEWLOCALS 0x0002 -#define CO_VARARGS 0x0004 -#define CO_VARKEYWORDS 0x0008 -#define CO_NESTED 0x0010 -#define CO_GENERATOR 0x0020 - -/* The CO_COROUTINE flag is set for coroutine functions (defined with - ``async def`` keywords) */ -#define CO_COROUTINE 0x0080 -#define CO_ITERABLE_COROUTINE 0x0100 -#define CO_ASYNC_GENERATOR 0x0200 - -/* bpo-39562: These constant values are changed in Python 3.9 - to prevent collision with compiler flags. CO_FUTURE_ and PyCF_ - constants must be kept unique. PyCF_ constants can use bits from - 0x0100 to 0x10000. CO_FUTURE_ constants use bits starting at 0x20000. */ -#define CO_FUTURE_DIVISION 0x20000 -#define CO_FUTURE_ABSOLUTE_IMPORT 0x40000 /* do absolute imports by default */ -#define CO_FUTURE_WITH_STATEMENT 0x80000 -#define CO_FUTURE_PRINT_FUNCTION 0x100000 -#define CO_FUTURE_UNICODE_LITERALS 0x200000 - -#define CO_FUTURE_BARRY_AS_BDFL 0x400000 -#define CO_FUTURE_GENERATOR_STOP 0x800000 -#define CO_FUTURE_ANNOTATIONS 0x1000000 - -/* This should be defined if a future statement modifies the syntax. - For example, when a keyword is added. -*/ -#define PY_PARSER_REQUIRES_FUTURE_KEYWORD - -#define CO_MAXBLOCKS 20 /* Max static block nesting within a function */ - -PyAPI_DATA(PyTypeObject) PyCode_Type; - -#define PyCode_Check(op) Py_IS_TYPE(op, &PyCode_Type) -#define PyCode_GetNumFree(op) ((op)->co_nfreevars) -#define _PyCode_CODE(CO) ((_Py_CODEUNIT *)(CO)->co_code_adaptive) -#define _PyCode_NBYTES(CO) (Py_SIZE(CO) * (Py_ssize_t)sizeof(_Py_CODEUNIT)) - -/* Public interface */ -PyAPI_FUNC(PyCodeObject *) PyCode_New( - int, int, int, int, int, PyObject *, PyObject *, - PyObject *, PyObject *, PyObject *, PyObject *, - PyObject *, PyObject *, PyObject *, int, PyObject *, - PyObject *); - -PyAPI_FUNC(PyCodeObject *) PyCode_NewWithPosOnlyArgs( - int, int, int, int, int, int, PyObject *, PyObject *, - PyObject *, PyObject *, PyObject *, PyObject *, - PyObject *, PyObject *, PyObject *, int, PyObject *, - PyObject *); - /* same as struct above */ - -/* Creates a new empty code object with the specified source location. */ -PyAPI_FUNC(PyCodeObject *) -PyCode_NewEmpty(const char *filename, const char *funcname, int firstlineno); - -/* Return the line number associated with the specified bytecode index - in this code object. If you just need the line number of a frame, - use PyFrame_GetLineNumber() instead. */ -PyAPI_FUNC(int) PyCode_Addr2Line(PyCodeObject *, int); - -PyAPI_FUNC(int) PyCode_Addr2Location(PyCodeObject *, int, int *, int *, int *, int *); - -/* for internal use only */ -struct _opaque { - int computed_line; - const uint8_t *lo_next; - const uint8_t *limit; -}; - -typedef struct _line_offsets { - int ar_start; - int ar_end; - int ar_line; - struct _opaque opaque; -} PyCodeAddressRange; - -/* Update *bounds to describe the first and one-past-the-last instructions in the - same line as lasti. Return the number of that line. -*/ -PyAPI_FUNC(int) _PyCode_CheckLineNumber(int lasti, PyCodeAddressRange *bounds); - -/* Create a comparable key used to compare constants taking in account the - * object type. It is used to make sure types are not coerced (e.g., float and - * complex) _and_ to distinguish 0.0 from -0.0 e.g. on IEEE platforms - * - * Return (type(obj), obj, ...): a tuple with variable size (at least 2 items) - * depending on the type and the value. The type is the first item to not - * compare bytes and str which can raise a BytesWarning exception. */ -PyAPI_FUNC(PyObject*) _PyCode_ConstantKey(PyObject *obj); - -PyAPI_FUNC(PyObject*) PyCode_Optimize(PyObject *code, PyObject* consts, - PyObject *names, PyObject *lnotab); - - -PyAPI_FUNC(int) _PyCode_GetExtra(PyObject *code, Py_ssize_t index, - void **extra); -PyAPI_FUNC(int) _PyCode_SetExtra(PyObject *code, Py_ssize_t index, - void *extra); - -/* Equivalent to getattr(code, 'co_code') in Python. - Returns a strong reference to a bytes object. */ -PyAPI_FUNC(PyObject *) PyCode_GetCode(PyCodeObject *code); -/* Equivalent to getattr(code, 'co_varnames') in Python. */ -PyAPI_FUNC(PyObject *) PyCode_GetVarnames(PyCodeObject *code); -/* Equivalent to getattr(code, 'co_cellvars') in Python. */ -PyAPI_FUNC(PyObject *) PyCode_GetCellvars(PyCodeObject *code); -/* Equivalent to getattr(code, 'co_freevars') in Python. */ -PyAPI_FUNC(PyObject *) PyCode_GetFreevars(PyCodeObject *code); - -typedef enum _PyCodeLocationInfoKind { - /* short forms are 0 to 9 */ - PY_CODE_LOCATION_INFO_SHORT0 = 0, - /* one lineforms are 10 to 12 */ - PY_CODE_LOCATION_INFO_ONE_LINE0 = 10, - PY_CODE_LOCATION_INFO_ONE_LINE1 = 11, - PY_CODE_LOCATION_INFO_ONE_LINE2 = 12, - - PY_CODE_LOCATION_INFO_NO_COLUMNS = 13, - PY_CODE_LOCATION_INFO_LONG = 14, - PY_CODE_LOCATION_INFO_NONE = 15 -} _PyCodeLocationInfoKind; - -#ifdef __cplusplus -} -#endif -#endif // !Py_CODE_H -#endif // !Py_LIMITED_API diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/compile.h b/_Pre_Builds/_Python311_cpp/include/cpython/compile.h deleted file mode 100644 index 518a376..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/compile.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Py_CPYTHON_COMPILE_H -# error "this header file must not be included directly" -#endif - -/* Public interface */ -#define PyCF_MASK (CO_FUTURE_DIVISION | CO_FUTURE_ABSOLUTE_IMPORT | \ - CO_FUTURE_WITH_STATEMENT | CO_FUTURE_PRINT_FUNCTION | \ - CO_FUTURE_UNICODE_LITERALS | CO_FUTURE_BARRY_AS_BDFL | \ - CO_FUTURE_GENERATOR_STOP | CO_FUTURE_ANNOTATIONS) -#define PyCF_MASK_OBSOLETE (CO_NESTED) - -/* bpo-39562: CO_FUTURE_ and PyCF_ constants must be kept unique. - PyCF_ constants can use bits from 0x0100 to 0x10000. - CO_FUTURE_ constants use bits starting at 0x20000. */ -#define PyCF_SOURCE_IS_UTF8 0x0100 -#define PyCF_DONT_IMPLY_DEDENT 0x0200 -#define PyCF_ONLY_AST 0x0400 -#define PyCF_IGNORE_COOKIE 0x0800 -#define PyCF_TYPE_COMMENTS 0x1000 -#define PyCF_ALLOW_TOP_LEVEL_AWAIT 0x2000 -#define PyCF_ALLOW_INCOMPLETE_INPUT 0x4000 -#define PyCF_COMPILE_MASK (PyCF_ONLY_AST | PyCF_ALLOW_TOP_LEVEL_AWAIT | \ - PyCF_TYPE_COMMENTS | PyCF_DONT_IMPLY_DEDENT | \ - PyCF_ALLOW_INCOMPLETE_INPUT) - -typedef struct { - int cf_flags; /* bitmask of CO_xxx flags relevant to future */ - int cf_feature_version; /* minor Python version (PyCF_ONLY_AST) */ -} PyCompilerFlags; - -#define _PyCompilerFlags_INIT \ - (PyCompilerFlags){.cf_flags = 0, .cf_feature_version = PY_MINOR_VERSION} - -/* Future feature support */ - -typedef struct { - int ff_features; /* flags set by future statements */ - int ff_lineno; /* line number of last future statement */ -} PyFutureFeatures; - -#define FUTURE_NESTED_SCOPES "nested_scopes" -#define FUTURE_GENERATORS "generators" -#define FUTURE_DIVISION "division" -#define FUTURE_ABSOLUTE_IMPORT "absolute_import" -#define FUTURE_WITH_STATEMENT "with_statement" -#define FUTURE_PRINT_FUNCTION "print_function" -#define FUTURE_UNICODE_LITERALS "unicode_literals" -#define FUTURE_BARRY_AS_BDFL "barry_as_FLUFL" -#define FUTURE_GENERATOR_STOP "generator_stop" -#define FUTURE_ANNOTATIONS "annotations" - -#define PY_INVALID_STACK_EFFECT INT_MAX -PyAPI_FUNC(int) PyCompile_OpcodeStackEffect(int opcode, int oparg); -PyAPI_FUNC(int) PyCompile_OpcodeStackEffectWithJump(int opcode, int oparg, int jump); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/complexobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/complexobject.h deleted file mode 100644 index b7d7283..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/complexobject.h +++ /dev/null @@ -1,44 +0,0 @@ -#ifndef Py_CPYTHON_COMPLEXOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - double real; - double imag; -} Py_complex; - -/* Operations on complex numbers from complexmodule.c */ - -PyAPI_FUNC(Py_complex) _Py_c_sum(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_diff(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_neg(Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_prod(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_quot(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_pow(Py_complex, Py_complex); -PyAPI_FUNC(double) _Py_c_abs(Py_complex); - -/* Complex object interface */ - -/* -PyComplexObject represents a complex number with double-precision -real and imaginary parts. -*/ -typedef struct { - PyObject_HEAD - Py_complex cval; -} PyComplexObject; - -PyAPI_FUNC(PyObject *) PyComplex_FromCComplex(Py_complex); - -PyAPI_FUNC(Py_complex) PyComplex_AsCComplex(PyObject *op); - -#ifdef Py_BUILD_CORE -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -extern int _PyComplex_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); -#endif // Py_BUILD_CORE diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/context.h b/_Pre_Builds/_Python311_cpp/include/cpython/context.h deleted file mode 100644 index 4db079f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/context.h +++ /dev/null @@ -1,78 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_CONTEXT_H -#define Py_CONTEXT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyContext_Type; -typedef struct _pycontextobject PyContext; - -PyAPI_DATA(PyTypeObject) PyContextVar_Type; -typedef struct _pycontextvarobject PyContextVar; - -PyAPI_DATA(PyTypeObject) PyContextToken_Type; -typedef struct _pycontexttokenobject PyContextToken; - - -#define PyContext_CheckExact(o) Py_IS_TYPE(o, &PyContext_Type) -#define PyContextVar_CheckExact(o) Py_IS_TYPE(o, &PyContextVar_Type) -#define PyContextToken_CheckExact(o) Py_IS_TYPE(o, &PyContextToken_Type) - - -PyAPI_FUNC(PyObject *) PyContext_New(void); -PyAPI_FUNC(PyObject *) PyContext_Copy(PyObject *); -PyAPI_FUNC(PyObject *) PyContext_CopyCurrent(void); - -PyAPI_FUNC(int) PyContext_Enter(PyObject *); -PyAPI_FUNC(int) PyContext_Exit(PyObject *); - - -/* Create a new context variable. - - default_value can be NULL. -*/ -PyAPI_FUNC(PyObject *) PyContextVar_New( - const char *name, PyObject *default_value); - - -/* Get a value for the variable. - - Returns -1 if an error occurred during lookup. - - Returns 0 if value either was or was not found. - - If value was found, *value will point to it. - If not, it will point to: - - - default_value, if not NULL; - - the default value of "var", if not NULL; - - NULL. - - '*value' will be a new ref, if not NULL. -*/ -PyAPI_FUNC(int) PyContextVar_Get( - PyObject *var, PyObject *default_value, PyObject **value); - - -/* Set a new value for the variable. - Returns NULL if an error occurs. -*/ -PyAPI_FUNC(PyObject *) PyContextVar_Set(PyObject *var, PyObject *value); - - -/* Reset a variable to its previous value. - Returns 0 on success, -1 on error. -*/ -PyAPI_FUNC(int) PyContextVar_Reset(PyObject *var, PyObject *token); - - -/* This method is exposed only for CPython tests. Don not use it. */ -PyAPI_FUNC(PyObject *) _PyContext_NewHamtForTests(void); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CONTEXT_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/descrobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/descrobject.h deleted file mode 100644 index e2ea1b9..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/descrobject.h +++ /dev/null @@ -1,64 +0,0 @@ -#ifndef Py_CPYTHON_DESCROBJECT_H -# error "this header file must not be included directly" -#endif - -typedef PyObject *(*wrapperfunc)(PyObject *self, PyObject *args, - void *wrapped); - -typedef PyObject *(*wrapperfunc_kwds)(PyObject *self, PyObject *args, - void *wrapped, PyObject *kwds); - -struct wrapperbase { - const char *name; - int offset; - void *function; - wrapperfunc wrapper; - const char *doc; - int flags; - PyObject *name_strobj; -}; - -/* Flags for above struct */ -#define PyWrapperFlag_KEYWORDS 1 /* wrapper function takes keyword args */ - -/* Various kinds of descriptor objects */ - -typedef struct { - PyObject_HEAD - PyTypeObject *d_type; - PyObject *d_name; - PyObject *d_qualname; -} PyDescrObject; - -#define PyDescr_COMMON PyDescrObject d_common - -#define PyDescr_TYPE(x) (((PyDescrObject *)(x))->d_type) -#define PyDescr_NAME(x) (((PyDescrObject *)(x))->d_name) - -typedef struct { - PyDescr_COMMON; - PyMethodDef *d_method; - vectorcallfunc vectorcall; -} PyMethodDescrObject; - -typedef struct { - PyDescr_COMMON; - PyMemberDef *d_member; -} PyMemberDescrObject; - -typedef struct { - PyDescr_COMMON; - PyGetSetDef *d_getset; -} PyGetSetDescrObject; - -typedef struct { - PyDescr_COMMON; - struct wrapperbase *d_base; - void *d_wrapped; /* This can be any function pointer */ -} PyWrapperDescrObject; - -PyAPI_DATA(PyTypeObject) _PyMethodWrapper_Type; - -PyAPI_FUNC(PyObject *) PyDescr_NewWrapper(PyTypeObject *, - struct wrapperbase *, void *); -PyAPI_FUNC(int) PyDescr_IsData(PyObject *); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/dictobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/dictobject.h deleted file mode 100644 index 033eaeb..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/dictobject.h +++ /dev/null @@ -1,78 +0,0 @@ -#ifndef Py_CPYTHON_DICTOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct _dictkeysobject PyDictKeysObject; -typedef struct _dictvalues PyDictValues; - -/* The ma_values pointer is NULL for a combined table - * or points to an array of PyObject* for a split table - */ -typedef struct { - PyObject_HEAD - - /* Number of items in the dictionary */ - Py_ssize_t ma_used; - - /* Dictionary version: globally unique, value change each time - the dictionary is modified */ - uint64_t ma_version_tag; - - PyDictKeysObject *ma_keys; - - /* If ma_values is NULL, the table is "combined": keys and values - are stored in ma_keys. - - If ma_values is not NULL, the table is split: - keys are stored in ma_keys and values are stored in ma_values */ - PyDictValues *ma_values; -} PyDictObject; - -PyAPI_FUNC(PyObject *) _PyDict_GetItem_KnownHash(PyObject *mp, PyObject *key, - Py_hash_t hash); -PyAPI_FUNC(PyObject *) _PyDict_GetItemWithError(PyObject *dp, PyObject *key); -PyAPI_FUNC(PyObject *) _PyDict_GetItemIdWithError(PyObject *dp, - _Py_Identifier *key); -PyAPI_FUNC(PyObject *) _PyDict_GetItemStringWithError(PyObject *, const char *); -PyAPI_FUNC(PyObject *) PyDict_SetDefault( - PyObject *mp, PyObject *key, PyObject *defaultobj); -PyAPI_FUNC(int) _PyDict_SetItem_KnownHash(PyObject *mp, PyObject *key, - PyObject *item, Py_hash_t hash); -PyAPI_FUNC(int) _PyDict_DelItem_KnownHash(PyObject *mp, PyObject *key, - Py_hash_t hash); -PyAPI_FUNC(int) _PyDict_DelItemIf(PyObject *mp, PyObject *key, - int (*predicate)(PyObject *value)); -PyAPI_FUNC(int) _PyDict_Next( - PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value, Py_hash_t *hash); - -/* Get the number of items of a dictionary. */ -#define PyDict_GET_SIZE(mp) (assert(PyDict_Check(mp)),((PyDictObject *)mp)->ma_used) -PyAPI_FUNC(int) _PyDict_Contains_KnownHash(PyObject *, PyObject *, Py_hash_t); -PyAPI_FUNC(int) _PyDict_ContainsId(PyObject *, _Py_Identifier *); -PyAPI_FUNC(PyObject *) _PyDict_NewPresized(Py_ssize_t minused); -PyAPI_FUNC(void) _PyDict_MaybeUntrack(PyObject *mp); -PyAPI_FUNC(int) _PyDict_HasOnlyStringKeys(PyObject *mp); -PyAPI_FUNC(Py_ssize_t) _PyDict_SizeOf(PyDictObject *); -PyAPI_FUNC(PyObject *) _PyDict_Pop(PyObject *, PyObject *, PyObject *); -#define _PyDict_HasSplitTable(d) ((d)->ma_values != NULL) - -/* Like PyDict_Merge, but override can be 0, 1 or 2. If override is 0, - the first occurrence of a key wins, if override is 1, the last occurrence - of a key wins, if override is 2, a KeyError with conflicting key as - argument is raised. -*/ -PyAPI_FUNC(int) _PyDict_MergeEx(PyObject *mp, PyObject *other, int override); -PyAPI_FUNC(int) _PyDict_SetItemId(PyObject *dp, _Py_Identifier *key, PyObject *item); - -PyAPI_FUNC(int) _PyDict_DelItemId(PyObject *mp, _Py_Identifier *key); -PyAPI_FUNC(void) _PyDict_DebugMallocStats(FILE *out); - -/* _PyDictView */ - -typedef struct { - PyObject_HEAD - PyDictObject *dv_dict; -} _PyDictViewObject; - -PyAPI_FUNC(PyObject *) _PyDictView_New(PyObject *, PyTypeObject *); -PyAPI_FUNC(PyObject *) _PyDictView_Intersect(PyObject* self, PyObject *other); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/fileobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/fileobject.h deleted file mode 100644 index b70ec31..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/fileobject.h +++ /dev/null @@ -1,19 +0,0 @@ -#ifndef Py_CPYTHON_FILEOBJECT_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(char *) Py_UniversalNewlineFgets(char *, int, FILE*, PyObject *); -PyAPI_FUNC(char *) _Py_UniversalNewlineFgetsWithSize(char *, int, FILE*, PyObject *, size_t*); - -/* The std printer acts as a preliminary sys.stderr until the new io - infrastructure is in place. */ -PyAPI_FUNC(PyObject *) PyFile_NewStdPrinter(int); -PyAPI_DATA(PyTypeObject) PyStdPrinter_Type; - -typedef PyObject * (*Py_OpenCodeHookFunction)(PyObject *, void *); - -PyAPI_FUNC(PyObject *) PyFile_OpenCode(const char *utf8path); -PyAPI_FUNC(PyObject *) PyFile_OpenCodeObject(PyObject *path); -PyAPI_FUNC(int) PyFile_SetOpenCodeHook(Py_OpenCodeHookFunction hook, void *userData); - -PyAPI_FUNC(int) _PyLong_FileDescriptor_Converter(PyObject *, void *); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/fileutils.h b/_Pre_Builds/_Python311_cpp/include/cpython/fileutils.h deleted file mode 100644 index b386ad1..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/fileutils.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef Py_CPYTHON_FILEUTILS_H -# error "this header file must not be included directly" -#endif - -// Used by _testcapi which must not use the internal C API -PyAPI_FUNC(FILE*) _Py_fopen_obj( - PyObject *path, - const char *mode); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/floatobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/floatobject.h deleted file mode 100644 index 7795d9f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/floatobject.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef Py_CPYTHON_FLOATOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - PyObject_HEAD - double ob_fval; -} PyFloatObject; - -// Macro version of PyFloat_AsDouble() trading safety for speed. -// It doesn't check if op is a double object. -#define PyFloat_AS_DOUBLE(op) (((PyFloatObject *)(op))->ob_fval) - - -PyAPI_FUNC(int) PyFloat_Pack2(double x, char *p, int le); -PyAPI_FUNC(int) PyFloat_Pack4(double x, char *p, int le); -PyAPI_FUNC(int) PyFloat_Pack8(double x, char *p, int le); - -PyAPI_FUNC(double) PyFloat_Unpack2(const char *p, int le); -PyAPI_FUNC(double) PyFloat_Unpack4(const char *p, int le); -PyAPI_FUNC(double) PyFloat_Unpack8(const char *p, int le); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/frameobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/frameobject.h deleted file mode 100644 index 4e19535..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/frameobject.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Frame object interface */ - -#ifndef Py_CPYTHON_FRAMEOBJECT_H -# error "this header file must not be included directly" -#endif - -/* Standard object interface */ - -PyAPI_FUNC(PyFrameObject *) PyFrame_New(PyThreadState *, PyCodeObject *, - PyObject *, PyObject *); - -/* The rest of the interface is specific for frame objects */ - -/* Conversions between "fast locals" and locals in dictionary */ - -PyAPI_FUNC(void) PyFrame_LocalsToFast(PyFrameObject *, int); - -/* -- Caveat emptor -- - * The concept of entry frames is an implementation detail of the CPython - * interpreter. This API is considered unstable and is provided for the - * convenience of debuggers, profilers and state-inspecting tools. Notice that - * this API can be changed in future minor versions if the underlying frame - * mechanism change or the concept of an 'entry frame' or its semantics becomes - * obsolete or outdated. */ - -PyAPI_FUNC(int) _PyFrame_IsEntryFrame(PyFrameObject *frame); - -PyAPI_FUNC(int) PyFrame_FastToLocalsWithError(PyFrameObject *f); -PyAPI_FUNC(void) PyFrame_FastToLocals(PyFrameObject *); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/funcobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/funcobject.h deleted file mode 100644 index 99ac600..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/funcobject.h +++ /dev/null @@ -1,113 +0,0 @@ -/* Function object interface */ - -#ifndef Py_LIMITED_API -#ifndef Py_FUNCOBJECT_H -#define Py_FUNCOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -#define COMMON_FIELDS(PREFIX) \ - PyObject *PREFIX ## globals; \ - PyObject *PREFIX ## builtins; \ - PyObject *PREFIX ## name; \ - PyObject *PREFIX ## qualname; \ - PyObject *PREFIX ## code; /* A code object, the __code__ attribute */ \ - PyObject *PREFIX ## defaults; /* NULL or a tuple */ \ - PyObject *PREFIX ## kwdefaults; /* NULL or a dict */ \ - PyObject *PREFIX ## closure; /* NULL or a tuple of cell objects */ - -typedef struct { - COMMON_FIELDS(fc_) -} PyFrameConstructor; - -/* Function objects and code objects should not be confused with each other: - * - * Function objects are created by the execution of the 'def' statement. - * They reference a code object in their __code__ attribute, which is a - * purely syntactic object, i.e. nothing more than a compiled version of some - * source code lines. There is one code object per source code "fragment", - * but each code object can be referenced by zero or many function objects - * depending only on how many times the 'def' statement in the source was - * executed so far. - */ - -typedef struct { - PyObject_HEAD - COMMON_FIELDS(func_) - PyObject *func_doc; /* The __doc__ attribute, can be anything */ - PyObject *func_dict; /* The __dict__ attribute, a dict or NULL */ - PyObject *func_weakreflist; /* List of weak references */ - PyObject *func_module; /* The __module__ attribute, can be anything */ - PyObject *func_annotations; /* Annotations, a dict or NULL */ - vectorcallfunc vectorcall; - /* Version number for use by specializer. - * Can set to non-zero when we want to specialize. - * Will be set to zero if any of these change: - * defaults - * kwdefaults (only if the object changes, not the contents of the dict) - * code - * annotations */ - uint32_t func_version; - - /* Invariant: - * func_closure contains the bindings for func_code->co_freevars, so - * PyTuple_Size(func_closure) == PyCode_GetNumFree(func_code) - * (func_closure may be NULL if PyCode_GetNumFree(func_code) == 0). - */ -} PyFunctionObject; - -PyAPI_DATA(PyTypeObject) PyFunction_Type; - -#define PyFunction_Check(op) Py_IS_TYPE(op, &PyFunction_Type) - -PyAPI_FUNC(PyObject *) PyFunction_New(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_NewWithQualName(PyObject *, PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetCode(PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetGlobals(PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetModule(PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetDefaults(PyObject *); -PyAPI_FUNC(int) PyFunction_SetDefaults(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetKwDefaults(PyObject *); -PyAPI_FUNC(int) PyFunction_SetKwDefaults(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetClosure(PyObject *); -PyAPI_FUNC(int) PyFunction_SetClosure(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetAnnotations(PyObject *); -PyAPI_FUNC(int) PyFunction_SetAnnotations(PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) _PyFunction_Vectorcall( - PyObject *func, - PyObject *const *stack, - size_t nargsf, - PyObject *kwnames); - -/* Macros for direct access to these values. Type checks are *not* - done, so use with care. */ -#define PyFunction_GET_CODE(func) \ - (((PyFunctionObject *)func) -> func_code) -#define PyFunction_GET_GLOBALS(func) \ - (((PyFunctionObject *)func) -> func_globals) -#define PyFunction_GET_MODULE(func) \ - (((PyFunctionObject *)func) -> func_module) -#define PyFunction_GET_DEFAULTS(func) \ - (((PyFunctionObject *)func) -> func_defaults) -#define PyFunction_GET_KW_DEFAULTS(func) \ - (((PyFunctionObject *)func) -> func_kwdefaults) -#define PyFunction_GET_CLOSURE(func) \ - (((PyFunctionObject *)func) -> func_closure) -#define PyFunction_GET_ANNOTATIONS(func) \ - (((PyFunctionObject *)func) -> func_annotations) - -/* The classmethod and staticmethod types lives here, too */ -PyAPI_DATA(PyTypeObject) PyClassMethod_Type; -PyAPI_DATA(PyTypeObject) PyStaticMethod_Type; - -PyAPI_FUNC(PyObject *) PyClassMethod_New(PyObject *); -PyAPI_FUNC(PyObject *) PyStaticMethod_New(PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FUNCOBJECT_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/genobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/genobject.h deleted file mode 100644 index 40eaa19..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/genobject.h +++ /dev/null @@ -1,88 +0,0 @@ -/* Generator object interface */ - -#ifndef Py_LIMITED_API -#ifndef Py_GENOBJECT_H -#define Py_GENOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* --- Generators --------------------------------------------------------- */ - -/* _PyGenObject_HEAD defines the initial segment of generator - and coroutine objects. */ -#define _PyGenObject_HEAD(prefix) \ - PyObject_HEAD \ - /* The code object backing the generator */ \ - PyCodeObject *prefix##_code; \ - /* List of weak reference. */ \ - PyObject *prefix##_weakreflist; \ - /* Name of the generator. */ \ - PyObject *prefix##_name; \ - /* Qualified name of the generator. */ \ - PyObject *prefix##_qualname; \ - _PyErr_StackItem prefix##_exc_state; \ - PyObject *prefix##_origin_or_finalizer; \ - char prefix##_hooks_inited; \ - char prefix##_closed; \ - char prefix##_running_async; \ - /* The frame */ \ - int8_t prefix##_frame_state; \ - PyObject *prefix##_iframe[1]; - -typedef struct { - /* The gi_ prefix is intended to remind of generator-iterator. */ - _PyGenObject_HEAD(gi) -} PyGenObject; - -PyAPI_DATA(PyTypeObject) PyGen_Type; - -#define PyGen_Check(op) PyObject_TypeCheck(op, &PyGen_Type) -#define PyGen_CheckExact(op) Py_IS_TYPE(op, &PyGen_Type) - -PyAPI_FUNC(PyObject *) PyGen_New(PyFrameObject *); -PyAPI_FUNC(PyObject *) PyGen_NewWithQualName(PyFrameObject *, - PyObject *name, PyObject *qualname); -PyAPI_FUNC(int) _PyGen_SetStopIterationValue(PyObject *); -PyAPI_FUNC(int) _PyGen_FetchStopIterationValue(PyObject **); -PyAPI_FUNC(void) _PyGen_Finalize(PyObject *self); - - -/* --- PyCoroObject ------------------------------------------------------- */ - -typedef struct { - _PyGenObject_HEAD(cr) -} PyCoroObject; - -PyAPI_DATA(PyTypeObject) PyCoro_Type; -PyAPI_DATA(PyTypeObject) _PyCoroWrapper_Type; - -#define PyCoro_CheckExact(op) Py_IS_TYPE(op, &PyCoro_Type) -PyAPI_FUNC(PyObject *) PyCoro_New(PyFrameObject *, - PyObject *name, PyObject *qualname); - - -/* --- Asynchronous Generators -------------------------------------------- */ - -typedef struct { - _PyGenObject_HEAD(ag) -} PyAsyncGenObject; - -PyAPI_DATA(PyTypeObject) PyAsyncGen_Type; -PyAPI_DATA(PyTypeObject) _PyAsyncGenASend_Type; -PyAPI_DATA(PyTypeObject) _PyAsyncGenWrappedValue_Type; -PyAPI_DATA(PyTypeObject) _PyAsyncGenAThrow_Type; - -PyAPI_FUNC(PyObject *) PyAsyncGen_New(PyFrameObject *, - PyObject *name, PyObject *qualname); - -#define PyAsyncGen_CheckExact(op) Py_IS_TYPE(op, &PyAsyncGen_Type) - - -#undef _PyGenObject_HEAD - -#ifdef __cplusplus -} -#endif -#endif /* !Py_GENOBJECT_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/import.h b/_Pre_Builds/_Python311_cpp/include/cpython/import.h deleted file mode 100644 index a69b4f3..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/import.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef Py_CPYTHON_IMPORT_H -# error "this header file must not be included directly" -#endif - -PyMODINIT_FUNC PyInit__imp(void); - -PyAPI_FUNC(int) _PyImport_IsInitialized(PyInterpreterState *); - -PyAPI_FUNC(PyObject *) _PyImport_GetModuleId(_Py_Identifier *name); -PyAPI_FUNC(int) _PyImport_SetModule(PyObject *name, PyObject *module); -PyAPI_FUNC(int) _PyImport_SetModuleString(const char *name, PyObject* module); - -PyAPI_FUNC(void) _PyImport_AcquireLock(void); -PyAPI_FUNC(int) _PyImport_ReleaseLock(void); - -PyAPI_FUNC(int) _PyImport_FixupBuiltin( - PyObject *mod, - const char *name, /* UTF-8 encoded string */ - PyObject *modules - ); -PyAPI_FUNC(int) _PyImport_FixupExtensionObject(PyObject*, PyObject *, - PyObject *, PyObject *); - -struct _inittab { - const char *name; /* ASCII encoded string */ - PyObject* (*initfunc)(void); -}; -PyAPI_DATA(struct _inittab *) PyImport_Inittab; -PyAPI_FUNC(int) PyImport_ExtendInittab(struct _inittab *newtab); - -struct _frozen { - const char *name; /* ASCII encoded string */ - const unsigned char *code; - int size; - int is_package; - PyObject *(*get_code)(void); -}; - -/* Embedding apps may change this pointer to point to their favorite - collection of frozen modules: */ - -PyAPI_DATA(const struct _frozen *) PyImport_FrozenModules; - -PyAPI_DATA(PyObject *) _PyImport_GetModuleAttr(PyObject *, PyObject *); -PyAPI_DATA(PyObject *) _PyImport_GetModuleAttrString(const char *, const char *); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/initconfig.h b/_Pre_Builds/_Python311_cpp/include/cpython/initconfig.h deleted file mode 100644 index 3b6d593..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/initconfig.h +++ /dev/null @@ -1,257 +0,0 @@ -#ifndef Py_PYCORECONFIG_H -#define Py_PYCORECONFIG_H -#ifndef Py_LIMITED_API -#ifdef __cplusplus -extern "C" { -#endif - -/* --- PyStatus ----------------------------------------------- */ - -typedef struct { - enum { - _PyStatus_TYPE_OK=0, - _PyStatus_TYPE_ERROR=1, - _PyStatus_TYPE_EXIT=2 - } _type; - const char *func; - const char *err_msg; - int exitcode; -} PyStatus; - -PyAPI_FUNC(PyStatus) PyStatus_Ok(void); -PyAPI_FUNC(PyStatus) PyStatus_Error(const char *err_msg); -PyAPI_FUNC(PyStatus) PyStatus_NoMemory(void); -PyAPI_FUNC(PyStatus) PyStatus_Exit(int exitcode); -PyAPI_FUNC(int) PyStatus_IsError(PyStatus err); -PyAPI_FUNC(int) PyStatus_IsExit(PyStatus err); -PyAPI_FUNC(int) PyStatus_Exception(PyStatus err); - -/* --- PyWideStringList ------------------------------------------------ */ - -typedef struct { - /* If length is greater than zero, items must be non-NULL - and all items strings must be non-NULL */ - Py_ssize_t length; - wchar_t **items; -} PyWideStringList; - -PyAPI_FUNC(PyStatus) PyWideStringList_Append(PyWideStringList *list, - const wchar_t *item); -PyAPI_FUNC(PyStatus) PyWideStringList_Insert(PyWideStringList *list, - Py_ssize_t index, - const wchar_t *item); - - -/* --- PyPreConfig ----------------------------------------------- */ - -typedef struct PyPreConfig { - int _config_init; /* _PyConfigInitEnum value */ - - /* Parse Py_PreInitializeFromBytesArgs() arguments? - See PyConfig.parse_argv */ - int parse_argv; - - /* If greater than 0, enable isolated mode: sys.path contains - neither the script's directory nor the user's site-packages directory. - - Set to 1 by the -I command line option. If set to -1 (default), inherit - Py_IsolatedFlag value. */ - int isolated; - - /* If greater than 0: use environment variables. - Set to 0 by -E command line option. If set to -1 (default), it is - set to !Py_IgnoreEnvironmentFlag. */ - int use_environment; - - /* Set the LC_CTYPE locale to the user preferred locale? If equals to 0, - set coerce_c_locale and coerce_c_locale_warn to 0. */ - int configure_locale; - - /* Coerce the LC_CTYPE locale if it's equal to "C"? (PEP 538) - - Set to 0 by PYTHONCOERCECLOCALE=0. Set to 1 by PYTHONCOERCECLOCALE=1. - Set to 2 if the user preferred LC_CTYPE locale is "C". - - If it is equal to 1, LC_CTYPE locale is read to decide if it should be - coerced or not (ex: PYTHONCOERCECLOCALE=1). Internally, it is set to 2 - if the LC_CTYPE locale must be coerced. - - Disable by default (set to 0). Set it to -1 to let Python decide if it - should be enabled or not. */ - int coerce_c_locale; - - /* Emit a warning if the LC_CTYPE locale is coerced? - - Set to 1 by PYTHONCOERCECLOCALE=warn. - - Disable by default (set to 0). Set it to -1 to let Python decide if it - should be enabled or not. */ - int coerce_c_locale_warn; - -#ifdef MS_WINDOWS - /* If greater than 1, use the "mbcs" encoding instead of the UTF-8 - encoding for the filesystem encoding. - - Set to 1 if the PYTHONLEGACYWINDOWSFSENCODING environment variable is - set to a non-empty string. If set to -1 (default), inherit - Py_LegacyWindowsFSEncodingFlag value. - - See PEP 529 for more details. */ - int legacy_windows_fs_encoding; -#endif - - /* Enable UTF-8 mode? (PEP 540) - - Disabled by default (equals to 0). - - Set to 1 by "-X utf8" and "-X utf8=1" command line options. - Set to 1 by PYTHONUTF8=1 environment variable. - - Set to 0 by "-X utf8=0" and PYTHONUTF8=0. - - If equals to -1, it is set to 1 if the LC_CTYPE locale is "C" or - "POSIX", otherwise it is set to 0. Inherit Py_UTF8Mode value value. */ - int utf8_mode; - - /* If non-zero, enable the Python Development Mode. - - Set to 1 by the -X dev command line option. Set by the PYTHONDEVMODE - environment variable. */ - int dev_mode; - - /* Memory allocator: PYTHONMALLOC env var. - See PyMemAllocatorName for valid values. */ - int allocator; -} PyPreConfig; - -PyAPI_FUNC(void) PyPreConfig_InitPythonConfig(PyPreConfig *config); -PyAPI_FUNC(void) PyPreConfig_InitIsolatedConfig(PyPreConfig *config); - - -/* --- PyConfig ---------------------------------------------- */ - -/* This structure is best documented in the Doc/c-api/init_config.rst file. */ -typedef struct PyConfig { - int _config_init; /* _PyConfigInitEnum value */ - - int isolated; - int use_environment; - int dev_mode; - int install_signal_handlers; - int use_hash_seed; - unsigned long hash_seed; - int faulthandler; - int tracemalloc; - int import_time; - int code_debug_ranges; - int show_ref_count; - int dump_refs; - wchar_t *dump_refs_file; - int malloc_stats; - wchar_t *filesystem_encoding; - wchar_t *filesystem_errors; - wchar_t *pycache_prefix; - int parse_argv; - PyWideStringList orig_argv; - PyWideStringList argv; - PyWideStringList xoptions; - PyWideStringList warnoptions; - int site_import; - int bytes_warning; - int warn_default_encoding; - int inspect; - int interactive; - int optimization_level; - int parser_debug; - int write_bytecode; - int verbose; - int quiet; - int user_site_directory; - int configure_c_stdio; - int buffered_stdio; - wchar_t *stdio_encoding; - wchar_t *stdio_errors; -#ifdef MS_WINDOWS - int legacy_windows_stdio; -#endif - wchar_t *check_hash_pycs_mode; - int use_frozen_modules; - int safe_path; - - /* --- Path configuration inputs ------------ */ - int pathconfig_warnings; - wchar_t *program_name; - wchar_t *pythonpath_env; - wchar_t *home; - wchar_t *platlibdir; - - /* --- Path configuration outputs ----------- */ - int module_search_paths_set; - PyWideStringList module_search_paths; - wchar_t *stdlib_dir; - wchar_t *executable; - wchar_t *base_executable; - wchar_t *prefix; - wchar_t *base_prefix; - wchar_t *exec_prefix; - wchar_t *base_exec_prefix; - - /* --- Parameter only used by Py_Main() ---------- */ - int skip_source_first_line; - wchar_t *run_command; - wchar_t *run_module; - wchar_t *run_filename; - - /* --- Private fields ---------------------------- */ - - // Install importlib? If equals to 0, importlib is not initialized at all. - // Needed by freeze_importlib. - int _install_importlib; - - // If equal to 0, stop Python initialization before the "main" phase. - int _init_main; - - // If non-zero, disallow threads, subprocesses, and fork. - // Default: 0. - int _isolated_interpreter; - - // If non-zero, we believe we're running from a source tree. - int _is_python_build; -} PyConfig; - -PyAPI_FUNC(void) PyConfig_InitPythonConfig(PyConfig *config); -PyAPI_FUNC(void) PyConfig_InitIsolatedConfig(PyConfig *config); -PyAPI_FUNC(void) PyConfig_Clear(PyConfig *); -PyAPI_FUNC(PyStatus) PyConfig_SetString( - PyConfig *config, - wchar_t **config_str, - const wchar_t *str); -PyAPI_FUNC(PyStatus) PyConfig_SetBytesString( - PyConfig *config, - wchar_t **config_str, - const char *str); -PyAPI_FUNC(PyStatus) PyConfig_Read(PyConfig *config); -PyAPI_FUNC(PyStatus) PyConfig_SetBytesArgv( - PyConfig *config, - Py_ssize_t argc, - char * const *argv); -PyAPI_FUNC(PyStatus) PyConfig_SetArgv(PyConfig *config, - Py_ssize_t argc, - wchar_t * const *argv); -PyAPI_FUNC(PyStatus) PyConfig_SetWideStringList(PyConfig *config, - PyWideStringList *list, - Py_ssize_t length, wchar_t **items); - - -/* --- Helper functions --------------------------------------- */ - -/* Get the original command line arguments, before Python modified them. - - See also PyConfig.orig_argv. */ -PyAPI_FUNC(void) Py_GetArgcArgv(int *argc, wchar_t ***argv); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LIMITED_API */ -#endif /* !Py_PYCORECONFIG_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/listobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/listobject.h deleted file mode 100644 index 1add821..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/listobject.h +++ /dev/null @@ -1,51 +0,0 @@ -#ifndef Py_CPYTHON_LISTOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - PyObject_VAR_HEAD - /* Vector of pointers to list elements. list[0] is ob_item[0], etc. */ - PyObject **ob_item; - - /* ob_item contains space for 'allocated' elements. The number - * currently in use is ob_size. - * Invariants: - * 0 <= ob_size <= allocated - * len(list) == ob_size - * ob_item == NULL implies ob_size == allocated == 0 - * list.sort() temporarily sets allocated to -1 to detect mutations. - * - * Items must normally not be NULL, except during construction when - * the list is not yet visible outside the function that builds it. - */ - Py_ssize_t allocated; -} PyListObject; - -PyAPI_FUNC(PyObject *) _PyList_Extend(PyListObject *, PyObject *); -PyAPI_FUNC(void) _PyList_DebugMallocStats(FILE *out); - -/* Cast argument to PyListObject* type. */ -#define _PyList_CAST(op) \ - (assert(PyList_Check(op)), _Py_CAST(PyListObject*, (op))) - -// Macros and static inline functions, trading safety for speed - -static inline Py_ssize_t PyList_GET_SIZE(PyObject *op) { - PyListObject *list = _PyList_CAST(op); - return Py_SIZE(list); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyList_GET_SIZE(op) PyList_GET_SIZE(_PyObject_CAST(op)) -#endif - -#define PyList_GET_ITEM(op, index) (_PyList_CAST(op)->ob_item[index]) - -static inline void -PyList_SET_ITEM(PyObject *op, Py_ssize_t index, PyObject *value) { - PyListObject *list = _PyList_CAST(op); - list->ob_item[index] = value; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -#define PyList_SET_ITEM(op, index, value) \ - PyList_SET_ITEM(_PyObject_CAST(op), index, _PyObject_CAST(value)) -#endif diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/longintrepr.h b/_Pre_Builds/_Python311_cpp/include/cpython/longintrepr.h deleted file mode 100644 index 6d52427..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/longintrepr.h +++ /dev/null @@ -1,96 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_LONGINTREPR_H -#define Py_LONGINTREPR_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* This is published for the benefit of "friends" marshal.c and _decimal.c. */ - -/* Parameters of the integer representation. There are two different - sets of parameters: one set for 30-bit digits, stored in an unsigned 32-bit - integer type, and one set for 15-bit digits with each digit stored in an - unsigned short. The value of PYLONG_BITS_IN_DIGIT, defined either at - configure time or in pyport.h, is used to decide which digit size to use. - - Type 'digit' should be able to hold 2*PyLong_BASE-1, and type 'twodigits' - should be an unsigned integer type able to hold all integers up to - PyLong_BASE*PyLong_BASE-1. x_sub assumes that 'digit' is an unsigned type, - and that overflow is handled by taking the result modulo 2**N for some N > - PyLong_SHIFT. The majority of the code doesn't care about the precise - value of PyLong_SHIFT, but there are some notable exceptions: - - - PyLong_{As,From}ByteArray require that PyLong_SHIFT be at least 8 - - - long_hash() requires that PyLong_SHIFT is *strictly* less than the number - of bits in an unsigned long, as do the PyLong <-> long (or unsigned long) - conversion functions - - - the Python int <-> size_t/Py_ssize_t conversion functions expect that - PyLong_SHIFT is strictly less than the number of bits in a size_t - - - the marshal code currently expects that PyLong_SHIFT is a multiple of 15 - - - NSMALLNEGINTS and NSMALLPOSINTS should be small enough to fit in a single - digit; with the current values this forces PyLong_SHIFT >= 9 - - The values 15 and 30 should fit all of the above requirements, on any - platform. -*/ - -#if PYLONG_BITS_IN_DIGIT == 30 -typedef uint32_t digit; -typedef int32_t sdigit; /* signed variant of digit */ -typedef uint64_t twodigits; -typedef int64_t stwodigits; /* signed variant of twodigits */ -#define PyLong_SHIFT 30 -#define _PyLong_DECIMAL_SHIFT 9 /* max(e such that 10**e fits in a digit) */ -#define _PyLong_DECIMAL_BASE ((digit)1000000000) /* 10 ** DECIMAL_SHIFT */ -#elif PYLONG_BITS_IN_DIGIT == 15 -typedef unsigned short digit; -typedef short sdigit; /* signed variant of digit */ -typedef unsigned long twodigits; -typedef long stwodigits; /* signed variant of twodigits */ -#define PyLong_SHIFT 15 -#define _PyLong_DECIMAL_SHIFT 4 /* max(e such that 10**e fits in a digit) */ -#define _PyLong_DECIMAL_BASE ((digit)10000) /* 10 ** DECIMAL_SHIFT */ -#else -#error "PYLONG_BITS_IN_DIGIT should be 15 or 30" -#endif -#define PyLong_BASE ((digit)1 << PyLong_SHIFT) -#define PyLong_MASK ((digit)(PyLong_BASE - 1)) - -/* Long integer representation. - The absolute value of a number is equal to - SUM(for i=0 through abs(ob_size)-1) ob_digit[i] * 2**(SHIFT*i) - Negative numbers are represented with ob_size < 0; - zero is represented by ob_size == 0. - In a normalized number, ob_digit[abs(ob_size)-1] (the most significant - digit) is never zero. Also, in all cases, for all valid i, - 0 <= ob_digit[i] <= MASK. - The allocation function takes care of allocating extra memory - so that ob_digit[0] ... ob_digit[abs(ob_size)-1] are actually available. - We always allocate memory for at least one digit, so accessing ob_digit[0] - is always safe. However, in the case ob_size == 0, the contents of - ob_digit[0] may be undefined. - - CAUTION: Generic code manipulating subtypes of PyVarObject has to - aware that ints abuse ob_size's sign bit. -*/ - -struct _longobject { - PyObject_VAR_HEAD - digit ob_digit[1]; -}; - -PyAPI_FUNC(PyLongObject *) _PyLong_New(Py_ssize_t); - -/* Return a copy of src. */ -PyAPI_FUNC(PyObject *) _PyLong_Copy(PyLongObject *src); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LONGINTREPR_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/longobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/longobject.h deleted file mode 100644 index 1a73799..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/longobject.h +++ /dev/null @@ -1,95 +0,0 @@ -#ifndef Py_CPYTHON_LONGOBJECT_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(int) _PyLong_AsInt(PyObject *); - -PyAPI_FUNC(int) _PyLong_UnsignedShort_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_UnsignedInt_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_UnsignedLong_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_UnsignedLongLong_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_Size_t_Converter(PyObject *, void *); - -/* _PyLong_Frexp returns a double x and an exponent e such that the - true value is approximately equal to x * 2**e. e is >= 0. x is - 0.0 if and only if the input is 0 (in which case, e and x are both - zeroes); otherwise, 0.5 <= abs(x) < 1.0. On overflow, which is - possible if the number of bits doesn't fit into a Py_ssize_t, sets - OverflowError and returns -1.0 for x, 0 for e. */ -PyAPI_FUNC(double) _PyLong_Frexp(PyLongObject *a, Py_ssize_t *e); - -PyAPI_FUNC(PyObject *) PyLong_FromUnicodeObject(PyObject *u, int base); -PyAPI_FUNC(PyObject *) _PyLong_FromBytes(const char *, Py_ssize_t, int); - -/* _PyLong_Sign. Return 0 if v is 0, -1 if v < 0, +1 if v > 0. - v must not be NULL, and must be a normalized long. - There are no error cases. -*/ -PyAPI_FUNC(int) _PyLong_Sign(PyObject *v); - -/* _PyLong_NumBits. Return the number of bits needed to represent the - absolute value of a long. For example, this returns 1 for 1 and -1, 2 - for 2 and -2, and 2 for 3 and -3. It returns 0 for 0. - v must not be NULL, and must be a normalized long. - (size_t)-1 is returned and OverflowError set if the true result doesn't - fit in a size_t. -*/ -PyAPI_FUNC(size_t) _PyLong_NumBits(PyObject *v); - -/* _PyLong_DivmodNear. Given integers a and b, compute the nearest - integer q to the exact quotient a / b, rounding to the nearest even integer - in the case of a tie. Return (q, r), where r = a - q*b. The remainder r - will satisfy abs(r) <= abs(b)/2, with equality possible only if q is - even. -*/ -PyAPI_FUNC(PyObject *) _PyLong_DivmodNear(PyObject *, PyObject *); - -/* _PyLong_FromByteArray: View the n unsigned bytes as a binary integer in - base 256, and return a Python int with the same numeric value. - If n is 0, the integer is 0. Else: - If little_endian is 1/true, bytes[n-1] is the MSB and bytes[0] the LSB; - else (little_endian is 0/false) bytes[0] is the MSB and bytes[n-1] the - LSB. - If is_signed is 0/false, view the bytes as a non-negative integer. - If is_signed is 1/true, view the bytes as a 2's-complement integer, - non-negative if bit 0x80 of the MSB is clear, negative if set. - Error returns: - + Return NULL with the appropriate exception set if there's not - enough memory to create the Python int. -*/ -PyAPI_FUNC(PyObject *) _PyLong_FromByteArray( - const unsigned char* bytes, size_t n, - int little_endian, int is_signed); - -/* _PyLong_AsByteArray: Convert the least-significant 8*n bits of long - v to a base-256 integer, stored in array bytes. Normally return 0, - return -1 on error. - If little_endian is 1/true, store the MSB at bytes[n-1] and the LSB at - bytes[0]; else (little_endian is 0/false) store the MSB at bytes[0] and - the LSB at bytes[n-1]. - If is_signed is 0/false, it's an error if v < 0; else (v >= 0) n bytes - are filled and there's nothing special about bit 0x80 of the MSB. - If is_signed is 1/true, bytes is filled with the 2's-complement - representation of v's value. Bit 0x80 of the MSB is the sign bit. - Error returns (-1): - + is_signed is 0 and v < 0. TypeError is set in this case, and bytes - isn't altered. - + n isn't big enough to hold the full mathematical value of v. For - example, if is_signed is 0 and there are more digits in the v than - fit in n; or if is_signed is 1, v < 0, and n is just 1 bit shy of - being large enough to hold a sign bit. OverflowError is set in this - case, but bytes holds the least-significant n bytes of the true value. -*/ -PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v, - unsigned char* bytes, size_t n, - int little_endian, int is_signed); - -/* _PyLong_Format: Convert the long to a string object with given base, - appending a base prefix of 0[box] if base is 2, 8 or 16. */ -PyAPI_FUNC(PyObject *) _PyLong_Format(PyObject *obj, int base); - -/* For use by the gcd function in mathmodule.c */ -PyAPI_FUNC(PyObject *) _PyLong_GCD(PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) _PyLong_Rshift(PyObject *, size_t); -PyAPI_FUNC(PyObject *) _PyLong_Lshift(PyObject *, size_t); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/methodobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/methodobject.h deleted file mode 100644 index 54a61cf..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/methodobject.h +++ /dev/null @@ -1,74 +0,0 @@ -#ifndef Py_CPYTHON_METHODOBJECT_H -# error "this header file must not be included directly" -#endif - -// PyCFunctionObject structure - -typedef struct { - PyObject_HEAD - PyMethodDef *m_ml; /* Description of the C function to call */ - PyObject *m_self; /* Passed as 'self' arg to the C func, can be NULL */ - PyObject *m_module; /* The __module__ attribute, can be anything */ - PyObject *m_weakreflist; /* List of weak references */ - vectorcallfunc vectorcall; -} PyCFunctionObject; - -#define _PyCFunctionObject_CAST(func) \ - (assert(PyCFunction_Check(func)), \ - _Py_CAST(PyCFunctionObject*, (func))) - - -// PyCMethodObject structure - -typedef struct { - PyCFunctionObject func; - PyTypeObject *mm_class; /* Class that defines this method */ -} PyCMethodObject; - -#define _PyCMethodObject_CAST(func) \ - (assert(PyCMethod_Check(func)), \ - _Py_CAST(PyCMethodObject*, (func))) - -PyAPI_DATA(PyTypeObject) PyCMethod_Type; - -#define PyCMethod_CheckExact(op) Py_IS_TYPE(op, &PyCMethod_Type) -#define PyCMethod_Check(op) PyObject_TypeCheck(op, &PyCMethod_Type) - - -/* Static inline functions for direct access to these values. - Type checks are *not* done, so use with care. */ -static inline PyCFunction PyCFunction_GET_FUNCTION(PyObject *func) { - return _PyCFunctionObject_CAST(func)->m_ml->ml_meth; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyCFunction_GET_FUNCTION(func) PyCFunction_GET_FUNCTION(_PyObject_CAST(func)) -#endif - -static inline PyObject* PyCFunction_GET_SELF(PyObject *func_obj) { - PyCFunctionObject *func = _PyCFunctionObject_CAST(func_obj); - if (func->m_ml->ml_flags & METH_STATIC) { - return _Py_NULL; - } - return func->m_self; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyCFunction_GET_SELF(func) PyCFunction_GET_SELF(_PyObject_CAST(func)) -#endif - -static inline int PyCFunction_GET_FLAGS(PyObject *func) { - return _PyCFunctionObject_CAST(func)->m_ml->ml_flags; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyCFunction_GET_FLAGS(func) PyCFunction_GET_FLAGS(_PyObject_CAST(func)) -#endif - -static inline PyTypeObject* PyCFunction_GET_CLASS(PyObject *func_obj) { - PyCFunctionObject *func = _PyCFunctionObject_CAST(func_obj); - if (func->m_ml->ml_flags & METH_METHOD) { - return _PyCMethodObject_CAST(func)->mm_class; - } - return _Py_NULL; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyCFunction_GET_CLASS(func) PyCFunction_GET_CLASS(_PyObject_CAST(func)) -#endif diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/modsupport.h b/_Pre_Builds/_Python311_cpp/include/cpython/modsupport.h deleted file mode 100644 index 205e174..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/modsupport.h +++ /dev/null @@ -1,108 +0,0 @@ -#ifndef Py_CPYTHON_MODSUPPORT_H -# error "this header file must not be included directly" -#endif - -/* If PY_SSIZE_T_CLEAN is defined, each functions treats #-specifier - to mean Py_ssize_t */ -#ifdef PY_SSIZE_T_CLEAN -#define _Py_VaBuildStack _Py_VaBuildStack_SizeT -#else -PyAPI_FUNC(PyObject *) _Py_VaBuildValue_SizeT(const char *, va_list); -PyAPI_FUNC(PyObject **) _Py_VaBuildStack_SizeT( - PyObject **small_stack, - Py_ssize_t small_stack_len, - const char *format, - va_list va, - Py_ssize_t *p_nargs); -#endif - -PyAPI_FUNC(int) _PyArg_UnpackStack( - PyObject *const *args, - Py_ssize_t nargs, - const char *name, - Py_ssize_t min, - Py_ssize_t max, - ...); - -PyAPI_FUNC(int) _PyArg_NoKeywords(const char *funcname, PyObject *kwargs); -PyAPI_FUNC(int) _PyArg_NoKwnames(const char *funcname, PyObject *kwnames); -PyAPI_FUNC(int) _PyArg_NoPositional(const char *funcname, PyObject *args); -#define _PyArg_NoKeywords(funcname, kwargs) \ - ((kwargs) == NULL || _PyArg_NoKeywords((funcname), (kwargs))) -#define _PyArg_NoKwnames(funcname, kwnames) \ - ((kwnames) == NULL || _PyArg_NoKwnames((funcname), (kwnames))) -#define _PyArg_NoPositional(funcname, args) \ - ((args) == NULL || _PyArg_NoPositional((funcname), (args))) - -PyAPI_FUNC(void) _PyArg_BadArgument(const char *, const char *, const char *, PyObject *); -PyAPI_FUNC(int) _PyArg_CheckPositional(const char *, Py_ssize_t, - Py_ssize_t, Py_ssize_t); -#define _PyArg_CheckPositional(funcname, nargs, min, max) \ - ((!ANY_VARARGS(max) && (min) <= (nargs) && (nargs) <= (max)) \ - || _PyArg_CheckPositional((funcname), (nargs), (min), (max))) - -PyAPI_FUNC(PyObject **) _Py_VaBuildStack( - PyObject **small_stack, - Py_ssize_t small_stack_len, - const char *format, - va_list va, - Py_ssize_t *p_nargs); - -typedef struct _PyArg_Parser { - const char *format; - const char * const *keywords; - const char *fname; - const char *custom_msg; - int pos; /* number of positional-only arguments */ - int min; /* minimal number of arguments */ - int max; /* maximal number of positional arguments */ - PyObject *kwtuple; /* tuple of keyword parameter names */ - struct _PyArg_Parser *next; -} _PyArg_Parser; - -#ifdef PY_SSIZE_T_CLEAN -#define _PyArg_ParseTupleAndKeywordsFast _PyArg_ParseTupleAndKeywordsFast_SizeT -#define _PyArg_ParseStack _PyArg_ParseStack_SizeT -#define _PyArg_ParseStackAndKeywords _PyArg_ParseStackAndKeywords_SizeT -#define _PyArg_VaParseTupleAndKeywordsFast _PyArg_VaParseTupleAndKeywordsFast_SizeT -#endif - -PyAPI_FUNC(int) _PyArg_ParseTupleAndKeywordsFast(PyObject *, PyObject *, - struct _PyArg_Parser *, ...); -PyAPI_FUNC(int) _PyArg_ParseStack( - PyObject *const *args, - Py_ssize_t nargs, - const char *format, - ...); -PyAPI_FUNC(int) _PyArg_ParseStackAndKeywords( - PyObject *const *args, - Py_ssize_t nargs, - PyObject *kwnames, - struct _PyArg_Parser *, - ...); -PyAPI_FUNC(int) _PyArg_VaParseTupleAndKeywordsFast(PyObject *, PyObject *, - struct _PyArg_Parser *, va_list); -PyAPI_FUNC(PyObject * const *) _PyArg_UnpackKeywords( - PyObject *const *args, Py_ssize_t nargs, - PyObject *kwargs, PyObject *kwnames, - struct _PyArg_Parser *parser, - int minpos, int maxpos, int minkw, - PyObject **buf); - -PyAPI_FUNC(PyObject * const *) _PyArg_UnpackKeywordsWithVararg( - PyObject *const *args, Py_ssize_t nargs, - PyObject *kwargs, PyObject *kwnames, - struct _PyArg_Parser *parser, - int minpos, int maxpos, int minkw, - int vararg, PyObject **buf); - -#define _PyArg_UnpackKeywords(args, nargs, kwargs, kwnames, parser, minpos, maxpos, minkw, buf) \ - (((minkw) == 0 && (kwargs) == NULL && (kwnames) == NULL && \ - (minpos) <= (nargs) && (nargs) <= (maxpos) && args != NULL) ? (args) : \ - _PyArg_UnpackKeywords((args), (nargs), (kwargs), (kwnames), (parser), \ - (minpos), (maxpos), (minkw), (buf))) - -PyAPI_FUNC(PyObject *) _PyModule_CreateInitialized(PyModuleDef*, int apiver); -PyAPI_FUNC(int) _PyModule_Add(PyObject *, const char *, PyObject *); - -PyAPI_DATA(const char *) _Py_PackageContext; diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/object.h b/_Pre_Builds/_Python311_cpp/include/cpython/object.h deleted file mode 100644 index b018dab..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/object.h +++ /dev/null @@ -1,511 +0,0 @@ -#ifndef Py_CPYTHON_OBJECT_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(void) _Py_NewReference(PyObject *op); - -#ifdef Py_TRACE_REFS -/* Py_TRACE_REFS is such major surgery that we call external routines. */ -PyAPI_FUNC(void) _Py_ForgetReference(PyObject *); -#endif - -#ifdef Py_REF_DEBUG -PyAPI_FUNC(Py_ssize_t) _Py_GetRefTotal(void); -#endif - - -/********************* String Literals ****************************************/ -/* This structure helps managing static strings. The basic usage goes like this: - Instead of doing - - r = PyObject_CallMethod(o, "foo", "args", ...); - - do - - _Py_IDENTIFIER(foo); - ... - r = _PyObject_CallMethodId(o, &PyId_foo, "args", ...); - - PyId_foo is a static variable, either on block level or file level. On first - usage, the string "foo" is interned, and the structures are linked. On interpreter - shutdown, all strings are released. - - Alternatively, _Py_static_string allows choosing the variable name. - _PyUnicode_FromId returns a borrowed reference to the interned string. - _PyObject_{Get,Set,Has}AttrId are __getattr__ versions using _Py_Identifier*. -*/ -typedef struct _Py_Identifier { - const char* string; - // Index in PyInterpreterState.unicode.ids.array. It is process-wide - // unique and must be initialized to -1. - Py_ssize_t index; -} _Py_Identifier; - -#if defined(NEEDS_PY_IDENTIFIER) || !defined(Py_BUILD_CORE) -// For now we are keeping _Py_IDENTIFIER for continued use -// in non-builtin extensions (and naughty PyPI modules). - -#define _Py_static_string_init(value) { .string = value, .index = -1 } -#define _Py_static_string(varname, value) static _Py_Identifier varname = _Py_static_string_init(value) -#define _Py_IDENTIFIER(varname) _Py_static_string(PyId_##varname, #varname) - -#endif /* NEEDS_PY_IDENTIFIER */ - -typedef int (*getbufferproc)(PyObject *, Py_buffer *, int); -typedef void (*releasebufferproc)(PyObject *, Py_buffer *); - -typedef PyObject *(*vectorcallfunc)(PyObject *callable, PyObject *const *args, - size_t nargsf, PyObject *kwnames); - - -typedef struct { - /* Number implementations must check *both* - arguments for proper type and implement the necessary conversions - in the slot functions themselves. */ - - binaryfunc nb_add; - binaryfunc nb_subtract; - binaryfunc nb_multiply; - binaryfunc nb_remainder; - binaryfunc nb_divmod; - ternaryfunc nb_power; - unaryfunc nb_negative; - unaryfunc nb_positive; - unaryfunc nb_absolute; - inquiry nb_bool; - unaryfunc nb_invert; - binaryfunc nb_lshift; - binaryfunc nb_rshift; - binaryfunc nb_and; - binaryfunc nb_xor; - binaryfunc nb_or; - unaryfunc nb_int; - void *nb_reserved; /* the slot formerly known as nb_long */ - unaryfunc nb_float; - - binaryfunc nb_inplace_add; - binaryfunc nb_inplace_subtract; - binaryfunc nb_inplace_multiply; - binaryfunc nb_inplace_remainder; - ternaryfunc nb_inplace_power; - binaryfunc nb_inplace_lshift; - binaryfunc nb_inplace_rshift; - binaryfunc nb_inplace_and; - binaryfunc nb_inplace_xor; - binaryfunc nb_inplace_or; - - binaryfunc nb_floor_divide; - binaryfunc nb_true_divide; - binaryfunc nb_inplace_floor_divide; - binaryfunc nb_inplace_true_divide; - - unaryfunc nb_index; - - binaryfunc nb_matrix_multiply; - binaryfunc nb_inplace_matrix_multiply; -} PyNumberMethods; - -typedef struct { - lenfunc sq_length; - binaryfunc sq_concat; - ssizeargfunc sq_repeat; - ssizeargfunc sq_item; - void *was_sq_slice; - ssizeobjargproc sq_ass_item; - void *was_sq_ass_slice; - objobjproc sq_contains; - - binaryfunc sq_inplace_concat; - ssizeargfunc sq_inplace_repeat; -} PySequenceMethods; - -typedef struct { - lenfunc mp_length; - binaryfunc mp_subscript; - objobjargproc mp_ass_subscript; -} PyMappingMethods; - -typedef PySendResult (*sendfunc)(PyObject *iter, PyObject *value, PyObject **result); - -typedef struct { - unaryfunc am_await; - unaryfunc am_aiter; - unaryfunc am_anext; - sendfunc am_send; -} PyAsyncMethods; - -typedef struct { - getbufferproc bf_getbuffer; - releasebufferproc bf_releasebuffer; -} PyBufferProcs; - -/* Allow printfunc in the tp_vectorcall_offset slot for - * backwards-compatibility */ -typedef Py_ssize_t printfunc; - -// If this structure is modified, Doc/includes/typestruct.h should be updated -// as well. -struct _typeobject { - PyObject_VAR_HEAD - const char *tp_name; /* For printing, in format "." */ - Py_ssize_t tp_basicsize, tp_itemsize; /* For allocation */ - - /* Methods to implement standard operations */ - - destructor tp_dealloc; - Py_ssize_t tp_vectorcall_offset; - getattrfunc tp_getattr; - setattrfunc tp_setattr; - PyAsyncMethods *tp_as_async; /* formerly known as tp_compare (Python 2) - or tp_reserved (Python 3) */ - reprfunc tp_repr; - - /* Method suites for standard classes */ - - PyNumberMethods *tp_as_number; - PySequenceMethods *tp_as_sequence; - PyMappingMethods *tp_as_mapping; - - /* More standard operations (here for binary compatibility) */ - - hashfunc tp_hash; - ternaryfunc tp_call; - reprfunc tp_str; - getattrofunc tp_getattro; - setattrofunc tp_setattro; - - /* Functions to access object as input/output buffer */ - PyBufferProcs *tp_as_buffer; - - /* Flags to define presence of optional/expanded features */ - unsigned long tp_flags; - - const char *tp_doc; /* Documentation string */ - - /* Assigned meaning in release 2.0 */ - /* call function for all accessible objects */ - traverseproc tp_traverse; - - /* delete references to contained objects */ - inquiry tp_clear; - - /* Assigned meaning in release 2.1 */ - /* rich comparisons */ - richcmpfunc tp_richcompare; - - /* weak reference enabler */ - Py_ssize_t tp_weaklistoffset; - - /* Iterators */ - getiterfunc tp_iter; - iternextfunc tp_iternext; - - /* Attribute descriptor and subclassing stuff */ - PyMethodDef *tp_methods; - PyMemberDef *tp_members; - PyGetSetDef *tp_getset; - // Strong reference on a heap type, borrowed reference on a static type - PyTypeObject *tp_base; - PyObject *tp_dict; - descrgetfunc tp_descr_get; - descrsetfunc tp_descr_set; - Py_ssize_t tp_dictoffset; - initproc tp_init; - allocfunc tp_alloc; - newfunc tp_new; - freefunc tp_free; /* Low-level free-memory routine */ - inquiry tp_is_gc; /* For PyObject_IS_GC */ - PyObject *tp_bases; - PyObject *tp_mro; /* method resolution order */ - PyObject *tp_cache; - PyObject *tp_subclasses; - PyObject *tp_weaklist; - destructor tp_del; - - /* Type attribute cache version tag. Added in version 2.6 */ - unsigned int tp_version_tag; - - destructor tp_finalize; - vectorcallfunc tp_vectorcall; -}; - -/* This struct is used by the specializer - * It should should be treated as an opaque blob - * by code other than the specializer and interpreter. */ -struct _specialization_cache { - PyObject *getitem; -}; - -/* The *real* layout of a type object when allocated on the heap */ -typedef struct _heaptypeobject { - /* Note: there's a dependency on the order of these members - in slotptr() in typeobject.c . */ - PyTypeObject ht_type; - PyAsyncMethods as_async; - PyNumberMethods as_number; - PyMappingMethods as_mapping; - PySequenceMethods as_sequence; /* as_sequence comes after as_mapping, - so that the mapping wins when both - the mapping and the sequence define - a given operator (e.g. __getitem__). - see add_operators() in typeobject.c . */ - PyBufferProcs as_buffer; - PyObject *ht_name, *ht_slots, *ht_qualname; - struct _dictkeysobject *ht_cached_keys; - PyObject *ht_module; - char *_ht_tpname; // Storage for "tp_name"; see PyType_FromModuleAndSpec - struct _specialization_cache _spec_cache; // For use by the specializer. - /* here are optional user slots, followed by the members. */ -} PyHeapTypeObject; - -PyAPI_FUNC(const char *) _PyType_Name(PyTypeObject *); -PyAPI_FUNC(PyObject *) _PyType_Lookup(PyTypeObject *, PyObject *); -PyAPI_FUNC(PyObject *) _PyType_LookupId(PyTypeObject *, _Py_Identifier *); -PyAPI_FUNC(PyObject *) _PyObject_LookupSpecialId(PyObject *, _Py_Identifier *); -#ifndef Py_BUILD_CORE -// Backward compatibility for 3rd-party extensions -// that may be using the old name. -#define _PyObject_LookupSpecial _PyObject_LookupSpecialId -#endif -PyAPI_FUNC(PyTypeObject *) _PyType_CalculateMetaclass(PyTypeObject *, PyObject *); -PyAPI_FUNC(PyObject *) _PyType_GetDocFromInternalDoc(const char *, const char *); -PyAPI_FUNC(PyObject *) _PyType_GetTextSignatureFromInternalDoc(const char *, const char *); -PyAPI_FUNC(PyObject *) PyType_GetModuleByDef(PyTypeObject *, PyModuleDef *); - -PyAPI_FUNC(int) PyObject_Print(PyObject *, FILE *, int); -PyAPI_FUNC(void) _Py_BreakPoint(void); -PyAPI_FUNC(void) _PyObject_Dump(PyObject *); -PyAPI_FUNC(int) _PyObject_IsFreed(PyObject *); - -PyAPI_FUNC(int) _PyObject_IsAbstract(PyObject *); -PyAPI_FUNC(PyObject *) _PyObject_GetAttrId(PyObject *, _Py_Identifier *); -PyAPI_FUNC(int) _PyObject_SetAttrId(PyObject *, _Py_Identifier *, PyObject *); -/* Replacements of PyObject_GetAttr() and _PyObject_GetAttrId() which - don't raise AttributeError. - - Return 1 and set *result != NULL if an attribute is found. - Return 0 and set *result == NULL if an attribute is not found; - an AttributeError is silenced. - Return -1 and set *result == NULL if an error other than AttributeError - is raised. -*/ -PyAPI_FUNC(int) _PyObject_LookupAttr(PyObject *, PyObject *, PyObject **); -PyAPI_FUNC(int) _PyObject_LookupAttrId(PyObject *, _Py_Identifier *, PyObject **); - -PyAPI_FUNC(int) _PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **method); - -PyAPI_FUNC(PyObject **) _PyObject_GetDictPtr(PyObject *); -PyAPI_FUNC(PyObject *) _PyObject_NextNotImplemented(PyObject *); -PyAPI_FUNC(void) PyObject_CallFinalizer(PyObject *); -PyAPI_FUNC(int) PyObject_CallFinalizerFromDealloc(PyObject *); - -/* Same as PyObject_Generic{Get,Set}Attr, but passing the attributes - dict as the last parameter. */ -PyAPI_FUNC(PyObject *) -_PyObject_GenericGetAttrWithDict(PyObject *, PyObject *, PyObject *, int); -PyAPI_FUNC(int) -_PyObject_GenericSetAttrWithDict(PyObject *, PyObject *, - PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) _PyObject_FunctionStr(PyObject *); - -/* Safely decref `op` and set `op` to `op2`. - * - * As in case of Py_CLEAR "the obvious" code can be deadly: - * - * Py_DECREF(op); - * op = op2; - * - * The safe way is: - * - * Py_SETREF(op, op2); - * - * That arranges to set `op` to `op2` _before_ decref'ing, so that any code - * triggered as a side-effect of `op` getting torn down no longer believes - * `op` points to a valid object. - * - * Py_XSETREF is a variant of Py_SETREF that uses Py_XDECREF instead of - * Py_DECREF. - */ - -#define Py_SETREF(op, op2) \ - do { \ - PyObject *_py_tmp = _PyObject_CAST(op); \ - (op) = (op2); \ - Py_DECREF(_py_tmp); \ - } while (0) - -#define Py_XSETREF(op, op2) \ - do { \ - PyObject *_py_tmp = _PyObject_CAST(op); \ - (op) = (op2); \ - Py_XDECREF(_py_tmp); \ - } while (0) - - -PyAPI_DATA(PyTypeObject) _PyNone_Type; -PyAPI_DATA(PyTypeObject) _PyNotImplemented_Type; - -/* Maps Py_LT to Py_GT, ..., Py_GE to Py_LE. - * Defined in object.c. - */ -PyAPI_DATA(int) _Py_SwappedOp[]; - -PyAPI_FUNC(void) -_PyDebugAllocatorStats(FILE *out, const char *block_name, int num_blocks, - size_t sizeof_block); -PyAPI_FUNC(void) -_PyObject_DebugTypeStats(FILE *out); - -/* Define a pair of assertion macros: - _PyObject_ASSERT_FROM(), _PyObject_ASSERT_WITH_MSG() and _PyObject_ASSERT(). - - These work like the regular C assert(), in that they will abort the - process with a message on stderr if the given condition fails to hold, - but compile away to nothing if NDEBUG is defined. - - However, before aborting, Python will also try to call _PyObject_Dump() on - the given object. This may be of use when investigating bugs in which a - particular object is corrupt (e.g. buggy a tp_visit method in an extension - module breaking the garbage collector), to help locate the broken objects. - - The WITH_MSG variant allows you to supply an additional message that Python - will attempt to print to stderr, after the object dump. */ -#ifdef NDEBUG - /* No debugging: compile away the assertions: */ -# define _PyObject_ASSERT_FROM(obj, expr, msg, filename, lineno, func) \ - ((void)0) -#else - /* With debugging: generate checks: */ -# define _PyObject_ASSERT_FROM(obj, expr, msg, filename, lineno, func) \ - ((expr) \ - ? (void)(0) \ - : _PyObject_AssertFailed((obj), Py_STRINGIFY(expr), \ - (msg), (filename), (lineno), (func))) -#endif - -#define _PyObject_ASSERT_WITH_MSG(obj, expr, msg) \ - _PyObject_ASSERT_FROM(obj, expr, msg, __FILE__, __LINE__, __func__) -#define _PyObject_ASSERT(obj, expr) \ - _PyObject_ASSERT_WITH_MSG(obj, expr, NULL) - -#define _PyObject_ASSERT_FAILED_MSG(obj, msg) \ - _PyObject_AssertFailed((obj), NULL, (msg), __FILE__, __LINE__, __func__) - -/* Declare and define _PyObject_AssertFailed() even when NDEBUG is defined, - to avoid causing compiler/linker errors when building extensions without - NDEBUG against a Python built with NDEBUG defined. - - msg, expr and function can be NULL. */ -PyAPI_FUNC(void) _Py_NO_RETURN _PyObject_AssertFailed( - PyObject *obj, - const char *expr, - const char *msg, - const char *file, - int line, - const char *function); - -/* Check if an object is consistent. For example, ensure that the reference - counter is greater than or equal to 1, and ensure that ob_type is not NULL. - - Call _PyObject_AssertFailed() if the object is inconsistent. - - If check_content is zero, only check header fields: reduce the overhead. - - The function always return 1. The return value is just here to be able to - write: - - assert(_PyObject_CheckConsistency(obj, 1)); */ -PyAPI_FUNC(int) _PyObject_CheckConsistency( - PyObject *op, - int check_content); - - -/* Trashcan mechanism, thanks to Christian Tismer. - -When deallocating a container object, it's possible to trigger an unbounded -chain of deallocations, as each Py_DECREF in turn drops the refcount on "the -next" object in the chain to 0. This can easily lead to stack overflows, -especially in threads (which typically have less stack space to work with). - -A container object can avoid this by bracketing the body of its tp_dealloc -function with a pair of macros: - -static void -mytype_dealloc(mytype *p) -{ - ... declarations go here ... - - PyObject_GC_UnTrack(p); // must untrack first - Py_TRASHCAN_BEGIN(p, mytype_dealloc) - ... The body of the deallocator goes here, including all calls ... - ... to Py_DECREF on contained objects. ... - Py_TRASHCAN_END // there should be no code after this -} - -CAUTION: Never return from the middle of the body! If the body needs to -"get out early", put a label immediately before the Py_TRASHCAN_END -call, and goto it. Else the call-depth counter (see below) will stay -above 0 forever, and the trashcan will never get emptied. - -How it works: The BEGIN macro increments a call-depth counter. So long -as this counter is small, the body of the deallocator is run directly without -further ado. But if the counter gets large, it instead adds p to a list of -objects to be deallocated later, skips the body of the deallocator, and -resumes execution after the END macro. The tp_dealloc routine then returns -without deallocating anything (and so unbounded call-stack depth is avoided). - -When the call stack finishes unwinding again, code generated by the END macro -notices this, and calls another routine to deallocate all the objects that -may have been added to the list of deferred deallocations. In effect, a -chain of N deallocations is broken into (N-1)/(_PyTrash_UNWIND_LEVEL-1) pieces, -with the call stack never exceeding a depth of _PyTrash_UNWIND_LEVEL. - -Since the tp_dealloc of a subclass typically calls the tp_dealloc of the base -class, we need to ensure that the trashcan is only triggered on the tp_dealloc -of the actual class being deallocated. Otherwise we might end up with a -partially-deallocated object. To check this, the tp_dealloc function must be -passed as second argument to Py_TRASHCAN_BEGIN(). -*/ - -/* Python 3.9 private API, invoked by the macros below. */ -PyAPI_FUNC(int) _PyTrash_begin(PyThreadState *tstate, PyObject *op); -PyAPI_FUNC(void) _PyTrash_end(PyThreadState *tstate); -/* Python 3.10 private API, invoked by the Py_TRASHCAN_BEGIN(). */ -PyAPI_FUNC(int) _PyTrash_cond(PyObject *op, destructor dealloc); - -#define Py_TRASHCAN_BEGIN_CONDITION(op, cond) \ - do { \ - PyThreadState *_tstate = NULL; \ - /* If "cond" is false, then _tstate remains NULL and the deallocator \ - * is run normally without involving the trashcan */ \ - if (cond) { \ - _tstate = PyThreadState_Get(); \ - if (_PyTrash_begin(_tstate, _PyObject_CAST(op))) { \ - break; \ - } \ - } - /* The body of the deallocator is here. */ -#define Py_TRASHCAN_END \ - if (_tstate) { \ - _PyTrash_end(_tstate); \ - } \ - } while (0); - -#define Py_TRASHCAN_BEGIN(op, dealloc) \ - Py_TRASHCAN_BEGIN_CONDITION(op, \ - _PyTrash_cond(_PyObject_CAST(op), (destructor)dealloc)) - -/* The following two macros, Py_TRASHCAN_SAFE_BEGIN and - * Py_TRASHCAN_SAFE_END, are deprecated since version 3.11 and - * will be removed in the future. - * Use Py_TRASHCAN_BEGIN and Py_TRASHCAN_END instead. - */ -Py_DEPRECATED(3.11) typedef int UsingDeprecatedTrashcanMacro; -#define Py_TRASHCAN_SAFE_BEGIN(op) \ - do { \ - UsingDeprecatedTrashcanMacro cond=1; \ - Py_TRASHCAN_BEGIN_CONDITION(op, cond); -#define Py_TRASHCAN_SAFE_END(op) \ - Py_TRASHCAN_END; \ - } while(0); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/objimpl.h b/_Pre_Builds/_Python311_cpp/include/cpython/objimpl.h deleted file mode 100644 index d7c76ea..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/objimpl.h +++ /dev/null @@ -1,89 +0,0 @@ -#ifndef Py_CPYTHON_OBJIMPL_H -# error "this header file must not be included directly" -#endif - -#define _PyObject_SIZE(typeobj) ( (typeobj)->tp_basicsize ) - -/* _PyObject_VAR_SIZE returns the number of bytes (as size_t) allocated for a - vrbl-size object with nitems items, exclusive of gc overhead (if any). The - value is rounded up to the closest multiple of sizeof(void *), in order to - ensure that pointer fields at the end of the object are correctly aligned - for the platform (this is of special importance for subclasses of, e.g., - str or int, so that pointers can be stored after the embedded data). - - Note that there's no memory wastage in doing this, as malloc has to - return (at worst) pointer-aligned memory anyway. -*/ -#if ((SIZEOF_VOID_P - 1) & SIZEOF_VOID_P) != 0 -# error "_PyObject_VAR_SIZE requires SIZEOF_VOID_P be a power of 2" -#endif - -#define _PyObject_VAR_SIZE(typeobj, nitems) \ - _Py_SIZE_ROUND_UP((typeobj)->tp_basicsize + \ - (nitems)*(typeobj)->tp_itemsize, \ - SIZEOF_VOID_P) - - -/* This example code implements an object constructor with a custom - allocator, where PyObject_New is inlined, and shows the important - distinction between two steps (at least): - 1) the actual allocation of the object storage; - 2) the initialization of the Python specific fields - in this storage with PyObject_{Init, InitVar}. - - PyObject * - YourObject_New(...) - { - PyObject *op; - - op = (PyObject *) Your_Allocator(_PyObject_SIZE(YourTypeStruct)); - if (op == NULL) { - return PyErr_NoMemory(); - } - - PyObject_Init(op, &YourTypeStruct); - - op->ob_field = value; - ... - return op; - } - - Note that in C++, the use of the new operator usually implies that - the 1st step is performed automatically for you, so in a C++ class - constructor you would start directly with PyObject_Init/InitVar. */ - - -typedef struct { - /* user context passed as the first argument to the 2 functions */ - void *ctx; - - /* allocate an arena of size bytes */ - void* (*alloc) (void *ctx, size_t size); - - /* free an arena */ - void (*free) (void *ctx, void *ptr, size_t size); -} PyObjectArenaAllocator; - -/* Get the arena allocator. */ -PyAPI_FUNC(void) PyObject_GetArenaAllocator(PyObjectArenaAllocator *allocator); - -/* Set the arena allocator. */ -PyAPI_FUNC(void) PyObject_SetArenaAllocator(PyObjectArenaAllocator *allocator); - - -/* Test if an object implements the garbage collector protocol */ -PyAPI_FUNC(int) PyObject_IS_GC(PyObject *obj); - - -/* Code built with Py_BUILD_CORE must include pycore_gc.h instead which - defines a different _PyGC_FINALIZED() macro. */ -#ifndef Py_BUILD_CORE - // Kept for backward compatibility with Python 3.8 -# define _PyGC_FINALIZED(o) PyObject_GC_IsFinalized(o) -#endif - - -// Test if a type supports weak references -PyAPI_FUNC(int) PyType_SUPPORTS_WEAKREFS(PyTypeObject *type); - -PyAPI_FUNC(PyObject **) PyObject_GET_WEAKREFS_LISTPTR(PyObject *op); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/odictobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/odictobject.h deleted file mode 100644 index e070413..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/odictobject.h +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef Py_ODICTOBJECT_H -#define Py_ODICTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* OrderedDict */ -/* This API is optional and mostly redundant. */ - -#ifndef Py_LIMITED_API - -typedef struct _odictobject PyODictObject; - -PyAPI_DATA(PyTypeObject) PyODict_Type; -PyAPI_DATA(PyTypeObject) PyODictIter_Type; -PyAPI_DATA(PyTypeObject) PyODictKeys_Type; -PyAPI_DATA(PyTypeObject) PyODictItems_Type; -PyAPI_DATA(PyTypeObject) PyODictValues_Type; - -#define PyODict_Check(op) PyObject_TypeCheck(op, &PyODict_Type) -#define PyODict_CheckExact(op) Py_IS_TYPE(op, &PyODict_Type) -#define PyODict_SIZE(op) PyDict_GET_SIZE((op)) - -PyAPI_FUNC(PyObject *) PyODict_New(void); -PyAPI_FUNC(int) PyODict_SetItem(PyObject *od, PyObject *key, PyObject *item); -PyAPI_FUNC(int) PyODict_DelItem(PyObject *od, PyObject *key); - -/* wrappers around PyDict* functions */ -#define PyODict_GetItem(od, key) PyDict_GetItem(_PyObject_CAST(od), key) -#define PyODict_GetItemWithError(od, key) \ - PyDict_GetItemWithError(_PyObject_CAST(od), key) -#define PyODict_Contains(od, key) PyDict_Contains(_PyObject_CAST(od), key) -#define PyODict_Size(od) PyDict_Size(_PyObject_CAST(od)) -#define PyODict_GetItemString(od, key) \ - PyDict_GetItemString(_PyObject_CAST(od), key) - -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ODICTOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/picklebufobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/picklebufobject.h deleted file mode 100644 index 0df2561..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/picklebufobject.h +++ /dev/null @@ -1,31 +0,0 @@ -/* PickleBuffer object. This is built-in for ease of use from third-party - * C extensions. - */ - -#ifndef Py_PICKLEBUFOBJECT_H -#define Py_PICKLEBUFOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API - -PyAPI_DATA(PyTypeObject) PyPickleBuffer_Type; - -#define PyPickleBuffer_Check(op) Py_IS_TYPE(op, &PyPickleBuffer_Type) - -/* Create a PickleBuffer redirecting to the given buffer-enabled object */ -PyAPI_FUNC(PyObject *) PyPickleBuffer_FromObject(PyObject *); -/* Get the PickleBuffer's underlying view to the original object - * (NULL if released) - */ -PyAPI_FUNC(const Py_buffer *) PyPickleBuffer_GetBuffer(PyObject *); -/* Release the PickleBuffer. Returns 0 on success, -1 on error. */ -PyAPI_FUNC(int) PyPickleBuffer_Release(PyObject *); - -#endif /* !Py_LIMITED_API */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PICKLEBUFOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pthread_stubs.h b/_Pre_Builds/_Python311_cpp/include/cpython/pthread_stubs.h deleted file mode 100644 index d95ee03..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pthread_stubs.h +++ /dev/null @@ -1,88 +0,0 @@ -#ifndef Py_CPYTHON_PTRHEAD_STUBS_H -#define Py_CPYTHON_PTRHEAD_STUBS_H - -#if !defined(HAVE_PTHREAD_STUBS) -# error "this header file requires stubbed pthreads." -#endif - -#ifndef _POSIX_THREADS -# define _POSIX_THREADS 1 -#endif - -/* Minimal pthread stubs for CPython. - * - * The stubs implement the minimum pthread API for CPython. - * - pthread_create() fails. - * - pthread_exit() calls exit(0). - * - pthread_key_*() functions implement minimal TSS without destructor. - * - all other functions do nothing and return 0. - */ - -#ifdef __wasi__ -// WASI's bits/alltypes.h provides type definitions when __NEED_ is set. -// The header file can be included multiple times. -# define __NEED_pthread_cond_t 1 -# define __NEED_pthread_condattr_t 1 -# define __NEED_pthread_mutex_t 1 -# define __NEED_pthread_mutexattr_t 1 -# define __NEED_pthread_key_t 1 -# define __NEED_pthread_t 1 -# define __NEED_pthread_attr_t 1 -# include -#else -typedef struct { void *__x; } pthread_cond_t; -typedef struct { unsigned __attr; } pthread_condattr_t; -typedef struct { void *__x; } pthread_mutex_t; -typedef struct { unsigned __attr; } pthread_mutexattr_t; -typedef unsigned pthread_key_t; -typedef unsigned pthread_t; -typedef struct { unsigned __attr; } pthread_attr_t; -#endif - -// mutex -PyAPI_FUNC(int) pthread_mutex_init(pthread_mutex_t *restrict mutex, - const pthread_mutexattr_t *restrict attr); -PyAPI_FUNC(int) pthread_mutex_destroy(pthread_mutex_t *mutex); -PyAPI_FUNC(int) pthread_mutex_trylock(pthread_mutex_t *mutex); -PyAPI_FUNC(int) pthread_mutex_lock(pthread_mutex_t *mutex); -PyAPI_FUNC(int) pthread_mutex_unlock(pthread_mutex_t *mutex); - -// condition -PyAPI_FUNC(int) pthread_cond_init(pthread_cond_t *restrict cond, - const pthread_condattr_t *restrict attr); -PyAPI_FUNC(int) pthread_cond_destroy(pthread_cond_t *cond); -PyAPI_FUNC(int) pthread_cond_wait(pthread_cond_t *restrict cond, - pthread_mutex_t *restrict mutex); -PyAPI_FUNC(int) pthread_cond_timedwait(pthread_cond_t *restrict cond, - pthread_mutex_t *restrict mutex, - const struct timespec *restrict abstime); -PyAPI_FUNC(int) pthread_cond_signal(pthread_cond_t *cond); -PyAPI_FUNC(int) pthread_condattr_init(pthread_condattr_t *attr); -PyAPI_FUNC(int) pthread_condattr_setclock( - pthread_condattr_t *attr, clockid_t clock_id); - -// pthread -PyAPI_FUNC(int) pthread_create(pthread_t *restrict thread, - const pthread_attr_t *restrict attr, - void *(*start_routine)(void *), - void *restrict arg); -PyAPI_FUNC(int) pthread_detach(pthread_t thread); -PyAPI_FUNC(pthread_t) pthread_self(void); -PyAPI_FUNC(int) pthread_exit(void *retval) __attribute__ ((__noreturn__)); -PyAPI_FUNC(int) pthread_attr_init(pthread_attr_t *attr); -PyAPI_FUNC(int) pthread_attr_setstacksize(pthread_attr_t *attr, size_t stacksize); -PyAPI_FUNC(int) pthread_attr_destroy(pthread_attr_t *attr); - - -// pthread_key -#ifndef PTHREAD_KEYS_MAX -# define PTHREAD_KEYS_MAX 128 -#endif - -PyAPI_FUNC(int) pthread_key_create(pthread_key_t *key, - void (*destr_function)(void *)); -PyAPI_FUNC(int) pthread_key_delete(pthread_key_t key); -PyAPI_FUNC(void *) pthread_getspecific(pthread_key_t key); -PyAPI_FUNC(int) pthread_setspecific(pthread_key_t key, const void *value); - -#endif // Py_CPYTHON_PTRHEAD_STUBS_H diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pyctype.h b/_Pre_Builds/_Python311_cpp/include/cpython/pyctype.h deleted file mode 100644 index 729d932..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pyctype.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef PYCTYPE_H -#define PYCTYPE_H -#ifdef __cplusplus -extern "C" { -#endif - -#define PY_CTF_LOWER 0x01 -#define PY_CTF_UPPER 0x02 -#define PY_CTF_ALPHA (PY_CTF_LOWER|PY_CTF_UPPER) -#define PY_CTF_DIGIT 0x04 -#define PY_CTF_ALNUM (PY_CTF_ALPHA|PY_CTF_DIGIT) -#define PY_CTF_SPACE 0x08 -#define PY_CTF_XDIGIT 0x10 - -PyAPI_DATA(const unsigned int) _Py_ctype_table[256]; - -/* Unlike their C counterparts, the following macros are not meant to - * handle an int with any of the values [EOF, 0-UCHAR_MAX]. The argument - * must be a signed/unsigned char. */ -#define Py_ISLOWER(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_LOWER) -#define Py_ISUPPER(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_UPPER) -#define Py_ISALPHA(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_ALPHA) -#define Py_ISDIGIT(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_DIGIT) -#define Py_ISXDIGIT(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_XDIGIT) -#define Py_ISALNUM(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_ALNUM) -#define Py_ISSPACE(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_SPACE) - -PyAPI_DATA(const unsigned char) _Py_ctype_tolower[256]; -PyAPI_DATA(const unsigned char) _Py_ctype_toupper[256]; - -#define Py_TOLOWER(c) (_Py_ctype_tolower[Py_CHARMASK(c)]) -#define Py_TOUPPER(c) (_Py_ctype_toupper[Py_CHARMASK(c)]) - -#ifdef __cplusplus -} -#endif -#endif /* !PYCTYPE_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pydebug.h b/_Pre_Builds/_Python311_cpp/include/cpython/pydebug.h deleted file mode 100644 index cab799f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pydebug.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_PYDEBUG_H -#define Py_PYDEBUG_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(int) Py_DebugFlag; -PyAPI_DATA(int) Py_VerboseFlag; -PyAPI_DATA(int) Py_QuietFlag; -PyAPI_DATA(int) Py_InteractiveFlag; -PyAPI_DATA(int) Py_InspectFlag; -PyAPI_DATA(int) Py_OptimizeFlag; -PyAPI_DATA(int) Py_NoSiteFlag; -PyAPI_DATA(int) Py_BytesWarningFlag; -PyAPI_DATA(int) Py_FrozenFlag; -PyAPI_DATA(int) Py_IgnoreEnvironmentFlag; -PyAPI_DATA(int) Py_DontWriteBytecodeFlag; -PyAPI_DATA(int) Py_NoUserSiteDirectory; -PyAPI_DATA(int) Py_UnbufferedStdioFlag; -PyAPI_DATA(int) Py_HashRandomizationFlag; -PyAPI_DATA(int) Py_IsolatedFlag; - -#ifdef MS_WINDOWS -PyAPI_DATA(int) Py_LegacyWindowsFSEncodingFlag; -PyAPI_DATA(int) Py_LegacyWindowsStdioFlag; -#endif - -/* this is a wrapper around getenv() that pays attention to - Py_IgnoreEnvironmentFlag. It should be used for getting variables like - PYTHONPATH and PYTHONHOME from the environment */ -PyAPI_DATA(char*) Py_GETENV(const char *name); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYDEBUG_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pyerrors.h b/_Pre_Builds/_Python311_cpp/include/cpython/pyerrors.h deleted file mode 100644 index 47d80e3..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pyerrors.h +++ /dev/null @@ -1,179 +0,0 @@ -#ifndef Py_CPYTHON_ERRORS_H -# error "this header file must not be included directly" -#endif - -/* Error objects */ - -/* PyException_HEAD defines the initial segment of every exception class. */ -#define PyException_HEAD PyObject_HEAD PyObject *dict;\ - PyObject *args; PyObject *notes; PyObject *traceback;\ - PyObject *context; PyObject *cause;\ - char suppress_context; - -typedef struct { - PyException_HEAD -} PyBaseExceptionObject; - -typedef struct { - PyException_HEAD - PyObject *msg; - PyObject *excs; -} PyBaseExceptionGroupObject; - -typedef struct { - PyException_HEAD - PyObject *msg; - PyObject *filename; - PyObject *lineno; - PyObject *offset; - PyObject *end_lineno; - PyObject *end_offset; - PyObject *text; - PyObject *print_file_and_line; -} PySyntaxErrorObject; - -typedef struct { - PyException_HEAD - PyObject *msg; - PyObject *name; - PyObject *path; -} PyImportErrorObject; - -typedef struct { - PyException_HEAD - PyObject *encoding; - PyObject *object; - Py_ssize_t start; - Py_ssize_t end; - PyObject *reason; -} PyUnicodeErrorObject; - -typedef struct { - PyException_HEAD - PyObject *code; -} PySystemExitObject; - -typedef struct { - PyException_HEAD - PyObject *myerrno; - PyObject *strerror; - PyObject *filename; - PyObject *filename2; -#ifdef MS_WINDOWS - PyObject *winerror; -#endif - Py_ssize_t written; /* only for BlockingIOError, -1 otherwise */ -} PyOSErrorObject; - -typedef struct { - PyException_HEAD - PyObject *value; -} PyStopIterationObject; - -typedef struct { - PyException_HEAD - PyObject *name; -} PyNameErrorObject; - -typedef struct { - PyException_HEAD - PyObject *obj; - PyObject *name; -} PyAttributeErrorObject; - -/* Compatibility typedefs */ -typedef PyOSErrorObject PyEnvironmentErrorObject; -#ifdef MS_WINDOWS -typedef PyOSErrorObject PyWindowsErrorObject; -#endif - -/* Error handling definitions */ - -PyAPI_FUNC(void) _PyErr_SetKeyError(PyObject *); -PyAPI_FUNC(_PyErr_StackItem*) _PyErr_GetTopmostException(PyThreadState *tstate); -PyAPI_FUNC(PyObject*) _PyErr_GetHandledException(PyThreadState *); -PyAPI_FUNC(void) _PyErr_SetHandledException(PyThreadState *, PyObject *); -PyAPI_FUNC(void) _PyErr_GetExcInfo(PyThreadState *, PyObject **, PyObject **, PyObject **); - -/* Context manipulation (PEP 3134) */ - -PyAPI_FUNC(void) _PyErr_ChainExceptions(PyObject *, PyObject *, PyObject *); - -/* Like PyErr_Format(), but saves current exception as __context__ and - __cause__. - */ -PyAPI_FUNC(PyObject *) _PyErr_FormatFromCause( - PyObject *exception, - const char *format, /* ASCII-encoded string */ - ... - ); - -/* In exceptions.c */ - -/* Helper that attempts to replace the current exception with one of the - * same type but with a prefix added to the exception text. The resulting - * exception description looks like: - * - * prefix (exc_type: original_exc_str) - * - * Only some exceptions can be safely replaced. If the function determines - * it isn't safe to perform the replacement, it will leave the original - * unmodified exception in place. - * - * Returns a borrowed reference to the new exception (if any), NULL if the - * existing exception was left in place. - */ -PyAPI_FUNC(PyObject *) _PyErr_TrySetFromCause( - const char *prefix_format, /* ASCII-encoded string */ - ... - ); - -/* In signalmodule.c */ - -int PySignal_SetWakeupFd(int fd); -PyAPI_FUNC(int) _PyErr_CheckSignals(void); - -/* Support for adding program text to SyntaxErrors */ - -PyAPI_FUNC(void) PyErr_SyntaxLocationObject( - PyObject *filename, - int lineno, - int col_offset); - -PyAPI_FUNC(void) PyErr_RangedSyntaxLocationObject( - PyObject *filename, - int lineno, - int col_offset, - int end_lineno, - int end_col_offset); - -PyAPI_FUNC(PyObject *) PyErr_ProgramTextObject( - PyObject *filename, - int lineno); - -PyAPI_FUNC(PyObject *) _PyErr_ProgramDecodedTextObject( - PyObject *filename, - int lineno, - const char* encoding); - -PyAPI_FUNC(PyObject *) _PyUnicodeTranslateError_Create( - PyObject *object, - Py_ssize_t start, - Py_ssize_t end, - const char *reason /* UTF-8 encoded string */ - ); - -PyAPI_FUNC(void) _PyErr_WriteUnraisableMsg( - const char *err_msg, - PyObject *obj); - -PyAPI_FUNC(void) _Py_NO_RETURN _Py_FatalErrorFunc( - const char *func, - const char *message); - -PyAPI_FUNC(void) _Py_NO_RETURN _Py_FatalErrorFormat( - const char *func, - const char *format, - ...); - -#define Py_FatalError(message) _Py_FatalErrorFunc(__func__, message) diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pyfpe.h b/_Pre_Builds/_Python311_cpp/include/cpython/pyfpe.h deleted file mode 100644 index cc2def6..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pyfpe.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef Py_PYFPE_H -#define Py_PYFPE_H -/* Header excluded from the stable API */ -#ifndef Py_LIMITED_API - -/* These macros used to do something when Python was built with --with-fpectl, - * but support for that was dropped in 3.7. We continue to define them though, - * to avoid breaking API users. - */ - -#define PyFPE_START_PROTECT(err_string, leave_stmt) -#define PyFPE_END_PROTECT(v) - -#endif /* !defined(Py_LIMITED_API) */ -#endif /* !Py_PYFPE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pyframe.h b/_Pre_Builds/_Python311_cpp/include/cpython/pyframe.h deleted file mode 100644 index 1dc634c..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pyframe.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef Py_CPYTHON_PYFRAME_H -# error "this header file must not be included directly" -#endif - -PyAPI_DATA(PyTypeObject) PyFrame_Type; - -#define PyFrame_Check(op) Py_IS_TYPE((op), &PyFrame_Type) - -PyAPI_FUNC(PyFrameObject *) PyFrame_GetBack(PyFrameObject *frame); -PyAPI_FUNC(PyObject *) PyFrame_GetLocals(PyFrameObject *frame); - -PyAPI_FUNC(PyObject *) PyFrame_GetGlobals(PyFrameObject *frame); -PyAPI_FUNC(PyObject *) PyFrame_GetBuiltins(PyFrameObject *frame); - -PyAPI_FUNC(PyObject *) PyFrame_GetGenerator(PyFrameObject *frame); -PyAPI_FUNC(int) PyFrame_GetLasti(PyFrameObject *frame); - diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pylifecycle.h b/_Pre_Builds/_Python311_cpp/include/cpython/pylifecycle.h deleted file mode 100644 index bb5b07e..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pylifecycle.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef Py_CPYTHON_PYLIFECYCLE_H -# error "this header file must not be included directly" -#endif - -/* Py_FrozenMain is kept out of the Limited API until documented and present - in all builds of Python */ -PyAPI_FUNC(int) Py_FrozenMain(int argc, char **argv); - -/* Only used by applications that embed the interpreter and need to - * override the standard encoding determination mechanism - */ -Py_DEPRECATED(3.11) PyAPI_FUNC(int) Py_SetStandardStreamEncoding( - const char *encoding, - const char *errors); - -/* PEP 432 Multi-phase initialization API (Private while provisional!) */ - -PyAPI_FUNC(PyStatus) Py_PreInitialize( - const PyPreConfig *src_config); -PyAPI_FUNC(PyStatus) Py_PreInitializeFromBytesArgs( - const PyPreConfig *src_config, - Py_ssize_t argc, - char **argv); -PyAPI_FUNC(PyStatus) Py_PreInitializeFromArgs( - const PyPreConfig *src_config, - Py_ssize_t argc, - wchar_t **argv); - -PyAPI_FUNC(int) _Py_IsCoreInitialized(void); - - -/* Initialization and finalization */ - -PyAPI_FUNC(PyStatus) Py_InitializeFromConfig( - const PyConfig *config); -PyAPI_FUNC(PyStatus) _Py_InitializeMain(void); - -PyAPI_FUNC(int) Py_RunMain(void); - - -PyAPI_FUNC(void) _Py_NO_RETURN Py_ExitStatusException(PyStatus err); - -/* Restore signals that the interpreter has called SIG_IGN on to SIG_DFL. */ -PyAPI_FUNC(void) _Py_RestoreSignals(void); - -PyAPI_FUNC(int) Py_FdIsInteractive(FILE *, const char *); -PyAPI_FUNC(int) _Py_FdIsInteractive(FILE *fp, PyObject *filename); - -Py_DEPRECATED(3.11) PyAPI_FUNC(void) _Py_SetProgramFullPath(const wchar_t *); - -PyAPI_FUNC(const char *) _Py_gitidentifier(void); -PyAPI_FUNC(const char *) _Py_gitversion(void); - -PyAPI_FUNC(int) _Py_IsFinalizing(void); - -/* Random */ -PyAPI_FUNC(int) _PyOS_URandom(void *buffer, Py_ssize_t size); -PyAPI_FUNC(int) _PyOS_URandomNonblock(void *buffer, Py_ssize_t size); - -/* Legacy locale support */ -PyAPI_FUNC(int) _Py_CoerceLegacyLocale(int warn); -PyAPI_FUNC(int) _Py_LegacyLocaleDetected(int warn); -PyAPI_FUNC(char *) _Py_SetLocaleFromEnv(int category); - -PyAPI_FUNC(PyThreadState *) _Py_NewInterpreter(int isolated_subinterpreter); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pymem.h b/_Pre_Builds/_Python311_cpp/include/cpython/pymem.h deleted file mode 100644 index d1054d7..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pymem.h +++ /dev/null @@ -1,98 +0,0 @@ -#ifndef Py_CPYTHON_PYMEM_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(void *) PyMem_RawMalloc(size_t size); -PyAPI_FUNC(void *) PyMem_RawCalloc(size_t nelem, size_t elsize); -PyAPI_FUNC(void *) PyMem_RawRealloc(void *ptr, size_t new_size); -PyAPI_FUNC(void) PyMem_RawFree(void *ptr); - -/* Try to get the allocators name set by _PyMem_SetupAllocators(). */ -PyAPI_FUNC(const char*) _PyMem_GetCurrentAllocatorName(void); - -/* strdup() using PyMem_RawMalloc() */ -PyAPI_FUNC(char *) _PyMem_RawStrdup(const char *str); - -/* strdup() using PyMem_Malloc() */ -PyAPI_FUNC(char *) _PyMem_Strdup(const char *str); - -/* wcsdup() using PyMem_RawMalloc() */ -PyAPI_FUNC(wchar_t*) _PyMem_RawWcsdup(const wchar_t *str); - - -typedef enum { - /* PyMem_RawMalloc(), PyMem_RawRealloc() and PyMem_RawFree() */ - PYMEM_DOMAIN_RAW, - - /* PyMem_Malloc(), PyMem_Realloc() and PyMem_Free() */ - PYMEM_DOMAIN_MEM, - - /* PyObject_Malloc(), PyObject_Realloc() and PyObject_Free() */ - PYMEM_DOMAIN_OBJ -} PyMemAllocatorDomain; - -typedef enum { - PYMEM_ALLOCATOR_NOT_SET = 0, - PYMEM_ALLOCATOR_DEFAULT = 1, - PYMEM_ALLOCATOR_DEBUG = 2, - PYMEM_ALLOCATOR_MALLOC = 3, - PYMEM_ALLOCATOR_MALLOC_DEBUG = 4, -#ifdef WITH_PYMALLOC - PYMEM_ALLOCATOR_PYMALLOC = 5, - PYMEM_ALLOCATOR_PYMALLOC_DEBUG = 6, -#endif -} PyMemAllocatorName; - - -typedef struct { - /* user context passed as the first argument to the 4 functions */ - void *ctx; - - /* allocate a memory block */ - void* (*malloc) (void *ctx, size_t size); - - /* allocate a memory block initialized by zeros */ - void* (*calloc) (void *ctx, size_t nelem, size_t elsize); - - /* allocate or resize a memory block */ - void* (*realloc) (void *ctx, void *ptr, size_t new_size); - - /* release a memory block */ - void (*free) (void *ctx, void *ptr); -} PyMemAllocatorEx; - -/* Get the memory block allocator of the specified domain. */ -PyAPI_FUNC(void) PyMem_GetAllocator(PyMemAllocatorDomain domain, - PyMemAllocatorEx *allocator); - -/* Set the memory block allocator of the specified domain. - - The new allocator must return a distinct non-NULL pointer when requesting - zero bytes. - - For the PYMEM_DOMAIN_RAW domain, the allocator must be thread-safe: the GIL - is not held when the allocator is called. - - If the new allocator is not a hook (don't call the previous allocator), the - PyMem_SetupDebugHooks() function must be called to reinstall the debug hooks - on top on the new allocator. */ -PyAPI_FUNC(void) PyMem_SetAllocator(PyMemAllocatorDomain domain, - PyMemAllocatorEx *allocator); - -/* Setup hooks to detect bugs in the following Python memory allocator - functions: - - - PyMem_RawMalloc(), PyMem_RawRealloc(), PyMem_RawFree() - - PyMem_Malloc(), PyMem_Realloc(), PyMem_Free() - - PyObject_Malloc(), PyObject_Realloc() and PyObject_Free() - - Newly allocated memory is filled with the byte 0xCB, freed memory is filled - with the byte 0xDB. Additional checks: - - - detect API violations, ex: PyObject_Free() called on a buffer allocated - by PyMem_Malloc() - - detect write before the start of the buffer (buffer underflow) - - detect write after the end of the buffer (buffer overflow) - - The function does nothing if Python is not compiled is debug mode. */ -PyAPI_FUNC(void) PyMem_SetupDebugHooks(void); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pystate.h b/_Pre_Builds/_Python311_cpp/include/cpython/pystate.h deleted file mode 100644 index 2bd4606..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pystate.h +++ /dev/null @@ -1,366 +0,0 @@ -#ifndef Py_CPYTHON_PYSTATE_H -# error "this header file must not be included directly" -#endif - - -PyAPI_FUNC(int) _PyInterpreterState_RequiresIDRef(PyInterpreterState *); -PyAPI_FUNC(void) _PyInterpreterState_RequireIDRef(PyInterpreterState *, int); - -PyAPI_FUNC(PyObject *) _PyInterpreterState_GetMainModule(PyInterpreterState *); - -/* State unique per thread */ - -/* Py_tracefunc return -1 when raising an exception, or 0 for success. */ -typedef int (*Py_tracefunc)(PyObject *, PyFrameObject *, int, PyObject *); - -/* The following values are used for 'what' for tracefunc functions - * - * To add a new kind of trace event, also update "trace_init" in - * Python/sysmodule.c to define the Python level event name - */ -#define PyTrace_CALL 0 -#define PyTrace_EXCEPTION 1 -#define PyTrace_LINE 2 -#define PyTrace_RETURN 3 -#define PyTrace_C_CALL 4 -#define PyTrace_C_EXCEPTION 5 -#define PyTrace_C_RETURN 6 -#define PyTrace_OPCODE 7 - - -typedef struct { - PyCodeObject *code; // The code object for the bounds. May be NULL. - PyCodeAddressRange bounds; // Only valid if code != NULL. -} PyTraceInfo; - -// Internal structure: you should not use it directly, but use public functions -// like PyThreadState_EnterTracing() and PyThreadState_LeaveTracing(). -typedef struct _PyCFrame { - /* This struct will be threaded through the C stack - * allowing fast access to per-thread state that needs - * to be accessed quickly by the interpreter, but can - * be modified outside of the interpreter. - * - * WARNING: This makes data on the C stack accessible from - * heap objects. Care must be taken to maintain stack - * discipline and make sure that instances of this struct cannot - * accessed outside of their lifetime. - */ - uint8_t use_tracing; // 0 or 255 (or'ed into opcode, hence 8-bit type) - /* Pointer to the currently executing frame (it can be NULL) */ - struct _PyInterpreterFrame *current_frame; - struct _PyCFrame *previous; -} _PyCFrame; - -typedef struct _err_stackitem { - /* This struct represents a single execution context where we might - * be currently handling an exception. It is a per-coroutine state - * (coroutine in the computer science sense, including the thread - * and generators). - * - * This is used as an entry on the exception stack, where each - * entry indicates if it is currently handling an exception. - * This ensures that the exception state is not impacted - * by "yields" from an except handler. The thread - * always has an entry (the bottom-most one). - */ - - /* The exception currently being handled in this context, if any. */ - PyObject *exc_value; - - struct _err_stackitem *previous_item; - -} _PyErr_StackItem; - -typedef struct _stack_chunk { - struct _stack_chunk *previous; - size_t size; - size_t top; - PyObject * data[1]; /* Variable sized */ -} _PyStackChunk; - -struct _ts { - /* See Python/ceval.c for comments explaining most fields */ - - PyThreadState *prev; - PyThreadState *next; - PyInterpreterState *interp; - - /* Has been initialized to a safe state. - - In order to be effective, this must be set to 0 during or right - after allocation. */ - int _initialized; - - /* Was this thread state statically allocated? */ - int _static; - - int recursion_remaining; - int recursion_limit; - int recursion_headroom; /* Allow 50 more calls to handle any errors. */ - - /* 'tracing' keeps track of the execution depth when tracing/profiling. - This is to prevent the actual trace/profile code from being recorded in - the trace/profile. */ - int tracing; - int tracing_what; /* The event currently being traced, if any. */ - - /* Pointer to current _PyCFrame in the C stack frame of the currently, - * or most recently, executing _PyEval_EvalFrameDefault. */ - _PyCFrame *cframe; - - Py_tracefunc c_profilefunc; - Py_tracefunc c_tracefunc; - PyObject *c_profileobj; - PyObject *c_traceobj; - - /* The exception currently being raised */ - PyObject *curexc_type; - PyObject *curexc_value; - PyObject *curexc_traceback; - - /* Pointer to the top of the exception stack for the exceptions - * we may be currently handling. (See _PyErr_StackItem above.) - * This is never NULL. */ - _PyErr_StackItem *exc_info; - - PyObject *dict; /* Stores per-thread state */ - - int gilstate_counter; - - PyObject *async_exc; /* Asynchronous exception to raise */ - unsigned long thread_id; /* Thread id where this tstate was created */ - - /* Native thread id where this tstate was created. This will be 0 except on - * those platforms that have the notion of native thread id, for which the - * macro PY_HAVE_THREAD_NATIVE_ID is then defined. - */ - unsigned long native_thread_id; - - int trash_delete_nesting; - PyObject *trash_delete_later; - - /* Called when a thread state is deleted normally, but not when it - * is destroyed after fork(). - * Pain: to prevent rare but fatal shutdown errors (issue 18808), - * Thread.join() must wait for the join'ed thread's tstate to be unlinked - * from the tstate chain. That happens at the end of a thread's life, - * in pystate.c. - * The obvious way doesn't quite work: create a lock which the tstate - * unlinking code releases, and have Thread.join() wait to acquire that - * lock. The problem is that we _are_ at the end of the thread's life: - * if the thread holds the last reference to the lock, decref'ing the - * lock will delete the lock, and that may trigger arbitrary Python code - * if there's a weakref, with a callback, to the lock. But by this time - * _PyRuntime.gilstate.tstate_current is already NULL, so only the simplest - * of C code can be allowed to run (in particular it must not be possible to - * release the GIL). - * So instead of holding the lock directly, the tstate holds a weakref to - * the lock: that's the value of on_delete_data below. Decref'ing a - * weakref is harmless. - * on_delete points to _threadmodule.c's static release_sentinel() function. - * After the tstate is unlinked, release_sentinel is called with the - * weakref-to-lock (on_delete_data) argument, and release_sentinel releases - * the indirectly held lock. - */ - void (*on_delete)(void *); - void *on_delete_data; - - int coroutine_origin_tracking_depth; - - PyObject *async_gen_firstiter; - PyObject *async_gen_finalizer; - - PyObject *context; - uint64_t context_ver; - - /* Unique thread state id. */ - uint64_t id; - - PyTraceInfo trace_info; - - _PyStackChunk *datastack_chunk; - PyObject **datastack_top; - PyObject **datastack_limit; - /* XXX signal handlers should also be here */ - - /* The following fields are here to avoid allocation during init. - The data is exposed through PyThreadState pointer fields. - These fields should not be accessed directly outside of init. - This is indicated by an underscore prefix on the field names. - - All other PyInterpreterState pointer fields are populated when - needed and default to NULL. - */ - // Note some fields do not have a leading underscore for backward - // compatibility. See https://bugs.python.org/issue45953#msg412046. - - /* The thread's exception stack entry. (Always the last entry.) */ - _PyErr_StackItem exc_state; - - /* The bottom-most frame on the stack. */ - _PyCFrame root_cframe; -}; - - -/* other API */ - -// Alias for backward compatibility with Python 3.8 -#define _PyInterpreterState_Get PyInterpreterState_Get - -PyAPI_FUNC(PyThreadState *) _PyThreadState_Prealloc(PyInterpreterState *); - -/* Similar to PyThreadState_Get(), but don't issue a fatal error - * if it is NULL. */ -PyAPI_FUNC(PyThreadState *) _PyThreadState_UncheckedGet(void); - -PyAPI_FUNC(PyObject *) _PyThreadState_GetDict(PyThreadState *tstate); - -// Disable tracing and profiling. -PyAPI_FUNC(void) PyThreadState_EnterTracing(PyThreadState *tstate); - -// Reset tracing and profiling: enable them if a trace function or a profile -// function is set, otherwise disable them. -PyAPI_FUNC(void) PyThreadState_LeaveTracing(PyThreadState *tstate); - -/* PyGILState */ - -/* Helper/diagnostic function - return 1 if the current thread - currently holds the GIL, 0 otherwise. - - The function returns 1 if _PyGILState_check_enabled is non-zero. */ -PyAPI_FUNC(int) PyGILState_Check(void); - -/* Get the single PyInterpreterState used by this process' GILState - implementation. - - This function doesn't check for error. Return NULL before _PyGILState_Init() - is called and after _PyGILState_Fini() is called. - - See also _PyInterpreterState_Get() and _PyInterpreterState_GET(). */ -PyAPI_FUNC(PyInterpreterState *) _PyGILState_GetInterpreterStateUnsafe(void); - -/* The implementation of sys._current_frames() Returns a dict mapping - thread id to that thread's current frame. -*/ -PyAPI_FUNC(PyObject *) _PyThread_CurrentFrames(void); - -/* The implementation of sys._current_exceptions() Returns a dict mapping - thread id to that thread's current exception. -*/ -PyAPI_FUNC(PyObject *) _PyThread_CurrentExceptions(void); - -/* Routines for advanced debuggers, requested by David Beazley. - Don't use unless you know what you are doing! */ -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Main(void); -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Head(void); -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Next(PyInterpreterState *); -PyAPI_FUNC(PyThreadState *) PyInterpreterState_ThreadHead(PyInterpreterState *); -PyAPI_FUNC(PyThreadState *) PyThreadState_Next(PyThreadState *); -PyAPI_FUNC(void) PyThreadState_DeleteCurrent(void); - -/* Frame evaluation API */ - -typedef PyObject* (*_PyFrameEvalFunction)(PyThreadState *tstate, struct _PyInterpreterFrame *, int); - -PyAPI_FUNC(_PyFrameEvalFunction) _PyInterpreterState_GetEvalFrameFunc( - PyInterpreterState *interp); -PyAPI_FUNC(void) _PyInterpreterState_SetEvalFrameFunc( - PyInterpreterState *interp, - _PyFrameEvalFunction eval_frame); - -PyAPI_FUNC(const PyConfig*) _PyInterpreterState_GetConfig(PyInterpreterState *interp); - -/* Get a copy of the current interpreter configuration. - - Return 0 on success. Raise an exception and return -1 on error. - - The caller must initialize 'config', using PyConfig_InitPythonConfig() - for example. - - Python must be preinitialized to call this method. - The caller must hold the GIL. */ -PyAPI_FUNC(int) _PyInterpreterState_GetConfigCopy( - struct PyConfig *config); - -/* Set the configuration of the current interpreter. - - This function should be called during or just after the Python - initialization. - - Update the sys module with the new configuration. If the sys module was - modified directly after the Python initialization, these changes are lost. - - Some configuration like faulthandler or warnoptions can be updated in the - configuration, but don't reconfigure Python (don't enable/disable - faulthandler and don't reconfigure warnings filters). - - Return 0 on success. Raise an exception and return -1 on error. - - The configuration should come from _PyInterpreterState_GetConfigCopy(). */ -PyAPI_FUNC(int) _PyInterpreterState_SetConfig( - const struct PyConfig *config); - -// Get the configuration of the current interpreter. -// The caller must hold the GIL. -PyAPI_FUNC(const PyConfig*) _Py_GetConfig(void); - - -/* cross-interpreter data */ - -// _PyCrossInterpreterData is similar to Py_buffer as an effectively -// opaque struct that holds data outside the object machinery. This -// is necessary to pass safely between interpreters in the same process. -typedef struct _xid _PyCrossInterpreterData; - -struct _xid { - // data is the cross-interpreter-safe derivation of a Python object - // (see _PyObject_GetCrossInterpreterData). It will be NULL if the - // new_object func (below) encodes the data. - void *data; - // obj is the Python object from which the data was derived. This - // is non-NULL only if the data remains bound to the object in some - // way, such that the object must be "released" (via a decref) when - // the data is released. In that case the code that sets the field, - // likely a registered "crossinterpdatafunc", is responsible for - // ensuring it owns the reference (i.e. incref). - PyObject *obj; - // interp is the ID of the owning interpreter of the original - // object. It corresponds to the active interpreter when - // _PyObject_GetCrossInterpreterData() was called. This should only - // be set by the cross-interpreter machinery. - // - // We use the ID rather than the PyInterpreterState to avoid issues - // with deleted interpreters. Note that IDs are never re-used, so - // each one will always correspond to a specific interpreter - // (whether still alive or not). - int64_t interp; - // new_object is a function that returns a new object in the current - // interpreter given the data. The resulting object (a new - // reference) will be equivalent to the original object. This field - // is required. - PyObject *(*new_object)(_PyCrossInterpreterData *); - // free is called when the data is released. If it is NULL then - // nothing will be done to free the data. For some types this is - // okay (e.g. bytes) and for those types this field should be set - // to NULL. However, for most the data was allocated just for - // cross-interpreter use, so it must be freed when - // _PyCrossInterpreterData_Release is called or the memory will - // leak. In that case, at the very least this field should be set - // to PyMem_RawFree (the default if not explicitly set to NULL). - // The call will happen with the original interpreter activated. - void (*free)(void *); -}; - -PyAPI_FUNC(int) _PyObject_GetCrossInterpreterData(PyObject *, _PyCrossInterpreterData *); -PyAPI_FUNC(PyObject *) _PyCrossInterpreterData_NewObject(_PyCrossInterpreterData *); -PyAPI_FUNC(void) _PyCrossInterpreterData_Release(_PyCrossInterpreterData *); - -PyAPI_FUNC(int) _PyObject_CheckCrossInterpreterData(PyObject *); - -/* cross-interpreter data registry */ - -typedef int (*crossinterpdatafunc)(PyObject *, _PyCrossInterpreterData *); - -PyAPI_FUNC(int) _PyCrossInterpreterData_RegisterClass(PyTypeObject *, crossinterpdatafunc); -PyAPI_FUNC(crossinterpdatafunc) _PyCrossInterpreterData_Lookup(PyObject *); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pythonrun.h b/_Pre_Builds/_Python311_cpp/include/cpython/pythonrun.h deleted file mode 100644 index 2e72d08..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pythonrun.h +++ /dev/null @@ -1,121 +0,0 @@ -#ifndef Py_CPYTHON_PYTHONRUN_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(int) PyRun_SimpleStringFlags(const char *, PyCompilerFlags *); -PyAPI_FUNC(int) _PyRun_SimpleFileObject( - FILE *fp, - PyObject *filename, - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_AnyFileExFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) _PyRun_AnyFileObject( - FILE *fp, - PyObject *filename, - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_SimpleFileExFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_InteractiveOneFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_InteractiveOneObject( - FILE *fp, - PyObject *filename, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_InteractiveLoopFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - PyCompilerFlags *flags); -PyAPI_FUNC(int) _PyRun_InteractiveLoopObject( - FILE *fp, - PyObject *filename, - PyCompilerFlags *flags); - - -PyAPI_FUNC(PyObject *) PyRun_StringFlags(const char *, int, PyObject *, - PyObject *, PyCompilerFlags *); - -PyAPI_FUNC(PyObject *) PyRun_FileExFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - int start, - PyObject *globals, - PyObject *locals, - int closeit, - PyCompilerFlags *flags); - - -PyAPI_FUNC(PyObject *) Py_CompileStringExFlags( - const char *str, - const char *filename, /* decoded from the filesystem encoding */ - int start, - PyCompilerFlags *flags, - int optimize); -PyAPI_FUNC(PyObject *) Py_CompileStringObject( - const char *str, - PyObject *filename, int start, - PyCompilerFlags *flags, - int optimize); - -#define Py_CompileString(str, p, s) Py_CompileStringExFlags(str, p, s, NULL, -1) -#define Py_CompileStringFlags(str, p, s, f) Py_CompileStringExFlags(str, p, s, f, -1) - - -PyAPI_FUNC(const char *) _Py_SourceAsString( - PyObject *cmd, - const char *funcname, - const char *what, - PyCompilerFlags *cf, - PyObject **cmd_copy); - - -/* A function flavor is also exported by libpython. It is required when - libpython is accessed directly rather than using header files which defines - macros below. On Windows, for example, PyAPI_FUNC() uses dllexport to - export functions in pythonXX.dll. */ -PyAPI_FUNC(PyObject *) PyRun_String(const char *str, int s, PyObject *g, PyObject *l); -PyAPI_FUNC(int) PyRun_AnyFile(FILE *fp, const char *name); -PyAPI_FUNC(int) PyRun_AnyFileEx(FILE *fp, const char *name, int closeit); -PyAPI_FUNC(int) PyRun_AnyFileFlags(FILE *, const char *, PyCompilerFlags *); -PyAPI_FUNC(int) PyRun_SimpleString(const char *s); -PyAPI_FUNC(int) PyRun_SimpleFile(FILE *f, const char *p); -PyAPI_FUNC(int) PyRun_SimpleFileEx(FILE *f, const char *p, int c); -PyAPI_FUNC(int) PyRun_InteractiveOne(FILE *f, const char *p); -PyAPI_FUNC(int) PyRun_InteractiveLoop(FILE *f, const char *p); -PyAPI_FUNC(PyObject *) PyRun_File(FILE *fp, const char *p, int s, PyObject *g, PyObject *l); -PyAPI_FUNC(PyObject *) PyRun_FileEx(FILE *fp, const char *p, int s, PyObject *g, PyObject *l, int c); -PyAPI_FUNC(PyObject *) PyRun_FileFlags(FILE *fp, const char *p, int s, PyObject *g, PyObject *l, PyCompilerFlags *flags); - -/* Use macros for a bunch of old variants */ -#define PyRun_String(str, s, g, l) PyRun_StringFlags(str, s, g, l, NULL) -#define PyRun_AnyFile(fp, name) PyRun_AnyFileExFlags(fp, name, 0, NULL) -#define PyRun_AnyFileEx(fp, name, closeit) \ - PyRun_AnyFileExFlags(fp, name, closeit, NULL) -#define PyRun_AnyFileFlags(fp, name, flags) \ - PyRun_AnyFileExFlags(fp, name, 0, flags) -#define PyRun_SimpleString(s) PyRun_SimpleStringFlags(s, NULL) -#define PyRun_SimpleFile(f, p) PyRun_SimpleFileExFlags(f, p, 0, NULL) -#define PyRun_SimpleFileEx(f, p, c) PyRun_SimpleFileExFlags(f, p, c, NULL) -#define PyRun_InteractiveOne(f, p) PyRun_InteractiveOneFlags(f, p, NULL) -#define PyRun_InteractiveLoop(f, p) PyRun_InteractiveLoopFlags(f, p, NULL) -#define PyRun_File(fp, p, s, g, l) \ - PyRun_FileExFlags(fp, p, s, g, l, 0, NULL) -#define PyRun_FileEx(fp, p, s, g, l, c) \ - PyRun_FileExFlags(fp, p, s, g, l, c, NULL) -#define PyRun_FileFlags(fp, p, s, g, l, flags) \ - PyRun_FileExFlags(fp, p, s, g, l, 0, flags) - - -/* Stuff with no proper home (yet) */ -PyAPI_FUNC(char *) PyOS_Readline(FILE *, FILE *, const char *); -PyAPI_DATA(PyThreadState*) _PyOS_ReadlineTState; -PyAPI_DATA(char) *(*PyOS_ReadlineFunctionPointer)(FILE *, FILE *, const char *); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pythread.h b/_Pre_Builds/_Python311_cpp/include/cpython/pythread.h deleted file mode 100644 index ce4ec8f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pythread.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef Py_CPYTHON_PYTHREAD_H -# error "this header file must not be included directly" -#endif - -#define PYTHREAD_INVALID_THREAD_ID ((unsigned long)-1) - -#ifdef HAVE_FORK -/* Private function to reinitialize a lock at fork in the child process. - Reset the lock to the unlocked state. - Return 0 on success, return -1 on error. */ -PyAPI_FUNC(int) _PyThread_at_fork_reinit(PyThread_type_lock *lock); -#endif /* HAVE_FORK */ - -#ifdef HAVE_PTHREAD_H - /* Darwin needs pthread.h to know type name the pthread_key_t. */ -# include -# define NATIVE_TSS_KEY_T pthread_key_t -#elif defined(NT_THREADS) - /* In Windows, native TSS key type is DWORD, - but hardcode the unsigned long to avoid errors for include directive. - */ -# define NATIVE_TSS_KEY_T unsigned long -#elif defined(HAVE_PTHREAD_STUBS) -# include "cpython/pthread_stubs.h" -# define NATIVE_TSS_KEY_T pthread_key_t -#else -# error "Require native threads. See https://bugs.python.org/issue31370" -#endif - -/* When Py_LIMITED_API is not defined, the type layout of Py_tss_t is - exposed to allow static allocation in the API clients. Even in this case, - you must handle TSS keys through API functions due to compatibility. -*/ -struct _Py_tss_t { - int _is_initialized; - NATIVE_TSS_KEY_T _key; -}; - -#undef NATIVE_TSS_KEY_T - -/* When static allocation, you must initialize with Py_tss_NEEDS_INIT. */ -#define Py_tss_NEEDS_INIT {0} diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/pytime.h b/_Pre_Builds/_Python311_cpp/include/cpython/pytime.h deleted file mode 100644 index 23d4f16..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/pytime.h +++ /dev/null @@ -1,323 +0,0 @@ -// The _PyTime_t API is written to use timestamp and timeout values stored in -// various formats and to read clocks. -// -// The _PyTime_t type is an integer to support directly common arithmetic -// operations like t1 + t2. -// -// The _PyTime_t API supports a resolution of 1 nanosecond. The _PyTime_t type -// is signed to support negative timestamps. The supported range is around -// [-292.3 years; +292.3 years]. Using the Unix epoch (January 1st, 1970), the -// supported date range is around [1677-09-21; 2262-04-11]. -// -// Formats: -// -// * seconds -// * seconds as a floating pointer number (C double) -// * milliseconds (10^-3 seconds) -// * microseconds (10^-6 seconds) -// * 100 nanoseconds (10^-7 seconds) -// * nanoseconds (10^-9 seconds) -// * timeval structure, 1 microsecond resolution (10^-6 seconds) -// * timespec structure, 1 nanosecond resolution (10^-9 seconds) -// -// Integer overflows are detected and raise OverflowError. Conversion to a -// resolution worse than 1 nanosecond is rounded correctly with the requested -// rounding mode. There are 4 rounding modes: floor (towards -inf), ceiling -// (towards +inf), half even and up (away from zero). -// -// Some functions clamp the result in the range [_PyTime_MIN; _PyTime_MAX], so -// the caller doesn't have to handle errors and doesn't need to hold the GIL. -// For example, _PyTime_Add(t1, t2) computes t1+t2 and clamp the result on -// overflow. -// -// Clocks: -// -// * System clock -// * Monotonic clock -// * Performance counter -// -// Operations like (t * k / q) with integers are implemented in a way to reduce -// the risk of integer overflow. Such operation is used to convert a clock -// value expressed in ticks with a frequency to _PyTime_t, like -// QueryPerformanceCounter() with QueryPerformanceFrequency(). - -#ifndef Py_LIMITED_API -#ifndef Py_PYTIME_H -#define Py_PYTIME_H - -/************************************************************************** -Symbols and macros to supply platform-independent interfaces to time related -functions and constants -**************************************************************************/ -#ifdef __cplusplus -extern "C" { -#endif - -/* _PyTime_t: Python timestamp with subsecond precision. It can be used to - store a duration, and so indirectly a date (related to another date, like - UNIX epoch). */ -typedef int64_t _PyTime_t; -// _PyTime_MIN nanoseconds is around -292.3 years -#define _PyTime_MIN INT64_MIN -// _PyTime_MAX nanoseconds is around +292.3 years -#define _PyTime_MAX INT64_MAX -#define _SIZEOF_PYTIME_T 8 - -typedef enum { - /* Round towards minus infinity (-inf). - For example, used to read a clock. */ - _PyTime_ROUND_FLOOR=0, - /* Round towards infinity (+inf). - For example, used for timeout to wait "at least" N seconds. */ - _PyTime_ROUND_CEILING=1, - /* Round to nearest with ties going to nearest even integer. - For example, used to round from a Python float. */ - _PyTime_ROUND_HALF_EVEN=2, - /* Round away from zero - For example, used for timeout. _PyTime_ROUND_CEILING rounds - -1e-9 to 0 milliseconds which causes bpo-31786 issue. - _PyTime_ROUND_UP rounds -1e-9 to -1 millisecond which keeps - the timeout sign as expected. select.poll(timeout) must block - for negative values." */ - _PyTime_ROUND_UP=3, - /* _PyTime_ROUND_TIMEOUT (an alias for _PyTime_ROUND_UP) should be - used for timeouts. */ - _PyTime_ROUND_TIMEOUT = _PyTime_ROUND_UP -} _PyTime_round_t; - - -/* Convert a time_t to a PyLong. */ -PyAPI_FUNC(PyObject *) _PyLong_FromTime_t( - time_t sec); - -/* Convert a PyLong to a time_t. */ -PyAPI_FUNC(time_t) _PyLong_AsTime_t( - PyObject *obj); - -/* Convert a number of seconds, int or float, to time_t. */ -PyAPI_FUNC(int) _PyTime_ObjectToTime_t( - PyObject *obj, - time_t *sec, - _PyTime_round_t); - -/* Convert a number of seconds, int or float, to a timeval structure. - usec is in the range [0; 999999] and rounded towards zero. - For example, -1.2 is converted to (-2, 800000). */ -PyAPI_FUNC(int) _PyTime_ObjectToTimeval( - PyObject *obj, - time_t *sec, - long *usec, - _PyTime_round_t); - -/* Convert a number of seconds, int or float, to a timespec structure. - nsec is in the range [0; 999999999] and rounded towards zero. - For example, -1.2 is converted to (-2, 800000000). */ -PyAPI_FUNC(int) _PyTime_ObjectToTimespec( - PyObject *obj, - time_t *sec, - long *nsec, - _PyTime_round_t); - - -/* Create a timestamp from a number of seconds. */ -PyAPI_FUNC(_PyTime_t) _PyTime_FromSeconds(int seconds); - -/* Macro to create a timestamp from a number of seconds, no integer overflow. - Only use the macro for small values, prefer _PyTime_FromSeconds(). */ -#define _PYTIME_FROMSECONDS(seconds) \ - ((_PyTime_t)(seconds) * (1000 * 1000 * 1000)) - -/* Create a timestamp from a number of nanoseconds. */ -PyAPI_FUNC(_PyTime_t) _PyTime_FromNanoseconds(_PyTime_t ns); - -/* Create a timestamp from nanoseconds (Python int). */ -PyAPI_FUNC(int) _PyTime_FromNanosecondsObject(_PyTime_t *t, - PyObject *obj); - -/* Convert a number of seconds (Python float or int) to a timestamp. - Raise an exception and return -1 on error, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromSecondsObject(_PyTime_t *t, - PyObject *obj, - _PyTime_round_t round); - -/* Convert a number of milliseconds (Python float or int, 10^-3) to a timestamp. - Raise an exception and return -1 on error, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromMillisecondsObject(_PyTime_t *t, - PyObject *obj, - _PyTime_round_t round); - -/* Convert a timestamp to a number of seconds as a C double. */ -PyAPI_FUNC(double) _PyTime_AsSecondsDouble(_PyTime_t t); - -/* Convert timestamp to a number of milliseconds (10^-3 seconds). */ -PyAPI_FUNC(_PyTime_t) _PyTime_AsMilliseconds(_PyTime_t t, - _PyTime_round_t round); - -/* Convert timestamp to a number of microseconds (10^-6 seconds). */ -PyAPI_FUNC(_PyTime_t) _PyTime_AsMicroseconds(_PyTime_t t, - _PyTime_round_t round); - -/* Convert timestamp to a number of nanoseconds (10^-9 seconds). */ -PyAPI_FUNC(_PyTime_t) _PyTime_AsNanoseconds(_PyTime_t t); - -#ifdef MS_WINDOWS -// Convert timestamp to a number of 100 nanoseconds (10^-7 seconds). -PyAPI_FUNC(_PyTime_t) _PyTime_As100Nanoseconds(_PyTime_t t, - _PyTime_round_t round); -#endif - -/* Convert timestamp to a number of nanoseconds (10^-9 seconds) as a Python int - object. */ -PyAPI_FUNC(PyObject *) _PyTime_AsNanosecondsObject(_PyTime_t t); - -#ifndef MS_WINDOWS -/* Create a timestamp from a timeval structure. - Raise an exception and return -1 on overflow, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromTimeval(_PyTime_t *tp, struct timeval *tv); -#endif - -/* Convert a timestamp to a timeval structure (microsecond resolution). - tv_usec is always positive. - Raise an exception and return -1 if the conversion overflowed, - return 0 on success. */ -PyAPI_FUNC(int) _PyTime_AsTimeval(_PyTime_t t, - struct timeval *tv, - _PyTime_round_t round); - -/* Similar to _PyTime_AsTimeval() but don't raise an exception on overflow. - On overflow, clamp tv_sec to _PyTime_t min/max. */ -PyAPI_FUNC(void) _PyTime_AsTimeval_clamp(_PyTime_t t, - struct timeval *tv, - _PyTime_round_t round); - -/* Convert a timestamp to a number of seconds (secs) and microseconds (us). - us is always positive. This function is similar to _PyTime_AsTimeval() - except that secs is always a time_t type, whereas the timeval structure - uses a C long for tv_sec on Windows. - Raise an exception and return -1 if the conversion overflowed, - return 0 on success. */ -PyAPI_FUNC(int) _PyTime_AsTimevalTime_t( - _PyTime_t t, - time_t *secs, - int *us, - _PyTime_round_t round); - -#if defined(HAVE_CLOCK_GETTIME) || defined(HAVE_KQUEUE) -/* Create a timestamp from a timespec structure. - Raise an exception and return -1 on overflow, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromTimespec(_PyTime_t *tp, struct timespec *ts); - -/* Convert a timestamp to a timespec structure (nanosecond resolution). - tv_nsec is always positive. - Raise an exception and return -1 on error, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_AsTimespec(_PyTime_t t, struct timespec *ts); - -/* Similar to _PyTime_AsTimespec() but don't raise an exception on overflow. - On overflow, clamp tv_sec to _PyTime_t min/max. */ -PyAPI_FUNC(void) _PyTime_AsTimespec_clamp(_PyTime_t t, struct timespec *ts); -#endif - - -// Compute t1 + t2. Clamp to [_PyTime_MIN; _PyTime_MAX] on overflow. -PyAPI_FUNC(_PyTime_t) _PyTime_Add(_PyTime_t t1, _PyTime_t t2); - -/* Compute ticks * mul / div. - Clamp to [_PyTime_MIN; _PyTime_MAX] on overflow. - The caller must ensure that ((div - 1) * mul) cannot overflow. */ -PyAPI_FUNC(_PyTime_t) _PyTime_MulDiv(_PyTime_t ticks, - _PyTime_t mul, - _PyTime_t div); - -/* Structure used by time.get_clock_info() */ -typedef struct { - const char *implementation; - int monotonic; - int adjustable; - double resolution; -} _Py_clock_info_t; - -/* Get the current time from the system clock. - - If the internal clock fails, silently ignore the error and return 0. - On integer overflow, silently ignore the overflow and clamp the clock to - [_PyTime_MIN; _PyTime_MAX]. - - Use _PyTime_GetSystemClockWithInfo() to check for failure. */ -PyAPI_FUNC(_PyTime_t) _PyTime_GetSystemClock(void); - -/* Get the current time from the system clock. - * On success, set *t and *info (if not NULL), and return 0. - * On error, raise an exception and return -1. - */ -PyAPI_FUNC(int) _PyTime_GetSystemClockWithInfo( - _PyTime_t *t, - _Py_clock_info_t *info); - -/* Get the time of a monotonic clock, i.e. a clock that cannot go backwards. - The clock is not affected by system clock updates. The reference point of - the returned value is undefined, so that only the difference between the - results of consecutive calls is valid. - - If the internal clock fails, silently ignore the error and return 0. - On integer overflow, silently ignore the overflow and clamp the clock to - [_PyTime_MIN; _PyTime_MAX]. - - Use _PyTime_GetMonotonicClockWithInfo() to check for failure. */ -PyAPI_FUNC(_PyTime_t) _PyTime_GetMonotonicClock(void); - -/* Get the time of a monotonic clock, i.e. a clock that cannot go backwards. - The clock is not affected by system clock updates. The reference point of - the returned value is undefined, so that only the difference between the - results of consecutive calls is valid. - - Fill info (if set) with information of the function used to get the time. - - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_GetMonotonicClockWithInfo( - _PyTime_t *t, - _Py_clock_info_t *info); - - -/* Converts a timestamp to the Gregorian time, using the local time zone. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_localtime(time_t t, struct tm *tm); - -/* Converts a timestamp to the Gregorian time, assuming UTC. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_gmtime(time_t t, struct tm *tm); - -/* Get the performance counter: clock with the highest available resolution to - measure a short duration. - - If the internal clock fails, silently ignore the error and return 0. - On integer overflow, silently ignore the overflow and clamp the clock to - [_PyTime_MIN; _PyTime_MAX]. - - Use _PyTime_GetPerfCounterWithInfo() to check for failure. */ -PyAPI_FUNC(_PyTime_t) _PyTime_GetPerfCounter(void); - -/* Get the performance counter: clock with the highest available resolution to - measure a short duration. - - Fill info (if set) with information of the function used to get the time. - - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_GetPerfCounterWithInfo( - _PyTime_t *t, - _Py_clock_info_t *info); - - -// Create a deadline. -// Pseudo code: _PyTime_GetMonotonicClock() + timeout. -PyAPI_FUNC(_PyTime_t) _PyDeadline_Init(_PyTime_t timeout); - -// Get remaining time from a deadline. -// Pseudo code: deadline - _PyTime_GetMonotonicClock(). -PyAPI_FUNC(_PyTime_t) _PyDeadline_Get(_PyTime_t deadline); - -#ifdef __cplusplus -} -#endif - -#endif /* Py_PYTIME_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/setobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/setobject.h deleted file mode 100644 index b4443a6..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/setobject.h +++ /dev/null @@ -1,67 +0,0 @@ -#ifndef Py_CPYTHON_SETOBJECT_H -# error "this header file must not be included directly" -#endif - -/* There are three kinds of entries in the table: - -1. Unused: key == NULL and hash == 0 -2. Dummy: key == dummy and hash == -1 -3. Active: key != NULL and key != dummy and hash != -1 - -The hash field of Unused slots is always zero. - -The hash field of Dummy slots are set to -1 -meaning that dummy entries can be detected by -either entry->key==dummy or by entry->hash==-1. -*/ - -#define PySet_MINSIZE 8 - -typedef struct { - PyObject *key; - Py_hash_t hash; /* Cached hash code of the key */ -} setentry; - -/* The SetObject data structure is shared by set and frozenset objects. - -Invariant for sets: - - hash is -1 - -Invariants for frozensets: - - data is immutable. - - hash is the hash of the frozenset or -1 if not computed yet. - -*/ - -typedef struct { - PyObject_HEAD - - Py_ssize_t fill; /* Number active and dummy entries*/ - Py_ssize_t used; /* Number active entries */ - - /* The table contains mask + 1 slots, and that's a power of 2. - * We store the mask instead of the size because the mask is more - * frequently needed. - */ - Py_ssize_t mask; - - /* The table points to a fixed-size smalltable for small tables - * or to additional malloc'ed memory for bigger tables. - * The table pointer is never NULL which saves us from repeated - * runtime null-tests. - */ - setentry *table; - Py_hash_t hash; /* Only used by frozenset objects */ - Py_ssize_t finger; /* Search finger for pop() */ - - setentry smalltable[PySet_MINSIZE]; - PyObject *weakreflist; /* List of weak references */ -} PySetObject; - -#define PySet_GET_SIZE(so) \ - (assert(PyAnySet_Check(so)), (((PySetObject *)(so))->used)) - -PyAPI_DATA(PyObject *) _PySet_Dummy; - -PyAPI_FUNC(int) _PySet_NextEntry(PyObject *set, Py_ssize_t *pos, PyObject **key, Py_hash_t *hash); -PyAPI_FUNC(int) _PySet_Update(PyObject *set, PyObject *iterable); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/sysmodule.h b/_Pre_Builds/_Python311_cpp/include/cpython/sysmodule.h deleted file mode 100644 index 19d9ddd..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/sysmodule.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef Py_CPYTHON_SYSMODULE_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(PyObject *) _PySys_GetAttr(PyThreadState *tstate, - PyObject *name); - -PyAPI_FUNC(size_t) _PySys_GetSizeOf(PyObject *); - -typedef int(*Py_AuditHookFunction)(const char *, PyObject *, void *); - -PyAPI_FUNC(int) PySys_Audit( - const char *event, - const char *argFormat, - ...); -PyAPI_FUNC(int) PySys_AddAuditHook(Py_AuditHookFunction, void*); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/traceback.h b/_Pre_Builds/_Python311_cpp/include/cpython/traceback.h deleted file mode 100644 index a4e087b..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/traceback.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef Py_CPYTHON_TRACEBACK_H -# error "this header file must not be included directly" -#endif - -typedef struct _traceback PyTracebackObject; - -struct _traceback { - PyObject_HEAD - PyTracebackObject *tb_next; - PyFrameObject *tb_frame; - int tb_lasti; - int tb_lineno; -}; - -PyAPI_FUNC(int) _Py_DisplaySourceLine(PyObject *, PyObject *, int, int, int *, PyObject **); -PyAPI_FUNC(void) _PyTraceback_Add(const char *, const char *, int); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/tupleobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/tupleobject.h deleted file mode 100644 index 3d9c1af..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/tupleobject.h +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef Py_CPYTHON_TUPLEOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - PyObject_VAR_HEAD - /* ob_item contains space for 'ob_size' elements. - Items must normally not be NULL, except during construction when - the tuple is not yet visible outside the function that builds it. */ - PyObject *ob_item[1]; -} PyTupleObject; - -PyAPI_FUNC(int) _PyTuple_Resize(PyObject **, Py_ssize_t); -PyAPI_FUNC(void) _PyTuple_MaybeUntrack(PyObject *); - -/* Cast argument to PyTupleObject* type. */ -#define _PyTuple_CAST(op) \ - (assert(PyTuple_Check(op)), _Py_CAST(PyTupleObject*, (op))) - -// Macros and static inline functions, trading safety for speed - -static inline Py_ssize_t PyTuple_GET_SIZE(PyObject *op) { - PyTupleObject *tuple = _PyTuple_CAST(op); - return Py_SIZE(tuple); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyTuple_GET_SIZE(op) PyTuple_GET_SIZE(_PyObject_CAST(op)) -#endif - -#define PyTuple_GET_ITEM(op, index) (_PyTuple_CAST(op)->ob_item[index]) - -/* Function *only* to be used to fill in brand new tuples */ -static inline void -PyTuple_SET_ITEM(PyObject *op, Py_ssize_t index, PyObject *value) { - PyTupleObject *tuple = _PyTuple_CAST(op); - tuple->ob_item[index] = value; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -#define PyTuple_SET_ITEM(op, index, value) \ - PyTuple_SET_ITEM(_PyObject_CAST(op), index, _PyObject_CAST(value)) -#endif - -PyAPI_FUNC(void) _PyTuple_DebugMallocStats(FILE *out); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/unicodeobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/unicodeobject.h deleted file mode 100644 index 84307d1..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/unicodeobject.h +++ /dev/null @@ -1,1153 +0,0 @@ -#ifndef Py_CPYTHON_UNICODEOBJECT_H -# error "this header file must not be included directly" -#endif - -/* Py_UNICODE was the native Unicode storage format (code unit) used by - Python and represents a single Unicode element in the Unicode type. - With PEP 393, Py_UNICODE is deprecated and replaced with a - typedef to wchar_t. */ -#define PY_UNICODE_TYPE wchar_t -/* Py_DEPRECATED(3.3) */ typedef wchar_t Py_UNICODE; - -/* --- Internal Unicode Operations ---------------------------------------- */ - -#ifndef USE_UNICODE_WCHAR_CACHE -# define USE_UNICODE_WCHAR_CACHE 1 -#endif /* USE_UNICODE_WCHAR_CACHE */ - -/* Since splitting on whitespace is an important use case, and - whitespace in most situations is solely ASCII whitespace, we - optimize for the common case by using a quick look-up table - _Py_ascii_whitespace (see below) with an inlined check. - - */ -#define Py_UNICODE_ISSPACE(ch) \ - ((Py_UCS4)(ch) < 128U ? _Py_ascii_whitespace[(ch)] : _PyUnicode_IsWhitespace(ch)) - -#define Py_UNICODE_ISLOWER(ch) _PyUnicode_IsLowercase(ch) -#define Py_UNICODE_ISUPPER(ch) _PyUnicode_IsUppercase(ch) -#define Py_UNICODE_ISTITLE(ch) _PyUnicode_IsTitlecase(ch) -#define Py_UNICODE_ISLINEBREAK(ch) _PyUnicode_IsLinebreak(ch) - -#define Py_UNICODE_TOLOWER(ch) _PyUnicode_ToLowercase(ch) -#define Py_UNICODE_TOUPPER(ch) _PyUnicode_ToUppercase(ch) -#define Py_UNICODE_TOTITLE(ch) _PyUnicode_ToTitlecase(ch) - -#define Py_UNICODE_ISDECIMAL(ch) _PyUnicode_IsDecimalDigit(ch) -#define Py_UNICODE_ISDIGIT(ch) _PyUnicode_IsDigit(ch) -#define Py_UNICODE_ISNUMERIC(ch) _PyUnicode_IsNumeric(ch) -#define Py_UNICODE_ISPRINTABLE(ch) _PyUnicode_IsPrintable(ch) - -#define Py_UNICODE_TODECIMAL(ch) _PyUnicode_ToDecimalDigit(ch) -#define Py_UNICODE_TODIGIT(ch) _PyUnicode_ToDigit(ch) -#define Py_UNICODE_TONUMERIC(ch) _PyUnicode_ToNumeric(ch) - -#define Py_UNICODE_ISALPHA(ch) _PyUnicode_IsAlpha(ch) - -#define Py_UNICODE_ISALNUM(ch) \ - (Py_UNICODE_ISALPHA(ch) || \ - Py_UNICODE_ISDECIMAL(ch) || \ - Py_UNICODE_ISDIGIT(ch) || \ - Py_UNICODE_ISNUMERIC(ch)) - -/* macros to work with surrogates */ -#define Py_UNICODE_IS_SURROGATE(ch) (0xD800 <= (ch) && (ch) <= 0xDFFF) -#define Py_UNICODE_IS_HIGH_SURROGATE(ch) (0xD800 <= (ch) && (ch) <= 0xDBFF) -#define Py_UNICODE_IS_LOW_SURROGATE(ch) (0xDC00 <= (ch) && (ch) <= 0xDFFF) -/* Join two surrogate characters and return a single Py_UCS4 value. */ -#define Py_UNICODE_JOIN_SURROGATES(high, low) \ - (((((Py_UCS4)(high) & 0x03FF) << 10) | \ - ((Py_UCS4)(low) & 0x03FF)) + 0x10000) -/* high surrogate = top 10 bits added to D800 */ -#define Py_UNICODE_HIGH_SURROGATE(ch) (0xD800 - (0x10000 >> 10) + ((ch) >> 10)) -/* low surrogate = bottom 10 bits added to DC00 */ -#define Py_UNICODE_LOW_SURROGATE(ch) (0xDC00 + ((ch) & 0x3FF)) - -/* --- Unicode Type ------------------------------------------------------- */ - -/* ASCII-only strings created through PyUnicode_New use the PyASCIIObject - structure. state.ascii and state.compact are set, and the data - immediately follow the structure. utf8_length and wstr_length can be found - in the length field; the utf8 pointer is equal to the data pointer. */ -typedef struct { - /* There are 4 forms of Unicode strings: - - - compact ascii: - - * structure = PyASCIIObject - * test: PyUnicode_IS_COMPACT_ASCII(op) - * kind = PyUnicode_1BYTE_KIND - * compact = 1 - * ascii = 1 - * ready = 1 - * (length is the length of the utf8 and wstr strings) - * (data starts just after the structure) - * (since ASCII is decoded from UTF-8, the utf8 string are the data) - - - compact: - - * structure = PyCompactUnicodeObject - * test: PyUnicode_IS_COMPACT(op) && !PyUnicode_IS_ASCII(op) - * kind = PyUnicode_1BYTE_KIND, PyUnicode_2BYTE_KIND or - PyUnicode_4BYTE_KIND - * compact = 1 - * ready = 1 - * ascii = 0 - * utf8 is not shared with data - * utf8_length = 0 if utf8 is NULL - * wstr is shared with data and wstr_length=length - if kind=PyUnicode_2BYTE_KIND and sizeof(wchar_t)=2 - or if kind=PyUnicode_4BYTE_KIND and sizeof(wchar_t)=4 - * wstr_length = 0 if wstr is NULL - * (data starts just after the structure) - - - legacy string, not ready: - - * structure = PyUnicodeObject - * test: kind == PyUnicode_WCHAR_KIND - * length = 0 (use wstr_length) - * hash = -1 - * kind = PyUnicode_WCHAR_KIND - * compact = 0 - * ascii = 0 - * ready = 0 - * interned = SSTATE_NOT_INTERNED - * wstr is not NULL - * data.any is NULL - * utf8 is NULL - * utf8_length = 0 - - - legacy string, ready: - - * structure = PyUnicodeObject structure - * test: !PyUnicode_IS_COMPACT(op) && kind != PyUnicode_WCHAR_KIND - * kind = PyUnicode_1BYTE_KIND, PyUnicode_2BYTE_KIND or - PyUnicode_4BYTE_KIND - * compact = 0 - * ready = 1 - * data.any is not NULL - * utf8 is shared and utf8_length = length with data.any if ascii = 1 - * utf8_length = 0 if utf8 is NULL - * wstr is shared with data.any and wstr_length = length - if kind=PyUnicode_2BYTE_KIND and sizeof(wchar_t)=2 - or if kind=PyUnicode_4BYTE_KIND and sizeof(wchar_4)=4 - * wstr_length = 0 if wstr is NULL - - Compact strings use only one memory block (structure + characters), - whereas legacy strings use one block for the structure and one block - for characters. - - Legacy strings are created by PyUnicode_FromUnicode() and - PyUnicode_FromStringAndSize(NULL, size) functions. They become ready - when PyUnicode_READY() is called. - - See also _PyUnicode_CheckConsistency(). - */ - PyObject_HEAD - Py_ssize_t length; /* Number of code points in the string */ - Py_hash_t hash; /* Hash value; -1 if not set */ - struct { - /* - SSTATE_NOT_INTERNED (0) - SSTATE_INTERNED_MORTAL (1) - SSTATE_INTERNED_IMMORTAL (2) - - If interned != SSTATE_NOT_INTERNED, the two references from the - dictionary to this object are *not* counted in ob_refcnt. - */ - unsigned int interned:2; - /* Character size: - - - PyUnicode_WCHAR_KIND (0): - - * character type = wchar_t (16 or 32 bits, depending on the - platform) - - - PyUnicode_1BYTE_KIND (1): - - * character type = Py_UCS1 (8 bits, unsigned) - * all characters are in the range U+0000-U+00FF (latin1) - * if ascii is set, all characters are in the range U+0000-U+007F - (ASCII), otherwise at least one character is in the range - U+0080-U+00FF - - - PyUnicode_2BYTE_KIND (2): - - * character type = Py_UCS2 (16 bits, unsigned) - * all characters are in the range U+0000-U+FFFF (BMP) - * at least one character is in the range U+0100-U+FFFF - - - PyUnicode_4BYTE_KIND (4): - - * character type = Py_UCS4 (32 bits, unsigned) - * all characters are in the range U+0000-U+10FFFF - * at least one character is in the range U+10000-U+10FFFF - */ - unsigned int kind:3; - /* Compact is with respect to the allocation scheme. Compact unicode - objects only require one memory block while non-compact objects use - one block for the PyUnicodeObject struct and another for its data - buffer. */ - unsigned int compact:1; - /* The string only contains characters in the range U+0000-U+007F (ASCII) - and the kind is PyUnicode_1BYTE_KIND. If ascii is set and compact is - set, use the PyASCIIObject structure. */ - unsigned int ascii:1; - /* The ready flag indicates whether the object layout is initialized - completely. This means that this is either a compact object, or - the data pointer is filled out. The bit is redundant, and helps - to minimize the test in PyUnicode_IS_READY(). */ - unsigned int ready:1; - /* Padding to ensure that PyUnicode_DATA() is always aligned to - 4 bytes (see issue #19537 on m68k). */ - unsigned int :24; - } state; - wchar_t *wstr; /* wchar_t representation (null-terminated) */ -} PyASCIIObject; - -/* Non-ASCII strings allocated through PyUnicode_New use the - PyCompactUnicodeObject structure. state.compact is set, and the data - immediately follow the structure. */ -typedef struct { - PyASCIIObject _base; - Py_ssize_t utf8_length; /* Number of bytes in utf8, excluding the - * terminating \0. */ - char *utf8; /* UTF-8 representation (null-terminated) */ - Py_ssize_t wstr_length; /* Number of code points in wstr, possible - * surrogates count as two code points. */ -} PyCompactUnicodeObject; - -/* Strings allocated through PyUnicode_FromUnicode(NULL, len) use the - PyUnicodeObject structure. The actual string data is initially in the wstr - block, and copied into the data block using _PyUnicode_Ready. */ -typedef struct { - PyCompactUnicodeObject _base; - union { - void *any; - Py_UCS1 *latin1; - Py_UCS2 *ucs2; - Py_UCS4 *ucs4; - } data; /* Canonical, smallest-form Unicode buffer */ -} PyUnicodeObject; - -PyAPI_FUNC(int) _PyUnicode_CheckConsistency( - PyObject *op, - int check_content); - - -#define _PyASCIIObject_CAST(op) \ - (assert(PyUnicode_Check(op)), \ - _Py_CAST(PyASCIIObject*, (op))) -#define _PyCompactUnicodeObject_CAST(op) \ - (assert(PyUnicode_Check(op)), \ - _Py_CAST(PyCompactUnicodeObject*, (op))) -#define _PyUnicodeObject_CAST(op) \ - (assert(PyUnicode_Check(op)), \ - _Py_CAST(PyUnicodeObject*, (op))) - - -/* --- Flexible String Representation Helper Macros (PEP 393) -------------- */ - -/* Values for PyASCIIObject.state: */ - -/* Interning state. */ -#define SSTATE_NOT_INTERNED 0 -#define SSTATE_INTERNED_MORTAL 1 -#define SSTATE_INTERNED_IMMORTAL 2 - -/* Use only if you know it's a string */ -static inline unsigned int PyUnicode_CHECK_INTERNED(PyObject *op) { - return _PyASCIIObject_CAST(op)->state.interned; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_CHECK_INTERNED(op) PyUnicode_CHECK_INTERNED(_PyObject_CAST(op)) -#endif - -/* Fast check to determine whether an object is ready. Equivalent to: - PyUnicode_IS_COMPACT(op) || _PyUnicodeObject_CAST(op)->data.any */ -static inline unsigned int PyUnicode_IS_READY(PyObject *op) { - return _PyASCIIObject_CAST(op)->state.ready; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_IS_READY(op) PyUnicode_IS_READY(_PyObject_CAST(op)) -#endif - -/* Return true if the string contains only ASCII characters, or 0 if not. The - string may be compact (PyUnicode_IS_COMPACT_ASCII) or not, but must be - ready. */ -static inline unsigned int PyUnicode_IS_ASCII(PyObject *op) { - assert(PyUnicode_IS_READY(op)); - return _PyASCIIObject_CAST(op)->state.ascii; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_IS_ASCII(op) PyUnicode_IS_ASCII(_PyObject_CAST(op)) -#endif - -/* Return true if the string is compact or 0 if not. - No type checks or Ready calls are performed. */ -static inline unsigned int PyUnicode_IS_COMPACT(PyObject *op) { - return _PyASCIIObject_CAST(op)->state.compact; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_IS_COMPACT(op) PyUnicode_IS_COMPACT(_PyObject_CAST(op)) -#endif - -/* Return true if the string is a compact ASCII string (use PyASCIIObject - structure), or 0 if not. No type checks or Ready calls are performed. */ -static inline int PyUnicode_IS_COMPACT_ASCII(PyObject *op) { - return (_PyASCIIObject_CAST(op)->state.ascii && PyUnicode_IS_COMPACT(op)); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_IS_COMPACT_ASCII(op) PyUnicode_IS_COMPACT_ASCII(_PyObject_CAST(op)) -#endif - -enum PyUnicode_Kind { -/* String contains only wstr byte characters. This is only possible - when the string was created with a legacy API and _PyUnicode_Ready() - has not been called yet. */ - PyUnicode_WCHAR_KIND = 0, -/* Return values of the PyUnicode_KIND() function: */ - PyUnicode_1BYTE_KIND = 1, - PyUnicode_2BYTE_KIND = 2, - PyUnicode_4BYTE_KIND = 4 -}; - -/* Return one of the PyUnicode_*_KIND values defined above. */ -#define PyUnicode_KIND(op) \ - (assert(PyUnicode_IS_READY(op)), \ - _PyASCIIObject_CAST(op)->state.kind) - -/* Return a void pointer to the raw unicode buffer. */ -static inline void* _PyUnicode_COMPACT_DATA(PyObject *op) { - if (PyUnicode_IS_ASCII(op)) { - return _Py_STATIC_CAST(void*, (_PyASCIIObject_CAST(op) + 1)); - } - return _Py_STATIC_CAST(void*, (_PyCompactUnicodeObject_CAST(op) + 1)); -} - -static inline void* _PyUnicode_NONCOMPACT_DATA(PyObject *op) { - void *data; - assert(!PyUnicode_IS_COMPACT(op)); - data = _PyUnicodeObject_CAST(op)->data.any; - assert(data != NULL); - return data; -} - -static inline void* PyUnicode_DATA(PyObject *op) { - if (PyUnicode_IS_COMPACT(op)) { - return _PyUnicode_COMPACT_DATA(op); - } - return _PyUnicode_NONCOMPACT_DATA(op); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_DATA(op) PyUnicode_DATA(_PyObject_CAST(op)) -#endif - -/* Return pointers to the canonical representation cast to unsigned char, - Py_UCS2, or Py_UCS4 for direct character access. - No checks are performed, use PyUnicode_KIND() before to ensure - these will work correctly. */ - -#define PyUnicode_1BYTE_DATA(op) _Py_STATIC_CAST(Py_UCS1*, PyUnicode_DATA(op)) -#define PyUnicode_2BYTE_DATA(op) _Py_STATIC_CAST(Py_UCS2*, PyUnicode_DATA(op)) -#define PyUnicode_4BYTE_DATA(op) _Py_STATIC_CAST(Py_UCS4*, PyUnicode_DATA(op)) - -/* Returns the length of the unicode string. The caller has to make sure that - the string has it's canonical representation set before calling - this function. Call PyUnicode_(FAST_)Ready to ensure that. */ -static inline Py_ssize_t PyUnicode_GET_LENGTH(PyObject *op) { - assert(PyUnicode_IS_READY(op)); - return _PyASCIIObject_CAST(op)->length; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_GET_LENGTH(op) PyUnicode_GET_LENGTH(_PyObject_CAST(op)) -#endif - -/* Write into the canonical representation, this function does not do any sanity - checks and is intended for usage in loops. The caller should cache the - kind and data pointers obtained from other function calls. - index is the index in the string (starts at 0) and value is the new - code point value which should be written to that location. */ -static inline void PyUnicode_WRITE(int kind, void *data, - Py_ssize_t index, Py_UCS4 value) -{ - if (kind == PyUnicode_1BYTE_KIND) { - assert(value <= 0xffU); - _Py_STATIC_CAST(Py_UCS1*, data)[index] = _Py_STATIC_CAST(Py_UCS1, value); - } - else if (kind == PyUnicode_2BYTE_KIND) { - assert(value <= 0xffffU); - _Py_STATIC_CAST(Py_UCS2*, data)[index] = _Py_STATIC_CAST(Py_UCS2, value); - } - else { - assert(kind == PyUnicode_4BYTE_KIND); - assert(value <= 0x10ffffU); - _Py_STATIC_CAST(Py_UCS4*, data)[index] = value; - } -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -#define PyUnicode_WRITE(kind, data, index, value) \ - PyUnicode_WRITE(_Py_STATIC_CAST(int, kind), _Py_CAST(void*, data), \ - (index), _Py_STATIC_CAST(Py_UCS4, value)) -#endif - -/* Read a code point from the string's canonical representation. No checks - or ready calls are performed. */ -static inline Py_UCS4 PyUnicode_READ(int kind, - const void *data, Py_ssize_t index) -{ - if (kind == PyUnicode_1BYTE_KIND) { - return _Py_STATIC_CAST(const Py_UCS1*, data)[index]; - } - if (kind == PyUnicode_2BYTE_KIND) { - return _Py_STATIC_CAST(const Py_UCS2*, data)[index]; - } - assert(kind == PyUnicode_4BYTE_KIND); - return _Py_STATIC_CAST(const Py_UCS4*, data)[index]; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -#define PyUnicode_READ(kind, data, index) \ - PyUnicode_READ(_Py_STATIC_CAST(int, kind), \ - _Py_STATIC_CAST(const void*, data), \ - (index)) -#endif - -/* PyUnicode_READ_CHAR() is less efficient than PyUnicode_READ() because it - calls PyUnicode_KIND() and might call it twice. For single reads, use - PyUnicode_READ_CHAR, for multiple consecutive reads callers should - cache kind and use PyUnicode_READ instead. */ -static inline Py_UCS4 PyUnicode_READ_CHAR(PyObject *unicode, Py_ssize_t index) -{ - int kind; - assert(PyUnicode_IS_READY(unicode)); - kind = PyUnicode_KIND(unicode); - if (kind == PyUnicode_1BYTE_KIND) { - return PyUnicode_1BYTE_DATA(unicode)[index]; - } - if (kind == PyUnicode_2BYTE_KIND) { - return PyUnicode_2BYTE_DATA(unicode)[index]; - } - assert(kind == PyUnicode_4BYTE_KIND); - return PyUnicode_4BYTE_DATA(unicode)[index]; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_READ_CHAR(unicode, index) \ - PyUnicode_READ_CHAR(_PyObject_CAST(unicode), (index)) -#endif - -/* Return a maximum character value which is suitable for creating another - string based on op. This is always an approximation but more efficient - than iterating over the string. */ -static inline Py_UCS4 PyUnicode_MAX_CHAR_VALUE(PyObject *op) -{ - int kind; - - assert(PyUnicode_IS_READY(op)); - if (PyUnicode_IS_ASCII(op)) { - return 0x7fU; - } - - kind = PyUnicode_KIND(op); - if (kind == PyUnicode_1BYTE_KIND) { - return 0xffU; - } - if (kind == PyUnicode_2BYTE_KIND) { - return 0xffffU; - } - assert(kind == PyUnicode_4BYTE_KIND); - return 0x10ffffU; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_MAX_CHAR_VALUE(op) \ - PyUnicode_MAX_CHAR_VALUE(_PyObject_CAST(op)) -#endif - -/* === Public API ========================================================= */ - -/* --- Plain Py_UNICODE --------------------------------------------------- */ - -/* With PEP 393, this is the recommended way to allocate a new unicode object. - This function will allocate the object and its buffer in a single memory - block. Objects created using this function are not resizable. */ -PyAPI_FUNC(PyObject*) PyUnicode_New( - Py_ssize_t size, /* Number of code points in the new string */ - Py_UCS4 maxchar /* maximum code point value in the string */ - ); - -/* Initializes the canonical string representation from the deprecated - wstr/Py_UNICODE representation. This function is used to convert Unicode - objects which were created using the old API to the new flexible format - introduced with PEP 393. - - Don't call this function directly, use the public PyUnicode_READY() function - instead. */ -PyAPI_FUNC(int) _PyUnicode_Ready( - PyObject *unicode /* Unicode object */ - ); - -/* PyUnicode_READY() does less work than _PyUnicode_Ready() in the best - case. If the canonical representation is not yet set, it will still call - _PyUnicode_Ready(). - Returns 0 on success and -1 on errors. */ -static inline int PyUnicode_READY(PyObject *op) -{ - if (PyUnicode_IS_READY(op)) { - return 0; - } - return _PyUnicode_Ready(op); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_READY(op) PyUnicode_READY(_PyObject_CAST(op)) -#endif - -/* Get a copy of a Unicode string. */ -PyAPI_FUNC(PyObject*) _PyUnicode_Copy( - PyObject *unicode - ); - -/* Copy character from one unicode object into another, this function performs - character conversion when necessary and falls back to memcpy() if possible. - - Fail if to is too small (smaller than *how_many* or smaller than - len(from)-from_start), or if kind(from[from_start:from_start+how_many]) > - kind(to), or if *to* has more than 1 reference. - - Return the number of written character, or return -1 and raise an exception - on error. - - Pseudo-code: - - how_many = min(how_many, len(from) - from_start) - to[to_start:to_start+how_many] = from[from_start:from_start+how_many] - return how_many - - Note: The function doesn't write a terminating null character. - */ -PyAPI_FUNC(Py_ssize_t) PyUnicode_CopyCharacters( - PyObject *to, - Py_ssize_t to_start, - PyObject *from, - Py_ssize_t from_start, - Py_ssize_t how_many - ); - -/* Unsafe version of PyUnicode_CopyCharacters(): don't check arguments and so - may crash if parameters are invalid (e.g. if the output string - is too short). */ -PyAPI_FUNC(void) _PyUnicode_FastCopyCharacters( - PyObject *to, - Py_ssize_t to_start, - PyObject *from, - Py_ssize_t from_start, - Py_ssize_t how_many - ); - -/* Fill a string with a character: write fill_char into - unicode[start:start+length]. - - Fail if fill_char is bigger than the string maximum character, or if the - string has more than 1 reference. - - Return the number of written character, or return -1 and raise an exception - on error. */ -PyAPI_FUNC(Py_ssize_t) PyUnicode_Fill( - PyObject *unicode, - Py_ssize_t start, - Py_ssize_t length, - Py_UCS4 fill_char - ); - -/* Unsafe version of PyUnicode_Fill(): don't check arguments and so may crash - if parameters are invalid (e.g. if length is longer than the string). */ -PyAPI_FUNC(void) _PyUnicode_FastFill( - PyObject *unicode, - Py_ssize_t start, - Py_ssize_t length, - Py_UCS4 fill_char - ); - -/* Create a new string from a buffer of Py_UCS1, Py_UCS2 or Py_UCS4 characters. - Scan the string to find the maximum character. */ -PyAPI_FUNC(PyObject*) PyUnicode_FromKindAndData( - int kind, - const void *buffer, - Py_ssize_t size); - -/* Create a new string from a buffer of ASCII characters. - WARNING: Don't check if the string contains any non-ASCII character. */ -PyAPI_FUNC(PyObject*) _PyUnicode_FromASCII( - const char *buffer, - Py_ssize_t size); - -/* Compute the maximum character of the substring unicode[start:end]. - Return 127 for an empty string. */ -PyAPI_FUNC(Py_UCS4) _PyUnicode_FindMaxChar ( - PyObject *unicode, - Py_ssize_t start, - Py_ssize_t end); - -/* --- Legacy deprecated API ---------------------------------------------- */ - -/* Create a Unicode Object from the Py_UNICODE buffer u of the given - size. - - u may be NULL which causes the contents to be undefined. It is the - user's responsibility to fill in the needed data afterwards. Note - that modifying the Unicode object contents after construction is - only allowed if u was set to NULL. - - The buffer is copied into the new object. */ -Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_FromUnicode( - const Py_UNICODE *u, /* Unicode buffer */ - Py_ssize_t size /* size of buffer */ - ); - -/* Return a read-only pointer to the Unicode object's internal - Py_UNICODE buffer. - If the wchar_t/Py_UNICODE representation is not yet available, this - function will calculate it. */ -Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode( - PyObject *unicode /* Unicode object */ - ); - -/* Similar to PyUnicode_AsUnicode(), but raises a ValueError if the string - contains null characters. */ -PyAPI_FUNC(const Py_UNICODE *) _PyUnicode_AsUnicode( - PyObject *unicode /* Unicode object */ - ); - -/* Return a read-only pointer to the Unicode object's internal - Py_UNICODE buffer and save the length at size. - If the wchar_t/Py_UNICODE representation is not yet available, this - function will calculate it. */ - -Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicodeAndSize( - PyObject *unicode, /* Unicode object */ - Py_ssize_t *size /* location where to save the length */ - ); - - -/* Fast access macros */ - -Py_DEPRECATED(3.3) -static inline Py_ssize_t PyUnicode_WSTR_LENGTH(PyObject *op) -{ - if (PyUnicode_IS_COMPACT_ASCII(op)) { - return _PyASCIIObject_CAST(op)->length; - } - else { - return _PyCompactUnicodeObject_CAST(op)->wstr_length; - } -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_WSTR_LENGTH(op) PyUnicode_WSTR_LENGTH(_PyObject_CAST(op)) -#endif - -/* Returns the deprecated Py_UNICODE representation's size in code units - (this includes surrogate pairs as 2 units). - If the Py_UNICODE representation is not available, it will be computed - on request. Use PyUnicode_GET_LENGTH() for the length in code points. */ - -Py_DEPRECATED(3.3) -static inline Py_ssize_t PyUnicode_GET_SIZE(PyObject *op) -{ - _Py_COMP_DIAG_PUSH - _Py_COMP_DIAG_IGNORE_DEPR_DECLS - if (_PyASCIIObject_CAST(op)->wstr == _Py_NULL) { - (void)PyUnicode_AsUnicode(op); - assert(_PyASCIIObject_CAST(op)->wstr != _Py_NULL); - } - return PyUnicode_WSTR_LENGTH(op); - _Py_COMP_DIAG_POP -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_GET_SIZE(op) PyUnicode_GET_SIZE(_PyObject_CAST(op)) -#endif - -Py_DEPRECATED(3.3) -static inline Py_ssize_t PyUnicode_GET_DATA_SIZE(PyObject *op) -{ - _Py_COMP_DIAG_PUSH - _Py_COMP_DIAG_IGNORE_DEPR_DECLS - return PyUnicode_GET_SIZE(op) * Py_UNICODE_SIZE; - _Py_COMP_DIAG_POP -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_GET_DATA_SIZE(op) PyUnicode_GET_DATA_SIZE(_PyObject_CAST(op)) -#endif - -/* Alias for PyUnicode_AsUnicode(). This will create a wchar_t/Py_UNICODE - representation on demand. Using this macro is very inefficient now, - try to port your code to use the new PyUnicode_*BYTE_DATA() macros or - use PyUnicode_WRITE() and PyUnicode_READ(). */ - -Py_DEPRECATED(3.3) -static inline Py_UNICODE* PyUnicode_AS_UNICODE(PyObject *op) -{ - wchar_t *wstr = _PyASCIIObject_CAST(op)->wstr; - if (wstr != _Py_NULL) { - return wstr; - } - - _Py_COMP_DIAG_PUSH - _Py_COMP_DIAG_IGNORE_DEPR_DECLS - return PyUnicode_AsUnicode(op); - _Py_COMP_DIAG_POP -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_AS_UNICODE(op) PyUnicode_AS_UNICODE(_PyObject_CAST(op)) -#endif - -Py_DEPRECATED(3.3) -static inline const char* PyUnicode_AS_DATA(PyObject *op) -{ - _Py_COMP_DIAG_PUSH - _Py_COMP_DIAG_IGNORE_DEPR_DECLS - Py_UNICODE *data = PyUnicode_AS_UNICODE(op); - // In C++, casting directly PyUnicode* to const char* is not valid - return _Py_STATIC_CAST(const char*, _Py_STATIC_CAST(const void*, data)); - _Py_COMP_DIAG_POP -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyUnicode_AS_DATA(op) PyUnicode_AS_DATA(_PyObject_CAST(op)) -#endif - - -/* --- _PyUnicodeWriter API ----------------------------------------------- */ - -typedef struct { - PyObject *buffer; - void *data; - enum PyUnicode_Kind kind; - Py_UCS4 maxchar; - Py_ssize_t size; - Py_ssize_t pos; - - /* minimum number of allocated characters (default: 0) */ - Py_ssize_t min_length; - - /* minimum character (default: 127, ASCII) */ - Py_UCS4 min_char; - - /* If non-zero, overallocate the buffer (default: 0). */ - unsigned char overallocate; - - /* If readonly is 1, buffer is a shared string (cannot be modified) - and size is set to 0. */ - unsigned char readonly; -} _PyUnicodeWriter ; - -/* Initialize a Unicode writer. - * - * By default, the minimum buffer size is 0 character and overallocation is - * disabled. Set min_length, min_char and overallocate attributes to control - * the allocation of the buffer. */ -PyAPI_FUNC(void) -_PyUnicodeWriter_Init(_PyUnicodeWriter *writer); - -/* Prepare the buffer to write 'length' characters - with the specified maximum character. - - Return 0 on success, raise an exception and return -1 on error. */ -#define _PyUnicodeWriter_Prepare(WRITER, LENGTH, MAXCHAR) \ - (((MAXCHAR) <= (WRITER)->maxchar \ - && (LENGTH) <= (WRITER)->size - (WRITER)->pos) \ - ? 0 \ - : (((LENGTH) == 0) \ - ? 0 \ - : _PyUnicodeWriter_PrepareInternal((WRITER), (LENGTH), (MAXCHAR)))) - -/* Don't call this function directly, use the _PyUnicodeWriter_Prepare() macro - instead. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_PrepareInternal(_PyUnicodeWriter *writer, - Py_ssize_t length, Py_UCS4 maxchar); - -/* Prepare the buffer to have at least the kind KIND. - For example, kind=PyUnicode_2BYTE_KIND ensures that the writer will - support characters in range U+000-U+FFFF. - - Return 0 on success, raise an exception and return -1 on error. */ -#define _PyUnicodeWriter_PrepareKind(WRITER, KIND) \ - (assert((KIND) != PyUnicode_WCHAR_KIND), \ - (KIND) <= (WRITER)->kind \ - ? 0 \ - : _PyUnicodeWriter_PrepareKindInternal((WRITER), (KIND))) - -/* Don't call this function directly, use the _PyUnicodeWriter_PrepareKind() - macro instead. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_PrepareKindInternal(_PyUnicodeWriter *writer, - enum PyUnicode_Kind kind); - -/* Append a Unicode character. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteChar(_PyUnicodeWriter *writer, - Py_UCS4 ch - ); - -/* Append a Unicode string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteStr(_PyUnicodeWriter *writer, - PyObject *str /* Unicode string */ - ); - -/* Append a substring of a Unicode string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteSubstring(_PyUnicodeWriter *writer, - PyObject *str, /* Unicode string */ - Py_ssize_t start, - Py_ssize_t end - ); - -/* Append an ASCII-encoded byte string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteASCIIString(_PyUnicodeWriter *writer, - const char *str, /* ASCII-encoded byte string */ - Py_ssize_t len /* number of bytes, or -1 if unknown */ - ); - -/* Append a latin1-encoded byte string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteLatin1String(_PyUnicodeWriter *writer, - const char *str, /* latin1-encoded byte string */ - Py_ssize_t len /* length in bytes */ - ); - -/* Get the value of the writer as a Unicode string. Clear the - buffer of the writer. Raise an exception and return NULL - on error. */ -PyAPI_FUNC(PyObject *) -_PyUnicodeWriter_Finish(_PyUnicodeWriter *writer); - -/* Deallocate memory of a writer (clear its internal buffer). */ -PyAPI_FUNC(void) -_PyUnicodeWriter_Dealloc(_PyUnicodeWriter *writer); - - -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -PyAPI_FUNC(int) _PyUnicode_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); - -/* --- Manage the default encoding ---------------------------------------- */ - -/* Returns a pointer to the default encoding (UTF-8) of the - Unicode object unicode. - - Like PyUnicode_AsUTF8AndSize(), this also caches the UTF-8 representation - in the unicodeobject. - - _PyUnicode_AsString is a #define for PyUnicode_AsUTF8 to - support the previous internal function with the same behaviour. - - Use of this API is DEPRECATED since no size information can be - extracted from the returned data. -*/ - -PyAPI_FUNC(const char *) PyUnicode_AsUTF8(PyObject *unicode); - -#define _PyUnicode_AsString PyUnicode_AsUTF8 - -/* --- UTF-7 Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeUTF7( - PyObject *unicode, /* Unicode object */ - int base64SetO, /* Encode RFC2152 Set O characters in base64 */ - int base64WhiteSpace, /* Encode whitespace (sp, ht, nl, cr) in base64 */ - const char *errors /* error handling */ - ); - -/* --- UTF-8 Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) _PyUnicode_AsUTF8String( - PyObject *unicode, - const char *errors); - -/* --- UTF-32 Codecs ------------------------------------------------------ */ - -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeUTF32( - PyObject *object, /* Unicode object */ - const char *errors, /* error handling */ - int byteorder /* byteorder to use 0=BOM+native;-1=LE,1=BE */ - ); - -/* --- UTF-16 Codecs ------------------------------------------------------ */ - -/* Returns a Python string object holding the UTF-16 encoded value of - the Unicode data. - - If byteorder is not 0, output is written according to the following - byte order: - - byteorder == -1: little endian - byteorder == 0: native byte order (writes a BOM mark) - byteorder == 1: big endian - - If byteorder is 0, the output string will always start with the - Unicode BOM mark (U+FEFF). In the other two modes, no BOM mark is - prepended. -*/ -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeUTF16( - PyObject* unicode, /* Unicode object */ - const char *errors, /* error handling */ - int byteorder /* byteorder to use 0=BOM+native;-1=LE,1=BE */ - ); - -/* --- Unicode-Escape Codecs ---------------------------------------------- */ - -/* Variant of PyUnicode_DecodeUnicodeEscape that supports partial decoding. */ -PyAPI_FUNC(PyObject*) _PyUnicode_DecodeUnicodeEscapeStateful( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ -); -/* Helper for PyUnicode_DecodeUnicodeEscape that detects invalid escape - chars. */ -PyAPI_FUNC(PyObject*) _PyUnicode_DecodeUnicodeEscapeInternal( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed, /* bytes consumed */ - const char **first_invalid_escape /* on return, points to first - invalid escaped char in - string. */ -); - -/* --- Raw-Unicode-Escape Codecs ---------------------------------------------- */ - -/* Variant of PyUnicode_DecodeRawUnicodeEscape that supports partial decoding. */ -PyAPI_FUNC(PyObject*) _PyUnicode_DecodeRawUnicodeEscapeStateful( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ -); - -/* --- Latin-1 Codecs ----------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) _PyUnicode_AsLatin1String( - PyObject* unicode, - const char* errors); - -/* --- ASCII Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) _PyUnicode_AsASCIIString( - PyObject* unicode, - const char* errors); - -/* --- Character Map Codecs ----------------------------------------------- */ - -/* Translate an Unicode object by applying a character mapping table to - it and return the resulting Unicode object. - - The mapping table must map Unicode ordinal integers to Unicode strings, - Unicode ordinal integers or None (causing deletion of the character). - - Mapping tables may be dictionaries or sequences. Unmapped character - ordinals (ones which cause a LookupError) are left untouched and - are copied as-is. -*/ -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeCharmap( - PyObject *unicode, /* Unicode object */ - PyObject *mapping, /* encoding mapping */ - const char *errors /* error handling */ - ); - -/* --- Decimal Encoder ---------------------------------------------------- */ - -/* Coverts a Unicode object holding a decimal value to an ASCII string - for using in int, float and complex parsers. - Transforms code points that have decimal digit property to the - corresponding ASCII digit code points. Transforms spaces to ASCII. - Transforms code points starting from the first non-ASCII code point that - is neither a decimal digit nor a space to the end into '?'. */ - -PyAPI_FUNC(PyObject*) _PyUnicode_TransformDecimalAndSpaceToASCII( - PyObject *unicode /* Unicode object */ - ); - -/* --- Methods & Slots ---------------------------------------------------- */ - -PyAPI_FUNC(PyObject *) _PyUnicode_JoinArray( - PyObject *separator, - PyObject *const *items, - Py_ssize_t seqlen - ); - -/* Test whether a unicode is equal to ASCII identifier. Return 1 if true, - 0 otherwise. The right argument must be ASCII identifier. - Any error occurs inside will be cleared before return. */ -PyAPI_FUNC(int) _PyUnicode_EqualToASCIIId( - PyObject *left, /* Left string */ - _Py_Identifier *right /* Right identifier */ - ); - -/* Test whether a unicode is equal to ASCII string. Return 1 if true, - 0 otherwise. The right argument must be ASCII-encoded string. - Any error occurs inside will be cleared before return. */ -PyAPI_FUNC(int) _PyUnicode_EqualToASCIIString( - PyObject *left, - const char *right /* ASCII-encoded string */ - ); - -/* Externally visible for str.strip(unicode) */ -PyAPI_FUNC(PyObject *) _PyUnicode_XStrip( - PyObject *self, - int striptype, - PyObject *sepobj - ); - -/* Using explicit passed-in values, insert the thousands grouping - into the string pointed to by buffer. For the argument descriptions, - see Objects/stringlib/localeutil.h */ -PyAPI_FUNC(Py_ssize_t) _PyUnicode_InsertThousandsGrouping( - _PyUnicodeWriter *writer, - Py_ssize_t n_buffer, - PyObject *digits, - Py_ssize_t d_pos, - Py_ssize_t n_digits, - Py_ssize_t min_width, - const char *grouping, - PyObject *thousands_sep, - Py_UCS4 *maxchar); - -/* === Characters Type APIs =============================================== */ - -/* Helper array used by Py_UNICODE_ISSPACE(). */ - -PyAPI_DATA(const unsigned char) _Py_ascii_whitespace[]; - -/* These should not be used directly. Use the Py_UNICODE_IS* and - Py_UNICODE_TO* macros instead. - - These APIs are implemented in Objects/unicodectype.c. - -*/ - -PyAPI_FUNC(int) _PyUnicode_IsLowercase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsUppercase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsTitlecase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsXidStart( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsXidContinue( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsWhitespace( - const Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsLinebreak( - const Py_UCS4 ch /* Unicode character */ - ); - -/* Py_DEPRECATED(3.3) */ PyAPI_FUNC(Py_UCS4) _PyUnicode_ToLowercase( - Py_UCS4 ch /* Unicode character */ - ); - -/* Py_DEPRECATED(3.3) */ PyAPI_FUNC(Py_UCS4) _PyUnicode_ToUppercase( - Py_UCS4 ch /* Unicode character */ - ); - -Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UCS4) _PyUnicode_ToTitlecase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_ToLowerFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_ToTitleFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_ToUpperFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_ToFoldedFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_IsCaseIgnorable( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsCased( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_ToDecimalDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_ToDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(double) _PyUnicode_ToNumeric( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsDecimalDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsNumeric( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsPrintable( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsAlpha( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(PyObject*) _PyUnicode_FormatLong(PyObject *, int, int, int); - -/* Return an interned Unicode object for an Identifier; may fail if there is no memory.*/ -PyAPI_FUNC(PyObject*) _PyUnicode_FromId(_Py_Identifier*); - -/* Fast equality check when the inputs are known to be exact unicode types - and where the hash values are equal (i.e. a very probable match) */ -PyAPI_FUNC(int) _PyUnicode_EQ(PyObject *, PyObject *); - -/* Equality check. Returns -1 on failure. */ -PyAPI_FUNC(int) _PyUnicode_Equal(PyObject *, PyObject *); - -PyAPI_FUNC(int) _PyUnicode_WideCharString_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyUnicode_WideCharString_Opt_Converter(PyObject *, void *); - -PyAPI_FUNC(Py_ssize_t) _PyUnicode_ScanIdentifier(PyObject *); diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/warnings.h b/_Pre_Builds/_Python311_cpp/include/cpython/warnings.h deleted file mode 100644 index 2ef8e3c..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/warnings.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef Py_CPYTHON_WARNINGS_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(int) PyErr_WarnExplicitObject( - PyObject *category, - PyObject *message, - PyObject *filename, - int lineno, - PyObject *module, - PyObject *registry); - -PyAPI_FUNC(int) PyErr_WarnExplicitFormat( - PyObject *category, - const char *filename, int lineno, - const char *module, PyObject *registry, - const char *format, ...); - -// DEPRECATED: Use PyErr_WarnEx() instead. -#define PyErr_Warn(category, msg) PyErr_WarnEx(category, msg, 1) diff --git a/_Pre_Builds/_Python311_cpp/include/cpython/weakrefobject.h b/_Pre_Builds/_Python311_cpp/include/cpython/weakrefobject.h deleted file mode 100644 index 26b364f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/cpython/weakrefobject.h +++ /dev/null @@ -1,58 +0,0 @@ -#ifndef Py_CPYTHON_WEAKREFOBJECT_H -# error "this header file must not be included directly" -#endif - -/* PyWeakReference is the base struct for the Python ReferenceType, ProxyType, - * and CallableProxyType. - */ -struct _PyWeakReference { - PyObject_HEAD - - /* The object to which this is a weak reference, or Py_None if none. - * Note that this is a stealth reference: wr_object's refcount is - * not incremented to reflect this pointer. - */ - PyObject *wr_object; - - /* A callable to invoke when wr_object dies, or NULL if none. */ - PyObject *wr_callback; - - /* A cache for wr_object's hash code. As usual for hashes, this is -1 - * if the hash code isn't known yet. - */ - Py_hash_t hash; - - /* If wr_object is weakly referenced, wr_object has a doubly-linked NULL- - * terminated list of weak references to it. These are the list pointers. - * If wr_object goes away, wr_object is set to Py_None, and these pointers - * have no meaning then. - */ - PyWeakReference *wr_prev; - PyWeakReference *wr_next; - vectorcallfunc vectorcall; -}; - -PyAPI_FUNC(Py_ssize_t) _PyWeakref_GetWeakrefCount(PyWeakReference *head); - -PyAPI_FUNC(void) _PyWeakref_ClearRef(PyWeakReference *self); - -static inline PyObject* PyWeakref_GET_OBJECT(PyObject *ref_obj) { - PyWeakReference *ref; - PyObject *obj; - assert(PyWeakref_Check(ref_obj)); - ref = _Py_CAST(PyWeakReference*, ref_obj); - obj = ref->wr_object; - // Explanation for the Py_REFCNT() check: when a weakref's target is part - // of a long chain of deallocations which triggers the trashcan mechanism, - // clearing the weakrefs can be delayed long after the target's refcount - // has dropped to zero. In the meantime, code accessing the weakref will - // be able to "see" the target object even though it is supposed to be - // unreachable. See issue gh-60806. - if (Py_REFCNT(obj) > 0) { - return obj; - } - return Py_None; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyWeakref_GET_OBJECT(ref) PyWeakref_GET_OBJECT(_PyObject_CAST(ref)) -#endif diff --git a/_Pre_Builds/_Python311_cpp/include/datetime.h b/_Pre_Builds/_Python311_cpp/include/datetime.h deleted file mode 100644 index bb56520..0000000 --- a/_Pre_Builds/_Python311_cpp/include/datetime.h +++ /dev/null @@ -1,267 +0,0 @@ -/* datetime.h - */ -#ifndef Py_LIMITED_API -#ifndef DATETIME_H -#define DATETIME_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Fields are packed into successive bytes, each viewed as unsigned and - * big-endian, unless otherwise noted: - * - * byte offset - * 0 year 2 bytes, 1-9999 - * 2 month 1 byte, 1-12 - * 3 day 1 byte, 1-31 - * 4 hour 1 byte, 0-23 - * 5 minute 1 byte, 0-59 - * 6 second 1 byte, 0-59 - * 7 usecond 3 bytes, 0-999999 - * 10 - */ - -/* # of bytes for year, month, and day. */ -#define _PyDateTime_DATE_DATASIZE 4 - -/* # of bytes for hour, minute, second, and usecond. */ -#define _PyDateTime_TIME_DATASIZE 6 - -/* # of bytes for year, month, day, hour, minute, second, and usecond. */ -#define _PyDateTime_DATETIME_DATASIZE 10 - - -typedef struct -{ - PyObject_HEAD - Py_hash_t hashcode; /* -1 when unknown */ - int days; /* -MAX_DELTA_DAYS <= days <= MAX_DELTA_DAYS */ - int seconds; /* 0 <= seconds < 24*3600 is invariant */ - int microseconds; /* 0 <= microseconds < 1000000 is invariant */ -} PyDateTime_Delta; - -typedef struct -{ - PyObject_HEAD /* a pure abstract base class */ -} PyDateTime_TZInfo; - - -/* The datetime and time types have hashcodes, and an optional tzinfo member, - * present if and only if hastzinfo is true. - */ -#define _PyTZINFO_HEAD \ - PyObject_HEAD \ - Py_hash_t hashcode; \ - char hastzinfo; /* boolean flag */ - -/* No _PyDateTime_BaseTZInfo is allocated; it's just to have something - * convenient to cast to, when getting at the hastzinfo member of objects - * starting with _PyTZINFO_HEAD. - */ -typedef struct -{ - _PyTZINFO_HEAD -} _PyDateTime_BaseTZInfo; - -/* All time objects are of PyDateTime_TimeType, but that can be allocated - * in two ways, with or without a tzinfo member. Without is the same as - * tzinfo == None, but consumes less memory. _PyDateTime_BaseTime is an - * internal struct used to allocate the right amount of space for the - * "without" case. - */ -#define _PyDateTime_TIMEHEAD \ - _PyTZINFO_HEAD \ - unsigned char data[_PyDateTime_TIME_DATASIZE]; - -typedef struct -{ - _PyDateTime_TIMEHEAD -} _PyDateTime_BaseTime; /* hastzinfo false */ - -typedef struct -{ - _PyDateTime_TIMEHEAD - unsigned char fold; - PyObject *tzinfo; -} PyDateTime_Time; /* hastzinfo true */ - - -/* All datetime objects are of PyDateTime_DateTimeType, but that can be - * allocated in two ways too, just like for time objects above. In addition, - * the plain date type is a base class for datetime, so it must also have - * a hastzinfo member (although it's unused there). - */ -typedef struct -{ - _PyTZINFO_HEAD - unsigned char data[_PyDateTime_DATE_DATASIZE]; -} PyDateTime_Date; - -#define _PyDateTime_DATETIMEHEAD \ - _PyTZINFO_HEAD \ - unsigned char data[_PyDateTime_DATETIME_DATASIZE]; - -typedef struct -{ - _PyDateTime_DATETIMEHEAD -} _PyDateTime_BaseDateTime; /* hastzinfo false */ - -typedef struct -{ - _PyDateTime_DATETIMEHEAD - unsigned char fold; - PyObject *tzinfo; -} PyDateTime_DateTime; /* hastzinfo true */ - - -/* Apply for date and datetime instances. */ - -// o is a pointer to a time or a datetime object. -#define _PyDateTime_HAS_TZINFO(o) (((_PyDateTime_BaseTZInfo *)(o))->hastzinfo) - -#define PyDateTime_GET_YEAR(o) ((((PyDateTime_Date*)o)->data[0] << 8) | \ - ((PyDateTime_Date*)o)->data[1]) -#define PyDateTime_GET_MONTH(o) (((PyDateTime_Date*)o)->data[2]) -#define PyDateTime_GET_DAY(o) (((PyDateTime_Date*)o)->data[3]) - -#define PyDateTime_DATE_GET_HOUR(o) (((PyDateTime_DateTime*)o)->data[4]) -#define PyDateTime_DATE_GET_MINUTE(o) (((PyDateTime_DateTime*)o)->data[5]) -#define PyDateTime_DATE_GET_SECOND(o) (((PyDateTime_DateTime*)o)->data[6]) -#define PyDateTime_DATE_GET_MICROSECOND(o) \ - ((((PyDateTime_DateTime*)o)->data[7] << 16) | \ - (((PyDateTime_DateTime*)o)->data[8] << 8) | \ - ((PyDateTime_DateTime*)o)->data[9]) -#define PyDateTime_DATE_GET_FOLD(o) (((PyDateTime_DateTime*)o)->fold) -#define PyDateTime_DATE_GET_TZINFO(o) (_PyDateTime_HAS_TZINFO(o) ? \ - ((PyDateTime_DateTime *)(o))->tzinfo : Py_None) - -/* Apply for time instances. */ -#define PyDateTime_TIME_GET_HOUR(o) (((PyDateTime_Time*)o)->data[0]) -#define PyDateTime_TIME_GET_MINUTE(o) (((PyDateTime_Time*)o)->data[1]) -#define PyDateTime_TIME_GET_SECOND(o) (((PyDateTime_Time*)o)->data[2]) -#define PyDateTime_TIME_GET_MICROSECOND(o) \ - ((((PyDateTime_Time*)o)->data[3] << 16) | \ - (((PyDateTime_Time*)o)->data[4] << 8) | \ - ((PyDateTime_Time*)o)->data[5]) -#define PyDateTime_TIME_GET_FOLD(o) (((PyDateTime_Time*)o)->fold) -#define PyDateTime_TIME_GET_TZINFO(o) (_PyDateTime_HAS_TZINFO(o) ? \ - ((PyDateTime_Time *)(o))->tzinfo : Py_None) - -/* Apply for time delta instances */ -#define PyDateTime_DELTA_GET_DAYS(o) (((PyDateTime_Delta*)o)->days) -#define PyDateTime_DELTA_GET_SECONDS(o) (((PyDateTime_Delta*)o)->seconds) -#define PyDateTime_DELTA_GET_MICROSECONDS(o) \ - (((PyDateTime_Delta*)o)->microseconds) - - -/* Define structure for C API. */ -typedef struct { - /* type objects */ - PyTypeObject *DateType; - PyTypeObject *DateTimeType; - PyTypeObject *TimeType; - PyTypeObject *DeltaType; - PyTypeObject *TZInfoType; - - /* singletons */ - PyObject *TimeZone_UTC; - - /* constructors */ - PyObject *(*Date_FromDate)(int, int, int, PyTypeObject*); - PyObject *(*DateTime_FromDateAndTime)(int, int, int, int, int, int, int, - PyObject*, PyTypeObject*); - PyObject *(*Time_FromTime)(int, int, int, int, PyObject*, PyTypeObject*); - PyObject *(*Delta_FromDelta)(int, int, int, int, PyTypeObject*); - PyObject *(*TimeZone_FromTimeZone)(PyObject *offset, PyObject *name); - - /* constructors for the DB API */ - PyObject *(*DateTime_FromTimestamp)(PyObject*, PyObject*, PyObject*); - PyObject *(*Date_FromTimestamp)(PyObject*, PyObject*); - - /* PEP 495 constructors */ - PyObject *(*DateTime_FromDateAndTimeAndFold)(int, int, int, int, int, int, int, - PyObject*, int, PyTypeObject*); - PyObject *(*Time_FromTimeAndFold)(int, int, int, int, PyObject*, int, PyTypeObject*); - -} PyDateTime_CAPI; - -#define PyDateTime_CAPSULE_NAME "datetime.datetime_CAPI" - - -/* This block is only used as part of the public API and should not be - * included in _datetimemodule.c, which does not use the C API capsule. - * See bpo-35081 for more details. - * */ -#ifndef _PY_DATETIME_IMPL -/* Define global variable for the C API and a macro for setting it. */ -static PyDateTime_CAPI *PyDateTimeAPI = NULL; - -#define PyDateTime_IMPORT \ - PyDateTimeAPI = (PyDateTime_CAPI *)PyCapsule_Import(PyDateTime_CAPSULE_NAME, 0) - -/* Macro for access to the UTC singleton */ -#define PyDateTime_TimeZone_UTC PyDateTimeAPI->TimeZone_UTC - -/* Macros for type checking when not building the Python core. */ -#define PyDate_Check(op) PyObject_TypeCheck(op, PyDateTimeAPI->DateType) -#define PyDate_CheckExact(op) Py_IS_TYPE(op, PyDateTimeAPI->DateType) - -#define PyDateTime_Check(op) PyObject_TypeCheck(op, PyDateTimeAPI->DateTimeType) -#define PyDateTime_CheckExact(op) Py_IS_TYPE(op, PyDateTimeAPI->DateTimeType) - -#define PyTime_Check(op) PyObject_TypeCheck(op, PyDateTimeAPI->TimeType) -#define PyTime_CheckExact(op) Py_IS_TYPE(op, PyDateTimeAPI->TimeType) - -#define PyDelta_Check(op) PyObject_TypeCheck(op, PyDateTimeAPI->DeltaType) -#define PyDelta_CheckExact(op) Py_IS_TYPE(op, PyDateTimeAPI->DeltaType) - -#define PyTZInfo_Check(op) PyObject_TypeCheck(op, PyDateTimeAPI->TZInfoType) -#define PyTZInfo_CheckExact(op) Py_IS_TYPE(op, PyDateTimeAPI->TZInfoType) - - -/* Macros for accessing constructors in a simplified fashion. */ -#define PyDate_FromDate(year, month, day) \ - PyDateTimeAPI->Date_FromDate(year, month, day, PyDateTimeAPI->DateType) - -#define PyDateTime_FromDateAndTime(year, month, day, hour, min, sec, usec) \ - PyDateTimeAPI->DateTime_FromDateAndTime(year, month, day, hour, \ - min, sec, usec, Py_None, PyDateTimeAPI->DateTimeType) - -#define PyDateTime_FromDateAndTimeAndFold(year, month, day, hour, min, sec, usec, fold) \ - PyDateTimeAPI->DateTime_FromDateAndTimeAndFold(year, month, day, hour, \ - min, sec, usec, Py_None, fold, PyDateTimeAPI->DateTimeType) - -#define PyTime_FromTime(hour, minute, second, usecond) \ - PyDateTimeAPI->Time_FromTime(hour, minute, second, usecond, \ - Py_None, PyDateTimeAPI->TimeType) - -#define PyTime_FromTimeAndFold(hour, minute, second, usecond, fold) \ - PyDateTimeAPI->Time_FromTimeAndFold(hour, minute, second, usecond, \ - Py_None, fold, PyDateTimeAPI->TimeType) - -#define PyDelta_FromDSU(days, seconds, useconds) \ - PyDateTimeAPI->Delta_FromDelta(days, seconds, useconds, 1, \ - PyDateTimeAPI->DeltaType) - -#define PyTimeZone_FromOffset(offset) \ - PyDateTimeAPI->TimeZone_FromTimeZone(offset, NULL) - -#define PyTimeZone_FromOffsetAndName(offset, name) \ - PyDateTimeAPI->TimeZone_FromTimeZone(offset, name) - -/* Macros supporting the DB API. */ -#define PyDateTime_FromTimestamp(args) \ - PyDateTimeAPI->DateTime_FromTimestamp( \ - (PyObject*) (PyDateTimeAPI->DateTimeType), args, NULL) - -#define PyDate_FromTimestamp(args) \ - PyDateTimeAPI->Date_FromTimestamp( \ - (PyObject*) (PyDateTimeAPI->DateType), args) - -#endif /* !defined(_PY_DATETIME_IMPL) */ - -#ifdef __cplusplus -} -#endif -#endif -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/descrobject.h b/_Pre_Builds/_Python311_cpp/include/descrobject.h deleted file mode 100644 index 77f221d..0000000 --- a/_Pre_Builds/_Python311_cpp/include/descrobject.h +++ /dev/null @@ -1,44 +0,0 @@ -/* Descriptors */ -#ifndef Py_DESCROBJECT_H -#define Py_DESCROBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef PyObject *(*getter)(PyObject *, void *); -typedef int (*setter)(PyObject *, PyObject *, void *); - -struct PyGetSetDef { - const char *name; - getter get; - setter set; - const char *doc; - void *closure; -}; - -PyAPI_DATA(PyTypeObject) PyClassMethodDescr_Type; -PyAPI_DATA(PyTypeObject) PyGetSetDescr_Type; -PyAPI_DATA(PyTypeObject) PyMemberDescr_Type; -PyAPI_DATA(PyTypeObject) PyMethodDescr_Type; -PyAPI_DATA(PyTypeObject) PyWrapperDescr_Type; -PyAPI_DATA(PyTypeObject) PyDictProxy_Type; -PyAPI_DATA(PyTypeObject) PyProperty_Type; - -PyAPI_FUNC(PyObject *) PyDescr_NewMethod(PyTypeObject *, PyMethodDef *); -PyAPI_FUNC(PyObject *) PyDescr_NewClassMethod(PyTypeObject *, PyMethodDef *); -PyAPI_FUNC(PyObject *) PyDescr_NewMember(PyTypeObject *, PyMemberDef *); -PyAPI_FUNC(PyObject *) PyDescr_NewGetSet(PyTypeObject *, PyGetSetDef *); - -PyAPI_FUNC(PyObject *) PyDictProxy_New(PyObject *); -PyAPI_FUNC(PyObject *) PyWrapper_New(PyObject *, PyObject *); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_DESCROBJECT_H -# include "cpython/descrobject.h" -# undef Py_CPYTHON_DESCROBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_DESCROBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/dictobject.h b/_Pre_Builds/_Python311_cpp/include/dictobject.h deleted file mode 100644 index a6233d8..0000000 --- a/_Pre_Builds/_Python311_cpp/include/dictobject.h +++ /dev/null @@ -1,97 +0,0 @@ -#ifndef Py_DICTOBJECT_H -#define Py_DICTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Dictionary object type -- mapping from hashable object to object */ - -/* The distribution includes a separate file, Objects/dictnotes.txt, - describing explorations into dictionary design and optimization. - It covers typical dictionary use patterns, the parameters for - tuning dictionaries, and several ideas for possible optimizations. -*/ - -PyAPI_DATA(PyTypeObject) PyDict_Type; - -#define PyDict_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_DICT_SUBCLASS) -#define PyDict_CheckExact(op) Py_IS_TYPE(op, &PyDict_Type) - -PyAPI_FUNC(PyObject *) PyDict_New(void); -PyAPI_FUNC(PyObject *) PyDict_GetItem(PyObject *mp, PyObject *key); -PyAPI_FUNC(PyObject *) PyDict_GetItemWithError(PyObject *mp, PyObject *key); -PyAPI_FUNC(int) PyDict_SetItem(PyObject *mp, PyObject *key, PyObject *item); -PyAPI_FUNC(int) PyDict_DelItem(PyObject *mp, PyObject *key); -PyAPI_FUNC(void) PyDict_Clear(PyObject *mp); -PyAPI_FUNC(int) PyDict_Next( - PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value); -PyAPI_FUNC(PyObject *) PyDict_Keys(PyObject *mp); -PyAPI_FUNC(PyObject *) PyDict_Values(PyObject *mp); -PyAPI_FUNC(PyObject *) PyDict_Items(PyObject *mp); -PyAPI_FUNC(Py_ssize_t) PyDict_Size(PyObject *mp); -PyAPI_FUNC(PyObject *) PyDict_Copy(PyObject *mp); -PyAPI_FUNC(int) PyDict_Contains(PyObject *mp, PyObject *key); - -/* PyDict_Update(mp, other) is equivalent to PyDict_Merge(mp, other, 1). */ -PyAPI_FUNC(int) PyDict_Update(PyObject *mp, PyObject *other); - -/* PyDict_Merge updates/merges from a mapping object (an object that - supports PyMapping_Keys() and PyObject_GetItem()). If override is true, - the last occurrence of a key wins, else the first. The Python - dict.update(other) is equivalent to PyDict_Merge(dict, other, 1). -*/ -PyAPI_FUNC(int) PyDict_Merge(PyObject *mp, - PyObject *other, - int override); - -/* PyDict_MergeFromSeq2 updates/merges from an iterable object producing - iterable objects of length 2. If override is true, the last occurrence - of a key wins, else the first. The Python dict constructor dict(seq2) - is equivalent to dict={}; PyDict_MergeFromSeq(dict, seq2, 1). -*/ -PyAPI_FUNC(int) PyDict_MergeFromSeq2(PyObject *d, - PyObject *seq2, - int override); - -PyAPI_FUNC(PyObject *) PyDict_GetItemString(PyObject *dp, const char *key); -PyAPI_FUNC(int) PyDict_SetItemString(PyObject *dp, const char *key, PyObject *item); -PyAPI_FUNC(int) PyDict_DelItemString(PyObject *dp, const char *key); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -PyAPI_FUNC(PyObject *) PyObject_GenericGetDict(PyObject *, void *); -#endif - -/* Dictionary (keys, values, items) views */ - -PyAPI_DATA(PyTypeObject) PyDictKeys_Type; -PyAPI_DATA(PyTypeObject) PyDictValues_Type; -PyAPI_DATA(PyTypeObject) PyDictItems_Type; - -#define PyDictKeys_Check(op) PyObject_TypeCheck(op, &PyDictKeys_Type) -#define PyDictValues_Check(op) PyObject_TypeCheck(op, &PyDictValues_Type) -#define PyDictItems_Check(op) PyObject_TypeCheck(op, &PyDictItems_Type) -/* This excludes Values, since they are not sets. */ -# define PyDictViewSet_Check(op) \ - (PyDictKeys_Check(op) || PyDictItems_Check(op)) - -/* Dictionary (key, value, items) iterators */ - -PyAPI_DATA(PyTypeObject) PyDictIterKey_Type; -PyAPI_DATA(PyTypeObject) PyDictIterValue_Type; -PyAPI_DATA(PyTypeObject) PyDictIterItem_Type; - -PyAPI_DATA(PyTypeObject) PyDictRevIterKey_Type; -PyAPI_DATA(PyTypeObject) PyDictRevIterItem_Type; -PyAPI_DATA(PyTypeObject) PyDictRevIterValue_Type; - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_DICTOBJECT_H -# include "cpython/dictobject.h" -# undef Py_CPYTHON_DICTOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_DICTOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/dynamic_annotations.h b/_Pre_Builds/_Python311_cpp/include/dynamic_annotations.h deleted file mode 100644 index 4d4def9..0000000 --- a/_Pre_Builds/_Python311_cpp/include/dynamic_annotations.h +++ /dev/null @@ -1,499 +0,0 @@ -/* Copyright (c) 2008-2009, Google Inc. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Neither the name of Google Inc. nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * --- - * Author: Kostya Serebryany - * Copied to CPython by Jeffrey Yasskin, with all macros renamed to - * start with _Py_ to avoid colliding with users embedding Python, and - * with deprecated macros removed. - */ - -/* This file defines dynamic annotations for use with dynamic analysis - tool such as valgrind, PIN, etc. - - Dynamic annotation is a source code annotation that affects - the generated code (that is, the annotation is not a comment). - Each such annotation is attached to a particular - instruction and/or to a particular object (address) in the program. - - The annotations that should be used by users are macros in all upper-case - (e.g., _Py_ANNOTATE_NEW_MEMORY). - - Actual implementation of these macros may differ depending on the - dynamic analysis tool being used. - - See https://code.google.com/p/data-race-test/ for more information. - - This file supports the following dynamic analysis tools: - - None (DYNAMIC_ANNOTATIONS_ENABLED is not defined or zero). - Macros are defined empty. - - ThreadSanitizer, Helgrind, DRD (DYNAMIC_ANNOTATIONS_ENABLED is 1). - Macros are defined as calls to non-inlinable empty functions - that are intercepted by Valgrind. */ - -#ifndef __DYNAMIC_ANNOTATIONS_H__ -#define __DYNAMIC_ANNOTATIONS_H__ - -#ifndef DYNAMIC_ANNOTATIONS_ENABLED -# define DYNAMIC_ANNOTATIONS_ENABLED 0 -#endif - -#if DYNAMIC_ANNOTATIONS_ENABLED != 0 - - /* ------------------------------------------------------------- - Annotations useful when implementing condition variables such as CondVar, - using conditional critical sections (Await/LockWhen) and when constructing - user-defined synchronization mechanisms. - - The annotations _Py_ANNOTATE_HAPPENS_BEFORE() and - _Py_ANNOTATE_HAPPENS_AFTER() can be used to define happens-before arcs in - user-defined synchronization mechanisms: the race detector will infer an - arc from the former to the latter when they share the same argument - pointer. - - Example 1 (reference counting): - - void Unref() { - _Py_ANNOTATE_HAPPENS_BEFORE(&refcount_); - if (AtomicDecrementByOne(&refcount_) == 0) { - _Py_ANNOTATE_HAPPENS_AFTER(&refcount_); - delete this; - } - } - - Example 2 (message queue): - - void MyQueue::Put(Type *e) { - MutexLock lock(&mu_); - _Py_ANNOTATE_HAPPENS_BEFORE(e); - PutElementIntoMyQueue(e); - } - - Type *MyQueue::Get() { - MutexLock lock(&mu_); - Type *e = GetElementFromMyQueue(); - _Py_ANNOTATE_HAPPENS_AFTER(e); - return e; - } - - Note: when possible, please use the existing reference counting and message - queue implementations instead of inventing new ones. */ - - /* Report that wait on the condition variable at address "cv" has succeeded - and the lock at address "lock" is held. */ -#define _Py_ANNOTATE_CONDVAR_LOCK_WAIT(cv, lock) \ - AnnotateCondVarWait(__FILE__, __LINE__, cv, lock) - - /* Report that wait on the condition variable at "cv" has succeeded. Variant - w/o lock. */ -#define _Py_ANNOTATE_CONDVAR_WAIT(cv) \ - AnnotateCondVarWait(__FILE__, __LINE__, cv, NULL) - - /* Report that we are about to signal on the condition variable at address - "cv". */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL(cv) \ - AnnotateCondVarSignal(__FILE__, __LINE__, cv) - - /* Report that we are about to signal_all on the condition variable at "cv". */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL_ALL(cv) \ - AnnotateCondVarSignalAll(__FILE__, __LINE__, cv) - - /* Annotations for user-defined synchronization mechanisms. */ -#define _Py_ANNOTATE_HAPPENS_BEFORE(obj) _Py_ANNOTATE_CONDVAR_SIGNAL(obj) -#define _Py_ANNOTATE_HAPPENS_AFTER(obj) _Py_ANNOTATE_CONDVAR_WAIT(obj) - - /* Report that the bytes in the range [pointer, pointer+size) are about - to be published safely. The race checker will create a happens-before - arc from the call _Py_ANNOTATE_PUBLISH_MEMORY_RANGE(pointer, size) to - subsequent accesses to this memory. - Note: this annotation may not work properly if the race detector uses - sampling, i.e. does not observe all memory accesses. - */ -#define _Py_ANNOTATE_PUBLISH_MEMORY_RANGE(pointer, size) \ - AnnotatePublishMemoryRange(__FILE__, __LINE__, pointer, size) - - /* Instruct the tool to create a happens-before arc between mu->Unlock() and - mu->Lock(). This annotation may slow down the race detector and hide real - races. Normally it is used only when it would be difficult to annotate each - of the mutex's critical sections individually using the annotations above. - This annotation makes sense only for hybrid race detectors. For pure - happens-before detectors this is a no-op. For more details see - https://code.google.com/p/data-race-test/wiki/PureHappensBeforeVsHybrid . */ -#define _Py_ANNOTATE_PURE_HAPPENS_BEFORE_MUTEX(mu) \ - AnnotateMutexIsUsedAsCondVar(__FILE__, __LINE__, mu) - - /* ------------------------------------------------------------- - Annotations useful when defining memory allocators, or when memory that - was protected in one way starts to be protected in another. */ - - /* Report that a new memory at "address" of size "size" has been allocated. - This might be used when the memory has been retrieved from a free list and - is about to be reused, or when the locking discipline for a variable - changes. */ -#define _Py_ANNOTATE_NEW_MEMORY(address, size) \ - AnnotateNewMemory(__FILE__, __LINE__, address, size) - - /* ------------------------------------------------------------- - Annotations useful when defining FIFO queues that transfer data between - threads. */ - - /* Report that the producer-consumer queue (such as ProducerConsumerQueue) at - address "pcq" has been created. The _Py_ANNOTATE_PCQ_* annotations should - be used only for FIFO queues. For non-FIFO queues use - _Py_ANNOTATE_HAPPENS_BEFORE (for put) and _Py_ANNOTATE_HAPPENS_AFTER (for - get). */ -#define _Py_ANNOTATE_PCQ_CREATE(pcq) \ - AnnotatePCQCreate(__FILE__, __LINE__, pcq) - - /* Report that the queue at address "pcq" is about to be destroyed. */ -#define _Py_ANNOTATE_PCQ_DESTROY(pcq) \ - AnnotatePCQDestroy(__FILE__, __LINE__, pcq) - - /* Report that we are about to put an element into a FIFO queue at address - "pcq". */ -#define _Py_ANNOTATE_PCQ_PUT(pcq) \ - AnnotatePCQPut(__FILE__, __LINE__, pcq) - - /* Report that we've just got an element from a FIFO queue at address "pcq". */ -#define _Py_ANNOTATE_PCQ_GET(pcq) \ - AnnotatePCQGet(__FILE__, __LINE__, pcq) - - /* ------------------------------------------------------------- - Annotations that suppress errors. It is usually better to express the - program's synchronization using the other annotations, but these can - be used when all else fails. */ - - /* Report that we may have a benign race at "pointer", with size - "sizeof(*(pointer))". "pointer" must be a non-void* pointer. Insert at the - point where "pointer" has been allocated, preferably close to the point - where the race happens. See also _Py_ANNOTATE_BENIGN_RACE_STATIC. */ -#define _Py_ANNOTATE_BENIGN_RACE(pointer, description) \ - AnnotateBenignRaceSized(__FILE__, __LINE__, pointer, \ - sizeof(*(pointer)), description) - - /* Same as _Py_ANNOTATE_BENIGN_RACE(address, description), but applies to - the memory range [address, address+size). */ -#define _Py_ANNOTATE_BENIGN_RACE_SIZED(address, size, description) \ - AnnotateBenignRaceSized(__FILE__, __LINE__, address, size, description) - - /* Request the analysis tool to ignore all reads in the current thread - until _Py_ANNOTATE_IGNORE_READS_END is called. - Useful to ignore intentional racey reads, while still checking - other reads and all writes. - See also _Py_ANNOTATE_UNPROTECTED_READ. */ -#define _Py_ANNOTATE_IGNORE_READS_BEGIN() \ - AnnotateIgnoreReadsBegin(__FILE__, __LINE__) - - /* Stop ignoring reads. */ -#define _Py_ANNOTATE_IGNORE_READS_END() \ - AnnotateIgnoreReadsEnd(__FILE__, __LINE__) - - /* Similar to _Py_ANNOTATE_IGNORE_READS_BEGIN, but ignore writes. */ -#define _Py_ANNOTATE_IGNORE_WRITES_BEGIN() \ - AnnotateIgnoreWritesBegin(__FILE__, __LINE__) - - /* Stop ignoring writes. */ -#define _Py_ANNOTATE_IGNORE_WRITES_END() \ - AnnotateIgnoreWritesEnd(__FILE__, __LINE__) - - /* Start ignoring all memory accesses (reads and writes). */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_BEGIN() \ - do {\ - _Py_ANNOTATE_IGNORE_READS_BEGIN();\ - _Py_ANNOTATE_IGNORE_WRITES_BEGIN();\ - }while(0)\ - - /* Stop ignoring all memory accesses. */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_END() \ - do {\ - _Py_ANNOTATE_IGNORE_WRITES_END();\ - _Py_ANNOTATE_IGNORE_READS_END();\ - }while(0)\ - - /* Similar to _Py_ANNOTATE_IGNORE_READS_BEGIN, but ignore synchronization events: - RWLOCK* and CONDVAR*. */ -#define _Py_ANNOTATE_IGNORE_SYNC_BEGIN() \ - AnnotateIgnoreSyncBegin(__FILE__, __LINE__) - - /* Stop ignoring sync events. */ -#define _Py_ANNOTATE_IGNORE_SYNC_END() \ - AnnotateIgnoreSyncEnd(__FILE__, __LINE__) - - - /* Enable (enable!=0) or disable (enable==0) race detection for all threads. - This annotation could be useful if you want to skip expensive race analysis - during some period of program execution, e.g. during initialization. */ -#define _Py_ANNOTATE_ENABLE_RACE_DETECTION(enable) \ - AnnotateEnableRaceDetection(__FILE__, __LINE__, enable) - - /* ------------------------------------------------------------- - Annotations useful for debugging. */ - - /* Request to trace every access to "address". */ -#define _Py_ANNOTATE_TRACE_MEMORY(address) \ - AnnotateTraceMemory(__FILE__, __LINE__, address) - - /* Report the current thread name to a race detector. */ -#define _Py_ANNOTATE_THREAD_NAME(name) \ - AnnotateThreadName(__FILE__, __LINE__, name) - - /* ------------------------------------------------------------- - Annotations useful when implementing locks. They are not - normally needed by modules that merely use locks. - The "lock" argument is a pointer to the lock object. */ - - /* Report that a lock has been created at address "lock". */ -#define _Py_ANNOTATE_RWLOCK_CREATE(lock) \ - AnnotateRWLockCreate(__FILE__, __LINE__, lock) - - /* Report that the lock at address "lock" is about to be destroyed. */ -#define _Py_ANNOTATE_RWLOCK_DESTROY(lock) \ - AnnotateRWLockDestroy(__FILE__, __LINE__, lock) - - /* Report that the lock at address "lock" has been acquired. - is_w=1 for writer lock, is_w=0 for reader lock. */ -#define _Py_ANNOTATE_RWLOCK_ACQUIRED(lock, is_w) \ - AnnotateRWLockAcquired(__FILE__, __LINE__, lock, is_w) - - /* Report that the lock at address "lock" is about to be released. */ -#define _Py_ANNOTATE_RWLOCK_RELEASED(lock, is_w) \ - AnnotateRWLockReleased(__FILE__, __LINE__, lock, is_w) - - /* ------------------------------------------------------------- - Annotations useful when implementing barriers. They are not - normally needed by modules that merely use barriers. - The "barrier" argument is a pointer to the barrier object. */ - - /* Report that the "barrier" has been initialized with initial "count". - If 'reinitialization_allowed' is true, initialization is allowed to happen - multiple times w/o calling barrier_destroy() */ -#define _Py_ANNOTATE_BARRIER_INIT(barrier, count, reinitialization_allowed) \ - AnnotateBarrierInit(__FILE__, __LINE__, barrier, count, \ - reinitialization_allowed) - - /* Report that we are about to enter barrier_wait("barrier"). */ -#define _Py_ANNOTATE_BARRIER_WAIT_BEFORE(barrier) \ - AnnotateBarrierWaitBefore(__FILE__, __LINE__, barrier) - - /* Report that we just exited barrier_wait("barrier"). */ -#define _Py_ANNOTATE_BARRIER_WAIT_AFTER(barrier) \ - AnnotateBarrierWaitAfter(__FILE__, __LINE__, barrier) - - /* Report that the "barrier" has been destroyed. */ -#define _Py_ANNOTATE_BARRIER_DESTROY(barrier) \ - AnnotateBarrierDestroy(__FILE__, __LINE__, barrier) - - /* ------------------------------------------------------------- - Annotations useful for testing race detectors. */ - - /* Report that we expect a race on the variable at "address". - Use only in unit tests for a race detector. */ -#define _Py_ANNOTATE_EXPECT_RACE(address, description) \ - AnnotateExpectRace(__FILE__, __LINE__, address, description) - - /* A no-op. Insert where you like to test the interceptors. */ -#define _Py_ANNOTATE_NO_OP(arg) \ - AnnotateNoOp(__FILE__, __LINE__, arg) - - /* Force the race detector to flush its state. The actual effect depends on - * the implementation of the detector. */ -#define _Py_ANNOTATE_FLUSH_STATE() \ - AnnotateFlushState(__FILE__, __LINE__) - - -#else /* DYNAMIC_ANNOTATIONS_ENABLED == 0 */ - -#define _Py_ANNOTATE_RWLOCK_CREATE(lock) /* empty */ -#define _Py_ANNOTATE_RWLOCK_DESTROY(lock) /* empty */ -#define _Py_ANNOTATE_RWLOCK_ACQUIRED(lock, is_w) /* empty */ -#define _Py_ANNOTATE_RWLOCK_RELEASED(lock, is_w) /* empty */ -#define _Py_ANNOTATE_BARRIER_INIT(barrier, count, reinitialization_allowed) /* */ -#define _Py_ANNOTATE_BARRIER_WAIT_BEFORE(barrier) /* empty */ -#define _Py_ANNOTATE_BARRIER_WAIT_AFTER(barrier) /* empty */ -#define _Py_ANNOTATE_BARRIER_DESTROY(barrier) /* empty */ -#define _Py_ANNOTATE_CONDVAR_LOCK_WAIT(cv, lock) /* empty */ -#define _Py_ANNOTATE_CONDVAR_WAIT(cv) /* empty */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL(cv) /* empty */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL_ALL(cv) /* empty */ -#define _Py_ANNOTATE_HAPPENS_BEFORE(obj) /* empty */ -#define _Py_ANNOTATE_HAPPENS_AFTER(obj) /* empty */ -#define _Py_ANNOTATE_PUBLISH_MEMORY_RANGE(address, size) /* empty */ -#define _Py_ANNOTATE_UNPUBLISH_MEMORY_RANGE(address, size) /* empty */ -#define _Py_ANNOTATE_SWAP_MEMORY_RANGE(address, size) /* empty */ -#define _Py_ANNOTATE_PCQ_CREATE(pcq) /* empty */ -#define _Py_ANNOTATE_PCQ_DESTROY(pcq) /* empty */ -#define _Py_ANNOTATE_PCQ_PUT(pcq) /* empty */ -#define _Py_ANNOTATE_PCQ_GET(pcq) /* empty */ -#define _Py_ANNOTATE_NEW_MEMORY(address, size) /* empty */ -#define _Py_ANNOTATE_EXPECT_RACE(address, description) /* empty */ -#define _Py_ANNOTATE_BENIGN_RACE(address, description) /* empty */ -#define _Py_ANNOTATE_BENIGN_RACE_SIZED(address, size, description) /* empty */ -#define _Py_ANNOTATE_PURE_HAPPENS_BEFORE_MUTEX(mu) /* empty */ -#define _Py_ANNOTATE_MUTEX_IS_USED_AS_CONDVAR(mu) /* empty */ -#define _Py_ANNOTATE_TRACE_MEMORY(arg) /* empty */ -#define _Py_ANNOTATE_THREAD_NAME(name) /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_END() /* empty */ -#define _Py_ANNOTATE_IGNORE_WRITES_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_WRITES_END() /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_END() /* empty */ -#define _Py_ANNOTATE_IGNORE_SYNC_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_SYNC_END() /* empty */ -#define _Py_ANNOTATE_ENABLE_RACE_DETECTION(enable) /* empty */ -#define _Py_ANNOTATE_NO_OP(arg) /* empty */ -#define _Py_ANNOTATE_FLUSH_STATE() /* empty */ - -#endif /* DYNAMIC_ANNOTATIONS_ENABLED */ - -/* Use the macros above rather than using these functions directly. */ -#ifdef __cplusplus -extern "C" { -#endif -void AnnotateRWLockCreate(const char *file, int line, - const volatile void *lock); -void AnnotateRWLockDestroy(const char *file, int line, - const volatile void *lock); -void AnnotateRWLockAcquired(const char *file, int line, - const volatile void *lock, long is_w); -void AnnotateRWLockReleased(const char *file, int line, - const volatile void *lock, long is_w); -void AnnotateBarrierInit(const char *file, int line, - const volatile void *barrier, long count, - long reinitialization_allowed); -void AnnotateBarrierWaitBefore(const char *file, int line, - const volatile void *barrier); -void AnnotateBarrierWaitAfter(const char *file, int line, - const volatile void *barrier); -void AnnotateBarrierDestroy(const char *file, int line, - const volatile void *barrier); -void AnnotateCondVarWait(const char *file, int line, - const volatile void *cv, - const volatile void *lock); -void AnnotateCondVarSignal(const char *file, int line, - const volatile void *cv); -void AnnotateCondVarSignalAll(const char *file, int line, - const volatile void *cv); -void AnnotatePublishMemoryRange(const char *file, int line, - const volatile void *address, - long size); -void AnnotateUnpublishMemoryRange(const char *file, int line, - const volatile void *address, - long size); -void AnnotatePCQCreate(const char *file, int line, - const volatile void *pcq); -void AnnotatePCQDestroy(const char *file, int line, - const volatile void *pcq); -void AnnotatePCQPut(const char *file, int line, - const volatile void *pcq); -void AnnotatePCQGet(const char *file, int line, - const volatile void *pcq); -void AnnotateNewMemory(const char *file, int line, - const volatile void *address, - long size); -void AnnotateExpectRace(const char *file, int line, - const volatile void *address, - const char *description); -void AnnotateBenignRace(const char *file, int line, - const volatile void *address, - const char *description); -void AnnotateBenignRaceSized(const char *file, int line, - const volatile void *address, - long size, - const char *description); -void AnnotateMutexIsUsedAsCondVar(const char *file, int line, - const volatile void *mu); -void AnnotateTraceMemory(const char *file, int line, - const volatile void *arg); -void AnnotateThreadName(const char *file, int line, - const char *name); -void AnnotateIgnoreReadsBegin(const char *file, int line); -void AnnotateIgnoreReadsEnd(const char *file, int line); -void AnnotateIgnoreWritesBegin(const char *file, int line); -void AnnotateIgnoreWritesEnd(const char *file, int line); -void AnnotateEnableRaceDetection(const char *file, int line, int enable); -void AnnotateNoOp(const char *file, int line, - const volatile void *arg); -void AnnotateFlushState(const char *file, int line); - -/* Return non-zero value if running under valgrind. - - If "valgrind.h" is included into dynamic_annotations.c, - the regular valgrind mechanism will be used. - See http://valgrind.org/docs/manual/manual-core-adv.html about - RUNNING_ON_VALGRIND and other valgrind "client requests". - The file "valgrind.h" may be obtained by doing - svn co svn://svn.valgrind.org/valgrind/trunk/include - - If for some reason you can't use "valgrind.h" or want to fake valgrind, - there are two ways to make this function return non-zero: - - Use environment variable: export RUNNING_ON_VALGRIND=1 - - Make your tool intercept the function RunningOnValgrind() and - change its return value. - */ -int RunningOnValgrind(void); - -#ifdef __cplusplus -} -#endif - -#if DYNAMIC_ANNOTATIONS_ENABLED != 0 && defined(__cplusplus) - - /* _Py_ANNOTATE_UNPROTECTED_READ is the preferred way to annotate racey reads. - - Instead of doing - _Py_ANNOTATE_IGNORE_READS_BEGIN(); - ... = x; - _Py_ANNOTATE_IGNORE_READS_END(); - one can use - ... = _Py_ANNOTATE_UNPROTECTED_READ(x); */ - template - inline T _Py_ANNOTATE_UNPROTECTED_READ(const volatile T &x) { - _Py_ANNOTATE_IGNORE_READS_BEGIN(); - T res = x; - _Py_ANNOTATE_IGNORE_READS_END(); - return res; - } - /* Apply _Py_ANNOTATE_BENIGN_RACE_SIZED to a static variable. */ -#define _Py_ANNOTATE_BENIGN_RACE_STATIC(static_var, description) \ - namespace { \ - class static_var ## _annotator { \ - public: \ - static_var ## _annotator() { \ - _Py_ANNOTATE_BENIGN_RACE_SIZED(&static_var, \ - sizeof(static_var), \ - # static_var ": " description); \ - } \ - }; \ - static static_var ## _annotator the ## static_var ## _annotator;\ - } -#else /* DYNAMIC_ANNOTATIONS_ENABLED == 0 */ - -#define _Py_ANNOTATE_UNPROTECTED_READ(x) (x) -#define _Py_ANNOTATE_BENIGN_RACE_STATIC(static_var, description) /* empty */ - -#endif /* DYNAMIC_ANNOTATIONS_ENABLED */ - -#endif /* __DYNAMIC_ANNOTATIONS_H__ */ diff --git a/_Pre_Builds/_Python311_cpp/include/enumobject.h b/_Pre_Builds/_Python311_cpp/include/enumobject.h deleted file mode 100644 index c14dbfc..0000000 --- a/_Pre_Builds/_Python311_cpp/include/enumobject.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef Py_ENUMOBJECT_H -#define Py_ENUMOBJECT_H - -/* Enumerate Object */ - -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyEnum_Type; -PyAPI_DATA(PyTypeObject) PyReversed_Type; - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_ENUMOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/errcode.h b/_Pre_Builds/_Python311_cpp/include/errcode.h deleted file mode 100644 index 19ee83e..0000000 --- a/_Pre_Builds/_Python311_cpp/include/errcode.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef Py_ERRCODE_H -#define Py_ERRCODE_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Error codes passed around between file input, tokenizer, parser and - interpreter. This is necessary so we can turn them into Python - exceptions at a higher level. Note that some errors have a - slightly different meaning when passed from the tokenizer to the - parser than when passed from the parser to the interpreter; e.g. - the parser only returns E_EOF when it hits EOF immediately, and it - never returns E_OK. */ - -#define E_OK 10 /* No error */ -#define E_EOF 11 /* End Of File */ -#define E_INTR 12 /* Interrupted */ -#define E_TOKEN 13 /* Bad token */ -#define E_SYNTAX 14 /* Syntax error */ -#define E_NOMEM 15 /* Ran out of memory */ -#define E_DONE 16 /* Parsing complete */ -#define E_ERROR 17 /* Execution error */ -#define E_TABSPACE 18 /* Inconsistent mixing of tabs and spaces */ -#define E_OVERFLOW 19 /* Node had too many children */ -#define E_TOODEEP 20 /* Too many indentation levels */ -#define E_DEDENT 21 /* No matching outer block for dedent */ -#define E_DECODE 22 /* Error in decoding into Unicode */ -#define E_EOFS 23 /* EOF in triple-quoted string */ -#define E_EOLS 24 /* EOL in single-quoted string */ -#define E_LINECONT 25 /* Unexpected characters after a line continuation */ -#define E_BADSINGLE 27 /* Ill-formed single statement input */ -#define E_INTERACT_STOP 28 /* Interactive mode stopped tokenization */ -#define E_COLUMNOVERFLOW 29 /* Column offset overflow */ - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ERRCODE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/exports.h b/_Pre_Builds/_Python311_cpp/include/exports.h deleted file mode 100644 index fc1a5c5..0000000 --- a/_Pre_Builds/_Python311_cpp/include/exports.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef Py_EXPORTS_H -#define Py_EXPORTS_H - -#if defined(_WIN32) || defined(__CYGWIN__) - #define Py_IMPORTED_SYMBOL __declspec(dllimport) - #define Py_EXPORTED_SYMBOL __declspec(dllexport) - #define Py_LOCAL_SYMBOL -#else -/* - * If we only ever used gcc >= 5, we could use __has_attribute(visibility) - * as a cross-platform way to determine if visibility is supported. However, - * we may still need to support gcc >= 4, as some Ubuntu LTS and Centos versions - * have 4 < gcc < 5. - */ - #ifndef __has_attribute - #define __has_attribute(x) 0 // Compatibility with non-clang compilers. - #endif - #if (defined(__GNUC__) && (__GNUC__ >= 4)) ||\ - (defined(__clang__) && __has_attribute(visibility)) - #define Py_IMPORTED_SYMBOL __attribute__ ((visibility ("default"))) - #define Py_EXPORTED_SYMBOL __attribute__ ((visibility ("default"))) - #define Py_LOCAL_SYMBOL __attribute__ ((visibility ("hidden"))) - #else - #define Py_IMPORTED_SYMBOL - #define Py_EXPORTED_SYMBOL - #define Py_LOCAL_SYMBOL - #endif -#endif - -#endif /* Py_EXPORTS_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/fileobject.h b/_Pre_Builds/_Python311_cpp/include/fileobject.h deleted file mode 100644 index 4c983e7..0000000 --- a/_Pre_Builds/_Python311_cpp/include/fileobject.h +++ /dev/null @@ -1,49 +0,0 @@ -/* File object interface (what's left of it -- see io.py) */ - -#ifndef Py_FILEOBJECT_H -#define Py_FILEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#define PY_STDIOTEXTMODE "b" - -PyAPI_FUNC(PyObject *) PyFile_FromFd(int, const char *, const char *, int, - const char *, const char *, - const char *, int); -PyAPI_FUNC(PyObject *) PyFile_GetLine(PyObject *, int); -PyAPI_FUNC(int) PyFile_WriteObject(PyObject *, PyObject *, int); -PyAPI_FUNC(int) PyFile_WriteString(const char *, PyObject *); -PyAPI_FUNC(int) PyObject_AsFileDescriptor(PyObject *); - -/* The default encoding used by the platform file system APIs - If non-NULL, this is different than the default encoding for strings -*/ -PyAPI_DATA(const char *) Py_FileSystemDefaultEncoding; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_DATA(const char *) Py_FileSystemDefaultEncodeErrors; -#endif -PyAPI_DATA(int) Py_HasFileSystemDefaultEncoding; - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -PyAPI_DATA(int) Py_UTF8Mode; -#endif - -/* A routine to check if a file descriptor can be select()-ed. */ -#ifdef _MSC_VER - /* On Windows, any socket fd can be select()-ed, no matter how high */ - #define _PyIsSelectable_fd(FD) (1) -#else - #define _PyIsSelectable_fd(FD) ((unsigned int)(FD) < (unsigned int)FD_SETSIZE) -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_FILEOBJECT_H -# include "cpython/fileobject.h" -# undef Py_CPYTHON_FILEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FILEOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/fileutils.h b/_Pre_Builds/_Python311_cpp/include/fileutils.h deleted file mode 100644 index ba5acc8..0000000 --- a/_Pre_Builds/_Python311_cpp/include/fileutils.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef Py_FILEUTILS_H -#define Py_FILEUTILS_H -#ifdef __cplusplus -extern "C" { -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(wchar_t *) Py_DecodeLocale( - const char *arg, - size_t *size); - -PyAPI_FUNC(char*) Py_EncodeLocale( - const wchar_t *text, - size_t *error_pos); -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_FILEUTILS_H -# include "cpython/fileutils.h" -# undef Py_CPYTHON_FILEUTILS_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FILEUTILS_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/floatobject.h b/_Pre_Builds/_Python311_cpp/include/floatobject.h deleted file mode 100644 index 9d2fff3..0000000 --- a/_Pre_Builds/_Python311_cpp/include/floatobject.h +++ /dev/null @@ -1,54 +0,0 @@ - -/* Float object interface */ - -/* -PyFloatObject represents a (double precision) floating point number. -*/ - -#ifndef Py_FLOATOBJECT_H -#define Py_FLOATOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyFloat_Type; - -#define PyFloat_Check(op) PyObject_TypeCheck(op, &PyFloat_Type) -#define PyFloat_CheckExact(op) Py_IS_TYPE(op, &PyFloat_Type) - -#define Py_RETURN_NAN return PyFloat_FromDouble(Py_NAN) - -#define Py_RETURN_INF(sign) \ - do { \ - if (copysign(1., sign) == 1.) { \ - return PyFloat_FromDouble(Py_HUGE_VAL); \ - } \ - else { \ - return PyFloat_FromDouble(-Py_HUGE_VAL); \ - } \ - } while(0) - -PyAPI_FUNC(double) PyFloat_GetMax(void); -PyAPI_FUNC(double) PyFloat_GetMin(void); -PyAPI_FUNC(PyObject*) PyFloat_GetInfo(void); - -/* Return Python float from string PyObject. */ -PyAPI_FUNC(PyObject*) PyFloat_FromString(PyObject*); - -/* Return Python float from C double. */ -PyAPI_FUNC(PyObject*) PyFloat_FromDouble(double); - -/* Extract C double from Python float. The macro version trades safety for - speed. */ -PyAPI_FUNC(double) PyFloat_AsDouble(PyObject*); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_FLOATOBJECT_H -# include "cpython/floatobject.h" -# undef Py_CPYTHON_FLOATOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FLOATOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/frameobject.h b/_Pre_Builds/_Python311_cpp/include/frameobject.h deleted file mode 100644 index adb628f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/frameobject.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Frame object interface */ - -#ifndef Py_FRAMEOBJECT_H -#define Py_FRAMEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#include "pyframe.h" - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_FRAMEOBJECT_H -# include "cpython/frameobject.h" -# undef Py_CPYTHON_FRAMEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FRAMEOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/genericaliasobject.h b/_Pre_Builds/_Python311_cpp/include/genericaliasobject.h deleted file mode 100644 index cf00297..0000000 --- a/_Pre_Builds/_Python311_cpp/include/genericaliasobject.h +++ /dev/null @@ -1,14 +0,0 @@ -// Implementation of PEP 585: support list[int] etc. -#ifndef Py_GENERICALIASOBJECT_H -#define Py_GENERICALIASOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) Py_GenericAlias(PyObject *, PyObject *); -PyAPI_DATA(PyTypeObject) Py_GenericAliasType; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_GENERICALIASOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/import.h b/_Pre_Builds/_Python311_cpp/include/import.h deleted file mode 100644 index a87677b..0000000 --- a/_Pre_Builds/_Python311_cpp/include/import.h +++ /dev/null @@ -1,98 +0,0 @@ -/* Module definition and import interface */ - -#ifndef Py_IMPORT_H -#define Py_IMPORT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(long) PyImport_GetMagicNumber(void); -PyAPI_FUNC(const char *) PyImport_GetMagicTag(void); -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModule( - const char *name, /* UTF-8 encoded string */ - PyObject *co - ); -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleEx( - const char *name, /* UTF-8 encoded string */ - PyObject *co, - const char *pathname /* decoded from the filesystem encoding */ - ); -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleWithPathnames( - const char *name, /* UTF-8 encoded string */ - PyObject *co, - const char *pathname, /* decoded from the filesystem encoding */ - const char *cpathname /* decoded from the filesystem encoding */ - ); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleObject( - PyObject *name, - PyObject *co, - PyObject *pathname, - PyObject *cpathname - ); -#endif -PyAPI_FUNC(PyObject *) PyImport_GetModuleDict(void); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -PyAPI_FUNC(PyObject *) PyImport_GetModule(PyObject *name); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyImport_AddModuleObject( - PyObject *name - ); -#endif -PyAPI_FUNC(PyObject *) PyImport_AddModule( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyImport_ImportModule( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyImport_ImportModuleNoBlock( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyImport_ImportModuleLevel( - const char *name, /* UTF-8 encoded string */ - PyObject *globals, - PyObject *locals, - PyObject *fromlist, - int level - ); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(PyObject *) PyImport_ImportModuleLevelObject( - PyObject *name, - PyObject *globals, - PyObject *locals, - PyObject *fromlist, - int level - ); -#endif - -#define PyImport_ImportModuleEx(n, g, l, f) \ - PyImport_ImportModuleLevel(n, g, l, f, 0) - -PyAPI_FUNC(PyObject *) PyImport_GetImporter(PyObject *path); -PyAPI_FUNC(PyObject *) PyImport_Import(PyObject *name); -PyAPI_FUNC(PyObject *) PyImport_ReloadModule(PyObject *m); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(int) PyImport_ImportFrozenModuleObject( - PyObject *name - ); -#endif -PyAPI_FUNC(int) PyImport_ImportFrozenModule( - const char *name /* UTF-8 encoded string */ - ); - -PyAPI_FUNC(int) PyImport_AppendInittab( - const char *name, /* ASCII encoded string */ - PyObject* (*initfunc)(void) - ); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_IMPORT_H -# include "cpython/import.h" -# undef Py_CPYTHON_IMPORT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_IMPORT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_abstract.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_abstract.h deleted file mode 100644 index b1afb2d..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_abstract.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef Py_INTERNAL_ABSTRACT_H -#define Py_INTERNAL_ABSTRACT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -// Fast inlined version of PyIndex_Check() -static inline int -_PyIndex_Check(PyObject *obj) -{ - PyNumberMethods *tp_as_number = Py_TYPE(obj)->tp_as_number; - return (tp_as_number != NULL && tp_as_number->nb_index != NULL); -} - -PyObject *_PyNumber_PowerNoMod(PyObject *lhs, PyObject *rhs); -PyObject *_PyNumber_InPlacePowerNoMod(PyObject *lhs, PyObject *rhs); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_ABSTRACT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_accu.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_accu.h deleted file mode 100644 index d346222..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_accu.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_INTERNAL_ACCU_H -#define Py_INTERNAL_ACCU_H -#ifdef __cplusplus -extern "C" { -#endif - -/*** This is a private API for use by the interpreter and the stdlib. - *** Its definition may be changed or removed at any moment. - ***/ - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* - * A two-level accumulator of unicode objects that avoids both the overhead - * of keeping a huge number of small separate objects, and the quadratic - * behaviour of using a naive repeated concatenation scheme. - */ - -#undef small /* defined by some Windows headers */ - -typedef struct { - PyObject *large; /* A list of previously accumulated large strings */ - PyObject *small; /* Pending small strings */ -} _PyAccu; - -PyAPI_FUNC(int) _PyAccu_Init(_PyAccu *acc); -PyAPI_FUNC(int) _PyAccu_Accumulate(_PyAccu *acc, PyObject *unicode); -PyAPI_FUNC(PyObject *) _PyAccu_FinishAsList(_PyAccu *acc); -PyAPI_FUNC(PyObject *) _PyAccu_Finish(_PyAccu *acc); -PyAPI_FUNC(void) _PyAccu_Destroy(_PyAccu *acc); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_ACCU_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_asdl.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_asdl.h deleted file mode 100644 index 5b01c7a..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_asdl.h +++ /dev/null @@ -1,112 +0,0 @@ -#ifndef Py_INTERNAL_ASDL_H -#define Py_INTERNAL_ASDL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_pyarena.h" // _PyArena_Malloc() - -typedef PyObject * identifier; -typedef PyObject * string; -typedef PyObject * object; -typedef PyObject * constant; - -/* It would be nice if the code generated by asdl_c.py was completely - independent of Python, but it is a goal the requires too much work - at this stage. So, for example, I'll represent identifiers as - interned Python strings. -*/ - -#define _ASDL_SEQ_HEAD \ - Py_ssize_t size; \ - void **elements; - -typedef struct { - _ASDL_SEQ_HEAD -} asdl_seq; - -typedef struct { - _ASDL_SEQ_HEAD - void *typed_elements[1]; -} asdl_generic_seq; - -typedef struct { - _ASDL_SEQ_HEAD - PyObject *typed_elements[1]; -} asdl_identifier_seq; - -typedef struct { - _ASDL_SEQ_HEAD - int typed_elements[1]; -} asdl_int_seq; - -asdl_generic_seq *_Py_asdl_generic_seq_new(Py_ssize_t size, PyArena *arena); -asdl_identifier_seq *_Py_asdl_identifier_seq_new(Py_ssize_t size, PyArena *arena); -asdl_int_seq *_Py_asdl_int_seq_new(Py_ssize_t size, PyArena *arena); - - -#define GENERATE_ASDL_SEQ_CONSTRUCTOR(NAME, TYPE) \ -asdl_ ## NAME ## _seq *_Py_asdl_ ## NAME ## _seq_new(Py_ssize_t size, PyArena *arena) \ -{ \ - asdl_ ## NAME ## _seq *seq = NULL; \ - size_t n; \ - /* check size is sane */ \ - if (size < 0 || \ - (size && (((size_t)size - 1) > (SIZE_MAX / sizeof(void *))))) { \ - PyErr_NoMemory(); \ - return NULL; \ - } \ - n = (size ? (sizeof(TYPE *) * (size - 1)) : 0); \ - /* check if size can be added safely */ \ - if (n > SIZE_MAX - sizeof(asdl_ ## NAME ## _seq)) { \ - PyErr_NoMemory(); \ - return NULL; \ - } \ - n += sizeof(asdl_ ## NAME ## _seq); \ - seq = (asdl_ ## NAME ## _seq *)_PyArena_Malloc(arena, n); \ - if (!seq) { \ - PyErr_NoMemory(); \ - return NULL; \ - } \ - memset(seq, 0, n); \ - seq->size = size; \ - seq->elements = (void**)seq->typed_elements; \ - return seq; \ -} - -#define asdl_seq_GET_UNTYPED(S, I) _Py_RVALUE((S)->elements[(I)]) -#define asdl_seq_GET(S, I) _Py_RVALUE((S)->typed_elements[(I)]) -#define asdl_seq_LEN(S) _Py_RVALUE(((S) == NULL ? 0 : (S)->size)) - -#ifdef Py_DEBUG -# define asdl_seq_SET(S, I, V) \ - do { \ - Py_ssize_t _asdl_i = (I); \ - assert((S) != NULL); \ - assert(0 <= _asdl_i && _asdl_i < (S)->size); \ - (S)->typed_elements[_asdl_i] = (V); \ - } while (0) -#else -# define asdl_seq_SET(S, I, V) _Py_RVALUE((S)->typed_elements[I] = (V)) -#endif - -#ifdef Py_DEBUG -# define asdl_seq_SET_UNTYPED(S, I, V) \ - do { \ - Py_ssize_t _asdl_i = (I); \ - assert((S) != NULL); \ - assert(0 <= _asdl_i && _asdl_i < (S)->size); \ - (S)->elements[_asdl_i] = (V); \ - } while (0) -#else -# define asdl_seq_SET_UNTYPED(S, I, V) _Py_RVALUE((S)->elements[I] = (V)) -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_ASDL_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_ast.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_ast.h deleted file mode 100644 index 36277ef..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_ast.h +++ /dev/null @@ -1,866 +0,0 @@ -// File automatically generated by Parser/asdl_c.py. - -#ifndef Py_INTERNAL_AST_H -#define Py_INTERNAL_AST_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_asdl.h" - -typedef struct _mod *mod_ty; - -typedef struct _stmt *stmt_ty; - -typedef struct _expr *expr_ty; - -typedef enum _expr_context { Load=1, Store=2, Del=3 } expr_context_ty; - -typedef enum _boolop { And=1, Or=2 } boolop_ty; - -typedef enum _operator { Add=1, Sub=2, Mult=3, MatMult=4, Div=5, Mod=6, Pow=7, - LShift=8, RShift=9, BitOr=10, BitXor=11, BitAnd=12, - FloorDiv=13 } operator_ty; - -typedef enum _unaryop { Invert=1, Not=2, UAdd=3, USub=4 } unaryop_ty; - -typedef enum _cmpop { Eq=1, NotEq=2, Lt=3, LtE=4, Gt=5, GtE=6, Is=7, IsNot=8, - In=9, NotIn=10 } cmpop_ty; - -typedef struct _comprehension *comprehension_ty; - -typedef struct _excepthandler *excepthandler_ty; - -typedef struct _arguments *arguments_ty; - -typedef struct _arg *arg_ty; - -typedef struct _keyword *keyword_ty; - -typedef struct _alias *alias_ty; - -typedef struct _withitem *withitem_ty; - -typedef struct _match_case *match_case_ty; - -typedef struct _pattern *pattern_ty; - -typedef struct _type_ignore *type_ignore_ty; - - -typedef struct { - _ASDL_SEQ_HEAD - mod_ty typed_elements[1]; -} asdl_mod_seq; - -asdl_mod_seq *_Py_asdl_mod_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - stmt_ty typed_elements[1]; -} asdl_stmt_seq; - -asdl_stmt_seq *_Py_asdl_stmt_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - expr_ty typed_elements[1]; -} asdl_expr_seq; - -asdl_expr_seq *_Py_asdl_expr_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - comprehension_ty typed_elements[1]; -} asdl_comprehension_seq; - -asdl_comprehension_seq *_Py_asdl_comprehension_seq_new(Py_ssize_t size, PyArena - *arena); - -typedef struct { - _ASDL_SEQ_HEAD - excepthandler_ty typed_elements[1]; -} asdl_excepthandler_seq; - -asdl_excepthandler_seq *_Py_asdl_excepthandler_seq_new(Py_ssize_t size, PyArena - *arena); - -typedef struct { - _ASDL_SEQ_HEAD - arguments_ty typed_elements[1]; -} asdl_arguments_seq; - -asdl_arguments_seq *_Py_asdl_arguments_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - arg_ty typed_elements[1]; -} asdl_arg_seq; - -asdl_arg_seq *_Py_asdl_arg_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - keyword_ty typed_elements[1]; -} asdl_keyword_seq; - -asdl_keyword_seq *_Py_asdl_keyword_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - alias_ty typed_elements[1]; -} asdl_alias_seq; - -asdl_alias_seq *_Py_asdl_alias_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - withitem_ty typed_elements[1]; -} asdl_withitem_seq; - -asdl_withitem_seq *_Py_asdl_withitem_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - match_case_ty typed_elements[1]; -} asdl_match_case_seq; - -asdl_match_case_seq *_Py_asdl_match_case_seq_new(Py_ssize_t size, PyArena - *arena); - -typedef struct { - _ASDL_SEQ_HEAD - pattern_ty typed_elements[1]; -} asdl_pattern_seq; - -asdl_pattern_seq *_Py_asdl_pattern_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - type_ignore_ty typed_elements[1]; -} asdl_type_ignore_seq; - -asdl_type_ignore_seq *_Py_asdl_type_ignore_seq_new(Py_ssize_t size, PyArena - *arena); - - -enum _mod_kind {Module_kind=1, Interactive_kind=2, Expression_kind=3, - FunctionType_kind=4}; -struct _mod { - enum _mod_kind kind; - union { - struct { - asdl_stmt_seq *body; - asdl_type_ignore_seq *type_ignores; - } Module; - - struct { - asdl_stmt_seq *body; - } Interactive; - - struct { - expr_ty body; - } Expression; - - struct { - asdl_expr_seq *argtypes; - expr_ty returns; - } FunctionType; - - } v; -}; - -enum _stmt_kind {FunctionDef_kind=1, AsyncFunctionDef_kind=2, ClassDef_kind=3, - Return_kind=4, Delete_kind=5, Assign_kind=6, - AugAssign_kind=7, AnnAssign_kind=8, For_kind=9, - AsyncFor_kind=10, While_kind=11, If_kind=12, With_kind=13, - AsyncWith_kind=14, Match_kind=15, Raise_kind=16, Try_kind=17, - TryStar_kind=18, Assert_kind=19, Import_kind=20, - ImportFrom_kind=21, Global_kind=22, Nonlocal_kind=23, - Expr_kind=24, Pass_kind=25, Break_kind=26, Continue_kind=27}; -struct _stmt { - enum _stmt_kind kind; - union { - struct { - identifier name; - arguments_ty args; - asdl_stmt_seq *body; - asdl_expr_seq *decorator_list; - expr_ty returns; - string type_comment; - } FunctionDef; - - struct { - identifier name; - arguments_ty args; - asdl_stmt_seq *body; - asdl_expr_seq *decorator_list; - expr_ty returns; - string type_comment; - } AsyncFunctionDef; - - struct { - identifier name; - asdl_expr_seq *bases; - asdl_keyword_seq *keywords; - asdl_stmt_seq *body; - asdl_expr_seq *decorator_list; - } ClassDef; - - struct { - expr_ty value; - } Return; - - struct { - asdl_expr_seq *targets; - } Delete; - - struct { - asdl_expr_seq *targets; - expr_ty value; - string type_comment; - } Assign; - - struct { - expr_ty target; - operator_ty op; - expr_ty value; - } AugAssign; - - struct { - expr_ty target; - expr_ty annotation; - expr_ty value; - int simple; - } AnnAssign; - - struct { - expr_ty target; - expr_ty iter; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - string type_comment; - } For; - - struct { - expr_ty target; - expr_ty iter; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - string type_comment; - } AsyncFor; - - struct { - expr_ty test; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - } While; - - struct { - expr_ty test; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - } If; - - struct { - asdl_withitem_seq *items; - asdl_stmt_seq *body; - string type_comment; - } With; - - struct { - asdl_withitem_seq *items; - asdl_stmt_seq *body; - string type_comment; - } AsyncWith; - - struct { - expr_ty subject; - asdl_match_case_seq *cases; - } Match; - - struct { - expr_ty exc; - expr_ty cause; - } Raise; - - struct { - asdl_stmt_seq *body; - asdl_excepthandler_seq *handlers; - asdl_stmt_seq *orelse; - asdl_stmt_seq *finalbody; - } Try; - - struct { - asdl_stmt_seq *body; - asdl_excepthandler_seq *handlers; - asdl_stmt_seq *orelse; - asdl_stmt_seq *finalbody; - } TryStar; - - struct { - expr_ty test; - expr_ty msg; - } Assert; - - struct { - asdl_alias_seq *names; - } Import; - - struct { - identifier module; - asdl_alias_seq *names; - int level; - } ImportFrom; - - struct { - asdl_identifier_seq *names; - } Global; - - struct { - asdl_identifier_seq *names; - } Nonlocal; - - struct { - expr_ty value; - } Expr; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -enum _expr_kind {BoolOp_kind=1, NamedExpr_kind=2, BinOp_kind=3, UnaryOp_kind=4, - Lambda_kind=5, IfExp_kind=6, Dict_kind=7, Set_kind=8, - ListComp_kind=9, SetComp_kind=10, DictComp_kind=11, - GeneratorExp_kind=12, Await_kind=13, Yield_kind=14, - YieldFrom_kind=15, Compare_kind=16, Call_kind=17, - FormattedValue_kind=18, JoinedStr_kind=19, Constant_kind=20, - Attribute_kind=21, Subscript_kind=22, Starred_kind=23, - Name_kind=24, List_kind=25, Tuple_kind=26, Slice_kind=27}; -struct _expr { - enum _expr_kind kind; - union { - struct { - boolop_ty op; - asdl_expr_seq *values; - } BoolOp; - - struct { - expr_ty target; - expr_ty value; - } NamedExpr; - - struct { - expr_ty left; - operator_ty op; - expr_ty right; - } BinOp; - - struct { - unaryop_ty op; - expr_ty operand; - } UnaryOp; - - struct { - arguments_ty args; - expr_ty body; - } Lambda; - - struct { - expr_ty test; - expr_ty body; - expr_ty orelse; - } IfExp; - - struct { - asdl_expr_seq *keys; - asdl_expr_seq *values; - } Dict; - - struct { - asdl_expr_seq *elts; - } Set; - - struct { - expr_ty elt; - asdl_comprehension_seq *generators; - } ListComp; - - struct { - expr_ty elt; - asdl_comprehension_seq *generators; - } SetComp; - - struct { - expr_ty key; - expr_ty value; - asdl_comprehension_seq *generators; - } DictComp; - - struct { - expr_ty elt; - asdl_comprehension_seq *generators; - } GeneratorExp; - - struct { - expr_ty value; - } Await; - - struct { - expr_ty value; - } Yield; - - struct { - expr_ty value; - } YieldFrom; - - struct { - expr_ty left; - asdl_int_seq *ops; - asdl_expr_seq *comparators; - } Compare; - - struct { - expr_ty func; - asdl_expr_seq *args; - asdl_keyword_seq *keywords; - } Call; - - struct { - expr_ty value; - int conversion; - expr_ty format_spec; - } FormattedValue; - - struct { - asdl_expr_seq *values; - } JoinedStr; - - struct { - constant value; - string kind; - } Constant; - - struct { - expr_ty value; - identifier attr; - expr_context_ty ctx; - } Attribute; - - struct { - expr_ty value; - expr_ty slice; - expr_context_ty ctx; - } Subscript; - - struct { - expr_ty value; - expr_context_ty ctx; - } Starred; - - struct { - identifier id; - expr_context_ty ctx; - } Name; - - struct { - asdl_expr_seq *elts; - expr_context_ty ctx; - } List; - - struct { - asdl_expr_seq *elts; - expr_context_ty ctx; - } Tuple; - - struct { - expr_ty lower; - expr_ty upper; - expr_ty step; - } Slice; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _comprehension { - expr_ty target; - expr_ty iter; - asdl_expr_seq *ifs; - int is_async; -}; - -enum _excepthandler_kind {ExceptHandler_kind=1}; -struct _excepthandler { - enum _excepthandler_kind kind; - union { - struct { - expr_ty type; - identifier name; - asdl_stmt_seq *body; - } ExceptHandler; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _arguments { - asdl_arg_seq *posonlyargs; - asdl_arg_seq *args; - arg_ty vararg; - asdl_arg_seq *kwonlyargs; - asdl_expr_seq *kw_defaults; - arg_ty kwarg; - asdl_expr_seq *defaults; -}; - -struct _arg { - identifier arg; - expr_ty annotation; - string type_comment; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _keyword { - identifier arg; - expr_ty value; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _alias { - identifier name; - identifier asname; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _withitem { - expr_ty context_expr; - expr_ty optional_vars; -}; - -struct _match_case { - pattern_ty pattern; - expr_ty guard; - asdl_stmt_seq *body; -}; - -enum _pattern_kind {MatchValue_kind=1, MatchSingleton_kind=2, - MatchSequence_kind=3, MatchMapping_kind=4, - MatchClass_kind=5, MatchStar_kind=6, MatchAs_kind=7, - MatchOr_kind=8}; -struct _pattern { - enum _pattern_kind kind; - union { - struct { - expr_ty value; - } MatchValue; - - struct { - constant value; - } MatchSingleton; - - struct { - asdl_pattern_seq *patterns; - } MatchSequence; - - struct { - asdl_expr_seq *keys; - asdl_pattern_seq *patterns; - identifier rest; - } MatchMapping; - - struct { - expr_ty cls; - asdl_pattern_seq *patterns; - asdl_identifier_seq *kwd_attrs; - asdl_pattern_seq *kwd_patterns; - } MatchClass; - - struct { - identifier name; - } MatchStar; - - struct { - pattern_ty pattern; - identifier name; - } MatchAs; - - struct { - asdl_pattern_seq *patterns; - } MatchOr; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -enum _type_ignore_kind {TypeIgnore_kind=1}; -struct _type_ignore { - enum _type_ignore_kind kind; - union { - struct { - int lineno; - string tag; - } TypeIgnore; - - } v; -}; - - -// Note: these macros affect function definitions, not only call sites. -mod_ty _PyAST_Module(asdl_stmt_seq * body, asdl_type_ignore_seq * type_ignores, - PyArena *arena); -mod_ty _PyAST_Interactive(asdl_stmt_seq * body, PyArena *arena); -mod_ty _PyAST_Expression(expr_ty body, PyArena *arena); -mod_ty _PyAST_FunctionType(asdl_expr_seq * argtypes, expr_ty returns, PyArena - *arena); -stmt_ty _PyAST_FunctionDef(identifier name, arguments_ty args, asdl_stmt_seq * - body, asdl_expr_seq * decorator_list, expr_ty - returns, string type_comment, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -stmt_ty _PyAST_AsyncFunctionDef(identifier name, arguments_ty args, - asdl_stmt_seq * body, asdl_expr_seq * - decorator_list, expr_ty returns, string - type_comment, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_ClassDef(identifier name, asdl_expr_seq * bases, - asdl_keyword_seq * keywords, asdl_stmt_seq * body, - asdl_expr_seq * decorator_list, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -stmt_ty _PyAST_Return(expr_ty value, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Delete(asdl_expr_seq * targets, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Assign(asdl_expr_seq * targets, expr_ty value, string - type_comment, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_AugAssign(expr_ty target, operator_ty op, expr_ty value, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_AnnAssign(expr_ty target, expr_ty annotation, expr_ty value, int - simple, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_For(expr_ty target, expr_ty iter, asdl_stmt_seq * body, - asdl_stmt_seq * orelse, string type_comment, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -stmt_ty _PyAST_AsyncFor(expr_ty target, expr_ty iter, asdl_stmt_seq * body, - asdl_stmt_seq * orelse, string type_comment, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_While(expr_ty test, asdl_stmt_seq * body, asdl_stmt_seq * - orelse, int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_If(expr_ty test, asdl_stmt_seq * body, asdl_stmt_seq * orelse, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_With(asdl_withitem_seq * items, asdl_stmt_seq * body, string - type_comment, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_AsyncWith(asdl_withitem_seq * items, asdl_stmt_seq * body, - string type_comment, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Match(expr_ty subject, asdl_match_case_seq * cases, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -stmt_ty _PyAST_Raise(expr_ty exc, expr_ty cause, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Try(asdl_stmt_seq * body, asdl_excepthandler_seq * handlers, - asdl_stmt_seq * orelse, asdl_stmt_seq * finalbody, int - lineno, int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -stmt_ty _PyAST_TryStar(asdl_stmt_seq * body, asdl_excepthandler_seq * handlers, - asdl_stmt_seq * orelse, asdl_stmt_seq * finalbody, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_Assert(expr_ty test, expr_ty msg, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Import(asdl_alias_seq * names, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_ImportFrom(identifier module, asdl_alias_seq * names, int level, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_Global(asdl_identifier_seq * names, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Nonlocal(asdl_identifier_seq * names, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -stmt_ty _PyAST_Expr(expr_ty value, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Pass(int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_Break(int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_Continue(int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_BoolOp(boolop_ty op, asdl_expr_seq * values, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_NamedExpr(expr_ty target, expr_ty value, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -expr_ty _PyAST_BinOp(expr_ty left, operator_ty op, expr_ty right, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -expr_ty _PyAST_UnaryOp(unaryop_ty op, expr_ty operand, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Lambda(arguments_ty args, expr_ty body, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_IfExp(expr_ty test, expr_ty body, expr_ty orelse, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -expr_ty _PyAST_Dict(asdl_expr_seq * keys, asdl_expr_seq * values, int lineno, - int col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Set(asdl_expr_seq * elts, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_ListComp(expr_ty elt, asdl_comprehension_seq * generators, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_SetComp(expr_ty elt, asdl_comprehension_seq * generators, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_DictComp(expr_ty key, expr_ty value, asdl_comprehension_seq * - generators, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_GeneratorExp(expr_ty elt, asdl_comprehension_seq * generators, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_Await(expr_ty value, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_Yield(expr_ty value, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_YieldFrom(expr_ty value, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_Compare(expr_ty left, asdl_int_seq * ops, asdl_expr_seq * - comparators, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_Call(expr_ty func, asdl_expr_seq * args, asdl_keyword_seq * - keywords, int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_FormattedValue(expr_ty value, int conversion, expr_ty - format_spec, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_JoinedStr(asdl_expr_seq * values, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_Constant(constant value, string kind, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Attribute(expr_ty value, identifier attr, expr_context_ty ctx, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_Subscript(expr_ty value, expr_ty slice, expr_context_ty ctx, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_Starred(expr_ty value, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Name(identifier id, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_List(asdl_expr_seq * elts, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Tuple(asdl_expr_seq * elts, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Slice(expr_ty lower, expr_ty upper, expr_ty step, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -comprehension_ty _PyAST_comprehension(expr_ty target, expr_ty iter, - asdl_expr_seq * ifs, int is_async, - PyArena *arena); -excepthandler_ty _PyAST_ExceptHandler(expr_ty type, identifier name, - asdl_stmt_seq * body, int lineno, int - col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -arguments_ty _PyAST_arguments(asdl_arg_seq * posonlyargs, asdl_arg_seq * args, - arg_ty vararg, asdl_arg_seq * kwonlyargs, - asdl_expr_seq * kw_defaults, arg_ty kwarg, - asdl_expr_seq * defaults, PyArena *arena); -arg_ty _PyAST_arg(identifier arg, expr_ty annotation, string type_comment, int - lineno, int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -keyword_ty _PyAST_keyword(identifier arg, expr_ty value, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -alias_ty _PyAST_alias(identifier name, identifier asname, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -withitem_ty _PyAST_withitem(expr_ty context_expr, expr_ty optional_vars, - PyArena *arena); -match_case_ty _PyAST_match_case(pattern_ty pattern, expr_ty guard, - asdl_stmt_seq * body, PyArena *arena); -pattern_ty _PyAST_MatchValue(expr_ty value, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -pattern_ty _PyAST_MatchSingleton(constant value, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena - *arena); -pattern_ty _PyAST_MatchSequence(asdl_pattern_seq * patterns, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -pattern_ty _PyAST_MatchMapping(asdl_expr_seq * keys, asdl_pattern_seq * - patterns, identifier rest, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -pattern_ty _PyAST_MatchClass(expr_ty cls, asdl_pattern_seq * patterns, - asdl_identifier_seq * kwd_attrs, asdl_pattern_seq - * kwd_patterns, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -pattern_ty _PyAST_MatchStar(identifier name, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -pattern_ty _PyAST_MatchAs(pattern_ty pattern, identifier name, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -pattern_ty _PyAST_MatchOr(asdl_pattern_seq * patterns, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -type_ignore_ty _PyAST_TypeIgnore(int lineno, string tag, PyArena *arena); - - -PyObject* PyAST_mod2obj(mod_ty t); -mod_ty PyAST_obj2mod(PyObject* ast, PyArena* arena, int mode); -int PyAST_Check(PyObject* obj); - -extern int _PyAST_Validate(mod_ty); - -/* _PyAST_ExprAsUnicode is defined in ast_unparse.c */ -extern PyObject* _PyAST_ExprAsUnicode(expr_ty); - -/* Return the borrowed reference to the first literal string in the - sequence of statements or NULL if it doesn't start from a literal string. - Doesn't set exception. */ -extern PyObject* _PyAST_GetDocString(asdl_stmt_seq *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_AST_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_ast_state.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_ast_state.h deleted file mode 100644 index f15b490..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_ast_state.h +++ /dev/null @@ -1,258 +0,0 @@ -// File automatically generated by Parser/asdl_c.py. - -#ifndef Py_INTERNAL_AST_STATE_H -#define Py_INTERNAL_AST_STATE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct ast_state { - int initialized; - int recursion_depth; - int recursion_limit; - PyObject *AST_type; - PyObject *Add_singleton; - PyObject *Add_type; - PyObject *And_singleton; - PyObject *And_type; - PyObject *AnnAssign_type; - PyObject *Assert_type; - PyObject *Assign_type; - PyObject *AsyncFor_type; - PyObject *AsyncFunctionDef_type; - PyObject *AsyncWith_type; - PyObject *Attribute_type; - PyObject *AugAssign_type; - PyObject *Await_type; - PyObject *BinOp_type; - PyObject *BitAnd_singleton; - PyObject *BitAnd_type; - PyObject *BitOr_singleton; - PyObject *BitOr_type; - PyObject *BitXor_singleton; - PyObject *BitXor_type; - PyObject *BoolOp_type; - PyObject *Break_type; - PyObject *Call_type; - PyObject *ClassDef_type; - PyObject *Compare_type; - PyObject *Constant_type; - PyObject *Continue_type; - PyObject *Del_singleton; - PyObject *Del_type; - PyObject *Delete_type; - PyObject *DictComp_type; - PyObject *Dict_type; - PyObject *Div_singleton; - PyObject *Div_type; - PyObject *Eq_singleton; - PyObject *Eq_type; - PyObject *ExceptHandler_type; - PyObject *Expr_type; - PyObject *Expression_type; - PyObject *FloorDiv_singleton; - PyObject *FloorDiv_type; - PyObject *For_type; - PyObject *FormattedValue_type; - PyObject *FunctionDef_type; - PyObject *FunctionType_type; - PyObject *GeneratorExp_type; - PyObject *Global_type; - PyObject *GtE_singleton; - PyObject *GtE_type; - PyObject *Gt_singleton; - PyObject *Gt_type; - PyObject *IfExp_type; - PyObject *If_type; - PyObject *ImportFrom_type; - PyObject *Import_type; - PyObject *In_singleton; - PyObject *In_type; - PyObject *Interactive_type; - PyObject *Invert_singleton; - PyObject *Invert_type; - PyObject *IsNot_singleton; - PyObject *IsNot_type; - PyObject *Is_singleton; - PyObject *Is_type; - PyObject *JoinedStr_type; - PyObject *LShift_singleton; - PyObject *LShift_type; - PyObject *Lambda_type; - PyObject *ListComp_type; - PyObject *List_type; - PyObject *Load_singleton; - PyObject *Load_type; - PyObject *LtE_singleton; - PyObject *LtE_type; - PyObject *Lt_singleton; - PyObject *Lt_type; - PyObject *MatMult_singleton; - PyObject *MatMult_type; - PyObject *MatchAs_type; - PyObject *MatchClass_type; - PyObject *MatchMapping_type; - PyObject *MatchOr_type; - PyObject *MatchSequence_type; - PyObject *MatchSingleton_type; - PyObject *MatchStar_type; - PyObject *MatchValue_type; - PyObject *Match_type; - PyObject *Mod_singleton; - PyObject *Mod_type; - PyObject *Module_type; - PyObject *Mult_singleton; - PyObject *Mult_type; - PyObject *Name_type; - PyObject *NamedExpr_type; - PyObject *Nonlocal_type; - PyObject *NotEq_singleton; - PyObject *NotEq_type; - PyObject *NotIn_singleton; - PyObject *NotIn_type; - PyObject *Not_singleton; - PyObject *Not_type; - PyObject *Or_singleton; - PyObject *Or_type; - PyObject *Pass_type; - PyObject *Pow_singleton; - PyObject *Pow_type; - PyObject *RShift_singleton; - PyObject *RShift_type; - PyObject *Raise_type; - PyObject *Return_type; - PyObject *SetComp_type; - PyObject *Set_type; - PyObject *Slice_type; - PyObject *Starred_type; - PyObject *Store_singleton; - PyObject *Store_type; - PyObject *Sub_singleton; - PyObject *Sub_type; - PyObject *Subscript_type; - PyObject *TryStar_type; - PyObject *Try_type; - PyObject *Tuple_type; - PyObject *TypeIgnore_type; - PyObject *UAdd_singleton; - PyObject *UAdd_type; - PyObject *USub_singleton; - PyObject *USub_type; - PyObject *UnaryOp_type; - PyObject *While_type; - PyObject *With_type; - PyObject *YieldFrom_type; - PyObject *Yield_type; - PyObject *__dict__; - PyObject *__doc__; - PyObject *__match_args__; - PyObject *__module__; - PyObject *_attributes; - PyObject *_fields; - PyObject *alias_type; - PyObject *annotation; - PyObject *arg; - PyObject *arg_type; - PyObject *args; - PyObject *argtypes; - PyObject *arguments_type; - PyObject *asname; - PyObject *ast; - PyObject *attr; - PyObject *bases; - PyObject *body; - PyObject *boolop_type; - PyObject *cases; - PyObject *cause; - PyObject *cls; - PyObject *cmpop_type; - PyObject *col_offset; - PyObject *comparators; - PyObject *comprehension_type; - PyObject *context_expr; - PyObject *conversion; - PyObject *ctx; - PyObject *decorator_list; - PyObject *defaults; - PyObject *elt; - PyObject *elts; - PyObject *end_col_offset; - PyObject *end_lineno; - PyObject *exc; - PyObject *excepthandler_type; - PyObject *expr_context_type; - PyObject *expr_type; - PyObject *finalbody; - PyObject *format_spec; - PyObject *func; - PyObject *generators; - PyObject *guard; - PyObject *handlers; - PyObject *id; - PyObject *ifs; - PyObject *is_async; - PyObject *items; - PyObject *iter; - PyObject *key; - PyObject *keys; - PyObject *keyword_type; - PyObject *keywords; - PyObject *kind; - PyObject *kw_defaults; - PyObject *kwarg; - PyObject *kwd_attrs; - PyObject *kwd_patterns; - PyObject *kwonlyargs; - PyObject *left; - PyObject *level; - PyObject *lineno; - PyObject *lower; - PyObject *match_case_type; - PyObject *mod_type; - PyObject *module; - PyObject *msg; - PyObject *name; - PyObject *names; - PyObject *op; - PyObject *operand; - PyObject *operator_type; - PyObject *ops; - PyObject *optional_vars; - PyObject *orelse; - PyObject *pattern; - PyObject *pattern_type; - PyObject *patterns; - PyObject *posonlyargs; - PyObject *rest; - PyObject *returns; - PyObject *right; - PyObject *simple; - PyObject *slice; - PyObject *step; - PyObject *stmt_type; - PyObject *subject; - PyObject *tag; - PyObject *target; - PyObject *targets; - PyObject *test; - PyObject *type; - PyObject *type_comment; - PyObject *type_ignore_type; - PyObject *type_ignores; - PyObject *unaryop_type; - PyObject *upper; - PyObject *value; - PyObject *values; - PyObject *vararg; - PyObject *withitem_type; -}; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_AST_STATE_H */ - diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_atomic.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_atomic.h deleted file mode 100644 index 425d69f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_atomic.h +++ /dev/null @@ -1,557 +0,0 @@ -#ifndef Py_ATOMIC_H -#define Py_ATOMIC_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "dynamic_annotations.h" /* _Py_ANNOTATE_MEMORY_ORDER */ -#include "pyconfig.h" - -#ifdef HAVE_STD_ATOMIC -# include -#endif - - -#if defined(_MSC_VER) -#include -#if defined(_M_IX86) || defined(_M_X64) -# include -#endif -#endif - -/* This is modeled after the atomics interface from C1x, according to - * the draft at - * http://www.open-std.org/JTC1/SC22/wg14/www/docs/n1425.pdf. - * Operations and types are named the same except with a _Py_ prefix - * and have the same semantics. - * - * Beware, the implementations here are deep magic. - */ - -#if defined(HAVE_STD_ATOMIC) - -typedef enum _Py_memory_order { - _Py_memory_order_relaxed = memory_order_relaxed, - _Py_memory_order_acquire = memory_order_acquire, - _Py_memory_order_release = memory_order_release, - _Py_memory_order_acq_rel = memory_order_acq_rel, - _Py_memory_order_seq_cst = memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - atomic_uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - atomic_int _value; -} _Py_atomic_int; - -#define _Py_atomic_signal_fence(/*memory_order*/ ORDER) \ - atomic_signal_fence(ORDER) - -#define _Py_atomic_thread_fence(/*memory_order*/ ORDER) \ - atomic_thread_fence(ORDER) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - atomic_store_explicit(&((ATOMIC_VAL)->_value), NEW_VAL, ORDER) - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - atomic_load_explicit(&((ATOMIC_VAL)->_value), ORDER) - -// Use builtin atomic operations in GCC >= 4.7 and clang -#elif defined(HAVE_BUILTIN_ATOMIC) - -typedef enum _Py_memory_order { - _Py_memory_order_relaxed = __ATOMIC_RELAXED, - _Py_memory_order_acquire = __ATOMIC_ACQUIRE, - _Py_memory_order_release = __ATOMIC_RELEASE, - _Py_memory_order_acq_rel = __ATOMIC_ACQ_REL, - _Py_memory_order_seq_cst = __ATOMIC_SEQ_CST -} _Py_memory_order; - -typedef struct _Py_atomic_address { - uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - int _value; -} _Py_atomic_int; - -#define _Py_atomic_signal_fence(/*memory_order*/ ORDER) \ - __atomic_signal_fence(ORDER) - -#define _Py_atomic_thread_fence(/*memory_order*/ ORDER) \ - __atomic_thread_fence(ORDER) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - (assert((ORDER) == __ATOMIC_RELAXED \ - || (ORDER) == __ATOMIC_SEQ_CST \ - || (ORDER) == __ATOMIC_RELEASE), \ - __atomic_store_n(&((ATOMIC_VAL)->_value), NEW_VAL, ORDER)) - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - (assert((ORDER) == __ATOMIC_RELAXED \ - || (ORDER) == __ATOMIC_SEQ_CST \ - || (ORDER) == __ATOMIC_ACQUIRE \ - || (ORDER) == __ATOMIC_CONSUME), \ - __atomic_load_n(&((ATOMIC_VAL)->_value), ORDER)) - -/* Only support GCC (for expression statements) and x86 (for simple - * atomic semantics) and MSVC x86/x64/ARM */ -#elif defined(__GNUC__) && (defined(__i386__) || defined(__amd64)) -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - int _value; -} _Py_atomic_int; - - -static __inline__ void -_Py_atomic_signal_fence(_Py_memory_order order) -{ - if (order != _Py_memory_order_relaxed) - __asm__ volatile("":::"memory"); -} - -static __inline__ void -_Py_atomic_thread_fence(_Py_memory_order order) -{ - if (order != _Py_memory_order_relaxed) - __asm__ volatile("mfence":::"memory"); -} - -/* Tell the race checker about this operation's effects. */ -static __inline__ void -_Py_ANNOTATE_MEMORY_ORDER(const volatile void *address, _Py_memory_order order) -{ - (void)address; /* shut up -Wunused-parameter */ - switch(order) { - case _Py_memory_order_release: - case _Py_memory_order_acq_rel: - case _Py_memory_order_seq_cst: - _Py_ANNOTATE_HAPPENS_BEFORE(address); - break; - case _Py_memory_order_relaxed: - case _Py_memory_order_acquire: - break; - } - switch(order) { - case _Py_memory_order_acquire: - case _Py_memory_order_acq_rel: - case _Py_memory_order_seq_cst: - _Py_ANNOTATE_HAPPENS_AFTER(address); - break; - case _Py_memory_order_relaxed: - case _Py_memory_order_release: - break; - } -} - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - __extension__ ({ \ - __typeof__(ATOMIC_VAL) atomic_val = ATOMIC_VAL; \ - __typeof__(atomic_val->_value) new_val = NEW_VAL;\ - volatile __typeof__(new_val) *volatile_data = &atomic_val->_value; \ - _Py_memory_order order = ORDER; \ - _Py_ANNOTATE_MEMORY_ORDER(atomic_val, order); \ - \ - /* Perform the operation. */ \ - _Py_ANNOTATE_IGNORE_WRITES_BEGIN(); \ - switch(order) { \ - case _Py_memory_order_release: \ - _Py_atomic_signal_fence(_Py_memory_order_release); \ - /* fallthrough */ \ - case _Py_memory_order_relaxed: \ - *volatile_data = new_val; \ - break; \ - \ - case _Py_memory_order_acquire: \ - case _Py_memory_order_acq_rel: \ - case _Py_memory_order_seq_cst: \ - __asm__ volatile("xchg %0, %1" \ - : "+r"(new_val) \ - : "m"(atomic_val->_value) \ - : "memory"); \ - break; \ - } \ - _Py_ANNOTATE_IGNORE_WRITES_END(); \ - }) - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - __extension__ ({ \ - __typeof__(ATOMIC_VAL) atomic_val = ATOMIC_VAL; \ - __typeof__(atomic_val->_value) result; \ - volatile __typeof__(result) *volatile_data = &atomic_val->_value; \ - _Py_memory_order order = ORDER; \ - _Py_ANNOTATE_MEMORY_ORDER(atomic_val, order); \ - \ - /* Perform the operation. */ \ - _Py_ANNOTATE_IGNORE_READS_BEGIN(); \ - switch(order) { \ - case _Py_memory_order_release: \ - case _Py_memory_order_acq_rel: \ - case _Py_memory_order_seq_cst: \ - /* Loads on x86 are not releases by default, so need a */ \ - /* thread fence. */ \ - _Py_atomic_thread_fence(_Py_memory_order_release); \ - break; \ - default: \ - /* No fence */ \ - break; \ - } \ - result = *volatile_data; \ - switch(order) { \ - case _Py_memory_order_acquire: \ - case _Py_memory_order_acq_rel: \ - case _Py_memory_order_seq_cst: \ - /* Loads on x86 are automatically acquire operations so */ \ - /* can get by with just a compiler fence. */ \ - _Py_atomic_signal_fence(_Py_memory_order_acquire); \ - break; \ - default: \ - /* No fence */ \ - break; \ - } \ - _Py_ANNOTATE_IGNORE_READS_END(); \ - result; \ - }) - -#elif defined(_MSC_VER) -/* _Interlocked* functions provide a full memory barrier and are therefore - enough for acq_rel and seq_cst. If the HLE variants aren't available - in hardware they will fall back to a full memory barrier as well. - - This might affect performance but likely only in some very specific and - hard to measure scenario. -*/ -#if defined(_M_IX86) || defined(_M_X64) -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - volatile uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - volatile int _value; -} _Py_atomic_int; - - -#if defined(_M_X64) -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange64_HLEAcquire((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)(NEW_VAL)); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange64_HLERelease((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)(NEW_VAL)); \ - break; \ - default: \ - _InterlockedExchange64((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)(NEW_VAL)); \ - break; \ - } -#else -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) ((void)0); -#endif - -#define _Py_atomic_store_32bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange_HLEAcquire((volatile long*)&((ATOMIC_VAL)->_value), (int)(NEW_VAL)); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange_HLERelease((volatile long*)&((ATOMIC_VAL)->_value), (int)(NEW_VAL)); \ - break; \ - default: \ - _InterlockedExchange((volatile long*)&((ATOMIC_VAL)->_value), (int)(NEW_VAL)); \ - break; \ - } - -#if defined(_M_X64) -/* This has to be an intptr_t for now. - gil_created() uses -1 as a sentinel value, if this returns - a uintptr_t it will do an unsigned compare and crash -*/ -inline intptr_t _Py_atomic_load_64bit_impl(volatile uintptr_t* value, int order) { - __int64 old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_HLEAcquire((volatile __int64*)value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_HLERelease((volatile __int64*)value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange64((volatile __int64*)value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_64bit_impl((volatile uintptr_t*)&((ATOMIC_VAL)->_value), (ORDER)) - -#else -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) ((ATOMIC_VAL)->_value) -#endif - -inline int _Py_atomic_load_32bit_impl(volatile int* value, int order) { - long old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange_HLEAcquire((volatile long*)value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange_HLERelease((volatile long*)value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange((volatile long*)value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_32bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_32bit_impl((volatile int*)&((ATOMIC_VAL)->_value), (ORDER)) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - if (sizeof((ATOMIC_VAL)->_value) == 8) { \ - _Py_atomic_store_64bit((ATOMIC_VAL), NEW_VAL, ORDER) } else { \ - _Py_atomic_store_32bit((ATOMIC_VAL), NEW_VAL, ORDER) } - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - ( \ - sizeof((ATOMIC_VAL)->_value) == 8 ? \ - _Py_atomic_load_64bit((ATOMIC_VAL), ORDER) : \ - _Py_atomic_load_32bit((ATOMIC_VAL), ORDER) \ - ) -#elif defined(_M_ARM) || defined(_M_ARM64) -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - volatile uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - volatile int _value; -} _Py_atomic_int; - - -#if defined(_M_ARM64) -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange64_acq((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)NEW_VAL); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange64_rel((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)NEW_VAL); \ - break; \ - default: \ - _InterlockedExchange64((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)NEW_VAL); \ - break; \ - } -#else -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) ((void)0); -#endif - -#define _Py_atomic_store_32bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange_acq((volatile long*)&((ATOMIC_VAL)->_value), (int)NEW_VAL); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange_rel((volatile long*)&((ATOMIC_VAL)->_value), (int)NEW_VAL); \ - break; \ - default: \ - _InterlockedExchange((volatile long*)&((ATOMIC_VAL)->_value), (int)NEW_VAL); \ - break; \ - } - -#if defined(_M_ARM64) -/* This has to be an intptr_t for now. - gil_created() uses -1 as a sentinel value, if this returns - a uintptr_t it will do an unsigned compare and crash -*/ -inline intptr_t _Py_atomic_load_64bit_impl(volatile uintptr_t* value, int order) { - uintptr_t old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_acq(value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_rel(value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange64(value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_64bit_impl((volatile uintptr_t*)&((ATOMIC_VAL)->_value), (ORDER)) - -#else -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) ((ATOMIC_VAL)->_value) -#endif - -inline int _Py_atomic_load_32bit_impl(volatile int* value, int order) { - int old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange_acq(value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange_rel(value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange(value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_32bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_32bit_impl((volatile int*)&((ATOMIC_VAL)->_value), (ORDER)) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - if (sizeof((ATOMIC_VAL)->_value) == 8) { \ - _Py_atomic_store_64bit((ATOMIC_VAL), (NEW_VAL), (ORDER)) } else { \ - _Py_atomic_store_32bit((ATOMIC_VAL), (NEW_VAL), (ORDER)) } - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - ( \ - sizeof((ATOMIC_VAL)->_value) == 8 ? \ - _Py_atomic_load_64bit((ATOMIC_VAL), (ORDER)) : \ - _Py_atomic_load_32bit((ATOMIC_VAL), (ORDER)) \ - ) -#endif -#else /* !gcc x86 !_msc_ver */ -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - int _value; -} _Py_atomic_int; -/* Fall back to other compilers and processors by assuming that simple - volatile accesses are atomic. This is false, so people should port - this. */ -#define _Py_atomic_signal_fence(/*memory_order*/ ORDER) ((void)0) -#define _Py_atomic_thread_fence(/*memory_order*/ ORDER) ((void)0) -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - ((ATOMIC_VAL)->_value = NEW_VAL) -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - ((ATOMIC_VAL)->_value) -#endif - -/* Standardized shortcuts. */ -#define _Py_atomic_store(ATOMIC_VAL, NEW_VAL) \ - _Py_atomic_store_explicit((ATOMIC_VAL), (NEW_VAL), _Py_memory_order_seq_cst) -#define _Py_atomic_load(ATOMIC_VAL) \ - _Py_atomic_load_explicit((ATOMIC_VAL), _Py_memory_order_seq_cst) - -/* Python-local extensions */ - -#define _Py_atomic_store_relaxed(ATOMIC_VAL, NEW_VAL) \ - _Py_atomic_store_explicit((ATOMIC_VAL), (NEW_VAL), _Py_memory_order_relaxed) -#define _Py_atomic_load_relaxed(ATOMIC_VAL) \ - _Py_atomic_load_explicit((ATOMIC_VAL), _Py_memory_order_relaxed) - -#ifdef __cplusplus -} -#endif -#endif /* Py_ATOMIC_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_atomic_funcs.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_atomic_funcs.h deleted file mode 100644 index a708789..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_atomic_funcs.h +++ /dev/null @@ -1,94 +0,0 @@ -/* Atomic functions: similar to pycore_atomic.h, but don't need - to declare variables as atomic. - - Py_ssize_t type: - - * value = _Py_atomic_size_get(&var) - * _Py_atomic_size_set(&var, value) - - Use sequentially-consistent ordering (__ATOMIC_SEQ_CST memory order): - enforce total ordering with all other atomic functions. -*/ -#ifndef Py_ATOMIC_FUNC_H -#define Py_ATOMIC_FUNC_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#if defined(_MSC_VER) -# include // _InterlockedExchange() -#endif - - -// Use builtin atomic operations in GCC >= 4.7 and clang -#ifdef HAVE_BUILTIN_ATOMIC - -static inline Py_ssize_t _Py_atomic_size_get(Py_ssize_t *var) -{ - return __atomic_load_n(var, __ATOMIC_SEQ_CST); -} - -static inline void _Py_atomic_size_set(Py_ssize_t *var, Py_ssize_t value) -{ - __atomic_store_n(var, value, __ATOMIC_SEQ_CST); -} - -#elif defined(_MSC_VER) - -static inline Py_ssize_t _Py_atomic_size_get(Py_ssize_t *var) -{ -#if SIZEOF_VOID_P == 8 - Py_BUILD_ASSERT(sizeof(__int64) == sizeof(*var)); - volatile __int64 *volatile_var = (volatile __int64 *)var; - __int64 old; - do { - old = *volatile_var; - } while(_InterlockedCompareExchange64(volatile_var, old, old) != old); -#else - Py_BUILD_ASSERT(sizeof(long) == sizeof(*var)); - volatile long *volatile_var = (volatile long *)var; - long old; - do { - old = *volatile_var; - } while(_InterlockedCompareExchange(volatile_var, old, old) != old); -#endif - return old; -} - -static inline void _Py_atomic_size_set(Py_ssize_t *var, Py_ssize_t value) -{ -#if SIZEOF_VOID_P == 8 - Py_BUILD_ASSERT(sizeof(__int64) == sizeof(*var)); - volatile __int64 *volatile_var = (volatile __int64 *)var; - _InterlockedExchange64(volatile_var, value); -#else - Py_BUILD_ASSERT(sizeof(long) == sizeof(*var)); - volatile long *volatile_var = (volatile long *)var; - _InterlockedExchange(volatile_var, value); -#endif -} - -#else -// Fallback implementation using volatile - -static inline Py_ssize_t _Py_atomic_size_get(Py_ssize_t *var) -{ - volatile Py_ssize_t *volatile_var = (volatile Py_ssize_t *)var; - return *volatile_var; -} - -static inline void _Py_atomic_size_set(Py_ssize_t *var, Py_ssize_t value) -{ - volatile Py_ssize_t *volatile_var = (volatile Py_ssize_t *)var; - *volatile_var = value; -} -#endif - -#ifdef __cplusplus -} -#endif -#endif /* Py_ATOMIC_FUNC_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_bitutils.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_bitutils.h deleted file mode 100644 index e6bf61e..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_bitutils.h +++ /dev/null @@ -1,186 +0,0 @@ -/* Bit and bytes utilities. - - Bytes swap functions, reverse order of bytes: - - - _Py_bswap16(uint16_t) - - _Py_bswap32(uint32_t) - - _Py_bswap64(uint64_t) -*/ - -#ifndef Py_INTERNAL_BITUTILS_H -#define Py_INTERNAL_BITUTILS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#if defined(__GNUC__) \ - && ((__GNUC__ >= 5) || (__GNUC__ == 4) && (__GNUC_MINOR__ >= 8)) - /* __builtin_bswap16() is available since GCC 4.8, - __builtin_bswap32() is available since GCC 4.3, - __builtin_bswap64() is available since GCC 4.3. */ -# define _PY_HAVE_BUILTIN_BSWAP -#endif - -#ifdef _MSC_VER - /* Get _byteswap_ushort(), _byteswap_ulong(), _byteswap_uint64() */ -# include -#endif - -static inline uint16_t -_Py_bswap16(uint16_t word) -{ -#if defined(_PY_HAVE_BUILTIN_BSWAP) || _Py__has_builtin(__builtin_bswap16) - return __builtin_bswap16(word); -#elif defined(_MSC_VER) - Py_BUILD_ASSERT(sizeof(word) == sizeof(unsigned short)); - return _byteswap_ushort(word); -#else - // Portable implementation which doesn't rely on circular bit shift - return ( ((word & UINT16_C(0x00FF)) << 8) - | ((word & UINT16_C(0xFF00)) >> 8)); -#endif -} - -static inline uint32_t -_Py_bswap32(uint32_t word) -{ -#if defined(_PY_HAVE_BUILTIN_BSWAP) || _Py__has_builtin(__builtin_bswap32) - return __builtin_bswap32(word); -#elif defined(_MSC_VER) - Py_BUILD_ASSERT(sizeof(word) == sizeof(unsigned long)); - return _byteswap_ulong(word); -#else - // Portable implementation which doesn't rely on circular bit shift - return ( ((word & UINT32_C(0x000000FF)) << 24) - | ((word & UINT32_C(0x0000FF00)) << 8) - | ((word & UINT32_C(0x00FF0000)) >> 8) - | ((word & UINT32_C(0xFF000000)) >> 24)); -#endif -} - -static inline uint64_t -_Py_bswap64(uint64_t word) -{ -#if defined(_PY_HAVE_BUILTIN_BSWAP) || _Py__has_builtin(__builtin_bswap64) - return __builtin_bswap64(word); -#elif defined(_MSC_VER) - return _byteswap_uint64(word); -#else - // Portable implementation which doesn't rely on circular bit shift - return ( ((word & UINT64_C(0x00000000000000FF)) << 56) - | ((word & UINT64_C(0x000000000000FF00)) << 40) - | ((word & UINT64_C(0x0000000000FF0000)) << 24) - | ((word & UINT64_C(0x00000000FF000000)) << 8) - | ((word & UINT64_C(0x000000FF00000000)) >> 8) - | ((word & UINT64_C(0x0000FF0000000000)) >> 24) - | ((word & UINT64_C(0x00FF000000000000)) >> 40) - | ((word & UINT64_C(0xFF00000000000000)) >> 56)); -#endif -} - - -// Population count: count the number of 1's in 'x' -// (number of bits set to 1), also known as the hamming weight. -// -// Implementation note. CPUID is not used, to test if x86 POPCNT instruction -// can be used, to keep the implementation simple. For example, Visual Studio -// __popcnt() is not used this reason. The clang and GCC builtin function can -// use the x86 POPCNT instruction if the target architecture has SSE4a or -// newer. -static inline int -_Py_popcount32(uint32_t x) -{ -#if (defined(__clang__) || defined(__GNUC__)) - -#if SIZEOF_INT >= 4 - Py_BUILD_ASSERT(sizeof(x) <= sizeof(unsigned int)); - return __builtin_popcount(x); -#else - // The C standard guarantees that unsigned long will always be big enough - // to hold a uint32_t value without losing information. - Py_BUILD_ASSERT(sizeof(x) <= sizeof(unsigned long)); - return __builtin_popcountl(x); -#endif - -#else - // 32-bit SWAR (SIMD Within A Register) popcount - - // Binary: 0 1 0 1 ... - const uint32_t M1 = 0x55555555; - // Binary: 00 11 00 11. .. - const uint32_t M2 = 0x33333333; - // Binary: 0000 1111 0000 1111 ... - const uint32_t M4 = 0x0F0F0F0F; - - // Put count of each 2 bits into those 2 bits - x = x - ((x >> 1) & M1); - // Put count of each 4 bits into those 4 bits - x = (x & M2) + ((x >> 2) & M2); - // Put count of each 8 bits into those 8 bits - x = (x + (x >> 4)) & M4; - // Sum of the 4 byte counts. - // Take care when considering changes to the next line. Portability and - // correctness are delicate here, thanks to C's "integer promotions" (C99 - // §6.3.1.1p2). On machines where the `int` type has width greater than 32 - // bits, `x` will be promoted to an `int`, and following C's "usual - // arithmetic conversions" (C99 §6.3.1.8), the multiplication will be - // performed as a multiplication of two `unsigned int` operands. In this - // case it's critical that we cast back to `uint32_t` in order to keep only - // the least significant 32 bits. On machines where the `int` type has - // width no greater than 32, the multiplication is of two 32-bit unsigned - // integer types, and the (uint32_t) cast is a no-op. In both cases, we - // avoid the risk of undefined behaviour due to overflow of a - // multiplication of signed integer types. - return (uint32_t)(x * 0x01010101U) >> 24; -#endif -} - - -// Return the index of the most significant 1 bit in 'x'. This is the smallest -// integer k such that x < 2**k. Equivalent to floor(log2(x)) + 1 for x != 0. -static inline int -_Py_bit_length(unsigned long x) -{ -#if (defined(__clang__) || defined(__GNUC__)) - if (x != 0) { - // __builtin_clzl() is available since GCC 3.4. - // Undefined behavior for x == 0. - return (int)sizeof(unsigned long) * 8 - __builtin_clzl(x); - } - else { - return 0; - } -#elif defined(_MSC_VER) - // _BitScanReverse() is documented to search 32 bits. - Py_BUILD_ASSERT(sizeof(unsigned long) <= 4); - unsigned long msb; - if (_BitScanReverse(&msb, x)) { - return (int)msb + 1; - } - else { - return 0; - } -#else - const int BIT_LENGTH_TABLE[32] = { - 0, 1, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 - }; - int msb = 0; - while (x >= 32) { - msb += 6; - x >>= 6; - } - msb += BIT_LENGTH_TABLE[x]; - return msb; -#endif -} - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_BITUTILS_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_blocks_output_buffer.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_blocks_output_buffer.h deleted file mode 100644 index 28cf6fb..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_blocks_output_buffer.h +++ /dev/null @@ -1,317 +0,0 @@ -/* - _BlocksOutputBuffer is used to maintain an output buffer - that has unpredictable size. Suitable for compression/decompression - API (bz2/lzma/zlib) that has stream->next_out and stream->avail_out: - - stream->next_out: point to the next output position. - stream->avail_out: the number of available bytes left in the buffer. - - It maintains a list of bytes object, so there is no overhead of resizing - the buffer. - - Usage: - - 1, Initialize the struct instance like this: - _BlocksOutputBuffer buffer = {.list = NULL}; - Set .list to NULL for _BlocksOutputBuffer_OnError() - - 2, Initialize the buffer use one of these functions: - _BlocksOutputBuffer_InitAndGrow() - _BlocksOutputBuffer_InitWithSize() - - 3, If (avail_out == 0), grow the buffer: - _BlocksOutputBuffer_Grow() - - 4, Get the current outputted data size: - _BlocksOutputBuffer_GetDataSize() - - 5, Finish the buffer, and return a bytes object: - _BlocksOutputBuffer_Finish() - - 6, Clean up the buffer when an error occurred: - _BlocksOutputBuffer_OnError() -*/ - -#ifndef Py_INTERNAL_BLOCKS_OUTPUT_BUFFER_H -#define Py_INTERNAL_BLOCKS_OUTPUT_BUFFER_H -#ifdef __cplusplus -extern "C" { -#endif - -#include "Python.h" - -typedef struct { - // List of bytes objects - PyObject *list; - // Number of whole allocated size - Py_ssize_t allocated; - // Max length of the buffer, negative number means unlimited length. - Py_ssize_t max_length; -} _BlocksOutputBuffer; - -static const char unable_allocate_msg[] = "Unable to allocate output buffer."; - -/* In 32-bit build, the max block size should <= INT32_MAX. */ -#define OUTPUT_BUFFER_MAX_BLOCK_SIZE (256*1024*1024) - -/* Block size sequence */ -#define KB (1024) -#define MB (1024*1024) -static const Py_ssize_t BUFFER_BLOCK_SIZE[] = - { 32*KB, 64*KB, 256*KB, 1*MB, 4*MB, 8*MB, 16*MB, 16*MB, - 32*MB, 32*MB, 32*MB, 32*MB, 64*MB, 64*MB, 128*MB, 128*MB, - OUTPUT_BUFFER_MAX_BLOCK_SIZE }; -#undef KB -#undef MB - -/* According to the block sizes defined by BUFFER_BLOCK_SIZE, the whole - allocated size growth step is: - 1 32 KB +32 KB - 2 96 KB +64 KB - 3 352 KB +256 KB - 4 1.34 MB +1 MB - 5 5.34 MB +4 MB - 6 13.34 MB +8 MB - 7 29.34 MB +16 MB - 8 45.34 MB +16 MB - 9 77.34 MB +32 MB - 10 109.34 MB +32 MB - 11 141.34 MB +32 MB - 12 173.34 MB +32 MB - 13 237.34 MB +64 MB - 14 301.34 MB +64 MB - 15 429.34 MB +128 MB - 16 557.34 MB +128 MB - 17 813.34 MB +256 MB - 18 1069.34 MB +256 MB - 19 1325.34 MB +256 MB - 20 1581.34 MB +256 MB - 21 1837.34 MB +256 MB - 22 2093.34 MB +256 MB - ... -*/ - -/* Initialize the buffer, and grow the buffer. - - max_length: Max length of the buffer, -1 for unlimited length. - - On success, return allocated size (>=0) - On failure, return -1 -*/ -static inline Py_ssize_t -_BlocksOutputBuffer_InitAndGrow(_BlocksOutputBuffer *buffer, - const Py_ssize_t max_length, - void **next_out) -{ - PyObject *b; - Py_ssize_t block_size; - - // ensure .list was set to NULL - assert(buffer->list == NULL); - - // get block size - if (0 <= max_length && max_length < BUFFER_BLOCK_SIZE[0]) { - block_size = max_length; - } else { - block_size = BUFFER_BLOCK_SIZE[0]; - } - - // the first block - b = PyBytes_FromStringAndSize(NULL, block_size); - if (b == NULL) { - return -1; - } - - // create the list - buffer->list = PyList_New(1); - if (buffer->list == NULL) { - Py_DECREF(b); - return -1; - } - PyList_SET_ITEM(buffer->list, 0, b); - - // set variables - buffer->allocated = block_size; - buffer->max_length = max_length; - - *next_out = PyBytes_AS_STRING(b); - return block_size; -} - -/* Initialize the buffer, with an initial size. - - Check block size limit in the outer wrapper function. For example, some libs - accept UINT32_MAX as the maximum block size, then init_size should <= it. - - On success, return allocated size (>=0) - On failure, return -1 -*/ -static inline Py_ssize_t -_BlocksOutputBuffer_InitWithSize(_BlocksOutputBuffer *buffer, - const Py_ssize_t init_size, - void **next_out) -{ - PyObject *b; - - // ensure .list was set to NULL - assert(buffer->list == NULL); - - // the first block - b = PyBytes_FromStringAndSize(NULL, init_size); - if (b == NULL) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return -1; - } - - // create the list - buffer->list = PyList_New(1); - if (buffer->list == NULL) { - Py_DECREF(b); - return -1; - } - PyList_SET_ITEM(buffer->list, 0, b); - - // set variables - buffer->allocated = init_size; - buffer->max_length = -1; - - *next_out = PyBytes_AS_STRING(b); - return init_size; -} - -/* Grow the buffer. The avail_out must be 0, please check it before calling. - - On success, return allocated size (>=0) - On failure, return -1 -*/ -static inline Py_ssize_t -_BlocksOutputBuffer_Grow(_BlocksOutputBuffer *buffer, - void **next_out, - const Py_ssize_t avail_out) -{ - PyObject *b; - const Py_ssize_t list_len = Py_SIZE(buffer->list); - Py_ssize_t block_size; - - // ensure no gaps in the data - if (avail_out != 0) { - PyErr_SetString(PyExc_SystemError, - "avail_out is non-zero in _BlocksOutputBuffer_Grow()."); - return -1; - } - - // get block size - if (list_len < (Py_ssize_t) Py_ARRAY_LENGTH(BUFFER_BLOCK_SIZE)) { - block_size = BUFFER_BLOCK_SIZE[list_len]; - } else { - block_size = BUFFER_BLOCK_SIZE[Py_ARRAY_LENGTH(BUFFER_BLOCK_SIZE) - 1]; - } - - // check max_length - if (buffer->max_length >= 0) { - // if (rest == 0), should not grow the buffer. - Py_ssize_t rest = buffer->max_length - buffer->allocated; - assert(rest > 0); - - // block_size of the last block - if (block_size > rest) { - block_size = rest; - } - } - - // check buffer->allocated overflow - if (block_size > PY_SSIZE_T_MAX - buffer->allocated) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return -1; - } - - // create the block - b = PyBytes_FromStringAndSize(NULL, block_size); - if (b == NULL) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return -1; - } - if (PyList_Append(buffer->list, b) < 0) { - Py_DECREF(b); - return -1; - } - Py_DECREF(b); - - // set variables - buffer->allocated += block_size; - - *next_out = PyBytes_AS_STRING(b); - return block_size; -} - -/* Return the current outputted data size. */ -static inline Py_ssize_t -_BlocksOutputBuffer_GetDataSize(_BlocksOutputBuffer *buffer, - const Py_ssize_t avail_out) -{ - return buffer->allocated - avail_out; -} - -/* Finish the buffer. - - Return a bytes object on success - Return NULL on failure -*/ -static inline PyObject * -_BlocksOutputBuffer_Finish(_BlocksOutputBuffer *buffer, - const Py_ssize_t avail_out) -{ - PyObject *result, *block; - const Py_ssize_t list_len = Py_SIZE(buffer->list); - - // fast path for single block - if ((list_len == 1 && avail_out == 0) || - (list_len == 2 && Py_SIZE(PyList_GET_ITEM(buffer->list, 1)) == avail_out)) - { - block = PyList_GET_ITEM(buffer->list, 0); - Py_INCREF(block); - - Py_CLEAR(buffer->list); - return block; - } - - // final bytes object - result = PyBytes_FromStringAndSize(NULL, buffer->allocated - avail_out); - if (result == NULL) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return NULL; - } - - // memory copy - if (list_len > 0) { - char *posi = PyBytes_AS_STRING(result); - - // blocks except the last one - Py_ssize_t i = 0; - for (; i < list_len-1; i++) { - block = PyList_GET_ITEM(buffer->list, i); - memcpy(posi, PyBytes_AS_STRING(block), Py_SIZE(block)); - posi += Py_SIZE(block); - } - // the last block - block = PyList_GET_ITEM(buffer->list, i); - memcpy(posi, PyBytes_AS_STRING(block), Py_SIZE(block) - avail_out); - } else { - assert(Py_SIZE(result) == 0); - } - - Py_CLEAR(buffer->list); - return result; -} - -/* Clean up the buffer when an error occurred. */ -static inline void -_BlocksOutputBuffer_OnError(_BlocksOutputBuffer *buffer) -{ - Py_CLEAR(buffer->list); -} - -#ifdef __cplusplus -} -#endif -#endif /* Py_INTERNAL_BLOCKS_OUTPUT_BUFFER_H */ \ No newline at end of file diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_bytes_methods.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_bytes_methods.h deleted file mode 100644 index 11e8ab2..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_bytes_methods.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_BYTES_CTYPE_H -#define Py_BYTES_CTYPE_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* - * The internal implementation behind PyBytes (bytes) and PyByteArray (bytearray) - * methods of the given names, they operate on ASCII byte strings. - */ -extern PyObject* _Py_bytes_isspace(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isalpha(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isalnum(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isascii(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isdigit(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_islower(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isupper(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_istitle(const char *cptr, Py_ssize_t len); - -/* These store their len sized answer in the given preallocated *result arg. */ -extern void _Py_bytes_lower(char *result, const char *cptr, Py_ssize_t len); -extern void _Py_bytes_upper(char *result, const char *cptr, Py_ssize_t len); -extern void _Py_bytes_title(char *result, const char *s, Py_ssize_t len); -extern void _Py_bytes_capitalize(char *result, const char *s, Py_ssize_t len); -extern void _Py_bytes_swapcase(char *result, const char *s, Py_ssize_t len); - -extern PyObject *_Py_bytes_find(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_index(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_rfind(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_rindex(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_count(const char *str, Py_ssize_t len, PyObject *args); -extern int _Py_bytes_contains(const char *str, Py_ssize_t len, PyObject *arg); -extern PyObject *_Py_bytes_startswith(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_endswith(const char *str, Py_ssize_t len, PyObject *args); - -/* The maketrans() static method. */ -extern PyObject* _Py_bytes_maketrans(Py_buffer *frm, Py_buffer *to); - -/* Shared __doc__ strings. */ -extern const char _Py_isspace__doc__[]; -extern const char _Py_isalpha__doc__[]; -extern const char _Py_isalnum__doc__[]; -extern const char _Py_isascii__doc__[]; -extern const char _Py_isdigit__doc__[]; -extern const char _Py_islower__doc__[]; -extern const char _Py_isupper__doc__[]; -extern const char _Py_istitle__doc__[]; -extern const char _Py_lower__doc__[]; -extern const char _Py_upper__doc__[]; -extern const char _Py_title__doc__[]; -extern const char _Py_capitalize__doc__[]; -extern const char _Py_swapcase__doc__[]; -extern const char _Py_count__doc__[]; -extern const char _Py_find__doc__[]; -extern const char _Py_index__doc__[]; -extern const char _Py_rfind__doc__[]; -extern const char _Py_rindex__doc__[]; -extern const char _Py_startswith__doc__[]; -extern const char _Py_endswith__doc__[]; -extern const char _Py_maketrans__doc__[]; -extern const char _Py_expandtabs__doc__[]; -extern const char _Py_ljust__doc__[]; -extern const char _Py_rjust__doc__[]; -extern const char _Py_center__doc__[]; -extern const char _Py_zfill__doc__[]; - -/* this is needed because some docs are shared from the .o, not static */ -#define PyDoc_STRVAR_shared(name,str) const char name[] = PyDoc_STR(str) - -#endif /* !Py_BYTES_CTYPE_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_bytesobject.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_bytesobject.h deleted file mode 100644 index 9173a4f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_bytesobject.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Py_INTERNAL_BYTESOBJECT_H -#define Py_INTERNAL_BYTESOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* runtime lifecycle */ - -extern PyStatus _PyBytes_InitTypes(PyInterpreterState *); - - -/* Substring Search. - - Returns the index of the first occurrence of - a substring ("needle") in a larger text ("haystack"). - If the needle is not found, return -1. - If the needle is found, add offset to the index. -*/ - -PyAPI_FUNC(Py_ssize_t) -_PyBytes_Find(const char *haystack, Py_ssize_t len_haystack, - const char *needle, Py_ssize_t len_needle, - Py_ssize_t offset); - -/* Same as above, but search right-to-left */ -PyAPI_FUNC(Py_ssize_t) -_PyBytes_ReverseFind(const char *haystack, Py_ssize_t len_haystack, - const char *needle, Py_ssize_t len_needle, - Py_ssize_t offset); - - -/** Helper function to implement the repeat and inplace repeat methods on a buffer - * - * len_dest is assumed to be an integer multiple of len_src. - * If src equals dest, then assume the operation is inplace. - * - * This method repeately doubles the number of bytes copied to reduce - * the number of invocations of memcpy. - */ -PyAPI_FUNC(void) -_PyBytes_Repeat(char* dest, Py_ssize_t len_dest, - const char* src, Py_ssize_t len_src); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_BYTESOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_call.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_call.h deleted file mode 100644 index 3ccacfa..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_call.h +++ /dev/null @@ -1,121 +0,0 @@ -#ifndef Py_INTERNAL_CALL_H -#define Py_INTERNAL_CALL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_pystate.h" // _PyThreadState_GET() - -PyAPI_FUNC(PyObject *) _PyObject_Call_Prepend( - PyThreadState *tstate, - PyObject *callable, - PyObject *obj, - PyObject *args, - PyObject *kwargs); - -PyAPI_FUNC(PyObject *) _PyObject_FastCallDictTstate( - PyThreadState *tstate, - PyObject *callable, - PyObject *const *args, - size_t nargsf, - PyObject *kwargs); - -PyAPI_FUNC(PyObject *) _PyObject_Call( - PyThreadState *tstate, - PyObject *callable, - PyObject *args, - PyObject *kwargs); - -extern PyObject * _PyObject_CallMethodFormat( - PyThreadState *tstate, PyObject *callable, const char *format, ...); - - -// Static inline variant of public PyVectorcall_Function(). -static inline vectorcallfunc -_PyVectorcall_FunctionInline(PyObject *callable) -{ - assert(callable != NULL); - - PyTypeObject *tp = Py_TYPE(callable); - if (!PyType_HasFeature(tp, Py_TPFLAGS_HAVE_VECTORCALL)) { - return NULL; - } - assert(PyCallable_Check(callable)); - - Py_ssize_t offset = tp->tp_vectorcall_offset; - assert(offset > 0); - - vectorcallfunc ptr; - memcpy(&ptr, (char *) callable + offset, sizeof(ptr)); - return ptr; -} - - -/* Call the callable object 'callable' with the "vectorcall" calling - convention. - - args is a C array for positional arguments. - - nargsf is the number of positional arguments plus optionally the flag - PY_VECTORCALL_ARGUMENTS_OFFSET which means that the caller is allowed to - modify args[-1]. - - kwnames is a tuple of keyword names. The values of the keyword arguments - are stored in "args" after the positional arguments (note that the number - of keyword arguments does not change nargsf). kwnames can also be NULL if - there are no keyword arguments. - - keywords must only contain strings and all keys must be unique. - - Return the result on success. Raise an exception and return NULL on - error. */ -static inline PyObject * -_PyObject_VectorcallTstate(PyThreadState *tstate, PyObject *callable, - PyObject *const *args, size_t nargsf, - PyObject *kwnames) -{ - vectorcallfunc func; - PyObject *res; - - assert(kwnames == NULL || PyTuple_Check(kwnames)); - assert(args != NULL || PyVectorcall_NARGS(nargsf) == 0); - - func = _PyVectorcall_FunctionInline(callable); - if (func == NULL) { - Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); - return _PyObject_MakeTpCall(tstate, callable, args, nargs, kwnames); - } - res = func(callable, args, nargsf, kwnames); - return _Py_CheckFunctionResult(tstate, callable, res, NULL); -} - - -static inline PyObject * -_PyObject_CallNoArgsTstate(PyThreadState *tstate, PyObject *func) { - return _PyObject_VectorcallTstate(tstate, func, NULL, 0, NULL); -} - - -// Private static inline function variant of public PyObject_CallNoArgs() -static inline PyObject * -_PyObject_CallNoArgs(PyObject *func) { - PyThreadState *tstate = _PyThreadState_GET(); - return _PyObject_VectorcallTstate(tstate, func, NULL, 0, NULL); -} - - -static inline PyObject * -_PyObject_FastCallTstate(PyThreadState *tstate, PyObject *func, PyObject *const *args, Py_ssize_t nargs) -{ - return _PyObject_VectorcallTstate(tstate, func, args, (size_t)nargs, NULL); -} - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CALL_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_ceval.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_ceval.h deleted file mode 100644 index 8d18d20..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_ceval.h +++ /dev/null @@ -1,138 +0,0 @@ -#ifndef Py_INTERNAL_CEVAL_H -#define Py_INTERNAL_CEVAL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Forward declarations */ -struct pyruntimestate; -struct _ceval_runtime_state; - -/* WASI has limited call stack. Python's recursion limit depends on code - layout, optimization, and WASI runtime. Wasmtime can handle about 700-750 - recursions, sometimes less. 600 is a more conservative limit. */ -#ifndef Py_DEFAULT_RECURSION_LIMIT -# ifdef __wasi__ -# define Py_DEFAULT_RECURSION_LIMIT 600 -# else -# define Py_DEFAULT_RECURSION_LIMIT 1000 -# endif -#endif - -#include "pycore_interp.h" // PyInterpreterState.eval_frame -#include "pycore_pystate.h" // _PyThreadState_GET() - - -extern void _Py_FinishPendingCalls(PyThreadState *tstate); -extern void _PyEval_InitRuntimeState(struct _ceval_runtime_state *); -extern void _PyEval_InitState(struct _ceval_state *, PyThread_type_lock); -extern void _PyEval_FiniState(struct _ceval_state *ceval); -PyAPI_FUNC(void) _PyEval_SignalReceived(PyInterpreterState *interp); -PyAPI_FUNC(int) _PyEval_AddPendingCall( - PyInterpreterState *interp, - int (*func)(void *), - void *arg); -PyAPI_FUNC(void) _PyEval_SignalAsyncExc(PyInterpreterState *interp); -#ifdef HAVE_FORK -extern PyStatus _PyEval_ReInitThreads(PyThreadState *tstate); -#endif - -// Used by sys.call_tracing() -extern PyObject* _PyEval_CallTracing(PyObject *func, PyObject *args); - -// Used by sys.get_asyncgen_hooks() -extern PyObject* _PyEval_GetAsyncGenFirstiter(void); -extern PyObject* _PyEval_GetAsyncGenFinalizer(void); - -// Used by sys.set_asyncgen_hooks() -extern int _PyEval_SetAsyncGenFirstiter(PyObject *); -extern int _PyEval_SetAsyncGenFinalizer(PyObject *); - -// Used by sys.get_coroutine_origin_tracking_depth() -// and sys.set_coroutine_origin_tracking_depth() -extern int _PyEval_GetCoroutineOriginTrackingDepth(void); -extern int _PyEval_SetCoroutineOriginTrackingDepth(int depth); - -extern void _PyEval_Fini(void); - - -extern PyObject* _PyEval_GetBuiltins(PyThreadState *tstate); -extern PyObject* _PyEval_BuiltinsFromGlobals( - PyThreadState *tstate, - PyObject *globals); - - -static inline PyObject* -_PyEval_EvalFrame(PyThreadState *tstate, struct _PyInterpreterFrame *frame, int throwflag) -{ - if (tstate->interp->eval_frame == NULL) { - return _PyEval_EvalFrameDefault(tstate, frame, throwflag); - } - return tstate->interp->eval_frame(tstate, frame, throwflag); -} - -extern PyObject* -_PyEval_Vector(PyThreadState *tstate, - PyFunctionObject *func, PyObject *locals, - PyObject* const* args, size_t argcount, - PyObject *kwnames); - -extern int _PyEval_ThreadsInitialized(struct pyruntimestate *runtime); -extern PyStatus _PyEval_InitGIL(PyThreadState *tstate); -extern void _PyEval_FiniGIL(PyInterpreterState *interp); - -extern void _PyEval_ReleaseLock(PyThreadState *tstate); - -extern void _PyEval_DeactivateOpCache(void); - - -/* --- _Py_EnterRecursiveCall() ----------------------------------------- */ - -#ifdef USE_STACKCHECK -/* With USE_STACKCHECK macro defined, trigger stack checks in - _Py_CheckRecursiveCall() on every 64th call to _Py_EnterRecursiveCall. */ -static inline int _Py_MakeRecCheck(PyThreadState *tstate) { - return (tstate->recursion_remaining-- <= 0 - || (tstate->recursion_remaining & 63) == 0); -} -#else -static inline int _Py_MakeRecCheck(PyThreadState *tstate) { - return tstate->recursion_remaining-- <= 0; -} -#endif - -PyAPI_FUNC(int) _Py_CheckRecursiveCall( - PyThreadState *tstate, - const char *where); - -static inline int _Py_EnterRecursiveCallTstate(PyThreadState *tstate, - const char *where) { - return (_Py_MakeRecCheck(tstate) && _Py_CheckRecursiveCall(tstate, where)); -} - -static inline int _Py_EnterRecursiveCall(const char *where) { - PyThreadState *tstate = _PyThreadState_GET(); - return _Py_EnterRecursiveCallTstate(tstate, where); -} - -static inline void _Py_LeaveRecursiveCallTstate(PyThreadState *tstate) { - tstate->recursion_remaining++; -} - -static inline void _Py_LeaveRecursiveCall(void) { - PyThreadState *tstate = _PyThreadState_GET(); - _Py_LeaveRecursiveCallTstate(tstate); -} - -extern struct _PyInterpreterFrame* _PyEval_GetFrame(void); - -extern PyObject* _Py_MakeCoro(PyFunctionObject *func); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CEVAL_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_code.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_code.h deleted file mode 100644 index 3a24a65..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_code.h +++ /dev/null @@ -1,564 +0,0 @@ -#ifndef Py_INTERNAL_CODE_H -#define Py_INTERNAL_CODE_H -#ifdef __cplusplus -extern "C" { -#endif - -/* PEP 659 - * Specialization and quickening structs and helper functions - */ - - -// Inline caches. If you change the number of cache entries for an instruction, -// you must *also* update the number of cache entries in Lib/opcode.py and bump -// the magic number in Lib/importlib/_bootstrap_external.py! - -#define CACHE_ENTRIES(cache) (sizeof(cache)/sizeof(_Py_CODEUNIT)) - -typedef struct { - _Py_CODEUNIT counter; - _Py_CODEUNIT index; - _Py_CODEUNIT module_keys_version[2]; - _Py_CODEUNIT builtin_keys_version; -} _PyLoadGlobalCache; - -#define INLINE_CACHE_ENTRIES_LOAD_GLOBAL CACHE_ENTRIES(_PyLoadGlobalCache) - -typedef struct { - _Py_CODEUNIT counter; -} _PyBinaryOpCache; - -#define INLINE_CACHE_ENTRIES_BINARY_OP CACHE_ENTRIES(_PyBinaryOpCache) - -typedef struct { - _Py_CODEUNIT counter; -} _PyUnpackSequenceCache; - -#define INLINE_CACHE_ENTRIES_UNPACK_SEQUENCE \ - CACHE_ENTRIES(_PyUnpackSequenceCache) - -typedef struct { - _Py_CODEUNIT counter; - _Py_CODEUNIT mask; -} _PyCompareOpCache; - -#define INLINE_CACHE_ENTRIES_COMPARE_OP CACHE_ENTRIES(_PyCompareOpCache) - -typedef struct { - _Py_CODEUNIT counter; - _Py_CODEUNIT type_version[2]; - _Py_CODEUNIT func_version; -} _PyBinarySubscrCache; - -#define INLINE_CACHE_ENTRIES_BINARY_SUBSCR CACHE_ENTRIES(_PyBinarySubscrCache) - -typedef struct { - _Py_CODEUNIT counter; - _Py_CODEUNIT version[2]; - _Py_CODEUNIT index; -} _PyAttrCache; - -#define INLINE_CACHE_ENTRIES_LOAD_ATTR CACHE_ENTRIES(_PyAttrCache) - -#define INLINE_CACHE_ENTRIES_STORE_ATTR CACHE_ENTRIES(_PyAttrCache) - -typedef struct { - _Py_CODEUNIT counter; - _Py_CODEUNIT type_version[2]; - _Py_CODEUNIT dict_offset; - _Py_CODEUNIT keys_version[2]; - _Py_CODEUNIT descr[4]; -} _PyLoadMethodCache; - -#define INLINE_CACHE_ENTRIES_LOAD_METHOD CACHE_ENTRIES(_PyLoadMethodCache) - -typedef struct { - _Py_CODEUNIT counter; - _Py_CODEUNIT func_version[2]; - _Py_CODEUNIT min_args; -} _PyCallCache; - -#define INLINE_CACHE_ENTRIES_CALL CACHE_ENTRIES(_PyCallCache) - -typedef struct { - _Py_CODEUNIT counter; -} _PyPrecallCache; - -#define INLINE_CACHE_ENTRIES_PRECALL CACHE_ENTRIES(_PyPrecallCache) - -typedef struct { - _Py_CODEUNIT counter; -} _PyStoreSubscrCache; - -#define INLINE_CACHE_ENTRIES_STORE_SUBSCR CACHE_ENTRIES(_PyStoreSubscrCache) - -#define QUICKENING_WARMUP_DELAY 8 - -/* We want to compare to zero for efficiency, so we offset values accordingly */ -#define QUICKENING_INITIAL_WARMUP_VALUE (-QUICKENING_WARMUP_DELAY) - -void _PyCode_Quicken(PyCodeObject *code); - -static inline void -_PyCode_Warmup(PyCodeObject *code) -{ - if (code->co_warmup != 0) { - code->co_warmup++; - if (code->co_warmup == 0) { - _PyCode_Quicken(code); - } - } -} - -extern uint8_t _PyOpcode_Adaptive[256]; - -extern Py_ssize_t _Py_QuickenedCount; - -// Borrowed references to common callables: -struct callable_cache { - PyObject *isinstance; - PyObject *len; - PyObject *list_append; -}; - -/* "Locals plus" for a code object is the set of locals + cell vars + - * free vars. This relates to variable names as well as offsets into - * the "fast locals" storage array of execution frames. The compiler - * builds the list of names, their offsets, and the corresponding - * kind of local. - * - * Those kinds represent the source of the initial value and the - * variable's scope (as related to closures). A "local" is an - * argument or other variable defined in the current scope. A "free" - * variable is one that is defined in an outer scope and comes from - * the function's closure. A "cell" variable is a local that escapes - * into an inner function as part of a closure, and thus must be - * wrapped in a cell. Any "local" can also be a "cell", but the - * "free" kind is mutually exclusive with both. - */ - -// Note that these all fit within a byte, as do combinations. -// Later, we will use the smaller numbers to differentiate the different -// kinds of locals (e.g. pos-only arg, varkwargs, local-only). -#define CO_FAST_LOCAL 0x20 -#define CO_FAST_CELL 0x40 -#define CO_FAST_FREE 0x80 - -typedef unsigned char _PyLocals_Kind; - -static inline _PyLocals_Kind -_PyLocals_GetKind(PyObject *kinds, int i) -{ - assert(PyBytes_Check(kinds)); - assert(0 <= i && i < PyBytes_GET_SIZE(kinds)); - char *ptr = PyBytes_AS_STRING(kinds); - return (_PyLocals_Kind)(ptr[i]); -} - -static inline void -_PyLocals_SetKind(PyObject *kinds, int i, _PyLocals_Kind kind) -{ - assert(PyBytes_Check(kinds)); - assert(0 <= i && i < PyBytes_GET_SIZE(kinds)); - char *ptr = PyBytes_AS_STRING(kinds); - ptr[i] = (char) kind; -} - - -struct _PyCodeConstructor { - /* metadata */ - PyObject *filename; - PyObject *name; - PyObject *qualname; - int flags; - - /* the code */ - PyObject *code; - int firstlineno; - PyObject *linetable; - - /* used by the code */ - PyObject *consts; - PyObject *names; - - /* mapping frame offsets to information */ - PyObject *localsplusnames; // Tuple of strings - PyObject *localspluskinds; // Bytes object, one byte per variable - - /* args (within varnames) */ - int argcount; - int posonlyargcount; - // XXX Replace argcount with posorkwargcount (argcount - posonlyargcount). - int kwonlyargcount; - - /* needed to create the frame */ - int stacksize; - - /* used by the eval loop */ - PyObject *exceptiontable; -}; - -// Using an "arguments struct" like this is helpful for maintainability -// in a case such as this with many parameters. It does bear a risk: -// if the struct changes and callers are not updated properly then the -// compiler will not catch problems (like a missing argument). This can -// cause hard-to-debug problems. The risk is mitigated by the use of -// check_code() in codeobject.c. However, we may decide to switch -// back to a regular function signature. Regardless, this approach -// wouldn't be appropriate if this weren't a strictly internal API. -// (See the comments in https://github.com/python/cpython/pull/26258.) -PyAPI_FUNC(int) _PyCode_Validate(struct _PyCodeConstructor *); -PyAPI_FUNC(PyCodeObject *) _PyCode_New(struct _PyCodeConstructor *); - - -/* Private API */ - -/* Getters for internal PyCodeObject data. */ -extern PyObject* _PyCode_GetVarnames(PyCodeObject *); -extern PyObject* _PyCode_GetCellvars(PyCodeObject *); -extern PyObject* _PyCode_GetFreevars(PyCodeObject *); -extern PyObject* _PyCode_GetCode(PyCodeObject *); - -/** API for initializing the line number tables. */ -extern int _PyCode_InitAddressRange(PyCodeObject* co, PyCodeAddressRange *bounds); - -/** Out of process API for initializing the location table. */ -extern void _PyLineTable_InitAddressRange( - const char *linetable, - Py_ssize_t length, - int firstlineno, - PyCodeAddressRange *range); - -/** API for traversing the line number table. */ -extern int _PyLineTable_NextAddressRange(PyCodeAddressRange *range); -extern int _PyLineTable_PreviousAddressRange(PyCodeAddressRange *range); - -/* Specialization functions */ - -extern int _Py_Specialize_LoadAttr(PyObject *owner, _Py_CODEUNIT *instr, - PyObject *name); -extern int _Py_Specialize_StoreAttr(PyObject *owner, _Py_CODEUNIT *instr, - PyObject *name); -extern int _Py_Specialize_LoadGlobal(PyObject *globals, PyObject *builtins, _Py_CODEUNIT *instr, PyObject *name); -extern int _Py_Specialize_LoadMethod(PyObject *owner, _Py_CODEUNIT *instr, - PyObject *name); -extern int _Py_Specialize_BinarySubscr(PyObject *sub, PyObject *container, _Py_CODEUNIT *instr); -extern int _Py_Specialize_StoreSubscr(PyObject *container, PyObject *sub, _Py_CODEUNIT *instr); -extern int _Py_Specialize_Call(PyObject *callable, _Py_CODEUNIT *instr, - int nargs, PyObject *kwnames); -extern int _Py_Specialize_Precall(PyObject *callable, _Py_CODEUNIT *instr, - int nargs, PyObject *kwnames, int oparg); -extern void _Py_Specialize_BinaryOp(PyObject *lhs, PyObject *rhs, _Py_CODEUNIT *instr, - int oparg, PyObject **locals); -extern void _Py_Specialize_CompareOp(PyObject *lhs, PyObject *rhs, - _Py_CODEUNIT *instr, int oparg); -extern void _Py_Specialize_UnpackSequence(PyObject *seq, _Py_CODEUNIT *instr, - int oparg); - -/* Deallocator function for static codeobjects used in deepfreeze.py */ -extern void _PyStaticCode_Dealloc(PyCodeObject *co); -/* Function to intern strings of codeobjects */ -extern int _PyStaticCode_InternStrings(PyCodeObject *co); - -#ifdef Py_STATS - -#define SPECIALIZATION_FAILURE_KINDS 30 - -typedef struct _specialization_stats { - uint64_t success; - uint64_t failure; - uint64_t hit; - uint64_t deferred; - uint64_t miss; - uint64_t deopt; - uint64_t failure_kinds[SPECIALIZATION_FAILURE_KINDS]; -} SpecializationStats; - -typedef struct _opcode_stats { - SpecializationStats specialization; - uint64_t execution_count; - uint64_t pair_count[256]; -} OpcodeStats; - -typedef struct _call_stats { - uint64_t inlined_py_calls; - uint64_t pyeval_calls; - uint64_t frames_pushed; - uint64_t frame_objects_created; -} CallStats; - -typedef struct _object_stats { - uint64_t allocations; - uint64_t allocations512; - uint64_t allocations4k; - uint64_t allocations_big; - uint64_t frees; - uint64_t to_freelist; - uint64_t from_freelist; - uint64_t new_values; - uint64_t dict_materialized_on_request; - uint64_t dict_materialized_new_key; - uint64_t dict_materialized_too_big; - uint64_t dict_materialized_str_subclass; -} ObjectStats; - -typedef struct _stats { - OpcodeStats opcode_stats[256]; - CallStats call_stats; - ObjectStats object_stats; -} PyStats; - -extern PyStats _py_stats; - -#define STAT_INC(opname, name) _py_stats.opcode_stats[opname].specialization.name++ -#define STAT_DEC(opname, name) _py_stats.opcode_stats[opname].specialization.name-- -#define OPCODE_EXE_INC(opname) _py_stats.opcode_stats[opname].execution_count++ -#define CALL_STAT_INC(name) _py_stats.call_stats.name++ -#define OBJECT_STAT_INC(name) _py_stats.object_stats.name++ -#define OBJECT_STAT_INC_COND(name, cond) \ - do { if (cond) _py_stats.object_stats.name++; } while (0) - -extern void _Py_PrintSpecializationStats(int to_file); - -// Used by the _opcode extension which is built as a shared library -PyAPI_FUNC(PyObject*) _Py_GetSpecializationStats(void); - -#else -#define STAT_INC(opname, name) ((void)0) -#define STAT_DEC(opname, name) ((void)0) -#define OPCODE_EXE_INC(opname) ((void)0) -#define CALL_STAT_INC(name) ((void)0) -#define OBJECT_STAT_INC(name) ((void)0) -#define OBJECT_STAT_INC_COND(name, cond) ((void)0) -#endif // !Py_STATS - -// Cache values are only valid in memory, so use native endianness. -#ifdef WORDS_BIGENDIAN - -static inline void -write_u32(uint16_t *p, uint32_t val) -{ - p[0] = (uint16_t)(val >> 16); - p[1] = (uint16_t)(val >> 0); -} - -static inline void -write_u64(uint16_t *p, uint64_t val) -{ - p[0] = (uint16_t)(val >> 48); - p[1] = (uint16_t)(val >> 32); - p[2] = (uint16_t)(val >> 16); - p[3] = (uint16_t)(val >> 0); -} - -static inline uint32_t -read_u32(uint16_t *p) -{ - uint32_t val = 0; - val |= (uint32_t)p[0] << 16; - val |= (uint32_t)p[1] << 0; - return val; -} - -static inline uint64_t -read_u64(uint16_t *p) -{ - uint64_t val = 0; - val |= (uint64_t)p[0] << 48; - val |= (uint64_t)p[1] << 32; - val |= (uint64_t)p[2] << 16; - val |= (uint64_t)p[3] << 0; - return val; -} - -#else - -static inline void -write_u32(uint16_t *p, uint32_t val) -{ - p[0] = (uint16_t)(val >> 0); - p[1] = (uint16_t)(val >> 16); -} - -static inline void -write_u64(uint16_t *p, uint64_t val) -{ - p[0] = (uint16_t)(val >> 0); - p[1] = (uint16_t)(val >> 16); - p[2] = (uint16_t)(val >> 32); - p[3] = (uint16_t)(val >> 48); -} - -static inline uint32_t -read_u32(uint16_t *p) -{ - uint32_t val = 0; - val |= (uint32_t)p[0] << 0; - val |= (uint32_t)p[1] << 16; - return val; -} - -static inline uint64_t -read_u64(uint16_t *p) -{ - uint64_t val = 0; - val |= (uint64_t)p[0] << 0; - val |= (uint64_t)p[1] << 16; - val |= (uint64_t)p[2] << 32; - val |= (uint64_t)p[3] << 48; - return val; -} - -#endif - -static inline void -write_obj(uint16_t *p, PyObject *obj) -{ - uintptr_t val = (uintptr_t)obj; -#if SIZEOF_VOID_P == 8 - write_u64(p, val); -#elif SIZEOF_VOID_P == 4 - write_u32(p, val); -#else - #error "SIZEOF_VOID_P must be 4 or 8" -#endif -} - -static inline PyObject * -read_obj(uint16_t *p) -{ - uintptr_t val; -#if SIZEOF_VOID_P == 8 - val = read_u64(p); -#elif SIZEOF_VOID_P == 4 - val = read_u32(p); -#else - #error "SIZEOF_VOID_P must be 4 or 8" -#endif - return (PyObject *)val; -} - -/* See Objects/exception_handling_notes.txt for details. - */ -static inline unsigned char * -parse_varint(unsigned char *p, int *result) { - int val = p[0] & 63; - while (p[0] & 64) { - p++; - val = (val << 6) | (p[0] & 63); - } - *result = val; - return p+1; -} - -static inline int -write_varint(uint8_t *ptr, unsigned int val) -{ - int written = 1; - while (val >= 64) { - *ptr++ = 64 | (val & 63); - val >>= 6; - written++; - } - *ptr = val; - return written; -} - -static inline int -write_signed_varint(uint8_t *ptr, int val) -{ - if (val < 0) { - val = ((-val)<<1) | 1; - } - else { - val = val << 1; - } - return write_varint(ptr, val); -} - -static inline int -write_location_entry_start(uint8_t *ptr, int code, int length) -{ - assert((code & 15) == code); - *ptr = 128 | (code << 3) | (length - 1); - return 1; -} - - -/** Counters - * The first 16-bit value in each inline cache is a counter. - * When counting misses, the counter is treated as a simple unsigned value. - * - * When counting executions until the next specialization attempt, - * exponential backoff is used to reduce the number of specialization failures. - * The high 12 bits store the counter, the low 4 bits store the backoff exponent. - * On a specialization failure, the backoff exponent is incremented and the - * counter set to (2**backoff - 1). - * Backoff == 6 -> starting counter == 63, backoff == 10 -> starting counter == 1023. - */ - -/* With a 16-bit counter, we have 12 bits for the counter value, and 4 bits for the backoff */ -#define ADAPTIVE_BACKOFF_BITS 4 -/* The initial counter value is 31 == 2**ADAPTIVE_BACKOFF_START - 1 */ -#define ADAPTIVE_BACKOFF_START 5 - -#define MAX_BACKOFF_VALUE (16 - ADAPTIVE_BACKOFF_BITS) - - -static inline uint16_t -adaptive_counter_bits(int value, int backoff) { - return (value << ADAPTIVE_BACKOFF_BITS) | - (backoff & ((1< MAX_BACKOFF_VALUE) { - backoff = MAX_BACKOFF_VALUE; - } - unsigned int value = (1 << backoff) - 1; - return adaptive_counter_bits(value, backoff); -} - - -/* Line array cache for tracing */ - -extern int _PyCode_CreateLineArray(PyCodeObject *co); - -static inline int -_PyCode_InitLineArray(PyCodeObject *co) -{ - if (co->_co_linearray) { - return 0; - } - return _PyCode_CreateLineArray(co); -} - -static inline int -_PyCode_LineNumberFromArray(PyCodeObject *co, int index) -{ - assert(co->_co_linearray != NULL); - assert(index >= 0); - assert(index < Py_SIZE(co)); - if (co->_co_linearray_entry_size == 2) { - return ((int16_t *)co->_co_linearray)[index]; - } - else { - assert(co->_co_linearray_entry_size == 4); - return ((int32_t *)co->_co_linearray)[index]; - } -} - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CODE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_compile.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_compile.h deleted file mode 100644 index 06a6082..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_compile.h +++ /dev/null @@ -1,44 +0,0 @@ -#ifndef Py_INTERNAL_COMPILE_H -#define Py_INTERNAL_COMPILE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct _arena; // Type defined in pycore_pyarena.h -struct _mod; // Type defined in pycore_ast.h - -// Export the symbol for test_peg_generator (built as a library) -PyAPI_FUNC(PyCodeObject*) _PyAST_Compile( - struct _mod *mod, - PyObject *filename, - PyCompilerFlags *flags, - int optimize, - struct _arena *arena); -extern PyFutureFeatures* _PyFuture_FromAST( - struct _mod * mod, - PyObject *filename - ); - -extern PyObject* _Py_Mangle(PyObject *p, PyObject *name); - -typedef struct { - int optimize; - int ff_features; - - int recursion_depth; /* current recursion depth */ - int recursion_limit; /* recursion limit */ -} _PyASTOptimizeState; - -extern int _PyAST_Optimize( - struct _mod *, - struct _arena *arena, - _PyASTOptimizeState *state); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_COMPILE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_condvar.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_condvar.h deleted file mode 100644 index 981c962..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_condvar.h +++ /dev/null @@ -1,97 +0,0 @@ -#ifndef Py_INTERNAL_CONDVAR_H -#define Py_INTERNAL_CONDVAR_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#ifndef _POSIX_THREADS -/* This means pthreads are not implemented in libc headers, hence the macro - not present in unistd.h. But they still can be implemented as an external - library (e.g. gnu pth in pthread emulation) */ -# ifdef HAVE_PTHREAD_H -# include /* _POSIX_THREADS */ -# endif -#endif - -#ifdef _POSIX_THREADS -/* - * POSIX support - */ -#define Py_HAVE_CONDVAR - -#ifdef HAVE_PTHREAD_H -# include -#endif - -#define PyMUTEX_T pthread_mutex_t -#define PyCOND_T pthread_cond_t - -#elif defined(NT_THREADS) -/* - * Windows (XP, 2003 server and later, as well as (hopefully) CE) support - * - * Emulated condition variables ones that work with XP and later, plus - * example native support on VISTA and onwards. - */ -#define Py_HAVE_CONDVAR - -/* include windows if it hasn't been done before */ -#define WIN32_LEAN_AND_MEAN -#include - -/* options */ -/* non-emulated condition variables are provided for those that want - * to target Windows Vista. Modify this macro to enable them. - */ -#ifndef _PY_EMULATED_WIN_CV -#define _PY_EMULATED_WIN_CV 1 /* use emulated condition variables */ -#endif - -/* fall back to emulation if not targeting Vista */ -#if !defined NTDDI_VISTA || NTDDI_VERSION < NTDDI_VISTA -#undef _PY_EMULATED_WIN_CV -#define _PY_EMULATED_WIN_CV 1 -#endif - -#if _PY_EMULATED_WIN_CV - -typedef CRITICAL_SECTION PyMUTEX_T; - -/* The ConditionVariable object. From XP onwards it is easily emulated - with a Semaphore. - Semaphores are available on Windows XP (2003 server) and later. - We use a Semaphore rather than an auto-reset event, because although - an auto-reset event might appear to solve the lost-wakeup bug (race - condition between releasing the outer lock and waiting) because it - maintains state even though a wait hasn't happened, there is still - a lost wakeup problem if more than one thread are interrupted in the - critical place. A semaphore solves that, because its state is - counted, not Boolean. - Because it is ok to signal a condition variable with no one - waiting, we need to keep track of the number of - waiting threads. Otherwise, the semaphore's state could rise - without bound. This also helps reduce the number of "spurious wakeups" - that would otherwise happen. - */ - -typedef struct _PyCOND_T -{ - HANDLE sem; - int waiting; /* to allow PyCOND_SIGNAL to be a no-op */ -} PyCOND_T; - -#else /* !_PY_EMULATED_WIN_CV */ - -/* Use native Win7 primitives if build target is Win7 or higher */ - -/* SRWLOCK is faster and better than CriticalSection */ -typedef SRWLOCK PyMUTEX_T; - -typedef CONDITION_VARIABLE PyCOND_T; - -#endif /* _PY_EMULATED_WIN_CV */ - -#endif /* _POSIX_THREADS, NT_THREADS */ - -#endif /* Py_INTERNAL_CONDVAR_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_context.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_context.h deleted file mode 100644 index 1bf4e8f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_context.h +++ /dev/null @@ -1,67 +0,0 @@ -#ifndef Py_INTERNAL_CONTEXT_H -#define Py_INTERNAL_CONTEXT_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_hamt.h" /* PyHamtObject */ - - -extern PyTypeObject _PyContextTokenMissing_Type; - -/* runtime lifecycle */ - -PyStatus _PyContext_Init(PyInterpreterState *); -void _PyContext_Fini(PyInterpreterState *); - - -/* other API */ - -#ifndef WITH_FREELISTS -// without freelists -# define PyContext_MAXFREELIST 0 -#endif - -#ifndef PyContext_MAXFREELIST -# define PyContext_MAXFREELIST 255 -#endif - -struct _Py_context_state { -#if PyContext_MAXFREELIST > 0 - // List of free PyContext objects - PyContext *freelist; - int numfree; -#endif -}; - -struct _pycontextobject { - PyObject_HEAD - PyContext *ctx_prev; - PyHamtObject *ctx_vars; - PyObject *ctx_weakreflist; - int ctx_entered; -}; - - -struct _pycontextvarobject { - PyObject_HEAD - PyObject *var_name; - PyObject *var_default; - PyObject *var_cached; - uint64_t var_cached_tsid; - uint64_t var_cached_tsver; - Py_hash_t var_hash; -}; - - -struct _pycontexttokenobject { - PyObject_HEAD - PyContext *tok_ctx; - PyContextVar *tok_var; - PyObject *tok_oldval; - int tok_used; -}; - - -#endif /* !Py_INTERNAL_CONTEXT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_dict.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_dict.h deleted file mode 100644 index dc308fe..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_dict.h +++ /dev/null @@ -1,178 +0,0 @@ - -#ifndef Py_INTERNAL_DICT_H -#define Py_INTERNAL_DICT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* runtime lifecycle */ - -extern void _PyDict_Fini(PyInterpreterState *interp); - - -/* other API */ - -#ifndef WITH_FREELISTS -// without freelists -# define PyDict_MAXFREELIST 0 -#endif - -#ifndef PyDict_MAXFREELIST -# define PyDict_MAXFREELIST 80 -#endif - -struct _Py_dict_state { -#if PyDict_MAXFREELIST > 0 - /* Dictionary reuse scheme to save calls to malloc and free */ - PyDictObject *free_list[PyDict_MAXFREELIST]; - int numfree; - PyDictKeysObject *keys_free_list[PyDict_MAXFREELIST]; - int keys_numfree; -#endif -}; - -typedef struct { - /* Cached hash code of me_key. */ - Py_hash_t me_hash; - PyObject *me_key; - PyObject *me_value; /* This field is only meaningful for combined tables */ -} PyDictKeyEntry; - -typedef struct { - PyObject *me_key; /* The key must be Unicode and have hash. */ - PyObject *me_value; /* This field is only meaningful for combined tables */ -} PyDictUnicodeEntry; - -extern PyDictKeysObject *_PyDict_NewKeysForClass(void); -extern PyObject *_PyDict_FromKeys(PyObject *, PyObject *, PyObject *); - -/* Gets a version number unique to the current state of the keys of dict, if possible. - * Returns the version number, or zero if it was not possible to get a version number. */ -extern uint32_t _PyDictKeys_GetVersionForCurrentState(PyDictKeysObject *dictkeys); - -extern Py_ssize_t _PyDict_KeysSize(PyDictKeysObject *keys); - -/* _Py_dict_lookup() returns index of entry which can be used like DK_ENTRIES(dk)[index]. - * -1 when no entry found, -3 when compare raises error. - */ -extern Py_ssize_t _Py_dict_lookup(PyDictObject *mp, PyObject *key, Py_hash_t hash, PyObject **value_addr); - -extern Py_ssize_t _PyDict_GetItemHint(PyDictObject *, PyObject *, Py_ssize_t, PyObject **); -extern Py_ssize_t _PyDictKeys_StringLookup(PyDictKeysObject* dictkeys, PyObject *key); -extern PyObject *_PyDict_LoadGlobal(PyDictObject *, PyDictObject *, PyObject *); - -/* Consumes references to key and value */ -extern int _PyDict_SetItem_Take2(PyDictObject *op, PyObject *key, PyObject *value); -extern int _PyObjectDict_SetItem(PyTypeObject *tp, PyObject **dictptr, PyObject *name, PyObject *value); - -extern PyObject *_PyDict_Pop_KnownHash(PyObject *, PyObject *, Py_hash_t, PyObject *); - -#define DKIX_EMPTY (-1) -#define DKIX_DUMMY (-2) /* Used internally */ -#define DKIX_ERROR (-3) -#define DKIX_KEY_CHANGED (-4) /* Used internally */ - -typedef enum { - DICT_KEYS_GENERAL = 0, - DICT_KEYS_UNICODE = 1, - DICT_KEYS_SPLIT = 2 -} DictKeysKind; - -/* See dictobject.c for actual layout of DictKeysObject */ -struct _dictkeysobject { - Py_ssize_t dk_refcnt; - - /* Size of the hash table (dk_indices). It must be a power of 2. */ - uint8_t dk_log2_size; - - /* Size of the hash table (dk_indices) by bytes. */ - uint8_t dk_log2_index_bytes; - - /* Kind of keys */ - uint8_t dk_kind; - - /* Version number -- Reset to 0 by any modification to keys */ - uint32_t dk_version; - - /* Number of usable entries in dk_entries. */ - Py_ssize_t dk_usable; - - /* Number of used entries in dk_entries. */ - Py_ssize_t dk_nentries; - - /* Actual hash table of dk_size entries. It holds indices in dk_entries, - or DKIX_EMPTY(-1) or DKIX_DUMMY(-2). - - Indices must be: 0 <= indice < USABLE_FRACTION(dk_size). - - The size in bytes of an indice depends on dk_size: - - - 1 byte if dk_size <= 0xff (char*) - - 2 bytes if dk_size <= 0xffff (int16_t*) - - 4 bytes if dk_size <= 0xffffffff (int32_t*) - - 8 bytes otherwise (int64_t*) - - Dynamically sized, SIZEOF_VOID_P is minimum. */ - char dk_indices[]; /* char is required to avoid strict aliasing. */ - - /* "PyDictKeyEntry or PyDictUnicodeEntry dk_entries[USABLE_FRACTION(DK_SIZE(dk))];" array follows: - see the DK_ENTRIES() macro */ -}; - -/* This must be no more than 250, for the prefix size to fit in one byte. */ -#define SHARED_KEYS_MAX_SIZE 30 -#define NEXT_LOG2_SHARED_KEYS_MAX_SIZE 6 - -/* Layout of dict values: - * - * The PyObject *values are preceded by an array of bytes holding - * the insertion order and size. - * [-1] = prefix size. [-2] = used size. size[-2-n...] = insertion order. - */ -struct _dictvalues { - PyObject *values[1]; -}; - -#define DK_LOG_SIZE(dk) ((dk)->dk_log2_size) -#if SIZEOF_VOID_P > 4 -#define DK_SIZE(dk) (((int64_t)1)<dk_kind == DICT_KEYS_GENERAL), (PyDictKeyEntry*)(&((int8_t*)((dk)->dk_indices))[(size_t)1 << (dk)->dk_log2_index_bytes])) -#define DK_UNICODE_ENTRIES(dk) \ - (assert(dk->dk_kind != DICT_KEYS_GENERAL), (PyDictUnicodeEntry*)(&((int8_t*)((dk)->dk_indices))[(size_t)1 << (dk)->dk_log2_index_bytes])) -#define DK_IS_UNICODE(dk) ((dk)->dk_kind != DICT_KEYS_GENERAL) - -extern uint64_t _pydict_global_version; - -#define DICT_NEXT_VERSION() (++_pydict_global_version) - -extern PyObject *_PyObject_MakeDictFromInstanceAttributes(PyObject *obj, PyDictValues *values); -extern PyObject *_PyDict_FromItems( - PyObject *const *keys, Py_ssize_t keys_offset, - PyObject *const *values, Py_ssize_t values_offset, - Py_ssize_t length); - -static inline void -_PyDictValues_AddToInsertionOrder(PyDictValues *values, Py_ssize_t ix) -{ - assert(ix < SHARED_KEYS_MAX_SIZE); - uint8_t *size_ptr = ((uint8_t *)values)-2; - int size = *size_ptr; - assert(size+2 < ((uint8_t *)values)[-1]); - size++; - size_ptr[-size] = (uint8_t)ix; - *size_ptr = size; -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_DICT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_dtoa.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_dtoa.h deleted file mode 100644 index c77cf6e..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_dtoa.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_pymath.h" // _PY_SHORT_FLOAT_REPR - - -#if _PY_SHORT_FLOAT_REPR == 1 - -/* These functions are used by modules compiled as C extension like math: - they must be exported. */ - -PyAPI_FUNC(double) _Py_dg_strtod(const char *str, char **ptr); -PyAPI_FUNC(char *) _Py_dg_dtoa(double d, int mode, int ndigits, - int *decpt, int *sign, char **rve); -PyAPI_FUNC(void) _Py_dg_freedtoa(char *s); -PyAPI_FUNC(double) _Py_dg_stdnan(int sign); -PyAPI_FUNC(double) _Py_dg_infinity(int sign); - -#endif // _PY_SHORT_FLOAT_REPR == 1 - -#ifdef __cplusplus -} -#endif diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_emscripten_signal.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_emscripten_signal.h deleted file mode 100644 index 8b3287d..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_emscripten_signal.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef Py_EMSCRIPTEN_SIGNAL_H -#define Py_EMSCRIPTEN_SIGNAL_H - -#if defined(__EMSCRIPTEN__) - -void -_Py_CheckEmscriptenSignals(void); - -void -_Py_CheckEmscriptenSignalsPeriodically(void); - -#define _Py_CHECK_EMSCRIPTEN_SIGNALS() _Py_CheckEmscriptenSignals() - -#define _Py_CHECK_EMSCRIPTEN_SIGNALS_PERIODICALLY() _Py_CheckEmscriptenSignalsPeriodically() - -extern int Py_EMSCRIPTEN_SIGNAL_HANDLING; - -#else - -#define _Py_CHECK_EMSCRIPTEN_SIGNALS() -#define _Py_CHECK_EMSCRIPTEN_SIGNALS_PERIODICALLY() - -#endif // defined(__EMSCRIPTEN__) - -#endif // ndef Py_EMSCRIPTEN_SIGNAL_H diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_exceptions.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_exceptions.h deleted file mode 100644 index 4a9df70..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_exceptions.h +++ /dev/null @@ -1,37 +0,0 @@ -#ifndef Py_INTERNAL_EXCEPTIONS_H -#define Py_INTERNAL_EXCEPTIONS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* runtime lifecycle */ - -extern PyStatus _PyExc_InitState(PyInterpreterState *); -extern PyStatus _PyExc_InitGlobalObjects(PyInterpreterState *); -extern int _PyExc_InitTypes(PyInterpreterState *); -extern void _PyExc_Fini(PyInterpreterState *); - - -/* other API */ - -struct _Py_exc_state { - // The dict mapping from errno codes to OSError subclasses - PyObject *errnomap; - PyBaseExceptionObject *memerrors_freelist; - int memerrors_numfree; - // The ExceptionGroup type - PyObject *PyExc_ExceptionGroup; -}; - -extern void _PyExc_ClearExceptionGroupType(PyInterpreterState *); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_EXCEPTIONS_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_fileutils.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_fileutils.h deleted file mode 100644 index 332cc30..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_fileutils.h +++ /dev/null @@ -1,276 +0,0 @@ -#ifndef Py_INTERNAL_FILEUTILS_H -#define Py_INTERNAL_FILEUTILS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "Py_BUILD_CORE must be defined to include this header" -#endif - -#include /* struct lconv */ - -typedef enum { - _Py_ERROR_UNKNOWN=0, - _Py_ERROR_STRICT, - _Py_ERROR_SURROGATEESCAPE, - _Py_ERROR_REPLACE, - _Py_ERROR_IGNORE, - _Py_ERROR_BACKSLASHREPLACE, - _Py_ERROR_SURROGATEPASS, - _Py_ERROR_XMLCHARREFREPLACE, - _Py_ERROR_OTHER -} _Py_error_handler; - -PyAPI_FUNC(_Py_error_handler) _Py_GetErrorHandler(const char *errors); - -PyAPI_FUNC(int) _Py_DecodeLocaleEx( - const char *arg, - wchar_t **wstr, - size_t *wlen, - const char **reason, - int current_locale, - _Py_error_handler errors); - -PyAPI_FUNC(int) _Py_EncodeLocaleEx( - const wchar_t *text, - char **str, - size_t *error_pos, - const char **reason, - int current_locale, - _Py_error_handler errors); - -PyAPI_FUNC(char*) _Py_EncodeLocaleRaw( - const wchar_t *text, - size_t *error_pos); - -PyAPI_FUNC(PyObject *) _Py_device_encoding(int); - -#if defined(MS_WINDOWS) || defined(__APPLE__) - /* On Windows, the count parameter of read() is an int (bpo-9015, bpo-9611). - On macOS 10.13, read() and write() with more than INT_MAX bytes - fail with EINVAL (bpo-24658). */ -# define _PY_READ_MAX INT_MAX -# define _PY_WRITE_MAX INT_MAX -#else - /* write() should truncate the input to PY_SSIZE_T_MAX bytes, - but it's safer to do it ourself to have a portable behaviour */ -# define _PY_READ_MAX PY_SSIZE_T_MAX -# define _PY_WRITE_MAX PY_SSIZE_T_MAX -#endif - -#ifdef MS_WINDOWS -struct _Py_stat_struct { - unsigned long st_dev; - uint64_t st_ino; - unsigned short st_mode; - int st_nlink; - int st_uid; - int st_gid; - unsigned long st_rdev; - __int64 st_size; - time_t st_atime; - int st_atime_nsec; - time_t st_mtime; - int st_mtime_nsec; - time_t st_ctime; - int st_ctime_nsec; - unsigned long st_file_attributes; - unsigned long st_reparse_tag; -}; -#else -# define _Py_stat_struct stat -#endif - -PyAPI_FUNC(int) _Py_fstat( - int fd, - struct _Py_stat_struct *status); - -PyAPI_FUNC(int) _Py_fstat_noraise( - int fd, - struct _Py_stat_struct *status); - -PyAPI_FUNC(int) _Py_stat( - PyObject *path, - struct stat *status); - -PyAPI_FUNC(int) _Py_open( - const char *pathname, - int flags); - -PyAPI_FUNC(int) _Py_open_noraise( - const char *pathname, - int flags); - -PyAPI_FUNC(FILE *) _Py_wfopen( - const wchar_t *path, - const wchar_t *mode); - -PyAPI_FUNC(Py_ssize_t) _Py_read( - int fd, - void *buf, - size_t count); - -PyAPI_FUNC(Py_ssize_t) _Py_write( - int fd, - const void *buf, - size_t count); - -PyAPI_FUNC(Py_ssize_t) _Py_write_noraise( - int fd, - const void *buf, - size_t count); - -#ifdef HAVE_READLINK -PyAPI_FUNC(int) _Py_wreadlink( - const wchar_t *path, - wchar_t *buf, - /* Number of characters of 'buf' buffer - including the trailing NUL character */ - size_t buflen); -#endif - -#ifdef HAVE_REALPATH -PyAPI_FUNC(wchar_t*) _Py_wrealpath( - const wchar_t *path, - wchar_t *resolved_path, - /* Number of characters of 'resolved_path' buffer - including the trailing NUL character */ - size_t resolved_path_len); -#endif - -PyAPI_FUNC(wchar_t*) _Py_wgetcwd( - wchar_t *buf, - /* Number of characters of 'buf' buffer - including the trailing NUL character */ - size_t buflen); - -PyAPI_FUNC(int) _Py_get_inheritable(int fd); - -PyAPI_FUNC(int) _Py_set_inheritable(int fd, int inheritable, - int *atomic_flag_works); - -PyAPI_FUNC(int) _Py_set_inheritable_async_safe(int fd, int inheritable, - int *atomic_flag_works); - -PyAPI_FUNC(int) _Py_dup(int fd); - -#ifndef MS_WINDOWS -PyAPI_FUNC(int) _Py_get_blocking(int fd); - -PyAPI_FUNC(int) _Py_set_blocking(int fd, int blocking); -#else /* MS_WINDOWS */ -PyAPI_FUNC(void*) _Py_get_osfhandle_noraise(int fd); - -PyAPI_FUNC(void*) _Py_get_osfhandle(int fd); - -PyAPI_FUNC(int) _Py_open_osfhandle_noraise(void *handle, int flags); - -PyAPI_FUNC(int) _Py_open_osfhandle(void *handle, int flags); -#endif /* MS_WINDOWS */ - -// This is used after getting NULL back from Py_DecodeLocale(). -#define DECODE_LOCALE_ERR(NAME, LEN) \ - ((LEN) == (size_t)-2) \ - ? _PyStatus_ERR("cannot decode " NAME) \ - : _PyStatus_NO_MEMORY() - -PyAPI_DATA(int) _Py_HasFileSystemDefaultEncodeErrors; - -PyAPI_FUNC(int) _Py_DecodeUTF8Ex( - const char *arg, - Py_ssize_t arglen, - wchar_t **wstr, - size_t *wlen, - const char **reason, - _Py_error_handler errors); - -PyAPI_FUNC(int) _Py_EncodeUTF8Ex( - const wchar_t *text, - char **str, - size_t *error_pos, - const char **reason, - int raw_malloc, - _Py_error_handler errors); - -PyAPI_FUNC(wchar_t*) _Py_DecodeUTF8_surrogateescape( - const char *arg, - Py_ssize_t arglen, - size_t *wlen); - -extern int -_Py_wstat(const wchar_t *, struct stat *); - -PyAPI_FUNC(int) _Py_GetForceASCII(void); - -/* Reset "force ASCII" mode (if it was initialized). - - This function should be called when Python changes the LC_CTYPE locale, - so the "force ASCII" mode can be detected again on the new locale - encoding. */ -PyAPI_FUNC(void) _Py_ResetForceASCII(void); - - -PyAPI_FUNC(int) _Py_GetLocaleconvNumeric( - struct lconv *lc, - PyObject **decimal_point, - PyObject **thousands_sep); - -PyAPI_FUNC(void) _Py_closerange(int first, int last); - -PyAPI_FUNC(wchar_t*) _Py_GetLocaleEncoding(void); -PyAPI_FUNC(PyObject*) _Py_GetLocaleEncodingObject(void); - -#ifdef HAVE_NON_UNICODE_WCHAR_T_REPRESENTATION -extern int _Py_LocaleUsesNonUnicodeWchar(void); - -extern wchar_t* _Py_DecodeNonUnicodeWchar( - const wchar_t* native, - Py_ssize_t size); - -extern int _Py_EncodeNonUnicodeWchar_InPlace( - wchar_t* unicode, - Py_ssize_t size); -#endif - -extern int _Py_isabs(const wchar_t *path); -extern int _Py_abspath(const wchar_t *path, wchar_t **abspath_p); -#ifdef MS_WINDOWS -extern int _PyOS_getfullpathname(const wchar_t *path, wchar_t **abspath_p); -#endif -extern wchar_t * _Py_join_relfile(const wchar_t *dirname, - const wchar_t *relfile); -extern int _Py_add_relfile(wchar_t *dirname, - const wchar_t *relfile, - size_t bufsize); -extern size_t _Py_find_basename(const wchar_t *filename); -PyAPI_FUNC(wchar_t*) _Py_normpath(wchar_t *path, Py_ssize_t size); -extern wchar_t *_Py_normpath_and_size(wchar_t *path, Py_ssize_t size, Py_ssize_t *length); - - -// Macros to protect CRT calls against instant termination when passed an -// invalid parameter (bpo-23524). IPH stands for Invalid Parameter Handler. -// Usage: -// -// _Py_BEGIN_SUPPRESS_IPH -// ... -// _Py_END_SUPPRESS_IPH -#if defined _MSC_VER && _MSC_VER >= 1900 - -# include // _set_thread_local_invalid_parameter_handler() - - extern _invalid_parameter_handler _Py_silent_invalid_parameter_handler; -# define _Py_BEGIN_SUPPRESS_IPH \ - { _invalid_parameter_handler _Py_old_handler = \ - _set_thread_local_invalid_parameter_handler(_Py_silent_invalid_parameter_handler); -# define _Py_END_SUPPRESS_IPH \ - _set_thread_local_invalid_parameter_handler(_Py_old_handler); } -#else -# define _Py_BEGIN_SUPPRESS_IPH -# define _Py_END_SUPPRESS_IPH -#endif /* _MSC_VER >= 1900 */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FILEUTILS_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_floatobject.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_floatobject.h deleted file mode 100644 index 8a65554..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_floatobject.h +++ /dev/null @@ -1,59 +0,0 @@ -#ifndef Py_INTERNAL_FLOATOBJECT_H -#define Py_INTERNAL_FLOATOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* runtime lifecycle */ - -extern void _PyFloat_InitState(PyInterpreterState *); -extern PyStatus _PyFloat_InitTypes(PyInterpreterState *); -extern void _PyFloat_Fini(PyInterpreterState *); -extern void _PyFloat_FiniType(PyInterpreterState *); - - -/* other API */ - -#ifndef WITH_FREELISTS -// without freelists -# define PyFloat_MAXFREELIST 0 -#endif - -#ifndef PyFloat_MAXFREELIST -# define PyFloat_MAXFREELIST 100 -#endif - -struct _Py_float_state { -#if PyFloat_MAXFREELIST > 0 - /* Special free list - free_list is a singly-linked list of available PyFloatObjects, - linked via abuse of their ob_type members. */ - int numfree; - PyFloatObject *free_list; -#endif -}; - -void _PyFloat_ExactDealloc(PyObject *op); - - -PyAPI_FUNC(void) _PyFloat_DebugMallocStats(FILE* out); - - -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -PyAPI_FUNC(int) _PyFloat_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FLOATOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_format.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_format.h deleted file mode 100644 index 1b8d575..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_format.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef Py_INTERNAL_FORMAT_H -#define Py_INTERNAL_FORMAT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Format codes - * F_LJUST '-' - * F_SIGN '+' - * F_BLANK ' ' - * F_ALT '#' - * F_ZERO '0' - */ -#define F_LJUST (1<<0) -#define F_SIGN (1<<1) -#define F_BLANK (1<<2) -#define F_ALT (1<<3) -#define F_ZERO (1<<4) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FORMAT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_frame.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_frame.h deleted file mode 100644 index 4866ea2..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_frame.h +++ /dev/null @@ -1,240 +0,0 @@ -#ifndef Py_INTERNAL_FRAME_H -#define Py_INTERNAL_FRAME_H -#ifdef __cplusplus -extern "C" { -#endif - -#include -#include - -/* See Objects/frame_layout.md for an explanation of the frame stack - * including explanation of the PyFrameObject and _PyInterpreterFrame - * structs. */ - - -struct _frame { - PyObject_HEAD - PyFrameObject *f_back; /* previous frame, or NULL */ - struct _PyInterpreterFrame *f_frame; /* points to the frame data */ - PyObject *f_trace; /* Trace function */ - int f_lineno; /* Current line number. Only valid if non-zero */ - char f_trace_lines; /* Emit per-line trace events? */ - char f_trace_opcodes; /* Emit per-opcode trace events? */ - char f_fast_as_locals; /* Have the fast locals of this frame been converted to a dict? */ - /* The frame data, if this frame object owns the frame */ - PyObject *_f_frame_data[1]; -}; - -extern PyFrameObject* _PyFrame_New_NoTrack(PyCodeObject *code); - - -/* other API */ - -typedef enum _framestate { - FRAME_CREATED = -2, - FRAME_SUSPENDED = -1, - FRAME_EXECUTING = 0, - FRAME_COMPLETED = 1, - FRAME_CLEARED = 4 -} PyFrameState; - -enum _frameowner { - FRAME_OWNED_BY_THREAD = 0, - FRAME_OWNED_BY_GENERATOR = 1, - FRAME_OWNED_BY_FRAME_OBJECT = 2 -}; - -typedef struct _PyInterpreterFrame { - /* "Specials" section */ - PyFunctionObject *f_func; /* Strong reference */ - PyObject *f_globals; /* Borrowed reference */ - PyObject *f_builtins; /* Borrowed reference */ - PyObject *f_locals; /* Strong reference, may be NULL */ - PyCodeObject *f_code; /* Strong reference */ - PyFrameObject *frame_obj; /* Strong reference, may be NULL */ - /* Linkage section */ - struct _PyInterpreterFrame *previous; - // NOTE: This is not necessarily the last instruction started in the given - // frame. Rather, it is the code unit *prior to* the *next* instruction. For - // example, it may be an inline CACHE entry, an instruction we just jumped - // over, or (in the case of a newly-created frame) a totally invalid value: - _Py_CODEUNIT *prev_instr; - int stacktop; /* Offset of TOS from localsplus */ - bool is_entry; // Whether this is the "root" frame for the current _PyCFrame. - char owner; - /* Locals and stack */ - PyObject *localsplus[1]; -} _PyInterpreterFrame; - -#define _PyInterpreterFrame_LASTI(IF) \ - ((int)((IF)->prev_instr - _PyCode_CODE((IF)->f_code))) - -static inline PyObject **_PyFrame_Stackbase(_PyInterpreterFrame *f) { - return f->localsplus + f->f_code->co_nlocalsplus; -} - -static inline PyObject *_PyFrame_StackPeek(_PyInterpreterFrame *f) { - assert(f->stacktop > f->f_code->co_nlocalsplus); - assert(f->localsplus[f->stacktop-1] != NULL); - return f->localsplus[f->stacktop-1]; -} - -static inline PyObject *_PyFrame_StackPop(_PyInterpreterFrame *f) { - assert(f->stacktop > f->f_code->co_nlocalsplus); - f->stacktop--; - return f->localsplus[f->stacktop]; -} - -static inline void _PyFrame_StackPush(_PyInterpreterFrame *f, PyObject *value) { - f->localsplus[f->stacktop] = value; - f->stacktop++; -} - -#define FRAME_SPECIALS_SIZE ((sizeof(_PyInterpreterFrame)-1)/sizeof(PyObject *)) - -void _PyFrame_Copy(_PyInterpreterFrame *src, _PyInterpreterFrame *dest); - -/* Consumes reference to func and locals. - Does not initialize frame->previous, which happens - when frame is linked into the frame stack. - */ -static inline void -_PyFrame_InitializeSpecials( - _PyInterpreterFrame *frame, PyFunctionObject *func, - PyObject *locals, int nlocalsplus) -{ - frame->f_func = func; - frame->f_code = (PyCodeObject *)Py_NewRef(func->func_code); - frame->f_builtins = func->func_builtins; - frame->f_globals = func->func_globals; - frame->f_locals = Py_XNewRef(locals); - frame->stacktop = nlocalsplus; - frame->frame_obj = NULL; - frame->prev_instr = _PyCode_CODE(frame->f_code) - 1; - frame->is_entry = false; - frame->owner = FRAME_OWNED_BY_THREAD; -} - -/* Gets the pointer to the locals array - * that precedes this frame. - */ -static inline PyObject** -_PyFrame_GetLocalsArray(_PyInterpreterFrame *frame) -{ - return frame->localsplus; -} - -static inline PyObject** -_PyFrame_GetStackPointer(_PyInterpreterFrame *frame) -{ - return frame->localsplus+frame->stacktop; -} - -static inline void -_PyFrame_SetStackPointer(_PyInterpreterFrame *frame, PyObject **stack_pointer) -{ - frame->stacktop = (int)(stack_pointer - frame->localsplus); -} - -/* Determine whether a frame is incomplete. - * A frame is incomplete if it is part way through - * creating cell objects or a generator or coroutine. - * - * Frames on the frame stack are incomplete until the - * first RESUME instruction. - * Frames owned by a generator are always complete. - */ -static inline bool -_PyFrame_IsIncomplete(_PyInterpreterFrame *frame) -{ - return frame->owner != FRAME_OWNED_BY_GENERATOR && - frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; -} - -/* For use by _PyFrame_GetFrameObject - Do not call directly. */ -PyFrameObject * -_PyFrame_MakeAndSetFrameObject(_PyInterpreterFrame *frame); - -/* Gets the PyFrameObject for this frame, lazily - * creating it if necessary. - * Returns a borrowed referennce */ -static inline PyFrameObject * -_PyFrame_GetFrameObject(_PyInterpreterFrame *frame) -{ - - assert(!_PyFrame_IsIncomplete(frame)); - PyFrameObject *res = frame->frame_obj; - if (res != NULL) { - return res; - } - return _PyFrame_MakeAndSetFrameObject(frame); -} - -/* Clears all references in the frame. - * If take is non-zero, then the _PyInterpreterFrame frame - * may be transferred to the frame object it references - * instead of being cleared. Either way - * the caller no longer owns the references - * in the frame. - * take should be set to 1 for heap allocated - * frames like the ones in generators and coroutines. - */ -void -_PyFrame_Clear(_PyInterpreterFrame * frame); - -int -_PyFrame_Traverse(_PyInterpreterFrame *frame, visitproc visit, void *arg); - -int -_PyFrame_FastToLocalsWithError(_PyInterpreterFrame *frame); - -void -_PyFrame_LocalsToFast(_PyInterpreterFrame *frame, int clear); - -extern _PyInterpreterFrame * -_PyThreadState_BumpFramePointerSlow(PyThreadState *tstate, size_t size); - -static inline bool -_PyThreadState_HasStackSpace(PyThreadState *tstate, size_t size) -{ - assert( - (tstate->datastack_top == NULL && tstate->datastack_limit == NULL) - || - (tstate->datastack_top != NULL && tstate->datastack_limit != NULL) - ); - return tstate->datastack_top != NULL && - size < (size_t)(tstate->datastack_limit - tstate->datastack_top); -} - -static inline _PyInterpreterFrame * -_PyThreadState_BumpFramePointer(PyThreadState *tstate, size_t size) -{ - if (_PyThreadState_HasStackSpace(tstate, size)) { - _PyInterpreterFrame *res = (_PyInterpreterFrame *)tstate->datastack_top; - tstate->datastack_top += size; - return res; - } - return _PyThreadState_BumpFramePointerSlow(tstate, size); -} - -void _PyThreadState_PopFrame(PyThreadState *tstate, _PyInterpreterFrame *frame); - -/* Consume reference to func */ -_PyInterpreterFrame * -_PyFrame_Push(PyThreadState *tstate, PyFunctionObject *func); - -int _PyInterpreterFrame_GetLine(_PyInterpreterFrame *frame); - -static inline -PyGenObject *_PyFrame_GetGenerator(_PyInterpreterFrame *frame) -{ - assert(frame->owner == FRAME_OWNED_BY_GENERATOR); - size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); - return (PyGenObject *)(((char *)frame) - offset_in_gen); -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FRAME_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_function.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_function.h deleted file mode 100644 index 1c87aa3..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_function.h +++ /dev/null @@ -1,18 +0,0 @@ -#ifndef Py_INTERNAL_FUNCTION_H -#define Py_INTERNAL_FUNCTION_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern PyFunctionObject* _PyFunction_FromConstructor(PyFrameConstructor *constr); - -extern uint32_t _PyFunction_GetVersionForCurrentState(PyFunctionObject *func); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FUNCTION_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_gc.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_gc.h deleted file mode 100644 index 16c1893..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_gc.h +++ /dev/null @@ -1,183 +0,0 @@ -#ifndef Py_INTERNAL_GC_H -#define Py_INTERNAL_GC_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* GC information is stored BEFORE the object structure. */ -typedef struct { - // Pointer to next object in the list. - // 0 means the object is not tracked - uintptr_t _gc_next; - - // Pointer to previous object in the list. - // Lowest two bits are used for flags documented later. - uintptr_t _gc_prev; -} PyGC_Head; - -#define _Py_AS_GC(o) ((PyGC_Head *)(o)-1) -#define _PyGC_Head_UNUSED PyGC_Head - -/* True if the object is currently tracked by the GC. */ -#define _PyObject_GC_IS_TRACKED(o) (_Py_AS_GC(o)->_gc_next != 0) - -/* True if the object may be tracked by the GC in the future, or already is. - This can be useful to implement some optimizations. */ -#define _PyObject_GC_MAY_BE_TRACKED(obj) \ - (PyObject_IS_GC(obj) && \ - (!PyTuple_CheckExact(obj) || _PyObject_GC_IS_TRACKED(obj))) - - -/* Bit flags for _gc_prev */ -/* Bit 0 is set when tp_finalize is called */ -#define _PyGC_PREV_MASK_FINALIZED (1) -/* Bit 1 is set when the object is in generation which is GCed currently. */ -#define _PyGC_PREV_MASK_COLLECTING (2) -/* The (N-2) most significant bits contain the real address. */ -#define _PyGC_PREV_SHIFT (2) -#define _PyGC_PREV_MASK (((uintptr_t) -1) << _PyGC_PREV_SHIFT) - -// Lowest bit of _gc_next is used for flags only in GC. -// But it is always 0 for normal code. -#define _PyGCHead_NEXT(g) ((PyGC_Head*)(g)->_gc_next) -#define _PyGCHead_SET_NEXT(g, p) _Py_RVALUE((g)->_gc_next = (uintptr_t)(p)) - -// Lowest two bits of _gc_prev is used for _PyGC_PREV_MASK_* flags. -#define _PyGCHead_PREV(g) ((PyGC_Head*)((g)->_gc_prev & _PyGC_PREV_MASK)) -#define _PyGCHead_SET_PREV(g, p) do { \ - assert(((uintptr_t)p & ~_PyGC_PREV_MASK) == 0); \ - (g)->_gc_prev = ((g)->_gc_prev & ~_PyGC_PREV_MASK) \ - | ((uintptr_t)(p)); \ - } while (0) - -#define _PyGCHead_FINALIZED(g) \ - (((g)->_gc_prev & _PyGC_PREV_MASK_FINALIZED) != 0) -#define _PyGCHead_SET_FINALIZED(g) \ - _Py_RVALUE((g)->_gc_prev |= _PyGC_PREV_MASK_FINALIZED) - -#define _PyGC_FINALIZED(o) \ - _PyGCHead_FINALIZED(_Py_AS_GC(o)) -#define _PyGC_SET_FINALIZED(o) \ - _PyGCHead_SET_FINALIZED(_Py_AS_GC(o)) - - -/* GC runtime state */ - -/* If we change this, we need to change the default value in the - signature of gc.collect. */ -#define NUM_GENERATIONS 3 -/* - NOTE: about untracking of mutable objects. - - Certain types of container cannot participate in a reference cycle, and - so do not need to be tracked by the garbage collector. Untracking these - objects reduces the cost of garbage collections. However, determining - which objects may be untracked is not free, and the costs must be - weighed against the benefits for garbage collection. - - There are two possible strategies for when to untrack a container: - - i) When the container is created. - ii) When the container is examined by the garbage collector. - - Tuples containing only immutable objects (integers, strings etc, and - recursively, tuples of immutable objects) do not need to be tracked. - The interpreter creates a large number of tuples, many of which will - not survive until garbage collection. It is therefore not worthwhile - to untrack eligible tuples at creation time. - - Instead, all tuples except the empty tuple are tracked when created. - During garbage collection it is determined whether any surviving tuples - can be untracked. A tuple can be untracked if all of its contents are - already not tracked. Tuples are examined for untracking in all garbage - collection cycles. It may take more than one cycle to untrack a tuple. - - Dictionaries containing only immutable objects also do not need to be - tracked. Dictionaries are untracked when created. If a tracked item is - inserted into a dictionary (either as a key or value), the dictionary - becomes tracked. During a full garbage collection (all generations), - the collector will untrack any dictionaries whose contents are not - tracked. - - The module provides the python function is_tracked(obj), which returns - the CURRENT tracking status of the object. Subsequent garbage - collections may change the tracking status of the object. - - Untracking of certain containers was introduced in issue #4688, and - the algorithm was refined in response to issue #14775. -*/ - -struct gc_generation { - PyGC_Head head; - int threshold; /* collection threshold */ - int count; /* count of allocations or collections of younger - generations */ -}; - -/* Running stats per generation */ -struct gc_generation_stats { - /* total number of collections */ - Py_ssize_t collections; - /* total number of collected objects */ - Py_ssize_t collected; - /* total number of uncollectable objects (put into gc.garbage) */ - Py_ssize_t uncollectable; -}; - -struct _gc_runtime_state { - /* List of objects that still need to be cleaned up, singly linked - * via their gc headers' gc_prev pointers. */ - PyObject *trash_delete_later; - /* Current call-stack depth of tp_dealloc calls. */ - int trash_delete_nesting; - - /* Is automatic collection enabled? */ - int enabled; - int debug; - /* linked lists of container objects */ - struct gc_generation generations[NUM_GENERATIONS]; - PyGC_Head *generation0; - /* a permanent generation which won't be collected */ - struct gc_generation permanent_generation; - struct gc_generation_stats generation_stats[NUM_GENERATIONS]; - /* true if we are currently running the collector */ - int collecting; - /* list of uncollectable objects */ - PyObject *garbage; - /* a list of callbacks to be invoked when collection is performed */ - PyObject *callbacks; - /* This is the number of objects that survived the last full - collection. It approximates the number of long lived objects - tracked by the GC. - - (by "full collection", we mean a collection of the oldest - generation). */ - Py_ssize_t long_lived_total; - /* This is the number of objects that survived all "non-full" - collections, and are awaiting to undergo a full collection for - the first time. */ - Py_ssize_t long_lived_pending; -}; - - -extern void _PyGC_InitState(struct _gc_runtime_state *); - -extern Py_ssize_t _PyGC_CollectNoFail(PyThreadState *tstate); - - -// Functions to clear types free lists -extern void _PyTuple_ClearFreeList(PyInterpreterState *interp); -extern void _PyFloat_ClearFreeList(PyInterpreterState *interp); -extern void _PyList_ClearFreeList(PyInterpreterState *interp); -extern void _PyDict_ClearFreeList(PyInterpreterState *interp); -extern void _PyAsyncGen_ClearFreeLists(PyInterpreterState *interp); -extern void _PyContext_ClearFreeList(PyInterpreterState *interp); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GC_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_genobject.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_genobject.h deleted file mode 100644 index 42db0d8..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_genobject.h +++ /dev/null @@ -1,49 +0,0 @@ -#ifndef Py_INTERNAL_GENOBJECT_H -#define Py_INTERNAL_GENOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern PyObject *_PyGen_yf(PyGenObject *); -extern PyObject *_PyCoro_GetAwaitableIter(PyObject *o); -extern PyObject *_PyAsyncGenValueWrapperNew(PyObject *); - -/* runtime lifecycle */ - -extern void _PyAsyncGen_Fini(PyInterpreterState *); - - -/* other API */ - -#ifndef WITH_FREELISTS -// without freelists -# define _PyAsyncGen_MAXFREELIST 0 -#endif - -#ifndef _PyAsyncGen_MAXFREELIST -# define _PyAsyncGen_MAXFREELIST 80 -#endif - -struct _Py_async_gen_state { -#if _PyAsyncGen_MAXFREELIST > 0 - /* Freelists boost performance 6-10%; they also reduce memory - fragmentation, as _PyAsyncGenWrappedValue and PyAsyncGenASend - are short-living objects that are instantiated for every - __anext__() call. */ - struct _PyAsyncGenWrappedValue* value_freelist[_PyAsyncGen_MAXFREELIST]; - int value_numfree; - - struct PyAsyncGenASend* asend_freelist[_PyAsyncGen_MAXFREELIST]; - int asend_numfree; -#endif -}; - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GENOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_getopt.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_getopt.h deleted file mode 100644 index 7f0dd13..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_getopt.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef Py_INTERNAL_PYGETOPT_H -#define Py_INTERNAL_PYGETOPT_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern int _PyOS_opterr; -extern Py_ssize_t _PyOS_optind; -extern const wchar_t *_PyOS_optarg; - -extern void _PyOS_ResetGetOpt(void); - -typedef struct { - const wchar_t *name; - int has_arg; - int val; -} _PyOS_LongOption; - -extern int _PyOS_GetOpt(Py_ssize_t argc, wchar_t * const *argv, int *longindex); - -#endif /* !Py_INTERNAL_PYGETOPT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_gil.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_gil.h deleted file mode 100644 index 8ebad37..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_gil.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef Py_INTERNAL_GIL_H -#define Py_INTERNAL_GIL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_atomic.h" /* _Py_atomic_address */ -#include "pycore_condvar.h" /* PyCOND_T */ - -#ifndef Py_HAVE_CONDVAR -# error You need either a POSIX-compatible or a Windows system! -#endif - -/* Enable if you want to force the switching of threads at least - every `interval`. */ -#undef FORCE_SWITCHING -#define FORCE_SWITCHING - -struct _gil_runtime_state { - /* microseconds (the Python API uses seconds, though) */ - unsigned long interval; - /* Last PyThreadState holding / having held the GIL. This helps us - know whether anyone else was scheduled after we dropped the GIL. */ - _Py_atomic_address last_holder; - /* Whether the GIL is already taken (-1 if uninitialized). This is - atomic because it can be read without any lock taken in ceval.c. */ - _Py_atomic_int locked; - /* Number of GIL switches since the beginning. */ - unsigned long switch_number; - /* This condition variable allows one or several threads to wait - until the GIL is released. In addition, the mutex also protects - the above variables. */ - PyCOND_T cond; - PyMUTEX_T mutex; -#ifdef FORCE_SWITCHING - /* This condition variable helps the GIL-releasing thread wait for - a GIL-awaiting thread to be scheduled and take the GIL. */ - PyCOND_T switch_cond; - PyMUTEX_T switch_mutex; -#endif -}; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GIL_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_global_objects.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_global_objects.h deleted file mode 100644 index 98673d4..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_global_objects.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Py_INTERNAL_GLOBAL_OBJECTS_H -#define Py_INTERNAL_GLOBAL_OBJECTS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_gc.h" // PyGC_Head -#include "pycore_global_strings.h" // struct _Py_global_strings - - -// These would be in pycore_long.h if it weren't for an include cycle. -#define _PY_NSMALLPOSINTS 257 -#define _PY_NSMALLNEGINTS 5 - - -// Only immutable objects should be considered runtime-global. -// All others must be per-interpreter. - -#define _Py_GLOBAL_OBJECT(NAME) \ - _PyRuntime.global_objects.NAME -#define _Py_SINGLETON(NAME) \ - _Py_GLOBAL_OBJECT(singletons.NAME) - -struct _Py_global_objects { - struct { - /* Small integers are preallocated in this array so that they - * can be shared. - * The integers that are preallocated are those in the range - * -_PY_NSMALLNEGINTS (inclusive) to _PY_NSMALLPOSINTS (exclusive). - */ - PyLongObject small_ints[_PY_NSMALLNEGINTS + _PY_NSMALLPOSINTS]; - - PyBytesObject bytes_empty; - struct { - PyBytesObject ob; - char eos; - } bytes_characters[256]; - - struct _Py_global_strings strings; - - _PyGC_Head_UNUSED _tuple_empty_gc_not_used; - PyTupleObject tuple_empty; - } singletons; -}; - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GLOBAL_OBJECTS_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_global_strings.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_global_strings.h deleted file mode 100644 index ca97062..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_global_strings.h +++ /dev/null @@ -1,395 +0,0 @@ -#ifndef Py_INTERNAL_GLOBAL_STRINGS_H -#define Py_INTERNAL_GLOBAL_STRINGS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -// The data structure & init here are inspired by Tools/scripts/deepfreeze.py. - -// All field names generated by ASCII_STR() have a common prefix, -// to help avoid collisions with keywords, etc. - -#define STRUCT_FOR_ASCII_STR(LITERAL) \ - struct { \ - PyASCIIObject _ascii; \ - uint8_t _data[sizeof(LITERAL)]; \ - } -#define STRUCT_FOR_STR(NAME, LITERAL) \ - STRUCT_FOR_ASCII_STR(LITERAL) _ ## NAME; -#define STRUCT_FOR_ID(NAME) \ - STRUCT_FOR_ASCII_STR(#NAME) _ ## NAME; - -// XXX Order by frequency of use? - -/* The following is auto-generated by Tools/scripts/generate_global_objects.py. */ -struct _Py_global_strings { - struct { - STRUCT_FOR_STR(anon_dictcomp, "") - STRUCT_FOR_STR(anon_genexpr, "") - STRUCT_FOR_STR(anon_lambda, "") - STRUCT_FOR_STR(anon_listcomp, "") - STRUCT_FOR_STR(anon_module, "") - STRUCT_FOR_STR(anon_setcomp, "") - STRUCT_FOR_STR(anon_string, "") - STRUCT_FOR_STR(anon_unknown, "") - STRUCT_FOR_STR(close_br, "}") - STRUCT_FOR_STR(comma_sep, ", ") - STRUCT_FOR_STR(dbl_close_br, "}}") - STRUCT_FOR_STR(dbl_open_br, "{{") - STRUCT_FOR_STR(dbl_percent, "%%") - STRUCT_FOR_STR(dot, ".") - STRUCT_FOR_STR(dot_locals, ".") - STRUCT_FOR_STR(empty, "") - STRUCT_FOR_STR(list_err, "list index out of range") - STRUCT_FOR_STR(newline, "\n") - STRUCT_FOR_STR(open_br, "{") - STRUCT_FOR_STR(percent, "%") - STRUCT_FOR_STR(utf_8, "utf-8") - } literals; - - struct { - STRUCT_FOR_ID(False) - STRUCT_FOR_ID(Py_Repr) - STRUCT_FOR_ID(TextIOWrapper) - STRUCT_FOR_ID(True) - STRUCT_FOR_ID(WarningMessage) - STRUCT_FOR_ID(_) - STRUCT_FOR_ID(__IOBase_closed) - STRUCT_FOR_ID(__abc_tpflags__) - STRUCT_FOR_ID(__abs__) - STRUCT_FOR_ID(__abstractmethods__) - STRUCT_FOR_ID(__add__) - STRUCT_FOR_ID(__aenter__) - STRUCT_FOR_ID(__aexit__) - STRUCT_FOR_ID(__aiter__) - STRUCT_FOR_ID(__all__) - STRUCT_FOR_ID(__and__) - STRUCT_FOR_ID(__anext__) - STRUCT_FOR_ID(__annotations__) - STRUCT_FOR_ID(__args__) - STRUCT_FOR_ID(__await__) - STRUCT_FOR_ID(__bases__) - STRUCT_FOR_ID(__bool__) - STRUCT_FOR_ID(__build_class__) - STRUCT_FOR_ID(__builtins__) - STRUCT_FOR_ID(__bytes__) - STRUCT_FOR_ID(__call__) - STRUCT_FOR_ID(__cantrace__) - STRUCT_FOR_ID(__class__) - STRUCT_FOR_ID(__class_getitem__) - STRUCT_FOR_ID(__classcell__) - STRUCT_FOR_ID(__complex__) - STRUCT_FOR_ID(__contains__) - STRUCT_FOR_ID(__copy__) - STRUCT_FOR_ID(__del__) - STRUCT_FOR_ID(__delattr__) - STRUCT_FOR_ID(__delete__) - STRUCT_FOR_ID(__delitem__) - STRUCT_FOR_ID(__dict__) - STRUCT_FOR_ID(__dir__) - STRUCT_FOR_ID(__divmod__) - STRUCT_FOR_ID(__doc__) - STRUCT_FOR_ID(__enter__) - STRUCT_FOR_ID(__eq__) - STRUCT_FOR_ID(__exit__) - STRUCT_FOR_ID(__file__) - STRUCT_FOR_ID(__float__) - STRUCT_FOR_ID(__floordiv__) - STRUCT_FOR_ID(__format__) - STRUCT_FOR_ID(__fspath__) - STRUCT_FOR_ID(__ge__) - STRUCT_FOR_ID(__get__) - STRUCT_FOR_ID(__getattr__) - STRUCT_FOR_ID(__getattribute__) - STRUCT_FOR_ID(__getinitargs__) - STRUCT_FOR_ID(__getitem__) - STRUCT_FOR_ID(__getnewargs__) - STRUCT_FOR_ID(__getnewargs_ex__) - STRUCT_FOR_ID(__getstate__) - STRUCT_FOR_ID(__gt__) - STRUCT_FOR_ID(__hash__) - STRUCT_FOR_ID(__iadd__) - STRUCT_FOR_ID(__iand__) - STRUCT_FOR_ID(__ifloordiv__) - STRUCT_FOR_ID(__ilshift__) - STRUCT_FOR_ID(__imatmul__) - STRUCT_FOR_ID(__imod__) - STRUCT_FOR_ID(__import__) - STRUCT_FOR_ID(__imul__) - STRUCT_FOR_ID(__index__) - STRUCT_FOR_ID(__init__) - STRUCT_FOR_ID(__init_subclass__) - STRUCT_FOR_ID(__instancecheck__) - STRUCT_FOR_ID(__int__) - STRUCT_FOR_ID(__invert__) - STRUCT_FOR_ID(__ior__) - STRUCT_FOR_ID(__ipow__) - STRUCT_FOR_ID(__irshift__) - STRUCT_FOR_ID(__isabstractmethod__) - STRUCT_FOR_ID(__isub__) - STRUCT_FOR_ID(__iter__) - STRUCT_FOR_ID(__itruediv__) - STRUCT_FOR_ID(__ixor__) - STRUCT_FOR_ID(__le__) - STRUCT_FOR_ID(__len__) - STRUCT_FOR_ID(__length_hint__) - STRUCT_FOR_ID(__lltrace__) - STRUCT_FOR_ID(__loader__) - STRUCT_FOR_ID(__lshift__) - STRUCT_FOR_ID(__lt__) - STRUCT_FOR_ID(__main__) - STRUCT_FOR_ID(__matmul__) - STRUCT_FOR_ID(__missing__) - STRUCT_FOR_ID(__mod__) - STRUCT_FOR_ID(__module__) - STRUCT_FOR_ID(__mro_entries__) - STRUCT_FOR_ID(__mul__) - STRUCT_FOR_ID(__name__) - STRUCT_FOR_ID(__ne__) - STRUCT_FOR_ID(__neg__) - STRUCT_FOR_ID(__new__) - STRUCT_FOR_ID(__newobj__) - STRUCT_FOR_ID(__newobj_ex__) - STRUCT_FOR_ID(__next__) - STRUCT_FOR_ID(__notes__) - STRUCT_FOR_ID(__or__) - STRUCT_FOR_ID(__orig_class__) - STRUCT_FOR_ID(__origin__) - STRUCT_FOR_ID(__package__) - STRUCT_FOR_ID(__parameters__) - STRUCT_FOR_ID(__path__) - STRUCT_FOR_ID(__pos__) - STRUCT_FOR_ID(__pow__) - STRUCT_FOR_ID(__prepare__) - STRUCT_FOR_ID(__qualname__) - STRUCT_FOR_ID(__radd__) - STRUCT_FOR_ID(__rand__) - STRUCT_FOR_ID(__rdivmod__) - STRUCT_FOR_ID(__reduce__) - STRUCT_FOR_ID(__reduce_ex__) - STRUCT_FOR_ID(__repr__) - STRUCT_FOR_ID(__reversed__) - STRUCT_FOR_ID(__rfloordiv__) - STRUCT_FOR_ID(__rlshift__) - STRUCT_FOR_ID(__rmatmul__) - STRUCT_FOR_ID(__rmod__) - STRUCT_FOR_ID(__rmul__) - STRUCT_FOR_ID(__ror__) - STRUCT_FOR_ID(__round__) - STRUCT_FOR_ID(__rpow__) - STRUCT_FOR_ID(__rrshift__) - STRUCT_FOR_ID(__rshift__) - STRUCT_FOR_ID(__rsub__) - STRUCT_FOR_ID(__rtruediv__) - STRUCT_FOR_ID(__rxor__) - STRUCT_FOR_ID(__set__) - STRUCT_FOR_ID(__set_name__) - STRUCT_FOR_ID(__setattr__) - STRUCT_FOR_ID(__setitem__) - STRUCT_FOR_ID(__setstate__) - STRUCT_FOR_ID(__sizeof__) - STRUCT_FOR_ID(__slotnames__) - STRUCT_FOR_ID(__slots__) - STRUCT_FOR_ID(__spec__) - STRUCT_FOR_ID(__str__) - STRUCT_FOR_ID(__sub__) - STRUCT_FOR_ID(__subclasscheck__) - STRUCT_FOR_ID(__subclasshook__) - STRUCT_FOR_ID(__truediv__) - STRUCT_FOR_ID(__trunc__) - STRUCT_FOR_ID(__typing_is_unpacked_typevartuple__) - STRUCT_FOR_ID(__typing_prepare_subst__) - STRUCT_FOR_ID(__typing_subst__) - STRUCT_FOR_ID(__typing_unpacked_tuple_args__) - STRUCT_FOR_ID(__warningregistry__) - STRUCT_FOR_ID(__weakref__) - STRUCT_FOR_ID(__xor__) - STRUCT_FOR_ID(_abc_impl) - STRUCT_FOR_ID(_annotation) - STRUCT_FOR_ID(_blksize) - STRUCT_FOR_ID(_bootstrap) - STRUCT_FOR_ID(_dealloc_warn) - STRUCT_FOR_ID(_finalizing) - STRUCT_FOR_ID(_find_and_load) - STRUCT_FOR_ID(_fix_up_module) - STRUCT_FOR_ID(_get_sourcefile) - STRUCT_FOR_ID(_handle_fromlist) - STRUCT_FOR_ID(_initializing) - STRUCT_FOR_ID(_is_text_encoding) - STRUCT_FOR_ID(_lock_unlock_module) - STRUCT_FOR_ID(_showwarnmsg) - STRUCT_FOR_ID(_shutdown) - STRUCT_FOR_ID(_slotnames) - STRUCT_FOR_ID(_strptime_time) - STRUCT_FOR_ID(_uninitialized_submodules) - STRUCT_FOR_ID(_warn_unawaited_coroutine) - STRUCT_FOR_ID(_xoptions) - STRUCT_FOR_ID(add) - STRUCT_FOR_ID(append) - STRUCT_FOR_ID(big) - STRUCT_FOR_ID(buffer) - STRUCT_FOR_ID(builtins) - STRUCT_FOR_ID(c_call) - STRUCT_FOR_ID(c_exception) - STRUCT_FOR_ID(c_return) - STRUCT_FOR_ID(call) - STRUCT_FOR_ID(clear) - STRUCT_FOR_ID(close) - STRUCT_FOR_ID(closed) - STRUCT_FOR_ID(code) - STRUCT_FOR_ID(copy) - STRUCT_FOR_ID(copyreg) - STRUCT_FOR_ID(decode) - STRUCT_FOR_ID(default) - STRUCT_FOR_ID(defaultaction) - STRUCT_FOR_ID(dictcomp) - STRUCT_FOR_ID(difference_update) - STRUCT_FOR_ID(dispatch_table) - STRUCT_FOR_ID(displayhook) - STRUCT_FOR_ID(enable) - STRUCT_FOR_ID(encode) - STRUCT_FOR_ID(encoding) - STRUCT_FOR_ID(end_lineno) - STRUCT_FOR_ID(end_offset) - STRUCT_FOR_ID(errors) - STRUCT_FOR_ID(excepthook) - STRUCT_FOR_ID(exception) - STRUCT_FOR_ID(extend) - STRUCT_FOR_ID(filename) - STRUCT_FOR_ID(fileno) - STRUCT_FOR_ID(fillvalue) - STRUCT_FOR_ID(filters) - STRUCT_FOR_ID(find_class) - STRUCT_FOR_ID(flush) - STRUCT_FOR_ID(genexpr) - STRUCT_FOR_ID(get) - STRUCT_FOR_ID(get_source) - STRUCT_FOR_ID(getattr) - STRUCT_FOR_ID(getstate) - STRUCT_FOR_ID(ignore) - STRUCT_FOR_ID(importlib) - STRUCT_FOR_ID(inf) - STRUCT_FOR_ID(intersection) - STRUCT_FOR_ID(isatty) - STRUCT_FOR_ID(isinstance) - STRUCT_FOR_ID(items) - STRUCT_FOR_ID(iter) - STRUCT_FOR_ID(join) - STRUCT_FOR_ID(keys) - STRUCT_FOR_ID(lambda) - STRUCT_FOR_ID(last_traceback) - STRUCT_FOR_ID(last_type) - STRUCT_FOR_ID(last_value) - STRUCT_FOR_ID(latin1) - STRUCT_FOR_ID(len) - STRUCT_FOR_ID(line) - STRUCT_FOR_ID(lineno) - STRUCT_FOR_ID(listcomp) - STRUCT_FOR_ID(little) - STRUCT_FOR_ID(locale) - STRUCT_FOR_ID(match) - STRUCT_FOR_ID(metaclass) - STRUCT_FOR_ID(mode) - STRUCT_FOR_ID(modules) - STRUCT_FOR_ID(mro) - STRUCT_FOR_ID(msg) - STRUCT_FOR_ID(n_fields) - STRUCT_FOR_ID(n_sequence_fields) - STRUCT_FOR_ID(n_unnamed_fields) - STRUCT_FOR_ID(name) - STRUCT_FOR_ID(newlines) - STRUCT_FOR_ID(next) - STRUCT_FOR_ID(obj) - STRUCT_FOR_ID(offset) - STRUCT_FOR_ID(onceregistry) - STRUCT_FOR_ID(opcode) - STRUCT_FOR_ID(open) - STRUCT_FOR_ID(parent) - STRUCT_FOR_ID(partial) - STRUCT_FOR_ID(path) - STRUCT_FOR_ID(peek) - STRUCT_FOR_ID(persistent_id) - STRUCT_FOR_ID(persistent_load) - STRUCT_FOR_ID(print_file_and_line) - STRUCT_FOR_ID(ps1) - STRUCT_FOR_ID(ps2) - STRUCT_FOR_ID(raw) - STRUCT_FOR_ID(read) - STRUCT_FOR_ID(read1) - STRUCT_FOR_ID(readable) - STRUCT_FOR_ID(readall) - STRUCT_FOR_ID(readinto) - STRUCT_FOR_ID(readinto1) - STRUCT_FOR_ID(readline) - STRUCT_FOR_ID(reducer_override) - STRUCT_FOR_ID(reload) - STRUCT_FOR_ID(replace) - STRUCT_FOR_ID(reset) - STRUCT_FOR_ID(return) - STRUCT_FOR_ID(reversed) - STRUCT_FOR_ID(seek) - STRUCT_FOR_ID(seekable) - STRUCT_FOR_ID(send) - STRUCT_FOR_ID(setcomp) - STRUCT_FOR_ID(setstate) - STRUCT_FOR_ID(sort) - STRUCT_FOR_ID(stderr) - STRUCT_FOR_ID(stdin) - STRUCT_FOR_ID(stdout) - STRUCT_FOR_ID(strict) - STRUCT_FOR_ID(symmetric_difference_update) - STRUCT_FOR_ID(tell) - STRUCT_FOR_ID(text) - STRUCT_FOR_ID(threading) - STRUCT_FOR_ID(throw) - STRUCT_FOR_ID(top) - STRUCT_FOR_ID(truncate) - STRUCT_FOR_ID(unraisablehook) - STRUCT_FOR_ID(values) - STRUCT_FOR_ID(version) - STRUCT_FOR_ID(warnings) - STRUCT_FOR_ID(warnoptions) - STRUCT_FOR_ID(writable) - STRUCT_FOR_ID(write) - STRUCT_FOR_ID(zipimporter) - } identifiers; - struct { - PyASCIIObject _ascii; - uint8_t _data[2]; - } ascii[128]; - struct { - PyCompactUnicodeObject _latin1; - uint8_t _data[2]; - } latin1[128]; -}; -/* End auto-generated code */ - -#undef ID -#undef STR - - -#define _Py_ID(NAME) \ - (_Py_SINGLETON(strings.identifiers._ ## NAME._ascii.ob_base)) -#define _Py_STR(NAME) \ - (_Py_SINGLETON(strings.literals._ ## NAME._ascii.ob_base)) - -/* _Py_DECLARE_STR() should precede all uses of _Py_STR() in a function. - - This is true even if the same string has already been declared - elsewhere, even in the same file. Mismatched duplicates are detected - by Tools/scripts/generate-global-objects.py. - - Pairing _Py_DECLARE_STR() with every use of _Py_STR() makes sure the - string keeps working even if the declaration is removed somewhere - else. It also makes it clear what the actual string is at every - place it is being used. */ -#define _Py_DECLARE_STR(name, str) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GLOBAL_STRINGS_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_hamt.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_hamt.h deleted file mode 100644 index 4d64288..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_hamt.h +++ /dev/null @@ -1,131 +0,0 @@ -#ifndef Py_INTERNAL_HAMT_H -#define Py_INTERNAL_HAMT_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* -HAMT tree is shaped by hashes of keys. Every group of 5 bits of a hash denotes -the exact position of the key in one level of the tree. Since we're using -32 bit hashes, we can have at most 7 such levels. Although if there are -two distinct keys with equal hashes, they will have to occupy the same -cell in the 7th level of the tree -- so we'd put them in a "collision" node. -Which brings the total possible tree depth to 8. Read more about the actual -layout of the HAMT tree in `hamt.c`. - -This constant is used to define a datastucture for storing iteration state. -*/ -#define _Py_HAMT_MAX_TREE_DEPTH 8 - - -extern PyTypeObject _PyHamt_Type; -extern PyTypeObject _PyHamt_ArrayNode_Type; -extern PyTypeObject _PyHamt_BitmapNode_Type; -extern PyTypeObject _PyHamt_CollisionNode_Type; -extern PyTypeObject _PyHamtKeys_Type; -extern PyTypeObject _PyHamtValues_Type; -extern PyTypeObject _PyHamtItems_Type; - -/* runtime lifecycle */ - -void _PyHamt_Fini(PyInterpreterState *); - - -/* other API */ - -#define PyHamt_Check(o) Py_IS_TYPE(o, &_PyHamt_Type) - - -/* Abstract tree node. */ -typedef struct { - PyObject_HEAD -} PyHamtNode; - - -/* An HAMT immutable mapping collection. */ -typedef struct { - PyObject_HEAD - PyHamtNode *h_root; - PyObject *h_weakreflist; - Py_ssize_t h_count; -} PyHamtObject; - - -/* A struct to hold the state of depth-first traverse of the tree. - - HAMT is an immutable collection. Iterators will hold a strong reference - to it, and every node in the HAMT has strong references to its children. - - So for iterators, we can implement zero allocations and zero reference - inc/dec depth-first iteration. - - - i_nodes: an array of seven pointers to tree nodes - - i_level: the current node in i_nodes - - i_pos: an array of positions within nodes in i_nodes. -*/ -typedef struct { - PyHamtNode *i_nodes[_Py_HAMT_MAX_TREE_DEPTH]; - Py_ssize_t i_pos[_Py_HAMT_MAX_TREE_DEPTH]; - int8_t i_level; -} PyHamtIteratorState; - - -/* Base iterator object. - - Contains the iteration state, a pointer to the HAMT tree, - and a pointer to the 'yield function'. The latter is a simple - function that returns a key/value tuple for the 'Items' iterator, - just a key for the 'Keys' iterator, and a value for the 'Values' - iterator. -*/ -typedef struct { - PyObject_HEAD - PyHamtObject *hi_obj; - PyHamtIteratorState hi_iter; - binaryfunc hi_yield; -} PyHamtIterator; - - -/* Create a new HAMT immutable mapping. */ -PyHamtObject * _PyHamt_New(void); - -/* Return a new collection based on "o", but with an additional - key/val pair. */ -PyHamtObject * _PyHamt_Assoc(PyHamtObject *o, PyObject *key, PyObject *val); - -/* Return a new collection based on "o", but without "key". */ -PyHamtObject * _PyHamt_Without(PyHamtObject *o, PyObject *key); - -/* Find "key" in the "o" collection. - - Return: - - -1: An error occurred. - - 0: "key" wasn't found in "o". - - 1: "key" is in "o"; "*val" is set to its value (a borrowed ref). -*/ -int _PyHamt_Find(PyHamtObject *o, PyObject *key, PyObject **val); - -/* Check if "v" is equal to "w". - - Return: - - 0: v != w - - 1: v == w - - -1: An error occurred. -*/ -int _PyHamt_Eq(PyHamtObject *v, PyHamtObject *w); - -/* Return the size of "o"; equivalent of "len(o)". */ -Py_ssize_t _PyHamt_Len(PyHamtObject *o); - -/* Return a Keys iterator over "o". */ -PyObject * _PyHamt_NewIterKeys(PyHamtObject *o); - -/* Return a Values iterator over "o". */ -PyObject * _PyHamt_NewIterValues(PyHamtObject *o); - -/* Return a Items iterator over "o". */ -PyObject * _PyHamt_NewIterItems(PyHamtObject *o); - -#endif /* !Py_INTERNAL_HAMT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_hashtable.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_hashtable.h deleted file mode 100644 index 18757ab..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_hashtable.h +++ /dev/null @@ -1,148 +0,0 @@ -#ifndef Py_INTERNAL_HASHTABLE_H -#define Py_INTERNAL_HASHTABLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Single linked list */ - -typedef struct _Py_slist_item_s { - struct _Py_slist_item_s *next; -} _Py_slist_item_t; - -typedef struct { - _Py_slist_item_t *head; -} _Py_slist_t; - -#define _Py_SLIST_ITEM_NEXT(ITEM) (((_Py_slist_item_t *)ITEM)->next) - -#define _Py_SLIST_HEAD(SLIST) (((_Py_slist_t *)SLIST)->head) - - -/* _Py_hashtable: table entry */ - -typedef struct { - /* used by _Py_hashtable_t.buckets to link entries */ - _Py_slist_item_t _Py_slist_item; - - Py_uhash_t key_hash; - void *key; - void *value; -} _Py_hashtable_entry_t; - - -/* _Py_hashtable: prototypes */ - -/* Forward declaration */ -struct _Py_hashtable_t; -typedef struct _Py_hashtable_t _Py_hashtable_t; - -typedef Py_uhash_t (*_Py_hashtable_hash_func) (const void *key); -typedef int (*_Py_hashtable_compare_func) (const void *key1, const void *key2); -typedef void (*_Py_hashtable_destroy_func) (void *key); -typedef _Py_hashtable_entry_t* (*_Py_hashtable_get_entry_func)(_Py_hashtable_t *ht, - const void *key); - -typedef struct { - // Allocate a memory block - void* (*malloc) (size_t size); - - // Release a memory block - void (*free) (void *ptr); -} _Py_hashtable_allocator_t; - - -/* _Py_hashtable: table */ -struct _Py_hashtable_t { - size_t nentries; // Total number of entries in the table - size_t nbuckets; - _Py_slist_t *buckets; - - _Py_hashtable_get_entry_func get_entry_func; - _Py_hashtable_hash_func hash_func; - _Py_hashtable_compare_func compare_func; - _Py_hashtable_destroy_func key_destroy_func; - _Py_hashtable_destroy_func value_destroy_func; - _Py_hashtable_allocator_t alloc; -}; - -/* Hash a pointer (void*) */ -PyAPI_FUNC(Py_uhash_t) _Py_hashtable_hash_ptr(const void *key); - -/* Comparison using memcmp() */ -PyAPI_FUNC(int) _Py_hashtable_compare_direct( - const void *key1, - const void *key2); - -PyAPI_FUNC(_Py_hashtable_t *) _Py_hashtable_new( - _Py_hashtable_hash_func hash_func, - _Py_hashtable_compare_func compare_func); - -PyAPI_FUNC(_Py_hashtable_t *) _Py_hashtable_new_full( - _Py_hashtable_hash_func hash_func, - _Py_hashtable_compare_func compare_func, - _Py_hashtable_destroy_func key_destroy_func, - _Py_hashtable_destroy_func value_destroy_func, - _Py_hashtable_allocator_t *allocator); - -PyAPI_FUNC(void) _Py_hashtable_destroy(_Py_hashtable_t *ht); - -PyAPI_FUNC(void) _Py_hashtable_clear(_Py_hashtable_t *ht); - -typedef int (*_Py_hashtable_foreach_func) (_Py_hashtable_t *ht, - const void *key, const void *value, - void *user_data); - -/* Call func() on each entry of the hashtable. - Iteration stops if func() result is non-zero, in this case it's the result - of the call. Otherwise, the function returns 0. */ -PyAPI_FUNC(int) _Py_hashtable_foreach( - _Py_hashtable_t *ht, - _Py_hashtable_foreach_func func, - void *user_data); - -PyAPI_FUNC(size_t) _Py_hashtable_size(const _Py_hashtable_t *ht); - -/* Add a new entry to the hash. The key must not be present in the hash table. - Return 0 on success, -1 on memory error. */ -PyAPI_FUNC(int) _Py_hashtable_set( - _Py_hashtable_t *ht, - const void *key, - void *value); - - -/* Get an entry. - Return NULL if the key does not exist. */ -static inline _Py_hashtable_entry_t * -_Py_hashtable_get_entry(_Py_hashtable_t *ht, const void *key) -{ - return ht->get_entry_func(ht, key); -} - - -/* Get value from an entry. - Return NULL if the entry is not found. - - Use _Py_hashtable_get_entry() to distinguish entry value equal to NULL - and entry not found. */ -PyAPI_FUNC(void*) _Py_hashtable_get(_Py_hashtable_t *ht, const void *key); - - -/* Remove a key and its associated value without calling key and value destroy - functions. - - Return the removed value if the key was found. - Return NULL if the key was not found. */ -PyAPI_FUNC(void*) _Py_hashtable_steal( - _Py_hashtable_t *ht, - const void *key); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_HASHTABLE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_import.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_import.h deleted file mode 100644 index aee1f66..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_import.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_INTERNAL_IMPORT_H -#define Py_INTERNAL_IMPORT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef HAVE_FORK -extern PyStatus _PyImport_ReInitLock(void); -#endif -extern PyObject* _PyImport_BootstrapImp(PyThreadState *tstate); - -struct _module_alias { - const char *name; /* ASCII encoded string */ - const char *orig; /* ASCII encoded string */ -}; - -PyAPI_DATA(const struct _frozen *) _PyImport_FrozenBootstrap; -PyAPI_DATA(const struct _frozen *) _PyImport_FrozenStdlib; -PyAPI_DATA(const struct _frozen *) _PyImport_FrozenTest; -extern const struct _module_alias * _PyImport_FrozenAliases; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_IMPORT_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_initconfig.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_initconfig.h deleted file mode 100644 index d765600..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_initconfig.h +++ /dev/null @@ -1,183 +0,0 @@ -#ifndef Py_INTERNAL_CORECONFIG_H -#define Py_INTERNAL_CORECONFIG_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Forward declaration */ -struct pyruntimestate; - -/* --- PyStatus ----------------------------------------------- */ - -/* Almost all errors causing Python initialization to fail */ -#ifdef _MSC_VER - /* Visual Studio 2015 doesn't implement C99 __func__ in C */ -# define _PyStatus_GET_FUNC() __FUNCTION__ -#else -# define _PyStatus_GET_FUNC() __func__ -#endif - -#define _PyStatus_OK() \ - (PyStatus){._type = _PyStatus_TYPE_OK,} - /* other fields are set to 0 */ -#define _PyStatus_ERR(ERR_MSG) \ - (PyStatus){ \ - ._type = _PyStatus_TYPE_ERROR, \ - .func = _PyStatus_GET_FUNC(), \ - .err_msg = (ERR_MSG)} - /* other fields are set to 0 */ -#define _PyStatus_NO_MEMORY() _PyStatus_ERR("memory allocation failed") -#define _PyStatus_EXIT(EXITCODE) \ - (PyStatus){ \ - ._type = _PyStatus_TYPE_EXIT, \ - .exitcode = (EXITCODE)} -#define _PyStatus_IS_ERROR(err) \ - (err._type == _PyStatus_TYPE_ERROR) -#define _PyStatus_IS_EXIT(err) \ - (err._type == _PyStatus_TYPE_EXIT) -#define _PyStatus_EXCEPTION(err) \ - (err._type != _PyStatus_TYPE_OK) -#define _PyStatus_UPDATE_FUNC(err) \ - do { err.func = _PyStatus_GET_FUNC(); } while (0) - -PyObject* _PyErr_SetFromPyStatus(PyStatus status); - -/* --- PyWideStringList ------------------------------------------------ */ - -#define _PyWideStringList_INIT (PyWideStringList){.length = 0, .items = NULL} - -#ifndef NDEBUG -PyAPI_FUNC(int) _PyWideStringList_CheckConsistency(const PyWideStringList *list); -#endif -PyAPI_FUNC(void) _PyWideStringList_Clear(PyWideStringList *list); -PyAPI_FUNC(int) _PyWideStringList_Copy(PyWideStringList *list, - const PyWideStringList *list2); -PyAPI_FUNC(PyStatus) _PyWideStringList_Extend(PyWideStringList *list, - const PyWideStringList *list2); -PyAPI_FUNC(PyObject*) _PyWideStringList_AsList(const PyWideStringList *list); - - -/* --- _PyArgv ---------------------------------------------------- */ - -typedef struct _PyArgv { - Py_ssize_t argc; - int use_bytes_argv; - char * const *bytes_argv; - wchar_t * const *wchar_argv; -} _PyArgv; - -PyAPI_FUNC(PyStatus) _PyArgv_AsWstrList(const _PyArgv *args, - PyWideStringList *list); - - -/* --- Helper functions ------------------------------------------- */ - -PyAPI_FUNC(int) _Py_str_to_int( - const char *str, - int *result); -PyAPI_FUNC(const wchar_t*) _Py_get_xoption( - const PyWideStringList *xoptions, - const wchar_t *name); -PyAPI_FUNC(const char*) _Py_GetEnv( - int use_environment, - const char *name); -PyAPI_FUNC(void) _Py_get_env_flag( - int use_environment, - int *flag, - const char *name); - -/* Py_GetArgcArgv() helper */ -PyAPI_FUNC(void) _Py_ClearArgcArgv(void); - - -/* --- _PyPreCmdline ------------------------------------------------- */ - -typedef struct { - PyWideStringList argv; - PyWideStringList xoptions; /* "-X value" option */ - int isolated; /* -I option */ - int use_environment; /* -E option */ - int dev_mode; /* -X dev and PYTHONDEVMODE */ - int warn_default_encoding; /* -X warn_default_encoding and PYTHONWARNDEFAULTENCODING */ -} _PyPreCmdline; - -#define _PyPreCmdline_INIT \ - (_PyPreCmdline){ \ - .use_environment = -1, \ - .isolated = -1, \ - .dev_mode = -1} -/* Note: _PyPreCmdline_INIT sets other fields to 0/NULL */ - -extern void _PyPreCmdline_Clear(_PyPreCmdline *cmdline); -extern PyStatus _PyPreCmdline_SetArgv(_PyPreCmdline *cmdline, - const _PyArgv *args); -extern PyStatus _PyPreCmdline_SetConfig( - const _PyPreCmdline *cmdline, - PyConfig *config); -extern PyStatus _PyPreCmdline_Read(_PyPreCmdline *cmdline, - const PyPreConfig *preconfig); - - -/* --- PyPreConfig ----------------------------------------------- */ - -PyAPI_FUNC(void) _PyPreConfig_InitCompatConfig(PyPreConfig *preconfig); -extern void _PyPreConfig_InitFromConfig( - PyPreConfig *preconfig, - const PyConfig *config); -extern PyStatus _PyPreConfig_InitFromPreConfig( - PyPreConfig *preconfig, - const PyPreConfig *config2); -extern PyObject* _PyPreConfig_AsDict(const PyPreConfig *preconfig); -extern void _PyPreConfig_GetConfig(PyPreConfig *preconfig, - const PyConfig *config); -extern PyStatus _PyPreConfig_Read(PyPreConfig *preconfig, - const _PyArgv *args); -extern PyStatus _PyPreConfig_Write(const PyPreConfig *preconfig); - - -/* --- PyConfig ---------------------------------------------- */ - -typedef enum { - /* Py_Initialize() API: backward compatibility with Python 3.6 and 3.7 */ - _PyConfig_INIT_COMPAT = 1, - _PyConfig_INIT_PYTHON = 2, - _PyConfig_INIT_ISOLATED = 3 -} _PyConfigInitEnum; - -PyAPI_FUNC(void) _PyConfig_InitCompatConfig(PyConfig *config); -extern PyStatus _PyConfig_Copy( - PyConfig *config, - const PyConfig *config2); -extern PyStatus _PyConfig_InitPathConfig( - PyConfig *config, - int compute_path_config); -extern PyStatus _PyConfig_InitImportConfig(PyConfig *config); -extern PyStatus _PyConfig_Read(PyConfig *config, int compute_path_config); -extern PyStatus _PyConfig_Write(const PyConfig *config, - struct pyruntimestate *runtime); -extern PyStatus _PyConfig_SetPyArgv( - PyConfig *config, - const _PyArgv *args); - -PyAPI_FUNC(PyObject*) _PyConfig_AsDict(const PyConfig *config); -PyAPI_FUNC(int) _PyConfig_FromDict(PyConfig *config, PyObject *dict); - -extern void _Py_DumpPathConfig(PyThreadState *tstate); - -PyAPI_FUNC(PyObject*) _Py_Get_Getpath_CodeObject(void); - -extern int _Py_global_config_int_max_str_digits; - - -/* --- Function used for testing ---------------------------------- */ - -PyAPI_FUNC(PyObject*) _Py_GetConfigsAsDict(void); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CORECONFIG_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_interp.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_interp.h deleted file mode 100644 index 02d25d6..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_interp.h +++ /dev/null @@ -1,227 +0,0 @@ -#ifndef Py_INTERNAL_INTERP_H -#define Py_INTERNAL_INTERP_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include - -#include "pycore_atomic.h" // _Py_atomic_address -#include "pycore_ast_state.h" // struct ast_state -#include "pycore_code.h" // struct callable_cache -#include "pycore_context.h" // struct _Py_context_state -#include "pycore_dict.h" // struct _Py_dict_state -#include "pycore_exceptions.h" // struct _Py_exc_state -#include "pycore_floatobject.h" // struct _Py_float_state -#include "pycore_genobject.h" // struct _Py_async_gen_state -#include "pycore_gil.h" // struct _gil_runtime_state -#include "pycore_gc.h" // struct _gc_runtime_state -#include "pycore_list.h" // struct _Py_list_state -#include "pycore_tuple.h" // struct _Py_tuple_state -#include "pycore_typeobject.h" // struct type_cache -#include "pycore_unicodeobject.h" // struct _Py_unicode_state -#include "pycore_warnings.h" // struct _warnings_runtime_state - -struct _pending_calls { - PyThread_type_lock lock; - /* Request for running pending calls. */ - _Py_atomic_int calls_to_do; - /* Request for looking at the `async_exc` field of the current - thread state. - Guarded by the GIL. */ - int async_exc; -#define NPENDINGCALLS 32 - struct { - int (*func)(void *); - void *arg; - } calls[NPENDINGCALLS]; - int first; - int last; -}; - -struct _ceval_state { - int recursion_limit; - /* This single variable consolidates all requests to break out of - the fast path in the eval loop. */ - _Py_atomic_int eval_breaker; - /* Request for dropping the GIL */ - _Py_atomic_int gil_drop_request; - struct _pending_calls pending; -}; - - -// atexit state -typedef struct { - PyObject *func; - PyObject *args; - PyObject *kwargs; -} atexit_callback; - -struct atexit_state { - atexit_callback **callbacks; - int ncallbacks; - int callback_len; -}; - - -/* interpreter state */ - -/* PyInterpreterState holds the global state for one of the runtime's - interpreters. Typically the initial (main) interpreter is the only one. - - The PyInterpreterState typedef is in Include/pystate.h. - */ -struct _is { - - PyInterpreterState *next; - - struct pythreads { - uint64_t next_unique_id; - /* The linked list of threads, newest first. */ - PyThreadState *head; - /* Used in Modules/_threadmodule.c. */ - long count; - /* Support for runtime thread stack size tuning. - A value of 0 means using the platform's default stack size - or the size specified by the THREAD_STACK_SIZE macro. */ - /* Used in Python/thread.c. */ - size_t stacksize; - } threads; - - /* Reference to the _PyRuntime global variable. This field exists - to not have to pass runtime in addition to tstate to a function. - Get runtime from tstate: tstate->interp->runtime. */ - struct pyruntimestate *runtime; - - int64_t id; - int64_t id_refcount; - int requires_idref; - PyThread_type_lock id_mutex; - - /* Has been initialized to a safe state. - - In order to be effective, this must be set to 0 during or right - after allocation. */ - int _initialized; - int finalizing; - - /* Was this interpreter statically allocated? */ - bool _static; - - struct _ceval_state ceval; - struct _gc_runtime_state gc; - - // sys.modules dictionary - PyObject *modules; - PyObject *modules_by_index; - // Dictionary of the sys module - PyObject *sysdict; - // Dictionary of the builtins module - PyObject *builtins; - // importlib module - PyObject *importlib; - // override for config->use_frozen_modules (for tests) - // (-1: "off", 1: "on", 0: no override) - int override_frozen_modules; - - PyObject *codec_search_path; - PyObject *codec_search_cache; - PyObject *codec_error_registry; - int codecs_initialized; - - PyConfig config; -#ifdef HAVE_DLOPEN - int dlopenflags; -#endif - - PyObject *dict; /* Stores per-interpreter state */ - - PyObject *builtins_copy; - PyObject *import_func; - // Initialized to _PyEval_EvalFrameDefault(). - _PyFrameEvalFunction eval_frame; - - Py_ssize_t co_extra_user_count; - freefunc co_extra_freefuncs[MAX_CO_EXTRA_USERS]; - -#ifdef HAVE_FORK - PyObject *before_forkers; - PyObject *after_forkers_parent; - PyObject *after_forkers_child; -#endif - - struct _warnings_runtime_state warnings; - struct atexit_state atexit; - - PyObject *audit_hooks; - - struct _Py_unicode_state unicode; - struct _Py_float_state float_state; - /* Using a cache is very effective since typically only a single slice is - created and then deleted again. */ - PySliceObject *slice_cache; - - struct _Py_tuple_state tuple; - struct _Py_list_state list; - struct _Py_dict_state dict_state; - struct _Py_async_gen_state async_gen; - struct _Py_context_state context; - struct _Py_exc_state exc_state; - - struct ast_state ast; - struct type_cache type_cache; - struct callable_cache callable_cache; - - int int_max_str_digits; - - /* The following fields are here to avoid allocation during init. - The data is exposed through PyInterpreterState pointer fields. - These fields should not be accessed directly outside of init. - - All other PyInterpreterState pointer fields are populated when - needed and default to NULL. - - For now there are some exceptions to that rule, which require - allocation during init. These will be addressed on a case-by-case - basis. Also see _PyRuntimeState regarding the various mutex fields. - */ - - /* the initial PyInterpreterState.threads.head */ - PyThreadState _initial_thread; -}; - - -/* other API */ - -extern void _PyInterpreterState_ClearModules(PyInterpreterState *interp); -extern void _PyInterpreterState_Clear(PyThreadState *tstate); - - -/* cross-interpreter data registry */ - -/* For now we use a global registry of shareable classes. An - alternative would be to add a tp_* slot for a class's - crossinterpdatafunc. It would be simpler and more efficient. */ - -struct _xidregitem; - -struct _xidregitem { - PyTypeObject *cls; - crossinterpdatafunc getdata; - struct _xidregitem *next; -}; - -PyAPI_FUNC(PyInterpreterState*) _PyInterpreterState_LookUpID(int64_t); - -PyAPI_FUNC(int) _PyInterpreterState_IDInitref(PyInterpreterState *); -PyAPI_FUNC(int) _PyInterpreterState_IDIncref(PyInterpreterState *); -PyAPI_FUNC(void) _PyInterpreterState_IDDecref(PyInterpreterState *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_INTERP_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_interpreteridobject.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_interpreteridobject.h deleted file mode 100644 index 804831e..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_interpreteridobject.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Interpreter ID Object */ - -#ifndef Py_INTERNAL_INTERPRETERIDOBJECT_H -#define Py_INTERNAL_INTERPRETERIDOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -PyAPI_DATA(PyTypeObject) _PyInterpreterID_Type; - -PyAPI_FUNC(PyObject *) _PyInterpreterID_New(int64_t); -PyAPI_FUNC(PyObject *) _PyInterpreterState_GetIDObject(PyInterpreterState *); -PyAPI_FUNC(PyInterpreterState *) _PyInterpreterID_LookUp(PyObject *); - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_INTERPRETERIDOBJECT_H diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_list.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_list.h deleted file mode 100644 index 860dce1..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_list.h +++ /dev/null @@ -1,62 +0,0 @@ -#ifndef Py_INTERNAL_LIST_H -#define Py_INTERNAL_LIST_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "listobject.h" // _PyList_CAST() - - -/* runtime lifecycle */ - -extern void _PyList_Fini(PyInterpreterState *); - - -/* other API */ - -#ifndef WITH_FREELISTS -// without freelists -# define PyList_MAXFREELIST 0 -#endif - -/* Empty list reuse scheme to save calls to malloc and free */ -#ifndef PyList_MAXFREELIST -# define PyList_MAXFREELIST 80 -#endif - -struct _Py_list_state { -#if PyList_MAXFREELIST > 0 - PyListObject *free_list[PyList_MAXFREELIST]; - int numfree; -#endif -}; - -#define _PyList_ITEMS(op) (_PyList_CAST(op)->ob_item) - -extern int -_PyList_AppendTakeRefListResize(PyListObject *self, PyObject *newitem); - -static inline int -_PyList_AppendTakeRef(PyListObject *self, PyObject *newitem) -{ - assert(self != NULL && newitem != NULL); - assert(PyList_Check(self)); - Py_ssize_t len = PyList_GET_SIZE(self); - Py_ssize_t allocated = self->allocated; - assert((size_t)len + 1 < PY_SSIZE_T_MAX); - if (allocated > len) { - PyList_SET_ITEM(self, len, newitem); - Py_SET_SIZE(self, len + 1); - return 0; - } - return _PyList_AppendTakeRefListResize(self, newitem); -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_LIST_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_long.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_long.h deleted file mode 100644 index 0f466eb..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_long.h +++ /dev/null @@ -1,114 +0,0 @@ -#ifndef Py_INTERNAL_LONG_H -#define Py_INTERNAL_LONG_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_global_objects.h" // _PY_NSMALLNEGINTS -#include "pycore_runtime.h" // _PyRuntime - -/* - * Default int base conversion size limitation: Denial of Service prevention. - * - * Chosen such that this isn't wildly slow on modern hardware and so that - * everyone's existing deployed numpy test suite passes before - * https://github.com/numpy/numpy/issues/22098 is widely available. - * - * $ python -m timeit -s 's = "1"*4300' 'int(s)' - * 2000 loops, best of 5: 125 usec per loop - * $ python -m timeit -s 's = "1"*4300; v = int(s)' 'str(v)' - * 1000 loops, best of 5: 311 usec per loop - * (zen2 cloud VM) - * - * 4300 decimal digits fits a ~14284 bit number. - */ -#define _PY_LONG_DEFAULT_MAX_STR_DIGITS 4300 -/* - * Threshold for max digits check. For performance reasons int() and - * int.__str__() don't checks values that are smaller than this - * threshold. Acts as a guaranteed minimum size limit for bignums that - * applications can expect from CPython. - * - * % python -m timeit -s 's = "1"*640; v = int(s)' 'str(int(s))' - * 20000 loops, best of 5: 12 usec per loop - * - * "640 digits should be enough for anyone." - gps - * fits a ~2126 bit decimal number. - */ -#define _PY_LONG_MAX_STR_DIGITS_THRESHOLD 640 - -#if ((_PY_LONG_DEFAULT_MAX_STR_DIGITS != 0) && \ - (_PY_LONG_DEFAULT_MAX_STR_DIGITS < _PY_LONG_MAX_STR_DIGITS_THRESHOLD)) -# error "_PY_LONG_DEFAULT_MAX_STR_DIGITS smaller than threshold." -#endif - - -/* runtime lifecycle */ - -extern PyStatus _PyLong_InitTypes(PyInterpreterState *); -extern void _PyLong_FiniTypes(PyInterpreterState *interp); - - -/* other API */ - -#define _PyLong_SMALL_INTS _Py_SINGLETON(small_ints) - -// _PyLong_GetZero() and _PyLong_GetOne() must always be available -// _PyLong_FromUnsignedChar must always be available -#if _PY_NSMALLPOSINTS < 257 -# error "_PY_NSMALLPOSINTS must be greater than or equal to 257" -#endif - -// Return a borrowed reference to the zero singleton. -// The function cannot return NULL. -static inline PyObject* _PyLong_GetZero(void) -{ return (PyObject *)&_PyLong_SMALL_INTS[_PY_NSMALLNEGINTS]; } - -// Return a borrowed reference to the one singleton. -// The function cannot return NULL. -static inline PyObject* _PyLong_GetOne(void) -{ return (PyObject *)&_PyLong_SMALL_INTS[_PY_NSMALLNEGINTS+1]; } - -static inline PyObject* _PyLong_FromUnsignedChar(unsigned char i) -{ - return Py_NewRef((PyObject *)&_PyLong_SMALL_INTS[_PY_NSMALLNEGINTS+i]); -} - -PyObject *_PyLong_Add(PyLongObject *left, PyLongObject *right); -PyObject *_PyLong_Multiply(PyLongObject *left, PyLongObject *right); -PyObject *_PyLong_Subtract(PyLongObject *left, PyLongObject *right); - -/* Used by Python/mystrtoul.c, _PyBytes_FromHex(), - _PyBytes_DecodeEscape(), etc. */ -PyAPI_DATA(unsigned char) _PyLong_DigitValue[256]; - -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -PyAPI_FUNC(int) _PyLong_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); - -PyAPI_FUNC(int) _PyLong_FormatWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - int base, - int alternate); - -PyAPI_FUNC(char*) _PyLong_FormatBytesWriter( - _PyBytesWriter *writer, - char *str, - PyObject *obj, - int base, - int alternate); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_LONG_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_moduleobject.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_moduleobject.h deleted file mode 100644 index 76361b8..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_moduleobject.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef Py_INTERNAL_MODULEOBJECT_H -#define Py_INTERNAL_MODULEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -typedef struct { - PyObject_HEAD - PyObject *md_dict; - PyModuleDef *md_def; - void *md_state; - PyObject *md_weaklist; - // for logging purposes after md_dict is cleared - PyObject *md_name; -} PyModuleObject; - -static inline PyModuleDef* _PyModule_GetDef(PyObject *mod) { - assert(PyModule_Check(mod)); - return ((PyModuleObject *)mod)->md_def; -} - -static inline void* _PyModule_GetState(PyObject* mod) { - assert(PyModule_Check(mod)); - return ((PyModuleObject *)mod)->md_state; -} - -static inline PyObject* _PyModule_GetDict(PyObject *mod) { - assert(PyModule_Check(mod)); - PyObject *dict = ((PyModuleObject *)mod) -> md_dict; - // _PyModule_GetDict(mod) must not be used after calling module_clear(mod) - assert(dict != NULL); - return dict; -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_MODULEOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_namespace.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_namespace.h deleted file mode 100644 index cb76f04..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_namespace.h +++ /dev/null @@ -1,20 +0,0 @@ -// Simple namespace object interface - -#ifndef Py_INTERNAL_NAMESPACE_H -#define Py_INTERNAL_NAMESPACE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -PyAPI_DATA(PyTypeObject) _PyNamespace_Type; - -PyAPI_FUNC(PyObject *) _PyNamespace_New(PyObject *kwds); - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_NAMESPACE_H diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_object.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_object.h deleted file mode 100644 index f022f82..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_object.h +++ /dev/null @@ -1,310 +0,0 @@ -#ifndef Py_INTERNAL_OBJECT_H -#define Py_INTERNAL_OBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include -#include "pycore_gc.h" // _PyObject_GC_IS_TRACKED() -#include "pycore_interp.h" // PyInterpreterState.gc -#include "pycore_pystate.h" // _PyInterpreterState_GET() -#include "pycore_runtime.h" // _PyRuntime - -#define _PyObject_IMMORTAL_INIT(type) \ - { \ - .ob_refcnt = 999999999, \ - .ob_type = type, \ - } -#define _PyVarObject_IMMORTAL_INIT(type, size) \ - { \ - .ob_base = _PyObject_IMMORTAL_INIT(type), \ - .ob_size = size, \ - } - -PyAPI_FUNC(void) _Py_NO_RETURN _Py_FatalRefcountErrorFunc( - const char *func, - const char *message); - -#define _Py_FatalRefcountError(message) _Py_FatalRefcountErrorFunc(__func__, message) - -static inline void -_Py_DECREF_SPECIALIZED(PyObject *op, const destructor destruct) -{ -#ifdef Py_REF_DEBUG - _Py_RefTotal--; -#endif - if (--op->ob_refcnt != 0) { - assert(op->ob_refcnt > 0); - } - else { -#ifdef Py_TRACE_REFS - _Py_ForgetReference(op); -#endif - destruct(op); - } -} - -static inline void -_Py_DECREF_NO_DEALLOC(PyObject *op) -{ -#ifdef Py_REF_DEBUG - _Py_RefTotal--; -#endif - op->ob_refcnt--; -#ifdef Py_DEBUG - if (op->ob_refcnt <= 0) { - _Py_FatalRefcountError("Expected a positive remaining refcount"); - } -#endif -} - -PyAPI_FUNC(int) _PyType_CheckConsistency(PyTypeObject *type); -PyAPI_FUNC(int) _PyDict_CheckConsistency(PyObject *mp, int check_content); - -/* Update the Python traceback of an object. This function must be called - when a memory block is reused from a free list. - - Internal function called by _Py_NewReference(). */ -extern int _PyTraceMalloc_NewReference(PyObject *op); - -// Fast inlined version of PyType_HasFeature() -static inline int -_PyType_HasFeature(PyTypeObject *type, unsigned long feature) { - return ((type->tp_flags & feature) != 0); -} - -extern void _PyType_InitCache(PyInterpreterState *interp); - - -/* Inline functions trading binary compatibility for speed: - _PyObject_Init() is the fast version of PyObject_Init(), and - _PyObject_InitVar() is the fast version of PyObject_InitVar(). - - These inline functions must not be called with op=NULL. */ -static inline void -_PyObject_Init(PyObject *op, PyTypeObject *typeobj) -{ - assert(op != NULL); - Py_SET_TYPE(op, typeobj); - if (_PyType_HasFeature(typeobj, Py_TPFLAGS_HEAPTYPE)) { - Py_INCREF(typeobj); - } - _Py_NewReference(op); -} - -static inline void -_PyObject_InitVar(PyVarObject *op, PyTypeObject *typeobj, Py_ssize_t size) -{ - assert(op != NULL); - Py_SET_SIZE(op, size); - _PyObject_Init((PyObject *)op, typeobj); -} - - -/* Tell the GC to track this object. - * - * The object must not be tracked by the GC. - * - * NB: While the object is tracked by the collector, it must be safe to call the - * ob_traverse method. - * - * Internal note: interp->gc.generation0->_gc_prev doesn't have any bit flags - * because it's not object header. So we don't use _PyGCHead_PREV() and - * _PyGCHead_SET_PREV() for it to avoid unnecessary bitwise operations. - * - * See also the public PyObject_GC_Track() function. - */ -static inline void _PyObject_GC_TRACK( -// The preprocessor removes _PyObject_ASSERT_FROM() calls if NDEBUG is defined -#ifndef NDEBUG - const char *filename, int lineno, -#endif - PyObject *op) -{ - _PyObject_ASSERT_FROM(op, !_PyObject_GC_IS_TRACKED(op), - "object already tracked by the garbage collector", - filename, lineno, __func__); - - PyGC_Head *gc = _Py_AS_GC(op); - _PyObject_ASSERT_FROM(op, - (gc->_gc_prev & _PyGC_PREV_MASK_COLLECTING) == 0, - "object is in generation which is garbage collected", - filename, lineno, __func__); - - PyInterpreterState *interp = _PyInterpreterState_GET(); - PyGC_Head *generation0 = interp->gc.generation0; - PyGC_Head *last = (PyGC_Head*)(generation0->_gc_prev); - _PyGCHead_SET_NEXT(last, gc); - _PyGCHead_SET_PREV(gc, last); - _PyGCHead_SET_NEXT(gc, generation0); - generation0->_gc_prev = (uintptr_t)gc; -} - -/* Tell the GC to stop tracking this object. - * - * Internal note: This may be called while GC. So _PyGC_PREV_MASK_COLLECTING - * must be cleared. But _PyGC_PREV_MASK_FINALIZED bit is kept. - * - * The object must be tracked by the GC. - * - * See also the public PyObject_GC_UnTrack() which accept an object which is - * not tracked. - */ -static inline void _PyObject_GC_UNTRACK( -// The preprocessor removes _PyObject_ASSERT_FROM() calls if NDEBUG is defined -#ifndef NDEBUG - const char *filename, int lineno, -#endif - PyObject *op) -{ - _PyObject_ASSERT_FROM(op, _PyObject_GC_IS_TRACKED(op), - "object not tracked by the garbage collector", - filename, lineno, __func__); - - PyGC_Head *gc = _Py_AS_GC(op); - PyGC_Head *prev = _PyGCHead_PREV(gc); - PyGC_Head *next = _PyGCHead_NEXT(gc); - _PyGCHead_SET_NEXT(prev, next); - _PyGCHead_SET_PREV(next, prev); - gc->_gc_next = 0; - gc->_gc_prev &= _PyGC_PREV_MASK_FINALIZED; -} - -// Macros to accept any type for the parameter, and to automatically pass -// the filename and the filename (if NDEBUG is not defined) where the macro -// is called. -#ifdef NDEBUG -# define _PyObject_GC_TRACK(op) \ - _PyObject_GC_TRACK(_PyObject_CAST(op)) -# define _PyObject_GC_UNTRACK(op) \ - _PyObject_GC_UNTRACK(_PyObject_CAST(op)) -#else -# define _PyObject_GC_TRACK(op) \ - _PyObject_GC_TRACK(__FILE__, __LINE__, _PyObject_CAST(op)) -# define _PyObject_GC_UNTRACK(op) \ - _PyObject_GC_UNTRACK(__FILE__, __LINE__, _PyObject_CAST(op)) -#endif - -#ifdef Py_REF_DEBUG -extern void _PyDebug_PrintTotalRefs(void); -#endif - -#ifdef Py_TRACE_REFS -extern void _Py_AddToAllObjects(PyObject *op, int force); -extern void _Py_PrintReferences(FILE *); -extern void _Py_PrintReferenceAddresses(FILE *); -#endif - -static inline PyObject ** -_PyObject_GET_WEAKREFS_LISTPTR(PyObject *op) -{ - Py_ssize_t offset = Py_TYPE(op)->tp_weaklistoffset; - return (PyObject **)((char *)op + offset); -} - -// Fast inlined version of PyObject_IS_GC() -static inline int -_PyObject_IS_GC(PyObject *obj) -{ - return (PyType_IS_GC(Py_TYPE(obj)) - && (Py_TYPE(obj)->tp_is_gc == NULL - || Py_TYPE(obj)->tp_is_gc(obj))); -} - -// Fast inlined version of PyType_IS_GC() -#define _PyType_IS_GC(t) _PyType_HasFeature((t), Py_TPFLAGS_HAVE_GC) - -static inline size_t -_PyType_PreHeaderSize(PyTypeObject *tp) -{ - return _PyType_IS_GC(tp) * sizeof(PyGC_Head) + - _PyType_HasFeature(tp, Py_TPFLAGS_MANAGED_DICT) * 2 * sizeof(PyObject *); -} - -void _PyObject_GC_Link(PyObject *op); - -// Usage: assert(_Py_CheckSlotResult(obj, "__getitem__", result != NULL)); -extern int _Py_CheckSlotResult( - PyObject *obj, - const char *slot_name, - int success); - -// PyType_Ready() must be called if _PyType_IsReady() is false. -// See also the Py_TPFLAGS_READY flag. -#define _PyType_IsReady(type) ((type)->tp_dict != NULL) - -// Test if a type supports weak references -static inline int _PyType_SUPPORTS_WEAKREFS(PyTypeObject *type) { - return (type->tp_weaklistoffset > 0); -} - -extern PyObject* _PyType_AllocNoTrack(PyTypeObject *type, Py_ssize_t nitems); - -extern int _PyObject_InitializeDict(PyObject *obj); -extern int _PyObject_StoreInstanceAttribute(PyObject *obj, PyDictValues *values, - PyObject *name, PyObject *value); -PyObject * _PyObject_GetInstanceAttribute(PyObject *obj, PyDictValues *values, - PyObject *name); - -static inline PyDictValues **_PyObject_ValuesPointer(PyObject *obj) -{ - assert(Py_TYPE(obj)->tp_flags & Py_TPFLAGS_MANAGED_DICT); - return ((PyDictValues **)obj)-4; -} - -static inline PyObject **_PyObject_ManagedDictPointer(PyObject *obj) -{ - assert(Py_TYPE(obj)->tp_flags & Py_TPFLAGS_MANAGED_DICT); - return ((PyObject **)obj)-3; -} - -#define MANAGED_DICT_OFFSET (((int)sizeof(PyObject *))*-3) - -extern PyObject ** _PyObject_DictPointer(PyObject *); -extern int _PyObject_VisitInstanceAttributes(PyObject *self, visitproc visit, void *arg); -extern void _PyObject_ClearInstanceAttributes(PyObject *self); -extern void _PyObject_FreeInstanceAttributes(PyObject *self); -extern int _PyObject_IsInstanceDictEmpty(PyObject *); -extern PyObject* _PyType_GetSubclasses(PyTypeObject *); - -// Access macro to the members which are floating "behind" the object -#define _PyHeapType_GET_MEMBERS(etype) \ - ((PyMemberDef *)(((char *)etype) + Py_TYPE(etype)->tp_basicsize)) - -PyAPI_FUNC(PyObject *) _PyObject_LookupSpecial(PyObject *, PyObject *); - -/* C function call trampolines to mitigate bad function pointer casts. - * - * Typical native ABIs ignore additional arguments or fill in missing - * values with 0/NULL in function pointer cast. Compilers do not show - * warnings when a function pointer is explicitly casted to an - * incompatible type. - * - * Bad fpcasts are an issue in WebAssembly. WASM's indirect_call has strict - * function signature checks. Argument count, types, and return type must - * match. - * - * Third party code unintentionally rely on problematic fpcasts. The call - * trampoline mitigates common occurences of bad fpcasts on Emscripten. - */ -#if defined(__EMSCRIPTEN__) && defined(PY_CALL_TRAMPOLINE) -#define _PyCFunction_TrampolineCall(meth, self, args) \ - _PyCFunctionWithKeywords_TrampolineCall( \ - (*(PyCFunctionWithKeywords)(void(*)(void))meth), self, args, NULL) -extern PyObject* _PyCFunctionWithKeywords_TrampolineCall( - PyCFunctionWithKeywords meth, PyObject *, PyObject *, PyObject *); -#else -#define _PyCFunction_TrampolineCall(meth, self, args) \ - (meth)((self), (args)) -#define _PyCFunctionWithKeywords_TrampolineCall(meth, self, args, kw) \ - (meth)((self), (args), (kw)) -#endif // __EMSCRIPTEN__ && PY_CALL_TRAMPOLINE - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_OBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_opcode.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_opcode.h deleted file mode 100644 index eadcba1..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_opcode.h +++ /dev/null @@ -1,581 +0,0 @@ -// Auto-generated by Tools/scripts/generate_opcode_h.py from Lib/opcode.py - -#ifndef Py_INTERNAL_OPCODE_H -#define Py_INTERNAL_OPCODE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "opcode.h" - -extern const uint8_t _PyOpcode_Caches[256]; - -extern const uint8_t _PyOpcode_Deopt[256]; - -#ifdef NEED_OPCODE_TABLES -static const uint32_t _PyOpcode_RelativeJump[8] = { - 0U, - 0U, - 536870912U, - 135118848U, - 4163U, - 122880U, - 0U, - 0U, -}; -static const uint32_t _PyOpcode_Jump[8] = { - 0U, - 0U, - 536870912U, - 135118848U, - 4163U, - 122880U, - 0U, - 0U, -}; - -const uint8_t _PyOpcode_Caches[256] = { - [BINARY_SUBSCR] = 4, - [STORE_SUBSCR] = 1, - [UNPACK_SEQUENCE] = 1, - [STORE_ATTR] = 4, - [LOAD_ATTR] = 4, - [COMPARE_OP] = 2, - [LOAD_GLOBAL] = 5, - [BINARY_OP] = 1, - [LOAD_METHOD] = 10, - [PRECALL] = 1, - [CALL] = 4, -}; - -const uint8_t _PyOpcode_Deopt[256] = { - [ASYNC_GEN_WRAP] = ASYNC_GEN_WRAP, - [BEFORE_ASYNC_WITH] = BEFORE_ASYNC_WITH, - [BEFORE_WITH] = BEFORE_WITH, - [BINARY_OP] = BINARY_OP, - [BINARY_OP_ADAPTIVE] = BINARY_OP, - [BINARY_OP_ADD_FLOAT] = BINARY_OP, - [BINARY_OP_ADD_INT] = BINARY_OP, - [BINARY_OP_ADD_UNICODE] = BINARY_OP, - [BINARY_OP_INPLACE_ADD_UNICODE] = BINARY_OP, - [BINARY_OP_MULTIPLY_FLOAT] = BINARY_OP, - [BINARY_OP_MULTIPLY_INT] = BINARY_OP, - [BINARY_OP_SUBTRACT_FLOAT] = BINARY_OP, - [BINARY_OP_SUBTRACT_INT] = BINARY_OP, - [BINARY_SUBSCR] = BINARY_SUBSCR, - [BINARY_SUBSCR_ADAPTIVE] = BINARY_SUBSCR, - [BINARY_SUBSCR_DICT] = BINARY_SUBSCR, - [BINARY_SUBSCR_GETITEM] = BINARY_SUBSCR, - [BINARY_SUBSCR_LIST_INT] = BINARY_SUBSCR, - [BINARY_SUBSCR_TUPLE_INT] = BINARY_SUBSCR, - [BUILD_CONST_KEY_MAP] = BUILD_CONST_KEY_MAP, - [BUILD_LIST] = BUILD_LIST, - [BUILD_MAP] = BUILD_MAP, - [BUILD_SET] = BUILD_SET, - [BUILD_SLICE] = BUILD_SLICE, - [BUILD_STRING] = BUILD_STRING, - [BUILD_TUPLE] = BUILD_TUPLE, - [CACHE] = CACHE, - [CALL] = CALL, - [CALL_ADAPTIVE] = CALL, - [CALL_FUNCTION_EX] = CALL_FUNCTION_EX, - [CALL_PY_EXACT_ARGS] = CALL, - [CALL_PY_WITH_DEFAULTS] = CALL, - [CHECK_EG_MATCH] = CHECK_EG_MATCH, - [CHECK_EXC_MATCH] = CHECK_EXC_MATCH, - [COMPARE_OP] = COMPARE_OP, - [COMPARE_OP_ADAPTIVE] = COMPARE_OP, - [COMPARE_OP_FLOAT_JUMP] = COMPARE_OP, - [COMPARE_OP_INT_JUMP] = COMPARE_OP, - [COMPARE_OP_STR_JUMP] = COMPARE_OP, - [CONTAINS_OP] = CONTAINS_OP, - [COPY] = COPY, - [COPY_FREE_VARS] = COPY_FREE_VARS, - [DELETE_ATTR] = DELETE_ATTR, - [DELETE_DEREF] = DELETE_DEREF, - [DELETE_FAST] = DELETE_FAST, - [DELETE_GLOBAL] = DELETE_GLOBAL, - [DELETE_NAME] = DELETE_NAME, - [DELETE_SUBSCR] = DELETE_SUBSCR, - [DICT_MERGE] = DICT_MERGE, - [DICT_UPDATE] = DICT_UPDATE, - [END_ASYNC_FOR] = END_ASYNC_FOR, - [EXTENDED_ARG] = EXTENDED_ARG, - [EXTENDED_ARG_QUICK] = EXTENDED_ARG, - [FORMAT_VALUE] = FORMAT_VALUE, - [FOR_ITER] = FOR_ITER, - [GET_AITER] = GET_AITER, - [GET_ANEXT] = GET_ANEXT, - [GET_AWAITABLE] = GET_AWAITABLE, - [GET_ITER] = GET_ITER, - [GET_LEN] = GET_LEN, - [GET_YIELD_FROM_ITER] = GET_YIELD_FROM_ITER, - [IMPORT_FROM] = IMPORT_FROM, - [IMPORT_NAME] = IMPORT_NAME, - [IMPORT_STAR] = IMPORT_STAR, - [IS_OP] = IS_OP, - [JUMP_BACKWARD] = JUMP_BACKWARD, - [JUMP_BACKWARD_NO_INTERRUPT] = JUMP_BACKWARD_NO_INTERRUPT, - [JUMP_BACKWARD_QUICK] = JUMP_BACKWARD, - [JUMP_FORWARD] = JUMP_FORWARD, - [JUMP_IF_FALSE_OR_POP] = JUMP_IF_FALSE_OR_POP, - [JUMP_IF_TRUE_OR_POP] = JUMP_IF_TRUE_OR_POP, - [KW_NAMES] = KW_NAMES, - [LIST_APPEND] = LIST_APPEND, - [LIST_EXTEND] = LIST_EXTEND, - [LIST_TO_TUPLE] = LIST_TO_TUPLE, - [LOAD_ASSERTION_ERROR] = LOAD_ASSERTION_ERROR, - [LOAD_ATTR] = LOAD_ATTR, - [LOAD_ATTR_ADAPTIVE] = LOAD_ATTR, - [LOAD_ATTR_INSTANCE_VALUE] = LOAD_ATTR, - [LOAD_ATTR_MODULE] = LOAD_ATTR, - [LOAD_ATTR_SLOT] = LOAD_ATTR, - [LOAD_ATTR_WITH_HINT] = LOAD_ATTR, - [LOAD_BUILD_CLASS] = LOAD_BUILD_CLASS, - [LOAD_CLASSDEREF] = LOAD_CLASSDEREF, - [LOAD_CLOSURE] = LOAD_CLOSURE, - [LOAD_CONST] = LOAD_CONST, - [LOAD_CONST__LOAD_FAST] = LOAD_CONST, - [LOAD_DEREF] = LOAD_DEREF, - [LOAD_FAST] = LOAD_FAST, - [LOAD_FAST__LOAD_CONST] = LOAD_FAST, - [LOAD_FAST__LOAD_FAST] = LOAD_FAST, - [LOAD_GLOBAL] = LOAD_GLOBAL, - [LOAD_GLOBAL_ADAPTIVE] = LOAD_GLOBAL, - [LOAD_GLOBAL_BUILTIN] = LOAD_GLOBAL, - [LOAD_GLOBAL_MODULE] = LOAD_GLOBAL, - [LOAD_METHOD] = LOAD_METHOD, - [LOAD_METHOD_ADAPTIVE] = LOAD_METHOD, - [LOAD_METHOD_CLASS] = LOAD_METHOD, - [LOAD_METHOD_MODULE] = LOAD_METHOD, - [LOAD_METHOD_NO_DICT] = LOAD_METHOD, - [LOAD_METHOD_WITH_DICT] = LOAD_METHOD, - [LOAD_METHOD_WITH_VALUES] = LOAD_METHOD, - [LOAD_NAME] = LOAD_NAME, - [MAKE_CELL] = MAKE_CELL, - [MAKE_FUNCTION] = MAKE_FUNCTION, - [MAP_ADD] = MAP_ADD, - [MATCH_CLASS] = MATCH_CLASS, - [MATCH_KEYS] = MATCH_KEYS, - [MATCH_MAPPING] = MATCH_MAPPING, - [MATCH_SEQUENCE] = MATCH_SEQUENCE, - [NOP] = NOP, - [POP_EXCEPT] = POP_EXCEPT, - [POP_JUMP_BACKWARD_IF_FALSE] = POP_JUMP_BACKWARD_IF_FALSE, - [POP_JUMP_BACKWARD_IF_NONE] = POP_JUMP_BACKWARD_IF_NONE, - [POP_JUMP_BACKWARD_IF_NOT_NONE] = POP_JUMP_BACKWARD_IF_NOT_NONE, - [POP_JUMP_BACKWARD_IF_TRUE] = POP_JUMP_BACKWARD_IF_TRUE, - [POP_JUMP_FORWARD_IF_FALSE] = POP_JUMP_FORWARD_IF_FALSE, - [POP_JUMP_FORWARD_IF_NONE] = POP_JUMP_FORWARD_IF_NONE, - [POP_JUMP_FORWARD_IF_NOT_NONE] = POP_JUMP_FORWARD_IF_NOT_NONE, - [POP_JUMP_FORWARD_IF_TRUE] = POP_JUMP_FORWARD_IF_TRUE, - [POP_TOP] = POP_TOP, - [PRECALL] = PRECALL, - [PRECALL_ADAPTIVE] = PRECALL, - [PRECALL_BOUND_METHOD] = PRECALL, - [PRECALL_BUILTIN_CLASS] = PRECALL, - [PRECALL_BUILTIN_FAST_WITH_KEYWORDS] = PRECALL, - [PRECALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS] = PRECALL, - [PRECALL_NO_KW_BUILTIN_FAST] = PRECALL, - [PRECALL_NO_KW_BUILTIN_O] = PRECALL, - [PRECALL_NO_KW_ISINSTANCE] = PRECALL, - [PRECALL_NO_KW_LEN] = PRECALL, - [PRECALL_NO_KW_LIST_APPEND] = PRECALL, - [PRECALL_NO_KW_METHOD_DESCRIPTOR_FAST] = PRECALL, - [PRECALL_NO_KW_METHOD_DESCRIPTOR_NOARGS] = PRECALL, - [PRECALL_NO_KW_METHOD_DESCRIPTOR_O] = PRECALL, - [PRECALL_NO_KW_STR_1] = PRECALL, - [PRECALL_NO_KW_TUPLE_1] = PRECALL, - [PRECALL_NO_KW_TYPE_1] = PRECALL, - [PRECALL_PYFUNC] = PRECALL, - [PREP_RERAISE_STAR] = PREP_RERAISE_STAR, - [PRINT_EXPR] = PRINT_EXPR, - [PUSH_EXC_INFO] = PUSH_EXC_INFO, - [PUSH_NULL] = PUSH_NULL, - [RAISE_VARARGS] = RAISE_VARARGS, - [RERAISE] = RERAISE, - [RESUME] = RESUME, - [RESUME_QUICK] = RESUME, - [RETURN_GENERATOR] = RETURN_GENERATOR, - [RETURN_VALUE] = RETURN_VALUE, - [SEND] = SEND, - [SETUP_ANNOTATIONS] = SETUP_ANNOTATIONS, - [SET_ADD] = SET_ADD, - [SET_UPDATE] = SET_UPDATE, - [STORE_ATTR] = STORE_ATTR, - [STORE_ATTR_ADAPTIVE] = STORE_ATTR, - [STORE_ATTR_INSTANCE_VALUE] = STORE_ATTR, - [STORE_ATTR_SLOT] = STORE_ATTR, - [STORE_ATTR_WITH_HINT] = STORE_ATTR, - [STORE_DEREF] = STORE_DEREF, - [STORE_FAST] = STORE_FAST, - [STORE_FAST__LOAD_FAST] = STORE_FAST, - [STORE_FAST__STORE_FAST] = STORE_FAST, - [STORE_GLOBAL] = STORE_GLOBAL, - [STORE_NAME] = STORE_NAME, - [STORE_SUBSCR] = STORE_SUBSCR, - [STORE_SUBSCR_ADAPTIVE] = STORE_SUBSCR, - [STORE_SUBSCR_DICT] = STORE_SUBSCR, - [STORE_SUBSCR_LIST_INT] = STORE_SUBSCR, - [SWAP] = SWAP, - [UNARY_INVERT] = UNARY_INVERT, - [UNARY_NEGATIVE] = UNARY_NEGATIVE, - [UNARY_NOT] = UNARY_NOT, - [UNARY_POSITIVE] = UNARY_POSITIVE, - [UNPACK_EX] = UNPACK_EX, - [UNPACK_SEQUENCE] = UNPACK_SEQUENCE, - [UNPACK_SEQUENCE_ADAPTIVE] = UNPACK_SEQUENCE, - [UNPACK_SEQUENCE_LIST] = UNPACK_SEQUENCE, - [UNPACK_SEQUENCE_TUPLE] = UNPACK_SEQUENCE, - [UNPACK_SEQUENCE_TWO_TUPLE] = UNPACK_SEQUENCE, - [WITH_EXCEPT_START] = WITH_EXCEPT_START, - [YIELD_VALUE] = YIELD_VALUE, -}; -#endif // NEED_OPCODE_TABLES - -#ifdef Py_DEBUG -static const char *const _PyOpcode_OpName[256] = { - [CACHE] = "CACHE", - [POP_TOP] = "POP_TOP", - [PUSH_NULL] = "PUSH_NULL", - [BINARY_OP_ADAPTIVE] = "BINARY_OP_ADAPTIVE", - [BINARY_OP_ADD_FLOAT] = "BINARY_OP_ADD_FLOAT", - [BINARY_OP_ADD_INT] = "BINARY_OP_ADD_INT", - [BINARY_OP_ADD_UNICODE] = "BINARY_OP_ADD_UNICODE", - [BINARY_OP_INPLACE_ADD_UNICODE] = "BINARY_OP_INPLACE_ADD_UNICODE", - [BINARY_OP_MULTIPLY_FLOAT] = "BINARY_OP_MULTIPLY_FLOAT", - [NOP] = "NOP", - [UNARY_POSITIVE] = "UNARY_POSITIVE", - [UNARY_NEGATIVE] = "UNARY_NEGATIVE", - [UNARY_NOT] = "UNARY_NOT", - [BINARY_OP_MULTIPLY_INT] = "BINARY_OP_MULTIPLY_INT", - [BINARY_OP_SUBTRACT_FLOAT] = "BINARY_OP_SUBTRACT_FLOAT", - [UNARY_INVERT] = "UNARY_INVERT", - [BINARY_OP_SUBTRACT_INT] = "BINARY_OP_SUBTRACT_INT", - [BINARY_SUBSCR_ADAPTIVE] = "BINARY_SUBSCR_ADAPTIVE", - [BINARY_SUBSCR_DICT] = "BINARY_SUBSCR_DICT", - [BINARY_SUBSCR_GETITEM] = "BINARY_SUBSCR_GETITEM", - [BINARY_SUBSCR_LIST_INT] = "BINARY_SUBSCR_LIST_INT", - [BINARY_SUBSCR_TUPLE_INT] = "BINARY_SUBSCR_TUPLE_INT", - [CALL_ADAPTIVE] = "CALL_ADAPTIVE", - [CALL_PY_EXACT_ARGS] = "CALL_PY_EXACT_ARGS", - [CALL_PY_WITH_DEFAULTS] = "CALL_PY_WITH_DEFAULTS", - [BINARY_SUBSCR] = "BINARY_SUBSCR", - [COMPARE_OP_ADAPTIVE] = "COMPARE_OP_ADAPTIVE", - [COMPARE_OP_FLOAT_JUMP] = "COMPARE_OP_FLOAT_JUMP", - [COMPARE_OP_INT_JUMP] = "COMPARE_OP_INT_JUMP", - [COMPARE_OP_STR_JUMP] = "COMPARE_OP_STR_JUMP", - [GET_LEN] = "GET_LEN", - [MATCH_MAPPING] = "MATCH_MAPPING", - [MATCH_SEQUENCE] = "MATCH_SEQUENCE", - [MATCH_KEYS] = "MATCH_KEYS", - [EXTENDED_ARG_QUICK] = "EXTENDED_ARG_QUICK", - [PUSH_EXC_INFO] = "PUSH_EXC_INFO", - [CHECK_EXC_MATCH] = "CHECK_EXC_MATCH", - [CHECK_EG_MATCH] = "CHECK_EG_MATCH", - [JUMP_BACKWARD_QUICK] = "JUMP_BACKWARD_QUICK", - [LOAD_ATTR_ADAPTIVE] = "LOAD_ATTR_ADAPTIVE", - [LOAD_ATTR_INSTANCE_VALUE] = "LOAD_ATTR_INSTANCE_VALUE", - [LOAD_ATTR_MODULE] = "LOAD_ATTR_MODULE", - [LOAD_ATTR_SLOT] = "LOAD_ATTR_SLOT", - [LOAD_ATTR_WITH_HINT] = "LOAD_ATTR_WITH_HINT", - [LOAD_CONST__LOAD_FAST] = "LOAD_CONST__LOAD_FAST", - [LOAD_FAST__LOAD_CONST] = "LOAD_FAST__LOAD_CONST", - [LOAD_FAST__LOAD_FAST] = "LOAD_FAST__LOAD_FAST", - [LOAD_GLOBAL_ADAPTIVE] = "LOAD_GLOBAL_ADAPTIVE", - [LOAD_GLOBAL_BUILTIN] = "LOAD_GLOBAL_BUILTIN", - [WITH_EXCEPT_START] = "WITH_EXCEPT_START", - [GET_AITER] = "GET_AITER", - [GET_ANEXT] = "GET_ANEXT", - [BEFORE_ASYNC_WITH] = "BEFORE_ASYNC_WITH", - [BEFORE_WITH] = "BEFORE_WITH", - [END_ASYNC_FOR] = "END_ASYNC_FOR", - [LOAD_GLOBAL_MODULE] = "LOAD_GLOBAL_MODULE", - [LOAD_METHOD_ADAPTIVE] = "LOAD_METHOD_ADAPTIVE", - [LOAD_METHOD_CLASS] = "LOAD_METHOD_CLASS", - [LOAD_METHOD_MODULE] = "LOAD_METHOD_MODULE", - [LOAD_METHOD_NO_DICT] = "LOAD_METHOD_NO_DICT", - [STORE_SUBSCR] = "STORE_SUBSCR", - [DELETE_SUBSCR] = "DELETE_SUBSCR", - [LOAD_METHOD_WITH_DICT] = "LOAD_METHOD_WITH_DICT", - [LOAD_METHOD_WITH_VALUES] = "LOAD_METHOD_WITH_VALUES", - [PRECALL_ADAPTIVE] = "PRECALL_ADAPTIVE", - [PRECALL_BOUND_METHOD] = "PRECALL_BOUND_METHOD", - [PRECALL_BUILTIN_CLASS] = "PRECALL_BUILTIN_CLASS", - [PRECALL_BUILTIN_FAST_WITH_KEYWORDS] = "PRECALL_BUILTIN_FAST_WITH_KEYWORDS", - [GET_ITER] = "GET_ITER", - [GET_YIELD_FROM_ITER] = "GET_YIELD_FROM_ITER", - [PRINT_EXPR] = "PRINT_EXPR", - [LOAD_BUILD_CLASS] = "LOAD_BUILD_CLASS", - [PRECALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS] = "PRECALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS", - [PRECALL_NO_KW_BUILTIN_FAST] = "PRECALL_NO_KW_BUILTIN_FAST", - [LOAD_ASSERTION_ERROR] = "LOAD_ASSERTION_ERROR", - [RETURN_GENERATOR] = "RETURN_GENERATOR", - [PRECALL_NO_KW_BUILTIN_O] = "PRECALL_NO_KW_BUILTIN_O", - [PRECALL_NO_KW_ISINSTANCE] = "PRECALL_NO_KW_ISINSTANCE", - [PRECALL_NO_KW_LEN] = "PRECALL_NO_KW_LEN", - [PRECALL_NO_KW_LIST_APPEND] = "PRECALL_NO_KW_LIST_APPEND", - [PRECALL_NO_KW_METHOD_DESCRIPTOR_FAST] = "PRECALL_NO_KW_METHOD_DESCRIPTOR_FAST", - [PRECALL_NO_KW_METHOD_DESCRIPTOR_NOARGS] = "PRECALL_NO_KW_METHOD_DESCRIPTOR_NOARGS", - [LIST_TO_TUPLE] = "LIST_TO_TUPLE", - [RETURN_VALUE] = "RETURN_VALUE", - [IMPORT_STAR] = "IMPORT_STAR", - [SETUP_ANNOTATIONS] = "SETUP_ANNOTATIONS", - [YIELD_VALUE] = "YIELD_VALUE", - [ASYNC_GEN_WRAP] = "ASYNC_GEN_WRAP", - [PREP_RERAISE_STAR] = "PREP_RERAISE_STAR", - [POP_EXCEPT] = "POP_EXCEPT", - [STORE_NAME] = "STORE_NAME", - [DELETE_NAME] = "DELETE_NAME", - [UNPACK_SEQUENCE] = "UNPACK_SEQUENCE", - [FOR_ITER] = "FOR_ITER", - [UNPACK_EX] = "UNPACK_EX", - [STORE_ATTR] = "STORE_ATTR", - [DELETE_ATTR] = "DELETE_ATTR", - [STORE_GLOBAL] = "STORE_GLOBAL", - [DELETE_GLOBAL] = "DELETE_GLOBAL", - [SWAP] = "SWAP", - [LOAD_CONST] = "LOAD_CONST", - [LOAD_NAME] = "LOAD_NAME", - [BUILD_TUPLE] = "BUILD_TUPLE", - [BUILD_LIST] = "BUILD_LIST", - [BUILD_SET] = "BUILD_SET", - [BUILD_MAP] = "BUILD_MAP", - [LOAD_ATTR] = "LOAD_ATTR", - [COMPARE_OP] = "COMPARE_OP", - [IMPORT_NAME] = "IMPORT_NAME", - [IMPORT_FROM] = "IMPORT_FROM", - [JUMP_FORWARD] = "JUMP_FORWARD", - [JUMP_IF_FALSE_OR_POP] = "JUMP_IF_FALSE_OR_POP", - [JUMP_IF_TRUE_OR_POP] = "JUMP_IF_TRUE_OR_POP", - [PRECALL_NO_KW_METHOD_DESCRIPTOR_O] = "PRECALL_NO_KW_METHOD_DESCRIPTOR_O", - [POP_JUMP_FORWARD_IF_FALSE] = "POP_JUMP_FORWARD_IF_FALSE", - [POP_JUMP_FORWARD_IF_TRUE] = "POP_JUMP_FORWARD_IF_TRUE", - [LOAD_GLOBAL] = "LOAD_GLOBAL", - [IS_OP] = "IS_OP", - [CONTAINS_OP] = "CONTAINS_OP", - [RERAISE] = "RERAISE", - [COPY] = "COPY", - [PRECALL_NO_KW_STR_1] = "PRECALL_NO_KW_STR_1", - [BINARY_OP] = "BINARY_OP", - [SEND] = "SEND", - [LOAD_FAST] = "LOAD_FAST", - [STORE_FAST] = "STORE_FAST", - [DELETE_FAST] = "DELETE_FAST", - [PRECALL_NO_KW_TUPLE_1] = "PRECALL_NO_KW_TUPLE_1", - [POP_JUMP_FORWARD_IF_NOT_NONE] = "POP_JUMP_FORWARD_IF_NOT_NONE", - [POP_JUMP_FORWARD_IF_NONE] = "POP_JUMP_FORWARD_IF_NONE", - [RAISE_VARARGS] = "RAISE_VARARGS", - [GET_AWAITABLE] = "GET_AWAITABLE", - [MAKE_FUNCTION] = "MAKE_FUNCTION", - [BUILD_SLICE] = "BUILD_SLICE", - [JUMP_BACKWARD_NO_INTERRUPT] = "JUMP_BACKWARD_NO_INTERRUPT", - [MAKE_CELL] = "MAKE_CELL", - [LOAD_CLOSURE] = "LOAD_CLOSURE", - [LOAD_DEREF] = "LOAD_DEREF", - [STORE_DEREF] = "STORE_DEREF", - [DELETE_DEREF] = "DELETE_DEREF", - [JUMP_BACKWARD] = "JUMP_BACKWARD", - [PRECALL_NO_KW_TYPE_1] = "PRECALL_NO_KW_TYPE_1", - [CALL_FUNCTION_EX] = "CALL_FUNCTION_EX", - [PRECALL_PYFUNC] = "PRECALL_PYFUNC", - [EXTENDED_ARG] = "EXTENDED_ARG", - [LIST_APPEND] = "LIST_APPEND", - [SET_ADD] = "SET_ADD", - [MAP_ADD] = "MAP_ADD", - [LOAD_CLASSDEREF] = "LOAD_CLASSDEREF", - [COPY_FREE_VARS] = "COPY_FREE_VARS", - [RESUME_QUICK] = "RESUME_QUICK", - [RESUME] = "RESUME", - [MATCH_CLASS] = "MATCH_CLASS", - [STORE_ATTR_ADAPTIVE] = "STORE_ATTR_ADAPTIVE", - [STORE_ATTR_INSTANCE_VALUE] = "STORE_ATTR_INSTANCE_VALUE", - [FORMAT_VALUE] = "FORMAT_VALUE", - [BUILD_CONST_KEY_MAP] = "BUILD_CONST_KEY_MAP", - [BUILD_STRING] = "BUILD_STRING", - [STORE_ATTR_SLOT] = "STORE_ATTR_SLOT", - [STORE_ATTR_WITH_HINT] = "STORE_ATTR_WITH_HINT", - [LOAD_METHOD] = "LOAD_METHOD", - [STORE_FAST__LOAD_FAST] = "STORE_FAST__LOAD_FAST", - [LIST_EXTEND] = "LIST_EXTEND", - [SET_UPDATE] = "SET_UPDATE", - [DICT_MERGE] = "DICT_MERGE", - [DICT_UPDATE] = "DICT_UPDATE", - [PRECALL] = "PRECALL", - [STORE_FAST__STORE_FAST] = "STORE_FAST__STORE_FAST", - [STORE_SUBSCR_ADAPTIVE] = "STORE_SUBSCR_ADAPTIVE", - [STORE_SUBSCR_DICT] = "STORE_SUBSCR_DICT", - [STORE_SUBSCR_LIST_INT] = "STORE_SUBSCR_LIST_INT", - [CALL] = "CALL", - [KW_NAMES] = "KW_NAMES", - [POP_JUMP_BACKWARD_IF_NOT_NONE] = "POP_JUMP_BACKWARD_IF_NOT_NONE", - [POP_JUMP_BACKWARD_IF_NONE] = "POP_JUMP_BACKWARD_IF_NONE", - [POP_JUMP_BACKWARD_IF_FALSE] = "POP_JUMP_BACKWARD_IF_FALSE", - [POP_JUMP_BACKWARD_IF_TRUE] = "POP_JUMP_BACKWARD_IF_TRUE", - [UNPACK_SEQUENCE_ADAPTIVE] = "UNPACK_SEQUENCE_ADAPTIVE", - [UNPACK_SEQUENCE_LIST] = "UNPACK_SEQUENCE_LIST", - [UNPACK_SEQUENCE_TUPLE] = "UNPACK_SEQUENCE_TUPLE", - [UNPACK_SEQUENCE_TWO_TUPLE] = "UNPACK_SEQUENCE_TWO_TUPLE", - [181] = "<181>", - [182] = "<182>", - [183] = "<183>", - [184] = "<184>", - [185] = "<185>", - [186] = "<186>", - [187] = "<187>", - [188] = "<188>", - [189] = "<189>", - [190] = "<190>", - [191] = "<191>", - [192] = "<192>", - [193] = "<193>", - [194] = "<194>", - [195] = "<195>", - [196] = "<196>", - [197] = "<197>", - [198] = "<198>", - [199] = "<199>", - [200] = "<200>", - [201] = "<201>", - [202] = "<202>", - [203] = "<203>", - [204] = "<204>", - [205] = "<205>", - [206] = "<206>", - [207] = "<207>", - [208] = "<208>", - [209] = "<209>", - [210] = "<210>", - [211] = "<211>", - [212] = "<212>", - [213] = "<213>", - [214] = "<214>", - [215] = "<215>", - [216] = "<216>", - [217] = "<217>", - [218] = "<218>", - [219] = "<219>", - [220] = "<220>", - [221] = "<221>", - [222] = "<222>", - [223] = "<223>", - [224] = "<224>", - [225] = "<225>", - [226] = "<226>", - [227] = "<227>", - [228] = "<228>", - [229] = "<229>", - [230] = "<230>", - [231] = "<231>", - [232] = "<232>", - [233] = "<233>", - [234] = "<234>", - [235] = "<235>", - [236] = "<236>", - [237] = "<237>", - [238] = "<238>", - [239] = "<239>", - [240] = "<240>", - [241] = "<241>", - [242] = "<242>", - [243] = "<243>", - [244] = "<244>", - [245] = "<245>", - [246] = "<246>", - [247] = "<247>", - [248] = "<248>", - [249] = "<249>", - [250] = "<250>", - [251] = "<251>", - [252] = "<252>", - [253] = "<253>", - [254] = "<254>", - [DO_TRACING] = "DO_TRACING", -}; -#endif - -#define EXTRA_CASES \ - case 181: \ - case 182: \ - case 183: \ - case 184: \ - case 185: \ - case 186: \ - case 187: \ - case 188: \ - case 189: \ - case 190: \ - case 191: \ - case 192: \ - case 193: \ - case 194: \ - case 195: \ - case 196: \ - case 197: \ - case 198: \ - case 199: \ - case 200: \ - case 201: \ - case 202: \ - case 203: \ - case 204: \ - case 205: \ - case 206: \ - case 207: \ - case 208: \ - case 209: \ - case 210: \ - case 211: \ - case 212: \ - case 213: \ - case 214: \ - case 215: \ - case 216: \ - case 217: \ - case 218: \ - case 219: \ - case 220: \ - case 221: \ - case 222: \ - case 223: \ - case 224: \ - case 225: \ - case 226: \ - case 227: \ - case 228: \ - case 229: \ - case 230: \ - case 231: \ - case 232: \ - case 233: \ - case 234: \ - case 235: \ - case 236: \ - case 237: \ - case 238: \ - case 239: \ - case 240: \ - case 241: \ - case 242: \ - case 243: \ - case 244: \ - case 245: \ - case 246: \ - case 247: \ - case 248: \ - case 249: \ - case 250: \ - case 251: \ - case 252: \ - case 253: \ - case 254: \ - ; - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_OPCODE_H diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_parser.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_parser.h deleted file mode 100644 index e2de24e..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_parser.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef Py_INTERNAL_PARSER_H -#define Py_INTERNAL_PARSER_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern struct _mod* _PyParser_ASTFromString( - const char *str, - PyObject* filename, - int mode, - PyCompilerFlags *flags, - PyArena *arena); -extern struct _mod* _PyParser_ASTFromFile( - FILE *fp, - PyObject *filename_ob, - const char *enc, - int mode, - const char *ps1, - const char *ps2, - PyCompilerFlags *flags, - int *errcode, - PyArena *arena); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PARSER_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pathconfig.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_pathconfig.h deleted file mode 100644 index b8deaa0..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pathconfig.h +++ /dev/null @@ -1,24 +0,0 @@ -#ifndef Py_INTERNAL_PATHCONFIG_H -#define Py_INTERNAL_PATHCONFIG_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -PyAPI_FUNC(void) _PyPathConfig_ClearGlobal(void); -extern PyStatus _PyPathConfig_ReadGlobal(PyConfig *config); -extern PyStatus _PyPathConfig_UpdateGlobal(const PyConfig *config); -extern const wchar_t * _PyPathConfig_GetGlobalModuleSearchPath(void); - -extern int _PyPathConfig_ComputeSysPath0( - const PyWideStringList *argv, - PyObject **path0); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PATHCONFIG_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pyarena.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_pyarena.h deleted file mode 100644 index d78972a..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pyarena.h +++ /dev/null @@ -1,64 +0,0 @@ -/* An arena-like memory interface for the compiler. - */ - -#ifndef Py_INTERNAL_PYARENA_H -#define Py_INTERNAL_PYARENA_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -typedef struct _arena PyArena; - -/* _PyArena_New() and _PyArena_Free() create a new arena and free it, - respectively. Once an arena has been created, it can be used - to allocate memory via _PyArena_Malloc(). Pointers to PyObject can - also be registered with the arena via _PyArena_AddPyObject(), and the - arena will ensure that the PyObjects stay alive at least until - _PyArena_Free() is called. When an arena is freed, all the memory it - allocated is freed, the arena releases internal references to registered - PyObject*, and none of its pointers are valid. - XXX (tim) What does "none of its pointers are valid" mean? Does it - XXX mean that pointers previously obtained via _PyArena_Malloc() are - XXX no longer valid? (That's clearly true, but not sure that's what - XXX the text is trying to say.) - - _PyArena_New() returns an arena pointer. On error, it - returns a negative number and sets an exception. - XXX (tim): Not true. On error, _PyArena_New() actually returns NULL, - XXX and looks like it may or may not set an exception (e.g., if the - XXX internal PyList_New(0) returns NULL, _PyArena_New() passes that on - XXX and an exception is set; OTOH, if the internal - XXX block_new(DEFAULT_BLOCK_SIZE) returns NULL, that's passed on but - XXX an exception is not set in that case). -*/ -PyAPI_FUNC(PyArena*) _PyArena_New(void); -PyAPI_FUNC(void) _PyArena_Free(PyArena *); - -/* Mostly like malloc(), return the address of a block of memory spanning - * `size` bytes, or return NULL (without setting an exception) if enough - * new memory can't be obtained. Unlike malloc(0), _PyArena_Malloc() with - * size=0 does not guarantee to return a unique pointer (the pointer - * returned may equal one or more other pointers obtained from - * _PyArena_Malloc()). - * Note that pointers obtained via _PyArena_Malloc() must never be passed to - * the system free() or realloc(), or to any of Python's similar memory- - * management functions. _PyArena_Malloc()-obtained pointers remain valid - * until _PyArena_Free(ar) is called, at which point all pointers obtained - * from the arena `ar` become invalid simultaneously. - */ -PyAPI_FUNC(void*) _PyArena_Malloc(PyArena *, size_t size); - -/* This routine isn't a proper arena allocation routine. It takes - * a PyObject* and records it so that it can be DECREFed when the - * arena is freed. - */ -PyAPI_FUNC(int) _PyArena_AddPyObject(PyArena *, PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYARENA_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pyerrors.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_pyerrors.h deleted file mode 100644 index 66f3794..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pyerrors.h +++ /dev/null @@ -1,106 +0,0 @@ -#ifndef Py_INTERNAL_PYERRORS_H -#define Py_INTERNAL_PYERRORS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* runtime lifecycle */ - -extern PyStatus _PyErr_InitTypes(PyInterpreterState *); -extern void _PyErr_FiniTypes(PyInterpreterState *); - - -/* other API */ - -static inline PyObject* _PyErr_Occurred(PyThreadState *tstate) -{ - assert(tstate != NULL); - return tstate->curexc_type; -} - -static inline void _PyErr_ClearExcState(_PyErr_StackItem *exc_state) -{ - Py_CLEAR(exc_state->exc_value); -} - -PyAPI_FUNC(PyObject*) _PyErr_StackItemToExcInfoTuple( - _PyErr_StackItem *err_info); - -PyAPI_FUNC(void) _PyErr_Fetch( - PyThreadState *tstate, - PyObject **type, - PyObject **value, - PyObject **traceback); - -PyAPI_FUNC(int) _PyErr_ExceptionMatches( - PyThreadState *tstate, - PyObject *exc); - -PyAPI_FUNC(void) _PyErr_Restore( - PyThreadState *tstate, - PyObject *type, - PyObject *value, - PyObject *traceback); - -PyAPI_FUNC(void) _PyErr_SetObject( - PyThreadState *tstate, - PyObject *type, - PyObject *value); - -PyAPI_FUNC(void) _PyErr_ChainStackItem( - _PyErr_StackItem *exc_info); - -PyAPI_FUNC(void) _PyErr_Clear(PyThreadState *tstate); - -PyAPI_FUNC(void) _PyErr_SetNone(PyThreadState *tstate, PyObject *exception); - -PyAPI_FUNC(PyObject *) _PyErr_NoMemory(PyThreadState *tstate); - -PyAPI_FUNC(void) _PyErr_SetString( - PyThreadState *tstate, - PyObject *exception, - const char *string); - -PyAPI_FUNC(PyObject *) _PyErr_Format( - PyThreadState *tstate, - PyObject *exception, - const char *format, - ...); - -PyAPI_FUNC(void) _PyErr_NormalizeException( - PyThreadState *tstate, - PyObject **exc, - PyObject **val, - PyObject **tb); - -PyAPI_FUNC(PyObject *) _PyErr_FormatFromCauseTstate( - PyThreadState *tstate, - PyObject *exception, - const char *format, - ...); - -PyAPI_FUNC(PyObject *) _PyExc_CreateExceptionGroup( - const char *msg, - PyObject *excs); - -PyAPI_FUNC(PyObject *) _PyExc_PrepReraiseStar( - PyObject *orig, - PyObject *excs); - -PyAPI_FUNC(int) _PyErr_CheckSignalsTstate(PyThreadState *tstate); - -PyAPI_FUNC(void) _Py_DumpExtensionModules(int fd, PyInterpreterState *interp); - -extern PyObject* _Py_Offer_Suggestions(PyObject* exception); -PyAPI_FUNC(Py_ssize_t) _Py_UTF8_Edit_Cost(PyObject *str_a, PyObject *str_b, - Py_ssize_t max_cost); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYERRORS_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pyhash.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_pyhash.h deleted file mode 100644 index a229f8d..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pyhash.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef Py_INTERNAL_HASH_H -#define Py_INTERNAL_HASH_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -uint64_t _Py_KeyedHash(uint64_t, const char *, Py_ssize_t); - -#endif diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pylifecycle.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_pylifecycle.h deleted file mode 100644 index b4718b8..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pylifecycle.h +++ /dev/null @@ -1,103 +0,0 @@ -#ifndef Py_INTERNAL_LIFECYCLE_H -#define Py_INTERNAL_LIFECYCLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_runtime.h" // _PyRuntimeState - -/* Forward declarations */ -struct _PyArgv; -struct pyruntimestate; - -/* True if the main interpreter thread exited due to an unhandled - * KeyboardInterrupt exception, suggesting the user pressed ^C. */ -PyAPI_DATA(int) _Py_UnhandledKeyboardInterrupt; - -extern int _Py_SetFileSystemEncoding( - const char *encoding, - const char *errors); -extern void _Py_ClearFileSystemEncoding(void); -extern PyStatus _PyUnicode_InitEncodings(PyThreadState *tstate); -#ifdef MS_WINDOWS -extern int _PyUnicode_EnableLegacyWindowsFSEncoding(void); -#endif - -PyAPI_FUNC(void) _Py_ClearStandardStreamEncoding(void); - -PyAPI_FUNC(int) _Py_IsLocaleCoercionTarget(const char *ctype_loc); - -/* Various one-time initializers */ - -extern PyStatus _PyFaulthandler_Init(int enable); -extern int _PyTraceMalloc_Init(int enable); -extern PyObject * _PyBuiltin_Init(PyInterpreterState *interp); -extern PyStatus _PySys_Create( - PyThreadState *tstate, - PyObject **sysmod_p); -extern PyStatus _PySys_ReadPreinitWarnOptions(PyWideStringList *options); -extern PyStatus _PySys_ReadPreinitXOptions(PyConfig *config); -extern int _PySys_UpdateConfig(PyThreadState *tstate); -extern void _PySys_Fini(PyInterpreterState *interp); -extern int _PyBuiltins_AddExceptions(PyObject * bltinmod); -extern PyStatus _Py_HashRandomization_Init(const PyConfig *); - -extern PyStatus _PyImportZip_Init(PyThreadState *tstate); -extern PyStatus _PyGC_Init(PyInterpreterState *interp); -extern PyStatus _PyAtExit_Init(PyInterpreterState *interp); -extern int _Py_Deepfreeze_Init(void); - -/* Various internal finalizers */ - -extern int _PySignal_Init(int install_signal_handlers); -extern void _PySignal_Fini(void); - -extern void _PyImport_Fini(void); -extern void _PyImport_Fini2(void); -extern void _PyGC_Fini(PyInterpreterState *interp); -extern void _Py_HashRandomization_Fini(void); -extern void _PyFaulthandler_Fini(void); -extern void _PyHash_Fini(void); -extern void _PyTraceMalloc_Fini(void); -extern void _PyWarnings_Fini(PyInterpreterState *interp); -extern void _PyAST_Fini(PyInterpreterState *interp); -extern void _PyAtExit_Fini(PyInterpreterState *interp); -extern void _PyThread_FiniType(PyInterpreterState *interp); -extern void _Py_Deepfreeze_Fini(void); -extern void _PyArg_Fini(void); - -extern PyStatus _PyGILState_Init(_PyRuntimeState *runtime); -extern PyStatus _PyGILState_SetTstate(PyThreadState *tstate); -extern void _PyGILState_Fini(PyInterpreterState *interp); - -PyAPI_FUNC(void) _PyGC_DumpShutdownStats(PyInterpreterState *interp); - -PyAPI_FUNC(PyStatus) _Py_PreInitializeFromPyArgv( - const PyPreConfig *src_config, - const struct _PyArgv *args); -PyAPI_FUNC(PyStatus) _Py_PreInitializeFromConfig( - const PyConfig *config, - const struct _PyArgv *args); - -PyAPI_FUNC(wchar_t *) _Py_GetStdlibDir(void); - -PyAPI_FUNC(int) _Py_HandleSystemExit(int *exitcode_p); - -PyAPI_FUNC(PyObject*) _PyErr_WriteUnraisableDefaultHook(PyObject *unraisable); - -PyAPI_FUNC(void) _PyErr_Print(PyThreadState *tstate); -PyAPI_FUNC(void) _PyErr_Display(PyObject *file, PyObject *exception, - PyObject *value, PyObject *tb); - -PyAPI_FUNC(void) _PyThreadState_DeleteCurrent(PyThreadState *tstate); - -extern void _PyAtExit_Call(PyInterpreterState *interp); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_LIFECYCLE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pymath.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_pymath.h deleted file mode 100644 index 5c6aee2..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pymath.h +++ /dev/null @@ -1,224 +0,0 @@ -#ifndef Py_INTERNAL_PYMATH_H -#define Py_INTERNAL_PYMATH_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* _Py_ADJUST_ERANGE1(x) - * _Py_ADJUST_ERANGE2(x, y) - * Set errno to 0 before calling a libm function, and invoke one of these - * macros after, passing the function result(s) (_Py_ADJUST_ERANGE2 is useful - * for functions returning complex results). This makes two kinds of - * adjustments to errno: (A) If it looks like the platform libm set - * errno=ERANGE due to underflow, clear errno. (B) If it looks like the - * platform libm overflowed but didn't set errno, force errno to ERANGE. In - * effect, we're trying to force a useful implementation of C89 errno - * behavior. - * Caution: - * This isn't reliable. C99 no longer requires libm to set errno under - * any exceptional condition, but does require +- HUGE_VAL return - * values on overflow. A 754 box *probably* maps HUGE_VAL to a - * double infinity, and we're cool if that's so, unless the input - * was an infinity and an infinity is the expected result. A C89 - * system sets errno to ERANGE, so we check for that too. We're - * out of luck if a C99 754 box doesn't map HUGE_VAL to +Inf, or - * if the returned result is a NaN, or if a C89 box returns HUGE_VAL - * in non-overflow cases. - */ -static inline void _Py_ADJUST_ERANGE1(double x) -{ - if (errno == 0) { - if (x == Py_HUGE_VAL || x == -Py_HUGE_VAL) { - errno = ERANGE; - } - } - else if (errno == ERANGE && x == 0.0) { - errno = 0; - } -} - -static inline void _Py_ADJUST_ERANGE2(double x, double y) -{ - if (x == Py_HUGE_VAL || x == -Py_HUGE_VAL || - y == Py_HUGE_VAL || y == -Py_HUGE_VAL) - { - if (errno == 0) { - errno = ERANGE; - } - } - else if (errno == ERANGE) { - errno = 0; - } -} - -// Return whether integral type *type* is signed or not. -#define _Py_IntegralTypeSigned(type) \ - ((type)(-1) < 0) - -// Return the maximum value of integral type *type*. -#define _Py_IntegralTypeMax(type) \ - ((_Py_IntegralTypeSigned(type)) ? (((((type)1 << (sizeof(type)*CHAR_BIT - 2)) - 1) << 1) + 1) : ~(type)0) - -// Return the minimum value of integral type *type*. -#define _Py_IntegralTypeMin(type) \ - ((_Py_IntegralTypeSigned(type)) ? -_Py_IntegralTypeMax(type) - 1 : 0) - -// Check whether *v* is in the range of integral type *type*. This is most -// useful if *v* is floating-point, since demoting a floating-point *v* to an -// integral type that cannot represent *v*'s integral part is undefined -// behavior. -#define _Py_InIntegralTypeRange(type, v) \ - (_Py_IntegralTypeMin(type) <= v && v <= _Py_IntegralTypeMax(type)) - - -//--- HAVE_PY_SET_53BIT_PRECISION macro ------------------------------------ -// -// The functions _Py_dg_strtod() and _Py_dg_dtoa() in Python/dtoa.c (which are -// required to support the short float repr introduced in Python 3.1) require -// that the floating-point unit that's being used for arithmetic operations on -// C doubles is set to use 53-bit precision. It also requires that the FPU -// rounding mode is round-half-to-even, but that's less often an issue. -// -// If your FPU isn't already set to 53-bit precision/round-half-to-even, and -// you want to make use of _Py_dg_strtod() and _Py_dg_dtoa(), then you should: -// -// #define HAVE_PY_SET_53BIT_PRECISION 1 -// -// and also give appropriate definitions for the following three macros: -// -// * _Py_SET_53BIT_PRECISION_HEADER: any variable declarations needed to -// use the two macros below. -// * _Py_SET_53BIT_PRECISION_START: store original FPU settings, and -// set FPU to 53-bit precision/round-half-to-even -// * _Py_SET_53BIT_PRECISION_END: restore original FPU settings -// -// The macros are designed to be used within a single C function: see -// Python/pystrtod.c for an example of their use. - - -// Get and set x87 control word for gcc/x86 -#ifdef HAVE_GCC_ASM_FOR_X87 -#define HAVE_PY_SET_53BIT_PRECISION 1 - -// Functions defined in Python/pymath.c -extern unsigned short _Py_get_387controlword(void); -extern void _Py_set_387controlword(unsigned short); - -#define _Py_SET_53BIT_PRECISION_HEADER \ - unsigned short old_387controlword, new_387controlword -#define _Py_SET_53BIT_PRECISION_START \ - do { \ - old_387controlword = _Py_get_387controlword(); \ - new_387controlword = (old_387controlword & ~0x0f00) | 0x0200; \ - if (new_387controlword != old_387controlword) { \ - _Py_set_387controlword(new_387controlword); \ - } \ - } while (0) -#define _Py_SET_53BIT_PRECISION_END \ - do { \ - if (new_387controlword != old_387controlword) { \ - _Py_set_387controlword(old_387controlword); \ - } \ - } while (0) -#endif - -// Get and set x87 control word for VisualStudio/x86. -// x87 is not supported in 64-bit or ARM. -#if defined(_MSC_VER) && !defined(_WIN64) && !defined(_M_ARM) -#define HAVE_PY_SET_53BIT_PRECISION 1 - -#include // __control87_2() - -#define _Py_SET_53BIT_PRECISION_HEADER \ - unsigned int old_387controlword, new_387controlword, out_387controlword - // We use the __control87_2 function to set only the x87 control word. - // The SSE control word is unaffected. -#define _Py_SET_53BIT_PRECISION_START \ - do { \ - __control87_2(0, 0, &old_387controlword, NULL); \ - new_387controlword = \ - (old_387controlword & ~(_MCW_PC | _MCW_RC)) | (_PC_53 | _RC_NEAR); \ - if (new_387controlword != old_387controlword) { \ - __control87_2(new_387controlword, _MCW_PC | _MCW_RC, \ - &out_387controlword, NULL); \ - } \ - } while (0) -#define _Py_SET_53BIT_PRECISION_END \ - do { \ - if (new_387controlword != old_387controlword) { \ - __control87_2(old_387controlword, _MCW_PC | _MCW_RC, \ - &out_387controlword, NULL); \ - } \ - } while (0) -#endif - - -// MC68881 -#ifdef HAVE_GCC_ASM_FOR_MC68881 -#define HAVE_PY_SET_53BIT_PRECISION 1 -#define _Py_SET_53BIT_PRECISION_HEADER \ - unsigned int old_fpcr, new_fpcr -#define _Py_SET_53BIT_PRECISION_START \ - do { \ - __asm__ ("fmove.l %%fpcr,%0" : "=g" (old_fpcr)); \ - /* Set double precision / round to nearest. */ \ - new_fpcr = (old_fpcr & ~0xf0) | 0x80; \ - if (new_fpcr != old_fpcr) { \ - __asm__ volatile ("fmove.l %0,%%fpcr" : : "g" (new_fpcr));\ - } \ - } while (0) -#define _Py_SET_53BIT_PRECISION_END \ - do { \ - if (new_fpcr != old_fpcr) { \ - __asm__ volatile ("fmove.l %0,%%fpcr" : : "g" (old_fpcr)); \ - } \ - } while (0) -#endif - -// Default definitions are empty -#ifndef _Py_SET_53BIT_PRECISION_HEADER -# define _Py_SET_53BIT_PRECISION_HEADER -# define _Py_SET_53BIT_PRECISION_START -# define _Py_SET_53BIT_PRECISION_END -#endif - - -//--- _PY_SHORT_FLOAT_REPR macro ------------------------------------------- - -// If we can't guarantee 53-bit precision, don't use the code -// in Python/dtoa.c, but fall back to standard code. This -// means that repr of a float will be long (17 significant digits). -// -// Realistically, there are two things that could go wrong: -// -// (1) doubles aren't IEEE 754 doubles, or -// (2) we're on x86 with the rounding precision set to 64-bits -// (extended precision), and we don't know how to change -// the rounding precision. -#if !defined(DOUBLE_IS_LITTLE_ENDIAN_IEEE754) && \ - !defined(DOUBLE_IS_BIG_ENDIAN_IEEE754) && \ - !defined(DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754) -# define _PY_SHORT_FLOAT_REPR 0 -#endif - -// Double rounding is symptomatic of use of extended precision on x86. -// If we're seeing double rounding, and we don't have any mechanism available -// for changing the FPU rounding precision, then don't use Python/dtoa.c. -#if defined(X87_DOUBLE_ROUNDING) && !defined(HAVE_PY_SET_53BIT_PRECISION) -# define _PY_SHORT_FLOAT_REPR 0 -#endif - -#ifndef _PY_SHORT_FLOAT_REPR -# define _PY_SHORT_FLOAT_REPR 1 -#endif - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYMATH_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pymem.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_pymem.h deleted file mode 100644 index b9eea9d..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pymem.h +++ /dev/null @@ -1,114 +0,0 @@ -#ifndef Py_INTERNAL_PYMEM_H -#define Py_INTERNAL_PYMEM_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pymem.h" // PyMemAllocatorName - - -/* Set the memory allocator of the specified domain to the default. - Save the old allocator into *old_alloc if it's non-NULL. - Return on success, or return -1 if the domain is unknown. */ -PyAPI_FUNC(int) _PyMem_SetDefaultAllocator( - PyMemAllocatorDomain domain, - PyMemAllocatorEx *old_alloc); - -/* Special bytes broadcast into debug memory blocks at appropriate times. - Strings of these are unlikely to be valid addresses, floats, ints or - 7-bit ASCII. - - - PYMEM_CLEANBYTE: clean (newly allocated) memory - - PYMEM_DEADBYTE dead (newly freed) memory - - PYMEM_FORBIDDENBYTE: untouchable bytes at each end of a block - - Byte patterns 0xCB, 0xDB and 0xFB have been replaced with 0xCD, 0xDD and - 0xFD to use the same values than Windows CRT debug malloc() and free(). - If modified, _PyMem_IsPtrFreed() should be updated as well. */ -#define PYMEM_CLEANBYTE 0xCD -#define PYMEM_DEADBYTE 0xDD -#define PYMEM_FORBIDDENBYTE 0xFD - -/* Heuristic checking if a pointer value is newly allocated - (uninitialized), newly freed or NULL (is equal to zero). - - The pointer is not dereferenced, only the pointer value is checked. - - The heuristic relies on the debug hooks on Python memory allocators which - fills newly allocated memory with CLEANBYTE (0xCD) and newly freed memory - with DEADBYTE (0xDD). Detect also "untouchable bytes" marked - with FORBIDDENBYTE (0xFD). */ -static inline int _PyMem_IsPtrFreed(const void *ptr) -{ - uintptr_t value = (uintptr_t)ptr; -#if SIZEOF_VOID_P == 8 - return (value == 0 - || value == (uintptr_t)0xCDCDCDCDCDCDCDCD - || value == (uintptr_t)0xDDDDDDDDDDDDDDDD - || value == (uintptr_t)0xFDFDFDFDFDFDFDFD); -#elif SIZEOF_VOID_P == 4 - return (value == 0 - || value == (uintptr_t)0xCDCDCDCD - || value == (uintptr_t)0xDDDDDDDD - || value == (uintptr_t)0xFDFDFDFD); -#else -# error "unknown pointer size" -#endif -} - -PyAPI_FUNC(int) _PyMem_GetAllocatorName( - const char *name, - PyMemAllocatorName *allocator); - -/* Configure the Python memory allocators. - Pass PYMEM_ALLOCATOR_DEFAULT to use default allocators. - PYMEM_ALLOCATOR_NOT_SET does nothing. */ -PyAPI_FUNC(int) _PyMem_SetupAllocators(PyMemAllocatorName allocator); - -struct _PyTraceMalloc_Config { - /* Module initialized? - Variable protected by the GIL */ - enum { - TRACEMALLOC_NOT_INITIALIZED, - TRACEMALLOC_INITIALIZED, - TRACEMALLOC_FINALIZED - } initialized; - - /* Is tracemalloc tracing memory allocations? - Variable protected by the GIL */ - int tracing; - - /* limit of the number of frames in a traceback, 1 by default. - Variable protected by the GIL. */ - int max_nframe; -}; - -#define _PyTraceMalloc_Config_INIT \ - {.initialized = TRACEMALLOC_NOT_INITIALIZED, \ - .tracing = 0, \ - .max_nframe = 1} - -PyAPI_DATA(struct _PyTraceMalloc_Config) _Py_tracemalloc_config; - -/* Allocate memory directly from the O/S virtual memory system, - * where supported. Otherwise fallback on malloc */ -void *_PyObject_VirtualAlloc(size_t size); -void _PyObject_VirtualFree(void *, size_t size); - -/* This function returns the number of allocated memory blocks, regardless of size */ -PyAPI_FUNC(Py_ssize_t) _Py_GetAllocatedBlocks(void); - -/* Macros */ -#ifdef WITH_PYMALLOC -// Export the symbol for the 3rd party guppy3 project -PyAPI_FUNC(int) _PyObject_DebugMallocStats(FILE *out); -#endif - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_PYMEM_H diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pystate.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_pystate.h deleted file mode 100644 index 7c5aba1..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_pystate.h +++ /dev/null @@ -1,173 +0,0 @@ -#ifndef Py_INTERNAL_PYSTATE_H -#define Py_INTERNAL_PYSTATE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_runtime.h" /* PyRuntimeState */ - - -/* Check if the current thread is the main thread. - Use _Py_IsMainInterpreter() to check if it's the main interpreter. */ -static inline int -_Py_IsMainThread(void) -{ - unsigned long thread = PyThread_get_thread_ident(); - return (thread == _PyRuntime.main_thread); -} - - -static inline PyInterpreterState * -_PyInterpreterState_Main(void) -{ - return _PyRuntime.interpreters.main; -} - -static inline int -_Py_IsMainInterpreter(PyInterpreterState *interp) -{ - return (interp == _PyInterpreterState_Main()); -} - - -static inline const PyConfig * -_Py_GetMainConfig(void) -{ - PyInterpreterState *interp = _PyInterpreterState_Main(); - if (interp == NULL) { - return NULL; - } - return _PyInterpreterState_GetConfig(interp); -} - - -/* Only handle signals on the main thread of the main interpreter. */ -static inline int -_Py_ThreadCanHandleSignals(PyInterpreterState *interp) -{ - return (_Py_IsMainThread() && _Py_IsMainInterpreter(interp)); -} - - -/* Only execute pending calls on the main thread. */ -static inline int -_Py_ThreadCanHandlePendingCalls(void) -{ - return _Py_IsMainThread(); -} - - -#ifndef NDEBUG -extern int _PyThreadState_CheckConsistency(PyThreadState *tstate); -#endif - -int _PyThreadState_MustExit(PyThreadState *tstate); - -/* Variable and macro for in-line access to current thread - and interpreter state */ - -static inline PyThreadState* -_PyRuntimeState_GetThreadState(_PyRuntimeState *runtime) -{ - return (PyThreadState*)_Py_atomic_load_relaxed(&runtime->gilstate.tstate_current); -} - -/* Get the current Python thread state. - - Efficient macro reading directly the 'gilstate.tstate_current' atomic - variable. The macro is unsafe: it does not check for error and it can - return NULL. - - The caller must hold the GIL. - - See also PyThreadState_Get() and _PyThreadState_UncheckedGet(). */ -static inline PyThreadState* -_PyThreadState_GET(void) -{ - return _PyRuntimeState_GetThreadState(&_PyRuntime); -} - -PyAPI_FUNC(void) _Py_NO_RETURN _Py_FatalError_TstateNULL(const char *func); - -static inline void -_Py_EnsureFuncTstateNotNULL(const char *func, PyThreadState *tstate) -{ - if (tstate == NULL) { - _Py_FatalError_TstateNULL(func); - } -} - -// Call Py_FatalError() if tstate is NULL -#define _Py_EnsureTstateNotNULL(tstate) \ - _Py_EnsureFuncTstateNotNULL(__func__, tstate) - - -/* Get the current interpreter state. - - The macro is unsafe: it does not check for error and it can return NULL. - - The caller must hold the GIL. - - See also _PyInterpreterState_Get() - and _PyGILState_GetInterpreterStateUnsafe(). */ -static inline PyInterpreterState* _PyInterpreterState_GET(void) { - PyThreadState *tstate = _PyThreadState_GET(); -#ifdef Py_DEBUG - _Py_EnsureTstateNotNULL(tstate); -#endif - return tstate->interp; -} - - -// PyThreadState functions - -PyAPI_FUNC(void) _PyThreadState_SetCurrent(PyThreadState *tstate); -// We keep this around exclusively for stable ABI compatibility. -PyAPI_FUNC(void) _PyThreadState_Init( - PyThreadState *tstate); -PyAPI_FUNC(void) _PyThreadState_DeleteExcept( - _PyRuntimeState *runtime, - PyThreadState *tstate); - - -static inline void -_PyThreadState_UpdateTracingState(PyThreadState *tstate) -{ - bool use_tracing = - (tstate->tracing == 0) && - (tstate->c_tracefunc != NULL || tstate->c_profilefunc != NULL); - tstate->cframe->use_tracing = (use_tracing ? 255 : 0); -} - - -/* Other */ - -PyAPI_FUNC(PyThreadState *) _PyThreadState_Swap( - struct _gilstate_runtime_state *gilstate, - PyThreadState *newts); - -PyAPI_FUNC(PyStatus) _PyInterpreterState_Enable(_PyRuntimeState *runtime); - -#ifdef HAVE_FORK -extern PyStatus _PyInterpreterState_DeleteExceptMain(_PyRuntimeState *runtime); -extern PyStatus _PyGILState_Reinit(_PyRuntimeState *runtime); -extern void _PySignal_AfterFork(void); -#endif - - -PyAPI_FUNC(int) _PyState_AddModule( - PyThreadState *tstate, - PyObject* module, - PyModuleDef* def); - - -PyAPI_FUNC(int) _PyOS_InterruptOccurred(PyThreadState *tstate); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYSTATE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_runtime.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_runtime.h deleted file mode 100644 index ae63ae7..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_runtime.h +++ /dev/null @@ -1,181 +0,0 @@ -#ifndef Py_INTERNAL_RUNTIME_H -#define Py_INTERNAL_RUNTIME_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_atomic.h" /* _Py_atomic_address */ -#include "pycore_gil.h" // struct _gil_runtime_state -#include "pycore_global_objects.h" // struct _Py_global_objects -#include "pycore_interp.h" // PyInterpreterState -#include "pycore_unicodeobject.h" // struct _Py_unicode_runtime_ids - - -/* ceval state */ - -struct _ceval_runtime_state { - /* Request for checking signals. It is shared by all interpreters (see - bpo-40513). Any thread of any interpreter can receive a signal, but only - the main thread of the main interpreter can handle signals: see - _Py_ThreadCanHandleSignals(). */ - _Py_atomic_int signals_pending; - struct _gil_runtime_state gil; -}; - -/* GIL state */ - -struct _gilstate_runtime_state { - /* bpo-26558: Flag to disable PyGILState_Check(). - If set to non-zero, PyGILState_Check() always return 1. */ - int check_enabled; - /* Assuming the current thread holds the GIL, this is the - PyThreadState for the current thread. */ - _Py_atomic_address tstate_current; - /* The single PyInterpreterState used by this process' - GILState implementation - */ - /* TODO: Given interp_main, it may be possible to kill this ref */ - PyInterpreterState *autoInterpreterState; - Py_tss_t autoTSSkey; -}; - -/* Runtime audit hook state */ - -typedef struct _Py_AuditHookEntry { - struct _Py_AuditHookEntry *next; - Py_AuditHookFunction hookCFunction; - void *userData; -} _Py_AuditHookEntry; - -/* Full Python runtime state */ - -/* _PyRuntimeState holds the global state for the CPython runtime. - That data is exposed in the internal API as a static variable (_PyRuntime). - */ -typedef struct pyruntimestate { - /* Has been initialized to a safe state. - - In order to be effective, this must be set to 0 during or right - after allocation. */ - int _initialized; - - /* Is running Py_PreInitialize()? */ - int preinitializing; - - /* Is Python preinitialized? Set to 1 by Py_PreInitialize() */ - int preinitialized; - - /* Is Python core initialized? Set to 1 by _Py_InitializeCore() */ - int core_initialized; - - /* Is Python fully initialized? Set to 1 by Py_Initialize() */ - int initialized; - - /* Set by Py_FinalizeEx(). Only reset to NULL if Py_Initialize() - is called again. - - Use _PyRuntimeState_GetFinalizing() and _PyRuntimeState_SetFinalizing() - to access it, don't access it directly. */ - _Py_atomic_address _finalizing; - - struct pyinterpreters { - PyThread_type_lock mutex; - /* The linked list of interpreters, newest first. */ - PyInterpreterState *head; - /* The runtime's initial interpreter, which has a special role - in the operation of the runtime. It is also often the only - interpreter. */ - PyInterpreterState *main; - /* _next_interp_id is an auto-numbered sequence of small - integers. It gets initialized in _PyInterpreterState_Init(), - which is called in Py_Initialize(), and used in - PyInterpreterState_New(). A negative interpreter ID - indicates an error occurred. The main interpreter will - always have an ID of 0. Overflow results in a RuntimeError. - If that becomes a problem later then we can adjust, e.g. by - using a Python int. */ - int64_t next_id; - } interpreters; - // XXX Remove this field once we have a tp_* slot. - struct _xidregistry { - PyThread_type_lock mutex; - struct _xidregitem *head; - } xidregistry; - - unsigned long main_thread; - -#define NEXITFUNCS 32 - void (*exitfuncs[NEXITFUNCS])(void); - int nexitfuncs; - - struct _ceval_runtime_state ceval; - struct _gilstate_runtime_state gilstate; - - PyPreConfig preconfig; - - // Audit values must be preserved when Py_Initialize()/Py_Finalize() - // is called multiple times. - Py_OpenCodeHookFunction open_code_hook; - void *open_code_userdata; - _Py_AuditHookEntry *audit_hook_head; - - struct _Py_unicode_runtime_ids unicode_ids; - - /* All the objects that are shared by the runtime's interpreters. */ - struct _Py_global_objects global_objects; - - /* The following fields are here to avoid allocation during init. - The data is exposed through _PyRuntimeState pointer fields. - These fields should not be accessed directly outside of init. - - All other _PyRuntimeState pointer fields are populated when - needed and default to NULL. - - For now there are some exceptions to that rule, which require - allocation during init. These will be addressed on a case-by-case - basis. Most notably, we don't pre-allocated the several mutex - (PyThread_type_lock) fields, because on Windows we only ever get - a pointer type. - */ - - /* PyInterpreterState.interpreters.main */ - PyInterpreterState _main_interpreter; -} _PyRuntimeState; - - -/* other API */ - -PyAPI_DATA(_PyRuntimeState) _PyRuntime; - -PyAPI_FUNC(PyStatus) _PyRuntimeState_Init(_PyRuntimeState *runtime); -PyAPI_FUNC(void) _PyRuntimeState_Fini(_PyRuntimeState *runtime); - -#ifdef HAVE_FORK -extern PyStatus _PyRuntimeState_ReInitThreads(_PyRuntimeState *runtime); -#endif - -/* Initialize _PyRuntimeState. - Return NULL on success, or return an error message on failure. */ -PyAPI_FUNC(PyStatus) _PyRuntime_Initialize(void); - -PyAPI_FUNC(void) _PyRuntime_Finalize(void); - - -static inline PyThreadState* -_PyRuntimeState_GetFinalizing(_PyRuntimeState *runtime) { - return (PyThreadState*)_Py_atomic_load_relaxed(&runtime->_finalizing); -} - -static inline void -_PyRuntimeState_SetFinalizing(_PyRuntimeState *runtime, PyThreadState *tstate) { - _Py_atomic_store_relaxed(&runtime->_finalizing, (uintptr_t)tstate); -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_RUNTIME_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_runtime_init.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_runtime_init.h deleted file mode 100644 index 13eae1e..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_runtime_init.h +++ /dev/null @@ -1,1256 +0,0 @@ -#ifndef Py_INTERNAL_RUNTIME_INIT_H -#define Py_INTERNAL_RUNTIME_INIT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_object.h" - - -/* The static initializers defined here should only be used - in the runtime init code (in pystate.c and pylifecycle.c). */ - - -#define _PyRuntimeState_INIT \ - { \ - .gilstate = { \ - .check_enabled = 1, \ - /* A TSS key must be initialized with Py_tss_NEEDS_INIT \ - in accordance with the specification. */ \ - .autoTSSkey = Py_tss_NEEDS_INIT, \ - }, \ - .interpreters = { \ - /* This prevents interpreters from getting created \ - until _PyInterpreterState_Enable() is called. */ \ - .next_id = -1, \ - }, \ - .global_objects = _Py_global_objects_INIT, \ - ._main_interpreter = _PyInterpreterState_INIT, \ - } - -#ifdef HAVE_DLOPEN -# include -# if HAVE_DECL_RTLD_NOW -# define _Py_DLOPEN_FLAGS RTLD_NOW -# else -# define _Py_DLOPEN_FLAGS RTLD_LAZY -# endif -# define DLOPENFLAGS_INIT .dlopenflags = _Py_DLOPEN_FLAGS, -#else -# define _Py_DLOPEN_FLAGS 0 -# define DLOPENFLAGS_INIT -#endif - -#define _PyInterpreterState_INIT \ - { \ - ._static = 1, \ - .id_refcount = -1, \ - DLOPENFLAGS_INIT \ - .ceval = { \ - .recursion_limit = Py_DEFAULT_RECURSION_LIMIT, \ - }, \ - .gc = { \ - .enabled = 1, \ - .generations = { \ - /* .head is set in _PyGC_InitState(). */ \ - { .threshold = 700, }, \ - { .threshold = 10, }, \ - { .threshold = 10, }, \ - }, \ - }, \ - ._initial_thread = _PyThreadState_INIT, \ - } - -#define _PyThreadState_INIT \ - { \ - ._static = 1, \ - .recursion_limit = Py_DEFAULT_RECURSION_LIMIT, \ - .context_ver = 1, \ - } - - -// global objects - -#define _PyLong_DIGIT_INIT(val) \ - { \ - _PyVarObject_IMMORTAL_INIT(&PyLong_Type, \ - ((val) == 0 ? 0 : ((val) > 0 ? 1 : -1))), \ - .ob_digit = { ((val) >= 0 ? (val) : -(val)) }, \ - } - -#define _PyBytes_SIMPLE_INIT(CH, LEN) \ - { \ - _PyVarObject_IMMORTAL_INIT(&PyBytes_Type, LEN), \ - .ob_shash = -1, \ - .ob_sval = { CH }, \ - } -#define _PyBytes_CHAR_INIT(CH) \ - { \ - _PyBytes_SIMPLE_INIT(CH, 1) \ - } - -#define _PyUnicode_ASCII_BASE_INIT(LITERAL, ASCII) \ - { \ - .ob_base = _PyObject_IMMORTAL_INIT(&PyUnicode_Type), \ - .length = sizeof(LITERAL) - 1, \ - .hash = -1, \ - .state = { \ - .kind = 1, \ - .compact = 1, \ - .ascii = ASCII, \ - .ready = 1, \ - }, \ - } -#define _PyASCIIObject_INIT(LITERAL) \ - { \ - ._ascii = _PyUnicode_ASCII_BASE_INIT(LITERAL, 1), \ - ._data = LITERAL \ - } -#define INIT_STR(NAME, LITERAL) \ - ._ ## NAME = _PyASCIIObject_INIT(LITERAL) -#define INIT_ID(NAME) \ - ._ ## NAME = _PyASCIIObject_INIT(#NAME) -#define _PyUnicode_LATIN1_INIT(LITERAL) \ - { \ - ._latin1 = { \ - ._base = _PyUnicode_ASCII_BASE_INIT(LITERAL, 0), \ - }, \ - ._data = LITERAL, \ - } - -/* The following is auto-generated by Tools/scripts/generate_global_objects.py. */ -#define _Py_global_objects_INIT { \ - .singletons = { \ - .small_ints = { \ - _PyLong_DIGIT_INIT(-5), \ - _PyLong_DIGIT_INIT(-4), \ - _PyLong_DIGIT_INIT(-3), \ - _PyLong_DIGIT_INIT(-2), \ - _PyLong_DIGIT_INIT(-1), \ - _PyLong_DIGIT_INIT(0), \ - _PyLong_DIGIT_INIT(1), \ - _PyLong_DIGIT_INIT(2), \ - _PyLong_DIGIT_INIT(3), \ - _PyLong_DIGIT_INIT(4), \ - _PyLong_DIGIT_INIT(5), \ - _PyLong_DIGIT_INIT(6), \ - _PyLong_DIGIT_INIT(7), \ - _PyLong_DIGIT_INIT(8), \ - _PyLong_DIGIT_INIT(9), \ - _PyLong_DIGIT_INIT(10), \ - _PyLong_DIGIT_INIT(11), \ - _PyLong_DIGIT_INIT(12), \ - _PyLong_DIGIT_INIT(13), \ - _PyLong_DIGIT_INIT(14), \ - _PyLong_DIGIT_INIT(15), \ - _PyLong_DIGIT_INIT(16), \ - _PyLong_DIGIT_INIT(17), \ - _PyLong_DIGIT_INIT(18), \ - _PyLong_DIGIT_INIT(19), \ - _PyLong_DIGIT_INIT(20), \ - _PyLong_DIGIT_INIT(21), \ - _PyLong_DIGIT_INIT(22), \ - _PyLong_DIGIT_INIT(23), \ - _PyLong_DIGIT_INIT(24), \ - _PyLong_DIGIT_INIT(25), \ - _PyLong_DIGIT_INIT(26), \ - _PyLong_DIGIT_INIT(27), \ - _PyLong_DIGIT_INIT(28), \ - _PyLong_DIGIT_INIT(29), \ - _PyLong_DIGIT_INIT(30), \ - _PyLong_DIGIT_INIT(31), \ - _PyLong_DIGIT_INIT(32), \ - _PyLong_DIGIT_INIT(33), \ - _PyLong_DIGIT_INIT(34), \ - _PyLong_DIGIT_INIT(35), \ - _PyLong_DIGIT_INIT(36), \ - _PyLong_DIGIT_INIT(37), \ - _PyLong_DIGIT_INIT(38), \ - _PyLong_DIGIT_INIT(39), \ - _PyLong_DIGIT_INIT(40), \ - _PyLong_DIGIT_INIT(41), \ - _PyLong_DIGIT_INIT(42), \ - _PyLong_DIGIT_INIT(43), \ - _PyLong_DIGIT_INIT(44), \ - _PyLong_DIGIT_INIT(45), \ - _PyLong_DIGIT_INIT(46), \ - _PyLong_DIGIT_INIT(47), \ - _PyLong_DIGIT_INIT(48), \ - _PyLong_DIGIT_INIT(49), \ - _PyLong_DIGIT_INIT(50), \ - _PyLong_DIGIT_INIT(51), \ - _PyLong_DIGIT_INIT(52), \ - _PyLong_DIGIT_INIT(53), \ - _PyLong_DIGIT_INIT(54), \ - _PyLong_DIGIT_INIT(55), \ - _PyLong_DIGIT_INIT(56), \ - _PyLong_DIGIT_INIT(57), \ - _PyLong_DIGIT_INIT(58), \ - _PyLong_DIGIT_INIT(59), \ - _PyLong_DIGIT_INIT(60), \ - _PyLong_DIGIT_INIT(61), \ - _PyLong_DIGIT_INIT(62), \ - _PyLong_DIGIT_INIT(63), \ - _PyLong_DIGIT_INIT(64), \ - _PyLong_DIGIT_INIT(65), \ - _PyLong_DIGIT_INIT(66), \ - _PyLong_DIGIT_INIT(67), \ - _PyLong_DIGIT_INIT(68), \ - _PyLong_DIGIT_INIT(69), \ - _PyLong_DIGIT_INIT(70), \ - _PyLong_DIGIT_INIT(71), \ - _PyLong_DIGIT_INIT(72), \ - _PyLong_DIGIT_INIT(73), \ - _PyLong_DIGIT_INIT(74), \ - _PyLong_DIGIT_INIT(75), \ - _PyLong_DIGIT_INIT(76), \ - _PyLong_DIGIT_INIT(77), \ - _PyLong_DIGIT_INIT(78), \ - _PyLong_DIGIT_INIT(79), \ - _PyLong_DIGIT_INIT(80), \ - _PyLong_DIGIT_INIT(81), \ - _PyLong_DIGIT_INIT(82), \ - _PyLong_DIGIT_INIT(83), \ - _PyLong_DIGIT_INIT(84), \ - _PyLong_DIGIT_INIT(85), \ - _PyLong_DIGIT_INIT(86), \ - _PyLong_DIGIT_INIT(87), \ - _PyLong_DIGIT_INIT(88), \ - _PyLong_DIGIT_INIT(89), \ - _PyLong_DIGIT_INIT(90), \ - _PyLong_DIGIT_INIT(91), \ - _PyLong_DIGIT_INIT(92), \ - _PyLong_DIGIT_INIT(93), \ - _PyLong_DIGIT_INIT(94), \ - _PyLong_DIGIT_INIT(95), \ - _PyLong_DIGIT_INIT(96), \ - _PyLong_DIGIT_INIT(97), \ - _PyLong_DIGIT_INIT(98), \ - _PyLong_DIGIT_INIT(99), \ - _PyLong_DIGIT_INIT(100), \ - _PyLong_DIGIT_INIT(101), \ - _PyLong_DIGIT_INIT(102), \ - _PyLong_DIGIT_INIT(103), \ - _PyLong_DIGIT_INIT(104), \ - _PyLong_DIGIT_INIT(105), \ - _PyLong_DIGIT_INIT(106), \ - _PyLong_DIGIT_INIT(107), \ - _PyLong_DIGIT_INIT(108), \ - _PyLong_DIGIT_INIT(109), \ - _PyLong_DIGIT_INIT(110), \ - _PyLong_DIGIT_INIT(111), \ - _PyLong_DIGIT_INIT(112), \ - _PyLong_DIGIT_INIT(113), \ - _PyLong_DIGIT_INIT(114), \ - _PyLong_DIGIT_INIT(115), \ - _PyLong_DIGIT_INIT(116), \ - _PyLong_DIGIT_INIT(117), \ - _PyLong_DIGIT_INIT(118), \ - _PyLong_DIGIT_INIT(119), \ - _PyLong_DIGIT_INIT(120), \ - _PyLong_DIGIT_INIT(121), \ - _PyLong_DIGIT_INIT(122), \ - _PyLong_DIGIT_INIT(123), \ - _PyLong_DIGIT_INIT(124), \ - _PyLong_DIGIT_INIT(125), \ - _PyLong_DIGIT_INIT(126), \ - _PyLong_DIGIT_INIT(127), \ - _PyLong_DIGIT_INIT(128), \ - _PyLong_DIGIT_INIT(129), \ - _PyLong_DIGIT_INIT(130), \ - _PyLong_DIGIT_INIT(131), \ - _PyLong_DIGIT_INIT(132), \ - _PyLong_DIGIT_INIT(133), \ - _PyLong_DIGIT_INIT(134), \ - _PyLong_DIGIT_INIT(135), \ - _PyLong_DIGIT_INIT(136), \ - _PyLong_DIGIT_INIT(137), \ - _PyLong_DIGIT_INIT(138), \ - _PyLong_DIGIT_INIT(139), \ - _PyLong_DIGIT_INIT(140), \ - _PyLong_DIGIT_INIT(141), \ - _PyLong_DIGIT_INIT(142), \ - _PyLong_DIGIT_INIT(143), \ - _PyLong_DIGIT_INIT(144), \ - _PyLong_DIGIT_INIT(145), \ - _PyLong_DIGIT_INIT(146), \ - _PyLong_DIGIT_INIT(147), \ - _PyLong_DIGIT_INIT(148), \ - _PyLong_DIGIT_INIT(149), \ - _PyLong_DIGIT_INIT(150), \ - _PyLong_DIGIT_INIT(151), \ - _PyLong_DIGIT_INIT(152), \ - _PyLong_DIGIT_INIT(153), \ - _PyLong_DIGIT_INIT(154), \ - _PyLong_DIGIT_INIT(155), \ - _PyLong_DIGIT_INIT(156), \ - _PyLong_DIGIT_INIT(157), \ - _PyLong_DIGIT_INIT(158), \ - _PyLong_DIGIT_INIT(159), \ - _PyLong_DIGIT_INIT(160), \ - _PyLong_DIGIT_INIT(161), \ - _PyLong_DIGIT_INIT(162), \ - _PyLong_DIGIT_INIT(163), \ - _PyLong_DIGIT_INIT(164), \ - _PyLong_DIGIT_INIT(165), \ - _PyLong_DIGIT_INIT(166), \ - _PyLong_DIGIT_INIT(167), \ - _PyLong_DIGIT_INIT(168), \ - _PyLong_DIGIT_INIT(169), \ - _PyLong_DIGIT_INIT(170), \ - _PyLong_DIGIT_INIT(171), \ - _PyLong_DIGIT_INIT(172), \ - _PyLong_DIGIT_INIT(173), \ - _PyLong_DIGIT_INIT(174), \ - _PyLong_DIGIT_INIT(175), \ - _PyLong_DIGIT_INIT(176), \ - _PyLong_DIGIT_INIT(177), \ - _PyLong_DIGIT_INIT(178), \ - _PyLong_DIGIT_INIT(179), \ - _PyLong_DIGIT_INIT(180), \ - _PyLong_DIGIT_INIT(181), \ - _PyLong_DIGIT_INIT(182), \ - _PyLong_DIGIT_INIT(183), \ - _PyLong_DIGIT_INIT(184), \ - _PyLong_DIGIT_INIT(185), \ - _PyLong_DIGIT_INIT(186), \ - _PyLong_DIGIT_INIT(187), \ - _PyLong_DIGIT_INIT(188), \ - _PyLong_DIGIT_INIT(189), \ - _PyLong_DIGIT_INIT(190), \ - _PyLong_DIGIT_INIT(191), \ - _PyLong_DIGIT_INIT(192), \ - _PyLong_DIGIT_INIT(193), \ - _PyLong_DIGIT_INIT(194), \ - _PyLong_DIGIT_INIT(195), \ - _PyLong_DIGIT_INIT(196), \ - _PyLong_DIGIT_INIT(197), \ - _PyLong_DIGIT_INIT(198), \ - _PyLong_DIGIT_INIT(199), \ - _PyLong_DIGIT_INIT(200), \ - _PyLong_DIGIT_INIT(201), \ - _PyLong_DIGIT_INIT(202), \ - _PyLong_DIGIT_INIT(203), \ - _PyLong_DIGIT_INIT(204), \ - _PyLong_DIGIT_INIT(205), \ - _PyLong_DIGIT_INIT(206), \ - _PyLong_DIGIT_INIT(207), \ - _PyLong_DIGIT_INIT(208), \ - _PyLong_DIGIT_INIT(209), \ - _PyLong_DIGIT_INIT(210), \ - _PyLong_DIGIT_INIT(211), \ - _PyLong_DIGIT_INIT(212), \ - _PyLong_DIGIT_INIT(213), \ - _PyLong_DIGIT_INIT(214), \ - _PyLong_DIGIT_INIT(215), \ - _PyLong_DIGIT_INIT(216), \ - _PyLong_DIGIT_INIT(217), \ - _PyLong_DIGIT_INIT(218), \ - _PyLong_DIGIT_INIT(219), \ - _PyLong_DIGIT_INIT(220), \ - _PyLong_DIGIT_INIT(221), \ - _PyLong_DIGIT_INIT(222), \ - _PyLong_DIGIT_INIT(223), \ - _PyLong_DIGIT_INIT(224), \ - _PyLong_DIGIT_INIT(225), \ - _PyLong_DIGIT_INIT(226), \ - _PyLong_DIGIT_INIT(227), \ - _PyLong_DIGIT_INIT(228), \ - _PyLong_DIGIT_INIT(229), \ - _PyLong_DIGIT_INIT(230), \ - _PyLong_DIGIT_INIT(231), \ - _PyLong_DIGIT_INIT(232), \ - _PyLong_DIGIT_INIT(233), \ - _PyLong_DIGIT_INIT(234), \ - _PyLong_DIGIT_INIT(235), \ - _PyLong_DIGIT_INIT(236), \ - _PyLong_DIGIT_INIT(237), \ - _PyLong_DIGIT_INIT(238), \ - _PyLong_DIGIT_INIT(239), \ - _PyLong_DIGIT_INIT(240), \ - _PyLong_DIGIT_INIT(241), \ - _PyLong_DIGIT_INIT(242), \ - _PyLong_DIGIT_INIT(243), \ - _PyLong_DIGIT_INIT(244), \ - _PyLong_DIGIT_INIT(245), \ - _PyLong_DIGIT_INIT(246), \ - _PyLong_DIGIT_INIT(247), \ - _PyLong_DIGIT_INIT(248), \ - _PyLong_DIGIT_INIT(249), \ - _PyLong_DIGIT_INIT(250), \ - _PyLong_DIGIT_INIT(251), \ - _PyLong_DIGIT_INIT(252), \ - _PyLong_DIGIT_INIT(253), \ - _PyLong_DIGIT_INIT(254), \ - _PyLong_DIGIT_INIT(255), \ - _PyLong_DIGIT_INIT(256), \ - }, \ - \ - .bytes_empty = _PyBytes_SIMPLE_INIT(0, 0), \ - .bytes_characters = { \ - _PyBytes_CHAR_INIT(0), \ - _PyBytes_CHAR_INIT(1), \ - _PyBytes_CHAR_INIT(2), \ - _PyBytes_CHAR_INIT(3), \ - _PyBytes_CHAR_INIT(4), \ - _PyBytes_CHAR_INIT(5), \ - _PyBytes_CHAR_INIT(6), \ - _PyBytes_CHAR_INIT(7), \ - _PyBytes_CHAR_INIT(8), \ - _PyBytes_CHAR_INIT(9), \ - _PyBytes_CHAR_INIT(10), \ - _PyBytes_CHAR_INIT(11), \ - _PyBytes_CHAR_INIT(12), \ - _PyBytes_CHAR_INIT(13), \ - _PyBytes_CHAR_INIT(14), \ - _PyBytes_CHAR_INIT(15), \ - _PyBytes_CHAR_INIT(16), \ - _PyBytes_CHAR_INIT(17), \ - _PyBytes_CHAR_INIT(18), \ - _PyBytes_CHAR_INIT(19), \ - _PyBytes_CHAR_INIT(20), \ - _PyBytes_CHAR_INIT(21), \ - _PyBytes_CHAR_INIT(22), \ - _PyBytes_CHAR_INIT(23), \ - _PyBytes_CHAR_INIT(24), \ - _PyBytes_CHAR_INIT(25), \ - _PyBytes_CHAR_INIT(26), \ - _PyBytes_CHAR_INIT(27), \ - _PyBytes_CHAR_INIT(28), \ - _PyBytes_CHAR_INIT(29), \ - _PyBytes_CHAR_INIT(30), \ - _PyBytes_CHAR_INIT(31), \ - _PyBytes_CHAR_INIT(32), \ - _PyBytes_CHAR_INIT(33), \ - _PyBytes_CHAR_INIT(34), \ - _PyBytes_CHAR_INIT(35), \ - _PyBytes_CHAR_INIT(36), \ - _PyBytes_CHAR_INIT(37), \ - _PyBytes_CHAR_INIT(38), \ - _PyBytes_CHAR_INIT(39), \ - _PyBytes_CHAR_INIT(40), \ - _PyBytes_CHAR_INIT(41), \ - _PyBytes_CHAR_INIT(42), \ - _PyBytes_CHAR_INIT(43), \ - _PyBytes_CHAR_INIT(44), \ - _PyBytes_CHAR_INIT(45), \ - _PyBytes_CHAR_INIT(46), \ - _PyBytes_CHAR_INIT(47), \ - _PyBytes_CHAR_INIT(48), \ - _PyBytes_CHAR_INIT(49), \ - _PyBytes_CHAR_INIT(50), \ - _PyBytes_CHAR_INIT(51), \ - _PyBytes_CHAR_INIT(52), \ - _PyBytes_CHAR_INIT(53), \ - _PyBytes_CHAR_INIT(54), \ - _PyBytes_CHAR_INIT(55), \ - _PyBytes_CHAR_INIT(56), \ - _PyBytes_CHAR_INIT(57), \ - _PyBytes_CHAR_INIT(58), \ - _PyBytes_CHAR_INIT(59), \ - _PyBytes_CHAR_INIT(60), \ - _PyBytes_CHAR_INIT(61), \ - _PyBytes_CHAR_INIT(62), \ - _PyBytes_CHAR_INIT(63), \ - _PyBytes_CHAR_INIT(64), \ - _PyBytes_CHAR_INIT(65), \ - _PyBytes_CHAR_INIT(66), \ - _PyBytes_CHAR_INIT(67), \ - _PyBytes_CHAR_INIT(68), \ - _PyBytes_CHAR_INIT(69), \ - _PyBytes_CHAR_INIT(70), \ - _PyBytes_CHAR_INIT(71), \ - _PyBytes_CHAR_INIT(72), \ - _PyBytes_CHAR_INIT(73), \ - _PyBytes_CHAR_INIT(74), \ - _PyBytes_CHAR_INIT(75), \ - _PyBytes_CHAR_INIT(76), \ - _PyBytes_CHAR_INIT(77), \ - _PyBytes_CHAR_INIT(78), \ - _PyBytes_CHAR_INIT(79), \ - _PyBytes_CHAR_INIT(80), \ - _PyBytes_CHAR_INIT(81), \ - _PyBytes_CHAR_INIT(82), \ - _PyBytes_CHAR_INIT(83), \ - _PyBytes_CHAR_INIT(84), \ - _PyBytes_CHAR_INIT(85), \ - _PyBytes_CHAR_INIT(86), \ - _PyBytes_CHAR_INIT(87), \ - _PyBytes_CHAR_INIT(88), \ - _PyBytes_CHAR_INIT(89), \ - _PyBytes_CHAR_INIT(90), \ - _PyBytes_CHAR_INIT(91), \ - _PyBytes_CHAR_INIT(92), \ - _PyBytes_CHAR_INIT(93), \ - _PyBytes_CHAR_INIT(94), \ - _PyBytes_CHAR_INIT(95), \ - _PyBytes_CHAR_INIT(96), \ - _PyBytes_CHAR_INIT(97), \ - _PyBytes_CHAR_INIT(98), \ - _PyBytes_CHAR_INIT(99), \ - _PyBytes_CHAR_INIT(100), \ - _PyBytes_CHAR_INIT(101), \ - _PyBytes_CHAR_INIT(102), \ - _PyBytes_CHAR_INIT(103), \ - _PyBytes_CHAR_INIT(104), \ - _PyBytes_CHAR_INIT(105), \ - _PyBytes_CHAR_INIT(106), \ - _PyBytes_CHAR_INIT(107), \ - _PyBytes_CHAR_INIT(108), \ - _PyBytes_CHAR_INIT(109), \ - _PyBytes_CHAR_INIT(110), \ - _PyBytes_CHAR_INIT(111), \ - _PyBytes_CHAR_INIT(112), \ - _PyBytes_CHAR_INIT(113), \ - _PyBytes_CHAR_INIT(114), \ - _PyBytes_CHAR_INIT(115), \ - _PyBytes_CHAR_INIT(116), \ - _PyBytes_CHAR_INIT(117), \ - _PyBytes_CHAR_INIT(118), \ - _PyBytes_CHAR_INIT(119), \ - _PyBytes_CHAR_INIT(120), \ - _PyBytes_CHAR_INIT(121), \ - _PyBytes_CHAR_INIT(122), \ - _PyBytes_CHAR_INIT(123), \ - _PyBytes_CHAR_INIT(124), \ - _PyBytes_CHAR_INIT(125), \ - _PyBytes_CHAR_INIT(126), \ - _PyBytes_CHAR_INIT(127), \ - _PyBytes_CHAR_INIT(128), \ - _PyBytes_CHAR_INIT(129), \ - _PyBytes_CHAR_INIT(130), \ - _PyBytes_CHAR_INIT(131), \ - _PyBytes_CHAR_INIT(132), \ - _PyBytes_CHAR_INIT(133), \ - _PyBytes_CHAR_INIT(134), \ - _PyBytes_CHAR_INIT(135), \ - _PyBytes_CHAR_INIT(136), \ - _PyBytes_CHAR_INIT(137), \ - _PyBytes_CHAR_INIT(138), \ - _PyBytes_CHAR_INIT(139), \ - _PyBytes_CHAR_INIT(140), \ - _PyBytes_CHAR_INIT(141), \ - _PyBytes_CHAR_INIT(142), \ - _PyBytes_CHAR_INIT(143), \ - _PyBytes_CHAR_INIT(144), \ - _PyBytes_CHAR_INIT(145), \ - _PyBytes_CHAR_INIT(146), \ - _PyBytes_CHAR_INIT(147), \ - _PyBytes_CHAR_INIT(148), \ - _PyBytes_CHAR_INIT(149), \ - _PyBytes_CHAR_INIT(150), \ - _PyBytes_CHAR_INIT(151), \ - _PyBytes_CHAR_INIT(152), \ - _PyBytes_CHAR_INIT(153), \ - _PyBytes_CHAR_INIT(154), \ - _PyBytes_CHAR_INIT(155), \ - _PyBytes_CHAR_INIT(156), \ - _PyBytes_CHAR_INIT(157), \ - _PyBytes_CHAR_INIT(158), \ - _PyBytes_CHAR_INIT(159), \ - _PyBytes_CHAR_INIT(160), \ - _PyBytes_CHAR_INIT(161), \ - _PyBytes_CHAR_INIT(162), \ - _PyBytes_CHAR_INIT(163), \ - _PyBytes_CHAR_INIT(164), \ - _PyBytes_CHAR_INIT(165), \ - _PyBytes_CHAR_INIT(166), \ - _PyBytes_CHAR_INIT(167), \ - _PyBytes_CHAR_INIT(168), \ - _PyBytes_CHAR_INIT(169), \ - _PyBytes_CHAR_INIT(170), \ - _PyBytes_CHAR_INIT(171), \ - _PyBytes_CHAR_INIT(172), \ - _PyBytes_CHAR_INIT(173), \ - _PyBytes_CHAR_INIT(174), \ - _PyBytes_CHAR_INIT(175), \ - _PyBytes_CHAR_INIT(176), \ - _PyBytes_CHAR_INIT(177), \ - _PyBytes_CHAR_INIT(178), \ - _PyBytes_CHAR_INIT(179), \ - _PyBytes_CHAR_INIT(180), \ - _PyBytes_CHAR_INIT(181), \ - _PyBytes_CHAR_INIT(182), \ - _PyBytes_CHAR_INIT(183), \ - _PyBytes_CHAR_INIT(184), \ - _PyBytes_CHAR_INIT(185), \ - _PyBytes_CHAR_INIT(186), \ - _PyBytes_CHAR_INIT(187), \ - _PyBytes_CHAR_INIT(188), \ - _PyBytes_CHAR_INIT(189), \ - _PyBytes_CHAR_INIT(190), \ - _PyBytes_CHAR_INIT(191), \ - _PyBytes_CHAR_INIT(192), \ - _PyBytes_CHAR_INIT(193), \ - _PyBytes_CHAR_INIT(194), \ - _PyBytes_CHAR_INIT(195), \ - _PyBytes_CHAR_INIT(196), \ - _PyBytes_CHAR_INIT(197), \ - _PyBytes_CHAR_INIT(198), \ - _PyBytes_CHAR_INIT(199), \ - _PyBytes_CHAR_INIT(200), \ - _PyBytes_CHAR_INIT(201), \ - _PyBytes_CHAR_INIT(202), \ - _PyBytes_CHAR_INIT(203), \ - _PyBytes_CHAR_INIT(204), \ - _PyBytes_CHAR_INIT(205), \ - _PyBytes_CHAR_INIT(206), \ - _PyBytes_CHAR_INIT(207), \ - _PyBytes_CHAR_INIT(208), \ - _PyBytes_CHAR_INIT(209), \ - _PyBytes_CHAR_INIT(210), \ - _PyBytes_CHAR_INIT(211), \ - _PyBytes_CHAR_INIT(212), \ - _PyBytes_CHAR_INIT(213), \ - _PyBytes_CHAR_INIT(214), \ - _PyBytes_CHAR_INIT(215), \ - _PyBytes_CHAR_INIT(216), \ - _PyBytes_CHAR_INIT(217), \ - _PyBytes_CHAR_INIT(218), \ - _PyBytes_CHAR_INIT(219), \ - _PyBytes_CHAR_INIT(220), \ - _PyBytes_CHAR_INIT(221), \ - _PyBytes_CHAR_INIT(222), \ - _PyBytes_CHAR_INIT(223), \ - _PyBytes_CHAR_INIT(224), \ - _PyBytes_CHAR_INIT(225), \ - _PyBytes_CHAR_INIT(226), \ - _PyBytes_CHAR_INIT(227), \ - _PyBytes_CHAR_INIT(228), \ - _PyBytes_CHAR_INIT(229), \ - _PyBytes_CHAR_INIT(230), \ - _PyBytes_CHAR_INIT(231), \ - _PyBytes_CHAR_INIT(232), \ - _PyBytes_CHAR_INIT(233), \ - _PyBytes_CHAR_INIT(234), \ - _PyBytes_CHAR_INIT(235), \ - _PyBytes_CHAR_INIT(236), \ - _PyBytes_CHAR_INIT(237), \ - _PyBytes_CHAR_INIT(238), \ - _PyBytes_CHAR_INIT(239), \ - _PyBytes_CHAR_INIT(240), \ - _PyBytes_CHAR_INIT(241), \ - _PyBytes_CHAR_INIT(242), \ - _PyBytes_CHAR_INIT(243), \ - _PyBytes_CHAR_INIT(244), \ - _PyBytes_CHAR_INIT(245), \ - _PyBytes_CHAR_INIT(246), \ - _PyBytes_CHAR_INIT(247), \ - _PyBytes_CHAR_INIT(248), \ - _PyBytes_CHAR_INIT(249), \ - _PyBytes_CHAR_INIT(250), \ - _PyBytes_CHAR_INIT(251), \ - _PyBytes_CHAR_INIT(252), \ - _PyBytes_CHAR_INIT(253), \ - _PyBytes_CHAR_INIT(254), \ - _PyBytes_CHAR_INIT(255), \ - }, \ - \ - .strings = { \ - .literals = { \ - INIT_STR(anon_dictcomp, ""), \ - INIT_STR(anon_genexpr, ""), \ - INIT_STR(anon_lambda, ""), \ - INIT_STR(anon_listcomp, ""), \ - INIT_STR(anon_module, ""), \ - INIT_STR(anon_setcomp, ""), \ - INIT_STR(anon_string, ""), \ - INIT_STR(anon_unknown, ""), \ - INIT_STR(close_br, "}"), \ - INIT_STR(comma_sep, ", "), \ - INIT_STR(dbl_close_br, "}}"), \ - INIT_STR(dbl_open_br, "{{"), \ - INIT_STR(dbl_percent, "%%"), \ - INIT_STR(dot, "."), \ - INIT_STR(dot_locals, "."), \ - INIT_STR(empty, ""), \ - INIT_STR(list_err, "list index out of range"), \ - INIT_STR(newline, "\n"), \ - INIT_STR(open_br, "{"), \ - INIT_STR(percent, "%"), \ - INIT_STR(utf_8, "utf-8"), \ - }, \ - .identifiers = { \ - INIT_ID(False), \ - INIT_ID(Py_Repr), \ - INIT_ID(TextIOWrapper), \ - INIT_ID(True), \ - INIT_ID(WarningMessage), \ - INIT_ID(_), \ - INIT_ID(__IOBase_closed), \ - INIT_ID(__abc_tpflags__), \ - INIT_ID(__abs__), \ - INIT_ID(__abstractmethods__), \ - INIT_ID(__add__), \ - INIT_ID(__aenter__), \ - INIT_ID(__aexit__), \ - INIT_ID(__aiter__), \ - INIT_ID(__all__), \ - INIT_ID(__and__), \ - INIT_ID(__anext__), \ - INIT_ID(__annotations__), \ - INIT_ID(__args__), \ - INIT_ID(__await__), \ - INIT_ID(__bases__), \ - INIT_ID(__bool__), \ - INIT_ID(__build_class__), \ - INIT_ID(__builtins__), \ - INIT_ID(__bytes__), \ - INIT_ID(__call__), \ - INIT_ID(__cantrace__), \ - INIT_ID(__class__), \ - INIT_ID(__class_getitem__), \ - INIT_ID(__classcell__), \ - INIT_ID(__complex__), \ - INIT_ID(__contains__), \ - INIT_ID(__copy__), \ - INIT_ID(__del__), \ - INIT_ID(__delattr__), \ - INIT_ID(__delete__), \ - INIT_ID(__delitem__), \ - INIT_ID(__dict__), \ - INIT_ID(__dir__), \ - INIT_ID(__divmod__), \ - INIT_ID(__doc__), \ - INIT_ID(__enter__), \ - INIT_ID(__eq__), \ - INIT_ID(__exit__), \ - INIT_ID(__file__), \ - INIT_ID(__float__), \ - INIT_ID(__floordiv__), \ - INIT_ID(__format__), \ - INIT_ID(__fspath__), \ - INIT_ID(__ge__), \ - INIT_ID(__get__), \ - INIT_ID(__getattr__), \ - INIT_ID(__getattribute__), \ - INIT_ID(__getinitargs__), \ - INIT_ID(__getitem__), \ - INIT_ID(__getnewargs__), \ - INIT_ID(__getnewargs_ex__), \ - INIT_ID(__getstate__), \ - INIT_ID(__gt__), \ - INIT_ID(__hash__), \ - INIT_ID(__iadd__), \ - INIT_ID(__iand__), \ - INIT_ID(__ifloordiv__), \ - INIT_ID(__ilshift__), \ - INIT_ID(__imatmul__), \ - INIT_ID(__imod__), \ - INIT_ID(__import__), \ - INIT_ID(__imul__), \ - INIT_ID(__index__), \ - INIT_ID(__init__), \ - INIT_ID(__init_subclass__), \ - INIT_ID(__instancecheck__), \ - INIT_ID(__int__), \ - INIT_ID(__invert__), \ - INIT_ID(__ior__), \ - INIT_ID(__ipow__), \ - INIT_ID(__irshift__), \ - INIT_ID(__isabstractmethod__), \ - INIT_ID(__isub__), \ - INIT_ID(__iter__), \ - INIT_ID(__itruediv__), \ - INIT_ID(__ixor__), \ - INIT_ID(__le__), \ - INIT_ID(__len__), \ - INIT_ID(__length_hint__), \ - INIT_ID(__lltrace__), \ - INIT_ID(__loader__), \ - INIT_ID(__lshift__), \ - INIT_ID(__lt__), \ - INIT_ID(__main__), \ - INIT_ID(__matmul__), \ - INIT_ID(__missing__), \ - INIT_ID(__mod__), \ - INIT_ID(__module__), \ - INIT_ID(__mro_entries__), \ - INIT_ID(__mul__), \ - INIT_ID(__name__), \ - INIT_ID(__ne__), \ - INIT_ID(__neg__), \ - INIT_ID(__new__), \ - INIT_ID(__newobj__), \ - INIT_ID(__newobj_ex__), \ - INIT_ID(__next__), \ - INIT_ID(__notes__), \ - INIT_ID(__or__), \ - INIT_ID(__orig_class__), \ - INIT_ID(__origin__), \ - INIT_ID(__package__), \ - INIT_ID(__parameters__), \ - INIT_ID(__path__), \ - INIT_ID(__pos__), \ - INIT_ID(__pow__), \ - INIT_ID(__prepare__), \ - INIT_ID(__qualname__), \ - INIT_ID(__radd__), \ - INIT_ID(__rand__), \ - INIT_ID(__rdivmod__), \ - INIT_ID(__reduce__), \ - INIT_ID(__reduce_ex__), \ - INIT_ID(__repr__), \ - INIT_ID(__reversed__), \ - INIT_ID(__rfloordiv__), \ - INIT_ID(__rlshift__), \ - INIT_ID(__rmatmul__), \ - INIT_ID(__rmod__), \ - INIT_ID(__rmul__), \ - INIT_ID(__ror__), \ - INIT_ID(__round__), \ - INIT_ID(__rpow__), \ - INIT_ID(__rrshift__), \ - INIT_ID(__rshift__), \ - INIT_ID(__rsub__), \ - INIT_ID(__rtruediv__), \ - INIT_ID(__rxor__), \ - INIT_ID(__set__), \ - INIT_ID(__set_name__), \ - INIT_ID(__setattr__), \ - INIT_ID(__setitem__), \ - INIT_ID(__setstate__), \ - INIT_ID(__sizeof__), \ - INIT_ID(__slotnames__), \ - INIT_ID(__slots__), \ - INIT_ID(__spec__), \ - INIT_ID(__str__), \ - INIT_ID(__sub__), \ - INIT_ID(__subclasscheck__), \ - INIT_ID(__subclasshook__), \ - INIT_ID(__truediv__), \ - INIT_ID(__trunc__), \ - INIT_ID(__typing_is_unpacked_typevartuple__), \ - INIT_ID(__typing_prepare_subst__), \ - INIT_ID(__typing_subst__), \ - INIT_ID(__typing_unpacked_tuple_args__), \ - INIT_ID(__warningregistry__), \ - INIT_ID(__weakref__), \ - INIT_ID(__xor__), \ - INIT_ID(_abc_impl), \ - INIT_ID(_annotation), \ - INIT_ID(_blksize), \ - INIT_ID(_bootstrap), \ - INIT_ID(_dealloc_warn), \ - INIT_ID(_finalizing), \ - INIT_ID(_find_and_load), \ - INIT_ID(_fix_up_module), \ - INIT_ID(_get_sourcefile), \ - INIT_ID(_handle_fromlist), \ - INIT_ID(_initializing), \ - INIT_ID(_is_text_encoding), \ - INIT_ID(_lock_unlock_module), \ - INIT_ID(_showwarnmsg), \ - INIT_ID(_shutdown), \ - INIT_ID(_slotnames), \ - INIT_ID(_strptime_time), \ - INIT_ID(_uninitialized_submodules), \ - INIT_ID(_warn_unawaited_coroutine), \ - INIT_ID(_xoptions), \ - INIT_ID(add), \ - INIT_ID(append), \ - INIT_ID(big), \ - INIT_ID(buffer), \ - INIT_ID(builtins), \ - INIT_ID(c_call), \ - INIT_ID(c_exception), \ - INIT_ID(c_return), \ - INIT_ID(call), \ - INIT_ID(clear), \ - INIT_ID(close), \ - INIT_ID(closed), \ - INIT_ID(code), \ - INIT_ID(copy), \ - INIT_ID(copyreg), \ - INIT_ID(decode), \ - INIT_ID(default), \ - INIT_ID(defaultaction), \ - INIT_ID(dictcomp), \ - INIT_ID(difference_update), \ - INIT_ID(dispatch_table), \ - INIT_ID(displayhook), \ - INIT_ID(enable), \ - INIT_ID(encode), \ - INIT_ID(encoding), \ - INIT_ID(end_lineno), \ - INIT_ID(end_offset), \ - INIT_ID(errors), \ - INIT_ID(excepthook), \ - INIT_ID(exception), \ - INIT_ID(extend), \ - INIT_ID(filename), \ - INIT_ID(fileno), \ - INIT_ID(fillvalue), \ - INIT_ID(filters), \ - INIT_ID(find_class), \ - INIT_ID(flush), \ - INIT_ID(genexpr), \ - INIT_ID(get), \ - INIT_ID(get_source), \ - INIT_ID(getattr), \ - INIT_ID(getstate), \ - INIT_ID(ignore), \ - INIT_ID(importlib), \ - INIT_ID(inf), \ - INIT_ID(intersection), \ - INIT_ID(isatty), \ - INIT_ID(isinstance), \ - INIT_ID(items), \ - INIT_ID(iter), \ - INIT_ID(join), \ - INIT_ID(keys), \ - INIT_ID(lambda), \ - INIT_ID(last_traceback), \ - INIT_ID(last_type), \ - INIT_ID(last_value), \ - INIT_ID(latin1), \ - INIT_ID(len), \ - INIT_ID(line), \ - INIT_ID(lineno), \ - INIT_ID(listcomp), \ - INIT_ID(little), \ - INIT_ID(locale), \ - INIT_ID(match), \ - INIT_ID(metaclass), \ - INIT_ID(mode), \ - INIT_ID(modules), \ - INIT_ID(mro), \ - INIT_ID(msg), \ - INIT_ID(n_fields), \ - INIT_ID(n_sequence_fields), \ - INIT_ID(n_unnamed_fields), \ - INIT_ID(name), \ - INIT_ID(newlines), \ - INIT_ID(next), \ - INIT_ID(obj), \ - INIT_ID(offset), \ - INIT_ID(onceregistry), \ - INIT_ID(opcode), \ - INIT_ID(open), \ - INIT_ID(parent), \ - INIT_ID(partial), \ - INIT_ID(path), \ - INIT_ID(peek), \ - INIT_ID(persistent_id), \ - INIT_ID(persistent_load), \ - INIT_ID(print_file_and_line), \ - INIT_ID(ps1), \ - INIT_ID(ps2), \ - INIT_ID(raw), \ - INIT_ID(read), \ - INIT_ID(read1), \ - INIT_ID(readable), \ - INIT_ID(readall), \ - INIT_ID(readinto), \ - INIT_ID(readinto1), \ - INIT_ID(readline), \ - INIT_ID(reducer_override), \ - INIT_ID(reload), \ - INIT_ID(replace), \ - INIT_ID(reset), \ - INIT_ID(return), \ - INIT_ID(reversed), \ - INIT_ID(seek), \ - INIT_ID(seekable), \ - INIT_ID(send), \ - INIT_ID(setcomp), \ - INIT_ID(setstate), \ - INIT_ID(sort), \ - INIT_ID(stderr), \ - INIT_ID(stdin), \ - INIT_ID(stdout), \ - INIT_ID(strict), \ - INIT_ID(symmetric_difference_update), \ - INIT_ID(tell), \ - INIT_ID(text), \ - INIT_ID(threading), \ - INIT_ID(throw), \ - INIT_ID(top), \ - INIT_ID(truncate), \ - INIT_ID(unraisablehook), \ - INIT_ID(values), \ - INIT_ID(version), \ - INIT_ID(warnings), \ - INIT_ID(warnoptions), \ - INIT_ID(writable), \ - INIT_ID(write), \ - INIT_ID(zipimporter), \ - }, \ - .ascii = { \ - _PyASCIIObject_INIT("\x00"), \ - _PyASCIIObject_INIT("\x01"), \ - _PyASCIIObject_INIT("\x02"), \ - _PyASCIIObject_INIT("\x03"), \ - _PyASCIIObject_INIT("\x04"), \ - _PyASCIIObject_INIT("\x05"), \ - _PyASCIIObject_INIT("\x06"), \ - _PyASCIIObject_INIT("\x07"), \ - _PyASCIIObject_INIT("\x08"), \ - _PyASCIIObject_INIT("\x09"), \ - _PyASCIIObject_INIT("\x0a"), \ - _PyASCIIObject_INIT("\x0b"), \ - _PyASCIIObject_INIT("\x0c"), \ - _PyASCIIObject_INIT("\x0d"), \ - _PyASCIIObject_INIT("\x0e"), \ - _PyASCIIObject_INIT("\x0f"), \ - _PyASCIIObject_INIT("\x10"), \ - _PyASCIIObject_INIT("\x11"), \ - _PyASCIIObject_INIT("\x12"), \ - _PyASCIIObject_INIT("\x13"), \ - _PyASCIIObject_INIT("\x14"), \ - _PyASCIIObject_INIT("\x15"), \ - _PyASCIIObject_INIT("\x16"), \ - _PyASCIIObject_INIT("\x17"), \ - _PyASCIIObject_INIT("\x18"), \ - _PyASCIIObject_INIT("\x19"), \ - _PyASCIIObject_INIT("\x1a"), \ - _PyASCIIObject_INIT("\x1b"), \ - _PyASCIIObject_INIT("\x1c"), \ - _PyASCIIObject_INIT("\x1d"), \ - _PyASCIIObject_INIT("\x1e"), \ - _PyASCIIObject_INIT("\x1f"), \ - _PyASCIIObject_INIT("\x20"), \ - _PyASCIIObject_INIT("\x21"), \ - _PyASCIIObject_INIT("\x22"), \ - _PyASCIIObject_INIT("\x23"), \ - _PyASCIIObject_INIT("\x24"), \ - _PyASCIIObject_INIT("\x25"), \ - _PyASCIIObject_INIT("\x26"), \ - _PyASCIIObject_INIT("\x27"), \ - _PyASCIIObject_INIT("\x28"), \ - _PyASCIIObject_INIT("\x29"), \ - _PyASCIIObject_INIT("\x2a"), \ - _PyASCIIObject_INIT("\x2b"), \ - _PyASCIIObject_INIT("\x2c"), \ - _PyASCIIObject_INIT("\x2d"), \ - _PyASCIIObject_INIT("\x2e"), \ - _PyASCIIObject_INIT("\x2f"), \ - _PyASCIIObject_INIT("\x30"), \ - _PyASCIIObject_INIT("\x31"), \ - _PyASCIIObject_INIT("\x32"), \ - _PyASCIIObject_INIT("\x33"), \ - _PyASCIIObject_INIT("\x34"), \ - _PyASCIIObject_INIT("\x35"), \ - _PyASCIIObject_INIT("\x36"), \ - _PyASCIIObject_INIT("\x37"), \ - _PyASCIIObject_INIT("\x38"), \ - _PyASCIIObject_INIT("\x39"), \ - _PyASCIIObject_INIT("\x3a"), \ - _PyASCIIObject_INIT("\x3b"), \ - _PyASCIIObject_INIT("\x3c"), \ - _PyASCIIObject_INIT("\x3d"), \ - _PyASCIIObject_INIT("\x3e"), \ - _PyASCIIObject_INIT("\x3f"), \ - _PyASCIIObject_INIT("\x40"), \ - _PyASCIIObject_INIT("\x41"), \ - _PyASCIIObject_INIT("\x42"), \ - _PyASCIIObject_INIT("\x43"), \ - _PyASCIIObject_INIT("\x44"), \ - _PyASCIIObject_INIT("\x45"), \ - _PyASCIIObject_INIT("\x46"), \ - _PyASCIIObject_INIT("\x47"), \ - _PyASCIIObject_INIT("\x48"), \ - _PyASCIIObject_INIT("\x49"), \ - _PyASCIIObject_INIT("\x4a"), \ - _PyASCIIObject_INIT("\x4b"), \ - _PyASCIIObject_INIT("\x4c"), \ - _PyASCIIObject_INIT("\x4d"), \ - _PyASCIIObject_INIT("\x4e"), \ - _PyASCIIObject_INIT("\x4f"), \ - _PyASCIIObject_INIT("\x50"), \ - _PyASCIIObject_INIT("\x51"), \ - _PyASCIIObject_INIT("\x52"), \ - _PyASCIIObject_INIT("\x53"), \ - _PyASCIIObject_INIT("\x54"), \ - _PyASCIIObject_INIT("\x55"), \ - _PyASCIIObject_INIT("\x56"), \ - _PyASCIIObject_INIT("\x57"), \ - _PyASCIIObject_INIT("\x58"), \ - _PyASCIIObject_INIT("\x59"), \ - _PyASCIIObject_INIT("\x5a"), \ - _PyASCIIObject_INIT("\x5b"), \ - _PyASCIIObject_INIT("\x5c"), \ - _PyASCIIObject_INIT("\x5d"), \ - _PyASCIIObject_INIT("\x5e"), \ - _PyASCIIObject_INIT("\x5f"), \ - _PyASCIIObject_INIT("\x60"), \ - _PyASCIIObject_INIT("\x61"), \ - _PyASCIIObject_INIT("\x62"), \ - _PyASCIIObject_INIT("\x63"), \ - _PyASCIIObject_INIT("\x64"), \ - _PyASCIIObject_INIT("\x65"), \ - _PyASCIIObject_INIT("\x66"), \ - _PyASCIIObject_INIT("\x67"), \ - _PyASCIIObject_INIT("\x68"), \ - _PyASCIIObject_INIT("\x69"), \ - _PyASCIIObject_INIT("\x6a"), \ - _PyASCIIObject_INIT("\x6b"), \ - _PyASCIIObject_INIT("\x6c"), \ - _PyASCIIObject_INIT("\x6d"), \ - _PyASCIIObject_INIT("\x6e"), \ - _PyASCIIObject_INIT("\x6f"), \ - _PyASCIIObject_INIT("\x70"), \ - _PyASCIIObject_INIT("\x71"), \ - _PyASCIIObject_INIT("\x72"), \ - _PyASCIIObject_INIT("\x73"), \ - _PyASCIIObject_INIT("\x74"), \ - _PyASCIIObject_INIT("\x75"), \ - _PyASCIIObject_INIT("\x76"), \ - _PyASCIIObject_INIT("\x77"), \ - _PyASCIIObject_INIT("\x78"), \ - _PyASCIIObject_INIT("\x79"), \ - _PyASCIIObject_INIT("\x7a"), \ - _PyASCIIObject_INIT("\x7b"), \ - _PyASCIIObject_INIT("\x7c"), \ - _PyASCIIObject_INIT("\x7d"), \ - _PyASCIIObject_INIT("\x7e"), \ - _PyASCIIObject_INIT("\x7f"), \ - }, \ - .latin1 = { \ - _PyUnicode_LATIN1_INIT("\x80"), \ - _PyUnicode_LATIN1_INIT("\x81"), \ - _PyUnicode_LATIN1_INIT("\x82"), \ - _PyUnicode_LATIN1_INIT("\x83"), \ - _PyUnicode_LATIN1_INIT("\x84"), \ - _PyUnicode_LATIN1_INIT("\x85"), \ - _PyUnicode_LATIN1_INIT("\x86"), \ - _PyUnicode_LATIN1_INIT("\x87"), \ - _PyUnicode_LATIN1_INIT("\x88"), \ - _PyUnicode_LATIN1_INIT("\x89"), \ - _PyUnicode_LATIN1_INIT("\x8a"), \ - _PyUnicode_LATIN1_INIT("\x8b"), \ - _PyUnicode_LATIN1_INIT("\x8c"), \ - _PyUnicode_LATIN1_INIT("\x8d"), \ - _PyUnicode_LATIN1_INIT("\x8e"), \ - _PyUnicode_LATIN1_INIT("\x8f"), \ - _PyUnicode_LATIN1_INIT("\x90"), \ - _PyUnicode_LATIN1_INIT("\x91"), \ - _PyUnicode_LATIN1_INIT("\x92"), \ - _PyUnicode_LATIN1_INIT("\x93"), \ - _PyUnicode_LATIN1_INIT("\x94"), \ - _PyUnicode_LATIN1_INIT("\x95"), \ - _PyUnicode_LATIN1_INIT("\x96"), \ - _PyUnicode_LATIN1_INIT("\x97"), \ - _PyUnicode_LATIN1_INIT("\x98"), \ - _PyUnicode_LATIN1_INIT("\x99"), \ - _PyUnicode_LATIN1_INIT("\x9a"), \ - _PyUnicode_LATIN1_INIT("\x9b"), \ - _PyUnicode_LATIN1_INIT("\x9c"), \ - _PyUnicode_LATIN1_INIT("\x9d"), \ - _PyUnicode_LATIN1_INIT("\x9e"), \ - _PyUnicode_LATIN1_INIT("\x9f"), \ - _PyUnicode_LATIN1_INIT("\xa0"), \ - _PyUnicode_LATIN1_INIT("\xa1"), \ - _PyUnicode_LATIN1_INIT("\xa2"), \ - _PyUnicode_LATIN1_INIT("\xa3"), \ - _PyUnicode_LATIN1_INIT("\xa4"), \ - _PyUnicode_LATIN1_INIT("\xa5"), \ - _PyUnicode_LATIN1_INIT("\xa6"), \ - _PyUnicode_LATIN1_INIT("\xa7"), \ - _PyUnicode_LATIN1_INIT("\xa8"), \ - _PyUnicode_LATIN1_INIT("\xa9"), \ - _PyUnicode_LATIN1_INIT("\xaa"), \ - _PyUnicode_LATIN1_INIT("\xab"), \ - _PyUnicode_LATIN1_INIT("\xac"), \ - _PyUnicode_LATIN1_INIT("\xad"), \ - _PyUnicode_LATIN1_INIT("\xae"), \ - _PyUnicode_LATIN1_INIT("\xaf"), \ - _PyUnicode_LATIN1_INIT("\xb0"), \ - _PyUnicode_LATIN1_INIT("\xb1"), \ - _PyUnicode_LATIN1_INIT("\xb2"), \ - _PyUnicode_LATIN1_INIT("\xb3"), \ - _PyUnicode_LATIN1_INIT("\xb4"), \ - _PyUnicode_LATIN1_INIT("\xb5"), \ - _PyUnicode_LATIN1_INIT("\xb6"), \ - _PyUnicode_LATIN1_INIT("\xb7"), \ - _PyUnicode_LATIN1_INIT("\xb8"), \ - _PyUnicode_LATIN1_INIT("\xb9"), \ - _PyUnicode_LATIN1_INIT("\xba"), \ - _PyUnicode_LATIN1_INIT("\xbb"), \ - _PyUnicode_LATIN1_INIT("\xbc"), \ - _PyUnicode_LATIN1_INIT("\xbd"), \ - _PyUnicode_LATIN1_INIT("\xbe"), \ - _PyUnicode_LATIN1_INIT("\xbf"), \ - _PyUnicode_LATIN1_INIT("\xc0"), \ - _PyUnicode_LATIN1_INIT("\xc1"), \ - _PyUnicode_LATIN1_INIT("\xc2"), \ - _PyUnicode_LATIN1_INIT("\xc3"), \ - _PyUnicode_LATIN1_INIT("\xc4"), \ - _PyUnicode_LATIN1_INIT("\xc5"), \ - _PyUnicode_LATIN1_INIT("\xc6"), \ - _PyUnicode_LATIN1_INIT("\xc7"), \ - _PyUnicode_LATIN1_INIT("\xc8"), \ - _PyUnicode_LATIN1_INIT("\xc9"), \ - _PyUnicode_LATIN1_INIT("\xca"), \ - _PyUnicode_LATIN1_INIT("\xcb"), \ - _PyUnicode_LATIN1_INIT("\xcc"), \ - _PyUnicode_LATIN1_INIT("\xcd"), \ - _PyUnicode_LATIN1_INIT("\xce"), \ - _PyUnicode_LATIN1_INIT("\xcf"), \ - _PyUnicode_LATIN1_INIT("\xd0"), \ - _PyUnicode_LATIN1_INIT("\xd1"), \ - _PyUnicode_LATIN1_INIT("\xd2"), \ - _PyUnicode_LATIN1_INIT("\xd3"), \ - _PyUnicode_LATIN1_INIT("\xd4"), \ - _PyUnicode_LATIN1_INIT("\xd5"), \ - _PyUnicode_LATIN1_INIT("\xd6"), \ - _PyUnicode_LATIN1_INIT("\xd7"), \ - _PyUnicode_LATIN1_INIT("\xd8"), \ - _PyUnicode_LATIN1_INIT("\xd9"), \ - _PyUnicode_LATIN1_INIT("\xda"), \ - _PyUnicode_LATIN1_INIT("\xdb"), \ - _PyUnicode_LATIN1_INIT("\xdc"), \ - _PyUnicode_LATIN1_INIT("\xdd"), \ - _PyUnicode_LATIN1_INIT("\xde"), \ - _PyUnicode_LATIN1_INIT("\xdf"), \ - _PyUnicode_LATIN1_INIT("\xe0"), \ - _PyUnicode_LATIN1_INIT("\xe1"), \ - _PyUnicode_LATIN1_INIT("\xe2"), \ - _PyUnicode_LATIN1_INIT("\xe3"), \ - _PyUnicode_LATIN1_INIT("\xe4"), \ - _PyUnicode_LATIN1_INIT("\xe5"), \ - _PyUnicode_LATIN1_INIT("\xe6"), \ - _PyUnicode_LATIN1_INIT("\xe7"), \ - _PyUnicode_LATIN1_INIT("\xe8"), \ - _PyUnicode_LATIN1_INIT("\xe9"), \ - _PyUnicode_LATIN1_INIT("\xea"), \ - _PyUnicode_LATIN1_INIT("\xeb"), \ - _PyUnicode_LATIN1_INIT("\xec"), \ - _PyUnicode_LATIN1_INIT("\xed"), \ - _PyUnicode_LATIN1_INIT("\xee"), \ - _PyUnicode_LATIN1_INIT("\xef"), \ - _PyUnicode_LATIN1_INIT("\xf0"), \ - _PyUnicode_LATIN1_INIT("\xf1"), \ - _PyUnicode_LATIN1_INIT("\xf2"), \ - _PyUnicode_LATIN1_INIT("\xf3"), \ - _PyUnicode_LATIN1_INIT("\xf4"), \ - _PyUnicode_LATIN1_INIT("\xf5"), \ - _PyUnicode_LATIN1_INIT("\xf6"), \ - _PyUnicode_LATIN1_INIT("\xf7"), \ - _PyUnicode_LATIN1_INIT("\xf8"), \ - _PyUnicode_LATIN1_INIT("\xf9"), \ - _PyUnicode_LATIN1_INIT("\xfa"), \ - _PyUnicode_LATIN1_INIT("\xfb"), \ - _PyUnicode_LATIN1_INIT("\xfc"), \ - _PyUnicode_LATIN1_INIT("\xfd"), \ - _PyUnicode_LATIN1_INIT("\xfe"), \ - _PyUnicode_LATIN1_INIT("\xff"), \ - }, \ - }, \ - \ - .tuple_empty = { \ - .ob_base = _PyVarObject_IMMORTAL_INIT(&PyTuple_Type, 0) \ - }, \ - }, \ -} -/* End auto-generated code */ - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_RUNTIME_INIT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_signal.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_signal.h deleted file mode 100644 index b921dd1..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_signal.h +++ /dev/null @@ -1,35 +0,0 @@ -// Define Py_NSIG constant for signal handling. - -#ifndef Py_INTERNAL_SIGNAL_H -#define Py_INTERNAL_SIGNAL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include // NSIG - -#ifdef _SIG_MAXSIG - // gh-91145: On FreeBSD, defines NSIG as 32: it doesn't include - // realtime signals: [SIGRTMIN,SIGRTMAX]. Use _SIG_MAXSIG instead. For - // example on x86-64 FreeBSD 13, SIGRTMAX is 126 and _SIG_MAXSIG is 128. -# define Py_NSIG _SIG_MAXSIG -#elif defined(NSIG) -# define Py_NSIG NSIG -#elif defined(_NSIG) -# define Py_NSIG _NSIG // BSD/SysV -#elif defined(_SIGMAX) -# define Py_NSIG (_SIGMAX + 1) // QNX -#elif defined(SIGMAX) -# define Py_NSIG (SIGMAX + 1) // djgpp -#else -# define Py_NSIG 64 // Use a reasonable default value -#endif - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_SIGNAL_H diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_sliceobject.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_sliceobject.h deleted file mode 100644 index e81834c..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_sliceobject.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef Py_INTERNAL_SLICEOBJECT_H -#define Py_INTERNAL_SLICEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* runtime lifecycle */ - -extern void _PySlice_Fini(PyInterpreterState *); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_SLICEOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_strhex.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_strhex.h deleted file mode 100644 index f427b4d..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_strhex.h +++ /dev/null @@ -1,36 +0,0 @@ -#ifndef Py_INTERNAL_STRHEX_H -#define Py_INTERNAL_STRHEX_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -// Returns a str() containing the hex representation of argbuf. -PyAPI_FUNC(PyObject*) _Py_strhex(const - char* argbuf, - const Py_ssize_t arglen); - -// Returns a bytes() containing the ASCII hex representation of argbuf. -PyAPI_FUNC(PyObject*) _Py_strhex_bytes( - const char* argbuf, - const Py_ssize_t arglen); - -// These variants include support for a separator between every N bytes: -PyAPI_FUNC(PyObject*) _Py_strhex_with_sep( - const char* argbuf, - const Py_ssize_t arglen, - PyObject* sep, - const int bytes_per_group); -PyAPI_FUNC(PyObject*) _Py_strhex_bytes_with_sep( - const char* argbuf, - const Py_ssize_t arglen, - PyObject* sep, - const int bytes_per_group); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_STRHEX_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_structseq.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_structseq.h deleted file mode 100644 index 0199c79..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_structseq.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef Py_INTERNAL_STRUCTSEQ_H -#define Py_INTERNAL_STRUCTSEQ_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* other API */ - -PyAPI_FUNC(PyTypeObject *) _PyStructSequence_NewType( - PyStructSequence_Desc *desc, - unsigned long tp_flags); - -PyAPI_FUNC(int) _PyStructSequence_InitType( - PyTypeObject *type, - PyStructSequence_Desc *desc, - unsigned long tp_flags); - -extern void _PyStructSequence_FiniType(PyTypeObject *type); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_STRUCTSEQ_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_symtable.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_symtable.h deleted file mode 100644 index 28935f4..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_symtable.h +++ /dev/null @@ -1,134 +0,0 @@ -#ifndef Py_INTERNAL_SYMTABLE_H -#define Py_INTERNAL_SYMTABLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct _mod; // Type defined in pycore_ast.h - -typedef enum _block_type { FunctionBlock, ClassBlock, ModuleBlock, AnnotationBlock } - _Py_block_ty; - -typedef enum _comprehension_type { - NoComprehension = 0, - ListComprehension = 1, - DictComprehension = 2, - SetComprehension = 3, - GeneratorExpression = 4 } _Py_comprehension_ty; - -struct _symtable_entry; - -struct symtable { - PyObject *st_filename; /* name of file being compiled, - decoded from the filesystem encoding */ - struct _symtable_entry *st_cur; /* current symbol table entry */ - struct _symtable_entry *st_top; /* symbol table entry for module */ - PyObject *st_blocks; /* dict: map AST node addresses - * to symbol table entries */ - PyObject *st_stack; /* list: stack of namespace info */ - PyObject *st_global; /* borrowed ref to st_top->ste_symbols */ - int st_nblocks; /* number of blocks used. kept for - consistency with the corresponding - compiler structure */ - PyObject *st_private; /* name of current class or NULL */ - PyFutureFeatures *st_future; /* module's future features that affect - the symbol table */ - int recursion_depth; /* current recursion depth */ - int recursion_limit; /* recursion limit */ -}; - -typedef struct _symtable_entry { - PyObject_HEAD - PyObject *ste_id; /* int: key in ste_table->st_blocks */ - PyObject *ste_symbols; /* dict: variable names to flags */ - PyObject *ste_name; /* string: name of current block */ - PyObject *ste_varnames; /* list of function parameters */ - PyObject *ste_children; /* list of child blocks */ - PyObject *ste_directives;/* locations of global and nonlocal statements */ - _Py_block_ty ste_type; /* module, class or function */ - int ste_nested; /* true if block is nested */ - unsigned ste_free : 1; /* true if block has free variables */ - unsigned ste_child_free : 1; /* true if a child block has free vars, - including free refs to globals */ - unsigned ste_generator : 1; /* true if namespace is a generator */ - unsigned ste_coroutine : 1; /* true if namespace is a coroutine */ - _Py_comprehension_ty ste_comprehension; /* Kind of comprehension (if any) */ - unsigned ste_varargs : 1; /* true if block has varargs */ - unsigned ste_varkeywords : 1; /* true if block has varkeywords */ - unsigned ste_returns_value : 1; /* true if namespace uses return with - an argument */ - unsigned ste_needs_class_closure : 1; /* for class scopes, true if a - closure over __class__ - should be created */ - unsigned ste_comp_iter_target : 1; /* true if visiting comprehension target */ - int ste_comp_iter_expr; /* non-zero if visiting a comprehension range expression */ - int ste_lineno; /* first line of block */ - int ste_col_offset; /* offset of first line of block */ - int ste_end_lineno; /* end line of block */ - int ste_end_col_offset; /* end offset of first line of block */ - int ste_opt_lineno; /* lineno of last exec or import * */ - int ste_opt_col_offset; /* offset of last exec or import * */ - struct symtable *ste_table; -} PySTEntryObject; - -extern PyTypeObject PySTEntry_Type; - -#define PySTEntry_Check(op) Py_IS_TYPE(op, &PySTEntry_Type) - -extern long _PyST_GetSymbol(PySTEntryObject *, PyObject *); -extern int _PyST_GetScope(PySTEntryObject *, PyObject *); - -extern struct symtable* _PySymtable_Build( - struct _mod *mod, - PyObject *filename, - PyFutureFeatures *future); -PyAPI_FUNC(PySTEntryObject *) PySymtable_Lookup(struct symtable *, void *); - -extern void _PySymtable_Free(struct symtable *); - -/* Flags for def-use information */ - -#define DEF_GLOBAL 1 /* global stmt */ -#define DEF_LOCAL 2 /* assignment in code block */ -#define DEF_PARAM 2<<1 /* formal parameter */ -#define DEF_NONLOCAL 2<<2 /* nonlocal stmt */ -#define USE 2<<3 /* name is used */ -#define DEF_FREE 2<<4 /* name used but not defined in nested block */ -#define DEF_FREE_CLASS 2<<5 /* free variable from class's method */ -#define DEF_IMPORT 2<<6 /* assignment occurred via import */ -#define DEF_ANNOT 2<<7 /* this name is annotated */ -#define DEF_COMP_ITER 2<<8 /* this name is a comprehension iteration variable */ - -#define DEF_BOUND (DEF_LOCAL | DEF_PARAM | DEF_IMPORT) - -/* GLOBAL_EXPLICIT and GLOBAL_IMPLICIT are used internally by the symbol - table. GLOBAL is returned from PyST_GetScope() for either of them. - It is stored in ste_symbols at bits 12-15. -*/ -#define SCOPE_OFFSET 11 -#define SCOPE_MASK (DEF_GLOBAL | DEF_LOCAL | DEF_PARAM | DEF_NONLOCAL) - -#define LOCAL 1 -#define GLOBAL_EXPLICIT 2 -#define GLOBAL_IMPLICIT 3 -#define FREE 4 -#define CELL 5 - -#define GENERATOR 1 -#define GENERATOR_EXPRESSION 2 - -// Used by symtablemodule.c -extern struct symtable* _Py_SymtableStringObjectFlags( - const char *str, - PyObject *filename, - int start, - PyCompilerFlags *flags); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_SYMTABLE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_sysmodule.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_sysmodule.h deleted file mode 100644 index 10d092c..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_sysmodule.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef Py_INTERNAL_SYSMODULE_H -#define Py_INTERNAL_SYSMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -PyAPI_FUNC(int) _PySys_Audit( - PyThreadState *tstate, - const char *event, - const char *argFormat, - ...); - -/* We want minimal exposure of this function, so use extern rather than - PyAPI_FUNC() to not export the symbol. */ -extern void _PySys_ClearAuditHooks(PyThreadState *tstate); - -PyAPI_FUNC(int) _PySys_SetAttr(PyObject *, PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_SYSMODULE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_traceback.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_traceback.h deleted file mode 100644 index c393b2c..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_traceback.h +++ /dev/null @@ -1,101 +0,0 @@ -#ifndef Py_INTERNAL_TRACEBACK_H -#define Py_INTERNAL_TRACEBACK_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Write the Python traceback into the file 'fd'. For example: - - Traceback (most recent call first): - File "xxx", line xxx in - File "xxx", line xxx in - ... - File "xxx", line xxx in - - This function is written for debug purpose only, to dump the traceback in - the worst case: after a segmentation fault, at fatal error, etc. That's why, - it is very limited. Strings are truncated to 100 characters and encoded to - ASCII with backslashreplace. It doesn't write the source code, only the - function name, filename and line number of each frame. Write only the first - 100 frames: if the traceback is truncated, write the line " ...". - - This function is signal safe. */ - -PyAPI_FUNC(void) _Py_DumpTraceback( - int fd, - PyThreadState *tstate); - -/* Write the traceback of all threads into the file 'fd'. current_thread can be - NULL. - - Return NULL on success, or an error message on error. - - This function is written for debug purpose only. It calls - _Py_DumpTraceback() for each thread, and so has the same limitations. It - only write the traceback of the first 100 threads: write "..." if there are - more threads. - - If current_tstate is NULL, the function tries to get the Python thread state - of the current thread. It is not an error if the function is unable to get - the current Python thread state. - - If interp is NULL, the function tries to get the interpreter state from - the current Python thread state, or from - _PyGILState_GetInterpreterStateUnsafe() in last resort. - - It is better to pass NULL to interp and current_tstate, the function tries - different options to retrieve this information. - - This function is signal safe. */ - -PyAPI_FUNC(const char*) _Py_DumpTracebackThreads( - int fd, - PyInterpreterState *interp, - PyThreadState *current_tstate); - -/* Write a Unicode object into the file descriptor fd. Encode the string to - ASCII using the backslashreplace error handler. - - Do nothing if text is not a Unicode object. The function accepts Unicode - string which is not ready (PyUnicode_WCHAR_KIND). - - This function is signal safe. */ -PyAPI_FUNC(void) _Py_DumpASCII(int fd, PyObject *text); - -/* Format an integer as decimal into the file descriptor fd. - - This function is signal safe. */ -PyAPI_FUNC(void) _Py_DumpDecimal( - int fd, - size_t value); - -/* Format an integer as hexadecimal with width digits into fd file descriptor. - The function is signal safe. */ -PyAPI_FUNC(void) _Py_DumpHexadecimal( - int fd, - uintptr_t value, - Py_ssize_t width); - -PyAPI_FUNC(PyObject*) _PyTraceBack_FromFrame( - PyObject *tb_next, - PyFrameObject *frame); - -#define EXCEPTION_TB_HEADER "Traceback (most recent call last):\n" -#define EXCEPTION_GROUP_TB_HEADER "Exception Group Traceback (most recent call last):\n" - -/* Write the traceback tb to file f. Prefix each line with - indent spaces followed by the margin (if it is not NULL). */ -PyAPI_FUNC(int) _PyTraceBack_Print_Indented( - PyObject *tb, int indent, const char* margin, - const char *header_margin, const char *header, PyObject *f); -PyAPI_FUNC(int) _Py_WriteIndentedMargin(int, const char*, PyObject *); -PyAPI_FUNC(int) _Py_WriteIndent(int, PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_TRACEBACK_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_tuple.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_tuple.h deleted file mode 100644 index 1efe4fa..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_tuple.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef Py_INTERNAL_TUPLE_H -#define Py_INTERNAL_TUPLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "tupleobject.h" /* _PyTuple_CAST() */ - - -/* runtime lifecycle */ - -extern PyStatus _PyTuple_InitGlobalObjects(PyInterpreterState *); -extern PyStatus _PyTuple_InitTypes(PyInterpreterState *); -extern void _PyTuple_Fini(PyInterpreterState *); - - -/* other API */ - -// PyTuple_MAXSAVESIZE - largest tuple to save on free list -// PyTuple_MAXFREELIST - maximum number of tuples of each size to save - -#if defined(PyTuple_MAXSAVESIZE) && PyTuple_MAXSAVESIZE <= 0 - // A build indicated that tuple freelists should not be used. -# define PyTuple_NFREELISTS 0 -# undef PyTuple_MAXSAVESIZE -# undef PyTuple_MAXFREELIST - -#elif !defined(WITH_FREELISTS) -# define PyTuple_NFREELISTS 0 -# undef PyTuple_MAXSAVESIZE -# undef PyTuple_MAXFREELIST - -#else - // We are using a freelist for tuples. -# ifndef PyTuple_MAXSAVESIZE -# define PyTuple_MAXSAVESIZE 20 -# endif -# define PyTuple_NFREELISTS PyTuple_MAXSAVESIZE -# ifndef PyTuple_MAXFREELIST -# define PyTuple_MAXFREELIST 2000 -# endif -#endif - -struct _Py_tuple_state { -#if PyTuple_NFREELISTS > 0 - /* There is one freelist for each size from 1 to PyTuple_MAXSAVESIZE. - The empty tuple is handled separately. - - Each tuple stored in the array is the head of the linked list - (and the next available tuple) for that size. The actual tuple - object is used as the linked list node, with its first item - (ob_item[0]) pointing to the next node (i.e. the previous head). - Each linked list is initially NULL. */ - PyTupleObject *free_list[PyTuple_NFREELISTS]; - int numfree[PyTuple_NFREELISTS]; -#else - char _unused; // Empty structs are not allowed. -#endif -}; - -#define _PyTuple_ITEMS(op) (_PyTuple_CAST(op)->ob_item) - -extern PyObject *_PyTuple_FromArray(PyObject *const *, Py_ssize_t); -extern PyObject *_PyTuple_FromArraySteal(PyObject *const *, Py_ssize_t); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_TUPLE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_typeobject.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_typeobject.h deleted file mode 100644 index c480a3a..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_typeobject.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef Py_INTERNAL_TYPEOBJECT_H -#define Py_INTERNAL_TYPEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* runtime lifecycle */ - -extern PyStatus _PyTypes_InitState(PyInterpreterState *); -extern PyStatus _PyTypes_InitTypes(PyInterpreterState *); -extern void _PyTypes_FiniTypes(PyInterpreterState *); -extern void _PyTypes_Fini(PyInterpreterState *); - - -/* other API */ - -// Type attribute lookup cache: speed up attribute and method lookups, -// see _PyType_Lookup(). -struct type_cache_entry { - unsigned int version; // initialized from type->tp_version_tag - PyObject *name; // reference to exactly a str or None - PyObject *value; // borrowed reference or NULL -}; - -#define MCACHE_SIZE_EXP 12 -#define MCACHE_STATS 0 - -struct type_cache { - struct type_cache_entry hashtable[1 << MCACHE_SIZE_EXP]; -#if MCACHE_STATS - size_t hits; - size_t misses; - size_t collisions; -#endif -}; - -extern PyStatus _PyTypes_InitSlotDefs(void); - -extern void _PyStaticType_Dealloc(PyTypeObject *type); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_TYPEOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_ucnhash.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_ucnhash.h deleted file mode 100644 index 187dd68..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_ucnhash.h +++ /dev/null @@ -1,34 +0,0 @@ -/* Unicode name database interface */ -#ifndef Py_INTERNAL_UCNHASH_H -#define Py_INTERNAL_UCNHASH_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* revised ucnhash CAPI interface (exported through a "wrapper") */ - -#define PyUnicodeData_CAPSULE_NAME "unicodedata._ucnhash_CAPI" - -typedef struct { - - /* Get name for a given character code. - Returns non-zero if success, zero if not. - Does not set Python exceptions. */ - int (*getname)(Py_UCS4 code, char* buffer, int buflen, - int with_alias_and_seq); - - /* Get character code for a given name. - Same error handling as for getname(). */ - int (*getcode)(const char* name, int namelen, Py_UCS4* code, - int with_named_seq); - -} _PyUnicode_Name_CAPI; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_UCNHASH_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_unicodeobject.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_unicodeobject.h deleted file mode 100644 index 4bee241..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_unicodeobject.h +++ /dev/null @@ -1,62 +0,0 @@ -#ifndef Py_INTERNAL_UNICODEOBJECT_H -#define Py_INTERNAL_UNICODEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_fileutils.h" // _Py_error_handler - -void _PyUnicode_ExactDealloc(PyObject *op); - -/* runtime lifecycle */ - -extern void _PyUnicode_InitState(PyInterpreterState *); -extern PyStatus _PyUnicode_InitGlobalObjects(PyInterpreterState *); -extern PyStatus _PyUnicode_InitTypes(PyInterpreterState *); -extern void _PyUnicode_Fini(PyInterpreterState *); -extern void _PyUnicode_FiniTypes(PyInterpreterState *); -extern void _PyStaticUnicode_Dealloc(PyObject *); - -extern PyTypeObject _PyUnicodeASCIIIter_Type; - -/* other API */ - -struct _Py_unicode_runtime_ids { - PyThread_type_lock lock; - // next_index value must be preserved when Py_Initialize()/Py_Finalize() - // is called multiple times: see _PyUnicode_FromId() implementation. - Py_ssize_t next_index; -}; - -/* fs_codec.encoding is initialized to NULL. - Later, it is set to a non-NULL string by _PyUnicode_InitEncodings(). */ -struct _Py_unicode_fs_codec { - char *encoding; // Filesystem encoding (encoded to UTF-8) - int utf8; // encoding=="utf-8"? - char *errors; // Filesystem errors (encoded to UTF-8) - _Py_error_handler error_handler; -}; - -struct _Py_unicode_ids { - Py_ssize_t size; - PyObject **array; -}; - -struct _Py_unicode_state { - struct _Py_unicode_fs_codec fs_codec; - - // Unicode identifiers (_Py_Identifier): see _PyUnicode_FromId() - struct _Py_unicode_ids ids; -}; - -extern void _PyUnicode_ClearInterned(PyInterpreterState *interp); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_UNICODEOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_unionobject.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_unionobject.h deleted file mode 100644 index a9ed565..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_unionobject.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef Py_INTERNAL_UNIONOBJECT_H -#define Py_INTERNAL_UNIONOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern PyTypeObject _PyUnion_Type; -#define _PyUnion_Check(op) Py_IS_TYPE(op, &_PyUnion_Type) -extern PyObject *_Py_union_type_or(PyObject *, PyObject *); - -#define _PyGenericAlias_Check(op) PyObject_TypeCheck(op, &Py_GenericAliasType) -extern PyObject *_Py_subs_parameters(PyObject *, PyObject *, PyObject *, PyObject *); -extern PyObject *_Py_make_parameters(PyObject *); -extern PyObject *_Py_union_args(PyObject *self); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_UNIONOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/internal/pycore_warnings.h b/_Pre_Builds/_Python311_cpp/include/internal/pycore_warnings.h deleted file mode 100644 index efb4f1c..0000000 --- a/_Pre_Builds/_Python311_cpp/include/internal/pycore_warnings.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef Py_INTERNAL_WARNINGS_H -#define Py_INTERNAL_WARNINGS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct _warnings_runtime_state { - /* Both 'filters' and 'onceregistry' can be set in warnings.py; - get_warnings_attr() will reset these variables accordingly. */ - PyObject *filters; /* List */ - PyObject *once_registry; /* Dict */ - PyObject *default_action; /* String */ - long filters_version; -}; - -extern int _PyWarnings_InitState(PyInterpreterState *interp); - -PyAPI_FUNC(PyObject*) _PyWarnings_Init(void); - -extern void _PyErr_WarnUnawaitedCoroutine(PyObject *coro); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_WARNINGS_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/intrcheck.h b/_Pre_Builds/_Python311_cpp/include/intrcheck.h deleted file mode 100644 index b8cc656..0000000 --- a/_Pre_Builds/_Python311_cpp/include/intrcheck.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef Py_INTRCHECK_H -#define Py_INTRCHECK_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(int) PyOS_InterruptOccurred(void); -#ifdef HAVE_FORK -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -PyAPI_FUNC(void) PyOS_BeforeFork(void); -PyAPI_FUNC(void) PyOS_AfterFork_Parent(void); -PyAPI_FUNC(void) PyOS_AfterFork_Child(void); -#endif -#endif -/* Deprecated, please use PyOS_AfterFork_Child() instead */ -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyOS_AfterFork(void); - -#ifndef Py_LIMITED_API -PyAPI_FUNC(int) _PyOS_IsMainThread(void); - -#ifdef MS_WINDOWS -/* windows.h is not included by Python.h so use void* instead of HANDLE */ -PyAPI_FUNC(void*) _PyOS_SigintEvent(void); -#endif -#endif /* !Py_LIMITED_API */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTRCHECK_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/iterobject.h b/_Pre_Builds/_Python311_cpp/include/iterobject.h deleted file mode 100644 index 6454611..0000000 --- a/_Pre_Builds/_Python311_cpp/include/iterobject.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef Py_ITEROBJECT_H -#define Py_ITEROBJECT_H -/* Iterators (the basic kind, over a sequence) */ -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PySeqIter_Type; -PyAPI_DATA(PyTypeObject) PyCallIter_Type; -#ifdef Py_BUILD_CORE -extern PyTypeObject _PyAnextAwaitable_Type; -#endif - -#define PySeqIter_Check(op) Py_IS_TYPE(op, &PySeqIter_Type) - -PyAPI_FUNC(PyObject *) PySeqIter_New(PyObject *); - - -#define PyCallIter_Check(op) Py_IS_TYPE(op, &PyCallIter_Type) - -PyAPI_FUNC(PyObject *) PyCallIter_New(PyObject *, PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ITEROBJECT_H */ - diff --git a/_Pre_Builds/_Python311_cpp/include/listobject.h b/_Pre_Builds/_Python311_cpp/include/listobject.h deleted file mode 100644 index eff42c1..0000000 --- a/_Pre_Builds/_Python311_cpp/include/listobject.h +++ /dev/null @@ -1,52 +0,0 @@ -/* List object interface - - Another generally useful object type is a list of object pointers. - This is a mutable type: the list items can be changed, and items can be - added or removed. Out-of-range indices or non-list objects are ignored. - - WARNING: PyList_SetItem does not increment the new item's reference count, - but does decrement the reference count of the item it replaces, if not nil. - It does *decrement* the reference count if it is *not* inserted in the list. - Similarly, PyList_GetItem does not increment the returned item's reference - count. -*/ - -#ifndef Py_LISTOBJECT_H -#define Py_LISTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyList_Type; -PyAPI_DATA(PyTypeObject) PyListIter_Type; -PyAPI_DATA(PyTypeObject) PyListRevIter_Type; - -#define PyList_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_LIST_SUBCLASS) -#define PyList_CheckExact(op) Py_IS_TYPE(op, &PyList_Type) - -PyAPI_FUNC(PyObject *) PyList_New(Py_ssize_t size); -PyAPI_FUNC(Py_ssize_t) PyList_Size(PyObject *); - -PyAPI_FUNC(PyObject *) PyList_GetItem(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyList_SetItem(PyObject *, Py_ssize_t, PyObject *); -PyAPI_FUNC(int) PyList_Insert(PyObject *, Py_ssize_t, PyObject *); -PyAPI_FUNC(int) PyList_Append(PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) PyList_GetSlice(PyObject *, Py_ssize_t, Py_ssize_t); -PyAPI_FUNC(int) PyList_SetSlice(PyObject *, Py_ssize_t, Py_ssize_t, PyObject *); - -PyAPI_FUNC(int) PyList_Sort(PyObject *); -PyAPI_FUNC(int) PyList_Reverse(PyObject *); -PyAPI_FUNC(PyObject *) PyList_AsTuple(PyObject *); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_LISTOBJECT_H -# include "cpython/listobject.h" -# undef Py_CPYTHON_LISTOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LISTOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/longobject.h b/_Pre_Builds/_Python311_cpp/include/longobject.h deleted file mode 100644 index 81ba123..0000000 --- a/_Pre_Builds/_Python311_cpp/include/longobject.h +++ /dev/null @@ -1,91 +0,0 @@ -#ifndef Py_LONGOBJECT_H -#define Py_LONGOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Long (arbitrary precision) integer object interface */ - -PyAPI_DATA(PyTypeObject) PyLong_Type; - -#define PyLong_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_LONG_SUBCLASS) -#define PyLong_CheckExact(op) Py_IS_TYPE(op, &PyLong_Type) - -PyAPI_FUNC(PyObject *) PyLong_FromLong(long); -PyAPI_FUNC(PyObject *) PyLong_FromUnsignedLong(unsigned long); -PyAPI_FUNC(PyObject *) PyLong_FromSize_t(size_t); -PyAPI_FUNC(PyObject *) PyLong_FromSsize_t(Py_ssize_t); -PyAPI_FUNC(PyObject *) PyLong_FromDouble(double); -PyAPI_FUNC(long) PyLong_AsLong(PyObject *); -PyAPI_FUNC(long) PyLong_AsLongAndOverflow(PyObject *, int *); -PyAPI_FUNC(Py_ssize_t) PyLong_AsSsize_t(PyObject *); -PyAPI_FUNC(size_t) PyLong_AsSize_t(PyObject *); -PyAPI_FUNC(unsigned long) PyLong_AsUnsignedLong(PyObject *); -PyAPI_FUNC(unsigned long) PyLong_AsUnsignedLongMask(PyObject *); -PyAPI_FUNC(PyObject *) PyLong_GetInfo(void); - -/* It may be useful in the future. I've added it in the PyInt -> PyLong - cleanup to keep the extra information. [CH] */ -#define PyLong_AS_LONG(op) PyLong_AsLong(op) - -/* Issue #1983: pid_t can be longer than a C long on some systems */ -#if !defined(SIZEOF_PID_T) || SIZEOF_PID_T == SIZEOF_INT -#define _Py_PARSE_PID "i" -#define PyLong_FromPid PyLong_FromLong -#define PyLong_AsPid PyLong_AsLong -#elif SIZEOF_PID_T == SIZEOF_LONG -#define _Py_PARSE_PID "l" -#define PyLong_FromPid PyLong_FromLong -#define PyLong_AsPid PyLong_AsLong -#elif defined(SIZEOF_LONG_LONG) && SIZEOF_PID_T == SIZEOF_LONG_LONG -#define _Py_PARSE_PID "L" -#define PyLong_FromPid PyLong_FromLongLong -#define PyLong_AsPid PyLong_AsLongLong -#else -#error "sizeof(pid_t) is neither sizeof(int), sizeof(long) or sizeof(long long)" -#endif /* SIZEOF_PID_T */ - -#if SIZEOF_VOID_P == SIZEOF_INT -# define _Py_PARSE_INTPTR "i" -# define _Py_PARSE_UINTPTR "I" -#elif SIZEOF_VOID_P == SIZEOF_LONG -# define _Py_PARSE_INTPTR "l" -# define _Py_PARSE_UINTPTR "k" -#elif defined(SIZEOF_LONG_LONG) && SIZEOF_VOID_P == SIZEOF_LONG_LONG -# define _Py_PARSE_INTPTR "L" -# define _Py_PARSE_UINTPTR "K" -#else -# error "void* different in size from int, long and long long" -#endif /* SIZEOF_VOID_P */ - -PyAPI_FUNC(double) PyLong_AsDouble(PyObject *); -PyAPI_FUNC(PyObject *) PyLong_FromVoidPtr(void *); -PyAPI_FUNC(void *) PyLong_AsVoidPtr(PyObject *); - -PyAPI_FUNC(PyObject *) PyLong_FromLongLong(long long); -PyAPI_FUNC(PyObject *) PyLong_FromUnsignedLongLong(unsigned long long); -PyAPI_FUNC(long long) PyLong_AsLongLong(PyObject *); -PyAPI_FUNC(unsigned long long) PyLong_AsUnsignedLongLong(PyObject *); -PyAPI_FUNC(unsigned long long) PyLong_AsUnsignedLongLongMask(PyObject *); -PyAPI_FUNC(long long) PyLong_AsLongLongAndOverflow(PyObject *, int *); - -PyAPI_FUNC(PyObject *) PyLong_FromString(const char *, char **, int); - -/* These aren't really part of the int object, but they're handy. The - functions are in Python/mystrtoul.c. - */ -PyAPI_FUNC(unsigned long) PyOS_strtoul(const char *, char **, int); -PyAPI_FUNC(long) PyOS_strtol(const char *, char **, int); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_LONGOBJECT_H -# include "cpython/longobject.h" -# undef Py_CPYTHON_LONGOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LONGOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/marshal.h b/_Pre_Builds/_Python311_cpp/include/marshal.h deleted file mode 100644 index f8b0de8..0000000 --- a/_Pre_Builds/_Python311_cpp/include/marshal.h +++ /dev/null @@ -1,31 +0,0 @@ - -/* Interface for marshal.c */ - -#ifndef Py_MARSHAL_H -#define Py_MARSHAL_H -#ifndef Py_LIMITED_API - -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) PyMarshal_ReadObjectFromString(const char *, - Py_ssize_t); -PyAPI_FUNC(PyObject *) PyMarshal_WriteObjectToString(PyObject *, int); - -#define Py_MARSHAL_VERSION 4 - -PyAPI_FUNC(long) PyMarshal_ReadLongFromFile(FILE *); -PyAPI_FUNC(int) PyMarshal_ReadShortFromFile(FILE *); -PyAPI_FUNC(PyObject *) PyMarshal_ReadObjectFromFile(FILE *); -PyAPI_FUNC(PyObject *) PyMarshal_ReadLastObjectFromFile(FILE *); - -PyAPI_FUNC(void) PyMarshal_WriteLongToFile(long, FILE *, int); -PyAPI_FUNC(void) PyMarshal_WriteObjectToFile(PyObject *, FILE *, int); - -#ifdef __cplusplus -} -#endif - -#endif /* Py_LIMITED_API */ -#endif /* !Py_MARSHAL_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/memoryobject.h b/_Pre_Builds/_Python311_cpp/include/memoryobject.h deleted file mode 100644 index 154397c..0000000 --- a/_Pre_Builds/_Python311_cpp/include/memoryobject.h +++ /dev/null @@ -1,72 +0,0 @@ -/* Memory view object. In Python this is available as "memoryview". */ - -#ifndef Py_MEMORYOBJECT_H -#define Py_MEMORYOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API -PyAPI_DATA(PyTypeObject) _PyManagedBuffer_Type; -#endif -PyAPI_DATA(PyTypeObject) PyMemoryView_Type; - -#define PyMemoryView_Check(op) Py_IS_TYPE(op, &PyMemoryView_Type) - -#ifndef Py_LIMITED_API -/* Get a pointer to the memoryview's private copy of the exporter's buffer. */ -#define PyMemoryView_GET_BUFFER(op) (&((PyMemoryViewObject *)(op))->view) -/* Get a pointer to the exporting object (this may be NULL!). */ -#define PyMemoryView_GET_BASE(op) (((PyMemoryViewObject *)(op))->view.obj) -#endif - -PyAPI_FUNC(PyObject *) PyMemoryView_FromObject(PyObject *base); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyMemoryView_FromMemory(char *mem, Py_ssize_t size, - int flags); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030b0000 -PyAPI_FUNC(PyObject *) PyMemoryView_FromBuffer(const Py_buffer *info); -#endif -PyAPI_FUNC(PyObject *) PyMemoryView_GetContiguous(PyObject *base, - int buffertype, - char order); - - -/* The structs are declared here so that macros can work, but they shouldn't - be considered public. Don't access their fields directly, use the macros - and functions instead! */ -#ifndef Py_LIMITED_API -#define _Py_MANAGED_BUFFER_RELEASED 0x001 /* access to exporter blocked */ -#define _Py_MANAGED_BUFFER_FREE_FORMAT 0x002 /* free format */ -typedef struct { - PyObject_HEAD - int flags; /* state flags */ - Py_ssize_t exports; /* number of direct memoryview exports */ - Py_buffer master; /* snapshot buffer obtained from the original exporter */ -} _PyManagedBufferObject; - - -/* memoryview state flags */ -#define _Py_MEMORYVIEW_RELEASED 0x001 /* access to master buffer blocked */ -#define _Py_MEMORYVIEW_C 0x002 /* C-contiguous layout */ -#define _Py_MEMORYVIEW_FORTRAN 0x004 /* Fortran contiguous layout */ -#define _Py_MEMORYVIEW_SCALAR 0x008 /* scalar: ndim = 0 */ -#define _Py_MEMORYVIEW_PIL 0x010 /* PIL-style layout */ - -typedef struct { - PyObject_VAR_HEAD - _PyManagedBufferObject *mbuf; /* managed buffer */ - Py_hash_t hash; /* hash value for read-only views */ - int flags; /* state flags */ - Py_ssize_t exports; /* number of buffer re-exports */ - Py_buffer view; /* private copy of the exporter's view */ - PyObject *weakreflist; - Py_ssize_t ob_array[1]; /* shape, strides, suboffsets */ -} PyMemoryViewObject; -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_MEMORYOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/methodobject.h b/_Pre_Builds/_Python311_cpp/include/methodobject.h deleted file mode 100644 index c971d78..0000000 --- a/_Pre_Builds/_Python311_cpp/include/methodobject.h +++ /dev/null @@ -1,132 +0,0 @@ - -/* Method object interface */ - -#ifndef Py_METHODOBJECT_H -#define Py_METHODOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* This is about the type 'builtin_function_or_method', - not Python methods in user-defined classes. See classobject.h - for the latter. */ - -PyAPI_DATA(PyTypeObject) PyCFunction_Type; - -#define PyCFunction_CheckExact(op) Py_IS_TYPE(op, &PyCFunction_Type) -#define PyCFunction_Check(op) PyObject_TypeCheck(op, &PyCFunction_Type) - -typedef PyObject *(*PyCFunction)(PyObject *, PyObject *); -typedef PyObject *(*_PyCFunctionFast) (PyObject *, PyObject *const *, Py_ssize_t); -typedef PyObject *(*PyCFunctionWithKeywords)(PyObject *, PyObject *, - PyObject *); -typedef PyObject *(*_PyCFunctionFastWithKeywords) (PyObject *, - PyObject *const *, Py_ssize_t, - PyObject *); -typedef PyObject *(*PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, - size_t, PyObject *); - -// Cast an function to the PyCFunction type to use it with PyMethodDef. -// -// This macro can be used to prevent compiler warnings if the first parameter -// uses a different pointer type than PyObject* (ex: METH_VARARGS and METH_O -// calling conventions). -// -// The macro can also be used for METH_FASTCALL and METH_VARARGS|METH_KEYWORDS -// calling conventions to avoid compiler warnings because the function has more -// than 2 parameters. The macro first casts the function to the -// "void func(void)" type to prevent compiler warnings. -// -// If a function is declared with the METH_NOARGS calling convention, it must -// have 2 parameters. Since the second parameter is unused, Py_UNUSED() can be -// used to prevent a compiler warning. If the function has a single parameter, -// it triggers an undefined behavior when Python calls it with 2 parameters -// (bpo-33012). -#define _PyCFunction_CAST(func) \ - _Py_CAST(PyCFunction, _Py_CAST(void(*)(void), (func))) - -PyAPI_FUNC(PyCFunction) PyCFunction_GetFunction(PyObject *); -PyAPI_FUNC(PyObject *) PyCFunction_GetSelf(PyObject *); -PyAPI_FUNC(int) PyCFunction_GetFlags(PyObject *); - -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyCFunction_Call(PyObject *, PyObject *, PyObject *); - -struct PyMethodDef { - const char *ml_name; /* The name of the built-in function/method */ - PyCFunction ml_meth; /* The C function that implements it */ - int ml_flags; /* Combination of METH_xxx flags, which mostly - describe the args expected by the C func */ - const char *ml_doc; /* The __doc__ attribute, or NULL */ -}; - -/* PyCFunction_New is declared as a function for stable ABI (declaration is - * needed for e.g. GCC with -fvisibility=hidden), but redefined as a macro - * that calls PyCFunction_NewEx. */ -PyAPI_FUNC(PyObject *) PyCFunction_New(PyMethodDef *, PyObject *); -#define PyCFunction_New(ML, SELF) PyCFunction_NewEx((ML), (SELF), NULL) - -/* PyCFunction_NewEx is similar: on 3.9+, this calls PyCMethod_New. */ -PyAPI_FUNC(PyObject *) PyCFunction_NewEx(PyMethodDef *, PyObject *, - PyObject *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -#define PyCFunction_NewEx(ML, SELF, MOD) PyCMethod_New((ML), (SELF), (MOD), NULL) -PyAPI_FUNC(PyObject *) PyCMethod_New(PyMethodDef *, PyObject *, - PyObject *, PyTypeObject *); -#endif - - -/* Flag passed to newmethodobject */ -/* #define METH_OLDARGS 0x0000 -- unsupported now */ -#define METH_VARARGS 0x0001 -#define METH_KEYWORDS 0x0002 -/* METH_NOARGS and METH_O must not be combined with the flags above. */ -#define METH_NOARGS 0x0004 -#define METH_O 0x0008 - -/* METH_CLASS and METH_STATIC are a little different; these control - the construction of methods for a class. These cannot be used for - functions in modules. */ -#define METH_CLASS 0x0010 -#define METH_STATIC 0x0020 - -/* METH_COEXIST allows a method to be entered even though a slot has - already filled the entry. When defined, the flag allows a separate - method, "__contains__" for example, to coexist with a defined - slot like sq_contains. */ - -#define METH_COEXIST 0x0040 - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030a0000 -# define METH_FASTCALL 0x0080 -#endif - -/* This bit is preserved for Stackless Python */ -#ifdef STACKLESS -# define METH_STACKLESS 0x0100 -#else -# define METH_STACKLESS 0x0000 -#endif - -/* METH_METHOD means the function stores an - * additional reference to the class that defines it; - * both self and class are passed to it. - * It uses PyCMethodObject instead of PyCFunctionObject. - * May not be combined with METH_NOARGS, METH_O, METH_CLASS or METH_STATIC. - */ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -#define METH_METHOD 0x0200 -#endif - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_METHODOBJECT_H -# include "cpython/methodobject.h" -# undef Py_CPYTHON_METHODOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_METHODOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/modsupport.h b/_Pre_Builds/_Python311_cpp/include/modsupport.h deleted file mode 100644 index b3813a7..0000000 --- a/_Pre_Builds/_Python311_cpp/include/modsupport.h +++ /dev/null @@ -1,170 +0,0 @@ - -#ifndef Py_MODSUPPORT_H -#define Py_MODSUPPORT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Module support interface */ - -#include // va_list - -/* If PY_SSIZE_T_CLEAN is defined, each functions treats #-specifier - to mean Py_ssize_t */ -#ifdef PY_SSIZE_T_CLEAN -#define PyArg_Parse _PyArg_Parse_SizeT -#define PyArg_ParseTuple _PyArg_ParseTuple_SizeT -#define PyArg_ParseTupleAndKeywords _PyArg_ParseTupleAndKeywords_SizeT -#define PyArg_VaParse _PyArg_VaParse_SizeT -#define PyArg_VaParseTupleAndKeywords _PyArg_VaParseTupleAndKeywords_SizeT -#define Py_BuildValue _Py_BuildValue_SizeT -#define Py_VaBuildValue _Py_VaBuildValue_SizeT -#endif - -/* Due to a glitch in 3.2, the _SizeT versions weren't exported from the DLL. */ -#if !defined(PY_SSIZE_T_CLEAN) || !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(int) PyArg_Parse(PyObject *, const char *, ...); -PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...); -PyAPI_FUNC(int) PyArg_ParseTupleAndKeywords(PyObject *, PyObject *, - const char *, char **, ...); -PyAPI_FUNC(int) PyArg_VaParse(PyObject *, const char *, va_list); -PyAPI_FUNC(int) PyArg_VaParseTupleAndKeywords(PyObject *, PyObject *, - const char *, char **, va_list); -#endif -PyAPI_FUNC(int) PyArg_ValidateKeywordArguments(PyObject *); -PyAPI_FUNC(int) PyArg_UnpackTuple(PyObject *, const char *, Py_ssize_t, Py_ssize_t, ...); -PyAPI_FUNC(PyObject *) Py_BuildValue(const char *, ...); -PyAPI_FUNC(PyObject *) _Py_BuildValue_SizeT(const char *, ...); - - -#define ANY_VARARGS(n) (n == PY_SSIZE_T_MAX) - -PyAPI_FUNC(PyObject *) Py_VaBuildValue(const char *, va_list); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030a0000 -// Add an attribute with name 'name' and value 'obj' to the module 'mod. -// On success, return 0 on success. -// On error, raise an exception and return -1. -PyAPI_FUNC(int) PyModule_AddObjectRef(PyObject *mod, const char *name, PyObject *value); -#endif /* Py_LIMITED_API */ - -// Similar to PyModule_AddObjectRef() but steal a reference to 'obj' -// (Py_DECREF(obj)) on success (if it returns 0). -PyAPI_FUNC(int) PyModule_AddObject(PyObject *mod, const char *, PyObject *value); - -PyAPI_FUNC(int) PyModule_AddIntConstant(PyObject *, const char *, long); -PyAPI_FUNC(int) PyModule_AddStringConstant(PyObject *, const char *, const char *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* New in 3.9 */ -PyAPI_FUNC(int) PyModule_AddType(PyObject *module, PyTypeObject *type); -#endif /* Py_LIMITED_API */ - -#define PyModule_AddIntMacro(m, c) PyModule_AddIntConstant(m, #c, c) -#define PyModule_AddStringMacro(m, c) PyModule_AddStringConstant(m, #c, c) - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -PyAPI_FUNC(int) PyModule_SetDocString(PyObject *, const char *); -PyAPI_FUNC(int) PyModule_AddFunctions(PyObject *, PyMethodDef *); -PyAPI_FUNC(int) PyModule_ExecDef(PyObject *module, PyModuleDef *def); -#endif - -#define Py_CLEANUP_SUPPORTED 0x20000 - -#define PYTHON_API_VERSION 1013 -#define PYTHON_API_STRING "1013" -/* The API version is maintained (independently from the Python version) - so we can detect mismatches between the interpreter and dynamically - loaded modules. These are diagnosed by an error message but - the module is still loaded (because the mismatch can only be tested - after loading the module). The error message is intended to - explain the core dump a few seconds later. - - The symbol PYTHON_API_STRING defines the same value as a string - literal. *** PLEASE MAKE SURE THE DEFINITIONS MATCH. *** - - Please add a line or two to the top of this log for each API - version change: - - 22-Feb-2006 MvL 1013 PEP 353 - long indices for sequence lengths - - 19-Aug-2002 GvR 1012 Changes to string object struct for - interning changes, saving 3 bytes. - - 17-Jul-2001 GvR 1011 Descr-branch, just to be on the safe side - - 25-Jan-2001 FLD 1010 Parameters added to PyCode_New() and - PyFrame_New(); Python 2.1a2 - - 14-Mar-2000 GvR 1009 Unicode API added - - 3-Jan-1999 GvR 1007 Decided to change back! (Don't reuse 1008!) - - 3-Dec-1998 GvR 1008 Python 1.5.2b1 - - 18-Jan-1997 GvR 1007 string interning and other speedups - - 11-Oct-1996 GvR renamed Py_Ellipses to Py_Ellipsis :-( - - 30-Jul-1996 GvR Slice and ellipses syntax added - - 23-Jul-1996 GvR For 1.4 -- better safe than sorry this time :-) - - 7-Nov-1995 GvR Keyword arguments (should've been done at 1.3 :-( ) - - 10-Jan-1995 GvR Renamed globals to new naming scheme - - 9-Jan-1995 GvR Initial version (incompatible with older API) -*/ - -/* The PYTHON_ABI_VERSION is introduced in PEP 384. For the lifetime of - Python 3, it will stay at the value of 3; changes to the limited API - must be performed in a strictly backwards-compatible manner. */ -#define PYTHON_ABI_VERSION 3 -#define PYTHON_ABI_STRING "3" - -#ifdef Py_TRACE_REFS - /* When we are tracing reference counts, rename module creation functions so - modules compiled with incompatible settings will generate a - link-time error. */ - #define PyModule_Create2 PyModule_Create2TraceRefs - #define PyModule_FromDefAndSpec2 PyModule_FromDefAndSpec2TraceRefs -#endif - -PyAPI_FUNC(PyObject *) PyModule_Create2(PyModuleDef*, int apiver); - -#ifdef Py_LIMITED_API -#define PyModule_Create(module) \ - PyModule_Create2(module, PYTHON_ABI_VERSION) -#else -#define PyModule_Create(module) \ - PyModule_Create2(module, PYTHON_API_VERSION) -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -PyAPI_FUNC(PyObject *) PyModule_FromDefAndSpec2(PyModuleDef *def, - PyObject *spec, - int module_api_version); - -#ifdef Py_LIMITED_API -#define PyModule_FromDefAndSpec(module, spec) \ - PyModule_FromDefAndSpec2(module, spec, PYTHON_ABI_VERSION) -#else -#define PyModule_FromDefAndSpec(module, spec) \ - PyModule_FromDefAndSpec2(module, spec, PYTHON_API_VERSION) -#endif /* Py_LIMITED_API */ - -#endif /* New in 3.5 */ - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_MODSUPPORT_H -# include "cpython/modsupport.h" -# undef Py_CPYTHON_MODSUPPORT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_MODSUPPORT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/moduleobject.h b/_Pre_Builds/_Python311_cpp/include/moduleobject.h deleted file mode 100644 index 75abd2c..0000000 --- a/_Pre_Builds/_Python311_cpp/include/moduleobject.h +++ /dev/null @@ -1,95 +0,0 @@ - -/* Module object interface */ - -#ifndef Py_MODULEOBJECT_H -#define Py_MODULEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyModule_Type; - -#define PyModule_Check(op) PyObject_TypeCheck(op, &PyModule_Type) -#define PyModule_CheckExact(op) Py_IS_TYPE(op, &PyModule_Type) - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyModule_NewObject( - PyObject *name - ); -#endif -PyAPI_FUNC(PyObject *) PyModule_New( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyModule_GetDict(PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyModule_GetNameObject(PyObject *); -#endif -PyAPI_FUNC(const char *) PyModule_GetName(PyObject *); -Py_DEPRECATED(3.2) PyAPI_FUNC(const char *) PyModule_GetFilename(PyObject *); -PyAPI_FUNC(PyObject *) PyModule_GetFilenameObject(PyObject *); -#ifndef Py_LIMITED_API -PyAPI_FUNC(void) _PyModule_Clear(PyObject *); -PyAPI_FUNC(void) _PyModule_ClearDict(PyObject *); -PyAPI_FUNC(int) _PyModuleSpec_IsInitializing(PyObject *); -#endif -PyAPI_FUNC(PyModuleDef*) PyModule_GetDef(PyObject*); -PyAPI_FUNC(void*) PyModule_GetState(PyObject*); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -PyAPI_FUNC(PyObject *) PyModuleDef_Init(PyModuleDef*); -PyAPI_DATA(PyTypeObject) PyModuleDef_Type; -#endif - -typedef struct PyModuleDef_Base { - PyObject_HEAD - PyObject* (*m_init)(void); - Py_ssize_t m_index; - PyObject* m_copy; -} PyModuleDef_Base; - -#define PyModuleDef_HEAD_INIT { \ - PyObject_HEAD_INIT(_Py_NULL) \ - _Py_NULL, /* m_init */ \ - 0, /* m_index */ \ - _Py_NULL, /* m_copy */ \ - } - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -struct PyModuleDef_Slot { - int slot; - void *value; -}; - -#define Py_mod_create 1 -#define Py_mod_exec 2 - -#ifndef Py_LIMITED_API -#define _Py_mod_LAST_SLOT 2 -#endif - -#endif /* New in 3.5 */ - -struct PyModuleDef { - PyModuleDef_Base m_base; - const char* m_name; - const char* m_doc; - Py_ssize_t m_size; - PyMethodDef *m_methods; - PyModuleDef_Slot *m_slots; - traverseproc m_traverse; - inquiry m_clear; - freefunc m_free; -}; - - -// Internal C API -#ifdef Py_BUILD_CORE -extern int _PyModule_IsExtension(PyObject *obj); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_MODULEOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/object.h b/_Pre_Builds/_Python311_cpp/include/object.h deleted file mode 100644 index f2af428..0000000 --- a/_Pre_Builds/_Python311_cpp/include/object.h +++ /dev/null @@ -1,797 +0,0 @@ -#ifndef Py_OBJECT_H -#define Py_OBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Object and type object interface */ - -/* -Objects are structures allocated on the heap. Special rules apply to -the use of objects to ensure they are properly garbage-collected. -Objects are never allocated statically or on the stack; they must be -accessed through special macros and functions only. (Type objects are -exceptions to the first rule; the standard types are represented by -statically initialized type objects, although work on type/class unification -for Python 2.2 made it possible to have heap-allocated type objects too). - -An object has a 'reference count' that is increased or decreased when a -pointer to the object is copied or deleted; when the reference count -reaches zero there are no references to the object left and it can be -removed from the heap. - -An object has a 'type' that determines what it represents and what kind -of data it contains. An object's type is fixed when it is created. -Types themselves are represented as objects; an object contains a -pointer to the corresponding type object. The type itself has a type -pointer pointing to the object representing the type 'type', which -contains a pointer to itself!. - -Objects do not float around in memory; once allocated an object keeps -the same size and address. Objects that must hold variable-size data -can contain pointers to variable-size parts of the object. Not all -objects of the same type have the same size; but the size cannot change -after allocation. (These restrictions are made so a reference to an -object can be simply a pointer -- moving an object would require -updating all the pointers, and changing an object's size would require -moving it if there was another object right next to it.) - -Objects are always accessed through pointers of the type 'PyObject *'. -The type 'PyObject' is a structure that only contains the reference count -and the type pointer. The actual memory allocated for an object -contains other data that can only be accessed after casting the pointer -to a pointer to a longer structure type. This longer type must start -with the reference count and type fields; the macro PyObject_HEAD should be -used for this (to accommodate for future changes). The implementation -of a particular object type can cast the object pointer to the proper -type and back. - -A standard interface exists for objects that contain an array of items -whose size is determined when the object is allocated. -*/ - -/* Py_DEBUG implies Py_REF_DEBUG. */ -#if defined(Py_DEBUG) && !defined(Py_REF_DEBUG) -# define Py_REF_DEBUG -#endif - -#if defined(Py_LIMITED_API) && defined(Py_TRACE_REFS) -# error Py_LIMITED_API is incompatible with Py_TRACE_REFS -#endif - -#ifdef Py_TRACE_REFS -/* Define pointers to support a doubly-linked list of all live heap objects. */ -#define _PyObject_HEAD_EXTRA \ - PyObject *_ob_next; \ - PyObject *_ob_prev; - -#define _PyObject_EXTRA_INIT _Py_NULL, _Py_NULL, - -#else -# define _PyObject_HEAD_EXTRA -# define _PyObject_EXTRA_INIT -#endif - -/* PyObject_HEAD defines the initial segment of every PyObject. */ -#define PyObject_HEAD PyObject ob_base; - -#define PyObject_HEAD_INIT(type) \ - { _PyObject_EXTRA_INIT \ - 1, type }, - -#define PyVarObject_HEAD_INIT(type, size) \ - { PyObject_HEAD_INIT(type) size }, - -/* PyObject_VAR_HEAD defines the initial segment of all variable-size - * container objects. These end with a declaration of an array with 1 - * element, but enough space is malloc'ed so that the array actually - * has room for ob_size elements. Note that ob_size is an element count, - * not necessarily a byte count. - */ -#define PyObject_VAR_HEAD PyVarObject ob_base; -#define Py_INVALID_SIZE (Py_ssize_t)-1 - -/* Nothing is actually declared to be a PyObject, but every pointer to - * a Python object can be cast to a PyObject*. This is inheritance built - * by hand. Similarly every pointer to a variable-size Python object can, - * in addition, be cast to PyVarObject*. - */ -struct _object { - _PyObject_HEAD_EXTRA - Py_ssize_t ob_refcnt; - PyTypeObject *ob_type; -}; - -/* Cast argument to PyObject* type. */ -#define _PyObject_CAST(op) _Py_CAST(PyObject*, (op)) - -typedef struct { - PyObject ob_base; - Py_ssize_t ob_size; /* Number of items in variable part */ -} PyVarObject; - -/* Cast argument to PyVarObject* type. */ -#define _PyVarObject_CAST(op) _Py_CAST(PyVarObject*, (op)) - - -// Test if the 'x' object is the 'y' object, the same as "x is y" in Python. -PyAPI_FUNC(int) Py_Is(PyObject *x, PyObject *y); -#define Py_Is(x, y) ((x) == (y)) - - -static inline Py_ssize_t Py_REFCNT(PyObject *ob) { - return ob->ob_refcnt; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_REFCNT(ob) Py_REFCNT(_PyObject_CAST(ob)) -#endif - - -// bpo-39573: The Py_SET_TYPE() function must be used to set an object type. -static inline PyTypeObject* Py_TYPE(PyObject *ob) { - return ob->ob_type; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_TYPE(ob) Py_TYPE(_PyObject_CAST(ob)) -#endif - -// bpo-39573: The Py_SET_SIZE() function must be used to set an object size. -static inline Py_ssize_t Py_SIZE(PyObject *ob) { - PyVarObject *var_ob = _PyVarObject_CAST(ob); - return var_ob->ob_size; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_SIZE(ob) Py_SIZE(_PyObject_CAST(ob)) -#endif - - -static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) { - return Py_TYPE(ob) == type; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_IS_TYPE(ob, type) Py_IS_TYPE(_PyObject_CAST(ob), type) -#endif - - -static inline void Py_SET_REFCNT(PyObject *ob, Py_ssize_t refcnt) { - ob->ob_refcnt = refcnt; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_SET_REFCNT(ob, refcnt) Py_SET_REFCNT(_PyObject_CAST(ob), refcnt) -#endif - - -static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) { - ob->ob_type = type; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_SET_TYPE(ob, type) Py_SET_TYPE(_PyObject_CAST(ob), type) -#endif - - -static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) { - ob->ob_size = size; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_SET_SIZE(ob, size) Py_SET_SIZE(_PyVarObject_CAST(ob), size) -#endif - - -/* -Type objects contain a string containing the type name (to help somewhat -in debugging), the allocation parameters (see PyObject_New() and -PyObject_NewVar()), -and methods for accessing objects of the type. Methods are optional, a -nil pointer meaning that particular kind of access is not available for -this type. The Py_DECREF() macro uses the tp_dealloc method without -checking for a nil pointer; it should always be implemented except if -the implementation can guarantee that the reference count will never -reach zero (e.g., for statically allocated type objects). - -NB: the methods for certain type groups are now contained in separate -method blocks. -*/ - -typedef PyObject * (*unaryfunc)(PyObject *); -typedef PyObject * (*binaryfunc)(PyObject *, PyObject *); -typedef PyObject * (*ternaryfunc)(PyObject *, PyObject *, PyObject *); -typedef int (*inquiry)(PyObject *); -typedef Py_ssize_t (*lenfunc)(PyObject *); -typedef PyObject *(*ssizeargfunc)(PyObject *, Py_ssize_t); -typedef PyObject *(*ssizessizeargfunc)(PyObject *, Py_ssize_t, Py_ssize_t); -typedef int(*ssizeobjargproc)(PyObject *, Py_ssize_t, PyObject *); -typedef int(*ssizessizeobjargproc)(PyObject *, Py_ssize_t, Py_ssize_t, PyObject *); -typedef int(*objobjargproc)(PyObject *, PyObject *, PyObject *); - -typedef int (*objobjproc)(PyObject *, PyObject *); -typedef int (*visitproc)(PyObject *, void *); -typedef int (*traverseproc)(PyObject *, visitproc, void *); - - -typedef void (*freefunc)(void *); -typedef void (*destructor)(PyObject *); -typedef PyObject *(*getattrfunc)(PyObject *, char *); -typedef PyObject *(*getattrofunc)(PyObject *, PyObject *); -typedef int (*setattrfunc)(PyObject *, char *, PyObject *); -typedef int (*setattrofunc)(PyObject *, PyObject *, PyObject *); -typedef PyObject *(*reprfunc)(PyObject *); -typedef Py_hash_t (*hashfunc)(PyObject *); -typedef PyObject *(*richcmpfunc) (PyObject *, PyObject *, int); -typedef PyObject *(*getiterfunc) (PyObject *); -typedef PyObject *(*iternextfunc) (PyObject *); -typedef PyObject *(*descrgetfunc) (PyObject *, PyObject *, PyObject *); -typedef int (*descrsetfunc) (PyObject *, PyObject *, PyObject *); -typedef int (*initproc)(PyObject *, PyObject *, PyObject *); -typedef PyObject *(*newfunc)(PyTypeObject *, PyObject *, PyObject *); -typedef PyObject *(*allocfunc)(PyTypeObject *, Py_ssize_t); - -typedef struct{ - int slot; /* slot id, see below */ - void *pfunc; /* function pointer */ -} PyType_Slot; - -typedef struct{ - const char* name; - int basicsize; - int itemsize; - unsigned int flags; - PyType_Slot *slots; /* terminated by slot==0. */ -} PyType_Spec; - -PyAPI_FUNC(PyObject*) PyType_FromSpec(PyType_Spec*); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyType_FromSpecWithBases(PyType_Spec*, PyObject*); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03040000 -PyAPI_FUNC(void*) PyType_GetSlot(PyTypeObject*, int); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -PyAPI_FUNC(PyObject*) PyType_FromModuleAndSpec(PyObject *, PyType_Spec *, PyObject *); -PyAPI_FUNC(PyObject *) PyType_GetModule(PyTypeObject *); -PyAPI_FUNC(void *) PyType_GetModuleState(PyTypeObject *); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030B0000 -PyAPI_FUNC(PyObject *) PyType_GetName(PyTypeObject *); -PyAPI_FUNC(PyObject *) PyType_GetQualName(PyTypeObject *); -#endif - -/* Generic type check */ -PyAPI_FUNC(int) PyType_IsSubtype(PyTypeObject *, PyTypeObject *); - -static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) { - return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyObject_TypeCheck(ob, type) PyObject_TypeCheck(_PyObject_CAST(ob), type) -#endif - -PyAPI_DATA(PyTypeObject) PyType_Type; /* built-in 'type' */ -PyAPI_DATA(PyTypeObject) PyBaseObject_Type; /* built-in 'object' */ -PyAPI_DATA(PyTypeObject) PySuper_Type; /* built-in 'super' */ - -PyAPI_FUNC(unsigned long) PyType_GetFlags(PyTypeObject*); - -PyAPI_FUNC(int) PyType_Ready(PyTypeObject *); -PyAPI_FUNC(PyObject *) PyType_GenericAlloc(PyTypeObject *, Py_ssize_t); -PyAPI_FUNC(PyObject *) PyType_GenericNew(PyTypeObject *, - PyObject *, PyObject *); -PyAPI_FUNC(unsigned int) PyType_ClearCache(void); -PyAPI_FUNC(void) PyType_Modified(PyTypeObject *); - -/* Generic operations on objects */ -PyAPI_FUNC(PyObject *) PyObject_Repr(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_Str(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_ASCII(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_Bytes(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_RichCompare(PyObject *, PyObject *, int); -PyAPI_FUNC(int) PyObject_RichCompareBool(PyObject *, PyObject *, int); -PyAPI_FUNC(PyObject *) PyObject_GetAttrString(PyObject *, const char *); -PyAPI_FUNC(int) PyObject_SetAttrString(PyObject *, const char *, PyObject *); -PyAPI_FUNC(int) PyObject_HasAttrString(PyObject *, const char *); -PyAPI_FUNC(PyObject *) PyObject_GetAttr(PyObject *, PyObject *); -PyAPI_FUNC(int) PyObject_SetAttr(PyObject *, PyObject *, PyObject *); -PyAPI_FUNC(int) PyObject_HasAttr(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyObject_SelfIter(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_GenericGetAttr(PyObject *, PyObject *); -PyAPI_FUNC(int) PyObject_GenericSetAttr(PyObject *, PyObject *, PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(int) PyObject_GenericSetDict(PyObject *, PyObject *, void *); -#endif -PyAPI_FUNC(Py_hash_t) PyObject_Hash(PyObject *); -PyAPI_FUNC(Py_hash_t) PyObject_HashNotImplemented(PyObject *); -PyAPI_FUNC(int) PyObject_IsTrue(PyObject *); -PyAPI_FUNC(int) PyObject_Not(PyObject *); -PyAPI_FUNC(int) PyCallable_Check(PyObject *); -PyAPI_FUNC(void) PyObject_ClearWeakRefs(PyObject *); - -/* PyObject_Dir(obj) acts like Python builtins.dir(obj), returning a - list of strings. PyObject_Dir(NULL) is like builtins.dir(), - returning the names of the current locals. In this case, if there are - no current locals, NULL is returned, and PyErr_Occurred() is false. -*/ -PyAPI_FUNC(PyObject *) PyObject_Dir(PyObject *); - -/* Pickle support. */ -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PyObject_GetState(PyObject *); -#endif - - -/* Helpers for printing recursive container types */ -PyAPI_FUNC(int) Py_ReprEnter(PyObject *); -PyAPI_FUNC(void) Py_ReprLeave(PyObject *); - -/* Flag bits for printing: */ -#define Py_PRINT_RAW 1 /* No string quotes etc. */ - -/* -Type flags (tp_flags) - -These flags are used to change expected features and behavior for a -particular type. - -Arbitration of the flag bit positions will need to be coordinated among -all extension writers who publicly release their extensions (this will -be fewer than you might expect!). - -Most flags were removed as of Python 3.0 to make room for new flags. (Some -flags are not for backwards compatibility but to indicate the presence of an -optional feature; these flags remain of course.) - -Type definitions should use Py_TPFLAGS_DEFAULT for their tp_flags value. - -Code can use PyType_HasFeature(type_ob, flag_value) to test whether the -given type object has a specified feature. -*/ - -#ifndef Py_LIMITED_API - -/* Placement of dict (and values) pointers are managed by the VM, not by the type. - * The VM will automatically set tp_dictoffset. Should not be used for variable sized - * classes, such as classes that extend tuple. - */ -#define Py_TPFLAGS_MANAGED_DICT (1 << 4) - -/* Set if instances of the type object are treated as sequences for pattern matching */ -#define Py_TPFLAGS_SEQUENCE (1 << 5) -/* Set if instances of the type object are treated as mappings for pattern matching */ -#define Py_TPFLAGS_MAPPING (1 << 6) -#endif - -/* Disallow creating instances of the type: set tp_new to NULL and don't create - * the "__new__" key in the type dictionary. */ -#define Py_TPFLAGS_DISALLOW_INSTANTIATION (1UL << 7) - -/* Set if the type object is immutable: type attributes cannot be set nor deleted */ -#define Py_TPFLAGS_IMMUTABLETYPE (1UL << 8) - -/* Set if the type object is dynamically allocated */ -#define Py_TPFLAGS_HEAPTYPE (1UL << 9) - -/* Set if the type allows subclassing */ -#define Py_TPFLAGS_BASETYPE (1UL << 10) - -/* Set if the type implements the vectorcall protocol (PEP 590) */ -#ifndef Py_LIMITED_API -#define Py_TPFLAGS_HAVE_VECTORCALL (1UL << 11) -// Backwards compatibility alias for API that was provisional in Python 3.8 -#define _Py_TPFLAGS_HAVE_VECTORCALL Py_TPFLAGS_HAVE_VECTORCALL -#endif - -/* Set if the type is 'ready' -- fully initialized */ -#define Py_TPFLAGS_READY (1UL << 12) - -/* Set while the type is being 'readied', to prevent recursive ready calls */ -#define Py_TPFLAGS_READYING (1UL << 13) - -/* Objects support garbage collection (see objimpl.h) */ -#define Py_TPFLAGS_HAVE_GC (1UL << 14) - -/* These two bits are preserved for Stackless Python, next after this is 17 */ -#ifdef STACKLESS -#define Py_TPFLAGS_HAVE_STACKLESS_EXTENSION (3UL << 15) -#else -#define Py_TPFLAGS_HAVE_STACKLESS_EXTENSION 0 -#endif - -/* Objects behave like an unbound method */ -#define Py_TPFLAGS_METHOD_DESCRIPTOR (1UL << 17) - -/* Object has up-to-date type attribute cache */ -#define Py_TPFLAGS_VALID_VERSION_TAG (1UL << 19) - -/* Type is abstract and cannot be instantiated */ -#define Py_TPFLAGS_IS_ABSTRACT (1UL << 20) - -// This undocumented flag gives certain built-ins their unique pattern-matching -// behavior, which allows a single positional subpattern to match against the -// subject itself (rather than a mapped attribute on it): -#define _Py_TPFLAGS_MATCH_SELF (1UL << 22) - -/* These flags are used to determine if a type is a subclass. */ -#define Py_TPFLAGS_LONG_SUBCLASS (1UL << 24) -#define Py_TPFLAGS_LIST_SUBCLASS (1UL << 25) -#define Py_TPFLAGS_TUPLE_SUBCLASS (1UL << 26) -#define Py_TPFLAGS_BYTES_SUBCLASS (1UL << 27) -#define Py_TPFLAGS_UNICODE_SUBCLASS (1UL << 28) -#define Py_TPFLAGS_DICT_SUBCLASS (1UL << 29) -#define Py_TPFLAGS_BASE_EXC_SUBCLASS (1UL << 30) -#define Py_TPFLAGS_TYPE_SUBCLASS (1UL << 31) - -#define Py_TPFLAGS_DEFAULT ( \ - Py_TPFLAGS_HAVE_STACKLESS_EXTENSION | \ - 0) - -/* NOTE: Some of the following flags reuse lower bits (removed as part of the - * Python 3.0 transition). */ - -/* The following flags are kept for compatibility; in previous - * versions they indicated presence of newer tp_* fields on the - * type struct. - * Starting with 3.8, binary compatibility of C extensions across - * feature releases of Python is not supported anymore (except when - * using the stable ABI, in which all classes are created dynamically, - * using the interpreter's memory layout.) - * Note that older extensions using the stable ABI set these flags, - * so the bits must not be repurposed. - */ -#define Py_TPFLAGS_HAVE_FINALIZE (1UL << 0) -#define Py_TPFLAGS_HAVE_VERSION_TAG (1UL << 18) - - -/* -The macros Py_INCREF(op) and Py_DECREF(op) are used to increment or decrement -reference counts. Py_DECREF calls the object's deallocator function when -the refcount falls to 0; for -objects that don't contain references to other objects or heap memory -this can be the standard function free(). Both macros can be used -wherever a void expression is allowed. The argument must not be a -NULL pointer. If it may be NULL, use Py_XINCREF/Py_XDECREF instead. -The macro _Py_NewReference(op) initialize reference counts to 1, and -in special builds (Py_REF_DEBUG, Py_TRACE_REFS) performs additional -bookkeeping appropriate to the special build. - -We assume that the reference count field can never overflow; this can -be proven when the size of the field is the same as the pointer size, so -we ignore the possibility. Provided a C int is at least 32 bits (which -is implicitly assumed in many parts of this code), that's enough for -about 2**31 references to an object. - -XXX The following became out of date in Python 2.2, but I'm not sure -XXX what the full truth is now. Certainly, heap-allocated type objects -XXX can and should be deallocated. -Type objects should never be deallocated; the type pointer in an object -is not considered to be a reference to the type object, to save -complications in the deallocation function. (This is actually a -decision that's up to the implementer of each new type so if you want, -you can count such references to the type object.) -*/ - -#ifdef Py_REF_DEBUG -PyAPI_DATA(Py_ssize_t) _Py_RefTotal; -PyAPI_FUNC(void) _Py_NegativeRefcount(const char *filename, int lineno, - PyObject *op); -#endif /* Py_REF_DEBUG */ - -PyAPI_FUNC(void) _Py_Dealloc(PyObject *); - -/* -These are provided as conveniences to Python runtime embedders, so that -they can have object code that is not dependent on Python compilation flags. -*/ -PyAPI_FUNC(void) Py_IncRef(PyObject *); -PyAPI_FUNC(void) Py_DecRef(PyObject *); - -// Similar to Py_IncRef() and Py_DecRef() but the argument must be non-NULL. -// Private functions used by Py_INCREF() and Py_DECREF(). -PyAPI_FUNC(void) _Py_IncRef(PyObject *); -PyAPI_FUNC(void) _Py_DecRef(PyObject *); - -static inline void Py_INCREF(PyObject *op) -{ -#if defined(Py_REF_DEBUG) && defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x030A0000 - // Stable ABI for Python 3.10 built in debug mode. - _Py_IncRef(op); -#else - // Non-limited C API and limited C API for Python 3.9 and older access - // directly PyObject.ob_refcnt. -#ifdef Py_REF_DEBUG - _Py_RefTotal++; -#endif - op->ob_refcnt++; -#endif -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_INCREF(op) Py_INCREF(_PyObject_CAST(op)) -#endif - - -#if defined(Py_REF_DEBUG) && defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x030A0000 -// Stable ABI for limited C API version 3.10 of Python debug build -static inline void Py_DECREF(PyObject *op) { - _Py_DecRef(op); -} -#define Py_DECREF(op) Py_DECREF(_PyObject_CAST(op)) - -#elif defined(Py_REF_DEBUG) -static inline void Py_DECREF(const char *filename, int lineno, PyObject *op) -{ - _Py_RefTotal--; - if (--op->ob_refcnt != 0) { - if (op->ob_refcnt < 0) { - _Py_NegativeRefcount(filename, lineno, op); - } - } - else { - _Py_Dealloc(op); - } -} -#define Py_DECREF(op) Py_DECREF(__FILE__, __LINE__, _PyObject_CAST(op)) - -#else -static inline void Py_DECREF(PyObject *op) -{ - // Non-limited C API and limited C API for Python 3.9 and older access - // directly PyObject.ob_refcnt. - if (--op->ob_refcnt == 0) { - _Py_Dealloc(op); - } -} -#define Py_DECREF(op) Py_DECREF(_PyObject_CAST(op)) -#endif - - -/* Safely decref `op` and set `op` to NULL, especially useful in tp_clear - * and tp_dealloc implementations. - * - * Note that "the obvious" code can be deadly: - * - * Py_XDECREF(op); - * op = NULL; - * - * Typically, `op` is something like self->containee, and `self` is done - * using its `containee` member. In the code sequence above, suppose - * `containee` is non-NULL with a refcount of 1. Its refcount falls to - * 0 on the first line, which can trigger an arbitrary amount of code, - * possibly including finalizers (like __del__ methods or weakref callbacks) - * coded in Python, which in turn can release the GIL and allow other threads - * to run, etc. Such code may even invoke methods of `self` again, or cause - * cyclic gc to trigger, but-- oops! --self->containee still points to the - * object being torn down, and it may be in an insane state while being torn - * down. This has in fact been a rich historic source of miserable (rare & - * hard-to-diagnose) segfaulting (and other) bugs. - * - * The safe way is: - * - * Py_CLEAR(op); - * - * That arranges to set `op` to NULL _before_ decref'ing, so that any code - * triggered as a side-effect of `op` getting torn down no longer believes - * `op` points to a valid object. - * - * There are cases where it's safe to use the naive code, but they're brittle. - * For example, if `op` points to a Python integer, you know that destroying - * one of those can't cause problems -- but in part that relies on that - * Python integers aren't currently weakly referencable. Best practice is - * to use Py_CLEAR() even if you can't think of a reason for why you need to. - */ -#define Py_CLEAR(op) \ - do { \ - PyObject *_py_tmp = _PyObject_CAST(op); \ - if (_py_tmp != NULL) { \ - (op) = NULL; \ - Py_DECREF(_py_tmp); \ - } \ - } while (0) - -/* Function to use in case the object pointer can be NULL: */ -static inline void Py_XINCREF(PyObject *op) -{ - if (op != _Py_NULL) { - Py_INCREF(op); - } -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_XINCREF(op) Py_XINCREF(_PyObject_CAST(op)) -#endif - -static inline void Py_XDECREF(PyObject *op) -{ - if (op != _Py_NULL) { - Py_DECREF(op); - } -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_XDECREF(op) Py_XDECREF(_PyObject_CAST(op)) -#endif - -// Create a new strong reference to an object: -// increment the reference count of the object and return the object. -PyAPI_FUNC(PyObject*) Py_NewRef(PyObject *obj); - -// Similar to Py_NewRef(), but the object can be NULL. -PyAPI_FUNC(PyObject*) Py_XNewRef(PyObject *obj); - -static inline PyObject* _Py_NewRef(PyObject *obj) -{ - Py_INCREF(obj); - return obj; -} - -static inline PyObject* _Py_XNewRef(PyObject *obj) -{ - Py_XINCREF(obj); - return obj; -} - -// Py_NewRef() and Py_XNewRef() are exported as functions for the stable ABI. -// Names overridden with macros by static inline functions for best -// performances. -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_NewRef(obj) _Py_NewRef(_PyObject_CAST(obj)) -# define Py_XNewRef(obj) _Py_XNewRef(_PyObject_CAST(obj)) -#else -# define Py_NewRef(obj) _Py_NewRef(obj) -# define Py_XNewRef(obj) _Py_XNewRef(obj) -#endif - - -/* -_Py_NoneStruct is an object of undefined type which can be used in contexts -where NULL (nil) is not suitable (since NULL often means 'error'). - -Don't forget to apply Py_INCREF() when returning this value!!! -*/ -PyAPI_DATA(PyObject) _Py_NoneStruct; /* Don't use this directly */ -#define Py_None (&_Py_NoneStruct) - -// Test if an object is the None singleton, the same as "x is None" in Python. -PyAPI_FUNC(int) Py_IsNone(PyObject *x); -#define Py_IsNone(x) Py_Is((x), Py_None) - -/* Macro for returning Py_None from a function */ -#define Py_RETURN_NONE return Py_NewRef(Py_None) - -/* -Py_NotImplemented is a singleton used to signal that an operation is -not implemented for a given type combination. -*/ -PyAPI_DATA(PyObject) _Py_NotImplementedStruct; /* Don't use this directly */ -#define Py_NotImplemented (&_Py_NotImplementedStruct) - -/* Macro for returning Py_NotImplemented from a function */ -#define Py_RETURN_NOTIMPLEMENTED return Py_NewRef(Py_NotImplemented) - -/* Rich comparison opcodes */ -#define Py_LT 0 -#define Py_LE 1 -#define Py_EQ 2 -#define Py_NE 3 -#define Py_GT 4 -#define Py_GE 5 - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -/* Result of calling PyIter_Send */ -typedef enum { - PYGEN_RETURN = 0, - PYGEN_ERROR = -1, - PYGEN_NEXT = 1, -} PySendResult; -#endif - -/* - * Macro for implementing rich comparisons - * - * Needs to be a macro because any C-comparable type can be used. - */ -#define Py_RETURN_RICHCOMPARE(val1, val2, op) \ - do { \ - switch (op) { \ - case Py_EQ: if ((val1) == (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_NE: if ((val1) != (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_LT: if ((val1) < (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_GT: if ((val1) > (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_LE: if ((val1) <= (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_GE: if ((val1) >= (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - default: \ - Py_UNREACHABLE(); \ - } \ - } while (0) - - -/* -More conventions -================ - -Argument Checking ------------------ - -Functions that take objects as arguments normally don't check for nil -arguments, but they do check the type of the argument, and return an -error if the function doesn't apply to the type. - -Failure Modes -------------- - -Functions may fail for a variety of reasons, including running out of -memory. This is communicated to the caller in two ways: an error string -is set (see errors.h), and the function result differs: functions that -normally return a pointer return NULL for failure, functions returning -an integer return -1 (which could be a legal return value too!), and -other functions return 0 for success and -1 for failure. -Callers should always check for errors before using the result. If -an error was set, the caller must either explicitly clear it, or pass -the error on to its caller. - -Reference Counts ----------------- - -It takes a while to get used to the proper usage of reference counts. - -Functions that create an object set the reference count to 1; such new -objects must be stored somewhere or destroyed again with Py_DECREF(). -Some functions that 'store' objects, such as PyTuple_SetItem() and -PyList_SetItem(), -don't increment the reference count of the object, since the most -frequent use is to store a fresh object. Functions that 'retrieve' -objects, such as PyTuple_GetItem() and PyDict_GetItemString(), also -don't increment -the reference count, since most frequently the object is only looked at -quickly. Thus, to retrieve an object and store it again, the caller -must call Py_INCREF() explicitly. - -NOTE: functions that 'consume' a reference count, like -PyList_SetItem(), consume the reference even if the object wasn't -successfully stored, to simplify error handling. - -It seems attractive to make other functions that take an object as -argument consume a reference count; however, this may quickly get -confusing (even the current practice is already confusing). Consider -it carefully, it may save lots of calls to Py_INCREF() and Py_DECREF() at -times. -*/ - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_OBJECT_H -# include "cpython/object.h" -# undef Py_CPYTHON_OBJECT_H -#endif - - -static inline int -PyType_HasFeature(PyTypeObject *type, unsigned long feature) -{ - unsigned long flags; -#ifdef Py_LIMITED_API - // PyTypeObject is opaque in the limited C API - flags = PyType_GetFlags(type); -#else - flags = type->tp_flags; -#endif - return ((flags & feature) != 0); -} - -#define PyType_FastSubclass(type, flag) PyType_HasFeature(type, flag) - -static inline int PyType_Check(PyObject *op) { - return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyType_Check(op) PyType_Check(_PyObject_CAST(op)) -#endif - -#define _PyType_CAST(op) \ - (assert(PyType_Check(op)), _Py_CAST(PyTypeObject*, (op))) - -static inline int PyType_CheckExact(PyObject *op) { - return Py_IS_TYPE(op, &PyType_Type); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyType_CheckExact(op) PyType_CheckExact(_PyObject_CAST(op)) -#endif - -#ifdef __cplusplus -} -#endif -#endif // !Py_OBJECT_H diff --git a/_Pre_Builds/_Python311_cpp/include/objimpl.h b/_Pre_Builds/_Python311_cpp/include/objimpl.h deleted file mode 100644 index 4fa670e..0000000 --- a/_Pre_Builds/_Python311_cpp/include/objimpl.h +++ /dev/null @@ -1,215 +0,0 @@ -/* The PyObject_ memory family: high-level object memory interfaces. - See pymem.h for the low-level PyMem_ family. -*/ - -#ifndef Py_OBJIMPL_H -#define Py_OBJIMPL_H - -#include "pymem.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BEWARE: - - Each interface exports both functions and macros. Extension modules should - use the functions, to ensure binary compatibility across Python versions. - Because the Python implementation is free to change internal details, and - the macros may (or may not) expose details for speed, if you do use the - macros you must recompile your extensions with each Python release. - - Never mix calls to PyObject_ memory functions with calls to the platform - malloc/realloc/ calloc/free, or with calls to PyMem_. -*/ - -/* -Functions and macros for modules that implement new object types. - - - PyObject_New(type, typeobj) allocates memory for a new object of the given - type, and initializes part of it. 'type' must be the C structure type used - to represent the object, and 'typeobj' the address of the corresponding - type object. Reference count and type pointer are filled in; the rest of - the bytes of the object are *undefined*! The resulting expression type is - 'type *'. The size of the object is determined by the tp_basicsize field - of the type object. - - - PyObject_NewVar(type, typeobj, n) is similar but allocates a variable-size - object with room for n items. In addition to the refcount and type pointer - fields, this also fills in the ob_size field. - - - PyObject_Free(op) releases the memory allocated for an object. It does not - run a destructor -- it only frees the memory. PyObject_Free is identical. - - - PyObject_Init(op, typeobj) and PyObject_InitVar(op, typeobj, n) don't - allocate memory. Instead of a 'type' parameter, they take a pointer to a - new object (allocated by an arbitrary allocator), and initialize its object - header fields. - -Note that objects created with PyObject_{New, NewVar} are allocated using the -specialized Python allocator (implemented in obmalloc.c), if WITH_PYMALLOC is -enabled. In addition, a special debugging allocator is used if Py_DEBUG -macro is also defined. - -In case a specific form of memory management is needed (for example, if you -must use the platform malloc heap(s), or shared memory, or C++ local storage or -operator new), you must first allocate the object with your custom allocator, -then pass its pointer to PyObject_{Init, InitVar} for filling in its Python- -specific fields: reference count, type pointer, possibly others. You should -be aware that Python has no control over these objects because they don't -cooperate with the Python memory manager. Such objects may not be eligible -for automatic garbage collection and you have to make sure that they are -released accordingly whenever their destructor gets called (cf. the specific -form of memory management you're using). - -Unless you have specific memory management requirements, use -PyObject_{New, NewVar, Del}. -*/ - -/* - * Raw object memory interface - * =========================== - */ - -/* Functions to call the same malloc/realloc/free as used by Python's - object allocator. If WITH_PYMALLOC is enabled, these may differ from - the platform malloc/realloc/free. The Python object allocator is - designed for fast, cache-conscious allocation of many "small" objects, - and with low hidden memory overhead. - - PyObject_Malloc(0) returns a unique non-NULL pointer if possible. - - PyObject_Realloc(NULL, n) acts like PyObject_Malloc(n). - PyObject_Realloc(p != NULL, 0) does not return NULL, or free the memory - at p. - - Returned pointers must be checked for NULL explicitly; no action is - performed on failure other than to return NULL (no warning it printed, no - exception is set, etc). - - For allocating objects, use PyObject_{New, NewVar} instead whenever - possible. The PyObject_{Malloc, Realloc, Free} family is exposed - so that you can exploit Python's small-block allocator for non-object - uses. If you must use these routines to allocate object memory, make sure - the object gets initialized via PyObject_{Init, InitVar} after obtaining - the raw memory. -*/ -PyAPI_FUNC(void *) PyObject_Malloc(size_t size); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(void *) PyObject_Calloc(size_t nelem, size_t elsize); -#endif -PyAPI_FUNC(void *) PyObject_Realloc(void *ptr, size_t new_size); -PyAPI_FUNC(void) PyObject_Free(void *ptr); - - -// Deprecated aliases only kept for backward compatibility. -// PyObject_Del and PyObject_DEL are defined with no parameter to be able to -// use them as function pointers (ex: tp_free = PyObject_Del). -#define PyObject_MALLOC PyObject_Malloc -#define PyObject_REALLOC PyObject_Realloc -#define PyObject_FREE PyObject_Free -#define PyObject_Del PyObject_Free -#define PyObject_DEL PyObject_Free - - -/* - * Generic object allocator interface - * ================================== - */ - -/* Functions */ -PyAPI_FUNC(PyObject *) PyObject_Init(PyObject *, PyTypeObject *); -PyAPI_FUNC(PyVarObject *) PyObject_InitVar(PyVarObject *, - PyTypeObject *, Py_ssize_t); - -#define PyObject_INIT(op, typeobj) \ - PyObject_Init(_PyObject_CAST(op), (typeobj)) -#define PyObject_INIT_VAR(op, typeobj, size) \ - PyObject_InitVar(_PyVarObject_CAST(op), (typeobj), (size)) - - -PyAPI_FUNC(PyObject *) _PyObject_New(PyTypeObject *); -PyAPI_FUNC(PyVarObject *) _PyObject_NewVar(PyTypeObject *, Py_ssize_t); - -#define PyObject_New(type, typeobj) ((type *)_PyObject_New(typeobj)) - -// Alias to PyObject_New(). In Python 3.8, PyObject_NEW() called directly -// PyObject_MALLOC() with _PyObject_SIZE(). -#define PyObject_NEW(type, typeobj) PyObject_New(type, typeobj) - -#define PyObject_NewVar(type, typeobj, n) \ - ( (type *) _PyObject_NewVar((typeobj), (n)) ) - -// Alias to PyObject_NewVar(). In Python 3.8, PyObject_NEW_VAR() called -// directly PyObject_MALLOC() with _PyObject_VAR_SIZE(). -#define PyObject_NEW_VAR(type, typeobj, n) PyObject_NewVar(type, typeobj, n) - - -/* - * Garbage Collection Support - * ========================== - */ - -/* C equivalent of gc.collect(). */ -PyAPI_FUNC(Py_ssize_t) PyGC_Collect(void); -/* C API for controlling the state of the garbage collector */ -PyAPI_FUNC(int) PyGC_Enable(void); -PyAPI_FUNC(int) PyGC_Disable(void); -PyAPI_FUNC(int) PyGC_IsEnabled(void); - -/* Test if a type has a GC head */ -#define PyType_IS_GC(t) PyType_HasFeature((t), Py_TPFLAGS_HAVE_GC) - -PyAPI_FUNC(PyVarObject *) _PyObject_GC_Resize(PyVarObject *, Py_ssize_t); -#define PyObject_GC_Resize(type, op, n) \ - ( (type *) _PyObject_GC_Resize(_PyVarObject_CAST(op), (n)) ) - - - -PyAPI_FUNC(PyObject *) _PyObject_GC_New(PyTypeObject *); -PyAPI_FUNC(PyVarObject *) _PyObject_GC_NewVar(PyTypeObject *, Py_ssize_t); - -/* Tell the GC to track this object. - * - * See also private _PyObject_GC_TRACK() macro. */ -PyAPI_FUNC(void) PyObject_GC_Track(void *); - -/* Tell the GC to stop tracking this object. - * - * See also private _PyObject_GC_UNTRACK() macro. */ -PyAPI_FUNC(void) PyObject_GC_UnTrack(void *); - -PyAPI_FUNC(void) PyObject_GC_Del(void *); - -#define PyObject_GC_New(type, typeobj) \ - _Py_CAST(type*, _PyObject_GC_New(typeobj)) -#define PyObject_GC_NewVar(type, typeobj, n) \ - _Py_CAST(type*, _PyObject_GC_NewVar((typeobj), (n))) - -PyAPI_FUNC(int) PyObject_GC_IsTracked(PyObject *); -PyAPI_FUNC(int) PyObject_GC_IsFinalized(PyObject *); - -/* Utility macro to help write tp_traverse functions. - * To use this macro, the tp_traverse function must name its arguments - * "visit" and "arg". This is intended to keep tp_traverse functions - * looking as much alike as possible. - */ -#define Py_VISIT(op) \ - do { \ - if (op) { \ - int vret = visit(_PyObject_CAST(op), arg); \ - if (vret) \ - return vret; \ - } \ - } while (0) - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_OBJIMPL_H -# include "cpython/objimpl.h" -# undef Py_CPYTHON_OBJIMPL_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OBJIMPL_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/opcode.h b/_Pre_Builds/_Python311_cpp/include/opcode.h deleted file mode 100644 index 084d34b..0000000 --- a/_Pre_Builds/_Python311_cpp/include/opcode.h +++ /dev/null @@ -1,236 +0,0 @@ -// Auto-generated by Tools/scripts/generate_opcode_h.py from Lib/opcode.py - -#ifndef Py_OPCODE_H -#define Py_OPCODE_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Instruction opcodes for compiled code */ -#define CACHE 0 -#define POP_TOP 1 -#define PUSH_NULL 2 -#define NOP 9 -#define UNARY_POSITIVE 10 -#define UNARY_NEGATIVE 11 -#define UNARY_NOT 12 -#define UNARY_INVERT 15 -#define BINARY_SUBSCR 25 -#define GET_LEN 30 -#define MATCH_MAPPING 31 -#define MATCH_SEQUENCE 32 -#define MATCH_KEYS 33 -#define PUSH_EXC_INFO 35 -#define CHECK_EXC_MATCH 36 -#define CHECK_EG_MATCH 37 -#define WITH_EXCEPT_START 49 -#define GET_AITER 50 -#define GET_ANEXT 51 -#define BEFORE_ASYNC_WITH 52 -#define BEFORE_WITH 53 -#define END_ASYNC_FOR 54 -#define STORE_SUBSCR 60 -#define DELETE_SUBSCR 61 -#define GET_ITER 68 -#define GET_YIELD_FROM_ITER 69 -#define PRINT_EXPR 70 -#define LOAD_BUILD_CLASS 71 -#define LOAD_ASSERTION_ERROR 74 -#define RETURN_GENERATOR 75 -#define LIST_TO_TUPLE 82 -#define RETURN_VALUE 83 -#define IMPORT_STAR 84 -#define SETUP_ANNOTATIONS 85 -#define YIELD_VALUE 86 -#define ASYNC_GEN_WRAP 87 -#define PREP_RERAISE_STAR 88 -#define POP_EXCEPT 89 -#define HAVE_ARGUMENT 90 -#define STORE_NAME 90 -#define DELETE_NAME 91 -#define UNPACK_SEQUENCE 92 -#define FOR_ITER 93 -#define UNPACK_EX 94 -#define STORE_ATTR 95 -#define DELETE_ATTR 96 -#define STORE_GLOBAL 97 -#define DELETE_GLOBAL 98 -#define SWAP 99 -#define LOAD_CONST 100 -#define LOAD_NAME 101 -#define BUILD_TUPLE 102 -#define BUILD_LIST 103 -#define BUILD_SET 104 -#define BUILD_MAP 105 -#define LOAD_ATTR 106 -#define COMPARE_OP 107 -#define IMPORT_NAME 108 -#define IMPORT_FROM 109 -#define JUMP_FORWARD 110 -#define JUMP_IF_FALSE_OR_POP 111 -#define JUMP_IF_TRUE_OR_POP 112 -#define POP_JUMP_FORWARD_IF_FALSE 114 -#define POP_JUMP_FORWARD_IF_TRUE 115 -#define LOAD_GLOBAL 116 -#define IS_OP 117 -#define CONTAINS_OP 118 -#define RERAISE 119 -#define COPY 120 -#define BINARY_OP 122 -#define SEND 123 -#define LOAD_FAST 124 -#define STORE_FAST 125 -#define DELETE_FAST 126 -#define POP_JUMP_FORWARD_IF_NOT_NONE 128 -#define POP_JUMP_FORWARD_IF_NONE 129 -#define RAISE_VARARGS 130 -#define GET_AWAITABLE 131 -#define MAKE_FUNCTION 132 -#define BUILD_SLICE 133 -#define JUMP_BACKWARD_NO_INTERRUPT 134 -#define MAKE_CELL 135 -#define LOAD_CLOSURE 136 -#define LOAD_DEREF 137 -#define STORE_DEREF 138 -#define DELETE_DEREF 139 -#define JUMP_BACKWARD 140 -#define CALL_FUNCTION_EX 142 -#define EXTENDED_ARG 144 -#define LIST_APPEND 145 -#define SET_ADD 146 -#define MAP_ADD 147 -#define LOAD_CLASSDEREF 148 -#define COPY_FREE_VARS 149 -#define RESUME 151 -#define MATCH_CLASS 152 -#define FORMAT_VALUE 155 -#define BUILD_CONST_KEY_MAP 156 -#define BUILD_STRING 157 -#define LOAD_METHOD 160 -#define LIST_EXTEND 162 -#define SET_UPDATE 163 -#define DICT_MERGE 164 -#define DICT_UPDATE 165 -#define PRECALL 166 -#define CALL 171 -#define KW_NAMES 172 -#define POP_JUMP_BACKWARD_IF_NOT_NONE 173 -#define POP_JUMP_BACKWARD_IF_NONE 174 -#define POP_JUMP_BACKWARD_IF_FALSE 175 -#define POP_JUMP_BACKWARD_IF_TRUE 176 -#define BINARY_OP_ADAPTIVE 3 -#define BINARY_OP_ADD_FLOAT 4 -#define BINARY_OP_ADD_INT 5 -#define BINARY_OP_ADD_UNICODE 6 -#define BINARY_OP_INPLACE_ADD_UNICODE 7 -#define BINARY_OP_MULTIPLY_FLOAT 8 -#define BINARY_OP_MULTIPLY_INT 13 -#define BINARY_OP_SUBTRACT_FLOAT 14 -#define BINARY_OP_SUBTRACT_INT 16 -#define BINARY_SUBSCR_ADAPTIVE 17 -#define BINARY_SUBSCR_DICT 18 -#define BINARY_SUBSCR_GETITEM 19 -#define BINARY_SUBSCR_LIST_INT 20 -#define BINARY_SUBSCR_TUPLE_INT 21 -#define CALL_ADAPTIVE 22 -#define CALL_PY_EXACT_ARGS 23 -#define CALL_PY_WITH_DEFAULTS 24 -#define COMPARE_OP_ADAPTIVE 26 -#define COMPARE_OP_FLOAT_JUMP 27 -#define COMPARE_OP_INT_JUMP 28 -#define COMPARE_OP_STR_JUMP 29 -#define EXTENDED_ARG_QUICK 34 -#define JUMP_BACKWARD_QUICK 38 -#define LOAD_ATTR_ADAPTIVE 39 -#define LOAD_ATTR_INSTANCE_VALUE 40 -#define LOAD_ATTR_MODULE 41 -#define LOAD_ATTR_SLOT 42 -#define LOAD_ATTR_WITH_HINT 43 -#define LOAD_CONST__LOAD_FAST 44 -#define LOAD_FAST__LOAD_CONST 45 -#define LOAD_FAST__LOAD_FAST 46 -#define LOAD_GLOBAL_ADAPTIVE 47 -#define LOAD_GLOBAL_BUILTIN 48 -#define LOAD_GLOBAL_MODULE 55 -#define LOAD_METHOD_ADAPTIVE 56 -#define LOAD_METHOD_CLASS 57 -#define LOAD_METHOD_MODULE 58 -#define LOAD_METHOD_NO_DICT 59 -#define LOAD_METHOD_WITH_DICT 62 -#define LOAD_METHOD_WITH_VALUES 63 -#define PRECALL_ADAPTIVE 64 -#define PRECALL_BOUND_METHOD 65 -#define PRECALL_BUILTIN_CLASS 66 -#define PRECALL_BUILTIN_FAST_WITH_KEYWORDS 67 -#define PRECALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 72 -#define PRECALL_NO_KW_BUILTIN_FAST 73 -#define PRECALL_NO_KW_BUILTIN_O 76 -#define PRECALL_NO_KW_ISINSTANCE 77 -#define PRECALL_NO_KW_LEN 78 -#define PRECALL_NO_KW_LIST_APPEND 79 -#define PRECALL_NO_KW_METHOD_DESCRIPTOR_FAST 80 -#define PRECALL_NO_KW_METHOD_DESCRIPTOR_NOARGS 81 -#define PRECALL_NO_KW_METHOD_DESCRIPTOR_O 113 -#define PRECALL_NO_KW_STR_1 121 -#define PRECALL_NO_KW_TUPLE_1 127 -#define PRECALL_NO_KW_TYPE_1 141 -#define PRECALL_PYFUNC 143 -#define RESUME_QUICK 150 -#define STORE_ATTR_ADAPTIVE 153 -#define STORE_ATTR_INSTANCE_VALUE 154 -#define STORE_ATTR_SLOT 158 -#define STORE_ATTR_WITH_HINT 159 -#define STORE_FAST__LOAD_FAST 161 -#define STORE_FAST__STORE_FAST 167 -#define STORE_SUBSCR_ADAPTIVE 168 -#define STORE_SUBSCR_DICT 169 -#define STORE_SUBSCR_LIST_INT 170 -#define UNPACK_SEQUENCE_ADAPTIVE 177 -#define UNPACK_SEQUENCE_LIST 178 -#define UNPACK_SEQUENCE_TUPLE 179 -#define UNPACK_SEQUENCE_TWO_TUPLE 180 -#define DO_TRACING 255 - -#define HAS_CONST(op) (false\ - || ((op) == 100) \ - || ((op) == 172) \ - ) - -#define NB_ADD 0 -#define NB_AND 1 -#define NB_FLOOR_DIVIDE 2 -#define NB_LSHIFT 3 -#define NB_MATRIX_MULTIPLY 4 -#define NB_MULTIPLY 5 -#define NB_REMAINDER 6 -#define NB_OR 7 -#define NB_POWER 8 -#define NB_RSHIFT 9 -#define NB_SUBTRACT 10 -#define NB_TRUE_DIVIDE 11 -#define NB_XOR 12 -#define NB_INPLACE_ADD 13 -#define NB_INPLACE_AND 14 -#define NB_INPLACE_FLOOR_DIVIDE 15 -#define NB_INPLACE_LSHIFT 16 -#define NB_INPLACE_MATRIX_MULTIPLY 17 -#define NB_INPLACE_MULTIPLY 18 -#define NB_INPLACE_REMAINDER 19 -#define NB_INPLACE_OR 20 -#define NB_INPLACE_POWER 21 -#define NB_INPLACE_RSHIFT 22 -#define NB_INPLACE_SUBTRACT 23 -#define NB_INPLACE_TRUE_DIVIDE 24 -#define NB_INPLACE_XOR 25 - -#define HAS_ARG(op) ((op) >= HAVE_ARGUMENT) - -/* Reserve some bytecodes for internal use in the compiler. - * The value of 240 is arbitrary. */ -#define IS_ARTIFICIAL(op) ((op) > 240) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OPCODE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/osdefs.h b/_Pre_Builds/_Python311_cpp/include/osdefs.h deleted file mode 100644 index 3243944..0000000 --- a/_Pre_Builds/_Python311_cpp/include/osdefs.h +++ /dev/null @@ -1,51 +0,0 @@ -#ifndef Py_OSDEFS_H -#define Py_OSDEFS_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Operating system dependencies */ - -#ifdef MS_WINDOWS -#define SEP L'\\' -#define ALTSEP L'/' -#define MAXPATHLEN 256 -#define DELIM L';' -#endif - -#ifdef __VXWORKS__ -#define DELIM L';' -#endif - -/* Filename separator */ -#ifndef SEP -#define SEP L'/' -#endif - -/* Max pathname length */ -#ifdef __hpux -#include -#include -#ifndef PATH_MAX -#define PATH_MAX MAXPATHLEN -#endif -#endif - -#ifndef MAXPATHLEN -#if defined(PATH_MAX) && PATH_MAX > 1024 -#define MAXPATHLEN PATH_MAX -#else -#define MAXPATHLEN 1024 -#endif -#endif - -/* Search path entry delimiter */ -#ifndef DELIM -#define DELIM L':' -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OSDEFS_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/osmodule.h b/_Pre_Builds/_Python311_cpp/include/osmodule.h deleted file mode 100644 index 9095c2f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/osmodule.h +++ /dev/null @@ -1,17 +0,0 @@ - -/* os module interface */ - -#ifndef Py_OSMODULE_H -#define Py_OSMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_FUNC(PyObject *) PyOS_FSPath(PyObject *path); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OSMODULE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/patchlevel.h b/_Pre_Builds/_Python311_cpp/include/patchlevel.h deleted file mode 100644 index 7acea93..0000000 --- a/_Pre_Builds/_Python311_cpp/include/patchlevel.h +++ /dev/null @@ -1,35 +0,0 @@ - -/* Python version identification scheme. - - When the major or minor version changes, the VERSION variable in - configure.ac must also be changed. - - There is also (independent) API version information in modsupport.h. -*/ - -/* Values for PY_RELEASE_LEVEL */ -#define PY_RELEASE_LEVEL_ALPHA 0xA -#define PY_RELEASE_LEVEL_BETA 0xB -#define PY_RELEASE_LEVEL_GAMMA 0xC /* For release candidates */ -#define PY_RELEASE_LEVEL_FINAL 0xF /* Serial should be 0 here */ - /* Higher for patch releases */ - -/* Version parsed out into numeric values */ -/*--start constants--*/ -#define PY_MAJOR_VERSION 3 -#define PY_MINOR_VERSION 11 -#define PY_MICRO_VERSION 7 -#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL -#define PY_RELEASE_SERIAL 0 - -/* Version as a string */ -#define PY_VERSION "3.11.7" -/*--end constants--*/ - -/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2. - Use this for numeric comparisons, e.g. #if PY_VERSION_HEX >= ... */ -#define PY_VERSION_HEX ((PY_MAJOR_VERSION << 24) | \ - (PY_MINOR_VERSION << 16) | \ - (PY_MICRO_VERSION << 8) | \ - (PY_RELEASE_LEVEL << 4) | \ - (PY_RELEASE_SERIAL << 0)) diff --git a/_Pre_Builds/_Python311_cpp/include/py_curses.h b/_Pre_Builds/_Python311_cpp/include/py_curses.h deleted file mode 100644 index b2c7f1b..0000000 --- a/_Pre_Builds/_Python311_cpp/include/py_curses.h +++ /dev/null @@ -1,99 +0,0 @@ - -#ifndef Py_CURSES_H -#define Py_CURSES_H - -#ifdef __APPLE__ -/* -** On Mac OS X 10.2 [n]curses.h and stdlib.h use different guards -** against multiple definition of wchar_t. -*/ -#ifdef _BSD_WCHAR_T_DEFINED_ -#define _WCHAR_T -#endif -#endif /* __APPLE__ */ - -/* On FreeBSD, [n]curses.h and stdlib.h/wchar.h use different guards - against multiple definition of wchar_t and wint_t. */ -#if defined(__FreeBSD__) && defined(_XOPEN_SOURCE_EXTENDED) -# ifndef __wchar_t -# define __wchar_t -# endif -# ifndef __wint_t -# define __wint_t -# endif -#endif - -#if !defined(HAVE_CURSES_IS_PAD) && defined(WINDOW_HAS_FLAGS) -/* The following definition is necessary for ncurses 5.7; without it, - some of [n]curses.h set NCURSES_OPAQUE to 1, and then Python - can't get at the WINDOW flags field. */ -#define NCURSES_OPAQUE 0 -#endif - -#ifdef HAVE_NCURSES_H -#include -#else -#include -#endif - -#ifdef HAVE_NCURSES_H -/* configure was checking , but we will - use , which has some or all these features. */ -#if !defined(WINDOW_HAS_FLAGS) && !(NCURSES_OPAQUE+0) -#define WINDOW_HAS_FLAGS 1 -#endif -#if !defined(HAVE_CURSES_IS_PAD) && NCURSES_VERSION_PATCH+0 >= 20090906 -#define HAVE_CURSES_IS_PAD 1 -#endif -#ifndef MVWDELCH_IS_EXPRESSION -#define MVWDELCH_IS_EXPRESSION 1 -#endif -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -#define PyCurses_API_pointers 4 - -/* Type declarations */ - -typedef struct { - PyObject_HEAD - WINDOW *win; - char *encoding; -} PyCursesWindowObject; - -#define PyCursesWindow_Check(v) Py_IS_TYPE(v, &PyCursesWindow_Type) - -#define PyCurses_CAPSULE_NAME "_curses._C_API" - - -#ifdef CURSES_MODULE -/* This section is used when compiling _cursesmodule.c */ - -#else -/* This section is used in modules that use the _cursesmodule API */ - -static void **PyCurses_API; - -#define PyCursesWindow_Type (*_PyType_CAST(PyCurses_API[0])) -#define PyCursesSetupTermCalled {if (! ((int (*)(void))PyCurses_API[1]) () ) return NULL;} -#define PyCursesInitialised {if (! ((int (*)(void))PyCurses_API[2]) () ) return NULL;} -#define PyCursesInitialisedColor {if (! ((int (*)(void))PyCurses_API[3]) () ) return NULL;} - -#define import_curses() \ - PyCurses_API = (void **)PyCapsule_Import(PyCurses_CAPSULE_NAME, 1); - -#endif - -/* general error messages */ -static const char catchall_ERR[] = "curses function returned ERR"; -static const char catchall_NULL[] = "curses function returned NULL"; - -#ifdef __cplusplus -} -#endif - -#endif /* !defined(Py_CURSES_H) */ - diff --git a/_Pre_Builds/_Python311_cpp/include/pybuffer.h b/_Pre_Builds/_Python311_cpp/include/pybuffer.h deleted file mode 100644 index 6893505..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pybuffer.h +++ /dev/null @@ -1,142 +0,0 @@ -/* Public Py_buffer API */ - -#ifndef Py_BUFFER_H -#define Py_BUFFER_H -#ifdef __cplusplus -extern "C" { -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030b0000 - -/* === New Buffer API ============================================ - * Limited API and stable ABI since Python 3.11 - * - * Py_buffer struct layout and size is now part of the stable abi3. The - * struct layout and size must not be changed in any way, as it would - * break the ABI. - * - */ - -typedef struct { - void *buf; - PyObject *obj; /* owned reference */ - Py_ssize_t len; - Py_ssize_t itemsize; /* This is Py_ssize_t so it can be - pointed to by strides in simple case.*/ - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; -} Py_buffer; - -/* Return 1 if the getbuffer function is available, otherwise return 0. */ -PyAPI_FUNC(int) PyObject_CheckBuffer(PyObject *obj); - -/* This is a C-API version of the getbuffer function call. It checks - to make sure object has the required function pointer and issues the - call. - - Returns -1 and raises an error on failure and returns 0 on success. */ -PyAPI_FUNC(int) PyObject_GetBuffer(PyObject *obj, Py_buffer *view, - int flags); - -/* Get the memory area pointed to by the indices for the buffer given. - Note that view->ndim is the assumed size of indices. */ -PyAPI_FUNC(void *) PyBuffer_GetPointer(const Py_buffer *view, const Py_ssize_t *indices); - -/* Return the implied itemsize of the data-format area from a - struct-style description. */ -PyAPI_FUNC(Py_ssize_t) PyBuffer_SizeFromFormat(const char *format); - -/* Implementation in memoryobject.c */ -PyAPI_FUNC(int) PyBuffer_ToContiguous(void *buf, const Py_buffer *view, - Py_ssize_t len, char order); - -PyAPI_FUNC(int) PyBuffer_FromContiguous(const Py_buffer *view, const void *buf, - Py_ssize_t len, char order); - -/* Copy len bytes of data from the contiguous chunk of memory - pointed to by buf into the buffer exported by obj. Return - 0 on success and return -1 and raise a PyBuffer_Error on - error (i.e. the object does not have a buffer interface or - it is not working). - - If fort is 'F', then if the object is multi-dimensional, - then the data will be copied into the array in - Fortran-style (first dimension varies the fastest). If - fort is 'C', then the data will be copied into the array - in C-style (last dimension varies the fastest). If fort - is 'A', then it does not matter and the copy will be made - in whatever way is more efficient. */ -PyAPI_FUNC(int) PyObject_CopyData(PyObject *dest, PyObject *src); - -/* Copy the data from the src buffer to the buffer of destination. */ -PyAPI_FUNC(int) PyBuffer_IsContiguous(const Py_buffer *view, char fort); - -/*Fill the strides array with byte-strides of a contiguous - (Fortran-style if fort is 'F' or C-style otherwise) - array of the given shape with the given number of bytes - per element. */ -PyAPI_FUNC(void) PyBuffer_FillContiguousStrides(int ndims, - Py_ssize_t *shape, - Py_ssize_t *strides, - int itemsize, - char fort); - -/* Fills in a buffer-info structure correctly for an exporter - that can only share a contiguous chunk of memory of - "unsigned bytes" of the given length. - - Returns 0 on success and -1 (with raising an error) on error. */ -PyAPI_FUNC(int) PyBuffer_FillInfo(Py_buffer *view, PyObject *o, void *buf, - Py_ssize_t len, int readonly, - int flags); - -/* Releases a Py_buffer obtained from getbuffer ParseTuple's "s*". */ -PyAPI_FUNC(void) PyBuffer_Release(Py_buffer *view); - -/* Maximum number of dimensions */ -#define PyBUF_MAX_NDIM 64 - -/* Flags for getting buffers */ -#define PyBUF_SIMPLE 0 -#define PyBUF_WRITABLE 0x0001 - -#ifndef Py_LIMITED_API -/* we used to include an E, backwards compatible alias */ -#define PyBUF_WRITEABLE PyBUF_WRITABLE -#endif - -#define PyBUF_FORMAT 0x0004 -#define PyBUF_ND 0x0008 -#define PyBUF_STRIDES (0x0010 | PyBUF_ND) -#define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) -#define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) -#define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) -#define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#define PyBUF_CONTIG (PyBUF_ND | PyBUF_WRITABLE) -#define PyBUF_CONTIG_RO (PyBUF_ND) - -#define PyBUF_STRIDED (PyBUF_STRIDES | PyBUF_WRITABLE) -#define PyBUF_STRIDED_RO (PyBUF_STRIDES) - -#define PyBUF_RECORDS (PyBUF_STRIDES | PyBUF_WRITABLE | PyBUF_FORMAT) -#define PyBUF_RECORDS_RO (PyBUF_STRIDES | PyBUF_FORMAT) - -#define PyBUF_FULL (PyBUF_INDIRECT | PyBUF_WRITABLE | PyBUF_FORMAT) -#define PyBUF_FULL_RO (PyBUF_INDIRECT | PyBUF_FORMAT) - - -#define PyBUF_READ 0x100 -#define PyBUF_WRITE 0x200 - -#endif /* !Py_LIMITED_API || Py_LIMITED_API >= 3.11 */ - -#ifdef __cplusplus -} -#endif -#endif /* Py_BUFFER_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pycapsule.h b/_Pre_Builds/_Python311_cpp/include/pycapsule.h deleted file mode 100644 index fb5d503..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pycapsule.h +++ /dev/null @@ -1,59 +0,0 @@ - -/* Capsule objects let you wrap a C "void *" pointer in a Python - object. They're a way of passing data through the Python interpreter - without creating your own custom type. - - Capsules are used for communication between extension modules. - They provide a way for an extension module to export a C interface - to other extension modules, so that extension modules can use the - Python import mechanism to link to one another. - - For more information, please see "c-api/capsule.html" in the - documentation. -*/ - -#ifndef Py_CAPSULE_H -#define Py_CAPSULE_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyCapsule_Type; - -typedef void (*PyCapsule_Destructor)(PyObject *); - -#define PyCapsule_CheckExact(op) Py_IS_TYPE(op, &PyCapsule_Type) - - -PyAPI_FUNC(PyObject *) PyCapsule_New( - void *pointer, - const char *name, - PyCapsule_Destructor destructor); - -PyAPI_FUNC(void *) PyCapsule_GetPointer(PyObject *capsule, const char *name); - -PyAPI_FUNC(PyCapsule_Destructor) PyCapsule_GetDestructor(PyObject *capsule); - -PyAPI_FUNC(const char *) PyCapsule_GetName(PyObject *capsule); - -PyAPI_FUNC(void *) PyCapsule_GetContext(PyObject *capsule); - -PyAPI_FUNC(int) PyCapsule_IsValid(PyObject *capsule, const char *name); - -PyAPI_FUNC(int) PyCapsule_SetPointer(PyObject *capsule, void *pointer); - -PyAPI_FUNC(int) PyCapsule_SetDestructor(PyObject *capsule, PyCapsule_Destructor destructor); - -PyAPI_FUNC(int) PyCapsule_SetName(PyObject *capsule, const char *name); - -PyAPI_FUNC(int) PyCapsule_SetContext(PyObject *capsule, void *context); - -PyAPI_FUNC(void *) PyCapsule_Import( - const char *name, /* UTF-8 encoded string */ - int no_block); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CAPSULE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pyconfig.h b/_Pre_Builds/_Python311_cpp/include/pyconfig.h deleted file mode 100644 index 959b851..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pyconfig.h +++ /dev/null @@ -1,710 +0,0 @@ -#ifndef Py_CONFIG_H -#define Py_CONFIG_H - -/* pyconfig.h. NOT Generated automatically by configure. - -This is a manually maintained version used for the Watcom, -Borland and Microsoft Visual C++ compilers. It is a -standard part of the Python distribution. - -WINDOWS DEFINES: -The code specific to Windows should be wrapped around one of -the following #defines - -MS_WIN64 - Code specific to the MS Win64 API -MS_WIN32 - Code specific to the MS Win32 (and Win64) API (obsolete, this covers all supported APIs) -MS_WINDOWS - Code specific to Windows, but all versions. -Py_ENABLE_SHARED - Code if the Python core is built as a DLL. - -Also note that neither "_M_IX86" or "_MSC_VER" should be used for -any purpose other than "Windows Intel x86 specific" and "Microsoft -compiler specific". Therefore, these should be very rare. - - -NOTE: The following symbols are deprecated: -NT, USE_DL_EXPORT, USE_DL_IMPORT, DL_EXPORT, DL_IMPORT -MS_CORE_DLL. - -WIN32 is still required for the locale module. - -*/ - -/* Deprecated USE_DL_EXPORT macro - please use Py_BUILD_CORE */ -#ifdef USE_DL_EXPORT -# define Py_BUILD_CORE -#endif /* USE_DL_EXPORT */ - -/* Visual Studio 2005 introduces deprecation warnings for - "insecure" and POSIX functions. The insecure functions should - be replaced by *_s versions (according to Microsoft); the - POSIX functions by _* versions (which, according to Microsoft, - would be ISO C conforming). Neither renaming is feasible, so - we just silence the warnings. */ - -#ifndef _CRT_SECURE_NO_DEPRECATE -#define _CRT_SECURE_NO_DEPRECATE 1 -#endif -#ifndef _CRT_NONSTDC_NO_DEPRECATE -#define _CRT_NONSTDC_NO_DEPRECATE 1 -#endif - -#define HAVE_IO_H -#define HAVE_SYS_UTIME_H -#define HAVE_TEMPNAM -#define HAVE_TMPFILE -#define HAVE_TMPNAM -#define HAVE_CLOCK -#define HAVE_STRERROR - -#include - -#define HAVE_STRFTIME -#define DONT_HAVE_SIG_ALARM -#define DONT_HAVE_SIG_PAUSE -#define LONG_BIT 32 -#define WORD_BIT 32 - -#define MS_WIN32 /* only support win32 and greater. */ -#define MS_WINDOWS -#define NT_THREADS -#define WITH_THREAD -#ifndef NETSCAPE_PI -#define USE_SOCKET -#endif - - -/* Compiler specific defines */ - -/* ------------------------------------------------------------------------*/ -/* Microsoft C defines _MSC_VER */ -#ifdef _MSC_VER - -/* We want COMPILER to expand to a string containing _MSC_VER's *value*. - * This is horridly tricky, because the stringization operator only works - * on macro arguments, and doesn't evaluate macros passed *as* arguments. - * Attempts simpler than the following appear doomed to produce "_MSC_VER" - * literally in the string. - */ -#define _Py_PASTE_VERSION(SUFFIX) \ - ("[MSC v." _Py_STRINGIZE(_MSC_VER) " " SUFFIX "]") -/* e.g., this produces, after compile-time string catenation, - * ("[MSC v.1200 32 bit (Intel)]") - * - * _Py_STRINGIZE(_MSC_VER) expands to - * _Py_STRINGIZE1((_MSC_VER)) expands to - * _Py_STRINGIZE2(_MSC_VER) but as this call is the result of token-pasting - * it's scanned again for macros and so further expands to (under MSVC 6) - * _Py_STRINGIZE2(1200) which then expands to - * "1200" - */ -#define _Py_STRINGIZE(X) _Py_STRINGIZE1((X)) -#define _Py_STRINGIZE1(X) _Py_STRINGIZE2 ## X -#define _Py_STRINGIZE2(X) #X - -/* MSVC defines _WINxx to differentiate the windows platform types - - Note that for compatibility reasons _WIN32 is defined on Win32 - *and* on Win64. For the same reasons, in Python, MS_WIN32 is - defined on Win32 *and* Win64. Win32 only code must therefore be - guarded as follows: - #if defined(MS_WIN32) && !defined(MS_WIN64) -*/ -#ifdef _WIN64 -#define MS_WIN64 -#endif - -/* set the COMPILER and support tier - * - * win_amd64 MSVC (x86_64-pc-windows-msvc): 1 - * win32 MSVC (i686-pc-windows-msvc): 1 - * win_arm64 MSVC (aarch64-pc-windows-msvc): 3 - * other archs and ICC: 0 - */ -#ifdef MS_WIN64 -#if defined(_M_X64) || defined(_M_AMD64) -#if defined(__INTEL_COMPILER) -#define COMPILER ("[ICC v." _Py_STRINGIZE(__INTEL_COMPILER) " 64 bit (amd64) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]") -#define PY_SUPPORT_TIER 0 -#else -#define COMPILER _Py_PASTE_VERSION("64 bit (AMD64)") -#define PY_SUPPORT_TIER 1 -#endif /* __INTEL_COMPILER */ -#define PYD_PLATFORM_TAG "win_amd64" -#elif defined(_M_ARM64) -#define COMPILER _Py_PASTE_VERSION("64 bit (ARM64)") -#define PY_SUPPORT_TIER 3 -#define PYD_PLATFORM_TAG "win_arm64" -#else -#define COMPILER _Py_PASTE_VERSION("64 bit (Unknown)") -#define PY_SUPPORT_TIER 0 -#endif -#endif /* MS_WIN64 */ - -/* set the version macros for the windows headers */ -/* Python 3.9+ requires Windows 8 or greater */ -#define Py_WINVER 0x0602 /* _WIN32_WINNT_WIN8 */ -#define Py_NTDDI NTDDI_WIN8 - -/* We only set these values when building Python - we don't want to force - these values on extensions, as that will affect the prototypes and - structures exposed in the Windows headers. Even when building Python, we - allow a single source file to override this - they may need access to - structures etc so it can optionally use new Windows features if it - determines at runtime they are available. -*/ -#if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_BUILTIN) || defined(Py_BUILD_CORE_MODULE) -#ifndef NTDDI_VERSION -#define NTDDI_VERSION Py_NTDDI -#endif -#ifndef WINVER -#define WINVER Py_WINVER -#endif -#ifndef _WIN32_WINNT -#define _WIN32_WINNT Py_WINVER -#endif -#endif - -/* _W64 is not defined for VC6 or eVC4 */ -#ifndef _W64 -#define _W64 -#endif - -/* Define like size_t, omitting the "unsigned" */ -#ifdef MS_WIN64 -typedef __int64 Py_ssize_t; -# define PY_SSIZE_T_MAX LLONG_MAX -#else -typedef _W64 int Py_ssize_t; -# define PY_SSIZE_T_MAX INT_MAX -#endif -#define HAVE_PY_SSIZE_T 1 - -#if defined(MS_WIN32) && !defined(MS_WIN64) -#if defined(_M_IX86) -#if defined(__INTEL_COMPILER) -#define COMPILER ("[ICC v." _Py_STRINGIZE(__INTEL_COMPILER) " 32 bit (Intel) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]") -#define PY_SUPPORT_TIER 0 -#else -#define COMPILER _Py_PASTE_VERSION("32 bit (Intel)") -#define PY_SUPPORT_TIER 1 -#endif /* __INTEL_COMPILER */ -#define PYD_PLATFORM_TAG "win32" -#elif defined(_M_ARM) -#define COMPILER _Py_PASTE_VERSION("32 bit (ARM)") -#define PYD_PLATFORM_TAG "win_arm32" -#define PY_SUPPORT_TIER 0 -#else -#define COMPILER _Py_PASTE_VERSION("32 bit (Unknown)") -#define PY_SUPPORT_TIER 0 -#endif -#endif /* MS_WIN32 && !MS_WIN64 */ - -typedef int pid_t; - -/* define some ANSI types that are not defined in earlier Win headers */ -#if _MSC_VER >= 1200 -/* This file only exists in VC 6.0 or higher */ -#include -#endif - -#endif /* _MSC_VER */ - -/* ------------------------------------------------------------------------*/ -/* egcs/gnu-win32 defines __GNUC__ and _WIN32 */ -#if defined(__GNUC__) && defined(_WIN32) -/* XXX These defines are likely incomplete, but should be easy to fix. - They should be complete enough to build extension modules. */ -/* Suggested by Rene Liebscher to avoid a GCC 2.91.* - bug that requires structure imports. More recent versions of the - compiler don't exhibit this bug. -*/ -#if (__GNUC__==2) && (__GNUC_MINOR__<=91) -#warning "Please use an up-to-date version of gcc! (>2.91 recommended)" -#endif - -#define COMPILER "[gcc]" -#define PY_LONG_LONG long long -#define PY_LLONG_MIN LLONG_MIN -#define PY_LLONG_MAX LLONG_MAX -#define PY_ULLONG_MAX ULLONG_MAX -#endif /* GNUC */ - -/* ------------------------------------------------------------------------*/ -/* lcc-win32 defines __LCC__ */ -#if defined(__LCC__) -/* XXX These defines are likely incomplete, but should be easy to fix. - They should be complete enough to build extension modules. */ - -#define COMPILER "[lcc-win32]" -typedef int pid_t; -/* __declspec() is supported here too - do nothing to get the defaults */ - -#endif /* LCC */ - -/* ------------------------------------------------------------------------*/ -/* End of compilers - finish up */ - -#ifndef NO_STDIO_H -# include -#endif - -/* 64 bit ints are usually spelt __int64 unless compiler has overridden */ -#ifndef PY_LONG_LONG -# define PY_LONG_LONG __int64 -# define PY_LLONG_MAX _I64_MAX -# define PY_LLONG_MIN _I64_MIN -# define PY_ULLONG_MAX _UI64_MAX -#endif - -/* For Windows the Python core is in a DLL by default. Test -Py_NO_ENABLE_SHARED to find out. Also support MS_NO_COREDLL for b/w compat */ -#if !defined(MS_NO_COREDLL) && !defined(Py_NO_ENABLE_SHARED) -# define Py_ENABLE_SHARED 1 /* standard symbol for shared library */ -# define MS_COREDLL /* deprecated old symbol */ -#endif /* !MS_NO_COREDLL && ... */ - -/* All windows compilers that use this header support __declspec */ -#define HAVE_DECLSPEC_DLL - -/* For an MSVC DLL, we can nominate the .lib files used by extensions */ -#ifdef MS_COREDLL -# if !defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_BUILTIN) - /* not building the core - must be an ext */ -# if defined(_MSC_VER) - /* So MSVC users need not specify the .lib - file in their Makefile (other compilers are - generally taken care of by distutils.) */ -# if defined(_DEBUG) -# pragma comment(lib,"python311_d.lib") -# elif defined(Py_LIMITED_API) -# pragma comment(lib,"python3.lib") -# else -# pragma comment(lib,"python311.lib") -# endif /* _DEBUG */ -# endif /* _MSC_VER */ -# endif /* Py_BUILD_CORE */ -#endif /* MS_COREDLL */ - -#if defined(MS_WIN64) -/* maintain "win32" sys.platform for backward compatibility of Python code, - the Win64 API should be close enough to the Win32 API to make this - preferable */ -# define PLATFORM "win32" -# define SIZEOF_VOID_P 8 -# define SIZEOF_TIME_T 8 -# define SIZEOF_OFF_T 4 -# define SIZEOF_FPOS_T 8 -# define SIZEOF_HKEY 8 -# define SIZEOF_SIZE_T 8 -# define ALIGNOF_SIZE_T 8 -/* configure.ac defines HAVE_LARGEFILE_SUPPORT iff - sizeof(off_t) > sizeof(long), and sizeof(long long) >= sizeof(off_t). - On Win64 the second condition is not true, but if fpos_t replaces off_t - then this is true. The uses of HAVE_LARGEFILE_SUPPORT imply that Win64 - should define this. */ -# define HAVE_LARGEFILE_SUPPORT -#elif defined(MS_WIN32) -# define PLATFORM "win32" -# define HAVE_LARGEFILE_SUPPORT -# define SIZEOF_VOID_P 4 -# define SIZEOF_OFF_T 4 -# define SIZEOF_FPOS_T 8 -# define SIZEOF_HKEY 4 -# define SIZEOF_SIZE_T 4 -# define ALIGNOF_SIZE_T 4 - /* MS VS2005 changes time_t to a 64-bit type on all platforms */ -# if defined(_MSC_VER) && _MSC_VER >= 1400 -# define SIZEOF_TIME_T 8 -# else -# define SIZEOF_TIME_T 4 -# endif -#endif - -#ifdef _DEBUG -# define Py_DEBUG -#endif - - -#ifdef MS_WIN32 - -#define SIZEOF_SHORT 2 -#define SIZEOF_INT 4 -#define SIZEOF_LONG 4 -#define ALIGNOF_LONG 4 -#define SIZEOF_LONG_LONG 8 -#define SIZEOF_DOUBLE 8 -#define SIZEOF_FLOAT 4 - -/* VC 7.1 has them and VC 6.0 does not. VC 6.0 has a version number of 1200. - Microsoft eMbedded Visual C++ 4.0 has a version number of 1201 and doesn't - define these. - If some compiler does not provide them, modify the #if appropriately. */ -#if defined(_MSC_VER) -#if _MSC_VER > 1300 -#define HAVE_UINTPTR_T 1 -#define HAVE_INTPTR_T 1 -#else -/* VC6, VS 2002 and eVC4 don't support the C99 LL suffix for 64-bit integer literals */ -#define Py_LL(x) x##I64 -#endif /* _MSC_VER > 1300 */ -#endif /* _MSC_VER */ - -#endif - -/* define signed and unsigned exact-width 32-bit and 64-bit types, used in the - implementation of Python integers. */ -#define PY_UINT32_T uint32_t -#define PY_UINT64_T uint64_t -#define PY_INT32_T int32_t -#define PY_INT64_T int64_t - -/* Fairly standard from here! */ - -/* Define if on AIX 3. - System headers sometimes define this. - We just want to avoid a redefinition error message. */ -#ifndef _ALL_SOURCE -/* #undef _ALL_SOURCE */ -#endif - -/* Define to empty if the keyword does not work. */ -/* #define const */ - -/* Define to 1 if you have the header file. */ -#define HAVE_CONIO_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_DIRECT_H 1 - -/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't. - */ -#define HAVE_DECL_TZNAME 1 - -/* Define if you have dirent.h. */ -/* #define DIRENT 1 */ - -/* Define to the type of elements in the array set by `getgroups'. - Usually this is either `int' or `gid_t'. */ -/* #undef GETGROUPS_T */ - -/* Define to `int' if doesn't define. */ -/* #undef gid_t */ - -/* Define if your struct tm has tm_zone. */ -/* #undef HAVE_TM_ZONE */ - -/* Define if you don't have tm_zone but do have the external array - tzname. */ -#define HAVE_TZNAME - -/* Define to `int' if doesn't define. */ -/* #undef mode_t */ - -/* Define if you don't have dirent.h, but have ndir.h. */ -/* #undef NDIR */ - -/* Define to `long' if doesn't define. */ -/* #undef off_t */ - -/* Define to `int' if doesn't define. */ -/* #undef pid_t */ - -/* Define if the system does not provide POSIX.1 features except - with this defined. */ -/* #undef _POSIX_1_SOURCE */ - -/* Define if you need to in order for stat and other things to work. */ -/* #undef _POSIX_SOURCE */ - -/* Define as the return type of signal handlers (int or void). */ -#define RETSIGTYPE void - -/* Define to `unsigned' if doesn't define. */ -/* #undef size_t */ - -/* Define if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Define if you don't have dirent.h, but have sys/dir.h. */ -/* #undef SYSDIR */ - -/* Define if you don't have dirent.h, but have sys/ndir.h. */ -/* #undef SYSNDIR */ - -/* Define if you can safely include both and . */ -/* #undef TIME_WITH_SYS_TIME */ - -/* Define if your declares struct tm. */ -/* #define TM_IN_SYS_TIME 1 */ - -/* Define to `int' if doesn't define. */ -/* #undef uid_t */ - -/* Define if the closedir function returns void instead of int. */ -/* #undef VOID_CLOSEDIR */ - -/* Define if getpgrp() must be called as getpgrp(0) - and (consequently) setpgrp() as setpgrp(0, 0). */ -/* #undef GETPGRP_HAVE_ARGS */ - -/* Define this if your time.h defines altzone */ -/* #define HAVE_ALTZONE */ - -/* Define if you have the putenv function. */ -#define HAVE_PUTENV - -/* Define if your compiler supports function prototypes */ -#define HAVE_PROTOTYPES - -/* Define if you can safely include both and - (which you can't on SCO ODT 3.0). */ -/* #undef SYS_SELECT_WITH_SYS_TIME */ - -/* Define if you want build the _decimal module using a coroutine-local rather - than a thread-local context */ -#define WITH_DECIMAL_CONTEXTVAR 1 - -/* Define if you want documentation strings in extension modules */ -#define WITH_DOC_STRINGS 1 - -/* Define if you want to compile in rudimentary thread support */ -/* #undef WITH_THREAD */ - -/* Define if you want to use the GNU readline library */ -/* #define WITH_READLINE 1 */ - -/* Use Python's own small-block memory-allocator. */ -#define WITH_PYMALLOC 1 - -/* Define if you want to compile in object freelists optimization */ -#define WITH_FREELISTS 1 - -/* Define if you have clock. */ -/* #define HAVE_CLOCK */ - -/* Define when any dynamic module loading is enabled */ -#define HAVE_DYNAMIC_LOADING - -/* Define if you have ftime. */ -#define HAVE_FTIME - -/* Define if you have getpeername. */ -#define HAVE_GETPEERNAME - -/* Define if you have getpgrp. */ -/* #undef HAVE_GETPGRP */ - -/* Define if you have getpid. */ -#define HAVE_GETPID - -/* Define if you have gettimeofday. */ -/* #undef HAVE_GETTIMEOFDAY */ - -/* Define if you have getwd. */ -/* #undef HAVE_GETWD */ - -/* Define if you have lstat. */ -/* #undef HAVE_LSTAT */ - -/* Define if you have the mktime function. */ -#define HAVE_MKTIME - -/* Define if you have nice. */ -/* #undef HAVE_NICE */ - -/* Define if you have readlink. */ -/* #undef HAVE_READLINK */ - -/* Define if you have setpgid. */ -/* #undef HAVE_SETPGID */ - -/* Define if you have setpgrp. */ -/* #undef HAVE_SETPGRP */ - -/* Define if you have setsid. */ -/* #undef HAVE_SETSID */ - -/* Define if you have setvbuf. */ -#define HAVE_SETVBUF - -/* Define if you have siginterrupt. */ -/* #undef HAVE_SIGINTERRUPT */ - -/* Define to 1 if you have the `shutdown' function. */ -#define HAVE_SHUTDOWN 1 - -/* Define if you have symlink. */ -/* #undef HAVE_SYMLINK */ - -/* Define if you have tcgetpgrp. */ -/* #undef HAVE_TCGETPGRP */ - -/* Define if you have tcsetpgrp. */ -/* #undef HAVE_TCSETPGRP */ - -/* Define if you have times. */ -/* #undef HAVE_TIMES */ - -/* Define to 1 if you have the `umask' function. */ -#define HAVE_UMASK 1 - -/* Define if you have uname. */ -/* #undef HAVE_UNAME */ - -/* Define if you have waitpid. */ -/* #undef HAVE_WAITPID */ - -/* Define to 1 if you have the `wcsftime' function. */ -#if defined(_MSC_VER) && _MSC_VER >= 1310 -#define HAVE_WCSFTIME 1 -#endif - -/* Define to 1 if you have the `wcscoll' function. */ -#define HAVE_WCSCOLL 1 - -/* Define to 1 if you have the `wcsxfrm' function. */ -#define HAVE_WCSXFRM 1 - -/* Define if the zlib library has inflateCopy */ -#define HAVE_ZLIB_COPY 1 - -/* Define if you have the header file. */ -/* #undef HAVE_DLFCN_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_ERRNO_H 1 - -/* Define if you have the header file. */ -#define HAVE_FCNTL_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_PROCESS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SIGNAL_H 1 - -/* Define if you have the prototypes. */ -#define HAVE_STDARG_PROTOTYPES - -/* Define if you have the header file. */ -#define HAVE_STDDEF_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_SYS_AUDIOIO_H */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_PARAM_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_SELECT_H 1 */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define if you have the header file. */ -/* #define HAVE_SYS_TIME_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_TIMES_H 1 */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define if you have the header file. */ -/* #define HAVE_SYS_UN_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_UTIME_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_UTSNAME_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_UNISTD_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_UTIME_H 1 */ - -/* Define if the compiler provides a wchar.h header file. */ -#define HAVE_WCHAR_H 1 - -/* The size of `wchar_t', as computed by sizeof. */ -#define SIZEOF_WCHAR_T 2 - -/* The size of `_Bool', as computed by sizeof. */ -#define SIZEOF__BOOL 1 - -/* The size of `pid_t', as computed by sizeof. */ -#define SIZEOF_PID_T SIZEOF_INT - -/* Define if you have the dl library (-ldl). */ -/* #undef HAVE_LIBDL */ - -/* Define if you have the mpc library (-lmpc). */ -/* #undef HAVE_LIBMPC */ - -/* Define if you have the nsl library (-lnsl). */ -#define HAVE_LIBNSL 1 - -/* Define if you have the seq library (-lseq). */ -/* #undef HAVE_LIBSEQ */ - -/* Define if you have the socket library (-lsocket). */ -#define HAVE_LIBSOCKET 1 - -/* Define if you have the sun library (-lsun). */ -/* #undef HAVE_LIBSUN */ - -/* Define if you have the termcap library (-ltermcap). */ -/* #undef HAVE_LIBTERMCAP */ - -/* Define if you have the termlib library (-ltermlib). */ -/* #undef HAVE_LIBTERMLIB */ - -/* Define if you have the thread library (-lthread). */ -/* #undef HAVE_LIBTHREAD */ - -/* WinSock does not use a bitmask in select, and uses - socket handles greater than FD_SETSIZE */ -#define Py_SOCKET_FD_CAN_BE_GE_FD_SETSIZE - -/* Define if C doubles are 64-bit IEEE 754 binary format, stored with the - least significant byte first */ -#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 1 - -/* Define to 1 if you have the `erf' function. */ -#define HAVE_ERF 1 - -/* Define to 1 if you have the `erfc' function. */ -#define HAVE_ERFC 1 - -// netdb.h functions (provided by winsock.h) -#define HAVE_GETHOSTNAME 1 -#define HAVE_GETHOSTBYADDR 1 -#define HAVE_GETHOSTBYNAME 1 -#define HAVE_GETPROTOBYNAME 1 -#define HAVE_GETSERVBYNAME 1 -#define HAVE_GETSERVBYPORT 1 -// sys/socket.h functions (provided by winsock.h) -#define HAVE_INET_PTON 1 -#define HAVE_INET_NTOA 1 -#define HAVE_ACCEPT 1 -#define HAVE_BIND 1 -#define HAVE_CONNECT 1 -#define HAVE_GETSOCKNAME 1 -#define HAVE_LISTEN 1 -#define HAVE_RECVFROM 1 -#define HAVE_SENDTO 1 -#define HAVE_SETSOCKOPT 1 -#define HAVE_SOCKET 1 - -/* Define to 1 if you have the `dup' function. */ -#define HAVE_DUP 1 - -/* framework name */ -#define _PYTHONFRAMEWORK "" - -/* Define if libssl has X509_VERIFY_PARAM_set1_host and related function */ -#define HAVE_X509_VERIFY_PARAM_SET1_HOST 1 - -#endif /* !Py_CONFIG_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pydtrace.d b/_Pre_Builds/_Python311_cpp/include/pydtrace.d deleted file mode 100644 index 5e6a626..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pydtrace.d +++ /dev/null @@ -1,22 +0,0 @@ -/* Python DTrace provider */ - -provider python { - probe function__entry(const char *, const char *, int); - probe function__return(const char *, const char *, int); - probe instance__new__start(const char *, const char *); - probe instance__new__done(const char *, const char *); - probe instance__delete__start(const char *, const char *); - probe instance__delete__done(const char *, const char *); - probe line(const char *, const char *, int); - probe gc__start(int); - probe gc__done(long); - probe import__find__load__start(const char *); - probe import__find__load__done(const char *, int); - probe audit(const char *, void *); -}; - -#pragma D attributes Evolving/Evolving/Common provider python provider -#pragma D attributes Evolving/Evolving/Common provider python module -#pragma D attributes Evolving/Evolving/Common provider python function -#pragma D attributes Evolving/Evolving/Common provider python name -#pragma D attributes Evolving/Evolving/Common provider python args diff --git a/_Pre_Builds/_Python311_cpp/include/pydtrace.h b/_Pre_Builds/_Python311_cpp/include/pydtrace.h deleted file mode 100644 index 75f8e7f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pydtrace.h +++ /dev/null @@ -1,59 +0,0 @@ -/* Static DTrace probes interface */ - -#ifndef Py_DTRACE_H -#define Py_DTRACE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef WITH_DTRACE - -#include "pydtrace_probes.h" - -/* pydtrace_probes.h, on systems with DTrace, is auto-generated to include - `PyDTrace_{PROBE}` and `PyDTrace_{PROBE}_ENABLED()` macros for every probe - defined in pydtrace_provider.d. - - Calling these functions must be guarded by a `PyDTrace_{PROBE}_ENABLED()` - check to minimize performance impact when probing is off. For example: - - if (PyDTrace_FUNCTION_ENTRY_ENABLED()) - PyDTrace_FUNCTION_ENTRY(f); -*/ - -#else - -/* Without DTrace, compile to nothing. */ - -static inline void PyDTrace_LINE(const char *arg0, const char *arg1, int arg2) {} -static inline void PyDTrace_FUNCTION_ENTRY(const char *arg0, const char *arg1, int arg2) {} -static inline void PyDTrace_FUNCTION_RETURN(const char *arg0, const char *arg1, int arg2) {} -static inline void PyDTrace_GC_START(int arg0) {} -static inline void PyDTrace_GC_DONE(Py_ssize_t arg0) {} -static inline void PyDTrace_INSTANCE_NEW_START(int arg0) {} -static inline void PyDTrace_INSTANCE_NEW_DONE(int arg0) {} -static inline void PyDTrace_INSTANCE_DELETE_START(int arg0) {} -static inline void PyDTrace_INSTANCE_DELETE_DONE(int arg0) {} -static inline void PyDTrace_IMPORT_FIND_LOAD_START(const char *arg0) {} -static inline void PyDTrace_IMPORT_FIND_LOAD_DONE(const char *arg0, int arg1) {} -static inline void PyDTrace_AUDIT(const char *arg0, void *arg1) {} - -static inline int PyDTrace_LINE_ENABLED(void) { return 0; } -static inline int PyDTrace_FUNCTION_ENTRY_ENABLED(void) { return 0; } -static inline int PyDTrace_FUNCTION_RETURN_ENABLED(void) { return 0; } -static inline int PyDTrace_GC_START_ENABLED(void) { return 0; } -static inline int PyDTrace_GC_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_NEW_START_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_NEW_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_DELETE_START_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_DELETE_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_IMPORT_FIND_LOAD_START_ENABLED(void) { return 0; } -static inline int PyDTrace_IMPORT_FIND_LOAD_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_AUDIT_ENABLED(void) { return 0; } - -#endif /* !WITH_DTRACE */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_DTRACE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pyerrors.h b/_Pre_Builds/_Python311_cpp/include/pyerrors.h deleted file mode 100644 index 34e3de3..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pyerrors.h +++ /dev/null @@ -1,331 +0,0 @@ -#ifndef Py_ERRORS_H -#define Py_ERRORS_H -#ifdef __cplusplus -extern "C" { -#endif - -#include // va_list - -/* Error handling definitions */ - -PyAPI_FUNC(void) PyErr_SetNone(PyObject *); -PyAPI_FUNC(void) PyErr_SetObject(PyObject *, PyObject *); -PyAPI_FUNC(void) PyErr_SetString( - PyObject *exception, - const char *string /* decoded from utf-8 */ - ); -PyAPI_FUNC(PyObject *) PyErr_Occurred(void); -PyAPI_FUNC(void) PyErr_Clear(void); -PyAPI_FUNC(void) PyErr_Fetch(PyObject **, PyObject **, PyObject **); -PyAPI_FUNC(void) PyErr_Restore(PyObject *, PyObject *, PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030b0000 -PyAPI_FUNC(PyObject*) PyErr_GetHandledException(void); -PyAPI_FUNC(void) PyErr_SetHandledException(PyObject *); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(void) PyErr_GetExcInfo(PyObject **, PyObject **, PyObject **); -PyAPI_FUNC(void) PyErr_SetExcInfo(PyObject *, PyObject *, PyObject *); -#endif - -/* Defined in Python/pylifecycle.c - - The Py_FatalError() function is replaced with a macro which logs - automatically the name of the current function, unless the Py_LIMITED_API - macro is defined. */ -PyAPI_FUNC(void) _Py_NO_RETURN Py_FatalError(const char *message); - -/* Error testing and normalization */ -PyAPI_FUNC(int) PyErr_GivenExceptionMatches(PyObject *, PyObject *); -PyAPI_FUNC(int) PyErr_ExceptionMatches(PyObject *); -PyAPI_FUNC(void) PyErr_NormalizeException(PyObject**, PyObject**, PyObject**); - -/* Traceback manipulation (PEP 3134) */ -PyAPI_FUNC(int) PyException_SetTraceback(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyException_GetTraceback(PyObject *); - -/* Cause manipulation (PEP 3134) */ -PyAPI_FUNC(PyObject *) PyException_GetCause(PyObject *); -PyAPI_FUNC(void) PyException_SetCause(PyObject *, PyObject *); - -/* Context manipulation (PEP 3134) */ -PyAPI_FUNC(PyObject *) PyException_GetContext(PyObject *); -PyAPI_FUNC(void) PyException_SetContext(PyObject *, PyObject *); - -/* */ - -#define PyExceptionClass_Check(x) \ - (PyType_Check((x)) && \ - PyType_FastSubclass((PyTypeObject*)(x), Py_TPFLAGS_BASE_EXC_SUBCLASS)) - -#define PyExceptionInstance_Check(x) \ - PyType_FastSubclass(Py_TYPE(x), Py_TPFLAGS_BASE_EXC_SUBCLASS) - -PyAPI_FUNC(const char *) PyExceptionClass_Name(PyObject *); - -#define PyExceptionInstance_Class(x) ((PyObject*)Py_TYPE(x)) - -#define _PyBaseExceptionGroup_Check(x) \ - PyObject_TypeCheck(x, (PyTypeObject *)PyExc_BaseExceptionGroup) - -/* Predefined exceptions */ - -PyAPI_DATA(PyObject *) PyExc_BaseException; -PyAPI_DATA(PyObject *) PyExc_Exception; -PyAPI_DATA(PyObject *) PyExc_BaseExceptionGroup; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_DATA(PyObject *) PyExc_StopAsyncIteration; -#endif -PyAPI_DATA(PyObject *) PyExc_StopIteration; -PyAPI_DATA(PyObject *) PyExc_GeneratorExit; -PyAPI_DATA(PyObject *) PyExc_ArithmeticError; -PyAPI_DATA(PyObject *) PyExc_LookupError; - -PyAPI_DATA(PyObject *) PyExc_AssertionError; -PyAPI_DATA(PyObject *) PyExc_AttributeError; -PyAPI_DATA(PyObject *) PyExc_BufferError; -PyAPI_DATA(PyObject *) PyExc_EOFError; -PyAPI_DATA(PyObject *) PyExc_FloatingPointError; -PyAPI_DATA(PyObject *) PyExc_OSError; -PyAPI_DATA(PyObject *) PyExc_ImportError; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_DATA(PyObject *) PyExc_ModuleNotFoundError; -#endif -PyAPI_DATA(PyObject *) PyExc_IndexError; -PyAPI_DATA(PyObject *) PyExc_KeyError; -PyAPI_DATA(PyObject *) PyExc_KeyboardInterrupt; -PyAPI_DATA(PyObject *) PyExc_MemoryError; -PyAPI_DATA(PyObject *) PyExc_NameError; -PyAPI_DATA(PyObject *) PyExc_OverflowError; -PyAPI_DATA(PyObject *) PyExc_RuntimeError; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_DATA(PyObject *) PyExc_RecursionError; -#endif -PyAPI_DATA(PyObject *) PyExc_NotImplementedError; -PyAPI_DATA(PyObject *) PyExc_SyntaxError; -PyAPI_DATA(PyObject *) PyExc_IndentationError; -PyAPI_DATA(PyObject *) PyExc_TabError; -PyAPI_DATA(PyObject *) PyExc_ReferenceError; -PyAPI_DATA(PyObject *) PyExc_SystemError; -PyAPI_DATA(PyObject *) PyExc_SystemExit; -PyAPI_DATA(PyObject *) PyExc_TypeError; -PyAPI_DATA(PyObject *) PyExc_UnboundLocalError; -PyAPI_DATA(PyObject *) PyExc_UnicodeError; -PyAPI_DATA(PyObject *) PyExc_UnicodeEncodeError; -PyAPI_DATA(PyObject *) PyExc_UnicodeDecodeError; -PyAPI_DATA(PyObject *) PyExc_UnicodeTranslateError; -PyAPI_DATA(PyObject *) PyExc_ValueError; -PyAPI_DATA(PyObject *) PyExc_ZeroDivisionError; - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_DATA(PyObject *) PyExc_BlockingIOError; -PyAPI_DATA(PyObject *) PyExc_BrokenPipeError; -PyAPI_DATA(PyObject *) PyExc_ChildProcessError; -PyAPI_DATA(PyObject *) PyExc_ConnectionError; -PyAPI_DATA(PyObject *) PyExc_ConnectionAbortedError; -PyAPI_DATA(PyObject *) PyExc_ConnectionRefusedError; -PyAPI_DATA(PyObject *) PyExc_ConnectionResetError; -PyAPI_DATA(PyObject *) PyExc_FileExistsError; -PyAPI_DATA(PyObject *) PyExc_FileNotFoundError; -PyAPI_DATA(PyObject *) PyExc_InterruptedError; -PyAPI_DATA(PyObject *) PyExc_IsADirectoryError; -PyAPI_DATA(PyObject *) PyExc_NotADirectoryError; -PyAPI_DATA(PyObject *) PyExc_PermissionError; -PyAPI_DATA(PyObject *) PyExc_ProcessLookupError; -PyAPI_DATA(PyObject *) PyExc_TimeoutError; -#endif - - -/* Compatibility aliases */ -PyAPI_DATA(PyObject *) PyExc_EnvironmentError; -PyAPI_DATA(PyObject *) PyExc_IOError; -#ifdef MS_WINDOWS -PyAPI_DATA(PyObject *) PyExc_WindowsError; -#endif - -/* Predefined warning categories */ -PyAPI_DATA(PyObject *) PyExc_Warning; -PyAPI_DATA(PyObject *) PyExc_UserWarning; -PyAPI_DATA(PyObject *) PyExc_DeprecationWarning; -PyAPI_DATA(PyObject *) PyExc_PendingDeprecationWarning; -PyAPI_DATA(PyObject *) PyExc_SyntaxWarning; -PyAPI_DATA(PyObject *) PyExc_RuntimeWarning; -PyAPI_DATA(PyObject *) PyExc_FutureWarning; -PyAPI_DATA(PyObject *) PyExc_ImportWarning; -PyAPI_DATA(PyObject *) PyExc_UnicodeWarning; -PyAPI_DATA(PyObject *) PyExc_BytesWarning; -PyAPI_DATA(PyObject *) PyExc_EncodingWarning; -PyAPI_DATA(PyObject *) PyExc_ResourceWarning; - - -/* Convenience functions */ - -PyAPI_FUNC(int) PyErr_BadArgument(void); -PyAPI_FUNC(PyObject *) PyErr_NoMemory(void); -PyAPI_FUNC(PyObject *) PyErr_SetFromErrno(PyObject *); -PyAPI_FUNC(PyObject *) PyErr_SetFromErrnoWithFilenameObject( - PyObject *, PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03040000 -PyAPI_FUNC(PyObject *) PyErr_SetFromErrnoWithFilenameObjects( - PyObject *, PyObject *, PyObject *); -#endif -PyAPI_FUNC(PyObject *) PyErr_SetFromErrnoWithFilename( - PyObject *exc, - const char *filename /* decoded from the filesystem encoding */ - ); - -PyAPI_FUNC(PyObject *) PyErr_Format( - PyObject *exception, - const char *format, /* ASCII-encoded string */ - ... - ); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(PyObject *) PyErr_FormatV( - PyObject *exception, - const char *format, - va_list vargs); -#endif - -#ifdef MS_WINDOWS -PyAPI_FUNC(PyObject *) PyErr_SetFromWindowsErrWithFilename( - int ierr, - const char *filename /* decoded from the filesystem encoding */ - ); -PyAPI_FUNC(PyObject *) PyErr_SetFromWindowsErr(int); -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErrWithFilenameObject( - PyObject *,int, PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03040000 -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErrWithFilenameObjects( - PyObject *,int, PyObject *, PyObject *); -#endif -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErrWithFilename( - PyObject *exc, - int ierr, - const char *filename /* decoded from the filesystem encoding */ - ); -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErr(PyObject *, int); -#endif /* MS_WINDOWS */ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_FUNC(PyObject *) PyErr_SetImportErrorSubclass(PyObject *, PyObject *, - PyObject *, PyObject *); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyErr_SetImportError(PyObject *, PyObject *, - PyObject *); -#endif - -/* Export the old function so that the existing API remains available: */ -PyAPI_FUNC(void) PyErr_BadInternalCall(void); -PyAPI_FUNC(void) _PyErr_BadInternalCall(const char *filename, int lineno); -/* Mask the old API with a call to the new API for code compiled under - Python 2.0: */ -#define PyErr_BadInternalCall() _PyErr_BadInternalCall(__FILE__, __LINE__) - -/* Function to create a new exception */ -PyAPI_FUNC(PyObject *) PyErr_NewException( - const char *name, PyObject *base, PyObject *dict); -PyAPI_FUNC(PyObject *) PyErr_NewExceptionWithDoc( - const char *name, const char *doc, PyObject *base, PyObject *dict); -PyAPI_FUNC(void) PyErr_WriteUnraisable(PyObject *); - - -/* In signalmodule.c */ -PyAPI_FUNC(int) PyErr_CheckSignals(void); -PyAPI_FUNC(void) PyErr_SetInterrupt(void); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -PyAPI_FUNC(int) PyErr_SetInterruptEx(int signum); -#endif - -/* Support for adding program text to SyntaxErrors */ -PyAPI_FUNC(void) PyErr_SyntaxLocation( - const char *filename, /* decoded from the filesystem encoding */ - int lineno); -PyAPI_FUNC(void) PyErr_SyntaxLocationEx( - const char *filename, /* decoded from the filesystem encoding */ - int lineno, - int col_offset); -PyAPI_FUNC(PyObject *) PyErr_ProgramText( - const char *filename, /* decoded from the filesystem encoding */ - int lineno); - -/* The following functions are used to create and modify unicode - exceptions from C */ - -/* create a UnicodeDecodeError object */ -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_Create( - const char *encoding, /* UTF-8 encoded string */ - const char *object, - Py_ssize_t length, - Py_ssize_t start, - Py_ssize_t end, - const char *reason /* UTF-8 encoded string */ - ); - -/* get the encoding attribute */ -PyAPI_FUNC(PyObject *) PyUnicodeEncodeError_GetEncoding(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_GetEncoding(PyObject *); - -/* get the object attribute */ -PyAPI_FUNC(PyObject *) PyUnicodeEncodeError_GetObject(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_GetObject(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeTranslateError_GetObject(PyObject *); - -/* get the value of the start attribute (the int * may not be NULL) - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_GetStart(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeDecodeError_GetStart(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeTranslateError_GetStart(PyObject *, Py_ssize_t *); - -/* assign a new value to the start attribute - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_SetStart(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeDecodeError_SetStart(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeTranslateError_SetStart(PyObject *, Py_ssize_t); - -/* get the value of the end attribute (the int *may not be NULL) - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_GetEnd(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeDecodeError_GetEnd(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeTranslateError_GetEnd(PyObject *, Py_ssize_t *); - -/* assign a new value to the end attribute - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_SetEnd(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeDecodeError_SetEnd(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeTranslateError_SetEnd(PyObject *, Py_ssize_t); - -/* get the value of the reason attribute */ -PyAPI_FUNC(PyObject *) PyUnicodeEncodeError_GetReason(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_GetReason(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeTranslateError_GetReason(PyObject *); - -/* assign a new value to the reason attribute - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_SetReason( - PyObject *exc, - const char *reason /* UTF-8 encoded string */ - ); -PyAPI_FUNC(int) PyUnicodeDecodeError_SetReason( - PyObject *exc, - const char *reason /* UTF-8 encoded string */ - ); -PyAPI_FUNC(int) PyUnicodeTranslateError_SetReason( - PyObject *exc, - const char *reason /* UTF-8 encoded string */ - ); - -PyAPI_FUNC(int) PyOS_snprintf(char *str, size_t size, const char *format, ...) - Py_GCC_ATTRIBUTE((format(printf, 3, 4))); -PyAPI_FUNC(int) PyOS_vsnprintf(char *str, size_t size, const char *format, va_list va) - Py_GCC_ATTRIBUTE((format(printf, 3, 0))); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_ERRORS_H -# include "cpython/pyerrors.h" -# undef Py_CPYTHON_ERRORS_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ERRORS_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pyexpat.h b/_Pre_Builds/_Python311_cpp/include/pyexpat.h deleted file mode 100644 index 07020b5..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pyexpat.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Stuff to export relevant 'expat' entry points from pyexpat to other - * parser modules, such as cElementTree. */ - -/* note: you must import expat.h before importing this module! */ - -#define PyExpat_CAPI_MAGIC "pyexpat.expat_CAPI 1.1" -#define PyExpat_CAPSULE_NAME "pyexpat.expat_CAPI" - -struct PyExpat_CAPI -{ - char* magic; /* set to PyExpat_CAPI_MAGIC */ - int size; /* set to sizeof(struct PyExpat_CAPI) */ - int MAJOR_VERSION; - int MINOR_VERSION; - int MICRO_VERSION; - /* pointers to selected expat functions. add new functions at - the end, if needed */ - const XML_LChar * (*ErrorString)(enum XML_Error code); - enum XML_Error (*GetErrorCode)(XML_Parser parser); - XML_Size (*GetErrorColumnNumber)(XML_Parser parser); - XML_Size (*GetErrorLineNumber)(XML_Parser parser); - enum XML_Status (*Parse)( - XML_Parser parser, const char *s, int len, int isFinal); - XML_Parser (*ParserCreate_MM)( - const XML_Char *encoding, const XML_Memory_Handling_Suite *memsuite, - const XML_Char *namespaceSeparator); - void (*ParserFree)(XML_Parser parser); - void (*SetCharacterDataHandler)( - XML_Parser parser, XML_CharacterDataHandler handler); - void (*SetCommentHandler)( - XML_Parser parser, XML_CommentHandler handler); - void (*SetDefaultHandlerExpand)( - XML_Parser parser, XML_DefaultHandler handler); - void (*SetElementHandler)( - XML_Parser parser, XML_StartElementHandler start, - XML_EndElementHandler end); - void (*SetNamespaceDeclHandler)( - XML_Parser parser, XML_StartNamespaceDeclHandler start, - XML_EndNamespaceDeclHandler end); - void (*SetProcessingInstructionHandler)( - XML_Parser parser, XML_ProcessingInstructionHandler handler); - void (*SetUnknownEncodingHandler)( - XML_Parser parser, XML_UnknownEncodingHandler handler, - void *encodingHandlerData); - void (*SetUserData)(XML_Parser parser, void *userData); - void (*SetStartDoctypeDeclHandler)(XML_Parser parser, - XML_StartDoctypeDeclHandler start); - enum XML_Status (*SetEncoding)(XML_Parser parser, const XML_Char *encoding); - int (*DefaultUnknownEncodingHandler)( - void *encodingHandlerData, const XML_Char *name, XML_Encoding *info); - /* might be none for expat < 2.1.0 */ - int (*SetHashSalt)(XML_Parser parser, unsigned long hash_salt); - /* always add new stuff to the end! */ -}; - diff --git a/_Pre_Builds/_Python311_cpp/include/pyframe.h b/_Pre_Builds/_Python311_cpp/include/pyframe.h deleted file mode 100644 index 13d5231..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pyframe.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Limited C API of PyFrame API - * - * Include "frameobject.h" to get the PyFrameObject structure. - */ - -#ifndef Py_PYFRAME_H -#define Py_PYFRAME_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Return the line of code the frame is currently executing. */ -PyAPI_FUNC(int) PyFrame_GetLineNumber(PyFrameObject *); - -PyAPI_FUNC(PyCodeObject *) PyFrame_GetCode(PyFrameObject *frame); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYFRAME_H -# include "cpython/pyframe.h" -# undef Py_CPYTHON_PYFRAME_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYFRAME_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pyhash.h b/_Pre_Builds/_Python311_cpp/include/pyhash.h deleted file mode 100644 index 182d223..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pyhash.h +++ /dev/null @@ -1,144 +0,0 @@ -#ifndef Py_HASH_H - -#define Py_HASH_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Helpers for hash functions */ -#ifndef Py_LIMITED_API -PyAPI_FUNC(Py_hash_t) _Py_HashDouble(PyObject *, double); -PyAPI_FUNC(Py_hash_t) _Py_HashPointer(const void*); -// Similar to _Py_HashPointer(), but don't replace -1 with -2 -PyAPI_FUNC(Py_hash_t) _Py_HashPointerRaw(const void*); -PyAPI_FUNC(Py_hash_t) _Py_HashBytes(const void*, Py_ssize_t); -#endif - -/* Prime multiplier used in string and various other hashes. */ -#define _PyHASH_MULTIPLIER 1000003UL /* 0xf4243 */ - -/* Parameters used for the numeric hash implementation. See notes for - _Py_HashDouble in Python/pyhash.c. Numeric hashes are based on - reduction modulo the prime 2**_PyHASH_BITS - 1. */ - -#if SIZEOF_VOID_P >= 8 -# define _PyHASH_BITS 61 -#else -# define _PyHASH_BITS 31 -#endif - -#define _PyHASH_MODULUS (((size_t)1 << _PyHASH_BITS) - 1) -#define _PyHASH_INF 314159 -#define _PyHASH_IMAG _PyHASH_MULTIPLIER - - -/* hash secret - * - * memory layout on 64 bit systems - * cccccccc cccccccc cccccccc uc -- unsigned char[24] - * pppppppp ssssssss ........ fnv -- two Py_hash_t - * k0k0k0k0 k1k1k1k1 ........ siphash -- two uint64_t - * ........ ........ ssssssss djbx33a -- 16 bytes padding + one Py_hash_t - * ........ ........ eeeeeeee pyexpat XML hash salt - * - * memory layout on 32 bit systems - * cccccccc cccccccc cccccccc uc - * ppppssss ........ ........ fnv -- two Py_hash_t - * k0k0k0k0 k1k1k1k1 ........ siphash -- two uint64_t (*) - * ........ ........ ssss.... djbx33a -- 16 bytes padding + one Py_hash_t - * ........ ........ eeee.... pyexpat XML hash salt - * - * (*) The siphash member may not be available on 32 bit platforms without - * an unsigned int64 data type. - */ -#ifndef Py_LIMITED_API -typedef union { - /* ensure 24 bytes */ - unsigned char uc[24]; - /* two Py_hash_t for FNV */ - struct { - Py_hash_t prefix; - Py_hash_t suffix; - } fnv; - /* two uint64 for SipHash24 */ - struct { - uint64_t k0; - uint64_t k1; - } siphash; - /* a different (!) Py_hash_t for small string optimization */ - struct { - unsigned char padding[16]; - Py_hash_t suffix; - } djbx33a; - struct { - unsigned char padding[16]; - Py_hash_t hashsalt; - } expat; -} _Py_HashSecret_t; -PyAPI_DATA(_Py_HashSecret_t) _Py_HashSecret; - -#ifdef Py_DEBUG -PyAPI_DATA(int) _Py_HashSecret_Initialized; -#endif - - -/* hash function definition */ -typedef struct { - Py_hash_t (*const hash)(const void *, Py_ssize_t); - const char *name; - const int hash_bits; - const int seed_bits; -} PyHash_FuncDef; - -PyAPI_FUNC(PyHash_FuncDef*) PyHash_GetFuncDef(void); -#endif - - -/* cutoff for small string DJBX33A optimization in range [1, cutoff). - * - * About 50% of the strings in a typical Python application are smaller than - * 6 to 7 chars. However DJBX33A is vulnerable to hash collision attacks. - * NEVER use DJBX33A for long strings! - * - * A Py_HASH_CUTOFF of 0 disables small string optimization. 32 bit platforms - * should use a smaller cutoff because it is easier to create colliding - * strings. A cutoff of 7 on 64bit platforms and 5 on 32bit platforms should - * provide a decent safety margin. - */ -#ifndef Py_HASH_CUTOFF -# define Py_HASH_CUTOFF 0 -#elif (Py_HASH_CUTOFF > 7 || Py_HASH_CUTOFF < 0) -# error Py_HASH_CUTOFF must in range 0...7. -#endif /* Py_HASH_CUTOFF */ - - -/* hash algorithm selection - * - * The values for Py_HASH_* are hard-coded in the - * configure script. - * - * - FNV and SIPHASH* are available on all platforms and architectures. - * - With EXTERNAL embedders can provide an alternative implementation with:: - * - * PyHash_FuncDef PyHash_Func = {...}; - * - * XXX: Figure out __declspec() for extern PyHash_FuncDef. - */ -#define Py_HASH_EXTERNAL 0 -#define Py_HASH_SIPHASH24 1 -#define Py_HASH_FNV 2 -#define Py_HASH_SIPHASH13 3 - -#ifndef Py_HASH_ALGORITHM -# ifndef HAVE_ALIGNED_REQUIRED -# define Py_HASH_ALGORITHM Py_HASH_SIPHASH13 -# else -# define Py_HASH_ALGORITHM Py_HASH_FNV -# endif /* uint64_t && uint32_t && aligned */ -#endif /* Py_HASH_ALGORITHM */ - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_HASH_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pylifecycle.h b/_Pre_Builds/_Python311_cpp/include/pylifecycle.h deleted file mode 100644 index e4c3b09..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pylifecycle.h +++ /dev/null @@ -1,78 +0,0 @@ - -/* Interfaces to configure, query, create & destroy the Python runtime */ - -#ifndef Py_PYLIFECYCLE_H -#define Py_PYLIFECYCLE_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Initialization and finalization */ -PyAPI_FUNC(void) Py_Initialize(void); -PyAPI_FUNC(void) Py_InitializeEx(int); -PyAPI_FUNC(void) Py_Finalize(void); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_FUNC(int) Py_FinalizeEx(void); -#endif -PyAPI_FUNC(int) Py_IsInitialized(void); - -/* Subinterpreter support */ -PyAPI_FUNC(PyThreadState *) Py_NewInterpreter(void); -PyAPI_FUNC(void) Py_EndInterpreter(PyThreadState *); - - -/* Py_PyAtExit is for the atexit module, Py_AtExit is for low-level - * exit functions. - */ -PyAPI_FUNC(int) Py_AtExit(void (*func)(void)); - -PyAPI_FUNC(void) _Py_NO_RETURN Py_Exit(int); - -/* Bootstrap __main__ (defined in Modules/main.c) */ -PyAPI_FUNC(int) Py_Main(int argc, wchar_t **argv); -PyAPI_FUNC(int) Py_BytesMain(int argc, char **argv); - -/* In pathconfig.c */ -Py_DEPRECATED(3.11) PyAPI_FUNC(void) Py_SetProgramName(const wchar_t *); -PyAPI_FUNC(wchar_t *) Py_GetProgramName(void); - -Py_DEPRECATED(3.11) PyAPI_FUNC(void) Py_SetPythonHome(const wchar_t *); -PyAPI_FUNC(wchar_t *) Py_GetPythonHome(void); - -PyAPI_FUNC(wchar_t *) Py_GetProgramFullPath(void); - -PyAPI_FUNC(wchar_t *) Py_GetPrefix(void); -PyAPI_FUNC(wchar_t *) Py_GetExecPrefix(void); -PyAPI_FUNC(wchar_t *) Py_GetPath(void); -Py_DEPRECATED(3.11) PyAPI_FUNC(void) Py_SetPath(const wchar_t *); -#ifdef MS_WINDOWS -int _Py_CheckPython3(void); -#endif - -/* In their own files */ -PyAPI_FUNC(const char *) Py_GetVersion(void); -PyAPI_FUNC(const char *) Py_GetPlatform(void); -PyAPI_FUNC(const char *) Py_GetCopyright(void); -PyAPI_FUNC(const char *) Py_GetCompiler(void); -PyAPI_FUNC(const char *) Py_GetBuildInfo(void); - -/* Signals */ -typedef void (*PyOS_sighandler_t)(int); -PyAPI_FUNC(PyOS_sighandler_t) PyOS_getsig(int); -PyAPI_FUNC(PyOS_sighandler_t) PyOS_setsig(int, PyOS_sighandler_t); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030B0000 -PyAPI_DATA(const unsigned long) Py_Version; -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYLIFECYCLE_H -# include "cpython/pylifecycle.h" -# undef Py_CPYTHON_PYLIFECYCLE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYLIFECYCLE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pymacconfig.h b/_Pre_Builds/_Python311_cpp/include/pymacconfig.h deleted file mode 100644 index 9dde11b..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pymacconfig.h +++ /dev/null @@ -1,102 +0,0 @@ -#ifndef PYMACCONFIG_H -#define PYMACCONFIG_H - /* - * This file moves some of the autoconf magic to compile-time - * when building on MacOSX. This is needed for building 4-way - * universal binaries and for 64-bit universal binaries because - * the values redefined below aren't configure-time constant but - * only compile-time constant in these scenarios. - */ - -#if defined(__APPLE__) - -# undef SIZEOF_LONG -# undef SIZEOF_PTHREAD_T -# undef SIZEOF_SIZE_T -# undef SIZEOF_TIME_T -# undef SIZEOF_VOID_P -# undef SIZEOF__BOOL -# undef SIZEOF_UINTPTR_T -# undef SIZEOF_PTHREAD_T -# undef WORDS_BIGENDIAN -# undef DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754 -# undef DOUBLE_IS_BIG_ENDIAN_IEEE754 -# undef DOUBLE_IS_LITTLE_ENDIAN_IEEE754 -# undef HAVE_GCC_ASM_FOR_X87 - -# undef VA_LIST_IS_ARRAY -# if defined(__LP64__) && defined(__x86_64__) -# define VA_LIST_IS_ARRAY 1 -# endif - -# undef HAVE_LARGEFILE_SUPPORT -# ifndef __LP64__ -# define HAVE_LARGEFILE_SUPPORT 1 -# endif - -# undef SIZEOF_LONG -# ifdef __LP64__ -# define SIZEOF__BOOL 1 -# define SIZEOF__BOOL 1 -# define SIZEOF_LONG 8 -# define SIZEOF_PTHREAD_T 8 -# define SIZEOF_SIZE_T 8 -# define SIZEOF_TIME_T 8 -# define SIZEOF_VOID_P 8 -# define SIZEOF_UINTPTR_T 8 -# define SIZEOF_PTHREAD_T 8 -# else -# ifdef __ppc__ -# define SIZEOF__BOOL 4 -# else -# define SIZEOF__BOOL 1 -# endif -# define SIZEOF_LONG 4 -# define SIZEOF_PTHREAD_T 4 -# define SIZEOF_SIZE_T 4 -# define SIZEOF_TIME_T 4 -# define SIZEOF_VOID_P 4 -# define SIZEOF_UINTPTR_T 4 -# define SIZEOF_PTHREAD_T 4 -# endif - -# if defined(__LP64__) - /* MacOSX 10.4 (the first release to support 64-bit code - * at all) only supports 64-bit in the UNIX layer. - * Therefore suppress the toolbox-glue in 64-bit mode. - */ - - /* In 64-bit mode setpgrp always has no arguments, in 32-bit - * mode that depends on the compilation environment - */ -# undef SETPGRP_HAVE_ARG - -# endif - -#ifdef __BIG_ENDIAN__ -#define WORDS_BIGENDIAN 1 -#define DOUBLE_IS_BIG_ENDIAN_IEEE754 -#else -#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 -#endif /* __BIG_ENDIAN */ - -#ifdef __i386__ -# define HAVE_GCC_ASM_FOR_X87 -#endif - - /* - * The definition in pyconfig.h is only valid on the OS release - * where configure ran on and not necessarily for all systems where - * the executable can be used on. - * - * Specifically: OSX 10.4 has limited supported for '%zd', while - * 10.5 has full support for '%zd'. A binary built on 10.5 won't - * work properly on 10.4 unless we suppress the definition - * of PY_FORMAT_SIZE_T - */ -#undef PY_FORMAT_SIZE_T - - -#endif /* defined(_APPLE__) */ - -#endif /* PYMACCONFIG_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pymacro.h b/_Pre_Builds/_Python311_cpp/include/pymacro.h deleted file mode 100644 index 5840966..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pymacro.h +++ /dev/null @@ -1,158 +0,0 @@ -#ifndef Py_PYMACRO_H -#define Py_PYMACRO_H - -// gh-91782: On FreeBSD 12, if the _POSIX_C_SOURCE and _XOPEN_SOURCE macros are -// defined, disables C11 support and does not define -// the static_assert() macro. -// https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=255290 -// -// macOS <= 10.10 doesn't define static_assert in assert.h at all despite -// having C11 compiler support. -// -// static_assert is defined in glibc from version 2.16. Compiler support for -// the C11 _Static_assert keyword is in gcc >= 4.6. -// -// MSVC makes static_assert a keyword in C11-17, contrary to the standards. -// -// In C++11 and C2x, static_assert is a keyword, redefining is undefined -// behaviour. So only define if building as C (if __STDC_VERSION__ is defined), -// not C++, and only for C11-17. -#if !defined(static_assert) && (defined(__GNUC__) || defined(__clang__)) \ - && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L \ - && __STDC_VERSION__ <= 201710L -# define static_assert _Static_assert -#endif - -/* Minimum value between x and y */ -#define Py_MIN(x, y) (((x) > (y)) ? (y) : (x)) - -/* Maximum value between x and y */ -#define Py_MAX(x, y) (((x) > (y)) ? (x) : (y)) - -/* Absolute value of the number x */ -#define Py_ABS(x) ((x) < 0 ? -(x) : (x)) - -#define _Py_XSTRINGIFY(x) #x - -/* Convert the argument to a string. For example, Py_STRINGIFY(123) is replaced - with "123" by the preprocessor. Defines are also replaced by their value. - For example Py_STRINGIFY(__LINE__) is replaced by the line number, not - by "__LINE__". */ -#define Py_STRINGIFY(x) _Py_XSTRINGIFY(x) - -/* Get the size of a structure member in bytes */ -#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) - -/* Argument must be a char or an int in [-128, 127] or [0, 255]. */ -#define Py_CHARMASK(c) ((unsigned char)((c) & 0xff)) - -/* Assert a build-time dependency, as an expression. - - Your compile will fail if the condition isn't true, or can't be evaluated - by the compiler. This can be used in an expression: its value is 0. - - Example: - - #define foo_to_char(foo) \ - ((char *)(foo) \ - + Py_BUILD_ASSERT_EXPR(offsetof(struct foo, string) == 0)) - - Written by Rusty Russell, public domain, http://ccodearchive.net/ */ -#define Py_BUILD_ASSERT_EXPR(cond) \ - (sizeof(char [1 - 2*!(cond)]) - 1) - -#define Py_BUILD_ASSERT(cond) do { \ - (void)Py_BUILD_ASSERT_EXPR(cond); \ - } while(0) - -/* Get the number of elements in a visible array - - This does not work on pointers, or arrays declared as [], or function - parameters. With correct compiler support, such usage will cause a build - error (see Py_BUILD_ASSERT_EXPR). - - Written by Rusty Russell, public domain, http://ccodearchive.net/ - - Requires at GCC 3.1+ */ -#if (defined(__GNUC__) && !defined(__STRICT_ANSI__) && \ - (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 1)) || (__GNUC__ >= 4))) -/* Two gcc extensions. - &a[0] degrades to a pointer: a different type from an array */ -#define Py_ARRAY_LENGTH(array) \ - (sizeof(array) / sizeof((array)[0]) \ - + Py_BUILD_ASSERT_EXPR(!__builtin_types_compatible_p(typeof(array), \ - typeof(&(array)[0])))) -#else -#define Py_ARRAY_LENGTH(array) \ - (sizeof(array) / sizeof((array)[0])) -#endif - - -/* Define macros for inline documentation. */ -#define PyDoc_VAR(name) static const char name[] -#define PyDoc_STRVAR(name,str) PyDoc_VAR(name) = PyDoc_STR(str) -#ifdef WITH_DOC_STRINGS -#define PyDoc_STR(str) str -#else -#define PyDoc_STR(str) "" -#endif - -/* Below "a" is a power of 2. */ -/* Round down size "n" to be a multiple of "a". */ -#define _Py_SIZE_ROUND_DOWN(n, a) ((size_t)(n) & ~(size_t)((a) - 1)) -/* Round up size "n" to be a multiple of "a". */ -#define _Py_SIZE_ROUND_UP(n, a) (((size_t)(n) + \ - (size_t)((a) - 1)) & ~(size_t)((a) - 1)) -/* Round pointer "p" down to the closest "a"-aligned address <= "p". */ -#define _Py_ALIGN_DOWN(p, a) ((void *)((uintptr_t)(p) & ~(uintptr_t)((a) - 1))) -/* Round pointer "p" up to the closest "a"-aligned address >= "p". */ -#define _Py_ALIGN_UP(p, a) ((void *)(((uintptr_t)(p) + \ - (uintptr_t)((a) - 1)) & ~(uintptr_t)((a) - 1))) -/* Check if pointer "p" is aligned to "a"-bytes boundary. */ -#define _Py_IS_ALIGNED(p, a) (!((uintptr_t)(p) & (uintptr_t)((a) - 1))) - -/* Use this for unused arguments in a function definition to silence compiler - * warnings. Example: - * - * int func(int a, int Py_UNUSED(b)) { return a; } - */ -#if defined(__GNUC__) || defined(__clang__) -# define Py_UNUSED(name) _unused_ ## name __attribute__((unused)) -#else -# define Py_UNUSED(name) _unused_ ## name -#endif - -#if defined(RANDALL_WAS_HERE) -# define Py_UNREACHABLE() \ - Py_FatalError( \ - "If you're seeing this, the code is in what I thought was\n" \ - "an unreachable state.\n\n" \ - "I could give you advice for what to do, but honestly, why\n" \ - "should you trust me? I clearly screwed this up. I'm writing\n" \ - "a message that should never appear, yet I know it will\n" \ - "probably appear someday.\n\n" \ - "On a deep level, I know I'm not up to this task.\n" \ - "I'm so sorry.\n" \ - "https://xkcd.com/2200") -#elif defined(Py_DEBUG) -# define Py_UNREACHABLE() \ - Py_FatalError( \ - "We've reached an unreachable state. Anything is possible.\n" \ - "The limits were in our heads all along. Follow your dreams.\n" \ - "https://xkcd.com/2200") -#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5)) -# define Py_UNREACHABLE() __builtin_unreachable() -#elif defined(__clang__) || defined(__INTEL_COMPILER) -# define Py_UNREACHABLE() __builtin_unreachable() -#elif defined(_MSC_VER) -# define Py_UNREACHABLE() __assume(0) -#else -# define Py_UNREACHABLE() \ - Py_FatalError("Unreachable C code path reached") -#endif - -// Prevent using an expression as a l-value. -// For example, "int x; _Py_RVALUE(x) = 1;" fails with a compiler error. -#define _Py_RVALUE(EXPR) ((void)0, (EXPR)) - -#endif /* Py_PYMACRO_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pymath.h b/_Pre_Builds/_Python311_cpp/include/pymath.h deleted file mode 100644 index 772b67e..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pymath.h +++ /dev/null @@ -1,65 +0,0 @@ -// Symbols and macros to supply platform-independent interfaces to mathematical -// functions and constants. - -#ifndef Py_PYMATH_H -#define Py_PYMATH_H - -/* High precision definition of pi and e (Euler) - * The values are taken from libc6's math.h. - */ -#ifndef Py_MATH_PIl -#define Py_MATH_PIl 3.1415926535897932384626433832795029L -#endif -#ifndef Py_MATH_PI -#define Py_MATH_PI 3.14159265358979323846 -#endif - -#ifndef Py_MATH_El -#define Py_MATH_El 2.7182818284590452353602874713526625L -#endif - -#ifndef Py_MATH_E -#define Py_MATH_E 2.7182818284590452354 -#endif - -/* Tau (2pi) to 40 digits, taken from tauday.com/tau-digits. */ -#ifndef Py_MATH_TAU -#define Py_MATH_TAU 6.2831853071795864769252867665590057683943L -#endif - -// Py_IS_NAN(X) -// Return 1 if float or double arg is a NaN, else 0. -#define Py_IS_NAN(X) isnan(X) - -// Py_IS_INFINITY(X) -// Return 1 if float or double arg is an infinity, else 0. -#define Py_IS_INFINITY(X) isinf(X) - -// Py_IS_FINITE(X) -// Return 1 if float or double arg is neither infinite nor NAN, else 0. -#define Py_IS_FINITE(X) isfinite(X) - -/* HUGE_VAL is supposed to expand to a positive double infinity. Python - * uses Py_HUGE_VAL instead because some platforms are broken in this - * respect. We used to embed code in pyport.h to try to worm around that, - * but different platforms are broken in conflicting ways. If you're on - * a platform where HUGE_VAL is defined incorrectly, fiddle your Python - * config to #define Py_HUGE_VAL to something that works on your platform. - */ -#ifndef Py_HUGE_VAL -# define Py_HUGE_VAL HUGE_VAL -#endif - -// Py_NAN: Value that evaluates to a quiet Not-a-Number (NaN). -#if !defined(Py_NAN) -# if _Py__has_builtin(__builtin_nan) - // Built-in implementation of the ISO C99 function nan(): quiet NaN. -# define Py_NAN (__builtin_nan("")) -#else - // Use C99 NAN constant: quiet Not-A-Number. - // NAN is a float, Py_NAN is a double: cast to double. -# define Py_NAN ((double)NAN) -# endif -#endif - -#endif /* Py_PYMATH_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pymem.h b/_Pre_Builds/_Python311_cpp/include/pymem.h deleted file mode 100644 index c15ad10..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pymem.h +++ /dev/null @@ -1,104 +0,0 @@ -/* The PyMem_ family: low-level memory allocation interfaces. - See objimpl.h for the PyObject_ memory family. -*/ - -#ifndef Py_PYMEM_H -#define Py_PYMEM_H - -#include "pyport.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BEWARE: - - Each interface exports both functions and macros. Extension modules should - use the functions, to ensure binary compatibility across Python versions. - Because the Python implementation is free to change internal details, and - the macros may (or may not) expose details for speed, if you do use the - macros you must recompile your extensions with each Python release. - - Never mix calls to PyMem_ with calls to the platform malloc/realloc/ - calloc/free. For example, on Windows different DLLs may end up using - different heaps, and if you use PyMem_Malloc you'll get the memory from the - heap used by the Python DLL; it could be a disaster if you free()'ed that - directly in your own extension. Using PyMem_Free instead ensures Python - can return the memory to the proper heap. As another example, in - a debug build (Py_DEBUG macro), Python wraps all calls to all PyMem_ and - PyObject_ memory functions in special debugging wrappers that add additional - debugging info to dynamic memory blocks. The system routines have no idea - what to do with that stuff, and the Python wrappers have no idea what to do - with raw blocks obtained directly by the system routines then. - - The GIL must be held when using these APIs. -*/ - -/* - * Raw memory interface - * ==================== - */ - -/* Functions - - Functions supplying platform-independent semantics for malloc/realloc/ - free. These functions make sure that allocating 0 bytes returns a distinct - non-NULL pointer (whenever possible -- if we're flat out of memory, NULL - may be returned), even if the platform malloc and realloc don't. - Returned pointers must be checked for NULL explicitly. No action is - performed on failure (no exception is set, no warning is printed, etc). -*/ - -PyAPI_FUNC(void *) PyMem_Malloc(size_t size); -PyAPI_FUNC(void *) PyMem_Calloc(size_t nelem, size_t elsize); -PyAPI_FUNC(void *) PyMem_Realloc(void *ptr, size_t new_size); -PyAPI_FUNC(void) PyMem_Free(void *ptr); - -/* - * Type-oriented memory interface - * ============================== - * - * Allocate memory for n objects of the given type. Returns a new pointer - * or NULL if the request was too large or memory allocation failed. Use - * these macros rather than doing the multiplication yourself so that proper - * overflow checking is always done. - */ - -#define PyMem_New(type, n) \ - ( ((size_t)(n) > PY_SSIZE_T_MAX / sizeof(type)) ? NULL : \ - ( (type *) PyMem_Malloc((n) * sizeof(type)) ) ) - -/* - * The value of (p) is always clobbered by this macro regardless of success. - * The caller MUST check if (p) is NULL afterwards and deal with the memory - * error if so. This means the original value of (p) MUST be saved for the - * caller's memory error handler to not lose track of it. - */ -#define PyMem_Resize(p, type, n) \ - ( (p) = ((size_t)(n) > PY_SSIZE_T_MAX / sizeof(type)) ? NULL : \ - (type *) PyMem_Realloc((p), (n) * sizeof(type)) ) - - -// Deprecated aliases only kept for backward compatibility. -// PyMem_Del and PyMem_DEL are defined with no parameter to be able to use -// them as function pointers (ex: dealloc = PyMem_Del). -#define PyMem_MALLOC(n) PyMem_Malloc(n) -#define PyMem_NEW(type, n) PyMem_New(type, n) -#define PyMem_REALLOC(p, n) PyMem_Realloc(p, n) -#define PyMem_RESIZE(p, type, n) PyMem_Resize(p, type, n) -#define PyMem_FREE(p) PyMem_Free(p) -#define PyMem_Del PyMem_Free -#define PyMem_DEL PyMem_Free - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYMEM_H -# include "cpython/pymem.h" -# undef Py_CPYTHON_PYMEM_H -#endif - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_PYMEM_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pyport.h b/_Pre_Builds/_Python311_cpp/include/pyport.h deleted file mode 100644 index b3b8b6f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pyport.h +++ /dev/null @@ -1,737 +0,0 @@ -#ifndef Py_PYPORT_H -#define Py_PYPORT_H - -#include "pyconfig.h" /* include for defines */ - -#include - -#include -#ifndef UCHAR_MAX -# error "limits.h must define UCHAR_MAX" -#endif -#if UCHAR_MAX != 255 -# error "Python's source code assumes C's unsigned char is an 8-bit type" -#endif - - -// Macro to use C++ static_cast<> in the Python C API. -#ifdef __cplusplus -# define _Py_STATIC_CAST(type, expr) static_cast(expr) -#else -# define _Py_STATIC_CAST(type, expr) ((type)(expr)) -#endif -// Macro to use the more powerful/dangerous C-style cast even in C++. -#define _Py_CAST(type, expr) ((type)(expr)) - -// Static inline functions should use _Py_NULL rather than using directly NULL -// to prevent C++ compiler warnings. On C++11 and newer, _Py_NULL is defined as -// nullptr. -#if defined(__cplusplus) && __cplusplus >= 201103 -# define _Py_NULL nullptr -#else -# define _Py_NULL NULL -#endif - - -/* Defines to build Python and its standard library: - * - * - Py_BUILD_CORE: Build Python core. Give access to Python internals, but - * should not be used by third-party modules. - * - Py_BUILD_CORE_BUILTIN: Build a Python stdlib module as a built-in module. - * - Py_BUILD_CORE_MODULE: Build a Python stdlib module as a dynamic library. - * - * Py_BUILD_CORE_BUILTIN and Py_BUILD_CORE_MODULE imply Py_BUILD_CORE. - * - * On Windows, Py_BUILD_CORE_MODULE exports "PyInit_xxx" symbol, whereas - * Py_BUILD_CORE_BUILTIN does not. - */ -#if defined(Py_BUILD_CORE_BUILTIN) && !defined(Py_BUILD_CORE) -# define Py_BUILD_CORE -#endif -#if defined(Py_BUILD_CORE_MODULE) && !defined(Py_BUILD_CORE) -# define Py_BUILD_CORE -#endif - - -/************************************************************************** -Symbols and macros to supply platform-independent interfaces to basic -C language & library operations whose spellings vary across platforms. - -Please try to make documentation here as clear as possible: by definition, -the stuff here is trying to illuminate C's darkest corners. - -Config #defines referenced here: - -SIGNED_RIGHT_SHIFT_ZERO_FILLS -Meaning: To be defined iff i>>j does not extend the sign bit when i is a - signed integral type and i < 0. -Used in: Py_ARITHMETIC_RIGHT_SHIFT - -Py_DEBUG -Meaning: Extra checks compiled in for debug mode. -Used in: Py_SAFE_DOWNCAST - -**************************************************************************/ - -/* typedefs for some C9X-defined synonyms for integral types. - * - * The names in Python are exactly the same as the C9X names, except with a - * Py_ prefix. Until C9X is universally implemented, this is the only way - * to ensure that Python gets reliable names that don't conflict with names - * in non-Python code that are playing their own tricks to define the C9X - * names. - * - * NOTE: don't go nuts here! Python has no use for *most* of the C9X - * integral synonyms. Only define the ones we actually need. - */ - -/* long long is required. Ensure HAVE_LONG_LONG is defined for compatibility. */ -#ifndef HAVE_LONG_LONG -#define HAVE_LONG_LONG 1 -#endif -#ifndef PY_LONG_LONG -#define PY_LONG_LONG long long -/* If LLONG_MAX is defined in limits.h, use that. */ -#define PY_LLONG_MIN LLONG_MIN -#define PY_LLONG_MAX LLONG_MAX -#define PY_ULLONG_MAX ULLONG_MAX -#endif - -#define PY_UINT32_T uint32_t -#define PY_UINT64_T uint64_t - -/* Signed variants of the above */ -#define PY_INT32_T int32_t -#define PY_INT64_T int64_t - -/* PYLONG_BITS_IN_DIGIT describes the number of bits per "digit" (limb) in the - * PyLongObject implementation (longintrepr.h). It's currently either 30 or 15, - * defaulting to 30. The 15-bit digit option may be removed in the future. - */ -#ifndef PYLONG_BITS_IN_DIGIT -#define PYLONG_BITS_IN_DIGIT 30 -#endif - -/* uintptr_t is the C9X name for an unsigned integral type such that a - * legitimate void* can be cast to uintptr_t and then back to void* again - * without loss of information. Similarly for intptr_t, wrt a signed - * integral type. - */ -typedef uintptr_t Py_uintptr_t; -typedef intptr_t Py_intptr_t; - -/* Py_ssize_t is a signed integral type such that sizeof(Py_ssize_t) == - * sizeof(size_t). C99 doesn't define such a thing directly (size_t is an - * unsigned integral type). See PEP 353 for details. - * PY_SSIZE_T_MAX is the largest positive value of type Py_ssize_t. - */ -#ifdef HAVE_PY_SSIZE_T - -#elif HAVE_SSIZE_T -typedef ssize_t Py_ssize_t; -# define PY_SSIZE_T_MAX SSIZE_MAX -#elif SIZEOF_VOID_P == SIZEOF_SIZE_T -typedef Py_intptr_t Py_ssize_t; -# define PY_SSIZE_T_MAX INTPTR_MAX -#else -# error "Python needs a typedef for Py_ssize_t in pyport.h." -#endif - -/* Smallest negative value of type Py_ssize_t. */ -#define PY_SSIZE_T_MIN (-PY_SSIZE_T_MAX-1) - -/* Py_hash_t is the same size as a pointer. */ -#define SIZEOF_PY_HASH_T SIZEOF_SIZE_T -typedef Py_ssize_t Py_hash_t; -/* Py_uhash_t is the unsigned equivalent needed to calculate numeric hash. */ -#define SIZEOF_PY_UHASH_T SIZEOF_SIZE_T -typedef size_t Py_uhash_t; - -/* Now PY_SSIZE_T_CLEAN is mandatory. This is just for backward compatibility. */ -typedef Py_ssize_t Py_ssize_clean_t; - -/* Largest possible value of size_t. */ -#define PY_SIZE_MAX SIZE_MAX - -/* Macro kept for backward compatibility: use "z" in new code. - * - * PY_FORMAT_SIZE_T is a platform-specific modifier for use in a printf - * format to convert an argument with the width of a size_t or Py_ssize_t. - * C99 introduced "z" for this purpose, but old MSVCs had not supported it. - * Since MSVC supports "z" since (at least) 2015, we can just use "z" - * for new code. - * - * These "high level" Python format functions interpret "z" correctly on - * all platforms (Python interprets the format string itself, and does whatever - * the platform C requires to convert a size_t/Py_ssize_t argument): - * - * PyBytes_FromFormat - * PyErr_Format - * PyBytes_FromFormatV - * PyUnicode_FromFormatV - * - * Lower-level uses require that you interpolate the correct format modifier - * yourself (e.g., calling printf, fprintf, sprintf, PyOS_snprintf); for - * example, - * - * Py_ssize_t index; - * fprintf(stderr, "index %" PY_FORMAT_SIZE_T "d sucks\n", index); - * - * That will expand to %zd or to something else correct for a Py_ssize_t on - * the platform. - */ -#ifndef PY_FORMAT_SIZE_T -# define PY_FORMAT_SIZE_T "z" -#endif - -/* Py_LOCAL can be used instead of static to get the fastest possible calling - * convention for functions that are local to a given module. - * - * Py_LOCAL_INLINE does the same thing, and also explicitly requests inlining, - * for platforms that support that. - * - * NOTE: You can only use this for functions that are entirely local to a - * module; functions that are exported via method tables, callbacks, etc, - * should keep using static. - */ - -#if defined(_MSC_VER) - /* ignore warnings if the compiler decides not to inline a function */ -# pragma warning(disable: 4710) - /* fastest possible local call under MSVC */ -# define Py_LOCAL(type) static type __fastcall -# define Py_LOCAL_INLINE(type) static __inline type __fastcall -#else -# define Py_LOCAL(type) static type -# define Py_LOCAL_INLINE(type) static inline type -#endif - -// bpo-28126: Py_MEMCPY is kept for backwards compatibility, -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_MEMCPY memcpy -#endif - -#ifdef HAVE_IEEEFP_H -#include /* needed for 'finite' declaration on some platforms */ -#endif - -#include /* Moved here from the math section, before extern "C" */ - -/******************************************** - * WRAPPER FOR and/or * - ********************************************/ - -#ifdef HAVE_SYS_TIME_H -#include -#endif -#include - -/****************************** - * WRAPPER FOR * - ******************************/ - -/* NB caller must include */ - -#ifdef HAVE_SYS_SELECT_H -#include -#endif /* !HAVE_SYS_SELECT_H */ - -/******************************* - * stat() and fstat() fiddling * - *******************************/ - -#ifdef HAVE_SYS_STAT_H -#include -#elif defined(HAVE_STAT_H) -#include -#endif - -#ifndef S_IFMT -/* VisualAge C/C++ Failed to Define MountType Field in sys/stat.h */ -#define S_IFMT 0170000 -#endif - -#ifndef S_IFLNK -/* Windows doesn't define S_IFLNK but posixmodule.c maps - * IO_REPARSE_TAG_SYMLINK to S_IFLNK */ -# define S_IFLNK 0120000 -#endif - -#ifndef S_ISREG -#define S_ISREG(x) (((x) & S_IFMT) == S_IFREG) -#endif - -#ifndef S_ISDIR -#define S_ISDIR(x) (((x) & S_IFMT) == S_IFDIR) -#endif - -#ifndef S_ISCHR -#define S_ISCHR(x) (((x) & S_IFMT) == S_IFCHR) -#endif - -#ifdef __cplusplus -/* Move this down here since some C++ #include's don't like to be included - inside an extern "C" */ -extern "C" { -#endif - - -/* Py_ARITHMETIC_RIGHT_SHIFT - * C doesn't define whether a right-shift of a signed integer sign-extends - * or zero-fills. Here a macro to force sign extension: - * Py_ARITHMETIC_RIGHT_SHIFT(TYPE, I, J) - * Return I >> J, forcing sign extension. Arithmetically, return the - * floor of I/2**J. - * Requirements: - * I should have signed integer type. In the terminology of C99, this can - * be either one of the five standard signed integer types (signed char, - * short, int, long, long long) or an extended signed integer type. - * J is an integer >= 0 and strictly less than the number of bits in the - * type of I (because C doesn't define what happens for J outside that - * range either). - * TYPE used to specify the type of I, but is now ignored. It's been left - * in for backwards compatibility with versions <= 2.6 or 3.0. - * Caution: - * I may be evaluated more than once. - */ -#ifdef SIGNED_RIGHT_SHIFT_ZERO_FILLS -#define Py_ARITHMETIC_RIGHT_SHIFT(TYPE, I, J) \ - ((I) < 0 ? -1-((-1-(I)) >> (J)) : (I) >> (J)) -#else -#define Py_ARITHMETIC_RIGHT_SHIFT(TYPE, I, J) ((I) >> (J)) -#endif - -/* Py_FORCE_EXPANSION(X) - * "Simply" returns its argument. However, macro expansions within the - * argument are evaluated. This unfortunate trickery is needed to get - * token-pasting to work as desired in some cases. - */ -#define Py_FORCE_EXPANSION(X) X - -/* Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) - * Cast VALUE to type NARROW from type WIDE. In Py_DEBUG mode, this - * assert-fails if any information is lost. - * Caution: - * VALUE may be evaluated more than once. - */ -#ifdef Py_DEBUG -# define Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) \ - (assert(_Py_STATIC_CAST(WIDE, _Py_STATIC_CAST(NARROW, (VALUE))) == (VALUE)), \ - _Py_STATIC_CAST(NARROW, (VALUE))) -#else -# define Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) _Py_STATIC_CAST(NARROW, (VALUE)) -#endif - - -/* Py_DEPRECATED(version) - * Declare a variable, type, or function deprecated. - * The macro must be placed before the declaration. - * Usage: - * Py_DEPRECATED(3.3) extern int old_var; - * Py_DEPRECATED(3.4) typedef int T1; - * Py_DEPRECATED(3.8) PyAPI_FUNC(int) Py_OldFunction(void); - */ -#if defined(__GNUC__) \ - && ((__GNUC__ >= 4) || (__GNUC__ == 3) && (__GNUC_MINOR__ >= 1)) -#define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__)) -#elif defined(_MSC_VER) -#define Py_DEPRECATED(VERSION) __declspec(deprecated( \ - "deprecated in " #VERSION)) -#else -#define Py_DEPRECATED(VERSION_UNUSED) -#endif - -#if defined(__clang__) -#define _Py_COMP_DIAG_PUSH _Pragma("clang diagnostic push") -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS \ - _Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\"") -#define _Py_COMP_DIAG_POP _Pragma("clang diagnostic pop") -#elif defined(__GNUC__) \ - && ((__GNUC__ >= 5) || (__GNUC__ == 4) && (__GNUC_MINOR__ >= 6)) -#define _Py_COMP_DIAG_PUSH _Pragma("GCC diagnostic push") -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS \ - _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") -#define _Py_COMP_DIAG_POP _Pragma("GCC diagnostic pop") -#elif defined(_MSC_VER) -#define _Py_COMP_DIAG_PUSH __pragma(warning(push)) -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS __pragma(warning(disable: 4996)) -#define _Py_COMP_DIAG_POP __pragma(warning(pop)) -#else -#define _Py_COMP_DIAG_PUSH -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS -#define _Py_COMP_DIAG_POP -#endif - -/* _Py_HOT_FUNCTION - * The hot attribute on a function is used to inform the compiler that the - * function is a hot spot of the compiled program. The function is optimized - * more aggressively and on many target it is placed into special subsection of - * the text section so all hot functions appears close together improving - * locality. - * - * Usage: - * int _Py_HOT_FUNCTION x(void) { return 3; } - * - * Issue #28618: This attribute must not be abused, otherwise it can have a - * negative effect on performance. Only the functions were Python spend most of - * its time must use it. Use a profiler when running performance benchmark - * suite to find these functions. - */ -#if defined(__GNUC__) \ - && ((__GNUC__ >= 5) || (__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)) -#define _Py_HOT_FUNCTION __attribute__((hot)) -#else -#define _Py_HOT_FUNCTION -#endif - -// Ask the compiler to always inline a static inline function. The compiler can -// ignore it and decides to not inline the function. -// -// It can be used to inline performance critical static inline functions when -// building Python in debug mode with function inlining disabled. For example, -// MSC disables function inlining when building in debug mode. -// -// Marking blindly a static inline function with Py_ALWAYS_INLINE can result in -// worse performances (due to increased code size for example). The compiler is -// usually smarter than the developer for the cost/benefit analysis. -// -// If Python is built in debug mode (if the Py_DEBUG macro is defined), the -// Py_ALWAYS_INLINE macro does nothing. -// -// It must be specified before the function return type. Usage: -// -// static inline Py_ALWAYS_INLINE int random(void) { return 4; } -#if defined(Py_DEBUG) - // If Python is built in debug mode, usually compiler optimizations are - // disabled. In this case, Py_ALWAYS_INLINE can increase a lot the stack - // memory usage. For example, forcing inlining using gcc -O0 increases the - // stack usage from 6 KB to 15 KB per Python function call. -# define Py_ALWAYS_INLINE -#elif defined(__GNUC__) || defined(__clang__) || defined(__INTEL_COMPILER) -# define Py_ALWAYS_INLINE __attribute__((always_inline)) -#elif defined(_MSC_VER) -# define Py_ALWAYS_INLINE __forceinline -#else -# define Py_ALWAYS_INLINE -#endif - -// Py_NO_INLINE -// Disable inlining on a function. For example, it reduces the C stack -// consumption: useful on LTO+PGO builds which heavily inline code (see -// bpo-33720). -// -// Usage: -// -// Py_NO_INLINE static int random(void) { return 4; } -#if defined(__GNUC__) || defined(__clang__) || defined(__INTEL_COMPILER) -# define Py_NO_INLINE __attribute__ ((noinline)) -#elif defined(_MSC_VER) -# define Py_NO_INLINE __declspec(noinline) -#else -# define Py_NO_INLINE -#endif - -/************************************************************************** -Prototypes that are missing from the standard include files on some systems -(and possibly only some versions of such systems.) - -Please be conservative with adding new ones, document them and enclose them -in platform-specific #ifdefs. -**************************************************************************/ - -#ifdef HAVE__GETPTY -#include /* we need to import mode_t */ -extern char * _getpty(int *, int, mode_t, int); -#endif - -/* On QNX 6, struct termio must be declared by including sys/termio.h - if TCGETA, TCSETA, TCSETAW, or TCSETAF are used. sys/termio.h must - be included before termios.h or it will generate an error. */ -#if defined(HAVE_SYS_TERMIO_H) && !defined(__hpux) -#include -#endif - - -/* On 4.4BSD-descendants, ctype functions serves the whole range of - * wchar_t character set rather than single byte code points only. - * This characteristic can break some operations of string object - * including str.upper() and str.split() on UTF-8 locales. This - * workaround was provided by Tim Robbins of FreeBSD project. - */ - -#if defined(__APPLE__) -# define _PY_PORT_CTYPE_UTF8_ISSUE -#endif - -#ifdef _PY_PORT_CTYPE_UTF8_ISSUE -#ifndef __cplusplus - /* The workaround below is unsafe in C++ because - * the defines these symbols as real functions, - * with a slightly different signature. - * See issue #10910 - */ -#include -#include -#undef isalnum -#define isalnum(c) iswalnum(btowc(c)) -#undef isalpha -#define isalpha(c) iswalpha(btowc(c)) -#undef islower -#define islower(c) iswlower(btowc(c)) -#undef isspace -#define isspace(c) iswspace(btowc(c)) -#undef isupper -#define isupper(c) iswupper(btowc(c)) -#undef tolower -#define tolower(c) towlower(btowc(c)) -#undef toupper -#define toupper(c) towupper(btowc(c)) -#endif -#endif - - -/* Declarations for symbol visibility. - - PyAPI_FUNC(type): Declares a public Python API function and return type - PyAPI_DATA(type): Declares public Python data and its type - PyMODINIT_FUNC: A Python module init function. If these functions are - inside the Python core, they are private to the core. - If in an extension module, it may be declared with - external linkage depending on the platform. - - As a number of platforms support/require "__declspec(dllimport/dllexport)", - we support a HAVE_DECLSPEC_DLL macro to save duplication. -*/ - -/* - All windows ports, except cygwin, are handled in PC/pyconfig.h. - - Cygwin is the only other autoconf platform requiring special - linkage handling and it uses __declspec(). -*/ -#if defined(__CYGWIN__) -# define HAVE_DECLSPEC_DLL -#endif - -#include "exports.h" - -/* only get special linkage if built as shared or platform is Cygwin */ -#if defined(Py_ENABLE_SHARED) || defined(__CYGWIN__) -# if defined(HAVE_DECLSPEC_DLL) -# if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) -# define PyAPI_FUNC(RTYPE) Py_EXPORTED_SYMBOL RTYPE -# define PyAPI_DATA(RTYPE) extern Py_EXPORTED_SYMBOL RTYPE - /* module init functions inside the core need no external linkage */ - /* except for Cygwin to handle embedding */ -# if defined(__CYGWIN__) -# define PyMODINIT_FUNC Py_EXPORTED_SYMBOL PyObject* -# else /* __CYGWIN__ */ -# define PyMODINIT_FUNC PyObject* -# endif /* __CYGWIN__ */ -# else /* Py_BUILD_CORE */ - /* Building an extension module, or an embedded situation */ - /* public Python functions and data are imported */ - /* Under Cygwin, auto-import functions to prevent compilation */ - /* failures similar to those described at the bottom of 4.1: */ - /* http://docs.python.org/extending/windows.html#a-cookbook-approach */ -# if !defined(__CYGWIN__) -# define PyAPI_FUNC(RTYPE) Py_IMPORTED_SYMBOL RTYPE -# endif /* !__CYGWIN__ */ -# define PyAPI_DATA(RTYPE) extern Py_IMPORTED_SYMBOL RTYPE - /* module init functions outside the core must be exported */ -# if defined(__cplusplus) -# define PyMODINIT_FUNC extern "C" Py_EXPORTED_SYMBOL PyObject* -# else /* __cplusplus */ -# define PyMODINIT_FUNC Py_EXPORTED_SYMBOL PyObject* -# endif /* __cplusplus */ -# endif /* Py_BUILD_CORE */ -# endif /* HAVE_DECLSPEC_DLL */ -#endif /* Py_ENABLE_SHARED */ - -/* If no external linkage macros defined by now, create defaults */ -#ifndef PyAPI_FUNC -# define PyAPI_FUNC(RTYPE) Py_EXPORTED_SYMBOL RTYPE -#endif -#ifndef PyAPI_DATA -# define PyAPI_DATA(RTYPE) extern Py_EXPORTED_SYMBOL RTYPE -#endif -#ifndef PyMODINIT_FUNC -# if defined(__cplusplus) -# define PyMODINIT_FUNC extern "C" Py_EXPORTED_SYMBOL PyObject* -# else /* __cplusplus */ -# define PyMODINIT_FUNC Py_EXPORTED_SYMBOL PyObject* -# endif /* __cplusplus */ -#endif - -/* limits.h constants that may be missing */ - -#ifndef INT_MAX -#define INT_MAX 2147483647 -#endif - -#ifndef LONG_MAX -#if SIZEOF_LONG == 4 -#define LONG_MAX 0X7FFFFFFFL -#elif SIZEOF_LONG == 8 -#define LONG_MAX 0X7FFFFFFFFFFFFFFFL -#else -#error "could not set LONG_MAX in pyport.h" -#endif -#endif - -#ifndef LONG_MIN -#define LONG_MIN (-LONG_MAX-1) -#endif - -#ifndef LONG_BIT -#define LONG_BIT (8 * SIZEOF_LONG) -#endif - -#if LONG_BIT != 8 * SIZEOF_LONG -/* 04-Oct-2000 LONG_BIT is apparently (mis)defined as 64 on some recent - * 32-bit platforms using gcc. We try to catch that here at compile-time - * rather than waiting for integer multiplication to trigger bogus - * overflows. - */ -#error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)." -#endif - -#ifdef __cplusplus -} -#endif - -/* - * Hide GCC attributes from compilers that don't support them. - */ -#if (!defined(__GNUC__) || __GNUC__ < 2 || \ - (__GNUC__ == 2 && __GNUC_MINOR__ < 7) ) -#define Py_GCC_ATTRIBUTE(x) -#else -#define Py_GCC_ATTRIBUTE(x) __attribute__(x) -#endif - -/* - * Specify alignment on compilers that support it. - */ -#if defined(__GNUC__) && __GNUC__ >= 3 -#define Py_ALIGNED(x) __attribute__((aligned(x))) -#else -#define Py_ALIGNED(x) -#endif - -/* Eliminate end-of-loop code not reached warnings from SunPro C - * when using do{...}while(0) macros - */ -#ifdef __SUNPRO_C -#pragma error_messages (off,E_END_OF_LOOP_CODE_NOT_REACHED) -#endif - -#ifndef Py_LL -#define Py_LL(x) x##LL -#endif - -#ifndef Py_ULL -#define Py_ULL(x) Py_LL(x##U) -#endif - -#define Py_VA_COPY va_copy - -/* - * Convenient macros to deal with endianness of the platform. WORDS_BIGENDIAN is - * detected by configure and defined in pyconfig.h. The code in pyconfig.h - * also takes care of Apple's universal builds. - */ - -#ifdef WORDS_BIGENDIAN -# define PY_BIG_ENDIAN 1 -# define PY_LITTLE_ENDIAN 0 -#else -# define PY_BIG_ENDIAN 0 -# define PY_LITTLE_ENDIAN 1 -#endif - -#ifdef __ANDROID__ - /* The Android langinfo.h header is not used. */ -# undef HAVE_LANGINFO_H -# undef CODESET -#endif - -/* Maximum value of the Windows DWORD type */ -#define PY_DWORD_MAX 4294967295U - -/* This macro used to tell whether Python was built with multithreading - * enabled. Now multithreading is always enabled, but keep the macro - * for compatibility. - */ -#ifndef WITH_THREAD -# define WITH_THREAD -#endif - -/* Check that ALT_SOABI is consistent with Py_TRACE_REFS: - ./configure --with-trace-refs should must be used to define Py_TRACE_REFS */ -#if defined(ALT_SOABI) && defined(Py_TRACE_REFS) -# error "Py_TRACE_REFS ABI is not compatible with release and debug ABI" -#endif - -#if defined(__ANDROID__) || defined(__VXWORKS__) - // Use UTF-8 as the locale encoding, ignore the LC_CTYPE locale. - // See _Py_GetLocaleEncoding(), PyUnicode_DecodeLocale() - // and PyUnicode_EncodeLocale(). -# define _Py_FORCE_UTF8_LOCALE -#endif - -#if defined(_Py_FORCE_UTF8_LOCALE) || defined(__APPLE__) - // Use UTF-8 as the filesystem encoding. - // See PyUnicode_DecodeFSDefaultAndSize(), PyUnicode_EncodeFSDefault(), - // Py_DecodeLocale() and Py_EncodeLocale(). -# define _Py_FORCE_UTF8_FS_ENCODING -#endif - -/* Mark a function which cannot return. Example: - PyAPI_FUNC(void) _Py_NO_RETURN PyThread_exit_thread(void); - - XLC support is intentionally omitted due to bpo-40244 */ -#ifndef _Py_NO_RETURN -#if defined(__clang__) || \ - (defined(__GNUC__) && \ - ((__GNUC__ >= 3) || \ - (__GNUC__ == 2) && (__GNUC_MINOR__ >= 5))) -# define _Py_NO_RETURN __attribute__((__noreturn__)) -#elif defined(_MSC_VER) -# define _Py_NO_RETURN __declspec(noreturn) -#else -# define _Py_NO_RETURN -#endif -#endif - - -// Preprocessor check for a builtin preprocessor function. Always return 0 -// if __has_builtin() macro is not defined. -// -// __has_builtin() is available on clang and GCC 10. -#ifdef __has_builtin -# define _Py__has_builtin(x) __has_builtin(x) -#else -# define _Py__has_builtin(x) 0 -#endif - - -/* A convenient way for code to know if sanitizers are enabled. */ -#if defined(__has_feature) -# if __has_feature(memory_sanitizer) -# if !defined(_Py_MEMORY_SANITIZER) -# define _Py_MEMORY_SANITIZER -# endif -# endif -# if __has_feature(address_sanitizer) -# if !defined(_Py_ADDRESS_SANITIZER) -# define _Py_ADDRESS_SANITIZER -# endif -# endif -#elif defined(__GNUC__) -# if defined(__SANITIZE_ADDRESS__) -# define _Py_ADDRESS_SANITIZER -# endif -#endif - -#endif /* Py_PYPORT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pystate.h b/_Pre_Builds/_Python311_cpp/include/pystate.h deleted file mode 100644 index e6b4de9..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pystate.h +++ /dev/null @@ -1,132 +0,0 @@ -/* Thread and interpreter state structures and their interfaces */ - - -#ifndef Py_PYSTATE_H -#define Py_PYSTATE_H -#ifdef __cplusplus -extern "C" { -#endif - -/* This limitation is for performance and simplicity. If needed it can be -removed (with effort). */ -#define MAX_CO_EXTRA_USERS 255 - -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_New(void); -PyAPI_FUNC(void) PyInterpreterState_Clear(PyInterpreterState *); -PyAPI_FUNC(void) PyInterpreterState_Delete(PyInterpreterState *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* New in 3.9 */ -/* Get the current interpreter state. - - Issue a fatal error if there no current Python thread state or no current - interpreter. It cannot return NULL. - - The caller must hold the GIL. */ -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Get(void); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03080000 -/* New in 3.8 */ -PyAPI_FUNC(PyObject *) PyInterpreterState_GetDict(PyInterpreterState *); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -/* New in 3.7 */ -PyAPI_FUNC(int64_t) PyInterpreterState_GetID(PyInterpreterState *); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 - -/* State unique per thread */ - -/* New in 3.3 */ -PyAPI_FUNC(int) PyState_AddModule(PyObject*, PyModuleDef*); -PyAPI_FUNC(int) PyState_RemoveModule(PyModuleDef*); -#endif -PyAPI_FUNC(PyObject*) PyState_FindModule(PyModuleDef*); - -PyAPI_FUNC(PyThreadState *) PyThreadState_New(PyInterpreterState *); -PyAPI_FUNC(void) PyThreadState_Clear(PyThreadState *); -PyAPI_FUNC(void) PyThreadState_Delete(PyThreadState *); - -/* Get the current thread state. - - When the current thread state is NULL, this issues a fatal error (so that - the caller needn't check for NULL). - - The caller must hold the GIL. - - See also _PyThreadState_UncheckedGet() and _PyThreadState_GET(). */ -PyAPI_FUNC(PyThreadState *) PyThreadState_Get(void); - -// Alias to PyThreadState_Get() -#define PyThreadState_GET() PyThreadState_Get() - -PyAPI_FUNC(PyThreadState *) PyThreadState_Swap(PyThreadState *); -PyAPI_FUNC(PyObject *) PyThreadState_GetDict(void); -PyAPI_FUNC(int) PyThreadState_SetAsyncExc(unsigned long, PyObject *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* New in 3.9 */ -PyAPI_FUNC(PyInterpreterState*) PyThreadState_GetInterpreter(PyThreadState *tstate); -PyAPI_FUNC(PyFrameObject*) PyThreadState_GetFrame(PyThreadState *tstate); -PyAPI_FUNC(uint64_t) PyThreadState_GetID(PyThreadState *tstate); -#endif - -typedef - enum {PyGILState_LOCKED, PyGILState_UNLOCKED} - PyGILState_STATE; - - -/* Ensure that the current thread is ready to call the Python - C API, regardless of the current state of Python, or of its - thread lock. This may be called as many times as desired - by a thread so long as each call is matched with a call to - PyGILState_Release(). In general, other thread-state APIs may - be used between _Ensure() and _Release() calls, so long as the - thread-state is restored to its previous state before the Release(). - For example, normal use of the Py_BEGIN_ALLOW_THREADS/ - Py_END_ALLOW_THREADS macros are acceptable. - - The return value is an opaque "handle" to the thread state when - PyGILState_Ensure() was called, and must be passed to - PyGILState_Release() to ensure Python is left in the same state. Even - though recursive calls are allowed, these handles can *not* be shared - - each unique call to PyGILState_Ensure must save the handle for its - call to PyGILState_Release. - - When the function returns, the current thread will hold the GIL. - - Failure is a fatal error. -*/ -PyAPI_FUNC(PyGILState_STATE) PyGILState_Ensure(void); - -/* Release any resources previously acquired. After this call, Python's - state will be the same as it was prior to the corresponding - PyGILState_Ensure() call (but generally this state will be unknown to - the caller, hence the use of the GILState API.) - - Every call to PyGILState_Ensure must be matched by a call to - PyGILState_Release on the same thread. -*/ -PyAPI_FUNC(void) PyGILState_Release(PyGILState_STATE); - -/* Helper/diagnostic function - get the current thread state for - this thread. May return NULL if no GILState API has been used - on the current thread. Note that the main thread always has such a - thread-state, even if no auto-thread-state call has been made - on the main thread. -*/ -PyAPI_FUNC(PyThreadState *) PyGILState_GetThisThreadState(void); - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYSTATE_H -# include "cpython/pystate.h" -# undef Py_CPYTHON_PYSTATE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYSTATE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pystrcmp.h b/_Pre_Builds/_Python311_cpp/include/pystrcmp.h deleted file mode 100644 index edb1239..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pystrcmp.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef Py_STRCMP_H -#define Py_STRCMP_H - -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(int) PyOS_mystrnicmp(const char *, const char *, Py_ssize_t); -PyAPI_FUNC(int) PyOS_mystricmp(const char *, const char *); - -#ifdef MS_WINDOWS -#define PyOS_strnicmp strnicmp -#define PyOS_stricmp stricmp -#else -#define PyOS_strnicmp PyOS_mystrnicmp -#define PyOS_stricmp PyOS_mystricmp -#endif - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_STRCMP_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pystrtod.h b/_Pre_Builds/_Python311_cpp/include/pystrtod.h deleted file mode 100644 index fa056d1..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pystrtod.h +++ /dev/null @@ -1,46 +0,0 @@ -#ifndef Py_STRTOD_H -#define Py_STRTOD_H - -#ifdef __cplusplus -extern "C" { -#endif - - -PyAPI_FUNC(double) PyOS_string_to_double(const char *str, - char **endptr, - PyObject *overflow_exception); - -/* The caller is responsible for calling PyMem_Free to free the buffer - that's is returned. */ -PyAPI_FUNC(char *) PyOS_double_to_string(double val, - char format_code, - int precision, - int flags, - int *type); - -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _Py_string_to_number_with_underscores( - const char *str, Py_ssize_t len, const char *what, PyObject *obj, void *arg, - PyObject *(*innerfunc)(const char *, Py_ssize_t, void *)); - -PyAPI_FUNC(double) _Py_parse_inf_or_nan(const char *p, char **endptr); -#endif - - -/* PyOS_double_to_string's "flags" parameter can be set to 0 or more of: */ -#define Py_DTSF_SIGN 0x01 /* always add the sign */ -#define Py_DTSF_ADD_DOT_0 0x02 /* if the result is an integer add ".0" */ -#define Py_DTSF_ALT 0x04 /* "alternate" formatting. it's format_code - specific */ -#define Py_DTSF_NO_NEG_0 0x08 /* negative zero result is coerced to 0 */ - -/* PyOS_double_to_string's "type", if non-NULL, will be set to one of: */ -#define Py_DTST_FINITE 0 -#define Py_DTST_INFINITE 1 -#define Py_DTST_NAN 2 - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_STRTOD_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pythonrun.h b/_Pre_Builds/_Python311_cpp/include/pythonrun.h deleted file mode 100644 index 1b208b7..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pythonrun.h +++ /dev/null @@ -1,45 +0,0 @@ - -/* Interfaces to parse and execute pieces of python code */ - -#ifndef Py_PYTHONRUN_H -#define Py_PYTHONRUN_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) Py_CompileString(const char *, const char *, int); - -PyAPI_FUNC(void) PyErr_Print(void); -PyAPI_FUNC(void) PyErr_PrintEx(int); -PyAPI_FUNC(void) PyErr_Display(PyObject *, PyObject *, PyObject *); - - -/* Stuff with no proper home (yet) */ -PyAPI_DATA(int) (*PyOS_InputHook)(void); - -/* Stack size, in "pointers" (so we get extra safety margins - on 64-bit platforms). On a 32-bit platform, this translates - to an 8k margin. */ -#define PYOS_STACK_MARGIN 2048 - -#if defined(WIN32) && !defined(MS_WIN64) && !defined(_M_ARM) && defined(_MSC_VER) && _MSC_VER >= 1300 -/* Enable stack checking under Microsoft C */ -// When changing the platforms, ensure PyOS_CheckStack() docs are still correct -#define USE_STACKCHECK -#endif - -#ifdef USE_STACKCHECK -/* Check that we aren't overflowing our stack */ -PyAPI_FUNC(int) PyOS_CheckStack(void); -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYTHONRUN_H -# include "cpython/pythonrun.h" -# undef Py_CPYTHON_PYTHONRUN_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYTHONRUN_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pythread.h b/_Pre_Builds/_Python311_cpp/include/pythread.h deleted file mode 100644 index a483290..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pythread.h +++ /dev/null @@ -1,133 +0,0 @@ -#ifndef Py_PYTHREAD_H -#define Py_PYTHREAD_H - -typedef void *PyThread_type_lock; - -#ifdef __cplusplus -extern "C" { -#endif - -/* Return status codes for Python lock acquisition. Chosen for maximum - * backwards compatibility, ie failure -> 0, success -> 1. */ -typedef enum PyLockStatus { - PY_LOCK_FAILURE = 0, - PY_LOCK_ACQUIRED = 1, - PY_LOCK_INTR -} PyLockStatus; - -PyAPI_FUNC(void) PyThread_init_thread(void); -PyAPI_FUNC(unsigned long) PyThread_start_new_thread(void (*)(void *), void *); -PyAPI_FUNC(void) _Py_NO_RETURN PyThread_exit_thread(void); -PyAPI_FUNC(unsigned long) PyThread_get_thread_ident(void); - -#if defined(__APPLE__) || defined(__linux__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(_WIN32) || defined(_AIX) -#define PY_HAVE_THREAD_NATIVE_ID -PyAPI_FUNC(unsigned long) PyThread_get_thread_native_id(void); -#endif - -PyAPI_FUNC(PyThread_type_lock) PyThread_allocate_lock(void); -PyAPI_FUNC(void) PyThread_free_lock(PyThread_type_lock); -PyAPI_FUNC(int) PyThread_acquire_lock(PyThread_type_lock, int); -#define WAIT_LOCK 1 -#define NOWAIT_LOCK 0 - -/* PY_TIMEOUT_T is the integral type used to specify timeouts when waiting - on a lock (see PyThread_acquire_lock_timed() below). - PY_TIMEOUT_MAX is the highest usable value (in microseconds) of that - type, and depends on the system threading API. - - NOTE: this isn't the same value as `_thread.TIMEOUT_MAX`. The _thread - module exposes a higher-level API, with timeouts expressed in seconds - and floating-point numbers allowed. -*/ -#define PY_TIMEOUT_T long long - -#if defined(_POSIX_THREADS) - /* PyThread_acquire_lock_timed() uses _PyTime_FromNanoseconds(us * 1000), - convert microseconds to nanoseconds. */ -# define PY_TIMEOUT_MAX (LLONG_MAX / 1000) -#elif defined (NT_THREADS) - // WaitForSingleObject() accepts timeout in milliseconds in the range - // [0; 0xFFFFFFFE] (DWORD type). INFINITE value (0xFFFFFFFF) means no - // timeout. 0xFFFFFFFE milliseconds is around 49.7 days. -# if 0xFFFFFFFELL * 1000 < LLONG_MAX -# define PY_TIMEOUT_MAX (0xFFFFFFFELL * 1000) -# else -# define PY_TIMEOUT_MAX LLONG_MAX -# endif -#else -# define PY_TIMEOUT_MAX LLONG_MAX -#endif - - -/* If microseconds == 0, the call is non-blocking: it returns immediately - even when the lock can't be acquired. - If microseconds > 0, the call waits up to the specified duration. - If microseconds < 0, the call waits until success (or abnormal failure) - - microseconds must be less than PY_TIMEOUT_MAX. Behaviour otherwise is - undefined. - - If intr_flag is true and the acquire is interrupted by a signal, then the - call will return PY_LOCK_INTR. The caller may reattempt to acquire the - lock. -*/ -PyAPI_FUNC(PyLockStatus) PyThread_acquire_lock_timed(PyThread_type_lock, - PY_TIMEOUT_T microseconds, - int intr_flag); - -PyAPI_FUNC(void) PyThread_release_lock(PyThread_type_lock); - -PyAPI_FUNC(size_t) PyThread_get_stacksize(void); -PyAPI_FUNC(int) PyThread_set_stacksize(size_t); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyThread_GetInfo(void); -#endif - - -/* Thread Local Storage (TLS) API - TLS API is DEPRECATED. Use Thread Specific Storage (TSS) API. - - The existing TLS API has used int to represent TLS keys across all - platforms, but it is not POSIX-compliant. Therefore, the new TSS API uses - opaque data type to represent TSS keys to be compatible (see PEP 539). -*/ -Py_DEPRECATED(3.7) PyAPI_FUNC(int) PyThread_create_key(void); -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyThread_delete_key(int key); -Py_DEPRECATED(3.7) PyAPI_FUNC(int) PyThread_set_key_value(int key, - void *value); -Py_DEPRECATED(3.7) PyAPI_FUNC(void *) PyThread_get_key_value(int key); -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyThread_delete_key_value(int key); - -/* Cleanup after a fork */ -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyThread_ReInitTLS(void); - - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -/* New in 3.7 */ -/* Thread Specific Storage (TSS) API */ - -typedef struct _Py_tss_t Py_tss_t; /* opaque */ - -PyAPI_FUNC(Py_tss_t *) PyThread_tss_alloc(void); -PyAPI_FUNC(void) PyThread_tss_free(Py_tss_t *key); - -/* The parameter key must not be NULL. */ -PyAPI_FUNC(int) PyThread_tss_is_created(Py_tss_t *key); -PyAPI_FUNC(int) PyThread_tss_create(Py_tss_t *key); -PyAPI_FUNC(void) PyThread_tss_delete(Py_tss_t *key); -PyAPI_FUNC(int) PyThread_tss_set(Py_tss_t *key, void *value); -PyAPI_FUNC(void *) PyThread_tss_get(Py_tss_t *key); -#endif /* New in 3.7 */ - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYTHREAD_H -# include "cpython/pythread.h" -# undef Py_CPYTHON_PYTHREAD_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYTHREAD_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/pytypedefs.h b/_Pre_Builds/_Python311_cpp/include/pytypedefs.h deleted file mode 100644 index e78ed56..0000000 --- a/_Pre_Builds/_Python311_cpp/include/pytypedefs.h +++ /dev/null @@ -1,30 +0,0 @@ -// Forward declarations of types of the Python C API. -// Declare them at the same place since redefining typedef is a C11 feature. -// Only use a forward declaration if there is an interdependency between two -// header files. - -#ifndef Py_PYTYPEDEFS_H -#define Py_PYTYPEDEFS_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct PyModuleDef PyModuleDef; -typedef struct PyModuleDef_Slot PyModuleDef_Slot; -typedef struct PyMethodDef PyMethodDef; -typedef struct PyGetSetDef PyGetSetDef; -typedef struct PyMemberDef PyMemberDef; - -typedef struct _object PyObject; -typedef struct _longobject PyLongObject; -typedef struct _typeobject PyTypeObject; -typedef struct PyCodeObject PyCodeObject; -typedef struct _frame PyFrameObject; - -typedef struct _ts PyThreadState; -typedef struct _is PyInterpreterState; - -#ifdef __cplusplus -} -#endif -#endif // !Py_PYTYPEDEFS_H diff --git a/_Pre_Builds/_Python311_cpp/include/rangeobject.h b/_Pre_Builds/_Python311_cpp/include/rangeobject.h deleted file mode 100644 index d6af847..0000000 --- a/_Pre_Builds/_Python311_cpp/include/rangeobject.h +++ /dev/null @@ -1,27 +0,0 @@ - -/* Range object interface */ - -#ifndef Py_RANGEOBJECT_H -#define Py_RANGEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* -A range object represents an integer range. This is an immutable object; -a range cannot change its value after creation. - -Range objects behave like the corresponding tuple objects except that -they are represented by a start, stop, and step datamembers. -*/ - -PyAPI_DATA(PyTypeObject) PyRange_Type; -PyAPI_DATA(PyTypeObject) PyRangeIter_Type; -PyAPI_DATA(PyTypeObject) PyLongRangeIter_Type; - -#define PyRange_Check(op) Py_IS_TYPE(op, &PyRange_Type) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_RANGEOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/setobject.h b/_Pre_Builds/_Python311_cpp/include/setobject.h deleted file mode 100644 index fdad706..0000000 --- a/_Pre_Builds/_Python311_cpp/include/setobject.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Set object interface */ - -#ifndef Py_SETOBJECT_H -#define Py_SETOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PySet_Type; -PyAPI_DATA(PyTypeObject) PyFrozenSet_Type; -PyAPI_DATA(PyTypeObject) PySetIter_Type; - -PyAPI_FUNC(PyObject *) PySet_New(PyObject *); -PyAPI_FUNC(PyObject *) PyFrozenSet_New(PyObject *); - -PyAPI_FUNC(int) PySet_Add(PyObject *set, PyObject *key); -PyAPI_FUNC(int) PySet_Clear(PyObject *set); -PyAPI_FUNC(int) PySet_Contains(PyObject *anyset, PyObject *key); -PyAPI_FUNC(int) PySet_Discard(PyObject *set, PyObject *key); -PyAPI_FUNC(PyObject *) PySet_Pop(PyObject *set); -PyAPI_FUNC(Py_ssize_t) PySet_Size(PyObject *anyset); - -#define PyFrozenSet_CheckExact(ob) Py_IS_TYPE(ob, &PyFrozenSet_Type) -#define PyFrozenSet_Check(ob) \ - (Py_IS_TYPE(ob, &PyFrozenSet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PyFrozenSet_Type)) - -#define PyAnySet_CheckExact(ob) \ - (Py_IS_TYPE(ob, &PySet_Type) || Py_IS_TYPE(ob, &PyFrozenSet_Type)) -#define PyAnySet_Check(ob) \ - (Py_IS_TYPE(ob, &PySet_Type) || Py_IS_TYPE(ob, &PyFrozenSet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PySet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PyFrozenSet_Type)) - -#define PySet_CheckExact(op) Py_IS_TYPE(op, &PySet_Type) -#define PySet_Check(ob) \ - (Py_IS_TYPE(ob, &PySet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PySet_Type)) - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_SETOBJECT_H -# include "cpython/setobject.h" -# undef Py_CPYTHON_SETOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_SETOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/sliceobject.h b/_Pre_Builds/_Python311_cpp/include/sliceobject.h deleted file mode 100644 index 2c88950..0000000 --- a/_Pre_Builds/_Python311_cpp/include/sliceobject.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef Py_SLICEOBJECT_H -#define Py_SLICEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* The unique ellipsis object "..." */ - -PyAPI_DATA(PyObject) _Py_EllipsisObject; /* Don't use this directly */ - -#define Py_Ellipsis (&_Py_EllipsisObject) - -/* Slice object interface */ - -/* - -A slice object containing start, stop, and step data members (the -names are from range). After much talk with Guido, it was decided to -let these be any arbitrary python type. Py_None stands for omitted values. -*/ -#ifndef Py_LIMITED_API -typedef struct { - PyObject_HEAD - PyObject *start, *stop, *step; /* not NULL */ -} PySliceObject; -#endif - -PyAPI_DATA(PyTypeObject) PySlice_Type; -PyAPI_DATA(PyTypeObject) PyEllipsis_Type; - -#define PySlice_Check(op) Py_IS_TYPE(op, &PySlice_Type) - -PyAPI_FUNC(PyObject *) PySlice_New(PyObject* start, PyObject* stop, - PyObject* step); -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PySlice_FromIndices(Py_ssize_t start, Py_ssize_t stop); -PyAPI_FUNC(int) _PySlice_GetLongIndices(PySliceObject *self, PyObject *length, - PyObject **start_ptr, PyObject **stop_ptr, - PyObject **step_ptr); -#endif -PyAPI_FUNC(int) PySlice_GetIndices(PyObject *r, Py_ssize_t length, - Py_ssize_t *start, Py_ssize_t *stop, Py_ssize_t *step); -Py_DEPRECATED(3.7) -PyAPI_FUNC(int) PySlice_GetIndicesEx(PyObject *r, Py_ssize_t length, - Py_ssize_t *start, Py_ssize_t *stop, - Py_ssize_t *step, - Py_ssize_t *slicelength); - -#if !defined(Py_LIMITED_API) || (Py_LIMITED_API+0 >= 0x03050400 && Py_LIMITED_API+0 < 0x03060000) || Py_LIMITED_API+0 >= 0x03060100 -#define PySlice_GetIndicesEx(slice, length, start, stop, step, slicelen) ( \ - PySlice_Unpack((slice), (start), (stop), (step)) < 0 ? \ - ((*(slicelen) = 0), -1) : \ - ((*(slicelen) = PySlice_AdjustIndices((length), (start), (stop), *(step))), \ - 0)) -PyAPI_FUNC(int) PySlice_Unpack(PyObject *slice, - Py_ssize_t *start, Py_ssize_t *stop, Py_ssize_t *step); -PyAPI_FUNC(Py_ssize_t) PySlice_AdjustIndices(Py_ssize_t length, - Py_ssize_t *start, Py_ssize_t *stop, - Py_ssize_t step); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_SLICEOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/structmember.h b/_Pre_Builds/_Python311_cpp/include/structmember.h deleted file mode 100644 index 65a777d..0000000 --- a/_Pre_Builds/_Python311_cpp/include/structmember.h +++ /dev/null @@ -1,75 +0,0 @@ -#ifndef Py_STRUCTMEMBER_H -#define Py_STRUCTMEMBER_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Interface to map C struct members to Python object attributes */ - -#include /* For offsetof */ - -/* An array of PyMemberDef structures defines the name, type and offset - of selected members of a C structure. These can be read by - PyMember_GetOne() and set by PyMember_SetOne() (except if their READONLY - flag is set). The array must be terminated with an entry whose name - pointer is NULL. */ - -struct PyMemberDef { - const char *name; - int type; - Py_ssize_t offset; - int flags; - const char *doc; -}; - -/* Types */ -#define T_SHORT 0 -#define T_INT 1 -#define T_LONG 2 -#define T_FLOAT 3 -#define T_DOUBLE 4 -#define T_STRING 5 -#define T_OBJECT 6 -/* XXX the ordering here is weird for binary compatibility */ -#define T_CHAR 7 /* 1-character string */ -#define T_BYTE 8 /* 8-bit signed int */ -/* unsigned variants: */ -#define T_UBYTE 9 -#define T_USHORT 10 -#define T_UINT 11 -#define T_ULONG 12 - -/* Added by Jack: strings contained in the structure */ -#define T_STRING_INPLACE 13 - -/* Added by Lillo: bools contained in the structure (assumed char) */ -#define T_BOOL 14 - -#define T_OBJECT_EX 16 /* Like T_OBJECT, but raises AttributeError - when the value is NULL, instead of - converting to None. */ -#define T_LONGLONG 17 -#define T_ULONGLONG 18 - -#define T_PYSSIZET 19 /* Py_ssize_t */ -#define T_NONE 20 /* Value is always None */ - - -/* Flags */ -#define READONLY 1 -#define READ_RESTRICTED 2 -#define PY_WRITE_RESTRICTED 4 -#define RESTRICTED (READ_RESTRICTED | PY_WRITE_RESTRICTED) - -#define PY_AUDIT_READ READ_RESTRICTED - -/* Current API, use this */ -PyAPI_FUNC(PyObject *) PyMember_GetOne(const char *, PyMemberDef *); -PyAPI_FUNC(int) PyMember_SetOne(char *, PyMemberDef *, PyObject *); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_STRUCTMEMBER_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/structseq.h b/_Pre_Builds/_Python311_cpp/include/structseq.h deleted file mode 100644 index 4f5c09f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/structseq.h +++ /dev/null @@ -1,49 +0,0 @@ - -/* Named tuple object interface */ - -#ifndef Py_STRUCTSEQ_H -#define Py_STRUCTSEQ_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct PyStructSequence_Field { - const char *name; - const char *doc; -} PyStructSequence_Field; - -typedef struct PyStructSequence_Desc { - const char *name; - const char *doc; - PyStructSequence_Field *fields; - int n_in_sequence; -} PyStructSequence_Desc; - -PyAPI_DATA(const char * const) PyStructSequence_UnnamedField; - -#ifndef Py_LIMITED_API -PyAPI_FUNC(void) PyStructSequence_InitType(PyTypeObject *type, - PyStructSequence_Desc *desc); -PyAPI_FUNC(int) PyStructSequence_InitType2(PyTypeObject *type, - PyStructSequence_Desc *desc); -#endif -PyAPI_FUNC(PyTypeObject*) PyStructSequence_NewType(PyStructSequence_Desc *desc); - -PyAPI_FUNC(PyObject *) PyStructSequence_New(PyTypeObject* type); - -#ifndef Py_LIMITED_API -typedef PyTupleObject PyStructSequence; - -/* Macro, *only* to be used to fill in brand new objects */ -#define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM(op, i, v) - -#define PyStructSequence_GET_ITEM(op, i) PyTuple_GET_ITEM(op, i) -#endif - -PyAPI_FUNC(void) PyStructSequence_SetItem(PyObject*, Py_ssize_t, PyObject*); -PyAPI_FUNC(PyObject*) PyStructSequence_GetItem(PyObject*, Py_ssize_t); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_STRUCTSEQ_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/sysmodule.h b/_Pre_Builds/_Python311_cpp/include/sysmodule.h deleted file mode 100644 index b508711..0000000 --- a/_Pre_Builds/_Python311_cpp/include/sysmodule.h +++ /dev/null @@ -1,41 +0,0 @@ - -/* System module interface */ - -#ifndef Py_SYSMODULE_H -#define Py_SYSMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) PySys_GetObject(const char *); -PyAPI_FUNC(int) PySys_SetObject(const char *, PyObject *); - -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_SetArgv(int, wchar_t **); -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_SetArgvEx(int, wchar_t **, int); -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_SetPath(const wchar_t *); - -PyAPI_FUNC(void) PySys_WriteStdout(const char *format, ...) - Py_GCC_ATTRIBUTE((format(printf, 1, 2))); -PyAPI_FUNC(void) PySys_WriteStderr(const char *format, ...) - Py_GCC_ATTRIBUTE((format(printf, 1, 2))); -PyAPI_FUNC(void) PySys_FormatStdout(const char *format, ...); -PyAPI_FUNC(void) PySys_FormatStderr(const char *format, ...); - -PyAPI_FUNC(void) PySys_ResetWarnOptions(void); -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_AddWarnOption(const wchar_t *); -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_AddWarnOptionUnicode(PyObject *); -Py_DEPRECATED(3.11) PyAPI_FUNC(int) PySys_HasWarnOptions(void); - -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_AddXOption(const wchar_t *); -PyAPI_FUNC(PyObject *) PySys_GetXOptions(void); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_SYSMODULE_H -# include "cpython/sysmodule.h" -# undef Py_CPYTHON_SYSMODULE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_SYSMODULE_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/token.h b/_Pre_Builds/_Python311_cpp/include/token.h deleted file mode 100644 index eb1b9ea..0000000 --- a/_Pre_Builds/_Python311_cpp/include/token.h +++ /dev/null @@ -1,97 +0,0 @@ -/* Auto-generated by Tools/scripts/generate_token.py */ - -/* Token types */ -#ifndef Py_LIMITED_API -#ifndef Py_TOKEN_H -#define Py_TOKEN_H -#ifdef __cplusplus -extern "C" { -#endif - -#undef TILDE /* Prevent clash of our definition with system macro. Ex AIX, ioctl.h */ - -#define ENDMARKER 0 -#define NAME 1 -#define NUMBER 2 -#define STRING 3 -#define NEWLINE 4 -#define INDENT 5 -#define DEDENT 6 -#define LPAR 7 -#define RPAR 8 -#define LSQB 9 -#define RSQB 10 -#define COLON 11 -#define COMMA 12 -#define SEMI 13 -#define PLUS 14 -#define MINUS 15 -#define STAR 16 -#define SLASH 17 -#define VBAR 18 -#define AMPER 19 -#define LESS 20 -#define GREATER 21 -#define EQUAL 22 -#define DOT 23 -#define PERCENT 24 -#define LBRACE 25 -#define RBRACE 26 -#define EQEQUAL 27 -#define NOTEQUAL 28 -#define LESSEQUAL 29 -#define GREATEREQUAL 30 -#define TILDE 31 -#define CIRCUMFLEX 32 -#define LEFTSHIFT 33 -#define RIGHTSHIFT 34 -#define DOUBLESTAR 35 -#define PLUSEQUAL 36 -#define MINEQUAL 37 -#define STAREQUAL 38 -#define SLASHEQUAL 39 -#define PERCENTEQUAL 40 -#define AMPEREQUAL 41 -#define VBAREQUAL 42 -#define CIRCUMFLEXEQUAL 43 -#define LEFTSHIFTEQUAL 44 -#define RIGHTSHIFTEQUAL 45 -#define DOUBLESTAREQUAL 46 -#define DOUBLESLASH 47 -#define DOUBLESLASHEQUAL 48 -#define AT 49 -#define ATEQUAL 50 -#define RARROW 51 -#define ELLIPSIS 52 -#define COLONEQUAL 53 -#define OP 54 -#define AWAIT 55 -#define ASYNC 56 -#define TYPE_IGNORE 57 -#define TYPE_COMMENT 58 -#define SOFT_KEYWORD 59 -#define ERRORTOKEN 60 -#define N_TOKENS 64 -#define NT_OFFSET 256 - -/* Special definitions for cooperation with parser */ - -#define ISTERMINAL(x) ((x) < NT_OFFSET) -#define ISNONTERMINAL(x) ((x) >= NT_OFFSET) -#define ISEOF(x) ((x) == ENDMARKER) -#define ISWHITESPACE(x) ((x) == ENDMARKER || \ - (x) == NEWLINE || \ - (x) == INDENT || \ - (x) == DEDENT) - - -PyAPI_DATA(const char * const) _PyParser_TokenNames[]; /* Token names */ -PyAPI_FUNC(int) PyToken_OneChar(int); -PyAPI_FUNC(int) PyToken_TwoChars(int, int); -PyAPI_FUNC(int) PyToken_ThreeChars(int, int, int); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_TOKEN_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python311_cpp/include/traceback.h b/_Pre_Builds/_Python311_cpp/include/traceback.h deleted file mode 100644 index 2dfa2ad..0000000 --- a/_Pre_Builds/_Python311_cpp/include/traceback.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef Py_TRACEBACK_H -#define Py_TRACEBACK_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Traceback interface */ - -PyAPI_FUNC(int) PyTraceBack_Here(PyFrameObject *); -PyAPI_FUNC(int) PyTraceBack_Print(PyObject *, PyObject *); - -/* Reveal traceback type so we can typecheck traceback objects */ -PyAPI_DATA(PyTypeObject) PyTraceBack_Type; -#define PyTraceBack_Check(v) Py_IS_TYPE(v, &PyTraceBack_Type) - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_TRACEBACK_H -# include "cpython/traceback.h" -# undef Py_CPYTHON_TRACEBACK_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_TRACEBACK_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/tracemalloc.h b/_Pre_Builds/_Python311_cpp/include/tracemalloc.h deleted file mode 100644 index bd14217..0000000 --- a/_Pre_Builds/_Python311_cpp/include/tracemalloc.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef Py_TRACEMALLOC_H -#define Py_TRACEMALLOC_H - -#ifndef Py_LIMITED_API -/* Track an allocated memory block in the tracemalloc module. - Return 0 on success, return -1 on error (failed to allocate memory to store - the trace). - - Return -2 if tracemalloc is disabled. - - If memory block is already tracked, update the existing trace. */ -PyAPI_FUNC(int) PyTraceMalloc_Track( - unsigned int domain, - uintptr_t ptr, - size_t size); - -/* Untrack an allocated memory block in the tracemalloc module. - Do nothing if the block was not tracked. - - Return -2 if tracemalloc is disabled, otherwise return 0. */ -PyAPI_FUNC(int) PyTraceMalloc_Untrack( - unsigned int domain, - uintptr_t ptr); - -/* Get the traceback where a memory block was allocated. - - Return a tuple of (filename: str, lineno: int) tuples. - - Return None if the tracemalloc module is disabled or if the memory block - is not tracked by tracemalloc. - - Raise an exception and return NULL on error. */ -PyAPI_FUNC(PyObject*) _PyTraceMalloc_GetTraceback( - unsigned int domain, - uintptr_t ptr); -#endif - -#endif /* !Py_TRACEMALLOC_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/tupleobject.h b/_Pre_Builds/_Python311_cpp/include/tupleobject.h deleted file mode 100644 index dc68e3f..0000000 --- a/_Pre_Builds/_Python311_cpp/include/tupleobject.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Tuple object interface */ - -#ifndef Py_TUPLEOBJECT_H -#define Py_TUPLEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* -Another generally useful object type is a tuple of object pointers. -For Python, this is an immutable type. C code can change the tuple items -(but not their number), and even use tuples as general-purpose arrays of -object references, but in general only brand new tuples should be mutated, -not ones that might already have been exposed to Python code. - -*** WARNING *** PyTuple_SetItem does not increment the new item's reference -count, but does decrement the reference count of the item it replaces, -if not nil. It does *decrement* the reference count if it is *not* -inserted in the tuple. Similarly, PyTuple_GetItem does not increment the -returned item's reference count. -*/ - -PyAPI_DATA(PyTypeObject) PyTuple_Type; -PyAPI_DATA(PyTypeObject) PyTupleIter_Type; - -#define PyTuple_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TUPLE_SUBCLASS) -#define PyTuple_CheckExact(op) Py_IS_TYPE(op, &PyTuple_Type) - -PyAPI_FUNC(PyObject *) PyTuple_New(Py_ssize_t size); -PyAPI_FUNC(Py_ssize_t) PyTuple_Size(PyObject *); -PyAPI_FUNC(PyObject *) PyTuple_GetItem(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyTuple_SetItem(PyObject *, Py_ssize_t, PyObject *); -PyAPI_FUNC(PyObject *) PyTuple_GetSlice(PyObject *, Py_ssize_t, Py_ssize_t); -PyAPI_FUNC(PyObject *) PyTuple_Pack(Py_ssize_t, ...); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_TUPLEOBJECT_H -# include "cpython/tupleobject.h" -# undef Py_CPYTHON_TUPLEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_TUPLEOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/typeslots.h b/_Pre_Builds/_Python311_cpp/include/typeslots.h deleted file mode 100644 index 506b055..0000000 --- a/_Pre_Builds/_Python311_cpp/include/typeslots.h +++ /dev/null @@ -1,88 +0,0 @@ -/* Do not renumber the file; these numbers are part of the stable ABI. */ -#define Py_bf_getbuffer 1 -#define Py_bf_releasebuffer 2 -#define Py_mp_ass_subscript 3 -#define Py_mp_length 4 -#define Py_mp_subscript 5 -#define Py_nb_absolute 6 -#define Py_nb_add 7 -#define Py_nb_and 8 -#define Py_nb_bool 9 -#define Py_nb_divmod 10 -#define Py_nb_float 11 -#define Py_nb_floor_divide 12 -#define Py_nb_index 13 -#define Py_nb_inplace_add 14 -#define Py_nb_inplace_and 15 -#define Py_nb_inplace_floor_divide 16 -#define Py_nb_inplace_lshift 17 -#define Py_nb_inplace_multiply 18 -#define Py_nb_inplace_or 19 -#define Py_nb_inplace_power 20 -#define Py_nb_inplace_remainder 21 -#define Py_nb_inplace_rshift 22 -#define Py_nb_inplace_subtract 23 -#define Py_nb_inplace_true_divide 24 -#define Py_nb_inplace_xor 25 -#define Py_nb_int 26 -#define Py_nb_invert 27 -#define Py_nb_lshift 28 -#define Py_nb_multiply 29 -#define Py_nb_negative 30 -#define Py_nb_or 31 -#define Py_nb_positive 32 -#define Py_nb_power 33 -#define Py_nb_remainder 34 -#define Py_nb_rshift 35 -#define Py_nb_subtract 36 -#define Py_nb_true_divide 37 -#define Py_nb_xor 38 -#define Py_sq_ass_item 39 -#define Py_sq_concat 40 -#define Py_sq_contains 41 -#define Py_sq_inplace_concat 42 -#define Py_sq_inplace_repeat 43 -#define Py_sq_item 44 -#define Py_sq_length 45 -#define Py_sq_repeat 46 -#define Py_tp_alloc 47 -#define Py_tp_base 48 -#define Py_tp_bases 49 -#define Py_tp_call 50 -#define Py_tp_clear 51 -#define Py_tp_dealloc 52 -#define Py_tp_del 53 -#define Py_tp_descr_get 54 -#define Py_tp_descr_set 55 -#define Py_tp_doc 56 -#define Py_tp_getattr 57 -#define Py_tp_getattro 58 -#define Py_tp_hash 59 -#define Py_tp_init 60 -#define Py_tp_is_gc 61 -#define Py_tp_iter 62 -#define Py_tp_iternext 63 -#define Py_tp_methods 64 -#define Py_tp_new 65 -#define Py_tp_repr 66 -#define Py_tp_richcompare 67 -#define Py_tp_setattr 68 -#define Py_tp_setattro 69 -#define Py_tp_str 70 -#define Py_tp_traverse 71 -#define Py_tp_members 72 -#define Py_tp_getset 73 -#define Py_tp_free 74 -#define Py_nb_matrix_multiply 75 -#define Py_nb_inplace_matrix_multiply 76 -#define Py_am_await 77 -#define Py_am_aiter 78 -#define Py_am_anext 79 -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -#define Py_tp_finalize 80 -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -/* New in 3.10 */ -#define Py_am_send 81 -#endif diff --git a/_Pre_Builds/_Python311_cpp/include/unicodeobject.h b/_Pre_Builds/_Python311_cpp/include/unicodeobject.h deleted file mode 100644 index 1d2f546..0000000 --- a/_Pre_Builds/_Python311_cpp/include/unicodeobject.h +++ /dev/null @@ -1,1049 +0,0 @@ -#ifndef Py_UNICODEOBJECT_H -#define Py_UNICODEOBJECT_H - -#include // va_list - -/* - -Unicode implementation based on original code by Fredrik Lundh, -modified by Marc-Andre Lemburg (mal@lemburg.com) according to the -Unicode Integration Proposal. (See -http://www.egenix.com/files/python/unicode-proposal.txt). - -Copyright (c) Corporation for National Research Initiatives. - - - Original header: - -------------------------------------------------------------------- - - * Yet another Unicode string type for Python. This type supports the - * 16-bit Basic Multilingual Plane (BMP) only. - * - * Written by Fredrik Lundh, January 1999. - * - * Copyright (c) 1999 by Secret Labs AB. - * Copyright (c) 1999 by Fredrik Lundh. - * - * fredrik@pythonware.com - * http://www.pythonware.com - * - * -------------------------------------------------------------------- - * This Unicode String Type is - * - * Copyright (c) 1999 by Secret Labs AB - * Copyright (c) 1999 by Fredrik Lundh - * - * By obtaining, using, and/or copying this software and/or its - * associated documentation, you agree that you have read, understood, - * and will comply with the following terms and conditions: - * - * Permission to use, copy, modify, and distribute this software and its - * associated documentation for any purpose and without fee is hereby - * granted, provided that the above copyright notice appears in all - * copies, and that both that copyright notice and this permission notice - * appear in supporting documentation, and that the name of Secret Labs - * AB or the author not be used in advertising or publicity pertaining to - * distribution of the software without specific, written prior - * permission. - * - * SECRET LABS AB AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO - * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND - * FITNESS. IN NO EVENT SHALL SECRET LABS AB OR THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT - * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - * -------------------------------------------------------------------- */ - -#include - -/* === Internal API ======================================================= */ - -/* --- Internal Unicode Format -------------------------------------------- */ - -/* Python 3.x requires unicode */ -#define Py_USING_UNICODE - -#ifndef SIZEOF_WCHAR_T -#error Must define SIZEOF_WCHAR_T -#endif - -#define Py_UNICODE_SIZE SIZEOF_WCHAR_T - -/* If wchar_t can be used for UCS-4 storage, set Py_UNICODE_WIDE. - Otherwise, Unicode strings are stored as UCS-2 (with limited support - for UTF-16) */ - -#if Py_UNICODE_SIZE >= 4 -#define Py_UNICODE_WIDE -#endif - -/* Set these flags if the platform has "wchar.h" and the - wchar_t type is a 16-bit unsigned type */ -/* #define HAVE_WCHAR_H */ -/* #define HAVE_USABLE_WCHAR_T */ - -/* If the compiler provides a wchar_t type we try to support it - through the interface functions PyUnicode_FromWideChar(), - PyUnicode_AsWideChar() and PyUnicode_AsWideCharString(). */ - -#ifdef HAVE_USABLE_WCHAR_T -# ifndef HAVE_WCHAR_H -# define HAVE_WCHAR_H -# endif -#endif - -#ifdef HAVE_WCHAR_H -# include -#endif - -/* Py_UCS4 and Py_UCS2 are typedefs for the respective - unicode representations. */ -typedef uint32_t Py_UCS4; -typedef uint16_t Py_UCS2; -typedef uint8_t Py_UCS1; - -#ifdef __cplusplus -extern "C" { -#endif - - -PyAPI_DATA(PyTypeObject) PyUnicode_Type; -PyAPI_DATA(PyTypeObject) PyUnicodeIter_Type; - -#define PyUnicode_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_UNICODE_SUBCLASS) -#define PyUnicode_CheckExact(op) Py_IS_TYPE(op, &PyUnicode_Type) - -/* --- Constants ---------------------------------------------------------- */ - -/* This Unicode character will be used as replacement character during - decoding if the errors argument is set to "replace". Note: the - Unicode character U+FFFD is the official REPLACEMENT CHARACTER in - Unicode 3.0. */ - -#define Py_UNICODE_REPLACEMENT_CHARACTER ((Py_UCS4) 0xFFFD) - -/* === Public API ========================================================= */ - -/* Similar to PyUnicode_FromUnicode(), but u points to UTF-8 encoded bytes */ -PyAPI_FUNC(PyObject*) PyUnicode_FromStringAndSize( - const char *u, /* UTF-8 encoded string */ - Py_ssize_t size /* size of buffer */ - ); - -/* Similar to PyUnicode_FromUnicode(), but u points to null-terminated - UTF-8 encoded bytes. The size is determined with strlen(). */ -PyAPI_FUNC(PyObject*) PyUnicode_FromString( - const char *u /* UTF-8 encoded string */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyUnicode_Substring( - PyObject *str, - Py_ssize_t start, - Py_ssize_t end); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Copy the string into a UCS4 buffer including the null character if copy_null - is set. Return NULL and raise an exception on error. Raise a SystemError if - the buffer is smaller than the string. Return buffer on success. - - buflen is the length of the buffer in (Py_UCS4) characters. */ -PyAPI_FUNC(Py_UCS4*) PyUnicode_AsUCS4( - PyObject *unicode, - Py_UCS4* buffer, - Py_ssize_t buflen, - int copy_null); - -/* Copy the string into a UCS4 buffer. A new buffer is allocated using - * PyMem_Malloc; if this fails, NULL is returned with a memory error - exception set. */ -PyAPI_FUNC(Py_UCS4*) PyUnicode_AsUCS4Copy(PyObject *unicode); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Get the length of the Unicode object. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_GetLength( - PyObject *unicode -); -#endif - -/* Get the number of Py_UNICODE units in the - string representation. */ - -Py_DEPRECATED(3.3) PyAPI_FUNC(Py_ssize_t) PyUnicode_GetSize( - PyObject *unicode /* Unicode object */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Read a character from the string. */ - -PyAPI_FUNC(Py_UCS4) PyUnicode_ReadChar( - PyObject *unicode, - Py_ssize_t index - ); - -/* Write a character to the string. The string must have been created through - PyUnicode_New, must not be shared, and must not have been hashed yet. - - Return 0 on success, -1 on error. */ - -PyAPI_FUNC(int) PyUnicode_WriteChar( - PyObject *unicode, - Py_ssize_t index, - Py_UCS4 character - ); -#endif - -/* Resize a Unicode object. The length is the number of characters, except - if the kind of the string is PyUnicode_WCHAR_KIND: in this case, the length - is the number of Py_UNICODE characters. - - *unicode is modified to point to the new (resized) object and 0 - returned on success. - - Try to resize the string in place (which is usually faster than allocating - a new string and copy characters), or create a new string. - - Error handling is implemented as follows: an exception is set, -1 - is returned and *unicode left untouched. - - WARNING: The function doesn't check string content, the result may not be a - string in canonical representation. */ - -PyAPI_FUNC(int) PyUnicode_Resize( - PyObject **unicode, /* Pointer to the Unicode object */ - Py_ssize_t length /* New length */ - ); - -/* Decode obj to a Unicode object. - - bytes, bytearray and other bytes-like objects are decoded according to the - given encoding and error handler. The encoding and error handler can be - NULL to have the interface use UTF-8 and "strict". - - All other objects (including Unicode objects) raise an exception. - - The API returns NULL in case of an error. The caller is responsible - for decref'ing the returned objects. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_FromEncodedObject( - PyObject *obj, /* Object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Copy an instance of a Unicode subtype to a new true Unicode object if - necessary. If obj is already a true Unicode object (not a subtype), return - the reference with *incremented* refcount. - - The API returns NULL in case of an error. The caller is responsible - for decref'ing the returned objects. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_FromObject( - PyObject *obj /* Object */ - ); - -PyAPI_FUNC(PyObject *) PyUnicode_FromFormatV( - const char *format, /* ASCII-encoded string */ - va_list vargs - ); -PyAPI_FUNC(PyObject *) PyUnicode_FromFormat( - const char *format, /* ASCII-encoded string */ - ... - ); - -PyAPI_FUNC(void) PyUnicode_InternInPlace(PyObject **); -PyAPI_FUNC(PyObject *) PyUnicode_InternFromString( - const char *u /* UTF-8 encoded string */ - ); - -// PyUnicode_InternImmortal() is deprecated since Python 3.10 -// and will be removed in Python 3.12. Use PyUnicode_InternInPlace() instead. -Py_DEPRECATED(3.10) PyAPI_FUNC(void) PyUnicode_InternImmortal(PyObject **); - -/* --- wchar_t support for platforms which support it --------------------- */ - -#ifdef HAVE_WCHAR_H - -/* Create a Unicode Object from the wchar_t buffer w of the given - size. - - The buffer is copied into the new object. */ - -PyAPI_FUNC(PyObject*) PyUnicode_FromWideChar( - const wchar_t *w, /* wchar_t buffer */ - Py_ssize_t size /* size of buffer */ - ); - -/* Copies the Unicode Object contents into the wchar_t buffer w. At - most size wchar_t characters are copied. - - Note that the resulting wchar_t string may or may not be - 0-terminated. It is the responsibility of the caller to make sure - that the wchar_t string is 0-terminated in case this is required by - the application. - - Returns the number of wchar_t characters copied (excluding a - possibly trailing 0-termination character) or -1 in case of an - error. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_AsWideChar( - PyObject *unicode, /* Unicode object */ - wchar_t *w, /* wchar_t buffer */ - Py_ssize_t size /* size of buffer */ - ); - -/* Convert the Unicode object to a wide character string. The output string - always ends with a nul character. If size is not NULL, write the number of - wide characters (excluding the null character) into *size. - - Returns a buffer allocated by PyMem_Malloc() (use PyMem_Free() to free it) - on success. On error, returns NULL, *size is undefined and raises a - MemoryError. */ - -PyAPI_FUNC(wchar_t*) PyUnicode_AsWideCharString( - PyObject *unicode, /* Unicode object */ - Py_ssize_t *size /* number of characters of the result */ - ); - -#endif - -/* --- Unicode ordinals --------------------------------------------------- */ - -/* Create a Unicode Object from the given Unicode code point ordinal. - - The ordinal must be in range(0x110000). A ValueError is - raised in case it is not. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_FromOrdinal(int ordinal); - -/* === Builtin Codecs ===================================================== - - Many of these APIs take two arguments encoding and errors. These - parameters encoding and errors have the same semantics as the ones - of the builtin str() API. - - Setting encoding to NULL causes the default encoding (UTF-8) to be used. - - Error handling is set by errors which may also be set to NULL - meaning to use the default handling defined for the codec. Default - error handling for all builtin codecs is "strict" (ValueErrors are - raised). - - The codecs all use a similar interface. Only deviation from the - generic ones are documented. - -*/ - -/* --- Manage the default encoding ---------------------------------------- */ - -/* Returns "utf-8". */ -PyAPI_FUNC(const char*) PyUnicode_GetDefaultEncoding(void); - -/* --- Generic Codecs ----------------------------------------------------- */ - -/* Create a Unicode object by decoding the encoded string s of the - given size. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Decode( - const char *s, /* encoded string */ - Py_ssize_t size, /* size of buffer */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Decode a Unicode object unicode and return the result as Python - object. - - This API is DEPRECATED. The only supported standard encoding is rot13. - Use PyCodec_Decode() to decode with rot13 and non-standard codecs - that decode from str. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsDecodedObject( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Decode a Unicode object unicode and return the result as Unicode - object. - - This API is DEPRECATED. The only supported standard encoding is rot13. - Use PyCodec_Decode() to decode with rot13 and non-standard codecs - that decode from str to str. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsDecodedUnicode( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Encodes a Unicode object and returns the result as Python - object. - - This API is DEPRECATED. It is superseded by PyUnicode_AsEncodedString() - since all standard encodings (except rot13) encode str to bytes. - Use PyCodec_Encode() for encoding with rot13 and non-standard codecs - that encode form str to non-bytes. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsEncodedObject( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Encodes a Unicode object and returns the result as Python string - object. */ - -PyAPI_FUNC(PyObject*) PyUnicode_AsEncodedString( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Encodes a Unicode object and returns the result as Unicode - object. - - This API is DEPRECATED. The only supported standard encodings is rot13. - Use PyCodec_Encode() to encode with rot13 and non-standard codecs - that encode from str to str. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsEncodedUnicode( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Build an encoding map. */ - -PyAPI_FUNC(PyObject*) PyUnicode_BuildEncodingMap( - PyObject* string /* 256 character map */ - ); - -/* --- UTF-7 Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF7( - const char *string, /* UTF-7 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF7Stateful( - const char *string, /* UTF-7 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -/* --- UTF-8 Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF8( - const char *string, /* UTF-8 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF8Stateful( - const char *string, /* UTF-8 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsUTF8String( - PyObject *unicode /* Unicode object */ - ); - -/* Returns a pointer to the default encoding (UTF-8) of the - Unicode object unicode and the size of the encoded representation - in bytes stored in *size. - - In case of an error, no *size is set. - - This function caches the UTF-8 encoded string in the unicodeobject - and subsequent calls will return the same string. The memory is released - when the unicodeobject is deallocated. -*/ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -PyAPI_FUNC(const char *) PyUnicode_AsUTF8AndSize( - PyObject *unicode, - Py_ssize_t *size); -#endif - -/* --- UTF-32 Codecs ------------------------------------------------------ */ - -/* Decodes length bytes from a UTF-32 encoded buffer string and returns - the corresponding Unicode object. - - errors (if non-NULL) defines the error handling. It defaults - to "strict". - - If byteorder is non-NULL, the decoder starts decoding using the - given byte order: - - *byteorder == -1: little endian - *byteorder == 0: native order - *byteorder == 1: big endian - - In native mode, the first four bytes of the stream are checked for a - BOM mark. If found, the BOM mark is analysed, the byte order - adjusted and the BOM skipped. In the other modes, no BOM mark - interpretation is done. After completion, *byteorder is set to the - current byte order at the end of input data. - - If byteorder is NULL, the codec starts in native order mode. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF32( - const char *string, /* UTF-32 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF32Stateful( - const char *string, /* UTF-32 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder, /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -/* Returns a Python string using the UTF-32 encoding in native byte - order. The string always starts with a BOM mark. */ - -PyAPI_FUNC(PyObject*) PyUnicode_AsUTF32String( - PyObject *unicode /* Unicode object */ - ); - -/* Returns a Python string object holding the UTF-32 encoded value of - the Unicode data. - - If byteorder is not 0, output is written according to the following - byte order: - - byteorder == -1: little endian - byteorder == 0: native byte order (writes a BOM mark) - byteorder == 1: big endian - - If byteorder is 0, the output string will always start with the - Unicode BOM mark (U+FEFF). In the other two modes, no BOM mark is - prepended. - -*/ - -/* --- UTF-16 Codecs ------------------------------------------------------ */ - -/* Decodes length bytes from a UTF-16 encoded buffer string and returns - the corresponding Unicode object. - - errors (if non-NULL) defines the error handling. It defaults - to "strict". - - If byteorder is non-NULL, the decoder starts decoding using the - given byte order: - - *byteorder == -1: little endian - *byteorder == 0: native order - *byteorder == 1: big endian - - In native mode, the first two bytes of the stream are checked for a - BOM mark. If found, the BOM mark is analysed, the byte order - adjusted and the BOM skipped. In the other modes, no BOM mark - interpretation is done. After completion, *byteorder is set to the - current byte order at the end of input data. - - If byteorder is NULL, the codec starts in native order mode. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF16( - const char *string, /* UTF-16 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF16Stateful( - const char *string, /* UTF-16 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder, /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -/* Returns a Python string using the UTF-16 encoding in native byte - order. The string always starts with a BOM mark. */ - -PyAPI_FUNC(PyObject*) PyUnicode_AsUTF16String( - PyObject *unicode /* Unicode object */ - ); - -/* --- Unicode-Escape Codecs ---------------------------------------------- */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUnicodeEscape( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsUnicodeEscapeString( - PyObject *unicode /* Unicode object */ - ); - -/* --- Raw-Unicode-Escape Codecs ------------------------------------------ */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeRawUnicodeEscape( - const char *string, /* Raw-Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsRawUnicodeEscapeString( - PyObject *unicode /* Unicode object */ - ); - -/* --- Latin-1 Codecs ----------------------------------------------------- - - Note: Latin-1 corresponds to the first 256 Unicode ordinals. */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeLatin1( - const char *string, /* Latin-1 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsLatin1String( - PyObject *unicode /* Unicode object */ - ); - -/* --- ASCII Codecs ------------------------------------------------------- - - Only 7-bit ASCII data is excepted. All other codes generate errors. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeASCII( - const char *string, /* ASCII encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsASCIIString( - PyObject *unicode /* Unicode object */ - ); - -/* --- Character Map Codecs ----------------------------------------------- - - This codec uses mappings to encode and decode characters. - - Decoding mappings must map byte ordinals (integers in the range from 0 to - 255) to Unicode strings, integers (which are then interpreted as Unicode - ordinals) or None. Unmapped data bytes (ones which cause a LookupError) - as well as mapped to None, 0xFFFE or '\ufffe' are treated as "undefined - mapping" and cause an error. - - Encoding mappings must map Unicode ordinal integers to bytes objects, - integers in the range from 0 to 255 or None. Unmapped character - ordinals (ones which cause a LookupError) as well as mapped to - None are treated as "undefined mapping" and cause an error. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeCharmap( - const char *string, /* Encoded string */ - Py_ssize_t length, /* size of string */ - PyObject *mapping, /* decoding mapping */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsCharmapString( - PyObject *unicode, /* Unicode object */ - PyObject *mapping /* encoding mapping */ - ); - -/* --- MBCS codecs for Windows -------------------------------------------- */ - -#ifdef MS_WINDOWS -PyAPI_FUNC(PyObject*) PyUnicode_DecodeMBCS( - const char *string, /* MBCS encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeMBCSStateful( - const char *string, /* MBCS encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyUnicode_DecodeCodePageStateful( - int code_page, /* code page number */ - const char *string, /* encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); -#endif - -PyAPI_FUNC(PyObject*) PyUnicode_AsMBCSString( - PyObject *unicode /* Unicode object */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyUnicode_EncodeCodePage( - int code_page, /* code page number */ - PyObject *unicode, /* Unicode object */ - const char *errors /* error handling */ - ); -#endif - -#endif /* MS_WINDOWS */ - -/* --- Locale encoding --------------------------------------------------- */ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Decode a string from the current locale encoding. The decoder is strict if - *surrogateescape* is equal to zero, otherwise it uses the 'surrogateescape' - error handler (PEP 383) to escape undecodable bytes. If a byte sequence can - be decoded as a surrogate character and *surrogateescape* is not equal to - zero, the byte sequence is escaped using the 'surrogateescape' error handler - instead of being decoded. *str* must end with a null character but cannot - contain embedded null characters. */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeLocaleAndSize( - const char *str, - Py_ssize_t len, - const char *errors); - -/* Similar to PyUnicode_DecodeLocaleAndSize(), but compute the string - length using strlen(). */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeLocale( - const char *str, - const char *errors); - -/* Encode a Unicode object to the current locale encoding. The encoder is - strict is *surrogateescape* is equal to zero, otherwise the - "surrogateescape" error handler is used. Return a bytes object. The string - cannot contain embedded null characters. */ - -PyAPI_FUNC(PyObject*) PyUnicode_EncodeLocale( - PyObject *unicode, - const char *errors - ); -#endif - -/* --- File system encoding ---------------------------------------------- */ - -/* ParseTuple converter: encode str objects to bytes using - PyUnicode_EncodeFSDefault(); bytes objects are output as-is. */ - -PyAPI_FUNC(int) PyUnicode_FSConverter(PyObject*, void*); - -/* ParseTuple converter: decode bytes objects to unicode using - PyUnicode_DecodeFSDefaultAndSize(); str objects are output as-is. */ - -PyAPI_FUNC(int) PyUnicode_FSDecoder(PyObject*, void*); - -/* Decode a null-terminated string using Py_FileSystemDefaultEncoding - and the "surrogateescape" error handler. - - If Py_FileSystemDefaultEncoding is not set, fall back to the locale - encoding. - - Use PyUnicode_DecodeFSDefaultAndSize() if the string length is known. -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeFSDefault( - const char *s /* encoded string */ - ); - -/* Decode a string using Py_FileSystemDefaultEncoding - and the "surrogateescape" error handler. - - If Py_FileSystemDefaultEncoding is not set, fall back to the locale - encoding. -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeFSDefaultAndSize( - const char *s, /* encoded string */ - Py_ssize_t size /* size */ - ); - -/* Encode a Unicode object to Py_FileSystemDefaultEncoding with the - "surrogateescape" error handler, and return bytes. - - If Py_FileSystemDefaultEncoding is not set, fall back to the locale - encoding. -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_EncodeFSDefault( - PyObject *unicode - ); - -/* --- Methods & Slots ---------------------------------------------------- - - These are capable of handling Unicode objects and strings on input - (we refer to them as strings in the descriptions) and return - Unicode objects or integers as appropriate. */ - -/* Concat two strings giving a new Unicode string. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Concat( - PyObject *left, /* Left string */ - PyObject *right /* Right string */ - ); - -/* Concat two strings and put the result in *pleft - (sets *pleft to NULL on error) */ - -PyAPI_FUNC(void) PyUnicode_Append( - PyObject **pleft, /* Pointer to left string */ - PyObject *right /* Right string */ - ); - -/* Concat two strings, put the result in *pleft and drop the right object - (sets *pleft to NULL on error) */ - -PyAPI_FUNC(void) PyUnicode_AppendAndDel( - PyObject **pleft, /* Pointer to left string */ - PyObject *right /* Right string */ - ); - -/* Split a string giving a list of Unicode strings. - - If sep is NULL, splitting will be done at all whitespace - substrings. Otherwise, splits occur at the given separator. - - At most maxsplit splits will be done. If negative, no limit is set. - - Separators are not included in the resulting list. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_Split( - PyObject *s, /* String to split */ - PyObject *sep, /* String separator */ - Py_ssize_t maxsplit /* Maxsplit count */ - ); - -/* Dito, but split at line breaks. - - CRLF is considered to be one line break. Line breaks are not - included in the resulting list. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Splitlines( - PyObject *s, /* String to split */ - int keepends /* If true, line end markers are included */ - ); - -/* Partition a string using a given separator. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Partition( - PyObject *s, /* String to partition */ - PyObject *sep /* String separator */ - ); - -/* Partition a string using a given separator, searching from the end of the - string. */ - -PyAPI_FUNC(PyObject*) PyUnicode_RPartition( - PyObject *s, /* String to partition */ - PyObject *sep /* String separator */ - ); - -/* Split a string giving a list of Unicode strings. - - If sep is NULL, splitting will be done at all whitespace - substrings. Otherwise, splits occur at the given separator. - - At most maxsplit splits will be done. But unlike PyUnicode_Split - PyUnicode_RSplit splits from the end of the string. If negative, - no limit is set. - - Separators are not included in the resulting list. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_RSplit( - PyObject *s, /* String to split */ - PyObject *sep, /* String separator */ - Py_ssize_t maxsplit /* Maxsplit count */ - ); - -/* Translate a string by applying a character mapping table to it and - return the resulting Unicode object. - - The mapping table must map Unicode ordinal integers to Unicode strings, - Unicode ordinal integers or None (causing deletion of the character). - - Mapping tables may be dictionaries or sequences. Unmapped character - ordinals (ones which cause a LookupError) are left untouched and - are copied as-is. - -*/ - -PyAPI_FUNC(PyObject *) PyUnicode_Translate( - PyObject *str, /* String */ - PyObject *table, /* Translate table */ - const char *errors /* error handling */ - ); - -/* Join a sequence of strings using the given separator and return - the resulting Unicode string. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Join( - PyObject *separator, /* Separator string */ - PyObject *seq /* Sequence object */ - ); - -/* Return 1 if substr matches str[start:end] at the given tail end, 0 - otherwise. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_Tailmatch( - PyObject *str, /* String */ - PyObject *substr, /* Prefix or Suffix string */ - Py_ssize_t start, /* Start index */ - Py_ssize_t end, /* Stop index */ - int direction /* Tail end: -1 prefix, +1 suffix */ - ); - -/* Return the first position of substr in str[start:end] using the - given search direction or -1 if not found. -2 is returned in case - an error occurred and an exception is set. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_Find( - PyObject *str, /* String */ - PyObject *substr, /* Substring to find */ - Py_ssize_t start, /* Start index */ - Py_ssize_t end, /* Stop index */ - int direction /* Find direction: +1 forward, -1 backward */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Like PyUnicode_Find, but search for single character only. */ -PyAPI_FUNC(Py_ssize_t) PyUnicode_FindChar( - PyObject *str, - Py_UCS4 ch, - Py_ssize_t start, - Py_ssize_t end, - int direction - ); -#endif - -/* Count the number of occurrences of substr in str[start:end]. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_Count( - PyObject *str, /* String */ - PyObject *substr, /* Substring to count */ - Py_ssize_t start, /* Start index */ - Py_ssize_t end /* Stop index */ - ); - -/* Replace at most maxcount occurrences of substr in str with replstr - and return the resulting Unicode object. */ - -PyAPI_FUNC(PyObject *) PyUnicode_Replace( - PyObject *str, /* String */ - PyObject *substr, /* Substring to find */ - PyObject *replstr, /* Substring to replace */ - Py_ssize_t maxcount /* Max. number of replacements to apply; - -1 = all */ - ); - -/* Compare two strings and return -1, 0, 1 for less than, equal, - greater than resp. - Raise an exception and return -1 on error. */ - -PyAPI_FUNC(int) PyUnicode_Compare( - PyObject *left, /* Left string */ - PyObject *right /* Right string */ - ); - -/* Compare a Unicode object with C string and return -1, 0, 1 for less than, - equal, and greater than, respectively. It is best to pass only - ASCII-encoded strings, but the function interprets the input string as - ISO-8859-1 if it contains non-ASCII characters. - This function does not raise exceptions. */ - -PyAPI_FUNC(int) PyUnicode_CompareWithASCIIString( - PyObject *left, - const char *right /* ASCII-encoded string */ - ); - -/* Rich compare two strings and return one of the following: - - - NULL in case an exception was raised - - Py_True or Py_False for successful comparisons - - Py_NotImplemented in case the type combination is unknown - - Possible values for op: - - Py_GT, Py_GE, Py_EQ, Py_NE, Py_LT, Py_LE - -*/ - -PyAPI_FUNC(PyObject *) PyUnicode_RichCompare( - PyObject *left, /* Left string */ - PyObject *right, /* Right string */ - int op /* Operation: Py_EQ, Py_NE, Py_GT, etc. */ - ); - -/* Apply an argument tuple or dictionary to a format string and return - the resulting Unicode string. */ - -PyAPI_FUNC(PyObject *) PyUnicode_Format( - PyObject *format, /* Format string */ - PyObject *args /* Argument tuple or dictionary */ - ); - -/* Checks whether element is contained in container and return 1/0 - accordingly. - - element has to coerce to a one element Unicode string. -1 is - returned in case of an error. */ - -PyAPI_FUNC(int) PyUnicode_Contains( - PyObject *container, /* Container string */ - PyObject *element /* Element string */ - ); - -/* Checks whether argument is a valid identifier. */ - -PyAPI_FUNC(int) PyUnicode_IsIdentifier(PyObject *s); - -/* === Characters Type APIs =============================================== */ - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_UNICODEOBJECT_H -# include "cpython/unicodeobject.h" -# undef Py_CPYTHON_UNICODEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_UNICODEOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/include/warnings.h b/_Pre_Builds/_Python311_cpp/include/warnings.h deleted file mode 100644 index 18ac154..0000000 --- a/_Pre_Builds/_Python311_cpp/include/warnings.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef Py_WARNINGS_H -#define Py_WARNINGS_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(int) PyErr_WarnEx( - PyObject *category, - const char *message, /* UTF-8 encoded string */ - Py_ssize_t stack_level); - -PyAPI_FUNC(int) PyErr_WarnFormat( - PyObject *category, - Py_ssize_t stack_level, - const char *format, /* ASCII-encoded string */ - ...); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -/* Emit a ResourceWarning warning */ -PyAPI_FUNC(int) PyErr_ResourceWarning( - PyObject *source, - Py_ssize_t stack_level, - const char *format, /* ASCII-encoded string */ - ...); -#endif - -PyAPI_FUNC(int) PyErr_WarnExplicit( - PyObject *category, - const char *message, /* UTF-8 encoded string */ - const char *filename, /* decoded from the filesystem encoding */ - int lineno, - const char *module, /* UTF-8 encoded string */ - PyObject *registry); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_WARNINGS_H -# include "cpython/warnings.h" -# undef Py_CPYTHON_WARNINGS_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_WARNINGS_H */ - diff --git a/_Pre_Builds/_Python311_cpp/include/weakrefobject.h b/_Pre_Builds/_Python311_cpp/include/weakrefobject.h deleted file mode 100644 index f071e9c..0000000 --- a/_Pre_Builds/_Python311_cpp/include/weakrefobject.h +++ /dev/null @@ -1,42 +0,0 @@ -/* Weak references objects for Python. */ - -#ifndef Py_WEAKREFOBJECT_H -#define Py_WEAKREFOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct _PyWeakReference PyWeakReference; - -PyAPI_DATA(PyTypeObject) _PyWeakref_RefType; -PyAPI_DATA(PyTypeObject) _PyWeakref_ProxyType; -PyAPI_DATA(PyTypeObject) _PyWeakref_CallableProxyType; - -#define PyWeakref_CheckRef(op) PyObject_TypeCheck(op, &_PyWeakref_RefType) -#define PyWeakref_CheckRefExact(op) \ - Py_IS_TYPE(op, &_PyWeakref_RefType) -#define PyWeakref_CheckProxy(op) \ - (Py_IS_TYPE(op, &_PyWeakref_ProxyType) || \ - Py_IS_TYPE(op, &_PyWeakref_CallableProxyType)) - -#define PyWeakref_Check(op) \ - (PyWeakref_CheckRef(op) || PyWeakref_CheckProxy(op)) - - -PyAPI_FUNC(PyObject *) PyWeakref_NewRef(PyObject *ob, - PyObject *callback); -PyAPI_FUNC(PyObject *) PyWeakref_NewProxy(PyObject *ob, - PyObject *callback); -PyAPI_FUNC(PyObject *) PyWeakref_GetObject(PyObject *ref); - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_WEAKREFOBJECT_H -# include "cpython/weakrefobject.h" -# undef Py_CPYTHON_WEAKREFOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_WEAKREFOBJECT_H */ diff --git a/_Pre_Builds/_Python311_cpp/libs/_tkinter.lib b/_Pre_Builds/_Python311_cpp/libs/_tkinter.lib deleted file mode 100644 index 5ae032c..0000000 Binary files a/_Pre_Builds/_Python311_cpp/libs/_tkinter.lib and /dev/null differ diff --git a/_Pre_Builds/_Python311_cpp/libs/python3.lib b/_Pre_Builds/_Python311_cpp/libs/python3.lib deleted file mode 100644 index 05127a0..0000000 Binary files a/_Pre_Builds/_Python311_cpp/libs/python3.lib and /dev/null differ diff --git a/_Pre_Builds/_Python311_cpp/libs/python311.lib b/_Pre_Builds/_Python311_cpp/libs/python311.lib deleted file mode 100644 index f52acb3..0000000 Binary files a/_Pre_Builds/_Python311_cpp/libs/python311.lib and /dev/null differ diff --git a/_Pre_Builds/_Python312_cpp/include/Python.h b/_Pre_Builds/_Python312_cpp/include/Python.h deleted file mode 100644 index 52a7aac..0000000 --- a/_Pre_Builds/_Python312_cpp/include/Python.h +++ /dev/null @@ -1,109 +0,0 @@ -// Entry point of the Python C API. -// C extensions should only #include , and not include directly -// the other Python header files included by . - -#ifndef Py_PYTHON_H -#define Py_PYTHON_H - -// Since this is a "meta-include" file, no #ifdef __cplusplus / extern "C" { - -// Include Python header files -#include "patchlevel.h" -#include "pyconfig.h" -#include "pymacconfig.h" - -#if defined(__sgi) && !defined(_SGI_MP_SOURCE) -# define _SGI_MP_SOURCE -#endif - -// stdlib.h, stdio.h, errno.h and string.h headers are not used by Python -// headers, but kept for backward compatibility. They are excluded from the -// limited C API of Python 3.11. -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# include -# include // FILE* -# include // errno -# include // memcpy() -#endif -#ifndef MS_WINDOWS -# include -#endif -#ifdef HAVE_STDDEF_H -# include // size_t -#endif - -#include // assert() -#include // wchar_t - -#include "pyport.h" -#include "pymacro.h" -#include "pymath.h" -#include "pymem.h" -#include "pytypedefs.h" -#include "pybuffer.h" -#include "object.h" -#include "objimpl.h" -#include "typeslots.h" -#include "pyhash.h" -#include "cpython/pydebug.h" -#include "bytearrayobject.h" -#include "bytesobject.h" -#include "unicodeobject.h" -#include "longobject.h" -#include "cpython/longintrepr.h" -#include "boolobject.h" -#include "floatobject.h" -#include "complexobject.h" -#include "rangeobject.h" -#include "memoryobject.h" -#include "tupleobject.h" -#include "listobject.h" -#include "dictobject.h" -#include "cpython/odictobject.h" -#include "enumobject.h" -#include "setobject.h" -#include "methodobject.h" -#include "moduleobject.h" -#include "cpython/funcobject.h" -#include "cpython/classobject.h" -#include "fileobject.h" -#include "pycapsule.h" -#include "cpython/code.h" -#include "pyframe.h" -#include "traceback.h" -#include "sliceobject.h" -#include "cpython/cellobject.h" -#include "iterobject.h" -#include "cpython/initconfig.h" -#include "pystate.h" -#include "cpython/genobject.h" -#include "descrobject.h" -#include "genericaliasobject.h" -#include "warnings.h" -#include "weakrefobject.h" -#include "structseq.h" -#include "cpython/picklebufobject.h" -#include "cpython/pytime.h" -#include "codecs.h" -#include "pyerrors.h" -#include "pythread.h" -#include "cpython/context.h" -#include "modsupport.h" -#include "compile.h" -#include "pythonrun.h" -#include "pylifecycle.h" -#include "ceval.h" -#include "sysmodule.h" -#include "osmodule.h" -#include "intrcheck.h" -#include "import.h" -#include "abstract.h" -#include "bltinmodule.h" -#include "cpython/pyctype.h" -#include "pystrtod.h" -#include "pystrcmp.h" -#include "fileutils.h" -#include "cpython/pyfpe.h" -#include "tracemalloc.h" - -#endif /* !Py_PYTHON_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/README.rst b/_Pre_Builds/_Python312_cpp/include/README.rst deleted file mode 100644 index 531f096..0000000 --- a/_Pre_Builds/_Python312_cpp/include/README.rst +++ /dev/null @@ -1,14 +0,0 @@ -The Python C API -================ - -The C API is divided into these sections: - -1. ``Include/``: Limited API -2. ``Include/cpython/``: CPython implementation details -3. ``Include/cpython/``, names with the ``PyUnstable_`` prefix: API that can - change between minor releases -4. ``Include/internal/``, and any name with ``_`` prefix: The internal API - -Information on changing the C API is available `in the developer guide`_ - -.. _in the developer guide: https://devguide.python.org/c-api/ diff --git a/_Pre_Builds/_Python312_cpp/include/abstract.h b/_Pre_Builds/_Python312_cpp/include/abstract.h deleted file mode 100644 index 064b030..0000000 --- a/_Pre_Builds/_Python312_cpp/include/abstract.h +++ /dev/null @@ -1,899 +0,0 @@ -/* Abstract Object Interface (many thanks to Jim Fulton) */ - -#ifndef Py_ABSTRACTOBJECT_H -#define Py_ABSTRACTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* === Object Protocol ================================================== */ - -/* Implemented elsewhere: - - int PyObject_Print(PyObject *o, FILE *fp, int flags); - - Print an object 'o' on file 'fp'. Returns -1 on error. The flags argument - is used to enable certain printing options. The only option currently - supported is Py_PRINT_RAW. By default (flags=0), PyObject_Print() formats - the object by calling PyObject_Repr(). If flags equals to Py_PRINT_RAW, it - formats the object by calling PyObject_Str(). */ - - -/* Implemented elsewhere: - - int PyObject_HasAttrString(PyObject *o, const char *attr_name); - - Returns 1 if object 'o' has the attribute attr_name, and 0 otherwise. - - This is equivalent to the Python expression: hasattr(o,attr_name). - - This function always succeeds. */ - - -/* Implemented elsewhere: - - PyObject* PyObject_GetAttrString(PyObject *o, const char *attr_name); - - Retrieve an attributed named attr_name form object o. - Returns the attribute value on success, or NULL on failure. - - This is the equivalent of the Python expression: o.attr_name. */ - - -/* Implemented elsewhere: - - int PyObject_HasAttr(PyObject *o, PyObject *attr_name); - - Returns 1 if o has the attribute attr_name, and 0 otherwise. - - This is equivalent to the Python expression: hasattr(o,attr_name). - - This function always succeeds. */ - -/* Implemented elsewhere: - - PyObject* PyObject_GetAttr(PyObject *o, PyObject *attr_name); - - Retrieve an attributed named 'attr_name' form object 'o'. - Returns the attribute value on success, or NULL on failure. - - This is the equivalent of the Python expression: o.attr_name. */ - - -/* Implemented elsewhere: - - int PyObject_SetAttrString(PyObject *o, const char *attr_name, PyObject *v); - - Set the value of the attribute named attr_name, for object 'o', - to the value 'v'. Raise an exception and return -1 on failure; return 0 on - success. - - This is the equivalent of the Python statement o.attr_name=v. */ - - -/* Implemented elsewhere: - - int PyObject_SetAttr(PyObject *o, PyObject *attr_name, PyObject *v); - - Set the value of the attribute named attr_name, for object 'o', to the value - 'v'. an exception and return -1 on failure; return 0 on success. - - This is the equivalent of the Python statement o.attr_name=v. */ - -/* Implemented as a macro: - - int PyObject_DelAttrString(PyObject *o, const char *attr_name); - - Delete attribute named attr_name, for object o. Returns - -1 on failure. - - This is the equivalent of the Python statement: del o.attr_name. */ -#define PyObject_DelAttrString(O, A) PyObject_SetAttrString((O), (A), NULL) - - -/* Implemented as a macro: - - int PyObject_DelAttr(PyObject *o, PyObject *attr_name); - - Delete attribute named attr_name, for object o. Returns -1 - on failure. This is the equivalent of the Python - statement: del o.attr_name. */ -#define PyObject_DelAttr(O, A) PyObject_SetAttr((O), (A), NULL) - - -/* Implemented elsewhere: - - PyObject *PyObject_Repr(PyObject *o); - - Compute the string representation of object 'o'. Returns the - string representation on success, NULL on failure. - - This is the equivalent of the Python expression: repr(o). - - Called by the repr() built-in function. */ - - -/* Implemented elsewhere: - - PyObject *PyObject_Str(PyObject *o); - - Compute the string representation of object, o. Returns the - string representation on success, NULL on failure. - - This is the equivalent of the Python expression: str(o). - - Called by the str() and print() built-in functions. */ - - -/* Declared elsewhere - - PyAPI_FUNC(int) PyCallable_Check(PyObject *o); - - Determine if the object, o, is callable. Return 1 if the object is callable - and 0 otherwise. - - This function always succeeds. */ - - -#ifdef PY_SSIZE_T_CLEAN -# define PyObject_CallFunction _PyObject_CallFunction_SizeT -# define PyObject_CallMethod _PyObject_CallMethod_SizeT -#endif - - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* Call a callable Python object without any arguments */ -PyAPI_FUNC(PyObject *) PyObject_CallNoArgs(PyObject *func); -#endif - - -/* Call a callable Python object 'callable' with arguments given by the - tuple 'args' and keywords arguments given by the dictionary 'kwargs'. - - 'args' must not be NULL, use an empty tuple if no arguments are - needed. If no named arguments are needed, 'kwargs' can be NULL. - - This is the equivalent of the Python expression: - callable(*args, **kwargs). */ -PyAPI_FUNC(PyObject *) PyObject_Call(PyObject *callable, - PyObject *args, PyObject *kwargs); - - -/* Call a callable Python object 'callable', with arguments given by the - tuple 'args'. If no arguments are needed, then 'args' can be NULL. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - callable(*args). */ -PyAPI_FUNC(PyObject *) PyObject_CallObject(PyObject *callable, - PyObject *args); - -/* Call a callable Python object, callable, with a variable number of C - arguments. The C arguments are described using a mkvalue-style format - string. - - The format may be NULL, indicating that no arguments are provided. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - callable(arg1, arg2, ...). */ -PyAPI_FUNC(PyObject *) PyObject_CallFunction(PyObject *callable, - const char *format, ...); - -/* Call the method named 'name' of object 'obj' with a variable number of - C arguments. The C arguments are described by a mkvalue format string. - - The format can be NULL, indicating that no arguments are provided. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - obj.name(arg1, arg2, ...). */ -PyAPI_FUNC(PyObject *) PyObject_CallMethod(PyObject *obj, - const char *name, - const char *format, ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallFunction_SizeT(PyObject *callable, - const char *format, - ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallMethod_SizeT(PyObject *obj, - const char *name, - const char *format, - ...); - -/* Call a callable Python object 'callable' with a variable number of C - arguments. The C arguments are provided as PyObject* values, terminated - by a NULL. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: - callable(arg1, arg2, ...). */ -PyAPI_FUNC(PyObject *) PyObject_CallFunctionObjArgs(PyObject *callable, - ...); - -/* Call the method named 'name' of object 'obj' with a variable number of - C arguments. The C arguments are provided as PyObject* values, terminated - by NULL. - - Returns the result of the call on success, or NULL on failure. - - This is the equivalent of the Python expression: obj.name(*args). */ - -PyAPI_FUNC(PyObject *) PyObject_CallMethodObjArgs( - PyObject *obj, - PyObject *name, - ...); - -/* Given a vectorcall nargsf argument, return the actual number of arguments. - * (For use outside the limited API, this is re-defined as a static inline - * function in cpython/abstract.h) - */ -PyAPI_FUNC(Py_ssize_t) PyVectorcall_NARGS(size_t nargsf); - -/* Call "callable" (which must support vectorcall) with positional arguments - "tuple" and keyword arguments "dict". "dict" may also be NULL */ -PyAPI_FUNC(PyObject *) PyVectorcall_Call(PyObject *callable, PyObject *tuple, PyObject *dict); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030C0000 -#define PY_VECTORCALL_ARGUMENTS_OFFSET \ - (_Py_STATIC_CAST(size_t, 1) << (8 * sizeof(size_t) - 1)) - -/* Perform a PEP 590-style vector call on 'callable' */ -PyAPI_FUNC(PyObject *) PyObject_Vectorcall( - PyObject *callable, - PyObject *const *args, - size_t nargsf, - PyObject *kwnames); - -/* Call the method 'name' on args[0] with arguments in args[1..nargsf-1]. */ -PyAPI_FUNC(PyObject *) PyObject_VectorcallMethod( - PyObject *name, PyObject *const *args, - size_t nargsf, PyObject *kwnames); -#endif - -/* Implemented elsewhere: - - Py_hash_t PyObject_Hash(PyObject *o); - - Compute and return the hash, hash_value, of an object, o. On - failure, return -1. - - This is the equivalent of the Python expression: hash(o). */ - - -/* Implemented elsewhere: - - int PyObject_IsTrue(PyObject *o); - - Returns 1 if the object, o, is considered to be true, 0 if o is - considered to be false and -1 on failure. - - This is equivalent to the Python expression: not not o. */ - - -/* Implemented elsewhere: - - int PyObject_Not(PyObject *o); - - Returns 0 if the object, o, is considered to be true, 1 if o is - considered to be false and -1 on failure. - - This is equivalent to the Python expression: not o. */ - - -/* Get the type of an object. - - On success, returns a type object corresponding to the object type of object - 'o'. On failure, returns NULL. - - This is equivalent to the Python expression: type(o) */ -PyAPI_FUNC(PyObject *) PyObject_Type(PyObject *o); - - -/* Return the size of object 'o'. If the object 'o' provides both sequence and - mapping protocols, the sequence size is returned. - - On error, -1 is returned. - - This is the equivalent to the Python expression: len(o) */ -PyAPI_FUNC(Py_ssize_t) PyObject_Size(PyObject *o); - - -/* For DLL compatibility */ -#undef PyObject_Length -PyAPI_FUNC(Py_ssize_t) PyObject_Length(PyObject *o); -#define PyObject_Length PyObject_Size - -/* Return element of 'o' corresponding to the object 'key'. Return NULL - on failure. - - This is the equivalent of the Python expression: o[key] */ -PyAPI_FUNC(PyObject *) PyObject_GetItem(PyObject *o, PyObject *key); - - -/* Map the object 'key' to the value 'v' into 'o'. - - Raise an exception and return -1 on failure; return 0 on success. - - This is the equivalent of the Python statement: o[key]=v. */ -PyAPI_FUNC(int) PyObject_SetItem(PyObject *o, PyObject *key, PyObject *v); - -/* Remove the mapping for the string 'key' from the object 'o'. - Returns -1 on failure. - - This is equivalent to the Python statement: del o[key]. */ -PyAPI_FUNC(int) PyObject_DelItemString(PyObject *o, const char *key); - -/* Delete the mapping for the object 'key' from the object 'o'. - Returns -1 on failure. - - This is the equivalent of the Python statement: del o[key]. */ -PyAPI_FUNC(int) PyObject_DelItem(PyObject *o, PyObject *key); - - -/* === Old Buffer API ============================================ */ - -/* FIXME: usage of these should all be replaced in Python itself - but for backwards compatibility we will implement them. - Their usage without a corresponding "unlock" mechanism - may create issues (but they would already be there). */ - -/* Takes an arbitrary object which must support the (character, single segment) - buffer interface and returns a pointer to a read-only memory location - usable as character based input for subsequent processing. - - Return 0 on success. buffer and buffer_len are only set in case no error - occurs. Otherwise, -1 is returned and an exception set. */ -Py_DEPRECATED(3.0) -PyAPI_FUNC(int) PyObject_AsCharBuffer(PyObject *obj, - const char **buffer, - Py_ssize_t *buffer_len); - -/* Checks whether an arbitrary object supports the (character, single segment) - buffer interface. - - Returns 1 on success, 0 on failure. */ -Py_DEPRECATED(3.0) PyAPI_FUNC(int) PyObject_CheckReadBuffer(PyObject *obj); - -/* Same as PyObject_AsCharBuffer() except that this API expects (readable, - single segment) buffer interface and returns a pointer to a read-only memory - location which can contain arbitrary data. - - 0 is returned on success. buffer and buffer_len are only set in case no - error occurs. Otherwise, -1 is returned and an exception set. */ -Py_DEPRECATED(3.0) -PyAPI_FUNC(int) PyObject_AsReadBuffer(PyObject *obj, - const void **buffer, - Py_ssize_t *buffer_len); - -/* Takes an arbitrary object which must support the (writable, single segment) - buffer interface and returns a pointer to a writable memory location in - buffer of size 'buffer_len'. - - Return 0 on success. buffer and buffer_len are only set in case no error - occurs. Otherwise, -1 is returned and an exception set. */ -Py_DEPRECATED(3.0) -PyAPI_FUNC(int) PyObject_AsWriteBuffer(PyObject *obj, - void **buffer, - Py_ssize_t *buffer_len); - - -/* === New Buffer API ============================================ */ - -/* Takes an arbitrary object and returns the result of calling - obj.__format__(format_spec). */ -PyAPI_FUNC(PyObject *) PyObject_Format(PyObject *obj, - PyObject *format_spec); - - -/* ==== Iterators ================================================ */ - -/* Takes an object and returns an iterator for it. - This is typically a new iterator but if the argument is an iterator, this - returns itself. */ -PyAPI_FUNC(PyObject *) PyObject_GetIter(PyObject *); - -/* Takes an AsyncIterable object and returns an AsyncIterator for it. - This is typically a new iterator but if the argument is an AsyncIterator, - this returns itself. */ -PyAPI_FUNC(PyObject *) PyObject_GetAIter(PyObject *); - -/* Returns non-zero if the object 'obj' provides iterator protocols, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyIter_Check(PyObject *); - -/* Returns non-zero if the object 'obj' provides AsyncIterator protocols, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyAIter_Check(PyObject *); - -/* Takes an iterator object and calls its tp_iternext slot, - returning the next value. - - If the iterator is exhausted, this returns NULL without setting an - exception. - - NULL with an exception means an error occurred. */ -PyAPI_FUNC(PyObject *) PyIter_Next(PyObject *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 - -/* Takes generator, coroutine or iterator object and sends the value into it. - Returns: - - PYGEN_RETURN (0) if generator has returned. - 'result' parameter is filled with return value - - PYGEN_ERROR (-1) if exception was raised. - 'result' parameter is NULL - - PYGEN_NEXT (1) if generator has yielded. - 'result' parameter is filled with yielded value. */ -PyAPI_FUNC(PySendResult) PyIter_Send(PyObject *, PyObject *, PyObject **); -#endif - - -/* === Number Protocol ================================================== */ - -/* Returns 1 if the object 'o' provides numeric protocols, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyNumber_Check(PyObject *o); - -/* Returns the result of adding o1 and o2, or NULL on failure. - - This is the equivalent of the Python expression: o1 + o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Add(PyObject *o1, PyObject *o2); - -/* Returns the result of subtracting o2 from o1, or NULL on failure. - - This is the equivalent of the Python expression: o1 - o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Subtract(PyObject *o1, PyObject *o2); - -/* Returns the result of multiplying o1 and o2, or NULL on failure. - - This is the equivalent of the Python expression: o1 * o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Multiply(PyObject *o1, PyObject *o2); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* This is the equivalent of the Python expression: o1 @ o2. */ -PyAPI_FUNC(PyObject *) PyNumber_MatrixMultiply(PyObject *o1, PyObject *o2); -#endif - -/* Returns the result of dividing o1 by o2 giving an integral result, - or NULL on failure. - - This is the equivalent of the Python expression: o1 // o2. */ -PyAPI_FUNC(PyObject *) PyNumber_FloorDivide(PyObject *o1, PyObject *o2); - -/* Returns the result of dividing o1 by o2 giving a float result, or NULL on - failure. - - This is the equivalent of the Python expression: o1 / o2. */ -PyAPI_FUNC(PyObject *) PyNumber_TrueDivide(PyObject *o1, PyObject *o2); - -/* Returns the remainder of dividing o1 by o2, or NULL on failure. - - This is the equivalent of the Python expression: o1 % o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Remainder(PyObject *o1, PyObject *o2); - -/* See the built-in function divmod. - - Returns NULL on failure. - - This is the equivalent of the Python expression: divmod(o1, o2). */ -PyAPI_FUNC(PyObject *) PyNumber_Divmod(PyObject *o1, PyObject *o2); - -/* See the built-in function pow. Returns NULL on failure. - - This is the equivalent of the Python expression: pow(o1, o2, o3), - where o3 is optional. */ -PyAPI_FUNC(PyObject *) PyNumber_Power(PyObject *o1, PyObject *o2, - PyObject *o3); - -/* Returns the negation of o on success, or NULL on failure. - - This is the equivalent of the Python expression: -o. */ -PyAPI_FUNC(PyObject *) PyNumber_Negative(PyObject *o); - -/* Returns the positive of o on success, or NULL on failure. - - This is the equivalent of the Python expression: +o. */ -PyAPI_FUNC(PyObject *) PyNumber_Positive(PyObject *o); - -/* Returns the absolute value of 'o', or NULL on failure. - - This is the equivalent of the Python expression: abs(o). */ -PyAPI_FUNC(PyObject *) PyNumber_Absolute(PyObject *o); - -/* Returns the bitwise negation of 'o' on success, or NULL on failure. - - This is the equivalent of the Python expression: ~o. */ -PyAPI_FUNC(PyObject *) PyNumber_Invert(PyObject *o); - -/* Returns the result of left shifting o1 by o2 on success, or NULL on failure. - - This is the equivalent of the Python expression: o1 << o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Lshift(PyObject *o1, PyObject *o2); - -/* Returns the result of right shifting o1 by o2 on success, or NULL on - failure. - - This is the equivalent of the Python expression: o1 >> o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Rshift(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise and of o1 and o2 on success, or NULL on - failure. - - This is the equivalent of the Python expression: o1 & o2. */ -PyAPI_FUNC(PyObject *) PyNumber_And(PyObject *o1, PyObject *o2); - -/* Returns the bitwise exclusive or of o1 by o2 on success, or NULL on failure. - - This is the equivalent of the Python expression: o1 ^ o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Xor(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise or on o1 and o2 on success, or NULL on - failure. - - This is the equivalent of the Python expression: o1 | o2. */ -PyAPI_FUNC(PyObject *) PyNumber_Or(PyObject *o1, PyObject *o2); - -/* Returns 1 if obj is an index integer (has the nb_index slot of the - tp_as_number structure filled in), and 0 otherwise. */ -PyAPI_FUNC(int) PyIndex_Check(PyObject *); - -/* Returns the object 'o' converted to a Python int, or NULL with an exception - raised on failure. */ -PyAPI_FUNC(PyObject *) PyNumber_Index(PyObject *o); - -/* Returns the object 'o' converted to Py_ssize_t by going through - PyNumber_Index() first. - - If an overflow error occurs while converting the int to Py_ssize_t, then the - second argument 'exc' is the error-type to return. If it is NULL, then the - overflow error is cleared and the value is clipped. */ -PyAPI_FUNC(Py_ssize_t) PyNumber_AsSsize_t(PyObject *o, PyObject *exc); - -/* Returns the object 'o' converted to an integer object on success, or NULL - on failure. - - This is the equivalent of the Python expression: int(o). */ -PyAPI_FUNC(PyObject *) PyNumber_Long(PyObject *o); - -/* Returns the object 'o' converted to a float object on success, or NULL - on failure. - - This is the equivalent of the Python expression: float(o). */ -PyAPI_FUNC(PyObject *) PyNumber_Float(PyObject *o); - - -/* --- In-place variants of (some of) the above number protocol functions -- */ - -/* Returns the result of adding o2 to o1, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 += o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceAdd(PyObject *o1, PyObject *o2); - -/* Returns the result of subtracting o2 from o1, possibly in-place or - NULL on failure. - - This is the equivalent of the Python expression: o1 -= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceSubtract(PyObject *o1, PyObject *o2); - -/* Returns the result of multiplying o1 by o2, possibly in-place, or NULL on - failure. - - This is the equivalent of the Python expression: o1 *= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceMultiply(PyObject *o1, PyObject *o2); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* This is the equivalent of the Python expression: o1 @= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceMatrixMultiply(PyObject *o1, PyObject *o2); -#endif - -/* Returns the result of dividing o1 by o2 giving an integral result, possibly - in-place, or NULL on failure. - - This is the equivalent of the Python expression: o1 /= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceFloorDivide(PyObject *o1, - PyObject *o2); - -/* Returns the result of dividing o1 by o2 giving a float result, possibly - in-place, or null on failure. - - This is the equivalent of the Python expression: o1 /= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceTrueDivide(PyObject *o1, - PyObject *o2); - -/* Returns the remainder of dividing o1 by o2, possibly in-place, or NULL on - failure. - - This is the equivalent of the Python expression: o1 %= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceRemainder(PyObject *o1, PyObject *o2); - -/* Returns the result of raising o1 to the power of o2, possibly in-place, - or NULL on failure. - - This is the equivalent of the Python expression: o1 **= o2, - or o1 = pow(o1, o2, o3) if o3 is present. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlacePower(PyObject *o1, PyObject *o2, - PyObject *o3); - -/* Returns the result of left shifting o1 by o2, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 <<= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceLshift(PyObject *o1, PyObject *o2); - -/* Returns the result of right shifting o1 by o2, possibly in-place or NULL - on failure. - - This is the equivalent of the Python expression: o1 >>= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceRshift(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise and of o1 and o2, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 &= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceAnd(PyObject *o1, PyObject *o2); - -/* Returns the bitwise exclusive or of o1 by o2, possibly in-place, or NULL - on failure. - - This is the equivalent of the Python expression: o1 ^= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceXor(PyObject *o1, PyObject *o2); - -/* Returns the result of bitwise or of o1 and o2, possibly in-place, - or NULL on failure. - - This is the equivalent of the Python expression: o1 |= o2. */ -PyAPI_FUNC(PyObject *) PyNumber_InPlaceOr(PyObject *o1, PyObject *o2); - -/* Returns the integer n converted to a string with a base, with a base - marker of 0b, 0o or 0x prefixed if applicable. - - If n is not an int object, it is converted with PyNumber_Index first. */ -PyAPI_FUNC(PyObject *) PyNumber_ToBase(PyObject *n, int base); - - -/* === Sequence protocol ================================================ */ - -/* Return 1 if the object provides sequence protocol, and zero - otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PySequence_Check(PyObject *o); - -/* Return the size of sequence object o, or -1 on failure. */ -PyAPI_FUNC(Py_ssize_t) PySequence_Size(PyObject *o); - -/* For DLL compatibility */ -#undef PySequence_Length -PyAPI_FUNC(Py_ssize_t) PySequence_Length(PyObject *o); -#define PySequence_Length PySequence_Size - - -/* Return the concatenation of o1 and o2 on success, and NULL on failure. - - This is the equivalent of the Python expression: o1 + o2. */ -PyAPI_FUNC(PyObject *) PySequence_Concat(PyObject *o1, PyObject *o2); - -/* Return the result of repeating sequence object 'o' 'count' times, - or NULL on failure. - - This is the equivalent of the Python expression: o * count. */ -PyAPI_FUNC(PyObject *) PySequence_Repeat(PyObject *o, Py_ssize_t count); - -/* Return the ith element of o, or NULL on failure. - - This is the equivalent of the Python expression: o[i]. */ -PyAPI_FUNC(PyObject *) PySequence_GetItem(PyObject *o, Py_ssize_t i); - -/* Return the slice of sequence object o between i1 and i2, or NULL on failure. - - This is the equivalent of the Python expression: o[i1:i2]. */ -PyAPI_FUNC(PyObject *) PySequence_GetSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2); - -/* Assign object 'v' to the ith element of the sequence 'o'. Raise an exception - and return -1 on failure; return 0 on success. - - This is the equivalent of the Python statement o[i] = v. */ -PyAPI_FUNC(int) PySequence_SetItem(PyObject *o, Py_ssize_t i, PyObject *v); - -/* Delete the 'i'-th element of the sequence 'v'. Returns -1 on failure. - - This is the equivalent of the Python statement: del o[i]. */ -PyAPI_FUNC(int) PySequence_DelItem(PyObject *o, Py_ssize_t i); - -/* Assign the sequence object 'v' to the slice in sequence object 'o', - from 'i1' to 'i2'. Returns -1 on failure. - - This is the equivalent of the Python statement: o[i1:i2] = v. */ -PyAPI_FUNC(int) PySequence_SetSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2, - PyObject *v); - -/* Delete the slice in sequence object 'o' from 'i1' to 'i2'. - Returns -1 on failure. - - This is the equivalent of the Python statement: del o[i1:i2]. */ -PyAPI_FUNC(int) PySequence_DelSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2); - -/* Returns the sequence 'o' as a tuple on success, and NULL on failure. - - This is equivalent to the Python expression: tuple(o). */ -PyAPI_FUNC(PyObject *) PySequence_Tuple(PyObject *o); - -/* Returns the sequence 'o' as a list on success, and NULL on failure. - This is equivalent to the Python expression: list(o) */ -PyAPI_FUNC(PyObject *) PySequence_List(PyObject *o); - -/* Return the sequence 'o' as a list, unless it's already a tuple or list. - - Use PySequence_Fast_GET_ITEM to access the members of this list, and - PySequence_Fast_GET_SIZE to get its length. - - Returns NULL on failure. If the object does not support iteration, raises a - TypeError exception with 'm' as the message text. */ -PyAPI_FUNC(PyObject *) PySequence_Fast(PyObject *o, const char* m); - -/* Return the size of the sequence 'o', assuming that 'o' was returned by - PySequence_Fast and is not NULL. */ -#define PySequence_Fast_GET_SIZE(o) \ - (PyList_Check(o) ? PyList_GET_SIZE(o) : PyTuple_GET_SIZE(o)) - -/* Return the 'i'-th element of the sequence 'o', assuming that o was returned - by PySequence_Fast, and that i is within bounds. */ -#define PySequence_Fast_GET_ITEM(o, i)\ - (PyList_Check(o) ? PyList_GET_ITEM((o), (i)) : PyTuple_GET_ITEM((o), (i))) - -/* Return a pointer to the underlying item array for - an object returned by PySequence_Fast */ -#define PySequence_Fast_ITEMS(sf) \ - (PyList_Check(sf) ? ((PyListObject *)(sf))->ob_item \ - : ((PyTupleObject *)(sf))->ob_item) - -/* Return the number of occurrences on value on 'o', that is, return - the number of keys for which o[key] == value. - - On failure, return -1. This is equivalent to the Python expression: - o.count(value). */ -PyAPI_FUNC(Py_ssize_t) PySequence_Count(PyObject *o, PyObject *value); - -/* Return 1 if 'ob' is in the sequence 'seq'; 0 if 'ob' is not in the sequence - 'seq'; -1 on error. - - Use __contains__ if possible, else _PySequence_IterSearch(). */ -PyAPI_FUNC(int) PySequence_Contains(PyObject *seq, PyObject *ob); - -/* For DLL-level backwards compatibility */ -#undef PySequence_In -/* Determine if the sequence 'o' contains 'value'. If an item in 'o' is equal - to 'value', return 1, otherwise return 0. On error, return -1. - - This is equivalent to the Python expression: value in o. */ -PyAPI_FUNC(int) PySequence_In(PyObject *o, PyObject *value); - -/* For source-level backwards compatibility */ -#define PySequence_In PySequence_Contains - - -/* Return the first index for which o[i] == value. - On error, return -1. - - This is equivalent to the Python expression: o.index(value). */ -PyAPI_FUNC(Py_ssize_t) PySequence_Index(PyObject *o, PyObject *value); - - -/* --- In-place versions of some of the above Sequence functions --- */ - -/* Append sequence 'o2' to sequence 'o1', in-place when possible. Return the - resulting object, which could be 'o1', or NULL on failure. - - This is the equivalent of the Python expression: o1 += o2. */ -PyAPI_FUNC(PyObject *) PySequence_InPlaceConcat(PyObject *o1, PyObject *o2); - -/* Repeat sequence 'o' by 'count', in-place when possible. Return the resulting - object, which could be 'o', or NULL on failure. - - This is the equivalent of the Python expression: o1 *= count. */ -PyAPI_FUNC(PyObject *) PySequence_InPlaceRepeat(PyObject *o, Py_ssize_t count); - - -/* === Mapping protocol ================================================= */ - -/* Return 1 if the object provides mapping protocol, and 0 otherwise. - - This function always succeeds. */ -PyAPI_FUNC(int) PyMapping_Check(PyObject *o); - -/* Returns the number of keys in mapping object 'o' on success, and -1 on - failure. This is equivalent to the Python expression: len(o). */ -PyAPI_FUNC(Py_ssize_t) PyMapping_Size(PyObject *o); - -/* For DLL compatibility */ -#undef PyMapping_Length -PyAPI_FUNC(Py_ssize_t) PyMapping_Length(PyObject *o); -#define PyMapping_Length PyMapping_Size - - -/* Implemented as a macro: - - int PyMapping_DelItemString(PyObject *o, const char *key); - - Remove the mapping for the string 'key' from the mapping 'o'. Returns -1 on - failure. - - This is equivalent to the Python statement: del o[key]. */ -#define PyMapping_DelItemString(O, K) PyObject_DelItemString((O), (K)) - -/* Implemented as a macro: - - int PyMapping_DelItem(PyObject *o, PyObject *key); - - Remove the mapping for the object 'key' from the mapping object 'o'. - Returns -1 on failure. - - This is equivalent to the Python statement: del o[key]. */ -#define PyMapping_DelItem(O, K) PyObject_DelItem((O), (K)) - -/* On success, return 1 if the mapping object 'o' has the key 'key', - and 0 otherwise. - - This is equivalent to the Python expression: key in o. - - This function always succeeds. */ -PyAPI_FUNC(int) PyMapping_HasKeyString(PyObject *o, const char *key); - -/* Return 1 if the mapping object has the key 'key', and 0 otherwise. - - This is equivalent to the Python expression: key in o. - - This function always succeeds. */ -PyAPI_FUNC(int) PyMapping_HasKey(PyObject *o, PyObject *key); - -/* On success, return a list or tuple of the keys in mapping object 'o'. - On failure, return NULL. */ -PyAPI_FUNC(PyObject *) PyMapping_Keys(PyObject *o); - -/* On success, return a list or tuple of the values in mapping object 'o'. - On failure, return NULL. */ -PyAPI_FUNC(PyObject *) PyMapping_Values(PyObject *o); - -/* On success, return a list or tuple of the items in mapping object 'o', - where each item is a tuple containing a key-value pair. On failure, return - NULL. */ -PyAPI_FUNC(PyObject *) PyMapping_Items(PyObject *o); - -/* Return element of 'o' corresponding to the string 'key' or NULL on failure. - - This is the equivalent of the Python expression: o[key]. */ -PyAPI_FUNC(PyObject *) PyMapping_GetItemString(PyObject *o, - const char *key); - -/* Map the string 'key' to the value 'v' in the mapping 'o'. - Returns -1 on failure. - - This is the equivalent of the Python statement: o[key]=v. */ -PyAPI_FUNC(int) PyMapping_SetItemString(PyObject *o, const char *key, - PyObject *value); - -/* isinstance(object, typeorclass) */ -PyAPI_FUNC(int) PyObject_IsInstance(PyObject *object, PyObject *typeorclass); - -/* issubclass(object, typeorclass) */ -PyAPI_FUNC(int) PyObject_IsSubclass(PyObject *object, PyObject *typeorclass); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_ABSTRACTOBJECT_H -# include "cpython/abstract.h" -# undef Py_CPYTHON_ABSTRACTOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* Py_ABSTRACTOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/bltinmodule.h b/_Pre_Builds/_Python312_cpp/include/bltinmodule.h deleted file mode 100644 index 868c9e6..0000000 --- a/_Pre_Builds/_Python312_cpp/include/bltinmodule.h +++ /dev/null @@ -1,14 +0,0 @@ -#ifndef Py_BLTINMODULE_H -#define Py_BLTINMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyFilter_Type; -PyAPI_DATA(PyTypeObject) PyMap_Type; -PyAPI_DATA(PyTypeObject) PyZip_Type; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BLTINMODULE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/boolobject.h b/_Pre_Builds/_Python312_cpp/include/boolobject.h deleted file mode 100644 index 19aef5b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/boolobject.h +++ /dev/null @@ -1,42 +0,0 @@ -/* Boolean object interface */ - -#ifndef Py_BOOLOBJECT_H -#define Py_BOOLOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -// PyBool_Type is declared by object.h - -#define PyBool_Check(x) Py_IS_TYPE((x), &PyBool_Type) - -/* Py_False and Py_True are the only two bools in existence. */ - -/* Don't use these directly */ -PyAPI_DATA(PyLongObject) _Py_FalseStruct; -PyAPI_DATA(PyLongObject) _Py_TrueStruct; - -/* Use these macros */ -#define Py_False _PyObject_CAST(&_Py_FalseStruct) -#define Py_True _PyObject_CAST(&_Py_TrueStruct) - -// Test if an object is the True singleton, the same as "x is True" in Python. -PyAPI_FUNC(int) Py_IsTrue(PyObject *x); -#define Py_IsTrue(x) Py_Is((x), Py_True) - -// Test if an object is the False singleton, the same as "x is False" in Python. -PyAPI_FUNC(int) Py_IsFalse(PyObject *x); -#define Py_IsFalse(x) Py_Is((x), Py_False) - -/* Macros for returning Py_True or Py_False, respectively */ -#define Py_RETURN_TRUE return Py_True -#define Py_RETURN_FALSE return Py_False - -/* Function to return a bool from a C long */ -PyAPI_FUNC(PyObject *) PyBool_FromLong(long); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BOOLOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/bytearrayobject.h b/_Pre_Builds/_Python312_cpp/include/bytearrayobject.h deleted file mode 100644 index 3d53fdb..0000000 --- a/_Pre_Builds/_Python312_cpp/include/bytearrayobject.h +++ /dev/null @@ -1,44 +0,0 @@ -/* ByteArray object interface */ - -#ifndef Py_BYTEARRAYOBJECT_H -#define Py_BYTEARRAYOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Type PyByteArrayObject represents a mutable array of bytes. - * The Python API is that of a sequence; - * the bytes are mapped to ints in [0, 256). - * Bytes are not characters; they may be used to encode characters. - * The only way to go between bytes and str/unicode is via encoding - * and decoding. - * For the convenience of C programmers, the bytes type is considered - * to contain a char pointer, not an unsigned char pointer. - */ - -/* Type object */ -PyAPI_DATA(PyTypeObject) PyByteArray_Type; -PyAPI_DATA(PyTypeObject) PyByteArrayIter_Type; - -/* Type check macros */ -#define PyByteArray_Check(self) PyObject_TypeCheck((self), &PyByteArray_Type) -#define PyByteArray_CheckExact(self) Py_IS_TYPE((self), &PyByteArray_Type) - -/* Direct API functions */ -PyAPI_FUNC(PyObject *) PyByteArray_FromObject(PyObject *); -PyAPI_FUNC(PyObject *) PyByteArray_Concat(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyByteArray_FromStringAndSize(const char *, Py_ssize_t); -PyAPI_FUNC(Py_ssize_t) PyByteArray_Size(PyObject *); -PyAPI_FUNC(char *) PyByteArray_AsString(PyObject *); -PyAPI_FUNC(int) PyByteArray_Resize(PyObject *, Py_ssize_t); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_BYTEARRAYOBJECT_H -# include "cpython/bytearrayobject.h" -# undef Py_CPYTHON_BYTEARRAYOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BYTEARRAYOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/bytesobject.h b/_Pre_Builds/_Python312_cpp/include/bytesobject.h deleted file mode 100644 index ee448cd..0000000 --- a/_Pre_Builds/_Python312_cpp/include/bytesobject.h +++ /dev/null @@ -1,69 +0,0 @@ - -/* Bytes object interface */ - -#ifndef Py_BYTESOBJECT_H -#define Py_BYTESOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#include // va_list - -/* -Type PyBytesObject represents a byte string. An extra zero byte is -reserved at the end to ensure it is zero-terminated, but a size is -present so strings with null bytes in them can be represented. This -is an immutable object type. - -There are functions to create new bytes objects, to test -an object for bytes-ness, and to get the -byte string value. The latter function returns a null pointer -if the object is not of the proper type. -There is a variant that takes an explicit size as well as a -variant that assumes a zero-terminated string. Note that none of the -functions should be applied to NULL pointer. -*/ - -PyAPI_DATA(PyTypeObject) PyBytes_Type; -PyAPI_DATA(PyTypeObject) PyBytesIter_Type; - -#define PyBytes_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_BYTES_SUBCLASS) -#define PyBytes_CheckExact(op) Py_IS_TYPE((op), &PyBytes_Type) - -PyAPI_FUNC(PyObject *) PyBytes_FromStringAndSize(const char *, Py_ssize_t); -PyAPI_FUNC(PyObject *) PyBytes_FromString(const char *); -PyAPI_FUNC(PyObject *) PyBytes_FromObject(PyObject *); -PyAPI_FUNC(PyObject *) PyBytes_FromFormatV(const char*, va_list) - Py_GCC_ATTRIBUTE((format(printf, 1, 0))); -PyAPI_FUNC(PyObject *) PyBytes_FromFormat(const char*, ...) - Py_GCC_ATTRIBUTE((format(printf, 1, 2))); -PyAPI_FUNC(Py_ssize_t) PyBytes_Size(PyObject *); -PyAPI_FUNC(char *) PyBytes_AsString(PyObject *); -PyAPI_FUNC(PyObject *) PyBytes_Repr(PyObject *, int); -PyAPI_FUNC(void) PyBytes_Concat(PyObject **, PyObject *); -PyAPI_FUNC(void) PyBytes_ConcatAndDel(PyObject **, PyObject *); -PyAPI_FUNC(PyObject *) PyBytes_DecodeEscape(const char *, Py_ssize_t, - const char *, Py_ssize_t, - const char *); - -/* Provides access to the internal data buffer and size of a bytes object. - Passing NULL as len parameter will force the string buffer to be - 0-terminated (passing a string with embedded NUL characters will - cause an exception). */ -PyAPI_FUNC(int) PyBytes_AsStringAndSize( - PyObject *obj, /* bytes object */ - char **s, /* pointer to buffer variable */ - Py_ssize_t *len /* pointer to length variable or NULL */ - ); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_BYTESOBJECT_H -# include "cpython/bytesobject.h" -# undef Py_CPYTHON_BYTESOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_BYTESOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/ceval.h b/_Pre_Builds/_Python312_cpp/include/ceval.h deleted file mode 100644 index ad4d909..0000000 --- a/_Pre_Builds/_Python312_cpp/include/ceval.h +++ /dev/null @@ -1,168 +0,0 @@ -/* Interface to random parts in ceval.c */ - -#ifndef Py_CEVAL_H -#define Py_CEVAL_H -#ifdef __cplusplus -extern "C" { -#endif - - -PyAPI_FUNC(PyObject *) PyEval_EvalCode(PyObject *, PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) PyEval_EvalCodeEx(PyObject *co, - PyObject *globals, - PyObject *locals, - PyObject *const *args, int argc, - PyObject *const *kwds, int kwdc, - PyObject *const *defs, int defc, - PyObject *kwdefs, PyObject *closure); - -/* PyEval_CallObjectWithKeywords(), PyEval_CallObject(), PyEval_CallFunction - * and PyEval_CallMethod are deprecated. Since they are officially part of the - * stable ABI (PEP 384), they must be kept for backward compatibility. - * PyObject_Call(), PyObject_CallFunction() and PyObject_CallMethod() are - * recommended to call a callable object. - */ - -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallObjectWithKeywords( - PyObject *callable, - PyObject *args, - PyObject *kwargs); - -/* Deprecated since PyEval_CallObjectWithKeywords is deprecated */ -#define PyEval_CallObject(callable, arg) \ - PyEval_CallObjectWithKeywords((callable), (arg), _PyObject_CAST(_Py_NULL)) - -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallFunction( - PyObject *callable, const char *format, ...); -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallMethod( - PyObject *obj, const char *name, const char *format, ...); - -PyAPI_FUNC(PyObject *) PyEval_GetBuiltins(void); -PyAPI_FUNC(PyObject *) PyEval_GetGlobals(void); -PyAPI_FUNC(PyObject *) PyEval_GetLocals(void); -PyAPI_FUNC(PyFrameObject *) PyEval_GetFrame(void); - -PyAPI_FUNC(int) Py_AddPendingCall(int (*func)(void *), void *arg); -PyAPI_FUNC(int) Py_MakePendingCalls(void); - -/* Protection against deeply nested recursive calls - - In Python 3.0, this protection has two levels: - * normal anti-recursion protection is triggered when the recursion level - exceeds the current recursion limit. It raises a RecursionError, and sets - the "overflowed" flag in the thread state structure. This flag - temporarily *disables* the normal protection; this allows cleanup code - to potentially outgrow the recursion limit while processing the - RecursionError. - * "last chance" anti-recursion protection is triggered when the recursion - level exceeds "current recursion limit + 50". By construction, this - protection can only be triggered when the "overflowed" flag is set. It - means the cleanup code has itself gone into an infinite loop, or the - RecursionError has been mistakingly ignored. When this protection is - triggered, the interpreter aborts with a Fatal Error. - - In addition, the "overflowed" flag is automatically reset when the - recursion level drops below "current recursion limit - 50". This heuristic - is meant to ensure that the normal anti-recursion protection doesn't get - disabled too long. - - Please note: this scheme has its own limitations. See: - http://mail.python.org/pipermail/python-dev/2008-August/082106.html - for some observations. -*/ -PyAPI_FUNC(void) Py_SetRecursionLimit(int); -PyAPI_FUNC(int) Py_GetRecursionLimit(void); - -PyAPI_FUNC(int) Py_EnterRecursiveCall(const char *where); -PyAPI_FUNC(void) Py_LeaveRecursiveCall(void); - -PyAPI_FUNC(const char *) PyEval_GetFuncName(PyObject *); -PyAPI_FUNC(const char *) PyEval_GetFuncDesc(PyObject *); - -PyAPI_FUNC(PyObject *) PyEval_EvalFrame(PyFrameObject *); -PyAPI_FUNC(PyObject *) PyEval_EvalFrameEx(PyFrameObject *f, int exc); - -/* Interface for threads. - - A module that plans to do a blocking system call (or something else - that lasts a long time and doesn't touch Python data) can allow other - threads to run as follows: - - ...preparations here... - Py_BEGIN_ALLOW_THREADS - ...blocking system call here... - Py_END_ALLOW_THREADS - ...interpret result here... - - The Py_BEGIN_ALLOW_THREADS/Py_END_ALLOW_THREADS pair expands to a - {}-surrounded block. - To leave the block in the middle (e.g., with return), you must insert - a line containing Py_BLOCK_THREADS before the return, e.g. - - if (...premature_exit...) { - Py_BLOCK_THREADS - PyErr_SetFromErrno(PyExc_OSError); - return NULL; - } - - An alternative is: - - Py_BLOCK_THREADS - if (...premature_exit...) { - PyErr_SetFromErrno(PyExc_OSError); - return NULL; - } - Py_UNBLOCK_THREADS - - For convenience, that the value of 'errno' is restored across - Py_END_ALLOW_THREADS and Py_BLOCK_THREADS. - - WARNING: NEVER NEST CALLS TO Py_BEGIN_ALLOW_THREADS AND - Py_END_ALLOW_THREADS!!! - - Note that not yet all candidates have been converted to use this - mechanism! -*/ - -PyAPI_FUNC(PyThreadState *) PyEval_SaveThread(void); -PyAPI_FUNC(void) PyEval_RestoreThread(PyThreadState *); - -Py_DEPRECATED(3.9) PyAPI_FUNC(int) PyEval_ThreadsInitialized(void); -Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void); -/* PyEval_AcquireLock() and PyEval_ReleaseLock() are part of stable ABI. - * They will be removed from this header file in the future version. - * But they will be remained in ABI until Python 4.0. - */ -Py_DEPRECATED(3.2) PyAPI_FUNC(void) PyEval_AcquireLock(void); -Py_DEPRECATED(3.2) PyAPI_FUNC(void) PyEval_ReleaseLock(void); -PyAPI_FUNC(void) PyEval_AcquireThread(PyThreadState *tstate); -PyAPI_FUNC(void) PyEval_ReleaseThread(PyThreadState *tstate); - -#define Py_BEGIN_ALLOW_THREADS { \ - PyThreadState *_save; \ - _save = PyEval_SaveThread(); -#define Py_BLOCK_THREADS PyEval_RestoreThread(_save); -#define Py_UNBLOCK_THREADS _save = PyEval_SaveThread(); -#define Py_END_ALLOW_THREADS PyEval_RestoreThread(_save); \ - } - -/* Masks and values used by FORMAT_VALUE opcode. */ -#define FVC_MASK 0x3 -#define FVC_NONE 0x0 -#define FVC_STR 0x1 -#define FVC_REPR 0x2 -#define FVC_ASCII 0x3 -#define FVS_MASK 0x4 -#define FVS_HAVE_SPEC 0x4 - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_CEVAL_H -# include "cpython/ceval.h" -# undef Py_CPYTHON_CEVAL_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CEVAL_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/codecs.h b/_Pre_Builds/_Python312_cpp/include/codecs.h deleted file mode 100644 index 37ecfb4..0000000 --- a/_Pre_Builds/_Python312_cpp/include/codecs.h +++ /dev/null @@ -1,248 +0,0 @@ -#ifndef Py_CODECREGISTRY_H -#define Py_CODECREGISTRY_H -#ifdef __cplusplus -extern "C" { -#endif - -/* ------------------------------------------------------------------------ - - Python Codec Registry and support functions - - -Written by Marc-Andre Lemburg (mal@lemburg.com). - -Copyright (c) Corporation for National Research Initiatives. - - ------------------------------------------------------------------------ */ - -/* Register a new codec search function. - - As side effect, this tries to load the encodings package, if not - yet done, to make sure that it is always first in the list of - search functions. - - The search_function's refcount is incremented by this function. */ - -PyAPI_FUNC(int) PyCodec_Register( - PyObject *search_function - ); - -/* Unregister a codec search function and clear the registry's cache. - If the search function is not registered, do nothing. - Return 0 on success. Raise an exception and return -1 on error. */ - -PyAPI_FUNC(int) PyCodec_Unregister( - PyObject *search_function - ); - -/* Codec registry lookup API. - - Looks up the given encoding and returns a CodecInfo object with - function attributes which implement the different aspects of - processing the encoding. - - The encoding string is looked up converted to all lower-case - characters. This makes encodings looked up through this mechanism - effectively case-insensitive. - - If no codec is found, a KeyError is set and NULL returned. - - As side effect, this tries to load the encodings package, if not - yet done. This is part of the lazy load strategy for the encodings - package. - - */ - -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PyCodec_Lookup( - const char *encoding - ); - -PyAPI_FUNC(int) _PyCodec_Forget( - const char *encoding - ); -#endif - -/* Codec registry encoding check API. - - Returns 1/0 depending on whether there is a registered codec for - the given encoding. - -*/ - -PyAPI_FUNC(int) PyCodec_KnownEncoding( - const char *encoding - ); - -/* Generic codec based encoding API. - - object is passed through the encoder function found for the given - encoding using the error handling method defined by errors. errors - may be NULL to use the default method defined for the codec. - - Raises a LookupError in case no encoder can be found. - - */ - -PyAPI_FUNC(PyObject *) PyCodec_Encode( - PyObject *object, - const char *encoding, - const char *errors - ); - -/* Generic codec based decoding API. - - object is passed through the decoder function found for the given - encoding using the error handling method defined by errors. errors - may be NULL to use the default method defined for the codec. - - Raises a LookupError in case no encoder can be found. - - */ - -PyAPI_FUNC(PyObject *) PyCodec_Decode( - PyObject *object, - const char *encoding, - const char *errors - ); - -#ifndef Py_LIMITED_API -/* Text codec specific encoding and decoding API. - - Checks the encoding against a list of codecs which do not - implement a str<->bytes encoding before attempting the - operation. - - Please note that these APIs are internal and should not - be used in Python C extensions. - - XXX (ncoghlan): should we make these, or something like them, public - in Python 3.5+? - - */ -PyAPI_FUNC(PyObject *) _PyCodec_LookupTextEncoding( - const char *encoding, - const char *alternate_command - ); - -PyAPI_FUNC(PyObject *) _PyCodec_EncodeText( - PyObject *object, - const char *encoding, - const char *errors - ); - -PyAPI_FUNC(PyObject *) _PyCodec_DecodeText( - PyObject *object, - const char *encoding, - const char *errors - ); - -/* These two aren't actually text encoding specific, but _io.TextIOWrapper - * is the only current API consumer. - */ -PyAPI_FUNC(PyObject *) _PyCodecInfo_GetIncrementalDecoder( - PyObject *codec_info, - const char *errors - ); - -PyAPI_FUNC(PyObject *) _PyCodecInfo_GetIncrementalEncoder( - PyObject *codec_info, - const char *errors - ); -#endif - - - -/* --- Codec Lookup APIs -------------------------------------------------- - - All APIs return a codec object with incremented refcount and are - based on _PyCodec_Lookup(). The same comments w/r to the encoding - name also apply to these APIs. - -*/ - -/* Get an encoder function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_Encoder( - const char *encoding - ); - -/* Get a decoder function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_Decoder( - const char *encoding - ); - -/* Get an IncrementalEncoder object for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_IncrementalEncoder( - const char *encoding, - const char *errors - ); - -/* Get an IncrementalDecoder object function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_IncrementalDecoder( - const char *encoding, - const char *errors - ); - -/* Get a StreamReader factory function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_StreamReader( - const char *encoding, - PyObject *stream, - const char *errors - ); - -/* Get a StreamWriter factory function for the given encoding. */ - -PyAPI_FUNC(PyObject *) PyCodec_StreamWriter( - const char *encoding, - PyObject *stream, - const char *errors - ); - -/* Unicode encoding error handling callback registry API */ - -/* Register the error handling callback function error under the given - name. This function will be called by the codec when it encounters - unencodable characters/undecodable bytes and doesn't know the - callback name, when name is specified as the error parameter - in the call to the encode/decode function. - Return 0 on success, -1 on error */ -PyAPI_FUNC(int) PyCodec_RegisterError(const char *name, PyObject *error); - -/* Lookup the error handling callback function registered under the given - name. As a special case NULL can be passed, in which case - the error handling callback for "strict" will be returned. */ -PyAPI_FUNC(PyObject *) PyCodec_LookupError(const char *name); - -/* raise exc as an exception */ -PyAPI_FUNC(PyObject *) PyCodec_StrictErrors(PyObject *exc); - -/* ignore the unicode error, skipping the faulty input */ -PyAPI_FUNC(PyObject *) PyCodec_IgnoreErrors(PyObject *exc); - -/* replace the unicode encode error with ? or U+FFFD */ -PyAPI_FUNC(PyObject *) PyCodec_ReplaceErrors(PyObject *exc); - -/* replace the unicode encode error with XML character references */ -PyAPI_FUNC(PyObject *) PyCodec_XMLCharRefReplaceErrors(PyObject *exc); - -/* replace the unicode encode error with backslash escapes (\x, \u and \U) */ -PyAPI_FUNC(PyObject *) PyCodec_BackslashReplaceErrors(PyObject *exc); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* replace the unicode encode error with backslash escapes (\N, \x, \u and \U) */ -PyAPI_FUNC(PyObject *) PyCodec_NameReplaceErrors(PyObject *exc); -#endif - -#ifndef Py_LIMITED_API -PyAPI_DATA(const char *) Py_hexdigits; -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CODECREGISTRY_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/compile.h b/_Pre_Builds/_Python312_cpp/include/compile.h deleted file mode 100644 index 52d0bc7..0000000 --- a/_Pre_Builds/_Python312_cpp/include/compile.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef Py_COMPILE_H -#define Py_COMPILE_H -#ifdef __cplusplus -extern "C" { -#endif - -/* These definitions must match corresponding definitions in graminit.h. */ -#define Py_single_input 256 -#define Py_file_input 257 -#define Py_eval_input 258 -#define Py_func_type_input 345 - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_COMPILE_H -# include "cpython/compile.h" -# undef Py_CPYTHON_COMPILE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_COMPILE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/complexobject.h b/_Pre_Builds/_Python312_cpp/include/complexobject.h deleted file mode 100644 index ebe49a8..0000000 --- a/_Pre_Builds/_Python312_cpp/include/complexobject.h +++ /dev/null @@ -1,30 +0,0 @@ -/* Complex number structure */ - -#ifndef Py_COMPLEXOBJECT_H -#define Py_COMPLEXOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Complex object interface */ - -PyAPI_DATA(PyTypeObject) PyComplex_Type; - -#define PyComplex_Check(op) PyObject_TypeCheck((op), &PyComplex_Type) -#define PyComplex_CheckExact(op) Py_IS_TYPE((op), &PyComplex_Type) - -PyAPI_FUNC(PyObject *) PyComplex_FromDoubles(double real, double imag); - -PyAPI_FUNC(double) PyComplex_RealAsDouble(PyObject *op); -PyAPI_FUNC(double) PyComplex_ImagAsDouble(PyObject *op); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_COMPLEXOBJECT_H -# include "cpython/complexobject.h" -# undef Py_CPYTHON_COMPLEXOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_COMPLEXOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/abstract.h b/_Pre_Builds/_Python312_cpp/include/cpython/abstract.h deleted file mode 100644 index 3b27aab..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/abstract.h +++ /dev/null @@ -1,206 +0,0 @@ -#ifndef Py_CPYTHON_ABSTRACTOBJECT_H -# error "this header file must not be included directly" -#endif - -/* === Object Protocol ================================================== */ - -#ifdef PY_SSIZE_T_CLEAN -# define _PyObject_CallMethodId _PyObject_CallMethodId_SizeT -#endif - -/* Convert keyword arguments from the FASTCALL (stack: C array, kwnames: tuple) - format to a Python dictionary ("kwargs" dict). - - The type of kwnames keys is not checked. The final function getting - arguments is responsible to check if all keys are strings, for example using - PyArg_ParseTupleAndKeywords() or PyArg_ValidateKeywordArguments(). - - Duplicate keys are merged using the last value. If duplicate keys must raise - an exception, the caller is responsible to implement an explicit keys on - kwnames. */ -PyAPI_FUNC(PyObject *) _PyStack_AsDict( - PyObject *const *values, - PyObject *kwnames); - -/* Suggested size (number of positional arguments) for arrays of PyObject* - allocated on a C stack to avoid allocating memory on the heap memory. Such - array is used to pass positional arguments to call functions of the - PyObject_Vectorcall() family. - - The size is chosen to not abuse the C stack and so limit the risk of stack - overflow. The size is also chosen to allow using the small stack for most - function calls of the Python standard library. On 64-bit CPU, it allocates - 40 bytes on the stack. */ -#define _PY_FASTCALL_SMALL_STACK 5 - -PyAPI_FUNC(PyObject *) _Py_CheckFunctionResult( - PyThreadState *tstate, - PyObject *callable, - PyObject *result, - const char *where); - -/* === Vectorcall protocol (PEP 590) ============================= */ - -/* Call callable using tp_call. Arguments are like PyObject_Vectorcall() - or PyObject_FastCallDict() (both forms are supported), - except that nargs is plainly the number of arguments without flags. */ -PyAPI_FUNC(PyObject *) _PyObject_MakeTpCall( - PyThreadState *tstate, - PyObject *callable, - PyObject *const *args, Py_ssize_t nargs, - PyObject *keywords); - -// PyVectorcall_NARGS() is exported as a function for the stable ABI. -// Here (when we are not using the stable ABI), the name is overridden to -// call a static inline function for best performance. -#define PyVectorcall_NARGS(n) _PyVectorcall_NARGS(n) -static inline Py_ssize_t -_PyVectorcall_NARGS(size_t n) -{ - return n & ~PY_VECTORCALL_ARGUMENTS_OFFSET; -} - -PyAPI_FUNC(vectorcallfunc) PyVectorcall_Function(PyObject *callable); - -// Backwards compatibility aliases for API that was provisional in Python 3.8 -#define _PyObject_Vectorcall PyObject_Vectorcall -#define _PyObject_VectorcallMethod PyObject_VectorcallMethod -#define _PyObject_FastCallDict PyObject_VectorcallDict -#define _PyVectorcall_Function PyVectorcall_Function -#define _PyObject_CallOneArg PyObject_CallOneArg -#define _PyObject_CallMethodNoArgs PyObject_CallMethodNoArgs -#define _PyObject_CallMethodOneArg PyObject_CallMethodOneArg - -/* Same as PyObject_Vectorcall except that keyword arguments are passed as - dict, which may be NULL if there are no keyword arguments. */ -PyAPI_FUNC(PyObject *) PyObject_VectorcallDict( - PyObject *callable, - PyObject *const *args, - size_t nargsf, - PyObject *kwargs); - -// Same as PyObject_Vectorcall(), except without keyword arguments -PyAPI_FUNC(PyObject *) _PyObject_FastCall( - PyObject *func, - PyObject *const *args, - Py_ssize_t nargs); - -PyAPI_FUNC(PyObject *) PyObject_CallOneArg(PyObject *func, PyObject *arg); - -static inline PyObject * -PyObject_CallMethodNoArgs(PyObject *self, PyObject *name) -{ - size_t nargsf = 1 | PY_VECTORCALL_ARGUMENTS_OFFSET; - return PyObject_VectorcallMethod(name, &self, nargsf, _Py_NULL); -} - -static inline PyObject * -PyObject_CallMethodOneArg(PyObject *self, PyObject *name, PyObject *arg) -{ - PyObject *args[2] = {self, arg}; - size_t nargsf = 2 | PY_VECTORCALL_ARGUMENTS_OFFSET; - assert(arg != NULL); - return PyObject_VectorcallMethod(name, args, nargsf, _Py_NULL); -} - -PyAPI_FUNC(PyObject *) _PyObject_CallMethod(PyObject *obj, - PyObject *name, - const char *format, ...); - -/* Like PyObject_CallMethod(), but expect a _Py_Identifier* - as the method name. */ -PyAPI_FUNC(PyObject *) _PyObject_CallMethodId(PyObject *obj, - _Py_Identifier *name, - const char *format, ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallMethodId_SizeT(PyObject *obj, - _Py_Identifier *name, - const char *format, - ...); - -PyAPI_FUNC(PyObject *) _PyObject_CallMethodIdObjArgs( - PyObject *obj, - _Py_Identifier *name, - ...); - -static inline PyObject * -_PyObject_VectorcallMethodId( - _Py_Identifier *name, PyObject *const *args, - size_t nargsf, PyObject *kwnames) -{ - PyObject *oname = _PyUnicode_FromId(name); /* borrowed */ - if (!oname) { - return _Py_NULL; - } - return PyObject_VectorcallMethod(oname, args, nargsf, kwnames); -} - -static inline PyObject * -_PyObject_CallMethodIdNoArgs(PyObject *self, _Py_Identifier *name) -{ - size_t nargsf = 1 | PY_VECTORCALL_ARGUMENTS_OFFSET; - return _PyObject_VectorcallMethodId(name, &self, nargsf, _Py_NULL); -} - -static inline PyObject * -_PyObject_CallMethodIdOneArg(PyObject *self, _Py_Identifier *name, PyObject *arg) -{ - PyObject *args[2] = {self, arg}; - size_t nargsf = 2 | PY_VECTORCALL_ARGUMENTS_OFFSET; - assert(arg != NULL); - return _PyObject_VectorcallMethodId(name, args, nargsf, _Py_NULL); -} - -PyAPI_FUNC(int) _PyObject_HasLen(PyObject *o); - -/* Guess the size of object 'o' using len(o) or o.__length_hint__(). - If neither of those return a non-negative value, then return the default - value. If one of the calls fails, this function returns -1. */ -PyAPI_FUNC(Py_ssize_t) PyObject_LengthHint(PyObject *o, Py_ssize_t); - -/* === Sequence protocol ================================================ */ - -/* Assume tp_as_sequence and sq_item exist and that 'i' does not - need to be corrected for a negative index. */ -#define PySequence_ITEM(o, i)\ - ( Py_TYPE(o)->tp_as_sequence->sq_item((o), (i)) ) - -#define PY_ITERSEARCH_COUNT 1 -#define PY_ITERSEARCH_INDEX 2 -#define PY_ITERSEARCH_CONTAINS 3 - -/* Iterate over seq. - - Result depends on the operation: - - PY_ITERSEARCH_COUNT: return # of times obj appears in seq; -1 if - error. - PY_ITERSEARCH_INDEX: return 0-based index of first occurrence of - obj in seq; set ValueError and return -1 if none found; - also return -1 on error. - PY_ITERSEARCH_CONTAINS: return 1 if obj in seq, else 0; -1 on - error. */ -PyAPI_FUNC(Py_ssize_t) _PySequence_IterSearch(PyObject *seq, - PyObject *obj, int operation); - -/* === Mapping protocol ================================================= */ - -PyAPI_FUNC(int) _PyObject_RealIsInstance(PyObject *inst, PyObject *cls); - -PyAPI_FUNC(int) _PyObject_RealIsSubclass(PyObject *derived, PyObject *cls); - -PyAPI_FUNC(char *const *) _PySequence_BytesToCharpArray(PyObject* self); - -PyAPI_FUNC(void) _Py_FreeCharPArray(char *const array[]); - -/* For internal use by buffer API functions */ -PyAPI_FUNC(void) _Py_add_one_to_index_F(int nd, Py_ssize_t *index, - const Py_ssize_t *shape); -PyAPI_FUNC(void) _Py_add_one_to_index_C(int nd, Py_ssize_t *index, - const Py_ssize_t *shape); - -/* Convert Python int to Py_ssize_t. Do nothing if the argument is None. */ -PyAPI_FUNC(int) _Py_convert_optional_to_ssize_t(PyObject *, void *); - -/* Same as PyNumber_Index but can return an instance of a subclass of int. */ -PyAPI_FUNC(PyObject *) _PyNumber_Index(PyObject *o); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/bytearrayobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/bytearrayobject.h deleted file mode 100644 index 9ba176e..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/bytearrayobject.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef Py_CPYTHON_BYTEARRAYOBJECT_H -# error "this header file must not be included directly" -#endif - -/* Object layout */ -typedef struct { - PyObject_VAR_HEAD - Py_ssize_t ob_alloc; /* How many bytes allocated in ob_bytes */ - char *ob_bytes; /* Physical backing buffer */ - char *ob_start; /* Logical start inside ob_bytes */ - Py_ssize_t ob_exports; /* How many buffer exports */ -} PyByteArrayObject; - -PyAPI_DATA(char) _PyByteArray_empty_string[]; - -/* Macros and static inline functions, trading safety for speed */ -#define _PyByteArray_CAST(op) \ - (assert(PyByteArray_Check(op)), _Py_CAST(PyByteArrayObject*, op)) - -static inline char* PyByteArray_AS_STRING(PyObject *op) -{ - PyByteArrayObject *self = _PyByteArray_CAST(op); - if (Py_SIZE(self)) { - return self->ob_start; - } - return _PyByteArray_empty_string; -} -#define PyByteArray_AS_STRING(self) PyByteArray_AS_STRING(_PyObject_CAST(self)) - -static inline Py_ssize_t PyByteArray_GET_SIZE(PyObject *op) { - PyByteArrayObject *self = _PyByteArray_CAST(op); - return Py_SIZE(self); -} -#define PyByteArray_GET_SIZE(self) PyByteArray_GET_SIZE(_PyObject_CAST(self)) diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/bytesobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/bytesobject.h deleted file mode 100644 index e982031..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/bytesobject.h +++ /dev/null @@ -1,129 +0,0 @@ -#ifndef Py_CPYTHON_BYTESOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - PyObject_VAR_HEAD - Py_DEPRECATED(3.11) Py_hash_t ob_shash; - char ob_sval[1]; - - /* Invariants: - * ob_sval contains space for 'ob_size+1' elements. - * ob_sval[ob_size] == 0. - * ob_shash is the hash of the byte string or -1 if not computed yet. - */ -} PyBytesObject; - -PyAPI_FUNC(int) _PyBytes_Resize(PyObject **, Py_ssize_t); -PyAPI_FUNC(PyObject*) _PyBytes_FormatEx( - const char *format, - Py_ssize_t format_len, - PyObject *args, - int use_bytearray); -PyAPI_FUNC(PyObject*) _PyBytes_FromHex( - PyObject *string, - int use_bytearray); - -/* Helper for PyBytes_DecodeEscape that detects invalid escape chars. */ -PyAPI_FUNC(PyObject *) _PyBytes_DecodeEscape(const char *, Py_ssize_t, - const char *, const char **); - -/* Macros and static inline functions, trading safety for speed */ -#define _PyBytes_CAST(op) \ - (assert(PyBytes_Check(op)), _Py_CAST(PyBytesObject*, op)) - -static inline char* PyBytes_AS_STRING(PyObject *op) -{ - return _PyBytes_CAST(op)->ob_sval; -} -#define PyBytes_AS_STRING(op) PyBytes_AS_STRING(_PyObject_CAST(op)) - -static inline Py_ssize_t PyBytes_GET_SIZE(PyObject *op) { - PyBytesObject *self = _PyBytes_CAST(op); - return Py_SIZE(self); -} -#define PyBytes_GET_SIZE(self) PyBytes_GET_SIZE(_PyObject_CAST(self)) - -/* _PyBytes_Join(sep, x) is like sep.join(x). sep must be PyBytesObject*, - x must be an iterable object. */ -PyAPI_FUNC(PyObject *) _PyBytes_Join(PyObject *sep, PyObject *x); - - -/* The _PyBytesWriter structure is big: it contains an embedded "stack buffer". - A _PyBytesWriter variable must be declared at the end of variables in a - function to optimize the memory allocation on the stack. */ -typedef struct { - /* bytes, bytearray or NULL (when the small buffer is used) */ - PyObject *buffer; - - /* Number of allocated size. */ - Py_ssize_t allocated; - - /* Minimum number of allocated bytes, - incremented by _PyBytesWriter_Prepare() */ - Py_ssize_t min_size; - - /* If non-zero, use a bytearray instead of a bytes object for buffer. */ - int use_bytearray; - - /* If non-zero, overallocate the buffer (default: 0). - This flag must be zero if use_bytearray is non-zero. */ - int overallocate; - - /* Stack buffer */ - int use_small_buffer; - char small_buffer[512]; -} _PyBytesWriter; - -/* Initialize a bytes writer - - By default, the overallocation is disabled. Set the overallocate attribute - to control the allocation of the buffer. */ -PyAPI_FUNC(void) _PyBytesWriter_Init(_PyBytesWriter *writer); - -/* Get the buffer content and reset the writer. - Return a bytes object, or a bytearray object if use_bytearray is non-zero. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(PyObject *) _PyBytesWriter_Finish(_PyBytesWriter *writer, - void *str); - -/* Deallocate memory of a writer (clear its internal buffer). */ -PyAPI_FUNC(void) _PyBytesWriter_Dealloc(_PyBytesWriter *writer); - -/* Allocate the buffer to write size bytes. - Return the pointer to the beginning of buffer data. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(void*) _PyBytesWriter_Alloc(_PyBytesWriter *writer, - Py_ssize_t size); - -/* Ensure that the buffer is large enough to write *size* bytes. - Add size to the writer minimum size (min_size attribute). - - str is the current pointer inside the buffer. - Return the updated current pointer inside the buffer. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(void*) _PyBytesWriter_Prepare(_PyBytesWriter *writer, - void *str, - Py_ssize_t size); - -/* Resize the buffer to make it larger. - The new buffer may be larger than size bytes because of overallocation. - Return the updated current pointer inside the buffer. - Raise an exception and return NULL on error. - - Note: size must be greater than the number of allocated bytes in the writer. - - This function doesn't use the writer minimum size (min_size attribute). - - See also _PyBytesWriter_Prepare(). - */ -PyAPI_FUNC(void*) _PyBytesWriter_Resize(_PyBytesWriter *writer, - void *str, - Py_ssize_t size); - -/* Write bytes. - Raise an exception and return NULL on error. */ -PyAPI_FUNC(void*) _PyBytesWriter_WriteBytes(_PyBytesWriter *writer, - void *str, - const void *bytes, - Py_ssize_t size); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/cellobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/cellobject.h deleted file mode 100644 index 47a6a49..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/cellobject.h +++ /dev/null @@ -1,44 +0,0 @@ -/* Cell object interface */ - -#ifndef Py_LIMITED_API -#ifndef Py_CELLOBJECT_H -#define Py_CELLOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct { - PyObject_HEAD - /* Content of the cell or NULL when empty */ - PyObject *ob_ref; -} PyCellObject; - -PyAPI_DATA(PyTypeObject) PyCell_Type; - -#define PyCell_Check(op) Py_IS_TYPE((op), &PyCell_Type) - -PyAPI_FUNC(PyObject *) PyCell_New(PyObject *); -PyAPI_FUNC(PyObject *) PyCell_Get(PyObject *); -PyAPI_FUNC(int) PyCell_Set(PyObject *, PyObject *); - -static inline PyObject* PyCell_GET(PyObject *op) { - PyCellObject *cell; - assert(PyCell_Check(op)); - cell = _Py_CAST(PyCellObject*, op); - return cell->ob_ref; -} -#define PyCell_GET(op) PyCell_GET(_PyObject_CAST(op)) - -static inline void PyCell_SET(PyObject *op, PyObject *value) { - PyCellObject *cell; - assert(PyCell_Check(op)); - cell = _Py_CAST(PyCellObject*, op); - cell->ob_ref = value; -} -#define PyCell_SET(op, value) PyCell_SET(_PyObject_CAST(op), (value)) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_TUPLEOBJECT_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/ceval.h b/_Pre_Builds/_Python312_cpp/include/cpython/ceval.h deleted file mode 100644 index a9616bd..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/ceval.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef Py_CPYTHON_CEVAL_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(void) PyEval_SetProfile(Py_tracefunc, PyObject *); -PyAPI_FUNC(void) PyEval_SetProfileAllThreads(Py_tracefunc, PyObject *); -PyAPI_DATA(int) _PyEval_SetProfile(PyThreadState *tstate, Py_tracefunc func, PyObject *arg); -PyAPI_FUNC(void) PyEval_SetTrace(Py_tracefunc, PyObject *); -PyAPI_FUNC(void) PyEval_SetTraceAllThreads(Py_tracefunc, PyObject *); -PyAPI_FUNC(int) _PyEval_SetTrace(PyThreadState *tstate, Py_tracefunc func, PyObject *arg); - -/* Helper to look up a builtin object */ -PyAPI_FUNC(PyObject *) _PyEval_GetBuiltin(PyObject *); -PyAPI_FUNC(PyObject *) _PyEval_GetBuiltinId(_Py_Identifier *); -/* Look at the current frame's (if any) code's co_flags, and turn on - the corresponding compiler flags in cf->cf_flags. Return 1 if any - flag was set, else return 0. */ -PyAPI_FUNC(int) PyEval_MergeCompilerFlags(PyCompilerFlags *cf); - -PyAPI_FUNC(PyObject *) _PyEval_EvalFrameDefault(PyThreadState *tstate, struct _PyInterpreterFrame *f, int exc); - -PyAPI_FUNC(void) _PyEval_SetSwitchInterval(unsigned long microseconds); -PyAPI_FUNC(unsigned long) _PyEval_GetSwitchInterval(void); - -PyAPI_FUNC(int) _PyEval_MakePendingCalls(PyThreadState *); - -PyAPI_FUNC(Py_ssize_t) PyUnstable_Eval_RequestCodeExtraIndex(freefunc); -// Old name -- remove when this API changes: -_Py_DEPRECATED_EXTERNALLY(3.12) static inline Py_ssize_t -_PyEval_RequestCodeExtraIndex(freefunc f) { - return PyUnstable_Eval_RequestCodeExtraIndex(f); -} - -PyAPI_FUNC(int) _PyEval_SliceIndex(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) _PyEval_SliceIndexNotNone(PyObject *, Py_ssize_t *); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/classobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/classobject.h deleted file mode 100644 index d7c9ddd..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/classobject.h +++ /dev/null @@ -1,71 +0,0 @@ -/* Former class object interface -- now only bound methods are here */ - -/* Revealing some structures (not for general use) */ - -#ifndef Py_LIMITED_API -#ifndef Py_CLASSOBJECT_H -#define Py_CLASSOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct { - PyObject_HEAD - PyObject *im_func; /* The callable object implementing the method */ - PyObject *im_self; /* The instance it is bound to */ - PyObject *im_weakreflist; /* List of weak references */ - vectorcallfunc vectorcall; -} PyMethodObject; - -PyAPI_DATA(PyTypeObject) PyMethod_Type; - -#define PyMethod_Check(op) Py_IS_TYPE((op), &PyMethod_Type) - -PyAPI_FUNC(PyObject *) PyMethod_New(PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) PyMethod_Function(PyObject *); -PyAPI_FUNC(PyObject *) PyMethod_Self(PyObject *); - -#define _PyMethod_CAST(meth) \ - (assert(PyMethod_Check(meth)), _Py_CAST(PyMethodObject*, meth)) - -/* Static inline functions for direct access to these values. - Type checks are *not* done, so use with care. */ -static inline PyObject* PyMethod_GET_FUNCTION(PyObject *meth) { - return _PyMethod_CAST(meth)->im_func; -} -#define PyMethod_GET_FUNCTION(meth) PyMethod_GET_FUNCTION(_PyObject_CAST(meth)) - -static inline PyObject* PyMethod_GET_SELF(PyObject *meth) { - return _PyMethod_CAST(meth)->im_self; -} -#define PyMethod_GET_SELF(meth) PyMethod_GET_SELF(_PyObject_CAST(meth)) - -typedef struct { - PyObject_HEAD - PyObject *func; -} PyInstanceMethodObject; - -PyAPI_DATA(PyTypeObject) PyInstanceMethod_Type; - -#define PyInstanceMethod_Check(op) Py_IS_TYPE((op), &PyInstanceMethod_Type) - -PyAPI_FUNC(PyObject *) PyInstanceMethod_New(PyObject *); -PyAPI_FUNC(PyObject *) PyInstanceMethod_Function(PyObject *); - -#define _PyInstanceMethod_CAST(meth) \ - (assert(PyInstanceMethod_Check(meth)), \ - _Py_CAST(PyInstanceMethodObject*, meth)) - -/* Static inline function for direct access to these values. - Type checks are *not* done, so use with care. */ -static inline PyObject* PyInstanceMethod_GET_FUNCTION(PyObject *meth) { - return _PyInstanceMethod_CAST(meth)->func; -} -#define PyInstanceMethod_GET_FUNCTION(meth) PyInstanceMethod_GET_FUNCTION(_PyObject_CAST(meth)) - -#ifdef __cplusplus -} -#endif -#endif // !Py_CLASSOBJECT_H -#endif // !Py_LIMITED_API diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/code.h b/_Pre_Builds/_Python312_cpp/include/cpython/code.h deleted file mode 100644 index 03834b2..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/code.h +++ /dev/null @@ -1,389 +0,0 @@ -/* Definitions for bytecode */ - -#ifndef Py_LIMITED_API -#ifndef Py_CODE_H -#define Py_CODE_H - -#ifdef __cplusplus -extern "C" { -#endif - -/* Count of all local monitoring events */ -#define _PY_MONITORING_LOCAL_EVENTS 10 -/* Count of all "real" monitoring events (not derived from other events) */ -#define _PY_MONITORING_UNGROUPED_EVENTS 15 -/* Count of all monitoring events */ -#define _PY_MONITORING_EVENTS 17 - -/* Tables of which tools are active for each monitored event. */ -/* For 3.12 ABI compatibility this is over sized */ -typedef struct _Py_LocalMonitors { - /* Only _PY_MONITORING_LOCAL_EVENTS of these are used */ - uint8_t tools[_PY_MONITORING_UNGROUPED_EVENTS]; -} _Py_LocalMonitors; - -typedef struct _Py_GlobalMonitors { - uint8_t tools[_PY_MONITORING_UNGROUPED_EVENTS]; -} _Py_GlobalMonitors; - -/* Each instruction in a code object is a fixed-width value, - * currently 2 bytes: 1-byte opcode + 1-byte oparg. The EXTENDED_ARG - * opcode allows for larger values but the current limit is 3 uses - * of EXTENDED_ARG (see Python/compile.c), for a maximum - * 32-bit value. This aligns with the note in Python/compile.c - * (compiler_addop_i_line) indicating that the max oparg value is - * 2**32 - 1, rather than INT_MAX. - */ - -typedef union { - uint16_t cache; - struct { - uint8_t code; - uint8_t arg; - } op; -} _Py_CODEUNIT; - - -/* These macros only remain defined for compatibility. */ -#define _Py_OPCODE(word) ((word).op.code) -#define _Py_OPARG(word) ((word).op.arg) - -static inline _Py_CODEUNIT -_py_make_codeunit(uint8_t opcode, uint8_t oparg) -{ - // No designated initialisers because of C++ compat - _Py_CODEUNIT word; - word.op.code = opcode; - word.op.arg = oparg; - return word; -} - -static inline void -_py_set_opcode(_Py_CODEUNIT *word, uint8_t opcode) -{ - word->op.code = opcode; -} - -#define _Py_MAKE_CODEUNIT(opcode, oparg) _py_make_codeunit((opcode), (oparg)) -#define _Py_SET_OPCODE(word, opcode) _py_set_opcode(&(word), (opcode)) - - -typedef struct { - PyObject *_co_code; - PyObject *_co_varnames; - PyObject *_co_cellvars; - PyObject *_co_freevars; -} _PyCoCached; - -/* Ancilliary data structure used for instrumentation. - Line instrumentation creates an array of - these. One entry per code unit.*/ -typedef struct { - uint8_t original_opcode; - int8_t line_delta; -} _PyCoLineInstrumentationData; - -/* Main data structure used for instrumentation. - * This is allocated when needed for instrumentation - */ -typedef struct { - /* Monitoring specific to this code object */ - _Py_LocalMonitors local_monitors; - /* Monitoring that is active on this code object */ - _Py_LocalMonitors active_monitors; - /* The tools that are to be notified for events for the matching code unit */ - uint8_t *tools; - /* Information to support line events */ - _PyCoLineInstrumentationData *lines; - /* The tools that are to be notified for line events for the matching code unit */ - uint8_t *line_tools; - /* Information to support instruction events */ - /* The underlying instructions, which can themselves be instrumented */ - uint8_t *per_instruction_opcodes; - /* The tools that are to be notified for instruction events for the matching code unit */ - uint8_t *per_instruction_tools; -} _PyCoMonitoringData; - -// To avoid repeating ourselves in deepfreeze.py, all PyCodeObject members are -// defined in this macro: -#define _PyCode_DEF(SIZE) { \ - PyObject_VAR_HEAD \ - \ - /* Note only the following fields are used in hash and/or comparisons \ - * \ - * - co_name \ - * - co_argcount \ - * - co_posonlyargcount \ - * - co_kwonlyargcount \ - * - co_nlocals \ - * - co_stacksize \ - * - co_flags \ - * - co_firstlineno \ - * - co_consts \ - * - co_names \ - * - co_localsplusnames \ - * This is done to preserve the name and line number for tracebacks \ - * and debuggers; otherwise, constant de-duplication would collapse \ - * identical functions/lambdas defined on different lines. \ - */ \ - \ - /* These fields are set with provided values on new code objects. */ \ - \ - /* The hottest fields (in the eval loop) are grouped here at the top. */ \ - PyObject *co_consts; /* list (constants used) */ \ - PyObject *co_names; /* list of strings (names used) */ \ - PyObject *co_exceptiontable; /* Byte string encoding exception handling \ - table */ \ - int co_flags; /* CO_..., see below */ \ - \ - /* The rest are not so impactful on performance. */ \ - int co_argcount; /* #arguments, except *args */ \ - int co_posonlyargcount; /* #positional only arguments */ \ - int co_kwonlyargcount; /* #keyword only arguments */ \ - int co_stacksize; /* #entries needed for evaluation stack */ \ - int co_firstlineno; /* first source line number */ \ - \ - /* redundant values (derived from co_localsplusnames and \ - co_localspluskinds) */ \ - int co_nlocalsplus; /* number of local + cell + free variables */ \ - int co_framesize; /* Size of frame in words */ \ - int co_nlocals; /* number of local variables */ \ - int co_ncellvars; /* total number of cell variables */ \ - int co_nfreevars; /* number of free variables */ \ - uint32_t co_version; /* version number */ \ - \ - PyObject *co_localsplusnames; /* tuple mapping offsets to names */ \ - PyObject *co_localspluskinds; /* Bytes mapping to local kinds (one byte \ - per variable) */ \ - PyObject *co_filename; /* unicode (where it was loaded from) */ \ - PyObject *co_name; /* unicode (name, for reference) */ \ - PyObject *co_qualname; /* unicode (qualname, for reference) */ \ - PyObject *co_linetable; /* bytes object that holds location info */ \ - PyObject *co_weakreflist; /* to support weakrefs to code objects */ \ - _PyCoCached *_co_cached; /* cached co_* attributes */ \ - uint64_t _co_instrumentation_version; /* current instrumentation version */ \ - _PyCoMonitoringData *_co_monitoring; /* Monitoring data */ \ - int _co_firsttraceable; /* index of first traceable instruction */ \ - /* Scratch space for extra data relating to the code object. \ - Type is a void* to keep the format private in codeobject.c to force \ - people to go through the proper APIs. */ \ - void *co_extra; \ - char co_code_adaptive[(SIZE)]; \ -} - -/* Bytecode object */ -struct PyCodeObject _PyCode_DEF(1); - -/* Masks for co_flags above */ -#define CO_OPTIMIZED 0x0001 -#define CO_NEWLOCALS 0x0002 -#define CO_VARARGS 0x0004 -#define CO_VARKEYWORDS 0x0008 -#define CO_NESTED 0x0010 -#define CO_GENERATOR 0x0020 - -/* The CO_COROUTINE flag is set for coroutine functions (defined with - ``async def`` keywords) */ -#define CO_COROUTINE 0x0080 -#define CO_ITERABLE_COROUTINE 0x0100 -#define CO_ASYNC_GENERATOR 0x0200 - -/* bpo-39562: These constant values are changed in Python 3.9 - to prevent collision with compiler flags. CO_FUTURE_ and PyCF_ - constants must be kept unique. PyCF_ constants can use bits from - 0x0100 to 0x10000. CO_FUTURE_ constants use bits starting at 0x20000. */ -#define CO_FUTURE_DIVISION 0x20000 -#define CO_FUTURE_ABSOLUTE_IMPORT 0x40000 /* do absolute imports by default */ -#define CO_FUTURE_WITH_STATEMENT 0x80000 -#define CO_FUTURE_PRINT_FUNCTION 0x100000 -#define CO_FUTURE_UNICODE_LITERALS 0x200000 - -#define CO_FUTURE_BARRY_AS_BDFL 0x400000 -#define CO_FUTURE_GENERATOR_STOP 0x800000 -#define CO_FUTURE_ANNOTATIONS 0x1000000 - -/* This should be defined if a future statement modifies the syntax. - For example, when a keyword is added. -*/ -#define PY_PARSER_REQUIRES_FUTURE_KEYWORD - -#define CO_MAXBLOCKS 20 /* Max static block nesting within a function */ - -PyAPI_DATA(PyTypeObject) PyCode_Type; - -#define PyCode_Check(op) Py_IS_TYPE((op), &PyCode_Type) - -static inline Py_ssize_t PyCode_GetNumFree(PyCodeObject *op) { - assert(PyCode_Check(op)); - return op->co_nfreevars; -} - -static inline int PyCode_GetFirstFree(PyCodeObject *op) { - assert(PyCode_Check(op)); - return op->co_nlocalsplus - op->co_nfreevars; -} - -#define _PyCode_CODE(CO) _Py_RVALUE((_Py_CODEUNIT *)(CO)->co_code_adaptive) -#define _PyCode_NBYTES(CO) (Py_SIZE(CO) * (Py_ssize_t)sizeof(_Py_CODEUNIT)) - -/* Unstable public interface */ -PyAPI_FUNC(PyCodeObject *) PyUnstable_Code_New( - int, int, int, int, int, PyObject *, PyObject *, - PyObject *, PyObject *, PyObject *, PyObject *, - PyObject *, PyObject *, PyObject *, int, PyObject *, - PyObject *); - -PyAPI_FUNC(PyCodeObject *) PyUnstable_Code_NewWithPosOnlyArgs( - int, int, int, int, int, int, PyObject *, PyObject *, - PyObject *, PyObject *, PyObject *, PyObject *, - PyObject *, PyObject *, PyObject *, int, PyObject *, - PyObject *); - /* same as struct above */ -// Old names -- remove when this API changes: -_Py_DEPRECATED_EXTERNALLY(3.12) static inline PyCodeObject * -PyCode_New( - int a, int b, int c, int d, int e, PyObject *f, PyObject *g, - PyObject *h, PyObject *i, PyObject *j, PyObject *k, - PyObject *l, PyObject *m, PyObject *n, int o, PyObject *p, - PyObject *q) -{ - return PyUnstable_Code_New( - a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); -} -_Py_DEPRECATED_EXTERNALLY(3.12) static inline PyCodeObject * -PyCode_NewWithPosOnlyArgs( - int a, int poac, int b, int c, int d, int e, PyObject *f, PyObject *g, - PyObject *h, PyObject *i, PyObject *j, PyObject *k, - PyObject *l, PyObject *m, PyObject *n, int o, PyObject *p, - PyObject *q) -{ - return PyUnstable_Code_NewWithPosOnlyArgs( - a, poac, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); -} - -/* Creates a new empty code object with the specified source location. */ -PyAPI_FUNC(PyCodeObject *) -PyCode_NewEmpty(const char *filename, const char *funcname, int firstlineno); - -/* Return the line number associated with the specified bytecode index - in this code object. If you just need the line number of a frame, - use PyFrame_GetLineNumber() instead. */ -PyAPI_FUNC(int) PyCode_Addr2Line(PyCodeObject *, int); - -PyAPI_FUNC(int) PyCode_Addr2Location(PyCodeObject *, int, int *, int *, int *, int *); - -#define PY_FOREACH_CODE_EVENT(V) \ - V(CREATE) \ - V(DESTROY) - -typedef enum { - #define PY_DEF_EVENT(op) PY_CODE_EVENT_##op, - PY_FOREACH_CODE_EVENT(PY_DEF_EVENT) - #undef PY_DEF_EVENT -} PyCodeEvent; - - -/* - * A callback that is invoked for different events in a code object's lifecycle. - * - * The callback is invoked with a borrowed reference to co, after it is - * created and before it is destroyed. - * - * If the callback sets an exception, it must return -1. Otherwise - * it should return 0. - */ -typedef int (*PyCode_WatchCallback)( - PyCodeEvent event, - PyCodeObject* co); - -/* - * Register a per-interpreter callback that will be invoked for code object - * lifecycle events. - * - * Returns a handle that may be passed to PyCode_ClearWatcher on success, - * or -1 and sets an error if no more handles are available. - */ -PyAPI_FUNC(int) PyCode_AddWatcher(PyCode_WatchCallback callback); - -/* - * Clear the watcher associated with the watcher_id handle. - * - * Returns 0 on success or -1 if no watcher exists for the provided id. - */ -PyAPI_FUNC(int) PyCode_ClearWatcher(int watcher_id); - -/* for internal use only */ -struct _opaque { - int computed_line; - const uint8_t *lo_next; - const uint8_t *limit; -}; - -typedef struct _line_offsets { - int ar_start; - int ar_end; - int ar_line; - struct _opaque opaque; -} PyCodeAddressRange; - -/* Update *bounds to describe the first and one-past-the-last instructions in the - same line as lasti. Return the number of that line. -*/ -PyAPI_FUNC(int) _PyCode_CheckLineNumber(int lasti, PyCodeAddressRange *bounds); - -/* Create a comparable key used to compare constants taking in account the - * object type. It is used to make sure types are not coerced (e.g., float and - * complex) _and_ to distinguish 0.0 from -0.0 e.g. on IEEE platforms - * - * Return (type(obj), obj, ...): a tuple with variable size (at least 2 items) - * depending on the type and the value. The type is the first item to not - * compare bytes and str which can raise a BytesWarning exception. */ -PyAPI_FUNC(PyObject*) _PyCode_ConstantKey(PyObject *obj); - -PyAPI_FUNC(PyObject*) PyCode_Optimize(PyObject *code, PyObject* consts, - PyObject *names, PyObject *lnotab); - -PyAPI_FUNC(int) PyUnstable_Code_GetExtra( - PyObject *code, Py_ssize_t index, void **extra); -PyAPI_FUNC(int) PyUnstable_Code_SetExtra( - PyObject *code, Py_ssize_t index, void *extra); -// Old names -- remove when this API changes: -_Py_DEPRECATED_EXTERNALLY(3.12) static inline int -_PyCode_GetExtra(PyObject *code, Py_ssize_t index, void **extra) -{ - return PyUnstable_Code_GetExtra(code, index, extra); -} -_Py_DEPRECATED_EXTERNALLY(3.12) static inline int -_PyCode_SetExtra(PyObject *code, Py_ssize_t index, void *extra) -{ - return PyUnstable_Code_SetExtra(code, index, extra); -} - -/* Equivalent to getattr(code, 'co_code') in Python. - Returns a strong reference to a bytes object. */ -PyAPI_FUNC(PyObject *) PyCode_GetCode(PyCodeObject *code); -/* Equivalent to getattr(code, 'co_varnames') in Python. */ -PyAPI_FUNC(PyObject *) PyCode_GetVarnames(PyCodeObject *code); -/* Equivalent to getattr(code, 'co_cellvars') in Python. */ -PyAPI_FUNC(PyObject *) PyCode_GetCellvars(PyCodeObject *code); -/* Equivalent to getattr(code, 'co_freevars') in Python. */ -PyAPI_FUNC(PyObject *) PyCode_GetFreevars(PyCodeObject *code); - -typedef enum _PyCodeLocationInfoKind { - /* short forms are 0 to 9 */ - PY_CODE_LOCATION_INFO_SHORT0 = 0, - /* one lineforms are 10 to 12 */ - PY_CODE_LOCATION_INFO_ONE_LINE0 = 10, - PY_CODE_LOCATION_INFO_ONE_LINE1 = 11, - PY_CODE_LOCATION_INFO_ONE_LINE2 = 12, - - PY_CODE_LOCATION_INFO_NO_COLUMNS = 13, - PY_CODE_LOCATION_INFO_LONG = 14, - PY_CODE_LOCATION_INFO_NONE = 15 -} _PyCodeLocationInfoKind; - -#ifdef __cplusplus -} -#endif -#endif // !Py_CODE_H -#endif // !Py_LIMITED_API diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/compile.h b/_Pre_Builds/_Python312_cpp/include/cpython/compile.h deleted file mode 100644 index f5a62a8..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/compile.h +++ /dev/null @@ -1,69 +0,0 @@ -#ifndef Py_CPYTHON_COMPILE_H -# error "this header file must not be included directly" -#endif - -/* Public interface */ -#define PyCF_MASK (CO_FUTURE_DIVISION | CO_FUTURE_ABSOLUTE_IMPORT | \ - CO_FUTURE_WITH_STATEMENT | CO_FUTURE_PRINT_FUNCTION | \ - CO_FUTURE_UNICODE_LITERALS | CO_FUTURE_BARRY_AS_BDFL | \ - CO_FUTURE_GENERATOR_STOP | CO_FUTURE_ANNOTATIONS) -#define PyCF_MASK_OBSOLETE (CO_NESTED) - -/* bpo-39562: CO_FUTURE_ and PyCF_ constants must be kept unique. - PyCF_ constants can use bits from 0x0100 to 0x10000. - CO_FUTURE_ constants use bits starting at 0x20000. */ -#define PyCF_SOURCE_IS_UTF8 0x0100 -#define PyCF_DONT_IMPLY_DEDENT 0x0200 -#define PyCF_ONLY_AST 0x0400 -#define PyCF_IGNORE_COOKIE 0x0800 -#define PyCF_TYPE_COMMENTS 0x1000 -#define PyCF_ALLOW_TOP_LEVEL_AWAIT 0x2000 -#define PyCF_ALLOW_INCOMPLETE_INPUT 0x4000 -#define PyCF_COMPILE_MASK (PyCF_ONLY_AST | PyCF_ALLOW_TOP_LEVEL_AWAIT | \ - PyCF_TYPE_COMMENTS | PyCF_DONT_IMPLY_DEDENT | \ - PyCF_ALLOW_INCOMPLETE_INPUT) - -typedef struct { - int cf_flags; /* bitmask of CO_xxx flags relevant to future */ - int cf_feature_version; /* minor Python version (PyCF_ONLY_AST) */ -} PyCompilerFlags; - -#define _PyCompilerFlags_INIT \ - (PyCompilerFlags){.cf_flags = 0, .cf_feature_version = PY_MINOR_VERSION} - -/* source location information */ -typedef struct { - int lineno; - int end_lineno; - int col_offset; - int end_col_offset; -} _PyCompilerSrcLocation; - -#define SRC_LOCATION_FROM_AST(n) \ - (_PyCompilerSrcLocation){ \ - .lineno = (n)->lineno, \ - .end_lineno = (n)->end_lineno, \ - .col_offset = (n)->col_offset, \ - .end_col_offset = (n)->end_col_offset } - -/* Future feature support */ - -typedef struct { - int ff_features; /* flags set by future statements */ - _PyCompilerSrcLocation ff_location; /* location of last future statement */ -} PyFutureFeatures; - -#define FUTURE_NESTED_SCOPES "nested_scopes" -#define FUTURE_GENERATORS "generators" -#define FUTURE_DIVISION "division" -#define FUTURE_ABSOLUTE_IMPORT "absolute_import" -#define FUTURE_WITH_STATEMENT "with_statement" -#define FUTURE_PRINT_FUNCTION "print_function" -#define FUTURE_UNICODE_LITERALS "unicode_literals" -#define FUTURE_BARRY_AS_BDFL "barry_as_FLUFL" -#define FUTURE_GENERATOR_STOP "generator_stop" -#define FUTURE_ANNOTATIONS "annotations" - -#define PY_INVALID_STACK_EFFECT INT_MAX -PyAPI_FUNC(int) PyCompile_OpcodeStackEffect(int opcode, int oparg); -PyAPI_FUNC(int) PyCompile_OpcodeStackEffectWithJump(int opcode, int oparg, int jump); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/complexobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/complexobject.h deleted file mode 100644 index b7d7283..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/complexobject.h +++ /dev/null @@ -1,44 +0,0 @@ -#ifndef Py_CPYTHON_COMPLEXOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - double real; - double imag; -} Py_complex; - -/* Operations on complex numbers from complexmodule.c */ - -PyAPI_FUNC(Py_complex) _Py_c_sum(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_diff(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_neg(Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_prod(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_quot(Py_complex, Py_complex); -PyAPI_FUNC(Py_complex) _Py_c_pow(Py_complex, Py_complex); -PyAPI_FUNC(double) _Py_c_abs(Py_complex); - -/* Complex object interface */ - -/* -PyComplexObject represents a complex number with double-precision -real and imaginary parts. -*/ -typedef struct { - PyObject_HEAD - Py_complex cval; -} PyComplexObject; - -PyAPI_FUNC(PyObject *) PyComplex_FromCComplex(Py_complex); - -PyAPI_FUNC(Py_complex) PyComplex_AsCComplex(PyObject *op); - -#ifdef Py_BUILD_CORE -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -extern int _PyComplex_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); -#endif // Py_BUILD_CORE diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/context.h b/_Pre_Builds/_Python312_cpp/include/cpython/context.h deleted file mode 100644 index 9879fc7..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/context.h +++ /dev/null @@ -1,78 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_CONTEXT_H -#define Py_CONTEXT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyContext_Type; -typedef struct _pycontextobject PyContext; - -PyAPI_DATA(PyTypeObject) PyContextVar_Type; -typedef struct _pycontextvarobject PyContextVar; - -PyAPI_DATA(PyTypeObject) PyContextToken_Type; -typedef struct _pycontexttokenobject PyContextToken; - - -#define PyContext_CheckExact(o) Py_IS_TYPE((o), &PyContext_Type) -#define PyContextVar_CheckExact(o) Py_IS_TYPE((o), &PyContextVar_Type) -#define PyContextToken_CheckExact(o) Py_IS_TYPE((o), &PyContextToken_Type) - - -PyAPI_FUNC(PyObject *) PyContext_New(void); -PyAPI_FUNC(PyObject *) PyContext_Copy(PyObject *); -PyAPI_FUNC(PyObject *) PyContext_CopyCurrent(void); - -PyAPI_FUNC(int) PyContext_Enter(PyObject *); -PyAPI_FUNC(int) PyContext_Exit(PyObject *); - - -/* Create a new context variable. - - default_value can be NULL. -*/ -PyAPI_FUNC(PyObject *) PyContextVar_New( - const char *name, PyObject *default_value); - - -/* Get a value for the variable. - - Returns -1 if an error occurred during lookup. - - Returns 0 if value either was or was not found. - - If value was found, *value will point to it. - If not, it will point to: - - - default_value, if not NULL; - - the default value of "var", if not NULL; - - NULL. - - '*value' will be a new ref, if not NULL. -*/ -PyAPI_FUNC(int) PyContextVar_Get( - PyObject *var, PyObject *default_value, PyObject **value); - - -/* Set a new value for the variable. - Returns NULL if an error occurs. -*/ -PyAPI_FUNC(PyObject *) PyContextVar_Set(PyObject *var, PyObject *value); - - -/* Reset a variable to its previous value. - Returns 0 on success, -1 on error. -*/ -PyAPI_FUNC(int) PyContextVar_Reset(PyObject *var, PyObject *token); - - -/* This method is exposed only for CPython tests. Don not use it. */ -PyAPI_FUNC(PyObject *) _PyContext_NewHamtForTests(void); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CONTEXT_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/descrobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/descrobject.h deleted file mode 100644 index e2ea1b9..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/descrobject.h +++ /dev/null @@ -1,64 +0,0 @@ -#ifndef Py_CPYTHON_DESCROBJECT_H -# error "this header file must not be included directly" -#endif - -typedef PyObject *(*wrapperfunc)(PyObject *self, PyObject *args, - void *wrapped); - -typedef PyObject *(*wrapperfunc_kwds)(PyObject *self, PyObject *args, - void *wrapped, PyObject *kwds); - -struct wrapperbase { - const char *name; - int offset; - void *function; - wrapperfunc wrapper; - const char *doc; - int flags; - PyObject *name_strobj; -}; - -/* Flags for above struct */ -#define PyWrapperFlag_KEYWORDS 1 /* wrapper function takes keyword args */ - -/* Various kinds of descriptor objects */ - -typedef struct { - PyObject_HEAD - PyTypeObject *d_type; - PyObject *d_name; - PyObject *d_qualname; -} PyDescrObject; - -#define PyDescr_COMMON PyDescrObject d_common - -#define PyDescr_TYPE(x) (((PyDescrObject *)(x))->d_type) -#define PyDescr_NAME(x) (((PyDescrObject *)(x))->d_name) - -typedef struct { - PyDescr_COMMON; - PyMethodDef *d_method; - vectorcallfunc vectorcall; -} PyMethodDescrObject; - -typedef struct { - PyDescr_COMMON; - PyMemberDef *d_member; -} PyMemberDescrObject; - -typedef struct { - PyDescr_COMMON; - PyGetSetDef *d_getset; -} PyGetSetDescrObject; - -typedef struct { - PyDescr_COMMON; - struct wrapperbase *d_base; - void *d_wrapped; /* This can be any function pointer */ -} PyWrapperDescrObject; - -PyAPI_DATA(PyTypeObject) _PyMethodWrapper_Type; - -PyAPI_FUNC(PyObject *) PyDescr_NewWrapper(PyTypeObject *, - struct wrapperbase *, void *); -PyAPI_FUNC(int) PyDescr_IsData(PyObject *); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/dictobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/dictobject.h deleted file mode 100644 index ddada92..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/dictobject.h +++ /dev/null @@ -1,118 +0,0 @@ -#ifndef Py_CPYTHON_DICTOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct _dictkeysobject PyDictKeysObject; -typedef struct _dictvalues PyDictValues; - -/* The ma_values pointer is NULL for a combined table - * or points to an array of PyObject* for a split table - */ -typedef struct { - PyObject_HEAD - - /* Number of items in the dictionary */ - Py_ssize_t ma_used; - - /* Dictionary version: globally unique, value change each time - the dictionary is modified */ -#ifdef Py_BUILD_CORE - uint64_t ma_version_tag; -#else - Py_DEPRECATED(3.12) uint64_t ma_version_tag; -#endif - - PyDictKeysObject *ma_keys; - - /* If ma_values is NULL, the table is "combined": keys and values - are stored in ma_keys. - - If ma_values is not NULL, the table is split: - keys are stored in ma_keys and values are stored in ma_values */ - PyDictValues *ma_values; -} PyDictObject; - -PyAPI_FUNC(PyObject *) _PyDict_GetItem_KnownHash(PyObject *mp, PyObject *key, - Py_hash_t hash); -PyAPI_FUNC(PyObject *) _PyDict_GetItemWithError(PyObject *dp, PyObject *key); -PyAPI_FUNC(PyObject *) _PyDict_GetItemIdWithError(PyObject *dp, - _Py_Identifier *key); -PyAPI_FUNC(PyObject *) _PyDict_GetItemStringWithError(PyObject *, const char *); -PyAPI_FUNC(PyObject *) PyDict_SetDefault( - PyObject *mp, PyObject *key, PyObject *defaultobj); -PyAPI_FUNC(int) _PyDict_SetItem_KnownHash(PyObject *mp, PyObject *key, - PyObject *item, Py_hash_t hash); -PyAPI_FUNC(int) _PyDict_DelItem_KnownHash(PyObject *mp, PyObject *key, - Py_hash_t hash); -PyAPI_FUNC(int) _PyDict_DelItemIf(PyObject *mp, PyObject *key, - int (*predicate)(PyObject *value)); -PyAPI_FUNC(int) _PyDict_Next( - PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value, Py_hash_t *hash); - -/* Get the number of items of a dictionary. */ -static inline Py_ssize_t PyDict_GET_SIZE(PyObject *op) { - PyDictObject *mp; - assert(PyDict_Check(op)); - mp = _Py_CAST(PyDictObject*, op); - return mp->ma_used; -} -#define PyDict_GET_SIZE(op) PyDict_GET_SIZE(_PyObject_CAST(op)) - -PyAPI_FUNC(int) _PyDict_Contains_KnownHash(PyObject *, PyObject *, Py_hash_t); -PyAPI_FUNC(int) _PyDict_ContainsId(PyObject *, _Py_Identifier *); -PyAPI_FUNC(PyObject *) _PyDict_NewPresized(Py_ssize_t minused); -PyAPI_FUNC(void) _PyDict_MaybeUntrack(PyObject *mp); -PyAPI_FUNC(int) _PyDict_HasOnlyStringKeys(PyObject *mp); -PyAPI_FUNC(Py_ssize_t) _PyDict_SizeOf(PyDictObject *); -PyAPI_FUNC(PyObject *) _PyDict_Pop(PyObject *, PyObject *, PyObject *); -#define _PyDict_HasSplitTable(d) ((d)->ma_values != NULL) - -/* Like PyDict_Merge, but override can be 0, 1 or 2. If override is 0, - the first occurrence of a key wins, if override is 1, the last occurrence - of a key wins, if override is 2, a KeyError with conflicting key as - argument is raised. -*/ -PyAPI_FUNC(int) _PyDict_MergeEx(PyObject *mp, PyObject *other, int override); -PyAPI_FUNC(int) _PyDict_SetItemId(PyObject *dp, _Py_Identifier *key, PyObject *item); - -PyAPI_FUNC(int) _PyDict_DelItemId(PyObject *mp, _Py_Identifier *key); -PyAPI_FUNC(void) _PyDict_DebugMallocStats(FILE *out); - -/* _PyDictView */ - -typedef struct { - PyObject_HEAD - PyDictObject *dv_dict; -} _PyDictViewObject; - -PyAPI_FUNC(PyObject *) _PyDictView_New(PyObject *, PyTypeObject *); -PyAPI_FUNC(PyObject *) _PyDictView_Intersect(PyObject* self, PyObject *other); - -/* Dictionary watchers */ - -#define PY_FOREACH_DICT_EVENT(V) \ - V(ADDED) \ - V(MODIFIED) \ - V(DELETED) \ - V(CLONED) \ - V(CLEARED) \ - V(DEALLOCATED) - -typedef enum { - #define PY_DEF_EVENT(EVENT) PyDict_EVENT_##EVENT, - PY_FOREACH_DICT_EVENT(PY_DEF_EVENT) - #undef PY_DEF_EVENT -} PyDict_WatchEvent; - -// Callback to be invoked when a watched dict is cleared, dealloced, or modified. -// In clear/dealloc case, key and new_value will be NULL. Otherwise, new_value will be the -// new value for key, NULL if key is being deleted. -typedef int(*PyDict_WatchCallback)(PyDict_WatchEvent event, PyObject* dict, PyObject* key, PyObject* new_value); - -// Register/unregister a dict-watcher callback -PyAPI_FUNC(int) PyDict_AddWatcher(PyDict_WatchCallback callback); -PyAPI_FUNC(int) PyDict_ClearWatcher(int watcher_id); - -// Mark given dictionary as "watched" (callback will be called if it is modified) -PyAPI_FUNC(int) PyDict_Watch(int watcher_id, PyObject* dict); -PyAPI_FUNC(int) PyDict_Unwatch(int watcher_id, PyObject* dict); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/fileobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/fileobject.h deleted file mode 100644 index b70ec31..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/fileobject.h +++ /dev/null @@ -1,19 +0,0 @@ -#ifndef Py_CPYTHON_FILEOBJECT_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(char *) Py_UniversalNewlineFgets(char *, int, FILE*, PyObject *); -PyAPI_FUNC(char *) _Py_UniversalNewlineFgetsWithSize(char *, int, FILE*, PyObject *, size_t*); - -/* The std printer acts as a preliminary sys.stderr until the new io - infrastructure is in place. */ -PyAPI_FUNC(PyObject *) PyFile_NewStdPrinter(int); -PyAPI_DATA(PyTypeObject) PyStdPrinter_Type; - -typedef PyObject * (*Py_OpenCodeHookFunction)(PyObject *, void *); - -PyAPI_FUNC(PyObject *) PyFile_OpenCode(const char *utf8path); -PyAPI_FUNC(PyObject *) PyFile_OpenCodeObject(PyObject *path); -PyAPI_FUNC(int) PyFile_SetOpenCodeHook(Py_OpenCodeHookFunction hook, void *userData); - -PyAPI_FUNC(int) _PyLong_FileDescriptor_Converter(PyObject *, void *); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/fileutils.h b/_Pre_Builds/_Python312_cpp/include/cpython/fileutils.h deleted file mode 100644 index b386ad1..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/fileutils.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef Py_CPYTHON_FILEUTILS_H -# error "this header file must not be included directly" -#endif - -// Used by _testcapi which must not use the internal C API -PyAPI_FUNC(FILE*) _Py_fopen_obj( - PyObject *path, - const char *mode); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/floatobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/floatobject.h deleted file mode 100644 index 1270930..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/floatobject.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef Py_CPYTHON_FLOATOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - PyObject_HEAD - double ob_fval; -} PyFloatObject; - -#define _PyFloat_CAST(op) \ - (assert(PyFloat_Check(op)), _Py_CAST(PyFloatObject*, op)) - -// Static inline version of PyFloat_AsDouble() trading safety for speed. -// It doesn't check if op is a double object. -static inline double PyFloat_AS_DOUBLE(PyObject *op) { - return _PyFloat_CAST(op)->ob_fval; -} -#define PyFloat_AS_DOUBLE(op) PyFloat_AS_DOUBLE(_PyObject_CAST(op)) - - -PyAPI_FUNC(int) PyFloat_Pack2(double x, char *p, int le); -PyAPI_FUNC(int) PyFloat_Pack4(double x, char *p, int le); -PyAPI_FUNC(int) PyFloat_Pack8(double x, char *p, int le); - -PyAPI_FUNC(double) PyFloat_Unpack2(const char *p, int le); -PyAPI_FUNC(double) PyFloat_Unpack4(const char *p, int le); -PyAPI_FUNC(double) PyFloat_Unpack8(const char *p, int le); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/frameobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/frameobject.h deleted file mode 100644 index 4e19535..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/frameobject.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Frame object interface */ - -#ifndef Py_CPYTHON_FRAMEOBJECT_H -# error "this header file must not be included directly" -#endif - -/* Standard object interface */ - -PyAPI_FUNC(PyFrameObject *) PyFrame_New(PyThreadState *, PyCodeObject *, - PyObject *, PyObject *); - -/* The rest of the interface is specific for frame objects */ - -/* Conversions between "fast locals" and locals in dictionary */ - -PyAPI_FUNC(void) PyFrame_LocalsToFast(PyFrameObject *, int); - -/* -- Caveat emptor -- - * The concept of entry frames is an implementation detail of the CPython - * interpreter. This API is considered unstable and is provided for the - * convenience of debuggers, profilers and state-inspecting tools. Notice that - * this API can be changed in future minor versions if the underlying frame - * mechanism change or the concept of an 'entry frame' or its semantics becomes - * obsolete or outdated. */ - -PyAPI_FUNC(int) _PyFrame_IsEntryFrame(PyFrameObject *frame); - -PyAPI_FUNC(int) PyFrame_FastToLocalsWithError(PyFrameObject *f); -PyAPI_FUNC(void) PyFrame_FastToLocals(PyFrameObject *); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/funcobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/funcobject.h deleted file mode 100644 index 6f78f58..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/funcobject.h +++ /dev/null @@ -1,188 +0,0 @@ -/* Function object interface */ - -#ifndef Py_LIMITED_API -#ifndef Py_FUNCOBJECT_H -#define Py_FUNCOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -#define COMMON_FIELDS(PREFIX) \ - PyObject *PREFIX ## globals; \ - PyObject *PREFIX ## builtins; \ - PyObject *PREFIX ## name; \ - PyObject *PREFIX ## qualname; \ - PyObject *PREFIX ## code; /* A code object, the __code__ attribute */ \ - PyObject *PREFIX ## defaults; /* NULL or a tuple */ \ - PyObject *PREFIX ## kwdefaults; /* NULL or a dict */ \ - PyObject *PREFIX ## closure; /* NULL or a tuple of cell objects */ - -typedef struct { - COMMON_FIELDS(fc_) -} PyFrameConstructor; - -/* Function objects and code objects should not be confused with each other: - * - * Function objects are created by the execution of the 'def' statement. - * They reference a code object in their __code__ attribute, which is a - * purely syntactic object, i.e. nothing more than a compiled version of some - * source code lines. There is one code object per source code "fragment", - * but each code object can be referenced by zero or many function objects - * depending only on how many times the 'def' statement in the source was - * executed so far. - */ - -typedef struct { - PyObject_HEAD - COMMON_FIELDS(func_) - PyObject *func_doc; /* The __doc__ attribute, can be anything */ - PyObject *func_dict; /* The __dict__ attribute, a dict or NULL */ - PyObject *func_weakreflist; /* List of weak references */ - PyObject *func_module; /* The __module__ attribute, can be anything */ - PyObject *func_annotations; /* Annotations, a dict or NULL */ - PyObject *func_typeparams; /* Tuple of active type variables or NULL */ - vectorcallfunc vectorcall; - /* Version number for use by specializer. - * Can set to non-zero when we want to specialize. - * Will be set to zero if any of these change: - * defaults - * kwdefaults (only if the object changes, not the contents of the dict) - * code - * annotations - * vectorcall function pointer */ - uint32_t func_version; - - /* Invariant: - * func_closure contains the bindings for func_code->co_freevars, so - * PyTuple_Size(func_closure) == PyCode_GetNumFree(func_code) - * (func_closure may be NULL if PyCode_GetNumFree(func_code) == 0). - */ -} PyFunctionObject; - -PyAPI_DATA(PyTypeObject) PyFunction_Type; - -#define PyFunction_Check(op) Py_IS_TYPE((op), &PyFunction_Type) - -PyAPI_FUNC(PyObject *) PyFunction_New(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_NewWithQualName(PyObject *, PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetCode(PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetGlobals(PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetModule(PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetDefaults(PyObject *); -PyAPI_FUNC(int) PyFunction_SetDefaults(PyObject *, PyObject *); -PyAPI_FUNC(void) PyFunction_SetVectorcall(PyFunctionObject *, vectorcallfunc); -PyAPI_FUNC(PyObject *) PyFunction_GetKwDefaults(PyObject *); -PyAPI_FUNC(int) PyFunction_SetKwDefaults(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetClosure(PyObject *); -PyAPI_FUNC(int) PyFunction_SetClosure(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyFunction_GetAnnotations(PyObject *); -PyAPI_FUNC(int) PyFunction_SetAnnotations(PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) _PyFunction_Vectorcall( - PyObject *func, - PyObject *const *stack, - size_t nargsf, - PyObject *kwnames); - -#define _PyFunction_CAST(func) \ - (assert(PyFunction_Check(func)), _Py_CAST(PyFunctionObject*, func)) - -/* Static inline functions for direct access to these values. - Type checks are *not* done, so use with care. */ -static inline PyObject* PyFunction_GET_CODE(PyObject *func) { - return _PyFunction_CAST(func)->func_code; -} -#define PyFunction_GET_CODE(func) PyFunction_GET_CODE(_PyObject_CAST(func)) - -static inline PyObject* PyFunction_GET_GLOBALS(PyObject *func) { - return _PyFunction_CAST(func)->func_globals; -} -#define PyFunction_GET_GLOBALS(func) PyFunction_GET_GLOBALS(_PyObject_CAST(func)) - -static inline PyObject* PyFunction_GET_MODULE(PyObject *func) { - return _PyFunction_CAST(func)->func_module; -} -#define PyFunction_GET_MODULE(func) PyFunction_GET_MODULE(_PyObject_CAST(func)) - -static inline PyObject* PyFunction_GET_DEFAULTS(PyObject *func) { - return _PyFunction_CAST(func)->func_defaults; -} -#define PyFunction_GET_DEFAULTS(func) PyFunction_GET_DEFAULTS(_PyObject_CAST(func)) - -static inline PyObject* PyFunction_GET_KW_DEFAULTS(PyObject *func) { - return _PyFunction_CAST(func)->func_kwdefaults; -} -#define PyFunction_GET_KW_DEFAULTS(func) PyFunction_GET_KW_DEFAULTS(_PyObject_CAST(func)) - -static inline PyObject* PyFunction_GET_CLOSURE(PyObject *func) { - return _PyFunction_CAST(func)->func_closure; -} -#define PyFunction_GET_CLOSURE(func) PyFunction_GET_CLOSURE(_PyObject_CAST(func)) - -static inline PyObject* PyFunction_GET_ANNOTATIONS(PyObject *func) { - return _PyFunction_CAST(func)->func_annotations; -} -#define PyFunction_GET_ANNOTATIONS(func) PyFunction_GET_ANNOTATIONS(_PyObject_CAST(func)) - -/* The classmethod and staticmethod types lives here, too */ -PyAPI_DATA(PyTypeObject) PyClassMethod_Type; -PyAPI_DATA(PyTypeObject) PyStaticMethod_Type; - -PyAPI_FUNC(PyObject *) PyClassMethod_New(PyObject *); -PyAPI_FUNC(PyObject *) PyStaticMethod_New(PyObject *); - -#define PY_FOREACH_FUNC_EVENT(V) \ - V(CREATE) \ - V(DESTROY) \ - V(MODIFY_CODE) \ - V(MODIFY_DEFAULTS) \ - V(MODIFY_KWDEFAULTS) - -typedef enum { - #define PY_DEF_EVENT(EVENT) PyFunction_EVENT_##EVENT, - PY_FOREACH_FUNC_EVENT(PY_DEF_EVENT) - #undef PY_DEF_EVENT -} PyFunction_WatchEvent; - -/* - * A callback that is invoked for different events in a function's lifecycle. - * - * The callback is invoked with a borrowed reference to func, after it is - * created and before it is modified or destroyed. The callback should not - * modify func. - * - * When a function's code object, defaults, or kwdefaults are modified the - * callback will be invoked with the respective event and new_value will - * contain a borrowed reference to the new value that is about to be stored in - * the function. Otherwise the third argument is NULL. - * - * If the callback returns with an exception set, it must return -1. Otherwise - * it should return 0. - */ -typedef int (*PyFunction_WatchCallback)( - PyFunction_WatchEvent event, - PyFunctionObject *func, - PyObject *new_value); - -/* - * Register a per-interpreter callback that will be invoked for function lifecycle - * events. - * - * Returns a handle that may be passed to PyFunction_ClearWatcher on success, - * or -1 and sets an error if no more handles are available. - */ -PyAPI_FUNC(int) PyFunction_AddWatcher(PyFunction_WatchCallback callback); - -/* - * Clear the watcher associated with the watcher_id handle. - * - * Returns 0 on success or -1 if no watcher exists for the supplied id. - */ -PyAPI_FUNC(int) PyFunction_ClearWatcher(int watcher_id); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FUNCOBJECT_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/genobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/genobject.h deleted file mode 100644 index 7856481..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/genobject.h +++ /dev/null @@ -1,89 +0,0 @@ -/* Generator object interface */ - -#ifndef Py_LIMITED_API -#ifndef Py_GENOBJECT_H -#define Py_GENOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* --- Generators --------------------------------------------------------- */ - -/* _PyGenObject_HEAD defines the initial segment of generator - and coroutine objects. */ -#define _PyGenObject_HEAD(prefix) \ - PyObject_HEAD \ - /* List of weak reference. */ \ - PyObject *prefix##_weakreflist; \ - /* Name of the generator. */ \ - PyObject *prefix##_name; \ - /* Qualified name of the generator. */ \ - PyObject *prefix##_qualname; \ - _PyErr_StackItem prefix##_exc_state; \ - PyObject *prefix##_origin_or_finalizer; \ - char prefix##_hooks_inited; \ - char prefix##_closed; \ - char prefix##_running_async; \ - /* The frame */ \ - int8_t prefix##_frame_state; \ - PyObject *prefix##_iframe[1]; \ - -typedef struct { - /* The gi_ prefix is intended to remind of generator-iterator. */ - _PyGenObject_HEAD(gi) -} PyGenObject; - -PyAPI_DATA(PyTypeObject) PyGen_Type; - -#define PyGen_Check(op) PyObject_TypeCheck((op), &PyGen_Type) -#define PyGen_CheckExact(op) Py_IS_TYPE((op), &PyGen_Type) - -PyAPI_FUNC(PyObject *) PyGen_New(PyFrameObject *); -PyAPI_FUNC(PyObject *) PyGen_NewWithQualName(PyFrameObject *, - PyObject *name, PyObject *qualname); -PyAPI_FUNC(int) _PyGen_SetStopIterationValue(PyObject *); -PyAPI_FUNC(int) _PyGen_FetchStopIterationValue(PyObject **); -PyAPI_FUNC(void) _PyGen_Finalize(PyObject *self); -PyAPI_FUNC(PyCodeObject *) PyGen_GetCode(PyGenObject *gen); - - -/* --- PyCoroObject ------------------------------------------------------- */ - -typedef struct { - _PyGenObject_HEAD(cr) -} PyCoroObject; - -PyAPI_DATA(PyTypeObject) PyCoro_Type; -PyAPI_DATA(PyTypeObject) _PyCoroWrapper_Type; - -#define PyCoro_CheckExact(op) Py_IS_TYPE((op), &PyCoro_Type) -PyAPI_FUNC(PyObject *) PyCoro_New(PyFrameObject *, - PyObject *name, PyObject *qualname); - - -/* --- Asynchronous Generators -------------------------------------------- */ - -typedef struct { - _PyGenObject_HEAD(ag) -} PyAsyncGenObject; - -PyAPI_DATA(PyTypeObject) PyAsyncGen_Type; -PyAPI_DATA(PyTypeObject) _PyAsyncGenASend_Type; -PyAPI_DATA(PyTypeObject) _PyAsyncGenWrappedValue_Type; -PyAPI_DATA(PyTypeObject) _PyAsyncGenAThrow_Type; - -PyAPI_FUNC(PyObject *) PyAsyncGen_New(PyFrameObject *, - PyObject *name, PyObject *qualname); - -#define PyAsyncGen_CheckExact(op) Py_IS_TYPE((op), &PyAsyncGen_Type) - -#define PyAsyncGenASend_CheckExact(op) Py_IS_TYPE((op), &_PyAsyncGenASend_Type) - - -#undef _PyGenObject_HEAD - -#ifdef __cplusplus -} -#endif -#endif /* !Py_GENOBJECT_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/import.h b/_Pre_Builds/_Python312_cpp/include/cpython/import.h deleted file mode 100644 index 2bca4ad..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/import.h +++ /dev/null @@ -1,46 +0,0 @@ -#ifndef Py_CPYTHON_IMPORT_H -# error "this header file must not be included directly" -#endif - -PyMODINIT_FUNC PyInit__imp(void); - -PyAPI_FUNC(int) _PyImport_IsInitialized(PyInterpreterState *); - -PyAPI_FUNC(PyObject *) _PyImport_GetModuleId(_Py_Identifier *name); -PyAPI_FUNC(int) _PyImport_SetModule(PyObject *name, PyObject *module); -PyAPI_FUNC(int) _PyImport_SetModuleString(const char *name, PyObject* module); - -PyAPI_FUNC(void) _PyImport_AcquireLock(PyInterpreterState *interp); -PyAPI_FUNC(int) _PyImport_ReleaseLock(PyInterpreterState *interp); - -PyAPI_FUNC(int) _PyImport_FixupBuiltin( - PyObject *mod, - const char *name, /* UTF-8 encoded string */ - PyObject *modules - ); -PyAPI_FUNC(int) _PyImport_FixupExtensionObject(PyObject*, PyObject *, - PyObject *, PyObject *); - -struct _inittab { - const char *name; /* ASCII encoded string */ - PyObject* (*initfunc)(void); -}; -// This is not used after Py_Initialize() is called. -PyAPI_DATA(struct _inittab *) PyImport_Inittab; -PyAPI_FUNC(int) PyImport_ExtendInittab(struct _inittab *newtab); - -struct _frozen { - const char *name; /* ASCII encoded string */ - const unsigned char *code; - int size; - int is_package; - PyObject *(*get_code)(void); -}; - -/* Embedding apps may change this pointer to point to their favorite - collection of frozen modules: */ - -PyAPI_DATA(const struct _frozen *) PyImport_FrozenModules; - -PyAPI_DATA(PyObject *) _PyImport_GetModuleAttr(PyObject *, PyObject *); -PyAPI_DATA(PyObject *) _PyImport_GetModuleAttrString(const char *, const char *); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/initconfig.h b/_Pre_Builds/_Python312_cpp/include/cpython/initconfig.h deleted file mode 100644 index cbae97f..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/initconfig.h +++ /dev/null @@ -1,256 +0,0 @@ -#ifndef Py_PYCORECONFIG_H -#define Py_PYCORECONFIG_H -#ifndef Py_LIMITED_API -#ifdef __cplusplus -extern "C" { -#endif - -/* --- PyStatus ----------------------------------------------- */ - -typedef struct { - enum { - _PyStatus_TYPE_OK=0, - _PyStatus_TYPE_ERROR=1, - _PyStatus_TYPE_EXIT=2 - } _type; - const char *func; - const char *err_msg; - int exitcode; -} PyStatus; - -PyAPI_FUNC(PyStatus) PyStatus_Ok(void); -PyAPI_FUNC(PyStatus) PyStatus_Error(const char *err_msg); -PyAPI_FUNC(PyStatus) PyStatus_NoMemory(void); -PyAPI_FUNC(PyStatus) PyStatus_Exit(int exitcode); -PyAPI_FUNC(int) PyStatus_IsError(PyStatus err); -PyAPI_FUNC(int) PyStatus_IsExit(PyStatus err); -PyAPI_FUNC(int) PyStatus_Exception(PyStatus err); -PyAPI_FUNC(PyObject *) _PyErr_SetFromPyStatus(PyStatus status); - -/* --- PyWideStringList ------------------------------------------------ */ - -typedef struct { - /* If length is greater than zero, items must be non-NULL - and all items strings must be non-NULL */ - Py_ssize_t length; - wchar_t **items; -} PyWideStringList; - -PyAPI_FUNC(PyStatus) PyWideStringList_Append(PyWideStringList *list, - const wchar_t *item); -PyAPI_FUNC(PyStatus) PyWideStringList_Insert(PyWideStringList *list, - Py_ssize_t index, - const wchar_t *item); - - -/* --- PyPreConfig ----------------------------------------------- */ - -typedef struct PyPreConfig { - int _config_init; /* _PyConfigInitEnum value */ - - /* Parse Py_PreInitializeFromBytesArgs() arguments? - See PyConfig.parse_argv */ - int parse_argv; - - /* If greater than 0, enable isolated mode: sys.path contains - neither the script's directory nor the user's site-packages directory. - - Set to 1 by the -I command line option. If set to -1 (default), inherit - Py_IsolatedFlag value. */ - int isolated; - - /* If greater than 0: use environment variables. - Set to 0 by -E command line option. If set to -1 (default), it is - set to !Py_IgnoreEnvironmentFlag. */ - int use_environment; - - /* Set the LC_CTYPE locale to the user preferred locale? If equals to 0, - set coerce_c_locale and coerce_c_locale_warn to 0. */ - int configure_locale; - - /* Coerce the LC_CTYPE locale if it's equal to "C"? (PEP 538) - - Set to 0 by PYTHONCOERCECLOCALE=0. Set to 1 by PYTHONCOERCECLOCALE=1. - Set to 2 if the user preferred LC_CTYPE locale is "C". - - If it is equal to 1, LC_CTYPE locale is read to decide if it should be - coerced or not (ex: PYTHONCOERCECLOCALE=1). Internally, it is set to 2 - if the LC_CTYPE locale must be coerced. - - Disable by default (set to 0). Set it to -1 to let Python decide if it - should be enabled or not. */ - int coerce_c_locale; - - /* Emit a warning if the LC_CTYPE locale is coerced? - - Set to 1 by PYTHONCOERCECLOCALE=warn. - - Disable by default (set to 0). Set it to -1 to let Python decide if it - should be enabled or not. */ - int coerce_c_locale_warn; - -#ifdef MS_WINDOWS - /* If greater than 1, use the "mbcs" encoding instead of the UTF-8 - encoding for the filesystem encoding. - - Set to 1 if the PYTHONLEGACYWINDOWSFSENCODING environment variable is - set to a non-empty string. If set to -1 (default), inherit - Py_LegacyWindowsFSEncodingFlag value. - - See PEP 529 for more details. */ - int legacy_windows_fs_encoding; -#endif - - /* Enable UTF-8 mode? (PEP 540) - - Disabled by default (equals to 0). - - Set to 1 by "-X utf8" and "-X utf8=1" command line options. - Set to 1 by PYTHONUTF8=1 environment variable. - - Set to 0 by "-X utf8=0" and PYTHONUTF8=0. - - If equals to -1, it is set to 1 if the LC_CTYPE locale is "C" or - "POSIX", otherwise it is set to 0. Inherit Py_UTF8Mode value value. */ - int utf8_mode; - - /* If non-zero, enable the Python Development Mode. - - Set to 1 by the -X dev command line option. Set by the PYTHONDEVMODE - environment variable. */ - int dev_mode; - - /* Memory allocator: PYTHONMALLOC env var. - See PyMemAllocatorName for valid values. */ - int allocator; -} PyPreConfig; - -PyAPI_FUNC(void) PyPreConfig_InitPythonConfig(PyPreConfig *config); -PyAPI_FUNC(void) PyPreConfig_InitIsolatedConfig(PyPreConfig *config); - - -/* --- PyConfig ---------------------------------------------- */ - -/* This structure is best documented in the Doc/c-api/init_config.rst file. */ -typedef struct PyConfig { - int _config_init; /* _PyConfigInitEnum value */ - - int isolated; - int use_environment; - int dev_mode; - int install_signal_handlers; - int use_hash_seed; - unsigned long hash_seed; - int faulthandler; - int tracemalloc; - int perf_profiling; - int import_time; - int code_debug_ranges; - int show_ref_count; - int dump_refs; - wchar_t *dump_refs_file; - int malloc_stats; - wchar_t *filesystem_encoding; - wchar_t *filesystem_errors; - wchar_t *pycache_prefix; - int parse_argv; - PyWideStringList orig_argv; - PyWideStringList argv; - PyWideStringList xoptions; - PyWideStringList warnoptions; - int site_import; - int bytes_warning; - int warn_default_encoding; - int inspect; - int interactive; - int optimization_level; - int parser_debug; - int write_bytecode; - int verbose; - int quiet; - int user_site_directory; - int configure_c_stdio; - int buffered_stdio; - wchar_t *stdio_encoding; - wchar_t *stdio_errors; -#ifdef MS_WINDOWS - int legacy_windows_stdio; -#endif - wchar_t *check_hash_pycs_mode; - int use_frozen_modules; - int safe_path; - int int_max_str_digits; - - /* --- Path configuration inputs ------------ */ - int pathconfig_warnings; - wchar_t *program_name; - wchar_t *pythonpath_env; - wchar_t *home; - wchar_t *platlibdir; - - /* --- Path configuration outputs ----------- */ - int module_search_paths_set; - PyWideStringList module_search_paths; - wchar_t *stdlib_dir; - wchar_t *executable; - wchar_t *base_executable; - wchar_t *prefix; - wchar_t *base_prefix; - wchar_t *exec_prefix; - wchar_t *base_exec_prefix; - - /* --- Parameter only used by Py_Main() ---------- */ - int skip_source_first_line; - wchar_t *run_command; - wchar_t *run_module; - wchar_t *run_filename; - - /* --- Private fields ---------------------------- */ - - // Install importlib? If equals to 0, importlib is not initialized at all. - // Needed by freeze_importlib. - int _install_importlib; - - // If equal to 0, stop Python initialization before the "main" phase. - int _init_main; - - // If non-zero, we believe we're running from a source tree. - int _is_python_build; -} PyConfig; - -PyAPI_FUNC(void) PyConfig_InitPythonConfig(PyConfig *config); -PyAPI_FUNC(void) PyConfig_InitIsolatedConfig(PyConfig *config); -PyAPI_FUNC(void) PyConfig_Clear(PyConfig *); -PyAPI_FUNC(PyStatus) PyConfig_SetString( - PyConfig *config, - wchar_t **config_str, - const wchar_t *str); -PyAPI_FUNC(PyStatus) PyConfig_SetBytesString( - PyConfig *config, - wchar_t **config_str, - const char *str); -PyAPI_FUNC(PyStatus) PyConfig_Read(PyConfig *config); -PyAPI_FUNC(PyStatus) PyConfig_SetBytesArgv( - PyConfig *config, - Py_ssize_t argc, - char * const *argv); -PyAPI_FUNC(PyStatus) PyConfig_SetArgv(PyConfig *config, - Py_ssize_t argc, - wchar_t * const *argv); -PyAPI_FUNC(PyStatus) PyConfig_SetWideStringList(PyConfig *config, - PyWideStringList *list, - Py_ssize_t length, wchar_t **items); - - -/* --- Helper functions --------------------------------------- */ - -/* Get the original command line arguments, before Python modified them. - - See also PyConfig.orig_argv. */ -PyAPI_FUNC(void) Py_GetArgcArgv(int *argc, wchar_t ***argv); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LIMITED_API */ -#endif /* !Py_PYCORECONFIG_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/interpreteridobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/interpreteridobject.h deleted file mode 100644 index 5076584..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/interpreteridobject.h +++ /dev/null @@ -1,11 +0,0 @@ -#ifndef Py_CPYTHON_INTERPRETERIDOBJECT_H -# error "this header file must not be included directly" -#endif - -/* Interpreter ID Object */ - -PyAPI_DATA(PyTypeObject) _PyInterpreterID_Type; - -PyAPI_FUNC(PyObject *) _PyInterpreterID_New(int64_t); -PyAPI_FUNC(PyObject *) _PyInterpreterState_GetIDObject(PyInterpreterState *); -PyAPI_FUNC(PyInterpreterState *) _PyInterpreterID_LookUp(PyObject *); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/listobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/listobject.h deleted file mode 100644 index 8fa8212..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/listobject.h +++ /dev/null @@ -1,47 +0,0 @@ -#ifndef Py_CPYTHON_LISTOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - PyObject_VAR_HEAD - /* Vector of pointers to list elements. list[0] is ob_item[0], etc. */ - PyObject **ob_item; - - /* ob_item contains space for 'allocated' elements. The number - * currently in use is ob_size. - * Invariants: - * 0 <= ob_size <= allocated - * len(list) == ob_size - * ob_item == NULL implies ob_size == allocated == 0 - * list.sort() temporarily sets allocated to -1 to detect mutations. - * - * Items must normally not be NULL, except during construction when - * the list is not yet visible outside the function that builds it. - */ - Py_ssize_t allocated; -} PyListObject; - -PyAPI_FUNC(PyObject *) _PyList_Extend(PyListObject *, PyObject *); -PyAPI_FUNC(void) _PyList_DebugMallocStats(FILE *out); - -/* Cast argument to PyListObject* type. */ -#define _PyList_CAST(op) \ - (assert(PyList_Check(op)), _Py_CAST(PyListObject*, (op))) - -// Macros and static inline functions, trading safety for speed - -static inline Py_ssize_t PyList_GET_SIZE(PyObject *op) { - PyListObject *list = _PyList_CAST(op); - return Py_SIZE(list); -} -#define PyList_GET_SIZE(op) PyList_GET_SIZE(_PyObject_CAST(op)) - -#define PyList_GET_ITEM(op, index) (_PyList_CAST(op)->ob_item[(index)]) - -static inline void -PyList_SET_ITEM(PyObject *op, Py_ssize_t index, PyObject *value) { - PyListObject *list = _PyList_CAST(op); - list->ob_item[index] = value; -} -#define PyList_SET_ITEM(op, index, value) \ - PyList_SET_ITEM(_PyObject_CAST(op), (index), _PyObject_CAST(value)) diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/longintrepr.h b/_Pre_Builds/_Python312_cpp/include/cpython/longintrepr.h deleted file mode 100644 index 692c69b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/longintrepr.h +++ /dev/null @@ -1,132 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_LONGINTREPR_H -#define Py_LONGINTREPR_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* This is published for the benefit of "friends" marshal.c and _decimal.c. */ - -/* Parameters of the integer representation. There are two different - sets of parameters: one set for 30-bit digits, stored in an unsigned 32-bit - integer type, and one set for 15-bit digits with each digit stored in an - unsigned short. The value of PYLONG_BITS_IN_DIGIT, defined either at - configure time or in pyport.h, is used to decide which digit size to use. - - Type 'digit' should be able to hold 2*PyLong_BASE-1, and type 'twodigits' - should be an unsigned integer type able to hold all integers up to - PyLong_BASE*PyLong_BASE-1. x_sub assumes that 'digit' is an unsigned type, - and that overflow is handled by taking the result modulo 2**N for some N > - PyLong_SHIFT. The majority of the code doesn't care about the precise - value of PyLong_SHIFT, but there are some notable exceptions: - - - PyLong_{As,From}ByteArray require that PyLong_SHIFT be at least 8 - - - long_hash() requires that PyLong_SHIFT is *strictly* less than the number - of bits in an unsigned long, as do the PyLong <-> long (or unsigned long) - conversion functions - - - the Python int <-> size_t/Py_ssize_t conversion functions expect that - PyLong_SHIFT is strictly less than the number of bits in a size_t - - - the marshal code currently expects that PyLong_SHIFT is a multiple of 15 - - - NSMALLNEGINTS and NSMALLPOSINTS should be small enough to fit in a single - digit; with the current values this forces PyLong_SHIFT >= 9 - - The values 15 and 30 should fit all of the above requirements, on any - platform. -*/ - -#if PYLONG_BITS_IN_DIGIT == 30 -typedef uint32_t digit; -typedef int32_t sdigit; /* signed variant of digit */ -typedef uint64_t twodigits; -typedef int64_t stwodigits; /* signed variant of twodigits */ -#define PyLong_SHIFT 30 -#define _PyLong_DECIMAL_SHIFT 9 /* max(e such that 10**e fits in a digit) */ -#define _PyLong_DECIMAL_BASE ((digit)1000000000) /* 10 ** DECIMAL_SHIFT */ -#elif PYLONG_BITS_IN_DIGIT == 15 -typedef unsigned short digit; -typedef short sdigit; /* signed variant of digit */ -typedef unsigned long twodigits; -typedef long stwodigits; /* signed variant of twodigits */ -#define PyLong_SHIFT 15 -#define _PyLong_DECIMAL_SHIFT 4 /* max(e such that 10**e fits in a digit) */ -#define _PyLong_DECIMAL_BASE ((digit)10000) /* 10 ** DECIMAL_SHIFT */ -#else -#error "PYLONG_BITS_IN_DIGIT should be 15 or 30" -#endif -#define PyLong_BASE ((digit)1 << PyLong_SHIFT) -#define PyLong_MASK ((digit)(PyLong_BASE - 1)) - -/* Long integer representation. - The absolute value of a number is equal to - SUM(for i=0 through abs(ob_size)-1) ob_digit[i] * 2**(SHIFT*i) - Negative numbers are represented with ob_size < 0; - zero is represented by ob_size == 0. - In a normalized number, ob_digit[abs(ob_size)-1] (the most significant - digit) is never zero. Also, in all cases, for all valid i, - 0 <= ob_digit[i] <= MASK. - The allocation function takes care of allocating extra memory - so that ob_digit[0] ... ob_digit[abs(ob_size)-1] are actually available. - We always allocate memory for at least one digit, so accessing ob_digit[0] - is always safe. However, in the case ob_size == 0, the contents of - ob_digit[0] may be undefined. - - CAUTION: Generic code manipulating subtypes of PyVarObject has to - aware that ints abuse ob_size's sign bit. -*/ - -typedef struct _PyLongValue { - uintptr_t lv_tag; /* Number of digits, sign and flags */ - digit ob_digit[1]; -} _PyLongValue; - -struct _longobject { - PyObject_HEAD - _PyLongValue long_value; -}; - -PyAPI_FUNC(PyLongObject *) _PyLong_New(Py_ssize_t); - -/* Return a copy of src. */ -PyAPI_FUNC(PyObject *) _PyLong_Copy(PyLongObject *src); - -PyAPI_FUNC(PyLongObject *) -_PyLong_FromDigits(int negative, Py_ssize_t digit_count, digit *digits); - - -/* Inline some internals for speed. These should be in pycore_long.h - * if user code didn't need them inlined. */ - -#define _PyLong_SIGN_MASK 3 -#define _PyLong_NON_SIZE_BITS 3 - - -static inline int -_PyLong_IsCompact(const PyLongObject* op) { - assert(PyType_HasFeature((op)->ob_base.ob_type, Py_TPFLAGS_LONG_SUBCLASS)); - return op->long_value.lv_tag < (2 << _PyLong_NON_SIZE_BITS); -} - -#define PyUnstable_Long_IsCompact _PyLong_IsCompact - -static inline Py_ssize_t -_PyLong_CompactValue(const PyLongObject *op) -{ - assert(PyType_HasFeature((op)->ob_base.ob_type, Py_TPFLAGS_LONG_SUBCLASS)); - assert(PyUnstable_Long_IsCompact(op)); - Py_ssize_t sign = 1 - (op->long_value.lv_tag & _PyLong_SIGN_MASK); - return sign * (Py_ssize_t)op->long_value.ob_digit[0]; -} - -#define PyUnstable_Long_CompactValue _PyLong_CompactValue - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LONGINTREPR_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/longobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/longobject.h deleted file mode 100644 index 90cc0f2..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/longobject.h +++ /dev/null @@ -1,100 +0,0 @@ -#ifndef Py_CPYTHON_LONGOBJECT_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(int) _PyLong_AsInt(PyObject *); - -PyAPI_FUNC(int) _PyLong_UnsignedShort_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_UnsignedInt_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_UnsignedLong_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_UnsignedLongLong_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyLong_Size_t_Converter(PyObject *, void *); - -/* _PyLong_Frexp returns a double x and an exponent e such that the - true value is approximately equal to x * 2**e. e is >= 0. x is - 0.0 if and only if the input is 0 (in which case, e and x are both - zeroes); otherwise, 0.5 <= abs(x) < 1.0. On overflow, which is - possible if the number of bits doesn't fit into a Py_ssize_t, sets - OverflowError and returns -1.0 for x, 0 for e. */ -PyAPI_FUNC(double) _PyLong_Frexp(PyLongObject *a, Py_ssize_t *e); - -PyAPI_FUNC(PyObject *) PyLong_FromUnicodeObject(PyObject *u, int base); -PyAPI_FUNC(PyObject *) _PyLong_FromBytes(const char *, Py_ssize_t, int); - -/* _PyLong_Sign. Return 0 if v is 0, -1 if v < 0, +1 if v > 0. - v must not be NULL, and must be a normalized long. - There are no error cases. -*/ -PyAPI_FUNC(int) _PyLong_Sign(PyObject *v); - -/* _PyLong_NumBits. Return the number of bits needed to represent the - absolute value of a long. For example, this returns 1 for 1 and -1, 2 - for 2 and -2, and 2 for 3 and -3. It returns 0 for 0. - v must not be NULL, and must be a normalized long. - (size_t)-1 is returned and OverflowError set if the true result doesn't - fit in a size_t. -*/ -PyAPI_FUNC(size_t) _PyLong_NumBits(PyObject *v); - -/* _PyLong_DivmodNear. Given integers a and b, compute the nearest - integer q to the exact quotient a / b, rounding to the nearest even integer - in the case of a tie. Return (q, r), where r = a - q*b. The remainder r - will satisfy abs(r) <= abs(b)/2, with equality possible only if q is - even. -*/ -PyAPI_FUNC(PyObject *) _PyLong_DivmodNear(PyObject *, PyObject *); - -/* _PyLong_FromByteArray: View the n unsigned bytes as a binary integer in - base 256, and return a Python int with the same numeric value. - If n is 0, the integer is 0. Else: - If little_endian is 1/true, bytes[n-1] is the MSB and bytes[0] the LSB; - else (little_endian is 0/false) bytes[0] is the MSB and bytes[n-1] the - LSB. - If is_signed is 0/false, view the bytes as a non-negative integer. - If is_signed is 1/true, view the bytes as a 2's-complement integer, - non-negative if bit 0x80 of the MSB is clear, negative if set. - Error returns: - + Return NULL with the appropriate exception set if there's not - enough memory to create the Python int. -*/ -PyAPI_FUNC(PyObject *) _PyLong_FromByteArray( - const unsigned char* bytes, size_t n, - int little_endian, int is_signed); - -/* _PyLong_AsByteArray: Convert the least-significant 8*n bits of long - v to a base-256 integer, stored in array bytes. Normally return 0, - return -1 on error. - If little_endian is 1/true, store the MSB at bytes[n-1] and the LSB at - bytes[0]; else (little_endian is 0/false) store the MSB at bytes[0] and - the LSB at bytes[n-1]. - If is_signed is 0/false, it's an error if v < 0; else (v >= 0) n bytes - are filled and there's nothing special about bit 0x80 of the MSB. - If is_signed is 1/true, bytes is filled with the 2's-complement - representation of v's value. Bit 0x80 of the MSB is the sign bit. - Error returns (-1): - + is_signed is 0 and v < 0. TypeError is set in this case, and bytes - isn't altered. - + n isn't big enough to hold the full mathematical value of v. For - example, if is_signed is 0 and there are more digits in the v than - fit in n; or if is_signed is 1, v < 0, and n is just 1 bit shy of - being large enough to hold a sign bit. OverflowError is set in this - case, but bytes holds the least-significant n bytes of the true value. -*/ -PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v, - unsigned char* bytes, size_t n, - int little_endian, int is_signed); - -/* _PyLong_Format: Convert the long to a string object with given base, - appending a base prefix of 0[box] if base is 2, 8 or 16. */ -PyAPI_FUNC(PyObject *) _PyLong_Format(PyObject *obj, int base); - -/* For use by the gcd function in mathmodule.c */ -PyAPI_FUNC(PyObject *) _PyLong_GCD(PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) _PyLong_Rshift(PyObject *, size_t); -PyAPI_FUNC(PyObject *) _PyLong_Lshift(PyObject *, size_t); - - -PyAPI_FUNC(int) PyUnstable_Long_IsCompact(const PyLongObject* op); -PyAPI_FUNC(Py_ssize_t) PyUnstable_Long_CompactValue(const PyLongObject* op); - diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/memoryobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/memoryobject.h deleted file mode 100644 index 3837fa8..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/memoryobject.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Py_CPYTHON_MEMORYOBJECT_H -# error "this header file must not be included directly" -#endif - -PyAPI_DATA(PyTypeObject) _PyManagedBuffer_Type; - -/* The structs are declared here so that macros can work, but they shouldn't - be considered public. Don't access their fields directly, use the macros - and functions instead! */ -#define _Py_MANAGED_BUFFER_RELEASED 0x001 /* access to exporter blocked */ -#define _Py_MANAGED_BUFFER_FREE_FORMAT 0x002 /* free format */ - -typedef struct { - PyObject_HEAD - int flags; /* state flags */ - Py_ssize_t exports; /* number of direct memoryview exports */ - Py_buffer master; /* snapshot buffer obtained from the original exporter */ -} _PyManagedBufferObject; - - -/* memoryview state flags */ -#define _Py_MEMORYVIEW_RELEASED 0x001 /* access to master buffer blocked */ -#define _Py_MEMORYVIEW_C 0x002 /* C-contiguous layout */ -#define _Py_MEMORYVIEW_FORTRAN 0x004 /* Fortran contiguous layout */ -#define _Py_MEMORYVIEW_SCALAR 0x008 /* scalar: ndim = 0 */ -#define _Py_MEMORYVIEW_PIL 0x010 /* PIL-style layout */ -#define _Py_MEMORYVIEW_RESTRICTED 0x020 /* Disallow new references to the memoryview's buffer */ - -typedef struct { - PyObject_VAR_HEAD - _PyManagedBufferObject *mbuf; /* managed buffer */ - Py_hash_t hash; /* hash value for read-only views */ - int flags; /* state flags */ - Py_ssize_t exports; /* number of buffer re-exports */ - Py_buffer view; /* private copy of the exporter's view */ - PyObject *weakreflist; - Py_ssize_t ob_array[1]; /* shape, strides, suboffsets */ -} PyMemoryViewObject; - -#define _PyMemoryView_CAST(op) _Py_CAST(PyMemoryViewObject*, op) - -/* Get a pointer to the memoryview's private copy of the exporter's buffer. */ -static inline Py_buffer* PyMemoryView_GET_BUFFER(PyObject *op) { - return (&_PyMemoryView_CAST(op)->view); -} -#define PyMemoryView_GET_BUFFER(op) PyMemoryView_GET_BUFFER(_PyObject_CAST(op)) - -/* Get a pointer to the exporting object (this may be NULL!). */ -static inline PyObject* PyMemoryView_GET_BASE(PyObject *op) { - return _PyMemoryView_CAST(op)->view.obj; -} -#define PyMemoryView_GET_BASE(op) PyMemoryView_GET_BASE(_PyObject_CAST(op)) diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/methodobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/methodobject.h deleted file mode 100644 index d541e15..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/methodobject.h +++ /dev/null @@ -1,66 +0,0 @@ -#ifndef Py_CPYTHON_METHODOBJECT_H -# error "this header file must not be included directly" -#endif - -// PyCFunctionObject structure - -typedef struct { - PyObject_HEAD - PyMethodDef *m_ml; /* Description of the C function to call */ - PyObject *m_self; /* Passed as 'self' arg to the C func, can be NULL */ - PyObject *m_module; /* The __module__ attribute, can be anything */ - PyObject *m_weakreflist; /* List of weak references */ - vectorcallfunc vectorcall; -} PyCFunctionObject; - -#define _PyCFunctionObject_CAST(func) \ - (assert(PyCFunction_Check(func)), \ - _Py_CAST(PyCFunctionObject*, (func))) - - -// PyCMethodObject structure - -typedef struct { - PyCFunctionObject func; - PyTypeObject *mm_class; /* Class that defines this method */ -} PyCMethodObject; - -#define _PyCMethodObject_CAST(func) \ - (assert(PyCMethod_Check(func)), \ - _Py_CAST(PyCMethodObject*, (func))) - -PyAPI_DATA(PyTypeObject) PyCMethod_Type; - -#define PyCMethod_CheckExact(op) Py_IS_TYPE((op), &PyCMethod_Type) -#define PyCMethod_Check(op) PyObject_TypeCheck((op), &PyCMethod_Type) - - -/* Static inline functions for direct access to these values. - Type checks are *not* done, so use with care. */ -static inline PyCFunction PyCFunction_GET_FUNCTION(PyObject *func) { - return _PyCFunctionObject_CAST(func)->m_ml->ml_meth; -} -#define PyCFunction_GET_FUNCTION(func) PyCFunction_GET_FUNCTION(_PyObject_CAST(func)) - -static inline PyObject* PyCFunction_GET_SELF(PyObject *func_obj) { - PyCFunctionObject *func = _PyCFunctionObject_CAST(func_obj); - if (func->m_ml->ml_flags & METH_STATIC) { - return _Py_NULL; - } - return func->m_self; -} -#define PyCFunction_GET_SELF(func) PyCFunction_GET_SELF(_PyObject_CAST(func)) - -static inline int PyCFunction_GET_FLAGS(PyObject *func) { - return _PyCFunctionObject_CAST(func)->m_ml->ml_flags; -} -#define PyCFunction_GET_FLAGS(func) PyCFunction_GET_FLAGS(_PyObject_CAST(func)) - -static inline PyTypeObject* PyCFunction_GET_CLASS(PyObject *func_obj) { - PyCFunctionObject *func = _PyCFunctionObject_CAST(func_obj); - if (func->m_ml->ml_flags & METH_METHOD) { - return _PyCMethodObject_CAST(func)->mm_class; - } - return _Py_NULL; -} -#define PyCFunction_GET_CLASS(func) PyCFunction_GET_CLASS(_PyObject_CAST(func)) diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/modsupport.h b/_Pre_Builds/_Python312_cpp/include/cpython/modsupport.h deleted file mode 100644 index 2259291..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/modsupport.h +++ /dev/null @@ -1,109 +0,0 @@ -#ifndef Py_CPYTHON_MODSUPPORT_H -# error "this header file must not be included directly" -#endif - -/* If PY_SSIZE_T_CLEAN is defined, each functions treats #-specifier - to mean Py_ssize_t */ -#ifdef PY_SSIZE_T_CLEAN -#define _Py_VaBuildStack _Py_VaBuildStack_SizeT -#else -PyAPI_FUNC(PyObject *) _Py_VaBuildValue_SizeT(const char *, va_list); -PyAPI_FUNC(PyObject **) _Py_VaBuildStack_SizeT( - PyObject **small_stack, - Py_ssize_t small_stack_len, - const char *format, - va_list va, - Py_ssize_t *p_nargs); -#endif - -PyAPI_FUNC(int) _PyArg_UnpackStack( - PyObject *const *args, - Py_ssize_t nargs, - const char *name, - Py_ssize_t min, - Py_ssize_t max, - ...); - -PyAPI_FUNC(int) _PyArg_NoKeywords(const char *funcname, PyObject *kwargs); -PyAPI_FUNC(int) _PyArg_NoKwnames(const char *funcname, PyObject *kwnames); -PyAPI_FUNC(int) _PyArg_NoPositional(const char *funcname, PyObject *args); -#define _PyArg_NoKeywords(funcname, kwargs) \ - ((kwargs) == NULL || _PyArg_NoKeywords((funcname), (kwargs))) -#define _PyArg_NoKwnames(funcname, kwnames) \ - ((kwnames) == NULL || _PyArg_NoKwnames((funcname), (kwnames))) -#define _PyArg_NoPositional(funcname, args) \ - ((args) == NULL || _PyArg_NoPositional((funcname), (args))) - -#define _Py_ANY_VARARGS(n) ((n) == PY_SSIZE_T_MAX) - -PyAPI_FUNC(void) _PyArg_BadArgument(const char *, const char *, const char *, PyObject *); -PyAPI_FUNC(int) _PyArg_CheckPositional(const char *, Py_ssize_t, - Py_ssize_t, Py_ssize_t); -#define _PyArg_CheckPositional(funcname, nargs, min, max) \ - ((!_Py_ANY_VARARGS(max) && (min) <= (nargs) && (nargs) <= (max)) \ - || _PyArg_CheckPositional((funcname), (nargs), (min), (max))) - -PyAPI_FUNC(PyObject **) _Py_VaBuildStack( - PyObject **small_stack, - Py_ssize_t small_stack_len, - const char *format, - va_list va, - Py_ssize_t *p_nargs); - -typedef struct _PyArg_Parser { - int initialized; - const char *format; - const char * const *keywords; - const char *fname; - const char *custom_msg; - int pos; /* number of positional-only arguments */ - int min; /* minimal number of arguments */ - int max; /* maximal number of positional arguments */ - PyObject *kwtuple; /* tuple of keyword parameter names */ - struct _PyArg_Parser *next; -} _PyArg_Parser; - -#ifdef PY_SSIZE_T_CLEAN -#define _PyArg_ParseTupleAndKeywordsFast _PyArg_ParseTupleAndKeywordsFast_SizeT -#define _PyArg_ParseStack _PyArg_ParseStack_SizeT -#define _PyArg_ParseStackAndKeywords _PyArg_ParseStackAndKeywords_SizeT -#define _PyArg_VaParseTupleAndKeywordsFast _PyArg_VaParseTupleAndKeywordsFast_SizeT -#endif - -PyAPI_FUNC(int) _PyArg_ParseTupleAndKeywordsFast(PyObject *, PyObject *, - struct _PyArg_Parser *, ...); -PyAPI_FUNC(int) _PyArg_ParseStack( - PyObject *const *args, - Py_ssize_t nargs, - const char *format, - ...); -PyAPI_FUNC(int) _PyArg_ParseStackAndKeywords( - PyObject *const *args, - Py_ssize_t nargs, - PyObject *kwnames, - struct _PyArg_Parser *, - ...); -PyAPI_FUNC(int) _PyArg_VaParseTupleAndKeywordsFast(PyObject *, PyObject *, - struct _PyArg_Parser *, va_list); -PyAPI_FUNC(PyObject * const *) _PyArg_UnpackKeywords( - PyObject *const *args, Py_ssize_t nargs, - PyObject *kwargs, PyObject *kwnames, - struct _PyArg_Parser *parser, - int minpos, int maxpos, int minkw, - PyObject **buf); - -PyAPI_FUNC(PyObject * const *) _PyArg_UnpackKeywordsWithVararg( - PyObject *const *args, Py_ssize_t nargs, - PyObject *kwargs, PyObject *kwnames, - struct _PyArg_Parser *parser, - int minpos, int maxpos, int minkw, - int vararg, PyObject **buf); - -#define _PyArg_UnpackKeywords(args, nargs, kwargs, kwnames, parser, minpos, maxpos, minkw, buf) \ - (((minkw) == 0 && (kwargs) == NULL && (kwnames) == NULL && \ - (minpos) <= (nargs) && (nargs) <= (maxpos) && (args) != NULL) ? (args) : \ - _PyArg_UnpackKeywords((args), (nargs), (kwargs), (kwnames), (parser), \ - (minpos), (maxpos), (minkw), (buf))) - -PyAPI_FUNC(PyObject *) _PyModule_CreateInitialized(PyModuleDef*, int apiver); -PyAPI_FUNC(int) _PyModule_Add(PyObject *, const char *, PyObject *); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/object.h b/_Pre_Builds/_Python312_cpp/include/cpython/object.h deleted file mode 100644 index ae7f780..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/object.h +++ /dev/null @@ -1,575 +0,0 @@ -#ifndef Py_CPYTHON_OBJECT_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(void) _Py_NewReference(PyObject *op); -PyAPI_FUNC(void) _Py_NewReferenceNoTotal(PyObject *op); - -#ifdef Py_TRACE_REFS -/* Py_TRACE_REFS is such major surgery that we call external routines. */ -PyAPI_FUNC(void) _Py_ForgetReference(PyObject *); -#endif - -#ifdef Py_REF_DEBUG -/* These are useful as debugging aids when chasing down refleaks. */ -PyAPI_FUNC(Py_ssize_t) _Py_GetGlobalRefTotal(void); -# define _Py_GetRefTotal() _Py_GetGlobalRefTotal() -PyAPI_FUNC(Py_ssize_t) _Py_GetLegacyRefTotal(void); -PyAPI_FUNC(Py_ssize_t) _PyInterpreterState_GetRefTotal(PyInterpreterState *); -#endif - - -/********************* String Literals ****************************************/ -/* This structure helps managing static strings. The basic usage goes like this: - Instead of doing - - r = PyObject_CallMethod(o, "foo", "args", ...); - - do - - _Py_IDENTIFIER(foo); - ... - r = _PyObject_CallMethodId(o, &PyId_foo, "args", ...); - - PyId_foo is a static variable, either on block level or file level. On first - usage, the string "foo" is interned, and the structures are linked. On interpreter - shutdown, all strings are released. - - Alternatively, _Py_static_string allows choosing the variable name. - _PyUnicode_FromId returns a borrowed reference to the interned string. - _PyObject_{Get,Set,Has}AttrId are __getattr__ versions using _Py_Identifier*. -*/ -typedef struct _Py_Identifier { - const char* string; - // Index in PyInterpreterState.unicode.ids.array. It is process-wide - // unique and must be initialized to -1. - Py_ssize_t index; -} _Py_Identifier; - -#ifndef Py_BUILD_CORE -// For now we are keeping _Py_IDENTIFIER for continued use -// in non-builtin extensions (and naughty PyPI modules). - -#define _Py_static_string_init(value) { .string = (value), .index = -1 } -#define _Py_static_string(varname, value) static _Py_Identifier varname = _Py_static_string_init(value) -#define _Py_IDENTIFIER(varname) _Py_static_string(PyId_##varname, #varname) - -#endif /* !Py_BUILD_CORE */ - -typedef struct { - /* Number implementations must check *both* - arguments for proper type and implement the necessary conversions - in the slot functions themselves. */ - - binaryfunc nb_add; - binaryfunc nb_subtract; - binaryfunc nb_multiply; - binaryfunc nb_remainder; - binaryfunc nb_divmod; - ternaryfunc nb_power; - unaryfunc nb_negative; - unaryfunc nb_positive; - unaryfunc nb_absolute; - inquiry nb_bool; - unaryfunc nb_invert; - binaryfunc nb_lshift; - binaryfunc nb_rshift; - binaryfunc nb_and; - binaryfunc nb_xor; - binaryfunc nb_or; - unaryfunc nb_int; - void *nb_reserved; /* the slot formerly known as nb_long */ - unaryfunc nb_float; - - binaryfunc nb_inplace_add; - binaryfunc nb_inplace_subtract; - binaryfunc nb_inplace_multiply; - binaryfunc nb_inplace_remainder; - ternaryfunc nb_inplace_power; - binaryfunc nb_inplace_lshift; - binaryfunc nb_inplace_rshift; - binaryfunc nb_inplace_and; - binaryfunc nb_inplace_xor; - binaryfunc nb_inplace_or; - - binaryfunc nb_floor_divide; - binaryfunc nb_true_divide; - binaryfunc nb_inplace_floor_divide; - binaryfunc nb_inplace_true_divide; - - unaryfunc nb_index; - - binaryfunc nb_matrix_multiply; - binaryfunc nb_inplace_matrix_multiply; -} PyNumberMethods; - -typedef struct { - lenfunc sq_length; - binaryfunc sq_concat; - ssizeargfunc sq_repeat; - ssizeargfunc sq_item; - void *was_sq_slice; - ssizeobjargproc sq_ass_item; - void *was_sq_ass_slice; - objobjproc sq_contains; - - binaryfunc sq_inplace_concat; - ssizeargfunc sq_inplace_repeat; -} PySequenceMethods; - -typedef struct { - lenfunc mp_length; - binaryfunc mp_subscript; - objobjargproc mp_ass_subscript; -} PyMappingMethods; - -typedef PySendResult (*sendfunc)(PyObject *iter, PyObject *value, PyObject **result); - -typedef struct { - unaryfunc am_await; - unaryfunc am_aiter; - unaryfunc am_anext; - sendfunc am_send; -} PyAsyncMethods; - -typedef struct { - getbufferproc bf_getbuffer; - releasebufferproc bf_releasebuffer; -} PyBufferProcs; - -/* Allow printfunc in the tp_vectorcall_offset slot for - * backwards-compatibility */ -typedef Py_ssize_t printfunc; - -// If this structure is modified, Doc/includes/typestruct.h should be updated -// as well. -struct _typeobject { - PyObject_VAR_HEAD - const char *tp_name; /* For printing, in format "." */ - Py_ssize_t tp_basicsize, tp_itemsize; /* For allocation */ - - /* Methods to implement standard operations */ - - destructor tp_dealloc; - Py_ssize_t tp_vectorcall_offset; - getattrfunc tp_getattr; - setattrfunc tp_setattr; - PyAsyncMethods *tp_as_async; /* formerly known as tp_compare (Python 2) - or tp_reserved (Python 3) */ - reprfunc tp_repr; - - /* Method suites for standard classes */ - - PyNumberMethods *tp_as_number; - PySequenceMethods *tp_as_sequence; - PyMappingMethods *tp_as_mapping; - - /* More standard operations (here for binary compatibility) */ - - hashfunc tp_hash; - ternaryfunc tp_call; - reprfunc tp_str; - getattrofunc tp_getattro; - setattrofunc tp_setattro; - - /* Functions to access object as input/output buffer */ - PyBufferProcs *tp_as_buffer; - - /* Flags to define presence of optional/expanded features */ - unsigned long tp_flags; - - const char *tp_doc; /* Documentation string */ - - /* Assigned meaning in release 2.0 */ - /* call function for all accessible objects */ - traverseproc tp_traverse; - - /* delete references to contained objects */ - inquiry tp_clear; - - /* Assigned meaning in release 2.1 */ - /* rich comparisons */ - richcmpfunc tp_richcompare; - - /* weak reference enabler */ - Py_ssize_t tp_weaklistoffset; - - /* Iterators */ - getiterfunc tp_iter; - iternextfunc tp_iternext; - - /* Attribute descriptor and subclassing stuff */ - PyMethodDef *tp_methods; - PyMemberDef *tp_members; - PyGetSetDef *tp_getset; - // Strong reference on a heap type, borrowed reference on a static type - PyTypeObject *tp_base; - PyObject *tp_dict; - descrgetfunc tp_descr_get; - descrsetfunc tp_descr_set; - Py_ssize_t tp_dictoffset; - initproc tp_init; - allocfunc tp_alloc; - newfunc tp_new; - freefunc tp_free; /* Low-level free-memory routine */ - inquiry tp_is_gc; /* For PyObject_IS_GC */ - PyObject *tp_bases; - PyObject *tp_mro; /* method resolution order */ - PyObject *tp_cache; /* no longer used */ - void *tp_subclasses; /* for static builtin types this is an index */ - PyObject *tp_weaklist; /* not used for static builtin types */ - destructor tp_del; - - /* Type attribute cache version tag. Added in version 2.6 */ - unsigned int tp_version_tag; - - destructor tp_finalize; - vectorcallfunc tp_vectorcall; - - /* bitset of which type-watchers care about this type */ - unsigned char tp_watched; -}; - -/* This struct is used by the specializer - * It should should be treated as an opaque blob - * by code other than the specializer and interpreter. */ -struct _specialization_cache { - // In order to avoid bloating the bytecode with lots of inline caches, the - // members of this structure have a somewhat unique contract. They are set - // by the specialization machinery, and are invalidated by PyType_Modified. - // The rules for using them are as follows: - // - If getitem is non-NULL, then it is the same Python function that - // PyType_Lookup(cls, "__getitem__") would return. - // - If getitem is NULL, then getitem_version is meaningless. - // - If getitem->func_version == getitem_version, then getitem can be called - // with two positional arguments and no keyword arguments, and has neither - // *args nor **kwargs (as required by BINARY_SUBSCR_GETITEM): - PyObject *getitem; - uint32_t getitem_version; -}; - -/* The *real* layout of a type object when allocated on the heap */ -typedef struct _heaptypeobject { - /* Note: there's a dependency on the order of these members - in slotptr() in typeobject.c . */ - PyTypeObject ht_type; - PyAsyncMethods as_async; - PyNumberMethods as_number; - PyMappingMethods as_mapping; - PySequenceMethods as_sequence; /* as_sequence comes after as_mapping, - so that the mapping wins when both - the mapping and the sequence define - a given operator (e.g. __getitem__). - see add_operators() in typeobject.c . */ - PyBufferProcs as_buffer; - PyObject *ht_name, *ht_slots, *ht_qualname; - struct _dictkeysobject *ht_cached_keys; - PyObject *ht_module; - char *_ht_tpname; // Storage for "tp_name"; see PyType_FromModuleAndSpec - struct _specialization_cache _spec_cache; // For use by the specializer. - /* here are optional user slots, followed by the members. */ -} PyHeapTypeObject; - -PyAPI_FUNC(const char *) _PyType_Name(PyTypeObject *); -PyAPI_FUNC(PyObject *) _PyType_Lookup(PyTypeObject *, PyObject *); -PyAPI_FUNC(PyObject *) _PyType_LookupId(PyTypeObject *, _Py_Identifier *); -PyAPI_FUNC(PyObject *) _PyObject_LookupSpecialId(PyObject *, _Py_Identifier *); -#ifndef Py_BUILD_CORE -// Backward compatibility for 3rd-party extensions -// that may be using the old name. -#define _PyObject_LookupSpecial _PyObject_LookupSpecialId -#endif -PyAPI_FUNC(PyTypeObject *) _PyType_CalculateMetaclass(PyTypeObject *, PyObject *); -PyAPI_FUNC(PyObject *) _PyType_GetDocFromInternalDoc(const char *, const char *); -PyAPI_FUNC(PyObject *) _PyType_GetTextSignatureFromInternalDoc(const char *, const char *); -PyAPI_FUNC(PyObject *) PyType_GetModuleByDef(PyTypeObject *, PyModuleDef *); -PyAPI_FUNC(PyObject *) PyType_GetDict(PyTypeObject *); - -PyAPI_FUNC(int) PyObject_Print(PyObject *, FILE *, int); -PyAPI_FUNC(void) _Py_BreakPoint(void); -PyAPI_FUNC(void) _PyObject_Dump(PyObject *); -PyAPI_FUNC(int) _PyObject_IsFreed(PyObject *); - -PyAPI_FUNC(int) _PyObject_IsAbstract(PyObject *); -PyAPI_FUNC(PyObject *) _PyObject_GetAttrId(PyObject *, _Py_Identifier *); -PyAPI_FUNC(int) _PyObject_SetAttrId(PyObject *, _Py_Identifier *, PyObject *); -/* Replacements of PyObject_GetAttr() and _PyObject_GetAttrId() which - don't raise AttributeError. - - Return 1 and set *result != NULL if an attribute is found. - Return 0 and set *result == NULL if an attribute is not found; - an AttributeError is silenced. - Return -1 and set *result == NULL if an error other than AttributeError - is raised. -*/ -PyAPI_FUNC(int) _PyObject_LookupAttr(PyObject *, PyObject *, PyObject **); -PyAPI_FUNC(int) _PyObject_LookupAttrId(PyObject *, _Py_Identifier *, PyObject **); - -PyAPI_FUNC(int) _PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **method); - -PyAPI_FUNC(PyObject **) _PyObject_GetDictPtr(PyObject *); -PyAPI_FUNC(PyObject *) _PyObject_NextNotImplemented(PyObject *); -PyAPI_FUNC(void) PyObject_CallFinalizer(PyObject *); -PyAPI_FUNC(int) PyObject_CallFinalizerFromDealloc(PyObject *); - -/* Same as PyObject_Generic{Get,Set}Attr, but passing the attributes - dict as the last parameter. */ -PyAPI_FUNC(PyObject *) -_PyObject_GenericGetAttrWithDict(PyObject *, PyObject *, PyObject *, int); -PyAPI_FUNC(int) -_PyObject_GenericSetAttrWithDict(PyObject *, PyObject *, - PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) _PyObject_FunctionStr(PyObject *); - -/* Safely decref `dst` and set `dst` to `src`. - * - * As in case of Py_CLEAR "the obvious" code can be deadly: - * - * Py_DECREF(dst); - * dst = src; - * - * The safe way is: - * - * Py_SETREF(dst, src); - * - * That arranges to set `dst` to `src` _before_ decref'ing, so that any code - * triggered as a side-effect of `dst` getting torn down no longer believes - * `dst` points to a valid object. - * - * Temporary variables are used to only evalutate macro arguments once and so - * avoid the duplication of side effects. _Py_TYPEOF() or memcpy() is used to - * avoid a miscompilation caused by type punning. See Py_CLEAR() comment for - * implementation details about type punning. - * - * The memcpy() implementation does not emit a compiler warning if 'src' has - * not the same type than 'src': any pointer type is accepted for 'src'. - */ -#ifdef _Py_TYPEOF -#define Py_SETREF(dst, src) \ - do { \ - _Py_TYPEOF(dst)* _tmp_dst_ptr = &(dst); \ - _Py_TYPEOF(dst) _tmp_old_dst = (*_tmp_dst_ptr); \ - *_tmp_dst_ptr = (src); \ - Py_DECREF(_tmp_old_dst); \ - } while (0) -#else -#define Py_SETREF(dst, src) \ - do { \ - PyObject **_tmp_dst_ptr = _Py_CAST(PyObject**, &(dst)); \ - PyObject *_tmp_old_dst = (*_tmp_dst_ptr); \ - PyObject *_tmp_src = _PyObject_CAST(src); \ - memcpy(_tmp_dst_ptr, &_tmp_src, sizeof(PyObject*)); \ - Py_DECREF(_tmp_old_dst); \ - } while (0) -#endif - -/* Py_XSETREF() is a variant of Py_SETREF() that uses Py_XDECREF() instead of - * Py_DECREF(). - */ -#ifdef _Py_TYPEOF -#define Py_XSETREF(dst, src) \ - do { \ - _Py_TYPEOF(dst)* _tmp_dst_ptr = &(dst); \ - _Py_TYPEOF(dst) _tmp_old_dst = (*_tmp_dst_ptr); \ - *_tmp_dst_ptr = (src); \ - Py_XDECREF(_tmp_old_dst); \ - } while (0) -#else -#define Py_XSETREF(dst, src) \ - do { \ - PyObject **_tmp_dst_ptr = _Py_CAST(PyObject**, &(dst)); \ - PyObject *_tmp_old_dst = (*_tmp_dst_ptr); \ - PyObject *_tmp_src = _PyObject_CAST(src); \ - memcpy(_tmp_dst_ptr, &_tmp_src, sizeof(PyObject*)); \ - Py_XDECREF(_tmp_old_dst); \ - } while (0) -#endif - - -PyAPI_DATA(PyTypeObject) _PyNone_Type; -PyAPI_DATA(PyTypeObject) _PyNotImplemented_Type; - -/* Maps Py_LT to Py_GT, ..., Py_GE to Py_LE. - * Defined in object.c. - */ -PyAPI_DATA(int) _Py_SwappedOp[]; - -PyAPI_FUNC(void) -_PyDebugAllocatorStats(FILE *out, const char *block_name, int num_blocks, - size_t sizeof_block); -PyAPI_FUNC(void) -_PyObject_DebugTypeStats(FILE *out); - -/* Define a pair of assertion macros: - _PyObject_ASSERT_FROM(), _PyObject_ASSERT_WITH_MSG() and _PyObject_ASSERT(). - - These work like the regular C assert(), in that they will abort the - process with a message on stderr if the given condition fails to hold, - but compile away to nothing if NDEBUG is defined. - - However, before aborting, Python will also try to call _PyObject_Dump() on - the given object. This may be of use when investigating bugs in which a - particular object is corrupt (e.g. buggy a tp_visit method in an extension - module breaking the garbage collector), to help locate the broken objects. - - The WITH_MSG variant allows you to supply an additional message that Python - will attempt to print to stderr, after the object dump. */ -#ifdef NDEBUG - /* No debugging: compile away the assertions: */ -# define _PyObject_ASSERT_FROM(obj, expr, msg, filename, lineno, func) \ - ((void)0) -#else - /* With debugging: generate checks: */ -# define _PyObject_ASSERT_FROM(obj, expr, msg, filename, lineno, func) \ - ((expr) \ - ? (void)(0) \ - : _PyObject_AssertFailed((obj), Py_STRINGIFY(expr), \ - (msg), (filename), (lineno), (func))) -#endif - -#define _PyObject_ASSERT_WITH_MSG(obj, expr, msg) \ - _PyObject_ASSERT_FROM((obj), expr, (msg), __FILE__, __LINE__, __func__) -#define _PyObject_ASSERT(obj, expr) \ - _PyObject_ASSERT_WITH_MSG((obj), expr, NULL) - -#define _PyObject_ASSERT_FAILED_MSG(obj, msg) \ - _PyObject_AssertFailed((obj), NULL, (msg), __FILE__, __LINE__, __func__) - -/* Declare and define _PyObject_AssertFailed() even when NDEBUG is defined, - to avoid causing compiler/linker errors when building extensions without - NDEBUG against a Python built with NDEBUG defined. - - msg, expr and function can be NULL. */ -PyAPI_FUNC(void) _Py_NO_RETURN _PyObject_AssertFailed( - PyObject *obj, - const char *expr, - const char *msg, - const char *file, - int line, - const char *function); - -/* Check if an object is consistent. For example, ensure that the reference - counter is greater than or equal to 1, and ensure that ob_type is not NULL. - - Call _PyObject_AssertFailed() if the object is inconsistent. - - If check_content is zero, only check header fields: reduce the overhead. - - The function always return 1. The return value is just here to be able to - write: - - assert(_PyObject_CheckConsistency(obj, 1)); */ -PyAPI_FUNC(int) _PyObject_CheckConsistency( - PyObject *op, - int check_content); - - -/* Trashcan mechanism, thanks to Christian Tismer. - -When deallocating a container object, it's possible to trigger an unbounded -chain of deallocations, as each Py_DECREF in turn drops the refcount on "the -next" object in the chain to 0. This can easily lead to stack overflows, -especially in threads (which typically have less stack space to work with). - -A container object can avoid this by bracketing the body of its tp_dealloc -function with a pair of macros: - -static void -mytype_dealloc(mytype *p) -{ - ... declarations go here ... - - PyObject_GC_UnTrack(p); // must untrack first - Py_TRASHCAN_BEGIN(p, mytype_dealloc) - ... The body of the deallocator goes here, including all calls ... - ... to Py_DECREF on contained objects. ... - Py_TRASHCAN_END // there should be no code after this -} - -CAUTION: Never return from the middle of the body! If the body needs to -"get out early", put a label immediately before the Py_TRASHCAN_END -call, and goto it. Else the call-depth counter (see below) will stay -above 0 forever, and the trashcan will never get emptied. - -How it works: The BEGIN macro increments a call-depth counter. So long -as this counter is small, the body of the deallocator is run directly without -further ado. But if the counter gets large, it instead adds p to a list of -objects to be deallocated later, skips the body of the deallocator, and -resumes execution after the END macro. The tp_dealloc routine then returns -without deallocating anything (and so unbounded call-stack depth is avoided). - -When the call stack finishes unwinding again, code generated by the END macro -notices this, and calls another routine to deallocate all the objects that -may have been added to the list of deferred deallocations. In effect, a -chain of N deallocations is broken into (N-1)/(_PyTrash_UNWIND_LEVEL-1) pieces, -with the call stack never exceeding a depth of _PyTrash_UNWIND_LEVEL. - -Since the tp_dealloc of a subclass typically calls the tp_dealloc of the base -class, we need to ensure that the trashcan is only triggered on the tp_dealloc -of the actual class being deallocated. Otherwise we might end up with a -partially-deallocated object. To check this, the tp_dealloc function must be -passed as second argument to Py_TRASHCAN_BEGIN(). -*/ - -/* Python 3.9 private API, invoked by the macros below. */ -PyAPI_FUNC(int) _PyTrash_begin(PyThreadState *tstate, PyObject *op); -PyAPI_FUNC(void) _PyTrash_end(PyThreadState *tstate); -/* Python 3.10 private API, invoked by the Py_TRASHCAN_BEGIN(). */ -PyAPI_FUNC(int) _PyTrash_cond(PyObject *op, destructor dealloc); - -#define Py_TRASHCAN_BEGIN_CONDITION(op, cond) \ - do { \ - PyThreadState *_tstate = NULL; \ - /* If "cond" is false, then _tstate remains NULL and the deallocator \ - * is run normally without involving the trashcan */ \ - if (cond) { \ - _tstate = _PyThreadState_UncheckedGet(); \ - if (_PyTrash_begin(_tstate, _PyObject_CAST(op))) { \ - break; \ - } \ - } - /* The body of the deallocator is here. */ -#define Py_TRASHCAN_END \ - if (_tstate) { \ - _PyTrash_end(_tstate); \ - } \ - } while (0); - -#define Py_TRASHCAN_BEGIN(op, dealloc) \ - Py_TRASHCAN_BEGIN_CONDITION((op), \ - _PyTrash_cond(_PyObject_CAST(op), (destructor)(dealloc))) - -/* The following two macros, Py_TRASHCAN_SAFE_BEGIN and - * Py_TRASHCAN_SAFE_END, are deprecated since version 3.11 and - * will be removed in the future. - * Use Py_TRASHCAN_BEGIN and Py_TRASHCAN_END instead. - */ -Py_DEPRECATED(3.11) typedef int UsingDeprecatedTrashcanMacro; -#define Py_TRASHCAN_SAFE_BEGIN(op) \ - do { \ - UsingDeprecatedTrashcanMacro cond=1; \ - Py_TRASHCAN_BEGIN_CONDITION((op), cond); -#define Py_TRASHCAN_SAFE_END(op) \ - Py_TRASHCAN_END; \ - } while(0); - -PyAPI_FUNC(void *) PyObject_GetItemData(PyObject *obj); - -PyAPI_FUNC(int) _PyObject_VisitManagedDict(PyObject *obj, visitproc visit, void *arg); -PyAPI_FUNC(void) _PyObject_ClearManagedDict(PyObject *obj); - -#define TYPE_MAX_WATCHERS 8 - -typedef int(*PyType_WatchCallback)(PyTypeObject *); -PyAPI_FUNC(int) PyType_AddWatcher(PyType_WatchCallback callback); -PyAPI_FUNC(int) PyType_ClearWatcher(int watcher_id); -PyAPI_FUNC(int) PyType_Watch(int watcher_id, PyObject *type); -PyAPI_FUNC(int) PyType_Unwatch(int watcher_id, PyObject *type); - -/* Attempt to assign a version tag to the given type. - * - * Returns 1 if the type already had a valid version tag or a new one was - * assigned, or 0 if a new tag could not be assigned. - */ -PyAPI_FUNC(int) PyUnstable_Type_AssignVersionTag(PyTypeObject *type); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/objimpl.h b/_Pre_Builds/_Python312_cpp/include/cpython/objimpl.h deleted file mode 100644 index 5a8cdd5..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/objimpl.h +++ /dev/null @@ -1,95 +0,0 @@ -#ifndef Py_CPYTHON_OBJIMPL_H -# error "this header file must not be included directly" -#endif - -static inline size_t _PyObject_SIZE(PyTypeObject *type) { - return _Py_STATIC_CAST(size_t, type->tp_basicsize); -} - -/* _PyObject_VAR_SIZE returns the number of bytes (as size_t) allocated for a - vrbl-size object with nitems items, exclusive of gc overhead (if any). The - value is rounded up to the closest multiple of sizeof(void *), in order to - ensure that pointer fields at the end of the object are correctly aligned - for the platform (this is of special importance for subclasses of, e.g., - str or int, so that pointers can be stored after the embedded data). - - Note that there's no memory wastage in doing this, as malloc has to - return (at worst) pointer-aligned memory anyway. -*/ -#if ((SIZEOF_VOID_P - 1) & SIZEOF_VOID_P) != 0 -# error "_PyObject_VAR_SIZE requires SIZEOF_VOID_P be a power of 2" -#endif - -static inline size_t _PyObject_VAR_SIZE(PyTypeObject *type, Py_ssize_t nitems) { - size_t size = _Py_STATIC_CAST(size_t, type->tp_basicsize); - size += _Py_STATIC_CAST(size_t, nitems) * _Py_STATIC_CAST(size_t, type->tp_itemsize); - return _Py_SIZE_ROUND_UP(size, SIZEOF_VOID_P); -} - - -/* This example code implements an object constructor with a custom - allocator, where PyObject_New is inlined, and shows the important - distinction between two steps (at least): - 1) the actual allocation of the object storage; - 2) the initialization of the Python specific fields - in this storage with PyObject_{Init, InitVar}. - - PyObject * - YourObject_New(...) - { - PyObject *op; - - op = (PyObject *) Your_Allocator(_PyObject_SIZE(YourTypeStruct)); - if (op == NULL) { - return PyErr_NoMemory(); - } - - PyObject_Init(op, &YourTypeStruct); - - op->ob_field = value; - ... - return op; - } - - Note that in C++, the use of the new operator usually implies that - the 1st step is performed automatically for you, so in a C++ class - constructor you would start directly with PyObject_Init/InitVar. */ - - -typedef struct { - /* user context passed as the first argument to the 2 functions */ - void *ctx; - - /* allocate an arena of size bytes */ - void* (*alloc) (void *ctx, size_t size); - - /* free an arena */ - void (*free) (void *ctx, void *ptr, size_t size); -} PyObjectArenaAllocator; - -/* Get the arena allocator. */ -PyAPI_FUNC(void) PyObject_GetArenaAllocator(PyObjectArenaAllocator *allocator); - -/* Set the arena allocator. */ -PyAPI_FUNC(void) PyObject_SetArenaAllocator(PyObjectArenaAllocator *allocator); - - -/* Test if an object implements the garbage collector protocol */ -PyAPI_FUNC(int) PyObject_IS_GC(PyObject *obj); - - -/* Code built with Py_BUILD_CORE must include pycore_gc.h instead which - defines a different _PyGC_FINALIZED() macro. */ -#ifndef Py_BUILD_CORE - // Kept for backward compatibility with Python 3.8 -# define _PyGC_FINALIZED(o) PyObject_GC_IsFinalized(o) -#endif - - -// Test if a type supports weak references -PyAPI_FUNC(int) PyType_SUPPORTS_WEAKREFS(PyTypeObject *type); - -PyAPI_FUNC(PyObject **) PyObject_GET_WEAKREFS_LISTPTR(PyObject *op); - -PyAPI_FUNC(PyObject *) PyUnstable_Object_GC_NewWithExtraData(PyTypeObject *, - size_t); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/odictobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/odictobject.h deleted file mode 100644 index 3822d55..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/odictobject.h +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef Py_ODICTOBJECT_H -#define Py_ODICTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* OrderedDict */ -/* This API is optional and mostly redundant. */ - -#ifndef Py_LIMITED_API - -typedef struct _odictobject PyODictObject; - -PyAPI_DATA(PyTypeObject) PyODict_Type; -PyAPI_DATA(PyTypeObject) PyODictIter_Type; -PyAPI_DATA(PyTypeObject) PyODictKeys_Type; -PyAPI_DATA(PyTypeObject) PyODictItems_Type; -PyAPI_DATA(PyTypeObject) PyODictValues_Type; - -#define PyODict_Check(op) PyObject_TypeCheck((op), &PyODict_Type) -#define PyODict_CheckExact(op) Py_IS_TYPE((op), &PyODict_Type) -#define PyODict_SIZE(op) PyDict_GET_SIZE((op)) - -PyAPI_FUNC(PyObject *) PyODict_New(void); -PyAPI_FUNC(int) PyODict_SetItem(PyObject *od, PyObject *key, PyObject *item); -PyAPI_FUNC(int) PyODict_DelItem(PyObject *od, PyObject *key); - -/* wrappers around PyDict* functions */ -#define PyODict_GetItem(od, key) PyDict_GetItem(_PyObject_CAST(od), (key)) -#define PyODict_GetItemWithError(od, key) \ - PyDict_GetItemWithError(_PyObject_CAST(od), (key)) -#define PyODict_Contains(od, key) PyDict_Contains(_PyObject_CAST(od), (key)) -#define PyODict_Size(od) PyDict_Size(_PyObject_CAST(od)) -#define PyODict_GetItemString(od, key) \ - PyDict_GetItemString(_PyObject_CAST(od), (key)) - -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ODICTOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/picklebufobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/picklebufobject.h deleted file mode 100644 index f3cbaee..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/picklebufobject.h +++ /dev/null @@ -1,31 +0,0 @@ -/* PickleBuffer object. This is built-in for ease of use from third-party - * C extensions. - */ - -#ifndef Py_PICKLEBUFOBJECT_H -#define Py_PICKLEBUFOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API - -PyAPI_DATA(PyTypeObject) PyPickleBuffer_Type; - -#define PyPickleBuffer_Check(op) Py_IS_TYPE((op), &PyPickleBuffer_Type) - -/* Create a PickleBuffer redirecting to the given buffer-enabled object */ -PyAPI_FUNC(PyObject *) PyPickleBuffer_FromObject(PyObject *); -/* Get the PickleBuffer's underlying view to the original object - * (NULL if released) - */ -PyAPI_FUNC(const Py_buffer *) PyPickleBuffer_GetBuffer(PyObject *); -/* Release the PickleBuffer. Returns 0 on success, -1 on error. */ -PyAPI_FUNC(int) PyPickleBuffer_Release(PyObject *); - -#endif /* !Py_LIMITED_API */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PICKLEBUFOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pthread_stubs.h b/_Pre_Builds/_Python312_cpp/include/cpython/pthread_stubs.h deleted file mode 100644 index d95ee03..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pthread_stubs.h +++ /dev/null @@ -1,88 +0,0 @@ -#ifndef Py_CPYTHON_PTRHEAD_STUBS_H -#define Py_CPYTHON_PTRHEAD_STUBS_H - -#if !defined(HAVE_PTHREAD_STUBS) -# error "this header file requires stubbed pthreads." -#endif - -#ifndef _POSIX_THREADS -# define _POSIX_THREADS 1 -#endif - -/* Minimal pthread stubs for CPython. - * - * The stubs implement the minimum pthread API for CPython. - * - pthread_create() fails. - * - pthread_exit() calls exit(0). - * - pthread_key_*() functions implement minimal TSS without destructor. - * - all other functions do nothing and return 0. - */ - -#ifdef __wasi__ -// WASI's bits/alltypes.h provides type definitions when __NEED_ is set. -// The header file can be included multiple times. -# define __NEED_pthread_cond_t 1 -# define __NEED_pthread_condattr_t 1 -# define __NEED_pthread_mutex_t 1 -# define __NEED_pthread_mutexattr_t 1 -# define __NEED_pthread_key_t 1 -# define __NEED_pthread_t 1 -# define __NEED_pthread_attr_t 1 -# include -#else -typedef struct { void *__x; } pthread_cond_t; -typedef struct { unsigned __attr; } pthread_condattr_t; -typedef struct { void *__x; } pthread_mutex_t; -typedef struct { unsigned __attr; } pthread_mutexattr_t; -typedef unsigned pthread_key_t; -typedef unsigned pthread_t; -typedef struct { unsigned __attr; } pthread_attr_t; -#endif - -// mutex -PyAPI_FUNC(int) pthread_mutex_init(pthread_mutex_t *restrict mutex, - const pthread_mutexattr_t *restrict attr); -PyAPI_FUNC(int) pthread_mutex_destroy(pthread_mutex_t *mutex); -PyAPI_FUNC(int) pthread_mutex_trylock(pthread_mutex_t *mutex); -PyAPI_FUNC(int) pthread_mutex_lock(pthread_mutex_t *mutex); -PyAPI_FUNC(int) pthread_mutex_unlock(pthread_mutex_t *mutex); - -// condition -PyAPI_FUNC(int) pthread_cond_init(pthread_cond_t *restrict cond, - const pthread_condattr_t *restrict attr); -PyAPI_FUNC(int) pthread_cond_destroy(pthread_cond_t *cond); -PyAPI_FUNC(int) pthread_cond_wait(pthread_cond_t *restrict cond, - pthread_mutex_t *restrict mutex); -PyAPI_FUNC(int) pthread_cond_timedwait(pthread_cond_t *restrict cond, - pthread_mutex_t *restrict mutex, - const struct timespec *restrict abstime); -PyAPI_FUNC(int) pthread_cond_signal(pthread_cond_t *cond); -PyAPI_FUNC(int) pthread_condattr_init(pthread_condattr_t *attr); -PyAPI_FUNC(int) pthread_condattr_setclock( - pthread_condattr_t *attr, clockid_t clock_id); - -// pthread -PyAPI_FUNC(int) pthread_create(pthread_t *restrict thread, - const pthread_attr_t *restrict attr, - void *(*start_routine)(void *), - void *restrict arg); -PyAPI_FUNC(int) pthread_detach(pthread_t thread); -PyAPI_FUNC(pthread_t) pthread_self(void); -PyAPI_FUNC(int) pthread_exit(void *retval) __attribute__ ((__noreturn__)); -PyAPI_FUNC(int) pthread_attr_init(pthread_attr_t *attr); -PyAPI_FUNC(int) pthread_attr_setstacksize(pthread_attr_t *attr, size_t stacksize); -PyAPI_FUNC(int) pthread_attr_destroy(pthread_attr_t *attr); - - -// pthread_key -#ifndef PTHREAD_KEYS_MAX -# define PTHREAD_KEYS_MAX 128 -#endif - -PyAPI_FUNC(int) pthread_key_create(pthread_key_t *key, - void (*destr_function)(void *)); -PyAPI_FUNC(int) pthread_key_delete(pthread_key_t key); -PyAPI_FUNC(void *) pthread_getspecific(pthread_key_t key); -PyAPI_FUNC(int) pthread_setspecific(pthread_key_t key, const void *value); - -#endif // Py_CPYTHON_PTRHEAD_STUBS_H diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pyctype.h b/_Pre_Builds/_Python312_cpp/include/cpython/pyctype.h deleted file mode 100644 index 729d932..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pyctype.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef PYCTYPE_H -#define PYCTYPE_H -#ifdef __cplusplus -extern "C" { -#endif - -#define PY_CTF_LOWER 0x01 -#define PY_CTF_UPPER 0x02 -#define PY_CTF_ALPHA (PY_CTF_LOWER|PY_CTF_UPPER) -#define PY_CTF_DIGIT 0x04 -#define PY_CTF_ALNUM (PY_CTF_ALPHA|PY_CTF_DIGIT) -#define PY_CTF_SPACE 0x08 -#define PY_CTF_XDIGIT 0x10 - -PyAPI_DATA(const unsigned int) _Py_ctype_table[256]; - -/* Unlike their C counterparts, the following macros are not meant to - * handle an int with any of the values [EOF, 0-UCHAR_MAX]. The argument - * must be a signed/unsigned char. */ -#define Py_ISLOWER(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_LOWER) -#define Py_ISUPPER(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_UPPER) -#define Py_ISALPHA(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_ALPHA) -#define Py_ISDIGIT(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_DIGIT) -#define Py_ISXDIGIT(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_XDIGIT) -#define Py_ISALNUM(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_ALNUM) -#define Py_ISSPACE(c) (_Py_ctype_table[Py_CHARMASK(c)] & PY_CTF_SPACE) - -PyAPI_DATA(const unsigned char) _Py_ctype_tolower[256]; -PyAPI_DATA(const unsigned char) _Py_ctype_toupper[256]; - -#define Py_TOLOWER(c) (_Py_ctype_tolower[Py_CHARMASK(c)]) -#define Py_TOUPPER(c) (_Py_ctype_toupper[Py_CHARMASK(c)]) - -#ifdef __cplusplus -} -#endif -#endif /* !PYCTYPE_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pydebug.h b/_Pre_Builds/_Python312_cpp/include/cpython/pydebug.h deleted file mode 100644 index f6ebd99..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pydebug.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_PYDEBUG_H -#define Py_PYDEBUG_H -#ifdef __cplusplus -extern "C" { -#endif - -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_DebugFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_VerboseFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_QuietFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_InteractiveFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_InspectFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_OptimizeFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_NoSiteFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_BytesWarningFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_FrozenFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_IgnoreEnvironmentFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_DontWriteBytecodeFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_NoUserSiteDirectory; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_UnbufferedStdioFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_HashRandomizationFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_IsolatedFlag; - -#ifdef MS_WINDOWS -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_LegacyWindowsFSEncodingFlag; -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_LegacyWindowsStdioFlag; -#endif - -/* this is a wrapper around getenv() that pays attention to - Py_IgnoreEnvironmentFlag. It should be used for getting variables like - PYTHONPATH and PYTHONHOME from the environment */ -PyAPI_FUNC(char*) Py_GETENV(const char *name); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYDEBUG_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pyerrors.h b/_Pre_Builds/_Python312_cpp/include/cpython/pyerrors.h deleted file mode 100644 index 156665c..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pyerrors.h +++ /dev/null @@ -1,178 +0,0 @@ -#ifndef Py_CPYTHON_ERRORS_H -# error "this header file must not be included directly" -#endif - -/* Error objects */ - -/* PyException_HEAD defines the initial segment of every exception class. */ -#define PyException_HEAD PyObject_HEAD PyObject *dict;\ - PyObject *args; PyObject *notes; PyObject *traceback;\ - PyObject *context; PyObject *cause;\ - char suppress_context; - -typedef struct { - PyException_HEAD -} PyBaseExceptionObject; - -typedef struct { - PyException_HEAD - PyObject *msg; - PyObject *excs; -} PyBaseExceptionGroupObject; - -typedef struct { - PyException_HEAD - PyObject *msg; - PyObject *filename; - PyObject *lineno; - PyObject *offset; - PyObject *end_lineno; - PyObject *end_offset; - PyObject *text; - PyObject *print_file_and_line; -} PySyntaxErrorObject; - -typedef struct { - PyException_HEAD - PyObject *msg; - PyObject *name; - PyObject *path; - PyObject *name_from; -} PyImportErrorObject; - -typedef struct { - PyException_HEAD - PyObject *encoding; - PyObject *object; - Py_ssize_t start; - Py_ssize_t end; - PyObject *reason; -} PyUnicodeErrorObject; - -typedef struct { - PyException_HEAD - PyObject *code; -} PySystemExitObject; - -typedef struct { - PyException_HEAD - PyObject *myerrno; - PyObject *strerror; - PyObject *filename; - PyObject *filename2; -#ifdef MS_WINDOWS - PyObject *winerror; -#endif - Py_ssize_t written; /* only for BlockingIOError, -1 otherwise */ -} PyOSErrorObject; - -typedef struct { - PyException_HEAD - PyObject *value; -} PyStopIterationObject; - -typedef struct { - PyException_HEAD - PyObject *name; -} PyNameErrorObject; - -typedef struct { - PyException_HEAD - PyObject *obj; - PyObject *name; -} PyAttributeErrorObject; - -/* Compatibility typedefs */ -typedef PyOSErrorObject PyEnvironmentErrorObject; -#ifdef MS_WINDOWS -typedef PyOSErrorObject PyWindowsErrorObject; -#endif - -/* Error handling definitions */ - -PyAPI_FUNC(void) _PyErr_SetKeyError(PyObject *); -PyAPI_FUNC(_PyErr_StackItem*) _PyErr_GetTopmostException(PyThreadState *tstate); -PyAPI_FUNC(PyObject*) _PyErr_GetHandledException(PyThreadState *); -PyAPI_FUNC(void) _PyErr_SetHandledException(PyThreadState *, PyObject *); -PyAPI_FUNC(void) _PyErr_GetExcInfo(PyThreadState *, PyObject **, PyObject **, PyObject **); - -/* Context manipulation (PEP 3134) */ - -Py_DEPRECATED(3.12) PyAPI_FUNC(void) _PyErr_ChainExceptions(PyObject *, PyObject *, PyObject *); -PyAPI_FUNC(void) _PyErr_ChainExceptions1(PyObject *); - -/* Like PyErr_Format(), but saves current exception as __context__ and - __cause__. - */ -PyAPI_FUNC(PyObject *) _PyErr_FormatFromCause( - PyObject *exception, - const char *format, /* ASCII-encoded string */ - ... - ); - -/* In exceptions.c */ - -PyAPI_FUNC(int) _PyException_AddNote( - PyObject *exc, - PyObject *note); - -PyAPI_FUNC(PyObject*) PyUnstable_Exc_PrepReraiseStar( - PyObject *orig, - PyObject *excs); - -/* In signalmodule.c */ - -int PySignal_SetWakeupFd(int fd); -PyAPI_FUNC(int) _PyErr_CheckSignals(void); - -/* Support for adding program text to SyntaxErrors */ - -PyAPI_FUNC(void) PyErr_SyntaxLocationObject( - PyObject *filename, - int lineno, - int col_offset); - -PyAPI_FUNC(void) PyErr_RangedSyntaxLocationObject( - PyObject *filename, - int lineno, - int col_offset, - int end_lineno, - int end_col_offset); - -PyAPI_FUNC(PyObject *) PyErr_ProgramTextObject( - PyObject *filename, - int lineno); - -PyAPI_FUNC(PyObject *) _PyErr_ProgramDecodedTextObject( - PyObject *filename, - int lineno, - const char* encoding); - -PyAPI_FUNC(PyObject *) _PyUnicodeTranslateError_Create( - PyObject *object, - Py_ssize_t start, - Py_ssize_t end, - const char *reason /* UTF-8 encoded string */ - ); - -PyAPI_FUNC(void) _PyErr_WriteUnraisableMsg( - const char *err_msg, - PyObject *obj); - -PyAPI_FUNC(void) _Py_NO_RETURN _Py_FatalErrorFunc( - const char *func, - const char *message); - -PyAPI_FUNC(void) _Py_NO_RETURN _Py_FatalErrorFormat( - const char *func, - const char *format, - ...); - -extern PyObject *_PyErr_SetImportErrorWithNameFrom( - PyObject *, - PyObject *, - PyObject *, - PyObject *); - - -#define Py_FatalError(message) _Py_FatalErrorFunc(__func__, (message)) diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pyfpe.h b/_Pre_Builds/_Python312_cpp/include/cpython/pyfpe.h deleted file mode 100644 index cc2def6..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pyfpe.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef Py_PYFPE_H -#define Py_PYFPE_H -/* Header excluded from the stable API */ -#ifndef Py_LIMITED_API - -/* These macros used to do something when Python was built with --with-fpectl, - * but support for that was dropped in 3.7. We continue to define them though, - * to avoid breaking API users. - */ - -#define PyFPE_START_PROTECT(err_string, leave_stmt) -#define PyFPE_END_PROTECT(v) - -#endif /* !defined(Py_LIMITED_API) */ -#endif /* !Py_PYFPE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pyframe.h b/_Pre_Builds/_Python312_cpp/include/cpython/pyframe.h deleted file mode 100644 index 0e2afff..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pyframe.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef Py_CPYTHON_PYFRAME_H -# error "this header file must not be included directly" -#endif - -PyAPI_DATA(PyTypeObject) PyFrame_Type; - -#define PyFrame_Check(op) Py_IS_TYPE((op), &PyFrame_Type) - -PyAPI_FUNC(PyFrameObject *) PyFrame_GetBack(PyFrameObject *frame); -PyAPI_FUNC(PyObject *) PyFrame_GetLocals(PyFrameObject *frame); - -PyAPI_FUNC(PyObject *) PyFrame_GetGlobals(PyFrameObject *frame); -PyAPI_FUNC(PyObject *) PyFrame_GetBuiltins(PyFrameObject *frame); - -PyAPI_FUNC(PyObject *) PyFrame_GetGenerator(PyFrameObject *frame); -PyAPI_FUNC(int) PyFrame_GetLasti(PyFrameObject *frame); -PyAPI_FUNC(PyObject*) PyFrame_GetVar(PyFrameObject *frame, PyObject *name); -PyAPI_FUNC(PyObject*) PyFrame_GetVarString(PyFrameObject *frame, const char *name); - -/* The following functions are for use by debuggers and other tools - * implementing custom frame evaluators with PEP 523. */ - -struct _PyInterpreterFrame; - -/* Returns the code object of the frame (strong reference). - * Does not raise an exception. */ -PyAPI_FUNC(PyObject *) PyUnstable_InterpreterFrame_GetCode(struct _PyInterpreterFrame *frame); - -/* Returns a byte ofsset into the last executed instruction. - * Does not raise an exception. */ -PyAPI_FUNC(int) PyUnstable_InterpreterFrame_GetLasti(struct _PyInterpreterFrame *frame); - -/* Returns the currently executing line number, or -1 if there is no line number. - * Does not raise an exception. */ -PyAPI_FUNC(int) PyUnstable_InterpreterFrame_GetLine(struct _PyInterpreterFrame *frame); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pylifecycle.h b/_Pre_Builds/_Python312_cpp/include/cpython/pylifecycle.h deleted file mode 100644 index 4daea33..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pylifecycle.h +++ /dev/null @@ -1,111 +0,0 @@ -#ifndef Py_CPYTHON_PYLIFECYCLE_H -# error "this header file must not be included directly" -#endif - -/* Py_FrozenMain is kept out of the Limited API until documented and present - in all builds of Python */ -PyAPI_FUNC(int) Py_FrozenMain(int argc, char **argv); - -/* Only used by applications that embed the interpreter and need to - * override the standard encoding determination mechanism - */ -Py_DEPRECATED(3.11) PyAPI_FUNC(int) Py_SetStandardStreamEncoding( - const char *encoding, - const char *errors); - -/* PEP 432 Multi-phase initialization API (Private while provisional!) */ - -PyAPI_FUNC(PyStatus) Py_PreInitialize( - const PyPreConfig *src_config); -PyAPI_FUNC(PyStatus) Py_PreInitializeFromBytesArgs( - const PyPreConfig *src_config, - Py_ssize_t argc, - char **argv); -PyAPI_FUNC(PyStatus) Py_PreInitializeFromArgs( - const PyPreConfig *src_config, - Py_ssize_t argc, - wchar_t **argv); - -PyAPI_FUNC(int) _Py_IsCoreInitialized(void); - - -/* Initialization and finalization */ - -PyAPI_FUNC(PyStatus) Py_InitializeFromConfig( - const PyConfig *config); -PyAPI_FUNC(PyStatus) _Py_InitializeMain(void); - -PyAPI_FUNC(int) Py_RunMain(void); - - -PyAPI_FUNC(void) _Py_NO_RETURN Py_ExitStatusException(PyStatus err); - -/* Restore signals that the interpreter has called SIG_IGN on to SIG_DFL. */ -PyAPI_FUNC(void) _Py_RestoreSignals(void); - -PyAPI_FUNC(int) Py_FdIsInteractive(FILE *, const char *); -PyAPI_FUNC(int) _Py_FdIsInteractive(FILE *fp, PyObject *filename); - -Py_DEPRECATED(3.11) PyAPI_FUNC(void) _Py_SetProgramFullPath(const wchar_t *); - -PyAPI_FUNC(const char *) _Py_gitidentifier(void); -PyAPI_FUNC(const char *) _Py_gitversion(void); - -PyAPI_FUNC(int) _Py_IsFinalizing(void); -PyAPI_FUNC(int) _Py_IsInterpreterFinalizing(PyInterpreterState *interp); - -/* Random */ -PyAPI_FUNC(int) _PyOS_URandom(void *buffer, Py_ssize_t size); -PyAPI_FUNC(int) _PyOS_URandomNonblock(void *buffer, Py_ssize_t size); - -/* Legacy locale support */ -PyAPI_FUNC(int) _Py_CoerceLegacyLocale(int warn); -PyAPI_FUNC(int) _Py_LegacyLocaleDetected(int warn); -PyAPI_FUNC(char *) _Py_SetLocaleFromEnv(int category); - -/* --- PyInterpreterConfig ------------------------------------ */ - -#define PyInterpreterConfig_DEFAULT_GIL (0) -#define PyInterpreterConfig_SHARED_GIL (1) -#define PyInterpreterConfig_OWN_GIL (2) - -typedef struct { - // XXX "allow_object_sharing"? "own_objects"? - int use_main_obmalloc; - int allow_fork; - int allow_exec; - int allow_threads; - int allow_daemon_threads; - int check_multi_interp_extensions; - int gil; -} PyInterpreterConfig; - -#define _PyInterpreterConfig_INIT \ - { \ - .use_main_obmalloc = 0, \ - .allow_fork = 0, \ - .allow_exec = 0, \ - .allow_threads = 1, \ - .allow_daemon_threads = 0, \ - .check_multi_interp_extensions = 1, \ - .gil = PyInterpreterConfig_OWN_GIL, \ - } - -#define _PyInterpreterConfig_LEGACY_INIT \ - { \ - .use_main_obmalloc = 1, \ - .allow_fork = 1, \ - .allow_exec = 1, \ - .allow_threads = 1, \ - .allow_daemon_threads = 1, \ - .check_multi_interp_extensions = 0, \ - .gil = PyInterpreterConfig_SHARED_GIL, \ - } - -PyAPI_FUNC(PyStatus) Py_NewInterpreterFromConfig( - PyThreadState **tstate_p, - const PyInterpreterConfig *config); - -typedef void (*atexit_datacallbackfunc)(void *); -PyAPI_FUNC(int) _Py_AtExit( - PyInterpreterState *, atexit_datacallbackfunc, void *); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pymem.h b/_Pre_Builds/_Python312_cpp/include/cpython/pymem.h deleted file mode 100644 index d1054d7..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pymem.h +++ /dev/null @@ -1,98 +0,0 @@ -#ifndef Py_CPYTHON_PYMEM_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(void *) PyMem_RawMalloc(size_t size); -PyAPI_FUNC(void *) PyMem_RawCalloc(size_t nelem, size_t elsize); -PyAPI_FUNC(void *) PyMem_RawRealloc(void *ptr, size_t new_size); -PyAPI_FUNC(void) PyMem_RawFree(void *ptr); - -/* Try to get the allocators name set by _PyMem_SetupAllocators(). */ -PyAPI_FUNC(const char*) _PyMem_GetCurrentAllocatorName(void); - -/* strdup() using PyMem_RawMalloc() */ -PyAPI_FUNC(char *) _PyMem_RawStrdup(const char *str); - -/* strdup() using PyMem_Malloc() */ -PyAPI_FUNC(char *) _PyMem_Strdup(const char *str); - -/* wcsdup() using PyMem_RawMalloc() */ -PyAPI_FUNC(wchar_t*) _PyMem_RawWcsdup(const wchar_t *str); - - -typedef enum { - /* PyMem_RawMalloc(), PyMem_RawRealloc() and PyMem_RawFree() */ - PYMEM_DOMAIN_RAW, - - /* PyMem_Malloc(), PyMem_Realloc() and PyMem_Free() */ - PYMEM_DOMAIN_MEM, - - /* PyObject_Malloc(), PyObject_Realloc() and PyObject_Free() */ - PYMEM_DOMAIN_OBJ -} PyMemAllocatorDomain; - -typedef enum { - PYMEM_ALLOCATOR_NOT_SET = 0, - PYMEM_ALLOCATOR_DEFAULT = 1, - PYMEM_ALLOCATOR_DEBUG = 2, - PYMEM_ALLOCATOR_MALLOC = 3, - PYMEM_ALLOCATOR_MALLOC_DEBUG = 4, -#ifdef WITH_PYMALLOC - PYMEM_ALLOCATOR_PYMALLOC = 5, - PYMEM_ALLOCATOR_PYMALLOC_DEBUG = 6, -#endif -} PyMemAllocatorName; - - -typedef struct { - /* user context passed as the first argument to the 4 functions */ - void *ctx; - - /* allocate a memory block */ - void* (*malloc) (void *ctx, size_t size); - - /* allocate a memory block initialized by zeros */ - void* (*calloc) (void *ctx, size_t nelem, size_t elsize); - - /* allocate or resize a memory block */ - void* (*realloc) (void *ctx, void *ptr, size_t new_size); - - /* release a memory block */ - void (*free) (void *ctx, void *ptr); -} PyMemAllocatorEx; - -/* Get the memory block allocator of the specified domain. */ -PyAPI_FUNC(void) PyMem_GetAllocator(PyMemAllocatorDomain domain, - PyMemAllocatorEx *allocator); - -/* Set the memory block allocator of the specified domain. - - The new allocator must return a distinct non-NULL pointer when requesting - zero bytes. - - For the PYMEM_DOMAIN_RAW domain, the allocator must be thread-safe: the GIL - is not held when the allocator is called. - - If the new allocator is not a hook (don't call the previous allocator), the - PyMem_SetupDebugHooks() function must be called to reinstall the debug hooks - on top on the new allocator. */ -PyAPI_FUNC(void) PyMem_SetAllocator(PyMemAllocatorDomain domain, - PyMemAllocatorEx *allocator); - -/* Setup hooks to detect bugs in the following Python memory allocator - functions: - - - PyMem_RawMalloc(), PyMem_RawRealloc(), PyMem_RawFree() - - PyMem_Malloc(), PyMem_Realloc(), PyMem_Free() - - PyObject_Malloc(), PyObject_Realloc() and PyObject_Free() - - Newly allocated memory is filled with the byte 0xCB, freed memory is filled - with the byte 0xDB. Additional checks: - - - detect API violations, ex: PyObject_Free() called on a buffer allocated - by PyMem_Malloc() - - detect write before the start of the buffer (buffer underflow) - - detect write after the end of the buffer (buffer overflow) - - The function does nothing if Python is not compiled is debug mode. */ -PyAPI_FUNC(void) PyMem_SetupDebugHooks(void); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pystate.h b/_Pre_Builds/_Python312_cpp/include/cpython/pystate.h deleted file mode 100644 index 628f2e0..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pystate.h +++ /dev/null @@ -1,444 +0,0 @@ -#ifndef Py_CPYTHON_PYSTATE_H -# error "this header file must not be included directly" -#endif - - -/* -Runtime Feature Flags - -Each flag indicate whether or not a specific runtime feature -is available in a given context. For example, forking the process -might not be allowed in the current interpreter (i.e. os.fork() would fail). -*/ - -/* Set if the interpreter share obmalloc runtime state - with the main interpreter. */ -#define Py_RTFLAGS_USE_MAIN_OBMALLOC (1UL << 5) - -/* Set if import should check a module for subinterpreter support. */ -#define Py_RTFLAGS_MULTI_INTERP_EXTENSIONS (1UL << 8) - -/* Set if threads are allowed. */ -#define Py_RTFLAGS_THREADS (1UL << 10) - -/* Set if daemon threads are allowed. */ -#define Py_RTFLAGS_DAEMON_THREADS (1UL << 11) - -/* Set if os.fork() is allowed. */ -#define Py_RTFLAGS_FORK (1UL << 15) - -/* Set if os.exec*() is allowed. */ -#define Py_RTFLAGS_EXEC (1UL << 16) - - -PyAPI_FUNC(int) _PyInterpreterState_HasFeature(PyInterpreterState *interp, - unsigned long feature); - - -/* private interpreter helpers */ - -PyAPI_FUNC(int) _PyInterpreterState_RequiresIDRef(PyInterpreterState *); -PyAPI_FUNC(void) _PyInterpreterState_RequireIDRef(PyInterpreterState *, int); - -PyAPI_FUNC(PyObject *) _PyInterpreterState_GetMainModule(PyInterpreterState *); - - -/* State unique per thread */ - -/* Py_tracefunc return -1 when raising an exception, or 0 for success. */ -typedef int (*Py_tracefunc)(PyObject *, PyFrameObject *, int, PyObject *); - -/* The following values are used for 'what' for tracefunc functions - * - * To add a new kind of trace event, also update "trace_init" in - * Python/sysmodule.c to define the Python level event name - */ -#define PyTrace_CALL 0 -#define PyTrace_EXCEPTION 1 -#define PyTrace_LINE 2 -#define PyTrace_RETURN 3 -#define PyTrace_C_CALL 4 -#define PyTrace_C_EXCEPTION 5 -#define PyTrace_C_RETURN 6 -#define PyTrace_OPCODE 7 - -// Internal structure: you should not use it directly, but use public functions -// like PyThreadState_EnterTracing() and PyThreadState_LeaveTracing(). -typedef struct _PyCFrame { - /* This struct will be threaded through the C stack - * allowing fast access to per-thread state that needs - * to be accessed quickly by the interpreter, but can - * be modified outside of the interpreter. - * - * WARNING: This makes data on the C stack accessible from - * heap objects. Care must be taken to maintain stack - * discipline and make sure that instances of this struct cannot - * accessed outside of their lifetime. - */ - /* Pointer to the currently executing frame (it can be NULL) */ - struct _PyInterpreterFrame *current_frame; - struct _PyCFrame *previous; -} _PyCFrame; - -typedef struct _err_stackitem { - /* This struct represents a single execution context where we might - * be currently handling an exception. It is a per-coroutine state - * (coroutine in the computer science sense, including the thread - * and generators). - * - * This is used as an entry on the exception stack, where each - * entry indicates if it is currently handling an exception. - * This ensures that the exception state is not impacted - * by "yields" from an except handler. The thread - * always has an entry (the bottom-most one). - */ - - /* The exception currently being handled in this context, if any. */ - PyObject *exc_value; - - struct _err_stackitem *previous_item; - -} _PyErr_StackItem; - -typedef struct _stack_chunk { - struct _stack_chunk *previous; - size_t size; - size_t top; - PyObject * data[1]; /* Variable sized */ -} _PyStackChunk; - -struct _py_trashcan { - int delete_nesting; - PyObject *delete_later; -}; - -struct _ts { - /* See Python/ceval.c for comments explaining most fields */ - - PyThreadState *prev; - PyThreadState *next; - PyInterpreterState *interp; - - struct { - /* Has been initialized to a safe state. - - In order to be effective, this must be set to 0 during or right - after allocation. */ - unsigned int initialized:1; - - /* Has been bound to an OS thread. */ - unsigned int bound:1; - /* Has been unbound from its OS thread. */ - unsigned int unbound:1; - /* Has been bound aa current for the GILState API. */ - unsigned int bound_gilstate:1; - /* Currently in use (maybe holds the GIL). */ - unsigned int active:1; - - /* various stages of finalization */ - unsigned int finalizing:1; - unsigned int cleared:1; - unsigned int finalized:1; - - /* padding to align to 4 bytes */ - unsigned int :24; - } _status; - - int py_recursion_remaining; - int py_recursion_limit; - - int c_recursion_remaining; - int recursion_headroom; /* Allow 50 more calls to handle any errors. */ - - /* 'tracing' keeps track of the execution depth when tracing/profiling. - This is to prevent the actual trace/profile code from being recorded in - the trace/profile. */ - int tracing; - int what_event; /* The event currently being monitored, if any. */ - - /* Pointer to current _PyCFrame in the C stack frame of the currently, - * or most recently, executing _PyEval_EvalFrameDefault. */ - _PyCFrame *cframe; - - Py_tracefunc c_profilefunc; - Py_tracefunc c_tracefunc; - PyObject *c_profileobj; - PyObject *c_traceobj; - - /* The exception currently being raised */ - PyObject *current_exception; - - /* Pointer to the top of the exception stack for the exceptions - * we may be currently handling. (See _PyErr_StackItem above.) - * This is never NULL. */ - _PyErr_StackItem *exc_info; - - PyObject *dict; /* Stores per-thread state */ - - int gilstate_counter; - - PyObject *async_exc; /* Asynchronous exception to raise */ - unsigned long thread_id; /* Thread id where this tstate was created */ - - /* Native thread id where this tstate was created. This will be 0 except on - * those platforms that have the notion of native thread id, for which the - * macro PY_HAVE_THREAD_NATIVE_ID is then defined. - */ - unsigned long native_thread_id; - - struct _py_trashcan trash; - - /* Called when a thread state is deleted normally, but not when it - * is destroyed after fork(). - * Pain: to prevent rare but fatal shutdown errors (issue 18808), - * Thread.join() must wait for the join'ed thread's tstate to be unlinked - * from the tstate chain. That happens at the end of a thread's life, - * in pystate.c. - * The obvious way doesn't quite work: create a lock which the tstate - * unlinking code releases, and have Thread.join() wait to acquire that - * lock. The problem is that we _are_ at the end of the thread's life: - * if the thread holds the last reference to the lock, decref'ing the - * lock will delete the lock, and that may trigger arbitrary Python code - * if there's a weakref, with a callback, to the lock. But by this time - * _PyRuntime.gilstate.tstate_current is already NULL, so only the simplest - * of C code can be allowed to run (in particular it must not be possible to - * release the GIL). - * So instead of holding the lock directly, the tstate holds a weakref to - * the lock: that's the value of on_delete_data below. Decref'ing a - * weakref is harmless. - * on_delete points to _threadmodule.c's static release_sentinel() function. - * After the tstate is unlinked, release_sentinel is called with the - * weakref-to-lock (on_delete_data) argument, and release_sentinel releases - * the indirectly held lock. - */ - void (*on_delete)(void *); - void *on_delete_data; - - int coroutine_origin_tracking_depth; - - PyObject *async_gen_firstiter; - PyObject *async_gen_finalizer; - - PyObject *context; - uint64_t context_ver; - - /* Unique thread state id. */ - uint64_t id; - - _PyStackChunk *datastack_chunk; - PyObject **datastack_top; - PyObject **datastack_limit; - /* XXX signal handlers should also be here */ - - /* The following fields are here to avoid allocation during init. - The data is exposed through PyThreadState pointer fields. - These fields should not be accessed directly outside of init. - This is indicated by an underscore prefix on the field names. - - All other PyInterpreterState pointer fields are populated when - needed and default to NULL. - */ - // Note some fields do not have a leading underscore for backward - // compatibility. See https://bugs.python.org/issue45953#msg412046. - - /* The thread's exception stack entry. (Always the last entry.) */ - _PyErr_StackItem exc_state; - - /* The bottom-most frame on the stack. */ - _PyCFrame root_cframe; -}; - -/* WASI has limited call stack. Python's recursion limit depends on code - layout, optimization, and WASI runtime. Wasmtime can handle about 700 - recursions, sometimes less. 500 is a more conservative limit. */ -#ifndef C_RECURSION_LIMIT -# ifdef __wasi__ -# define C_RECURSION_LIMIT 500 -# else - // This value is duplicated in Lib/test/support/__init__.py -# define C_RECURSION_LIMIT 1500 -# endif -#endif - -/* other API */ - -// Alias for backward compatibility with Python 3.8 -#define _PyInterpreterState_Get PyInterpreterState_Get - -/* An alias for the internal _PyThreadState_New(), - kept for stable ABI compatibility. */ -PyAPI_FUNC(PyThreadState *) _PyThreadState_Prealloc(PyInterpreterState *); - -/* Similar to PyThreadState_Get(), but don't issue a fatal error - * if it is NULL. */ -PyAPI_FUNC(PyThreadState *) _PyThreadState_UncheckedGet(void); - -PyAPI_FUNC(PyObject *) _PyThreadState_GetDict(PyThreadState *tstate); - -// Disable tracing and profiling. -PyAPI_FUNC(void) PyThreadState_EnterTracing(PyThreadState *tstate); - -// Reset tracing and profiling: enable them if a trace function or a profile -// function is set, otherwise disable them. -PyAPI_FUNC(void) PyThreadState_LeaveTracing(PyThreadState *tstate); - -/* PyGILState */ - -/* Helper/diagnostic function - return 1 if the current thread - currently holds the GIL, 0 otherwise. - - The function returns 1 if _PyGILState_check_enabled is non-zero. */ -PyAPI_FUNC(int) PyGILState_Check(void); - -/* Get the single PyInterpreterState used by this process' GILState - implementation. - - This function doesn't check for error. Return NULL before _PyGILState_Init() - is called and after _PyGILState_Fini() is called. - - See also _PyInterpreterState_Get() and _PyInterpreterState_GET(). */ -PyAPI_FUNC(PyInterpreterState *) _PyGILState_GetInterpreterStateUnsafe(void); - -/* The implementation of sys._current_frames() Returns a dict mapping - thread id to that thread's current frame. -*/ -PyAPI_FUNC(PyObject *) _PyThread_CurrentFrames(void); - -/* The implementation of sys._current_exceptions() Returns a dict mapping - thread id to that thread's current exception. -*/ -PyAPI_FUNC(PyObject *) _PyThread_CurrentExceptions(void); - -/* Routines for advanced debuggers, requested by David Beazley. - Don't use unless you know what you are doing! */ -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Main(void); -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Head(void); -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Next(PyInterpreterState *); -PyAPI_FUNC(PyThreadState *) PyInterpreterState_ThreadHead(PyInterpreterState *); -PyAPI_FUNC(PyThreadState *) PyThreadState_Next(PyThreadState *); -PyAPI_FUNC(void) PyThreadState_DeleteCurrent(void); - -/* Frame evaluation API */ - -typedef PyObject* (*_PyFrameEvalFunction)(PyThreadState *tstate, struct _PyInterpreterFrame *, int); - -PyAPI_FUNC(_PyFrameEvalFunction) _PyInterpreterState_GetEvalFrameFunc( - PyInterpreterState *interp); -PyAPI_FUNC(void) _PyInterpreterState_SetEvalFrameFunc( - PyInterpreterState *interp, - _PyFrameEvalFunction eval_frame); - -PyAPI_FUNC(const PyConfig*) _PyInterpreterState_GetConfig(PyInterpreterState *interp); - -/* Get a copy of the current interpreter configuration. - - Return 0 on success. Raise an exception and return -1 on error. - - The caller must initialize 'config', using PyConfig_InitPythonConfig() - for example. - - Python must be preinitialized to call this method. - The caller must hold the GIL. - - Once done with the configuration, PyConfig_Clear() must be called to clear - it. */ -PyAPI_FUNC(int) _PyInterpreterState_GetConfigCopy( - struct PyConfig *config); - -/* Set the configuration of the current interpreter. - - This function should be called during or just after the Python - initialization. - - Update the sys module with the new configuration. If the sys module was - modified directly after the Python initialization, these changes are lost. - - Some configuration like faulthandler or warnoptions can be updated in the - configuration, but don't reconfigure Python (don't enable/disable - faulthandler and don't reconfigure warnings filters). - - Return 0 on success. Raise an exception and return -1 on error. - - The configuration should come from _PyInterpreterState_GetConfigCopy(). */ -PyAPI_FUNC(int) _PyInterpreterState_SetConfig( - const struct PyConfig *config); - -// Get the configuration of the current interpreter. -// The caller must hold the GIL. -PyAPI_FUNC(const PyConfig*) _Py_GetConfig(void); - - -/* cross-interpreter data */ - -// _PyCrossInterpreterData is similar to Py_buffer as an effectively -// opaque struct that holds data outside the object machinery. This -// is necessary to pass safely between interpreters in the same process. -typedef struct _xid _PyCrossInterpreterData; - -typedef PyObject *(*xid_newobjectfunc)(_PyCrossInterpreterData *); -typedef void (*xid_freefunc)(void *); - -struct _xid { - // data is the cross-interpreter-safe derivation of a Python object - // (see _PyObject_GetCrossInterpreterData). It will be NULL if the - // new_object func (below) encodes the data. - void *data; - // obj is the Python object from which the data was derived. This - // is non-NULL only if the data remains bound to the object in some - // way, such that the object must be "released" (via a decref) when - // the data is released. In that case the code that sets the field, - // likely a registered "crossinterpdatafunc", is responsible for - // ensuring it owns the reference (i.e. incref). - PyObject *obj; - // interp is the ID of the owning interpreter of the original - // object. It corresponds to the active interpreter when - // _PyObject_GetCrossInterpreterData() was called. This should only - // be set by the cross-interpreter machinery. - // - // We use the ID rather than the PyInterpreterState to avoid issues - // with deleted interpreters. Note that IDs are never re-used, so - // each one will always correspond to a specific interpreter - // (whether still alive or not). - int64_t interp; - // new_object is a function that returns a new object in the current - // interpreter given the data. The resulting object (a new - // reference) will be equivalent to the original object. This field - // is required. - xid_newobjectfunc new_object; - // free is called when the data is released. If it is NULL then - // nothing will be done to free the data. For some types this is - // okay (e.g. bytes) and for those types this field should be set - // to NULL. However, for most the data was allocated just for - // cross-interpreter use, so it must be freed when - // _PyCrossInterpreterData_Release is called or the memory will - // leak. In that case, at the very least this field should be set - // to PyMem_RawFree (the default if not explicitly set to NULL). - // The call will happen with the original interpreter activated. - xid_freefunc free; -}; - -PyAPI_FUNC(void) _PyCrossInterpreterData_Init( - _PyCrossInterpreterData *data, - PyInterpreterState *interp, void *shared, PyObject *obj, - xid_newobjectfunc new_object); -PyAPI_FUNC(int) _PyCrossInterpreterData_InitWithSize( - _PyCrossInterpreterData *, - PyInterpreterState *interp, const size_t, PyObject *, - xid_newobjectfunc); -PyAPI_FUNC(void) _PyCrossInterpreterData_Clear( - PyInterpreterState *, _PyCrossInterpreterData *); - -PyAPI_FUNC(int) _PyObject_GetCrossInterpreterData(PyObject *, _PyCrossInterpreterData *); -PyAPI_FUNC(PyObject *) _PyCrossInterpreterData_NewObject(_PyCrossInterpreterData *); -PyAPI_FUNC(int) _PyCrossInterpreterData_Release(_PyCrossInterpreterData *); - -PyAPI_FUNC(int) _PyObject_CheckCrossInterpreterData(PyObject *); - -/* cross-interpreter data registry */ - -typedef int (*crossinterpdatafunc)(PyThreadState *tstate, PyObject *, - _PyCrossInterpreterData *); - -PyAPI_FUNC(int) _PyCrossInterpreterData_RegisterClass(PyTypeObject *, crossinterpdatafunc); -PyAPI_FUNC(int) _PyCrossInterpreterData_UnregisterClass(PyTypeObject *); -PyAPI_FUNC(crossinterpdatafunc) _PyCrossInterpreterData_Lookup(PyObject *); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pythonrun.h b/_Pre_Builds/_Python312_cpp/include/cpython/pythonrun.h deleted file mode 100644 index fb61765..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pythonrun.h +++ /dev/null @@ -1,121 +0,0 @@ -#ifndef Py_CPYTHON_PYTHONRUN_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(int) PyRun_SimpleStringFlags(const char *, PyCompilerFlags *); -PyAPI_FUNC(int) _PyRun_SimpleFileObject( - FILE *fp, - PyObject *filename, - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_AnyFileExFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) _PyRun_AnyFileObject( - FILE *fp, - PyObject *filename, - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_SimpleFileExFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - int closeit, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_InteractiveOneFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_InteractiveOneObject( - FILE *fp, - PyObject *filename, - PyCompilerFlags *flags); -PyAPI_FUNC(int) PyRun_InteractiveLoopFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - PyCompilerFlags *flags); -PyAPI_FUNC(int) _PyRun_InteractiveLoopObject( - FILE *fp, - PyObject *filename, - PyCompilerFlags *flags); - - -PyAPI_FUNC(PyObject *) PyRun_StringFlags(const char *, int, PyObject *, - PyObject *, PyCompilerFlags *); - -PyAPI_FUNC(PyObject *) PyRun_FileExFlags( - FILE *fp, - const char *filename, /* decoded from the filesystem encoding */ - int start, - PyObject *globals, - PyObject *locals, - int closeit, - PyCompilerFlags *flags); - - -PyAPI_FUNC(PyObject *) Py_CompileStringExFlags( - const char *str, - const char *filename, /* decoded from the filesystem encoding */ - int start, - PyCompilerFlags *flags, - int optimize); -PyAPI_FUNC(PyObject *) Py_CompileStringObject( - const char *str, - PyObject *filename, int start, - PyCompilerFlags *flags, - int optimize); - -#define Py_CompileString(str, p, s) Py_CompileStringExFlags((str), (p), (s), NULL, -1) -#define Py_CompileStringFlags(str, p, s, f) Py_CompileStringExFlags((str), (p), (s), (f), -1) - - -PyAPI_FUNC(const char *) _Py_SourceAsString( - PyObject *cmd, - const char *funcname, - const char *what, - PyCompilerFlags *cf, - PyObject **cmd_copy); - - -/* A function flavor is also exported by libpython. It is required when - libpython is accessed directly rather than using header files which defines - macros below. On Windows, for example, PyAPI_FUNC() uses dllexport to - export functions in pythonXX.dll. */ -PyAPI_FUNC(PyObject *) PyRun_String(const char *str, int s, PyObject *g, PyObject *l); -PyAPI_FUNC(int) PyRun_AnyFile(FILE *fp, const char *name); -PyAPI_FUNC(int) PyRun_AnyFileEx(FILE *fp, const char *name, int closeit); -PyAPI_FUNC(int) PyRun_AnyFileFlags(FILE *, const char *, PyCompilerFlags *); -PyAPI_FUNC(int) PyRun_SimpleString(const char *s); -PyAPI_FUNC(int) PyRun_SimpleFile(FILE *f, const char *p); -PyAPI_FUNC(int) PyRun_SimpleFileEx(FILE *f, const char *p, int c); -PyAPI_FUNC(int) PyRun_InteractiveOne(FILE *f, const char *p); -PyAPI_FUNC(int) PyRun_InteractiveLoop(FILE *f, const char *p); -PyAPI_FUNC(PyObject *) PyRun_File(FILE *fp, const char *p, int s, PyObject *g, PyObject *l); -PyAPI_FUNC(PyObject *) PyRun_FileEx(FILE *fp, const char *p, int s, PyObject *g, PyObject *l, int c); -PyAPI_FUNC(PyObject *) PyRun_FileFlags(FILE *fp, const char *p, int s, PyObject *g, PyObject *l, PyCompilerFlags *flags); - -/* Use macros for a bunch of old variants */ -#define PyRun_String(str, s, g, l) PyRun_StringFlags((str), (s), (g), (l), NULL) -#define PyRun_AnyFile(fp, name) PyRun_AnyFileExFlags((fp), (name), 0, NULL) -#define PyRun_AnyFileEx(fp, name, closeit) \ - PyRun_AnyFileExFlags((fp), (name), (closeit), NULL) -#define PyRun_AnyFileFlags(fp, name, flags) \ - PyRun_AnyFileExFlags((fp), (name), 0, (flags)) -#define PyRun_SimpleString(s) PyRun_SimpleStringFlags((s), NULL) -#define PyRun_SimpleFile(f, p) PyRun_SimpleFileExFlags((f), (p), 0, NULL) -#define PyRun_SimpleFileEx(f, p, c) PyRun_SimpleFileExFlags((f), (p), (c), NULL) -#define PyRun_InteractiveOne(f, p) PyRun_InteractiveOneFlags((f), (p), NULL) -#define PyRun_InteractiveLoop(f, p) PyRun_InteractiveLoopFlags((f), (p), NULL) -#define PyRun_File(fp, p, s, g, l) \ - PyRun_FileExFlags((fp), (p), (s), (g), (l), 0, NULL) -#define PyRun_FileEx(fp, p, s, g, l, c) \ - PyRun_FileExFlags((fp), (p), (s), (g), (l), (c), NULL) -#define PyRun_FileFlags(fp, p, s, g, l, flags) \ - PyRun_FileExFlags((fp), (p), (s), (g), (l), 0, (flags)) - - -/* Stuff with no proper home (yet) */ -PyAPI_FUNC(char *) PyOS_Readline(FILE *, FILE *, const char *); -PyAPI_DATA(PyThreadState*) _PyOS_ReadlineTState; -PyAPI_DATA(char) *(*PyOS_ReadlineFunctionPointer)(FILE *, FILE *, const char *); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pythread.h b/_Pre_Builds/_Python312_cpp/include/cpython/pythread.h deleted file mode 100644 index ce4ec8f..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pythread.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef Py_CPYTHON_PYTHREAD_H -# error "this header file must not be included directly" -#endif - -#define PYTHREAD_INVALID_THREAD_ID ((unsigned long)-1) - -#ifdef HAVE_FORK -/* Private function to reinitialize a lock at fork in the child process. - Reset the lock to the unlocked state. - Return 0 on success, return -1 on error. */ -PyAPI_FUNC(int) _PyThread_at_fork_reinit(PyThread_type_lock *lock); -#endif /* HAVE_FORK */ - -#ifdef HAVE_PTHREAD_H - /* Darwin needs pthread.h to know type name the pthread_key_t. */ -# include -# define NATIVE_TSS_KEY_T pthread_key_t -#elif defined(NT_THREADS) - /* In Windows, native TSS key type is DWORD, - but hardcode the unsigned long to avoid errors for include directive. - */ -# define NATIVE_TSS_KEY_T unsigned long -#elif defined(HAVE_PTHREAD_STUBS) -# include "cpython/pthread_stubs.h" -# define NATIVE_TSS_KEY_T pthread_key_t -#else -# error "Require native threads. See https://bugs.python.org/issue31370" -#endif - -/* When Py_LIMITED_API is not defined, the type layout of Py_tss_t is - exposed to allow static allocation in the API clients. Even in this case, - you must handle TSS keys through API functions due to compatibility. -*/ -struct _Py_tss_t { - int _is_initialized; - NATIVE_TSS_KEY_T _key; -}; - -#undef NATIVE_TSS_KEY_T - -/* When static allocation, you must initialize with Py_tss_NEEDS_INIT. */ -#define Py_tss_NEEDS_INIT {0} diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/pytime.h b/_Pre_Builds/_Python312_cpp/include/cpython/pytime.h deleted file mode 100644 index 16d88d1..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/pytime.h +++ /dev/null @@ -1,331 +0,0 @@ -// The _PyTime_t API is written to use timestamp and timeout values stored in -// various formats and to read clocks. -// -// The _PyTime_t type is an integer to support directly common arithmetic -// operations like t1 + t2. -// -// The _PyTime_t API supports a resolution of 1 nanosecond. The _PyTime_t type -// is signed to support negative timestamps. The supported range is around -// [-292.3 years; +292.3 years]. Using the Unix epoch (January 1st, 1970), the -// supported date range is around [1677-09-21; 2262-04-11]. -// -// Formats: -// -// * seconds -// * seconds as a floating pointer number (C double) -// * milliseconds (10^-3 seconds) -// * microseconds (10^-6 seconds) -// * 100 nanoseconds (10^-7 seconds) -// * nanoseconds (10^-9 seconds) -// * timeval structure, 1 microsecond resolution (10^-6 seconds) -// * timespec structure, 1 nanosecond resolution (10^-9 seconds) -// -// Integer overflows are detected and raise OverflowError. Conversion to a -// resolution worse than 1 nanosecond is rounded correctly with the requested -// rounding mode. There are 4 rounding modes: floor (towards -inf), ceiling -// (towards +inf), half even and up (away from zero). -// -// Some functions clamp the result in the range [_PyTime_MIN; _PyTime_MAX], so -// the caller doesn't have to handle errors and doesn't need to hold the GIL. -// For example, _PyTime_Add(t1, t2) computes t1+t2 and clamp the result on -// overflow. -// -// Clocks: -// -// * System clock -// * Monotonic clock -// * Performance counter -// -// Operations like (t * k / q) with integers are implemented in a way to reduce -// the risk of integer overflow. Such operation is used to convert a clock -// value expressed in ticks with a frequency to _PyTime_t, like -// QueryPerformanceCounter() with QueryPerformanceFrequency(). - -#ifndef Py_LIMITED_API -#ifndef Py_PYTIME_H -#define Py_PYTIME_H - -/************************************************************************** -Symbols and macros to supply platform-independent interfaces to time related -functions and constants -**************************************************************************/ -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef __clang__ -struct timeval; -#endif - -/* _PyTime_t: Python timestamp with subsecond precision. It can be used to - store a duration, and so indirectly a date (related to another date, like - UNIX epoch). */ -typedef int64_t _PyTime_t; -// _PyTime_MIN nanoseconds is around -292.3 years -#define _PyTime_MIN INT64_MIN -// _PyTime_MAX nanoseconds is around +292.3 years -#define _PyTime_MAX INT64_MAX -#define _SIZEOF_PYTIME_T 8 - -typedef enum { - /* Round towards minus infinity (-inf). - For example, used to read a clock. */ - _PyTime_ROUND_FLOOR=0, - /* Round towards infinity (+inf). - For example, used for timeout to wait "at least" N seconds. */ - _PyTime_ROUND_CEILING=1, - /* Round to nearest with ties going to nearest even integer. - For example, used to round from a Python float. */ - _PyTime_ROUND_HALF_EVEN=2, - /* Round away from zero - For example, used for timeout. _PyTime_ROUND_CEILING rounds - -1e-9 to 0 milliseconds which causes bpo-31786 issue. - _PyTime_ROUND_UP rounds -1e-9 to -1 millisecond which keeps - the timeout sign as expected. select.poll(timeout) must block - for negative values." */ - _PyTime_ROUND_UP=3, - /* _PyTime_ROUND_TIMEOUT (an alias for _PyTime_ROUND_UP) should be - used for timeouts. */ - _PyTime_ROUND_TIMEOUT = _PyTime_ROUND_UP -} _PyTime_round_t; - - -/* Convert a time_t to a PyLong. */ -PyAPI_FUNC(PyObject *) _PyLong_FromTime_t( - time_t sec); - -/* Convert a PyLong to a time_t. */ -PyAPI_FUNC(time_t) _PyLong_AsTime_t( - PyObject *obj); - -/* Convert a number of seconds, int or float, to time_t. */ -PyAPI_FUNC(int) _PyTime_ObjectToTime_t( - PyObject *obj, - time_t *sec, - _PyTime_round_t); - -/* Convert a number of seconds, int or float, to a timeval structure. - usec is in the range [0; 999999] and rounded towards zero. - For example, -1.2 is converted to (-2, 800000). */ -PyAPI_FUNC(int) _PyTime_ObjectToTimeval( - PyObject *obj, - time_t *sec, - long *usec, - _PyTime_round_t); - -/* Convert a number of seconds, int or float, to a timespec structure. - nsec is in the range [0; 999999999] and rounded towards zero. - For example, -1.2 is converted to (-2, 800000000). */ -PyAPI_FUNC(int) _PyTime_ObjectToTimespec( - PyObject *obj, - time_t *sec, - long *nsec, - _PyTime_round_t); - - -/* Create a timestamp from a number of seconds. */ -PyAPI_FUNC(_PyTime_t) _PyTime_FromSeconds(int seconds); - -/* Macro to create a timestamp from a number of seconds, no integer overflow. - Only use the macro for small values, prefer _PyTime_FromSeconds(). */ -#define _PYTIME_FROMSECONDS(seconds) \ - ((_PyTime_t)(seconds) * (1000 * 1000 * 1000)) - -/* Create a timestamp from a number of nanoseconds. */ -PyAPI_FUNC(_PyTime_t) _PyTime_FromNanoseconds(_PyTime_t ns); - -/* Create a timestamp from a number of microseconds. - * Clamp to [_PyTime_MIN; _PyTime_MAX] on overflow. */ -PyAPI_FUNC(_PyTime_t) _PyTime_FromMicrosecondsClamp(_PyTime_t us); - -/* Create a timestamp from nanoseconds (Python int). */ -PyAPI_FUNC(int) _PyTime_FromNanosecondsObject(_PyTime_t *t, - PyObject *obj); - -/* Convert a number of seconds (Python float or int) to a timestamp. - Raise an exception and return -1 on error, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromSecondsObject(_PyTime_t *t, - PyObject *obj, - _PyTime_round_t round); - -/* Convert a number of milliseconds (Python float or int, 10^-3) to a timestamp. - Raise an exception and return -1 on error, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromMillisecondsObject(_PyTime_t *t, - PyObject *obj, - _PyTime_round_t round); - -/* Convert a timestamp to a number of seconds as a C double. */ -PyAPI_FUNC(double) _PyTime_AsSecondsDouble(_PyTime_t t); - -/* Convert timestamp to a number of milliseconds (10^-3 seconds). */ -PyAPI_FUNC(_PyTime_t) _PyTime_AsMilliseconds(_PyTime_t t, - _PyTime_round_t round); - -/* Convert timestamp to a number of microseconds (10^-6 seconds). */ -PyAPI_FUNC(_PyTime_t) _PyTime_AsMicroseconds(_PyTime_t t, - _PyTime_round_t round); - -/* Convert timestamp to a number of nanoseconds (10^-9 seconds). */ -PyAPI_FUNC(_PyTime_t) _PyTime_AsNanoseconds(_PyTime_t t); - -#ifdef MS_WINDOWS -// Convert timestamp to a number of 100 nanoseconds (10^-7 seconds). -PyAPI_FUNC(_PyTime_t) _PyTime_As100Nanoseconds(_PyTime_t t, - _PyTime_round_t round); -#endif - -/* Convert timestamp to a number of nanoseconds (10^-9 seconds) as a Python int - object. */ -PyAPI_FUNC(PyObject *) _PyTime_AsNanosecondsObject(_PyTime_t t); - -#ifndef MS_WINDOWS -/* Create a timestamp from a timeval structure. - Raise an exception and return -1 on overflow, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromTimeval(_PyTime_t *tp, struct timeval *tv); -#endif - -/* Convert a timestamp to a timeval structure (microsecond resolution). - tv_usec is always positive. - Raise an exception and return -1 if the conversion overflowed, - return 0 on success. */ -PyAPI_FUNC(int) _PyTime_AsTimeval(_PyTime_t t, - struct timeval *tv, - _PyTime_round_t round); - -/* Similar to _PyTime_AsTimeval() but don't raise an exception on overflow. - On overflow, clamp tv_sec to _PyTime_t min/max. */ -PyAPI_FUNC(void) _PyTime_AsTimeval_clamp(_PyTime_t t, - struct timeval *tv, - _PyTime_round_t round); - -/* Convert a timestamp to a number of seconds (secs) and microseconds (us). - us is always positive. This function is similar to _PyTime_AsTimeval() - except that secs is always a time_t type, whereas the timeval structure - uses a C long for tv_sec on Windows. - Raise an exception and return -1 if the conversion overflowed, - return 0 on success. */ -PyAPI_FUNC(int) _PyTime_AsTimevalTime_t( - _PyTime_t t, - time_t *secs, - int *us, - _PyTime_round_t round); - -#if defined(HAVE_CLOCK_GETTIME) || defined(HAVE_KQUEUE) -/* Create a timestamp from a timespec structure. - Raise an exception and return -1 on overflow, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_FromTimespec(_PyTime_t *tp, struct timespec *ts); - -/* Convert a timestamp to a timespec structure (nanosecond resolution). - tv_nsec is always positive. - Raise an exception and return -1 on error, return 0 on success. */ -PyAPI_FUNC(int) _PyTime_AsTimespec(_PyTime_t t, struct timespec *ts); - -/* Similar to _PyTime_AsTimespec() but don't raise an exception on overflow. - On overflow, clamp tv_sec to _PyTime_t min/max. */ -PyAPI_FUNC(void) _PyTime_AsTimespec_clamp(_PyTime_t t, struct timespec *ts); -#endif - - -// Compute t1 + t2. Clamp to [_PyTime_MIN; _PyTime_MAX] on overflow. -PyAPI_FUNC(_PyTime_t) _PyTime_Add(_PyTime_t t1, _PyTime_t t2); - -/* Compute ticks * mul / div. - Clamp to [_PyTime_MIN; _PyTime_MAX] on overflow. - The caller must ensure that ((div - 1) * mul) cannot overflow. */ -PyAPI_FUNC(_PyTime_t) _PyTime_MulDiv(_PyTime_t ticks, - _PyTime_t mul, - _PyTime_t div); - -/* Structure used by time.get_clock_info() */ -typedef struct { - const char *implementation; - int monotonic; - int adjustable; - double resolution; -} _Py_clock_info_t; - -/* Get the current time from the system clock. - - If the internal clock fails, silently ignore the error and return 0. - On integer overflow, silently ignore the overflow and clamp the clock to - [_PyTime_MIN; _PyTime_MAX]. - - Use _PyTime_GetSystemClockWithInfo() to check for failure. */ -PyAPI_FUNC(_PyTime_t) _PyTime_GetSystemClock(void); - -/* Get the current time from the system clock. - * On success, set *t and *info (if not NULL), and return 0. - * On error, raise an exception and return -1. - */ -PyAPI_FUNC(int) _PyTime_GetSystemClockWithInfo( - _PyTime_t *t, - _Py_clock_info_t *info); - -/* Get the time of a monotonic clock, i.e. a clock that cannot go backwards. - The clock is not affected by system clock updates. The reference point of - the returned value is undefined, so that only the difference between the - results of consecutive calls is valid. - - If the internal clock fails, silently ignore the error and return 0. - On integer overflow, silently ignore the overflow and clamp the clock to - [_PyTime_MIN; _PyTime_MAX]. - - Use _PyTime_GetMonotonicClockWithInfo() to check for failure. */ -PyAPI_FUNC(_PyTime_t) _PyTime_GetMonotonicClock(void); - -/* Get the time of a monotonic clock, i.e. a clock that cannot go backwards. - The clock is not affected by system clock updates. The reference point of - the returned value is undefined, so that only the difference between the - results of consecutive calls is valid. - - Fill info (if set) with information of the function used to get the time. - - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_GetMonotonicClockWithInfo( - _PyTime_t *t, - _Py_clock_info_t *info); - - -/* Converts a timestamp to the Gregorian time, using the local time zone. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_localtime(time_t t, struct tm *tm); - -/* Converts a timestamp to the Gregorian time, assuming UTC. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_gmtime(time_t t, struct tm *tm); - -/* Get the performance counter: clock with the highest available resolution to - measure a short duration. - - If the internal clock fails, silently ignore the error and return 0. - On integer overflow, silently ignore the overflow and clamp the clock to - [_PyTime_MIN; _PyTime_MAX]. - - Use _PyTime_GetPerfCounterWithInfo() to check for failure. */ -PyAPI_FUNC(_PyTime_t) _PyTime_GetPerfCounter(void); - -/* Get the performance counter: clock with the highest available resolution to - measure a short duration. - - Fill info (if set) with information of the function used to get the time. - - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) _PyTime_GetPerfCounterWithInfo( - _PyTime_t *t, - _Py_clock_info_t *info); - - -// Create a deadline. -// Pseudo code: _PyTime_GetMonotonicClock() + timeout. -PyAPI_FUNC(_PyTime_t) _PyDeadline_Init(_PyTime_t timeout); - -// Get remaining time from a deadline. -// Pseudo code: deadline - _PyTime_GetMonotonicClock(). -PyAPI_FUNC(_PyTime_t) _PyDeadline_Get(_PyTime_t deadline); - -#ifdef __cplusplus -} -#endif - -#endif /* Py_PYTIME_H */ -#endif /* Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/setobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/setobject.h deleted file mode 100644 index 20fd63e..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/setobject.h +++ /dev/null @@ -1,72 +0,0 @@ -#ifndef Py_CPYTHON_SETOBJECT_H -# error "this header file must not be included directly" -#endif - -/* There are three kinds of entries in the table: - -1. Unused: key == NULL and hash == 0 -2. Dummy: key == dummy and hash == -1 -3. Active: key != NULL and key != dummy and hash != -1 - -The hash field of Unused slots is always zero. - -The hash field of Dummy slots are set to -1 -meaning that dummy entries can be detected by -either entry->key==dummy or by entry->hash==-1. -*/ - -#define PySet_MINSIZE 8 - -typedef struct { - PyObject *key; - Py_hash_t hash; /* Cached hash code of the key */ -} setentry; - -/* The SetObject data structure is shared by set and frozenset objects. - -Invariant for sets: - - hash is -1 - -Invariants for frozensets: - - data is immutable. - - hash is the hash of the frozenset or -1 if not computed yet. - -*/ - -typedef struct { - PyObject_HEAD - - Py_ssize_t fill; /* Number active and dummy entries*/ - Py_ssize_t used; /* Number active entries */ - - /* The table contains mask + 1 slots, and that's a power of 2. - * We store the mask instead of the size because the mask is more - * frequently needed. - */ - Py_ssize_t mask; - - /* The table points to a fixed-size smalltable for small tables - * or to additional malloc'ed memory for bigger tables. - * The table pointer is never NULL which saves us from repeated - * runtime null-tests. - */ - setentry *table; - Py_hash_t hash; /* Only used by frozenset objects */ - Py_ssize_t finger; /* Search finger for pop() */ - - setentry smalltable[PySet_MINSIZE]; - PyObject *weakreflist; /* List of weak references */ -} PySetObject; - -#define _PySet_CAST(so) \ - (assert(PyAnySet_Check(so)), _Py_CAST(PySetObject*, so)) - -static inline Py_ssize_t PySet_GET_SIZE(PyObject *so) { - return _PySet_CAST(so)->used; -} -#define PySet_GET_SIZE(so) PySet_GET_SIZE(_PyObject_CAST(so)) - -PyAPI_DATA(PyObject *) _PySet_Dummy; - -PyAPI_FUNC(int) _PySet_NextEntry(PyObject *set, Py_ssize_t *pos, PyObject **key, Py_hash_t *hash); -PyAPI_FUNC(int) _PySet_Update(PyObject *set, PyObject *iterable); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/sysmodule.h b/_Pre_Builds/_Python312_cpp/include/cpython/sysmodule.h deleted file mode 100644 index 19d9ddd..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/sysmodule.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef Py_CPYTHON_SYSMODULE_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(PyObject *) _PySys_GetAttr(PyThreadState *tstate, - PyObject *name); - -PyAPI_FUNC(size_t) _PySys_GetSizeOf(PyObject *); - -typedef int(*Py_AuditHookFunction)(const char *, PyObject *, void *); - -PyAPI_FUNC(int) PySys_Audit( - const char *event, - const char *argFormat, - ...); -PyAPI_FUNC(int) PySys_AddAuditHook(Py_AuditHookFunction, void*); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/traceback.h b/_Pre_Builds/_Python312_cpp/include/cpython/traceback.h deleted file mode 100644 index a4e087b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/traceback.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef Py_CPYTHON_TRACEBACK_H -# error "this header file must not be included directly" -#endif - -typedef struct _traceback PyTracebackObject; - -struct _traceback { - PyObject_HEAD - PyTracebackObject *tb_next; - PyFrameObject *tb_frame; - int tb_lasti; - int tb_lineno; -}; - -PyAPI_FUNC(int) _Py_DisplaySourceLine(PyObject *, PyObject *, int, int, int *, PyObject **); -PyAPI_FUNC(void) _PyTraceback_Add(const char *, const char *, int); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/tupleobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/tupleobject.h deleted file mode 100644 index f6a1f07..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/tupleobject.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef Py_CPYTHON_TUPLEOBJECT_H -# error "this header file must not be included directly" -#endif - -typedef struct { - PyObject_VAR_HEAD - /* ob_item contains space for 'ob_size' elements. - Items must normally not be NULL, except during construction when - the tuple is not yet visible outside the function that builds it. */ - PyObject *ob_item[1]; -} PyTupleObject; - -PyAPI_FUNC(int) _PyTuple_Resize(PyObject **, Py_ssize_t); -PyAPI_FUNC(void) _PyTuple_MaybeUntrack(PyObject *); - -/* Cast argument to PyTupleObject* type. */ -#define _PyTuple_CAST(op) \ - (assert(PyTuple_Check(op)), _Py_CAST(PyTupleObject*, (op))) - -// Macros and static inline functions, trading safety for speed - -static inline Py_ssize_t PyTuple_GET_SIZE(PyObject *op) { - PyTupleObject *tuple = _PyTuple_CAST(op); - return Py_SIZE(tuple); -} -#define PyTuple_GET_SIZE(op) PyTuple_GET_SIZE(_PyObject_CAST(op)) - -#define PyTuple_GET_ITEM(op, index) (_PyTuple_CAST(op)->ob_item[(index)]) - -/* Function *only* to be used to fill in brand new tuples */ -static inline void -PyTuple_SET_ITEM(PyObject *op, Py_ssize_t index, PyObject *value) { - PyTupleObject *tuple = _PyTuple_CAST(op); - tuple->ob_item[index] = value; -} -#define PyTuple_SET_ITEM(op, index, value) \ - PyTuple_SET_ITEM(_PyObject_CAST(op), (index), _PyObject_CAST(value)) - -PyAPI_FUNC(void) _PyTuple_DebugMallocStats(FILE *out); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/unicodeobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/unicodeobject.h deleted file mode 100644 index f177cd9..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/unicodeobject.h +++ /dev/null @@ -1,963 +0,0 @@ -#ifndef Py_CPYTHON_UNICODEOBJECT_H -# error "this header file must not be included directly" -#endif - -/* Py_UNICODE was the native Unicode storage format (code unit) used by - Python and represents a single Unicode element in the Unicode type. - With PEP 393, Py_UNICODE is deprecated and replaced with a - typedef to wchar_t. */ -#define PY_UNICODE_TYPE wchar_t -/* Py_DEPRECATED(3.3) */ typedef wchar_t Py_UNICODE; - -/* --- Internal Unicode Operations ---------------------------------------- */ - -// Static inline functions to work with surrogates -static inline int Py_UNICODE_IS_SURROGATE(Py_UCS4 ch) { - return (0xD800 <= ch && ch <= 0xDFFF); -} -static inline int Py_UNICODE_IS_HIGH_SURROGATE(Py_UCS4 ch) { - return (0xD800 <= ch && ch <= 0xDBFF); -} -static inline int Py_UNICODE_IS_LOW_SURROGATE(Py_UCS4 ch) { - return (0xDC00 <= ch && ch <= 0xDFFF); -} - -// Join two surrogate characters and return a single Py_UCS4 value. -static inline Py_UCS4 Py_UNICODE_JOIN_SURROGATES(Py_UCS4 high, Py_UCS4 low) { - assert(Py_UNICODE_IS_HIGH_SURROGATE(high)); - assert(Py_UNICODE_IS_LOW_SURROGATE(low)); - return 0x10000 + (((high & 0x03FF) << 10) | (low & 0x03FF)); -} - -// High surrogate = top 10 bits added to 0xD800. -// The character must be in the range [U+10000; U+10ffff]. -static inline Py_UCS4 Py_UNICODE_HIGH_SURROGATE(Py_UCS4 ch) { - assert(0x10000 <= ch && ch <= 0x10ffff); - return (0xD800 - (0x10000 >> 10) + (ch >> 10)); -} - -// Low surrogate = bottom 10 bits added to 0xDC00. -// The character must be in the range [U+10000; U+10ffff]. -static inline Py_UCS4 Py_UNICODE_LOW_SURROGATE(Py_UCS4 ch) { - assert(0x10000 <= ch && ch <= 0x10ffff); - return (0xDC00 + (ch & 0x3FF)); -} - -/* --- Unicode Type ------------------------------------------------------- */ - -/* ASCII-only strings created through PyUnicode_New use the PyASCIIObject - structure. state.ascii and state.compact are set, and the data - immediately follow the structure. utf8_length can be found - in the length field; the utf8 pointer is equal to the data pointer. */ -typedef struct { - /* There are 4 forms of Unicode strings: - - - compact ascii: - - * structure = PyASCIIObject - * test: PyUnicode_IS_COMPACT_ASCII(op) - * kind = PyUnicode_1BYTE_KIND - * compact = 1 - * ascii = 1 - * (length is the length of the utf8) - * (data starts just after the structure) - * (since ASCII is decoded from UTF-8, the utf8 string are the data) - - - compact: - - * structure = PyCompactUnicodeObject - * test: PyUnicode_IS_COMPACT(op) && !PyUnicode_IS_ASCII(op) - * kind = PyUnicode_1BYTE_KIND, PyUnicode_2BYTE_KIND or - PyUnicode_4BYTE_KIND - * compact = 1 - * ascii = 0 - * utf8 is not shared with data - * utf8_length = 0 if utf8 is NULL - * (data starts just after the structure) - - - legacy string: - - * structure = PyUnicodeObject structure - * test: !PyUnicode_IS_COMPACT(op) - * kind = PyUnicode_1BYTE_KIND, PyUnicode_2BYTE_KIND or - PyUnicode_4BYTE_KIND - * compact = 0 - * data.any is not NULL - * utf8 is shared and utf8_length = length with data.any if ascii = 1 - * utf8_length = 0 if utf8 is NULL - - Compact strings use only one memory block (structure + characters), - whereas legacy strings use one block for the structure and one block - for characters. - - Legacy strings are created by subclasses of Unicode. - - See also _PyUnicode_CheckConsistency(). - */ - PyObject_HEAD - Py_ssize_t length; /* Number of code points in the string */ - Py_hash_t hash; /* Hash value; -1 if not set */ - struct { - /* If interned is non-zero, the two references from the - dictionary to this object are *not* counted in ob_refcnt. - The possible values here are: - 0: Not Interned - 1: Interned - 2: Interned and Immortal - 3: Interned, Immortal, and Static - This categorization allows the runtime to determine the right - cleanup mechanism at runtime shutdown. */ - unsigned int interned:2; - /* Character size: - - - PyUnicode_1BYTE_KIND (1): - - * character type = Py_UCS1 (8 bits, unsigned) - * all characters are in the range U+0000-U+00FF (latin1) - * if ascii is set, all characters are in the range U+0000-U+007F - (ASCII), otherwise at least one character is in the range - U+0080-U+00FF - - - PyUnicode_2BYTE_KIND (2): - - * character type = Py_UCS2 (16 bits, unsigned) - * all characters are in the range U+0000-U+FFFF (BMP) - * at least one character is in the range U+0100-U+FFFF - - - PyUnicode_4BYTE_KIND (4): - - * character type = Py_UCS4 (32 bits, unsigned) - * all characters are in the range U+0000-U+10FFFF - * at least one character is in the range U+10000-U+10FFFF - */ - unsigned int kind:3; - /* Compact is with respect to the allocation scheme. Compact unicode - objects only require one memory block while non-compact objects use - one block for the PyUnicodeObject struct and another for its data - buffer. */ - unsigned int compact:1; - /* The string only contains characters in the range U+0000-U+007F (ASCII) - and the kind is PyUnicode_1BYTE_KIND. If ascii is set and compact is - set, use the PyASCIIObject structure. */ - unsigned int ascii:1; - /* The object is statically allocated. */ - unsigned int statically_allocated:1; - /* Padding to ensure that PyUnicode_DATA() is always aligned to - 4 bytes (see issue #19537 on m68k). */ - unsigned int :24; - } state; -} PyASCIIObject; - -/* Non-ASCII strings allocated through PyUnicode_New use the - PyCompactUnicodeObject structure. state.compact is set, and the data - immediately follow the structure. */ -typedef struct { - PyASCIIObject _base; - Py_ssize_t utf8_length; /* Number of bytes in utf8, excluding the - * terminating \0. */ - char *utf8; /* UTF-8 representation (null-terminated) */ -} PyCompactUnicodeObject; - -/* Object format for Unicode subclasses. */ -typedef struct { - PyCompactUnicodeObject _base; - union { - void *any; - Py_UCS1 *latin1; - Py_UCS2 *ucs2; - Py_UCS4 *ucs4; - } data; /* Canonical, smallest-form Unicode buffer */ -} PyUnicodeObject; - -PyAPI_FUNC(int) _PyUnicode_CheckConsistency( - PyObject *op, - int check_content); - - -#define _PyASCIIObject_CAST(op) \ - (assert(PyUnicode_Check(op)), \ - _Py_CAST(PyASCIIObject*, (op))) -#define _PyCompactUnicodeObject_CAST(op) \ - (assert(PyUnicode_Check(op)), \ - _Py_CAST(PyCompactUnicodeObject*, (op))) -#define _PyUnicodeObject_CAST(op) \ - (assert(PyUnicode_Check(op)), \ - _Py_CAST(PyUnicodeObject*, (op))) - - -/* --- Flexible String Representation Helper Macros (PEP 393) -------------- */ - -/* Values for PyASCIIObject.state: */ - -/* Interning state. */ -#define SSTATE_NOT_INTERNED 0 -#define SSTATE_INTERNED_MORTAL 1 -#define SSTATE_INTERNED_IMMORTAL 2 -#define SSTATE_INTERNED_IMMORTAL_STATIC 3 - -/* Use only if you know it's a string */ -static inline unsigned int PyUnicode_CHECK_INTERNED(PyObject *op) { - return _PyASCIIObject_CAST(op)->state.interned; -} -#define PyUnicode_CHECK_INTERNED(op) PyUnicode_CHECK_INTERNED(_PyObject_CAST(op)) - -/* For backward compatibility */ -static inline unsigned int PyUnicode_IS_READY(PyObject* Py_UNUSED(op)) { - return 1; -} -#define PyUnicode_IS_READY(op) PyUnicode_IS_READY(_PyObject_CAST(op)) - -/* Return true if the string contains only ASCII characters, or 0 if not. The - string may be compact (PyUnicode_IS_COMPACT_ASCII) or not, but must be - ready. */ -static inline unsigned int PyUnicode_IS_ASCII(PyObject *op) { - return _PyASCIIObject_CAST(op)->state.ascii; -} -#define PyUnicode_IS_ASCII(op) PyUnicode_IS_ASCII(_PyObject_CAST(op)) - -/* Return true if the string is compact or 0 if not. - No type checks or Ready calls are performed. */ -static inline unsigned int PyUnicode_IS_COMPACT(PyObject *op) { - return _PyASCIIObject_CAST(op)->state.compact; -} -#define PyUnicode_IS_COMPACT(op) PyUnicode_IS_COMPACT(_PyObject_CAST(op)) - -/* Return true if the string is a compact ASCII string (use PyASCIIObject - structure), or 0 if not. No type checks or Ready calls are performed. */ -static inline int PyUnicode_IS_COMPACT_ASCII(PyObject *op) { - return (_PyASCIIObject_CAST(op)->state.ascii && PyUnicode_IS_COMPACT(op)); -} -#define PyUnicode_IS_COMPACT_ASCII(op) PyUnicode_IS_COMPACT_ASCII(_PyObject_CAST(op)) - -enum PyUnicode_Kind { -/* Return values of the PyUnicode_KIND() function: */ - PyUnicode_1BYTE_KIND = 1, - PyUnicode_2BYTE_KIND = 2, - PyUnicode_4BYTE_KIND = 4 -}; - -// PyUnicode_KIND(): Return one of the PyUnicode_*_KIND values defined above. -// -// gh-89653: Converting this macro to a static inline function would introduce -// new compiler warnings on "kind < PyUnicode_KIND(str)" (compare signed and -// unsigned numbers) where kind type is an int or on -// "unsigned int kind = PyUnicode_KIND(str)" (cast signed to unsigned). -#define PyUnicode_KIND(op) _Py_RVALUE(_PyASCIIObject_CAST(op)->state.kind) - -/* Return a void pointer to the raw unicode buffer. */ -static inline void* _PyUnicode_COMPACT_DATA(PyObject *op) { - if (PyUnicode_IS_ASCII(op)) { - return _Py_STATIC_CAST(void*, (_PyASCIIObject_CAST(op) + 1)); - } - return _Py_STATIC_CAST(void*, (_PyCompactUnicodeObject_CAST(op) + 1)); -} - -static inline void* _PyUnicode_NONCOMPACT_DATA(PyObject *op) { - void *data; - assert(!PyUnicode_IS_COMPACT(op)); - data = _PyUnicodeObject_CAST(op)->data.any; - assert(data != NULL); - return data; -} - -static inline void* PyUnicode_DATA(PyObject *op) { - if (PyUnicode_IS_COMPACT(op)) { - return _PyUnicode_COMPACT_DATA(op); - } - return _PyUnicode_NONCOMPACT_DATA(op); -} -#define PyUnicode_DATA(op) PyUnicode_DATA(_PyObject_CAST(op)) - -/* Return pointers to the canonical representation cast to unsigned char, - Py_UCS2, or Py_UCS4 for direct character access. - No checks are performed, use PyUnicode_KIND() before to ensure - these will work correctly. */ - -#define PyUnicode_1BYTE_DATA(op) _Py_STATIC_CAST(Py_UCS1*, PyUnicode_DATA(op)) -#define PyUnicode_2BYTE_DATA(op) _Py_STATIC_CAST(Py_UCS2*, PyUnicode_DATA(op)) -#define PyUnicode_4BYTE_DATA(op) _Py_STATIC_CAST(Py_UCS4*, PyUnicode_DATA(op)) - -/* Returns the length of the unicode string. */ -static inline Py_ssize_t PyUnicode_GET_LENGTH(PyObject *op) { - return _PyASCIIObject_CAST(op)->length; -} -#define PyUnicode_GET_LENGTH(op) PyUnicode_GET_LENGTH(_PyObject_CAST(op)) - -/* Write into the canonical representation, this function does not do any sanity - checks and is intended for usage in loops. The caller should cache the - kind and data pointers obtained from other function calls. - index is the index in the string (starts at 0) and value is the new - code point value which should be written to that location. */ -static inline void PyUnicode_WRITE(int kind, void *data, - Py_ssize_t index, Py_UCS4 value) -{ - assert(index >= 0); - if (kind == PyUnicode_1BYTE_KIND) { - assert(value <= 0xffU); - _Py_STATIC_CAST(Py_UCS1*, data)[index] = _Py_STATIC_CAST(Py_UCS1, value); - } - else if (kind == PyUnicode_2BYTE_KIND) { - assert(value <= 0xffffU); - _Py_STATIC_CAST(Py_UCS2*, data)[index] = _Py_STATIC_CAST(Py_UCS2, value); - } - else { - assert(kind == PyUnicode_4BYTE_KIND); - assert(value <= 0x10ffffU); - _Py_STATIC_CAST(Py_UCS4*, data)[index] = value; - } -} -#define PyUnicode_WRITE(kind, data, index, value) \ - PyUnicode_WRITE(_Py_STATIC_CAST(int, kind), _Py_CAST(void*, data), \ - (index), _Py_STATIC_CAST(Py_UCS4, value)) - -/* Read a code point from the string's canonical representation. No checks - or ready calls are performed. */ -static inline Py_UCS4 PyUnicode_READ(int kind, - const void *data, Py_ssize_t index) -{ - assert(index >= 0); - if (kind == PyUnicode_1BYTE_KIND) { - return _Py_STATIC_CAST(const Py_UCS1*, data)[index]; - } - if (kind == PyUnicode_2BYTE_KIND) { - return _Py_STATIC_CAST(const Py_UCS2*, data)[index]; - } - assert(kind == PyUnicode_4BYTE_KIND); - return _Py_STATIC_CAST(const Py_UCS4*, data)[index]; -} -#define PyUnicode_READ(kind, data, index) \ - PyUnicode_READ(_Py_STATIC_CAST(int, kind), \ - _Py_STATIC_CAST(const void*, data), \ - (index)) - -/* PyUnicode_READ_CHAR() is less efficient than PyUnicode_READ() because it - calls PyUnicode_KIND() and might call it twice. For single reads, use - PyUnicode_READ_CHAR, for multiple consecutive reads callers should - cache kind and use PyUnicode_READ instead. */ -static inline Py_UCS4 PyUnicode_READ_CHAR(PyObject *unicode, Py_ssize_t index) -{ - int kind; - - assert(index >= 0); - // Tolerate reading the NUL character at str[len(str)] - assert(index <= PyUnicode_GET_LENGTH(unicode)); - - kind = PyUnicode_KIND(unicode); - if (kind == PyUnicode_1BYTE_KIND) { - return PyUnicode_1BYTE_DATA(unicode)[index]; - } - if (kind == PyUnicode_2BYTE_KIND) { - return PyUnicode_2BYTE_DATA(unicode)[index]; - } - assert(kind == PyUnicode_4BYTE_KIND); - return PyUnicode_4BYTE_DATA(unicode)[index]; -} -#define PyUnicode_READ_CHAR(unicode, index) \ - PyUnicode_READ_CHAR(_PyObject_CAST(unicode), (index)) - -/* Return a maximum character value which is suitable for creating another - string based on op. This is always an approximation but more efficient - than iterating over the string. */ -static inline Py_UCS4 PyUnicode_MAX_CHAR_VALUE(PyObject *op) -{ - int kind; - - if (PyUnicode_IS_ASCII(op)) { - return 0x7fU; - } - - kind = PyUnicode_KIND(op); - if (kind == PyUnicode_1BYTE_KIND) { - return 0xffU; - } - if (kind == PyUnicode_2BYTE_KIND) { - return 0xffffU; - } - assert(kind == PyUnicode_4BYTE_KIND); - return 0x10ffffU; -} -#define PyUnicode_MAX_CHAR_VALUE(op) \ - PyUnicode_MAX_CHAR_VALUE(_PyObject_CAST(op)) - -/* === Public API ========================================================= */ - -/* --- Plain Py_UNICODE --------------------------------------------------- */ - -/* With PEP 393, this is the recommended way to allocate a new unicode object. - This function will allocate the object and its buffer in a single memory - block. Objects created using this function are not resizable. */ -PyAPI_FUNC(PyObject*) PyUnicode_New( - Py_ssize_t size, /* Number of code points in the new string */ - Py_UCS4 maxchar /* maximum code point value in the string */ - ); - -/* For backward compatibility */ -static inline int PyUnicode_READY(PyObject* Py_UNUSED(op)) -{ - return 0; -} -#define PyUnicode_READY(op) PyUnicode_READY(_PyObject_CAST(op)) - -/* Get a copy of a Unicode string. */ -PyAPI_FUNC(PyObject*) _PyUnicode_Copy( - PyObject *unicode - ); - -/* Copy character from one unicode object into another, this function performs - character conversion when necessary and falls back to memcpy() if possible. - - Fail if to is too small (smaller than *how_many* or smaller than - len(from)-from_start), or if kind(from[from_start:from_start+how_many]) > - kind(to), or if *to* has more than 1 reference. - - Return the number of written character, or return -1 and raise an exception - on error. - - Pseudo-code: - - how_many = min(how_many, len(from) - from_start) - to[to_start:to_start+how_many] = from[from_start:from_start+how_many] - return how_many - - Note: The function doesn't write a terminating null character. - */ -PyAPI_FUNC(Py_ssize_t) PyUnicode_CopyCharacters( - PyObject *to, - Py_ssize_t to_start, - PyObject *from, - Py_ssize_t from_start, - Py_ssize_t how_many - ); - -/* Unsafe version of PyUnicode_CopyCharacters(): don't check arguments and so - may crash if parameters are invalid (e.g. if the output string - is too short). */ -PyAPI_FUNC(void) _PyUnicode_FastCopyCharacters( - PyObject *to, - Py_ssize_t to_start, - PyObject *from, - Py_ssize_t from_start, - Py_ssize_t how_many - ); - -/* Fill a string with a character: write fill_char into - unicode[start:start+length]. - - Fail if fill_char is bigger than the string maximum character, or if the - string has more than 1 reference. - - Return the number of written character, or return -1 and raise an exception - on error. */ -PyAPI_FUNC(Py_ssize_t) PyUnicode_Fill( - PyObject *unicode, - Py_ssize_t start, - Py_ssize_t length, - Py_UCS4 fill_char - ); - -/* Unsafe version of PyUnicode_Fill(): don't check arguments and so may crash - if parameters are invalid (e.g. if length is longer than the string). */ -PyAPI_FUNC(void) _PyUnicode_FastFill( - PyObject *unicode, - Py_ssize_t start, - Py_ssize_t length, - Py_UCS4 fill_char - ); - -/* Create a new string from a buffer of Py_UCS1, Py_UCS2 or Py_UCS4 characters. - Scan the string to find the maximum character. */ -PyAPI_FUNC(PyObject*) PyUnicode_FromKindAndData( - int kind, - const void *buffer, - Py_ssize_t size); - -/* Create a new string from a buffer of ASCII characters. - WARNING: Don't check if the string contains any non-ASCII character. */ -PyAPI_FUNC(PyObject*) _PyUnicode_FromASCII( - const char *buffer, - Py_ssize_t size); - -/* Compute the maximum character of the substring unicode[start:end]. - Return 127 for an empty string. */ -PyAPI_FUNC(Py_UCS4) _PyUnicode_FindMaxChar ( - PyObject *unicode, - Py_ssize_t start, - Py_ssize_t end); - -/* --- _PyUnicodeWriter API ----------------------------------------------- */ - -typedef struct { - PyObject *buffer; - void *data; - int kind; - Py_UCS4 maxchar; - Py_ssize_t size; - Py_ssize_t pos; - - /* minimum number of allocated characters (default: 0) */ - Py_ssize_t min_length; - - /* minimum character (default: 127, ASCII) */ - Py_UCS4 min_char; - - /* If non-zero, overallocate the buffer (default: 0). */ - unsigned char overallocate; - - /* If readonly is 1, buffer is a shared string (cannot be modified) - and size is set to 0. */ - unsigned char readonly; -} _PyUnicodeWriter ; - -/* Initialize a Unicode writer. - * - * By default, the minimum buffer size is 0 character and overallocation is - * disabled. Set min_length, min_char and overallocate attributes to control - * the allocation of the buffer. */ -PyAPI_FUNC(void) -_PyUnicodeWriter_Init(_PyUnicodeWriter *writer); - -/* Prepare the buffer to write 'length' characters - with the specified maximum character. - - Return 0 on success, raise an exception and return -1 on error. */ -#define _PyUnicodeWriter_Prepare(WRITER, LENGTH, MAXCHAR) \ - (((MAXCHAR) <= (WRITER)->maxchar \ - && (LENGTH) <= (WRITER)->size - (WRITER)->pos) \ - ? 0 \ - : (((LENGTH) == 0) \ - ? 0 \ - : _PyUnicodeWriter_PrepareInternal((WRITER), (LENGTH), (MAXCHAR)))) - -/* Don't call this function directly, use the _PyUnicodeWriter_Prepare() macro - instead. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_PrepareInternal(_PyUnicodeWriter *writer, - Py_ssize_t length, Py_UCS4 maxchar); - -/* Prepare the buffer to have at least the kind KIND. - For example, kind=PyUnicode_2BYTE_KIND ensures that the writer will - support characters in range U+000-U+FFFF. - - Return 0 on success, raise an exception and return -1 on error. */ -#define _PyUnicodeWriter_PrepareKind(WRITER, KIND) \ - ((KIND) <= (WRITER)->kind \ - ? 0 \ - : _PyUnicodeWriter_PrepareKindInternal((WRITER), (KIND))) - -/* Don't call this function directly, use the _PyUnicodeWriter_PrepareKind() - macro instead. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_PrepareKindInternal(_PyUnicodeWriter *writer, - int kind); - -/* Append a Unicode character. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteChar(_PyUnicodeWriter *writer, - Py_UCS4 ch - ); - -/* Append a Unicode string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteStr(_PyUnicodeWriter *writer, - PyObject *str /* Unicode string */ - ); - -/* Append a substring of a Unicode string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteSubstring(_PyUnicodeWriter *writer, - PyObject *str, /* Unicode string */ - Py_ssize_t start, - Py_ssize_t end - ); - -/* Append an ASCII-encoded byte string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteASCIIString(_PyUnicodeWriter *writer, - const char *str, /* ASCII-encoded byte string */ - Py_ssize_t len /* number of bytes, or -1 if unknown */ - ); - -/* Append a latin1-encoded byte string. - Return 0 on success, raise an exception and return -1 on error. */ -PyAPI_FUNC(int) -_PyUnicodeWriter_WriteLatin1String(_PyUnicodeWriter *writer, - const char *str, /* latin1-encoded byte string */ - Py_ssize_t len /* length in bytes */ - ); - -/* Get the value of the writer as a Unicode string. Clear the - buffer of the writer. Raise an exception and return NULL - on error. */ -PyAPI_FUNC(PyObject *) -_PyUnicodeWriter_Finish(_PyUnicodeWriter *writer); - -/* Deallocate memory of a writer (clear its internal buffer). */ -PyAPI_FUNC(void) -_PyUnicodeWriter_Dealloc(_PyUnicodeWriter *writer); - - -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -PyAPI_FUNC(int) _PyUnicode_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); - -/* --- Manage the default encoding ---------------------------------------- */ - -/* Returns a pointer to the default encoding (UTF-8) of the - Unicode object unicode. - - Like PyUnicode_AsUTF8AndSize(), this also caches the UTF-8 representation - in the unicodeobject. - - _PyUnicode_AsString is a #define for PyUnicode_AsUTF8 to - support the previous internal function with the same behaviour. - - Use of this API is DEPRECATED since no size information can be - extracted from the returned data. -*/ - -PyAPI_FUNC(const char *) PyUnicode_AsUTF8(PyObject *unicode); - -#define _PyUnicode_AsString PyUnicode_AsUTF8 - -/* --- UTF-7 Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeUTF7( - PyObject *unicode, /* Unicode object */ - int base64SetO, /* Encode RFC2152 Set O characters in base64 */ - int base64WhiteSpace, /* Encode whitespace (sp, ht, nl, cr) in base64 */ - const char *errors /* error handling */ - ); - -/* --- UTF-8 Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) _PyUnicode_AsUTF8String( - PyObject *unicode, - const char *errors); - -/* --- UTF-32 Codecs ------------------------------------------------------ */ - -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeUTF32( - PyObject *object, /* Unicode object */ - const char *errors, /* error handling */ - int byteorder /* byteorder to use 0=BOM+native;-1=LE,1=BE */ - ); - -/* --- UTF-16 Codecs ------------------------------------------------------ */ - -/* Returns a Python string object holding the UTF-16 encoded value of - the Unicode data. - - If byteorder is not 0, output is written according to the following - byte order: - - byteorder == -1: little endian - byteorder == 0: native byte order (writes a BOM mark) - byteorder == 1: big endian - - If byteorder is 0, the output string will always start with the - Unicode BOM mark (U+FEFF). In the other two modes, no BOM mark is - prepended. -*/ -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeUTF16( - PyObject* unicode, /* Unicode object */ - const char *errors, /* error handling */ - int byteorder /* byteorder to use 0=BOM+native;-1=LE,1=BE */ - ); - -/* --- Unicode-Escape Codecs ---------------------------------------------- */ - -/* Variant of PyUnicode_DecodeUnicodeEscape that supports partial decoding. */ -PyAPI_FUNC(PyObject*) _PyUnicode_DecodeUnicodeEscapeStateful( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ -); -/* Helper for PyUnicode_DecodeUnicodeEscape that detects invalid escape - chars. */ -PyAPI_FUNC(PyObject*) _PyUnicode_DecodeUnicodeEscapeInternal( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed, /* bytes consumed */ - const char **first_invalid_escape /* on return, points to first - invalid escaped char in - string. */ -); - -/* --- Raw-Unicode-Escape Codecs ---------------------------------------------- */ - -/* Variant of PyUnicode_DecodeRawUnicodeEscape that supports partial decoding. */ -PyAPI_FUNC(PyObject*) _PyUnicode_DecodeRawUnicodeEscapeStateful( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ -); - -/* --- Latin-1 Codecs ----------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) _PyUnicode_AsLatin1String( - PyObject* unicode, - const char* errors); - -/* --- ASCII Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) _PyUnicode_AsASCIIString( - PyObject* unicode, - const char* errors); - -/* --- Character Map Codecs ----------------------------------------------- */ - -/* Translate an Unicode object by applying a character mapping table to - it and return the resulting Unicode object. - - The mapping table must map Unicode ordinal integers to Unicode strings, - Unicode ordinal integers or None (causing deletion of the character). - - Mapping tables may be dictionaries or sequences. Unmapped character - ordinals (ones which cause a LookupError) are left untouched and - are copied as-is. -*/ -PyAPI_FUNC(PyObject*) _PyUnicode_EncodeCharmap( - PyObject *unicode, /* Unicode object */ - PyObject *mapping, /* encoding mapping */ - const char *errors /* error handling */ - ); - -/* --- Decimal Encoder ---------------------------------------------------- */ - -/* Coverts a Unicode object holding a decimal value to an ASCII string - for using in int, float and complex parsers. - Transforms code points that have decimal digit property to the - corresponding ASCII digit code points. Transforms spaces to ASCII. - Transforms code points starting from the first non-ASCII code point that - is neither a decimal digit nor a space to the end into '?'. */ - -PyAPI_FUNC(PyObject*) _PyUnicode_TransformDecimalAndSpaceToASCII( - PyObject *unicode /* Unicode object */ - ); - -/* --- Methods & Slots ---------------------------------------------------- */ - -PyAPI_FUNC(PyObject *) _PyUnicode_JoinArray( - PyObject *separator, - PyObject *const *items, - Py_ssize_t seqlen - ); - -/* Test whether a unicode is equal to ASCII identifier. Return 1 if true, - 0 otherwise. The right argument must be ASCII identifier. - Any error occurs inside will be cleared before return. */ -PyAPI_FUNC(int) _PyUnicode_EqualToASCIIId( - PyObject *left, /* Left string */ - _Py_Identifier *right /* Right identifier */ - ); - -/* Test whether a unicode is equal to ASCII string. Return 1 if true, - 0 otherwise. The right argument must be ASCII-encoded string. - Any error occurs inside will be cleared before return. */ -PyAPI_FUNC(int) _PyUnicode_EqualToASCIIString( - PyObject *left, - const char *right /* ASCII-encoded string */ - ); - -/* Externally visible for str.strip(unicode) */ -PyAPI_FUNC(PyObject *) _PyUnicode_XStrip( - PyObject *self, - int striptype, - PyObject *sepobj - ); - -/* Using explicit passed-in values, insert the thousands grouping - into the string pointed to by buffer. For the argument descriptions, - see Objects/stringlib/localeutil.h */ -PyAPI_FUNC(Py_ssize_t) _PyUnicode_InsertThousandsGrouping( - _PyUnicodeWriter *writer, - Py_ssize_t n_buffer, - PyObject *digits, - Py_ssize_t d_pos, - Py_ssize_t n_digits, - Py_ssize_t min_width, - const char *grouping, - PyObject *thousands_sep, - Py_UCS4 *maxchar); - -/* === Characters Type APIs =============================================== */ - -/* These should not be used directly. Use the Py_UNICODE_IS* and - Py_UNICODE_TO* macros instead. - - These APIs are implemented in Objects/unicodectype.c. - -*/ - -PyAPI_FUNC(int) _PyUnicode_IsLowercase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsUppercase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsTitlecase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsXidStart( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsXidContinue( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsWhitespace( - const Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsLinebreak( - const Py_UCS4 ch /* Unicode character */ - ); - -/* Py_DEPRECATED(3.3) */ PyAPI_FUNC(Py_UCS4) _PyUnicode_ToLowercase( - Py_UCS4 ch /* Unicode character */ - ); - -/* Py_DEPRECATED(3.3) */ PyAPI_FUNC(Py_UCS4) _PyUnicode_ToUppercase( - Py_UCS4 ch /* Unicode character */ - ); - -Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UCS4) _PyUnicode_ToTitlecase( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_ToLowerFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_ToTitleFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_ToUpperFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_ToFoldedFull( - Py_UCS4 ch, /* Unicode character */ - Py_UCS4 *res - ); - -PyAPI_FUNC(int) _PyUnicode_IsCaseIgnorable( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsCased( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_ToDecimalDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_ToDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(double) _PyUnicode_ToNumeric( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsDecimalDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsDigit( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsNumeric( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsPrintable( - Py_UCS4 ch /* Unicode character */ - ); - -PyAPI_FUNC(int) _PyUnicode_IsAlpha( - Py_UCS4 ch /* Unicode character */ - ); - -// Helper array used by Py_UNICODE_ISSPACE(). -PyAPI_DATA(const unsigned char) _Py_ascii_whitespace[]; - -// Since splitting on whitespace is an important use case, and -// whitespace in most situations is solely ASCII whitespace, we -// optimize for the common case by using a quick look-up table -// _Py_ascii_whitespace (see below) with an inlined check. -static inline int Py_UNICODE_ISSPACE(Py_UCS4 ch) { - if (ch < 128) { - return _Py_ascii_whitespace[ch]; - } - return _PyUnicode_IsWhitespace(ch); -} - -#define Py_UNICODE_ISLOWER(ch) _PyUnicode_IsLowercase(ch) -#define Py_UNICODE_ISUPPER(ch) _PyUnicode_IsUppercase(ch) -#define Py_UNICODE_ISTITLE(ch) _PyUnicode_IsTitlecase(ch) -#define Py_UNICODE_ISLINEBREAK(ch) _PyUnicode_IsLinebreak(ch) - -#define Py_UNICODE_TOLOWER(ch) _PyUnicode_ToLowercase(ch) -#define Py_UNICODE_TOUPPER(ch) _PyUnicode_ToUppercase(ch) -#define Py_UNICODE_TOTITLE(ch) _PyUnicode_ToTitlecase(ch) - -#define Py_UNICODE_ISDECIMAL(ch) _PyUnicode_IsDecimalDigit(ch) -#define Py_UNICODE_ISDIGIT(ch) _PyUnicode_IsDigit(ch) -#define Py_UNICODE_ISNUMERIC(ch) _PyUnicode_IsNumeric(ch) -#define Py_UNICODE_ISPRINTABLE(ch) _PyUnicode_IsPrintable(ch) - -#define Py_UNICODE_TODECIMAL(ch) _PyUnicode_ToDecimalDigit(ch) -#define Py_UNICODE_TODIGIT(ch) _PyUnicode_ToDigit(ch) -#define Py_UNICODE_TONUMERIC(ch) _PyUnicode_ToNumeric(ch) - -#define Py_UNICODE_ISALPHA(ch) _PyUnicode_IsAlpha(ch) - -static inline int Py_UNICODE_ISALNUM(Py_UCS4 ch) { - return (Py_UNICODE_ISALPHA(ch) - || Py_UNICODE_ISDECIMAL(ch) - || Py_UNICODE_ISDIGIT(ch) - || Py_UNICODE_ISNUMERIC(ch)); -} - - -/* === Misc functions ===================================================== */ - -PyAPI_FUNC(PyObject*) _PyUnicode_FormatLong(PyObject *, int, int, int); - -/* Return an interned Unicode object for an Identifier; may fail if there is no memory.*/ -PyAPI_FUNC(PyObject*) _PyUnicode_FromId(_Py_Identifier*); - -/* Fast equality check when the inputs are known to be exact unicode types - and where the hash values are equal (i.e. a very probable match) */ -PyAPI_FUNC(int) _PyUnicode_EQ(PyObject *, PyObject *); - -/* Equality check. */ -PyAPI_FUNC(int) _PyUnicode_Equal(PyObject *, PyObject *); - -PyAPI_FUNC(int) _PyUnicode_WideCharString_Converter(PyObject *, void *); -PyAPI_FUNC(int) _PyUnicode_WideCharString_Opt_Converter(PyObject *, void *); - -PyAPI_FUNC(Py_ssize_t) _PyUnicode_ScanIdentifier(PyObject *); diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/warnings.h b/_Pre_Builds/_Python312_cpp/include/cpython/warnings.h deleted file mode 100644 index 4e3eb88..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/warnings.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef Py_CPYTHON_WARNINGS_H -# error "this header file must not be included directly" -#endif - -PyAPI_FUNC(int) PyErr_WarnExplicitObject( - PyObject *category, - PyObject *message, - PyObject *filename, - int lineno, - PyObject *module, - PyObject *registry); - -PyAPI_FUNC(int) PyErr_WarnExplicitFormat( - PyObject *category, - const char *filename, int lineno, - const char *module, PyObject *registry, - const char *format, ...); - -// DEPRECATED: Use PyErr_WarnEx() instead. -#define PyErr_Warn(category, msg) PyErr_WarnEx((category), (msg), 1) diff --git a/_Pre_Builds/_Python312_cpp/include/cpython/weakrefobject.h b/_Pre_Builds/_Python312_cpp/include/cpython/weakrefobject.h deleted file mode 100644 index fd79fdc..0000000 --- a/_Pre_Builds/_Python312_cpp/include/cpython/weakrefobject.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef Py_CPYTHON_WEAKREFOBJECT_H -# error "this header file must not be included directly" -#endif - -/* PyWeakReference is the base struct for the Python ReferenceType, ProxyType, - * and CallableProxyType. - */ -struct _PyWeakReference { - PyObject_HEAD - - /* The object to which this is a weak reference, or Py_None if none. - * Note that this is a stealth reference: wr_object's refcount is - * not incremented to reflect this pointer. - */ - PyObject *wr_object; - - /* A callable to invoke when wr_object dies, or NULL if none. */ - PyObject *wr_callback; - - /* A cache for wr_object's hash code. As usual for hashes, this is -1 - * if the hash code isn't known yet. - */ - Py_hash_t hash; - - /* If wr_object is weakly referenced, wr_object has a doubly-linked NULL- - * terminated list of weak references to it. These are the list pointers. - * If wr_object goes away, wr_object is set to Py_None, and these pointers - * have no meaning then. - */ - PyWeakReference *wr_prev; - PyWeakReference *wr_next; - vectorcallfunc vectorcall; -}; - -PyAPI_FUNC(Py_ssize_t) _PyWeakref_GetWeakrefCount(PyWeakReference *head); - -PyAPI_FUNC(void) _PyWeakref_ClearRef(PyWeakReference *self); - -static inline PyObject* PyWeakref_GET_OBJECT(PyObject *ref_obj) { - PyWeakReference *ref; - PyObject *obj; - assert(PyWeakref_Check(ref_obj)); - ref = _Py_CAST(PyWeakReference*, ref_obj); - obj = ref->wr_object; - // Explanation for the Py_REFCNT() check: when a weakref's target is part - // of a long chain of deallocations which triggers the trashcan mechanism, - // clearing the weakrefs can be delayed long after the target's refcount - // has dropped to zero. In the meantime, code accessing the weakref will - // be able to "see" the target object even though it is supposed to be - // unreachable. See issue gh-60806. - if (Py_REFCNT(obj) > 0) { - return obj; - } - return Py_None; -} -#define PyWeakref_GET_OBJECT(ref) PyWeakref_GET_OBJECT(_PyObject_CAST(ref)) diff --git a/_Pre_Builds/_Python312_cpp/include/datetime.h b/_Pre_Builds/_Python312_cpp/include/datetime.h deleted file mode 100644 index b78cc0e..0000000 --- a/_Pre_Builds/_Python312_cpp/include/datetime.h +++ /dev/null @@ -1,267 +0,0 @@ -/* datetime.h - */ -#ifndef Py_LIMITED_API -#ifndef DATETIME_H -#define DATETIME_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Fields are packed into successive bytes, each viewed as unsigned and - * big-endian, unless otherwise noted: - * - * byte offset - * 0 year 2 bytes, 1-9999 - * 2 month 1 byte, 1-12 - * 3 day 1 byte, 1-31 - * 4 hour 1 byte, 0-23 - * 5 minute 1 byte, 0-59 - * 6 second 1 byte, 0-59 - * 7 usecond 3 bytes, 0-999999 - * 10 - */ - -/* # of bytes for year, month, and day. */ -#define _PyDateTime_DATE_DATASIZE 4 - -/* # of bytes for hour, minute, second, and usecond. */ -#define _PyDateTime_TIME_DATASIZE 6 - -/* # of bytes for year, month, day, hour, minute, second, and usecond. */ -#define _PyDateTime_DATETIME_DATASIZE 10 - - -typedef struct -{ - PyObject_HEAD - Py_hash_t hashcode; /* -1 when unknown */ - int days; /* -MAX_DELTA_DAYS <= days <= MAX_DELTA_DAYS */ - int seconds; /* 0 <= seconds < 24*3600 is invariant */ - int microseconds; /* 0 <= microseconds < 1000000 is invariant */ -} PyDateTime_Delta; - -typedef struct -{ - PyObject_HEAD /* a pure abstract base class */ -} PyDateTime_TZInfo; - - -/* The datetime and time types have hashcodes, and an optional tzinfo member, - * present if and only if hastzinfo is true. - */ -#define _PyTZINFO_HEAD \ - PyObject_HEAD \ - Py_hash_t hashcode; \ - char hastzinfo; /* boolean flag */ - -/* No _PyDateTime_BaseTZInfo is allocated; it's just to have something - * convenient to cast to, when getting at the hastzinfo member of objects - * starting with _PyTZINFO_HEAD. - */ -typedef struct -{ - _PyTZINFO_HEAD -} _PyDateTime_BaseTZInfo; - -/* All time objects are of PyDateTime_TimeType, but that can be allocated - * in two ways, with or without a tzinfo member. Without is the same as - * tzinfo == None, but consumes less memory. _PyDateTime_BaseTime is an - * internal struct used to allocate the right amount of space for the - * "without" case. - */ -#define _PyDateTime_TIMEHEAD \ - _PyTZINFO_HEAD \ - unsigned char data[_PyDateTime_TIME_DATASIZE]; - -typedef struct -{ - _PyDateTime_TIMEHEAD -} _PyDateTime_BaseTime; /* hastzinfo false */ - -typedef struct -{ - _PyDateTime_TIMEHEAD - unsigned char fold; - PyObject *tzinfo; -} PyDateTime_Time; /* hastzinfo true */ - - -/* All datetime objects are of PyDateTime_DateTimeType, but that can be - * allocated in two ways too, just like for time objects above. In addition, - * the plain date type is a base class for datetime, so it must also have - * a hastzinfo member (although it's unused there). - */ -typedef struct -{ - _PyTZINFO_HEAD - unsigned char data[_PyDateTime_DATE_DATASIZE]; -} PyDateTime_Date; - -#define _PyDateTime_DATETIMEHEAD \ - _PyTZINFO_HEAD \ - unsigned char data[_PyDateTime_DATETIME_DATASIZE]; - -typedef struct -{ - _PyDateTime_DATETIMEHEAD -} _PyDateTime_BaseDateTime; /* hastzinfo false */ - -typedef struct -{ - _PyDateTime_DATETIMEHEAD - unsigned char fold; - PyObject *tzinfo; -} PyDateTime_DateTime; /* hastzinfo true */ - - -/* Apply for date and datetime instances. */ - -// o is a pointer to a time or a datetime object. -#define _PyDateTime_HAS_TZINFO(o) (((_PyDateTime_BaseTZInfo *)(o))->hastzinfo) - -#define PyDateTime_GET_YEAR(o) ((((PyDateTime_Date*)(o))->data[0] << 8) | \ - ((PyDateTime_Date*)(o))->data[1]) -#define PyDateTime_GET_MONTH(o) (((PyDateTime_Date*)(o))->data[2]) -#define PyDateTime_GET_DAY(o) (((PyDateTime_Date*)(o))->data[3]) - -#define PyDateTime_DATE_GET_HOUR(o) (((PyDateTime_DateTime*)(o))->data[4]) -#define PyDateTime_DATE_GET_MINUTE(o) (((PyDateTime_DateTime*)(o))->data[5]) -#define PyDateTime_DATE_GET_SECOND(o) (((PyDateTime_DateTime*)(o))->data[6]) -#define PyDateTime_DATE_GET_MICROSECOND(o) \ - ((((PyDateTime_DateTime*)(o))->data[7] << 16) | \ - (((PyDateTime_DateTime*)(o))->data[8] << 8) | \ - ((PyDateTime_DateTime*)(o))->data[9]) -#define PyDateTime_DATE_GET_FOLD(o) (((PyDateTime_DateTime*)(o))->fold) -#define PyDateTime_DATE_GET_TZINFO(o) (_PyDateTime_HAS_TZINFO((o)) ? \ - ((PyDateTime_DateTime *)(o))->tzinfo : Py_None) - -/* Apply for time instances. */ -#define PyDateTime_TIME_GET_HOUR(o) (((PyDateTime_Time*)(o))->data[0]) -#define PyDateTime_TIME_GET_MINUTE(o) (((PyDateTime_Time*)(o))->data[1]) -#define PyDateTime_TIME_GET_SECOND(o) (((PyDateTime_Time*)(o))->data[2]) -#define PyDateTime_TIME_GET_MICROSECOND(o) \ - ((((PyDateTime_Time*)(o))->data[3] << 16) | \ - (((PyDateTime_Time*)(o))->data[4] << 8) | \ - ((PyDateTime_Time*)(o))->data[5]) -#define PyDateTime_TIME_GET_FOLD(o) (((PyDateTime_Time*)(o))->fold) -#define PyDateTime_TIME_GET_TZINFO(o) (_PyDateTime_HAS_TZINFO(o) ? \ - ((PyDateTime_Time *)(o))->tzinfo : Py_None) - -/* Apply for time delta instances */ -#define PyDateTime_DELTA_GET_DAYS(o) (((PyDateTime_Delta*)(o))->days) -#define PyDateTime_DELTA_GET_SECONDS(o) (((PyDateTime_Delta*)(o))->seconds) -#define PyDateTime_DELTA_GET_MICROSECONDS(o) \ - (((PyDateTime_Delta*)(o))->microseconds) - - -/* Define structure for C API. */ -typedef struct { - /* type objects */ - PyTypeObject *DateType; - PyTypeObject *DateTimeType; - PyTypeObject *TimeType; - PyTypeObject *DeltaType; - PyTypeObject *TZInfoType; - - /* singletons */ - PyObject *TimeZone_UTC; - - /* constructors */ - PyObject *(*Date_FromDate)(int, int, int, PyTypeObject*); - PyObject *(*DateTime_FromDateAndTime)(int, int, int, int, int, int, int, - PyObject*, PyTypeObject*); - PyObject *(*Time_FromTime)(int, int, int, int, PyObject*, PyTypeObject*); - PyObject *(*Delta_FromDelta)(int, int, int, int, PyTypeObject*); - PyObject *(*TimeZone_FromTimeZone)(PyObject *offset, PyObject *name); - - /* constructors for the DB API */ - PyObject *(*DateTime_FromTimestamp)(PyObject*, PyObject*, PyObject*); - PyObject *(*Date_FromTimestamp)(PyObject*, PyObject*); - - /* PEP 495 constructors */ - PyObject *(*DateTime_FromDateAndTimeAndFold)(int, int, int, int, int, int, int, - PyObject*, int, PyTypeObject*); - PyObject *(*Time_FromTimeAndFold)(int, int, int, int, PyObject*, int, PyTypeObject*); - -} PyDateTime_CAPI; - -#define PyDateTime_CAPSULE_NAME "datetime.datetime_CAPI" - - -/* This block is only used as part of the public API and should not be - * included in _datetimemodule.c, which does not use the C API capsule. - * See bpo-35081 for more details. - * */ -#ifndef _PY_DATETIME_IMPL -/* Define global variable for the C API and a macro for setting it. */ -static PyDateTime_CAPI *PyDateTimeAPI = NULL; - -#define PyDateTime_IMPORT \ - PyDateTimeAPI = (PyDateTime_CAPI *)PyCapsule_Import(PyDateTime_CAPSULE_NAME, 0) - -/* Macro for access to the UTC singleton */ -#define PyDateTime_TimeZone_UTC PyDateTimeAPI->TimeZone_UTC - -/* Macros for type checking when not building the Python core. */ -#define PyDate_Check(op) PyObject_TypeCheck((op), PyDateTimeAPI->DateType) -#define PyDate_CheckExact(op) Py_IS_TYPE((op), PyDateTimeAPI->DateType) - -#define PyDateTime_Check(op) PyObject_TypeCheck((op), PyDateTimeAPI->DateTimeType) -#define PyDateTime_CheckExact(op) Py_IS_TYPE((op), PyDateTimeAPI->DateTimeType) - -#define PyTime_Check(op) PyObject_TypeCheck((op), PyDateTimeAPI->TimeType) -#define PyTime_CheckExact(op) Py_IS_TYPE((op), PyDateTimeAPI->TimeType) - -#define PyDelta_Check(op) PyObject_TypeCheck((op), PyDateTimeAPI->DeltaType) -#define PyDelta_CheckExact(op) Py_IS_TYPE((op), PyDateTimeAPI->DeltaType) - -#define PyTZInfo_Check(op) PyObject_TypeCheck((op), PyDateTimeAPI->TZInfoType) -#define PyTZInfo_CheckExact(op) Py_IS_TYPE((op), PyDateTimeAPI->TZInfoType) - - -/* Macros for accessing constructors in a simplified fashion. */ -#define PyDate_FromDate(year, month, day) \ - PyDateTimeAPI->Date_FromDate((year), (month), (day), PyDateTimeAPI->DateType) - -#define PyDateTime_FromDateAndTime(year, month, day, hour, min, sec, usec) \ - PyDateTimeAPI->DateTime_FromDateAndTime((year), (month), (day), (hour), \ - (min), (sec), (usec), Py_None, PyDateTimeAPI->DateTimeType) - -#define PyDateTime_FromDateAndTimeAndFold(year, month, day, hour, min, sec, usec, fold) \ - PyDateTimeAPI->DateTime_FromDateAndTimeAndFold((year), (month), (day), (hour), \ - (min), (sec), (usec), Py_None, (fold), PyDateTimeAPI->DateTimeType) - -#define PyTime_FromTime(hour, minute, second, usecond) \ - PyDateTimeAPI->Time_FromTime((hour), (minute), (second), (usecond), \ - Py_None, PyDateTimeAPI->TimeType) - -#define PyTime_FromTimeAndFold(hour, minute, second, usecond, fold) \ - PyDateTimeAPI->Time_FromTimeAndFold((hour), (minute), (second), (usecond), \ - Py_None, (fold), PyDateTimeAPI->TimeType) - -#define PyDelta_FromDSU(days, seconds, useconds) \ - PyDateTimeAPI->Delta_FromDelta((days), (seconds), (useconds), 1, \ - PyDateTimeAPI->DeltaType) - -#define PyTimeZone_FromOffset(offset) \ - PyDateTimeAPI->TimeZone_FromTimeZone((offset), NULL) - -#define PyTimeZone_FromOffsetAndName(offset, name) \ - PyDateTimeAPI->TimeZone_FromTimeZone((offset), (name)) - -/* Macros supporting the DB API. */ -#define PyDateTime_FromTimestamp(args) \ - PyDateTimeAPI->DateTime_FromTimestamp( \ - (PyObject*) (PyDateTimeAPI->DateTimeType), (args), NULL) - -#define PyDate_FromTimestamp(args) \ - PyDateTimeAPI->Date_FromTimestamp( \ - (PyObject*) (PyDateTimeAPI->DateType), (args)) - -#endif /* !defined(_PY_DATETIME_IMPL) */ - -#ifdef __cplusplus -} -#endif -#endif -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python312_cpp/include/descrobject.h b/_Pre_Builds/_Python312_cpp/include/descrobject.h deleted file mode 100644 index fd66d17..0000000 --- a/_Pre_Builds/_Python312_cpp/include/descrobject.h +++ /dev/null @@ -1,100 +0,0 @@ -/* Descriptors */ -#ifndef Py_DESCROBJECT_H -#define Py_DESCROBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef PyObject *(*getter)(PyObject *, void *); -typedef int (*setter)(PyObject *, PyObject *, void *); - -struct PyGetSetDef { - const char *name; - getter get; - setter set; - const char *doc; - void *closure; -}; - -PyAPI_DATA(PyTypeObject) PyClassMethodDescr_Type; -PyAPI_DATA(PyTypeObject) PyGetSetDescr_Type; -PyAPI_DATA(PyTypeObject) PyMemberDescr_Type; -PyAPI_DATA(PyTypeObject) PyMethodDescr_Type; -PyAPI_DATA(PyTypeObject) PyWrapperDescr_Type; -PyAPI_DATA(PyTypeObject) PyDictProxy_Type; -PyAPI_DATA(PyTypeObject) PyProperty_Type; - -PyAPI_FUNC(PyObject *) PyDescr_NewMethod(PyTypeObject *, PyMethodDef *); -PyAPI_FUNC(PyObject *) PyDescr_NewClassMethod(PyTypeObject *, PyMethodDef *); -PyAPI_FUNC(PyObject *) PyDescr_NewMember(PyTypeObject *, PyMemberDef *); -PyAPI_FUNC(PyObject *) PyDescr_NewGetSet(PyTypeObject *, PyGetSetDef *); - -PyAPI_FUNC(PyObject *) PyDictProxy_New(PyObject *); -PyAPI_FUNC(PyObject *) PyWrapper_New(PyObject *, PyObject *); - - -/* An array of PyMemberDef structures defines the name, type and offset - of selected members of a C structure. These can be read by - PyMember_GetOne() and set by PyMember_SetOne() (except if their READONLY - flag is set). The array must be terminated with an entry whose name - pointer is NULL. */ -struct PyMemberDef { - const char *name; - int type; - Py_ssize_t offset; - int flags; - const char *doc; -}; - -// These constants used to be in structmember.h, not prefixed by Py_. -// (structmember.h now has aliases to the new names.) - -/* Types */ -#define Py_T_SHORT 0 -#define Py_T_INT 1 -#define Py_T_LONG 2 -#define Py_T_FLOAT 3 -#define Py_T_DOUBLE 4 -#define Py_T_STRING 5 -#define _Py_T_OBJECT 6 // Deprecated, use Py_T_OBJECT_EX instead -/* the ordering here is weird for binary compatibility */ -#define Py_T_CHAR 7 /* 1-character string */ -#define Py_T_BYTE 8 /* 8-bit signed int */ -/* unsigned variants: */ -#define Py_T_UBYTE 9 -#define Py_T_USHORT 10 -#define Py_T_UINT 11 -#define Py_T_ULONG 12 - -/* Added by Jack: strings contained in the structure */ -#define Py_T_STRING_INPLACE 13 - -/* Added by Lillo: bools contained in the structure (assumed char) */ -#define Py_T_BOOL 14 - -#define Py_T_OBJECT_EX 16 -#define Py_T_LONGLONG 17 -#define Py_T_ULONGLONG 18 - -#define Py_T_PYSSIZET 19 /* Py_ssize_t */ -#define _Py_T_NONE 20 // Deprecated. Value is always None. - -/* Flags */ -#define Py_READONLY 1 -#define Py_AUDIT_READ 2 // Added in 3.10, harmless no-op before that -#define _Py_WRITE_RESTRICTED 4 // Deprecated, no-op. Do not reuse the value. -#define Py_RELATIVE_OFFSET 8 - -PyAPI_FUNC(PyObject *) PyMember_GetOne(const char *, PyMemberDef *); -PyAPI_FUNC(int) PyMember_SetOne(char *, PyMemberDef *, PyObject *); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_DESCROBJECT_H -# include "cpython/descrobject.h" -# undef Py_CPYTHON_DESCROBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_DESCROBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/dictobject.h b/_Pre_Builds/_Python312_cpp/include/dictobject.h deleted file mode 100644 index e7fcb44..0000000 --- a/_Pre_Builds/_Python312_cpp/include/dictobject.h +++ /dev/null @@ -1,97 +0,0 @@ -#ifndef Py_DICTOBJECT_H -#define Py_DICTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Dictionary object type -- mapping from hashable object to object */ - -/* The distribution includes a separate file, Objects/dictnotes.txt, - describing explorations into dictionary design and optimization. - It covers typical dictionary use patterns, the parameters for - tuning dictionaries, and several ideas for possible optimizations. -*/ - -PyAPI_DATA(PyTypeObject) PyDict_Type; - -#define PyDict_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_DICT_SUBCLASS) -#define PyDict_CheckExact(op) Py_IS_TYPE((op), &PyDict_Type) - -PyAPI_FUNC(PyObject *) PyDict_New(void); -PyAPI_FUNC(PyObject *) PyDict_GetItem(PyObject *mp, PyObject *key); -PyAPI_FUNC(PyObject *) PyDict_GetItemWithError(PyObject *mp, PyObject *key); -PyAPI_FUNC(int) PyDict_SetItem(PyObject *mp, PyObject *key, PyObject *item); -PyAPI_FUNC(int) PyDict_DelItem(PyObject *mp, PyObject *key); -PyAPI_FUNC(void) PyDict_Clear(PyObject *mp); -PyAPI_FUNC(int) PyDict_Next( - PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value); -PyAPI_FUNC(PyObject *) PyDict_Keys(PyObject *mp); -PyAPI_FUNC(PyObject *) PyDict_Values(PyObject *mp); -PyAPI_FUNC(PyObject *) PyDict_Items(PyObject *mp); -PyAPI_FUNC(Py_ssize_t) PyDict_Size(PyObject *mp); -PyAPI_FUNC(PyObject *) PyDict_Copy(PyObject *mp); -PyAPI_FUNC(int) PyDict_Contains(PyObject *mp, PyObject *key); - -/* PyDict_Update(mp, other) is equivalent to PyDict_Merge(mp, other, 1). */ -PyAPI_FUNC(int) PyDict_Update(PyObject *mp, PyObject *other); - -/* PyDict_Merge updates/merges from a mapping object (an object that - supports PyMapping_Keys() and PyObject_GetItem()). If override is true, - the last occurrence of a key wins, else the first. The Python - dict.update(other) is equivalent to PyDict_Merge(dict, other, 1). -*/ -PyAPI_FUNC(int) PyDict_Merge(PyObject *mp, - PyObject *other, - int override); - -/* PyDict_MergeFromSeq2 updates/merges from an iterable object producing - iterable objects of length 2. If override is true, the last occurrence - of a key wins, else the first. The Python dict constructor dict(seq2) - is equivalent to dict={}; PyDict_MergeFromSeq(dict, seq2, 1). -*/ -PyAPI_FUNC(int) PyDict_MergeFromSeq2(PyObject *d, - PyObject *seq2, - int override); - -PyAPI_FUNC(PyObject *) PyDict_GetItemString(PyObject *dp, const char *key); -PyAPI_FUNC(int) PyDict_SetItemString(PyObject *dp, const char *key, PyObject *item); -PyAPI_FUNC(int) PyDict_DelItemString(PyObject *dp, const char *key); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -PyAPI_FUNC(PyObject *) PyObject_GenericGetDict(PyObject *, void *); -#endif - -/* Dictionary (keys, values, items) views */ - -PyAPI_DATA(PyTypeObject) PyDictKeys_Type; -PyAPI_DATA(PyTypeObject) PyDictValues_Type; -PyAPI_DATA(PyTypeObject) PyDictItems_Type; - -#define PyDictKeys_Check(op) PyObject_TypeCheck((op), &PyDictKeys_Type) -#define PyDictValues_Check(op) PyObject_TypeCheck((op), &PyDictValues_Type) -#define PyDictItems_Check(op) PyObject_TypeCheck((op), &PyDictItems_Type) -/* This excludes Values, since they are not sets. */ -# define PyDictViewSet_Check(op) \ - (PyDictKeys_Check(op) || PyDictItems_Check(op)) - -/* Dictionary (key, value, items) iterators */ - -PyAPI_DATA(PyTypeObject) PyDictIterKey_Type; -PyAPI_DATA(PyTypeObject) PyDictIterValue_Type; -PyAPI_DATA(PyTypeObject) PyDictIterItem_Type; - -PyAPI_DATA(PyTypeObject) PyDictRevIterKey_Type; -PyAPI_DATA(PyTypeObject) PyDictRevIterItem_Type; -PyAPI_DATA(PyTypeObject) PyDictRevIterValue_Type; - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_DICTOBJECT_H -# include "cpython/dictobject.h" -# undef Py_CPYTHON_DICTOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_DICTOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/dynamic_annotations.h b/_Pre_Builds/_Python312_cpp/include/dynamic_annotations.h deleted file mode 100644 index 4d4def9..0000000 --- a/_Pre_Builds/_Python312_cpp/include/dynamic_annotations.h +++ /dev/null @@ -1,499 +0,0 @@ -/* Copyright (c) 2008-2009, Google Inc. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Neither the name of Google Inc. nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * --- - * Author: Kostya Serebryany - * Copied to CPython by Jeffrey Yasskin, with all macros renamed to - * start with _Py_ to avoid colliding with users embedding Python, and - * with deprecated macros removed. - */ - -/* This file defines dynamic annotations for use with dynamic analysis - tool such as valgrind, PIN, etc. - - Dynamic annotation is a source code annotation that affects - the generated code (that is, the annotation is not a comment). - Each such annotation is attached to a particular - instruction and/or to a particular object (address) in the program. - - The annotations that should be used by users are macros in all upper-case - (e.g., _Py_ANNOTATE_NEW_MEMORY). - - Actual implementation of these macros may differ depending on the - dynamic analysis tool being used. - - See https://code.google.com/p/data-race-test/ for more information. - - This file supports the following dynamic analysis tools: - - None (DYNAMIC_ANNOTATIONS_ENABLED is not defined or zero). - Macros are defined empty. - - ThreadSanitizer, Helgrind, DRD (DYNAMIC_ANNOTATIONS_ENABLED is 1). - Macros are defined as calls to non-inlinable empty functions - that are intercepted by Valgrind. */ - -#ifndef __DYNAMIC_ANNOTATIONS_H__ -#define __DYNAMIC_ANNOTATIONS_H__ - -#ifndef DYNAMIC_ANNOTATIONS_ENABLED -# define DYNAMIC_ANNOTATIONS_ENABLED 0 -#endif - -#if DYNAMIC_ANNOTATIONS_ENABLED != 0 - - /* ------------------------------------------------------------- - Annotations useful when implementing condition variables such as CondVar, - using conditional critical sections (Await/LockWhen) and when constructing - user-defined synchronization mechanisms. - - The annotations _Py_ANNOTATE_HAPPENS_BEFORE() and - _Py_ANNOTATE_HAPPENS_AFTER() can be used to define happens-before arcs in - user-defined synchronization mechanisms: the race detector will infer an - arc from the former to the latter when they share the same argument - pointer. - - Example 1 (reference counting): - - void Unref() { - _Py_ANNOTATE_HAPPENS_BEFORE(&refcount_); - if (AtomicDecrementByOne(&refcount_) == 0) { - _Py_ANNOTATE_HAPPENS_AFTER(&refcount_); - delete this; - } - } - - Example 2 (message queue): - - void MyQueue::Put(Type *e) { - MutexLock lock(&mu_); - _Py_ANNOTATE_HAPPENS_BEFORE(e); - PutElementIntoMyQueue(e); - } - - Type *MyQueue::Get() { - MutexLock lock(&mu_); - Type *e = GetElementFromMyQueue(); - _Py_ANNOTATE_HAPPENS_AFTER(e); - return e; - } - - Note: when possible, please use the existing reference counting and message - queue implementations instead of inventing new ones. */ - - /* Report that wait on the condition variable at address "cv" has succeeded - and the lock at address "lock" is held. */ -#define _Py_ANNOTATE_CONDVAR_LOCK_WAIT(cv, lock) \ - AnnotateCondVarWait(__FILE__, __LINE__, cv, lock) - - /* Report that wait on the condition variable at "cv" has succeeded. Variant - w/o lock. */ -#define _Py_ANNOTATE_CONDVAR_WAIT(cv) \ - AnnotateCondVarWait(__FILE__, __LINE__, cv, NULL) - - /* Report that we are about to signal on the condition variable at address - "cv". */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL(cv) \ - AnnotateCondVarSignal(__FILE__, __LINE__, cv) - - /* Report that we are about to signal_all on the condition variable at "cv". */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL_ALL(cv) \ - AnnotateCondVarSignalAll(__FILE__, __LINE__, cv) - - /* Annotations for user-defined synchronization mechanisms. */ -#define _Py_ANNOTATE_HAPPENS_BEFORE(obj) _Py_ANNOTATE_CONDVAR_SIGNAL(obj) -#define _Py_ANNOTATE_HAPPENS_AFTER(obj) _Py_ANNOTATE_CONDVAR_WAIT(obj) - - /* Report that the bytes in the range [pointer, pointer+size) are about - to be published safely. The race checker will create a happens-before - arc from the call _Py_ANNOTATE_PUBLISH_MEMORY_RANGE(pointer, size) to - subsequent accesses to this memory. - Note: this annotation may not work properly if the race detector uses - sampling, i.e. does not observe all memory accesses. - */ -#define _Py_ANNOTATE_PUBLISH_MEMORY_RANGE(pointer, size) \ - AnnotatePublishMemoryRange(__FILE__, __LINE__, pointer, size) - - /* Instruct the tool to create a happens-before arc between mu->Unlock() and - mu->Lock(). This annotation may slow down the race detector and hide real - races. Normally it is used only when it would be difficult to annotate each - of the mutex's critical sections individually using the annotations above. - This annotation makes sense only for hybrid race detectors. For pure - happens-before detectors this is a no-op. For more details see - https://code.google.com/p/data-race-test/wiki/PureHappensBeforeVsHybrid . */ -#define _Py_ANNOTATE_PURE_HAPPENS_BEFORE_MUTEX(mu) \ - AnnotateMutexIsUsedAsCondVar(__FILE__, __LINE__, mu) - - /* ------------------------------------------------------------- - Annotations useful when defining memory allocators, or when memory that - was protected in one way starts to be protected in another. */ - - /* Report that a new memory at "address" of size "size" has been allocated. - This might be used when the memory has been retrieved from a free list and - is about to be reused, or when the locking discipline for a variable - changes. */ -#define _Py_ANNOTATE_NEW_MEMORY(address, size) \ - AnnotateNewMemory(__FILE__, __LINE__, address, size) - - /* ------------------------------------------------------------- - Annotations useful when defining FIFO queues that transfer data between - threads. */ - - /* Report that the producer-consumer queue (such as ProducerConsumerQueue) at - address "pcq" has been created. The _Py_ANNOTATE_PCQ_* annotations should - be used only for FIFO queues. For non-FIFO queues use - _Py_ANNOTATE_HAPPENS_BEFORE (for put) and _Py_ANNOTATE_HAPPENS_AFTER (for - get). */ -#define _Py_ANNOTATE_PCQ_CREATE(pcq) \ - AnnotatePCQCreate(__FILE__, __LINE__, pcq) - - /* Report that the queue at address "pcq" is about to be destroyed. */ -#define _Py_ANNOTATE_PCQ_DESTROY(pcq) \ - AnnotatePCQDestroy(__FILE__, __LINE__, pcq) - - /* Report that we are about to put an element into a FIFO queue at address - "pcq". */ -#define _Py_ANNOTATE_PCQ_PUT(pcq) \ - AnnotatePCQPut(__FILE__, __LINE__, pcq) - - /* Report that we've just got an element from a FIFO queue at address "pcq". */ -#define _Py_ANNOTATE_PCQ_GET(pcq) \ - AnnotatePCQGet(__FILE__, __LINE__, pcq) - - /* ------------------------------------------------------------- - Annotations that suppress errors. It is usually better to express the - program's synchronization using the other annotations, but these can - be used when all else fails. */ - - /* Report that we may have a benign race at "pointer", with size - "sizeof(*(pointer))". "pointer" must be a non-void* pointer. Insert at the - point where "pointer" has been allocated, preferably close to the point - where the race happens. See also _Py_ANNOTATE_BENIGN_RACE_STATIC. */ -#define _Py_ANNOTATE_BENIGN_RACE(pointer, description) \ - AnnotateBenignRaceSized(__FILE__, __LINE__, pointer, \ - sizeof(*(pointer)), description) - - /* Same as _Py_ANNOTATE_BENIGN_RACE(address, description), but applies to - the memory range [address, address+size). */ -#define _Py_ANNOTATE_BENIGN_RACE_SIZED(address, size, description) \ - AnnotateBenignRaceSized(__FILE__, __LINE__, address, size, description) - - /* Request the analysis tool to ignore all reads in the current thread - until _Py_ANNOTATE_IGNORE_READS_END is called. - Useful to ignore intentional racey reads, while still checking - other reads and all writes. - See also _Py_ANNOTATE_UNPROTECTED_READ. */ -#define _Py_ANNOTATE_IGNORE_READS_BEGIN() \ - AnnotateIgnoreReadsBegin(__FILE__, __LINE__) - - /* Stop ignoring reads. */ -#define _Py_ANNOTATE_IGNORE_READS_END() \ - AnnotateIgnoreReadsEnd(__FILE__, __LINE__) - - /* Similar to _Py_ANNOTATE_IGNORE_READS_BEGIN, but ignore writes. */ -#define _Py_ANNOTATE_IGNORE_WRITES_BEGIN() \ - AnnotateIgnoreWritesBegin(__FILE__, __LINE__) - - /* Stop ignoring writes. */ -#define _Py_ANNOTATE_IGNORE_WRITES_END() \ - AnnotateIgnoreWritesEnd(__FILE__, __LINE__) - - /* Start ignoring all memory accesses (reads and writes). */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_BEGIN() \ - do {\ - _Py_ANNOTATE_IGNORE_READS_BEGIN();\ - _Py_ANNOTATE_IGNORE_WRITES_BEGIN();\ - }while(0)\ - - /* Stop ignoring all memory accesses. */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_END() \ - do {\ - _Py_ANNOTATE_IGNORE_WRITES_END();\ - _Py_ANNOTATE_IGNORE_READS_END();\ - }while(0)\ - - /* Similar to _Py_ANNOTATE_IGNORE_READS_BEGIN, but ignore synchronization events: - RWLOCK* and CONDVAR*. */ -#define _Py_ANNOTATE_IGNORE_SYNC_BEGIN() \ - AnnotateIgnoreSyncBegin(__FILE__, __LINE__) - - /* Stop ignoring sync events. */ -#define _Py_ANNOTATE_IGNORE_SYNC_END() \ - AnnotateIgnoreSyncEnd(__FILE__, __LINE__) - - - /* Enable (enable!=0) or disable (enable==0) race detection for all threads. - This annotation could be useful if you want to skip expensive race analysis - during some period of program execution, e.g. during initialization. */ -#define _Py_ANNOTATE_ENABLE_RACE_DETECTION(enable) \ - AnnotateEnableRaceDetection(__FILE__, __LINE__, enable) - - /* ------------------------------------------------------------- - Annotations useful for debugging. */ - - /* Request to trace every access to "address". */ -#define _Py_ANNOTATE_TRACE_MEMORY(address) \ - AnnotateTraceMemory(__FILE__, __LINE__, address) - - /* Report the current thread name to a race detector. */ -#define _Py_ANNOTATE_THREAD_NAME(name) \ - AnnotateThreadName(__FILE__, __LINE__, name) - - /* ------------------------------------------------------------- - Annotations useful when implementing locks. They are not - normally needed by modules that merely use locks. - The "lock" argument is a pointer to the lock object. */ - - /* Report that a lock has been created at address "lock". */ -#define _Py_ANNOTATE_RWLOCK_CREATE(lock) \ - AnnotateRWLockCreate(__FILE__, __LINE__, lock) - - /* Report that the lock at address "lock" is about to be destroyed. */ -#define _Py_ANNOTATE_RWLOCK_DESTROY(lock) \ - AnnotateRWLockDestroy(__FILE__, __LINE__, lock) - - /* Report that the lock at address "lock" has been acquired. - is_w=1 for writer lock, is_w=0 for reader lock. */ -#define _Py_ANNOTATE_RWLOCK_ACQUIRED(lock, is_w) \ - AnnotateRWLockAcquired(__FILE__, __LINE__, lock, is_w) - - /* Report that the lock at address "lock" is about to be released. */ -#define _Py_ANNOTATE_RWLOCK_RELEASED(lock, is_w) \ - AnnotateRWLockReleased(__FILE__, __LINE__, lock, is_w) - - /* ------------------------------------------------------------- - Annotations useful when implementing barriers. They are not - normally needed by modules that merely use barriers. - The "barrier" argument is a pointer to the barrier object. */ - - /* Report that the "barrier" has been initialized with initial "count". - If 'reinitialization_allowed' is true, initialization is allowed to happen - multiple times w/o calling barrier_destroy() */ -#define _Py_ANNOTATE_BARRIER_INIT(barrier, count, reinitialization_allowed) \ - AnnotateBarrierInit(__FILE__, __LINE__, barrier, count, \ - reinitialization_allowed) - - /* Report that we are about to enter barrier_wait("barrier"). */ -#define _Py_ANNOTATE_BARRIER_WAIT_BEFORE(barrier) \ - AnnotateBarrierWaitBefore(__FILE__, __LINE__, barrier) - - /* Report that we just exited barrier_wait("barrier"). */ -#define _Py_ANNOTATE_BARRIER_WAIT_AFTER(barrier) \ - AnnotateBarrierWaitAfter(__FILE__, __LINE__, barrier) - - /* Report that the "barrier" has been destroyed. */ -#define _Py_ANNOTATE_BARRIER_DESTROY(barrier) \ - AnnotateBarrierDestroy(__FILE__, __LINE__, barrier) - - /* ------------------------------------------------------------- - Annotations useful for testing race detectors. */ - - /* Report that we expect a race on the variable at "address". - Use only in unit tests for a race detector. */ -#define _Py_ANNOTATE_EXPECT_RACE(address, description) \ - AnnotateExpectRace(__FILE__, __LINE__, address, description) - - /* A no-op. Insert where you like to test the interceptors. */ -#define _Py_ANNOTATE_NO_OP(arg) \ - AnnotateNoOp(__FILE__, __LINE__, arg) - - /* Force the race detector to flush its state. The actual effect depends on - * the implementation of the detector. */ -#define _Py_ANNOTATE_FLUSH_STATE() \ - AnnotateFlushState(__FILE__, __LINE__) - - -#else /* DYNAMIC_ANNOTATIONS_ENABLED == 0 */ - -#define _Py_ANNOTATE_RWLOCK_CREATE(lock) /* empty */ -#define _Py_ANNOTATE_RWLOCK_DESTROY(lock) /* empty */ -#define _Py_ANNOTATE_RWLOCK_ACQUIRED(lock, is_w) /* empty */ -#define _Py_ANNOTATE_RWLOCK_RELEASED(lock, is_w) /* empty */ -#define _Py_ANNOTATE_BARRIER_INIT(barrier, count, reinitialization_allowed) /* */ -#define _Py_ANNOTATE_BARRIER_WAIT_BEFORE(barrier) /* empty */ -#define _Py_ANNOTATE_BARRIER_WAIT_AFTER(barrier) /* empty */ -#define _Py_ANNOTATE_BARRIER_DESTROY(barrier) /* empty */ -#define _Py_ANNOTATE_CONDVAR_LOCK_WAIT(cv, lock) /* empty */ -#define _Py_ANNOTATE_CONDVAR_WAIT(cv) /* empty */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL(cv) /* empty */ -#define _Py_ANNOTATE_CONDVAR_SIGNAL_ALL(cv) /* empty */ -#define _Py_ANNOTATE_HAPPENS_BEFORE(obj) /* empty */ -#define _Py_ANNOTATE_HAPPENS_AFTER(obj) /* empty */ -#define _Py_ANNOTATE_PUBLISH_MEMORY_RANGE(address, size) /* empty */ -#define _Py_ANNOTATE_UNPUBLISH_MEMORY_RANGE(address, size) /* empty */ -#define _Py_ANNOTATE_SWAP_MEMORY_RANGE(address, size) /* empty */ -#define _Py_ANNOTATE_PCQ_CREATE(pcq) /* empty */ -#define _Py_ANNOTATE_PCQ_DESTROY(pcq) /* empty */ -#define _Py_ANNOTATE_PCQ_PUT(pcq) /* empty */ -#define _Py_ANNOTATE_PCQ_GET(pcq) /* empty */ -#define _Py_ANNOTATE_NEW_MEMORY(address, size) /* empty */ -#define _Py_ANNOTATE_EXPECT_RACE(address, description) /* empty */ -#define _Py_ANNOTATE_BENIGN_RACE(address, description) /* empty */ -#define _Py_ANNOTATE_BENIGN_RACE_SIZED(address, size, description) /* empty */ -#define _Py_ANNOTATE_PURE_HAPPENS_BEFORE_MUTEX(mu) /* empty */ -#define _Py_ANNOTATE_MUTEX_IS_USED_AS_CONDVAR(mu) /* empty */ -#define _Py_ANNOTATE_TRACE_MEMORY(arg) /* empty */ -#define _Py_ANNOTATE_THREAD_NAME(name) /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_END() /* empty */ -#define _Py_ANNOTATE_IGNORE_WRITES_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_WRITES_END() /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_READS_AND_WRITES_END() /* empty */ -#define _Py_ANNOTATE_IGNORE_SYNC_BEGIN() /* empty */ -#define _Py_ANNOTATE_IGNORE_SYNC_END() /* empty */ -#define _Py_ANNOTATE_ENABLE_RACE_DETECTION(enable) /* empty */ -#define _Py_ANNOTATE_NO_OP(arg) /* empty */ -#define _Py_ANNOTATE_FLUSH_STATE() /* empty */ - -#endif /* DYNAMIC_ANNOTATIONS_ENABLED */ - -/* Use the macros above rather than using these functions directly. */ -#ifdef __cplusplus -extern "C" { -#endif -void AnnotateRWLockCreate(const char *file, int line, - const volatile void *lock); -void AnnotateRWLockDestroy(const char *file, int line, - const volatile void *lock); -void AnnotateRWLockAcquired(const char *file, int line, - const volatile void *lock, long is_w); -void AnnotateRWLockReleased(const char *file, int line, - const volatile void *lock, long is_w); -void AnnotateBarrierInit(const char *file, int line, - const volatile void *barrier, long count, - long reinitialization_allowed); -void AnnotateBarrierWaitBefore(const char *file, int line, - const volatile void *barrier); -void AnnotateBarrierWaitAfter(const char *file, int line, - const volatile void *barrier); -void AnnotateBarrierDestroy(const char *file, int line, - const volatile void *barrier); -void AnnotateCondVarWait(const char *file, int line, - const volatile void *cv, - const volatile void *lock); -void AnnotateCondVarSignal(const char *file, int line, - const volatile void *cv); -void AnnotateCondVarSignalAll(const char *file, int line, - const volatile void *cv); -void AnnotatePublishMemoryRange(const char *file, int line, - const volatile void *address, - long size); -void AnnotateUnpublishMemoryRange(const char *file, int line, - const volatile void *address, - long size); -void AnnotatePCQCreate(const char *file, int line, - const volatile void *pcq); -void AnnotatePCQDestroy(const char *file, int line, - const volatile void *pcq); -void AnnotatePCQPut(const char *file, int line, - const volatile void *pcq); -void AnnotatePCQGet(const char *file, int line, - const volatile void *pcq); -void AnnotateNewMemory(const char *file, int line, - const volatile void *address, - long size); -void AnnotateExpectRace(const char *file, int line, - const volatile void *address, - const char *description); -void AnnotateBenignRace(const char *file, int line, - const volatile void *address, - const char *description); -void AnnotateBenignRaceSized(const char *file, int line, - const volatile void *address, - long size, - const char *description); -void AnnotateMutexIsUsedAsCondVar(const char *file, int line, - const volatile void *mu); -void AnnotateTraceMemory(const char *file, int line, - const volatile void *arg); -void AnnotateThreadName(const char *file, int line, - const char *name); -void AnnotateIgnoreReadsBegin(const char *file, int line); -void AnnotateIgnoreReadsEnd(const char *file, int line); -void AnnotateIgnoreWritesBegin(const char *file, int line); -void AnnotateIgnoreWritesEnd(const char *file, int line); -void AnnotateEnableRaceDetection(const char *file, int line, int enable); -void AnnotateNoOp(const char *file, int line, - const volatile void *arg); -void AnnotateFlushState(const char *file, int line); - -/* Return non-zero value if running under valgrind. - - If "valgrind.h" is included into dynamic_annotations.c, - the regular valgrind mechanism will be used. - See http://valgrind.org/docs/manual/manual-core-adv.html about - RUNNING_ON_VALGRIND and other valgrind "client requests". - The file "valgrind.h" may be obtained by doing - svn co svn://svn.valgrind.org/valgrind/trunk/include - - If for some reason you can't use "valgrind.h" or want to fake valgrind, - there are two ways to make this function return non-zero: - - Use environment variable: export RUNNING_ON_VALGRIND=1 - - Make your tool intercept the function RunningOnValgrind() and - change its return value. - */ -int RunningOnValgrind(void); - -#ifdef __cplusplus -} -#endif - -#if DYNAMIC_ANNOTATIONS_ENABLED != 0 && defined(__cplusplus) - - /* _Py_ANNOTATE_UNPROTECTED_READ is the preferred way to annotate racey reads. - - Instead of doing - _Py_ANNOTATE_IGNORE_READS_BEGIN(); - ... = x; - _Py_ANNOTATE_IGNORE_READS_END(); - one can use - ... = _Py_ANNOTATE_UNPROTECTED_READ(x); */ - template - inline T _Py_ANNOTATE_UNPROTECTED_READ(const volatile T &x) { - _Py_ANNOTATE_IGNORE_READS_BEGIN(); - T res = x; - _Py_ANNOTATE_IGNORE_READS_END(); - return res; - } - /* Apply _Py_ANNOTATE_BENIGN_RACE_SIZED to a static variable. */ -#define _Py_ANNOTATE_BENIGN_RACE_STATIC(static_var, description) \ - namespace { \ - class static_var ## _annotator { \ - public: \ - static_var ## _annotator() { \ - _Py_ANNOTATE_BENIGN_RACE_SIZED(&static_var, \ - sizeof(static_var), \ - # static_var ": " description); \ - } \ - }; \ - static static_var ## _annotator the ## static_var ## _annotator;\ - } -#else /* DYNAMIC_ANNOTATIONS_ENABLED == 0 */ - -#define _Py_ANNOTATE_UNPROTECTED_READ(x) (x) -#define _Py_ANNOTATE_BENIGN_RACE_STATIC(static_var, description) /* empty */ - -#endif /* DYNAMIC_ANNOTATIONS_ENABLED */ - -#endif /* __DYNAMIC_ANNOTATIONS_H__ */ diff --git a/_Pre_Builds/_Python312_cpp/include/enumobject.h b/_Pre_Builds/_Python312_cpp/include/enumobject.h deleted file mode 100644 index c14dbfc..0000000 --- a/_Pre_Builds/_Python312_cpp/include/enumobject.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef Py_ENUMOBJECT_H -#define Py_ENUMOBJECT_H - -/* Enumerate Object */ - -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyEnum_Type; -PyAPI_DATA(PyTypeObject) PyReversed_Type; - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_ENUMOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/errcode.h b/_Pre_Builds/_Python312_cpp/include/errcode.h deleted file mode 100644 index bd9066b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/errcode.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef Py_ERRCODE_H -#define Py_ERRCODE_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Error codes passed around between file input, tokenizer, parser and - interpreter. This is necessary so we can turn them into Python - exceptions at a higher level. Note that some errors have a - slightly different meaning when passed from the tokenizer to the - parser than when passed from the parser to the interpreter; e.g. - the parser only returns E_EOF when it hits EOF immediately, and it - never returns E_OK. */ - -#define E_OK 10 /* No error */ -#define E_EOF 11 /* End Of File */ -#define E_INTR 12 /* Interrupted */ -#define E_TOKEN 13 /* Bad token */ -#define E_SYNTAX 14 /* Syntax error */ -#define E_NOMEM 15 /* Ran out of memory */ -#define E_DONE 16 /* Parsing complete */ -#define E_ERROR 17 /* Execution error */ -#define E_TABSPACE 18 /* Inconsistent mixing of tabs and spaces */ -#define E_OVERFLOW 19 /* Node had too many children */ -#define E_TOODEEP 20 /* Too many indentation levels */ -#define E_DEDENT 21 /* No matching outer block for dedent */ -#define E_DECODE 22 /* Error in decoding into Unicode */ -#define E_EOFS 23 /* EOF in triple-quoted string */ -#define E_EOLS 24 /* EOL in single-quoted string */ -#define E_LINECONT 25 /* Unexpected characters after a line continuation */ -#define E_BADSINGLE 27 /* Ill-formed single statement input */ -#define E_INTERACT_STOP 28 /* Interactive mode stopped tokenization */ -#define E_COLUMNOVERFLOW 29 /* Column offset overflow */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ERRCODE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/exports.h b/_Pre_Builds/_Python312_cpp/include/exports.h deleted file mode 100644 index 59373c3..0000000 --- a/_Pre_Builds/_Python312_cpp/include/exports.h +++ /dev/null @@ -1,36 +0,0 @@ -#ifndef Py_EXPORTS_H -#define Py_EXPORTS_H - -#if defined(_WIN32) || defined(__CYGWIN__) - #if defined(Py_ENABLE_SHARED) - #define Py_IMPORTED_SYMBOL __declspec(dllimport) - #define Py_EXPORTED_SYMBOL __declspec(dllexport) - #define Py_LOCAL_SYMBOL - #else - #define Py_IMPORTED_SYMBOL - #define Py_EXPORTED_SYMBOL - #define Py_LOCAL_SYMBOL - #endif -#else -/* - * If we only ever used gcc >= 5, we could use __has_attribute(visibility) - * as a cross-platform way to determine if visibility is supported. However, - * we may still need to support gcc >= 4, as some Ubuntu LTS and Centos versions - * have 4 < gcc < 5. - */ - #ifndef __has_attribute - #define __has_attribute(x) 0 // Compatibility with non-clang compilers. - #endif - #if (defined(__GNUC__) && (__GNUC__ >= 4)) ||\ - (defined(__clang__) && __has_attribute(visibility)) - #define Py_IMPORTED_SYMBOL __attribute__ ((visibility ("default"))) - #define Py_EXPORTED_SYMBOL __attribute__ ((visibility ("default"))) - #define Py_LOCAL_SYMBOL __attribute__ ((visibility ("hidden"))) - #else - #define Py_IMPORTED_SYMBOL - #define Py_EXPORTED_SYMBOL - #define Py_LOCAL_SYMBOL - #endif -#endif - -#endif /* Py_EXPORTS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/fileobject.h b/_Pre_Builds/_Python312_cpp/include/fileobject.h deleted file mode 100644 index 2deef54..0000000 --- a/_Pre_Builds/_Python312_cpp/include/fileobject.h +++ /dev/null @@ -1,49 +0,0 @@ -/* File object interface (what's left of it -- see io.py) */ - -#ifndef Py_FILEOBJECT_H -#define Py_FILEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#define PY_STDIOTEXTMODE "b" - -PyAPI_FUNC(PyObject *) PyFile_FromFd(int, const char *, const char *, int, - const char *, const char *, - const char *, int); -PyAPI_FUNC(PyObject *) PyFile_GetLine(PyObject *, int); -PyAPI_FUNC(int) PyFile_WriteObject(PyObject *, PyObject *, int); -PyAPI_FUNC(int) PyFile_WriteString(const char *, PyObject *); -PyAPI_FUNC(int) PyObject_AsFileDescriptor(PyObject *); - -/* The default encoding used by the platform file system APIs - If non-NULL, this is different than the default encoding for strings -*/ -Py_DEPRECATED(3.12) PyAPI_DATA(const char *) Py_FileSystemDefaultEncoding; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -Py_DEPRECATED(3.12) PyAPI_DATA(const char *) Py_FileSystemDefaultEncodeErrors; -#endif -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_HasFileSystemDefaultEncoding; - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_UTF8Mode; -#endif - -/* A routine to check if a file descriptor can be select()-ed. */ -#ifdef _MSC_VER - /* On Windows, any socket fd can be select()-ed, no matter how high */ - #define _PyIsSelectable_fd(FD) (1) -#else - #define _PyIsSelectable_fd(FD) ((unsigned int)(FD) < (unsigned int)FD_SETSIZE) -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_FILEOBJECT_H -# include "cpython/fileobject.h" -# undef Py_CPYTHON_FILEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FILEOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/fileutils.h b/_Pre_Builds/_Python312_cpp/include/fileutils.h deleted file mode 100644 index ba5acc8..0000000 --- a/_Pre_Builds/_Python312_cpp/include/fileutils.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef Py_FILEUTILS_H -#define Py_FILEUTILS_H -#ifdef __cplusplus -extern "C" { -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(wchar_t *) Py_DecodeLocale( - const char *arg, - size_t *size); - -PyAPI_FUNC(char*) Py_EncodeLocale( - const wchar_t *text, - size_t *error_pos); -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_FILEUTILS_H -# include "cpython/fileutils.h" -# undef Py_CPYTHON_FILEUTILS_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FILEUTILS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/floatobject.h b/_Pre_Builds/_Python312_cpp/include/floatobject.h deleted file mode 100644 index 999441a..0000000 --- a/_Pre_Builds/_Python312_cpp/include/floatobject.h +++ /dev/null @@ -1,54 +0,0 @@ - -/* Float object interface */ - -/* -PyFloatObject represents a (double precision) floating point number. -*/ - -#ifndef Py_FLOATOBJECT_H -#define Py_FLOATOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyFloat_Type; - -#define PyFloat_Check(op) PyObject_TypeCheck(op, &PyFloat_Type) -#define PyFloat_CheckExact(op) Py_IS_TYPE((op), &PyFloat_Type) - -#define Py_RETURN_NAN return PyFloat_FromDouble(Py_NAN) - -#define Py_RETURN_INF(sign) \ - do { \ - if (copysign(1., sign) == 1.) { \ - return PyFloat_FromDouble(Py_HUGE_VAL); \ - } \ - else { \ - return PyFloat_FromDouble(-Py_HUGE_VAL); \ - } \ - } while(0) - -PyAPI_FUNC(double) PyFloat_GetMax(void); -PyAPI_FUNC(double) PyFloat_GetMin(void); -PyAPI_FUNC(PyObject*) PyFloat_GetInfo(void); - -/* Return Python float from string PyObject. */ -PyAPI_FUNC(PyObject*) PyFloat_FromString(PyObject*); - -/* Return Python float from C double. */ -PyAPI_FUNC(PyObject*) PyFloat_FromDouble(double); - -/* Extract C double from Python float. The macro version trades safety for - speed. */ -PyAPI_FUNC(double) PyFloat_AsDouble(PyObject*); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_FLOATOBJECT_H -# include "cpython/floatobject.h" -# undef Py_CPYTHON_FLOATOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FLOATOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/frameobject.h b/_Pre_Builds/_Python312_cpp/include/frameobject.h deleted file mode 100644 index adb628f..0000000 --- a/_Pre_Builds/_Python312_cpp/include/frameobject.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Frame object interface */ - -#ifndef Py_FRAMEOBJECT_H -#define Py_FRAMEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#include "pyframe.h" - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_FRAMEOBJECT_H -# include "cpython/frameobject.h" -# undef Py_CPYTHON_FRAMEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_FRAMEOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/genericaliasobject.h b/_Pre_Builds/_Python312_cpp/include/genericaliasobject.h deleted file mode 100644 index cf00297..0000000 --- a/_Pre_Builds/_Python312_cpp/include/genericaliasobject.h +++ /dev/null @@ -1,14 +0,0 @@ -// Implementation of PEP 585: support list[int] etc. -#ifndef Py_GENERICALIASOBJECT_H -#define Py_GENERICALIASOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) Py_GenericAlias(PyObject *, PyObject *); -PyAPI_DATA(PyTypeObject) Py_GenericAliasType; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_GENERICALIASOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/import.h b/_Pre_Builds/_Python312_cpp/include/import.h deleted file mode 100644 index 5d5f342..0000000 --- a/_Pre_Builds/_Python312_cpp/include/import.h +++ /dev/null @@ -1,98 +0,0 @@ -/* Module definition and import interface */ - -#ifndef Py_IMPORT_H -#define Py_IMPORT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(long) PyImport_GetMagicNumber(void); -PyAPI_FUNC(const char *) PyImport_GetMagicTag(void); -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModule( - const char *name, /* UTF-8 encoded string */ - PyObject *co - ); -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleEx( - const char *name, /* UTF-8 encoded string */ - PyObject *co, - const char *pathname /* decoded from the filesystem encoding */ - ); -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleWithPathnames( - const char *name, /* UTF-8 encoded string */ - PyObject *co, - const char *pathname, /* decoded from the filesystem encoding */ - const char *cpathname /* decoded from the filesystem encoding */ - ); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleObject( - PyObject *name, - PyObject *co, - PyObject *pathname, - PyObject *cpathname - ); -#endif -PyAPI_FUNC(PyObject *) PyImport_GetModuleDict(void); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -PyAPI_FUNC(PyObject *) PyImport_GetModule(PyObject *name); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyImport_AddModuleObject( - PyObject *name - ); -#endif -PyAPI_FUNC(PyObject *) PyImport_AddModule( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyImport_ImportModule( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyImport_ImportModuleNoBlock( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyImport_ImportModuleLevel( - const char *name, /* UTF-8 encoded string */ - PyObject *globals, - PyObject *locals, - PyObject *fromlist, - int level - ); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(PyObject *) PyImport_ImportModuleLevelObject( - PyObject *name, - PyObject *globals, - PyObject *locals, - PyObject *fromlist, - int level - ); -#endif - -#define PyImport_ImportModuleEx(n, g, l, f) \ - PyImport_ImportModuleLevel((n), (g), (l), (f), 0) - -PyAPI_FUNC(PyObject *) PyImport_GetImporter(PyObject *path); -PyAPI_FUNC(PyObject *) PyImport_Import(PyObject *name); -PyAPI_FUNC(PyObject *) PyImport_ReloadModule(PyObject *m); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(int) PyImport_ImportFrozenModuleObject( - PyObject *name - ); -#endif -PyAPI_FUNC(int) PyImport_ImportFrozenModule( - const char *name /* UTF-8 encoded string */ - ); - -PyAPI_FUNC(int) PyImport_AppendInittab( - const char *name, /* ASCII encoded string */ - PyObject* (*initfunc)(void) - ); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_IMPORT_H -# include "cpython/import.h" -# undef Py_CPYTHON_IMPORT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_IMPORT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_abstract.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_abstract.h deleted file mode 100644 index b1afb2d..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_abstract.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef Py_INTERNAL_ABSTRACT_H -#define Py_INTERNAL_ABSTRACT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -// Fast inlined version of PyIndex_Check() -static inline int -_PyIndex_Check(PyObject *obj) -{ - PyNumberMethods *tp_as_number = Py_TYPE(obj)->tp_as_number; - return (tp_as_number != NULL && tp_as_number->nb_index != NULL); -} - -PyObject *_PyNumber_PowerNoMod(PyObject *lhs, PyObject *rhs); -PyObject *_PyNumber_InPlacePowerNoMod(PyObject *lhs, PyObject *rhs); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_ABSTRACT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_asdl.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_asdl.h deleted file mode 100644 index afeada8..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_asdl.h +++ /dev/null @@ -1,112 +0,0 @@ -#ifndef Py_INTERNAL_ASDL_H -#define Py_INTERNAL_ASDL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_pyarena.h" // _PyArena_Malloc() - -typedef PyObject * identifier; -typedef PyObject * string; -typedef PyObject * object; -typedef PyObject * constant; - -/* It would be nice if the code generated by asdl_c.py was completely - independent of Python, but it is a goal the requires too much work - at this stage. So, for example, I'll represent identifiers as - interned Python strings. -*/ - -#define _ASDL_SEQ_HEAD \ - Py_ssize_t size; \ - void **elements; - -typedef struct { - _ASDL_SEQ_HEAD -} asdl_seq; - -typedef struct { - _ASDL_SEQ_HEAD - void *typed_elements[1]; -} asdl_generic_seq; - -typedef struct { - _ASDL_SEQ_HEAD - PyObject *typed_elements[1]; -} asdl_identifier_seq; - -typedef struct { - _ASDL_SEQ_HEAD - int typed_elements[1]; -} asdl_int_seq; - -asdl_generic_seq *_Py_asdl_generic_seq_new(Py_ssize_t size, PyArena *arena); -asdl_identifier_seq *_Py_asdl_identifier_seq_new(Py_ssize_t size, PyArena *arena); -asdl_int_seq *_Py_asdl_int_seq_new(Py_ssize_t size, PyArena *arena); - - -#define GENERATE_ASDL_SEQ_CONSTRUCTOR(NAME, TYPE) \ -asdl_ ## NAME ## _seq *_Py_asdl_ ## NAME ## _seq_new(Py_ssize_t size, PyArena *arena) \ -{ \ - asdl_ ## NAME ## _seq *seq = NULL; \ - size_t n; \ - /* check size is sane */ \ - if (size < 0 || \ - (size && (((size_t)size - 1) > (SIZE_MAX / sizeof(void *))))) { \ - PyErr_NoMemory(); \ - return NULL; \ - } \ - n = (size ? (sizeof(TYPE *) * (size - 1)) : 0); \ - /* check if size can be added safely */ \ - if (n > SIZE_MAX - sizeof(asdl_ ## NAME ## _seq)) { \ - PyErr_NoMemory(); \ - return NULL; \ - } \ - n += sizeof(asdl_ ## NAME ## _seq); \ - seq = (asdl_ ## NAME ## _seq *)_PyArena_Malloc(arena, n); \ - if (!seq) { \ - PyErr_NoMemory(); \ - return NULL; \ - } \ - memset(seq, 0, n); \ - seq->size = size; \ - seq->elements = (void**)seq->typed_elements; \ - return seq; \ -} - -#define asdl_seq_GET_UNTYPED(S, I) _Py_RVALUE((S)->elements[(I)]) -#define asdl_seq_GET(S, I) _Py_RVALUE((S)->typed_elements[(I)]) -#define asdl_seq_LEN(S) _Py_RVALUE(((S) == NULL ? 0 : (S)->size)) - -#ifdef Py_DEBUG -# define asdl_seq_SET(S, I, V) \ - do { \ - Py_ssize_t _asdl_i = (I); \ - assert((S) != NULL); \ - assert(0 <= _asdl_i && _asdl_i < (S)->size); \ - (S)->typed_elements[_asdl_i] = (V); \ - } while (0) -#else -# define asdl_seq_SET(S, I, V) _Py_RVALUE((S)->typed_elements[(I)] = (V)) -#endif - -#ifdef Py_DEBUG -# define asdl_seq_SET_UNTYPED(S, I, V) \ - do { \ - Py_ssize_t _asdl_i = (I); \ - assert((S) != NULL); \ - assert(0 <= _asdl_i && _asdl_i < (S)->size); \ - (S)->elements[_asdl_i] = (V); \ - } while (0) -#else -# define asdl_seq_SET_UNTYPED(S, I, V) _Py_RVALUE((S)->elements[(I)] = (V)) -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_ASDL_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_ast.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_ast.h deleted file mode 100644 index b568902..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_ast.h +++ /dev/null @@ -1,922 +0,0 @@ -// File automatically generated by Parser/asdl_c.py. - -#ifndef Py_INTERNAL_AST_H -#define Py_INTERNAL_AST_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_asdl.h" - -typedef struct _mod *mod_ty; - -typedef struct _stmt *stmt_ty; - -typedef struct _expr *expr_ty; - -typedef enum _expr_context { Load=1, Store=2, Del=3 } expr_context_ty; - -typedef enum _boolop { And=1, Or=2 } boolop_ty; - -typedef enum _operator { Add=1, Sub=2, Mult=3, MatMult=4, Div=5, Mod=6, Pow=7, - LShift=8, RShift=9, BitOr=10, BitXor=11, BitAnd=12, - FloorDiv=13 } operator_ty; - -typedef enum _unaryop { Invert=1, Not=2, UAdd=3, USub=4 } unaryop_ty; - -typedef enum _cmpop { Eq=1, NotEq=2, Lt=3, LtE=4, Gt=5, GtE=6, Is=7, IsNot=8, - In=9, NotIn=10 } cmpop_ty; - -typedef struct _comprehension *comprehension_ty; - -typedef struct _excepthandler *excepthandler_ty; - -typedef struct _arguments *arguments_ty; - -typedef struct _arg *arg_ty; - -typedef struct _keyword *keyword_ty; - -typedef struct _alias *alias_ty; - -typedef struct _withitem *withitem_ty; - -typedef struct _match_case *match_case_ty; - -typedef struct _pattern *pattern_ty; - -typedef struct _type_ignore *type_ignore_ty; - -typedef struct _type_param *type_param_ty; - - -typedef struct { - _ASDL_SEQ_HEAD - mod_ty typed_elements[1]; -} asdl_mod_seq; - -asdl_mod_seq *_Py_asdl_mod_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - stmt_ty typed_elements[1]; -} asdl_stmt_seq; - -asdl_stmt_seq *_Py_asdl_stmt_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - expr_ty typed_elements[1]; -} asdl_expr_seq; - -asdl_expr_seq *_Py_asdl_expr_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - comprehension_ty typed_elements[1]; -} asdl_comprehension_seq; - -asdl_comprehension_seq *_Py_asdl_comprehension_seq_new(Py_ssize_t size, PyArena - *arena); - -typedef struct { - _ASDL_SEQ_HEAD - excepthandler_ty typed_elements[1]; -} asdl_excepthandler_seq; - -asdl_excepthandler_seq *_Py_asdl_excepthandler_seq_new(Py_ssize_t size, PyArena - *arena); - -typedef struct { - _ASDL_SEQ_HEAD - arguments_ty typed_elements[1]; -} asdl_arguments_seq; - -asdl_arguments_seq *_Py_asdl_arguments_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - arg_ty typed_elements[1]; -} asdl_arg_seq; - -asdl_arg_seq *_Py_asdl_arg_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - keyword_ty typed_elements[1]; -} asdl_keyword_seq; - -asdl_keyword_seq *_Py_asdl_keyword_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - alias_ty typed_elements[1]; -} asdl_alias_seq; - -asdl_alias_seq *_Py_asdl_alias_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - withitem_ty typed_elements[1]; -} asdl_withitem_seq; - -asdl_withitem_seq *_Py_asdl_withitem_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - match_case_ty typed_elements[1]; -} asdl_match_case_seq; - -asdl_match_case_seq *_Py_asdl_match_case_seq_new(Py_ssize_t size, PyArena - *arena); - -typedef struct { - _ASDL_SEQ_HEAD - pattern_ty typed_elements[1]; -} asdl_pattern_seq; - -asdl_pattern_seq *_Py_asdl_pattern_seq_new(Py_ssize_t size, PyArena *arena); - -typedef struct { - _ASDL_SEQ_HEAD - type_ignore_ty typed_elements[1]; -} asdl_type_ignore_seq; - -asdl_type_ignore_seq *_Py_asdl_type_ignore_seq_new(Py_ssize_t size, PyArena - *arena); - -typedef struct { - _ASDL_SEQ_HEAD - type_param_ty typed_elements[1]; -} asdl_type_param_seq; - -asdl_type_param_seq *_Py_asdl_type_param_seq_new(Py_ssize_t size, PyArena - *arena); - - -enum _mod_kind {Module_kind=1, Interactive_kind=2, Expression_kind=3, - FunctionType_kind=4}; -struct _mod { - enum _mod_kind kind; - union { - struct { - asdl_stmt_seq *body; - asdl_type_ignore_seq *type_ignores; - } Module; - - struct { - asdl_stmt_seq *body; - } Interactive; - - struct { - expr_ty body; - } Expression; - - struct { - asdl_expr_seq *argtypes; - expr_ty returns; - } FunctionType; - - } v; -}; - -enum _stmt_kind {FunctionDef_kind=1, AsyncFunctionDef_kind=2, ClassDef_kind=3, - Return_kind=4, Delete_kind=5, Assign_kind=6, - TypeAlias_kind=7, AugAssign_kind=8, AnnAssign_kind=9, - For_kind=10, AsyncFor_kind=11, While_kind=12, If_kind=13, - With_kind=14, AsyncWith_kind=15, Match_kind=16, - Raise_kind=17, Try_kind=18, TryStar_kind=19, Assert_kind=20, - Import_kind=21, ImportFrom_kind=22, Global_kind=23, - Nonlocal_kind=24, Expr_kind=25, Pass_kind=26, Break_kind=27, - Continue_kind=28}; -struct _stmt { - enum _stmt_kind kind; - union { - struct { - identifier name; - arguments_ty args; - asdl_stmt_seq *body; - asdl_expr_seq *decorator_list; - expr_ty returns; - string type_comment; - asdl_type_param_seq *type_params; - } FunctionDef; - - struct { - identifier name; - arguments_ty args; - asdl_stmt_seq *body; - asdl_expr_seq *decorator_list; - expr_ty returns; - string type_comment; - asdl_type_param_seq *type_params; - } AsyncFunctionDef; - - struct { - identifier name; - asdl_expr_seq *bases; - asdl_keyword_seq *keywords; - asdl_stmt_seq *body; - asdl_expr_seq *decorator_list; - asdl_type_param_seq *type_params; - } ClassDef; - - struct { - expr_ty value; - } Return; - - struct { - asdl_expr_seq *targets; - } Delete; - - struct { - asdl_expr_seq *targets; - expr_ty value; - string type_comment; - } Assign; - - struct { - expr_ty name; - asdl_type_param_seq *type_params; - expr_ty value; - } TypeAlias; - - struct { - expr_ty target; - operator_ty op; - expr_ty value; - } AugAssign; - - struct { - expr_ty target; - expr_ty annotation; - expr_ty value; - int simple; - } AnnAssign; - - struct { - expr_ty target; - expr_ty iter; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - string type_comment; - } For; - - struct { - expr_ty target; - expr_ty iter; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - string type_comment; - } AsyncFor; - - struct { - expr_ty test; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - } While; - - struct { - expr_ty test; - asdl_stmt_seq *body; - asdl_stmt_seq *orelse; - } If; - - struct { - asdl_withitem_seq *items; - asdl_stmt_seq *body; - string type_comment; - } With; - - struct { - asdl_withitem_seq *items; - asdl_stmt_seq *body; - string type_comment; - } AsyncWith; - - struct { - expr_ty subject; - asdl_match_case_seq *cases; - } Match; - - struct { - expr_ty exc; - expr_ty cause; - } Raise; - - struct { - asdl_stmt_seq *body; - asdl_excepthandler_seq *handlers; - asdl_stmt_seq *orelse; - asdl_stmt_seq *finalbody; - } Try; - - struct { - asdl_stmt_seq *body; - asdl_excepthandler_seq *handlers; - asdl_stmt_seq *orelse; - asdl_stmt_seq *finalbody; - } TryStar; - - struct { - expr_ty test; - expr_ty msg; - } Assert; - - struct { - asdl_alias_seq *names; - } Import; - - struct { - identifier module; - asdl_alias_seq *names; - int level; - } ImportFrom; - - struct { - asdl_identifier_seq *names; - } Global; - - struct { - asdl_identifier_seq *names; - } Nonlocal; - - struct { - expr_ty value; - } Expr; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -enum _expr_kind {BoolOp_kind=1, NamedExpr_kind=2, BinOp_kind=3, UnaryOp_kind=4, - Lambda_kind=5, IfExp_kind=6, Dict_kind=7, Set_kind=8, - ListComp_kind=9, SetComp_kind=10, DictComp_kind=11, - GeneratorExp_kind=12, Await_kind=13, Yield_kind=14, - YieldFrom_kind=15, Compare_kind=16, Call_kind=17, - FormattedValue_kind=18, JoinedStr_kind=19, Constant_kind=20, - Attribute_kind=21, Subscript_kind=22, Starred_kind=23, - Name_kind=24, List_kind=25, Tuple_kind=26, Slice_kind=27}; -struct _expr { - enum _expr_kind kind; - union { - struct { - boolop_ty op; - asdl_expr_seq *values; - } BoolOp; - - struct { - expr_ty target; - expr_ty value; - } NamedExpr; - - struct { - expr_ty left; - operator_ty op; - expr_ty right; - } BinOp; - - struct { - unaryop_ty op; - expr_ty operand; - } UnaryOp; - - struct { - arguments_ty args; - expr_ty body; - } Lambda; - - struct { - expr_ty test; - expr_ty body; - expr_ty orelse; - } IfExp; - - struct { - asdl_expr_seq *keys; - asdl_expr_seq *values; - } Dict; - - struct { - asdl_expr_seq *elts; - } Set; - - struct { - expr_ty elt; - asdl_comprehension_seq *generators; - } ListComp; - - struct { - expr_ty elt; - asdl_comprehension_seq *generators; - } SetComp; - - struct { - expr_ty key; - expr_ty value; - asdl_comprehension_seq *generators; - } DictComp; - - struct { - expr_ty elt; - asdl_comprehension_seq *generators; - } GeneratorExp; - - struct { - expr_ty value; - } Await; - - struct { - expr_ty value; - } Yield; - - struct { - expr_ty value; - } YieldFrom; - - struct { - expr_ty left; - asdl_int_seq *ops; - asdl_expr_seq *comparators; - } Compare; - - struct { - expr_ty func; - asdl_expr_seq *args; - asdl_keyword_seq *keywords; - } Call; - - struct { - expr_ty value; - int conversion; - expr_ty format_spec; - } FormattedValue; - - struct { - asdl_expr_seq *values; - } JoinedStr; - - struct { - constant value; - string kind; - } Constant; - - struct { - expr_ty value; - identifier attr; - expr_context_ty ctx; - } Attribute; - - struct { - expr_ty value; - expr_ty slice; - expr_context_ty ctx; - } Subscript; - - struct { - expr_ty value; - expr_context_ty ctx; - } Starred; - - struct { - identifier id; - expr_context_ty ctx; - } Name; - - struct { - asdl_expr_seq *elts; - expr_context_ty ctx; - } List; - - struct { - asdl_expr_seq *elts; - expr_context_ty ctx; - } Tuple; - - struct { - expr_ty lower; - expr_ty upper; - expr_ty step; - } Slice; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _comprehension { - expr_ty target; - expr_ty iter; - asdl_expr_seq *ifs; - int is_async; -}; - -enum _excepthandler_kind {ExceptHandler_kind=1}; -struct _excepthandler { - enum _excepthandler_kind kind; - union { - struct { - expr_ty type; - identifier name; - asdl_stmt_seq *body; - } ExceptHandler; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _arguments { - asdl_arg_seq *posonlyargs; - asdl_arg_seq *args; - arg_ty vararg; - asdl_arg_seq *kwonlyargs; - asdl_expr_seq *kw_defaults; - arg_ty kwarg; - asdl_expr_seq *defaults; -}; - -struct _arg { - identifier arg; - expr_ty annotation; - string type_comment; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _keyword { - identifier arg; - expr_ty value; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _alias { - identifier name; - identifier asname; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -struct _withitem { - expr_ty context_expr; - expr_ty optional_vars; -}; - -struct _match_case { - pattern_ty pattern; - expr_ty guard; - asdl_stmt_seq *body; -}; - -enum _pattern_kind {MatchValue_kind=1, MatchSingleton_kind=2, - MatchSequence_kind=3, MatchMapping_kind=4, - MatchClass_kind=5, MatchStar_kind=6, MatchAs_kind=7, - MatchOr_kind=8}; -struct _pattern { - enum _pattern_kind kind; - union { - struct { - expr_ty value; - } MatchValue; - - struct { - constant value; - } MatchSingleton; - - struct { - asdl_pattern_seq *patterns; - } MatchSequence; - - struct { - asdl_expr_seq *keys; - asdl_pattern_seq *patterns; - identifier rest; - } MatchMapping; - - struct { - expr_ty cls; - asdl_pattern_seq *patterns; - asdl_identifier_seq *kwd_attrs; - asdl_pattern_seq *kwd_patterns; - } MatchClass; - - struct { - identifier name; - } MatchStar; - - struct { - pattern_ty pattern; - identifier name; - } MatchAs; - - struct { - asdl_pattern_seq *patterns; - } MatchOr; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - -enum _type_ignore_kind {TypeIgnore_kind=1}; -struct _type_ignore { - enum _type_ignore_kind kind; - union { - struct { - int lineno; - string tag; - } TypeIgnore; - - } v; -}; - -enum _type_param_kind {TypeVar_kind=1, ParamSpec_kind=2, TypeVarTuple_kind=3}; -struct _type_param { - enum _type_param_kind kind; - union { - struct { - identifier name; - expr_ty bound; - } TypeVar; - - struct { - identifier name; - } ParamSpec; - - struct { - identifier name; - } TypeVarTuple; - - } v; - int lineno; - int col_offset; - int end_lineno; - int end_col_offset; -}; - - -// Note: these macros affect function definitions, not only call sites. -mod_ty _PyAST_Module(asdl_stmt_seq * body, asdl_type_ignore_seq * type_ignores, - PyArena *arena); -mod_ty _PyAST_Interactive(asdl_stmt_seq * body, PyArena *arena); -mod_ty _PyAST_Expression(expr_ty body, PyArena *arena); -mod_ty _PyAST_FunctionType(asdl_expr_seq * argtypes, expr_ty returns, PyArena - *arena); -stmt_ty _PyAST_FunctionDef(identifier name, arguments_ty args, asdl_stmt_seq * - body, asdl_expr_seq * decorator_list, expr_ty - returns, string type_comment, asdl_type_param_seq * - type_params, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_AsyncFunctionDef(identifier name, arguments_ty args, - asdl_stmt_seq * body, asdl_expr_seq * - decorator_list, expr_ty returns, string - type_comment, asdl_type_param_seq * - type_params, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_ClassDef(identifier name, asdl_expr_seq * bases, - asdl_keyword_seq * keywords, asdl_stmt_seq * body, - asdl_expr_seq * decorator_list, asdl_type_param_seq * - type_params, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Return(expr_ty value, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Delete(asdl_expr_seq * targets, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Assign(asdl_expr_seq * targets, expr_ty value, string - type_comment, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_TypeAlias(expr_ty name, asdl_type_param_seq * type_params, - expr_ty value, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_AugAssign(expr_ty target, operator_ty op, expr_ty value, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_AnnAssign(expr_ty target, expr_ty annotation, expr_ty value, int - simple, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_For(expr_ty target, expr_ty iter, asdl_stmt_seq * body, - asdl_stmt_seq * orelse, string type_comment, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -stmt_ty _PyAST_AsyncFor(expr_ty target, expr_ty iter, asdl_stmt_seq * body, - asdl_stmt_seq * orelse, string type_comment, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_While(expr_ty test, asdl_stmt_seq * body, asdl_stmt_seq * - orelse, int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_If(expr_ty test, asdl_stmt_seq * body, asdl_stmt_seq * orelse, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_With(asdl_withitem_seq * items, asdl_stmt_seq * body, string - type_comment, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_AsyncWith(asdl_withitem_seq * items, asdl_stmt_seq * body, - string type_comment, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Match(expr_ty subject, asdl_match_case_seq * cases, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -stmt_ty _PyAST_Raise(expr_ty exc, expr_ty cause, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Try(asdl_stmt_seq * body, asdl_excepthandler_seq * handlers, - asdl_stmt_seq * orelse, asdl_stmt_seq * finalbody, int - lineno, int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -stmt_ty _PyAST_TryStar(asdl_stmt_seq * body, asdl_excepthandler_seq * handlers, - asdl_stmt_seq * orelse, asdl_stmt_seq * finalbody, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_Assert(expr_ty test, expr_ty msg, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Import(asdl_alias_seq * names, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_ImportFrom(identifier module, asdl_alias_seq * names, int level, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_Global(asdl_identifier_seq * names, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Nonlocal(asdl_identifier_seq * names, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -stmt_ty _PyAST_Expr(expr_ty value, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -stmt_ty _PyAST_Pass(int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_Break(int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -stmt_ty _PyAST_Continue(int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_BoolOp(boolop_ty op, asdl_expr_seq * values, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_NamedExpr(expr_ty target, expr_ty value, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -expr_ty _PyAST_BinOp(expr_ty left, operator_ty op, expr_ty right, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -expr_ty _PyAST_UnaryOp(unaryop_ty op, expr_ty operand, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Lambda(arguments_ty args, expr_ty body, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_IfExp(expr_ty test, expr_ty body, expr_ty orelse, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -expr_ty _PyAST_Dict(asdl_expr_seq * keys, asdl_expr_seq * values, int lineno, - int col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Set(asdl_expr_seq * elts, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_ListComp(expr_ty elt, asdl_comprehension_seq * generators, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_SetComp(expr_ty elt, asdl_comprehension_seq * generators, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_DictComp(expr_ty key, expr_ty value, asdl_comprehension_seq * - generators, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_GeneratorExp(expr_ty elt, asdl_comprehension_seq * generators, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_Await(expr_ty value, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_Yield(expr_ty value, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_YieldFrom(expr_ty value, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_Compare(expr_ty left, asdl_int_seq * ops, asdl_expr_seq * - comparators, int lineno, int col_offset, int end_lineno, - int end_col_offset, PyArena *arena); -expr_ty _PyAST_Call(expr_ty func, asdl_expr_seq * args, asdl_keyword_seq * - keywords, int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_FormattedValue(expr_ty value, int conversion, expr_ty - format_spec, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_JoinedStr(asdl_expr_seq * values, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena *arena); -expr_ty _PyAST_Constant(constant value, string kind, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Attribute(expr_ty value, identifier attr, expr_context_ty ctx, - int lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_Subscript(expr_ty value, expr_ty slice, expr_context_ty ctx, int - lineno, int col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -expr_ty _PyAST_Starred(expr_ty value, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Name(identifier id, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_List(asdl_expr_seq * elts, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Tuple(asdl_expr_seq * elts, expr_context_ty ctx, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -expr_ty _PyAST_Slice(expr_ty lower, expr_ty upper, expr_ty step, int lineno, - int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -comprehension_ty _PyAST_comprehension(expr_ty target, expr_ty iter, - asdl_expr_seq * ifs, int is_async, - PyArena *arena); -excepthandler_ty _PyAST_ExceptHandler(expr_ty type, identifier name, - asdl_stmt_seq * body, int lineno, int - col_offset, int end_lineno, int - end_col_offset, PyArena *arena); -arguments_ty _PyAST_arguments(asdl_arg_seq * posonlyargs, asdl_arg_seq * args, - arg_ty vararg, asdl_arg_seq * kwonlyargs, - asdl_expr_seq * kw_defaults, arg_ty kwarg, - asdl_expr_seq * defaults, PyArena *arena); -arg_ty _PyAST_arg(identifier arg, expr_ty annotation, string type_comment, int - lineno, int col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -keyword_ty _PyAST_keyword(identifier arg, expr_ty value, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -alias_ty _PyAST_alias(identifier name, identifier asname, int lineno, int - col_offset, int end_lineno, int end_col_offset, PyArena - *arena); -withitem_ty _PyAST_withitem(expr_ty context_expr, expr_ty optional_vars, - PyArena *arena); -match_case_ty _PyAST_match_case(pattern_ty pattern, expr_ty guard, - asdl_stmt_seq * body, PyArena *arena); -pattern_ty _PyAST_MatchValue(expr_ty value, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -pattern_ty _PyAST_MatchSingleton(constant value, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena - *arena); -pattern_ty _PyAST_MatchSequence(asdl_pattern_seq * patterns, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -pattern_ty _PyAST_MatchMapping(asdl_expr_seq * keys, asdl_pattern_seq * - patterns, identifier rest, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -pattern_ty _PyAST_MatchClass(expr_ty cls, asdl_pattern_seq * patterns, - asdl_identifier_seq * kwd_attrs, asdl_pattern_seq - * kwd_patterns, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -pattern_ty _PyAST_MatchStar(identifier name, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -pattern_ty _PyAST_MatchAs(pattern_ty pattern, identifier name, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -pattern_ty _PyAST_MatchOr(asdl_pattern_seq * patterns, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -type_ignore_ty _PyAST_TypeIgnore(int lineno, string tag, PyArena *arena); -type_param_ty _PyAST_TypeVar(identifier name, expr_ty bound, int lineno, int - col_offset, int end_lineno, int end_col_offset, - PyArena *arena); -type_param_ty _PyAST_ParamSpec(identifier name, int lineno, int col_offset, int - end_lineno, int end_col_offset, PyArena *arena); -type_param_ty _PyAST_TypeVarTuple(identifier name, int lineno, int col_offset, - int end_lineno, int end_col_offset, PyArena - *arena); - - -PyObject* PyAST_mod2obj(mod_ty t); -mod_ty PyAST_obj2mod(PyObject* ast, PyArena* arena, int mode); -int PyAST_Check(PyObject* obj); - -extern int _PyAST_Validate(mod_ty); - -/* _PyAST_ExprAsUnicode is defined in ast_unparse.c */ -extern PyObject* _PyAST_ExprAsUnicode(expr_ty); - -/* Return the borrowed reference to the first literal string in the - sequence of statements or NULL if it doesn't start from a literal string. - Doesn't set exception. */ -extern PyObject* _PyAST_GetDocString(asdl_stmt_seq *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_AST_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_ast_state.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_ast_state.h deleted file mode 100644 index 863c73b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_ast_state.h +++ /dev/null @@ -1,265 +0,0 @@ -// File automatically generated by Parser/asdl_c.py. - -#ifndef Py_INTERNAL_AST_STATE_H -#define Py_INTERNAL_AST_STATE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct ast_state { - int initialized; - int unused_recursion_depth; - int unused_recursion_limit; - PyObject *AST_type; - PyObject *Add_singleton; - PyObject *Add_type; - PyObject *And_singleton; - PyObject *And_type; - PyObject *AnnAssign_type; - PyObject *Assert_type; - PyObject *Assign_type; - PyObject *AsyncFor_type; - PyObject *AsyncFunctionDef_type; - PyObject *AsyncWith_type; - PyObject *Attribute_type; - PyObject *AugAssign_type; - PyObject *Await_type; - PyObject *BinOp_type; - PyObject *BitAnd_singleton; - PyObject *BitAnd_type; - PyObject *BitOr_singleton; - PyObject *BitOr_type; - PyObject *BitXor_singleton; - PyObject *BitXor_type; - PyObject *BoolOp_type; - PyObject *Break_type; - PyObject *Call_type; - PyObject *ClassDef_type; - PyObject *Compare_type; - PyObject *Constant_type; - PyObject *Continue_type; - PyObject *Del_singleton; - PyObject *Del_type; - PyObject *Delete_type; - PyObject *DictComp_type; - PyObject *Dict_type; - PyObject *Div_singleton; - PyObject *Div_type; - PyObject *Eq_singleton; - PyObject *Eq_type; - PyObject *ExceptHandler_type; - PyObject *Expr_type; - PyObject *Expression_type; - PyObject *FloorDiv_singleton; - PyObject *FloorDiv_type; - PyObject *For_type; - PyObject *FormattedValue_type; - PyObject *FunctionDef_type; - PyObject *FunctionType_type; - PyObject *GeneratorExp_type; - PyObject *Global_type; - PyObject *GtE_singleton; - PyObject *GtE_type; - PyObject *Gt_singleton; - PyObject *Gt_type; - PyObject *IfExp_type; - PyObject *If_type; - PyObject *ImportFrom_type; - PyObject *Import_type; - PyObject *In_singleton; - PyObject *In_type; - PyObject *Interactive_type; - PyObject *Invert_singleton; - PyObject *Invert_type; - PyObject *IsNot_singleton; - PyObject *IsNot_type; - PyObject *Is_singleton; - PyObject *Is_type; - PyObject *JoinedStr_type; - PyObject *LShift_singleton; - PyObject *LShift_type; - PyObject *Lambda_type; - PyObject *ListComp_type; - PyObject *List_type; - PyObject *Load_singleton; - PyObject *Load_type; - PyObject *LtE_singleton; - PyObject *LtE_type; - PyObject *Lt_singleton; - PyObject *Lt_type; - PyObject *MatMult_singleton; - PyObject *MatMult_type; - PyObject *MatchAs_type; - PyObject *MatchClass_type; - PyObject *MatchMapping_type; - PyObject *MatchOr_type; - PyObject *MatchSequence_type; - PyObject *MatchSingleton_type; - PyObject *MatchStar_type; - PyObject *MatchValue_type; - PyObject *Match_type; - PyObject *Mod_singleton; - PyObject *Mod_type; - PyObject *Module_type; - PyObject *Mult_singleton; - PyObject *Mult_type; - PyObject *Name_type; - PyObject *NamedExpr_type; - PyObject *Nonlocal_type; - PyObject *NotEq_singleton; - PyObject *NotEq_type; - PyObject *NotIn_singleton; - PyObject *NotIn_type; - PyObject *Not_singleton; - PyObject *Not_type; - PyObject *Or_singleton; - PyObject *Or_type; - PyObject *ParamSpec_type; - PyObject *Pass_type; - PyObject *Pow_singleton; - PyObject *Pow_type; - PyObject *RShift_singleton; - PyObject *RShift_type; - PyObject *Raise_type; - PyObject *Return_type; - PyObject *SetComp_type; - PyObject *Set_type; - PyObject *Slice_type; - PyObject *Starred_type; - PyObject *Store_singleton; - PyObject *Store_type; - PyObject *Sub_singleton; - PyObject *Sub_type; - PyObject *Subscript_type; - PyObject *TryStar_type; - PyObject *Try_type; - PyObject *Tuple_type; - PyObject *TypeAlias_type; - PyObject *TypeIgnore_type; - PyObject *TypeVarTuple_type; - PyObject *TypeVar_type; - PyObject *UAdd_singleton; - PyObject *UAdd_type; - PyObject *USub_singleton; - PyObject *USub_type; - PyObject *UnaryOp_type; - PyObject *While_type; - PyObject *With_type; - PyObject *YieldFrom_type; - PyObject *Yield_type; - PyObject *__dict__; - PyObject *__doc__; - PyObject *__match_args__; - PyObject *__module__; - PyObject *_attributes; - PyObject *_fields; - PyObject *alias_type; - PyObject *annotation; - PyObject *arg; - PyObject *arg_type; - PyObject *args; - PyObject *argtypes; - PyObject *arguments_type; - PyObject *asname; - PyObject *ast; - PyObject *attr; - PyObject *bases; - PyObject *body; - PyObject *boolop_type; - PyObject *bound; - PyObject *cases; - PyObject *cause; - PyObject *cls; - PyObject *cmpop_type; - PyObject *col_offset; - PyObject *comparators; - PyObject *comprehension_type; - PyObject *context_expr; - PyObject *conversion; - PyObject *ctx; - PyObject *decorator_list; - PyObject *defaults; - PyObject *elt; - PyObject *elts; - PyObject *end_col_offset; - PyObject *end_lineno; - PyObject *exc; - PyObject *excepthandler_type; - PyObject *expr_context_type; - PyObject *expr_type; - PyObject *finalbody; - PyObject *format_spec; - PyObject *func; - PyObject *generators; - PyObject *guard; - PyObject *handlers; - PyObject *id; - PyObject *ifs; - PyObject *is_async; - PyObject *items; - PyObject *iter; - PyObject *key; - PyObject *keys; - PyObject *keyword_type; - PyObject *keywords; - PyObject *kind; - PyObject *kw_defaults; - PyObject *kwarg; - PyObject *kwd_attrs; - PyObject *kwd_patterns; - PyObject *kwonlyargs; - PyObject *left; - PyObject *level; - PyObject *lineno; - PyObject *lower; - PyObject *match_case_type; - PyObject *mod_type; - PyObject *module; - PyObject *msg; - PyObject *name; - PyObject *names; - PyObject *op; - PyObject *operand; - PyObject *operator_type; - PyObject *ops; - PyObject *optional_vars; - PyObject *orelse; - PyObject *pattern; - PyObject *pattern_type; - PyObject *patterns; - PyObject *posonlyargs; - PyObject *rest; - PyObject *returns; - PyObject *right; - PyObject *simple; - PyObject *slice; - PyObject *step; - PyObject *stmt_type; - PyObject *subject; - PyObject *tag; - PyObject *target; - PyObject *targets; - PyObject *test; - PyObject *type; - PyObject *type_comment; - PyObject *type_ignore_type; - PyObject *type_ignores; - PyObject *type_param_type; - PyObject *type_params; - PyObject *unaryop_type; - PyObject *upper; - PyObject *value; - PyObject *values; - PyObject *vararg; - PyObject *withitem_type; -}; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_AST_STATE_H */ - diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_atexit.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_atexit.h deleted file mode 100644 index 63a2cd5..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_atexit.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef Py_INTERNAL_ATEXIT_H -#define Py_INTERNAL_ATEXIT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -//############### -// runtime atexit - -typedef void (*atexit_callbackfunc)(void); - -struct _atexit_runtime_state { - PyThread_type_lock mutex; -#define NEXITFUNCS 32 - atexit_callbackfunc callbacks[NEXITFUNCS]; - int ncallbacks; -}; - - -//################### -// interpreter atexit - -struct atexit_callback; -typedef struct atexit_callback { - atexit_datacallbackfunc func; - void *data; - struct atexit_callback *next; -} atexit_callback; - -typedef struct { - PyObject *func; - PyObject *args; - PyObject *kwargs; -} atexit_py_callback; - -struct atexit_state { - atexit_callback *ll_callbacks; - atexit_callback *last_ll_callback; - - // XXX The rest of the state could be moved to the atexit module state - // and a low-level callback added for it during module exec. - // For the moment we leave it here. - atexit_py_callback **callbacks; - int ncallbacks; - int callback_len; -}; - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_ATEXIT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_atomic.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_atomic.h deleted file mode 100644 index 425d69f..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_atomic.h +++ /dev/null @@ -1,557 +0,0 @@ -#ifndef Py_ATOMIC_H -#define Py_ATOMIC_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "dynamic_annotations.h" /* _Py_ANNOTATE_MEMORY_ORDER */ -#include "pyconfig.h" - -#ifdef HAVE_STD_ATOMIC -# include -#endif - - -#if defined(_MSC_VER) -#include -#if defined(_M_IX86) || defined(_M_X64) -# include -#endif -#endif - -/* This is modeled after the atomics interface from C1x, according to - * the draft at - * http://www.open-std.org/JTC1/SC22/wg14/www/docs/n1425.pdf. - * Operations and types are named the same except with a _Py_ prefix - * and have the same semantics. - * - * Beware, the implementations here are deep magic. - */ - -#if defined(HAVE_STD_ATOMIC) - -typedef enum _Py_memory_order { - _Py_memory_order_relaxed = memory_order_relaxed, - _Py_memory_order_acquire = memory_order_acquire, - _Py_memory_order_release = memory_order_release, - _Py_memory_order_acq_rel = memory_order_acq_rel, - _Py_memory_order_seq_cst = memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - atomic_uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - atomic_int _value; -} _Py_atomic_int; - -#define _Py_atomic_signal_fence(/*memory_order*/ ORDER) \ - atomic_signal_fence(ORDER) - -#define _Py_atomic_thread_fence(/*memory_order*/ ORDER) \ - atomic_thread_fence(ORDER) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - atomic_store_explicit(&((ATOMIC_VAL)->_value), NEW_VAL, ORDER) - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - atomic_load_explicit(&((ATOMIC_VAL)->_value), ORDER) - -// Use builtin atomic operations in GCC >= 4.7 and clang -#elif defined(HAVE_BUILTIN_ATOMIC) - -typedef enum _Py_memory_order { - _Py_memory_order_relaxed = __ATOMIC_RELAXED, - _Py_memory_order_acquire = __ATOMIC_ACQUIRE, - _Py_memory_order_release = __ATOMIC_RELEASE, - _Py_memory_order_acq_rel = __ATOMIC_ACQ_REL, - _Py_memory_order_seq_cst = __ATOMIC_SEQ_CST -} _Py_memory_order; - -typedef struct _Py_atomic_address { - uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - int _value; -} _Py_atomic_int; - -#define _Py_atomic_signal_fence(/*memory_order*/ ORDER) \ - __atomic_signal_fence(ORDER) - -#define _Py_atomic_thread_fence(/*memory_order*/ ORDER) \ - __atomic_thread_fence(ORDER) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - (assert((ORDER) == __ATOMIC_RELAXED \ - || (ORDER) == __ATOMIC_SEQ_CST \ - || (ORDER) == __ATOMIC_RELEASE), \ - __atomic_store_n(&((ATOMIC_VAL)->_value), NEW_VAL, ORDER)) - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - (assert((ORDER) == __ATOMIC_RELAXED \ - || (ORDER) == __ATOMIC_SEQ_CST \ - || (ORDER) == __ATOMIC_ACQUIRE \ - || (ORDER) == __ATOMIC_CONSUME), \ - __atomic_load_n(&((ATOMIC_VAL)->_value), ORDER)) - -/* Only support GCC (for expression statements) and x86 (for simple - * atomic semantics) and MSVC x86/x64/ARM */ -#elif defined(__GNUC__) && (defined(__i386__) || defined(__amd64)) -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - int _value; -} _Py_atomic_int; - - -static __inline__ void -_Py_atomic_signal_fence(_Py_memory_order order) -{ - if (order != _Py_memory_order_relaxed) - __asm__ volatile("":::"memory"); -} - -static __inline__ void -_Py_atomic_thread_fence(_Py_memory_order order) -{ - if (order != _Py_memory_order_relaxed) - __asm__ volatile("mfence":::"memory"); -} - -/* Tell the race checker about this operation's effects. */ -static __inline__ void -_Py_ANNOTATE_MEMORY_ORDER(const volatile void *address, _Py_memory_order order) -{ - (void)address; /* shut up -Wunused-parameter */ - switch(order) { - case _Py_memory_order_release: - case _Py_memory_order_acq_rel: - case _Py_memory_order_seq_cst: - _Py_ANNOTATE_HAPPENS_BEFORE(address); - break; - case _Py_memory_order_relaxed: - case _Py_memory_order_acquire: - break; - } - switch(order) { - case _Py_memory_order_acquire: - case _Py_memory_order_acq_rel: - case _Py_memory_order_seq_cst: - _Py_ANNOTATE_HAPPENS_AFTER(address); - break; - case _Py_memory_order_relaxed: - case _Py_memory_order_release: - break; - } -} - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - __extension__ ({ \ - __typeof__(ATOMIC_VAL) atomic_val = ATOMIC_VAL; \ - __typeof__(atomic_val->_value) new_val = NEW_VAL;\ - volatile __typeof__(new_val) *volatile_data = &atomic_val->_value; \ - _Py_memory_order order = ORDER; \ - _Py_ANNOTATE_MEMORY_ORDER(atomic_val, order); \ - \ - /* Perform the operation. */ \ - _Py_ANNOTATE_IGNORE_WRITES_BEGIN(); \ - switch(order) { \ - case _Py_memory_order_release: \ - _Py_atomic_signal_fence(_Py_memory_order_release); \ - /* fallthrough */ \ - case _Py_memory_order_relaxed: \ - *volatile_data = new_val; \ - break; \ - \ - case _Py_memory_order_acquire: \ - case _Py_memory_order_acq_rel: \ - case _Py_memory_order_seq_cst: \ - __asm__ volatile("xchg %0, %1" \ - : "+r"(new_val) \ - : "m"(atomic_val->_value) \ - : "memory"); \ - break; \ - } \ - _Py_ANNOTATE_IGNORE_WRITES_END(); \ - }) - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - __extension__ ({ \ - __typeof__(ATOMIC_VAL) atomic_val = ATOMIC_VAL; \ - __typeof__(atomic_val->_value) result; \ - volatile __typeof__(result) *volatile_data = &atomic_val->_value; \ - _Py_memory_order order = ORDER; \ - _Py_ANNOTATE_MEMORY_ORDER(atomic_val, order); \ - \ - /* Perform the operation. */ \ - _Py_ANNOTATE_IGNORE_READS_BEGIN(); \ - switch(order) { \ - case _Py_memory_order_release: \ - case _Py_memory_order_acq_rel: \ - case _Py_memory_order_seq_cst: \ - /* Loads on x86 are not releases by default, so need a */ \ - /* thread fence. */ \ - _Py_atomic_thread_fence(_Py_memory_order_release); \ - break; \ - default: \ - /* No fence */ \ - break; \ - } \ - result = *volatile_data; \ - switch(order) { \ - case _Py_memory_order_acquire: \ - case _Py_memory_order_acq_rel: \ - case _Py_memory_order_seq_cst: \ - /* Loads on x86 are automatically acquire operations so */ \ - /* can get by with just a compiler fence. */ \ - _Py_atomic_signal_fence(_Py_memory_order_acquire); \ - break; \ - default: \ - /* No fence */ \ - break; \ - } \ - _Py_ANNOTATE_IGNORE_READS_END(); \ - result; \ - }) - -#elif defined(_MSC_VER) -/* _Interlocked* functions provide a full memory barrier and are therefore - enough for acq_rel and seq_cst. If the HLE variants aren't available - in hardware they will fall back to a full memory barrier as well. - - This might affect performance but likely only in some very specific and - hard to measure scenario. -*/ -#if defined(_M_IX86) || defined(_M_X64) -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - volatile uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - volatile int _value; -} _Py_atomic_int; - - -#if defined(_M_X64) -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange64_HLEAcquire((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)(NEW_VAL)); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange64_HLERelease((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)(NEW_VAL)); \ - break; \ - default: \ - _InterlockedExchange64((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)(NEW_VAL)); \ - break; \ - } -#else -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) ((void)0); -#endif - -#define _Py_atomic_store_32bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange_HLEAcquire((volatile long*)&((ATOMIC_VAL)->_value), (int)(NEW_VAL)); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange_HLERelease((volatile long*)&((ATOMIC_VAL)->_value), (int)(NEW_VAL)); \ - break; \ - default: \ - _InterlockedExchange((volatile long*)&((ATOMIC_VAL)->_value), (int)(NEW_VAL)); \ - break; \ - } - -#if defined(_M_X64) -/* This has to be an intptr_t for now. - gil_created() uses -1 as a sentinel value, if this returns - a uintptr_t it will do an unsigned compare and crash -*/ -inline intptr_t _Py_atomic_load_64bit_impl(volatile uintptr_t* value, int order) { - __int64 old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_HLEAcquire((volatile __int64*)value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_HLERelease((volatile __int64*)value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange64((volatile __int64*)value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_64bit_impl((volatile uintptr_t*)&((ATOMIC_VAL)->_value), (ORDER)) - -#else -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) ((ATOMIC_VAL)->_value) -#endif - -inline int _Py_atomic_load_32bit_impl(volatile int* value, int order) { - long old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange_HLEAcquire((volatile long*)value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange_HLERelease((volatile long*)value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange((volatile long*)value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_32bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_32bit_impl((volatile int*)&((ATOMIC_VAL)->_value), (ORDER)) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - if (sizeof((ATOMIC_VAL)->_value) == 8) { \ - _Py_atomic_store_64bit((ATOMIC_VAL), NEW_VAL, ORDER) } else { \ - _Py_atomic_store_32bit((ATOMIC_VAL), NEW_VAL, ORDER) } - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - ( \ - sizeof((ATOMIC_VAL)->_value) == 8 ? \ - _Py_atomic_load_64bit((ATOMIC_VAL), ORDER) : \ - _Py_atomic_load_32bit((ATOMIC_VAL), ORDER) \ - ) -#elif defined(_M_ARM) || defined(_M_ARM64) -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - volatile uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - volatile int _value; -} _Py_atomic_int; - - -#if defined(_M_ARM64) -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange64_acq((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)NEW_VAL); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange64_rel((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)NEW_VAL); \ - break; \ - default: \ - _InterlockedExchange64((__int64 volatile*)&((ATOMIC_VAL)->_value), (__int64)NEW_VAL); \ - break; \ - } -#else -#define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) ((void)0); -#endif - -#define _Py_atomic_store_32bit(ATOMIC_VAL, NEW_VAL, ORDER) \ - switch (ORDER) { \ - case _Py_memory_order_acquire: \ - _InterlockedExchange_acq((volatile long*)&((ATOMIC_VAL)->_value), (int)NEW_VAL); \ - break; \ - case _Py_memory_order_release: \ - _InterlockedExchange_rel((volatile long*)&((ATOMIC_VAL)->_value), (int)NEW_VAL); \ - break; \ - default: \ - _InterlockedExchange((volatile long*)&((ATOMIC_VAL)->_value), (int)NEW_VAL); \ - break; \ - } - -#if defined(_M_ARM64) -/* This has to be an intptr_t for now. - gil_created() uses -1 as a sentinel value, if this returns - a uintptr_t it will do an unsigned compare and crash -*/ -inline intptr_t _Py_atomic_load_64bit_impl(volatile uintptr_t* value, int order) { - uintptr_t old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_acq(value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange64_rel(value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange64(value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_64bit_impl((volatile uintptr_t*)&((ATOMIC_VAL)->_value), (ORDER)) - -#else -#define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) ((ATOMIC_VAL)->_value) -#endif - -inline int _Py_atomic_load_32bit_impl(volatile int* value, int order) { - int old; - switch (order) { - case _Py_memory_order_acquire: - { - do { - old = *value; - } while(_InterlockedCompareExchange_acq(value, old, old) != old); - break; - } - case _Py_memory_order_release: - { - do { - old = *value; - } while(_InterlockedCompareExchange_rel(value, old, old) != old); - break; - } - case _Py_memory_order_relaxed: - old = *value; - break; - default: - { - do { - old = *value; - } while(_InterlockedCompareExchange(value, old, old) != old); - break; - } - } - return old; -} - -#define _Py_atomic_load_32bit(ATOMIC_VAL, ORDER) \ - _Py_atomic_load_32bit_impl((volatile int*)&((ATOMIC_VAL)->_value), (ORDER)) - -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - if (sizeof((ATOMIC_VAL)->_value) == 8) { \ - _Py_atomic_store_64bit((ATOMIC_VAL), (NEW_VAL), (ORDER)) } else { \ - _Py_atomic_store_32bit((ATOMIC_VAL), (NEW_VAL), (ORDER)) } - -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - ( \ - sizeof((ATOMIC_VAL)->_value) == 8 ? \ - _Py_atomic_load_64bit((ATOMIC_VAL), (ORDER)) : \ - _Py_atomic_load_32bit((ATOMIC_VAL), (ORDER)) \ - ) -#endif -#else /* !gcc x86 !_msc_ver */ -typedef enum _Py_memory_order { - _Py_memory_order_relaxed, - _Py_memory_order_acquire, - _Py_memory_order_release, - _Py_memory_order_acq_rel, - _Py_memory_order_seq_cst -} _Py_memory_order; - -typedef struct _Py_atomic_address { - uintptr_t _value; -} _Py_atomic_address; - -typedef struct _Py_atomic_int { - int _value; -} _Py_atomic_int; -/* Fall back to other compilers and processors by assuming that simple - volatile accesses are atomic. This is false, so people should port - this. */ -#define _Py_atomic_signal_fence(/*memory_order*/ ORDER) ((void)0) -#define _Py_atomic_thread_fence(/*memory_order*/ ORDER) ((void)0) -#define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ - ((ATOMIC_VAL)->_value = NEW_VAL) -#define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ - ((ATOMIC_VAL)->_value) -#endif - -/* Standardized shortcuts. */ -#define _Py_atomic_store(ATOMIC_VAL, NEW_VAL) \ - _Py_atomic_store_explicit((ATOMIC_VAL), (NEW_VAL), _Py_memory_order_seq_cst) -#define _Py_atomic_load(ATOMIC_VAL) \ - _Py_atomic_load_explicit((ATOMIC_VAL), _Py_memory_order_seq_cst) - -/* Python-local extensions */ - -#define _Py_atomic_store_relaxed(ATOMIC_VAL, NEW_VAL) \ - _Py_atomic_store_explicit((ATOMIC_VAL), (NEW_VAL), _Py_memory_order_relaxed) -#define _Py_atomic_load_relaxed(ATOMIC_VAL) \ - _Py_atomic_load_explicit((ATOMIC_VAL), _Py_memory_order_relaxed) - -#ifdef __cplusplus -} -#endif -#endif /* Py_ATOMIC_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_atomic_funcs.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_atomic_funcs.h deleted file mode 100644 index a708789..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_atomic_funcs.h +++ /dev/null @@ -1,94 +0,0 @@ -/* Atomic functions: similar to pycore_atomic.h, but don't need - to declare variables as atomic. - - Py_ssize_t type: - - * value = _Py_atomic_size_get(&var) - * _Py_atomic_size_set(&var, value) - - Use sequentially-consistent ordering (__ATOMIC_SEQ_CST memory order): - enforce total ordering with all other atomic functions. -*/ -#ifndef Py_ATOMIC_FUNC_H -#define Py_ATOMIC_FUNC_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#if defined(_MSC_VER) -# include // _InterlockedExchange() -#endif - - -// Use builtin atomic operations in GCC >= 4.7 and clang -#ifdef HAVE_BUILTIN_ATOMIC - -static inline Py_ssize_t _Py_atomic_size_get(Py_ssize_t *var) -{ - return __atomic_load_n(var, __ATOMIC_SEQ_CST); -} - -static inline void _Py_atomic_size_set(Py_ssize_t *var, Py_ssize_t value) -{ - __atomic_store_n(var, value, __ATOMIC_SEQ_CST); -} - -#elif defined(_MSC_VER) - -static inline Py_ssize_t _Py_atomic_size_get(Py_ssize_t *var) -{ -#if SIZEOF_VOID_P == 8 - Py_BUILD_ASSERT(sizeof(__int64) == sizeof(*var)); - volatile __int64 *volatile_var = (volatile __int64 *)var; - __int64 old; - do { - old = *volatile_var; - } while(_InterlockedCompareExchange64(volatile_var, old, old) != old); -#else - Py_BUILD_ASSERT(sizeof(long) == sizeof(*var)); - volatile long *volatile_var = (volatile long *)var; - long old; - do { - old = *volatile_var; - } while(_InterlockedCompareExchange(volatile_var, old, old) != old); -#endif - return old; -} - -static inline void _Py_atomic_size_set(Py_ssize_t *var, Py_ssize_t value) -{ -#if SIZEOF_VOID_P == 8 - Py_BUILD_ASSERT(sizeof(__int64) == sizeof(*var)); - volatile __int64 *volatile_var = (volatile __int64 *)var; - _InterlockedExchange64(volatile_var, value); -#else - Py_BUILD_ASSERT(sizeof(long) == sizeof(*var)); - volatile long *volatile_var = (volatile long *)var; - _InterlockedExchange(volatile_var, value); -#endif -} - -#else -// Fallback implementation using volatile - -static inline Py_ssize_t _Py_atomic_size_get(Py_ssize_t *var) -{ - volatile Py_ssize_t *volatile_var = (volatile Py_ssize_t *)var; - return *volatile_var; -} - -static inline void _Py_atomic_size_set(Py_ssize_t *var, Py_ssize_t value) -{ - volatile Py_ssize_t *volatile_var = (volatile Py_ssize_t *)var; - *volatile_var = value; -} -#endif - -#ifdef __cplusplus -} -#endif -#endif /* Py_ATOMIC_FUNC_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_bitutils.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_bitutils.h deleted file mode 100644 index e6bf61e..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_bitutils.h +++ /dev/null @@ -1,186 +0,0 @@ -/* Bit and bytes utilities. - - Bytes swap functions, reverse order of bytes: - - - _Py_bswap16(uint16_t) - - _Py_bswap32(uint32_t) - - _Py_bswap64(uint64_t) -*/ - -#ifndef Py_INTERNAL_BITUTILS_H -#define Py_INTERNAL_BITUTILS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#if defined(__GNUC__) \ - && ((__GNUC__ >= 5) || (__GNUC__ == 4) && (__GNUC_MINOR__ >= 8)) - /* __builtin_bswap16() is available since GCC 4.8, - __builtin_bswap32() is available since GCC 4.3, - __builtin_bswap64() is available since GCC 4.3. */ -# define _PY_HAVE_BUILTIN_BSWAP -#endif - -#ifdef _MSC_VER - /* Get _byteswap_ushort(), _byteswap_ulong(), _byteswap_uint64() */ -# include -#endif - -static inline uint16_t -_Py_bswap16(uint16_t word) -{ -#if defined(_PY_HAVE_BUILTIN_BSWAP) || _Py__has_builtin(__builtin_bswap16) - return __builtin_bswap16(word); -#elif defined(_MSC_VER) - Py_BUILD_ASSERT(sizeof(word) == sizeof(unsigned short)); - return _byteswap_ushort(word); -#else - // Portable implementation which doesn't rely on circular bit shift - return ( ((word & UINT16_C(0x00FF)) << 8) - | ((word & UINT16_C(0xFF00)) >> 8)); -#endif -} - -static inline uint32_t -_Py_bswap32(uint32_t word) -{ -#if defined(_PY_HAVE_BUILTIN_BSWAP) || _Py__has_builtin(__builtin_bswap32) - return __builtin_bswap32(word); -#elif defined(_MSC_VER) - Py_BUILD_ASSERT(sizeof(word) == sizeof(unsigned long)); - return _byteswap_ulong(word); -#else - // Portable implementation which doesn't rely on circular bit shift - return ( ((word & UINT32_C(0x000000FF)) << 24) - | ((word & UINT32_C(0x0000FF00)) << 8) - | ((word & UINT32_C(0x00FF0000)) >> 8) - | ((word & UINT32_C(0xFF000000)) >> 24)); -#endif -} - -static inline uint64_t -_Py_bswap64(uint64_t word) -{ -#if defined(_PY_HAVE_BUILTIN_BSWAP) || _Py__has_builtin(__builtin_bswap64) - return __builtin_bswap64(word); -#elif defined(_MSC_VER) - return _byteswap_uint64(word); -#else - // Portable implementation which doesn't rely on circular bit shift - return ( ((word & UINT64_C(0x00000000000000FF)) << 56) - | ((word & UINT64_C(0x000000000000FF00)) << 40) - | ((word & UINT64_C(0x0000000000FF0000)) << 24) - | ((word & UINT64_C(0x00000000FF000000)) << 8) - | ((word & UINT64_C(0x000000FF00000000)) >> 8) - | ((word & UINT64_C(0x0000FF0000000000)) >> 24) - | ((word & UINT64_C(0x00FF000000000000)) >> 40) - | ((word & UINT64_C(0xFF00000000000000)) >> 56)); -#endif -} - - -// Population count: count the number of 1's in 'x' -// (number of bits set to 1), also known as the hamming weight. -// -// Implementation note. CPUID is not used, to test if x86 POPCNT instruction -// can be used, to keep the implementation simple. For example, Visual Studio -// __popcnt() is not used this reason. The clang and GCC builtin function can -// use the x86 POPCNT instruction if the target architecture has SSE4a or -// newer. -static inline int -_Py_popcount32(uint32_t x) -{ -#if (defined(__clang__) || defined(__GNUC__)) - -#if SIZEOF_INT >= 4 - Py_BUILD_ASSERT(sizeof(x) <= sizeof(unsigned int)); - return __builtin_popcount(x); -#else - // The C standard guarantees that unsigned long will always be big enough - // to hold a uint32_t value without losing information. - Py_BUILD_ASSERT(sizeof(x) <= sizeof(unsigned long)); - return __builtin_popcountl(x); -#endif - -#else - // 32-bit SWAR (SIMD Within A Register) popcount - - // Binary: 0 1 0 1 ... - const uint32_t M1 = 0x55555555; - // Binary: 00 11 00 11. .. - const uint32_t M2 = 0x33333333; - // Binary: 0000 1111 0000 1111 ... - const uint32_t M4 = 0x0F0F0F0F; - - // Put count of each 2 bits into those 2 bits - x = x - ((x >> 1) & M1); - // Put count of each 4 bits into those 4 bits - x = (x & M2) + ((x >> 2) & M2); - // Put count of each 8 bits into those 8 bits - x = (x + (x >> 4)) & M4; - // Sum of the 4 byte counts. - // Take care when considering changes to the next line. Portability and - // correctness are delicate here, thanks to C's "integer promotions" (C99 - // §6.3.1.1p2). On machines where the `int` type has width greater than 32 - // bits, `x` will be promoted to an `int`, and following C's "usual - // arithmetic conversions" (C99 §6.3.1.8), the multiplication will be - // performed as a multiplication of two `unsigned int` operands. In this - // case it's critical that we cast back to `uint32_t` in order to keep only - // the least significant 32 bits. On machines where the `int` type has - // width no greater than 32, the multiplication is of two 32-bit unsigned - // integer types, and the (uint32_t) cast is a no-op. In both cases, we - // avoid the risk of undefined behaviour due to overflow of a - // multiplication of signed integer types. - return (uint32_t)(x * 0x01010101U) >> 24; -#endif -} - - -// Return the index of the most significant 1 bit in 'x'. This is the smallest -// integer k such that x < 2**k. Equivalent to floor(log2(x)) + 1 for x != 0. -static inline int -_Py_bit_length(unsigned long x) -{ -#if (defined(__clang__) || defined(__GNUC__)) - if (x != 0) { - // __builtin_clzl() is available since GCC 3.4. - // Undefined behavior for x == 0. - return (int)sizeof(unsigned long) * 8 - __builtin_clzl(x); - } - else { - return 0; - } -#elif defined(_MSC_VER) - // _BitScanReverse() is documented to search 32 bits. - Py_BUILD_ASSERT(sizeof(unsigned long) <= 4); - unsigned long msb; - if (_BitScanReverse(&msb, x)) { - return (int)msb + 1; - } - else { - return 0; - } -#else - const int BIT_LENGTH_TABLE[32] = { - 0, 1, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 - }; - int msb = 0; - while (x >= 32) { - msb += 6; - x >>= 6; - } - msb += BIT_LENGTH_TABLE[x]; - return msb; -#endif -} - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_BITUTILS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_blocks_output_buffer.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_blocks_output_buffer.h deleted file mode 100644 index 28cf6fb..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_blocks_output_buffer.h +++ /dev/null @@ -1,317 +0,0 @@ -/* - _BlocksOutputBuffer is used to maintain an output buffer - that has unpredictable size. Suitable for compression/decompression - API (bz2/lzma/zlib) that has stream->next_out and stream->avail_out: - - stream->next_out: point to the next output position. - stream->avail_out: the number of available bytes left in the buffer. - - It maintains a list of bytes object, so there is no overhead of resizing - the buffer. - - Usage: - - 1, Initialize the struct instance like this: - _BlocksOutputBuffer buffer = {.list = NULL}; - Set .list to NULL for _BlocksOutputBuffer_OnError() - - 2, Initialize the buffer use one of these functions: - _BlocksOutputBuffer_InitAndGrow() - _BlocksOutputBuffer_InitWithSize() - - 3, If (avail_out == 0), grow the buffer: - _BlocksOutputBuffer_Grow() - - 4, Get the current outputted data size: - _BlocksOutputBuffer_GetDataSize() - - 5, Finish the buffer, and return a bytes object: - _BlocksOutputBuffer_Finish() - - 6, Clean up the buffer when an error occurred: - _BlocksOutputBuffer_OnError() -*/ - -#ifndef Py_INTERNAL_BLOCKS_OUTPUT_BUFFER_H -#define Py_INTERNAL_BLOCKS_OUTPUT_BUFFER_H -#ifdef __cplusplus -extern "C" { -#endif - -#include "Python.h" - -typedef struct { - // List of bytes objects - PyObject *list; - // Number of whole allocated size - Py_ssize_t allocated; - // Max length of the buffer, negative number means unlimited length. - Py_ssize_t max_length; -} _BlocksOutputBuffer; - -static const char unable_allocate_msg[] = "Unable to allocate output buffer."; - -/* In 32-bit build, the max block size should <= INT32_MAX. */ -#define OUTPUT_BUFFER_MAX_BLOCK_SIZE (256*1024*1024) - -/* Block size sequence */ -#define KB (1024) -#define MB (1024*1024) -static const Py_ssize_t BUFFER_BLOCK_SIZE[] = - { 32*KB, 64*KB, 256*KB, 1*MB, 4*MB, 8*MB, 16*MB, 16*MB, - 32*MB, 32*MB, 32*MB, 32*MB, 64*MB, 64*MB, 128*MB, 128*MB, - OUTPUT_BUFFER_MAX_BLOCK_SIZE }; -#undef KB -#undef MB - -/* According to the block sizes defined by BUFFER_BLOCK_SIZE, the whole - allocated size growth step is: - 1 32 KB +32 KB - 2 96 KB +64 KB - 3 352 KB +256 KB - 4 1.34 MB +1 MB - 5 5.34 MB +4 MB - 6 13.34 MB +8 MB - 7 29.34 MB +16 MB - 8 45.34 MB +16 MB - 9 77.34 MB +32 MB - 10 109.34 MB +32 MB - 11 141.34 MB +32 MB - 12 173.34 MB +32 MB - 13 237.34 MB +64 MB - 14 301.34 MB +64 MB - 15 429.34 MB +128 MB - 16 557.34 MB +128 MB - 17 813.34 MB +256 MB - 18 1069.34 MB +256 MB - 19 1325.34 MB +256 MB - 20 1581.34 MB +256 MB - 21 1837.34 MB +256 MB - 22 2093.34 MB +256 MB - ... -*/ - -/* Initialize the buffer, and grow the buffer. - - max_length: Max length of the buffer, -1 for unlimited length. - - On success, return allocated size (>=0) - On failure, return -1 -*/ -static inline Py_ssize_t -_BlocksOutputBuffer_InitAndGrow(_BlocksOutputBuffer *buffer, - const Py_ssize_t max_length, - void **next_out) -{ - PyObject *b; - Py_ssize_t block_size; - - // ensure .list was set to NULL - assert(buffer->list == NULL); - - // get block size - if (0 <= max_length && max_length < BUFFER_BLOCK_SIZE[0]) { - block_size = max_length; - } else { - block_size = BUFFER_BLOCK_SIZE[0]; - } - - // the first block - b = PyBytes_FromStringAndSize(NULL, block_size); - if (b == NULL) { - return -1; - } - - // create the list - buffer->list = PyList_New(1); - if (buffer->list == NULL) { - Py_DECREF(b); - return -1; - } - PyList_SET_ITEM(buffer->list, 0, b); - - // set variables - buffer->allocated = block_size; - buffer->max_length = max_length; - - *next_out = PyBytes_AS_STRING(b); - return block_size; -} - -/* Initialize the buffer, with an initial size. - - Check block size limit in the outer wrapper function. For example, some libs - accept UINT32_MAX as the maximum block size, then init_size should <= it. - - On success, return allocated size (>=0) - On failure, return -1 -*/ -static inline Py_ssize_t -_BlocksOutputBuffer_InitWithSize(_BlocksOutputBuffer *buffer, - const Py_ssize_t init_size, - void **next_out) -{ - PyObject *b; - - // ensure .list was set to NULL - assert(buffer->list == NULL); - - // the first block - b = PyBytes_FromStringAndSize(NULL, init_size); - if (b == NULL) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return -1; - } - - // create the list - buffer->list = PyList_New(1); - if (buffer->list == NULL) { - Py_DECREF(b); - return -1; - } - PyList_SET_ITEM(buffer->list, 0, b); - - // set variables - buffer->allocated = init_size; - buffer->max_length = -1; - - *next_out = PyBytes_AS_STRING(b); - return init_size; -} - -/* Grow the buffer. The avail_out must be 0, please check it before calling. - - On success, return allocated size (>=0) - On failure, return -1 -*/ -static inline Py_ssize_t -_BlocksOutputBuffer_Grow(_BlocksOutputBuffer *buffer, - void **next_out, - const Py_ssize_t avail_out) -{ - PyObject *b; - const Py_ssize_t list_len = Py_SIZE(buffer->list); - Py_ssize_t block_size; - - // ensure no gaps in the data - if (avail_out != 0) { - PyErr_SetString(PyExc_SystemError, - "avail_out is non-zero in _BlocksOutputBuffer_Grow()."); - return -1; - } - - // get block size - if (list_len < (Py_ssize_t) Py_ARRAY_LENGTH(BUFFER_BLOCK_SIZE)) { - block_size = BUFFER_BLOCK_SIZE[list_len]; - } else { - block_size = BUFFER_BLOCK_SIZE[Py_ARRAY_LENGTH(BUFFER_BLOCK_SIZE) - 1]; - } - - // check max_length - if (buffer->max_length >= 0) { - // if (rest == 0), should not grow the buffer. - Py_ssize_t rest = buffer->max_length - buffer->allocated; - assert(rest > 0); - - // block_size of the last block - if (block_size > rest) { - block_size = rest; - } - } - - // check buffer->allocated overflow - if (block_size > PY_SSIZE_T_MAX - buffer->allocated) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return -1; - } - - // create the block - b = PyBytes_FromStringAndSize(NULL, block_size); - if (b == NULL) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return -1; - } - if (PyList_Append(buffer->list, b) < 0) { - Py_DECREF(b); - return -1; - } - Py_DECREF(b); - - // set variables - buffer->allocated += block_size; - - *next_out = PyBytes_AS_STRING(b); - return block_size; -} - -/* Return the current outputted data size. */ -static inline Py_ssize_t -_BlocksOutputBuffer_GetDataSize(_BlocksOutputBuffer *buffer, - const Py_ssize_t avail_out) -{ - return buffer->allocated - avail_out; -} - -/* Finish the buffer. - - Return a bytes object on success - Return NULL on failure -*/ -static inline PyObject * -_BlocksOutputBuffer_Finish(_BlocksOutputBuffer *buffer, - const Py_ssize_t avail_out) -{ - PyObject *result, *block; - const Py_ssize_t list_len = Py_SIZE(buffer->list); - - // fast path for single block - if ((list_len == 1 && avail_out == 0) || - (list_len == 2 && Py_SIZE(PyList_GET_ITEM(buffer->list, 1)) == avail_out)) - { - block = PyList_GET_ITEM(buffer->list, 0); - Py_INCREF(block); - - Py_CLEAR(buffer->list); - return block; - } - - // final bytes object - result = PyBytes_FromStringAndSize(NULL, buffer->allocated - avail_out); - if (result == NULL) { - PyErr_SetString(PyExc_MemoryError, unable_allocate_msg); - return NULL; - } - - // memory copy - if (list_len > 0) { - char *posi = PyBytes_AS_STRING(result); - - // blocks except the last one - Py_ssize_t i = 0; - for (; i < list_len-1; i++) { - block = PyList_GET_ITEM(buffer->list, i); - memcpy(posi, PyBytes_AS_STRING(block), Py_SIZE(block)); - posi += Py_SIZE(block); - } - // the last block - block = PyList_GET_ITEM(buffer->list, i); - memcpy(posi, PyBytes_AS_STRING(block), Py_SIZE(block) - avail_out); - } else { - assert(Py_SIZE(result) == 0); - } - - Py_CLEAR(buffer->list); - return result; -} - -/* Clean up the buffer when an error occurred. */ -static inline void -_BlocksOutputBuffer_OnError(_BlocksOutputBuffer *buffer) -{ - Py_CLEAR(buffer->list); -} - -#ifdef __cplusplus -} -#endif -#endif /* Py_INTERNAL_BLOCKS_OUTPUT_BUFFER_H */ \ No newline at end of file diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_bytes_methods.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_bytes_methods.h deleted file mode 100644 index 11e8ab2..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_bytes_methods.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_BYTES_CTYPE_H -#define Py_BYTES_CTYPE_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* - * The internal implementation behind PyBytes (bytes) and PyByteArray (bytearray) - * methods of the given names, they operate on ASCII byte strings. - */ -extern PyObject* _Py_bytes_isspace(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isalpha(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isalnum(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isascii(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isdigit(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_islower(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_isupper(const char *cptr, Py_ssize_t len); -extern PyObject* _Py_bytes_istitle(const char *cptr, Py_ssize_t len); - -/* These store their len sized answer in the given preallocated *result arg. */ -extern void _Py_bytes_lower(char *result, const char *cptr, Py_ssize_t len); -extern void _Py_bytes_upper(char *result, const char *cptr, Py_ssize_t len); -extern void _Py_bytes_title(char *result, const char *s, Py_ssize_t len); -extern void _Py_bytes_capitalize(char *result, const char *s, Py_ssize_t len); -extern void _Py_bytes_swapcase(char *result, const char *s, Py_ssize_t len); - -extern PyObject *_Py_bytes_find(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_index(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_rfind(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_rindex(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_count(const char *str, Py_ssize_t len, PyObject *args); -extern int _Py_bytes_contains(const char *str, Py_ssize_t len, PyObject *arg); -extern PyObject *_Py_bytes_startswith(const char *str, Py_ssize_t len, PyObject *args); -extern PyObject *_Py_bytes_endswith(const char *str, Py_ssize_t len, PyObject *args); - -/* The maketrans() static method. */ -extern PyObject* _Py_bytes_maketrans(Py_buffer *frm, Py_buffer *to); - -/* Shared __doc__ strings. */ -extern const char _Py_isspace__doc__[]; -extern const char _Py_isalpha__doc__[]; -extern const char _Py_isalnum__doc__[]; -extern const char _Py_isascii__doc__[]; -extern const char _Py_isdigit__doc__[]; -extern const char _Py_islower__doc__[]; -extern const char _Py_isupper__doc__[]; -extern const char _Py_istitle__doc__[]; -extern const char _Py_lower__doc__[]; -extern const char _Py_upper__doc__[]; -extern const char _Py_title__doc__[]; -extern const char _Py_capitalize__doc__[]; -extern const char _Py_swapcase__doc__[]; -extern const char _Py_count__doc__[]; -extern const char _Py_find__doc__[]; -extern const char _Py_index__doc__[]; -extern const char _Py_rfind__doc__[]; -extern const char _Py_rindex__doc__[]; -extern const char _Py_startswith__doc__[]; -extern const char _Py_endswith__doc__[]; -extern const char _Py_maketrans__doc__[]; -extern const char _Py_expandtabs__doc__[]; -extern const char _Py_ljust__doc__[]; -extern const char _Py_rjust__doc__[]; -extern const char _Py_center__doc__[]; -extern const char _Py_zfill__doc__[]; - -/* this is needed because some docs are shared from the .o, not static */ -#define PyDoc_STRVAR_shared(name,str) const char name[] = PyDoc_STR(str) - -#endif /* !Py_BYTES_CTYPE_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_bytesobject.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_bytesobject.h deleted file mode 100644 index d36fa95..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_bytesobject.h +++ /dev/null @@ -1,47 +0,0 @@ -#ifndef Py_INTERNAL_BYTESOBJECT_H -#define Py_INTERNAL_BYTESOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* Substring Search. - - Returns the index of the first occurrence of - a substring ("needle") in a larger text ("haystack"). - If the needle is not found, return -1. - If the needle is found, add offset to the index. -*/ - -PyAPI_FUNC(Py_ssize_t) -_PyBytes_Find(const char *haystack, Py_ssize_t len_haystack, - const char *needle, Py_ssize_t len_needle, - Py_ssize_t offset); - -/* Same as above, but search right-to-left */ -PyAPI_FUNC(Py_ssize_t) -_PyBytes_ReverseFind(const char *haystack, Py_ssize_t len_haystack, - const char *needle, Py_ssize_t len_needle, - Py_ssize_t offset); - - -/** Helper function to implement the repeat and inplace repeat methods on a buffer - * - * len_dest is assumed to be an integer multiple of len_src. - * If src equals dest, then assume the operation is inplace. - * - * This method repeately doubles the number of bytes copied to reduce - * the number of invocations of memcpy. - */ -PyAPI_FUNC(void) -_PyBytes_Repeat(char* dest, Py_ssize_t len_dest, - const char* src, Py_ssize_t len_src); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_BYTESOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_call.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_call.h deleted file mode 100644 index 5d9342b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_call.h +++ /dev/null @@ -1,133 +0,0 @@ -#ifndef Py_INTERNAL_CALL_H -#define Py_INTERNAL_CALL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_pystate.h" // _PyThreadState_GET() - -PyAPI_FUNC(PyObject *) _PyObject_Call_Prepend( - PyThreadState *tstate, - PyObject *callable, - PyObject *obj, - PyObject *args, - PyObject *kwargs); - -PyAPI_FUNC(PyObject *) _PyObject_FastCallDictTstate( - PyThreadState *tstate, - PyObject *callable, - PyObject *const *args, - size_t nargsf, - PyObject *kwargs); - -PyAPI_FUNC(PyObject *) _PyObject_Call( - PyThreadState *tstate, - PyObject *callable, - PyObject *args, - PyObject *kwargs); - -extern PyObject * _PyObject_CallMethodFormat( - PyThreadState *tstate, PyObject *callable, const char *format, ...); - - -// Static inline variant of public PyVectorcall_Function(). -static inline vectorcallfunc -_PyVectorcall_FunctionInline(PyObject *callable) -{ - assert(callable != NULL); - - PyTypeObject *tp = Py_TYPE(callable); - if (!PyType_HasFeature(tp, Py_TPFLAGS_HAVE_VECTORCALL)) { - return NULL; - } - assert(PyCallable_Check(callable)); - - Py_ssize_t offset = tp->tp_vectorcall_offset; - assert(offset > 0); - - vectorcallfunc ptr; - memcpy(&ptr, (char *) callable + offset, sizeof(ptr)); - return ptr; -} - - -/* Call the callable object 'callable' with the "vectorcall" calling - convention. - - args is a C array for positional arguments. - - nargsf is the number of positional arguments plus optionally the flag - PY_VECTORCALL_ARGUMENTS_OFFSET which means that the caller is allowed to - modify args[-1]. - - kwnames is a tuple of keyword names. The values of the keyword arguments - are stored in "args" after the positional arguments (note that the number - of keyword arguments does not change nargsf). kwnames can also be NULL if - there are no keyword arguments. - - keywords must only contain strings and all keys must be unique. - - Return the result on success. Raise an exception and return NULL on - error. */ -static inline PyObject * -_PyObject_VectorcallTstate(PyThreadState *tstate, PyObject *callable, - PyObject *const *args, size_t nargsf, - PyObject *kwnames) -{ - vectorcallfunc func; - PyObject *res; - - assert(kwnames == NULL || PyTuple_Check(kwnames)); - assert(args != NULL || PyVectorcall_NARGS(nargsf) == 0); - - func = _PyVectorcall_FunctionInline(callable); - if (func == NULL) { - Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); - return _PyObject_MakeTpCall(tstate, callable, args, nargs, kwnames); - } - res = func(callable, args, nargsf, kwnames); - return _Py_CheckFunctionResult(tstate, callable, res, NULL); -} - - -static inline PyObject * -_PyObject_CallNoArgsTstate(PyThreadState *tstate, PyObject *func) { - return _PyObject_VectorcallTstate(tstate, func, NULL, 0, NULL); -} - - -// Private static inline function variant of public PyObject_CallNoArgs() -static inline PyObject * -_PyObject_CallNoArgs(PyObject *func) { - EVAL_CALL_STAT_INC_IF_FUNCTION(EVAL_CALL_API, func); - PyThreadState *tstate = _PyThreadState_GET(); - return _PyObject_VectorcallTstate(tstate, func, NULL, 0, NULL); -} - - -static inline PyObject * -_PyObject_FastCallTstate(PyThreadState *tstate, PyObject *func, PyObject *const *args, Py_ssize_t nargs) -{ - EVAL_CALL_STAT_INC_IF_FUNCTION(EVAL_CALL_API, func); - return _PyObject_VectorcallTstate(tstate, func, args, (size_t)nargs, NULL); -} - -PyObject *const * -_PyStack_UnpackDict(PyThreadState *tstate, - PyObject *const *args, Py_ssize_t nargs, - PyObject *kwargs, PyObject **p_kwnames); - -void -_PyStack_UnpackDict_Free(PyObject *const *stack, Py_ssize_t nargs, - PyObject *kwnames); - -void _PyStack_UnpackDict_FreeNoDecRef(PyObject *const *stack, PyObject *kwnames); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CALL_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_ceval.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_ceval.h deleted file mode 100644 index 921b1cf..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_ceval.h +++ /dev/null @@ -1,164 +0,0 @@ -#ifndef Py_INTERNAL_CEVAL_H -#define Py_INTERNAL_CEVAL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Forward declarations */ -struct pyruntimestate; -struct _ceval_runtime_state; - -#ifndef Py_DEFAULT_RECURSION_LIMIT -# define Py_DEFAULT_RECURSION_LIMIT 1000 -#endif - -#include "pycore_interp.h" // PyInterpreterState.eval_frame -#include "pycore_pystate.h" // _PyThreadState_GET() - - -extern void _Py_FinishPendingCalls(PyThreadState *tstate); -extern void _PyEval_InitState(PyInterpreterState *, PyThread_type_lock); -extern void _PyEval_FiniState(struct _ceval_state *ceval); -PyAPI_FUNC(void) _PyEval_SignalReceived(PyInterpreterState *interp); -PyAPI_FUNC(int) _PyEval_AddPendingCall( - PyInterpreterState *interp, - int (*func)(void *), - void *arg, - int mainthreadonly); -PyAPI_FUNC(void) _PyEval_SignalAsyncExc(PyInterpreterState *interp); -#ifdef HAVE_FORK -extern PyStatus _PyEval_ReInitThreads(PyThreadState *tstate); -#endif - -// Used by sys.call_tracing() -extern PyObject* _PyEval_CallTracing(PyObject *func, PyObject *args); - -// Used by sys.get_asyncgen_hooks() -extern PyObject* _PyEval_GetAsyncGenFirstiter(void); -extern PyObject* _PyEval_GetAsyncGenFinalizer(void); - -// Used by sys.set_asyncgen_hooks() -extern int _PyEval_SetAsyncGenFirstiter(PyObject *); -extern int _PyEval_SetAsyncGenFinalizer(PyObject *); - -// Used by sys.get_coroutine_origin_tracking_depth() -// and sys.set_coroutine_origin_tracking_depth() -extern int _PyEval_GetCoroutineOriginTrackingDepth(void); -extern int _PyEval_SetCoroutineOriginTrackingDepth(int depth); - -extern void _PyEval_Fini(void); - - -extern PyObject* _PyEval_GetBuiltins(PyThreadState *tstate); -extern PyObject* _PyEval_BuiltinsFromGlobals( - PyThreadState *tstate, - PyObject *globals); - -// Trampoline API - -typedef struct { - // Callback to initialize the trampoline state - void* (*init_state)(void); - // Callback to register every trampoline being created - void (*write_state)(void* state, const void *code_addr, - unsigned int code_size, PyCodeObject* code); - // Callback to free the trampoline state - int (*free_state)(void* state); -} _PyPerf_Callbacks; - -extern int _PyPerfTrampoline_SetCallbacks(_PyPerf_Callbacks *); -extern void _PyPerfTrampoline_GetCallbacks(_PyPerf_Callbacks *); -extern int _PyPerfTrampoline_Init(int activate); -extern int _PyPerfTrampoline_Fini(void); -extern void _PyPerfTrampoline_FreeArenas(void); -extern int _PyIsPerfTrampolineActive(void); -extern PyStatus _PyPerfTrampoline_AfterFork_Child(void); -#ifdef PY_HAVE_PERF_TRAMPOLINE -extern _PyPerf_Callbacks _Py_perfmap_callbacks; -#endif - -static inline PyObject* -_PyEval_EvalFrame(PyThreadState *tstate, struct _PyInterpreterFrame *frame, int throwflag) -{ - EVAL_CALL_STAT_INC(EVAL_CALL_TOTAL); - if (tstate->interp->eval_frame == NULL) { - return _PyEval_EvalFrameDefault(tstate, frame, throwflag); - } - return tstate->interp->eval_frame(tstate, frame, throwflag); -} - -extern PyObject* -_PyEval_Vector(PyThreadState *tstate, - PyFunctionObject *func, PyObject *locals, - PyObject* const* args, size_t argcount, - PyObject *kwnames); - -extern int _PyEval_ThreadsInitialized(void); -extern PyStatus _PyEval_InitGIL(PyThreadState *tstate, int own_gil); -extern void _PyEval_FiniGIL(PyInterpreterState *interp); - -extern void _PyEval_AcquireLock(PyThreadState *tstate); -extern void _PyEval_ReleaseLock(PyInterpreterState *, PyThreadState *); -extern PyThreadState * _PyThreadState_SwapNoGIL(PyThreadState *); - -extern void _PyEval_DeactivateOpCache(void); - - -/* --- _Py_EnterRecursiveCall() ----------------------------------------- */ - -#ifdef USE_STACKCHECK -/* With USE_STACKCHECK macro defined, trigger stack checks in - _Py_CheckRecursiveCall() on every 64th call to _Py_EnterRecursiveCall. */ -static inline int _Py_MakeRecCheck(PyThreadState *tstate) { - return (tstate->c_recursion_remaining-- <= 0 - || (tstate->c_recursion_remaining & 63) == 0); -} -#else -static inline int _Py_MakeRecCheck(PyThreadState *tstate) { - return tstate->c_recursion_remaining-- <= 0; -} -#endif - -PyAPI_FUNC(int) _Py_CheckRecursiveCall( - PyThreadState *tstate, - const char *where); - -int _Py_CheckRecursiveCallPy( - PyThreadState *tstate); - -static inline int _Py_EnterRecursiveCallTstate(PyThreadState *tstate, - const char *where) { - return (_Py_MakeRecCheck(tstate) && _Py_CheckRecursiveCall(tstate, where)); -} - -static inline int _Py_EnterRecursiveCall(const char *where) { - PyThreadState *tstate = _PyThreadState_GET(); - return _Py_EnterRecursiveCallTstate(tstate, where); -} - -static inline void _Py_LeaveRecursiveCallTstate(PyThreadState *tstate) { - tstate->c_recursion_remaining++; -} - -static inline void _Py_LeaveRecursiveCall(void) { - PyThreadState *tstate = _PyThreadState_GET(); - _Py_LeaveRecursiveCallTstate(tstate); -} - -extern struct _PyInterpreterFrame* _PyEval_GetFrame(void); - -extern PyObject* _Py_MakeCoro(PyFunctionObject *func); - -extern int _Py_HandlePending(PyThreadState *tstate); - -extern PyObject * _PyEval_GetFrameLocals(void); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CEVAL_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_ceval_state.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_ceval_state.h deleted file mode 100644 index e56e43c..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_ceval_state.h +++ /dev/null @@ -1,103 +0,0 @@ -#ifndef Py_INTERNAL_CEVAL_STATE_H -#define Py_INTERNAL_CEVAL_STATE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -#include "pycore_atomic.h" /* _Py_atomic_address */ -#include "pycore_gil.h" // struct _gil_runtime_state - - -struct _pending_calls { - int busy; - PyThread_type_lock lock; - /* Request for running pending calls. */ - _Py_atomic_int calls_to_do; - /* Request for looking at the `async_exc` field of the current - thread state. - Guarded by the GIL. */ - int async_exc; -#define NPENDINGCALLS 32 - struct _pending_call { - int (*func)(void *); - void *arg; - } calls[NPENDINGCALLS]; - int first; - int last; -}; - -typedef enum { - PERF_STATUS_FAILED = -1, // Perf trampoline is in an invalid state - PERF_STATUS_NO_INIT = 0, // Perf trampoline is not initialized - PERF_STATUS_OK = 1, // Perf trampoline is ready to be executed -} perf_status_t; - - -#ifdef PY_HAVE_PERF_TRAMPOLINE -struct code_arena_st; - -struct trampoline_api_st { - void* (*init_state)(void); - void (*write_state)(void* state, const void *code_addr, - unsigned int code_size, PyCodeObject* code); - int (*free_state)(void* state); - void *state; -}; -#endif - -struct _ceval_runtime_state { - struct { -#ifdef PY_HAVE_PERF_TRAMPOLINE - perf_status_t status; - Py_ssize_t extra_code_index; - struct code_arena_st *code_arena; - struct trampoline_api_st trampoline_api; - FILE *map_file; -#else - int _not_used; -#endif - } perf; - /* Request for checking signals. It is shared by all interpreters (see - bpo-40513). Any thread of any interpreter can receive a signal, but only - the main thread of the main interpreter can handle signals: see - _Py_ThreadCanHandleSignals(). */ - _Py_atomic_int signals_pending; - /* Pending calls to be made only on the main thread. */ - struct _pending_calls pending_mainthread; -}; - -#ifdef PY_HAVE_PERF_TRAMPOLINE -# define _PyEval_RUNTIME_PERF_INIT \ - { \ - .status = PERF_STATUS_NO_INIT, \ - .extra_code_index = -1, \ - } -#else -# define _PyEval_RUNTIME_PERF_INIT {0} -#endif - - -struct _ceval_state { - /* This single variable consolidates all requests to break out of - the fast path in the eval loop. */ - _Py_atomic_int eval_breaker; - /* Request for dropping the GIL */ - _Py_atomic_int gil_drop_request; - int recursion_limit; - struct _gil_runtime_state *gil; - int own_gil; - /* The GC is ready to be executed */ - _Py_atomic_int gc_scheduled; - struct _pending_calls pending; -}; - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CEVAL_STATE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_code.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_code.h deleted file mode 100644 index 92e0a8b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_code.h +++ /dev/null @@ -1,496 +0,0 @@ -#ifndef Py_INTERNAL_CODE_H -#define Py_INTERNAL_CODE_H -#ifdef __cplusplus -extern "C" { -#endif - -#define CODE_MAX_WATCHERS 8 - -/* PEP 659 - * Specialization and quickening structs and helper functions - */ - - -// Inline caches. If you change the number of cache entries for an instruction, -// you must *also* update the number of cache entries in Lib/opcode.py and bump -// the magic number in Lib/importlib/_bootstrap_external.py! - -#define CACHE_ENTRIES(cache) (sizeof(cache)/sizeof(_Py_CODEUNIT)) - -typedef struct { - uint16_t counter; - uint16_t index; - uint16_t module_keys_version; - uint16_t builtin_keys_version; -} _PyLoadGlobalCache; - -#define INLINE_CACHE_ENTRIES_LOAD_GLOBAL CACHE_ENTRIES(_PyLoadGlobalCache) - -typedef struct { - uint16_t counter; -} _PyBinaryOpCache; - -#define INLINE_CACHE_ENTRIES_BINARY_OP CACHE_ENTRIES(_PyBinaryOpCache) - -typedef struct { - uint16_t counter; -} _PyUnpackSequenceCache; - -#define INLINE_CACHE_ENTRIES_UNPACK_SEQUENCE \ - CACHE_ENTRIES(_PyUnpackSequenceCache) - -typedef struct { - uint16_t counter; -} _PyCompareOpCache; - -#define INLINE_CACHE_ENTRIES_COMPARE_OP CACHE_ENTRIES(_PyCompareOpCache) - -typedef struct { - uint16_t counter; -} _PyBinarySubscrCache; - -#define INLINE_CACHE_ENTRIES_BINARY_SUBSCR CACHE_ENTRIES(_PyBinarySubscrCache) - -typedef struct { - uint16_t counter; -} _PySuperAttrCache; - -#define INLINE_CACHE_ENTRIES_LOAD_SUPER_ATTR CACHE_ENTRIES(_PySuperAttrCache) - -typedef struct { - uint16_t counter; - uint16_t version[2]; - uint16_t index; -} _PyAttrCache; - -typedef struct { - uint16_t counter; - uint16_t type_version[2]; - uint16_t keys_version[2]; - uint16_t descr[4]; -} _PyLoadMethodCache; - - -// MUST be the max(_PyAttrCache, _PyLoadMethodCache) -#define INLINE_CACHE_ENTRIES_LOAD_ATTR CACHE_ENTRIES(_PyLoadMethodCache) - -#define INLINE_CACHE_ENTRIES_STORE_ATTR CACHE_ENTRIES(_PyAttrCache) - -typedef struct { - uint16_t counter; - uint16_t func_version[2]; -} _PyCallCache; - -#define INLINE_CACHE_ENTRIES_CALL CACHE_ENTRIES(_PyCallCache) - -typedef struct { - uint16_t counter; -} _PyStoreSubscrCache; - -#define INLINE_CACHE_ENTRIES_STORE_SUBSCR CACHE_ENTRIES(_PyStoreSubscrCache) - -typedef struct { - uint16_t counter; -} _PyForIterCache; - -#define INLINE_CACHE_ENTRIES_FOR_ITER CACHE_ENTRIES(_PyForIterCache) - -typedef struct { - uint16_t counter; -} _PySendCache; - -#define INLINE_CACHE_ENTRIES_SEND CACHE_ENTRIES(_PySendCache) - -// Borrowed references to common callables: -struct callable_cache { - PyObject *isinstance; - PyObject *len; - PyObject *list_append; - PyObject *object__getattribute__; -}; - -/* "Locals plus" for a code object is the set of locals + cell vars + - * free vars. This relates to variable names as well as offsets into - * the "fast locals" storage array of execution frames. The compiler - * builds the list of names, their offsets, and the corresponding - * kind of local. - * - * Those kinds represent the source of the initial value and the - * variable's scope (as related to closures). A "local" is an - * argument or other variable defined in the current scope. A "free" - * variable is one that is defined in an outer scope and comes from - * the function's closure. A "cell" variable is a local that escapes - * into an inner function as part of a closure, and thus must be - * wrapped in a cell. Any "local" can also be a "cell", but the - * "free" kind is mutually exclusive with both. - */ - -// Note that these all fit within a byte, as do combinations. -// Later, we will use the smaller numbers to differentiate the different -// kinds of locals (e.g. pos-only arg, varkwargs, local-only). -#define CO_FAST_HIDDEN 0x10 -#define CO_FAST_LOCAL 0x20 -#define CO_FAST_CELL 0x40 -#define CO_FAST_FREE 0x80 - -typedef unsigned char _PyLocals_Kind; - -static inline _PyLocals_Kind -_PyLocals_GetKind(PyObject *kinds, int i) -{ - assert(PyBytes_Check(kinds)); - assert(0 <= i && i < PyBytes_GET_SIZE(kinds)); - char *ptr = PyBytes_AS_STRING(kinds); - return (_PyLocals_Kind)(ptr[i]); -} - -static inline void -_PyLocals_SetKind(PyObject *kinds, int i, _PyLocals_Kind kind) -{ - assert(PyBytes_Check(kinds)); - assert(0 <= i && i < PyBytes_GET_SIZE(kinds)); - char *ptr = PyBytes_AS_STRING(kinds); - ptr[i] = (char) kind; -} - - -struct _PyCodeConstructor { - /* metadata */ - PyObject *filename; - PyObject *name; - PyObject *qualname; - int flags; - - /* the code */ - PyObject *code; - int firstlineno; - PyObject *linetable; - - /* used by the code */ - PyObject *consts; - PyObject *names; - - /* mapping frame offsets to information */ - PyObject *localsplusnames; // Tuple of strings - PyObject *localspluskinds; // Bytes object, one byte per variable - - /* args (within varnames) */ - int argcount; - int posonlyargcount; - // XXX Replace argcount with posorkwargcount (argcount - posonlyargcount). - int kwonlyargcount; - - /* needed to create the frame */ - int stacksize; - - /* used by the eval loop */ - PyObject *exceptiontable; -}; - -// Using an "arguments struct" like this is helpful for maintainability -// in a case such as this with many parameters. It does bear a risk: -// if the struct changes and callers are not updated properly then the -// compiler will not catch problems (like a missing argument). This can -// cause hard-to-debug problems. The risk is mitigated by the use of -// check_code() in codeobject.c. However, we may decide to switch -// back to a regular function signature. Regardless, this approach -// wouldn't be appropriate if this weren't a strictly internal API. -// (See the comments in https://github.com/python/cpython/pull/26258.) -PyAPI_FUNC(int) _PyCode_Validate(struct _PyCodeConstructor *); -PyAPI_FUNC(PyCodeObject *) _PyCode_New(struct _PyCodeConstructor *); - - -/* Private API */ - -/* Getters for internal PyCodeObject data. */ -extern PyObject* _PyCode_GetVarnames(PyCodeObject *); -extern PyObject* _PyCode_GetCellvars(PyCodeObject *); -extern PyObject* _PyCode_GetFreevars(PyCodeObject *); -extern PyObject* _PyCode_GetCode(PyCodeObject *); - -/** API for initializing the line number tables. */ -extern int _PyCode_InitAddressRange(PyCodeObject* co, PyCodeAddressRange *bounds); - -/** Out of process API for initializing the location table. */ -extern void _PyLineTable_InitAddressRange( - const char *linetable, - Py_ssize_t length, - int firstlineno, - PyCodeAddressRange *range); - -/** API for traversing the line number table. */ -extern int _PyLineTable_NextAddressRange(PyCodeAddressRange *range); -extern int _PyLineTable_PreviousAddressRange(PyCodeAddressRange *range); - -/* Specialization functions */ - -extern void _Py_Specialize_LoadSuperAttr(PyObject *global_super, PyObject *cls, - _Py_CODEUNIT *instr, int load_method); -extern void _Py_Specialize_LoadAttr(PyObject *owner, _Py_CODEUNIT *instr, - PyObject *name); -extern void _Py_Specialize_StoreAttr(PyObject *owner, _Py_CODEUNIT *instr, - PyObject *name); -extern void _Py_Specialize_LoadGlobal(PyObject *globals, PyObject *builtins, - _Py_CODEUNIT *instr, PyObject *name); -extern void _Py_Specialize_BinarySubscr(PyObject *sub, PyObject *container, - _Py_CODEUNIT *instr); -extern void _Py_Specialize_StoreSubscr(PyObject *container, PyObject *sub, - _Py_CODEUNIT *instr); -extern void _Py_Specialize_Call(PyObject *callable, _Py_CODEUNIT *instr, - int nargs, PyObject *kwnames); -extern void _Py_Specialize_BinaryOp(PyObject *lhs, PyObject *rhs, _Py_CODEUNIT *instr, - int oparg, PyObject **locals); -extern void _Py_Specialize_CompareOp(PyObject *lhs, PyObject *rhs, - _Py_CODEUNIT *instr, int oparg); -extern void _Py_Specialize_UnpackSequence(PyObject *seq, _Py_CODEUNIT *instr, - int oparg); -extern void _Py_Specialize_ForIter(PyObject *iter, _Py_CODEUNIT *instr, int oparg); -extern void _Py_Specialize_Send(PyObject *receiver, _Py_CODEUNIT *instr); - -/* Finalizer function for static codeobjects used in deepfreeze.py */ -extern void _PyStaticCode_Fini(PyCodeObject *co); -/* Function to intern strings of codeobjects and quicken the bytecode */ -extern int _PyStaticCode_Init(PyCodeObject *co); - -#ifdef Py_STATS - - -#define STAT_INC(opname, name) do { if (_py_stats) _py_stats->opcode_stats[opname].specialization.name++; } while (0) -#define STAT_DEC(opname, name) do { if (_py_stats) _py_stats->opcode_stats[opname].specialization.name--; } while (0) -#define OPCODE_EXE_INC(opname) do { if (_py_stats) _py_stats->opcode_stats[opname].execution_count++; } while (0) -#define CALL_STAT_INC(name) do { if (_py_stats) _py_stats->call_stats.name++; } while (0) -#define OBJECT_STAT_INC(name) do { if (_py_stats) _py_stats->object_stats.name++; } while (0) -#define OBJECT_STAT_INC_COND(name, cond) \ - do { if (_py_stats && cond) _py_stats->object_stats.name++; } while (0) -#define EVAL_CALL_STAT_INC(name) do { if (_py_stats) _py_stats->call_stats.eval_calls[name]++; } while (0) -#define EVAL_CALL_STAT_INC_IF_FUNCTION(name, callable) \ - do { if (_py_stats && PyFunction_Check(callable)) _py_stats->call_stats.eval_calls[name]++; } while (0) - -// Used by the _opcode extension which is built as a shared library -PyAPI_FUNC(PyObject*) _Py_GetSpecializationStats(void); - -#else -#define STAT_INC(opname, name) ((void)0) -#define STAT_DEC(opname, name) ((void)0) -#define OPCODE_EXE_INC(opname) ((void)0) -#define CALL_STAT_INC(name) ((void)0) -#define OBJECT_STAT_INC(name) ((void)0) -#define OBJECT_STAT_INC_COND(name, cond) ((void)0) -#define EVAL_CALL_STAT_INC(name) ((void)0) -#define EVAL_CALL_STAT_INC_IF_FUNCTION(name, callable) ((void)0) -#endif // !Py_STATS - -// Utility functions for reading/writing 32/64-bit values in the inline caches. -// Great care should be taken to ensure that these functions remain correct and -// performant! They should compile to just "move" instructions on all supported -// compilers and platforms. - -// We use memcpy to let the C compiler handle unaligned accesses and endianness -// issues for us. It also seems to produce better code than manual copying for -// most compilers (see https://blog.regehr.org/archives/959 for more info). - -static inline void -write_u32(uint16_t *p, uint32_t val) -{ - memcpy(p, &val, sizeof(val)); -} - -static inline void -write_u64(uint16_t *p, uint64_t val) -{ - memcpy(p, &val, sizeof(val)); -} - -static inline void -write_obj(uint16_t *p, PyObject *val) -{ - memcpy(p, &val, sizeof(val)); -} - -static inline uint16_t -read_u16(uint16_t *p) -{ - return *p; -} - -static inline uint32_t -read_u32(uint16_t *p) -{ - uint32_t val; - memcpy(&val, p, sizeof(val)); - return val; -} - -static inline uint64_t -read_u64(uint16_t *p) -{ - uint64_t val; - memcpy(&val, p, sizeof(val)); - return val; -} - -static inline PyObject * -read_obj(uint16_t *p) -{ - PyObject *val; - memcpy(&val, p, sizeof(val)); - return val; -} - -/* See Objects/exception_handling_notes.txt for details. - */ -static inline unsigned char * -parse_varint(unsigned char *p, int *result) { - int val = p[0] & 63; - while (p[0] & 64) { - p++; - val = (val << 6) | (p[0] & 63); - } - *result = val; - return p+1; -} - -static inline int -write_varint(uint8_t *ptr, unsigned int val) -{ - int written = 1; - while (val >= 64) { - *ptr++ = 64 | (val & 63); - val >>= 6; - written++; - } - *ptr = (uint8_t)val; - return written; -} - -static inline int -write_signed_varint(uint8_t *ptr, int val) -{ - unsigned int uval; - if (val < 0) { - // (unsigned int)(-val) has an undefined behavior for INT_MIN - uval = ((0 - (unsigned int)val) << 1) | 1; - } - else { - uval = (unsigned int)val << 1; - } - return write_varint(ptr, uval); -} - -static inline int -write_location_entry_start(uint8_t *ptr, int code, int length) -{ - assert((code & 15) == code); - *ptr = 128 | (uint8_t)(code << 3) | (uint8_t)(length - 1); - return 1; -} - - -/** Counters - * The first 16-bit value in each inline cache is a counter. - * When counting misses, the counter is treated as a simple unsigned value. - * - * When counting executions until the next specialization attempt, - * exponential backoff is used to reduce the number of specialization failures. - * The high 12 bits store the counter, the low 4 bits store the backoff exponent. - * On a specialization failure, the backoff exponent is incremented and the - * counter set to (2**backoff - 1). - * Backoff == 6 -> starting counter == 63, backoff == 10 -> starting counter == 1023. - */ - -/* With a 16-bit counter, we have 12 bits for the counter value, and 4 bits for the backoff */ -#define ADAPTIVE_BACKOFF_BITS 4 - -// A value of 1 means that we attempt to specialize the *second* time each -// instruction is executed. Executing twice is a much better indicator of -// "hotness" than executing once, but additional warmup delays only prevent -// specialization. Most types stabilize by the second execution, too: -#define ADAPTIVE_WARMUP_VALUE 1 -#define ADAPTIVE_WARMUP_BACKOFF 1 - -// A value of 52 means that we attempt to re-specialize after 53 misses (a prime -// number, useful for avoiding artifacts if every nth value is a different type -// or something). Setting the backoff to 0 means that the counter is reset to -// the same state as a warming-up instruction (value == 1, backoff == 1) after -// deoptimization. This isn't strictly necessary, but it is bit easier to reason -// about when thinking about the opcode transitions as a state machine: -#define ADAPTIVE_COOLDOWN_VALUE 52 -#define ADAPTIVE_COOLDOWN_BACKOFF 0 - -#define MAX_BACKOFF_VALUE (16 - ADAPTIVE_BACKOFF_BITS) - - -static inline uint16_t -adaptive_counter_bits(uint16_t value, uint16_t backoff) { - return ((value << ADAPTIVE_BACKOFF_BITS) - | (backoff & ((1 << ADAPTIVE_BACKOFF_BITS) - 1))); -} - -static inline uint16_t -adaptive_counter_warmup(void) { - return adaptive_counter_bits(ADAPTIVE_WARMUP_VALUE, - ADAPTIVE_WARMUP_BACKOFF); -} - -static inline uint16_t -adaptive_counter_cooldown(void) { - return adaptive_counter_bits(ADAPTIVE_COOLDOWN_VALUE, - ADAPTIVE_COOLDOWN_BACKOFF); -} - -static inline uint16_t -adaptive_counter_backoff(uint16_t counter) { - uint16_t backoff = counter & ((1 << ADAPTIVE_BACKOFF_BITS) - 1); - backoff++; - if (backoff > MAX_BACKOFF_VALUE) { - backoff = MAX_BACKOFF_VALUE; - } - uint16_t value = (uint16_t)(1 << backoff) - 1; - return adaptive_counter_bits(value, backoff); -} - - -/* Line array cache for tracing */ - -typedef struct _PyShimCodeDef { - const uint8_t *code; - int codelen; - int stacksize; - const char *cname; -} _PyShimCodeDef; - -extern PyCodeObject * -_Py_MakeShimCode(const _PyShimCodeDef *code); - -extern uint32_t _Py_next_func_version; - - -/* Comparison bit masks. */ - -/* Note this evaluates its arguments twice each */ -#define COMPARISON_BIT(x, y) (1 << (2 * ((x) >= (y)) + ((x) <= (y)))) - -/* - * The following bits are chosen so that the value of - * COMPARSION_BIT(left, right) - * masked by the values below will be non-zero if the - * comparison is true, and zero if it is false */ - -/* This is for values that are unordered, ie. NaN, not types that are unordered, e.g. sets */ -#define COMPARISON_UNORDERED 1 - -#define COMPARISON_LESS_THAN 2 -#define COMPARISON_GREATER_THAN 4 -#define COMPARISON_EQUALS 8 - -#define COMPARISON_NOT_EQUALS (COMPARISON_UNORDERED | COMPARISON_LESS_THAN | COMPARISON_GREATER_THAN) - -extern int _Py_Instrument(PyCodeObject *co, PyInterpreterState *interp); - -extern int _Py_GetBaseOpcode(PyCodeObject *code, int offset); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CODE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_compile.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_compile.h deleted file mode 100644 index 80a637e..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_compile.h +++ /dev/null @@ -1,118 +0,0 @@ -#ifndef Py_INTERNAL_COMPILE_H -#define Py_INTERNAL_COMPILE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct _arena; // Type defined in pycore_pyarena.h -struct _mod; // Type defined in pycore_ast.h - -// Export the symbol for test_peg_generator (built as a library) -PyAPI_FUNC(PyCodeObject*) _PyAST_Compile( - struct _mod *mod, - PyObject *filename, - PyCompilerFlags *flags, - int optimize, - struct _arena *arena); - -static const _PyCompilerSrcLocation NO_LOCATION = {-1, -1, -1, -1}; - -typedef struct { - int optimize; - int ff_features; - - int recursion_depth; /* current recursion depth */ - int recursion_limit; /* recursion limit */ -} _PyASTOptimizeState; - -extern int _PyAST_Optimize( - struct _mod *, - struct _arena *arena, - _PyASTOptimizeState *state); - -typedef struct { - int h_offset; - int h_startdepth; - int h_preserve_lasti; -} _PyCompile_ExceptHandlerInfo; - -typedef struct { - int i_opcode; - int i_oparg; - _PyCompilerSrcLocation i_loc; - _PyCompile_ExceptHandlerInfo i_except_handler_info; -} _PyCompile_Instruction; - -typedef struct { - _PyCompile_Instruction *s_instrs; - int s_allocated; - int s_used; - - int *s_labelmap; /* label id --> instr offset */ - int s_labelmap_size; - int s_next_free_label; /* next free label id */ -} _PyCompile_InstructionSequence; - -typedef struct { - PyObject *u_name; - PyObject *u_qualname; /* dot-separated qualified name (lazy) */ - - /* The following fields are dicts that map objects to - the index of them in co_XXX. The index is used as - the argument for opcodes that refer to those collections. - */ - PyObject *u_consts; /* all constants */ - PyObject *u_names; /* all names */ - PyObject *u_varnames; /* local variables */ - PyObject *u_cellvars; /* cell variables */ - PyObject *u_freevars; /* free variables */ - PyObject *u_fasthidden; /* dict; keys are names that are fast-locals only - temporarily within an inlined comprehension. When - value is True, treat as fast-local. */ - - Py_ssize_t u_argcount; /* number of arguments for block */ - Py_ssize_t u_posonlyargcount; /* number of positional only arguments for block */ - Py_ssize_t u_kwonlyargcount; /* number of keyword only arguments for block */ - - int u_firstlineno; /* the first lineno of the block */ -} _PyCompile_CodeUnitMetadata; - - -/* Utility for a number of growing arrays used in the compiler */ -int _PyCompile_EnsureArrayLargeEnough( - int idx, - void **array, - int *alloc, - int default_alloc, - size_t item_size); - -int _PyCompile_ConstCacheMergeOne(PyObject *const_cache, PyObject **obj); - -int _PyCompile_InstrSize(int opcode, int oparg); - -/* Access compiler internals for unit testing */ - -PyAPI_FUNC(PyObject*) _PyCompile_CodeGen( - PyObject *ast, - PyObject *filename, - PyCompilerFlags *flags, - int optimize, - int compile_mode); - -PyAPI_FUNC(PyObject*) _PyCompile_OptimizeCfg( - PyObject *instructions, - PyObject *consts, - int nlocals); - -PyAPI_FUNC(PyCodeObject*) -_PyCompile_Assemble(_PyCompile_CodeUnitMetadata *umd, PyObject *filename, - PyObject *instructions); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_COMPILE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_condvar.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_condvar.h deleted file mode 100644 index 981c962..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_condvar.h +++ /dev/null @@ -1,97 +0,0 @@ -#ifndef Py_INTERNAL_CONDVAR_H -#define Py_INTERNAL_CONDVAR_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#ifndef _POSIX_THREADS -/* This means pthreads are not implemented in libc headers, hence the macro - not present in unistd.h. But they still can be implemented as an external - library (e.g. gnu pth in pthread emulation) */ -# ifdef HAVE_PTHREAD_H -# include /* _POSIX_THREADS */ -# endif -#endif - -#ifdef _POSIX_THREADS -/* - * POSIX support - */ -#define Py_HAVE_CONDVAR - -#ifdef HAVE_PTHREAD_H -# include -#endif - -#define PyMUTEX_T pthread_mutex_t -#define PyCOND_T pthread_cond_t - -#elif defined(NT_THREADS) -/* - * Windows (XP, 2003 server and later, as well as (hopefully) CE) support - * - * Emulated condition variables ones that work with XP and later, plus - * example native support on VISTA and onwards. - */ -#define Py_HAVE_CONDVAR - -/* include windows if it hasn't been done before */ -#define WIN32_LEAN_AND_MEAN -#include - -/* options */ -/* non-emulated condition variables are provided for those that want - * to target Windows Vista. Modify this macro to enable them. - */ -#ifndef _PY_EMULATED_WIN_CV -#define _PY_EMULATED_WIN_CV 1 /* use emulated condition variables */ -#endif - -/* fall back to emulation if not targeting Vista */ -#if !defined NTDDI_VISTA || NTDDI_VERSION < NTDDI_VISTA -#undef _PY_EMULATED_WIN_CV -#define _PY_EMULATED_WIN_CV 1 -#endif - -#if _PY_EMULATED_WIN_CV - -typedef CRITICAL_SECTION PyMUTEX_T; - -/* The ConditionVariable object. From XP onwards it is easily emulated - with a Semaphore. - Semaphores are available on Windows XP (2003 server) and later. - We use a Semaphore rather than an auto-reset event, because although - an auto-reset event might appear to solve the lost-wakeup bug (race - condition between releasing the outer lock and waiting) because it - maintains state even though a wait hasn't happened, there is still - a lost wakeup problem if more than one thread are interrupted in the - critical place. A semaphore solves that, because its state is - counted, not Boolean. - Because it is ok to signal a condition variable with no one - waiting, we need to keep track of the number of - waiting threads. Otherwise, the semaphore's state could rise - without bound. This also helps reduce the number of "spurious wakeups" - that would otherwise happen. - */ - -typedef struct _PyCOND_T -{ - HANDLE sem; - int waiting; /* to allow PyCOND_SIGNAL to be a no-op */ -} PyCOND_T; - -#else /* !_PY_EMULATED_WIN_CV */ - -/* Use native Win7 primitives if build target is Win7 or higher */ - -/* SRWLOCK is faster and better than CriticalSection */ -typedef SRWLOCK PyMUTEX_T; - -typedef CONDITION_VARIABLE PyCOND_T; - -#endif /* _PY_EMULATED_WIN_CV */ - -#endif /* _POSIX_THREADS, NT_THREADS */ - -#endif /* Py_INTERNAL_CONDVAR_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_context.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_context.h deleted file mode 100644 index 52dfe3e..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_context.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef Py_INTERNAL_CONTEXT_H -#define Py_INTERNAL_CONTEXT_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_hamt.h" /* PyHamtObject */ - - -extern PyTypeObject _PyContextTokenMissing_Type; - -/* runtime lifecycle */ - -PyStatus _PyContext_Init(PyInterpreterState *); -void _PyContext_Fini(PyInterpreterState *); - - -/* other API */ - -typedef struct { - PyObject_HEAD -} _PyContextTokenMissing; - -#ifndef WITH_FREELISTS -// without freelists -# define PyContext_MAXFREELIST 0 -#endif - -#ifndef PyContext_MAXFREELIST -# define PyContext_MAXFREELIST 255 -#endif - -struct _Py_context_state { -#if PyContext_MAXFREELIST > 0 - // List of free PyContext objects - PyContext *freelist; - int numfree; -#endif -}; - -struct _pycontextobject { - PyObject_HEAD - PyContext *ctx_prev; - PyHamtObject *ctx_vars; - PyObject *ctx_weakreflist; - int ctx_entered; -}; - - -struct _pycontextvarobject { - PyObject_HEAD - PyObject *var_name; - PyObject *var_default; - PyObject *var_cached; - uint64_t var_cached_tsid; - uint64_t var_cached_tsver; - Py_hash_t var_hash; -}; - - -struct _pycontexttokenobject { - PyObject_HEAD - PyContext *tok_ctx; - PyContextVar *tok_var; - PyObject *tok_oldval; - int tok_used; -}; - - -#endif /* !Py_INTERNAL_CONTEXT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_descrobject.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_descrobject.h deleted file mode 100644 index 7637856..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_descrobject.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef Py_INTERNAL_DESCROBJECT_H -#define Py_INTERNAL_DESCROBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -typedef struct { - PyObject_HEAD - PyObject *prop_get; - PyObject *prop_set; - PyObject *prop_del; - PyObject *prop_doc; - PyObject *prop_name; - int getter_doc; -} propertyobject; - -typedef propertyobject _PyPropertyObject; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_DESCROBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_dict.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_dict.h deleted file mode 100644 index 6253e08..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_dict.h +++ /dev/null @@ -1,199 +0,0 @@ - -#ifndef Py_INTERNAL_DICT_H -#define Py_INTERNAL_DICT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_dict_state.h" -#include "pycore_runtime.h" // _PyRuntime - - -/* runtime lifecycle */ - -extern void _PyDict_Fini(PyInterpreterState *interp); - - -/* other API */ - -typedef struct { - /* Cached hash code of me_key. */ - Py_hash_t me_hash; - PyObject *me_key; - PyObject *me_value; /* This field is only meaningful for combined tables */ -} PyDictKeyEntry; - -typedef struct { - PyObject *me_key; /* The key must be Unicode and have hash. */ - PyObject *me_value; /* This field is only meaningful for combined tables */ -} PyDictUnicodeEntry; - -extern PyDictKeysObject *_PyDict_NewKeysForClass(void); -extern PyObject *_PyDict_FromKeys(PyObject *, PyObject *, PyObject *); - -/* Gets a version number unique to the current state of the keys of dict, if possible. - * Returns the version number, or zero if it was not possible to get a version number. */ -extern uint32_t _PyDictKeys_GetVersionForCurrentState( - PyInterpreterState *interp, PyDictKeysObject *dictkeys); - -extern size_t _PyDict_KeysSize(PyDictKeysObject *keys); - -/* _Py_dict_lookup() returns index of entry which can be used like DK_ENTRIES(dk)[index]. - * -1 when no entry found, -3 when compare raises error. - */ -extern Py_ssize_t _Py_dict_lookup(PyDictObject *mp, PyObject *key, Py_hash_t hash, PyObject **value_addr); - -extern Py_ssize_t _PyDict_LookupIndex(PyDictObject *, PyObject *); -extern Py_ssize_t _PyDictKeys_StringLookup(PyDictKeysObject* dictkeys, PyObject *key); -extern PyObject *_PyDict_LoadGlobal(PyDictObject *, PyDictObject *, PyObject *); - -/* Consumes references to key and value */ -extern int _PyDict_SetItem_Take2(PyDictObject *op, PyObject *key, PyObject *value); -extern int _PyObjectDict_SetItem(PyTypeObject *tp, PyObject **dictptr, PyObject *name, PyObject *value); - -extern PyObject *_PyDict_Pop_KnownHash(PyObject *, PyObject *, Py_hash_t, PyObject *); - -#define DKIX_EMPTY (-1) -#define DKIX_DUMMY (-2) /* Used internally */ -#define DKIX_ERROR (-3) -#define DKIX_KEY_CHANGED (-4) /* Used internally */ - -typedef enum { - DICT_KEYS_GENERAL = 0, - DICT_KEYS_UNICODE = 1, - DICT_KEYS_SPLIT = 2 -} DictKeysKind; - -/* See dictobject.c for actual layout of DictKeysObject */ -struct _dictkeysobject { - Py_ssize_t dk_refcnt; - - /* Size of the hash table (dk_indices). It must be a power of 2. */ - uint8_t dk_log2_size; - - /* Size of the hash table (dk_indices) by bytes. */ - uint8_t dk_log2_index_bytes; - - /* Kind of keys */ - uint8_t dk_kind; - - /* Version number -- Reset to 0 by any modification to keys */ - uint32_t dk_version; - - /* Number of usable entries in dk_entries. */ - Py_ssize_t dk_usable; - - /* Number of used entries in dk_entries. */ - Py_ssize_t dk_nentries; - - /* Actual hash table of dk_size entries. It holds indices in dk_entries, - or DKIX_EMPTY(-1) or DKIX_DUMMY(-2). - - Indices must be: 0 <= indice < USABLE_FRACTION(dk_size). - - The size in bytes of an indice depends on dk_size: - - - 1 byte if dk_size <= 0xff (char*) - - 2 bytes if dk_size <= 0xffff (int16_t*) - - 4 bytes if dk_size <= 0xffffffff (int32_t*) - - 8 bytes otherwise (int64_t*) - - Dynamically sized, SIZEOF_VOID_P is minimum. */ - char dk_indices[]; /* char is required to avoid strict aliasing. */ - - /* "PyDictKeyEntry or PyDictUnicodeEntry dk_entries[USABLE_FRACTION(DK_SIZE(dk))];" array follows: - see the DK_ENTRIES() macro */ -}; - -/* This must be no more than 250, for the prefix size to fit in one byte. */ -#define SHARED_KEYS_MAX_SIZE 30 -#define NEXT_LOG2_SHARED_KEYS_MAX_SIZE 6 - -/* Layout of dict values: - * - * The PyObject *values are preceded by an array of bytes holding - * the insertion order and size. - * [-1] = prefix size. [-2] = used size. size[-2-n...] = insertion order. - */ -struct _dictvalues { - PyObject *values[1]; -}; - -#define DK_LOG_SIZE(dk) _Py_RVALUE((dk)->dk_log2_size) -#if SIZEOF_VOID_P > 4 -#define DK_SIZE(dk) (((int64_t)1)<dk_indices); - size_t index = (size_t)1 << dk->dk_log2_index_bytes; - return (&indices[index]); -} -static inline PyDictKeyEntry* DK_ENTRIES(PyDictKeysObject *dk) { - assert(dk->dk_kind == DICT_KEYS_GENERAL); - return (PyDictKeyEntry*)_DK_ENTRIES(dk); -} -static inline PyDictUnicodeEntry* DK_UNICODE_ENTRIES(PyDictKeysObject *dk) { - assert(dk->dk_kind != DICT_KEYS_GENERAL); - return (PyDictUnicodeEntry*)_DK_ENTRIES(dk); -} - -#define DK_IS_UNICODE(dk) ((dk)->dk_kind != DICT_KEYS_GENERAL) - -#define DICT_VERSION_INCREMENT (1 << DICT_MAX_WATCHERS) -#define DICT_VERSION_MASK (DICT_VERSION_INCREMENT - 1) - -#define DICT_NEXT_VERSION(INTERP) \ - ((INTERP)->dict_state.global_version += DICT_VERSION_INCREMENT) - -void -_PyDict_SendEvent(int watcher_bits, - PyDict_WatchEvent event, - PyDictObject *mp, - PyObject *key, - PyObject *value); - -static inline uint64_t -_PyDict_NotifyEvent(PyInterpreterState *interp, - PyDict_WatchEvent event, - PyDictObject *mp, - PyObject *key, - PyObject *value) -{ - assert(Py_REFCNT((PyObject*)mp) > 0); - int watcher_bits = mp->ma_version_tag & DICT_VERSION_MASK; - if (watcher_bits) { - _PyDict_SendEvent(watcher_bits, event, mp, key, value); - return DICT_NEXT_VERSION(interp) | watcher_bits; - } - return DICT_NEXT_VERSION(interp); -} - -extern PyObject *_PyObject_MakeDictFromInstanceAttributes(PyObject *obj, PyDictValues *values); -extern PyObject *_PyDict_FromItems( - PyObject *const *keys, Py_ssize_t keys_offset, - PyObject *const *values, Py_ssize_t values_offset, - Py_ssize_t length); - -static inline void -_PyDictValues_AddToInsertionOrder(PyDictValues *values, Py_ssize_t ix) -{ - assert(ix < SHARED_KEYS_MAX_SIZE); - uint8_t *size_ptr = ((uint8_t *)values)-2; - int size = *size_ptr; - assert(size+2 < ((uint8_t *)values)[-1]); - size++; - size_ptr[-size] = (uint8_t)ix; - *size_ptr = size; -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_DICT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_dict_state.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_dict_state.h deleted file mode 100644 index ece0f10..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_dict_state.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef Py_INTERNAL_DICT_STATE_H -#define Py_INTERNAL_DICT_STATE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -#ifndef WITH_FREELISTS -// without freelists -# define PyDict_MAXFREELIST 0 -#endif - -#ifndef PyDict_MAXFREELIST -# define PyDict_MAXFREELIST 80 -#endif - -#define DICT_MAX_WATCHERS 8 - -struct _Py_dict_state { - /*Global counter used to set ma_version_tag field of dictionary. - * It is incremented each time that a dictionary is created and each - * time that a dictionary is modified. */ - uint64_t global_version; - uint32_t next_keys_version; - -#if PyDict_MAXFREELIST > 0 - /* Dictionary reuse scheme to save calls to malloc and free */ - PyDictObject *free_list[PyDict_MAXFREELIST]; - PyDictKeysObject *keys_free_list[PyDict_MAXFREELIST]; - int numfree; - int keys_numfree; -#endif - - PyDict_WatchCallback watchers[DICT_MAX_WATCHERS]; -}; - -#define _dict_state_INIT \ - { \ - .next_keys_version = 2, \ - } - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_DICT_STATE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_dtoa.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_dtoa.h deleted file mode 100644 index 4d9681d..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_dtoa.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef Py_INTERNAL_DTOA_H -#define Py_INTERNAL_DTOA_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_pymath.h" // _PY_SHORT_FLOAT_REPR - - -#if _PY_SHORT_FLOAT_REPR == 1 - -typedef uint32_t ULong; - -struct -Bigint { - struct Bigint *next; - int k, maxwds, sign, wds; - ULong x[1]; -}; - -#ifdef Py_USING_MEMORY_DEBUGGER - -struct _dtoa_state { - int _not_used; -}; -#define _dtoa_interp_state_INIT(INTERP) \ - {0} - -#else // !Py_USING_MEMORY_DEBUGGER - -/* The size of the Bigint freelist */ -#define Bigint_Kmax 7 - -#ifndef PRIVATE_MEM -#define PRIVATE_MEM 2304 -#endif -#define Bigint_PREALLOC_SIZE \ - ((PRIVATE_MEM+sizeof(double)-1)/sizeof(double)) - -struct _dtoa_state { - /* p5s is a linked list of powers of 5 of the form 5**(2**i), i >= 2 */ - // XXX This should be freed during runtime fini. - struct Bigint *p5s; - struct Bigint *freelist[Bigint_Kmax+1]; - double preallocated[Bigint_PREALLOC_SIZE]; - double *preallocated_next; -}; -#define _dtoa_state_INIT(INTERP) \ - { \ - .preallocated_next = (INTERP)->dtoa.preallocated, \ - } - -#endif // !Py_USING_MEMORY_DEBUGGER - - -/* These functions are used by modules compiled as C extension like math: - they must be exported. */ - -PyAPI_FUNC(double) _Py_dg_strtod(const char *str, char **ptr); -PyAPI_FUNC(char *) _Py_dg_dtoa(double d, int mode, int ndigits, - int *decpt, int *sign, char **rve); -PyAPI_FUNC(void) _Py_dg_freedtoa(char *s); - -#endif // _PY_SHORT_FLOAT_REPR == 1 - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_DTOA_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_emscripten_signal.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_emscripten_signal.h deleted file mode 100644 index 8b3287d..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_emscripten_signal.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef Py_EMSCRIPTEN_SIGNAL_H -#define Py_EMSCRIPTEN_SIGNAL_H - -#if defined(__EMSCRIPTEN__) - -void -_Py_CheckEmscriptenSignals(void); - -void -_Py_CheckEmscriptenSignalsPeriodically(void); - -#define _Py_CHECK_EMSCRIPTEN_SIGNALS() _Py_CheckEmscriptenSignals() - -#define _Py_CHECK_EMSCRIPTEN_SIGNALS_PERIODICALLY() _Py_CheckEmscriptenSignalsPeriodically() - -extern int Py_EMSCRIPTEN_SIGNAL_HANDLING; - -#else - -#define _Py_CHECK_EMSCRIPTEN_SIGNALS() -#define _Py_CHECK_EMSCRIPTEN_SIGNALS_PERIODICALLY() - -#endif // defined(__EMSCRIPTEN__) - -#endif // ndef Py_EMSCRIPTEN_SIGNAL_H diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_exceptions.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_exceptions.h deleted file mode 100644 index 4a9df70..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_exceptions.h +++ /dev/null @@ -1,37 +0,0 @@ -#ifndef Py_INTERNAL_EXCEPTIONS_H -#define Py_INTERNAL_EXCEPTIONS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* runtime lifecycle */ - -extern PyStatus _PyExc_InitState(PyInterpreterState *); -extern PyStatus _PyExc_InitGlobalObjects(PyInterpreterState *); -extern int _PyExc_InitTypes(PyInterpreterState *); -extern void _PyExc_Fini(PyInterpreterState *); - - -/* other API */ - -struct _Py_exc_state { - // The dict mapping from errno codes to OSError subclasses - PyObject *errnomap; - PyBaseExceptionObject *memerrors_freelist; - int memerrors_numfree; - // The ExceptionGroup type - PyObject *PyExc_ExceptionGroup; -}; - -extern void _PyExc_ClearExceptionGroupType(PyInterpreterState *); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_EXCEPTIONS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_faulthandler.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_faulthandler.h deleted file mode 100644 index e6aec77..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_faulthandler.h +++ /dev/null @@ -1,99 +0,0 @@ -#ifndef Py_INTERNAL_FAULTHANDLER_H -#define Py_INTERNAL_FAULTHANDLER_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#ifdef HAVE_SIGACTION -# include -#endif - - -#ifndef MS_WINDOWS - /* register() is useless on Windows, because only SIGSEGV, SIGABRT and - SIGILL can be handled by the process, and these signals can only be used - with enable(), not using register() */ -# define FAULTHANDLER_USER -#endif - - -#ifdef HAVE_SIGACTION -/* Using an alternative stack requires sigaltstack() - and sigaction() SA_ONSTACK */ -# ifdef HAVE_SIGALTSTACK -# define FAULTHANDLER_USE_ALT_STACK -# endif -typedef struct sigaction _Py_sighandler_t; -#else -typedef PyOS_sighandler_t _Py_sighandler_t; -#endif // HAVE_SIGACTION - - -#ifdef FAULTHANDLER_USER -struct faulthandler_user_signal { - int enabled; - PyObject *file; - int fd; - int all_threads; - int chain; - _Py_sighandler_t previous; - PyInterpreterState *interp; -}; -#endif /* FAULTHANDLER_USER */ - - -struct _faulthandler_runtime_state { - struct { - int enabled; - PyObject *file; - int fd; - int all_threads; - PyInterpreterState *interp; -#ifdef MS_WINDOWS - void *exc_handler; -#endif - } fatal_error; - - struct { - PyObject *file; - int fd; - PY_TIMEOUT_T timeout_us; /* timeout in microseconds */ - int repeat; - PyInterpreterState *interp; - int exit; - char *header; - size_t header_len; - /* The main thread always holds this lock. It is only released when - faulthandler_thread() is interrupted before this thread exits, or at - Python exit. */ - PyThread_type_lock cancel_event; - /* released by child thread when joined */ - PyThread_type_lock running; - } thread; - -#ifdef FAULTHANDLER_USER - struct faulthandler_user_signal *user_signals; -#endif - -#ifdef FAULTHANDLER_USE_ALT_STACK - stack_t stack; - stack_t old_stack; -#endif -}; - -#define _faulthandler_runtime_state_INIT \ - { \ - .fatal_error = { \ - .fd = -1, \ - }, \ - } - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FAULTHANDLER_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_fileutils.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_fileutils.h deleted file mode 100644 index 7c2b6ec..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_fileutils.h +++ /dev/null @@ -1,292 +0,0 @@ -#ifndef Py_INTERNAL_FILEUTILS_H -#define Py_INTERNAL_FILEUTILS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "Py_BUILD_CORE must be defined to include this header" -#endif - -#include /* struct lconv */ - - -struct _fileutils_state { - int force_ascii; -}; - -typedef enum { - _Py_ERROR_UNKNOWN=0, - _Py_ERROR_STRICT, - _Py_ERROR_SURROGATEESCAPE, - _Py_ERROR_REPLACE, - _Py_ERROR_IGNORE, - _Py_ERROR_BACKSLASHREPLACE, - _Py_ERROR_SURROGATEPASS, - _Py_ERROR_XMLCHARREFREPLACE, - _Py_ERROR_OTHER -} _Py_error_handler; - -PyAPI_FUNC(_Py_error_handler) _Py_GetErrorHandler(const char *errors); - -PyAPI_FUNC(int) _Py_DecodeLocaleEx( - const char *arg, - wchar_t **wstr, - size_t *wlen, - const char **reason, - int current_locale, - _Py_error_handler errors); - -PyAPI_FUNC(int) _Py_EncodeLocaleEx( - const wchar_t *text, - char **str, - size_t *error_pos, - const char **reason, - int current_locale, - _Py_error_handler errors); - -PyAPI_FUNC(char*) _Py_EncodeLocaleRaw( - const wchar_t *text, - size_t *error_pos); - -PyAPI_FUNC(PyObject *) _Py_device_encoding(int); - -#if defined(MS_WINDOWS) || defined(__APPLE__) - /* On Windows, the count parameter of read() is an int (bpo-9015, bpo-9611). - On macOS 10.13, read() and write() with more than INT_MAX bytes - fail with EINVAL (bpo-24658). */ -# define _PY_READ_MAX INT_MAX -# define _PY_WRITE_MAX INT_MAX -#else - /* write() should truncate the input to PY_SSIZE_T_MAX bytes, - but it's safer to do it ourself to have a portable behaviour */ -# define _PY_READ_MAX PY_SSIZE_T_MAX -# define _PY_WRITE_MAX PY_SSIZE_T_MAX -#endif - -#ifdef MS_WINDOWS -struct _Py_stat_struct { - uint64_t st_dev; - uint64_t st_ino; - unsigned short st_mode; - int st_nlink; - int st_uid; - int st_gid; - unsigned long st_rdev; - __int64 st_size; - time_t st_atime; - int st_atime_nsec; - time_t st_mtime; - int st_mtime_nsec; - time_t st_ctime; - int st_ctime_nsec; - time_t st_birthtime; - int st_birthtime_nsec; - unsigned long st_file_attributes; - unsigned long st_reparse_tag; - uint64_t st_ino_high; -}; -#else -# define _Py_stat_struct stat -#endif - -PyAPI_FUNC(int) _Py_fstat( - int fd, - struct _Py_stat_struct *status); - -PyAPI_FUNC(int) _Py_fstat_noraise( - int fd, - struct _Py_stat_struct *status); - -PyAPI_FUNC(int) _Py_stat( - PyObject *path, - struct stat *status); - -PyAPI_FUNC(int) _Py_open( - const char *pathname, - int flags); - -PyAPI_FUNC(int) _Py_open_noraise( - const char *pathname, - int flags); - -PyAPI_FUNC(FILE *) _Py_wfopen( - const wchar_t *path, - const wchar_t *mode); - -PyAPI_FUNC(Py_ssize_t) _Py_read( - int fd, - void *buf, - size_t count); - -PyAPI_FUNC(Py_ssize_t) _Py_write( - int fd, - const void *buf, - size_t count); - -PyAPI_FUNC(Py_ssize_t) _Py_write_noraise( - int fd, - const void *buf, - size_t count); - -#ifdef HAVE_READLINK -PyAPI_FUNC(int) _Py_wreadlink( - const wchar_t *path, - wchar_t *buf, - /* Number of characters of 'buf' buffer - including the trailing NUL character */ - size_t buflen); -#endif - -#ifdef HAVE_REALPATH -PyAPI_FUNC(wchar_t*) _Py_wrealpath( - const wchar_t *path, - wchar_t *resolved_path, - /* Number of characters of 'resolved_path' buffer - including the trailing NUL character */ - size_t resolved_path_len); -#endif - -PyAPI_FUNC(wchar_t*) _Py_wgetcwd( - wchar_t *buf, - /* Number of characters of 'buf' buffer - including the trailing NUL character */ - size_t buflen); - -PyAPI_FUNC(int) _Py_get_inheritable(int fd); - -PyAPI_FUNC(int) _Py_set_inheritable(int fd, int inheritable, - int *atomic_flag_works); - -PyAPI_FUNC(int) _Py_set_inheritable_async_safe(int fd, int inheritable, - int *atomic_flag_works); - -PyAPI_FUNC(int) _Py_dup(int fd); - -PyAPI_FUNC(int) _Py_get_blocking(int fd); - -PyAPI_FUNC(int) _Py_set_blocking(int fd, int blocking); - -#ifdef MS_WINDOWS -PyAPI_FUNC(void*) _Py_get_osfhandle_noraise(int fd); - -PyAPI_FUNC(void*) _Py_get_osfhandle(int fd); - -PyAPI_FUNC(int) _Py_open_osfhandle_noraise(void *handle, int flags); - -PyAPI_FUNC(int) _Py_open_osfhandle(void *handle, int flags); -#endif /* MS_WINDOWS */ - -// This is used after getting NULL back from Py_DecodeLocale(). -#define DECODE_LOCALE_ERR(NAME, LEN) \ - ((LEN) == (size_t)-2) \ - ? _PyStatus_ERR("cannot decode " NAME) \ - : _PyStatus_NO_MEMORY() - -PyAPI_DATA(int) _Py_HasFileSystemDefaultEncodeErrors; - -PyAPI_FUNC(int) _Py_DecodeUTF8Ex( - const char *arg, - Py_ssize_t arglen, - wchar_t **wstr, - size_t *wlen, - const char **reason, - _Py_error_handler errors); - -PyAPI_FUNC(int) _Py_EncodeUTF8Ex( - const wchar_t *text, - char **str, - size_t *error_pos, - const char **reason, - int raw_malloc, - _Py_error_handler errors); - -PyAPI_FUNC(wchar_t*) _Py_DecodeUTF8_surrogateescape( - const char *arg, - Py_ssize_t arglen, - size_t *wlen); - -extern int -_Py_wstat(const wchar_t *, struct stat *); - -PyAPI_FUNC(int) _Py_GetForceASCII(void); - -/* Reset "force ASCII" mode (if it was initialized). - - This function should be called when Python changes the LC_CTYPE locale, - so the "force ASCII" mode can be detected again on the new locale - encoding. */ -PyAPI_FUNC(void) _Py_ResetForceASCII(void); - - -PyAPI_FUNC(int) _Py_GetLocaleconvNumeric( - struct lconv *lc, - PyObject **decimal_point, - PyObject **thousands_sep); - -PyAPI_FUNC(void) _Py_closerange(int first, int last); - -PyAPI_FUNC(wchar_t*) _Py_GetLocaleEncoding(void); -PyAPI_FUNC(PyObject*) _Py_GetLocaleEncodingObject(void); - -#ifdef HAVE_NON_UNICODE_WCHAR_T_REPRESENTATION -extern int _Py_LocaleUsesNonUnicodeWchar(void); - -extern wchar_t* _Py_DecodeNonUnicodeWchar( - const wchar_t* native, - Py_ssize_t size); - -extern int _Py_EncodeNonUnicodeWchar_InPlace( - wchar_t* unicode, - Py_ssize_t size); -#endif - -extern int _Py_isabs(const wchar_t *path); -extern int _Py_abspath(const wchar_t *path, wchar_t **abspath_p); -#ifdef MS_WINDOWS -extern int _PyOS_getfullpathname(const wchar_t *path, wchar_t **abspath_p); -#endif -extern wchar_t * _Py_join_relfile(const wchar_t *dirname, - const wchar_t *relfile); -extern int _Py_add_relfile(wchar_t *dirname, - const wchar_t *relfile, - size_t bufsize); -extern size_t _Py_find_basename(const wchar_t *filename); -PyAPI_FUNC(wchar_t*) _Py_normpath(wchar_t *path, Py_ssize_t size); -extern wchar_t *_Py_normpath_and_size(wchar_t *path, Py_ssize_t size, Py_ssize_t *length); - -// The Windows Games API family does not provide these functions -// so provide our own implementations. Remove them in case they get added -// to the Games API family -#if defined(MS_WINDOWS_GAMES) && !defined(MS_WINDOWS_DESKTOP) -#include - -extern HRESULT PathCchSkipRoot(const wchar_t *pszPath, const wchar_t **ppszRootEnd); -#endif /* defined(MS_WINDOWS_GAMES) && !defined(MS_WINDOWS_DESKTOP) */ - -// Macros to protect CRT calls against instant termination when passed an -// invalid parameter (bpo-23524). IPH stands for Invalid Parameter Handler. -// Usage: -// -// _Py_BEGIN_SUPPRESS_IPH -// ... -// _Py_END_SUPPRESS_IPH -#if defined _MSC_VER && _MSC_VER >= 1900 - -# include // _set_thread_local_invalid_parameter_handler() - - extern _invalid_parameter_handler _Py_silent_invalid_parameter_handler; -# define _Py_BEGIN_SUPPRESS_IPH \ - { _invalid_parameter_handler _Py_old_handler = \ - _set_thread_local_invalid_parameter_handler(_Py_silent_invalid_parameter_handler); -# define _Py_END_SUPPRESS_IPH \ - _set_thread_local_invalid_parameter_handler(_Py_old_handler); } -#else -# define _Py_BEGIN_SUPPRESS_IPH -# define _Py_END_SUPPRESS_IPH -#endif /* _MSC_VER >= 1900 */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FILEUTILS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_fileutils_windows.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_fileutils_windows.h deleted file mode 100644 index e804d38..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_fileutils_windows.h +++ /dev/null @@ -1,98 +0,0 @@ -#ifndef Py_INTERNAL_FILEUTILS_WINDOWS_H -#define Py_INTERNAL_FILEUTILS_WINDOWS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "Py_BUILD_CORE must be defined to include this header" -#endif - -#ifdef MS_WINDOWS - -#if !defined(NTDDI_WIN10_NI) || !(NTDDI_VERSION >= NTDDI_WIN10_NI) -typedef struct _FILE_STAT_BASIC_INFORMATION { - LARGE_INTEGER FileId; - LARGE_INTEGER CreationTime; - LARGE_INTEGER LastAccessTime; - LARGE_INTEGER LastWriteTime; - LARGE_INTEGER ChangeTime; - LARGE_INTEGER AllocationSize; - LARGE_INTEGER EndOfFile; - ULONG FileAttributes; - ULONG ReparseTag; - ULONG NumberOfLinks; - ULONG DeviceType; - ULONG DeviceCharacteristics; - ULONG Reserved; - LARGE_INTEGER VolumeSerialNumber; - FILE_ID_128 FileId128; -} FILE_STAT_BASIC_INFORMATION; - -typedef enum _FILE_INFO_BY_NAME_CLASS { - FileStatByNameInfo, - FileStatLxByNameInfo, - FileCaseSensitiveByNameInfo, - FileStatBasicByNameInfo, - MaximumFileInfoByNameClass -} FILE_INFO_BY_NAME_CLASS; -#endif - -typedef BOOL (WINAPI *PGetFileInformationByName)( - PCWSTR FileName, - FILE_INFO_BY_NAME_CLASS FileInformationClass, - PVOID FileInfoBuffer, - ULONG FileInfoBufferSize -); - -static inline BOOL _Py_GetFileInformationByName( - PCWSTR FileName, - FILE_INFO_BY_NAME_CLASS FileInformationClass, - PVOID FileInfoBuffer, - ULONG FileInfoBufferSize -) { - static PGetFileInformationByName GetFileInformationByName = NULL; - static int GetFileInformationByName_init = -1; - - if (GetFileInformationByName_init < 0) { - HMODULE hMod = LoadLibraryW(L"api-ms-win-core-file-l2-1-4"); - GetFileInformationByName_init = 0; - if (hMod) { - GetFileInformationByName = (PGetFileInformationByName)GetProcAddress( - hMod, "GetFileInformationByName"); - if (GetFileInformationByName) { - GetFileInformationByName_init = 1; - } else { - FreeLibrary(hMod); - } - } - } - - if (GetFileInformationByName_init <= 0) { - SetLastError(ERROR_NOT_SUPPORTED); - return FALSE; - } - return GetFileInformationByName(FileName, FileInformationClass, FileInfoBuffer, FileInfoBufferSize); -} - -static inline BOOL _Py_GetFileInformationByName_ErrorIsTrustworthy(int error) -{ - switch(error) { - case ERROR_FILE_NOT_FOUND: - case ERROR_PATH_NOT_FOUND: - case ERROR_NOT_READY: - case ERROR_BAD_NET_NAME: - case ERROR_BAD_NETPATH: - case ERROR_BAD_PATHNAME: - case ERROR_INVALID_NAME: - case ERROR_FILENAME_EXCED_RANGE: - return TRUE; - case ERROR_NOT_SUPPORTED: - return FALSE; - } - return FALSE; -} - -#endif - -#endif diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_floatobject.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_floatobject.h deleted file mode 100644 index 27c63bc..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_floatobject.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef Py_INTERNAL_FLOATOBJECT_H -#define Py_INTERNAL_FLOATOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* runtime lifecycle */ - -extern void _PyFloat_InitState(PyInterpreterState *); -extern PyStatus _PyFloat_InitTypes(PyInterpreterState *); -extern void _PyFloat_Fini(PyInterpreterState *); -extern void _PyFloat_FiniType(PyInterpreterState *); - - -/* other API */ - -enum _py_float_format_type { - _py_float_format_unknown, - _py_float_format_ieee_big_endian, - _py_float_format_ieee_little_endian, -}; - -struct _Py_float_runtime_state { - enum _py_float_format_type float_format; - enum _py_float_format_type double_format; -}; - - -#ifndef WITH_FREELISTS -// without freelists -# define PyFloat_MAXFREELIST 0 -#endif - -#ifndef PyFloat_MAXFREELIST -# define PyFloat_MAXFREELIST 100 -#endif - -struct _Py_float_state { -#if PyFloat_MAXFREELIST > 0 - /* Special free list - free_list is a singly-linked list of available PyFloatObjects, - linked via abuse of their ob_type members. */ - int numfree; - PyFloatObject *free_list; -#endif -}; - -void _PyFloat_ExactDealloc(PyObject *op); - - -PyAPI_FUNC(void) _PyFloat_DebugMallocStats(FILE* out); - - -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -PyAPI_FUNC(int) _PyFloat_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FLOATOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_flowgraph.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_flowgraph.h deleted file mode 100644 index 98d3374..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_flowgraph.h +++ /dev/null @@ -1,120 +0,0 @@ -#ifndef Py_INTERNAL_CFG_H -#define Py_INTERNAL_CFG_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_opcode_utils.h" -#include "pycore_compile.h" - - -typedef struct { - int i_opcode; - int i_oparg; - _PyCompilerSrcLocation i_loc; - struct _PyCfgBasicblock_ *i_target; /* target block (if jump instruction) */ - struct _PyCfgBasicblock_ *i_except; /* target block when exception is raised */ -} _PyCfgInstruction; - -typedef struct { - int id; -} _PyCfgJumpTargetLabel; - - -typedef struct { - struct _PyCfgBasicblock_ *handlers[CO_MAXBLOCKS+2]; - int depth; -} _PyCfgExceptStack; - -typedef struct _PyCfgBasicblock_ { - /* Each basicblock in a compilation unit is linked via b_list in the - reverse order that the block are allocated. b_list points to the next - block in this list, not to be confused with b_next, which is next by - control flow. */ - struct _PyCfgBasicblock_ *b_list; - /* The label of this block if it is a jump target, -1 otherwise */ - _PyCfgJumpTargetLabel b_label; - /* Exception stack at start of block, used by assembler to create the exception handling table */ - _PyCfgExceptStack *b_exceptstack; - /* pointer to an array of instructions, initially NULL */ - _PyCfgInstruction *b_instr; - /* If b_next is non-NULL, it is a pointer to the next - block reached by normal control flow. */ - struct _PyCfgBasicblock_ *b_next; - /* number of instructions used */ - int b_iused; - /* length of instruction array (b_instr) */ - int b_ialloc; - /* Used by add_checks_for_loads_of_unknown_variables */ - uint64_t b_unsafe_locals_mask; - /* Number of predecessors that a block has. */ - int b_predecessors; - /* depth of stack upon entry of block, computed by stackdepth() */ - int b_startdepth; - /* instruction offset for block, computed by assemble_jump_offsets() */ - int b_offset; - /* Basic block is an exception handler that preserves lasti */ - unsigned b_preserve_lasti : 1; - /* Used by compiler passes to mark whether they have visited a basic block. */ - unsigned b_visited : 1; - /* b_except_handler is used by the cold-detection algorithm to mark exception targets */ - unsigned b_except_handler : 1; - /* b_cold is true if this block is not perf critical (like an exception handler) */ - unsigned b_cold : 1; - /* b_warm is used by the cold-detection algorithm to mark blocks which are definitely not cold */ - unsigned b_warm : 1; -} _PyCfgBasicblock; - -int _PyBasicblock_InsertInstruction(_PyCfgBasicblock *block, int pos, _PyCfgInstruction *instr); - -typedef struct cfg_builder_ { - /* The entryblock, at which control flow begins. All blocks of the - CFG are reachable through the b_next links */ - _PyCfgBasicblock *g_entryblock; - /* Pointer to the most recently allocated block. By following - b_list links, you can reach all allocated blocks. */ - _PyCfgBasicblock *g_block_list; - /* pointer to the block currently being constructed */ - _PyCfgBasicblock *g_curblock; - /* label for the next instruction to be placed */ - _PyCfgJumpTargetLabel g_current_label; -} _PyCfgBuilder; - -int _PyCfgBuilder_UseLabel(_PyCfgBuilder *g, _PyCfgJumpTargetLabel lbl); -int _PyCfgBuilder_Addop(_PyCfgBuilder *g, int opcode, int oparg, _PyCompilerSrcLocation loc); - -int _PyCfgBuilder_Init(_PyCfgBuilder *g); -void _PyCfgBuilder_Fini(_PyCfgBuilder *g); - -_PyCfgInstruction* _PyCfg_BasicblockLastInstr(const _PyCfgBasicblock *b); -int _PyCfg_OptimizeCodeUnit(_PyCfgBuilder *g, PyObject *consts, PyObject *const_cache, - int code_flags, int nlocals, int nparams, int firstlineno); -int _PyCfg_Stackdepth(_PyCfgBasicblock *entryblock, int code_flags); -void _PyCfg_ConvertPseudoOps(_PyCfgBasicblock *entryblock); -int _PyCfg_ResolveJumps(_PyCfgBuilder *g); - - -static inline int -basicblock_nofallthrough(const _PyCfgBasicblock *b) { - _PyCfgInstruction *last = _PyCfg_BasicblockLastInstr(b); - return (last && - (IS_SCOPE_EXIT_OPCODE(last->i_opcode) || - IS_UNCONDITIONAL_JUMP_OPCODE(last->i_opcode))); -} - -#define BB_NO_FALLTHROUGH(B) (basicblock_nofallthrough(B)) -#define BB_HAS_FALLTHROUGH(B) (!basicblock_nofallthrough(B)) - -PyCodeObject * -_PyAssemble_MakeCodeObject(_PyCompile_CodeUnitMetadata *u, PyObject *const_cache, - PyObject *consts, int maxdepth, _PyCompile_InstructionSequence *instrs, - int nlocalsplus, int code_flags, PyObject *filename); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CFG_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_format.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_format.h deleted file mode 100644 index 1b8d575..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_format.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef Py_INTERNAL_FORMAT_H -#define Py_INTERNAL_FORMAT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Format codes - * F_LJUST '-' - * F_SIGN '+' - * F_BLANK ' ' - * F_ALT '#' - * F_ZERO '0' - */ -#define F_LJUST (1<<0) -#define F_SIGN (1<<1) -#define F_BLANK (1<<2) -#define F_ALT (1<<3) -#define F_ZERO (1<<4) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FORMAT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_frame.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_frame.h deleted file mode 100644 index bfe4a75..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_frame.h +++ /dev/null @@ -1,283 +0,0 @@ -#ifndef Py_INTERNAL_FRAME_H -#define Py_INTERNAL_FRAME_H -#ifdef __cplusplus -extern "C" { -#endif - -#include -#include -#include "pycore_code.h" // STATS - -/* See Objects/frame_layout.md for an explanation of the frame stack - * including explanation of the PyFrameObject and _PyInterpreterFrame - * structs. */ - - -struct _frame { - PyObject_HEAD - PyFrameObject *f_back; /* previous frame, or NULL */ - struct _PyInterpreterFrame *f_frame; /* points to the frame data */ - PyObject *f_trace; /* Trace function */ - int f_lineno; /* Current line number. Only valid if non-zero */ - char f_trace_lines; /* Emit per-line trace events? */ - char f_trace_opcodes; /* Emit per-opcode trace events? */ - char f_fast_as_locals; /* Have the fast locals of this frame been converted to a dict? */ - /* The frame data, if this frame object owns the frame */ - PyObject *_f_frame_data[1]; -}; - -extern PyFrameObject* _PyFrame_New_NoTrack(PyCodeObject *code); - - -/* other API */ - -typedef enum _framestate { - FRAME_CREATED = -2, - FRAME_SUSPENDED = -1, - FRAME_EXECUTING = 0, - FRAME_COMPLETED = 1, - FRAME_CLEARED = 4 -} PyFrameState; - -#define FRAME_STATE_FINISHED(S) ((S) >= FRAME_COMPLETED) - -enum _frameowner { - FRAME_OWNED_BY_THREAD = 0, - FRAME_OWNED_BY_GENERATOR = 1, - FRAME_OWNED_BY_FRAME_OBJECT = 2, - FRAME_OWNED_BY_CSTACK = 3, -}; - -typedef struct _PyInterpreterFrame { - PyCodeObject *f_code; /* Strong reference */ - struct _PyInterpreterFrame *previous; - PyObject *f_funcobj; /* Strong reference. Only valid if not on C stack */ - PyObject *f_globals; /* Borrowed reference. Only valid if not on C stack */ - PyObject *f_builtins; /* Borrowed reference. Only valid if not on C stack */ - PyObject *f_locals; /* Strong reference, may be NULL. Only valid if not on C stack */ - PyFrameObject *frame_obj; /* Strong reference, may be NULL. Only valid if not on C stack */ - // NOTE: This is not necessarily the last instruction started in the given - // frame. Rather, it is the code unit *prior to* the *next* instruction. For - // example, it may be an inline CACHE entry, an instruction we just jumped - // over, or (in the case of a newly-created frame) a totally invalid value: - _Py_CODEUNIT *prev_instr; - int stacktop; /* Offset of TOS from localsplus */ - /* The return_offset determines where a `RETURN` should go in the caller, - * relative to `prev_instr`. - * It is only meaningful to the callee, - * so it needs to be set in any CALL (to a Python function) - * or SEND (to a coroutine or generator). - * If there is no callee, then it is meaningless. */ - uint16_t return_offset; - char owner; - /* Locals and stack */ - PyObject *localsplus[1]; -} _PyInterpreterFrame; - -#define _PyInterpreterFrame_LASTI(IF) \ - ((int)((IF)->prev_instr - _PyCode_CODE((IF)->f_code))) - -static inline PyObject **_PyFrame_Stackbase(_PyInterpreterFrame *f) { - return f->localsplus + f->f_code->co_nlocalsplus; -} - -static inline PyObject *_PyFrame_StackPeek(_PyInterpreterFrame *f) { - assert(f->stacktop > f->f_code->co_nlocalsplus); - assert(f->localsplus[f->stacktop-1] != NULL); - return f->localsplus[f->stacktop-1]; -} - -static inline PyObject *_PyFrame_StackPop(_PyInterpreterFrame *f) { - assert(f->stacktop > f->f_code->co_nlocalsplus); - f->stacktop--; - return f->localsplus[f->stacktop]; -} - -static inline void _PyFrame_StackPush(_PyInterpreterFrame *f, PyObject *value) { - f->localsplus[f->stacktop] = value; - f->stacktop++; -} - -#define FRAME_SPECIALS_SIZE ((int)((sizeof(_PyInterpreterFrame)-1)/sizeof(PyObject *))) - -static inline int -_PyFrame_NumSlotsForCodeObject(PyCodeObject *code) -{ - /* This function needs to remain in sync with the calculation of - * co_framesize in Tools/build/deepfreeze.py */ - assert(code->co_framesize >= FRAME_SPECIALS_SIZE); - return code->co_framesize - FRAME_SPECIALS_SIZE; -} - -void _PyFrame_Copy(_PyInterpreterFrame *src, _PyInterpreterFrame *dest); - -/* Consumes reference to func and locals. - Does not initialize frame->previous, which happens - when frame is linked into the frame stack. - */ -static inline void -_PyFrame_Initialize( - _PyInterpreterFrame *frame, PyFunctionObject *func, - PyObject *locals, PyCodeObject *code, int null_locals_from) -{ - frame->f_funcobj = (PyObject *)func; - frame->f_code = (PyCodeObject *)Py_NewRef(code); - frame->f_builtins = func->func_builtins; - frame->f_globals = func->func_globals; - frame->f_locals = locals; - frame->stacktop = code->co_nlocalsplus; - frame->frame_obj = NULL; - frame->prev_instr = _PyCode_CODE(code) - 1; - frame->return_offset = 0; - frame->owner = FRAME_OWNED_BY_THREAD; - - for (int i = null_locals_from; i < code->co_nlocalsplus; i++) { - frame->localsplus[i] = NULL; - } -} - -/* Gets the pointer to the locals array - * that precedes this frame. - */ -static inline PyObject** -_PyFrame_GetLocalsArray(_PyInterpreterFrame *frame) -{ - return frame->localsplus; -} - -/* Fetches the stack pointer, and sets stacktop to -1. - Having stacktop <= 0 ensures that invalid - values are not visible to the cycle GC. - We choose -1 rather than 0 to assist debugging. */ -static inline PyObject** -_PyFrame_GetStackPointer(_PyInterpreterFrame *frame) -{ - PyObject **sp = frame->localsplus + frame->stacktop; - frame->stacktop = -1; - return sp; -} - -static inline void -_PyFrame_SetStackPointer(_PyInterpreterFrame *frame, PyObject **stack_pointer) -{ - frame->stacktop = (int)(stack_pointer - frame->localsplus); -} - -/* Determine whether a frame is incomplete. - * A frame is incomplete if it is part way through - * creating cell objects or a generator or coroutine. - * - * Frames on the frame stack are incomplete until the - * first RESUME instruction. - * Frames owned by a generator are always complete. - */ -static inline bool -_PyFrame_IsIncomplete(_PyInterpreterFrame *frame) -{ - return frame->owner != FRAME_OWNED_BY_GENERATOR && - frame->prev_instr < _PyCode_CODE(frame->f_code) + frame->f_code->_co_firsttraceable; -} - -static inline _PyInterpreterFrame * -_PyFrame_GetFirstComplete(_PyInterpreterFrame *frame) -{ - while (frame && _PyFrame_IsIncomplete(frame)) { - frame = frame->previous; - } - return frame; -} - -static inline _PyInterpreterFrame * -_PyThreadState_GetFrame(PyThreadState *tstate) -{ - return _PyFrame_GetFirstComplete(tstate->cframe->current_frame); -} - -/* For use by _PyFrame_GetFrameObject - Do not call directly. */ -PyFrameObject * -_PyFrame_MakeAndSetFrameObject(_PyInterpreterFrame *frame); - -/* Gets the PyFrameObject for this frame, lazily - * creating it if necessary. - * Returns a borrowed referennce */ -static inline PyFrameObject * -_PyFrame_GetFrameObject(_PyInterpreterFrame *frame) -{ - - assert(!_PyFrame_IsIncomplete(frame)); - PyFrameObject *res = frame->frame_obj; - if (res != NULL) { - return res; - } - return _PyFrame_MakeAndSetFrameObject(frame); -} - -/* Clears all references in the frame. - * If take is non-zero, then the _PyInterpreterFrame frame - * may be transferred to the frame object it references - * instead of being cleared. Either way - * the caller no longer owns the references - * in the frame. - * take should be set to 1 for heap allocated - * frames like the ones in generators and coroutines. - */ -void -_PyFrame_ClearExceptCode(_PyInterpreterFrame * frame); - -int -_PyFrame_Traverse(_PyInterpreterFrame *frame, visitproc visit, void *arg); - -PyObject * -_PyFrame_GetLocals(_PyInterpreterFrame *frame, int include_hidden); - -int -_PyFrame_FastToLocalsWithError(_PyInterpreterFrame *frame); - -void -_PyFrame_LocalsToFast(_PyInterpreterFrame *frame, int clear); - -static inline bool -_PyThreadState_HasStackSpace(PyThreadState *tstate, int size) -{ - assert( - (tstate->datastack_top == NULL && tstate->datastack_limit == NULL) - || - (tstate->datastack_top != NULL && tstate->datastack_limit != NULL) - ); - return tstate->datastack_top != NULL && - size < tstate->datastack_limit - tstate->datastack_top; -} - -extern _PyInterpreterFrame * -_PyThreadState_PushFrame(PyThreadState *tstate, size_t size); - -void _PyThreadState_PopFrame(PyThreadState *tstate, _PyInterpreterFrame *frame); - -/* Pushes a frame without checking for space. - * Must be guarded by _PyThreadState_HasStackSpace() - * Consumes reference to func. */ -static inline _PyInterpreterFrame * -_PyFrame_PushUnchecked(PyThreadState *tstate, PyFunctionObject *func, int null_locals_from) -{ - CALL_STAT_INC(frames_pushed); - PyCodeObject *code = (PyCodeObject *)func->func_code; - _PyInterpreterFrame *new_frame = (_PyInterpreterFrame *)tstate->datastack_top; - tstate->datastack_top += code->co_framesize; - assert(tstate->datastack_top < tstate->datastack_limit); - _PyFrame_Initialize(new_frame, func, NULL, code, null_locals_from); - return new_frame; -} - -static inline -PyGenObject *_PyFrame_GetGenerator(_PyInterpreterFrame *frame) -{ - assert(frame->owner == FRAME_OWNED_BY_GENERATOR); - size_t offset_in_gen = offsetof(PyGenObject, gi_iframe); - return (PyGenObject *)(((char *)frame) - offset_in_gen); -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FRAME_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_function.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_function.h deleted file mode 100644 index ecbb700..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_function.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef Py_INTERNAL_FUNCTION_H -#define Py_INTERNAL_FUNCTION_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#define FUNC_MAX_WATCHERS 8 - -struct _py_func_state { - uint32_t next_version; -}; - -extern PyFunctionObject* _PyFunction_FromConstructor(PyFrameConstructor *constr); - -extern uint32_t _PyFunction_GetVersionForCurrentState(PyFunctionObject *func); -extern PyObject *_Py_set_function_type_params( - PyThreadState* unused, PyObject *func, PyObject *type_params); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_FUNCTION_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_gc.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_gc.h deleted file mode 100644 index b3abe20..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_gc.h +++ /dev/null @@ -1,211 +0,0 @@ -#ifndef Py_INTERNAL_GC_H -#define Py_INTERNAL_GC_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* GC information is stored BEFORE the object structure. */ -typedef struct { - // Pointer to next object in the list. - // 0 means the object is not tracked - uintptr_t _gc_next; - - // Pointer to previous object in the list. - // Lowest two bits are used for flags documented later. - uintptr_t _gc_prev; -} PyGC_Head; - -static inline PyGC_Head* _Py_AS_GC(PyObject *op) { - return (_Py_CAST(PyGC_Head*, op) - 1); -} -#define _PyGC_Head_UNUSED PyGC_Head - -/* True if the object is currently tracked by the GC. */ -static inline int _PyObject_GC_IS_TRACKED(PyObject *op) { - PyGC_Head *gc = _Py_AS_GC(op); - return (gc->_gc_next != 0); -} -#define _PyObject_GC_IS_TRACKED(op) _PyObject_GC_IS_TRACKED(_Py_CAST(PyObject*, op)) - -/* True if the object may be tracked by the GC in the future, or already is. - This can be useful to implement some optimizations. */ -static inline int _PyObject_GC_MAY_BE_TRACKED(PyObject *obj) { - if (!PyObject_IS_GC(obj)) { - return 0; - } - if (PyTuple_CheckExact(obj)) { - return _PyObject_GC_IS_TRACKED(obj); - } - return 1; -} - - -/* Bit flags for _gc_prev */ -/* Bit 0 is set when tp_finalize is called */ -#define _PyGC_PREV_MASK_FINALIZED (1) -/* Bit 1 is set when the object is in generation which is GCed currently. */ -#define _PyGC_PREV_MASK_COLLECTING (2) -/* The (N-2) most significant bits contain the real address. */ -#define _PyGC_PREV_SHIFT (2) -#define _PyGC_PREV_MASK (((uintptr_t) -1) << _PyGC_PREV_SHIFT) - -// Lowest bit of _gc_next is used for flags only in GC. -// But it is always 0 for normal code. -static inline PyGC_Head* _PyGCHead_NEXT(PyGC_Head *gc) { - uintptr_t next = gc->_gc_next; - return _Py_CAST(PyGC_Head*, next); -} -static inline void _PyGCHead_SET_NEXT(PyGC_Head *gc, PyGC_Head *next) { - gc->_gc_next = _Py_CAST(uintptr_t, next); -} - -// Lowest two bits of _gc_prev is used for _PyGC_PREV_MASK_* flags. -static inline PyGC_Head* _PyGCHead_PREV(PyGC_Head *gc) { - uintptr_t prev = (gc->_gc_prev & _PyGC_PREV_MASK); - return _Py_CAST(PyGC_Head*, prev); -} -static inline void _PyGCHead_SET_PREV(PyGC_Head *gc, PyGC_Head *prev) { - uintptr_t uprev = _Py_CAST(uintptr_t, prev); - assert((uprev & ~_PyGC_PREV_MASK) == 0); - gc->_gc_prev = ((gc->_gc_prev & ~_PyGC_PREV_MASK) | uprev); -} - -static inline int _PyGCHead_FINALIZED(PyGC_Head *gc) { - return ((gc->_gc_prev & _PyGC_PREV_MASK_FINALIZED) != 0); -} -static inline void _PyGCHead_SET_FINALIZED(PyGC_Head *gc) { - gc->_gc_prev |= _PyGC_PREV_MASK_FINALIZED; -} - -static inline int _PyGC_FINALIZED(PyObject *op) { - PyGC_Head *gc = _Py_AS_GC(op); - return _PyGCHead_FINALIZED(gc); -} -static inline void _PyGC_SET_FINALIZED(PyObject *op) { - PyGC_Head *gc = _Py_AS_GC(op); - _PyGCHead_SET_FINALIZED(gc); -} - - -/* GC runtime state */ - -/* If we change this, we need to change the default value in the - signature of gc.collect. */ -#define NUM_GENERATIONS 3 -/* - NOTE: about untracking of mutable objects. - - Certain types of container cannot participate in a reference cycle, and - so do not need to be tracked by the garbage collector. Untracking these - objects reduces the cost of garbage collections. However, determining - which objects may be untracked is not free, and the costs must be - weighed against the benefits for garbage collection. - - There are two possible strategies for when to untrack a container: - - i) When the container is created. - ii) When the container is examined by the garbage collector. - - Tuples containing only immutable objects (integers, strings etc, and - recursively, tuples of immutable objects) do not need to be tracked. - The interpreter creates a large number of tuples, many of which will - not survive until garbage collection. It is therefore not worthwhile - to untrack eligible tuples at creation time. - - Instead, all tuples except the empty tuple are tracked when created. - During garbage collection it is determined whether any surviving tuples - can be untracked. A tuple can be untracked if all of its contents are - already not tracked. Tuples are examined for untracking in all garbage - collection cycles. It may take more than one cycle to untrack a tuple. - - Dictionaries containing only immutable objects also do not need to be - tracked. Dictionaries are untracked when created. If a tracked item is - inserted into a dictionary (either as a key or value), the dictionary - becomes tracked. During a full garbage collection (all generations), - the collector will untrack any dictionaries whose contents are not - tracked. - - The module provides the python function is_tracked(obj), which returns - the CURRENT tracking status of the object. Subsequent garbage - collections may change the tracking status of the object. - - Untracking of certain containers was introduced in issue #4688, and - the algorithm was refined in response to issue #14775. -*/ - -struct gc_generation { - PyGC_Head head; - int threshold; /* collection threshold */ - int count; /* count of allocations or collections of younger - generations */ -}; - -/* Running stats per generation */ -struct gc_generation_stats { - /* total number of collections */ - Py_ssize_t collections; - /* total number of collected objects */ - Py_ssize_t collected; - /* total number of uncollectable objects (put into gc.garbage) */ - Py_ssize_t uncollectable; -}; - -struct _gc_runtime_state { - /* List of objects that still need to be cleaned up, singly linked - * via their gc headers' gc_prev pointers. */ - PyObject *trash_delete_later; - /* Current call-stack depth of tp_dealloc calls. */ - int trash_delete_nesting; - - /* Is automatic collection enabled? */ - int enabled; - int debug; - /* linked lists of container objects */ - struct gc_generation generations[NUM_GENERATIONS]; - PyGC_Head *generation0; - /* a permanent generation which won't be collected */ - struct gc_generation permanent_generation; - struct gc_generation_stats generation_stats[NUM_GENERATIONS]; - /* true if we are currently running the collector */ - int collecting; - /* list of uncollectable objects */ - PyObject *garbage; - /* a list of callbacks to be invoked when collection is performed */ - PyObject *callbacks; - /* This is the number of objects that survived the last full - collection. It approximates the number of long lived objects - tracked by the GC. - - (by "full collection", we mean a collection of the oldest - generation). */ - Py_ssize_t long_lived_total; - /* This is the number of objects that survived all "non-full" - collections, and are awaiting to undergo a full collection for - the first time. */ - Py_ssize_t long_lived_pending; -}; - - -extern void _PyGC_InitState(struct _gc_runtime_state *); - -extern Py_ssize_t _PyGC_CollectNoFail(PyThreadState *tstate); - - -// Functions to clear types free lists -extern void _PyTuple_ClearFreeList(PyInterpreterState *interp); -extern void _PyFloat_ClearFreeList(PyInterpreterState *interp); -extern void _PyList_ClearFreeList(PyInterpreterState *interp); -extern void _PyDict_ClearFreeList(PyInterpreterState *interp); -extern void _PyAsyncGen_ClearFreeLists(PyInterpreterState *interp); -extern void _PyContext_ClearFreeList(PyInterpreterState *interp); -extern void _Py_ScheduleGC(PyInterpreterState *interp); -extern void _Py_RunGC(PyThreadState *tstate); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GC_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_genobject.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_genobject.h deleted file mode 100644 index dc60b4c..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_genobject.h +++ /dev/null @@ -1,49 +0,0 @@ -#ifndef Py_INTERNAL_GENOBJECT_H -#define Py_INTERNAL_GENOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern PyObject *_PyGen_yf(PyGenObject *); -extern PyObject *_PyCoro_GetAwaitableIter(PyObject *o); -extern PyObject *_PyAsyncGenValueWrapperNew(PyThreadState *state, PyObject *); - -/* runtime lifecycle */ - -extern void _PyAsyncGen_Fini(PyInterpreterState *); - - -/* other API */ - -#ifndef WITH_FREELISTS -// without freelists -# define _PyAsyncGen_MAXFREELIST 0 -#endif - -#ifndef _PyAsyncGen_MAXFREELIST -# define _PyAsyncGen_MAXFREELIST 80 -#endif - -struct _Py_async_gen_state { -#if _PyAsyncGen_MAXFREELIST > 0 - /* Freelists boost performance 6-10%; they also reduce memory - fragmentation, as _PyAsyncGenWrappedValue and PyAsyncGenASend - are short-living objects that are instantiated for every - __anext__() call. */ - struct _PyAsyncGenWrappedValue* value_freelist[_PyAsyncGen_MAXFREELIST]; - int value_numfree; - - struct PyAsyncGenASend* asend_freelist[_PyAsyncGen_MAXFREELIST]; - int asend_numfree; -#endif -}; - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GENOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_getopt.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_getopt.h deleted file mode 100644 index 7f0dd13..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_getopt.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef Py_INTERNAL_PYGETOPT_H -#define Py_INTERNAL_PYGETOPT_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern int _PyOS_opterr; -extern Py_ssize_t _PyOS_optind; -extern const wchar_t *_PyOS_optarg; - -extern void _PyOS_ResetGetOpt(void); - -typedef struct { - const wchar_t *name; - int has_arg; - int val; -} _PyOS_LongOption; - -extern int _PyOS_GetOpt(Py_ssize_t argc, wchar_t * const *argv, int *longindex); - -#endif /* !Py_INTERNAL_PYGETOPT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_gil.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_gil.h deleted file mode 100644 index 8ebad37..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_gil.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef Py_INTERNAL_GIL_H -#define Py_INTERNAL_GIL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_atomic.h" /* _Py_atomic_address */ -#include "pycore_condvar.h" /* PyCOND_T */ - -#ifndef Py_HAVE_CONDVAR -# error You need either a POSIX-compatible or a Windows system! -#endif - -/* Enable if you want to force the switching of threads at least - every `interval`. */ -#undef FORCE_SWITCHING -#define FORCE_SWITCHING - -struct _gil_runtime_state { - /* microseconds (the Python API uses seconds, though) */ - unsigned long interval; - /* Last PyThreadState holding / having held the GIL. This helps us - know whether anyone else was scheduled after we dropped the GIL. */ - _Py_atomic_address last_holder; - /* Whether the GIL is already taken (-1 if uninitialized). This is - atomic because it can be read without any lock taken in ceval.c. */ - _Py_atomic_int locked; - /* Number of GIL switches since the beginning. */ - unsigned long switch_number; - /* This condition variable allows one or several threads to wait - until the GIL is released. In addition, the mutex also protects - the above variables. */ - PyCOND_T cond; - PyMUTEX_T mutex; -#ifdef FORCE_SWITCHING - /* This condition variable helps the GIL-releasing thread wait for - a GIL-awaiting thread to be scheduled and take the GIL. */ - PyCOND_T switch_cond; - PyMUTEX_T switch_mutex; -#endif -}; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GIL_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_global_objects.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_global_objects.h deleted file mode 100644 index 442f851..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_global_objects.h +++ /dev/null @@ -1,105 +0,0 @@ -#ifndef Py_INTERNAL_GLOBAL_OBJECTS_H -#define Py_INTERNAL_GLOBAL_OBJECTS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_hashtable.h" // _Py_hashtable_t -#include "pycore_gc.h" // PyGC_Head -#include "pycore_global_strings.h" // struct _Py_global_strings -#include "pycore_hamt.h" // PyHamtNode_Bitmap -#include "pycore_context.h" // _PyContextTokenMissing -#include "pycore_typeobject.h" // pytype_slotdef - - -// These would be in pycore_long.h if it weren't for an include cycle. -#define _PY_NSMALLPOSINTS 257 -#define _PY_NSMALLNEGINTS 5 - - -// Only immutable objects should be considered runtime-global. -// All others must be per-interpreter. - -#define _Py_GLOBAL_OBJECT(NAME) \ - _PyRuntime.static_objects.NAME -#define _Py_SINGLETON(NAME) \ - _Py_GLOBAL_OBJECT(singletons.NAME) - -struct _Py_cached_objects { - // XXX We could statically allocate the hashtable. - _Py_hashtable_t *interned_strings; -}; - -struct _Py_static_objects { - struct { - /* Small integers are preallocated in this array so that they - * can be shared. - * The integers that are preallocated are those in the range - * -_PY_NSMALLNEGINTS (inclusive) to _PY_NSMALLPOSINTS (exclusive). - */ - PyLongObject small_ints[_PY_NSMALLNEGINTS + _PY_NSMALLPOSINTS]; - - PyBytesObject bytes_empty; - struct { - PyBytesObject ob; - char eos; - } bytes_characters[256]; - - struct _Py_global_strings strings; - - _PyGC_Head_UNUSED _tuple_empty_gc_not_used; - PyTupleObject tuple_empty; - - _PyGC_Head_UNUSED _hamt_bitmap_node_empty_gc_not_used; - PyHamtNode_Bitmap hamt_bitmap_node_empty; - _PyContextTokenMissing context_token_missing; - } singletons; -}; - -#define _Py_INTERP_CACHED_OBJECT(interp, NAME) \ - (interp)->cached_objects.NAME - -struct _Py_interp_cached_objects { - PyObject *interned_strings; - - /* AST */ - PyObject *str_replace_inf; - - /* object.__reduce__ */ - PyObject *objreduce; - PyObject *type_slots_pname; - pytype_slotdef *type_slots_ptrs[MAX_EQUIV]; - - /* TypeVar and related types */ - PyTypeObject *generic_type; - PyTypeObject *typevar_type; - PyTypeObject *typevartuple_type; - PyTypeObject *paramspec_type; - PyTypeObject *paramspecargs_type; - PyTypeObject *paramspeckwargs_type; -}; - -#define _Py_INTERP_STATIC_OBJECT(interp, NAME) \ - (interp)->static_objects.NAME -#define _Py_INTERP_SINGLETON(interp, NAME) \ - _Py_INTERP_STATIC_OBJECT(interp, singletons.NAME) - -struct _Py_interp_static_objects { - struct { - int _not_used; - // hamt_empty is here instead of global because of its weakreflist. - _PyGC_Head_UNUSED _hamt_empty_gc_not_used; - PyHamtObject hamt_empty; - PyBaseExceptionObject last_resort_memory_error; - } singletons; -}; - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GLOBAL_OBJECTS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_global_objects_fini_generated.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_global_objects_fini_generated.h deleted file mode 100644 index 439f47a..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_global_objects_fini_generated.h +++ /dev/null @@ -1,1531 +0,0 @@ -#ifndef Py_INTERNAL_GLOBAL_OBJECTS_FINI_GENERATED_INIT_H -#define Py_INTERNAL_GLOBAL_OBJECTS_FINI_GENERATED_INIT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#ifdef Py_DEBUG -static inline void -_PyStaticObject_CheckRefcnt(PyObject *obj) { - if (Py_REFCNT(obj) < _Py_IMMORTAL_REFCNT) { - fprintf(stderr, "Immortal Object has less refcnt than expected.\n"); - _PyObject_Dump(obj); - } -} -#endif - -/* The following is auto-generated by Tools/build/generate_global_objects.py. */ -#ifdef Py_DEBUG -static inline void -_PyStaticObjects_CheckRefcnt(PyInterpreterState *interp) { - /* generated runtime-global */ - // (see pycore_runtime_init_generated.h) - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + -5]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + -4]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + -3]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + -2]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + -1]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 0]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 1]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 2]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 3]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 4]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 5]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 6]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 7]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 8]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 9]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 10]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 11]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 12]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 13]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 14]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 15]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 16]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 17]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 18]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 19]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 20]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 21]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 22]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 23]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 24]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 25]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 26]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 27]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 28]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 29]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 30]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 31]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 32]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 33]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 34]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 35]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 36]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 37]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 38]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 39]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 40]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 41]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 42]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 43]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 44]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 45]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 46]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 47]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 48]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 49]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 50]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 51]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 52]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 53]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 54]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 55]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 56]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 57]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 58]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 59]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 60]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 61]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 62]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 63]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 64]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 65]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 66]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 67]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 68]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 69]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 70]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 71]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 72]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 73]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 74]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 75]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 76]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 77]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 78]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 79]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 80]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 81]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 82]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 83]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 84]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 85]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 86]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 87]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 88]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 89]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 90]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 91]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 92]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 93]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 94]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 95]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 96]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 97]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 98]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 99]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 100]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 101]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 102]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 103]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 104]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 105]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 106]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 107]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 108]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 109]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 110]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 111]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 112]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 113]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 114]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 115]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 116]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 117]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 118]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 119]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 120]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 121]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 122]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 123]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 124]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 125]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 126]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 127]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 129]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 130]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 131]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 132]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 133]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 134]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 135]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 136]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 137]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 138]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 139]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 140]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 141]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 142]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 143]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 144]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 145]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 146]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 147]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 148]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 149]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 150]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 151]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 152]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 153]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 154]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 155]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 156]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 157]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 158]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 159]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 160]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 161]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 162]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 163]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 164]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 165]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 166]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 167]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 168]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 169]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 170]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 171]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 172]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 173]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 174]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 175]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 176]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 177]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 178]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 179]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 180]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 181]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 182]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 183]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 184]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 185]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 186]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 187]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 188]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 189]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 190]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 191]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 192]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 193]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 194]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 195]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 196]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 197]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 198]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 199]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 200]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 201]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 202]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 203]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 204]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 205]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 206]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 207]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 208]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 209]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 210]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 211]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 212]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 213]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 214]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 215]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 216]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 217]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 218]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 219]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 220]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 221]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 222]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 223]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 224]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 225]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 226]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 227]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 228]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 229]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 230]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 231]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 232]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 233]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 234]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 235]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 236]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 237]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 238]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 239]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 240]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 241]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 242]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 243]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 244]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 245]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 246]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 247]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 248]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 249]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 250]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 251]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 252]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 253]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 254]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 255]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(small_ints)[_PY_NSMALLNEGINTS + 256]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[0]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[1]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[2]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[3]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[4]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[5]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[6]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[7]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[8]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[9]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[10]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[11]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[12]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[13]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[14]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[15]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[16]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[17]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[18]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[19]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[20]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[21]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[22]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[23]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[24]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[25]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[26]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[27]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[28]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[29]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[30]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[31]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[32]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[33]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[34]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[35]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[36]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[37]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[38]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[39]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[40]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[41]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[42]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[43]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[44]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[45]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[46]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[47]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[48]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[49]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[50]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[51]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[52]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[53]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[54]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[55]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[56]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[57]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[58]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[59]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[60]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[61]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[62]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[63]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[64]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[65]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[66]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[67]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[68]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[69]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[70]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[71]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[72]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[73]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[74]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[75]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[76]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[77]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[78]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[79]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[80]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[81]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[82]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[83]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[84]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[85]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[86]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[87]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[88]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[89]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[90]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[91]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[92]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[93]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[94]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[95]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[96]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[97]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[98]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[99]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[100]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[101]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[102]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[103]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[104]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[105]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[106]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[107]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[108]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[109]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[110]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[111]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[112]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[113]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[114]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[115]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[116]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[117]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[118]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[119]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[120]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[121]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[122]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[123]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[124]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[125]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[126]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[127]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[129]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[130]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[131]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[132]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[133]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[134]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[135]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[136]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[137]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[138]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[139]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[140]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[141]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[142]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[143]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[144]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[145]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[146]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[147]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[148]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[149]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[150]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[151]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[152]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[153]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[154]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[155]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[156]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[157]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[158]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[159]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[160]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[161]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[162]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[163]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[164]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[165]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[166]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[167]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[168]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[169]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[170]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[171]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[172]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[173]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[174]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[175]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[176]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[177]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[178]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[179]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[180]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[181]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[182]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[183]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[184]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[185]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[186]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[187]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[188]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[189]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[190]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[191]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[192]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[193]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[194]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[195]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[196]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[197]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[198]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[199]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[200]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[201]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[202]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[203]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[204]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[205]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[206]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[207]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[208]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[209]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[210]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[211]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[212]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[213]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[214]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[215]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[216]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[217]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[218]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[219]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[220]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[221]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[222]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[223]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[224]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[225]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[226]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[227]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[228]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[229]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[230]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[231]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[232]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[233]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[234]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[235]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[236]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[237]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[238]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[239]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[240]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[241]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[242]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[243]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[244]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[245]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[246]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[247]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[248]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[249]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[250]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[251]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[252]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[253]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[254]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_characters)[255]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(anon_dictcomp)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(anon_genexpr)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(anon_lambda)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(anon_listcomp)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(anon_module)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(anon_setcomp)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(anon_string)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(anon_unknown)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(close_br)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(dbl_close_br)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(dbl_open_br)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(dbl_percent)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(defaults)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(dot)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(dot_locals)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(empty)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(generic_base)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(json_decoder)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(kwdefaults)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(list_err)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(newline)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(open_br)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(percent)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(shim_name)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(type_params)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_STR(utf_8)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(CANCELLED)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(FINISHED)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(False)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(JSONDecodeError)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(PENDING)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(Py_Repr)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(TextIOWrapper)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(True)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(WarningMessage)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_WindowsConsoleIO)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__IOBase_closed)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__abc_tpflags__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__abs__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__abstractmethods__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__add__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__aenter__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__aexit__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__aiter__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__all__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__and__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__anext__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__annotations__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__args__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__asyncio_running_event_loop__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__await__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__bases__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__bool__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__buffer__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__build_class__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__builtins__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__bytes__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__call__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__cantrace__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__class__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__class_getitem__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__classcell__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__classdict__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__classdictcell__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__complex__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__contains__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__copy__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__ctypes_from_outparam__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__del__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__delattr__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__delete__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__delitem__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__dict__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__dictoffset__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__dir__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__divmod__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__doc__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__enter__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__eq__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__exit__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__file__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__float__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__floordiv__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__format__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__fspath__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__ge__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__get__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__getattr__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__getattribute__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__getinitargs__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__getitem__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__getnewargs__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__getnewargs_ex__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__getstate__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__gt__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__hash__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__iadd__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__iand__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__ifloordiv__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__ilshift__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__imatmul__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__imod__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__import__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__imul__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__index__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__init__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__init_subclass__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__instancecheck__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__int__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__invert__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__ior__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__ipow__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__irshift__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__isabstractmethod__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__isub__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__iter__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__itruediv__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__ixor__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__le__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__len__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__length_hint__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__lltrace__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__loader__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__lshift__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__lt__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__main__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__matmul__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__missing__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__mod__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__module__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__mro_entries__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__mul__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__name__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__ne__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__neg__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__new__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__newobj__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__newobj_ex__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__next__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__notes__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__or__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__orig_class__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__origin__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__package__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__parameters__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__path__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__pos__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__pow__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__prepare__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__qualname__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__radd__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rand__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rdivmod__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__reduce__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__reduce_ex__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__release_buffer__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__repr__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__reversed__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rfloordiv__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rlshift__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rmatmul__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rmod__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rmul__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__ror__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__round__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rpow__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rrshift__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rshift__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rsub__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rtruediv__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__rxor__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__set__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__set_name__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__setattr__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__setitem__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__setstate__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__sizeof__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__slotnames__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__slots__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__spec__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__str__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__sub__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__subclasscheck__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__subclasshook__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__truediv__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__trunc__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__type_params__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__typing_is_unpacked_typevartuple__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__typing_prepare_subst__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__typing_subst__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__typing_unpacked_tuple_args__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__warningregistry__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__weaklistoffset__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__weakref__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(__xor__)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_abc_impl)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_abstract_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_active)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_annotation)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_anonymous_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_argtypes_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_as_parameter_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_asyncio_future_blocking)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_blksize)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_bootstrap)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_check_retval_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_dealloc_warn)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_feature_version)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_fields_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_finalizing)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_find_and_load)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_fix_up_module)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_flags_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_get_sourcefile)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_handle_fromlist)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_initializing)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_io)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_is_text_encoding)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_length_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_limbo)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_lock_unlock_module)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_loop)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_needs_com_addref_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_pack_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_restype_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_showwarnmsg)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_shutdown)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_slotnames)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_strptime_datetime)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_swappedbytes_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_type_)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_uninitialized_submodules)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_warn_unawaited_coroutine)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(_xoptions)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(a)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(abs_tol)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(access)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(add)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(add_done_callback)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(after_in_child)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(after_in_parent)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(aggregate_class)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(alias)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(append)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(arg)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(argdefs)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(args)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(arguments)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(argv)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(as_integer_ratio)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(ast)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(attribute)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(authorizer_callback)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(autocommit)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(b)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(backtick)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(base)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(before)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(big)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(binary_form)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(block)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(bound)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(buffer)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(buffer_callback)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(buffer_size)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(buffering)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(buffers)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(bufsize)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(builtins)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(byteorder)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(bytes)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(bytes_per_sep)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(c)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(c_call)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(c_exception)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(c_return)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(cached_statements)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(cadata)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(cafile)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(call)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(call_exception_handler)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(call_soon)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(cancel)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(capath)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(category)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(cb_type)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(certfile)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(check_same_thread)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(clear)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(close)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(closed)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(closefd)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(closure)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_argcount)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_cellvars)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_code)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_consts)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_exceptiontable)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_filename)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_firstlineno)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_flags)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_freevars)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_kwonlyargcount)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_linetable)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_name)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_names)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_nlocals)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_posonlyargcount)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_qualname)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_stacksize)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(co_varnames)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(code)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(command)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(comment_factory)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(compile_mode)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(consts)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(context)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(contravariant)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(cookie)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(copy)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(copyreg)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(coro)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(count)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(covariant)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(cwd)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(d)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(data)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(database)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(decode)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(decoder)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(default)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(defaultaction)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(delete)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(depth)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(detect_types)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(deterministic)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(device)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(dict)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(dictcomp)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(difference_update)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(digest)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(digest_size)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(digestmod)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(dir_fd)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(discard)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(dispatch_table)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(displayhook)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(dklen)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(doc)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(dont_inherit)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(dst)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(dst_dir_fd)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(duration)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(e)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(eager_start)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(effective_ids)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(element_factory)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(encode)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(encoding)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(end)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(end_lineno)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(end_offset)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(endpos)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(entrypoint)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(env)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(errors)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(event)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(eventmask)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(exc_type)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(exc_value)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(excepthook)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(exception)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(existing_file_name)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(exp)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(extend)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(extra_tokens)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(facility)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(factory)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(false)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(family)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fanout)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fd)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fd2)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fdel)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fget)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(file)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(file_actions)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(filename)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fileno)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(filepath)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fillvalue)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(filters)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(final)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(find_class)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fix_imports)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(flags)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(flush)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(follow_symlinks)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(format)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(frequency)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(from_param)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fromlist)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fromtimestamp)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fromutc)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(fset)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(func)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(future)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(generation)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(genexpr)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(get)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(get_debug)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(get_event_loop)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(get_loop)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(get_source)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(getattr)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(getstate)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(gid)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(globals)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(groupindex)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(groups)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(handle)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(hash_name)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(header)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(headers)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(hi)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(hook)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(id)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(ident)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(ignore)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(imag)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(importlib)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(in_fd)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(incoming)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(indexgroup)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(inf)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(infer_variance)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(inheritable)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(initial)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(initial_bytes)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(initial_value)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(initval)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(inner_size)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(input)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(insert_comments)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(insert_pis)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(instructions)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(intern)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(intersection)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(is_running)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(isatty)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(isinstance)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(isoformat)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(isolation_level)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(istext)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(item)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(items)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(iter)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(iterable)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(iterations)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(join)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(jump)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(keepends)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(key)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(keyfile)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(keys)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(kind)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(kw)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(kw1)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(kw2)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(lambda)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(last)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(last_exc)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(last_node)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(last_traceback)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(last_type)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(last_value)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(latin1)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(leaf_size)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(len)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(length)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(level)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(limit)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(line)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(line_buffering)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(lineno)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(listcomp)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(little)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(lo)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(locale)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(locals)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(logoption)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(loop)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(mapping)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(match)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(max_length)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(maxdigits)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(maxevents)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(maxmem)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(maxsplit)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(maxvalue)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(memLevel)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(memlimit)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(message)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(metaclass)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(metadata)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(method)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(mod)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(mode)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(module)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(module_globals)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(modules)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(mro)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(msg)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(mycmp)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(n)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(n_arg)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(n_fields)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(n_sequence_fields)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(n_unnamed_fields)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(name)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(name_from)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(namespace_separator)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(namespaces)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(narg)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(ndigits)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(new_file_name)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(new_limit)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(newline)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(newlines)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(next)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(nlocals)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(node_depth)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(node_offset)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(ns)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(nstype)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(nt)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(null)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(number)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(obj)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(object)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(offset)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(offset_dst)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(offset_src)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(on_type_read)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(onceregistry)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(only_keys)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(oparg)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(opcode)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(open)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(opener)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(operation)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(optimize)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(options)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(order)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(origin)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(out_fd)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(outgoing)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(overlapped)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(owner)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(p)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(pages)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(parent)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(password)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(path)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(pattern)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(peek)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(persistent_id)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(persistent_load)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(person)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(pi_factory)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(pid)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(policy)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(pos)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(pos1)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(pos2)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(posix)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(print_file_and_line)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(priority)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(progress)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(progress_handler)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(progress_routine)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(proto)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(protocol)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(ps1)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(ps2)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(query)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(quotetabs)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(r)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(raw)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(read)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(read1)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(readable)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(readall)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(readinto)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(readinto1)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(readline)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(readonly)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(real)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(reducer_override)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(registry)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(rel_tol)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(release)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(reload)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(repl)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(replace)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(reserved)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(reset)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(resetids)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(return)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(reverse)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(reversed)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(s)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(salt)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(sched_priority)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(scheduler)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(seek)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(seekable)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(selectors)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(self)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(send)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(sep)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(sequence)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(server_hostname)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(server_side)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(session)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(setcomp)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(setpgroup)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(setsid)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(setsigdef)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(setsigmask)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(setstate)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(shape)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(show_cmd)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(signed)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(size)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(sizehint)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(skip_file_prefixes)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(sleep)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(sock)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(sort)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(sound)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(source)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(source_traceback)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(src)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(src_dir_fd)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(stacklevel)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(start)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(statement)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(status)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(stderr)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(stdin)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(stdout)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(step)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(steps)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(store_name)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(strategy)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(strftime)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(strict)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(strict_mode)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(string)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(sub_key)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(symmetric_difference_update)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(tabsize)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(tag)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(target)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(target_is_directory)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(task)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(tb_frame)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(tb_lasti)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(tb_lineno)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(tb_next)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(tell)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(template)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(term)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(text)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(threading)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(throw)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(timeout)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(times)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(timetuple)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(top)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(trace_callback)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(traceback)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(trailers)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(translate)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(true)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(truncate)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(twice)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(txt)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(type)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(type_params)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(tz)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(tzname)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(uid)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(unlink)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(unraisablehook)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(uri)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(usedforsecurity)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(value)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(values)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(version)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(volume)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(warnings)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(warnoptions)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(wbits)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(week)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(weekday)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(which)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(who)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(withdata)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(writable)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(write)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(write_through)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(x)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(year)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_ID(zdict)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[0]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[1]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[2]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[3]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[4]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[5]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[6]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[7]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[8]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[9]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[10]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[11]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[12]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[13]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[14]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[15]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[16]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[17]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[18]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[19]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[20]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[21]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[22]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[23]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[24]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[25]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[26]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[27]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[28]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[29]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[30]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[31]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[32]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[33]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[34]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[35]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[36]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[37]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[38]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[39]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[40]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[41]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[42]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[43]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[44]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[45]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[46]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[47]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[48]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[49]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[50]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[51]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[52]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[53]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[54]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[55]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[56]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[57]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[58]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[59]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[60]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[61]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[62]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[63]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[64]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[65]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[66]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[67]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[68]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[69]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[70]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[71]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[72]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[73]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[74]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[75]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[76]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[77]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[78]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[79]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[80]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[81]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[82]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[83]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[84]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[85]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[86]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[87]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[88]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[89]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[90]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[91]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[92]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[93]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[94]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[95]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[96]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[97]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[98]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[99]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[100]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[101]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[102]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[103]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[104]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[105]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[106]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[107]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[108]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[109]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[110]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[111]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[112]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[113]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[114]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[115]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[116]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[117]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[118]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[119]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[120]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[121]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[122]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[123]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[124]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[125]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[126]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).ascii[127]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[128 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[129 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[130 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[131 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[132 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[133 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[134 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[135 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[136 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[137 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[138 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[139 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[140 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[141 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[142 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[143 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[144 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[145 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[146 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[147 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[148 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[149 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[150 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[151 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[152 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[153 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[154 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[155 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[156 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[157 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[158 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[159 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[160 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[161 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[162 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[163 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[164 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[165 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[166 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[167 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[168 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[169 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[170 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[171 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[172 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[173 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[174 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[175 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[176 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[177 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[178 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[179 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[180 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[181 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[182 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[183 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[184 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[185 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[186 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[187 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[188 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[189 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[190 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[191 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[192 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[193 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[194 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[195 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[196 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[197 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[198 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[199 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[200 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[201 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[202 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[203 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[204 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[205 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[206 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[207 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[208 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[209 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[210 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[211 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[212 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[213 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[214 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[215 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[216 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[217 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[218 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[219 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[220 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[221 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[222 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[223 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[224 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[225 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[226 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[227 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[228 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[229 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[230 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[231 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[232 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[233 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[234 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[235 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[236 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[237 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[238 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[239 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[240 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[241 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[242 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[243 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[244 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[245 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[246 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[247 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[248 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[249 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[250 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[251 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[252 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[253 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[254 - 128]); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(strings).latin1[255 - 128]); - /* non-generated */ - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(bytes_empty)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(tuple_empty)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(hamt_bitmap_node_empty)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_INTERP_SINGLETON(interp, hamt_empty)); - _PyStaticObject_CheckRefcnt((PyObject *)&_Py_SINGLETON(context_token_missing)); -} -#endif // Py_DEBUG -/* End auto-generated code */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GLOBAL_OBJECTS_FINI_GENERATED_INIT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_global_strings.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_global_strings.h deleted file mode 100644 index 0c84999..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_global_strings.h +++ /dev/null @@ -1,787 +0,0 @@ -#ifndef Py_INTERNAL_GLOBAL_STRINGS_H -#define Py_INTERNAL_GLOBAL_STRINGS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -// The data structure & init here are inspired by Tools/build/deepfreeze.py. - -// All field names generated by ASCII_STR() have a common prefix, -// to help avoid collisions with keywords, macros, etc. - -#define STRUCT_FOR_ASCII_STR(LITERAL) \ - struct { \ - PyASCIIObject _ascii; \ - uint8_t _data[sizeof(LITERAL)]; \ - } -#define STRUCT_FOR_STR(NAME, LITERAL) \ - STRUCT_FOR_ASCII_STR(LITERAL) _py_ ## NAME; -#define STRUCT_FOR_ID(NAME) \ - STRUCT_FOR_ASCII_STR(#NAME) _py_ ## NAME; - -// XXX Order by frequency of use? - -/* The following is auto-generated by Tools/build/generate_global_objects.py. */ -struct _Py_global_strings { - struct { - STRUCT_FOR_STR(anon_dictcomp, "") - STRUCT_FOR_STR(anon_genexpr, "") - STRUCT_FOR_STR(anon_lambda, "") - STRUCT_FOR_STR(anon_listcomp, "") - STRUCT_FOR_STR(anon_module, "") - STRUCT_FOR_STR(anon_setcomp, "") - STRUCT_FOR_STR(anon_string, "") - STRUCT_FOR_STR(anon_unknown, "") - STRUCT_FOR_STR(close_br, "}") - STRUCT_FOR_STR(dbl_close_br, "}}") - STRUCT_FOR_STR(dbl_open_br, "{{") - STRUCT_FOR_STR(dbl_percent, "%%") - STRUCT_FOR_STR(defaults, ".defaults") - STRUCT_FOR_STR(dot, ".") - STRUCT_FOR_STR(dot_locals, ".") - STRUCT_FOR_STR(empty, "") - STRUCT_FOR_STR(generic_base, ".generic_base") - STRUCT_FOR_STR(json_decoder, "json.decoder") - STRUCT_FOR_STR(kwdefaults, ".kwdefaults") - STRUCT_FOR_STR(list_err, "list index out of range") - STRUCT_FOR_STR(newline, "\n") - STRUCT_FOR_STR(open_br, "{") - STRUCT_FOR_STR(percent, "%") - STRUCT_FOR_STR(shim_name, "") - STRUCT_FOR_STR(type_params, ".type_params") - STRUCT_FOR_STR(utf_8, "utf-8") - } literals; - - struct { - STRUCT_FOR_ID(CANCELLED) - STRUCT_FOR_ID(FINISHED) - STRUCT_FOR_ID(False) - STRUCT_FOR_ID(JSONDecodeError) - STRUCT_FOR_ID(PENDING) - STRUCT_FOR_ID(Py_Repr) - STRUCT_FOR_ID(TextIOWrapper) - STRUCT_FOR_ID(True) - STRUCT_FOR_ID(WarningMessage) - STRUCT_FOR_ID(_) - STRUCT_FOR_ID(_WindowsConsoleIO) - STRUCT_FOR_ID(__IOBase_closed) - STRUCT_FOR_ID(__abc_tpflags__) - STRUCT_FOR_ID(__abs__) - STRUCT_FOR_ID(__abstractmethods__) - STRUCT_FOR_ID(__add__) - STRUCT_FOR_ID(__aenter__) - STRUCT_FOR_ID(__aexit__) - STRUCT_FOR_ID(__aiter__) - STRUCT_FOR_ID(__all__) - STRUCT_FOR_ID(__and__) - STRUCT_FOR_ID(__anext__) - STRUCT_FOR_ID(__annotations__) - STRUCT_FOR_ID(__args__) - STRUCT_FOR_ID(__asyncio_running_event_loop__) - STRUCT_FOR_ID(__await__) - STRUCT_FOR_ID(__bases__) - STRUCT_FOR_ID(__bool__) - STRUCT_FOR_ID(__buffer__) - STRUCT_FOR_ID(__build_class__) - STRUCT_FOR_ID(__builtins__) - STRUCT_FOR_ID(__bytes__) - STRUCT_FOR_ID(__call__) - STRUCT_FOR_ID(__cantrace__) - STRUCT_FOR_ID(__class__) - STRUCT_FOR_ID(__class_getitem__) - STRUCT_FOR_ID(__classcell__) - STRUCT_FOR_ID(__classdict__) - STRUCT_FOR_ID(__classdictcell__) - STRUCT_FOR_ID(__complex__) - STRUCT_FOR_ID(__contains__) - STRUCT_FOR_ID(__copy__) - STRUCT_FOR_ID(__ctypes_from_outparam__) - STRUCT_FOR_ID(__del__) - STRUCT_FOR_ID(__delattr__) - STRUCT_FOR_ID(__delete__) - STRUCT_FOR_ID(__delitem__) - STRUCT_FOR_ID(__dict__) - STRUCT_FOR_ID(__dictoffset__) - STRUCT_FOR_ID(__dir__) - STRUCT_FOR_ID(__divmod__) - STRUCT_FOR_ID(__doc__) - STRUCT_FOR_ID(__enter__) - STRUCT_FOR_ID(__eq__) - STRUCT_FOR_ID(__exit__) - STRUCT_FOR_ID(__file__) - STRUCT_FOR_ID(__float__) - STRUCT_FOR_ID(__floordiv__) - STRUCT_FOR_ID(__format__) - STRUCT_FOR_ID(__fspath__) - STRUCT_FOR_ID(__ge__) - STRUCT_FOR_ID(__get__) - STRUCT_FOR_ID(__getattr__) - STRUCT_FOR_ID(__getattribute__) - STRUCT_FOR_ID(__getinitargs__) - STRUCT_FOR_ID(__getitem__) - STRUCT_FOR_ID(__getnewargs__) - STRUCT_FOR_ID(__getnewargs_ex__) - STRUCT_FOR_ID(__getstate__) - STRUCT_FOR_ID(__gt__) - STRUCT_FOR_ID(__hash__) - STRUCT_FOR_ID(__iadd__) - STRUCT_FOR_ID(__iand__) - STRUCT_FOR_ID(__ifloordiv__) - STRUCT_FOR_ID(__ilshift__) - STRUCT_FOR_ID(__imatmul__) - STRUCT_FOR_ID(__imod__) - STRUCT_FOR_ID(__import__) - STRUCT_FOR_ID(__imul__) - STRUCT_FOR_ID(__index__) - STRUCT_FOR_ID(__init__) - STRUCT_FOR_ID(__init_subclass__) - STRUCT_FOR_ID(__instancecheck__) - STRUCT_FOR_ID(__int__) - STRUCT_FOR_ID(__invert__) - STRUCT_FOR_ID(__ior__) - STRUCT_FOR_ID(__ipow__) - STRUCT_FOR_ID(__irshift__) - STRUCT_FOR_ID(__isabstractmethod__) - STRUCT_FOR_ID(__isub__) - STRUCT_FOR_ID(__iter__) - STRUCT_FOR_ID(__itruediv__) - STRUCT_FOR_ID(__ixor__) - STRUCT_FOR_ID(__le__) - STRUCT_FOR_ID(__len__) - STRUCT_FOR_ID(__length_hint__) - STRUCT_FOR_ID(__lltrace__) - STRUCT_FOR_ID(__loader__) - STRUCT_FOR_ID(__lshift__) - STRUCT_FOR_ID(__lt__) - STRUCT_FOR_ID(__main__) - STRUCT_FOR_ID(__matmul__) - STRUCT_FOR_ID(__missing__) - STRUCT_FOR_ID(__mod__) - STRUCT_FOR_ID(__module__) - STRUCT_FOR_ID(__mro_entries__) - STRUCT_FOR_ID(__mul__) - STRUCT_FOR_ID(__name__) - STRUCT_FOR_ID(__ne__) - STRUCT_FOR_ID(__neg__) - STRUCT_FOR_ID(__new__) - STRUCT_FOR_ID(__newobj__) - STRUCT_FOR_ID(__newobj_ex__) - STRUCT_FOR_ID(__next__) - STRUCT_FOR_ID(__notes__) - STRUCT_FOR_ID(__or__) - STRUCT_FOR_ID(__orig_class__) - STRUCT_FOR_ID(__origin__) - STRUCT_FOR_ID(__package__) - STRUCT_FOR_ID(__parameters__) - STRUCT_FOR_ID(__path__) - STRUCT_FOR_ID(__pos__) - STRUCT_FOR_ID(__pow__) - STRUCT_FOR_ID(__prepare__) - STRUCT_FOR_ID(__qualname__) - STRUCT_FOR_ID(__radd__) - STRUCT_FOR_ID(__rand__) - STRUCT_FOR_ID(__rdivmod__) - STRUCT_FOR_ID(__reduce__) - STRUCT_FOR_ID(__reduce_ex__) - STRUCT_FOR_ID(__release_buffer__) - STRUCT_FOR_ID(__repr__) - STRUCT_FOR_ID(__reversed__) - STRUCT_FOR_ID(__rfloordiv__) - STRUCT_FOR_ID(__rlshift__) - STRUCT_FOR_ID(__rmatmul__) - STRUCT_FOR_ID(__rmod__) - STRUCT_FOR_ID(__rmul__) - STRUCT_FOR_ID(__ror__) - STRUCT_FOR_ID(__round__) - STRUCT_FOR_ID(__rpow__) - STRUCT_FOR_ID(__rrshift__) - STRUCT_FOR_ID(__rshift__) - STRUCT_FOR_ID(__rsub__) - STRUCT_FOR_ID(__rtruediv__) - STRUCT_FOR_ID(__rxor__) - STRUCT_FOR_ID(__set__) - STRUCT_FOR_ID(__set_name__) - STRUCT_FOR_ID(__setattr__) - STRUCT_FOR_ID(__setitem__) - STRUCT_FOR_ID(__setstate__) - STRUCT_FOR_ID(__sizeof__) - STRUCT_FOR_ID(__slotnames__) - STRUCT_FOR_ID(__slots__) - STRUCT_FOR_ID(__spec__) - STRUCT_FOR_ID(__str__) - STRUCT_FOR_ID(__sub__) - STRUCT_FOR_ID(__subclasscheck__) - STRUCT_FOR_ID(__subclasshook__) - STRUCT_FOR_ID(__truediv__) - STRUCT_FOR_ID(__trunc__) - STRUCT_FOR_ID(__type_params__) - STRUCT_FOR_ID(__typing_is_unpacked_typevartuple__) - STRUCT_FOR_ID(__typing_prepare_subst__) - STRUCT_FOR_ID(__typing_subst__) - STRUCT_FOR_ID(__typing_unpacked_tuple_args__) - STRUCT_FOR_ID(__warningregistry__) - STRUCT_FOR_ID(__weaklistoffset__) - STRUCT_FOR_ID(__weakref__) - STRUCT_FOR_ID(__xor__) - STRUCT_FOR_ID(_abc_impl) - STRUCT_FOR_ID(_abstract_) - STRUCT_FOR_ID(_active) - STRUCT_FOR_ID(_annotation) - STRUCT_FOR_ID(_anonymous_) - STRUCT_FOR_ID(_argtypes_) - STRUCT_FOR_ID(_as_parameter_) - STRUCT_FOR_ID(_asyncio_future_blocking) - STRUCT_FOR_ID(_blksize) - STRUCT_FOR_ID(_bootstrap) - STRUCT_FOR_ID(_check_retval_) - STRUCT_FOR_ID(_dealloc_warn) - STRUCT_FOR_ID(_feature_version) - STRUCT_FOR_ID(_fields_) - STRUCT_FOR_ID(_finalizing) - STRUCT_FOR_ID(_find_and_load) - STRUCT_FOR_ID(_fix_up_module) - STRUCT_FOR_ID(_flags_) - STRUCT_FOR_ID(_get_sourcefile) - STRUCT_FOR_ID(_handle_fromlist) - STRUCT_FOR_ID(_initializing) - STRUCT_FOR_ID(_io) - STRUCT_FOR_ID(_is_text_encoding) - STRUCT_FOR_ID(_length_) - STRUCT_FOR_ID(_limbo) - STRUCT_FOR_ID(_lock_unlock_module) - STRUCT_FOR_ID(_loop) - STRUCT_FOR_ID(_needs_com_addref_) - STRUCT_FOR_ID(_pack_) - STRUCT_FOR_ID(_restype_) - STRUCT_FOR_ID(_showwarnmsg) - STRUCT_FOR_ID(_shutdown) - STRUCT_FOR_ID(_slotnames) - STRUCT_FOR_ID(_strptime_datetime) - STRUCT_FOR_ID(_swappedbytes_) - STRUCT_FOR_ID(_type_) - STRUCT_FOR_ID(_uninitialized_submodules) - STRUCT_FOR_ID(_warn_unawaited_coroutine) - STRUCT_FOR_ID(_xoptions) - STRUCT_FOR_ID(a) - STRUCT_FOR_ID(abs_tol) - STRUCT_FOR_ID(access) - STRUCT_FOR_ID(add) - STRUCT_FOR_ID(add_done_callback) - STRUCT_FOR_ID(after_in_child) - STRUCT_FOR_ID(after_in_parent) - STRUCT_FOR_ID(aggregate_class) - STRUCT_FOR_ID(alias) - STRUCT_FOR_ID(append) - STRUCT_FOR_ID(arg) - STRUCT_FOR_ID(argdefs) - STRUCT_FOR_ID(args) - STRUCT_FOR_ID(arguments) - STRUCT_FOR_ID(argv) - STRUCT_FOR_ID(as_integer_ratio) - STRUCT_FOR_ID(ast) - STRUCT_FOR_ID(attribute) - STRUCT_FOR_ID(authorizer_callback) - STRUCT_FOR_ID(autocommit) - STRUCT_FOR_ID(b) - STRUCT_FOR_ID(backtick) - STRUCT_FOR_ID(base) - STRUCT_FOR_ID(before) - STRUCT_FOR_ID(big) - STRUCT_FOR_ID(binary_form) - STRUCT_FOR_ID(block) - STRUCT_FOR_ID(bound) - STRUCT_FOR_ID(buffer) - STRUCT_FOR_ID(buffer_callback) - STRUCT_FOR_ID(buffer_size) - STRUCT_FOR_ID(buffering) - STRUCT_FOR_ID(buffers) - STRUCT_FOR_ID(bufsize) - STRUCT_FOR_ID(builtins) - STRUCT_FOR_ID(byteorder) - STRUCT_FOR_ID(bytes) - STRUCT_FOR_ID(bytes_per_sep) - STRUCT_FOR_ID(c) - STRUCT_FOR_ID(c_call) - STRUCT_FOR_ID(c_exception) - STRUCT_FOR_ID(c_return) - STRUCT_FOR_ID(cached_statements) - STRUCT_FOR_ID(cadata) - STRUCT_FOR_ID(cafile) - STRUCT_FOR_ID(call) - STRUCT_FOR_ID(call_exception_handler) - STRUCT_FOR_ID(call_soon) - STRUCT_FOR_ID(cancel) - STRUCT_FOR_ID(capath) - STRUCT_FOR_ID(category) - STRUCT_FOR_ID(cb_type) - STRUCT_FOR_ID(certfile) - STRUCT_FOR_ID(check_same_thread) - STRUCT_FOR_ID(clear) - STRUCT_FOR_ID(close) - STRUCT_FOR_ID(closed) - STRUCT_FOR_ID(closefd) - STRUCT_FOR_ID(closure) - STRUCT_FOR_ID(co_argcount) - STRUCT_FOR_ID(co_cellvars) - STRUCT_FOR_ID(co_code) - STRUCT_FOR_ID(co_consts) - STRUCT_FOR_ID(co_exceptiontable) - STRUCT_FOR_ID(co_filename) - STRUCT_FOR_ID(co_firstlineno) - STRUCT_FOR_ID(co_flags) - STRUCT_FOR_ID(co_freevars) - STRUCT_FOR_ID(co_kwonlyargcount) - STRUCT_FOR_ID(co_linetable) - STRUCT_FOR_ID(co_name) - STRUCT_FOR_ID(co_names) - STRUCT_FOR_ID(co_nlocals) - STRUCT_FOR_ID(co_posonlyargcount) - STRUCT_FOR_ID(co_qualname) - STRUCT_FOR_ID(co_stacksize) - STRUCT_FOR_ID(co_varnames) - STRUCT_FOR_ID(code) - STRUCT_FOR_ID(command) - STRUCT_FOR_ID(comment_factory) - STRUCT_FOR_ID(compile_mode) - STRUCT_FOR_ID(consts) - STRUCT_FOR_ID(context) - STRUCT_FOR_ID(contravariant) - STRUCT_FOR_ID(cookie) - STRUCT_FOR_ID(copy) - STRUCT_FOR_ID(copyreg) - STRUCT_FOR_ID(coro) - STRUCT_FOR_ID(count) - STRUCT_FOR_ID(covariant) - STRUCT_FOR_ID(cwd) - STRUCT_FOR_ID(d) - STRUCT_FOR_ID(data) - STRUCT_FOR_ID(database) - STRUCT_FOR_ID(decode) - STRUCT_FOR_ID(decoder) - STRUCT_FOR_ID(default) - STRUCT_FOR_ID(defaultaction) - STRUCT_FOR_ID(delete) - STRUCT_FOR_ID(depth) - STRUCT_FOR_ID(detect_types) - STRUCT_FOR_ID(deterministic) - STRUCT_FOR_ID(device) - STRUCT_FOR_ID(dict) - STRUCT_FOR_ID(dictcomp) - STRUCT_FOR_ID(difference_update) - STRUCT_FOR_ID(digest) - STRUCT_FOR_ID(digest_size) - STRUCT_FOR_ID(digestmod) - STRUCT_FOR_ID(dir_fd) - STRUCT_FOR_ID(discard) - STRUCT_FOR_ID(dispatch_table) - STRUCT_FOR_ID(displayhook) - STRUCT_FOR_ID(dklen) - STRUCT_FOR_ID(doc) - STRUCT_FOR_ID(dont_inherit) - STRUCT_FOR_ID(dst) - STRUCT_FOR_ID(dst_dir_fd) - STRUCT_FOR_ID(duration) - STRUCT_FOR_ID(e) - STRUCT_FOR_ID(eager_start) - STRUCT_FOR_ID(effective_ids) - STRUCT_FOR_ID(element_factory) - STRUCT_FOR_ID(encode) - STRUCT_FOR_ID(encoding) - STRUCT_FOR_ID(end) - STRUCT_FOR_ID(end_lineno) - STRUCT_FOR_ID(end_offset) - STRUCT_FOR_ID(endpos) - STRUCT_FOR_ID(entrypoint) - STRUCT_FOR_ID(env) - STRUCT_FOR_ID(errors) - STRUCT_FOR_ID(event) - STRUCT_FOR_ID(eventmask) - STRUCT_FOR_ID(exc_type) - STRUCT_FOR_ID(exc_value) - STRUCT_FOR_ID(excepthook) - STRUCT_FOR_ID(exception) - STRUCT_FOR_ID(existing_file_name) - STRUCT_FOR_ID(exp) - STRUCT_FOR_ID(extend) - STRUCT_FOR_ID(extra_tokens) - STRUCT_FOR_ID(facility) - STRUCT_FOR_ID(factory) - STRUCT_FOR_ID(false) - STRUCT_FOR_ID(family) - STRUCT_FOR_ID(fanout) - STRUCT_FOR_ID(fd) - STRUCT_FOR_ID(fd2) - STRUCT_FOR_ID(fdel) - STRUCT_FOR_ID(fget) - STRUCT_FOR_ID(file) - STRUCT_FOR_ID(file_actions) - STRUCT_FOR_ID(filename) - STRUCT_FOR_ID(fileno) - STRUCT_FOR_ID(filepath) - STRUCT_FOR_ID(fillvalue) - STRUCT_FOR_ID(filters) - STRUCT_FOR_ID(final) - STRUCT_FOR_ID(find_class) - STRUCT_FOR_ID(fix_imports) - STRUCT_FOR_ID(flags) - STRUCT_FOR_ID(flush) - STRUCT_FOR_ID(follow_symlinks) - STRUCT_FOR_ID(format) - STRUCT_FOR_ID(frequency) - STRUCT_FOR_ID(from_param) - STRUCT_FOR_ID(fromlist) - STRUCT_FOR_ID(fromtimestamp) - STRUCT_FOR_ID(fromutc) - STRUCT_FOR_ID(fset) - STRUCT_FOR_ID(func) - STRUCT_FOR_ID(future) - STRUCT_FOR_ID(generation) - STRUCT_FOR_ID(genexpr) - STRUCT_FOR_ID(get) - STRUCT_FOR_ID(get_debug) - STRUCT_FOR_ID(get_event_loop) - STRUCT_FOR_ID(get_loop) - STRUCT_FOR_ID(get_source) - STRUCT_FOR_ID(getattr) - STRUCT_FOR_ID(getstate) - STRUCT_FOR_ID(gid) - STRUCT_FOR_ID(globals) - STRUCT_FOR_ID(groupindex) - STRUCT_FOR_ID(groups) - STRUCT_FOR_ID(handle) - STRUCT_FOR_ID(hash_name) - STRUCT_FOR_ID(header) - STRUCT_FOR_ID(headers) - STRUCT_FOR_ID(hi) - STRUCT_FOR_ID(hook) - STRUCT_FOR_ID(id) - STRUCT_FOR_ID(ident) - STRUCT_FOR_ID(ignore) - STRUCT_FOR_ID(imag) - STRUCT_FOR_ID(importlib) - STRUCT_FOR_ID(in_fd) - STRUCT_FOR_ID(incoming) - STRUCT_FOR_ID(indexgroup) - STRUCT_FOR_ID(inf) - STRUCT_FOR_ID(infer_variance) - STRUCT_FOR_ID(inheritable) - STRUCT_FOR_ID(initial) - STRUCT_FOR_ID(initial_bytes) - STRUCT_FOR_ID(initial_value) - STRUCT_FOR_ID(initval) - STRUCT_FOR_ID(inner_size) - STRUCT_FOR_ID(input) - STRUCT_FOR_ID(insert_comments) - STRUCT_FOR_ID(insert_pis) - STRUCT_FOR_ID(instructions) - STRUCT_FOR_ID(intern) - STRUCT_FOR_ID(intersection) - STRUCT_FOR_ID(is_running) - STRUCT_FOR_ID(isatty) - STRUCT_FOR_ID(isinstance) - STRUCT_FOR_ID(isoformat) - STRUCT_FOR_ID(isolation_level) - STRUCT_FOR_ID(istext) - STRUCT_FOR_ID(item) - STRUCT_FOR_ID(items) - STRUCT_FOR_ID(iter) - STRUCT_FOR_ID(iterable) - STRUCT_FOR_ID(iterations) - STRUCT_FOR_ID(join) - STRUCT_FOR_ID(jump) - STRUCT_FOR_ID(keepends) - STRUCT_FOR_ID(key) - STRUCT_FOR_ID(keyfile) - STRUCT_FOR_ID(keys) - STRUCT_FOR_ID(kind) - STRUCT_FOR_ID(kw) - STRUCT_FOR_ID(kw1) - STRUCT_FOR_ID(kw2) - STRUCT_FOR_ID(lambda) - STRUCT_FOR_ID(last) - STRUCT_FOR_ID(last_exc) - STRUCT_FOR_ID(last_node) - STRUCT_FOR_ID(last_traceback) - STRUCT_FOR_ID(last_type) - STRUCT_FOR_ID(last_value) - STRUCT_FOR_ID(latin1) - STRUCT_FOR_ID(leaf_size) - STRUCT_FOR_ID(len) - STRUCT_FOR_ID(length) - STRUCT_FOR_ID(level) - STRUCT_FOR_ID(limit) - STRUCT_FOR_ID(line) - STRUCT_FOR_ID(line_buffering) - STRUCT_FOR_ID(lineno) - STRUCT_FOR_ID(listcomp) - STRUCT_FOR_ID(little) - STRUCT_FOR_ID(lo) - STRUCT_FOR_ID(locale) - STRUCT_FOR_ID(locals) - STRUCT_FOR_ID(logoption) - STRUCT_FOR_ID(loop) - STRUCT_FOR_ID(mapping) - STRUCT_FOR_ID(match) - STRUCT_FOR_ID(max_length) - STRUCT_FOR_ID(maxdigits) - STRUCT_FOR_ID(maxevents) - STRUCT_FOR_ID(maxmem) - STRUCT_FOR_ID(maxsplit) - STRUCT_FOR_ID(maxvalue) - STRUCT_FOR_ID(memLevel) - STRUCT_FOR_ID(memlimit) - STRUCT_FOR_ID(message) - STRUCT_FOR_ID(metaclass) - STRUCT_FOR_ID(metadata) - STRUCT_FOR_ID(method) - STRUCT_FOR_ID(mod) - STRUCT_FOR_ID(mode) - STRUCT_FOR_ID(module) - STRUCT_FOR_ID(module_globals) - STRUCT_FOR_ID(modules) - STRUCT_FOR_ID(mro) - STRUCT_FOR_ID(msg) - STRUCT_FOR_ID(mycmp) - STRUCT_FOR_ID(n) - STRUCT_FOR_ID(n_arg) - STRUCT_FOR_ID(n_fields) - STRUCT_FOR_ID(n_sequence_fields) - STRUCT_FOR_ID(n_unnamed_fields) - STRUCT_FOR_ID(name) - STRUCT_FOR_ID(name_from) - STRUCT_FOR_ID(namespace_separator) - STRUCT_FOR_ID(namespaces) - STRUCT_FOR_ID(narg) - STRUCT_FOR_ID(ndigits) - STRUCT_FOR_ID(new_file_name) - STRUCT_FOR_ID(new_limit) - STRUCT_FOR_ID(newline) - STRUCT_FOR_ID(newlines) - STRUCT_FOR_ID(next) - STRUCT_FOR_ID(nlocals) - STRUCT_FOR_ID(node_depth) - STRUCT_FOR_ID(node_offset) - STRUCT_FOR_ID(ns) - STRUCT_FOR_ID(nstype) - STRUCT_FOR_ID(nt) - STRUCT_FOR_ID(null) - STRUCT_FOR_ID(number) - STRUCT_FOR_ID(obj) - STRUCT_FOR_ID(object) - STRUCT_FOR_ID(offset) - STRUCT_FOR_ID(offset_dst) - STRUCT_FOR_ID(offset_src) - STRUCT_FOR_ID(on_type_read) - STRUCT_FOR_ID(onceregistry) - STRUCT_FOR_ID(only_keys) - STRUCT_FOR_ID(oparg) - STRUCT_FOR_ID(opcode) - STRUCT_FOR_ID(open) - STRUCT_FOR_ID(opener) - STRUCT_FOR_ID(operation) - STRUCT_FOR_ID(optimize) - STRUCT_FOR_ID(options) - STRUCT_FOR_ID(order) - STRUCT_FOR_ID(origin) - STRUCT_FOR_ID(out_fd) - STRUCT_FOR_ID(outgoing) - STRUCT_FOR_ID(overlapped) - STRUCT_FOR_ID(owner) - STRUCT_FOR_ID(p) - STRUCT_FOR_ID(pages) - STRUCT_FOR_ID(parent) - STRUCT_FOR_ID(password) - STRUCT_FOR_ID(path) - STRUCT_FOR_ID(pattern) - STRUCT_FOR_ID(peek) - STRUCT_FOR_ID(persistent_id) - STRUCT_FOR_ID(persistent_load) - STRUCT_FOR_ID(person) - STRUCT_FOR_ID(pi_factory) - STRUCT_FOR_ID(pid) - STRUCT_FOR_ID(policy) - STRUCT_FOR_ID(pos) - STRUCT_FOR_ID(pos1) - STRUCT_FOR_ID(pos2) - STRUCT_FOR_ID(posix) - STRUCT_FOR_ID(print_file_and_line) - STRUCT_FOR_ID(priority) - STRUCT_FOR_ID(progress) - STRUCT_FOR_ID(progress_handler) - STRUCT_FOR_ID(progress_routine) - STRUCT_FOR_ID(proto) - STRUCT_FOR_ID(protocol) - STRUCT_FOR_ID(ps1) - STRUCT_FOR_ID(ps2) - STRUCT_FOR_ID(query) - STRUCT_FOR_ID(quotetabs) - STRUCT_FOR_ID(r) - STRUCT_FOR_ID(raw) - STRUCT_FOR_ID(read) - STRUCT_FOR_ID(read1) - STRUCT_FOR_ID(readable) - STRUCT_FOR_ID(readall) - STRUCT_FOR_ID(readinto) - STRUCT_FOR_ID(readinto1) - STRUCT_FOR_ID(readline) - STRUCT_FOR_ID(readonly) - STRUCT_FOR_ID(real) - STRUCT_FOR_ID(reducer_override) - STRUCT_FOR_ID(registry) - STRUCT_FOR_ID(rel_tol) - STRUCT_FOR_ID(release) - STRUCT_FOR_ID(reload) - STRUCT_FOR_ID(repl) - STRUCT_FOR_ID(replace) - STRUCT_FOR_ID(reserved) - STRUCT_FOR_ID(reset) - STRUCT_FOR_ID(resetids) - STRUCT_FOR_ID(return) - STRUCT_FOR_ID(reverse) - STRUCT_FOR_ID(reversed) - STRUCT_FOR_ID(s) - STRUCT_FOR_ID(salt) - STRUCT_FOR_ID(sched_priority) - STRUCT_FOR_ID(scheduler) - STRUCT_FOR_ID(seek) - STRUCT_FOR_ID(seekable) - STRUCT_FOR_ID(selectors) - STRUCT_FOR_ID(self) - STRUCT_FOR_ID(send) - STRUCT_FOR_ID(sep) - STRUCT_FOR_ID(sequence) - STRUCT_FOR_ID(server_hostname) - STRUCT_FOR_ID(server_side) - STRUCT_FOR_ID(session) - STRUCT_FOR_ID(setcomp) - STRUCT_FOR_ID(setpgroup) - STRUCT_FOR_ID(setsid) - STRUCT_FOR_ID(setsigdef) - STRUCT_FOR_ID(setsigmask) - STRUCT_FOR_ID(setstate) - STRUCT_FOR_ID(shape) - STRUCT_FOR_ID(show_cmd) - STRUCT_FOR_ID(signed) - STRUCT_FOR_ID(size) - STRUCT_FOR_ID(sizehint) - STRUCT_FOR_ID(skip_file_prefixes) - STRUCT_FOR_ID(sleep) - STRUCT_FOR_ID(sock) - STRUCT_FOR_ID(sort) - STRUCT_FOR_ID(sound) - STRUCT_FOR_ID(source) - STRUCT_FOR_ID(source_traceback) - STRUCT_FOR_ID(src) - STRUCT_FOR_ID(src_dir_fd) - STRUCT_FOR_ID(stacklevel) - STRUCT_FOR_ID(start) - STRUCT_FOR_ID(statement) - STRUCT_FOR_ID(status) - STRUCT_FOR_ID(stderr) - STRUCT_FOR_ID(stdin) - STRUCT_FOR_ID(stdout) - STRUCT_FOR_ID(step) - STRUCT_FOR_ID(steps) - STRUCT_FOR_ID(store_name) - STRUCT_FOR_ID(strategy) - STRUCT_FOR_ID(strftime) - STRUCT_FOR_ID(strict) - STRUCT_FOR_ID(strict_mode) - STRUCT_FOR_ID(string) - STRUCT_FOR_ID(sub_key) - STRUCT_FOR_ID(symmetric_difference_update) - STRUCT_FOR_ID(tabsize) - STRUCT_FOR_ID(tag) - STRUCT_FOR_ID(target) - STRUCT_FOR_ID(target_is_directory) - STRUCT_FOR_ID(task) - STRUCT_FOR_ID(tb_frame) - STRUCT_FOR_ID(tb_lasti) - STRUCT_FOR_ID(tb_lineno) - STRUCT_FOR_ID(tb_next) - STRUCT_FOR_ID(tell) - STRUCT_FOR_ID(template) - STRUCT_FOR_ID(term) - STRUCT_FOR_ID(text) - STRUCT_FOR_ID(threading) - STRUCT_FOR_ID(throw) - STRUCT_FOR_ID(timeout) - STRUCT_FOR_ID(times) - STRUCT_FOR_ID(timetuple) - STRUCT_FOR_ID(top) - STRUCT_FOR_ID(trace_callback) - STRUCT_FOR_ID(traceback) - STRUCT_FOR_ID(trailers) - STRUCT_FOR_ID(translate) - STRUCT_FOR_ID(true) - STRUCT_FOR_ID(truncate) - STRUCT_FOR_ID(twice) - STRUCT_FOR_ID(txt) - STRUCT_FOR_ID(type) - STRUCT_FOR_ID(type_params) - STRUCT_FOR_ID(tz) - STRUCT_FOR_ID(tzname) - STRUCT_FOR_ID(uid) - STRUCT_FOR_ID(unlink) - STRUCT_FOR_ID(unraisablehook) - STRUCT_FOR_ID(uri) - STRUCT_FOR_ID(usedforsecurity) - STRUCT_FOR_ID(value) - STRUCT_FOR_ID(values) - STRUCT_FOR_ID(version) - STRUCT_FOR_ID(volume) - STRUCT_FOR_ID(warnings) - STRUCT_FOR_ID(warnoptions) - STRUCT_FOR_ID(wbits) - STRUCT_FOR_ID(week) - STRUCT_FOR_ID(weekday) - STRUCT_FOR_ID(which) - STRUCT_FOR_ID(who) - STRUCT_FOR_ID(withdata) - STRUCT_FOR_ID(writable) - STRUCT_FOR_ID(write) - STRUCT_FOR_ID(write_through) - STRUCT_FOR_ID(x) - STRUCT_FOR_ID(year) - STRUCT_FOR_ID(zdict) - } identifiers; - struct { - PyASCIIObject _ascii; - uint8_t _data[2]; - } ascii[128]; - struct { - PyCompactUnicodeObject _latin1; - uint8_t _data[2]; - } latin1[128]; -}; -/* End auto-generated code */ - -#undef ID -#undef STR - - -#define _Py_ID(NAME) \ - (_Py_SINGLETON(strings.identifiers._py_ ## NAME._ascii.ob_base)) -#define _Py_STR(NAME) \ - (_Py_SINGLETON(strings.literals._py_ ## NAME._ascii.ob_base)) - -/* _Py_DECLARE_STR() should precede all uses of _Py_STR() in a function. - - This is true even if the same string has already been declared - elsewhere, even in the same file. Mismatched duplicates are detected - by Tools/scripts/generate-global-objects.py. - - Pairing _Py_DECLARE_STR() with every use of _Py_STR() makes sure the - string keeps working even if the declaration is removed somewhere - else. It also makes it clear what the actual string is at every - place it is being used. */ -#define _Py_DECLARE_STR(name, str) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_GLOBAL_STRINGS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_hamt.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_hamt.h deleted file mode 100644 index d8742c7..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_hamt.h +++ /dev/null @@ -1,134 +0,0 @@ -#ifndef Py_INTERNAL_HAMT_H -#define Py_INTERNAL_HAMT_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* -HAMT tree is shaped by hashes of keys. Every group of 5 bits of a hash denotes -the exact position of the key in one level of the tree. Since we're using -32 bit hashes, we can have at most 7 such levels. Although if there are -two distinct keys with equal hashes, they will have to occupy the same -cell in the 7th level of the tree -- so we'd put them in a "collision" node. -Which brings the total possible tree depth to 8. Read more about the actual -layout of the HAMT tree in `hamt.c`. - -This constant is used to define a datastucture for storing iteration state. -*/ -#define _Py_HAMT_MAX_TREE_DEPTH 8 - - -extern PyTypeObject _PyHamt_Type; -extern PyTypeObject _PyHamt_ArrayNode_Type; -extern PyTypeObject _PyHamt_BitmapNode_Type; -extern PyTypeObject _PyHamt_CollisionNode_Type; -extern PyTypeObject _PyHamtKeys_Type; -extern PyTypeObject _PyHamtValues_Type; -extern PyTypeObject _PyHamtItems_Type; - - -/* other API */ - -#define PyHamt_Check(o) Py_IS_TYPE((o), &_PyHamt_Type) - - -/* Abstract tree node. */ -typedef struct { - PyObject_HEAD -} PyHamtNode; - - -/* An HAMT immutable mapping collection. */ -typedef struct { - PyObject_HEAD - PyHamtNode *h_root; - PyObject *h_weakreflist; - Py_ssize_t h_count; -} PyHamtObject; - - -typedef struct { - PyObject_VAR_HEAD - uint32_t b_bitmap; - PyObject *b_array[1]; -} PyHamtNode_Bitmap; - - -/* A struct to hold the state of depth-first traverse of the tree. - - HAMT is an immutable collection. Iterators will hold a strong reference - to it, and every node in the HAMT has strong references to its children. - - So for iterators, we can implement zero allocations and zero reference - inc/dec depth-first iteration. - - - i_nodes: an array of seven pointers to tree nodes - - i_level: the current node in i_nodes - - i_pos: an array of positions within nodes in i_nodes. -*/ -typedef struct { - PyHamtNode *i_nodes[_Py_HAMT_MAX_TREE_DEPTH]; - Py_ssize_t i_pos[_Py_HAMT_MAX_TREE_DEPTH]; - int8_t i_level; -} PyHamtIteratorState; - - -/* Base iterator object. - - Contains the iteration state, a pointer to the HAMT tree, - and a pointer to the 'yield function'. The latter is a simple - function that returns a key/value tuple for the 'Items' iterator, - just a key for the 'Keys' iterator, and a value for the 'Values' - iterator. -*/ -typedef struct { - PyObject_HEAD - PyHamtObject *hi_obj; - PyHamtIteratorState hi_iter; - binaryfunc hi_yield; -} PyHamtIterator; - - -/* Create a new HAMT immutable mapping. */ -PyHamtObject * _PyHamt_New(void); - -/* Return a new collection based on "o", but with an additional - key/val pair. */ -PyHamtObject * _PyHamt_Assoc(PyHamtObject *o, PyObject *key, PyObject *val); - -/* Return a new collection based on "o", but without "key". */ -PyHamtObject * _PyHamt_Without(PyHamtObject *o, PyObject *key); - -/* Find "key" in the "o" collection. - - Return: - - -1: An error occurred. - - 0: "key" wasn't found in "o". - - 1: "key" is in "o"; "*val" is set to its value (a borrowed ref). -*/ -int _PyHamt_Find(PyHamtObject *o, PyObject *key, PyObject **val); - -/* Check if "v" is equal to "w". - - Return: - - 0: v != w - - 1: v == w - - -1: An error occurred. -*/ -int _PyHamt_Eq(PyHamtObject *v, PyHamtObject *w); - -/* Return the size of "o"; equivalent of "len(o)". */ -Py_ssize_t _PyHamt_Len(PyHamtObject *o); - -/* Return a Keys iterator over "o". */ -PyObject * _PyHamt_NewIterKeys(PyHamtObject *o); - -/* Return a Values iterator over "o". */ -PyObject * _PyHamt_NewIterValues(PyHamtObject *o); - -/* Return a Items iterator over "o". */ -PyObject * _PyHamt_NewIterItems(PyHamtObject *o); - -#endif /* !Py_INTERNAL_HAMT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_hashtable.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_hashtable.h deleted file mode 100644 index f57978a..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_hashtable.h +++ /dev/null @@ -1,149 +0,0 @@ -#ifndef Py_INTERNAL_HASHTABLE_H -#define Py_INTERNAL_HASHTABLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Single linked list */ - -typedef struct _Py_slist_item_s { - struct _Py_slist_item_s *next; -} _Py_slist_item_t; - -typedef struct { - _Py_slist_item_t *head; -} _Py_slist_t; - -#define _Py_SLIST_ITEM_NEXT(ITEM) _Py_RVALUE(((_Py_slist_item_t *)(ITEM))->next) - -#define _Py_SLIST_HEAD(SLIST) _Py_RVALUE(((_Py_slist_t *)(SLIST))->head) - - -/* _Py_hashtable: table entry */ - -typedef struct { - /* used by _Py_hashtable_t.buckets to link entries */ - _Py_slist_item_t _Py_slist_item; - - Py_uhash_t key_hash; - void *key; - void *value; -} _Py_hashtable_entry_t; - - -/* _Py_hashtable: prototypes */ - -/* Forward declaration */ -struct _Py_hashtable_t; -typedef struct _Py_hashtable_t _Py_hashtable_t; - -typedef Py_uhash_t (*_Py_hashtable_hash_func) (const void *key); -typedef int (*_Py_hashtable_compare_func) (const void *key1, const void *key2); -typedef void (*_Py_hashtable_destroy_func) (void *key); -typedef _Py_hashtable_entry_t* (*_Py_hashtable_get_entry_func)(_Py_hashtable_t *ht, - const void *key); - -typedef struct { - // Allocate a memory block - void* (*malloc) (size_t size); - - // Release a memory block - void (*free) (void *ptr); -} _Py_hashtable_allocator_t; - - -/* _Py_hashtable: table */ -struct _Py_hashtable_t { - size_t nentries; // Total number of entries in the table - size_t nbuckets; - _Py_slist_t *buckets; - - _Py_hashtable_get_entry_func get_entry_func; - _Py_hashtable_hash_func hash_func; - _Py_hashtable_compare_func compare_func; - _Py_hashtable_destroy_func key_destroy_func; - _Py_hashtable_destroy_func value_destroy_func; - _Py_hashtable_allocator_t alloc; -}; - -/* Hash a pointer (void*) */ -PyAPI_FUNC(Py_uhash_t) _Py_hashtable_hash_ptr(const void *key); - -/* Comparison using memcmp() */ -PyAPI_FUNC(int) _Py_hashtable_compare_direct( - const void *key1, - const void *key2); - -PyAPI_FUNC(_Py_hashtable_t *) _Py_hashtable_new( - _Py_hashtable_hash_func hash_func, - _Py_hashtable_compare_func compare_func); - -PyAPI_FUNC(_Py_hashtable_t *) _Py_hashtable_new_full( - _Py_hashtable_hash_func hash_func, - _Py_hashtable_compare_func compare_func, - _Py_hashtable_destroy_func key_destroy_func, - _Py_hashtable_destroy_func value_destroy_func, - _Py_hashtable_allocator_t *allocator); - -PyAPI_FUNC(void) _Py_hashtable_destroy(_Py_hashtable_t *ht); - -PyAPI_FUNC(void) _Py_hashtable_clear(_Py_hashtable_t *ht); - -typedef int (*_Py_hashtable_foreach_func) (_Py_hashtable_t *ht, - const void *key, const void *value, - void *user_data); - -/* Call func() on each entry of the hashtable. - Iteration stops if func() result is non-zero, in this case it's the result - of the call. Otherwise, the function returns 0. */ -PyAPI_FUNC(int) _Py_hashtable_foreach( - _Py_hashtable_t *ht, - _Py_hashtable_foreach_func func, - void *user_data); - -PyAPI_FUNC(size_t) _Py_hashtable_size(const _Py_hashtable_t *ht); -PyAPI_FUNC(size_t) _Py_hashtable_len(const _Py_hashtable_t *ht); - -/* Add a new entry to the hash. The key must not be present in the hash table. - Return 0 on success, -1 on memory error. */ -PyAPI_FUNC(int) _Py_hashtable_set( - _Py_hashtable_t *ht, - const void *key, - void *value); - - -/* Get an entry. - Return NULL if the key does not exist. */ -static inline _Py_hashtable_entry_t * -_Py_hashtable_get_entry(_Py_hashtable_t *ht, const void *key) -{ - return ht->get_entry_func(ht, key); -} - - -/* Get value from an entry. - Return NULL if the entry is not found. - - Use _Py_hashtable_get_entry() to distinguish entry value equal to NULL - and entry not found. */ -PyAPI_FUNC(void*) _Py_hashtable_get(_Py_hashtable_t *ht, const void *key); - - -/* Remove a key and its associated value without calling key and value destroy - functions. - - Return the removed value if the key was found. - Return NULL if the key was not found. */ -PyAPI_FUNC(void*) _Py_hashtable_steal( - _Py_hashtable_t *ht, - const void *key); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_HASHTABLE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_import.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_import.h deleted file mode 100644 index 376957b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_import.h +++ /dev/null @@ -1,183 +0,0 @@ -#ifndef Py_LIMITED_API -#ifndef Py_INTERNAL_IMPORT_H -#define Py_INTERNAL_IMPORT_H -#ifdef __cplusplus -extern "C" { -#endif - -#include "pycore_hashtable.h" // _Py_hashtable_t -#include "pycore_time.h" // _PyTime_t - - -struct _import_runtime_state { - /* The builtin modules (defined in config.c). */ - struct _inittab *inittab; - /* The most recent value assigned to a PyModuleDef.m_base.m_index. - This is incremented each time PyModuleDef_Init() is called, - which is just about every time an extension module is imported. - See PyInterpreterState.modules_by_index for more info. */ - Py_ssize_t last_module_index; - struct { - /* A lock to guard the cache. */ - PyThread_type_lock mutex; - /* The actual cache of (filename, name, PyModuleDef) for modules. - Only legacy (single-phase init) extension modules are added - and only if they support multiple initialization (m_size >- 0) - or are imported in the main interpreter. - This is initialized lazily in _PyImport_FixupExtensionObject(). - Modules are added there and looked up in _imp.find_extension(). */ - _Py_hashtable_t *hashtable; - } extensions; - /* Package context -- the full module name for package imports */ - const char * pkgcontext; -}; - -struct _import_state { - /* cached sys.modules dictionary */ - PyObject *modules; - /* This is the list of module objects for all legacy (single-phase init) - extension modules ever loaded in this process (i.e. imported - in this interpreter or in any other). Py_None stands in for - modules that haven't actually been imported in this interpreter. - - A module's index (PyModuleDef.m_base.m_index) is used to look up - the corresponding module object for this interpreter, if any. - (See PyState_FindModule().) When any extension module - is initialized during import, its moduledef gets initialized by - PyModuleDef_Init(), and the first time that happens for each - PyModuleDef, its index gets set to the current value of - a global counter (see _PyRuntimeState.imports.last_module_index). - The entry for that index in this interpreter remains unset until - the module is actually imported here. (Py_None is used as - a placeholder.) Note that multi-phase init modules always get - an index for which there will never be a module set. - - This is initialized lazily in PyState_AddModule(), which is also - where modules get added. */ - PyObject *modules_by_index; - /* importlib module._bootstrap */ - PyObject *importlib; - /* override for config->use_frozen_modules (for tests) - (-1: "off", 1: "on", 0: no override) */ - int override_frozen_modules; - int override_multi_interp_extensions_check; -#ifdef HAVE_DLOPEN - int dlopenflags; -#endif - PyObject *import_func; - /* The global import lock. */ - struct { - PyThread_type_lock mutex; - unsigned long thread; - int level; - } lock; - /* diagnostic info in PyImport_ImportModuleLevelObject() */ - struct { - int import_level; - _PyTime_t accumulated; - int header; - } find_and_load; -}; - -#ifdef HAVE_DLOPEN -# include -# if HAVE_DECL_RTLD_NOW -# define _Py_DLOPEN_FLAGS RTLD_NOW -# else -# define _Py_DLOPEN_FLAGS RTLD_LAZY -# endif -# define DLOPENFLAGS_INIT .dlopenflags = _Py_DLOPEN_FLAGS, -#else -# define _Py_DLOPEN_FLAGS 0 -# define DLOPENFLAGS_INIT -#endif - -#define IMPORTS_INIT \ - { \ - DLOPENFLAGS_INIT \ - .lock = { \ - .mutex = NULL, \ - .thread = PYTHREAD_INVALID_THREAD_ID, \ - .level = 0, \ - }, \ - .find_and_load = { \ - .header = 1, \ - }, \ - } - -extern void _PyImport_ClearCore(PyInterpreterState *interp); - -extern Py_ssize_t _PyImport_GetNextModuleIndex(void); -extern const char * _PyImport_ResolveNameWithPackageContext(const char *name); -extern const char * _PyImport_SwapPackageContext(const char *newcontext); - -extern int _PyImport_GetDLOpenFlags(PyInterpreterState *interp); -extern void _PyImport_SetDLOpenFlags(PyInterpreterState *interp, int new_val); - -extern PyObject * _PyImport_InitModules(PyInterpreterState *interp); -extern PyObject * _PyImport_GetModules(PyInterpreterState *interp); -extern void _PyImport_ClearModules(PyInterpreterState *interp); - -extern void _PyImport_ClearModulesByIndex(PyInterpreterState *interp); - -extern int _PyImport_InitDefaultImportFunc(PyInterpreterState *interp); -extern int _PyImport_IsDefaultImportFunc( - PyInterpreterState *interp, - PyObject *func); - -extern PyObject * _PyImport_GetImportlibLoader( - PyInterpreterState *interp, - const char *loader_name); -extern PyObject * _PyImport_GetImportlibExternalLoader( - PyInterpreterState *interp, - const char *loader_name); -extern PyObject * _PyImport_BlessMyLoader( - PyInterpreterState *interp, - PyObject *module_globals); -extern PyObject * _PyImport_ImportlibModuleRepr( - PyInterpreterState *interp, - PyObject *module); - - -extern PyStatus _PyImport_Init(void); -extern void _PyImport_Fini(void); -extern void _PyImport_Fini2(void); - -extern PyStatus _PyImport_InitCore( - PyThreadState *tstate, - PyObject *sysmod, - int importlib); -extern PyStatus _PyImport_InitExternal(PyThreadState *tstate); -extern void _PyImport_FiniCore(PyInterpreterState *interp); -extern void _PyImport_FiniExternal(PyInterpreterState *interp); - - -#ifdef HAVE_FORK -extern PyStatus _PyImport_ReInitLock(PyInterpreterState *interp); -#endif - - -extern PyObject* _PyImport_GetBuiltinModuleNames(void); - -struct _module_alias { - const char *name; /* ASCII encoded string */ - const char *orig; /* ASCII encoded string */ -}; - -PyAPI_DATA(const struct _frozen *) _PyImport_FrozenBootstrap; -PyAPI_DATA(const struct _frozen *) _PyImport_FrozenStdlib; -PyAPI_DATA(const struct _frozen *) _PyImport_FrozenTest; -extern const struct _module_alias * _PyImport_FrozenAliases; - -PyAPI_FUNC(int) _PyImport_CheckSubinterpIncompatibleExtensionAllowed( - const char *name); - - -// for testing -PyAPI_FUNC(int) _PyImport_ClearExtension(PyObject *name, PyObject *filename); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_IMPORT_H */ -#endif /* !Py_LIMITED_API */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_initconfig.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_initconfig.h deleted file mode 100644 index 4cbd14a..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_initconfig.h +++ /dev/null @@ -1,179 +0,0 @@ -#ifndef Py_INTERNAL_CORECONFIG_H -#define Py_INTERNAL_CORECONFIG_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Forward declaration */ -struct pyruntimestate; - -/* --- PyStatus ----------------------------------------------- */ - -/* Almost all errors causing Python initialization to fail */ -#ifdef _MSC_VER - /* Visual Studio 2015 doesn't implement C99 __func__ in C */ -# define _PyStatus_GET_FUNC() __FUNCTION__ -#else -# define _PyStatus_GET_FUNC() __func__ -#endif - -#define _PyStatus_OK() \ - (PyStatus){._type = _PyStatus_TYPE_OK,} - /* other fields are set to 0 */ -#define _PyStatus_ERR(ERR_MSG) \ - (PyStatus){ \ - ._type = _PyStatus_TYPE_ERROR, \ - .func = _PyStatus_GET_FUNC(), \ - .err_msg = (ERR_MSG)} - /* other fields are set to 0 */ -#define _PyStatus_NO_MEMORY() _PyStatus_ERR("memory allocation failed") -#define _PyStatus_EXIT(EXITCODE) \ - (PyStatus){ \ - ._type = _PyStatus_TYPE_EXIT, \ - .exitcode = (EXITCODE)} -#define _PyStatus_IS_ERROR(err) \ - ((err)._type == _PyStatus_TYPE_ERROR) -#define _PyStatus_IS_EXIT(err) \ - ((err)._type == _PyStatus_TYPE_EXIT) -#define _PyStatus_EXCEPTION(err) \ - ((err)._type != _PyStatus_TYPE_OK) -#define _PyStatus_UPDATE_FUNC(err) \ - do { (err).func = _PyStatus_GET_FUNC(); } while (0) - -/* --- PyWideStringList ------------------------------------------------ */ - -#define _PyWideStringList_INIT (PyWideStringList){.length = 0, .items = NULL} - -#ifndef NDEBUG -PyAPI_FUNC(int) _PyWideStringList_CheckConsistency(const PyWideStringList *list); -#endif -PyAPI_FUNC(void) _PyWideStringList_Clear(PyWideStringList *list); -PyAPI_FUNC(int) _PyWideStringList_Copy(PyWideStringList *list, - const PyWideStringList *list2); -PyAPI_FUNC(PyStatus) _PyWideStringList_Extend(PyWideStringList *list, - const PyWideStringList *list2); -PyAPI_FUNC(PyObject*) _PyWideStringList_AsList(const PyWideStringList *list); - - -/* --- _PyArgv ---------------------------------------------------- */ - -typedef struct _PyArgv { - Py_ssize_t argc; - int use_bytes_argv; - char * const *bytes_argv; - wchar_t * const *wchar_argv; -} _PyArgv; - -PyAPI_FUNC(PyStatus) _PyArgv_AsWstrList(const _PyArgv *args, - PyWideStringList *list); - - -/* --- Helper functions ------------------------------------------- */ - -PyAPI_FUNC(int) _Py_str_to_int( - const char *str, - int *result); -PyAPI_FUNC(const wchar_t*) _Py_get_xoption( - const PyWideStringList *xoptions, - const wchar_t *name); -PyAPI_FUNC(const char*) _Py_GetEnv( - int use_environment, - const char *name); -PyAPI_FUNC(void) _Py_get_env_flag( - int use_environment, - int *flag, - const char *name); - -/* Py_GetArgcArgv() helper */ -PyAPI_FUNC(void) _Py_ClearArgcArgv(void); - - -/* --- _PyPreCmdline ------------------------------------------------- */ - -typedef struct { - PyWideStringList argv; - PyWideStringList xoptions; /* "-X value" option */ - int isolated; /* -I option */ - int use_environment; /* -E option */ - int dev_mode; /* -X dev and PYTHONDEVMODE */ - int warn_default_encoding; /* -X warn_default_encoding and PYTHONWARNDEFAULTENCODING */ -} _PyPreCmdline; - -#define _PyPreCmdline_INIT \ - (_PyPreCmdline){ \ - .use_environment = -1, \ - .isolated = -1, \ - .dev_mode = -1} -/* Note: _PyPreCmdline_INIT sets other fields to 0/NULL */ - -extern void _PyPreCmdline_Clear(_PyPreCmdline *cmdline); -extern PyStatus _PyPreCmdline_SetArgv(_PyPreCmdline *cmdline, - const _PyArgv *args); -extern PyStatus _PyPreCmdline_SetConfig( - const _PyPreCmdline *cmdline, - PyConfig *config); -extern PyStatus _PyPreCmdline_Read(_PyPreCmdline *cmdline, - const PyPreConfig *preconfig); - - -/* --- PyPreConfig ----------------------------------------------- */ - -PyAPI_FUNC(void) _PyPreConfig_InitCompatConfig(PyPreConfig *preconfig); -extern void _PyPreConfig_InitFromConfig( - PyPreConfig *preconfig, - const PyConfig *config); -extern PyStatus _PyPreConfig_InitFromPreConfig( - PyPreConfig *preconfig, - const PyPreConfig *config2); -extern PyObject* _PyPreConfig_AsDict(const PyPreConfig *preconfig); -extern void _PyPreConfig_GetConfig(PyPreConfig *preconfig, - const PyConfig *config); -extern PyStatus _PyPreConfig_Read(PyPreConfig *preconfig, - const _PyArgv *args); -extern PyStatus _PyPreConfig_Write(const PyPreConfig *preconfig); - - -/* --- PyConfig ---------------------------------------------- */ - -typedef enum { - /* Py_Initialize() API: backward compatibility with Python 3.6 and 3.7 */ - _PyConfig_INIT_COMPAT = 1, - _PyConfig_INIT_PYTHON = 2, - _PyConfig_INIT_ISOLATED = 3 -} _PyConfigInitEnum; - -PyAPI_FUNC(void) _PyConfig_InitCompatConfig(PyConfig *config); -extern PyStatus _PyConfig_Copy( - PyConfig *config, - const PyConfig *config2); -extern PyStatus _PyConfig_InitPathConfig( - PyConfig *config, - int compute_path_config); -extern PyStatus _PyConfig_InitImportConfig(PyConfig *config); -extern PyStatus _PyConfig_Read(PyConfig *config, int compute_path_config); -extern PyStatus _PyConfig_Write(const PyConfig *config, - struct pyruntimestate *runtime); -extern PyStatus _PyConfig_SetPyArgv( - PyConfig *config, - const _PyArgv *args); - -PyAPI_FUNC(PyObject*) _PyConfig_AsDict(const PyConfig *config); -PyAPI_FUNC(int) _PyConfig_FromDict(PyConfig *config, PyObject *dict); - -extern void _Py_DumpPathConfig(PyThreadState *tstate); - -PyAPI_FUNC(PyObject*) _Py_Get_Getpath_CodeObject(void); - - -/* --- Function used for testing ---------------------------------- */ - -PyAPI_FUNC(PyObject*) _Py_GetConfigsAsDict(void); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_CORECONFIG_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_instruments.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_instruments.h deleted file mode 100644 index 87f70d2..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_instruments.h +++ /dev/null @@ -1,106 +0,0 @@ - -#ifndef Py_INTERNAL_INSTRUMENT_H -#define Py_INTERNAL_INSTRUMENT_H - - -#include "pycore_bitutils.h" // _Py_popcount32 -#include "pycore_frame.h" - -#include "cpython/code.h" - -#ifdef __cplusplus -extern "C" { -#endif - -#define PY_MONITORING_TOOL_IDS 8 - -/* Local events. - * These require bytecode instrumentation */ - -#define PY_MONITORING_EVENT_PY_START 0 -#define PY_MONITORING_EVENT_PY_RESUME 1 -#define PY_MONITORING_EVENT_PY_RETURN 2 -#define PY_MONITORING_EVENT_PY_YIELD 3 -#define PY_MONITORING_EVENT_CALL 4 -#define PY_MONITORING_EVENT_LINE 5 -#define PY_MONITORING_EVENT_INSTRUCTION 6 -#define PY_MONITORING_EVENT_JUMP 7 -#define PY_MONITORING_EVENT_BRANCH 8 -#define PY_MONITORING_EVENT_STOP_ITERATION 9 - -#define PY_MONITORING_IS_INSTRUMENTED_EVENT(ev) \ - ((ev) < _PY_MONITORING_LOCAL_EVENTS) - -/* Other events, mainly exceptions */ - -#define PY_MONITORING_EVENT_RAISE 10 -#define PY_MONITORING_EVENT_EXCEPTION_HANDLED 11 -#define PY_MONITORING_EVENT_PY_UNWIND 12 -#define PY_MONITORING_EVENT_PY_THROW 13 -#define PY_MONITORING_EVENT_RERAISE 14 - - -/* Ancilliary events */ - -#define PY_MONITORING_EVENT_C_RETURN 15 -#define PY_MONITORING_EVENT_C_RAISE 16 - - -typedef uint32_t _PyMonitoringEventSet; - -/* Tool IDs */ - -/* These are defined in PEP 669 for convenience to avoid clashes */ -#define PY_MONITORING_DEBUGGER_ID 0 -#define PY_MONITORING_COVERAGE_ID 1 -#define PY_MONITORING_PROFILER_ID 2 -#define PY_MONITORING_OPTIMIZER_ID 5 - -/* Internal IDs used to suuport sys.setprofile() and sys.settrace() */ -#define PY_MONITORING_SYS_PROFILE_ID 6 -#define PY_MONITORING_SYS_TRACE_ID 7 - - -PyObject *_PyMonitoring_RegisterCallback(int tool_id, int event_id, PyObject *obj); - -int _PyMonitoring_SetEvents(int tool_id, _PyMonitoringEventSet events); - -extern int -_Py_call_instrumentation(PyThreadState *tstate, int event, - _PyInterpreterFrame *frame, _Py_CODEUNIT *instr); - -extern int -_Py_call_instrumentation_line(PyThreadState *tstate, _PyInterpreterFrame* frame, - _Py_CODEUNIT *instr, _Py_CODEUNIT *prev); - -extern int -_Py_call_instrumentation_instruction( - PyThreadState *tstate, _PyInterpreterFrame* frame, _Py_CODEUNIT *instr); - -_Py_CODEUNIT * -_Py_call_instrumentation_jump( - PyThreadState *tstate, int event, - _PyInterpreterFrame *frame, _Py_CODEUNIT *instr, _Py_CODEUNIT *target); - -extern int -_Py_call_instrumentation_arg(PyThreadState *tstate, int event, - _PyInterpreterFrame *frame, _Py_CODEUNIT *instr, PyObject *arg); - -extern int -_Py_call_instrumentation_2args(PyThreadState *tstate, int event, - _PyInterpreterFrame *frame, _Py_CODEUNIT *instr, PyObject *arg0, PyObject *arg1); - -extern void -_Py_call_instrumentation_exc2(PyThreadState *tstate, int event, - _PyInterpreterFrame *frame, _Py_CODEUNIT *instr, PyObject *arg0, PyObject *arg1); - -extern int -_Py_Instrumentation_GetLine(PyCodeObject *code, int index); - -extern PyObject _PyInstrumentation_MISSING; -extern PyObject _PyInstrumentation_DISABLE; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_INSTRUMENT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_interp.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_interp.h deleted file mode 100644 index 37cc88e..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_interp.h +++ /dev/null @@ -1,275 +0,0 @@ -#ifndef Py_INTERNAL_INTERP_H -#define Py_INTERNAL_INTERP_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include - -#include "pycore_ast_state.h" // struct ast_state -#include "pycore_atexit.h" // struct atexit_state -#include "pycore_atomic.h" // _Py_atomic_address -#include "pycore_ceval_state.h" // struct _ceval_state -#include "pycore_code.h" // struct callable_cache -#include "pycore_context.h" // struct _Py_context_state -#include "pycore_dict_state.h" // struct _Py_dict_state -#include "pycore_dtoa.h" // struct _dtoa_state -#include "pycore_exceptions.h" // struct _Py_exc_state -#include "pycore_floatobject.h" // struct _Py_float_state -#include "pycore_function.h" // FUNC_MAX_WATCHERS -#include "pycore_genobject.h" // struct _Py_async_gen_state -#include "pycore_gc.h" // struct _gc_runtime_state -#include "pycore_global_objects.h" // struct _Py_interp_static_objects -#include "pycore_import.h" // struct _import_state -#include "pycore_instruments.h" // _PY_MONITORING_EVENTS -#include "pycore_list.h" // struct _Py_list_state -#include "pycore_object_state.h" // struct _py_object_state -#include "pycore_obmalloc.h" // struct obmalloc_state -#include "pycore_tuple.h" // struct _Py_tuple_state -#include "pycore_typeobject.h" // struct type_cache -#include "pycore_unicodeobject.h" // struct _Py_unicode_state -#include "pycore_warnings.h" // struct _warnings_runtime_state - - -struct _Py_long_state { - int max_str_digits; -}; - - -/* cross-interpreter data registry */ - -/* For now we use a global registry of shareable classes. An - alternative would be to add a tp_* slot for a class's - crossinterpdatafunc. It would be simpler and more efficient. */ - -struct _xidregitem; - -struct _xidregitem { - struct _xidregitem *prev; - struct _xidregitem *next; - /* This can be a dangling pointer, but only if weakref is set. */ - PyTypeObject *cls; - /* This is NULL for builtin types. */ - PyObject *weakref; - size_t refcount; - crossinterpdatafunc getdata; -}; - -struct _xidregistry { - PyThread_type_lock mutex; - struct _xidregitem *head; -}; - - -/* interpreter state */ - -/* PyInterpreterState holds the global state for one of the runtime's - interpreters. Typically the initial (main) interpreter is the only one. - - The PyInterpreterState typedef is in Include/pytypedefs.h. - */ -struct _is { - - PyInterpreterState *next; - - int64_t id; - int64_t id_refcount; - int requires_idref; - PyThread_type_lock id_mutex; - - /* Has been initialized to a safe state. - - In order to be effective, this must be set to 0 during or right - after allocation. */ - int _initialized; - int finalizing; - - uint64_t monitoring_version; - uint64_t last_restart_version; - struct pythreads { - uint64_t next_unique_id; - /* The linked list of threads, newest first. */ - PyThreadState *head; - /* Used in Modules/_threadmodule.c. */ - long count; - /* Support for runtime thread stack size tuning. - A value of 0 means using the platform's default stack size - or the size specified by the THREAD_STACK_SIZE macro. */ - /* Used in Python/thread.c. */ - size_t stacksize; - } threads; - - /* Reference to the _PyRuntime global variable. This field exists - to not have to pass runtime in addition to tstate to a function. - Get runtime from tstate: tstate->interp->runtime. */ - struct pyruntimestate *runtime; - - /* Set by Py_EndInterpreter(). - - Use _PyInterpreterState_GetFinalizing() - and _PyInterpreterState_SetFinalizing() - to access it, don't access it directly. */ - _Py_atomic_address _finalizing; - - struct _gc_runtime_state gc; - - /* The following fields are here to avoid allocation during init. - The data is exposed through PyInterpreterState pointer fields. - These fields should not be accessed directly outside of init. - - All other PyInterpreterState pointer fields are populated when - needed and default to NULL. - - For now there are some exceptions to that rule, which require - allocation during init. These will be addressed on a case-by-case - basis. Also see _PyRuntimeState regarding the various mutex fields. - */ - - // Dictionary of the sys module - PyObject *sysdict; - - // Dictionary of the builtins module - PyObject *builtins; - - struct _ceval_state ceval; - - struct _import_state imports; - - /* The per-interpreter GIL, which might not be used. */ - struct _gil_runtime_state _gil; - - /* ---------- IMPORTANT --------------------------- - The fields above this line are declared as early as - possible to facilitate out-of-process observability - tools. */ - - PyObject *codec_search_path; - PyObject *codec_search_cache; - PyObject *codec_error_registry; - int codecs_initialized; - - PyConfig config; - unsigned long feature_flags; - - PyObject *dict; /* Stores per-interpreter state */ - - PyObject *sysdict_copy; - PyObject *builtins_copy; - // Initialized to _PyEval_EvalFrameDefault(). - _PyFrameEvalFunction eval_frame; - - PyFunction_WatchCallback func_watchers[FUNC_MAX_WATCHERS]; - // One bit is set for each non-NULL entry in func_watchers - uint8_t active_func_watchers; - - Py_ssize_t co_extra_user_count; - freefunc co_extra_freefuncs[MAX_CO_EXTRA_USERS]; - -#ifdef HAVE_FORK - PyObject *before_forkers; - PyObject *after_forkers_parent; - PyObject *after_forkers_child; -#endif - - struct _warnings_runtime_state warnings; - struct atexit_state atexit; - - struct _obmalloc_state obmalloc; - - PyObject *audit_hooks; - PyType_WatchCallback type_watchers[TYPE_MAX_WATCHERS]; - PyCode_WatchCallback code_watchers[CODE_MAX_WATCHERS]; - // One bit is set for each non-NULL entry in code_watchers - uint8_t active_code_watchers; - - struct _py_object_state object_state; - struct _Py_unicode_state unicode; - struct _Py_float_state float_state; - struct _Py_long_state long_state; - struct _dtoa_state dtoa; - struct _py_func_state func_state; - /* Using a cache is very effective since typically only a single slice is - created and then deleted again. */ - PySliceObject *slice_cache; - - struct _Py_tuple_state tuple; - struct _Py_list_state list; - struct _Py_dict_state dict_state; - struct _Py_async_gen_state async_gen; - struct _Py_context_state context; - struct _Py_exc_state exc_state; - - struct ast_state ast; - struct types_state types; - struct callable_cache callable_cache; - PyCodeObject *interpreter_trampoline; - - _Py_GlobalMonitors monitors; - bool f_opcode_trace_set; - bool sys_profile_initialized; - bool sys_trace_initialized; - Py_ssize_t sys_profiling_threads; /* Count of threads with c_profilefunc set */ - Py_ssize_t sys_tracing_threads; /* Count of threads with c_tracefunc set */ - PyObject *monitoring_callables[PY_MONITORING_TOOL_IDS][_PY_MONITORING_EVENTS]; - PyObject *monitoring_tool_names[PY_MONITORING_TOOL_IDS]; - - struct _Py_interp_cached_objects cached_objects; - struct _Py_interp_static_objects static_objects; - - // XXX Remove this field once we have a tp_* slot. - struct _xidregistry xidregistry; - /* The thread currently executing in the __main__ module, if any. */ - PyThreadState *threads_main; - /* The ID of the OS thread in which we are finalizing. - We use _Py_atomic_address instead of adding a new _Py_atomic_ulong. */ - _Py_atomic_address _finalizing_id; - - /* the initial PyInterpreterState.threads.head */ - PyThreadState _initial_thread; -}; - - -/* other API */ - -extern void _PyInterpreterState_Clear(PyThreadState *tstate); - - -static inline PyThreadState* -_PyInterpreterState_GetFinalizing(PyInterpreterState *interp) { - return (PyThreadState*)_Py_atomic_load_relaxed(&interp->_finalizing); -} - -static inline unsigned long -_PyInterpreterState_GetFinalizingID(PyInterpreterState *interp) { - return (unsigned long)_Py_atomic_load_relaxed(&interp->_finalizing_id); -} - -static inline void -_PyInterpreterState_SetFinalizing(PyInterpreterState *interp, PyThreadState *tstate) { - _Py_atomic_store_relaxed(&interp->_finalizing, (uintptr_t)tstate); - if (tstate == NULL) { - _Py_atomic_store_relaxed(&interp->_finalizing_id, 0); - } - else { - // XXX Re-enable this assert once gh-109860 is fixed. - //assert(tstate->thread_id == PyThread_get_thread_ident()); - _Py_atomic_store_relaxed(&interp->_finalizing_id, - (uintptr_t)tstate->thread_id); - } -} - - -PyAPI_FUNC(PyInterpreterState*) _PyInterpreterState_LookUpID(int64_t); - -PyAPI_FUNC(int) _PyInterpreterState_IDInitref(PyInterpreterState *); -PyAPI_FUNC(int) _PyInterpreterState_IDIncref(PyInterpreterState *); -PyAPI_FUNC(void) _PyInterpreterState_IDDecref(PyInterpreterState *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_INTERP_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_intrinsics.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_intrinsics.h deleted file mode 100644 index 39f1568..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_intrinsics.h +++ /dev/null @@ -1,32 +0,0 @@ -// Auto-generated by Tools/build/generate_opcode_h.py from Lib/opcode.py - -/* Unary Functions: */ -#define INTRINSIC_1_INVALID 0 -#define INTRINSIC_PRINT 1 -#define INTRINSIC_IMPORT_STAR 2 -#define INTRINSIC_STOPITERATION_ERROR 3 -#define INTRINSIC_ASYNC_GEN_WRAP 4 -#define INTRINSIC_UNARY_POSITIVE 5 -#define INTRINSIC_LIST_TO_TUPLE 6 -#define INTRINSIC_TYPEVAR 7 -#define INTRINSIC_PARAMSPEC 8 -#define INTRINSIC_TYPEVARTUPLE 9 -#define INTRINSIC_SUBSCRIPT_GENERIC 10 -#define INTRINSIC_TYPEALIAS 11 - -#define MAX_INTRINSIC_1 11 - - -/* Binary Functions: */ -#define INTRINSIC_2_INVALID 0 -#define INTRINSIC_PREP_RERAISE_STAR 1 -#define INTRINSIC_TYPEVAR_WITH_BOUND 2 -#define INTRINSIC_TYPEVAR_WITH_CONSTRAINTS 3 -#define INTRINSIC_SET_FUNCTION_TYPE_PARAMS 4 - -#define MAX_INTRINSIC_2 4 - -typedef PyObject *(*instrinsic_func1)(PyThreadState* tstate, PyObject *value); -typedef PyObject *(*instrinsic_func2)(PyThreadState* tstate, PyObject *value1, PyObject *value2); -extern const instrinsic_func1 _PyIntrinsics_UnaryFunctions[]; -extern const instrinsic_func2 _PyIntrinsics_BinaryFunctions[]; diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_list.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_list.h deleted file mode 100644 index 2fcbe12..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_list.h +++ /dev/null @@ -1,83 +0,0 @@ -#ifndef Py_INTERNAL_LIST_H -#define Py_INTERNAL_LIST_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "listobject.h" // _PyList_CAST() - - -/* runtime lifecycle */ - -extern void _PyList_Fini(PyInterpreterState *); - - -/* other API */ - -#ifndef WITH_FREELISTS -// without freelists -# define PyList_MAXFREELIST 0 -#endif - -/* Empty list reuse scheme to save calls to malloc and free */ -#ifndef PyList_MAXFREELIST -# define PyList_MAXFREELIST 80 -#endif - -struct _Py_list_state { -#if PyList_MAXFREELIST > 0 - PyListObject *free_list[PyList_MAXFREELIST]; - int numfree; -#endif -}; - -#define _PyList_ITEMS(op) _Py_RVALUE(_PyList_CAST(op)->ob_item) - -extern int -_PyList_AppendTakeRefListResize(PyListObject *self, PyObject *newitem); - -static inline int -_PyList_AppendTakeRef(PyListObject *self, PyObject *newitem) -{ - assert(self != NULL && newitem != NULL); - assert(PyList_Check(self)); - Py_ssize_t len = PyList_GET_SIZE(self); - Py_ssize_t allocated = self->allocated; - assert((size_t)len + 1 < PY_SSIZE_T_MAX); - if (allocated > len) { - PyList_SET_ITEM(self, len, newitem); - Py_SET_SIZE(self, len + 1); - return 0; - } - return _PyList_AppendTakeRefListResize(self, newitem); -} - -// Repeat the bytes of a buffer in place -static inline void -_Py_memory_repeat(char* dest, Py_ssize_t len_dest, Py_ssize_t len_src) -{ - assert(len_src > 0); - Py_ssize_t copied = len_src; - while (copied < len_dest) { - Py_ssize_t bytes_to_copy = Py_MIN(copied, len_dest - copied); - memcpy(dest + copied, dest, bytes_to_copy); - copied += bytes_to_copy; - } -} - -typedef struct { - PyObject_HEAD - Py_ssize_t it_index; - PyListObject *it_seq; /* Set to NULL when iterator is exhausted */ -} _PyListIterObject; - -extern PyObject *_PyList_FromArraySteal(PyObject *const *src, Py_ssize_t n); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_LIST_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_long.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_long.h deleted file mode 100644 index 64c00cb..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_long.h +++ /dev/null @@ -1,258 +0,0 @@ -#ifndef Py_INTERNAL_LONG_H -#define Py_INTERNAL_LONG_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_global_objects.h" // _PY_NSMALLNEGINTS -#include "pycore_runtime.h" // _PyRuntime - -/* - * Default int base conversion size limitation: Denial of Service prevention. - * - * Chosen such that this isn't wildly slow on modern hardware and so that - * everyone's existing deployed numpy test suite passes before - * https://github.com/numpy/numpy/issues/22098 is widely available. - * - * $ python -m timeit -s 's = "1"*4300' 'int(s)' - * 2000 loops, best of 5: 125 usec per loop - * $ python -m timeit -s 's = "1"*4300; v = int(s)' 'str(v)' - * 1000 loops, best of 5: 311 usec per loop - * (zen2 cloud VM) - * - * 4300 decimal digits fits a ~14284 bit number. - */ -#define _PY_LONG_DEFAULT_MAX_STR_DIGITS 4300 -/* - * Threshold for max digits check. For performance reasons int() and - * int.__str__() don't checks values that are smaller than this - * threshold. Acts as a guaranteed minimum size limit for bignums that - * applications can expect from CPython. - * - * % python -m timeit -s 's = "1"*640; v = int(s)' 'str(int(s))' - * 20000 loops, best of 5: 12 usec per loop - * - * "640 digits should be enough for anyone." - gps - * fits a ~2126 bit decimal number. - */ -#define _PY_LONG_MAX_STR_DIGITS_THRESHOLD 640 - -#if ((_PY_LONG_DEFAULT_MAX_STR_DIGITS != 0) && \ - (_PY_LONG_DEFAULT_MAX_STR_DIGITS < _PY_LONG_MAX_STR_DIGITS_THRESHOLD)) -# error "_PY_LONG_DEFAULT_MAX_STR_DIGITS smaller than threshold." -#endif - - -/* runtime lifecycle */ - -extern PyStatus _PyLong_InitTypes(PyInterpreterState *); -extern void _PyLong_FiniTypes(PyInterpreterState *interp); - - -/* other API */ - -#define _PyLong_SMALL_INTS _Py_SINGLETON(small_ints) - -// _PyLong_GetZero() and _PyLong_GetOne() must always be available -// _PyLong_FromUnsignedChar must always be available -#if _PY_NSMALLPOSINTS < 257 -# error "_PY_NSMALLPOSINTS must be greater than or equal to 257" -#endif - -// Return a borrowed reference to the zero singleton. -// The function cannot return NULL. -static inline PyObject* _PyLong_GetZero(void) -{ return (PyObject *)&_PyLong_SMALL_INTS[_PY_NSMALLNEGINTS]; } - -// Return a borrowed reference to the one singleton. -// The function cannot return NULL. -static inline PyObject* _PyLong_GetOne(void) -{ return (PyObject *)&_PyLong_SMALL_INTS[_PY_NSMALLNEGINTS+1]; } - -static inline PyObject* _PyLong_FromUnsignedChar(unsigned char i) -{ - return Py_NewRef((PyObject *)&_PyLong_SMALL_INTS[_PY_NSMALLNEGINTS+i]); -} - -PyObject *_PyLong_Add(PyLongObject *left, PyLongObject *right); -PyObject *_PyLong_Multiply(PyLongObject *left, PyLongObject *right); -PyObject *_PyLong_Subtract(PyLongObject *left, PyLongObject *right); - -/* Used by Python/mystrtoul.c, _PyBytes_FromHex(), - _PyBytes_DecodeEscape(), etc. */ -PyAPI_DATA(unsigned char) _PyLong_DigitValue[256]; - -/* Format the object based on the format_spec, as defined in PEP 3101 - (Advanced String Formatting). */ -PyAPI_FUNC(int) _PyLong_FormatAdvancedWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - PyObject *format_spec, - Py_ssize_t start, - Py_ssize_t end); - -PyAPI_FUNC(int) _PyLong_FormatWriter( - _PyUnicodeWriter *writer, - PyObject *obj, - int base, - int alternate); - -PyAPI_FUNC(char*) _PyLong_FormatBytesWriter( - _PyBytesWriter *writer, - char *str, - PyObject *obj, - int base, - int alternate); - -/* Long value tag bits: - * 0-1: Sign bits value = (1-sign), ie. negative=2, positive=0, zero=1. - * 2: Reserved for immortality bit - * 3+ Unsigned digit count - */ -#define SIGN_MASK 3 -#define SIGN_ZERO 1 -#define SIGN_NEGATIVE 2 -#define NON_SIZE_BITS 3 - -/* The functions _PyLong_IsCompact and _PyLong_CompactValue are defined - * in Include/cpython/longobject.h, since they need to be inline. - * - * "Compact" values have at least one bit to spare, - * so that addition and subtraction can be performed on the values - * without risk of overflow. - * - * The inline functions need tag bits. - * For readability, rather than do `#define SIGN_MASK _PyLong_SIGN_MASK` - * we define them to the numbers in both places and then assert that - * they're the same. - */ -static_assert(SIGN_MASK == _PyLong_SIGN_MASK, "SIGN_MASK does not match _PyLong_SIGN_MASK"); -static_assert(NON_SIZE_BITS == _PyLong_NON_SIZE_BITS, "NON_SIZE_BITS does not match _PyLong_NON_SIZE_BITS"); - -/* All *compact" values are guaranteed to fit into - * a Py_ssize_t with at least one bit to spare. - * In other words, for 64 bit machines, compact - * will be signed 63 (or fewer) bit values - */ - -/* Return 1 if the argument is compact int */ -static inline int -_PyLong_IsNonNegativeCompact(const PyLongObject* op) { - assert(PyLong_Check(op)); - return op->long_value.lv_tag <= (1 << NON_SIZE_BITS); -} - - -static inline int -_PyLong_BothAreCompact(const PyLongObject* a, const PyLongObject* b) { - assert(PyLong_Check(a)); - assert(PyLong_Check(b)); - return (a->long_value.lv_tag | b->long_value.lv_tag) < (2 << NON_SIZE_BITS); -} - -static inline bool -_PyLong_IsZero(const PyLongObject *op) -{ - return (op->long_value.lv_tag & SIGN_MASK) == SIGN_ZERO; -} - -static inline bool -_PyLong_IsNegative(const PyLongObject *op) -{ - return (op->long_value.lv_tag & SIGN_MASK) == SIGN_NEGATIVE; -} - -static inline bool -_PyLong_IsPositive(const PyLongObject *op) -{ - return (op->long_value.lv_tag & SIGN_MASK) == 0; -} - -static inline Py_ssize_t -_PyLong_DigitCount(const PyLongObject *op) -{ - assert(PyLong_Check(op)); - return op->long_value.lv_tag >> NON_SIZE_BITS; -} - -/* Equivalent to _PyLong_DigitCount(op) * _PyLong_NonCompactSign(op) */ -static inline Py_ssize_t -_PyLong_SignedDigitCount(const PyLongObject *op) -{ - assert(PyLong_Check(op)); - Py_ssize_t sign = 1 - (op->long_value.lv_tag & SIGN_MASK); - return sign * (Py_ssize_t)(op->long_value.lv_tag >> NON_SIZE_BITS); -} - -static inline int -_PyLong_CompactSign(const PyLongObject *op) -{ - assert(PyLong_Check(op)); - assert(_PyLong_IsCompact(op)); - return 1 - (op->long_value.lv_tag & SIGN_MASK); -} - -static inline int -_PyLong_NonCompactSign(const PyLongObject *op) -{ - assert(PyLong_Check(op)); - assert(!_PyLong_IsCompact(op)); - return 1 - (op->long_value.lv_tag & SIGN_MASK); -} - -/* Do a and b have the same sign? */ -static inline int -_PyLong_SameSign(const PyLongObject *a, const PyLongObject *b) -{ - return (a->long_value.lv_tag & SIGN_MASK) == (b->long_value.lv_tag & SIGN_MASK); -} - -#define TAG_FROM_SIGN_AND_SIZE(sign, size) ((1 - (sign)) | ((size) << NON_SIZE_BITS)) - -static inline void -_PyLong_SetSignAndDigitCount(PyLongObject *op, int sign, Py_ssize_t size) -{ - assert(size >= 0); - assert(-1 <= sign && sign <= 1); - assert(sign != 0 || size == 0); - op->long_value.lv_tag = TAG_FROM_SIGN_AND_SIZE(sign, (size_t)size); -} - -static inline void -_PyLong_SetDigitCount(PyLongObject *op, Py_ssize_t size) -{ - assert(size >= 0); - op->long_value.lv_tag = (((size_t)size) << NON_SIZE_BITS) | (op->long_value.lv_tag & SIGN_MASK); -} - -#define NON_SIZE_MASK ~((1 << NON_SIZE_BITS) - 1) - -static inline void -_PyLong_FlipSign(PyLongObject *op) { - unsigned int flipped_sign = 2 - (op->long_value.lv_tag & SIGN_MASK); - op->long_value.lv_tag &= NON_SIZE_MASK; - op->long_value.lv_tag |= flipped_sign; -} - -#define _PyLong_DIGIT_INIT(val) \ - { \ - .ob_base = _PyObject_HEAD_INIT(&PyLong_Type) \ - .long_value = { \ - .lv_tag = TAG_FROM_SIGN_AND_SIZE( \ - (val) == 0 ? 0 : ((val) < 0 ? -1 : 1), \ - (val) == 0 ? 0 : 1), \ - { ((val) >= 0 ? (val) : -(val)) }, \ - } \ - } - -#define _PyLong_FALSE_TAG TAG_FROM_SIGN_AND_SIZE(0, 0) -#define _PyLong_TRUE_TAG TAG_FROM_SIGN_AND_SIZE(1, 1) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_LONG_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_memoryobject.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_memoryobject.h deleted file mode 100644 index fe19e3f..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_memoryobject.h +++ /dev/null @@ -1,18 +0,0 @@ -#ifndef Py_INTERNAL_MEMORYOBJECT_H -#define Py_INTERNAL_MEMORYOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -PyObject * -_PyMemoryView_FromBufferProc(PyObject *v, int flags, - getbufferproc bufferproc); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_MEMORYOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_moduleobject.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_moduleobject.h deleted file mode 100644 index 15a1bcb..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_moduleobject.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef Py_INTERNAL_MODULEOBJECT_H -#define Py_INTERNAL_MODULEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -typedef struct { - PyObject_HEAD - PyObject *md_dict; - PyModuleDef *md_def; - void *md_state; - PyObject *md_weaklist; - // for logging purposes after md_dict is cleared - PyObject *md_name; -} PyModuleObject; - -static inline PyModuleDef* _PyModule_GetDef(PyObject *mod) { - assert(PyModule_Check(mod)); - return ((PyModuleObject *)mod)->md_def; -} - -static inline void* _PyModule_GetState(PyObject* mod) { - assert(PyModule_Check(mod)); - return ((PyModuleObject *)mod)->md_state; -} - -static inline PyObject* _PyModule_GetDict(PyObject *mod) { - assert(PyModule_Check(mod)); - PyObject *dict = ((PyModuleObject *)mod) -> md_dict; - // _PyModule_GetDict(mod) must not be used after calling module_clear(mod) - assert(dict != NULL); - return dict; -} - -PyObject* _Py_module_getattro_impl(PyModuleObject *m, PyObject *name, int suppress); -PyObject* _Py_module_getattro(PyModuleObject *m, PyObject *name); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_MODULEOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_namespace.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_namespace.h deleted file mode 100644 index cb76f04..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_namespace.h +++ /dev/null @@ -1,20 +0,0 @@ -// Simple namespace object interface - -#ifndef Py_INTERNAL_NAMESPACE_H -#define Py_INTERNAL_NAMESPACE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -PyAPI_DATA(PyTypeObject) _PyNamespace_Type; - -PyAPI_FUNC(PyObject *) _PyNamespace_New(PyObject *kwds); - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_NAMESPACE_H diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_object.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_object.h deleted file mode 100644 index 7a2f13a..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_object.h +++ /dev/null @@ -1,443 +0,0 @@ -#ifndef Py_INTERNAL_OBJECT_H -#define Py_INTERNAL_OBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include -#include "pycore_gc.h" // _PyObject_GC_IS_TRACKED() -#include "pycore_interp.h" // PyInterpreterState.gc -#include "pycore_pystate.h" // _PyInterpreterState_GET() -#include "pycore_runtime.h" // _PyRuntime - -/* We need to maintain an internal copy of Py{Var}Object_HEAD_INIT to avoid - designated initializer conflicts in C++20. If we use the deinition in - object.h, we will be mixing designated and non-designated initializers in - pycore objects which is forbiddent in C++20. However, if we then use - designated initializers in object.h then Extensions without designated break. - Furthermore, we can't use designated initializers in Extensions since these - are not supported pre-C++20. Thus, keeping an internal copy here is the most - backwards compatible solution */ -#define _PyObject_HEAD_INIT(type) \ - { \ - _PyObject_EXTRA_INIT \ - .ob_refcnt = _Py_IMMORTAL_REFCNT, \ - .ob_type = (type) \ - }, -#define _PyVarObject_HEAD_INIT(type, size) \ - { \ - .ob_base = _PyObject_HEAD_INIT(type) \ - .ob_size = size \ - }, - -PyAPI_FUNC(void) _Py_NO_RETURN _Py_FatalRefcountErrorFunc( - const char *func, - const char *message); - -#define _Py_FatalRefcountError(message) \ - _Py_FatalRefcountErrorFunc(__func__, (message)) - - -#ifdef Py_REF_DEBUG -/* The symbol is only exposed in the API for the sake of extensions - built against the pre-3.12 stable ABI. */ -PyAPI_DATA(Py_ssize_t) _Py_RefTotal; - -extern void _Py_AddRefTotal(PyInterpreterState *, Py_ssize_t); -extern void _Py_IncRefTotal(PyInterpreterState *); -extern void _Py_DecRefTotal(PyInterpreterState *); - -# define _Py_DEC_REFTOTAL(interp) \ - interp->object_state.reftotal-- -#endif - -// Increment reference count by n -static inline void _Py_RefcntAdd(PyObject* op, Py_ssize_t n) -{ - if (_Py_IsImmortal(op)) { - return; - } -#ifdef Py_REF_DEBUG - _Py_AddRefTotal(_PyInterpreterState_GET(), n); -#endif - op->ob_refcnt += n; -} -#define _Py_RefcntAdd(op, n) _Py_RefcntAdd(_PyObject_CAST(op), n) - -static inline void _Py_SetImmortal(PyObject *op) -{ - if (op) { - op->ob_refcnt = _Py_IMMORTAL_REFCNT; - } -} -#define _Py_SetImmortal(op) _Py_SetImmortal(_PyObject_CAST(op)) - -/* _Py_ClearImmortal() should only be used during runtime finalization. */ -static inline void _Py_ClearImmortal(PyObject *op) -{ - if (op) { - assert(op->ob_refcnt == _Py_IMMORTAL_REFCNT); - op->ob_refcnt = 1; - Py_DECREF(op); - } -} -#define _Py_ClearImmortal(op) \ - do { \ - _Py_ClearImmortal(_PyObject_CAST(op)); \ - op = NULL; \ - } while (0) - -static inline void -_Py_DECREF_SPECIALIZED(PyObject *op, const destructor destruct) -{ - if (_Py_IsImmortal(op)) { - return; - } - _Py_DECREF_STAT_INC(); -#ifdef Py_REF_DEBUG - _Py_DEC_REFTOTAL(_PyInterpreterState_GET()); -#endif - if (--op->ob_refcnt != 0) { - assert(op->ob_refcnt > 0); - } - else { -#ifdef Py_TRACE_REFS - _Py_ForgetReference(op); -#endif - destruct(op); - } -} - -static inline void -_Py_DECREF_NO_DEALLOC(PyObject *op) -{ - if (_Py_IsImmortal(op)) { - return; - } - _Py_DECREF_STAT_INC(); -#ifdef Py_REF_DEBUG - _Py_DEC_REFTOTAL(_PyInterpreterState_GET()); -#endif - op->ob_refcnt--; -#ifdef Py_DEBUG - if (op->ob_refcnt <= 0) { - _Py_FatalRefcountError("Expected a positive remaining refcount"); - } -#endif -} - -#ifdef Py_REF_DEBUG -# undef _Py_DEC_REFTOTAL -#endif - - -PyAPI_FUNC(int) _PyType_CheckConsistency(PyTypeObject *type); -PyAPI_FUNC(int) _PyDict_CheckConsistency(PyObject *mp, int check_content); - -/* Update the Python traceback of an object. This function must be called - when a memory block is reused from a free list. - - Internal function called by _Py_NewReference(). */ -extern int _PyTraceMalloc_NewReference(PyObject *op); - -// Fast inlined version of PyType_HasFeature() -static inline int -_PyType_HasFeature(PyTypeObject *type, unsigned long feature) { - return ((type->tp_flags & feature) != 0); -} - -extern void _PyType_InitCache(PyInterpreterState *interp); - -extern void _PyObject_InitState(PyInterpreterState *interp); - -/* Inline functions trading binary compatibility for speed: - _PyObject_Init() is the fast version of PyObject_Init(), and - _PyObject_InitVar() is the fast version of PyObject_InitVar(). - - These inline functions must not be called with op=NULL. */ -static inline void -_PyObject_Init(PyObject *op, PyTypeObject *typeobj) -{ - assert(op != NULL); - Py_SET_TYPE(op, typeobj); - if (_PyType_HasFeature(typeobj, Py_TPFLAGS_HEAPTYPE)) { - Py_INCREF(typeobj); - } - _Py_NewReference(op); -} - -static inline void -_PyObject_InitVar(PyVarObject *op, PyTypeObject *typeobj, Py_ssize_t size) -{ - assert(op != NULL); - assert(typeobj != &PyLong_Type); - _PyObject_Init((PyObject *)op, typeobj); - Py_SET_SIZE(op, size); -} - - -/* Tell the GC to track this object. - * - * The object must not be tracked by the GC. - * - * NB: While the object is tracked by the collector, it must be safe to call the - * ob_traverse method. - * - * Internal note: interp->gc.generation0->_gc_prev doesn't have any bit flags - * because it's not object header. So we don't use _PyGCHead_PREV() and - * _PyGCHead_SET_PREV() for it to avoid unnecessary bitwise operations. - * - * See also the public PyObject_GC_Track() function. - */ -static inline void _PyObject_GC_TRACK( -// The preprocessor removes _PyObject_ASSERT_FROM() calls if NDEBUG is defined -#ifndef NDEBUG - const char *filename, int lineno, -#endif - PyObject *op) -{ - _PyObject_ASSERT_FROM(op, !_PyObject_GC_IS_TRACKED(op), - "object already tracked by the garbage collector", - filename, lineno, __func__); - - PyGC_Head *gc = _Py_AS_GC(op); - _PyObject_ASSERT_FROM(op, - (gc->_gc_prev & _PyGC_PREV_MASK_COLLECTING) == 0, - "object is in generation which is garbage collected", - filename, lineno, __func__); - - PyInterpreterState *interp = _PyInterpreterState_GET(); - PyGC_Head *generation0 = interp->gc.generation0; - PyGC_Head *last = (PyGC_Head*)(generation0->_gc_prev); - _PyGCHead_SET_NEXT(last, gc); - _PyGCHead_SET_PREV(gc, last); - _PyGCHead_SET_NEXT(gc, generation0); - generation0->_gc_prev = (uintptr_t)gc; -} - -/* Tell the GC to stop tracking this object. - * - * Internal note: This may be called while GC. So _PyGC_PREV_MASK_COLLECTING - * must be cleared. But _PyGC_PREV_MASK_FINALIZED bit is kept. - * - * The object must be tracked by the GC. - * - * See also the public PyObject_GC_UnTrack() which accept an object which is - * not tracked. - */ -static inline void _PyObject_GC_UNTRACK( -// The preprocessor removes _PyObject_ASSERT_FROM() calls if NDEBUG is defined -#ifndef NDEBUG - const char *filename, int lineno, -#endif - PyObject *op) -{ - _PyObject_ASSERT_FROM(op, _PyObject_GC_IS_TRACKED(op), - "object not tracked by the garbage collector", - filename, lineno, __func__); - - PyGC_Head *gc = _Py_AS_GC(op); - PyGC_Head *prev = _PyGCHead_PREV(gc); - PyGC_Head *next = _PyGCHead_NEXT(gc); - _PyGCHead_SET_NEXT(prev, next); - _PyGCHead_SET_PREV(next, prev); - gc->_gc_next = 0; - gc->_gc_prev &= _PyGC_PREV_MASK_FINALIZED; -} - -// Macros to accept any type for the parameter, and to automatically pass -// the filename and the filename (if NDEBUG is not defined) where the macro -// is called. -#ifdef NDEBUG -# define _PyObject_GC_TRACK(op) \ - _PyObject_GC_TRACK(_PyObject_CAST(op)) -# define _PyObject_GC_UNTRACK(op) \ - _PyObject_GC_UNTRACK(_PyObject_CAST(op)) -#else -# define _PyObject_GC_TRACK(op) \ - _PyObject_GC_TRACK(__FILE__, __LINE__, _PyObject_CAST(op)) -# define _PyObject_GC_UNTRACK(op) \ - _PyObject_GC_UNTRACK(__FILE__, __LINE__, _PyObject_CAST(op)) -#endif - -#ifdef Py_REF_DEBUG -extern void _PyInterpreterState_FinalizeRefTotal(PyInterpreterState *); -extern void _Py_FinalizeRefTotal(_PyRuntimeState *); -extern void _PyDebug_PrintTotalRefs(void); -#endif - -#ifdef Py_TRACE_REFS -extern void _Py_AddToAllObjects(PyObject *op, int force); -extern void _Py_PrintReferences(PyInterpreterState *, FILE *); -extern void _Py_PrintReferenceAddresses(PyInterpreterState *, FILE *); -#endif - - -/* Return the *address* of the object's weaklist. The address may be - * dereferenced to get the current head of the weaklist. This is useful - * for iterating over the linked list of weakrefs, especially when the - * list is being modified externally (e.g. refs getting removed). - * - * The returned pointer should not be used to change the head of the list - * nor should it be used to add, remove, or swap any refs in the list. - * That is the sole responsibility of the code in weakrefobject.c. - */ -static inline PyObject ** -_PyObject_GET_WEAKREFS_LISTPTR(PyObject *op) -{ - if (PyType_Check(op) && - ((PyTypeObject *)op)->tp_flags & _Py_TPFLAGS_STATIC_BUILTIN) { - PyInterpreterState *interp = _PyInterpreterState_GET(); - static_builtin_state *state = _PyStaticType_GetState( - interp, (PyTypeObject *)op); - return _PyStaticType_GET_WEAKREFS_LISTPTR(state); - } - // Essentially _PyObject_GET_WEAKREFS_LISTPTR_FROM_OFFSET(): - Py_ssize_t offset = Py_TYPE(op)->tp_weaklistoffset; - return (PyObject **)((char *)op + offset); -} - -/* This is a special case of _PyObject_GET_WEAKREFS_LISTPTR(). - * Only the most fundamental lookup path is used. - * Consequently, static types should not be used. - * - * For static builtin types the returned pointer will always point - * to a NULL tp_weaklist. This is fine for any deallocation cases, - * since static types are never deallocated and static builtin types - * are only finalized at the end of runtime finalization. - * - * If the weaklist for static types is actually needed then use - * _PyObject_GET_WEAKREFS_LISTPTR(). - */ -static inline PyWeakReference ** -_PyObject_GET_WEAKREFS_LISTPTR_FROM_OFFSET(PyObject *op) -{ - assert(!PyType_Check(op) || - ((PyTypeObject *)op)->tp_flags & Py_TPFLAGS_HEAPTYPE); - Py_ssize_t offset = Py_TYPE(op)->tp_weaklistoffset; - return (PyWeakReference **)((char *)op + offset); -} - - -// Fast inlined version of PyObject_IS_GC() -static inline int -_PyObject_IS_GC(PyObject *obj) -{ - return (PyType_IS_GC(Py_TYPE(obj)) - && (Py_TYPE(obj)->tp_is_gc == NULL - || Py_TYPE(obj)->tp_is_gc(obj))); -} - -// Fast inlined version of PyType_IS_GC() -#define _PyType_IS_GC(t) _PyType_HasFeature((t), Py_TPFLAGS_HAVE_GC) - -static inline size_t -_PyType_PreHeaderSize(PyTypeObject *tp) -{ - return _PyType_IS_GC(tp) * sizeof(PyGC_Head) + - _PyType_HasFeature(tp, Py_TPFLAGS_PREHEADER) * 2 * sizeof(PyObject *); -} - -void _PyObject_GC_Link(PyObject *op); - -// Usage: assert(_Py_CheckSlotResult(obj, "__getitem__", result != NULL)); -extern int _Py_CheckSlotResult( - PyObject *obj, - const char *slot_name, - int success); - -// Test if a type supports weak references -static inline int _PyType_SUPPORTS_WEAKREFS(PyTypeObject *type) { - return (type->tp_weaklistoffset != 0); -} - -extern PyObject* _PyType_AllocNoTrack(PyTypeObject *type, Py_ssize_t nitems); - -extern int _PyObject_InitializeDict(PyObject *obj); -extern int _PyObject_StoreInstanceAttribute(PyObject *obj, PyDictValues *values, - PyObject *name, PyObject *value); -PyObject * _PyObject_GetInstanceAttribute(PyObject *obj, PyDictValues *values, - PyObject *name); - -typedef union { - PyObject *dict; - /* Use a char* to generate a warning if directly assigning a PyDictValues */ - char *values; -} PyDictOrValues; - -static inline PyDictOrValues * -_PyObject_DictOrValuesPointer(PyObject *obj) -{ - assert(Py_TYPE(obj)->tp_flags & Py_TPFLAGS_MANAGED_DICT); - return ((PyDictOrValues *)obj)-3; -} - -static inline int -_PyDictOrValues_IsValues(PyDictOrValues dorv) -{ - return ((uintptr_t)dorv.values) & 1; -} - -static inline PyDictValues * -_PyDictOrValues_GetValues(PyDictOrValues dorv) -{ - assert(_PyDictOrValues_IsValues(dorv)); - return (PyDictValues *)(dorv.values + 1); -} - -static inline PyObject * -_PyDictOrValues_GetDict(PyDictOrValues dorv) -{ - assert(!_PyDictOrValues_IsValues(dorv)); - return dorv.dict; -} - -static inline void -_PyDictOrValues_SetValues(PyDictOrValues *ptr, PyDictValues *values) -{ - ptr->values = ((char *)values) - 1; -} - -#define MANAGED_WEAKREF_OFFSET (((Py_ssize_t)sizeof(PyObject *))*-4) - -extern PyObject ** _PyObject_ComputedDictPointer(PyObject *); -extern void _PyObject_FreeInstanceAttributes(PyObject *obj); -extern int _PyObject_IsInstanceDictEmpty(PyObject *); - -PyAPI_FUNC(PyObject *) _PyObject_LookupSpecial(PyObject *, PyObject *); - -/* C function call trampolines to mitigate bad function pointer casts. - * - * Typical native ABIs ignore additional arguments or fill in missing - * values with 0/NULL in function pointer cast. Compilers do not show - * warnings when a function pointer is explicitly casted to an - * incompatible type. - * - * Bad fpcasts are an issue in WebAssembly. WASM's indirect_call has strict - * function signature checks. Argument count, types, and return type must - * match. - * - * Third party code unintentionally rely on problematic fpcasts. The call - * trampoline mitigates common occurrences of bad fpcasts on Emscripten. - */ -#if defined(__EMSCRIPTEN__) && defined(PY_CALL_TRAMPOLINE) -#define _PyCFunction_TrampolineCall(meth, self, args) \ - _PyCFunctionWithKeywords_TrampolineCall( \ - (*(PyCFunctionWithKeywords)(void(*)(void))(meth)), (self), (args), NULL) -extern PyObject* _PyCFunctionWithKeywords_TrampolineCall( - PyCFunctionWithKeywords meth, PyObject *, PyObject *, PyObject *); -#else -#define _PyCFunction_TrampolineCall(meth, self, args) \ - (meth)((self), (args)) -#define _PyCFunctionWithKeywords_TrampolineCall(meth, self, args, kw) \ - (meth)((self), (args), (kw)) -#endif // __EMSCRIPTEN__ && PY_CALL_TRAMPOLINE - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_OBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_object_state.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_object_state.h deleted file mode 100644 index 65feb5a..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_object_state.h +++ /dev/null @@ -1,36 +0,0 @@ -#ifndef Py_INTERNAL_OBJECT_STATE_H -#define Py_INTERNAL_OBJECT_STATE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct _py_object_runtime_state { -#ifdef Py_REF_DEBUG - Py_ssize_t interpreter_leaks; -#endif - int _not_used; -}; - -struct _py_object_state { -#ifdef Py_REF_DEBUG - Py_ssize_t reftotal; -#endif -#ifdef Py_TRACE_REFS - /* Head of circular doubly-linked list of all objects. These are linked - * together via the _ob_prev and _ob_next members of a PyObject, which - * exist only in a Py_TRACE_REFS build. - */ - PyObject refchain; -#endif - int _not_used; -}; - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_OBJECT_STATE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_obmalloc.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_obmalloc.h deleted file mode 100644 index b1c0065..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_obmalloc.h +++ /dev/null @@ -1,700 +0,0 @@ -#ifndef Py_INTERNAL_OBMALLOC_H -#define Py_INTERNAL_OBMALLOC_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -typedef unsigned int pymem_uint; /* assuming >= 16 bits */ - -#undef uint -#define uint pymem_uint - - -/* An object allocator for Python. - - Here is an introduction to the layers of the Python memory architecture, - showing where the object allocator is actually used (layer +2), It is - called for every object allocation and deallocation (PyObject_New/Del), - unless the object-specific allocators implement a proprietary allocation - scheme (ex.: ints use a simple free list). This is also the place where - the cyclic garbage collector operates selectively on container objects. - - - Object-specific allocators - _____ ______ ______ ________ - [ int ] [ dict ] [ list ] ... [ string ] Python core | -+3 | <----- Object-specific memory -----> | <-- Non-object memory --> | - _______________________________ | | - [ Python's object allocator ] | | -+2 | ####### Object memory ####### | <------ Internal buffers ------> | - ______________________________________________________________ | - [ Python's raw memory allocator (PyMem_ API) ] | -+1 | <----- Python memory (under PyMem manager's control) ------> | | - __________________________________________________________________ - [ Underlying general-purpose allocator (ex: C library malloc) ] - 0 | <------ Virtual memory allocated for the python process -------> | - - ========================================================================= - _______________________________________________________________________ - [ OS-specific Virtual Memory Manager (VMM) ] --1 | <--- Kernel dynamic storage allocation & management (page-based) ---> | - __________________________________ __________________________________ - [ ] [ ] --2 | <-- Physical memory: ROM/RAM --> | | <-- Secondary storage (swap) --> | - -*/ -/*==========================================================================*/ - -/* A fast, special-purpose memory allocator for small blocks, to be used - on top of a general-purpose malloc -- heavily based on previous art. */ - -/* Vladimir Marangozov -- August 2000 */ - -/* - * "Memory management is where the rubber meets the road -- if we do the wrong - * thing at any level, the results will not be good. And if we don't make the - * levels work well together, we are in serious trouble." (1) - * - * (1) Paul R. Wilson, Mark S. Johnstone, Michael Neely, and David Boles, - * "Dynamic Storage Allocation: A Survey and Critical Review", - * in Proc. 1995 Int'l. Workshop on Memory Management, September 1995. - */ - -/* #undef WITH_MEMORY_LIMITS */ /* disable mem limit checks */ - -/*==========================================================================*/ - -/* - * Allocation strategy abstract: - * - * For small requests, the allocator sub-allocates blocks of memory. - * Requests greater than SMALL_REQUEST_THRESHOLD bytes are routed to the - * system's allocator. - * - * Small requests are grouped in size classes spaced 8 bytes apart, due - * to the required valid alignment of the returned address. Requests of - * a particular size are serviced from memory pools of 4K (one VMM page). - * Pools are fragmented on demand and contain free lists of blocks of one - * particular size class. In other words, there is a fixed-size allocator - * for each size class. Free pools are shared by the different allocators - * thus minimizing the space reserved for a particular size class. - * - * This allocation strategy is a variant of what is known as "simple - * segregated storage based on array of free lists". The main drawback of - * simple segregated storage is that we might end up with lot of reserved - * memory for the different free lists, which degenerate in time. To avoid - * this, we partition each free list in pools and we share dynamically the - * reserved space between all free lists. This technique is quite efficient - * for memory intensive programs which allocate mainly small-sized blocks. - * - * For small requests we have the following table: - * - * Request in bytes Size of allocated block Size class idx - * ---------------------------------------------------------------- - * 1-8 8 0 - * 9-16 16 1 - * 17-24 24 2 - * 25-32 32 3 - * 33-40 40 4 - * 41-48 48 5 - * 49-56 56 6 - * 57-64 64 7 - * 65-72 72 8 - * ... ... ... - * 497-504 504 62 - * 505-512 512 63 - * - * 0, SMALL_REQUEST_THRESHOLD + 1 and up: routed to the underlying - * allocator. - */ - -/*==========================================================================*/ - -/* - * -- Main tunable settings section -- - */ - -/* - * Alignment of addresses returned to the user. 8-bytes alignment works - * on most current architectures (with 32-bit or 64-bit address buses). - * The alignment value is also used for grouping small requests in size - * classes spaced ALIGNMENT bytes apart. - * - * You shouldn't change this unless you know what you are doing. - */ - -#if SIZEOF_VOID_P > 4 -#define ALIGNMENT 16 /* must be 2^N */ -#define ALIGNMENT_SHIFT 4 -#else -#define ALIGNMENT 8 /* must be 2^N */ -#define ALIGNMENT_SHIFT 3 -#endif - -/* Return the number of bytes in size class I, as a uint. */ -#define INDEX2SIZE(I) (((pymem_uint)(I) + 1) << ALIGNMENT_SHIFT) - -/* - * Max size threshold below which malloc requests are considered to be - * small enough in order to use preallocated memory pools. You can tune - * this value according to your application behaviour and memory needs. - * - * Note: a size threshold of 512 guarantees that newly created dictionaries - * will be allocated from preallocated memory pools on 64-bit. - * - * The following invariants must hold: - * 1) ALIGNMENT <= SMALL_REQUEST_THRESHOLD <= 512 - * 2) SMALL_REQUEST_THRESHOLD is evenly divisible by ALIGNMENT - * - * Although not required, for better performance and space efficiency, - * it is recommended that SMALL_REQUEST_THRESHOLD is set to a power of 2. - */ -#define SMALL_REQUEST_THRESHOLD 512 -#define NB_SMALL_SIZE_CLASSES (SMALL_REQUEST_THRESHOLD / ALIGNMENT) - -/* - * The system's VMM page size can be obtained on most unices with a - * getpagesize() call or deduced from various header files. To make - * things simpler, we assume that it is 4K, which is OK for most systems. - * It is probably better if this is the native page size, but it doesn't - * have to be. In theory, if SYSTEM_PAGE_SIZE is larger than the native page - * size, then `POOL_ADDR(p)->arenaindex' could rarely cause a segmentation - * violation fault. 4K is apparently OK for all the platforms that python - * currently targets. - */ -#define SYSTEM_PAGE_SIZE (4 * 1024) - -/* - * Maximum amount of memory managed by the allocator for small requests. - */ -#ifdef WITH_MEMORY_LIMITS -#ifndef SMALL_MEMORY_LIMIT -#define SMALL_MEMORY_LIMIT (64 * 1024 * 1024) /* 64 MB -- more? */ -#endif -#endif - -#if !defined(WITH_PYMALLOC_RADIX_TREE) -/* Use radix-tree to track arena memory regions, for address_in_range(). - * Enable by default since it allows larger pool sizes. Can be disabled - * using -DWITH_PYMALLOC_RADIX_TREE=0 */ -#define WITH_PYMALLOC_RADIX_TREE 1 -#endif - -#if SIZEOF_VOID_P > 4 -/* on 64-bit platforms use larger pools and arenas if we can */ -#define USE_LARGE_ARENAS -#if WITH_PYMALLOC_RADIX_TREE -/* large pools only supported if radix-tree is enabled */ -#define USE_LARGE_POOLS -#endif -#endif - -/* - * The allocator sub-allocates blocks of memory (called arenas) aligned - * on a page boundary. This is a reserved virtual address space for the - * current process (obtained through a malloc()/mmap() call). In no way this - * means that the memory arenas will be used entirely. A malloc() is - * usually an address range reservation for bytes, unless all pages within - * this space are referenced subsequently. So malloc'ing big blocks and not - * using them does not mean "wasting memory". It's an addressable range - * wastage... - * - * Arenas are allocated with mmap() on systems supporting anonymous memory - * mappings to reduce heap fragmentation. - */ -#ifdef USE_LARGE_ARENAS -#define ARENA_BITS 20 /* 1 MiB */ -#else -#define ARENA_BITS 18 /* 256 KiB */ -#endif -#define ARENA_SIZE (1 << ARENA_BITS) -#define ARENA_SIZE_MASK (ARENA_SIZE - 1) - -#ifdef WITH_MEMORY_LIMITS -#define MAX_ARENAS (SMALL_MEMORY_LIMIT / ARENA_SIZE) -#endif - -/* - * Size of the pools used for small blocks. Must be a power of 2. - */ -#ifdef USE_LARGE_POOLS -#define POOL_BITS 14 /* 16 KiB */ -#else -#define POOL_BITS 12 /* 4 KiB */ -#endif -#define POOL_SIZE (1 << POOL_BITS) -#define POOL_SIZE_MASK (POOL_SIZE - 1) - -#if !WITH_PYMALLOC_RADIX_TREE -#if POOL_SIZE != SYSTEM_PAGE_SIZE -# error "pool size must be equal to system page size" -#endif -#endif - -#define MAX_POOLS_IN_ARENA (ARENA_SIZE / POOL_SIZE) -#if MAX_POOLS_IN_ARENA * POOL_SIZE != ARENA_SIZE -# error "arena size not an exact multiple of pool size" -#endif - -/* - * -- End of tunable settings section -- - */ - -/*==========================================================================*/ - -/* When you say memory, my mind reasons in terms of (pointers to) blocks */ -typedef uint8_t pymem_block; - -/* Pool for small blocks. */ -struct pool_header { - union { pymem_block *_padding; - uint count; } ref; /* number of allocated blocks */ - pymem_block *freeblock; /* pool's free list head */ - struct pool_header *nextpool; /* next pool of this size class */ - struct pool_header *prevpool; /* previous pool "" */ - uint arenaindex; /* index into arenas of base adr */ - uint szidx; /* block size class index */ - uint nextoffset; /* bytes to virgin block */ - uint maxnextoffset; /* largest valid nextoffset */ -}; - -typedef struct pool_header *poolp; - -/* Record keeping for arenas. */ -struct arena_object { - /* The address of the arena, as returned by malloc. Note that 0 - * will never be returned by a successful malloc, and is used - * here to mark an arena_object that doesn't correspond to an - * allocated arena. - */ - uintptr_t address; - - /* Pool-aligned pointer to the next pool to be carved off. */ - pymem_block* pool_address; - - /* The number of available pools in the arena: free pools + never- - * allocated pools. - */ - uint nfreepools; - - /* The total number of pools in the arena, whether or not available. */ - uint ntotalpools; - - /* Singly-linked list of available pools. */ - struct pool_header* freepools; - - /* Whenever this arena_object is not associated with an allocated - * arena, the nextarena member is used to link all unassociated - * arena_objects in the singly-linked `unused_arena_objects` list. - * The prevarena member is unused in this case. - * - * When this arena_object is associated with an allocated arena - * with at least one available pool, both members are used in the - * doubly-linked `usable_arenas` list, which is maintained in - * increasing order of `nfreepools` values. - * - * Else this arena_object is associated with an allocated arena - * all of whose pools are in use. `nextarena` and `prevarena` - * are both meaningless in this case. - */ - struct arena_object* nextarena; - struct arena_object* prevarena; -}; - -#define POOL_OVERHEAD _Py_SIZE_ROUND_UP(sizeof(struct pool_header), ALIGNMENT) - -#define DUMMY_SIZE_IDX 0xffff /* size class of newly cached pools */ - -/* Round pointer P down to the closest pool-aligned address <= P, as a poolp */ -#define POOL_ADDR(P) ((poolp)_Py_ALIGN_DOWN((P), POOL_SIZE)) - -/* Return total number of blocks in pool of size index I, as a uint. */ -#define NUMBLOCKS(I) ((pymem_uint)(POOL_SIZE - POOL_OVERHEAD) / INDEX2SIZE(I)) - -/*==========================================================================*/ - -/* - * Pool table -- headed, circular, doubly-linked lists of partially used pools. - -This is involved. For an index i, usedpools[i+i] is the header for a list of -all partially used pools holding small blocks with "size class idx" i. So -usedpools[0] corresponds to blocks of size 8, usedpools[2] to blocks of size -16, and so on: index 2*i <-> blocks of size (i+1)<freeblock points to -the start of a singly-linked list of free blocks within the pool. When a -block is freed, it's inserted at the front of its pool's freeblock list. Note -that the available blocks in a pool are *not* linked all together when a pool -is initialized. Instead only "the first two" (lowest addresses) blocks are -set up, returning the first such block, and setting pool->freeblock to a -one-block list holding the second such block. This is consistent with that -pymalloc strives at all levels (arena, pool, and block) never to touch a piece -of memory until it's actually needed. - -So long as a pool is in the used state, we're certain there *is* a block -available for allocating, and pool->freeblock is not NULL. If pool->freeblock -points to the end of the free list before we've carved the entire pool into -blocks, that means we simply haven't yet gotten to one of the higher-address -blocks. The offset from the pool_header to the start of "the next" virgin -block is stored in the pool_header nextoffset member, and the largest value -of nextoffset that makes sense is stored in the maxnextoffset member when a -pool is initialized. All the blocks in a pool have been passed out at least -once when and only when nextoffset > maxnextoffset. - - -Major obscurity: While the usedpools vector is declared to have poolp -entries, it doesn't really. It really contains two pointers per (conceptual) -poolp entry, the nextpool and prevpool members of a pool_header. The -excruciating initialization code below fools C so that - - usedpool[i+i] - -"acts like" a genuine poolp, but only so long as you only reference its -nextpool and prevpool members. The "- 2*sizeof(pymem_block *)" gibberish is -compensating for that a pool_header's nextpool and prevpool members -immediately follow a pool_header's first two members: - - union { pymem_block *_padding; - uint count; } ref; - pymem_block *freeblock; - -each of which consume sizeof(pymem_block *) bytes. So what usedpools[i+i] really -contains is a fudged-up pointer p such that *if* C believes it's a poolp -pointer, then p->nextpool and p->prevpool are both p (meaning that the headed -circular list is empty). - -It's unclear why the usedpools setup is so convoluted. It could be to -minimize the amount of cache required to hold this heavily-referenced table -(which only *needs* the two interpool pointer members of a pool_header). OTOH, -referencing code has to remember to "double the index" and doing so isn't -free, usedpools[0] isn't a strictly legal pointer, and we're crucially relying -on that C doesn't insert any padding anywhere in a pool_header at or before -the prevpool member. -**************************************************************************** */ - -#define OBMALLOC_USED_POOLS_SIZE (2 * ((NB_SMALL_SIZE_CLASSES + 7) / 8) * 8) - -struct _obmalloc_pools { - poolp used[OBMALLOC_USED_POOLS_SIZE]; -}; - - -/*========================================================================== -Arena management. - -`arenas` is a vector of arena_objects. It contains maxarenas entries, some of -which may not be currently used (== they're arena_objects that aren't -currently associated with an allocated arena). Note that arenas proper are -separately malloc'ed. - -Prior to Python 2.5, arenas were never free()'ed. Starting with Python 2.5, -we do try to free() arenas, and use some mild heuristic strategies to increase -the likelihood that arenas eventually can be freed. - -unused_arena_objects - - This is a singly-linked list of the arena_objects that are currently not - being used (no arena is associated with them). Objects are taken off the - head of the list in new_arena(), and are pushed on the head of the list in - PyObject_Free() when the arena is empty. Key invariant: an arena_object - is on this list if and only if its .address member is 0. - -usable_arenas - - This is a doubly-linked list of the arena_objects associated with arenas - that have pools available. These pools are either waiting to be reused, - or have not been used before. The list is sorted to have the most- - allocated arenas first (ascending order based on the nfreepools member). - This means that the next allocation will come from a heavily used arena, - which gives the nearly empty arenas a chance to be returned to the system. - In my unscientific tests this dramatically improved the number of arenas - that could be freed. - -Note that an arena_object associated with an arena all of whose pools are -currently in use isn't on either list. - -Changed in Python 3.8: keeping usable_arenas sorted by number of free pools -used to be done by one-at-a-time linear search when an arena's number of -free pools changed. That could, overall, consume time quadratic in the -number of arenas. That didn't really matter when there were only a few -hundred arenas (typical!), but could be a timing disaster when there were -hundreds of thousands. See bpo-37029. - -Now we have a vector of "search fingers" to eliminate the need to search: -nfp2lasta[nfp] returns the last ("rightmost") arena in usable_arenas -with nfp free pools. This is NULL if and only if there is no arena with -nfp free pools in usable_arenas. -*/ - -/* How many arena_objects do we initially allocate? - * 16 = can allocate 16 arenas = 16 * ARENA_SIZE = 4MB before growing the - * `arenas` vector. - */ -#define INITIAL_ARENA_OBJECTS 16 - -struct _obmalloc_mgmt { - /* Array of objects used to track chunks of memory (arenas). */ - struct arena_object* arenas; - /* Number of slots currently allocated in the `arenas` vector. */ - uint maxarenas; - - /* The head of the singly-linked, NULL-terminated list of available - * arena_objects. - */ - struct arena_object* unused_arena_objects; - - /* The head of the doubly-linked, NULL-terminated at each end, list of - * arena_objects associated with arenas that have pools available. - */ - struct arena_object* usable_arenas; - - /* nfp2lasta[nfp] is the last arena in usable_arenas with nfp free pools */ - struct arena_object* nfp2lasta[MAX_POOLS_IN_ARENA + 1]; - - /* Number of arenas allocated that haven't been free()'d. */ - size_t narenas_currently_allocated; - - /* Total number of times malloc() called to allocate an arena. */ - size_t ntimes_arena_allocated; - /* High water mark (max value ever seen) for narenas_currently_allocated. */ - size_t narenas_highwater; - - Py_ssize_t raw_allocated_blocks; -}; - - -#if WITH_PYMALLOC_RADIX_TREE -/*==========================================================================*/ -/* radix tree for tracking arena usage. If enabled, used to implement - address_in_range(). - - memory address bit allocation for keys - - 64-bit pointers, IGNORE_BITS=0 and 2^20 arena size: - 15 -> MAP_TOP_BITS - 15 -> MAP_MID_BITS - 14 -> MAP_BOT_BITS - 20 -> ideal aligned arena - ---- - 64 - - 64-bit pointers, IGNORE_BITS=16, and 2^20 arena size: - 16 -> IGNORE_BITS - 10 -> MAP_TOP_BITS - 10 -> MAP_MID_BITS - 8 -> MAP_BOT_BITS - 20 -> ideal aligned arena - ---- - 64 - - 32-bit pointers and 2^18 arena size: - 14 -> MAP_BOT_BITS - 18 -> ideal aligned arena - ---- - 32 - -*/ - -#if SIZEOF_VOID_P == 8 - -/* number of bits in a pointer */ -#define POINTER_BITS 64 - -/* High bits of memory addresses that will be ignored when indexing into the - * radix tree. Setting this to zero is the safe default. For most 64-bit - * machines, setting this to 16 would be safe. The kernel would not give - * user-space virtual memory addresses that have significant information in - * those high bits. The main advantage to setting IGNORE_BITS > 0 is that less - * virtual memory will be used for the top and middle radix tree arrays. Those - * arrays are allocated in the BSS segment and so will typically consume real - * memory only if actually accessed. - */ -#define IGNORE_BITS 0 - -/* use the top and mid layers of the radix tree */ -#define USE_INTERIOR_NODES - -#elif SIZEOF_VOID_P == 4 - -#define POINTER_BITS 32 -#define IGNORE_BITS 0 - -#else - - /* Currently this code works for 64-bit or 32-bit pointers only. */ -#error "obmalloc radix tree requires 64-bit or 32-bit pointers." - -#endif /* SIZEOF_VOID_P */ - -/* arena_coverage_t members require this to be true */ -#if ARENA_BITS >= 32 -# error "arena size must be < 2^32" -#endif - -/* the lower bits of the address that are not ignored */ -#define ADDRESS_BITS (POINTER_BITS - IGNORE_BITS) - -#ifdef USE_INTERIOR_NODES -/* number of bits used for MAP_TOP and MAP_MID nodes */ -#define INTERIOR_BITS ((ADDRESS_BITS - ARENA_BITS + 2) / 3) -#else -#define INTERIOR_BITS 0 -#endif - -#define MAP_TOP_BITS INTERIOR_BITS -#define MAP_TOP_LENGTH (1 << MAP_TOP_BITS) -#define MAP_TOP_MASK (MAP_TOP_LENGTH - 1) - -#define MAP_MID_BITS INTERIOR_BITS -#define MAP_MID_LENGTH (1 << MAP_MID_BITS) -#define MAP_MID_MASK (MAP_MID_LENGTH - 1) - -#define MAP_BOT_BITS (ADDRESS_BITS - ARENA_BITS - 2*INTERIOR_BITS) -#define MAP_BOT_LENGTH (1 << MAP_BOT_BITS) -#define MAP_BOT_MASK (MAP_BOT_LENGTH - 1) - -#define MAP_BOT_SHIFT ARENA_BITS -#define MAP_MID_SHIFT (MAP_BOT_BITS + MAP_BOT_SHIFT) -#define MAP_TOP_SHIFT (MAP_MID_BITS + MAP_MID_SHIFT) - -#define AS_UINT(p) ((uintptr_t)(p)) -#define MAP_BOT_INDEX(p) ((AS_UINT(p) >> MAP_BOT_SHIFT) & MAP_BOT_MASK) -#define MAP_MID_INDEX(p) ((AS_UINT(p) >> MAP_MID_SHIFT) & MAP_MID_MASK) -#define MAP_TOP_INDEX(p) ((AS_UINT(p) >> MAP_TOP_SHIFT) & MAP_TOP_MASK) - -#if IGNORE_BITS > 0 -/* Return the ignored part of the pointer address. Those bits should be same - * for all valid pointers if IGNORE_BITS is set correctly. - */ -#define HIGH_BITS(p) (AS_UINT(p) >> ADDRESS_BITS) -#else -#define HIGH_BITS(p) 0 -#endif - - -/* This is the leaf of the radix tree. See arena_map_mark_used() for the - * meaning of these members. */ -typedef struct { - int32_t tail_hi; - int32_t tail_lo; -} arena_coverage_t; - -typedef struct arena_map_bot { - /* The members tail_hi and tail_lo are accessed together. So, it - * better to have them as an array of structs, rather than two - * arrays. - */ - arena_coverage_t arenas[MAP_BOT_LENGTH]; -} arena_map_bot_t; - -#ifdef USE_INTERIOR_NODES -typedef struct arena_map_mid { - struct arena_map_bot *ptrs[MAP_MID_LENGTH]; -} arena_map_mid_t; - -typedef struct arena_map_top { - struct arena_map_mid *ptrs[MAP_TOP_LENGTH]; -} arena_map_top_t; -#endif - -struct _obmalloc_usage { - /* The root of radix tree. Note that by initializing like this, the memory - * should be in the BSS. The OS will only memory map pages as the MAP_MID - * nodes get used (OS pages are demand loaded as needed). - */ -#ifdef USE_INTERIOR_NODES - arena_map_top_t arena_map_root; - /* accounting for number of used interior nodes */ - int arena_map_mid_count; - int arena_map_bot_count; -#else - arena_map_bot_t arena_map_root; -#endif -}; - -#endif /* WITH_PYMALLOC_RADIX_TREE */ - - -struct _obmalloc_global_state { - int dump_debug_stats; - Py_ssize_t interpreter_leaks; -}; - -struct _obmalloc_state { - struct _obmalloc_pools pools; - struct _obmalloc_mgmt mgmt; -#if WITH_PYMALLOC_RADIX_TREE - struct _obmalloc_usage usage; -#endif -}; - - -#undef uint - - -/* Allocate memory directly from the O/S virtual memory system, - * where supported. Otherwise fallback on malloc */ -void *_PyObject_VirtualAlloc(size_t size); -void _PyObject_VirtualFree(void *, size_t size); - - -/* This function returns the number of allocated memory blocks, regardless of size */ -extern Py_ssize_t _Py_GetGlobalAllocatedBlocks(void); -#define _Py_GetAllocatedBlocks() \ - _Py_GetGlobalAllocatedBlocks() -extern Py_ssize_t _PyInterpreterState_GetAllocatedBlocks(PyInterpreterState *); -extern void _PyInterpreterState_FinalizeAllocatedBlocks(PyInterpreterState *); - - -#ifdef WITH_PYMALLOC -// Export the symbol for the 3rd party guppy3 project -PyAPI_FUNC(int) _PyObject_DebugMallocStats(FILE *out); -#endif - - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_OBMALLOC_H diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_obmalloc_init.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_obmalloc_init.h deleted file mode 100644 index 8ee72ff..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_obmalloc_init.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef Py_INTERNAL_OBMALLOC_INIT_H -#define Py_INTERNAL_OBMALLOC_INIT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/****************************************************/ -/* the default object allocator's state initializer */ - -#define PTA(pools, x) \ - ((poolp )((uint8_t *)&(pools.used[2*(x)]) - 2*sizeof(pymem_block *))) -#define PT(p, x) PTA(p, x), PTA(p, x) - -#define PT_8(p, start) \ - PT(p, start), \ - PT(p, start+1), \ - PT(p, start+2), \ - PT(p, start+3), \ - PT(p, start+4), \ - PT(p, start+5), \ - PT(p, start+6), \ - PT(p, start+7) - -#if NB_SMALL_SIZE_CLASSES <= 8 -# define _obmalloc_pools_INIT(p) \ - { PT_8(p, 0) } -#elif NB_SMALL_SIZE_CLASSES <= 16 -# define _obmalloc_pools_INIT(p) \ - { PT_8(p, 0), PT_8(p, 8) } -#elif NB_SMALL_SIZE_CLASSES <= 24 -# define _obmalloc_pools_INIT(p) \ - { PT_8(p, 0), PT_8(p, 8), PT_8(p, 16) } -#elif NB_SMALL_SIZE_CLASSES <= 32 -# define _obmalloc_pools_INIT(p) \ - { PT_8(p, 0), PT_8(p, 8), PT_8(p, 16), PT_8(p, 24) } -#elif NB_SMALL_SIZE_CLASSES <= 40 -# define _obmalloc_pools_INIT(p) \ - { PT_8(p, 0), PT_8(p, 8), PT_8(p, 16), PT_8(p, 24), PT_8(p, 32) } -#elif NB_SMALL_SIZE_CLASSES <= 48 -# define _obmalloc_pools_INIT(p) \ - { PT_8(p, 0), PT_8(p, 8), PT_8(p, 16), PT_8(p, 24), PT_8(p, 32), PT_8(p, 40) } -#elif NB_SMALL_SIZE_CLASSES <= 56 -# define _obmalloc_pools_INIT(p) \ - { PT_8(p, 0), PT_8(p, 8), PT_8(p, 16), PT_8(p, 24), PT_8(p, 32), PT_8(p, 40), PT_8(p, 48) } -#elif NB_SMALL_SIZE_CLASSES <= 64 -# define _obmalloc_pools_INIT(p) \ - { PT_8(p, 0), PT_8(p, 8), PT_8(p, 16), PT_8(p, 24), PT_8(p, 32), PT_8(p, 40), PT_8(p, 48), PT_8(p, 56) } -#else -# error "NB_SMALL_SIZE_CLASSES should be less than 64" -#endif - -#define _obmalloc_global_state_INIT \ - { \ - .dump_debug_stats = -1, \ - } - -#define _obmalloc_state_INIT(obmalloc) \ - { \ - .pools = { \ - .used = _obmalloc_pools_INIT(obmalloc.pools), \ - }, \ - } - - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_OBMALLOC_INIT_H diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_opcode.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_opcode.h deleted file mode 100644 index 15d9650..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_opcode.h +++ /dev/null @@ -1,587 +0,0 @@ -// Auto-generated by Tools/build/generate_opcode_h.py from Lib/opcode.py - -#ifndef Py_INTERNAL_OPCODE_H -#define Py_INTERNAL_OPCODE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "opcode.h" - -extern const uint32_t _PyOpcode_Jump[9]; - -extern const uint8_t _PyOpcode_Caches[256]; - -extern const uint8_t _PyOpcode_Deopt[256]; - -#ifdef NEED_OPCODE_TABLES -const uint32_t _PyOpcode_Jump[9] = { - 0U, - 0U, - 536870912U, - 135020544U, - 4163U, - 0U, - 0U, - 0U, - 48U, -}; - -const uint8_t _PyOpcode_Caches[256] = { - [BINARY_SUBSCR] = 1, - [STORE_SUBSCR] = 1, - [UNPACK_SEQUENCE] = 1, - [FOR_ITER] = 1, - [STORE_ATTR] = 4, - [LOAD_ATTR] = 9, - [COMPARE_OP] = 1, - [LOAD_GLOBAL] = 4, - [BINARY_OP] = 1, - [SEND] = 1, - [LOAD_SUPER_ATTR] = 1, - [CALL] = 3, -}; - -const uint8_t _PyOpcode_Deopt[256] = { - [BEFORE_ASYNC_WITH] = BEFORE_ASYNC_WITH, - [BEFORE_WITH] = BEFORE_WITH, - [BINARY_OP] = BINARY_OP, - [BINARY_OP_ADD_FLOAT] = BINARY_OP, - [BINARY_OP_ADD_INT] = BINARY_OP, - [BINARY_OP_ADD_UNICODE] = BINARY_OP, - [BINARY_OP_INPLACE_ADD_UNICODE] = BINARY_OP, - [BINARY_OP_MULTIPLY_FLOAT] = BINARY_OP, - [BINARY_OP_MULTIPLY_INT] = BINARY_OP, - [BINARY_OP_SUBTRACT_FLOAT] = BINARY_OP, - [BINARY_OP_SUBTRACT_INT] = BINARY_OP, - [BINARY_SLICE] = BINARY_SLICE, - [BINARY_SUBSCR] = BINARY_SUBSCR, - [BINARY_SUBSCR_DICT] = BINARY_SUBSCR, - [BINARY_SUBSCR_GETITEM] = BINARY_SUBSCR, - [BINARY_SUBSCR_LIST_INT] = BINARY_SUBSCR, - [BINARY_SUBSCR_TUPLE_INT] = BINARY_SUBSCR, - [BUILD_CONST_KEY_MAP] = BUILD_CONST_KEY_MAP, - [BUILD_LIST] = BUILD_LIST, - [BUILD_MAP] = BUILD_MAP, - [BUILD_SET] = BUILD_SET, - [BUILD_SLICE] = BUILD_SLICE, - [BUILD_STRING] = BUILD_STRING, - [BUILD_TUPLE] = BUILD_TUPLE, - [CACHE] = CACHE, - [CALL] = CALL, - [CALL_BOUND_METHOD_EXACT_ARGS] = CALL, - [CALL_BUILTIN_CLASS] = CALL, - [CALL_BUILTIN_FAST_WITH_KEYWORDS] = CALL, - [CALL_FUNCTION_EX] = CALL_FUNCTION_EX, - [CALL_INTRINSIC_1] = CALL_INTRINSIC_1, - [CALL_INTRINSIC_2] = CALL_INTRINSIC_2, - [CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS] = CALL, - [CALL_NO_KW_BUILTIN_FAST] = CALL, - [CALL_NO_KW_BUILTIN_O] = CALL, - [CALL_NO_KW_ISINSTANCE] = CALL, - [CALL_NO_KW_LEN] = CALL, - [CALL_NO_KW_LIST_APPEND] = CALL, - [CALL_NO_KW_METHOD_DESCRIPTOR_FAST] = CALL, - [CALL_NO_KW_METHOD_DESCRIPTOR_NOARGS] = CALL, - [CALL_NO_KW_METHOD_DESCRIPTOR_O] = CALL, - [CALL_NO_KW_STR_1] = CALL, - [CALL_NO_KW_TUPLE_1] = CALL, - [CALL_NO_KW_TYPE_1] = CALL, - [CALL_PY_EXACT_ARGS] = CALL, - [CALL_PY_WITH_DEFAULTS] = CALL, - [CHECK_EG_MATCH] = CHECK_EG_MATCH, - [CHECK_EXC_MATCH] = CHECK_EXC_MATCH, - [CLEANUP_THROW] = CLEANUP_THROW, - [COMPARE_OP] = COMPARE_OP, - [COMPARE_OP_FLOAT] = COMPARE_OP, - [COMPARE_OP_INT] = COMPARE_OP, - [COMPARE_OP_STR] = COMPARE_OP, - [CONTAINS_OP] = CONTAINS_OP, - [COPY] = COPY, - [COPY_FREE_VARS] = COPY_FREE_VARS, - [DELETE_ATTR] = DELETE_ATTR, - [DELETE_DEREF] = DELETE_DEREF, - [DELETE_FAST] = DELETE_FAST, - [DELETE_GLOBAL] = DELETE_GLOBAL, - [DELETE_NAME] = DELETE_NAME, - [DELETE_SUBSCR] = DELETE_SUBSCR, - [DICT_MERGE] = DICT_MERGE, - [DICT_UPDATE] = DICT_UPDATE, - [END_ASYNC_FOR] = END_ASYNC_FOR, - [END_FOR] = END_FOR, - [END_SEND] = END_SEND, - [EXTENDED_ARG] = EXTENDED_ARG, - [FORMAT_VALUE] = FORMAT_VALUE, - [FOR_ITER] = FOR_ITER, - [FOR_ITER_GEN] = FOR_ITER, - [FOR_ITER_LIST] = FOR_ITER, - [FOR_ITER_RANGE] = FOR_ITER, - [FOR_ITER_TUPLE] = FOR_ITER, - [GET_AITER] = GET_AITER, - [GET_ANEXT] = GET_ANEXT, - [GET_AWAITABLE] = GET_AWAITABLE, - [GET_ITER] = GET_ITER, - [GET_LEN] = GET_LEN, - [GET_YIELD_FROM_ITER] = GET_YIELD_FROM_ITER, - [IMPORT_FROM] = IMPORT_FROM, - [IMPORT_NAME] = IMPORT_NAME, - [INSTRUMENTED_CALL] = INSTRUMENTED_CALL, - [INSTRUMENTED_CALL_FUNCTION_EX] = INSTRUMENTED_CALL_FUNCTION_EX, - [INSTRUMENTED_END_FOR] = INSTRUMENTED_END_FOR, - [INSTRUMENTED_END_SEND] = INSTRUMENTED_END_SEND, - [INSTRUMENTED_FOR_ITER] = INSTRUMENTED_FOR_ITER, - [INSTRUMENTED_INSTRUCTION] = INSTRUMENTED_INSTRUCTION, - [INSTRUMENTED_JUMP_BACKWARD] = INSTRUMENTED_JUMP_BACKWARD, - [INSTRUMENTED_JUMP_FORWARD] = INSTRUMENTED_JUMP_FORWARD, - [INSTRUMENTED_LINE] = INSTRUMENTED_LINE, - [INSTRUMENTED_LOAD_SUPER_ATTR] = INSTRUMENTED_LOAD_SUPER_ATTR, - [INSTRUMENTED_POP_JUMP_IF_FALSE] = INSTRUMENTED_POP_JUMP_IF_FALSE, - [INSTRUMENTED_POP_JUMP_IF_NONE] = INSTRUMENTED_POP_JUMP_IF_NONE, - [INSTRUMENTED_POP_JUMP_IF_NOT_NONE] = INSTRUMENTED_POP_JUMP_IF_NOT_NONE, - [INSTRUMENTED_POP_JUMP_IF_TRUE] = INSTRUMENTED_POP_JUMP_IF_TRUE, - [INSTRUMENTED_RESUME] = INSTRUMENTED_RESUME, - [INSTRUMENTED_RETURN_CONST] = INSTRUMENTED_RETURN_CONST, - [INSTRUMENTED_RETURN_VALUE] = INSTRUMENTED_RETURN_VALUE, - [INSTRUMENTED_YIELD_VALUE] = INSTRUMENTED_YIELD_VALUE, - [INTERPRETER_EXIT] = INTERPRETER_EXIT, - [IS_OP] = IS_OP, - [JUMP_BACKWARD] = JUMP_BACKWARD, - [JUMP_BACKWARD_NO_INTERRUPT] = JUMP_BACKWARD_NO_INTERRUPT, - [JUMP_FORWARD] = JUMP_FORWARD, - [KW_NAMES] = KW_NAMES, - [LIST_APPEND] = LIST_APPEND, - [LIST_EXTEND] = LIST_EXTEND, - [LOAD_ASSERTION_ERROR] = LOAD_ASSERTION_ERROR, - [LOAD_ATTR] = LOAD_ATTR, - [LOAD_ATTR_CLASS] = LOAD_ATTR, - [LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN] = LOAD_ATTR, - [LOAD_ATTR_INSTANCE_VALUE] = LOAD_ATTR, - [LOAD_ATTR_METHOD_LAZY_DICT] = LOAD_ATTR, - [LOAD_ATTR_METHOD_NO_DICT] = LOAD_ATTR, - [LOAD_ATTR_METHOD_WITH_VALUES] = LOAD_ATTR, - [LOAD_ATTR_MODULE] = LOAD_ATTR, - [LOAD_ATTR_PROPERTY] = LOAD_ATTR, - [LOAD_ATTR_SLOT] = LOAD_ATTR, - [LOAD_ATTR_WITH_HINT] = LOAD_ATTR, - [LOAD_BUILD_CLASS] = LOAD_BUILD_CLASS, - [LOAD_CLOSURE] = LOAD_CLOSURE, - [LOAD_CONST] = LOAD_CONST, - [LOAD_CONST__LOAD_FAST] = LOAD_CONST, - [LOAD_DEREF] = LOAD_DEREF, - [LOAD_FAST] = LOAD_FAST, - [LOAD_FAST_AND_CLEAR] = LOAD_FAST_AND_CLEAR, - [LOAD_FAST_CHECK] = LOAD_FAST_CHECK, - [LOAD_FAST__LOAD_CONST] = LOAD_FAST, - [LOAD_FAST__LOAD_FAST] = LOAD_FAST, - [LOAD_FROM_DICT_OR_DEREF] = LOAD_FROM_DICT_OR_DEREF, - [LOAD_FROM_DICT_OR_GLOBALS] = LOAD_FROM_DICT_OR_GLOBALS, - [LOAD_GLOBAL] = LOAD_GLOBAL, - [LOAD_GLOBAL_BUILTIN] = LOAD_GLOBAL, - [LOAD_GLOBAL_MODULE] = LOAD_GLOBAL, - [LOAD_LOCALS] = LOAD_LOCALS, - [LOAD_NAME] = LOAD_NAME, - [LOAD_SUPER_ATTR] = LOAD_SUPER_ATTR, - [LOAD_SUPER_ATTR_ATTR] = LOAD_SUPER_ATTR, - [LOAD_SUPER_ATTR_METHOD] = LOAD_SUPER_ATTR, - [MAKE_CELL] = MAKE_CELL, - [MAKE_FUNCTION] = MAKE_FUNCTION, - [MAP_ADD] = MAP_ADD, - [MATCH_CLASS] = MATCH_CLASS, - [MATCH_KEYS] = MATCH_KEYS, - [MATCH_MAPPING] = MATCH_MAPPING, - [MATCH_SEQUENCE] = MATCH_SEQUENCE, - [NOP] = NOP, - [POP_EXCEPT] = POP_EXCEPT, - [POP_JUMP_IF_FALSE] = POP_JUMP_IF_FALSE, - [POP_JUMP_IF_NONE] = POP_JUMP_IF_NONE, - [POP_JUMP_IF_NOT_NONE] = POP_JUMP_IF_NOT_NONE, - [POP_JUMP_IF_TRUE] = POP_JUMP_IF_TRUE, - [POP_TOP] = POP_TOP, - [PUSH_EXC_INFO] = PUSH_EXC_INFO, - [PUSH_NULL] = PUSH_NULL, - [RAISE_VARARGS] = RAISE_VARARGS, - [RERAISE] = RERAISE, - [RESERVED] = RESERVED, - [RESUME] = RESUME, - [RETURN_CONST] = RETURN_CONST, - [RETURN_GENERATOR] = RETURN_GENERATOR, - [RETURN_VALUE] = RETURN_VALUE, - [SEND] = SEND, - [SEND_GEN] = SEND, - [SETUP_ANNOTATIONS] = SETUP_ANNOTATIONS, - [SET_ADD] = SET_ADD, - [SET_UPDATE] = SET_UPDATE, - [STORE_ATTR] = STORE_ATTR, - [STORE_ATTR_INSTANCE_VALUE] = STORE_ATTR, - [STORE_ATTR_SLOT] = STORE_ATTR, - [STORE_ATTR_WITH_HINT] = STORE_ATTR, - [STORE_DEREF] = STORE_DEREF, - [STORE_FAST] = STORE_FAST, - [STORE_FAST__LOAD_FAST] = STORE_FAST, - [STORE_FAST__STORE_FAST] = STORE_FAST, - [STORE_GLOBAL] = STORE_GLOBAL, - [STORE_NAME] = STORE_NAME, - [STORE_SLICE] = STORE_SLICE, - [STORE_SUBSCR] = STORE_SUBSCR, - [STORE_SUBSCR_DICT] = STORE_SUBSCR, - [STORE_SUBSCR_LIST_INT] = STORE_SUBSCR, - [SWAP] = SWAP, - [UNARY_INVERT] = UNARY_INVERT, - [UNARY_NEGATIVE] = UNARY_NEGATIVE, - [UNARY_NOT] = UNARY_NOT, - [UNPACK_EX] = UNPACK_EX, - [UNPACK_SEQUENCE] = UNPACK_SEQUENCE, - [UNPACK_SEQUENCE_LIST] = UNPACK_SEQUENCE, - [UNPACK_SEQUENCE_TUPLE] = UNPACK_SEQUENCE, - [UNPACK_SEQUENCE_TWO_TUPLE] = UNPACK_SEQUENCE, - [WITH_EXCEPT_START] = WITH_EXCEPT_START, - [YIELD_VALUE] = YIELD_VALUE, -}; -#endif // NEED_OPCODE_TABLES - -#ifdef Py_DEBUG -static const char *const _PyOpcode_OpName[267] = { - [CACHE] = "CACHE", - [POP_TOP] = "POP_TOP", - [PUSH_NULL] = "PUSH_NULL", - [INTERPRETER_EXIT] = "INTERPRETER_EXIT", - [END_FOR] = "END_FOR", - [END_SEND] = "END_SEND", - [BINARY_OP_ADD_FLOAT] = "BINARY_OP_ADD_FLOAT", - [BINARY_OP_ADD_INT] = "BINARY_OP_ADD_INT", - [BINARY_OP_ADD_UNICODE] = "BINARY_OP_ADD_UNICODE", - [NOP] = "NOP", - [BINARY_OP_INPLACE_ADD_UNICODE] = "BINARY_OP_INPLACE_ADD_UNICODE", - [UNARY_NEGATIVE] = "UNARY_NEGATIVE", - [UNARY_NOT] = "UNARY_NOT", - [BINARY_OP_MULTIPLY_FLOAT] = "BINARY_OP_MULTIPLY_FLOAT", - [BINARY_OP_MULTIPLY_INT] = "BINARY_OP_MULTIPLY_INT", - [UNARY_INVERT] = "UNARY_INVERT", - [BINARY_OP_SUBTRACT_FLOAT] = "BINARY_OP_SUBTRACT_FLOAT", - [RESERVED] = "RESERVED", - [BINARY_OP_SUBTRACT_INT] = "BINARY_OP_SUBTRACT_INT", - [BINARY_SUBSCR_DICT] = "BINARY_SUBSCR_DICT", - [BINARY_SUBSCR_GETITEM] = "BINARY_SUBSCR_GETITEM", - [BINARY_SUBSCR_LIST_INT] = "BINARY_SUBSCR_LIST_INT", - [BINARY_SUBSCR_TUPLE_INT] = "BINARY_SUBSCR_TUPLE_INT", - [CALL_PY_EXACT_ARGS] = "CALL_PY_EXACT_ARGS", - [CALL_PY_WITH_DEFAULTS] = "CALL_PY_WITH_DEFAULTS", - [BINARY_SUBSCR] = "BINARY_SUBSCR", - [BINARY_SLICE] = "BINARY_SLICE", - [STORE_SLICE] = "STORE_SLICE", - [CALL_BOUND_METHOD_EXACT_ARGS] = "CALL_BOUND_METHOD_EXACT_ARGS", - [CALL_BUILTIN_CLASS] = "CALL_BUILTIN_CLASS", - [GET_LEN] = "GET_LEN", - [MATCH_MAPPING] = "MATCH_MAPPING", - [MATCH_SEQUENCE] = "MATCH_SEQUENCE", - [MATCH_KEYS] = "MATCH_KEYS", - [CALL_BUILTIN_FAST_WITH_KEYWORDS] = "CALL_BUILTIN_FAST_WITH_KEYWORDS", - [PUSH_EXC_INFO] = "PUSH_EXC_INFO", - [CHECK_EXC_MATCH] = "CHECK_EXC_MATCH", - [CHECK_EG_MATCH] = "CHECK_EG_MATCH", - [CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS] = "CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS", - [CALL_NO_KW_BUILTIN_FAST] = "CALL_NO_KW_BUILTIN_FAST", - [CALL_NO_KW_BUILTIN_O] = "CALL_NO_KW_BUILTIN_O", - [CALL_NO_KW_ISINSTANCE] = "CALL_NO_KW_ISINSTANCE", - [CALL_NO_KW_LEN] = "CALL_NO_KW_LEN", - [CALL_NO_KW_LIST_APPEND] = "CALL_NO_KW_LIST_APPEND", - [CALL_NO_KW_METHOD_DESCRIPTOR_FAST] = "CALL_NO_KW_METHOD_DESCRIPTOR_FAST", - [CALL_NO_KW_METHOD_DESCRIPTOR_NOARGS] = "CALL_NO_KW_METHOD_DESCRIPTOR_NOARGS", - [CALL_NO_KW_METHOD_DESCRIPTOR_O] = "CALL_NO_KW_METHOD_DESCRIPTOR_O", - [CALL_NO_KW_STR_1] = "CALL_NO_KW_STR_1", - [CALL_NO_KW_TUPLE_1] = "CALL_NO_KW_TUPLE_1", - [WITH_EXCEPT_START] = "WITH_EXCEPT_START", - [GET_AITER] = "GET_AITER", - [GET_ANEXT] = "GET_ANEXT", - [BEFORE_ASYNC_WITH] = "BEFORE_ASYNC_WITH", - [BEFORE_WITH] = "BEFORE_WITH", - [END_ASYNC_FOR] = "END_ASYNC_FOR", - [CLEANUP_THROW] = "CLEANUP_THROW", - [CALL_NO_KW_TYPE_1] = "CALL_NO_KW_TYPE_1", - [COMPARE_OP_FLOAT] = "COMPARE_OP_FLOAT", - [COMPARE_OP_INT] = "COMPARE_OP_INT", - [COMPARE_OP_STR] = "COMPARE_OP_STR", - [STORE_SUBSCR] = "STORE_SUBSCR", - [DELETE_SUBSCR] = "DELETE_SUBSCR", - [FOR_ITER_LIST] = "FOR_ITER_LIST", - [FOR_ITER_TUPLE] = "FOR_ITER_TUPLE", - [FOR_ITER_RANGE] = "FOR_ITER_RANGE", - [FOR_ITER_GEN] = "FOR_ITER_GEN", - [LOAD_SUPER_ATTR_ATTR] = "LOAD_SUPER_ATTR_ATTR", - [LOAD_SUPER_ATTR_METHOD] = "LOAD_SUPER_ATTR_METHOD", - [GET_ITER] = "GET_ITER", - [GET_YIELD_FROM_ITER] = "GET_YIELD_FROM_ITER", - [LOAD_ATTR_CLASS] = "LOAD_ATTR_CLASS", - [LOAD_BUILD_CLASS] = "LOAD_BUILD_CLASS", - [LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN] = "LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN", - [LOAD_ATTR_INSTANCE_VALUE] = "LOAD_ATTR_INSTANCE_VALUE", - [LOAD_ASSERTION_ERROR] = "LOAD_ASSERTION_ERROR", - [RETURN_GENERATOR] = "RETURN_GENERATOR", - [LOAD_ATTR_MODULE] = "LOAD_ATTR_MODULE", - [LOAD_ATTR_PROPERTY] = "LOAD_ATTR_PROPERTY", - [LOAD_ATTR_SLOT] = "LOAD_ATTR_SLOT", - [LOAD_ATTR_WITH_HINT] = "LOAD_ATTR_WITH_HINT", - [LOAD_ATTR_METHOD_LAZY_DICT] = "LOAD_ATTR_METHOD_LAZY_DICT", - [LOAD_ATTR_METHOD_NO_DICT] = "LOAD_ATTR_METHOD_NO_DICT", - [LOAD_ATTR_METHOD_WITH_VALUES] = "LOAD_ATTR_METHOD_WITH_VALUES", - [RETURN_VALUE] = "RETURN_VALUE", - [LOAD_CONST__LOAD_FAST] = "LOAD_CONST__LOAD_FAST", - [SETUP_ANNOTATIONS] = "SETUP_ANNOTATIONS", - [LOAD_FAST__LOAD_CONST] = "LOAD_FAST__LOAD_CONST", - [LOAD_LOCALS] = "LOAD_LOCALS", - [LOAD_FAST__LOAD_FAST] = "LOAD_FAST__LOAD_FAST", - [POP_EXCEPT] = "POP_EXCEPT", - [STORE_NAME] = "STORE_NAME", - [DELETE_NAME] = "DELETE_NAME", - [UNPACK_SEQUENCE] = "UNPACK_SEQUENCE", - [FOR_ITER] = "FOR_ITER", - [UNPACK_EX] = "UNPACK_EX", - [STORE_ATTR] = "STORE_ATTR", - [DELETE_ATTR] = "DELETE_ATTR", - [STORE_GLOBAL] = "STORE_GLOBAL", - [DELETE_GLOBAL] = "DELETE_GLOBAL", - [SWAP] = "SWAP", - [LOAD_CONST] = "LOAD_CONST", - [LOAD_NAME] = "LOAD_NAME", - [BUILD_TUPLE] = "BUILD_TUPLE", - [BUILD_LIST] = "BUILD_LIST", - [BUILD_SET] = "BUILD_SET", - [BUILD_MAP] = "BUILD_MAP", - [LOAD_ATTR] = "LOAD_ATTR", - [COMPARE_OP] = "COMPARE_OP", - [IMPORT_NAME] = "IMPORT_NAME", - [IMPORT_FROM] = "IMPORT_FROM", - [JUMP_FORWARD] = "JUMP_FORWARD", - [LOAD_GLOBAL_BUILTIN] = "LOAD_GLOBAL_BUILTIN", - [LOAD_GLOBAL_MODULE] = "LOAD_GLOBAL_MODULE", - [STORE_ATTR_INSTANCE_VALUE] = "STORE_ATTR_INSTANCE_VALUE", - [POP_JUMP_IF_FALSE] = "POP_JUMP_IF_FALSE", - [POP_JUMP_IF_TRUE] = "POP_JUMP_IF_TRUE", - [LOAD_GLOBAL] = "LOAD_GLOBAL", - [IS_OP] = "IS_OP", - [CONTAINS_OP] = "CONTAINS_OP", - [RERAISE] = "RERAISE", - [COPY] = "COPY", - [RETURN_CONST] = "RETURN_CONST", - [BINARY_OP] = "BINARY_OP", - [SEND] = "SEND", - [LOAD_FAST] = "LOAD_FAST", - [STORE_FAST] = "STORE_FAST", - [DELETE_FAST] = "DELETE_FAST", - [LOAD_FAST_CHECK] = "LOAD_FAST_CHECK", - [POP_JUMP_IF_NOT_NONE] = "POP_JUMP_IF_NOT_NONE", - [POP_JUMP_IF_NONE] = "POP_JUMP_IF_NONE", - [RAISE_VARARGS] = "RAISE_VARARGS", - [GET_AWAITABLE] = "GET_AWAITABLE", - [MAKE_FUNCTION] = "MAKE_FUNCTION", - [BUILD_SLICE] = "BUILD_SLICE", - [JUMP_BACKWARD_NO_INTERRUPT] = "JUMP_BACKWARD_NO_INTERRUPT", - [MAKE_CELL] = "MAKE_CELL", - [LOAD_CLOSURE] = "LOAD_CLOSURE", - [LOAD_DEREF] = "LOAD_DEREF", - [STORE_DEREF] = "STORE_DEREF", - [DELETE_DEREF] = "DELETE_DEREF", - [JUMP_BACKWARD] = "JUMP_BACKWARD", - [LOAD_SUPER_ATTR] = "LOAD_SUPER_ATTR", - [CALL_FUNCTION_EX] = "CALL_FUNCTION_EX", - [LOAD_FAST_AND_CLEAR] = "LOAD_FAST_AND_CLEAR", - [EXTENDED_ARG] = "EXTENDED_ARG", - [LIST_APPEND] = "LIST_APPEND", - [SET_ADD] = "SET_ADD", - [MAP_ADD] = "MAP_ADD", - [STORE_ATTR_SLOT] = "STORE_ATTR_SLOT", - [COPY_FREE_VARS] = "COPY_FREE_VARS", - [YIELD_VALUE] = "YIELD_VALUE", - [RESUME] = "RESUME", - [MATCH_CLASS] = "MATCH_CLASS", - [STORE_ATTR_WITH_HINT] = "STORE_ATTR_WITH_HINT", - [STORE_FAST__LOAD_FAST] = "STORE_FAST__LOAD_FAST", - [FORMAT_VALUE] = "FORMAT_VALUE", - [BUILD_CONST_KEY_MAP] = "BUILD_CONST_KEY_MAP", - [BUILD_STRING] = "BUILD_STRING", - [STORE_FAST__STORE_FAST] = "STORE_FAST__STORE_FAST", - [STORE_SUBSCR_DICT] = "STORE_SUBSCR_DICT", - [STORE_SUBSCR_LIST_INT] = "STORE_SUBSCR_LIST_INT", - [UNPACK_SEQUENCE_LIST] = "UNPACK_SEQUENCE_LIST", - [LIST_EXTEND] = "LIST_EXTEND", - [SET_UPDATE] = "SET_UPDATE", - [DICT_MERGE] = "DICT_MERGE", - [DICT_UPDATE] = "DICT_UPDATE", - [UNPACK_SEQUENCE_TUPLE] = "UNPACK_SEQUENCE_TUPLE", - [UNPACK_SEQUENCE_TWO_TUPLE] = "UNPACK_SEQUENCE_TWO_TUPLE", - [SEND_GEN] = "SEND_GEN", - [169] = "<169>", - [170] = "<170>", - [CALL] = "CALL", - [KW_NAMES] = "KW_NAMES", - [CALL_INTRINSIC_1] = "CALL_INTRINSIC_1", - [CALL_INTRINSIC_2] = "CALL_INTRINSIC_2", - [LOAD_FROM_DICT_OR_GLOBALS] = "LOAD_FROM_DICT_OR_GLOBALS", - [LOAD_FROM_DICT_OR_DEREF] = "LOAD_FROM_DICT_OR_DEREF", - [177] = "<177>", - [178] = "<178>", - [179] = "<179>", - [180] = "<180>", - [181] = "<181>", - [182] = "<182>", - [183] = "<183>", - [184] = "<184>", - [185] = "<185>", - [186] = "<186>", - [187] = "<187>", - [188] = "<188>", - [189] = "<189>", - [190] = "<190>", - [191] = "<191>", - [192] = "<192>", - [193] = "<193>", - [194] = "<194>", - [195] = "<195>", - [196] = "<196>", - [197] = "<197>", - [198] = "<198>", - [199] = "<199>", - [200] = "<200>", - [201] = "<201>", - [202] = "<202>", - [203] = "<203>", - [204] = "<204>", - [205] = "<205>", - [206] = "<206>", - [207] = "<207>", - [208] = "<208>", - [209] = "<209>", - [210] = "<210>", - [211] = "<211>", - [212] = "<212>", - [213] = "<213>", - [214] = "<214>", - [215] = "<215>", - [216] = "<216>", - [217] = "<217>", - [218] = "<218>", - [219] = "<219>", - [220] = "<220>", - [221] = "<221>", - [222] = "<222>", - [223] = "<223>", - [224] = "<224>", - [225] = "<225>", - [226] = "<226>", - [227] = "<227>", - [228] = "<228>", - [229] = "<229>", - [230] = "<230>", - [231] = "<231>", - [232] = "<232>", - [233] = "<233>", - [234] = "<234>", - [235] = "<235>", - [236] = "<236>", - [INSTRUMENTED_LOAD_SUPER_ATTR] = "INSTRUMENTED_LOAD_SUPER_ATTR", - [INSTRUMENTED_POP_JUMP_IF_NONE] = "INSTRUMENTED_POP_JUMP_IF_NONE", - [INSTRUMENTED_POP_JUMP_IF_NOT_NONE] = "INSTRUMENTED_POP_JUMP_IF_NOT_NONE", - [INSTRUMENTED_RESUME] = "INSTRUMENTED_RESUME", - [INSTRUMENTED_CALL] = "INSTRUMENTED_CALL", - [INSTRUMENTED_RETURN_VALUE] = "INSTRUMENTED_RETURN_VALUE", - [INSTRUMENTED_YIELD_VALUE] = "INSTRUMENTED_YIELD_VALUE", - [INSTRUMENTED_CALL_FUNCTION_EX] = "INSTRUMENTED_CALL_FUNCTION_EX", - [INSTRUMENTED_JUMP_FORWARD] = "INSTRUMENTED_JUMP_FORWARD", - [INSTRUMENTED_JUMP_BACKWARD] = "INSTRUMENTED_JUMP_BACKWARD", - [INSTRUMENTED_RETURN_CONST] = "INSTRUMENTED_RETURN_CONST", - [INSTRUMENTED_FOR_ITER] = "INSTRUMENTED_FOR_ITER", - [INSTRUMENTED_POP_JUMP_IF_FALSE] = "INSTRUMENTED_POP_JUMP_IF_FALSE", - [INSTRUMENTED_POP_JUMP_IF_TRUE] = "INSTRUMENTED_POP_JUMP_IF_TRUE", - [INSTRUMENTED_END_FOR] = "INSTRUMENTED_END_FOR", - [INSTRUMENTED_END_SEND] = "INSTRUMENTED_END_SEND", - [INSTRUMENTED_INSTRUCTION] = "INSTRUMENTED_INSTRUCTION", - [INSTRUMENTED_LINE] = "INSTRUMENTED_LINE", - [255] = "<255>", - [SETUP_FINALLY] = "SETUP_FINALLY", - [SETUP_CLEANUP] = "SETUP_CLEANUP", - [SETUP_WITH] = "SETUP_WITH", - [POP_BLOCK] = "POP_BLOCK", - [JUMP] = "JUMP", - [JUMP_NO_INTERRUPT] = "JUMP_NO_INTERRUPT", - [LOAD_METHOD] = "LOAD_METHOD", - [LOAD_SUPER_METHOD] = "LOAD_SUPER_METHOD", - [LOAD_ZERO_SUPER_METHOD] = "LOAD_ZERO_SUPER_METHOD", - [LOAD_ZERO_SUPER_ATTR] = "LOAD_ZERO_SUPER_ATTR", - [STORE_FAST_MAYBE_NULL] = "STORE_FAST_MAYBE_NULL", -}; -#endif - -#define EXTRA_CASES \ - case 169: \ - case 170: \ - case 177: \ - case 178: \ - case 179: \ - case 180: \ - case 181: \ - case 182: \ - case 183: \ - case 184: \ - case 185: \ - case 186: \ - case 187: \ - case 188: \ - case 189: \ - case 190: \ - case 191: \ - case 192: \ - case 193: \ - case 194: \ - case 195: \ - case 196: \ - case 197: \ - case 198: \ - case 199: \ - case 200: \ - case 201: \ - case 202: \ - case 203: \ - case 204: \ - case 205: \ - case 206: \ - case 207: \ - case 208: \ - case 209: \ - case 210: \ - case 211: \ - case 212: \ - case 213: \ - case 214: \ - case 215: \ - case 216: \ - case 217: \ - case 218: \ - case 219: \ - case 220: \ - case 221: \ - case 222: \ - case 223: \ - case 224: \ - case 225: \ - case 226: \ - case 227: \ - case 228: \ - case 229: \ - case 230: \ - case 231: \ - case 232: \ - case 233: \ - case 234: \ - case 235: \ - case 236: \ - case 255: \ - ; - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_OPCODE_H diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_opcode_utils.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_opcode_utils.h deleted file mode 100644 index 1d5ff98..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_opcode_utils.h +++ /dev/null @@ -1,92 +0,0 @@ -#ifndef Py_INTERNAL_OPCODE_UTILS_H -#define Py_INTERNAL_OPCODE_UTILS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_opcode.h" // _PyOpcode_Jump - - -#define MAX_REAL_OPCODE 254 - -#define IS_WITHIN_OPCODE_RANGE(opcode) \ - (((opcode) >= 0 && (opcode) <= MAX_REAL_OPCODE) || \ - IS_PSEUDO_OPCODE(opcode)) - -#define IS_JUMP_OPCODE(opcode) \ - is_bit_set_in_table(_PyOpcode_Jump, opcode) - -#define IS_BLOCK_PUSH_OPCODE(opcode) \ - ((opcode) == SETUP_FINALLY || \ - (opcode) == SETUP_WITH || \ - (opcode) == SETUP_CLEANUP) - -#define HAS_TARGET(opcode) \ - (IS_JUMP_OPCODE(opcode) || IS_BLOCK_PUSH_OPCODE(opcode)) - -/* opcodes that must be last in the basicblock */ -#define IS_TERMINATOR_OPCODE(opcode) \ - (IS_JUMP_OPCODE(opcode) || IS_SCOPE_EXIT_OPCODE(opcode)) - -/* opcodes which are not emitted in codegen stage, only by the assembler */ -#define IS_ASSEMBLER_OPCODE(opcode) \ - ((opcode) == JUMP_FORWARD || \ - (opcode) == JUMP_BACKWARD || \ - (opcode) == JUMP_BACKWARD_NO_INTERRUPT) - -#define IS_BACKWARDS_JUMP_OPCODE(opcode) \ - ((opcode) == JUMP_BACKWARD || \ - (opcode) == JUMP_BACKWARD_NO_INTERRUPT) - -#define IS_UNCONDITIONAL_JUMP_OPCODE(opcode) \ - ((opcode) == JUMP || \ - (opcode) == JUMP_NO_INTERRUPT || \ - (opcode) == JUMP_FORWARD || \ - (opcode) == JUMP_BACKWARD || \ - (opcode) == JUMP_BACKWARD_NO_INTERRUPT) - -#define IS_SCOPE_EXIT_OPCODE(opcode) \ - ((opcode) == RETURN_VALUE || \ - (opcode) == RETURN_CONST || \ - (opcode) == RAISE_VARARGS || \ - (opcode) == RERAISE) - -#define IS_SUPERINSTRUCTION_OPCODE(opcode) \ - ((opcode) == LOAD_FAST__LOAD_FAST || \ - (opcode) == LOAD_FAST__LOAD_CONST || \ - (opcode) == LOAD_CONST__LOAD_FAST || \ - (opcode) == STORE_FAST__LOAD_FAST || \ - (opcode) == STORE_FAST__STORE_FAST) - - -#define LOG_BITS_PER_INT 5 -#define MASK_LOW_LOG_BITS 31 - -static inline int -is_bit_set_in_table(const uint32_t *table, int bitindex) { - /* Is the relevant bit set in the relevant word? */ - /* 512 bits fit into 9 32-bits words. - * Word is indexed by (bitindex>>ln(size of int in bits)). - * Bit within word is the low bits of bitindex. - */ - if (bitindex >= 0 && bitindex < 512) { - uint32_t word = table[bitindex >> LOG_BITS_PER_INT]; - return (word >> (bitindex & MASK_LOW_LOG_BITS)) & 1; - } - else { - return 0; - } -} - -#undef LOG_BITS_PER_INT -#undef MASK_LOW_LOG_BITS - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_OPCODE_UTILS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_parser.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_parser.h deleted file mode 100644 index dd51b92..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_parser.h +++ /dev/null @@ -1,66 +0,0 @@ -#ifndef Py_INTERNAL_PARSER_H -#define Py_INTERNAL_PARSER_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -#include "pycore_ast.h" // struct _expr -#include "pycore_global_strings.h" // _Py_DECLARE_STR() -#include "pycore_pyarena.h" // PyArena - - -#ifdef Py_DEBUG -#define _PYPEGEN_NSTATISTICS 2000 -#endif - -struct _parser_runtime_state { -#ifdef Py_DEBUG - long memo_statistics[_PYPEGEN_NSTATISTICS]; -#else - int _not_used; -#endif - struct _expr dummy_name; -}; - -_Py_DECLARE_STR(empty, "") -#define _parser_runtime_state_INIT \ - { \ - .dummy_name = { \ - .kind = Name_kind, \ - .v.Name.id = &_Py_STR(empty), \ - .v.Name.ctx = Load, \ - .lineno = 1, \ - .col_offset = 0, \ - .end_lineno = 1, \ - .end_col_offset = 0, \ - }, \ - } - -extern struct _mod* _PyParser_ASTFromString( - const char *str, - PyObject* filename, - int mode, - PyCompilerFlags *flags, - PyArena *arena); - -extern struct _mod* _PyParser_ASTFromFile( - FILE *fp, - PyObject *filename_ob, - const char *enc, - int mode, - const char *ps1, - const char *ps2, - PyCompilerFlags *flags, - int *errcode, - PyArena *arena); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PARSER_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pathconfig.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_pathconfig.h deleted file mode 100644 index b8deaa0..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pathconfig.h +++ /dev/null @@ -1,24 +0,0 @@ -#ifndef Py_INTERNAL_PATHCONFIG_H -#define Py_INTERNAL_PATHCONFIG_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -PyAPI_FUNC(void) _PyPathConfig_ClearGlobal(void); -extern PyStatus _PyPathConfig_ReadGlobal(PyConfig *config); -extern PyStatus _PyPathConfig_UpdateGlobal(const PyConfig *config); -extern const wchar_t * _PyPathConfig_GetGlobalModuleSearchPath(void); - -extern int _PyPathConfig_ComputeSysPath0( - const PyWideStringList *argv, - PyObject **path0); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PATHCONFIG_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pyarena.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_pyarena.h deleted file mode 100644 index d78972a..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pyarena.h +++ /dev/null @@ -1,64 +0,0 @@ -/* An arena-like memory interface for the compiler. - */ - -#ifndef Py_INTERNAL_PYARENA_H -#define Py_INTERNAL_PYARENA_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -typedef struct _arena PyArena; - -/* _PyArena_New() and _PyArena_Free() create a new arena and free it, - respectively. Once an arena has been created, it can be used - to allocate memory via _PyArena_Malloc(). Pointers to PyObject can - also be registered with the arena via _PyArena_AddPyObject(), and the - arena will ensure that the PyObjects stay alive at least until - _PyArena_Free() is called. When an arena is freed, all the memory it - allocated is freed, the arena releases internal references to registered - PyObject*, and none of its pointers are valid. - XXX (tim) What does "none of its pointers are valid" mean? Does it - XXX mean that pointers previously obtained via _PyArena_Malloc() are - XXX no longer valid? (That's clearly true, but not sure that's what - XXX the text is trying to say.) - - _PyArena_New() returns an arena pointer. On error, it - returns a negative number and sets an exception. - XXX (tim): Not true. On error, _PyArena_New() actually returns NULL, - XXX and looks like it may or may not set an exception (e.g., if the - XXX internal PyList_New(0) returns NULL, _PyArena_New() passes that on - XXX and an exception is set; OTOH, if the internal - XXX block_new(DEFAULT_BLOCK_SIZE) returns NULL, that's passed on but - XXX an exception is not set in that case). -*/ -PyAPI_FUNC(PyArena*) _PyArena_New(void); -PyAPI_FUNC(void) _PyArena_Free(PyArena *); - -/* Mostly like malloc(), return the address of a block of memory spanning - * `size` bytes, or return NULL (without setting an exception) if enough - * new memory can't be obtained. Unlike malloc(0), _PyArena_Malloc() with - * size=0 does not guarantee to return a unique pointer (the pointer - * returned may equal one or more other pointers obtained from - * _PyArena_Malloc()). - * Note that pointers obtained via _PyArena_Malloc() must never be passed to - * the system free() or realloc(), or to any of Python's similar memory- - * management functions. _PyArena_Malloc()-obtained pointers remain valid - * until _PyArena_Free(ar) is called, at which point all pointers obtained - * from the arena `ar` become invalid simultaneously. - */ -PyAPI_FUNC(void*) _PyArena_Malloc(PyArena *, size_t size); - -/* This routine isn't a proper arena allocation routine. It takes - * a PyObject* and records it so that it can be DECREFed when the - * arena is freed. - */ -PyAPI_FUNC(int) _PyArena_AddPyObject(PyArena *, PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYARENA_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pyerrors.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_pyerrors.h deleted file mode 100644 index 4620a26..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pyerrors.h +++ /dev/null @@ -1,117 +0,0 @@ -#ifndef Py_INTERNAL_PYERRORS_H -#define Py_INTERNAL_PYERRORS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* runtime lifecycle */ - -extern PyStatus _PyErr_InitTypes(PyInterpreterState *); -extern void _PyErr_FiniTypes(PyInterpreterState *); - - -/* other API */ - -static inline PyObject* _PyErr_Occurred(PyThreadState *tstate) -{ - assert(tstate != NULL); - if (tstate->current_exception == NULL) { - return NULL; - } - return (PyObject *)Py_TYPE(tstate->current_exception); -} - -static inline void _PyErr_ClearExcState(_PyErr_StackItem *exc_state) -{ - Py_CLEAR(exc_state->exc_value); -} - -PyAPI_FUNC(PyObject*) _PyErr_StackItemToExcInfoTuple( - _PyErr_StackItem *err_info); - -PyAPI_FUNC(void) _PyErr_Fetch( - PyThreadState *tstate, - PyObject **type, - PyObject **value, - PyObject **traceback); - -extern PyObject * -_PyErr_GetRaisedException(PyThreadState *tstate); - -PyAPI_FUNC(int) _PyErr_ExceptionMatches( - PyThreadState *tstate, - PyObject *exc); - -void -_PyErr_SetRaisedException(PyThreadState *tstate, PyObject *exc); - -PyAPI_FUNC(void) _PyErr_Restore( - PyThreadState *tstate, - PyObject *type, - PyObject *value, - PyObject *traceback); - -PyAPI_FUNC(void) _PyErr_SetObject( - PyThreadState *tstate, - PyObject *type, - PyObject *value); - -PyAPI_FUNC(void) _PyErr_ChainStackItem( - _PyErr_StackItem *exc_info); - -PyAPI_FUNC(void) _PyErr_Clear(PyThreadState *tstate); - -PyAPI_FUNC(void) _PyErr_SetNone(PyThreadState *tstate, PyObject *exception); - -PyAPI_FUNC(PyObject *) _PyErr_NoMemory(PyThreadState *tstate); - -PyAPI_FUNC(void) _PyErr_SetString( - PyThreadState *tstate, - PyObject *exception, - const char *string); - -PyAPI_FUNC(PyObject *) _PyErr_Format( - PyThreadState *tstate, - PyObject *exception, - const char *format, - ...); - -PyAPI_FUNC(void) _PyErr_NormalizeException( - PyThreadState *tstate, - PyObject **exc, - PyObject **val, - PyObject **tb); - -PyAPI_FUNC(PyObject *) _PyErr_FormatFromCauseTstate( - PyThreadState *tstate, - PyObject *exception, - const char *format, - ...); - -PyAPI_FUNC(PyObject *) _PyExc_CreateExceptionGroup( - const char *msg, - PyObject *excs); - -PyAPI_FUNC(PyObject *) _PyExc_PrepReraiseStar( - PyObject *orig, - PyObject *excs); - -PyAPI_FUNC(int) _PyErr_CheckSignalsTstate(PyThreadState *tstate); - -PyAPI_FUNC(void) _Py_DumpExtensionModules(int fd, PyInterpreterState *interp); - -extern PyObject* _Py_Offer_Suggestions(PyObject* exception); -PyAPI_FUNC(Py_ssize_t) _Py_UTF8_Edit_Cost(PyObject *str_a, PyObject *str_b, - Py_ssize_t max_cost); - -void _PyErr_FormatNote(const char *format, ...); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYERRORS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pyhash.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_pyhash.h deleted file mode 100644 index 34dfa53..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pyhash.h +++ /dev/null @@ -1,40 +0,0 @@ -#ifndef Py_INTERNAL_HASH_H -#define Py_INTERNAL_HASH_H - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -struct pyhash_runtime_state { - struct { -#ifndef MS_WINDOWS - int fd; - dev_t st_dev; - ino_t st_ino; -#else - // This is a placeholder so the struct isn't empty on Windows. - int _not_used; -#endif - } urandom_cache; -}; - -#ifndef MS_WINDOWS -# define _py_urandom_cache_INIT \ - { \ - .fd = -1, \ - } -#else -# define _py_urandom_cache_INIT {0} -#endif - -#define pyhash_state_INIT \ - { \ - .urandom_cache = _py_urandom_cache_INIT, \ - } - - -uint64_t _Py_KeyedHash(uint64_t, const char *, Py_ssize_t); - - -#endif // Py_INTERNAL_HASH_H diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pylifecycle.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_pylifecycle.h deleted file mode 100644 index 7cd998a..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pylifecycle.h +++ /dev/null @@ -1,99 +0,0 @@ -#ifndef Py_INTERNAL_LIFECYCLE_H -#define Py_INTERNAL_LIFECYCLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_runtime.h" // _PyRuntimeState - -/* Forward declarations */ -struct _PyArgv; -struct pyruntimestate; - -extern int _Py_SetFileSystemEncoding( - const char *encoding, - const char *errors); -extern void _Py_ClearFileSystemEncoding(void); -extern PyStatus _PyUnicode_InitEncodings(PyThreadState *tstate); -#ifdef MS_WINDOWS -extern int _PyUnicode_EnableLegacyWindowsFSEncoding(void); -#endif - -PyAPI_FUNC(void) _Py_ClearStandardStreamEncoding(void); - -PyAPI_FUNC(int) _Py_IsLocaleCoercionTarget(const char *ctype_loc); - -/* Various one-time initializers */ - -extern void _Py_InitVersion(void); -extern PyStatus _PyFaulthandler_Init(int enable); -extern PyObject * _PyBuiltin_Init(PyInterpreterState *interp); -extern PyStatus _PySys_Create( - PyThreadState *tstate, - PyObject **sysmod_p); -extern PyStatus _PySys_ReadPreinitWarnOptions(PyWideStringList *options); -extern PyStatus _PySys_ReadPreinitXOptions(PyConfig *config); -extern int _PySys_UpdateConfig(PyThreadState *tstate); -extern void _PySys_FiniTypes(PyInterpreterState *interp); -extern int _PyBuiltins_AddExceptions(PyObject * bltinmod); -extern PyStatus _Py_HashRandomization_Init(const PyConfig *); - -extern PyStatus _PyTime_Init(void); -extern PyStatus _PyGC_Init(PyInterpreterState *interp); -extern PyStatus _PyAtExit_Init(PyInterpreterState *interp); -extern int _Py_Deepfreeze_Init(void); - -/* Various internal finalizers */ - -extern int _PySignal_Init(int install_signal_handlers); -extern void _PySignal_Fini(void); - -extern void _PyGC_Fini(PyInterpreterState *interp); -extern void _Py_HashRandomization_Fini(void); -extern void _PyFaulthandler_Fini(void); -extern void _PyHash_Fini(void); -extern void _PyTraceMalloc_Fini(void); -extern void _PyWarnings_Fini(PyInterpreterState *interp); -extern void _PyAST_Fini(PyInterpreterState *interp); -extern void _PyAtExit_Fini(PyInterpreterState *interp); -extern void _PyThread_FiniType(PyInterpreterState *interp); -extern void _Py_Deepfreeze_Fini(void); -extern void _PyArg_Fini(void); -extern void _Py_FinalizeAllocatedBlocks(_PyRuntimeState *); - -extern PyStatus _PyGILState_Init(PyInterpreterState *interp); -extern PyStatus _PyGILState_SetTstate(PyThreadState *tstate); -extern void _PyGILState_Fini(PyInterpreterState *interp); - -PyAPI_FUNC(void) _PyGC_DumpShutdownStats(PyInterpreterState *interp); - -PyAPI_FUNC(PyStatus) _Py_PreInitializeFromPyArgv( - const PyPreConfig *src_config, - const struct _PyArgv *args); -PyAPI_FUNC(PyStatus) _Py_PreInitializeFromConfig( - const PyConfig *config, - const struct _PyArgv *args); - -PyAPI_FUNC(wchar_t *) _Py_GetStdlibDir(void); - -PyAPI_FUNC(int) _Py_HandleSystemExit(int *exitcode_p); - -PyAPI_FUNC(PyObject*) _PyErr_WriteUnraisableDefaultHook(PyObject *unraisable); - -PyAPI_FUNC(void) _PyErr_Print(PyThreadState *tstate); -PyAPI_FUNC(void) _PyErr_Display(PyObject *file, PyObject *exception, - PyObject *value, PyObject *tb); -PyAPI_FUNC(void) _PyErr_DisplayException(PyObject *file, PyObject *exc); - -PyAPI_FUNC(void) _PyThreadState_DeleteCurrent(PyThreadState *tstate); - -extern void _PyAtExit_Call(PyInterpreterState *interp); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_LIFECYCLE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pymath.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_pymath.h deleted file mode 100644 index 7a4e1c1..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pymath.h +++ /dev/null @@ -1,205 +0,0 @@ -#ifndef Py_INTERNAL_PYMATH_H -#define Py_INTERNAL_PYMATH_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* _Py_ADJUST_ERANGE1(x) - * _Py_ADJUST_ERANGE2(x, y) - * Set errno to 0 before calling a libm function, and invoke one of these - * macros after, passing the function result(s) (_Py_ADJUST_ERANGE2 is useful - * for functions returning complex results). This makes two kinds of - * adjustments to errno: (A) If it looks like the platform libm set - * errno=ERANGE due to underflow, clear errno. (B) If it looks like the - * platform libm overflowed but didn't set errno, force errno to ERANGE. In - * effect, we're trying to force a useful implementation of C89 errno - * behavior. - * Caution: - * This isn't reliable. C99 no longer requires libm to set errno under - * any exceptional condition, but does require +- HUGE_VAL return - * values on overflow. A 754 box *probably* maps HUGE_VAL to a - * double infinity, and we're cool if that's so, unless the input - * was an infinity and an infinity is the expected result. A C89 - * system sets errno to ERANGE, so we check for that too. We're - * out of luck if a C99 754 box doesn't map HUGE_VAL to +Inf, or - * if the returned result is a NaN, or if a C89 box returns HUGE_VAL - * in non-overflow cases. - */ -static inline void _Py_ADJUST_ERANGE1(double x) -{ - if (errno == 0) { - if (x == Py_HUGE_VAL || x == -Py_HUGE_VAL) { - errno = ERANGE; - } - } - else if (errno == ERANGE && x == 0.0) { - errno = 0; - } -} - -static inline void _Py_ADJUST_ERANGE2(double x, double y) -{ - if (x == Py_HUGE_VAL || x == -Py_HUGE_VAL || - y == Py_HUGE_VAL || y == -Py_HUGE_VAL) - { - if (errno == 0) { - errno = ERANGE; - } - } - else if (errno == ERANGE) { - errno = 0; - } -} - - -//--- HAVE_PY_SET_53BIT_PRECISION macro ------------------------------------ -// -// The functions _Py_dg_strtod() and _Py_dg_dtoa() in Python/dtoa.c (which are -// required to support the short float repr introduced in Python 3.1) require -// that the floating-point unit that's being used for arithmetic operations on -// C doubles is set to use 53-bit precision. It also requires that the FPU -// rounding mode is round-half-to-even, but that's less often an issue. -// -// If your FPU isn't already set to 53-bit precision/round-half-to-even, and -// you want to make use of _Py_dg_strtod() and _Py_dg_dtoa(), then you should: -// -// #define HAVE_PY_SET_53BIT_PRECISION 1 -// -// and also give appropriate definitions for the following three macros: -// -// * _Py_SET_53BIT_PRECISION_HEADER: any variable declarations needed to -// use the two macros below. -// * _Py_SET_53BIT_PRECISION_START: store original FPU settings, and -// set FPU to 53-bit precision/round-half-to-even -// * _Py_SET_53BIT_PRECISION_END: restore original FPU settings -// -// The macros are designed to be used within a single C function: see -// Python/pystrtod.c for an example of their use. - - -// Get and set x87 control word for gcc/x86 -#ifdef HAVE_GCC_ASM_FOR_X87 -#define HAVE_PY_SET_53BIT_PRECISION 1 - -// Functions defined in Python/pymath.c -extern unsigned short _Py_get_387controlword(void); -extern void _Py_set_387controlword(unsigned short); - -#define _Py_SET_53BIT_PRECISION_HEADER \ - unsigned short old_387controlword, new_387controlword -#define _Py_SET_53BIT_PRECISION_START \ - do { \ - old_387controlword = _Py_get_387controlword(); \ - new_387controlword = (old_387controlword & ~0x0f00) | 0x0200; \ - if (new_387controlword != old_387controlword) { \ - _Py_set_387controlword(new_387controlword); \ - } \ - } while (0) -#define _Py_SET_53BIT_PRECISION_END \ - do { \ - if (new_387controlword != old_387controlword) { \ - _Py_set_387controlword(old_387controlword); \ - } \ - } while (0) -#endif - -// Get and set x87 control word for VisualStudio/x86. -// x87 is not supported in 64-bit or ARM. -#if defined(_MSC_VER) && !defined(_WIN64) && !defined(_M_ARM) -#define HAVE_PY_SET_53BIT_PRECISION 1 - -#include // __control87_2() - -#define _Py_SET_53BIT_PRECISION_HEADER \ - unsigned int old_387controlword, new_387controlword, out_387controlword - // We use the __control87_2 function to set only the x87 control word. - // The SSE control word is unaffected. -#define _Py_SET_53BIT_PRECISION_START \ - do { \ - __control87_2(0, 0, &old_387controlword, NULL); \ - new_387controlword = \ - (old_387controlword & ~(_MCW_PC | _MCW_RC)) | (_PC_53 | _RC_NEAR); \ - if (new_387controlword != old_387controlword) { \ - __control87_2(new_387controlword, _MCW_PC | _MCW_RC, \ - &out_387controlword, NULL); \ - } \ - } while (0) -#define _Py_SET_53BIT_PRECISION_END \ - do { \ - if (new_387controlword != old_387controlword) { \ - __control87_2(old_387controlword, _MCW_PC | _MCW_RC, \ - &out_387controlword, NULL); \ - } \ - } while (0) -#endif - - -// MC68881 -#ifdef HAVE_GCC_ASM_FOR_MC68881 -#define HAVE_PY_SET_53BIT_PRECISION 1 -#define _Py_SET_53BIT_PRECISION_HEADER \ - unsigned int old_fpcr, new_fpcr -#define _Py_SET_53BIT_PRECISION_START \ - do { \ - __asm__ ("fmove.l %%fpcr,%0" : "=g" (old_fpcr)); \ - /* Set double precision / round to nearest. */ \ - new_fpcr = (old_fpcr & ~0xf0) | 0x80; \ - if (new_fpcr != old_fpcr) { \ - __asm__ volatile ("fmove.l %0,%%fpcr" : : "g" (new_fpcr));\ - } \ - } while (0) -#define _Py_SET_53BIT_PRECISION_END \ - do { \ - if (new_fpcr != old_fpcr) { \ - __asm__ volatile ("fmove.l %0,%%fpcr" : : "g" (old_fpcr)); \ - } \ - } while (0) -#endif - -// Default definitions are empty -#ifndef _Py_SET_53BIT_PRECISION_HEADER -# define _Py_SET_53BIT_PRECISION_HEADER -# define _Py_SET_53BIT_PRECISION_START -# define _Py_SET_53BIT_PRECISION_END -#endif - - -//--- _PY_SHORT_FLOAT_REPR macro ------------------------------------------- - -// If we can't guarantee 53-bit precision, don't use the code -// in Python/dtoa.c, but fall back to standard code. This -// means that repr of a float will be long (17 significant digits). -// -// Realistically, there are two things that could go wrong: -// -// (1) doubles aren't IEEE 754 doubles, or -// (2) we're on x86 with the rounding precision set to 64-bits -// (extended precision), and we don't know how to change -// the rounding precision. -#if !defined(DOUBLE_IS_LITTLE_ENDIAN_IEEE754) && \ - !defined(DOUBLE_IS_BIG_ENDIAN_IEEE754) && \ - !defined(DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754) -# define _PY_SHORT_FLOAT_REPR 0 -#endif - -// Double rounding is symptomatic of use of extended precision on x86. -// If we're seeing double rounding, and we don't have any mechanism available -// for changing the FPU rounding precision, then don't use Python/dtoa.c. -#if defined(X87_DOUBLE_ROUNDING) && !defined(HAVE_PY_SET_53BIT_PRECISION) -# define _PY_SHORT_FLOAT_REPR 0 -#endif - -#ifndef _PY_SHORT_FLOAT_REPR -# define _PY_SHORT_FLOAT_REPR 1 -#endif - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYMATH_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pymem.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_pymem.h deleted file mode 100644 index 81a707a..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pymem.h +++ /dev/null @@ -1,98 +0,0 @@ -#ifndef Py_INTERNAL_PYMEM_H -#define Py_INTERNAL_PYMEM_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pymem.h" // PyMemAllocatorName - - -typedef struct { - /* We tag each block with an API ID in order to tag API violations */ - char api_id; - PyMemAllocatorEx alloc; -} debug_alloc_api_t; - -struct _pymem_allocators { - PyThread_type_lock mutex; - struct { - PyMemAllocatorEx raw; - PyMemAllocatorEx mem; - PyMemAllocatorEx obj; - } standard; - struct { - debug_alloc_api_t raw; - debug_alloc_api_t mem; - debug_alloc_api_t obj; - } debug; - PyObjectArenaAllocator obj_arena; -}; - - -/* Set the memory allocator of the specified domain to the default. - Save the old allocator into *old_alloc if it's non-NULL. - Return on success, or return -1 if the domain is unknown. */ -PyAPI_FUNC(int) _PyMem_SetDefaultAllocator( - PyMemAllocatorDomain domain, - PyMemAllocatorEx *old_alloc); - -/* Special bytes broadcast into debug memory blocks at appropriate times. - Strings of these are unlikely to be valid addresses, floats, ints or - 7-bit ASCII. - - - PYMEM_CLEANBYTE: clean (newly allocated) memory - - PYMEM_DEADBYTE dead (newly freed) memory - - PYMEM_FORBIDDENBYTE: untouchable bytes at each end of a block - - Byte patterns 0xCB, 0xDB and 0xFB have been replaced with 0xCD, 0xDD and - 0xFD to use the same values than Windows CRT debug malloc() and free(). - If modified, _PyMem_IsPtrFreed() should be updated as well. */ -#define PYMEM_CLEANBYTE 0xCD -#define PYMEM_DEADBYTE 0xDD -#define PYMEM_FORBIDDENBYTE 0xFD - -/* Heuristic checking if a pointer value is newly allocated - (uninitialized), newly freed or NULL (is equal to zero). - - The pointer is not dereferenced, only the pointer value is checked. - - The heuristic relies on the debug hooks on Python memory allocators which - fills newly allocated memory with CLEANBYTE (0xCD) and newly freed memory - with DEADBYTE (0xDD). Detect also "untouchable bytes" marked - with FORBIDDENBYTE (0xFD). */ -static inline int _PyMem_IsPtrFreed(const void *ptr) -{ - uintptr_t value = (uintptr_t)ptr; -#if SIZEOF_VOID_P == 8 - return (value == 0 - || value == (uintptr_t)0xCDCDCDCDCDCDCDCD - || value == (uintptr_t)0xDDDDDDDDDDDDDDDD - || value == (uintptr_t)0xFDFDFDFDFDFDFDFD); -#elif SIZEOF_VOID_P == 4 - return (value == 0 - || value == (uintptr_t)0xCDCDCDCD - || value == (uintptr_t)0xDDDDDDDD - || value == (uintptr_t)0xFDFDFDFD); -#else -# error "unknown pointer size" -#endif -} - -PyAPI_FUNC(int) _PyMem_GetAllocatorName( - const char *name, - PyMemAllocatorName *allocator); - -/* Configure the Python memory allocators. - Pass PYMEM_ALLOCATOR_DEFAULT to use default allocators. - PYMEM_ALLOCATOR_NOT_SET does nothing. */ -PyAPI_FUNC(int) _PyMem_SetupAllocators(PyMemAllocatorName allocator); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYMEM_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pymem_init.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_pymem_init.h deleted file mode 100644 index 7823273..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pymem_init.h +++ /dev/null @@ -1,85 +0,0 @@ -#ifndef Py_INTERNAL_PYMEM_INIT_H -#define Py_INTERNAL_PYMEM_INIT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_pymem.h" - - -/********************************/ -/* the allocators' initializers */ - -extern void * _PyMem_RawMalloc(void *, size_t); -extern void * _PyMem_RawCalloc(void *, size_t, size_t); -extern void * _PyMem_RawRealloc(void *, void *, size_t); -extern void _PyMem_RawFree(void *, void *); -#define PYRAW_ALLOC {NULL, _PyMem_RawMalloc, _PyMem_RawCalloc, _PyMem_RawRealloc, _PyMem_RawFree} - -#ifdef WITH_PYMALLOC -extern void* _PyObject_Malloc(void *, size_t); -extern void* _PyObject_Calloc(void *, size_t, size_t); -extern void _PyObject_Free(void *, void *); -extern void* _PyObject_Realloc(void *, void *, size_t); -# define PYOBJ_ALLOC {NULL, _PyObject_Malloc, _PyObject_Calloc, _PyObject_Realloc, _PyObject_Free} -#else -# define PYOBJ_ALLOC PYRAW_ALLOC -#endif // WITH_PYMALLOC - -#define PYMEM_ALLOC PYOBJ_ALLOC - -extern void* _PyMem_DebugRawMalloc(void *, size_t); -extern void* _PyMem_DebugRawCalloc(void *, size_t, size_t); -extern void* _PyMem_DebugRawRealloc(void *, void *, size_t); -extern void _PyMem_DebugRawFree(void *, void *); - -extern void* _PyMem_DebugMalloc(void *, size_t); -extern void* _PyMem_DebugCalloc(void *, size_t, size_t); -extern void* _PyMem_DebugRealloc(void *, void *, size_t); -extern void _PyMem_DebugFree(void *, void *); - -#define PYDBGRAW_ALLOC(runtime) \ - {&(runtime).allocators.debug.raw, _PyMem_DebugRawMalloc, _PyMem_DebugRawCalloc, _PyMem_DebugRawRealloc, _PyMem_DebugRawFree} -#define PYDBGMEM_ALLOC(runtime) \ - {&(runtime).allocators.debug.mem, _PyMem_DebugMalloc, _PyMem_DebugCalloc, _PyMem_DebugRealloc, _PyMem_DebugFree} -#define PYDBGOBJ_ALLOC(runtime) \ - {&(runtime).allocators.debug.obj, _PyMem_DebugMalloc, _PyMem_DebugCalloc, _PyMem_DebugRealloc, _PyMem_DebugFree} - -extern void * _PyMem_ArenaAlloc(void *, size_t); -extern void _PyMem_ArenaFree(void *, void *, size_t); - -#ifdef Py_DEBUG -# define _pymem_allocators_standard_INIT(runtime) \ - { \ - PYDBGRAW_ALLOC(runtime), \ - PYDBGMEM_ALLOC(runtime), \ - PYDBGOBJ_ALLOC(runtime), \ - } -#else -# define _pymem_allocators_standard_INIT(runtime) \ - { \ - PYRAW_ALLOC, \ - PYMEM_ALLOC, \ - PYOBJ_ALLOC, \ - } -#endif - -#define _pymem_allocators_debug_INIT \ - { \ - {'r', PYRAW_ALLOC}, \ - {'m', PYMEM_ALLOC}, \ - {'o', PYOBJ_ALLOC}, \ - } - -# define _pymem_allocators_obj_arena_INIT \ - { NULL, _PyMem_ArenaAlloc, _PyMem_ArenaFree } - - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_PYMEM_INIT_H diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pystate.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_pystate.h deleted file mode 100644 index fba08ae..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pystate.h +++ /dev/null @@ -1,180 +0,0 @@ -#ifndef Py_INTERNAL_PYSTATE_H -#define Py_INTERNAL_PYSTATE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_runtime.h" /* PyRuntimeState */ - - -/* Check if the current thread is the main thread. - Use _Py_IsMainInterpreter() to check if it's the main interpreter. */ -static inline int -_Py_IsMainThread(void) -{ - unsigned long thread = PyThread_get_thread_ident(); - return (thread == _PyRuntime.main_thread); -} - - -static inline PyInterpreterState * -_PyInterpreterState_Main(void) -{ - return _PyRuntime.interpreters.main; -} - -static inline int -_Py_IsMainInterpreter(PyInterpreterState *interp) -{ - return (interp == _PyInterpreterState_Main()); -} - -static inline int -_Py_IsMainInterpreterFinalizing(PyInterpreterState *interp) -{ - /* bpo-39877: Access _PyRuntime directly rather than using - tstate->interp->runtime to support calls from Python daemon threads. - After Py_Finalize() has been called, tstate can be a dangling pointer: - point to PyThreadState freed memory. */ - return (_PyRuntimeState_GetFinalizing(&_PyRuntime) != NULL && - interp == &_PyRuntime._main_interpreter); -} - -// Export for _xxsubinterpreters module. -PyAPI_FUNC(int) _PyInterpreterState_SetRunningMain(PyInterpreterState *); -PyAPI_FUNC(void) _PyInterpreterState_SetNotRunningMain(PyInterpreterState *); -PyAPI_FUNC(int) _PyInterpreterState_IsRunningMain(PyInterpreterState *); - - -static inline const PyConfig * -_Py_GetMainConfig(void) -{ - PyInterpreterState *interp = _PyInterpreterState_Main(); - if (interp == NULL) { - return NULL; - } - return _PyInterpreterState_GetConfig(interp); -} - - -/* Only handle signals on the main thread of the main interpreter. */ -static inline int -_Py_ThreadCanHandleSignals(PyInterpreterState *interp) -{ - return (_Py_IsMainThread() && _Py_IsMainInterpreter(interp)); -} - - -/* Variable and static inline functions for in-line access to current thread - and interpreter state */ - -#if defined(HAVE_THREAD_LOCAL) && !defined(Py_BUILD_CORE_MODULE) -extern _Py_thread_local PyThreadState *_Py_tss_tstate; -#endif -PyAPI_DATA(PyThreadState *) _PyThreadState_GetCurrent(void); - -#ifndef NDEBUG -extern int _PyThreadState_CheckConsistency(PyThreadState *tstate); -#endif - -extern int _PyThreadState_MustExit(PyThreadState *tstate); - -/* Get the current Python thread state. - - This function is unsafe: it does not check for error and it can return NULL. - - The caller must hold the GIL. - - See also PyThreadState_Get() and _PyThreadState_UncheckedGet(). */ -static inline PyThreadState* -_PyThreadState_GET(void) -{ -#if defined(HAVE_THREAD_LOCAL) && !defined(Py_BUILD_CORE_MODULE) - return _Py_tss_tstate; -#else - return _PyThreadState_GetCurrent(); -#endif -} - - -static inline void -_Py_EnsureFuncTstateNotNULL(const char *func, PyThreadState *tstate) -{ - if (tstate == NULL) { - _Py_FatalErrorFunc(func, - "the function must be called with the GIL held, " - "after Python initialization and before Python finalization, " - "but the GIL is released (the current Python thread state is NULL)"); - } -} - -// Call Py_FatalError() if tstate is NULL -#define _Py_EnsureTstateNotNULL(tstate) \ - _Py_EnsureFuncTstateNotNULL(__func__, (tstate)) - - -/* Get the current interpreter state. - - The function is unsafe: it does not check for error and it can return NULL. - - The caller must hold the GIL. - - See also _PyInterpreterState_Get() - and _PyGILState_GetInterpreterStateUnsafe(). */ -static inline PyInterpreterState* _PyInterpreterState_GET(void) { - PyThreadState *tstate = _PyThreadState_GET(); -#ifdef Py_DEBUG - _Py_EnsureTstateNotNULL(tstate); -#endif - return tstate->interp; -} - - -// PyThreadState functions - -PyAPI_FUNC(PyThreadState *) _PyThreadState_New(PyInterpreterState *interp); -PyAPI_FUNC(void) _PyThreadState_Bind(PyThreadState *tstate); -// We keep this around exclusively for stable ABI compatibility. -PyAPI_FUNC(void) _PyThreadState_Init( - PyThreadState *tstate); -PyAPI_FUNC(void) _PyThreadState_DeleteExcept(PyThreadState *tstate); - - -/* Other */ - -PyAPI_FUNC(PyThreadState *) _PyThreadState_Swap( - _PyRuntimeState *runtime, - PyThreadState *newts); - -PyAPI_FUNC(PyStatus) _PyInterpreterState_Enable(_PyRuntimeState *runtime); - -#ifdef HAVE_FORK -extern PyStatus _PyInterpreterState_DeleteExceptMain(_PyRuntimeState *runtime); -extern void _PySignal_AfterFork(void); -#endif - -PyAPI_FUNC(int) _PyCrossInterpreterData_ReleaseAndRawFree(_PyCrossInterpreterData *); - - -PyAPI_FUNC(int) _PyState_AddModule( - PyThreadState *tstate, - PyObject* module, - PyModuleDef* def); - - -PyAPI_FUNC(int) _PyOS_InterruptOccurred(PyThreadState *tstate); - -#define HEAD_LOCK(runtime) \ - PyThread_acquire_lock((runtime)->interpreters.mutex, WAIT_LOCK) -#define HEAD_UNLOCK(runtime) \ - PyThread_release_lock((runtime)->interpreters.mutex) - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYSTATE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pythread.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_pythread.h deleted file mode 100644 index f539214..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_pythread.h +++ /dev/null @@ -1,81 +0,0 @@ -#ifndef Py_INTERNAL_PYTHREAD_H -#define Py_INTERNAL_PYTHREAD_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -#ifndef _POSIX_THREADS -/* This means pthreads are not implemented in libc headers, hence the macro - not present in unistd.h. But they still can be implemented as an external - library (e.g. gnu pth in pthread emulation) */ -# ifdef HAVE_PTHREAD_H -# include /* _POSIX_THREADS */ -# endif -# ifndef _POSIX_THREADS -/* Check if we're running on HP-UX and _SC_THREADS is defined. If so, then - enough of the Posix threads package is implemented to support python - threads. - - This is valid for HP-UX 11.23 running on an ia64 system. If needed, add - a check of __ia64 to verify that we're running on an ia64 system instead - of a pa-risc system. -*/ -# ifdef __hpux -# ifdef _SC_THREADS -# define _POSIX_THREADS -# endif -# endif -# endif /* _POSIX_THREADS */ -#endif /* _POSIX_THREADS */ - -#if defined(_POSIX_THREADS) || defined(HAVE_PTHREAD_STUBS) -# define _USE_PTHREADS -#endif - -#if defined(_USE_PTHREADS) && defined(HAVE_PTHREAD_CONDATTR_SETCLOCK) && defined(HAVE_CLOCK_GETTIME) && defined(CLOCK_MONOTONIC) -// monotonic is supported statically. It doesn't mean it works on runtime. -# define CONDATTR_MONOTONIC -#endif - - -#if defined(HAVE_PTHREAD_STUBS) -// pthread_key -struct py_stub_tls_entry { - bool in_use; - void *value; -}; -#endif - -struct _pythread_runtime_state { - int initialized; - -#ifdef _USE_PTHREADS - // This matches when thread_pthread.h is used. - struct { - /* NULL when pthread_condattr_setclock(CLOCK_MONOTONIC) is not supported. */ - pthread_condattr_t *ptr; -# ifdef CONDATTR_MONOTONIC - /* The value to which condattr_monotonic is set. */ - pthread_condattr_t val; -# endif - } _condattr_monotonic; - -#endif // USE_PTHREADS - -#if defined(HAVE_PTHREAD_STUBS) - struct { - struct py_stub_tls_entry tls_entries[PTHREAD_KEYS_MAX]; - } stubs; -#endif -}; - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_PYTHREAD_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_range.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_range.h deleted file mode 100644 index bf045ec..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_range.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef Py_INTERNAL_RANGE_H -#define Py_INTERNAL_RANGE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -typedef struct { - PyObject_HEAD - long start; - long step; - long len; -} _PyRangeIterObject; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_RANGE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_runtime.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_runtime.h deleted file mode 100644 index 99c4b07..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_runtime.h +++ /dev/null @@ -1,235 +0,0 @@ -#ifndef Py_INTERNAL_RUNTIME_H -#define Py_INTERNAL_RUNTIME_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_atexit.h" // struct atexit_runtime_state -#include "pycore_atomic.h" /* _Py_atomic_address */ -#include "pycore_ceval_state.h" // struct _ceval_runtime_state -#include "pycore_floatobject.h" // struct _Py_float_runtime_state -#include "pycore_faulthandler.h" // struct _faulthandler_runtime_state -#include "pycore_global_objects.h" // struct _Py_global_objects -#include "pycore_import.h" // struct _import_runtime_state -#include "pycore_interp.h" // PyInterpreterState -#include "pycore_object_state.h" // struct _py_object_runtime_state -#include "pycore_parser.h" // struct _parser_runtime_state -#include "pycore_pymem.h" // struct _pymem_allocators -#include "pycore_pyhash.h" // struct pyhash_runtime_state -#include "pycore_pythread.h" // struct _pythread_runtime_state -#include "pycore_signal.h" // struct _signals_runtime_state -#include "pycore_time.h" // struct _time_runtime_state -#include "pycore_tracemalloc.h" // struct _tracemalloc_runtime_state -#include "pycore_typeobject.h" // struct types_runtime_state -#include "pycore_unicodeobject.h" // struct _Py_unicode_runtime_ids - -struct _getargs_runtime_state { - PyThread_type_lock mutex; - struct _PyArg_Parser *static_parsers; -}; - -/* GIL state */ - -struct _gilstate_runtime_state { - /* bpo-26558: Flag to disable PyGILState_Check(). - If set to non-zero, PyGILState_Check() always return 1. */ - int check_enabled; - /* The single PyInterpreterState used by this process' - GILState implementation - */ - /* TODO: Given interp_main, it may be possible to kill this ref */ - PyInterpreterState *autoInterpreterState; -}; - -/* Runtime audit hook state */ - -typedef struct _Py_AuditHookEntry { - struct _Py_AuditHookEntry *next; - Py_AuditHookFunction hookCFunction; - void *userData; -} _Py_AuditHookEntry; - -/* Full Python runtime state */ - -/* _PyRuntimeState holds the global state for the CPython runtime. - That data is exposed in the internal API as a static variable (_PyRuntime). - */ -typedef struct pyruntimestate { - /* Has been initialized to a safe state. - - In order to be effective, this must be set to 0 during or right - after allocation. */ - int _initialized; - - /* Is running Py_PreInitialize()? */ - int preinitializing; - - /* Is Python preinitialized? Set to 1 by Py_PreInitialize() */ - int preinitialized; - - /* Is Python core initialized? Set to 1 by _Py_InitializeCore() */ - int core_initialized; - - /* Is Python fully initialized? Set to 1 by Py_Initialize() */ - int initialized; - - /* Set by Py_FinalizeEx(). Only reset to NULL if Py_Initialize() - is called again. - - Use _PyRuntimeState_GetFinalizing() and _PyRuntimeState_SetFinalizing() - to access it, don't access it directly. */ - _Py_atomic_address _finalizing; - - struct pyinterpreters { - PyThread_type_lock mutex; - /* The linked list of interpreters, newest first. */ - PyInterpreterState *head; - /* The runtime's initial interpreter, which has a special role - in the operation of the runtime. It is also often the only - interpreter. */ - PyInterpreterState *main; - /* next_id is an auto-numbered sequence of small - integers. It gets initialized in _PyInterpreterState_Enable(), - which is called in Py_Initialize(), and used in - PyInterpreterState_New(). A negative interpreter ID - indicates an error occurred. The main interpreter will - always have an ID of 0. Overflow results in a RuntimeError. - If that becomes a problem later then we can adjust, e.g. by - using a Python int. */ - int64_t next_id; - } interpreters; - - unsigned long main_thread; - - /* ---------- IMPORTANT --------------------------- - The fields above this line are declared as early as - possible to facilitate out-of-process observability - tools. */ - - // XXX Remove this field once we have a tp_* slot. - struct _xidregistry xidregistry; - - struct _pymem_allocators allocators; - struct _obmalloc_global_state obmalloc; - struct pyhash_runtime_state pyhash_state; - struct _time_runtime_state time; - struct _pythread_runtime_state threads; - struct _signals_runtime_state signals; - - /* Used for the thread state bound to the current thread. */ - Py_tss_t autoTSSkey; - - /* Used instead of PyThreadState.trash when there is not current tstate. */ - Py_tss_t trashTSSkey; - - PyWideStringList orig_argv; - - struct _parser_runtime_state parser; - - struct _atexit_runtime_state atexit; - - struct _import_runtime_state imports; - struct _ceval_runtime_state ceval; - struct _gilstate_runtime_state gilstate; - struct _getargs_runtime_state getargs; - struct _fileutils_state fileutils; - struct _faulthandler_runtime_state faulthandler; - struct _tracemalloc_runtime_state tracemalloc; - - PyPreConfig preconfig; - - // Audit values must be preserved when Py_Initialize()/Py_Finalize() - // is called multiple times. - Py_OpenCodeHookFunction open_code_hook; - void *open_code_userdata; - struct { - PyThread_type_lock mutex; - _Py_AuditHookEntry *head; - } audit_hooks; - - struct _py_object_runtime_state object_state; - struct _Py_float_runtime_state float_state; - struct _Py_unicode_runtime_state unicode_state; - struct _types_runtime_state types; - - /* All the objects that are shared by the runtime's interpreters. */ - struct _Py_static_objects static_objects; - struct _Py_cached_objects cached_objects; - - /* The ID of the OS thread in which we are finalizing. - We use _Py_atomic_address instead of adding a new _Py_atomic_ulong. */ - _Py_atomic_address _finalizing_id; - /* The value to use for sys.path[0] in new subinterpreters. - Normally this would be part of the PyConfig struct. However, - we cannot add it there in 3.12 since that's an ABI change. */ - wchar_t *sys_path_0; - - /* The following fields are here to avoid allocation during init. - The data is exposed through _PyRuntimeState pointer fields. - These fields should not be accessed directly outside of init. - - All other _PyRuntimeState pointer fields are populated when - needed and default to NULL. - - For now there are some exceptions to that rule, which require - allocation during init. These will be addressed on a case-by-case - basis. Most notably, we don't pre-allocated the several mutex - (PyThread_type_lock) fields, because on Windows we only ever get - a pointer type. - */ - - /* PyInterpreterState.interpreters.main */ - PyInterpreterState _main_interpreter; -} _PyRuntimeState; - - -/* other API */ - -PyAPI_DATA(_PyRuntimeState) _PyRuntime; - -PyAPI_FUNC(PyStatus) _PyRuntimeState_Init(_PyRuntimeState *runtime); -PyAPI_FUNC(void) _PyRuntimeState_Fini(_PyRuntimeState *runtime); - -#ifdef HAVE_FORK -extern PyStatus _PyRuntimeState_ReInitThreads(_PyRuntimeState *runtime); -#endif - -/* Initialize _PyRuntimeState. - Return NULL on success, or return an error message on failure. */ -PyAPI_FUNC(PyStatus) _PyRuntime_Initialize(void); - -PyAPI_FUNC(void) _PyRuntime_Finalize(void); - - -static inline PyThreadState* -_PyRuntimeState_GetFinalizing(_PyRuntimeState *runtime) { - return (PyThreadState*)_Py_atomic_load_relaxed(&runtime->_finalizing); -} - -static inline unsigned long -_PyRuntimeState_GetFinalizingID(_PyRuntimeState *runtime) { - return (unsigned long)_Py_atomic_load_relaxed(&runtime->_finalizing_id); -} - -static inline void -_PyRuntimeState_SetFinalizing(_PyRuntimeState *runtime, PyThreadState *tstate) { - _Py_atomic_store_relaxed(&runtime->_finalizing, (uintptr_t)tstate); - if (tstate == NULL) { - _Py_atomic_store_relaxed(&runtime->_finalizing_id, 0); - } - else { - // XXX Re-enable this assert once gh-109860 is fixed. - //assert(tstate->thread_id == PyThread_get_thread_ident()); - _Py_atomic_store_relaxed(&runtime->_finalizing_id, - (uintptr_t)tstate->thread_id); - } -} - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_RUNTIME_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_runtime_init.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_runtime_init.h deleted file mode 100644 index e5f9e17..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_runtime_init.h +++ /dev/null @@ -1,195 +0,0 @@ -#ifndef Py_INTERNAL_RUNTIME_INIT_H -#define Py_INTERNAL_RUNTIME_INIT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_long.h" -#include "pycore_object.h" -#include "pycore_parser.h" -#include "pycore_pymem_init.h" -#include "pycore_obmalloc_init.h" - - -extern PyTypeObject _PyExc_MemoryError; - - -/* The static initializers defined here should only be used - in the runtime init code (in pystate.c and pylifecycle.c). */ - - -#define _PyRuntimeState_INIT(runtime) \ - { \ - .allocators = { \ - .standard = _pymem_allocators_standard_INIT(runtime), \ - .debug = _pymem_allocators_debug_INIT, \ - .obj_arena = _pymem_allocators_obj_arena_INIT, \ - }, \ - .obmalloc = _obmalloc_global_state_INIT, \ - .pyhash_state = pyhash_state_INIT, \ - .signals = _signals_RUNTIME_INIT, \ - .interpreters = { \ - /* This prevents interpreters from getting created \ - until _PyInterpreterState_Enable() is called. */ \ - .next_id = -1, \ - }, \ - /* A TSS key must be initialized with Py_tss_NEEDS_INIT \ - in accordance with the specification. */ \ - .autoTSSkey = Py_tss_NEEDS_INIT, \ - .parser = _parser_runtime_state_INIT, \ - .ceval = { \ - .perf = _PyEval_RUNTIME_PERF_INIT, \ - }, \ - .gilstate = { \ - .check_enabled = 1, \ - }, \ - .fileutils = { \ - .force_ascii = -1, \ - }, \ - .faulthandler = _faulthandler_runtime_state_INIT, \ - .tracemalloc = _tracemalloc_runtime_state_INIT, \ - .float_state = { \ - .float_format = _py_float_format_unknown, \ - .double_format = _py_float_format_unknown, \ - }, \ - .types = { \ - .next_version_tag = 1, \ - }, \ - .static_objects = { \ - .singletons = { \ - .small_ints = _Py_small_ints_INIT, \ - .bytes_empty = _PyBytes_SIMPLE_INIT(0, 0), \ - .bytes_characters = _Py_bytes_characters_INIT, \ - .strings = { \ - .literals = _Py_str_literals_INIT, \ - .identifiers = _Py_str_identifiers_INIT, \ - .ascii = _Py_str_ascii_INIT, \ - .latin1 = _Py_str_latin1_INIT, \ - }, \ - .tuple_empty = { \ - .ob_base = _PyVarObject_HEAD_INIT(&PyTuple_Type, 0) \ - }, \ - .hamt_bitmap_node_empty = { \ - .ob_base = _PyVarObject_HEAD_INIT(&_PyHamt_BitmapNode_Type, 0) \ - }, \ - .context_token_missing = { \ - .ob_base = _PyObject_HEAD_INIT(&_PyContextTokenMissing_Type) \ - }, \ - }, \ - }, \ - ._main_interpreter = _PyInterpreterState_INIT(runtime._main_interpreter), \ - } - -#define _PyInterpreterState_INIT(INTERP) \ - { \ - .id_refcount = -1, \ - .imports = IMPORTS_INIT, \ - .obmalloc = _obmalloc_state_INIT(INTERP.obmalloc), \ - .ceval = { \ - .recursion_limit = Py_DEFAULT_RECURSION_LIMIT, \ - }, \ - .gc = { \ - .enabled = 1, \ - .generations = { \ - /* .head is set in _PyGC_InitState(). */ \ - { .threshold = 700, }, \ - { .threshold = 10, }, \ - { .threshold = 10, }, \ - }, \ - }, \ - .object_state = _py_object_state_INIT(INTERP), \ - .dtoa = _dtoa_state_INIT(&(INTERP)), \ - .dict_state = _dict_state_INIT, \ - .func_state = { \ - .next_version = 1, \ - }, \ - .types = { \ - .next_version_tag = _Py_TYPE_BASE_VERSION_TAG, \ - }, \ - .static_objects = { \ - .singletons = { \ - ._not_used = 1, \ - .hamt_empty = { \ - .ob_base = _PyObject_HEAD_INIT(&_PyHamt_Type) \ - .h_root = (PyHamtNode*)&_Py_SINGLETON(hamt_bitmap_node_empty), \ - }, \ - .last_resort_memory_error = { \ - _PyObject_HEAD_INIT(&_PyExc_MemoryError) \ - .args = (PyObject*)&_Py_SINGLETON(tuple_empty) \ - }, \ - }, \ - }, \ - ._initial_thread = _PyThreadState_INIT, \ - } - -#define _PyThreadState_INIT \ - { \ - .py_recursion_limit = Py_DEFAULT_RECURSION_LIMIT, \ - .context_ver = 1, \ - } - -#ifdef Py_TRACE_REFS -# define _py_object_state_INIT(INTERP) \ - { \ - .refchain = {&INTERP.object_state.refchain, &INTERP.object_state.refchain}, \ - } -#else -# define _py_object_state_INIT(INTERP) \ - { 0 } -#endif - - -// global objects - -#define _PyBytes_SIMPLE_INIT(CH, LEN) \ - { \ - _PyVarObject_HEAD_INIT(&PyBytes_Type, (LEN)) \ - .ob_shash = -1, \ - .ob_sval = { (CH) }, \ - } -#define _PyBytes_CHAR_INIT(CH) \ - { \ - _PyBytes_SIMPLE_INIT((CH), 1) \ - } - -#define _PyUnicode_ASCII_BASE_INIT(LITERAL, ASCII) \ - { \ - .ob_base = _PyObject_HEAD_INIT(&PyUnicode_Type) \ - .length = sizeof(LITERAL) - 1, \ - .hash = -1, \ - .state = { \ - .kind = 1, \ - .compact = 1, \ - .ascii = (ASCII), \ - .statically_allocated = 1, \ - }, \ - } -#define _PyASCIIObject_INIT(LITERAL) \ - { \ - ._ascii = _PyUnicode_ASCII_BASE_INIT((LITERAL), 1), \ - ._data = (LITERAL) \ - } -#define INIT_STR(NAME, LITERAL) \ - ._py_ ## NAME = _PyASCIIObject_INIT(LITERAL) -#define INIT_ID(NAME) \ - ._py_ ## NAME = _PyASCIIObject_INIT(#NAME) -#define _PyUnicode_LATIN1_INIT(LITERAL, UTF8) \ - { \ - ._latin1 = { \ - ._base = _PyUnicode_ASCII_BASE_INIT((LITERAL), 0), \ - .utf8 = (UTF8), \ - .utf8_length = sizeof(UTF8) - 1, \ - }, \ - ._data = (LITERAL), \ - } - -#include "pycore_runtime_init_generated.h" - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_RUNTIME_INIT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_runtime_init_generated.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_runtime_init_generated.h deleted file mode 100644 index 07f237b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_runtime_init_generated.h +++ /dev/null @@ -1,1525 +0,0 @@ -#ifndef Py_INTERNAL_RUNTIME_INIT_GENERATED_H -#define Py_INTERNAL_RUNTIME_INIT_GENERATED_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* The following is auto-generated by Tools/build/generate_global_objects.py. */ -#define _Py_small_ints_INIT { \ - _PyLong_DIGIT_INIT(-5), \ - _PyLong_DIGIT_INIT(-4), \ - _PyLong_DIGIT_INIT(-3), \ - _PyLong_DIGIT_INIT(-2), \ - _PyLong_DIGIT_INIT(-1), \ - _PyLong_DIGIT_INIT(0), \ - _PyLong_DIGIT_INIT(1), \ - _PyLong_DIGIT_INIT(2), \ - _PyLong_DIGIT_INIT(3), \ - _PyLong_DIGIT_INIT(4), \ - _PyLong_DIGIT_INIT(5), \ - _PyLong_DIGIT_INIT(6), \ - _PyLong_DIGIT_INIT(7), \ - _PyLong_DIGIT_INIT(8), \ - _PyLong_DIGIT_INIT(9), \ - _PyLong_DIGIT_INIT(10), \ - _PyLong_DIGIT_INIT(11), \ - _PyLong_DIGIT_INIT(12), \ - _PyLong_DIGIT_INIT(13), \ - _PyLong_DIGIT_INIT(14), \ - _PyLong_DIGIT_INIT(15), \ - _PyLong_DIGIT_INIT(16), \ - _PyLong_DIGIT_INIT(17), \ - _PyLong_DIGIT_INIT(18), \ - _PyLong_DIGIT_INIT(19), \ - _PyLong_DIGIT_INIT(20), \ - _PyLong_DIGIT_INIT(21), \ - _PyLong_DIGIT_INIT(22), \ - _PyLong_DIGIT_INIT(23), \ - _PyLong_DIGIT_INIT(24), \ - _PyLong_DIGIT_INIT(25), \ - _PyLong_DIGIT_INIT(26), \ - _PyLong_DIGIT_INIT(27), \ - _PyLong_DIGIT_INIT(28), \ - _PyLong_DIGIT_INIT(29), \ - _PyLong_DIGIT_INIT(30), \ - _PyLong_DIGIT_INIT(31), \ - _PyLong_DIGIT_INIT(32), \ - _PyLong_DIGIT_INIT(33), \ - _PyLong_DIGIT_INIT(34), \ - _PyLong_DIGIT_INIT(35), \ - _PyLong_DIGIT_INIT(36), \ - _PyLong_DIGIT_INIT(37), \ - _PyLong_DIGIT_INIT(38), \ - _PyLong_DIGIT_INIT(39), \ - _PyLong_DIGIT_INIT(40), \ - _PyLong_DIGIT_INIT(41), \ - _PyLong_DIGIT_INIT(42), \ - _PyLong_DIGIT_INIT(43), \ - _PyLong_DIGIT_INIT(44), \ - _PyLong_DIGIT_INIT(45), \ - _PyLong_DIGIT_INIT(46), \ - _PyLong_DIGIT_INIT(47), \ - _PyLong_DIGIT_INIT(48), \ - _PyLong_DIGIT_INIT(49), \ - _PyLong_DIGIT_INIT(50), \ - _PyLong_DIGIT_INIT(51), \ - _PyLong_DIGIT_INIT(52), \ - _PyLong_DIGIT_INIT(53), \ - _PyLong_DIGIT_INIT(54), \ - _PyLong_DIGIT_INIT(55), \ - _PyLong_DIGIT_INIT(56), \ - _PyLong_DIGIT_INIT(57), \ - _PyLong_DIGIT_INIT(58), \ - _PyLong_DIGIT_INIT(59), \ - _PyLong_DIGIT_INIT(60), \ - _PyLong_DIGIT_INIT(61), \ - _PyLong_DIGIT_INIT(62), \ - _PyLong_DIGIT_INIT(63), \ - _PyLong_DIGIT_INIT(64), \ - _PyLong_DIGIT_INIT(65), \ - _PyLong_DIGIT_INIT(66), \ - _PyLong_DIGIT_INIT(67), \ - _PyLong_DIGIT_INIT(68), \ - _PyLong_DIGIT_INIT(69), \ - _PyLong_DIGIT_INIT(70), \ - _PyLong_DIGIT_INIT(71), \ - _PyLong_DIGIT_INIT(72), \ - _PyLong_DIGIT_INIT(73), \ - _PyLong_DIGIT_INIT(74), \ - _PyLong_DIGIT_INIT(75), \ - _PyLong_DIGIT_INIT(76), \ - _PyLong_DIGIT_INIT(77), \ - _PyLong_DIGIT_INIT(78), \ - _PyLong_DIGIT_INIT(79), \ - _PyLong_DIGIT_INIT(80), \ - _PyLong_DIGIT_INIT(81), \ - _PyLong_DIGIT_INIT(82), \ - _PyLong_DIGIT_INIT(83), \ - _PyLong_DIGIT_INIT(84), \ - _PyLong_DIGIT_INIT(85), \ - _PyLong_DIGIT_INIT(86), \ - _PyLong_DIGIT_INIT(87), \ - _PyLong_DIGIT_INIT(88), \ - _PyLong_DIGIT_INIT(89), \ - _PyLong_DIGIT_INIT(90), \ - _PyLong_DIGIT_INIT(91), \ - _PyLong_DIGIT_INIT(92), \ - _PyLong_DIGIT_INIT(93), \ - _PyLong_DIGIT_INIT(94), \ - _PyLong_DIGIT_INIT(95), \ - _PyLong_DIGIT_INIT(96), \ - _PyLong_DIGIT_INIT(97), \ - _PyLong_DIGIT_INIT(98), \ - _PyLong_DIGIT_INIT(99), \ - _PyLong_DIGIT_INIT(100), \ - _PyLong_DIGIT_INIT(101), \ - _PyLong_DIGIT_INIT(102), \ - _PyLong_DIGIT_INIT(103), \ - _PyLong_DIGIT_INIT(104), \ - _PyLong_DIGIT_INIT(105), \ - _PyLong_DIGIT_INIT(106), \ - _PyLong_DIGIT_INIT(107), \ - _PyLong_DIGIT_INIT(108), \ - _PyLong_DIGIT_INIT(109), \ - _PyLong_DIGIT_INIT(110), \ - _PyLong_DIGIT_INIT(111), \ - _PyLong_DIGIT_INIT(112), \ - _PyLong_DIGIT_INIT(113), \ - _PyLong_DIGIT_INIT(114), \ - _PyLong_DIGIT_INIT(115), \ - _PyLong_DIGIT_INIT(116), \ - _PyLong_DIGIT_INIT(117), \ - _PyLong_DIGIT_INIT(118), \ - _PyLong_DIGIT_INIT(119), \ - _PyLong_DIGIT_INIT(120), \ - _PyLong_DIGIT_INIT(121), \ - _PyLong_DIGIT_INIT(122), \ - _PyLong_DIGIT_INIT(123), \ - _PyLong_DIGIT_INIT(124), \ - _PyLong_DIGIT_INIT(125), \ - _PyLong_DIGIT_INIT(126), \ - _PyLong_DIGIT_INIT(127), \ - _PyLong_DIGIT_INIT(128), \ - _PyLong_DIGIT_INIT(129), \ - _PyLong_DIGIT_INIT(130), \ - _PyLong_DIGIT_INIT(131), \ - _PyLong_DIGIT_INIT(132), \ - _PyLong_DIGIT_INIT(133), \ - _PyLong_DIGIT_INIT(134), \ - _PyLong_DIGIT_INIT(135), \ - _PyLong_DIGIT_INIT(136), \ - _PyLong_DIGIT_INIT(137), \ - _PyLong_DIGIT_INIT(138), \ - _PyLong_DIGIT_INIT(139), \ - _PyLong_DIGIT_INIT(140), \ - _PyLong_DIGIT_INIT(141), \ - _PyLong_DIGIT_INIT(142), \ - _PyLong_DIGIT_INIT(143), \ - _PyLong_DIGIT_INIT(144), \ - _PyLong_DIGIT_INIT(145), \ - _PyLong_DIGIT_INIT(146), \ - _PyLong_DIGIT_INIT(147), \ - _PyLong_DIGIT_INIT(148), \ - _PyLong_DIGIT_INIT(149), \ - _PyLong_DIGIT_INIT(150), \ - _PyLong_DIGIT_INIT(151), \ - _PyLong_DIGIT_INIT(152), \ - _PyLong_DIGIT_INIT(153), \ - _PyLong_DIGIT_INIT(154), \ - _PyLong_DIGIT_INIT(155), \ - _PyLong_DIGIT_INIT(156), \ - _PyLong_DIGIT_INIT(157), \ - _PyLong_DIGIT_INIT(158), \ - _PyLong_DIGIT_INIT(159), \ - _PyLong_DIGIT_INIT(160), \ - _PyLong_DIGIT_INIT(161), \ - _PyLong_DIGIT_INIT(162), \ - _PyLong_DIGIT_INIT(163), \ - _PyLong_DIGIT_INIT(164), \ - _PyLong_DIGIT_INIT(165), \ - _PyLong_DIGIT_INIT(166), \ - _PyLong_DIGIT_INIT(167), \ - _PyLong_DIGIT_INIT(168), \ - _PyLong_DIGIT_INIT(169), \ - _PyLong_DIGIT_INIT(170), \ - _PyLong_DIGIT_INIT(171), \ - _PyLong_DIGIT_INIT(172), \ - _PyLong_DIGIT_INIT(173), \ - _PyLong_DIGIT_INIT(174), \ - _PyLong_DIGIT_INIT(175), \ - _PyLong_DIGIT_INIT(176), \ - _PyLong_DIGIT_INIT(177), \ - _PyLong_DIGIT_INIT(178), \ - _PyLong_DIGIT_INIT(179), \ - _PyLong_DIGIT_INIT(180), \ - _PyLong_DIGIT_INIT(181), \ - _PyLong_DIGIT_INIT(182), \ - _PyLong_DIGIT_INIT(183), \ - _PyLong_DIGIT_INIT(184), \ - _PyLong_DIGIT_INIT(185), \ - _PyLong_DIGIT_INIT(186), \ - _PyLong_DIGIT_INIT(187), \ - _PyLong_DIGIT_INIT(188), \ - _PyLong_DIGIT_INIT(189), \ - _PyLong_DIGIT_INIT(190), \ - _PyLong_DIGIT_INIT(191), \ - _PyLong_DIGIT_INIT(192), \ - _PyLong_DIGIT_INIT(193), \ - _PyLong_DIGIT_INIT(194), \ - _PyLong_DIGIT_INIT(195), \ - _PyLong_DIGIT_INIT(196), \ - _PyLong_DIGIT_INIT(197), \ - _PyLong_DIGIT_INIT(198), \ - _PyLong_DIGIT_INIT(199), \ - _PyLong_DIGIT_INIT(200), \ - _PyLong_DIGIT_INIT(201), \ - _PyLong_DIGIT_INIT(202), \ - _PyLong_DIGIT_INIT(203), \ - _PyLong_DIGIT_INIT(204), \ - _PyLong_DIGIT_INIT(205), \ - _PyLong_DIGIT_INIT(206), \ - _PyLong_DIGIT_INIT(207), \ - _PyLong_DIGIT_INIT(208), \ - _PyLong_DIGIT_INIT(209), \ - _PyLong_DIGIT_INIT(210), \ - _PyLong_DIGIT_INIT(211), \ - _PyLong_DIGIT_INIT(212), \ - _PyLong_DIGIT_INIT(213), \ - _PyLong_DIGIT_INIT(214), \ - _PyLong_DIGIT_INIT(215), \ - _PyLong_DIGIT_INIT(216), \ - _PyLong_DIGIT_INIT(217), \ - _PyLong_DIGIT_INIT(218), \ - _PyLong_DIGIT_INIT(219), \ - _PyLong_DIGIT_INIT(220), \ - _PyLong_DIGIT_INIT(221), \ - _PyLong_DIGIT_INIT(222), \ - _PyLong_DIGIT_INIT(223), \ - _PyLong_DIGIT_INIT(224), \ - _PyLong_DIGIT_INIT(225), \ - _PyLong_DIGIT_INIT(226), \ - _PyLong_DIGIT_INIT(227), \ - _PyLong_DIGIT_INIT(228), \ - _PyLong_DIGIT_INIT(229), \ - _PyLong_DIGIT_INIT(230), \ - _PyLong_DIGIT_INIT(231), \ - _PyLong_DIGIT_INIT(232), \ - _PyLong_DIGIT_INIT(233), \ - _PyLong_DIGIT_INIT(234), \ - _PyLong_DIGIT_INIT(235), \ - _PyLong_DIGIT_INIT(236), \ - _PyLong_DIGIT_INIT(237), \ - _PyLong_DIGIT_INIT(238), \ - _PyLong_DIGIT_INIT(239), \ - _PyLong_DIGIT_INIT(240), \ - _PyLong_DIGIT_INIT(241), \ - _PyLong_DIGIT_INIT(242), \ - _PyLong_DIGIT_INIT(243), \ - _PyLong_DIGIT_INIT(244), \ - _PyLong_DIGIT_INIT(245), \ - _PyLong_DIGIT_INIT(246), \ - _PyLong_DIGIT_INIT(247), \ - _PyLong_DIGIT_INIT(248), \ - _PyLong_DIGIT_INIT(249), \ - _PyLong_DIGIT_INIT(250), \ - _PyLong_DIGIT_INIT(251), \ - _PyLong_DIGIT_INIT(252), \ - _PyLong_DIGIT_INIT(253), \ - _PyLong_DIGIT_INIT(254), \ - _PyLong_DIGIT_INIT(255), \ - _PyLong_DIGIT_INIT(256), \ -} - -#define _Py_bytes_characters_INIT { \ - _PyBytes_CHAR_INIT(0), \ - _PyBytes_CHAR_INIT(1), \ - _PyBytes_CHAR_INIT(2), \ - _PyBytes_CHAR_INIT(3), \ - _PyBytes_CHAR_INIT(4), \ - _PyBytes_CHAR_INIT(5), \ - _PyBytes_CHAR_INIT(6), \ - _PyBytes_CHAR_INIT(7), \ - _PyBytes_CHAR_INIT(8), \ - _PyBytes_CHAR_INIT(9), \ - _PyBytes_CHAR_INIT(10), \ - _PyBytes_CHAR_INIT(11), \ - _PyBytes_CHAR_INIT(12), \ - _PyBytes_CHAR_INIT(13), \ - _PyBytes_CHAR_INIT(14), \ - _PyBytes_CHAR_INIT(15), \ - _PyBytes_CHAR_INIT(16), \ - _PyBytes_CHAR_INIT(17), \ - _PyBytes_CHAR_INIT(18), \ - _PyBytes_CHAR_INIT(19), \ - _PyBytes_CHAR_INIT(20), \ - _PyBytes_CHAR_INIT(21), \ - _PyBytes_CHAR_INIT(22), \ - _PyBytes_CHAR_INIT(23), \ - _PyBytes_CHAR_INIT(24), \ - _PyBytes_CHAR_INIT(25), \ - _PyBytes_CHAR_INIT(26), \ - _PyBytes_CHAR_INIT(27), \ - _PyBytes_CHAR_INIT(28), \ - _PyBytes_CHAR_INIT(29), \ - _PyBytes_CHAR_INIT(30), \ - _PyBytes_CHAR_INIT(31), \ - _PyBytes_CHAR_INIT(32), \ - _PyBytes_CHAR_INIT(33), \ - _PyBytes_CHAR_INIT(34), \ - _PyBytes_CHAR_INIT(35), \ - _PyBytes_CHAR_INIT(36), \ - _PyBytes_CHAR_INIT(37), \ - _PyBytes_CHAR_INIT(38), \ - _PyBytes_CHAR_INIT(39), \ - _PyBytes_CHAR_INIT(40), \ - _PyBytes_CHAR_INIT(41), \ - _PyBytes_CHAR_INIT(42), \ - _PyBytes_CHAR_INIT(43), \ - _PyBytes_CHAR_INIT(44), \ - _PyBytes_CHAR_INIT(45), \ - _PyBytes_CHAR_INIT(46), \ - _PyBytes_CHAR_INIT(47), \ - _PyBytes_CHAR_INIT(48), \ - _PyBytes_CHAR_INIT(49), \ - _PyBytes_CHAR_INIT(50), \ - _PyBytes_CHAR_INIT(51), \ - _PyBytes_CHAR_INIT(52), \ - _PyBytes_CHAR_INIT(53), \ - _PyBytes_CHAR_INIT(54), \ - _PyBytes_CHAR_INIT(55), \ - _PyBytes_CHAR_INIT(56), \ - _PyBytes_CHAR_INIT(57), \ - _PyBytes_CHAR_INIT(58), \ - _PyBytes_CHAR_INIT(59), \ - _PyBytes_CHAR_INIT(60), \ - _PyBytes_CHAR_INIT(61), \ - _PyBytes_CHAR_INIT(62), \ - _PyBytes_CHAR_INIT(63), \ - _PyBytes_CHAR_INIT(64), \ - _PyBytes_CHAR_INIT(65), \ - _PyBytes_CHAR_INIT(66), \ - _PyBytes_CHAR_INIT(67), \ - _PyBytes_CHAR_INIT(68), \ - _PyBytes_CHAR_INIT(69), \ - _PyBytes_CHAR_INIT(70), \ - _PyBytes_CHAR_INIT(71), \ - _PyBytes_CHAR_INIT(72), \ - _PyBytes_CHAR_INIT(73), \ - _PyBytes_CHAR_INIT(74), \ - _PyBytes_CHAR_INIT(75), \ - _PyBytes_CHAR_INIT(76), \ - _PyBytes_CHAR_INIT(77), \ - _PyBytes_CHAR_INIT(78), \ - _PyBytes_CHAR_INIT(79), \ - _PyBytes_CHAR_INIT(80), \ - _PyBytes_CHAR_INIT(81), \ - _PyBytes_CHAR_INIT(82), \ - _PyBytes_CHAR_INIT(83), \ - _PyBytes_CHAR_INIT(84), \ - _PyBytes_CHAR_INIT(85), \ - _PyBytes_CHAR_INIT(86), \ - _PyBytes_CHAR_INIT(87), \ - _PyBytes_CHAR_INIT(88), \ - _PyBytes_CHAR_INIT(89), \ - _PyBytes_CHAR_INIT(90), \ - _PyBytes_CHAR_INIT(91), \ - _PyBytes_CHAR_INIT(92), \ - _PyBytes_CHAR_INIT(93), \ - _PyBytes_CHAR_INIT(94), \ - _PyBytes_CHAR_INIT(95), \ - _PyBytes_CHAR_INIT(96), \ - _PyBytes_CHAR_INIT(97), \ - _PyBytes_CHAR_INIT(98), \ - _PyBytes_CHAR_INIT(99), \ - _PyBytes_CHAR_INIT(100), \ - _PyBytes_CHAR_INIT(101), \ - _PyBytes_CHAR_INIT(102), \ - _PyBytes_CHAR_INIT(103), \ - _PyBytes_CHAR_INIT(104), \ - _PyBytes_CHAR_INIT(105), \ - _PyBytes_CHAR_INIT(106), \ - _PyBytes_CHAR_INIT(107), \ - _PyBytes_CHAR_INIT(108), \ - _PyBytes_CHAR_INIT(109), \ - _PyBytes_CHAR_INIT(110), \ - _PyBytes_CHAR_INIT(111), \ - _PyBytes_CHAR_INIT(112), \ - _PyBytes_CHAR_INIT(113), \ - _PyBytes_CHAR_INIT(114), \ - _PyBytes_CHAR_INIT(115), \ - _PyBytes_CHAR_INIT(116), \ - _PyBytes_CHAR_INIT(117), \ - _PyBytes_CHAR_INIT(118), \ - _PyBytes_CHAR_INIT(119), \ - _PyBytes_CHAR_INIT(120), \ - _PyBytes_CHAR_INIT(121), \ - _PyBytes_CHAR_INIT(122), \ - _PyBytes_CHAR_INIT(123), \ - _PyBytes_CHAR_INIT(124), \ - _PyBytes_CHAR_INIT(125), \ - _PyBytes_CHAR_INIT(126), \ - _PyBytes_CHAR_INIT(127), \ - _PyBytes_CHAR_INIT(128), \ - _PyBytes_CHAR_INIT(129), \ - _PyBytes_CHAR_INIT(130), \ - _PyBytes_CHAR_INIT(131), \ - _PyBytes_CHAR_INIT(132), \ - _PyBytes_CHAR_INIT(133), \ - _PyBytes_CHAR_INIT(134), \ - _PyBytes_CHAR_INIT(135), \ - _PyBytes_CHAR_INIT(136), \ - _PyBytes_CHAR_INIT(137), \ - _PyBytes_CHAR_INIT(138), \ - _PyBytes_CHAR_INIT(139), \ - _PyBytes_CHAR_INIT(140), \ - _PyBytes_CHAR_INIT(141), \ - _PyBytes_CHAR_INIT(142), \ - _PyBytes_CHAR_INIT(143), \ - _PyBytes_CHAR_INIT(144), \ - _PyBytes_CHAR_INIT(145), \ - _PyBytes_CHAR_INIT(146), \ - _PyBytes_CHAR_INIT(147), \ - _PyBytes_CHAR_INIT(148), \ - _PyBytes_CHAR_INIT(149), \ - _PyBytes_CHAR_INIT(150), \ - _PyBytes_CHAR_INIT(151), \ - _PyBytes_CHAR_INIT(152), \ - _PyBytes_CHAR_INIT(153), \ - _PyBytes_CHAR_INIT(154), \ - _PyBytes_CHAR_INIT(155), \ - _PyBytes_CHAR_INIT(156), \ - _PyBytes_CHAR_INIT(157), \ - _PyBytes_CHAR_INIT(158), \ - _PyBytes_CHAR_INIT(159), \ - _PyBytes_CHAR_INIT(160), \ - _PyBytes_CHAR_INIT(161), \ - _PyBytes_CHAR_INIT(162), \ - _PyBytes_CHAR_INIT(163), \ - _PyBytes_CHAR_INIT(164), \ - _PyBytes_CHAR_INIT(165), \ - _PyBytes_CHAR_INIT(166), \ - _PyBytes_CHAR_INIT(167), \ - _PyBytes_CHAR_INIT(168), \ - _PyBytes_CHAR_INIT(169), \ - _PyBytes_CHAR_INIT(170), \ - _PyBytes_CHAR_INIT(171), \ - _PyBytes_CHAR_INIT(172), \ - _PyBytes_CHAR_INIT(173), \ - _PyBytes_CHAR_INIT(174), \ - _PyBytes_CHAR_INIT(175), \ - _PyBytes_CHAR_INIT(176), \ - _PyBytes_CHAR_INIT(177), \ - _PyBytes_CHAR_INIT(178), \ - _PyBytes_CHAR_INIT(179), \ - _PyBytes_CHAR_INIT(180), \ - _PyBytes_CHAR_INIT(181), \ - _PyBytes_CHAR_INIT(182), \ - _PyBytes_CHAR_INIT(183), \ - _PyBytes_CHAR_INIT(184), \ - _PyBytes_CHAR_INIT(185), \ - _PyBytes_CHAR_INIT(186), \ - _PyBytes_CHAR_INIT(187), \ - _PyBytes_CHAR_INIT(188), \ - _PyBytes_CHAR_INIT(189), \ - _PyBytes_CHAR_INIT(190), \ - _PyBytes_CHAR_INIT(191), \ - _PyBytes_CHAR_INIT(192), \ - _PyBytes_CHAR_INIT(193), \ - _PyBytes_CHAR_INIT(194), \ - _PyBytes_CHAR_INIT(195), \ - _PyBytes_CHAR_INIT(196), \ - _PyBytes_CHAR_INIT(197), \ - _PyBytes_CHAR_INIT(198), \ - _PyBytes_CHAR_INIT(199), \ - _PyBytes_CHAR_INIT(200), \ - _PyBytes_CHAR_INIT(201), \ - _PyBytes_CHAR_INIT(202), \ - _PyBytes_CHAR_INIT(203), \ - _PyBytes_CHAR_INIT(204), \ - _PyBytes_CHAR_INIT(205), \ - _PyBytes_CHAR_INIT(206), \ - _PyBytes_CHAR_INIT(207), \ - _PyBytes_CHAR_INIT(208), \ - _PyBytes_CHAR_INIT(209), \ - _PyBytes_CHAR_INIT(210), \ - _PyBytes_CHAR_INIT(211), \ - _PyBytes_CHAR_INIT(212), \ - _PyBytes_CHAR_INIT(213), \ - _PyBytes_CHAR_INIT(214), \ - _PyBytes_CHAR_INIT(215), \ - _PyBytes_CHAR_INIT(216), \ - _PyBytes_CHAR_INIT(217), \ - _PyBytes_CHAR_INIT(218), \ - _PyBytes_CHAR_INIT(219), \ - _PyBytes_CHAR_INIT(220), \ - _PyBytes_CHAR_INIT(221), \ - _PyBytes_CHAR_INIT(222), \ - _PyBytes_CHAR_INIT(223), \ - _PyBytes_CHAR_INIT(224), \ - _PyBytes_CHAR_INIT(225), \ - _PyBytes_CHAR_INIT(226), \ - _PyBytes_CHAR_INIT(227), \ - _PyBytes_CHAR_INIT(228), \ - _PyBytes_CHAR_INIT(229), \ - _PyBytes_CHAR_INIT(230), \ - _PyBytes_CHAR_INIT(231), \ - _PyBytes_CHAR_INIT(232), \ - _PyBytes_CHAR_INIT(233), \ - _PyBytes_CHAR_INIT(234), \ - _PyBytes_CHAR_INIT(235), \ - _PyBytes_CHAR_INIT(236), \ - _PyBytes_CHAR_INIT(237), \ - _PyBytes_CHAR_INIT(238), \ - _PyBytes_CHAR_INIT(239), \ - _PyBytes_CHAR_INIT(240), \ - _PyBytes_CHAR_INIT(241), \ - _PyBytes_CHAR_INIT(242), \ - _PyBytes_CHAR_INIT(243), \ - _PyBytes_CHAR_INIT(244), \ - _PyBytes_CHAR_INIT(245), \ - _PyBytes_CHAR_INIT(246), \ - _PyBytes_CHAR_INIT(247), \ - _PyBytes_CHAR_INIT(248), \ - _PyBytes_CHAR_INIT(249), \ - _PyBytes_CHAR_INIT(250), \ - _PyBytes_CHAR_INIT(251), \ - _PyBytes_CHAR_INIT(252), \ - _PyBytes_CHAR_INIT(253), \ - _PyBytes_CHAR_INIT(254), \ - _PyBytes_CHAR_INIT(255), \ -} - -#define _Py_str_literals_INIT { \ - INIT_STR(anon_dictcomp, ""), \ - INIT_STR(anon_genexpr, ""), \ - INIT_STR(anon_lambda, ""), \ - INIT_STR(anon_listcomp, ""), \ - INIT_STR(anon_module, ""), \ - INIT_STR(anon_setcomp, ""), \ - INIT_STR(anon_string, ""), \ - INIT_STR(anon_unknown, ""), \ - INIT_STR(close_br, "}"), \ - INIT_STR(dbl_close_br, "}}"), \ - INIT_STR(dbl_open_br, "{{"), \ - INIT_STR(dbl_percent, "%%"), \ - INIT_STR(defaults, ".defaults"), \ - INIT_STR(dot, "."), \ - INIT_STR(dot_locals, "."), \ - INIT_STR(empty, ""), \ - INIT_STR(generic_base, ".generic_base"), \ - INIT_STR(json_decoder, "json.decoder"), \ - INIT_STR(kwdefaults, ".kwdefaults"), \ - INIT_STR(list_err, "list index out of range"), \ - INIT_STR(newline, "\n"), \ - INIT_STR(open_br, "{"), \ - INIT_STR(percent, "%"), \ - INIT_STR(shim_name, ""), \ - INIT_STR(type_params, ".type_params"), \ - INIT_STR(utf_8, "utf-8"), \ -} - -#define _Py_str_identifiers_INIT { \ - INIT_ID(CANCELLED), \ - INIT_ID(FINISHED), \ - INIT_ID(False), \ - INIT_ID(JSONDecodeError), \ - INIT_ID(PENDING), \ - INIT_ID(Py_Repr), \ - INIT_ID(TextIOWrapper), \ - INIT_ID(True), \ - INIT_ID(WarningMessage), \ - INIT_ID(_), \ - INIT_ID(_WindowsConsoleIO), \ - INIT_ID(__IOBase_closed), \ - INIT_ID(__abc_tpflags__), \ - INIT_ID(__abs__), \ - INIT_ID(__abstractmethods__), \ - INIT_ID(__add__), \ - INIT_ID(__aenter__), \ - INIT_ID(__aexit__), \ - INIT_ID(__aiter__), \ - INIT_ID(__all__), \ - INIT_ID(__and__), \ - INIT_ID(__anext__), \ - INIT_ID(__annotations__), \ - INIT_ID(__args__), \ - INIT_ID(__asyncio_running_event_loop__), \ - INIT_ID(__await__), \ - INIT_ID(__bases__), \ - INIT_ID(__bool__), \ - INIT_ID(__buffer__), \ - INIT_ID(__build_class__), \ - INIT_ID(__builtins__), \ - INIT_ID(__bytes__), \ - INIT_ID(__call__), \ - INIT_ID(__cantrace__), \ - INIT_ID(__class__), \ - INIT_ID(__class_getitem__), \ - INIT_ID(__classcell__), \ - INIT_ID(__classdict__), \ - INIT_ID(__classdictcell__), \ - INIT_ID(__complex__), \ - INIT_ID(__contains__), \ - INIT_ID(__copy__), \ - INIT_ID(__ctypes_from_outparam__), \ - INIT_ID(__del__), \ - INIT_ID(__delattr__), \ - INIT_ID(__delete__), \ - INIT_ID(__delitem__), \ - INIT_ID(__dict__), \ - INIT_ID(__dictoffset__), \ - INIT_ID(__dir__), \ - INIT_ID(__divmod__), \ - INIT_ID(__doc__), \ - INIT_ID(__enter__), \ - INIT_ID(__eq__), \ - INIT_ID(__exit__), \ - INIT_ID(__file__), \ - INIT_ID(__float__), \ - INIT_ID(__floordiv__), \ - INIT_ID(__format__), \ - INIT_ID(__fspath__), \ - INIT_ID(__ge__), \ - INIT_ID(__get__), \ - INIT_ID(__getattr__), \ - INIT_ID(__getattribute__), \ - INIT_ID(__getinitargs__), \ - INIT_ID(__getitem__), \ - INIT_ID(__getnewargs__), \ - INIT_ID(__getnewargs_ex__), \ - INIT_ID(__getstate__), \ - INIT_ID(__gt__), \ - INIT_ID(__hash__), \ - INIT_ID(__iadd__), \ - INIT_ID(__iand__), \ - INIT_ID(__ifloordiv__), \ - INIT_ID(__ilshift__), \ - INIT_ID(__imatmul__), \ - INIT_ID(__imod__), \ - INIT_ID(__import__), \ - INIT_ID(__imul__), \ - INIT_ID(__index__), \ - INIT_ID(__init__), \ - INIT_ID(__init_subclass__), \ - INIT_ID(__instancecheck__), \ - INIT_ID(__int__), \ - INIT_ID(__invert__), \ - INIT_ID(__ior__), \ - INIT_ID(__ipow__), \ - INIT_ID(__irshift__), \ - INIT_ID(__isabstractmethod__), \ - INIT_ID(__isub__), \ - INIT_ID(__iter__), \ - INIT_ID(__itruediv__), \ - INIT_ID(__ixor__), \ - INIT_ID(__le__), \ - INIT_ID(__len__), \ - INIT_ID(__length_hint__), \ - INIT_ID(__lltrace__), \ - INIT_ID(__loader__), \ - INIT_ID(__lshift__), \ - INIT_ID(__lt__), \ - INIT_ID(__main__), \ - INIT_ID(__matmul__), \ - INIT_ID(__missing__), \ - INIT_ID(__mod__), \ - INIT_ID(__module__), \ - INIT_ID(__mro_entries__), \ - INIT_ID(__mul__), \ - INIT_ID(__name__), \ - INIT_ID(__ne__), \ - INIT_ID(__neg__), \ - INIT_ID(__new__), \ - INIT_ID(__newobj__), \ - INIT_ID(__newobj_ex__), \ - INIT_ID(__next__), \ - INIT_ID(__notes__), \ - INIT_ID(__or__), \ - INIT_ID(__orig_class__), \ - INIT_ID(__origin__), \ - INIT_ID(__package__), \ - INIT_ID(__parameters__), \ - INIT_ID(__path__), \ - INIT_ID(__pos__), \ - INIT_ID(__pow__), \ - INIT_ID(__prepare__), \ - INIT_ID(__qualname__), \ - INIT_ID(__radd__), \ - INIT_ID(__rand__), \ - INIT_ID(__rdivmod__), \ - INIT_ID(__reduce__), \ - INIT_ID(__reduce_ex__), \ - INIT_ID(__release_buffer__), \ - INIT_ID(__repr__), \ - INIT_ID(__reversed__), \ - INIT_ID(__rfloordiv__), \ - INIT_ID(__rlshift__), \ - INIT_ID(__rmatmul__), \ - INIT_ID(__rmod__), \ - INIT_ID(__rmul__), \ - INIT_ID(__ror__), \ - INIT_ID(__round__), \ - INIT_ID(__rpow__), \ - INIT_ID(__rrshift__), \ - INIT_ID(__rshift__), \ - INIT_ID(__rsub__), \ - INIT_ID(__rtruediv__), \ - INIT_ID(__rxor__), \ - INIT_ID(__set__), \ - INIT_ID(__set_name__), \ - INIT_ID(__setattr__), \ - INIT_ID(__setitem__), \ - INIT_ID(__setstate__), \ - INIT_ID(__sizeof__), \ - INIT_ID(__slotnames__), \ - INIT_ID(__slots__), \ - INIT_ID(__spec__), \ - INIT_ID(__str__), \ - INIT_ID(__sub__), \ - INIT_ID(__subclasscheck__), \ - INIT_ID(__subclasshook__), \ - INIT_ID(__truediv__), \ - INIT_ID(__trunc__), \ - INIT_ID(__type_params__), \ - INIT_ID(__typing_is_unpacked_typevartuple__), \ - INIT_ID(__typing_prepare_subst__), \ - INIT_ID(__typing_subst__), \ - INIT_ID(__typing_unpacked_tuple_args__), \ - INIT_ID(__warningregistry__), \ - INIT_ID(__weaklistoffset__), \ - INIT_ID(__weakref__), \ - INIT_ID(__xor__), \ - INIT_ID(_abc_impl), \ - INIT_ID(_abstract_), \ - INIT_ID(_active), \ - INIT_ID(_annotation), \ - INIT_ID(_anonymous_), \ - INIT_ID(_argtypes_), \ - INIT_ID(_as_parameter_), \ - INIT_ID(_asyncio_future_blocking), \ - INIT_ID(_blksize), \ - INIT_ID(_bootstrap), \ - INIT_ID(_check_retval_), \ - INIT_ID(_dealloc_warn), \ - INIT_ID(_feature_version), \ - INIT_ID(_fields_), \ - INIT_ID(_finalizing), \ - INIT_ID(_find_and_load), \ - INIT_ID(_fix_up_module), \ - INIT_ID(_flags_), \ - INIT_ID(_get_sourcefile), \ - INIT_ID(_handle_fromlist), \ - INIT_ID(_initializing), \ - INIT_ID(_io), \ - INIT_ID(_is_text_encoding), \ - INIT_ID(_length_), \ - INIT_ID(_limbo), \ - INIT_ID(_lock_unlock_module), \ - INIT_ID(_loop), \ - INIT_ID(_needs_com_addref_), \ - INIT_ID(_pack_), \ - INIT_ID(_restype_), \ - INIT_ID(_showwarnmsg), \ - INIT_ID(_shutdown), \ - INIT_ID(_slotnames), \ - INIT_ID(_strptime_datetime), \ - INIT_ID(_swappedbytes_), \ - INIT_ID(_type_), \ - INIT_ID(_uninitialized_submodules), \ - INIT_ID(_warn_unawaited_coroutine), \ - INIT_ID(_xoptions), \ - INIT_ID(a), \ - INIT_ID(abs_tol), \ - INIT_ID(access), \ - INIT_ID(add), \ - INIT_ID(add_done_callback), \ - INIT_ID(after_in_child), \ - INIT_ID(after_in_parent), \ - INIT_ID(aggregate_class), \ - INIT_ID(alias), \ - INIT_ID(append), \ - INIT_ID(arg), \ - INIT_ID(argdefs), \ - INIT_ID(args), \ - INIT_ID(arguments), \ - INIT_ID(argv), \ - INIT_ID(as_integer_ratio), \ - INIT_ID(ast), \ - INIT_ID(attribute), \ - INIT_ID(authorizer_callback), \ - INIT_ID(autocommit), \ - INIT_ID(b), \ - INIT_ID(backtick), \ - INIT_ID(base), \ - INIT_ID(before), \ - INIT_ID(big), \ - INIT_ID(binary_form), \ - INIT_ID(block), \ - INIT_ID(bound), \ - INIT_ID(buffer), \ - INIT_ID(buffer_callback), \ - INIT_ID(buffer_size), \ - INIT_ID(buffering), \ - INIT_ID(buffers), \ - INIT_ID(bufsize), \ - INIT_ID(builtins), \ - INIT_ID(byteorder), \ - INIT_ID(bytes), \ - INIT_ID(bytes_per_sep), \ - INIT_ID(c), \ - INIT_ID(c_call), \ - INIT_ID(c_exception), \ - INIT_ID(c_return), \ - INIT_ID(cached_statements), \ - INIT_ID(cadata), \ - INIT_ID(cafile), \ - INIT_ID(call), \ - INIT_ID(call_exception_handler), \ - INIT_ID(call_soon), \ - INIT_ID(cancel), \ - INIT_ID(capath), \ - INIT_ID(category), \ - INIT_ID(cb_type), \ - INIT_ID(certfile), \ - INIT_ID(check_same_thread), \ - INIT_ID(clear), \ - INIT_ID(close), \ - INIT_ID(closed), \ - INIT_ID(closefd), \ - INIT_ID(closure), \ - INIT_ID(co_argcount), \ - INIT_ID(co_cellvars), \ - INIT_ID(co_code), \ - INIT_ID(co_consts), \ - INIT_ID(co_exceptiontable), \ - INIT_ID(co_filename), \ - INIT_ID(co_firstlineno), \ - INIT_ID(co_flags), \ - INIT_ID(co_freevars), \ - INIT_ID(co_kwonlyargcount), \ - INIT_ID(co_linetable), \ - INIT_ID(co_name), \ - INIT_ID(co_names), \ - INIT_ID(co_nlocals), \ - INIT_ID(co_posonlyargcount), \ - INIT_ID(co_qualname), \ - INIT_ID(co_stacksize), \ - INIT_ID(co_varnames), \ - INIT_ID(code), \ - INIT_ID(command), \ - INIT_ID(comment_factory), \ - INIT_ID(compile_mode), \ - INIT_ID(consts), \ - INIT_ID(context), \ - INIT_ID(contravariant), \ - INIT_ID(cookie), \ - INIT_ID(copy), \ - INIT_ID(copyreg), \ - INIT_ID(coro), \ - INIT_ID(count), \ - INIT_ID(covariant), \ - INIT_ID(cwd), \ - INIT_ID(d), \ - INIT_ID(data), \ - INIT_ID(database), \ - INIT_ID(decode), \ - INIT_ID(decoder), \ - INIT_ID(default), \ - INIT_ID(defaultaction), \ - INIT_ID(delete), \ - INIT_ID(depth), \ - INIT_ID(detect_types), \ - INIT_ID(deterministic), \ - INIT_ID(device), \ - INIT_ID(dict), \ - INIT_ID(dictcomp), \ - INIT_ID(difference_update), \ - INIT_ID(digest), \ - INIT_ID(digest_size), \ - INIT_ID(digestmod), \ - INIT_ID(dir_fd), \ - INIT_ID(discard), \ - INIT_ID(dispatch_table), \ - INIT_ID(displayhook), \ - INIT_ID(dklen), \ - INIT_ID(doc), \ - INIT_ID(dont_inherit), \ - INIT_ID(dst), \ - INIT_ID(dst_dir_fd), \ - INIT_ID(duration), \ - INIT_ID(e), \ - INIT_ID(eager_start), \ - INIT_ID(effective_ids), \ - INIT_ID(element_factory), \ - INIT_ID(encode), \ - INIT_ID(encoding), \ - INIT_ID(end), \ - INIT_ID(end_lineno), \ - INIT_ID(end_offset), \ - INIT_ID(endpos), \ - INIT_ID(entrypoint), \ - INIT_ID(env), \ - INIT_ID(errors), \ - INIT_ID(event), \ - INIT_ID(eventmask), \ - INIT_ID(exc_type), \ - INIT_ID(exc_value), \ - INIT_ID(excepthook), \ - INIT_ID(exception), \ - INIT_ID(existing_file_name), \ - INIT_ID(exp), \ - INIT_ID(extend), \ - INIT_ID(extra_tokens), \ - INIT_ID(facility), \ - INIT_ID(factory), \ - INIT_ID(false), \ - INIT_ID(family), \ - INIT_ID(fanout), \ - INIT_ID(fd), \ - INIT_ID(fd2), \ - INIT_ID(fdel), \ - INIT_ID(fget), \ - INIT_ID(file), \ - INIT_ID(file_actions), \ - INIT_ID(filename), \ - INIT_ID(fileno), \ - INIT_ID(filepath), \ - INIT_ID(fillvalue), \ - INIT_ID(filters), \ - INIT_ID(final), \ - INIT_ID(find_class), \ - INIT_ID(fix_imports), \ - INIT_ID(flags), \ - INIT_ID(flush), \ - INIT_ID(follow_symlinks), \ - INIT_ID(format), \ - INIT_ID(frequency), \ - INIT_ID(from_param), \ - INIT_ID(fromlist), \ - INIT_ID(fromtimestamp), \ - INIT_ID(fromutc), \ - INIT_ID(fset), \ - INIT_ID(func), \ - INIT_ID(future), \ - INIT_ID(generation), \ - INIT_ID(genexpr), \ - INIT_ID(get), \ - INIT_ID(get_debug), \ - INIT_ID(get_event_loop), \ - INIT_ID(get_loop), \ - INIT_ID(get_source), \ - INIT_ID(getattr), \ - INIT_ID(getstate), \ - INIT_ID(gid), \ - INIT_ID(globals), \ - INIT_ID(groupindex), \ - INIT_ID(groups), \ - INIT_ID(handle), \ - INIT_ID(hash_name), \ - INIT_ID(header), \ - INIT_ID(headers), \ - INIT_ID(hi), \ - INIT_ID(hook), \ - INIT_ID(id), \ - INIT_ID(ident), \ - INIT_ID(ignore), \ - INIT_ID(imag), \ - INIT_ID(importlib), \ - INIT_ID(in_fd), \ - INIT_ID(incoming), \ - INIT_ID(indexgroup), \ - INIT_ID(inf), \ - INIT_ID(infer_variance), \ - INIT_ID(inheritable), \ - INIT_ID(initial), \ - INIT_ID(initial_bytes), \ - INIT_ID(initial_value), \ - INIT_ID(initval), \ - INIT_ID(inner_size), \ - INIT_ID(input), \ - INIT_ID(insert_comments), \ - INIT_ID(insert_pis), \ - INIT_ID(instructions), \ - INIT_ID(intern), \ - INIT_ID(intersection), \ - INIT_ID(is_running), \ - INIT_ID(isatty), \ - INIT_ID(isinstance), \ - INIT_ID(isoformat), \ - INIT_ID(isolation_level), \ - INIT_ID(istext), \ - INIT_ID(item), \ - INIT_ID(items), \ - INIT_ID(iter), \ - INIT_ID(iterable), \ - INIT_ID(iterations), \ - INIT_ID(join), \ - INIT_ID(jump), \ - INIT_ID(keepends), \ - INIT_ID(key), \ - INIT_ID(keyfile), \ - INIT_ID(keys), \ - INIT_ID(kind), \ - INIT_ID(kw), \ - INIT_ID(kw1), \ - INIT_ID(kw2), \ - INIT_ID(lambda), \ - INIT_ID(last), \ - INIT_ID(last_exc), \ - INIT_ID(last_node), \ - INIT_ID(last_traceback), \ - INIT_ID(last_type), \ - INIT_ID(last_value), \ - INIT_ID(latin1), \ - INIT_ID(leaf_size), \ - INIT_ID(len), \ - INIT_ID(length), \ - INIT_ID(level), \ - INIT_ID(limit), \ - INIT_ID(line), \ - INIT_ID(line_buffering), \ - INIT_ID(lineno), \ - INIT_ID(listcomp), \ - INIT_ID(little), \ - INIT_ID(lo), \ - INIT_ID(locale), \ - INIT_ID(locals), \ - INIT_ID(logoption), \ - INIT_ID(loop), \ - INIT_ID(mapping), \ - INIT_ID(match), \ - INIT_ID(max_length), \ - INIT_ID(maxdigits), \ - INIT_ID(maxevents), \ - INIT_ID(maxmem), \ - INIT_ID(maxsplit), \ - INIT_ID(maxvalue), \ - INIT_ID(memLevel), \ - INIT_ID(memlimit), \ - INIT_ID(message), \ - INIT_ID(metaclass), \ - INIT_ID(metadata), \ - INIT_ID(method), \ - INIT_ID(mod), \ - INIT_ID(mode), \ - INIT_ID(module), \ - INIT_ID(module_globals), \ - INIT_ID(modules), \ - INIT_ID(mro), \ - INIT_ID(msg), \ - INIT_ID(mycmp), \ - INIT_ID(n), \ - INIT_ID(n_arg), \ - INIT_ID(n_fields), \ - INIT_ID(n_sequence_fields), \ - INIT_ID(n_unnamed_fields), \ - INIT_ID(name), \ - INIT_ID(name_from), \ - INIT_ID(namespace_separator), \ - INIT_ID(namespaces), \ - INIT_ID(narg), \ - INIT_ID(ndigits), \ - INIT_ID(new_file_name), \ - INIT_ID(new_limit), \ - INIT_ID(newline), \ - INIT_ID(newlines), \ - INIT_ID(next), \ - INIT_ID(nlocals), \ - INIT_ID(node_depth), \ - INIT_ID(node_offset), \ - INIT_ID(ns), \ - INIT_ID(nstype), \ - INIT_ID(nt), \ - INIT_ID(null), \ - INIT_ID(number), \ - INIT_ID(obj), \ - INIT_ID(object), \ - INIT_ID(offset), \ - INIT_ID(offset_dst), \ - INIT_ID(offset_src), \ - INIT_ID(on_type_read), \ - INIT_ID(onceregistry), \ - INIT_ID(only_keys), \ - INIT_ID(oparg), \ - INIT_ID(opcode), \ - INIT_ID(open), \ - INIT_ID(opener), \ - INIT_ID(operation), \ - INIT_ID(optimize), \ - INIT_ID(options), \ - INIT_ID(order), \ - INIT_ID(origin), \ - INIT_ID(out_fd), \ - INIT_ID(outgoing), \ - INIT_ID(overlapped), \ - INIT_ID(owner), \ - INIT_ID(p), \ - INIT_ID(pages), \ - INIT_ID(parent), \ - INIT_ID(password), \ - INIT_ID(path), \ - INIT_ID(pattern), \ - INIT_ID(peek), \ - INIT_ID(persistent_id), \ - INIT_ID(persistent_load), \ - INIT_ID(person), \ - INIT_ID(pi_factory), \ - INIT_ID(pid), \ - INIT_ID(policy), \ - INIT_ID(pos), \ - INIT_ID(pos1), \ - INIT_ID(pos2), \ - INIT_ID(posix), \ - INIT_ID(print_file_and_line), \ - INIT_ID(priority), \ - INIT_ID(progress), \ - INIT_ID(progress_handler), \ - INIT_ID(progress_routine), \ - INIT_ID(proto), \ - INIT_ID(protocol), \ - INIT_ID(ps1), \ - INIT_ID(ps2), \ - INIT_ID(query), \ - INIT_ID(quotetabs), \ - INIT_ID(r), \ - INIT_ID(raw), \ - INIT_ID(read), \ - INIT_ID(read1), \ - INIT_ID(readable), \ - INIT_ID(readall), \ - INIT_ID(readinto), \ - INIT_ID(readinto1), \ - INIT_ID(readline), \ - INIT_ID(readonly), \ - INIT_ID(real), \ - INIT_ID(reducer_override), \ - INIT_ID(registry), \ - INIT_ID(rel_tol), \ - INIT_ID(release), \ - INIT_ID(reload), \ - INIT_ID(repl), \ - INIT_ID(replace), \ - INIT_ID(reserved), \ - INIT_ID(reset), \ - INIT_ID(resetids), \ - INIT_ID(return), \ - INIT_ID(reverse), \ - INIT_ID(reversed), \ - INIT_ID(s), \ - INIT_ID(salt), \ - INIT_ID(sched_priority), \ - INIT_ID(scheduler), \ - INIT_ID(seek), \ - INIT_ID(seekable), \ - INIT_ID(selectors), \ - INIT_ID(self), \ - INIT_ID(send), \ - INIT_ID(sep), \ - INIT_ID(sequence), \ - INIT_ID(server_hostname), \ - INIT_ID(server_side), \ - INIT_ID(session), \ - INIT_ID(setcomp), \ - INIT_ID(setpgroup), \ - INIT_ID(setsid), \ - INIT_ID(setsigdef), \ - INIT_ID(setsigmask), \ - INIT_ID(setstate), \ - INIT_ID(shape), \ - INIT_ID(show_cmd), \ - INIT_ID(signed), \ - INIT_ID(size), \ - INIT_ID(sizehint), \ - INIT_ID(skip_file_prefixes), \ - INIT_ID(sleep), \ - INIT_ID(sock), \ - INIT_ID(sort), \ - INIT_ID(sound), \ - INIT_ID(source), \ - INIT_ID(source_traceback), \ - INIT_ID(src), \ - INIT_ID(src_dir_fd), \ - INIT_ID(stacklevel), \ - INIT_ID(start), \ - INIT_ID(statement), \ - INIT_ID(status), \ - INIT_ID(stderr), \ - INIT_ID(stdin), \ - INIT_ID(stdout), \ - INIT_ID(step), \ - INIT_ID(steps), \ - INIT_ID(store_name), \ - INIT_ID(strategy), \ - INIT_ID(strftime), \ - INIT_ID(strict), \ - INIT_ID(strict_mode), \ - INIT_ID(string), \ - INIT_ID(sub_key), \ - INIT_ID(symmetric_difference_update), \ - INIT_ID(tabsize), \ - INIT_ID(tag), \ - INIT_ID(target), \ - INIT_ID(target_is_directory), \ - INIT_ID(task), \ - INIT_ID(tb_frame), \ - INIT_ID(tb_lasti), \ - INIT_ID(tb_lineno), \ - INIT_ID(tb_next), \ - INIT_ID(tell), \ - INIT_ID(template), \ - INIT_ID(term), \ - INIT_ID(text), \ - INIT_ID(threading), \ - INIT_ID(throw), \ - INIT_ID(timeout), \ - INIT_ID(times), \ - INIT_ID(timetuple), \ - INIT_ID(top), \ - INIT_ID(trace_callback), \ - INIT_ID(traceback), \ - INIT_ID(trailers), \ - INIT_ID(translate), \ - INIT_ID(true), \ - INIT_ID(truncate), \ - INIT_ID(twice), \ - INIT_ID(txt), \ - INIT_ID(type), \ - INIT_ID(type_params), \ - INIT_ID(tz), \ - INIT_ID(tzname), \ - INIT_ID(uid), \ - INIT_ID(unlink), \ - INIT_ID(unraisablehook), \ - INIT_ID(uri), \ - INIT_ID(usedforsecurity), \ - INIT_ID(value), \ - INIT_ID(values), \ - INIT_ID(version), \ - INIT_ID(volume), \ - INIT_ID(warnings), \ - INIT_ID(warnoptions), \ - INIT_ID(wbits), \ - INIT_ID(week), \ - INIT_ID(weekday), \ - INIT_ID(which), \ - INIT_ID(who), \ - INIT_ID(withdata), \ - INIT_ID(writable), \ - INIT_ID(write), \ - INIT_ID(write_through), \ - INIT_ID(x), \ - INIT_ID(year), \ - INIT_ID(zdict), \ -} - -#define _Py_str_ascii_INIT { \ - _PyASCIIObject_INIT("\x00"), \ - _PyASCIIObject_INIT("\x01"), \ - _PyASCIIObject_INIT("\x02"), \ - _PyASCIIObject_INIT("\x03"), \ - _PyASCIIObject_INIT("\x04"), \ - _PyASCIIObject_INIT("\x05"), \ - _PyASCIIObject_INIT("\x06"), \ - _PyASCIIObject_INIT("\x07"), \ - _PyASCIIObject_INIT("\x08"), \ - _PyASCIIObject_INIT("\x09"), \ - _PyASCIIObject_INIT("\x0a"), \ - _PyASCIIObject_INIT("\x0b"), \ - _PyASCIIObject_INIT("\x0c"), \ - _PyASCIIObject_INIT("\x0d"), \ - _PyASCIIObject_INIT("\x0e"), \ - _PyASCIIObject_INIT("\x0f"), \ - _PyASCIIObject_INIT("\x10"), \ - _PyASCIIObject_INIT("\x11"), \ - _PyASCIIObject_INIT("\x12"), \ - _PyASCIIObject_INIT("\x13"), \ - _PyASCIIObject_INIT("\x14"), \ - _PyASCIIObject_INIT("\x15"), \ - _PyASCIIObject_INIT("\x16"), \ - _PyASCIIObject_INIT("\x17"), \ - _PyASCIIObject_INIT("\x18"), \ - _PyASCIIObject_INIT("\x19"), \ - _PyASCIIObject_INIT("\x1a"), \ - _PyASCIIObject_INIT("\x1b"), \ - _PyASCIIObject_INIT("\x1c"), \ - _PyASCIIObject_INIT("\x1d"), \ - _PyASCIIObject_INIT("\x1e"), \ - _PyASCIIObject_INIT("\x1f"), \ - _PyASCIIObject_INIT("\x20"), \ - _PyASCIIObject_INIT("\x21"), \ - _PyASCIIObject_INIT("\x22"), \ - _PyASCIIObject_INIT("\x23"), \ - _PyASCIIObject_INIT("\x24"), \ - _PyASCIIObject_INIT("\x25"), \ - _PyASCIIObject_INIT("\x26"), \ - _PyASCIIObject_INIT("\x27"), \ - _PyASCIIObject_INIT("\x28"), \ - _PyASCIIObject_INIT("\x29"), \ - _PyASCIIObject_INIT("\x2a"), \ - _PyASCIIObject_INIT("\x2b"), \ - _PyASCIIObject_INIT("\x2c"), \ - _PyASCIIObject_INIT("\x2d"), \ - _PyASCIIObject_INIT("\x2e"), \ - _PyASCIIObject_INIT("\x2f"), \ - _PyASCIIObject_INIT("\x30"), \ - _PyASCIIObject_INIT("\x31"), \ - _PyASCIIObject_INIT("\x32"), \ - _PyASCIIObject_INIT("\x33"), \ - _PyASCIIObject_INIT("\x34"), \ - _PyASCIIObject_INIT("\x35"), \ - _PyASCIIObject_INIT("\x36"), \ - _PyASCIIObject_INIT("\x37"), \ - _PyASCIIObject_INIT("\x38"), \ - _PyASCIIObject_INIT("\x39"), \ - _PyASCIIObject_INIT("\x3a"), \ - _PyASCIIObject_INIT("\x3b"), \ - _PyASCIIObject_INIT("\x3c"), \ - _PyASCIIObject_INIT("\x3d"), \ - _PyASCIIObject_INIT("\x3e"), \ - _PyASCIIObject_INIT("\x3f"), \ - _PyASCIIObject_INIT("\x40"), \ - _PyASCIIObject_INIT("\x41"), \ - _PyASCIIObject_INIT("\x42"), \ - _PyASCIIObject_INIT("\x43"), \ - _PyASCIIObject_INIT("\x44"), \ - _PyASCIIObject_INIT("\x45"), \ - _PyASCIIObject_INIT("\x46"), \ - _PyASCIIObject_INIT("\x47"), \ - _PyASCIIObject_INIT("\x48"), \ - _PyASCIIObject_INIT("\x49"), \ - _PyASCIIObject_INIT("\x4a"), \ - _PyASCIIObject_INIT("\x4b"), \ - _PyASCIIObject_INIT("\x4c"), \ - _PyASCIIObject_INIT("\x4d"), \ - _PyASCIIObject_INIT("\x4e"), \ - _PyASCIIObject_INIT("\x4f"), \ - _PyASCIIObject_INIT("\x50"), \ - _PyASCIIObject_INIT("\x51"), \ - _PyASCIIObject_INIT("\x52"), \ - _PyASCIIObject_INIT("\x53"), \ - _PyASCIIObject_INIT("\x54"), \ - _PyASCIIObject_INIT("\x55"), \ - _PyASCIIObject_INIT("\x56"), \ - _PyASCIIObject_INIT("\x57"), \ - _PyASCIIObject_INIT("\x58"), \ - _PyASCIIObject_INIT("\x59"), \ - _PyASCIIObject_INIT("\x5a"), \ - _PyASCIIObject_INIT("\x5b"), \ - _PyASCIIObject_INIT("\x5c"), \ - _PyASCIIObject_INIT("\x5d"), \ - _PyASCIIObject_INIT("\x5e"), \ - _PyASCIIObject_INIT("\x5f"), \ - _PyASCIIObject_INIT("\x60"), \ - _PyASCIIObject_INIT("\x61"), \ - _PyASCIIObject_INIT("\x62"), \ - _PyASCIIObject_INIT("\x63"), \ - _PyASCIIObject_INIT("\x64"), \ - _PyASCIIObject_INIT("\x65"), \ - _PyASCIIObject_INIT("\x66"), \ - _PyASCIIObject_INIT("\x67"), \ - _PyASCIIObject_INIT("\x68"), \ - _PyASCIIObject_INIT("\x69"), \ - _PyASCIIObject_INIT("\x6a"), \ - _PyASCIIObject_INIT("\x6b"), \ - _PyASCIIObject_INIT("\x6c"), \ - _PyASCIIObject_INIT("\x6d"), \ - _PyASCIIObject_INIT("\x6e"), \ - _PyASCIIObject_INIT("\x6f"), \ - _PyASCIIObject_INIT("\x70"), \ - _PyASCIIObject_INIT("\x71"), \ - _PyASCIIObject_INIT("\x72"), \ - _PyASCIIObject_INIT("\x73"), \ - _PyASCIIObject_INIT("\x74"), \ - _PyASCIIObject_INIT("\x75"), \ - _PyASCIIObject_INIT("\x76"), \ - _PyASCIIObject_INIT("\x77"), \ - _PyASCIIObject_INIT("\x78"), \ - _PyASCIIObject_INIT("\x79"), \ - _PyASCIIObject_INIT("\x7a"), \ - _PyASCIIObject_INIT("\x7b"), \ - _PyASCIIObject_INIT("\x7c"), \ - _PyASCIIObject_INIT("\x7d"), \ - _PyASCIIObject_INIT("\x7e"), \ - _PyASCIIObject_INIT("\x7f"), \ -} - -#define _Py_str_latin1_INIT { \ - _PyUnicode_LATIN1_INIT("\x80", "\xc2\x80"), \ - _PyUnicode_LATIN1_INIT("\x81", "\xc2\x81"), \ - _PyUnicode_LATIN1_INIT("\x82", "\xc2\x82"), \ - _PyUnicode_LATIN1_INIT("\x83", "\xc2\x83"), \ - _PyUnicode_LATIN1_INIT("\x84", "\xc2\x84"), \ - _PyUnicode_LATIN1_INIT("\x85", "\xc2\x85"), \ - _PyUnicode_LATIN1_INIT("\x86", "\xc2\x86"), \ - _PyUnicode_LATIN1_INIT("\x87", "\xc2\x87"), \ - _PyUnicode_LATIN1_INIT("\x88", "\xc2\x88"), \ - _PyUnicode_LATIN1_INIT("\x89", "\xc2\x89"), \ - _PyUnicode_LATIN1_INIT("\x8a", "\xc2\x8a"), \ - _PyUnicode_LATIN1_INIT("\x8b", "\xc2\x8b"), \ - _PyUnicode_LATIN1_INIT("\x8c", "\xc2\x8c"), \ - _PyUnicode_LATIN1_INIT("\x8d", "\xc2\x8d"), \ - _PyUnicode_LATIN1_INIT("\x8e", "\xc2\x8e"), \ - _PyUnicode_LATIN1_INIT("\x8f", "\xc2\x8f"), \ - _PyUnicode_LATIN1_INIT("\x90", "\xc2\x90"), \ - _PyUnicode_LATIN1_INIT("\x91", "\xc2\x91"), \ - _PyUnicode_LATIN1_INIT("\x92", "\xc2\x92"), \ - _PyUnicode_LATIN1_INIT("\x93", "\xc2\x93"), \ - _PyUnicode_LATIN1_INIT("\x94", "\xc2\x94"), \ - _PyUnicode_LATIN1_INIT("\x95", "\xc2\x95"), \ - _PyUnicode_LATIN1_INIT("\x96", "\xc2\x96"), \ - _PyUnicode_LATIN1_INIT("\x97", "\xc2\x97"), \ - _PyUnicode_LATIN1_INIT("\x98", "\xc2\x98"), \ - _PyUnicode_LATIN1_INIT("\x99", "\xc2\x99"), \ - _PyUnicode_LATIN1_INIT("\x9a", "\xc2\x9a"), \ - _PyUnicode_LATIN1_INIT("\x9b", "\xc2\x9b"), \ - _PyUnicode_LATIN1_INIT("\x9c", "\xc2\x9c"), \ - _PyUnicode_LATIN1_INIT("\x9d", "\xc2\x9d"), \ - _PyUnicode_LATIN1_INIT("\x9e", "\xc2\x9e"), \ - _PyUnicode_LATIN1_INIT("\x9f", "\xc2\x9f"), \ - _PyUnicode_LATIN1_INIT("\xa0", "\xc2\xa0"), \ - _PyUnicode_LATIN1_INIT("\xa1", "\xc2\xa1"), \ - _PyUnicode_LATIN1_INIT("\xa2", "\xc2\xa2"), \ - _PyUnicode_LATIN1_INIT("\xa3", "\xc2\xa3"), \ - _PyUnicode_LATIN1_INIT("\xa4", "\xc2\xa4"), \ - _PyUnicode_LATIN1_INIT("\xa5", "\xc2\xa5"), \ - _PyUnicode_LATIN1_INIT("\xa6", "\xc2\xa6"), \ - _PyUnicode_LATIN1_INIT("\xa7", "\xc2\xa7"), \ - _PyUnicode_LATIN1_INIT("\xa8", "\xc2\xa8"), \ - _PyUnicode_LATIN1_INIT("\xa9", "\xc2\xa9"), \ - _PyUnicode_LATIN1_INIT("\xaa", "\xc2\xaa"), \ - _PyUnicode_LATIN1_INIT("\xab", "\xc2\xab"), \ - _PyUnicode_LATIN1_INIT("\xac", "\xc2\xac"), \ - _PyUnicode_LATIN1_INIT("\xad", "\xc2\xad"), \ - _PyUnicode_LATIN1_INIT("\xae", "\xc2\xae"), \ - _PyUnicode_LATIN1_INIT("\xaf", "\xc2\xaf"), \ - _PyUnicode_LATIN1_INIT("\xb0", "\xc2\xb0"), \ - _PyUnicode_LATIN1_INIT("\xb1", "\xc2\xb1"), \ - _PyUnicode_LATIN1_INIT("\xb2", "\xc2\xb2"), \ - _PyUnicode_LATIN1_INIT("\xb3", "\xc2\xb3"), \ - _PyUnicode_LATIN1_INIT("\xb4", "\xc2\xb4"), \ - _PyUnicode_LATIN1_INIT("\xb5", "\xc2\xb5"), \ - _PyUnicode_LATIN1_INIT("\xb6", "\xc2\xb6"), \ - _PyUnicode_LATIN1_INIT("\xb7", "\xc2\xb7"), \ - _PyUnicode_LATIN1_INIT("\xb8", "\xc2\xb8"), \ - _PyUnicode_LATIN1_INIT("\xb9", "\xc2\xb9"), \ - _PyUnicode_LATIN1_INIT("\xba", "\xc2\xba"), \ - _PyUnicode_LATIN1_INIT("\xbb", "\xc2\xbb"), \ - _PyUnicode_LATIN1_INIT("\xbc", "\xc2\xbc"), \ - _PyUnicode_LATIN1_INIT("\xbd", "\xc2\xbd"), \ - _PyUnicode_LATIN1_INIT("\xbe", "\xc2\xbe"), \ - _PyUnicode_LATIN1_INIT("\xbf", "\xc2\xbf"), \ - _PyUnicode_LATIN1_INIT("\xc0", "\xc3\x80"), \ - _PyUnicode_LATIN1_INIT("\xc1", "\xc3\x81"), \ - _PyUnicode_LATIN1_INIT("\xc2", "\xc3\x82"), \ - _PyUnicode_LATIN1_INIT("\xc3", "\xc3\x83"), \ - _PyUnicode_LATIN1_INIT("\xc4", "\xc3\x84"), \ - _PyUnicode_LATIN1_INIT("\xc5", "\xc3\x85"), \ - _PyUnicode_LATIN1_INIT("\xc6", "\xc3\x86"), \ - _PyUnicode_LATIN1_INIT("\xc7", "\xc3\x87"), \ - _PyUnicode_LATIN1_INIT("\xc8", "\xc3\x88"), \ - _PyUnicode_LATIN1_INIT("\xc9", "\xc3\x89"), \ - _PyUnicode_LATIN1_INIT("\xca", "\xc3\x8a"), \ - _PyUnicode_LATIN1_INIT("\xcb", "\xc3\x8b"), \ - _PyUnicode_LATIN1_INIT("\xcc", "\xc3\x8c"), \ - _PyUnicode_LATIN1_INIT("\xcd", "\xc3\x8d"), \ - _PyUnicode_LATIN1_INIT("\xce", "\xc3\x8e"), \ - _PyUnicode_LATIN1_INIT("\xcf", "\xc3\x8f"), \ - _PyUnicode_LATIN1_INIT("\xd0", "\xc3\x90"), \ - _PyUnicode_LATIN1_INIT("\xd1", "\xc3\x91"), \ - _PyUnicode_LATIN1_INIT("\xd2", "\xc3\x92"), \ - _PyUnicode_LATIN1_INIT("\xd3", "\xc3\x93"), \ - _PyUnicode_LATIN1_INIT("\xd4", "\xc3\x94"), \ - _PyUnicode_LATIN1_INIT("\xd5", "\xc3\x95"), \ - _PyUnicode_LATIN1_INIT("\xd6", "\xc3\x96"), \ - _PyUnicode_LATIN1_INIT("\xd7", "\xc3\x97"), \ - _PyUnicode_LATIN1_INIT("\xd8", "\xc3\x98"), \ - _PyUnicode_LATIN1_INIT("\xd9", "\xc3\x99"), \ - _PyUnicode_LATIN1_INIT("\xda", "\xc3\x9a"), \ - _PyUnicode_LATIN1_INIT("\xdb", "\xc3\x9b"), \ - _PyUnicode_LATIN1_INIT("\xdc", "\xc3\x9c"), \ - _PyUnicode_LATIN1_INIT("\xdd", "\xc3\x9d"), \ - _PyUnicode_LATIN1_INIT("\xde", "\xc3\x9e"), \ - _PyUnicode_LATIN1_INIT("\xdf", "\xc3\x9f"), \ - _PyUnicode_LATIN1_INIT("\xe0", "\xc3\xa0"), \ - _PyUnicode_LATIN1_INIT("\xe1", "\xc3\xa1"), \ - _PyUnicode_LATIN1_INIT("\xe2", "\xc3\xa2"), \ - _PyUnicode_LATIN1_INIT("\xe3", "\xc3\xa3"), \ - _PyUnicode_LATIN1_INIT("\xe4", "\xc3\xa4"), \ - _PyUnicode_LATIN1_INIT("\xe5", "\xc3\xa5"), \ - _PyUnicode_LATIN1_INIT("\xe6", "\xc3\xa6"), \ - _PyUnicode_LATIN1_INIT("\xe7", "\xc3\xa7"), \ - _PyUnicode_LATIN1_INIT("\xe8", "\xc3\xa8"), \ - _PyUnicode_LATIN1_INIT("\xe9", "\xc3\xa9"), \ - _PyUnicode_LATIN1_INIT("\xea", "\xc3\xaa"), \ - _PyUnicode_LATIN1_INIT("\xeb", "\xc3\xab"), \ - _PyUnicode_LATIN1_INIT("\xec", "\xc3\xac"), \ - _PyUnicode_LATIN1_INIT("\xed", "\xc3\xad"), \ - _PyUnicode_LATIN1_INIT("\xee", "\xc3\xae"), \ - _PyUnicode_LATIN1_INIT("\xef", "\xc3\xaf"), \ - _PyUnicode_LATIN1_INIT("\xf0", "\xc3\xb0"), \ - _PyUnicode_LATIN1_INIT("\xf1", "\xc3\xb1"), \ - _PyUnicode_LATIN1_INIT("\xf2", "\xc3\xb2"), \ - _PyUnicode_LATIN1_INIT("\xf3", "\xc3\xb3"), \ - _PyUnicode_LATIN1_INIT("\xf4", "\xc3\xb4"), \ - _PyUnicode_LATIN1_INIT("\xf5", "\xc3\xb5"), \ - _PyUnicode_LATIN1_INIT("\xf6", "\xc3\xb6"), \ - _PyUnicode_LATIN1_INIT("\xf7", "\xc3\xb7"), \ - _PyUnicode_LATIN1_INIT("\xf8", "\xc3\xb8"), \ - _PyUnicode_LATIN1_INIT("\xf9", "\xc3\xb9"), \ - _PyUnicode_LATIN1_INIT("\xfa", "\xc3\xba"), \ - _PyUnicode_LATIN1_INIT("\xfb", "\xc3\xbb"), \ - _PyUnicode_LATIN1_INIT("\xfc", "\xc3\xbc"), \ - _PyUnicode_LATIN1_INIT("\xfd", "\xc3\xbd"), \ - _PyUnicode_LATIN1_INIT("\xfe", "\xc3\xbe"), \ - _PyUnicode_LATIN1_INIT("\xff", "\xc3\xbf"), \ -} -/* End auto-generated code */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_RUNTIME_INIT_GENERATED_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_signal.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_signal.h deleted file mode 100644 index ca3f69d..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_signal.h +++ /dev/null @@ -1,98 +0,0 @@ -// Define Py_NSIG constant for signal handling. - -#ifndef Py_INTERNAL_SIGNAL_H -#define Py_INTERNAL_SIGNAL_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_atomic.h" // _Py_atomic_address - -#include // NSIG - - -#ifdef _SIG_MAXSIG - // gh-91145: On FreeBSD, defines NSIG as 32: it doesn't include - // realtime signals: [SIGRTMIN,SIGRTMAX]. Use _SIG_MAXSIG instead. For - // example on x86-64 FreeBSD 13, SIGRTMAX is 126 and _SIG_MAXSIG is 128. -# define Py_NSIG _SIG_MAXSIG -#elif defined(NSIG) -# define Py_NSIG NSIG -#elif defined(_NSIG) -# define Py_NSIG _NSIG // BSD/SysV -#elif defined(_SIGMAX) -# define Py_NSIG (_SIGMAX + 1) // QNX -#elif defined(SIGMAX) -# define Py_NSIG (SIGMAX + 1) // djgpp -#else -# define Py_NSIG 64 // Use a reasonable default value -#endif - -#define INVALID_FD (-1) - -struct _signals_runtime_state { - volatile struct { - _Py_atomic_int tripped; - /* func is atomic to ensure that PyErr_SetInterrupt is async-signal-safe - * (even though it would probably be otherwise, anyway). - */ - _Py_atomic_address func; - } handlers[Py_NSIG]; - - volatile struct { -#ifdef MS_WINDOWS - /* This would be "SOCKET fd" if were always included. - It isn't so we must cast to SOCKET where appropriate. */ - volatile int fd; -#elif defined(__VXWORKS__) - int fd; -#else - sig_atomic_t fd; -#endif - - int warn_on_full_buffer; -#ifdef MS_WINDOWS - int use_send; -#endif - } wakeup; - - /* Speed up sigcheck() when none tripped */ - _Py_atomic_int is_tripped; - - /* These objects necessarily belong to the main interpreter. */ - PyObject *default_handler; - PyObject *ignore_handler; - -#ifdef MS_WINDOWS - /* This would be "HANDLE sigint_event" if were always included. - It isn't so we must cast to HANDLE everywhere "sigint_event" is used. */ - void *sigint_event; -#endif - - /* True if the main interpreter thread exited due to an unhandled - * KeyboardInterrupt exception, suggesting the user pressed ^C. */ - int unhandled_keyboard_interrupt; -}; - -#ifdef MS_WINDOWS -# define _signals_WAKEUP_INIT \ - {.fd = INVALID_FD, .warn_on_full_buffer = 1, .use_send = 0} -#else -# define _signals_WAKEUP_INIT \ - {.fd = INVALID_FD, .warn_on_full_buffer = 1} -#endif - -#define _signals_RUNTIME_INIT \ - { \ - .wakeup = _signals_WAKEUP_INIT, \ - } - - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_SIGNAL_H diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_sliceobject.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_sliceobject.h deleted file mode 100644 index 98665c3..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_sliceobject.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef Py_INTERNAL_SLICEOBJECT_H -#define Py_INTERNAL_SLICEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* runtime lifecycle */ - -extern void _PySlice_Fini(PyInterpreterState *); - -extern PyObject * -_PyBuildSlice_ConsumeRefs(PyObject *start, PyObject *stop); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_SLICEOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_strhex.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_strhex.h deleted file mode 100644 index f427b4d..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_strhex.h +++ /dev/null @@ -1,36 +0,0 @@ -#ifndef Py_INTERNAL_STRHEX_H -#define Py_INTERNAL_STRHEX_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -// Returns a str() containing the hex representation of argbuf. -PyAPI_FUNC(PyObject*) _Py_strhex(const - char* argbuf, - const Py_ssize_t arglen); - -// Returns a bytes() containing the ASCII hex representation of argbuf. -PyAPI_FUNC(PyObject*) _Py_strhex_bytes( - const char* argbuf, - const Py_ssize_t arglen); - -// These variants include support for a separator between every N bytes: -PyAPI_FUNC(PyObject*) _Py_strhex_with_sep( - const char* argbuf, - const Py_ssize_t arglen, - PyObject* sep, - const int bytes_per_group); -PyAPI_FUNC(PyObject*) _Py_strhex_bytes_with_sep( - const char* argbuf, - const Py_ssize_t arglen, - PyObject* sep, - const int bytes_per_group); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_STRHEX_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_structseq.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_structseq.h deleted file mode 100644 index 6f5dfc1..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_structseq.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef Py_INTERNAL_STRUCTSEQ_H -#define Py_INTERNAL_STRUCTSEQ_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* other API */ - -PyAPI_FUNC(PyTypeObject *) _PyStructSequence_NewType( - PyStructSequence_Desc *desc, - unsigned long tp_flags); - -extern int _PyStructSequence_InitBuiltinWithFlags( - PyInterpreterState *interp, - PyTypeObject *type, - PyStructSequence_Desc *desc, - unsigned long tp_flags); - -static inline int -_PyStructSequence_InitBuiltin(PyInterpreterState *interp, - PyTypeObject *type, - PyStructSequence_Desc *desc) -{ - return _PyStructSequence_InitBuiltinWithFlags(interp, type, desc, 0); -} - -extern void _PyStructSequence_FiniBuiltin( - PyInterpreterState *interp, - PyTypeObject *type); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_STRUCTSEQ_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_symtable.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_symtable.h deleted file mode 100644 index c8e0578..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_symtable.h +++ /dev/null @@ -1,158 +0,0 @@ -#ifndef Py_INTERNAL_SYMTABLE_H -#define Py_INTERNAL_SYMTABLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct _mod; // Type defined in pycore_ast.h - -typedef enum _block_type { - FunctionBlock, ClassBlock, ModuleBlock, - // Used for annotations if 'from __future__ import annotations' is active. - // Annotation blocks cannot bind names and are not evaluated. - AnnotationBlock, - // Used for generics and type aliases. These work mostly like functions - // (see PEP 695 for details). The three different blocks function identically; - // they are different enum entries only so that error messages can be more - // precise. - TypeVarBoundBlock, TypeAliasBlock, TypeParamBlock -} _Py_block_ty; - -typedef enum _comprehension_type { - NoComprehension = 0, - ListComprehension = 1, - DictComprehension = 2, - SetComprehension = 3, - GeneratorExpression = 4 } _Py_comprehension_ty; - -struct _symtable_entry; - -struct symtable { - PyObject *st_filename; /* name of file being compiled, - decoded from the filesystem encoding */ - struct _symtable_entry *st_cur; /* current symbol table entry */ - struct _symtable_entry *st_top; /* symbol table entry for module */ - PyObject *st_blocks; /* dict: map AST node addresses - * to symbol table entries */ - PyObject *st_stack; /* list: stack of namespace info */ - PyObject *st_global; /* borrowed ref to st_top->ste_symbols */ - int st_nblocks; /* number of blocks used. kept for - consistency with the corresponding - compiler structure */ - PyObject *st_private; /* name of current class or NULL */ - PyFutureFeatures *st_future; /* module's future features that affect - the symbol table */ - int recursion_depth; /* current recursion depth */ - int recursion_limit; /* recursion limit */ -}; - -typedef struct _symtable_entry { - PyObject_HEAD - PyObject *ste_id; /* int: key in ste_table->st_blocks */ - PyObject *ste_symbols; /* dict: variable names to flags */ - PyObject *ste_name; /* string: name of current block */ - PyObject *ste_varnames; /* list of function parameters */ - PyObject *ste_children; /* list of child blocks */ - PyObject *ste_directives;/* locations of global and nonlocal statements */ - _Py_block_ty ste_type; - int ste_nested; /* true if block is nested */ - unsigned ste_free : 1; /* true if block has free variables */ - unsigned ste_child_free : 1; /* true if a child block has free vars, - including free refs to globals */ - unsigned ste_generator : 1; /* true if namespace is a generator */ - unsigned ste_coroutine : 1; /* true if namespace is a coroutine */ - _Py_comprehension_ty ste_comprehension; /* Kind of comprehension (if any) */ - unsigned ste_varargs : 1; /* true if block has varargs */ - unsigned ste_varkeywords : 1; /* true if block has varkeywords */ - unsigned ste_returns_value : 1; /* true if namespace uses return with - an argument */ - unsigned ste_needs_class_closure : 1; /* for class scopes, true if a - closure over __class__ - should be created */ - unsigned ste_needs_classdict : 1; /* for class scopes, true if a closure - over the class dict should be created */ - unsigned ste_comp_inlined : 1; /* true if this comprehension is inlined */ - unsigned ste_comp_iter_target : 1; /* true if visiting comprehension target */ - unsigned ste_can_see_class_scope : 1; /* true if this block can see names bound in an - enclosing class scope */ - int ste_comp_iter_expr; /* non-zero if visiting a comprehension range expression */ - int ste_lineno; /* first line of block */ - int ste_col_offset; /* offset of first line of block */ - int ste_end_lineno; /* end line of block */ - int ste_end_col_offset; /* end offset of first line of block */ - int ste_opt_lineno; /* lineno of last exec or import * */ - int ste_opt_col_offset; /* offset of last exec or import * */ - struct symtable *ste_table; -} PySTEntryObject; - -extern PyTypeObject PySTEntry_Type; - -#define PySTEntry_Check(op) Py_IS_TYPE((op), &PySTEntry_Type) - -extern long _PyST_GetSymbol(PySTEntryObject *, PyObject *); -extern int _PyST_GetScope(PySTEntryObject *, PyObject *); -extern int _PyST_IsFunctionLike(PySTEntryObject *); - -extern struct symtable* _PySymtable_Build( - struct _mod *mod, - PyObject *filename, - PyFutureFeatures *future); -PyAPI_FUNC(PySTEntryObject *) PySymtable_Lookup(struct symtable *, void *); - -extern void _PySymtable_Free(struct symtable *); - -extern PyObject* _Py_Mangle(PyObject *p, PyObject *name); - -/* Flags for def-use information */ - -#define DEF_GLOBAL 1 /* global stmt */ -#define DEF_LOCAL 2 /* assignment in code block */ -#define DEF_PARAM 2<<1 /* formal parameter */ -#define DEF_NONLOCAL 2<<2 /* nonlocal stmt */ -#define USE 2<<3 /* name is used */ -#define DEF_FREE 2<<4 /* name used but not defined in nested block */ -#define DEF_FREE_CLASS 2<<5 /* free variable from class's method */ -#define DEF_IMPORT 2<<6 /* assignment occurred via import */ -#define DEF_ANNOT 2<<7 /* this name is annotated */ -#define DEF_COMP_ITER 2<<8 /* this name is a comprehension iteration variable */ -#define DEF_TYPE_PARAM 2<<9 /* this name is a type parameter */ -#define DEF_COMP_CELL 2<<10 /* this name is a cell in an inlined comprehension */ - -#define DEF_BOUND (DEF_LOCAL | DEF_PARAM | DEF_IMPORT) - -/* GLOBAL_EXPLICIT and GLOBAL_IMPLICIT are used internally by the symbol - table. GLOBAL is returned from PyST_GetScope() for either of them. - It is stored in ste_symbols at bits 13-16. -*/ -#define SCOPE_OFFSET 12 -#define SCOPE_MASK (DEF_GLOBAL | DEF_LOCAL | DEF_PARAM | DEF_NONLOCAL) - -#define LOCAL 1 -#define GLOBAL_EXPLICIT 2 -#define GLOBAL_IMPLICIT 3 -#define FREE 4 -#define CELL 5 - -#define GENERATOR 1 -#define GENERATOR_EXPRESSION 2 - -// Used by symtablemodule.c -extern struct symtable* _Py_SymtableStringObjectFlags( - const char *str, - PyObject *filename, - int start, - PyCompilerFlags *flags); - -int _PyFuture_FromAST( - struct _mod * mod, - PyObject *filename, - PyFutureFeatures* futures); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_SYMTABLE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_sysmodule.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_sysmodule.h deleted file mode 100644 index b4b1feb..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_sysmodule.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef Py_INTERNAL_SYSMODULE_H -#define Py_INTERNAL_SYSMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -PyAPI_FUNC(int) _PySys_Audit( - PyThreadState *tstate, - const char *event, - const char *argFormat, - ...); - -/* We want minimal exposure of this function, so use extern rather than - PyAPI_FUNC() to not export the symbol. */ -extern void _PySys_ClearAuditHooks(PyThreadState *tstate); - -PyAPI_FUNC(int) _PySys_SetAttr(PyObject *, PyObject *); - -extern int _PySys_ClearAttrString(PyInterpreterState *interp, - const char *name, int verbose); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_SYSMODULE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_time.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_time.h deleted file mode 100644 index 949170c..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_time.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef Py_INTERNAL_TIME_H -#define Py_INTERNAL_TIME_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -struct _time_runtime_state { -#ifdef HAVE_TIMES - int ticks_per_second_initialized; - long ticks_per_second; -#else - int _not_used; -#endif -}; - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_TIME_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_token.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_token.h deleted file mode 100644 index c02e637..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_token.h +++ /dev/null @@ -1,108 +0,0 @@ -/* Auto-generated by Tools/build/generate_token.py */ - -/* Token types */ -#ifndef Py_INTERNAL_TOKEN_H -#define Py_INTERNAL_TOKEN_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#undef TILDE /* Prevent clash of our definition with system macro. Ex AIX, ioctl.h */ - -#define ENDMARKER 0 -#define NAME 1 -#define NUMBER 2 -#define STRING 3 -#define NEWLINE 4 -#define INDENT 5 -#define DEDENT 6 -#define LPAR 7 -#define RPAR 8 -#define LSQB 9 -#define RSQB 10 -#define COLON 11 -#define COMMA 12 -#define SEMI 13 -#define PLUS 14 -#define MINUS 15 -#define STAR 16 -#define SLASH 17 -#define VBAR 18 -#define AMPER 19 -#define LESS 20 -#define GREATER 21 -#define EQUAL 22 -#define DOT 23 -#define PERCENT 24 -#define LBRACE 25 -#define RBRACE 26 -#define EQEQUAL 27 -#define NOTEQUAL 28 -#define LESSEQUAL 29 -#define GREATEREQUAL 30 -#define TILDE 31 -#define CIRCUMFLEX 32 -#define LEFTSHIFT 33 -#define RIGHTSHIFT 34 -#define DOUBLESTAR 35 -#define PLUSEQUAL 36 -#define MINEQUAL 37 -#define STAREQUAL 38 -#define SLASHEQUAL 39 -#define PERCENTEQUAL 40 -#define AMPEREQUAL 41 -#define VBAREQUAL 42 -#define CIRCUMFLEXEQUAL 43 -#define LEFTSHIFTEQUAL 44 -#define RIGHTSHIFTEQUAL 45 -#define DOUBLESTAREQUAL 46 -#define DOUBLESLASH 47 -#define DOUBLESLASHEQUAL 48 -#define AT 49 -#define ATEQUAL 50 -#define RARROW 51 -#define ELLIPSIS 52 -#define COLONEQUAL 53 -#define EXCLAMATION 54 -#define OP 55 -#define AWAIT 56 -#define ASYNC 57 -#define TYPE_IGNORE 58 -#define TYPE_COMMENT 59 -#define SOFT_KEYWORD 60 -#define FSTRING_START 61 -#define FSTRING_MIDDLE 62 -#define FSTRING_END 63 -#define COMMENT 64 -#define NL 65 -#define ERRORTOKEN 66 -#define N_TOKENS 68 -#define NT_OFFSET 256 - -/* Special definitions for cooperation with parser */ - -#define ISTERMINAL(x) ((x) < NT_OFFSET) -#define ISNONTERMINAL(x) ((x) >= NT_OFFSET) -#define ISEOF(x) ((x) == ENDMARKER) -#define ISWHITESPACE(x) ((x) == ENDMARKER || \ - (x) == NEWLINE || \ - (x) == INDENT || \ - (x) == DEDENT) -#define ISSTRINGLIT(x) ((x) == STRING || \ - (x) == FSTRING_MIDDLE) - - -// Symbols exported for test_peg_generator -PyAPI_DATA(const char * const) _PyParser_TokenNames[]; /* Token names */ -PyAPI_FUNC(int) _PyToken_OneChar(int); -PyAPI_FUNC(int) _PyToken_TwoChars(int, int); -PyAPI_FUNC(int) _PyToken_ThreeChars(int, int, int); - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_TOKEN_H diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_traceback.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_traceback.h deleted file mode 100644 index c393b2c..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_traceback.h +++ /dev/null @@ -1,101 +0,0 @@ -#ifndef Py_INTERNAL_TRACEBACK_H -#define Py_INTERNAL_TRACEBACK_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* Write the Python traceback into the file 'fd'. For example: - - Traceback (most recent call first): - File "xxx", line xxx in - File "xxx", line xxx in - ... - File "xxx", line xxx in - - This function is written for debug purpose only, to dump the traceback in - the worst case: after a segmentation fault, at fatal error, etc. That's why, - it is very limited. Strings are truncated to 100 characters and encoded to - ASCII with backslashreplace. It doesn't write the source code, only the - function name, filename and line number of each frame. Write only the first - 100 frames: if the traceback is truncated, write the line " ...". - - This function is signal safe. */ - -PyAPI_FUNC(void) _Py_DumpTraceback( - int fd, - PyThreadState *tstate); - -/* Write the traceback of all threads into the file 'fd'. current_thread can be - NULL. - - Return NULL on success, or an error message on error. - - This function is written for debug purpose only. It calls - _Py_DumpTraceback() for each thread, and so has the same limitations. It - only write the traceback of the first 100 threads: write "..." if there are - more threads. - - If current_tstate is NULL, the function tries to get the Python thread state - of the current thread. It is not an error if the function is unable to get - the current Python thread state. - - If interp is NULL, the function tries to get the interpreter state from - the current Python thread state, or from - _PyGILState_GetInterpreterStateUnsafe() in last resort. - - It is better to pass NULL to interp and current_tstate, the function tries - different options to retrieve this information. - - This function is signal safe. */ - -PyAPI_FUNC(const char*) _Py_DumpTracebackThreads( - int fd, - PyInterpreterState *interp, - PyThreadState *current_tstate); - -/* Write a Unicode object into the file descriptor fd. Encode the string to - ASCII using the backslashreplace error handler. - - Do nothing if text is not a Unicode object. The function accepts Unicode - string which is not ready (PyUnicode_WCHAR_KIND). - - This function is signal safe. */ -PyAPI_FUNC(void) _Py_DumpASCII(int fd, PyObject *text); - -/* Format an integer as decimal into the file descriptor fd. - - This function is signal safe. */ -PyAPI_FUNC(void) _Py_DumpDecimal( - int fd, - size_t value); - -/* Format an integer as hexadecimal with width digits into fd file descriptor. - The function is signal safe. */ -PyAPI_FUNC(void) _Py_DumpHexadecimal( - int fd, - uintptr_t value, - Py_ssize_t width); - -PyAPI_FUNC(PyObject*) _PyTraceBack_FromFrame( - PyObject *tb_next, - PyFrameObject *frame); - -#define EXCEPTION_TB_HEADER "Traceback (most recent call last):\n" -#define EXCEPTION_GROUP_TB_HEADER "Exception Group Traceback (most recent call last):\n" - -/* Write the traceback tb to file f. Prefix each line with - indent spaces followed by the margin (if it is not NULL). */ -PyAPI_FUNC(int) _PyTraceBack_Print_Indented( - PyObject *tb, int indent, const char* margin, - const char *header_margin, const char *header, PyObject *f); -PyAPI_FUNC(int) _Py_WriteIndentedMargin(int, const char*, PyObject *); -PyAPI_FUNC(int) _Py_WriteIndent(int, PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_TRACEBACK_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_tracemalloc.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_tracemalloc.h deleted file mode 100644 index d086adc..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_tracemalloc.h +++ /dev/null @@ -1,123 +0,0 @@ -#ifndef Py_INTERNAL_TRACEMALLOC_H -#define Py_INTERNAL_TRACEMALLOC_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_hashtable.h" // _Py_hashtable_t - - -/* Trace memory blocks allocated by PyMem_RawMalloc() */ -#define TRACE_RAW_MALLOC - - -struct _PyTraceMalloc_Config { - /* Module initialized? - Variable protected by the GIL */ - enum { - TRACEMALLOC_NOT_INITIALIZED, - TRACEMALLOC_INITIALIZED, - TRACEMALLOC_FINALIZED - } initialized; - - /* Is tracemalloc tracing memory allocations? - Variable protected by the GIL */ - int tracing; - - /* limit of the number of frames in a traceback, 1 by default. - Variable protected by the GIL. */ - int max_nframe; -}; - - -/* Pack the frame_t structure to reduce the memory footprint on 64-bit - architectures: 12 bytes instead of 16. */ -#if defined(_MSC_VER) -#pragma pack(push, 4) -#endif - -struct -#ifdef __GNUC__ -__attribute__((packed)) -#endif -tracemalloc_frame { - /* filename cannot be NULL: "" is used if the Python frame - filename is NULL */ - PyObject *filename; - unsigned int lineno; -}; -#ifdef _MSC_VER -#pragma pack(pop) -#endif - -struct tracemalloc_traceback { - Py_uhash_t hash; - /* Number of frames stored */ - uint16_t nframe; - /* Total number of frames the traceback had */ - uint16_t total_nframe; - struct tracemalloc_frame frames[1]; -}; - - -struct _tracemalloc_runtime_state { - struct _PyTraceMalloc_Config config; - - /* Protected by the GIL */ - struct { - PyMemAllocatorEx mem; - PyMemAllocatorEx raw; - PyMemAllocatorEx obj; - } allocators; - -#if defined(TRACE_RAW_MALLOC) - PyThread_type_lock tables_lock; -#endif - /* Size in bytes of currently traced memory. - Protected by TABLES_LOCK(). */ - size_t traced_memory; - /* Peak size in bytes of traced memory. - Protected by TABLES_LOCK(). */ - size_t peak_traced_memory; - /* Hash table used as a set to intern filenames: - PyObject* => PyObject*. - Protected by the GIL */ - _Py_hashtable_t *filenames; - /* Buffer to store a new traceback in traceback_new(). - Protected by the GIL. */ - struct tracemalloc_traceback *traceback; - /* Hash table used as a set to intern tracebacks: - traceback_t* => traceback_t* - Protected by the GIL */ - _Py_hashtable_t *tracebacks; - /* pointer (void*) => trace (trace_t*). - Protected by TABLES_LOCK(). */ - _Py_hashtable_t *traces; - /* domain (unsigned int) => traces (_Py_hashtable_t). - Protected by TABLES_LOCK(). */ - _Py_hashtable_t *domains; - - struct tracemalloc_traceback empty_traceback; - - Py_tss_t reentrant_key; -}; - -#define _tracemalloc_runtime_state_INIT \ - { \ - .config = { \ - .initialized = TRACEMALLOC_NOT_INITIALIZED, \ - .tracing = 0, \ - .max_nframe = 1, \ - }, \ - .reentrant_key = Py_tss_NEEDS_INIT, \ - } - - -#ifdef __cplusplus -} -#endif -#endif // !Py_INTERNAL_TRACEMALLOC_H diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_tuple.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_tuple.h deleted file mode 100644 index 335edad..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_tuple.h +++ /dev/null @@ -1,79 +0,0 @@ -#ifndef Py_INTERNAL_TUPLE_H -#define Py_INTERNAL_TUPLE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "tupleobject.h" /* _PyTuple_CAST() */ - - -/* runtime lifecycle */ - -extern PyStatus _PyTuple_InitGlobalObjects(PyInterpreterState *); -extern void _PyTuple_Fini(PyInterpreterState *); - - -/* other API */ - -// PyTuple_MAXSAVESIZE - largest tuple to save on free list -// PyTuple_MAXFREELIST - maximum number of tuples of each size to save - -#if defined(PyTuple_MAXSAVESIZE) && PyTuple_MAXSAVESIZE <= 0 - // A build indicated that tuple freelists should not be used. -# define PyTuple_NFREELISTS 0 -# undef PyTuple_MAXSAVESIZE -# undef PyTuple_MAXFREELIST - -#elif !defined(WITH_FREELISTS) -# define PyTuple_NFREELISTS 0 -# undef PyTuple_MAXSAVESIZE -# undef PyTuple_MAXFREELIST - -#else - // We are using a freelist for tuples. -# ifndef PyTuple_MAXSAVESIZE -# define PyTuple_MAXSAVESIZE 20 -# endif -# define PyTuple_NFREELISTS PyTuple_MAXSAVESIZE -# ifndef PyTuple_MAXFREELIST -# define PyTuple_MAXFREELIST 2000 -# endif -#endif - -struct _Py_tuple_state { -#if PyTuple_NFREELISTS > 0 - /* There is one freelist for each size from 1 to PyTuple_MAXSAVESIZE. - The empty tuple is handled separately. - - Each tuple stored in the array is the head of the linked list - (and the next available tuple) for that size. The actual tuple - object is used as the linked list node, with its first item - (ob_item[0]) pointing to the next node (i.e. the previous head). - Each linked list is initially NULL. */ - PyTupleObject *free_list[PyTuple_NFREELISTS]; - int numfree[PyTuple_NFREELISTS]; -#else - char _unused; // Empty structs are not allowed. -#endif -}; - -#define _PyTuple_ITEMS(op) _Py_RVALUE(_PyTuple_CAST(op)->ob_item) - -extern PyObject *_PyTuple_FromArray(PyObject *const *, Py_ssize_t); -extern PyObject *_PyTuple_FromArraySteal(PyObject *const *, Py_ssize_t); - - -typedef struct { - PyObject_HEAD - Py_ssize_t it_index; - PyTupleObject *it_seq; /* Set to NULL when iterator is exhausted */ -} _PyTupleIterObject; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_TUPLE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_typeobject.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_typeobject.h deleted file mode 100644 index 63f76fc..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_typeobject.h +++ /dev/null @@ -1,149 +0,0 @@ -#ifndef Py_INTERNAL_TYPEOBJECT_H -#define Py_INTERNAL_TYPEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#include "pycore_moduleobject.h" - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - - -/* state */ - -#define _Py_TYPE_BASE_VERSION_TAG (2<<16) -#define _Py_MAX_GLOBAL_TYPE_VERSION_TAG (_Py_TYPE_BASE_VERSION_TAG - 1) - -struct _types_runtime_state { - /* Used to set PyTypeObject.tp_version_tag for core static types. */ - // bpo-42745: next_version_tag remains shared by all interpreters - // because of static types. - unsigned int next_version_tag; -}; - - -// Type attribute lookup cache: speed up attribute and method lookups, -// see _PyType_Lookup(). -struct type_cache_entry { - unsigned int version; // initialized from type->tp_version_tag - PyObject *name; // reference to exactly a str or None - PyObject *value; // borrowed reference or NULL -}; - -#define MCACHE_SIZE_EXP 12 - -struct type_cache { - struct type_cache_entry hashtable[1 << MCACHE_SIZE_EXP]; -}; - -/* For now we hard-code this to a value for which we are confident - all the static builtin types will fit (for all builds). */ -#define _Py_MAX_STATIC_BUILTIN_TYPES 200 - -typedef struct { - PyTypeObject *type; - int readying; - int ready; - // XXX tp_dict can probably be statically allocated, - // instead of dynamically and stored on the interpreter. - PyObject *tp_dict; - PyObject *tp_subclasses; - /* We never clean up weakrefs for static builtin types since - they will effectively never get triggered. However, there - are also some diagnostic uses for the list of weakrefs, - so we still keep it. */ - PyObject *tp_weaklist; -} static_builtin_state; - -struct types_state { - /* Used to set PyTypeObject.tp_version_tag. - It starts at _Py_MAX_GLOBAL_TYPE_VERSION_TAG + 1, - where all those lower numbers are used for core static types. */ - unsigned int next_version_tag; - - struct type_cache type_cache; - size_t num_builtins_initialized; - static_builtin_state builtins[_Py_MAX_STATIC_BUILTIN_TYPES]; -}; - - -/* runtime lifecycle */ - -extern PyStatus _PyTypes_InitTypes(PyInterpreterState *); -extern void _PyTypes_FiniTypes(PyInterpreterState *); -extern void _PyTypes_Fini(PyInterpreterState *); - - -/* other API */ - -/* Length of array of slotdef pointers used to store slots with the - same __name__. There should be at most MAX_EQUIV-1 slotdef entries with - the same __name__, for any __name__. Since that's a static property, it is - appropriate to declare fixed-size arrays for this. */ -#define MAX_EQUIV 10 - -typedef struct wrapperbase pytype_slotdef; - - -static inline PyObject ** -_PyStaticType_GET_WEAKREFS_LISTPTR(static_builtin_state *state) -{ - assert(state != NULL); - return &state->tp_weaklist; -} - -/* Like PyType_GetModuleState, but skips verification - * that type is a heap type with an associated module */ -static inline void * -_PyType_GetModuleState(PyTypeObject *type) -{ - assert(PyType_Check(type)); - assert(type->tp_flags & Py_TPFLAGS_HEAPTYPE); - PyHeapTypeObject *et = (PyHeapTypeObject *)type; - assert(et->ht_module); - PyModuleObject *mod = (PyModuleObject *)(et->ht_module); - assert(mod != NULL); - return mod->md_state; -} - - -extern int _PyStaticType_InitBuiltin(PyInterpreterState *, PyTypeObject *type); -extern static_builtin_state * _PyStaticType_GetState(PyInterpreterState *, PyTypeObject *); -extern void _PyStaticType_ClearWeakRefs(PyInterpreterState *, PyTypeObject *type); -extern void _PyStaticType_Dealloc(PyInterpreterState *, PyTypeObject *); - -PyAPI_FUNC(PyObject *) _PyType_GetDict(PyTypeObject *); -extern PyObject * _PyType_GetBases(PyTypeObject *type); -extern PyObject * _PyType_GetMRO(PyTypeObject *type); -extern PyObject* _PyType_GetSubclasses(PyTypeObject *); -extern int _PyType_HasSubclasses(PyTypeObject *); - -// PyType_Ready() must be called if _PyType_IsReady() is false. -// See also the Py_TPFLAGS_READY flag. -static inline int -_PyType_IsReady(PyTypeObject *type) -{ - return _PyType_GetDict(type) != NULL; -} - -PyObject * -_Py_type_getattro_impl(PyTypeObject *type, PyObject *name, int *suppress_missing_attribute); -PyObject * -_Py_type_getattro(PyTypeObject *type, PyObject *name); - -extern PyObject* _Py_BaseObject_RichCompare(PyObject* self, PyObject* other, int op); - -PyObject *_Py_slot_tp_getattro(PyObject *self, PyObject *name); -PyObject *_Py_slot_tp_getattr_hook(PyObject *self, PyObject *name); - -PyAPI_DATA(PyTypeObject) _PyBufferWrapper_Type; - -PyObject * -_PySuper_Lookup(PyTypeObject *su_type, PyObject *su_obj, PyObject *name, int *meth_found); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_TYPEOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_typevarobject.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_typevarobject.h deleted file mode 100644 index c9fa97d..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_typevarobject.h +++ /dev/null @@ -1,24 +0,0 @@ -#ifndef Py_INTERNAL_TYPEVAROBJECT_H -#define Py_INTERNAL_TYPEVAROBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern PyObject *_Py_make_typevar(PyObject *, PyObject *, PyObject *); -extern PyObject *_Py_make_paramspec(PyThreadState *, PyObject *); -extern PyObject *_Py_make_typevartuple(PyThreadState *, PyObject *); -extern PyObject *_Py_make_typealias(PyThreadState *, PyObject *); -extern PyObject *_Py_subscript_generic(PyThreadState *, PyObject *); -extern int _Py_initialize_generic(PyInterpreterState *); -extern void _Py_clear_generic_types(PyInterpreterState *); - -extern PyTypeObject _PyTypeAlias_Type; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_TYPEVAROBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_ucnhash.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_ucnhash.h deleted file mode 100644 index 187dd68..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_ucnhash.h +++ /dev/null @@ -1,34 +0,0 @@ -/* Unicode name database interface */ -#ifndef Py_INTERNAL_UCNHASH_H -#define Py_INTERNAL_UCNHASH_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* revised ucnhash CAPI interface (exported through a "wrapper") */ - -#define PyUnicodeData_CAPSULE_NAME "unicodedata._ucnhash_CAPI" - -typedef struct { - - /* Get name for a given character code. - Returns non-zero if success, zero if not. - Does not set Python exceptions. */ - int (*getname)(Py_UCS4 code, char* buffer, int buflen, - int with_alias_and_seq); - - /* Get character code for a given name. - Same error handling as for getname(). */ - int (*getcode)(const char* name, int namelen, Py_UCS4* code, - int with_named_seq); - -} _PyUnicode_Name_CAPI; - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_UCNHASH_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_unicodeobject.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_unicodeobject.h deleted file mode 100644 index 1bb0f36..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_unicodeobject.h +++ /dev/null @@ -1,70 +0,0 @@ -#ifndef Py_INTERNAL_UNICODEOBJECT_H -#define Py_INTERNAL_UNICODEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -#include "pycore_fileutils.h" // _Py_error_handler -#include "pycore_ucnhash.h" // _PyUnicode_Name_CAPI - -void _PyUnicode_ExactDealloc(PyObject *op); -Py_ssize_t _PyUnicode_InternedSize(void); - -/* runtime lifecycle */ - -extern void _PyUnicode_InitState(PyInterpreterState *); -extern PyStatus _PyUnicode_InitGlobalObjects(PyInterpreterState *); -extern PyStatus _PyUnicode_InitTypes(PyInterpreterState *); -extern void _PyUnicode_Fini(PyInterpreterState *); -extern void _PyUnicode_FiniTypes(PyInterpreterState *); - -extern PyTypeObject _PyUnicodeASCIIIter_Type; - -/* other API */ - -struct _Py_unicode_runtime_ids { - PyThread_type_lock lock; - // next_index value must be preserved when Py_Initialize()/Py_Finalize() - // is called multiple times: see _PyUnicode_FromId() implementation. - Py_ssize_t next_index; -}; - -struct _Py_unicode_runtime_state { - struct _Py_unicode_runtime_ids ids; -}; - -/* fs_codec.encoding is initialized to NULL. - Later, it is set to a non-NULL string by _PyUnicode_InitEncodings(). */ -struct _Py_unicode_fs_codec { - char *encoding; // Filesystem encoding (encoded to UTF-8) - int utf8; // encoding=="utf-8"? - char *errors; // Filesystem errors (encoded to UTF-8) - _Py_error_handler error_handler; -}; - -struct _Py_unicode_ids { - Py_ssize_t size; - PyObject **array; -}; - -struct _Py_unicode_state { - struct _Py_unicode_fs_codec fs_codec; - - _PyUnicode_Name_CAPI *ucnhash_capi; - - // Unicode identifiers (_Py_Identifier): see _PyUnicode_FromId() - struct _Py_unicode_ids ids; -}; - -extern void _PyUnicode_InternInPlace(PyInterpreterState *interp, PyObject **p); -extern void _PyUnicode_ClearInterned(PyInterpreterState *interp); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_UNICODEOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_unicodeobject_generated.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_unicodeobject_generated.h deleted file mode 100644 index 9b47009..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_unicodeobject_generated.h +++ /dev/null @@ -1,2093 +0,0 @@ -#ifndef Py_INTERNAL_UNICODEOBJECT_GENERATED_H -#define Py_INTERNAL_UNICODEOBJECT_GENERATED_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -/* The following is auto-generated by Tools/build/generate_global_objects.py. */ -static inline void -_PyUnicode_InitStaticStrings(PyInterpreterState *interp) { - PyObject *string; - string = &_Py_ID(CANCELLED); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(FINISHED); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(False); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(JSONDecodeError); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(PENDING); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(Py_Repr); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(TextIOWrapper); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(True); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(WarningMessage); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_WindowsConsoleIO); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__IOBase_closed); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__abc_tpflags__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__abs__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__abstractmethods__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__add__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__aenter__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__aexit__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__aiter__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__all__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__and__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__anext__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__annotations__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__args__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__asyncio_running_event_loop__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__await__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__bases__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__bool__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__buffer__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__build_class__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__builtins__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__bytes__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__call__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__cantrace__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__class__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__class_getitem__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__classcell__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__classdict__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__classdictcell__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__complex__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__contains__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__copy__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__ctypes_from_outparam__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__del__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__delattr__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__delete__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__delitem__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__dict__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__dictoffset__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__dir__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__divmod__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__doc__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__enter__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__eq__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__exit__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__file__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__float__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__floordiv__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__format__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__fspath__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__ge__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__get__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__getattr__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__getattribute__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__getinitargs__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__getitem__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__getnewargs__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__getnewargs_ex__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__getstate__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__gt__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__hash__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__iadd__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__iand__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__ifloordiv__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__ilshift__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__imatmul__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__imod__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__import__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__imul__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__index__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__init__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__init_subclass__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__instancecheck__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__int__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__invert__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__ior__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__ipow__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__irshift__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__isabstractmethod__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__isub__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__iter__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__itruediv__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__ixor__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__le__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__len__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__length_hint__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__lltrace__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__loader__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__lshift__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__lt__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__main__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__matmul__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__missing__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__mod__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__module__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__mro_entries__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__mul__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__name__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__ne__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__neg__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__new__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__newobj__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__newobj_ex__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__next__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__notes__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__or__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__orig_class__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__origin__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__package__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__parameters__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__path__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__pos__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__pow__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__prepare__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__qualname__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__radd__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rand__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rdivmod__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__reduce__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__reduce_ex__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__release_buffer__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__repr__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__reversed__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rfloordiv__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rlshift__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rmatmul__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rmod__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rmul__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__ror__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__round__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rpow__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rrshift__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rshift__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rsub__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rtruediv__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__rxor__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__set__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__set_name__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__setattr__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__setitem__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__setstate__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__sizeof__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__slotnames__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__slots__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__spec__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__str__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__sub__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__subclasscheck__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__subclasshook__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__truediv__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__trunc__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__type_params__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__typing_is_unpacked_typevartuple__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__typing_prepare_subst__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__typing_subst__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__typing_unpacked_tuple_args__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__warningregistry__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__weaklistoffset__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__weakref__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(__xor__); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_abc_impl); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_abstract_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_active); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_annotation); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_anonymous_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_argtypes_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_as_parameter_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_asyncio_future_blocking); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_blksize); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_bootstrap); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_check_retval_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_dealloc_warn); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_feature_version); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_fields_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_finalizing); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_find_and_load); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_fix_up_module); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_flags_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_get_sourcefile); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_handle_fromlist); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_initializing); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_io); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_is_text_encoding); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_length_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_limbo); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_lock_unlock_module); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_loop); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_needs_com_addref_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_pack_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_restype_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_showwarnmsg); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_shutdown); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_slotnames); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_strptime_datetime); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_swappedbytes_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_type_); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_uninitialized_submodules); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_warn_unawaited_coroutine); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(_xoptions); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(a); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(abs_tol); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(access); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(add); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(add_done_callback); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(after_in_child); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(after_in_parent); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(aggregate_class); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(alias); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(append); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(arg); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(argdefs); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(args); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(arguments); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(argv); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(as_integer_ratio); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(ast); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(attribute); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(authorizer_callback); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(autocommit); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(b); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(backtick); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(base); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(before); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(big); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(binary_form); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(block); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(bound); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(buffer); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(buffer_callback); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(buffer_size); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(buffering); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(buffers); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(bufsize); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(builtins); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(byteorder); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(bytes); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(bytes_per_sep); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(c); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(c_call); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(c_exception); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(c_return); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(cached_statements); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(cadata); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(cafile); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(call); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(call_exception_handler); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(call_soon); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(cancel); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(capath); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(category); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(cb_type); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(certfile); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(check_same_thread); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(clear); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(close); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(closed); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(closefd); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(closure); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_argcount); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_cellvars); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_code); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_consts); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_exceptiontable); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_filename); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_firstlineno); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_flags); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_freevars); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_kwonlyargcount); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_linetable); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_name); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_names); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_nlocals); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_posonlyargcount); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_qualname); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_stacksize); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(co_varnames); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(code); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(command); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(comment_factory); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(compile_mode); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(consts); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(context); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(contravariant); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(cookie); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(copy); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(copyreg); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(coro); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(count); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(covariant); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(cwd); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(d); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(data); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(database); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(decode); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(decoder); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(default); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(defaultaction); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(delete); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(depth); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(detect_types); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(deterministic); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(device); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(dict); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(dictcomp); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(difference_update); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(digest); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(digest_size); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(digestmod); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(dir_fd); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(discard); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(dispatch_table); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(displayhook); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(dklen); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(doc); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(dont_inherit); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(dst); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(dst_dir_fd); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(duration); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(e); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(eager_start); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(effective_ids); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(element_factory); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(encode); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(encoding); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(end); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(end_lineno); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(end_offset); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(endpos); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(entrypoint); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(env); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(errors); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(event); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(eventmask); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(exc_type); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(exc_value); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(excepthook); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(exception); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(existing_file_name); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(exp); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(extend); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(extra_tokens); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(facility); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(factory); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(false); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(family); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fanout); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fd); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fd2); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fdel); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fget); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(file); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(file_actions); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(filename); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fileno); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(filepath); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fillvalue); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(filters); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(final); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(find_class); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fix_imports); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(flags); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(flush); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(follow_symlinks); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(format); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(frequency); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(from_param); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fromlist); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fromtimestamp); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fromutc); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(fset); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(func); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(future); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(generation); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(genexpr); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(get); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(get_debug); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(get_event_loop); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(get_loop); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(get_source); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(getattr); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(getstate); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(gid); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(globals); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(groupindex); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(groups); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(handle); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(hash_name); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(header); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(headers); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(hi); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(hook); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(id); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(ident); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(ignore); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(imag); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(importlib); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(in_fd); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(incoming); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(indexgroup); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(inf); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(infer_variance); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(inheritable); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(initial); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(initial_bytes); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(initial_value); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(initval); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(inner_size); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(input); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(insert_comments); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(insert_pis); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(instructions); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(intern); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(intersection); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(is_running); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(isatty); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(isinstance); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(isoformat); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(isolation_level); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(istext); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(item); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(items); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(iter); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(iterable); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(iterations); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(join); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(jump); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(keepends); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(key); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(keyfile); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(keys); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(kind); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(kw); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(kw1); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(kw2); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(lambda); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(last); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(last_exc); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(last_node); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(last_traceback); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(last_type); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(last_value); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(latin1); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(leaf_size); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(len); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(length); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(level); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(limit); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(line); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(line_buffering); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(lineno); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(listcomp); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(little); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(lo); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(locale); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(locals); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(logoption); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(loop); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(mapping); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(match); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(max_length); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(maxdigits); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(maxevents); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(maxmem); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(maxsplit); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(maxvalue); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(memLevel); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(memlimit); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(message); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(metaclass); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(metadata); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(method); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(mod); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(mode); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(module); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(module_globals); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(modules); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(mro); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(msg); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(mycmp); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(n); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(n_arg); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(n_fields); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(n_sequence_fields); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(n_unnamed_fields); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(name); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(name_from); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(namespace_separator); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(namespaces); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(narg); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(ndigits); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(new_file_name); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(new_limit); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(newline); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(newlines); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(next); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(nlocals); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(node_depth); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(node_offset); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(ns); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(nstype); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(nt); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(null); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(number); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(obj); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(object); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(offset); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(offset_dst); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(offset_src); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(on_type_read); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(onceregistry); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(only_keys); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(oparg); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(opcode); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(open); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(opener); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(operation); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(optimize); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(options); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(order); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(origin); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(out_fd); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(outgoing); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(overlapped); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(owner); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(p); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(pages); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(parent); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(password); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(path); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(pattern); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(peek); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(persistent_id); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(persistent_load); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(person); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(pi_factory); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(pid); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(policy); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(pos); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(pos1); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(pos2); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(posix); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(print_file_and_line); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(priority); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(progress); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(progress_handler); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(progress_routine); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(proto); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(protocol); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(ps1); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(ps2); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(query); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(quotetabs); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(r); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(raw); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(read); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(read1); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(readable); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(readall); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(readinto); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(readinto1); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(readline); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(readonly); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(real); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(reducer_override); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(registry); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(rel_tol); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(release); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(reload); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(repl); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(replace); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(reserved); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(reset); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(resetids); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(return); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(reverse); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(reversed); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(s); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(salt); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(sched_priority); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(scheduler); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(seek); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(seekable); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(selectors); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(self); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(send); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(sep); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(sequence); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(server_hostname); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(server_side); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(session); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(setcomp); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(setpgroup); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(setsid); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(setsigdef); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(setsigmask); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(setstate); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(shape); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(show_cmd); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(signed); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(size); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(sizehint); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(skip_file_prefixes); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(sleep); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(sock); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(sort); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(sound); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(source); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(source_traceback); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(src); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(src_dir_fd); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(stacklevel); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(start); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(statement); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(status); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(stderr); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(stdin); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(stdout); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(step); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(steps); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(store_name); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(strategy); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(strftime); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(strict); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(strict_mode); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(string); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(sub_key); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(symmetric_difference_update); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(tabsize); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(tag); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(target); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(target_is_directory); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(task); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(tb_frame); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(tb_lasti); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(tb_lineno); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(tb_next); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(tell); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(template); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(term); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(text); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(threading); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(throw); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(timeout); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(times); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(timetuple); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(top); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(trace_callback); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(traceback); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(trailers); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(translate); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(true); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(truncate); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(twice); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(txt); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(type); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(type_params); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(tz); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(tzname); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(uid); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(unlink); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(unraisablehook); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(uri); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(usedforsecurity); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(value); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(values); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(version); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(volume); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(warnings); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(warnoptions); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(wbits); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(week); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(weekday); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(which); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(who); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(withdata); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(writable); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(write); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(write_through); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(x); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(year); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); - string = &_Py_ID(zdict); - assert(_PyUnicode_CheckConsistency(string, 1)); - _PyUnicode_InternInPlace(interp, &string); -} -/* End auto-generated code */ -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_UNICODEOBJECT_GENERATED_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_unionobject.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_unionobject.h deleted file mode 100644 index 8726463..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_unionobject.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef Py_INTERNAL_UNIONOBJECT_H -#define Py_INTERNAL_UNIONOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -extern PyTypeObject _PyUnion_Type; -#define _PyUnion_Check(op) Py_IS_TYPE((op), &_PyUnion_Type) -extern PyObject *_Py_union_type_or(PyObject *, PyObject *); - -#define _PyGenericAlias_Check(op) PyObject_TypeCheck((op), &Py_GenericAliasType) -extern PyObject *_Py_subs_parameters(PyObject *, PyObject *, PyObject *, PyObject *); -extern PyObject *_Py_make_parameters(PyObject *); -extern PyObject *_Py_union_args(PyObject *self); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_UNIONOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/internal/pycore_warnings.h b/_Pre_Builds/_Python312_cpp/include/internal/pycore_warnings.h deleted file mode 100644 index efb4f1c..0000000 --- a/_Pre_Builds/_Python312_cpp/include/internal/pycore_warnings.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef Py_INTERNAL_WARNINGS_H -#define Py_INTERNAL_WARNINGS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_BUILD_CORE -# error "this header requires Py_BUILD_CORE define" -#endif - -struct _warnings_runtime_state { - /* Both 'filters' and 'onceregistry' can be set in warnings.py; - get_warnings_attr() will reset these variables accordingly. */ - PyObject *filters; /* List */ - PyObject *once_registry; /* Dict */ - PyObject *default_action; /* String */ - long filters_version; -}; - -extern int _PyWarnings_InitState(PyInterpreterState *interp); - -PyAPI_FUNC(PyObject*) _PyWarnings_Init(void); - -extern void _PyErr_WarnUnawaitedCoroutine(PyObject *coro); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERNAL_WARNINGS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/interpreteridobject.h b/_Pre_Builds/_Python312_cpp/include/interpreteridobject.h deleted file mode 100644 index 8432632..0000000 --- a/_Pre_Builds/_Python312_cpp/include/interpreteridobject.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef Py_INTERPRETERIDOBJECT_H -#define Py_INTERPRETERIDOBJECT_H - -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_INTERPRETERIDOBJECT_H -# include "cpython/interpreteridobject.h" -# undef Py_CPYTHON_INTERPRETERIDOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTERPRETERIDOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/intrcheck.h b/_Pre_Builds/_Python312_cpp/include/intrcheck.h deleted file mode 100644 index b8cc656..0000000 --- a/_Pre_Builds/_Python312_cpp/include/intrcheck.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef Py_INTRCHECK_H -#define Py_INTRCHECK_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(int) PyOS_InterruptOccurred(void); -#ifdef HAVE_FORK -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -PyAPI_FUNC(void) PyOS_BeforeFork(void); -PyAPI_FUNC(void) PyOS_AfterFork_Parent(void); -PyAPI_FUNC(void) PyOS_AfterFork_Child(void); -#endif -#endif -/* Deprecated, please use PyOS_AfterFork_Child() instead */ -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyOS_AfterFork(void); - -#ifndef Py_LIMITED_API -PyAPI_FUNC(int) _PyOS_IsMainThread(void); - -#ifdef MS_WINDOWS -/* windows.h is not included by Python.h so use void* instead of HANDLE */ -PyAPI_FUNC(void*) _PyOS_SigintEvent(void); -#endif -#endif /* !Py_LIMITED_API */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_INTRCHECK_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/iterobject.h b/_Pre_Builds/_Python312_cpp/include/iterobject.h deleted file mode 100644 index fff30f7..0000000 --- a/_Pre_Builds/_Python312_cpp/include/iterobject.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef Py_ITEROBJECT_H -#define Py_ITEROBJECT_H -/* Iterators (the basic kind, over a sequence) */ -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PySeqIter_Type; -PyAPI_DATA(PyTypeObject) PyCallIter_Type; -#ifdef Py_BUILD_CORE -extern PyTypeObject _PyAnextAwaitable_Type; -#endif - -#define PySeqIter_Check(op) Py_IS_TYPE((op), &PySeqIter_Type) - -PyAPI_FUNC(PyObject *) PySeqIter_New(PyObject *); - - -#define PyCallIter_Check(op) Py_IS_TYPE((op), &PyCallIter_Type) - -PyAPI_FUNC(PyObject *) PyCallIter_New(PyObject *, PyObject *); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ITEROBJECT_H */ - diff --git a/_Pre_Builds/_Python312_cpp/include/listobject.h b/_Pre_Builds/_Python312_cpp/include/listobject.h deleted file mode 100644 index 6b7041b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/listobject.h +++ /dev/null @@ -1,52 +0,0 @@ -/* List object interface - - Another generally useful object type is a list of object pointers. - This is a mutable type: the list items can be changed, and items can be - added or removed. Out-of-range indices or non-list objects are ignored. - - WARNING: PyList_SetItem does not increment the new item's reference count, - but does decrement the reference count of the item it replaces, if not nil. - It does *decrement* the reference count if it is *not* inserted in the list. - Similarly, PyList_GetItem does not increment the returned item's reference - count. -*/ - -#ifndef Py_LISTOBJECT_H -#define Py_LISTOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyList_Type; -PyAPI_DATA(PyTypeObject) PyListIter_Type; -PyAPI_DATA(PyTypeObject) PyListRevIter_Type; - -#define PyList_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_LIST_SUBCLASS) -#define PyList_CheckExact(op) Py_IS_TYPE((op), &PyList_Type) - -PyAPI_FUNC(PyObject *) PyList_New(Py_ssize_t size); -PyAPI_FUNC(Py_ssize_t) PyList_Size(PyObject *); - -PyAPI_FUNC(PyObject *) PyList_GetItem(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyList_SetItem(PyObject *, Py_ssize_t, PyObject *); -PyAPI_FUNC(int) PyList_Insert(PyObject *, Py_ssize_t, PyObject *); -PyAPI_FUNC(int) PyList_Append(PyObject *, PyObject *); - -PyAPI_FUNC(PyObject *) PyList_GetSlice(PyObject *, Py_ssize_t, Py_ssize_t); -PyAPI_FUNC(int) PyList_SetSlice(PyObject *, Py_ssize_t, Py_ssize_t, PyObject *); - -PyAPI_FUNC(int) PyList_Sort(PyObject *); -PyAPI_FUNC(int) PyList_Reverse(PyObject *); -PyAPI_FUNC(PyObject *) PyList_AsTuple(PyObject *); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_LISTOBJECT_H -# include "cpython/listobject.h" -# undef Py_CPYTHON_LISTOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LISTOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/longobject.h b/_Pre_Builds/_Python312_cpp/include/longobject.h deleted file mode 100644 index e090dd0..0000000 --- a/_Pre_Builds/_Python312_cpp/include/longobject.h +++ /dev/null @@ -1,91 +0,0 @@ -#ifndef Py_LONGOBJECT_H -#define Py_LONGOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Long (arbitrary precision) integer object interface */ - -// PyLong_Type is declared by object.h - -#define PyLong_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_LONG_SUBCLASS) -#define PyLong_CheckExact(op) Py_IS_TYPE((op), &PyLong_Type) - -PyAPI_FUNC(PyObject *) PyLong_FromLong(long); -PyAPI_FUNC(PyObject *) PyLong_FromUnsignedLong(unsigned long); -PyAPI_FUNC(PyObject *) PyLong_FromSize_t(size_t); -PyAPI_FUNC(PyObject *) PyLong_FromSsize_t(Py_ssize_t); -PyAPI_FUNC(PyObject *) PyLong_FromDouble(double); -PyAPI_FUNC(long) PyLong_AsLong(PyObject *); -PyAPI_FUNC(long) PyLong_AsLongAndOverflow(PyObject *, int *); -PyAPI_FUNC(Py_ssize_t) PyLong_AsSsize_t(PyObject *); -PyAPI_FUNC(size_t) PyLong_AsSize_t(PyObject *); -PyAPI_FUNC(unsigned long) PyLong_AsUnsignedLong(PyObject *); -PyAPI_FUNC(unsigned long) PyLong_AsUnsignedLongMask(PyObject *); -PyAPI_FUNC(PyObject *) PyLong_GetInfo(void); - -/* It may be useful in the future. I've added it in the PyInt -> PyLong - cleanup to keep the extra information. [CH] */ -#define PyLong_AS_LONG(op) PyLong_AsLong(op) - -/* Issue #1983: pid_t can be longer than a C long on some systems */ -#if !defined(SIZEOF_PID_T) || SIZEOF_PID_T == SIZEOF_INT -#define _Py_PARSE_PID "i" -#define PyLong_FromPid PyLong_FromLong -#define PyLong_AsPid PyLong_AsLong -#elif SIZEOF_PID_T == SIZEOF_LONG -#define _Py_PARSE_PID "l" -#define PyLong_FromPid PyLong_FromLong -#define PyLong_AsPid PyLong_AsLong -#elif defined(SIZEOF_LONG_LONG) && SIZEOF_PID_T == SIZEOF_LONG_LONG -#define _Py_PARSE_PID "L" -#define PyLong_FromPid PyLong_FromLongLong -#define PyLong_AsPid PyLong_AsLongLong -#else -#error "sizeof(pid_t) is neither sizeof(int), sizeof(long) or sizeof(long long)" -#endif /* SIZEOF_PID_T */ - -#if SIZEOF_VOID_P == SIZEOF_INT -# define _Py_PARSE_INTPTR "i" -# define _Py_PARSE_UINTPTR "I" -#elif SIZEOF_VOID_P == SIZEOF_LONG -# define _Py_PARSE_INTPTR "l" -# define _Py_PARSE_UINTPTR "k" -#elif defined(SIZEOF_LONG_LONG) && SIZEOF_VOID_P == SIZEOF_LONG_LONG -# define _Py_PARSE_INTPTR "L" -# define _Py_PARSE_UINTPTR "K" -#else -# error "void* different in size from int, long and long long" -#endif /* SIZEOF_VOID_P */ - -PyAPI_FUNC(double) PyLong_AsDouble(PyObject *); -PyAPI_FUNC(PyObject *) PyLong_FromVoidPtr(void *); -PyAPI_FUNC(void *) PyLong_AsVoidPtr(PyObject *); - -PyAPI_FUNC(PyObject *) PyLong_FromLongLong(long long); -PyAPI_FUNC(PyObject *) PyLong_FromUnsignedLongLong(unsigned long long); -PyAPI_FUNC(long long) PyLong_AsLongLong(PyObject *); -PyAPI_FUNC(unsigned long long) PyLong_AsUnsignedLongLong(PyObject *); -PyAPI_FUNC(unsigned long long) PyLong_AsUnsignedLongLongMask(PyObject *); -PyAPI_FUNC(long long) PyLong_AsLongLongAndOverflow(PyObject *, int *); - -PyAPI_FUNC(PyObject *) PyLong_FromString(const char *, char **, int); - -/* These aren't really part of the int object, but they're handy. The - functions are in Python/mystrtoul.c. - */ -PyAPI_FUNC(unsigned long) PyOS_strtoul(const char *, char **, int); -PyAPI_FUNC(long) PyOS_strtol(const char *, char **, int); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_LONGOBJECT_H -# include "cpython/longobject.h" -# undef Py_CPYTHON_LONGOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_LONGOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/marshal.h b/_Pre_Builds/_Python312_cpp/include/marshal.h deleted file mode 100644 index f8b0de8..0000000 --- a/_Pre_Builds/_Python312_cpp/include/marshal.h +++ /dev/null @@ -1,31 +0,0 @@ - -/* Interface for marshal.c */ - -#ifndef Py_MARSHAL_H -#define Py_MARSHAL_H -#ifndef Py_LIMITED_API - -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) PyMarshal_ReadObjectFromString(const char *, - Py_ssize_t); -PyAPI_FUNC(PyObject *) PyMarshal_WriteObjectToString(PyObject *, int); - -#define Py_MARSHAL_VERSION 4 - -PyAPI_FUNC(long) PyMarshal_ReadLongFromFile(FILE *); -PyAPI_FUNC(int) PyMarshal_ReadShortFromFile(FILE *); -PyAPI_FUNC(PyObject *) PyMarshal_ReadObjectFromFile(FILE *); -PyAPI_FUNC(PyObject *) PyMarshal_ReadLastObjectFromFile(FILE *); - -PyAPI_FUNC(void) PyMarshal_WriteLongToFile(long, FILE *, int); -PyAPI_FUNC(void) PyMarshal_WriteObjectToFile(PyObject *, FILE *, int); - -#ifdef __cplusplus -} -#endif - -#endif /* Py_LIMITED_API */ -#endif /* !Py_MARSHAL_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/memoryobject.h b/_Pre_Builds/_Python312_cpp/include/memoryobject.h deleted file mode 100644 index 2c9146a..0000000 --- a/_Pre_Builds/_Python312_cpp/include/memoryobject.h +++ /dev/null @@ -1,34 +0,0 @@ -/* Memory view object. In Python this is available as "memoryview". */ - -#ifndef Py_MEMORYOBJECT_H -#define Py_MEMORYOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyMemoryView_Type; - -#define PyMemoryView_Check(op) Py_IS_TYPE((op), &PyMemoryView_Type) - -PyAPI_FUNC(PyObject *) PyMemoryView_FromObject(PyObject *base); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyMemoryView_FromMemory(char *mem, Py_ssize_t size, - int flags); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030b0000 -PyAPI_FUNC(PyObject *) PyMemoryView_FromBuffer(const Py_buffer *info); -#endif -PyAPI_FUNC(PyObject *) PyMemoryView_GetContiguous(PyObject *base, - int buffertype, - char order); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_MEMORYOBJECT_H -# include "cpython/memoryobject.h" -# undef Py_CPYTHON_MEMORYOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_MEMORYOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/methodobject.h b/_Pre_Builds/_Python312_cpp/include/methodobject.h deleted file mode 100644 index 72af5ad..0000000 --- a/_Pre_Builds/_Python312_cpp/include/methodobject.h +++ /dev/null @@ -1,132 +0,0 @@ - -/* Method object interface */ - -#ifndef Py_METHODOBJECT_H -#define Py_METHODOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* This is about the type 'builtin_function_or_method', - not Python methods in user-defined classes. See classobject.h - for the latter. */ - -PyAPI_DATA(PyTypeObject) PyCFunction_Type; - -#define PyCFunction_CheckExact(op) Py_IS_TYPE((op), &PyCFunction_Type) -#define PyCFunction_Check(op) PyObject_TypeCheck((op), &PyCFunction_Type) - -typedef PyObject *(*PyCFunction)(PyObject *, PyObject *); -typedef PyObject *(*_PyCFunctionFast) (PyObject *, PyObject *const *, Py_ssize_t); -typedef PyObject *(*PyCFunctionWithKeywords)(PyObject *, PyObject *, - PyObject *); -typedef PyObject *(*_PyCFunctionFastWithKeywords) (PyObject *, - PyObject *const *, Py_ssize_t, - PyObject *); -typedef PyObject *(*PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, - size_t, PyObject *); - -// Cast an function to the PyCFunction type to use it with PyMethodDef. -// -// This macro can be used to prevent compiler warnings if the first parameter -// uses a different pointer type than PyObject* (ex: METH_VARARGS and METH_O -// calling conventions). -// -// The macro can also be used for METH_FASTCALL and METH_VARARGS|METH_KEYWORDS -// calling conventions to avoid compiler warnings because the function has more -// than 2 parameters. The macro first casts the function to the -// "void func(void)" type to prevent compiler warnings. -// -// If a function is declared with the METH_NOARGS calling convention, it must -// have 2 parameters. Since the second parameter is unused, Py_UNUSED() can be -// used to prevent a compiler warning. If the function has a single parameter, -// it triggers an undefined behavior when Python calls it with 2 parameters -// (bpo-33012). -#define _PyCFunction_CAST(func) \ - _Py_CAST(PyCFunction, _Py_CAST(void(*)(void), (func))) - -PyAPI_FUNC(PyCFunction) PyCFunction_GetFunction(PyObject *); -PyAPI_FUNC(PyObject *) PyCFunction_GetSelf(PyObject *); -PyAPI_FUNC(int) PyCFunction_GetFlags(PyObject *); - -Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyCFunction_Call(PyObject *, PyObject *, PyObject *); - -struct PyMethodDef { - const char *ml_name; /* The name of the built-in function/method */ - PyCFunction ml_meth; /* The C function that implements it */ - int ml_flags; /* Combination of METH_xxx flags, which mostly - describe the args expected by the C func */ - const char *ml_doc; /* The __doc__ attribute, or NULL */ -}; - -/* PyCFunction_New is declared as a function for stable ABI (declaration is - * needed for e.g. GCC with -fvisibility=hidden), but redefined as a macro - * that calls PyCFunction_NewEx. */ -PyAPI_FUNC(PyObject *) PyCFunction_New(PyMethodDef *, PyObject *); -#define PyCFunction_New(ML, SELF) PyCFunction_NewEx((ML), (SELF), NULL) - -/* PyCFunction_NewEx is similar: on 3.9+, this calls PyCMethod_New. */ -PyAPI_FUNC(PyObject *) PyCFunction_NewEx(PyMethodDef *, PyObject *, - PyObject *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -#define PyCFunction_NewEx(ML, SELF, MOD) PyCMethod_New((ML), (SELF), (MOD), NULL) -PyAPI_FUNC(PyObject *) PyCMethod_New(PyMethodDef *, PyObject *, - PyObject *, PyTypeObject *); -#endif - - -/* Flag passed to newmethodobject */ -/* #define METH_OLDARGS 0x0000 -- unsupported now */ -#define METH_VARARGS 0x0001 -#define METH_KEYWORDS 0x0002 -/* METH_NOARGS and METH_O must not be combined with the flags above. */ -#define METH_NOARGS 0x0004 -#define METH_O 0x0008 - -/* METH_CLASS and METH_STATIC are a little different; these control - the construction of methods for a class. These cannot be used for - functions in modules. */ -#define METH_CLASS 0x0010 -#define METH_STATIC 0x0020 - -/* METH_COEXIST allows a method to be entered even though a slot has - already filled the entry. When defined, the flag allows a separate - method, "__contains__" for example, to coexist with a defined - slot like sq_contains. */ - -#define METH_COEXIST 0x0040 - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030a0000 -# define METH_FASTCALL 0x0080 -#endif - -/* This bit is preserved for Stackless Python */ -#ifdef STACKLESS -# define METH_STACKLESS 0x0100 -#else -# define METH_STACKLESS 0x0000 -#endif - -/* METH_METHOD means the function stores an - * additional reference to the class that defines it; - * both self and class are passed to it. - * It uses PyCMethodObject instead of PyCFunctionObject. - * May not be combined with METH_NOARGS, METH_O, METH_CLASS or METH_STATIC. - */ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -#define METH_METHOD 0x0200 -#endif - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_METHODOBJECT_H -# include "cpython/methodobject.h" -# undef Py_CPYTHON_METHODOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_METHODOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/modsupport.h b/_Pre_Builds/_Python312_cpp/include/modsupport.h deleted file mode 100644 index 1592bd0..0000000 --- a/_Pre_Builds/_Python312_cpp/include/modsupport.h +++ /dev/null @@ -1,168 +0,0 @@ - -#ifndef Py_MODSUPPORT_H -#define Py_MODSUPPORT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Module support interface */ - -#include // va_list - -/* If PY_SSIZE_T_CLEAN is defined, each functions treats #-specifier - to mean Py_ssize_t */ -#ifdef PY_SSIZE_T_CLEAN -#define PyArg_Parse _PyArg_Parse_SizeT -#define PyArg_ParseTuple _PyArg_ParseTuple_SizeT -#define PyArg_ParseTupleAndKeywords _PyArg_ParseTupleAndKeywords_SizeT -#define PyArg_VaParse _PyArg_VaParse_SizeT -#define PyArg_VaParseTupleAndKeywords _PyArg_VaParseTupleAndKeywords_SizeT -#define Py_BuildValue _Py_BuildValue_SizeT -#define Py_VaBuildValue _Py_VaBuildValue_SizeT -#endif - -/* Due to a glitch in 3.2, the _SizeT versions weren't exported from the DLL. */ -#if !defined(PY_SSIZE_T_CLEAN) || !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(int) PyArg_Parse(PyObject *, const char *, ...); -PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...); -PyAPI_FUNC(int) PyArg_ParseTupleAndKeywords(PyObject *, PyObject *, - const char *, char **, ...); -PyAPI_FUNC(int) PyArg_VaParse(PyObject *, const char *, va_list); -PyAPI_FUNC(int) PyArg_VaParseTupleAndKeywords(PyObject *, PyObject *, - const char *, char **, va_list); -#endif -PyAPI_FUNC(int) PyArg_ValidateKeywordArguments(PyObject *); -PyAPI_FUNC(int) PyArg_UnpackTuple(PyObject *, const char *, Py_ssize_t, Py_ssize_t, ...); -PyAPI_FUNC(PyObject *) Py_BuildValue(const char *, ...); -PyAPI_FUNC(PyObject *) _Py_BuildValue_SizeT(const char *, ...); - - -PyAPI_FUNC(PyObject *) Py_VaBuildValue(const char *, va_list); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030a0000 -// Add an attribute with name 'name' and value 'obj' to the module 'mod. -// On success, return 0 on success. -// On error, raise an exception and return -1. -PyAPI_FUNC(int) PyModule_AddObjectRef(PyObject *mod, const char *name, PyObject *value); -#endif /* Py_LIMITED_API */ - -// Similar to PyModule_AddObjectRef() but steal a reference to 'obj' -// (Py_DECREF(obj)) on success (if it returns 0). -PyAPI_FUNC(int) PyModule_AddObject(PyObject *mod, const char *, PyObject *value); - -PyAPI_FUNC(int) PyModule_AddIntConstant(PyObject *, const char *, long); -PyAPI_FUNC(int) PyModule_AddStringConstant(PyObject *, const char *, const char *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* New in 3.9 */ -PyAPI_FUNC(int) PyModule_AddType(PyObject *module, PyTypeObject *type); -#endif /* Py_LIMITED_API */ - -#define PyModule_AddIntMacro(m, c) PyModule_AddIntConstant((m), #c, (c)) -#define PyModule_AddStringMacro(m, c) PyModule_AddStringConstant((m), #c, (c)) - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -PyAPI_FUNC(int) PyModule_SetDocString(PyObject *, const char *); -PyAPI_FUNC(int) PyModule_AddFunctions(PyObject *, PyMethodDef *); -PyAPI_FUNC(int) PyModule_ExecDef(PyObject *module, PyModuleDef *def); -#endif - -#define Py_CLEANUP_SUPPORTED 0x20000 - -#define PYTHON_API_VERSION 1013 -#define PYTHON_API_STRING "1013" -/* The API version is maintained (independently from the Python version) - so we can detect mismatches between the interpreter and dynamically - loaded modules. These are diagnosed by an error message but - the module is still loaded (because the mismatch can only be tested - after loading the module). The error message is intended to - explain the core dump a few seconds later. - - The symbol PYTHON_API_STRING defines the same value as a string - literal. *** PLEASE MAKE SURE THE DEFINITIONS MATCH. *** - - Please add a line or two to the top of this log for each API - version change: - - 22-Feb-2006 MvL 1013 PEP 353 - long indices for sequence lengths - - 19-Aug-2002 GvR 1012 Changes to string object struct for - interning changes, saving 3 bytes. - - 17-Jul-2001 GvR 1011 Descr-branch, just to be on the safe side - - 25-Jan-2001 FLD 1010 Parameters added to PyCode_New() and - PyFrame_New(); Python 2.1a2 - - 14-Mar-2000 GvR 1009 Unicode API added - - 3-Jan-1999 GvR 1007 Decided to change back! (Don't reuse 1008!) - - 3-Dec-1998 GvR 1008 Python 1.5.2b1 - - 18-Jan-1997 GvR 1007 string interning and other speedups - - 11-Oct-1996 GvR renamed Py_Ellipses to Py_Ellipsis :-( - - 30-Jul-1996 GvR Slice and ellipses syntax added - - 23-Jul-1996 GvR For 1.4 -- better safe than sorry this time :-) - - 7-Nov-1995 GvR Keyword arguments (should've been done at 1.3 :-( ) - - 10-Jan-1995 GvR Renamed globals to new naming scheme - - 9-Jan-1995 GvR Initial version (incompatible with older API) -*/ - -/* The PYTHON_ABI_VERSION is introduced in PEP 384. For the lifetime of - Python 3, it will stay at the value of 3; changes to the limited API - must be performed in a strictly backwards-compatible manner. */ -#define PYTHON_ABI_VERSION 3 -#define PYTHON_ABI_STRING "3" - -#ifdef Py_TRACE_REFS - /* When we are tracing reference counts, rename module creation functions so - modules compiled with incompatible settings will generate a - link-time error. */ - #define PyModule_Create2 PyModule_Create2TraceRefs - #define PyModule_FromDefAndSpec2 PyModule_FromDefAndSpec2TraceRefs -#endif - -PyAPI_FUNC(PyObject *) PyModule_Create2(PyModuleDef*, int apiver); - -#ifdef Py_LIMITED_API -#define PyModule_Create(module) \ - PyModule_Create2((module), PYTHON_ABI_VERSION) -#else -#define PyModule_Create(module) \ - PyModule_Create2((module), PYTHON_API_VERSION) -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -PyAPI_FUNC(PyObject *) PyModule_FromDefAndSpec2(PyModuleDef *def, - PyObject *spec, - int module_api_version); - -#ifdef Py_LIMITED_API -#define PyModule_FromDefAndSpec(module, spec) \ - PyModule_FromDefAndSpec2((module), (spec), PYTHON_ABI_VERSION) -#else -#define PyModule_FromDefAndSpec(module, spec) \ - PyModule_FromDefAndSpec2((module), (spec), PYTHON_API_VERSION) -#endif /* Py_LIMITED_API */ - -#endif /* New in 3.5 */ - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_MODSUPPORT_H -# include "cpython/modsupport.h" -# undef Py_CPYTHON_MODSUPPORT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_MODSUPPORT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/moduleobject.h b/_Pre_Builds/_Python312_cpp/include/moduleobject.h deleted file mode 100644 index 354d133..0000000 --- a/_Pre_Builds/_Python312_cpp/include/moduleobject.h +++ /dev/null @@ -1,119 +0,0 @@ - -/* Module object interface */ - -#ifndef Py_MODULEOBJECT_H -#define Py_MODULEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyModule_Type; - -#define PyModule_Check(op) PyObject_TypeCheck((op), &PyModule_Type) -#define PyModule_CheckExact(op) Py_IS_TYPE((op), &PyModule_Type) - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyModule_NewObject( - PyObject *name - ); -#endif -PyAPI_FUNC(PyObject *) PyModule_New( - const char *name /* UTF-8 encoded string */ - ); -PyAPI_FUNC(PyObject *) PyModule_GetDict(PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyModule_GetNameObject(PyObject *); -#endif -PyAPI_FUNC(const char *) PyModule_GetName(PyObject *); -Py_DEPRECATED(3.2) PyAPI_FUNC(const char *) PyModule_GetFilename(PyObject *); -PyAPI_FUNC(PyObject *) PyModule_GetFilenameObject(PyObject *); -#ifndef Py_LIMITED_API -PyAPI_FUNC(void) _PyModule_Clear(PyObject *); -PyAPI_FUNC(void) _PyModule_ClearDict(PyObject *); -PyAPI_FUNC(int) _PyModuleSpec_IsInitializing(PyObject *); -#endif -PyAPI_FUNC(PyModuleDef*) PyModule_GetDef(PyObject*); -PyAPI_FUNC(void*) PyModule_GetState(PyObject*); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -PyAPI_FUNC(PyObject *) PyModuleDef_Init(PyModuleDef*); -PyAPI_DATA(PyTypeObject) PyModuleDef_Type; -#endif - -typedef struct PyModuleDef_Base { - PyObject_HEAD - /* The function used to re-initialize the module. - This is only set for legacy (single-phase init) extension modules - and only used for those that support multiple initializations - (m_size >= 0). - It is set by _PyImport_LoadDynamicModuleWithSpec() - and _imp.create_builtin(). */ - PyObject* (*m_init)(void); - /* The module's index into its interpreter's modules_by_index cache. - This is set for all extension modules but only used for legacy ones. - (See PyInterpreterState.modules_by_index for more info.) - It is set by PyModuleDef_Init(). */ - Py_ssize_t m_index; - /* A copy of the module's __dict__ after the first time it was loaded. - This is only set/used for legacy modules that do not support - multiple initializations. - It is set by _PyImport_FixupExtensionObject(). */ - PyObject* m_copy; -} PyModuleDef_Base; - -#define PyModuleDef_HEAD_INIT { \ - PyObject_HEAD_INIT(_Py_NULL) \ - _Py_NULL, /* m_init */ \ - 0, /* m_index */ \ - _Py_NULL, /* m_copy */ \ - } - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -struct PyModuleDef_Slot { - int slot; - void *value; -}; - -#define Py_mod_create 1 -#define Py_mod_exec 2 -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030c0000 -# define Py_mod_multiple_interpreters 3 -#endif - -#ifndef Py_LIMITED_API -#define _Py_mod_LAST_SLOT 3 -#endif - -#endif /* New in 3.5 */ - -/* for Py_mod_multiple_interpreters: */ -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030c0000 -# define Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED ((void *)0) -# define Py_MOD_MULTIPLE_INTERPRETERS_SUPPORTED ((void *)1) -# define Py_MOD_PER_INTERPRETER_GIL_SUPPORTED ((void *)2) -#endif - -struct PyModuleDef { - PyModuleDef_Base m_base; - const char* m_name; - const char* m_doc; - Py_ssize_t m_size; - PyMethodDef *m_methods; - PyModuleDef_Slot *m_slots; - traverseproc m_traverse; - inquiry m_clear; - freefunc m_free; -}; - - -// Internal C API -#ifdef Py_BUILD_CORE -extern int _PyModule_IsExtension(PyObject *obj); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_MODULEOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/object.h b/_Pre_Builds/_Python312_cpp/include/object.h deleted file mode 100644 index 5c30c77..0000000 --- a/_Pre_Builds/_Python312_cpp/include/object.h +++ /dev/null @@ -1,994 +0,0 @@ -#ifndef Py_OBJECT_H -#define Py_OBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Object and type object interface */ - -/* -Objects are structures allocated on the heap. Special rules apply to -the use of objects to ensure they are properly garbage-collected. -Objects are never allocated statically or on the stack; they must be -accessed through special macros and functions only. (Type objects are -exceptions to the first rule; the standard types are represented by -statically initialized type objects, although work on type/class unification -for Python 2.2 made it possible to have heap-allocated type objects too). - -An object has a 'reference count' that is increased or decreased when a -pointer to the object is copied or deleted; when the reference count -reaches zero there are no references to the object left and it can be -removed from the heap. - -An object has a 'type' that determines what it represents and what kind -of data it contains. An object's type is fixed when it is created. -Types themselves are represented as objects; an object contains a -pointer to the corresponding type object. The type itself has a type -pointer pointing to the object representing the type 'type', which -contains a pointer to itself!. - -Objects do not float around in memory; once allocated an object keeps -the same size and address. Objects that must hold variable-size data -can contain pointers to variable-size parts of the object. Not all -objects of the same type have the same size; but the size cannot change -after allocation. (These restrictions are made so a reference to an -object can be simply a pointer -- moving an object would require -updating all the pointers, and changing an object's size would require -moving it if there was another object right next to it.) - -Objects are always accessed through pointers of the type 'PyObject *'. -The type 'PyObject' is a structure that only contains the reference count -and the type pointer. The actual memory allocated for an object -contains other data that can only be accessed after casting the pointer -to a pointer to a longer structure type. This longer type must start -with the reference count and type fields; the macro PyObject_HEAD should be -used for this (to accommodate for future changes). The implementation -of a particular object type can cast the object pointer to the proper -type and back. - -A standard interface exists for objects that contain an array of items -whose size is determined when the object is allocated. -*/ - -#include "pystats.h" - -/* Py_DEBUG implies Py_REF_DEBUG. */ -#if defined(Py_DEBUG) && !defined(Py_REF_DEBUG) -# define Py_REF_DEBUG -#endif - -#if defined(Py_LIMITED_API) && defined(Py_TRACE_REFS) -# error Py_LIMITED_API is incompatible with Py_TRACE_REFS -#endif - -#ifdef Py_TRACE_REFS -/* Define pointers to support a doubly-linked list of all live heap objects. */ -#define _PyObject_HEAD_EXTRA \ - PyObject *_ob_next; \ - PyObject *_ob_prev; - -#define _PyObject_EXTRA_INIT _Py_NULL, _Py_NULL, - -#else -# define _PyObject_HEAD_EXTRA -# define _PyObject_EXTRA_INIT -#endif - -/* PyObject_HEAD defines the initial segment of every PyObject. */ -#define PyObject_HEAD PyObject ob_base; - -/* -Immortalization: - -The following indicates the immortalization strategy depending on the amount -of available bits in the reference count field. All strategies are backwards -compatible but the specific reference count value or immortalization check -might change depending on the specializations for the underlying system. - -Proper deallocation of immortal instances requires distinguishing between -statically allocated immortal instances vs those promoted by the runtime to be -immortal. The latter should be the only instances that require -cleanup during runtime finalization. -*/ - -#if SIZEOF_VOID_P > 4 -/* -In 64+ bit systems, an object will be marked as immortal by setting all of the -lower 32 bits of the reference count field, which is equal to: 0xFFFFFFFF - -Using the lower 32 bits makes the value backwards compatible by allowing -C-Extensions without the updated checks in Py_INCREF and Py_DECREF to safely -increase and decrease the objects reference count. The object would lose its -immortality, but the execution would still be correct. - -Reference count increases will use saturated arithmetic, taking advantage of -having all the lower 32 bits set, which will avoid the reference count to go -beyond the refcount limit. Immortality checks for reference count decreases will -be done by checking the bit sign flag in the lower 32 bits. -*/ -#define _Py_IMMORTAL_REFCNT UINT_MAX - -#else -/* -In 32 bit systems, an object will be marked as immortal by setting all of the -lower 30 bits of the reference count field, which is equal to: 0x3FFFFFFF - -Using the lower 30 bits makes the value backwards compatible by allowing -C-Extensions without the updated checks in Py_INCREF and Py_DECREF to safely -increase and decrease the objects reference count. The object would lose its -immortality, but the execution would still be correct. - -Reference count increases and decreases will first go through an immortality -check by comparing the reference count field to the immortality reference count. -*/ -#define _Py_IMMORTAL_REFCNT (UINT_MAX >> 2) -#endif - -// Make all internal uses of PyObject_HEAD_INIT immortal while preserving the -// C-API expectation that the refcnt will be set to 1. -#ifdef Py_BUILD_CORE -#define PyObject_HEAD_INIT(type) \ - { \ - _PyObject_EXTRA_INIT \ - { _Py_IMMORTAL_REFCNT }, \ - (type) \ - }, -#else -#define PyObject_HEAD_INIT(type) \ - { \ - _PyObject_EXTRA_INIT \ - { 1 }, \ - (type) \ - }, -#endif /* Py_BUILD_CORE */ - -#define PyVarObject_HEAD_INIT(type, size) \ - { \ - PyObject_HEAD_INIT(type) \ - (size) \ - }, - -/* PyObject_VAR_HEAD defines the initial segment of all variable-size - * container objects. These end with a declaration of an array with 1 - * element, but enough space is malloc'ed so that the array actually - * has room for ob_size elements. Note that ob_size is an element count, - * not necessarily a byte count. - */ -#define PyObject_VAR_HEAD PyVarObject ob_base; -#define Py_INVALID_SIZE (Py_ssize_t)-1 - -/* Nothing is actually declared to be a PyObject, but every pointer to - * a Python object can be cast to a PyObject*. This is inheritance built - * by hand. Similarly every pointer to a variable-size Python object can, - * in addition, be cast to PyVarObject*. - */ -struct _object { - _PyObject_HEAD_EXTRA - -#if (defined(__GNUC__) || defined(__clang__)) \ - && !(defined __STDC_VERSION__ && __STDC_VERSION__ >= 201112L) - // On C99 and older, anonymous union is a GCC and clang extension - __extension__ -#endif -#ifdef _MSC_VER - // Ignore MSC warning C4201: "nonstandard extension used: - // nameless struct/union" - __pragma(warning(push)) - __pragma(warning(disable: 4201)) -#endif - union { - Py_ssize_t ob_refcnt; -#if SIZEOF_VOID_P > 4 - PY_UINT32_T ob_refcnt_split[2]; -#endif - }; -#ifdef _MSC_VER - __pragma(warning(pop)) -#endif - - PyTypeObject *ob_type; -}; - -/* Cast argument to PyObject* type. */ -#define _PyObject_CAST(op) _Py_CAST(PyObject*, (op)) - -typedef struct { - PyObject ob_base; - Py_ssize_t ob_size; /* Number of items in variable part */ -} PyVarObject; - -/* Cast argument to PyVarObject* type. */ -#define _PyVarObject_CAST(op) _Py_CAST(PyVarObject*, (op)) - - -// Test if the 'x' object is the 'y' object, the same as "x is y" in Python. -PyAPI_FUNC(int) Py_Is(PyObject *x, PyObject *y); -#define Py_Is(x, y) ((x) == (y)) - - -static inline Py_ssize_t Py_REFCNT(PyObject *ob) { - return ob->ob_refcnt; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_REFCNT(ob) Py_REFCNT(_PyObject_CAST(ob)) -#endif - - -// bpo-39573: The Py_SET_TYPE() function must be used to set an object type. -static inline PyTypeObject* Py_TYPE(PyObject *ob) { - return ob->ob_type; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_TYPE(ob) Py_TYPE(_PyObject_CAST(ob)) -#endif - -PyAPI_DATA(PyTypeObject) PyLong_Type; -PyAPI_DATA(PyTypeObject) PyBool_Type; - -// bpo-39573: The Py_SET_SIZE() function must be used to set an object size. -static inline Py_ssize_t Py_SIZE(PyObject *ob) { - assert(ob->ob_type != &PyLong_Type); - assert(ob->ob_type != &PyBool_Type); - PyVarObject *var_ob = _PyVarObject_CAST(ob); - return var_ob->ob_size; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_SIZE(ob) Py_SIZE(_PyObject_CAST(ob)) -#endif - -static inline Py_ALWAYS_INLINE int _Py_IsImmortal(PyObject *op) -{ -#if SIZEOF_VOID_P > 4 - return _Py_CAST(PY_INT32_T, op->ob_refcnt) < 0; -#else - return op->ob_refcnt == _Py_IMMORTAL_REFCNT; -#endif -} -#define _Py_IsImmortal(op) _Py_IsImmortal(_PyObject_CAST(op)) - -static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) { - return Py_TYPE(ob) == type; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_IS_TYPE(ob, type) Py_IS_TYPE(_PyObject_CAST(ob), (type)) -#endif - - -static inline void Py_SET_REFCNT(PyObject *ob, Py_ssize_t refcnt) { - // This immortal check is for code that is unaware of immortal objects. - // The runtime tracks these objects and we should avoid as much - // as possible having extensions inadvertently change the refcnt - // of an immortalized object. - if (_Py_IsImmortal(ob)) { - return; - } - ob->ob_refcnt = refcnt; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_SET_REFCNT(ob, refcnt) Py_SET_REFCNT(_PyObject_CAST(ob), (refcnt)) -#endif - - -static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) { - ob->ob_type = type; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_SET_TYPE(ob, type) Py_SET_TYPE(_PyObject_CAST(ob), type) -#endif - -static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) { - assert(ob->ob_base.ob_type != &PyLong_Type); - assert(ob->ob_base.ob_type != &PyBool_Type); - ob->ob_size = size; -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_SET_SIZE(ob, size) Py_SET_SIZE(_PyVarObject_CAST(ob), (size)) -#endif - - -/* -Type objects contain a string containing the type name (to help somewhat -in debugging), the allocation parameters (see PyObject_New() and -PyObject_NewVar()), -and methods for accessing objects of the type. Methods are optional, a -nil pointer meaning that particular kind of access is not available for -this type. The Py_DECREF() macro uses the tp_dealloc method without -checking for a nil pointer; it should always be implemented except if -the implementation can guarantee that the reference count will never -reach zero (e.g., for statically allocated type objects). - -NB: the methods for certain type groups are now contained in separate -method blocks. -*/ - -typedef PyObject * (*unaryfunc)(PyObject *); -typedef PyObject * (*binaryfunc)(PyObject *, PyObject *); -typedef PyObject * (*ternaryfunc)(PyObject *, PyObject *, PyObject *); -typedef int (*inquiry)(PyObject *); -typedef Py_ssize_t (*lenfunc)(PyObject *); -typedef PyObject *(*ssizeargfunc)(PyObject *, Py_ssize_t); -typedef PyObject *(*ssizessizeargfunc)(PyObject *, Py_ssize_t, Py_ssize_t); -typedef int(*ssizeobjargproc)(PyObject *, Py_ssize_t, PyObject *); -typedef int(*ssizessizeobjargproc)(PyObject *, Py_ssize_t, Py_ssize_t, PyObject *); -typedef int(*objobjargproc)(PyObject *, PyObject *, PyObject *); - -typedef int (*objobjproc)(PyObject *, PyObject *); -typedef int (*visitproc)(PyObject *, void *); -typedef int (*traverseproc)(PyObject *, visitproc, void *); - - -typedef void (*freefunc)(void *); -typedef void (*destructor)(PyObject *); -typedef PyObject *(*getattrfunc)(PyObject *, char *); -typedef PyObject *(*getattrofunc)(PyObject *, PyObject *); -typedef int (*setattrfunc)(PyObject *, char *, PyObject *); -typedef int (*setattrofunc)(PyObject *, PyObject *, PyObject *); -typedef PyObject *(*reprfunc)(PyObject *); -typedef Py_hash_t (*hashfunc)(PyObject *); -typedef PyObject *(*richcmpfunc) (PyObject *, PyObject *, int); -typedef PyObject *(*getiterfunc) (PyObject *); -typedef PyObject *(*iternextfunc) (PyObject *); -typedef PyObject *(*descrgetfunc) (PyObject *, PyObject *, PyObject *); -typedef int (*descrsetfunc) (PyObject *, PyObject *, PyObject *); -typedef int (*initproc)(PyObject *, PyObject *, PyObject *); -typedef PyObject *(*newfunc)(PyTypeObject *, PyObject *, PyObject *); -typedef PyObject *(*allocfunc)(PyTypeObject *, Py_ssize_t); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030c0000 // 3.12 -typedef PyObject *(*vectorcallfunc)(PyObject *callable, PyObject *const *args, - size_t nargsf, PyObject *kwnames); -#endif - -typedef struct{ - int slot; /* slot id, see below */ - void *pfunc; /* function pointer */ -} PyType_Slot; - -typedef struct{ - const char* name; - int basicsize; - int itemsize; - unsigned int flags; - PyType_Slot *slots; /* terminated by slot==0. */ -} PyType_Spec; - -PyAPI_FUNC(PyObject*) PyType_FromSpec(PyType_Spec*); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyType_FromSpecWithBases(PyType_Spec*, PyObject*); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03040000 -PyAPI_FUNC(void*) PyType_GetSlot(PyTypeObject*, int); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -PyAPI_FUNC(PyObject*) PyType_FromModuleAndSpec(PyObject *, PyType_Spec *, PyObject *); -PyAPI_FUNC(PyObject *) PyType_GetModule(PyTypeObject *); -PyAPI_FUNC(void *) PyType_GetModuleState(PyTypeObject *); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030B0000 -PyAPI_FUNC(PyObject *) PyType_GetName(PyTypeObject *); -PyAPI_FUNC(PyObject *) PyType_GetQualName(PyTypeObject *); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030C0000 -PyAPI_FUNC(PyObject *) PyType_FromMetaclass(PyTypeObject*, PyObject*, PyType_Spec*, PyObject*); -PyAPI_FUNC(void *) PyObject_GetTypeData(PyObject *obj, PyTypeObject *cls); -PyAPI_FUNC(Py_ssize_t) PyType_GetTypeDataSize(PyTypeObject *cls); -#endif - -/* Generic type check */ -PyAPI_FUNC(int) PyType_IsSubtype(PyTypeObject *, PyTypeObject *); - -static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) { - return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyObject_TypeCheck(ob, type) PyObject_TypeCheck(_PyObject_CAST(ob), (type)) -#endif - -PyAPI_DATA(PyTypeObject) PyType_Type; /* built-in 'type' */ -PyAPI_DATA(PyTypeObject) PyBaseObject_Type; /* built-in 'object' */ -PyAPI_DATA(PyTypeObject) PySuper_Type; /* built-in 'super' */ - -PyAPI_FUNC(unsigned long) PyType_GetFlags(PyTypeObject*); - -PyAPI_FUNC(int) PyType_Ready(PyTypeObject *); -PyAPI_FUNC(PyObject *) PyType_GenericAlloc(PyTypeObject *, Py_ssize_t); -PyAPI_FUNC(PyObject *) PyType_GenericNew(PyTypeObject *, - PyObject *, PyObject *); -PyAPI_FUNC(unsigned int) PyType_ClearCache(void); -PyAPI_FUNC(void) PyType_Modified(PyTypeObject *); - -/* Generic operations on objects */ -PyAPI_FUNC(PyObject *) PyObject_Repr(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_Str(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_ASCII(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_Bytes(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_RichCompare(PyObject *, PyObject *, int); -PyAPI_FUNC(int) PyObject_RichCompareBool(PyObject *, PyObject *, int); -PyAPI_FUNC(PyObject *) PyObject_GetAttrString(PyObject *, const char *); -PyAPI_FUNC(int) PyObject_SetAttrString(PyObject *, const char *, PyObject *); -PyAPI_FUNC(int) PyObject_HasAttrString(PyObject *, const char *); -PyAPI_FUNC(PyObject *) PyObject_GetAttr(PyObject *, PyObject *); -PyAPI_FUNC(int) PyObject_SetAttr(PyObject *, PyObject *, PyObject *); -PyAPI_FUNC(int) PyObject_HasAttr(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyObject_SelfIter(PyObject *); -PyAPI_FUNC(PyObject *) PyObject_GenericGetAttr(PyObject *, PyObject *); -PyAPI_FUNC(int) PyObject_GenericSetAttr(PyObject *, PyObject *, PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(int) PyObject_GenericSetDict(PyObject *, PyObject *, void *); -#endif -PyAPI_FUNC(Py_hash_t) PyObject_Hash(PyObject *); -PyAPI_FUNC(Py_hash_t) PyObject_HashNotImplemented(PyObject *); -PyAPI_FUNC(int) PyObject_IsTrue(PyObject *); -PyAPI_FUNC(int) PyObject_Not(PyObject *); -PyAPI_FUNC(int) PyCallable_Check(PyObject *); -PyAPI_FUNC(void) PyObject_ClearWeakRefs(PyObject *); - -/* PyObject_Dir(obj) acts like Python builtins.dir(obj), returning a - list of strings. PyObject_Dir(NULL) is like builtins.dir(), - returning the names of the current locals. In this case, if there are - no current locals, NULL is returned, and PyErr_Occurred() is false. -*/ -PyAPI_FUNC(PyObject *) PyObject_Dir(PyObject *); - -/* Pickle support. */ -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PyObject_GetState(PyObject *); -#endif - - -/* Helpers for printing recursive container types */ -PyAPI_FUNC(int) Py_ReprEnter(PyObject *); -PyAPI_FUNC(void) Py_ReprLeave(PyObject *); - -/* Flag bits for printing: */ -#define Py_PRINT_RAW 1 /* No string quotes etc. */ - -/* -Type flags (tp_flags) - -These flags are used to change expected features and behavior for a -particular type. - -Arbitration of the flag bit positions will need to be coordinated among -all extension writers who publicly release their extensions (this will -be fewer than you might expect!). - -Most flags were removed as of Python 3.0 to make room for new flags. (Some -flags are not for backwards compatibility but to indicate the presence of an -optional feature; these flags remain of course.) - -Type definitions should use Py_TPFLAGS_DEFAULT for their tp_flags value. - -Code can use PyType_HasFeature(type_ob, flag_value) to test whether the -given type object has a specified feature. -*/ - -#ifndef Py_LIMITED_API - -/* Track types initialized using _PyStaticType_InitBuiltin(). */ -#define _Py_TPFLAGS_STATIC_BUILTIN (1 << 1) - -/* Placement of weakref pointers are managed by the VM, not by the type. - * The VM will automatically set tp_weaklistoffset. - */ -#define Py_TPFLAGS_MANAGED_WEAKREF (1 << 3) - -/* Placement of dict (and values) pointers are managed by the VM, not by the type. - * The VM will automatically set tp_dictoffset. - */ -#define Py_TPFLAGS_MANAGED_DICT (1 << 4) - -#define Py_TPFLAGS_PREHEADER (Py_TPFLAGS_MANAGED_WEAKREF | Py_TPFLAGS_MANAGED_DICT) - -/* Set if instances of the type object are treated as sequences for pattern matching */ -#define Py_TPFLAGS_SEQUENCE (1 << 5) -/* Set if instances of the type object are treated as mappings for pattern matching */ -#define Py_TPFLAGS_MAPPING (1 << 6) -#endif - -/* Disallow creating instances of the type: set tp_new to NULL and don't create - * the "__new__" key in the type dictionary. */ -#define Py_TPFLAGS_DISALLOW_INSTANTIATION (1UL << 7) - -/* Set if the type object is immutable: type attributes cannot be set nor deleted */ -#define Py_TPFLAGS_IMMUTABLETYPE (1UL << 8) - -/* Set if the type object is dynamically allocated */ -#define Py_TPFLAGS_HEAPTYPE (1UL << 9) - -/* Set if the type allows subclassing */ -#define Py_TPFLAGS_BASETYPE (1UL << 10) - -/* Set if the type implements the vectorcall protocol (PEP 590) */ -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030C0000 -#define Py_TPFLAGS_HAVE_VECTORCALL (1UL << 11) -#ifndef Py_LIMITED_API -// Backwards compatibility alias for API that was provisional in Python 3.8 -#define _Py_TPFLAGS_HAVE_VECTORCALL Py_TPFLAGS_HAVE_VECTORCALL -#endif -#endif - -/* Set if the type is 'ready' -- fully initialized */ -#define Py_TPFLAGS_READY (1UL << 12) - -/* Set while the type is being 'readied', to prevent recursive ready calls */ -#define Py_TPFLAGS_READYING (1UL << 13) - -/* Objects support garbage collection (see objimpl.h) */ -#define Py_TPFLAGS_HAVE_GC (1UL << 14) - -/* These two bits are preserved for Stackless Python, next after this is 17 */ -#ifdef STACKLESS -#define Py_TPFLAGS_HAVE_STACKLESS_EXTENSION (3UL << 15) -#else -#define Py_TPFLAGS_HAVE_STACKLESS_EXTENSION 0 -#endif - -/* Objects behave like an unbound method */ -#define Py_TPFLAGS_METHOD_DESCRIPTOR (1UL << 17) - -/* Object has up-to-date type attribute cache */ -#define Py_TPFLAGS_VALID_VERSION_TAG (1UL << 19) - -/* Type is abstract and cannot be instantiated */ -#define Py_TPFLAGS_IS_ABSTRACT (1UL << 20) - -// This undocumented flag gives certain built-ins their unique pattern-matching -// behavior, which allows a single positional subpattern to match against the -// subject itself (rather than a mapped attribute on it): -#define _Py_TPFLAGS_MATCH_SELF (1UL << 22) - -/* Items (ob_size*tp_itemsize) are found at the end of an instance's memory */ -#define Py_TPFLAGS_ITEMS_AT_END (1UL << 23) - -/* These flags are used to determine if a type is a subclass. */ -#define Py_TPFLAGS_LONG_SUBCLASS (1UL << 24) -#define Py_TPFLAGS_LIST_SUBCLASS (1UL << 25) -#define Py_TPFLAGS_TUPLE_SUBCLASS (1UL << 26) -#define Py_TPFLAGS_BYTES_SUBCLASS (1UL << 27) -#define Py_TPFLAGS_UNICODE_SUBCLASS (1UL << 28) -#define Py_TPFLAGS_DICT_SUBCLASS (1UL << 29) -#define Py_TPFLAGS_BASE_EXC_SUBCLASS (1UL << 30) -#define Py_TPFLAGS_TYPE_SUBCLASS (1UL << 31) - -#define Py_TPFLAGS_DEFAULT ( \ - Py_TPFLAGS_HAVE_STACKLESS_EXTENSION | \ - 0) - -/* NOTE: Some of the following flags reuse lower bits (removed as part of the - * Python 3.0 transition). */ - -/* The following flags are kept for compatibility; in previous - * versions they indicated presence of newer tp_* fields on the - * type struct. - * Starting with 3.8, binary compatibility of C extensions across - * feature releases of Python is not supported anymore (except when - * using the stable ABI, in which all classes are created dynamically, - * using the interpreter's memory layout.) - * Note that older extensions using the stable ABI set these flags, - * so the bits must not be repurposed. - */ -#define Py_TPFLAGS_HAVE_FINALIZE (1UL << 0) -#define Py_TPFLAGS_HAVE_VERSION_TAG (1UL << 18) - - -/* -The macros Py_INCREF(op) and Py_DECREF(op) are used to increment or decrement -reference counts. Py_DECREF calls the object's deallocator function when -the refcount falls to 0; for -objects that don't contain references to other objects or heap memory -this can be the standard function free(). Both macros can be used -wherever a void expression is allowed. The argument must not be a -NULL pointer. If it may be NULL, use Py_XINCREF/Py_XDECREF instead. -The macro _Py_NewReference(op) initialize reference counts to 1, and -in special builds (Py_REF_DEBUG, Py_TRACE_REFS) performs additional -bookkeeping appropriate to the special build. - -We assume that the reference count field can never overflow; this can -be proven when the size of the field is the same as the pointer size, so -we ignore the possibility. Provided a C int is at least 32 bits (which -is implicitly assumed in many parts of this code), that's enough for -about 2**31 references to an object. - -XXX The following became out of date in Python 2.2, but I'm not sure -XXX what the full truth is now. Certainly, heap-allocated type objects -XXX can and should be deallocated. -Type objects should never be deallocated; the type pointer in an object -is not considered to be a reference to the type object, to save -complications in the deallocation function. (This is actually a -decision that's up to the implementer of each new type so if you want, -you can count such references to the type object.) -*/ - -#if defined(Py_REF_DEBUG) && !defined(Py_LIMITED_API) -PyAPI_FUNC(void) _Py_NegativeRefcount(const char *filename, int lineno, - PyObject *op); -PyAPI_FUNC(void) _Py_INCREF_IncRefTotal(void); -PyAPI_FUNC(void) _Py_DECREF_DecRefTotal(void); -#endif // Py_REF_DEBUG && !Py_LIMITED_API - -PyAPI_FUNC(void) _Py_Dealloc(PyObject *); - -/* -These are provided as conveniences to Python runtime embedders, so that -they can have object code that is not dependent on Python compilation flags. -*/ -PyAPI_FUNC(void) Py_IncRef(PyObject *); -PyAPI_FUNC(void) Py_DecRef(PyObject *); - -// Similar to Py_IncRef() and Py_DecRef() but the argument must be non-NULL. -// Private functions used by Py_INCREF() and Py_DECREF(). -PyAPI_FUNC(void) _Py_IncRef(PyObject *); -PyAPI_FUNC(void) _Py_DecRef(PyObject *); - -static inline Py_ALWAYS_INLINE void Py_INCREF(PyObject *op) -{ -#if defined(Py_LIMITED_API) && (Py_LIMITED_API+0 >= 0x030c0000 || defined(Py_REF_DEBUG)) - // Stable ABI implements Py_INCREF() as a function call on limited C API - // version 3.12 and newer, and on Python built in debug mode. _Py_IncRef() - // was added to Python 3.10.0a7, use Py_IncRef() on older Python versions. - // Py_IncRef() accepts NULL whereas _Py_IncRef() doesn't. -# if Py_LIMITED_API+0 >= 0x030a00A7 - _Py_IncRef(op); -# else - Py_IncRef(op); -# endif -#else - // Non-limited C API and limited C API for Python 3.9 and older access - // directly PyObject.ob_refcnt. -#if SIZEOF_VOID_P > 4 - // Portable saturated add, branching on the carry flag and set low bits - PY_UINT32_T cur_refcnt = op->ob_refcnt_split[PY_BIG_ENDIAN]; - PY_UINT32_T new_refcnt = cur_refcnt + 1; - if (new_refcnt == 0) { - return; - } - op->ob_refcnt_split[PY_BIG_ENDIAN] = new_refcnt; -#else - // Explicitly check immortality against the immortal value - if (_Py_IsImmortal(op)) { - return; - } - op->ob_refcnt++; -#endif - _Py_INCREF_STAT_INC(); -#ifdef Py_REF_DEBUG - _Py_INCREF_IncRefTotal(); -#endif -#endif -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_INCREF(op) Py_INCREF(_PyObject_CAST(op)) -#endif - -#if defined(Py_LIMITED_API) && (Py_LIMITED_API+0 >= 0x030c0000 || defined(Py_REF_DEBUG)) -// Stable ABI implements Py_DECREF() as a function call on limited C API -// version 3.12 and newer, and on Python built in debug mode. _Py_DecRef() was -// added to Python 3.10.0a7, use Py_DecRef() on older Python versions. -// Py_DecRef() accepts NULL whereas _Py_IncRef() doesn't. -static inline void Py_DECREF(PyObject *op) { -# if Py_LIMITED_API+0 >= 0x030a00A7 - _Py_DecRef(op); -# else - Py_DecRef(op); -# endif -} -#define Py_DECREF(op) Py_DECREF(_PyObject_CAST(op)) - -#elif defined(Py_REF_DEBUG) -static inline void Py_DECREF(const char *filename, int lineno, PyObject *op) -{ - if (op->ob_refcnt <= 0) { - _Py_NegativeRefcount(filename, lineno, op); - } - if (_Py_IsImmortal(op)) { - return; - } - _Py_DECREF_STAT_INC(); - _Py_DECREF_DecRefTotal(); - if (--op->ob_refcnt == 0) { - _Py_Dealloc(op); - } -} -#define Py_DECREF(op) Py_DECREF(__FILE__, __LINE__, _PyObject_CAST(op)) - -#else -static inline Py_ALWAYS_INLINE void Py_DECREF(PyObject *op) -{ - // Non-limited C API and limited C API for Python 3.9 and older access - // directly PyObject.ob_refcnt. - if (_Py_IsImmortal(op)) { - return; - } - _Py_DECREF_STAT_INC(); - if (--op->ob_refcnt == 0) { - _Py_Dealloc(op); - } -} -#define Py_DECREF(op) Py_DECREF(_PyObject_CAST(op)) -#endif - - -/* Safely decref `op` and set `op` to NULL, especially useful in tp_clear - * and tp_dealloc implementations. - * - * Note that "the obvious" code can be deadly: - * - * Py_XDECREF(op); - * op = NULL; - * - * Typically, `op` is something like self->containee, and `self` is done - * using its `containee` member. In the code sequence above, suppose - * `containee` is non-NULL with a refcount of 1. Its refcount falls to - * 0 on the first line, which can trigger an arbitrary amount of code, - * possibly including finalizers (like __del__ methods or weakref callbacks) - * coded in Python, which in turn can release the GIL and allow other threads - * to run, etc. Such code may even invoke methods of `self` again, or cause - * cyclic gc to trigger, but-- oops! --self->containee still points to the - * object being torn down, and it may be in an insane state while being torn - * down. This has in fact been a rich historic source of miserable (rare & - * hard-to-diagnose) segfaulting (and other) bugs. - * - * The safe way is: - * - * Py_CLEAR(op); - * - * That arranges to set `op` to NULL _before_ decref'ing, so that any code - * triggered as a side-effect of `op` getting torn down no longer believes - * `op` points to a valid object. - * - * There are cases where it's safe to use the naive code, but they're brittle. - * For example, if `op` points to a Python integer, you know that destroying - * one of those can't cause problems -- but in part that relies on that - * Python integers aren't currently weakly referencable. Best practice is - * to use Py_CLEAR() even if you can't think of a reason for why you need to. - * - * gh-98724: Use a temporary variable to only evaluate the macro argument once, - * to avoid the duplication of side effects if the argument has side effects. - * - * gh-99701: If the PyObject* type is used with casting arguments to PyObject*, - * the code can be miscompiled with strict aliasing because of type punning. - * With strict aliasing, a compiler considers that two pointers of different - * types cannot read or write the same memory which enables optimization - * opportunities. - * - * If available, use _Py_TYPEOF() to use the 'op' type for temporary variables, - * and so avoid type punning. Otherwise, use memcpy() which causes type erasure - * and so prevents the compiler to reuse an old cached 'op' value after - * Py_CLEAR(). - */ -#ifdef _Py_TYPEOF -#define Py_CLEAR(op) \ - do { \ - _Py_TYPEOF(op)* _tmp_op_ptr = &(op); \ - _Py_TYPEOF(op) _tmp_old_op = (*_tmp_op_ptr); \ - if (_tmp_old_op != NULL) { \ - *_tmp_op_ptr = _Py_NULL; \ - Py_DECREF(_tmp_old_op); \ - } \ - } while (0) -#else -#define Py_CLEAR(op) \ - do { \ - PyObject **_tmp_op_ptr = _Py_CAST(PyObject**, &(op)); \ - PyObject *_tmp_old_op = (*_tmp_op_ptr); \ - if (_tmp_old_op != NULL) { \ - PyObject *_null_ptr = _Py_NULL; \ - memcpy(_tmp_op_ptr, &_null_ptr, sizeof(PyObject*)); \ - Py_DECREF(_tmp_old_op); \ - } \ - } while (0) -#endif - - -/* Function to use in case the object pointer can be NULL: */ -static inline void Py_XINCREF(PyObject *op) -{ - if (op != _Py_NULL) { - Py_INCREF(op); - } -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_XINCREF(op) Py_XINCREF(_PyObject_CAST(op)) -#endif - -static inline void Py_XDECREF(PyObject *op) -{ - if (op != _Py_NULL) { - Py_DECREF(op); - } -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_XDECREF(op) Py_XDECREF(_PyObject_CAST(op)) -#endif - -// Create a new strong reference to an object: -// increment the reference count of the object and return the object. -PyAPI_FUNC(PyObject*) Py_NewRef(PyObject *obj); - -// Similar to Py_NewRef(), but the object can be NULL. -PyAPI_FUNC(PyObject*) Py_XNewRef(PyObject *obj); - -static inline PyObject* _Py_NewRef(PyObject *obj) -{ - Py_INCREF(obj); - return obj; -} - -static inline PyObject* _Py_XNewRef(PyObject *obj) -{ - Py_XINCREF(obj); - return obj; -} - -// Py_NewRef() and Py_XNewRef() are exported as functions for the stable ABI. -// Names overridden with macros by static inline functions for best -// performances. -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_NewRef(obj) _Py_NewRef(_PyObject_CAST(obj)) -# define Py_XNewRef(obj) _Py_XNewRef(_PyObject_CAST(obj)) -#else -# define Py_NewRef(obj) _Py_NewRef(obj) -# define Py_XNewRef(obj) _Py_XNewRef(obj) -#endif - - -/* -_Py_NoneStruct is an object of undefined type which can be used in contexts -where NULL (nil) is not suitable (since NULL often means 'error'). - -Don't forget to apply Py_INCREF() when returning this value!!! -*/ -PyAPI_DATA(PyObject) _Py_NoneStruct; /* Don't use this directly */ -#define Py_None (&_Py_NoneStruct) - -// Test if an object is the None singleton, the same as "x is None" in Python. -PyAPI_FUNC(int) Py_IsNone(PyObject *x); -#define Py_IsNone(x) Py_Is((x), Py_None) - -/* Macro for returning Py_None from a function */ -#define Py_RETURN_NONE return Py_None - -/* -Py_NotImplemented is a singleton used to signal that an operation is -not implemented for a given type combination. -*/ -PyAPI_DATA(PyObject) _Py_NotImplementedStruct; /* Don't use this directly */ -#define Py_NotImplemented (&_Py_NotImplementedStruct) - -/* Macro for returning Py_NotImplemented from a function */ -#define Py_RETURN_NOTIMPLEMENTED return Py_NotImplemented - -/* Rich comparison opcodes */ -#define Py_LT 0 -#define Py_LE 1 -#define Py_EQ 2 -#define Py_NE 3 -#define Py_GT 4 -#define Py_GE 5 - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -/* Result of calling PyIter_Send */ -typedef enum { - PYGEN_RETURN = 0, - PYGEN_ERROR = -1, - PYGEN_NEXT = 1, -} PySendResult; -#endif - -/* - * Macro for implementing rich comparisons - * - * Needs to be a macro because any C-comparable type can be used. - */ -#define Py_RETURN_RICHCOMPARE(val1, val2, op) \ - do { \ - switch (op) { \ - case Py_EQ: if ((val1) == (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_NE: if ((val1) != (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_LT: if ((val1) < (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_GT: if ((val1) > (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_LE: if ((val1) <= (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - case Py_GE: if ((val1) >= (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE; \ - default: \ - Py_UNREACHABLE(); \ - } \ - } while (0) - - -/* -More conventions -================ - -Argument Checking ------------------ - -Functions that take objects as arguments normally don't check for nil -arguments, but they do check the type of the argument, and return an -error if the function doesn't apply to the type. - -Failure Modes -------------- - -Functions may fail for a variety of reasons, including running out of -memory. This is communicated to the caller in two ways: an error string -is set (see errors.h), and the function result differs: functions that -normally return a pointer return NULL for failure, functions returning -an integer return -1 (which could be a legal return value too!), and -other functions return 0 for success and -1 for failure. -Callers should always check for errors before using the result. If -an error was set, the caller must either explicitly clear it, or pass -the error on to its caller. - -Reference Counts ----------------- - -It takes a while to get used to the proper usage of reference counts. - -Functions that create an object set the reference count to 1; such new -objects must be stored somewhere or destroyed again with Py_DECREF(). -Some functions that 'store' objects, such as PyTuple_SetItem() and -PyList_SetItem(), -don't increment the reference count of the object, since the most -frequent use is to store a fresh object. Functions that 'retrieve' -objects, such as PyTuple_GetItem() and PyDict_GetItemString(), also -don't increment -the reference count, since most frequently the object is only looked at -quickly. Thus, to retrieve an object and store it again, the caller -must call Py_INCREF() explicitly. - -NOTE: functions that 'consume' a reference count, like -PyList_SetItem(), consume the reference even if the object wasn't -successfully stored, to simplify error handling. - -It seems attractive to make other functions that take an object as -argument consume a reference count; however, this may quickly get -confusing (even the current practice is already confusing). Consider -it carefully, it may save lots of calls to Py_INCREF() and Py_DECREF() at -times. -*/ - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_OBJECT_H -# include "cpython/object.h" -# undef Py_CPYTHON_OBJECT_H -#endif - - -static inline int -PyType_HasFeature(PyTypeObject *type, unsigned long feature) -{ - unsigned long flags; -#ifdef Py_LIMITED_API - // PyTypeObject is opaque in the limited C API - flags = PyType_GetFlags(type); -#else - flags = type->tp_flags; -#endif - return ((flags & feature) != 0); -} - -#define PyType_FastSubclass(type, flag) PyType_HasFeature((type), (flag)) - -static inline int PyType_Check(PyObject *op) { - return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyType_Check(op) PyType_Check(_PyObject_CAST(op)) -#endif - -#define _PyType_CAST(op) \ - (assert(PyType_Check(op)), _Py_CAST(PyTypeObject*, (op))) - -static inline int PyType_CheckExact(PyObject *op) { - return Py_IS_TYPE(op, &PyType_Type); -} -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define PyType_CheckExact(op) PyType_CheckExact(_PyObject_CAST(op)) -#endif - -#ifdef __cplusplus -} -#endif -#endif // !Py_OBJECT_H diff --git a/_Pre_Builds/_Python312_cpp/include/objimpl.h b/_Pre_Builds/_Python312_cpp/include/objimpl.h deleted file mode 100644 index ef871c5..0000000 --- a/_Pre_Builds/_Python312_cpp/include/objimpl.h +++ /dev/null @@ -1,234 +0,0 @@ -/* The PyObject_ memory family: high-level object memory interfaces. - See pymem.h for the low-level PyMem_ family. -*/ - -#ifndef Py_OBJIMPL_H -#define Py_OBJIMPL_H - -#include "pymem.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BEWARE: - - Each interface exports both functions and macros. Extension modules should - use the functions, to ensure binary compatibility across Python versions. - Because the Python implementation is free to change internal details, and - the macros may (or may not) expose details for speed, if you do use the - macros you must recompile your extensions with each Python release. - - Never mix calls to PyObject_ memory functions with calls to the platform - malloc/realloc/ calloc/free, or with calls to PyMem_. -*/ - -/* -Functions and macros for modules that implement new object types. - - - PyObject_New(type, typeobj) allocates memory for a new object of the given - type, and initializes part of it. 'type' must be the C structure type used - to represent the object, and 'typeobj' the address of the corresponding - type object. Reference count and type pointer are filled in; the rest of - the bytes of the object are *undefined*! The resulting expression type is - 'type *'. The size of the object is determined by the tp_basicsize field - of the type object. - - - PyObject_NewVar(type, typeobj, n) is similar but allocates a variable-size - object with room for n items. In addition to the refcount and type pointer - fields, this also fills in the ob_size field. - - - PyObject_Free(op) releases the memory allocated for an object. It does not - run a destructor -- it only frees the memory. PyObject_Free is identical. - - - PyObject_Init(op, typeobj) and PyObject_InitVar(op, typeobj, n) don't - allocate memory. Instead of a 'type' parameter, they take a pointer to a - new object (allocated by an arbitrary allocator), and initialize its object - header fields. - -Note that objects created with PyObject_{New, NewVar} are allocated using the -specialized Python allocator (implemented in obmalloc.c), if WITH_PYMALLOC is -enabled. In addition, a special debugging allocator is used if Py_DEBUG -macro is also defined. - -In case a specific form of memory management is needed (for example, if you -must use the platform malloc heap(s), or shared memory, or C++ local storage or -operator new), you must first allocate the object with your custom allocator, -then pass its pointer to PyObject_{Init, InitVar} for filling in its Python- -specific fields: reference count, type pointer, possibly others. You should -be aware that Python has no control over these objects because they don't -cooperate with the Python memory manager. Such objects may not be eligible -for automatic garbage collection and you have to make sure that they are -released accordingly whenever their destructor gets called (cf. the specific -form of memory management you're using). - -Unless you have specific memory management requirements, use -PyObject_{New, NewVar, Del}. -*/ - -/* - * Raw object memory interface - * =========================== - */ - -/* Functions to call the same malloc/realloc/free as used by Python's - object allocator. If WITH_PYMALLOC is enabled, these may differ from - the platform malloc/realloc/free. The Python object allocator is - designed for fast, cache-conscious allocation of many "small" objects, - and with low hidden memory overhead. - - PyObject_Malloc(0) returns a unique non-NULL pointer if possible. - - PyObject_Realloc(NULL, n) acts like PyObject_Malloc(n). - PyObject_Realloc(p != NULL, 0) does not return NULL, or free the memory - at p. - - Returned pointers must be checked for NULL explicitly; no action is - performed on failure other than to return NULL (no warning it printed, no - exception is set, etc). - - For allocating objects, use PyObject_{New, NewVar} instead whenever - possible. The PyObject_{Malloc, Realloc, Free} family is exposed - so that you can exploit Python's small-block allocator for non-object - uses. If you must use these routines to allocate object memory, make sure - the object gets initialized via PyObject_{Init, InitVar} after obtaining - the raw memory. -*/ -PyAPI_FUNC(void *) PyObject_Malloc(size_t size); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(void *) PyObject_Calloc(size_t nelem, size_t elsize); -#endif -PyAPI_FUNC(void *) PyObject_Realloc(void *ptr, size_t new_size); -PyAPI_FUNC(void) PyObject_Free(void *ptr); - - -// Deprecated aliases only kept for backward compatibility. -// PyObject_Del and PyObject_DEL are defined with no parameter to be able to -// use them as function pointers (ex: tp_free = PyObject_Del). -#define PyObject_MALLOC PyObject_Malloc -#define PyObject_REALLOC PyObject_Realloc -#define PyObject_FREE PyObject_Free -#define PyObject_Del PyObject_Free -#define PyObject_DEL PyObject_Free - - -/* - * Generic object allocator interface - * ================================== - */ - -/* Functions */ -PyAPI_FUNC(PyObject *) PyObject_Init(PyObject *, PyTypeObject *); -PyAPI_FUNC(PyVarObject *) PyObject_InitVar(PyVarObject *, - PyTypeObject *, Py_ssize_t); - -#define PyObject_INIT(op, typeobj) \ - PyObject_Init(_PyObject_CAST(op), (typeobj)) -#define PyObject_INIT_VAR(op, typeobj, size) \ - PyObject_InitVar(_PyVarObject_CAST(op), (typeobj), (size)) - - -PyAPI_FUNC(PyObject *) _PyObject_New(PyTypeObject *); -PyAPI_FUNC(PyVarObject *) _PyObject_NewVar(PyTypeObject *, Py_ssize_t); - -#define PyObject_New(type, typeobj) ((type *)_PyObject_New(typeobj)) - -// Alias to PyObject_New(). In Python 3.8, PyObject_NEW() called directly -// PyObject_MALLOC() with _PyObject_SIZE(). -#define PyObject_NEW(type, typeobj) PyObject_New(type, (typeobj)) - -#define PyObject_NewVar(type, typeobj, n) \ - ( (type *) _PyObject_NewVar((typeobj), (n)) ) - -// Alias to PyObject_NewVar(). In Python 3.8, PyObject_NEW_VAR() called -// directly PyObject_MALLOC() with _PyObject_VAR_SIZE(). -#define PyObject_NEW_VAR(type, typeobj, n) PyObject_NewVar(type, (typeobj), (n)) - - -/* - * Garbage Collection Support - * ========================== - */ - -/* C equivalent of gc.collect(). */ -PyAPI_FUNC(Py_ssize_t) PyGC_Collect(void); -/* C API for controlling the state of the garbage collector */ -PyAPI_FUNC(int) PyGC_Enable(void); -PyAPI_FUNC(int) PyGC_Disable(void); -PyAPI_FUNC(int) PyGC_IsEnabled(void); - - -#if !defined(Py_LIMITED_API) -/* Visit all live GC-capable objects, similar to gc.get_objects(None). The - * supplied callback is called on every such object with the void* arg set - * to the supplied arg. Returning 0 from the callback ends iteration, returning - * 1 allows iteration to continue. Returning any other value may result in - * undefined behaviour. - * - * If new objects are (de)allocated by the callback it is undefined if they - * will be visited. - - * Garbage collection is disabled during operation. Explicitly running a - * collection in the callback may lead to undefined behaviour e.g. visiting the - * same objects multiple times or not at all. - */ -typedef int (*gcvisitobjects_t)(PyObject*, void*); -PyAPI_FUNC(void) PyUnstable_GC_VisitObjects(gcvisitobjects_t callback, void* arg); -#endif - -/* Test if a type has a GC head */ -#define PyType_IS_GC(t) PyType_HasFeature((t), Py_TPFLAGS_HAVE_GC) - -PyAPI_FUNC(PyVarObject *) _PyObject_GC_Resize(PyVarObject *, Py_ssize_t); -#define PyObject_GC_Resize(type, op, n) \ - ( (type *) _PyObject_GC_Resize(_PyVarObject_CAST(op), (n)) ) - - - -PyAPI_FUNC(PyObject *) _PyObject_GC_New(PyTypeObject *); -PyAPI_FUNC(PyVarObject *) _PyObject_GC_NewVar(PyTypeObject *, Py_ssize_t); - -/* Tell the GC to track this object. - * - * See also private _PyObject_GC_TRACK() macro. */ -PyAPI_FUNC(void) PyObject_GC_Track(void *); - -/* Tell the GC to stop tracking this object. - * - * See also private _PyObject_GC_UNTRACK() macro. */ -PyAPI_FUNC(void) PyObject_GC_UnTrack(void *); - -PyAPI_FUNC(void) PyObject_GC_Del(void *); - -#define PyObject_GC_New(type, typeobj) \ - _Py_CAST(type*, _PyObject_GC_New(typeobj)) -#define PyObject_GC_NewVar(type, typeobj, n) \ - _Py_CAST(type*, _PyObject_GC_NewVar((typeobj), (n))) - -PyAPI_FUNC(int) PyObject_GC_IsTracked(PyObject *); -PyAPI_FUNC(int) PyObject_GC_IsFinalized(PyObject *); - -/* Utility macro to help write tp_traverse functions. - * To use this macro, the tp_traverse function must name its arguments - * "visit" and "arg". This is intended to keep tp_traverse functions - * looking as much alike as possible. - */ -#define Py_VISIT(op) \ - do { \ - if (op) { \ - int vret = visit(_PyObject_CAST(op), arg); \ - if (vret) \ - return vret; \ - } \ - } while (0) - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_OBJIMPL_H -# include "cpython/objimpl.h" -# undef Py_CPYTHON_OBJIMPL_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OBJIMPL_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/opcode.h b/_Pre_Builds/_Python312_cpp/include/opcode.h deleted file mode 100644 index 9806511..0000000 --- a/_Pre_Builds/_Python312_cpp/include/opcode.h +++ /dev/null @@ -1,271 +0,0 @@ -// Auto-generated by Tools/build/generate_opcode_h.py from Lib/opcode.py - -#ifndef Py_OPCODE_H -#define Py_OPCODE_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Instruction opcodes for compiled code */ -#define CACHE 0 -#define POP_TOP 1 -#define PUSH_NULL 2 -#define INTERPRETER_EXIT 3 -#define END_FOR 4 -#define END_SEND 5 -#define NOP 9 -#define UNARY_NEGATIVE 11 -#define UNARY_NOT 12 -#define UNARY_INVERT 15 -#define RESERVED 17 -#define BINARY_SUBSCR 25 -#define BINARY_SLICE 26 -#define STORE_SLICE 27 -#define GET_LEN 30 -#define MATCH_MAPPING 31 -#define MATCH_SEQUENCE 32 -#define MATCH_KEYS 33 -#define PUSH_EXC_INFO 35 -#define CHECK_EXC_MATCH 36 -#define CHECK_EG_MATCH 37 -#define WITH_EXCEPT_START 49 -#define GET_AITER 50 -#define GET_ANEXT 51 -#define BEFORE_ASYNC_WITH 52 -#define BEFORE_WITH 53 -#define END_ASYNC_FOR 54 -#define CLEANUP_THROW 55 -#define STORE_SUBSCR 60 -#define DELETE_SUBSCR 61 -#define GET_ITER 68 -#define GET_YIELD_FROM_ITER 69 -#define LOAD_BUILD_CLASS 71 -#define LOAD_ASSERTION_ERROR 74 -#define RETURN_GENERATOR 75 -#define RETURN_VALUE 83 -#define SETUP_ANNOTATIONS 85 -#define LOAD_LOCALS 87 -#define POP_EXCEPT 89 -#define HAVE_ARGUMENT 90 -#define STORE_NAME 90 -#define DELETE_NAME 91 -#define UNPACK_SEQUENCE 92 -#define FOR_ITER 93 -#define UNPACK_EX 94 -#define STORE_ATTR 95 -#define DELETE_ATTR 96 -#define STORE_GLOBAL 97 -#define DELETE_GLOBAL 98 -#define SWAP 99 -#define LOAD_CONST 100 -#define LOAD_NAME 101 -#define BUILD_TUPLE 102 -#define BUILD_LIST 103 -#define BUILD_SET 104 -#define BUILD_MAP 105 -#define LOAD_ATTR 106 -#define COMPARE_OP 107 -#define IMPORT_NAME 108 -#define IMPORT_FROM 109 -#define JUMP_FORWARD 110 -#define POP_JUMP_IF_FALSE 114 -#define POP_JUMP_IF_TRUE 115 -#define LOAD_GLOBAL 116 -#define IS_OP 117 -#define CONTAINS_OP 118 -#define RERAISE 119 -#define COPY 120 -#define RETURN_CONST 121 -#define BINARY_OP 122 -#define SEND 123 -#define LOAD_FAST 124 -#define STORE_FAST 125 -#define DELETE_FAST 126 -#define LOAD_FAST_CHECK 127 -#define POP_JUMP_IF_NOT_NONE 128 -#define POP_JUMP_IF_NONE 129 -#define RAISE_VARARGS 130 -#define GET_AWAITABLE 131 -#define MAKE_FUNCTION 132 -#define BUILD_SLICE 133 -#define JUMP_BACKWARD_NO_INTERRUPT 134 -#define MAKE_CELL 135 -#define LOAD_CLOSURE 136 -#define LOAD_DEREF 137 -#define STORE_DEREF 138 -#define DELETE_DEREF 139 -#define JUMP_BACKWARD 140 -#define LOAD_SUPER_ATTR 141 -#define CALL_FUNCTION_EX 142 -#define LOAD_FAST_AND_CLEAR 143 -#define EXTENDED_ARG 144 -#define LIST_APPEND 145 -#define SET_ADD 146 -#define MAP_ADD 147 -#define COPY_FREE_VARS 149 -#define YIELD_VALUE 150 -#define RESUME 151 -#define MATCH_CLASS 152 -#define FORMAT_VALUE 155 -#define BUILD_CONST_KEY_MAP 156 -#define BUILD_STRING 157 -#define LIST_EXTEND 162 -#define SET_UPDATE 163 -#define DICT_MERGE 164 -#define DICT_UPDATE 165 -#define CALL 171 -#define KW_NAMES 172 -#define CALL_INTRINSIC_1 173 -#define CALL_INTRINSIC_2 174 -#define LOAD_FROM_DICT_OR_GLOBALS 175 -#define LOAD_FROM_DICT_OR_DEREF 176 -#define MIN_INSTRUMENTED_OPCODE 237 -#define INSTRUMENTED_LOAD_SUPER_ATTR 237 -#define INSTRUMENTED_POP_JUMP_IF_NONE 238 -#define INSTRUMENTED_POP_JUMP_IF_NOT_NONE 239 -#define INSTRUMENTED_RESUME 240 -#define INSTRUMENTED_CALL 241 -#define INSTRUMENTED_RETURN_VALUE 242 -#define INSTRUMENTED_YIELD_VALUE 243 -#define INSTRUMENTED_CALL_FUNCTION_EX 244 -#define INSTRUMENTED_JUMP_FORWARD 245 -#define INSTRUMENTED_JUMP_BACKWARD 246 -#define INSTRUMENTED_RETURN_CONST 247 -#define INSTRUMENTED_FOR_ITER 248 -#define INSTRUMENTED_POP_JUMP_IF_FALSE 249 -#define INSTRUMENTED_POP_JUMP_IF_TRUE 250 -#define INSTRUMENTED_END_FOR 251 -#define INSTRUMENTED_END_SEND 252 -#define INSTRUMENTED_INSTRUCTION 253 -#define INSTRUMENTED_LINE 254 -#define MIN_PSEUDO_OPCODE 256 -#define SETUP_FINALLY 256 -#define SETUP_CLEANUP 257 -#define SETUP_WITH 258 -#define POP_BLOCK 259 -#define JUMP 260 -#define JUMP_NO_INTERRUPT 261 -#define LOAD_METHOD 262 -#define LOAD_SUPER_METHOD 263 -#define LOAD_ZERO_SUPER_METHOD 264 -#define LOAD_ZERO_SUPER_ATTR 265 -#define STORE_FAST_MAYBE_NULL 266 -#define MAX_PSEUDO_OPCODE 266 -#define BINARY_OP_ADD_FLOAT 6 -#define BINARY_OP_ADD_INT 7 -#define BINARY_OP_ADD_UNICODE 8 -#define BINARY_OP_INPLACE_ADD_UNICODE 10 -#define BINARY_OP_MULTIPLY_FLOAT 13 -#define BINARY_OP_MULTIPLY_INT 14 -#define BINARY_OP_SUBTRACT_FLOAT 16 -#define BINARY_OP_SUBTRACT_INT 18 -#define BINARY_SUBSCR_DICT 19 -#define BINARY_SUBSCR_GETITEM 20 -#define BINARY_SUBSCR_LIST_INT 21 -#define BINARY_SUBSCR_TUPLE_INT 22 -#define CALL_PY_EXACT_ARGS 23 -#define CALL_PY_WITH_DEFAULTS 24 -#define CALL_BOUND_METHOD_EXACT_ARGS 28 -#define CALL_BUILTIN_CLASS 29 -#define CALL_BUILTIN_FAST_WITH_KEYWORDS 34 -#define CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 38 -#define CALL_NO_KW_BUILTIN_FAST 39 -#define CALL_NO_KW_BUILTIN_O 40 -#define CALL_NO_KW_ISINSTANCE 41 -#define CALL_NO_KW_LEN 42 -#define CALL_NO_KW_LIST_APPEND 43 -#define CALL_NO_KW_METHOD_DESCRIPTOR_FAST 44 -#define CALL_NO_KW_METHOD_DESCRIPTOR_NOARGS 45 -#define CALL_NO_KW_METHOD_DESCRIPTOR_O 46 -#define CALL_NO_KW_STR_1 47 -#define CALL_NO_KW_TUPLE_1 48 -#define CALL_NO_KW_TYPE_1 56 -#define COMPARE_OP_FLOAT 57 -#define COMPARE_OP_INT 58 -#define COMPARE_OP_STR 59 -#define FOR_ITER_LIST 62 -#define FOR_ITER_TUPLE 63 -#define FOR_ITER_RANGE 64 -#define FOR_ITER_GEN 65 -#define LOAD_SUPER_ATTR_ATTR 66 -#define LOAD_SUPER_ATTR_METHOD 67 -#define LOAD_ATTR_CLASS 70 -#define LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN 72 -#define LOAD_ATTR_INSTANCE_VALUE 73 -#define LOAD_ATTR_MODULE 76 -#define LOAD_ATTR_PROPERTY 77 -#define LOAD_ATTR_SLOT 78 -#define LOAD_ATTR_WITH_HINT 79 -#define LOAD_ATTR_METHOD_LAZY_DICT 80 -#define LOAD_ATTR_METHOD_NO_DICT 81 -#define LOAD_ATTR_METHOD_WITH_VALUES 82 -#define LOAD_CONST__LOAD_FAST 84 -#define LOAD_FAST__LOAD_CONST 86 -#define LOAD_FAST__LOAD_FAST 88 -#define LOAD_GLOBAL_BUILTIN 111 -#define LOAD_GLOBAL_MODULE 112 -#define STORE_ATTR_INSTANCE_VALUE 113 -#define STORE_ATTR_SLOT 148 -#define STORE_ATTR_WITH_HINT 153 -#define STORE_FAST__LOAD_FAST 154 -#define STORE_FAST__STORE_FAST 158 -#define STORE_SUBSCR_DICT 159 -#define STORE_SUBSCR_LIST_INT 160 -#define UNPACK_SEQUENCE_LIST 161 -#define UNPACK_SEQUENCE_TUPLE 166 -#define UNPACK_SEQUENCE_TWO_TUPLE 167 -#define SEND_GEN 168 - -#define HAS_ARG(op) ((((op) >= HAVE_ARGUMENT) && (!IS_PSEUDO_OPCODE(op)))\ - || ((op) == JUMP) \ - || ((op) == JUMP_NO_INTERRUPT) \ - || ((op) == LOAD_METHOD) \ - || ((op) == LOAD_SUPER_METHOD) \ - || ((op) == LOAD_ZERO_SUPER_METHOD) \ - || ((op) == LOAD_ZERO_SUPER_ATTR) \ - || ((op) == STORE_FAST_MAYBE_NULL) \ - ) - -#define HAS_CONST(op) (false\ - || ((op) == LOAD_CONST) \ - || ((op) == RETURN_CONST) \ - || ((op) == KW_NAMES) \ - ) - -#define NB_ADD 0 -#define NB_AND 1 -#define NB_FLOOR_DIVIDE 2 -#define NB_LSHIFT 3 -#define NB_MATRIX_MULTIPLY 4 -#define NB_MULTIPLY 5 -#define NB_REMAINDER 6 -#define NB_OR 7 -#define NB_POWER 8 -#define NB_RSHIFT 9 -#define NB_SUBTRACT 10 -#define NB_TRUE_DIVIDE 11 -#define NB_XOR 12 -#define NB_INPLACE_ADD 13 -#define NB_INPLACE_AND 14 -#define NB_INPLACE_FLOOR_DIVIDE 15 -#define NB_INPLACE_LSHIFT 16 -#define NB_INPLACE_MATRIX_MULTIPLY 17 -#define NB_INPLACE_MULTIPLY 18 -#define NB_INPLACE_REMAINDER 19 -#define NB_INPLACE_OR 20 -#define NB_INPLACE_POWER 21 -#define NB_INPLACE_RSHIFT 22 -#define NB_INPLACE_SUBTRACT 23 -#define NB_INPLACE_TRUE_DIVIDE 24 -#define NB_INPLACE_XOR 25 - -/* Defined in Lib/opcode.py */ -#define ENABLE_SPECIALIZATION 1 - -#define IS_PSEUDO_OPCODE(op) (((op) >= MIN_PSEUDO_OPCODE) && ((op) <= MAX_PSEUDO_OPCODE)) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OPCODE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/osdefs.h b/_Pre_Builds/_Python312_cpp/include/osdefs.h deleted file mode 100644 index 3243944..0000000 --- a/_Pre_Builds/_Python312_cpp/include/osdefs.h +++ /dev/null @@ -1,51 +0,0 @@ -#ifndef Py_OSDEFS_H -#define Py_OSDEFS_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Operating system dependencies */ - -#ifdef MS_WINDOWS -#define SEP L'\\' -#define ALTSEP L'/' -#define MAXPATHLEN 256 -#define DELIM L';' -#endif - -#ifdef __VXWORKS__ -#define DELIM L';' -#endif - -/* Filename separator */ -#ifndef SEP -#define SEP L'/' -#endif - -/* Max pathname length */ -#ifdef __hpux -#include -#include -#ifndef PATH_MAX -#define PATH_MAX MAXPATHLEN -#endif -#endif - -#ifndef MAXPATHLEN -#if defined(PATH_MAX) && PATH_MAX > 1024 -#define MAXPATHLEN PATH_MAX -#else -#define MAXPATHLEN 1024 -#endif -#endif - -/* Search path entry delimiter */ -#ifndef DELIM -#define DELIM L':' -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OSDEFS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/osmodule.h b/_Pre_Builds/_Python312_cpp/include/osmodule.h deleted file mode 100644 index 9095c2f..0000000 --- a/_Pre_Builds/_Python312_cpp/include/osmodule.h +++ /dev/null @@ -1,17 +0,0 @@ - -/* os module interface */ - -#ifndef Py_OSMODULE_H -#define Py_OSMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_FUNC(PyObject *) PyOS_FSPath(PyObject *path); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_OSMODULE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/patchlevel.h b/_Pre_Builds/_Python312_cpp/include/patchlevel.h deleted file mode 100644 index e7316df..0000000 --- a/_Pre_Builds/_Python312_cpp/include/patchlevel.h +++ /dev/null @@ -1,35 +0,0 @@ - -/* Python version identification scheme. - - When the major or minor version changes, the VERSION variable in - configure.ac must also be changed. - - There is also (independent) API version information in modsupport.h. -*/ - -/* Values for PY_RELEASE_LEVEL */ -#define PY_RELEASE_LEVEL_ALPHA 0xA -#define PY_RELEASE_LEVEL_BETA 0xB -#define PY_RELEASE_LEVEL_GAMMA 0xC /* For release candidates */ -#define PY_RELEASE_LEVEL_FINAL 0xF /* Serial should be 0 here */ - /* Higher for patch releases */ - -/* Version parsed out into numeric values */ -/*--start constants--*/ -#define PY_MAJOR_VERSION 3 -#define PY_MINOR_VERSION 12 -#define PY_MICRO_VERSION 2 -#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL -#define PY_RELEASE_SERIAL 0 - -/* Version as a string */ -#define PY_VERSION "3.12.2" -/*--end constants--*/ - -/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2. - Use this for numeric comparisons, e.g. #if PY_VERSION_HEX >= ... */ -#define PY_VERSION_HEX ((PY_MAJOR_VERSION << 24) | \ - (PY_MINOR_VERSION << 16) | \ - (PY_MICRO_VERSION << 8) | \ - (PY_RELEASE_LEVEL << 4) | \ - (PY_RELEASE_SERIAL << 0)) diff --git a/_Pre_Builds/_Python312_cpp/include/py_curses.h b/_Pre_Builds/_Python312_cpp/include/py_curses.h deleted file mode 100644 index e46b08e..0000000 --- a/_Pre_Builds/_Python312_cpp/include/py_curses.h +++ /dev/null @@ -1,99 +0,0 @@ - -#ifndef Py_CURSES_H -#define Py_CURSES_H - -#ifdef __APPLE__ -/* -** On Mac OS X 10.2 [n]curses.h and stdlib.h use different guards -** against multiple definition of wchar_t. -*/ -#ifdef _BSD_WCHAR_T_DEFINED_ -#define _WCHAR_T -#endif -#endif /* __APPLE__ */ - -/* On FreeBSD, [n]curses.h and stdlib.h/wchar.h use different guards - against multiple definition of wchar_t and wint_t. */ -#if defined(__FreeBSD__) && defined(_XOPEN_SOURCE_EXTENDED) -# ifndef __wchar_t -# define __wchar_t -# endif -# ifndef __wint_t -# define __wint_t -# endif -#endif - -#if !defined(HAVE_CURSES_IS_PAD) && defined(WINDOW_HAS_FLAGS) -/* The following definition is necessary for ncurses 5.7; without it, - some of [n]curses.h set NCURSES_OPAQUE to 1, and then Python - can't get at the WINDOW flags field. */ -#define NCURSES_OPAQUE 0 -#endif - -#ifdef HAVE_NCURSES_H -#include -#else -#include -#endif - -#ifdef HAVE_NCURSES_H -/* configure was checking , but we will - use , which has some or all these features. */ -#if !defined(WINDOW_HAS_FLAGS) && !(NCURSES_OPAQUE+0) -#define WINDOW_HAS_FLAGS 1 -#endif -#if !defined(HAVE_CURSES_IS_PAD) && NCURSES_VERSION_PATCH+0 >= 20090906 -#define HAVE_CURSES_IS_PAD 1 -#endif -#ifndef MVWDELCH_IS_EXPRESSION -#define MVWDELCH_IS_EXPRESSION 1 -#endif -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -#define PyCurses_API_pointers 4 - -/* Type declarations */ - -typedef struct { - PyObject_HEAD - WINDOW *win; - char *encoding; -} PyCursesWindowObject; - -#define PyCursesWindow_Check(v) Py_IS_TYPE((v), &PyCursesWindow_Type) - -#define PyCurses_CAPSULE_NAME "_curses._C_API" - - -#ifdef CURSES_MODULE -/* This section is used when compiling _cursesmodule.c */ - -#else -/* This section is used in modules that use the _cursesmodule API */ - -static void **PyCurses_API; - -#define PyCursesWindow_Type (*_PyType_CAST(PyCurses_API[0])) -#define PyCursesSetupTermCalled {if (! ((int (*)(void))PyCurses_API[1]) () ) return NULL;} -#define PyCursesInitialised {if (! ((int (*)(void))PyCurses_API[2]) () ) return NULL;} -#define PyCursesInitialisedColor {if (! ((int (*)(void))PyCurses_API[3]) () ) return NULL;} - -#define import_curses() \ - PyCurses_API = (void **)PyCapsule_Import(PyCurses_CAPSULE_NAME, 1); - -#endif - -/* general error messages */ -static const char catchall_ERR[] = "curses function returned ERR"; -static const char catchall_NULL[] = "curses function returned NULL"; - -#ifdef __cplusplus -} -#endif - -#endif /* !defined(Py_CURSES_H) */ - diff --git a/_Pre_Builds/_Python312_cpp/include/pybuffer.h b/_Pre_Builds/_Python312_cpp/include/pybuffer.h deleted file mode 100644 index ca1c605..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pybuffer.h +++ /dev/null @@ -1,145 +0,0 @@ -/* Public Py_buffer API */ - -#ifndef Py_BUFFER_H -#define Py_BUFFER_H -#ifdef __cplusplus -extern "C" { -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030b0000 - -/* === New Buffer API ============================================ - * Limited API and stable ABI since Python 3.11 - * - * Py_buffer struct layout and size is now part of the stable abi3. The - * struct layout and size must not be changed in any way, as it would - * break the ABI. - * - */ - -typedef struct { - void *buf; - PyObject *obj; /* owned reference */ - Py_ssize_t len; - Py_ssize_t itemsize; /* This is Py_ssize_t so it can be - pointed to by strides in simple case.*/ - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; -} Py_buffer; - -typedef int (*getbufferproc)(PyObject *, Py_buffer *, int); -typedef void (*releasebufferproc)(PyObject *, Py_buffer *); - -/* Return 1 if the getbuffer function is available, otherwise return 0. */ -PyAPI_FUNC(int) PyObject_CheckBuffer(PyObject *obj); - -/* This is a C-API version of the getbuffer function call. It checks - to make sure object has the required function pointer and issues the - call. - - Returns -1 and raises an error on failure and returns 0 on success. */ -PyAPI_FUNC(int) PyObject_GetBuffer(PyObject *obj, Py_buffer *view, - int flags); - -/* Get the memory area pointed to by the indices for the buffer given. - Note that view->ndim is the assumed size of indices. */ -PyAPI_FUNC(void *) PyBuffer_GetPointer(const Py_buffer *view, const Py_ssize_t *indices); - -/* Return the implied itemsize of the data-format area from a - struct-style description. */ -PyAPI_FUNC(Py_ssize_t) PyBuffer_SizeFromFormat(const char *format); - -/* Implementation in memoryobject.c */ -PyAPI_FUNC(int) PyBuffer_ToContiguous(void *buf, const Py_buffer *view, - Py_ssize_t len, char order); - -PyAPI_FUNC(int) PyBuffer_FromContiguous(const Py_buffer *view, const void *buf, - Py_ssize_t len, char order); - -/* Copy len bytes of data from the contiguous chunk of memory - pointed to by buf into the buffer exported by obj. Return - 0 on success and return -1 and raise a PyBuffer_Error on - error (i.e. the object does not have a buffer interface or - it is not working). - - If fort is 'F', then if the object is multi-dimensional, - then the data will be copied into the array in - Fortran-style (first dimension varies the fastest). If - fort is 'C', then the data will be copied into the array - in C-style (last dimension varies the fastest). If fort - is 'A', then it does not matter and the copy will be made - in whatever way is more efficient. */ -PyAPI_FUNC(int) PyObject_CopyData(PyObject *dest, PyObject *src); - -/* Copy the data from the src buffer to the buffer of destination. */ -PyAPI_FUNC(int) PyBuffer_IsContiguous(const Py_buffer *view, char fort); - -/*Fill the strides array with byte-strides of a contiguous - (Fortran-style if fort is 'F' or C-style otherwise) - array of the given shape with the given number of bytes - per element. */ -PyAPI_FUNC(void) PyBuffer_FillContiguousStrides(int ndims, - Py_ssize_t *shape, - Py_ssize_t *strides, - int itemsize, - char fort); - -/* Fills in a buffer-info structure correctly for an exporter - that can only share a contiguous chunk of memory of - "unsigned bytes" of the given length. - - Returns 0 on success and -1 (with raising an error) on error. */ -PyAPI_FUNC(int) PyBuffer_FillInfo(Py_buffer *view, PyObject *o, void *buf, - Py_ssize_t len, int readonly, - int flags); - -/* Releases a Py_buffer obtained from getbuffer ParseTuple's "s*". */ -PyAPI_FUNC(void) PyBuffer_Release(Py_buffer *view); - -/* Maximum number of dimensions */ -#define PyBUF_MAX_NDIM 64 - -/* Flags for getting buffers. Keep these in sync with inspect.BufferFlags. */ -#define PyBUF_SIMPLE 0 -#define PyBUF_WRITABLE 0x0001 - -#ifndef Py_LIMITED_API -/* we used to include an E, backwards compatible alias */ -#define PyBUF_WRITEABLE PyBUF_WRITABLE -#endif - -#define PyBUF_FORMAT 0x0004 -#define PyBUF_ND 0x0008 -#define PyBUF_STRIDES (0x0010 | PyBUF_ND) -#define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) -#define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) -#define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) -#define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#define PyBUF_CONTIG (PyBUF_ND | PyBUF_WRITABLE) -#define PyBUF_CONTIG_RO (PyBUF_ND) - -#define PyBUF_STRIDED (PyBUF_STRIDES | PyBUF_WRITABLE) -#define PyBUF_STRIDED_RO (PyBUF_STRIDES) - -#define PyBUF_RECORDS (PyBUF_STRIDES | PyBUF_WRITABLE | PyBUF_FORMAT) -#define PyBUF_RECORDS_RO (PyBUF_STRIDES | PyBUF_FORMAT) - -#define PyBUF_FULL (PyBUF_INDIRECT | PyBUF_WRITABLE | PyBUF_FORMAT) -#define PyBUF_FULL_RO (PyBUF_INDIRECT | PyBUF_FORMAT) - - -#define PyBUF_READ 0x100 -#define PyBUF_WRITE 0x200 - -#endif /* !Py_LIMITED_API || Py_LIMITED_API >= 3.11 */ - -#ifdef __cplusplus -} -#endif -#endif /* Py_BUFFER_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pycapsule.h b/_Pre_Builds/_Python312_cpp/include/pycapsule.h deleted file mode 100644 index 929a9a6..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pycapsule.h +++ /dev/null @@ -1,59 +0,0 @@ - -/* Capsule objects let you wrap a C "void *" pointer in a Python - object. They're a way of passing data through the Python interpreter - without creating your own custom type. - - Capsules are used for communication between extension modules. - They provide a way for an extension module to export a C interface - to other extension modules, so that extension modules can use the - Python import mechanism to link to one another. - - For more information, please see "c-api/capsule.html" in the - documentation. -*/ - -#ifndef Py_CAPSULE_H -#define Py_CAPSULE_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PyCapsule_Type; - -typedef void (*PyCapsule_Destructor)(PyObject *); - -#define PyCapsule_CheckExact(op) Py_IS_TYPE((op), &PyCapsule_Type) - - -PyAPI_FUNC(PyObject *) PyCapsule_New( - void *pointer, - const char *name, - PyCapsule_Destructor destructor); - -PyAPI_FUNC(void *) PyCapsule_GetPointer(PyObject *capsule, const char *name); - -PyAPI_FUNC(PyCapsule_Destructor) PyCapsule_GetDestructor(PyObject *capsule); - -PyAPI_FUNC(const char *) PyCapsule_GetName(PyObject *capsule); - -PyAPI_FUNC(void *) PyCapsule_GetContext(PyObject *capsule); - -PyAPI_FUNC(int) PyCapsule_IsValid(PyObject *capsule, const char *name); - -PyAPI_FUNC(int) PyCapsule_SetPointer(PyObject *capsule, void *pointer); - -PyAPI_FUNC(int) PyCapsule_SetDestructor(PyObject *capsule, PyCapsule_Destructor destructor); - -PyAPI_FUNC(int) PyCapsule_SetName(PyObject *capsule, const char *name); - -PyAPI_FUNC(int) PyCapsule_SetContext(PyObject *capsule, void *context); - -PyAPI_FUNC(void *) PyCapsule_Import( - const char *name, /* UTF-8 encoded string */ - int no_block); - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_CAPSULE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pyconfig.h b/_Pre_Builds/_Python312_cpp/include/pyconfig.h deleted file mode 100644 index 3415efe..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pyconfig.h +++ /dev/null @@ -1,742 +0,0 @@ -#ifndef Py_CONFIG_H -#define Py_CONFIG_H - -/* pyconfig.h. NOT Generated automatically by configure. - -This is a manually maintained version used for the Watcom, -Borland and Microsoft Visual C++ compilers. It is a -standard part of the Python distribution. - -WINDOWS DEFINES: -The code specific to Windows should be wrapped around one of -the following #defines - -MS_WIN64 - Code specific to the MS Win64 API -MS_WIN32 - Code specific to the MS Win32 (and Win64) API (obsolete, this covers all supported APIs) -MS_WINDOWS - Code specific to Windows, but all versions. -Py_ENABLE_SHARED - Code if the Python core is built as a DLL. - -Also note that neither "_M_IX86" or "_MSC_VER" should be used for -any purpose other than "Windows Intel x86 specific" and "Microsoft -compiler specific". Therefore, these should be very rare. - - -NOTE: The following symbols are deprecated: -NT, USE_DL_EXPORT, USE_DL_IMPORT, DL_EXPORT, DL_IMPORT -MS_CORE_DLL. - -WIN32 is still required for the locale module. - -*/ - -/* Deprecated USE_DL_EXPORT macro - please use Py_BUILD_CORE */ -#ifdef USE_DL_EXPORT -# define Py_BUILD_CORE -#endif /* USE_DL_EXPORT */ - -/* Visual Studio 2005 introduces deprecation warnings for - "insecure" and POSIX functions. The insecure functions should - be replaced by *_s versions (according to Microsoft); the - POSIX functions by _* versions (which, according to Microsoft, - would be ISO C conforming). Neither renaming is feasible, so - we just silence the warnings. */ - -#ifndef _CRT_SECURE_NO_DEPRECATE -#define _CRT_SECURE_NO_DEPRECATE 1 -#endif -#ifndef _CRT_NONSTDC_NO_DEPRECATE -#define _CRT_NONSTDC_NO_DEPRECATE 1 -#endif - -#define HAVE_IO_H -#define HAVE_SYS_UTIME_H -#define HAVE_TEMPNAM -#define HAVE_TMPFILE -#define HAVE_TMPNAM -#define HAVE_CLOCK -#define HAVE_STRERROR - -#include - -#define HAVE_STRFTIME -#define DONT_HAVE_SIG_ALARM -#define DONT_HAVE_SIG_PAUSE -#define LONG_BIT 32 -#define WORD_BIT 32 - -#define MS_WIN32 /* only support win32 and greater. */ -#define MS_WINDOWS -#define NT_THREADS -#define WITH_THREAD -#ifndef NETSCAPE_PI -#define USE_SOCKET -#endif - -#if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_BUILTIN) || defined(Py_BUILD_CORE_MODULE) -#include - -#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) -#define MS_WINDOWS_DESKTOP -#endif -#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) -#define MS_WINDOWS_APP -#endif -#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_SYSTEM) -#define MS_WINDOWS_SYSTEM -#endif -#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_GAMES) -#define MS_WINDOWS_GAMES -#endif - -/* Define to 1 if you support windows console io */ -#if defined(MS_WINDOWS_DESKTOP) || defined(MS_WINDOWS_APP) || defined(MS_WINDOWS_SYSTEM) -#define HAVE_WINDOWS_CONSOLE_IO 1 -#endif -#endif /* Py_BUILD_CORE || Py_BUILD_CORE_BUILTIN || Py_BUILD_CORE_MODULE */ - -/* Compiler specific defines */ - -/* ------------------------------------------------------------------------*/ -/* Microsoft C defines _MSC_VER, as does clang-cl.exe */ -#ifdef _MSC_VER - -/* We want COMPILER to expand to a string containing _MSC_VER's *value*. - * This is horridly tricky, because the stringization operator only works - * on macro arguments, and doesn't evaluate macros passed *as* arguments. - */ -#define _Py_PASTE_VERSION(SUFFIX) \ - ("[MSC v." _Py_STRINGIZE(_MSC_VER) " " SUFFIX "]") -/* e.g., this produces, after compile-time string catenation, - * ("[MSC v.1900 64 bit (Intel)]") - * - * _Py_STRINGIZE(_MSC_VER) expands to - * _Py_STRINGIZE1(_MSC_VER) and this second macro call is scanned - * again for macros and so further expands to - * _Py_STRINGIZE1(1900) which then expands to - * "1900" - */ -#define _Py_STRINGIZE(X) _Py_STRINGIZE1(X) -#define _Py_STRINGIZE1(X) #X - -/* MSVC defines _WINxx to differentiate the windows platform types - - Note that for compatibility reasons _WIN32 is defined on Win32 - *and* on Win64. For the same reasons, in Python, MS_WIN32 is - defined on Win32 *and* Win64. Win32 only code must therefore be - guarded as follows: - #if defined(MS_WIN32) && !defined(MS_WIN64) -*/ -#ifdef _WIN64 -#define MS_WIN64 -#endif - -/* set the COMPILER and support tier - * - * win_amd64 MSVC (x86_64-pc-windows-msvc): 1 - * win32 MSVC (i686-pc-windows-msvc): 1 - * win_arm64 MSVC (aarch64-pc-windows-msvc): 3 - * other archs and ICC: 0 - */ -#ifdef MS_WIN64 -#if defined(_M_X64) || defined(_M_AMD64) -#if defined(__clang__) -#define COMPILER ("[Clang " __clang_version__ "] 64 bit (AMD64) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]") -#define PY_SUPPORT_TIER 0 -#elif defined(__INTEL_COMPILER) -#define COMPILER ("[ICC v." _Py_STRINGIZE(__INTEL_COMPILER) " 64 bit (amd64) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]") -#define PY_SUPPORT_TIER 0 -#else -#define COMPILER _Py_PASTE_VERSION("64 bit (AMD64)") -#define PY_SUPPORT_TIER 1 -#endif /* __clang__ */ -#define PYD_PLATFORM_TAG "win_amd64" -#elif defined(_M_ARM64) -#define COMPILER _Py_PASTE_VERSION("64 bit (ARM64)") -#define PY_SUPPORT_TIER 3 -#define PYD_PLATFORM_TAG "win_arm64" -#else -#define COMPILER _Py_PASTE_VERSION("64 bit (Unknown)") -#define PY_SUPPORT_TIER 0 -#endif -#endif /* MS_WIN64 */ - -/* set the version macros for the windows headers */ -/* Python 3.9+ requires Windows 8 or greater */ -#define Py_WINVER 0x0602 /* _WIN32_WINNT_WIN8 */ -#define Py_NTDDI NTDDI_WIN8 - -/* We only set these values when building Python - we don't want to force - these values on extensions, as that will affect the prototypes and - structures exposed in the Windows headers. Even when building Python, we - allow a single source file to override this - they may need access to - structures etc so it can optionally use new Windows features if it - determines at runtime they are available. -*/ -#if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_BUILTIN) || defined(Py_BUILD_CORE_MODULE) -#ifndef NTDDI_VERSION -#define NTDDI_VERSION Py_NTDDI -#endif -#ifndef WINVER -#define WINVER Py_WINVER -#endif -#ifndef _WIN32_WINNT -#define _WIN32_WINNT Py_WINVER -#endif -#endif - -/* _W64 is not defined for VC6 or eVC4 */ -#ifndef _W64 -#define _W64 -#endif - -/* Define like size_t, omitting the "unsigned" */ -#ifdef MS_WIN64 -typedef __int64 Py_ssize_t; -# define PY_SSIZE_T_MAX LLONG_MAX -#else -typedef _W64 int Py_ssize_t; -# define PY_SSIZE_T_MAX INT_MAX -#endif -#define HAVE_PY_SSIZE_T 1 - -#if defined(MS_WIN32) && !defined(MS_WIN64) -#if defined(_M_IX86) -#if defined(__clang__) -#define COMPILER ("[Clang " __clang_version__ "] 32 bit (Intel) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]") -#define PY_SUPPORT_TIER 0 -#elif defined(__INTEL_COMPILER) -#define COMPILER ("[ICC v." _Py_STRINGIZE(__INTEL_COMPILER) " 32 bit (Intel) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]") -#define PY_SUPPORT_TIER 0 -#else -#define COMPILER _Py_PASTE_VERSION("32 bit (Intel)") -#define PY_SUPPORT_TIER 1 -#endif /* __clang__ */ -#define PYD_PLATFORM_TAG "win32" -#elif defined(_M_ARM) -#define COMPILER _Py_PASTE_VERSION("32 bit (ARM)") -#define PYD_PLATFORM_TAG "win_arm32" -#define PY_SUPPORT_TIER 0 -#else -#define COMPILER _Py_PASTE_VERSION("32 bit (Unknown)") -#define PY_SUPPORT_TIER 0 -#endif -#endif /* MS_WIN32 && !MS_WIN64 */ - -typedef int pid_t; - -/* define some ANSI types that are not defined in earlier Win headers */ -#if _MSC_VER >= 1200 -/* This file only exists in VC 6.0 or higher */ -#include -#endif - -#endif /* _MSC_VER */ - -/* ------------------------------------------------------------------------*/ -/* mingw and mingw-w64 define __MINGW32__ */ -#ifdef __MINGW32__ - -#ifdef _WIN64 -#define MS_WIN64 -#endif - -#endif /* __MINGW32__*/ - -/* ------------------------------------------------------------------------*/ -/* egcs/gnu-win32 defines __GNUC__ and _WIN32 */ -#if defined(__GNUC__) && defined(_WIN32) -/* XXX These defines are likely incomplete, but should be easy to fix. - They should be complete enough to build extension modules. */ -/* Suggested by Rene Liebscher to avoid a GCC 2.91.* - bug that requires structure imports. More recent versions of the - compiler don't exhibit this bug. -*/ -#if (__GNUC__==2) && (__GNUC_MINOR__<=91) -#warning "Please use an up-to-date version of gcc! (>2.91 recommended)" -#endif - -#define COMPILER "[gcc]" -#define PY_LONG_LONG long long -#define PY_LLONG_MIN LLONG_MIN -#define PY_LLONG_MAX LLONG_MAX -#define PY_ULLONG_MAX ULLONG_MAX -#endif /* GNUC */ - -/* ------------------------------------------------------------------------*/ -/* lcc-win32 defines __LCC__ */ -#if defined(__LCC__) -/* XXX These defines are likely incomplete, but should be easy to fix. - They should be complete enough to build extension modules. */ - -#define COMPILER "[lcc-win32]" -typedef int pid_t; -/* __declspec() is supported here too - do nothing to get the defaults */ - -#endif /* LCC */ - -/* ------------------------------------------------------------------------*/ -/* End of compilers - finish up */ - -#ifndef NO_STDIO_H -# include -#endif - -/* 64 bit ints are usually spelt __int64 unless compiler has overridden */ -#ifndef PY_LONG_LONG -# define PY_LONG_LONG __int64 -# define PY_LLONG_MAX _I64_MAX -# define PY_LLONG_MIN _I64_MIN -# define PY_ULLONG_MAX _UI64_MAX -#endif - -/* For Windows the Python core is in a DLL by default. Test -Py_NO_ENABLE_SHARED to find out. Also support MS_NO_COREDLL for b/w compat */ -#if !defined(MS_NO_COREDLL) && !defined(Py_NO_ENABLE_SHARED) -# define Py_ENABLE_SHARED 1 /* standard symbol for shared library */ -# define MS_COREDLL /* deprecated old symbol */ -#endif /* !MS_NO_COREDLL && ... */ - -/* All windows compilers that use this header support __declspec */ -#define HAVE_DECLSPEC_DLL - -/* For an MSVC DLL, we can nominate the .lib files used by extensions */ -#ifdef MS_COREDLL -# if !defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_BUILTIN) - /* not building the core - must be an ext */ -# if defined(_MSC_VER) - /* So MSVC users need not specify the .lib - file in their Makefile (other compilers are - generally taken care of by distutils.) */ -# if defined(_DEBUG) -# pragma comment(lib,"python312_d.lib") -# elif defined(Py_LIMITED_API) -# pragma comment(lib,"python3.lib") -# else -# pragma comment(lib,"python312.lib") -# endif /* _DEBUG */ -# endif /* _MSC_VER */ -# endif /* Py_BUILD_CORE */ -#endif /* MS_COREDLL */ - -#ifdef MS_WIN64 -/* maintain "win32" sys.platform for backward compatibility of Python code, - the Win64 API should be close enough to the Win32 API to make this - preferable */ -# define PLATFORM "win32" -# define SIZEOF_VOID_P 8 -# define SIZEOF_TIME_T 8 -# define SIZEOF_OFF_T 4 -# define SIZEOF_FPOS_T 8 -# define SIZEOF_HKEY 8 -# define SIZEOF_SIZE_T 8 -# define ALIGNOF_SIZE_T 8 -# define ALIGNOF_MAX_ALIGN_T 8 -/* configure.ac defines HAVE_LARGEFILE_SUPPORT iff - sizeof(off_t) > sizeof(long), and sizeof(long long) >= sizeof(off_t). - On Win64 the second condition is not true, but if fpos_t replaces off_t - then this is true. The uses of HAVE_LARGEFILE_SUPPORT imply that Win64 - should define this. */ -# define HAVE_LARGEFILE_SUPPORT -#elif defined(MS_WIN32) -# define PLATFORM "win32" -# define HAVE_LARGEFILE_SUPPORT -# define SIZEOF_VOID_P 4 -# define SIZEOF_OFF_T 4 -# define SIZEOF_FPOS_T 8 -# define SIZEOF_HKEY 4 -# define SIZEOF_SIZE_T 4 -# define ALIGNOF_SIZE_T 4 - /* MS VS2005 changes time_t to a 64-bit type on all platforms */ -# if defined(_MSC_VER) && _MSC_VER >= 1400 -# define SIZEOF_TIME_T 8 -# else -# define SIZEOF_TIME_T 4 -# endif -# define ALIGNOF_MAX_ALIGN_T 8 -#endif - -#ifdef _DEBUG -# define Py_DEBUG -#endif - - -#ifdef MS_WIN32 - -#define SIZEOF_SHORT 2 -#define SIZEOF_INT 4 -#define SIZEOF_LONG 4 -#define ALIGNOF_LONG 4 -#define SIZEOF_LONG_LONG 8 -#define SIZEOF_DOUBLE 8 -#define SIZEOF_FLOAT 4 - -/* VC 7.1 has them and VC 6.0 does not. VC 6.0 has a version number of 1200. - Microsoft eMbedded Visual C++ 4.0 has a version number of 1201 and doesn't - define these. - If some compiler does not provide them, modify the #if appropriately. */ -#if defined(_MSC_VER) -#if _MSC_VER > 1300 -#define HAVE_UINTPTR_T 1 -#define HAVE_INTPTR_T 1 -#else -/* VC6, VS 2002 and eVC4 don't support the C99 LL suffix for 64-bit integer literals */ -#define Py_LL(x) x##I64 -#endif /* _MSC_VER > 1300 */ -#endif /* _MSC_VER */ - -#endif - -/* define signed and unsigned exact-width 32-bit and 64-bit types, used in the - implementation of Python integers. */ -#define PY_UINT32_T uint32_t -#define PY_UINT64_T uint64_t -#define PY_INT32_T int32_t -#define PY_INT64_T int64_t - -/* Fairly standard from here! */ - -/* Define if on AIX 3. - System headers sometimes define this. - We just want to avoid a redefinition error message. */ -#ifndef _ALL_SOURCE -/* #undef _ALL_SOURCE */ -#endif - -/* Define to empty if the keyword does not work. */ -/* #define const */ - -/* Define to 1 if you have the header file. */ -#define HAVE_CONIO_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_DIRECT_H 1 - -/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't. - */ -#define HAVE_DECL_TZNAME 1 - -/* Define if you have dirent.h. */ -/* #define DIRENT 1 */ - -/* Define to the type of elements in the array set by `getgroups'. - Usually this is either `int' or `gid_t'. */ -/* #undef GETGROUPS_T */ - -/* Define to `int' if doesn't define. */ -/* #undef gid_t */ - -/* Define if your struct tm has tm_zone. */ -/* #undef HAVE_TM_ZONE */ - -/* Define if you don't have tm_zone but do have the external array - tzname. */ -#define HAVE_TZNAME - -/* Define to `int' if doesn't define. */ -/* #undef mode_t */ - -/* Define if you don't have dirent.h, but have ndir.h. */ -/* #undef NDIR */ - -/* Define to `long' if doesn't define. */ -/* #undef off_t */ - -/* Define to `int' if doesn't define. */ -/* #undef pid_t */ - -/* Define if the system does not provide POSIX.1 features except - with this defined. */ -/* #undef _POSIX_1_SOURCE */ - -/* Define if you need to in order for stat and other things to work. */ -/* #undef _POSIX_SOURCE */ - -/* Define as the return type of signal handlers (int or void). */ -#define RETSIGTYPE void - -/* Define to `unsigned' if doesn't define. */ -/* #undef size_t */ - -/* Define if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Define if you don't have dirent.h, but have sys/dir.h. */ -/* #undef SYSDIR */ - -/* Define if you don't have dirent.h, but have sys/ndir.h. */ -/* #undef SYSNDIR */ - -/* Define if you can safely include both and . */ -/* #undef TIME_WITH_SYS_TIME */ - -/* Define if your declares struct tm. */ -/* #define TM_IN_SYS_TIME 1 */ - -/* Define to `int' if doesn't define. */ -/* #undef uid_t */ - -/* Define if the closedir function returns void instead of int. */ -/* #undef VOID_CLOSEDIR */ - -/* Define if getpgrp() must be called as getpgrp(0) - and (consequently) setpgrp() as setpgrp(0, 0). */ -/* #undef GETPGRP_HAVE_ARGS */ - -/* Define this if your time.h defines altzone */ -/* #define HAVE_ALTZONE */ - -/* Define if you have the putenv function. */ -#define HAVE_PUTENV - -/* Define if your compiler supports function prototypes */ -#define HAVE_PROTOTYPES - -/* Define if you can safely include both and - (which you can't on SCO ODT 3.0). */ -/* #undef SYS_SELECT_WITH_SYS_TIME */ - -/* Define if you want build the _decimal module using a coroutine-local rather - than a thread-local context */ -#define WITH_DECIMAL_CONTEXTVAR 1 - -/* Define if you want documentation strings in extension modules */ -#define WITH_DOC_STRINGS 1 - -/* Define if you want to compile in rudimentary thread support */ -/* #undef WITH_THREAD */ - -/* Define if you want to use the GNU readline library */ -/* #define WITH_READLINE 1 */ - -/* Use Python's own small-block memory-allocator. */ -#define WITH_PYMALLOC 1 - -/* Define if you want to compile in object freelists optimization */ -#define WITH_FREELISTS 1 - -/* Define if you have clock. */ -/* #define HAVE_CLOCK */ - -/* Define when any dynamic module loading is enabled */ -#define HAVE_DYNAMIC_LOADING - -/* Define if you have ftime. */ -#define HAVE_FTIME - -/* Define if you have getpeername. */ -#define HAVE_GETPEERNAME - -/* Define if you have getpgrp. */ -/* #undef HAVE_GETPGRP */ - -/* Define if you have getpid. */ -#define HAVE_GETPID - -/* Define if you have gettimeofday. */ -/* #undef HAVE_GETTIMEOFDAY */ - -/* Define if you have getwd. */ -/* #undef HAVE_GETWD */ - -/* Define if you have lstat. */ -/* #undef HAVE_LSTAT */ - -/* Define if you have the mktime function. */ -#define HAVE_MKTIME - -/* Define if you have nice. */ -/* #undef HAVE_NICE */ - -/* Define if you have readlink. */ -/* #undef HAVE_READLINK */ - -/* Define if you have setpgid. */ -/* #undef HAVE_SETPGID */ - -/* Define if you have setpgrp. */ -/* #undef HAVE_SETPGRP */ - -/* Define if you have setsid. */ -/* #undef HAVE_SETSID */ - -/* Define if you have setvbuf. */ -#define HAVE_SETVBUF - -/* Define if you have siginterrupt. */ -/* #undef HAVE_SIGINTERRUPT */ - -/* Define to 1 if you have the `shutdown' function. */ -#define HAVE_SHUTDOWN 1 - -/* Define if you have symlink. */ -/* #undef HAVE_SYMLINK */ - -/* Define if you have tcgetpgrp. */ -/* #undef HAVE_TCGETPGRP */ - -/* Define if you have tcsetpgrp. */ -/* #undef HAVE_TCSETPGRP */ - -/* Define if you have times. */ -/* #undef HAVE_TIMES */ - -/* Define to 1 if you have the `umask' function. */ -#define HAVE_UMASK 1 - -/* Define if you have uname. */ -/* #undef HAVE_UNAME */ - -/* Define if you have waitpid. */ -/* #undef HAVE_WAITPID */ - -/* Define to 1 if you have the `wcsftime' function. */ -#if defined(_MSC_VER) && _MSC_VER >= 1310 -#define HAVE_WCSFTIME 1 -#endif - -/* Define to 1 if you have the `wcscoll' function. */ -#define HAVE_WCSCOLL 1 - -/* Define to 1 if you have the `wcsxfrm' function. */ -#define HAVE_WCSXFRM 1 - -/* Define if the zlib library has inflateCopy */ -#define HAVE_ZLIB_COPY 1 - -/* Define if you have the header file. */ -/* #undef HAVE_DLFCN_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_ERRNO_H 1 - -/* Define if you have the header file. */ -#define HAVE_FCNTL_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_PROCESS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SIGNAL_H 1 - -/* Define if you have the header file. */ -#define HAVE_STDDEF_H 1 - -/* Define if you have the header file. */ -/* #undef HAVE_SYS_AUDIOIO_H */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_PARAM_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_SELECT_H 1 */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define if you have the header file. */ -/* #define HAVE_SYS_TIME_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_TIMES_H 1 */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define if you have the header file. */ -/* #define HAVE_SYS_UN_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_UTIME_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_UTSNAME_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_UNISTD_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_UTIME_H 1 */ - -/* Define if the compiler provides a wchar.h header file. */ -#define HAVE_WCHAR_H 1 - -/* The size of `wchar_t', as computed by sizeof. */ -#define SIZEOF_WCHAR_T 2 - -/* The size of `_Bool', as computed by sizeof. */ -#define SIZEOF__BOOL 1 - -/* The size of `pid_t', as computed by sizeof. */ -#define SIZEOF_PID_T SIZEOF_INT - -/* Define if you have the dl library (-ldl). */ -/* #undef HAVE_LIBDL */ - -/* Define if you have the mpc library (-lmpc). */ -/* #undef HAVE_LIBMPC */ - -/* Define if you have the nsl library (-lnsl). */ -#define HAVE_LIBNSL 1 - -/* Define if you have the seq library (-lseq). */ -/* #undef HAVE_LIBSEQ */ - -/* Define if you have the socket library (-lsocket). */ -#define HAVE_LIBSOCKET 1 - -/* Define if you have the sun library (-lsun). */ -/* #undef HAVE_LIBSUN */ - -/* Define if you have the termcap library (-ltermcap). */ -/* #undef HAVE_LIBTERMCAP */ - -/* Define if you have the termlib library (-ltermlib). */ -/* #undef HAVE_LIBTERMLIB */ - -/* Define if you have the thread library (-lthread). */ -/* #undef HAVE_LIBTHREAD */ - -/* WinSock does not use a bitmask in select, and uses - socket handles greater than FD_SETSIZE */ -#define Py_SOCKET_FD_CAN_BE_GE_FD_SETSIZE - -/* Define if C doubles are 64-bit IEEE 754 binary format, stored with the - least significant byte first */ -#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 1 - -/* Define to 1 if you have the `erf' function. */ -#define HAVE_ERF 1 - -/* Define to 1 if you have the `erfc' function. */ -#define HAVE_ERFC 1 - -// netdb.h functions (provided by winsock.h) -#define HAVE_GETHOSTNAME 1 -#define HAVE_GETHOSTBYADDR 1 -#define HAVE_GETHOSTBYNAME 1 -#define HAVE_GETPROTOBYNAME 1 -#define HAVE_GETSERVBYNAME 1 -#define HAVE_GETSERVBYPORT 1 -// sys/socket.h functions (provided by winsock.h) -#define HAVE_INET_PTON 1 -#define HAVE_INET_NTOA 1 -#define HAVE_ACCEPT 1 -#define HAVE_BIND 1 -#define HAVE_CONNECT 1 -#define HAVE_GETSOCKNAME 1 -#define HAVE_LISTEN 1 -#define HAVE_RECVFROM 1 -#define HAVE_SENDTO 1 -#define HAVE_SETSOCKOPT 1 -#define HAVE_SOCKET 1 - -/* Define to 1 if you have the `dup' function. */ -#define HAVE_DUP 1 - -/* framework name */ -#define _PYTHONFRAMEWORK "" - -/* Define if libssl has X509_VERIFY_PARAM_set1_host and related function */ -#define HAVE_X509_VERIFY_PARAM_SET1_HOST 1 - -#endif /* !Py_CONFIG_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pydtrace.d b/_Pre_Builds/_Python312_cpp/include/pydtrace.d deleted file mode 100644 index 5e6a626..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pydtrace.d +++ /dev/null @@ -1,22 +0,0 @@ -/* Python DTrace provider */ - -provider python { - probe function__entry(const char *, const char *, int); - probe function__return(const char *, const char *, int); - probe instance__new__start(const char *, const char *); - probe instance__new__done(const char *, const char *); - probe instance__delete__start(const char *, const char *); - probe instance__delete__done(const char *, const char *); - probe line(const char *, const char *, int); - probe gc__start(int); - probe gc__done(long); - probe import__find__load__start(const char *); - probe import__find__load__done(const char *, int); - probe audit(const char *, void *); -}; - -#pragma D attributes Evolving/Evolving/Common provider python provider -#pragma D attributes Evolving/Evolving/Common provider python module -#pragma D attributes Evolving/Evolving/Common provider python function -#pragma D attributes Evolving/Evolving/Common provider python name -#pragma D attributes Evolving/Evolving/Common provider python args diff --git a/_Pre_Builds/_Python312_cpp/include/pydtrace.h b/_Pre_Builds/_Python312_cpp/include/pydtrace.h deleted file mode 100644 index e197d36..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pydtrace.h +++ /dev/null @@ -1,59 +0,0 @@ -/* Static DTrace probes interface */ - -#ifndef Py_DTRACE_H -#define Py_DTRACE_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef WITH_DTRACE - -#include "pydtrace_probes.h" - -/* pydtrace_probes.h, on systems with DTrace, is auto-generated to include - `PyDTrace_{PROBE}` and `PyDTrace_{PROBE}_ENABLED()` macros for every probe - defined in pydtrace.d. - - Calling these functions must be guarded by a `PyDTrace_{PROBE}_ENABLED()` - check to minimize performance impact when probing is off. For example: - - if (PyDTrace_FUNCTION_ENTRY_ENABLED()) - PyDTrace_FUNCTION_ENTRY(f); -*/ - -#else - -/* Without DTrace, compile to nothing. */ - -static inline void PyDTrace_LINE(const char *arg0, const char *arg1, int arg2) {} -static inline void PyDTrace_FUNCTION_ENTRY(const char *arg0, const char *arg1, int arg2) {} -static inline void PyDTrace_FUNCTION_RETURN(const char *arg0, const char *arg1, int arg2) {} -static inline void PyDTrace_GC_START(int arg0) {} -static inline void PyDTrace_GC_DONE(Py_ssize_t arg0) {} -static inline void PyDTrace_INSTANCE_NEW_START(int arg0) {} -static inline void PyDTrace_INSTANCE_NEW_DONE(int arg0) {} -static inline void PyDTrace_INSTANCE_DELETE_START(int arg0) {} -static inline void PyDTrace_INSTANCE_DELETE_DONE(int arg0) {} -static inline void PyDTrace_IMPORT_FIND_LOAD_START(const char *arg0) {} -static inline void PyDTrace_IMPORT_FIND_LOAD_DONE(const char *arg0, int arg1) {} -static inline void PyDTrace_AUDIT(const char *arg0, void *arg1) {} - -static inline int PyDTrace_LINE_ENABLED(void) { return 0; } -static inline int PyDTrace_FUNCTION_ENTRY_ENABLED(void) { return 0; } -static inline int PyDTrace_FUNCTION_RETURN_ENABLED(void) { return 0; } -static inline int PyDTrace_GC_START_ENABLED(void) { return 0; } -static inline int PyDTrace_GC_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_NEW_START_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_NEW_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_DELETE_START_ENABLED(void) { return 0; } -static inline int PyDTrace_INSTANCE_DELETE_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_IMPORT_FIND_LOAD_START_ENABLED(void) { return 0; } -static inline int PyDTrace_IMPORT_FIND_LOAD_DONE_ENABLED(void) { return 0; } -static inline int PyDTrace_AUDIT_ENABLED(void) { return 0; } - -#endif /* !WITH_DTRACE */ - -#ifdef __cplusplus -} -#endif -#endif /* !Py_DTRACE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pyerrors.h b/_Pre_Builds/_Python312_cpp/include/pyerrors.h deleted file mode 100644 index d089fa7..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pyerrors.h +++ /dev/null @@ -1,337 +0,0 @@ -#ifndef Py_ERRORS_H -#define Py_ERRORS_H -#ifdef __cplusplus -extern "C" { -#endif - -#include // va_list - -/* Error handling definitions */ - -PyAPI_FUNC(void) PyErr_SetNone(PyObject *); -PyAPI_FUNC(void) PyErr_SetObject(PyObject *, PyObject *); -PyAPI_FUNC(void) PyErr_SetString( - PyObject *exception, - const char *string /* decoded from utf-8 */ - ); -PyAPI_FUNC(PyObject *) PyErr_Occurred(void); -PyAPI_FUNC(void) PyErr_Clear(void); -PyAPI_FUNC(void) PyErr_Fetch(PyObject **, PyObject **, PyObject **); -PyAPI_FUNC(void) PyErr_Restore(PyObject *, PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyErr_GetRaisedException(void); -PyAPI_FUNC(void) PyErr_SetRaisedException(PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030b0000 -PyAPI_FUNC(PyObject*) PyErr_GetHandledException(void); -PyAPI_FUNC(void) PyErr_SetHandledException(PyObject *); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(void) PyErr_GetExcInfo(PyObject **, PyObject **, PyObject **); -PyAPI_FUNC(void) PyErr_SetExcInfo(PyObject *, PyObject *, PyObject *); -#endif - -/* Defined in Python/pylifecycle.c - - The Py_FatalError() function is replaced with a macro which logs - automatically the name of the current function, unless the Py_LIMITED_API - macro is defined. */ -PyAPI_FUNC(void) _Py_NO_RETURN Py_FatalError(const char *message); - -/* Error testing and normalization */ -PyAPI_FUNC(int) PyErr_GivenExceptionMatches(PyObject *, PyObject *); -PyAPI_FUNC(int) PyErr_ExceptionMatches(PyObject *); -PyAPI_FUNC(void) PyErr_NormalizeException(PyObject**, PyObject**, PyObject**); - -/* Traceback manipulation (PEP 3134) */ -PyAPI_FUNC(int) PyException_SetTraceback(PyObject *, PyObject *); -PyAPI_FUNC(PyObject *) PyException_GetTraceback(PyObject *); - -/* Cause manipulation (PEP 3134) */ -PyAPI_FUNC(PyObject *) PyException_GetCause(PyObject *); -PyAPI_FUNC(void) PyException_SetCause(PyObject *, PyObject *); - -/* Context manipulation (PEP 3134) */ -PyAPI_FUNC(PyObject *) PyException_GetContext(PyObject *); -PyAPI_FUNC(void) PyException_SetContext(PyObject *, PyObject *); - - -PyAPI_FUNC(PyObject *) PyException_GetArgs(PyObject *); -PyAPI_FUNC(void) PyException_SetArgs(PyObject *, PyObject *); - -/* */ - -#define PyExceptionClass_Check(x) \ - (PyType_Check((x)) && \ - PyType_FastSubclass((PyTypeObject*)(x), Py_TPFLAGS_BASE_EXC_SUBCLASS)) - -#define PyExceptionInstance_Check(x) \ - PyType_FastSubclass(Py_TYPE(x), Py_TPFLAGS_BASE_EXC_SUBCLASS) - -PyAPI_FUNC(const char *) PyExceptionClass_Name(PyObject *); - -#define PyExceptionInstance_Class(x) _PyObject_CAST(Py_TYPE(x)) - -#define _PyBaseExceptionGroup_Check(x) \ - PyObject_TypeCheck((x), (PyTypeObject *)PyExc_BaseExceptionGroup) - -/* Predefined exceptions */ - -PyAPI_DATA(PyObject *) PyExc_BaseException; -PyAPI_DATA(PyObject *) PyExc_Exception; -PyAPI_DATA(PyObject *) PyExc_BaseExceptionGroup; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_DATA(PyObject *) PyExc_StopAsyncIteration; -#endif -PyAPI_DATA(PyObject *) PyExc_StopIteration; -PyAPI_DATA(PyObject *) PyExc_GeneratorExit; -PyAPI_DATA(PyObject *) PyExc_ArithmeticError; -PyAPI_DATA(PyObject *) PyExc_LookupError; - -PyAPI_DATA(PyObject *) PyExc_AssertionError; -PyAPI_DATA(PyObject *) PyExc_AttributeError; -PyAPI_DATA(PyObject *) PyExc_BufferError; -PyAPI_DATA(PyObject *) PyExc_EOFError; -PyAPI_DATA(PyObject *) PyExc_FloatingPointError; -PyAPI_DATA(PyObject *) PyExc_OSError; -PyAPI_DATA(PyObject *) PyExc_ImportError; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_DATA(PyObject *) PyExc_ModuleNotFoundError; -#endif -PyAPI_DATA(PyObject *) PyExc_IndexError; -PyAPI_DATA(PyObject *) PyExc_KeyError; -PyAPI_DATA(PyObject *) PyExc_KeyboardInterrupt; -PyAPI_DATA(PyObject *) PyExc_MemoryError; -PyAPI_DATA(PyObject *) PyExc_NameError; -PyAPI_DATA(PyObject *) PyExc_OverflowError; -PyAPI_DATA(PyObject *) PyExc_RuntimeError; -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_DATA(PyObject *) PyExc_RecursionError; -#endif -PyAPI_DATA(PyObject *) PyExc_NotImplementedError; -PyAPI_DATA(PyObject *) PyExc_SyntaxError; -PyAPI_DATA(PyObject *) PyExc_IndentationError; -PyAPI_DATA(PyObject *) PyExc_TabError; -PyAPI_DATA(PyObject *) PyExc_ReferenceError; -PyAPI_DATA(PyObject *) PyExc_SystemError; -PyAPI_DATA(PyObject *) PyExc_SystemExit; -PyAPI_DATA(PyObject *) PyExc_TypeError; -PyAPI_DATA(PyObject *) PyExc_UnboundLocalError; -PyAPI_DATA(PyObject *) PyExc_UnicodeError; -PyAPI_DATA(PyObject *) PyExc_UnicodeEncodeError; -PyAPI_DATA(PyObject *) PyExc_UnicodeDecodeError; -PyAPI_DATA(PyObject *) PyExc_UnicodeTranslateError; -PyAPI_DATA(PyObject *) PyExc_ValueError; -PyAPI_DATA(PyObject *) PyExc_ZeroDivisionError; - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_DATA(PyObject *) PyExc_BlockingIOError; -PyAPI_DATA(PyObject *) PyExc_BrokenPipeError; -PyAPI_DATA(PyObject *) PyExc_ChildProcessError; -PyAPI_DATA(PyObject *) PyExc_ConnectionError; -PyAPI_DATA(PyObject *) PyExc_ConnectionAbortedError; -PyAPI_DATA(PyObject *) PyExc_ConnectionRefusedError; -PyAPI_DATA(PyObject *) PyExc_ConnectionResetError; -PyAPI_DATA(PyObject *) PyExc_FileExistsError; -PyAPI_DATA(PyObject *) PyExc_FileNotFoundError; -PyAPI_DATA(PyObject *) PyExc_InterruptedError; -PyAPI_DATA(PyObject *) PyExc_IsADirectoryError; -PyAPI_DATA(PyObject *) PyExc_NotADirectoryError; -PyAPI_DATA(PyObject *) PyExc_PermissionError; -PyAPI_DATA(PyObject *) PyExc_ProcessLookupError; -PyAPI_DATA(PyObject *) PyExc_TimeoutError; -#endif - - -/* Compatibility aliases */ -PyAPI_DATA(PyObject *) PyExc_EnvironmentError; -PyAPI_DATA(PyObject *) PyExc_IOError; -#ifdef MS_WINDOWS -PyAPI_DATA(PyObject *) PyExc_WindowsError; -#endif - -/* Predefined warning categories */ -PyAPI_DATA(PyObject *) PyExc_Warning; -PyAPI_DATA(PyObject *) PyExc_UserWarning; -PyAPI_DATA(PyObject *) PyExc_DeprecationWarning; -PyAPI_DATA(PyObject *) PyExc_PendingDeprecationWarning; -PyAPI_DATA(PyObject *) PyExc_SyntaxWarning; -PyAPI_DATA(PyObject *) PyExc_RuntimeWarning; -PyAPI_DATA(PyObject *) PyExc_FutureWarning; -PyAPI_DATA(PyObject *) PyExc_ImportWarning; -PyAPI_DATA(PyObject *) PyExc_UnicodeWarning; -PyAPI_DATA(PyObject *) PyExc_BytesWarning; -PyAPI_DATA(PyObject *) PyExc_EncodingWarning; -PyAPI_DATA(PyObject *) PyExc_ResourceWarning; - - -/* Convenience functions */ - -PyAPI_FUNC(int) PyErr_BadArgument(void); -PyAPI_FUNC(PyObject *) PyErr_NoMemory(void); -PyAPI_FUNC(PyObject *) PyErr_SetFromErrno(PyObject *); -PyAPI_FUNC(PyObject *) PyErr_SetFromErrnoWithFilenameObject( - PyObject *, PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03040000 -PyAPI_FUNC(PyObject *) PyErr_SetFromErrnoWithFilenameObjects( - PyObject *, PyObject *, PyObject *); -#endif -PyAPI_FUNC(PyObject *) PyErr_SetFromErrnoWithFilename( - PyObject *exc, - const char *filename /* decoded from the filesystem encoding */ - ); - -PyAPI_FUNC(PyObject *) PyErr_Format( - PyObject *exception, - const char *format, /* ASCII-encoded string */ - ... - ); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -PyAPI_FUNC(PyObject *) PyErr_FormatV( - PyObject *exception, - const char *format, - va_list vargs); -#endif - -#ifdef MS_WINDOWS -PyAPI_FUNC(PyObject *) PyErr_SetFromWindowsErrWithFilename( - int ierr, - const char *filename /* decoded from the filesystem encoding */ - ); -PyAPI_FUNC(PyObject *) PyErr_SetFromWindowsErr(int); -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErrWithFilenameObject( - PyObject *,int, PyObject *); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03040000 -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErrWithFilenameObjects( - PyObject *,int, PyObject *, PyObject *); -#endif -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErrWithFilename( - PyObject *exc, - int ierr, - const char *filename /* decoded from the filesystem encoding */ - ); -PyAPI_FUNC(PyObject *) PyErr_SetExcFromWindowsErr(PyObject *, int); -#endif /* MS_WINDOWS */ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_FUNC(PyObject *) PyErr_SetImportErrorSubclass(PyObject *, PyObject *, - PyObject *, PyObject *); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject *) PyErr_SetImportError(PyObject *, PyObject *, - PyObject *); -#endif - -/* Export the old function so that the existing API remains available: */ -PyAPI_FUNC(void) PyErr_BadInternalCall(void); -PyAPI_FUNC(void) _PyErr_BadInternalCall(const char *filename, int lineno); -/* Mask the old API with a call to the new API for code compiled under - Python 2.0: */ -#define PyErr_BadInternalCall() _PyErr_BadInternalCall(__FILE__, __LINE__) - -/* Function to create a new exception */ -PyAPI_FUNC(PyObject *) PyErr_NewException( - const char *name, PyObject *base, PyObject *dict); -PyAPI_FUNC(PyObject *) PyErr_NewExceptionWithDoc( - const char *name, const char *doc, PyObject *base, PyObject *dict); -PyAPI_FUNC(void) PyErr_WriteUnraisable(PyObject *); - - -/* In signalmodule.c */ -PyAPI_FUNC(int) PyErr_CheckSignals(void); -PyAPI_FUNC(void) PyErr_SetInterrupt(void); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -PyAPI_FUNC(int) PyErr_SetInterruptEx(int signum); -#endif - -/* Support for adding program text to SyntaxErrors */ -PyAPI_FUNC(void) PyErr_SyntaxLocation( - const char *filename, /* decoded from the filesystem encoding */ - int lineno); -PyAPI_FUNC(void) PyErr_SyntaxLocationEx( - const char *filename, /* decoded from the filesystem encoding */ - int lineno, - int col_offset); -PyAPI_FUNC(PyObject *) PyErr_ProgramText( - const char *filename, /* decoded from the filesystem encoding */ - int lineno); - -/* The following functions are used to create and modify unicode - exceptions from C */ - -/* create a UnicodeDecodeError object */ -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_Create( - const char *encoding, /* UTF-8 encoded string */ - const char *object, - Py_ssize_t length, - Py_ssize_t start, - Py_ssize_t end, - const char *reason /* UTF-8 encoded string */ - ); - -/* get the encoding attribute */ -PyAPI_FUNC(PyObject *) PyUnicodeEncodeError_GetEncoding(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_GetEncoding(PyObject *); - -/* get the object attribute */ -PyAPI_FUNC(PyObject *) PyUnicodeEncodeError_GetObject(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_GetObject(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeTranslateError_GetObject(PyObject *); - -/* get the value of the start attribute (the int * may not be NULL) - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_GetStart(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeDecodeError_GetStart(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeTranslateError_GetStart(PyObject *, Py_ssize_t *); - -/* assign a new value to the start attribute - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_SetStart(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeDecodeError_SetStart(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeTranslateError_SetStart(PyObject *, Py_ssize_t); - -/* get the value of the end attribute (the int *may not be NULL) - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_GetEnd(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeDecodeError_GetEnd(PyObject *, Py_ssize_t *); -PyAPI_FUNC(int) PyUnicodeTranslateError_GetEnd(PyObject *, Py_ssize_t *); - -/* assign a new value to the end attribute - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_SetEnd(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeDecodeError_SetEnd(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyUnicodeTranslateError_SetEnd(PyObject *, Py_ssize_t); - -/* get the value of the reason attribute */ -PyAPI_FUNC(PyObject *) PyUnicodeEncodeError_GetReason(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeDecodeError_GetReason(PyObject *); -PyAPI_FUNC(PyObject *) PyUnicodeTranslateError_GetReason(PyObject *); - -/* assign a new value to the reason attribute - return 0 on success, -1 on failure */ -PyAPI_FUNC(int) PyUnicodeEncodeError_SetReason( - PyObject *exc, - const char *reason /* UTF-8 encoded string */ - ); -PyAPI_FUNC(int) PyUnicodeDecodeError_SetReason( - PyObject *exc, - const char *reason /* UTF-8 encoded string */ - ); -PyAPI_FUNC(int) PyUnicodeTranslateError_SetReason( - PyObject *exc, - const char *reason /* UTF-8 encoded string */ - ); - -PyAPI_FUNC(int) PyOS_snprintf(char *str, size_t size, const char *format, ...) - Py_GCC_ATTRIBUTE((format(printf, 3, 4))); -PyAPI_FUNC(int) PyOS_vsnprintf(char *str, size_t size, const char *format, va_list va) - Py_GCC_ATTRIBUTE((format(printf, 3, 0))); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_ERRORS_H -# include "cpython/pyerrors.h" -# undef Py_CPYTHON_ERRORS_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_ERRORS_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pyexpat.h b/_Pre_Builds/_Python312_cpp/include/pyexpat.h deleted file mode 100644 index 07020b5..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pyexpat.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Stuff to export relevant 'expat' entry points from pyexpat to other - * parser modules, such as cElementTree. */ - -/* note: you must import expat.h before importing this module! */ - -#define PyExpat_CAPI_MAGIC "pyexpat.expat_CAPI 1.1" -#define PyExpat_CAPSULE_NAME "pyexpat.expat_CAPI" - -struct PyExpat_CAPI -{ - char* magic; /* set to PyExpat_CAPI_MAGIC */ - int size; /* set to sizeof(struct PyExpat_CAPI) */ - int MAJOR_VERSION; - int MINOR_VERSION; - int MICRO_VERSION; - /* pointers to selected expat functions. add new functions at - the end, if needed */ - const XML_LChar * (*ErrorString)(enum XML_Error code); - enum XML_Error (*GetErrorCode)(XML_Parser parser); - XML_Size (*GetErrorColumnNumber)(XML_Parser parser); - XML_Size (*GetErrorLineNumber)(XML_Parser parser); - enum XML_Status (*Parse)( - XML_Parser parser, const char *s, int len, int isFinal); - XML_Parser (*ParserCreate_MM)( - const XML_Char *encoding, const XML_Memory_Handling_Suite *memsuite, - const XML_Char *namespaceSeparator); - void (*ParserFree)(XML_Parser parser); - void (*SetCharacterDataHandler)( - XML_Parser parser, XML_CharacterDataHandler handler); - void (*SetCommentHandler)( - XML_Parser parser, XML_CommentHandler handler); - void (*SetDefaultHandlerExpand)( - XML_Parser parser, XML_DefaultHandler handler); - void (*SetElementHandler)( - XML_Parser parser, XML_StartElementHandler start, - XML_EndElementHandler end); - void (*SetNamespaceDeclHandler)( - XML_Parser parser, XML_StartNamespaceDeclHandler start, - XML_EndNamespaceDeclHandler end); - void (*SetProcessingInstructionHandler)( - XML_Parser parser, XML_ProcessingInstructionHandler handler); - void (*SetUnknownEncodingHandler)( - XML_Parser parser, XML_UnknownEncodingHandler handler, - void *encodingHandlerData); - void (*SetUserData)(XML_Parser parser, void *userData); - void (*SetStartDoctypeDeclHandler)(XML_Parser parser, - XML_StartDoctypeDeclHandler start); - enum XML_Status (*SetEncoding)(XML_Parser parser, const XML_Char *encoding); - int (*DefaultUnknownEncodingHandler)( - void *encodingHandlerData, const XML_Char *name, XML_Encoding *info); - /* might be none for expat < 2.1.0 */ - int (*SetHashSalt)(XML_Parser parser, unsigned long hash_salt); - /* always add new stuff to the end! */ -}; - diff --git a/_Pre_Builds/_Python312_cpp/include/pyframe.h b/_Pre_Builds/_Python312_cpp/include/pyframe.h deleted file mode 100644 index 13d5231..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pyframe.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Limited C API of PyFrame API - * - * Include "frameobject.h" to get the PyFrameObject structure. - */ - -#ifndef Py_PYFRAME_H -#define Py_PYFRAME_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Return the line of code the frame is currently executing. */ -PyAPI_FUNC(int) PyFrame_GetLineNumber(PyFrameObject *); - -PyAPI_FUNC(PyCodeObject *) PyFrame_GetCode(PyFrameObject *frame); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYFRAME_H -# include "cpython/pyframe.h" -# undef Py_CPYTHON_PYFRAME_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYFRAME_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pyhash.h b/_Pre_Builds/_Python312_cpp/include/pyhash.h deleted file mode 100644 index 182d223..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pyhash.h +++ /dev/null @@ -1,144 +0,0 @@ -#ifndef Py_HASH_H - -#define Py_HASH_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Helpers for hash functions */ -#ifndef Py_LIMITED_API -PyAPI_FUNC(Py_hash_t) _Py_HashDouble(PyObject *, double); -PyAPI_FUNC(Py_hash_t) _Py_HashPointer(const void*); -// Similar to _Py_HashPointer(), but don't replace -1 with -2 -PyAPI_FUNC(Py_hash_t) _Py_HashPointerRaw(const void*); -PyAPI_FUNC(Py_hash_t) _Py_HashBytes(const void*, Py_ssize_t); -#endif - -/* Prime multiplier used in string and various other hashes. */ -#define _PyHASH_MULTIPLIER 1000003UL /* 0xf4243 */ - -/* Parameters used for the numeric hash implementation. See notes for - _Py_HashDouble in Python/pyhash.c. Numeric hashes are based on - reduction modulo the prime 2**_PyHASH_BITS - 1. */ - -#if SIZEOF_VOID_P >= 8 -# define _PyHASH_BITS 61 -#else -# define _PyHASH_BITS 31 -#endif - -#define _PyHASH_MODULUS (((size_t)1 << _PyHASH_BITS) - 1) -#define _PyHASH_INF 314159 -#define _PyHASH_IMAG _PyHASH_MULTIPLIER - - -/* hash secret - * - * memory layout on 64 bit systems - * cccccccc cccccccc cccccccc uc -- unsigned char[24] - * pppppppp ssssssss ........ fnv -- two Py_hash_t - * k0k0k0k0 k1k1k1k1 ........ siphash -- two uint64_t - * ........ ........ ssssssss djbx33a -- 16 bytes padding + one Py_hash_t - * ........ ........ eeeeeeee pyexpat XML hash salt - * - * memory layout on 32 bit systems - * cccccccc cccccccc cccccccc uc - * ppppssss ........ ........ fnv -- two Py_hash_t - * k0k0k0k0 k1k1k1k1 ........ siphash -- two uint64_t (*) - * ........ ........ ssss.... djbx33a -- 16 bytes padding + one Py_hash_t - * ........ ........ eeee.... pyexpat XML hash salt - * - * (*) The siphash member may not be available on 32 bit platforms without - * an unsigned int64 data type. - */ -#ifndef Py_LIMITED_API -typedef union { - /* ensure 24 bytes */ - unsigned char uc[24]; - /* two Py_hash_t for FNV */ - struct { - Py_hash_t prefix; - Py_hash_t suffix; - } fnv; - /* two uint64 for SipHash24 */ - struct { - uint64_t k0; - uint64_t k1; - } siphash; - /* a different (!) Py_hash_t for small string optimization */ - struct { - unsigned char padding[16]; - Py_hash_t suffix; - } djbx33a; - struct { - unsigned char padding[16]; - Py_hash_t hashsalt; - } expat; -} _Py_HashSecret_t; -PyAPI_DATA(_Py_HashSecret_t) _Py_HashSecret; - -#ifdef Py_DEBUG -PyAPI_DATA(int) _Py_HashSecret_Initialized; -#endif - - -/* hash function definition */ -typedef struct { - Py_hash_t (*const hash)(const void *, Py_ssize_t); - const char *name; - const int hash_bits; - const int seed_bits; -} PyHash_FuncDef; - -PyAPI_FUNC(PyHash_FuncDef*) PyHash_GetFuncDef(void); -#endif - - -/* cutoff for small string DJBX33A optimization in range [1, cutoff). - * - * About 50% of the strings in a typical Python application are smaller than - * 6 to 7 chars. However DJBX33A is vulnerable to hash collision attacks. - * NEVER use DJBX33A for long strings! - * - * A Py_HASH_CUTOFF of 0 disables small string optimization. 32 bit platforms - * should use a smaller cutoff because it is easier to create colliding - * strings. A cutoff of 7 on 64bit platforms and 5 on 32bit platforms should - * provide a decent safety margin. - */ -#ifndef Py_HASH_CUTOFF -# define Py_HASH_CUTOFF 0 -#elif (Py_HASH_CUTOFF > 7 || Py_HASH_CUTOFF < 0) -# error Py_HASH_CUTOFF must in range 0...7. -#endif /* Py_HASH_CUTOFF */ - - -/* hash algorithm selection - * - * The values for Py_HASH_* are hard-coded in the - * configure script. - * - * - FNV and SIPHASH* are available on all platforms and architectures. - * - With EXTERNAL embedders can provide an alternative implementation with:: - * - * PyHash_FuncDef PyHash_Func = {...}; - * - * XXX: Figure out __declspec() for extern PyHash_FuncDef. - */ -#define Py_HASH_EXTERNAL 0 -#define Py_HASH_SIPHASH24 1 -#define Py_HASH_FNV 2 -#define Py_HASH_SIPHASH13 3 - -#ifndef Py_HASH_ALGORITHM -# ifndef HAVE_ALIGNED_REQUIRED -# define Py_HASH_ALGORITHM Py_HASH_SIPHASH13 -# else -# define Py_HASH_ALGORITHM Py_HASH_FNV -# endif /* uint64_t && uint32_t && aligned */ -#endif /* Py_HASH_ALGORITHM */ - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_HASH_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pylifecycle.h b/_Pre_Builds/_Python312_cpp/include/pylifecycle.h deleted file mode 100644 index e4c3b09..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pylifecycle.h +++ /dev/null @@ -1,78 +0,0 @@ - -/* Interfaces to configure, query, create & destroy the Python runtime */ - -#ifndef Py_PYLIFECYCLE_H -#define Py_PYLIFECYCLE_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Initialization and finalization */ -PyAPI_FUNC(void) Py_Initialize(void); -PyAPI_FUNC(void) Py_InitializeEx(int); -PyAPI_FUNC(void) Py_Finalize(void); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -PyAPI_FUNC(int) Py_FinalizeEx(void); -#endif -PyAPI_FUNC(int) Py_IsInitialized(void); - -/* Subinterpreter support */ -PyAPI_FUNC(PyThreadState *) Py_NewInterpreter(void); -PyAPI_FUNC(void) Py_EndInterpreter(PyThreadState *); - - -/* Py_PyAtExit is for the atexit module, Py_AtExit is for low-level - * exit functions. - */ -PyAPI_FUNC(int) Py_AtExit(void (*func)(void)); - -PyAPI_FUNC(void) _Py_NO_RETURN Py_Exit(int); - -/* Bootstrap __main__ (defined in Modules/main.c) */ -PyAPI_FUNC(int) Py_Main(int argc, wchar_t **argv); -PyAPI_FUNC(int) Py_BytesMain(int argc, char **argv); - -/* In pathconfig.c */ -Py_DEPRECATED(3.11) PyAPI_FUNC(void) Py_SetProgramName(const wchar_t *); -PyAPI_FUNC(wchar_t *) Py_GetProgramName(void); - -Py_DEPRECATED(3.11) PyAPI_FUNC(void) Py_SetPythonHome(const wchar_t *); -PyAPI_FUNC(wchar_t *) Py_GetPythonHome(void); - -PyAPI_FUNC(wchar_t *) Py_GetProgramFullPath(void); - -PyAPI_FUNC(wchar_t *) Py_GetPrefix(void); -PyAPI_FUNC(wchar_t *) Py_GetExecPrefix(void); -PyAPI_FUNC(wchar_t *) Py_GetPath(void); -Py_DEPRECATED(3.11) PyAPI_FUNC(void) Py_SetPath(const wchar_t *); -#ifdef MS_WINDOWS -int _Py_CheckPython3(void); -#endif - -/* In their own files */ -PyAPI_FUNC(const char *) Py_GetVersion(void); -PyAPI_FUNC(const char *) Py_GetPlatform(void); -PyAPI_FUNC(const char *) Py_GetCopyright(void); -PyAPI_FUNC(const char *) Py_GetCompiler(void); -PyAPI_FUNC(const char *) Py_GetBuildInfo(void); - -/* Signals */ -typedef void (*PyOS_sighandler_t)(int); -PyAPI_FUNC(PyOS_sighandler_t) PyOS_getsig(int); -PyAPI_FUNC(PyOS_sighandler_t) PyOS_setsig(int, PyOS_sighandler_t); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030B0000 -PyAPI_DATA(const unsigned long) Py_Version; -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYLIFECYCLE_H -# include "cpython/pylifecycle.h" -# undef Py_CPYTHON_PYLIFECYCLE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYLIFECYCLE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pymacconfig.h b/_Pre_Builds/_Python312_cpp/include/pymacconfig.h deleted file mode 100644 index 61f08e3..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pymacconfig.h +++ /dev/null @@ -1,99 +0,0 @@ -#ifndef PYMACCONFIG_H -#define PYMACCONFIG_H - /* - * This file moves some of the autoconf magic to compile-time - * when building on MacOSX. This is needed for building 4-way - * universal binaries and for 64-bit universal binaries because - * the values redefined below aren't configure-time constant but - * only compile-time constant in these scenarios. - */ - -#if defined(__APPLE__) - -# undef ALIGNOF_MAX_ALIGN_T -# undef SIZEOF_LONG -# undef SIZEOF_LONG_DOUBLE -# undef SIZEOF_PTHREAD_T -# undef SIZEOF_SIZE_T -# undef SIZEOF_TIME_T -# undef SIZEOF_VOID_P -# undef SIZEOF__BOOL -# undef SIZEOF_UINTPTR_T -# undef SIZEOF_PTHREAD_T -# undef WORDS_BIGENDIAN -# undef DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754 -# undef DOUBLE_IS_BIG_ENDIAN_IEEE754 -# undef DOUBLE_IS_LITTLE_ENDIAN_IEEE754 -# undef HAVE_GCC_ASM_FOR_X87 -# undef HAVE_GCC_ASM_FOR_X64 - -# undef VA_LIST_IS_ARRAY -# if defined(__LP64__) && defined(__x86_64__) -# define VA_LIST_IS_ARRAY 1 -# endif - -# undef HAVE_LARGEFILE_SUPPORT -# ifndef __LP64__ -# define HAVE_LARGEFILE_SUPPORT 1 -# endif - -# undef SIZEOF_LONG -# ifdef __LP64__ -# define SIZEOF__BOOL 1 -# define SIZEOF__BOOL 1 -# define SIZEOF_LONG 8 -# define SIZEOF_PTHREAD_T 8 -# define SIZEOF_SIZE_T 8 -# define SIZEOF_TIME_T 8 -# define SIZEOF_VOID_P 8 -# define SIZEOF_UINTPTR_T 8 -# define SIZEOF_PTHREAD_T 8 -# else -# ifdef __ppc__ -# define SIZEOF__BOOL 4 -# else -# define SIZEOF__BOOL 1 -# endif -# define SIZEOF_LONG 4 -# define SIZEOF_PTHREAD_T 4 -# define SIZEOF_SIZE_T 4 -# define SIZEOF_TIME_T 4 -# define SIZEOF_VOID_P 4 -# define SIZEOF_UINTPTR_T 4 -# define SIZEOF_PTHREAD_T 4 -# endif - -# if defined(__LP64__) - /* MacOSX 10.4 (the first release to support 64-bit code - * at all) only supports 64-bit in the UNIX layer. - * Therefore suppress the toolbox-glue in 64-bit mode. - */ - - /* In 64-bit mode setpgrp always has no arguments, in 32-bit - * mode that depends on the compilation environment - */ -# undef SETPGRP_HAVE_ARG - -# endif - -#ifdef __BIG_ENDIAN__ -#define WORDS_BIGENDIAN 1 -#define DOUBLE_IS_BIG_ENDIAN_IEEE754 -#else -#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 -#endif /* __BIG_ENDIAN */ - -#if defined(__i386__) || defined(__x86_64__) -# define HAVE_GCC_ASM_FOR_X87 -# define ALIGNOF_MAX_ALIGN_T 16 -# define HAVE_GCC_ASM_FOR_X64 1 -# define SIZEOF_LONG_DOUBLE 16 -#else -# define ALIGNOF_MAX_ALIGN_T 8 -# define SIZEOF_LONG_DOUBLE 8 -#endif - - -#endif /* defined(_APPLE__) */ - -#endif /* PYMACCONFIG_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pymacro.h b/_Pre_Builds/_Python312_cpp/include/pymacro.h deleted file mode 100644 index 342d2a7..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pymacro.h +++ /dev/null @@ -1,163 +0,0 @@ -#ifndef Py_PYMACRO_H -#define Py_PYMACRO_H - -// gh-91782: On FreeBSD 12, if the _POSIX_C_SOURCE and _XOPEN_SOURCE macros are -// defined, disables C11 support and does not define -// the static_assert() macro. -// https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=255290 -// -// macOS <= 10.10 doesn't define static_assert in assert.h at all despite -// having C11 compiler support. -// -// static_assert is defined in glibc from version 2.16. Compiler support for -// the C11 _Static_assert keyword is in gcc >= 4.6. -// -// MSVC makes static_assert a keyword in C11-17, contrary to the standards. -// -// In C++11 and C2x, static_assert is a keyword, redefining is undefined -// behaviour. So only define if building as C (if __STDC_VERSION__ is defined), -// not C++, and only for C11-17. -#if !defined(static_assert) && (defined(__GNUC__) || defined(__clang__)) \ - && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L \ - && __STDC_VERSION__ <= 201710L -# define static_assert _Static_assert -#endif - -/* Minimum value between x and y */ -#define Py_MIN(x, y) (((x) > (y)) ? (y) : (x)) - -/* Maximum value between x and y */ -#define Py_MAX(x, y) (((x) > (y)) ? (x) : (y)) - -/* Absolute value of the number x */ -#define Py_ABS(x) ((x) < 0 ? -(x) : (x)) - -#define _Py_XSTRINGIFY(x) #x - -/* Convert the argument to a string. For example, Py_STRINGIFY(123) is replaced - with "123" by the preprocessor. Defines are also replaced by their value. - For example Py_STRINGIFY(__LINE__) is replaced by the line number, not - by "__LINE__". */ -#define Py_STRINGIFY(x) _Py_XSTRINGIFY(x) - -/* Get the size of a structure member in bytes */ -#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) - -/* Argument must be a char or an int in [-128, 127] or [0, 255]. */ -#define Py_CHARMASK(c) ((unsigned char)((c) & 0xff)) - -/* Assert a build-time dependency, as an expression. - - Your compile will fail if the condition isn't true, or can't be evaluated - by the compiler. This can be used in an expression: its value is 0. - - Example: - - #define foo_to_char(foo) \ - ((char *)(foo) \ - + Py_BUILD_ASSERT_EXPR(offsetof(struct foo, string) == 0)) - - Written by Rusty Russell, public domain, http://ccodearchive.net/ */ -#define Py_BUILD_ASSERT_EXPR(cond) \ - (sizeof(char [1 - 2*!(cond)]) - 1) - -#define Py_BUILD_ASSERT(cond) do { \ - (void)Py_BUILD_ASSERT_EXPR(cond); \ - } while(0) - -/* Get the number of elements in a visible array - - This does not work on pointers, or arrays declared as [], or function - parameters. With correct compiler support, such usage will cause a build - error (see Py_BUILD_ASSERT_EXPR). - - Written by Rusty Russell, public domain, http://ccodearchive.net/ - - Requires at GCC 3.1+ */ -#if (defined(__GNUC__) && !defined(__STRICT_ANSI__) && \ - (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 1)) || (__GNUC__ >= 4))) -/* Two gcc extensions. - &a[0] degrades to a pointer: a different type from an array */ -#define Py_ARRAY_LENGTH(array) \ - (sizeof(array) / sizeof((array)[0]) \ - + Py_BUILD_ASSERT_EXPR(!__builtin_types_compatible_p(typeof(array), \ - typeof(&(array)[0])))) -#else -#define Py_ARRAY_LENGTH(array) \ - (sizeof(array) / sizeof((array)[0])) -#endif - - -/* Define macros for inline documentation. */ -#define PyDoc_VAR(name) static const char name[] -#define PyDoc_STRVAR(name,str) PyDoc_VAR(name) = PyDoc_STR(str) -#ifdef WITH_DOC_STRINGS -#define PyDoc_STR(str) str -#else -#define PyDoc_STR(str) "" -#endif - -/* Below "a" is a power of 2. */ -/* Round down size "n" to be a multiple of "a". */ -#define _Py_SIZE_ROUND_DOWN(n, a) ((size_t)(n) & ~(size_t)((a) - 1)) -/* Round up size "n" to be a multiple of "a". */ -#define _Py_SIZE_ROUND_UP(n, a) (((size_t)(n) + \ - (size_t)((a) - 1)) & ~(size_t)((a) - 1)) -/* Round pointer "p" down to the closest "a"-aligned address <= "p". */ -#define _Py_ALIGN_DOWN(p, a) ((void *)((uintptr_t)(p) & ~(uintptr_t)((a) - 1))) -/* Round pointer "p" up to the closest "a"-aligned address >= "p". */ -#define _Py_ALIGN_UP(p, a) ((void *)(((uintptr_t)(p) + \ - (uintptr_t)((a) - 1)) & ~(uintptr_t)((a) - 1))) -/* Check if pointer "p" is aligned to "a"-bytes boundary. */ -#define _Py_IS_ALIGNED(p, a) (!((uintptr_t)(p) & (uintptr_t)((a) - 1))) - -/* Use this for unused arguments in a function definition to silence compiler - * warnings. Example: - * - * int func(int a, int Py_UNUSED(b)) { return a; } - */ -#if defined(__GNUC__) || defined(__clang__) -# define Py_UNUSED(name) _unused_ ## name __attribute__((unused)) -#else -# define Py_UNUSED(name) _unused_ ## name -#endif - -#if defined(RANDALL_WAS_HERE) -# define Py_UNREACHABLE() \ - Py_FatalError( \ - "If you're seeing this, the code is in what I thought was\n" \ - "an unreachable state.\n\n" \ - "I could give you advice for what to do, but honestly, why\n" \ - "should you trust me? I clearly screwed this up. I'm writing\n" \ - "a message that should never appear, yet I know it will\n" \ - "probably appear someday.\n\n" \ - "On a deep level, I know I'm not up to this task.\n" \ - "I'm so sorry.\n" \ - "https://xkcd.com/2200") -#elif defined(Py_DEBUG) -# define Py_UNREACHABLE() \ - Py_FatalError( \ - "We've reached an unreachable state. Anything is possible.\n" \ - "The limits were in our heads all along. Follow your dreams.\n" \ - "https://xkcd.com/2200") -#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5)) -# define Py_UNREACHABLE() __builtin_unreachable() -#elif defined(__clang__) || defined(__INTEL_COMPILER) -# define Py_UNREACHABLE() __builtin_unreachable() -#elif defined(_MSC_VER) -# define Py_UNREACHABLE() __assume(0) -#else -# define Py_UNREACHABLE() \ - Py_FatalError("Unreachable C code path reached") -#endif - -// Prevent using an expression as a l-value. -// For example, "int x; _Py_RVALUE(x) = 1;" fails with a compiler error. -#define _Py_RVALUE(EXPR) ((void)0, (EXPR)) - -// Return non-zero if the type is signed, return zero if it's unsigned. -// Use "<= 0" rather than "< 0" to prevent the compiler warning: -// "comparison of unsigned expression in '< 0' is always false". -#define _Py_IS_TYPE_SIGNED(type) ((type)(-1) <= 0) - -#endif /* Py_PYMACRO_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pymath.h b/_Pre_Builds/_Python312_cpp/include/pymath.h deleted file mode 100644 index 4c1e3d9..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pymath.h +++ /dev/null @@ -1,62 +0,0 @@ -// Symbols and macros to supply platform-independent interfaces to mathematical -// functions and constants. - -#ifndef Py_PYMATH_H -#define Py_PYMATH_H - -/* High precision definition of pi and e (Euler) - * The values are taken from libc6's math.h. - */ -#ifndef Py_MATH_PIl -#define Py_MATH_PIl 3.1415926535897932384626433832795029L -#endif -#ifndef Py_MATH_PI -#define Py_MATH_PI 3.14159265358979323846 -#endif - -#ifndef Py_MATH_El -#define Py_MATH_El 2.7182818284590452353602874713526625L -#endif - -#ifndef Py_MATH_E -#define Py_MATH_E 2.7182818284590452354 -#endif - -/* Tau (2pi) to 40 digits, taken from tauday.com/tau-digits. */ -#ifndef Py_MATH_TAU -#define Py_MATH_TAU 6.2831853071795864769252867665590057683943L -#endif - -// Py_IS_NAN(X) -// Return 1 if float or double arg is a NaN, else 0. -#define Py_IS_NAN(X) isnan(X) - -// Py_IS_INFINITY(X) -// Return 1 if float or double arg is an infinity, else 0. -#define Py_IS_INFINITY(X) isinf(X) - -// Py_IS_FINITE(X) -// Return 1 if float or double arg is neither infinite nor NAN, else 0. -#define Py_IS_FINITE(X) isfinite(X) - -// Py_INFINITY: Value that evaluates to a positive double infinity. -#ifndef Py_INFINITY -# define Py_INFINITY ((double)INFINITY) -#endif - -/* Py_HUGE_VAL should always be the same as Py_INFINITY. But historically - * this was not reliable and Python did not require IEEE floats and C99 - * conformity. Prefer Py_INFINITY for new code. - */ -#ifndef Py_HUGE_VAL -# define Py_HUGE_VAL HUGE_VAL -#endif - -/* Py_NAN: Value that evaluates to a quiet Not-a-Number (NaN). The sign is - * undefined and normally not relevant, but e.g. fixed for float("nan"). - */ -#if !defined(Py_NAN) -# define Py_NAN ((double)NAN) -#endif - -#endif /* Py_PYMATH_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pymem.h b/_Pre_Builds/_Python312_cpp/include/pymem.h deleted file mode 100644 index e882645..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pymem.h +++ /dev/null @@ -1,104 +0,0 @@ -/* The PyMem_ family: low-level memory allocation interfaces. - See objimpl.h for the PyObject_ memory family. -*/ - -#ifndef Py_PYMEM_H -#define Py_PYMEM_H - -#include "pyport.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* BEWARE: - - Each interface exports both functions and macros. Extension modules should - use the functions, to ensure binary compatibility across Python versions. - Because the Python implementation is free to change internal details, and - the macros may (or may not) expose details for speed, if you do use the - macros you must recompile your extensions with each Python release. - - Never mix calls to PyMem_ with calls to the platform malloc/realloc/ - calloc/free. For example, on Windows different DLLs may end up using - different heaps, and if you use PyMem_Malloc you'll get the memory from the - heap used by the Python DLL; it could be a disaster if you free()'ed that - directly in your own extension. Using PyMem_Free instead ensures Python - can return the memory to the proper heap. As another example, in - a debug build (Py_DEBUG macro), Python wraps all calls to all PyMem_ and - PyObject_ memory functions in special debugging wrappers that add additional - debugging info to dynamic memory blocks. The system routines have no idea - what to do with that stuff, and the Python wrappers have no idea what to do - with raw blocks obtained directly by the system routines then. - - The GIL must be held when using these APIs. -*/ - -/* - * Raw memory interface - * ==================== - */ - -/* Functions - - Functions supplying platform-independent semantics for malloc/realloc/ - free. These functions make sure that allocating 0 bytes returns a distinct - non-NULL pointer (whenever possible -- if we're flat out of memory, NULL - may be returned), even if the platform malloc and realloc don't. - Returned pointers must be checked for NULL explicitly. No action is - performed on failure (no exception is set, no warning is printed, etc). -*/ - -PyAPI_FUNC(void *) PyMem_Malloc(size_t size); -PyAPI_FUNC(void *) PyMem_Calloc(size_t nelem, size_t elsize); -PyAPI_FUNC(void *) PyMem_Realloc(void *ptr, size_t new_size); -PyAPI_FUNC(void) PyMem_Free(void *ptr); - -/* - * Type-oriented memory interface - * ============================== - * - * Allocate memory for n objects of the given type. Returns a new pointer - * or NULL if the request was too large or memory allocation failed. Use - * these macros rather than doing the multiplication yourself so that proper - * overflow checking is always done. - */ - -#define PyMem_New(type, n) \ - ( ((size_t)(n) > PY_SSIZE_T_MAX / sizeof(type)) ? NULL : \ - ( (type *) PyMem_Malloc((n) * sizeof(type)) ) ) - -/* - * The value of (p) is always clobbered by this macro regardless of success. - * The caller MUST check if (p) is NULL afterwards and deal with the memory - * error if so. This means the original value of (p) MUST be saved for the - * caller's memory error handler to not lose track of it. - */ -#define PyMem_Resize(p, type, n) \ - ( (p) = ((size_t)(n) > PY_SSIZE_T_MAX / sizeof(type)) ? NULL : \ - (type *) PyMem_Realloc((p), (n) * sizeof(type)) ) - - -// Deprecated aliases only kept for backward compatibility. -// PyMem_Del and PyMem_DEL are defined with no parameter to be able to use -// them as function pointers (ex: dealloc = PyMem_Del). -#define PyMem_MALLOC(n) PyMem_Malloc((n)) -#define PyMem_NEW(type, n) PyMem_New(type, (n)) -#define PyMem_REALLOC(p, n) PyMem_Realloc((p), (n)) -#define PyMem_RESIZE(p, type, n) PyMem_Resize((p), type, (n)) -#define PyMem_FREE(p) PyMem_Free((p)) -#define PyMem_Del(p) PyMem_Free((p)) -#define PyMem_DEL(p) PyMem_Free((p)) - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYMEM_H -# include "cpython/pymem.h" -# undef Py_CPYTHON_PYMEM_H -#endif - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_PYMEM_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pyport.h b/_Pre_Builds/_Python312_cpp/include/pyport.h deleted file mode 100644 index 35eca72..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pyport.h +++ /dev/null @@ -1,774 +0,0 @@ -#ifndef Py_PYPORT_H -#define Py_PYPORT_H - -#include "pyconfig.h" /* include for defines */ - -#include - -#include -#ifndef UCHAR_MAX -# error "limits.h must define UCHAR_MAX" -#endif -#if UCHAR_MAX != 255 -# error "Python's source code assumes C's unsigned char is an 8-bit type" -#endif - - -// Macro to use C++ static_cast<> in the Python C API. -#ifdef __cplusplus -# define _Py_STATIC_CAST(type, expr) static_cast(expr) -#else -# define _Py_STATIC_CAST(type, expr) ((type)(expr)) -#endif -// Macro to use the more powerful/dangerous C-style cast even in C++. -#define _Py_CAST(type, expr) ((type)(expr)) - -// Static inline functions should use _Py_NULL rather than using directly NULL -// to prevent C++ compiler warnings. On C++11 and newer, _Py_NULL is defined as -// nullptr. -#if defined(__cplusplus) && __cplusplus >= 201103 -# define _Py_NULL nullptr -#else -# define _Py_NULL NULL -#endif - - -/* Defines to build Python and its standard library: - * - * - Py_BUILD_CORE: Build Python core. Give access to Python internals, but - * should not be used by third-party modules. - * - Py_BUILD_CORE_BUILTIN: Build a Python stdlib module as a built-in module. - * - Py_BUILD_CORE_MODULE: Build a Python stdlib module as a dynamic library. - * - * Py_BUILD_CORE_BUILTIN and Py_BUILD_CORE_MODULE imply Py_BUILD_CORE. - * - * On Windows, Py_BUILD_CORE_MODULE exports "PyInit_xxx" symbol, whereas - * Py_BUILD_CORE_BUILTIN does not. - */ -#if defined(Py_BUILD_CORE_BUILTIN) && !defined(Py_BUILD_CORE) -# define Py_BUILD_CORE -#endif -#if defined(Py_BUILD_CORE_MODULE) && !defined(Py_BUILD_CORE) -# define Py_BUILD_CORE -#endif - - -/************************************************************************** -Symbols and macros to supply platform-independent interfaces to basic -C language & library operations whose spellings vary across platforms. - -Please try to make documentation here as clear as possible: by definition, -the stuff here is trying to illuminate C's darkest corners. - -Config #defines referenced here: - -SIGNED_RIGHT_SHIFT_ZERO_FILLS -Meaning: To be defined iff i>>j does not extend the sign bit when i is a - signed integral type and i < 0. -Used in: Py_ARITHMETIC_RIGHT_SHIFT - -Py_DEBUG -Meaning: Extra checks compiled in for debug mode. -Used in: Py_SAFE_DOWNCAST - -**************************************************************************/ - -/* typedefs for some C9X-defined synonyms for integral types. - * - * The names in Python are exactly the same as the C9X names, except with a - * Py_ prefix. Until C9X is universally implemented, this is the only way - * to ensure that Python gets reliable names that don't conflict with names - * in non-Python code that are playing their own tricks to define the C9X - * names. - * - * NOTE: don't go nuts here! Python has no use for *most* of the C9X - * integral synonyms. Only define the ones we actually need. - */ - -/* long long is required. Ensure HAVE_LONG_LONG is defined for compatibility. */ -#ifndef HAVE_LONG_LONG -#define HAVE_LONG_LONG 1 -#endif -#ifndef PY_LONG_LONG -#define PY_LONG_LONG long long -/* If LLONG_MAX is defined in limits.h, use that. */ -#define PY_LLONG_MIN LLONG_MIN -#define PY_LLONG_MAX LLONG_MAX -#define PY_ULLONG_MAX ULLONG_MAX -#endif - -#define PY_UINT32_T uint32_t -#define PY_UINT64_T uint64_t - -/* Signed variants of the above */ -#define PY_INT32_T int32_t -#define PY_INT64_T int64_t - -/* PYLONG_BITS_IN_DIGIT describes the number of bits per "digit" (limb) in the - * PyLongObject implementation (longintrepr.h). It's currently either 30 or 15, - * defaulting to 30. The 15-bit digit option may be removed in the future. - */ -#ifndef PYLONG_BITS_IN_DIGIT -#define PYLONG_BITS_IN_DIGIT 30 -#endif - -/* uintptr_t is the C9X name for an unsigned integral type such that a - * legitimate void* can be cast to uintptr_t and then back to void* again - * without loss of information. Similarly for intptr_t, wrt a signed - * integral type. - */ -typedef uintptr_t Py_uintptr_t; -typedef intptr_t Py_intptr_t; - -/* Py_ssize_t is a signed integral type such that sizeof(Py_ssize_t) == - * sizeof(size_t). C99 doesn't define such a thing directly (size_t is an - * unsigned integral type). See PEP 353 for details. - * PY_SSIZE_T_MAX is the largest positive value of type Py_ssize_t. - */ -#ifdef HAVE_PY_SSIZE_T - -#elif HAVE_SSIZE_T -typedef ssize_t Py_ssize_t; -# define PY_SSIZE_T_MAX SSIZE_MAX -#elif SIZEOF_VOID_P == SIZEOF_SIZE_T -typedef Py_intptr_t Py_ssize_t; -# define PY_SSIZE_T_MAX INTPTR_MAX -#else -# error "Python needs a typedef for Py_ssize_t in pyport.h." -#endif - -/* Smallest negative value of type Py_ssize_t. */ -#define PY_SSIZE_T_MIN (-PY_SSIZE_T_MAX-1) - -/* Py_hash_t is the same size as a pointer. */ -#define SIZEOF_PY_HASH_T SIZEOF_SIZE_T -typedef Py_ssize_t Py_hash_t; -/* Py_uhash_t is the unsigned equivalent needed to calculate numeric hash. */ -#define SIZEOF_PY_UHASH_T SIZEOF_SIZE_T -typedef size_t Py_uhash_t; - -/* Now PY_SSIZE_T_CLEAN is mandatory. This is just for backward compatibility. */ -typedef Py_ssize_t Py_ssize_clean_t; - -/* Largest possible value of size_t. */ -#define PY_SIZE_MAX SIZE_MAX - -/* Macro kept for backward compatibility: use directly "z" in new code. - * - * PY_FORMAT_SIZE_T is a modifier for use in a printf format to convert an - * argument with the width of a size_t or Py_ssize_t: "z" (C99). - */ -#ifndef PY_FORMAT_SIZE_T -# define PY_FORMAT_SIZE_T "z" -#endif - -/* Py_LOCAL can be used instead of static to get the fastest possible calling - * convention for functions that are local to a given module. - * - * Py_LOCAL_INLINE does the same thing, and also explicitly requests inlining, - * for platforms that support that. - * - * NOTE: You can only use this for functions that are entirely local to a - * module; functions that are exported via method tables, callbacks, etc, - * should keep using static. - */ - -#if defined(_MSC_VER) - /* ignore warnings if the compiler decides not to inline a function */ -# pragma warning(disable: 4710) - /* fastest possible local call under MSVC */ -# define Py_LOCAL(type) static type __fastcall -# define Py_LOCAL_INLINE(type) static __inline type __fastcall -#else -# define Py_LOCAL(type) static type -# define Py_LOCAL_INLINE(type) static inline type -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000 -# define Py_MEMCPY memcpy -#endif - -#ifdef HAVE_IEEEFP_H -#include /* needed for 'finite' declaration on some platforms */ -#endif - -#include /* Moved here from the math section, before extern "C" */ - -/******************************************** - * WRAPPER FOR and/or * - ********************************************/ - -#ifdef HAVE_SYS_TIME_H -#include -#endif -#include - -/****************************** - * WRAPPER FOR * - ******************************/ - -/* NB caller must include */ - -#ifdef HAVE_SYS_SELECT_H -#include -#endif /* !HAVE_SYS_SELECT_H */ - -/******************************* - * stat() and fstat() fiddling * - *******************************/ - -#ifdef HAVE_SYS_STAT_H -#include -#elif defined(HAVE_STAT_H) -#include -#endif - -#ifndef S_IFMT -/* VisualAge C/C++ Failed to Define MountType Field in sys/stat.h */ -#define S_IFMT 0170000 -#endif - -#ifndef S_IFLNK -/* Windows doesn't define S_IFLNK but posixmodule.c maps - * IO_REPARSE_TAG_SYMLINK to S_IFLNK */ -# define S_IFLNK 0120000 -#endif - -#ifndef S_ISREG -#define S_ISREG(x) (((x) & S_IFMT) == S_IFREG) -#endif - -#ifndef S_ISDIR -#define S_ISDIR(x) (((x) & S_IFMT) == S_IFDIR) -#endif - -#ifndef S_ISCHR -#define S_ISCHR(x) (((x) & S_IFMT) == S_IFCHR) -#endif - -#ifndef S_ISLNK -#define S_ISLNK(x) (((x) & S_IFMT) == S_IFLNK) -#endif - -#ifdef __cplusplus -/* Move this down here since some C++ #include's don't like to be included - inside an extern "C" */ -extern "C" { -#endif - - -/* Py_ARITHMETIC_RIGHT_SHIFT - * C doesn't define whether a right-shift of a signed integer sign-extends - * or zero-fills. Here a macro to force sign extension: - * Py_ARITHMETIC_RIGHT_SHIFT(TYPE, I, J) - * Return I >> J, forcing sign extension. Arithmetically, return the - * floor of I/2**J. - * Requirements: - * I should have signed integer type. In the terminology of C99, this can - * be either one of the five standard signed integer types (signed char, - * short, int, long, long long) or an extended signed integer type. - * J is an integer >= 0 and strictly less than the number of bits in the - * type of I (because C doesn't define what happens for J outside that - * range either). - * TYPE used to specify the type of I, but is now ignored. It's been left - * in for backwards compatibility with versions <= 2.6 or 3.0. - * Caution: - * I may be evaluated more than once. - */ -#ifdef SIGNED_RIGHT_SHIFT_ZERO_FILLS -#define Py_ARITHMETIC_RIGHT_SHIFT(TYPE, I, J) \ - ((I) < 0 ? -1-((-1-(I)) >> (J)) : (I) >> (J)) -#else -#define Py_ARITHMETIC_RIGHT_SHIFT(TYPE, I, J) ((I) >> (J)) -#endif - -/* Py_FORCE_EXPANSION(X) - * "Simply" returns its argument. However, macro expansions within the - * argument are evaluated. This unfortunate trickery is needed to get - * token-pasting to work as desired in some cases. - */ -#define Py_FORCE_EXPANSION(X) X - -/* Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) - * Cast VALUE to type NARROW from type WIDE. In Py_DEBUG mode, this - * assert-fails if any information is lost. - * Caution: - * VALUE may be evaluated more than once. - */ -#ifdef Py_DEBUG -# define Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) \ - (assert(_Py_STATIC_CAST(WIDE, _Py_STATIC_CAST(NARROW, (VALUE))) == (VALUE)), \ - _Py_STATIC_CAST(NARROW, (VALUE))) -#else -# define Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) _Py_STATIC_CAST(NARROW, (VALUE)) -#endif - - -/* Py_DEPRECATED(version) - * Declare a variable, type, or function deprecated. - * The macro must be placed before the declaration. - * Usage: - * Py_DEPRECATED(3.3) extern int old_var; - * Py_DEPRECATED(3.4) typedef int T1; - * Py_DEPRECATED(3.8) PyAPI_FUNC(int) Py_OldFunction(void); - */ -#if defined(__GNUC__) \ - && ((__GNUC__ >= 4) || (__GNUC__ == 3) && (__GNUC_MINOR__ >= 1)) -#define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__)) -#elif defined(_MSC_VER) -#define Py_DEPRECATED(VERSION) __declspec(deprecated( \ - "deprecated in " #VERSION)) -#else -#define Py_DEPRECATED(VERSION_UNUSED) -#endif - -// _Py_DEPRECATED_EXTERNALLY(version) -// Deprecated outside CPython core. -#ifdef Py_BUILD_CORE -#define _Py_DEPRECATED_EXTERNALLY(VERSION_UNUSED) -#else -#define _Py_DEPRECATED_EXTERNALLY(version) Py_DEPRECATED(version) -#endif - - -#if defined(__clang__) -#define _Py_COMP_DIAG_PUSH _Pragma("clang diagnostic push") -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS \ - _Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\"") -#define _Py_COMP_DIAG_POP _Pragma("clang diagnostic pop") -#elif defined(__GNUC__) \ - && ((__GNUC__ >= 5) || (__GNUC__ == 4) && (__GNUC_MINOR__ >= 6)) -#define _Py_COMP_DIAG_PUSH _Pragma("GCC diagnostic push") -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS \ - _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") -#define _Py_COMP_DIAG_POP _Pragma("GCC diagnostic pop") -#elif defined(_MSC_VER) -#define _Py_COMP_DIAG_PUSH __pragma(warning(push)) -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS __pragma(warning(disable: 4996)) -#define _Py_COMP_DIAG_POP __pragma(warning(pop)) -#else -#define _Py_COMP_DIAG_PUSH -#define _Py_COMP_DIAG_IGNORE_DEPR_DECLS -#define _Py_COMP_DIAG_POP -#endif - -/* _Py_HOT_FUNCTION - * The hot attribute on a function is used to inform the compiler that the - * function is a hot spot of the compiled program. The function is optimized - * more aggressively and on many target it is placed into special subsection of - * the text section so all hot functions appears close together improving - * locality. - * - * Usage: - * int _Py_HOT_FUNCTION x(void) { return 3; } - * - * Issue #28618: This attribute must not be abused, otherwise it can have a - * negative effect on performance. Only the functions were Python spend most of - * its time must use it. Use a profiler when running performance benchmark - * suite to find these functions. - */ -#if defined(__GNUC__) \ - && ((__GNUC__ >= 5) || (__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)) -#define _Py_HOT_FUNCTION __attribute__((hot)) -#else -#define _Py_HOT_FUNCTION -#endif - -// Ask the compiler to always inline a static inline function. The compiler can -// ignore it and decides to not inline the function. -// -// It can be used to inline performance critical static inline functions when -// building Python in debug mode with function inlining disabled. For example, -// MSC disables function inlining when building in debug mode. -// -// Marking blindly a static inline function with Py_ALWAYS_INLINE can result in -// worse performances (due to increased code size for example). The compiler is -// usually smarter than the developer for the cost/benefit analysis. -// -// If Python is built in debug mode (if the Py_DEBUG macro is defined), the -// Py_ALWAYS_INLINE macro does nothing. -// -// It must be specified before the function return type. Usage: -// -// static inline Py_ALWAYS_INLINE int random(void) { return 4; } -#if defined(Py_DEBUG) - // If Python is built in debug mode, usually compiler optimizations are - // disabled. In this case, Py_ALWAYS_INLINE can increase a lot the stack - // memory usage. For example, forcing inlining using gcc -O0 increases the - // stack usage from 6 KB to 15 KB per Python function call. -# define Py_ALWAYS_INLINE -#elif defined(__GNUC__) || defined(__clang__) || defined(__INTEL_COMPILER) -# define Py_ALWAYS_INLINE __attribute__((always_inline)) -#elif defined(_MSC_VER) -# define Py_ALWAYS_INLINE __forceinline -#else -# define Py_ALWAYS_INLINE -#endif - -// Py_NO_INLINE -// Disable inlining on a function. For example, it reduces the C stack -// consumption: useful on LTO+PGO builds which heavily inline code (see -// bpo-33720). -// -// Usage: -// -// Py_NO_INLINE static int random(void) { return 4; } -#if defined(__GNUC__) || defined(__clang__) || defined(__INTEL_COMPILER) -# define Py_NO_INLINE __attribute__ ((noinline)) -#elif defined(_MSC_VER) -# define Py_NO_INLINE __declspec(noinline) -#else -# define Py_NO_INLINE -#endif - -/************************************************************************** -Prototypes that are missing from the standard include files on some systems -(and possibly only some versions of such systems.) - -Please be conservative with adding new ones, document them and enclose them -in platform-specific #ifdefs. -**************************************************************************/ - -#ifdef HAVE__GETPTY -#include /* we need to import mode_t */ -extern char * _getpty(int *, int, mode_t, int); -#endif - -/* On QNX 6, struct termio must be declared by including sys/termio.h - if TCGETA, TCSETA, TCSETAW, or TCSETAF are used. sys/termio.h must - be included before termios.h or it will generate an error. */ -#if defined(HAVE_SYS_TERMIO_H) && !defined(__hpux) -#include -#endif - - -/* On 4.4BSD-descendants, ctype functions serves the whole range of - * wchar_t character set rather than single byte code points only. - * This characteristic can break some operations of string object - * including str.upper() and str.split() on UTF-8 locales. This - * workaround was provided by Tim Robbins of FreeBSD project. - */ - -#if defined(__APPLE__) -# define _PY_PORT_CTYPE_UTF8_ISSUE -#endif - -#ifdef _PY_PORT_CTYPE_UTF8_ISSUE -#ifndef __cplusplus - /* The workaround below is unsafe in C++ because - * the defines these symbols as real functions, - * with a slightly different signature. - * See issue #10910 - */ -#include -#include -#undef isalnum -#define isalnum(c) iswalnum(btowc(c)) -#undef isalpha -#define isalpha(c) iswalpha(btowc(c)) -#undef islower -#define islower(c) iswlower(btowc(c)) -#undef isspace -#define isspace(c) iswspace(btowc(c)) -#undef isupper -#define isupper(c) iswupper(btowc(c)) -#undef tolower -#define tolower(c) towlower(btowc(c)) -#undef toupper -#define toupper(c) towupper(btowc(c)) -#endif -#endif - - -/* Declarations for symbol visibility. - - PyAPI_FUNC(type): Declares a public Python API function and return type - PyAPI_DATA(type): Declares public Python data and its type - PyMODINIT_FUNC: A Python module init function. If these functions are - inside the Python core, they are private to the core. - If in an extension module, it may be declared with - external linkage depending on the platform. - - As a number of platforms support/require "__declspec(dllimport/dllexport)", - we support a HAVE_DECLSPEC_DLL macro to save duplication. -*/ - -/* - All windows ports, except cygwin, are handled in PC/pyconfig.h. - - Cygwin is the only other autoconf platform requiring special - linkage handling and it uses __declspec(). -*/ -#if defined(__CYGWIN__) -# define HAVE_DECLSPEC_DLL -#endif - -#include "exports.h" - -/* only get special linkage if built as shared or platform is Cygwin */ -#if defined(Py_ENABLE_SHARED) || defined(__CYGWIN__) -# if defined(HAVE_DECLSPEC_DLL) -# if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) -# define PyAPI_FUNC(RTYPE) Py_EXPORTED_SYMBOL RTYPE -# define PyAPI_DATA(RTYPE) extern Py_EXPORTED_SYMBOL RTYPE - /* module init functions inside the core need no external linkage */ - /* except for Cygwin to handle embedding */ -# if defined(__CYGWIN__) -# define PyMODINIT_FUNC Py_EXPORTED_SYMBOL PyObject* -# else /* __CYGWIN__ */ -# define PyMODINIT_FUNC PyObject* -# endif /* __CYGWIN__ */ -# else /* Py_BUILD_CORE */ - /* Building an extension module, or an embedded situation */ - /* public Python functions and data are imported */ - /* Under Cygwin, auto-import functions to prevent compilation */ - /* failures similar to those described at the bottom of 4.1: */ - /* http://docs.python.org/extending/windows.html#a-cookbook-approach */ -# if !defined(__CYGWIN__) -# define PyAPI_FUNC(RTYPE) Py_IMPORTED_SYMBOL RTYPE -# endif /* !__CYGWIN__ */ -# define PyAPI_DATA(RTYPE) extern Py_IMPORTED_SYMBOL RTYPE - /* module init functions outside the core must be exported */ -# if defined(__cplusplus) -# define PyMODINIT_FUNC extern "C" Py_EXPORTED_SYMBOL PyObject* -# else /* __cplusplus */ -# define PyMODINIT_FUNC Py_EXPORTED_SYMBOL PyObject* -# endif /* __cplusplus */ -# endif /* Py_BUILD_CORE */ -# endif /* HAVE_DECLSPEC_DLL */ -#endif /* Py_ENABLE_SHARED */ - -/* If no external linkage macros defined by now, create defaults */ -#ifndef PyAPI_FUNC -# define PyAPI_FUNC(RTYPE) Py_EXPORTED_SYMBOL RTYPE -#endif -#ifndef PyAPI_DATA -# define PyAPI_DATA(RTYPE) extern Py_EXPORTED_SYMBOL RTYPE -#endif -#ifndef PyMODINIT_FUNC -# if defined(__cplusplus) -# define PyMODINIT_FUNC extern "C" Py_EXPORTED_SYMBOL PyObject* -# else /* __cplusplus */ -# define PyMODINIT_FUNC Py_EXPORTED_SYMBOL PyObject* -# endif /* __cplusplus */ -#endif - -/* limits.h constants that may be missing */ - -#ifndef INT_MAX -#define INT_MAX 2147483647 -#endif - -#ifndef LONG_MAX -#if SIZEOF_LONG == 4 -#define LONG_MAX 0X7FFFFFFFL -#elif SIZEOF_LONG == 8 -#define LONG_MAX 0X7FFFFFFFFFFFFFFFL -#else -#error "could not set LONG_MAX in pyport.h" -#endif -#endif - -#ifndef LONG_MIN -#define LONG_MIN (-LONG_MAX-1) -#endif - -#ifndef LONG_BIT -#define LONG_BIT (8 * SIZEOF_LONG) -#endif - -#if LONG_BIT != 8 * SIZEOF_LONG -/* 04-Oct-2000 LONG_BIT is apparently (mis)defined as 64 on some recent - * 32-bit platforms using gcc. We try to catch that here at compile-time - * rather than waiting for integer multiplication to trigger bogus - * overflows. - */ -#error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)." -#endif - -#ifdef __cplusplus -} -#endif - -/* - * Hide GCC attributes from compilers that don't support them. - */ -#if (!defined(__GNUC__) || __GNUC__ < 2 || \ - (__GNUC__ == 2 && __GNUC_MINOR__ < 7) ) -#define Py_GCC_ATTRIBUTE(x) -#else -#define Py_GCC_ATTRIBUTE(x) __attribute__(x) -#endif - -/* - * Specify alignment on compilers that support it. - */ -#if defined(__GNUC__) && __GNUC__ >= 3 -#define Py_ALIGNED(x) __attribute__((aligned(x))) -#else -#define Py_ALIGNED(x) -#endif - -/* Eliminate end-of-loop code not reached warnings from SunPro C - * when using do{...}while(0) macros - */ -#ifdef __SUNPRO_C -#pragma error_messages (off,E_END_OF_LOOP_CODE_NOT_REACHED) -#endif - -#ifndef Py_LL -#define Py_LL(x) x##LL -#endif - -#ifndef Py_ULL -#define Py_ULL(x) Py_LL(x##U) -#endif - -#define Py_VA_COPY va_copy - -/* - * Convenient macros to deal with endianness of the platform. WORDS_BIGENDIAN is - * detected by configure and defined in pyconfig.h. The code in pyconfig.h - * also takes care of Apple's universal builds. - */ - -#ifdef WORDS_BIGENDIAN -# define PY_BIG_ENDIAN 1 -# define PY_LITTLE_ENDIAN 0 -#else -# define PY_BIG_ENDIAN 0 -# define PY_LITTLE_ENDIAN 1 -#endif - -#ifdef __ANDROID__ - /* The Android langinfo.h header is not used. */ -# undef HAVE_LANGINFO_H -# undef CODESET -#endif - -/* Maximum value of the Windows DWORD type */ -#define PY_DWORD_MAX 4294967295U - -/* This macro used to tell whether Python was built with multithreading - * enabled. Now multithreading is always enabled, but keep the macro - * for compatibility. - */ -#ifndef WITH_THREAD -# define WITH_THREAD -#endif - -#ifdef WITH_THREAD -# ifdef Py_BUILD_CORE -# ifdef HAVE_THREAD_LOCAL -# error "HAVE_THREAD_LOCAL is already defined" -# endif -# define HAVE_THREAD_LOCAL 1 -# ifdef thread_local -# define _Py_thread_local thread_local -# elif __STDC_VERSION__ >= 201112L && !defined(__STDC_NO_THREADS__) -# define _Py_thread_local _Thread_local -# elif defined(_MSC_VER) /* AKA NT_THREADS */ -# define _Py_thread_local __declspec(thread) -# elif defined(__GNUC__) /* includes clang */ -# define _Py_thread_local __thread -# else - // fall back to the PyThread_tss_*() API, or ignore. -# undef HAVE_THREAD_LOCAL -# endif -# endif -#endif - -/* Check that ALT_SOABI is consistent with Py_TRACE_REFS: - ./configure --with-trace-refs should must be used to define Py_TRACE_REFS */ -#if defined(ALT_SOABI) && defined(Py_TRACE_REFS) -# error "Py_TRACE_REFS ABI is not compatible with release and debug ABI" -#endif - -#if defined(__ANDROID__) || defined(__VXWORKS__) - // Use UTF-8 as the locale encoding, ignore the LC_CTYPE locale. - // See _Py_GetLocaleEncoding(), PyUnicode_DecodeLocale() - // and PyUnicode_EncodeLocale(). -# define _Py_FORCE_UTF8_LOCALE -#endif - -#if defined(_Py_FORCE_UTF8_LOCALE) || defined(__APPLE__) - // Use UTF-8 as the filesystem encoding. - // See PyUnicode_DecodeFSDefaultAndSize(), PyUnicode_EncodeFSDefault(), - // Py_DecodeLocale() and Py_EncodeLocale(). -# define _Py_FORCE_UTF8_FS_ENCODING -#endif - -/* Mark a function which cannot return. Example: - PyAPI_FUNC(void) _Py_NO_RETURN PyThread_exit_thread(void); - - XLC support is intentionally omitted due to bpo-40244 */ -#ifndef _Py_NO_RETURN -#if defined(__clang__) || \ - (defined(__GNUC__) && \ - ((__GNUC__ >= 3) || \ - (__GNUC__ == 2) && (__GNUC_MINOR__ >= 5))) -# define _Py_NO_RETURN __attribute__((__noreturn__)) -#elif defined(_MSC_VER) -# define _Py_NO_RETURN __declspec(noreturn) -#else -# define _Py_NO_RETURN -#endif -#endif - - -// Preprocessor check for a builtin preprocessor function. Always return 0 -// if __has_builtin() macro is not defined. -// -// __has_builtin() is available on clang and GCC 10. -#ifdef __has_builtin -# define _Py__has_builtin(x) __has_builtin(x) -#else -# define _Py__has_builtin(x) 0 -#endif - -// _Py_TYPEOF(expr) gets the type of an expression. -// -// Example: _Py_TYPEOF(x) x_copy = (x); -// -// The macro is only defined if GCC or clang compiler is used. -#if defined(__GNUC__) || defined(__clang__) -# define _Py_TYPEOF(expr) __typeof__(expr) -#endif - - -/* A convenient way for code to know if sanitizers are enabled. */ -#if defined(__has_feature) -# if __has_feature(memory_sanitizer) -# if !defined(_Py_MEMORY_SANITIZER) -# define _Py_MEMORY_SANITIZER -# endif -# endif -# if __has_feature(address_sanitizer) -# if !defined(_Py_ADDRESS_SANITIZER) -# define _Py_ADDRESS_SANITIZER -# endif -# endif -#elif defined(__GNUC__) -# if defined(__SANITIZE_ADDRESS__) -# define _Py_ADDRESS_SANITIZER -# endif -#endif - - -/* AIX has __bool__ redefined in it's system header file. */ -#if defined(_AIX) && defined(__bool__) -#undef __bool__ -#endif - -// Make sure we have maximum alignment, even if the current compiler -// does not support max_align_t. Note that: -// - Autoconf reports alignment of unknown types to 0. -// - 'long double' has maximum alignment on *most* platforms, -// looks like the best we can do for pre-C11 compilers. -// - The value is tested, see test_alignof_max_align_t -#if !defined(ALIGNOF_MAX_ALIGN_T) || ALIGNOF_MAX_ALIGN_T == 0 -# undef ALIGNOF_MAX_ALIGN_T -# define ALIGNOF_MAX_ALIGN_T _Alignof(long double) -#endif - -#endif /* Py_PYPORT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pystate.h b/_Pre_Builds/_Python312_cpp/include/pystate.h deleted file mode 100644 index e6b4de9..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pystate.h +++ /dev/null @@ -1,132 +0,0 @@ -/* Thread and interpreter state structures and their interfaces */ - - -#ifndef Py_PYSTATE_H -#define Py_PYSTATE_H -#ifdef __cplusplus -extern "C" { -#endif - -/* This limitation is for performance and simplicity. If needed it can be -removed (with effort). */ -#define MAX_CO_EXTRA_USERS 255 - -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_New(void); -PyAPI_FUNC(void) PyInterpreterState_Clear(PyInterpreterState *); -PyAPI_FUNC(void) PyInterpreterState_Delete(PyInterpreterState *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* New in 3.9 */ -/* Get the current interpreter state. - - Issue a fatal error if there no current Python thread state or no current - interpreter. It cannot return NULL. - - The caller must hold the GIL. */ -PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_Get(void); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03080000 -/* New in 3.8 */ -PyAPI_FUNC(PyObject *) PyInterpreterState_GetDict(PyInterpreterState *); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -/* New in 3.7 */ -PyAPI_FUNC(int64_t) PyInterpreterState_GetID(PyInterpreterState *); -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 - -/* State unique per thread */ - -/* New in 3.3 */ -PyAPI_FUNC(int) PyState_AddModule(PyObject*, PyModuleDef*); -PyAPI_FUNC(int) PyState_RemoveModule(PyModuleDef*); -#endif -PyAPI_FUNC(PyObject*) PyState_FindModule(PyModuleDef*); - -PyAPI_FUNC(PyThreadState *) PyThreadState_New(PyInterpreterState *); -PyAPI_FUNC(void) PyThreadState_Clear(PyThreadState *); -PyAPI_FUNC(void) PyThreadState_Delete(PyThreadState *); - -/* Get the current thread state. - - When the current thread state is NULL, this issues a fatal error (so that - the caller needn't check for NULL). - - The caller must hold the GIL. - - See also _PyThreadState_UncheckedGet() and _PyThreadState_GET(). */ -PyAPI_FUNC(PyThreadState *) PyThreadState_Get(void); - -// Alias to PyThreadState_Get() -#define PyThreadState_GET() PyThreadState_Get() - -PyAPI_FUNC(PyThreadState *) PyThreadState_Swap(PyThreadState *); -PyAPI_FUNC(PyObject *) PyThreadState_GetDict(void); -PyAPI_FUNC(int) PyThreadState_SetAsyncExc(unsigned long, PyObject *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000 -/* New in 3.9 */ -PyAPI_FUNC(PyInterpreterState*) PyThreadState_GetInterpreter(PyThreadState *tstate); -PyAPI_FUNC(PyFrameObject*) PyThreadState_GetFrame(PyThreadState *tstate); -PyAPI_FUNC(uint64_t) PyThreadState_GetID(PyThreadState *tstate); -#endif - -typedef - enum {PyGILState_LOCKED, PyGILState_UNLOCKED} - PyGILState_STATE; - - -/* Ensure that the current thread is ready to call the Python - C API, regardless of the current state of Python, or of its - thread lock. This may be called as many times as desired - by a thread so long as each call is matched with a call to - PyGILState_Release(). In general, other thread-state APIs may - be used between _Ensure() and _Release() calls, so long as the - thread-state is restored to its previous state before the Release(). - For example, normal use of the Py_BEGIN_ALLOW_THREADS/ - Py_END_ALLOW_THREADS macros are acceptable. - - The return value is an opaque "handle" to the thread state when - PyGILState_Ensure() was called, and must be passed to - PyGILState_Release() to ensure Python is left in the same state. Even - though recursive calls are allowed, these handles can *not* be shared - - each unique call to PyGILState_Ensure must save the handle for its - call to PyGILState_Release. - - When the function returns, the current thread will hold the GIL. - - Failure is a fatal error. -*/ -PyAPI_FUNC(PyGILState_STATE) PyGILState_Ensure(void); - -/* Release any resources previously acquired. After this call, Python's - state will be the same as it was prior to the corresponding - PyGILState_Ensure() call (but generally this state will be unknown to - the caller, hence the use of the GILState API.) - - Every call to PyGILState_Ensure must be matched by a call to - PyGILState_Release on the same thread. -*/ -PyAPI_FUNC(void) PyGILState_Release(PyGILState_STATE); - -/* Helper/diagnostic function - get the current thread state for - this thread. May return NULL if no GILState API has been used - on the current thread. Note that the main thread always has such a - thread-state, even if no auto-thread-state call has been made - on the main thread. -*/ -PyAPI_FUNC(PyThreadState *) PyGILState_GetThisThreadState(void); - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYSTATE_H -# include "cpython/pystate.h" -# undef Py_CPYTHON_PYSTATE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYSTATE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pystats.h b/_Pre_Builds/_Python312_cpp/include/pystats.h deleted file mode 100644 index 4b961ba..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pystats.h +++ /dev/null @@ -1,110 +0,0 @@ - - -#ifndef Py_PYSTATS_H -#define Py_PYSTATS_H -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef Py_STATS - -#define SPECIALIZATION_FAILURE_KINDS 36 - -/* Stats for determining who is calling PyEval_EvalFrame */ -#define EVAL_CALL_TOTAL 0 -#define EVAL_CALL_VECTOR 1 -#define EVAL_CALL_GENERATOR 2 -#define EVAL_CALL_LEGACY 3 -#define EVAL_CALL_FUNCTION_VECTORCALL 4 -#define EVAL_CALL_BUILD_CLASS 5 -#define EVAL_CALL_SLOT 6 -#define EVAL_CALL_FUNCTION_EX 7 -#define EVAL_CALL_API 8 -#define EVAL_CALL_METHOD 9 - -#define EVAL_CALL_KINDS 10 - -typedef struct _specialization_stats { - uint64_t success; - uint64_t failure; - uint64_t hit; - uint64_t deferred; - uint64_t miss; - uint64_t deopt; - uint64_t failure_kinds[SPECIALIZATION_FAILURE_KINDS]; -} SpecializationStats; - -typedef struct _opcode_stats { - SpecializationStats specialization; - uint64_t execution_count; - uint64_t pair_count[256]; -} OpcodeStats; - -typedef struct _call_stats { - uint64_t inlined_py_calls; - uint64_t pyeval_calls; - uint64_t frames_pushed; - uint64_t frame_objects_created; - uint64_t eval_calls[EVAL_CALL_KINDS]; -} CallStats; - -typedef struct _object_stats { - uint64_t increfs; - uint64_t decrefs; - uint64_t interpreter_increfs; - uint64_t interpreter_decrefs; - uint64_t allocations; - uint64_t allocations512; - uint64_t allocations4k; - uint64_t allocations_big; - uint64_t frees; - uint64_t to_freelist; - uint64_t from_freelist; - uint64_t new_values; - uint64_t dict_materialized_on_request; - uint64_t dict_materialized_new_key; - uint64_t dict_materialized_too_big; - uint64_t dict_materialized_str_subclass; - uint64_t type_cache_hits; - uint64_t type_cache_misses; - uint64_t type_cache_dunder_hits; - uint64_t type_cache_dunder_misses; - uint64_t type_cache_collisions; -} ObjectStats; - -typedef struct _stats { - OpcodeStats opcode_stats[256]; - CallStats call_stats; - ObjectStats object_stats; -} PyStats; - - -PyAPI_DATA(PyStats) _py_stats_struct; -PyAPI_DATA(PyStats *) _py_stats; - -extern void _Py_StatsClear(void); -extern void _Py_PrintSpecializationStats(int to_file); - -#ifdef _PY_INTERPRETER - -#define _Py_INCREF_STAT_INC() do { if (_py_stats) _py_stats->object_stats.interpreter_increfs++; } while (0) -#define _Py_DECREF_STAT_INC() do { if (_py_stats) _py_stats->object_stats.interpreter_decrefs++; } while (0) - -#else - -#define _Py_INCREF_STAT_INC() do { if (_py_stats) _py_stats->object_stats.increfs++; } while (0) -#define _Py_DECREF_STAT_INC() do { if (_py_stats) _py_stats->object_stats.decrefs++; } while (0) - -#endif - -#else - -#define _Py_INCREF_STAT_INC() ((void)0) -#define _Py_DECREF_STAT_INC() ((void)0) - -#endif // !Py_STATS - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYSTATs_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pystrcmp.h b/_Pre_Builds/_Python312_cpp/include/pystrcmp.h deleted file mode 100644 index edb1239..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pystrcmp.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef Py_STRCMP_H -#define Py_STRCMP_H - -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(int) PyOS_mystrnicmp(const char *, const char *, Py_ssize_t); -PyAPI_FUNC(int) PyOS_mystricmp(const char *, const char *); - -#ifdef MS_WINDOWS -#define PyOS_strnicmp strnicmp -#define PyOS_stricmp stricmp -#else -#define PyOS_strnicmp PyOS_mystrnicmp -#define PyOS_stricmp PyOS_mystricmp -#endif - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_STRCMP_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pystrtod.h b/_Pre_Builds/_Python312_cpp/include/pystrtod.h deleted file mode 100644 index fa056d1..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pystrtod.h +++ /dev/null @@ -1,46 +0,0 @@ -#ifndef Py_STRTOD_H -#define Py_STRTOD_H - -#ifdef __cplusplus -extern "C" { -#endif - - -PyAPI_FUNC(double) PyOS_string_to_double(const char *str, - char **endptr, - PyObject *overflow_exception); - -/* The caller is responsible for calling PyMem_Free to free the buffer - that's is returned. */ -PyAPI_FUNC(char *) PyOS_double_to_string(double val, - char format_code, - int precision, - int flags, - int *type); - -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _Py_string_to_number_with_underscores( - const char *str, Py_ssize_t len, const char *what, PyObject *obj, void *arg, - PyObject *(*innerfunc)(const char *, Py_ssize_t, void *)); - -PyAPI_FUNC(double) _Py_parse_inf_or_nan(const char *p, char **endptr); -#endif - - -/* PyOS_double_to_string's "flags" parameter can be set to 0 or more of: */ -#define Py_DTSF_SIGN 0x01 /* always add the sign */ -#define Py_DTSF_ADD_DOT_0 0x02 /* if the result is an integer add ".0" */ -#define Py_DTSF_ALT 0x04 /* "alternate" formatting. it's format_code - specific */ -#define Py_DTSF_NO_NEG_0 0x08 /* negative zero result is coerced to 0 */ - -/* PyOS_double_to_string's "type", if non-NULL, will be set to one of: */ -#define Py_DTST_FINITE 0 -#define Py_DTST_INFINITE 1 -#define Py_DTST_NAN 2 - -#ifdef __cplusplus -} -#endif - -#endif /* !Py_STRTOD_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pythonrun.h b/_Pre_Builds/_Python312_cpp/include/pythonrun.h deleted file mode 100644 index 154c745..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pythonrun.h +++ /dev/null @@ -1,49 +0,0 @@ - -/* Interfaces to parse and execute pieces of python code */ - -#ifndef Py_PYTHONRUN_H -#define Py_PYTHONRUN_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) Py_CompileString(const char *, const char *, int); - -PyAPI_FUNC(void) PyErr_Print(void); -PyAPI_FUNC(void) PyErr_PrintEx(int); -PyAPI_FUNC(void) PyErr_Display(PyObject *, PyObject *, PyObject *); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030C0000 -PyAPI_FUNC(void) PyErr_DisplayException(PyObject *); -#endif - - -/* Stuff with no proper home (yet) */ -PyAPI_DATA(int) (*PyOS_InputHook)(void); - -/* Stack size, in "pointers" (so we get extra safety margins - on 64-bit platforms). On a 32-bit platform, this translates - to an 8k margin. */ -#define PYOS_STACK_MARGIN 2048 - -#if defined(WIN32) && !defined(MS_WIN64) && !defined(_M_ARM) && defined(_MSC_VER) && _MSC_VER >= 1300 -/* Enable stack checking under Microsoft C */ -// When changing the platforms, ensure PyOS_CheckStack() docs are still correct -#define USE_STACKCHECK -#endif - -#ifdef USE_STACKCHECK -/* Check that we aren't overflowing our stack */ -PyAPI_FUNC(int) PyOS_CheckStack(void); -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYTHONRUN_H -# include "cpython/pythonrun.h" -# undef Py_CPYTHON_PYTHONRUN_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYTHONRUN_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pythread.h b/_Pre_Builds/_Python312_cpp/include/pythread.h deleted file mode 100644 index 6371443..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pythread.h +++ /dev/null @@ -1,135 +0,0 @@ -#ifndef Py_PYTHREAD_H -#define Py_PYTHREAD_H - -typedef void *PyThread_type_lock; - -#ifdef __cplusplus -extern "C" { -#endif - -/* Return status codes for Python lock acquisition. Chosen for maximum - * backwards compatibility, ie failure -> 0, success -> 1. */ -typedef enum PyLockStatus { - PY_LOCK_FAILURE = 0, - PY_LOCK_ACQUIRED = 1, - PY_LOCK_INTR -} PyLockStatus; - -PyAPI_FUNC(void) PyThread_init_thread(void); -PyAPI_FUNC(unsigned long) PyThread_start_new_thread(void (*)(void *), void *); -PyAPI_FUNC(void) _Py_NO_RETURN PyThread_exit_thread(void); -PyAPI_FUNC(unsigned long) PyThread_get_thread_ident(void); - -#if (defined(__APPLE__) || defined(__linux__) || defined(_WIN32) \ - || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) \ - || defined(__DragonFly__) || defined(_AIX)) -#define PY_HAVE_THREAD_NATIVE_ID -PyAPI_FUNC(unsigned long) PyThread_get_thread_native_id(void); -#endif - -PyAPI_FUNC(PyThread_type_lock) PyThread_allocate_lock(void); -PyAPI_FUNC(void) PyThread_free_lock(PyThread_type_lock); -PyAPI_FUNC(int) PyThread_acquire_lock(PyThread_type_lock, int); -#define WAIT_LOCK 1 -#define NOWAIT_LOCK 0 - -/* PY_TIMEOUT_T is the integral type used to specify timeouts when waiting - on a lock (see PyThread_acquire_lock_timed() below). - PY_TIMEOUT_MAX is the highest usable value (in microseconds) of that - type, and depends on the system threading API. - - NOTE: this isn't the same value as `_thread.TIMEOUT_MAX`. The _thread - module exposes a higher-level API, with timeouts expressed in seconds - and floating-point numbers allowed. -*/ -#define PY_TIMEOUT_T long long - -#if defined(_POSIX_THREADS) - /* PyThread_acquire_lock_timed() uses _PyTime_FromNanoseconds(us * 1000), - convert microseconds to nanoseconds. */ -# define PY_TIMEOUT_MAX (LLONG_MAX / 1000) -#elif defined (NT_THREADS) - // WaitForSingleObject() accepts timeout in milliseconds in the range - // [0; 0xFFFFFFFE] (DWORD type). INFINITE value (0xFFFFFFFF) means no - // timeout. 0xFFFFFFFE milliseconds is around 49.7 days. -# if 0xFFFFFFFELL * 1000 < LLONG_MAX -# define PY_TIMEOUT_MAX (0xFFFFFFFELL * 1000) -# else -# define PY_TIMEOUT_MAX LLONG_MAX -# endif -#else -# define PY_TIMEOUT_MAX LLONG_MAX -#endif - - -/* If microseconds == 0, the call is non-blocking: it returns immediately - even when the lock can't be acquired. - If microseconds > 0, the call waits up to the specified duration. - If microseconds < 0, the call waits until success (or abnormal failure) - - microseconds must be less than PY_TIMEOUT_MAX. Behaviour otherwise is - undefined. - - If intr_flag is true and the acquire is interrupted by a signal, then the - call will return PY_LOCK_INTR. The caller may reattempt to acquire the - lock. -*/ -PyAPI_FUNC(PyLockStatus) PyThread_acquire_lock_timed(PyThread_type_lock, - PY_TIMEOUT_T microseconds, - int intr_flag); - -PyAPI_FUNC(void) PyThread_release_lock(PyThread_type_lock); - -PyAPI_FUNC(size_t) PyThread_get_stacksize(void); -PyAPI_FUNC(int) PyThread_set_stacksize(size_t); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyThread_GetInfo(void); -#endif - - -/* Thread Local Storage (TLS) API - TLS API is DEPRECATED. Use Thread Specific Storage (TSS) API. - - The existing TLS API has used int to represent TLS keys across all - platforms, but it is not POSIX-compliant. Therefore, the new TSS API uses - opaque data type to represent TSS keys to be compatible (see PEP 539). -*/ -Py_DEPRECATED(3.7) PyAPI_FUNC(int) PyThread_create_key(void); -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyThread_delete_key(int key); -Py_DEPRECATED(3.7) PyAPI_FUNC(int) PyThread_set_key_value(int key, - void *value); -Py_DEPRECATED(3.7) PyAPI_FUNC(void *) PyThread_get_key_value(int key); -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyThread_delete_key_value(int key); - -/* Cleanup after a fork */ -Py_DEPRECATED(3.7) PyAPI_FUNC(void) PyThread_ReInitTLS(void); - - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000 -/* New in 3.7 */ -/* Thread Specific Storage (TSS) API */ - -typedef struct _Py_tss_t Py_tss_t; /* opaque */ - -PyAPI_FUNC(Py_tss_t *) PyThread_tss_alloc(void); -PyAPI_FUNC(void) PyThread_tss_free(Py_tss_t *key); - -/* The parameter key must not be NULL. */ -PyAPI_FUNC(int) PyThread_tss_is_created(Py_tss_t *key); -PyAPI_FUNC(int) PyThread_tss_create(Py_tss_t *key); -PyAPI_FUNC(void) PyThread_tss_delete(Py_tss_t *key); -PyAPI_FUNC(int) PyThread_tss_set(Py_tss_t *key, void *value); -PyAPI_FUNC(void *) PyThread_tss_get(Py_tss_t *key); -#endif /* New in 3.7 */ - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_PYTHREAD_H -# include "cpython/pythread.h" -# undef Py_CPYTHON_PYTHREAD_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_PYTHREAD_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/pytypedefs.h b/_Pre_Builds/_Python312_cpp/include/pytypedefs.h deleted file mode 100644 index e78ed56..0000000 --- a/_Pre_Builds/_Python312_cpp/include/pytypedefs.h +++ /dev/null @@ -1,30 +0,0 @@ -// Forward declarations of types of the Python C API. -// Declare them at the same place since redefining typedef is a C11 feature. -// Only use a forward declaration if there is an interdependency between two -// header files. - -#ifndef Py_PYTYPEDEFS_H -#define Py_PYTYPEDEFS_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct PyModuleDef PyModuleDef; -typedef struct PyModuleDef_Slot PyModuleDef_Slot; -typedef struct PyMethodDef PyMethodDef; -typedef struct PyGetSetDef PyGetSetDef; -typedef struct PyMemberDef PyMemberDef; - -typedef struct _object PyObject; -typedef struct _longobject PyLongObject; -typedef struct _typeobject PyTypeObject; -typedef struct PyCodeObject PyCodeObject; -typedef struct _frame PyFrameObject; - -typedef struct _ts PyThreadState; -typedef struct _is PyInterpreterState; - -#ifdef __cplusplus -} -#endif -#endif // !Py_PYTYPEDEFS_H diff --git a/_Pre_Builds/_Python312_cpp/include/rangeobject.h b/_Pre_Builds/_Python312_cpp/include/rangeobject.h deleted file mode 100644 index d46ce7c..0000000 --- a/_Pre_Builds/_Python312_cpp/include/rangeobject.h +++ /dev/null @@ -1,27 +0,0 @@ - -/* Range object interface */ - -#ifndef Py_RANGEOBJECT_H -#define Py_RANGEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* -A range object represents an integer range. This is an immutable object; -a range cannot change its value after creation. - -Range objects behave like the corresponding tuple objects except that -they are represented by a start, stop, and step datamembers. -*/ - -PyAPI_DATA(PyTypeObject) PyRange_Type; -PyAPI_DATA(PyTypeObject) PyRangeIter_Type; -PyAPI_DATA(PyTypeObject) PyLongRangeIter_Type; - -#define PyRange_Check(op) Py_IS_TYPE((op), &PyRange_Type) - -#ifdef __cplusplus -} -#endif -#endif /* !Py_RANGEOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/setobject.h b/_Pre_Builds/_Python312_cpp/include/setobject.h deleted file mode 100644 index 62c9e6b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/setobject.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Set object interface */ - -#ifndef Py_SETOBJECT_H -#define Py_SETOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_DATA(PyTypeObject) PySet_Type; -PyAPI_DATA(PyTypeObject) PyFrozenSet_Type; -PyAPI_DATA(PyTypeObject) PySetIter_Type; - -PyAPI_FUNC(PyObject *) PySet_New(PyObject *); -PyAPI_FUNC(PyObject *) PyFrozenSet_New(PyObject *); - -PyAPI_FUNC(int) PySet_Add(PyObject *set, PyObject *key); -PyAPI_FUNC(int) PySet_Clear(PyObject *set); -PyAPI_FUNC(int) PySet_Contains(PyObject *anyset, PyObject *key); -PyAPI_FUNC(int) PySet_Discard(PyObject *set, PyObject *key); -PyAPI_FUNC(PyObject *) PySet_Pop(PyObject *set); -PyAPI_FUNC(Py_ssize_t) PySet_Size(PyObject *anyset); - -#define PyFrozenSet_CheckExact(ob) Py_IS_TYPE((ob), &PyFrozenSet_Type) -#define PyFrozenSet_Check(ob) \ - (Py_IS_TYPE((ob), &PyFrozenSet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PyFrozenSet_Type)) - -#define PyAnySet_CheckExact(ob) \ - (Py_IS_TYPE((ob), &PySet_Type) || Py_IS_TYPE((ob), &PyFrozenSet_Type)) -#define PyAnySet_Check(ob) \ - (Py_IS_TYPE((ob), &PySet_Type) || Py_IS_TYPE((ob), &PyFrozenSet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PySet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PyFrozenSet_Type)) - -#define PySet_CheckExact(op) Py_IS_TYPE(op, &PySet_Type) -#define PySet_Check(ob) \ - (Py_IS_TYPE((ob), &PySet_Type) || \ - PyType_IsSubtype(Py_TYPE(ob), &PySet_Type)) - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_SETOBJECT_H -# include "cpython/setobject.h" -# undef Py_CPYTHON_SETOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_SETOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/sliceobject.h b/_Pre_Builds/_Python312_cpp/include/sliceobject.h deleted file mode 100644 index c13863f..0000000 --- a/_Pre_Builds/_Python312_cpp/include/sliceobject.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef Py_SLICEOBJECT_H -#define Py_SLICEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* The unique ellipsis object "..." */ - -PyAPI_DATA(PyObject) _Py_EllipsisObject; /* Don't use this directly */ - -#define Py_Ellipsis (&_Py_EllipsisObject) - -/* Slice object interface */ - -/* - -A slice object containing start, stop, and step data members (the -names are from range). After much talk with Guido, it was decided to -let these be any arbitrary python type. Py_None stands for omitted values. -*/ -#ifndef Py_LIMITED_API -typedef struct { - PyObject_HEAD - PyObject *start, *stop, *step; /* not NULL */ -} PySliceObject; -#endif - -PyAPI_DATA(PyTypeObject) PySlice_Type; -PyAPI_DATA(PyTypeObject) PyEllipsis_Type; - -#define PySlice_Check(op) Py_IS_TYPE((op), &PySlice_Type) - -PyAPI_FUNC(PyObject *) PySlice_New(PyObject* start, PyObject* stop, - PyObject* step); -#ifndef Py_LIMITED_API -PyAPI_FUNC(PyObject *) _PySlice_FromIndices(Py_ssize_t start, Py_ssize_t stop); -PyAPI_FUNC(int) _PySlice_GetLongIndices(PySliceObject *self, PyObject *length, - PyObject **start_ptr, PyObject **stop_ptr, - PyObject **step_ptr); -#endif -PyAPI_FUNC(int) PySlice_GetIndices(PyObject *r, Py_ssize_t length, - Py_ssize_t *start, Py_ssize_t *stop, Py_ssize_t *step); -Py_DEPRECATED(3.7) -PyAPI_FUNC(int) PySlice_GetIndicesEx(PyObject *r, Py_ssize_t length, - Py_ssize_t *start, Py_ssize_t *stop, - Py_ssize_t *step, - Py_ssize_t *slicelength); - -#if !defined(Py_LIMITED_API) || (Py_LIMITED_API+0 >= 0x03050400 && Py_LIMITED_API+0 < 0x03060000) || Py_LIMITED_API+0 >= 0x03060100 -#define PySlice_GetIndicesEx(slice, length, start, stop, step, slicelen) ( \ - PySlice_Unpack((slice), (start), (stop), (step)) < 0 ? \ - ((*(slicelen) = 0), -1) : \ - ((*(slicelen) = PySlice_AdjustIndices((length), (start), (stop), *(step))), \ - 0)) -PyAPI_FUNC(int) PySlice_Unpack(PyObject *slice, - Py_ssize_t *start, Py_ssize_t *stop, Py_ssize_t *step); -PyAPI_FUNC(Py_ssize_t) PySlice_AdjustIndices(Py_ssize_t length, - Py_ssize_t *start, Py_ssize_t *stop, - Py_ssize_t step); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_SLICEOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/structmember.h b/_Pre_Builds/_Python312_cpp/include/structmember.h deleted file mode 100644 index f6e8fd8..0000000 --- a/_Pre_Builds/_Python312_cpp/include/structmember.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef Py_STRUCTMEMBER_H -#define Py_STRUCTMEMBER_H -#ifdef __cplusplus -extern "C" { -#endif - - -/* Interface to map C struct members to Python object attributes - * - * This header is deprecated: new code should not use stuff from here. - * New definitions are in descrobject.h. - * - * However, there's nothing wrong with old code continuing to use it, - * and there's not much mainenance overhead in maintaining a few aliases. - * So, don't be too eager to convert old code. - * - * It uses names not prefixed with Py_. - * It is also *not* included from Python.h and must be included individually. - */ - -#include /* For offsetof (not always provided by Python.h) */ - -/* Types */ -#define T_SHORT Py_T_SHORT -#define T_INT Py_T_INT -#define T_LONG Py_T_LONG -#define T_FLOAT Py_T_FLOAT -#define T_DOUBLE Py_T_DOUBLE -#define T_STRING Py_T_STRING -#define T_OBJECT _Py_T_OBJECT -#define T_CHAR Py_T_CHAR -#define T_BYTE Py_T_BYTE -#define T_UBYTE Py_T_UBYTE -#define T_USHORT Py_T_USHORT -#define T_UINT Py_T_UINT -#define T_ULONG Py_T_ULONG -#define T_STRING_INPLACE Py_T_STRING_INPLACE -#define T_BOOL Py_T_BOOL -#define T_OBJECT_EX Py_T_OBJECT_EX -#define T_LONGLONG Py_T_LONGLONG -#define T_ULONGLONG Py_T_ULONGLONG -#define T_PYSSIZET Py_T_PYSSIZET -#define T_NONE _Py_T_NONE - -/* Flags */ -#define READONLY Py_READONLY -#define PY_AUDIT_READ Py_AUDIT_READ -#define READ_RESTRICTED Py_AUDIT_READ -#define PY_WRITE_RESTRICTED _Py_WRITE_RESTRICTED -#define RESTRICTED (READ_RESTRICTED | PY_WRITE_RESTRICTED) - - -#ifdef __cplusplus -} -#endif -#endif /* !Py_STRUCTMEMBER_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/structseq.h b/_Pre_Builds/_Python312_cpp/include/structseq.h deleted file mode 100644 index 9687115..0000000 --- a/_Pre_Builds/_Python312_cpp/include/structseq.h +++ /dev/null @@ -1,49 +0,0 @@ - -/* Named tuple object interface */ - -#ifndef Py_STRUCTSEQ_H -#define Py_STRUCTSEQ_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct PyStructSequence_Field { - const char *name; - const char *doc; -} PyStructSequence_Field; - -typedef struct PyStructSequence_Desc { - const char *name; - const char *doc; - PyStructSequence_Field *fields; - int n_in_sequence; -} PyStructSequence_Desc; - -PyAPI_DATA(const char * const) PyStructSequence_UnnamedField; - -#ifndef Py_LIMITED_API -PyAPI_FUNC(void) PyStructSequence_InitType(PyTypeObject *type, - PyStructSequence_Desc *desc); -PyAPI_FUNC(int) PyStructSequence_InitType2(PyTypeObject *type, - PyStructSequence_Desc *desc); -#endif -PyAPI_FUNC(PyTypeObject*) PyStructSequence_NewType(PyStructSequence_Desc *desc); - -PyAPI_FUNC(PyObject *) PyStructSequence_New(PyTypeObject* type); - -#ifndef Py_LIMITED_API -typedef PyTupleObject PyStructSequence; - -/* Macro, *only* to be used to fill in brand new objects */ -#define PyStructSequence_SET_ITEM(op, i, v) PyTuple_SET_ITEM((op), (i), (v)) - -#define PyStructSequence_GET_ITEM(op, i) PyTuple_GET_ITEM((op), (i)) -#endif - -PyAPI_FUNC(void) PyStructSequence_SetItem(PyObject*, Py_ssize_t, PyObject*); -PyAPI_FUNC(PyObject*) PyStructSequence_GetItem(PyObject*, Py_ssize_t); - -#ifdef __cplusplus -} -#endif -#endif /* !Py_STRUCTSEQ_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/sysmodule.h b/_Pre_Builds/_Python312_cpp/include/sysmodule.h deleted file mode 100644 index 96f8838..0000000 --- a/_Pre_Builds/_Python312_cpp/include/sysmodule.h +++ /dev/null @@ -1,54 +0,0 @@ - -/* System module interface */ - -#ifndef Py_SYSMODULE_H -#define Py_SYSMODULE_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(PyObject *) PySys_GetObject(const char *); -PyAPI_FUNC(int) PySys_SetObject(const char *, PyObject *); - -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_SetArgv(int, wchar_t **); -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_SetArgvEx(int, wchar_t **, int); -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_SetPath(const wchar_t *); - -PyAPI_FUNC(void) PySys_WriteStdout(const char *format, ...) - Py_GCC_ATTRIBUTE((format(printf, 1, 2))); -PyAPI_FUNC(void) PySys_WriteStderr(const char *format, ...) - Py_GCC_ATTRIBUTE((format(printf, 1, 2))); -PyAPI_FUNC(void) PySys_FormatStdout(const char *format, ...); -PyAPI_FUNC(void) PySys_FormatStderr(const char *format, ...); - -PyAPI_FUNC(void) PySys_ResetWarnOptions(void); -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_AddWarnOption(const wchar_t *); -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_AddWarnOptionUnicode(PyObject *); -Py_DEPRECATED(3.11) PyAPI_FUNC(int) PySys_HasWarnOptions(void); - -Py_DEPRECATED(3.11) PyAPI_FUNC(void) PySys_AddXOption(const wchar_t *); -PyAPI_FUNC(PyObject *) PySys_GetXOptions(void); - -#if !defined(Py_LIMITED_API) -typedef struct { - FILE* perf_map; - PyThread_type_lock map_lock; -} PerfMapState; - -PyAPI_FUNC(int) PyUnstable_PerfMapState_Init(void); - -PyAPI_FUNC(int) PyUnstable_WritePerfMapEntry(const void *code_addr, unsigned int code_size, const char *entry_name); - -PyAPI_FUNC(void) PyUnstable_PerfMapState_Fini(void); -#endif - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_SYSMODULE_H -# include "cpython/sysmodule.h" -# undef Py_CPYTHON_SYSMODULE_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_SYSMODULE_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/traceback.h b/_Pre_Builds/_Python312_cpp/include/traceback.h deleted file mode 100644 index 2b40cc9..0000000 --- a/_Pre_Builds/_Python312_cpp/include/traceback.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef Py_TRACEBACK_H -#define Py_TRACEBACK_H -#ifdef __cplusplus -extern "C" { -#endif - -/* Traceback interface */ - -PyAPI_FUNC(int) PyTraceBack_Here(PyFrameObject *); -PyAPI_FUNC(int) PyTraceBack_Print(PyObject *, PyObject *); - -/* Reveal traceback type so we can typecheck traceback objects */ -PyAPI_DATA(PyTypeObject) PyTraceBack_Type; -#define PyTraceBack_Check(v) Py_IS_TYPE((v), &PyTraceBack_Type) - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_TRACEBACK_H -# include "cpython/traceback.h" -# undef Py_CPYTHON_TRACEBACK_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_TRACEBACK_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/tracemalloc.h b/_Pre_Builds/_Python312_cpp/include/tracemalloc.h deleted file mode 100644 index 580027a..0000000 --- a/_Pre_Builds/_Python312_cpp/include/tracemalloc.h +++ /dev/null @@ -1,72 +0,0 @@ -#ifndef Py_TRACEMALLOC_H -#define Py_TRACEMALLOC_H - -#ifndef Py_LIMITED_API -/* Track an allocated memory block in the tracemalloc module. - Return 0 on success, return -1 on error (failed to allocate memory to store - the trace). - - Return -2 if tracemalloc is disabled. - - If memory block is already tracked, update the existing trace. */ -PyAPI_FUNC(int) PyTraceMalloc_Track( - unsigned int domain, - uintptr_t ptr, - size_t size); - -/* Untrack an allocated memory block in the tracemalloc module. - Do nothing if the block was not tracked. - - Return -2 if tracemalloc is disabled, otherwise return 0. */ -PyAPI_FUNC(int) PyTraceMalloc_Untrack( - unsigned int domain, - uintptr_t ptr); - -/* Get the traceback where a memory block was allocated. - - Return a tuple of (filename: str, lineno: int) tuples. - - Return None if the tracemalloc module is disabled or if the memory block - is not tracked by tracemalloc. - - Raise an exception and return NULL on error. */ -PyAPI_FUNC(PyObject*) _PyTraceMalloc_GetTraceback( - unsigned int domain, - uintptr_t ptr); - -/* Return non-zero if tracemalloc is tracing */ -PyAPI_FUNC(int) _PyTraceMalloc_IsTracing(void); - -/* Clear the tracemalloc traces */ -PyAPI_FUNC(void) _PyTraceMalloc_ClearTraces(void); - -/* Clear the tracemalloc traces */ -PyAPI_FUNC(PyObject *) _PyTraceMalloc_GetTraces(void); - -/* Clear tracemalloc traceback for an object */ -PyAPI_FUNC(PyObject *) _PyTraceMalloc_GetObjectTraceback(PyObject *obj); - -/* Initialize tracemalloc */ -PyAPI_FUNC(int) _PyTraceMalloc_Init(void); - -/* Start tracemalloc */ -PyAPI_FUNC(int) _PyTraceMalloc_Start(int max_nframe); - -/* Stop tracemalloc */ -PyAPI_FUNC(void) _PyTraceMalloc_Stop(void); - -/* Get the tracemalloc traceback limit */ -PyAPI_FUNC(int) _PyTraceMalloc_GetTracebackLimit(void); - -/* Get the memory usage of tracemalloc in bytes */ -PyAPI_FUNC(size_t) _PyTraceMalloc_GetMemory(void); - -/* Get the current size and peak size of traced memory blocks as a 2-tuple */ -PyAPI_FUNC(PyObject *) _PyTraceMalloc_GetTracedMemory(void); - -/* Set the peak size of traced memory blocks to the current size */ -PyAPI_FUNC(void) _PyTraceMalloc_ResetPeak(void); - -#endif - -#endif /* !Py_TRACEMALLOC_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/tupleobject.h b/_Pre_Builds/_Python312_cpp/include/tupleobject.h deleted file mode 100644 index 1f9ab54..0000000 --- a/_Pre_Builds/_Python312_cpp/include/tupleobject.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Tuple object interface */ - -#ifndef Py_TUPLEOBJECT_H -#define Py_TUPLEOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -/* -Another generally useful object type is a tuple of object pointers. -For Python, this is an immutable type. C code can change the tuple items -(but not their number), and even use tuples as general-purpose arrays of -object references, but in general only brand new tuples should be mutated, -not ones that might already have been exposed to Python code. - -*** WARNING *** PyTuple_SetItem does not increment the new item's reference -count, but does decrement the reference count of the item it replaces, -if not nil. It does *decrement* the reference count if it is *not* -inserted in the tuple. Similarly, PyTuple_GetItem does not increment the -returned item's reference count. -*/ - -PyAPI_DATA(PyTypeObject) PyTuple_Type; -PyAPI_DATA(PyTypeObject) PyTupleIter_Type; - -#define PyTuple_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TUPLE_SUBCLASS) -#define PyTuple_CheckExact(op) Py_IS_TYPE((op), &PyTuple_Type) - -PyAPI_FUNC(PyObject *) PyTuple_New(Py_ssize_t size); -PyAPI_FUNC(Py_ssize_t) PyTuple_Size(PyObject *); -PyAPI_FUNC(PyObject *) PyTuple_GetItem(PyObject *, Py_ssize_t); -PyAPI_FUNC(int) PyTuple_SetItem(PyObject *, Py_ssize_t, PyObject *); -PyAPI_FUNC(PyObject *) PyTuple_GetSlice(PyObject *, Py_ssize_t, Py_ssize_t); -PyAPI_FUNC(PyObject *) PyTuple_Pack(Py_ssize_t, ...); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_TUPLEOBJECT_H -# include "cpython/tupleobject.h" -# undef Py_CPYTHON_TUPLEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_TUPLEOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/typeslots.h b/_Pre_Builds/_Python312_cpp/include/typeslots.h deleted file mode 100644 index 506b055..0000000 --- a/_Pre_Builds/_Python312_cpp/include/typeslots.h +++ /dev/null @@ -1,88 +0,0 @@ -/* Do not renumber the file; these numbers are part of the stable ABI. */ -#define Py_bf_getbuffer 1 -#define Py_bf_releasebuffer 2 -#define Py_mp_ass_subscript 3 -#define Py_mp_length 4 -#define Py_mp_subscript 5 -#define Py_nb_absolute 6 -#define Py_nb_add 7 -#define Py_nb_and 8 -#define Py_nb_bool 9 -#define Py_nb_divmod 10 -#define Py_nb_float 11 -#define Py_nb_floor_divide 12 -#define Py_nb_index 13 -#define Py_nb_inplace_add 14 -#define Py_nb_inplace_and 15 -#define Py_nb_inplace_floor_divide 16 -#define Py_nb_inplace_lshift 17 -#define Py_nb_inplace_multiply 18 -#define Py_nb_inplace_or 19 -#define Py_nb_inplace_power 20 -#define Py_nb_inplace_remainder 21 -#define Py_nb_inplace_rshift 22 -#define Py_nb_inplace_subtract 23 -#define Py_nb_inplace_true_divide 24 -#define Py_nb_inplace_xor 25 -#define Py_nb_int 26 -#define Py_nb_invert 27 -#define Py_nb_lshift 28 -#define Py_nb_multiply 29 -#define Py_nb_negative 30 -#define Py_nb_or 31 -#define Py_nb_positive 32 -#define Py_nb_power 33 -#define Py_nb_remainder 34 -#define Py_nb_rshift 35 -#define Py_nb_subtract 36 -#define Py_nb_true_divide 37 -#define Py_nb_xor 38 -#define Py_sq_ass_item 39 -#define Py_sq_concat 40 -#define Py_sq_contains 41 -#define Py_sq_inplace_concat 42 -#define Py_sq_inplace_repeat 43 -#define Py_sq_item 44 -#define Py_sq_length 45 -#define Py_sq_repeat 46 -#define Py_tp_alloc 47 -#define Py_tp_base 48 -#define Py_tp_bases 49 -#define Py_tp_call 50 -#define Py_tp_clear 51 -#define Py_tp_dealloc 52 -#define Py_tp_del 53 -#define Py_tp_descr_get 54 -#define Py_tp_descr_set 55 -#define Py_tp_doc 56 -#define Py_tp_getattr 57 -#define Py_tp_getattro 58 -#define Py_tp_hash 59 -#define Py_tp_init 60 -#define Py_tp_is_gc 61 -#define Py_tp_iter 62 -#define Py_tp_iternext 63 -#define Py_tp_methods 64 -#define Py_tp_new 65 -#define Py_tp_repr 66 -#define Py_tp_richcompare 67 -#define Py_tp_setattr 68 -#define Py_tp_setattro 69 -#define Py_tp_str 70 -#define Py_tp_traverse 71 -#define Py_tp_members 72 -#define Py_tp_getset 73 -#define Py_tp_free 74 -#define Py_nb_matrix_multiply 75 -#define Py_nb_inplace_matrix_multiply 76 -#define Py_am_await 77 -#define Py_am_aiter 78 -#define Py_am_anext 79 -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 -/* New in 3.5 */ -#define Py_tp_finalize 80 -#endif -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -/* New in 3.10 */ -#define Py_am_send 81 -#endif diff --git a/_Pre_Builds/_Python312_cpp/include/unicodeobject.h b/_Pre_Builds/_Python312_cpp/include/unicodeobject.h deleted file mode 100644 index 5839c74..0000000 --- a/_Pre_Builds/_Python312_cpp/include/unicodeobject.h +++ /dev/null @@ -1,1020 +0,0 @@ -#ifndef Py_UNICODEOBJECT_H -#define Py_UNICODEOBJECT_H - -#include // va_list - -/* - -Unicode implementation based on original code by Fredrik Lundh, -modified by Marc-Andre Lemburg (mal@lemburg.com) according to the -Unicode Integration Proposal. (See -http://www.egenix.com/files/python/unicode-proposal.txt). - -Copyright (c) Corporation for National Research Initiatives. - - - Original header: - -------------------------------------------------------------------- - - * Yet another Unicode string type for Python. This type supports the - * 16-bit Basic Multilingual Plane (BMP) only. - * - * Written by Fredrik Lundh, January 1999. - * - * Copyright (c) 1999 by Secret Labs AB. - * Copyright (c) 1999 by Fredrik Lundh. - * - * fredrik@pythonware.com - * http://www.pythonware.com - * - * -------------------------------------------------------------------- - * This Unicode String Type is - * - * Copyright (c) 1999 by Secret Labs AB - * Copyright (c) 1999 by Fredrik Lundh - * - * By obtaining, using, and/or copying this software and/or its - * associated documentation, you agree that you have read, understood, - * and will comply with the following terms and conditions: - * - * Permission to use, copy, modify, and distribute this software and its - * associated documentation for any purpose and without fee is hereby - * granted, provided that the above copyright notice appears in all - * copies, and that both that copyright notice and this permission notice - * appear in supporting documentation, and that the name of Secret Labs - * AB or the author not be used in advertising or publicity pertaining to - * distribution of the software without specific, written prior - * permission. - * - * SECRET LABS AB AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO - * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND - * FITNESS. IN NO EVENT SHALL SECRET LABS AB OR THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT - * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - * -------------------------------------------------------------------- */ - -#include - -/* === Internal API ======================================================= */ - -/* --- Internal Unicode Format -------------------------------------------- */ - -/* Python 3.x requires unicode */ -#define Py_USING_UNICODE - -#ifndef SIZEOF_WCHAR_T -#error Must define SIZEOF_WCHAR_T -#endif - -#define Py_UNICODE_SIZE SIZEOF_WCHAR_T - -/* If wchar_t can be used for UCS-4 storage, set Py_UNICODE_WIDE. - Otherwise, Unicode strings are stored as UCS-2 (with limited support - for UTF-16) */ - -#if Py_UNICODE_SIZE >= 4 -#define Py_UNICODE_WIDE -#endif - -/* Set these flags if the platform has "wchar.h" and the - wchar_t type is a 16-bit unsigned type */ -/* #define HAVE_WCHAR_H */ -/* #define HAVE_USABLE_WCHAR_T */ - -/* If the compiler provides a wchar_t type we try to support it - through the interface functions PyUnicode_FromWideChar(), - PyUnicode_AsWideChar() and PyUnicode_AsWideCharString(). */ - -#ifdef HAVE_USABLE_WCHAR_T -# ifndef HAVE_WCHAR_H -# define HAVE_WCHAR_H -# endif -#endif - -#ifdef HAVE_WCHAR_H -# include -#endif - -/* Py_UCS4 and Py_UCS2 are typedefs for the respective - unicode representations. */ -typedef uint32_t Py_UCS4; -typedef uint16_t Py_UCS2; -typedef uint8_t Py_UCS1; - -#ifdef __cplusplus -extern "C" { -#endif - - -PyAPI_DATA(PyTypeObject) PyUnicode_Type; -PyAPI_DATA(PyTypeObject) PyUnicodeIter_Type; - -#define PyUnicode_Check(op) \ - PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_UNICODE_SUBCLASS) -#define PyUnicode_CheckExact(op) Py_IS_TYPE((op), &PyUnicode_Type) - -/* --- Constants ---------------------------------------------------------- */ - -/* This Unicode character will be used as replacement character during - decoding if the errors argument is set to "replace". Note: the - Unicode character U+FFFD is the official REPLACEMENT CHARACTER in - Unicode 3.0. */ - -#define Py_UNICODE_REPLACEMENT_CHARACTER ((Py_UCS4) 0xFFFD) - -/* === Public API ========================================================= */ - -/* Similar to PyUnicode_FromUnicode(), but u points to UTF-8 encoded bytes */ -PyAPI_FUNC(PyObject*) PyUnicode_FromStringAndSize( - const char *u, /* UTF-8 encoded string */ - Py_ssize_t size /* size of buffer */ - ); - -/* Similar to PyUnicode_FromUnicode(), but u points to null-terminated - UTF-8 encoded bytes. The size is determined with strlen(). */ -PyAPI_FUNC(PyObject*) PyUnicode_FromString( - const char *u /* UTF-8 encoded string */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyUnicode_Substring( - PyObject *str, - Py_ssize_t start, - Py_ssize_t end); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Copy the string into a UCS4 buffer including the null character if copy_null - is set. Return NULL and raise an exception on error. Raise a SystemError if - the buffer is smaller than the string. Return buffer on success. - - buflen is the length of the buffer in (Py_UCS4) characters. */ -PyAPI_FUNC(Py_UCS4*) PyUnicode_AsUCS4( - PyObject *unicode, - Py_UCS4* buffer, - Py_ssize_t buflen, - int copy_null); - -/* Copy the string into a UCS4 buffer. A new buffer is allocated using - * PyMem_Malloc; if this fails, NULL is returned with a memory error - exception set. */ -PyAPI_FUNC(Py_UCS4*) PyUnicode_AsUCS4Copy(PyObject *unicode); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Get the length of the Unicode object. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_GetLength( - PyObject *unicode -); -#endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Read a character from the string. */ - -PyAPI_FUNC(Py_UCS4) PyUnicode_ReadChar( - PyObject *unicode, - Py_ssize_t index - ); - -/* Write a character to the string. The string must have been created through - PyUnicode_New, must not be shared, and must not have been hashed yet. - - Return 0 on success, -1 on error. */ - -PyAPI_FUNC(int) PyUnicode_WriteChar( - PyObject *unicode, - Py_ssize_t index, - Py_UCS4 character - ); -#endif - -/* Resize a Unicode object. The length is the number of codepoints. - - *unicode is modified to point to the new (resized) object and 0 - returned on success. - - Try to resize the string in place (which is usually faster than allocating - a new string and copy characters), or create a new string. - - Error handling is implemented as follows: an exception is set, -1 - is returned and *unicode left untouched. - - WARNING: The function doesn't check string content, the result may not be a - string in canonical representation. */ - -PyAPI_FUNC(int) PyUnicode_Resize( - PyObject **unicode, /* Pointer to the Unicode object */ - Py_ssize_t length /* New length */ - ); - -/* Decode obj to a Unicode object. - - bytes, bytearray and other bytes-like objects are decoded according to the - given encoding and error handler. The encoding and error handler can be - NULL to have the interface use UTF-8 and "strict". - - All other objects (including Unicode objects) raise an exception. - - The API returns NULL in case of an error. The caller is responsible - for decref'ing the returned objects. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_FromEncodedObject( - PyObject *obj, /* Object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Copy an instance of a Unicode subtype to a new true Unicode object if - necessary. If obj is already a true Unicode object (not a subtype), return - the reference with *incremented* refcount. - - The API returns NULL in case of an error. The caller is responsible - for decref'ing the returned objects. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_FromObject( - PyObject *obj /* Object */ - ); - -PyAPI_FUNC(PyObject *) PyUnicode_FromFormatV( - const char *format, /* ASCII-encoded string */ - va_list vargs - ); -PyAPI_FUNC(PyObject *) PyUnicode_FromFormat( - const char *format, /* ASCII-encoded string */ - ... - ); - -PyAPI_FUNC(void) PyUnicode_InternInPlace(PyObject **); -PyAPI_FUNC(PyObject *) PyUnicode_InternFromString( - const char *u /* UTF-8 encoded string */ - ); - -/* --- wchar_t support for platforms which support it --------------------- */ - -#ifdef HAVE_WCHAR_H - -/* Create a Unicode Object from the wchar_t buffer w of the given - size. - - The buffer is copied into the new object. */ - -PyAPI_FUNC(PyObject*) PyUnicode_FromWideChar( - const wchar_t *w, /* wchar_t buffer */ - Py_ssize_t size /* size of buffer */ - ); - -/* Copies the Unicode Object contents into the wchar_t buffer w. At - most size wchar_t characters are copied. - - Note that the resulting wchar_t string may or may not be - 0-terminated. It is the responsibility of the caller to make sure - that the wchar_t string is 0-terminated in case this is required by - the application. - - Returns the number of wchar_t characters copied (excluding a - possibly trailing 0-termination character) or -1 in case of an - error. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_AsWideChar( - PyObject *unicode, /* Unicode object */ - wchar_t *w, /* wchar_t buffer */ - Py_ssize_t size /* size of buffer */ - ); - -/* Convert the Unicode object to a wide character string. The output string - always ends with a nul character. If size is not NULL, write the number of - wide characters (excluding the null character) into *size. - - Returns a buffer allocated by PyMem_Malloc() (use PyMem_Free() to free it) - on success. On error, returns NULL, *size is undefined and raises a - MemoryError. */ - -PyAPI_FUNC(wchar_t*) PyUnicode_AsWideCharString( - PyObject *unicode, /* Unicode object */ - Py_ssize_t *size /* number of characters of the result */ - ); - -#endif - -/* --- Unicode ordinals --------------------------------------------------- */ - -/* Create a Unicode Object from the given Unicode code point ordinal. - - The ordinal must be in range(0x110000). A ValueError is - raised in case it is not. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_FromOrdinal(int ordinal); - -/* === Builtin Codecs ===================================================== - - Many of these APIs take two arguments encoding and errors. These - parameters encoding and errors have the same semantics as the ones - of the builtin str() API. - - Setting encoding to NULL causes the default encoding (UTF-8) to be used. - - Error handling is set by errors which may also be set to NULL - meaning to use the default handling defined for the codec. Default - error handling for all builtin codecs is "strict" (ValueErrors are - raised). - - The codecs all use a similar interface. Only deviation from the - generic ones are documented. - -*/ - -/* --- Manage the default encoding ---------------------------------------- */ - -/* Returns "utf-8". */ -PyAPI_FUNC(const char*) PyUnicode_GetDefaultEncoding(void); - -/* --- Generic Codecs ----------------------------------------------------- */ - -/* Create a Unicode object by decoding the encoded string s of the - given size. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Decode( - const char *s, /* encoded string */ - Py_ssize_t size, /* size of buffer */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Decode a Unicode object unicode and return the result as Python - object. - - This API is DEPRECATED. The only supported standard encoding is rot13. - Use PyCodec_Decode() to decode with rot13 and non-standard codecs - that decode from str. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsDecodedObject( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Decode a Unicode object unicode and return the result as Unicode - object. - - This API is DEPRECATED. The only supported standard encoding is rot13. - Use PyCodec_Decode() to decode with rot13 and non-standard codecs - that decode from str to str. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsDecodedUnicode( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Encodes a Unicode object and returns the result as Python - object. - - This API is DEPRECATED. It is superseded by PyUnicode_AsEncodedString() - since all standard encodings (except rot13) encode str to bytes. - Use PyCodec_Encode() for encoding with rot13 and non-standard codecs - that encode form str to non-bytes. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsEncodedObject( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Encodes a Unicode object and returns the result as Python string - object. */ - -PyAPI_FUNC(PyObject*) PyUnicode_AsEncodedString( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Encodes a Unicode object and returns the result as Unicode - object. - - This API is DEPRECATED. The only supported standard encodings is rot13. - Use PyCodec_Encode() to encode with rot13 and non-standard codecs - that encode from str to str. */ - -Py_DEPRECATED(3.6) PyAPI_FUNC(PyObject*) PyUnicode_AsEncodedUnicode( - PyObject *unicode, /* Unicode object */ - const char *encoding, /* encoding */ - const char *errors /* error handling */ - ); - -/* Build an encoding map. */ - -PyAPI_FUNC(PyObject*) PyUnicode_BuildEncodingMap( - PyObject* string /* 256 character map */ - ); - -/* --- UTF-7 Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF7( - const char *string, /* UTF-7 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF7Stateful( - const char *string, /* UTF-7 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -/* --- UTF-8 Codecs ------------------------------------------------------- */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF8( - const char *string, /* UTF-8 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF8Stateful( - const char *string, /* UTF-8 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsUTF8String( - PyObject *unicode /* Unicode object */ - ); - -/* Returns a pointer to the default encoding (UTF-8) of the - Unicode object unicode and the size of the encoded representation - in bytes stored in *size. - - In case of an error, no *size is set. - - This function caches the UTF-8 encoded string in the unicodeobject - and subsequent calls will return the same string. The memory is released - when the unicodeobject is deallocated. -*/ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000 -PyAPI_FUNC(const char *) PyUnicode_AsUTF8AndSize( - PyObject *unicode, - Py_ssize_t *size); -#endif - -/* --- UTF-32 Codecs ------------------------------------------------------ */ - -/* Decodes length bytes from a UTF-32 encoded buffer string and returns - the corresponding Unicode object. - - errors (if non-NULL) defines the error handling. It defaults - to "strict". - - If byteorder is non-NULL, the decoder starts decoding using the - given byte order: - - *byteorder == -1: little endian - *byteorder == 0: native order - *byteorder == 1: big endian - - In native mode, the first four bytes of the stream are checked for a - BOM mark. If found, the BOM mark is analysed, the byte order - adjusted and the BOM skipped. In the other modes, no BOM mark - interpretation is done. After completion, *byteorder is set to the - current byte order at the end of input data. - - If byteorder is NULL, the codec starts in native order mode. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF32( - const char *string, /* UTF-32 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF32Stateful( - const char *string, /* UTF-32 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder, /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -/* Returns a Python string using the UTF-32 encoding in native byte - order. The string always starts with a BOM mark. */ - -PyAPI_FUNC(PyObject*) PyUnicode_AsUTF32String( - PyObject *unicode /* Unicode object */ - ); - -/* Returns a Python string object holding the UTF-32 encoded value of - the Unicode data. - - If byteorder is not 0, output is written according to the following - byte order: - - byteorder == -1: little endian - byteorder == 0: native byte order (writes a BOM mark) - byteorder == 1: big endian - - If byteorder is 0, the output string will always start with the - Unicode BOM mark (U+FEFF). In the other two modes, no BOM mark is - prepended. - -*/ - -/* --- UTF-16 Codecs ------------------------------------------------------ */ - -/* Decodes length bytes from a UTF-16 encoded buffer string and returns - the corresponding Unicode object. - - errors (if non-NULL) defines the error handling. It defaults - to "strict". - - If byteorder is non-NULL, the decoder starts decoding using the - given byte order: - - *byteorder == -1: little endian - *byteorder == 0: native order - *byteorder == 1: big endian - - In native mode, the first two bytes of the stream are checked for a - BOM mark. If found, the BOM mark is analysed, the byte order - adjusted and the BOM skipped. In the other modes, no BOM mark - interpretation is done. After completion, *byteorder is set to the - current byte order at the end of input data. - - If byteorder is NULL, the codec starts in native order mode. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF16( - const char *string, /* UTF-16 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUTF16Stateful( - const char *string, /* UTF-16 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - int *byteorder, /* pointer to byteorder to use - 0=native;-1=LE,1=BE; updated on - exit */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -/* Returns a Python string using the UTF-16 encoding in native byte - order. The string always starts with a BOM mark. */ - -PyAPI_FUNC(PyObject*) PyUnicode_AsUTF16String( - PyObject *unicode /* Unicode object */ - ); - -/* --- Unicode-Escape Codecs ---------------------------------------------- */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeUnicodeEscape( - const char *string, /* Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsUnicodeEscapeString( - PyObject *unicode /* Unicode object */ - ); - -/* --- Raw-Unicode-Escape Codecs ------------------------------------------ */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeRawUnicodeEscape( - const char *string, /* Raw-Unicode-Escape encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsRawUnicodeEscapeString( - PyObject *unicode /* Unicode object */ - ); - -/* --- Latin-1 Codecs ----------------------------------------------------- - - Note: Latin-1 corresponds to the first 256 Unicode ordinals. */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeLatin1( - const char *string, /* Latin-1 encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsLatin1String( - PyObject *unicode /* Unicode object */ - ); - -/* --- ASCII Codecs ------------------------------------------------------- - - Only 7-bit ASCII data is expected. All other codes generate errors. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeASCII( - const char *string, /* ASCII encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsASCIIString( - PyObject *unicode /* Unicode object */ - ); - -/* --- Character Map Codecs ----------------------------------------------- - - This codec uses mappings to encode and decode characters. - - Decoding mappings must map byte ordinals (integers in the range from 0 to - 255) to Unicode strings, integers (which are then interpreted as Unicode - ordinals) or None. Unmapped data bytes (ones which cause a LookupError) - as well as mapped to None, 0xFFFE or '\ufffe' are treated as "undefined - mapping" and cause an error. - - Encoding mappings must map Unicode ordinal integers to bytes objects, - integers in the range from 0 to 255 or None. Unmapped character - ordinals (ones which cause a LookupError) as well as mapped to - None are treated as "undefined mapping" and cause an error. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeCharmap( - const char *string, /* Encoded string */ - Py_ssize_t length, /* size of string */ - PyObject *mapping, /* decoding mapping */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_AsCharmapString( - PyObject *unicode, /* Unicode object */ - PyObject *mapping /* encoding mapping */ - ); - -/* --- MBCS codecs for Windows -------------------------------------------- */ - -#ifdef MS_WINDOWS -PyAPI_FUNC(PyObject*) PyUnicode_DecodeMBCS( - const char *string, /* MBCS encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors /* error handling */ - ); - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeMBCSStateful( - const char *string, /* MBCS encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyUnicode_DecodeCodePageStateful( - int code_page, /* code page number */ - const char *string, /* encoded string */ - Py_ssize_t length, /* size of string */ - const char *errors, /* error handling */ - Py_ssize_t *consumed /* bytes consumed */ - ); -#endif - -PyAPI_FUNC(PyObject*) PyUnicode_AsMBCSString( - PyObject *unicode /* Unicode object */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -PyAPI_FUNC(PyObject*) PyUnicode_EncodeCodePage( - int code_page, /* code page number */ - PyObject *unicode, /* Unicode object */ - const char *errors /* error handling */ - ); -#endif - -#endif /* MS_WINDOWS */ - -/* --- Locale encoding --------------------------------------------------- */ - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Decode a string from the current locale encoding. The decoder is strict if - *surrogateescape* is equal to zero, otherwise it uses the 'surrogateescape' - error handler (PEP 383) to escape undecodable bytes. If a byte sequence can - be decoded as a surrogate character and *surrogateescape* is not equal to - zero, the byte sequence is escaped using the 'surrogateescape' error handler - instead of being decoded. *str* must end with a null character but cannot - contain embedded null characters. */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeLocaleAndSize( - const char *str, - Py_ssize_t len, - const char *errors); - -/* Similar to PyUnicode_DecodeLocaleAndSize(), but compute the string - length using strlen(). */ - -PyAPI_FUNC(PyObject*) PyUnicode_DecodeLocale( - const char *str, - const char *errors); - -/* Encode a Unicode object to the current locale encoding. The encoder is - strict is *surrogateescape* is equal to zero, otherwise the - "surrogateescape" error handler is used. Return a bytes object. The string - cannot contain embedded null characters. */ - -PyAPI_FUNC(PyObject*) PyUnicode_EncodeLocale( - PyObject *unicode, - const char *errors - ); -#endif - -/* --- File system encoding ---------------------------------------------- */ - -/* ParseTuple converter: encode str objects to bytes using - PyUnicode_EncodeFSDefault(); bytes objects are output as-is. */ - -PyAPI_FUNC(int) PyUnicode_FSConverter(PyObject*, void*); - -/* ParseTuple converter: decode bytes objects to unicode using - PyUnicode_DecodeFSDefaultAndSize(); str objects are output as-is. */ - -PyAPI_FUNC(int) PyUnicode_FSDecoder(PyObject*, void*); - -/* Decode a null-terminated string from the Python filesystem encoding - and error handler. - - If the string length is known, use PyUnicode_DecodeFSDefaultAndSize(). */ -PyAPI_FUNC(PyObject*) PyUnicode_DecodeFSDefault( - const char *s /* encoded string */ - ); - -/* Decode a string from the Python filesystem encoding and error handler. */ -PyAPI_FUNC(PyObject*) PyUnicode_DecodeFSDefaultAndSize( - const char *s, /* encoded string */ - Py_ssize_t size /* size */ - ); - -/* Encode a Unicode object to the Python filesystem encoding and error handler. - Return bytes. */ -PyAPI_FUNC(PyObject*) PyUnicode_EncodeFSDefault( - PyObject *unicode - ); - -/* --- Methods & Slots ---------------------------------------------------- - - These are capable of handling Unicode objects and strings on input - (we refer to them as strings in the descriptions) and return - Unicode objects or integers as appropriate. */ - -/* Concat two strings giving a new Unicode string. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Concat( - PyObject *left, /* Left string */ - PyObject *right /* Right string */ - ); - -/* Concat two strings and put the result in *pleft - (sets *pleft to NULL on error) */ - -PyAPI_FUNC(void) PyUnicode_Append( - PyObject **pleft, /* Pointer to left string */ - PyObject *right /* Right string */ - ); - -/* Concat two strings, put the result in *pleft and drop the right object - (sets *pleft to NULL on error) */ - -PyAPI_FUNC(void) PyUnicode_AppendAndDel( - PyObject **pleft, /* Pointer to left string */ - PyObject *right /* Right string */ - ); - -/* Split a string giving a list of Unicode strings. - - If sep is NULL, splitting will be done at all whitespace - substrings. Otherwise, splits occur at the given separator. - - At most maxsplit splits will be done. If negative, no limit is set. - - Separators are not included in the resulting list. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_Split( - PyObject *s, /* String to split */ - PyObject *sep, /* String separator */ - Py_ssize_t maxsplit /* Maxsplit count */ - ); - -/* Dito, but split at line breaks. - - CRLF is considered to be one line break. Line breaks are not - included in the resulting list. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Splitlines( - PyObject *s, /* String to split */ - int keepends /* If true, line end markers are included */ - ); - -/* Partition a string using a given separator. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Partition( - PyObject *s, /* String to partition */ - PyObject *sep /* String separator */ - ); - -/* Partition a string using a given separator, searching from the end of the - string. */ - -PyAPI_FUNC(PyObject*) PyUnicode_RPartition( - PyObject *s, /* String to partition */ - PyObject *sep /* String separator */ - ); - -/* Split a string giving a list of Unicode strings. - - If sep is NULL, splitting will be done at all whitespace - substrings. Otherwise, splits occur at the given separator. - - At most maxsplit splits will be done. But unlike PyUnicode_Split - PyUnicode_RSplit splits from the end of the string. If negative, - no limit is set. - - Separators are not included in the resulting list. - -*/ - -PyAPI_FUNC(PyObject*) PyUnicode_RSplit( - PyObject *s, /* String to split */ - PyObject *sep, /* String separator */ - Py_ssize_t maxsplit /* Maxsplit count */ - ); - -/* Translate a string by applying a character mapping table to it and - return the resulting Unicode object. - - The mapping table must map Unicode ordinal integers to Unicode strings, - Unicode ordinal integers or None (causing deletion of the character). - - Mapping tables may be dictionaries or sequences. Unmapped character - ordinals (ones which cause a LookupError) are left untouched and - are copied as-is. - -*/ - -PyAPI_FUNC(PyObject *) PyUnicode_Translate( - PyObject *str, /* String */ - PyObject *table, /* Translate table */ - const char *errors /* error handling */ - ); - -/* Join a sequence of strings using the given separator and return - the resulting Unicode string. */ - -PyAPI_FUNC(PyObject*) PyUnicode_Join( - PyObject *separator, /* Separator string */ - PyObject *seq /* Sequence object */ - ); - -/* Return 1 if substr matches str[start:end] at the given tail end, 0 - otherwise. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_Tailmatch( - PyObject *str, /* String */ - PyObject *substr, /* Prefix or Suffix string */ - Py_ssize_t start, /* Start index */ - Py_ssize_t end, /* Stop index */ - int direction /* Tail end: -1 prefix, +1 suffix */ - ); - -/* Return the first position of substr in str[start:end] using the - given search direction or -1 if not found. -2 is returned in case - an error occurred and an exception is set. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_Find( - PyObject *str, /* String */ - PyObject *substr, /* Substring to find */ - Py_ssize_t start, /* Start index */ - Py_ssize_t end, /* Stop index */ - int direction /* Find direction: +1 forward, -1 backward */ - ); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 -/* Like PyUnicode_Find, but search for single character only. */ -PyAPI_FUNC(Py_ssize_t) PyUnicode_FindChar( - PyObject *str, - Py_UCS4 ch, - Py_ssize_t start, - Py_ssize_t end, - int direction - ); -#endif - -/* Count the number of occurrences of substr in str[start:end]. */ - -PyAPI_FUNC(Py_ssize_t) PyUnicode_Count( - PyObject *str, /* String */ - PyObject *substr, /* Substring to count */ - Py_ssize_t start, /* Start index */ - Py_ssize_t end /* Stop index */ - ); - -/* Replace at most maxcount occurrences of substr in str with replstr - and return the resulting Unicode object. */ - -PyAPI_FUNC(PyObject *) PyUnicode_Replace( - PyObject *str, /* String */ - PyObject *substr, /* Substring to find */ - PyObject *replstr, /* Substring to replace */ - Py_ssize_t maxcount /* Max. number of replacements to apply; - -1 = all */ - ); - -/* Compare two strings and return -1, 0, 1 for less than, equal, - greater than resp. - Raise an exception and return -1 on error. */ - -PyAPI_FUNC(int) PyUnicode_Compare( - PyObject *left, /* Left string */ - PyObject *right /* Right string */ - ); - -/* Compare a Unicode object with C string and return -1, 0, 1 for less than, - equal, and greater than, respectively. It is best to pass only - ASCII-encoded strings, but the function interprets the input string as - ISO-8859-1 if it contains non-ASCII characters. - This function does not raise exceptions. */ - -PyAPI_FUNC(int) PyUnicode_CompareWithASCIIString( - PyObject *left, - const char *right /* ASCII-encoded string */ - ); - -/* Rich compare two strings and return one of the following: - - - NULL in case an exception was raised - - Py_True or Py_False for successful comparisons - - Py_NotImplemented in case the type combination is unknown - - Possible values for op: - - Py_GT, Py_GE, Py_EQ, Py_NE, Py_LT, Py_LE - -*/ - -PyAPI_FUNC(PyObject *) PyUnicode_RichCompare( - PyObject *left, /* Left string */ - PyObject *right, /* Right string */ - int op /* Operation: Py_EQ, Py_NE, Py_GT, etc. */ - ); - -/* Apply an argument tuple or dictionary to a format string and return - the resulting Unicode string. */ - -PyAPI_FUNC(PyObject *) PyUnicode_Format( - PyObject *format, /* Format string */ - PyObject *args /* Argument tuple or dictionary */ - ); - -/* Checks whether element is contained in container and return 1/0 - accordingly. - - element has to coerce to a one element Unicode string. -1 is - returned in case of an error. */ - -PyAPI_FUNC(int) PyUnicode_Contains( - PyObject *container, /* Container string */ - PyObject *element /* Element string */ - ); - -/* Checks whether argument is a valid identifier. */ - -PyAPI_FUNC(int) PyUnicode_IsIdentifier(PyObject *s); - -/* === Characters Type APIs =============================================== */ - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_UNICODEOBJECT_H -# include "cpython/unicodeobject.h" -# undef Py_CPYTHON_UNICODEOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_UNICODEOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/include/warnings.h b/_Pre_Builds/_Python312_cpp/include/warnings.h deleted file mode 100644 index 18ac154..0000000 --- a/_Pre_Builds/_Python312_cpp/include/warnings.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef Py_WARNINGS_H -#define Py_WARNINGS_H -#ifdef __cplusplus -extern "C" { -#endif - -PyAPI_FUNC(int) PyErr_WarnEx( - PyObject *category, - const char *message, /* UTF-8 encoded string */ - Py_ssize_t stack_level); - -PyAPI_FUNC(int) PyErr_WarnFormat( - PyObject *category, - Py_ssize_t stack_level, - const char *format, /* ASCII-encoded string */ - ...); - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000 -/* Emit a ResourceWarning warning */ -PyAPI_FUNC(int) PyErr_ResourceWarning( - PyObject *source, - Py_ssize_t stack_level, - const char *format, /* ASCII-encoded string */ - ...); -#endif - -PyAPI_FUNC(int) PyErr_WarnExplicit( - PyObject *category, - const char *message, /* UTF-8 encoded string */ - const char *filename, /* decoded from the filesystem encoding */ - int lineno, - const char *module, /* UTF-8 encoded string */ - PyObject *registry); - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_WARNINGS_H -# include "cpython/warnings.h" -# undef Py_CPYTHON_WARNINGS_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_WARNINGS_H */ - diff --git a/_Pre_Builds/_Python312_cpp/include/weakrefobject.h b/_Pre_Builds/_Python312_cpp/include/weakrefobject.h deleted file mode 100644 index 8e1fa1b..0000000 --- a/_Pre_Builds/_Python312_cpp/include/weakrefobject.h +++ /dev/null @@ -1,42 +0,0 @@ -/* Weak references objects for Python. */ - -#ifndef Py_WEAKREFOBJECT_H -#define Py_WEAKREFOBJECT_H -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct _PyWeakReference PyWeakReference; - -PyAPI_DATA(PyTypeObject) _PyWeakref_RefType; -PyAPI_DATA(PyTypeObject) _PyWeakref_ProxyType; -PyAPI_DATA(PyTypeObject) _PyWeakref_CallableProxyType; - -#define PyWeakref_CheckRef(op) PyObject_TypeCheck((op), &_PyWeakref_RefType) -#define PyWeakref_CheckRefExact(op) \ - Py_IS_TYPE((op), &_PyWeakref_RefType) -#define PyWeakref_CheckProxy(op) \ - (Py_IS_TYPE((op), &_PyWeakref_ProxyType) \ - || Py_IS_TYPE((op), &_PyWeakref_CallableProxyType)) - -#define PyWeakref_Check(op) \ - (PyWeakref_CheckRef(op) || PyWeakref_CheckProxy(op)) - - -PyAPI_FUNC(PyObject *) PyWeakref_NewRef(PyObject *ob, - PyObject *callback); -PyAPI_FUNC(PyObject *) PyWeakref_NewProxy(PyObject *ob, - PyObject *callback); -PyAPI_FUNC(PyObject *) PyWeakref_GetObject(PyObject *ref); - - -#ifndef Py_LIMITED_API -# define Py_CPYTHON_WEAKREFOBJECT_H -# include "cpython/weakrefobject.h" -# undef Py_CPYTHON_WEAKREFOBJECT_H -#endif - -#ifdef __cplusplus -} -#endif -#endif /* !Py_WEAKREFOBJECT_H */ diff --git a/_Pre_Builds/_Python312_cpp/libs/_tkinter.lib b/_Pre_Builds/_Python312_cpp/libs/_tkinter.lib deleted file mode 100644 index 5ae032c..0000000 Binary files a/_Pre_Builds/_Python312_cpp/libs/_tkinter.lib and /dev/null differ diff --git a/_Pre_Builds/_Python312_cpp/libs/python3.lib b/_Pre_Builds/_Python312_cpp/libs/python3.lib deleted file mode 100644 index 9d7726f..0000000 Binary files a/_Pre_Builds/_Python312_cpp/libs/python3.lib and /dev/null differ diff --git a/_Pre_Builds/_Python312_cpp/libs/python312.lib b/_Pre_Builds/_Python312_cpp/libs/python312.lib deleted file mode 100644 index 29f83c9..0000000 Binary files a/_Pre_Builds/_Python312_cpp/libs/python312.lib and /dev/null differ diff --git a/_Pre_Builds/_Wheels_linux_py310_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp310-cp310-linux_x86_64.whl b/_Pre_Builds/_Wheels_linux_py310_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp310-cp310-linux_x86_64.whl deleted file mode 100644 index 452405f..0000000 Binary files a/_Pre_Builds/_Wheels_linux_py310_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp310-cp310-linux_x86_64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_linux_py311_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp311-cp311-linux_x86_64.whl b/_Pre_Builds/_Wheels_linux_py311_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp311-cp311-linux_x86_64.whl deleted file mode 100644 index 5b30c3d..0000000 Binary files a/_Pre_Builds/_Wheels_linux_py311_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp311-cp311-linux_x86_64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_linux_py312_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp312-cp312-linux_x86_64.whl b/_Pre_Builds/_Wheels_linux_py312_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp312-cp312-linux_x86_64.whl deleted file mode 100644 index e88c11b..0000000 Binary files a/_Pre_Builds/_Wheels_linux_py312_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp312-cp312-linux_x86_64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu118/diff_gaussian_rasterization-0.0.0-cp310-cp310-win_amd64.whl b/_Pre_Builds/_Wheels_win_py310_cu118/diff_gaussian_rasterization-0.0.0-cp310-cp310-win_amd64.whl deleted file mode 100644 index 98f7a37..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu118/diff_gaussian_rasterization-0.0.0-cp310-cp310-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu118/kiui-0.2.10-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py310_cu118/kiui-0.2.10-py3-none-any.whl deleted file mode 100644 index 7a7bd47..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu118/kiui-0.2.10-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu118/nvdiffrast-0.3.1-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py310_cu118/nvdiffrast-0.3.1-py3-none-any.whl deleted file mode 100644 index b8cdc5a..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu118/nvdiffrast-0.3.1-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu118/pointnet2_ops-3.0.0-cp310-cp310-win_amd64.whl b/_Pre_Builds/_Wheels_win_py310_cu118/pointnet2_ops-3.0.0-cp310-cp310-win_amd64.whl deleted file mode 100644 index 2ff5bbd..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu118/pointnet2_ops-3.0.0-cp310-cp310-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp310-cp310-win_amd64.whl b/_Pre_Builds/_Wheels_win_py310_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp310-cp310-win_amd64.whl deleted file mode 100644 index 85d5d7f..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp310-cp310-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu118/simple_knn-0.0.0-cp310-cp310-win_amd64.whl b/_Pre_Builds/_Wheels_win_py310_cu118/simple_knn-0.0.0-cp310-cp310-win_amd64.whl deleted file mode 100644 index 23c57ad..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu118/simple_knn-0.0.0-cp310-cp310-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu121/diff_gaussian_rasterization-0.0.0-cp310-cp310-win_amd64.whl b/_Pre_Builds/_Wheels_win_py310_cu121/diff_gaussian_rasterization-0.0.0-cp310-cp310-win_amd64.whl deleted file mode 100644 index 338a8e1..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu121/diff_gaussian_rasterization-0.0.0-cp310-cp310-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu121/kiui-0.2.10-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py310_cu121/kiui-0.2.10-py3-none-any.whl deleted file mode 100644 index 87618a0..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu121/kiui-0.2.10-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu121/nvdiffrast-0.3.1-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py310_cu121/nvdiffrast-0.3.1-py3-none-any.whl deleted file mode 100644 index 167aa96..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu121/nvdiffrast-0.3.1-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu121/pointnet2_ops-3.0.0-cp310-cp310-win_amd64.whl b/_Pre_Builds/_Wheels_win_py310_cu121/pointnet2_ops-3.0.0-cp310-cp310-win_amd64.whl deleted file mode 100644 index a41e7cd..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu121/pointnet2_ops-3.0.0-cp310-cp310-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu121/pytorch3d-0.7.7-cp310-cp310-win_amd64.whl b/_Pre_Builds/_Wheels_win_py310_cu121/pytorch3d-0.7.7-cp310-cp310-win_amd64.whl deleted file mode 100644 index 91b0eab..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu121/pytorch3d-0.7.7-cp310-cp310-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py310_cu121/simple_knn-0.0.0-cp310-cp310-win_amd64.whl b/_Pre_Builds/_Wheels_win_py310_cu121/simple_knn-0.0.0-cp310-cp310-win_amd64.whl deleted file mode 100644 index 9c29da6..0000000 Binary files a/_Pre_Builds/_Wheels_win_py310_cu121/simple_knn-0.0.0-cp310-cp310-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu118/diff_gaussian_rasterization-0.0.0-cp311-cp311-win_amd64.whl b/_Pre_Builds/_Wheels_win_py311_cu118/diff_gaussian_rasterization-0.0.0-cp311-cp311-win_amd64.whl deleted file mode 100644 index a01185c..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu118/diff_gaussian_rasterization-0.0.0-cp311-cp311-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu118/kiui-0.2.10-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py311_cu118/kiui-0.2.10-py3-none-any.whl deleted file mode 100644 index 329aaa3..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu118/kiui-0.2.10-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu118/nvdiffrast-0.3.1-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py311_cu118/nvdiffrast-0.3.1-py3-none-any.whl deleted file mode 100644 index 8ca318f..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu118/nvdiffrast-0.3.1-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu118/pointnet2_ops-3.0.0-cp311-cp311-win_amd64.whl b/_Pre_Builds/_Wheels_win_py311_cu118/pointnet2_ops-3.0.0-cp311-cp311-win_amd64.whl deleted file mode 100644 index e7b42b6..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu118/pointnet2_ops-3.0.0-cp311-cp311-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp311-cp311-win_amd64.whl b/_Pre_Builds/_Wheels_win_py311_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp311-cp311-win_amd64.whl deleted file mode 100644 index 2aa1981..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp311-cp311-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu118/simple_knn-0.0.0-cp311-cp311-win_amd64.whl b/_Pre_Builds/_Wheels_win_py311_cu118/simple_knn-0.0.0-cp311-cp311-win_amd64.whl deleted file mode 100644 index dff0747..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu118/simple_knn-0.0.0-cp311-cp311-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu121/diff_gaussian_rasterization-0.0.0-cp311-cp311-win_amd64.whl b/_Pre_Builds/_Wheels_win_py311_cu121/diff_gaussian_rasterization-0.0.0-cp311-cp311-win_amd64.whl deleted file mode 100644 index 6047af3..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu121/diff_gaussian_rasterization-0.0.0-cp311-cp311-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu121/kiui-0.2.10-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py311_cu121/kiui-0.2.10-py3-none-any.whl deleted file mode 100644 index 784bd28..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu121/kiui-0.2.10-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu121/nvdiffrast-0.3.1-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py311_cu121/nvdiffrast-0.3.1-py3-none-any.whl deleted file mode 100644 index 1be0c82..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu121/nvdiffrast-0.3.1-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu121/pointnet2_ops-3.0.0-cp311-cp311-win_amd64.whl b/_Pre_Builds/_Wheels_win_py311_cu121/pointnet2_ops-3.0.0-cp311-cp311-win_amd64.whl deleted file mode 100644 index 83e76c7..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu121/pointnet2_ops-3.0.0-cp311-cp311-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu121/pytorch3d-0.7.7-cp311-cp311-win_amd64.whl b/_Pre_Builds/_Wheels_win_py311_cu121/pytorch3d-0.7.7-cp311-cp311-win_amd64.whl deleted file mode 100644 index ed4fbbb..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu121/pytorch3d-0.7.7-cp311-cp311-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py311_cu121/simple_knn-0.0.0-cp311-cp311-win_amd64.whl b/_Pre_Builds/_Wheels_win_py311_cu121/simple_knn-0.0.0-cp311-cp311-win_amd64.whl deleted file mode 100644 index be0a6ca..0000000 Binary files a/_Pre_Builds/_Wheels_win_py311_cu121/simple_knn-0.0.0-cp311-cp311-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu118/diff_gaussian_rasterization-0.0.0-cp312-cp312-win_amd64.whl b/_Pre_Builds/_Wheels_win_py312_cu118/diff_gaussian_rasterization-0.0.0-cp312-cp312-win_amd64.whl deleted file mode 100644 index 1fba0b7..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu118/diff_gaussian_rasterization-0.0.0-cp312-cp312-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu118/kiui-0.2.10-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py312_cu118/kiui-0.2.10-py3-none-any.whl deleted file mode 100644 index d1c0d8b..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu118/kiui-0.2.10-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu118/nvdiffrast-0.3.1-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py312_cu118/nvdiffrast-0.3.1-py3-none-any.whl deleted file mode 100644 index 56c4ecc..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu118/nvdiffrast-0.3.1-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu118/pointnet2_ops-3.0.0-cp312-cp312-win_amd64.whl b/_Pre_Builds/_Wheels_win_py312_cu118/pointnet2_ops-3.0.0-cp312-cp312-win_amd64.whl deleted file mode 100644 index 5bde665..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu118/pointnet2_ops-3.0.0-cp312-cp312-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp312-cp312-win_amd64.whl b/_Pre_Builds/_Wheels_win_py312_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp312-cp312-win_amd64.whl deleted file mode 100644 index e3903da..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu118/pytorch3d-0.7.7+pt2.3.0cu118-cp312-cp312-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu118/simple_knn-0.0.0-cp312-cp312-win_amd64.whl b/_Pre_Builds/_Wheels_win_py312_cu118/simple_knn-0.0.0-cp312-cp312-win_amd64.whl deleted file mode 100644 index 4724892..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu118/simple_knn-0.0.0-cp312-cp312-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu121/diff_gaussian_rasterization-0.0.0-cp312-cp312-win_amd64.whl b/_Pre_Builds/_Wheels_win_py312_cu121/diff_gaussian_rasterization-0.0.0-cp312-cp312-win_amd64.whl deleted file mode 100644 index a422e31..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu121/diff_gaussian_rasterization-0.0.0-cp312-cp312-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu121/kiui-0.2.10-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py312_cu121/kiui-0.2.10-py3-none-any.whl deleted file mode 100644 index 35c3b7c..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu121/kiui-0.2.10-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu121/nvdiffrast-0.3.1-py3-none-any.whl b/_Pre_Builds/_Wheels_win_py312_cu121/nvdiffrast-0.3.1-py3-none-any.whl deleted file mode 100644 index 8427b84..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu121/nvdiffrast-0.3.1-py3-none-any.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu121/pointnet2_ops-3.0.0-cp312-cp312-win_amd64.whl b/_Pre_Builds/_Wheels_win_py312_cu121/pointnet2_ops-3.0.0-cp312-cp312-win_amd64.whl deleted file mode 100644 index a2369ae..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu121/pointnet2_ops-3.0.0-cp312-cp312-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu121/pytorch3d-0.7.7-cp312-cp312-win_amd64.whl b/_Pre_Builds/_Wheels_win_py312_cu121/pytorch3d-0.7.7-cp312-cp312-win_amd64.whl deleted file mode 100644 index 1381537..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu121/pytorch3d-0.7.7-cp312-cp312-win_amd64.whl and /dev/null differ diff --git a/_Pre_Builds/_Wheels_win_py312_cu121/simple_knn-0.0.0-cp312-cp312-win_amd64.whl b/_Pre_Builds/_Wheels_win_py312_cu121/simple_knn-0.0.0-cp312-cp312-win_amd64.whl deleted file mode 100644 index 6b31be9..0000000 Binary files a/_Pre_Builds/_Wheels_win_py312_cu121/simple_knn-0.0.0-cp312-cp312-win_amd64.whl and /dev/null differ diff --git a/algorithms/Instant_NGP.py b/algorithms/Instant_NGP.py deleted file mode 100644 index b26b71d..0000000 --- a/algorithms/Instant_NGP.py +++ /dev/null @@ -1,206 +0,0 @@ -import tqdm -import random -import numpy as np -import torch -import torch.nn as nn -import torch.nn.functional as F -import nerfacc - -import comfy.utils - -from pytorch_msssim import SSIM, MS_SSIM - -from kiui.op import safe_normalize -from kiui.cam import orbit_camera -from kiui.nn import MLP, trunc_exp - -from ..shared_utils.image_utils import prepare_torch_img - - -class InstantNGP(nn.Module): - def __init__(self, resolution=128, device="cuda"): - super().__init__() - from kiui.gridencoder import GridEncoder - - self.device = torch.device(device) - self.ref_size_H = resolution - self.ref_size_W = resolution - - self.render_step_size = 5e-3 - self.aabb = torch.tensor([-1.0, -1.0, -1.0, 1.0, 1.0, 1.0], device=self.device) - self.estimator = nerfacc.OccGridEstimator(roi_aabb=self.aabb, resolution=64, levels=1) - - self.encoder_density = GridEncoder(num_levels=12) # VMEncoder(output_dim=16, mode='sum') - self.encoder = GridEncoder(num_levels=12) - self.mlp_density = MLP(self.encoder_density.output_dim, 1, 32, 2, bias=False) - self.mlp = MLP(self.encoder.output_dim, 3, 32, 2, bias=False) - - def get_rays(self, pose, h, w, fovy, opengl=True): - - x, y = torch.meshgrid( - torch.arange(w, device=pose.device), - torch.arange(h, device=pose.device), - indexing="xy", - ) - x = x.flatten() - y = y.flatten() - - cx = w * 0.5 - cy = h * 0.5 - - focal = h * 0.5 / np.tan(0.5 * np.deg2rad(fovy)) - - camera_dirs = F.pad( - torch.stack( - [ - (x - cx + 0.5) / focal, - (y - cy + 0.5) / focal * (-1.0 if opengl else 1.0), - ], - dim=-1, - ), - (0, 1), - value=(-1.0 if opengl else 1.0), - ) # [hw, 3] - - rays_d = camera_dirs @ pose[:3, :3].transpose(0, 1) # [hw, 3] - rays_o = pose[:3, 3].unsqueeze(0).expand_as(rays_d) # [hw, 3] - - rays_o = rays_o.view(h, w, 3) - rays_d = safe_normalize(rays_d).view(h, w, 3) - - return rays_o, rays_d - - def get_color(self, xs): - return torch.sigmoid(self.mlp(self.encoder(xs.to(self.device)))) - - def get_density(self, xs): - # xs: [..., 3] - xs = xs.to(self.device) - prefix = xs.shape[:-1] - xs = xs.view(-1, 3) - feats = self.encoder_density(xs) - density = trunc_exp(self.mlp_density(feats)) - density = density.view(*prefix, 1) - return density - - def prepare_training(self, reference_images, reference_masks, reference_orbit_camera_poses, reference_orbit_camera_fovy): - self.ref_imgs_num = len(reference_images) - - self.all_ref_cam_poses = reference_orbit_camera_poses - self.ref_cam_fovy = reference_orbit_camera_fovy - - # prepare reference images and masks - ref_imgs_torch_list = [] - ref_masks_torch_list = [] - for i in range(self.ref_imgs_num): - ref_imgs_torch_list.append(prepare_torch_img(reference_images[i].unsqueeze(0), self.ref_size_H, self.ref_size_W, self.device)) - ref_masks_torch_list.append(prepare_torch_img(reference_masks[i].unsqueeze(2).unsqueeze(0), self.ref_size_H, self.ref_size_W, self.device)) - - self.ref_imgs_torch = torch.cat(ref_imgs_torch_list, dim=0) # [N, 3, H, W] - self.ref_masks_torch = torch.cat(ref_masks_torch_list, dim=0).squeeze(1) # [N, H, W] - - def render_nerf(self, pose): - - pose = torch.from_numpy(pose.astype(np.float32)).to(self.device) - - # get rays - rays_o, rays_d = self.get_rays(pose, self.ref_size_H, self.ref_size_W, self.ref_cam_fovy) - hw = rays_o.shape[0] * rays_o.shape[1] - rays_o = rays_o.view(hw, 3) - rays_d = rays_d.view(hw, 3) - - # update occ grid - if self.training: - def occ_eval_fn(xs): - sigmas = self.get_density(xs) - return self.render_step_size * sigmas - - self.estimator.update_every_n_steps(self.render_step, occ_eval_fn=occ_eval_fn, occ_thre=0.01, n=8) - self.render_step += 1 - - # render - def sigma_fn(t_starts, t_ends, ray_indices): - t_origins = rays_o[ray_indices] - t_dirs = rays_d[ray_indices] - xs = t_origins + t_dirs * (t_starts + t_ends)[:, None] / 2.0 - sigmas = self.get_density(xs) - return sigmas.squeeze(-1) - - with torch.no_grad(): - ray_indices, t_starts, t_ends = self.estimator.sampling( - rays_o, - rays_d, - sigma_fn=sigma_fn, - near_plane=0.01, - far_plane=100, - render_step_size=self.render_step_size, - stratified=self.training, - cone_angle=0, - ) - - t_origins = rays_o[ray_indices] - t_dirs = rays_d[ray_indices] - xs = t_origins + t_dirs * (t_starts + t_ends)[:, None] / 2.0 - sigmas = self.get_density(xs).squeeze(-1) - rgbs = torch.sigmoid(self.mlp(self.encoder(xs))) - - n_rays=rays_o.shape[0] - weights, t, alphas = nerfacc.render_weight_from_density(t_starts, t_ends, sigmas, ray_indices=ray_indices, n_rays=n_rays) - color = nerfacc.accumulate_along_rays(weights, values=rgbs, ray_indices=ray_indices, n_rays=n_rays) - alpha = nerfacc.accumulate_along_rays(weights, values=None, ray_indices=ray_indices, n_rays=n_rays) - - color = color + 1 * (1.0 - alpha) - - color = color.view(self.ref_size_H, self.ref_size_W, 3).clamp(0, 1).permute(2, 0, 1).contiguous() - alpha = alpha.view(self.ref_size_H, self.ref_size_W).clamp(0, 1).contiguous() - - return color, alpha - - def fit_nerf(self, iters=512): - - optimizer = torch.optim.Adam([ - {'params': self.encoder_density.parameters(), 'lr': 1e-2}, - {'params': self.encoder.parameters(), 'lr': 1e-2}, - {'params': self.mlp_density.parameters(), 'lr': 1e-3}, - {'params': self.mlp.parameters(), 'lr': 1e-3}, - ]) - - print(f"[INFO] fitting nerf...") - self.render_step = 0 - - ref_imgs_num_minus_1 = self.ref_imgs_num-1 - - comfy_pbar = comfy.utils.ProgressBar(iters) - pbar = tqdm.trange(iters) - for step in pbar: - - i = random.randint(0, ref_imgs_num_minus_1) - - radius, elevation, azimuth, center_X, center_Y, center_Z = self.all_ref_cam_poses[i] - - orbit_target = np.array([center_X, center_Y, center_Z], dtype=np.float32) - pose = orbit_camera(elevation, azimuth, radius, target=orbit_target) - - image_gt = self.ref_imgs_torch[i] # [3, H, W] - alpha_gt = self.ref_masks_torch[i] # [H, W] - image_pred, alpha_pred = self.render_nerf(pose) - - # if i % 200 == 0: - # kiui.vis.plot_image(image_gt, alpha_gt, image_pred, alpha_pred) - - loss_mse = F.mse_loss(image_pred, image_gt) + 0.1 * F.mse_loss(alpha_pred, alpha_gt) - loss = loss_mse #+ 0.1 * self.encoder_density.tv_loss() #+ 0.0001 * self.encoder_density.density_loss() - #loss += self.lambda_ssim * (1 - self.ms_ssim_loss(image_gt, image_pred)) - - loss.backward() - self.encoder_density.grad_total_variation(1e-8) - - optimizer.step() - optimizer.zero_grad() - - pbar.set_description(f"NeRF Fitting Loss = {loss_mse.item():.6f}") - comfy_pbar.update_absolute(step + 1) - - torch.cuda.synchronize() - - print(f"[INFO] finished fitting nerf!") \ No newline at end of file diff --git a/algorithms/NeuS_runner.py b/algorithms/NeuS_runner.py deleted file mode 100644 index 8247157..0000000 --- a/algorithms/NeuS_runner.py +++ /dev/null @@ -1,504 +0,0 @@ -import os -import math -import numpy as np -import cv2 as cv -import trimesh -import torch -import torch.nn.functional as F -import tqdm -import comfy.utils -from pyhocon import ConfigFactory - -from NeuS.models.dataset_mvdiff import Dataset -from NeuS.models.fields import RenderingNetwork, SDFNetwork, SingleVarianceNetwork, NeRF -from NeuS.models.renderer import NeuSRenderer - -from ..mesh_processer.mesh import Mesh - - -def ranking_loss(error, penalize_ratio=0.7, type='mean'): - error, indices = torch.sort(error) - # only sum relatively small errors - s_error = torch.index_select(error, 0, index=indices[: int(penalize_ratio * indices.shape[0])]) - if type == 'mean': - return torch.mean(s_error) - elif type == 'sum': - return torch.sum(s_error) - -class NeuSParams: - def __init__( - self, - end_iter = 1000, # longer time, better result. 1w will be ok for most cases - batch_size = 512, - learning_rate = 5e-4, - learning_rate_alpha = 0.05, - color_weight = 1.0, - igr_weight = 0.1, - mask_weight = 1.0, - normal_weight = 1.0, - sparse_weight = 0.1, - warm_up_end = 500, - anneal_end = 0, - use_white_bkgd = True, - ): - self.end_iter = end_iter - self.batch_size = batch_size - self.learning_rate = learning_rate - self.learning_rate_alpha = learning_rate_alpha - self.color_weight = color_weight - self.igr_weight = igr_weight - self.mask_weight = mask_weight - self.normal_weight = normal_weight - self.sparse_weight = sparse_weight - self.warm_up_end = warm_up_end - self.anneal_end = anneal_end - self.use_white_bkgd = use_white_bkgd - - -class NeuSRunner: - def __init__(self, mv_images, mv_masks, mv_normals, conf_path, cam_pose_dir, num_views, NeuS_params=None, mode='train', is_continue=False, device='cuda'): - self.device = torch.device(device) - - if NeuS_params is None: - NeuS_params = NeuSParams() - - # Configuration - self.conf_path = conf_path - f = open(self.conf_path) - conf_text = f.read() - f.close() - self.conf = ConfigFactory.parse_string(conf_text) - - self.base_exp_dir = self.conf['general.base_exp_dir'] - - # Training parameters - self.end_iter = NeuS_params.end_iter - self.batch_size = NeuS_params.batch_size - self.learning_rate = NeuS_params.learning_rate - self.learning_rate_alpha = NeuS_params.learning_rate_alpha - self.color_weight = NeuS_params.color_weight - self.igr_weight = NeuS_params.igr_weight - self.mask_weight = NeuS_params.mask_weight - self.normal_weight = NeuS_params.normal_weight - self.sparse_weight = NeuS_params.sparse_weight - self.warm_up_end = NeuS_params.warm_up_end - self.anneal_end = NeuS_params.anneal_end - self.use_white_bkgd = NeuS_params.use_white_bkgd - - # Validation parameters - self.validate_resolution_level = self.conf.get_int('validate.validate_resolution_level') - self.save_freq = self.conf.get_int('validate.save_freq') - self.report_freq = self.conf.get_int('validate.report_freq') - self.val_freq = self.conf.get_int('validate.val_freq') - self.val_mesh_freq = self.conf.get_int('validate.val_mesh_freq') - - self.is_continue = is_continue - self.mode = mode - self.model_list = [] - - # Networks - params_to_train_slow = [] - self.nerf_outside = NeRF(**self.conf['model.nerf']).to(self.device) - self.sdf_network = SDFNetwork(**self.conf['model.sdf_network']).to(self.device) - self.deviation_network = SingleVarianceNetwork(**self.conf['model.variance_network']).to(self.device) - self.color_network = RenderingNetwork(**self.conf['model.rendering_network']).to(self.device) - # params_to_train += list(self.nerf_outside.parameters()) - params_to_train_slow += list(self.sdf_network.parameters()) - params_to_train_slow += list(self.deviation_network.parameters()) - # params_to_train += list(self.color_network.parameters()) - - self.optimizer = torch.optim.Adam( - [{'params': params_to_train_slow}, {'params': self.color_network.parameters(), 'lr': self.learning_rate * 2}], lr=self.learning_rate - ) - - self.renderer = NeuSRenderer( - self.nerf_outside, self.sdf_network, self.deviation_network, self.color_network, **self.conf['model.neus_renderer'] - ) - - # Prepare dataset - self.dataset = Dataset(mv_images, mv_masks, mv_normals, self.conf['dataset'], cam_pose_dir, num_views) - self.iter_step = 1 - - # Load checkpoint - latest_model_name = None - if is_continue: - model_list_raw = os.listdir(os.path.join(self.base_exp_dir, 'checkpoints')) - model_list = [] - for model_name in model_list_raw: - if model_name[-3:] == 'pth' and int(model_name[5:-4]) <= self.end_iter: - model_list.append(model_name) - model_list.sort() - latest_model_name = model_list[-1] - - if latest_model_name is not None: - self.load_checkpoint(latest_model_name) - - def train(self): - self.update_learning_rate() - res_step = self.end_iter - self.iter_step - - comfy_pbar = comfy.utils.ProgressBar(self.end_iter) - - for epoch in tqdm.trange(res_step): - data = self.dataset.get_batch_of_random_rays(self.batch_size).to(self.device) - - rays_o, rays_d, true_rgb, mask, true_normal, cosines = ( - data[:, :3], - data[:, 3:6], - data[:, 6:9], - data[:, 9:10], - data[:, 10:13], - data[:, 13:], - ) - - # near, far = self.dataset.near_far_from_sphere(rays_o, rays_d) - near, far = self.dataset.get_near_far() - - background_rgb = None - if self.use_white_bkgd: - background_rgb = torch.ones([1, 3]) - - if self.mask_weight > 0.0: - mask = (mask > 0.5).float() - else: - mask = torch.ones_like(mask) - - cosines[cosines > -0.1] = 0 - mask = ((mask > 0) & (cosines < -0.1)).to(torch.float32) - #mask_sum = mask.sum() + 1e-5 - render_out = self.renderer.render( - rays_o, rays_d, near, far, background_rgb=background_rgb, cos_anneal_ratio=self.get_cos_anneal_ratio() - ) - - color_fine = render_out['color_fine'] - s_val = render_out['s_val'] - #cdf_fine = render_out['cdf_fine'] - gradient_error = render_out['gradient_error'] - #weight_max = render_out['weight_max'] - weight_sum = render_out['weight_sum'] - - # Loss - # color_error = (color_fine - true_rgb) * mask - # color_fine_loss = F.l1_loss(color_error, torch.zeros_like(color_error), reduction='sum') / mask_sum - - color_errors = (color_fine - true_rgb).abs().sum(dim=1) - color_fine_loss = ranking_loss(color_errors[mask[:, 0] > 0]) - - #psnr = 20.0 * torch.log10(1.0 / (((color_fine - true_rgb) ** 2 * mask).sum() / (mask_sum * 3.0)).sqrt()) - - eikonal_loss = gradient_error - - # pdb.set_trace() - mask_errors = F.binary_cross_entropy(weight_sum.clip(1e-3, 1.0 - 1e-3), mask, reduction='none') - mask_loss = ranking_loss(mask_errors[:, 0], penalize_ratio=0.8) - - def feasible(key): - return (key in render_out) and (render_out[key] is not None) - - # calculate normal loss - n_samples = self.renderer.n_samples + self.renderer.n_importance - normals = render_out['gradients'] * render_out['weights'][:, :n_samples, None] - if feasible('inside_sphere'): - normals = normals * render_out['inside_sphere'][..., None] - normals = normals.sum(dim=1) - - # pdb.set_trace() - normal_errors = 1 - F.cosine_similarity(normals, true_normal, dim=1) - # normal_error = normal_error * mask[:, 0] - # normal_loss = F.l1_loss(normal_error, torch.zeros_like(normal_error), reduction='sum') / mask_sum - normal_errors = normal_errors * torch.exp(cosines.abs()[:, 0]) / torch.exp(cosines.abs()).sum() - normal_loss = ranking_loss(normal_errors[mask[:, 0] > 0], penalize_ratio=0.9, type='sum') - - sparse_loss = render_out['sparse_loss'] - - loss = ( - color_fine_loss * self.color_weight - + eikonal_loss * self.igr_weight - + sparse_loss * self.sparse_weight - + mask_loss * self.mask_weight - + normal_loss * self.normal_weight - ) - - self.optimizer.zero_grad() - loss.backward() - self.optimizer.step() - - if self.iter_step % self.report_freq == 0: - print( - 'iter:{:8>d} loss = {:4>f} color_ls = {:4>f} eik_ls = {:4>f} normal_ls = {:4>f} mask_ls = {:4>f} sparse_ls = {:4>f} lr={:5>f}'.format( - self.iter_step, - loss, - color_fine_loss, - eikonal_loss, - normal_loss, - mask_loss, - sparse_loss, - self.optimizer.param_groups[0]['lr'], - ) - ) - print('iter:{:8>d} s_val = {:4>f}'.format(self.iter_step, s_val.mean())) - - if self.iter_step % self.val_mesh_freq == 0: - self.extract_mesh(resolution=256) - - self.update_learning_rate() - - self.iter_step += 1 - - if self.iter_step % self.val_freq == 0: - self.validate_image(idx=0) - self.validate_image(idx=1) - self.validate_image(idx=2) - self.validate_image(idx=3) - - if self.iter_step % self.save_freq == 0: - self.save_checkpoint() - - comfy_pbar.update_absolute(self.iter_step) - - def get_cos_anneal_ratio(self): - if self.anneal_end == 0.0: - return 1.0 - else: - return np.min([1.0, self.iter_step / self.anneal_end]) - - def update_learning_rate(self): - if self.iter_step < self.warm_up_end: - learning_factor = self.iter_step / self.warm_up_end - else: - alpha = self.learning_rate_alpha - progress = (self.iter_step - self.warm_up_end) / (self.end_iter - self.warm_up_end) - learning_factor = (np.cos(np.pi * progress) + 1.0) * 0.5 * (1 - alpha) + alpha - - for g in self.optimizer.param_groups: - g['lr'] = self.learning_rate * learning_factor - - def extract_mesh(self, world_space=False, resolution=64, threshold=0.0): - bound_min = torch.tensor(self.dataset.object_bbox_min, dtype=torch.float32) - bound_max = torch.tensor(self.dataset.object_bbox_max, dtype=torch.float32) - - vertices, triangles, vertex_colors = self.renderer.extract_geometry(bound_min, bound_max, resolution=resolution, threshold=threshold) - - if world_space: - vertices = vertices * self.dataset.scale_mats_np[0][0, 0] + self.dataset.scale_mats_np[0][:3, 3][None] - - print(f"vertex_colors: {vertex_colors[123]}, {vertex_colors[213]}, {vertex_colors[321]}") - - mesh = trimesh.Trimesh(vertices, triangles, vertex_colors=vertex_colors) - mesh = Mesh.load_trimesh(given_mesh=mesh) - - # export as glb - # os.makedirs(os.path.join(self.base_exp_dir, 'meshes'), exist_ok=True) - # mesh.export(os.path.join(self.base_exp_dir, 'meshes', '{:0>8d}.ply'.format(self.iter_step))) - - return mesh - - def load_checkpoint(self, checkpoint_name): - checkpoint = torch.load(os.path.join(self.base_exp_dir, 'checkpoints', checkpoint_name), map_location=self.device) - self.nerf_outside.load_state_dict(checkpoint['nerf']) - self.sdf_network.load_state_dict(checkpoint['sdf_network_fine']) - self.deviation_network.load_state_dict(checkpoint['variance_network_fine']) - self.color_network.load_state_dict(checkpoint['color_network_fine']) - self.optimizer.load_state_dict(checkpoint['optimizer']) - self.iter_step = checkpoint['iter_step'] - - def save_checkpoint(self): - checkpoint = { - 'nerf': self.nerf_outside.state_dict(), - 'sdf_network_fine': self.sdf_network.state_dict(), - 'variance_network_fine': self.deviation_network.state_dict(), - 'color_network_fine': self.color_network.state_dict(), - 'optimizer': self.optimizer.state_dict(), - 'iter_step': self.iter_step, - } - - os.makedirs(os.path.join(self.base_exp_dir, 'checkpoints'), exist_ok=True) - torch.save(checkpoint, os.path.join(self.base_exp_dir, 'checkpoints', 'ckpt_{:0>6d}.pth'.format(self.iter_step))) - - def validate_image(self, idx=-1, resolution_level=-1): - if idx < 0: - idx = np.random.randint(self.dataset.n_images) - - print('Validate: iter: {}, camera: {}'.format(self.iter_step, idx)) - - if resolution_level < 0: - resolution_level = self.validate_resolution_level - rays_o, rays_d = self.dataset.gen_rays_at(idx, resolution_level=resolution_level) - H, W, _ = rays_o.shape - rays_o = rays_o.reshape(-1, 3).split(self.batch_size) - rays_d = rays_d.reshape(-1, 3).split(self.batch_size) - - out_rgb_fine = [] - out_normal_fine = [] - out_mask = [] - - for rays_o_batch, rays_d_batch in zip(rays_o, rays_d): - # near, far = self.dataset.near_far_from_sphere(rays_o_batch, rays_d_batch) - near, far = self.dataset.get_near_far() - background_rgb = torch.ones([1, 3]) if self.use_white_bkgd else None - - render_out = self.renderer.render( - rays_o_batch, rays_d_batch, near, far, cos_anneal_ratio=self.get_cos_anneal_ratio(), background_rgb=background_rgb - ) - - def feasible(key): - return (key in render_out) and (render_out[key] is not None) - - if feasible('color_fine'): - out_rgb_fine.append(render_out['color_fine'].detach().cpu().numpy()) - if feasible('gradients') and feasible('weights'): - n_samples = self.renderer.n_samples + self.renderer.n_importance - normals = render_out['gradients'] * render_out['weights'][:, :n_samples, None] - if feasible('inside_sphere'): - normals = normals * render_out['inside_sphere'][..., None] - normals = normals.sum(dim=1).detach().cpu().numpy() - out_normal_fine.append(normals) - - if feasible('weight_sum'): - out_mask.append(render_out['weight_sum'].detach().clip(0, 1).cpu().numpy()) - - del render_out - - img_fine = None - if len(out_rgb_fine) > 0: - img_fine = (np.concatenate(out_rgb_fine, axis=0).reshape([H, W, 3, -1]) * 256).clip(0, 255) - - mask_map = None - if len(out_mask) > 0: - mask_map = (np.concatenate(out_mask, axis=0).reshape([H, W, -1]) * 256).clip(0, 255) - - normal_img = None - if len(out_normal_fine) > 0: - normal_img = np.concatenate(out_normal_fine, axis=0) - rot = np.linalg.inv(self.dataset.pose_all[idx, :3, :3].detach().cpu().numpy()) - normal_img = (np.matmul(rot[None, :, :], normal_img[:, :, None]).reshape([H, W, 3, -1]) * 128 + 128).clip(0, 255) - - os.makedirs(os.path.join(self.base_exp_dir, 'validations_fine'), exist_ok=True) - os.makedirs(os.path.join(self.base_exp_dir, 'normals'), exist_ok=True) - - for i in range(img_fine.shape[-1]): - if len(out_rgb_fine) > 0: - cv.imwrite( - os.path.join(self.base_exp_dir, 'validations_fine', '{:0>8d}_{}_{}.png'.format(self.iter_step, i, idx)), - np.concatenate( - [ - img_fine[..., i], - self.dataset.image_at(idx, resolution_level=resolution_level), - self.dataset.mask_at(idx, resolution_level=resolution_level), - ] - ), - ) - if len(out_normal_fine) > 0: - cv.imwrite( - os.path.join(self.base_exp_dir, 'normals', '{:0>8d}_{}_{}.png'.format(self.iter_step, i, idx)), - np.concatenate([normal_img[..., i], self.dataset.normal_cam_at(idx, resolution_level=resolution_level)])[:, :, ::-1], - ) - if len(out_mask) > 0: - cv.imwrite(os.path.join(self.base_exp_dir, 'normals', '{:0>8d}_{}_{}_mask.png'.format(self.iter_step, i, idx)), mask_map[..., i]) - - def save_maps(self, idx, img_idx, resolution_level=1): - view_types = ['front', 'back', 'left', 'right'] - print('Validate: iter: {}, camera: {}'.format(self.iter_step, idx)) - - rays_o, rays_d = self.dataset.gen_rays_at(idx, resolution_level=resolution_level) - H, W, _ = rays_o.shape - rays_o = rays_o.reshape(-1, 3).split(self.batch_size) - rays_d = rays_d.reshape(-1, 3).split(self.batch_size) - - out_rgb_fine = [] - out_normal_fine = [] - out_mask = [] - - for rays_o_batch, rays_d_batch in zip(rays_o, rays_d): - # near, far = self.dataset.near_far_from_sphere(rays_o_batch, rays_d_batch) - near, far = self.dataset.get_near_far() - background_rgb = torch.ones([1, 3]) if self.use_white_bkgd else None - - render_out = self.renderer.render( - rays_o_batch, rays_d_batch, near, far, cos_anneal_ratio=self.get_cos_anneal_ratio(), background_rgb=background_rgb - ) - - def feasible(key): - return (key in render_out) and (render_out[key] is not None) - - if feasible('color_fine'): - out_rgb_fine.append(render_out['color_fine'].detach().cpu().numpy()) - if feasible('gradients') and feasible('weights'): - n_samples = self.renderer.n_samples + self.renderer.n_importance - normals = render_out['gradients'] * render_out['weights'][:, :n_samples, None] - if feasible('inside_sphere'): - normals = normals * render_out['inside_sphere'][..., None] - normals = normals.sum(dim=1).detach().cpu().numpy() - out_normal_fine.append(normals) - - if feasible('weight_sum'): - out_mask.append(render_out['weight_sum'].detach().clip(0, 1).cpu().numpy()) - - del render_out - - img_fine = None - if len(out_rgb_fine) > 0: - img_fine = (np.concatenate(out_rgb_fine, axis=0).reshape([H, W, 3]) * 256).clip(0, 255) - - mask_map = None - if len(out_mask) > 0: - mask_map = (np.concatenate(out_mask, axis=0).reshape([H, W, 1]) * 256).clip(0, 255) - - normal_img = None - if len(out_normal_fine) > 0: - normal_img = np.concatenate(out_normal_fine, axis=0) - # rot = np.linalg.inv(self.dataset.pose_all[idx, :3, :3].detach().cpu().numpy()) - world_normal_img = (normal_img.reshape([H, W, 3]) * 128 + 128).clip(0, 255) - - os.makedirs(os.path.join(self.base_exp_dir, 'coarse_maps'), exist_ok=True) - img_rgba = np.concatenate([img_fine[:, :, ::-1], mask_map], axis=-1) - normal_rgba = np.concatenate([world_normal_img[:, :, ::-1], mask_map], axis=-1) - - cv.imwrite(os.path.join(self.base_exp_dir, 'coarse_maps', "normals_mlp_%03d_%s.png" % (img_idx, view_types[idx])), img_rgba) - cv.imwrite(os.path.join(self.base_exp_dir, 'coarse_maps', "normals_grad_%03d_%s.png" % (img_idx, view_types[idx])), normal_rgba) - - def render_novel_image(self, idx_0, idx_1, ratio, resolution_level): - """ - Interpolate view between two cameras. - """ - rays_o, rays_d = self.dataset.gen_rays_between(idx_0, idx_1, ratio, resolution_level=resolution_level) - H, W, _ = rays_o.shape - rays_o = rays_o.reshape(-1, 3).split(self.batch_size) - rays_d = rays_d.reshape(-1, 3).split(self.batch_size) - - out_rgb_fine = [] - for rays_o_batch, rays_d_batch in zip(rays_o, rays_d): - # near, far = self.dataset.near_far_from_sphere(rays_o_batch, rays_d_batch) - near, far = self.dataset.get_near_far() - background_rgb = torch.ones([1, 3]) if self.use_white_bkgd else None - - render_out = self.renderer.render( - rays_o_batch, rays_d_batch, near, far, cos_anneal_ratio=self.get_cos_anneal_ratio(), background_rgb=background_rgb - ) - - out_rgb_fine.append(render_out['color_fine'].detach().cpu().numpy()) - - del render_out - - img_fine = (np.concatenate(out_rgb_fine, axis=0).reshape([H, W, 3]) * 256).clip(0, 255).astype(np.uint8) - return img_fine - - def interpolate_view(self, img_idx_0, img_idx_1): - images = [] - n_frames = 60 - for i in range(n_frames): - print(i) - images.append(self.render_novel_image(img_idx_0, img_idx_1, np.sin(((i / n_frames) - 0.5) * np.pi) * 0.5 + 0.5, resolution_level=4)) - for i in range(n_frames): - images.append(images[n_frames - i - 1]) - - fourcc = cv.VideoWriter_fourcc(*'mp4v') - video_dir = os.path.join(self.base_exp_dir, 'render') - os.makedirs(video_dir, exist_ok=True) - h, w, _ = images[0].shape - writer = cv.VideoWriter(os.path.join(video_dir, '{:0>8d}_{}_{}.mp4'.format(self.iter_step, img_idx_0, img_idx_1)), fourcc, 30, (w, h)) - - for image in images: - writer.write(image) - - writer.release() diff --git a/algorithms/convolutional_reconstruction_model.py b/algorithms/convolutional_reconstruction_model.py deleted file mode 100644 index 6046843..0000000 --- a/algorithms/convolutional_reconstruction_model.py +++ /dev/null @@ -1,185 +0,0 @@ -import numpy as np -import torch -import time -import nvdiffrast.torch as dr -from PIL import Image - -from ..crm.util.utils import get_tri - -class CRMSampler: - @classmethod - def process_pixel_img( - cls, - pixel_img: Image.Image, - bg_color = "#7F7F7F" - ): - # expand image to 1:1 squared and add fixed background color - width, height = pixel_img.size - new_size = (max(width, height), max(width, height)) - new_image = Image.new("RGBA", new_size, bg_color) - paste_position = ((new_size[0] - width) // 2, (new_size[1] - height) // 2) - new_image.paste(pixel_img, paste_position) - - # given an RGBA image fixed background color, alpha channel is used as mask to add background color - background = Image.new("RGBA", new_image.size, bg_color) - return Image.alpha_composite(background, new_image).convert("RGB") - - @classmethod - def stage1_sample( - cls, - stage1_sampler, - pixel_img: Image.Image, - prompt="3D assets", - neg_texts="uniform low no texture ugly, boring, bad anatomy, blurry, pixelated, obscure, unnatural colors, poor lighting, dull, and unclear.", - seed=0, - scale=5, - step=50, - ddim_eta=0.0 - ): - """ - The first stage was condition on single pixel image, gererate multi-view pixel image, based on the v2pp config - """ - - stage1_sampler.seed = seed - - uc = stage1_sampler.model.get_learned_conditioning([neg_texts]).to(stage1_sampler.device) - stage1_images = stage1_sampler.i2i( - stage1_sampler.model, - stage1_sampler.size, - prompt, - uc=uc, - sampler=stage1_sampler.sampler, - ip=pixel_img, - step=step, - scale=scale, - batch_size=stage1_sampler.batch_size, - ddim_eta=ddim_eta, - dtype=stage1_sampler.dtype, - device=stage1_sampler.device, - camera=stage1_sampler.camera, - num_frames=stage1_sampler.num_frames, - pixel_control=(stage1_sampler.mode == "pixel"), - transform=stage1_sampler.image_transform, - offset_noise=stage1_sampler.offset_noise, - ) - - stage1_images = stage1_images[:-1] # remove reference view - return stage1_images # (N, H, W, 3) in [0, 1] - - @classmethod - def stage2_sample( - cls, - stage2_sampler, - pixel_img: Image.Image, - stage1_images, - prompt="3D assets", - neg_texts="uniform low no texture ugly, boring, bad anatomy, blurry, pixelated, obscure, unnatural colors, poor lighting, dull, and unclear.", - seed=0, - scale=5, - step=50 - ): - """ - The second stage was condition on multiview pixel image generated by the first stage, generate the final image, based on the stage2-test config - """ - - stage2_sampler.seed = seed - - # Convert torch image to PIL.Image - stage1_images = list((255.0 * stage1_images.cpu().numpy()).astype(np.uint8)) - stage1_images = [Image.fromarray(img) for img in stage1_images] - - uc = stage2_sampler.model.get_learned_conditioning([neg_texts]).to(stage2_sampler.device) - stage2_images = stage2_sampler.i2iStage2( - stage2_sampler.model, - stage2_sampler.size, - prompt, - uc=uc, - sampler=stage2_sampler.sampler, - pixel_images=stage1_images, - ip=pixel_img, - step=step, - scale=scale, - batch_size=stage2_sampler.batch_size, - ddim_eta=0.0, - dtype=stage2_sampler.dtype, - device=stage2_sampler.device, - camera=stage2_sampler.camera, - num_frames=stage2_sampler.num_frames, - pixel_control=(stage2_sampler.mode == "pixel"), - transform=stage2_sampler.image_transform, - offset_noise=stage2_sampler.offset_noise, - ) - - return stage2_images # (N, H, W, 3) in [0, 1] - - @classmethod - def generate3d(cls, crm_model, rgb, ccm, device): - - color_tri = torch.from_numpy(rgb) - xyz_tri = torch.from_numpy(ccm[:,:,(2,1,0)]) - color = color_tri.permute(2,0,1) - xyz = xyz_tri.permute(2,0,1) - - - def get_imgs(color): - # color : [C, H, W*6] - color_list = [] - color_list.append(color[:,:,256*5:256*(1+5)]) - for i in range(0,5): - color_list.append(color[:,:,256*i:256*(1+i)]) - return torch.stack(color_list, dim=0)# [6, C, H, W] - - triplane_color = get_imgs(color).permute(0,2,3,1).unsqueeze(0).to(device)# [1, 6, H, W, C] - - color = get_imgs(color) - xyz = get_imgs(xyz) - - color = get_tri(color, dim=0, blender= True, scale = 1).unsqueeze(0) - xyz = get_tri(xyz, dim=0, blender= True, scale = 1, fix= True).unsqueeze(0) - - triplane = torch.cat([color,xyz],dim=1).to(device) - # 3D visualize - crm_model.eval() - glctx = dr.RasterizeCudaContext() - - if crm_model.denoising == True: - tnew = 20 - tnew = torch.randint(tnew, tnew+1, [triplane.shape[0]], dtype=torch.long, device=triplane.device) - noise_new = torch.randn_like(triplane) *0.5+0.5 - triplane = crm_model.scheduler.add_noise(triplane, noise_new, tnew) - start_time = time.time() - with torch.no_grad(): - triplane_feature2 = crm_model.unet2(triplane,tnew) - end_time = time.time() - elapsed_time = end_time - start_time - print(f"Running unet takes {elapsed_time}s") - else: - triplane_feature2 = crm_model.unet2(triplane) - - - with torch.no_grad(): - data_config = { - 'resolution': [1024, 1024], - "triview_color": triplane_color.to(device), - } - - verts, faces = crm_model.decode(data_config, triplane_feature2) - - data_config['verts'] = verts[0] - data_config['faces'] = faces - - - from kiui.mesh_utils import clean_mesh - verts, faces = clean_mesh(data_config['verts'].squeeze().cpu().numpy().astype(np.float32), data_config['faces'].squeeze().cpu().numpy().astype(np.int32), repair = False, remesh=False, remesh_size=0.005) - data_config['verts'] = torch.from_numpy(verts).cuda().contiguous() - data_config['faces'] = torch.from_numpy(faces).cuda().contiguous() - - start_time = time.time() - - mesh = crm_model.get_mesh_wt_uv(glctx, data_config, device, res=(1024,1024), tri_fea_2=triplane_feature2) - - end_time = time.time() - elapsed_time = end_time - start_time - print(f"Extracting mesh & texture takes {elapsed_time}s") - - return mesh \ No newline at end of file diff --git a/algorithms/diff_mesh.py b/algorithms/diff_mesh.py deleted file mode 100644 index 6c722fb..0000000 --- a/algorithms/diff_mesh.py +++ /dev/null @@ -1,148 +0,0 @@ -import random -import tqdm - -import torch -import torch.nn as nn -import torch.nn.functional as F -import numpy as np -from kiui.mesh_utils import clean_mesh, decimate_mesh -from kiui.cam import orbit_camera -from kiui.mesh_utils import laplacian_smooth_loss, normal_consistency -from pytorch_msssim import SSIM, MS_SSIM - -import comfy.utils - -from .diff_mesh_renderer import DiffRastRenderer -from ..shared_utils.camera_utils import BaseCameraController -from ..shared_utils.image_utils import prepare_torch_img - -class DiffMeshCameraController(BaseCameraController): - def get_render_result(self, render_pose, bg_color): - ref_cam = (render_pose, self.cam.perspective) - return self.renderer.render(*ref_cam, self.cam.H, self.cam.W, ssaa=1, bg_color=bg_color, optional_render_types=[]) #ssaa = min(2.0, max(0.125, 2 * np.random.random())) - -class DiffMesh: - - def __init__(self, mesh, training_iterations, batch_size, texture_learning_rate, train_mesh_geometry, geometry_learning_rate, ms_ssim_loss_weight, remesh_after_n_iteration, force_cuda_rasterize): - self.device = torch.device("cuda") - - self.train_mesh_geometry = train_mesh_geometry - self.remesh_after_n_iteration = remesh_after_n_iteration - - # prepare main components for optimization - self.renderer = DiffRastRenderer(mesh, force_cuda_rasterize).to(self.device) - - self.optimizer = torch.optim.Adam(self.renderer.get_params(texture_learning_rate, train_mesh_geometry, geometry_learning_rate)) - #self.ssim_loss = SSIM(data_range=1, size_average=True, channel=3) - self.ms_ssim_loss = MS_SSIM(data_range=1, size_average=True, channel=3) - self.lambda_ssim = ms_ssim_loss_weight - - self.training_iterations = training_iterations - - self.batch_size = batch_size - - def prepare_training(self, reference_images, reference_masks, reference_orbit_camera_poses, reference_orbit_camera_fovy): - self.ref_imgs_num = len(reference_images) - - self.ref_size_H = reference_images[0].shape[0] - self.ref_size_W = reference_images[0].shape[1] - - # default camera settings - self.cam_controller = DiffMeshCameraController( - self.renderer, self.ref_size_W, self.ref_size_H, reference_orbit_camera_fovy, self.gs_params.invert_bg_prob, None, self.device - ) - - self.all_ref_cam_poses = reference_orbit_camera_poses - - # prepare reference images and masks - ref_imgs_torch_list = [] - ref_masks_torch_list = [] - for i in range(self.ref_imgs_num): - ref_imgs_torch_list.append(prepare_torch_img(reference_images[i].unsqueeze(0), self.ref_size_H, self.ref_size_W, self.device)) - ref_masks_torch_list.append(prepare_torch_img(reference_masks[i].unsqueeze(2).unsqueeze(0), self.ref_size_H, self.ref_size_W, self.device)) - - self.ref_imgs_torch = torch.cat(ref_imgs_torch_list, dim=0) - self.ref_masks_torch = torch.cat(ref_masks_torch_list, dim=0) - - def training(self, decimate_target=5e4): - starter = torch.cuda.Event(enable_timing=True) - ender = torch.cuda.Event(enable_timing=True) - starter.record() - - ref_imgs_masked = [] - for i in range(self.ref_imgs_num): - ref_imgs_masked.append((self.ref_imgs_torch[i] * self.ref_masks_torch[i]).unsqueeze(0)) - - ref_imgs_num_minus_1 = self.ref_imgs_num-1 - - comfy_pbar = comfy.utils.ProgressBar(self.training_iterations) - - for step in tqdm.trange(self.training_iterations): - - ### calculate loss between reference and rendered image from known view - loss = 0 - masked_rendered_img_batch = [] - masked_ref_img_batch = [] - for _ in range(self.batch_size): - - i = random.randint(0, ref_imgs_num_minus_1) - - out = self.cam_controller.render_at_pose(self.all_ref_cam_poses[i]) - - image = out["image"] # [H, W, 3] in [0, 1] - image = image.permute(2, 0, 1).contiguous() # [3, H, W] in [0, 1] - - image_masked = (image * self.ref_masks_torch[i]).unsqueeze(0) - - masked_rendered_img_batch.append(image_masked) - masked_ref_img_batch.append(ref_imgs_masked[i]) - - masked_rendered_img_batch_torch = torch.cat(masked_rendered_img_batch, dim=0) - masked_ref_img_batch_torch = torch.cat(masked_ref_img_batch, dim=0) - - # rgb loss - loss += (1 - self.lambda_ssim) * F.mse_loss(masked_rendered_img_batch_torch, masked_ref_img_batch_torch) - - # D-SSIM loss - # [1, 3, H, W] in [0, 1] - #loss += self.lambda_ssim * (1 - self.ssim_loss(X, Y)) - loss += self.lambda_ssim * (1 - self.ms_ssim_loss(masked_ref_img_batch_torch, masked_rendered_img_batch_torch)) - - # Regularization loss - if self.train_mesh_geometry: - current_v = self.renderer.mesh.v + self.renderer.v_offsets - loss += 0.01 * laplacian_smooth_loss(current_v, self.renderer.mesh.f) - loss += 0.001 * normal_consistency(current_v, self.renderer.mesh.f) - loss += 0.1 * (self.renderer.v_offsets ** 2).sum(-1).mean() - - # remesh periodically - if step > 0 and step % self.remesh_after_n_iteration == 0: - vertices = (self.renderer.mesh.v + self.renderer.v_offsets).detach().cpu().numpy() - triangles = self.renderer.mesh.f.detach().cpu().numpy() - vertices, triangles = clean_mesh(vertices, triangles, remesh=True, remesh_size=0.01) - if triangles.shape[0] > decimate_target: - vertices, triangles = decimate_mesh(vertices, triangles, decimate_target, optimalplacement=False) - self.renderer.mesh.v = torch.from_numpy(vertices).contiguous().float().to(self.device) - self.renderer.mesh.f = torch.from_numpy(triangles).contiguous().int().to(self.device) - self.renderer.v_offsets = nn.Parameter(torch.zeros_like(self.renderer.mesh.v)).to(self.device) - - # optimize step - loss.backward() - self.optimizer.step() - self.optimizer.zero_grad() - - comfy_pbar.update_absolute(step + 1) - - torch.cuda.synchronize() - - self.need_update = True - - print(f"Step: {step}") - - self.renderer.update_mesh() - - ender.record() - #t = starter.elapsed_time(ender) - - def get_mesh_and_texture(self): - return (self.renderer.mesh, self.renderer.mesh.albedo, ) \ No newline at end of file diff --git a/algorithms/diff_mesh_renderer.py b/algorithms/diff_mesh_renderer.py deleted file mode 100644 index 7281714..0000000 --- a/algorithms/diff_mesh_renderer.py +++ /dev/null @@ -1,156 +0,0 @@ -import os -import math - -import numpy as np -import torch -import torch.nn as nn -import torch.nn.functional as F -import nvdiffrast.torch as dr - -from kiui.op import inverse_sigmoid - -from ..mesh_processer.mesh import safe_normalize - -def scale_img_nhwc(x, size, mag='bilinear', min='bilinear'): - assert (x.shape[1] >= size[0] and x.shape[2] >= size[1]) or (x.shape[1] < size[0] and x.shape[2] < size[1]), "Trying to magnify image in one dimension and minify in the other" - y = x.permute(0, 3, 1, 2) # NHWC -> NCHW - if x.shape[1] > size[0] and x.shape[2] > size[1]: # Minification, previous size was bigger - y = torch.nn.functional.interpolate(y, size, mode=min) - else: # Magnification - if mag == 'bilinear' or mag == 'bicubic': - y = torch.nn.functional.interpolate(y, size, mode=mag, align_corners=True) - else: - y = torch.nn.functional.interpolate(y, size, mode=mag) - return y.permute(0, 2, 3, 1).contiguous() # NCHW -> NHWC - -def scale_img_hwc(x, size, mag='bilinear', min='bilinear'): - return scale_img_nhwc(x[None, ...], size, mag, min)[0] - -def scale_img_nhw(x, size, mag='bilinear', min='bilinear'): - return scale_img_nhwc(x[..., None], size, mag, min)[..., 0] - -def scale_img_hw(x, size, mag='bilinear', min='bilinear'): - return scale_img_nhwc(x[None, ..., None], size, mag, min)[0, ..., 0] - -def make_divisible(x, m=8): - return int(math.ceil(x / m) * m) - -class DiffRastRenderer(nn.Module): - def __init__(self, mesh, force_cuda_rast): - - super().__init__() - - self.mesh = mesh - - if force_cuda_rast or os.name != 'nt': - self.glctx = dr.RasterizeCudaContext() - else: - self.glctx = dr.RasterizeGLContext() - - # extract trainable parameters - self.v_offsets = nn.Parameter(torch.zeros_like(self.mesh.v), requires_grad=True) - self.raw_albedo = nn.Parameter(inverse_sigmoid(self.mesh.albedo), requires_grad=True) - - self.train_geo = False - - def get_params(self, texture_lr, train_geo, geom_lr): - - params = [ - {'params': self.raw_albedo, 'lr': texture_lr}, - ] - - self.train_geo = train_geo - if train_geo: - params.append({'params': self.v_offsets, 'lr': geom_lr}) - - return params - - def update_mesh(self): - self.mesh.v = (self.mesh.v + self.v_offsets).detach() - self.mesh.albedo = torch.sigmoid(self.raw_albedo.detach()) - - def render(self, pose, proj, h0, w0, ssaa=1, bg_color=1, texture_filter='linear-mipmap-linear', - optional_render_types=['depth', 'normal']): - - # do super-sampling - if ssaa != 1: - h = make_divisible(h0 * ssaa, 8) - w = make_divisible(w0 * ssaa, 8) - else: - h, w = h0, w0 - - results = {} - - # get v - if self.train_geo: - v = self.mesh.v + self.v_offsets # [N, 3] - else: - v = self.mesh.v - - pose = torch.from_numpy(pose.astype(np.float32)).to(v.device) - proj = torch.from_numpy(proj.astype(np.float32)).to(v.device) - - # get v_clip and render rgb - v_cam = torch.matmul(F.pad(v, pad=(0, 1), mode='constant', value=1.0), torch.inverse(pose).T).float().unsqueeze(0) - v_clip = v_cam @ proj.T - - rast, rast_db = dr.rasterize(self.glctx, v_clip, self.mesh.f, (h, w)) - - alpha = (rast[0, ..., 3:] > 0).float() # [H, W, 1] - # render depth - if 'depth' in optional_render_types: - depth, _ = dr.interpolate(-v_cam[..., [2]], rast, self.mesh.f) # [1, H, W, 1] - depth = depth.squeeze(0) # [H, W, 1] - # render albedo - texc, texc_db = dr.interpolate(self.mesh.vt.unsqueeze(0).contiguous(), rast, self.mesh.ft, rast_db=rast_db, diff_attrs='all') - albedo = dr.texture(self.raw_albedo.unsqueeze(0), texc, uv_da=texc_db, filter_mode=texture_filter) # [1, H, W, 3] - albedo = torch.sigmoid(albedo) - - # get vn and render normal - if 'normal' in optional_render_types: - if self.train_geo: - i0, i1, i2 = self.mesh.f[:, 0].long(), self.mesh.f[:, 1].long(), self.mesh.f[:, 2].long() - v0, v1, v2 = v[i0, :], v[i1, :], v[i2, :] - - face_normals = torch.cross(v1 - v0, v2 - v0) - face_normals = safe_normalize(face_normals) - - vn = torch.zeros_like(v) - vn.scatter_add_(0, i0[:, None].repeat(1,3), face_normals) - vn.scatter_add_(0, i1[:, None].repeat(1,3), face_normals) - vn.scatter_add_(0, i2[:, None].repeat(1,3), face_normals) - - vn = torch.where(torch.sum(vn * vn, -1, keepdim=True) > 1e-20, vn, torch.tensor([0.0, 0.0, 1.0], dtype=torch.float32, device=vn.device)) - else: - vn = self.mesh.vn - - normal, _ = dr.interpolate(vn.unsqueeze(0).contiguous(), rast, self.mesh.fn) - normal = safe_normalize(normal[0]) - - # rotated normal (where [0, 0, 1] always faces camera) - rot_normal = normal @ pose[:3, :3] - viewcos = rot_normal[..., [2]] - - # antialias - albedo = dr.antialias(albedo, rast, v_clip, self.mesh.f).squeeze(0) # [H, W, 3] - albedo = alpha * albedo + (1 - alpha) * bg_color - - # ssaa - if ssaa != 1: - albedo = scale_img_hwc(albedo, (h0, w0)) - alpha = scale_img_hwc(alpha, (h0, w0)) - if 'depth' in optional_render_types: - depth = scale_img_hwc(depth, (h0, w0)) - if 'normal' in optional_render_types: - normal = scale_img_hwc(normal, (h0, w0)) - viewcos = scale_img_hwc(viewcos, (h0, w0)) - - results['image'] = albedo.clamp(0, 1) - results['alpha'] = alpha - if 'depth' in optional_render_types: - results['depth'] = depth - if 'normal' in optional_render_types: - results['normal'] = (normal + 1) / 2 - results['viewcos'] = viewcos - - return results \ No newline at end of file diff --git a/algorithms/dmtet.py b/algorithms/dmtet.py deleted file mode 100644 index 2806a8c..0000000 --- a/algorithms/dmtet.py +++ /dev/null @@ -1,277 +0,0 @@ -import os -import tqdm - -import numpy as np -import torch -from pytorch3d.loss import chamfer_distance, mesh_laplacian_smoothing -from pytorch3d.structures.meshes import Meshes - -import comfy.utils - -from ..mesh_processer.mesh import Mesh -from ..mesh_processer.mesh_utils import sample_points -from .dmtet_network import Decoder - -# Deep Marching Tetrahedrons implementation, adapted from -# https://github.com/NVIDIAGameWorks/kaolin/blob/master/kaolin/ops/conversions/tetmesh.py -class DMTet: - def __init__(self, device='cuda'): - self.device = device - self.triangle_table = torch.tensor([ - [-1, -1, -1, -1, -1, -1], - [ 1, 0, 2, -1, -1, -1], - [ 4, 0, 3, -1, -1, -1], - [ 1, 4, 2, 1, 3, 4], - [ 3, 1, 5, -1, -1, -1], - [ 2, 3, 0, 2, 5, 3], - [ 1, 4, 0, 1, 5, 4], - [ 4, 2, 5, -1, -1, -1], - [ 4, 5, 2, -1, -1, -1], - [ 4, 1, 0, 4, 5, 1], - [ 3, 2, 0, 3, 5, 2], - [ 1, 3, 5, -1, -1, -1], - [ 4, 1, 2, 4, 3, 1], - [ 3, 0, 4, -1, -1, -1], - [ 2, 0, 1, -1, -1, -1], - [-1, -1, -1, -1, -1, -1] - ], dtype=torch.long, device=self.device) - - self.num_triangles_table = torch.tensor([0,1,1,2,1,2,2,1,1,2,2,1,2,1,1,0], dtype=torch.long, device=self.device) - self.base_tet_edges = torch.tensor([0,1,0,2,0,3,1,2,1,3,2,3], dtype=torch.long, device=self.device) - - # Utility functions - def sort_edges(self, edges_ex2): - with torch.no_grad(): - order = (edges_ex2[:,0] > edges_ex2[:,1]).long() - order = order.unsqueeze(dim=1) - - a = torch.gather(input=edges_ex2, index=order, dim=1) - b = torch.gather(input=edges_ex2, index=1-order, dim=1) - - return torch.stack([a, b],-1) - - def map_uv(self, faces, face_gidx, max_idx): - N = int(np.ceil(np.sqrt((max_idx+1)//2))) - tex_y, tex_x = torch.meshgrid( - torch.linspace(0, 1 - (1 / N), N, dtype=torch.float32, device="cuda"), - torch.linspace(0, 1 - (1 / N), N, dtype=torch.float32, device="cuda"), - indexing='ij' - ) - - pad = 0.9 / N - - uvs = torch.stack([ - tex_x , tex_y, - tex_x + pad, tex_y, - tex_x + pad, tex_y + pad, - tex_x , tex_y + pad - ], dim=-1).view(-1, 2) - - def _idx(tet_idx, N): - x = tet_idx % N - y = torch.div(tet_idx, N, rounding_mode='trunc') - return y * N + x - - tet_idx = _idx(torch.div(face_gidx, 2, rounding_mode='trunc'), N) - tri_idx = face_gidx % 2 - - uv_idx = torch.stack(( - tet_idx * 4, tet_idx * 4 + tri_idx + 1, tet_idx * 4 + tri_idx + 2 - ), dim = -1). view(-1, 3) - - return uvs, uv_idx - - # Marching tets implementation - def __call__(self, vertices, tet, sdf, with_uv=False): - - r"""Convert discrete signed distance fields encoded on tetrahedral grids to triangle - meshes using marching tetrahedra algorithm as described in `An efficient method of - triangulating equi-valued surfaces by using tetrahedral cells`_. The output surface is differentiable with respect to - input vertex positions and the SDF values. For more details and example usage in learning, see - `Deep Marching Tetrahedra\: a Hybrid Representation for High-Resolution 3D Shape Synthesis`_ NeurIPS 2021. - - - Args: - vertices (torch.tensor): batched vertices of tetrahedral meshes, of shape - : (num_vertices, 3). - tets (torch.tensor): unbatched tetrahedral mesh topology, of shape - : (num_tetrahedrons, 4). - sdf (torch.tensor): batched SDFs which specify the SDF value of each vertex, of shape - : (num_vertices). - return_tet_idx (optional, bool): if True, return index of tetrahedron - where each face is extracted. Default: False. - - Returns: - (list[torch.Tensor], list[torch.LongTensor], (optional) list[torch.LongTensor]): - - - the list of vertices for mesh converted from each tetrahedral grid. - - the list of faces for mesh converted from each tetrahedral grid. - - the list of indices that correspond to tetrahedra where faces are extracted. - - Example: - >>> vertices = torch.tensor([[[0, 0, 0], - ... [1, 0, 0], - ... [0, 1, 0], - ... [0, 0, 1]]], dtype=torch.float) - >>> tets = torch.tensor([[0, 1, 2, 3]], dtype=torch.long) - >>> sdf = torch.tensor([[-1., -1., 0.5, 0.5]], dtype=torch.float) - >>> verts_list, faces_list, tet_idx_list = marching_tetrahedra(vertices, tets, sdf, True) - >>> verts_list[0] - tensor([[0.0000, 0.6667, 0.0000], - [0.0000, 0.0000, 0.6667], - [0.3333, 0.6667, 0.0000], - [0.3333, 0.0000, 0.6667]]) - >>> faces_list[0] - tensor([[3, 0, 1], - [3, 2, 0]]) - >>> tet_idx_list[0] - tensor([0, 0]) - - .. _An efficient method of triangulating equi-valued surfaces by using tetrahedral cells: - https://search.ieice.org/bin/summary.php?id=e74-d_1_214 - - .. _Deep Marching Tetrahedra\: a Hybrid Representation for High-Resolution 3D Shape Synthesis: - https://arxiv.org/abs/2111.04276 - """ - - with torch.no_grad(): - occ_n = sdf > 0 - occ_fx4 = occ_n[tet.reshape(-1)].reshape(-1,4) - occ_sum = torch.sum(occ_fx4, -1) - valid_tets = (occ_sum>0) & (occ_sum<4) - occ_sum = occ_sum[valid_tets] - - # find all vertices - all_edges = tet[valid_tets][:,self.base_tet_edges].reshape(-1,2) - all_edges = self.sort_edges(all_edges) - unique_edges, idx_map = torch.unique(all_edges,dim=0, return_inverse=True) - - unique_edges = unique_edges.long() - mask_edges = occ_n[unique_edges.reshape(-1)].reshape(-1,2).sum(-1) == 1 - mapping = torch.ones((unique_edges.shape[0]), dtype=torch.long, device="cuda") * -1 - mapping[mask_edges] = torch.arange(mask_edges.sum(), dtype=torch.long,device="cuda") - idx_map = mapping[idx_map] # map edges to verts - - interp_v = unique_edges[mask_edges] - edges_to_interp = vertices[interp_v.reshape(-1)].reshape(-1,2,3) - edges_to_interp_sdf = sdf[interp_v.reshape(-1)].reshape(-1,2,1) - edges_to_interp_sdf[:,-1] *= -1 - - denominator = edges_to_interp_sdf.sum(1,keepdim = True) - - edges_to_interp_sdf = torch.flip(edges_to_interp_sdf, [1])/denominator - verts = (edges_to_interp * edges_to_interp_sdf).sum(1) - - idx_map = idx_map.reshape(-1,6) - - v_id = torch.pow(2, torch.arange(4, dtype=torch.long, device="cuda")) - tetindex = (occ_fx4[valid_tets] * v_id.unsqueeze(0)).sum(-1) - num_triangles = self.num_triangles_table[tetindex] - - # Generate triangle indices - faces = torch.cat(( - torch.gather(input=idx_map[num_triangles == 1], dim=1, index=self.triangle_table[tetindex[num_triangles == 1]][:, :3]).reshape(-1,3), - torch.gather(input=idx_map[num_triangles == 2], dim=1, index=self.triangle_table[tetindex[num_triangles == 2]][:, :6]).reshape(-1,3), - ), dim=0) - - if with_uv: - # Get global face index (static, does not depend on topology) - num_tets = tet.shape[0] - tet_gidx = torch.arange(num_tets, dtype=torch.long, device="cuda")[valid_tets] - face_gidx = torch.cat(( - tet_gidx[num_triangles == 1]*2, - torch.stack((tet_gidx[num_triangles == 2]*2, tet_gidx[num_triangles == 2]*2 + 1), dim=-1).view(-1) - ), dim=0) - - uvs, uv_idx = self.map_uv(faces, face_gidx, num_tets*2) - - return verts, faces, uvs, uv_idx - else: - return verts, faces - -# Geometry interface -class DMTetMesh: - def __init__(self, iterations=5000, chamfer_distance_weight=1, laplacian_weight=0.1, chamfer_faces_sample_scale=1, mesh_scale=1.0, grid_res=128, geom_lr=0.0001, multires=2, mlp_internal_dims=128, mlp_hidden_layer_num=5, device='cuda'): - - self.device = torch.device(device) - self.chamfer_distance_weight = chamfer_distance_weight - self.laplacian_weight = laplacian_weight - self.chamfer_faces_sample_scale = chamfer_faces_sample_scale - self.iterations = iterations - self.grid_res = grid_res - - self.marching_tets = DMTet(device=self.device) - - self.model = Decoder(multires=multires, internal_dims=mlp_internal_dims, hidden=mlp_hidden_layer_num).to(self.device) - self.model.pre_train_sphere() - - self.geom_optimizer = torch.optim.Adam(self.model.parameters(), lr=geom_lr) - self.geom_scheduler = torch.optim.lr_scheduler.LambdaLR(self.geom_optimizer, lr_lambda=lambda x: self.lr_schedule(x)) - - # Load tetrahedral tile, for grid_res==128: verts: torch.Size([277410, 3]), indices: torch.Size([1524684, 4]) - # Get pre-generated tetrahedral grid from https://github.com/NVlabs/nvdiffrec/tree/main/data/tets - tets_path = os.path.join(os.path.dirname(__file__), f'../data/tets/{self.grid_res}_tets.npz') - tets = np.load(tets_path) - self.verts = torch.tensor(tets['vertices'], dtype=torch.float32, device=self.device) * mesh_scale - self.indices = torch.tensor(tets['indices'], dtype=torch.long, device=self.device) - - self.generate_edges() - - def lr_schedule(self, iter): - return max(0.0, 10**(-iter*0.0002)) # Exponential falloff from [1.0, 0.1] over 5k epochs. - - def generate_edges(self): - with torch.no_grad(): - edges = torch.tensor([0,1,0,2,0,3,1,2,1,3,2,3], dtype = torch.long, device = "cuda") - all_edges = self.indices[:,edges].reshape(-1,2) - all_edges_sorted = torch.sort(all_edges, dim=1)[0] - self.all_edges = torch.unique(all_edges_sorted, dim=0) - - def get_mesh(self): - verts, faces = self.pred_verts_faces() - mesh = Mesh(v=verts.detach(), f=faces.detach(), device=self.device) - mesh.auto_normal() - mesh.auto_uv() - return mesh - - def pred_verts_faces(self): - pred = self.model(self.verts) # predict SDF and per-vertex deformation - sdf, deform = self.model.get_sdf_and_deform(pred) - v_deformed = self.verts + torch.tanh(deform) / self.grid_res # constraint deformation to avoid flipping tets - return self.marching_tets(v_deformed, self.indices, sdf) - - def training(self, pcd, ref_imgs, ref_masks): - - allow_ref_points_loss = pcd is not None - if allow_ref_points_loss: - ref_points_batched = torch.from_numpy(np.asarray(pcd.points)).float().to(self.device).unsqueeze(0) - - allow_imgs_loss = ref_imgs is not None - allow_masks_loss = ref_masks is not None - - comfy_pbar = comfy.utils.ProgressBar(self.iterations) - - for step in tqdm.trange(self.iterations): - - loss = 0 - - verts, faces = self.pred_verts_faces() - - # chamfer distance loss - if allow_ref_points_loss: - num_faces_samples = int(self.chamfer_faces_sample_scale * faces.shape[0]) - sampled_points_per_faces = sample_points(verts.unsqueeze(0), faces, num_faces_samples)[0] - loss += self.chamfer_distance_weight * chamfer_distance(sampled_points_per_faces, ref_points_batched)[0].mean() - - # laplacian smoothing regularization loss - mesh = Meshes([verts], [faces]) - loss += self.laplacian_weight * mesh_laplacian_smoothing(mesh) - - # TODO: add images based diffrast loss, i.e (RGB, Alpha, Normal; with L1, SSIM loss) - - loss.backward() - self.geom_optimizer.step() - self.geom_scheduler.step() - self.geom_optimizer.zero_grad() - - comfy_pbar.update_absolute(step + 1) \ No newline at end of file diff --git a/algorithms/dmtet_network.py b/algorithms/dmtet_network.py deleted file mode 100644 index 715c950..0000000 --- a/algorithms/dmtet_network.py +++ /dev/null @@ -1,93 +0,0 @@ -# This script is modified based on: https://github.com/NVIDIAGameWorks/kaolin/blob/5406915c3a020596384b1a36679ff68afd04d455/examples/tutorial/dmtet_network.py - -import torch -from tqdm import tqdm - -# MLP + Positional Encoding -class Decoder(torch.nn.Module): - def __init__(self, input_dims = 3, internal_dims = 128, output_dims = 4, hidden = 5, multires = 2): - super().__init__() - self.embed_fn = None - if multires > 0: - embed_fn, input_ch = get_embedder(multires) - self.embed_fn = embed_fn - input_dims = input_ch - - net = (torch.nn.Linear(input_dims, internal_dims, bias=False), torch.nn.ReLU()) - for i in range(hidden-1): - net = net + (torch.nn.Linear(internal_dims, internal_dims, bias=False), torch.nn.ReLU()) - net = net + (torch.nn.Linear(internal_dims, output_dims, bias=False),) - self.net = torch.nn.Sequential(*net) - - def forward(self, p): - if self.embed_fn is not None: - p = self.embed_fn(p) - out = self.net(p) - return out - - def get_sdf_and_deform(self, out): - return out[:,0], out[:,1:] # sdf, deform - - def pre_train_sphere(self, iter=1000): - print ("Initialize SDF to sphere") - loss_fn = torch.nn.MSELoss() - optimizer = torch.optim.Adam(list(self.parameters()), lr=1e-4) - - for i in tqdm(range(iter)): - p = torch.rand((1024,3), device='cuda') - 0.5 - ref_value = torch.sqrt((p**2).sum(-1)) - 0.3 - output = self(p) - loss = loss_fn(output[...,0], ref_value) - optimizer.zero_grad() - loss.backward() - optimizer.step() - - print("Pre-trained MLP", loss.item()) - - -# Positional Encoding from https://github.com/yenchenlin/nerf-pytorch/blob/1f064835d2cca26e4df2d7d130daa39a8cee1795/run_nerf_helpers.py -class Embedder: - def __init__(self, **kwargs): - self.kwargs = kwargs - self.create_embedding_fn() - - def create_embedding_fn(self): - embed_fns = [] - d = self.kwargs['input_dims'] - out_dim = 0 - if self.kwargs['include_input']: - embed_fns.append(lambda x : x) - out_dim += d - - max_freq = self.kwargs['max_freq_log2'] - N_freqs = self.kwargs['num_freqs'] - - if self.kwargs['log_sampling']: - freq_bands = 2.**torch.linspace(0., max_freq, steps=N_freqs) - else: - freq_bands = torch.linspace(2.**0., 2.**max_freq, steps=N_freqs) - - for freq in freq_bands: - for p_fn in self.kwargs['periodic_fns']: - embed_fns.append(lambda x, p_fn=p_fn, freq=freq : p_fn(x * freq)) - out_dim += d - - self.embed_fns = embed_fns - self.out_dim = out_dim - - def embed(self, inputs): - return torch.cat([fn(inputs) for fn in self.embed_fns], -1) - -def get_embedder(multires): - embed_kwargs = { - 'include_input' : True, - 'input_dims' : 3, - 'max_freq_log2' : multires-1, - 'num_freqs' : multires, - 'log_sampling' : True, - 'periodic_fns' : [torch.sin, torch.cos], - } - - embedder_obj = Embedder(**embed_kwargs) - embed = lambda x, eo=embedder_obj : eo.embed(x) - return embed, embedder_obj.out_dim diff --git a/algorithms/flexicubes_renderer.py b/algorithms/flexicubes_renderer.py deleted file mode 100644 index e49211c..0000000 --- a/algorithms/flexicubes_renderer.py +++ /dev/null @@ -1,74 +0,0 @@ -import os -import numpy as np -import torch - -import nvdiffrast.torch as dr -from kiui.cam import orbit_camera - -from ..flexicubes import util - -class FlexiCubesRenderer: - def __init__(self, force_cuda_rast): - - if force_cuda_rast or os.name != 'nt': - self.glctx = dr.RasterizeCudaContext() - else: - self.glctx = dr.RasterizeGLContext() - - def get_rotate_camera(self, itr, fovy = np.deg2rad(45), iter_res=[512,512], cam_near_far=[0.1, 1000.0], cam_radius=3.0, device="cuda"): - proj_mtx = util.perspective(fovy, iter_res[1] / iter_res[0], cam_near_far[0], cam_near_far[1]) - - # Smooth rotation for display. - ang = (itr / 10) * np.pi * 2 - mv = util.translate(0, 0, -cam_radius) @ (util.rotate_x(-0.4) @ util.rotate_y(ang)) - mvp = proj_mtx @ mv - return mv.to(device), mvp.to(device) - - def get_orbit_camera(self, azimuth=0, elevation=0, fovy=45, iter_res=[512,512], cam_near_far=[0.1, 1000.0], cam_radius=3.0, device="cuda"): - aspect = iter_res[1] / iter_res[0] - fovy = np.deg2rad(fovy) - proj_mtx = util.perspective(fovy, aspect, cam_near_far[0], cam_near_far[1]) - #fovx = 2 * np.arctan(np.tan(fovy / 2) * aspect) - #proj_mtx = get_projection_matrix(cam_near_far[0], cam_near_far[1], fovx, -fovy, z_sign=-1.0) - - # Smooth rotation for display. - #mv = util.translate(0, 0, -cam_radius) @ (util.rotate_x(-np.de2rad(elevation)) @ util.rotate_y(np.deg2rad(azimuth))) - mv = torch.tensor(np.linalg.inv(orbit_camera(-elevation, azimuth, cam_radius))) - mvp = proj_mtx @ mv - return mv.to(device), mvp.to(device) - - def render_mesh(self, mesh, mv, mvp, iter_res, depth_min=-5.5, depth_max=-0.5, return_types=["mask", "depth", "normal"], white_bg=False): - ''' - The rendering function used to produce the results in the paper. - ''' - v_pos_clip = util.xfm_points(mesh.vertices.unsqueeze(0), mvp) # Rotate it to camera coordinates - rast, db = dr.rasterize( - dr.RasterizeGLContext(), v_pos_clip, mesh.faces.int(), iter_res) - - alpha_index = rast[..., -1:] > 0 - inv_alpha_index = rast[..., -1:] <= 0 - alpha = alpha_index.float() - - out_dict = {} - for type in return_types: - if type == "mask" : - img = dr.antialias(alpha, rast, v_pos_clip, mesh.faces.int()) - elif type == "depth": - v_pos_cam = util.xfm_points(mesh.vertices.unsqueeze(0), mv) - img, _ = util.interpolate(v_pos_cam[..., [2]].contiguous(), rast, mesh.faces.int()) - img_masked = img[alpha_index] - img_masked = torch.clamp(img_masked, min=depth_min, max=depth_max) - img_masked = (img_masked - depth_min) / (depth_max - depth_min) - img[alpha_index] = img_masked - img[inv_alpha_index] = 0 - elif type == "normal" : - normal_indices = (torch.arange(0, mesh.nrm.shape[0], dtype=torch.int64, device='cuda')[:, None]).repeat(1, 3) - img, _ = util.interpolate(mesh.nrm.unsqueeze(0).contiguous(), rast, normal_indices.int()) - elif type == "vertex_normal": - img, _ = util.interpolate(mesh.v_nrm.unsqueeze(0).contiguous(), rast, mesh.faces.int()) - img = dr.antialias((img + 1) * 0.5, rast, v_pos_clip, mesh.faces.int()) - if white_bg: - bg = torch.ones_like(img) - img = torch.lerp(bg, img, alpha) - out_dict[type] = img - return out_dict diff --git a/algorithms/flexicubes_trainer.py b/algorithms/flexicubes_trainer.py deleted file mode 100644 index f666cb6..0000000 --- a/algorithms/flexicubes_trainer.py +++ /dev/null @@ -1,212 +0,0 @@ -import os -import imageio - -import torch -import numpy as np - -import tqdm -import comfy.utils - - -from .flexicubes_renderer import FlexiCubesRenderer -from ..shared_utils.camera_utils import OrbitCamera -from ..flexicubes.flexicubes import FlexiCubes -from ..flexicubes.util import SimpleMesh -from ..flexicubes.loss import sdf_reg_loss -from ..mesh_processer.mesh import Mesh - -def lr_schedule(iter): - return max(0.0, 10**(-(iter)*0.0002)) # Exponential falloff from [1.0, 0.1] over 5k epochs. - -class FlexiCubesTrainer: - - def __init__( - self, - training_iterations, - batch_size, - learning_rate, - voxel_grids_resolution, - depth_near=0.5, - depth_far=5.5, - mask_loss_weight=1.0, - depth_loss_weight=100.0, - normal_loss_weight=1.0, - sdf_regularizer_weight=0.2, - remove_floaters_weight=0.5, - cube_stabilizer_weight=0.1, - force_cuda_rast=False, - device='cuda' - ): - self.device = torch.device(device) - - self.renderer = FlexiCubesRenderer(force_cuda_rast) - - # Create and initialize FlexiCubes - self.voxel_grid_res = voxel_grids_resolution - self.fc = FlexiCubes(self.device) - self.x_nx3, self.cube_fx8 = self.fc.construct_voxel_grid(self.voxel_grid_res) - self.x_nx3 *= 2 # scale up the grid so that it's larger than the target object - - self.sdf = torch.rand_like(self.x_nx3[:,0]) - 0.1 # randomly init SDF - self.sdf = torch.nn.Parameter(self.sdf.clone().detach(), requires_grad=True) - # set per-cube learnable weights to zeros - self.weight = torch.zeros((self.cube_fx8.shape[0], 21), dtype=torch.float, device=self.device) - self.weight = torch.nn.Parameter(self.weight.clone().detach(), requires_grad=True) - self.deform = torch.nn.Parameter(torch.zeros_like(self.x_nx3), requires_grad=True) - - # Retrieve all the edges of the voxel grid; these edges will be utilized to - # compute the regularization loss in subsequent steps of the process. - all_edges = self.cube_fx8[:, self.fc.cube_edges].reshape(-1, 2) - self.grid_edges = torch.unique(all_edges, dim=0) - - # Setup optimizer - self.optimizer = torch.optim.Adam([self.sdf, self.weight, self.deform], lr=learning_rate) - self.scheduler = torch.optim.lr_scheduler.LambdaLR(self.optimizer, lr_lambda=lambda x: lr_schedule(x)) - - self.training_iterations = training_iterations - self.batch_size = batch_size - - self.depth_near = -depth_near - self.depth_far = -depth_far - - self.mask_loss_weight = mask_loss_weight - self.depth_loss_weight = depth_loss_weight - self.normal_loss_weight = normal_loss_weight - self.sdf_regularizer_weight = sdf_regularizer_weight - self.remove_floaters_weight = remove_floaters_weight - self.cube_stabilizer_weight = cube_stabilizer_weight - - def prepare_training(self, reference_depth_images, reference_masks, reference_orbit_camera_poses, reference_orbit_camera_fovy, reference_normals=None): - self.ref_imgs_num = len(reference_depth_images) - - self.all_ref_cam_poses = reference_orbit_camera_poses - self.ref_cam_fovy = reference_orbit_camera_fovy - - self.ref_size_H = reference_depth_images[0].shape[0] - self.ref_size_W = reference_depth_images[0].shape[1] - - self.cam = OrbitCamera(self.ref_size_W, self.ref_size_H, fovy=reference_orbit_camera_fovy) - - # prepare reference images and masks - self.ref_depth_imgs_torch = reference_depth_images[:, :, :, 0].unsqueeze(3).to(self.device) # (N, H, W, C) -> (N, H, W, 1) - self.ref_masks_torch = reference_masks.unsqueeze(3).to(self.device) - - if reference_normals is not None: - self.ref_normal_imgs_torch = (reference_normals * 2 - 1).to(self.device) # change value from [0, 1] -> [-1, 1] - else: - self.ref_normal_imgs_torch = None - - # prepare reference camera projection matrix for all camera poses - mv_all = [] - mvp_all = [] - for pose in self.all_ref_cam_poses: - mv, mvp = self.renderer.get_orbit_camera(pose[2], pose[1], cam_radius=pose[0], device=self.device) - mv_all.append(mv) - mvp_all.append(mvp) - self.mv_all = torch.stack(mv_all).to(self.device) - self.mvp_all = torch.stack(mvp_all).to(self.device) - self.camposes_len = len(self.all_ref_cam_poses) - - def training(self): - starter = torch.cuda.Event(enable_timing=True) - ender = torch.cuda.Event(enable_timing=True) - starter.record() - - comfy_pbar = comfy.utils.ProgressBar(self.training_iterations) - - if self.ref_normal_imgs_torch is not None: - return_types = ["mask", "depth", "normal"] - else: - return_types = ["mask", "depth"] - - for step in tqdm.trange(self.training_iterations): - # sample random render & camera pose from multi-views - batch_index = np.random.randint(0, self.camposes_len, size=self.batch_size) - mv = self.mv_all[batch_index, :, :] - mvp = self.mvp_all[batch_index, :, :] - - target_mask = self.ref_masks_torch[batch_index, :, :, :] - target_depth = self.ref_depth_imgs_torch[batch_index, :, :, :] - - # extract and render FlexiCubes mesh - grid_verts = self.x_nx3 + (2-1e-8) / (self.voxel_grid_res * 2) * torch.tanh(self.deform) - vertices, faces, L_dev = self.fc(grid_verts, self.sdf, self.cube_fx8, self.voxel_grid_res, beta_fx12=self.weight[:,:12], alpha_fx8=self.weight[:,12:20], - gamma_f=self.weight[:,20], training=True) - flexicubes_mesh = SimpleMesh(vertices, faces) - if self.ref_normal_imgs_torch is not None: - flexicubes_mesh.auto_normals() - buffers = self.renderer.render_mesh(flexicubes_mesh, mv, mvp, (self.ref_size_H, self.ref_size_W), self.depth_far, self.depth_near, return_types) - - t_iter = step / self.training_iterations - # evaluate reconstruction loss - # mask & depth shape: (N, H, W, 1) - mask_loss = (buffers['mask'] - target_mask).abs().mean() * self.mask_loss_weight - depth_loss = (((((buffers['depth'] - target_depth)* target_mask)**2).sum(-1)+1e-8)).sqrt().mean() * self.depth_loss_weight - total_loss = mask_loss + depth_loss - if self.ref_normal_imgs_torch is not None: - target_normal = self.ref_normal_imgs_torch[batch_index, :, :, :] - normal_loss = (((((buffers['normal'] - (target_normal))* target_mask)**2).sum(-1)+1e-8)).sqrt().mean() * self.normal_loss_weight * t_iter - total_loss += normal_loss - - sdf_weight = self.sdf_regularizer_weight - (self.sdf_regularizer_weight - self.sdf_regularizer_weight/20)*min(1.0, 4.0 * t_iter) - reg_loss = sdf_reg_loss(self.sdf, self.grid_edges).mean() * sdf_weight # Loss to eliminate internal floaters that are not visible - reg_loss += L_dev.mean() * self.remove_floaters_weight - reg_loss += (self.weight[:,:20]).abs().mean() * self.cube_stabilizer_weight - total_loss += reg_loss - - # optimize step - total_loss.backward() - self.optimizer.step() - self.scheduler.step() - self.optimizer.zero_grad() - - comfy_pbar.update_absolute(step + 1) - - #self.test_save(step, mv, mvp, grid_verts, total_loss, out_dir="C:\\Users\\reall\\Softwares\\ComfyUI_windows_portable\\ComfyUI\\output\\FlexiCubes_Output\\Test_Normals") - - ender.record() - - def get_mesh(self): - grid_verts = self.x_nx3 + (2-1e-8) / (self.voxel_grid_res * 2) * torch.tanh(self.deform) - vertices, faces, L_dev = self.fc(grid_verts, self.sdf, self.cube_fx8, self.voxel_grid_res, beta_fx12=self.weight[:,:12], alpha_fx8=self.weight[:,12:20], - gamma_f=self.weight[:,20], training=False) - - v = vertices.detach().contiguous().float().to(self.device) - f = faces.detach().contiguous().float().to(self.device) - mesh = Mesh(v=v, f=f, device=self.device) - mesh.auto_normal() - mesh.auto_uv() - - # Trimesh seems output better mesh - #import trimesh - #import os - #mesh_np = trimesh.Trimesh(vertices = vertices.detach().cpu().numpy(), faces=faces.detach().cpu().numpy(), process=False) - #mesh_np.export(os.path.join("C:\\Users\\reall\\Softwares\\ComfyUI_windows_portable\\ComfyUI\\output\\FlexiCubes_Output", 'output_trimesh.obj')) - - return mesh - - def test_save(self, step, mv, mvp, grid_verts, total_loss, out_dir, save_interval=20, display_res=[1024, 1024]): - if (step % save_interval == 0 or step == (self.training_iterations-1)): # save normal image for visualization - with torch.no_grad(): - # extract mesh with training=False - vertices, faces, L_dev = self.fc(grid_verts, self.sdf, self.cube_fx8, self.voxel_grid_res, beta_fx12=self.weight[:,:12], alpha_fx8=self.weight[:,12:20], - gamma_f=self.weight[:,20], training=False) - flexicubes_mesh = SimpleMesh(vertices, faces) - flexicubes_mesh.auto_normals() # compute face normals for visualization - - mv, mvp = self.renderer.get_rotate_camera(step//save_interval, iter_res=display_res, device=self.device) - mv = mv.unsqueeze(0) - mvp = mvp.unsqueeze(0) - val_buffers = self.renderer.render_mesh(flexicubes_mesh, mv, mvp, display_res, return_types=["normal"], white_bg=True) - val_image = ((val_buffers["normal"][0].detach().cpu().numpy()+1)/2*255).astype(np.uint8) - #val_image = (val_buffers["depth"][0].detach().cpu().numpy()*255).astype(np.uint8) - #val_repeat = np.repeat(val_image, 4, axis=2) - #val_repeat[:, :, 3] = 255 - - #gt_image = (gt_image[0].detach().cpu().numpy()*255).astype(np.uint8) - #gt_repeat = np.repeat(gt_image, 4, axis=2) - #gt_repeat[:, :, 3] = 255 - - imageio.imwrite(os.path.join(out_dir, '{:04d}.png'.format(step)), val_image) - #imageio.imwrite(os.path.join(out_dir, '{:04d}.png'.format(step)), np.concatenate([val_repeat, gt_repeat], 1)) - print(f"Optimization Step [{step}/{self.training_iterations}], Loss: {total_loss.item():.4f}") \ No newline at end of file diff --git a/algorithms/large_multiview_gaussian_model.py b/algorithms/large_multiview_gaussian_model.py deleted file mode 100644 index 0e6fcc4..0000000 --- a/algorithms/large_multiview_gaussian_model.py +++ /dev/null @@ -1,171 +0,0 @@ -import numpy as np -import torch -import torch.nn as nn -import torch.nn.functional as F -from kiui.lpips import LPIPS - -import kiui -from kiui.cam import orbit_camera - -from ..lgm.core.unet import UNet -from ..lgm.core.options import Options -from ..lgm.core.gs import GaussianRenderer -from ..lgm.core.utils import get_rays - -class LGM(nn.Module): - def __init__( - self, - opt: Options, - ): - super().__init__() - - self.opt = opt - - # unet - self.unet = UNet( - 9, 14, - down_channels=self.opt.down_channels, - down_attention=self.opt.down_attention, - mid_attention=self.opt.mid_attention, - up_channels=self.opt.up_channels, - up_attention=self.opt.up_attention, - ) - - # last conv - self.conv = nn.Conv2d(14, 14, kernel_size=1) # NOTE: maybe remove it if train again - - # Gaussian Renderer - self.gs = GaussianRenderer(opt) - - # activations... - self.pos_act = lambda x: x.clamp(-1, 1) - self.scale_act = lambda x: 0.1 * F.softplus(x) - self.opacity_act = lambda x: torch.sigmoid(x) - self.rot_act = F.normalize - self.rgb_act = lambda x: 0.5 * torch.tanh(x) + 0.5 # NOTE: may use sigmoid if train again - - # LPIPS loss - if self.opt.lambda_lpips > 0: - self.lpips_loss = LPIPS(net='vgg') - self.lpips_loss.requires_grad_(False) - - - def state_dict(self, **kwargs): - # remove lpips_loss - state_dict = super().state_dict(**kwargs) - for k in list(state_dict.keys()): - if 'lpips_loss' in k: - del state_dict[k] - return state_dict - - - def prepare_default_rays(self, device, elevation=0): - cam_poses = np.stack([ - orbit_camera(elevation, 0, radius=self.opt.cam_radius), - orbit_camera(elevation, 90, radius=self.opt.cam_radius), - orbit_camera(elevation, 180, radius=self.opt.cam_radius), - orbit_camera(elevation, 270, radius=self.opt.cam_radius), - ], axis=0) # [4, 4, 4] - cam_poses = torch.from_numpy(cam_poses) - - rays_embeddings = [] - for i in range(cam_poses.shape[0]): - rays_o, rays_d = get_rays(cam_poses[i], self.opt.input_size, self.opt.input_size, self.opt.fovy) # [h, w, 3] - rays_plucker = torch.cat([torch.cross(rays_o, rays_d, dim=-1), rays_d], dim=-1) # [h, w, 6] - rays_embeddings.append(rays_plucker) - - ## visualize rays for plotting figure - # kiui.vis.plot_image(rays_d * 0.5 + 0.5, save=True) - - rays_embeddings = torch.stack(rays_embeddings, dim=0).permute(0, 3, 1, 2).contiguous().to(device) # [V, 6, h, w] - - return rays_embeddings - - - def forward_gaussians(self, images): - # images: [B, 4, 9, H, W] - # return: Gaussians: [B, dim_t] - - B, V, C, H, W = images.shape - images = images.view(B*V, C, H, W) - - x = self.unet(images) # [B*4, 14, h, w] - x = self.conv(x) # [B*4, 14, h, w] - - x = x.reshape(B, 4, 14, self.opt.splat_size, self.opt.splat_size) - - ## visualize multi-view gaussian features for plotting figure - # tmp_alpha = self.opacity_act(x[0, :, 3:4]) - # tmp_img_rgb = self.rgb_act(x[0, :, 11:]) * tmp_alpha + (1 - tmp_alpha) - # tmp_img_pos = self.pos_act(x[0, :, 0:3]) * 0.5 + 0.5 - # kiui.vis.plot_image(tmp_img_rgb, save=True) - # kiui.vis.plot_image(tmp_img_pos, save=True) - - x = x.permute(0, 1, 3, 4, 2).reshape(B, -1, 14) - - pos = self.pos_act(x[..., 0:3]) # [B, N, 3] - opacity = self.opacity_act(x[..., 3:4]) - scale = self.scale_act(x[..., 4:7]) - rotation = self.rot_act(x[..., 7:11]) - rgbs = self.rgb_act(x[..., 11:]) - - gaussians = torch.cat([pos, opacity, scale, rotation, rgbs], dim=-1) # [B, N, 14] - - return gaussians - - - def forward(self, data, step_ratio=1): - # data: output of the dataloader - # return: loss - - results = {} - loss = 0 - - images = data['input'] # [B, 4, 9, h, W], input features - - # use the first view to predict gaussians - gaussians = self.forward_gaussians(images) # [B, N, 14] - - results['gaussians'] = gaussians - - # random bg for training - if self.training: - bg_color = torch.rand(3, dtype=torch.float32, device=gaussians.device) - else: - bg_color = torch.ones(3, dtype=torch.float32, device=gaussians.device) - - # use the other views for rendering and supervision - results = self.gs.render(gaussians, data['cam_view'], data['cam_view_proj'], data['cam_pos'], bg_color=bg_color) - pred_images = results['image'] # [B, V, C, output_size, output_size] - pred_alphas = results['alpha'] # [B, V, 1, output_size, output_size] - - results['images_pred'] = pred_images - results['alphas_pred'] = pred_alphas - - gt_images = data['images_output'] # [B, V, 3, output_size, output_size], ground-truth novel views - gt_masks = data['masks_output'] # [B, V, 1, output_size, output_size], ground-truth masks - - gt_images = gt_images * gt_masks + bg_color.view(1, 1, 3, 1, 1) * (1 - gt_masks) - - loss_mse = F.mse_loss(pred_images, gt_images) + F.mse_loss(pred_alphas, gt_masks) - loss = loss + loss_mse - - if self.opt.lambda_lpips > 0: - loss_lpips = self.lpips_loss( - # gt_images.view(-1, 3, self.opt.output_size, self.opt.output_size) * 2 - 1, - # pred_images.view(-1, 3, self.opt.output_size, self.opt.output_size) * 2 - 1, - # downsampled to at most 256 to reduce memory cost - F.interpolate(gt_images.view(-1, 3, self.opt.output_size, self.opt.output_size) * 2 - 1, (256, 256), mode='bilinear', align_corners=False), - F.interpolate(pred_images.view(-1, 3, self.opt.output_size, self.opt.output_size) * 2 - 1, (256, 256), mode='bilinear', align_corners=False), - ).mean() - results['loss_lpips'] = loss_lpips - loss = loss + self.opt.lambda_lpips * loss_lpips - - results['loss'] = loss - - # metric - with torch.no_grad(): - psnr = -10 * torch.log10(torch.mean((pred_images.detach() - gt_images) ** 2)) - results['psnr'] = psnr - - return results \ No newline at end of file diff --git a/algorithms/main_3DGS.py b/algorithms/main_3DGS.py deleted file mode 100644 index 102a875..0000000 --- a/algorithms/main_3DGS.py +++ /dev/null @@ -1,232 +0,0 @@ -import random -import tqdm - -import torch -import torch.nn.functional as F -import numpy as np -from pytorch_msssim import SSIM, MS_SSIM - -import comfy.utils - -from .main_3DGS_renderer import GaussianSplattingRenderer -from ..shared_utils.camera_utils import BaseCameraController, MiniCam, calculate_fovX, get_projection_matrix -from ..shared_utils.image_utils import prepare_torch_img - -class GSParams: - def __init__( - self, - training_iterations=30_000, - batch_size=1, - lambda_ssim=0.2, - lambda_alpha=3, - lambda_offset=0, - lambda_offset_opacity=0, - invert_bg_prob = 0.5, - feature_lr=0.0025, - opacity_lr=0.05, - scaling_lr=0.005, - rotation_lr=0.001, - position_lr_init=0.00016, - position_lr_final=0.0000016, - position_lr_delay_mult=0.01, - position_lr_max_steps=30_000, - num_pts=10_000, - K=3, - percent_dense=0.01, - density_start_iter=500, - density_end_iter=15_000, - densification_interval=100, - opacity_reset_interval=3000, - densify_grad_threshold=0.0002, - sh_degree=3 - ): - - # training params - self.training_iterations = training_iterations - self.batch_size = batch_size - self.lambda_ssim = lambda_ssim - self.lambda_alpha = lambda_alpha - self.lambda_offset = lambda_offset - self.lambda_offset_opacity = lambda_offset_opacity - self.invert_bg_prob = invert_bg_prob - - # learning params - self.feature_lr = feature_lr - self.opacity_lr = opacity_lr - self.scaling_lr = scaling_lr - self.rotation_lr = rotation_lr - self.position_lr_init = position_lr_init - self.position_lr_final = position_lr_final - self.position_lr_delay_mult = position_lr_delay_mult - self.position_lr_max_steps = position_lr_max_steps - - # densify and prune params - self.num_pts = num_pts - self.K = K - self.percent_dense = percent_dense - self.density_start_iter=density_start_iter - self.density_end_iter=density_end_iter - self.densification_interval=densification_interval - self.opacity_reset_interval=opacity_reset_interval - self.densify_grad_threshold=densify_grad_threshold - - # other gaussian params - self.sh_degree = sh_degree - -class GaussianSplattingCameraController(BaseCameraController): - def get_render_result(self, render_pose, bg_color): - render_cam = MiniCam(render_pose, self.cam.W, self.cam.H, self.cam.fovy, self.cam.fovx, self.cam.near, self.cam.far, self.projection_matrix) - return self.renderer.render(render_cam, bg_color=bg_color) - - def pose_init(self): - self.projection_matrix = get_projection_matrix(self.cam.near, self.cam.far, self.cam.fovx, self.cam.fovy).transpose(0, 1).cuda() - -class GaussianSplatting: - - def __init__(self, gs_params=None, init_input=None, device='cuda'): - self.device = torch.device(device) - - # prepare renderer for optimization - if gs_params is None: - gs_params = GSParams() - - self.renderer = GaussianSplattingRenderer(sh_degree=gs_params.sh_degree) - self.renderer.initialize(init_input, num_pts=gs_params.num_pts) - - # setup training - self.renderer.gaussians.training_setup(gs_params) - # do not do progressive sh-level - self.renderer.gaussians.active_sh_degree = self.renderer.gaussians.max_sh_degree - self.optimizer = self.renderer.gaussians.optimizer - #self.ssim_loss = SSIM(data_range=1, size_average=True, channel=3) - self.ms_ssim_loss = MS_SSIM(data_range=1, size_average=True, channel=3) - - self.gs_params = gs_params - - def prepare_training(self, reference_images, reference_masks, reference_orbit_camera_poses, reference_orbit_camera_fovy): - self.ref_imgs_num = len(reference_images) - - self.ref_size_H = reference_images[0].shape[0] - self.ref_size_W = reference_images[0].shape[1] - - # default camera settings - self.cam_controller = GaussianSplattingCameraController( - self.renderer, self.ref_size_W, self.ref_size_H, reference_orbit_camera_fovy, self.gs_params.invert_bg_prob, None, self.device - ) - - self.all_ref_cam_poses = reference_orbit_camera_poses - - # prepare reference images and masks - ref_imgs_torch_list = [] - ref_masks_torch_list = [] - for i in range(self.ref_imgs_num): - ref_imgs_torch_list.append(prepare_torch_img(reference_images[i].unsqueeze(0), self.ref_size_H, self.ref_size_W, self.device)) - ref_masks_torch_list.append(prepare_torch_img(reference_masks[i].unsqueeze(2).unsqueeze(0), self.ref_size_H, self.ref_size_W, self.device)) - - self.ref_imgs_torch = torch.cat(ref_imgs_torch_list, dim=0) - self.ref_masks_torch = torch.cat(ref_masks_torch_list, dim=0) - - def training(self): - starter = torch.cuda.Event(enable_timing=True) - ender = torch.cuda.Event(enable_timing=True) - starter.record() - - ref_imgs_masked = [] - for i in range(self.ref_imgs_num): - ref_imgs_masked.append((self.ref_imgs_torch[i] * self.ref_masks_torch[i]).unsqueeze(0)) - - ref_imgs_num_minus_1 = self.ref_imgs_num-1 - - comfy_pbar = comfy.utils.ProgressBar(self.gs_params.training_iterations) - - for step in tqdm.trange(self.gs_params.training_iterations): - - ### calculate loss between reference and rendered image from known view - loss = 0 - masked_rendered_img_batch = [] - masked_ref_img_batch = [] - masks_batch = [] - ref_masks_batch = [] - - step_ratio = min(1, step / self.gs_params.training_iterations) - - # update lr - self.renderer.gaussians.update_learning_rate(step) - - loss = 0 - - for _ in range(self.gs_params.batch_size): - ### calculate loss between reference and rendered image from known view - - i = random.randint(0, ref_imgs_num_minus_1) - - out = self.cam_controller.render_at_pose(self.all_ref_cam_poses[i]) - - image = out["image"] # [3, H, W] in [0, 1] - mask = out["alpha"] # [1, H, W] in [0, 1] - - ref_mask = self.ref_masks_torch[i] - image_masked = (image * ref_mask).unsqueeze(0) - - masked_rendered_img_batch.append(image_masked) - masked_ref_img_batch.append(ref_imgs_masked[i]) - masks_batch.append(mask.unsqueeze(0)) - ref_masks_batch.append(ref_mask.unsqueeze(0)) - - masked_rendered_img_batch_torch = torch.cat(masked_rendered_img_batch, dim=0) - masked_ref_img_batch_torch = torch.cat(masked_ref_img_batch, dim=0) - masks_batch_torch = torch.cat(masks_batch, dim=0) - ref_masks_batch_torch = torch.cat(ref_masks_batch, dim=0) - - #loss_scaler = self.gs_params.loss_scale * step_ratio - - # rgb loss - loss += (1 - self.gs_params.lambda_ssim) * F.l1_loss(masked_rendered_img_batch_torch, masked_ref_img_batch_torch) - - # alpha loss - loss += self.gs_params.lambda_alpha * F.mse_loss(masks_batch_torch, ref_masks_batch_torch) - - # D-SSIM loss - # [1, 3, H, W] in [0, 1] - #loss += self.lambda_ssim * (1 - self.ssim_loss(X, Y)) - loss += self.gs_params.lambda_ssim * (1 - self.ms_ssim_loss(masked_ref_img_batch_torch, masked_rendered_img_batch_torch)) - - if self.gs_params.lambda_offset > 0: - # Reference offset loss - offset_norm = self.renderer.gaussians.get_xyz_offset.norm(dim=-1, keepdim=True) - loss += self.gs_params.lambda_offset * torch.mean(offset_norm) - - if self.gs_params.lambda_offset_opacity > 0: - # Alpha penalty loss - loss += self.gs_params.lambda_offset_opacity * torch.mean(offset_norm.detach() * self.renderer.gaussians.get_opacity) - - - # optimize step - loss.backward() - self.optimizer.step() - self.optimizer.zero_grad() - - # densify and prune - if step >= self.gs_params.density_start_iter and step <= self.gs_params.density_end_iter: - viewspace_point_tensor, visibility_filter, radii = out["viewspace_points"], out["visibility_filter"], out["radii"] - self.renderer.gaussians.max_radii2D[visibility_filter] = torch.max(self.renderer.gaussians.max_radii2D[visibility_filter], radii[visibility_filter]) - self.renderer.gaussians.add_densification_stats(viewspace_point_tensor, visibility_filter) - - if step % self.gs_params.densification_interval == 0: - self.renderer.gaussians.densify_and_prune(self.gs_params.densify_grad_threshold, min_opacity=0.005, extent=4, max_screen_size=1) - #self.renderer.gaussians.densify_and_prune_by_compatness(self.gs_params.K, min_opacity=0.01, extent=4, max_screen_size=1) - - #self.renderer.gaussians.densify_by_clone_and_split(self.gs_params.densify_grad_threshold, extent=4) - #self.renderer.gaussians.densify_by_compatness(self.gs_params.K) - #self.renderer.gaussians.prune(min_opacity=0.01, extent=4, max_screen_size=1, max_offset=0.1) - - if step % self.gs_params.opacity_reset_interval == 0: - self.renderer.gaussians.reset_opacity() - - comfy_pbar.update_absolute(step + 1) - - ender.record() - torch.cuda.synchronize() - #t = starter.elapsed_time(ender) - - self.need_update = True \ No newline at end of file diff --git a/algorithms/main_3DGS_renderer.py b/algorithms/main_3DGS_renderer.py deleted file mode 100644 index 3a138c5..0000000 --- a/algorithms/main_3DGS_renderer.py +++ /dev/null @@ -1,982 +0,0 @@ -import os -import math -import random -import numpy as np -from typing import Optional -from torchtyping import TensorType -from plyfile import PlyData, PlyElement - -import torch -from torch import nn -import torch.nn.functional as F - -pytorch3d_capable = True -try: - import pytorch3d - from pytorch3d.ops import knn_points -except ImportError: - pytorch3d_capable = False - -from kornia.geometry.conversions import ( - quaternion_to_rotation_matrix, -) - -from diff_gaussian_rasterization import ( - GaussianRasterizationSettings, - GaussianRasterizer, -) -from simple_knn._C import distCUDA2 - -from kiui.op import inverse_sigmoid - -from ..shared_utils.sh_utils import eval_sh, SH2RGB, RGB2SH -from ..mesh_processer.mesh import Mesh, PointCloud -from ..mesh_processer.mesh_utils import construct_list_of_gs_attributes, write_gs_ply, read_gs_ply - -def get_expon_lr_func( - lr_init, lr_final, lr_delay_steps=0, lr_delay_mult=1.0, max_steps=1000000 -): - - def helper(step): - if lr_init == lr_final: - # constant lr, ignore other params - return lr_init - if step < 0 or (lr_init == 0.0 and lr_final == 0.0): - # Disable this parameter - return 0.0 - if lr_delay_steps > 0: - # A kind of reverse cosine decay. - delay_rate = lr_delay_mult + (1 - lr_delay_mult) * np.sin( - 0.5 * np.pi * np.clip(step / lr_delay_steps, 0, 1) - ) - else: - delay_rate = 1.0 - t = np.clip(step / max_steps, 0, 1) - log_lerp = np.exp(np.log(lr_init) * (1 - t) + np.log(lr_final) * t) - return delay_rate * log_lerp - - return helper - - -def strip_lowerdiag(L): - uncertainty = torch.zeros((L.shape[0], 6), dtype=torch.float, device="cuda") - - uncertainty[:, 0] = L[:, 0, 0] - uncertainty[:, 1] = L[:, 0, 1] - uncertainty[:, 2] = L[:, 0, 2] - uncertainty[:, 3] = L[:, 1, 1] - uncertainty[:, 4] = L[:, 1, 2] - uncertainty[:, 5] = L[:, 2, 2] - return uncertainty - -def strip_symmetric(sym): - return strip_lowerdiag(sym) - -def gaussian_3d_coeff(xyzs, covs): - # xyzs: [N, 3] - # covs: [N, 6] - x, y, z = xyzs[:, 0], xyzs[:, 1], xyzs[:, 2] - a, b, c, d, e, f = covs[:, 0], covs[:, 1], covs[:, 2], covs[:, 3], covs[:, 4], covs[:, 5] - - # eps must be small enough !!! - inv_det = 1 / (a * d * f + 2 * e * c * b - e**2 * a - c**2 * d - b**2 * f + 1e-24) - inv_a = (d * f - e**2) * inv_det - inv_b = (e * c - b * f) * inv_det - inv_c = (e * b - c * d) * inv_det - inv_d = (a * f - c**2) * inv_det - inv_e = (b * c - e * a) * inv_det - inv_f = (a * d - b**2) * inv_det - - power = -0.5 * (x**2 * inv_a + y**2 * inv_d + z**2 * inv_f) - x * y * inv_b - x * z * inv_c - y * z * inv_e - - power[power > 0] = -1e10 # abnormal values... make weights 0 - - return torch.exp(power) - -def build_rotation(r): - norm = torch.sqrt(r[:,0]*r[:,0] + r[:,1]*r[:,1] + r[:,2]*r[:,2] + r[:,3]*r[:,3]) - - q = r / norm[:, None] - - R = torch.zeros((q.size(0), 3, 3), device='cuda') - - r = q[:, 0] - x = q[:, 1] - y = q[:, 2] - z = q[:, 3] - - R[:, 0, 0] = 1 - 2 * (y*y + z*z) - R[:, 0, 1] = 2 * (x*y - r*z) - R[:, 0, 2] = 2 * (x*z + r*y) - R[:, 1, 0] = 2 * (x*y + r*z) - R[:, 1, 1] = 1 - 2 * (x*x + z*z) - R[:, 1, 2] = 2 * (y*z - r*x) - R[:, 2, 0] = 2 * (x*z - r*y) - R[:, 2, 1] = 2 * (y*z + r*x) - R[:, 2, 2] = 1 - 2 * (x*x + y*y) - return R - -def build_scaling_rotation(s, r): - L = torch.zeros((s.shape[0], 3, 3), dtype=torch.float, device="cuda") - R = build_rotation(r) - - L[:,0,0] = s[:,0] - L[:,1,1] = s[:,1] - L[:,2,2] = s[:,2] - - L = R @ L - return L - -def random_point_in_triangle(v0, v1, v2): - """ - Given three vertices v0, v1, v2, sample a point uniformly in the triangle - Algorithm Reference: - https://math.stackexchange.com/questions/538458/how-to-sample-points-on-a-triangle-surface-in-3d - https://stackoverflow.com/questions/47410054/generate-random-locations-within-a-triangular-domain - """ - - r1 = random.random() - r2 = random.random() - - s1 = math.sqrt(r1) - return v0 * (1.0 - s1) + v1 * (1.0 - r2) * s1 + v2 * r2 * s1# - -def find_points_within_radius(query_points, vertex_points, d): - """ - Finds vertex points within a given radius for each query point. - - Args: - query_points (torch.Tensor): Tensor of shape (P1, 3) representing query points. - vertex_points (torch.Tensor): Tensor of shape (P2, 3) representing vertex points. - d (float): Radius within which to search for vertex points. - - Returns: - List[List[int]]: A list of lists, where each inner list contains indices of vertex points - within the radius for the corresponding query point. - """ - num_query_points = query_points.shape[0] - - # Calculate pairwise distances between query points and vertex points - distances = torch.norm(query_points[:, None] - vertex_points, dim=2) - - # Create a mask indicating which vertex points are within the radius - mask = distances <= d - - # Collect indices of vertex points within the radius for each query point - result = [] - for i in range(num_query_points): - indices_within_radius = torch.nonzero(mask[i]).squeeze().tolist() - result.append(indices_within_radius) - - return result - -@torch.no_grad() -def K_nearest_neighbors( - points: torch.Tensor, - K: int, - query: Optional[torch.Tensor] = None, - return_dist=False, -): - if not pytorch3d_capable: - raise ImportError("pytorch3d is not installed, which is required for KNN") - - # query/points: Tensor of shape (N, P1/P2, D) giving a batch of N point clouds, each containing up to P1/P2 points of dimension D - if query is None: - query = points - dist, idx, nn = knn_points(query[None, ...], points[None, ...], K=K, return_nn=True) - - # idx: Tensor of shape (N, P1, K) - # nn: Tensor of shape (N, P1, K, D) - - # take the index 1 since index 0 is the point itself - if not return_dist: - return nn[0, :, 1:, :], idx[0, :, 1:] - else: - return nn[0, :, 1:, :], idx[0, :, 1:], dist[0, :, 1:] - - -def distance_to_gaussian_surface(points, svec, rotmat, query): - """ - Calculate the radius of the gaussian along the direction, which determined by offset between points and query - Calculation using Mahalanobis distance - - Args: - points (Tensor): gaussians position of shape (*, 3) - svec (Tensor): gaussians scale vector of shape (*, 3) - rotmat : the rotation matrix of shape (*, 3, 3) - query (Tensor): query positions of shape (*, 3) - - Returns: - Distance of shape (*, 1): - """ - offset_dir = query - points - - offset_dir = torch.einsum("bij,bj->bi", rotmat.transpose(-1, -2), offset_dir) - offset_dir = F.normalize(offset_dir, dim=-1) - z = offset_dir[..., 2] - y = offset_dir[..., 1] - x = offset_dir[..., 0] - r_xy = torch.sqrt(x**2 + y**2 + 1e-10) - cos_theta = z - sin_theta = r_xy - cos_phi = x / r_xy - sin_phi = y / r_xy - - d2 = svec[..., 0] ** 2 * cos_phi**2 + svec[..., 1] ** 2 * sin_phi**2 - #r2 = svec[..., 2] ** 2 * cos_theta**2 + d2**2 * sin_theta**2 - r2 = svec[..., 2] ** 2 * cos_theta**2 + d2 * sin_theta**2 # same as: squared_dist = np.dot(diff.T, np.dot(np.linalg.inv(covariance), diff)) - - """ - Alternatively: - - def gaussian_squared_distance(query_point, mean, covariance): - # Calculate the difference vector - diff = query_point - mean - - # Compute the squared Mahalanobis distance - inv_covariance = np.linalg.inv(covariance) - squared_dist = np.dot(diff.T, np.dot(inv_covariance, diff)) - - return squared_dist - - # Example usage - mean = np.array([x0, y0, z0]) # Gaussian mean (origin position) - covariance = np.diag([sigma_x**2, sigma_y**2, sigma_z**2]) # Covariance matrix - - query_point = np.array([x_q, y_q, z_q]) # Query point - squared_dist_to_gaussian = gaussian_squared_distance(query_point, mean, covariance) - - print(f"Squared distance to Gaussian surface: {squared_dist_to_gaussian:.4f}") - """ - - return torch.sqrt(r2 + 1e-10) - -def qvec2rotmat_batched(qvec: TensorType["N", 4]): - return quaternion_to_rotation_matrix(qvec) - -class GaussianModel: - - def setup_functions(self): - def build_covariance_from_scaling_rotation(scaling, scaling_modifier, rotation): - L = build_scaling_rotation(scaling_modifier * scaling, rotation) - actual_covariance = L @ L.transpose(1, 2) - symm = strip_symmetric(actual_covariance) - return symm - - self.scaling_activation = torch.exp - self.scaling_inverse_activation = torch.log - - self.covariance_activation = build_covariance_from_scaling_rotation - - self.opacity_activation = torch.sigmoid - self.inverse_opacity_activation = inverse_sigmoid - - self.rotation_activation = torch.nn.functional.normalize - - - def __init__(self, sh_degree : int): - self.active_sh_degree = 0 - self.max_sh_degree = sh_degree - self.init_xyz = torch.empty(0) - self._xyz = torch.empty(0) - self._features_dc = torch.empty(0) # diffuse color - self._features_rest = torch.empty(0) # spherical harmonic coefficients - self._scaling = torch.empty(0) - self._rotation = torch.empty(0) # (w, x, y, z) - self._opacity = torch.empty(0) - self.max_radii2D = torch.empty(0) - self.xyz_gradient_accum = torch.empty(0) - self.denom = torch.empty(0) - self.optimizer = None - self.percent_dense = 0 - self.spatial_lr_scale = 0 - self.setup_functions() - - def capture(self): - return ( - self.active_sh_degree, - self._xyz, - self._features_dc, - self._features_rest, - self._scaling, - self._rotation, - self._opacity, - self.max_radii2D, - self.xyz_gradient_accum, - self.denom, - self.optimizer.state_dict(), - self.spatial_lr_scale, - ) - - def restore(self, model_args, training_args): - (self.active_sh_degree, - self._xyz, - self._features_dc, - self._features_rest, - self._scaling, - self._rotation, - self._opacity, - self.max_radii2D, - xyz_gradient_accum, - denom, - opt_dict, - self.spatial_lr_scale) = model_args - self.training_setup(training_args) - self.xyz_gradient_accum = xyz_gradient_accum - self.denom = denom - self.optimizer.load_state_dict(opt_dict) - - @property - def get_gaussians_num(self): - return self.init_xyz.shape[0] - - @property - def get_scaling(self): - return self.scaling_activation(self._scaling) - - @property - def get_rotation(self): - return self.rotation_activation(self._rotation) - - @property - def rotmat(self): - return qvec2rotmat_batched(self._rotation) - - @property - def get_xyz_offset(self): - return self.init_xyz - self._xyz - - @property - def get_xyz(self): - return self._xyz - - @property - def get_features(self): - features_dc = self._features_dc - features_rest = self._features_rest - return torch.cat((features_dc, features_rest), dim=1) - - @property - def get_opacity(self): - return self.opacity_activation(self._opacity) - - @torch.no_grad() - def extract_fields(self, resolution=128, num_blocks=16, relax_ratio=1.5): - # resolution: resolution of field - - block_size = 2 / num_blocks - - assert resolution % block_size == 0 - split_size = resolution // num_blocks - - opacities = self.get_opacity - - # pre-filter low opacity gaussians to save computation - mask = (opacities > 0.005).squeeze(1) - - opacities = opacities[mask] - xyzs = self.get_xyz[mask] - stds = self.get_scaling[mask] - - # normalize to ~ [-1, 1] - mn, mx = xyzs.amin(0), xyzs.amax(0) - self.center = (mn + mx) / 2 - self.scale = 1.8 / (mx - mn).amax().item() - - xyzs = (xyzs - self.center) * self.scale - stds = stds * self.scale - - covs = self.covariance_activation(stds, 1, self._rotation[mask]) - - # tile - device = opacities.device - occ = torch.zeros([resolution] * 3, dtype=torch.float32, device=device) - - X = torch.linspace(-1, 1, resolution).split(split_size) - Y = torch.linspace(-1, 1, resolution).split(split_size) - Z = torch.linspace(-1, 1, resolution).split(split_size) - - - # loop blocks (assume max size of gaussian is small than relax_ratio * block_size !!!) - for xi, xs in enumerate(X): - for yi, ys in enumerate(Y): - for zi, zs in enumerate(Z): - xx, yy, zz = torch.meshgrid(xs, ys, zs) - # sample points [M, 3] - pts = torch.cat([xx.reshape(-1, 1), yy.reshape(-1, 1), zz.reshape(-1, 1)], dim=-1).to(device) - # in-tile gaussians mask - vmin, vmax = pts.amin(0), pts.amax(0) - vmin -= block_size * relax_ratio - vmax += block_size * relax_ratio - mask = (xyzs < vmax).all(-1) & (xyzs > vmin).all(-1) - # if hit no gaussian, continue to next block - if not mask.any(): - continue - mask_xyzs = xyzs[mask] # [L, 3] - mask_covs = covs[mask] # [L, 6] - mask_opas = opacities[mask].view(1, -1) # [L, 1] --> [1, L] - - # query per point-gaussian pair. - g_pts = pts.unsqueeze(1).repeat(1, mask_covs.shape[0], 1) - mask_xyzs.unsqueeze(0) # [M, L, 3] - g_covs = mask_covs.unsqueeze(0).repeat(pts.shape[0], 1, 1) # [M, L, 6] - - # batch on gaussian to avoid OOM - batch_g = 1024 - val = 0 - for start in range(0, g_covs.shape[1], batch_g): - end = min(start + batch_g, g_covs.shape[1]) - w = gaussian_3d_coeff(g_pts[:, start:end].reshape(-1, 3), g_covs[:, start:end].reshape(-1, 6)).reshape(pts.shape[0], -1) # [M, l] - val += (mask_opas[:, start:end] * w).sum(-1) - - occ[xi * split_size: xi * split_size + len(xs), - yi * split_size: yi * split_size + len(ys), - zi * split_size: zi * split_size + len(zs)] = val.reshape(len(xs), len(ys), len(zs)) - - return occ - - def get_covariance(self, scaling_modifier = 1, gaussain_idx = None): - if gaussain_idx is None: - return self.covariance_activation(self.get_scaling, scaling_modifier, self._rotation) - else: - return self.covariance_activation(self.get_scaling[gaussain_idx], scaling_modifier, self._rotation[gaussain_idx]) - - def oneupSHdegree(self): - if self.active_sh_degree < self.max_sh_degree: - self.active_sh_degree += 1 - - def create_from_pcd(self, pcd : PointCloud, spatial_lr_scale : float = 1): - self.spatial_lr_scale = spatial_lr_scale - fused_point_cloud = torch.tensor(np.asarray(pcd.points)).float().cuda() - fused_color = RGB2SH(torch.tensor(np.asarray(pcd.colors)).float().cuda()) - features = torch.zeros((fused_color.shape[0], 3, (self.max_sh_degree + 1) ** 2)).float().cuda() - features[:, :3, 0 ] = fused_color - features[:, 3:, 1:] = 0.0 - - print("Number of points at initialisation : ", fused_point_cloud.shape[0]) - - dist2 = torch.clamp_min(distCUDA2(torch.from_numpy(np.asarray(pcd.points)).float().cuda()), 0.0000001) - scales = torch.log(torch.sqrt(dist2))[...,None].repeat(1, 3) - rots = torch.zeros((fused_point_cloud.shape[0], 4), device="cuda") - rots[:, 0] = 1 - - opacities = inverse_sigmoid(0.1 * torch.ones((fused_point_cloud.shape[0], 1), dtype=torch.float, device="cuda")) - - self.init_xyz = fused_point_cloud.clone().detach() - self._xyz = nn.Parameter(fused_point_cloud.requires_grad_(True)) - self._features_dc = nn.Parameter(features[:,:,0:1].transpose(1, 2).contiguous().requires_grad_(True)) - self._features_rest = nn.Parameter(features[:,:,1:].transpose(1, 2).contiguous().requires_grad_(True)) - self._scaling = nn.Parameter(scales.requires_grad_(True)) - self._rotation = nn.Parameter(rots.requires_grad_(True)) - self._opacity = nn.Parameter(opacities.requires_grad_(True)) - self.max_radii2D = torch.zeros((self.get_xyz.shape[0]), device="cuda") - - def training_setup(self, training_args): - self.percent_dense = training_args.percent_dense - self.xyz_gradient_accum = torch.zeros((self.get_xyz.shape[0], 1), device="cuda") - self.denom = torch.zeros((self.get_xyz.shape[0], 1), device="cuda") - - l = [ - {'params': [self._xyz], 'lr': training_args.position_lr_init * self.spatial_lr_scale, "name": "xyz"}, - {'params': [self._features_dc], 'lr': training_args.feature_lr, "name": "f_dc"}, - {'params': [self._features_rest], 'lr': training_args.feature_lr / 20.0, "name": "f_rest"}, - {'params': [self._opacity], 'lr': training_args.opacity_lr, "name": "opacity"}, - {'params': [self._scaling], 'lr': training_args.scaling_lr, "name": "scaling"}, - {'params': [self._rotation], 'lr': training_args.rotation_lr, "name": "rotation"} - ] - - self.optimizer = torch.optim.Adam(l, lr=0.0, eps=1e-15) - self.xyz_scheduler_args = get_expon_lr_func(lr_init=training_args.position_lr_init*self.spatial_lr_scale, - lr_final=training_args.position_lr_final*self.spatial_lr_scale, - lr_delay_mult=training_args.position_lr_delay_mult, - max_steps=training_args.position_lr_max_steps) - - def update_learning_rate(self, iteration): - ''' Learning rate scheduling per step ''' - for param_group in self.optimizer.param_groups: - if param_group["name"] == "xyz": - lr = self.xyz_scheduler_args(iteration) - param_group['lr'] = lr - return lr - - def reset_opacity(self): - opacities_new = inverse_sigmoid(torch.min(self.get_opacity, torch.ones_like(self.get_opacity)*0.01)) - optimizable_tensors = self.replace_tensor_to_optimizer(opacities_new, "opacity") - self._opacity = optimizable_tensors["opacity"] - - def get_points_cloud(self): - xyz = self._xyz.detach().cpu().numpy() - normals = np.zeros_like(xyz) - shs = self.get_features.detach().cpu().numpy() - pcd = PointCloud(points=xyz, colors=SH2RGB(shs), normals=normals) - return pcd - - def to_ply(self): - xyz = self._xyz.detach().cpu().numpy() - normals = np.zeros_like(xyz) - f_dc = self._features_dc.detach().transpose(1, 2).flatten(start_dim=1).contiguous().cpu().numpy() - f_rest = self._features_rest.detach().transpose(1, 2).flatten(start_dim=1).contiguous().cpu().numpy() - opacities = self._opacity.detach().cpu().numpy() - scale = self._scaling.detach().cpu().numpy() - rotation = self._rotation.detach().cpu().numpy() - - return write_gs_ply(xyz, normals, f_dc, f_rest, opacities, scale, rotation, construct_list_of_gs_attributes(self._features_dc, self._features_rest, self._scaling, self._rotation)) - - def create_from_ply(self, plydata): - xyz, features_dc, features_extra, opacities, scales, rots = read_gs_ply(plydata) - - self._xyz = nn.Parameter(torch.tensor(xyz, dtype=torch.float, device="cuda").requires_grad_(True)) - self.init_xyz = self._xyz.clone().detach() - self._features_dc = nn.Parameter(torch.tensor(features_dc, dtype=torch.float, device="cuda").transpose(1, 2).contiguous().requires_grad_(True)) - self._features_rest = nn.Parameter(torch.tensor(features_extra, dtype=torch.float, device="cuda").transpose(1, 2).contiguous().requires_grad_(True)) - self._opacity = nn.Parameter(torch.tensor(opacities, dtype=torch.float, device="cuda").requires_grad_(True)) - self._scaling = nn.Parameter(torch.tensor(scales, dtype=torch.float, device="cuda").requires_grad_(True)) - self._rotation = nn.Parameter(torch.tensor(rots, dtype=torch.float, device="cuda").requires_grad_(True)) - self.max_radii2D = torch.zeros((self.get_xyz.shape[0]), device="cuda") - - self.active_sh_degree = self.max_sh_degree - - def create_from_mesh(self, mesh, num_pts): - """ - Sample gaussians uniformly for each face, this method can capture the structure of the 3D meshes well even for the fine structure e.g. fingers - """ - # In .obj file, first index is 1 instead of zero - vertices = np.concatenate([[[0., 0., 0.]], mesh.v.detach().cpu().numpy()]) - #normals = np.concatenate([[[0., 0., 0.]], mesh.n.detach().cpu().numpy()]) - - all_points = [] - num_pts_per_face = math.ceil(num_pts / mesh.f.shape[0]) - for triangle_face in mesh.f.detach().cpu().numpy(): - v0 = vertices[triangle_face[0]] - v1 = vertices[triangle_face[1]] - v2 = vertices[triangle_face[2]] - for i in range(num_pts_per_face): - all_points.append(random_point_in_triangle(v0, v1, v2)) - - num_pts = len(all_points) - - xyz = np.array(all_points) - shs = np.random.random((num_pts, 3)) / 255.0 - pcd = PointCloud( - points=xyz, colors=SH2RGB(shs), normals=np.zeros((num_pts, 3)) - ) - self.create_from_pcd(pcd, 10) - - def create_from_uv_data(self, uv_grids_data): - """ - Idealy this method should capture the most information for the texture, - but depends on the UV of 3D meshes, fine structure like fingers could have too little gaussians to form the proper structure, - also the number of gaussians is too big even for 1K texture - """ - if uv_grids_data is not None: - uv_coords, uv_coords_3d, uv_normals_3d = uv_grids_data - - num_pts = len(uv_coords_3d) - xyz = np.array(uv_coords_3d) - shs = np.random.random((num_pts, 3)) / 255.0 - pcd = PointCloud( - points=xyz, colors=SH2RGB(shs), normals=np.zeros((num_pts, 3)) - ) - self.create_from_pcd(pcd, 10) - - def replace_tensor_to_optimizer(self, tensor, name): - optimizable_tensors = {} - for group in self.optimizer.param_groups: - if group["name"] == name: - stored_state = self.optimizer.state.get(group['params'][0], None) - stored_state["exp_avg"] = torch.zeros_like(tensor) - stored_state["exp_avg_sq"] = torch.zeros_like(tensor) - - del self.optimizer.state[group['params'][0]] - group["params"][0] = nn.Parameter(tensor.requires_grad_(True)) - self.optimizer.state[group['params'][0]] = stored_state - - optimizable_tensors[group["name"]] = group["params"][0] - return optimizable_tensors - - def _prune_optimizer(self, mask): - optimizable_tensors = {} - for group in self.optimizer.param_groups: - stored_state = self.optimizer.state.get(group['params'][0], None) - if stored_state is not None: - stored_state["exp_avg"] = stored_state["exp_avg"][mask] - stored_state["exp_avg_sq"] = stored_state["exp_avg_sq"][mask] - - del self.optimizer.state[group['params'][0]] - group["params"][0] = nn.Parameter((group["params"][0][mask].requires_grad_(True))) - self.optimizer.state[group['params'][0]] = stored_state - - optimizable_tensors[group["name"]] = group["params"][0] - else: - group["params"][0] = nn.Parameter(group["params"][0][mask].requires_grad_(True)) - optimizable_tensors[group["name"]] = group["params"][0] - return optimizable_tensors - - def prune_points(self, mask): - valid_points_mask = ~mask - optimizable_tensors = self._prune_optimizer(valid_points_mask) - - self.init_xyz = self.init_xyz[valid_points_mask] - - self._xyz = optimizable_tensors["xyz"] - self._features_dc = optimizable_tensors["f_dc"] - self._features_rest = optimizable_tensors["f_rest"] - self._opacity = optimizable_tensors["opacity"] - self._scaling = optimizable_tensors["scaling"] - self._rotation = optimizable_tensors["rotation"] - - self.xyz_gradient_accum = self.xyz_gradient_accum[valid_points_mask] - - self.denom = self.denom[valid_points_mask] - self.max_radii2D = self.max_radii2D[valid_points_mask] - - def cat_tensors_to_optimizer(self, tensors_dict): - optimizable_tensors = {} - for group in self.optimizer.param_groups: - assert len(group["params"]) == 1 - extension_tensor = tensors_dict[group["name"]] - stored_state = self.optimizer.state.get(group['params'][0], None) - if stored_state is not None: - - stored_state["exp_avg"] = torch.cat((stored_state["exp_avg"], torch.zeros_like(extension_tensor)), dim=0) - stored_state["exp_avg_sq"] = torch.cat((stored_state["exp_avg_sq"], torch.zeros_like(extension_tensor)), dim=0) - - del self.optimizer.state[group['params'][0]] - group["params"][0] = nn.Parameter(torch.cat((group["params"][0], extension_tensor), dim=0).requires_grad_(True)) - self.optimizer.state[group['params'][0]] = stored_state - - optimizable_tensors[group["name"]] = group["params"][0] - else: - group["params"][0] = nn.Parameter(torch.cat((group["params"][0], extension_tensor), dim=0).requires_grad_(True)) - optimizable_tensors[group["name"]] = group["params"][0] - - return optimizable_tensors - - def densification_postfix(self, new_xyz, new_features_dc, new_features_rest, new_opacities, new_scaling, new_rotation): - new_params = { - "xyz": new_xyz, - "f_dc": new_features_dc, - "f_rest": new_features_rest, - "opacity": new_opacities, - "scaling" : new_scaling, - "rotation" : new_rotation - } - - self.densify_with_new_params(new_params) - - def densify_with_new_params(self, new_params): - optimizable_tensors = self.cat_tensors_to_optimizer(new_params) - self._xyz = optimizable_tensors["xyz"] - self._features_dc = optimizable_tensors["f_dc"] - self._features_rest = optimizable_tensors["f_rest"] - self._opacity = optimizable_tensors["opacity"] - self._scaling = optimizable_tensors["scaling"] - self._rotation = optimizable_tensors["rotation"] - - self.xyz_gradient_accum = torch.zeros((self.get_xyz.shape[0], 1), device="cuda") - self.denom = torch.zeros((self.get_xyz.shape[0], 1), device="cuda") - self.max_radii2D = torch.zeros((self.get_xyz.shape[0]), device="cuda") - - def densify_and_split(self, grads, grad_threshold, scene_extent, N=2): - n_init_points = self.get_xyz.shape[0] - # Extract points that satisfy the gradient condition - padded_grad = torch.zeros((n_init_points), device="cuda") - padded_grad[:grads.shape[0]] = grads.squeeze() - selected_pts_mask = torch.where(padded_grad >= grad_threshold, True, False) - selected_pts_mask = torch.logical_and(selected_pts_mask, - torch.max(self.get_scaling, dim=1).values > self.percent_dense*scene_extent - ) - - stds = self.get_scaling[selected_pts_mask].repeat(N,1) - means =torch.zeros((stds.size(0), 3),device="cuda") - samples = torch.normal(mean=means, std=stds) - rots = build_rotation(self._rotation[selected_pts_mask]).repeat(N,1,1) - new_xyz = torch.bmm(rots, samples.unsqueeze(-1)).squeeze(-1) + self.get_xyz[selected_pts_mask].repeat(N, 1) - new_scaling = self.scaling_inverse_activation(self.get_scaling[selected_pts_mask].repeat(N,1) / (0.8*N)) - new_rotation = self._rotation[selected_pts_mask].repeat(N,1) - new_features_dc = self._features_dc[selected_pts_mask].repeat(N,1,1) - new_features_rest = self._features_rest[selected_pts_mask].repeat(N,1,1) - new_opacity = self._opacity[selected_pts_mask].repeat(N,1) - - # Update reference position for gaussians - self.init_xyz = torch.cat((self.init_xyz, self.init_xyz[selected_pts_mask].repeat(N,1)), dim=0) - - self.densification_postfix(new_xyz, new_features_dc, new_features_rest, new_opacity, new_scaling, new_rotation) - - prune_filter = torch.cat((selected_pts_mask, torch.zeros(N * selected_pts_mask.sum(), device="cuda", dtype=bool))) - self.prune_points(prune_filter) - - def densify_and_clone(self, grads, grad_threshold, scene_extent): - # Extract points that satisfy the gradient condition - selected_pts_mask = torch.where(torch.norm(grads, dim=-1) >= grad_threshold, True, False) - selected_pts_mask = torch.logical_and(selected_pts_mask, - torch.max(self.get_scaling, dim=1).values <= self.percent_dense*scene_extent - ) - - new_xyz = self._xyz[selected_pts_mask] - new_features_dc = self._features_dc[selected_pts_mask] - new_features_rest = self._features_rest[selected_pts_mask] - new_opacities = self._opacity[selected_pts_mask] - new_scaling = self._scaling[selected_pts_mask] - new_rotation = self._rotation[selected_pts_mask] - - # Update reference position for gaussians - self.init_xyz = torch.cat((self.init_xyz, self.init_xyz[selected_pts_mask]), dim=0) - - self.densification_postfix(new_xyz, new_features_dc, new_features_rest, new_opacities, new_scaling, new_rotation) - - def densify_by_compatnes_with_idx(self, idx): - nn_scaling = self._scaling[idx] - nn_rotmat = self.rotmat[idx] - nn_pos = self._xyz[idx] - - nn_gaussian_surface_dist = distance_to_gaussian_surface( - nn_pos, nn_scaling, nn_rotmat, self._xyz - ) - gaussian_surface_dist = distance_to_gaussian_surface( - self._xyz, self._scaling, self.rotmat, nn_pos - ) - - dist_to_nn = torch.norm(nn_pos - self._xyz, dim=-1) - selected_pts_mask = (gaussian_surface_dist + nn_gaussian_surface_dist) < dist_to_nn - new_direction = (nn_pos - self._xyz) / dist_to_nn[..., None] - new_xyz = ( - self._xyz - + new_direction * (dist_to_nn + gaussian_surface_dist - nn_gaussian_surface_dist)[..., None] - / 2.0 - )[selected_pts_mask] - new_features_dc = self._features_dc[selected_pts_mask] - new_features_rest = self._features_rest[selected_pts_mask] - new_raw_alpha = self._opacity[selected_pts_mask] - new_raw_svec = self.scaling_inverse_activation( - torch.ones_like(self._scaling[selected_pts_mask]) - * (dist_to_nn - gaussian_surface_dist - nn_gaussian_surface_dist)[selected_pts_mask][..., None] - / 6.0 - ) - # print(torch.ones_like(self.svec.data[selected_pts_mask]).shape) - # print( - # (dist_to_nn - gaussian_surface_dist - nn_gaussian_surface_dist)[selected_pts_mask].shape - # ) - new_qvec = self._rotation[selected_pts_mask] - - # Update reference position for gaussians - self.init_xyz = torch.cat((self.init_xyz, self.init_xyz[selected_pts_mask]), dim=0) - - new_params = { - "xyz": new_xyz, - "f_dc": new_features_dc, - "f_rest": new_features_rest, - "opacity": new_raw_alpha, - "scaling": new_raw_svec, - "rotation": new_qvec - } - - return new_params - - def densify_by_compatness(self, K=1): - _, idx = K_nearest_neighbors(self._xyz, K=K+1) - - new_params_list = [] - for i in range(K): - new_params = self.densify_by_compatnes_with_idx(idx[:, i]) - new_params_list.append(new_params) - new_params = {} - for key in new_params_list[0].keys(): - new_params[key] = torch.cat([p[key] for p in new_params_list], dim=0) - - self.densify_with_new_params(new_params) - - #num_densified = new_params["xyz"].shape[0] - - def densify_by_clone_and_split(self, max_grad, extent): - grads = self.xyz_gradient_accum / self.denom - grads[grads.isnan()] = 0.0 - - self.densify_and_clone(grads, max_grad, extent) - self.densify_and_split(grads, max_grad, extent) - - def densify_and_prune(self, max_grad, min_opacity, extent, max_screen_size): - self.densify_by_clone_and_split(max_grad, extent) - self.prune(min_opacity, extent, max_screen_size) - - def densify_and_prune_by_compatness(self, K, min_opacity, extent, max_screen_size): - self.densify_by_compatness(K) - self.prune(min_opacity, extent, max_screen_size) - - def add_densification_stats(self, viewspace_point_tensor, update_filter): - self.xyz_gradient_accum[update_filter] += torch.norm(viewspace_point_tensor.grad[update_filter,:2], dim=-1, keepdim=True) - self.denom[update_filter] += 1 - - def prune(self, min_opacity, extent, max_screen_size, max_offset=0): - prune_mask = (self.get_opacity < min_opacity).squeeze() - if max_screen_size: - big_points_vs = self.max_radii2D > max_screen_size - big_points_ws = self.get_scaling.max(dim=1).values > 0.1 * extent - #big_points_os = self.get_xyz_offset.norm(dim=1) > max_offset - #prune_mask = torch.logical_or(torch.logical_or(torch.logical_or(prune_mask, big_points_vs), big_points_ws), big_points_os) - prune_mask = torch.logical_or(torch.logical_or(prune_mask, big_points_vs), big_points_ws) - self.prune_points(prune_mask) - - torch.cuda.empty_cache() - -class GaussianSplattingRenderer: - def __init__(self, sh_degree=3, white_background=True, radius=1): - - self.sh_degree = sh_degree - self.white_background = white_background - self.radius = radius - - self.gaussians = GaussianModel(sh_degree) - - self.bg_color = torch.tensor( - [1, 1, 1] if white_background else [0, 0, 0], - dtype=torch.float32, - device="cuda", - ) - - def initialize(self, input=None, num_pts=5000, radius=0.5): - # load checkpoint - if isinstance(input, Mesh): - # load from 3D mesh - self.gaussians.create_from_mesh(input, num_pts) - elif isinstance(input, PlyData): - self.gaussians.create_from_ply(input) - elif isinstance(input, PointCloud): - # load from a provided pcd - self.gaussians.create_from_pcd(input, 1) - elif input is None: - # init from random point cloud - - phis = np.random.random((num_pts,)) * 2 * np.pi - costheta = np.random.random((num_pts,)) * 2 - 1 - thetas = np.arccos(costheta) - mu = np.random.random((num_pts,)) - radius = radius * np.cbrt(mu) - x = radius * np.sin(thetas) * np.cos(phis) - y = radius * np.sin(thetas) * np.sin(phis) - z = radius * np.cos(thetas) - xyz = np.stack((x, y, z), axis=1) - # xyz = np.random.random((num_pts, 3)) * 2.6 - 1.3 - - shs = np.random.random((num_pts, 3)) / 255.0 - pcd = PointCloud( - points=xyz, colors=SH2RGB(shs), normals=np.zeros((num_pts, 3)) - ) - self.gaussians.create_from_pcd(pcd, 10) - else: - self.gaussians.create_from_uv_data(input) - - def render( - self, - viewpoint_camera, - scaling_modifier=1.0, - gaussain_idx=None, - bg_color=None, - override_color=None, - compute_cov3D_python=False, - convert_SHs_python=False, - ): - # Set up rasterization configuration - tanfovx = math.tan(viewpoint_camera.FoVx * 0.5) - tanfovy = math.tan(viewpoint_camera.FoVy * 0.5) - - raster_settings = GaussianRasterizationSettings( - image_height=int(viewpoint_camera.image_height), - image_width=int(viewpoint_camera.image_width), - tanfovx=tanfovx, - tanfovy=tanfovy, - bg=self.bg_color if bg_color is None else bg_color, - scale_modifier=scaling_modifier, - viewmatrix=viewpoint_camera.world_view_transform, - projmatrix=viewpoint_camera.full_proj_transform, - sh_degree=self.gaussians.active_sh_degree, - campos=viewpoint_camera.camera_center, - prefiltered=False, - debug=False, - ) - - rasterizer = GaussianRasterizer(raster_settings=raster_settings) - - gaussians_xyz = self.gaussians.get_xyz - gaussians_features = self.gaussians.get_features - gaussians_opacity = self.gaussians.get_opacity - - # If precomputed 3d covariance is provided, use it. If not, then it will be computed from - # scaling / rotation by the rasterizer. - gaussians_scales = None - gaussians_rotations = None - cov3D_precomp = None - if compute_cov3D_python: - cov3D_precomp = self.gaussians.get_covariance(scaling_modifier, gaussain_idx) - else: - gaussians_scales = self.gaussians.get_scaling - gaussians_rotations = self.gaussians.get_rotation - - if gaussain_idx is not None: - gaussians_xyz = gaussians_xyz[gaussain_idx] - gaussians_features = gaussians_features[gaussain_idx] - gaussians_opacity = gaussians_opacity[gaussain_idx] - if cov3D_precomp is None: - gaussians_scales = gaussians_scales[gaussain_idx] - gaussians_rotations = gaussians_rotations[gaussain_idx] - - # Create zero tensor. We will use it to make pytorch return gradients of the 2D (screen-space) means - screenspace_points = ( - torch.zeros_like( - gaussians_xyz, - dtype=gaussians_xyz.dtype, - requires_grad=True, - device="cuda", - ) - + 0 - ) - try: - screenspace_points.retain_grad() - except: - pass - - # If precomputed colors are provided, use them. Otherwise, if it is desired to precompute colors - # from SHs in Python, do it. If not, then SH -> RGB conversion will be done by rasterizer. - shs = None - colors_precomp = None - if override_color is None: - if convert_SHs_python: - shs_view = self.gaussians_features.transpose(1, 2).view( - -1, 3, (self.gaussians.max_sh_degree + 1) ** 2 - ) - dir_pp = gaussians_xyz - viewpoint_camera.camera_center.repeat( - gaussians_features.shape[0], 1 - ) - dir_pp_normalized = dir_pp / dir_pp.norm(dim=1, keepdim=True) - sh2rgb = eval_sh( - self.gaussians.active_sh_degree, shs_view, dir_pp_normalized - ) - colors_precomp = torch.clamp_min(sh2rgb + 0.5, 0.0) - else: - shs = gaussians_features - else: - colors_precomp = override_color - - # Rasterize visible Gaussians to image, obtain their radii (on screen). - rendered_image, radii, rendered_depth, rendered_alpha = rasterizer( - means3D=gaussians_xyz, - means2D=screenspace_points, - shs=shs, - colors_precomp=colors_precomp, - opacities=gaussians_opacity, - scales=gaussians_scales, - rotations=gaussians_rotations, - cov3D_precomp=cov3D_precomp, - ) - - rendered_image = rendered_image.clamp(0, 1) - - # Those Gaussians that were frustum culled or had a radius of 0 were not visible. - # They will be excluded from value updates used in the splitting criteria. - return { - "image": rendered_image, # rgb - "depth": rendered_depth, - "alpha": rendered_alpha, - "viewspace_points": screenspace_points, - "visibility_filter": radii > 0, - "radii": radii, - } \ No newline at end of file diff --git a/algorithms/metrics_utils.py b/algorithms/metrics_utils.py deleted file mode 100644 index 57a5074..0000000 --- a/algorithms/metrics_utils.py +++ /dev/null @@ -1,9 +0,0 @@ -import torch - -def sdf_reg_loss(sdf, all_edges): - sdf_f1x6x2 = sdf[all_edges.reshape(-1)].reshape(-1,2) - mask = torch.sign(sdf_f1x6x2[...,0]) != torch.sign(sdf_f1x6x2[...,1]) - sdf_f1x6x2 = sdf_f1x6x2[mask] - sdf_diff = torch.nn.functional.binary_cross_entropy_with_logits(sdf_f1x6x2[...,0], (sdf_f1x6x2[...,1] > 0).float()) + \ - torch.nn.functional.binary_cross_entropy_with_logits(sdf_f1x6x2[...,1], (sdf_f1x6x2[...,0] > 0).float()) - return sdf_diff \ No newline at end of file diff --git a/algorithms/nerf_marching_cubes_converter.py b/algorithms/nerf_marching_cubes_converter.py deleted file mode 100644 index f97de5e..0000000 --- a/algorithms/nerf_marching_cubes_converter.py +++ /dev/null @@ -1,426 +0,0 @@ -import tqdm -import numpy as np -import torch -import torch.nn as nn -import torch.nn.functional as F - -import mcubes -import nerfacc -import nvdiffrast.torch as dr - -from kiui.mesh_utils import clean_mesh, decimate_mesh -from kiui.mesh_utils import laplacian_smooth_loss, normal_consistency -from kiui.op import uv_padding, inverse_sigmoid -from kiui.cam import orbit_camera, get_perspective -from kiui.nn import MLP, trunc_exp - -from ..mesh_processer.mesh import Mesh -from LGM.core.options import Options -from LGM.core.gs import GaussianRenderer -from LGM.core.utils import get_rays - -# Triple renderer of gaussians, gaussian, and diso mesh. -# gaussian --> nerf --> mesh -class GSConverterNeRFMarchingCubes(nn.Module): - def __init__(self, opt: Options, gs_ply): - super().__init__() - from kiui.gridencoder import GridEncoder - - self.opt = opt - self.device = torch.device("cuda") - - # gs renderer - self.tan_half_fov = np.tan(0.5 * np.deg2rad(opt.fovy)) - self.proj_matrix = torch.zeros(4, 4, dtype=torch.float32, device=self.device) - self.proj_matrix[0, 0] = 1 / self.tan_half_fov - self.proj_matrix[1, 1] = 1 / self.tan_half_fov - self.proj_matrix[2, 2] = (opt.zfar + opt.znear) / (opt.zfar - opt.znear) - self.proj_matrix[3, 2] = - (opt.zfar * opt.znear) / (opt.zfar - opt.znear) - self.proj_matrix[2, 3] = 1 - - self.gs_renderer = GaussianRenderer(opt) - - self.gaussians = self.gs_renderer.create_from_ply(gs_ply).to(self.device) - - # nerf renderer - if not self.opt.force_cuda_rast: - self.glctx = dr.RasterizeGLContext() - else: - self.glctx = dr.RasterizeCudaContext() - - self.step = 0 - self.render_step_size = 5e-3 - self.aabb = torch.tensor([-1.0, -1.0, -1.0, 1.0, 1.0, 1.0], device=self.device) - self.estimator = nerfacc.OccGridEstimator(roi_aabb=self.aabb, resolution=64, levels=1) - - self.encoder_density = GridEncoder(num_levels=12) # VMEncoder(output_dim=16, mode='sum') - self.encoder = GridEncoder(num_levels=12) - self.mlp_density = MLP(self.encoder_density.output_dim, 1, 32, 2, bias=False) - self.mlp = MLP(self.encoder.output_dim, 3, 32, 2, bias=False) - - # mesh renderer - self.proj = torch.from_numpy(get_perspective(self.opt.fovy)).float().to(self.device) - self.v = self.f = None - self.vt = self.ft = None - self.deform = None - self.albedo = None - - - @torch.no_grad() - def render_gs(self, pose): - - cam_poses = torch.from_numpy(pose).unsqueeze(0).to(self.device) - cam_poses[:, :3, 1:3] *= -1 # invert up & forward direction - - # cameras needed by gaussian rasterizer - cam_view = torch.inverse(cam_poses).transpose(1, 2) # [V, 4, 4] - cam_view_proj = cam_view @ self.proj_matrix # [V, 4, 4] - cam_pos = - cam_poses[:, :3, 3] # [V, 3] - - out = self.gs_renderer.render(self.gaussians.unsqueeze(0), cam_view.unsqueeze(0), cam_view_proj.unsqueeze(0), cam_pos.unsqueeze(0)) - image = out['image'].squeeze(1).squeeze(0) # [C, H, W] - alpha = out['alpha'].squeeze(2).squeeze(1).squeeze(0) # [H, W] - - return image, alpha - - def get_density(self, xs): - # xs: [..., 3] - prefix = xs.shape[:-1] - xs = xs.view(-1, 3) - feats = self.encoder_density(xs) - density = trunc_exp(self.mlp_density(feats)) - density = density.view(*prefix, 1) - return density - - def render_nerf(self, pose): - - pose = torch.from_numpy(pose.astype(np.float32)).to(self.device) - - # get rays - resolution = self.opt.output_size - rays_o, rays_d = get_rays(pose, resolution, resolution, self.opt.fovy) - hw = rays_o.shape[0] * rays_o.shape[1] - rays_o = rays_o.view(hw, 3) - rays_d = rays_d.view(hw, 3) - - # update occ grid - if self.training: - def occ_eval_fn(xs): - sigmas = self.get_density(xs) - return self.render_step_size * sigmas - - self.estimator.update_every_n_steps(self.step, occ_eval_fn=occ_eval_fn, occ_thre=0.01, n=8) - self.step += 1 - - # render - def sigma_fn(t_starts, t_ends, ray_indices): - t_origins = rays_o[ray_indices] - t_dirs = rays_d[ray_indices] - xs = t_origins + t_dirs * (t_starts + t_ends)[:, None] / 2.0 - sigmas = self.get_density(xs) - return sigmas.squeeze(-1) - - with torch.no_grad(): - ray_indices, t_starts, t_ends = self.estimator.sampling( - rays_o, - rays_d, - sigma_fn=sigma_fn, - near_plane=0.01, - far_plane=100, - render_step_size=self.render_step_size, - stratified=self.training, - cone_angle=0, - ) - - t_origins = rays_o[ray_indices] - t_dirs = rays_d[ray_indices] - xs = t_origins + t_dirs * (t_starts + t_ends)[:, None] / 2.0 - sigmas = self.get_density(xs).squeeze(-1) - rgbs = torch.sigmoid(self.mlp(self.encoder(xs))) - - n_rays=rays_o.shape[0] - weights, trans, alphas = nerfacc.render_weight_from_density(t_starts, t_ends, sigmas, ray_indices=ray_indices, n_rays=n_rays) - color = nerfacc.accumulate_along_rays(weights, values=rgbs, ray_indices=ray_indices, n_rays=n_rays) - alpha = nerfacc.accumulate_along_rays(weights, values=None, ray_indices=ray_indices, n_rays=n_rays) - - color = color + 1 * (1.0 - alpha) - - color = color.view(resolution, resolution, 3).clamp(0, 1).permute(2, 0, 1).contiguous() - alpha = alpha.view(resolution, resolution).clamp(0, 1).contiguous() - - return color, alpha - - def fit_nerf(self, iters=512, resolution=128): - - self.opt.output_size = resolution - - optimizer = torch.optim.Adam([ - {'params': self.encoder_density.parameters(), 'lr': 1e-2}, - {'params': self.encoder.parameters(), 'lr': 1e-2}, - {'params': self.mlp_density.parameters(), 'lr': 1e-3}, - {'params': self.mlp.parameters(), 'lr': 1e-3}, - ]) - - print(f"[INFO] fitting nerf...") - imgs, alphas = [], [] - pbar = tqdm.trange(iters) - for i in pbar: - - ver = np.random.randint(-45, 45) - hor = np.random.randint(-180, 180) - rad = np.random.uniform(1.5, 3.0) - - pose = orbit_camera(ver, hor, rad) - - image_gt, alpha_gt = self.render_gs(pose) - imgs.append(image_gt.permute(1, 2, 0).unsqueeze(0)) - alphas.append(alpha_gt.unsqueeze(0)) - image_pred, alpha_pred = self.render_nerf(pose) - - # if i % 200 == 0: - # kiui.vis.plot_image(image_gt, alpha_gt, image_pred, alpha_pred) - - loss_mse = F.mse_loss(image_pred, image_gt) + 0.1 * F.mse_loss(alpha_pred, alpha_gt) - loss = loss_mse #+ 0.1 * self.encoder_density.tv_loss() #+ 0.0001 * self.encoder_density.density_loss() - - loss.backward() - self.encoder_density.grad_total_variation(1e-8) - - optimizer.step() - optimizer.zero_grad() - - pbar.set_description(f"MSE = {loss_mse.item():.6f}") - - print(f"[INFO] finished fitting nerf!") - - return torch.cat(imgs, dim=0), torch.cat(alphas, dim=0) - - def render_mesh(self, pose): - - h = w = self.opt.output_size - - v = self.v + self.deform - f = self.f - - pose = torch.from_numpy(pose.astype(np.float32)).to(v.device) - - # get v_clip and render rgb - v_cam = torch.matmul(F.pad(v, pad=(0, 1), mode='constant', value=1.0), torch.inverse(pose).T).float().unsqueeze(0) - v_clip = v_cam @ self.proj.T - - rast, rast_db = dr.rasterize(self.glctx, v_clip, f, (h, w)) - - alpha = torch.clamp(rast[..., -1:], 0, 1).contiguous() # [1, H, W, 1] - alpha = dr.antialias(alpha, rast, v_clip, f).clamp(0, 1).squeeze(-1).squeeze(0) # [H, W] important to enable gradients! - - if self.albedo is None: - xyzs, _ = dr.interpolate(v.unsqueeze(0), rast, f) # [1, H, W, 3] - xyzs = xyzs.view(-1, 3) - mask = (alpha > 0).view(-1) - image = torch.zeros_like(xyzs, dtype=torch.float32) - if mask.any(): - masked_albedo = torch.sigmoid(self.mlp(self.encoder(xyzs[mask].detach(), bound=1))) - image[mask] = masked_albedo.float() - else: - texc, texc_db = dr.interpolate(self.vt.unsqueeze(0), rast, self.ft, rast_db=rast_db, diff_attrs='all') - image = torch.sigmoid(dr.texture(self.albedo.unsqueeze(0), texc, uv_da=texc_db)) # [1, H, W, 3] - - image = image.view(1, h, w, 3) - # image = dr.antialias(image, rast, v_clip, f).clamp(0, 1) - image = image.squeeze(0).permute(2, 0, 1).contiguous() # [3, H, W] - image = alpha * image + (1 - alpha) - - return image, alpha - - def fit_mesh(self, iters=2048, resolution=512, decimate_target=5e4): - - self.opt.output_size = resolution - - # init mesh from nerf - grid_size = 256 - sigmas = np.zeros([grid_size, grid_size, grid_size], dtype=np.float32) - - S = 128 - density_thresh = 10 - - X = torch.linspace(-1, 1, grid_size).split(S) - Y = torch.linspace(-1, 1, grid_size).split(S) - Z = torch.linspace(-1, 1, grid_size).split(S) - - for xi, xs in enumerate(X): - for yi, ys in enumerate(Y): - for zi, zs in enumerate(Z): - xx, yy, zz = torch.meshgrid(xs, ys, zs, indexing='ij') - pts = torch.cat([xx.reshape(-1, 1), yy.reshape(-1, 1), zz.reshape(-1, 1)], dim=-1) # [S, 3] - val = self.get_density(pts.to(self.device)) - sigmas[xi * S: xi * S + len(xs), yi * S: yi * S + len(ys), zi * S: zi * S + len(zs)] = val.reshape(len(xs), len(ys), len(zs)).detach().cpu().numpy() # [S, 1] --> [x, y, z] - - print(f'[INFO] marching cubes thresh: {density_thresh} ({sigmas.min()} ~ {sigmas.max()})') - - vertices, triangles = mcubes.marching_cubes(sigmas, density_thresh) - vertices = vertices / (grid_size - 1.0) * 2 - 1 - - # clean - vertices = vertices.astype(np.float32) - triangles = triangles.astype(np.int32) - vertices, triangles = clean_mesh(vertices, triangles, remesh=True, remesh_size=0.01) - if triangles.shape[0] > decimate_target: - vertices, triangles = decimate_mesh(vertices, triangles, decimate_target, optimalplacement=False) - - self.v = torch.from_numpy(vertices).contiguous().float().to(self.device) - self.f = torch.from_numpy(triangles).contiguous().int().to(self.device) - self.deform = nn.Parameter(torch.zeros_like(self.v)).to(self.device) - - # Here coarse mesh already resemble the target shape closely - #mcube_mesh = Mesh(v=self.v, f=self.f, albedo=None, device=self.device) - #mcube_mesh.auto_normal() - #mcube_mesh.auto_uv() - - # fit mesh from gs - lr_factor = 1 - optimizer = torch.optim.Adam([ - {'params': self.encoder.parameters(), 'lr': 1e-3 * lr_factor}, - {'params': self.mlp.parameters(), 'lr': 1e-3 * lr_factor}, - {'params': self.deform, 'lr': 1e-4}, - ]) - - print(f"[INFO] fitting mesh...") - pbar = tqdm.trange(iters) - for i in pbar: - - ver = np.random.randint(-10, 10) - hor = np.random.randint(-180, 180) - rad = self.opt.cam_radius # np.random.uniform(1, 2) - - pose = orbit_camera(ver, hor, rad) - - image_gt, alpha_gt = self.render_gs(pose) - image_pred, alpha_pred = self.render_mesh(pose) - - loss_mse = F.mse_loss(image_pred, image_gt) + 0.1 * F.mse_loss(alpha_pred, alpha_gt) - loss_lap = laplacian_smooth_loss(self.v + self.deform, self.f) - loss_normal = normal_consistency(self.v + self.deform, self.f) - loss_offsets = (self.deform ** 2).sum(-1).mean() - loss = loss_mse + 0.001 * loss_normal + 0.1 * loss_offsets * loss_lap * 0.01 - - loss.backward() - - optimizer.step() - optimizer.zero_grad() - - # remesh periodically - if i > 0 and i % 512 == 0: - vertices = (self.v + self.deform).detach().cpu().numpy() - triangles = self.f.detach().cpu().numpy() - vertices, triangles = clean_mesh(vertices, triangles, remesh=True, remesh_size=0.01) - if triangles.shape[0] > decimate_target: - vertices, triangles = decimate_mesh(vertices, triangles, decimate_target, optimalplacement=False) - self.v = torch.from_numpy(vertices).contiguous().float().to(self.device) - self.f = torch.from_numpy(triangles).contiguous().int().to(self.device) - self.deform = nn.Parameter(torch.zeros_like(self.v)).to(self.device) - lr_factor *= 0.5 - optimizer = torch.optim.Adam([ - {'params': self.encoder.parameters(), 'lr': 1e-3 * lr_factor}, - {'params': self.mlp.parameters(), 'lr': 1e-3 * lr_factor}, - {'params': self.deform, 'lr': 1e-4}, - ]) - - pbar.set_description(f"MSE = {loss_mse.item():.6f}") - - # last clean - vertices = (self.v + self.deform).detach().cpu().numpy() - triangles = self.f.detach().cpu().numpy() - vertices, triangles = clean_mesh(vertices, triangles, remesh=False) - self.v = torch.from_numpy(vertices).contiguous().float().to(self.device) - self.f = torch.from_numpy(triangles).contiguous().int().to(self.device) - self.deform = nn.Parameter(torch.zeros_like(self.v).to(self.device)) - - print(f"[INFO] finished fitting mesh!") - - # uv mesh refine - def fit_mesh_uv(self, iters=512, resolution=512, texture_resolution=1024, padding=2): - - self.opt.output_size = resolution - - # unwrap uv - print(f"[INFO] uv unwrapping...") - mesh = Mesh(v=self.v, f=self.f, albedo=None, device=self.device) - mesh.auto_normal() - mesh.auto_uv() - - self.vt = mesh.vt - self.ft = mesh.ft - - # render uv maps - h = w = texture_resolution - uv = mesh.vt * 2.0 - 1.0 # uvs to range [-1, 1] - uv = torch.cat((uv, torch.zeros_like(uv[..., :1]), torch.ones_like(uv[..., :1])), dim=-1) # [N, 4] - - rast, _ = dr.rasterize(self.glctx, uv.unsqueeze(0), mesh.ft, (h, w)) # [1, h, w, 4] - xyzs, _ = dr.interpolate(mesh.v.unsqueeze(0), rast, mesh.f) # [1, h, w, 3] - mask, _ = dr.interpolate(torch.ones_like(mesh.v[:, :1]).unsqueeze(0), rast, mesh.f) # [1, h, w, 1] - - # masked query - xyzs = xyzs.view(-1, 3) - mask = (mask > 0).view(-1) - - albedo = torch.zeros(h * w, 3, device=self.device, dtype=torch.float32) - - if mask.any(): - print(f"[INFO] querying texture...") - - xyzs = xyzs[mask] # [M, 3] - - # batched inference to avoid OOM - batch = [] - head = 0 - while head < xyzs.shape[0]: - tail = min(head + 640000, xyzs.shape[0]) - batch.append(torch.sigmoid(self.mlp(self.encoder(xyzs[head:tail]))).float()) - head += 640000 - - albedo[mask] = torch.cat(batch, dim=0) - - albedo = albedo.view(h, w, -1) - mask = mask.view(h, w) - albedo = uv_padding(albedo, mask, padding) - - # optimize texture - self.albedo = nn.Parameter(inverse_sigmoid(albedo)).to(self.device) - - optimizer = torch.optim.Adam([ - {'params': self.albedo, 'lr': 1e-3}, - ]) - - print(f"[INFO] fitting mesh texture...") - pbar = tqdm.trange(iters) - for i in pbar: - - # shrink to front view as we care more about it... - ver = np.random.randint(-5, 5) - hor = np.random.randint(-15, 15) - rad = self.opt.cam_radius # np.random.uniform(1, 2) - - pose = orbit_camera(ver, hor, rad) - - image_gt, alpha_gt = self.render_gs(pose) - image_pred, alpha_pred = self.render_mesh(pose) - - loss_mse = F.mse_loss(image_pred, image_gt) - loss = loss_mse - - loss.backward() - - optimizer.step() - optimizer.zero_grad() - - pbar.set_description(f"MSE = {loss_mse.item():.6f}") - - print(f"[INFO] finished fitting mesh texture!") - - - @torch.no_grad() - def get_mesh(self): - mesh = Mesh(v=self.v, f=self.f, vt=self.vt, ft=self.ft, albedo=torch.sigmoid(self.albedo), device=self.device) - mesh.auto_normal() - return mesh diff --git a/algorithms/tetmesh.py b/algorithms/tetmesh.py deleted file mode 100644 index 5283306..0000000 --- a/algorithms/tetmesh.py +++ /dev/null @@ -1,165 +0,0 @@ -# Copyright (c) 2021,22 NVIDIA CORPORATION & AFFILIATES. -# All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - - -import torch - -__all__ = ['marching_tetrahedra'] - -triangle_table = torch.tensor([ - [-1, -1, -1, -1, -1, -1], - [1, 0, 2, -1, -1, -1], - [4, 0, 3, -1, -1, -1], - [1, 4, 2, 1, 3, 4], - [3, 1, 5, -1, -1, -1], - [2, 3, 0, 2, 5, 3], - [1, 4, 0, 1, 5, 4], - [4, 2, 5, -1, -1, -1], - [4, 5, 2, -1, -1, -1], - [4, 1, 0, 4, 5, 1], - [3, 2, 0, 3, 5, 2], - [1, 3, 5, -1, -1, -1], - [4, 1, 2, 4, 3, 1], - [3, 0, 4, -1, -1, -1], - [2, 0, 1, -1, -1, -1], - [-1, -1, -1, -1, -1, -1] -], dtype=torch.long) - -num_triangles_table = torch.tensor([0, 1, 1, 2, 1, 2, 2, 1, 1, 2, 2, 1, 2, 1, 1, 0], dtype=torch.long) -base_tet_edges = torch.tensor([0, 1, 0, 2, 0, 3, 1, 2, 1, 3, 2, 3], dtype=torch.long) -v_id = torch.pow(2, torch.arange(4, dtype=torch.long)) - - -def _sort_edges(edges): - """sort last dimension of edges of shape (E, 2)""" - with torch.no_grad(): - order = (edges[:, 0] > edges[:, 1]).long() - order = order.unsqueeze(dim=1) - - a = torch.gather(input=edges, index=order, dim=1) - b = torch.gather(input=edges, index=1 - order, dim=1) - - return torch.stack([a, b], -1) - - -def _unbatched_marching_tetrahedra(vertices, tets, sdf, return_tet_idx): - """unbatched marching tetrahedra. - - Refer to :func:`marching_tetrahedra`. - """ - device = vertices.device - with torch.no_grad(): - occ_n = sdf > 0 - occ_fx4 = occ_n[tets.reshape(-1)].reshape(-1, 4) - occ_sum = torch.sum(occ_fx4, -1) - valid_tets = (occ_sum > 0) & (occ_sum < 4) - occ_sum = occ_sum[valid_tets] - - # find all vertices - all_edges = tets[valid_tets][:, base_tet_edges.to(device)].reshape(-1, 2) - all_edges = _sort_edges(all_edges) - unique_edges, idx_map = torch.unique(all_edges, dim=0, return_inverse=True) - - unique_edges = unique_edges.long() - mask_edges = occ_n[unique_edges.reshape(-1)].reshape(-1, 2).sum(-1) == 1 - mapping = torch.ones((unique_edges.shape[0]), dtype=torch.long, device=device) * -1 - mapping[mask_edges] = torch.arange(mask_edges.sum(), dtype=torch.long, device=device) - idx_map = mapping[idx_map] - - interp_v = unique_edges[mask_edges] - edges_to_interp = vertices[interp_v.reshape(-1)].reshape(-1, 2, 3) - edges_to_interp_sdf = sdf[interp_v.reshape(-1)].reshape(-1, 2, 1) - edges_to_interp_sdf[:, -1] *= -1 - - denominator = edges_to_interp_sdf.sum(1, keepdim=True) - - edges_to_interp_sdf = torch.flip(edges_to_interp_sdf, [1]) / denominator - verts = (edges_to_interp * edges_to_interp_sdf).sum(1) - - idx_map = idx_map.reshape(-1, 6) - - tetindex = (occ_fx4[valid_tets] * v_id.to(device).unsqueeze(0)).sum(-1) - num_triangles = num_triangles_table.to(device)[tetindex] - triangle_table_device = triangle_table.to(device) - - # Generate triangle indices - faces = torch.cat(( - torch.gather(input=idx_map[num_triangles == 1], dim=1, - index=triangle_table_device[tetindex[num_triangles == 1]][:, :3]).reshape(-1, 3), - torch.gather(input=idx_map[num_triangles == 2], dim=1, - index=triangle_table_device[tetindex[num_triangles == 2]][:, :6]).reshape(-1, 3), - ), dim=0) - - if return_tet_idx: - tet_idx = torch.arange(tets.shape[0], device=device)[valid_tets] - tet_idx = torch.cat((tet_idx[num_triangles == 1], tet_idx[num_triangles == - 2].unsqueeze(-1).expand(-1, 2).reshape(-1)), dim=0) - return verts, faces, tet_idx - return verts, faces - - -def marching_tetrahedra(vertices, tets, sdf, return_tet_idx=False): - r"""Convert discrete signed distance fields encoded on tetrahedral grids to triangle - meshes using marching tetrahedra algorithm as described in `An efficient method of - triangulating equi-valued surfaces by using tetrahedral cells`_. The output surface is differentiable with respect to - input vertex positions and the SDF values. For more details and example usage in learning, see - `Deep Marching Tetrahedra\: a Hybrid Representation for High-Resolution 3D Shape Synthesis`_ NeurIPS 2021. - - - Args: - vertices (torch.tensor): batched vertices of tetrahedral meshes, of shape - :math:`(\text{batch_size}, \text{num_vertices}, 3)`. - tets (torch.tensor): unbatched tetrahedral mesh topology, of shape - :math:`(\text{num_tetrahedrons}, 4)`. - sdf (torch.tensor): batched SDFs which specify the SDF value of each vertex, of shape - :math:`(\text{batch_size}, \text{num_vertices})`. - return_tet_idx (optional, bool): if True, return index of tetrahedron - where each face is extracted. Default: False. - - Returns: - (list[torch.Tensor], list[torch.LongTensor], (optional) list[torch.LongTensor]): - - - the list of vertices for mesh converted from each tetrahedral grid. - - the list of faces for mesh converted from each tetrahedral grid. - - the list of indices that correspond to tetrahedra where faces are extracted. - - Example: - >>> vertices = torch.tensor([[[0, 0, 0], - ... [1, 0, 0], - ... [0, 1, 0], - ... [0, 0, 1]]], dtype=torch.float) - >>> tets = torch.tensor([[0, 1, 2, 3]], dtype=torch.long) - >>> sdf = torch.tensor([[-1., -1., 0.5, 0.5]], dtype=torch.float) - >>> verts_list, faces_list, tet_idx_list = marching_tetrahedra(vertices, tets, sdf, True) - >>> verts_list[0] - tensor([[0.0000, 0.6667, 0.0000], - [0.0000, 0.0000, 0.6667], - [0.3333, 0.6667, 0.0000], - [0.3333, 0.0000, 0.6667]]) - >>> faces_list[0] - tensor([[3, 0, 1], - [3, 2, 0]]) - >>> tet_idx_list[0] - tensor([0, 0]) - - .. _An efficient method of triangulating equi-valued surfaces by using tetrahedral cells: - https://search.ieice.org/bin/summary.php?id=e74-d_1_214 - - .. _Deep Marching Tetrahedra\: a Hybrid Representation for High-Resolution 3D Shape Synthesis: - https://arxiv.org/abs/2111.04276 - """ - - list_of_outputs = [_unbatched_marching_tetrahedra(vertices[b], tets, sdf[b], return_tet_idx) for b in range(vertices.shape[0])] - return list(zip(*list_of_outputs)) diff --git a/algorithms/triplane_gaussian_transformers.py b/algorithms/triplane_gaussian_transformers.py deleted file mode 100644 index 61c6fde..0000000 --- a/algorithms/triplane_gaussian_transformers.py +++ /dev/null @@ -1,167 +0,0 @@ -import torch -from dataclasses import dataclass, field -from einops import rearrange - -from ..tgs import find -from ..tgs.models.image_feature import ImageFeature -from ..tgs.utils.saving import SaverMixin -from ..tgs.utils.config import parse_structured -from ..tgs.utils.ops import points_projection -from ..tgs.utils.misc import load_module_weights -from ..tgs.utils.typing import * - -class TGS(torch.nn.Module, SaverMixin): - @dataclass - class Config: - weights: Optional[str] = None - weights_ignore_modules: Optional[List[str]] = None - - camera_embedder_cls: str = "" - camera_embedder: dict = field(default_factory=dict) - - image_feature: dict = field(default_factory=dict) - - image_tokenizer_cls: str = "" - image_tokenizer: dict = field(default_factory=dict) - - tokenizer_cls: str = "" - tokenizer: dict = field(default_factory=dict) - - backbone_cls: str = "" - backbone: dict = field(default_factory=dict) - - post_processor_cls: str = "" - post_processor: dict = field(default_factory=dict) - - renderer_cls: str = "" - renderer: dict = field(default_factory=dict) - - pointcloud_generator_cls: str = "" - pointcloud_generator: dict = field(default_factory=dict) - - pointcloud_encoder_cls: str = "" - pointcloud_encoder: dict = field(default_factory=dict) - - cfg: Config - - def load_weights(self, weights: str, ignore_modules: Optional[List[str]] = None): - state_dict = load_module_weights( - weights, ignore_modules=ignore_modules, map_location="cpu" - ) - self.load_state_dict(state_dict, strict=False) - - def __init__(self, cfg): - super().__init__() - self.cfg = parse_structured(self.Config, cfg) - - self.image_tokenizer = find(self.cfg.image_tokenizer_cls)( - self.cfg.image_tokenizer - ) - - assert self.cfg.camera_embedder_cls == 'tgs.models.networks.MLP' - weights = self.cfg.camera_embedder.pop("weights") if "weights" in self.cfg.camera_embedder else None - self.camera_embedder = find(self.cfg.camera_embedder_cls)(**self.cfg.camera_embedder) - if weights: - from ..tgs.utils.misc import load_module_weights - weights_path, module_name = weights.split(":") - state_dict = load_module_weights( - weights_path, module_name=module_name, map_location="cpu" - ) - self.camera_embedder.load_state_dict(state_dict) - - self.image_feature = ImageFeature(self.cfg.image_feature) - - self.tokenizer = find(self.cfg.tokenizer_cls)(self.cfg.tokenizer) - - self.backbone = find(self.cfg.backbone_cls)(self.cfg.backbone) - - self.post_processor = find(self.cfg.post_processor_cls)( - self.cfg.post_processor - ) - - self.renderer = find(self.cfg.renderer_cls)(self.cfg.renderer) - - # pointcloud generator - self.pointcloud_generator = find(self.cfg.pointcloud_generator_cls)(self.cfg.pointcloud_generator) - - self.point_encoder = find(self.cfg.pointcloud_encoder_cls)(self.cfg.pointcloud_encoder) - - # load checkpoint - if self.cfg.weights is not None: - self.load_weights(self.cfg.weights, self.cfg.weights_ignore_modules) - - def _forward(self, batch: Dict[str, Any]) -> Dict[str, Any]: - # generate point cloud - out = self.pointcloud_generator(batch) - pointclouds = out["points"] - - batch_size, n_input_views = batch["rgb_cond"].shape[:2] - - # Camera modulation - camera_extri = batch["c2w_cond"].view(*batch["c2w_cond"].shape[:-2], -1) - camera_intri = batch["intrinsic_normed_cond"].view(*batch["intrinsic_normed_cond"].shape[:-2], -1) - camera_feats = torch.cat([camera_intri, camera_extri], dim=-1) - - camera_feats = self.camera_embedder(camera_feats) - - input_image_tokens: Float[Tensor, "B Cit Nit"] = self.image_tokenizer( - rearrange(batch["rgb_cond"], 'B Nv H W C -> B Nv C H W'), - modulation_cond=camera_feats, - ) - input_image_tokens = rearrange(input_image_tokens, 'B Nv C Nt -> B (Nv Nt) C', Nv=n_input_views) - - # get image features for projection - image_features = self.image_feature( - rgb = batch["rgb_cond"], - mask = batch.get("mask_cond", None), - feature = input_image_tokens - ) - - # only support number of input view is one - c2w_cond = batch["c2w_cond"].squeeze(1) - intrinsic_cond = batch["intrinsic_cond"].squeeze(1) - proj_feats = points_projection(pointclouds, c2w_cond, intrinsic_cond, image_features) - - point_cond_embeddings = self.point_encoder(torch.cat([pointclouds, proj_feats], dim=-1)) - tokens: Float[Tensor, "B Ct Nt"] = self.tokenizer(batch_size, cond_embeddings=point_cond_embeddings) - - tokens = self.backbone( - tokens, - encoder_hidden_states=input_image_tokens, - modulation_cond=None, - ) - - scene_codes = self.post_processor(self.tokenizer.detokenize(tokens)) - rend_out = self.renderer(scene_codes, - query_points=pointclouds, - additional_features=proj_feats, - **batch) - - return {**out, **rend_out} - - def forward(self, batch): - plys = [] - - out = self._forward(batch) - batch_size = batch["index"].shape[0] - for b in range(batch_size): - if batch["view_index"][b, 0] == 0: - plys.append(out["3dgs"][b].to_ply()) - - #self.render_test_video(out, batch, b) - - return plys - - def render_test_video(self, out, batch, b): - for index, render_image in enumerate(out["comp_rgb"][b]): - view_index = batch["view_index"][b, index] - self.save_image_grid( - f"video/{batch['instance_id'][b]}/{view_index}.png", - [ - { - "type": "rgb", - "img": render_image, - "kwargs": {"data_format": "HWC"}, - } - ] - ) \ No newline at end of file diff --git a/checkpoints/Wuvin/Unique3D/controlnet-tile/config.json b/checkpoints/Wuvin/Unique3D/controlnet-tile/config.json deleted file mode 100644 index 754ad3a..0000000 --- a/checkpoints/Wuvin/Unique3D/controlnet-tile/config.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "_class_name": "ControlNetModel", - "_diffusers_version": "0.27.2", - "_name_or_path": "lllyasviel/control_v11f1e_sd15_tile", - "act_fn": "silu", - "addition_embed_type": null, - "addition_embed_type_num_heads": 64, - "addition_time_embed_dim": null, - "attention_head_dim": 8, - "block_out_channels": [ - 320, - 640, - 1280, - 1280 - ], - "class_embed_type": null, - "conditioning_channels": 3, - "conditioning_embedding_out_channels": [ - 16, - 32, - 96, - 256 - ], - "controlnet_conditioning_channel_order": "rgb", - "cross_attention_dim": 768, - "down_block_types": [ - "CrossAttnDownBlock2D", - "CrossAttnDownBlock2D", - "CrossAttnDownBlock2D", - "DownBlock2D" - ], - "downsample_padding": 1, - "encoder_hid_dim": null, - "encoder_hid_dim_type": null, - "flip_sin_to_cos": true, - "freq_shift": 0, - "global_pool_conditions": false, - "in_channels": 4, - "layers_per_block": 2, - "mid_block_scale_factor": 1, - "mid_block_type": "UNetMidBlock2DCrossAttn", - "norm_eps": 1e-05, - "norm_num_groups": 32, - "num_attention_heads": null, - "num_class_embeds": null, - "only_cross_attention": false, - "projection_class_embeddings_input_dim": null, - "resnet_time_scale_shift": "default", - "transformer_layers_per_block": 1, - "upcast_attention": false, - "use_linear_projection": false -} diff --git a/checkpoints/Wuvin/Unique3D/image2mvimage/feature_extractor/preprocessor_config.json b/checkpoints/Wuvin/Unique3D/image2mvimage/feature_extractor/preprocessor_config.json deleted file mode 100644 index c7f2d86..0000000 --- a/checkpoints/Wuvin/Unique3D/image2mvimage/feature_extractor/preprocessor_config.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "_valid_processor_keys": [ - "images", - "do_resize", - "size", - "resample", - "do_center_crop", - "crop_size", - "do_rescale", - "rescale_factor", - "do_normalize", - "image_mean", - "image_std", - "do_convert_rgb", - "return_tensors", - "data_format", - "input_data_format" - ], - "crop_size": { - "height": 224, - "width": 224 - }, - "do_center_crop": true, - "do_convert_rgb": true, - "do_normalize": true, - "do_rescale": true, - "do_resize": true, - "image_mean": [ - 0.48145466, - 0.4578275, - 0.40821073 - ], - "image_processor_type": "CLIPImageProcessor", - "image_std": [ - 0.26862954, - 0.26130258, - 0.27577711 - ], - "resample": 3, - "rescale_factor": 0.00392156862745098, - "size": { - "shortest_edge": 224 - } -} diff --git a/checkpoints/Wuvin/Unique3D/image2mvimage/image_encoder/config.json b/checkpoints/Wuvin/Unique3D/image2mvimage/image_encoder/config.json deleted file mode 100644 index c6cfa18..0000000 --- a/checkpoints/Wuvin/Unique3D/image2mvimage/image_encoder/config.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "_name_or_path": "lambdalabs/sd-image-variations-diffusers", - "architectures": [ - "CLIPVisionModelWithProjection" - ], - "attention_dropout": 0.0, - "dropout": 0.0, - "hidden_act": "quick_gelu", - "hidden_size": 1024, - "image_size": 224, - "initializer_factor": 1.0, - "initializer_range": 0.02, - "intermediate_size": 4096, - "layer_norm_eps": 1e-05, - "model_type": "clip_vision_model", - "num_attention_heads": 16, - "num_channels": 3, - "num_hidden_layers": 24, - "patch_size": 14, - "projection_dim": 768, - "torch_dtype": "float32", - "transformers_version": "4.39.3" -} diff --git a/checkpoints/Wuvin/Unique3D/image2mvimage/model_index.json b/checkpoints/Wuvin/Unique3D/image2mvimage/model_index.json deleted file mode 100644 index afe0b22..0000000 --- a/checkpoints/Wuvin/Unique3D/image2mvimage/model_index.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "_class_name": "StableDiffusionImage2MVCustomPipeline", - "_diffusers_version": "0.27.2", - "_name_or_path": "lambdalabs/sd-image-variations-diffusers", - "condition_offset": true, - "feature_extractor": [ - "transformers", - "CLIPImageProcessor" - ], - "image_encoder": [ - "transformers", - "CLIPVisionModelWithProjection" - ], - "requires_safety_checker": true, - "safety_checker": [ - null, - null - ], - "scheduler": [ - "diffusers", - "DDIMScheduler" - ], - "unet": [ - "diffusers", - "UNet2DConditionModel" - ], - "vae": [ - "diffusers", - "AutoencoderKL" - ] -} diff --git a/checkpoints/Wuvin/Unique3D/image2mvimage/scheduler/scheduler_config.json b/checkpoints/Wuvin/Unique3D/image2mvimage/scheduler/scheduler_config.json deleted file mode 100644 index 788d423..0000000 --- a/checkpoints/Wuvin/Unique3D/image2mvimage/scheduler/scheduler_config.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "_class_name": "DDIMScheduler", - "_diffusers_version": "0.27.2", - "beta_end": 0.012, - "beta_schedule": "scaled_linear", - "beta_start": 0.00085, - "clip_sample": false, - "clip_sample_range": 1.0, - "dynamic_thresholding_ratio": 0.995, - "num_train_timesteps": 1000, - "prediction_type": "epsilon", - "rescale_betas_zero_snr": false, - "sample_max_value": 1.0, - "set_alpha_to_one": false, - "skip_prk_steps": true, - "steps_offset": 1, - "thresholding": false, - "timestep_spacing": "leading", - "trained_betas": null -} diff --git a/checkpoints/Wuvin/Unique3D/image2mvimage/unet/config.json b/checkpoints/Wuvin/Unique3D/image2mvimage/unet/config.json deleted file mode 100644 index 851f2e1..0000000 --- a/checkpoints/Wuvin/Unique3D/image2mvimage/unet/config.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "_class_name": "UnifieldWrappedUNet", - "_diffusers_version": "0.27.2", - "_name_or_path": "lambdalabs/sd-image-variations-diffusers", - "act_fn": "silu", - "addition_embed_type": null, - "addition_embed_type_num_heads": 64, - "addition_time_embed_dim": null, - "attention_head_dim": 8, - "attention_type": "default", - "block_out_channels": [ - 320, - 640, - 1280, - 1280 - ], - "center_input_sample": false, - "class_embed_type": null, - "class_embeddings_concat": false, - "conv_in_kernel": 3, - "conv_out_kernel": 3, - "cross_attention_dim": 768, - "cross_attention_norm": null, - "down_block_types": [ - "CrossAttnDownBlock2D", - "CrossAttnDownBlock2D", - "CrossAttnDownBlock2D", - "DownBlock2D" - ], - "downsample_padding": 1, - "dropout": 0.0, - "dual_cross_attention": false, - "encoder_hid_dim": null, - "encoder_hid_dim_type": null, - "flip_sin_to_cos": true, - "freq_shift": 0, - "in_channels": 8, - "layers_per_block": 2, - "mid_block_only_cross_attention": null, - "mid_block_scale_factor": 1, - "mid_block_type": "UNetMidBlock2DCrossAttn", - "norm_eps": 1e-05, - "norm_num_groups": 32, - "num_attention_heads": null, - "num_class_embeds": 8, - "only_cross_attention": false, - "out_channels": 4, - "projection_class_embeddings_input_dim": null, - "resnet_out_scale_factor": 1.0, - "resnet_skip_time_act": false, - "resnet_time_scale_shift": "default", - "reverse_transformer_layers_per_block": null, - "sample_size": 64, - "time_cond_proj_dim": null, - "time_embedding_act_fn": null, - "time_embedding_dim": null, - "time_embedding_type": "positional", - "timestep_post_act": null, - "transformer_layers_per_block": 1, - "up_block_types": [ - "UpBlock2D", - "CrossAttnUpBlock2D", - "CrossAttnUpBlock2D", - "CrossAttnUpBlock2D" - ], - "upcast_attention": false, - "use_linear_projection": false -} diff --git a/checkpoints/Wuvin/Unique3D/image2mvimage/vae/config.json b/checkpoints/Wuvin/Unique3D/image2mvimage/vae/config.json deleted file mode 100644 index 5dac932..0000000 --- a/checkpoints/Wuvin/Unique3D/image2mvimage/vae/config.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "_class_name": "AutoencoderKL", - "_diffusers_version": "0.27.2", - "_name_or_path": "lambdalabs/sd-image-variations-diffusers", - "act_fn": "silu", - "block_out_channels": [ - 128, - 256, - 512, - 512 - ], - "down_block_types": [ - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D" - ], - "force_upcast": true, - "in_channels": 3, - "latent_channels": 4, - "latents_mean": null, - "latents_std": null, - "layers_per_block": 2, - "norm_num_groups": 32, - "out_channels": 3, - "sample_size": 256, - "scaling_factor": 0.18215, - "up_block_types": [ - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D" - ] -} diff --git a/checkpoints/Wuvin/Unique3D/image2normal/feature_extractor/preprocessor_config.json b/checkpoints/Wuvin/Unique3D/image2normal/feature_extractor/preprocessor_config.json deleted file mode 100644 index c7f2d86..0000000 --- a/checkpoints/Wuvin/Unique3D/image2normal/feature_extractor/preprocessor_config.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "_valid_processor_keys": [ - "images", - "do_resize", - "size", - "resample", - "do_center_crop", - "crop_size", - "do_rescale", - "rescale_factor", - "do_normalize", - "image_mean", - "image_std", - "do_convert_rgb", - "return_tensors", - "data_format", - "input_data_format" - ], - "crop_size": { - "height": 224, - "width": 224 - }, - "do_center_crop": true, - "do_convert_rgb": true, - "do_normalize": true, - "do_rescale": true, - "do_resize": true, - "image_mean": [ - 0.48145466, - 0.4578275, - 0.40821073 - ], - "image_processor_type": "CLIPImageProcessor", - "image_std": [ - 0.26862954, - 0.26130258, - 0.27577711 - ], - "resample": 3, - "rescale_factor": 0.00392156862745098, - "size": { - "shortest_edge": 224 - } -} diff --git a/checkpoints/Wuvin/Unique3D/image2normal/image_encoder/config.json b/checkpoints/Wuvin/Unique3D/image2normal/image_encoder/config.json deleted file mode 100644 index 2a2fb07..0000000 --- a/checkpoints/Wuvin/Unique3D/image2normal/image_encoder/config.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "_name_or_path": "lambdalabs/sd-image-variations-diffusers", - "architectures": [ - "CLIPVisionModelWithProjection" - ], - "attention_dropout": 0.0, - "dropout": 0.0, - "hidden_act": "quick_gelu", - "hidden_size": 1024, - "image_size": 224, - "initializer_factor": 1.0, - "initializer_range": 0.02, - "intermediate_size": 4096, - "layer_norm_eps": 1e-05, - "model_type": "clip_vision_model", - "num_attention_heads": 16, - "num_channels": 3, - "num_hidden_layers": 24, - "patch_size": 14, - "projection_dim": 768, - "torch_dtype": "bfloat16", - "transformers_version": "4.39.3" -} diff --git a/checkpoints/Wuvin/Unique3D/image2normal/model_index.json b/checkpoints/Wuvin/Unique3D/image2normal/model_index.json deleted file mode 100644 index 5a6a160..0000000 --- a/checkpoints/Wuvin/Unique3D/image2normal/model_index.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "_class_name": "StableDiffusionImageCustomPipeline", - "_diffusers_version": "0.27.2", - "_name_or_path": "lambdalabs/sd-image-variations-diffusers", - "feature_extractor": [ - "transformers", - "CLIPImageProcessor" - ], - "image_encoder": [ - "transformers", - "CLIPVisionModelWithProjection" - ], - "noisy_cond_latents": false, - "requires_safety_checker": true, - "safety_checker": [ - null, - null - ], - "scheduler": [ - "diffusers", - "EulerAncestralDiscreteScheduler" - ], - "unet": [ - "diffusers", - "UNet2DConditionModel" - ], - "vae": [ - "diffusers", - "AutoencoderKL" - ] -} diff --git a/checkpoints/Wuvin/Unique3D/image2normal/scheduler/scheduler_config.json b/checkpoints/Wuvin/Unique3D/image2normal/scheduler/scheduler_config.json deleted file mode 100644 index 35d882b..0000000 --- a/checkpoints/Wuvin/Unique3D/image2normal/scheduler/scheduler_config.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "_class_name": "EulerAncestralDiscreteScheduler", - "_diffusers_version": "0.27.2", - "beta_end": 0.012, - "beta_schedule": "scaled_linear", - "beta_start": 0.00085, - "clip_sample": false, - "num_train_timesteps": 1000, - "prediction_type": "epsilon", - "rescale_betas_zero_snr": false, - "set_alpha_to_one": false, - "skip_prk_steps": true, - "steps_offset": 1, - "timestep_spacing": "linspace", - "trained_betas": null -} diff --git a/checkpoints/Wuvin/Unique3D/image2normal/unet/config.json b/checkpoints/Wuvin/Unique3D/image2normal/unet/config.json deleted file mode 100644 index 0212cd9..0000000 --- a/checkpoints/Wuvin/Unique3D/image2normal/unet/config.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "_class_name": "UnifieldWrappedUNet", - "_diffusers_version": "0.27.2", - "_name_or_path": "lambdalabs/sd-image-variations-diffusers", - "act_fn": "silu", - "addition_embed_type": null, - "addition_embed_type_num_heads": 64, - "addition_time_embed_dim": null, - "attention_head_dim": 8, - "attention_type": "default", - "block_out_channels": [ - 320, - 640, - 1280, - 1280 - ], - "center_input_sample": false, - "class_embed_type": null, - "class_embeddings_concat": false, - "conv_in_kernel": 3, - "conv_out_kernel": 3, - "cross_attention_dim": 768, - "cross_attention_norm": null, - "down_block_types": [ - "CrossAttnDownBlock2D", - "CrossAttnDownBlock2D", - "CrossAttnDownBlock2D", - "DownBlock2D" - ], - "downsample_padding": 1, - "dropout": 0.0, - "dual_cross_attention": false, - "encoder_hid_dim": null, - "encoder_hid_dim_type": null, - "flip_sin_to_cos": true, - "freq_shift": 0, - "in_channels": 4, - "layers_per_block": 2, - "mid_block_only_cross_attention": null, - "mid_block_scale_factor": 1, - "mid_block_type": "UNetMidBlock2DCrossAttn", - "norm_eps": 1e-05, - "norm_num_groups": 32, - "num_attention_heads": null, - "num_class_embeds": null, - "only_cross_attention": false, - "out_channels": 4, - "projection_class_embeddings_input_dim": null, - "resnet_out_scale_factor": 1.0, - "resnet_skip_time_act": false, - "resnet_time_scale_shift": "default", - "reverse_transformer_layers_per_block": null, - "sample_size": 64, - "time_cond_proj_dim": null, - "time_embedding_act_fn": null, - "time_embedding_dim": null, - "time_embedding_type": "positional", - "timestep_post_act": null, - "transformer_layers_per_block": 1, - "up_block_types": [ - "UpBlock2D", - "CrossAttnUpBlock2D", - "CrossAttnUpBlock2D", - "CrossAttnUpBlock2D" - ], - "upcast_attention": false, - "use_linear_projection": false -} diff --git a/checkpoints/Wuvin/Unique3D/image2normal/vae/config.json b/checkpoints/Wuvin/Unique3D/image2normal/vae/config.json deleted file mode 100644 index 5dac932..0000000 --- a/checkpoints/Wuvin/Unique3D/image2normal/vae/config.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "_class_name": "AutoencoderKL", - "_diffusers_version": "0.27.2", - "_name_or_path": "lambdalabs/sd-image-variations-diffusers", - "act_fn": "silu", - "block_out_channels": [ - 128, - 256, - 512, - 512 - ], - "down_block_types": [ - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D" - ], - "force_upcast": true, - "in_channels": 3, - "latent_channels": 4, - "latents_mean": null, - "latents_std": null, - "layers_per_block": 2, - "norm_num_groups": 32, - "out_channels": 3, - "sample_size": 256, - "scaling_factor": 0.18215, - "up_block_types": [ - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D" - ] -} diff --git a/checkpoints/Wuvin/Unique3D/v1-inference.yaml b/checkpoints/Wuvin/Unique3D/v1-inference.yaml deleted file mode 100644 index d4effe5..0000000 --- a/checkpoints/Wuvin/Unique3D/v1-inference.yaml +++ /dev/null @@ -1,70 +0,0 @@ -model: - base_learning_rate: 1.0e-04 - target: ldm.models.diffusion.ddpm.LatentDiffusion - params: - linear_start: 0.00085 - linear_end: 0.0120 - num_timesteps_cond: 1 - log_every_t: 200 - timesteps: 1000 - first_stage_key: "jpg" - cond_stage_key: "txt" - image_size: 64 - channels: 4 - cond_stage_trainable: false # Note: different from the one we trained before - conditioning_key: crossattn - monitor: val/loss_simple_ema - scale_factor: 0.18215 - use_ema: False - - scheduler_config: # 10000 warmup steps - target: ldm.lr_scheduler.LambdaLinearScheduler - params: - warm_up_steps: [ 10000 ] - cycle_lengths: [ 10000000000000 ] # incredibly large number to prevent corner cases - f_start: [ 1.e-6 ] - f_max: [ 1. ] - f_min: [ 1. ] - - unet_config: - target: ldm.modules.diffusionmodules.openaimodel.UNetModel - params: - image_size: 32 # unused - in_channels: 4 - out_channels: 4 - model_channels: 320 - attention_resolutions: [ 4, 2, 1 ] - num_res_blocks: 2 - channel_mult: [ 1, 2, 4, 4 ] - num_heads: 8 - use_spatial_transformer: True - transformer_depth: 1 - context_dim: 768 - use_checkpoint: True - legacy: False - - first_stage_config: - target: ldm.models.autoencoder.AutoencoderKL - params: - embed_dim: 4 - monitor: val/rec_loss - ddconfig: - double_z: true - z_channels: 4 - resolution: 256 - in_channels: 3 - out_ch: 3 - ch: 128 - ch_mult: - - 1 - - 2 - - 4 - - 4 - num_res_blocks: 2 - attn_resolutions: [] - dropout: 0.0 - lossconfig: - target: torch.nn.Identity - - cond_stage_config: - target: ldm.modules.encoders.modules.FrozenCLIPEmbedder diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/.gitattributes b/checkpoints/ashawkey/imagedream-ipmv-diffusers/.gitattributes deleted file mode 100644 index a6344aa..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/.gitattributes +++ /dev/null @@ -1,35 +0,0 @@ -*.7z filter=lfs diff=lfs merge=lfs -text -*.arrow filter=lfs diff=lfs merge=lfs -text -*.bin filter=lfs diff=lfs merge=lfs -text -*.bz2 filter=lfs diff=lfs merge=lfs -text -*.ckpt filter=lfs diff=lfs merge=lfs -text -*.ftz filter=lfs diff=lfs merge=lfs -text -*.gz filter=lfs diff=lfs merge=lfs -text -*.h5 filter=lfs diff=lfs merge=lfs -text -*.joblib filter=lfs diff=lfs merge=lfs -text -*.lfs.* filter=lfs diff=lfs merge=lfs -text -*.mlmodel filter=lfs diff=lfs merge=lfs -text -*.model filter=lfs diff=lfs merge=lfs -text -*.msgpack filter=lfs diff=lfs merge=lfs -text -*.npy filter=lfs diff=lfs merge=lfs -text -*.npz filter=lfs diff=lfs merge=lfs -text -*.onnx filter=lfs diff=lfs merge=lfs -text -*.ot filter=lfs diff=lfs merge=lfs -text -*.parquet filter=lfs diff=lfs merge=lfs -text -*.pb filter=lfs diff=lfs merge=lfs -text -*.pickle filter=lfs diff=lfs merge=lfs -text -*.pkl filter=lfs diff=lfs merge=lfs -text -*.pt filter=lfs diff=lfs merge=lfs -text -*.pth filter=lfs diff=lfs merge=lfs -text -*.rar filter=lfs diff=lfs merge=lfs -text -*.safetensors filter=lfs diff=lfs merge=lfs -text -saved_model/**/* filter=lfs diff=lfs merge=lfs -text -*.tar.* filter=lfs diff=lfs merge=lfs -text -*.tar filter=lfs diff=lfs merge=lfs -text -*.tflite filter=lfs diff=lfs merge=lfs -text -*.tgz filter=lfs diff=lfs merge=lfs -text -*.wasm filter=lfs diff=lfs merge=lfs -text -*.xz filter=lfs diff=lfs merge=lfs -text -*.zip filter=lfs diff=lfs merge=lfs -text -*.zst filter=lfs diff=lfs merge=lfs -text -*tfevents* filter=lfs diff=lfs merge=lfs -text diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/README.md b/checkpoints/ashawkey/imagedream-ipmv-diffusers/README.md deleted file mode 100644 index 620d147..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/README.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -license: openrail ---- -# MVDream-diffusers Model Card -This is a port of https://huggingface.co/Peng-Wang/ImageDream into diffusers. - -For usage, please check: https://github.com/ashawkey/mvdream_diffusers -## Citation -``` -@article{wang2023imagedream, - title={ImageDream: Image-Prompt Multi-view Diffusion for 3D Generation}, - author={Wang, Peng and Shi, Yichun}, - journal={arXiv preprint arXiv:2312.02201}, - year={2023} -} -``` -## Misuse, Malicious Use, and Out-of-Scope Use -The model should not be used to intentionally create or disseminate images that create hostile or alienating environments for people. This includes generating images that people would foreseeably find disturbing, distressing, or offensive; or content that propagates historical or current stereotypes. diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/feature_extractor/preprocessor_config.json b/checkpoints/ashawkey/imagedream-ipmv-diffusers/feature_extractor/preprocessor_config.json deleted file mode 100644 index 73fe891..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/feature_extractor/preprocessor_config.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "crop_size": { - "height": 224, - "width": 224 - }, - "do_center_crop": true, - "do_convert_rgb": true, - "do_normalize": true, - "do_rescale": true, - "do_resize": true, - "feature_extractor_type": "CLIPFeatureExtractor", - "image_mean": [ - 0.48145466, - 0.4578275, - 0.40821073 - ], - "image_processor_type": "CLIPImageProcessor", - "image_std": [ - 0.26862954, - 0.26130258, - 0.27577711 - ], - "resample": 3, - "rescale_factor": 0.00392156862745098, - "size": { - "shortest_edge": 224 - }, - "use_square_size": false -} diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/image_encoder/config.json b/checkpoints/ashawkey/imagedream-ipmv-diffusers/image_encoder/config.json deleted file mode 100644 index 81081d9..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/image_encoder/config.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "_name_or_path": "laion/CLIP-ViT-H-14-laion2B-s32B-b79K", - "architectures": [ - "CLIPVisionModel" - ], - "attention_dropout": 0.0, - "dropout": 0.0, - "hidden_act": "gelu", - "hidden_size": 1280, - "image_size": 224, - "initializer_factor": 1.0, - "initializer_range": 0.02, - "intermediate_size": 5120, - "layer_norm_eps": 1e-05, - "model_type": "clip_vision_model", - "num_attention_heads": 16, - "num_channels": 3, - "num_hidden_layers": 32, - "patch_size": 14, - "projection_dim": 1024, - "torch_dtype": "float16", - "transformers_version": "4.35.2" -} diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/model_index.json b/checkpoints/ashawkey/imagedream-ipmv-diffusers/model_index.json deleted file mode 100644 index e5c1919..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/model_index.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "_class_name": "MVDreamPipeline", - "_diffusers_version": "0.25.0", - "feature_extractor": [ - "transformers", - "CLIPImageProcessor" - ], - "image_encoder": [ - "transformers", - "CLIPVisionModel" - ], - "requires_safety_checker": false, - "scheduler": [ - "diffusers", - "DDIMScheduler" - ], - "text_encoder": [ - "transformers", - "CLIPTextModel" - ], - "tokenizer": [ - "transformers", - "CLIPTokenizer" - ], - "unet": [ - "mv_unet", - "MultiViewUNetModel" - ], - "vae": [ - "diffusers", - "AutoencoderKL" - ] -} diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/pipeline_mvdream.py b/checkpoints/ashawkey/imagedream-ipmv-diffusers/pipeline_mvdream.py deleted file mode 100644 index 25eee28..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/pipeline_mvdream.py +++ /dev/null @@ -1,558 +0,0 @@ -import torch -import torch.nn.functional as F -import inspect -import numpy as np -from typing import Callable, List, Optional, Union -from transformers import CLIPTextModel, CLIPTokenizer, CLIPVisionModel, CLIPImageProcessor -from diffusers import AutoencoderKL, DiffusionPipeline -from diffusers.utils import ( - deprecate, - is_accelerate_available, - is_accelerate_version, - logging, -) -from diffusers.configuration_utils import FrozenDict -from diffusers.schedulers import DDIMScheduler -from diffusers.utils.torch_utils import randn_tensor - -from mv_unet import MultiViewUNetModel, get_camera - -logger = logging.get_logger(__name__) # pylint: disable=invalid-name - - -class MVDreamPipeline(DiffusionPipeline): - - _optional_components = ["feature_extractor", "image_encoder"] - - def __init__( - self, - vae: AutoencoderKL, - unet: MultiViewUNetModel, - tokenizer: CLIPTokenizer, - text_encoder: CLIPTextModel, - scheduler: DDIMScheduler, - # imagedream variant - feature_extractor: CLIPImageProcessor, - image_encoder: CLIPVisionModel, - requires_safety_checker: bool = False, - ): - super().__init__() - - if hasattr(scheduler.config, "steps_offset") and scheduler.config.steps_offset != 1: # type: ignore - deprecation_message = ( - f"The configuration file of this scheduler: {scheduler} is outdated. `steps_offset`" - f" should be set to 1 instead of {scheduler.config.steps_offset}. Please make sure " # type: ignore - "to update the config accordingly as leaving `steps_offset` might led to incorrect results" - " in future versions. If you have downloaded this checkpoint from the Hugging Face Hub," - " it would be very nice if you could open a Pull request for the `scheduler/scheduler_config.json`" - " file" - ) - deprecate( - "steps_offset!=1", "1.0.0", deprecation_message, standard_warn=False - ) - new_config = dict(scheduler.config) - new_config["steps_offset"] = 1 - scheduler._internal_dict = FrozenDict(new_config) - - if hasattr(scheduler.config, "clip_sample") and scheduler.config.clip_sample is True: # type: ignore - deprecation_message = ( - f"The configuration file of this scheduler: {scheduler} has not set the configuration `clip_sample`." - " `clip_sample` should be set to False in the configuration file. Please make sure to update the" - " config accordingly as not setting `clip_sample` in the config might lead to incorrect results in" - " future versions. If you have downloaded this checkpoint from the Hugging Face Hub, it would be very" - " nice if you could open a Pull request for the `scheduler/scheduler_config.json` file" - ) - deprecate( - "clip_sample not set", "1.0.0", deprecation_message, standard_warn=False - ) - new_config = dict(scheduler.config) - new_config["clip_sample"] = False - scheduler._internal_dict = FrozenDict(new_config) - - self.register_modules( - vae=vae, - unet=unet, - scheduler=scheduler, - tokenizer=tokenizer, - text_encoder=text_encoder, - feature_extractor=feature_extractor, - image_encoder=image_encoder, - ) - self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1) - self.register_to_config(requires_safety_checker=requires_safety_checker) - - def enable_vae_slicing(self): - r""" - Enable sliced VAE decoding. - - When this option is enabled, the VAE will split the input tensor in slices to compute decoding in several - steps. This is useful to save some memory and allow larger batch sizes. - """ - self.vae.enable_slicing() - - def disable_vae_slicing(self): - r""" - Disable sliced VAE decoding. If `enable_vae_slicing` was previously invoked, this method will go back to - computing decoding in one step. - """ - self.vae.disable_slicing() - - def enable_vae_tiling(self): - r""" - Enable tiled VAE decoding. - - When this option is enabled, the VAE will split the input tensor into tiles to compute decoding and encoding in - several steps. This is useful to save a large amount of memory and to allow the processing of larger images. - """ - self.vae.enable_tiling() - - def disable_vae_tiling(self): - r""" - Disable tiled VAE decoding. If `enable_vae_tiling` was previously invoked, this method will go back to - computing decoding in one step. - """ - self.vae.disable_tiling() - - def enable_sequential_cpu_offload(self, gpu_id=0): - r""" - Offloads all models to CPU using accelerate, significantly reducing memory usage. When called, unet, - text_encoder, vae and safety checker have their state dicts saved to CPU and then are moved to a - `torch.device('meta') and loaded to GPU only when their specific submodule has its `forward` method called. - Note that offloading happens on a submodule basis. Memory savings are higher than with - `enable_model_cpu_offload`, but performance is lower. - """ - if is_accelerate_available() and is_accelerate_version(">=", "0.14.0"): - from accelerate import cpu_offload - else: - raise ImportError( - "`enable_sequential_cpu_offload` requires `accelerate v0.14.0` or higher" - ) - - device = torch.device(f"cuda:{gpu_id}") - - if self.device.type != "cpu": - self.to("cpu", silence_dtype_warnings=True) - torch.cuda.empty_cache() # otherwise we don't see the memory savings (but they probably exist) - - for cpu_offloaded_model in [self.unet, self.text_encoder, self.vae]: - cpu_offload(cpu_offloaded_model, device) - - def enable_model_cpu_offload(self, gpu_id=0): - r""" - Offloads all models to CPU using accelerate, reducing memory usage with a low impact on performance. Compared - to `enable_sequential_cpu_offload`, this method moves one whole model at a time to the GPU when its `forward` - method is called, and the model remains in GPU until the next model runs. Memory savings are lower than with - `enable_sequential_cpu_offload`, but performance is much better due to the iterative execution of the `unet`. - """ - if is_accelerate_available() and is_accelerate_version(">=", "0.17.0.dev0"): - from accelerate import cpu_offload_with_hook - else: - raise ImportError( - "`enable_model_offload` requires `accelerate v0.17.0` or higher." - ) - - device = torch.device(f"cuda:{gpu_id}") - - if self.device.type != "cpu": - self.to("cpu", silence_dtype_warnings=True) - torch.cuda.empty_cache() # otherwise we don't see the memory savings (but they probably exist) - - hook = None - for cpu_offloaded_model in [self.text_encoder, self.unet, self.vae]: - _, hook = cpu_offload_with_hook( - cpu_offloaded_model, device, prev_module_hook=hook - ) - - # We'll offload the last model manually. - self.final_offload_hook = hook - - @property - def _execution_device(self): - r""" - Returns the device on which the pipeline's models will be executed. After calling - `pipeline.enable_sequential_cpu_offload()` the execution device can only be inferred from Accelerate's module - hooks. - """ - if not hasattr(self.unet, "_hf_hook"): - return self.device - for module in self.unet.modules(): - if ( - hasattr(module, "_hf_hook") - and hasattr(module._hf_hook, "execution_device") - and module._hf_hook.execution_device is not None - ): - return torch.device(module._hf_hook.execution_device) - return self.device - - def _encode_prompt( - self, - prompt, - device, - num_images_per_prompt, - do_classifier_free_guidance: bool, - negative_prompt=None, - ): - r""" - Encodes the prompt into text encoder hidden states. - - Args: - prompt (`str` or `List[str]`, *optional*): - prompt to be encoded - device: (`torch.device`): - torch device - num_images_per_prompt (`int`): - number of images that should be generated per prompt - do_classifier_free_guidance (`bool`): - whether to use classifier free guidance or not - negative_prompt (`str` or `List[str]`, *optional*): - The prompt or prompts not to guide the image generation. If not defined, one has to pass - `negative_prompt_embeds`. instead. If not defined, one has to pass `negative_prompt_embeds`. instead. - Ignored when not using guidance (i.e., ignored if `guidance_scale` is less than `1`). - prompt_embeds (`torch.FloatTensor`, *optional*): - Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not - provided, text embeddings will be generated from `prompt` input argument. - negative_prompt_embeds (`torch.FloatTensor`, *optional*): - Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt - weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input - argument. - """ - if prompt is not None and isinstance(prompt, str): - batch_size = 1 - elif prompt is not None and isinstance(prompt, list): - batch_size = len(prompt) - else: - raise ValueError( - f"`prompt` should be either a string or a list of strings, but got {type(prompt)}." - ) - - text_inputs = self.tokenizer( - prompt, - padding="max_length", - max_length=self.tokenizer.model_max_length, - truncation=True, - return_tensors="pt", - ) - text_input_ids = text_inputs.input_ids - untruncated_ids = self.tokenizer( - prompt, padding="longest", return_tensors="pt" - ).input_ids - - if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal( - text_input_ids, untruncated_ids - ): - removed_text = self.tokenizer.batch_decode( - untruncated_ids[:, self.tokenizer.model_max_length - 1 : -1] - ) - logger.warning( - "The following part of your input was truncated because CLIP can only handle sequences up to" - f" {self.tokenizer.model_max_length} tokens: {removed_text}" - ) - - if ( - hasattr(self.text_encoder.config, "use_attention_mask") - and self.text_encoder.config.use_attention_mask - ): - attention_mask = text_inputs.attention_mask.to(device) - else: - attention_mask = None - - prompt_embeds = self.text_encoder( - text_input_ids.to(device), - attention_mask=attention_mask, - ) - prompt_embeds = prompt_embeds[0] - - prompt_embeds = prompt_embeds.to(dtype=self.text_encoder.dtype, device=device) - - bs_embed, seq_len, _ = prompt_embeds.shape - # duplicate text embeddings for each generation per prompt, using mps friendly method - prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1) - prompt_embeds = prompt_embeds.view( - bs_embed * num_images_per_prompt, seq_len, -1 - ) - - # get unconditional embeddings for classifier free guidance - if do_classifier_free_guidance: - uncond_tokens: List[str] - if negative_prompt is None: - uncond_tokens = [""] * batch_size - elif type(prompt) is not type(negative_prompt): - raise TypeError( - f"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=" - f" {type(prompt)}." - ) - elif isinstance(negative_prompt, str): - uncond_tokens = [negative_prompt] - elif batch_size != len(negative_prompt): - raise ValueError( - f"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:" - f" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches" - " the batch size of `prompt`." - ) - else: - uncond_tokens = negative_prompt - - max_length = prompt_embeds.shape[1] - uncond_input = self.tokenizer( - uncond_tokens, - padding="max_length", - max_length=max_length, - truncation=True, - return_tensors="pt", - ) - - if ( - hasattr(self.text_encoder.config, "use_attention_mask") - and self.text_encoder.config.use_attention_mask - ): - attention_mask = uncond_input.attention_mask.to(device) - else: - attention_mask = None - - negative_prompt_embeds = self.text_encoder( - uncond_input.input_ids.to(device), - attention_mask=attention_mask, - ) - negative_prompt_embeds = negative_prompt_embeds[0] - - # duplicate unconditional embeddings for each generation per prompt, using mps friendly method - seq_len = negative_prompt_embeds.shape[1] - - negative_prompt_embeds = negative_prompt_embeds.to( - dtype=self.text_encoder.dtype, device=device - ) - - negative_prompt_embeds = negative_prompt_embeds.repeat( - 1, num_images_per_prompt, 1 - ) - negative_prompt_embeds = negative_prompt_embeds.view( - batch_size * num_images_per_prompt, seq_len, -1 - ) - - # For classifier free guidance, we need to do two forward passes. - # Here we concatenate the unconditional and text embeddings into a single batch - # to avoid doing two forward passes - prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds]) - - return prompt_embeds - - def decode_latents(self, latents): - latents = 1 / self.vae.config.scaling_factor * latents - image = self.vae.decode(latents).sample - image = (image / 2 + 0.5).clamp(0, 1) - # we always cast to float32 as this does not cause significant overhead and is compatible with bfloat16 - image = image.cpu().permute(0, 2, 3, 1).float().numpy() - return image - - def prepare_extra_step_kwargs(self, generator, eta): - # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature - # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers. - # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502 - # and should be between [0, 1] - - accepts_eta = "eta" in set( - inspect.signature(self.scheduler.step).parameters.keys() - ) - extra_step_kwargs = {} - if accepts_eta: - extra_step_kwargs["eta"] = eta - - # check if the scheduler accepts generator - accepts_generator = "generator" in set( - inspect.signature(self.scheduler.step).parameters.keys() - ) - if accepts_generator: - extra_step_kwargs["generator"] = generator - return extra_step_kwargs - - def prepare_latents( - self, - batch_size, - num_channels_latents, - height, - width, - dtype, - device, - generator, - latents=None, - ): - shape = ( - batch_size, - num_channels_latents, - height // self.vae_scale_factor, - width // self.vae_scale_factor, - ) - if isinstance(generator, list) and len(generator) != batch_size: - raise ValueError( - f"You have passed a list of generators of length {len(generator)}, but requested an effective batch" - f" size of {batch_size}. Make sure the batch size matches the length of the generators." - ) - - if latents is None: - latents = randn_tensor( - shape, generator=generator, device=device, dtype=dtype - ) - else: - latents = latents.to(device) - - # scale the initial noise by the standard deviation required by the scheduler - latents = latents * self.scheduler.init_noise_sigma - return latents - - def encode_image(self, image, device, num_images_per_prompt): - dtype = next(self.image_encoder.parameters()).dtype - - if image.dtype == np.float32: - image = (image * 255).astype(np.uint8) - - image = self.feature_extractor(image, return_tensors="pt").pixel_values - image = image.to(device=device, dtype=dtype) - - image_embeds = self.image_encoder(image, output_hidden_states=True).hidden_states[-2] - image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0) - - return torch.zeros_like(image_embeds), image_embeds - - def encode_image_latents(self, image, device, num_images_per_prompt): - - dtype = next(self.image_encoder.parameters()).dtype - - image = torch.from_numpy(image).unsqueeze(0).permute(0, 3, 1, 2).to(device=device) # [1, 3, H, W] - image = 2 * image - 1 - image = F.interpolate(image, (256, 256), mode='bilinear', align_corners=False) - image = image.to(dtype=dtype) - - posterior = self.vae.encode(image).latent_dist - latents = posterior.sample() * self.vae.config.scaling_factor # [B, C, H, W] - latents = latents.repeat_interleave(num_images_per_prompt, dim=0) - - return torch.zeros_like(latents), latents - - @torch.no_grad() - def __call__( - self, - prompt: str = "", - image: Optional[np.ndarray] = None, - height: int = 256, - width: int = 256, - num_inference_steps: int = 50, - guidance_scale: float = 7.0, - negative_prompt: str = "", - num_images_per_prompt: int = 1, - eta: float = 0.0, - generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None, - output_type: Optional[str] = "numpy", # pil, numpy, latents - callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None, - callback_steps: int = 1, - num_frames: int = 4, - device=torch.device("cuda:0"), - ): - self.unet = self.unet.to(device=device) - self.vae = self.vae.to(device=device) - self.text_encoder = self.text_encoder.to(device=device) - - # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2) - # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1` - # corresponds to doing no classifier free guidance. - do_classifier_free_guidance = guidance_scale > 1.0 - - # Prepare timesteps - self.scheduler.set_timesteps(num_inference_steps, device=device) - timesteps = self.scheduler.timesteps - - # imagedream variant - if image is not None: - assert isinstance(image, np.ndarray) and image.dtype == np.float32 - self.image_encoder = self.image_encoder.to(device=device) - image_embeds_neg, image_embeds_pos = self.encode_image(image, device, num_images_per_prompt) - image_latents_neg, image_latents_pos = self.encode_image_latents(image, device, num_images_per_prompt) - - _prompt_embeds = self._encode_prompt( - prompt=prompt, - device=device, - num_images_per_prompt=num_images_per_prompt, - do_classifier_free_guidance=do_classifier_free_guidance, - negative_prompt=negative_prompt, - ) # type: ignore - prompt_embeds_neg, prompt_embeds_pos = _prompt_embeds.chunk(2) - - # Prepare latent variables - actual_num_frames = num_frames if image is None else num_frames + 1 - latents: torch.Tensor = self.prepare_latents( - actual_num_frames * num_images_per_prompt, - 4, - height, - width, - prompt_embeds_pos.dtype, - device, - generator, - None, - ) - - if image is not None: - camera = get_camera(num_frames, elevation=5, extra_view=True).to(dtype=latents.dtype, device=device) - else: - camera = get_camera(num_frames, elevation=15, extra_view=False).to(dtype=latents.dtype, device=device) - camera = camera.repeat_interleave(num_images_per_prompt, dim=0) - - # Prepare extra step kwargs. - extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta) - - # Denoising loop - num_warmup_steps = len(timesteps) - num_inference_steps * self.scheduler.order - with self.progress_bar(total=num_inference_steps) as progress_bar: - for i, t in enumerate(timesteps): - # expand the latents if we are doing classifier free guidance - multiplier = 2 if do_classifier_free_guidance else 1 - latent_model_input = torch.cat([latents] * multiplier) - latent_model_input = self.scheduler.scale_model_input(latent_model_input, t) - - unet_inputs = { - 'x': latent_model_input, - 'timesteps': torch.tensor([t] * actual_num_frames * multiplier, dtype=latent_model_input.dtype, device=device), - 'context': torch.cat([prompt_embeds_neg] * actual_num_frames + [prompt_embeds_pos] * actual_num_frames), - 'num_frames': actual_num_frames, - 'camera': torch.cat([camera] * multiplier), - } - - if image is not None: - unet_inputs['ip'] = torch.cat([image_embeds_neg] * actual_num_frames + [image_embeds_pos] * actual_num_frames) - unet_inputs['ip_img'] = torch.cat([image_latents_neg] + [image_latents_pos]) # no repeat - - # predict the noise residual - noise_pred = self.unet.forward(**unet_inputs) - - # perform guidance - if do_classifier_free_guidance: - noise_pred_uncond, noise_pred_text = noise_pred.chunk(2) - noise_pred = noise_pred_uncond + guidance_scale * ( - noise_pred_text - noise_pred_uncond - ) - - # compute the previous noisy sample x_t -> x_t-1 - latents: torch.Tensor = self.scheduler.step( - noise_pred, t, latents, **extra_step_kwargs, return_dict=False - )[0] - - # call the callback, if provided - if i == len(timesteps) - 1 or ( - (i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0 - ): - progress_bar.update() - if callback is not None and i % callback_steps == 0: - callback(i, t, latents) # type: ignore - - # Post-processing - if output_type == "latent": - image = latents - elif output_type == "pil": - image = self.decode_latents(latents) - image = self.numpy_to_pil(image) - else: # numpy - image = self.decode_latents(latents) - - # Offload last model to CPU - if hasattr(self, "final_offload_hook") and self.final_offload_hook is not None: - self.final_offload_hook.offload() - - return image diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/scheduler/scheduler_config.json b/checkpoints/ashawkey/imagedream-ipmv-diffusers/scheduler/scheduler_config.json deleted file mode 100644 index 441edcd..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/scheduler/scheduler_config.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "_class_name": "DDIMScheduler", - "_diffusers_version": "0.25.0", - "beta_end": 0.012, - "beta_schedule": "scaled_linear", - "beta_start": 0.00085, - "clip_sample": false, - "clip_sample_range": 1.0, - "dynamic_thresholding_ratio": 0.995, - "num_train_timesteps": 1000, - "prediction_type": "epsilon", - "rescale_betas_zero_snr": false, - "sample_max_value": 1.0, - "set_alpha_to_one": false, - "steps_offset": 1, - "thresholding": false, - "timestep_spacing": "leading", - "trained_betas": null -} diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/text_encoder/config.json b/checkpoints/ashawkey/imagedream-ipmv-diffusers/text_encoder/config.json deleted file mode 100644 index ec9b92b..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/text_encoder/config.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "_name_or_path": "stabilityai/stable-diffusion-2-1", - "architectures": [ - "CLIPTextModel" - ], - "attention_dropout": 0.0, - "bos_token_id": 0, - "dropout": 0.0, - "eos_token_id": 2, - "hidden_act": "gelu", - "hidden_size": 1024, - "initializer_factor": 1.0, - "initializer_range": 0.02, - "intermediate_size": 4096, - "layer_norm_eps": 1e-05, - "max_position_embeddings": 77, - "model_type": "clip_text_model", - "num_attention_heads": 16, - "num_hidden_layers": 23, - "pad_token_id": 1, - "projection_dim": 512, - "torch_dtype": "float16", - "transformers_version": "4.35.2", - "vocab_size": 49408 -} diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/merges.txt b/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/merges.txt deleted file mode 100644 index 76e821f..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/merges.txt +++ /dev/null @@ -1,48895 +0,0 @@ -#version: 0.2 -i n -t h -a n -r e -a r -e r -th e -in g -o u -o n -s t -o r -e n -o n -a l -a t -e r -i t -i n -t o -r o -i s -l e -i c -a t -an d -e d -o f -c h -o r -e s -i l -e l -s t -a c -o m -a m -l o -a n -a y -s h -r i -l i -t i -f or -n e -ð Ł -r a -h a -d e -o l -v e -s i -u r -a l -s e -' s -u n -d i -b e -l a -w h -o o -d ay -e n -m a -n o -l e -t o -ou r -i r -g h -w it -i t -y o -a s -s p -th is -t s -at i -yo u -wit h -a d -i s -a b -l y -w e -th e -t e -a s -a g -v i -p p -s u -h o -m y -. . -b u -c om -s e -er s -m e -m e -al l -c on -m o -k e -g e -ou t -en t -c o -f e -v er -a r -f ro -a u -p o -c e -gh t -ar e -s s -fro m -c h -t r -ou n -on e -b y -d o -t h -w or -er e -k e -p ro -f or -d s -b o -t a -w e -g o -h e -t er -in g -d e -b e -ati on -m or -a y -e x -il l -p e -k s -s c -l u -f u -q u -v er -ðŁ ĺ -j u -m u -at e -an d -v e -k ing -m ar -o p -h i -.. . -p re -a d -r u -th at -j o -o f -c e -ne w -a m -a p -g re -s s -d u -no w -y e -t ing -y our -it y -n i -c i -p ar -g u -f i -a f -p er -t er -u p -s o -g i -on s -g r -g e -b r -p l -' t -m i -in e -we e -b i -u s -sh o -ha ve -to day -a v -m an -en t -ac k -ur e -ou r -â Ģ -c u -l d -lo o -i m -ic e -s om -f in -re d -re n -oo d -w as -ti on -p i -i r -th er -t y -p h -ar d -e c -! ! -m on -mor e -w ill -t ra -c an -c ol -p u -t e -w n -m b -s o -it i -ju st -n ing -h ere -t u -p a -p r -bu t -wh at -al ly -f ir -m in -c a -an t -s a -t ed -e v -m ent -f a -ge t -am e -ab out -g ra -no t -ha pp -ay s -m an -h is -ti me -li ke -g h -ha s -th an -lo ve -ar t -st e -d ing -h e -c re -w s -w at -d er -it e -s er -ac e -ag e -en d -st r -a w -st or -r e -c ar -el l -al l -p s -f ri -p ho -p or -d o -a k -w i -f re -wh o -sh i -b oo -s on -el l -wh en -il l -ho w -gre at -w in -e l -b l -s si -al i -som e -ðŁ Ĵ -t on -d er -le s -p la -ï ¸ -e d -s ch -h u -on g -d on -k i -s h -an n -c or -. . -oun d -a z -in e -ar y -fu l -st u -ou ld -st i -g o -se e -ab le -ar s -l l -m is -b er -c k -w a -en ts -n o -si g -f e -fir st -e t -sp e -ac k -i f -ou s -' m -st er -a pp -an g -an ce -an s -g ood -b re -e ver -the y -t ic -com e -of f -b ack -as e -ing s -ol d -i ght -f o -h er -happ y -p ic -it s -v ing -u s -m at -h om -d y -e m -s k -y ing -the ir -le d -r y -u l -h ar -c k -t on -on al -h el -r ic -b ir -vi e -w ay -t ri -d a -p le -b ro -st o -oo l -ni ght -tr u -b a -re ad -re s -ye ar -f r -t or -al s -c oun -c la -t ure -v el -at ed -le c -en d -th ing -v o -ic i -be st -c an -wor k -la st -af ter -en ce -p ri -p e -e s -i l -âĢ ¦ -d re -y s -o ver -i es -ðŁ ij -com m -t w -in k -s un -c l -li fe -t t -a ch -l and -s y -t re -t al -p ol -s m -du c -s al -f t -' re -ch e -w ar -t ur -ati ons -ac h -m s -il e -p m -ou gh -at e -st ar -wee k -! !! -c lu -th ere -n er -t om -s el -ï¸ ı -wor ld -v es -c am -go t -in ter -of f -u m -ton ight -o ther -h ou -loo k -j e -i d -si on -be au -at t -el i -or t -re c -f f -st er -su pp -g en -be en -il y -te am -m m -i c -pe op -it t -at s -on ly -mb er -en g -b ri -m p -k now -b ur -b ar -in s -lo w -sh e -ro w -â Ŀ -t ro -peop le -vi a -lo w -ag a -be t -x t -f ac -ch ar -e ar -w al -s en -f am -b le -n ati -is h -n or -g ame -li ve -s co -le y -d on -ic k -b all -ver y -the se -p an -i a -at ing -c r -a re -g ir -ma ke -st re -sho w -. " -f l -u p -d r -than ks -il li -w om -st s -i g -s ur -ever y -c ur -vie w -le t -in to -mo st -n a -in di -g ar -ha d -s ou -v ed -an t -iti on -ma de -f ol -un i -it ed -ðŁ ı -ic al -th r -read y -ch ec -d ra -k es -boo k -e p -si c -mor ning -ne ws -c au -c t -w ell -an c -pho to -th an -or s -bir th -g g -ou t -ne xt -som e -en ing -stor y -ch ri -do wn -hom e -f fe -fre e -d a -b or -f il -ci al -than k -si de -le ar -qu e -l ine -t en -at es -ye ars -m y -pho to -beau ti -ri ght -n u -for m -shi p -b an -th er -d ays -g am -as on -g y -ðŁ İ -birth day -se t -ic k -e t -st ill -com ing -ta ke -ðŁ ĩ -b b -s ol -s on -d en -e p -mu sic -the m -de n -wh y -f oo -c ra -am az -w n -h ol -t ting -w r -u e -ma g -c ro -l an -c lo -b ra -a k -s ing -c al -re ad -' ve -jo h -b ab -d ri -b lo -bi g -er ic -in t -t or -tr y -l a -le g -hou se -m ic -v al -beauti ful -l itt -chec k -ne w -ver s -s w -ar i -pla y -h er -âĢ ĵ -w in -m a -con gr -sch ool -f un -. @ -he al -ic h -d el -wh ere -l on -ke t -tw o -mu ch -wat ch -v en -d ed -a st -k ed -b as -go ing -m p -e ver -w ays -ro o -de sig -l y -s ed -to p -l in -ch an -to o -it ing -d ent -gh ts -t y -sp o -ne ed -b lu -in st -be ing -âĿ ¤ -w el -l s -hi m -m ay -st ing -n a -el y -litt le -g a -n at -tom or -m c -h on -w ant -a ir -pi c -am eric -p er -le ss -wee k -ve l -a h -c ap -ch am -g er -ti m -tomor row -ne ss -st ate -h al -ser v -z e -o s -p at -v is -ex c -s in -f f -c ity -c en -an y -b el -su mm -t in -w ould -loo king -k o -ce le -fam ily -m er -po w -hel p -bu s -c o -c le -sel f -en s -ic s -th o -an i -ch o -le ad -b s -t wee -th ink -for e -ch il -vi de -di d -al e -ch i -v il -en ds -w ing -p as -' ll -v ol -s a -g s -man y -j ec -be fore -gra ph -n y -ur ing -w il -d d -bu il -f av -st ed -tr an -l ing -ou d -d ge -fi el -nati onal -st a -c er -w ere -in a -se ason -c ou -n ed -amaz ing -ti ons -cele br -n s -a th -he ad -s day -d ar -lo c -v in -an other -g oo -s at -n y -jo in -pre s -s es -s ing -an a -in ing -.. .. -c our -ï¸ ı -ac t -cau se -li ght -am s -t a -b al -f c -hi gh -off ici -t t -chri st -d ic -d ay -ra l -h or -: ) -vi si -n am -o b -ma s -gh t -re ally -t un -fin d -thr ough -por t -u t -ti ve -st y -n e -or e -ðŁĺ Ĥ -supp ort -ne ver -ev en -ðŁ Ķ -h a -y a -l d -u k -r an -j am -wi th -me di -d es -ne y -ch ing -al e -h y -k in -! ! -d y -pl ace -al so -b le -wh ich -bl ack -b li -s ay -par k -pl ay -ir e -vide o -week end -a il -ke y -p t -w ard -fri day -d in -ine ss -g ro -b en -al ways -t ball -ag o -m il -c y -pro duc -di sc -un der -ple ase -sp or -fu ll -e y -ðŁ Ļ -is e -iti es -c at -k no -u se -fo re -k er -ar t -hi gh -op en -s an -e f -our s -sh ed -st ri -d ro -aga in -i m -ðŁ ĵ -en jo -fu n -ge tting -p en -g er -c li -an y -ever y -e u -wom en -â ľ -e st -c ould -r y -" @ -th ou -sh a -comm un -b er -d ents -di s -wh ile -aw ay -di o -h am -g la -d ate -k a -mis s -un ch -w on -in f -roo m -g a -re al -ex per -di rec -sh ould -sp r -g ol -l ong -bet ter -or i -e y -i ence -il s -z z -h an -f ound -v s -â Ļ -po st -ti c -par t -m en -ren ce -ce ss -v ic -s il -sho p -ðŁĺ Ĥ -f ood -v al -sti c -y ou -s ays -e lec -st ar -o c -l and -i d -c tion -fiel d -s of -st art -wat er -fri ends -on es -ðŁ Į -f la -f ar -wh ite -par ty -in st -gr ou -t v -every one -m ent -j a -ch a -pr in -an ts -d uring -l at -l ar -we st -th en -k a -y oun -in sp -in te -we en -visi t -aga inst -re le -he ad -c es -to wn -loo ks -th re -re gi -ren t -pro jec -gir l -se ar -w o -m om -c ar -h un -pu bli -d i -p le -c all -c ri -u m -for d -per fe -fri end -h ard -ssi on -te st -pla ying -ar ound -be cause -ke ts -me et -sat ur -ar ti -wor k -j un -v en -r un -me mber -por t -su per -t wit -s am -el s -t ly -ad v -ati ve -at h -s ure -av ail -la r -s qu -ar ds -ev ent -m en -l l -o ver -lo gy -it al -tim es -m al -b ack -c oo -ma king -st ru -â ģ -it u -sh ar -g an -c as -s n -summ er -pic ture -f an -h in -christ mas -c y -pr oud -cham pi -desig n -pp ing -ho pe -c a -avail able -ma y -we d -photo graph -spe cial -sal e -sto p -er y -a we -al ity -hi story -am a -pre si -b ru -wor king -d one -d r -k en -fe at -w ood -ate st -sun day -mo vi -vel y -s le -f ace -sp ec -stu dents -b y -ha m -sp on -bus iness -d at -i e -i p -so ci -g lo -h and -re cor -r s -me e -ke ep -p ur -heal th -sh e -com ple -go d -da vi -col lec -li st -r a -clu b -t ers -in clu -th ings -pl an -â ĺ -joh n -sh ing -at ul -so on -blu e -g or -satur day -w on -congr atul -se e -âĿ¤ ï¸ı -tho se -ðŁĺ į -fin al -d ou -it h -o wn -ro ad -t our -a st -indi a -ti l -n d -f er -fav or -su l -lear n -fir e -ju st -grou p -a h -r ac -bo dy -u r -c are -à ¸ -p lo -o h -po s -gi ve -te ch -su b -c ent -er ing -y m -il ity -f ic -lon don -v ir -gu ys -b a -ðŁ ¤ -bab y -sc re -ðŁĺ į -tru mp -un der -chan ge -i an -col le -ss es -l er -ss ed -n ice -ann oun -pow er -s ar -a king -min i -s li -s wee -k ar -fu l -c ru -ac tion -a ther -) . -st and -de vel -a a -g an -le ft -lo l -re l -tran s -m ents -in t -e f -man ag -di g -gen er -do wn -p au -ti v -k u -th ur -k en -st on -f ans -tal k -twee t -t oo -sty le -pro te -se con -fr on -awe some -g l -p al -ne t -s or -la u -g on -sin ce -t ty -ser ies -me mor -b eli -fil m -di d -di es -o t -congratul ations -p ra -e ve -w oo -offici al -su c -in cre -b on -par t -pp ed -cla ss -si ve -bo y -cu l -perfe ct -t ou -d am -wel come -foo tball -h i -p ap -wa it -ad a -congr ats -youn g -exc ited -re ce -j an -v a -re d -st ra -medi a -' d -do es -le t -mu l -ill s -gre en -m el -to ge -fu ture -ye ster -vers ity -for m -ta in -i de -ch es -ki ds -qu i -ha ha -de ta -bi g -favor ite -gir ls -con tin -do m -sear ch -u al -a ir -d ers -mon th -c er -yester day -commun ity -ad e -do g -vil le -ic es -d eli -sy ste -ru n -is m -he art -c up -en ti -fe w -presi dent -e ds -un til -fe sti -o k -f lo -sa id -ol e -me d -tra vel - £ -ph one -toge ther -fa st -lo t -gam es -sh ir -bet ween -y es -th ers -do ing -m ac -at or -b and -fol low -projec t -devel op -di ffe -con fe -spe ci -ca st -y s -bo ard -r d -i al -sh oo -r am -ha ving -sh are -fol low -on e -n ame -m r -pu t -disc u -or y -c ame -ou s -s ite -twit ter -t b -t it -fin ally -z ed -su per -com pan -us ing -all s -li st -r is -sho t -g al -t ar -de l -joh n -âĢ Ķ -some thing -ra m -inte re -wh e -b it -ðŁ į -stre et -oun d -a i -tic kets -movi e -re al -k y -ta king -o pp -c c -l am -m oun -in ve -bl ack -us ed -on line -y or -loc al -gu e -c ks -o w -ge st -bo ys -illi on -con t -re ci -in ed -eu ro -no w -se en -p h -te ach -de f -sou th -su ch -aw ard -mu st -is su -ca re -fe el -p lu -l atest -spor ts -we b -te x -e ment -s k -fi c -w an -te ch -o t -bo x -n er -fre e -t al -a sh -c ase -ho t -won der -mee ting -er a -ch all -ðŁ IJ -jo b -il i -c ool -j our -th s -m o -f el -di e -mic ha -e le -te am -serv ice -st and -ma kes -p ing -ear ly -com es -e k -ho li -v ers -ag ue -s au -thre e -mon day -fa shi -some one -th ro -se a -b ad -supp or -tur n -ur y -m ing -photograph y -n ic -mar k -pre tty -ss ing -wat ching -me mb -ar ri -coun ty -be ach -fr an -cen ter -pol ice -b at -publi c -t an -pre ss -s af -s y -ge ts -ro y -n ers -y our -bu y -st ers -sho w -as ed -chil dre -af ric -in es -sp ace -sc ri -h all -pa in -ar ing -hom e -m ur -heal th -ch ed -s and -rece i -gu y -e a -americ an -re si -childre n -- - -i ri -ing ton -coun try -ro ss -le n -ann a -boo ks -b c -e ce -d om -lo vely -k h -pe t -g y -g ri -st age -off ice -ro ck -m on -b ay -t able -su n -m ed -th in -l or -f low -( @ -uni versity -stor e -fron t -goo d -z a -vo te -nor th -he y -an im -or der -mi d -with out -a de -re member -mar ket -? ? -mu s -tra ining -e duc -bu t -co ver -st an -sc en -b la -bre ak -l ou -s ame -g old -a in -o s -bo th -l it -ver n -a i -al bu -p a -enjo y -be g -ell ing -thur sday -inf o -s an -americ a -ha ir -te l -mar ch -con cer -colle ge -confe rence -ap p -h our -ch ang -â ļ -s our -ol s -we ather -w ar -p hi -festi val -secon d -cu te -pr ac -en er -str y -le a -pol it -s av -se n -o w -m i -ne ar -ou ght -z e -co ffe -w illi -d an -se y -davi d -e se -f an -de ci -the at -no v -ati on -tr ac -sc i -re view -c el -e m -u n -ju ly -or ig -ti on -d ru -form er -st ay -af ter -in v -too k -dat a -b al -tu es -d an -ev ening -ðŁĺĤ ðŁĺĤ -d ol -u res -pro vi -t s -e st -sig n -j ac -u k -s ong -ye t -bo w -in du -j ap -h oo -po int -any one -z y -i st -h ur -it al -buil ding -wom an -ch ur -j er -per for -co ach -le ague -ce ss -ne t -i mag -nati on -br it -qu e -aw ards -ag es -wor ks -c ed -man ce -l ate -ig n -mon ey -tru e -i i -t ell -pl ac -p ac -as y -wor ld -be hin -im port -read ing -gra m -gi ving -me t -h it -for ward -st om -pres ent -jun e -so cial -no on -mar t -hal f -s we -go vern -k er -deta ils -li sh -_ _ -ac y -si a -ber t -f all -! !!! -) , -th i -d iti -sp ort -k ing -f it -st af -c at -mu se -cen tr -y er -con tro -b loo -wal k -ac tu -did n -li m -lear ning -re search -wed ne -au th -h ours -k y -f ar -h en -.. .. -it ch -ri l -str ong -sk y -que sti -jam es -r on -d g -f ur -c in -do es -app ro -mar ke -tu res -ful ly -ch at -behin d -te m -fin i -mis sion -b att -fe el -he av -every thing -b ar -w ish -pre mi -i ma -exper ience -e ach -re port -swee t -tic s -spr ing -re spon -syste m -vic tor -l in -sa w -al ready -gh ter -f le -ã ĥ -br ing -albu m -- - -ell s -st an -to m -inter national -w ent -an ni -mat ch -pp er -st one -sm all -ra in -fashi on -are a -v an -ag ram -k o -thou ght -wor th -v an -m er -coffe e -it es -g n -arti st -c on -ar ch -c ir -se cre -gr ound -is o -h and -co m -bri dge -h s -x i -l ink -pu l -sp l -r ace -f li -ri ver -g as -di sco -d al -play er -f it -photo s -it y -o k -j or -tr a -ap ril -ad s -a di -sol u -beau ty -do or -me ss -up date -ali a -sch o -en ed -mom ent -sco t -sc ience -i or -ti es -ac ross -ous ly -sh es -does n -p age -wat er -m illion -cla ssi -l ic -ca st -form ation -micha el -ell o -s mo -in ts -vi sion -op ening -ld n -au str -tues day -win ner -po ssi -r ound -shir t -di t -b o -u es -il led -al ong -tri p -star ting -im pro -k an -per son -no t -re co -ne eds -c le -li e -re st -r ing -win ter -si mp -mo m -be er -fac e -tor s -us a -collec tion -ge or -se ssion -tr ying -la s -la ke -j en -orig in -stu dent -se cur -v in -pic s -ex pe -com p -gon na -e qu -b ad -le y -a u -memb ers -bre ak -w all -gi c -din ner -bu l -insp ir -r i -min d -ic a -win ning -tal king -t ren -s is -t en -wonder ful -s now -he ar -th om -no thing -gu i -st in -blo g -fe st -b un -le e -war ds -ch ance -dre ss -re n -pau l -p es -tech no -ru ssi -c ard -e ast -mar i -w ine -t i -la w -str ic -k i -ap e -au gu -pro fe -as h -cour se -ma il -ren tly -d un -m un -lo ve -is land -dri ve -s l -end ed -ma in -lo st -nat ure -âĿ¤ ï¸ı -ch ic -re por -p in -pr o -st ation -ce p -ta kes -compan y -go es -on d -ma ch -ra dio -d ad -ro ck -j a -p ay -champi on -e e -in de -tt a -ati c -t ab -beli eve -ener gy -z i -t at -wor d -on ce -re sul -y l -and re -an o -inst agram -clo se -t am -cu stom -w a -con om -sho ws -li fe -k in -ro b -t age -n ation -al most -list en -sa ve -re li -ac e -mar y -tre e -for get -j ack -wa iting -direc tor -h ill -bor n -te mp -f l -st e -on a -sing le -wedne sday -un ited -in o -@ _ -ne l -celebr ate -en ding -de al -j i -can ada -hu ge -tr ack -âĢ ¢ -f y -fan ta -an g -yor k -rele ase -p un -ep iso -wor ds -t our -p ack -i gh -classi c -perfor mance -ke t -after noon -recor d -win s -pro ble -âĿ ¤ -f our -b ed -ban k -d ance -s la -cal led -mi ght -a p -pa st -ðŁ ļ -diffe rent -it e -gi ft -ssi ve -chur ch -c us -pro gram -ho tel -ic e -ma d -secur ity -en ge -d c -en ough -st a -e ty -de ad -g un -he ar -m ir -hu man -gre ss -oun ds -pi ece -bre aking -gar den -fi ght -vie ws -f ish -star ted -run ning -gre en -ser i -s m -as k -d or -de ath -e conom -er i -ir d -s er -l unch -âģ ¦ -bo x -nat u -ba se -b an -f al -glo bal -wil d -wo w -out side -mo ve -le ad -an al -muse um -on g -ha w -pow er -than k -b ac -char ac -cam pa -dig ital -r o -op er -de v -w ol -p ati -f a -m ale -pap er -ill ing -c s -â ĥ -educ ation -ta ken -e ffe -m ou -s ad -" . -bas ed -staf f -inclu ding -li ving -a c -ch ina -mo b -stor m -lu ck -ph il -o o -y n -tra vel -k el -ti al -pr ice -boo k -import ant -bi o -p ool -ny c -f ab -lo ad -? ! -chall enge -cr y -ser ve -we ar -bu s -ta in -nu mber -ro r -k at -i z -th ough -ho sp -m m -fa ir -ut es -ho t -po p -fi ed -cam p -develop ment -li br -c ali -em s -âģ¦ @ -b ol -is ed -stand ing -mo del -it a -g le -bro wn -ima ge -ve red -for ce -o il -par tic -sh u -da ily -la w -se c -cla ss -cam p -holi day -cl in -k ers -pres ent -gam e -incre di -er ship -inter view -b ill -du e -and y -ab o -in nov -ke y -ac ade -p il -mo der -st ars -br and -f er -wee ks -con si -pr e -sa fe -wr it -di um -la unch -marke ting -ann ual -as si -cour t -la dy -c ted -and a -in side -chil d -opp or -sm ith -centr e -gu e -âģ © -f ren -st y -for t -ent ly -is n -ke ep -to ber -on y -bo y -al d -col la -de mo -le vel -com pet -ad o -b our -fanta stic -m ate -s u -sou th -oppor tun -vers ary -lat er -bu d -face book -la un -ster n -p it -! " -ma j -gr am -tb t -fi re -happ y -a ks -wh ole -actu ally -ill er -ell a -lo ts -al ex -an ge -lan ds -ðŁĺ Ń -en ter -r ou -episo de -p ed -in ten -sh ire -wh o -pl an -h o -ca ke -we st -mag az -fre sh -c c -n ar -ch ris -wr iting -w er -n om -l o -mi dd -dre am -o l -ti onal -de b -> > -be come -s i -gr and -all ing -hi stor -ri de -i red -saf e -que en -ci l -in tro -vi l -d ani -.. . -ar tic -st at -sh ort -or ing -sel fi -mis si -do c -b it -g all -b om -i re -se lec -d ition -ðŁĶ ¥ -fri end -be at -gh ting -ðŁĺ Ĭ -pe ace -ex hi -ant a -ab ility -il lu -j on -qu ality -tri bu -m es -play ers -fa ir -cu t -c ab -suc cess -b i -su s -pro mo -sch e -an ge -ic o -comm it -cat ch -ill a -kin d -feel ing -qu o -s ay -anni versary -spo t -mo ther -an e -p end -your self -op s -app le -min utes -p o -gr and -ri es -ha ha -care er -ed ition -de c -ric k -am i -concer t -iti ve -ge ous -d ly -t te -adv ent -i g -li ghts -ak er -sk y -âĥ £ -r ay -fini shed -w ay -s d -ac coun -ðŁĴ ķ -ck y -ch el -lit er -pain ting -lo s -st un -techno logy -n as -ma r -b il -afric a -ki e -ey es -gol f -plu s -ni a -it ec -serv ices -wed ding -kno wn -te le -.. ... -star ts -pa ren -w ants -ati onal -mon ths -win do -fav our -er t -magaz ine -ex clu -re ve -b c -origin al -e ss -n al -an ti -st ro -t ice -stu dy -à ¤ -v ac -nation al -fi ve -ra in -ve ment -u te -ver se -em er -ar my -possi ble -gue ss -val ley -ther n -cro w -m r -col or -on to -pic k -cle ar -dar k -t ac -wan ted -it ting -can cer -govern ment -di e -ri se -z ing -col d -f oun -stu dio -str ation -bro ther -a head -sh el -mic ro -ic ally -d au -sig ned -vi ol -a x -as se -i o -w re -spl ay -ch ick -augu st -pl at -ti ps -sp i -hu man -e asy -lo gi -mi ke -gro w -ag re -w w -sh ad -mo tiv -wi de -tur ns -om g -v ar -de fin -su g -j im -ðŁĶ ¥ -t d -campa ign -nam ed -re tweet -co p -t v -le av -k is -dou ble -s mar -issu e -vil la -in formation -li es -sto ck -n t -di stric -sh or -mi x -er o -se p -me x -see ing -li ve -re min -co de -g ur -s c -wil d -l un -h ood -spo t -fa ther -fore ver -up d -tra f -f ly -ne ed -gra du -tra in -ma ke -s ab -be y -si ze -lead er -tal ks -e u -lo g -fo x -gor geous -le ss -le ts -sur pri -my self -no te -li ves -f ru -lo ved -se ver -de m -j i -so c -h old -do gs -n i -â ŀ -lea ve -air port -ben ef -ex pl -shi ps -comple te -ach i -gre at -vin tage -j ack -ro c -woo d -pri v -off er -ey e -ver sion -te a -co ach -off ic -w ell -g en -s at -h h -you th -o x -? " -m t -mi x -g g -d le -natu ral -buil d -break fast -thin king -theat re -mo on -ber g -go als -geor ge -en e -exc ell -il ing -tun e -y ed -g ate -m it -net work -jo e -h ello -f b -tu be -we aring -ath le -stru c -har d -gla ss -g ers -thro w -g es -b t -indu stry -manag ement -ali st -go al -stre am -y el -a vi -ici ous -o thers -s ki -chri sti -bir d -e sc -m in -tr o -l t -j an -im p -ri ghts -sh a -or gan -cent ral -ar a -ro ll -favour ite -che ster -el se -p ay -car s -m ine -ste p -prac tice -maj or -h ang -ðŁĺ ĺ -n on -v ari -eng ine -vol un -di a -i led -arch itec -p ink -d s -th y -wa sh -web site -ba g -contro l -el li -f ra -an sw -d ence -y u -r on -ol a -g in -dr in -li c -cou ple -sp ar -g on -cre ate -c t -celebr ating -de ep -e at -te e -vo ice -dro p -vis it -at ors -sta dium -f t -w is -ro l -gra de -fam il -po ints -re pre -w as -traf fic -jap an -or g -hon or -tex as -man u -âĻ ¥ -safe ty -re r -b ag -em plo -rele ased -re gu -ak a -n av -ro le -sen ior -spec t -cro ss -lin es -be st -p ack -s in -ti e -mis sing -sun set -li ber -is ing -j ay -sk i -champion ship -ac tiv -la dies -play ed -y y -pu bl -al o -pri de -s r -pa ki -lu x -sur vi -ck ed -e ts -cho col -austr alia -par is -mi les -h at -ment al -al a -me an -mob ile -en a -in si -f ound -chi ef -t ag -incredi ble -re turn -à © -goo gle -fren ch -cre w -hal lo -ali an -j az -ch er -sil ver -nor th -eng lish -base ball -c af -lim ited -follow ing -app reci -ear th -k ir -ve mber -w ed -p tion -g ed -oc tober -fl ori -c r -en cy -ga ve -lor d -stu ff -ber ry -po st -sm ile -bro ad -st ate -gg er -me ans -ic y -gu n -y o -ma ster -bur g -han ds -ni e -/ / -uni on -brit ish -big gest -distric t -am ing -h il -o ce -per son -pas s -en vir -scho ols -arri ved -anc es -insp ired -ex pla -be n -libr ary -bo tt -am p -ste ph -cont act -b ang -m s -cali for -t old -batt le -b b -chic ago -âľ ¨ -str ate -sh i -de ce -- ) -ad d -la b -j ones -leg end -cast le -ing er -st ance -be l -ur a -re fu -lead ers -po t -se x -h ic -artic le -ki d -fr ance -x x -ex e -gui de -volun te -pr int -al i -ce o -twee ts -w x -scen e -vol u -ant i -h an -as soci -shar ing -ro se -mini ster -sh er -in ste -cle an -demo cr -po ster -sk in -p sy -pro per -cra zy -i am -o re -in i -any thing -po d -mo ving -cl ick -ex plo -com b -cra ft -f i -bloo d -is ra -publ ic -d ent -ol ym -eng land -a si -ch er -fac t -envir on -har ry -g one -me dic -enjo ying -just ice -j r -indi an -wi fe -s ound -t es -dra wing -p al -ide a -cr it -ju li -il er -war m -cl ar -thou ghts -def en -coun cil -intro duc -di ed -jan u -an i -s end -li er -m l -intere sting -tra de -win d -b ay -s ac -anc y -sour ce -b es -org ani -ar ly -lar ge -ff ici -ta g -u t -de sp -o es -tit le -sy m -pic tures -op en -wom en -sho wing -ri a -le ast -lead ership -cur rent -elec tr -val ent -list ening -c key -gener al -de ser -du ce -; ) -c ent -ðŁĺį ðŁĺį -sco tt -po or -selfi e -ev ents -i on -wr ong -de v -h ill -sep te -cul ture -l ine -sor ry -s ent -si ster -ce pt -k ri -no vember -ar i -announ ce -z ation -br an -g ent -d u -l en -per s -f m -mart in -o p -e mb -om e -midd le -suc cess -pe ter -janu ary -f lu -rac ing -d av -bi ke -ðŁı » -pe t -shoo t -profe ssi -feat uring -septe mber -now playing -sta ur -z a -on ic -qu ick -bas ke -spe aking -mil it -z er -chick en -b ell -s ad -co ast -lo ving -y ers -d j -pan el -ver age -s wit -ic ks -b ou -califor nia -s am -paren ts -er o -k illed -ph ys -jo bs -mi gr -an th -e mo -hallo ween -and er -c m -compet ition -e ag -s ket -sp ir -may be -exclu sive -app e -jour ney -scre en -for d -i o -h ate -u g -sou l -her o -soci ety -sy n -gu it -n h -d j -as es -im pre -ti me -sal es -d d -f ts -summ it -stun ning -om s -tur ned -cle an -sof t -be at -re staur -de red -en ces -ma gic -di o -sh ine -gu est -health y -exhi b -stor ies -po pu -n is -el a -bel ow -fun ny -resul ts -s ne -cur rently -ar d -down load -f light -m al -f ine -p ad -ch u -ent ed -h at -ðŁij ı -ste ve -j o -mar k -r at -b all -p c -p on -b by -o li -ar ts -as ure -bow l -att ack -mi c -de ar -ran ge -en ter -chocol ate -br illi -ac cess -, " -? ?? -ch ap -con st -t n -mat ter -blu e -gall ery -em p -work shop -lead ing -y ours -baske tball -w anna -th u -_ _ -mar ri -sle ep -bi a -ch e -ma d -imp act -o wn -si r -chan nel -euro pe -e sp -k itch -hosp ital -w ra -roy al -f s -ne u -qu ar -ne y -ac ks -ch ase -pp y -st al -at ely -ti m -dece mber -r are -per form -cre am -we ight -ch oo -ni ght -ha ven -fr anc -kh an -buil t -hel ping -tru st -ty pe -gol den -ta x -s now -s wi -di sa -questi ons -ve y -li ght -c n -cl oud -thom as -ag ed -sh ou -te ams -gr an -re ason -a a -you tube -v p -pi zz -manag er -bur y -cre dit -tre at -ma x -i k -ma in -g ing -de ad -pro bab -ye ah -ã Ĥ -br and -so li -pl ant -ta yl -gir l -ðŁĺ Ń -nam ent -au to -mess age -ko re -n ur -ter r -ag u -ma p -sen ting -lo ves -gi ves -g ab -z en -ro bert -con fir -w ars -o m -sta in -cam era -and er -won der -a b -ca p -s old -su it -wal king -contin ue -effe c -dau ghter -d anc -cha in -mul ti -ki d -y an -champi on -v o -ta ins -ho st -min i -mis sed -re sc -ly n -fin ish -del icious -s as -tayl or -i b -pro mis -produc ts -moun tain -flori da -regi ster -tre at -rec ent -fe male -boo th -mat t -ve hic -s op -mo tor -suppor ting -phi c -ex tre -dr ink -lan e -th ird -p s -con stru -ce re -far m -ðŁİ ī -tu red -ðŁij ī -c ats -a j -gi e -shoo ting -as ked -paki stan -am e -m b -g il -leg al -squ are -in vol -dra w -oo oo -!! !! -opportun ity -p y -e i -b ts -teach er -charac ter -john son -br on -ly wood -ch ine -c ing -c ine -d ge -gam ing -russi a -ci a -quo te -ric h -go v -flow ers -sp iri -st in -grow th -ðŁı ¼ -comm er -j uni -mu m -r an -s na -a ren -c b -ac tor -col or -si t -pa ir -ch i -bo w -acade my -hel d -r ang -me tal -y l -ac tive -probab ly -t ch -need ed -spe e -cho ice -ital y -ry an -ðŁĩ º -flow er -v it -m n -found ation -b ak -si ons -ne igh -f loo -he ard -re mo -fre sh -ing ing -re f -to wn -cl ou -je sus -spiri t -cou ldn -z es -ðŁĴ Ļ -willi ams -pro ce -moder n -pro cess -sho es -cre ated -tri c -issu es -ann e -att en -de but -h r -n it -sti g -a po -e ps -z u -ã Ģ -si x -car ds -lan gu -fam ous -tour nament -se l -e bay -y n -st on -k ick -announ ced -k am -vo c -brilli ant -hou se -che ese -war ri -mus ic -ho ckey -ðŁĺĤ ðŁĺĤ -sk ills -au tom -smar t -med ical -mon y -e x -gu ar -gi ve -pers onal -ven tion -al li -pre ss -flo or -m c -victor y -hi m -simp le -th or -ðŁĩº ðŁĩ -ta il -lu cky -ale x -qu ite -bo t -ssi ons -chall eng -c ann -amaz on -h ell -b ought -) : -ed y -secre t -produc tion -inde pend -de fe -ad ded -p r -p ag -be d -gre atest -with in -j ay -ðŁ ¥ -ire land -re ly -s d -te xt -dri ving -pro gram -spe ed -col um -str on -à © -fore st -â ĸ -mach ine -co in -sc ar -oun t -bi e -¡ ï¸ı -por tra -comm on -wre st -recei ved -kno w -inve st -pl ans -ac cor -ad op -ter y -re ali -p p -k al -art work -me an -go d -inste ad -an ci -motiv ation -as ing -inspir ation -up coming -polit ical -euro pe -m ers -heav y -ðŁij į -fe bru -scot land -ou gh -b t -bo ss -sche du -spe ak -n ick -u red -in o -e k -ri sk -tor y -pres ents -b on -ru g -st ates -exhib ition -il o -m ill -br ought -: -) -tou ri -com e -offici ally -champi ons -do ors -re p -po se -ex tra -k ings -soc cer -squ ad -app lic -at a -some times -t ari -excell ent -ðŁĺ ĺ -stra ight -car ol -ri p -âĢ į -gra phic -m ol -elec tion -febru ary -as ons -l i -di r -m t -n ick -u su -m rs -com ics -inst itu -cor por -v i -ðŁĻ ı -tu ral -di se -ac ci -we are -am ong -sho pping -t ill -wh at -cha ir -sp an -chine se -innov ation -jo y -k it -cent ury -ob ama -ph ili -f c -re ach -c iti -ul ous -n on -d ang -happ ening -bur n -p el -or ange -d v -k ick -cla im -ing ham -ph y -no v -pod cast -wh i -ni ghts -ear lier -be ar -la h -exc iting -or a -gi ven -s lo -memor ies -contin ues -produc t -gh o -c d -kno ws -ðŁİ ī -publi shed -discu ss -y ard -i phone -tri es -w all -fe b -are n -tru th -win ners -tu re -diti onal -milit ary -proble m -m and -do g -lo ss -c ric -can adi -ve ter -villa ge -" , -y r -un g -don ald -ag ing -bir ds -sci enti -le s -th is -regi on -tic al -itt en -il a -ðŁĺ İ -d ad -di am -abo ve -st ren -li t -p ir -la b -fo cus -bus y -d ur -app ly -s ma -auth or -ac i -exe cu -dom in -re la -jack son -at o -wash ington -ðŁĻ Į -k ill -popu lar -ce ment -ro ad -e ating -loc ation -v ent -ar re -n an -cu sto -advent ure -or din -spor t -ul t -lo ck -questi on -dri ver -land sc -on i -k ins -p d -jor dan -te red -k k -a f -chil d -s p -just in -en i -s elling -z o -wh it -bo ston -partic ip -sig ning -happ ened -he at -m am -dre ams -lo ws -gra ph -the day -head ing -br o -ble ssed -vi c -ve gas -h d -in ning -ro man -and ro -den ti -u se -c it -pro gress -writ er -bo b -ff s -gro wing -b ly -aw are -ex am -sp ent -be t -sc ore -bey ond -do cu -ad el -s f -cou ra -colla bor -in c -priv ate -bo at -* * -z one -p ha -b ill -to tal -plan ning -to wards -plac es -pre view -cre ative -dam n -ide as -se ems -po ten -say ing -di splay -s w -a qu -lou is -by e -li l -e mail -we stern -ger many -ell er -re s -f ant -ment ary -de als -ric hard -jer sey -stren g -ra d -pizz a -mon d -w are -l ac -g i -ar chi -c d -yel low -rec ently -re ach -à ¹ -kitch en -desig ned -tr y -g al -restaur ant -at ure -w w -j as -l ma -ðŁij Į -pa in -av o -min ute -sch ol -ther ap -tic ket -d ry -jap an -diti ons -ter ri -sel ves -happ en -t up -ma g -cop y -sh er -free dom -f ile -speci ally -tor onto -lo ad -g ary -re y -answ er -lo y -cau ght -pri ze -u ne -fic ation -ni ger -sy d -tou ch -feat ure -jaz z -recor ds -him self -di sh -ro ber -spot ted -ma ster -wa ve -fin als -bu ll -for um -al d -re comm -ch a -a e -d oo -inst ru -tru ly -l g -in k -bro thers -de st -j im -m it -clo sed -is on -tri ed -s anta -af fe -w an -hor se -g row -camp us -rel ation -nati ve -jour n -go v -o ct -k it -b ound -part ner -re ma -crow d -! ) -c alls -ra il -qu ali -solu tion -con test -con vers -sn ap -b ase -in iti -ta x -y e -ent repre -it or -constru ction -foo d -present ed -n ings -cli mate -k m -mo del -b j -blo ck -present ation -dre am -fi x -c alling -bus ine -con gress -under stand -we b -val ue -ï¸ı âĥ£ -mex ico -it ely -ki m -char ity -ref lec -bl an -fl ying -anal y -famil ies -b and -reci pe -celebr ation -ac cep -ar y -to t -g b -intere sted -cap tain -âĻ ¥ -ti p -ab sol -bra z -inve stig -o logy -de c -tru ck -ver ing -c lear -don t -go tta -ad vis -beg ins -ma ss -de scri -blo ck -k im -davi d -son gs -memor ial -feat ures -su stain -' . -gra b -jo se -v a -con serv -se ts -man chester -fi ghting -de gre -ag a -in d -sle ep -pos ition -ha ir -sig ns -pol icy -it o -al ert -st am -sp end -w y -absol ut -d m -anim al -my ster -success ful -proble ms -ro bo -k ay -gar den -p d -may or -d ale -t ol -off ers -vis iting -friend ly -tre es -offic er -accoun t -ke vin -ðŁij į -gi ant -contin u -con su -tr act -n fl -ðŁĺ Ĭ -h q -b ility -a ar -dis ney -te en -on ed -wh ite -tra iler -de dic -al one -absolut ely -dig ital -willi am -in ation -s wa -e e -enti re -ger man -ro ll -h its -co st -st ay -th a -ali ve -accor ding -co t -liter ally -her it -re ti -haha ha -exper i -li kes -g t -ste el -__ __ -ch air -christi an -to wer -diffe rence -m d -tre ss -mi d -prin ce -afric an -fe der -foo t -car ri -ser ved -r ice -sh all -feat ured -ck er -rec ru -po e -sen se -ni fic -com edy -cont ent -f at -po sted -con tribu -tim ate -li ver -mb le -inter net -ag e -europe an -cl ing -gla d -ff ic -sc o -ak es -el le -ter min -ton y -p ale -col our -seri ous -pat ri -movi es -b m -professi onal -ad o -al u -br inging -f alls -isra el -ter m -langu age -bro ok -man n -commun ic -can not -ac ti -p he -y an -entrepre ne -tur key -log ical -lon g -ar m -ur s -work ers -ing ly -gg s -ri c -tu al -recei ve -op ens -ge ar -soci al -fe et -c king -ad ver -fin an -fe els -sp la -h r -ea ster -bra in -ã ģ -fi g -le dge -ne arly -prote ct -ma ssive -e th -aw a -ðŁĺ ģ -y rs -aware ness -defin itely -k n -imag ine -k u -syste ms -ðŁij ı -f as -li k -provi de -am o -disco ver -inf lu -ma ker -g az -fit ness -stre et -er s -te d -w c -ys is -pos itive -hel ped -que st -andre w -bra d -b in -hang ing -l ing -bri ght -se ction -ma ss -ðŁĻ Į -follow ers -ho sting -tem por -fla g -a ve -let ter -k ur -re qui -of ten -cry p -su ff -âļ ½ -russi an -treat ment -al le -ha y -l an -keep ing -hol y -power ful -pre dic -fun d -e specially -windo w -je wel -il y -ðŁĴ ľ -gener ation -app a -seri ously -o d -ðŁĺĤðŁĺĤ ðŁĺĤ -cer ti -iri sh -ðŁij Į -mi ami -be th -v ity -se cu -che f -cri me -graph y -ma x -arti sts -re volu -gu ard -spee ch -u c -upd ates -fac es -st ant -chang ed -repor ts -low er -pe ar -n c -k il -loo ked -spe aker -s f -re spect -ok ay -oce an -s itting -architec ture -tra il -se at -i ra -le g -japan ese -d am -u lar -sw im -polit ics -finan cial -ol d -mou th -at temp -de stin -fi shing -atten tion -me m -chang es -deci ded -reli gi -g in -c av -z z -ad am -ma c -wr ite -beg in -sc ul -al ter -is s -ath on -imag es -m oo -jo ined -ðŁĺ ī -âŀ ¡ï¸ı -pas sed -mu sli -h ir -lar gest -cam er -com ic -gh ted -rug by -bur gh -gg ing -te sting -pre par -lau gh -al ed -impro ve -beli ev -adv ice -sha res -he art -tur ning -s b -t el -caf e -n es -dani el -pat ter -t z -se tt -par k -c and -st ick -happ ens -bri an -ne west -e pic -ad or -ki es -war ning -anim als -custo m -ar c -di an -gol d -cor e -t f -c ity -pan ts -re ality -con fi -in ju -fo x -gu il -k new -âĺ º -cor rec -itu de -d den -. # -re duc -pas s -f on -y a -ow ner -re turns -n c -e ast -ap ol -in sur -th o -si m -juni or -be e -ang el -att le -elec tric -hor ror -cra sh -e ye -pat h -sou thern -emplo ye -ge o -t an -ha z -r ally -ðŁı » -proper ty -was n -enjo yed -gre y -g as -bre w -nor thern -hol ding -g p -ta ke -ch art -ly n -dr ama -z o -pa id -throw back -cu p -discu ssion -down town -w ill -le w -b is -t ary -bre ad -up on -r ate -teach ers -it ation -anc ed -cy cle -choo se -d c -ir an -co w -da ve -ra ise -prin cess -fa ith -- > -indu stri -sp ain -guit ar -fac ts -m n -sp en -cour te -go tt -projec ts -au di -o sc -pe ter -s and -intere st -happ iness -ven ue -sol di -surpri se -poten tial -per io -custom er -i i -g ni -manu fac -e co -bro ken -sing er -vel s -wal es -hu s -in j -f our -tal ent -d ying -mat the -fil m -jo ining -s ell -j ar -lma o -sur ger -bb c -sour ces -au stin -ni k -char les -f am -prin ci -ange l -cas h -lo t -o red -pla ys -pl ate -don e -memor y -br ings -n ba -solu tions -teach ing -gr ace -cir cu -hel ps -foun der -mar y -expl ore -de cor -par ts -ch o -inte gr -ha u -is es -pu tting -in er -r it -v y -mic hel -blu es -every day -for ms -bi o -ye ar -p in -t ter -spr ing -) ) -po t -al ing -perform ing -sh an -plan et -mus ical -head s -it alian -stru gg -âĢį âĻ -w ings -pu mp -h h -tr ou -a id -pri me -ear th -pa int -mon t -am y -bb c -fab ulous -fru it -andro id -bour ne -cere mony -enti al -? ? -deb ate -on ing -dra ft -sol ar -t x -j am -cor n -!! !!! -bro o -mil k -po sed -o hi -mo vement -b ren -part ner -p g -et te -ar ies -sh out -n g -leav ing -t ells -sen s -ta ste -kel ly -wor l -gy m -ric h -e gy -pi d -ma s -â Ĥ -courte sy -fran k -incre ase -wr itten -pp ers -re l -ha i -s as -s ound -tt i -w ich -ri ver -.. ." -a g -fel low -ro me -sm all -gen cy -ic an -lux ury -pro of -me t -wild life -mom ents -ra ther -cor ner -com pe -canadi an -lik ely -therap y -li am -econom ic -indi e -rou te -fi ght -ho pe -se tting -ant ly -cro ss -fant asy -de e -sket ch -comp li -ym i -ru les -engine ering -fig ure -ro w -. , -f w -syd ney -w ou -t ation -dre w -us es -the re -sp read -struc ture -pat rick -appa rently -ro s -h ills -w we -ann y -com mission -di v -f ying -con sul -anal ysis -ex i -ten nis -vehic le -ðŁĺŃ ðŁĺŃ -as s -high ly -op ened -b ann -ðŁĴ Ļ -mp h -wi shing -v or -fi f -give away -r r -ra y -je ss -g at -ic ymi -x it -high est -yor k -pi e -invol ved -high er -ri e -mal ay -int elli -desp ite -che e -sar ah -be an -reco gni -ar sen -tal ented -pas sion -ic h -ab c -lead s -dise ase -v is -se c -pre senting -m illi -hol e -sho ts -de part -surger y -gov t -b in -du al -e vi -lon ger -ev ol -scre en -portra it -et c -lo se -ch at -p en -p i -om a -s ick -er c -compan ies -en try -plan e -gr y -ven e -liver pool -premi ere -sha red -a red -fil ms -ir a -holi days -cric ket -ici an -v ing -. ) -ul timate -di vision -con duc -se pt -for ces -mon t -s mart -disa pp -sun shine -in d -b less -ma de -col ors -fran k -ir on -bott le -s go -m ood -j ason -er ic -bir th -te en -respon se -tar get -state ment -fe ar -th el -al um -ar ab -bl in -direc tion -ste ps -er ial -wor ked -at l -ðŁĴ ķ -fel t -pol i -scen es -hom es -b ell -e at -ate ful -t in -l ace -fol ks -p se -an n -wis dom -fa v -but ter -s r -are as -sm oo -bi z -dg es -app o -mo re -the m -effe ct -windo ws -sun ny -cap ital -tot ally -c ities -gr ant -mb ers -s low -au tu -il ities -w ro -ri sing -st ics -viol ence -i gh -qu ot -h it -t c -herit age -bu ff -ne s -z ar -den tial -ex ac -ed ge -de ep -aren a -be came -benef its -mar ks -mb er -a z -am es -pre ci -dra gon -re g -d ings -do s -ðŁĴ ª -n el -s ity -me al -di st -leg end -pur chase -pic al -st ick -f at -du ba -profe ss -car to -pro f -coun tries -respon si -se qu -fa b -tribu te -hon ored -prac tic -pur ple -an ton -pa red -t ough -summ er -environ ment -s ons -ðŁĻ ı -m ps -gi es -her oes -t elling -hen ry -f en -know ledge -Ģ ï¸ı -f r -ne g -u re -ac king -hear ts -s oo -hol lywood -ju mp -sau ce -schedu le -tur n -yo ga -cre ating -c ket -cre ek -â Ń -custom ers -ma dri -gu l -asse mb -moun t -c ell -to p -st al -dav is -t wi -sig n -premi er -iti ons -he aring -un k -pati ents -app ear -heav en -al ty -doc tor -a e -plat form -je ff -ðŁĵ · -regi onal -bi d -box ing -ex ten -or ity -a w -w ise -il le -sever al -bi e -s itu -sy ria -âľ ħ -remin der -enter tain -li on -part ners -in n -ph ar -f au -pl s -expe cted -sug ar -deci sion -s b -ch ron -associ ation -leav es -vis ited -sh ap -ðŁĴ ĸ -fur ther -h ann -w i -run s -l er -fun ding -fil led -.. .... -tin y -han g -or g -co ol -se min -ðŁı Ĩ -spon s -nav y -sa int -dru g -d al -r oun -co vered -tra ditional -invest ment -de te -al ism -f low -n is -sun rise -fe at -f ted -we ird -je re -ve gan -medic ine -an o -ac cu -deli very -temp le -chang ing -wil son -phili pp -re fe -n d -is er -g ay -r and -ati ves -t ely -p and -intelli g -g are -am bas -de mon -commit tee -strate gy -refu ge -bud get -prote c -pi er -ex press -nom in -econom y -al low -ic on -gal ax -o h -indi vi -dem and -vir gin -lu ke -ali sts -man i -s mi -ju dge -ent y -mic hi -resul t -am ed -spe aks -' , -hou ston -sh in -b ing -fl y -ch em -au to -v as -ge t -ar m -thank s -d in -gan g -x x -si on -loc ated -p l -jo sh -in fo -jo ins -adver ti -ot d -el d -si e -re asons -v ent -ðŁĩºðŁĩ ¸ -â ł -convers ation -stu di -ðŁĶ¥ ðŁĶ¥ -go s -s ounds -un it -mu sc -ge l -ack ed -pac i -co s -de re -u u -a o -la m -inspir ing -ar ms -tw are -mat ters -ad dic -du de -ex t -cri sis -b ath -me et -sing h -expe ct -del hi -resc ue -wor st -au g -shi pping -ser ving -st o -dar k -ac es -histor ic -landsc ape -desig ner -b illion -gr ateful -wa ke -e ve -m iller -hou sing -dy nam -is co -be ha -sh op -pr ou -e as -a sia -e ding -k on -depart ment -aw ar -mar ine -in ci -photograph er -ta pe -lo go -r ings -d it --- -- -vin yl -w c -vo ting -se ven -ambas sad -dal las -t u -com ment -k ra -b les -w ag -u d -au dio -stri ke -offici al -o ts -me tho -to ols -ra di -al an -hun t -wat ched -a ke -fa ke -drin king -mer ry -m l -b day -ri o -ni ke -c ant -re pe -co stu -mur der -ak ers -ch ers -ou ts -beg inning -so s -ad es -n in -not es -wro te -sol o -c i -li ghting -ur ban -bre xit -att end -shir ts -pla yo -ac tress -pl ic -stand ard -quot es -par ade -anci ent - © -tur ing -re e -pri mary -fla sh -citi z -mat es -ste in -z i -clin ton -sk in -gen e -hu m -g ar -t le -y i -fo cu -de an -pl ants -cy ber -b u -om e -ho p -ad dress -ti x -gi fts -relation ship -sub scri -fe ed -exac tly -haw ks -ex o -stre ss -s n -arre sted -an e -sof tware -z ero -the me -mu mb -im migr -mi a -make up -ple asure -uni vers -har b -eng ine -ap er -r in -br a -institu te -le ather -al th -sing ing -co s -gh ty -me as -st ic -si de -insur ance -co t -pit ch -moun tains -cri min -su pre -valent ine -at er -wou ldn -sc ale -rel ated -re gar -star tup -pack ed -mi ke -week ly -p ts -coun t -ha r -gott en -min d -ber lin -con ditions -swit ch -cor n -sa ve -g li -emer gency -tun ed -sto ck -discu ssing -every body -s day -whe ther -wrest ling -ec es -gen der -ch en -ðŁij Ģ -madri d -mar athon -e gg -i er -th x -as king -kore a -wol f -ay a -g m -g au -at ory -v r -gra ss -k illing -b ble -ur o -un i -e th -sh ore -th en -re ale -bot tom -ex erc -k ar -or ies -ad ri -san ds -se x -. ' -volunte ers -per form -par liam -inclu de -deli ghted -execu tive -fu el -kis s -ã ħ -char ge -h u -ca kes -ve t -g lu -agre e -pr ices -n au -h l -g ru -ra j -streng th -b ic -sp ending -al es -av en -b last -: ( -yo f -nor mal -si x -qu ick -se a -d aw -mee ts -lo vers -upd ated -po tat -comple ted -coo k -opportun ities -p ure -organ ic -tem per -c am -avo id -par king -duba i -and o -di stri -to y -comple tely -don ald -tri al -bas s -b oun -back ground -v as -mar vel -lu m -ru s -t ool -com missi -throw back -fin ding -is lam -! ? -st op -e vil -or al -resi dents -i denti -o ak -ðŁİ ¶ -l il -span ish -chap ter -sto pped -direc t -ho sted -pic ked -lab our -lew is -defen se -à ® -health care -wh is -mat h -pe ak -ra ised -fi x -bu ll -th ir -chel sea -fol k -tr e -can di -pau l -ei ther -ad am -poe try -jewel ry -ðŁ ¦ -pr ay -Ø § -g c -o z -wi shes -fore ign -sun g -lear ned -en e -n ing -micha el -illu stration -legend ary -w av -b au -ðŁļ ¨ -cal end -stre ets -â Ĩ -mon ster -bu ck -g r -scho ol -ba th -wa ste -ne ck -ha wa -be ach -re plac -jec t -on er -fac tory -coun t -ðŁĵ ¸ -mor gan -der ing -se an -steph en -de p -no vel -vide os -ic al -press ure -arsen al -ex pre -ir s -tren ding -ss a -fla sh -re sear -thr ough -profess or -scul p -to s -gg ed -mm a -be e -a pe -hun ter -am i -he i -pla stic -bu cks -uni verse -le gen -niger ia -ple ased -ri s -thin ks -autu mn -i ds -d is -anth ony -ðŁı ½ -ak ed -gla sses -fin ance -z er -k as -con tract -nu mbers -sh aw -partner ship -t il -laun ched -s al -victor ia -theat er -usu al -nam es -perio d -eli za -i th -bar cel -ro cks -bag s -mat e -distri bu -j on -di ffic -ali zed -cur ren -sco red -b ha -du blin -ro se -in ted -soli d -beha vi -wal ker -simp ly -garden s -head ed -in i -ohi o -we ap -f o -gl en -e state -ran dom -th under -thr u -k ill -jac ket -it i -entertain ment -thanks giving -ent al -en coura -el o -a ther -tan k -high lights -f ting -ru le -model s -bor der -bj p -hus band -in done -ken ya -be ars -al o -n inten -pi x -str o -or ders -sal ad -ro ads -n or -l ation -sop hi -ðŁı ¼ -pi eces -b one -min s -inclu des -nu tr -phi l -s ent -fun dra -ga in -bor ough -n ad -mon day -activ ity -it ems -be coming -ken ne -de tro -car di -gue sts -u x -world wide -sever e -new s -thank ful -fic tion -ve ge -m all -si an -er al -inj ury -le e -men u -danc ing -scot ti -exam ple -( # -na i -studi os -ba i -ðŁĴ Ľ -j av -diam ond -vin ce -ric k -prote ction -lin col -cham ps -appro ach -d ar -m ile -clou ds -je ff -in fin -l ers -p les -pe ace -go p -âĻ ¡ -tech n -str a -a verage -ef fort -introduc ing -di versity -austr alian -am p -boo st -s ke -pati ent -appreci ate -ici ans -pu r -f ell -woo ds -illu str -ðŁ ĸ -ag ency -ac tions -brit ain -under way -se attle -el and -ag o -f ill -stre aming -pro test -challeng es -ky o -et sy -coo king -exper t -ru ss -rain bow -commer cial -sp in -be ats -c ry -val u -el i -th row -gr ams -le vels -michi gan -c ad -ador able -const itu -w s -pu b -mid night -th at -net fli -braz il -die go -regu lar -jo y -âĤ ¬ -li qu -ea stern -k ni -fl at -n p -bro wn -w er -se y -tt ers -ac ting -v anc -cy cling -program me -ra w -comple x -tat too -throwback thursday -se ssions -ro oms -si ght -speci es -bom b -lau gh -ke eps -mo on -offic ers -con ver -t r -ha sh -t ack -ri ous -ad ap -a j -reco gn -ex po -sug ge -confir med -rol ling -dre ssing -ic t -fri day -ph ones -ri dge -con cept -ro y -ke ys -ef for -c ate -k ne -ev en -l ay -commun ities -mo d -n az -every where -al ab -bit coin -ban ks -out door -feder al -sto res -h p -c al -m ely -sig nific -be ar -re public -clo ser -al lah -pic k -x d -pal ace -ch ill -b am -er ous -un a -al len -out standing -olym pic -supp ly -fi gu -v au -l p -char lie -un es -> >> -legen ds -ici al -co ast -benef it -mul ti -f its -far mers -am ount -si sters -har ve -hon ey -que en -b ers -pl ann -âŃ IJ -m u -barcel ona -al ber -stat us -re main -ex tra -c andy -vi ous -âľ Į -o v -warri ors --- > -ju mp -am ar -x mas -stu dies -i ors -k or -don ate -pre p -fi sh -im a -pain ted -ad mini -co splay -spor ts -dro ps -fi ghter -evi dence -ðŁĴ ª -la ke -ro b -cine ma -pro file -à ± -stan ds -leg acy -sh ape -ro of -ci vil -i ans -sy l -sh am -vo ted -re tail -ph illi -li sted -du ty -n b -th es -f are -au ction -ffici al -stor ms -d p -l oun -sh ops -al y -ani me -multi ple -ðŁĺį ðŁĺį -psy cho -je an -ap art -candi date -gg y -con f -jose ph -w ick -me at -fr ame -c l -for got -ph y -f ing -li ed -re p -se ed -f all -u fc -nu t -lin d -mo de -fiel ds -en ce -s ley -ðŁ¤ Ķ -ch ill -follow ed -announ ces -cor ru -tro phy -them selves -ac le -al du -k ong -l on -s v -bro ke -ander son -ta i -stor y -tempor ary -activ ities -k ati -ari z -cry stal -spo ke -extre mely -tra ding -ðŁĴ ļ -à ¼ -in ch -ed in -out fit -equ ip -ma di -form ed -be ef -po p -ti ger -this day -ti red -neigh b -re tro -is a -un t -t as -kan sas -de st -secon ds -ta y -hur ric -o u -galax y -dad dy -bro w -bur ger -en ced -de sk -ac cur -secre tary -el ite -k ab -ch in -touri sm -bud dy -ici de -dre ssed -u d -vac ation -che ers -com for -charac ters -j et -bu ying -l ins -n ap -reale state -li e -af c -i ii -f ame -n r -b at -ag ent -ma kers -âĢ ¼ -sec tor -op ti -le on -di et -pra yer -hi p -mi r -le x -br y -an a -pas sing -w en -reco very -ak i -po pul -res ort -mar ia -stu ck -read s -ti er -perfe c -netfli x -p oo -cham p -o c -re duce -we red -comm ents -cla im -acci dent -s ag -h ack -sal t -kin da -k iller -i os -z y -ex change -lec ture -eng er -ic king -t au -reve als -pri son -z om -gh an -u l -jour nal -i ot -tr in -jon a -govern or -cap e -quar ter -spec tive -impre ssive -bab ies -t x -m ill -o y -har ri -jo int -su e -collabor ation -tren d -revolu tion -re new -alum ni -ge tt -sh ell -sun day -ent u -ni c -donald trump -block chain -paci fic -expla ins -sp y -ad voc -par adi -to f -star ring -p av -fe ed -br ac -smo ke -ham p -y am -to kyo -si mon -d h -e ffici -phys ical -n j -ell i -s low -gradu ate -americ ans -ti fy -f red -ap ore -fin ds -rob in -we t -not ice -se mi -un ve -k om -pil ot -scre ening -da ily -ðŁĴ Ĺ -roy al -sp a -vo tes -n ag -wh ate -att ending -exper im -ad dition -k ate -sto l -m ali -foo t -chri st -ch an -de e -lic en -glo bal -mo ore -ti a -bri gh -myster y -y ay -âĿ¤ï¸ı âĿ¤ï¸ı -cre ati -me chan -clo ck -di c -âĢ Ķ -pp er -al ph -through out -al low -re sources -selec tion -ham il -bb q -aa aa -virgin ia -dis ney -en g -so red -drin ks -f ancy -consi der -end a -jan e -hand made -du l -on tari -i us -s ville -color ado -whate ver -whe el -promis e -ne ver -desig ns -ab ly -sex ual -vanc ou -at i -con vention -cul tural -sing apore -pro mo -load ed -gla sgo -pp l -n oo -ke e -ste m -men tion -i do -cru ise -ri ding -be comes -be y -âļ½ ï¸ı -tw in -dedic ated -na sh -de si -work out -jen ni -i v -grou ps -rela x -pho eni -li ft -mix ed -m ck -p c -mu st -me tro -ci es -y ar -a im -ang er -i e -rec y -marri ed -dro pped -eng ag -le st -ambassad or -op h -de s -w ick -assi stant -nat ur -fa il -l td -shor t -k ap -sha w -bi gger -rema ins -crit ical -sur vey -co verage -er son -win d -n b -bil ly -let es -ac ts -jim my -at lan -al and -t c -import ance -dam age -f g -stor age -tw t -bon d -bal ance -cr ying -pu ppy -vo te -pu sh -ðŁĴ ľ -pol y -me l -lon don -terr ori -effec tive -corpor ate -atl anta -jac o -nas a -gre ek -sen ate -i sh -ev a -intellig ence -effor ts -al co -k un -h all -di ag -claim s -fir st -h b -ba e -v ul -pu ll - ° -se par -spe ed -vic ti -on thisday -audi ence -r ates -te ach -fil ming -bu sh -son g -y um -br un -ra ine -aw a -par ks -ð Ŀ -ra bb -ra ch -ra id -reach ed -ra il -mo ves -selec ted -fr i -ra ising -om y -st ones -su k -franc isco -cas es -cap it -con fu -w tf -po ke -equip ment -gre g -ess ential -off ering -ne x -pi es -be c -cre ation -chair man -cro wn -w al -john ny -shi ft -ne ck -ban g -bir d -ðŁĺ ı -du ck -re serve -de pu -ma sters -over all -no tic -ju ice -sne ak -che er -cla sses -eag les -n ca -car pet -ci vil -coach es -har ris -u ps -b alls -dec or -mar tin -ro s -v ice -announ cement -who se -ti gers -ste red -c ts -dr am -ste el -youn g -inst all -supp o -recor ding -de ck -se ats -l der -ang le -bo t -sty les -elec tions -for tun -n ab -but ter -ari an -ka sh -in ner -ou red -be ast -we i -ic onic -exper ts -ne cess -b eng -jam es -li a -gre ece -ðŁĵ · -ðŁĺ ģ -good bye -m itch -tw ice -mumb ai -ste am -ru sh -med al -ne tt -fashi on -t ar -r s -sav ing -ric ul -l m -sleep ing -brook lyn -mis s -sen ding -disco vered -sp here -of theday -k icks -missi ons -w right -er n -ght ly -i ous -mel bourne -star tu -mo ved -car ry -d ak -ag ues -bel gi -e ma -way ne -do t -er ie -pe l -it unes -matthe w -no body -est ab -cal m -win ds -lu c -prep are -tren ds -exerc ise -adv ant -ðŁĴ ¯ -athle tics -app s -c tions -adv ance -laun ches -litt le -real donaldtrump -eliza beth -carol ina -hu b -hi dden -n w -us er -pol l -great er -mo st -f ed -p at -life style -s ati -sco res -marri age -l r -aven ue -de serve -ri f -ðŁ Ĺ -wat ch -champion ships -gr ay -en ni -cot ton -g om -whe re -pack age -su m -ab solu -new ly -foo ds -ty ler -assemb ly -musli m -ban k -re memb -op tions -produc er -land o -fun ds -u pper -shad ow -pro gre -co p -ing e -leg s -detro it -hill ary -jo se -gi ants -sou p -sustain able -t us -clo thes -roc king -n z -min ne -mat eri -bru ce -ear t -ca sting -independ ent -thou sands -ta h -de cl -veter ans -li ons -wra p -âĢ ¦ -de ss -bl ing -st ine -e ggs -o on -clo sing -z ay -at t -bac on -fa il -ariz ona -de pre -gho st -new sp -w ers -vi p -li ked -id ent -volunte er -ad ult -pu pp -cir cle -mat erial -degre e -gro wn -boo m -calend ar -su r -vie wing -ath letes -ch and -re ll -asi an -en tr -vol ley -victi ms -bo dy -m ama -trans fer -ge ek -in dic -sav ed -ma i -g ent -it s -loun ge -k ol -the ory -situ ation -is lands -ar th -z oo -floo d -vi ously -show ed -parliam ent -ch ev -el ine -at trac -ab ad -ta il -h rs -lu s -por tu -gor y -provi des -to ys -de ath -in fe -an ce -g le -li am -lo ver -hu d -dv d -reve aled -g w -re ment -ca the -l ying -ra dio -der by -stor s -che mi -hosp it -âľ ¨ -' : -ilo ve -le mon -re public -s ni -ne ss -do or -re action -pre gn -fla v -schol ar -spo tify -is ation -vis ual -aw are -spon sored -jo ke -less ons -leg is -lo ck -si mil -ðŁĺ ĭ -kin d -la y -ma h -ho ping -vancou ver -as er -clean ing -gal a -thre at -la p -ach e -ro mance -ex pen -re post -z am -e pi -mir ror -o ak -ad ul -bat man -s lu -l c -vie wed -re views -d ates -indone sia -acti vi -off en -lea f -i si -ag ricul -costu me -s ites -spir itu -appear ance -ir y -st air -applic ation -spec tac -ic ity -ski es -hand le -pun k -paradi se -t n -de al -provi ding -do c -recei ving -bre w -micro soft -à ¶ -fer r -me tro -th ail -y um -car ter -à ¡ -gent le -bre aks -coo per -show case -cu tting -egy pt -bab y -semin ar -gl ori -ss on -fa ve -re hear -lo tte -la dy -al as -pre p -deli vered -nu clear -ir o -engag ement -at ta -con ven -z an -gl ory -hol ds -busine sses -str ange -sch e -it self -gra d -mar kets -f alling -st ats -ge on -bu dd -li s -she et -thi si -co lo -deser t -regi stration -ig n -expla in -inter ior -la ws -writ ers -spr ings -k r -fri ed -blo om -inf ra -a o -cre d -pa st -line up -bo o -bre a -boo ts -celebr ity -att acks -bro ok -ev es -ex cu -cher ry -oo p -fas cin -boy friend -se as -n ine -effec ts -po wered -k ha -ðŁĺ Ģ -sh out -con dition -i j -her o -enter pri -win ter -applic ations -sho e -g el -batt le -pro grams -w art -ðŁĴ ¥ -ra p -ho l -dang erous -di a -coun ter -ric s -i or -k night -co at -emo tional -at ures -d as -whe el -fore cast -tran sport -glasgo w -king dom -prepar ing -im medi -ff in -awar ded -prin ting -ro man -fight ers -any more -bel t -p ine -win e -x i -employe es -logi es -al led -de mo -birth day -ange les -lo g -dri vers -neck lace -k ath -s it -athle te -ef s -s burg -pur pose -resi stance -rele ases -t is -vari ous -deli ver -ch al -s anc -opp o -cra w -neu ro -dr a -suppor ters -sna p -diffic ult -swe ar -logi st -pa th -attemp t -à ¥ -swim ming -ste ve -hur t -inclu ded -b ap -wa re -ðŁĴ ĭ -end ers -ja ke -le eds -cli mb -l b -im ple -li sa -clo thing -ðŁĺ İ -d t -com pla -sw ing -stra w -v als -k le -us ers -stor m -cu ts -ontari o -p an -hand some -i ow -ar gu -chec king -scotti sh -Ķ ï¸ı -si er -em ma -po d -patter n -de sh -en h -ed ward -t ing -k h -hal f -lincol n -mo ther -al leg -r c -volley ball -d n -g ay -all y -le ton -gro ve -l oud -adv anced -re spec -cli ent -supre me -thail and -ho w -gi g -to i -do t -dol lar -ðŁij ĩ -p it -r b -h n -produc ed -gg ers -âĨ Ĵ -ml b -can vas -fin eart -us d -in the -p son -actu al -s l -t b -ip ad -en sure -u mb -w d -sk a -mar s -k end -f eli -th ing -count down -absolu te -r out -dra l -p y -inju red -min t -hun ting -mm er -s age -li gh -ac ity -ex pan -mur ray -ar o -sec ure -four th -eag le -reli ef -st akes -industri al -clar k -under standing -see m -pl enty -sil ver -cla u -thre at -sa il -pro duce -ab str -is is -b r -eng ers -wor ry -bie ber -s j -just in -reali ze -ky le -esp n -fil ter -s ch -ty pes -game dev -d ing -twit ter -soldi ers -p om -car bon -y ards -child hood -ri ed -ke l -ele ph -t ons -key note -qui et -wi re -po sting -is sa -repre senting -bac ks -alex ander -celebr ates -ta ining -| | -ch or -esc ape -pe ek -ti ves -fiel d -ssi e -im pac -spons or -r c -we dd -cann ab -si des -trac ks -com par -con trac -techn ical -bi ble -expl oring -sh are -tra v -n ate -ill o -sc ru -m ingham -gun s -of the -sh ame -se es -ca tho -ac cess -ce l -repor ted - » -mari o -p ad -hope fully -ou se -y on -disapp o -ol o -p itt -pa c -ga p -cru sh -s g -k le -ge m -emp ire -dir ty -a is -avi ation -ze aland -fac ing -high way -d anny -spi der -ot ta -ðŁĺ Ħ -w y -col ours -in fl -co sts -olym pics -au s -h m -ho ward -pas ses -lau ren -mu sh -op in -r ho -disc ount -oper ation -em ily -mm m -cham ber -d il -to yo -shi p -sam u -pic tured -un ic -po l -keep er -carto on -st en -ig nor -n ations -n l -ta sting -deta il -offici als -mo tor -franc is -ed itor -ðŁij ĩ -pe ts -rang ers -t g -r n -w ri -nic hol -i se -spo ts -ani e -chec k -tri ple -ku mar -spe akers -ic ing -pre pared -ab use -friend ship -mon th -swi m -air e -sc ent -hamil ton -indi an -j es -yum my -te ars -da wn -i zed -worl ds -ðŁ ķ -b illi -st one -n hs -ba sic -p or -st le -ir on -ol der -cle vel -e ing -ðŁĺįðŁĺį ðŁĺį -prin ts -fir m -air craft -fin est -devel op -aar on -t z -gra ham -own ers -fo li -less on -qu es -bab e -cra ft -ph en -ju n -bir mingham -v ine -ll er -i an -fineart america -evol u -st ab -im per -war d -com ic -wi z -inv ited -du ke -mat ch -por ts -ro ger -diag no -ke pt -te st -vis u -r hy -so c -to x -b aker -sur face -co vers -man s -b its -x box -ff le -n an -gar d -h art -wat ers -v illa -re tro -light ning -catho lic -democr acy -neigh bor -pen n -cr an -jona than -la ura -vi bes -su b -coach ing -clear ly -uk raine -bra ve -commit ment -t all -mar t -ra p -mo di -sco tt -bro s -show er -ðŁı ¾ -âĺº ï¸ı -cou sin -appro ach -br e -com pos -hil ari -phil ly -g ad -quick ly -ri an -t m -vir tual -hou ses -k t -phoeni x -w ire -ff y -b unch -anc ing -tal e -snap chat -star ter -h t -k icking -ap art -th y -) ! -blo gger -it z -com fort -ang els -w ash -" : -ar gent -re quest -hon est -mi ghty -bo bby -k g -ro l -thou se -ex po -h c -tab les -mag ical -po sts -de m -n w -or lando -ab er -* ** -ðŁĺ ľ -environ mental -trans formation -mi le -w ic -hir ing -ma ine -bo ar -r ying -ti s -nit ure -twee ted -anton io -opin ion -fin ale -di y -f is -th in -trou ble -le go -fi les -qu art -sp a -curren cy -cli mate -fan art -rail way -sp ace -ban ds -dani el -mo tion -l eng -hol der -oc cu -mar ie -cathe dral -bu zz -bi es -nas car -bm w -bat tery -char lotte -doc tor -zz le -se ven -in san -d dy -st en -lab or -thr illed -se ren -docu mentary -wav es -cer tain -can did -allow ed -ninten do -star wars -ta p -home made -d les -ther ing -bre e -emp ty -pi ano -pos iti -coun try -por k -pu ts -per ry -m atic -spot light -ti st -or ities -we alth -c p -bar bar -commit ted -as sau -pro fit -e ight -hu l -fini shing -run ner -ss o -insp ec -char ged -christ op -lo sing -co al -ho o -ele v -de le -mo ham -don ation -c able -clin ic -j in -manag ed -ter ing -â ¬ -ur ban -depu ty -bb er -bur n -acade mic -o tt -sta ke -it er -sto wn -ack er -advent ures -ad ams -gre g -pro m -vo l -ac qu -con gre -pa int -citiz ens -c all -af ford -v c -as ks -the tic -independ ence -â Ľ -h itting -bl on -fu ture -â ı -in no -gen e -bo ards -di stance -se t -re mem -th al -pre vent -l ang -ob jec -su sp -mat t -in duc -bor o -pi one -re di -vir tu -prin ted -sco pe -shar k -suc ce -a stron -il legal -j ag -c ting -ine e -at o -rob in -nutr ition -b f -du tch -b n -fur niture -for gotten -at ar -ru p -hy per -bran ch -communic ation -degre es -on ia -un cle -promo te -or che -wi i -j s -but ton -ma jor -c bs -bri stol -premi um -ordin ary -e dit -m g -we ed -st even -: ' -gu s -te s -cap tured -dru gs -do w -wr ites -bi shop -whe els -ali zation -disco very -w r -rach el -ne il -hy dr -cu test -entreprene ur -kore an -ore gon -ul ty -perfec tly -suppor ted -histor ical -t wins -ell y -we l -de vil -in come -scienti sts -de leg -h en -on i -ic ed -gi o -cur ry -reve al -e g -buff alo -n ol -op era -camer on -haha haha -j ab -gradu ation -cra ig -r al -i f -organi zation -le ge -g ang -su d -edin burgh -l ack -fli es -g ate -thr ones -q b -the real -e leg -pp in -c les -jam ie -tn am -cryp to -ou l -p ages -a se -roo ts -stu pid -a did -boo t -prote in -s ap -si um -su s -end or -fun ction -don t -en na -ch y -squ e -wor ker -m tv -e a -k an -ðŁĴ ļ -mu s -professi on -t to -oper ations -al lo -c tor -inv ite -sc and -ou th -z im -lin ks -cli ents -sam sung -discu sses -n ell -ul tra -some where -ste wart -ine t -de z -b out -fac tor -ti an -tr ans -jere my -d b -ðŁĩ ¬ -or n -develop ing -spo l -coo per -ma u -rememb ering -tre k -famil y -sen iors -fo ster -att ended -w ing -trans form -ele mentary -hor iz -li sting -malay sia -it ch -warri or -philipp ines -russ ell -m end -initi ative -cre ep -to ps -br iti -a ur -shar p -adverti sing -ug ly -achi ev -materi als -bu g -dev ice -bon us -fac ility -col e -nh l -y as -plann ed -pol e -excell ence -tr ick -con fl -r p -achi eve -lo an -swa g -jess ica -ho we -p our -sc u -z oo -r ated -dre sses -re bel -mex ican -co ordin -me ss -atlan tic -t l -osc ar -wal ks -phar mac -investig ation -... # -cc i -eas ily -monday motivation -y ment -au ti -for ced -ar med -colle agues -pap ers -pro per -sha ke -bu c -le an -exhi bit -e vement -co tt -bi z -sp er -k ent -sw an -/ @ -girl friend -haw k -âĺ Ģï¸ı -mon o -ðŁĴ Ľ -stat ue -ðŁĺ ³ -ra s -te eth -preci ous -t ile -p am -swi ft -v ali -no se -dr unk -experi ences -come back -gen ius -wor se -sh ef -ra d -ed it -hon our -au spol -lar ry -h ire -gor don -achi evement -.... .... -su icide -alter native -su p -sur roun -sha ke -ke ith -pe pper -tur k -crimin al -be ck -su m -w alls -cn n -an tic -of fe -col li -win es -high light -hawa ii -emb ar -l fc -ðŁĩ ® -m v -> > -at mo -wor d -car l -shout out -bre wing -ì Ŀ -do f -s ic -hot test -col on -hh h -shu t -low ing -volu me -apart ment -agre ement -de stro -we e -religi ous -iow a -ro d -land ing -re present -ðŁĵ· : -la s -usu ally -h l -c ac -sal v -al ong -laugh ing -be ans -remin ds -pha se -some body -ma sk -ran ked -dest roy -sc i -â̼ ï¸ı -gab ri -le o -ro a -fa iled -si l -refuge es -re vi -r ing -ber ries -coo kies -y y -conserv ation -sh ab -human s -de termin -a in -ni all -as su -mb a -fro m -extre me -vic es -commer ce -ght ful -or dered -suppor ts -re cap -v or -dro pping -correc t -pay ing -mean ing -n j -qui z -" # -busine ss -ðŁĩ® ðŁĩ -indi gen -du st -box es -bl ind -x xx -zz y -ðŁĩ¬ ðŁĩ -ss els -s ant -dd le -hilari ous -desig n -wonder ing -vehic les -k re -ju d -rece ption -par ker -Ã Ń -pri vi -hy dro -sof tball -pol lu -lo cked -ba h -e ar -scri pt -di vi -br ace -geor ge -the ast -bel o -j al -tion ary -dent al -roc ket -pur ch -sh ak -manufac turing -e z -it is -con cep -tb all -ch s -direc ted -pra yers -oo k -phil os -vari ety -che ss -ser ver -g and -bal ti -ðŁĵ ¸ -sel y -cru z -spectac ular -bur ning -re present -i z -t one -mer ce -h ell -bed room -estab li -bo l -com mon -ãĥ » -ab or -kit ty -hei ghts -re pair -willi am -qu ake -alab ama -popul ation -re v -re tt -i sts -n ite -le m -a ha -clevel and -r m -po ver -ob se -mon tre -man ia - ® -con ne -car ni -sh ah -f y -u a -sc or -strugg le -bo b -' ' -appro pri -deci de -ff ed -ca ster -s ort -hun gry -dra g -ا Ù -gr ounds -d w -sli ghtly -car din -dead line -bron ze -web in -bar ry -sil ence -e uro -op tion -ear n -ðŁĴ ĸ -howe ver -na ren -na ils -bath room -v ine -ph d -min ing -gar age -( ) -shou lder -defe at -di r -o v -liber ty -ple as -x on -com pre -a v -j in -ab les -sil ent -fam ili -vis its -di pl -ha bit -milli ons -regar ding -innov ative -sen ator -r ts -v on -k l -wh il -requi red -âĿ Ħ -lu v -presi dential -po cket -hun dre -sho wn -fro zen -to ward -fa st -confi dence -r ough -indivi dual -qu et -ðŁı ½ -dom e -fi fa -engine er -z en -re mix -ðŁĺ ĥ -pl ant -min or -robin son -as y -pul led -cer tain -potat o -( : -pre s -oc ca -w it -it em -si e -d ating -thom pson -own ed -an u -vi e -te dly -good night -ex cept -ðŁĮ Ł -ira q -ki e -ren ces -li p -simil ar -sau di -vi g -arth ur -pic ks -mil an -hon da -ma xi -o g -ste st -ar ch -analy tics -ba sti -pear l -ter ry -hor se -ast ro -ac ce -laun ching -inter national -s no -ta sty -den ver -ir l -pe te -tor n -advant age -var sity -" " -sol e -g c -lan g -demon str -ol ds -un ity -ne ts -insp ire -cre te -nash ville -nel son -e ter -wal k -hy un -m ack -tre as -see king -ra ge -bru sh -ab and -whil st -co con -h ong -shel ter -i p -possi bly -so o -it ed -â Ħ -rac es -war ming -qu in -tele vision -mat ches -ra pi -ment al -pal m -jenni fer -rol ls -indi ana -b ars -cat ching -resc u -candid ates -fa re -âł Ģ -se o -vie tnam -alph a -michel le -visi ble -re gre -wn ed -app le -li p -f fe -li z -york shire -ha il -se asons -be gan -m d -k c -la p -fascin ating -hel p -ur y -u ms -nu ts -se m -along side -bri dge -ori al -o ve -world cup -briti sh -comfor table -i ve -hot els -fair s -hor ri -so x -d ining -stre am -bar ri -ss y -w im -ter ms -v u -pe re -l ens -wal ked -r or -l ars -shi eld -dou bt -pro to -cro ssing -me ant -medi um -ad ding -e b -che ap -fun c -pap er -bran ds -ry an -feed back -col lins -un known -tro pical -sand wich -fal len -for mu -selec t -lo ads -answ ers -or i -mag a -d or -du o -ali e -dru m -ur i -de er -sou l -sh ut -âĺ º -sto len -don ated -bu zz -patri ots -ha l -na sty -nomin ated -mon te -ki a -th ri -ing u -te sts -pe tro -ðŁij ij -ho sts -ne st -to pic -pat ch -m my -hu gh -ab ilities -ma the -s miles -g b -ag enda -insi ghts -chi p -ph an -fail ure -dg ers -ha i -signific ant -sho ck -ru ral -gl am -figu res -pot us -o ta -mini stry -appe ars -fe ar -r h -americ an -h att -son y -fi res -e di -n ou -e qui -wh en -univers al -mad ness -i x -sculp ture -b ach -t to -swe den -et a -en to -develop ed -month ly -ma ps -ra h -le d -del ta -sa ints -is lam -ben ch -fif th -v ard -so cks -wel coming -j e -tur ner -v b -ad i -nor way -ad y -hurric ane -por sche -tra dition -ex am -newsp aper -lu ci -a ver -ide al -d na -madi son -ðŁ § -wit ness -ac ou -insi ght -si mon -robo t -sna ke -n bc -ac o -ro ss -sh ment -religi on -ch ann -in su -camp bell -inst alled -we ather -hor ses -ol i -rober t -k az -ðŁı Ģ -veter an -th read -quar ter -ea sier -cap ture -hi pho -law rence -roman tic -pas sion -cl ay -ox ford -th ai -stu dying -fi a -elec ted -most ly -c b -tu mb -âĢįâĻ Ĥ -x l -sh an -fa ster -ev ans -sli de -sh ri -see k -mi es -chemi stry -pump kin -tu m -, , -ro om -fi red -li ps -pres ence -af f -brew ery -arri ve -sw ag -photo graph -pen gu -chi ps -at tor -val ues -accur ate -con temporary -princi pal -cannab is -ari o -any where -gi a -democr ats -buil dings -li ved -ap s -neg ative -m are -bal lo -li on -diam on -loo k -re form -tom my -il la -tre ats -hundre ds -port land -wor thy -ex cep -ar ia -ido l -be er -cd n -y u -aw k -ðŁĩ ¨ -c ells -à ³ -ident ity -dra wn -de vil -f inger -th am -ðŁij Ĭ -ear ned -fin tech -dol ph -twee ting -evolu tion -ðŁĵ į -est im -m vp -n one -ðŁĩºðŁĩ ¸ -toyo ta -au x -mar in -b old -l bs -ste ak -mur phy -it able -lou is -sol ve -pi a -sk ir -ill ino -webin ar -ban ana -lo v -th on -vo ters -afford able -defe ated -lm fa -air lines -super b -any way -deb t -bo red -ver si -me tal -responsi ble -m k -s se -f ay -cau sed -f p -recomm end -pla za -spor ting -alli ance -au stri -n n -t ours -surpri sed -arti f -th under -sur ve -wor e -bri ef -necess ary -z ie -ash ley -dra ke -r t -kni fe -im mun -char ges -a the -bri de -rep ly -g av -broad cast -pu er -brace let -cap acity -harve st -id k -perfor man -d ding -il ers -par a -jam a -pro vince -ch in -id ers -har i -te aser -ch en -re stor -r at -fl at -col om -ðŁĴ ŀ -ðŁĩ¨ ðŁĩ -smoo th -r t -p itch -stay ing -isra eli -t cot -per spective -do ck -open er -lo vel -x o -class room -l ington -go al -kenne dy -sh am -sp aces -mitch ell -home coming -uk i -claim ed -recru it -ing o -mu fc -mon it -g roo -resi dent -per cent -per man -otta wa -int ment -an xi -stand ards -wor ship -sche me -f x -pot ter -bi an -athle tic -af gh -s se -sat ell -par ties -âĿ¤ âĿ¤ -infra structure -rela x -mo du -wor n -smo king -y ach -practic es -wc w -am b -dome stic -tay lor -k entu -provi ded -mo di -ve g -" ... -ob serv -ðŁĺ © -be ard -m our -an gry -ðŁĺ ± -startu ps -woo den -di ve -na il -anti que -ro ses -torn ado -m at -^ ^ -su spect -far m -de vices -me ga -tu l -scholar ship -ge e -disa ster -arri val -po in -mar c -kati e -bb ed -fal se -deser ves -ric hard -ju ana -fre y -tion ed -hy bri -r w -sar ah -ach i -c ure -o le -mor ris -ch ic -broad way -la bel -pa k -pover ty -gol f -e red -f u -er ies -be es -alo gue -st el -wire less -je wish -ti de -blo cked -life time -b har -sp lit -am ster -th i -jo shu -br unch -ha ps -s for -oo ps -ka poor -hi king -suppo sed -ro of -re as -tra in -ti ght -tru mp -bas ically -r r -ea red -see ds -entr ance -c p -wi e -son ic -vic tim -he re -e h -ear rings -sal mon -arc tic -an ne -dou gla -corru ption -hann ah -ha sn -vo ices -con ce -att a -fle et -clin ical -democr atic -ton y -st ood -le f -twit ch -a il -honest ly -incre ased -dro me -don na -accep ted -visit ors -ap ar -ad or -p ar -jer ry -ra i -brand on -ab u -!! !!!! -me me -in gh -glori ous -b hu -pu mp -j ol -li ke -fi sher -ma z -ag an -destin ation -play list -le tters -gen u -br ace -celebr ated -bann er -r he -dra gon -ðŁĺ ħ -sig nature -gre y -âľ Ķï¸ı -al ice -be red -ph er -ber n -ca th -ga thering -sc oring -influ ence -sm iling -de pt -lo cal -a x -ac u -reti rement -hon or -her self -chem ical -asse ss -y all -fre qu -appreci ation -ac a -cho ir -cu z -so il -c il -repor ting -u h -enterpri se -gr at -jaco b -ru m -fe e -j ak -sp in -bi kes -phi a -ste re -p is -bloo d -t att -ra ft -war ren -sh eri -back stage -mar sh -hash tag -ther ine -re in -game day -guar an -reci pes -min ds -stron ger -issu ed -bic y -n ak -ment ed -sc ary -u x -pre vious -tt le -th ats -ac tors -u ma -tin a -bun ny -promo tion -u ss -oli ver -montre al -what s -appreci ated -la kes -excu se -kno wing -pri zes -musc le -shad es -sco t -ing redi -electr onic -ju an -comb at -s ri -e h -turk ish -l om -stri kes -pri son -re e -po pe -vi d -ol dest -dol l -sw iss -certi fied -cli p -re turning -lat or -le igh -tt es -wat son -heal ing -el im -per haps -ha ss -k au -d der -mou se -new castle -indigen ous -wel comes -co le -tau ght -no ise -appe ar -jo e -can on -wedne sday -u tah -c tive -dri ven -i v -c ell -stri p -ac c -focu sed -ar rest -sto cks -wo o -â Ĺ -notic ed -shad o -di spla -ter ror -bor ne -secon d -que ens -wo ke -ja il -no tt -cam bridge -har t -se af -fa x -ac cept -âĺ ħ -goo ds -k at -t win -h s -thou sand -s ins -su ite -amp ton -ar n -rele v -ric har -hoo ps -n bc -class ic -p ab -soldi er -de plo -le ans -install ation -cla sh -le ban -ee e -ti re -belo ved -fu sion -travel ing -ne i -coo kie -glo be -phys ics -s q -co l -wol ves -d l -ex it -" - -foo tball -le af -ster ling -hi de -minne so -fresh man -natu re -indi e -supp lies -bri s -iri sh -ink tober -doo dle -ic op -mess ages -adul ts -recor ded -fix ed -ar do -offe red -under ground -dr one -p ine -ma inten -and re -ham mer -s x -r ound -hi ke -bra d -ro me -fu ll -on ey -ro ws -colum bia -archi ves -appro ved -bat ch -illino is -recogn ition -shou ldn -fo g -nca a -ke vin -human ity -al though -pow ers -p ou -s ar -pe st -alco hol -con sci -phil adel -en o -t m -ok la -cate gory -particip ate -accu sed -bri ef -po em -clu bs -consul t -ja b -big data -amster dam -ac ing -certi fic -n u -d at -impro ved -and y -campa ig -pale stin -p ace -mo bi -feel ings -wol f -bra in -pro pos -inter active -prin ce -inde x -c is -cha e -peace ful -co vering -ac o -cour ses -mon key -re place -b l -bloo dy -tal es -brigh ton -neighbor hood -g ates -spiritu al -af raid -bre ast -b ones -ðŁij ī -vide o -w au -tou ch -inju ries -car l -ri x -une x -âĢ ¢ -fre d -consi dered -thu si -an ch -on y -u sa -graph ics -ac re -ðŁĺ © -com memor -com mod -go ti -guar dian -star bucks -pre vention -haha haha -admini stration -portu gal -fac ulty -bet a -ul a -al bert -bre ath -er i -le tting -tr ic -ment ation -incredi bly -ten nes -v d -ðŁĻ Ī -ed die -br ick -gr ill -bt w -wat ches -resear chers -t ney -ni e -p as -a ster -vi br -poke mon -ch rome -go at -pitt s -il ly -festi ve -y d -can al -ðŁ Ĩ -fi es -car los -re que -partic i -tra ins -sam ple -temper ature -sym ph -pic king -in door -z ers -playo ffs -____ ____ -ap es -ly rics -islam ic -performan ces -d ick -spar k -se as -hom a -gr ound -disc i -employe e -com mu -alas ka -al an -fe ast -dg ing -ban king -manu el -slow ly -tru cks -mc car -oo o -sc rat -orche stra -indivi du -m x -bre ath -stair s -equ ality -bla ke -loc ations -cocon ut -balti more -aa a -l c -ðŁı Ĩ -har vey -resi st -immigr ation -adid as -fil i -re f -lg bt -mo s -pp i -ken ny -terr or -ban e -apol is -s g -social media -ka i -hon est -as sas -bol lywood -âĢįâĻ Ģï¸ı -ferr ari -hor n -cryp to -bo om -mainten ance -i di -s man -w l -ext ended -in sul -ve s -go sp -tr i -pi g -tar ge -cel er -st ati -sm h -ri dic -appe al -? ) -con clu -cos me -she ep -christop her -en thusi -po lish -me ts -oun ded -sustain ability -creati vity -con crete -ra i -ali en -ble ss -te es -clu b -ro t -bo s -ex ist -perfe ction -lu ck -rock y -expen sive -mean while -happy birthday -pre t -thr iller -ca ve -playo ff -som er -l u -le x -def ence -am writing -home less -pro phe -ch et -past or -ðŁ¤ £ -land er -ww w -Ģ ï¸ı -tic a -! # -o tic -rad ar -po sters -pow der -po li -ha un -tra p -bl in -assau lt -shor ts -re y -sh y -squ ir -rac ist -gar lic -fu r -remo te -sm ell -impre ssed -fing ers -âł Ģ -din o -le ment -s nu -promo ting -str ing -produc tive -b age -ma son -ra z -direc tly -j k -ev al -ðŁij Ĭ -doc tors -co w -ri der -st v -re move -w u -na than -ro d -n r -= > -affe cted -inve st -mp tion -g inger -o d -agricul ture -s que -mu g -coun ting -ke e -mag nific -coo k -ani stan -roo t -plac ed -sym po -gh ana -un d -che er -thro wing -secre ts -f illing -opti mi -butter fly -bu bb -ðŁĺ ī -terri ble -d g -sil k -obse ssed -lo u -ai de -sal ute -mon u -philadel phia -scienti fic -i st -u ae -dess ert -bott les -can yon -ðŁĺ Ī -car ib -o ther -w ich -re source -guil ty -un d -le on -e ss -kan e -el e -tra iner -he im -an te -man age -roo kie -tre ated -po ses -rs vp -cau ses -aw ak -je well -le tt -on ics -tit les -cardi ff -g aga -bu mp -use ful -? ! -loo se -bb ing -: : -argent ina -de bu -cy cl -wh el -dis gu -j el -k ills -bio logy -ex ter -tra sh -bo dies -tr am -circu it -expe ct -la ds -w ells -sho t -ge e -naren dr -fa stest -b ent -b ills -mar shall -h ats -intro duce -citi zen -im possible -gi b -az z -net working -r ant -thin k -in dy -st ops -f theday -bri an -* * -amo di -dom e -coura ge -pac king -af fairs -g n -si zed -ent ary -pol and -swit zer -afgh anistan -w u -ten der -subscri be -mo sco -att end -republic an -hon ey -âĢ ĭ -si mul -we ster -foo die -or o -midd le -ab t -co pies -ma je -narendr amodi -ty pical -inspir ational -vit am -wis con -cu bs -tiv ity -h ali -e ars -k ay -d are -mari juana -cu rious -an ia -tom ato -re mind -ðŁĩ · -sc ared -cou p -po et -land ed -ri d -wra pped -mor ri -climb ing -e ws -fe eding -con tra -tho logy -gri d -ti vely -read er -la ser -di ving -di g -lat in -ti ed -shake spe -o ci -ad m -show ers -chu ck -mar cus -oo s -kne e -o live -ow l -dy lan -an no -g ym -deci sions -well ness -arri ves -sati s -chri s -thur s -ðŁ¤ £ -inter views -thank you -switzer land -over night -journ alist -ser ves -vol can -.... ... -plo t -nic ol -car rying -mag ne -tre asure -ex p -be ver -ðŁĺ ¢ -mar ty -mo le -don ations -recogni zed -b h -du s -sh ann -al do -success fully -ent e -ðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ -cab inet -cu is -tit led -d as -so l -strate gies -deli vering -ad ds -ani an -ne ther -ðŁĴ ĥ -con tain -su its -pa irs -to dd -rel la -ro pe -ci o -cro p -paint ings -su z -re jec -bu st -d h -fra ud -m h -contro l -je al -destroy ed -al lows -wo ol -minneso ta -om en -j u -sympo sium -d af -lim it -accoun ts -load ing -inter n -re solution -hol land -qu al -meet ings -gra ve -cam ping -v am -re nov -liber al -am ber -gre e -hu mb -fe ver -el ing -broo ks -à ² -be th -ad ed -al t -ro e -perform ed -jo sh -frank lin -nic ole -de ss -bb s -m g -net works -min im -al t -weap ons -gu y -jas on -g ha -harb our -at on -pra ise -kentu cky -bel fast -st icks -blo ss -ho pes -an thro -famili ar -wa it -ch ile -depre ssion -la x -je ts -le ice -recei ves -si er -an k -de x -inde ed -fle xi -fab ric -lam b -hel icop -am anda -âĢĶ âĢĶ -compe te -sn ack -techno logies -sy rian -mom s -mu ham -cho sen -an at -dev on -shar ks -re t -fundra iser -selfi es -st ations -communic ations -tennes see -tu tor -ro t -valu able -dynam ic -nur se -i ed -earth quake -deser ved -a ve -sar a -stre tch -dougla s -ne pal -à § -ob viously -d ame -ra pe -any body -k w -pat rol -hol ders -h anna -info graphic -ec o -be ating -stan ley -bo ats -ri bb -e z -wit ch -inv a -ac id -boar ding -- @ -gi l -da ve -care ers -opp os -l loy -in ter -do pe -re su -j agu -sh ade -in dy -on ist -rel ations -ag en -ab le -inci dent -me ter -shar ma -id r -pro ve -immedi ately -tro ops -am an -g low -gaz a -blo cks -person al -chron ic -all er -si d -sh r -whats app -lu cy -ar chae -ho u -journ alism -our selves -go t -the med -shap ed -we ak -cas ual -leng th -sla m -ab bey -e v -coun ter -est a -reci pi -cha pel -expan sion -sel f -suff ering -sp ice -n z -sp art -desp er -boo king -quart ers -y on -ðŁĴ Ĺ -p k -continu ed -- # -man hatt -tal ked -sh en -com bo -hybri d -je ans -liqu id -se al -re tweets -ac celer -collec tive -t as -: )) -profession als -ra w -o tt -su san -ir ing -okla homa -re ven -survi val -cre ator -tran sit -st ac -sur f -i k -ed iting -ch illing -bai ley -ste al -ra ble -pa rent -hun ger -sn app -collec t -philos oph -dedic ation -c f -c m -le ep -repe at -re ha -un fortun -a er -a ero -abstr act -mon itor -ag ents -bu l -sci ence -harb or -drag ons -floo ding -ac compli -d ash -juli a -the red -tues day -cy ber -b low -ta ined -le m -refe rence -pp o -ne goti -char le -con nor -au lt -access ories -commissi oner -rain y -re ar -advis ory -luc as -ma id -co al -k av -pol o -ðŁı ¾ -tran sport -mar gare -straw berry -bur ns -gre ens -ne v -partici pants -col in -belgi um -col our -in form -d ell -br on -cal y -kick off -strate gic -re union -hon ors -li b -egy p -âŃIJ ï¸ı -hy po -si zes -regi stered -bet es -relax ing -bloo m -inten se -valent ines -insan e -w wii -p x -tri o -bla de -wiscon sin -con e -plat in -ali ze -ra ven -incre asing -indi ans -il ian -bl u -rabb it -exten sion -je f -au di -fer ry -s ell -a day -us b -swe at -cham pag -metho d -mem ph -assi st -s by -ca pe -remo ved -mag n -v t -r ams -f bi -tack le -phe w -h on -motor cycle -su spec -eleph ant -sub ject -let te -da iry -whe at -awk ward -ac t -tro l -mit ted -zay n -sheri ff -ene my -con s -ke tt -bul ls -ev alu -bt c -satell ite -ho lo -por ter -dia betes -bet ter -rele asing -sur f -: - -se basti -collec ting -en cing -e thi -go ds -al ley -health y -m ills -sma sh -co pper -cr ack -read ers -sp ac -licen se -bas ket -bang la -en tic -om i -m ere -si vely -anim ation -lan es -dent ally -chill in -fi e -k aren -dep th -li pse -n g -ri p -mel o -sand y -ðŁijı ðŁijı -vin cent -nu t -hu g -who le -cre ates -? ??? -âĿ¤ï¸ı âĿ¤ï¸ı -bak ed -up grade -rober ts -har a -carib bean -auth entic -mb s -mosco w -attor ney -wi ki -ch lo -hu ll -cor k -" ! -sty lish -ðŁĵ¸ : -di ary -impro ving -ex pand -bri ght -pollu tion -k nights -person ality -chec ked -fac ilities -z el -bow ling -gu er -ðŁİ Ĥ -on going -un its -hoo k -be ck -confl ict -to dd -far ming -educ ational -k ak -cla y -stro ke -bel ly -explo re -mill enni -th m -loo p -sm s -consi st -cir ca -br yan -d ab -youn ger -soli dar -pp a -experi enced -b ella -bo ard -shef field -steph en -consu mer -sub mit -spon sor -t ang -ag gre -comb ined -trac king -sand ers -b az -survi ve -fer red -equ al -se p -re ed -str ong -priv acy -st ap -un g -ac ry -pa sta -pir ates -ag er -fair y -du p -introduc ed -wi p -let s -spr ay -ðŁĵ º -gre w -a sts -pitts burgh -new york -jo ey -lau ren -tra de -ch op -pi pe -cla ire -behavi or -v ap -cre ws -lap top -ðŁ¤ Ĺ -che ster -disci pl -d f -out doors -k s -go ver -super star -cas ino -far mer -; -) -re turned -ðŁı Ī -ma il -roa sted -co sta -v ill -pe z -gard ening -distribu tion -sh ining -inve stors -ra sp -dec ades -reali zed -bar n -p ti -st able -ut d -pan thers -m ens -b n -ca de -bu cket -yn n -when ever -wa ke -da is -ber nie -lo dge -ju lie -atmo sphere -ðŁĺĺ ðŁĺĺ -major ity -par ti -exc it -cu t -me h -musli ms -be gun -fli ghts -vene ss -ce me -po sing -so le -g ou -dark ness -pe ach -cel tic -auth ority -grand ma -ful ness -smi th -speci fic -gar cia -co ins -good ness -aldu b -recru iting -den nis -gar y -sle eve -weap on -pl z -disco ver -harri son -recruit ment -ja i -ch im -com pared -tom s -mo thers -am y -archi ve -t ask -ben jam -se g -law yer -al um -inve sting -mi e -che z -j p -a ke -fl am -wall paper -âĻ¥ ï¸ı -t ton -che st -favor ites -we igh -coo lest -r ating -relev ant -lo gan -ma ple -run ners -pri or -peop le -ma ur -terrori st -te sted -carni val -su spen -me asure -m v -cyber security -app ren -terror ism -o z -v ital -ni es -gon z -fun ded -twi st -assess ment -die sel -en for -colum n -ad dressing -ca sts -pay ment -x ton -fi er -, ' -la st -ne e -un less -clo se -sk ill -cuis ine -fun eral -ti les -a un -k ru -relation ships -ðŁĴ ¯ -ev ent -âĢįâĻĤ ï¸ı -kind ness -pro posed -acou stic -a es -defen der -dan ce -h tt -w at -vo y -ðŁ¤ ĺ -au s -cli ff -sear ching -beauti fully -in qu -at l -speci alist -ðŁIJ ¶ -da i -tra ils -class ics -inst ant -v ous -re venue -mar ch -kir k -fr inge -fire works -tri via -âĺ ħ -tr action -wal ter -mo to -l ily -att itude -cli mb -sc an -sav ings -c w -fa ith -cred its -ab led -gra ff -auto graph -he he -ran ch -ha d -ro gers -ðŁĮ ¹ -f in -re qu -fol k -ad ditional -lyn n -u ber -dol lars -lo gic -wor th -so m -the sis -p ound -bi c -st ur -cer am -spen cer -en tered -v amp -organi zed -âľ Ī -pp s -tr on -merce des -no ti -compet itive -do w -ous ness -vic tor -gr illed -na i -pu tin -ab ra -bl ame -alex and -anim al -dec ent -p ent -inter ior -:' ) -but ler -bal let -ðŁĴ Ķ -albu ms -down s -la d -si r -pla in -p ers -blon de -dis c -paki stan -se ment -ga a -w age -ch as -man i -co ps -terr it -lo l -lau ghter -ri vers -magnific ent -lam p -w b -new sle -char ts -ble ssing -p unch -lon gest -fl oral -cu tie -fare well -sto pping -mb b -bu d -chee se -de cla -si m -mc donald -de ter -you th -t ch -fre der -kin dle -fer n -at or -as leep -p ond -spr int -p ounds -la zy -gh e -fundra ising -dead ly -gran de -dou g -he y -lin da -consi dering -i um -gol den -vi k -auth ors -di ss -u ally -appropri ate -mor ning -y le -hon oring -foli o -be c -re bec -fin land -formu la -corn wall -sh ay -cau sing -bl end -sig nal -t ent -kash mir -nation als -har mony -sc out -acce ssi -he ight -medi eval -impro vement -ke es -prac tical -car d -de par -hu n -om ing -cal gary -ste l -bu bble -gur u -ma h -unex pe -n h -ed a -me at -i ge -si o -god dess -in ches -tun es -br itt -sti on -ra j -âĻ « -mer cy -ðŁĴ ĺ -sen ds -i est -pol ici -val e -reduc ed -as ap -vi jay -defen sive -celebr ations -ri ders -med itation -har mon -g ing - ¡ -program ming -in au -sud den -m h -replac ement -sk u -j ar -gra des -ta st -k itt -brand ing -k aw -boo t -f ought -p ays -g f -iz ation -ho p -k k -activi st -v end -coast al -cha os -ðŁĶ ´ -se me -bill board -li fting -cu mb -sc al -ðŁĸ ¤ -stru ck -l v -indie dev -beat en -jun gle -al right -destin y -m ing -k c -ch ances -om an -q atar -cra f -tra ined -pri x -char m -o tive -s mu -e c -and ers -hand ed -al ban -certain ly -arri ving -i ze -sa i -tr ack -pain ter -hu mble -appo intment -head line -manag ing -mo d -as pe -andre a -à ¤ -ethi op -un ited -exi st -bal i -k ad -n t -d red -re x -recogni ze -tam pa -be ers -ati a -he els -no te -transport ation -tur tle -re de -hipho p -sp icy -sp urs -⬠ĩ -cor p -ther n -to ast -hur ry -proper ties -ma ge -mar co -ele ments -bou ti -syn drome -ms g -develop er -gra ders -he im -re sil -off ices -del ay -di men -vin tag -barbar a -ðŁĺ ± -vene zu -cu lar -fac ed -bar n -ðŁĺ Ĩ -survi vor -wor m -confu sed -passion ate -Ø ± -identi fy -electr icity -sou ls -brad ley -repor tedly -lun ch -shel f -eli a -swee t -smoo th -emplo yment -am el -manhatt an -ste am -oun ts -ye p -li ving -un e -descri be -ca res -man ila -sha wn -ac ted -bas h -st even -re st -pet ition -div ine -wel sh -rac e -platin um -ðŁĮ ¸ -p b -extra ordinary -solidar ity -m all -on ion -schedu led -game of -fer gu -de ms -nor m -p k -tri als -polici es -publi shing -st ole -fron t -charac ter -van ia -ex ce -sti e -sc a -resi dential -sa iling -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ -spons ors -th ick -champag ne -she pher -continu ing -ven ice -per th -na p -a ster -y ak -un limited -cho ices -ne o -hi v -repor ter -bru ssels -f old -dy s -se mi -la wn -it alia -wi fi -as k -em ed -fr ame -monit oring -ste ad -i da -gr in -is a -fli p -re stric -offen sive -atta ched -di sh -wh y -philli ps -gre et -p als -mix tape -v ou -fiel der -spar k -alber ta -g len -ca sh -s ri -u ri -ro dri -entreprene urs -climate change -p sy -d le -em ents -lin ked -nether lands -acci dentally -oppos ition -vel vet -ra ys -c w -om o -m f -lmfa o -newsle tter -: ) -toi let -liter ature -di sp -phili p -uni form -sudden ly -head er -cool er --- - -prou d -bri g -nis san -scienti st -j ah -con centr -pac ks -appo inted -so ap -eng age -cho se -âĻ ¡ -se tup -jeal ous -har ry -g ation -tun nel -te mp -osc ars -dec ade -recomm ended -child ren -ab a -anxi ety -ve ments -sal on -pho too -organi z -mach ines -ab s -vil le -hy pe -ti ff -emer ging -av geek -[ # -contribu tion -bra dy -re sto -g mail -fit z -photo shoot -hel met -h t -eleg ant -ug anda -nur sing -or leans -pen n -na h -foo tage -em a -w o -w ad -concer ns -ve re -re mark -who ever -str ang -p t -qu it -sh ang -histor y -s ick -perman ent -ill ness -col d -visi on -he m -ar row -con vic -pin k -oc cup -bal d -ex hau -u of -am o -on t -ãĥ » -adop t -la id -smo ked -inter pre -ess enti -associ ated -b d -bb y -fi er -inst all -dipl om -con diti -c f -w ak -any a -gr aci -fi sher -s ss -ap r -il it -mus ician -symph ony -cor d -h ack -le gi -l v -bless ings -hum or -sc ra -e ti -min ster -trav elling -bu sh -jewell ery -li me -!! ! -pregn ant -pe e -lo b -cap ital -ip a -pen cil -la bor -duc ks -prou dly -wedd ing -dere k -m w -pe g -valent ine -an gu -re treat -pro spect -dang er -vul ner -up set -, # -sr k -x im -thur sday -n fl -kis ses -re ds -cr ack -re ward -c u -ko k -me te -aband oned -it t -me als -sp ell -stan bul -del ays -ru m -le op -gu m -no va -super man -ch ick -m is -dram atic -inno cent -r ounds -re c -auti sm -bangla desh -mor al -mo vie -sp oo -k la -âĥ £ -ou ting -mess i -ab road -loo kin -a im -q i -st ack -colla ge -à ¯ -hud son -sc an -ho e -ch au -oc cur -comm ander -ho les -ðŁİ Ħ -bi as -v on -stick er -ma k -responsi bility -colum bus -sa int -ed mon -rac ism -far ms -w en -gul f -may o -!!!! !!!! -corpor ation -ba chel -el a -inter nal -je ep -fol lows -di alogue -de rer -smart phone -he len -rich mond -equ ity -s land -b g -ne ar -av i -memph is -we ir -discu ssed -bad ge -p up -mi stake -phen omen -un ite -ðŁ Ľ -de pic -ri des -in augu -n at -sof twitter -comb ination -gosp el -âļ ¾ -ad mission -retro gaming -ðŁIJ ¾ -sch u -mb o -jun ction -al arm -à ¦ -gr ac -kh ali -k ul -m ale -cap tion -wi sh -te re -cor ps -ru bber -play station -er in -effici ent -l or -jo kes -in ary -nor man -lu is -inaugu ral -ch ed -âļ½ ï¸ı -di p -to e -str at -aa c -am u -pi er -co tt -comm and -tt en -sn oo -cu be -clo ses -class ical -s word -expre ssion -reach ing -n app -co st -affe ct -ric o -gi f -brea the -tri be -or tho -h ay -l g -fri es -n m -hi ding -richar ds -en de -mic ro -capit ol -cop y -ro m -regi me -mary land -tax i -di al -embar ra -un believ -ch t -v s -elim in -o dd -pen ny -sound track -l ings -trans ition -rema ining -a is -mali k -? !? -rand om -def end -ul tra -tru m -danc er -st ol -dri ve -a ver -ro ast -defin ition -se an -excit ement -partic ul -su rely -sh av -ber y -di shes -com m -is ol -i am -ob li -gho st -hugh es -chi efs -b as -conserv ative -speci al -fe min -sh ri -n ancy -inte l -tu ne -ðŁĩ ª -jo el -gg le -mo to -ðŁĺ Ķ -bu ck -d ag -antic ip -mont ana -gu id -fro g -ec raft -op e -dri ves -nu mer -x y -color ful -wednesday wisdom -illu min -bey on -inau gur -deep ly -pre fer -for tune -coo ked -ti ble -âĺ ķ -swe ater -it ter -tt y -u i -gi e -com plic -~ ~ -tax es -cu ps -di verse -sam anth -âłĢ âłĢ -ba king -sy mp -wa i -be half -mer cur -travel s -ðŁİī ðŁİ -or ia -eng aged -jump ing -reti red -n aked -p uni -speed way -sci ences -rehear sal -on ym -dy ou -pl ates -r ati -kri sh -jaz z -car ol -ra f -pen alty -tim eline -ru by -engine ers -ra f -bel le -do se -che on -esc ap -me g -ran k -or d -me gan -mer ch -ec lipse -âĺº ï¸ı -ple dge -kir k -per si -leice ster -sa k -w k -saf ely -yy y -je t -promis ed -j c -en ne -no ah -re no -re a -ðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ -tra il -ðŁij Ģ -f d -soo o -ri min -w k -ภ² -i al -x ox -bis cu -d ale -fan dom -particip ating -fla g -privi lege -pe ach -mach ine -bo ston -gro ss -o g -mir acle -adop tion -u ss -mon sters -be ij -clar ke -pu shing -pra ying -ar o -d n -ell is -apol lo -od ds -refuge e -to w -b p -ðŁĩ¬ðŁĩ § -h end -app eared -memb ership -pe an -du m -viol ent -v y -potat oes -aw w -greet ings -t ts -ac on -sh ane -photograph ed -cra b -temper atures -cu ba -c fc -wel com -he l -in nings -m k -co de -kno ck -gra ss -swe dish -p ta -ick y -v at -lin ing -s q -sa p -ar c -announ cing -sk ins -cit yof -br ing -co x -gam er -it arian -i da -h d -ros se -sad ly -ge o -âļ ¡ï¸ı -tag s -fa ther -chan ge -l ance -whis key -adel aide -te c -stick ers -marke t -class y -bad ass -flo rence -lin er -fro st -k ate -ac on -scand al -es sex -ðŁĺ ı -vi vi -dr ill -blo ggers -recomm end -d ha -ac res -ro ma -bu y -gro cer -er ia -ma har -ff er -patter ns -ver i -com pu -st ev -ang a -ment or -do o -it ali -cdn poli -on ly -conduc t -elec tro -de f -wh ale -prepar ation -bicy cle -vi ral -turn out -bra ss -qu ad -hospit ality -pack aging -den cy -ceme tery -abo ard -dre aming -pic ture -t all -inv ent -ad mi -o e -tem ps -qu an -fun dam -pro mp -resi dence -mu d -sour i -âĦ ¢ -graff iti -gi f -d nd -com p -s war -pe eps -pale stine -devil s -san g -assi stance -bi ke -missi ssi -inter viewed -ne phew -dru ms -v and -gentle men -n sw -inst a -leban on -ee ee -oli via -ver y -rou gh -industri es -m ation -ðŁĺ Ĵ -bar rel -n ay -po ps -moder n -ill y -are st -on ents -protec ting -v ans -e o -vi kings -restaur ants -re ck -jac kie -andre w -w illing -he ath -citiz en -disc rimin -à¹ Ī -stu art -m ys -hi p -tran sp -" ? -te x -su shi -ke d -cro ssed -dist ur -pe dia -f ate -some how -mo th -proce ssing -is s -r in -u ts -yy c -ver t -lg bt -re id -on to -arab ia -habit at -= = -stre ak -simp son -addic tion -wim ble -deli vers -challeng ing -ðŁİ ¶ -fran ch -e du -s me -ai ds -hur st -th am -tari an -remem bered -palestin ian -fe es -tru m -sket ch -ur u -fit ting -jes se -ðŁĶ¥ ðŁĶ¥ ----- ---- -ba ch -ici a -colo red -da h -associ ate -int el -s eller -p u -stu ffed -ac s -b s -sh in -cooper ation -certific ate -ab u -ingredi ents -re v -in ge -el der -christi an -bun dle -th ic -dir t -beij ing -comm it -ted dy -ed u -to day -s field -w yn -confir ms -lo o -j v -ene ss -al pha -vir us -ari um -gr ind -bri dges -introduc tion -pol ls -bac ter -z ach -termin al -ra iders -fla vor -zom bie -vo d -sp reading -gameof thrones -effici ency -lat ely -ale m -twee t -cri mes -cl er -de y -dg ed -hy un -pay ments -cir cus -ðŁĺŃ ðŁĺŃ -mis souri -lu b -episo des -c age -po s -mat ching -tumb lr -lin ed -ge st -am bi -nar r -ing ton -regu l -blo wn -is le -co co -on don -joshu a -tour ing -sm a -sau sage -best friend -bo eing -desi re -sav age -ra pper -de vo -te ar -take over -cow boys -po ker -par ag -pp e -h int -we ars -se th -ro les -l anc -man ga -form at -fl yer -c ay -mo or -ba ke -spla sh -v ad -ker ala -proce eds -sil ly -reflec tion -di str -wi d -su it -ci vic -yan kees -by n -migr ation -di stin -or ch -fe mini -quali fying -tu ri -o be -hun dred -cra p -wan g -mathe mat -bu re -expo sure -fergu son -seme ster -re serv -pl ym -a hu -fac ial -wa x -wor ried -ca b -vi o -as a -co d -to pics -p cs -hal o -rescu ed -horiz on -ar k -âļ ª -hol ly -el f -ul ti -pu p -quali fied -attend ance -ati vely -destro y -y c -for th -photoo ftheday -c ents -ic eland -meas ures -de sk -port folio -artic les -direc tors -dat ab -e w -creep y -oun ding -hon oured -mi st -j it -men tioned -port able -iti c -d ann -friday feeling -am id -ti ger -scri p -helicop ter -hard ware -expl or -work place -austri a -beat les -ber nar -spi der -disc o -cul t -lim its -shor tly -fin al -nin ja -lu ke -le bron -wal mart -o il -van illa -shi re -ye g -ak y -c s -bl er -collec ted -t g -rol led -speci als -b ff -pier re -sh im -vi er -flash back -restor ation -individu als -pro d -fre aking -tu rer -o a -re fre -mor oc -gre et -re yn -care ful -our ing -u sh -is d -g ill -vie w -thunder storm -b led -pic nic -guar di -pi g -ar k -syl vania -bann ed -u cl -vi jay -ori um -av engers -believ es -eu r -monu ment -concer ned -la bs -ber g -a ap -vi sh -sing les -can cel -z el -ar ab -ru th -too th -ar ta -sh af -chair s -r ack -dise ases -crow d -cl y -fle x -christ ma -artif icial -tom at -fin e -dra ws -advoc ate -fran ce -Ù Ĭ -ðŁĺ ³ -heav y -s our -compre hen -no ble -aa p -hin du -cor al -g ars -ow en -n l -st all -yel low -mar ina -in ver -suppor t -tou gh -promis es -pi e -master piece -sco re -for ce -mor tg -crypto currency -o x -r ors -rock in -pro vin -ho g -no stal -oak land -pat rick -inclu sion -tra ffic -ah med -a ha -lux ury -con secu -de mon -âĸ º -b lowing -st ag -: " -encoura ge -ben e -sku ll -do dge -bu ster -kin son -wit ne -er ror -lo west -fel low -à ° -sh re -bl ur -vir gin -compos er -sli p -mor nings -ga ins -tab le -gra in -ari st -braz ilian -w we -tu es -ribb on -an ag -di st -sac rif -em brace -entreprene ur -af fili -de o -t ali -touri st -fat al -ì Ĭ -autom atic -ðŁĩ µ -we ak -wel fare -confir m -benjam in -fi ghts -alleg ed -me ad -strugg ling -pro secu -che f -à ¨ -propos al -er n -ðŁĺ Ħ -dy k -on gs -hon g -m ack -mel on -on ent -ru sh -d ap -tol er -pro pag -c ze -trans lation -wal let -cott age -sa il -constitu tion -ðŁĴ Ģ -mun ici -fav or -storm hour -i h -ðŁĺ Į -approach ing -pin ned -j ed -niger ian -n ach -sh at -particul arly -mc don -camer as -anni e -admini str -he at -electr ical -char ming -gib son -bouti que -ex posed -ac tor -pil low -beach es -genu ine -margare t -ben nett -lou isi -pos itions -el y -shin y -ten tion -architec t -ren tal -ac qui -goo gle -sub way -mom ent -ðŁļ ¨ -ri m -metho ds -cy cli -nor folk -Ù Ī -over whel -ra pid -we ar -happy birthday -progre ssive -ðŁĴ ¥ -co gn -pap a -f ool -philosoph y -pol ar -jim my -wi g -ðŁĴ ĭ -oper ating -reduc tion -ph i -fla gs -to the -o di -a res -k oo -k ang -ar kansas -ash ton -wimble don -sci fi -attrac tive -mississi ppi -logi sts -ral ph -la bel -gradu ates -ma ha -home town -âľĮ ï¸ı -foun ded -on the -li z -trans l -mini mum -pre sti -ta m -gener ations -re bel -journ alists -par am -mc m -acry lic -death s -tes la -w t -bry ant -jer us -i stanbul -muham mad -ri ley -k ris -work shops -is o -coun ts -stre t -prote cted -trin ity -man ual -r hin -r il -pleas ant -le mon -ner d -har der -dar ren -bur y -ra h -bas is -mi gu -occa sion -li sts -âĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ı -e b -de cre -hamp ton -ìĿ ´ -tra vis -trans form -puer to -nh l -av oc -tri ps -unexpe cted -ve t -di dyou -bar ber -st ages -m son -re presented -for t -l al -pp le -nic ely -ignor e -qu il -qu inn -h k -carri er -remin ded -am ong -pass enger -el len -gue z -sc ape -mu ral -youn gest -ma sh -d ill -rout ine -stain less -jack son -gand hi -th al -on ers -edit orial -convers ations -sd ale -autom ation -i ke -า ภ-ðŁĩ ª -hau l -la ying -men tions -am en -abor tion -i bi -coun ties -ca therine -man ds -jam e -roll er -au t -n am -o logical -cep tion -ran king -tox ic -sn acks -victor ian -bang kok -psycho logy -re g -ang ela -respon d -sty le -sophi e -dak ota -achiev ed -mar ked -imper ial -in as -glo ves -sli m -confi dent -att acked -gg er -lon ely -valentine sday -re b -craft beer -orig in -zim bab -ce iling -te ens -other wise -w b -f ers -day sof -advis or -y ah -âĻ ª -en der -republic ans -av a -skir t -pi pel -chi e -jan e -ja x -ðŁĺ ĭ -âľ Ĭ -j ays -bre tt -bal o -cru cial -d har -as is -de au -lloy d -chat ting -âĿĦ ï¸ı -rel ay -remark able -n s -we t -bris bane -ðŁĶ ´ -tion ally -f k -la yer -house hold -consecu tive -es is -pend ant -st ir -crit ic -su gar -photo shop -pa res -arti stic -do dgers -c un -cra fted -am end -bo at -âŃIJ ï¸ı -egyp tian -sa w -tra ge -small er -ox y -pa ired -nex t -i res -tac o -o y -u c -st i -a erial -: // -dr o -dot com -gg ins -r pg -ay e -le an -stri ker -lo bby -prote sts -pri ority -congre ss -am ate -inv it -r ington -mom my -th us -allow ing -pione er -enfor cement -g ori -tal k -dra g -du mb -bul let -san ge -er y -tar gets -ðŁĩ ¦ -he ather -consi der -seaf ood -ve st -ris ks -% . -p g -sac red -he ating -kick ed -tto t -. - -chan di -co ven -po ol -pul se -i a -ro ster -shakespe are -es a -car go -pean ut -tro op -ac tion -tab let -home work -cast le -stru ction -mus icians -free zing -bu tt -justin bieber -j j -bah rain -an them -au dit -didyou know -na vig -guid ance -âĸ ¶ -tur f -n un -fic ations -ye men -char ging -x c -bron cos -su bur -p ale -bor ing -among st -for the -em per -om fg -p j -expe cting -ðŁĴ « -st l -ad min -expect ations -sw an -shoo t -oooo o -min ent -ãĢ IJ -wall ace -stan g -satur day -adop ted -dou bles -hom ie -ome z -d han -vent ure -surroun ding -fi le -mob ility -de es -w ski -broo ke -emb ro -re members -kar a -test im -bo tan -m tv -sacrif ice -jerus alem -d l - ´ -proper ly -ili on -as i -leg it -co pe -m cla -recy cling -lar ger -ðŁĴ ĵ -pat ric -gener ous -ja red -p f -mol ly -thom as -ju dges -h b -sor ts -bl vd -o ven -enter ing -plan es -be et -integr ation -boo ked -fre ed -ver n -ash es -to pped -de pot -welcom ed -ren a -m ick -d and -see ks -gam er -ran kings -ren e -mu t -whis ky -fire fighters -gu es -ga ther -tour ney -de men -y ang -new ton -autom otive -back yard -deta iled -mi st -to bac -fi ber -un usual -grat itude -sp are -ne ys -: * -per i -flo ating -fin alist -don ating -dre ss -bro ad -be the -econom ics -tai wan -ed wards -plu g -pra iri -val en -bab a -f ad -an as -har per -dis order -app lied -p att -bi kin -li ver -cu ri -carol ine -ann er -juli an -wal king -mal col -screen shot -co ding -skin care -activi sts -myster ious -ex act -blo cking -mercur y -bat ter -du mp -âľ Į -en se -li sh -ridic ulous -prote sters -ðŁĻ Ī -lu st -swe at -as s -ali ke -co dy -re ments -win ds -as pir -vi enna -pra y -.. .@ -bo i -cand le -assi sts -te e -der son -p ony -f ence -con spir -âĺħ âĺħ -oo th -e pic -ba rely -a unt -b am -diamon ds -end less -scre ens -can cer -gr o -p st -pro spec -mo sque -help ful -ou ri -bro ther -gu jar -cri sti -ine z -to wers -ad dresses -gra y -bur ton -re tweeted -ðŁ¤ Ķ -n ity -du ck -super vis -jo an -kin der -sanc tu -pi ed -âı ° -ł ï¸ı -m ati -reven ge -ce ster -eli fe -desig ners -back ed -bo li -wei ght -cou ch -su res -s its -shri mp -la gos -auth orities -os ity -hol ly -compu ting -fac tors -ab e -pan els -ram ad -sent ence -missi on -hol m -r b -d ads -shang hai -mon ey -she ets -sk ate -thre w -cup cakes -infin ite -l is -practic ing -ess ay -ka i -as ci -mo b -u gh -hol mes -re gg -ik h -mo ck -collec tions -pe p -o va -sal t -nan dez -co y -thre ats -tex ts -cin nam -pregn ancy -pen ding -stam p -flow er -g is -agre ed -pay ne -ro ver -ph ra -sof t -f fin -fa thers -pass engers -aw ays -al a -h es -li van -in s -samu el -ingu i -h of -j j -chen nai -cat al -om ic -he ath -ni ece -pump ed -integr ated -are l -no m -produc tivity -wan ting -vis a -di ana -tw il -it v -cam ps -ro wing -d ley -black and -gu ards -b ells -re verse -vi be -ric ky -mo ss -ny t -âĺ Ģï¸ı -el le -tro y -cu dd -ev an -women s -fo to -mi stakes -wick ed -mi l -c led -me mes -co smo -schol ar -ren o -ðŁĺ Ģ -v ents -# â̦ -terrori sts -ca sey -cardin als -ðŁĺĬ ðŁĺĬ -venezu ela -bol a -liter acy -t w -en o -con tains -au stin -fin anci -ev an -har vard -origin ally -chev ro -her ald -nott ingham -manag ers -âŀ ¡ -accep ting -wal sh -tutor ial -entrepreneur ship -yach t -requi rements -glen n -pe de -unfortun ately -ach ing -dais y -gi an -night mare -âĿ Ĺ -r ina -b art -ema ils -oppo site -who m -sa ke -pu zzle -da shi -par ty -blan ket -bus es -lo re -beau ty -reas on -pun jab -winds or -func tional -exi sting -hel lo -gli mp -con vin -la k -scre aming -rebec ca -bli ss -north west -infin ity -cosme tics -pul ling -coffe e -pl ing -op ho -colom bia -interior design -( + -emo tions -sa c -sun glasses -sav es -d f -six th -al y -ðŁĺ » -de en -dev ast -polit icians -lac rosse -g u -pe i -jav a -comb ine -coal ition -er ts -survi v -ch ad -stri an -n n -de vi -coun c -concer n -contro ller -bre ast -j ury -tu m -introduc es -la di -mobi le -al z -ste ady -nur ses -h acking -on line -oce an -ðŁİ Ħ -a am -ju ven -ic c -louisi ana -ar te -street art -is on -wn s -fr m -p anda -no ir -main tain -del ay -symp toms -thor n -ge ome -ter n -carri ed -p ru -pan or -as sy -per u -clou d -sp ra -pe di -e ste -tag ged -ðŁĺ Ŀ -shado ws -naz i -ا٠Ħ -cor ri -âĻ¥ âĻ¥ -j ad -ðŁĩ « -form al -spo ken -ðŁĮ ŀ -enjo y -lo pez -out look -in ho -w ander -Ù ħ -ma ya -pe e -d ine -ãĢ ij -brief ing -suppor ter -ar ily -ght ers -natur ally -doctor who -j en -v ar -new year -re se -si mm -re x -con sequ -tomat oes -bur st -bra vo -bur gers -cr acking -nor theast -bi om -mush room -mar que -dou ble -ni er -v ag -tw enty -key board -win ni -jama ica -par ish -: - -mental health -ali zing -ren der -wa king -ðŁİ Ĥ -g ly -na than -wa shing -mel issa -jun g -loy al -chil i -song writer -guit arist -bo wie -neighb ors -onym ous -as set -ta i -head quarters -ðŁĮ Ī -i hear -ci gare -sur g -) " -re pl -dar ling -ðŁĻ Ħ -z ak -sa re -ãħ ĭ -mic key -ware house -mass age -ine es -did nt -i w -hur ts -eng aging -mag ic -women in -k itten -mor s -c art -tit ans -colle ague -compe ting -er an -k hal -mar ble -dem and -del ight -et ary -bli zz -lou ise -m ls -fini shes -experim ent -conduc ted -electr onics -itt ers -car ing -wh ats -sym bol -jun g -e cu -pi x -con text -char ger -ðŁĺ ĩ -re ig -fra g -ë ĭ -ch ad -tru e -ker ry -def ending -a int -au ton -check out -bar nes -less ly -d t -m me -clou dy -second ary -are z -_ : -app a -const ant -" ) -ve ts -jo b -i ent -ðŁĺŃðŁĺŃ ðŁĺŃ -m j -fren ch -di ver -davi es -hh hh -e book -๠ī -mar iti -bree ze -susp ended -mat o -vi et -ra hu -se i -bol t -en ary -le is -kar l -fr amed -expla ining -ab c -de aling -nat o -ja ke -exp and -leon ard -establi shed -du b -ar men -el led -voc al -nichol as -ori ent -k yo -illustr ated -ah h -danc ers -milli on -ge ta -po pp -as u -mur dered -gi ble -sto ked -gri ffin -maxi mum -adri an -en counter -ther o -david son -ðŁį » -holi day -ev o -asse ts -car son -memor able -âļ ½ -ob am -represent ative -cb d -tr icks -vo gue -vo ice -mm mm -sebasti an -cli f -ath y -par alle -ðŁ¤ · -pa k -ev acu -e ats -ا Ø -tou ched -organ ised -spir its -can ad -gui ded -frame work -ðŁĮ Ł -pe d -natur al -ag ar -replac ed -anch or -ti t -sha h -organ is -super ior -r n -ch ro -eric a -st ill -cor on -chu ck -loc ks -or gan -ro sen -sc am -ben ed -/ # -ke en -tre vor -vamp ire -sor ted -! ' -af ford -in tro -gr ace -ðŁĺ ľ -sau r -kick starter -influ en -v u -y up -po c -ðŁİ ¥ -a ar -s ang -tre k -et sy -tb h -scre am -chevro let -pix el -shepher d -an or -gabri el -tw ood -sd cc -me ters -develop ers -clo sure -v w -twit ch -ì Ĺ -se oul -pr ice -ho g -n ish -hill ary -scrat ch -in cen -wag on -dis ability -pan ther -ch ats -g d -wit z -sus sex -l ate -den mark -ger ald -cancel led -net te -i x -nav al -bap tist -te t -y ad -ma th -ho y -r andy -po int -intel lec -fru its -w ool -gu in -pr on -the ft -con dem -mar ry -n ola -architec ts -cin cin -roc kets -gentle man -ex plan -t ate -do e -ra ises -wild life -w l -insi der -blan c -w p -for sale -ny c -po well -unbeliev able -pen s -goo dies -mu stang -p ens -st ays -squ ash -xox o -near by -ever ton -co co -le agu -k han -stu d -south west -con struc -s worth -cro atia -le a -su ms -aim s -e an -van ess -iti ous -pa thy -arc ade -b end -sugge sts -sac ram -roy als -ri er -em ir -in cl -an k -clar k -ri ght -vac c -ठ¾ -tan e -li b -u sc -sal es -hu h -s ally -ver a -p ga -gro ws -dru m -tre e -eth ics -sug gest -is ab -se aled -pre viously -anim ated -ab du -ri ses -glo b -pre dat -scar f -del ic -om ar -ll i -sx sw -py thon -ne bra -fun k -reflec t -pav ilion -tic ally -ch asing -bak ery -inva sion -ko h -believ ed -co hen -con qu -cra fts -nat i -cle ver -govern ance -sam ples -fa ils -â Ķ -ti mo -r itu -stri king -inclu sive -sho cking -can t -requi res -dra wings -à¸ Ń -purch ased -du m -z ach -war ner -con sole -man sion -foun tain -circu m -e sh -is land -mil k -pro fits -hali fax -ri val -âľĪ ï¸ı -jen ny -sand ra -ny e -k elly -y al -qu ad -no s -inste in -fin alists -mid fielder -cu e -excep tional -a an -sa pp -gett in -sa a -f ati -sl ice -vol k -s wal -la sting -sum mary -it as -sm o -s z -âĺ Ĩ -ip l -fl ames -ene ws -ha v -hoo die -pitch er -win dy -re vol -centr al -ton ite -ðŁİī ðŁİī -sol ved -mil wau -organiz ations -wee ts -re fin -s th -ãĥ ¼ -el in -ton a -cinnam on -ðŁİ ¨ -ðŁİ ģ -ron aldo -pen insu -ome ga -el ds -desig ning -e igh -blu et -ben z -nu g -ash a -robo ts -su dan -choo sing -en do -ser ge -clo sely -hand y -fing er -be ing -ar te -survi ved -fl ame -mile stone -gu t -d war -fu tures -é e -el o -fri dge -eli c -ou ch -u b -p v -tit an -col lar -st ation -nev ada -aur ora -r d -dun can -âģ ł -bri en -mar sh -Ð ¾ -to tal -ch ry -s ers -su ffe -ra chel -colle ge -to days -cour ts -ch it -re united -gym na -gen esis -be side -re presentation -ch ant -collec tor -ra k -ath ens -ni gh -mun ich -langu ages -fl u -particip ation -__ _ -c v -spec trum -so da -co ver -refe ren -ab bo -ap a -public ation -ed m -mon ica -ar my -ðŁļ Ģ -div or -dr y -stre ams -robo tics -ci der -bull ying -appro val -sto ke -plat forms -sier ra -ex tin -i b -ha yes -succe ed -suff er -at ically -da i -lyn ch -h ound -del ines -ack now -d ated -exclu sively -he res -fac ilit -dam aged -char ter -la kers -fal con -unve iled -wel ove -e ase -pati ence -l one -gent le -gene tic -produc ing -g our -shann on -bil ities -zimbab we -p int -dau ghters -liter ary -bel le -cl am -surroun ded -k any -ne il -pir ate -rang er -hb d -nat alie -bel ong -olym pi -emb assy -sc ol -en er -ak in -lo ren -b h -: / -di va -den im -hi pp -ðŁĩµ ðŁĩ -arn old -? ' -we ren -em power -dis abled -man or -rasp berry -b af -aw ful -dru mmer -kar dashi -n ash -machine learning -ch u -rebel s -tim ing -mon roe -ton gue -ran ge -pup ils -re ss -amaz on -b z -har ley -pal mer -ballo on -s ings -ic ec -j b -c ers -g ps -whi st -ri se -l t -oo oo -c attle -shoo ter -vod ka -uc l -mt g -le sli -jon as -di spo -at ric -ste in -vintag e -fir ms -flo yd -cow boy -soo oo -is aac -war craft -disney land -beauti ful -be am -franch ise -bu n -k ag -an on -tur bo -swee p -made in -kar achi -dete ctive -penn sylvania -contro versi -vitam in -a side -chron ic -descri bes -remo val -ha h -ap er -ten ed -u to -bad ly -mir ac -f ry -ye a -in jec -ther mal -comp act -th or -te ed -ur gent -l ite -g illi -sop hom -ic o -che m -p m -for k -fre ak -ch ak -recipi ent -i y -ni k -model ing -c ans -ðŁı Ģ -del ux -se am -surviv ors -rad ical -investig ating -reli able -f m -tur t -ligh thouse -to ol -go wn -) ) -bo ts -auto graph -a id -bu ffe -h mm -horri ble -ssi onal -ann i -à¹ Ģ -k its -sch i -eter nal -hu ss -sens itive -r u -tast es -chec ks -im o -por tion -sk ate -e den -half time -fri ed -ri hanna -ti se -fl ick -ca in -s gt -âľ Ķ -sh au -sta ined -ra ffle -dro ve -sal man -princi ples -sh o -ar u -je ss -gu ine -gar bage -my an -jel ly -dis ru -z ia -q ld -ent ries -la v -fle w -ad mit -objec ts -comp are -ny times -cann es -p n -suff ol -ro c -d ana -e gg -hi st -coun sel -' ! -phy si -imag ination -ad just -explo sion -plym outh -hor ror -elli ott -bour ne -de x -bre ed -au dio -lob ster -disappo inted -nation wide -( ( -incre ases -austr ali -ce dar -star ing -rac ial -e is -g mt -visi ons -stay ed -discu ssions -de an -cur tis -mai den -stel lar -happ iest -h wy -pre season -car av -mon days -hospit als -glimp se -schol ars -ja i -ter race -ann a -goo se -gra ded -lot us -hun g -grocer y -stam ps -emper or -sc oop -in ser -c as -exist ence -he al -fal cons -mar vel -reduc ing -terri fic -magne tic -perfor ms -bar re -p us -tre ating -ic on -w h -decla red -tra uma -do d -come dian -nik on -bu gs -as m -mont gom -ibi za -comprehen sive -ha s -san ti -fellow ship -da sh -p sal -louis ville -sp y -fau lt -d the -fi led -vi sta -de sc -fe ars -you tu -sp s -es p -ri g -cri me -ber ger -wonder land -k ent -in formed -stev ens -my th -ast on -ir i -visit or -at ri -produc ers -al la -person ally -separ ate -agen cies -af ri -il an -spo ke -n ina -squ ad -di ves -de pend -li v -fier ce -enter taining -cha in -sc at -bor ders -pal ette -sp ro -os is -der by -tobac co -zi o -willi e -ju vent -zoo m -hol y -enti rely -af e -mart inez -be ds -pe a -bull dogs -ðŁĩª ðŁĩ -ib m -ne on -ethiop ia -team mates -plan ting -tw er -any time -for bes -ó n -run way -ner vous -ro ger -p ile -ch anc -apo caly -u w -o i -dr ought -territ ory -br ick -cre atures -go in -w aff -gre n -sou theast -je an -am bul -ed ited -stra p -c v -aar on -ãĥ» ãĥ» -t su -descri ption -kin dly -clu tch -im mer -en or -women sday -or ange -ra g -ob vious -hy der -chann els -man go -me yer -ra ining -ge tty -pil gri -coordin ator -up load -ninten do -don uts -san chez -app arel -j r -zz i -, @ -jeff erson -accessi ble -great ly -e id -initi al -budd ha -par is -ma scot -â¬ĩ ï¸ı -sch war -si ri -sp inning -mortg age -e cho -end ange -ge dly -chlo e -enh ance -kar nat -k ry -explo res -ðŁĴ ģ -af fair -ic als -all a -dar t -dolph ins -diffe rences -squir rel -au gh -dr ones -ell en -re store -pa w -un for -pi ke -hil ton -colla b -consu mers -co inci -out comes -pp p -a q -coup on -li est -si ms -k ho -av es -spo on -pu dding -cor byn -hat ers -ex ams -sla ve -. ! -p sa -app les -tam il -se d -co ke -zz o -lo sange -car bon -cla ir -... ) -k hu -cra ig -explor ation -sanctu ary -su e -al way -demen tia -won ders -super hero -pakistan i -brown s -bluet ooth -lo cker -mar c -ev entu -delux e -rodri guez -âĿ¤ âĿ¤ -ro bb -ðŁĴ ¦ -lin ux -ten s -intellig ent -se ed -vo ter -s ler -pe aks -inter n -teen age -peninsu la -hand ling -ti e -cou sins -wen dy -me e -à¹Ģ ภ-din o -ðŁĴ ° -ðŁĺ ĥ -ze e -s bury -trage dy -b k -bo re -z in -war ns -idi ot -tou ching -contin ental -tac os -saf ari -wa shed -po dium -morri son -fore sts -c bc -al on -partic ular -be ads -inv ented -lo ch -li ghter -where ver -i de -docu ments -a we -k r -no where -min er -st it -ro x -contribu te -har dy -cl an -ob ject -ca it -ðŁĴķ ðŁĴķ -happ ier -vege tables -t art -g ag -nom inee -heav ily -pan ic -j d -there sa -at m -u ph -s fc -su ri -drin k -n al -re vel -k l -avoc ado -nom ination -ma donna -shar on -malcol m -control led -sh ers -revi val -legis lation -shoo ts -n in -comm entary -pro s -human rights -str anger -mit ch -pipel ine -leg ally -th u -gil bert -tol l -gran ted -gh s -ir anian -refre shing -du k -ab i -pri me -jose ph -mo sa -stati stics -produc tions -mer ry -pat el -sa x -human itarian -struc tures -e missions -town s -fre el -ster ing -rat ings -alle gedly -cab in -st l -w ade -fl yers -tri m -promis ing -z u -bal lot -compar ison -free ze -ou ter -great ness -as sign -snow y -r ale -tor ies -med iter -kno ck -consult ant -cincin nati -analy st -sc oo -je ws -appro xim -pu re -portra its -cy rus -ation al -lo ans -acqu is -el u -accep table -uni on -water color -ru st -batt les -per fu -seas onal -ser ial -mind set -ri ot -fel d -enni al -clo set -pri est -tan ks -int l -scre w -bu m -ab dul -ou x -expla ined -ric a -imag ing -law yers -bu ried -ãĥ»ãĥ» ãĥ» -ear l -âĢ ķ -l ton -resto red -stri pes -fo ss -de mands -ste aling -alex is -mun d -ak er -ur us -war dro -hu gs -gen re -e go -Ù Ħ -particip ated -bab es -ban quet -ti ous -he mi -ds b -lo st -milwau kee -jen ner -ge m -ou tra -lo ses -id i -re ps -ðŁİ § -regu lation -fla w -f ang -vibr ant -ram p -ra ins -well being -so viet -vie wers -de po -libr aries -bi go -ser y -g ill -de struction -co z -c x -bri dal -al ds -plan ted -amate ur -lu d -che ering -show cas -pro file -i u -ver tical -pack ers -wiz ard -ski p -s light -be au -air ways -mu ch -re ra -ðŁĮ Ĭ -ab sor -pati o -pack ages -s ells -ment ally -ðŁĺ ¢ -reyn olds -k are -tri bun -wal t -kn it -ta ste -sur rey -boun ce -cre ature -b are -bet ting -su re -mi ley -laugh s -al ore -cy n -t l -arti st -ann ah -war mer -dynam ics -lunch time -mariti me -vulner able -ðŁĴ ĥ -wol ver -dur ham -const antly -am in -si bl -: @ -bul let -k ach -angel o -wil der -doo m -desk top -law suit -k ca -hen derson -inv iting -bet ty -ta wards -ra fa -le aked -and i -ge ms -af l -vel o -mediter ran -pro be -to tten -steph anie -sn ation -com be -q s -over come -assas sin -ra v -fil ip -winni peg -sh il -determin ed -k as -ou tre -regre t -gui des -aa a -ðŁĺ Ī -wi ves -mani fe -er ly -sm y -sh ima -x ing -pix el -jac ob -ac commod -to y -on o -po o -ti er -an swe -ðŁĴ ģ -ro sa -le ase -bel ongs -th ar -eventu ally -nei ther -go a -ski ing -at ra -ag h -broad casting -f ury -py ram -d ice -volk swag -wom ens -provi der -bom bs -miss ile -whi p -d ick -nor we -back up -el der -mat ure -concer ts -gi ous -sque e -good morning -bra ves -^ _ -au ssie -lun a -mal es -he ck -for tn -rome o -steel ers -p n -pe er -re presents - « -kat y -migu el -requ ire -cha ins -l ur -immedi ate -ti mber -âĸ¶ ï¸ı -advoc acy -ex port -an z -tiff any -auth or -ðŁİ Ī -du des -chil ly -hi d -har m -bu g -mon ster -terri er -tu c -story telling -ta k -in ti -immigr ants -b is -reach es -com passion -john ny -contribu tions -ðŁIJ ¶ -mechan ical -impre ssion -ran ks -ko be -men ting -bloss om -pab lo -buil der -bom bing -tw el -sul livan -om o -pe te -de mi -ku dos -w bb -t gif -mass ach -neighb or -che fs -eng ines -pun e -ga ined -phan tom -s days -ext end -gr an -cent ers -jac qu -dat asci -sleep y -el vis -answe red -s lot -con y -flexi ble -ti ally -le tics -% , -andre ws -si ble -mom ma -vin o -do x -invit ational -twil ight -j ade -ill ery -joh ns -f ou -p v --- -> -break down -billi on -prin ter -mon d -c bc -mag gie -legi on -du b -kur t -po or -paren ting -regi ons -bikin i -be ware -si onal -au burn -kid ding -amp les -sp an -con tempor -c ic -ha bits -ak o -pre fe -bud dies -it z -em ily -person nel -moun tain -ver sus -ðŁĺ ¬ -ear ning -s ink -dar i -u u -s win -i ster -bru tal -n ac -kat a -clo th -am and -ðŁĶ Ĺ -ne o -alu min -week ends -nebra ska -co des -delay ed -brun o -pro ven -in c -i ght -fl an -or o -lam bert -regu lat -w f -massach use -kardashi an -bern ard -fi esta -volcan o -grand pa -anc a -d re -st itu -mean ing -fo am -au ck -at ed -r l -hot el -pers ons -dy nasty -ell or -ma i -am ne -sty ling -avi er -e g -vege tarian -, â̦ -foun ders -sta in -g d -cy cles -sky line -trac tor -exi sts -tra l -kid ney -mar il -inst ag -se tte -addic t -tri angle -flash back -controversi al -z on -p ins -i as -tr ay -town ship -deleg ates -sp am -h ms -cr ane -peop les -o lo -fac tion -but es -on ica -deleg ation -new profile -eli er -mc a -w and -g ely -losange les -ber ke -ti ve -dis rup -zz a -cas a -jor dan -ford shire -ga thered -ic hi -atten dees -à¸Ń ภ-pe ppers -co in -bour bon -ern ity -ro tary -behavi our -jere my -team work -compli ance -tre mend -ðŁĩ § -bu hari -cam bo -bu yers -ha gen -bu ds -bay ern -mon te -sm ells -an za -ath lon -descri bed -work force -gi ving -ap i -invest ments -da il -sel ena -datab ase -th um -mor tal -stu dent -bu yer -do ver -gar ten -att le -loy alty -gen oci -holo cau -theat ers -ru ling -ven us -pat ent -ch un -ab by -awa ke -mass acre -bang alore -break ing -simm ons -ju sti -hal e -ed chat -gg les -haw k -mar king -head lines -stro m -co ve -breath taking -med als -hair cut -christ ine -tele graph -gujar at -ju ra -can e -sho re -propag anda -mu eller -.... .... -sa vi -stom ach -thro ws -ta b -war m -j ong -reno wned -hi r -ra is -mush rooms -guaran teed -bo a -m j -revolu tionary -certi fication -bru ins -jo in -w es -pas sport -c g -sex u -cap able -w v -ton es -jac kets -ac compan -spin ach -fore ver -bla ir -wat ts -g l -cou ples -prairi e -newprofile pic -logi stics -massachuse tts -jagu ar -o id -we al -under water -mo z -y i -ma ths -myan mar -pre ps -suffe red -tr ace -wal i -ah hh -bor g -st itch -cu lin -real ise -infe ction -discrimin ation -sh ame -an kle -hu mid -y t -brac ket -tru ck -tri u -ea ster -commun ity -post card -invol ving -ty ler -car amel -over view -ex amples -integr ity -base ment -instru ments -ani um -at us -gh er -laun dry -achi eve -gen eva -pr icing -hyder abad -beli ef -me ta -j aw -accoun ting -lead er -cristi ano -cou ture -cy p -vis ed -, ,, -k nu -h ick -break er -br am -ra b -mo or -ham as -gradu ating -pupp ies -ak h -ta h -ach es -ri e -op ini -g ta -re ign -tra gic -re ver -p ill -pine apple -tou ches -da re -le ys -il o -inter iors -sc outs -bar t -en zie -don o -bro ck -christi ans -ense mble - · -cine mas -new port -air line -win ston -le igh -cont ents -pre scri -ur ge -tr out -fic ally -il ia -sub si -are r -âļ¾ ï¸ı -w ounded -ðŁĻ Ĥ -pe pper -ðŁĴ ŀ -fit ted -af f -re sur -thursday thoughts -z ero -archae ology -di v -je e -i on -awa iting -co zy -beauti es -bal d -dat a -gri zz -stal k -kin ds -cle ared -jess ic -regu lar -ali ens -plac e -bo s -bi zar -thisi s -ðŁĴ Ģ -totten ham -ma fia -s lam -ari ana -car roll -back pack -care y -uni v -r g -pe p -dig it -tatt oos -ag on -volunte ering -diffe ren -consu mption -ka thr -head phones -t shirt -o b -ele ment -re tail -sh ru -al gori -contain er -consci ous -fi l -com ing -ra sh -u rope -def ine -gi or -femini st -flow ing -rout es -gl aci -fer t -somer set -ant es -twee ps -$ $ -h our -endange red -year sof -ro h -po pped -bac king -ba sil -bra ke -mon aco -lgbt q -pra gue -ut ility -cas si -gate way -haun ted -sch ul -ðŁİ µ -shou ld -walking dead -comple ting -dann y -montgom ery -pengu in -ss i -mer chandi -ðŁij ij -chur ch -h ates -cap tain -brea thing -ce t -fair ly -approach es -compan ion -surpri sing -kany e -pe y -hin di -targe ted -lor ds -de ut -di gging -ger man -ru t -ener gy -close st -y un -apo logi -ภ± -s ack -ru p -dd y -port al -d ough -b ats -ðŁĵ ° -at ur -graph er -pi res -mo tors -ðŁĮ ¹ -j c -dan g -tu k -clu e -us c -pag e -d less -bro ws -ju s -ad ing -re marks -oo m -car dio -ste fan -arm strong -âĢ¢ âĢ¢ -ni est -belgi an -bi op -so y -lo f -í ĥ -q t -flashback friday -ce e -ģ ภ-wre ck -mar ines -amend ment -wardro be -vo y -bur ned -guit ars -ra inf -li fel -ssi l -oun ce -exter nal -c key -me sh -she ikh -inv itation -sugge sti -pop corn -phenomen al -an onymous -tun a -chic ago -o val -del y -loc als -( & -pro f -no vel -fin der -spar ks -la ven -in fu -nic ks -qu ant -ra e -exe c -dist ingui -st ances -mu tual -sh al -unve ils -edmon ton -zan ia -a dio -vie wer -brad ford -audit orium -qu is -re act -htt p -l ero -chee ky -impac ts -ta k -ed t -desper ate -t ay -ì Ħ -sett le -bar gain -resu me -un ite -thro wn -ke st -se ys -mar ching -am it -decl ine -sch ar -me tr -stan ford -lin ke -ber ra -dol ls -rug by -jam i -b or -road trip -dino saur -mi k -sun der -re m -b k -over seas -nau ghty -imple mentation -iam srk -lun cheon -fir ing -mi ami -pere z -the e -z on -gi fted -con version -ceram ic -¡ ï¸ı -pe dro -ì Ĩ -v ick -! @ -he ed -si d -b w -docu ment -pl un -gr ants -fant asy -predic tions -vali d -car ved -gradu ated -ðŁijį ðŁı» -nation ally -ch y -af l -re sso -blan k -ri vals -j ig -e ties -om ics -une mp -b ound -sk o -inspec tion -par al -high s -cri sp -b ans -ob a -[ @ -co spla -costu mes -rec all -mou th -ni gel -b ts -ter a -ko v -do cs -west minster -dic t -gra vity -kar i -ro gue -t ted -war k -ida ho -w end -aw i -queen sland -proce sses -cli ffe -m ick -com pens -op ol -the y -cl ari -wiki pedia -salman khan -haz ard -pre ston -swee test -pd f -che es -tr ilo -south africa -bur nt -( $ -con tain -t p -sub mitted -sound cloud -at u -re z -word press -corru pt -n f -ma ker -í ķ -par as -adv ent -ri al -ca fe -fo ssil -!!!! !!! -co ws -c j -sp ur -institu tions -land mark -ent it -re ut -h is -alz heim -we mb -regg ae -mo squ -st at -identi fied -deal er -re am -re land -ten sion -ðŁĩ © -wra pping -deep er -fr at -red dit -ar is -moroc co -.. " -b low -ma pping -pri orities -ing a -swa p -re wards -conspir acy -creati ve -c j -congre ssional -vau lt -ple x -sophom ore -shad ow -ele ss -ðŁĺ ħ -dar ts -aldu b -anno ying -pro ps -n as -alumin um -h bo -offen se -j ill -oni ons -la ur -ta e -har dest -sh ro -ga ining -meas ure -ed tech -cyp rus -tar a -ang eli -car lo -go on -all i -im plic -ju pit -resil ience -ha il -bal anced -) ... -joy ce -gr a -th eli -defin ed -shi pped -main ly -min a -l m -sac ri -o ber -p im -claim ing -ent ers -co rey -bo k -cri ed -cool ing -dani elle -pharmac y -thor ough -ca ke -k lo -outre ach -z ens -digital marketing -val ent -sn p -her b -mr w -caf é -cap tures -no tre -triu mph -pan cakes -cu mber -spi ke -d ation -bi gg -sp er -crit ical -am al -too th -foun ding -a stro -' # -quan tum -th ames -un c -pri de -air bus -kno cked -un defeated -mediterran ean -cal cu -clo wn -sens or -ham mer -for give -cu shi -ber ry -maje stic -elec t -polit an -g ta -k ari -bur ke -sea hawks -volkswag en -re i -landsc apes -cas u -grand father -list ened -/ / -star trek -rainf all -fur ry -vi er -star k -rif le -ff a -leg es -hillary clinton -min us -correc tly -architec tural -pre ce -up side -box er -ðŁĻĮ ðŁı¼ -is ai -de t -pro vo -tis sue -spoo ky -ve led -re con -prospec ts -que bec -âļ « -ig no -anat omy -shap es -w p -p interest -hor e -an es -pick up -ti p -pra desh -hu gh -co e -po k -gram my -well ington -sti gate -ri gh -lea p -king ston -scen ic -go sh -v ani -au g -s ary -zi er -bure au -lin son -con te -fra gr -all an -g aw -lan a -colli sion -surve ill -ren ais -ar range -s ali -do in -br ance -bren dan -our se -in coming -suspen sion -à ´ -l la -educ ators -in tri -da e -bio graphy -bul gar -villa in -go thic -rw anda -e w -may or -meet up -democr at -mor gan -su dden -te sco -car rot -bom ber -mck in -re ne -fun day -agricul tural -haha h -show time -form ing -col a -scor pi -quo te -po ppy -s life -d az -tu b -ne n -mo t -ðŁĺ » -s ore -elder ly -o ve -skin ny -um i -anc o -man ship -we re -g v -k ah -fol ding -ne at -samanth a -dan ish -uk rain -humid ity -nu tri -jak arta -cand les -oooo oooo -at ile -streng th -i bra -bap ti -charle ston -fr ames -girl s -clear ing -glu ten -# # -super natural -ju bi -ph one -he in -dr un -le ak -invest or -y er -dom ain -ball room -mi sh -app li -off shore -bla ze -dor o -âĺķ ï¸ı -win ery -shar if -ad ore -n ir -saf er -si gh -as cri -strong ly -trac y -ck er -ol l -faith ful -ey ed -deli ghtful -vis m -karnat aka -tit an -wh ar -jer seys -re fur -heav en -gri p -pan ama -pre li -glu ten -o dd -cont ent -pon ti -tion ing -e commerce -feder ation -flaw less -ge ar -ti res -by r -pol ice -cu ban -tri butes -tic ul -chur ches -nur sery -di aries -muse ums -snapp ed -i van -wi ght -touri sts -ramad an -t rent -prophe t -won dered -focu sing -hi d -ic ons -i q -ambul ance -pi st -fun niest -time less -sr ilan -bu ys -ki ds -colour ful -a shi -ch ir -mu m -ðŁĵ ļ -let ter -x en -reut ers -pre serve -in ting -ste p -fu ji -uni ver -i u -show down -po ems -surveill ance -suspec ted -ta e -sol ving -tom b -mother sday -car pen -recru it -pil ots -bro c -mix ing -fri days -ty r -represent atives -tra pped -abdu l -free style -clu ster -âļ łï¸ı -k d -sk ill -pit t -ex o -commer ci -muse um -loc ally -g ina -no bel -immun e -fr ac -cap su -main ed -attemp ts -bull dog -be spoke -sing ers -sp elling -seg ment -nat ures -tic k -lip stick -clean er -gett able -preci sion -â̼ ï¸ı -th ood -re ef -no pe -bill y -di gi -mu si -ri val -figu red -tal ity -sun ny -ber k -aw ww -awa its -un real -co pen -asy lum -ex otic -bu en -mo ck -en able -arch y -fr a -pla stic -al mond -amp li -displa ys -abbo tt -s me -x p -ðŁĻ ĥ -graph ic -i ved -mar a -cau tion -lea ks -en berg -ul u -unic orn -cann on -appren tic -ðŁĺĺ ðŁĺĺ -b ball -wil low -at ics -am as -manufac turer -campaig ns -port ers -flo ors -l su -ty pe -ke j -honor ary -it im -to le -min ecraft -d x -ma sh -ri o -consequ ences -ron ald -go ssi -suffol k -mu se -r bi -live music -i van -ðŁİ ¤ -le u -patri ot -man it -lan ca -home decor -de ar -sig ma -ti de -str ings -v ita -sequ el -try na -inve stigate -bor is -ve gan -barri er -mind fulness -web b -hu stle -in da -tan zania -str ay -tex as -c ag -diagno sis -wom an -g w -ob session -l ative -nu fc -fl ynn -moment um -sof a -wal d -vege table -tu cker -supp er -se ab -ar ro -se ag -ven ting -counc ill -sp lat -cal cul -.. # -com fy -odi sha -sto pp -war fare -ca es -à ¨ -co y -price less -in sec -ðŁĺ Ľ -contro ls -empower ment -datasci ence -per pe -gen ic -e res -tru deau -man o -sla very -expand ing -ma he -fa iling -s aga -photograph s -cre st -re on -surf ing -hi e -ðŁį Ģ -ja e -fel lows -south ampton -sol om -ce ster -tab ility -hor n -se ct -he e -cole man -at las -explo rer -consul tation -copy right -organi zing -den ied -mon keys -noo dles -br is -fl or -dou gh -bon ds -sho cked -eco system -care fully -w m -apart ments -cur ve -san diego -must ard -comm en -cere mon -e ch -ru th -ðŁĻĮ ðŁı» -hawa i -fil med -te ar -as ingly -ca ir -wat t -instru ment -ou tta -ye ol -river side -ë ° -. : -nor wich -alo g -migr ants -new man -ri de -spr ink -targe ting -beli eve -tor ch -reflec ts -per mission -ff man -ene mies -bas ics -se ized -sun days -le i -hass an -en do -h c -st ad -le ments -kk kk -nan o -shar k -man a -on ic -treat ments -ear ly -collabor ative -shu ttle -bran ches -mis ses -mained cm -ap ers -ky le -carri e -leis ure -sh et -bir ding -adv ances -ðŁĵ Ŀ -popu lar -di ane -a be -re war -neigh bour -k pop -remem brance -play ground -ru b -krish na -e bola -inqu iry -ep a -lu min -organ isation -abra ham -norm ally -pre ten -jan et -w t -ðŁĴ İ -encoura ging -a stic -bu mp -syd ney -s z -ss ss -gar rett -ðŁĵ » -consul ting -roman ia -spo tting -chanc ellor -ar ma -presti gious -ðĿ IJ -t ad -cry st -compe tit -rati o -cat aly -bro w -j ur -vi king -commu te -y day -la yers -du mb -esc al -genoci de -f ill -gu pta -ste pping -se i -fo to -wild cats -col i -projec t -ear nings -st r -ge ons -comple tion -b m -decor ated -craw ford -af ghan -sc are -visi bility -hi b -direc tion -stro ll -christ ina -alter nate -cl are -sty list -be hold -s ance -leop ard -acqui red -narr ative -ash i -the a -?? ?? -pe as -at ch -sli des -le en -renew able -eng lish -qu ir -co aster -r x -fo ols -match day -mis m -amaz ing -z ig -ke ting -won t -to wel -di ab -sta ke -n m -mel t -e than -gra pe -polit ician -sm en -í ĺ -re o -wedd ings -cat cher -or acle -me mo -ðŁĮ ´ -ec k -rob bie -norwe gian -oper ator -am or -se wing -ju l -x ie -u v -fif ty -me ga -tatt oo -liber als -u pri -traffic king -richard son -su v -ki p -mess y -tremend ous -gl ou -cour tney -la d -stere o -my ers -i dio -^_ ^ -man ning -dy e -w d -thr one -jun k -as u -provin cial -k ook -wr c -fine art -hamp shire -renais sance -b red -fall out -s j -sn l -al am -tor ture -fy i -sh ines -pa w -ch ar -hen ry -c row -aci ous -di an -pa ige -ba re -stock holm -scen ery -ðŁĩ · -jef frey -pu sh -decor ation -ne d -cu te -brig ade -laven der -inv ites -e sports -vo ir -dri ed -tran spl -sur geon -no vels -pul ls -son y -lun ar -man e -i vy -fru str -dor set -sa i -tor res -ssi on -shut down -suggesti ons -writ ing -e o -battle field -u ga -ðŁIJ ¾ -vac u -spl ac -g it -u g -high land -% ) -mer maid -sacram ento -ta ils -p w -ka h -t ell -enh anced -ì ķ -auck land -cru el -ðŁ¤ © -au dre -sail or -gram mar -g love -de on -infl am -fresh ly -k ell -zi p -christi e -mil d -di xon -instru ctor -g ence -ãħ ł -sub jec -constitu tional -crow ds -in visible -ru ins -da k -si p -pla que -p ouring -comple x -z ine -ste ad -f let -trans mission -lo way -ar un -incre asingly -au d -transp aren -cro wned -sc oun -blizz ard -lux u -fi ers -achieve ments -hun ters -rock ed -bas in -vio let -pro ves -achiev ing -pro sper -se ga -flo at -vi an -xi v -pol ic -tur a -approxim ately -wander lust -keep ers -geta way -co d -pol is -br yan -col ts -tal ents -yo gur -gluten free -wri st -gr y -cze ch -ðŁİ Ī -ev ille -ðŁı Ī -to x -dani els -am er -bi ds -weare one -me tab -g t -boy z -pd x -pos session -pu shed -shr ine -reali stic -tri gger -na vi -ru mors -n af -jen kins -tr un -comm uni -Ã Ĺ -gam ers -arm or -moham med -bal cony -y ah -stron gest -rhy thm -unfor gettable -k p -ho bb -custo dy -greg or -r ita -aes thetic -il ation -sponsor ing -n ay -kid napp -sh s -ra jas -me g -signific antly -butt ons -la c -ver sions -essenti als -opini ons -k ro -d printing -wi dely -d k -ur an -y al -reque sted -c n -cur ric -plu m -gr un -v m -dev on -m yo -rel ation -juvent us -rou ge -min ority -min es -jupit er -n ine -oxy gen -fran kie -une sco -fab ric -disgu sting -sal man -dete ction -lan ka -d ac -ðŁĩ« ðŁĩ· -argu ment -shel ves -cel tics -rober to -pi gs -he dge -fau l -pow ering -butter flies -fi r -re make -att i -com o -emp ha -kend all -poke mon -se ating -d ans -bald win -ðŁij » -lesli e -one direction -ti mber -im an -fon t -e der -di on -ste ph -for mat -gre gory -pro p -he x -ru in -sor y -inf er -n aw -bar ak -sd gs -kar ao -lu sh -v ander -end ent -g is -a fro -soc cer -ay an -t uni -lun g -da yof -alex a -mar ath -addic ted -ag ile -hy gi -light weight -ì § -mand ela -jo ey -anc y -hu m -bi r -memor ial -jim in -ging er -v ak -jav ascri -cro ps -orig ins -d ari -pi per -im port -aggre ssive -predic tion -re pairs -cr acker -voy age -ni ke -mu mmy -linke din -country side -bor der -gla ss -per t -s als -sho e -autograph ed -wal nut -colle gi -sal ary -pa iring -ðŁĮ ¸ -cath ol -swee the -defe ats -streng then -roof top -impro vements -barri ers -ur u -t ally -ru led -ðŁĨ ļ -nai ja -emo ji -per cent -gi o -pro bs -on ce -adm its -pa ths -li ar -day tona -pe ters -cal i -cal li -mu g -o sa -ap h -ab y -hy de -eth nic -pla ins -ol f -haha hahaha -holi c -?! ?! -su bli -bl acks -mo t -gh ton -lo vin -b rent -bar u -l ati -de w -ate au -q a -pain ful -bu sters -st atic -ðŁĩ¨ðŁĩ ¦ -note book -out fits -si es -r f -floo ds -Ñ Ģ -thro at -su ici -ro vers -beng al -pre pares -blo g -mini ature -Ø ¨ -am phi -com b -r sp -in timate -green e -Ì ĩ -al tar -surg ical -ves sel -... ? -gav in -g ator -threat ened -z ar -rob bery -di er -promo ted -y g -x s -su bs -inter viewing -threat ening -do zen -me ado -water fall -nintendo switch -cal um -mini sters -dro p -univers ities -war ned -tac tics -ðŁĩ ² -refu se -ad ju -v ast -ðŁĺ ´ -mc fc -lib ya -no filter -distribu ted -re ser -ron nie -de co -javascri pt -mon k -intere sts -fle x -mar tha -sti es -oo d -ðŁ¤£ ðŁ¤£ -e un -b ali -g omez -sti mul -moder ate -d ity -ir is -stra w -consist ent -direc tions -adop t -sal sa -cro o -reco vered -black friday -lan caster -accep t -weareone exo -buil ds -free man -air plane -diti on -bel ong -jam ie -pit ching -li f -om in -cri spy -pre pping -ve g -chan g -accompli shed -graci as -dolph in -elec tor -culin ary -super bowl -wal a -pur suit -black berry -be an -cardin al -pro ved -immigr ant -stric tly -holocau st -pass age -ha us -cou p -pur se -har ass -< < -le ed -ado be -st ad -legis lat -par ked -pri yan -sil va -kri st -s the -fun ky -ig a -sett lement -ph s -t mrw -stre ssed -hun t -ho ckey -treas ures -cham bers -ol u -hu t -mar ley -tex ture -wilder ness -mm ing -poten tially -om aha -ju dy -to es -spo iler -distingui shed -feli x -ah u -recommend ations -zom bies -hit ler -tri ple -colla pse -motiv ated -ulti mat -gg ling -so y -ci gar -fo ren -vine yard -gl itter -fin dings -colon ial -hun ter -eri k -den s -beet le -lot te -sub tle -s matter -tru sted -experim ental -nam ents -ðŁĺ Ĩ -regi on -acquis ition -bre eding -quarter back -am reading -oo td -ru de -initi atives -st out -hy ung -out come -al fred -mic s -exper tise -bacter ia -pengu ins -jump er -valen cia -bar k -ing day -sell ers -contrac ts -hou ston -commissi oned -adap tation -swan sea -santi ago -common wealth -ju dging -sub mission -sco rer -tom my -ñ o -ex quis -fil ing -explan ation -alli son -wemb ley -ri dge -chev y -san tos -own ership -cogn itive -favour ites -sh ed -phil anthro -dele ted -go dd -s nor -gui delines -ff ing -je ep -cli ps -sw amp -an or -guil d -bol ton -spring field -munici pal -goal keeper -ye on -ðŁĺįðŁĺį ðŁĺįðŁĺį -ãħĭ ãħĭ -water front -gra ve -contempor ary -ar ity -ÃŃ a -sle eps -sy rup -al am -pi re -co yo -moto gp -ty son -kej ri -cir cul -sing ly -cr unch -complic ated -nostal gia -k op -mo ve -k ale -mac ro -mid west -h ans -tri bal -nu de -௠į -bey once -congratul ate -cat er -leagu e -ðŁĻ Ĭ -la dder -cra shed -tech nic -karao ke -harass ment -ro ts -experi encing -kri sten -ðŁĩ ³ -ðŁ¤ Ĺ -reflec tions -guin ness -illustr ator -ðŁĻı ðŁı» -cen ter -nar row -comm ons -regul ations -Ù Ĩ -har m -cro ft -cu ssion -hong kong -st ical -intern ship -zo e -cho p -hoo ds -estim ated -batter ies -berke ley -smooth ie -shau n -cro s -~ ~ -cam pe -hu mp -b g -proto type -cl ick -shaw n -re viewed -tem pl -p f -jed i -blo gs -ray mond -as th -ba h -av ail -scot ch -leaf s -nik ki -to k -hol low -ur ges -of t -un like -lat in -u e -cat ering -mil i -alter nati -ma ver -Ð ¸ -ag le -pre order -lu x -cu cu -ðŁijı ðŁijı -t art -âĿ¤âĿ¤ âĿ¤ -arab ic -rapi dly -ar rang -all en -travel tuesday -pa ws -flo ws -st ability -flu id -ca pp -can berra -uu uu -sp ani -demon stration -m la -plac ement -m w -presi dents -awe som -bever ly -ani st -ne al -father sday -referen dum -la hore -o aks -deb bie -half way -gho sts -de bor -matthe ws -fi at -t fw -pre sen -rob i -de d -bro ck -laugh ed -am ounts -bam boo -kinder garten -eat en -mtv hottest -break out -u sic -fra ser -legis lative -p ang -modu le -sam my -go ver -ear ns -expe dition -gar h -concep ts -char lie -la va -bachel or -veg gies -deter mine -el lie -un locked -fru it -dal la -cou pe -wash ington -depo sit -iv ory -pau la -chic ag -gu cci -ðŁİ ĥ -cul tiv -pier ce -li fted -stu mb -re cover -musc les -conduc ting -cb s -mcla ren -sophi a -cel lu -oce ans -up loaded -game play -mal dives -kim ber -avo i -rac er -ca ine -cav s -h ana -li ga -ra ven -inter vention -inaugur ation -oo h -at traction -merchandi se -tune in -li king -juni ors -int ended -att acking -aqu arium -i wd -comp onents -sur ing -cent u -yogur t -ðŁı ĥ -show room -op tical -ty our -ju dge -yi eld -an to -pl c -transparen cy -recy cled -chi ef -ar om -ambassad ors -plan et -âĿĦ ï¸ı -om ed -vaness a -cour t -mar gar -hal ey -v r -reg ina -pd ates -hi span -live stream -âģ £ -ya hoo -gal la -secu red -w ir -bene ath -off l -n il -am b -ye g -out let -u te -pe ep -lind say -bent ley -... ! -he el -trilo gy -vo s -ty re -there fore -tor onto -ab i -simp li -ja e -exten sive -eleph ants -s or -orient ation -im peach -re play -constru cted -peter son -pa is -por ted -custom s -colla p -ad u -high lands -sal em -shel by -ko vic -stra in -ro sie -sen ators -snap s -bo bb -suz uki -bla des -k p -lo lo -gener ate -si ght -ma e -struc tural -predic t -jump ed -ah mad -sun g -just ice -gla m -vol vo -jubi lee -de tention -lo sses -pu ri -every time -Ð ° -ra o -ed ge -li mer -rese mb -har old -re tri -sacri fic -surpri ses -am c -srilan ka -bar bie -men s -fin n -ag s -ukrain ian -em brac -î IJ -flav ors -hom er -lau re -ou th -pr iced -ver de -fir m -ah s -cu b -tre y -par anor -pro fit -in dv -who a -har sh -al ot -crit ics -hu bby -fi gur -gi ra -ca stro -chan el -in put -origin als -ten ant -yy yy -ture rs -lincol n -co on -lear n -ch ou -ac are -o les -din er -hy p -bizar re -mc r -let sgo -decor ating -ðŁĮ İ -al ison -ar vin -f d -reha b -mccar thy -lot tery -da h -minne apolis -eli gible -diagno sed -emer ald -destin ations -s ans -or y -bla zers -n v -ba il -digital art -no c -mal ta -sol ar -pi pes -alleg ations -no ck -po pe -bri d -premi er -n x -present ations -ef a -bo ws -val ve -opp onent -Į ë -visu al -ing le -cate gor -e ter -po is -dan i -at tract -neu tral -th ene -cra shes -fred die -ut ili -c st -awak ening -slo ven -quali fy -pro of -fair y -le v -fre ight -enjo ys -cup cake -flav our -â ķ -protec tive -ðŁijı ðŁı» -is u -ad mir -h mmm -continu ous -ai res -rap tors -showcas ing -y uk -pa ste -follow er -instru ctions -sp ru -@ __ -the o -debu ts -ve tte -sto w -es of -ach ed -sul tan -sand wich -som alia -franc o -car ne -flu ffy -al pine -jas mine -he ated -viol in -ple ss -divor ce -per former -phi es -port sm -dar a -kir by -lo p -chill i -for th -sky pe -ðŁĩ®ðŁĩ ¹ -celebr ities -ed y -ve e -po ison -ey el -gra bs -ssi c -un o -wester n -rail road -am er -numer ous -s v -fo w -fi st -âĢ ĭ -reque sts -mar tial -em my -accept ance -lau ra -ภ´ -er up -hyun dai -out lander -u tt -wrest le -esp resso -demand ing -g dp -geo graphy -sas kat -tro ll -confe der -su es -se m -be ts -t ful -to sh -teach es -col oured -gal way -mac y -dis orders -bb cra -at em -fen der -lit ter -e sh -provi ders -renov ation -nomin ate -ps g -nomin ations -jen na -shar p -some day -z ur -bra ins -che shire -pre y -hu go - ¿ -to ken -r v -car r -tac tical -zel da -kay la -fern ando -photograph ers -j our -umb rella -woo dy -congress man -du mp -le vy -ju an -d azz -sign als -la in -an u -mic hel -por ch -al den -sibl ings -y ale -pe el -sw ick -gg in -ll c -k ale -s con -il d -pat reon -re el -qu in -wit t -mar ty -moo dy -ton i -der y -g ators -speci fically -dd in -ly on -tr ick -meado ws -p j -bor gh -vi k -tu r -bron x -pu ff -lan tern -ðŁ¤ ¦ -g ently -be stie -fac t -refu sed -fas ci -mp y -ðŁĶ µ -cross over -mead ow -indian apolis -duc ation -sle y -loo m -mix er -new music -film maker -prosper ity -li m -week end -cre amy -neu tr -lu ther -h v -nor thern -tw o -h ra -cat ches -appear ances -ha bit -kitt ens -n v -illa c -inf an -regar dless -liz ard -dun k -cur tain -ac om -in tu -ve z -e min -fl ats -calend ars -em power -ru ined -hun gary -vi d -we x -u lum -aber deen -o sa -k t -ma ssi -se emed -s den -' ? -tele phone -de fi -insp ires -me ow -z ones -bl ind -pl y -tuc son -advent ure -ge d -oy ster -ðŁijıðŁijı ðŁijı -out put -tt t -metal lic -sma sh -ucl a -sco ts -perfe ct -lu cy -regular ly -sp ic -rel ative -ath ers -mis e -batt ling -deci des -mat a -occu pied -random ly -cat softwitter -gi an -ball y -al ties -al lies -im men -sy rac -ðŁĴľ ðŁĴľ -l lan -au r -k ut -lam ar -affe cts -n ra -star war -ðŁ¤ ĺ -sc ram -en chan -pro cess -luxu rious -ar ray -sher lock -comp ati -dor f -stre ss -m su -s with -sal a -sof instagram -fo il -under stood -qu ay -r p -c ade -ja w -en ab -en coun -ðŁİī : -do ck -satur n -mu ll -lay out -ra rely -happ ily -fix ture -or ph -over looking -her bs -m itt -pil lar -nol an -pe tty -str y -u i -mu k -o res -o vers -á µ -re creation -we sley -ri t -kejri wal -sto cking -g v -subscri bers -moo se -ma e -ber t -opp re -assign ment -u ro -high lighting -cal vin -we igh -cambo dia -av on -ke m -dis abilities -read y -char gers -p ads -iz ing -illi an -tru ste -col leges -associ ates -alban y -mil ton -cr on -bu r -har dly -si ghts -anti ques -e cho -surpri singly -ha iti -cap t -ph p -op io -ine quality -equ al -ken y -sch mid -autograph s -ren t -qu er -cit rus -challeng ed -te c -epi de -fe st -z hou -li me -citizen ship -cry stal -convin ced -mess enger -copen hagen -âĿĹ ï¸ı -war ran -develop ments -ï¸ı âĥ£ -fore x -hi ro -sne akers -xi de -vi va -stere o -bat ting -ss el -ho st -beng al -critic ism -q c -cr un -attemp ted -ry e -determin ation -cre ations -d read -label s -pos se -anc er -joh an -si ster -partner ships -les bian -k st -guaran tee -bar o -fix ing -ma son -m ous -chem icals -t less -bio diversity -par o -bhar at -ac ol -refu ge -en te -t iti -dys sey -respon ds -lef to -in er -se vel -rahu l -ol ine -frank fur -cho reo -enjoy able -c to -strugg les -wood land -heavy weight -gen s -rece p -ac cred -ðŁĺ ¡ -trans formed -list en -at op -n k -sur ge -be re -gover nor -prison ers -clau de -t ill -mu lator -emo tion -water loo -star t -ðŁĩ º -clean ed -grand mother -fear less -afric an -astron omy -ðŁı ģ -à¸ Ļ -the world -su itable -anth ony -k and -tt en -meaning ful -disc lo -jaco bs -à ¸ -tom linson -ghe tti -ty pho -sub stan -as co -te k -nag ar -mu d -am on -vacc ine -f ty -fle sh -no el -infl ation -portu gue -glam our -tra m -v re -te qu -roun dup -w yn -rejec ted -mosa ic -si ghting -cal f -o ta -com position -go pro -gonz ale -e ed -b ard -tu e -effec tively -we en -al to -ri bs -rel ate -thir sty -fu rious -di m -ch ard -perfu me -s ny -chur chill -k of -master class -wa ve -ðŁĶ µ -er in -own s -to be -sk illed -te m -go f -en i -tor i -cra zy -l ick -resi stant -ici al -ag ar -! : -g ali -del aware -bl itz -koh li -pu ck -avail ability -hi malay -influ ential -cro chet -victor i -read ing -ho bby -vie t -j as -en gra -sk ul -ðŁĩ² ðŁĩ -educ ate -tech no -distric ts -blu es -se tt -seven th -lear ns -ee ee -apocaly pse -hang out -cru el -mu tu -bru h -hel en -she er -c tion -kle in -tex ans -ce real -sh ine -ne red -gra s -am bro -f ella -hin du -matthe w -li ma -mir anda -je wel -so ho -euro vision -neighb ours -chand ler -be sides -ðŁ¥ ° -ast ros -thu mbs -ren ault -ra ve -hi red -ðŁĸ ¤ -it ary -z or -bla zer -k ine -ea u -kat y -dc comics -pe c -ro dgers -water proof -kill ers -super int -pre serv -as so -brew ers -promo tional -sc am -villa ges -sket ches -ju icy -for life -au dit -so lo -fundam ental -len e -philipp ine -t end -conserv atives -sponsor ship -dd le -a ine -h tc -os i -hul k -w af -à¸ Ļ -evalu ation -ant ine -sle e -robert son -roo sevel -ag i -sophi stic -emplo yers -bubb les -ko wski -inter action -sh u -bou le -ic an -j are -han k -leg itim -k nicks -kar ma -recei ver -per ks -u h -sta ir -sun i -labor atory -gra ves -voc als -oo t -c ture -thri ve -tic o -ãĥ ³ -b w -carto ons -mcdon alds -dra w -y ung -pl er -li d -eth ical -groo ve -ent a -international womensday -pat ron -wor ries -ðŁİ ħ -ðŁij ĭ -ka therine -di az -tor i -bach chan -tru st -min eral -ic om -buil ders -bor n -col oring -lat te -ca se -revolu tion -tra der -ox id -chi pot -inst antly -sou thern -se hun -pro b -her nandez -lis bon -hu awe -p ong -me a -ro oney -wheel chair -ke en -be tt -cor in -regulat ory -di splac -ka ren -sch em -sun sets -wh ales -remin is -he p -hi de -mar cel -pand ora -do yle -th fc -ot to -no kia -trans gender -ko v -hawai ian -sha ve -so vere -exc er -nick i -pu g -st or -ro th -wee t -leg al -dig nity -po w -hom age -ðŁĩ³ ðŁĩ -s re -can on -la x -wo ah -quart z -ñ a -gree ting -flick r -nai robi -advoc ates -an c -vi i -eu gene -th ra -c re -el an -pen sion -th letics -ton i -re agan -x v -sto re -ben ch -har lem -todd ler -sent enced -âĻ¥ ï¸ı -glob ally -che aper -u f -ma m -nic o -ik u -tho u -ni st -dam i -th ala -rho des -sal e -bow ls -â Ī -las vegas -sanc tions -adm ire -mat ched -un able -travel er -ele ven -straw berries -âĢĶâĢĶ âĢĶâĢĶ -stu dio -jac ques -im s -valu ed -s no -cheese cake -n xt -e os -s x -f x -ton ic -hat ch -chic ks -gra ds -hand ic -r ory -as p -ri pped -denti st -n en -lu fc -âľ Ĭ -di ge -hop kins -sher man -f da -for all -ash ley -str and -h y -liqu or -buffe t -ess ence -phar ma -suri ya -ðŁĴĻ ðŁĴĻ -festi vals -z an -re fresh -pur ple -uni forms -kenne th -= ) -as an -hel sin -transform ers -k ali -person alized -chal k -bo bby -â Į -the mes -depar ture -prin t -illustr ations -qui et -agre es -gri ff -Ø ³ -m iti -toge ther -conven ience -ab ar -car lo -turt les -info sec -some what -ar lington -scholar ships -emir ates -mu ms -st ella -auton om -fe ather -g ore -nom inees -fragr ance -Ñ Ĥ -w ong -thea stern -gr e -z illa -is i -bump er -go o -do zens -ab duc -âļª ï¸ı -o ils -don ors -sil icon -i pod -fortn ite -ðŁĴ ¨ -tor o -spark ling -consci ousness -pal a -nu m -moun ted -ffin s -thi eves -team mate -pra b -om er -ta pes -bo d -mit su -ste w -e re -p bs -tu sc -lo we -ra de -parliam entary -h m -ed gar -ðŁijĩ ðŁijĩ -to a -a gh -hon i -s late -ge ek -ap t -hard t -ta p -horiz on -grow th -make over -hi l -paper back -id an -reha bil -gi u -possi bilities -let tu -fran co -bo ss -ach er -does nt -mo e -ta ker -huss ain -ml k -di l -th ia -ham a -real ised -raven s -curric ulum -m ith -k night -ted x -r v -isai ah -cumb ria -birth days -f ing -pre z -mu barak -exquis ite -clear ance -y en -par i -ev o -à º -modi fied -app lying -imple ment -disco vering -chap man -indie game -dis k -crowd funding -mach in -li vel -sty led -âĿ Į -ma king -rehear sals -nutr iti -subscri ption -and ro -cre ators -car ries -ky lie -cam den -appren tice -tax pay -c ca -tuesday thoughts -pis sed -er man -dete c -freed om -mer i -.. ! -psal m -sun light -per spec -be ings -book store -rock star -fun ctions -p ence -fav es -z n -obam acare -sp ill -coven try -pi geon -pi vo -ba it -kol kata -av al -don or -wa h -privi leg -tra ditions -rajas than -ten ess -portugue se -yn es -tack les -de fic -tor n -pol ling -thor ne -in a -bened ict -bar ry -cal ories -ver dict -save the -nor ton -off ice -main stream -impro ves -fr on -respon ding -real tor -scotti sh -de clar -r l -shi v -supp lier -re sting -swee ts -qu i -. â̦ -whit ney -startu p -thank you -teach er -h alls -ha ve -hand made -pro ving -quar tet -ro chester -li an -virtu al -mend es -of icial -mid lands -x box -meas uring -o vo -accommod ation -bri des -collegi ate -intellec tual -in car -ni ag -ðŁį · -sf w -coco a -co ats -civil ians -presi dency -mat rix -sweethe art -tri athlon -wag ner -ra dic -plann er -the o -execu tion -k um -the walkingdead -sc ar -ro tation -blo gging -bom b -re son -bb les -st are -assi sted -e do -brand ed -war nings -thor pe -acknow le -satis fied -sho res -ri d -dor a -phys ically -bi gh -appro ves -ha h -ric al -vers atile -pret end -lu m -ab hi -ye e -sp it -ãĢ Į -dj s -ash tra -j t -ven ues -gram mys -cy clo -tr acker -over watch -repl ica -el yn -nr l -lind sey -hom o -ballo ons -kitch en -si s -am os -ende av -ðŁĴ » -a rec -thu g -hoo ked -hr c -new york -bur gh -americ as -patric ia -ug u -ap athy -ha st -psy chi -cor k -petro l -ðŁİ ¬ -ak u -po pping -psycho logical -au x -g ma -cad illac -wa ste -auth ent -bri stol -nam e -que er -to ber -jer ry -com in -ch ant -privileg ed -op ar -lo ser -tex t -mar ker -stri es -equ ally -ak i -christ mas -gare th -ble w -em ma -imag in -se als -che at -conditi oning -j ana -ren s -dar ies -o asis -disc ounts -coun cil -i ka -shir ley -vou cher -al ps -w x -q r -dri ft -attemp ting -ut c -Ø ª -gonzale z -m f -jo ker -paralle l -pa re -aspe cts -proce du -n p -am a -rale igh -bright en -gu ire -radi ation -cre scent -ho b -il le -str and -v ore -n ard -che st -di wali -av atar -al der -d ling -pa thetic -ðŁĴ ĺ -spir it -jor ge -film making -ðŁĻı ðŁĻı -challeng er -b j -down town -ht ml -ade qu -twi sted -in ely -( ' -wra ps -oper ational -y ne -n us -mag net -market place -health ier -snap shot -dam on -inter ven -fe derer -ow ls -biscu its -j p -ro deo -blue berry -lec tion -fron tier -summ ers -re yes -pede strian -go l -caf fe -refur bi -bou lder -me ghan -speci alty -la ss -e i -suspec ts -appro x -rr r -ra th -st im -cru shed -he d -wh un -lo af -cr ore -river a -gene tics -so ck -wa sted -ny pd -answ ering -do ve -bel la -ol in -du n -fi ji -pre tty -spar kle -y un -j d -euro pa -li fts -am ber -mu r -te k -boy d -roy alty -in do -ri b -go tham -ti est -inst alling -ke mp -the photo -cos mic -) )) -whole sale -loy ment -eas y -su ing -sett led -af p -pro ver -suppor tive -re es -ne ath -deli ber -c é -wel come -pic oftheday -new born -pat ty -sun s -si est -fl int -diffe rently -spo ilers -troop er -g ins -cor y -look out -equi pped -ta pe -to by -resear cher -u sh -ke yes -al ma -induc tion -k w -k har -sl ick -bri de -e ur -cra ving -book ings -ch es -tr unk -vern on -sp her -cryst als -rel atively -pom pe -uni ons -val ley -par a -w ant -ok c -de af -ser gio -len non -sh ay -cr a -v at -he e -t we -liqu id -pol y -ðŁİ ģ -b ent -be aring -motor sport -bar be -te sti -han i -fin ancing -astron aut -water colour -ri sh -comic con -gar t -wr ong -ber n -it an -ste pped -fil ters -c low -me x -dem ons -all o -expand ed -comm and -et ers -go ats -si ri -y r -pot tery -mari on -i le -el an -san to -person a -du ke -hom eless -li ghted -wheel er -chang er -cab bage -sur real -ham burg -sma shed -str an -k not -i art -ob i -be dro -di al -th ick -b ingo -fu s -vacu um -con ve -ati ve -accur acy -accoun t -re fer -ri z -spider man -ban a -r ite -u b -ab s -medic al -lin k -si em -> >>> -be tra -g lowing -re actions -pupp et -spa ghetti -ang s -re medi -pray for -roy ce -char lotte -£ ï¸ı -gh et -affe cting -ro de -soci alist -mo ses -az i -o it -re porters -cd t -ap ing -s nat -minim al -wa ist -sie ge ->> >> -ri g -schmid t -h are -ec a -thor n -he mp -es the -cly de -th a -don ut -moham ed -ling erie -le gg -carpen ter -perform ers -de a -imag ined -cur se -la sh -ct r -agu a -ro ar -gr i -ro le -j fk -resur rec -roosevel t -maril yn -sm alle -will is -wa ited -char ities -the res -li k -origin al -car i -c ough -cru ci -la gun -contra st -k ou -arm our -re moving -t ent -maz da -bri ghter -thi ef -cor ner -tequ ila -buzz ing -al bi -p am -az ure -disc oun -pixel art -possi bility -ham ont -tra des -bu da -hi ve -vers y -fin ch -tran spa -em i -terri fying -in qui -g ba -sub stitu -collec ti -plac ing -cin dy -k ann -pa tho -diamon d -mour inho -guine a -anthro po -air s -pu mps -ì ļ -pas o -cur ling -an ita -resi dency -ne wh -jo on -cigare tte -que ue -ex trac -gam es -spl en -ex press -public ly -bon nie -tribun e -ba ek -reason able -c or -timo thy -she eran -Ä ± -f dn -su tton -concentr ation -carav an -x avier -al ger -cy lin -freder ick -ner ve -pe ak -lettu ce -j ail -pre game -kav an -up graded -eco logy -squad ron -gra pes -goo g -pa stry -ðŁĹ £ -ãĥ¼ ãĥ -mil ano -awa z -presen ter -ðŁĮ ¿ -her d -king s -tem plate -fl our -h v -k ley -i ya -spe c -at er -frankfur t -co ch -tex ting -del i -communi st -regi ment -ele anor -anticip ated -ðŁijĮ ðŁı» -thephoto hour -ran o -survi ving -simul ation -daw son -ar in -aqu a -m or -â̦ . -cin o -ira qi -sh az -dun dee -we s -dra u -hann ah -s news -occup ation -ste en -x m -ang les -sett ings -gur u -kno x -or ca -shap ing -w ent -dr illing -zz ie -br i -kis sing -fin d -ma ine -âŃIJï¸ı âŃIJï¸ı -ðŁĮ į -lar ry -bu sted -ta vern -acti vely -- " -replac ing -no d -un lock -. " -âŀ ¤ -affili ate -to w -l n -happy newyear -di f -j m -green wich -contro versy -daw g -con dol -sav annah -compens ation -touch down -te o -amb itious -embro i -convic ted -iart g -bar ack -tr ance -testim ony -au dition -thum b -my ths -be x -que z -orch id -den y -entit led -hoo d -gr ant -in box -blue jays -r illa -smalle st -bur den -in famous -divi ded -boun daries -t ter -el t -wy oming -be verage -me sm -one ws -budd hist -y ana -as sad -is ms -bar rett -predic ted -back to -tw it -e there -cap tains -escap ed -ay o -lam borgh -gard ner -la ps -k al -adverti sement -insec ts -na po -am en -ac y -r and -g k -te h -k athle -tri dge -pan cake -at ro -pyram id -bu la -paral ym -gau ge -en cies -tom y -biscu it -but cher -quali fier -coun ty -ke i -po ols -dar ker -should ers -ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸ -sp re -( " -writ ers -g m -ðŁİ ĵ -k nit -hu ff -mt b -philli es -o st -den is -g art -licen sed -inter face -ex cel -d well -from the -co fficial -az zi -appear ing -fore st -n ana -ke ith -manufac turers -beck ham -) ? -e se -col ony -delic ate -ut ter -mc in -transpl ant -pre ferred -par d -ari e -hu b -po ds -perspec tives -pic t -del u -app er -be than -p mo -crimin als -femin ism -sh ack -circum stances -fel las -prote sting -wa x -sugge sted -t ator -dre w -om ni -fa ke -kath y -re b -del ine -ber ni -mi sty -ðŁij © -er able -break through -men swear -millenni als -chan yeol -la z -inser t -rep lies -phra se -n x -ihear tawards -audre y -gran ite -rac ec -ori e -ter ra -innov ations -britt any -at eral -pe ar -bio logical -sh ments -institu tion -m sn -frequ ency -d man -neg lec -t f -ste fan -fox news -ty po -comm s -sequ ence -car men -wh ites -econom ist -exe ter -se um -re sorts -cas ually -bun de -divi de -Ø ¹ -ga g -cre ed -reti re -cau cus -rapi ds -wrestle mania -tul sa -sunder land -fundam ent -o di -yam aha -v ary -intri gu -el se -be acon -an gie -tra ded -tran sm -g ents -kn itting -gal ac -ðĿ Ĺ -u to -sea side -hol t -re rs -far go -train ers -mon soon -b ale -sou ght -mad die -h w -co li -fr an -fav s -ðŁĴ Ķ -int ent -r ally -s bs -lemon ade -barack obama -bre ad -stick y -explo sive -chel ten -t j -as soc -ram en -hom ies -v log -mi ster -lor d -âĢįâĻ Ģï¸ı -aly ssa -sketch book -ru mble -cat ch -migr ant -discipl ine -un likely -chronic les -fl ora -sl ams -am id -s boro -coo p -ju mps -tran qu -mel is -sof ia -en ri -gab e -sy ri -nicol as -cha i -w v -be cky -foo ty -ta o -suppo se -ðŁĺįðŁĺį ðŁĺįðŁĺį -plu sh -ri sh -ðŁ¤ ĵ -k ha -satur days -ac cent -he c -lim it -carl ton -wi red -taylor swift -ðŁĺ ij -sq l -har ro -recipi ents -g at -go p -th of -amaz ed -gh an -ðŁıĨ ðŁıĨ -por to -cla re -di stant -na c -ohi o -ðŁĻı ðŁı¼ -mt n -anti bio -dino sa -me sa -par tial -b v -lear nt -lov ato -questi on -ex tract -gossi p -gi bb -niag ara -ðŁij ¨ -displa yed -so oner -ste vie -nug gets -ml n -bro m -tur b -give aways -stu pi -bl ink -c ili -conven ient -mo h -vi ve -f ric -cau se -cham ber -cu les -ne arest -is se -small biz -t j -canadi ans -smar ter -bra sil -ra re -que tte -w ha -cand le -at omic -ðŁijį ðŁijį -warri or -relax ed -stri ps -ne ur -k ka -r fc -jen sen -reco vering -respon ses -sal am -ortho dox -acti ve -ell ers -n it -âŃ IJ -metro politan -centu ries -vi da -gra ding -transpa rent -sim ple -do ts -superint endent -elev ator -autom ated -red skins -ima m -summer time -jona than -ge aring -michel le -confl ic -m ice -to te -publi sh -pa x -) - -na iled -á ´ -tele scope -ser bia -ba b -ape u -st ically -sen ti -r ats -isol ated -grou p -hat red -paranor mal -stan ley -ali on -safe ty -l s -ठ° -nex us -alexand ra -mas ks -+ + -tr on -au k -brother hood -brow se -mix es -sim one -mu sk -appro ve -lo la -ex p -per th -fu turi -un seen -d m -chel se -sc outing -o we -portsm outh -k ram -mi ze -di spen -su p -d lc -adver t -tere sa -is le -cy cle -met all -shi elds -marin ers -ra z -ing en -fun d -an go -jon es -o ka -mad den -broc coli -domin ic -situ ations -mer o -cric ke -puni shment -d b -sha king -ðŁĺ ļ -m q -ari ans -le h -cla w -we ds -d ure -ni el -j elly -gour met -tra ders -le vi -w ages -kne es -wi se -heaven ly -avi d -melo dy -z ack -ban anas -apprentic e -pro p -fun ny -o de -respec ted -me gan -fe wer -dra fted -med it -gra pe -us army -cru sad -vo cali -prepar ations -non sense -us age -th r -ro th -wiz ards -insi de -promo tions -mon a -red sox -si g -eleg ance -ch ia -univer sal -ãĢ į -ra ja -un ga -pol lin -filip ino -ak a -t sun -ik on -bi king -decor ations -z ac -cade ts -hum our -ag m -re ppin -vac cin -elo ve -u w -dia be -galla gher -az er -do l -a while -pro minent -wel sh -t ann -' ) -bi en -wa g -in al -c wc -wic ket -ur st -q anon -x e -out door -dun n -star r -co logy -ric ky -u efa -reb ounds -s music -inf ant -ðŁĻ ĭ -so p -u mber -hand ing -beg in -sor ting -ha sh -sp ati -re k -buda pest -black hawks -dele te -ro m -can did -auth ori -de bris -spe cul -inter section -marri ott -im ran -ðŁĺģ ðŁĺģ -cru ises -ram sey -rafa el -aware ness -vas cular -beyon cé -ru g -ðŁĺ Į -festi v -ar am -s able -bas il -p ill -flo oring -un beaten -implic ations -u f -w ound -for ge -poin ting -po ts -popular ity -ðŁijı ðŁı» -mani pul -s lots -deb ates -abs ence -ver mont -never forget -wri st -gl oria -ren ce -hu sk -mel ting -ðŁİ Ł -br aces -tim ely -transform ing -am ps -ma k -po e -ah an -gener ally -nd p -ale ppo -unic ef -pro fs -nor d -ma sk -jackson ville -v v -sh ells -bloom ing -oper ators -char coal -ne ville -ma gi -chi p -sam a -ir an -re forms -accu mul -ru e -æ ľ -web sites -ga on -devast ating -sto s -glaci er -ra pp -chipot le -pr a -or ous -rom ney -seas on -decor ative -c isco -dit ch -compla in -ll o -assu me -ðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ -n els -cent ric -ft w -car rots -tat a -can ter -per ience -li ers -demo s -bl unt -oper ate -reserv ations -le ah -sub stance -di son -an te -elec tion -v ue -squ are -non profit -ca a -f su -y am -ãĤ ¤ -v ladi -comple tes -mar i -philli p -ne ill -er as -ka it -men do -mahar ashtra -g p -dan e -provi dence -ther apeu -juven ile -me mo -in corpor -aa aa -seven teen -teen ager -à £ -or ns -wi de -cu teness -tw d -ff les -bar a -com edy -over time -y az -bar on -unemp loyment -ðŁij ĭ -exter ior -den se -cent res -match up -history month -artif icial -qu it -e sk -war n -cr itic -j af -ðŁĵ ² -inform ative -fu els -recy cle -nam ing -stri pe -sol ic -mole cular -dee pi -con vo -s sel -na e -de scent -ti z -accoun tability -ter ry -r ito -sl ay -em o -dem ol -sens ation -co v -tor e -round table -y ol -excu ses -ॠį -tur quo -hh hh -pod casts -cele b -me ssi -li o -man n -contribu ted -u z -gener ator -ele ts -veg gie -indu l -en suring -detro it -pun jab -tran spor -instru ction -ad d -por cel -pan eli -cir cles -persi st -clay ton -sp n -dog softwitter -is nt -sp r -retail ers -p w -hun gar -el ena -mon aster -gu atem -je ssie -an z -ra shi -fle e -car ving -fau x -l al -hen ri -d jo -du ll -s ana -lar a -glo be -cri mson -com pass -pau se -na b -lion el -ba ths -u fo -invent ory -sin gh -sat an -ðŁĩ ¸ -ce ments -in form -gener ated -bi den -av g -tas ks -de er -sa u -ja iled -pa stel -sc c -na il -steel e -per is -lamborgh ini -pur sue -mar gin -u ch -bo sch -dra in -cl ara -bo m -lat ino -web ster -rose mary -r ha -s oun -billion aire -not ch -percent age -con or -' " -hom es -earth day -h ort -big gest -di sin -wal ton -edit ors -im ma -om ar -equi valent -pharmac eu -ah med -cam eo -han ni -under rated -ge ment -micro bi -v oo -honor able -obe sity -âļ ¡ï¸ı -limer ick -invol vement -st agram -boule vard -bur g -blackand white -liber ation -fi ve -inter im -sm m -rival ry -cap abilities -stat ements -thu mb -ve d -sw ans -bar ber -e que -seren a -hel m -noo dle -sam pling -n awaz -sing le -thunder storms -sh on -in ev -ë ¯ -to pp -orch ard -bi an -ðŁĺ Ķ -door step -salv ation -marke ting -r ons -cle mson -ra vi -in take -stand with -sin a -ha iku -ple y -elector al -ph illy -la ys -electr ic -cap turing -u pp -er gy -believ ing -cul tures -es day -inva sive -ed ed -spee ch -end ur -viet nam -boy cott -pe de -deli ver -ðŁĴĸ ðŁĴĸ -mer chant -st ir -den ies -poc kets -o ti -cu ddle -ro land -mm ed -den ed -lear ners -hoo p -sour cing -h acked -di m -environ ments -ben son -jud icial -wor cester -pear ls -govern ments -arri vals -cor ners -tun ing -la bour -y m -or dering -le wi -i fe -hygi ene -thou ghtful -indone sian -campaig ning -princi ple -assau l -ru bb -at v -wil ly -en tre -il i -ph on -du ties -âĻ¥ âĻ¥ -sn akes -lo op -am ar -conver tible -bon ding -ment oring -max well -ethere um -destro ying -ax is -ca iro -fin nish -sho ck -ðŁĺ IJ -cal eb -com a -pe dal -co re -contin ent -el son -temp o -helsin ki -ac p -tack ling -st ated -bl a -dou b -sma shing -a ja -camer on -disru ption -warm th -being salmankhan -bullet in -o de -syrac use -ar an -mc gregor -bul k -an ton -confir mation -sp ine -im ran -instru c -jac ks -chi o -pal m -str e -embarra ssing -un t -elimin ate -to ss -c ise -a ws -oni sts -sh inee -jo s -ho se -li vely -opp onents -mo vements -recogni zing -sandwich es -sh akes -exerc ises -se at -profe ssion -merry christmas -lu gg -adopt dont -mar vin -byr ne -un le -he t -ku wait -rah man -aspe ct -humb led -gen es -f and -long time -) ; -cam pu -an gus -ðŁijį ðŁı¼ -q uran -sle eves -s lic -¸ ë -twel ve -your e -i ke -go gh -b st -dic tionary -reflec ting -to on -yar n -em bed -ðŁı ´ -re serves -floo ded -ver iz -du sk -estab lish -pro li -au d -ritu al -or bit -declar ation -recor dings -cam o -cas sette -good luck -cu tter -bo p -b ho -che ating -paci fic -ma res -tim er -col t -tr ous -tomor row -han sen -ci e -w ang -ban i -circu lar -ac ute -far mer -co ys -p se -ir ving -w j -haw kins -b ison -ur day -cru ising -o te -k ath -whi stle -your selves -ant is -sla sh -thorough ly -ke sh -ser ie -ex em -en ig -guil d -sh red -ho gan -ap o -ä ¸ -pu zz -ne tball -au ssi -panor ama -ws j -av is -ar ming -hum ph -brow ser -cri es -fo ggy -mat te -ðŁĮ » -it er -tal lest -by ron -cap tiv -je su -any ways -flag ship -p ton -we y -fay ette -financi al -f oul -solom on -jenni fer -cucu mber -ar gue -tex tile -wrest ler -john ston -pa stor -ðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ -cac tus -edi ble -re served -ric hie -met res -ingredi ent -h ella -un to -ch ol -cele bs -po ets -gra ham -hay den -coinci dence -b aw -communic ate -flet cher -/ - -tole do -ecu ador -coun sel -s laughter -line ar -at p -os u -jo el -ev ed -conqu er -ru stic -plic ity -recogn ise -room mate -cr acked -jas per -ph er -ðŁĮ º -wo ven -mo ist -ff c -ste ering -ni sh -stand ings -frequ ent -ar di -haz el -as msg -bau m -d art -si dd -nat h -ch ero -card board -c ss -n sfw -pa ir -ðŁĺį ðŁĺĺ -occur red -homeless ness -mal one -ph e -xi a -pad dy -decl are -theat re -b f -per sian -ta d -ax e -susp icious -lam b -mu cho -sen ior -st as -k ite -st ing -gra d -k af -wat ering -Ø ¯ -spi ral -th ms -educ ator -jer ome -of c -clo ck -su l -pe mb -.... ..... -park way -de aux -restric tions -m ons -need le -e j -le agues -water melon -am an -pl enary -max im -w ab -coming soon -bry ce -vi gil -super market -fortun ate -turquo ise -presi dent -li v -inter ns -feel in -fix tures -stun t -st aged -premi eres -lo k -prac titi -shor tage -log ne -ve c -con cor -roc ke -li g -com posed -syn thetic -di p -cam ila -ch is -j ou -su san -eye brows -supp lement -satis faction -moham mad -ti bet -house of -pu n -as sam -shado whun -psy ched -se duc -mand atory -her bert -sc allo -stream ers -proto col -block buster -produc es -sch nei -lau rel -tri be -time hop -pl a -mod elling -tv time -mtv stars -wi dow -me tric -ch am -con do -flow ering -ale c -d ms -inten sity - ¨ -mccar tney -islam abad -k b -f fi -ph al -anal og -f ond -h acks -positi vity -treat y -sub marine -conne ct -sel en -categor ies -cu b -organi ze -si k -quote oftheday -remin ding -am or -loc king -ðŁijı ðŁı¼ -comp ound -et te -b out -rec ur -fe rence -mi zz -tren d -hip ster -for tress -forth coming -preli min -o dyssey -ang p -del ici -even ings -ðŁĶ ¹ -i q -d w -da ir -kathr yn -christian ity -moon light -ha b -wh oo -f bf -se th -genu inely -pa x -char ity -deplo yed -b nb -bu cs -ju dg -con ge -plant ation -im press -car a -sc lub -sco py -land ers -compla ints -b ama -re build -x y -real ism -sh our -le in -brac elets -mer a -assas sin -an chor -ðŁijĮ ðŁı¼ -lin en -con fron -chronic le -comm ent -cat alog -il les -gor ge -me try -jung kook -love my -sent in -se em -fit ness -alli ed -ts man -digital transformation -pr an -lo ft -min ton -alden richards -en vel -cher ish -certain ty -zz z -rhin o -per kins -en rich -cape town -ome ter -sec tions -ske leton -def enders -ðŁĺ Ŀ -pen c -bri t -ja h -capital ism -ðŁ¥ ĩ -baz aar -re me -ex t -kk k -conver t -stor my -b ye -kar an -chry sler -ad os -pre ssed -syn c -ation day -dang er -bad ges -refu ses -em powering -ly m -ex ports -adoptdont shop -ðŁĩ ¯ -th c -awa ited -focu ses -fin ed -o at -haha hah -âģ © -n family -fi ona -luck ily -thr illing -ty ping -out break -di es -he u -craw l -ne sses -o ath -scri pts -gee ks -ðŁIJ Ŀ -p b -mathemat ics -al is -________ ________ -gymna stics -acti vism -recommend ation -gre n -wa in -cour ty -n apol -cau li -hor nets -g als -jo ckey -dir ty -at ar -enor mous -pe st -greg ation -an os -ii ii -def ends -black historymonth -at x -mb c -lugg age -wit ch -co b -la sts -cu m -gg g -ba thing -n ar -ce bu -ðŁį ĥ -navig ation -min e -re jo -ðŁİ Ģ -gif tide -re ta -use less -pu ll -defic it -al lu -ati me -it v -tr illion -pu e -ac ies -proce dure -l ori -jen ny -c ad -ul ously -dr ac -promo tes -ing the -can u -woo hoo -na omi -zar dari -ts u -be ir -sd g -le ver -we ber -ab ud -lun d -crow ded -deplo yment -ter rain -ken ny -ho f -witne ssed -lo ch -j k -bul ly -w ren -poe try -do ff -ww i -mo red -din i -cul ture -promp t - ¥ -maur ice -to pps -r m -cor respon -ab out -jewel s -gi br -eag le -ðŁĺĺ ðŁĺĺðŁĺĺ -l ending -sou ven -ç Ķ -contemporary art -establi shment -j ong -â̦ " -gat or -patri otic -mc coy -v ape -human e -feli z -coach ella -re posting -ste als -fu ller -n ering -at ra -( - -bla ke -he ather -wor ms -discipl inary -rede mption -y ard -am in -" @_ -d nc -t ds -k appa -ne wark -comm its -spe ars -j ams -t and -msn bc -inter medi -aim ed -at ic -teen th -observ ation -kash mir -kavan augh -ou l -san francisco -re u -bel ated -cho w -pass word -st ills -deta ined -sar i -day ton -dar ren -itali an -ar th -amu sic -ar bit -w m -v m -he m -dou g -my r -a sho -pre v -vin d -bra h -sta g -ภµ -pre views -gu k -con taining -leon ardo -sad dle -ru shing -st av -lon gh -gam bling -ve gas -reserv ation -end ale -bal a -fl a -vari ant -he dge -bulgar ia -nat ali -we aver -sol st -encoura ged -ap c -as parag -ne st -cycli sts -fe l -ìĬ ¤ -overwhel ming -pey ton -j it -a post -mb le -ble eding -neighbour hood -a very -expre ssions -mac donald -gi gs -mon ds -illu sion -n ct -cam ero -over head -my th -ol y -vi o -et v -lau rie -unve iling -pri or -con n -iron man -di ff -day in -crit ici -con go -re vision -wal e -direc tor -p ines -black pink -gar ner -cur ated -manit oba -h ac -common ly -bar ton -.... # -mor tality -live smatter -philos op -shor ter -con vince -fre ak -vend ors -insi ghtful -el ly -sens ors -e led -s berg -weight loss -u kip -sp ur -priv ate -qu a -ss c -, ... -supervis or -advis er -amaz ingly -less er -at es -mah on -oooo oo -sar as -pmo india -waff le -un ders -toler ance -sculp tures -her sh -kno cking -smo ke -cathol ic -gri m -tra veled -fli p -ge off -dinosa urs -sle pt -scar let -ok i -compla int -ob sc -nam i -la g -cross fit -u fc -mc cain -refe ree -sad ness -pen ny -li eu -mo de -ki er -vol s -w is -el on -she a -ba o -son ia -cla ire -em manuel -moist ure -di gest -vi ii -t eller -ch on -access ory -night club -foss il -aw an -hu sky -ab original -brand on -ffici ent -cou gars -ste d -ad mitted -igno red -content marketing -ag as -v ase -execu ted -negoti ations -she ad -n and -tab lets -go th -ts al -d fw -on ep -protec tor -sp ho -gaz ette -andre as -ss er -comp ilation -ha v -contain ers -bro ker -soc al -porcel ain -hy uk -air ing -ðŁĴ ° -publi sher -scen ario -spart ans -re viewing -itu des -ed el -pear son -ba sh -mau i -a ad -ðŁĮ Ĭ -li u -ul ate -program mes -fav our -web design -real ty -motiv ational -cro sses -' ... -bus ch -adjust able -ar jun -mist ak -dimen sion -pi stol -weigh s -en y -unve il -indy car -gor don -f ade -fran ken -qual ities -bet t -loc ate -ker r -sp c -confu sion -ne e -luck y -bas es -dep ends -fire fighter -ol a -re t -mar oon -ðŁĶ Ĭ -w am -defin ing -whe at -bi l -é s -b hai -psy ch -ta u -ic ans -thi k -ob ile -inspec tor -ìĨ Įë -ill on -go s -ev angel -fa i -si st -voc ation -bur ge -chi stan -renew ed -enthusi asm -en ting -ag ri -ike a -m sc -aero space -sens iti -memo ir -hosp ice -co caine -der ry -mechan ics -Ħ ภ-tin o -reduc es -collec tors -in justice -supp re -v ana -ab un -nap a -su sa -os lo -e ff -en core -lic ence -ched dar -z al -moun t -ðŁĴ IJ -threat ens -!! " -archi e -fu tsal -scu ba -jo s -gn on -se xi -s official -compar ing -domin ant -tof theday -fa it -propos als -gi ft -y as -cn c -l r -ha b -reser voir -beli efs -gener al -mar ti -t d -est e -ì ł -wi l -ðŁij ¯ -ðŁĶ « -sp x -et work -excer pt -e instein -hir o -sil hou -team ed -per ception -corri dor -mental health -hin ts -ben ny -induc ted -sw x -wi desp -spe ak -cher yl -dru g -ðŁĺ ķ -h f -asparag us -myster ies -fitz gerald -off er -therap ist -care er -dam aging -ts d -per u -wei bo -y ay -phoeni x -disc re -mac book -bar ker -stig ma -sp read -roc kies -kang ar -bri dg -pa i -bi shop -ta iled -capsu le -ðŁĴ ĵ -ge of -roy ale -short listed -o ste -ash amed -ch app -key e -cl a -screen shot -austri an -nati ve -en ight -juli et -michel e -ðŁĮ ´ -travel ers -pi l -football er -win chester -ðŁĻ Ħ -azer bai -gold eng -organis ations -interpre tation -predat or -ofthe week -lo gan -pok é -mari e -cal la -t nt -cin de -ge tic -fit fam -gra v -ow ens -ðŁĮ ± -shoot out -sal is -commissi ons -co he -p tic -ni xon -hi a -amb ition -mar ine -cruel ty -t k -cru de -sal ty -jim a -mon go -ir ony -on wards -arre sts -strang ers -ig er -cycli st -ra g -exten ds -tra dio -bour g -mo i -el la -e able -lex us -au l -der a -histor ian -mor ton -ti ff -man ner -ko t -d k -po inted -mar qu -a an -en ey -du blin -on poli -em ili -secre t -fl o -âļ ¡ -ba j -ste ep -accompan ied -rum ours -dev i -purch asing -fi g -pu b -sch oo -autonom ous -go alie -x ia -autom atically -re vers -ter o -fu ku -titan ic -shoo k -sand als -see kers -exc av -nor dic -bigo live -ba ke -r att -z ak -ne p -ðŁĺ ¤ -cand y -billi ons -book worm -pp et -à ³ -sur faces -sc ars -phil ip -do gg -ci gars -co te -transl ated -cur ator -sin dh -han gover -bre wer -on es -el ton -ðŁĴª ðŁı¼ -mar cu -elli ot -righ te -di oce -ru ss -rail ways -grand son -as cen -apo logy -awa it -mob ili -re spir -parti san -oli vi -stri ke -yo o -white house -expre ssed -pu ps -bed ford -cul tur -fro gs -fly ing -cav ali -c ds -fri ger -street photography -re solve -tali ban -kan g -cru shing -ju m -ðŁĺ Ĵ -william son -tan g -cur ly -t man -veter an -fa ire -artificial intelligence -un anim -pre n -back drop -fr ances -oc cer -doro thy -work ing -ar thr -conver ted -day light -serv ant -pad dle -compla ining -thir ty -nad al -ak u -ibra him -ad dressed -p iss -green house -batt alion -si mulator -out lets -embroi dery -ðŁĵ ± -fis cal -ger ard -sas sy -ðŁİī ðŁİīðŁİī -vent ures -mer it -public ity -ðŁij Ī -sophistic ated -c tu -conven tional -condol ences -isra el -tra dition -ar an -te ss -gla d -ðŁĺĬ ðŁĺĬ -correc tion -ge on -am d -or ship -be ast -ch ment -ì ŀ -nic o -wk nd -wel s -cushi on -beli e -vo c -idio ts -under neath -pu ma -corn ell -en ation -lu l -swa ch -ab ig -u rer -mi e -form erly -ca f -er nal -chor us -juli us -sen ator -âľ į -wh ir -salv ador -ph d -uni fied -boo ster -graph ical -w rec -son ny -mi z -dere rs -s all -ven s -tusc any -wi d -y ong -kur ds -w az -trol ls -mac ro -cat urday -pre ssing -sa sha -cent ennial -gu sts -em c -be fore -den ise -cu st -ðŁĵ ¢ -lo oo -base l -eng land -y olo -ar du -manife sto -do ha -ì ľ -kni ves -bourne mouth -bi bl -bar b -al icia -Ø © -com er -cycl one -g it -ane ws -character i -vent ura -in tra -sf giants -hu t -be a -dar win -ell er -al v -re ese -bl y -kar an -conclu sion -man ny -fla kes -unite blue -nad u -co pp -ed ges -lanca shire -i als -o tta -philipp e -l ent -che e -ment ors -festi val -an ism -compli mentary -r j -pu g -d ine -we i -cli ffs -sar my -ti veness -treas ury -il and -after math -rabb i -ou n -bou quet -herit age -zi on -sur render -shen an -in ks -kar l -gh ty -pol icing -exam ination -ce y -per su -measure ment -hydro gen -lu han -âłĢâłĢ âłĢâłĢ -war i -о Ð -j y -fow ler -mis h -al fre -âĺ ij -bb naija -cat alogue -recogn ised -sa ver -hu skies -col in -mun do -si va -p ng -discoun ted -man utd -fre sno -de vin -prelimin ary -tro phies -pla stics -du g -pro cu -indi go -g ard -dy lan -pit ches -ground breaking -in son -bl ac -an thology -f h -expl ic -r ard -admi ral -so chi -la shes -splen did -en vy -ad v -sex y -festiv ities -stic king -bi b -thr ill -op p -ari el -botan ical -endur ance -fe males -br icks -vat ican -black pool -ber mu -br ough -roll er -bi d -sue de -sloven ia -mm ing -ml b -med alist -di ans -rehabil itation -ne on -s go -li thu -ram os -z ed -pi anist -inten sive -broad band -stu dy -peter sburg -lu ca -ah hhh -phys ician -dill on -tele com -gri ef -mu n -ac ro -si ded -s ly -blo ws -classic cars -tri um -ar gy -? : -h ri -marsh mal -âĢ ĵ -to pping -war saw -tran sc -preserv ation -b av -re friger -experim ents -ä º -gl it -sli ga -g age -fac tor -flav ours -br ony -sp o -cook book -carri age -aw ay -ny fw -on ian -w g -simp sons -ro lex -ðŁı ¿ -cro sby -ãħ ¤ -cre di -syn dic -pu bs -ali fe -poor ly -mac ed -ðŁĺ ŀ -behin dthe -w enger -n ats -ðŁİ Ł -rubb ish -procedu res -typho on -opho bia -er do -fu el -vi era -bu mps -millenni um -new zealand -lec tures -it on -mil ky -respon ded -ê ° -landsc ape -.. @ -bo ther -âĸ ¶ -z hang -huawe i -tu ition -s worn -in u -y or -pa olo -au ditions -ab il -malay sian -ho ps -fe athers -mp le -au ts -ã o -boun ty -ic he -ì ĺ -sh q -pin ot -ge ars -disapp ear -video games -t na -alzheim er -ðŁĮ ŀ -a ji -under wear -swit ching -sign age -o scar -ec on -dro w -cl int -pl ated -gun dy -emb lem -ho es -ici st -nel ly -juni or -road show -miner als -at le -alexand ria -ac claimed -v ell -shi va -ad he -en ne -amne sty -h ounds -councill or -ðŁĴ ¦ -aes the -part nering -influ enced -mag no -fl are -extin ction -civil ian -maje sty -va il -law makers -rac ks -mc c -ori an -sp ices -er rors -may er -co ca -pa i -s ooooo -reti ring -ba thro -ðŁĻĮ ðŁĻĮ -âĸ ª -su f -endor sement -buil ding -broo ch -pal la -arvin d -ag ent -kar ate -r hi -c tv -ta ine -um m -ba x -reig ns -uni of -enterpri ses -adel e -fla ke -at tire -bru ce -ba hamas -gra vy -sa in -che ek -tri vi -lo v -e en -bb lo -lady gaga -itt a -. "- -du stin -observ atory -eigh th -bloom berg -kh s -f cc -gi st -commemor ate -ve er -sexu ality -ed c -nic ole -vac ancy -u ser -son a -:' ( -dipl oma -t end -up grades -Å Ł -jura ssic -cardi ac -dr s -widesp read -à ł -dail ies -vend or -sim plicity -wi der -len ses -supp lements -de pos -ob served -vin es -parti ally -renew al -collabor ate -ali g -fin ity -ph u -zz y -pe tit -ðŁĵ ħ -z in -i gu -sm ack -fall on -ðŁĵ £ -back wards -comp onent -o so -compati ble -bin ding -zur ich -thom e -w ounds -ly ric -fresh men -sne aky -fi bro -di et -emplo yer -in sect -h ated -sch er -raz or -n sw -boo ker -califor ni -av fc - ° -preten ding -pep si -al is -un titled -k art -grand parents -e the -o ck -lux emb -visu als -small business -abdul lah -min ho -su baru -h ra -reve aling -heart breaking -clar ity -am g -sl r -** ** -âŀ ĸ -recor d -ici ary -min ded -ye h -exce ssive -knu ck -icec ream -tru th -ev ic -ta stic -ant arc -ren dering -, , -mit t -loren zo -st patrick -bound ary -zi g -vo cab -osa ka -fur n -tu n -gu l -s ounding -blo gger -utter ly -g af -adv ancing -l cd -mar gin -lifel ong -solst ice -sh ra -wa its -ple ar -bre ach -en ligh -ad er -itt le -c ation -ho on -stu died -?? ??? -k ash -ev angeli -ps l -wei ghts -met als -ty res -tur no -wi e -car b -g ale -se al -sun ite -am ic -patter son -á n -eu ph -up stairs -quali fiers -khali fa -apple music -ìĨĮë ħ -vau ghan -al ter -cru iser -mu a -t ana -kat rina -id ols -spo iled -secre tly -fi bre -part nered -um es -gi ov -com et -screenshot saturday -k eller -fil tr -fe t -con way -pe u -bad minton -gi d -m ound -don key -bu ff -lea ther -lar gely -bro ch -int ments -am use -r k -sto ve -impac ted -con t -cr acks -prison er -bar i -contrac tor -ori oles -domin ate -pol ar -am elia -dr c -ðŁijĮ ðŁijĮ -vi st -su arez -injec tion -blo oms -ðŁļ¨ ðŁļ¨ -sti ff -pay pal -sno wing -thur sdays -goo se -we dge -educ ated -weak ness -de cker -abud ha -bree zy -Û Į -hope ful -o bi -rai der -gh am -de u -se ve -par tly -fu t -infu sed -mer ri -than e -some time -hu e -me in -cre dit -sli ding -ran de -cher ry -dead pool -sh ol -ar am -under wood -sky e -distur bing -m nt -poli shed -guardi ans -ha dn -pic asso -ari us -ak shay -ir ri -j h -happ en -la kh -dal ton -at the -s well -mar sha -re h -cour s -j kt -top us -serv ice -r ink -hack ers -dono van -hor o -tc m -may hem -cha se -dev ops -ken sing -sc up -sh ere -quali fication -c live -ton g -n ancy -mar is -der dale -ber man -cinde rella -jol ly -ci c -loo t -collecti bles -hom icide -g ge -epide mic -su ites -mu ddy -gi mme -e rec -- * -tal la -lis le -embro ide -ðŁĩ© ðŁĩª -veriz on -ve ctor -be anie -arti san -ga in -flo res -vi gil -u so -ðŁĻı ðŁı½ -grin ding -gh er -air ports -respon sive -shaf t -can cel -ceremon ies -e me -at ari -bru shes -eag er -bo hemi -children s -yan kee -ma a -suspen se -mor an -mac ar -sun flower -cre w -vo id -ke ar -fashi oned -jen nings -sunday funday -sub missions -me ad -her man -wa i -crit ically -le um -baek hyun -for cing -co bra -ãģ ® -acqu ire -al k -ge ology -pri mar -import antly -ire z -bunde sliga -curi osity -sen a -stric t -con soli -win ters -ven om -chelten ham -ðŁį º -cen a -t at -ba in -glo ver -under cover -as ses -car n -memorial day -am eli -i rene -ch on -syn thesis -spe edy -mitsu bi -sla yer -compos ite -under stands -pe w -inter rup -hen ri -mor row -an om -thof july -g lee -thre e -ðŁĺ ® -and hi -ch att -renew ables -ye s -trans fers -!!!! !!!! -bab u -du ter -lo ops -pe ers -o ilers -pau lo -ic ation -h mu -war a -mer cer -hom eland -fu ji -ale y -year book -re m -re en -ab sur -bo is -] : -caes ar -shot gun -kur dish -o ren -ra e -anci es -ty pic -f h -def ault -re plic -lu k -trans actions -r ys -infan try -ðŁį ¾ -cho w -chick ens -ba gh -wy att -ay e -gg i -bre ws -ed itions -mi ra -commen cement -pre su -peris cope -ic hi -guatem ala -zam bia -pain ts -wit ches -wan i -un dere -cro y -vo ws -us mc -hear ted -theat res -shu ffle -le vel -mul tic -squee ze -fer n -app et -post al -mal t -on board -ld nt -co o -s sc -k ac -ðŁĺ ĩ -sc rap -mar cos -deal ers -ann u -mill er -co ve -ul ary -vladi mir -be ef -th ur -pick led -se same -bengal uru -mo tt -kathle en -hi st -no tor -dr ank -du chess -snow fall -e ff -tin y -j n -sy our -speci alists -scot us -bay lor -eve rest -mali bu -pre m -harm ful -l ali -b ates -g ye -differen ti -and ra -geome try -el over -black out -== == -ko ta -inter act -asi an -la yo -samu rai -fi del -exhau sted -gla di -pd t -spher ic -anti qu -guit ar -stu ri -ho pper -ang le -f ills -sla p -mi th -rod ney -ong i -in som -pre venting -cassi dy -ap ho -ore gon -lo in -ham mond -contribu ting -f n -gar ri -ori on -comp elling -escap ing -aim ing -plu mb -bi stro -be asts -concer ning -bo e -do pp -shop local -stumb led -âĤ ¹ -naz is -âĢįâĻĤ ï¸ı -gest ure -war ts -us open -hi ggins -char li -hang s -bom bers -° : -fe eds -c ch -st il -nic ola -ðŁĵ º -clam ation -tro pic -af ro -ou k -expen ses -der rick -al ine -fa w -reg ard -im er -sat in -thi um -ry der -pear l -te ss -mm mmm -sen ses -ðŁĩ ¹ -positi ve -exhau st -occu r -nor ris -lil ly -is les -direc ting -yo fficial -count less -sam ar -on stage -flo ck -mir rors -arch er -mo i -k d -vi v -in os -si kh -le i -sen sory -br its -kno x -chest nut -op y -coli seum -z af -di vin -adap ter -:) )) -tem ple -ku n -hel mets -t df -gu ide -m old -o ids -lu ther -he is -monaster y -sp ree -k lu -brit ney -jagu ars -gre ats -c cc -ky rie -machin ery -cric ket -re ro -ab o -aspir ing -semi finals -ale ss -sig natures -var d -me th -her bal -hol den -king dom -ap or -reg gie -ore o -palestin ians -em mys -sec tional -ro i -ney mar -qu el -cu ll -l ka -haz el -estim ate -ul ties -go w -be a -purch ases -bel ts -protec ts -m é -gue ssing -bb o -clau dia -fr acking -jon ny -el k -cel tic -al mighty -ra je -courty ard -ig i -can es -ðŁĴª ðŁı» -bank rup -le thal -âľĮ ï¸ı -graphic design -vad er -penc ils -rough ly -dan te -m fg -const ell -cam el -j b -bloss oms -en to -balo chistan -cine mato -ill ard -jer sey -con sent -dent ed -con templ -sch er -hol i -lou gh -st our -a yo -begin ners -cur b -v hs -a jax -du ff -av eng -dom est -commit ting -ai red -cha p -hedge hog -disappo inting -freel ance -in land -char ms -ðŁĺį âĿ¤ï¸ı -ai sh -m x -buck le -ti dal -per mit -bo ating -ra cha -kend rick -b ello -b hi -ple a -estim ates -l b -apo logies -jay a -bb l -ast oni -inter state -main taining -el bow -mu p -ep it -ðŁĺ ¡ -viol ations -def end -be h -sl c -am ir -pur i -ti um -fi fa -blur ry -scri m -ðŁĻı ðŁı¾ -ma ple -rel atives -âĺ Ŀ -cho c -con nor -⾨ ⾨ -whi sp -list ings -ma ze -than king -ri dd -grass roots -shi fting -desper ately -gor illa -den i -ju les -stra th -g ley -ja in -bu ick -t anner -ðŁĴ Ŀ -ga e -pri m -it ors -n ano -separ ation -armen ia -bor deaux -ðŁ ħ -pj net -bu rial -e bon -glo ss -re new -gri er -spe eds -comic books -sym boli -pur poses -ãħł ãħł -spati al -no table -ci on -n ps -ho ffman -nor man -rt g -du sty -situ ated -tr an -k fc -em en -nic kel -hast ings -sett ling -gr it -l ena -w aw -art s -gu m -ca regi -le wis -sapp hire -rememb er -embed ded -t lc -bl at -serge ant -el sa -boot camp -bow man -photo graphic -pill ars -direction ers -classi fied -no is -ve er -barre ls -wh oop -ðŁĺ± ðŁĺ± -fe male -petro leum -medi a -e fc -poké mon -ठķ -enthusi astic -var un -pro files -pedi atric -acci dents -con rad -jan g -jo jo -ac or -ob server -l f -live stock -for gi -fo s -el m -an and -go e -c ere -avoi ding -gri t -om an -thank fully -scat tered -nick y -cylin der -chees y -di ver -mahe sh -cav es -ear liest -qu inte -subjec ts -b end -gul f -vocali st -glu e -pat ches -un stopp -sny der -demonstr ating -pi o -hor ns -wic kets -and the -r ama -yo on -stra ight -bed time -or ang -bul lets -sa urus -min ers -inci dents -! ... -ðŁİ ¸ -ag ers -hand les -stat es -in ity -d ons -incredi ble -emin em -avi v -ru dy -moz art -folk lore -appli ances -mt l -fre y -di as -hu a -page ant -stri ve -im prison -bul lish -r ana -al erts -bb mas -hy per -derby shire -re cre -re dd -debor ah -cosmo s -law son -mel anie -psy cho -ho or -doo dles -sni per -shad y -man tle -canadi an -new year -inter actions -separ ated -cor ds -spiritu ality -ap u -it o -p ct -pel osi -rebel lion -se iz -wor cester -sec tors -ul i -san ta -Ð µ -ðŁĩªðŁĩ ¸ -bi ased -class ical -gam ma -dee plear -emer ge -back er -sur ance -hand crafted -ðŁİ ¥ -franc is -mill an -ic i -cro wn -wo w -stri ped -un fair -relax ation -³ ï¸ı -embrac ing -she alth -pale o -martin i -dist illery -wr ink -or k -na th -hay ley -cour thouse -si ber -sa di -quiet ly -mel t -m sm -me h -smart phones -rel ent -pp ing -war wick -co logne -gli a -cot ton -pro g -lon e -ip sw -star ters -expan ds -u mp -su ed -ski pper -infe ctions -ing le -à ¡ -cler k -demonstr ate -ac ar -ðŁĺĤðŁĺĤ ðŁĺĤ -ti bet -bun s -alo m -demol ition -ssi a -g st -[ ] -so ar -âĺ Ģ -ðŁĺ ª -ðŁĵ Ĭ -dee pest -beyon d -are t -att ends -activ ated -di mit -âļª ï¸ı -high lighted -magaz ines -rum or -az za -steph ens -dol ph -sho ckey -mat s -we av -mel an -serv ers -tra um -ku sh -æ Ĺ -bab ys -pa z -a al -la use -break ers -canter bury -ul ture -mi ri -euro s -tane ous -impre ssions -du tch -il d -gh i -pur due -adequ ate -l p -sy ner -ang ler -du rable -gal ore -ro wn -mg mt -ðŁĵ Į -lu cia -âĺij ï¸ı -zay n -bor row -. ( -north umber -cru sh -eng a -su sh -extra vag -t out -ma hal -ali stic -ther mo -gall eries -es se -chi bi -attrac tions -lex ington -legislat ure -docu mented -resi den -brow nies -w f -st ool -plan ets -sho ppers -conduc tor -ms p -tr icky -fru ity -end ra -feel the -whi pped -hair style -re fer -oo k -oc topus -audi ences -ku mar -after no -op tim -c fl -ni p -gen i -alpha bet -ann ab -lam in -accep ts -l ng -ðŁĺ « -t ine -ac om -cheer leaders -t k -gr on -v g -k ung -ja x -dha bi -r ss -mack enzie -beir ut -clean up -gy psy -st ell -bur ger -hurric anes -educ ation -st ina -âĻ¡ âĻ¡ -unfortun ate -jere mi -bad ger -at ers -: â̦ -ter ra -subli me -stu d -y mca -mr u -duter te -bren nan -bul b -mel o -yl on -hack er -c red -gu d -as an -pad illa -embroide red -vietnam ese -pione ers -projec tion -re boot -id c -an ey -pri mer -suff ers -win ding -p on -sto day -mor n -u ch -all in -adid as -eliza beth -tu ck -o graphy -ðŁļ Ģ -be g -os borne -ghet to -r h -cn n -ir ma -ma kin -cab les -mur ders -oc ks -inst a -al as -si k -cu ff -la re -foo dies -o vic -at om -geome tric -em pathy -ภµ -cent enary -newsp apers -administr ative -ðŁİ Ĭ -sti ve -contrac tors -le tt -tas mania -awesom eness -den sity -ve en -prince ton -frequ ently -re ject -gh i -modu lar -ceram ics -sh ag -ki wi -can vas -sweat shirt -an j -ti mm -napol i -il er -appe als -hamil ton -ma yo -we ave -arrang ed -whar f -occu py -b vb -as aki -ot ter -nor m -vi es -de tox -tion al -dere k -id ad -ad missions -constitu ency -u pper -woo t -allo y -se ve -lu b -un comfortable -ed win -ab re -d wight -ar che -virtu ally -sp ol -pri e -ai i -er r -swit ch -bar ack -se ok -cou l -wn t -pou l -o live -caffe ine -cardi ff -notor ious -de mp -ex cess -bar r -t ford -a jay -bump ed -my thology -shel ley -fal con -shakespe are -must angs -no ted -bon e -civil ization -sy d -par sons -un official -hy ped -sp ends -oppo sed -v ings -space x -noti fication -deci ding -bio tech -out si -sal ah -! . -fe d -ss y -c ms -bad gers -cr o -ela ine -n ba -dy our -n ant -honey moon -climb ed -conom y -ath a -m ell -ne bula -nature photography -juli e -bm x -inve sted -mon o -lieu tenant -wat kins -techn ician -o se -ka e -ì Ľ -mc queen -pre ach -trav eller -flexi bility -ze bra -reta iler -p ant -ben der -brand t -squ id -war rant -veri fied -cas s -pier cing -hon ours -t ying -mor ris -kis sed -op rah -panor amic -me i -splat oon -wich ita -ari as -gal li -indy ref -good times -athe ist -confe ssion -ow ski -re pping -ad ditions -mechan ism -z im -j ans -su f -cho pped -beg innings -vitam ins -ãħ¤ ãħ¤ -or th -po les -ru b -antarc tica -indie film -web cam -ket ch -bre tt -cle ment -her on -defe ating -hydr o -buc ket -wand ering -sid ney -future of -b inge -on ies -knock out -administr ator -syn the -l ent -jan i -bar ley -premier league -ner ds -cr m -bra s -bot any -evol ved -rot ter -ro wed -tum or -weal thy -Â Ń -mon arch -li shed -da hl -ðŁİ ĥ -bu ch -ken yan -Ø § -red ness -assemb led -se mit -hud der -shro p -ran i -lear ning -mor y -iti a -geo graphic -worl dof -f b -pho sp -boo gie -am ped -? ... -che w -dwar f -ar us -s sen -ru sty -recru its -h k -gar de -app lause -vol umes -invol ves -ta c -hand bag -trans late -ffe l -se ym -aqu atic -trans fer -zo di -and r -acade mia -cr ater -te z -ar se -adap t -col oni -snow man -mal i -hang in -di schar -oy sters -pho e -colon el -w ba -hispan ic -thri ving -sh y -ag les -sales force -cre me -so les -la fayette -â ī -ter ia -ach a -sp erson -go go -car ly -the ore -am ore -vo x -af t -ãĤ ¹ -stap le -mu ffin -di agram -ino x -su stained -av ent -me ta -arbit r -dec ay -ado le -Ð ½ -ec ol -ph o -n k -o cu -gr anny -ç a -luxemb our -stad t -alber to -le vit -am as -d x -or phan -co bb -as c -lo gy -immen se -chan ts -off line -p ent -bre x -w inger -plan e -i el -nichol s -ca thy -nar uto -low ed -/ // -ignor ance -cat astro -you ts -sch en -buil d -haz i -s ine -critical role -du g -dete ct -lo gs -en amel -stpatrick sday -ed die -co pa -cigare ttes -ho ff -kay a -la goon -ra pha -air borne -choo se -puer tor -ke v -gui ding -fro sty -bor ough -mir a -ðŁİ Ĭ -cade t -anu sh -yo gi -e ger -fl ing -slo pe -nin th -we ston -foot wear -f n -may weather -a am -pla in -stair case -witne sses -work outs -ro bust -dex ter -co hort -ðŁļ Ĺ -sp ell -ha ze -o om -organ ising -wild fire -cont acts -av on -min o -upd ating -ðŁį » -li thium -ing ual -k is -au ga -lo com -de duc -u da -th ak -boy le -mp er -hot tie -eri k -re vised -is la -travel photography -oo za -en qui -confe rences -clo ver -g room -cur ves -live on -per f -displac ed -bo log -xx xx -ðŁĺ© ðŁĺ© -te al -ve ssels -rain forest -cal ci -pan ther -gira ffe -ta sted -imag ery -pad res -day time -bas s -ri pe -opio id -nu e -vin yl -invent or -sen s -process or -mu t -gad gets -bibl ical -shann on -jacqu eline -car y -the resistance -ali en -n vi -co sy -bi har -fo ley -ren d -mu gs -fa ken -cl one -ni allo -gra bbed -chi hu -power house -n tt -chero kee -spon ge -imple menting -rh ine -le one -ðŁį Ģ -pret tiest -infra red -impro v -swit ched -tu bes -con tr -bl k -projec ted -be aver -yo t -bbcra dio -thi gh -per secu -apologi ze -w ack -po ster -oli ver -az a -lou d -( ?) -f the -women shi -spar row -blu sh -us able -sc ales -it ative -peu ge -ne eding -legg ings -glam orous -mat ur -c z -wat t -da b -tam ar -et sym -bau er -heart felt -h n -else where -bir ch -alu mini -hu ck -e me -j l -traf ford -d z -por tions -ana sta -arthr itis -esp n -ber gen -viol ation -yo shi -c z -northumber land -clo sures -ðŁĩ¯ ðŁĩ -smi ley -r w -tel ugu -inten si -gre gg -ve ga -dun geon -south bound -ba il -domin ican -semi final -chap ters -h itch -van ity -trans iti -recomm ends -sati sf -bar ca -queen s -( ( -de struc -stra it -ra vi -dess erts -in tru -har am -k os -fo e -fat ty -pais ley -magn itude -dri dge -com ey -schem es -vision ary -our t -down loaded -ðŁĻĮ ðŁı½ -gd pr -lan i -p wc -gu ad -nic est -stake holders -re ferred -george town -arvind kejriwal -schnei der -in doors -all star -strand ed -gen der -ze pp -ma sses -ðŁIJ ± -pati ently -bl dg -z ab -we arab -vi vid -he ck -d ella -sy mb -je opar -la ger -à ª -comb ines -ne c -br ay -flo p -tx wx -jo ys -pon t -pro found -sur round -mad hu -ma ble -ay r -te as -n sa -open ly -er nest -ãĥ © -to po -g na -anti oxid -ti an -e tr -c ello -ma thi -gener osity -b iting -man ic -kel sey -chee ks -ten der -w th -pron oun -ultimat ely -gu sta -ari anag -ger ry -ble ed -red dy -mic h -mitsubi shi -oper ated -sex ually -ma u -cl lr -vi ds -co c -mel ted -ðŁĮ Ī -q ld -ite ch -instru mental -end game -ðŁĵ ĸ -ener gi -brow nie -tam il -at in -domin ated -pra ises -fire place -sens ational -men a -k arti -un prece -ru pt -ori ental -mc cor -tour naments -scen ter -re eves -prescri ption -sam e -fra u -tru ffle -em bo -roman s -bla sts -techno logical -pr at -b sb -y ar -tren dy -ac l -al ad -ðŁį ģ -o hh -bankrup t -tho ven -regar ds -is er -war wick -vine yards -real m -niallo fficial -do ta -ge mini -to do -v able -¨ ¨ -la u -wre ath -ju ve -nat asha -le ver -lor i -hor ser -cc tv -air bnb -es anders -sin clair -ema biggest -high school -con test -optimi stic -t te -ðŁĴķ ðŁĴķ -ss d -ye e -hel ena -con sen -ric ks -jes se -an ic -ðŁİ ¯ -re acts -ro be -independ ence -vol tage -m ington -s ant -à¸Ļ ภ--------- -------- -sentin el -ke tt -rehear sing -aaaa aaaa -sof the -stir ling -sear ch -wi gan -stand out -sna il -pent agon -Ä ģ -ch lor -cru st -net any -chemi st -disapp eared -ric ardo -sp iders -bo se -war ren -me ssing -bann ers -gu el -par ach -ma id -coun ted -epi le -bon fire -speech less -se tter -meas ured -rejec ts -nik ki -le ster -foren sic -fab rics -alo ha -pre served -wat ford -deta iling -dar th -bo u -car ly -... ' -tail gate -noti fications -å ¤ -pas sive -trous ers -balo ch -ro ther -typic ally -à ¥ -sp it -wi z -sic ily -technic ally -ex pose -st age -hu bb -cre am -cap s -po ke -sle ek -ju ne -tempor arily -de z -awak ens -l ame -_ - -ji ha -tues days -advis ed -advis ors -exi sted -dis agree -news room -lo sers -world tour -dr ying -al di -har ness -foot print -hobb it -p mln -i ro -que red -asse ss -gaz e -sa b -th ian -í Ĭ -ti f -ob serve -ev il -dra wer -swee p -cor y -co dy -kyo to -cal lum -n inj -lau rent -be i -sket ching -custom ized -du r -regre ts -knox ville -ìķ Ħ -mess aging -grac ie -abun dance -bi dding -bre wed -fl ouri -therapeu tic -alt itude -ho gs -bur ner -elec tro -wonder fully -he ater -post pon -li very -r all -ad as -a ac -sau l -brook lyn -play house -âĻ¥âĻ¥ âĻ¥ -char itable -in y -z ah -compet itions -be av -plu gged -o is -do om -astron om -speci alized -max i -ta ps -cellu lar -depre ssed -folklore thursday -cri b -e mul -ë° © -fi gh -ru z -car lisle -spe ar -side walk -de i -depend ent -lac es -nh s -ðŁĮ Ļ -reali zing -net work -ric he -re gin -re fresh -st ral -pa thology -pla id -psyched elic -hin d -u ka -algori thm -lin king -progre ssi -fe y -d ade -hydr ated -b ant -fam ed -cot sw -bo ise -as c -rac ing -ja vier -ww en -mar lins -poo p -swe pt -toni ghts -we f -ani me -slo vak -âŀĸ âŀĸ -cla us -lem me -cli ppers -re ls -arianag rande -r te -ko t -thal apathy -hungar ian -zu ma -y von -is u -jour neys -clin ics -be be -ww f -n ws -super heroes -er it -sle ague -identi fication -mo tto -ba i -sour ced -ill er -ap i -pri se -unprece dented -dam as -tuni sia -dra in -undere stim -e ther -quarter ly -rewar ding -al ham -wolver ine -cab ine -hyp no -nad ine -hav ana -da e -ðŁĵ Ī -dr on -read ings -b ati -pic o -mer ci -iti an -wal kers -el ope -mi key -god zilla -bur lington -abu ja -social ism -at ility -sh ell -harry potter -g no -ab ur -re leg -fel ici -ro gen -neuro science -inst in -ath am -vou chers -j arre -fu se -def ici -monte rey -de port -mid day -pp ard -fre ed -ame ter -wil t -n ingham -pr att -liber ty -slo gan -o to -pr i -co ated -c pd -ne tt -il las -mal awi -evol ve -accessi bility -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ -or nament -b p -el is -son line -chi ro -fl ick -ib m -ar ak -en ables -gar land -san e -cu ties -tri p -rotter dam -n ys -lam ps -lu cas -bo g -ra ils -travel led -hic ks -en u -sab ha -scru b -hi er -hart ford -fo o -fer nandez -tre vor -mat tress -appo intments -ale j -fe i -o logist -saf ar -oc ta -sr c -sha un -ambi ent -dri c -bi ker -she e -must ache -h ta -bo one -her ty -car dio -bra kes -rec ital -consi sts -overwhel med -cau l -robb ins -im it -al th -ur l -bi bli -on ne -black livesmatter -diffic ulties -tel ang -tall er -ðŁĵ Ĩ -deb ating -bur rito -mo vember -strength ening -bo e -te stam -mirac les -base ball -re nee -ðŁijī ðŁı» -al fa -âĺ ĺ -unstopp able -ec s -g mo -giftide as -path way -fen cing -ðŁİ ¤ -b ham -ra s -sk o -d led -thel ast -magn um -bin ary -wil de -wil der -wh ati -barbe cue -h ism -can oe -kur di -eli ve -advant ages -mad ame -bi er -mis sing -enter tain -air force -y ama -c is -hash tags -j is -ve il -dream y -ten se -may ward -ch ateau -hunt ington -âļ ĵ -v all -up on -bl ouse -dun es -ðŁĺ ´ -fert ility -m ole -curren cies -st u -ber lin -toa sted -div as -wal t -lar k -por a -hit ter -um er -chil led -bal ancing -fa is -y in -or tiz -east enders -h ate -ur al -ap ril -tim el -à ± -per o -sto cked -respec ts -th t -best friends -giving tuesday -be ad -inv ent -im i -nap les -comb ining -tok ens -thir st -ma sc -par rot -sp u -dent on -* -* -t res -subur ban -wid th -si ve -con tender -siri us -lo k -troop ers -outra ge -tur bo -frag ile -me ssed -do h -disc ord -netany ahu -re sign -forgi veness -mo han -mun ch -cam ou -identi fying -enab ling -hot ter -thorn ton -jai pur -ar ya -ðŁı» âĢįâĻĢï¸ı -mu staf -maj ors -o ke -du ffy -roh ing -til t -ðŁĩ®ðŁĩ ³ -rock star -she ep -hend rix -ra v -in vention -do u -lagun a -gru mpy -sw is -im pe -) ' -you ths -bun ker -st ache -oppo se -indi es -acceler ate -ml p -ed en -w ann -k ail -akshay kumar -su pt -pol ym -midd leton -extra ordin -wil son -australi an -alumini um -way ne -alum nus -mat ics -gri m -er nie -opp a -competit ors -rand all -h ence -decla res -pre aching -sha he -can e -sustain able -stap les -le dge -ad ena -doctor al -bur gundy -decor ate -ren dered -ri sen -pr ank -di or -bee thoven -flo or -ac com -to t -ho dg -touri sm -say in -objec tive -mar kers -premi ership -en abled -camou fla -gi ant -Ñ ģ -smo key -ric ket -pan g -de pending -s ation -evol ving -inter cep -cen sus -tof the -re en -mendo za -trum pet -marke ters -an it -ðŁĻ Ĭ -north western -v la -foto gra -blackand white -che wan -wi g -tro om -ginger bread -k n -ro mero -n fc -or chi -fun ko -sour ce -f s -ra ped -o st -tar ot -ann ually -ðŁĺ ¬ -r ill -del av -.. !! -se s -can n -medic are -ph el -ape x -guardi an -rema ined -r pm -a ñ -story month -instag ood -neighb our -p ing -sem ite -my stic -as cot -mat er -hand ful -dang ers -ti d -ana heim -opol y -sh allow -nami bia -tor ia -procu rement -big bang -announ cements -prosecu tor -beng als -sal le -en roll -ga stro -sugge stion -ba k -ha ul -budd hism -berni esanders -flu te -fati gue -cyn thia -cho i -ir win -gu a -str ous -h p -ba p -satisf ying -play a -ðŁİ ¼ -inst ap -al ice -t p -irri gation -ðŁĩ¬ðŁĩ § -in tric -clu es -ple x -sa x -he pat -dump ed -signific ance -by u -medic ation -pro v -tough est -corn ish -âŀ ľ -kel ley -u v -si zz -si bling -me st -di stor -diplom atic -aun tie -b hat -son ic -bren da -pump kins -ro ch -black burn -ur ged -shi a -arrange ments -floo d -sa unders -lec turer -nou ri -popul ations -diplom acy -consist ently -ðŁ¤ Ļ -t mund -cauli flower -l ily -vocab ulary -vari eties -coo ker -up town -qu ent -mo sa -re inde -velo city -spru ce -social medi -i ber -volun tary -proce ssed -bal tic -y ang -leban ese -d p -dol ly -arrange ment -y uri -cran berry -kal yan -elev ation -cli ff -pu shes -ìĬ ¤ -sil ic -co wx -eter nity -sla ves -vine gar -glou cester -con tained -breaking news -aga inst -renov ated -norm andy -hero in -ys m -mo ds -gre ek -un di -tren ch -v h -encoura ges -head ache -gr ange -: ' -ever green -Ù Ĭ -reck on -ab used -th ru -cho ice -ti dy -col der -scho ice -ha in -bru m -li ars -bre it -yor ker -sh ack -he idi -micha els -sco pic -fasci st -play ful -ca c -yas ss -sh ad -.. ? -qu en -ram irez -clif ton -pr s -best fan -âģ ł -gener ating -head set -disappo intment -abstr act -bo iled -paren thood -azerbai jan -exhib iting -bom bay -oli vier -ko so -un lea -mat ernity -iz er -si ves -r hu -col l -saskat chewan -fre akin -de k -na g -stab ili -ðŁį ķ -organi zer -bo sses -ar u -u va -at able -ta un -after wards -fert ili -ver ge -az i -mor ph -๠ģภ-jer k -cosme tic -ko w -stru st -ap ache -post cards -for mul -ì ĭ -spin al -jack pot -elec tri -Ã Ń -lo y -gra der -diab lo -ar di -he sit -f w -arch ery -pa sh -the ories -repe al -re live -per cy -âĺ Ĩ -im in -syn chron -sham poo -coup ons -o to -la i -thou ght -luxembour g -mo v -ðŁĺ ¥ -ge mma -se ated -m ga -strat ford -un certainty -shi fts -est o -fo ol -fire arms -cor rie -ki ki -appa rent -p ills -olym pia -fi d -elev ated -de cks -ignor ing -av alan -ro v -whist le -p tsd -milit ants -robo tic -pac ers -quil t -bankrupt cy -lic h -per cussion -celebr ity -al s -( ; -su t -pokemon go -h g -off s -gibr altar -scre ams -billi e -gen ome -mar in -be ams -arch bishop -em in -bedro oms -g ated -ol ly -warran ty -at own -cudd les -gun na -k ic -vi ve -cy mru -nar row -pro b -le o -refe rences -manufac tured -cho pper -brun swick -sem is -don ia -r ye -man o -hur ting -? # -hol li -investig ations -c els -ðŁĵ ŀ -le ster -temp les -sto rey -mc mahon -toi lets -wo of -ï¸ İ -le verage -at om -night mares -victor ious -haun ting -custom er -ag i -yo ongi -mon ty -ver onica -w ur -inti mid -blan kets -volu tion -j m -âĺ İ -am on -jud ith -ðŁĺİ ðŁĺİ -distr acted -dri p -hurric ane -and es -revel ation -tro op -ab leg -col lin -tibet an -wor rying -inter nationally -eat er -camero on -brad or -y uk -ðŁĴĹ ðŁĴĹ -tra k -slo pes -ci er -ne a -ol er -ta ka -albi on -volcan ic -am n -a fi -ob stac -face time -ger ing -n pr -metall ica -organ ic -ðŁĴ ¡ -ki dd -d ances -pemb ro -wash er -m its -om er -emo tionally -tan go -ip o -do cks -scan ning -spec s -tho m -the ology -emer gen -om i -g pa -selec tions -un necessary -ima ge -ter s -induc ed -gi gan -rent als -supp lied -m fa -shan kar -lat er -pa jam -cla ve -Ù ģ -ma hin -carl son -avi an -ano va -kati e -aj ith -design ated -chocol ates -investig ators -gla zed -prin cess -er ry -ra gn -ou rable -hr u -sun dance -peuge ot -steam punk -gh lin -gre ase -hi res -z ap -per ce -j ill -tom e -he hehe -joy ful -mae stro -ni shed -gene alo -v ich -p its -fox es -good man -emer son -lo bes -con verse -o ats -thom son -ra him -mal ware -ah i -man kind -re sin -im g -sw ood -kin der -sc roll -ar a -sak ura -ro bbed -xi on -ny a -c ism -ce dar -be in -mour ning -tor to -heath row -done gal -bar b -hydr ation -k or -elim ination -su pdates -hill s -appe ti -star red -ko m -gw en -dd d -cra y -sc anner -personal ised -seren ity -re design -meta ph -box ed -judg ment -no se -ë ¹ -er ad -ac ne -supp liers -ener getic -v om -as ap -ðŁĶ ¸ -ir vine -hat ch -la ss -ad ren -waff les -accur ately -ici o -itt le -se un -occup y -web cam -thene w -ent es -ga i -j w -accoun table -vis or -ir rit -licen sing -hudder sfield -gen ie -ðŁİ ¾ -atmo spheric -ten sions -spart an -clif ford -ol an -north bound -ame en -cen sor -u el -ster y -$ $ -far rell -hy ster -cl t -se dan -rep lied -descri bing -micro wave -sla b -pro sp -assi sting -ru bio -e than -hh hhh -gu ay -z man -ra ise -roll ing -o e -n ile -ambro se -scar borough -hero ic -coo ks -mor t -chop ra -ðŁĮ · -to b -shav ing -stac ey -dor m -motor sports -wi ki -fol ds -sp iced -stress ful -liter al -fu dge -pe ggy -wa ite -tre sses -se sh -pr ic -ðŁİ ħ -fri ght -r va -mumb ai -po m -tt v -cel lar -tom e -andro id -dor is -tsun ami -tin der -o ec -m wc -dor tmund -no thin -l iti -so u -believe in -at u -kno cks -mag ni -ss sss -ro hit -ine ws -ang i -m andy -ke ttle -intermedi ate -av ant -cur l -endor sed -ori o -ur t -consider ation -wi res -shel ters -b ino -vik ram -imple mented -ly dia -bu k -paro dy -c news -under graduate -canu cks -sam i -polit ically -ro tten -gh z -tex tiles -over load -moder ni -recre ational -fli r -bat on -typo graphy -ov ation -intrigu ing -pilgri mage -al ge -ad ays -tcm party -sp elled -cur ls -boo ze -ste m -ann es -ir ls -spon ge -sho pper -sig nation -bra ss -mi stress -le ah -beg inner -lau derdale -augu st -pre school -ta ping -tai pei -execu tives -b d -rhe tor -esc or -immun o -deeplear ning -stat ues -it us -manu script -ly ric -cor vette -mol ly -la ge -de p -cn bc -le st -je ssi -fi fe -griff ith -oppo sing -ran g -dr ills -respec tful -p ity -d ell -har ding -play boy -blo ke -shut out -k ili -o sp -se attle -bc poli -mis es -journ als -team ing -es ther -fre ddy -Ķ ï¸ı -metr ics -no tre -gar ry -for ty -navi gate -perio ds -bened ic -j id -da w -ance stors -restor ing -con g -aller gy -tit anium -c ence -lean ing -ab bas -v ast -uc f -roof ing -e man -seve rely -vo gue -ve au -in bound -d z -tane ously -stret ching -man chester -dr yer -dav is -kan th -the game -it ted -re tain -el les -conge stion -frat ernity -ol lie -lo ki -fre ely -cho o -pon y -sc ep -tab ly -bal t -rock n -di me -lo gging -ðŁį · -ad u -ha voc -water ford -char is -swee tie -run ning -ner d -erdo gan -z ara -weigh ing -fif ty -pre cise -low ell -kurdi stan -r yo -or th -syn th -lin ers -phenomen on -art illery -il legally -constru ct -nostal gic -gar th -al ta -shel ton -a sean -w ander -dur ban -di versi -bon o -cl on -le man -sh un -obstac les -appet ite -fe eder -respir atory -di xie -formu la -an to -so ber -extin ct -au c -ing les -legitim ate -; ; -min nie -ipsw ich -dram atically -ðŁijı ðŁı¼ -ingh am -milit ary -mon et -us navy -for k -dun no -play er -q otd -st oo -ex or -ethiop ian -film fest -pe red -c ate -sau di -in ner -sin cere -tion ality -ale e -de eds -cooper ative -ir onic -cro cod -br ary -post season -cam per -can ary -e in -exten sions -nb d -sher wood -spo kane -hu mp -jit su -ê ¹ -dar yl -p si -stab bed -offer ings -expe cts -cav al -body building -fr aming -f ca -ye arly -bom bed -sk il -resear ching -jud iciary -gree ted -tu dor -mil o -innov ate -ðŁĺ Ľ -r hs -ru by -contribu tor -fam er -soci ally -m lin -fi ery -ut ter -beau t -it os -de voted -rain bow -bar ney -pe ren -ar jun -r na -gab by -ut i -hann ity -pick le -ser v -qu akes -pp e -fe m -wh itec -j n -victor ies -ðŁ§ ¡ -gol fer -congratul ates -resul ting -mechan ic -ur ve -cen tered -kie v -an s -in cub -< < -c mo -bestfan army -dap h -en ham -on cology -ku sh -t xt -ori ented -fashion able -c sr -sa hara -r ack -pd p -han son -ภĩ -ti ers -ra r -pan am -in sky -sa hi -testam ent -asth ma -in her -fisher ies -or der -ho we -gall on -ep is -suz anne -drow ning -paneli sts -ðŁĺ ² -ë ¦ -al ach -commemor ative -at tribu -ðŁij » -mo o -visi onal -week sary -gu st -ak in -poin te -ee e -di spar -ni pp -dent al -st all -pi an -bor e -ul ster -tic k -ir r -tae hyung -micro phone -bermu da -ga ard -el er -plumb ing -hu gely -âļ« ï¸ı -race way -cam bridge -mar cel -burn ley -to ast -holly wood -fa sting -me red -hib ition -ca pped -benef icial -ow ning -cont amin -arab ian -to on -cap ac -hul u -sm ir -nutri ents -se in -graph s -con ditional -ðŁij ħ -or ac -play in -nor the -tor nad -mar ian -ju mbo -lex i -incredible india -road to -uk one -confu sing -sp h -shan k -pi ed -mq m -positi vely -sher ry -path ways -consi ders -tof u -argu ments -resil ient -che tt -with dra -ter o -ated ly -sw ana -he b -fli ght -har ley -decre ase -kind le -book shop -³ ï¸ı -marty rs -sm ur -mc cl -concer to -sti me -rejo ice -app lau -cle ment -mer kel -jai me -im mortal -isle of -mar co -youtu ber -stal king -me too -st ack -sp ouse -u st -lu v -âļ¾ ï¸ı -eque strian -ev ing -fl in -nick name -the big -as ar -st acks -wal ker -bor a -kidnapp ed -hur ling -humb old -rec alls -co pper -ann is -se o -mer ger -mu ir -ad dy -ðŁĴª ðŁĴª -be x -cr acy -con an -congratul ation -mid st -âĻ ¬ -for bi -op tic -cr ate -crocod ile -mad agas -secur ing -ast on -o gue -savi or -salis bury -love it -fuji film -cast les -as st -ar rows -sp acious -tr s -poly vore -progre ssion -m ri -nel son -bi m -indic ator -o da -pe pe -re signation -gu t -sne aker -log ically -az y -are lla -te aring -jo shi -ssion ism -q pr -mari ah -p x -ble ed -mi an -med ley -we iss -ker ry -gat ory -at al -madi son -av enger -nab y -pl and -gi les -fresh water -d ington -ta j -demonstr ates -n tv -bul bs -sunday morning -pe ake -souven ir -wa h -ton nes -m kt -complex ity -con den -ross i -b ing -y ds -su k -n go -mid land -ol y -life is -ri pple -mo reno -dd ers -tu s -á ĥ -bou l -x a -hol dings -wn y -shadowhun ters -ke i -asp ire -m ous -ow en -so ak -skir ts -moun taine -stor ming -ch rome -ri ots -sar ato -amaz e -less ness -nav ar -crit eria -ra fa -indul ge -ay er -por to -nam o -........ ........ -yi elds -val le -j h -mac ron -sa ins -dur ant -tra ilers -wo t -confeder ate -sh rin -id ol -form ally -ten e -motor cycles -than g -no de -bang er -dal y -p ats -enroll ment -au ctions -at al -ar bor -lo gos -de arest -trans action -dom ingo -fle a -ser mon -de ck -sin cere -questi oning -juli o -was p -pre tz -armen ian -k ham -inflam mation -picture sque -acci dental -film makers -ðŁĺ ļ -ðŁĴ į -ca sey -so b -yee zy -good will -parag ra -ss ly -fe ather -dy ed -assassin ation -na de -b cs -app lies -femin ine -fe u -ext ent -depu ties -l ack -psy chic -go i -kill ings -pse u -ðŁ¤ ª -un c -mar l -tan e -mck enna -sur fer -influ ences -free way -hack ney -mal aria -el and -te au -rema stered -Ø ± -raz or -gg y -cor ro -lak sh -fla ir -honest y -hoor ay -de pp -am c -wedne sdays -q a -ed its -- $ -se villa -dou bled -human ities -c cot -som os -r ine -af a -si oux -re construction -wel ding -th reads -am ish -encoura gement -po der -bo ck -bal m -p tions -stand up -accompli shments -guar ding -convic tion -ac ion -napo leon -depic ting -att ack -su i -wear able -âĸª ï¸ı -pot ter -esc ort -vis e -to ts -bo on -event profs -angu lar -womenshi storymonth -bar row -sch i -ac comp -ti k -l end -kensing ton -wol fe -st acked -cra shing -exhi bit -wing ed -sab rina -ma sa -k ms -alway s -et t -pla sma -counsel ing -pick les -nfl draft -mr s -inev itable -coura geous -staf ford -writers life -ho s -e j -gh yun -trade mark -adri an -influen cer -coron ation -ra ging -explo red -usa f -excep tion -eu x -tan ker -sw ami -pac ket -ðŁij¨ âĢį -f en -she en -a ero -j l -re gal -nw t -au ster -meh ta -char ge -a ste -b ate -inf eld -racec ourse -collap sed -fle ece -z il -al lie -alternati ves -geor ges -ðŁĵ į -quir ky -fc b -nat geo -philanthro py -bra i -every day -ðŁIJ ° -ach ers -ja an -fin es -q i -fisher man -distin ct -gri mes -nation alist -comm ence -ro wn -âĢ ³ -z ing -f ter -hr w -baro que -bl ender -kitt y -hoo ks -c ited -w anda -consen sus -reinde er -an and -supp ly -me ds -v n -ol ph -rat chet -shel don -secur ities -ë°© íĥ -cro m -mosqu ito -j eric -im mac -dimen sions -â ¤ -di ssi -sponge bob -dami en -steven son -jo anne -del ish -yi kes -than x -surve ys -postpon ed -alco holic -al ised -ðŁĻı ðŁı» -do ch -sen tim -mered ith -com pares -b ago -happy days -mo ss -ãħ ĭ -ne c -gn ment -frustr ated -comb in -ri v -ec lec -col lo -compli ment -actor slife -ct to -nic ar -op hon -apar the -man t -ja de -trol ley -optimi zation -eye on -eco logical -qui st -ep he -ॠĩ -cin co -appo ints -old school -c pr -behavi oral -min aj -:- ( -tag ging -ev al -jo aqu -ðŁĺ « -ha k -de me -jama ican -so s -hy att -hand book -libr arian -hanni bal -pump ing -ch om -f man -ga i -hu ll -respon ders -green ville -n us -vau gh -ðŁİī ðŁİī -ta xi -gold berg -man tra -te ase -forbi dden -metho dist -ati vity -* *** -ec t -mc gr -Ħ ëĭ -se b -amid st -disapp ear -thy ro -phili ps -er ina -v icious -stream er -million aire -ma p -str ick -hack athon -gh a -ed ic -mi ka -pe ck -ill i -anto ine -ar ca -op tic -ma ure -ðŁĩ¦ ðŁĩº -cla shes -man ly -âĺ ģ -al var -and res -me i -el m -ww ww -al tered -l te -ê¹ Ģ -mo jo -for rest -thal ai -non t -spee ches -acknow ledge -ign ite -x factor -ðŁ¥ Ĥ -mead ow -disru pt -debu ted -scrim mage -pharmaceu tical -fi dd -found ations -philosop her -et al -publi shers -bo ys -c ke -ru gged -opti mism -re be -phil harmon -nar cis -ral lies -lu is -go blue -fol ded -un acceptable -optim al -li sa -pol aro -+ . -en za -âĿ £ï¸ı -mon opoly -grace ful -dair y -du a -diffic ulty -judge ment -o si -mer sey -flu x -new found -ter ns -dimen sional -in vic -al ba -am it -abudha bi -alger ia -autom obile -the ad -lo tion -acceler ator -vac ant -iti on -lu f -al ic -pl l -bla zing -ba z -sen e -ðŁij ¼ -villa ins -direc tory -eis en -to ck -broch ure -ri pp -hb d -zayn malik -nic he -lo lol -certific ates -mor se -fac up -x ham -un wanted -im ports -carne gie -fan sign -mo u -r alph -destroy er -sw ing -trek king -cili ation -pit bull -g aps -ho well -defin itive -mc le -f ps -et z -bol ly -lyn n -gan o -at ure -fur suit -co il -na v -but ts -tro jans -eu re -en ko -sch umer -horri fic -install ment -br b -subur bs -a bel -vi r -de sh -cun ningham -ðŁIJ » -span n -sch we -ke mp -tr u -ste alth -qu es -le w -deli ghts -ko ch -hu mili -cr iti -il t -sp ells -mi ley -car ic -ðŁį ´ -lc fc -substitu te -oun g -? !! -af fir -predic table -class of -er r -cy press -chand ra -age ing -__ __ -ther land -don caster -el in -yo shi -sail ors -har ris -jo anna -niger ians -h ers -pla gue -pro cra -k no -can ton -busine s -un h -pra kash -c in -bow en -co ating -m als -be gging -smith son -ponti ac -sp ies -dam ian -pl ine -und ant -al ta -one ss -shame less -da q -bb m -wal es -stam pede -ser um -Ù Ĩ -cataly st -x n -ab sc -free zer -ch un -ari os -mc cre -fore head -he ars -damas cus -tac oma -ardu ino -encoun ters -stan ton -lg b -ab as -" .. -ke te -drac ula -ele m -g ne -zepp elin -la brador -pul p -op tional -or n -russi ans -san itation -hil ary -etsym ntt -pen alties -au st -ig ans -olympi an -medic aid -vers ace -va pe -re stra -pe ep -sexi est -st alls -di le -the a -punjab i -pupp y -tuesday motivation -ðŁĵ ļ -the flash -roc ket -mo dest -chihu ahu -on na -k sa -hur dles -ca ve -fail ures -sp lit -bo ho -gur l -disappo int -ho ward -nug get -fran z -stal ert -kaz akh -for getting -sch ri -ag ate -am at -eve rett -du et -veter inary -juli an -ch ills -bra ve -ghost busters -lan do -gre ets -profit able -d é -ti r -ze e -om en -pd x -gray son -har i -fix es -stab bing -swim mer -symb ols -compli ments -po se -func tioning -th nx -gi r -corpor ations -bar low -lo e -off season -distin ctive -marvel ous -nik on -enri que -ky u -ja ws -amo to -lom bar -travel blogger -fa h -ouri sm -tri stan -so e -ce ase -ðŁı ħ -z ac -mck enzie -taxpay ers -swim suit -bl o -les ley -kan sas -w ks -ki el -provo king -my les -str ing -kangar oo -galac tic -fif th -s ke -we ir -ll is -mat ory -ðŁĩ ¿ -un ci -re productive -roo ting -ti des -gad get -.... ...... -alex ander -bow ler -scre w -apo log -eri ka -wal ters -shet ty -lan e -ban ter -as ant -me so -v ain -" "" -us i -fer din -accomp lish -man sfield -bom bar -collabor ating -cla p -it ure -s da -smo ky -na k -im person -car la -com ra -bur gl -lo co -ti es -in hi -trac ey -se is -diss er -rr rr -dra y -prote ct -cor ona -hun ger -ck en -c eli -trou bled -predat ors -fic tional -shav ed -riche st -metab oli -ful ham -gro oming -mono chrome -wa sting -as co -ast e -ti sta -remedi es -ung soo -south end -perman ently -bu mble -procra stin -ident ical -practic ally -ma scul -su ke -assu red -val erie -devi ant -grizz lies -thi er -pur a -ne pal -not ts -bil ateral -spo il -car mel -cine matic -ph l -ni fty -ma o -hypo cri -la ser -pan try -mathemat ical -el isa -coordin ation -bel mont -a it -radi ant -bo iler -man g -f ag -cr c -h ams -br in -â¬ĩ ï¸ı -famil ia -âĿ £ -sab er -ru pert -gg an -rit z -mic h -sal ford -le vi -gra l -ðŁĴ ¤ -n ino -ce d -business man -ul tr -sim ply -compre ssion -pa ins -hal t -ë°©íĥ Ħ -landsc aping -n f -croo ked -er d -itt in -ddle ston -sur passed -ino a -da g -bl en -exten ding -at ing -al gae -ball er -u mar -snoo ker -col lu -flo wn -thu b -ridic ulously -ki sh -op le -di re -as ser -ari sto -sc iss -h ating -trou ble -syl via -suc cul -plo ts -sincere ly -al er -laure ate -br ack -att n -rif les -me to -collec tible -cu omo -conte stant -consist ency -ant z -rang es -abig ail -de b -mini ster -grow ers -an oo -hoo ver -dream er -nu cle -resear ch -mi y -sha hid -ma v -d honi -cin i -do j -hin dus -part ying -dal i -alon so -inform al -clark son -it ton -ki an -cit yo -mor i -la sted -as pen -libr ary -susp ici -qu at -den ial -fol der -ch ori -swee ping -eni x -ðŁį Ĥ -Ø Ń -nas car -handmade hour -mou l -heat wave -em er -exam ine -ib n -gr ind -po v -tion ist -m bo -she ila -integr ate -om es -take away -cer v -con nie -tic ket -ce led -bi en -visu ally -madagas car -sor ry -gu i -park run -tra its -la be -pois oning -à¥ Ģ -vi able -bohemi an -denti stry -bad os -spr outs -mask ed -te ddy -ðŁĺ · -sa f -sa as -ji ang -ti ght -spe aker -withdra wal -bc n -as signed -class rooms -fle ming -ðŁĴ « -super girl -tot als -table top -e books -horizon tal -cra z -flu sh -j ard -c dc -er son -ãħ ł -green wood -ni h -co x -ad a -lit re -go ing -v icky -cur ved -lou ie -gra ins -hy e -lon ge -reme dy -tra inee -san jay -super stars -ma ser -man u -s age -wh l -ðŁĺĤ ðŁĺŃ -ðŁijį ðŁı» -m sd -en z -rab hu -j oo -gh u -ac er -e po -resurrec tion -justice for -bl ended -mo da -avalan che -france sco -re spective -g s -ye ast -wel ch -devo tion -ge tin -athe ism -am ic -carol yn -lo c -ld nont -ave c -us da -le gged -bra very -b lower -cow boy -he h -sti ble -buff al -chann el -run chat -âĺķ ï¸ı -ide ology -best seller -y oo -pe anu -bon ne -fel ic -edi son -fr actu -naren dra -pp ets -seym our -ri viera -he ctor -necess arily -bi anca -soci eties -the best -w g -sent ences -win k -vacc ines -pal ooza -jam ming -as f -mp us -agre ements -ec k -ba c -hon ore -com pul -wild cat -im posed -yo ga -hud son -can celed -l ich -fu zzy -es que -ch uk -w vu -se k -fli pping -r hon -wi shed -wh a -cap ability -len ovo -ìĨĮëħ Ħëĭ -vi vo -tv d -nor a -sil k -pas adena -yo semite -valu ation -clo cks -u ber -mr c -dar kest -au bre -ss o -bell y -wrest lers -kill in -lou der -buck ley -ge el -ad on -un s -appe aling -ðŁij ¯ -semit ism -list ens -fit z -ãĥ³ ãĥ -ny lon -ar ty -seem ingly -hal a -su ited -et y -she ds -mu ffins -ap ric -um ents -u ta -jam mu -chelse afc -star z -yo ko -roo t -clean sing -di ar -pione ering -ihear tradio -dig iti -fin dyour -can o -ðŁĴ İ -z ol -spac ecraft -six ers -moi sturi -b ile -ti sts -hor ton -rang ing -colum bi -mete oro -senti ment -ep l -foo th -text book -drain age -r ly -sc ue -imran khan -ðŁĴ ¸ -margar ita -ed dy -predic ts -gamer gate -advis e -growth hacking -love you -ug and -v f -beng hazi -s later -ne wor -ch el -independence day -p np -cul len -hoo dies -num bered -brit t -t sa -kl tu -s ages -mom o -onep lus -col l -gu ts -w ta -mesm eri -enh ancing -chiro prac -j is -teen agers -m one -constell ation -sweep stakes -e ze -slovak ia -la ye -pear ce -wa ver -po gba -k ron -sur geons -mar x -ti d -gg a -desc end -p ours -upri sing -wal la -sab bath -bachel ore -mack in -k am -peter borough -hor a -ðŁĮŁ ðŁĮŁ -think big -r j -hy drau -sp al -univers it -ðŁı ī -mail online -league of -ten ants -w ally -lan ce -heav ens -dd r -bol ts -am ir -i phone -ci gar -en du -re i -el abor -r inging -john son -characteri stics -sal oon -algori thms -tal kin -m tn -di ve -region als -ff ice -hat i -deviant art -so tto -shir o -l ama -k we -f aded -por ting -tu mmy -est ates -buen os -ðŁ¦ ģ -beli ever -pen etr -dar n -sp ite -can opy -fashi oni -t illa -pet als -eli jah -bra wl -marty r -ë°©íĥĦ ìĨĮëħĦëĭ -mid town -eric h -d apper -sm town -me gam -ww w -le le -on s -cat fish -fir th -fossil friday -ball park -th aw -pot ent -illi e -cre ep -car p -so ap -gun dam -infe c -yy yyy -ठ¨ -z ag -rit t -calcu lator -bo ca -ok o -to ad -threat en -refin ed -olym pic -accompli shment -bacter ial -a ji -tat um -feli z -she ed -j at -th ic -jam al -ðĿ ĺ -lin a -ðŁIJ ¯ -jo king -yot po -pin ch -ak ron -her b -motiv ation -li a -ho stage -cre ek -gam ble -russ ell -patt i -fo tos -c pc -bro ken -back the -cla ys -u mm -stock ton -mat ernal -ü r -la kel -cent ury -be k -infe cted -ภ¡ -smack down -man ned -ta hoe -sm es -bas a -su la -augu sta -. * -rohing ya -gre ed -counsel or -silhou ette -gra vit -cla use -' - -bo bc -occa sions -now adays -dic tat -be ard -n ally -brigh test -kab ul -inc india -dhan ush -archae ological -che ape -mizz ou -d hi -ov ski -bax ter -asse mble -à ¢ -gi gi -ac am -wis ely -haz ard -north ampton -âľĪ ï¸ı -me th -bla sting -re unite -mu lus -ali zes -t read -mil a -ed ward -ko va -pe sto -ðŁij ¶ -vit z -hydrau lic -refurbi shed -mo tel -isab ella -hom me -sever ance -uph ol -mis erable -f ari -lat ter -ef er -crack ers -es l -ac io -yy j -in an -ec b -z ind -pan as -tru cking -re ed -sh aker -burge ss -em pire -ag nes -n ington -art works -fr s -ti le -bi ome -eu n -ch ong -americ ana -god father -go blin -i shi -! ). -temp ted -gen omics -mand ate -ck y -ðŁĴĻ ðŁĴĽ -som ali -br andy -in ven -spoke sperson -pc b -yu an -h g -fa z -starwar s -ro wan -blue grass -don g -d day -trin idad -er ton -ban ning -re tention -cu red -tober fest -re set -we is -deta ched -behindthe scenes -immun ity -ph a -bra y -ðŁij ½ -ran cho -ram say -est onia -nd tv -] . -cab aret -tar o -d v -show cases -plu m -ðŁij ¸ -son oma -pre pa -memor ab -e stu -drive way -u les -magn us -x r -nn n -much as -en ge -stre amed -fore stry -audio book -tro y -reck less -kil om -ru ler -ra k -proce ssion -i ons -po ole -noc tur -wh s -farm house -per a -par me -hypocri sy -s ics -v ant -cas k -holi stic -au st -Ð ¿ -in do -ðŁij© âĢį -di so -disp atch -ol sen -make it -en nis -cent re -ar range -ðŁĮ ¼ -sal ted -ea siest -f ate -reg atta -mo zz -ac an -sin i -g ically -ch ops -chick en -work in -ha gg -invol ve -wee ds -book day -wake up -ky r -michel in -fu ss -re juven -vac ancies -incar cer -m st -sc ents -sovere ign -kick er -à § -bo d -âĢĶ > -sa h -mob il -shrop shire -oph one -dress er -mis suni -hep burn -i mo -foli age -diagno stic -as san -cycl ing -guil t -c sa -puertor ico -win elover -wake field -do ggy -k he -pa pp -co g -al lot -cu ck -poe tic -mi o -re vit -mag ician -ç ¥ -ant enna -west wood -mber g -lux e -oat meal -Ø ¬ -te at -ffe e -sear ches -l ly -plu to -el on -let tering -inno cence -fa i -ann on -telang ana -ma it -neu ral -can ni -ar oma -a stor -fe x -co cac -mon etary -f ent -un sure -' @ -indi rec -teh ran -isol ation -li bs -make up -merce des -ff y -he tero -de o -sco m -cur sed -veteran sday -franken stein -shre ws -de co -ge ese -lefto ver -ha did -vari able -acade mics -carol in -under going -vari ation -na h -ssi er -gamer sunite -pur suing -emer ged -ll ers -control ling -ro aring -mete or -vol t -daw gs -be aver -is life -bathro oms -aci onal -pre vent -lake district -in als -y ani -gra bbing -sac ks -le z -sw ay -k ool -time s -klo pp -la de -con cord -resul ted -revi ve -recon ciliation -ol and -az z -gir o -mand arin -de en -nutriti onal -is coming -van i -aw www -der ived -love your -stop the -shou ting -nov ak -ðŁĻĮ ðŁı¾ -lo af -displa ying -sunday with -ma guire -ch eri -ðŁı Ł -re match -qu ic -Ú © -y in -ðŁĺ ¹ -ili ve -z ip -our ke -down loads -sw at -missi ss -care rs -t ment -proper ty -hahahaha haha -gi bbs -sur rey -ar ise -tic ism -sti a -ir ling -fro g -co se -bas sist -fore ig -lea u -pil lows -hol la -eli e -disclo sure -peanu ts -inte ch -ww c -plun ge -trium ph -cor i -sli ppers -ðŁĻı ðŁĻı -neutr ality -ma re -hair y -gang ster -hu mming -cust ard -mer lin -ale a -s by -dam p -mo han -ver bal -j st -gu tted -b jor -un finished -ðŁĩ¯ðŁĩ µ -un happy -âļ« ï¸ı -by pass -at su -fis cher -sa v -afric ans -re use -mid way -demo lished -ger rard -her cules -Ä Ł -medic ines -cl icking -sur round -jo ong -wav ing -tri bes -wet lands -offici el -argu ing -l le -do va -su zy -club house -ne gro -ob tain -ga o -gl ance -assi st -ch os -ãĤ ¢ -âĺ ķ -adri d -occur s -st ans -par don -livel i -emplo yed -re visit -ff xiv -bb le -ne aring -min er -ðŁĺ ¹ -giov anni -up to -mar vell -mar se -to wels -cb n -engine ered -y elling -spart an -si ans -ðŁĻĮ ðŁı¼ -se v -coyo te -sta di -t cm -app en -shenan igans -open access -so aked -ma squ -le vine -stro kes -l k -aparthe id -hipho p -char don -may may -ha asan -stri pped -fr o -scri ption -f ton -h f -pri sons -marsh al -ķ ãĤ -an cho -com promise -classi fication -buzz feed -bblo ggers -deser ving -) / -s way -ob o -camp ers -poder nfamily -p oured -bri e -squir rels -se ize -: # -le k -ti mb -st acy -nas daq -repe atedly -br at -mi ghty -competit or -mah one -de si -o ke -bm w -shi e -f cb -cheape st -minim alist -par amount -n ate -har as -insan ity -lat eral -ment ality -mo zam -ta pped -yad av -u sp -b way -the od -bil t -ra ids -em press -adap ted -pat ron -nut shell -ag ra -be aded -sundaywith marsha -vi king -proce ed -main tained -thinkbig sundaywithmarsha -sn es -mus ica -to wer -ch ab -bo k -sm t -insul t -harve sting -windo w -ru ther -be ige -dec al -indic ate -ma iling -ri ft -po le -ander son -ch oral -sp ride -l ili -ev elyn -imrankhan pti -.... " -ke red -un dp -water falls -se ars -le mans -world series -ri el -ani e -app ar -score rs -lam p -a than -phys icians -qu inoa -refu sing -vu itton -unle ash -s la -pat i -shou ts -inten tions -fo amed -europe an -neighbor hoods -me er -man son -du h -br at -con es -bow l -kazakh stan -ठ¿ -in appropriate -del hi -ketch up -ful ton -s ys -consul t -gar field -to go -f ml -f led -b ds -facilit ate -ree bok -selfi e -elev ate -activ ate -bi ble -ca wx -b ys -cam ille -sy ou -sk ool -her t -w bc -ple dges -recor der -po sh -ac re -so aking -mat il -v sco -shoot ings -pla r -e con -ðŁĻĮ ðŁı» -rashi d -u bi -ðŁ¤ ¤ -sw inging -wi pe -rap tor -m su -music video -dur ham -at tic -apar ty -fe tus -activ ation -aa z -motiv ate -ðŁĴķ ðŁĴķðŁĴķ -j al -ठ® -ag on -sche er -stal ker -fo ster -az zo -tele gram -vi gor -s laugh -screen shots -entrepre neu -kri stin -inten tion -ch illi -fr action -don a -ge a -tc u -s ite -la k -em il -d nt -bor o -wil kinson -re cu -ato day -t anya -bl anco -cd n -brilli antly -g cc -ac c -evacu ated -ther ine -den ny -cait lin -she pard -pou ch -hand held -sou theastern -ha a -à ´ -re solutions -led ger -sr in -r ar -shat tered -chim ney -im with -mete or -hand led -ra ke -town send -en han -shi py -duc t -tw x -inflam matory -war hammer -theat rical -gro s -sk ar -sco tty -ni el -tit o -tin i -conne ction -_ . -goldeng lobes -sha q -ðŁı ³ï¸ı -hall way -fron ts -effec tiveness -gla ston -d hs -ex pi -to h -c pl -sc s -re o -ha g -resemb lance -hor an -abu sive -qu er -virtu e -cho lester -a q -shan e -m ce -carri ers -di stress -re wind - ¡ -voo doo -int act -ann o -ðŁĺ ¤ -pi led -adi a -ãĥ ³ -en ow -di gs -light ly -goo fy -turb ine -governor s -con te -re open -pa h -i ve -cra fting -swee ps -jo di -an de -zu cker -kaw aii -o ko -v ai -out line -kri sti -ts n -insp o -qu int -fil thy -lyn ne -listen ers -depar ting -or d -t weed -, & -ale k -sel fish -nor ther -recogni zes -i ps -be s -a ed -w ills -pe at -surround ings -mon uments -ais le -be cker -la v -quant ity -v ah -helicop ters -tu cked -alv arez -sha pe -o bey -ad diti -road side -m ite -bl ers -ep age -j au -ignor ant -b ins -lu lu -x o -c fo -ee eee -apprentice ship -shef fiel -to i -ho k -faken ews -deplo y -aid an -husk ers -ãĢ İ -west brook -mi ster -confi gur -car r -fic a -proceed ings -ha w -ste ak -mur derer -pay day -a jo -p vc -don ates -bi af -nom nom -be it -k ali -x rp -ahmed abad -se mic -che y -x tra -an twer -head lining -squ ares -roun ded -flu ore -bol d -disa sters -am oo -gener ic -cran es -brief ly -gi g -auster ity -anticip ation -for ti -treas urer -cann y -ce cil -dete cted -check list -ภ§ -pam ela -bar bados -an field -hear ty -tx lege -peren ni -arro g -ing ram -âĹ ı -ty ne -spo on -r ation -am ba -m be -cam el -h hs -york shire -reflec tive -fre aks -to k -ju do -partic les -du bs -ban jo -accred itation -prover bs -over dose -inte gral -gu ang -mc s -super car -af b -al vin -ail s -x tre -st aging -tw ent -rabb its -mar o -inste m -dol l -cr ay -sant ana -ble ach -mini ons -che ap -man t -di vers -catal onia -lo is -mat ri -cou gar -kay ak -e gre -p so -a ia -å ® -char lton -tr acked -sc ari -pe tt -f wd -x in -gra vel -br ic -bigg boss -ar den -hu gging -pal ms -st v -li mb -the movie -handic ap -ri me -z ai -stu b -indi a -lithu ania -rhy th -p ita -maced onia -high ered -brid get -schwar z -ske let -hi kes -ant arctic -c ps -mash up -Ð ° -n ell -chand ra -he ir -an us -sher idan -mi mi -muse u -bec ca -an ir -bar rie -dioce se -compar able -ðŁı³ï¸ı âĢį -yuk on -me p -hor mon -mer ic -al f -con quered -christ church -ðŁĴĻ ðŁĴĻ -hazard ous -poo h -cont ing -retro spective -par ame -na ir -con sor -ho tra -astoni shing -cater pillar -u man -ti sm -t vs -serv ic -croy don -mor ales -c g -cu m -te ur -scan ada -s all -magno lia -el ise -th our -à® ¿ -ag omez -phel ps -ë°©íĥĦìĨĮëħĦëĭ ¨ -wh os -weav ing -si sd -pro poses -cro ws -pre sale -econom ies -bernar do -sha hid -air show -mc cann -hor ticul -nr l -du el -mongo lia -tou lou -requi rement -struc tured -ed i -o lives -he a -cu ter -Ð º -enthusi ast -harri et -domin ion -sub mer -ðŁį ĥ -sa ab -nes burg -mo ff -def ended -bur t -rewar ded -gold man -op tics -khali d -house holds -buc kets -ce cil -che ss -substan tial -ef l -oper ation -evalu ate -st n -rece ssion -l ll -tom as -tru ths -ak bar -s words -p act -embarra ss -ha o -ay urve -scrip ture -ny cc -op t -di ameter -sc ented -organi zers -re lat -ha e -dream ers -de se -ðŁĮ » -restric ted -n ale -r hp -dol an -mun ster -ha ired -consult ants -jo ints -hu mil -d ill -relent less -t é -af il -ut ilities -japan ese -condem n -pet ite -colli de -q f -peach es -cou rier -l ore -âĺİ ï¸ı -reli ability -ch uk -ðŁĻ ĥ -stu res -ge ther -ho stel -bi er -- _- -â ĩ -e ze -ta ilo -di ent -blu ff -chu ffed -pil ip -mon arch -e em -bu chan -b ick -op au -ku ps -ภ¢ -pist ons -sp ins -m and -ce st -bur ne -v ile -cher ries -bec kett -need les -pan ch -ë Ĥ -haha h -trou bles -insi sts -do you -g mc -mor tar -deleg ate -in n -g anda -sin atra -ठ¤ -spee ding -pu pil -pre mises -ali gnment -pi kach -as us -j alan -Ø µ -lime stone -fol kl -parme san -ce il -mo y -shawn mendes -ac up -hu st -ot es -med ina -ma di -gta v -censor ship -ar g -swe eney -sy kes -col o -foot steps -cann ed -adv ance -gta online -healthy living -ðŁį ¾ -a ig -p ality -oc s -he brew -im minent -berk shire -jeremi ah -out going -bak er -entr ata -ma ids -gro ves -bo c -a del -m fw -con science -arm ys -nut ella -conte stalert -novel ist -la h -ban ker -marque z -ðŁı ¡ -to ff -out age -gr p -ðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ -musc le -du dley -nvi dia -mi di -m uni -ess ays -dat ac -car ter -ภ£ -t ans -i ves -public ations -al er -ok wx -il u -cu tt -har p -out law -luther an -br ill -bo lic -do well -green land -be sties -path i -pay ton -gue st -har den -ðŁ¤ © -ann ed -evacu ation -po ised -mc der -b han -o i -envel ope -ci d -ca vi -ta pas -book review -grey hound -âĻ ª -fe ud -lun gs -for te -rai der -ff er -oni x -dep end -yn wa -rel ating -de vs -ðŁĴ IJ -acqui res -d ha -j yo -priv ati -can ine -k b -cra b -sar din -imag ining -k j -em por -down hill -ne z -ta eyeon -nick imin -gb p -à µ -w ap -sec co -ma shed -ðŁĴ¥ ðŁĴ¥ -augu stine -diss ol -dic tator -â ĵ -vi per -ed fringe -vau x -hard work -book let -no x -chi ff -ðŁĴ ¨ -observ ations -xbox one -u sher -ke er -lu p -dal las -cal gary -ma dra -di ous -k bs -wood ward -hero ine -lu mber -sea world -o ws -mc ke -maver ick -gu la -cross roads -fan g -s ade -nik ol -chee tah -me c -pp g -er ick -ðŁİ µ -tox ic -bj j -viol a -sp ire -ch ino -tra vis -institu tional -ha as -low ry -w ac -ea e -hu mid -mp ton -ru ck -je w -c ine -zim mer -se f -bhar at -fre es -aam ir -ðŁĴ ħ -z inc -wan e -multi player -royal wedding -e el -preci pit -qu ery -kimber ly -isa bel -ful fill -ig an -vau l -pan e -sc y -dig it -gun n -u tah -dog day -fi on -xia omi -da c -el ast -cha vez -ro blo -g ine -ten th -ab h -ke to -hur dle -na dia -memorab ilia -ha bs -qu an -h w -hv ac -pix ar -ec cle -kram er -accu ses -ðŁĴļ ðŁĴļ -per se -mean time -wa hl -atle tico -âĢ¢âĢ¢ âĢ¢âĢ¢ -ott oman -no vo -k us -conne cted -tru sts -d mv -spen cer -rahu lg -do ve -sto kes -bolog na -enthusi asts -à ª -rockstar games -ted cruz -du ras -s acked -late x -immer sive -cer t -lu cin -princi pals -fa res -sa ils -far n -am ent -saf fron -quent in -check point -fer ris -ex cur -ðŁijī ðŁı¼ -bai ley -se h -ter re -mad am -s band -wan derers -cumber batch -yy c -digit ally -blackandwhite photography -roll in -moroc can -ðŁĮ ħ -din ner -d well -to om -m ye -ez ra -cp fc -war hol -me er -jon ah -no aa -s gate -so on -secu lar -g ating -ti o -dri ver -si ssy -assan ge -ta th -ed mund -bobc ats -ra ji -po stage -stu ds -m gm -kat o -edin burgh -meet the -shir t -fa a -mens fashion -sp reads -wi m -car ts -phoe be -j ars -bot swana -Ù Ĥ -ed war -sk ar -ri ve -gu sty -c tv -ferdin and -su therland -nickimin aj -k v -si us -bee ch -re z -desi res -on ial -camp o -quar ry -lor raine -gil more -ig gy -µ ï¸ı -ho pping -avi z -ðŁĮ º -uni sex -dedic ate -att itudes -ste er -jun kie -rail way -y b -whi sper -key an -k us -ju g -di x -a ins -sum mon -ov ich -sy ed -her ald -ma ison -me ded -wild flower -main land -ri sky -ru kh -over looked -ki c -destro ys -nam an -ki p -z ano -champion sleague -ban dit -quin cy -smi le -cal vin -open ings -ta pp -ol ulu -spec tro -accred ited -ap k -pra ised -bar nett -pol len -premi ered -selen agomez -tou red -screen ings -uu u -mis o -en se -adam lambert -guel ph -har yana -hu tto -le ar -l tc -po ached -brex it -æ Ŀ -tt c -pa vement -mon gers -ro e -ad ers -ling ton -particip ant -ca red -ga il -y ates -lan tic -dash board -jo o -feli pe -ssi onist -bu m -s end -a eri -thu gs -luci fer -a he -dete ctor -fil ly -gas oline -ham per -hump day -the ta -the band -fore casts -o hhh -lo bb -hol l -cp u -az u -ad ar -hai ley -bu b -car t -quo ted -an archy -pan cre -twit art -al den -st ash -the less -or ni -belie bers -mor mon -partic le -avi ation -⬠Ĩ -webcam toy -sad dened -cru is -ham let -n ct -roll ins -marque e -saw yer -reli ance -a ura -di ec -soo thing -sig nings -ak is -à ³ -at kins -aer op -ðŁĮ ¿ -y ab -sh ari -con nol -du bbed -manufac ture -convin cing -feelthe bern -ra u -pu lit -on ec -gem stone -ur ging -bag u -ga h -aci ds -fi anc -zodi ac -sn oop -her rera -initi ated -ven ge -profess ors -pro di -stron ger -e mission -bb a -hal le -ta pp -haw an -wh im -compe ted -myr tle -ir port -cold play -ach e -ske p -m son -ss ic -calli graphy -swim mers -me y -pp c -thri ft -po c -re places -commu ter -âģ¦ âģ¦@ -go ers -lo gue -para dig -bas kets -sensiti vity -joh an -atl antis -& & -suit case -anxi ous -l h -str i -gal loway -stre ad -war den -gr ounded -ffici ency -li feat -reli c -disgu ise -island ers -f cofficial -classical music -b mc -en field -bi que -oak ley -bat man -sla ying -ner ves -mul tit -calci um -projec tor -scott sdale -ant ino -gri ps -kim mel -des mond -prote stors -hi atus -metaboli sm -conclu ded -press er -ti pping -sli de -e to -hun ting -aus open -ri k -pp ery -innov ators -pitch ers -ag ger -fun gi -z ad -proli fic -rockn roll -bl ames -ct ar -stam ford -q ad -mozz arella -insan ely -den ver -ph ouse -nom ad -ï ¿ -s ris -pro du -hen ley -pag an -am trak -ru bi -in cl -tu tor -sco tia -wo es -sing apo -fun nel -turn bull -know ledge -gri mm -real madrid -we are -missi les -con sol -emo jis -sne ak -smi ths -ru iz -br ou -i el -ha ver -ðŁĮ ļ -kin gof -basil ica -circul ation -prin ters -ta pping -ri dley -dra gged -ha j -writ er -fundament als -personal ities -me tre -stereo types -bur le -best of -n ffc -ha th -mini stries -a ali -trac ing -pav ed -ł ï¸ı -g ic -insp ire -tu g -ha re -repe ated -ex pon -lol li -rho de -pre cin -install ations -instag ram -az ar -i es -sole ly -du kes -mission ary -van guard -fursuit friday -on d -pol ari -ma st -har an -jos é -jack ed -ec oun -al ities -ne ph -ra vel -moder ated -sco w -s fb -uru guay -as o -ni g -au du -p ints -lat ina -ben z -m itting -char ted -mat ology -cit ro -biop ic -ðŁij Ń -djo kovic -fox y -agu il -so to -an ada -sin king -sc rap -hair s -bethan y -fact friday -ðŁIJ IJ -unlea shed -) ( -contra dic -ram on -coast line -y ong -sn sd -li gan -p ome -mit age -ge tt -wat i -ri sk -so aring -bru sh -f pl -av an -å Ĩ -lar son -sh ear -mul til -blu r -multi media -chun ky -par i -n ani -weir d -cholester ol -char les -dream ed -tan ning -puzz les -fr am -hand ball -ch ag -beli ze -al u -bang s -Ñ Ħ -detec tives -mc g -ish q -bo thered -saf c -mp ing -ten eri -g ays -sail or -an gi -mul ticul -gue ssed -ros é -high ways -bro om -chatt anoo -- ' -see ker -on ed -at f -lu c -> < -bar i -per cep -jewel ry -as ph -sor row -sl ing -mam moth -jac kie -ë § -wilt shire -sa o -can cell -im paired -tor ial -bre ed -guy en -jud ice -tit le -pro spective -applic ants -ðŁį Ĭ -epis cop -e id -b yo -stock ings -ðŁĴĥ ðŁĴĥ -ll p -sna g -keep it -l ough -ol son -matur ity -!! !" -cop ter -i sha -bl i -wil mington -tr youts -th ai -ðŁ¥ ³ -pe bble -kra ft -f p - º -ssi vely -li vin -contest ants -tex tures -jo an -h dr -film festival -prov ence -wi do -op end -c si -sto wn -cro ati -ad just -host ile -analy sts -il an -cu ppa -bru m -newfound land -good win -me tt -mall orca -plu gs -bu k -bb hutto -wrest le -sa ire -sho pped -for za -le head -vi vo -ba st -ro xy -reg is -hard working -hon olulu -desp air -young sters -ni g -impro mp -roll tide -de emed -tre ason -ru shed -for ged -ff f -pikach u -bri ggs -do it -ac cent -la us -gla ze -compet ent -a ho -photo g -mid field -le go -har vard -min orities -re illy -slic ed -once upon -initi ally -financi ally -landscape photography -har dro -qu o -mm ers -par kinson -smu gg -read iness -bru tally -glou cester -mp ed -bbhutto zardari -mur der -ye d -dat aviz -sr t -dow ning -bi ans -m ü -fle ck -fli pped -s ly -brilli ance -ri m -k um -bubb a -ko i -knit ted -sor g -ma is -ðŁĮ ² -ti ss -su stain -sen su -ak han -zi est -exam ines -chardon nay -user name -short list -re bs -on o -dar ing -hard wood -che que -righte ous -light ening -dir k -shra dd -du ra -down stairs -sh al -ami gos -ru ff -s law -ri es -red nation -man us -ðŁĩ§ ðŁĩ· -distin ction -u bun -dur an -mi gra -thi ans -la ver -domest ic -k x -jaz zy -justi fy -belong ing -insul ation -color stv -drun ken -chann eling -qu and -xi ii -enligh ten -kan o -fati ma -teen choice -terri fied -p ba -as ley -met museum -dun e -pack er -ki o -ðŁĴľ ðŁĴľ -bo iler -fas cism -ar mored -back grounds -in mates -embarra ssed -defin es -th d -we go -silic one -lo on -el ding -bor rowed -he mp -ak sh -kaw asaki -br y -de af -kill er -dispo sal -ðŁĩ ° -glaston bury -un covered -o xide -po ff -d ant -k j -ku ro -dri zzle -peop les -fe e -pro pri -dd lovato -pi ggy -ot is -aller gies -u bis -pengu in -ser a -vi z -prosp erous -ici des -tornad oes -sene gal -web cast -sto red -enchan ted -bb cone -bay area -entrepreneu rial -rednation rising -experim enting -ang an -lot to -they re -por e -er p -seren e -east wood -bro kers -bar ge -stal lion -timber lake -tailo red -dy stop -b ate -lat ors -di xit -bran son -dynam o -ky lie -shame ful -bt wn -spring time -mix ture -s ounded -lu ton -dad es -mal a -op ra -en ic -rahulg andhi -se wer -~~ ~~ -ky u -nor theastern -ca er -bc u -nir vana -kitch ens -ous y -al m -river dale -hid den -fl int -sp d -pat rons -katy perry -au gh -exhib itions -sm c -shu ts -at ore -da in -some thing -ber th -bo g -por ter -gen to -con cussion -ang lic -ro we -gr illing -scar lett -master ing -mor nin -comm ented -si me -si zing -christ y -ce os -st m -at ry -tari ffs -vac ation -pre judice -p su -paren tal -far age -can a -cap com -koso vo -you re -men stru -stal in -grape fruit -br an -che sa -dav en -exc el -!! ) -๠Į -distribu tor -ce a -bride sma -millenni al -wa in -ob serving -mis ery -plan etary -expo sing -bra ised -comp ton -don gha -q l -spring steen -th ul -syl ve -cab o -pal ad -niel sen -gaz ing -ba ja -r oud -orchi ds -johan nesburg -se man -d ji -oper ative -affe ction -eclec tic -at c -mut ant -aw x -nic e -mel bourne -indu lg -tu lip -dias pora -wel p -big gie -mississ auga -retri ever -or an -tam my -c ta -hipp o -seas oned -ger mans -eng v -marvell ous -im f -rela ys -mon tan -maur iti -me ister -as surance -reig ning -su fficient -han e -no thing -pos se -nav y -in love -brigh ton -en qu -ch ung -sweat y -es c -cal ed -man s -nicar agua -sl ices -mo cha -washington post -bb n -dam ned -grow ing -en burg -lo an -me s -wh oops -believ ers -spi el -vo daf -l at -s led -cricke ter -brown e -golf ers -bar ra -wat chers -lu igi -sw amy -mom s -pit ched -san tor -cr s -si re -sc amp -bo de -ste war -jon ny -ent ity -pac qui -mind ful -min india -bear ded -temp t -scorpi on -eat on -authori zed -ar to -s vp -op athy -cch ini -house music -disney world -âĢĶ @ -pro pose -di y -expen se -ten g -pupp ets -sm el -d aca -per ry -fin n -boo sting -lefto vers -cou gs -satell ites -man y -az e -g ong -fi e -metho do -fer ries -ðŁ¤Ķ ðŁ¤Ķ -explore rs -load er -attrac ted -il ton -godd amn -pi azza -doc tr -sav ing -paragra ph -visu alization -may ors -work flow -ack les -ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ -ठ¸ -twer k -clu t -lo ver -te ases -si an -o te -deter ior -accor d -l fw -swar ovski -nat al -tra ps -k ina -analy ze -laye red -bever ages -un it -ran som -pe shaw -dest ined -astro logy -si pping -miley cyrus -cam ino -marshmal low -bli ss -out back -fa q -int oler -humil ity -po ppin -hallo ween -mon tene -op hy -nu n -tattoo ed -a as -ðŁĮ ³ -dale y -qual ity -du sa -fisher men -swi f -ter rac -st au -le in -trol ling -ship ment -garden er -march madness -head band -gr t -bur nett -w and -!!!! !!!!! -gh e -du x -hu d -war ner -ðŁĩ ¦ -ex ile -rescu e -rat a -d han -duc ati -dro wn -bl ends -spi e -alli gator -simul taneously -broo ke -u ke -k har -comm union -ri ka -ford fc -chin atown -you rown -me y -can al -syste matic -de pri -ox ford -an il -w ut -equ ation -be z -fle ur -the good -lang ley -ad ity -ed ith -al fie -о ÑĤ -en cry -br ill -ex emp -ce sar -mb ling -ab ri -sc icom -j ing -school ing -mi ka -mechan isms -impromp tu -rhe a -moo re -crime a -be sto -wri ght -el ders -ro ds -kam al -folkl ore -be et -mini on -reli eve -thr o -team usa -pas cal -made with -boli via -itt i -free bies -desi red -best selling -l iness -la den -ke ane -mi sts -hipp ie -atta chment -@ / -se w -flan agan -âĿĹ ï¸ı -supre mac -stl cards -si as -q u -rh ys -ste ep -val leys -v w -pav ing -disp at -al ison -por te -id u -new sc -soc ket -mo s -co star -re vo -prote ins -stanley cup -m cal -ear ring -se cs -mc lean -cap ric -nick elo -ad en -v c -shou se -adap tive -maxi mize -entertain er -pro se -gri ffi -six teen -lam ar -mi rage -saudi arabia -awe ather -ru st -in filtr -fashion week -ðŁĺĬðŁĺĬ ðŁĺĬ -selec tive -bubb le -a den -fen nel -deci sive -m ta -mock ing -mb les -st amp -mu le -bernar do -gr in -po tt -j ingle -vet tel -colom bian -cam o -motivation monday -ba han -p ly -dh ary -k ami -x men -sleep er -gar a -my sti -confi dential -conflic ts -p neu -ce s -insur tech -clean se -me rely -va is -tu x -the great -shar on -ma j -hol a -eco systems -aj ay -aa j -hu sh -har mon -backto school -wiki leaks -reflec ted -ðŁĺ ĵ -commemor ating -ac et -buck ingham -messi ah -tu ous -hor net -to be -d q -he ine -mi g -pl ate -nichol son -sp ie -cumber land -nor mal -pho bia -happy halloween -city fc -mc el -gilli an -ke to -lu de -de mise -su ga -str ate -mcgr ath -visit scotland -foo led -cb r -gc se -col ori -po td -missuni verse -fin ances -ma poli -for ks -Ø ´ -cann on -medic inal -ðŁĹ ĵ -kh o -wre ck -pan to -bag el -gu ll -syndic ate -ic y -pr c -ki en -zi ka -ti sh -pe ta -c co -li za -ch ut -ex traction -el g -gl i -fu eled -pos it -respec tively -leice ster -br ink -vulner ability -im ported -e sha -ðŁ¦ ħ -r ural -re ll -gam ing -atlan tic -aband on -no ah -re solved -pro state -aller gic -ps d -âĺ ¹ -dun geon -fang irl -illumin ated -m hs -white sox -d ently -ck o -endor se -over ly -dazz ling -prior iti -night life -ut il -be have -flam en -east bound -ðŁĴ Ł -ilove you -gov uk -mozam bique -alle gi -dr i -testim onial -ath s -ì§ Ģ -mm y -shab by -pro secco -friend ships -cal am -dam ages -off set -jura ssic -jun o -arre ll -ðŁĴ © -interven tions -dare devil -car ver -run away -ran e -truste es -ha ute -dep ths -ðŁİ Ń -me in -sacrific es -con cier -ne sting -i zzy -me tam -ilove my -ur ine -du lu -mal hotra -ve ins -night ly -co at -an di -he witt -lon el -ci ble -wr ite -jen nie -sant ac -ĸ ï¸ı -str ato -singapo re -sop rano -kri sten -cheer ful -flee twood -fa iri -m eli -wa st -tur nt -sfor sale -sc rolling -angel ina -ren dition -jeric ho -nick y -or b -fla vo -patri ot -ash eville -sick ness -re fund -aggre ssion -b pl -ãĥ ĥ -elu sive -thi story -hang er -bu ffs -vil las -at kinson -sp h -ja it -decl ined -wo k -supre macy -oo tball -ey ang -ðŁİ ĵ -s ford -ath i -consu me -road ster -e so -u pro -reci pe -au f -uc i -ar on -oo oh -cs go -re ich -mc d -min ute -ladi es -pun k -rut gers -mee k -ariz on -ta j -land lord -de gra -autu mn -lyn x -us f -b hi -fairy tale -dongha e -bet sy -explo ded -chen nai -op a -pro tag -br ant -ðŁĵ °: -g f -pal li -ðŁı¼ âĢįâĻĢï¸ı -su t -ill ini -colum nist -shir tless -de centr -sear ched -ec or -bu ggy -s ack -ðŁĺĤ ðŁĺŃ -de t -ther i -or naments -bring back -to v -quarter finals -ic he -con stra -gi er -buchan an -vi x -kay aking -mu stread -swal low -mel b -sc af -op al -may oral -har at -ðŁ¦ ĭ -schedu les -id f -ha gue -ro z -a ah -d mc -du plic -ca che -orph an -frac ture -rec on -ch av -bun nies -al ain -mustaf a -ðŁİ Ļ -vac ations -dynam ite -tex ted -broad caster -ðŁĴ £ -ste amed -rock er -di etary -luxury travel -inaugur ated -sa wards -vaugh n -lincoln shire -click ed -kra ja -f anc -remo ves -layo ffs -mc far -bre eds -win nie -jon ghyun -incen tive -vari ations -pat ton -atur day -persist ent -pr un -pi ers -dal es -æ ĸ -breast feeding -r ance -ta wa -Ĥ âĸ -mur doch -cap tive -thi stle -nic a -commod ity -cou ldnt -board walk -graci ous -practiti oners -n gc -scru m -ner o -camoufla ge -col on -he i -phys icist -saturday morning -ten er -si won -colum ns -bru ne -y vr -ba ir -reti res -hal am -cab er -shaz am -min u -cas cade -milk shake -gri d -d ren -vin cent -so dium -plat ter -cheer leader -chen ko -y ak -elimin ated -ty po -y man -re think -âĿ Ĺ -ts ville -bernardo kath -ex tr -ðŁĺģ ðŁĺģðŁĺģ -ta o -re per -mo ths -em powered -c iting -transpor ted -mon ks -san at -cle ars -bachelore tte -camp bell -racha el -har le -hand ler -climb s -inter ference -rele ase -sh and -r bs -hr h -ãģ ª -val le -r é -sli me -w akes -chu bby -slo an -el ves -ath en -attor neys -micro scope -ston er -sc aling -o be -c out -se man -mid week -bal sam -ðŁĺį âĿ¤ -ti ful -v ish -lo tta -ri pping -re mn -ti re -le ap -ha vent -la by -hi mach -whisp ers -we in -ðŁİ ¸ -wild flowers -se le -u cc -li ability -az ine -sw ings -k ya -ta ir -re main -e do -flo ps -poc ket -grand ad -exam iner -gr is -ffe ct -ðŁijĬ ðŁı» -stud ded -heart beat -de acon -firm ly -infec tious -ste f -out lines -le asing -cla ws -sen se -tab s -hoo t -mo sul -spa wn -co a -hog warts -ve in -alban ia -manu el -b ino -vaux hall -scot land -go bucks -mat ty -phy sio -tor ino -const able -investig ated -s lower -mistak en -bay er -wild fires -vo ic -x on -time to -chas sis -bar ric -pi on -bald head -woo k -regi str -dra fts -b hs -li gue -l ick -staf fordshire -baf ta -dar ry -je anne -ven ding -cor p -⼠³ï¸ı -kid dos -fen way -ca o -west bound -ðŁĺ Ļ -dv r -quick er -bla h -goo die -ðŁĴĭ ðŁĴĭ -vo x -esp er -fac ade -cor relation -red bull -rou p -decl ining -chi ve -mc gee -tur o -in der -f eller -fu g -il ysm -mar di -peshaw ar -ki eran -ine ma -meat balls -pe ck -depre ssing -sen sing -gi z -dd ington -spring watch -ro aming -yellow stone -horse shoe -am man -week day -ol or -ðŁ¥ ° -boo sts -spr int -scar ves -je e -bee tro -cl an -all the -ìĦ ¸ë -enlighten ment -ado be -re generation -? @ -cont ag -yach ts -to u -mor a -en voy -r ani -go li -dhanush kraja -wood working -streng ths -se di -disc s -ar ina -sc on -lit e -ano ther -ðŁ¥ Ĭ -ye men -gu ern -sav vy -lo yed -biom ed -heart break -comra des -milli e -pat ch -un f -jar vis -bl aming -commemor ation -ge y -å ¥ -cardio vascular -alig ned -docu ment -. ? -aesthe tics -em u -the irs -le h -ps ic -si f -pl ateau -ex pend -domin ating -rob es -mauriti us -excep tionally -hom er -discover ies -bra un -ten nant -insul in -ðŁİ ® -car bs -te as -? !" -zi e -franco is -brow sing -th ol -cla rence -hel per -ob tained -cas sie -le es -! , -pome gran -hu bs -presti ge -] [ -mach er -bott led -pun ch -pi pe -o ch -gall ons -deliver ies -u ra -un day -mon de -depic ts -re gency -outra geous -khal ed -car o -he arti -za g -develop mental -over coming -stati stical -flavo red -for ds -cre atives -lau rence -di as -sun screen -in ked -pre acher -n ul -impac ting -auti stic -âļ Ķï¸ı -o ss -pel icans -cele ste -v b -ru mp -mc gra -fair fax -hu mor -bbc news -row ling -cal der -seam less -ag ne -p ti -mix ed -t shirts -mer ci -b tob -women instem -genealo gy -pre ven -l our -cra dle -gi use -Ð ¾ -chron o -fair ness -chocol ate -tor y -as da -pre scott -stret ched -al man -u il -re charge -in tre -ob st -hosp ital -hay ward -teneri fe -fried man -vap ing -confe ssions -ye ah -bal li -luck now -cor pse -sculp tor -amp ton -t pp -indic ates -sur plus -tru man -ðĿ Ļ -sin ha -in vo -sovere ign -ke v -establi shing -engra ved -assu ming -ðŁı ģ -sou za -fab i -ton ed -oun ge -del oit -dow ney -no ble -om or -car tridge -ðŁı IJ -u hur -hol loway -succe sses -r sa -âĦ ¢ -ma zz -tw d -disc ourse -. < -y at -satis fy -com pri -ठ¹ -graph ite -disser tation -ar ter -í Ķ -b ally -zom bi -ly ons -a ic -u bc -pra da -e il -da x -cla i -grand daughter -extravag anza -chall enge -ðŁ¤ ŀ -po ver -primar ily -dad dy -man a -bi kers -inqui ries -da un -fel ine -gener ative -he f -benef iting -lind sey -pol ka -demonstr ated -al le -rand y -o su -low key -weir dest -red bull -our y -n ous -wood stock -cre denti -nic er -g ado -aly ss -ap h -prepa redness -station ary -incorpor ated -dy er -sarato ga -cele sti -: " -antibio tics -or gs -inde fin -ap ron -и Ð -fif teen -no f -ðŁĶ Ŀ -ph x -te ga -m z -organiz ational -on air -band ung -pleas ures -mor i -secre tari -rac coon -ca shi -pil ates -k on -geof frey -la o -kam p -depart ments -back packing -an am -à « -crack down -aun ty -on do -li zzie -ph ers -cu n -ðŁĩ ± -k pop -pu t -inten tional -connol ly -bar clays -hs fb -swin don -u ku -s ally -a int -âľ ħ -pen ang -up lifting -epile psy -inter ro -bun gal -go ku -blue berries -ठ¦ -u ssia -sil ky -mou red -i stic -bri efs -me ats -go b -ch aser -state wide -pra sad -gl itch -ar in -ban ff -memb er -ðŁĺŃ âĿ¤ï¸ı -lo ving -hall a -ภ¡ -smo kers -yak u -scicom m -physi o -sw ol -lem ons -gel ato -ch ool -capit als -ki stan -ti ghts -spi kes -trav ellers -ik lan -commissi oning -ar ine -emabiggest fans -empha sis -front line -pad dock -destruc tive -ba ha -l inger -je wish -shet land -mc gin -mon key -ko z -s one -raj ini -te h -y en -c vs -masqu er -gir ly -we sle -was nt -bro dy -termin ator -gil le -mag gi -bir die -jeopar dy -cu bic -vm ware -intric ate -an up -to pia -east on -sab res -investig ates -bu sting -bil ingual -valent ino -in format -fer re -advent ur -hydr ate -for sy -az iz -san to -e de -whist ler -continu ously -d ham -un used -ji had -addic tive -vi dy -do b -i do -fi ed -ni versary -n one -fu er -ðŁĺį ðŁĺĺ -coven ant -prin table -immac ulate -o em -cl t -serv ants -consu med -un released -sc um -pack aged -me re -ìĦ¸ë ¸ -to by -ta f -spo ons -me al -f ball -fair field -jan et -silver stone -dart mouth -follow me -voy ager -kom bat -anni ver -ene w -mag dal -ho ve -sa th -grizz ly -car di -gart ner -sand y -kan ye -post ure -po ign -im pulse -radio logy -horiz ons -si am -aish war -= => -no che -tr is -el yn -com me -du i -ce c -councill ors -cudd ling -creep ing -loc ke -manag es -trans ferred -ne cks -di er -dan o -v ick -lun ches -d he -en sures -cri ss -ul ster -bann on -cont enders -sp am -sweet ness -med al -hon duras -arc tic -ultra sound -in fr -disco vers -ei ffel -ca sters -ru ben -du st -awe ed -atri um -lest we -se ared -ðŁĵº : -ty ne -ex changes -little mix -l le -astron auts -hersh ey -work day -kno b -so v -re signs -today show -der man -an th -af c -ta ster -sw oo -sa eed -per ing -narrow ly -rn li -best buy -panas onic -obst acle -farmer s -ðŁİ Ļ -pa wan -ki est -ang ers -absur d -oh my -sin o -pist achi -sp ice -giu li -prime time -ko w -k ens -ex agger -! ?! -u ba -midd les -ju dd -e jec -slam med -pen sions -of a -re create -b hp -xx l -liver pool -thre sh -pur ity -ni eu -hol ics -wr ath -ra do -gli o -am ma -dile mma -cr u -lets go -.... @ -âĿ ĵ -sugge sting -tru mps -hor us -f v -ic om -refer ring -predic tive -tar ts -ge tte -so ck -glo ssy -pin ky -al ec -thy me -ou ra -thero ad -pe tr -cr am -p fi -dv n -me ier -incen tives -tun nels -mobi l -rec ap -extra s -upri ght -rev amp -per severance -, - -ot p -mir ror -ar wx -ger ry -ma her -g or -hom epage -am is -ag ra -made le -best friend -sirius xm -bun dles -admir ing -t dsb -ðŁį ģ -ch as -slow ing -ro h -wall papers -â̦ / -tek ken -gang s -tal a -lind say -shou l -line backer -tool kit -ur anium -caly p -ab rams -mat thi -ðŁı ¿ -hon ourable -da yo -ver sail -tan k -st c -fr itz -spl end -pat ag -anno yed -on day -devast ated -chattanoo ga -national ism -mas sey -jen n -tail or -dev gn -org ans -zu cchini -on fox -sat ire -wex ford -dis grace -no to -vol ta -âĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı -à ¶ -home owners -poin ter -m cr -au sten -day sto -mo ons -pal ma -gra zing -e so -influen cers -shahid kapoor -compli ant -measure ments -develop s -y d -par l -p vt -rand olph -tor tured -ger ald -eli as -deepi kap -war mup -hick ory -g ap -co ffin -am our -re neg -moun ting -seven s -ig le -hi er -dec ad -tri ght -esc apes -wer ner -t fl -ful filled -ni ger -sour dough -re aper -choo ses -spin ner -week nd -fil tered -sh uk -kat i -old ham -open source -kh anna -at elier -conne c -opho bic -gla s -complic ations -ar son -counc ils -sm ol -as sy -lur king -ling ui -han ks -e in -Ù ħ -ru gs -n guyen -nou veau -men ace -le v -alad din -ru ining -round about -k m -con or -shoo ps -may day -traum atic -prab has -ka iser -k ita -rou ter -pe dro -re tar -stun ner -spani sh -distur bed -acade my -e learning -wit ty -sen g -fer al -av y -sta b -ke aton -ur du -ko to -hu i -coo ke -ari an -the personal -u ma -se ap -a sting -rhetor ic -hand writing -munici pality -consor tium -ðŁIJ Ł -glasgo w -ra ya -eli za -polym er -bro th -prac ti -correspon dent -addic ts -gay le -ail ing -o fe -p li -hear tw -st itch -sight ings -prie sts -sam o -slo th -good wood -roc co -sab c -summ it -l ace -pres ley -itt en -cin cy -thepersonal network -s week -pe gas -af con -regi stry -ci m -le th -dic ap -cand ice -flu ent -sm ack -pede stri -al oud -car ac -priyan kach -p gh -ir ons -dol ce -lat via -dece ased -thero ck -cla p -cen e -fo am -morris sey -gre t -essenti ally -com cast -be agle -argu es -ing ed -- â̦ -sa g -ha san -ðŁĻ Ĩ -ðŁį ° -nh ra -kann ada -indic ators -on er -bri xton -at as -screen play -sor ority -sha heed -he em -class mates -tain ment -es i -breast cancer -zucker berg -aur or -en cia -ref ers -kae per -vor tex -com part -lym ph -photograph ing -ste ff -rest ling -par sley -mom ento -th man -lac king -du tt -ocu lus -fin o -fren zy -ra sc -der n -dis missed -noo k -met gala -sh ill -rapha el -maver icks -exhib its -eag erly -c pa -amen ities -. âłĢ -exo dus -ern st -lit a -deal t -womens march -i ain -score board -campe ones -c en -ti ki -garri son -fidel ity -bra g -road map -psy chop -lo e -ble u -ðŁijĬ ðŁı¼ -sau vi -spr inger -temp tation -ru dolph -ac ura -wic z -parach ute -stro l -len ny -zi k -dom s -nb af -al pac -vivi an -ro ve -pre et -perpe tu -sna ke -air soft -infl atable -prin ces -ati e -ffe y -pati ent -m ire -chel le -sl ack -groo vy -# : -up loading -!!!!!!!! !!!!!!!! -siem ens -provi sion -v fx -need y -f ats -to poli -bhu tto -sa thletics -alu ms -t winning -south western -adop ting -last night -man ne -la ga -tw ell -ac ia --- -- -eye wear -hur ley -fle e -sa ch -pe cker -cost ly -is k -cr ates -polic y -ero sion -in go -wer k -ðŁIJ į -torto ise -therap ies -inter net -chihuahu a -ri ps -fre i -ed or -tai ji -t fc -do d -demp sey -christ in -chen g -hi ps -gra eme -com passionate -cavali ers -histor ic -soul ful -crimin al -ja c -vin ci -expi red -sur at -turi smo -k ona -se aweed -ber ts -le ica -expre ssing -a al -wor t -break fast -her ring -am used -rhu barb -mar tian -cospla yer -y ash -stri al -ra ul -refer ral -dw ts -j w -ad ler -cur tains -gu r -val ence -tyr one -sw fc -coach ed -re born -diabe tic -cho ke -nor folk -investig ative -ðŁĴ¯ ðŁĴ¯ -z id -v mas -phi e -objec tives -âľ ĭ -over due -di vers -mat su -ðŁİŁ ï¸ı -casu alties -ภ§ -al k -stand ardi -re alist -arti facts -pand or -ke x -in vin -( !) -ine y -par aly -mr t -fay e -the voice -on ga -de ed -skin ner -az wx -speci men -priyankach opra -nu evo -bar kley -toulou se -resu mes -football ers -cit i -fe tch -è re -lestwe forget -ðŁĻ ĭ -ch unk -dri fting -manipul ation -equ als -pu tt -ky ungsoo -âĿ¤ï¸ı # -ela stic -par ano -fo y -do ping -cin cy -ss ler -interrup ted -al ay -ado res -ame thy -con voy -ãĢ ı -Ĭ ãģ -black list -gener als -sa chin -bru shed -oun ces -non stop -illi ams -bt sarmy -u av -ru ff -bur ma -bi k -defen ce -schul tz -bo asts -lonel iness -go re -trans forms -alum na -@ @ -ra ppers -ne hru -car o -himalay an -wearab les -ge h -pepper mint -re development -flam ingo -cos by -big baldhead -ag ri -bare foot -sco pes -re gram -gh ana -ðŁİ « -i heart -sa die -carri e -microbi al -ku ala -sk ater -quer que -âĻ © -gen res -reas oning -ch ased -as o -sli pped -en can -vam os -ker s -ad verse -mo il -commod ities -with you -sil ent -hy pe -an de -am ination -whi spe -lit z -âļ½ï¸ı âļ½ï¸ı -ri ff -pp y -lam bs -gan esh -ab sent -regu lator -marse ille -en roll -par cel -wa p -by rd -ðŁĩ Ń -tu ber -country music -par l -contro llers -responsi bilities -we y -ch ate -montene gro -chic o -mil an -l ms -tra inees -appropri ately -un certain -popp ies -ed sheeran -nutr itious -gar o -deut sch -awe some -ãĥ ¼ -comfor tably -land marks -et i -re usable -daniel le -ro sal -co les -just ic -c cs -f anny -ni m -mc u -clin ch -at ene -mer ge -im db -ang lo -uc cino -pan ini -an not -bur berry -feat ure -predic ting -fashioni sta -s ask -imag inary -mm o -south sudan -spe ar -hu bble -jo inthe -coyo tes -sli go -ko dak -sit com -polaro id -roo ted -corru p -ðŁĻĮ ðŁĻĮ -bris ban -at z -ah l -re my -tal ent -aval on -ra da -pau line -locom otive -go ons -ne mo -maser ati -ic u -stu tt -histor ically -sm b -pres by -avo id -so oners -rhine stone -w ad -ri sing -tro t -mo des -reg ent -optimi ze -re ece -sm u -ver ti -newyork city -cor tez -ra c -in case -sin c -fiel ding -e tta -tiff any -al monds -sad dle -k rat -mat ter -g low -star ving -gl o -cra ppy -sl ur -st d -monit ors -recei pt -maymay entrata -mc il -un is -rain bows -cal dwell -pacqui ao -j op -a fe -hoo k -es sen -wiz ard -medi an -fla ws -com s -âĿ Ħ -ing h -ha ynes -anton io -tem plates -ou ter -na w -cardi gan -bel grade -ðŁĴ ī -hom o -a ise -ro pes -no ve -what you -tri gge -concep tion -ad ukone -na di -fri ars -sw er -adju sted -hot line -san ity -kau r -down loading -c gi -ten or -eth nic -app alach -ภ¸ -pa g -gol ds -on set -investig ator -car tel -peace fully -jarre tt -cat alan -poli o -n um -fru stration -dhar ma -my life -âľĮ ðŁı» -aber deen -mu sa -bin der -spark ly -fle eing -instin ct -co ping -domin ance -ill ers -er a -u conn -lo oms -living ston -gal i -he s -c ma -bel a -se ley -mon k -la ch -mar x - ´ -m erica -woman in -es sex -ra ina -jim i -nep tune -z ack -chine se -mart ins -chand elier -her n -with us -ear l -asph alt -modu les -st p -ul la -psychi atric -mile age -captiv ating -si der -men to -mor t -tran ce -tal bot -ab by -ì ĥ -âľĮ ðŁı¼ -j ak -daw n -turn up -scre wed -fe ds -blue print -ðŁĴĸ ðŁĴĸ -har sh -er os -insom nia -ban kers -ta emin -mis conduct -hu mber -gi di -edu ardo -con a -musc ular -consu ming -ra sh -don nie -di pped -col lie -samu el -melt down -ðŁĺįðŁĺį ðŁĺį -me z -exam ining -schwar tz -pri stine -ðŁIJ Ŀ -ve it -ful filling -an esthe -gue sses -dra ft -som me -soli d -pati onal -ho ped -evolu tionary -all er -enter tained -sli ps -lud wig -conclu des -sen sible -bon net -cra ze -tra s -haz ards -const antine -ed ics -star trek -to c -occu pational -in cheon -deepikap adukone -pizz as -new comer -de part -oppre ssion -ebon y -foss ils -tro jan -el en -ste aks -k hou -positi oning -ug by -red cross -ak h -dol ce -us mnt -pp en -dil ig -ma vs -call er -cost ello -⼠Ħ -dy n -thing s -rhin os -a xi -sar kar -con vocation -att ers -ss ss -fun gus -eu gen -russ o -squ at -w sb -eli on -william sburg -s off -defici ency -be arer -o kin -key stone -t wain -cal ming -break able -wa res -horser acing -com bs -bun ting -u it -t land -ðŁĴĻðŁĴĻ ðŁĴĻ -ga stron -sab ot -ick ers -commissi oners -sen ate -ii ot -ath ena -nit rogen -an tony -ero tic -di alo -mis sou -hypo cr -âľ Ī -kaeper nick -can v -d roo -clevel and -o sh -mon sta -stefan o -^ ) -sh ul -po ison -ha e -commerci als -ma ul -nit ro -co worker -alo e -vap or -t ents -russi an -qu id -question able -mid get -po ker -girl friends -sin the -erit rea -ten ure -depos its -buc keyes -spot ter -theod ore -trin ity -joaqu in -u cci -follow the -caf c -mp a -ðŁIJ » -plo tting -dom ino -ta ek -sion ally -dicap rio -pa p -car mel -ig er -bt cc -beth le -www bigbaldhead -foo die -bagh dad -mason ry -off ended -à · -ภģ -sc ro -vers es -ori ent -ar ches -pi yu -know your -gre e -ta kers -gu ard -dish on -bucket list -bha fc -war dly -ðŁİīðŁİ Ĭ -leigh ton -pe w -stra y -assaul ted -in hal -ly fe -amar keting -l x -kat z -ubun tu -me o -carto onist -turno ver -mi z -dis like -mul len -mo f -bl and -hi des -emer ges -chori zo -truste e -ma hog -lan sing -paralym pic -fa int -fa una -ch al -sn ar -cat h -bent on -cast illo -sli ppery -apric ot -oec d -bar o -l z -he ming -clow ns -co workers -peru vian -commu ters -y ell -ðŁļ ´ -under ing -v j -tt p -fli pk -w ana -soc ent -Ĥâĸ Ĥâĸ -ठĤ -oo sa -jag ger -di sm -e less -d ham -cali f -a official -ec lip -harro gate -gra pp -com rade -n tr -concentr ate -thi ghs -bit coin -bel arus -ë ĵ -end uring -now watching -industri al -pi p -ar on -ar at - ® -whit by -oooo ooo -sa ree -tic als -mis leading -yo on -year s -sle igh -roman ian -sciss ors -vam pires -ac up -ab ba -th weeksary -cent ri -fl ye -u o -c bi -bu ena -sin d -mar ino -bur r -re building -ठ² -anniver saire -ac ca -ðŁĴĢ ðŁĴĢ -gett ing -tu lips -wolf pack -âľį ï¸ı -more than -ta kin -ð٤ĺ ðŁı» -u be -mon ic -dou bts -mo wer -co balt -don ne -specul ation -argu ably -kak u -htt ps -prosecu tion -din ah -stam atic -disclo sed -bever ly -fl wx -cra bs -extraordin aire -war mest -imper i -o logists -trac es -par c -lake side -am r -ter i -hour ly -domin ation -ar row -shrews bury -ance stry -wr angler -trigge red -pen sac -roo ster -survi ves -a on -bo ko -val or -love is -la g -pe y -fo cal -out laws -bl anc -artic ho -wit s -marsh all -die go -support small -u ca -sa h -je et -syn ago -gover ning -ðŁĴ ¬ -sal ads -cre ate -miri am -cen sored -ami de -no u -z eta -allegi ance -* ) -bl m -ric an -pa stors -oly mpus -blo c -whir l -star ry -pr one -y k -p ne -congratul ating -be v -so ber -love island -sa ir -an ing -tutor ials -q e -lun d -in ist -cle ver -taxpay er -ali z -wren ch -dd ling -cap ri -h pa -ðŁı» âĢįâĻĤï¸ı -na j -o j -futuri stic -jelly fish -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ -cel ery -plan k -fil a -ne me -un healthy -lec tions -ðŁ§ ¡ -rit chie -n ws -mi kha -wonder woman -âĢ İ -hip stamatic -ka g -ðŁĴľðŁĴľ ðŁĴľ -poul try -mo w -wor ds -lo ff -ðŁ¤£ ðŁ¤£ -relat able -re mixes -keny atta -ke m -re signed -fo d -stra igh -j lo -hu tch -box ers -colle en -mag s -instruc tional -ko l -attrac ts -pra g -account ant -go ggles -br u -th ole -mar row -leu ke -oc to -pon ds -bubb ly -he ist -ìĹ ij -im p -a har -ha unt -hall mark -psy ch -kkkk kkkk -col umb -jump suit -cost co -si delines -ag gies -over turned -ni b -key chain -fu k -f af -mi am -assist ants -cy cled -ri der -dam mit -red wings -mag es -kin s -ì Ĥ -ho d -son t -carol ine -" ' -cu le -bra id -fel ony -ar ities -ruther ford -depic tion -isab elle -ro ach -k day -fifth harmony -em y -li gam -bari sta -albu querque -gro ss -ðŁį º -oo ks -ðŁij ¼ -dun can -try in -jag s -g ould -li tho -âģ £ -а Ð -sam my -tun g -cas ser -apo lo -aaaa a -man g -as ics -sh en -p ye -tur bul -ss p -saint sfc -on lin -n anny -he ster -do z -à¸ Ķ -th read -ren ts -kh and -ðŁĴª ðŁı½ -un conditional -rob son -car re -ph on -sacrific ed - £ -auto s -par ker -oc a -log in -kee gan -hard cover -dough nuts -ðŁĮ İ -spit fire -refresh ments -saskat oon -commod ore -j f -rub ber -halam adrid -child care -stra da -io m -ri k -dak ar -ther mom -cro pped -gar u -ali k -ven i -i ft -si ka -ritu als -z ul -e ch - © -su dan -l land -i me -do cker -ì ¤ -fe ared -fa o -wal ter -no g -mutu als -l h -ali gn -mon ia -concep tart -ðŁĻı ðŁı¼ -sco e -compet ence -sw ine -ly me -laun ch -green er -abstract art -inqu is -gran ada -ga elic -flu ff -d backs -grave yard -ba be -acade mic -adventur ous -joh ann -~ ! -bi bi -| # -pl ings -gett y -as b -âĿ¤ï¸ı @ -staf f -religi ons -bang or -world bookday -me gh -de vin -ash ore -meri dian -gi thub -qui z -all stars -be stest -ir resi -ack er -do te -war rington -pol ly -newor leans -cr ou -wi gs -che y -smithson ian -la sag -de tour -bor is -stra ps -mari ah -inten tionally -ko h -ðŁį ¸ -ssi an -mar issa -cor al -episcop al -casu alty -tom o -supply chain -sam p -on go -ro o -cavi ar -p fw -clau dio -buff alo -s ations -mat ty -snap back -l ds -al arms -mat te -âĺ Ķï¸ı -conditi oner -d ors -he x -fi zz -a stri -sus sex -secur ity -qa eda -all star -cocac ola -as one -cl icks -sc ans -mu te -he avier -ðŁİ § -âĺ ŀ -lv l -book boost -youtu be -fla shes -f jor -c su -explo de -do dge -cair n -gonz ales -th ill -pel le -hart ley -renew able -re tin -e stre -costar ica -shipy ard -nc fc -pri ya -a ghan -an ath -plu gin -co rey -re bound -or u -kat rin -hor mone -gi m -mahin dra -s sus -park land -har per -fanta stic -infer no -ep ilo -wrest ling -fe ct -c it -ac oun -to ssed -monu mental -char tered -bu st -pe tra -âĮ ļ -wildflower hour -sweat ers -* . -bl er -ate ch -go wan -demo graphic -bra l -suici de -renov ations -vu el -sin ister -ar mani -miso gy -ph arrell -nap s -un iting -crusad ers -cor gi -insu red -than i -no or -g q -d ada -bicy cles -snu ggle -sch an -ten berg -ss al -fe mme -bo il -½ ï¸ı -re ap -occur ring -hus sein -divi d -sto ke -sh alom -na ia -o lic -frustr ating -Ù ĩ -ig s -gro ver -scen arios -n ds -bru tality -med alli -bu on -sas s -skate boarding -ony x -lor ry -ny u -gau tam -mm ings -gu g -end i -lo thian -comm ando -chal k -ph ora -asse ssing -ti gh -crun chy -ad ay -is l -ci ara -pilgri ms -kam al -p to -brit anni -t ani -sm c -l ure -app store -ab y -golf ing -cl c -fa u -an as -shu tting -regul ated -carn age -scow boys -all enge -c ma -humbold t -rel le -ku mb -her i -refin ery -sound check -d wayne -bos nia -i sp -the alth -anni v -relev ance -my a -bag gage -dre ad -s bc -th ed -bu h -hi jab -lo id -ke w -c te -respec t -lovel ies -cu bes -celebr ate -dir t -sav ers -_ , -gar ment -pulit zer -mas jid -beat port -al arts -encry ption -s ner -ple ads -found ry -sym metry -ru mi -birth place -scallo ps -supp le -pivo tal -t ati -no de -so d -pro xim -tr ics -col dest -bren t -mand u -cla ir -e ach -and alu -hi ddleston -ðŁIJ º -mel ts -v ance -pin n -se ments -scre ened -sa chs -o bl -ic ha -âĺĺ ï¸ı -school ers -heal ed -lo gged -ð٤ĺ ðŁı¼ -ic us -bore dom -b ish -b ffs -tal king -sure sh -hoo kem -de on -de fl -ei leen -ðŁį ķ -women intech -ri sotto -rang er -adverti se -ภģภ-tel ly -la go -dart moor -d ong -sk ates -lo go -un ner -mail box -ma sala -lo oooo -amethy st -che wing -c bb -australi ans -rc mp -game art -# ... -kor n -extre mism -fruit ful -anci ent -pu bg -pol ite -wh it -mur als -m gr -line man -dav ao -ste ms -ten nis -av age -tu pac -gigan tic -hs bc -auto biography -up the -ี à¹Ī -re gal -fig uring -ku l -mis sy -hoo p -gra s -for ums -back lash -abduc ted -p nw -min ic -bu tt -bott oms -at on -ven g -ðŁĮ ı -del aney -prab hu -fan club -over haul -health ye -sy no -aa f -ren amed -kim i -un cle -man city -se u -qu anti -este em -um in -en zo -mel vin -under go -j har -far ah -coast ers -humph rey -mh z -children s -^ . -d hi -disrup tive -integr ating -r nb -over sized -a ide -ne au -docu mentation -ðŁijĢ ðŁijĢ -pal o -hear th -ri yad -pun ctu -abc news -secu res -boy band -bir ch -ju co -tra ff -legislat ors -bay a -ãĤ ¯ -no ises -collec ts -s warm -k ner -bi shops -stur geon -snapp ing -mo l -fre aky -chair person -tro p -lyn ch -car cin -art sy -e sto -cha i -fl ur -inv ali -sau sages -im el -j or -fun fact -wit ter -puni shed -ac ons -h ya -re versi -em c -dif fu -z x -sp aw -cla d -d mit -hol land -fre sco -pay roll -ab undant -stu ffing -mor o -c ny -boy cott -wend y -ele ven -pro voc -pil ot -tr x -be ad -climate action -ri on -assi e -ì ĸ -o sm -islam ic -ho ar -good reads -al ici -afterno ons -spoke sman -jo lie -it as -masc ara -âĻ© âĻ« -pre vail -beetro ot -lu jah -k li -dod ger - » -ru le -l n -scre am -ho bart -col bert -r tc -er m -pat ro -quo ting -s live -que st -non fiction -semin ary -prosecu tors -ve st -express way -g ge -nau tical -et f -ðŁİīðŁİ Ĭ -dur ation -cha ired -the film -fab io -she h -can o -ðŁĴª ðŁı» -with draw -! :) -cor pus -phen om -yel p -la wn -ent om -snapp er -but te -pin ball -pro xy -libr e -alle vi -n ada -gabri el -fo wl -eure ka -daph ne -tu nes -pun ched -wh ore -jo g -ren tial -man ners -o pe -wh ufc -gu th -revol t -sne aker -philharmon ic -ho ste -sovereign ty -ðŁĻıðŁĻı ðŁĻı -fish ing -sci art -fe ta -i pp -dump ing -kel own -gir i -dig its -sal u -san jay -twee ters -sp as -col chester -sc ab -ma dd -๠Ħภ-Ä ĩ -ged don -march for -do p -maure en -un plugged -di do -fashion blogger -up a -mex ic -tar y -pol ye -jame son -v t -grin der -mad dy -consult ancy -¬ ë -leagueof legends -ac cents -um ni -jane iro -tu ss -h ens -ampli fier -to shi -pret tier -pre vents -new town -red wood -vant age -ball ard -ar tof -a she -a sion -lac ey -ap at -gro ve -ภĦ -rw and -real tors -tra itor -bed ding -ö r -zi on -fla shing -cam pan -boom er -secretari at -ab ol -liti gation -cont amination -se dly -shred ded -in for -do herty -bench mark -ro che -skate board -sho vel -i zz -to pper -o ster -laby rin -autu m -k ong -hum mus -vi z -tech news -kla us -am using -socialmedi amarketing -i des -cast ell -ste e -underestim ate -cal ab -pa ign -b illing -unanim ously -g mb -fly fishing -hath away -commerci al -colour ing -skul ls -pivo t -te p -tb c -motor way -x press -construc tive -pu k -under lying -kir sten -mani ac -cha o -se ma -chiff on -ðŁijĮ ðŁı» -ver ona -kom o -stan doff -wi ped -c ated -bla ir -wor kin -m sc -bethle hem -swi pe -unexpe c -pe es -pe tri -orig ami -ðŁij ħ -mex ico -flav or -ru dd -cannab is -mar u -ri ddle -wor shi -sil on -sch at -ap se -tang er -bi ous -e er -questi oned -o zar -dan k -angle sey -char an -bak u -compe ten -re pri -bat ter -sa xon -cal ves -leng ths -$ $$ -âŀ ¡ï¸ı -immer sion -ga unt -car ry -cy to -b anda -shu tt -experi ence -el gin -mous se -ta z -ê µ -in correct -en z -b ham -mor on -so ver -ar un -ti pped -la ble -de arly -bau tista -í Ļ -mor tal -woo p -dt la -sho cks -dav os -ðŁĵ Ŀ -swim wear -her man -ðŁijĩ ðŁijĩ -z ir -neglec ted -grac ed -campu ses -av s -ar ora -swach hb -live pd -ac cra -enqui ries -shoo ters -kur t -vancou ver -brad ley -gar da -g ü -ol la -attrac ting -up ton -ne win -lu mia -furn ace -ev ers -e on -sw a -roo kies -a oc -v ss -bris ket -tor ch -yo da -heart land -tac o -ph ony -food bank -ab bey -bab ylon -u y -gre ate -expre sses -d andy -sc apes -survi vor -ron d -e ci -ha vin -ab el -chil dish -tor que -wav y -ur self -kanye west -year of -ale stine -o brien -al fon -sk ag -kore an -anchor age -val eri -de w -ðŁİ ¨ -land slide -car ole -christ en -go phers -af i -priyan ka -q q -power of -it te -pc so -tw ol -pr y -intellec tu -guer rero -pi les -wish list -w ren -time table -ë ı -prodi gy -gibb ons -. / -ne ur -anz ac -mur ray -vie st -pla ster -la ir -art gallery -inter continental -g br -bell ator -nam joon -mam mals -am el -y aw -saras ota -cam ar -bud ding -sum mari -aco sta -la sh -ey ou -post graduate -instruc tors -ti g -const ant -were wolf -ic os -cla s -glen n -bud ge -ðŁĻ Ĥ -er ta -sta ins -persecu tion -cumb ri -o ch -syner gy -hu ang -scand in -mid terms -comment ator -regar ded -perpe tual -bo iling -al p -lan ge -sch le -fac eli -twee ta -ri dden -ok toberfest -charlotte sville -ik lan -jo u -ch atham -b sc -ðŁį ¦ -stra uss -mel low -xx xx -happy hour -re actor -ww er -distr action -at orial -ðŁĴª ðŁı¼ -twin peaks -fay ette -a or -ko k -bro om -sy fy -ou se -am ag -Ø · -ubis oft -lu lu -hall mark -stu art -it ya -si deline -venge ance -re lu -sex ism -boun cing -un ites -gu stav -te ssa -stu mp -pro clamation -ima x -divid end -col by -ðŁį İ -play wright -un safe -co smo -ðŁĩ²ðŁĩ ½ -cup board -constitu ents -ang lia -ram page -ðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺį -than ked -take aways -shro ff -de bat -kh ur -conduc ts -format s -à © -port age -graph ers -u ten -pre m -mo ines -condem ns -s ous -l ps -f cs -deal ership -leuke mia -bure au -ski d -guardi ola -ca ster -thir d -avoi ded -en cyclo -c sr -vi xx -analy zing -she ar -dulu th -shap iro -chan ting -stre sses -as be -mil itia -ãĥ ª -col lin -arsen e -sure sh -teach ings -yi xing -sh ill -nu des -sv u -clear water -war ped -pro life -artist son -it u -versail les -galax y -ax el -spring st -cal a -hu hu -sc u -commit ments -exe ter -poign ant -mo tion -conserv atory -row dy -rec alled -mu sk -emb elli -so the -âĺ Ģ -sto pper -sch ild -to pe -el mo -zi el -j om -barn sley -snow den -on tour -jour ney -hills borough -par ole -w ts -mo ving -ag ility -tiv o -ff ers -kindle unlimited -g wen -ann an -ah mad -tex tured -hepat itis -dra m -insi ders -tis sues -ãĥ Ħ -fc barcelona -cr atic -na acp -pe can -f gm -custom ize -concer t -g sm -pe g -p one -justin trudeau -super cars -happy holidays -bu lar -ado x -lap tops -digital health -destin ation -gradu ally -áĥ ¦ -popp y -ss l -inhi bit -star light -of fro -glo omy -x per -hal der -im plants -le to -hass el -a as -un told -en ci -liber ia -or an -con tests -il ah -sma g -sc out -mari anne -cr yo -schedu ling -lo s -kan e -stutt gart -ne se -law rence -da in -pho tom -car ou -ภ£ -g wy -national dogday -roa sting -band camp -kentu cky -stret ches -ke rel -ca she -ãĤ ¸ -sta x -tran si -dog gie -at ric -hal le -ci vic -brow ning -lein ster -cat day -high land -joy ous -in cumb -or lando -ro mo -col ton -del ta -car ab -ro tc -aster oid -goose bumps -mo logy -yo ko -an ds -tomor rows -red carpet -sm p -ca sio -ðŁ¤£ðŁ¤£ ðŁ¤£ -se au -rejec tion -rot ating -bi partisan -th un -mat i -bon i -ol l -ener gye -do it -l j -mother hood -lou ise -neck laces -el ite -ni x -l cs -en v -gl u -le sh -cran k -su sie -m clau -so tu -crow ley -rat ri -use d -bre ton -alfre do -ye o -travel pics -ti pp -elli son -sax ophone -me red -heu ghan -ta ine -f es -vi ro -suppo sedly -i as -dige stive -y le -li zzy -wildlife photography -bri anna -west field -ra ined -am her -ðŁĺĦ ðŁĺĦ -distribu te -bott om -pre serving -oil and -craf ty -de scen -col ling -shakespeare sunday -r wc -ang led -ci an -t ations -mon tage -me yers -france sca -ðŁĮ · -wi ggins -san ford -volunte er -car ra -bar k -vari ed -pl in -am u -kap il -rock ers -qu ind -br ane -in mate -ent al -impro vis -michi gan -re tweeting -progre ssing -mercedes benz -smo ker -physi ology -dor ado -watt pad -h wa -sr bachchan -w ga -vol atility -hi re -ac ap -wn ba -hein z -stit ches -kidnapp ing -bur ys -lim b -f itters -thumb nail -ton e -mir and -desi rable -ad dison -tar an -tamil nadu -spec tator -soci ology -amit shah -remo tely -âĻ ¦ -ham id -r ds -g lee -smooth ly -sch ro -er c -lali ga -he als -us f -ni shi -d hu -un il -h le -tro mb -bhu tan -pilip inas -se ung -whit man -te y -min ce -snow boarding -re au -k ker -av o -zach ary -ran veer -ti k -gover n -qu al -beck y -anthropo logy -att en -grocer ies -de bit -war p -sil icon -hawa ii -ðŁĴ ħ -pomegran ate -pe er -orang es -people schoice -end ure -ðŁĴĽ ðŁĴĽ -ãĤ¹ ãĥ -ac ial -a haha -stu k -imper ial -bl ond -pow der -kno ts -vin ce -wood lands -den a -watch in -mat cha -ma hat -galax ies -middles brough -k ö -stre e -resc ues -wal do -lero y -desp ic -real ities -tm nt -ha q -un o -pe c -bolly wood -blin ds -design thinking -he ms -and hra -ab sen -fan s -ste ch -shire hour -bla ine -shak ti -pu rely -ðŁı ı -tra fal -ke ynes -gr ate -to bias -spon taneous -satur ated -caval ry -pri sc -ðŁĺ ij -wh t -pas si -~~ ~ -vir at -patt inson -la o -weir do -sym pathy -ju da -occa sionally -cred ited -stat u -es co -hil ly -esc ape -dischar ge -se er -may nard -sud bury -z lat -or al -we er -encoun tered -sm elling -over sight -ê ¸ -that cher -mack ay -you can -fre ep -freed oms -prophe cy -ho e -ishq ba -dra ke -qu its -pel led -tur k -o vi -wesle yan -new music -leg g -ch eng -h illi -ay y -pan ties -ad versity -ad jac -vaccin ation -ju ke -ga c -exce ed -time sof -sta ining -ep cot -v ital -up ward -bethe sda -apar k -ma hi -camp fire -enchan ting -rha pso -h z -na ver -fa x -vali dation -ac ad -ny r -as ym -coordin ated -depar ted -all ery -var ies -spr ite -chap lin -ss occer -s wat -bre t -relu ct -tunes app -super star -reminis cing -o co -home grown -dough nut -un canny -la pd -thyro id -! âĿ¤ï¸ı -botan ic -bre s -sp ade -i ste -echo es -du lil -bur sting -qui ero -ðŁij İ -loy ola -amuse ment -ha ils -sleep y -burgl ary -âľ ı -ro gue -cot land -mo ors -low er -wic ked -ðŁĶ Ĭ -compet iti -argent ine -yvon ne -karti keyan -ili ary -gat sby -precin ct -six ty -na ji -cam s -practiti oner -ðŁĺ³ ðŁĺ³ -pu ne -neg li -juli en -inv aded -cali br -cla m -duba i -mu k -lan tic -produc t -fe dex -ï¸ı : -eu ra -dari us -s ling -virtual reality -home stead -ðŁı³ï¸ıâĢį ðŁĮĪ -pac ed -in ha -pul mon -la zy -premi ering -ma stered -in he -con gregation -ba jo -sport ing -new jersey -hor ny -lma oo -leng thy -du t -yo gh -swe aring -philosoph ical -pap ua -in ski -know les -dy ke -âĢ ² -to ken -mc guire -ri ot -probab ility -mc con -gro s -su mat -c ite -da a -on da -mad dow -che w -board games -spar ked -re claimed -ad hd -ny se -imwith her -equ inox -boo ths -balsam ic -ha zy -dor chester -ag os -se aw -moder ator -seri ea -ander sen -pilgri m -âŃIJ âŃIJ -itch en -hal li -x ton -nathan iel -mun ition -celesti al -ga f -zo om -mark le -pen thouse -cal e -s fa -bar king -tu cket -em ery -cal orie -li que -ad ar -mc nam -tor tilla -wood pecker -mo town -bad ger -ayr shire -scram ble -dd ay -cra ziest -per rie -cho co -cast e -i ot -wre cked -selec ting -uss r -gra ft -pun t -lab ou -ir st -ba ek -Û Į -su ki -que u -ach at -te ster -aug mented -wc vb -sin ks -ðŁĵ » -ra ke -inter ne -be cause -belle vue -une arth -light en -ðŁĺ £ -turn around -labe led -unemp loyed -twitter kurds -le ia -h ye -great er -ðŁIJ İ -tim ed -i red -e tt -limit ations -cab e -s out -bee ch -anni hil -re trac -yo ona -ang er -den nis -supp lying -di z -" ( -sc ur -gun man -su ho -sauvi gnon -ภ¥ -wi ley -land on -choreo graphy -pre historic -ðŁı ĥ -var gas -assess ments -pinn acle -di i -chamber lain -ì Ī -v p -present ers -deut sche -sun shine -sal utes -r one -bu siest -- .- -motor ists -hemi sphere -al wx -ps p -ow a -den ying -cho c -gu tier -han uk -mus kete -jait ley -se wage -t ame -thin kers -shi m -se quo -pap ar -middle east -k wa -ke g -patag onia -no y -bar ça -take off -he a -à ¬ -n sc -g dc -ðŁij Ī -mou stache -mel ania -thr a -â¬Ĩ ï¸ı -pier ced -ze us -fon ts -ber a -it iner -q atar -contr ary -ire land -i fy -ou los -commun al -fin s -un paid -pa a -ðŁijĩ ðŁı» -ri os -ou p -f iller -cafe teria -à¸ Ń -kas i -cali ber -z ulu -v sco -ts ford -dragon fly -smo kin -pi st -psycho logist -diplom at -we bs -buc cane -à® ¾ -motiv ational -du ne -ba e -c fs -with out -er on -i ac -ate e -pen sion -fra zier -en sis -sk is -par ting -ger y -territ ories -nach os -eni ght -ever lasting -msd honi -tel e -sp un -po di -sab ah -environ mentally -ce ase -beau mont -mar ta -kel vin -ho ff -sun il -n da -co b -sh ale -ree dus -un boxing -u bio -re opened -n all -capsu les -mar r -himalay as -swee ter -ja z -f mr -twee ter -dha ka -na u -de mi -d fs -ta urus -fad ing -it utes -ci p -over flow -jef frey -don ny -car tunesapp -ðŁį ij -prefe cture -danc ed -c pt -ple asing -ital k -earth quakes -ul ation -hi o -ãĢ ĭ -ant an -nutri ent -de ere -selec ts -enrich ment -r iti -tram pol -bl amed -j ia -contribu tors -chesa peake -pi geons -tribun al -mad uro -w su -ilo ve -effici ently -dar cy -war ms -ar ra -ec u -ho wer -strugg led -rajini kanth -ðŁĺ¢ ðŁĺ¢ -hou sing -str at -eli x -disp ro -raf fic -thi erry -na sty -c fb -staf fing -al ma -back ers -hen son -sky walker -reale state -roo s -ness y -chan ce -cair ns -c ci -pe dal -ly ft -cross word -wait er -only in -kru ger -k ir -alej andro -car tier -car rera -re paired -ou at -un clear -un breakable -today in -qu eries -jo dy -gen ital -win ner -to l -kelown a -fascin ated -ãĥ ¬ -sris ri -squ ared -spr ung -negoti ate -priv ately -av en ->> >>> -g ical -gav in -chester field -zu mba -or r -nat alia -impeach ment -mn l -car at -criti que -credi ble -trac y -tan i -musi k -jig saw -gam bia -tol kien -fe u -as per -sav ory -fo xx -f itt -mar lon -l rt -v ell -p br -imprison ed -i om -chu l -wind shield -kay e -ba a -chor d -s art -al gon -minister ial -nat geo -la zio -nor ms -ðŁijį ðŁijį -lic king -fut bol -un sung -dalla scowboys -sh red -distur b -dev ine -be ards -ch f -b day -ro sso -ig or -ay i -si ren -k air -sti les -ro f -mag nets -un cover -mou se -bang ing -si ghted -spe ople -impac t -row land -kir a -environ ment -love the -p sis -mish ra -gl endale -ca jun -o che -de ception -sex ist -stra ws -s ga -buff er -apost le -sp l -pop up -ðŁļ Ĺ -r g -up er -ball in -i dy -occa sional -national park -ðŁı Ĭ -u an -innov ation -ภ« -te aparty -re tte -counter fe -b ha -rec s -ig en -ðŁĮ IJ -humming bird -cu r -ha ven -la zar -pue blo -: : -zi onist -op ath -inver ness -promo ter -carto on -cabine ts -mahog any -surve ying -r ational -feel ing -testi fy -so w -oc on -ภ¢ -ne el -mar is -sol itary -che mo -rad cliffe -sim ons -ros ary -new er -jo die -re tali -pra wn -pad dy -hen ge -k ala -im plant -at y -bren twood -par adox -ene z -re designed -p our -wy d -al de -௠ģ -sol d -biomed ical -๠Ĥ -tt tt -mat teo -ys er -new ton -de bun -ner dy -loo l -wo on -elisa beth -ec c -wh i -ach o -salv age -sal aries -qu ity -navig ating -oph thal -con soles -re built -o pec -ast ers -sho red -set list -kathr yn -rhy mes -re visiting -ash ish -li ft -re post -sole il -âı ± -weal th -sa at -we c -king james -flipk art -field work -se gu -mo dal -bu b -are rs -ðŁį Ĵ -clo oney -pad dington -necess ity -guth rie -pen te -li mo -jo sie -ar tin -en c -l hs -betra yal -info graphics -i er -mo a -hear ings -bon jour -sym bolic -ag ro -wed ges -krist ina -wild flower -athle tic -photograph y -pe sh -ca hill -chi lean -gou l -fi oren -ðŁij ¶ -z il -sk im -bad oo -deli a -tre ble -n cc -ðŁĩ¦ ðŁĩ -a house -bul lock -sol itude -ا٠Ĩ -can cers -futureof work -hu tch -water shed -war mongers -sp illed -colom bo -mo th -associ ations -weigh ed -global goals -not just -christ i -tor g -swe ating -man eu -clu sters -â̼ï¸ı â̼ï¸ı -ta ped -ul y -tru sting -yu suf -te in -ra b -, ,,, -sin ai -audi ble -explic it -cro wns -sch iz -at least -ðŁĹ £ -de bra -je suit -ene gger -z hen -one sie -i it -ss f -gur gaon -chak ra -bear cats -k ran -k awa -reque sting -han over -g end -sor os -mer cy -lovel y -do omed -tim my -ku z -ul l -ab ram -sa ison -ãĥ « -clean ers -re mo -circu its -bar red -o th -mo ist -madele ine -gall o -u j -per mits -hea viest -car ols -az te -gior gio -flo ats -decl aring -us rc -min at -craf ts -pri ma -conven i -nickelo deon -danc ing -ceremon ial -blo gg -tw p -anglic an -she k -k nick -( (( -hubb ard -harve y -hit man -fen g -we some -for za -s word -op us -bro m -gi bility -z al -m unch -dance hall -gre edy -hd mi -re birth -ðŁĺĭ ðŁĺĭ -s world -figur ine -com post -k f -engra ving -gior no -st ana -k man -ham ster -compos ers -aj e -func tionality -pol k -is ons -air planes -te se -hor rors -musc at -gi ven -sp ence -ðŁĩ¸ ðŁĩ -eli ot -ach illes -fre ck -crypto currencies -sou ther -hal o -bor neo -polit ic -hahahaha h -up state -si ena -obsc ure -hau sen -lloy d -happy friday -motor bike -bon a -americ as -hol s -- ( -spor ty -un aware -reven ues -christop her -bank sy -av an -ev apor -com press -eyel iner -to dos -buff y -renewable energy -ly rical -ar chan -rapi st -fair trade -lma ooo -beat z -pro active -la pse -ir ical -revers al -po de -mcin tyre -mac au -ãĥ ķãĤ -nash grier -f sa -g all -çĶ Ł -perpe tr -il ya -configur ation -% ; -str ange -rac i -ภĩ -pic kups -kov sky -mam mal -w ps -g able -compar ative -z h -save our -da vey -on etsy -mu ssels -mis er -cri stina -electr on -cra ve -lo ren -precipit ation -m z -ðŁį « -vin cen -snow board -no ida -ah n -marin ated -g tr -town hall -min is -bethe l -adv an -su ra -shi el -fur ry -ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ -lyn d -so il -sc ence -sen eca -shar jah -dick ens -credenti als -av ar -per k -requ iring -pre fer -j ian -de ca -r ach -ing for -del e -be ep -ðŁĴ » -cis ely -hu ddle -green sboro -haw king -ho ax -hang ar -ç ľ -mis o -lo vin -gre ta -ab ad -logi e -at an -snow flake -mahe sh -fear the -al kal -bobb lehead -ba hn -ju dged -fu tu -feli x -ðŁį ĵ -pi ke -der iv -notic es -au er -dis super -or da -wi pes -am ino -stri kers -foo tb -dram as -pun ching -score less -heming way -bi h -bal lad -chat ter -am mo -kle in -fabric ation -kari m -z end -hi sto -vol ta -rock y -marke ter -xtre me -sequ encing -paradig m -cle ats -boom ing -âģł âģł -block ade -promp ts -yogh urt -pur pose -nu r -regu late -nois y -ing rid -bird watching -bar tender -Ù ĥ -wor dof -cha otic -shor ty -el dest -z app -onceupon atime -fl yo -rit os -mike quind -ðŁIJ ´ -regi stering -. ] -ad ol -gg gg -pur ge -kid lit -ar bor -val ves -synago gue -o th -unanim ous -veri fication -dar rell -ãģ Ħ -vander bilt -tape stry -pro sper -did dy -dra fting -de cep -marqu is -st int -michael jackson -pee led -men us -bb b -sc are -ema il -wri gley -it is -f ell -some thin -bar ra -ed gar -di pping -pu ddle -sla de -lear ner -jal en -ðŁ§ IJ -the daily -mikequind azzi -ju x -iq bal -mckin ney -ra iser -ef an -dr one -cat o -pic ket -cro we -l att -uk o -giuse ppe -hin i -synthe si -ponti fex -song writing -to d -swit ches -din ners -h q -gabri elle -pensac ola -cir cle -expo ses -ev s -riyad h -pro men -o ck -sa j -cit ation -brew co -jo si -ep aper -dri f -point less -tang led -cri pp -line ups -fairi es -daz e -mour n -bla dder -sal z -bur undi -book mark -the people -sub sequ -princi pal -sk er -court ney -a oki -rac ers -ad m -mom a -critical role -hou n -shed ding -sa ka -ace ous -mck ay -hus bands - ½ -me da -accu sations -ro sel -nc is -witne ssing -or ama -go ds -hil ton -el man -ÃŃ n -meg ap -cra ven -announ cer -crit eri -sheffiel dissuper -milit ant -consu l -hoo ded -aby ss -b x -ma dam -lo cu -mary am -manic ure -grat is -ac tresses -ros ario -this dayin -king ly -gn ome -cel ine -r ous -he el -lil ac -vish al -ab h -thor ns -s ls -ne al -construc ting -be ren -s lang -ma ins -far ra -sar ko -pai ge -gu iller -l ala -ice berg -nou n -plann ers -u mmm -ou ses -ill ary -ma an -box ing -zi pper -srin agar -migu el -o str -mp o -responsi bly -lan terns -appli ance -x b -gren ade -neglec t -dy sle -ham mock -ne ctar -wit cher -r gv -di ence -ser bian -seed ed -cru z -bi sh -sp he -e q -sky rim -alge bra -phil ately -bungal ow -ge off -y ves -demand ed -consider ations -the vamp -pawan kalyan -co ded -grit ty -erup tion -se infeld -uni denti -ëĭ Ī -wor m -ac us -se ung -dun g -ro land -su d -di visions -ab lanc -shor test -j f -p oun -plant based -be to -tough er -mc o -don et -mark us -v fl -ðŁı ł -open ing -co ward -caber net -o xi -burle sque -sand ra -su mo -consi st -tho t -cay man -motor ola -gutier rez -d slr -y w -no bel -nov ice -moms demand -grun ge -sp or -d cc -pre sses -sli st -allot ment -voc ational -ft c -pu ja -lo ven -utt arak -tan dem -sh ep -come dians -anat om -cant wait -healthye ating -west side -mar gins -chi ang -asbe stos -stupi dity -proble matic -fit bit -: $ -ceil ings -shu a -protec tions -bio tic -beng ali -re sts -bien nale -tim o -cul min -e minent -affe ction -unbeliev ably -individu ally -canvas sing -wh itt -nov asco -chin son -h pe -go w -gloucester shire -pa o -thresh old -chev ron -s ine -we ther -pp ie -aqu ino -antwer p -âĸ ¬ -po on -inst af -equ ine -cinemato graphy -nbaf inals -vali ant -kil kenny -te rence -syste mic -sr l -p ound -made ira -pl ough -tre cht -mat ed -mp d -ransom ware -ph in -li qui -bb ce -boom er -i standwith -con ju -r te -nar a -foo lish -da shing -vier nes -br ite -da u -juni per -ai da -you now -ra zer -de i -repe ating -comfor ting -adjac ent -e to -ca sted -chat ur -mu er -syn th -san itary -mac le -independ ent -law ful -e erie -h or -ðŁĴ Ń -am rit -vel o -station ery -mu f -may may -contempl ating -elabor ate -gre gor -dri es -ac col -ภļ -schwarz enegger -ill nesses -day break -follow back -collu sion -electr onic -jo vi -hiro shima -ta w -hom ec -mic ah -qu itting -fro sting -ben fica -hel i -s ical -pic cad -corpor ate -ment orship -you are -sing er -shi va -ru ne -ing er -ri um -play able -doo p -wil low -ter re -ni p -at d -war bler -profession ally -er ase -proce ed -pedestri ans -mis chief -ben ding -alas kan -c kett -mo p -dd les -shut ter -ge ared -atene o -ma deline -g ations -o sha -der ick -sw ild -an gry -pat ents -hun k -decre ased -fr y -ðŁĴĸðŁĴĸ ðŁĴĸ -sal on -quant ities -d ario -ni gel -ku ma -jen n -happ ye -xx x -rex perience -pro s -au sch -rele ssly -ham burger -fuku shima -er ne -stat ec -ren d -may field -j one -lef ty -bern stein -sm il -gener ates -fore station -band its -ta yo -r ca -ac ci -rodri go -kn app -elo vers -vege tation -u ral -le ft -ħ ï¸ı -worl dre -sur i -embar k -w son -ba you -mu ller -mo vers -ðŁķ º -presby ter -l f -cre e -bat b -sal am -demonstr ations -an ec -n pc -it ics -to graphy -re inst -thur st -tal e -off ences -smart city -bro tha -ofthe year -in valuable -ear n -ðŁijı ðŁı½ -kre mlin -gra dy -town fc -guern sey -ma ha -contag ious -dre x -be en -( £ -nati vity -k tm -somer halder -comp ounds -íķ ĺ -" â̦ -af g -ott news -h ound -fire fly -cil an -donet sk -volunte ered -ak ira -è ª -sing ul -st h -dro wned -mand o -he ir -ðŁİīðŁİ Ī -tax is -y uki -vel d -k ans -el k -ran ts -hash tag -t eng -ro g -a at -gru b -e ber -in india -colo ssus -sig ni -so ever -mile stones -der o -differen tial -phu ket -master mind -an gh -mel ani -bro ker -actor vijay -stun ned -continu ity -af fl -vo cal -perenni al -fianc é -in complete -hun ts -re issue -domin ates -tur meric -ro am -ri on -bag ged -nas sau -fu t -x ox -national trust -jo ye -san o -hearth stone -dis respect -le es -h se -siber ian -offe e -re stock -wolf gang -re gan -plan o -un wind -re par -mil le -] , -skul l -fat ally -concep tual -ðŁĮ ² -f é -ber to -b ms -u a -mag na -notre dame -le te -la undering -heartw arming -buffe tt -go at -pe abo -wind mill -v ac -continu ally -az alea -mem brane -can cels -make yourown -athe red -p to -tor pe -ðŁĺ ł -ðŁĴ § -sc ares -le aking -z et -pix els -ac i -kh il -marath i -ðŁĻı ðŁı½ -u la -tam u -chandi garh -z agre -aa b -pronoun ced -aubre y -sand er -pun ta -har low -ic elan -celebr atory -so t -unci ation -stru ly -mc dowell -deepi ka -remin ders -my stical -ct c -chat ted -s ica -bar gains -ch hat -ru bin -m net -oiland gas -pel ican -o at -mor ality -k our -i h -nu clear -gc u -ric her -vene zia -m ma -le ith -ac company -rich mond -sports net -ba ahu -smu ggling -mm i -ðŁĩ®ðŁĩ ª -twi sts -sahi b -.... . -amb itions -il lo -histor ical -fo rec -show biz -pon ies -chas ers -remo del -will ing -prince sses -am ple -cushi ons -ac les -lot r -da ch -an the -in corporate -new bury -ki ri -fried rich -ab v -ball ers -alber t -ðŁij Ń -let i -nan op -ci de -anal o -n sf -)) )) -griffi ths -valen ci -ro ano -fun run -babys itting -ca day -ent re -u ck -slu g -tic al -the sims -ro ar -car ney -g am -sto we -fi d -bun ny -sham rock -pe cu -mol ina -go cougs -con tributes -transform ation -mo y -v aj -sever y -antioxid ants -thir teen -sight seeing -l j -reversi ble -odd ly -hoo kah -nou vel -hal al -fe i -stab les -mul t -ho pped -bra ids -inter change -ghana ian -ww ww -eth no -con junction -ago v -ye ti -earth and -ts p -con serve -heir loom -metaph or -woo f -tor io -self less -n wa -em ilia -yl ene -y xe -gi ar -moder ating -pro bz -b fi -ne er -du mmy -hanuk kah -we bber -k v -eye brow -dag ger -su mp -ra ges -ork ney -tb o -hal sey -assign ments -tr onic -scri b -co on -an war -# âĢİ -jal ape -flori da -qu aid -haw keyes -âĻ¡ âĻ¡ -street car -ro g -dat lantic -gran ola -un changed -expect ation -Ù ĩ -mar lin -gu mmy -ðŁĻı ðŁı¾ -awareness month -oil painting -mu th -per ch -jun to -villa gers -mor g -che ated -web comic -the future -d ps -la kings -men tioning -vo or -ident ities -accor d -mc gu -l pga -rum our -massi vely -m pls -heal y -d ate -sp oli -re visited -on t -al and -scru tiny -lakel and -bl ending -< / -an kara -jami edor -metab olic -f ences -ann y -å ħ -semic on -oo tt -space ship -wack y -le ta -ap ac -she e -in herit -do res -ðŁĩ¨ðŁĩ ¦ -gent e -tw ick -ri ms -gal ve -de ville -king fisher -scorpi o -ow l -al ar -vari an -ðŁĹ ĵ -vene tian -star dust -then orth -q ing -har rington -consul ate -spectac le -ho bbs -tur ks -gre er -mat ing -ðŁİ Ģ -ðŁĮ Ģ -direc ts -í ĭ -pompe o -vo iced -la os -tz u -pro me -pri sm -mer c -fortun ately -bc fc -mcdon nell -not sorry -smi led -t ba -for war -mid term -dar by -we instein -up grading -wol ff -bron co -cab ello -ðŁ¥ ĩ -fi able -shar pe -bat tered -sat o -myth ical -instap ic -pre pped -eni um -e spo -di aper -explan ations -who pping -ragn ar -pe el -antibio tic -l acks -harri son -li sm -au l -qu ail -martin a -sent encing -sc ams -di di -tr onics -ãħł ãħł -go ff -za in -param ore -cha ined -clin ton -li ff -cott ages -em on -reve rend -consu mer -ce an -t any -lum pur -e bay -sto ol -ðŁĺ» ðŁĺ» -ta pro -h ath -modern art -just ine -prover b -app y -tra x -mani fest -am bu -nai k -pe pp -r sd -mer chants -kitch ener -shi fted -li zz -âĺħâĺħ âĺħâĺħ -âĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ -uto pia -tom o -ou ted -com ers -chiroprac tic -book club -cin dy -pro hibition -se uss -ë¯ ¼ -thin kin -rr rr -go fund -t ack -om b -catastro phic -ling u -guild ford -bo td -ॠĭ -plan ter -^ ^ -win k -kath mandu -sto ppers -smooth ies -re efs -hin d -bell amy -Ħ ë -waste water -vo or -nat l -! ] -re el -y ap -scoo by -work space -corin thians -bl un -obli gation -g bbo -dy son -cra vings -ell ington -dap l -wre xham -earthand clouds -uk runchat -positi oned -kal b -four square -jo ck -im pending -even ing -ath y -pro claimed -c ites -ann apolis -san i -mar th -ir l -accom mo -ka a -fin a -y aa -di sper -ec ar -bha k -will y -ðŁĺĢ ðŁĺĢ -mcder mott -mo j -gener ational -u said -train ing -lon ely -lo res -impe cc -âĢ IJ -beav ers -ma ki -he b -aap l -å ı -wolver hampton -leader board -me u -c fa -easter n -hu r -civil war -ou rage -hor ned -le high -awar ds -evi dent -gi gab -r ous -ma del -ro byn -ur gently -k ors -en as -heis man -bam bam -fab ian -f om -evalu ating -assemb ly -out sourcing -hun tsville -ðŁĶ ª -justi fied -cashi er -sp aper -buc keye -analy tical -illumin ati -au tho -o j -sha de -geel ong -wh ey -he aton -terri bly -ele k -un charted -sd live -moto cross -her mes -dar shan -dar lington -cash mere -gri pping -cilan tro -pun ish -... : -ðŁĴ Ħ -inst ance -der i -lo bal -muk her -sp ar -thin ker -fre mont -com piled -color ado -vig ne -sm d -whe ad -villa ge -le ek -formula e -ta res -persist ence -?? ???? -ped ago -he z -alzheim ers -vul ture -off ence -is great -suff ra -kick in -h mmmm -broad way -ï¸ı @ -art i -alli son -endor ses -ry u -lolli pop -soy bean -kend all -cer a -inv ade -( ðŁĵ·: -conver ter -car pets -ho bo -fr it -pe ac -es qu -ern an -ou f -an il -di ffer -ch ing -bre cht -sp g -daven port -stra va -sever n -n gos -stor ians -fe te -parame dic -j hb -al amo -sne aking -gold coast -roof s -isi l -depic ted -projec tions -nu mb -o ss -ep i -glu cose -zid ane -infin iti -íĺ Ħ -ran som -ton ics -fal k -g ler -ou tw -re ss -week ly -the on -n ole -ðŁĩªðŁĩ º -vol ley -sum mar -neg ativity -sam son -ye w -aus votes -ju l -ju dy -f art -pra yed -pal ate -multicul tural -double header -cycl ones -pier re -ãģ ¨ -âĺ łï¸ı -rt w -conver ting -wir ral -l ari -ir relevant -austin mahone -an che -ya an -sd f -$ . -explo ding -ulti mate -prof ici -gofund me -cell ence -ep stein -bul lied -sep tic -à® ¤ -lu mber -cu ff -vsco cam -pl or -ภ¥ -se ok -ro to -venezu elan -sor ta -spir ited -daniel padilla -team sisd -radio active -icelan dic -ðŁĴ ¤ -ver e -accommo date -shi pp -ot ter -ol ina -e go -su la -san antonio -de as -simil arities -âļ ¾ -y om -bro ward -å ° -can cun -veri fy -on te -candle light -ìł ķ -inf ants -az am -ðŁĺ ° -le ven -un stable -bloom ington -x ford -con tour -y p -innov ator -histor ies -po y -lolo lol -ex pires -cat alo -bill boards -an ab -el ic -novasco tia -fa ire -ìĿ ´ -rock well -gr ille -az tec -joh or -ur struly -fi ren -dun lop -id le -port man -jo es -tx hsfb -hol m -cham ele -under world -lo ss -ti em -therap ists -past ure -pa ste -ing now -vul can -ra gon -lar kin -o shi -ho co -child hood -umb rel -success or -kath y -iz en -° ï¸ı -share holders -ol ga -ai b -he ap -fl aming -ro u -air tel -rat t -z ane -vo w -thor ough -sn ag -par th -un conscious -ve y -new release -gh ee -croati an -facilit ating -swan son -astor ia -to logy -master y -ðŁ¤ ij -bil bao -trou pe -the ori -chey enne -ro tt -shore line -gra sso -master chef -+ ) -vi x -ellen show -as g -an ak -ku ya -safar ilive -debu ting -blu m -list ener -v ins -book shelf -smart cities -makeyourown lane -; ; -ðŁIJ ¯ -ri zz -on ward -bull dog -bear ish -vir uses -fri gh -lin den -we iser -sn t -gon a -dre sden -fl anders -cu k -wheel ing -ba u -atu esday -surf ers -swi ft -mc call -arbitr ation -aw d -mon c -b ine -at x -re fr -mi ro -po sey -n are -rit ter -âģ ¦ -play book -blow out -sports manship -s oooooo -malay alam -gri ms -bur bank -infin ity -sar gent -oit nb -joseph ine -ski pping -par kin -excur sion -semin ars -jo har -par tridge -post game -ll ll -blan che -temp ting -m na -lu ka -is ers -to ffee -bar ron -he mmings -sa e -go hawks -cu pid -li mbs -con se -un common -z ada -head shot -so ils -pione er -mam ma -sem itic -pan dey -jamiedor nan -spl its -vel a -son i -ra ff -t mobile -âŀ ĸ -pra wns -lit er -enjo yment -egg plant -tu b -cultur al -us ic -suspici on -sy cam -summ ed -ma du -ho ck -up wards -eye ing -ri ve -assas sins -âĤ ¬ -out fy -chi ves -t ner -la is -por ridge -sad dest -w cc -vick i -sna ils -biz italk -mill an -ðŁĮ į -sam oa -j ing -mi key -gu j -chel ms -eli gibility -arma da -thro p -surger ies -ãĤ ¿ -mo hawk -ex its -me m -is lington -c me -land fill -kait lyn -ðŁİ ¼ -combin ations -tomorrow land -ver b -cor a -pre cisely -na om -ðŁĨ ķ -shr ink -sof tly -merce de -mand el -poo dle -ball erina -sop h -jux ta -y at -ary an -hesit ate -lo wered -gu lar -dungeon sand -ron an -my ri -sp f -men opau -gra sp -pa thi -fe asi -fla w -shi story -ste ward -gg le -fay re -cli que -credi bility -yo g -sec tion -mu sko -se ville -no tt -cal m -mate o -indic ted -fi ba -by l -lin o -u kin -!! # -enig ma -siri us -bu sc -ðŁį Ĭ -mac kerel -psal ms -a at -tomorrow spaper -ðŁĺ ĸ -p fc -........ ... -shre k -mul let -o sh -danger ously -immen sely -am ur -ðŁį Ĥ -pro por -sy a -london marathon -abo ve -obli gatory -pro v -ra cha -alex is -pri mary -sh h -ether net -d stv -cou gar -un lucky -ni l -steak house -mel a -fc bayern -cause way -ca therine -fluore scent -nx t -to kyo -au sp -releg ation -qui zz -shored itch -proud tobe -promo s -inter acting -home brew -da esh -w pg -stead ily -provin ces -bal lots -i ah -al to -< << -you u -ri ley -prefe rence -tra verse -incen se -am munition -ho dges -# @ -hail state -tart an -witch craft -vent ilation -liber tarian -! â̦ -ow es -% ! -ong chang -bru shing -le ic -fi ber -under attack -down load -ex pir -hy o -pompe y -mc bride -y ag -stre e -com bat -ten ding -ai ra -gug gen -ab ra -in na -fli ps -aw al -m ach -dol lar -inspir ations -z um -o du -it ty -video game -aqu aman -har u -bel fast -je b -but ch -us gs -calcu lus -go yal -mor gen -x finity -stand up -contrac ep -sab re -na be -in secure -gener ously -epit ome -l w -t ca -narr atives -don nell -pand as -ber gh -tu t -ker al -fel icity -br ampton -quinte t -nom ore -ðŁĶ ij -lo i -alham dulil -ðŁĶ¥ ðŁĶĹ -ston er -shaw l -clin ical -bren dan -gon e -fla wed -tri ppy -j g -al location -po aching -ve vo -mo cks -lef tist -bon uses -condem ned -abil ity -st ating -microbi ome -bio logist -for you -wahl berg -ss or -ift ar -w ul -ÑĦ оÑĤ -pom er -me me -ver te -tre ll -tra it -in let -hormon es -deliber ately -vill ar -battle ship -p bl -tw enti -ho kies -dal ail -say a -may fair -han s -die ts -⾨ ⾨ -od in -hot spur -pap i -k ana -k amp -fin na -flo tus -ti ans -unic orns -tribe ca -chang ers -fore ground -out a -inv aders -gett ys -tomorrowspaper stoday -mac millan -hand written -w fp -u de -state of -base d -âĺģ ï¸ı -cas m -psy ched -histor ians -fol d -d da -ag grav -p ans -green way -au sv -ðŁĺ ¶ -shradd ha -inde x -be sti -zim mer -t ness -eye shadow -ot te -go ts -distribu ting -pro min -yo l -ace a -tram rahim -hoo per -supre me -jam min -intu itive -quali fications -sli m -sid di -jay ne -tri pping -g tx -pun s -e manuel -om g -mid summer -in to -succul ent -ri en -new mexico -o or -hoo king -in f -ðŁ¤ Ŀ -flir ting -na hi -g friend -t ps -hel ix -z s -on ie -ct f -kri s -irresi stible -fla p -ðŁijıðŁı» ðŁijıðŁı» -us wnt -ru d -ram ps -pin oy -ot w -lol z -low ering -favor ite -t mc -phra ses -her mi -aver aging -em br -ben o -estu ary -sle eve -ribb ons -ta sh -ภ¹ -x f -aw gs -sun ited -brew eries -anir ud -pun ches -ol die -ip ads -wi fey -land lords -d ji -gun ner -íķ ´ -tex an -ex op -cas sandra -s off -ðŁļ « -igh ton -bak ers -awareness week -v all -ear p -bts bbmas -apologi zes -âļĵ ï¸ı -was ps -states man -snat ch -watch dog -ra fi -after party -spi ke -j er -peri ph -r nc -mu ll -le en -shi es -li eu -urstruly mahesh -mer ton -de sai -shi f -ðŁĮ ± -pe dic -gos ling -arrang ing -ww g -gen y -you uu -netfli x -e ttes -k wi -bernar dino -am iga -Ø ¨ -kashmir i -t ings -emer itus -de cat -ab domin -dc i -pha ses -d jan -be am -op ry -i shed -the ellenshow -the st -habit ats -to ons -mclau ghlin -ri pper -micro biology -tal aga -clu eless -ss u -cro che -bro mance -longe vity -zagre b -prev ented -tra ve -spo ilt -darry l -migra ine -al cat -dd dd -vi v -ser pent -mat tel -jam a -con quest -î Ħ -sam sung -presbyter ian -ket ch -fire fox -mo tif -le c -cho pping -cher no -j ann -ðŁIJ ° -pro lon -wake up -conver gence -mersey side -heart broken -lo oming -hal lucin -mai ze -commun ism -mo h -twitter storians -serge y -res eller -favor able -ed gy -re iter -mal aga -live me -ka hn -pul sion -big g -kim kardashian -ati o -tyr anny -ru ption -q ant -pro ven -by z -pu shaw -kri stin -e er -tar dis -ri z -awak en -mi ko -un documented -path finder -indirec t -resemb les -h ler -conce aled -scand al -re im -d nb -cr itters -attend ant -apprentice ships -aa u -scre amed -l su -fa h -har bour -ed d -bat sman -li ss -mi sha -spani el -it f -advan cement -fa c -close up -cecil ia -medi c -narcis si -lav ish -gi ac -ma ys -le it -wine wednesday -pushaw ard -let to -curren ts -bug atti -out ine -w j -un do -ler osis -devo tional -ðŁij « -on na -fais al -sa una -himach al -am ii -à® ® -di zzy -screen writing -ph x -sp n -ick i -ag irl -fi shes -wb z -pi m -bo ar -ac id -! .. -rocke feller -n ga -dra stically -simpli fy -dru mming -autum nal -gur mee -lor de -jo ann -give up -b our -am ura -der land -sim pler -wat son -tri dent -concor dia -bel lum -bre k -dum plings -vi on -dungeonsand dragons -sp ri -ascen sion -wil datlantic -u st -rob ins -legi on -insi st -jar o -gue ss -so b -bigh it -pool side -negoti ating -mc gill -bil d -techn icians -miti gation -ajay devgn -b to -ant en -cosmo politan -ðŁĺĬðŁĺĬ ðŁĺĬðŁĺĬ -patri oti -temp er -promen ade -nav ajo -nam m -wrink les -dc fc -le ach -bru nette -r f -cout inho -al ti -tradition ally -op tome -na z -accord ingly -rec ard -de ets -sw ell -po sure -whit ening -strang er -illi on -here ford -u wu -ro bber -cotsw olds -cl en -gor ge -nam aste -re lish -gri ff -adren aline -bla sio -val e -ê ² -toler ate -rail minindia -jen sen -ho ven -el lu -ob sole -eisen hower -unidenti fied -than niversary -body guard -Ø ¯ -i dge -sch al -stock port -sn i -re taining -po po -pix ie -oli thic -ki er -ha jj -sa z -cor bin -!!!! !!!!!! -v it -me gat -de h -circu it -af fleck -theore tical -hope less -u ab -slu mp -b ice -jam med -let stalk -can i -side ways -labyrin th -re fs -ha hn -jare d -ðŁį ¹ -jam bo -ph yl -enhan cement -c tr -ful lest -se ye -do ba -cho ic -yo s -cb j -andr é -re watch -pri ma -doctr ine -for gets -u hm -ar ound -u le -art lovers -shi raz -har th -ex tor -Å ¡ -unexpec tedly -eli us -y x -em my -se ac -ðŁijĩðŁijĩ ðŁijĩ -correc ted -com bu -wom anc -cou gh -what son -publi shes -divers ity -back bone -lock down -mesmeri zing -nor te -ma b -desig ner -í ģ -ra gh -mole cules -get outside -the beatles -semicon duc -nach o -lun es -ham mers -sul tan -o on -fe ren -att ach -ar qu -uttarak hand -s ash -; - -tre ad -i ko -ar thur -scandin avian -r ation -ga el -charge able -fish y -v ma -hand bags -char a -ay ne -de fam -sett lers -qad ri -pal ais -in wx -apocaly ptic -poo ja -a es -at ories -proof ing -n lp -ts la -v ina -li do -dee phouse -informat ics -v v -pp ings -di ss -à ¯ -uhur u -st ony -betra yed -b aff -my ra -as pen -allow ance -tam ara -ci f -cor bett -ser ge -di go -ambi gu -pain ters -p cr -p ca -nom s -lo ft -ve e -opend ata -ðŁIJ ± -alex andre -identi fies -fantasy football -re production -brom ley -ware agle -mm er -p ss -cu es -ay at -hut chinson -sar ac -jack man -ira h -ap ink -col s -aussi es -ex ecs -day ton -ðŁĻ Ĩ -im v -har am -chuck le -authent icity -ar do -incub ator -ภª -photo shopped -embrac ed -fight for -gor man -zz zz -schol astic -cri sps -te apo -mid night -ga ine -col lier -s ate -de tte -å Ń -imag ine -i ff -tw ili -i fication -teat ro -nor ma -es ur -emergen cies -rise up -r inger -hass le -cait lyn -tranqu il -vers a -se b -over look -gin i -bo go -se re -may ne -henri k -contamin ated -rhapso dy -pro portion -wildatlantic way -âģ© . -organis ers -tran e -stand ard -sper m -laun cher -ric ci -her ts -paper work -showcas ed -mer yl -pen a -p imp -disa strous -^. ^ -phar a -x is -fron tal -sw irl -sp ills -swag ger -smart watch -sizz ling -savi our -cat ar -bb cr -refurbi shment -dr is -citro en -absor b -patrioti sm -il leg -chro mo -fresh ers -ru s -lim iting -ef ish -down ed -man dir -hazel nut -p all -mac on -disappear ing -quali fies -bo on -bar racks -am ine -gen dere -ðŁļ ĺ -j es -ãĥ Ń -qu ito -middle weight -sch au -quad ru -aci ones -limit less -ðŁijĮ ðŁı½ -ch man -ar av -regulat ors -it up -batter sea -mil ford -g z -tic king -gh ou -cru shes -tu tu -dread ful -fam ine -for change -dalail ama -ðŁĴ į -whit aker -hash mi -h us -vo d -bet te -aa ah -iso o -ðŁ¥ Ī -ha ar -la ine -b v -all day -spr out -indie games -free bie -gree ks -but ler -ill in -ha al -ware ness -si ma -public health -gam a -wa a -oun g -goo oo -okin awa -off enders -im pose -ho c -young ster -story teller -sc ap -figh ter -+ , -whit es -music monday -re za -go ducks -bri a -mi um -cas per -cru mbs -a ad -marti alarts -ch p -ri gged -tn g -harve sted -sa k -do jo -mill wall -b nw -oc d -histor yof -t mr -si rens -fan ci -caregi vers -vir a -son i -recur ring -acknowle dged -ðŁı Ł -oph ile -bu cky -stre ssing -roo k -di gger -vi val -san do -fle et -si ers -sel caday -refre shed -anti fa -a que -po lo -disappear ance -de mb -âĮļ ï¸ı -ren ted -ber ger -g mb -cu la -ss al -goo dy -u hh -marcel o -w anna -soft ware -shop small -turt le -tom as -fri sco -ðŁĺį ðŁĴķ -jim enez -c su -day z -an do -wyn ne -choreo grapher -cerv ical -trail blazers -ed g -zend aya -travel blog -el s -whole some -co g -lab out -ar ney -del le -su isse -ma si -ine se -om be -fi ddle -re claim -pa u -wat cher -sla in -ber ty -opti mum -el ites -min is -tur key -patro ls -ger ard -au reli -wild ly -wal tz -br gy -w ob -cre st -+ ++ -ve z -fro sted -davi do -the x -param edics -p into -han k -du pont -ur g -fo stering -micro poetry -spec tre ----- > -ne uro -fri da -music al -galve ston -e ffic -sc ape -pal azzo -th all -pro visional -p js -au re -ðŁĶ ľ -mam amoo -kit ties -cre e -wa k -lo ool -lu pus -cn blue -à º -ðŁİ ¬ -rac ed -tro se -om as -stri de -co ors -⤠µï¸ı -in comparable -cy ril -broad er -arec lipse -ðŁį Ķ -inter val -ti ru -co working -w aco -a ham -a bee -flouri sh -the times -ol ini -kick boxing -lu cer -at la -as un -casser ole -mi aw -lobb ying -jan ice -cir que -re flex -le ary -sanat omy -tem pest -se mb -mur dering -us av -ro bo -on et -p cc -nati ves -life of -sa ha -ruth less -rel ates -appeti zer -pye ongchang -nor d -er u -a thing -ug ly -pl ying -bran ce -organ ise -kend ra -dat o -chees es -par ma -burn out -a stra -pre toria -adjust ment -uk u -sl o -li ken -fav ors -cli ve -be ets -snow donia -go tv -sy n -open house -pan i -portra yed -sl ated -me cca -ren al -supportsmall streamers -staf fs -da o -bi ker -vik tor -tit us -admi red -ðŁĵ ± -hurric an -he ats -gl ory -photo genic -mer i -de por -burn ham -or angu -dj ing -impre ssionism -ign ition -ca i -w ynn -de pe -cove ted -colla gen -sau s -or nam -administr ators -ss on -nh politics -hahahaha hahahaha -aspir ations -r gb -swol len -so we -sc r -diver gent -hou ghton -han oi -d ory -ni ki -land ry -b cci -ðŁijĮ ðŁijĮ -is mail -tri pod -her d -bhat t -dress age -tab by -ingu ish -hur on -à³ į -à ł -to das -evangel ical -chor ds -st john -slo ppy -marty r -face book -ali ght -sen sei -kath niel -r ites -zi one -u o -revel ations -weight lifting -pan o -nc wx -ac ton -à® ķ -Ø ² -som a -à¸ Ĺ -respec ting -mar che -fore man -be tty -ki k -shi bu -po on -argy le -k swx -et z -mar bella -brac kets -stand by -fire side -defi ance -v ex -britanni a -in habit -appo int -piyu sh -le ash -sci ento -fla sk -sen na -> : -at roc -sand erson -id lib -dhan ush -ðŁĺ Ļ -en thr -hit ch -de dly -al ley -dor k -mon do -cudd ly -mis sin -ye sss -night ing -j pn -w ary -ump ire -ma z -ê ³ -bab s -ĭ ãģ -stan ford -posse ssed -exce eded -ðŁĶ ¶ -wall art -tra p -j il -hi bis -sp ying -scri be -khali l -trans lator -lu mb -di zed -ch c -super vision -shut ter -ja g -_ * -yester days -ms f -hi hi -gonz aga -gille spie -vive k -ec static -this morning -ch us -ed es -ston ed -be es -ðŁĩ¹ ðŁĩ -tur in -ho ver -at rics -ster n -sam heughan -auti sm -mi ya -eye witness -writ ings -travel tips -chut ney -px rtg -keny ans -my stic -k rit -/ $ -red head -world ly -am us -op la -le ve -gab bana -se en -o clock -gang a -keen an -sc ent -ol dies -go green -corner stone -comp ly -con cours -ðŁİ¶ ðŁİ¶ -ha an -con fis -aw son -cle op -î Ģ -su zu -sau té -al gar -subscri ber -este emed -ãĤ¤ ãĥ -worth while -mel rose -flo ck -bri ghtly -viol inist -p ere -sli pping -and co -si gh -ha van -cu lo -m sa -fibro sis -matil da -ra fting -aw ard -ë ª -mm mm -ge aux -ste iner -sin n -help ers -beet les -ai mee -tai wan -pistachi o -mac beth -m zan -descend ants -on sale -in r -il m -grou se -sa ig -mo w -bi gre -adjust ments -tu la -mathe w -transl ates -mu h -bol lah -ðŁĴĽ ðŁĴĻ -amo res -ab outs -bomb shell -bla ster -x avi -s ns -k roger -ga ther -erad ic -daf t -chem o -ben ches -ðŁĩ© ðŁĩ -ut v -our a -n ko -gator ade -biaf ra -ok state -im danielpadilla -dom ains -open ingday -kid do -do i -ric e -day care -mac millan -ba thurst -cheer leading -ðŁ¦ ģ -cash back -k won -hob bies -exem pl -ries ling -âļ ª -ag les -ny s -every thing -nav is -ad di -magne sium -faceli ft -ark ham -grand es -extre mist -don at -vit ality -pump kin -be tta -sl td -arti san -li by -pe aked -ah hhhh -mary am -assi m -un sc -ment e -al aya -low ers -ar as -gri ev -le ip -gr ati -cri ses -spr ints -exe cute -w to -ms d -mag ical -re viewer -spark les -juke box -ðŁĺĤ âĿ¤ï¸ı -pay back -licen ses -dun kin -bel t -lake wood -h ateful -bud gets -rev amped -ph erson -ky iv -went worth -ro sen -cru ise -gi ggle -def star -assassin scre -ym outh -win kle -w fc -band wagon -b kk -w iring -kear ney -south side -pe tit -! ðŁĺį -nor dic -mir za -mu gabe -v l -scon es -k tv -sand al -du c -m alls -ðŁĴŀ ðŁĴŀ -it c -al ay -im pair -un rest -flo ss -c é -ab ou -var ying -muse o -ser ver -di ya -hibis cus -ero y -mer ritt -fin dom -f pp -un usually -go tt -conting ent -ali aa -ball on -jo l -hi ked -zy me -ay r -ag n -ga z -perio dic -spar ty -practi sing -lin ton -tal is -cy pri -womanin biz -radio disney -ðŁĮ ¼ -jump ers -endo cr -ðŁļ¨ ðŁļ¨ -and on -shar apo -mi er -ma sonic -fac tories -vi en -bb ers -ìĽ IJ -hol d -ke bab -be ak -approach ed -ac milan -mun ro -ko sher -excell ency -negoti ation -walt disneyworld -cr ouch -te asing -suppre ssion -en ya -b ce -transformation tuesday -cal lie -vis was -p gat -ic ted -end ings -esc u -recru ited -it fc -collabor ations -g ino -snu ck -ausch witz -i fc -x ii -ke sha -ger vais -clo ak -x l -sa ad -prob ation -pre cau -mac in -anasta si -le k -e azy -daysof code -mariah carey -yo g -stit ched -boy friends -sh ar -ph ile -ag u -twin kle -phi shing -week ender -ic ton -gurmee tramrahim -al ton -l eness -all an -pen ultimate -kry stal -go u -lan de -dis mant -ab using -nor se -pat erson -ed mun -ap an -xi umin -sk el -cat walk -re act -wal led -t angle -br yn -ve to -super moon -cas ablanc -appreci ates -ski d -bo th -catal ina -ele ague -cyber monday -cau tious -ðŁ¤ ĵ -nov o -hamp ton -ha ye -jose f -var an -lo bos -roano ke -orph ans -tt in -squ ads -ishqba aaz -black panther -e tu -k sh -cru mble -cess na -reli eved -scul ly -pollin ators -explore canada -ki es -kam loops -kir an -pri mal -sett lements -hot spot -brain storming -ce dric -bi ennial -sh ant -âĻ¡âĻ¡ âĻ¡ -do on -hear n -walk way -fe m -ve al -deport ation -tox ins -elimin ating -descen ding -by the -bla sphe -ha sta -comple ment -as cent -ri ga -provo st -âĸ ª -wee ping -anti semitism -employe e -unearth ed -pin o -natali e -bla d -ang ola -lock heed -in ian -ag r -ni ster -im pala -m ke -fan atic -âĺħ âĺħ -ðŁij ¸ -lu ch -simpli fied -gall ery -econom ic -cy borg -con i -sel ma -in ception -ko ala -dv ds -cre sted -m mor -visi ble -n sd -ðŁĻĮ ðŁı½ -w under -refriger ator -re opening -e era -carou sel -as p -balli stic -victor y -mo tive -tre y -sharapo va -si i -mon ter -int end -west chester -sp e -cy mb -vi dal -ll ama -uni v -fin er -crafts manship -jazz fest -b ch -ag gio -n cc -lamb da -tranqu ility -cis co -ba den -so bbing -of i -go ta -ru mored -war med -ore an -ac ton -mar ci -gh ani -âľ ĵ -as sorted -pembro ke -pen elope -da f -at ty -aim o -pretz el -carni val -than os -ko chi -mer sal -ham radio -ar twit -cas c -guer rilla -kush ner -k app -al ise -todd lers -steward ship -o tti -ter ri -tem pe -rest less -vit o -zay ed -rsp b -pi on -hi ppo -haw thorne -in as -am ily -nut cracker -lo p -d ali -tro pic -ðŁ¤ ł -ul o -jare dle -py rene -pale o -usa ir -m ould -it ated -gene tically -biom ass -ðŁĩ³ðŁĩ ± -do dd -practic ed -monarch s -un manned -m buhari -am al -photo gra -ko ol -bren don -ju ices -cu re -world bank -poin ters -ðŁĴ Ŀ -tur f -le ds -bor ussia -bapti sm -warwick shire -moun ts -gay o -be gg -co pied -asi ans -k g -moder nist -gi d -front man -concentr ated -y t -sc avenger -iron ically -adi c -ps n -ðŁ¥ ī -cultur ally -yu v -mac arthur -fertili zer -be withyou -ri gor -min ors -z oning -âĸ ł -ri r -adole scent -vin ny -ren g -sand stone -gu et -we sth -ple dged -lac ed -sp ide -v ai -ty coon -seiz ure -du p -appalach ian -ro k -cathol ics -sey chel -posse ss -la ger -jo di -cham p -stra s -d ina -cent uri -cal der -blur ay -ðŁĩ¨ðŁĩ ³ -mo do -an nette -youtu bers -chap s -ang ling -label ing -a qui -pk wy -ly le -bi sexual -lit ur -dug out -li bby -grey sanatomy -sub stances -august us -rall ying -fi del -ing ue -äº º -hallmark channel -tooth brush -m á -adi rond -ag gi -ðŁĵį : -cru sade -tax ation -k z -i ver -dou bling -room ie -wa b -en rolled -az on -a ju -grand children -as df -ðŁ¥ º -mat ic -ough ton -utili ze -ðŁĴ £ -pon der -rais in -dys function -co bain -butter nut -e man -su red -dri an -and friends -with the -on omy -heine ken -bri dal -leader ship -pyram ids -deutsch land -jo cel -bo wel -y qr -horse power -be acon -ing eni -gra dient -fer mented -mo om -thing y -pot assi -wrist band -bor d -bo died -ðŁĺŃ ðŁĺį -ma pp -ka u -cyber punk -ph ish -loo king -co ates -ap ur -am ie -uk labour -at in -g la -adop table -shel by -v illi -ri ya -m ingly -cli mber -bumble bee -ðŁĺ ¸ -c sd -âĿ ¥ -hospit alized -c ki -hat er -ch r -re tina -it a -fan base -beat rice -gwy ne -go ss -fo s -favor ited -swachhb harat -mal ade -mon mouth -" [ -si van -sh hh -command ing -sains burys -wee d -g man -ss w -rep tile -iv y -tro pics -roll ers -over cast -ex position -masquer ade -man crush -wa ist -spr inter -sle et -le vin -j pg -_ ( -o pel -explo it -ap a -po we -wrec king -jong in -or b -er ick -bo sco -pra ising -ber tr -to wing -in security -ku t -resto cked -rr p -prescri bed -trafal gar -per t -g ases -app rais -g har -music als -âĸ¬ âĸ¬ -mc fad -ag ony -conditi on -equi p -shi k -atra vel -ðŁĩ¿ ðŁĩ¦ -ke h -abduc tion -pe oria -wil kins -g ms -as d -ev i -ðŁĴĹ ðŁĴĹðŁĴĹ -u z -mo c -halle lujah -guad alu -lou vre -dra wing -go ve -ph ant -fri e -web dev -program mer -z able -games com -clari fy -li th -kin ky -âĿ £ -labour doorstep -son ata -ju ris -mai den -vi adu -buch arest -conditi oned -capit alist -u de -ps b -sp ca -lul la -footh ills -kay o -bon d -wom b -roun der -ce sar -bur sts -ap ra -sw oon -sab rin -fra grant -cle arer -ku brick -cli max -jour no -ag le -ðŁı½ âĢįâĻĢï¸ı -poo ch -hal e -sol it -sal mon -organis ms -bron son -art en -hodg son -alo ve -vent ure -bb i -ae a -ðŁIJ ¢ -ld n -d nr -o zone -el las -man ny -azz ur -un beat -tru ffles -th ong -ma ñ -las ers -ley e -gettys burg -back packs -or is -ma ison -craw ling -la bra -cl ing -dra gging -ste al -dou bt -de van -ck ers -agent sof -photo bomb -elon musk -abo y -dist ances -story line -sp i -nor than -europe ans -wh ale -ser pent -ðŁļ ² -fi or -tr it -ox o -awar ding -class mate -su fc -smar test -rich es -pr k -big foot -ar mb -bi polar -dw elling -om ars -k wan -gri me -m eng -freder ick -navar ro -sorry notsorry -jaredle to -pa ve -sl ack -barn sley -att ar -evic tion -accumul ation -o ir -cat chy -wel ter -vik as -has see -nik ita -mo yes -mathe ws -shi v -gat wick -pro filing -compan ions -mar rake -an tics -ðŁĻĮðŁĻĮ ðŁĻĮ -se se -bo i -bart lett -poison ous -ab uses -ym m -kam pala -guggen heim -imv kohli -dol om -bre e -thro ttle -gare th -fitz patrick -un ya -par ad -mar got -j nr -we a -potassi um -p nc -disgu ised -cra sh -ren ergy -ill ic -coup led -ni els -ci ones -æĹ ¥ -im ent -despic able -d ye -what cha -conne ctions -paralym pics -gaunt let -wait rose -suici dal -star ship -vap or -st ou -law maker -coo led -si mo -then o -offro ad -ja den -bas que -vick y -lu kaku -centr o -tri sh -strate gist -medic ations -hor st -b fc -gra il -sharp ly -ad itya -tom b -kau fman -tri pad -sam ba -pastor al -brit ney -sag an -hill side -mas ons -sar a -z one -x u -to tes -rob bie -app en -mon tag -der o -short film -charis matic -tat ors -ki ba -and ri -al arming -split ting -ic ar -th ug -scari est -sylve ster -an an -u trecht -a difference -me ade -bu ster -air strikes -cu ffs -account ants -ðŁĺ¡ ðŁĺ¡ -new t -bo tt -issu ing -cl ancy -wwen etwork -kyu hyun -rese mble -pajam as -sin k -kin ney -sul ph -or k -li es -la gh -or ton -ra hul -d sc -we will -re am -collo qui -shar ia -hec tic -sar casm -land er -tm z -endor f -ro z -ham mered -fri s -w adi -pope francis -he it -flash light -un born -op es -hol iness -ðŁIJ ¦ -nach t -im sa -gr acing -bj p -ver ts -c sc -home owner -a que -bigo try -anni e -bag h -âĿ¤ï¸ı ðŁĺį -car i -thom p -dispo sable -cardio logy -pat ented -hh hhhh -ld r -stephen son -cro res -fan ning -cli mat -ðŁijį ðŁijįðŁijį -ðŁijį ðŁı¼ -aer on -piccad illy -bank rupt -sil via -emplo y -don ny -commen ting -screen writer -io ta -ce an -anc ers -tu an -street wear -ठ¯ -sk ine -esp a -asi f -os ce -she ppard -more cam -bott le -der s -orac le -google play -aver aged -edmon ton -steph an -sister hood -cru sted -stag gering -methodo logy -congress woman -c abo -tri ggers -mil ky -gli de -tooth paste -room mates -nu ff -gu am -sprink les -alternati ve -wat fordfc -uof t -hal ey -cont acted -bun dy -pro stitu -gh ar -pre ston -on site -hil ar -g ts -c att -hamp stead -? ?! -ðŁĩ§ ðŁĩ -bbc qt -aless andro -resi st -ma idan -t ko -shad ing -pin up -gal lo -sin u -at ec -fun k -ac lu -stri des -rhy me -wet land -bbc springwatch -t ins -wild card -st our -flamen co -pau la -onto logy -gang sta -am ade -ãĤ « -t bs -skelet al -run ner -jard in -harri er -hun ted -z hen -believein film -de mean -au diti -re start -chon dri -âĿ¤ï¸ı ðŁĴĻ -mcla ren -ga b -sh um -au sa -lewi sham -y pg -k jv -fur nished -dor o -bon ded -mor ty -lat itude -_ ) -lo va -water ways -vin ai -shor th -drun k -c ay -ay ana -kap lan -capp uccino -spr o -life boat -has bro -spol ice -tor on -do ing -dam n -sh ree -foun tains -ent ation -mar u -boar der -to pless -j ada -chan ning -ul ls -en closure -gib son -fractu red -brit ton -à ¶ -t ous -por th -dra f -tra iling -mar gate -eli fe -down ward -lin n -gla des -girl power -ak rish -u ki -ron da -ts c -appreci ationday -vis ing -lo om -ðŁį ³ -mex ican -ar gos -y ya -jad ine -south port -d end -si sta -rede em -men g -bra xton -antioxid ant -s key -mp g -fin ding -vibr ation -ce u -kh art -di mini -cl ine -shel ly -hin es -ī ï¸ı -to pical -no ver -ma xx -prim itive -illustr ate -b ounds -tren ton -join tly -breed ers -u chi -wakeup america -b ada -ðŁĹ £ï¸ı -gu acam -sp heres -pere gr -youth ful -lo lo -bir min -t ly -jeremy corbyn -defe cts -co sm -a rent -v aa -bag els -medi ac -cori ander -ic ago -g haz -ab bas -re model -struc turing -pu m -out law -ad ani -r bc -gul ls -n li -confu se -ðŁijĩ ðŁı¼ -vil a -mcnam ara -correc tions -mug hal -ser i -re gain -ss b -lea ve -haha hah -gran de -di stressed -re chargeable -ho a -hou sed -sti l -attribu ted -opath ic -di ps -pri t -head phone -conclu de -pil o -he t -ut sa -nit in -je m -sni ppet -tutor ing -op er -sun k -en sla -cha u -ac orn -quinte ss -ran kin -affili ated -our lives -cl int -se ater -isa ac -ba shing -sme ar -nur se -doo dling -" ; -sa ku -atroc ities -im am -g fs -viol ating -comm end -brad shaw -er ville -b illed -b be -thul hu -i phones -moo se -di os -re w -me thane -strang ely -whis ky -ti ghtly -spiel berg -radi us -notic ing -wi f -ig nati -i fa -ap is -w ali -ha itian -bu shes -y z -v l -ex ited -asse l -tru ec -dom en -ash er -in king -newyear seve -hend ricks -bat i -ìĿ´ ì -rich ter -mon santo -con line -agre at -ðŁ¤ ¯ -master pieces -ar n -rough s -cle ve -se v -fashi ons -to ya -sh ail -cop eland -aqu ari -dec als -are you -y aya -a str -fon t -ml m -ar ca -pp or -pol lock -xper ia -conserv ation -chain saw -ag gie -?! ?!? -si le -sh on -ìĹ IJ -note books -marque tte -de us -bb led -spic er -mc cabe -nor wich -modi fication -boo sted -stru m -sales man -bang le -nis san -hez bollah -brea sts -a af -anth us -sk er -ow ed -her os -gi fs -fo sters -eat ers -du es -_ / -lymph oma -sf am -me gal -afri di -ag ic -p amp -jeal ousy -ðŁijĮ ðŁı¼ -calcul ate -napp ing -g ale -ðŁ¦ Ħ -lub bock -assu med -ren ting -íĥ ľ -subur b -ãĤ · -tech nic -u cla -in front -gar net -ster oids -stri ving -ho war -mo ver -le ton -bull do -is in -ci ao -sn z -fore front -d ams -mid wife -ma wards -cla pton -we in -subsi dies -spr oud -rother ham -phan tom -ar ach -spi el -rac ket -sel amat -no on -l bc -enti ally -ðŁĴ ¸ -sil ve -m oud -kine tic -y asi -ðŁİ © -o ol -mi ku -i za -fer a -flo ren -barber shop -groo t -z est -ne ars -stan is -z and -police man -juris dic -form ations -appar atus -sp d -arti fact -to sc -motiv ating -womanc rush -re dro -diagno stics -ra za -out fitters -el xn -dod gy -ry n -sh d -ortho don -ol de -jay anti -bal ances -quic kest -can ton -friday reads -! * -na a -a ak -ðŁĶ · -behavi ors -rasp berries -ä » -polit ical -cam il -å ľ -di k -ast ounding -lie be -novel ty -tur moil -sul ly -spring break -hon ouring -cc g -ðŁı Ĵ -my little -ky c -pro ms -ðŁķ Ĭ -à ¨ -bi ge -av ril -ðŁĩµðŁĩ ° -mari on -as ants -sur ya -oc tag -luf than -ac ron -fayette ville -ti que -love s -en ca -de kalb -ta ver -de vote -aux iliary -joh annes -tread mill -ay an -qu r -donald son -cher yl -" .... -s ven -kir sty -gun ners -ra dish -o ahu -v sky -i ble -con course -b ps -elo qu -ash ford -te bow -roblo x -ma da -dri ving -th day -spro ject -m ms -band ed -. !! -libr arians -flan nel -intoler ance -her al -ç µ -neme sis -list a -tar ak -cry pt -star plus -vish nu -sc ale -cr is -% ), -j illian -regg ae -pegas us -ol in -ip ment -man ic -l fc -godd ard -ite am -parl our -anch ors -lee minho -talla hassee -ant it -d ho -kid ney -y ash -batt led -az ad -gar is -faul kner -sni ff -papar azzi -ed m -phy llis -con tested -aa ay -se ca -k ton -vel ve -rain ier -for um -tam pab -ho sp -trac tors -ox fordshire -no tion -guang zhou -ðŁĺ ¯ -ref ill -wednesday motivation -sli der -mukher jee -pr att -fon taine -alph on -af ar -ts i -pest icides -fi ends -mo cking -bra w -tran sat -do ses -co res -hom ophobia -docu menting -zlat an -con doms -s é -sun set -kun st -ton ga -ภª -v ation -sp ray -chow der -ra ps -palla dium -nor wood -music history -hoo ker -si si -osp rey -ph ys -conce ded -bob cat -ar mad -ze it -Ù Ħ -ðŁĺģ ðŁĺģ -mer idi -ðŁĩ· ðŁĩº -corn wall -! ), -touch downs -ze it -chal et -mm m -al che -gor illa -fo ss -ati ku -lumin ous -ivan ka -be ek -sta res -sw iss -âĿ¤âĿ¤ âĿ¤âĿ¤ -scru bs -me ath -gusta v -jo gging -confe tti -as os -ers fc -breit bart -applic able -autho red -ya ho -h in -displac ement -j v -ðŁĮ¹ ðŁĮ¹ -ot c -non profits -diec ast -gu sto -inte stin -c ages -me en -lu kas -moon ey -ðŁĺ · -very day -tor ah -is sion -wa c -lever aging -ish able -cu se -le wood -may an -turn table -ju ice -tru sty -tu p -eti quette -supervis ors -stu n -gu zman -confe ren -ric o -fe ast -back ward -pol aris -mic he -jo g -h ing -field house -vel ing -sho cker -esc ence -ठ¾ -vi be -anasta sia -mar ched -kill ing -Ķ ë -fe tt -exop lan -... ( -snow day -lo h -ir ani -la khs -del a -po caly -boom ers -dictat orship -ac er -tur keys -quarter final -muskete ers -ðŁĴĽ ðŁĴļ -sf x -museum week -sc ala -ri sis -( ðŁĵ· -ãĢ Ĥ -z ies -bo eh -hu es -lu sci -dol a -impeach trump -roo d -don caster -tor re -hero es -fo yer -tar i -blur red -ke w -frank ly -dro id -ap al -Ð ¼ -y af -bre t -par agu -cac ao -ðŁĻĮ ðŁı¾ -ru e -head aches -shaw ty -char ley -pal er -go wns -correc tional -ðŁĺ© ðŁĺ© -breaking bad -ol ing -da p -endeav our -cit adel -tra d -incumb ent -medit ate -foo ted -ðŁĴ µ -shab bat -dayof the -wil lem -gal way -to red -marri age -f illion -sleeve less -aud itor -jin young -invin cible -kad una -a and -volcan oes -mon eti -indie gogo -buccane ers -ðŁijī ðŁı½ -ãĢ Ĥ -lay ton -cuck oo -hu mber -buzz er -Ï ī -to re -stra ins -sto m -pa ine -s we -du ff -z ou -si mi -li pp -ur n -se agu -ðŁĶ ® -sun dae -hi c -ðŁĺ ¨ -bull pen -u per -flyo ver -al dridge -glo bes -ali es -ken zie -ge es -y cle -sp lin -mag enta -j ha -bal u -gh orn -ti pper -wick er -taste of -con clave -ch ale -inv asi -cat er -dio xide -me gab -win n -at p -transform ative -nest led -hi g -bri dging -lil ies -chee red -bad dest -sc rolls -real is -dipl o -ðŁĶ « -conce ssion -prefe rences -explo des -er gon -introduc tory -ine au -ch af -som es -land rover -spir ation -sex y -sco recard -illustr ates -soul mate -wi en -inter disciplinary -fore casting -ent ities -glu ed -en lar -cur t -percep tions -boot leg -mi re -asho k -v az -hor ne -cal le -ac ulture -ther oy -night time -oc al -character design -ar mist -ðŁĺı ðŁĺı -yah oo -ac eae -to se -even to -sou t -nay anth -wh om -v are -ri gging -gen us -hi ve -com mands -sti e -day a -ethan ol -en f -hi fi -flu ence -cle mson -re invent -thermom eter -humor ous -emer ging -aci ón -ðŁĺĺ ðŁĺį -s ity -haw ke -accompan ying -t ility -ðŁĺ ª -re cess -protag onist -l ery -dun dal -int l -britt any -q bs -off the -marri ages -how to -viol ated -adel aide -wit t -lanc er -pak v -hu me -st ade -bra gging -ou tright -ad c -super st -real time -cu res -garden ers -ero ck -dale jr -ver o -bar tol -mo ti -mc fly -v pn -st ink -over rated -guer ra -e tis -ath ome -twd family -th ab -tn x -rafa el -family travel -x ley -sat anic -equ ations -ru dy -wal dorf -stan i -tu be -meas les -zimmer man -obli gations -i ously -bow ser -trans former -sho ppe -shak en -gh ouse -to d -ke tball -share holder -mar ca -kp mg -ak an -given chy -coast al -au th -roller coaster -mar ches -coordin ate -cine ma -apprentic es -par lor -mit o -men on -consider able -bar re -glo ss -enh ances -jaz eera -fal mouth -thra sh -stat en -k zn -eng el -samanth ap -flo ppy -sal om -ðŁıĨ ðŁıĨ -w ack -deliber ate -osc ill -herit ag -du sted -orni thology -pad dle -fer ns -bar un -cl ans -anticip ate -a ay -mat ically -é ĩ -tu mble -post man -unic ef -tro tter -op d -leaf let -ge ist -cease fire -scre ws -cre ation -wal nuts -longh orns -under statement -ab b -proxim ity -na x -un ity -turn pike -orda ined -dub step -chak ra -me ch -love her -look alike -donne in -vir on -Ù Ī -bang ers -vari ants -out dated -in ta -cri sto -sp elt -food and -f on -stefan i -margin al -hu tton -ti ara -tel ford -qu en -fair grounds -que tta -mikha il -heal er -v ball -ty re -under grad -gl end -hom ers -scri bed -main tains -po che -mis sal -mar ko -u as -á n -sh p -con vey -pad re -sab a -pu glia -madhu ri -pa xton -chap lain -n ago -ca si -... !!! -fli rt -sal eh -k are -di re -stam ped -extre me -ðŁĺĥ ðŁĺĥ -ho ppy -guadalu pe -advant aged -eu char -p low -un n -mac qu -port land -cla sh -pe s -lou bout -y p -keep ing -arca dia -fran kie -fi u -de th -encyclo pedia -si ze -inve sts -ðŁį © -geo logical -fran ç -con front -ðŁĺ ¥ -d ys -af m -tex an -graph ene -repost app -ac f -ur sula -gaz a -dd led -fu m -wsb tv -m be -fron tiers -chrono graph -ke s -inter faith -tab oo -spar ta -won do -flori st -em braces -ca w -no el -arch ers -ðŁIJ · -roman o -ban an -sh akers -melo dies -geo thermal -se phora -ìļ ° -оР´ -pro c -hand shake -pan de -popul ated -slow down -hor tons -registr ations -un deni -lan ts -pas sover -thak ur -li ef -adhe sive -pe tal -micro scopy -memph is -confir ming -air drop -mesm er -perce ived -ming le -lifel ine -gh j -worcester shire -pas sions -ach er -el lar -ah o -firen ze -bar ang -letter man -hat field -lu cha -je ter -e shop -william s -horo scope -pre de -east bourne -dur ga -di version -al trin -seis mic -premi osm -nar co -ti r -ori g -or m -land fall -ci ous -lin do -max ine -x ico -tra y -os wald -c ba -ric otta -n cr -mar au -ภ² -gladi ator -ch ery -lun g -u me -po psic -lon ging -can als -ta ya -decentr alized -sho pp -pres sures -mahar aj -eti had -wal greens -succe ssion -sign aling -li g -staf fer -north korea -def ying -as ma -de g -peri meter -oak ville -m sk -balti more -rece ip -de ple -ðŁĺŃ ðŁĺĤ -jambo ree -> .< -rsp b -puni sher -consider ably -in tothe -pari sian -acceler ated -polye ster -low es -fr ying -sauté ed -mou ths -seychel les -ra x -go dis -dak ota -house wives -the me -mat inee -black bird -ye sung -pre fers -pelle gr -in ated -trun ks -stronger together -re pet -re pairing -ped als -toler ant -her r -dun ne -indic ation -decat ur -b tv -exhibit ors -ik on -friday motivation -bra gg -live tweet -al ves -womens art -foreig ners -wal lets -min dy -lan ey -bb in -tv miaw -lif ter -tar get -tam e -dr ou -astro photography -mp c -g pu -nord strom -fric tion -run off -lov able -sp nfamily -ext ingui -bloo dy -sch el -arti stry -sw ish -scar ce -ph ils -max im -pos sum -com promised -sty li -sc fc -is sa -birmin gham -sket ched -angel ica -ordin ance -je ts -conqu er -ðŁĺ IJ -online shopping -s ori -reason ably -nue stro -ar turo -ch l -benef ici -spho to -wel t -ni kk -ðŁ¤ ŀ -dan ao -for mid -as se -af irst -âľ Ĥ -gil lette -as sor -an onym -sel ca -fe mi -bear able -y and -ar mory -cre pe -celtic fc -bra vo -in expensive -de lec -ge cko -new market -snow flakes -kab ir -con tra -can ning -mor pho -gar wal -ðŁĴĥ ðŁı» -fight ing -mu tation -woo dy -ju gg -gr aces -premiosm tvmiaw -kenne dy -gu p -sa e -op ha -off spring -fini sher -bet ts -span ning -mar j -h one -sh ing -contin ents -samanthap rabhu -un related -l acy -explo sions -benjam in -sophi e -no ting -micro soft -as sen -a hoy -i ker -ho fer -mo e -ah madi -yan n -an ak -ma hi -be u -aha h -creep er -baahu bali -am at -pri ory -haw keye -deloit te -sko da -print making -assemb ling -mirac ulous -no ch -sw o -leg a -oper ates -border lands -eli e -stron gh -rep tiles -pir ate -un fold - ¯ -qual comm -un predictable -ot r -rose wood -direc tional -counsel ors -corn ell -liber ated -j ad -ir regular -bulgar ian -high ness -vodaf one -sw ild -mini mize -gra zie -๠ĩ -r stats -stre ep -ome tric -humb le -lu mp -l ille -b ü -home depot -tripad visor -ki wan -a via -er z -ex ico -du f -blu men -mi zing -ar ma -in im -con stan -sor a -ju al -au n -tw ell -tren ches -her a -r k -po plar -recipe oftheday -ll an -bhu ban -short ages -ing don -bridge water -ðŁIJ ĺ -fortn ite -cam den -un cture -pro w -colon ies -t ks -n go -b hm -live pd -spl ace -sli ke -happye aster -ter rence -revol ver -j ed -yy yy -office of -m ts -exist ential -r ourke -explore bc -sse d -pri est -vix en -si ding -k pa -a har -ju ic -ob struc -foren sics -uk mfg -cancell ation -we ary -ab q -ele c -pri zed -deb ts -me zz -salv atore -m dc -gre tte -c gc -th on -snow storm -ts ch -cook ery -å ¹ -wa xing -n acional -mur s -ra ve -cap es -ger main -dri pping -sub mitting -ome lette -iter ation -aj es -shim mer -fu eling -ðŁĩ§ ðŁĩª -li po -bo bble -un follow -islam ist -hi ber -cat s -agentsof shield -sen si -____ _ -ster ia -inst al -ausp icious -har row -over land -femini sts -inst ant -char iot -blind ness -sp ed -sc arec -nu it -mini atures -ho seok -glo ck -fifa worldcup -e te -dis m -we iner -ex foli -ear ts -à¸ Ķ -my art -man il -iss ant -form a -in cu -buffal ob -in tim -mc cul -anj ali -po po -un doub -hil a -fun gal -thank ful -fu tur -en dish -ren ds -th ar -she ff -ring o -nichol ls -io wa -po tom -cl ams -ãģ Ħ -acon f -stadi ums -di mp -di k -residen ces -do v -caric ature -seagu ll -kl m -confe ss -sla pped -cele b -turb ines -pp v -nur ture -el ab -.... .# -tu ff -de press -al far -amii bo -di spon -e wing -que er -friend s -for re -âĺ ¼ -sw t -aqu arius -head liner -cur d -fi gs -o tters -love fl -kare em -go vegan -fri yay -consol ation -at ri -ì§ Ħ -âĺĿ ï¸ı -poly ne -gu ed -o ya -la us -intestin al -cam illa -scal p -pi r -leed s -horri fying -bore tum -dand elion -fer rer -ell ic -as x -so ren -re loaded -ale ague -navig ator -ine tte -add ams -al chemist -ak shay -dystop ian -awe c -n aya -al isa -ai led -ag or -avi ator -ali zer -smo bile -findyour park -cop ying -to ddy -sh ti -mon ger -cal houn -nap kin -break up -y atra -se thu -ric hi -eras mus -fer ry -am ore -prac tise -bo bo -power point -oo se -li ffe -chin a -sh ka -fad navis -du ane -war on -fal se -ðŁļ Ĥ -wa shes -disc ip -==== ==== -g k -ab b -stub born -medi eval -p ci -ðŁį ª -maril yn -h yo -man di -cr i -prede cess -continu ation -om usic -s lat -wh al -mall ory -bon n -shen zhen -ca i -âĺ ĥ -sa fest -for wards -dra wers -bla sted -sle e -mor phe -mb ta -dumb ass -ÑĦоÑĤ о -alhamdulil lah -ec lub -al beit -heal ey -ayurve da -adverti sed -cro cs -itt les -bry son -be i -nj pw -honore e -fu sed -ðŁĶ ĺ -mul tin -n aga -de parts -ko p -kin o -jhar khand -ed na -ax le -mil ton -supremac ist -marrake ch -domin ic -tran script -] [# -: ). -wo c -sur rounds -o gil -leaf lets -co well -whe w -tru de -proli fer -succe s -sports man -con dom -po che -k up -imprison ment -{ } -scram bled -å Ľ -ka ine -cell phone -metam or -con i -remn ants -ee z -down pour -afterno on -exerc ising -ber ser -architec ture -wick low -m ns -is p -bo c -n iss -mn wild -stu mble -r si -lu ffy -sil en -dd ad -bul lies -haw ker -bb cc -scu ba -e pp -que ts -for aging -pal let -ha di -cinemato grapher -cat chers -to aster -k hi -lite coin -kid lit -amher st -maur icio -ip ad -mar malade -fe y -don nelly -g to -est as -cere bral -ant grasso -zz led -vir gil -swa pped -ðŁĺħ ðŁĺħ -no dapl -greate st -nhl bruins -fra ser -b mo -ane w -. âĿ¤ï¸ı -se gregation -remark ably -mccor mick -lo gger -er as -contrac ting -âłĢ âłĢ -yor ks -uku lele -touch screen -de cked -ben n -south wark -ra vin -nu mis -ðŁ¤ Ļ -ru t -gre co -eth ic -red neck -ar r -t cs -ih ri -ðŁĩ« ðŁĩ· -l k -inher ited -zy k -viadu ct -marty red -hi gu -ss n -be in -street style -fer gie -bank of -æĹ ¥ -stake holder -exempl ary -cre ss -ess a -ero tica -intre pid -gom es -bra un -bethan y -bang tan -pulmon ary -m illing -doctor ate -trump russia -ठ° -s ani -bl att -pla u -depri ved -t le -ful ly -bour n -st ak -lufthan sa -kio sk -far oo -def y -bad an -ðŁĺĺ âĿ¤ï¸ı -rit z -tri sha -ran ds -middle sex -arab s -pro j -sport scenter -repe ats -iv f -bleed blue -as sure -o bs -territ orial -ele n -bever ley -ann ah -âĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı -z l -for good -science fiction -gla u -son ya -pri th -st weets -mix ers -mari o -ant elope -writing community -went z -den ham -be di -sf o -harley davidson -look book -immuno therapy -or phe -es ville -ed ged -tas k -sb ball -corro sion -kilom eters -co sting -play back -ke ke -di visi -u ter -re location -yel led -pen g -up beat -ser ve -âļ ł -hal en -stir ring -reh man -en v -schu macher -frag ment -alkal ine -sb k -resil i -share point -rol lover -tra sh -counter part -âĻ « -ob itu -à ½ -ãĤ ¹ -mul berry -ðŁİ Ĩ -auton omy -spra ying -nat l -love you -fran ki -nu k -esc ar -can teen -ali baba -de plor -mole cule -pu d -fort night -blon die -sp hin -portra yal -ta che -bu te -consi sting -freep alestine -c sp -im mort -d ns -ðŁĴ¥ ðŁĴ¥ -tour de -coo king -archi val -ga thers -bit t -b anc -pre mature -snow ball -poetry day -lou dly -fug itive -ed ay -em ra -ðŁĩ¸ ðŁĩª -sci en -node js -jur gen -je ong -band ana -un is -fox sports -v andy -pro visions -wee p -tu k -i ko -h oun -zig gy -z r -fil let -bat a -tin k -con e -we want -k ilo -hor ace -sl t -sc t -stay tuned -victor ia -umb ria -att acker -ingham shire -fright ening -no ir -fr at -con tempt -lia ison -ho i -br ink -tr ill -ni agar -kick ass -dun das -not my -rho de -bu mble -no xi -fa g -spec tators -mancrush monday -jin ping -distr act -dais y -wal den -portra it -ar thistory -vol tron -ev el -is c -ac m -r ite -na o -de ported -swe ats -ru fus -lo bo -labor day -gam o -ihri thik -bl it -abdomin al -ãħ¤ãħ¤ ãħ¤ãħ¤ -i it -e q -bu sy -allu arjun -un disclosed -de ton -pro create -ki l -ðŁİĤ ðŁİĤ -mitch ell -ki i -inherit ance -al p -jo burg -pat rolling -compul sory -un signed -ni am -l ga -eshop suk -tr illi -ma w -appreci ating -rock ab -mañ ana -an tal -mal vern -roy o -grand prix -sut ton -go ftheday -dig i -ãħĭãħĭ ãħĭãħĭ -t les -varan asi -erec ted -discip les -cont act -ðŁĺ µ -li d -⬠ĩ -scen tre -radi ator -ing tips -trans itions -thursday motivation -chem ical -separ ati -sal is -mi m -geo graphical -book fest -/ . -âľ ĭ -v ae -cur rie -ag garwal -acceler ation -the ses -lg m -u mass -pro portions -nat a -ani ans -ku ch -be acons -ap r -@ # -ðŁĴª ðŁı¾ -nu ke -sher aton -ki o -ma kati -polit ico -mor ale -ì Ļ -econom ically -gg ly -ss en -pa stries -intern ships -vic ente -fanta ken -aveng ers -accu se -slee pover -indic ated -the dream -ster one -ren ders -fro st -ou i -gre gg -d ore -⾨ ⾨⾨ -pu gs -sat y -nu mb -hems worth -tam i -la ssic -schi ff -igle sias -ag awa -] " -re shi -game stop -divor ced -theat er -clau di -un conventional -prophe ts -ac in -twel f -tow ering -t ml -sc lerosis -k wan -ge ts -distur b -na ira -ener g -pir acy -pru itt -noti fied -hen na -bra m -ground water -bl s -opti mis -$ ) -luci e -biz hour -fang irling -gr ills -or l -ver se -c ina -law less -artistson twitter -tele vised -marshmal lows -radio head -bar r -m fc -bre vi -mmor pg -g aya -âĸ « -sub titles -j t -disney land -to bago -nh m -groo ve -fi awec -" / -ba o -scra bble -om ni -ff l -um c -si mba -ali er -ter rell -plu me -mi di -dig nit -co c -bru t -ad ata -alche my -d sm -ðŁĺĨ ðŁĺĨ -win try -spa res -cu er -conclu sions -to ys -od or -fl ann -gar vey -scrip tions -inspec tions -cat ap -ang lo -st louis -heim er -at ay -tr ich -en yc -chil ds -vent il -mont p -guiller mo -circu lare -z ell -mode led -craf tsman -al ina -stimul ation -cashe w -ju das -best of -to ire -susp ends -scol lege -real ising -by tes -bloo ds -as si -ðŁĴ ¿ -o hs -ðŁį ĭ -scallo p -ठµ -gi fting -camo gie -wil kes -o zzy -ðŁ¤ ¤ -ver onic -sav oy -deme tri -baby girl -ðŁĺį ðŁĺŃ -so x -cly de -induc tee -count down -self care -ठľ -vi ka -tor re -phd chat -pe ars -aw h -suff rage -le sn -admir ation -mp p -shark week -schul z -santor ini -clo ver -( * -stras bourg -ex iting -so yu -finger print -che a -ãĢ ľ -vin dic -song writers -so a -prou der -nam a -= )) -simple st -delici ously -gil les -u q -mn wx -ep p -sh un -ken nel -fall on -ðŁIJ £ -sin d -tra gically -out es -modern ism -co ke -gy n -spi on -âĺ¹ ï¸ı -le am -compress or -apolog ise -twent yon -fan atics -âĻ » -sco tsman -sa wa -ko u -as er -ภļ -welter weight -phen om -twick enham -stri a -p out -ka z -gi am -cd p -ho y -emplo y -red mond -ภĦภ-sm ere -trance family -proto cols -pie ce -lu iz -iter acy -carl s -united states -har med -phd life -ch aw -foot prints -l é -cho ker -z ana -sli pper -eric sson -insul ting -articho ke -advis ing -acquis itions -op or -mut ations -re ar -ॠģ -pod cast -wi ther -kun g -íĺ ¸ -win slow -di apers -ðŁĵ¸ @ -ec ker -col lar -hu ey -gi ro -mono gram -kas ich -si veness -malay si -arom atic -gre s -gali leo -u ji -rob b -dr m -none theless -as a -: > -lo a -l np -at work -ag t -laksh mi -pipel ines -id al -stre l -re all -chain z -stone wall -san sk -ðŁı ´ -pied mont -hoste ss -ci u -t é -analy ses -wil helm -scott y -rw by -mosqu it -use mb -qu ins -ðŁij İ -tu cker -s conf -speci fications -psychi atry -broo kes -s ils -ol af -de to -co di -cli p -fil th -womancrush wednesday -go to -ang erous -be ale -w tc -paneli st -ne x -lar sen -emili o -tab leau -h itters -conce ived -americ ani -or tega -mar di -Ñ ĥ -pain tball -thir sty -new yorker -etis ation -go ss -we aker -u gh -tro ll -har ga -du al -ght ning -at ine -ðŁĺİ ðŁĺİðŁĺİ -cook out -pyrene es -po ss -authent ication -sports wear -yun ho -kir o -archi pel -shen ko -ren der -nov ation -divin ity -ðŁij £ -su fi -humb ling -ge opol -devote es -wait ress -tr ough -py ro -i ba -bl ing -gra f -epilo ts -bt r -of tball -bas king -domin os -so om -r ath -sher yl -qu el -astronom ical -wel d -track list -sig nee -slee pless -com man -ch ron -summ on -pure michigan -cri spr -sli p -la gi -ra q -um u -thal ap -char med -scru mp -quad copter -ski p -peter sen -mun i -ðŁĮ ¾ -mon aghan -tra ys -ick ed -canad aday -te gr -ï¿ ½ -hot ness -heavy metal -ab ar -gop debate -az ul -spider man -sun flowers -ľ ë -web comics -bar d -Ð ² -nichol as -slu sh -ram an -mark ham -ffici al -ff ler -íĬ ¸ -ple ss -anush ka -to to -sk aters -pro wrestling -compet es -ay ala -myster y -thr ills -mp g -independ ently -y ul -imper ative -formid able -tire less -st acking -ton gues -mal tese -pot ts -mat ti -char ting -chill out -super nova -ome o -sky sports -nu tty -ðŁĹĵ ï¸ı -ro han -insp ired -concier ge -ser ra -ma kk -gal at -chi pp -ye v -ì £ -reim bur -op ul -kimber ley -i eee -bre men -ch itec -or in -nak u -bon kers -foo ty -emer gence -ðŁĨ ĺ -sti p -serge i -zo ey -ai me -wou ld -dy es -destin y -vinai grette -dri er -circulare conomy -an archi -ss r -sch el -cin er -gro om -determin ing -gar min -cal ais -incarcer ation -bu kit -no i -chelms ford -mckin ley -chi pped -belong ed -tu mors -str oud -mi i -influen za -wwen xt -tun dra -tele communications -cat sofinstagram -t ages -beat ty -o du -ml kday -oo per -dang le -ak ley -cru mb -anti gua -ti mbers -rou hani -ðŁĴª ðŁĴªðŁĴª -ha fi -... !! -w cs -coo p -sn c -lit res -ãĢ Ĭ -ha z -co z -k ant -green field -cur ti -y ale -flye agles -what soever -wor thing -rou lette -flyeagles fly -un da -a inted -stand ing -lusci ous -h pc -effic acy -ash land -me ghan -ky wx -n pr -bath tub -ac os -h ani -mar cor -man tis -da isi -bo ba -ab bie -mu til -vi al -spy der -po z -g ti -el fie -nigh tw -metro id -anton i -mad die -dh ry -dar lings -ten ds -taek wondo -atlan ta -me ow -chlo e -ãĥ İ -ym es -siber ia -k con -gu es -mar iner -fac il -azz le -[ ... -han nover -bav aria -vir go -te uk -u sps -) # -wall a -sam pson -need less -ver bally -hay ley -bow led -pi us -lam pard -ham string -vol vo -road safety -cho king -sor bet -a hem -healthy food -brai ded -horticul ture -cr ative -che ek -ad do -the force -ko ko -schiz oph -j ie -w ada -twentyon epilots -h bcu -pro ton -pau ls -lou isa -lat am -kyr gy -com pac -sd k -sap i -?? ? -liber alism -ep silon -ai den -w usa -spra yed -baske tball -kim ono -blue wave -ali as -ë§ Ī -mug shot -ce c -do gre -ad ora -ðŁĵ· @ -kra kow -intrigu ed -exhau sting -astron omer -ven ison -lady bug -ci v -bra e -us m -bri be -acup uncture -pembro ke -ke ating -chi e -y ad -t si -sm i -see ding -gate shead -lis boa -gy p -canv ass -ðŁĶ´ âļªï¸ı -op i -ni r -soci etal -ly te -ati es -c sm -ar tery -al in -aka poor -abstr acts -â̦ â̦ -teen wolf -ne we -travel gram -sentim ental -per ched -han del -ho ek -f ay -coordin ating -anim ate -man ian -effor t -jer ky -f ck -adri enne -ma bly -tra ding -my el -spi ro -sol a -stor ing -over drive -monday morning -dream team -pul se -bon di -ber nie -pgat our -tri poli -son am -plat t -âļ ¡ -ag roup -îIJ Ĵ -inv ading -v cu -k ell -ñ os -un dead -pod casting -mercede sam -mana fort -cor tex -que so -impecc able -pal mer -wil doz -sport sc -guacam ole -dispen ser -cate gori -stun ts -per il -invit ations -dune din -xi e -achi eves -saf er -pre ds -ph an -knuck les -k ak -igno res -lovemy job -aru ba -ound ation -datac enter -co vert -gr ing -cou ple -ا ر -vol i -mc cle -arti sans -lu do -kal am -arom a -under taker -hu la -wiz kid -gu mb -god frey -bakers field -ker n -engine er -car ve -pal in -guaran tees -pe bbles -b ays -zi eg -fin k -â¬ĩï¸ı â¬ĩï¸ı -down pours -ro chelle -rasp berry -ðŁĺ ® -gra phies -stom p -caf es -ari zed -utt ar -cal vary -dri e -crusad er -bus an -tux edo -si u -seam us -cul tured -blan chard -town house -ge red -butter milk -flu ctu -roger federer -hel i -ðŁ¦ ĥ -u ous -ram esh -mu ppets -email marketing -ye ss -br ice -ri zio -pel o -donnein arte -u rable -inve stin -bump ing -raji v -sav a -thro wer -fore x -o hhhh -th rust -pull man -r fid -sep sis -le ed -fri ght -roun ding -ne b -ph ins -ai sha -utili zing -squ ats -gold smith -j ic -bo ks -vau s -i po -exclu sion -tari ff -po kes -min al -land s -en force -washington dc -or char -g x -mar ys -ey our -aussi e -bak ers -un popular -latin os -lar ge -pu tnam -bol o -wa de -pel o -di zz -ob struction -fla ppy -weare the -depend ence -pajam a -e te -y ann -e wan -disc la -a ay -kar ina -e ic -an trim -w soc -neg atively -kai do -fotogra fia -dh ru -colo ssal -mcle od -k wang -mani pu -ex hilar -us atoday -summer slam -co les -tapro om -unbeat able -de ma -tic ks -k ling -fil s -campaig ners -ภķ -brew ster -audu bon -qu ay -ch s -ki gali -d ler -strength ens -som al -sign ingday -gol ds -pig ment -orche stral -g q -lin kin -ðŁı ĩ -ta w -algar ve -ho v -ear le -gold fish -am ig -ex er -ben in -dru id -ðŁIJ ¸ -she m -quat tro -mer cen -men te -incorpor ating -bon anza -state fair -en de -concep tions -e es -âĻ¥ï¸ı âĻ¥ï¸ı -d son -fire arm -orb ital -we h -multi p -fo b -requi em -p light -thou se -sa id -oc re -remem brance -n old -chi pping -be v -er t -ca thy -sy m -ri ggs -m ley -dialo gues -sl ender -how l -gau teng -wd w -to bi -smo kes -im plo -b pm -ad n -mom basa -cap sul -bloom field -artic ul -cle o -goog led -flu ffy -l ard -en zyme -ve sti -ibra hi -fl ame -e mea -out ages -dispro por -ble ak -an sel -ick er -st louis -stock market -good friday -sau lt -stal led -pro m -ep som -b é -the se -sau ces -me w -lit fest -pre d -re u -kar ak -si enna -ell in -bio technology -ï¸ıâĥ£ - -tac tic -sa in -por k -mon za -ka j -lu sh -compart ment -chang ing -shraddha kapoor -fo al -ar tem -cu ando -can ola -ori ente -me sse -d ited -br c -box er -bbc two -s st -ment day -em ing -de wey -kof i -âŀĸâŀĸ âŀĸâŀĸ -reali zation -smo l -tw ood -san je -flag staff -ber wick -cor set -can ary -whistle blower -et ched -com posing -squee zed -bow er -auto desk -ne h -mathi eu -ba ja -Å Ĥ -hy dra -da im -am eri -insi sted -mer lot -gar ros -heart news -gaine sville -cut ler -bo de -ðŁĺī ðŁĺī -lew es -scoun try -g sa -us u -cc m -god awgs -phara oh -cra e -mor ley -hyp noti -f ades -neur ons -fu zz -ing co -high landers -star k -vig ne -pac kets -amar illo -reu ben -insul ts -bas ic -vec tor -n me -ac ruz -tro s -transm itter -ðŁĺ ŀ -interpre t -ðŁĺ ² -pre quel -mc gowan -dis semin -ðŁĴĺ ðŁĴĺ -mascul inity -indie gamedev -ali ve -te t -pe tal -ema iled -ar med -ko o -he er -ba ird -super junior -metro polis -delav in -decl ines -stit utes -Û ģ -p tbo -g lan -cho res -e aling -chri ssy -ste mc -vi an -assassin ated -pron ounce -illeg als -discover y -cav ill -fri fotos -f al -so i -sabot age -t int -p dc -ðŁİīðŁİ Ī -ãĤ Ĭãģ -ji o -endeav or -in sig -commit tees -she arer -me tz -mar rying -h dd -g by -fre t -tri sh -pu l -scrip ted -sa ki -l w -ke ye -shim i -nan aimo -ca h -à « -tem pered -ici an -du gg -dish washer -air field -s rugby -gr inch -y st -r ms -mahat ma -lan kan -disc ar -dige stion -no des -l ls -om ic -gu tter -tis garh -feder ico -election day -bo he -master card -fire ball -âľ Ķï¸ı -oy ster -p ong -do k -en route -m vc -beat the -ali stair -shu b -sh aming -cherno byl -ghi bli -the s -pin ion -d bs -sal ts -ic tion -epi ph -nc pol -in convenience -whit ley -inspec ting -wood ley -wi ener -skil let -no les -m ca -h ina -a sha -willing ness -well ness -tam ed -show time -dis advantaged -ber nat -us n -mission aries -coun selling -arrog ant -quant itative -leg alization -ho dge -energye fficiency -cameron dallas -pos sessions -p bb -harris burg -v g -hindu ism -happy thanksgiving -fi b -re acting -tweeta picture -pol iti -mu ppet -hur rah -pac e -coast guard -guar ded -as am -par ry -fore very -x q -oom f -ke anu -j ind -ri st -customer service -sac red -ðŁĺ º -ton er -occur rence -mat u -val dez -red d -is ak -power rangers -pe asant -raj ini -abra ham -e mil -car do -tr il -hair styles -obsole te -sam pler -direc tive -delavin kisses -ver ton -glo s -sp ay -paler mo -com ets -man ziel -chicag of -ski pped -pic torial -h ant -b mi -a ol -re opens -pad dling -devo s -fra ud -bas eline -que ues -sp ired -sn are -eu ve -descri ptions -daisi es -ca ching -gall eria -tri mmed -stin o -recy cla -ic ular -bir ken -raw lings -fli x -chic as -b gt -lik eli -argy ll -thel ove -ga ston -bl anca -ha k -f one -sailor moon -h aci -ima c -fl yn -de can -bel les -ap ic -zo g -taun ton -con stance -lasag na -ker nel -in ka -har bor -collec tively -calcul ated -av ille -shil pa -pur du -gi mm -fun er -a est -pembroke shire -nighting ale -n unes -hyper tension -hu bert -sli ders -infer tility -comm ended -transat lantic -metr ical -!! @ -Å Ł -ss g -bac ca -inver ted -fun factfriday -it ans -albu m -acqu ainted -ri er -whel an -sar ab -mu e -snoo ze -pi ff -agre eing -sp itting -jer maine -n ye -âľı ï¸ı -am bush -ze ph -con greg -univers ity -s app -wann abe -pat rice -ib d -do glo -fri dges -sun d -king ston -ar gon -kam en -hardro ck -ds ley -do lores -ì ° -ota ku -pi ping -be having -âŃIJï¸ıâŃIJï¸ı âŃIJï¸ı -blue bird -an sari -teapo t -fire work -cro p -log ans -ty ped -thick ness -ig ers -c fp -dys functional -contra sting -et ty -aston martin -tx st -dra grace -at tributes -marath on -manu scripts -john stone -ðŁĺ± ðŁĺ± -bo er -ay u -aru gula -poo rest -con du -assu mption -anag h -no h -delav in -sit ter -g ö -mor ow -kick start -com i -gl acial -ghe ad -ba in -ker shaw -en dof -fre ud -om at -i af -hu g -sign up -each other -defin ite -tu bing -shak ira -ðŁijı ðŁı½ -uu uu -sw in -sham bles -ol as -sk ell -brit ain -kn w -clu tter -om y -j ens -hang ed -city scape -scra ps -un locking -dead liest -er no -breast cancer -a it -inspec t -fu ri -ðŁĴ Į -ku d -ju le -or ah -mi ds -m dt -bur gring -r attle -pu sa -stal k -cle ans -iss ance -z ek -worth it -nam eis -musko ka -council man -urban art -bar rac -un solved -tu l -g ita -white board -soy beans -em ent -cont i -saturday motivation -conveni ently -doc king -t ado -âı © -sp ino -puppy love -po f -fabric ated -robb ers -adop ts -ti fied -kk r -indulg ence -notic eable -macqu arie -chap el -sensu al -ki ko -melan oma -lore tta -li ance -ab en -sp lus -ga al -ac ele -lib dems -compar isons -ðŁĮ µ -rhy thms -mer y -en capsul -nap ier -ðŁijĮ ðŁijĮðŁijĮ -ðŁij IJ -plat z -fre sno -re formed -ran bir -el it -the best -bhu shan -vin nie -impro vised -s ittin -re created -e ba -ec ker -ac rob -pon te -cor d -gi ddy -eur usd -fe ver -intu ition -gar i -dum mies -bud weiser -amend ments -te tra -sch nit -ay as -mar ys -ci st -k ani -ker mit -ðŁĺ±ðŁĺ± ðŁĺ± -tin ker -strol ling -di visional -niger i -omin ous -menstru al -kar ab -k hy -bw fc -pan handle -l illi -well er -stra pped -son the -transfer ring -ethe real -sne aks -ru dol -gab les -jac king -cin code -for tune -canadi ens -con for -ab normal -frank lin -tit a -mu la -persi st -cu ties -ki el -ðŁĩ± ðŁĩ -her mann -aw k -fi asco -ko to -we ta -hi ker -budd y -preven tive -mcgra w -game boy -forsy th -top shop -si ob -sad h -in tram -follow art -so aps -dragon ball -ou x -morri son -๠ĥ -lu bric -adul thood -morri sons -âļ łï¸ı -her mo -ta ka -stall one -mis use -team gb -ra gha -con fined -at y -hom ophobic -nw o -sky news -ho ya -ac rosse -wi iu -pur ée -jed dah -ðŁ¤ § -advis ers -ph ine -an is -scrump tious -ë° ķ -c ke -vin y -ter m -s dc -o do -home school -vas c -leop ards -debor ah -illic it -cur ran -as roma -nau ght -mar ig -brand i -em p -ðŁĺį ðŁijĮ -î Į -su spend -lu z -initi ation -sch aft -jensen ackles -craw ler -post doc -des ks -trail blazer -den omin -tri x -no ise -po et -± ï¸ı -s mug -vol atile -proof s -pharmac ist -sardin ia -mash able -kim chi -co ed -schal ke -doo dled -c sw -sh ur -ro x -do k -chris brown -mathemat ician -ab ound -ang elic -rock ford -d ole -yor kers -ms n -g man -xavi er -bor rowing -mark ings -longh orn -k ja -diver ted -mm it -euph oria -ay yy -te a -pa h -ck i -un cut -li ven -ky ung -fan art -mer ing -red ding -amo vie -gri di -c thulhu -schol arly -ju dah -th bewithyou -eu calyp -ðŁIJ ķ -hert fordshire -cour troom -by u -auc tioned -ple ase -mar cia -ê° ĵ -succe eded -el as -arvin d -t lot -saig on -re tt -ra kesh -fd ny -as en -se bring -gladi ators -you know -v lad -gol a -par ap -ÑĢ Ð¸ -sab cnews -one team -oh l -sun e -ri j -cd c -star gate -run down -plat o -ph c -chat ter -ra viol -mn f -mand ala -li et -ภķ -mari a -hun gover -consoli dation -fer rell -tradition al -ilove art -gal ap -ðŁı Į -que zon -espa ña -ðŁĩ¨ðŁĩ Ń -ho bby -steam boat -mali gn -guil lau -pro hi -its me -íĥ Ģ -in scription -al z -mari an -k ade -mm on -adju sting -ne sts -intern ally -ci r -vik ram -mal ala -k ph -fel icia -the real -cap tivity -at is -marcor ubio -kale ido -che v -mano j -le more -gent ri -vi ps -tro pe -" âĢĶ -pair ings -mal nutrition -fr ay -desig nation -brun omars -az e -tor rential -pan zer -ga il -under the -the ological -schizoph re -dazz le -freder ic -mo par -ad illa -so ggy -ra un -medi ocre -colo rec -i fe -p inst -blu ef - ² -world water -gir oud -clar inet -ad olf -tar antino -receip ts -assu mp -ðŁij Ł -coffe es -âľĬ ðŁı¾ -du plex -s of -r x -lin o -timber wolves -pan dit -mo tm -e ga -ay ama -ach s -outsi der -ll en -co er -til ly -cheese burger -ma ds -ple dis -emp ty -national parks -az iz -p mi -jun kies -f ener -sq n -è s -gener ation -cleop atra -bhuban es -mosqu es -ty free -popp ins -tw c -or well -n age -ka whi -hol low -dal ai -¨¨ ¨¨ -ou ro -m health -gi on -az o -vis as -reneg ade -re ic -w sop -ðŁĴļ ðŁĴĽ -e chel -tox icity -mü n -bun k -stimul ating -asth our -\ ' -ep h -ende mic -cn bc -shrin king -peabo dy -michel angelo -can yon -wal e -su mi -si ders -inu it -? . -profession alism -dr acing -plat oon -p ons -out bound -maple leafs -de sol -cen cy -a than -ver ma -ru bbing -ok an -ðŁij ł -mull ins -authent ic -Å į -alman ac -ga ia -bb q -on imo -ke h -ty a -tou ts -y av -re posit -, . -wi ght -se eyou -cal lof -done sia -bar gaining -gr anth -sd su -amphi theater -p su -re watching -wine tasting -peak district -dete cting -thur man -phe e -èª ķ -u mich -re r -sculp ted -go le -name sake -ðŁĶ ģ -serv icing -bau gh -pu gh -pen cil -dar th -munch kin -at orium -ten ers -sun y -rolling stones -mag ing -star rer -i dris -fe instein -ag ron -âĺºï¸ı âĺºï¸ı -supervis ed -chamele on -aggre gate -succe ssive -mo gul -inst yle -pol dark -custom e -ohio state -ha ya -ci des -broker age -angel ou -fifa wwc -de forestation -al ton -pam ph -hu gged -ho bo -change able -ku ber -bur roughs -demon etisation -cape cod -vers atility -or ice -le ila -womenin science -tu a -he dges -embarrass ment -ali fe -so ars -ni ghter -hy mn -gi pp -chas u -tech s -ni all -k illa -hi ka -cam els -valu e - ¢ -sc oops -mah moud -clu sive -adri ana -pac o -oz il -un as -transl ations -whispe rer -s bi -bu xton -bio tics -indi ffe -ken ney -k lar -et ching -barra best -inst ability -se ine -vo tel -blo gged -whis key -my space -t ant -lan dia -give back -illu s -aw ak -ac ab -f bloggers -cloud computing -blat ant -syri ans -band ra -sty n -an em -ke ted -kar thik -barun sob -pin ot -gu bernat -gay e -arti ste -i fied -conven tions -hu an -geni uses -eeee ee -fol ly -somer ville -pride month -ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸ -chemo therapy -paul s -bak ar -ìĦ¸ë¸ IJ -taiwan ese -fol lo -c ss -re ign -nn nn -fla un -catastro phe -iti es -frag ments -extre mists -ym oun -car men -eze kiel -conne cting -se h -man ta -remodel ing -we ymouth -at oms -ce m -ne well -lu mi -the open -mo c -mili band -g land -z shq -mag gie -mani acs -m sp -ad y -cre ams -le anne -e sta -py g -af finity -pray er -dun bar -ligh troom -ac adi -wyn onna -roman tic -state dept -sick le -wh os -lam o -et our -fin ity -shru b -shar pen -pun dit -ed on -af ore -mar s -jeff ery -ter ps -medal list -kath arine -accu sing -ta z -roy d -from home -confron tation -alle gh -ðŁijī ðŁijī -refresh er -ran veer -never land -jo jo -lu crative -en am -ca ver -pa edi -man jaro -flu ids -the ssal -oppre ssed -mu ss -joh anna -Ø ® -cn g -buil dthe -sett les -s ith -fu ego -cl amp -ar ag -pay er -ted x -mand y -inter stellar -fr c -ch and -b cc -mo lo -len til -johan sson -grims by -nature lovers -ðŁļ¨ ðŁļ¨ðŁļ¨ -shin de -x in -international dayof -transiti onal -sat a -cad dy -wo d -if u -ha ys -holl yo -j ang -ir c -co im -grad able -" " -ðŁį ´ -ঠ¾ -a el -n yo -west lake -time out -sof i -phenom ena -cultiv ation -ag no -un armed -so t -con j -gen o -royal navy -nutriti on -fair mont -ti relessly -sn g -re ty -mic a -lu cent -slo ane -droo l -riz al -od ell -critici zed -. '" -la ze -deser ted -co der -pra s -l illian -itiner ary -dav y -an ap -whi pping -hobo ken -kare ena -çľ Ł -vi us -ter n -nan tucket -mis understood -bu laga -st ant -chin ook -z am -reli es -d ss -ed mond -sket chy -m ell -fe x -rec tor -dist ill -day dream -wine maker -ri pley -billion aires -hel ene -ati f -cul prit -bertr and -wou ldnt -ma pped -v ak -gla dly -parliam ent -kidlit art -ware ness -goli ath -âĨ ĵ -view point -tat ted -fu ls -dor sey -ang lers -li ds -ki ya -bow les -be h -b ite -compati bility -ance stral -pro x -beha ved -gubernat orial -ch field -sab an -z h -teen y -shibu ya -holli day -pan cy -âĿĦï¸ı âĿĦï¸ı -seun gri -? , -ðŁĩ¦ ðŁĩ· -im itation -impac tful -any i -gene vie -añ os -bate man -gli der -af ar -ra sheed -effor tless -sh war -dach sh -er un -at os -kin i -ch d -kha ki -k lin -felici dades -bel o -as l -to ppers -fin ley -stac ey -rigor ous -kar ting -le ppard -car michael -be ret -c se -ak hi -mer ingue -ab an -ha ke -ger i -er jee -re sto -comm anders -pr it -fl or -ad ven -ex termin -remain der -å IJ -es g -martin o -lulla by -| @ -mi gn -in store -big bang -cor di -cau ley -ante bellum -dg ate -cro ck -span dex -scaf folding -ore os -ê°ĵ ìĦ¸ë¸IJ -pom ona -ma uro -uni versi -re mi -af ootball -t ant -sm alls -ne h -worl do -tropic al -mor ph -jav elin -gla r -arqu itec -reminis cent -tu bs -spide y -make u -syl la -progressi ves -blo t -shor ten -keep in -ch ak -ang st -super food -decad ent -ston y -neuro logical -ar boretum -ann ak -fe ma -per cu -dis respectful -small biz -lo x -co om -c sc -bs bi -pre valence -him ss -esp an -mo ga -fr ampton -sky map -mas se -levi athan -( ). -noctur nal -car ameli -ang or -amne sia -outsi ders -she alth -rhin o -ant ag -ag io -ðŁĴ° ðŁĴ° -take me -kab addi -c si -m sh -coch rane -thessal oni -sil a -ha us -du sting -obe se -mack lemore -mani sh -len in -m dc -gro wn -shef field -s rs -ke le -car son -ch um -dah lia -can tore -opp o -how ling -cyber crime -sur realism -sc ran -fa iz -thre n -rac ists -r out -pk not -se mana -sin i -mc cull -ma chi -alfon so -y b -sar dar -kend rick -den g -reci pro -on f -doom sday -bri bery -custom iz -art is -c pi -ðŁĻĪ ðŁĻĪ -sla va -let te -en s -âĿ¤ï¸ı ðŁĺĺ -cra yon -ad an -tr c -migr ate -simp son -row ers -king sley -farmers market -shee han -ne phe -bor non -car ton -mic key -all ure -u lu -sli pknot -heb do -gui do -dog celebration -online marketing -acceler ating -) .. -origin ated -macar oni -ed tech -out field -mit z -disc us -adverti ser -man or -ha shi -descri p -cap ita -ful bright -recep tor -con n -con ey -spion age -r attle -pre st -u li -blog post -acker ay -) â̦ -red velvet -mat th -inspir ing -b sd -ker ri -po con -mil lar -re pur -accent ure -ä ¹ -ram bo -ragnar ok -dele ting -british museum -pat ory -leip zig -flori an -sci fi -in ers -br ate -yo y -melis sa -ab er -ma sa -po te -mosquit oes -transpl ant -r pa -; )) -bast ille -yl an -joye ux -melo dic -cap tions -atri st -roch dale -gott i -pew die -cuties aturday -who is -aqu aculture -tiv a -sp el -he ss -ha ji -fred die -co per -brand o -v k -photo book -* , -my dayin -micha ela -brune i -sr ini -in te -Ä ± -de ol -d fc -separ ately -bun d -ve sts -to c -me ck -rein forced -constra ints -car roll -sq ft -re ver -cam per -bird man -in action -gener ators -triumph ant -pe sts -o vo -gy pt -al amo -sc aled -suresh pp -sd n -is mo -gi os -) @ -justic eleague -restaur ant -gab i -den gue -next gen -exemp li -ap ex -inspir ational -down side -kid z -u pl -et na -alvar o -fel dman -bar net -m ha -es ch -bloo ded ->>>> >>>> -kan i -ho fficial -casablanc a -bir ds -ty ga -sw amp -o day -new castle -nb ap -ci sion -cho ols -af lo -ne p -mon ton -ak b -super model -down time -th os -sc wx -snoo py -ag greg -yo ke -nor cal -we tt -prolon ged -me tast -beat er -f ta -t lap -disgu sted -y h -voice over -itch y -ip c -ðŁİ ¾ -phe asant -stra its -ram pant -j g -fer til -assu res -fortun es -sal inas -liz ards -kett le -i bs -cyn thi -he g -mc cr -soccer oos -happen ings -cor den -ðŁĺĤ ðŁijĮ -t ches -egre t -wolver ines -congratul ated -ho gg -bott ling -wr i -fer ri -bo sch -af ire -og den -s jo -j dm -sv t -con tex -tol lywood -min k -me se -super sonic -op oulos -å ¸ -âĶ ģ -knuck le -gu ise -gam i -chu cky -z inger -radi al -compla ined -bo da -fe tal -discipl ines -cor ro -ðŁĩ®ðŁĩ ¹ -op ted -filtr ation -ad nan -em cee -mi stre -insom ni -fer gus -tra jec -on don -med tech -tanger ine -madra s -gru e -cab s -z hu -sureshpp rabhu -insul ated -day swild -pp m -band ai -v day -s ff -squ id -lo thing -not dead -expre ssive -cu ll -ala stair -x u -up front -fish ers -en es -um d -dis missal -sti er -sel s -lu st -re active -prote ster -eyel ashes -al im -goo de -gre eng -da ir -com pen -anush ka -proto typing -ma pu -bear ings -ðŁIJ Ł -for me -bsbi botany -timo thy -out skirts -am bed -are tha -wend ell -stre aks -ni m -k pk -sne e -fit ter -quo ta -p ate -win ning -ðŁį Ń -sho pping -ma inst -cul ver -ste vie -mcfad den -counter parts -gren fell -fol som -dor set -tech crunch -⬠ħï¸ı -tip tuesday -us l -tre x -geor gie -ranveer official -lic ks -se wn -k f -' â̦ -jap s -p ate -orth op -fe sta -stra s -mon tal -hammer smith -fore most -wido ws -mad re -ite z -mito chondri -lig ans -z ona -cari bou -m ss -andre i -weather channel -gh c -: ... -ta ft -awe ather -al isation -bru tal -bliss ful -nik ola -mal icious -q m -mpg vip -bro die -bl itz -applau d -dri bb -v ague -dog go -transl ating -interpre ted -hat ched -ge tyour -benefici aries -spar ring -caes ars -aw illiams -la hat -bro ke -ti mp -virtu es -rel ying -pie tro -k tn -ici sts -pab lo -lou i -a ag -pn pp -cha st -pul ses -fini sh -usair force -type writer -thomp son -dog s -ut to -ãģ į -sand al -new ly -do ge -z w -wan kers -ne gr -mu cha -determin es -black fish -sk unk -mu ps -instru ment -phy to -daysto go -skin ned -hai der -con ten -ðŁIJ¾ ðŁIJ¾ -we iler -undoub tedly -chair ing -wall is -sh ard -zind abad -adul t -absor ption -pre sto -deplo ying -drum mond -battle front -seag ulls -how dy -juda ism -des de -part ition -âľ Ŀ -no logy -national bestfriend -lesn ar -film fare -co asts -christen sen -ac an -mb u -co pped -ru bble -sw c -fun nier -far ther -where as -nano technology -with stand -pil low -bow ers -to pe -it ly -con fit -ma kar -comfor ts -bo sh -cli pper -bal la -sti k -mil b -safe guard -musi que -eas port -ya z -pad ded -bad er -fore ign -chop in -archi ve -o ka -tran sporting -tml talk -aj it -consequ ence -sc roo -ff o -collabor ated -pug chat -ye mi -jav ed -au burn -o of -ma w -sau cer -miti gate -i les -evangeli st -ter ie -re cl -indic tment -cat a -bright ness -may the -whim sical -un lv -key word -cu min -med way -west world -tra w -im posing -form ity -coul ter -ab z -ny pd -grass i -kel sey -qld pol -clock work -f dr -di anne -âĺ ij -ad h -p ann -bra vely -ae ge -un lawful -ver di -pocaly pse -phar o -kar la -reson ance -ma stiff -la dak -bu u -ma iled -hi i -craw ley -tor rent -mach ado -liby an -effort lessly -fal sely -q vist -ke ef -craf thour -cheri shed -val kyrie -s ari -kal amaz -be he -ðŁĮ Ļ -th im -ro ddy -col trane -but chers -ach im -wk end -awk ward -cab rera -:) ))) -fran c -decl an -con dos -a ja -pandor amusic -char ter -ph ill -mon trose -hatch back -handic app -gre aves -eucalyp tus -ut most -t son -bur ton -mid wives -in cur -ðŁĺį # -moo d -compre ssed -tom a -must ang -mo g -as ana -te stic -sho tel -in sol -cor sair -nh q -ben ny -sm ma -kap ur -in con -jon as -ener gies -don al -as ad -se z -n pa -archi ved -stimul ate -do p -hy d -gri eving -ãĥ Ī -ron a -why te -tree house -ss ell -sand ro -ko bo -ther most -se clu -hi ya -ge ez -mam as -prisc illa -flav oured -fas s -w old -maker space -cospla y -p tv -happy valentinesday -sequo ia -love craft -gu an -d tm -ci i -yoko hama -pos thum -re q -ðŁĶµ âļªï¸ı -galat asar -dol by -hamp tons -disturb ance -stone henge -ok c -disrup ting -month sary -jun gle -head lights -du stin -micro sof -happy mothersday -ko ko -gra zi -te sto -na idu -mal ay -ari al -ru mb -ab oo -har man -tra pe -spo ils -je ho -go dly -lock screen -z un -pi ous -ma gento -l enders -prob able -corpor al -m our -aw al -su a -call me -ton ne -go vin -devast ation -x j -gear box -war lock -per me -it ate -gaza underattack -du val -paras ite -clement e -le th -i va -fro zen -tho les -to bin -cair n -s ill -luc kiest -conver ts -st ale -pan cra -euro pale -wis dom -sch ur -ì ¶ -verti go -bi j -u bc -nu re -righte ousness -mt c -factor y -ver st -revers ed -hur i -hee chul -fab er -ar r -ul ous -ven om -ph at -green ery -bra dy -à ¦ -: (( -never giveup -di sha -mo ta -health care -dun ham -dex po -den zel -bb ins -f ics -wh am -mc g -eli an -wat a -str alia -tel lu -pe sky -spin off -ar moured -re acted -do fficial -te du -sag ar -mor ally -paralle led -fi os -dow ner -dau gh -re do -world cup -tari q -bar ne -glaci ers -oc cult -barbar ian -her mosa -!! !) -y ur -inter nation -p ss -sit u -p int -american air -sw am -dopp ler -ðŁĴĻ ðŁĴľ -cincode mayo -le van -hell enic -mc ne -ju di -yu h -st x -qu are -ðŁĺĤ . -sti g -g els -mot ley -hard work -euro zone -e ad -ç¥ Ń -seab ir -ci us -la id -alpac a -presu mably -pewdie pie -boo ted -am ari -tam ine -sol ace -bar row -acade mies -x ian -om ination -dun geons -b ma -de ity -ai k -stab il -hir a -affection ate -ving ne -new port -ãħĭ ãħĭ -thir ds -re tains -aroma therapy -ski er -ni ma -do pe -cr inge -con domin -to or -anim ator -sar aj -seas cape -minim alism -lake shore -calla way -berg man -à¤ Ĺ -whisp ering -stupi d -ri ghtful -requ is -ir n -se va -ut pol -tuber culo -squ ish -de but -govern mental -christ ine -all man -weap on -s ito -bur i -lo lita -leaf y -fu ch -tin ted -mck en -a hahaha -ðŁĩµðŁĩ ¹ -repe al -ne gan -ðŁķ Ĭ -tail gating -game insight -ðŁıŁ ï¸ı -yaku za -z t -ti ring -pro posing -bow lers -tra itors -ak shi -cler gy -cit o -up sets -tu scal -symph onic -sil ently -shu ff -black well -ðŁĺĤ ) -ko be -rober to -ri dg -dc u -mer ino -ft p -east side -. ~ -nb l -mn leg -ts for -frau dul -ca pping -in my -gymna st -ston es -ss in -twe aks -shag gy -oak land -dem sin -sang ria -mm va -hen nessy -down ton -ri ghtly -in it -aga ve -ob last -northe ast -friend ship -dal a -tro phy -ðŁij ½ -mag in -margar itas -ê · -ww fc -fa sh -di ke -cu d -char t -ðŁij ® -refuge es -jop lin -n cs -imp y -firm ware -pas cu -flam in -health tech -bell letstalk -w aka -ol ls -la go -co wan -bombar dier -sh ome -ðŁĻ ħ -mc master -na ve -well s -u ta -tell ers -mis fits -kap il -face off -af firm -a pro -whit epaper -super yacht -speci mens -al located -... , -- __ -ka w -dachsh und -djo ker -s work -qui ere -or um -ðŁIJ ł -som m -c mt -ingh our -skin ny -lgb ti -gi ggles -break away -resear ched -par ity -my al -ms l -re tained -si vity -make inindia -sol ves -defam ation -wal tham -sri racha -road way -concep tu -al in -iw ant -å Ī -del ft -tender loin -ga ins -faul ts -sw ire -st ellen -pol lo -dy ne -bornon thisday -asdf ghj -sq l -sali m -advis es -vo ip -ìĹij ìĨ -un touched -she il -ontari o -uph ill -so bre -de shi -nov ella -du tton -craw fish -ا٠Ĩ -ma a -tw ine -kal in -ðŁĩµðŁĩ Ń -ye ss -brook s -hoo siers -ton ka -umbrel las -ay ers -ate am -acqu iring -su ction -ä n -wi es -tari ans -soci o -mat tb -shepher ds -o so -charity tuesday -s logans -ninj as -al bat -by te -bash ir -trampol ine -mydayin la -i ja -bas el -ror y -gol die -fi rec -un noticed -pecu liar -sch a -ker son -mour ns -liquid ity -qu ipment -hi bs -ar s -aeron au -slide show -sla bs -delici ousness -sk itchen -hta fc -full erton -cre ighton -aer ob -procrastin ation -az ores -white hall -uss occer -medi ation -djoker nole -and me -um en -noxi ous -jo ss -ili fe -anni vers -sudan ese -et res -under mine -whole foods -diso be -kor i -ade le -eli z -can ti -al on -gymna sium -sarko die -meteoro logist -yl de -ste en -stamp collecting -nas al -lo tt -fran ks -ex ol -ack i -good year -animal rights -y les -vio lets -mm es -s thel -ra pping -tu scan -wai ver -tur ner -eat local -northe asthour -anim ations -tom morow -t sh -ff ame -bra e -pe tron -glam our -br yn -d cs -bal es -ðŁĶ ¶ -bro v -bre v -b ons -physi que -car ne -x e -elix ir -vol ved -l oma -ìľ ł -æ ĺ -van u -ri gs -bal ance -va res -bon ita -sprink le -perfec to -di on -le ak -calcu tta -o ba -d ma -c mon -tun er -pneu monia -bo gus -apolo ge -cl ough -bor ne -)) )) -revi ved -o varian -ner f -c legg -fan fest -cho u -reali zes -mc n -li gu -leg alize -just saying -for ster -bo sni -k hi -in dom -hei del -en cryp -si ss -ed di -mar bles -brisban e -y ing -pre paid -wal sall -cooper ate -orche str -mar isa -ho wie -che wy -bren ner -andro meda -e gan -sto cki -cav endish -ag an -ban o -de ir -go g -bl k -re thinking -ch ig -rhe u -sni p -p eng -semin ole -m swx -an nex -lyn da -lewisham ilton -cu mul -tb l -dolph in -agu ero -........ .... -pre lude -at our -gr anger -too ting -ro tun -dis ar -home items -da res -**** **** -ðŁij Ĩ -compre h -jin x -as well -iri e -circul ating -ðŁIJ ¥ -over board -cultiv ate -rhe tt -oriente ering -ca k -bal kans -s itt -jas min -britney spears -ro tor -se aling -g bc -oc ci -f as -eman cip -com er -war time -tic kle -son ny -pac es -log g -at rix -sr p -g win -do bbs -uz be -the wanted -dru sh -ex tru -m icky -honore es -dar win -re dux -mm j -ram i -jalape ño -io c -do ver -ju ju -whit ney -s eng -en ly -au ch -archipel ago -vigil ant -man gal -wil dest -parano id -hal i -bb ly -sanc tioned -real ms -con co -u ddin -c sk -play time -libr a -sav ag -oc tane -rec tan -re turn -par rish -mor rha -cc p -c mu -sa iled -se vent -ro sie -pil ing -he w -boar ded -seg ments -neph ro -( . -cr ats -bak es -ðŁį ¸ -back tothe -sibl ing -kirk land -ke o -gu wa -bre ads -ðŁĺľ ðŁĺľ -t q -haras sed -ga u -wil bur -j isoo -ep er -li sam -tri ppin -sh ino -ru kh -beast mode -cho a -inst aweather -rich land -gar i -fe z -cowboy snation -fur suit -k run -a en -sycam ore -se gun -ent ennial -di h -o ax -demsin philly -ðŁĻ Ģ -sn hl -pen nies -pass words -ma kin -ty e -d eng -kni gh -jeep life -hel pline -a for -zz zz -ste amy -pic ker -iter ate -happen ingnow -ki b -bloom berg -martyr dom -bul ly -assor tment -a hora -zo e -no i -illu stri -agar wal -p sc -electr onica -recruit er -gar diner -rad ha -naf ta -dot net -pi ero -geor g -bel s -ðŁĺĤ ðŁĺį -tuberculo sis -run nin -mor is -haul ing -ev oc -bre thren -sha ir -frame works -a stu -ri gid -ku ma -kre me -jin nah -insu rers -ny u -f ere -nol lywood -good vibes -- ... -toi le -sk ril -instaweather pro -cze ch -pa vel -one piece -nike plus -fi let -cav ity -ðŁı½ âĢįâĻĤï¸ı -ðŁİ £ -dra stic -dail ys -siam ese -re bu -oste o -lar k -f re -sh elling -p é -glad ys -ðŁıĢ ðŁıĢ -gusta ve -submer ged -grand stand -att u -won t -f pv -b ley -jon i -ang ames -weigh ted -al ou -ठ¶ -les bians -f j -anni es -am l -dor ia -dav in -be ta -can c -madewith unity -ha j -bad lands -mu l -blu ec -pa wn -cov ington -neuro logy -htt weets -dysle xia -thel ove -ne at -fork lift -autom ate -une ven -monte ss -he in -ha g -rel ics -competiti veness -can elo -mar tens -bullet proof -sk ittles -g ya -pri mo -americ afirst -woo o -abor tions -?? !! -ma che -ld ers -rl ly -preli ms -direc t -cour se -swa in -super cell -ec centric -sting ray -ple ts -wil cox -west in -okan agan -kir an -car bo -bomb ings -ra rest -bo h -gaw d -di gg -mo ana -enti rety -en closed -dodge ball -par ton -milky way -at r -thorough bred -re ally -qant as -epiph any -ine e -aero smith -spi eth -ar thro -ell ini -du bu -bra ving -âļ½ âļ½ -re structuring -illumin ate -equ ili -mp i -ash ton -pony tail -ma scots -flat tering -cru m -ast a -à® ° -stranger things -bar nab -ر ÙĬ -make shift -got cha -will am -cho irs -kilom etres -gho sh -eu than -dol ly -un ning -the ar -cre we -w sw -j ace -dis miss -ke an -ho ta -kh at -~ > -thir u -ren dez -hart man -tee ssi -cas ca -z ah -hydr ange -fo d -aw p -mzan si -thick er -nago ya -ne va -sti que -cast el -dam ian -there by -ji ang -ale k -music islife -ra q -calla han -gou ache -somal iland -sean hannity -ra heem -lo se -elo ve -whar ton -rectan gular -illustr ating -har ne -auti sma -scra pped -ell and -decre e -nag pur -ki pp -so re -n md -ma as -gun a -gart ner -bel li -then ight -je on -gendere quality -gi ver -a el -gar ments -ne u -mardi gras -mar sden -ro wer -pollu ted -camer aman -vin od -be asley -cro c -ji u -hollyo aks -anesthe sia -al les -ste ward -lati mes -ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸ -tic ian -gor ia -come dic -ðŁ¤Ķ ð٤ĶðŁ¤Ķ -nai ve -sli ons -ł Ī -bur glar -ðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃðŁĺŃ -york shi -se ñ -fan boy -lau rel -inci dence -potom ac -rober ta -presi den -pr yor -os bourne -w ku -te me -pal ae -ðŁ¥ º -re boun -itu de -red dish -k hand -coloni alism -north carolina -ðĿ Ĵ -manne quin -lady bird -ta sty -knowledge able -g shore -ðŁĮ Į -à® © -qu aker -salz burg -med alists -chy na -bridesma id -ma ori -ro p -outra ged -in adequate -truck ers -al ana -ìĿ ¼ -ri x -oooo oooo -command ments -lam beth -aa j -eco friendly -bla z -morecam be -boun cy -rou x -rai ded -mi zed -sh c -gaw x -labor atories -ru bs -rest room -consult ations -ca jun -virgin i -so ir -rev ue -ple in -wag er -ç ¹ -we do -growing up -! ðŁĺĬ -face ted -sin ners -ho vering -ti ene -seas oning -an ja -leg go -il is -fla x -dev o -ash ram -mati sse -ker i -go wer -bo tox -mar shes -unh cr -ts m -opti mus -dun i -stu ffs -so k -order ly -n bad -islam ophobia -raviol i -fab er -cre ds -won ka -in fusion -over weight -daily news -assi mil -acol lege -medalli on -kili manjaro -sti ff -tham es -sun ken -th ard -my dubai -hilari ously -han nel -plu mber -fair view -separ ating -rasc al -qui en -necess ities -confeder ation -ll ll -: ] -weak nesses -bron co -ra ffles -el ot -ãĤ¸ ãĥ -advent calendar -ðŁİ ¹ -stra vel -tun ic -k su -im peach -e spionage -! - -di ment -cur rant -bio de -commu ting -by ron -ðŁĴĵ ðŁĴĵ -shad ed -tr uro -cray ons -ar ne -h sc -fre aked -dram ati -fle ek -u cd -marl borough -^ - -cross ings -mal o -black ops -bin ance -cho ked -chen ey -pl o -ge stures -val edic -ryan air -rem ington -v cs -mc kee -ec z -be gs -nail art -mayor of -happy fathersday -war t -pet itions -n ingly -clean energy -bro x -sl alom -exist ent -ab ay -ug liest -tom p -stom a -sel by -goal scorer -ben ji -overwhel mingly -lan s -semiconduc tor -south korea -re scheduled -sk yl -en listed -dow ski -si del -rosen berg -nas ser -white head -pri us -har are -en n -ry der -í Ĥ -mon g -clas ico -transpor ter -po tty -is me -** *** -vic e -sk it -ode ssa -l mp -her n -raci ally -pin oy -paragu ay -obitu ary -go es -bu cha -side walks -angu lar -un constitutional -transiti oning -i bu -gu ys -un packing -oooo oo -black girl -ber gs - ¯ -wordof theday -trump train -thunder bolt -m si -fasci sts -ठ¬ -t sk -collap ses -raje sh -loveis love -migr ating -set back -ðŁĺĬ âĿ¤ï¸ı -t els -safety first -nar rated -jae joong -un answered -lique ur -en nes -dal go -bill ings -salt water -mer maids -lon gs -clap ham -we arec -pic collage -n ach -h ace -pois oned -lo th -ag na -adel rey -guar dia -poli shing -peace keeping -d all -p isa -la pland -process ors -de andre -so bs -p once -dra ins -c be -ðŁİ¥ : -spla sh -meat ball -fon tana -worcester shirehour -ne v -bri sk -b int -ac r -po x -cay enne -skril lex -j fc -hahahaha hahaha -gla s -en gul -tempor al -oni zed -con cre -com pose -vibr ations -plant ers -fer t -criticalrole fanart -t bli -sch allenge -huck abee -munici pal -iam bic -radi os -ne vis -dura bility -mc cla -horse back -inst itutes -ful fill -atta ch -ate ur -ak an -resi sting -illumin ation -hand le -hair care -om ent -macle od -ka iser -g no -bear down -ly f -gl omer -distor tion -z m -san k -roo sters -is now -as ports -ag en -wo ken -st george -ro mper -my le -econom ists -ru to -t will -health and -d ito -ws l -tair p -pra kash -mic heal -h ts -w rights -kat su -fioren tina -defen seman -d itch -var sity -texan scheer -ba ham -sc anned -we il -seduc tive -ðŁijį ðŁı½ -fu e -er win -dav ison -ter ran -moo ds -wool f -re source -@ . -cu sh -ðŁį ° -regre ssion -cur led -la zer -jo anne -ab bott -mo z -down ers -mm mmmm -valent ina -k hair -dream t -cro ok -che k -ste aming -nephe ws -cl eric -as ober -indefin itely -w ye -us news -joy ce -flu shing -wynonna earp -ron do -kis s -hot dog -bar ns -sax ophon -far ley -gas p -decre asing -al way -pe x -l sd -shi ft -p outine -ra zz -rescu ing -ni ko -ho ch -cc l -u aap -n ts -m car -il wx -conqu ering -ket tering -stur dy -delay ing -sto k -vani shed -cath ar -bin gham -in v -ic hiro -he mo -budge ting -[... ] -be ss -sebasti an -slow ed -ðĿ ij -musli m -stun s -acton climate -ve a -se ton -rose tta -oun t -hard in -flu id -ca w -ðŁ¥ Ĥ -yach t -un l -sp hy -provoc ative -or ic -is back -__ _ -nicol as -gy an -loo se -fl in -reb ate -: :: -! "@ -com icon -she ff -down stream -chic hester -beach life -mom life -diabe te -ar ra -van e -ok u -ye o -man go -try out -app ell -he irs -arjun a -dd u -na veen -movi c -soci alists -s back -criteri on -soyu z -k her -da z -yol anda -wine oclock -re ina -one w -leon ard -en dez -u bs -support local -facilit ated -carameli zed -b pa -vuel ta -my tho -m ami -spe are -nbap layoffs -fe vre -nick jonas -im print -c so -craig slist -la salle -gi deon -ha doop -dis regard -w ud -tu c -ma gee -acou stics -ta a -qui e -pol a -cr t -dw yer -dis sec -capit ol -men tion -kn oll -he igh -fin ders -plac ements -l se -indi ra -gur i -madhuri dixit -kingdom s -iambic pent -geor gina -je ky -conflic ting -bay an -aga tha -uph old -dr on -vic ar -ex pat -periph eral -pe ssi -fa f -ance stor -? .. -wid get -pun c -comm enced -beav s -air waves -ad dis -po a -de sses -co den -vu e -ru pee -kar in -spo ck -m sy -ภ° -pr ick -fill more -ti fication -thing sto -sar de -em ile -pere ira -n ad -bright ening -arre sting -wo king -usc g -sp ill -raspberry pi -hu go -ite c -is ma -cuff links -optimi zed -oc c -mi wx -en ka -el ited -afford able -sa kh -coron ado -ho h -at ul -ai oli -jim cantore -accoun ted -vin ay -her mit -groo ves -ran ch -r illa -we tter -ou tof -veter in -ni kov -ki an -fair banks -ram apho -n iti -k ko -ru sty -ne stle -tv xq -shahe er -âĿ¤âĿ¤ âĿ¤âĿ¤ -penn ant -gem stones -dem debate -ðŁIJ Ĭ -auton ews -support indiefilm -mach o -ve x -new sat -ne ti -conce ssions -can died -yof the -mac au -den ds -cricke ters -san iti -mari ano -gh at -ar toftheday -¡ ľ -e gos -gen oa -chat bots -bri er -al labout -mon ty -spi ed -r tr -comfor t -sni ppets -real time -gra in -exam ined -en lightening -tt u -god bless -release the -sing ular -ki ans -ha ka -sor ren -defe ct -mar g -equ ities -d orian -su ka -per l -aishwar ya -pul lover -preci sion -fair way -ne ve -rive ting -vill anova -en com -ak o -passion ately -europale ague -siem pre -x vi -enligh tened -c fr -âĺħâĺħ âĺħâĺħ -wast eland -is f -new comers -emergen cy -amphi theatre -- . -text books -figur ative -tre mb -pe sc -ab hin -ab bot -ac acia -har ds -por sche -kau ai -el isa -car rick -abo u -elli er -be ch -neu tron -galap agos -ru ben -in nis -how to -nun s -sab ine -i ac -clin ched -no tori -fi ves -cairn gor -per i -gr c -ðŁĴ¯ ðŁĴ¯ -mal m -twelf th -di ff -rout ines -marty n -lin den -synthesi zer -nu mber -game cube -fal kirk -byz antine -queu ing -gr ill -scal able -char red -rou ting -her bali -gri zz -ðŁĺŃðŁĺŃ ðŁĺŃ -tol l -termin als -l pc -ab d -war mups -remo vable -¯ \ -vi go -pap aya -ne ve -lov ingly -jo kers -ib les -sse tt -poten ti -pel e -gi gi -sadi q -leg acy -son o -ru pees -retar ded -ele e -par r -fi ance -ey re -say ers -pend ants -mak nae -al bans -adap ting -p ff -pu berty -ji u -ing rad -hypocr ite -diplom ats -phys ical -rob by -bon sai -ãģ · -f att -catal unya -âľ ĸï¸ı -ro ma -more land -so e -conver sions -stl blues -shol m -gra ssy -pra do -on u -assaul ting -> _ -sett es -dis graceful -aph ra -âļ½ï¸ı âļ½ï¸ı -ठª -kil n -goal tender -s ru -philanthro pist -b als -th n -stu den -sando val -dogre scue -eli ons -asse ssed -lar go -hec tares -sh rm -sa if -cle avage -no ches -n ene -fat alities -cur ing -clean ser -al es -p vp -south bank -pizz eria -marsh als -kni fe -an dover -tbli ghtning -sr sly -ou te -digi mon -timesof india -prome the -le bo -f su -wit z -rever e -man as -mam ba -ch ica -gu an -exhibit or -csr racing -d ere -xx xxx -gu sta -story time -ston ey -organ ics -and u -se am -min ogue -anushka sharma -ab a -ðŁİĻ ï¸ı -ugand an -chro matic -as sn -document aries -sh t -ru paul -loy d -k ats -e us -ite ch -me dusa -pan ty -kel logg -et to -talla de -sha a -do st -p ms -mari ana -je ster -croo ks -ðŁĶ ¬ -min danao -ind hoven -ðŁ¤ ª -le xi -tv n -jan is -co te -ãģ Ĩ -ser rano -iw m -ðŁIJ ¬ -k ke -distribu tors -cap u -counterfe it -camp site -ag gie -ðŁĺ ¼ -chhat tisgarh -~ @ -state u -san di -prevent able -cl s -can ne -mm c -i ver -sa haran -pal is -night out -do s -ap ia -absc bn -manag erial -aro se -mo wx -aro sa -ðŁĮ ³ -under dog -remo ver -astronom ers -lent ils -su scep -smoo ther -pend leton -fau cet -e mory -dal mati -af cb -tic us -exem pt -en rol -d heim -ðŁIJ º -restric tion -star fish -sto w -snor kel -thunder birds -she ad -homo sexual -dy n -as li -andre tti -dou che -dom o -tar mac -slu mber -pr onto -first dayof -mini ature -mari achi -argu s -recomm ending -mobi les -in ce -illustri ous -or c -adver ts -gr its -wea sel -pag oda -over pass -gre ys -maxi mus -arma gh -wood land -sun ni -ðŁĴ ī -ë Ŀ -ti one -soci o -ho s -ðŁ¤Ĺ ðŁ¤Ĺ -wind sor -subsequ ent -munch ies -id h -exclu ding -e mi -cu th -z ai -week days -law suits -barn ard -Ø ª -pe tting -net es -mul ligan -pharmac ists -ra quel -e ton -cran ston -gil ded -cle ary -ce ph -ra a -pam per -lombar di -as in -sher ry -pro d -for te -ari anism -buffalob ills -æľ ¬ -ðŁĶ¥ # -uu u -just ices -car ina -nat in -mas low -dro oling -cog nac -cam ber -el ong -r dr -in en -convic tions -am use -tro ck -harm less -visit ation -gen omic -bl and -beno it -chim p -tuscal oosa -gre asy -x po -gil t -se q -per mitted -christma seve -book s -mu e -old school -human right -be ati -ðŁĶ Ŀ -sh at -sculp ting -h wan -fern andes -sci utto -fu entes -endeav ors -maid stone -un paralleled -shou ted -queen of -mer c -band ic -ve da -sel angor -pi le -ja han -intimid ating -disapp ears -cl ich -za ha -w urst -hi v -fod ils -cor dless -aaaa aa -hy dra -bel inda -e els -bu f -su staining -rugby league -no c -brig itte -( ðŁĵ¸: -tromb one -soo the -smo g -ad p -stab le -ing ley -diagno se -ms g -we ss -tic keting -one e -nsw pol -e up -auto psy -adity anath -sun down -river front -si ya -p is -hier archy -dur ango -di jk -ren shaw -he aps -epide mi -david bowie -interne tof -dd i -nation ality -mb ar -air y -win der -w alia -elli ott -c x -bav arian -pl att -an tw -wi wx -sof ter -ne ha -h eller -th and -dani ela -bo ast -degra dation -ðŁĴ¦ ðŁĴ¦ -transform ing -man e -av ut -ðŁĺĪ ðŁĺĪ -vo ter -the e -t ate -pu ff -in door -sop roud -boy ce -boris johnson -wait in -immun ology -ðŁıĨðŁıĨ ðŁıĨ -âĿ Į -street food -liz asober -cavali er -c elia -need le -motor ing -g ato -, ) -ra de -harve st -t ms -jar pad -on ey -air men -v re -impair ment -abhi shek -snoo p -l ant -fam ously -bl ou -s ze -g ander -un touch -tu f -dee jay -col lateral -b ind -ðŁļ © -pin ning -ic n -' ; -the economist -ul tram -worldwater day -ti poff -the i -feed ers -campa ign -sc umb -day weekend -yo m -pe dic -h ough -ps v -pl in -on de -boston marathon -az zy -* _* -con ley -thi ago -hoo o -gal erie -luci d -je tt -gl itz -final fantasy -achiev ers -y ung -peregr ine -op hi -dam es -biom ar -âĺĢï¸ı âĺĢï¸ı -sk c -l ics -fl ank -ar rahman -ho of -uphol stery -t ats -wo z - ¿ -snor ing -ra er -l ju -ap d -pl ating -kan u -im ation -fragr ances -m ra -mor ay -mo tt -im muni -hearti es -bho pal -tim ers -g ata -color way -car nation -win get -si ghs -s ville -optimi st -chate au -olympi ans -ci o -singer songwriter -ny o -fi bers -bur ch -ag ro -mil ne -ig bo -cr amer -ation als -dan ube -pad ma -nor mani -en forced -bre ck -boeh ner -ar den -sur rendered -pros thetic -om a -ha iled -calcul ations -w fa -bi b -fcb live -fon da -west coast -que sts -friend ly -to wie -fit ch -bal ot -star dom -scrat ching -ho sa -thi ka -o ven -stro ke -out post -pharmaceu ticals -hi kari -mu y -af d -fallon tonight -squ at -or u -dra ined -chocol at -ë¯ ¼ -wor ths -ri b -mu j -that s -residen te -it el -boo st -mi gos -mul led -la a -etsy shop -don keys -me k -p tc -flin ders -e hs -ro hit -mu ir -g ad -compos itions -åĨ Ļ -combu stion -i kh -yemen i -wav ed -gar ci -ak os -oo ds -fu sion -se que -s lan -pl ur -kic chasu -shenan do -s ams -worl den -horo witz -with me -mic robes -k ki -ðŁĴĶ ðŁĴĶ -w su -patch work -fre er -y aki -the art -symboli sm -mil er -bt n -ma bu -side kick -motiv ates -sag itt -natur als -serv iced -ps ori -pa ola -qu ig -i badan -gi ggs -ë ³ -sciento logy -si oux -salam at -d res -cad bury -d hawan -ci ón -_ ' -swa pping -maris ka -james bond -explo sives -ay les -af er -s agu -cen sor -tom a -jeff erson -ring ed -par tist -ir responsible -aguil ar -vac ay -equ itable -altrin cham -ac ur -man ish -ger min -schoo led -pu tter -ed ad -nav al -toast y -sol areclipse -dish u -coy ne -ac co -mu ck -mar an -el os -len der -cro ix -worth less -ha ber -gun men -ðŁį ĵ -zen ith -t enders -hur st -hol tz -itali ans -car low -u cd -characteri stic -bun g -av l -u th -sa sia -rs l -red man -neighbor ing -green peace -sti ps -follow party -y gk -en os -omni bus -na issance -chri ssy -secu re -call back -ji hoon -memor y -block er -l anta -daf fodils -bil t -ffer ty -fau st -ie c -nipp les -so g -m nd -jagu ar -bol dly -ab poli -pro position -gun sense -evan sville -cu tters -we go -dou n -do x -stal lions -ka j -shi ppers -j awa -vol o -le ven -pap rika -kov ich -jor di -induc tees -app alling -dial ysis -allevi ate -âĢĶ âĢĶ -pie ter -mid wi -q tr -juli ette -inter mission -haw ks -act ment -one ill -k lin -vam ps -fam ous -cou ld -autom obi -da an -west end -elli p -nh c -mel anch -web series -ton gue -snat ched -smy th -tan gible -sl i -e asing -bar stool -over lay -afford ability -ting ed -ter as -ay ush -wanna one -rh ine -dan a -sh ana -kend al -fer tile -w ir -repl eni -lar vae -is ro -con vos -ab brevi -u cc -hun gry -bur rows -ag er -nav i -mat in -du per -cer n -ma don -ķ ï¸ı -é ģ -tu ps -hy att -sh ep -friday night -wis er -hei di -hat ton -p gh -foun tain -wrist bands -ahmadi yya -aeri al -subscri bed -so los -m ace -sla yed -for fe -dul ce -christ mass -arun jaitley -viol ate -ob stru -ni eces -w vu -idy l -fa ze -pre serves -infr inge -premi ers -inter vals -agen cy -( © -stand alone -di mes -bo er -param eters -ge tit -ðŁĺĺðŁĺĺ ðŁĺĺðŁĺĺ -tu lane -for given -scol l -mb ps -smash bros -rob bi -prima vera -ali st -ghost ly -ay at -ye ats -impre ssionist -ear phones -caul field -wai kiki -sal ute -sc ou -mu ay -louis vuitton -bak hta -ado g -inven tions -hur d -forec lo -stream line -thalai var -ch snews -will ard -t sn -euro parl -cru sher -my sore -gro wer -ra ping -pat ti -g den -sm w -muf ti -kid man -ab r -soun ders -skep tical -ðŁĶ İ -sun dar -i me -fer g -feather weight -ar lington -pas qu -ag azine -wearab le -nati c -mccl ure -inter mitt -hor de -six ties -car te -bha v -ze al -experi ential -ador ned -som mer -eno te -hypo thesis -stin ky -pro to -dead lines -vo gel -mus ings -monc ton -gu ter -f le -aci on -voice of -ta sha -inhabit ants -type face -s ba -bts x -ðŁĶ Ĵ -wor x -u hc -jo ko -cell ars -gor o -continu um -... & -weather cee -ha p -sr k -ris ers -lonely planet -un named -co eur -ðŁį Į -the world -ili ke -fa sten -ami go -ri ba -ramapho sa -staf fers -had ley -? ?" -fi ore -sal ut -hu ff -bez os -Ñ ĭ -ra der -kam ala -in line -fill ers -um atic -all in -shat ter -re in -o ku -ch ases -fla gged -baby metal -water stones -ts b -cut out -op hel -aam a -rockab illy -sto lic -jet blue -ich ick -down ton -uzbe kistan -pat na -la q -gr ange -) _/ -subsi di -sc p -newsc ast -it sa -twee tyour -e mor -archae ologists -uni fication -por ta -q x -protec tors -pro hib -charis ma -car tag -ren fre -scul pt -guwa hati -de ma -boo p -unf pa -dex ter -lay la -alleg es -sou ps -never again -l ys -cal c -bar oness -visu alize -ger ber -absor bed -i ers -a han -fon tein -detec tors -verst appen -sv c -formul ated -ac dc -li x -in competent -bh k -lour des -water house -snow ed -appreci ative -sig ma -lizasober ano -pen ned -pay check -tall inn -fanc afe -par isi -av alley -vi g -ru fc -hard ship -so cute -po ise -ì ¹ -roth schild -k ly -???? ???? -l hp -il ay -f hs -am ad -ide als -brad bury -bal boa -nic ot -kid nap -wol ve -tas manian -op t -matthi as -ãĥ³ ãĤ -super markets -mylittle pony -me lee -li ster -gr oun -fe dora -kind ness -en en -bra hms -¯\ _( -ros well -mar lene -ic u -re formation -or ail -he brides -dispar ities -terrac otta -swal lows -re id -influ encing -flu or -den e -tum our -blon des -thunder bird -sh eva -moga dishu -ka b -cre eps -i ving -ene ed -anno y -âĶ Ģ -intri gue -enqu iry -ar aj -tur al -kuber netes -end lessly -divi dends -tor a -ti sh -commemor ates -un ra -tri b -pon ty -ne m -diss ent -brew ingco -ðŁĺ ½ -nor mali -bi of -( ... -chil len -ì£ ¼ -mell on -av is -mccor mack -ing ra -enrich ed -custome rexperience -testo sterone -snu g -sett i -ger onimo -inqui rer -bre aches -very thing -bloom ing -mu ra -dispo s -bi de -de va -shade sof -in trin -sh ev -s ven -nayanth ara -gan esha -c ws -ber ta -label led -use um -nick named -ma han -car uso -ap ur -ðŁij Ĩ -w q -orphan age -discar ded -mag nu -lu e -je on -bridge port -pac ing -mercur y -( ðŁĵ¸ -marx ist -amphi bious -transplant ation -stit ching -then burg -gradu al -ãĤ Į -ro ft -ma ils -ine c -guy ana -dopp elg -ver o -re write -head less -harb augh -gate way -car sforsale -sw i -st is -mach t -un de -sura baya -stap leton -nur turing -mil ner -ya o -lma oooo -ko sh -arsen al -k ame -er ry -ar royo -dis misses -ru bbed -rc b -lew d -dil u -and or -vi de -ur in -inter sec -ha ar -al b -year swith -app leton -é al -ul livan -suc cu -monter rey -d mx -artem is -ron nie -farm land -s football -gro tto -anth i -ãĢ ģ -à® Ł -vid ya -jimmy fallon -ൠį -t zer -gravit ational -w thr -u hhh -e hr -tin ker -ti juana -scran ton -ram charan -bar clay -re van -m si -ka p -wr s -we thenorth -tor al -sat u -gro m -fac ep -erick son -z yn -se dge -oo dle -spur sofficial -ds p -sic ilian -soli hull -recei vers -ladak h -hend rick -ther i -presi ding -mc guinness -litt ers -gun nar -gh oul -wi b -n tv -kar o -fro ck -b lau -ampli fy -all is -ul lah -memo irs -kh loe -intercep tions -pet day -lo oney -con fin -ch ay -piyush goyal -frequ encies -ut z -event ual -warm ly -obli vion -an ka -ta it -âĿ¤ï¸ı . -director ial -ru lers -prince s -mu ck -stur ridge -deu ce -abri dged -bagu ette -un cles -pen du -min ding -forre ster -av ila -wall er -wall street -ment or -hin o -high way -crom well -fanart friday -mb i -co yle -a hi -tro ve -spie gel -pay tm -mcin tosh -jan sen -nit i -nash ville -len o -leicester shire -le gos -dic t -ðŁĵ ½ -sp ad -beverly hills -sy rah -separ ates -z ain -un fit -dra gs -tan ia -over flowing -hri thik -haw thorn -z ani -mac far -fi de -to tem -pe ds -fundament ally -cal ico -sin ner -j ä -hil de -ds d -ten ay -ta hit -mil f -lie b -inform ing -up lift -ra el -mortg ages -lec t -ii ii -guillau me -compos ites -old smobile -l end -gar th -com mish -bapti zed -scorpi ons -ru cker -bringback our -alli ance -thalap athy -tal i -sp ans -eri dge -wither spoon -lin da -sky lar -kor n -hom s -Ä į -sil enced -caf fe -ar ty -dist inguish -to wed -pun g -jessic a -ear nest -beau fort -t ama -study abroad -si khs -new bie -nav ratri -mar ble -loun ging -lit ter -dal it -so sa -iz es -gra de -com promising -tr iton -de tta -v j -chau ffe -spec tral -powe red -montess ori -artic ulate -hal ton -al co -ye y -mn twins -acoun ty -ðŁijı ðŁı¾ -âī Ī -mad men -kal a -gru m -chi k -ati s -su me -akh tar -job search -high lighter -bo ath -âĦ ¹ -tar zan -lam bo -âĽĦ ï¸ı -ox fam -dump ster -pretz els -mac os -incl ined -fac tual -adverti sers -shu i -pu ree -ml pfi -anti dote -cap o -pa str -merc ado -but ton -ar min -ag g -lol la -horri bly -er rands -christop he -time snow -monday motiv -li ss -scand als -mc i -dispropor tion -âĺ İ -sur pass -samar itan -so tho -pu rest -fl att -trivi atuesday -delec table -leop old -hermi one -chou dhary -en rich -¡ ¡ -subsi diary -ine qualities -bachel or -auto immune -la kota -i hop -ad jec -the simpsons -sh es -se k -gret chen -up stream -hin akhan -coper nic -x tina -lu g -tough ness -e ad -cli pped -bi us -sl v -fah ren -dee pak -ca u -x an -im mature -dig ni -bo bs -shred ding -but tery -accommod ations -de ven -chun ks -super league -sky bet -kil dare -je et -ë į -ce k -wrec ks -pro pane -oh l -tb d -quo i -trum pp -mi mo -reluct ant -ver ne -o ic -ma gh -ar nau -se ver -li dge -stair way -kicchasu deep -ðŁĶ º -mach ining -aama admi -ot i -c da -al it -pan y -inst alls -ac ct -e shop -di em -hard well -fulfill ment -sc afe -qu ack -extrac ts -swee tened -fi ghton -f di -d inger -wal tham -us ur -refe rees -seok jin -gran n -af rin -th n -sch af -par cels -bet is -amar ine -nom an -kh tar -mor itz -cou pling -bar ons -ðŁIJ ¸ -à ¸ -sl p -sad ler -x ander -tri ad -mc millan -kh z -divi ding -ìĹijìĨ Į -dar yl -zed d -le ys -pla ques -flu ori -tipper ary -on nell -di dier -lang ford -im c -the sun -bir dies -ar cha -ye ssss -t di -dar ia -cand ace -al tam -pal aces -ch it -sant am -event ful -book of -ad b -mon stax -cre ole -co el -âĸ ½ -we aren -sten nis -she ath -ati sm -gron ingen -mlpfi m -le pre -wrong ly -rsp ca -rendez vous -acknowle dging -pel vic -solic itor -sla ys -nue stra -lo d -is lander -fer oci -fashion show -ra ss -dge on -adole scents -sma shes -negli gence -grate ful -ved ere -sw oop -ing l -apol ice -vand alism -gan n -jo ao -di supdates -zimbab we -under age -radi ance -w of -bour geo -pla s -cr ani -gh ue -wrec kem -warran ts -re form -jim mie -at wood -ys l -neil himself -l bj -i man -tan to -nois se -ver bs -equip o -al together -mam ent -l ice -dou glass -tier ney -pri med -j hal -furn itu -braz ili -v ill -past els -n ison -u ff -paral ysis -jay e -im po -ðŁij ģ -strate gically -pakistan is -was sup -super bike -thank u -tru elove -sha ikh -israel is -vi p -to g -li en -la ker -grey hounds -cul ars -bian chi -balot elli -ar ran -loo s -str ates -he bron -ar vo -sunder land -the al -tomb stone -sand man -c pac -thanks giving -love him -lat ino -an in -aka if -ĭ ãĤ -tor quay -di est -alli anz -ðŁĺ ķ -golf club -cl lr -wal cott -sch nau -promp ted -nomin ating -len nox -val et -mon ro -may ward -e ph -ðŁĶ Ķ -inter oper -r da -re flex -arm chair -ê° ķ -stri pper -por ti -ph arm -ham za -ni reland -ne ue -h pv -port foli -sun burn -fris bee -be al -bapti ste -x h -ty m -pr ati -o vers -haz rat -deser t -der ry -us ky -em mett -ach arya -)_/ ¯ -shu d -may a -ham ill -ra im -nr c -fitt ings -cur vy -ðŁı ĩ -ster ling -à¥ Ģ -wal kin -short cuts -mil ly -ast ur -alpha be -pl i -pe z -miss you -rad ford -ml g -ta eyang -notjust lakes -du mps -seren dip -le ur -ra ving -e ster -de priv -absc bn -ðŁijĩ ðŁı» -scar city -o cr -mean ings -cap t -da hl -fer mentation -bri oche -to win -out lander -massi mo -en cro -ðŁ¥ ³ -buil t -po tam -kir i -tm w -monit ored -k ites -peoples vote -gray son -íģ ¬ -afri ka -a dies -i vote -gy ne -g annon -di x -c mc -ou ral -fox andfriends -bel i -ig ne -gl an -katrin akaif -co politics -qual itative -p si -lu cci -disc oura -âĺ ® -kel li -gau tam -carac as -reale st -pu la -in us -hill top -make aw -atten borough -tw y -r arity -peck ham -ma hon -corn elius -clin icians -ton line -tb i -paradi se -ka si -inev it -fresh ness -colling wood -lun atic -defen se -cop d -in fra -wain wright -sains bury -alab am -te ma -lac o -chec ker -releg ated -tren t -stal ks -huff post -bhubanes war -ast ral -share your -prim rose -hi me -cat an -end ment -en dow -cle mens -mal oney -hil ary -game time -den ise -collabor ators -b wo -radic als -gue tta -ici on -au a -snap matic -sat chel -excav ation -base man -s ão -gn ation -fel d -surve y -shah zad -ma st -anirud hofficial -tru cker -ot ago -geo graph -ethe l -âļ¡ï¸ı âļ¡ï¸ı -s ver -mu tt -internetof things -ancho red -wh ouse -bang la -bal main -ç¹ ĭãģ -break fa -á Ģ -twi ster -te tris -ca v -stag s -g z -au b -stor med -hel ens -yar mouth -st asy -gustav o -co sc -vin son -up p -sc ricket -assump tions -app e -nu h -u er -pre mise -n aga -e amon -coron ary -na f -north side -el mer -ro tar -out lining -el f -re surg -kat elyn -in can -hyster ia -ce e -am bani -pro lly -Į ãĤĬãģ -ax es -san jose -rem brandt -mag pie -even ly -scor sese -qu aint -f g -b buk -indian football -weare all -spd wy -pis ces -ec g -âĺħâĺħâĺħâĺħ âĺħ -pre orders -: | -ni pple -sal azar -ju me -jail break -min n -bas sett -ze tta -jef free -ad jun -tic on -san diego -drink local -chol era -solic itors -o bo -com post -ni an -wr a -tre ach -ic ic -profession al -del ve -leg ate -histor ia -cro issant -con noisse -nam o -palli ative -chem trails -i ority -global warming -comic art -behavi oural -re sted -li as -cli mates -Ł ãģĦ -rut land -nou rish -menopau se -hot ties -demen ti -ve spa -mel ville -anal ogue -tz man -str ung -im perfect -gl are -cir cling -ros berg -rec o -oc ity -lo ire -em be -do ssier -ne el -nan do -me a -gal vani -fin esse -ag p -berke ley -asi m -âĺº âĺº -quil ted -ish ere -un matched -po tion -for z -at re -selfi es -juli ana -ðŁļ ¶ -âĸ º -mel ton -âłĢâłĢâłĢâłĢ âłĢâłĢâłĢâłĢ -spin rilla -pur cell -ed p -at leti -tony awards -ra ja -pro gno -mol ten -stu ff -p ally -nobel prize -âĻ» ï¸ı -spiritu al -spe ake -sa sha -bri um -tru ss -critici ze -assassinscre ed -yor uba -u lo -fire man -workin progress -ef cc -fla res -ro bot -hi kers -cl l -shado wing -pat sy -leh man -c ns -å ± -guad al -à± į -ra pe -r honda -paralle ls -son ja -langu age -land ings -z ola -cr amps -bur ning -apprais al -jol la -ham m -kas a -gul ly -f go -uly sses -ri be -ðŁĴ Ħ -ib u -eti enne -bri ar -fin ely -comb ating -y ql -go tham -we chat -to paz -primar ies -l se -iz z -hel e -dispon ible -cy stic -bel ichick -th rush -kansas city -ge om -soli di -red bubble -by stand -cambridge shire -par fait -ast le -ow o -ind ore -stom ping -sm elly -ðŁ¤ ĸ -locom o -adm itting -hol me -clock wise -min sk -mc co -for get -ev p -cam ra -ab ella -yo tes -universit yof -mé xico -silver ado -ric ket -crom bie -pu j -eradic ate -deli ght -y go -glam ping -vic a -du ggan -coun ters -cf d -sc our -react js -pu ram -paras ites -in ki -vill en -stel la -li mbo -ang as -k cr -ðŁĴļðŁĴļ ðŁĴļ -vap ori -mum ford -oli gar -à ¼ -al oo -boo ties -ad r -k elli -dru mmers -av ici -nature uk -ron al -in trac -un splash -le che -g oma -el ine -envir o -bi onic -bu eno -mi k -av in -star ling -em powers -cake day -boy cot -ðŁĴļ ðŁĴļ -ðŁĮ¸ ðŁĮ¸ -v ach -m ci -fractu res -ger i -sk ing -exclu ded -lu ce -ja ve -ig gy -evi den -aki stan -a wn -mor als -luci fer -ha ban -tumb ling -sunday motivation -mo sley -captain america -sch icago -the one -mo td -d ts -ðŁIJ ¼ -rep ell -ii i -locu st -geo spatial -mer sey -immer se -desc end -ber nade -j s -boat sales -win der -cran k -sing leton -candid acy -ben a -ðŁı» âĢį -high lander -ol t -k prs -healthy lifestyle -four teen -end the -ith aca -circul ated -r ans -pre valent -ha vas -splend or -roo ster -kalamaz oo -jewell ers -enne dy -rou sey -es y -cann ons -ornam ental -// // -ren don -win ne -mol ding -eid mubarak -coun tess -simon a -ha wa -fo es -du ster -sb u -por tray -mar ries -goo dday -cho co -achi ever -ðŁĺ¹ ðŁĺ¹ -pre neur -tr amp -tom i -n bat -garden chat -farra khan -ever glades -ab ru -sou sa -se ce -homes wee -terre strial -bar it -sri devi -ol u -mel inda -f rick -can dies -ðŁĺŃ ðŁĴķ -qu reshi -family fun -exor cist -cardin al -ny t -dies el -cu mulus -capric orn -si ology -lor na -dou gie -an die -super sport -c fl -п ÑĢи -say ang -pe ek -ภĬ -lo be -j em -ing lis -gg led -c sn -amne sty -chu ps -ba es -sau er -ðŁı IJ -mongo lian -en et -back street -dr illed -acce ssing -ce o -b se -ai ken -pur r -wor sen -whe res -war k -testi fying -bu ri -bla st -aw g -ðŁĵ ĭ -re defining -hear ing -u ci -c mp -bon i -tail oring -ta ji -noc chi -em t -stephen king -ne et -compla ins -campaig ner -luci ano -twili ght -ti esto -pas sports -flo yd -cathe dr -na ked -caregi ver -b coz -ade cides -ku ri -ly k -br aries -dren ched -disc lose -ðŁĴª ðŁı½ -le blanc -je tty -gar ty -chip mun -b su -rhyth mic -ic z -fri d -anne x -ame x -solo ist -lanc ers -arro whead -speci fication -simul ated -na is -inver te -bo wing -wor ship -f z -abo ss -sha q -ì¶ ķ -challeng ers -an arch -aamaadmi party -ãħĭãħĭ ãħĭ -suffol k -so corro -sn ell -cla dding -absor bing -shaw a -particip ates -ðŁį Ķ -book stores -bak u -seap ort -ko jima -gab y -pack ard -electr ician -let it -mo wing -fa wad -young jae -hot mail -men ing -u rie -intim acy -con ti -: ") -lifeis good -in ciner -i dri -craz iness -jour nos -fran chi -bott len -al da -ff es -k x -south we -air a -clay ton -sco ti -f j -bri ga -ð٤ĺ ðŁı» -demonstr ators -y z -stor k -na q -casc ades -travel chat -plat a -pad ma -fran ci -at tain -bat girl -lom bard -hoo s -d dos -neon atal -discla imer -r ss -r ant -di sen -tex aste -so cal -frac tal -cam ry -stri fe -sn acking -mu h -sant ander -mor ons -gra f -par ades -hu ston -dru pal -mi ento -kir stel -hy de -vom it -forti fied -sphin x -da v -bir yani -win nings -s baseball -mer ged -lovel ondon -ling ering -dream big -car leton -liveli hood -djan go -astri d -gri ds -down e -bru ised -s ne -scarec row -hel ium -f nc -bi ggs -an ter -restor ative -em pires -ab del -life style -kiwan is -colloqui um -me en -pr ick -anti que -ze b -mi mic -edmon ds -ðŁijĬ ðŁijĬ -q ing -pp el -mc gill -interpre ting -âŀ ķ -rash ad -do ka -narr ator -electro magnetic -ash by -sau ra -iran deal -âģ īï¸ı -krish nan -in di -ff en -bre a -os man -multin ational -chi ppe -recruit ers -aus biz -p ounding -re gen -cur sor -refu sal -mac s -in ak -ax ial -wa ifu -up cycled -hindu stan -cas sini -carly le -scrat ches -re ef -man atee -eat ery -ðŁĵ ¢ -un condition -sen pai -on ther -comic book -pro sciutto -de mar -mi se -ma ge -fre ec -aye sha -al der -android games -ley ton -ho ck -door way -chicagof ire -aali yah -sw elling -bi x -. ðŁĺĤ -evan kirstel -torpe do -kon stant -genevie ve -ma ia -ha user -do torg -hide ous -fi k -sp raw -e ek -z appa -wan dered -' ' -ra jan -bam bi -( $) -wid ening -tool box -sa ir -illumin ating -pra ys -out patient -i w -day o -lo b -sw fl -sha des -gu ms -coo kin -ko di -gri ffin -traum ati -ste a -slaugh tered -god bless -air time -pseu do -b sa -hau led -ar if -à¸Ńภĩ -le l -wc po -mil iti -char ters -worl da -ru k -k gs -digital india -is able -idyl lic -esp ino -marie tta -e bo -team canada -ab our -wil ton -rock stars -fav ored -phys ic -wrink le -tb r -d print -ball arat -ad al -z ey -ðŁĺį ðŁĶ¥ -tom lin -mt r -pal sy -fener bah -tight en -phil ia -ir oning -ry u -b ant -enqu ire -ca ir -abur ger -tru n -green berg -chau han -ir ina -sh ani -trend setter -pre tt -zaf ar -alo ve -v ici -pan ic -no o -lu stre -disrup ted -bal lis -son sof -mon si -inst ac -ake st -ëĭ ¤ -kw ame -horror movies -distric t -sau cy -mb an -ar mies -with drawn -med ics -loft us -er oom -be kind -ar ns -all on -un ison -davi ds -cr at -nicot ine -so or -sm x -on co -cospla ying -zombi es -har ms -e ger -ro sy -moon shine -fe in -ce tt -du brov -reg ents -ben itez -ðŁijıðŁı¼ ðŁijıðŁı¼ -ste c -m alia -prioriti ze -ic eland -ft se -v amo -lam ont -homo sexuality -bre es -regu i -cb p -te j -sky sports -deter gent -sha sta -de rel -conserv ancy -colori zed -accol ades -vis o -show your -nan ow -bice ps -us ability -bi m -dailys ketch -pearl jam -stran gest -mega deth -broad casts -bar ren -ar ton -chri ss -confi gu -lu res -is the -e ul -railway ana -global health -gi anni -u aap -s lum -consci ously -ab re -n up -bud get -v ada -e sch -real ness -er ased -th unt -be z -armist ice -ðŁij ¹ -sh run -o led -driver less -ðŁ¤· ðŁı»âĢįâĻĢï¸ı -won dr -sk an -sal aam -mother land -h wang -gen o -gang nam -tw right -endor sing -en ic -ador ation -pau sed -patric ks -do cked -plat te -ff xv -ethnic ity -auto show -side show -after life -re located -orphan ed -food network -dare to -and ra -sla ps -v live -swim s -re imagined -mist le -re vise -real ity -bhar ti -ðŁĴĻ ðŁĴĽ -late st -prou dest -gra sses -lan yard -fresh est -carcin oma -anom aly -zieg ler -sum ner -ly rix -gor g -is d -av el -swild life -me squ -john cena -euro league -sab er -master ful -yar ra -cogn ition -jacob son -abo lic -sir loin -shuk la -moj ito -su pere -st weet -me z -e sa -rudol f -gur a -where you -tt m -win s -trust worthy -ny k -bra den -table top -good food -es on -be k -lingui stic -gra ys -ch ath -h cs -mon i -de ans -cu ssions -ch ell -slo ws -he mi -d app -shar pie -boo sters -a os -str ack -se dona -mu eller -hard wick -or nate -thor a -sal ud -o twol -ch um -mi ho -for age -thel ittle -tear ful -ones elf -min dy -sm g -gmb h -emer ald -ðŁĶ´ âļªï¸ı -tu tti -recep tions -re vising -i brox -tope ka -sal ami -expan se -i books -dob son -cli o -at s -ðŁļ Į -mo ha -is ance -shu tters -moo t -jan ine -marvel comics -jor dani -pos er -kenne th -hy ung -de ja -ase ball -speci ality -eu ston -classic car -had ith -ðŁIJ ī -chas ing -iz o -gros ven -ag lia -thisdayin history -t row -om ile -hu ar -by n -sal ine -div ine -demon ic -ty ran -han dover -revit alization -pa ella -cryp tic -se dg -m end -dun kirk -bre d -wal d -sport scar -a ard -whe aton -da ener -k lan -br t -bakhta war -spi res -schu bert -ro ti -poli sh -o se -ag ame -wonder con -prote stant -bo sa -ðŁĺ Ł -d ü -joy ride -ger trude -âĿ Ŀ -gil a -v h -tw a -tra v -swal lowed -star ve -la in -ent ren -rei ki -su kh -cra ic -az u -web page -kee fe -hypo the -hir sch -hel le -camp ground -w amy -tra vi -sha hi -san deep -ru i -han uman -dw p -reposit ory -no or -no ff -un real -p ell -black history -har vick -ma scar -pay ee -pa sha -gastron omy -d ÃŃ -ai g -rosen thal -open day -embelli shed -t tip -sun bathing -go pack -end ome -ï¸ı # -invali d -final four -st fu -squish y -ra sta -mo sch -jam esc -die trich -sel a -mel b -el vi -t dp -sun i -sli t -j ha -bi za -spi ked -l li -l illard -vam pi -syno psis -az har -kendrick lamar -ĮãĤĬãģ ŁãģĦ -heart less -country file -air play -arrog ance -pre e -virtu oso -ãħłãħł ãħłãħł -raj u -le bu -for ward -tu g -dro s -mondaymotiv aton -concep cion -thel o -pad i -looo ol -ÑĢ Ð¾Ð´ -it ss -eth ical -end uro -__ : -expend iture -mon ste -mas king -terri ers -ib is -e mber -cu mple -punctu ation -pi per -ir vin -ade e -yy yyyy -flash backs -cel sius -don nie -bo gota -ben evol -the script -shil pa -pro se -fin dia -ze ke -ne ko -do ves -blues lyrix -fro sh -sowe to -mp lo -al ai -sab i -raq qa -wf tv -stro ller -ian somerhalder -ðŁĶ ª -an on -mo seley -! ?!? -sta king -mol y -car tri -c sg -ast or -transc end -ma er -de ux -cow girl -sas k -pun ter -ma ken -o ates -love tt -grow ler -sag in -v n -ssi ble -officeof rg -y mc -sab ar -faul ty -ap ha -ak on -ðŁij « -snow don -ae w -raise the -ðĿ ĵ -grue some -clement ine -sp ing -lat a -worlden viron -mi mic -can aria -bakhtawar bz -ao a -fal a -ãĤ Ń -avi va -you uuu -thi gh -la dders -gu mbo -tz ky -fu zz -plastic pollution -est ate -strength ened -k ant -dr in -cal vert -transform ational -frigh tened -mac lean -elited angerous -ear thy -t son -to da -j nu -.. , -mic hal -i ban -je ong -is real -sim coe -exclu sives -blue bells -ben e -te u -pil sner -pens ke -athe ists -m pu -cartag ena -ðŁĴĹ ðŁĴĹ -million aires -kk kk -it ar -subscri ptions -remo te -ma fi -hin ton -w cc -ho k -ds b -ab leton -sevent y -pun ks -e indhoven -sh one -mcfar lane -lim popo -empha si -à ¼ -sin fo -pe tre -man grove -ch ino -ber tie -play lists -push awards -p af -deb bie -c do -r ino -ðŁı¾ âĢįâĻĤï¸ı -fol ke -bon nar -th ine -sl an -hal ter -evi e -aw some -vul tures -spar ky -seiz ures -âľ Ķ -ram one -ine ffe -al n -pro ctor -ast ra -the voice -gro te -sci on -dead line -am aya -tain ted -patter ned -exce eding -cross fit -kay lee -drop box -ru shes -tack led -mo by -retro gamer -n cbd -benef itting -shay kh -guild hall -gen try -dream cast -dread ed -bun dled -th aw -revol ving -n pt -kylie jenner -imagin ative -ron i -over came -family time -ds burg -car naval -relation ship -recogni zable -cor oner -ho le -fan fic -emir ates -bur ritos -analy se -thin ner -ne es -galli poli -bl r -cat woman --- >> -au lt -ada ily -nau ghty -ili o -solit aire -mtv br -jocel yn -arun ach -rep ent -south gate -hy acin -essenti al -fent on -and um -it or -go pal -sl inger -po sei -aw il -wi elding -ra ila -eli as -a sto -à ¤ -tend ency -str ata -ker t -< - -im acele -da es -sti mulus -han ley -fit nes -ec stasy -lim ous -ha iling -ðŁ¤ Ń -chis wick -tar ies -sla v -pul i -moderni zation -black mail -b ingham -h fx -+ + -ðŁĩ®ðŁĩ ³ -ni v -we a -profess or -k off -bol ster -su ave -sequ ences -pepper oni -not te -dre n -ãģ¨ ç¹ĭãģ -hs v -o ga -ap tly -z ad -excel si -rin ka -mol dova -min n -ma bel -conferen cing -bas ing -of er -ob si -hamill himself -care less -brief ed -inhe rent -par ish -dub nation -town sville -sar awak -gee ky -doncaster isgreat -was abi -gu p -phen o -dra inthe -carrie underwood -ble eds -bbc world -ane w -alta f -dul wich -ani ston -w ti -sumat ra -gra fton -bl n -me ster -bode ga -re go -es q -an jo -sump tuous -mai sie -ï¿ ½ -wil t -jak ob -el vis -se pul -mu ster -air pollution -president e -happy monday -exten sively -fl ondon -t ls -play ing -pe ed -din ho -var dy -pi ka -n iro -au cus -ðŁį ¦ -nu ll -el ondon -juvent us -imag ines -dis ab -lit o -d ura -work places -promo te -mc caf -wood work -waw x -à® ª -tt ino -shar i -sem per -better together -ðŁijĬ ðŁı» -ze bra -pon dering -en chil -ho m -cosm ic -tan z -mo cked -ec cc -ath ed -abo lish -prop eller -paris agreement -assemb lies -indu stry -fraudul ent -pe sa -chang min -ax x -ðŁĴ µ -irr ational -cu sa -ramad han -octa via -on elove -jac ki -bar ak -taxi der -seri ous -nathan fillion -mc en -ch k -po part -grav ity -copp ola -reading fc -illu sions -j ig -ww x -re sh -ex porting -buzz ard -âĻ ¤ -p cm -lan apar -ko s -arom as -antal ya -ww dc -ven a -phil a -ball in -ðŁij Ħ -quin ta -ma o -f ery -eigh ty -sentim ents -safe guarding -r wa -pu ffs -luc ille -de cath -sl u -nu gent -de ter -braz il -ze iss -super bowl -subsi dy -alter n -hi dalgo -enz ymes -ä ½ -tag ne -hair dresser -adri en -walk out -oppo ses -can tina -bed side -af an -ðŁĶ Ĺ -prophe tic -dan es -un successful -super charged -pk k -exem ption -hart le -secu lar -cli pping -br s -united way -c net -pat chy -ha gan -e en -âļ ľ -var a -sym pathi -never trump -affir mation -om f -ny cfc -ma ja -sur ro -keer th -up scale -sandal wood -mon archy -kno bs -å ĭ -po tholes -hunger games -ter races -na sir -coun sell -welcome to -wa q -se aman -m ita -stun ningly -on theroad -in ability -) !! -bon go -ant v -sp ut -worldenviron mentday -resu sc -y td -fi m -eun hyuk -sa chin -rose anne -cler mont -ape c -am ina -v ening -n antes -al most -sin us -ex as -ty l -ti en -ple ad -lanc s -bur naby -re k -jo om -observ ers -disco graphy -cl g -âĻ ¦ -sn ack -r ti -o ily -crystal li -bru te -web development -topp ings -la f -an is -ad der -reli ving -car lin -battle of -we g -syri an -pon t -n dc -lagh ate -yu ma -sp p -p iti -ro bbing -mart ing -rey kja -raj put -nc ds -kie wicz -âĢ¢ âĢ¢ -vam pire -substan tially -opio ids -nepal i -k line -ar oo -under stand -lit t -u it -thro mbo -sar ies -qu ot -b alling -t tr -s gh -philip p -br ant -ac l -m ello -whit taker -. ; -defi ant -b gc -repl ying -mir ren -metamor pho -sch wab -bul ge -utili zed -pick ering -par don -d sa -à¸ Ī -doo ley -cumul ative -Ð » -ur gency -e mir -+ /- -¦ Ī -ot as -âı ³ -station ed -grape vine -ar ac -karan johar -f ancy -sau l -coo gs -lgbt q -ا٠ħ -jav i -u mmer -pl l -den is -dai pur -pu ffin -lewi sham -fand om -co pe -ves matter -s ve -hel pless -deo dor -ostr ich -kaz an -friday the -con dor -v x -sophom ores -rob les -cu tt -cli mbers -ë¦ ¬ -sle g -sn f -mac ys -hydr ating -grou pe -po yn -mou lin -hg tv -lmfa ooo -sulph ur -asdfghj kl -annab elle -hump back -bra ved -viswas am -multi purpose -hu midi -escor ted -barb ican -f ad -cor sa -ðŁ¤ « -pi ppa -here to -can y -ser gi -or cas -o vie -ed ou -s any -glob alization -man cini -food truck -f is -defi brill -sch re -sma fia -love wins -la ut -k aka -hol lande -game on -resurg ence -out side -olympi ad -int an -abstr action -rapi d -pal om -cal le -jas min -attack ers -swag g -mit ra -ky lo -à® ² -her mitage -gor do -e ira -so sfam -roll out -exc ite -sy nod -mer rill -c als -as sa -liveli hoods -ju ve -the black -gopack go -ant lers -alban ian -wool ly -qu iche -puri fication -are th -smar thome -ne k -all blacks -mex icans -is m -ger ms -comple xion -mar ck -u shi -ðŁIJ IJ -char l -ca stic -till erson -giuli ani -biode gradable -mal bec -bo is -ju bil -im es -r ame -gene tic -esp nu -ch ley -so ho -go pher -g sc -buu ren -cu be -bridesma ids -webin ars -to e -mani pur -viol ently -notic ias -ex changing -chi ev -replac eable -muay thai -bu ss -sp il -instal ment -div ya -cait lin -o lim -fil tering -whirl wind -sta red -prior it -pr am -pompe ii -mono logue -k ite -bu ka -â̦ .. -vac cine -bre ro -woz ni -sol ent -re ferr -my rt -gridi ron -galatasar ay -fro ze -clare mont -ðŁ¥ ĥ -victori as -ssel dorf -pa stures -net neutrality -ch or -ðŁij ģ -ಠ¿ -we ho -symp tom -jo sel -in ous -dragon con -power ball -p te -four thofjuly -ec la -ear buds -where abouts -salt life -depriv ation -ch ter -wi ggle -syste m -ps st -ch az -d any -ri mo -oax aca -lanapar rilla -barcel on -melanch oly -way back -ho tro -n si -l illy -kur o -ja han -intellec t -board game -ðŁı Ĭ -sneak peek -k prc -jail s -cand el -zan zi -mor timer -star ch -ra gs -p fa -long live -k art -gir ona -cro cker -christop h -precau tions -war ship -per m -paren t -van gogh -gif ford -allegh eny -ra yn -ut m -sten cil -rec alling -pen ney -z azzle -ìĥ Ŀ -hin ds -aren as -nu ev -law ler -gu in -do this -ðŁij ķ -ì¶ķ íķĺ -we g -ti b -ri din -complex es -turbul ent -pe sos -de marcus -vall arta -sam sun -kis ses -hein rich -deport es -wil ms -ur d -then ext -inki gayo -ho wi -fir sts -carri age -clean liness -mas war -is ch -ax el -si zzle -road house -fr ans -ent ourage -co bble -boo th -benedic t -tal on -fc u -year ofthe -ray on -raider nation -fo yle -ko val -pi anos -l pg -bur mese -man ure -geo caching -cosc ino -b np -fer ra -stro phy -mar ais -ce es -legen dof -kat niss -eno ch -av ed -you know -d prk -ðŁĺ¢ ðŁĺ¢ -sp un -pro st -sor rows -cent red -ke a -gal icia -? ðŁ¤Ķ -ÑĢод а -bou chard -ðŁĴĻ ðŁĴľ -yu i -seed lings -jon ah -reco vers -ny rd -board room -su ma -my japs -tun g -sha i -ir gc -eli o -wag ons -ka shi -polic emen -john nie -ale coscino -shop ify -dot ted -de tri -va w -to fficial -in your -chal mers -trac ed -no vi -by es -ari el -nipp on -la pel -gri ez -b gs -fool ing -d ita -vijay sethu -nm wx -as ot -kr anti -hel m -ve di -sic kest -mo chi -k abo -shru bs -he red -b sp -sq m -ham r -dul kar -anth a -nr f -avoid ance -at en -publi x -be arers -nas i -ha p -h ells -ðŁĸ ¥ -ภ· -thelast jedi -oh wx -ðŁį « -wa hoo -there se -rec aps -ss nhq -bird photography -v ay -pet ti -pau lo -bel vedere -( * -gr l -du vet -c pec -sa it -por sch -meas urable -avi ators -fre mantle -bre en -on om -me and -life saving -eu ref -en don -embar as -aira sia -el is -dun kin -star magic -s ill -porto bello -ki efer -ex e -mu ted -ãģ ¦ -we thepeople -logi a -liber al -theforce awakens -min ed -haun ts -freck les -care taker -s india -âķ IJ -dev lin -list on -direction er -oh n -fi garo -em manuel -du bois -cl ones -bru ise -ðŁİĪ ðŁİī -disin fe -der matology -as r -s watch -dis comfort -tam anna -pi day -mack en -k atic -delu sional -shaw nee -gu d -al bino -p ali -din gh -cucu mbers -coffe y -anticip ating -treas ured -web summit -shel tered -sav or -pedago gy -m gs -sh ma -s bu -den ali -cam pos -bubble gum -o ir -le aps -y ler -r one -sansk rit -min t -meat less -futuri st -du de -a vel -prote sted -squ ire -z aki -sz n -har court -cycl one -bour dain -gather ings -d ant -advent urer -parag on -alt man -dd ing -ban erjee -snorkel ing -mother well -mis sy -en der -glo ws -ki wis -chick pea -por o -e fron -app t -u y -speci fied -gab by -e strada -com bos -bour bon -vin i -var un -steph ani -key words -car vings -amit abh -wr ought -tw al -re els -clu bbing -ubi quit -cri t -ambed kar -æ Ļ -prun ing -vaccin ated -boe ing -s ks -lo ona -hypno sis -edel man -pho l -he w -colo sse -mckin sey -u on -to te -sacrific ing -ox i -n ang -e mu -пÑĢи ÑĢода -m th -kers wednesday -argu ed -timel apse -ris king -regul ating -ni gh -likeli hood -cu bic -au ction -rein for -pi stor -no ses -ye l -snu ggles -pe i -jean ette -ta ku -ri th -guy z -ภŀ -y te -ver ted -pay soff -jau regui -hoo ligans -procedu ral -mi b -har dy -el eng -chec kers -all ine -the met -prou dof -keerth yofficial -collabor ator -ni u -infl icted -adv ani -re twee -memor iam -f icial -ti ghter -sal em -re viewers -br ics -ben digo -am ell -tur kish -sush maswar -paul son -pal awan -mol lie -stitch er -s burgh -ir u -hay dn -en ers -aro a -u zzi -saraj evo -hel a -apol lo -nine ty -vac a -sp on -vent u -jel ena -hei fer -avo ids -sp ine -pri ze -mar ist -re creating -me de -woo den -find lay -ro fl -n di -compreh end -yu go -y ü -to work -u fos -son ar -pi ston -recor ding -tent ative -art forsale -pel lets -fre do -ÙĪ Ø± -mu ses -custom ization -pro found -is ner -ide ally -si am -plan kton -cm dr -man ger -fran ken -customiz able -ठ® -walk away -swi vel -vast ly -no ton -lex a -ex moor -z as -tan te -reduc tions -lol ly -hip sters -benef ited -ë ² -ww www -mascul ine -fi ji -dre y -ph ill -ane ous -nic ol -men dez -disapp ro -ch ner -through s -shen mue -east man -ðŁIJ İ -yu ck -under tale -re ys -go beavs -eng en -c na -mer r -bir k -ãģ¨ç¹ĭãģ ĮãĤĬãģŁãģĦ -âĥ£ @ -yn na -ste ed -offen der -at um -vani shing -presi denti -love them -g nocchi -fri ggin -per il -mad hya -ag ne -dee jay -mar nock -m tb -fold able -@ ___ -stand re -bron x -bow ski -fin ite -cro ckett -b sf -ge tit -seren awilliams -mir o -ignati us -sla y -rin se -fon due -sel dom -s more -gan i -dy ce -dmit ry -cru mb -late post -pri mark -oh ana -flor als -do a -remembrance day -d ds -azi one -toon ami -air port -æĿ ± -th ad -fi st -dine sh -dr who -ad words -admi rer -pro je -kyrgy z -à « -manife station -le wan -j ic -thi bau -le ased -van ity -nouri shed -never theless -aug mente -fu elled -che ad -wil shere -ru di -p z -my co -mor ro -herbali fe -hardro ck -de man -dre ality -sp ades -ce vic -bha i -bar on -ultimat efan -hou news -to bi -stru t -ke el -affili ation -the masters -sm al -hu e -este ban -con v -om nic -datab ases -co v -ter ti -st g -snoop dogg -metab ol -leth bridge -ðŁı» âĢįâĻĢï¸ı -year ling -residente vil -nws l -iy aki -griez mann -c ous -ðŁĵĿ : -tor ian -sam i -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ðŁĶ¥ -g are -alli ances -whit field -we ther -refin ing -coy i -kra ken -ðŁĺĺ âĿ¤ -singul arity -lil i -h ns -bol dand -waw rinka -misogy ny -lo vers -c q -b dg -ad ona -gar ter -women of -sc d -recogn ising -mun a -str ou -sign alling -lare do -hell boy -alek sand -un available -pedi atric -as in -mer ia -ri shi -futuri sm -w ye -polari zed -e we -pro pel -in forms -cre ase -~ " -arti ston -like for -heidel berg -er ra -life in -len ny -inter rupt -cohe rent -ca z -vick ers -le veled -f bs -cab ins -bu mmed -apost les -we h -ten don -souven irs -infu ri -pier ce -asse t -m las -go th -di ggin -ann as -yl or -th waite -sw el -pan era -mur derers -croo ked -bs go -ac u -a on -re an -one of -ko hl -bloo dh -pest icide -lost dog -fle xing -ëĤ ĺ -su pra -eter nally -ðŁļ Ļ -pa olo -ol an -mom o -is elle -captain marvel -s lou -mistak enly -akhi lesh -mer t -il inan -bu on -bal kan -mir ro -mill en -der ail -dam on -tit i -bi os -re don -pic ard -par te -ðŁ¤ Ł -Ø º -son ics -fir sth -dd c -veg ans -tur ban -ni gan -lot tie -lyn don -star buck -pink floyd -life styles -am ara -a she -r sc -val a -sm er -cw gc -cli ent -buen as -jag an -coo ps -ðŁijij ðŁijij -speci alizes -snag ged -g lar -ben net -wildlife wednesday -bow den -pi k -art in -empor ium -ar l -re ba -pas ser -disappo ints -additi ve -âľĬ ðŁı½ -bay er -missou la -ha skell -comm ences -ni x -ne man -explo ited -plastic surgery -cc d -aso cial -vo t -sie gel -fro ome -kap am -far a -e ha -pro bes -mw f -meet ing -p bb -ak ins -mistle toe -kingdom hearts -for kids -ec r -bal e -escor ts -adidas originals -k wa -k ts -hallo ffame -ðŁĺį . -wag s -pot ted -o wing -honey comb -he fty -uro logy -mer le -b pd -stri pping -re ich -k state -gu ay -yon ge -shak ti -g loom -bat t -son om -n ery -el ba -blan ks -hel le -triple ts -bom bay -ak arta -ab ia -transm itted -rol f -ja is -angular js -fi erc -m ss -trac e -ॠĩ -tom bs -old man -kom bucha -fo l -e health -cere als -are lli -in ari -ðŁĴ © -wo l -liber ties -fa wn -af firm -nun avut -hyster ical -k drama -art es -âĢ¢âĢ¢âĢ¢âĢ¢ âĢ¢âĢ¢âĢ¢âĢ¢ -valent in -man slaughter -gal es -eo in -energi zed -del s -with draws -st les -sar castic -ram esh -incredi bles -lock hart -ya wn -ultimatefan live -oooooooo oooooooo -mu en -guru dev -te er -pe eling -new snow -lingui stics -direc tv -ag end -uni lever -ru ger -han dedly -ero se -li mel -the c -royal ties -fini shers -nr g -m gt -fid get -com ps -bac on -aggre ssively -ab it -ch â -tar de -slu gger -q anda -gre ening -d ats -ensla ved -spec tor -o ye -fre ef -b hand -stop brexit -mis conceptions -cav a -ðŁĺįðŁĺįðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺįðŁĺį -multit asking -hou sel -ferre ira -cen time -ank les -jo dh -hel ly -fro me -out tuesday -nar nia -bal aji -l bloggers -jyo ti -ðŁį ĩ -lan cia -cap ri -y ap -nat ash -down fall -." âĢĶ -à ® -ligam ent -coat ings -ai ded -hi ko -fall ing -encryp ted -yeg food -infringe ment -cu di -ce p -ðŁĺį ðŁĺĤ -tra d -super rugby -ed win -wh iche -vi meo -lay ne -in vigor -he he -dubrov nik -bie ber -u tr -sham an -op ers -ham ill -en ig -di f -ar um -scrap book -min h -diver gence -mckin non -life time -guter res -wil le -ple as -patt y -mic ron -k z -dom aine -ru sher -m ds -ches ney -screw driver -âģ© , -sle dge -hau er -chan a -stam ina -sprink ler -pl n -he ff -bol ton -om on -car rington -accor dion -jor ge -inter ception -in puts -gu ll -tran scription -vanu atu -it ical -eth os -tic h -spac ey -pee king -u mi -ha ger -psycho tic -illi an -illi a -bonnar oo -an ese -pu c -laghate parth -en hall -econom ical -dre dge -% - -u we -tu bular -scoun cil -pe asants -fl er -tumb ler -he p -ford ham -row ley -initi als -ev asion -er nation -plu gins -coch ran -c attle -acid ity -ðŁİĬ ðŁİī -re grann -jump man -ef ace -x ma -patri archy -esco bar -cristi an -tip ton -nu eva -hack ney -back seat -kill arney -aid an -sta dion -simul taneous -ida ho -a je -u th -figu re -clo s -bur k -volun tar -rec ite -macfar lane -cur few -bou do -w gn -sti x -sla p -scrat ched -philli p -jour ne -ex pelled -wa z -u ke -tati ana -ou e -ho pp -dimit ri -ðŁĵ £ -mato logist -electri fying -blu ffs -bill smafia -az cardinals -y aa -x mas -shar a -r ith -g ills -dre s -bar ton -authori zation -imperi alism -home of -to do -foot path -band width -visit spain -moh sin -erup ted -mi ki -insig nia -mike l -ss h -ger a -bank holiday -aw an -t weak -star craft -e al -construc tion -skelet ons -le ep -ine m -bar clay -ship wreck -monsi eur -yo h -ron t -form ative -ser o -le p -horse man -hoo sier -haz mat -cylin ders -cen ti -ðŁĴ¥ðŁĴ¥ ðŁĴ¥ -re em -na ire -mus ically -gras shopper -est onian -termin ology -ro main -blogger rt -tox in -stan ce -cultiv ated -an ast -ðŁIJ į -shi mano -go pher -ene i -recycla ble -gam ification -fight for -c q -avoc ados -ke ys -eli ke -gly cer -shak ur -mobili zation -gal ley -expla in -ex changed -pe th -obe dience -illa ge -en nis -ãĥ ŀ -wi v -walla bies -ma ar -ig ers -fin tech -fin alized -wo j -meaning less -in field -onna ise -e et -bron te -pass ages -ðŁij § -strick land -northern lights -lom ond -h tc -wr ay -shi fter -di alog -ðŁį į ->> >>>> -te atime -ste ch -sic huan -qu ill -fran ca -comple mentary -bar rington -marcu s -mal am -goo oo -for sa -elec tra -af s -âĹ Ĩ -tri fe -sn azzy -fo lia -and olan -after dark -wood son -stra de -litt lest -o gun -con wy -co wards -ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ -íĬ ¸ -se ul -mur phy -dun ks -kapil shar -jo achim -wom ack -equal ity -aver ages -a ine -ðŁ¦ Ī -tac ular -dis ability -u ked -mid century -bar thol -teas ers -tab ern -nj caa -sp out -op i -ku bball -bl om -so ar -popu lism -meth yl -ðŁijĬ ðŁı¼ -o spre -alo ils -ðŁĵ ĸ -ðŁĮ ļ -x er -sp illing -publ ica -car dam -adi sh -sa cha -p kg -bu da -lyric ist -i bc -gru mp -ho ver -hal ep -anti body -anem one -âĻ¥âĻ¥ âĻ¥âĻ¥ -m cl -litho graph -cc u -s fest -path ic -calli ster -otta wa -gun sn -rut ger -hali but -en vision -differenti ate -ðŁļĢ ðŁļĢ -pir an -lat el -uc n -trou bad -ra ine -fierc ely -learn english -lea se -wex mondays -em it -dray ton -bur rell -scuba diving -hol ler -dr u -clo cked -w ral -ap ro -trans lucent -w bo -patri arch -mo ja -lan nister -fish ery -ne derland -mil dly -mi rai -ma ko -ja p -ðŁĺ©ðŁĺ© ðŁĺ© -pro statec -p anna -ar ama -under taking -tomp kins -ne op -soli ds -sav oury -e ames -cut lery -wood bridge -steam er -ri zzo -wild cat -rat na -lamin ated -kin eni -jal ap -ai des -acknowle dges -?! ?!?! -! ðŁİī -w afc -mag gio -ha ves -dar je -of i -gr il -v asi -bru x -mo hd -fake speare -arn old -r mb -for be -wal leye -ro di -therapeu tics -strate gi -ob ste -mu dder -download able -dd ings -d ca -asi angames -campe on -appropri ation -th century -ram atta -dra ped -bul lion -mu c -one x -se greg -ophel ia -bod ily -âĿ¤ ðŁĺį -wi zar -te ased -ade my -to id -sur a -lazar us -sn ickers -ma se -lo h -bow ed -bibli o -x change -har lan -gho shal -flavor ful -bha gat -alle z -whiche ver -ten stein -disc er -organ iser -mt g -dream liner -t se -hok kaido -mo k -indulg ent -hick man -blin ded -al yn -aaa ah -sp ool -lough borough -inter pret -et v -aristo tle -optimi zing -avici i -madu rai -ju li -naw az -mat chups -ab ide -paint ing -w elling -vel i -octag on -in scribed -po king -plac er -life cycle -kili g -g sp -eli ves -cle ments -na sheed -me sut -incarcer ated -dist illed -wal ang -delic acy -del gado -che z -ch ita -ad ero -tu x -pati l -o do -abh cosmetics -tv c -p bc -in accurate -hardwork paysoff -ball er -quot ation -merchandi sing -ga stri -defen ses -dro gba -bex hill -ban kno -win ona -si eg -p gs -hahah ha -agu chi -su bram -mirac le -de sch -li bre -ba cher -ent ine -bbcra di -lou dest -r ps -pi erc -fr yer -storm trooper -rafael nadal -pas co -exhau stion -epic onetsy -rc tid -kel lie -ga ines -d bz -sm riti -s bridge -lim ited -cla w -technic al -bio graphical -ado red -ภ° -exclu de -ac adia -key boards -fur man -so ca -sur u -ni ps -sw aps -server less -run e -pu ffy -north ampton -nish ings -hen der -cartri dges -gun shot -ðŁĵ ¹ -fil ament -respon dents -pey ton -mountaine er -mer ging -life span -intimid ation -p afc -nl wx -expan sive -pur r -f ck -ca e -at ti -tele thon -so hn -mend el -lo pes -dor i -un broken -te red -tast ings -in active -disin tegr -t assel -share the -pi ano -is lay -air space -z awa -ricci ardo -ming ton -fresh er -cur ry -re vs -pharo ah -h mv -exhilar ating -wh oo -lin kin -kri spy -competen cy -ste wards -ne bu -kat su -ad mins -baz ar -as ar -giving back -s summit -song z -lin us -raj kumar -farm ington -fanta sia -ðŁĺ´ ðŁĺ´ -so bri -lis se -barry more -pri sm -blo b -sen ew -mono xide -exp ire -eigh teen -di pper -xi ao -kil t -hin ch -bbc sport -bam boo -p ter -ex al -ðŁ¦ ĭ -ham lin -expe ditions -star gazing -food security -wy lie -ul f -st ingly -on storm -lo eb -bro ome -bn ha -pancre atic -eli ve -!!!!!!!! !!! -ther apper -ortho pedic -avengers endgame -antit rust -ìļ ° -go te -om d -off side -gy llen -win eries -white water -ad l -lu pita -exce eds -consi sted -chew bacca -ash leigh -nhl jets -is san -sh ld -hay at -cran berries -ð٤ĺ ðŁı½ -rock the -spring training -fall out -dairy free -wa j -un decided -so wn -rc n -north wales -htt r -fu mble -d its -comp elled -popu list -min ted -blan chett -. '' -pro pulsion -m illa -au berg -her tz -h ta -u daipur -serendip ity -azte cs -als ace -ðŁIJ ij -lu n -sho es -char li -gar za -ðŁĴ Ł -pro biotics -fox tv -ol is -mi ff -loc alized -diffu ser -si gue -fun ko -rend ous -ðŁĴ ij -jeky ll diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/special_tokens_map.json b/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/special_tokens_map.json deleted file mode 100644 index ae0c5be..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/special_tokens_map.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "bos_token": { - "content": "<|startoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false - }, - "eos_token": { - "content": "<|endoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false - }, - "pad_token": "!", - "unk_token": { - "content": "<|endoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false - } -} diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/tokenizer_config.json b/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/tokenizer_config.json deleted file mode 100644 index bd2abe1..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/tokenizer_config.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "add_prefix_space": false, - "added_tokens_decoder": { - "0": { - "content": "!", - "lstrip": false, - "normalized": false, - "rstrip": false, - "single_word": false, - "special": true - }, - "49406": { - "content": "<|startoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false, - "special": true - }, - "49407": { - "content": "<|endoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false, - "special": true - } - }, - "bos_token": "<|startoftext|>", - "clean_up_tokenization_spaces": true, - "do_lower_case": true, - "eos_token": "<|endoftext|>", - "errors": "replace", - "model_max_length": 77, - "pad_token": "!", - "tokenizer_class": "CLIPTokenizer", - "unk_token": "<|endoftext|>" -} diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/vocab.json b/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/vocab.json deleted file mode 100644 index 469be27..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/tokenizer/vocab.json +++ /dev/null @@ -1,49410 +0,0 @@ -{ - "!": 0, - "!!": 1443, - "!!!": 11194, - "!!!!": 4003, - "!!!!!!!!": 11281, - "!!!!!!!!!!!!!!!!": 30146, - "!!!!!!!!!!!": 49339, - "!!!!!!!!!!": 35579, - "!!!!!!!!!": 28560, - "!!!!!!!!": 21622, - "!!!!!!!": 15203, - "!!!!!!": 9168, - "!!!!!": 5203, - "!!!!": 2360, - "!!!\"": 28048, - "!!!)": 42532, - "!!!": 995, - "!!\"": 20556, - "!!#": 34997, - "!!)": 28352, - "!!": 748, - "!!@": 40705, - "!\"": 2947, - "!\"@": 43819, - "!#": 9670, - "!'": 13222, - "!),": 37904, - "!).": 26225, - "!)": 4571, - "!*": 37737, - "!,": 29325, - "!-": 43499, - "!...": 22121, - "!..": 35475, - "!.": 22517, - "!:)": 31671, - "!:": 17545, - "!": 256, - "!?!": 29767, - "!?!?": 47081, - "!?": 6004, - "!@": 15117, - "!]": 34466, - "!â̦": 35068, - "!âĿ¤ï¸ı": 32559, - "!ðŁİī": 49085, - "!ðŁĺĬ": 43434, - "!ðŁĺį": 36438, - "\"": 1, - "\"!": 10377, - "\"\"": 41530, - "\"\"\"": 25539, - "\"\"": 8575, - "\"#": 8345, - "\"'": 31065, - "\"(": 32741, - "\")": 13112, - "\",": 4332, - "\"-": 9375, - "\"....": 37785, - "\"...": 9049, - "\"..": 25403, - "\".": 2811, - "\"/": 39486, - "\":": 7811, - "\";": 37549, - "\"": 257, - "\"?": 11727, - "\"@": 1512, - "\"@_": 20236, - "\"[": 36930, - "\"â̦": 33993, - "\"âĢĶ": 41151, - "#": 2, - "##": 15483, - "#...": 31491, - "#:": 30144, - "#": 258, - "#@": 35062, - "#â̦": 12834, - "#âĢİ": 34262, - "$": 3, - "$$": 24233, - "$$$": 31859, - "$$": 14929, - "$)": 39460, - "$.": 34682, - "$": 259, - "%": 4, - "%!": 35070, - "%),": 37819, - "%)": 16063, - "%,": 14505, - "%-": 48784, - "%.": 12475, - "%;": 33379, - "%": 260, - "&": 5, - "&&": 27791, - "&": 261, - "'": 6, - "'!": 13781, - "'\"": 19479, - "'#": 15319, - "''": 46594, - "''": 8445, - "')": 19175, - "',": 5662, - "'-": 26152, - "'...": 20474, - "'.": 4645, - "':": 7182, - "';": 44517, - "'": 262, - "'?": 17242, - "'@": 26397, - "'d": 1896, - "'ll": 1342, - "'m": 880, - "'re": 982, - "'s": 568, - "'t": 713, - "'ve": 1200, - "'â̦": 42120, - "(": 7, - "(!)": 30253, - "(\"": 18741, - "(#": 6229, - "($)": 46597, - "($": 15186, - "(&": 15042, - "('": 18235, - "((": 22944, - "(((": 33287, - "((": 13796, - "().": 41737, - "()": 8475, - "(*": 48004, - "(*": 39575, - "(+": 12903, - "(-": 20228, - "(...": 45159, - "(.": 43055, - "(:": 8528, - "(;": 23983, - "(": 263, - "(?)": 22885, - "(@": 2181, - "(£": 33987, - "(©": 44886, - "(ðŁĵ·:": 34610, - "(ðŁĵ·": 37999, - "(ðŁĵ¸:": 44422, - "(ðŁĵ¸": 45204, - ")": 8, - ")!!": 47518, - ")!": 7805, - ")\"": 13046, - ")#": 39981, - ")'": 23613, - ")(": 27956, - "))": 13720, - "))))": 42911, - "))))": 34181, - ")))": 18305, - "))": 5167, - "),": 2361, - ")-": 19034, - ")...": 15274, - ")..": 41822, - ").": 1818, - ")/": 26616, - "):": 4143, - ");": 19686, - ")": 264, - ")?": 18765, - ")@": 41928, - ")_/": 45028, - ")_/¯": 45781, - ")â̦": 41844, - "*": 9, - "*)": 30956, - "**": 9825, - "****": 21326, - "********": 42974, - "*****": 43571, - "****": 25167, - "***": 7829, - "**": 4441, - "*,": 41895, - "*-*": 23568, - "*.": 31304, - "*": 265, - "*_*": 44535, - "+": 10, - "+)": 34810, - "++": 47298, - "+++": 35986, - "++": 19056, - "+,": 35885, - "+.": 25238, - "+/-": 47614, - "+": 266, - ",": 11, - ",\"": 3823, - ",#": 11215, - ",&": 26905, - ",'": 10599, - ",)": 44493, - ",,": 21340, - ",,,,": 33225, - ",,,": 14811, - ",,": 8844, - ",-": 29821, - ",...": 20365, - ",.": 41277, - ",": 267, - ",@": 13975, - ",â̦": 14601, - "-": 12, - "-\"": 18646, - "-#": 10151, - "-$": 24946, - "-'": 28010, - "-(": 33345, - "-)": 3535, - "-*": 21527, - "--": 2154, - "----": 5753, - "--------": 11772, - "----------------": 23122, - "----": 30164, - "---->": 35999, - "---": 11079, - "--->": 14518, - "--": 2432, - "-->": 6422, - "-->>": 47252, - "-.-": 32765, - "-...": 43147, - "-.": 44040, - "-": 268, - "->": 5081, - "-@": 10087, - "-_-": 27227, - "-__": 42718, - "-â̦": 30047, - ".": 13, - ".!!": 37805, - ".!": 14030, - ".\"": 18650, - ".\"-": 21234, - ".\"": 1081, - ".\"âĢĶ": 48703, - ".#": 5014, - ".'\"": 41558, - ".''": 49379, - ".'": 5938, - ".(": 22294, - ".)": 5376, - ".*": 26145, - ".,": 5276, - ".-": 12481, - "..": 608, - "..!!": 23707, - "..!": 17994, - "..\"": 15229, - "..#": 15735, - "..,": 47143, - "...": 3002, - "...!!!": 38351, - "...!!": 39915, - "...!": 16860, - "...\"": 5240, - "...#": 8195, - "...&": 44979, - "...'": 23167, - "...(": 37981, - "...)": 14040, - "...,": 42717, - "....": 2386, - "....\"": 26689, - "....#": 20346, - ".....": 34151, - ".....#": 38867, - "........": 8246, - "................": 24855, - "............": 42965, - "...........": 35008, - "..........": 25526, - ".........": 19881, - "........": 14720, - ".......": 9917, - "......": 5590, - ".....": 3104, - "....": 1390, - "....@": 29790, - "...:": 34570, - "...": 678, - "...?": 16388, - "...@": 12672, - "..": 852, - "..?": 23875, - "..@": 21124, - "./": 31975, - ".:": 15811, - ".;": 47596, - ".": 269, - ".<": 29442, - ".?": 29294, - ".@": 1230, - ".]": 33511, - ".~": 42651, - ".â̦": 18047, - ".âĿ¤ï¸ı": 39085, - ".âłĢ": 30097, - ".ðŁĺĤ": 46580, - "/": 14, - "/#": 13217, - "/$": 36266, - "/-": 19811, - "/.": 39382, - "//": 15348, - "////": 46271, - "///": 22734, - "//": 3502, - "/": 270, - "/@": 8216, - "0": 15, - "0": 271, - "1": 16, - "1": 272, - "2": 17, - "2": 273, - "3": 18, - "3": 274, - "4": 19, - "4": 275, - "5": 20, - "5": 276, - "6": 21, - "6": 277, - "7": 22, - "7": 278, - "8": 23, - "8": 279, - "9": 24, - "9": 280, - ":": 25, - ":\"": 29498, - ":\")": 46432, - ":\"": 12089, - ":#": 26625, - ":$": 33769, - ":'": 8017, - ":'(": 21250, - ":')": 10701, - ":'": 23851, - ":((": 42496, - ":(": 5965, - ":)": 11070, - ":))))": 42339, - ":)))": 21840, - ":))": 10164, - ":).": 39010, - ":)": 1408, - ":*": 12617, - ":-": 13021, - ":-(": 25137, - ":-)": 4223, - ":-": 10323, - ":...": 42140, - "://": 12441, - ":/": 13604, - "::": 33077, - ":::": 43818, - "::": 9788, - ":": 281, - ":>": 39677, - ":@": 14339, - ":]": 43486, - ":|": 45986, - ":â̦": 22365, - ";": 26, - ";))": 41873, - ";)": 3661, - ";-": 35657, - ";-)": 10475, - ";;": 34824, - ";;": 24492, - ";": 282, - "<": 27, - "<-": 47280, - "": 34308, - "<<": 24588, - "<": 283, - "<<": 16482, - "<<<": 35054, - "<|endoftext|>": 49407, - "<|startoftext|>": 49406, - "=": 28, - "=))": 39587, - "=)": 17840, - "=": 284, - "==": 11748, - "====": 21734, - "========": 38952, - "==>": 29688, - "=>": 9714, - ">": 29, - ">.<": 38507, - ">:": 36196, - ">": 285, - "><": 28015, - ">>": 8270, - ">>": 2988, - ">>>": 6395, - ">>>>": 18461, - ">>>>": 18435, - ">>>>>": 32972, - ">>>>>>": 48947, - ">>>>>>>>": 41947, - ">_": 44144, - "?": 30, - "?!": 9785, - "?!!": 25342, - "?!\"": 29315, - "?!": 2835, - "?!?!": 16349, - "?!?!?!": 49084, - "?!?!?": 37619, - "?!?": 11395, - "?\"": 3283, - "?#": 24018, - "?'": 13610, - "?)": 9626, - "?,": 41628, - "?...": 22641, - "?..": 43905, - "?.": 41251, - "?:": 21067, - "?": 286, - "??": 5195, - "??!!": 43219, - "??!": 37341, - "??\"": 44996, - "??": 2197, - "???": 40017, - "???": 3824, - "????": 15936, - "????": 10362, - "?????": 21370, - "??????": 34589, - "????????": 45091, - "?@": 29258, - "?ð٤Ķ": 47928, - "@": 31, - "@#": 39397, - "@.": 43730, - "@/": 28639, - "@": 287, - "@@": 30314, - "@_": 2692, - "@__": 17042, - "@___": 48308, - "A": 32, - "A": 288, - "B": 33, - "B": 289, - "C": 34, - "C": 290, - "D": 35, - "D": 291, - "E": 36, - "E": 292, - "F": 37, - "F": 293, - "G": 38, - "G": 294, - "H": 39, - "H": 295, - "I": 40, - "I": 296, - "J": 41, - "J": 297, - "K": 42, - "K": 298, - "L": 43, - "L": 299, - "M": 44, - "M": 300, - "N": 45, - "N": 301, - "O": 46, - "O": 302, - "P": 47, - "P": 303, - "Q": 48, - "Q": 304, - "R": 49, - "R": 305, - "S": 50, - "S": 306, - "T": 51, - "T": 307, - "U": 52, - "U": 308, - "V": 53, - "V": 309, - "W": 54, - "W": 310, - "X": 55, - "X": 311, - "Y": 56, - "Y": 312, - "Z": 57, - "Z": 313, - "[": 58, - "[#": 11115, - "[...": 39975, - "[...]": 43790, - "[": 314, - "[@": 15148, - "[]": 22240, - "\\": 59, - "\\'": 41239, - "\\": 315, - "]": 60, - "]\"": 39434, - "],": 34067, - "].": 26262, - "]:": 21641, - "]": 316, - "][#": 39009, - "][": 29329, - "^": 61, - "^)": 30720, - "^-": 43516, - "^.": 31552, - "^.^": 35791, - "^": 317, - "^^": 34454, - "^^": 9064, - "^_": 14423, - "^_^": 15995, - "_": 62, - "_'": 44701, - "_(": 36951, - "_)": 37393, - "_*": 36237, - "_,": 31417, - "_-": 23193, - "_.": 26841, - "_/": 37647, - "_:": 13109, - "_": 318, - "__": 2355, - "__:": 47043, - "__": 3838, - "___": 43812, - "___": 13530, - "____": 4727, - "____": 25350, - "_____": 38803, - "________": 9549, - "________________": 20115, - "`": 63, - "`": 319, - "a": 64, - "a": 320, - "aa": 1821, - "aa": 3894, - "aaa": 14376, - "aaa": 9583, - "aaaa": 6727, - "aaaa": 19336, - "aaaaa": 31095, - "aaaaaa": 44413, - "aaaaaaaa": 23126, - "aaaah": 49151, - "aaah": 35856, - "aaay": 37846, - "aab": 34108, - "aac": 23251, - "aac": 11346, - "aad": 20464, - "aad": 35894, - "aaf": 37638, - "aaf": 31534, - "aag": 42174, - "aah": 28990, - "aaj": 28727, - "aaj": 43411, - "aak": 37739, - "aal": 22268, - "aal": 30208, - "aali": 27896, - "aaliyah": 46577, - "aam": 12943, - "aam": 22775, - "aama": 45018, - "aamaadmi": 45563, - "aamaadmiparty": 46406, - "aamir": 27456, - "aan": 20705, - "aan": 13426, - "aand": 38054, - "aap": 12023, - "aap": 12052, - "aapl": 34516, - "aar": 4695, - "aar": 13234, - "aard": 46932, - "aaron": 13948, - "aaron": 7709, - "aas": 28542, - "aas": 32205, - "aat": 34018, - "aat": 35004, - "aau": 35426, - "aay": 38281, - "aay": 40249, - "aaz": 26770, - "ab": 596, - "ab": 3937, - "aba": 44204, - "aba": 11102, - "abad": 33444, - "abad": 7155, - "aban": 41662, - "aband": 8595, - "abandon": 28805, - "abandoned": 11227, - "abar": 17860, - "abar": 39805, - "abas": 25402, - "abay": 43542, - "abb": 38954, - "abb": 38297, - "abba": 30870, - "abbas": 37494, - "abbas": 24412, - "abbey": 31927, - "abbey": 10132, - "abbie": 39949, - "abbo": 13536, - "abbot": 44046, - "abbott": 43737, - "abbott": 15649, - "abbrevi": 44843, - "abby": 30586, - "abby": 14694, - "abc": 13137, - "abc": 5334, - "abcnews": 31566, - "abd": 44093, - "abdel": 46511, - "abdomin": 35335, - "abdominal": 39328, - "abdu": 13361, - "abduc": 17884, - "abducted": 31520, - "abduction": 36984, - "abdul": 14227, - "abdul": 15593, - "abdullah": 21317, - "abe": 15856, - "abe": 12734, - "abee": 36037, - "abel": 31938, - "abel": 25318, - "abella": 46156, - "aben": 40865, - "aber": 7828, - "aber": 41867, - "aberdeen": 30539, - "aberdeen": 17236, - "abh": 27484, - "abh": 33649, - "abhcosmetics": 49189, - "abhi": 18113, - "abhin": 44045, - "abhishek": 44502, - "abi": 16867, - "abi": 14161, - "abia": 48604, - "abide": 49163, - "abig": 20863, - "abigail": 25686, - "abil": 21135, - "abilities": 8724, - "ability": 35146, - "ability": 3024, - "abit": 48668, - "ablanc": 33716, - "able": 10102, - "able": 863, - "abled": 10655, - "ableg": 24055, - "ables": 8486, - "ableton": 47169, - "ably": 6748, - "abnormal": 40934, - "abo": 2889, - "abo": 21861, - "aboard": 11661, - "abol": 31768, - "abolic": 46827, - "abolish": 47403, - "aboo": 42433, - "abor": 8416, - "aboriginal": 20422, - "abortion": 12336, - "abortions": 43218, - "aboss": 46401, - "abou": 36455, - "abou": 44053, - "abound": 41037, - "abour": 46637, - "about": 20204, - "about": 781, - "abouts": 36339, - "above": 35019, - "above": 4348, - "aboy": 37077, - "abpoli": 44779, - "abq": 38767, - "abr": 44932, - "abra": 10694, - "abra": 35087, - "abraham": 40623, - "abraham": 15869, - "abram": 33255, - "abrams": 29852, - "abre": 22472, - "abre": 46756, - "abri": 28605, - "abridged": 45333, - "abroad": 11253, - "abru": 46295, - "abs": 18431, - "abs": 11109, - "absc": 25389, - "abscbn": 44260, - "abscbn": 45810, - "absen": 32453, - "absence": 19240, - "absent": 30363, - "absol": 4624, - "absolu": 7055, - "absolut": 4666, - "absolute": 7501, - "absolutely": 4703, - "absor": 14303, - "absorb": 35806, - "absorbed": 45059, - "absorbing": 46412, - "absorption": 42210, - "abstr": 7530, - "abstract": 23885, - "abstract": 10197, - "abstractart": 31170, - "abstraction": 47696, - "abstracts": 40065, - "absur": 21639, - "absurd": 29757, - "abt": 9850, - "abu": 9167, - "abu": 11787, - "abud": 20180, - "abudha": 21450, - "abudhabi": 25256, - "abuja": 23371, - "abun": 20544, - "abundance": 23236, - "abundant": 31611, - "abur": 23377, - "aburger": 46660, - "abuse": 7678, - "abused": 23855, - "abuses": 37132, - "abusing": 36558, - "abusive": 26858, - "abv": 34172, - "aby": 16342, - "aby": 31378, - "abyss": 33632, - "abz": 42292, - "ac": 546, - "ac": 2816, - "aca": 9213, - "acab": 41388, - "acacia": 44047, - "acad": 32537, - "acade": 2892, - "academia": 22662, - "academic": 31178, - "academic": 7935, - "academics": 26417, - "academies": 42569, - "academy": 29968, - "academy": 4041, - "acadi": 41455, - "acadia": 49236, - "acam": 26172, - "acan": 42227, - "acan": 26318, - "acap": 32357, - "acar": 22232, - "acare": 16961, - "acc": 26805, - "acc": 9318, - "acca": 30883, - "acce": 8564, - "acceler": 10161, - "accelerate": 23619, - "accelerated": 38513, - "accelerating": 41821, - "acceleration": 39387, - "accelerator": 25261, - "accent": 28110, - "accent": 18931, - "accents": 31738, - "accenture": 41853, - "accep": 4616, - "accept": 16447, - "accept": 9338, - "acceptable": 14209, - "acceptance": 17090, - "accepted": 9159, - "accepting": 12855, - "accepts": 22338, - "access": 7596, - "access": 3822, - "accessi": 10787, - "accessibility": 23407, - "accessible": 13977, - "accessing": 46339, - "accessories": 10220, - "accessory": 20417, - "acci": 4263, - "acci": 33943, - "accident": 6608, - "accidental": 24895, - "accidentally": 11061, - "accidents": 22072, - "acclaimed": 21172, - "acco": 44730, - "accol": 33858, - "accolades": 46731, - "accom": 23658, - "accommo": 34495, - "accommod": 14386, - "accommodate": 34708, - "accommodation": 18066, - "accommodations": 45536, - "accomp": 24985, - "accompan": 14746, - "accompanied": 20715, - "accompany": 34142, - "accompanying": 38179, - "accompli": 10205, - "accomplish": 25542, - "accomplished": 16462, - "accomplishment": 26100, - "accomplishments": 24965, - "accor": 4182, - "accord": 34293, - "accord": 28513, - "according": 4717, - "accordingly": 35535, - "accordion": 48760, - "accoun": 3081, - "account": 18424, - "account": 4684, - "accountability": 19377, - "accountable": 24216, - "accountant": 31026, - "accountants": 37222, - "accounted": 43951, - "accounting": 14805, - "accounts": 9974, - "accra": 31900, - "accred": 17451, - "accreditation": 27015, - "accredited": 27647, - "acct": 45569, - "accu": 5618, - "accumul": 19275, - "accumulation": 37112, - "accur": 6551, - "accuracy": 18423, - "accurate": 8858, - "accurately": 24206, - "accusations": 33615, - "accuse": 39414, - "accused": 9434, - "accuses": 27496, - "accusing": 41474, - "acdc": 45067, - "ace": 2675, - "ace": 804, - "acea": 35219, - "aceae": 38153, - "acele": 40868, - "aceous": 33610, - "acer": 37990, - "acer": 25809, - "aces": 5725, - "acet": 28735, - "acf": 38389, - "ach": 972, - "ach": 987, - "acha": 22686, - "acharya": 45780, - "achat": 32706, - "ache": 27771, - "ache": 7214, - "ached": 17048, - "acher": 38442, - "acher": 17936, - "achers": 25051, - "aches": 14823, - "achi": 3264, - "achi": 9087, - "achiev": 8160, - "achieve": 14798, - "achieve": 8175, - "achieved": 12359, - "achievement": 8245, - "achievements": 16114, - "achiever": 46286, - "achievers": 44544, - "achieves": 40123, - "achieving": 16120, - "achilles": 33327, - "achim": 42335, - "aching": 12864, - "acho": 33130, - "achs": 41195, - "aci": 4359, - "aci": 34100, - "acia": 30163, - "acial": 32422, - "acid": 35474, - "acid": 10085, - "acidity": 48800, - "acids": 27751, - "acies": 20162, - "acin": 39442, - "acing": 9442, - "acio": 26202, - "acion": 44965, - "acion": 24968, - "acional": 26435, - "aciones": 35832, - "acious": 16020, - "acity": 7511, - "ación": 38175, - "ack": 877, - "ack": 725, - "acked": 5698, - "acker": 31201, - "acker": 7940, - "ackeray": 41843, - "acki": 42857, - "acking": 5515, - "ackles": 28503, - "acknow": 13563, - "acknowle": 18100, - "acknowledge": 25209, - "acknowledged": 35913, - "acknowledges": 49083, - "acknowledging": 45645, - "acks": 3858, - "acl": 47593, - "acl": 23073, - "acle": 6504, - "acles": 34164, - "aclu": 37354, - "acm": 39317, - "acmilan": 36500, - "acne": 24195, - "aco": 9463, - "aco": 8800, - "acol": 17431, - "acollege": 43468, - "acom": 17224, - "acom": 22342, - "acon": 11621, - "acon": 11571, - "aconf": 38851, - "acons": 31599, - "acor": 22076, - "acorn": 37537, - "acos": 39943, - "acosta": 31994, - "acou": 8794, - "acoun": 31295, - "acounty": 45449, - "acoustic": 10616, - "acoustics": 43873, - "acp": 19627, - "acqu": 7946, - "acquainted": 40713, - "acqui": 12194, - "acquire": 21576, - "acquired": 15932, - "acquires": 27376, - "acquiring": 42785, - "acquis": 14207, - "acquisition": 16543, - "acquisitions": 39649, - "acr": 43648, - "acre": 26749, - "acre": 9493, - "acres": 11630, - "acro": 21060, - "acrob": 40891, - "acron": 37770, - "across": 2500, - "acrosse": 40979, - "acruz": 40455, - "acry": 10440, - "acrylic": 12252, - "acs": 11782, - "act": 10305, - "act": 1393, - "acted": 10971, - "acti": 4786, - "acting": 6319, - "action": 12493, - "action": 1816, - "actions": 6271, - "activ": 3430, - "activate": 26737, - "activated": 22249, - "activation": 26769, - "active": 19009, - "active": 4046, - "actively": 18645, - "activi": 7230, - "activism": 20117, - "activist": 10850, - "activists": 12649, - "activities": 6514, - "activity": 6206, - "actment": 44807, - "acton": 36167, - "acton": 36697, - "actonclimate": 43797, - "actor": 12181, - "actor": 4035, - "actors": 9255, - "actorslife": 25117, - "actorvijay": 34033, - "actress": 5805, - "actresses": 33639, - "acts": 6816, - "actu": 2375, - "actual": 7488, - "actually": 2955, - "acu": 9204, - "acu": 48475, - "aculture": 38145, - "acup": 30869, - "acup": 27278, - "acupuncture": 40043, - "acur": 44719, - "acura": 30120, - "acus": 33710, - "acute": 19734, - "acy": 18717, - "acy": 2356, - "ad": 594, - "ad": 680, - "ada": 25785, - "ada": 1886, - "adaily": 47254, - "adal": 46646, - "adam": 6037, - "adam": 4944, - "adamlambert": 27659, - "adams": 7942, - "adan": 41802, - "adani": 37499, - "adap": 6341, - "adapt": 22666, - "adaptation": 16566, - "adapted": 26657, - "adapter": 21839, - "adapting": 44120, - "adaptive": 28672, - "adar": 27702, - "adar": 32681, - "adas": 23250, - "adata": 39500, - "aday": 31367, - "aday": 10280, - "adays": 24337, - "adb": 45630, - "adc": 38201, - "add": 19408, - "add": 3536, - "addams": 38912, - "added": 4149, - "adder": 47557, - "addi": 36378, - "addic": 5709, - "addict": 14614, - "addicted": 16275, - "addiction": 11751, - "addictive": 29638, - "addicts": 29997, - "adding": 8676, - "addis": 43911, - "addison": 32369, - "additi": 26927, - "addition": 6698, - "additional": 10666, - "additions": 22575, - "additive": 48546, - "addo": 40001, - "address": 5834, - "addressed": 20817, - "addresses": 12702, - "addressing": 10594, - "adds": 9944, - "addy": 24746, - "ade": 2194, - "ade": 1928, - "adecides": 46374, - "aded": 9994, - "adee": 47054, - "adel": 4434, - "adel": 27308, - "adelaide": 38193, - "adelaide": 11611, - "adele": 42843, - "adele": 21220, - "adelrey": 43627, - "ademy": 49123, - "aden": 28669, - "aden": 28688, - "adena": 23648, - "adequ": 18232, - "adequate": 22281, - "ader": 21365, - "adero": 49185, - "aders": 27672, - "ades": 5793, - "adh": 42301, - "adhd": 32649, - "adhe": 21175, - "adhesive": 38429, - "adi": 2486, - "adi": 8779, - "adia": 26874, - "adic": 36780, - "adid": 8086, - "adidas": 22396, - "adidas": 9589, - "adidasoriginals": 48575, - "adies": 45834, - "adifference": 37217, - "adilla": 41167, - "ading": 15000, - "adio": 15060, - "adirond": 36843, - "adish": 49009, - "adity": 28596, - "aditya": 37186, - "adityanath": 44437, - "adjac": 32517, - "adjacent": 33836, - "adjec": 45512, - "adju": 16413, - "adjun": 45995, - "adjust": 13784, - "adjust": 28073, - "adjustable": 20476, - "adjusted": 30515, - "adjusting": 41132, - "adjustment": 36081, - "adjustments": 36331, - "adl": 49351, - "adler": 30222, - "adm": 9892, - "adm": 33604, - "admi": 11666, - "admin": 12528, - "admini": 6434, - "administr": 12174, - "administration": 9502, - "administrative": 22424, - "administrator": 22603, - "administrators": 36123, - "admins": 49297, - "admir": 17031, - "admiral": 21013, - "admiration": 39569, - "admire": 17791, - "admired": 36103, - "admirer": 48344, - "admiring": 29835, - "admission": 11315, - "admissions": 22463, - "admit": 13769, - "admits": 16332, - "admitted": 20427, - "admitting": 46148, - "adn": 40339, - "adnan": 42037, - "ado": 4775, - "ado": 2933, - "adobe": 29256, - "adobe": 16484, - "adog": 44913, - "adol": 33512, - "adole": 22704, - "adolescent": 36793, - "adolescents": 45656, - "adolf": 41179, - "adon": 25907, - "adona": 48419, - "adop": 4183, - "adopt": 16441, - "adopt": 11159, - "adoptable": 36905, - "adoptdont": 19674, - "adoptdontshop": 20089, - "adopted": 12538, - "adopting": 30158, - "adoption": 11544, - "adopts": 40853, - "ador": 4992, - "ador": 9162, - "adora": 40031, - "adorable": 6298, - "adoration": 46781, - "adore": 15502, - "adored": 49233, - "adores": 30290, - "adorned": 44953, - "ados": 20079, - "adox": 32188, - "adp": 44426, - "adr": 46189, - "adren": 24204, - "adrenaline": 35552, - "adri": 5935, - "adrian": 25012, - "adrian": 13163, - "adriana": 41363, - "adrid": 26562, - "adrien": 47469, - "adrienne": 40081, - "ads": 2485, - "adu": 16882, - "adu": 24446, - "adukone": 30511, - "adul": 7222, - "adult": 42209, - "adult": 7115, - "adulthood": 40964, - "adults": 9391, - "adv": 1647, - "adv": 21018, - "advan": 33411, - "advance": 27291, - "advance": 7022, - "advanced": 7465, - "advancement": 35437, - "advances": 15852, - "advancing": 21355, - "advani": 48189, - "advant": 7017, - "advantage": 8573, - "advantaged": 38361, - "advantages": 23506, - "adven": 41670, - "advent": 3071, - "advent": 15199, - "adventcalendar": 43492, - "adventur": 29627, - "adventure": 17251, - "adventure": 4377, - "adventurer": 48098, - "adventures": 7941, - "adventurous": 31179, - "adver": 4806, - "adverse": 30348, - "adversity": 32516, - "advert": 19080, - "adverti": 5682, - "advertise": 31473, - "advertised": 38987, - "advertisement": 18713, - "advertiser": 41829, - "advertisers": 45472, - "advertising": 8158, - "adverts": 44306, - "advice": 4973, - "advis": 4634, - "advise": 25962, - "advised": 23196, - "adviser": 20367, - "advisers": 40984, - "advises": 42761, - "advising": 39648, - "advisor": 12380, - "advisors": 23197, - "advisory": 10224, - "advoc": 6657, - "advocacy": 14443, - "advocate": 12044, - "advocates": 17757, - "adwords": 48343, - "ady": 41446, - "ady": 8781, - "ae": 5548, - "ae": 4542, - "aea": 37048, - "aed": 26912, - "aege": 42304, - "ael": 41533, - "ael": 43340, - "aen": 43085, - "aer": 10195, - "aeri": 27685, - "aerial": 44866, - "aerial": 12440, - "aero": 10196, - "aero": 25026, - "aerob": 42824, - "aeron": 37286, - "aeronau": 42816, - "aerop": 27735, - "aerosmith": 43253, - "aerospace": 20530, - "aes": 10617, - "aes": 35677, - "aest": 40694, - "aesthe": 21181, - "aesthetic": 16179, - "aesthetics": 29295, - "aew": 47108, - "af": 702, - "af": 4391, - "afa": 24953, - "afan": 47474, - "afar": 41637, - "afar": 37866, - "afb": 27022, - "afc": 29742, - "afc": 6571, - "afcb": 44276, - "afcon": 30019, - "afd": 44626, - "afe": 30487, - "afe": 13912, - "afer": 44707, - "aff": 8849, - "aff": 14864, - "affair": 13998, - "affairs": 9830, - "affe": 4556, - "affect": 11361, - "affected": 9715, - "affecting": 18448, - "affection": 33780, - "affection": 28381, - "affectionate": 42578, - "affects": 17285, - "affili": 12120, - "affiliate": 18652, - "affiliated": 37540, - "affiliation": 48377, - "affinity": 41451, - "affir": 25343, - "affirm": 42711, - "affirm": 48625, - "affirmation": 47495, - "affl": 34036, - "affleck": 35584, - "afford": 7951, - "afford": 13223, - "affordability": 44828, - "affordable": 43944, - "affordable": 8926, - "afg": 33994, - "afgh": 9029, - "afghan": 15919, - "afghanistan": 9836, - "afi": 24074, - "afi": 31958, - "afil": 27209, - "afire": 42010, - "afirst": 38601, - "afl": 15132, - "afl": 14356, - "aflo": 41959, - "afm": 38385, - "afootball": 41694, - "afor": 43102, - "afore": 41468, - "afp": 18311, - "afraid": 9474, - "afri": 13888, - "afric": 2136, - "africa": 3093, - "african": 17471, - "african": 4736, - "africans": 26534, - "afridi": 37651, - "afrika": 45833, - "afrin": 45586, - "afro": 16267, - "afro": 21795, - "afs": 48960, - "aft": 22693, - "after": 2278, - "after": 953, - "afterdark": 48966, - "afterlife": 46790, - "aftermath": 20958, - "afterno": 22330, - "afternoon": 39035, - "afternoon": 2716, - "afternoons": 31631, - "afterparty": 35305, - "afterwards": 23911, - "ag": 602, - "ag": 5241, - "aga": 1050, - "aga": 4654, - "again": 1495, - "against": 23838, - "against": 1601, - "agame": 46943, - "agan": 42946, - "agan": 9178, - "agar": 13199, - "agar": 17544, - "agarwal": 43117, - "agas": 20430, - "agate": 25454, - "agatha": 43896, - "agave": 42671, - "agawa": 39433, - "agazine": 44942, - "age": 4758, - "age": 805, - "aged": 3889, - "ageing": 25349, - "agen": 10101, - "agen": 43696, - "agencies": 13887, - "agency": 44885, - "agency": 6270, - "agend": 48653, - "agenda": 8728, - "agent": 21210, - "agent": 6576, - "agents": 10199, - "agentsof": 37074, - "agentsofshield": 38801, - "ager": 44847, - "ager": 10443, - "agers": 22123, - "ages": 2321, - "agg": 45482, - "aggarwal": 39386, - "agger": 27836, - "aggi": 36844, - "aggie": 44244, - "aggie": 37618, - "aggies": 31047, - "aggio": 36685, - "aggrav": 35203, - "aggre": 10426, - "aggreg": 41968, - "aggregate": 41318, - "aggression": 28900, - "aggressive": 16295, - "aggressively": 48667, - "agh": 17917, - "agh": 14402, - "aghan": 31276, - "agi": 24036, - "agi": 17645, - "agic": 37652, - "agile": 16276, - "agility": 32161, - "aging": 4336, - "agio": 41746, - "agirl": 35469, - "agle": 37035, - "agle": 16702, - "agles": 36374, - "agles": 22679, - "aglia": 46912, - "agm": 19162, - "agn": 36474, - "agna": 43626, - "agne": 29374, - "agne": 48303, - "agnes": 26213, - "agno": 41540, - "ago": 6276, - "ago": 1468, - "agomez": 27127, - "agon": 26775, - "agon": 14901, - "agony": 36977, - "agor": 38920, - "agos": 32657, - "agov": 34227, - "agp": 46048, - "agr": 36639, - "agra": 26660, - "agra": 29830, - "agram": 2447, - "agre": 3180, - "agreat": 37594, - "agree": 5953, - "agreed": 12774, - "agreeing": 40720, - "agreement": 8286, - "agreements": 25865, - "agrees": 17854, - "agri": 20527, - "agri": 30326, - "agricul": 7234, - "agricultural": 15440, - "agriculture": 9720, - "agro": 33178, - "agro": 44589, - "agron": 41314, - "agroup": 40099, - "ags": 16926, - "agt": 39681, - "agu": 3922, - "agu": 36544, - "agua": 18482, - "aguchi": 49206, - "ague": 2095, - "aguero": 42964, - "agues": 7000, - "aguil": 27946, - "aguilar": 44715, - "ah": 1772, - "ah": 1288, - "aha": 12082, - "aha": 8429, - "ahah": 38661, - "ahaha": 32423, - "ahahaha": 42620, - "aham": 36036, - "ahan": 45061, - "ahan": 19255, - "ahar": 31038, - "ahar": 38760, - "ahe": 27688, - "ahead": 3158, - "ahem": 39995, - "ahh": 13152, - "ahhh": 14769, - "ahhhh": 21054, - "ahhhhh": 36392, - "ahi": 45349, - "ahi": 24154, - "ahl": 30433, - "ahmad": 32167, - "ahmad": 16902, - "ahmadi": 38656, - "ahmadiyya": 44865, - "ahmed": 19491, - "ahmed": 12081, - "ahmedabad": 26966, - "ahn": 33405, - "aho": 28114, - "aho": 38444, - "ahora": 43113, - "ahouse": 33197, - "ahoy": 38652, - "ahs": 16937, - "ahu": 11908, - "ahu": 16515, - "ai": 2014, - "ai": 2215, - "aia": 27046, - "aib": 34780, - "aic": 29454, - "aid": 13723, - "aid": 5182, - "aida": 33830, - "aidan": 48814, - "aidan": 26945, - "aide": 31558, - "aide": 9746, - "aided": 48707, - "aiden": 40020, - "aides": 49082, - "aids": 11759, - "aig": 27295, - "aig": 46989, - "aii": 22478, - "aik": 42575, - "aiken": 46342, - "ail": 1457, - "ail": 9154, - "ailed": 38919, - "ailing": 29999, - "ails": 27024, - "aim": 6787, - "aim": 11255, - "aime": 39872, - "aimed": 20247, - "aimee": 36318, - "aiming": 21768, - "aimo": 36706, - "aims": 13326, - "ain": 8326, - "ain": 2210, - "aine": 48983, - "aine": 17634, - "ains": 27621, - "aint": 29543, - "aint": 13099, - "ainted": 39933, - "aioli": 43949, - "air": 1281, - "air": 1922, - "aira": 35085, - "aira": 46444, - "airasia": 48020, - "airbnb": 23098, - "airborne": 22755, - "airbus": 15324, - "aircraft": 7706, - "airdrop": 38434, - "aire": 7682, - "aired": 21938, - "aires": 17034, - "airfield": 40525, - "airforce": 23511, - "airing": 20453, - "airline": 14847, - "airlines": 8929, - "airmen": 44499, - "airplane": 16451, - "airplanes": 33319, - "airplay": 47024, - "airpollution": 47362, - "airport": 48337, - "airport": 3259, - "airports": 21543, - "airs": 18539, - "airshow": 27139, - "airsoft": 30134, - "airspace": 49280, - "airstrikes": 37220, - "airtel": 34784, - "airtime": 46617, - "airwaves": 43910, - "airways": 14299, - "airy": 44453, - "ais": 7616, - "ais": 11393, - "aise": 30505, - "aish": 21946, - "aisha": 40211, - "aishwar": 29687, - "aishwarya": 44019, - "aisle": 26917, - "ait": 25613, - "ait": 40814, - "aj": 3990, - "aj": 6342, - "aja": 42343, - "aja": 19633, - "ajax": 21933, - "ajay": 22494, - "ajay": 28726, - "ajaydevgn": 35515, - "aje": 48818, - "aje": 33315, - "ajes": 38791, - "aji": 26102, - "aji": 21153, - "ajit": 42261, - "ajith": 24118, - "ajo": 26958, - "aju": 36855, - "ak": 819, - "ak": 1196, - "aka": 19154, - "aka": 3412, - "akaif": 45736, - "akan": 43678, - "akan": 38244, - "akapoor": 40064, - "akarta": 48603, - "akb": 41962, - "akbar": 27180, - "ake": 10558, - "ake": 5776, - "aked": 6115, - "aker": 14245, - "aker": 3074, - "akers": 5788, - "akes": 4764, - "akest": 46679, - "akh": 14821, - "akh": 30660, - "akhan": 28158, - "akhi": 41660, - "akhilesh": 48495, - "akhtar": 45458, - "aki": 18173, - "aki": 6592, - "akin": 24630, - "akin": 13601, - "aking": 1809, - "akins": 48568, - "akira": 34001, - "akis": 27732, - "akistan": 46221, - "akley": 39908, - "ako": 44027, - "ako": 14541, - "akon": 47105, - "akos": 44659, - "akrish": 37434, - "akron": 26115, - "aks": 2953, - "aksh": 28226, - "akshay": 21483, - "akshay": 38914, - "akshaykumar": 23624, - "akshi": 42634, - "aku": 18151, - "aku": 20815, - "aky": 11977, - "al": 526, - "al": 566, - "ala": 12783, - "ala": 3449, - "alab": 6365, - "alabam": 45880, - "alabama": 8422, - "alach": 24622, - "alad": 23074, - "aladdin": 29951, - "alai": 47072, - "alain": 28999, - "alam": 16612, - "alam": 16012, - "alamo": 41922, - "alamo": 34632, - "alan": 9563, - "alan": 5773, - "alana": 43405, - "aland": 34304, - "aland": 6819, - "alar": 34333, - "alarm": 11321, - "alarming": 37209, - "alarms": 31236, - "alarts": 31422, - "alas": 7276, - "alas": 22412, - "alaska": 9562, - "alaskan": 33898, - "alastair": 42062, - "alay": 30289, - "alay": 36450, - "alaya": 36397, - "alb": 45248, - "alba": 25254, - "alban": 10882, - "albania": 29170, - "albanian": 47721, - "albans": 44119, - "albany": 17359, - "albat": 42797, - "albeit": 38984, - "alber": 6413, - "albert": 34174, - "albert": 9507, - "alberta": 11048, - "alberto": 22714, - "albi": 18512, - "albino": 48062, - "albion": 24071, - "albu": 2216, - "album": 40712, - "album": 2431, - "albums": 10705, - "albuquerque": 31079, - "alcat": 35361, - "alche": 37909, - "alchemist": 38913, - "alchemy": 39501, - "alco": 6848, - "alco": 45446, - "alcohol": 9426, - "alcoholic": 25098, - "ald": 4539, - "ald": 2928, - "alda": 46440, - "alde": 33114, - "alden": 17155, - "alden": 27710, - "aldenrichards": 20051, - "alder": 18220, - "alder": 46571, - "aldi": 23204, - "aldo": 9933, - "aldridge": 38084, - "alds": 14285, - "aldu": 6505, - "aldub": 10532, - "aldub": 15247, - "ale": 1440, - "ale": 1336, - "alea": 26518, - "aleague": 38909, - "alec": 29804, - "alec": 19954, - "alecoscino": 47948, - "aled": 4970, - "alee": 24515, - "alej": 23440, - "alejandro": 32950, - "alek": 26906, - "alek": 43310, - "aleksand": 48429, - "alem": 11825, - "aleppo": 19258, - "aler": 25674, - "aler": 27335, - "alert": 4662, - "alerts": 22144, - "ales": 44171, - "ales": 5962, - "aless": 21864, - "alessandro": 37344, - "alestine": 31945, - "alex": 2959, - "alex": 4134, - "alexa": 16273, - "alexand": 10696, - "alexander": 25527, - "alexander": 7563, - "alexandra": 19054, - "alexandre": 35711, - "alexandria": 21171, - "alexis": 35023, - "alexis": 14243, - "aley": 21635, - "alf": 27098, - "alfa": 23482, - "alfar": 38870, - "alfie": 28598, - "alfon": 31947, - "alfonso": 41784, - "alfre": 20982, - "alfred": 16553, - "alfredo": 32291, - "algae": 25654, - "algar": 36291, - "algarve": 40290, - "alge": 24336, - "algebra": 33694, - "alger": 18568, - "algeria": 25257, - "algon": 33007, - "algori": 14912, - "algorithm": 23295, - "algorithms": 26039, - "alham": 23352, - "alhamdulil": 35129, - "alhamdulillah": 38982, - "ali": 835, - "ali": 3558, - "alia": 2492, - "aliaa": 36468, - "alian": 3464, - "alias": 40026, - "alibaba": 39231, - "alic": 25265, - "alice": 23759, - "alice": 9192, - "alici": 31630, - "alicia": 20914, - "alie": 8697, - "alien": 22846, - "alien": 9639, - "aliens": 14883, - "alier": 39493, - "alies": 38086, - "alife": 41347, - "alife": 21100, - "alig": 21272, - "alight": 36157, - "align": 31160, - "aligned": 29292, - "alignment": 27267, - "alik": 31141, - "alike": 12665, - "alim": 42075, - "alin": 42746, - "alin": 40063, - "alina": 39529, - "aline": 21799, - "aling": 5169, - "alion": 19049, - "alis": 21308, - "alis": 20114, - "alisa": 38918, - "alisation": 42143, - "alise": 36718, - "alised": 25099, - "alism": 5607, - "alison": 28653, - "alison": 16970, - "alist": 44900, - "alist": 3320, - "alistair": 40551, - "alistic": 22302, - "alists": 5653, - "alit": 45566, - "alities": 27925, - "ality": 1694, - "alive": 40467, - "alive": 4716, - "aliz": 30979, - "alization": 8026, - "alize": 10268, - "alized": 6141, - "alizer": 38922, - "alizes": 26181, - "alizing": 13023, - "alk": 30246, - "alk": 21577, - "alkal": 33450, - "alkaline": 39210, - "all": 813, - "all": 615, - "alla": 13884, - "alla": 14000, - "allabout": 43996, - "allah": 6378, - "allan": 36552, - "allan": 15404, - "allblacks": 47728, - "allday": 35862, - "alle": 4870, - "alle": 29478, - "alled": 7379, - "alleg": 7456, - "allegations": 16992, - "alleged": 12133, - "allegedly": 14177, - "alleges": 45051, - "allegh": 41479, - "allegheny": 47851, - "allegi": 28832, - "allegiance": 30955, - "allen": 16712, - "allen": 6386, - "allenge": 31387, - "aller": 10116, - "aller": 30630, - "allergic": 28809, - "allergies": 28247, - "allergy": 24408, - "allery": 32542, - "alles": 43354, - "allevi": 31682, - "alleviate": 44799, - "alley": 36205, - "alley": 10329, - "allez": 49137, - "alli": 4123, - "alli": 15268, - "alliance": 45404, - "alliance": 8945, - "alliances": 48403, - "allianz": 45740, - "allie": 25040, - "allied": 20045, - "allies": 17277, - "alligator": 28574, - "allin": 45007, - "allin": 22395, - "alline": 48182, - "alling": 2992, - "allis": 45309, - "allison": 34602, - "allison": 16578, - "allman": 42611, - "allo": 8107, - "allo": 18389, - "allocated": 42716, - "allocation": 35139, - "allon": 46693, - "allot": 26363, - "allotment": 33750, - "allow": 5645, - "allow": 6722, - "allowance": 35696, - "allowed": 7885, - "allowing": 12458, - "allows": 9966, - "alloy": 22467, - "alls": 1997, - "allstar": 31247, - "allstar": 22974, - "allstars": 31198, - "allthe": 29253, - "allu": 20157, - "alluarjun": 39333, - "allure": 41814, - "ally": 7461, - "ally": 769, - "alm": 28303, - "alma": 32933, - "alma": 18337, - "alman": 29394, - "almanac": 41268, - "almighty": 21898, - "almond": 15646, - "almonds": 30468, - "almost": 47534, - "almost": 2671, - "aln": 47203, - "alo": 3435, - "alo": 6183, - "aloe": 30728, - "alog": 15813, - "alogue": 9101, - "aloha": 23160, - "aloils": 49002, - "alom": 22236, - "alon": 14097, - "alon": 42846, - "alone": 4702, - "along": 8300, - "along": 2528, - "alongside": 8646, - "alonso": 25704, - "aloo": 46187, - "alore": 14323, - "alot": 16945, - "alou": 43180, - "aloud": 30028, - "alove": 46669, - "alove": 37045, - "alp": 32020, - "alp": 39342, - "alpac": 30128, - "alpaca": 42561, - "alph": 6720, - "alpha": 11807, - "alpha": 8624, - "alphabe": 45796, - "alphabet": 22335, - "alphon": 37865, - "alpine": 17055, - "alps": 18191, - "already": 2426, - "alright": 10866, - "als": 23982, - "als": 938, - "alsace": 49388, - "also": 1446, - "alt": 9995, - "alt": 10006, - "alta": 24470, - "alta": 25378, - "altaf": 47342, - "altam": 45624, - "altar": 16385, - "alter": 4949, - "alter": 21393, - "altered": 25201, - "altern": 47463, - "alternate": 15926, - "alternati": 16699, - "alternative": 37327, - "alternative": 8248, - "alternatives": 25041, - "alth": 23463, - "alth": 5863, - "although": 9421, - "alti": 35531, - "alties": 17276, - "altitude": 23241, - "altman": 48100, - "alto": 35053, - "alto": 17518, - "altogether": 45689, - "alton": 41331, - "alton": 36550, - "altrin": 38458, - "altrincham": 44718, - "alty": 5546, - "alu": 4776, - "alu": 27991, - "alum": 5404, - "alum": 10553, - "alumin": 14563, - "alumini": 22908, - "aluminium": 23631, - "aluminum": 15251, - "alumna": 30313, - "alumni": 6646, - "alumnus": 23633, - "alums": 30155, - "alv": 20928, - "alvar": 25196, - "alvarez": 26924, - "alvaro": 41941, - "alves": 38547, - "alvin": 27023, - "alway": 14046, - "alway": 43764, - "always": 24997, - "always": 1466, - "alwx": 32768, - "aly": 6468, - "aly": 12910, - "alyn": 49150, - "alyss": 29490, - "alyssa": 18898, - "alz": 12936, - "alz": 41128, - "alzheim": 15212, - "alzheimer": 21151, - "alzheimers": 34592, - "am": 548, - "am": 687, - "ama": 18206, - "ama": 1696, - "amad": 45095, - "amade": 37366, - "amag": 32049, - "amal": 15315, - "amal": 36753, - "aman": 19890, - "aman": 10110, - "amand": 14560, - "amanda": 10036, - "amar": 6424, - "amar": 19607, - "amara": 48522, - "amari": 42565, - "amarillo": 40449, - "amarine": 45591, - "amarketing": 30788, - "amas": 22716, - "amas": 15667, - "amat": 38664, - "amat": 25455, - "amate": 12453, - "amateur": 14287, - "amaya": 47210, - "amaz": 1185, - "amaze": 24846, - "amazed": 18944, - "amazing": 15949, - "amazing": 1370, - "amazingly": 20368, - "amazon": 13630, - "amazon": 4140, - "amb": 9042, - "amb": 16853, - "amba": 27003, - "ambani": 45967, - "ambas": 5634, - "ambassad": 5758, - "ambassador": 6795, - "ambassadors": 16832, - "ambed": 42089, - "ambedkar": 48131, - "amber": 18292, - "amber": 9986, - "ambi": 11844, - "ambient": 23447, - "ambigu": 35702, - "ambition": 20673, - "ambitions": 34152, - "ambitious": 18666, - "ambro": 17585, - "ambrose": 24253, - "ambu": 34423, - "ambul": 13944, - "ambulance": 15555, - "ambush": 40725, - "amc": 24942, - "amc": 16921, - "amd": 20845, - "ame": 3995, - "ame": 780, - "amed": 5660, - "ameen": 24229, - "amel": 31988, - "amel": 10960, - "ameli": 21599, - "amelia": 21433, - "amell": 48198, - "amen": 18716, - "amen": 12335, - "amend": 12425, - "amendment": 15019, - "amendments": 40901, - "amenities": 30096, - "ament": 27528, - "amer": 17081, - "amer": 16147, - "ameri": 40422, - "americ": 1283, - "america": 2224, - "americafirst": 43216, - "american": 8746, - "american": 2151, - "americana": 26221, - "americanair": 42538, - "americani": 39726, - "americans": 6676, - "americas": 33343, - "americas": 18142, - "ames": 5469, - "ameter": 23393, - "amethy": 30291, - "amethyst": 31485, - "amex": 46390, - "amg": 21324, - "amher": 32311, - "amherst": 39065, - "ami": 6100, - "ami": 3065, - "amic": 25824, - "amic": 21383, - "amid": 18908, - "amid": 11953, - "amide": 30952, - "amidst": 25172, - "amie": 36901, - "amig": 40294, - "amiga": 35329, - "amigo": 44991, - "amigos": 28176, - "amii": 35462, - "amiibo": 38871, - "amily": 36732, - "amin": 14337, - "amin": 20235, - "amina": 47531, - "amination": 30355, - "amine": 35823, - "aming": 3507, - "amino": 33464, - "amir": 26029, - "amir": 21973, - "amis": 29829, - "amish": 24958, - "amit": 15083, - "amit": 25255, - "amitabh": 48124, - "amitshah": 32374, - "aml": 43185, - "amma": 29786, - "amman": 29243, - "ammo": 33474, - "ammunition": 35060, - "amn": 24073, - "amne": 14596, - "amnesia": 41741, - "amnesty": 46330, - "amnesty": 21177, - "amo": 4833, - "amo": 11156, - "amodi": 9826, - "amon": 17492, - "amon": 24046, - "among": 12310, - "among": 4265, - "amongst": 12520, - "amoo": 26977, - "amor": 19977, - "amor": 15973, - "amore": 38937, - "amore": 22691, - "amores": 36338, - "amos": 18133, - "amoto": 25492, - "amount": 6403, - "amounts": 16747, - "amour": 29908, - "amovie": 41062, - "amp": 3521, - "amp": 6259, - "amped": 22640, - "amphi": 16379, - "amphibious": 45206, - "amphitheater": 41285, - "amphitheatre": 44039, - "ample": 34162, - "amples": 14536, - "ampli": 15647, - "amplifier": 31743, - "amplify": 45308, - "amps": 19252, - "ampton": 29410, - "ampton": 9347, - "amr": 30916, - "amreading": 16546, - "amrit": 33849, - "ams": 1396, - "amster": 9110, - "amsterdam": 9441, - "amtrak": 27855, - "amu": 11347, - "amu": 32336, - "amur": 35014, - "amura": 35487, - "amus": 36269, - "amuse": 21421, - "amuse": 44367, - "amused": 30212, - "amusement": 32570, - "amusic": 20266, - "amusing": 31789, - "amwriting": 9660, - "amy": 10547, - "amy": 5187, - "an": 514, - "an": 550, - "ana": 6588, - "ana": 1388, - "anab": 34742, - "anada": 27948, - "anag": 12115, - "anagh": 40774, - "anaheim": 23728, - "anak": 34814, - "anak": 38658, - "anal": 2785, - "analo": 34179, - "analog": 19963, - "analogue": 46031, - "analy": 4611, - "analyse": 47246, - "analyses": 39695, - "analysis": 5296, - "analyst": 14198, - "analysts": 28075, - "analytical": 34550, - "analytics": 8558, - "analyze": 28519, - "analyzing": 32107, - "anam": 29525, - "anan": 37215, - "anand": 25073, - "anand": 22083, - "anap": 41566, - "anarch": 46405, - "anarchi": 39879, - "anarchy": 27707, - "anas": 31382, - "anas": 12633, - "anast": 48902, - "anasta": 22915, - "anastasi": 36534, - "anastasia": 37975, - "anat": 10045, - "anath": 31277, - "anatom": 33759, - "anatomy": 15376, - "anc": 1124, - "anc": 17758, - "anca": 14583, - "ance": 7165, - "ance": 884, - "anced": 5071, - "ancer": 17415, - "ancers": 37296, - "ances": 3515, - "ancestor": 43904, - "ancestors": 24405, - "ancestral": 41615, - "ancestry": 30922, - "anch": 9489, - "anche": 34679, - "ancho": 26610, - "anchor": 20030, - "anchor": 13201, - "anchorage": 31950, - "anchored": 45926, - "anchors": 37830, - "anci": 4192, - "ancient": 31495, - "ancient": 5810, - "ancies": 21647, - "ancing": 7797, - "anco": 15459, - "ancy": 16282, - "ancy": 3633, - "and": 672, - "and": 537, - "anda": 2911, - "andalu": 31443, - "andco": 36302, - "ande": 26889, - "ande": 30354, - "ander": 3740, - "ander": 3935, - "anders": 10880, - "andersen": 32661, - "anderson": 26683, - "anderson": 6510, - "andes": 24052, - "andfriends": 36871, - "andhi": 21617, - "andhra": 32452, - "andi": 28870, - "andi": 14354, - "andie": 46318, - "andme": 42831, - "ando": 35950, - "ando": 5986, - "andolan": 48965, - "andon": 36488, - "andor": 45243, - "andover": 44177, - "andr": 22661, - "andra": 46795, - "andra": 21730, - "andre": 2657, - "andre": 9400, - "andrea": 10895, - "andreas": 20444, - "andrei": 42137, - "andres": 25197, - "andretti": 44291, - "andrew": 11717, - "andrew": 4847, - "andrews": 14506, - "andri": 37208, - "andro": 4417, - "andro": 17980, - "android": 24284, - "android": 5191, - "androidgames": 46572, - "andromeda": 42942, - "andré": 35609, - "ands": 32257, - "andthe": 22111, - "andu": 44200, - "andum": 47266, - "andy": 9447, - "andy": 2888, - "ane": 5846, - "ane": 3051, - "anec": 33965, - "anem": 41395, - "anemone": 49019, - "aneous": 48273, - "anes": 15381, - "anese": 48778, - "anesthe": 30622, - "anesthesia": 43353, - "anew": 39084, - "anew": 47341, - "anews": 20919, - "aney": 22387, - "anfield": 26993, - "ang": 883, - "ang": 2704, - "anga": 11641, - "angames": 43178, - "angan": 28264, - "angas": 46180, - "ange": 2960, - "ange": 3039, - "angel": 5029, - "angel": 5130, - "angela": 12354, - "angeles": 7382, - "angeli": 15265, - "angelic": 41038, - "angelica": 38582, - "angelina": 28890, - "angelo": 14342, - "angelou": 41328, - "angels": 7809, - "anger": 32737, - "anger": 6788, - "angerous": 39716, - "angers": 29756, - "angh": 34030, - "angi": 28003, - "angi": 24301, - "angie": 18859, - "angle": 21749, - "angle": 6946, - "angled": 32322, - "angler": 22284, - "anglers": 41608, - "angles": 18627, - "anglesey": 31850, - "anglia": 32076, - "anglic": 28322, - "anglican": 33284, - "angling": 36824, - "anglo": 39515, - "anglo": 30408, - "ango": 19090, - "angola": 36636, - "angor": 41740, - "angp": 19992, - "angry": 33910, - "angry": 9054, - "angs": 18441, - "angst": 41714, - "angu": 11209, - "angular": 43584, - "angular": 24981, - "angularjs": 48608, - "angus": 19688, - "ani": 1326, - "ani": 3624, - "ania": 9866, - "anian": 9945, - "anians": 39393, - "anic": 23113, - "anie": 26697, - "anie": 7671, - "anil": 28589, - "anil": 34619, - "anim": 2190, - "animal": 10697, - "animal": 4668, - "animalrights": 42859, - "animals": 4995, - "animate": 40076, - "animated": 13360, - "animation": 10344, - "animations": 42870, - "animator": 42591, - "anime": 23314, - "anime": 6469, - "anin": 45735, - "aning": 30972, - "anir": 27089, - "anirud": 35278, - "anirudhofficial": 45917, - "anis": 40986, - "anis": 47556, - "anism": 20947, - "anist": 16729, - "anistan": 9727, - "aniston": 47344, - "anit": 23683, - "anita": 18544, - "anium": 14794, - "anj": 22443, - "anja": 43440, - "anjali": 38834, - "anjo": 47353, - "ank": 13339, - "ank": 10029, - "anka": 45324, - "ankara": 34309, - "ankle": 14777, - "ankles": 48688, - "ann": 850, - "ann": 5424, - "anna": 13821, - "anna": 2160, - "annab": 22336, - "annabelle": 47661, - "annah": 39166, - "annah": 14327, - "annak": 41720, - "annan": 32166, - "annapolis": 34491, - "annas": 48467, - "anne": 9139, - "anne": 4083, - "anned": 27352, - "anner": 12642, - "annes": 24343, - "annette": 36821, - "annex": 42958, - "annex": 46389, - "anni": 2438, - "anni": 13728, - "annie": 37270, - "annie": 12173, - "annies": 43184, - "annihil": 32734, - "annis": 24742, - "anniv": 31399, - "anniver": 29671, - "annivers": 42836, - "anniversaire": 30882, - "anniversary": 3048, - "anno": 9901, - "anno": 26871, - "annon": 26385, - "annot": 30411, - "announ": 1806, - "announce": 3682, - "announced": 4103, - "announcement": 6932, - "announcements": 23735, - "announcer": 33626, - "announces": 6500, - "announcing": 11593, - "annoy": 45138, - "annoyed": 29863, - "annoying": 15248, - "annu": 21698, - "annual": 2906, - "annually": 23703, - "anny": 34313, - "anny": 5291, - "ano": 5617, - "ano": 2658, - "anom": 21612, - "anomaly": 46811, - "anon": 47079, - "anon": 13667, - "anonym": 38605, - "anonymous": 15036, - "anoo": 25690, - "anor": 13243, - "anor": 16596, - "anos": 20132, - "another": 29274, - "another": 1380, - "anova": 24116, - "ans": 24586, - "ans": 885, - "ansari": 40748, - "ansel": 40356, - "answ": 3369, - "answe": 14391, - "answer": 4518, - "answered": 14499, - "answering": 18280, - "answers": 8692, - "ant": 1103, - "ant": 773, - "anta": 3023, - "antag": 41745, - "antal": 39355, - "antalya": 47440, - "antan": 32899, - "antarc": 21338, - "antarctic": 27077, - "antarctica": 22587, - "ante": 19311, - "ante": 9769, - "antebellum": 41683, - "antelope": 39177, - "anten": 35517, - "antenna": 26370, - "anter": 46508, - "antes": 14927, - "antgrasso": 39074, - "anth": 3737, - "anth": 29741, - "antha": 47981, - "anthe": 34167, - "anthem": 12504, - "anthi": 45261, - "anthology": 21009, - "anthony": 17477, - "anthony": 6113, - "anthro": 10019, - "anthropo": 18538, - "anthropology": 32407, - "anthus": 37639, - "anti": 3120, - "anti": 3564, - "antibio": 18954, - "antibiotic": 34387, - "antibiotics": 29499, - "antibody": 49018, - "antic": 8260, - "anticip": 11435, - "anticipate": 38280, - "anticipated": 18605, - "anticipating": 48067, - "anticipation": 26983, - "antics": 37126, - "antidote": 45476, - "antifa": 35926, - "antigua": 39910, - "antine": 17641, - "antino": 27818, - "antioxid": 23010, - "antioxidant": 37452, - "antioxidants": 34208, - "antiqu": 21745, - "antique": 46517, - "antique": 9060, - "antiques": 17365, - "antis": 19748, - "antisemitism": 36630, - "antit": 37833, - "antitrust": 49343, - "antlers": 47720, - "antly": 5265, - "anto": 16826, - "anto": 24486, - "antoine": 25188, - "anton": 5497, - "anton": 19644, - "antoni": 39958, - "antonio": 30497, - "antonio": 7842, - "antony": 30707, - "antrim": 40252, - "ants": 1589, - "antv": 47520, - "antw": 44460, - "antwer": 26970, - "antwerp": 33797, - "antz": 25684, - "anu": 8537, - "anu": 17152, - "anup": 29617, - "anus": 27084, - "anush": 22765, - "anushka": 42080, - "anushka": 39822, - "anushkasharma": 44203, - "anwar": 34261, - "anxi": 9021, - "anxiety": 11103, - "anxious": 27793, - "any": 1307, - "any": 1504, - "anya": 11173, - "anybody": 10071, - "anyi": 41632, - "anymore": 7372, - "anyone": 2302, - "anything": 3582, - "anytime": 13924, - "anyway": 8931, - "anyways": 19778, - "anywhere": 8863, - "anz": 14445, - "anz": 19425, - "anza": 14669, - "anzac": 31977, - "ao": 7313, - "ao": 5703, - "aoa": 47119, - "aoc": 31918, - "aofficial": 30840, - "aoki": 33602, - "aol": 40643, - "aon": 30928, - "aon": 48476, - "aor": 32044, - "aos": 46860, - "ap": 688, - "ap": 2728, - "apa": 36954, - "apa": 13537, - "apac": 34320, - "apache": 23921, - "apal": 38017, - "apan": 36562, - "apar": 9161, - "apark": 32528, - "apart": 6474, - "apart": 7803, - "aparthe": 25121, - "apartheid": 26597, - "apartment": 8285, - "apartments": 15791, - "aparty": 26767, - "apat": 31755, - "apathy": 18145, - "apc": 20300, - "apd": 44563, - "ape": 6098, - "ape": 2609, - "apec": 47530, - "aper": 13681, - "aper": 5858, - "apers": 15846, - "apes": 9550, - "apeu": 19040, - "apex": 41935, - "apex": 23712, - "aph": 16341, - "aph": 29491, - "apha": 47104, - "apho": 21758, - "aphra": 44147, - "api": 23342, - "api": 14674, - "apia": 44259, - "apic": 40679, - "aping": 18456, - "apink": 35725, - "apis": 37575, - "apk": 27648, - "apo": 4089, - "apo": 19758, - "apocaly": 13932, - "apocalypse": 17571, - "apocalyptic": 35675, - "apol": 5023, - "apolice": 45663, - "apolis": 9598, - "apollo": 48213, - "apollo": 11554, - "apolo": 31094, - "apolog": 25530, - "apologe": 42908, - "apologi": 14977, - "apologies": 21959, - "apologise": 39608, - "apologize": 22879, - "apologizes": 35298, - "apology": 20768, - "apor": 21871, - "apore": 6679, - "apost": 20309, - "apostle": 33051, - "apostles": 48457, - "app": 882, - "app": 2231, - "appa": 4884, - "appa": 13110, - "appalach": 30523, - "appalachian": 36806, - "appalling": 44797, - "appar": 26698, - "apparatus": 37716, - "apparel": 13972, - "apparent": 23963, - "apparently": 5287, - "appe": 3748, - "appe": 45949, - "appeal": 9625, - "appealing": 25909, - "appeals": 22447, - "appear": 5544, - "appear": 9308, - "appearance": 7238, - "appearances": 17214, - "appeared": 11561, - "appearing": 18759, - "appears": 8743, - "appell": 43833, - "appen": 37201, - "appen": 26589, - "apper": 18780, - "appet": 21686, - "appeti": 24179, - "appetite": 24481, - "appetizer": 36065, - "applau": 24713, - "applaud": 42152, - "applause": 22650, - "apple": 8629, - "apple": 3055, - "applemusic": 21390, - "apples": 14032, - "appleton": 45250, - "appli": 15495, - "appliance": 33677, - "appliances": 22134, - "applic": 4235, - "applicable": 37927, - "applicants": 28035, - "application": 7241, - "applications": 7341, - "applied": 12636, - "applies": 24910, - "apply": 4356, - "applying": 17965, - "appo": 5433, - "appoint": 36190, - "appointed": 11087, - "appointment": 10890, - "appointments": 23439, - "appoints": 25132, - "apprais": 36972, - "appraisal": 46108, - "appreci": 3474, - "appreciate": 6263, - "appreciated": 9264, - "appreciates": 36573, - "appreciating": 39352, - "appreciation": 9212, - "appreciationday": 37438, - "appreciative": 45074, - "appren": 10582, - "apprentic": 15662, - "apprentice": 19122, - "apprentice": 17985, - "apprentices": 38252, - "apprenticeship": 26939, - "apprenticeships": 35425, - "appro": 2398, - "approach": 7781, - "approach": 6241, - "approached": 36499, - "approaches": 14962, - "approaching": 12164, - "appropri": 8446, - "appropriate": 10768, - "appropriately": 30383, - "appropriation": 49110, - "approval": 13549, - "approve": 19064, - "approved": 9412, - "approves": 18107, - "approx": 18266, - "approxim": 14201, - "approximately": 16128, - "apps": 7020, - "appstore": 31377, - "appt": 48112, - "appy": 34420, - "apr": 39396, - "apr": 11177, - "apra": 37027, - "apric": 25923, - "apricot": 30815, - "april": 23548, - "april": 2484, - "apro": 42712, - "apro": 49051, - "apron": 29502, - "aps": 8868, - "apse": 31843, - "apt": 17921, - "aptly": 47313, - "apu": 22166, - "apur": 36900, - "apur": 45193, - "aq": 14018, - "aq": 26862, - "aqu": 4458, - "aqua": 18613, - "aquaculture": 41885, - "aquaman": 35098, - "aquari": 37605, - "aquarium": 16814, - "aquarius": 38879, - "aquatic": 22658, - "aque": 35927, - "aque": 37268, - "aqui": 36826, - "aquino": 33796, - "ar": 516, - "ar": 625, - "ara": 24161, - "ara": 3340, - "arab": 5405, - "arab": 12028, - "arabia": 11746, - "arabian": 24663, - "arabic": 16709, - "arabs": 39155, - "arac": 47620, - "arach": 37689, - "arag": 41502, - "araj": 45142, - "arak": 23416, - "aram": 19223, - "aram": 21473, - "arama": 49066, - "aran": 20839, - "aran": 19641, - "aras": 36399, - "arat": 30856, - "arav": 35836, - "arbit": 20267, - "arbitr": 22702, - "arbitration": 34845, - "arbor": 33516, - "arbor": 24878, - "arboretum": 41719, - "arc": 4997, - "arc": 11592, - "arca": 25189, - "arca": 37612, - "arcade": 13331, - "arcadia": 38372, - "arch": 2458, - "arch": 8557, - "archa": 45619, - "archae": 10121, - "archaeological": 26163, - "archaeologists": 45035, - "archaeology": 14868, - "archan": 33359, - "archbishop": 23994, - "arche": 22474, - "archer": 21824, - "archers": 38407, - "archery": 23935, - "arches": 30771, - "archi": 4479, - "archie": 20557, - "archipel": 39750, - "archipelago": 43025, - "architec": 3359, - "architect": 12192, - "architects": 13290, - "architectural": 15360, - "architecture": 39038, - "architecture": 4920, - "archival": 39249, - "archive": 42257, - "archive": 10548, - "archived": 42379, - "archives": 9411, - "archy": 15643, - "arctic": 29716, - "arctic": 9138, - "ard": 3793, - "ard": 746, - "arden": 44600, - "arden": 27057, - "ardi": 23932, - "ardi": 19837, - "ardo": 35735, - "ardo": 9394, - "ards": 1654, - "ardu": 20906, - "arduino": 25398, - "are": 1076, - "are": 631, - "area": 2445, - "areas": 5429, - "arec": 18136, - "areclipse": 36030, - "ared": 5369, - "arel": 12798, - "arella": 24784, - "arelli": 48619, - "aren": 4033, - "aren": 4318, - "arena": 5463, - "arenas": 47860, - "arent": 37487, - "arer": 14857, - "arers": 33159, - "ares": 12224, - "arest": 11708, - "aret": 22247, - "areth": 47725, - "aretha": 42090, - "areyou": 37607, - "arez": 13108, - "arg": 27285, - "argent": 7812, - "argentina": 9789, - "argentine": 32582, - "argon": 40737, - "argos": 37443, - "argu": 7440, - "arguably": 30899, - "argue": 19788, - "argued": 48153, - "argues": 30045, - "arguing": 26549, - "argument": 16224, - "arguments": 24693, - "argus": 44300, - "argy": 21066, - "argyle": 36179, - "argyll": 40667, - "ari": 1221, - "ari": 3681, - "aria": 8883, - "arial": 42431, - "arian": 29980, - "arian": 6953, - "ariana": 14892, - "arianag": 23025, - "arianagrande": 23321, - "arianism": 44351, - "arians": 19104, - "arias": 22567, - "arie": 18774, - "ariel": 47959, - "ariel": 21025, - "aries": 5213, - "arif": 46621, - "arily": 12993, - "arin": 29564, - "arin": 18612, - "arina": 29271, - "arine": 29586, - "aring": 2142, - "ario": 8862, - "arios": 25392, - "aris": 15227, - "arise": 26490, - "arist": 12110, - "aristo": 25666, - "aristotle": 49156, - "arities": 31069, - "arity": 16608, - "arium": 11809, - "arius": 21482, - "ariz": 6516, - "arized": 40167, - "arizon": 28936, - "arizona": 7106, - "arjun": 24565, - "arjun": 20477, - "arjuna": 43835, - "ark": 11921, - "ark": 12010, - "arkansas": 12227, - "arkham": 36381, - "arl": 48542, - "arlington": 44940, - "arlington": 17865, - "arly": 3637, - "arm": 5671, - "arm": 4793, - "arma": 15887, - "arma": 38716, - "armad": 37897, - "armada": 34938, - "armagh": 44313, - "armani": 31314, - "armb": 37096, - "armchair": 45757, - "armed": 40471, - "armed": 8202, - "armen": 13145, - "armenia": 22008, - "armenian": 24891, - "armies": 46686, - "armin": 45481, - "arming": 19766, - "armist": 38150, - "armistice": 46765, - "armor": 16167, - "armored": 28214, - "armory": 38610, - "armour": 18503, - "armoured": 42514, - "arms": 5706, - "armstrong": 15005, - "army": 13541, - "army": 3133, - "armys": 27311, - "arn": 9348, - "arn": 37597, - "arnau": 45556, - "arne": 43509, - "arney": 35962, - "arnold": 49096, - "arnold": 13609, - "arns": 46692, - "aro": 7514, - "aro": 11551, - "aroa": 48209, - "arom": 16831, - "aroma": 40143, - "aroma": 26390, - "aromas": 47439, - "aromatherapy": 42584, - "aromatic": 39669, - "aron": 30855, - "aron": 28926, - "aroo": 47581, - "arora": 31897, - "arosa": 44264, - "arose": 44262, - "around": 35615, - "around": 1630, - "arqu": 35654, - "arquitec": 41703, - "arr": 39106, - "arr": 42489, - "arra": 32918, - "arra": 43827, - "arrahman": 44554, - "arran": 45722, - "arrang": 16711, - "arrange": 15410, - "arrange": 26311, - "arranged": 22451, - "arrangement": 23822, - "arrangements": 23792, - "arranging": 35321, - "array": 17293, - "arre": 4374, - "arrell": 28846, - "arrest": 9320, - "arrested": 5845, - "arresting": 43930, - "arrests": 20683, - "arri": 2115, - "arrival": 9073, - "arrivals": 19583, - "arrive": 8851, - "arrived": 3514, - "arrives": 9905, - "arriving": 10884, - "arro": 15729, - "arrog": 26997, - "arrogance": 47025, - "arrogant": 40582, - "arrow": 30920, - "arrow": 11149, - "arrowhead": 46393, - "arrows": 24768, - "arroyo": 45237, - "ars": 42815, - "ars": 864, - "arse": 22665, - "arsen": 5330, - "arsenal": 45234, - "arsenal": 6084, - "arsene": 32117, - "arson": 29937, - "art": 1486, - "art": 794, - "arta": 12031, - "arte": 13482, - "arte": 12947, - "artem": 40387, - "artemis": 45256, - "arten": 37043, - "arter": 29449, - "artery": 40062, - "artes": 48629, - "artforsale": 48239, - "artgallery": 31982, - "arth": 7146, - "arth": 20265, - "arthistory": 39313, - "arthr": 20807, - "arthritis": 22916, - "arthro": 43255, - "arthur": 35660, - "arthur": 8550, - "arti": 1635, - "arti": 34601, - "artic": 3003, - "articho": 30937, - "artichoke": 39647, - "article": 3550, - "articles": 11939, - "articul": 40343, - "articulate": 45444, - "artif": 8950, - "artifact": 37718, - "artifacts": 30249, - "artificial": 19357, - "artificial": 12040, - "artificialintelligence": 20799, - "artillery": 24465, - "artin": 33168, - "artin": 48540, - "artis": 41794, - "artisan": 36389, - "artisan": 21535, - "artisans": 40140, - "artist": 14326, - "artist": 2456, - "artiste": 41402, - "artistic": 12421, - "artiston": 48443, - "artistry": 38570, - "artists": 4899, - "artistson": 32127, - "artistsontwitter": 39469, - "artlovers": 35617, - "arto": 28464, - "artof": 31751, - "artoftheday": 43990, - "arton": 46744, - "arts": 22040, - "arts": 3812, - "artsy": 31588, - "arturo": 38591, - "artwit": 36713, - "artwork": 4188, - "artworks": 26215, - "arty": 45417, - "arty": 25916, - "aru": 13757, - "aru": 23907, - "aruba": 40131, - "arugula": 40770, - "arum": 48732, - "arun": 16105, - "arun": 31877, - "arunach": 47260, - "arunjaitley": 44874, - "arus": 22644, - "arvin": 16971, - "arvind": 21209, - "arvind": 41079, - "arvindkejriwal": 22971, - "arvo": 45726, - "arwx": 29824, - "ary": 4617, - "ary": 856, - "arya": 23594, - "aryan": 34966, - "as": 587, - "as": 601, - "asa": 39676, - "asa": 11914, - "asad": 42376, - "asaki": 22455, - "asam": 40603, - "asan": 22379, - "asan": 17841, - "asana": 42363, - "asant": 25536, - "asants": 37766, - "asap": 24199, - "asap": 10822, - "asar": 24733, - "asar": 49299, - "asb": 31186, - "asbe": 32113, - "asbestos": 33765, - "asc": 22720, - "asc": 23305, - "ascen": 20767, - "ascension": 35499, - "ascent": 36625, - "asci": 12753, - "asco": 25578, - "asco": 17488, - "ascot": 23723, - "ascri": 15506, - "asd": 36988, - "asda": 29391, - "asdf": 36857, - "asdfghj": 42758, - "asdfghjkl": 47660, - "ase": 8083, - "ase": 894, - "asean": 24472, - "aseball": 46903, - "ased": 2134, - "asen": 41085, - "aser": 39615, - "aser": 7209, - "ases": 3762, - "asf": 25863, - "asg": 34813, - "ash": 2067, - "ash": 2612, - "asha": 40572, - "asha": 13472, - "ashamed": 20633, - "ashby": 46531, - "ashe": 48523, - "ashe": 31752, - "asher": 37585, - "ashes": 12587, - "asheville": 28897, - "ashford": 37796, - "ashi": 15563, - "ashi": 15934, - "ashish": 33145, - "ashland": 39938, - "ashleigh": 49356, - "ashley": 17825, - "ashley": 8957, - "asho": 20273, - "ashok": 38141, - "ashore": 31194, - "ashram": 43445, - "ashton": 43264, - "ashton": 12228, - "ashtra": 18118, - "asi": 3596, - "asi": 12562, - "asia": 5741, - "asian": 21737, - "asian": 7128, - "asiangames": 49108, - "asians": 36771, - "asics": 31097, - "aside": 13676, - "asif": 37302, - "asim": 46050, - "asin": 48432, - "asin": 44347, - "asing": 4194, - "asingly": 15803, - "asion": 31753, - "asis": 12398, - "ask": 11027, - "ask": 2765, - "asked": 3993, - "asking": 5914, - "asks": 7953, - "asl": 41650, - "asleep": 10749, - "asley": 28206, - "asli": 44290, - "asm": 13851, - "asma": 38497, - "asmsg": 19839, - "aso": 30343, - "aso": 27932, - "asober": 43749, - "asocial": 48557, - "ason": 1163, - "asone": 31249, - "asons": 4249, - "asos": 37924, - "asot": 47968, - "asp": 17814, - "asp": 36666, - "asparag": 20301, - "asparagus": 20604, - "aspe": 10894, - "aspect": 19681, - "aspects": 18203, - "aspen": 35695, - "aspen": 25712, - "asper": 32991, - "asph": 28019, - "asphalt": 30574, - "aspir": 12669, - "aspirations": 36127, - "aspire": 24836, - "aspiring": 21862, - "asports": 43695, - "asr": 48052, - "asroma": 41000, - "ass": 12664, - "ass": 5301, - "assa": 47715, - "assad": 18699, - "assam": 19930, - "assan": 26352, - "assange": 27565, - "assas": 9603, - "assassin": 14366, - "assassin": 20029, - "assassinated": 40488, - "assassination": 24907, - "assassins": 34918, - "assassinscre": 36428, - "assassinscreed": 46082, - "assau": 7908, - "assaul": 19596, - "assault": 9679, - "assaulted": 30785, - "assaulting": 44143, - "asse": 3166, - "asse": 38600, - "assel": 37582, - "assemb": 5531, - "assemble": 26169, - "assembled": 22627, - "assemblies": 47406, - "assembling": 38670, - "assembly": 34542, - "assembly": 7059, - "assen": 38651, - "asser": 25665, - "asses": 21596, - "assess": 9209, - "assess": 23211, - "assessed": 44160, - "assessing": 31364, - "assessment": 10590, - "assessments": 32753, - "asset": 48463, - "asset": 13039, - "assets": 13170, - "assi": 2907, - "assi": 39540, - "assie": 31624, - "assign": 14190, - "assigned": 25767, - "assignment": 17342, - "assignments": 34257, - "assim": 36394, - "assimil": 43467, - "assist": 26558, - "assist": 10286, - "assistance": 11685, - "assistant": 6799, - "assistants": 31054, - "assisted": 18095, - "assisting": 24243, - "assists": 12675, - "assn": 44208, - "asso": 17617, - "assoc": 18891, - "associ": 3566, - "associate": 11777, - "associated": 11164, - "associates": 17358, - "association": 5578, - "associations": 33209, - "assor": 38604, - "assorted": 36701, - "assortment": 43112, - "asst": 24767, - "assu": 8328, - "assume": 19294, - "assumed": 37661, - "assuming": 29422, - "assump": 41182, - "assumption": 40773, - "assumptions": 45948, - "assurance": 28408, - "assure": 39161, - "assured": 25591, - "assures": 41988, - "assy": 29940, - "assy": 12963, - "ast": 1761, - "ast": 1242, - "asta": 43269, - "aste": 25033, - "aste": 25579, - "aster": 11013, - "aster": 9526, - "asteroid": 32253, - "asters": 33139, - "asth": 16684, - "asthma": 24610, - "asthour": 41238, - "astic": 15876, - "asting": 29984, - "astle": 46141, - "asto": 47275, - "aston": 24760, - "aston": 13879, - "astoni": 21962, - "astonishing": 27110, - "astonmartin": 40760, - "astor": 26391, - "astor": 47086, - "astoria": 34798, - "astounding": 37748, - "astr": 37609, - "astra": 47205, - "astra": 36079, - "astral": 45889, - "astri": 31243, - "astrid": 46499, - "astro": 8563, - "astro": 15318, - "astrology": 28526, - "astron": 7982, - "astronaut": 18376, - "astronauts": 29733, - "astronom": 23264, - "astronomer": 40036, - "astronomers": 44268, - "astronomical": 39775, - "astronomy": 17472, - "astrophotography": 38559, - "astros": 17598, - "asts": 10452, - "astu": 43137, - "astur": 45795, - "asu": 13157, - "asu": 16001, - "asun": 36044, - "asure": 3813, - "asus": 27269, - "aswell": 42978, - "asx": 38906, - "asy": 8524, - "asy": 2333, - "asylum": 15638, - "asym": 32539, - "at": 527, - "at": 536, - "ata": 4236, - "atable": 23909, - "atal": 24877, - "atal": 24797, - "atan": 33446, - "atar": 20128, - "atar": 7995, - "atari": 21549, - "atas": 30057, - "atay": 39518, - "atc": 28383, - "atch": 15938, - "atd": 33890, - "ate": 992, - "ate": 671, - "ateam": 42784, - "ateau": 16359, - "atec": 37352, - "atech": 31306, - "ated": 14589, - "ated": 943, - "atedly": 24698, - "atee": 32839, - "ateful": 5419, - "atelier": 29932, - "ately": 3862, - "atem": 17116, - "aten": 47984, - "atene": 30405, - "ateneo": 33904, - "ater": 18597, - "ater": 5877, - "ateral": 18819, - "aters": 22364, - "ates": 20370, - "ates": 1150, - "atest": 1705, - "ateur": 43677, - "atf": 28013, - "ath": 1374, - "ath": 1649, - "atha": 22530, - "atham": 23383, - "athan": 41260, - "athan": 26701, - "athe": 8963, - "athed": 47402, - "atheism": 25823, - "atheist": 22571, - "atheists": 47155, - "athen": 29112, - "athena": 30705, - "athens": 13524, - "ather": 6171, - "ather": 1817, - "athered": 34091, - "athers": 17266, - "athi": 28918, - "athing": 36069, - "athle": 3310, - "athlete": 7388, - "athletes": 7125, - "athletic": 33182, - "athletic": 9028, - "athletics": 7019, - "athlon": 14670, - "athome": 38217, - "athon": 4951, - "aths": 28835, - "athy": 34488, - "athy": 13183, - "ati": 591, - "ati": 6751, - "atia": 10908, - "atic": 20248, - "atic": 2647, - "atically": 13558, - "atics": 15666, - "atie": 30137, - "aties": 40060, - "atif": 41592, - "atiku": 37912, - "atile": 15474, - "atility": 23373, - "atime": 20158, - "atin": 36903, - "atin": 23047, - "atine": 39741, - "ating": 25653, - "ating": 1074, - "atio": 35401, - "ation": 2265, - "ation": 656, - "ational": 14205, - "ational": 3108, - "ationals": 44593, - "ationday": 20082, - "ations": 986, - "atis": 45456, - "atis": 41142, - "atism": 45638, - "ative": 18422, - "ative": 1648, - "atively": 11929, - "atives": 5629, - "ativity": 25166, - "atkins": 27734, - "atkinson": 28908, - "atl": 5411, - "atl": 10629, - "atla": 36043, - "atlan": 6818, - "atlanta": 39964, - "atlanta": 6839, - "atlantic": 28804, - "atlantic": 8189, - "atlantis": 27790, - "atlas": 15775, - "atle": 21170, - "atleast": 33231, - "atleti": 46067, - "atletico": 27501, - "atm": 14127, - "atmo": 8271, - "atmosphere": 10506, - "atmospheric": 24223, - "ato": 7987, - "ato": 4364, - "atoday": 26799, - "atom": 22418, - "atom": 24031, - "atomic": 18996, - "atoms": 41434, - "aton": 31525, - "aton": 10012, - "atop": 17455, - "ator": 10748, - "ator": 1962, - "atore": 28314, - "atorial": 32040, - "atories": 35678, - "atorium": 41306, - "ators": 3389, - "atory": 5920, - "atos": 41643, - "atour": 42967, - "atown": 24000, - "atp": 38105, - "atp": 19817, - "atr": 43247, - "atra": 20227, - "atra": 14401, - "atravel": 36981, - "atre": 46057, - "atri": 13882, - "atri": 38889, - "atric": 32238, - "atric": 13652, - "atrics": 36253, - "atrist": 41879, - "atrium": 29725, - "atrix": 43003, - "atro": 18724, - "atroc": 36197, - "atrocities": 37551, - "atry": 28334, - "ats": 46890, - "ats": 1032, - "atsu": 26531, - "att": 1017, - "att": 7103, - "atta": 7282, - "atta": 9146, - "attach": 43676, - "attach": 35653, - "attached": 11038, - "attachment": 28638, - "attack": 24971, - "attack": 3815, - "attacked": 12366, - "attacker": 39288, - "attackers": 47701, - "attacking": 16813, - "attacks": 7321, - "attain": 46459, - "attar": 37110, - "attemp": 4933, - "attempt": 7409, - "attempted": 17408, - "attempting": 18195, - "attempts": 15610, - "atten": 4084, - "atten": 32408, - "attenborough": 45860, - "attend": 9841, - "attend": 5802, - "attendance": 11928, - "attendant": 35424, - "attended": 8140, - "attendees": 14648, - "attending": 6696, - "attends": 22248, - "attention": 4936, - "atters": 30675, - "atthe": 21489, - "atti": 49265, - "atti": 16235, - "attic": 26766, - "attire": 21222, - "attitude": 10648, - "attitudes": 27611, - "attle": 14685, - "attle": 5030, - "attn": 25677, - "attor": 8856, - "attorney": 10372, - "attorneys": 29113, - "attrac": 7154, - "attract": 17010, - "attracted": 28493, - "attracting": 31909, - "attraction": 16807, - "attractions": 22307, - "attractive": 12231, - "attracts": 31024, - "attribu": 24624, - "attributed": 37520, - "attributes": 40763, - "attu": 43173, - "atty": 36705, - "atu": 15191, - "atu": 24295, - "atuesday": 34841, - "atul": 1744, - "atul": 43948, - "atum": 48295, - "atur": 14986, - "aturday": 29027, - "ature": 25305, - "ature": 4490, - "atures": 7358, - "atus": 14795, - "atv": 19598, - "atwood": 45680, - "atwork": 39680, - "atx": 34849, - "atx": 20136, - "aty": 40974, - "aty": 33107, - "atz": 30432, - "au": 627, - "au": 2566, - "aua": 45906, - "aub": 45938, - "auberg": 49382, - "aubre": 25899, - "aubrey": 34110, - "auburn": 42269, - "auburn": 14534, - "auc": 24489, - "auch": 43024, - "auck": 14588, - "auckland": 16072, - "auction": 48160, - "auction": 6462, - "auctioned": 41073, - "auctions": 24876, - "aucus": 47374, - "aud": 16107, - "aud": 19711, - "audi": 5091, - "audi": 10277, - "audible": 33227, - "audience": 6863, - "audiences": 22328, - "audio": 13792, - "audio": 5766, - "audiobook": 26282, - "audit": 12505, - "audit": 17625, - "auditi": 37377, - "audition": 18673, - "auditions": 21134, - "auditor": 38050, - "auditorium": 15063, - "audre": 16075, - "audrey": 18812, - "audu": 27934, - "audubon": 40275, - "auer": 33460, - "auf": 28924, - "aug": 15397, - "aug": 5720, - "auga": 22797, - "augh": 28310, - "augh": 14005, - "augmente": 48356, - "augmented": 32708, - "augu": 2610, - "august": 24353, - "august": 3171, - "augusta": 26144, - "augustine": 27397, - "augustus": 36835, - "auk": 19058, - "aul": 20695, - "aul": 34391, - "ault": 47253, - "ault": 10219, - "aun": 10608, - "aun": 38721, - "aunt": 12685, - "auntie": 23783, - "aunty": 29528, - "aur": 8156, - "aur": 17282, - "aura": 27728, - "aure": 36010, - "aureli": 35980, - "auror": 30067, - "aurora": 13500, - "aus": 10624, - "aus": 7630, - "ausa": 37384, - "ausbiz": 46543, - "ausch": 33926, - "auschwitz": 36523, - "ausopen": 27831, - "ausp": 35039, - "auspicious": 38806, - "auspol": 8241, - "aussi": 19762, - "aussie": 40230, - "aussie": 14424, - "aussies": 35727, - "aust": 26301, - "aust": 25418, - "austen": 29885, - "auster": 25030, - "austerity": 26982, - "austin": 12845, - "austin": 5125, - "austinmahone": 34678, - "austr": 2518, - "australi": 13798, - "australia": 3444, - "australian": 23630, - "australian": 6258, - "australians": 31488, - "austri": 8946, - "austria": 11960, - "austrian": 20638, - "ausv": 35206, - "ausvotes": 34661, - "aut": 12343, - "auth": 2381, - "auth": 38247, - "authent": 18158, - "authentic": 41266, - "authentic": 10369, - "authentication": 39746, - "authenticity": 35734, - "autho": 34552, - "author": 14447, - "author": 4358, - "authored": 37928, - "authori": 19207, - "authorities": 12729, - "authority": 10524, - "authorization": 48854, - "authorized": 28463, - "authors": 10765, - "auti": 8200, - "autism": 36256, - "autism": 11244, - "autisma": 43324, - "autistic": 29360, - "auto": 3917, - "auto": 5668, - "autobiography": 31509, - "autodesk": 40415, - "autograph": 10657, - "autograph": 13722, - "autographed": 16309, - "autographs": 17376, - "autoimmune": 45509, - "autom": 4114, - "automate": 43203, - "automated": 19022, - "automatic": 12126, - "automatically": 20725, - "automation": 12328, - "automobi": 44813, - "automobile": 25258, - "automotive": 12607, - "auton": 13100, - "autonews": 43975, - "autonom": 17870, - "autonomous": 20722, - "autonomy": 39223, - "autopsy": 44436, - "autos": 31118, - "autoshow": 46788, - "auts": 21140, - "autu": 5445, - "autum": 31783, - "autumn": 28940, - "autumn": 6110, - "autumnal": 35481, - "aux": 18154, - "aux": 8909, - "auxiliary": 37778, - "av": 722, - "av": 8484, - "ava": 12385, - "avage": 31505, - "avail": 1651, - "avail": 16686, - "availability": 17551, - "available": 1685, - "aval": 18012, - "avalan": 23970, - "avalanche": 25815, - "avalley": 45082, - "avalon": 30436, - "avan": 27971, - "avan": 33351, - "avant": 24305, - "avar": 33423, - "avatar": 18219, - "ave": 10062, - "ave": 4860, - "avec": 25828, - "aved": 47918, - "avel": 46817, - "avel": 48088, - "aven": 5963, - "aven": 32971, - "aveng": 21935, - "avenger": 24799, - "avengers": 39413, - "avengers": 12016, - "avengersendgame": 49342, - "avent": 22700, - "avenue": 7042, - "aver": 8788, - "aver": 11403, - "average": 6254, - "averaged": 37310, - "averages": 48982, - "averaging": 35266, - "avery": 20313, - "aves": 14023, - "avfc": 21304, - "avg": 19452, - "avgeek": 11114, - "avi": 3324, - "avi": 11297, - "avia": 38710, - "avian": 24115, - "aviation": 27717, - "aviation": 7617, - "aviator": 38921, - "aviators": 48011, - "avici": 46192, - "avicii": 49158, - "avid": 19118, - "avier": 14598, - "avila": 45339, - "aville": 40689, - "avin": 46204, - "avis": 45163, - "avis": 19765, - "aviv": 22130, - "aviva": 47122, - "aviz": 27607, - "avl": 44749, - "avo": 4496, - "avo": 32400, - "avoc": 12291, - "avocado": 14135, - "avocados": 48911, - "avoi": 16797, - "avoid": 30448, - "avoid": 5983, - "avoidance": 47983, - "avoided": 32103, - "avoiding": 22086, - "avoids": 48220, - "avon": 22790, - "avon": 17348, - "avril": 37763, - "avs": 31896, - "avut": 44472, - "avy": 29973, - "aw": 808, - "aw": 5557, - "awa": 4820, - "awa": 6872, - "await": 20769, - "awaited": 20092, - "awaiting": 14872, - "awaits": 15635, - "awak": 9776, - "awak": 41387, - "awake": 14695, - "awaken": 35412, - "awakening": 17017, - "awakens": 23191, - "awal": 42447, - "awal": 35090, - "awan": 48869, - "awan": 20420, - "awar": 5745, - "award": 36310, - "award": 2047, - "awarded": 7368, - "awarding": 37089, - "awards": 34528, - "awards": 2320, - "aware": 4427, - "aware": 7196, - "awareness": 19217, - "awareness": 4823, - "awarenessmonth": 34278, - "awarenessweek": 35294, - "away": 21088, - "away": 1520, - "aways": 12782, - "awaz": 18586, - "awd": 34846, - "awe": 1693, - "awe": 14106, - "aweather": 42142, - "aweather": 28681, - "awec": 38916, - "aweed": 29724, - "awesom": 16727, - "awesome": 30390, - "awesome": 1848, - "awesomeness": 22430, - "awful": 13617, - "awg": 46350, - "awgs": 35275, - "awh": 39566, - "awhile": 19171, - "awi": 15167, - "awil": 47271, - "awilliams": 42163, - "awk": 8888, - "awk": 40943, - "awkward": 42337, - "awkward": 10304, - "awn": 46222, - "awp": 43300, - "aws": 19658, - "awsome": 47196, - "awson": 36286, - "aww": 11568, - "awww": 15634, - "awwww": 26460, - "awx": 28385, - "ax": 3165, - "ax": 9203, - "axe": 19861, - "axel": 47889, - "axel": 32131, - "axes": 45970, - "axi": 30672, - "axial": 46550, - "axis": 19614, - "axle": 39003, - "axx": 47411, - "ay": 658, - "ay": 551, - "aya": 5917, - "ayala": 39827, - "ayama": 41194, - "ayan": 37781, - "ayan": 16269, - "ayana": 37400, - "ayas": 40904, - "ayat": 44902, - "ayat": 35720, - "aye": 21661, - "aye": 12446, - "ayer": 24852, - "ayers": 42783, - "ayesha": 46570, - "ayi": 33025, - "ayles": 44706, - "ayne": 35669, - "ayo": 21929, - "ayo": 18708, - "ayr": 23002, - "ayr": 36473, - "ayrshire": 32687, - "ays": 785, - "ayu": 40769, - "ayurve": 27185, - "ayurveda": 38986, - "ayush": 44831, - "ayy": 32514, - "ayyy": 41052, - "az": 854, - "az": 5468, - "aza": 22883, - "azad": 37838, - "azalea": 34087, - "azam": 34727, - "azar": 27911, - "azcardinals": 48846, - "aze": 41157, - "aze": 28485, - "azer": 19169, - "azerbai": 20649, - "azerbaijan": 23888, - "azhar": 47019, - "azi": 23914, - "azi": 18452, - "azine": 29140, - "azione": 48335, - "aziz": 41205, - "aziz": 29630, - "azo": 41227, - "azon": 36854, - "azores": 42826, - "azte": 33270, - "aztec": 34749, - "aztecs": 49387, - "azu": 27701, - "azu": 46963, - "azul": 39807, - "azure": 18514, - "azwx": 30262, - "azy": 24783, - "azz": 9817, - "azz": 26453, - "azza": 22255, - "azzi": 18758, - "azzle": 39974, - "azzo": 26779, - "azzur": 37055, - "azzy": 44534, - "añ": 23716, - "años": 41634, - "b": 65, - "b": 321, - "ba": 932, - "ba": 1792, - "baa": 33004, - "baahu": 34145, - "baahubali": 38663, - "bab": 1202, - "bab": 19039, - "baba": 12631, - "babe": 31177, - "babe": 7716, - "babes": 14253, - "babies": 6635, - "babs": 36217, - "babu": 21623, - "baby": 7268, - "baby": 1794, - "babygirl": 39554, - "babylon": 31928, - "babymetal": 45013, - "babys": 22266, - "babysitting": 34186, - "bac": 2791, - "bac": 25867, - "bacca": 40708, - "bach": 11773, - "bach": 8758, - "bachchan": 17690, - "bachel": 11283, - "bachelor": 45508, - "bachelor": 16766, - "bachelore": 26009, - "bachelorette": 29093, - "bacher": 49211, - "back": 1663, - "back": 893, - "backbone": 35635, - "backdrop": 20802, - "backed": 12721, - "backer": 22183, - "backers": 32934, - "background": 5994, - "backgrounds": 28215, - "backing": 14935, - "backlash": 31519, - "backpack": 14894, - "backpacking": 29524, - "backpacks": 37063, - "backs": 7562, - "backseat": 48812, - "backstage": 9236, - "backstreet": 46337, - "backthe": 26127, - "backto": 18703, - "backtoschool": 28730, - "backtothe": 43059, - "backup": 14415, - "backward": 37964, - "backwards": 21283, - "backyard": 12608, - "bacon": 48666, - "bacon": 7104, - "bacter": 11814, - "bacteria": 16556, - "bacterial": 26101, - "bad": 2564, - "bad": 2103, - "bada": 37475, - "badan": 39149, - "badass": 11616, - "baddest": 38112, - "baden": 36690, - "bader": 42254, - "badge": 11301, - "badger": 32686, - "badger": 22363, - "badgers": 22521, - "badges": 20084, - "badlands": 43192, - "badly": 13684, - "badminton": 21412, - "badoo": 33192, - "bados": 25755, - "bae": 32834, - "bae": 6855, - "baek": 18557, - "baek": 32702, - "baekhyun": 21572, - "baes": 46332, - "baf": 13616, - "baff": 35693, - "bafta": 29199, - "bag": 3408, - "bag": 3365, - "bage": 9698, - "bagel": 28777, - "bagels": 37489, - "baggage": 31402, - "bagged": 34047, - "bagh": 21659, - "bagh": 37271, - "baghdad": 30763, - "bago": 25105, - "bags": 6136, - "bagu": 27749, - "baguette": 45334, - "bah": 8372, - "bah": 16685, - "baha": 29592, - "baham": 43718, - "bahamas": 21224, - "bahan": 28704, - "bahn": 33452, - "bahrain": 12503, - "bai": 6232, - "bai": 23339, - "bail": 22933, - "bail": 16986, - "bailey": 27535, - "bailey": 10180, - "bain": 40784, - "bain": 21593, - "bair": 29059, - "baird": 40474, - "bait": 18010, - "baj": 20713, - "baja": 40418, - "baja": 28374, - "bajo": 32619, - "bak": 4059, - "bak": 23742, - "bakar": 41414, - "bake": 20736, - "bake": 11878, - "baked": 10364, - "baker": 27303, - "baker": 7743, - "bakers": 35293, - "bakers": 40231, - "bakersfield": 40149, - "bakery": 13377, - "bakes": 43057, - "bakhta": 44912, - "bakhtawar": 46937, - "bakhtawarbz": 47118, - "baking": 11467, - "baku": 46417, - "baku": 31852, - "bal": 1398, - "bal": 2282, - "bala": 20291, - "balaji": 48694, - "balance": 42894, - "balance": 6827, - "balanced": 15273, - "balances": 37733, - "balancing": 23541, - "balboa": 45098, - "balcony": 16169, - "bald": 11153, - "bald": 14875, - "baldhead": 29191, - "baldwin": 16242, - "bale": 48573, - "bale": 18873, - "bales": 42879, - "bali": 16432, - "bali": 10900, - "balkan": 48499, - "balkans": 42987, - "ball": 3807, - "ball": 1069, - "balla": 42246, - "ballad": 33472, - "ballarat": 46645, - "ballard": 31750, - "baller": 49194, - "baller": 25655, - "ballerina": 34962, - "ballers": 34173, - "ballet": 10703, - "balli": 29406, - "ballin": 47444, - "ballin": 33057, - "balling": 47588, - "ballis": 46675, - "ballistic": 36667, - "ballo": 8871, - "ballon": 36469, - "balloon": 13634, - "balloons": 18130, - "ballot": 14185, - "ballots": 35051, - "ballpark": 26080, - "ballroom": 15493, - "balls": 6927, - "bally": 17275, - "bally": 29451, - "balm": 24962, - "balmain": 45929, - "balo": 12395, - "baloch": 23173, - "balochistan": 21918, - "balot": 44615, - "balotelli": 45721, - "bals": 44154, - "balsam": 29121, - "balsamic": 32654, - "balt": 24441, - "balti": 8400, - "baltic": 23817, - "baltimore": 38502, - "baltimore": 9582, - "balu": 38093, - "bam": 6383, - "bam": 12686, - "bama": 20021, - "bambam": 34538, - "bambi": 46596, - "bamboo": 49322, - "bamboo": 16748, - "ban": 1159, - "ban": 2777, - "bana": 18428, - "banan": 38410, - "banana": 8922, - "bananas": 19121, - "banc": 39252, - "band": 4613, - "band": 1963, - "banda": 31865, - "bandai": 42054, - "bandana": 39265, - "bandcamp": 32229, - "banded": 37804, - "bandic": 44400, - "bandit": 27639, - "bandits": 33940, - "bandra": 41393, - "bands": 7858, - "bandung": 29512, - "bandwagon": 36432, - "bandwidth": 48859, - "bane": 9597, - "banerjee": 48102, - "banff": 29565, - "bang": 3524, - "bang": 6907, - "bangalore": 14697, - "banger": 24872, - "bangers": 38311, - "banging": 33033, - "bangkok": 12351, - "bangla": 10339, - "bangla": 45928, - "bangladesh": 11245, - "bangle": 37634, - "bangor": 31190, - "bangs": 27992, - "bangtan": 39131, - "bani": 19732, - "banjo": 27014, - "bank": 7061, - "bank": 2723, - "banker": 27316, - "bankers": 30599, - "bankholiday": 48868, - "banking": 9566, - "bankno": 49201, - "bankof": 39120, - "bankrup": 21904, - "bankrupt": 23077, - "bankrupt": 37288, - "bankruptcy": 23978, - "banks": 6367, - "banksy": 33350, - "bann": 5304, - "banned": 12012, - "banner": 9185, - "banners": 23145, - "banning": 26246, - "bannon": 29710, - "bano": 42947, - "banquet": 14254, - "bans": 15146, - "bant": 23301, - "bant": 46657, - "banter": 25535, - "bao": 39487, - "bao": 20408, - "bap": 7415, - "bap": 23754, - "bapti": 15477, - "baptism": 36765, - "baptist": 13274, - "baptiste": 45770, - "baptized": 45400, - "bar": 1040, - "bar": 2411, - "bara": 19345, - "barack": 18670, - "barack": 22481, - "barackobama": 18885, - "barak": 47419, - "barak": 16260, - "barang": 38446, - "barb": 24173, - "barb": 20913, - "barbados": 26992, - "barbar": 7906, - "barbara": 10937, - "barbarian": 42530, - "barbe": 18372, - "barbecue": 23501, - "barber": 19517, - "barber": 12296, - "barbershop": 37707, - "barbican": 47668, - "barbie": 16923, - "barca": 22942, - "barcel": 6134, - "barcelon": 47820, - "barcelona": 6412, - "barclay": 48877, - "barclay": 45276, - "barclays": 29538, - "bard": 39812, - "bard": 17514, - "bare": 16023, - "bare": 14318, - "barefoot": 30327, - "barely": 12684, - "bargain": 15076, - "bargaining": 41282, - "bargains": 34126, - "barge": 28272, - "bari": 21428, - "bari": 28016, - "barista": 31078, - "barit": 46300, - "bark": 32333, - "bark": 16560, - "barker": 20618, - "barking": 32676, - "barkley": 30266, - "barley": 22607, - "barlow": 25483, - "barn": 10490, - "barn": 10942, - "barnab": 43272, - "barnard": 44332, - "barne": 42527, - "barnes": 13102, - "barnet": 41943, - "barnett": 27650, - "barney": 24563, - "barns": 43759, - "barnsley": 37109, - "barnsley": 32153, - "baro": 17422, - "baro": 30817, - "baron": 48371, - "baron": 19349, - "baroness": 45056, - "barons": 45596, - "baroque": 25065, - "barr": 39473, - "barr": 22492, - "barra": 28442, - "barra": 33542, - "barrabest": 41376, - "barrac": 40835, - "barracks": 35822, - "barre": 13840, - "barre": 38257, - "barred": 33261, - "barrel": 11703, - "barrels": 22059, - "barren": 46743, - "barrett": 18701, - "barri": 8660, - "barric": 29189, - "barrie": 27090, - "barrier": 15706, - "barriers": 16321, - "barrington": 48954, - "barron": 34881, - "barrow": 42568, - "barrow": 24983, - "barry": 18028, - "barry": 8461, - "barrymore": 49310, - "bars": 8616, - "barstool": 44826, - "bart": 14838, - "bart": 12870, - "bartender": 33498, - "barthol": 48989, - "bartlett": 37130, - "bartol": 38209, - "barton": 48853, - "barton": 20345, - "baru": 16356, - "barun": 38278, - "barunsob": 41398, - "barça": 32788, - "bas": 1244, - "bas": 11420, - "basa": 26142, - "base": 2776, - "base": 4579, - "baseball": 23479, - "baseball": 3470, - "based": 35196, - "based": 2812, - "basel": 42803, - "basel": 20903, - "baseline": 40648, - "baseman": 45910, - "basement": 14792, - "bases": 20496, - "bash": 20462, - "bash": 10972, - "bashing": 37545, - "bashir": 42799, - "basic": 40452, - "basic": 7696, - "basically": 9125, - "basics": 15825, - "basil": 19225, - "basil": 14936, - "basilica": 27879, - "basin": 16117, - "basing": 47321, - "basis": 12278, - "baske": 3713, - "basket": 10338, - "basketball": 40023, - "basketball": 3835, - "baskets": 27787, - "basking": 39769, - "basque": 37175, - "bass": 22831, - "bass": 5992, - "bassett": 45992, - "bassist": 26496, - "bast": 28092, - "basti": 8559, - "bastille": 41874, - "bat": 2121, - "bat": 6575, - "bata": 39277, - "batb": 33962, - "batch": 9413, - "bate": 25034, - "bate": 28277, - "bateman": 41635, - "bates": 21727, - "batgirl": 46460, - "bath": 6064, - "bath": 5713, - "bathing": 20144, - "bathro": 21201, - "bathroom": 8470, - "bathrooms": 26434, - "baths": 19442, - "bathtub": 39942, - "bathurst": 36365, - "bati": 23362, - "bati": 37589, - "batman": 27811, - "batman": 7223, - "baton": 24331, - "bats": 14984, - "batsman": 35432, - "batt": 2407, - "batt": 48595, - "battalion": 20820, - "batter": 12654, - "batter": 31855, - "battered": 34375, - "batteries": 16666, - "battersea": 35839, - "battery": 7870, - "batting": 17401, - "battle": 7344, - "battle": 3528, - "battled": 37837, - "battlefield": 16055, - "battlefront": 42214, - "battleof": 47560, - "battles": 14213, - "battleship": 35165, - "battling": 17268, - "bau": 6055, - "bau": 34840, - "bauer": 22903, - "baugh": 41301, - "baum": 19840, - "bautista": 31881, - "bav": 21075, - "bavaria": 39977, - "bavarian": 44458, - "baw": 19808, - "bax": 21216, - "baxter": 26168, - "bay": 3631, - "bay": 2174, - "baya": 31573, - "bayan": 43895, - "bayarea": 28260, - "bayer": 48548, - "bayer": 29183, - "bayern": 14666, - "baylor": 21721, - "bayou": 33955, - "bays": 40156, - "baz": 10430, - "baz": 25268, - "bazaar": 20070, - "bazar": 49298, - "bb": 1174, - "bb": 3529, - "bba": 27762, - "bball": 15664, - "bbb": 33535, - "bbc": 5123, - "bbc": 5188, - "bbcc": 39052, - "bbce": 33818, - "bbcnews": 29370, - "bbcone": 28259, - "bbcqt": 37343, - "bbcr": 35802, - "bbcra": 17115, - "bbcradi": 49213, - "bbcradio": 22876, - "bbcsport": 49321, - "bbcspringwatch": 37358, - "bbctwo": 40395, - "bbcworld": 47340, - "bbe": 37559, - "bbed": 9077, - "bber": 7933, - "bbers": 36494, - "bbhutto": 28085, - "bbhuttozardari": 28135, - "bbi": 37047, - "bbin": 38553, - "bbing": 9787, - "bbins": 42504, - "bbl": 21961, - "bble": 26570, - "bble": 5924, - "bbled": 37626, - "bbles": 18093, - "bblo": 21231, - "bbloggers": 26614, - "bbly": 43031, - "bbm": 25382, - "bbmas": 22145, - "bbn": 28427, - "bbnaija": 20984, - "bbo": 21892, - "bbq": 41270, - "bbq": 6726, - "bbs": 10002, - "bbuk": 45978, - "bby": 11166, - "bby": 3810, - "bc": 3116, - "bc": 2162, - "bcc": 41509, - "bcci": 36138, - "bce": 36510, - "bcfc": 34359, - "bch": 36684, - "bcn": 25766, - "bcoz": 46373, - "bcpoli": 24389, - "bcs": 24909, - "bcu": 28299, - "bd": 24358, - "bd": 11165, - "bday": 33022, - "bday": 5781, - "bdg": 48418, - "bds": 26732, - "be": 571, - "be": 655, - "bea": 21886, - "bea": 20925, - "beach": 6068, - "beach": 2117, - "beaches": 12183, - "beachlife": 43824, - "beacon": 36883, - "beacon": 18858, - "beacons": 39395, - "bead": 31621, - "bead": 23557, - "beaded": 26661, - "beads": 14099, - "beagle": 30044, - "beak": 36498, - "beal": 45769, - "beale": 39717, - "beam": 35339, - "beam": 13663, - "beams": 23993, - "bean": 16471, - "bean": 5328, - "beanie": 21534, - "beans": 8302, - "bear": 6375, - "bear": 4298, - "bearable": 38608, - "bearcats": 33242, - "beard": 26157, - "beard": 9052, - "bearded": 28459, - "beardown": 43687, - "beards": 33020, - "bearer": 30686, - "bearers": 47986, - "bearing": 18370, - "bearings": 42083, - "bearish": 34829, - "bears": 6182, - "beasley": 43349, - "beast": 20847, - "beast": 6957, - "beastmode": 43076, - "beasts": 21771, - "beat": 3774, - "beat": 3018, - "beaten": 10864, - "beater": 41974, - "beati": 44386, - "beating": 10078, - "beatles": 11961, - "beatport": 31421, - "beatrice": 36922, - "beats": 6289, - "beatthe": 40550, - "beatty": 39903, - "beatz": 33363, - "beau": 1016, - "beau": 14298, - "beaufort": 45423, - "beaumont": 32857, - "beaut": 24559, - "beauti": 1154, - "beauties": 14874, - "beautiful": 13662, - "beautiful": 1215, - "beautifully": 10627, - "beauty": 12881, - "beauty": 2488, - "beav": 23260, - "beaver": 26432, - "beaver": 22874, - "beavers": 34513, - "beavs": 43909, - "bebe": 23331, - "bec": 6899, - "bec": 10773, - "became": 5464, - "because": 32714, - "because": 1631, - "becca": 27088, - "bech": 44055, - "beck": 8256, - "beck": 10396, - "becker": 26918, - "beckett": 27249, - "beckham": 18764, - "becky": 32406, - "becky": 18921, - "become": 2989, - "becomes": 6766, - "becoming": 6208, - "bed": 4152, - "bed": 2722, - "bedding": 31761, - "bedford": 20779, - "bedi": 39181, - "bedro": 18415, - "bedroom": 8411, - "bedrooms": 23996, - "beds": 13914, - "bedside": 47473, - "bedtime": 22115, - "bee": 6097, - "bee": 5028, - "beech": 32733, - "beech": 27596, - "beef": 21703, - "beef": 6529, - "beek": 37915, - "been": 33986, - "been": 1025, - "beep": 33432, - "beer": 8885, - "beer": 2544, - "beers": 10907, - "bees": 36249, - "bees": 9100, - "beet": 12582, - "beet": 28621, - "beethoven": 23656, - "beetle": 16534, - "beetles": 36317, - "beetro": 29251, - "beetroot": 31638, - "beets": 36087, - "before": 20898, - "before": 1348, - "beg": 2219, - "beg": 22401, - "began": 8636, - "begg": 36769, - "begging": 25371, - "begin": 19197, - "begin": 4947, - "beginner": 24351, - "beginners": 21930, - "beginning": 5791, - "beginnings": 22581, - "begins": 4635, - "begs": 43531, - "begun": 10514, - "beh": 21971, - "beh": 41612, - "beha": 5737, - "behalf": 11470, - "behave": 28825, - "behaved": 41617, - "behavi": 6149, - "behaving": 40745, - "behavior": 10461, - "behavioral": 25135, - "behaviors": 37741, - "behaviour": 14655, - "behavioural": 46019, - "behe": 42329, - "behin": 2335, - "behind": 2403, - "behindthe": 21104, - "behindthescenes": 26253, - "behold": 15929, - "bei": 38991, - "bei": 23227, - "beige": 26677, - "beij": 11547, - "beijing": 11796, - "bein": 39117, - "bein": 24168, - "being": 13481, - "being": 1265, - "beings": 17998, - "beingsalmankhan": 19637, - "beir": 20176, - "beirut": 22352, - "beit": 26963, - "bek": 46846, - "bek": 26135, - "bekind": 46691, - "bel": 1308, - "bel": 3543, - "bela": 30555, - "belarus": 30849, - "belated": 20256, - "belfast": 35100, - "belfast": 10015, - "belgi": 7001, - "belgian": 15008, - "belgium": 10239, - "belgrade": 30502, - "beli": 1859, - "beli": 45842, - "belichick": 46132, - "belie": 20854, - "beliebers": 27714, - "belief": 14802, - "beliefs": 20575, - "believ": 4972, - "believe": 15819, - "believe": 2649, - "believed": 13380, - "believein": 24294, - "believeinfilm": 37375, - "believer": 26057, - "believers": 28434, - "believes": 12017, - "believing": 19551, - "belinda": 44415, - "belize": 27990, - "bell": 5417, - "bell": 3718, - "bella": 18282, - "bella": 10418, - "bellamy": 34461, - "bellator": 31985, - "belle": 13587, - "belle": 11496, - "belles": 40678, - "bellevue": 32715, - "belli": 43335, - "bellletstalk": 42695, - "bello": 21954, - "bells": 12811, - "bellum": 35493, - "belly": 25901, - "belly": 10404, - "belmont": 25612, - "belo": 8379, - "belo": 41649, - "belong": 16453, - "belong": 13596, - "belonged": 39893, - "belonging": 28193, - "belongs": 14395, - "beloved": 9363, - "below": 3788, - "bels": 43127, - "belt": 36416, - "belt": 7373, - "belts": 21888, - "belvedere": 48003, - "ben": 1465, - "ben": 3518, - "bena": 46249, - "bench": 17770, - "bench": 8771, - "benches": 36349, - "benchmark": 31775, - "bend": 22100, - "bend": 13332, - "bender": 22551, - "bendigo": 48197, - "bending": 33897, - "bene": 12091, - "bene": 47151, - "beneath": 16850, - "bened": 13216, - "benedic": 24402, - "benedict": 47896, - "benedict": 18027, - "benef": 3260, - "benefici": 38593, - "beneficial": 24660, - "beneficiaries": 42160, - "benefit": 6399, - "benefited": 48266, - "benefiting": 29474, - "benefits": 5465, - "benefitting": 47222, - "benevol": 47060, - "benfica": 33873, - "beng": 6962, - "bengal": 17404, - "bengal": 16374, - "bengali": 33774, - "bengals": 23737, - "bengaluru": 21707, - "benghazi": 25967, - "benin": 40296, - "benitez": 46711, - "benjam": 10550, - "benjamin": 38647, - "benjamin": 12131, - "benji": 43548, - "benn": 39097, - "bennet": 48536, - "bennett": 12186, - "benny": 42369, - "benny": 20595, - "beno": 35268, - "benoit": 44373, - "benson": 19578, - "bent": 9809, - "bent": 18369, - "bentley": 16859, - "benton": 30812, - "benz": 27937, - "benz": 13470, - "ber": 867, - "ber": 1516, - "bera": 32802, - "bere": 17458, - "bered": 9193, - "beren": 33654, - "beret": 41658, - "berg": 12022, - "berg": 3294, - "bergen": 22918, - "berger": 35933, - "berger": 13873, - "bergh": 35120, - "bergman": 42597, - "bergs": 43592, - "berk": 15633, - "berke": 14639, - "berkeley": 46049, - "berkeley": 16667, - "berkshire": 27300, - "berlin": 23532, - "berlin": 5891, - "berman": 21514, - "bermu": 21032, - "bermuda": 24644, - "bern": 9195, - "bern": 18382, - "bernade": 46242, - "bernar": 11962, - "bernard": 14579, - "bernardino": 35328, - "bernardo": 27137, - "bernardo": 28696, - "bernardokath": 29081, - "bernat": 40578, - "berni": 18798, - "bernie": 40093, - "bernie": 10503, - "berniesanders": 23745, - "bernstein": 33936, - "berra": 15089, - "berries": 8319, - "berry": 15334, - "berry": 3488, - "bers": 6408, - "berser": 39037, - "bert": 17340, - "bert": 2358, - "berta": 45187, - "berth": 28317, - "bertie": 47182, - "berto": 34073, - "bertr": 36962, - "bertrand": 41594, - "berts": 30205, - "berty": 35973, - "berwick": 40407, - "bery": 11411, - "bes": 26911, - "bes": 3635, - "beside": 13519, - "besides": 17596, - "bespoke": 15612, - "bess": 43791, - "best": 3419, - "best": 949, - "bestbuy": 29749, - "bestest": 31199, - "bestfan": 23880, - "bestfanarmy": 24590, - "bestfriend": 29832, - "bestfriend": 11856, - "bestfriends": 23555, - "besti": 35210, - "bestie": 17188, - "besties": 27346, - "besto": 28615, - "bestof": 27892, - "bestof": 39533, - "bestseller": 25841, - "bestselling": 28632, - "bet": 1051, - "bet": 4430, - "beta": 43188, - "beta": 9505, - "betes": 10255, - "beth": 9993, - "beth": 4892, - "bethan": 18781, - "bethany": 39130, - "bethany": 27952, - "bethe": 12624, - "bethel": 33410, - "bethesda": 32527, - "bethle": 30760, - "bethlehem": 31827, - "betis": 45590, - "beto": 33721, - "betra": 18436, - "betrayal": 33171, - "betrayed": 35692, - "bets": 17107, - "betsy": 28946, - "bett": 17715, - "bett": 20489, - "betta": 36387, - "bette": 35855, - "better": 10320, - "better": 1539, - "bettertogether": 47392, - "betting": 14319, - "betts": 38637, - "betty": 36175, - "betty": 14350, - "between": 1957, - "beu": 38660, - "bev": 40324, - "bev": 30968, - "bever": 9924, - "beverage": 18694, - "beverages": 28521, - "beverley": 39165, - "beverly": 30906, - "beverly": 16728, - "beverlyhills": 45363, - "beware": 14532, - "bewithyou": 36787, - "bex": 18676, - "bex": 24748, - "bexhill": 49200, - "bey": 3234, - "bey": 6767, - "beyon": 11447, - "beyonce": 16632, - "beyoncé": 19219, - "beyond": 22246, - "beyond": 4432, - "bez": 28592, - "bez": 46764, - "bezos": 45000, - "bf": 19858, - "bf": 7990, - "bfc": 37183, - "bff": 11984, - "bffs": 31462, - "bfi": 34244, - "bg": 16674, - "bg": 11295, - "bgc": 47598, - "bgs": 47963, - "bgt": 40665, - "bh": 9930, - "bh": 13603, - "bha": 6144, - "bha": 33068, - "bhafc": 30779, - "bhagat": 49136, - "bhai": 48370, - "bhai": 20508, - "bhak": 34501, - "bham": 31874, - "bham": 23491, - "bhan": 27356, - "bhand": 48679, - "bhar": 9108, - "bharat": 27454, - "bharat": 17430, - "bharti": 46803, - "bhat": 23784, - "bhatt": 36143, - "bhav": 44950, - "bhi": 28943, - "bhi": 21955, - "bhk": 45070, - "bhm": 38741, - "bho": 19721, - "bhopal": 44573, - "bhp": 29776, - "bhs": 29195, - "bhu": 9172, - "bhuban": 38729, - "bhubanes": 41213, - "bhubaneswar": 45888, - "bhushan": 40884, - "bhutan": 32391, - "bhutto": 30153, - "bi": 717, - "bi": 3035, - "bia": 3841, - "biaf": 26961, - "biafra": 36355, - "bian": 19531, - "bian": 9027, - "bianca": 25854, - "bianchi": 45720, - "bians": 28141, - "bias": 11268, - "biased": 22178, - "bib": 44607, - "bib": 21022, - "bibi": 31182, - "bibl": 20912, - "bible": 26738, - "bible": 7583, - "bibli": 23465, - "biblical": 22841, - "biblio": 49131, - "bic": 5960, - "bic": 10675, - "bice": 35589, - "biceps": 46735, - "bick": 27238, - "bicy": 9247, - "bicycle": 11652, - "bicycles": 31326, - "bid": 21035, - "bid": 5553, - "bidding": 23237, - "bide": 45178, - "biden": 19451, - "bids": 16148, - "bie": 5561, - "bie": 4173, - "bieber": 48725, - "bieber": 7535, - "bien": 19176, - "bien": 25742, - "biennale": 33776, - "biennial": 36609, - "bier": 27226, - "bier": 23508, - "bies": 7867, - "big": 1915, - "big": 1205, - "bigbaldhead": 30325, - "bigbang": 41680, - "bigbang": 23734, - "bigdata": 9440, - "bige": 37762, - "bigfoot": 37095, - "bigg": 15312, - "bigg": 35399, - "biggboss": 27056, - "bigger": 6806, - "biggest": 19483, - "biggest": 3505, - "biggie": 28392, - "biggs": 46507, - "bigh": 18106, - "bighit": 35508, - "bigo": 14278, - "bigolive": 20735, - "bigotry": 37269, - "bigre": 36330, - "bih": 33471, - "bihar": 22849, - "bij": 42478, - "bik": 30306, - "bike": 11686, - "bike": 3701, - "biker": 36100, - "biker": 23449, - "bikers": 29468, - "bikes": 9227, - "bikin": 12638, - "biking": 19157, - "bikini": 14531, - "bil": 3092, - "bil": 20506, - "bilateral": 25599, - "bilbao": 34802, - "bild": 35512, - "bile": 25943, - "bilingual": 29623, - "bilities": 13582, - "bility": 4694, - "bill": 4444, - "bill": 2886, - "billboard": 10856, - "billboards": 34741, - "billed": 37558, - "billi": 7693, - "billie": 23990, - "billing": 31797, - "billings": 43615, - "billion": 14520, - "billion": 5729, - "billionaire": 19475, - "billionaires": 41590, - "billions": 20742, - "bills": 9810, - "billsmafia": 48845, - "billy": 15626, - "billy": 6814, - "bilt": 44770, - "bilt": 26654, - "bim": 46737, - "bim": 24775, - "bin": 4849, - "bin": 5346, - "binance": 43520, - "binary": 23497, - "bind": 44513, - "binder": 30541, - "binding": 21287, - "bine": 34848, - "bing": 24818, - "bing": 5665, - "binge": 22600, - "bingham": 43785, - "bingham": 47296, - "bingo": 18418, - "bino": 29172, - "bino": 24313, - "bins": 26934, - "bint": 43647, - "bio": 2830, - "bio": 5162, - "biode": 43502, - "biodegradable": 47740, - "biodiversity": 17428, - "biof": 45158, - "biographical": 49232, - "biography": 15423, - "biological": 18821, - "biologist": 35149, - "biology": 9796, - "biom": 13010, - "biomar": 44549, - "biomass": 36746, - "biome": 26218, - "biomed": 29280, - "biomedical": 33117, - "bionic": 46201, - "biop": 15009, - "biopic": 27942, - "bios": 48505, - "biotech": 22514, - "biotechnology": 40375, - "biotic": 33773, - "biotics": 41371, - "bious": 31845, - "bipartisan": 32266, - "bipolar": 37097, - "bique": 27809, - "bir": 921, - "bir": 16284, - "birch": 31569, - "birch": 22907, - "bird": 6908, - "bird": 3329, - "birdie": 29612, - "birdies": 45618, - "birding": 15851, - "birdman": 41915, - "birdphotography": 47999, - "birds": 41951, - "birds": 4337, - "birdwatching": 33497, - "birk": 48289, - "birken": 40661, - "birmin": 37482, - "birmingham": 38580, - "birmingham": 7720, - "birth": 1128, - "birth": 5397, - "birthday": 7381, - "birthday": 1166, - "birthdays": 17954, - "birthplace": 31429, - "biryani": 46489, - "bis": 5064, - "bis": 14461, - "biscu": 11532, - "biscuit": 18731, - "biscuits": 18248, - "bisexual": 36829, - "bish": 33690, - "bish": 31461, - "bishop": 20625, - "bishop": 8024, - "bishops": 31579, - "bison": 19741, - "bistro": 21770, - "bit": 3010, - "bit": 2010, - "bitcoin": 30848, - "bitcoin": 6366, - "bite": 41613, - "biting": 23016, - "bits": 7747, - "bitt": 39251, - "bius": 45525, - "bix": 46579, - "biz": 8212, - "biz": 5431, - "biza": 47013, - "bizar": 14886, - "bizarre": 16965, - "bizhour": 39462, - "bizitalk": 34929, - "bj": 4592, - "bj": 18229, - "bjj": 27437, - "bjor": 26525, - "bjp": 37264, - "bjp": 6178, - "bk": 15099, - "bk": 14083, - "bkk": 36433, - "bl": 833, - "bl": 9467, - "bla": 2205, - "bla": 19630, - "blac": 21008, - "black": 2025, - "black": 1449, - "blackand": 12809, - "blackandwhite": 23688, - "blackandwhite": 19506, - "blackandwhitephotography": 27544, - "blackberry": 16470, - "blackbird": 38526, - "blackburn": 23789, - "blackfish": 42193, - "blackfriday": 16445, - "blackgirl": 43591, - "blackhawks": 19203, - "blackhistory": 46982, - "blackhistorymonth": 20135, - "blacklist": 30295, - "blacklivesmatter": 23467, - "blackmail": 47295, - "blackops": 43519, - "blackout": 21733, - "blackpanther": 36592, - "blackpink": 20339, - "blackpool": 21031, - "blacks": 16351, - "blackwell": 42642, - "blad": 36635, - "bladder": 33593, - "blade": 10264, - "blades": 16893, - "blah": 29212, - "blaine": 32457, - "blair": 31824, - "blair": 14749, - "blake": 20229, - "blake": 9579, - "blame": 10695, - "blamed": 32906, - "blames": 27841, - "blaming": 29287, - "blan": 4609, - "blanc": 30936, - "blanc": 13301, - "blanca": 40670, - "blanchard": 40177, - "blanche": 34875, - "blanchett": 49378, - "blanco": 26801, - "bland": 44372, - "bland": 30799, - "blank": 15134, - "blanket": 12878, - "blankets": 24042, - "blanks": 48599, - "blasio": 35553, - "blasphe": 36622, - "blast": 46349, - "blast": 5964, - "blasted": 38976, - "blaster": 36341, - "blasting": 26178, - "blasts": 23067, - "blat": 22048, - "blatant": 41391, - "blatt": 39138, - "blau": 45307, - "blaz": 43413, - "blaze": 15497, - "blazer": 17606, - "blazers": 16984, - "blazing": 25267, - "bldg": 22981, - "ble": 1447, - "ble": 1059, - "bleach": 27034, - "bleak": 40355, - "bled": 12006, - "bleed": 23027, - "bleed": 24791, - "bleedblue": 39160, - "bleeding": 20311, - "bleeds": 47339, - "blen": 25651, - "blend": 10780, - "blended": 25813, - "blender": 25066, - "blending": 34307, - "blends": 28572, - "bler": 31305, - "bler": 11979, - "blers": 26930, - "bles": 5763, - "bless": 9640, - "bless": 5387, - "blessed": 4411, - "blessing": 10729, - "blessings": 11185, - "bleu": 30114, - "blew": 18176, - "bley": 43176, - "bli": 1450, - "bli": 28051, - "blin": 9678, - "blin": 5406, - "blind": 17248, - "blind": 8351, - "blinded": 49149, - "blindness": 38812, - "blinds": 32449, - "bling": 39764, - "bling": 7097, - "blink": 18976, - "bliss": 28531, - "bliss": 12893, - "blissful": 42145, - "blit": 39327, - "blitz": 42151, - "blitz": 17548, - "blizz": 13075, - "blizzard": 16111, - "blk": 42950, - "blk": 22872, - "blm": 30957, - "bln": 47348, - "blo": 1204, - "blo": 25505, - "blob": 49312, - "bloc": 30961, - "block": 4638, - "block": 4593, - "blockade": 33489, - "blockbuster": 19939, - "blockchain": 6653, - "blocked": 9106, - "blocker": 44767, - "blocking": 12652, - "blocks": 10113, - "blog": 16376, - "blog": 2589, - "blogg": 33282, - "blogged": 41380, - "blogger": 21352, - "blogger": 7806, - "bloggerrt": 48898, - "bloggers": 11627, - "blogging": 18090, - "blogpost": 41842, - "blogs": 16682, - "bloke": 24384, - "blom": 48996, - "blon": 7958, - "blond": 32426, - "blonde": 10711, - "blondes": 45130, - "blondie": 39236, - "bloo": 2373, - "blood": 9231, - "blood": 3590, - "blooded": 41946, - "bloodh": 48480, - "bloods": 39539, - "bloody": 38568, - "bloody": 9468, - "bloom": 7311, - "bloom": 10257, - "bloomberg": 43109, - "bloomberg": 21238, - "bloomfield": 40342, - "blooming": 45175, - "blooming": 19266, - "bloomington": 34731, - "blooms": 21439, - "bloss": 10017, - "blossom": 14472, - "blossoms": 21916, - "blot": 41710, - "blou": 44506, - "blouse": 23525, - "blow": 15230, - "blow": 10211, - "blower": 25832, - "blowing": 12087, - "blown": 11848, - "blowout": 34857, - "blows": 21063, - "blr": 47250, - "bls": 39458, - "blu": 1263, - "blu": 10273, - "blue": 3829, - "blue": 1746, - "bluebells": 47150, - "blueberries": 29551, - "blueberry": 18251, - "bluebird": 40747, - "bluec": 43194, - "bluef": 41174, - "bluegrass": 26241, - "bluejays": 18684, - "blueprint": 30594, - "blues": 17566, - "blues": 5159, - "blueslyrix": 47068, - "bluet": 13469, - "bluetooth": 14052, - "bluewave": 40025, - "bluff": 27232, - "bluffs": 48844, - "blum": 34818, - "blumen": 38714, - "blun": 34472, - "blunt": 19305, - "blur": 12102, - "blur": 27976, - "bluray": 36818, - "blurred": 38013, - "blurry": 21977, - "blush": 22889, - "blvd": 12578, - "bly": 20930, - "bly": 4426, - "bm": 4773, - "bm": 15916, - "bma": 42573, - "bmc": 27807, - "bmi": 40642, - "bmo": 39083, - "bms": 34074, - "bmw": 26637, - "bmw": 7869, - "bmx": 22535, - "bn": 10496, - "bn": 7992, - "bnb": 20010, - "bnha": 49336, - "bnp": 47910, - "bnw": 35903, - "bo": 647, - "bo": 2525, - "boa": 14732, - "boar": 7837, - "boar": 35473, - "board": 10419, - "board": 1972, - "boarded": 43052, - "boarder": 37414, - "boardgame": 47829, - "boardgames": 32646, - "boarding": 10086, - "boardroom": 47937, - "boards": 7963, - "boardwalk": 29043, - "boast": 44467, - "boasts": 30309, - "boat": 12426, - "boat": 4440, - "boath": 45461, - "boating": 21951, - "boats": 10080, - "boatsales": 46244, - "bob": 8444, - "bob": 4423, - "boba": 39948, - "bobb": 16891, - "bobble": 38796, - "bobblehead": 33451, - "bobby": 17847, - "bobby": 7816, - "bobc": 26153, - "bobcat": 37896, - "bobcats": 27568, - "bobo": 38939, - "bobs": 45533, - "boc": 27307, - "boc": 39042, - "boca": 26094, - "bock": 24961, - "bod": 17904, - "bod": 26340, - "boda": 42030, - "bode": 28452, - "bode": 40429, - "bodega": 47350, - "bodied": 36892, - "bodies": 9799, - "bodily": 49119, - "body": 7132, - "body": 1774, - "bodybuilding": 24538, - "bodyguard": 35565, - "boe": 23476, - "boe": 21773, - "boeh": 38002, - "boehner": 44599, - "boeing": 48135, - "boeing": 11857, - "boer": 44889, - "boer": 40768, - "bog": 23426, - "bog": 28318, - "bogo": 35769, - "bogota": 47059, - "bogus": 42907, - "boh": 43238, - "bohe": 40541, - "bohemi": 21552, - "bohemian": 25753, - "boho": 25444, - "boi": 37129, - "boi": 12673, - "boil": 31332, - "boiled": 23886, - "boiler": 28212, - "boiler": 25615, - "boiling": 32019, - "bois": 47742, - "bois": 21640, - "boise": 23304, - "bok": 26671, - "bok": 15289, - "boko": 30929, - "boks": 40216, - "bol": 2860, - "bol": 8413, - "bola": 12840, - "bold": 26975, - "bold": 8911, - "boldand": 48413, - "boldly": 44778, - "boli": 12722, - "bolic": 27343, - "bolivia": 28628, - "bollah": 36336, - "bolly": 25302, - "bollywood": 32448, - "bollywood": 9604, - "bolo": 40236, - "bolog": 22818, - "bologna": 27513, - "bolster": 47304, - "bolt": 13131, - "bolton": 48757, - "bolton": 16598, - "bolts": 26028, - "bom": 3012, - "bom": 19469, - "bomb": 18091, - "bomb": 6331, - "bombar": 25544, - "bombardier": 42700, - "bombay": 48602, - "bombay": 23890, - "bombed": 24542, - "bomber": 15436, - "bombers": 21786, - "bombing": 14475, - "bombings": 43236, - "bombs": 14410, - "bombshell": 36340, - "bon": 1871, - "bon": 4216, - "bona": 33342, - "bonanza": 40304, - "bond": 37022, - "bond": 6826, - "bonded": 37390, - "bondi": 40092, - "bonding": 19609, - "bonds": 15786, - "bone": 22502, - "bone": 6195, - "bones": 9476, - "bonfire": 23151, - "bongo": 47519, - "boni": 32269, - "boni": 46356, - "bonita": 42896, - "bonjour": 33176, - "bonkers": 39865, - "bonn": 38969, - "bonnar": 47191, - "bonnaroo": 48777, - "bonne": 25844, - "bonnet": 30636, - "bonnie": 18555, - "bono": 24476, - "bons": 42883, - "bonsai": 44129, - "bonus": 8164, - "bonuses": 35144, - "boo": 824, - "boo": 7317, - "boogie": 22639, - "book": 2828, - "book": 1116, - "bookboost": 31257, - "bookclub": 34438, - "bookday": 26327, - "booked": 12584, - "booker": 21302, - "bookfest": 39381, - "booking": 10145, - "bookings": 18345, - "booklet": 27405, - "bookmark": 33596, - "bookof": 45629, - "bookreview": 27362, - "books": 44382, - "books": 2161, - "bookshelf": 34821, - "bookshop": 24705, - "bookstore": 17999, - "bookstores": 46416, - "bookworm": 20743, - "boom": 9609, - "boom": 7121, - "boomer": 33819, - "boomer": 31766, - "boomers": 37988, - "booming": 33487, - "boon": 24979, - "boon": 35821, - "boone": 23453, - "boop": 45047, - "boost": 44639, - "boost": 6260, - "boosted": 37631, - "booster": 20877, - "boosters": 46859, - "boosting": 28480, - "boosts": 29247, - "boot": 10843, - "boot": 8087, - "bootcamp": 22051, - "booted": 42564, - "booth": 47895, - "booth": 3971, - "booths": 32653, - "booties": 46188, - "bootleg": 38139, - "boots": 7319, - "booze": 24341, - "bop": 19720, - "bor": 1141, - "bor": 15093, - "bora": 24736, - "bord": 36891, - "bordeaux": 22009, - "border": 16304, - "border": 6177, - "borderlands": 38676, - "borders": 13900, - "bore": 14084, - "bore": 24638, - "bored": 8933, - "boredom": 31460, - "boretum": 38902, - "borg": 14770, - "borgh": 17180, - "boring": 12519, - "boris": 31212, - "boris": 15704, - "borisjohnson": 44481, - "born": 17695, - "born": 2683, - "borne": 42910, - "borne": 9328, - "borneo": 33332, - "bornon": 41811, - "bornonthisday": 42757, - "boro": 26796, - "boro": 7974, - "borough": 22761, - "borough": 6203, - "borrow": 22293, - "borrowed": 28224, - "borrowing": 41045, - "borussia": 36764, - "bos": 14885, - "bos": 9644, - "bosa": 46946, - "bosch": 42009, - "bosch": 19466, - "bosco": 36960, - "bose": 23142, - "bosh": 42244, - "bosni": 42924, - "bosnia": 31396, - "boss": 17935, - "boss": 4206, - "bosses": 23906, - "boston": 11540, - "boston": 4399, - "bostonmarathon": 44533, - "bot": 4136, - "bot": 6947, - "botan": 12554, - "botanic": 32560, - "botanical": 21026, - "botany": 22612, - "botd": 34451, - "both": 36575, - "both": 2212, - "bother": 21125, - "bothered": 27997, - "botox": 43449, - "bots": 13721, - "botswana": 27584, - "bott": 3520, - "bott": 37225, - "bottle": 37306, - "bottle": 5392, - "bottled": 29331, - "bottlen": 46439, - "bottles": 9754, - "bottling": 42006, - "bottom": 32314, - "bottom": 5931, - "bottoms": 31524, - "bou": 3728, - "bou": 23165, - "bouchard": 47930, - "boudo": 48827, - "bought": 4142, - "boul": 24830, - "boulder": 18260, - "boule": 17652, - "boulevard": 19504, - "boun": 5993, - "bounce": 14316, - "bouncing": 32060, - "bouncy": 43415, - "bound": 15140, - "bound": 4567, - "boundaries": 18690, - "boundary": 21344, - "bounds": 37469, - "bounty": 21142, - "bouquet": 20961, - "bour": 2934, - "bour": 35486, - "bourbon": 48118, - "bourbon": 14652, - "bourdain": 48095, - "bourg": 20690, - "bourgeo": 45672, - "bourn": 39143, - "bourne": 13789, - "bourne": 5192, - "bournemouth": 20911, - "bout": 19982, - "bout": 8123, - "bouti": 10926, - "boutique": 12179, - "bow": 2297, - "bow": 4040, - "bowden": 48538, - "bowed": 49130, - "bowel": 36880, - "bowen": 25368, - "bower": 40414, - "bowers": 42238, - "bowie": 13036, - "bowing": 46398, - "bowl": 26719, - "bowl": 3814, - "bowled": 39987, - "bowler": 25528, - "bowlers": 42632, - "bowles": 41611, - "bowling": 10390, - "bowls": 17787, - "bowman": 22052, - "bows": 17000, - "bowser": 38234, - "bowski": 48311, - "box": 2774, - "box": 2063, - "boxed": 24190, - "boxer": 40394, - "boxer": 15363, - "boxers": 31019, - "boxes": 8350, - "boxing": 33669, - "boxing": 5554, - "boy": 2927, - "boy": 1876, - "boyband": 31568, - "boyce": 44480, - "boycot": 46208, - "boycott": 31615, - "boycott": 19559, - "boyd": 18295, - "boyfriend": 7328, - "boyfriends": 36541, - "boyle": 22802, - "boys": 25223, - "boys": 2034, - "boyz": 16152, - "bp": 23410, - "bp": 11558, - "bpa": 43855, - "bpd": 48587, - "bpl": 28901, - "bpm": 40338, - "bps": 37794, - "br": 711, - "br": 7532, - "bra": 1195, - "bra": 5860, - "brac": 6663, - "brace": 8376, - "brace": 9183, - "bracelet": 8969, - "bracelets": 20027, - "braces": 19249, - "brack": 25676, - "bracket": 14780, - "brackets": 36183, - "brad": 4848, - "brad": 9405, - "bradbury": 45097, - "braden": 46842, - "bradford": 15062, - "bradley": 31905, - "bradley": 10952, - "brador": 24062, - "bradshaw": 37556, - "brady": 42494, - "brady": 11117, - "brae": 42874, - "brae": 40040, - "brag": 30110, - "bragg": 38545, - "bragging": 38199, - "brah": 20276, - "brahms": 45114, - "brai": 25048, - "braid": 31067, - "braided": 39997, - "braids": 34221, - "brain": 9454, - "brain": 4812, - "brains": 17129, - "brainstorming": 36607, - "braised": 28363, - "brake": 14937, - "brakes": 23456, - "bral": 31309, - "bram": 14815, - "bram": 39456, - "brampton": 35124, - "bran": 3684, - "bran": 28348, - "brance": 36072, - "brance": 15413, - "branch": 7998, - "branches": 15843, - "brand": 3910, - "brand": 2896, - "branded": 18097, - "brandi": 41003, - "branding": 10841, - "brando": 41892, - "brandon": 20423, - "brandon": 9166, - "brands": 8681, - "brandt": 22552, - "brandy": 26232, - "brane": 32340, - "branson": 28280, - "brant": 28951, - "brant": 47592, - "braries": 46377, - "brary": 24520, - "bras": 22611, - "brasil": 18991, - "brass": 24348, - "brass": 11655, - "brat": 26717, - "brat": 26631, - "brate": 41864, - "braun": 39129, - "braun": 29309, - "brave": 25461, - "brave": 7769, - "braved": 47663, - "bravely": 42303, - "bravery": 25831, - "braves": 14422, - "braving": 43258, - "bravo": 38613, - "bravo": 13006, - "braw": 37871, - "brawl": 26066, - "braxton": 37451, - "bray": 26256, - "bray": 22993, - "braz": 4625, - "brazil": 47459, - "brazil": 6305, - "brazili": 45697, - "brazilian": 12111, - "brb": 25316, - "brc": 40393, - "bre": 887, - "bre": 7782, - "brea": 7318, - "brea": 46538, - "breach": 21363, - "breaches": 45173, - "bread": 18886, - "bread": 5066, - "breads": 43064, - "break": 2206, - "break": 2568, - "breakable": 30691, - "breakaway": 42732, - "breakdown": 14519, - "breaker": 14814, - "breakers": 22270, - "breakfa": 45931, - "breakfast": 30210, - "breakfast": 3290, - "breaking": 14698, - "breaking": 2755, - "breakingbad": 38032, - "breakingnews": 23837, - "breakout": 16752, - "breaks": 7263, - "breakthrough": 18802, - "breakup": 38931, - "breast": 12930, - "breast": 9475, - "breastcancer": 40813, - "breastcancer": 30065, - "breastfeeding": 29033, - "breasts": 37637, - "breath": 9508, - "breath": 9576, - "breathe": 11364, - "breathing": 14959, - "breathtaking": 14709, - "brecht": 34622, - "breck": 44598, - "bred": 46929, - "bred": 16008, - "bree": 7892, - "bree": 37138, - "breed": 28030, - "breed": 13791, - "breeders": 37472, - "breeding": 16544, - "breeds": 29021, - "breen": 48013, - "brees": 46721, - "breeze": 13125, - "breezy": 21451, - "breit": 23864, - "breitbart": 37926, - "brek": 35494, - "bremen": 39861, - "bren": 5209, - "brenda": 23786, - "brendan": 35134, - "brendan": 15414, - "brendon": 36756, - "brennan": 22372, - "brenner": 42941, - "brent": 31439, - "brent": 16355, - "brentwood": 33108, - "brero": 47781, - "bres": 32561, - "bret": 38020, - "bret": 32548, - "brethren": 43134, - "breton": 32290, - "brett": 22591, - "brett": 12394, - "brev": 42882, - "brevi": 39475, - "brew": 5048, - "brew": 7253, - "brewco": 33582, - "brewed": 23238, - "brewer": 20756, - "breweries": 35277, - "brewers": 17618, - "brewery": 8850, - "brewing": 8275, - "brewingco": 45155, - "brews": 21663, - "brewster": 40274, - "brex": 22726, - "brexit": 27666, - "brexit": 5801, - "brgy": 35983, - "bri": 1036, - "bri": 18636, - "bria": 35890, - "brian": 9824, - "brian": 4989, - "brianna": 32308, - "briar": 46119, - "bribe": 40042, - "bribery": 41792, - "bric": 27055, - "brice": 40190, - "brick": 13937, - "brick": 9518, - "bricks": 21029, - "brics": 48196, - "brid": 16995, - "bridal": 36875, - "bridal": 14284, - "bride": 18342, - "bride": 8964, - "brides": 18067, - "bridesma": 28356, - "bridesmaid": 43399, - "bridesmaids": 47754, - "bridg": 20623, - "bridge": 8647, - "bridge": 2465, - "bridgeport": 45201, - "bridges": 11811, - "bridget": 27073, - "bridgewater": 38732, - "bridging": 38109, - "brie": 26622, - "brief": 9435, - "brief": 8954, - "briefed": 47326, - "briefing": 12991, - "briefly": 26980, - "briefs": 29557, - "brien": 13504, - "brier": 43995, - "brig": 11081, - "briga": 46448, - "brigade": 16032, - "briggs": 28108, - "brigh": 6710, - "bright": 10383, - "bright": 4852, - "brighten": 18208, - "brightening": 43929, - "brighter": 18507, - "brightest": 26159, - "brightly": 36298, - "brightness": 42280, - "brighton": 28416, - "brighton": 9470, - "brigitte": 44421, - "brill": 27342, - "brill": 28601, - "brilli": 3821, - "brilliance": 28146, - "brilliant": 4106, - "brilliantly": 26803, - "brin": 25620, - "bring": 11596, - "bring": 2430, - "bringback": 28969, - "bringbackour": 45403, - "bringing": 4777, - "brings": 5138, - "brink": 39296, - "brink": 28796, - "brioche": 45818, - "bris": 9385, - "bris": 15783, - "brisban": 30431, - "brisbane": 42932, - "brisbane": 12407, - "brisk": 43646, - "brisket": 31920, - "bristol": 18159, - "bristol": 8010, - "brit": 2318, - "brit": 20066, - "britain": 40802, - "britain": 6272, - "britanni": 31373, - "britannia": 36188, - "brite": 33827, - "briti": 8155, - "british": 8651, - "british": 3504, - "britishmuseum": 41858, - "britney": 37192, - "britney": 21853, - "britneyspears": 42990, - "brits": 21832, - "britt": 10811, - "britt": 25976, - "brittany": 38187, - "brittany": 18818, - "britton": 37422, - "brium": 46079, - "brixton": 30056, - "bro": 927, - "bro": 4410, - "broad": 3491, - "broad": 12623, - "broadband": 21050, - "broadcast": 8967, - "broadcaster": 29005, - "broadcasting": 14403, - "broadcasts": 46742, - "broader": 36029, - "broadway": 34599, - "broadway": 9092, - "broc": 15587, - "broccoli": 19094, - "broch": 21419, - "brochure": 25275, - "brock": 14841, - "brock": 16745, - "brodie": 42150, - "brody": 29608, - "broke": 42165, - "broke": 6509, - "broken": 26126, - "broken": 5107, - "broker": 34032, - "broker": 20449, - "brokerage": 41327, - "brokers": 28271, - "brom": 18972, - "brom": 33296, - "bromance": 35353, - "bromley": 35715, - "bron": 4011, - "bron": 10243, - "bronco": 43488, - "bronco": 34370, - "broncos": 12516, - "bronson": 37042, - "bronte": 48936, - "bronx": 48310, - "bronx": 17183, - "brony": 21084, - "bronze": 8459, - "broo": 5204, - "brooch": 21207, - "brook": 4782, - "brook": 7322, - "brooke": 28576, - "brooke": 12549, - "brookes": 39707, - "brooklyn": 23253, - "brooklyn": 6983, - "brooks": 42779, - "brooks": 9991, - "broom": 32046, - "broom": 28008, - "broome": 49335, - "bros": 7776, - "broth": 29994, - "brotha": 33974, - "brother": 12697, - "brother": 3157, - "brotherhood": 19059, - "brothers": 4548, - "brou": 27874, - "brough": 21033, - "brought": 4222, - "brov": 42881, - "brow": 6547, - "brow": 15895, - "broward": 34719, - "brown": 6315, - "brown": 2866, - "browne": 28440, - "brownie": 23045, - "brownies": 22312, - "browning": 32241, - "browns": 14051, - "brows": 14998, - "browse": 19060, - "browser": 19768, - "browsing": 29318, - "brox": 43539, - "brs": 47485, - "brt": 46936, - "bru": 1698, - "bru": 31028, - "bruce": 21223, - "bruce": 7085, - "bruh": 17575, - "bruins": 14736, - "bruise": 48048, - "bruised": 46502, - "brum": 23862, - "brum": 28078, - "brun": 6870, - "brunch": 9113, - "brune": 29057, - "brunei": 41898, - "brunette": 35528, - "bruno": 14568, - "brunomars": 41156, - "brunswick": 24012, - "brush": 27969, - "brush": 8594, - "brushed": 30298, - "brushes": 21550, - "brushing": 35072, - "brussels": 11020, - "brut": 39499, - "brutal": 42144, - "brutal": 14556, - "brutality": 31348, - "brutally": 28132, - "brute": 47552, - "brux": 49093, - "bry": 6587, - "bry": 28228, - "bryan": 16134, - "bryan": 10412, - "bryant": 12256, - "bryce": 19895, - "bryn": 36569, - "bryn": 42877, - "bryson": 38990, - "bs": 11783, - "bs": 1329, - "bsa": 46619, - "bsb": 23070, - "bsbi": 41728, - "bsbibotany": 42086, - "bsc": 32031, - "bsd": 41848, - "bse": 46341, - "bsf": 48314, - "bsgo": 48474, - "bsp": 47977, - "bst": 19698, - "bsu": 46385, - "bt": 3317, - "bt": 4205, - "btc": 10315, - "btcc": 30759, - "btn": 44681, - "bto": 35516, - "btob": 29379, - "btr": 39767, - "bts": 15154, - "bts": 4007, - "btsarmy": 30302, - "btsbbmas": 35297, - "btsx": 44971, - "btv": 38541, - "btw": 9520, - "btwn": 28284, - "bu": 609, - "bu": 5831, - "bub": 27704, - "bub": 33158, - "bubb": 9739, - "bubba": 28149, - "bubble": 28687, - "bubble": 10799, - "bubblegum": 48078, - "bubbles": 17648, - "bubbly": 31034, - "buc": 8207, - "buccane": 32830, - "buccaneers": 38058, - "buch": 22623, - "bucha": 43582, - "buchan": 27237, - "buchanan": 28975, - "bucharest": 37013, - "buck": 6061, - "buck": 11433, - "bucket": 22596, - "bucket": 10498, - "bucketlist": 30778, - "buckets": 27168, - "buckeye": 34549, - "buckeyes": 30741, - "buckingham": 28736, - "buckle": 21948, - "buckley": 25905, - "bucks": 6103, - "bucky": 35916, - "bucs": 20011, - "bud": 2942, - "bud": 10737, - "buda": 18520, - "buda": 49012, - "budapest": 19202, - "budd": 7296, - "buddha": 13981, - "buddhism": 23744, - "buddhist": 18697, - "buddies": 14543, - "budding": 31992, - "buddy": 40948, - "buddy": 6557, - "budge": 32005, - "budget": 46758, - "budget": 5639, - "budgeting": 43789, - "budgets": 36419, - "buds": 14665, - "budweiser": 40900, - "buen": 15640, - "buena": 30876, - "buenas": 48529, - "bueno": 46202, - "buenos": 26055, - "buf": 44417, - "buff": 5456, - "buff": 21416, - "buffal": 25836, - "buffalo": 31231, - "buffalo": 8054, - "buffalob": 38831, - "buffalobills": 44352, - "buffe": 13724, - "buffer": 33050, - "buffet": 17829, - "buffett": 34081, - "buffs": 28906, - "buffy": 33356, - "bug": 14453, - "bug": 8162, - "bugatti": 35451, - "buggy": 28963, - "bugs": 13850, - "buh": 31406, - "buhari": 14661, - "buick": 22000, - "buil": 1354, - "build": 22739, - "build": 3289, - "builder": 14474, - "builders": 17694, - "building": 21206, - "building": 2307, - "buildings": 8866, - "builds": 16449, - "buildthe": 41497, - "built": 45824, - "built": 3874, - "buk": 28084, - "buk": 24317, - "buka": 47778, - "bukit": 39888, - "bul": 2572, - "bul": 10200, - "bula": 18726, - "bulaga": 41575, - "bular": 32187, - "bulb": 22373, - "bulbs": 24808, - "bulgar": 15424, - "bulgaria": 20295, - "bulgarian": 38693, - "bulge": 47603, - "bulk": 19643, - "bull": 4537, - "bull": 6029, - "bulldo": 37675, - "bulldog": 34828, - "bulldog": 15611, - "bulldogs": 13916, - "bullet": 14340, - "bullet": 12465, - "bulletin": 19638, - "bulletproof": 43212, - "bullets": 22117, - "bullied": 34689, - "bullies": 39050, - "bullion": 49114, - "bullish": 22142, - "bullock": 33198, - "bullpen": 38081, - "bulls": 10313, - "bully": 43111, - "bully": 20190, - "bullying": 13548, - "bum": 27683, - "bum": 14226, - "bumble": 25585, - "bumble": 39303, - "bumblebee": 36911, - "bummed": 48456, - "bump": 9783, - "bump": 15877, - "bumped": 22495, - "bumper": 17881, - "bumping": 40196, - "bumps": 21115, - "bun": 2591, - "bun": 13665, - "bunch": 7796, - "bund": 41905, - "bunde": 18841, - "bundesliga": 21582, - "bundle": 11793, - "bundled": 47228, - "bundles": 29834, - "bundy": 37332, - "bung": 44748, - "bungal": 29549, - "bungalow": 33696, - "bunk": 41236, - "bunker": 23615, - "bunnies": 28998, - "bunny": 34198, - "bunny": 9258, - "buns": 22235, - "bunting": 30695, - "buon": 31350, - "buon": 48498, - "bur": 1039, - "bur": 17362, - "burbank": 34862, - "burberry": 30412, - "burch": 44588, - "burden": 18687, - "bure": 11902, - "bureau": 32098, - "bureau": 15400, - "burg": 19505, - "burg": 3499, - "burge": 20522, - "burger": 22356, - "burger": 6548, - "burgers": 13007, - "burgess": 26211, - "burgh": 18141, - "burgh": 4965, - "burgl": 25554, - "burglar": 43365, - "burglary": 32573, - "burgring": 40823, - "burgundy": 23650, - "buri": 46348, - "buri": 42614, - "burial": 22012, - "buried": 14233, - "burk": 48822, - "burke": 15340, - "burle": 27891, - "burlesque": 33732, - "burlington": 23370, - "burma": 30305, - "burmese": 47906, - "burn": 7934, - "burn": 4285, - "burnaby": 47541, - "burne": 27246, - "burned": 15022, - "burner": 23243, - "burnett": 28558, - "burnham": 36111, - "burning": 46107, - "burning": 8405, - "burnley": 24653, - "burnout": 36078, - "burns": 10234, - "burnt": 15185, - "burr": 30879, - "burrell": 49045, - "burrito": 23473, - "burritos": 47245, - "burroughs": 41337, - "burrows": 44846, - "burst": 13005, - "bursting": 32566, - "bursts": 37026, - "burt": 27162, - "burton": 42354, - "burton": 12704, - "burundi": 33595, - "bury": 12276, - "bury": 3899, - "burys": 32362, - "bus": 1319, - "bus": 2840, - "busan": 40172, - "busc": 35000, - "busch": 20475, - "buses": 12879, - "bush": 11191, - "bush": 6867, - "bushes": 37578, - "busiest": 32764, - "busine": 4598, - "busines": 25364, - "business": 8346, - "business": 1716, - "businesses": 7287, - "businessman": 25635, - "buss": 47764, - "bust": 31299, - "bust": 9959, - "busted": 18643, - "buster": 37219, - "buster": 12094, - "busters": 16362, - "busting": 29622, - "busy": 39332, - "busy": 4354, - "but": 2201, - "but": 767, - "butch": 35102, - "butcher": 18732, - "butchers": 42334, - "bute": 39240, - "butes": 14630, - "butler": 35867, - "butler": 10702, - "butt": 12500, - "butt": 31523, - "butte": 31678, - "butter": 5427, - "butter": 6952, - "butterflies": 16232, - "butterfly": 9738, - "buttermilk": 40180, - "butternut": 36867, - "buttery": 45535, - "button": 45480, - "button": 8007, - "buttons": 16188, - "butts": 25309, - "buu": 42313, - "buuren": 47752, - "buxton": 41370, - "buy": 11632, - "buy": 2131, - "buyer": 14682, - "buyers": 14663, - "buying": 6566, - "buys": 15560, - "buzz": 7866, - "buzz": 8706, - "buzzard": 47434, - "buzzer": 38064, - "buzzfeed": 26613, - "buzzing": 18511, - "bv": 18958, - "bv": 35861, - "bvb": 22454, - "bw": 17672, - "bw": 15120, - "bway": 26652, - "bwfc": 40918, - "bwo": 45902, - "bx": 33633, - "by": 1713, - "by": 638, - "bye": 20076, - "bye": 4460, - "byes": 47958, - "byl": 34994, - "byn": 46917, - "byn": 11890, - "byo": 28039, - "bypass": 26530, - "byr": 15534, - "byrd": 30369, - "byrne": 19676, - "byron": 43504, - "byron": 19775, - "bys": 26740, - "bystand": 46138, - "byte": 42798, - "bytes": 39538, - "bythe": 36621, - "byu": 41072, - "byu": 23770, - "byz": 35406, - "byzantine": 44081, - "bz": 13631, - "bé": 40365, - "bü": 38706, - "c": 66, - "c": 322, - "ca": 772, - "ca": 1684, - "caa": 19316, - "cab": 3033, - "cab": 11912, - "cabaret": 26263, - "cabbage": 18407, - "cabe": 32731, - "cabello": 34371, - "caber": 29062, - "cabernet": 33730, - "cabin": 14178, - "cabine": 23354, - "cabinet": 9937, - "cabinets": 33083, - "cabins": 48455, - "cable": 7925, - "cables": 22408, - "cabo": 37318, - "cabo": 28370, - "cabrera": 42338, - "cabs": 42048, - "cac": 8298, - "cac": 23872, - "cacao": 38022, - "cache": 28993, - "caching": 40655, - "cactus": 19794, - "cad": 6297, - "cad": 20166, - "caday": 34187, - "cadbury": 44698, - "caddy": 41521, - "cade": 10497, - "cade": 17306, - "cadet": 22764, - "cadets": 19160, - "cadillac": 18156, - "cae": 49264, - "caer": 28298, - "caes": 15740, - "caesar": 21642, - "caesars": 42162, - "caf": 3471, - "caf": 20867, - "cafc": 30748, - "cafe": 15201, - "cafe": 4979, - "cafes": 40166, - "cafeteria": 32817, - "caffe": 18258, - "caffe": 45416, - "caffeine": 22487, - "café": 15304, - "cag": 15714, - "cage": 11838, - "cages": 37939, - "cah": 40519, - "cahill": 33185, - "cai": 38971, - "cai": 36116, - "cain": 13747, - "caine": 16799, - "cair": 15804, - "cair": 46659, - "cairn": 31264, - "cairn": 42467, - "cairngor": 44067, - "cairns": 32941, - "cairo": 19615, - "cait": 14116, - "caitlin": 47768, - "caitlin": 26809, - "caitlyn": 35763, - "cajun": 43425, - "cajun": 33044, - "cak": 42986, - "cake": 15295, - "cake": 2972, - "cakeday": 46207, - "cakes": 5950, - "cal": 1198, - "cal": 6372, - "cala": 32133, - "calab": 31795, - "calais": 39886, - "calam": 28841, - "calc": 45055, - "calci": 22824, - "calcium": 27815, - "calcu": 15328, - "calcul": 15734, - "calculate": 37656, - "calculated": 40688, - "calculations": 44605, - "calculator": 26093, - "calculus": 35104, - "calcutta": 42901, - "calder": 29372, - "calder": 36817, - "caldwell": 30484, - "cale": 32674, - "caleb": 19619, - "caled": 28421, - "calend": 6057, - "calendar": 7122, - "calendars": 17229, - "calf": 17508, - "calgary": 27415, - "calgary": 10797, - "calhoun": 38929, - "cali": 2857, - "cali": 16337, - "caliber": 32820, - "calibr": 32597, - "calico": 45379, - "calif": 30839, - "califor": 3526, - "californi": 21303, - "california": 3729, - "call": 7950, - "call": 1620, - "calla": 20658, - "callahan": 43313, - "callaway": 42596, - "callback": 44764, - "calle": 47699, - "calle": 38144, - "called": 2726, - "caller": 30666, - "calli": 16338, - "callie": 36512, - "calligraphy": 27775, - "calling": 4597, - "callister": 49026, - "callme": 42449, - "callof": 41280, - "calls": 4572, - "callum": 23224, - "calm": 34990, - "calm": 7011, - "calming": 30690, - "calorie": 32679, - "calories": 18029, - "cals": 47714, - "calum": 16405, - "calvary": 40169, - "calvert": 47134, - "calves": 31857, - "calvin": 27642, - "calvin": 17345, - "caly": 10244, - "calyp": 29851, - "cam": 1004, - "cam": 5982, - "camar": 31991, - "camber": 44362, - "cambo": 14662, - "cambodia": 17347, - "cambridge": 24651, - "cambridge": 9334, - "cambridgeshire": 46139, - "camden": 38735, - "camden": 17984, - "came": 1986, - "camel": 27005, - "camel": 21914, - "camels": 41357, - "cameo": 19492, - "camer": 4961, - "camera": 3934, - "cameraman": 43347, - "cameras": 12172, - "camero": 20320, - "cameron": 19634, - "cameron": 8057, - "camerondallas": 40587, - "cameroon": 24061, - "camil": 37745, - "camila": 19919, - "camilla": 38897, - "camille": 26741, - "camino": 28529, - "camo": 28702, - "camo": 19716, - "camogie": 39547, - "camou": 23588, - "camoufla": 23667, - "camouflage": 29049, - "camp": 2854, - "camp": 2877, - "campa": 2793, - "campaig": 9448, - "campaign": 44524, - "campaign": 3193, - "campaigner": 46364, - "campaigners": 40272, - "campaigning": 19594, - "campaigns": 15669, - "campan": 31765, - "campbell": 29094, - "campbell": 8806, - "campe": 16672, - "campeon": 49109, - "campeones": 30105, - "camper": 41914, - "camper": 24522, - "campers": 26619, - "campfire": 32530, - "campground": 46969, - "camping": 9982, - "campo": 27600, - "campos": 48077, - "camps": 12806, - "campsite": 44243, - "campu": 19687, - "campus": 4560, - "campuses": 31895, - "camra": 46155, - "camry": 46472, - "cams": 32590, - "can": 950, - "can": 753, - "cana": 28341, - "canad": 13193, - "canada": 2698, - "canadaday": 39800, - "canadi": 4329, - "canadian": 22160, - "canadian": 5255, - "canadians": 18989, - "canadiens": 40932, - "canal": 28585, - "canal": 9535, - "canals": 38483, - "canaria": 47117, - "canary": 40409, - "canary": 24523, - "canberra": 16719, - "canc": 43189, - "cancel": 12026, - "cancel": 21546, - "canceled": 25874, - "cancell": 28027, - "cancellation": 38765, - "cancelled": 13270, - "cancels": 34089, - "cancer": 12690, - "cancer": 3148, - "cancers": 33201, - "cancun": 34721, - "cand": 4986, - "candace": 45623, - "candel": 47834, - "candi": 6034, - "candice": 30024, - "candid": 7884, - "candid": 19206, - "candidacy": 46248, - "candidate": 6475, - "candidates": 8619, - "candied": 43982, - "candies": 46305, - "candle": 18995, - "candle": 12674, - "candlelight": 34724, - "candles": 15472, - "candy": 20741, - "candy": 6417, - "cane": 23644, - "cane": 14716, - "canelo": 43210, - "canes": 21902, - "cani": 35592, - "canine": 27380, - "cann": 4139, - "cann": 23709, - "cannab": 7577, - "cannabis": 31837, - "cannabis": 8861, - "canne": 44252, - "canned": 27290, - "cannes": 13773, - "canni": 26389, - "canning": 38621, - "cannon": 28771, - "cannon": 15661, - "cannons": 46269, - "cannot": 4785, - "canny": 26986, - "cano": 31668, - "cano": 25937, - "canoe": 23503, - "canola": 40389, - "canon": 17749, - "canon": 9310, - "canopy": 26061, - "cans": 13707, - "cant": 13395, - "cant": 5784, - "canteen": 39230, - "canter": 19301, - "canterbury": 22271, - "canti": 42845, - "cantina": 47472, - "canton": 37735, - "canton": 25363, - "cantore": 41769, - "cantwait": 33760, - "canu": 20171, - "canucks": 24321, - "canv": 30714, - "canvas": 22441, - "canvas": 7483, - "canvass": 40054, - "canvassing": 33783, - "cany": 47674, - "canyon": 41246, - "canyon": 9755, - "cao": 29207, - "cap": 1289, - "cap": 3938, - "capabilities": 19512, - "capability": 25885, - "capable": 14742, - "capac": 24665, - "capacity": 8970, - "capcom": 28342, - "cape": 10288, - "cape": 6631, - "capecod": 41339, - "capes": 38785, - "capetown": 20059, - "capit": 6889, - "capita": 41833, - "capital": 11198, - "capital": 5439, - "capitalism": 20068, - "capitalist": 37015, - "capitals": 29579, - "capitol": 43880, - "capitol": 11375, - "capo": 45477, - "capp": 16718, - "capped": 24659, - "capping": 42656, - "cappuccino": 37402, - "capri": 48699, - "capri": 30982, - "capric": 28667, - "capricorn": 46314, - "caps": 23185, - "capsu": 15608, - "capsul": 40341, - "capsule": 20627, - "capsules": 32870, - "capt": 45815, - "capt": 17369, - "captain": 14958, - "captain": 4621, - "captainamerica": 46229, - "captainmarvel": 48492, - "captains": 18706, - "caption": 11327, - "captions": 41878, - "captiv": 19776, - "captivating": 30580, - "captive": 29038, - "captivity": 41141, - "capture": 8818, - "captured": 8020, - "captures": 15305, - "capturing": 19548, - "capu": 44241, - "car": 811, - "car": 1615, - "cara": 20016, - "carab": 32251, - "carac": 30029, - "caracas": 45854, - "caramel": 14788, - "carameli": 41739, - "caramelized": 43854, - "carat": 32981, - "carav": 13814, - "caravan": 18566, - "carb": 21379, - "carbo": 43235, - "carbon": 14038, - "carbon": 7549, - "carbs": 29313, - "carcin": 31587, - "carcinoma": 46810, - "card": 10793, - "card": 2601, - "cardam": 49008, - "cardboard": 19845, - "cardi": 6211, - "cardi": 29677, - "cardiac": 21256, - "cardiff": 22488, - "cardiff": 9781, - "cardigan": 30501, - "cardin": 8457, - "cardinal": 46310, - "cardinal": 16472, - "cardinals": 12837, - "cardio": 15003, - "cardio": 23455, - "cardiology": 37276, - "cardiovascular": 29291, - "cardo": 40625, - "cards": 4094, - "care": 2050, - "care": 1776, - "cared": 27675, - "career": 20609, - "career": 3061, - "careers": 10090, - "careful": 11999, - "carefully": 15789, - "caregi": 22042, - "caregiver": 46372, - "caregivers": 35909, - "careless": 47325, - "carers": 26484, - "cares": 10968, - "caretaker": 48037, - "carey": 14895, - "cargo": 12490, - "cari": 18497, - "cari": 37273, - "carib": 9757, - "caribbean": 10368, - "caribou": 42135, - "caric": 25337, - "caricature": 38857, - "carina": 44357, - "caring": 13083, - "carl": 8273, - "carl": 9482, - "carla": 25552, - "carleton": 46496, - "carlin": 47559, - "carlisle": 23276, - "carlo": 17861, - "carlo": 15266, - "carlos": 9538, - "carlow": 44745, - "carls": 39635, - "carlson": 24114, - "carlton": 18934, - "carly": 23166, - "carly": 22689, - "carlyle": 46555, - "carmel": 30757, - "carmel": 25601, - "carmen": 41427, - "carmen": 18834, - "carmichael": 41657, - "carn": 21597, - "carnage": 31385, - "carnation": 44577, - "carnaval": 47238, - "carne": 17053, - "carne": 42885, - "carnegie": 25287, - "carney": 34194, - "carni": 8438, - "carnival": 36708, - "carnival": 10577, - "caro": 30317, - "caro": 29344, - "carol": 4242, - "carol": 11489, - "carole": 31955, - "carolin": 26418, - "carolina": 7027, - "caroline": 31064, - "caroline": 12641, - "carols": 33269, - "carolyn": 25825, - "carou": 32224, - "carousel": 36665, - "carp": 26085, - "carpen": 15584, - "carpenter": 18475, - "carpet": 6922, - "carpets": 34612, - "carr": 26951, - "carr": 17136, - "carra": 32332, - "carre": 31114, - "carrera": 32952, - "carri": 4739, - "carriage": 47885, - "carriage": 21087, - "carrick": 44052, - "carrie": 30334, - "carrie": 15848, - "carried": 12960, - "carrier": 12308, - "carriers": 26865, - "carries": 17982, - "carrieunderwood": 47338, - "carrington": 48759, - "carroll": 41911, - "carroll": 14893, - "carrot": 15435, - "carrots": 19299, - "carry": 31863, - "carry": 6998, - "carrying": 9920, - "cars": 3346, - "carsforsale": 45222, - "carson": 41766, - "carson": 13171, - "cart": 27705, - "cart": 13065, - "cartag": 45042, - "cartagena": 47157, - "carte": 44949, - "cartel": 30529, - "carter": 27330, - "carter": 7260, - "cartier": 32951, - "carto": 5487, - "carton": 41812, - "cartoon": 33082, - "cartoon": 7651, - "cartoonist": 30793, - "cartoons": 17673, - "cartri": 47084, - "cartridge": 29432, - "cartridges": 49249, - "carts": 27581, - "cartunesapp": 32888, - "caruso": 45192, - "carve": 40152, - "carved": 15127, - "carver": 28850, - "carving": 19428, - "carvings": 48123, - "cary": 22844, - "cas": 1671, - "cas": 13831, - "casa": 14643, - "casablanc": 36572, - "casablanca": 41950, - "casc": 36714, - "casca": 43296, - "cascade": 29065, - "cascades": 46454, - "case": 17698, - "case": 2068, - "cases": 6888, - "casey": 24899, - "casey": 12836, - "cash": 11050, - "cash": 5131, - "cashback": 36368, - "cashe": 32233, - "cashew": 39531, - "cashi": 29517, - "cashier": 34547, - "cashmere": 34566, - "casi": 38350, - "casino": 10473, - "casio": 32261, - "cask": 26299, - "casm": 35198, - "casper": 35892, - "cass": 22556, - "cassandra": 35289, - "casser": 31093, - "casserole": 36045, - "cassette": 19717, - "cassi": 14942, - "cassidy": 21757, - "cassie": 29323, - "cassini": 46554, - "cast": 2509, - "cast": 1970, - "caste": 32693, - "casted": 33838, - "castel": 43306, - "castell": 31792, - "caster": 32101, - "caster": 8449, - "casters": 29721, - "castic": 47737, - "castillo": 30813, - "casting": 7087, - "castle": 12496, - "castle": 3540, - "castles": 24766, - "castro": 16950, - "casts": 10595, - "casu": 15345, - "casual": 10129, - "casually": 18840, - "casualties": 30244, - "casualty": 31222, - "cat": 1481, - "cat": 2368, - "cata": 42279, - "catal": 12792, - "catalan": 30532, - "catalina": 36576, - "catalo": 34740, - "catalog": 20036, - "catalogue": 20985, - "catalonia": 27039, - "catalunya": 44132, - "cataly": 15894, - "catalyst": 25387, - "catan": 45893, - "catap": 39514, - "catar": 35801, - "catastro": 22736, - "catastrophe": 41422, - "catastrophic": 34448, - "catch": 18901, - "catch": 3042, - "catcher": 15965, - "catchers": 39060, - "catches": 17213, - "catching": 8617, - "catchy": 37114, - "catday": 32243, - "cate": 6357, - "cate": 24510, - "cated": 31823, - "categor": 17006, - "categori": 40117, - "categories": 19971, - "category": 9432, - "cater": 16634, - "cater": 38101, - "catering": 16697, - "caterpillar": 27111, - "catfish": 26077, - "cath": 9196, - "cath": 30811, - "cathar": 43784, - "cathe": 7174, - "cathedr": 46370, - "cathedral": 7865, - "catherine": 35035, - "catherine": 12339, - "catho": 7595, - "cathol": 16315, - "catholic": 20382, - "catholic": 7757, - "catholics": 36808, - "cathy": 40326, - "cathy": 22731, - "cation": 21367, - "cato": 33558, - "cats": 38800, - "cats": 3989, - "catsofinstagram": 39901, - "catsoftwitter": 17273, - "catt": 37339, - "cattle": 48799, - "cattle": 13644, - "caturday": 20892, - "catwalk": 36565, - "catwoman": 47251, - "cau": 1121, - "cau": 45529, - "caucus": 18847, - "caught": 4520, - "caul": 23460, - "cauley": 41682, - "caulfield": 44906, - "cauli": 20123, - "cauliflower": 23802, - "cause": 18982, - "cause": 1394, - "caused": 8940, - "causes": 9775, - "causeway": 35034, - "causing": 10779, - "caution": 15656, - "cautious": 36579, - "cav": 4942, - "cav": 45935, - "cava": 48682, - "caval": 24537, - "cavali": 20783, - "cavalier": 44488, - "cavaliers": 30194, - "cavalry": 32467, - "cave": 25441, - "cave": 9654, - "cavendish": 42945, - "caver": 41487, - "caves": 22096, - "cavi": 27360, - "caviar": 31228, - "cavill": 40492, - "cavity": 43156, - "cavs": 16800, - "caw": 38405, - "caw": 43804, - "cawx": 26739, - "cay": 11876, - "cay": 37399, - "cayenne": 43650, - "cayman": 33737, - "caz": 48451, - "cb": 4034, - "cb": 8830, - "cba": 38472, - "cbb": 31487, - "cbc": 14096, - "cbc": 14523, - "cbd": 13176, - "cbe": 43639, - "cbi": 30875, - "cbj": 35608, - "cbn": 26579, - "cbp": 46723, - "cbr": 28762, - "cbs": 16788, - "cbs": 8009, - "cc": 2976, - "cc": 2021, - "cca": 17987, - "ccc": 21856, - "ccd": 48556, - "ccg": 37755, - "cch": 21789, - "cchini": 28467, - "cci": 32942, - "cci": 8196, - "ccl": 43773, - "ccm": 40435, - "cco": 28786, - "ccot": 24950, - "ccp": 43045, - "ccs": 30400, - "cctv": 23097, - "ccu": 49023, - "cd": 4308, - "cd": 4480, - "cda": 45565, - "cdc": 41098, - "cdc": 25779, - "cdn": 8886, - "cdn": 26802, - "cdnpoli": 11645, - "cdo": 47187, - "cdp": 39624, - "cds": 20784, - "cdt": 18455, - "ce": 685, - "ce": 629, - "cea": 28355, - "cean": 34409, - "cean": 37295, - "cease": 32856, - "cease": 25499, - "ceasefire": 38291, - "cebu": 20146, - "cec": 29694, - "cec": 40029, - "cecil": 26987, - "cecil": 27169, - "cecilia": 35440, - "ced": 25634, - "ced": 2323, - "cedar": 24167, - "cedar": 13799, - "cedric": 36608, - "cee": 45966, - "cee": 15015, - "cees": 47914, - "ceil": 27275, - "ceiling": 12374, - "ceilings": 33770, - "cek": 45544, - "cel": 2269, - "cel": 7597, - "cele": 1314, - "celeb": 38862, - "celeb": 19393, - "celebr": 1372, - "celebrate": 31414, - "celebrate": 2694, - "celebrated": 9184, - "celebrates": 7564, - "celebrating": 3382, - "celebration": 4615, - "celebrations": 10825, - "celebratory": 34115, - "celebrities": 17071, - "celebrity": 23981, - "celebrity": 7320, - "celebs": 19803, - "celed": 25741, - "celer": 9621, - "celery": 30990, - "celeste": 29364, - "celesti": 29497, - "celestial": 32669, - "celi": 25567, - "celia": 44489, - "celine": 33644, - "cell": 9316, - "cell": 5533, - "cellar": 24282, - "cellars": 44976, - "cellence": 34687, - "cello": 23013, - "cellphone": 39029, - "cells": 8890, - "cellu": 16791, - "cellular": 23268, - "cels": 24021, - "celsius": 47057, - "celtic": 21897, - "celtic": 10523, - "celticfc": 38612, - "celtics": 16226, - "cem": 41435, - "ceme": 10517, - "cement": 4369, - "cements": 19448, - "cemetery": 11660, - "cen": 1306, - "cen": 30106, - "cena": 21591, - "cence": 24410, - "cency": 41259, - "cene": 30038, - "censor": 24230, - "censor": 44709, - "censored": 30951, - "censorship": 27284, - "census": 23677, - "cent": 1784, - "cent": 3662, - "centenary": 22422, - "centennial": 20895, - "center": 16651, - "center": 2119, - "centered": 24584, - "centers": 14494, - "centi": 48889, - "centime": 48687, - "centr": 2370, - "central": 13448, - "central": 3339, - "centre": 26310, - "centre": 2916, - "centred": 47925, - "centres": 19354, - "centri": 30872, - "centric": 19297, - "centro": 37178, - "cents": 11934, - "centu": 16818, - "centuri": 36816, - "centuries": 19014, - "century": 26134, - "century": 4275, - "ceo": 46340, - "ceo": 3559, - "ceos": 28332, - "cep": 2632, - "cep": 48714, - "ceph": 44343, - "cept": 3678, - "ception": 12346, - "cer": 1364, - "cer": 1925, - "cera": 34608, - "ceram": 10677, - "ceramic": 15112, - "ceramics": 22438, - "cere": 3984, - "cere": 22085, - "cereal": 17581, - "cereals": 48618, - "cerebral": 39073, - "ceremon": 15796, - "ceremonial": 33281, - "ceremonies": 21547, - "ceremony": 5193, - "cern": 44851, - "cers": 13638, - "cert": 27522, - "certain": 8526, - "certain": 7883, - "certainly": 10883, - "certainty": 20054, - "certi": 4888, - "certific": 9443, - "certificate": 11786, - "certificates": 25281, - "certification": 14735, - "certified": 9288, - "cerv": 25738, - "cervical": 35953, - "ces": 28715, - "ces": 1604, - "cesar": 37025, - "cesar": 28603, - "cess": 2314, - "cess": 1554, - "cessna": 36596, - "cest": 27245, - "cester": 15769, - "cester": 12718, - "cet": 14960, - "cett": 46708, - "ceu": 37457, - "cevic": 48369, - "cey": 20971, - "cf": 10189, - "cf": 11171, - "cfa": 34521, - "cfb": 32931, - "cfc": 11577, - "cfd": 46171, - "cfl": 46320, - "cfl": 22332, - "cfo": 26937, - "cfp": 40756, - "cfr": 44033, - "cfs": 32835, - "cg": 27118, - "cg": 14740, - "cgc": 38775, - "cgi": 30520, - "ch": 540, - "ch": 634, - "cha": 1587, - "cha": 4541, - "chab": 26670, - "chad": 13095, - "chad": 12923, - "chae": 9460, - "chaf": 38123, - "chag": 27989, - "chai": 31590, - "chai": 18919, - "chain": 13898, - "chain": 3946, - "chained": 34402, - "chains": 14438, - "chainsaw": 37617, - "chainz": 39687, - "chair": 4728, - "chair": 4269, - "chaired": 31664, - "chairing": 42205, - "chairman": 6901, - "chairperson": 31584, - "chairs": 12033, - "chak": 13702, - "chak": 41713, - "chakra": 38304, - "chakra": 33241, - "chal": 7397, - "chal": 30809, - "chale": 38099, - "chalet": 37907, - "chalk": 31362, - "chalk": 17846, - "chall": 2073, - "challeng": 4138, - "challenge": 29462, - "challenge": 2836, - "challenged": 17380, - "challenger": 18228, - "challengers": 46404, - "challenges": 6280, - "challenging": 11754, - "chalmers": 47955, - "cham": 1290, - "cham": 19951, - "chamber": 18983, - "chamber": 7642, - "chamberlain": 32756, - "chambers": 16501, - "chamele": 34759, - "chameleon": 41317, - "champ": 36813, - "champ": 6602, - "champag": 10283, - "champagne": 11007, - "champi": 1680, - "champion": 2643, - "champion": 3950, - "champions": 4227, - "championship": 3429, - "championships": 7047, - "championsleague": 27638, - "champs": 6240, - "chan": 1255, - "chan": 6704, - "chana": 48752, - "chanc": 13931, - "chance": 32940, - "chance": 2594, - "chancellor": 15886, - "chances": 10870, - "chand": 7126, - "chand": 41508, - "chandelier": 30570, - "chandi": 12482, - "chandigarh": 34106, - "chandler": 17595, - "chandra": 27082, - "chandra": 25348, - "chanel": 16951, - "chang": 2233, - "chang": 16461, - "change": 11608, - "change": 1799, - "changeable": 41335, - "changed": 4907, - "changer": 18406, - "changers": 35185, - "changes": 4938, - "changing": 40384, - "changing": 5621, - "changmin": 47410, - "chann": 8804, - "channel": 25837, - "channel": 3847, - "channeling": 28197, - "channels": 13961, - "channing": 37417, - "chant": 18165, - "chant": 13521, - "chanting": 32111, - "chants": 22723, - "chanyeol": 18805, - "chao": 31815, - "chaos": 10853, - "chaotic": 33501, - "chap": 3825, - "chap": 21939, - "chapel": 40859, - "chapel": 10137, - "chaplain": 38348, - "chaplin": 32545, - "chapman": 17968, - "chapp": 20634, - "chaps": 36823, - "chapter": 6014, - "chapters": 22936, - "char": 1054, - "char": 16017, - "chara": 35668, - "charac": 2792, - "character": 10997, - "character": 4009, - "characterdesign": 38149, - "characteri": 20920, - "characteristic": 44747, - "characteristics": 26037, - "characters": 6564, - "charan": 31851, - "charcoal": 19268, - "chard": 17524, - "chardon": 26599, - "chardonnay": 28161, - "charge": 25032, - "charge": 5948, - "chargeable": 35664, - "charged": 7916, - "charger": 13090, - "chargers": 17352, - "charges": 8962, - "charging": 12514, - "chariot": 38811, - "charis": 24449, - "charisma": 45041, - "charismatic": 37205, - "charitable": 23256, - "charities": 18493, - "charity": 20008, - "charity": 4607, - "charitytuesday": 42794, - "charl": 47736, - "charle": 10217, - "charles": 27983, - "charles": 5127, - "charleston": 15478, - "charley": 38027, - "charli": 21784, - "charli": 49392, - "charlie": 16764, - "charlie": 6393, - "charlotte": 18445, - "charlotte": 7871, - "charlottesville": 32027, - "charlton": 27048, - "charm": 10876, - "charmed": 39790, - "charming": 12177, - "charms": 21944, - "charred": 44085, - "chart": 42685, - "chart": 5053, - "charted": 27939, - "charter": 42345, - "charter": 13569, - "chartered": 31298, - "charters": 46626, - "charting": 39841, - "charts": 10728, - "chas": 10717, - "chas": 29838, - "chase": 21503, - "chase": 3859, - "chased": 30342, - "chaser": 29560, - "chasers": 34158, - "chases": 45011, - "chasing": 46909, - "chasing": 13376, - "chassis": 29188, - "chast": 42176, - "chasu": 41352, - "chat": 5355, - "chat": 2402, - "chatbots": 43994, - "chate": 30377, - "chateau": 44582, - "chateau": 23520, - "chath": 46849, - "chatham": 32030, - "chats": 13263, - "chatt": 21618, - "chattanoo": 28009, - "chattanooga": 29866, - "chatted": 34124, - "chatter": 33473, - "chatter": 41103, - "chatting": 12401, - "chatur": 33839, - "chau": 11263, - "chau": 37536, - "chauffe": 45440, - "chauhan": 46663, - "chav": 28997, - "chavez": 27480, - "chaw": 39639, - "chay": 45317, - "chaz": 47815, - "chc": 36233, - "chd": 41645, - "che": 983, - "che": 3842, - "chea": 39580, - "chead": 48358, - "cheap": 27036, - "cheap": 8678, - "cheape": 26164, - "cheaper": 17776, - "cheapest": 26640, - "cheat": 18180, - "cheated": 34285, - "cheating": 19722, - "chec": 1113, - "check": 7672, - "check": 1217, - "checked": 10387, - "checker": 45883, - "checkers": 48181, - "checking": 7441, - "checklist": 26989, - "checkout": 13101, - "checkpoint": 27531, - "checks": 13737, - "ched": 11341, - "ched": 2146, - "cheddar": 20551, - "chee": 5326, - "chee": 20944, - "cheek": 40000, - "cheek": 21227, - "cheeks": 23019, - "cheeky": 15068, - "cheer": 9733, - "cheer": 6918, - "cheered": 38111, - "cheerful": 28882, - "cheering": 14289, - "cheerleader": 29072, - "cheerleaders": 22343, - "cheerleading": 36366, - "cheers": 6562, - "chees": 15182, - "cheese": 10738, - "cheese": 4108, - "cheeseburger": 41200, - "cheesecake": 17803, - "cheeses": 36076, - "cheesy": 22093, - "cheetah": 27431, - "chef": 12137, - "chef": 4895, - "chefs": 14486, - "chek": 43745, - "chel": 3084, - "chel": 25970, - "chell": 46854, - "chelle": 30141, - "chelms": 34936, - "chelmsford": 39890, - "chelse": 19071, - "chelsea": 6031, - "chelseafc": 25927, - "chelten": 18889, - "cheltenham": 21589, - "chem": 5667, - "chem": 13698, - "chemi": 7179, - "chemical": 39376, - "chemical": 9208, - "chemicals": 17426, - "chemist": 23138, - "chemistry": 8841, - "chemo": 33095, - "chemo": 36348, - "chemotherapy": 41412, - "chemtrails": 46015, - "chen": 5907, - "chen": 8983, - "cheney": 43522, - "cheng": 32512, - "cheng": 30190, - "chenko": 29073, - "chennai": 28948, - "chennai": 12791, - "cheon": 11498, - "cheque": 28168, - "cher": 3597, - "cher": 3466, - "cheri": 26471, - "cherish": 20053, - "cherished": 42325, - "cherno": 35376, - "chernobyl": 40554, - "chero": 19844, - "cherokee": 22860, - "cherries": 27248, - "cherry": 21470, - "cherry": 7325, - "chers": 5789, - "chery": 38478, - "cheryl": 37784, - "cheryl": 20600, - "ches": 18346, - "ches": 1910, - "chesa": 28349, - "chesapeake": 32909, - "cheshire": 17130, - "chesney": 48747, - "chess": 27170, - "chess": 8397, - "chest": 18217, - "chest": 10563, - "chester": 10466, - "chester": 3343, - "chesterfield": 32975, - "chestnut": 21834, - "chet": 9663, - "chett": 24695, - "chev": 7152, - "chev": 41145, - "chevro": 12850, - "chevrolet": 13240, - "chevron": 33792, - "chevy": 16581, - "chew": 32645, - "chew": 22642, - "chewan": 23689, - "chewbacca": 49355, - "chewing": 31486, - "chewy": 42940, - "chey": 26968, - "chey": 31208, - "cheyenne": 34805, - "chez": 49183, - "chez": 10556, - "chf": 33021, - "chfield": 41619, - "chhat": 34127, - "chhattisgarh": 44246, - "chi": 1337, - "chi": 4039, - "chia": 19147, - "chiang": 33764, - "chibi": 22306, - "chic": 2627, - "chic": 9091, - "chica": 44190, - "chicag": 16778, - "chicago": 15038, - "chicago": 3530, - "chicagof": 40638, - "chicagofire": 46576, - "chicas": 40664, - "chichester": 43823, - "chick": 3170, - "chick": 11238, - "chicken": 26322, - "chicken": 3717, - "chickens": 21658, - "chickpea": 48109, - "chicks": 17810, - "chico": 30379, - "chie": 40046, - "chie": 12388, - "chief": 16830, - "chief": 3455, - "chiefs": 11419, - "chiev": 47761, - "chiff": 27407, - "chiffon": 31817, - "chig": 42952, - "chihu": 22857, - "chihuahu": 25437, - "chihuahua": 30181, - "chik": 45455, - "chil": 1333, - "child": 4392, - "child": 2913, - "childcare": 31133, - "childhood": 34772, - "childhood": 7551, - "childish": 31939, - "childre": 2135, - "children": 11101, - "children": 2153, - "childrens": 31551, - "childrens": 21553, - "childs": 39521, - "chile": 10022, - "chilean": 33186, - "chili": 13033, - "chill": 6498, - "chill": 6382, - "chilled": 23540, - "chillen": 45160, - "chilli": 26787, - "chilli": 17067, - "chillin": 10347, - "chilling": 10179, - "chillout": 39842, - "chills": 25460, - "chilly": 14450, - "chim": 10543, - "chimney": 26821, - "chimp": 44374, - "chin": 6555, - "chin": 8979, - "china": 38943, - "china": 2817, - "chinatown": 28582, - "chine": 4013, - "chinese": 30568, - "chinese": 4271, - "ching": 34621, - "ching": 1439, - "chino": 47181, - "chino": 27440, - "chinook": 41577, - "chinson": 33786, - "chio": 19650, - "chip": 19271, - "chip": 8730, - "chipmun": 46384, - "chipot": 17702, - "chipotle": 19284, - "chipp": 39854, - "chippe": 46541, - "chipped": 39892, - "chipping": 40323, - "chips": 8855, - "chir": 15564, - "chiro": 23413, - "chiroprac": 25987, - "chiropractic": 34437, - "chis": 19920, - "chistan": 20523, - "chiswick": 47290, - "chit": 13515, - "chit": 45626, - "chita": 49184, - "chitec": 39862, - "chive": 29222, - "chives": 34921, - "chk": 47424, - "chl": 38592, - "chley": 47748, - "chlo": 10374, - "chloe": 39966, - "chloe": 13992, - "chlor": 23135, - "chman": 35835, - "chment": 20848, - "chner": 48277, - "cho": 1327, - "cho": 5150, - "choa": 43077, - "choc": 32772, - "choc": 21983, - "choco": 46285, - "choco": 32692, - "chocol": 3443, - "chocolat": 44631, - "chocolate": 29389, - "chocolate": 3820, - "chocolates": 24120, - "choi": 23749, - "choic": 35606, - "choice": 23857, - "choice": 4051, - "choices": 11016, - "choir": 9214, - "choirs": 43277, - "choke": 30231, - "choked": 43521, - "choker": 39642, - "choking": 39993, - "chol": 19802, - "cholera": 45999, - "cholester": 26861, - "cholesterol": 27982, - "chom": 25151, - "chon": 20416, - "chon": 21601, - "chondri": 37379, - "chong": 26220, - "choo": 3869, - "choo": 24437, - "chool": 29578, - "chools": 41958, - "choose": 22756, - "choose": 5073, - "chooses": 29923, - "choosing": 13475, - "chop": 10458, - "chop": 16663, - "chopin": 42256, - "chopped": 22580, - "chopper": 24011, - "chopping": 35375, - "chopra": 24258, - "chops": 26321, - "chor": 7567, - "chor": 47795, - "choral": 26684, - "chord": 33005, - "chords": 36152, - "choreo": 17443, - "choreographer": 35952, - "choreography": 32749, - "chores": 40483, - "chori": 25718, - "chorizo": 30802, - "chorus": 20869, - "chos": 26559, - "chose": 11090, - "chosen": 10044, - "chou": 16960, - "chou": 42917, - "choudhary": 45503, - "chow": 20257, - "chow": 21657, - "chowder": 37886, - "chp": 35896, - "chr": 36918, - "chri": 1135, - "chris": 9907, - "chris": 2978, - "chrisbrown": 41035, - "chriss": 46745, - "chrissy": 44762, - "chrissy": 40485, - "christ": 1403, - "christ": 6703, - "christchurch": 27100, - "christen": 31956, - "christensen": 42226, - "christi": 3328, - "christi": 33213, - "christian": 11792, - "christian": 4729, - "christianity": 20000, - "christians": 14842, - "christie": 16084, - "christin": 30189, - "christina": 15925, - "christine": 42610, - "christine": 14712, - "christma": 12039, - "christmas": 18174, - "christmas": 1677, - "christmaseve": 44381, - "christmass": 44873, - "christop": 7917, - "christoph": 47844, - "christophe": 45486, - "christopher": 33349, - "christopher": 9630, - "christy": 28331, - "chro": 13207, - "chromatic": 44207, - "chrome": 24843, - "chrome": 9529, - "chromo": 35809, - "chron": 5577, - "chron": 39781, - "chronic": 10115, - "chronic": 13677, - "chronicle": 20034, - "chronicles": 18905, - "chrono": 29387, - "chronograph": 38397, - "chry": 13508, - "chrysler": 20078, - "chs": 40277, - "chs": 8391, - "chsnews": 44919, - "cht": 11384, - "chter": 47811, - "chu": 3799, - "chu": 13622, - "chubby": 29109, - "chuck": 13211, - "chuck": 9894, - "chuckle": 35733, - "chucky": 42026, - "chuffed": 27233, - "chuk": 25878, - "chuk": 27221, - "chul": 33001, - "chum": 46869, - "chum": 41767, - "chun": 14693, - "chun": 25391, - "chung": 28418, - "chunk": 30275, - "chunks": 45538, - "chunky": 27978, - "chups": 46331, - "chur": 2309, - "church": 14956, - "church": 2735, - "churches": 15539, - "churchill": 17527, - "chus": 36246, - "chut": 28788, - "chutney": 36261, - "chy": 15131, - "chy": 8096, - "chyna": 43398, - "châ": 48669, - "ci": 698, - "ci": 5798, - "cia": 4019, - "cial": 1143, - "cian": 32323, - "ciao": 37677, - "ciara": 31369, - "cible": 28873, - "cic": 14539, - "cic": 21517, - "cid": 27359, - "cide": 34178, - "cider": 13547, - "cides": 41326, - "cie": 19730, - "cier": 24067, - "cies": 6785, - "cif": 35698, - "cigar": 26031, - "cigar": 16525, - "cigare": 13044, - "cigarette": 18548, - "cigarettes": 22750, - "cigars": 20750, - "cii": 42408, - "cil": 9217, - "cil": 2998, - "cilan": 33998, - "cilantro": 34568, - "cili": 18977, - "ciliation": 25294, - "cim": 30021, - "cin": 2396, - "cin": 25367, - "cina": 39467, - "cincin": 13291, - "cincinnati": 14197, - "cinco": 25131, - "cincode": 40930, - "cincodemayo": 42542, - "cincy": 30015, - "cincy": 30286, - "cinde": 20660, - "cinderella": 21515, - "cindy": 34439, - "cindy": 18532, - "cine": 4015, - "cine": 27451, - "cinema": 38251, - "cinema": 6443, - "cinemas": 14845, - "cinematic": 25602, - "cinemato": 21919, - "cinematographer": 39059, - "cinematography": 33802, - "ciner": 39882, - "cing": 4014, - "cini": 25699, - "cinnam": 12768, - "cinnamon": 13460, - "cino": 18616, - "cio": 44584, - "cio": 9954, - "cion": 22024, - "ciones": 37155, - "cious": 38466, - "cip": 32884, - "cir": 2459, - "cir": 41135, - "circa": 10411, - "circle": 33574, - "circle": 7117, - "circles": 19411, - "circling": 46036, - "circu": 5143, - "circuit": 35583, - "circuit": 9801, - "circuits": 33260, - "circul": 16618, - "circular": 19733, - "circulare": 39525, - "circulareconomy": 39878, - "circulated": 46258, - "circulating": 42980, - "circulation": 27880, - "circum": 13406, - "circumstances": 18786, - "circus": 11833, - "cirque": 36049, - "cis": 9459, - "cis": 23513, - "cisco": 36689, - "cisco": 19290, - "cise": 19657, - "cisely": 33434, - "cision": 41957, - "cism": 24166, - "cist": 40906, - "cit": 4420, - "cit": 31294, - "citadel": 38036, - "citation": 33581, - "cite": 32641, - "cited": 25069, - "cites": 34490, - "citi": 4280, - "citi": 30270, - "cities": 5441, - "citing": 29088, - "citiz": 5816, - "citizen": 11720, - "citizen": 9814, - "citizens": 7949, - "citizenship": 17386, - "cito": 42636, - "citro": 27941, - "citroen": 35805, - "citrus": 17379, - "city": 5002, - "city": 1305, - "cityfc": 28751, - "cityo": 25709, - "cityof": 11595, - "cityscape": 40808, - "ciu": 39693, - "cius": 42559, - "civ": 40039, - "civic": 32240, - "civic": 11888, - "civil": 6923, - "civil": 6450, - "civilian": 21187, - "civilians": 18076, - "civilization": 22503, - "civilwar": 34524, - "ción": 44700, - "cj": 15238, - "cj": 15205, - "ck": 916, - "ck": 868, - "cke": 25224, - "cke": 40989, - "cked": 3441, - "cken": 25566, - "cker": 15509, - "cker": 4744, - "ckers": 37073, - "cket": 5525, - "ckett": 33899, - "ckey": 15029, - "ckey": 3657, - "cki": 36916, - "cki": 41055, - "cking": 4805, - "cko": 28818, - "cks": 2031, - "cky": 26229, - "cky": 3083, - "cl": 969, - "cl": 6482, - "cla": 940, - "cla": 20636, - "clad": 31606, - "cladding": 46411, - "clai": 29459, - "claim": 4290, - "claim": 6607, - "claimed": 9010, - "claiming": 15286, - "claims": 6852, - "clair": 31441, - "clair": 14039, - "claire": 20410, - "claire": 10460, - "clam": 13588, - "clam": 32598, - "clamation": 21793, - "clamp": 41501, - "clams": 38849, - "clan": 29252, - "clan": 14114, - "clancy": 37227, - "clans": 38279, - "clap": 30037, - "clap": 25546, - "clapham": 43619, - "clapton": 37683, - "clar": 3617, - "clara": 19468, - "clare": 18948, - "clare": 15927, - "claremont": 47789, - "clarence": 29320, - "clari": 15175, - "clarify": 37004, - "clarinet": 41178, - "clarity": 21323, - "clark": 13340, - "clark": 7521, - "clarke": 11548, - "clarkson": 25706, - "clas": 32003, - "clash": 38367, - "clash": 9359, - "clashes": 25193, - "clasico": 43567, - "class": 2876, - "class": 1874, - "classes": 6919, - "classi": 2507, - "classic": 9353, - "classic": 2713, - "classical": 22179, - "classical": 11355, - "classicalmusic": 27806, - "classiccar": 46906, - "classiccars": 21064, - "classics": 10634, - "classification": 26612, - "classified": 22056, - "classmate": 37090, - "classmates": 30062, - "classof": 25345, - "classroom": 9001, - "classrooms": 25768, - "classy": 11615, - "clau": 7526, - "claude": 17461, - "claudi": 39439, - "claudia": 21893, - "claudio": 31230, - "claus": 23317, - "clause": 26151, - "clave": 24111, - "claw": 49230, - "claw": 19106, - "claws": 29161, - "clay": 10402, - "clay": 8823, - "clays": 26128, - "clayton": 46445, - "clayton": 19413, - "clc": 31380, - "cle": 1321, - "cle": 2537, - "clean": 3572, - "clean": 3772, - "cleaned": 17468, - "cleanenergy": 43538, - "cleaner": 15619, - "cleaners": 33258, - "cleaning": 7210, - "cleanliness": 47886, - "cleans": 40827, - "cleanse": 28717, - "cleanser": 44170, - "cleansing": 25931, - "cleanup": 22353, - "clear": 4631, - "clear": 3143, - "clearance": 17959, - "cleared": 14880, - "clearer": 37031, - "clearing": 15481, - "clearly": 7767, - "clears": 29092, - "clearwater": 32124, - "cleary": 44342, - "cleats": 33486, - "cleavage": 44165, - "cled": 12827, - "clegg": 42915, - "clemens": 45896, - "clement": 22592, - "clement": 24714, - "clemente": 42461, - "clementine": 47112, - "clements": 49175, - "clemson": 38170, - "clemson": 19537, - "clen": 35547, - "cleo": 40344, - "cleop": 36287, - "cleopatra": 41212, - "cler": 11828, - "clergy": 42635, - "cleric": 43748, - "clerk": 22230, - "clermont": 47529, - "cles": 8077, - "cleve": 37599, - "clevel": 7701, - "cleveland": 30716, - "cleveland": 8430, - "clever": 30977, - "clever": 13385, - "clg": 47546, - "cli": 1503, - "clich": 44407, - "click": 16676, - "click": 3585, - "clicked": 29015, - "clicking": 26542, - "clicks": 31250, - "client": 48528, - "client": 7467, - "clients": 8114, - "clif": 13182, - "cliff": 23827, - "cliff": 10625, - "cliffe": 15170, - "clifford": 24226, - "cliffs": 20953, - "clifton": 23878, - "climat": 37283, - "climate": 7854, - "climate": 4589, - "climateaction": 31622, - "climatechange": 11055, - "climates": 46022, - "climax": 37033, - "climb": 7421, - "climb": 10649, - "climbed": 22528, - "climber": 36910, - "climbers": 47648, - "climbing": 9877, - "climbs": 29098, - "clin": 2879, - "clinch": 30404, - "clinched": 44064, - "cline": 37460, - "cling": 37068, - "cling": 4760, - "clinic": 7926, - "clinical": 35133, - "clinical": 9148, - "clinicians": 45866, - "clinics": 23330, - "clint": 37542, - "clint": 21160, - "clinton": 34403, - "clinton": 5820, - "clio": 46889, - "clip": 39712, - "clip": 9289, - "clipped": 45524, - "clipper": 42245, - "clippers": 23319, - "clipping": 47484, - "clips": 16594, - "clique": 34983, - "clive": 36086, - "clive": 21509, - "cll": 46091, - "cllr": 45743, - "cllr": 23034, - "clo": 1194, - "cloak": 36528, - "clock": 19878, - "clock": 6716, - "clocked": 49049, - "clocks": 25895, - "clockwise": 46150, - "clockwork": 42297, - "clon": 24477, - "clone": 22854, - "clones": 48047, - "clooney": 33161, - "clos": 48821, - "close": 10603, - "close": 2660, - "closed": 4552, - "closely": 13478, - "closer": 6377, - "closes": 11354, - "closest": 14975, - "closet": 14221, - "closeup": 35439, - "closing": 7101, - "closure": 13249, - "closures": 22923, - "cloth": 14559, - "clothes": 7080, - "clothing": 7425, - "clou": 4069, - "cloud": 12965, - "cloud": 3887, - "cloudcomputing": 41390, - "clouds": 6244, - "cloudy": 13106, - "clough": 42909, - "clover": 39574, - "clover": 22812, - "clow": 18386, - "clown": 15329, - "clowns": 30820, - "cls": 44251, - "clt": 29651, - "clt": 24236, - "clu": 996, - "club": 9642, - "club": 1736, - "clubbing": 48128, - "clubhouse": 26553, - "clubs": 9437, - "clue": 14994, - "clueless": 35350, - "clues": 23764, - "clusive": 41362, - "cluster": 15595, - "clusters": 33217, - "clut": 28507, - "clutch": 13953, - "clutter": 40804, - "cly": 12037, - "clyde": 39557, - "clyde": 18469, - "cm": 10190, - "cm": 3741, - "cma": 30554, - "cma": 31388, - "cmc": 45839, - "cmdr": 48250, - "cme": 34946, - "cmo": 24589, - "cmon": 42904, - "cmp": 46355, - "cms": 22520, - "cmt": 42727, - "cmu": 43046, - "cn": 3886, - "cn": 16200, - "cna": 48287, - "cnbc": 41242, - "cnbc": 24371, - "cnblue": 36018, - "cnc": 20571, - "cnet": 47487, - "cnews": 24319, - "cng": 41496, - "cnn": 22405, - "cnn": 8259, - "cns": 46095, - "cny": 31614, - "co": 622, - "co": 1320, - "coa": 29167, - "coach": 3275, - "coach": 2312, - "coached": 30228, - "coachella": 20222, - "coaches": 6924, - "coaching": 7766, - "coal": 10227, - "coal": 7919, - "coalition": 12920, - "coast": 6398, - "coast": 3720, - "coastal": 38246, - "coastal": 10852, - "coaster": 15944, - "coasters": 31548, - "coastguard": 40601, - "coastline": 27959, - "coasts": 42225, - "coat": 28869, - "coat": 7356, - "coated": 23401, - "coates": 36899, - "coating": 25369, - "coatings": 48706, - "coats": 18075, - "cob": 20140, - "cob": 32863, - "cobain": 36866, - "cobalt": 30896, - "cobb": 22719, - "cobble": 47894, - "cobra": 21574, - "coc": 23036, - "coc": 39498, - "coca": 21197, - "cocac": 26393, - "cocacola": 31248, - "cocaine": 20534, - "coch": 18599, - "cochran": 48798, - "cochrane": 41752, - "coco": 11850, - "coco": 13316, - "cocoa": 18074, - "cocon": 8597, - "coconut": 9581, - "cod": 16132, - "cod": 11915, - "code": 11582, - "code": 3217, - "coded": 33703, - "coden": 43914, - "coder": 41561, - "codes": 14566, - "codi": 39711, - "coding": 12647, - "cody": 23222, - "cody": 12666, - "coe": 15386, - "coed": 41028, - "coel": 45633, - "coer": 41198, - "coeur": 44986, - "coffe": 2255, - "coffee": 12898, - "coffee": 2453, - "coffees": 41184, - "coffey": 48066, - "cofficial": 18757, - "coffin": 29907, - "cog": 26362, - "cog": 35960, - "cogn": 12210, - "cognac": 44361, - "cognition": 46825, - "cognitive": 16584, - "cohe": 20669, - "cohen": 13381, - "coherent": 48450, - "cohort": 22782, - "coil": 25307, - "coim": 41528, - "coin": 14651, - "coin": 4170, - "coinci": 14015, - "coincidence": 19807, - "coins": 10530, - "coke": 39602, - "coke": 14035, - "col": 754, - "col": 9371, - "cola": 15444, - "colbert": 31647, - "colby": 32068, - "colchester": 31715, - "cold": 11146, - "cold": 3153, - "colder": 23859, - "coldest": 31438, - "coldplay": 27770, - "cole": 9305, - "cole": 8166, - "coleman": 15774, - "coles": 40265, - "coles": 30398, - "coli": 18877, - "coli": 15910, - "colin": 20989, - "colin": 10238, - "coliseum": 21836, - "coll": 25982, - "coll": 23898, - "colla": 2929, - "collab": 14013, - "collabor": 4437, - "collaborate": 21271, - "collaborated": 42265, - "collaborating": 25545, - "collaboration": 6642, - "collaborations": 36520, - "collaborative": 15841, - "collaborator": 48186, - "collaborators": 45901, - "collage": 11258, - "collagen": 36120, - "collap": 16881, - "collapse": 16520, - "collapsed": 25037, - "collapses": 43601, - "collar": 39662, - "collar": 13497, - "collateral": 44512, - "colle": 1801, - "colleague": 13067, - "colleagues": 8203, - "collec": 1733, - "collect": 10186, - "collected": 11980, - "collecti": 18530, - "collectible": 25680, - "collectibles": 21519, - "collecting": 10325, - "collection": 2548, - "collections": 12760, - "collective": 10162, - "collectively": 40687, - "collector": 13522, - "collectors": 20540, - "collects": 31576, - "colleen": 31020, - "college": 13512, - "college": 2229, - "colleges": 17357, - "collegi": 16311, - "collegiate": 18068, - "colli": 8262, - "collide": 27214, - "collie": 30611, - "collier": 35748, - "collin": 24056, - "collin": 32116, - "colling": 32319, - "collingwood": 45873, - "collins": 8684, - "collision": 15407, - "collo": 25115, - "colloqui": 37243, - "colloquium": 46514, - "collu": 25658, - "collusion": 33864, - "colo": 7300, - "colo": 27288, - "cologne": 22216, - "cology": 19187, - "colom": 8987, - "colombia": 12901, - "colombian": 28701, - "colombo": 33207, - "colon": 8280, - "colon": 29050, - "colonel": 22674, - "coloni": 22667, - "colonial": 16530, - "colonialism": 43385, - "colonies": 38738, - "colony": 18767, - "color": 4036, - "color": 3140, - "colorado": 34580, - "colorado": 6742, - "colorec": 41171, - "colored": 11775, - "colorful": 11444, - "colori": 28764, - "coloring": 17696, - "colorized": 46730, - "colors": 5389, - "colorstv": 28195, - "colorway": 44576, - "colossal": 40258, - "colosse": 48142, - "colossus": 34022, - "colour": 10240, - "colour": 4769, - "coloured": 17111, - "colourful": 15562, - "colouring": 31803, - "colours": 7626, - "cols": 35726, - "colt": 19726, - "colton": 32249, - "coltrane": 42333, - "colts": 16135, - "colum": 4164, - "columb": 31043, - "columbi": 25947, - "columbia": 9410, - "columbus": 11273, - "column": 10593, - "columnist": 28958, - "columns": 29056, - "com": 610, - "com": 2464, - "coma": 19620, - "comb": 3587, - "comb": 16380, - "combat": 35083, - "combat": 9275, - "combating": 46121, - "combe": 14363, - "combin": 25112, - "combination": 11312, - "combinations": 34950, - "combine": 12919, - "combined": 10427, - "combines": 22991, - "combining": 23561, - "combo": 10155, - "combos": 48117, - "combs": 30694, - "combu": 35629, - "combustion": 44654, - "comcast": 30043, - "come": 4225, - "come": 891, - "comeback": 8234, - "comedian": 13848, - "comedians": 33758, - "comedic": 43360, - "comedy": 19346, - "comedy": 4749, - "comer": 42997, - "comer": 20916, - "comers": 34436, - "comes": 2091, - "comet": 21405, - "comets": 40636, - "comey": 22957, - "comfor": 6563, - "comfort": 44000, - "comfort": 7808, - "comfortable": 8652, - "comfortably": 30392, - "comforting": 33835, - "comforts": 42243, - "comfy": 15736, - "comi": 40781, - "comic": 7729, - "comic": 4962, - "comicart": 46018, - "comicbook": 46564, - "comicbooks": 22018, - "comiccon": 18379, - "comicon": 43820, - "comics": 4256, - "comin": 18164, - "coming": 14916, - "coming": 1171, - "comingsoon": 19894, - "comm": 965, - "comm": 11413, - "comman": 39780, - "command": 18391, - "command": 11350, - "commander": 11265, - "commanders": 41667, - "commanding": 36933, - "commandments": 43409, - "commando": 31361, - "commands": 38163, - "comme": 29692, - "commemor": 9495, - "commemorate": 21242, - "commemorates": 45149, - "commemorating": 28734, - "commemoration": 29288, - "commemorative": 24623, - "commen": 15795, - "commence": 25059, - "commenced": 43908, - "commencement": 21666, - "commences": 48551, - "commend": 37555, - "commended": 40702, - "comment": 20035, - "comment": 5761, - "commentary": 14146, - "commentator": 32016, - "commented": 28328, - "commenting": 37292, - "comments": 6606, - "commer": 4028, - "commerce": 8333, - "commerci": 15601, - "commercial": 31802, - "commercial": 6287, - "commercials": 30724, - "commish": 45399, - "commissi": 6000, - "commission": 5292, - "commissioned": 16565, - "commissioner": 10221, - "commissioners": 30702, - "commissioning": 29585, - "commissions": 20668, - "commit": 3041, - "commit": 11797, - "commitment": 7770, - "commitments": 32136, - "commits": 20241, - "committed": 7907, - "committee": 5636, - "committees": 40504, - "committing": 21937, - "commod": 9496, - "commodities": 30350, - "commodity": 29041, - "commodore": 31129, - "common": 8414, - "common": 4176, - "commonly": 20344, - "commons": 16653, - "commonwealth": 16569, - "comms": 18832, - "commu": 9561, - "commun": 1515, - "communal": 32809, - "communi": 16164, - "communic": 4784, - "communicate": 19809, - "communication": 7999, - "communications": 10052, - "communion": 28579, - "communism": 35387, - "communist": 18602, - "communities": 6361, - "community": 14784, - "community": 1927, - "commute": 15898, - "commuter": 27782, - "commuters": 30823, - "commuting": 43503, - "como": 16236, - "comp": 2561, - "comp": 11679, - "compac": 40014, - "compact": 13690, - "compan": 1995, - "companies": 5361, - "companion": 14963, - "companions": 37124, - "company": 2634, - "compar": 7580, - "comparable": 27092, - "comparative": 33388, - "compare": 13771, - "compared": 10544, - "compares": 25104, - "comparing": 20564, - "comparison": 14186, - "comparisons": 40870, - "compart": 30072, - "compartment": 40383, - "compass": 19438, - "compassion": 14463, - "compassionate": 30193, - "compati": 17295, - "compatibility": 41614, - "compatible": 21286, - "compe": 5254, - "compelled": 49375, - "compelling": 21766, - "compen": 42079, - "compens": 15172, - "compensation": 18663, - "compet": 2932, - "compete": 10038, - "competed": 27767, - "competen": 31853, - "competence": 31165, - "competency": 49293, - "competent": 28113, - "competes": 39826, - "competing": 13068, - "competit": 15892, - "competiti": 32581, - "competition": 3742, - "competitions": 23259, - "competitive": 10687, - "competitiveness": 43209, - "competitor": 26633, - "competitors": 23638, - "compilation": 20446, - "compiled": 34579, - "compla": 7428, - "complain": 19292, - "complained": 42029, - "complaining": 20812, - "complains": 46363, - "complaint": 20391, - "complaints": 20020, - "comple": 1730, - "complement": 36624, - "complementary": 48953, - "complete": 3263, - "completed": 5976, - "completely": 5989, - "completes": 19321, - "completing": 14949, - "completion": 15915, - "complex": 16099, - "complex": 6324, - "complexes": 47870, - "complexion": 47732, - "complexity": 24815, - "compli": 5270, - "compliance": 14658, - "compliant": 29893, - "complic": 11460, - "complicated": 16621, - "complications": 29936, - "compliment": 25116, - "complimentary": 20948, - "compliments": 25477, - "comply": 36281, - "component": 21284, - "components": 16816, - "compos": 7783, - "compose": 43659, - "composed": 19916, - "composer": 12104, - "composers": 33314, - "composing": 40412, - "composite": 21606, - "composites": 45395, - "composition": 17510, - "compositions": 44652, - "compost": 46002, - "compost": 33307, - "compound": 19980, - "compounds": 33991, - "compre": 8483, - "compreh": 42976, - "comprehen": 12050, - "comprehend": 48230, - "comprehensive": 13854, - "compress": 33353, - "compressed": 42359, - "compression": 25638, - "compressor": 39607, - "compri": 29445, - "compromise": 26611, - "compromised": 38576, - "compromising": 45436, - "comps": 48665, - "compton": 28364, - "compu": 11639, - "compul": 25869, - "compulsory": 39345, - "computing": 12732, - "comra": 25553, - "comrade": 30844, - "comrades": 29282, - "coms": 30493, - "con": 616, - "con": 2457, - "cona": 30605, - "conan": 24750, - "conce": 9145, - "concealed": 35419, - "conceded": 37895, - "conceived": 39725, - "concentr": 11085, - "concentrate": 30846, - "concentrated": 36776, - "concentration": 18565, - "concep": 8389, - "concepcion": 47035, - "concept": 6353, - "conceptart": 31162, - "conception": 30510, - "conceptions": 40307, - "concepts": 16763, - "conceptu": 42745, - "conceptual": 34070, - "concer": 2228, - "concern": 12928, - "concerned": 12020, - "concerning": 21772, - "concerns": 11134, - "concert": 32180, - "concert": 3066, - "concerto": 24710, - "concerts": 14418, - "concession": 38117, - "concessions": 43981, - "concier": 28859, - "concierge": 39850, - "conclave": 38098, - "conclu": 9627, - "conclude": 37525, - "concluded": 27825, - "concludes": 30634, - "conclusion": 20932, - "conclusions": 39507, - "conco": 43034, - "concor": 19913, - "concord": 26448, - "concordia": 35492, - "concours": 36282, - "concourse": 37793, - "concre": 43658, - "concrete": 9637, - "concussion": 28321, - "condem": 13287, - "condemn": 27212, - "condemned": 35145, - "condemns": 32092, - "conden": 24816, - "conditi": 11170, - "condition": 36978, - "condition": 7336, - "conditional": 24671, - "conditioned": 37014, - "conditioner": 31239, - "conditioning": 18181, - "conditions": 5892, - "condo": 19952, - "condol": 18661, - "condolences": 20836, - "condom": 39021, - "condomin": 42589, - "condoms": 37878, - "condor": 47643, - "condos": 42342, - "condu": 40772, - "conduc": 5379, - "conduct": 11647, - "conducted": 13080, - "conducting": 16787, - "conductor": 22317, - "conducts": 32084, - "cone": 39279, - "cone": 10266, - "cones": 26718, - "coney": 41837, - "conf": 6477, - "confe": 1968, - "confeder": 17104, - "confederate": 24864, - "confederation": 43484, - "conferen": 37961, - "conference": 2230, - "conferences": 22811, - "conferencing": 47320, - "confess": 38860, - "confession": 22572, - "confessions": 29404, - "confetti": 37923, - "confi": 5005, - "confidence": 8510, - "confident": 12365, - "confidential": 28712, - "configu": 46746, - "configur": 26950, - "configuration": 33378, - "confin": 45316, - "confined": 40973, - "confir": 3930, - "confirm": 12130, - "confirmation": 19645, - "confirmed": 6346, - "confirming": 38433, - "confirms": 11803, - "confis": 36285, - "confit": 42241, - "confl": 8173, - "conflic": 19029, - "conflict": 10397, - "conflicting": 43894, - "conflicts": 28713, - "confor": 40933, - "confron": 20033, - "confront": 38382, - "confrontation": 41478, - "confu": 6890, - "confuse": 37503, - "confused": 10946, - "confusing": 24683, - "confusion": 20493, - "cong": 24407, - "conge": 20013, - "congestion": 24432, - "congo": 20334, - "congr": 1227, - "congrats": 1887, - "congratul": 1750, - "congratulate": 16633, - "congratulated": 42004, - "congratulates": 24580, - "congratulating": 30967, - "congratulation": 24751, - "congratulations": 1864, - "congre": 7947, - "congreg": 40727, - "congregation": 32618, - "congress": 12452, - "congress": 4599, - "congressional": 15239, - "congressman": 17145, - "congresswoman": 37317, - "coni": 39031, - "coni": 36651, - "conj": 41543, - "conju": 33821, - "conjunction": 34226, - "conley": 44536, - "conline": 37593, - "conn": 41836, - "conn": 20329, - "conne": 8437, - "connec": 29933, - "connect": 19969, - "connected": 27506, - "connecting": 41429, - "connection": 26840, - "connections": 37161, - "connie": 25739, - "connoisse": 46012, - "connol": 27739, - "connolly": 29537, - "connor": 21984, - "connor": 10218, - "conom": 2664, - "conomy": 22529, - "conor": 29955, - "conor": 19478, - "conqu": 13382, - "conquer": 38585, - "conquer": 19821, - "conquered": 27099, - "conquering": 43778, - "conquest": 35367, - "conrad": 22073, - "cons": 10311, - "consci": 9427, - "conscience": 27310, - "conscious": 14914, - "consciously": 46755, - "consciousness": 17894, - "conse": 34887, - "consecu": 12084, - "consecutive": 12413, - "consen": 23110, - "consensus": 25071, - "consent": 21922, - "consequ": 13003, - "consequence": 42262, - "consequences": 15682, - "conserv": 4649, - "conservancy": 46729, - "conservation": 37616, - "conservation": 8322, - "conservative": 11421, - "conservatives": 17631, - "conservatory": 32140, - "conserve": 34231, - "consi": 2899, - "consider": 12471, - "consider": 6734, - "considerable": 38256, - "considerably": 38510, - "consideration": 24310, - "considerations": 33700, - "considered": 9487, - "considering": 10761, - "considers": 24691, - "consist": 10410, - "consist": 33735, - "consisted": 49354, - "consistency": 25683, - "consistent": 16439, - "consistently": 23799, - "consisting": 39241, - "consists": 23458, - "consol": 27869, - "consolation": 38888, - "console": 13403, - "consoles": 33136, - "consoli": 21586, - "consolidation": 41111, - "consor": 27108, - "consortium": 29988, - "conspir": 12680, - "conspiracy": 15236, - "const": 3826, - "constable": 29179, - "constan": 38718, - "constance": 40682, - "constant": 32000, - "constant": 13111, - "constantine": 30640, - "constantly": 14336, - "constell": 21913, - "constellation": 25991, - "constitu": 6299, - "constituency": 22464, - "constituents": 32075, - "constitution": 12157, - "constitutional": 16091, - "constra": 28973, - "constraints": 41910, - "constru": 3983, - "construc": 13321, - "construct": 24467, - "constructed": 16876, - "constructing": 33653, - "construction": 48873, - "construction": 4585, - "constructive": 31810, - "consu": 4689, - "consul": 5295, - "consul": 33630, - "consulate": 34341, - "consult": 9438, - "consult": 26727, - "consultancy": 31735, - "consultant": 14196, - "consultants": 27203, - "consultation": 15777, - "consultations": 43424, - "consulting": 15883, - "consume": 28919, - "consumed": 29653, - "consumer": 34408, - "consumer": 10422, - "consumers": 14014, - "consuming": 30607, - "consumption": 14904, - "cont": 2036, - "cont": 21425, - "contact": 39367, - "contact": 3523, - "contacted": 37331, - "contacts": 22789, - "contag": 29259, - "contagious": 33984, - "contain": 9948, - "contain": 15187, - "contained": 23836, - "container": 14913, - "containers": 20448, - "containing": 20281, - "contains": 12844, - "contamin": 24662, - "contaminated": 35773, - "contamination": 31770, - "conte": 15402, - "conte": 26882, - "contempl": 21924, - "contemplating": 33854, - "contempor": 14538, - "contemporary": 16607, - "contemporary": 8859, - "contemporaryart": 20212, - "contempt": 39293, - "conten": 42201, - "contender": 23573, - "contenders": 29711, - "content": 15526, - "content": 4750, - "contentmarketing": 20429, - "contents": 14850, - "contest": 23103, - "contest": 4576, - "contestalert": 27313, - "contestant": 25682, - "contestants": 28062, - "contested": 37845, - "contests": 32210, - "contex": 42015, - "context": 13089, - "conti": 46431, - "conti": 40842, - "contin": 1918, - "continent": 19623, - "continental": 14089, - "continents": 38642, - "conting": 27104, - "contingent": 36467, - "continu": 4688, - "continually": 34086, - "continuation": 38964, - "continue": 3942, - "continued": 10150, - "continues": 4305, - "continuing": 11009, - "continuity": 34035, - "continuous": 17033, - "continuously": 29634, - "continuum": 44978, - "contour": 34733, - "contr": 22871, - "contra": 9880, - "contra": 38620, - "contrac": 7581, - "contracep": 35109, - "contract": 6120, - "contracting": 39091, - "contractor": 21429, - "contractors": 22427, - "contracts": 16563, - "contradic": 27957, - "contrary": 32805, - "contrast": 18501, - "contrasting": 40758, - "contribu": 4753, - "contribute": 14112, - "contributed": 19397, - "contributes": 34203, - "contributing": 21762, - "contribution": 11116, - "contributions": 14465, - "contributor": 24553, - "contributors": 32908, - "contro": 2372, - "control": 9963, - "control": 3366, - "controlled": 14140, - "controller": 12929, - "controllers": 30374, - "controlling": 26427, - "controls": 15746, - "controversi": 13674, - "controversial": 14617, - "controversy": 18659, - "conv": 48382, - "conve": 18421, - "conven": 7283, - "conveni": 33278, - "convenience": 17859, - "convenient": 18978, - "conveniently": 40844, - "convention": 6752, - "conventional": 20835, - "conventions": 41404, - "conver": 6336, - "convergence": 35381, - "convers": 4577, - "conversation": 5690, - "conversations": 12326, - "converse": 24149, - "conversion": 15111, - "conversions": 44137, - "convert": 20074, - "converted": 20808, - "converter": 34611, - "convertible": 19608, - "converting": 34674, - "converts": 42470, - "convey": 38342, - "convic": 11150, - "convicted": 18668, - "conviction": 24967, - "convictions": 44366, - "convin": 12889, - "convince": 20351, - "convinced": 17388, - "convincing": 27742, - "convo": 19372, - "convocation": 30674, - "convos": 44842, - "convoy": 30292, - "conway": 21410, - "conwy": 48971, - "cony": 14501, - "coo": 1664, - "coo": 21691, - "coogs": 47624, - "cook": 9726, - "cook": 5977, - "cookbook": 21086, - "cooke": 29979, - "cooked": 11452, - "cooker": 23806, - "cookery": 38779, - "cookie": 9367, - "cookies": 8320, - "cookin": 46610, - "cooking": 39248, - "cooking": 6283, - "cookout": 39743, - "cooks": 24256, - "cool": 5594, - "cool": 2077, - "cooled": 37170, - "cooler": 11078, - "coolest": 10566, - "cooling": 15291, - "coom": 41726, - "coon": 34260, - "coon": 16958, - "coop": 39917, - "coop": 18910, - "cooper": 7264, - "cooper": 8133, - "cooperate": 42936, - "cooperation": 11785, - "cooperative": 24517, - "coops": 48531, - "coordin": 8187, - "coordinate": 38250, - "coordinated": 32540, - "coordinating": 40075, - "coordination": 25611, - "coordinator": 13967, - "coors": 36025, - "cop": 3196, - "cop": 7070, - "copa": 22749, - "copd": 45876, - "cope": 47635, - "cope": 12564, - "copeland": 37604, - "copen": 15637, - "copenhagen": 17390, - "coper": 41891, - "copernic": 45519, - "copied": 36770, - "copies": 9851, - "coping": 30545, - "copolitics": 45846, - "copp": 20937, - "copped": 42229, - "copper": 24741, - "copper": 10333, - "coppola": 47427, - "cops": 10719, - "copter": 28049, - "copy": 11376, - "copy": 4509, - "copying": 38925, - "copyright": 15778, - "cor": 851, - "cor": 18559, - "cora": 34953, - "coral": 31220, - "coral": 12054, - "corbett": 35699, - "corbin": 35578, - "corbyn": 14026, - "cord": 40893, - "cord": 11181, - "corden": 41999, - "cordi": 41681, - "cordless": 44412, - "cords": 22164, - "core": 19622, - "core": 5000, - "cores": 37874, - "corey": 31279, - "corey": 15288, - "corgi": 31320, - "cori": 26508, - "coriander": 37491, - "corin": 17716, - "corinthians": 34471, - "cork": 18148, - "cork": 10376, - "corn": 5202, - "corn": 5894, - "cornelius": 45865, - "cornell": 38689, - "cornell": 20859, - "corner": 18509, - "corner": 5253, - "corners": 19584, - "cornerstone": 36280, - "cornish": 23774, - "cornwall": 37903, - "cornwall": 10777, - "coron": 13210, - "corona": 25564, - "coronado": 43946, - "coronary": 45955, - "coronation": 25014, - "coroner": 47241, - "corp": 29203, - "corp": 10918, - "corpor": 4258, - "corporal": 42445, - "corporate": 33877, - "corporate": 6838, - "corporation": 11282, - "corporations": 25482, - "corps": 11330, - "corpse": 29408, - "corpus": 31672, - "correc": 5011, - "correct": 8340, - "corrected": 35628, - "correction": 20843, - "correctional": 38030, - "corrections": 37507, - "correctly": 15359, - "correlation": 29218, - "correspon": 20203, - "correspondent": 29996, - "corri": 12974, - "corridor": 20592, - "corrie": 23961, - "corro": 24936, - "corro": 42033, - "corrosion": 39191, - "corru": 6501, - "corrup": 30429, - "corrupt": 15194, - "corruption": 9141, - "corsa": 47670, - "corsair": 42367, - "corset": 40408, - "cortex": 40109, - "cortez": 30461, - "corvette": 24367, - "cory": 23221, - "cory": 18329, - "cos": 5865, - "cos": 5700, - "cosby": 30324, - "cosc": 45944, - "coscino": 47909, - "cose": 26495, - "cosm": 37486, - "cosme": 9628, - "cosmetic": 23918, - "cosmetics": 12896, - "cosmic": 47398, - "cosmic": 18304, - "cosmo": 12829, - "cosmo": 32072, - "cosmopolitan": 35518, - "cosmos": 22151, - "cospla": 15149, - "cosplay": 42401, - "cosplay": 6435, - "cosplayer": 30215, - "cosplaying": 46701, - "cost": 11360, - "cost": 4713, - "costa": 10480, - "costar": 28659, - "costarica": 31272, - "costco": 31045, - "costello": 30667, - "costing": 39193, - "costly": 30170, - "costs": 7628, - "costu": 5786, - "costume": 7235, - "costumes": 15150, - "cosy": 22848, - "cot": 4718, - "cot": 5871, - "cote": 44234, - "cote": 20751, - "cotland": 32576, - "cotsw": 23303, - "cotswolds": 35546, - "cott": 8211, - "cott": 11349, - "cottage": 12155, - "cottages": 34405, - "cotton": 22218, - "cotton": 7050, - "cou": 1368, - "couch": 12724, - "cougar": 35028, - "cougar": 27042, - "cougars": 20425, - "cough": 35631, - "cough": 18498, - "cougs": 28482, - "coul": 22483, - "could": 44812, - "could": 1510, - "couldn": 4072, - "couldnt": 29042, - "coulter": 42291, - "coun": 939, - "counc": 12927, - "council": 18187, - "council": 3620, - "councill": 15732, - "councillor": 21179, - "councillors": 29695, - "councilman": 40833, - "councils": 29938, - "counsel": 13780, - "counsel": 19814, - "counseling": 25000, - "counsell": 47510, - "counselling": 40581, - "counselor": 26148, - "counselors": 38688, - "count": 6073, - "count": 5887, - "countdown": 39559, - "countdown": 7500, - "counted": 23149, - "counter": 10134, - "counter": 7352, - "counterfe": 33067, - "counterfeit": 44242, - "counterpart": 39216, - "counterparts": 42106, - "counters": 46170, - "countess": 46276, - "counties": 12338, - "counting": 9723, - "countless": 21819, - "countries": 5489, - "country": 7896, - "country": 2157, - "countryfile": 47023, - "countrymusic": 30372, - "countryside": 16303, - "counts": 12264, - "county": 18734, - "county": 2116, - "coup": 9871, - "coup": 16479, - "coupe": 16773, - "couple": 40136, - "couple": 3377, - "coupled": 37153, - "couples": 14752, - "coupling": 45595, - "coupon": 14019, - "coupons": 23945, - "cour": 1391, - "coura": 4436, - "courage": 9828, - "courageous": 25005, - "courier": 27217, - "cours": 21493, - "course": 43225, - "course": 2613, - "courses": 9464, - "court": 16837, - "court": 2908, - "courte": 5088, - "courtesy": 5228, - "courthouse": 22205, - "courtney": 33601, - "courtney": 15990, - "courtroom": 41071, - "courts": 13514, - "courty": 20121, - "courtyard": 21900, - "cous": 48397, - "cousin": 7780, - "cousins": 14073, - "cout": 29118, - "coutinho": 35530, - "couture": 14808, - "cov": 19384, - "cov": 48385, - "cove": 21700, - "cove": 14708, - "coven": 12483, - "covenant": 29647, - "coventry": 18007, - "cover": 13534, - "cover": 2202, - "coverage": 6810, - "covered": 5603, - "covering": 9462, - "covers": 7745, - "covert": 40134, - "coveted": 36119, - "covington": 43196, - "cow": 5076, - "cow": 9706, - "cowan": 42699, - "coward": 33729, - "cowards": 48972, - "cowboy": 25833, - "cowboy": 13657, - "cowboys": 11864, - "cowboysnation": 43082, - "cowell": 39015, - "cowgirl": 47090, - "coworker": 30727, - "coworkers": 30821, - "coworking": 36034, - "cows": 15204, - "cowx": 23831, - "cox": 25784, - "cox": 11597, - "coy": 12765, - "coy": 15742, - "coyi": 48407, - "coyle": 45348, - "coyne": 44729, - "coyo": 16614, - "coyote": 26586, - "coyotes": 30423, - "coys": 19736, - "coz": 39922, - "coz": 14282, - "cozy": 14873, - "cp": 7905, - "cp": 9130, - "cpa": 30095, - "cpac": 45731, - "cpc": 26125, - "cpd": 23402, - "cpec": 48007, - "cpfc": 27553, - "cpi": 41795, - "cpl": 26852, - "cpr": 25134, - "cps": 27078, - "cpt": 32892, - "cpu": 27700, - "cq": 48910, - "cq": 48417, - "cr": 1075, - "cr": 3483, - "cra": 1184, - "cra": 18362, - "crab": 27382, - "crab": 11574, - "crabs": 30908, - "crack": 11222, - "crack": 10334, - "crackdown": 29527, - "cracked": 19826, - "cracker": 16298, - "crackers": 26200, - "cracking": 13008, - "cracks": 21426, - "cracy": 24749, - "cradle": 29384, - "crae": 40438, - "craf": 10873, - "craft": 7717, - "craft": 3588, - "craftbeer": 12371, - "crafted": 12424, - "crafthour": 42324, - "crafting": 26886, - "crafts": 33276, - "crafts": 13383, - "craftsman": 39528, - "craftsmanship": 36682, - "crafty": 32317, - "craic": 46962, - "craig": 14042, - "craig": 8061, - "craigslist": 43865, - "cram": 29809, - "cramer": 44592, - "cramps": 46106, - "cran": 7761, - "cranberries": 49361, - "cranberry": 23824, - "crane": 14626, - "cranes": 26979, - "crani": 45674, - "crank": 46246, - "crank": 32283, - "cranston": 44340, - "crap": 11899, - "crappy": 30475, - "crash": 37150, - "crash": 5033, - "crashed": 16638, - "crashes": 17013, - "crashing": 24991, - "crat": 46696, - "crate": 24756, - "crater": 22663, - "crates": 30172, - "cratic": 32175, - "crative": 39999, - "crats": 43056, - "crave": 33397, - "craven": 33625, - "craving": 18344, - "cravings": 34476, - "craw": 7400, - "crawfish": 42772, - "crawford": 15918, - "crawl": 20106, - "crawler": 41012, - "crawley": 42316, - "crawling": 37066, - "cray": 24184, - "cray": 27032, - "crayon": 41801, - "crayons": 43508, - "craz": 25776, - "craze": 30637, - "craziest": 32690, - "craziness": 46436, - "crazy": 17540, - "crazy": 3578, - "crc": 25618, - "cre": 798, - "cre": 17762, - "cream": 23184, - "cream": 3867, - "creams": 41447, - "creamy": 17206, - "crease": 48441, - "create": 30949, - "create": 3380, - "created": 4080, - "creates": 10361, - "creati": 6714, - "creating": 5524, - "creation": 38293, - "creation": 6900, - "creations": 17411, - "creative": 15237, - "creative": 4450, - "creatives": 29352, - "creativity": 9636, - "creator": 10173, - "creators": 17981, - "creature": 14317, - "creatures": 13938, - "cred": 7314, - "cred": 22377, - "credenti": 29487, - "credentials": 33422, - "credi": 21097, - "credibility": 34984, - "credible": 32983, - "credit": 21467, - "credit": 3900, - "credited": 32480, - "credits": 10654, - "creds": 43462, - "cree": 33961, - "cree": 36014, - "creed": 18845, - "creek": 26120, - "creek": 5526, - "creep": 8153, - "creep": 26084, - "creeper": 38662, - "creeping": 29697, - "creeps": 45135, - "creepy": 11943, - "creighton": 42823, - "creme": 22681, - "creole": 45632, - "crepe": 38611, - "crescent": 18211, - "cress": 39124, - "crest": 35985, - "crest": 15760, - "crested": 36656, - "crete": 8584, - "crew": 21560, - "crew": 3462, - "crewe": 43284, - "crews": 10463, - "cri": 1621, - "cri": 38962, - "crib": 23271, - "cric": 4328, - "cricke": 19098, - "cricket": 21859, - "cricket": 5373, - "cricketer": 28439, - "cricketers": 43986, - "cried": 15290, - "cries": 19769, - "crime": 13872, - "crime": 4896, - "crimea": 28614, - "crimes": 11827, - "crimin": 5874, - "criminal": 30197, - "criminal": 8255, - "criminals": 18783, - "crimson": 19437, - "cringe": 42588, - "cripp": 33588, - "cris": 37818, - "crises": 36403, - "crisis": 5712, - "crisp": 15145, - "crispr": 39784, - "crisps": 35744, - "crispy": 16458, - "criss": 29708, - "cristi": 12699, - "cristian": 48808, - "cristiano": 14807, - "cristina": 33395, - "cristo": 38315, - "crit": 3613, - "crit": 48130, - "criteri": 33627, - "criteria": 24849, - "criterion": 43841, - "criti": 25333, - "critic": 12417, - "critic": 19361, - "critical": 15314, - "critical": 6808, - "critically": 21570, - "criticalrole": 33606, - "criticalrole": 22742, - "criticalrolefanart": 43663, - "critici": 20333, - "criticism": 17405, - "criticize": 46081, - "criticized": 41557, - "critics": 16946, - "critique": 32982, - "critters": 35423, - "crm": 22610, - "cro": 1192, - "cro": 22522, - "croati": 28072, - "croatia": 13323, - "croatian": 34795, - "croc": 43350, - "croche": 35352, - "crochet": 17554, - "crock": 41685, - "crocker": 47843, - "crockett": 48313, - "crocod": 24519, - "crocodile": 24757, - "crocs": 38988, - "croft": 16657, - "croissant": 46011, - "croix": 44735, - "crom": 25082, - "crombie": 46162, - "cromwell": 45345, - "cron": 17361, - "croo": 16443, - "crook": 43744, - "crooked": 48473, - "crooked": 25644, - "crooks": 44226, - "crop": 40751, - "crop": 9955, - "cropped": 31139, - "crops": 16290, - "crore": 18274, - "crores": 37281, - "cros": 16670, - "crosby": 21095, - "cross": 5266, - "cross": 3417, - "crossed": 11731, - "crosses": 20473, - "crossfit": 47214, - "crossfit": 20395, - "crossing": 8673, - "crossings": 43517, - "crossover": 17194, - "crossroads": 27427, - "crossword": 32945, - "crou": 31206, - "crouch": 36506, - "crow": 3138, - "crow": 16019, - "crowd": 12036, - "crowd": 4570, - "crowded": 20182, - "crowdfunding": 17971, - "crowds": 16092, - "crowe": 33560, - "crowley": 32287, - "crown": 22190, - "crown": 6902, - "crowned": 16109, - "crowns": 33229, - "crows": 27134, - "croy": 21676, - "croydon": 27116, - "crs": 28449, - "crt": 43877, - "cru": 1815, - "cru": 29788, - "cruci": 18499, - "crucial": 12396, - "crude": 20677, - "cruel": 16073, - "cruel": 17573, - "cruelty": 20675, - "cruis": 27721, - "cruise": 36425, - "cruise": 6764, - "cruiser": 21394, - "cruises": 19214, - "cruising": 19743, - "crum": 43268, - "crumb": 48327, - "crumb": 39909, - "crumble": 36595, - "crumbs": 35893, - "crun": 17407, - "crunch": 16620, - "crunchy": 31366, - "crusad": 19133, - "crusade": 36846, - "crusader": 40171, - "crusaders": 31319, - "crush": 22296, - "crush": 7610, - "crushed": 18270, - "crusher": 44923, - "crushes": 35844, - "crushing": 20790, - "crust": 23136, - "crusted": 37314, - "cruz": 33689, - "cruz": 8403, - "cry": 2837, - "cry": 6290, - "crying": 6828, - "cryo": 32215, - "cryp": 4865, - "crypt": 37814, - "cryptic": 46925, - "crypto": 8080, - "crypto": 9608, - "cryptocurrencies": 33329, - "cryptocurrency": 12070, - "cryst": 15891, - "crystal": 17387, - "crystal": 6517, - "crystalli": 47551, - "crystals": 18350, - "cs": 11978, - "cs": 2804, - "csa": 26355, - "csc": 41727, - "csc": 37266, - "csd": 36913, - "cse": 41659, - "csg": 47085, - "csgo": 28928, - "csi": 41750, - "csi": 28070, - "csk": 43036, - "csm": 40061, - "csn": 46329, - "cso": 43864, - "csp": 39243, - "csr": 32105, - "csr": 24598, - "csrracing": 44193, - "css": 41418, - "css": 19846, - "cst": 17016, - "csu": 35948, - "csu": 31261, - "csw": 41031, - "ct": 3381, - "ct": 1122, - "cta": 28397, - "ctar": 27842, - "ctc": 34123, - "cte": 31410, - "cted": 2910, - "ctf": 35250, - "cthulhu": 41064, - "cting": 7985, - "ction": 17578, - "ction": 1569, - "ctions": 7021, - "ctive": 9313, - "cto": 17445, - "ctor": 8108, - "ctr": 35602, - "ctr": 18481, - "cts": 6936, - "ctto": 25118, - "ctu": 20834, - "cture": 17668, - "ctv": 21213, - "ctv": 27590, - "cu": 729, - "cu": 11224, - "cuando": 40388, - "cub": 16938, - "cub": 19972, - "cuba": 11576, - "cuban": 15536, - "cube": 47753, - "cube": 11353, - "cubes": 31413, - "cubic": 48159, - "cubic": 29614, - "cubs": 9858, - "cuck": 26364, - "cuckoo": 38062, - "cucu": 16705, - "cucumber": 19787, - "cucumbers": 48065, - "cud": 42684, - "cudd": 12820, - "cuddle": 19568, - "cuddles": 24001, - "cuddling": 29696, - "cuddly": 36208, - "cudi": 48713, - "cue": 13424, - "cuer": 39506, - "cues": 35719, - "cuff": 34693, - "cuff": 22414, - "cufflinks": 43938, - "cuffs": 37221, - "cuis": 9938, - "cuisine": 10605, - "cuk": 34838, - "cul": 1877, - "cula": 35935, - "cular": 10940, - "culars": 45719, - "cule": 31066, - "cules": 18984, - "culin": 14772, - "culinary": 16466, - "cull": 21880, - "cull": 42061, - "cullen": 25973, - "culmin": 33778, - "culo": 36305, - "culprit": 41593, - "cult": 11965, - "cultiv": 16781, - "cultivate": 42983, - "cultivated": 48901, - "cultivation": 41539, - "cultur": 20780, - "cultural": 34908, - "cultural": 6753, - "culturally": 36783, - "culture": 20197, - "culture": 3673, - "cultured": 40176, - "cultures": 19552, - "culver": 42103, - "cum": 20142, - "cum": 27119, - "cumb": 10858, - "cumber": 15309, - "cumberbatch": 27541, - "cumberland": 28747, - "cumbri": 32010, - "cumbria": 17953, - "cumin": 42285, - "cumple": 47050, - "cumul": 42961, - "cumulative": 47610, - "cumulus": 46313, - "cun": 12423, - "cun": 29532, - "cunningham": 25321, - "cuomo": 25681, - "cup": 5059, - "cup": 1937, - "cupboard": 32074, - "cupcake": 17025, - "cupcakes": 12747, - "cupid": 34885, - "cuppa": 28077, - "cups": 11463, - "cur": 1092, - "cur": 33073, - "curated": 20341, - "curator": 20753, - "curb": 21931, - "curd": 38881, - "cure": 36758, - "cure": 9088, - "cured": 26248, - "cures": 38204, - "curfew": 48826, - "curi": 12640, - "curing": 44169, - "curiosity": 21583, - "curious": 9865, - "curl": 24306, - "curled": 43734, - "curling": 18543, - "curls": 24340, - "curly": 20795, - "curran": 40999, - "currant": 43501, - "curren": 6142, - "currencies": 23530, - "currency": 7853, - "current": 3653, - "currently": 3792, - "currents": 35450, - "curric": 16201, - "curriculum": 17947, - "currie": 39385, - "curry": 49285, - "curry": 8051, - "curse": 18479, - "cursed": 26408, - "cursor": 46546, - "curt": 38137, - "curtain": 17223, - "curtains": 30223, - "curti": 39925, - "curtis": 13808, - "curve": 15792, - "curved": 25789, - "curves": 22814, - "curvy": 45788, - "cus": 2736, - "cusa": 47414, - "cuse": 37950, - "cush": 43731, - "cushi": 15333, - "cushion": 20853, - "cushions": 34163, - "cussion": 16658, - "cussions": 46853, - "cust": 20900, - "custard": 26516, - "custo": 4376, - "custody": 16176, - "custom": 2662, - "custom": 4996, - "custome": 41323, - "customer": 24035, - "customer": 5102, - "customerexperience": 45167, - "customers": 5528, - "customerservice": 40611, - "customiz": 41793, - "customizable": 48253, - "customization": 48244, - "customize": 32179, - "customized": 23229, - "customs": 16880, - "cut": 10511, - "cut": 3032, - "cute": 16031, - "cute": 2242, - "cuteness": 19342, - "cuter": 27151, - "cutest": 8032, - "cuth": 44328, - "cutie": 10733, - "cuties": 40939, - "cuties": 23420, - "cutiesaturday": 41883, - "cutler": 40428, - "cutlery": 49073, - "cutout": 45016, - "cuts": 7435, - "cutt": 27338, - "cutt": 47647, - "cutter": 19719, - "cutters": 44783, - "cutting": 7266, - "cuz": 9215, - "cv": 13531, - "cv": 13947, - "cvs": 29603, - "cw": 10652, - "cw": 11065, - "cwc": 19179, - "cwgc": 48527, - "cws": 45186, - "cx": 44457, - "cx": 14283, - "cy": 1470, - "cy": 1678, - "cyber": 5830, - "cyber": 10210, - "cybercrime": 41772, - "cybermonday": 36578, - "cyberpunk": 36896, - "cybersecurity": 10581, - "cyborg": 36650, - "cycl": 9791, - "cycle": 19083, - "cycle": 5072, - "cycled": 31055, - "cycles": 14605, - "cycli": 12201, - "cycling": 26353, - "cycling": 6321, - "cyclist": 20686, - "cyclists": 20303, - "cyclo": 18122, - "cyclone": 48094, - "cyclone": 20917, - "cyclones": 34669, - "cylin": 18569, - "cylinder": 22092, - "cylinders": 48888, - "cymb": 36677, - "cymru": 24005, - "cyn": 14324, - "cynthi": 41994, - "cynthia": 23748, - "cyp": 14809, - "cypress": 25347, - "cypri": 36481, - "cyprus": 15263, - "cyril": 36028, - "cyrus": 14204, - "cystic": 46131, - "cyto": 31864, - "cz": 22898, - "cz": 22921, - "cze": 12152, - "czech": 43151, - "czech": 16141, - "cé": 36454, - "cé": 18317, - "d": 67, - "d": 323, - "da": 925, - "da": 1140, - "daa": 32642, - "daan": 44814, - "dab": 10413, - "dab": 22900, - "dac": 16222, - "dac": 27478, - "daca": 28477, - "dach": 34166, - "dachsh": 41641, - "dachshund": 42720, - "dad": 4346, - "dad": 2639, - "dada": 31325, - "daddy": 29466, - "daddy": 6546, - "dade": 23299, - "dades": 28289, - "dads": 12741, - "dae": 23358, - "dae": 15422, - "daener": 46934, - "daes": 47282, - "daesh": 35047, - "daf": 9972, - "daf": 36704, - "daffodils": 44769, - "daft": 36347, - "dag": 11434, - "dag": 25650, - "dagger": 34251, - "dah": 16976, - "dah": 11776, - "dahl": 45816, - "dahl": 22621, - "dahlia": 41768, - "dai": 13559, - "dai": 10632, - "dail": 14676, - "dailies": 21260, - "daily": 6689, - "daily": 2873, - "dailynews": 43466, - "dailys": 43160, - "dailysketch": 46738, - "daim": 40421, - "dain": 32222, - "dain": 28315, - "daipur": 47631, - "dair": 19998, - "dair": 42078, - "dairy": 25243, - "dairy": 10302, - "dairyfree": 49366, - "dais": 10502, - "daisi": 39947, - "daisies": 40654, - "daisy": 39310, - "daisy": 12865, - "dak": 6999, - "dak": 16095, - "dakar": 31137, - "dakota": 38522, - "dakota": 12358, - "dal": 2476, - "dal": 5601, - "dala": 42675, - "dalai": 41222, - "dalail": 35169, - "dalailama": 35849, - "dale": 11533, - "dale": 4677, - "dalejr": 38207, - "dales": 29031, - "daley": 28544, - "dalgo": 43614, - "dali": 36735, - "dali": 25703, - "dalit": 45432, - "dall": 43631, - "dalla": 16772, - "dallas": 27414, - "dallas": 5759, - "dallascowboys": 33016, - "dalmati": 44275, - "dalton": 21488, - "daly": 24873, - "dam": 1880, - "dam": 4926, - "damage": 6822, - "damaged": 13568, - "damages": 28842, - "damaging": 20610, - "damas": 23345, - "damascus": 25396, - "dame": 10069, - "dames": 44548, - "dami": 17783, - "damian": 43307, - "damian": 25375, - "damien": 25090, - "dammit": 31057, - "damn": 37409, - "damn": 4451, - "damned": 28428, - "damon": 48503, - "damon": 18244, - "damp": 26520, - "dams": 37680, - "dan": 2257, - "dan": 2284, - "dana": 44834, - "dana": 13777, - "danao": 38598, - "danc": 3945, - "dance": 10619, - "dance": 2724, - "danced": 32891, - "dancehall": 33300, - "dancer": 11400, - "dancers": 13153, - "dances": 24083, - "dancing": 33280, - "dancing": 6226, - "dand": 12593, - "dandelion": 38903, - "dandy": 31932, - "dane": 19330, - "danes": 47477, - "dang": 4283, - "dang": 14992, - "danger": 20083, - "danger": 11212, - "dangerous": 7350, - "dangerously": 35012, - "dangers": 23726, - "dangle": 39907, - "dani": 3001, - "dani": 17009, - "daniel": 7859, - "daniel": 4981, - "daniela": 44466, - "danielle": 30396, - "danielle": 15292, - "danielpadilla": 34702, - "daniels": 16146, - "danish": 15467, - "dank": 31849, - "dann": 11951, - "danny": 14950, - "danny": 7621, - "dano": 29703, - "dans": 16241, - "dant": 48097, - "dant": 28237, - "dante": 21911, - "danube": 44594, - "dany": 47816, - "dao": 36099, - "dap": 12149, - "dap": 38034, - "daph": 24591, - "daphne": 31687, - "dapl": 34478, - "dapp": 46857, - "dapper": 26071, - "daq": 25381, - "dar": 1377, - "dar": 6242, - "dara": 17064, - "darby": 34366, - "darcy": 32916, - "dare": 14833, - "dare": 9863, - "daredevil": 28849, - "dares": 42973, - "dareto": 46794, - "dari": 16292, - "dari": 14552, - "daria": 45622, - "daries": 18184, - "daring": 28166, - "dario": 33918, - "darius": 32606, - "darje": 49089, - "dark": 5724, - "dark": 3144, - "darker": 18737, - "darkest": 25898, - "darkness": 10521, - "darling": 13048, - "darlings": 39961, - "darlington": 34565, - "darn": 26059, - "darrell": 33522, - "darren": 20263, - "darren": 12275, - "darry": 29200, - "darryl": 35359, - "darshan": 34564, - "dart": 14001, - "dart": 19841, - "darth": 41304, - "darth": 23164, - "dartmoor": 31477, - "dartmouth": 29667, - "darts": 15246, - "darwin": 43013, - "darwin": 20926, - "daryl": 45607, - "daryl": 24532, - "das": 9940, - "das": 7359, - "dash": 13858, - "dash": 10206, - "dashboard": 27679, - "dashi": 12876, - "dashing": 33825, - "dat": 1717, - "dat": 9445, - "data": 14876, - "data": 2281, - "datab": 11941, - "database": 14678, - "databases": 48384, - "datac": 27329, - "datacenter": 40133, - "datasci": 14496, - "datascience": 15748, - "dataviz": 28138, - "date": 34300, - "date": 1524, - "dated": 13564, - "dates": 7228, - "dating": 8534, - "dation": 15311, - "datlantic": 34270, - "dato": 36075, - "dats": 48674, - "dau": 3162, - "dau": 33828, - "daugh": 42523, - "daughter": 3944, - "daughters": 13585, - "daun": 29470, - "dav": 3700, - "dav": 46488, - "davao": 31502, - "dave": 10089, - "dave": 5077, - "daven": 28350, - "davenport": 34624, - "davey": 33391, - "davi": 1732, - "david": 4640, - "david": 2259, - "davidbowie": 44448, - "davido": 35989, - "davids": 46695, - "davidson": 13166, - "davies": 13120, - "davin": 43187, - "davis": 24426, - "davis": 5536, - "davison": 43725, - "davos": 31887, - "davy": 41565, - "daw": 5971, - "daw": 24404, - "dawg": 18660, - "dawgs": 26431, - "dawn": 30590, - "dawn": 7689, - "dawson": 18611, - "dax": 29458, - "day": 1405, - "day": 575, - "daya": 38165, - "daybreak": 33862, - "daycare": 36363, - "daydream": 41587, - "dayin": 20332, - "daylight": 20809, - "dayo": 29856, - "dayo": 46605, - "dayof": 16272, - "dayofthe": 38043, - "days": 1161, - "daysof": 12379, - "daysofcode": 36537, - "daysto": 29886, - "daystogo": 42198, - "dayswild": 42052, - "daytime": 22830, - "dayton": 35729, - "dayton": 20262, - "daytona": 16335, - "dayweekend": 44526, - "dayz": 35949, - "daz": 15449, - "daz": 43844, - "daze": 33591, - "dazz": 17149, - "dazzle": 41164, - "dazzling": 28821, - "db": 19100, - "db": 8128, - "dbacks": 31175, - "dbs": 40558, - "dbz": 49226, - "dc": 5074, - "dc": 2743, - "dca": 49107, - "dcc": 33747, - "dccomics": 17610, - "dcfc": 35526, - "dci": 35336, - "dcs": 42878, - "dcu": 42647, - "dd": 1353, - "dd": 3766, - "dda": 35202, - "ddad": 39049, - "dday": 32689, - "dday": 26243, - "ddc": 48513, - "ddd": 24183, - "dddd": 35362, - "dden": 5013, - "dder": 9300, - "dders": 24827, - "ddi": 44450, - "ddin": 17175, - "dding": 48101, - "dding": 8974, - "ddings": 49106, - "ddington": 29238, - "ddle": 17633, - "ddle": 8357, - "ddled": 38392, - "ddles": 33901, - "ddleston": 25647, - "ddling": 30981, - "ddlovato": 28244, - "ddos": 46463, - "ddr": 26027, - "dds": 48334, - "ddu": 43836, - "ddy": 14981, - "ddy": 7876, - "de": 561, - "de": 654, - "dea": 18477, - "deacon": 29155, - "dead": 3906, - "dead": 2747, - "deadliest": 40811, - "deadline": 47209, - "deadline": 8458, - "deadlines": 44959, - "deadly": 10756, - "deadpool": 21471, - "deaf": 28229, - "deaf": 18358, - "deal": 7249, - "deal": 2696, - "dealer": 15218, - "dealers": 21697, - "dealership": 32096, - "dealing": 13138, - "deals": 4469, - "dealt": 30101, - "dean": 13807, - "dean": 5828, - "deandre": 43635, - "deans": 46852, - "dear": 15696, - "dear": 3817, - "dearest": 24880, - "dearly": 31880, - "deas": 34715, - "death": 7163, - "death": 2767, - "deaths": 12253, - "deau": 12399, - "deaux": 19883, - "deb": 2987, - "deb": 25687, - "debat": 32082, - "debate": 5196, - "debates": 19239, - "debating": 23472, - "debbie": 47186, - "debbie": 16735, - "debit": 32410, - "debor": 16738, - "deborah": 40997, - "deborah": 22150, - "debra": 33233, - "debris": 19208, - "debt": 8932, - "debts": 38770, - "debu": 9790, - "debun": 33123, - "debut": 42608, - "debut": 4085, - "debuted": 25215, - "debuting": 34817, - "debuts": 17044, - "dec": 3063, - "dec": 4628, - "deca": 33428, - "decad": 29914, - "decade": 11099, - "decadent": 41716, - "decades": 10488, - "decal": 26678, - "decals": 37606, - "decan": 40677, - "decat": 35334, - "decath": 47455, - "decatur": 38540, - "decay": 22703, - "dece": 3534, - "deceased": 30035, - "december": 3864, - "decent": 10698, - "decentr": 28960, - "decentralized": 38485, - "decep": 33529, - "deception": 33046, - "deci": 2262, - "decide": 8447, - "decided": 4939, - "decides": 17269, - "deciding": 22513, - "decision": 5575, - "decisions": 9903, - "decisive": 28690, - "deck": 24885, - "deck": 6943, - "decked": 39096, - "decker": 21449, - "decks": 23968, - "decl": 7091, - "decla": 10739, - "declan": 42341, - "declar": 18040, - "declaration": 19714, - "declare": 19856, - "declared": 13845, - "declares": 23641, - "declaring": 33273, - "decline": 15084, - "declined": 28911, - "declines": 40478, - "declining": 29221, - "deco": 26412, - "deco": 16422, - "decor": 5148, - "decor": 6928, - "decorate": 23651, - "decorated": 15917, - "decorating": 16968, - "decoration": 16029, - "decorations": 19158, - "decorative": 19289, - "decre": 12284, - "decrease": 24703, - "decreased": 33913, - "decreasing": 43763, - "decree": 43327, - "ded": 16744, - "ded": 1241, - "dedic": 4701, - "dedicate": 27610, - "dedicated": 6770, - "dedication": 10188, - "dedly": 36204, - "deduc": 22799, - "dee": 5268, - "dee": 6705, - "deed": 30260, - "deeds": 24516, - "deejay": 48304, - "deejay": 44511, - "deemed": 28102, - "deen": 26456, - "deen": 12912, - "deep": 5462, - "deep": 3383, - "deepak": 45528, - "deeper": 15224, - "deepest": 22245, - "deephouse": 35684, - "deepi": 19371, - "deepika": 34120, - "deepikap": 29903, - "deepikapadukone": 30646, - "deeplear": 22181, - "deeplearning": 24362, - "deeply": 11449, - "deer": 19454, - "deer": 8700, - "deere": 32901, - "dees": 12547, - "deets": 35537, - "def": 2044, - "def": 11649, - "defam": 35670, - "defamation": 42741, - "default": 21650, - "defe": 4148, - "defeat": 8477, - "defeated": 8927, - "defeating": 22594, - "defeats": 16317, - "defect": 44013, - "defects": 37485, - "defen": 3619, - "defence": 30307, - "defence": 9659, - "defend": 21970, - "defend": 11397, - "defended": 27161, - "defender": 10618, - "defenders": 20063, - "defending": 13098, - "defends": 20134, - "defense": 45875, - "defense": 6021, - "defenseman": 43714, - "defenses": 49198, - "defensive": 10824, - "defi": 17244, - "defiance": 36186, - "defiant": 47597, - "defibrill": 47684, - "defic": 18022, - "defici": 23387, - "deficiency": 30685, - "deficit": 20156, - "defin": 3188, - "define": 14919, - "defined": 15278, - "defines": 28218, - "defining": 20504, - "definite": 40793, - "definitely": 4824, - "definition": 11405, - "definitive": 25298, - "defl": 31467, - "deforestation": 41330, - "defstar": 36427, - "defy": 39148, - "defying": 38496, - "deg": 38498, - "degra": 28939, - "degradation": 44468, - "degre": 4653, - "degree": 7119, - "degrees": 8000, - "deh": 35582, - "dei": 33833, - "dei": 23279, - "deir": 42948, - "deity": 42574, - "deja": 46902, - "dek": 23901, - "dekalb": 37775, - "del": 1233, - "del": 2003, - "dela": 37986, - "delaney": 31528, - "delav": 23706, - "delavin": 40477, - "delavin": 40776, - "delavinkisses": 40631, - "delaware": 17547, - "delay": 12955, - "delay": 10934, - "delayed": 14567, - "delaying": 43781, - "delays": 11232, - "dele": 7922, - "dele": 33431, - "delec": 38615, - "delectable": 45500, - "deleg": 8046, - "delegate": 27259, - "delegates": 14623, - "delegation": 14632, - "delete": 19204, - "deleted": 16588, - "deleting": 41857, - "delft": 42749, - "delgado": 49182, - "delhi": 26723, - "delhi": 5717, - "deli": 1932, - "deli": 18601, - "delia": 33193, - "deliber": 18316, - "deliberate": 38271, - "deliberately": 35163, - "delic": 13366, - "delicacy": 49181, - "delicate": 18768, - "delici": 19993, - "delicious": 3959, - "deliciously": 39589, - "deliciousness": 42819, - "delight": 46165, - "delight": 13073, - "delighted": 5943, - "delightful": 15513, - "delights": 25330, - "deline": 18797, - "delines": 13562, - "delish": 25093, - "deliver": 19561, - "deliver": 7396, - "delivered": 7278, - "deliveries": 29336, - "delivering": 9943, - "delivers": 11753, - "delivery": 5619, - "dell": 24381, - "dell": 10242, - "della": 22986, - "delle": 35963, - "deloit": 29428, - "deloitte": 38667, - "dels": 48636, - "delta": 32250, - "delta": 8768, - "delu": 18779, - "delusional": 48059, - "delux": 13709, - "deluxe": 14056, - "delve": 46008, - "dely": 15040, - "dem": 3251, - "dem": 7825, - "dema": 40268, - "dema": 45046, - "deman": 48366, - "demand": 13072, - "demand": 5650, - "demanded": 33699, - "demanding": 17099, - "demands": 14241, - "demar": 46566, - "demarcus": 47873, - "demb": 35930, - "demdebate": 43973, - "deme": 25143, - "demean": 37376, - "demen": 12604, - "dementi": 46028, - "dementia": 14047, - "demetri": 39553, - "demi": 32879, - "demi": 14480, - "demise": 28756, - "demo": 2930, - "demo": 7380, - "democr": 3573, - "democracy": 7758, - "democrat": 15431, - "democratic": 9149, - "democrats": 8865, - "demographic": 31308, - "demol": 19382, - "demolished": 26537, - "demolition": 22237, - "demon": 5635, - "demon": 12085, - "demonetisation": 41338, - "demonic": 46920, - "demons": 18388, - "demonstr": 8579, - "demonstrate": 22231, - "demonstrated": 29477, - "demonstrates": 24806, - "demonstrating": 22107, - "demonstration": 16722, - "demonstrations": 33964, - "demonstrators": 46450, - "demos": 19304, - "demp": 22490, - "dempsey": 30188, - "dems": 10989, - "demsin": 42664, - "demsinphilly": 43091, - "den": 1177, - "den": 1181, - "dena": 32431, - "denali": 48076, - "dence": 3370, - "dency": 11659, - "dend": 37447, - "dends": 43985, - "dene": 45128, - "dened": 19571, - "deng": 43098, - "deng": 41788, - "dengue": 41932, - "denham": 39180, - "deni": 21995, - "denial": 25716, - "denied": 15780, - "denies": 19565, - "denim": 13606, - "denis": 47630, - "denis": 18750, - "denise": 45900, - "denise": 20899, - "denmark": 13268, - "dennis": 32738, - "dennis": 10534, - "denny": 26808, - "denomin": 41016, - "dens": 16533, - "dense": 19353, - "density": 22431, - "dent": 3593, - "dent": 1258, - "dental": 24635, - "dental": 8382, - "dentally": 10346, - "dented": 21923, - "denti": 4418, - "dential": 5459, - "dentist": 17816, - "dentistry": 25754, - "dently": 28817, - "denton": 23567, - "dents": 1517, - "denver": 27847, - "denver": 8569, - "deny": 18679, - "denying": 32771, - "denzel": 42503, - "deo": 26406, - "deo": 12121, - "deodor": 47639, - "deol": 41902, - "deon": 31466, - "deon": 16079, - "dep": 6079, - "dep": 24370, - "depar": 10794, - "depart": 5343, - "depart": 30649, - "departed": 32541, - "departing": 26902, - "department": 5744, - "departments": 29523, - "departs": 38998, - "departure": 17850, - "depe": 36118, - "depend": 13894, - "depend": 27371, - "dependence": 40243, - "dependent": 23280, - "depending": 23673, - "depends": 20497, - "depic": 11307, - "depicted": 34637, - "depicting": 24970, - "depiction": 31071, - "depicts": 29340, - "deple": 38504, - "deplo": 9356, - "deplor": 39232, - "deploy": 26944, - "deployed": 20009, - "deploying": 42212, - "deployment": 20183, - "depo": 14276, - "depor": 36110, - "deport": 23389, - "deportation": 36617, - "deported": 39320, - "deportes": 47878, - "depos": 21266, - "deposit": 16775, - "deposits": 30740, - "depot": 12589, - "depp": 24941, - "depre": 7107, - "depress": 38869, - "depressed": 23269, - "depressing": 29235, - "depression": 10023, - "depri": 28587, - "depriv": 45809, - "deprivation": 47810, - "deprived": 39140, - "dept": 9201, - "depth": 10350, - "depths": 28855, - "depu": 6912, - "deputies": 24914, - "deputy": 7932, - "der": 839, - "der": 801, - "dera": 20696, - "derail": 48502, - "derby": 13904, - "derby": 7177, - "derbyshire": 22147, - "derdale": 21513, - "dere": 5701, - "dere": 44194, - "dered": 3776, - "derek": 22461, - "derek": 11205, - "derel": 46728, - "derer": 11289, - "derers": 20882, - "deri": 34573, - "derick": 33908, - "dering": 6076, - "deriv": 33458, - "derived": 26461, - "derland": 35488, - "derman": 29740, - "dermatology": 48051, - "dern": 30086, - "dero": 37203, - "dero": 34026, - "derrick": 21798, - "derry": 45777, - "derry": 20535, - "ders": 37307, - "ders": 1923, - "derson": 12677, - "dery": 17172, - "des": 6797, - "des": 1437, - "desai": 35316, - "desc": 13866, - "descen": 32318, - "descend": 26004, - "descend": 46241, - "descendants": 36323, - "descending": 36620, - "descent": 19375, - "desch": 49209, - "descri": 4637, - "describe": 10967, - "described": 14671, - "describes": 13678, - "describing": 24239, - "descrip": 41832, - "description": 13951, - "descriptions": 40653, - "desde": 42218, - "dese": 27195, - "deser": 3659, - "desert": 45776, - "desert": 7301, - "deserted": 41560, - "deserve": 7043, - "deserved": 10061, - "deserves": 9079, - "deserving": 26615, - "desh": 25320, - "desh": 7448, - "deshi": 42769, - "desi": 6772, - "desi": 26635, - "desig": 1250, - "design": 8359, - "design": 1681, - "designated": 24119, - "designation": 41155, - "designed": 4486, - "designer": 35640, - "designer": 5728, - "designers": 12720, - "designing": 13467, - "designs": 6747, - "designthinking": 32450, - "desirable": 32368, - "desire": 11858, - "desired": 28631, - "desires": 27598, - "desk": 11937, - "desk": 6550, - "desks": 41014, - "desktop": 14345, - "desmond": 27821, - "desol": 41258, - "desp": 3642, - "despair": 28097, - "desper": 10144, - "desperate": 15072, - "desperately": 21993, - "despic": 32442, - "despicable": 37158, - "despite": 5325, - "dess": 7096, - "dess": 10001, - "dessert": 9753, - "desserts": 22948, - "desses": 43913, - "dest": 6540, - "dest": 4549, - "destin": 4934, - "destination": 32191, - "destination": 9179, - "destinations": 16981, - "destined": 28525, - "destiny": 39875, - "destiny": 10867, - "destro": 8287, - "destroy": 8308, - "destroy": 11930, - "destroyed": 9965, - "destroyer": 25291, - "destroying": 19613, - "destroys": 27634, - "destruc": 22945, - "destruction": 14281, - "destructive": 29591, - "det": 28966, - "det": 15366, - "deta": 1914, - "detached": 26252, - "detail": 7657, - "detailed": 12609, - "detailing": 23163, - "details": 2353, - "detained": 20260, - "dete": 5606, - "detec": 17991, - "detect": 22744, - "detected": 26988, - "detecting": 41290, - "detection": 16220, - "detective": 13672, - "detectives": 27994, - "detector": 27689, - "detectors": 45063, - "detention": 16908, - "deter": 10742, - "deter": 47458, - "detergent": 46726, - "deterior": 28512, - "determin": 8325, - "determination": 17410, - "determine": 16768, - "determined": 14371, - "determines": 42192, - "determining": 39884, - "deth": 38375, - "deto": 39710, - "deton": 39335, - "detour": 31211, - "detox": 22459, - "detri": 47951, - "detro": 6210, - "detroit": 19404, - "detroit": 7073, - "detta": 45438, - "dette": 35750, - "deu": 21457, - "deuce": 45332, - "deus": 37625, - "deut": 14970, - "deutsch": 30389, - "deutsche": 32760, - "deutschland": 36878, - "deux": 47089, - "dev": 2797, - "dev": 3670, - "deva": 45179, - "devan": 37072, - "devast": 12913, - "devastated": 29865, - "devastating": 19280, - "devastation": 42452, - "devel": 1820, - "develop": 1966, - "develop": 7708, - "developed": 8763, - "developer": 10929, - "developers": 13248, - "developing": 8131, - "development": 2855, - "developmental": 29347, - "developments": 17393, - "develops": 29895, - "deven": 45537, - "devgn": 29871, - "devi": 12926, - "devi": 20717, - "deviant": 25593, - "deviantart": 26046, - "device": 8163, - "devices": 9067, - "devil": 8894, - "devil": 8043, - "deville": 34329, - "devils": 11683, - "devin": 31193, - "devin": 20996, - "devine": 33019, - "devlin": 48040, - "devo": 11861, - "devo": 43444, - "devon": 16205, - "devon": 10046, - "devops": 21504, - "devos": 40646, - "devote": 37777, - "devoted": 24561, - "devotees": 39759, - "devotion": 25821, - "devotional": 35456, - "devs": 27374, - "dew": 31952, - "dew": 16358, - "dewey": 40399, - "dex": 10030, - "dex": 13790, - "dexpo": 42502, - "dexter": 45049, - "dexter": 22781, - "dey": 11829, - "dez": 23190, - "dez": 8122, - "df": 12908, - "df": 10468, - "dfc": 41903, - "dfs": 32880, - "dfw": 20439, - "dg": 2394, - "dg": 9742, - "dgate": 41684, - "dge": 4016, - "dge": 1360, - "dged": 11830, - "dgeon": 45655, - "dgers": 8733, - "dges": 5432, - "dging": 9565, - "dh": 6669, - "dh": 9960, - "dha": 11629, - "dha": 27377, - "dhabi": 22349, - "dhaka": 32877, - "dham": 29635, - "dham": 30838, - "dhan": 12542, - "dhan": 28569, - "dhanush": 26162, - "dhanush": 36200, - "dhanushkraja": 29266, - "dhar": 12397, - "dharma": 30536, - "dhary": 28706, - "dhawan": 44699, - "dhe": 29706, - "dheim": 44280, - "dhi": 31553, - "dhi": 26166, - "dho": 37834, - "dhoni": 25698, - "dhru": 40257, - "dhry": 39960, - "dhs": 26849, - "dhu": 32387, - "di": 570, - "di": 1618, - "dia": 7351, - "dia": 3357, - "diab": 15954, - "diabe": 19167, - "diabete": 43826, - "diabetes": 10319, - "diabetic": 30230, - "diablo": 23931, - "diag": 6851, - "diagno": 7736, - "diagnose": 44429, - "diagnosed": 16979, - "diagnosis": 15715, - "diagnostic": 26351, - "diagnostics": 37723, - "diagram": 22697, - "dial": 18416, - "dial": 11381, - "dialo": 30709, - "dialog": 48945, - "dialogue": 11288, - "dialogues": 40330, - "dialysis": 44798, - "diam": 4347, - "diameter": 27189, - "diamon": 8873, - "diamond": 18535, - "diamond": 6235, - "diamonds": 12687, - "dian": 16021, - "dian": 4998, - "diana": 12803, - "diane": 15855, - "dianne": 42299, - "dians": 21041, - "diaper": 34382, - "diapers": 39659, - "diar": 25932, - "diaries": 15541, - "diary": 10380, - "dias": 22137, - "dias": 29354, - "diaspora": 28390, - "diaz": 17688, - "dic": 1404, - "dic": 6717, - "dicap": 30023, - "dicaprio": 30755, - "dice": 14406, - "dick": 14413, - "dick": 9554, - "dickens": 33421, - "dict": 45360, - "dict": 15159, - "dictat": 26156, - "dictator": 27399, - "dictatorship": 37989, - "dictionary": 19699, - "did": 1861, - "did": 1335, - "diddy": 33527, - "didi": 34396, - "didier": 45614, - "didn": 2376, - "didnt": 13057, - "dido": 31725, - "didyou": 12295, - "didyouknow": 12506, - "die": 3150, - "die": 2082, - "diec": 27729, - "diecast": 37936, - "died": 3622, - "diego": 30940, - "diego": 6306, - "diem": 45571, - "dience": 33686, - "dient": 27231, - "dier": 29702, - "dier": 16394, - "dies": 20104, - "dies": 1862, - "diesel": 46312, - "diesel": 10591, - "diest": 45739, - "diet": 21295, - "diet": 6582, - "dietary": 29009, - "dietrich": 47005, - "diets": 35173, - "dif": 18656, - "dif": 48731, - "diff": 44073, - "diff": 20331, - "diffe": 1967, - "differ": 34620, - "differen": 14903, - "difference": 4731, - "differences": 14003, - "different": 2731, - "differenti": 21729, - "differential": 34027, - "differentiate": 49032, - "differently": 18325, - "diffic": 6140, - "difficult": 7405, - "difficulties": 23468, - "difficulty": 25245, - "diffu": 31603, - "diffuser": 49400, - "dig": 1831, - "dig": 9887, - "dige": 17820, - "digest": 20413, - "digestion": 40533, - "digestive": 32304, - "digg": 43240, - "digger": 35919, - "diggin": 48466, - "digging": 14971, - "digi": 15627, - "digi": 39361, - "digimon": 44181, - "digit": 14899, - "digit": 27472, - "digital": 4704, - "digital": 2794, - "digitalart": 16987, - "digitalhealth": 32190, - "digitalindia": 46630, - "digitally": 27543, - "digitalmarketing": 15299, - "digitaltransformation": 20047, - "digiti": 25935, - "digits": 31710, - "digni": 45532, - "dignit": 39497, - "dignity": 17744, - "digo": 35701, - "digs": 26877, - "dih": 43089, - "dii": 32755, - "dijk": 44444, - "dik": 38854, - "dik": 37747, - "dike": 42683, - "dil": 7643, - "dil": 17942, - "dile": 25428, - "dilemma": 29787, - "dilig": 30664, - "dill": 12318, - "dill": 27206, - "dillon": 21056, - "dilu": 45242, - "dim": 19576, - "dim": 17523, - "dime": 24443, - "dimen": 10935, - "dimension": 20479, - "dimensional": 25252, - "dimensions": 25086, - "diment": 43500, - "dimes": 44888, - "dimini": 37459, - "dimit": 22250, - "dimitri": 48840, - "dimp": 38853, - "din": 1462, - "din": 5673, - "dina": 36815, - "dinah": 30903, - "dine": 20951, - "dine": 12989, - "diner": 16963, - "dinesh": 48341, - "ding": 7545, - "ding": 796, - "dinger": 45580, - "dingh": 48064, - "dings": 5473, - "dington": 24804, - "dinho": 47370, - "dini": 20196, - "dining": 8658, - "dinner": 27548, - "dinner": 2571, - "dinners": 33570, - "dino": 9692, - "dino": 14077, - "dinosa": 18955, - "dinosaur": 15095, - "dinosaurs": 20387, - "dio": 3779, - "dio": 1521, - "dioce": 20763, - "diocese": 27091, - "dion": 42899, - "dion": 16250, - "dior": 23655, - "dios": 37563, - "dious": 27417, - "dioxide": 38102, - "dip": 19918, - "dip": 11343, - "dipl": 8490, - "diplo": 38115, - "diplom": 11169, - "diploma": 21251, - "diplomacy": 23798, - "diplomat": 32828, - "diplomatic": 23782, - "diplomats": 44126, - "dipped": 30610, - "dipper": 49317, - "dipping": 33544, - "dips": 37522, - "dir": 4251, - "dir": 8478, - "dire": 38355, - "dire": 25664, - "direc": 1534, - "direct": 43224, - "direct": 6016, - "directed": 8392, - "directing": 21817, - "direction": 15923, - "direction": 5407, - "directional": 38687, - "directioner": 48042, - "directioners": 22055, - "directions": 16440, - "directive": 40630, - "directly": 9701, - "director": 20337, - "director": 2681, - "directorial": 45327, - "directors": 11940, - "directory": 25272, - "directs": 34349, - "directv": 48652, - "dirk": 28171, - "dirt": 31415, - "dirt": 11795, - "dirty": 20127, - "dirty": 7615, - "dis": 1518, - "dis": 6112, - "disa": 3882, - "disab": 47380, - "disabilities": 17350, - "disability": 48986, - "disability": 13261, - "disabled": 13613, - "disadvantaged": 40577, - "disagree": 23199, - "disapp": 5384, - "disappear": 21148, - "disappear": 25173, - "disappearance": 35929, - "disappeared": 23139, - "disappearing": 35819, - "disappears": 44406, - "disappo": 7605, - "disappoint": 25446, - "disappointed": 13794, - "disappointing": 21941, - "disappointment": 23884, - "disappoints": 48545, - "disappro": 48276, - "disar": 42971, - "disaster": 9072, - "disasters": 26976, - "disastrous": 35790, - "disc": 1472, - "disc": 10712, - "discar": 40532, - "discarded": 45197, - "discer": 49140, - "dischar": 22671, - "discharge": 32485, - "disci": 9559, - "discip": 38951, - "discipl": 10467, - "disciples": 39366, - "disciplinary": 20232, - "discipline": 18903, - "disciplines": 42032, - "discla": 40248, - "disclaimer": 46465, - "disclo": 17481, - "disclose": 46379, - "disclosed": 30905, - "disclosure": 26502, - "disco": 2475, - "disco": 11964, - "discography": 47545, - "discomfort": 48054, - "discord": 23582, - "discoun": 18515, - "discount": 7638, - "discounted": 20993, - "discounts": 18186, - "discoura": 45850, - "discourse": 29441, - "discover": 10539, - "discover": 4834, - "discovered": 6986, - "discoveries": 29308, - "discovering": 17967, - "discovers": 29719, - "discovery": 40491, - "discovery": 8027, - "discre": 20616, - "discrimin": 11721, - "discrimination": 14775, - "discs": 29270, - "discu": 1984, - "discus": 41828, - "discuss": 4312, - "discussed": 11300, - "discusses": 8116, - "discussing": 5900, - "discussion": 5060, - "discussions": 13806, - "dise": 4262, - "disease": 5336, - "diseases": 12035, - "disen": 46468, - "disgrace": 29877, - "disgraceful": 44146, - "disgu": 9793, - "disguise": 27803, - "disguised": 37149, - "disgusted": 41977, - "disgusting": 16218, - "dish": 11039, - "dish": 4531, - "disha": 42498, - "dishes": 11412, - "dishon": 30777, - "dishu": 44728, - "dishwasher": 40524, - "disin": 19484, - "disinfe": 48050, - "disintegr": 49275, - "disk": 17970, - "dislike": 30796, - "dism": 30836, - "dism": 38821, - "dismant": 36557, - "dismiss": 43287, - "dismissal": 42068, - "dismissed": 30087, - "dismisses": 45238, - "disney": 6729, - "disney": 4696, - "disneyland": 39481, - "disneyland": 13661, - "disneyworld": 28469, - "diso": 26305, - "disobe": 42841, - "dison": 19310, - "disorder": 12635, - "disorders": 17114, - "disp": 11073, - "dispar": 24633, - "disparities": 45122, - "dispat": 28652, - "dispatch": 26306, - "dispen": 19077, - "dispenser": 40116, - "disper": 34499, - "displa": 9326, - "displac": 17718, - "displaced": 22817, - "displacement": 37931, - "display": 4456, - "displayed": 18967, - "displaying": 26468, - "displays": 15648, - "dispo": 13651, - "dispon": 38872, - "disponible": 46130, - "dispos": 45177, - "disposable": 37275, - "disposal": 28231, - "dispro": 32927, - "dispropor": 40354, - "disproportion": 45492, - "disregard": 43869, - "disrespect": 34055, - "disrespectful": 41723, - "disru": 13763, - "disrup": 14641, - "disrupt": 25214, - "disrupted": 46674, - "disrupting": 42419, - "disruption": 19635, - "disruptive": 31554, - "diss": 10766, - "diss": 35688, - "dissec": 43879, - "dissemin": 40463, - "dissent": 45154, - "disser": 25560, - "dissertation": 29448, - "dissi": 25088, - "dissol": 27398, - "dissuper": 33461, - "dist": 5479, - "dist": 12116, - "distance": 7964, - "distances": 37078, - "distant": 18949, - "distill": 41586, - "distilled": 49179, - "distillery": 22200, - "distin": 11892, - "distinct": 25056, - "distinction": 28183, - "distinctive": 25486, - "distingui": 15053, - "distinguish": 45418, - "distinguished": 16513, - "distor": 23781, - "distortion": 43690, - "distr": 11885, - "distract": 39309, - "distracted": 24049, - "distraction": 32039, - "distress": 26866, - "distressed": 37515, - "distri": 5987, - "distribu": 6138, - "distribute": 32313, - "distributed": 16419, - "distributing": 35216, - "distribution": 10484, - "distributor": 28354, - "distributors": 44240, - "distric": 3208, - "district": 46683, - "district": 3506, - "districts": 17565, - "distur": 11732, - "disturb": 33018, - "disturb": 39449, - "disturbance": 42416, - "disturbed": 29967, - "disturbing": 21476, - "disupdates": 45667, - "dit": 5752, - "dit": 2524, - "dita": 47965, - "ditch": 43715, - "ditch": 19291, - "dited": 40392, - "diti": 2363, - "dition": 16452, - "dition": 3015, - "ditional": 4322, - "ditions": 4503, - "dito": 43705, - "dits": 49374, - "dity": 16436, - "dium": 2903, - "div": 5293, - "div": 14869, - "diva": 13605, - "divas": 23534, - "dive": 26042, - "dive": 9058, - "diver": 13119, - "diver": 22094, - "divergence": 48735, - "divergent": 36132, - "divers": 30241, - "divers": 27038, - "diverse": 11464, - "diversi": 24475, - "diversion": 38457, - "diversity": 35634, - "diversity": 6257, - "diverted": 41049, - "dives": 13893, - "divi": 8375, - "divid": 31337, - "divide": 18842, - "divided": 18689, - "dividend": 32067, - "dividends": 45146, - "dividing": 45605, - "divin": 21838, - "divine": 46919, - "divine": 10976, - "diving": 9886, - "divinity": 39754, - "divisi": 39196, - "division": 5378, - "divisional": 40912, - "divisions": 33715, - "divor": 13543, - "divorce": 17060, - "divorced": 39437, - "divya": 47767, - "diwali": 18218, - "dix": 45838, - "dix": 27620, - "dixie": 24484, - "dixit": 28279, - "dixon": 16086, - "diy": 28472, - "diy": 7845, - "diya": 36459, - "diz": 32740, - "dized": 36232, - "dizz": 40239, - "dizzy": 35464, - "dj": 3761, - "dj": 3723, - "djan": 35338, - "django": 46498, - "dji": 35284, - "dji": 28379, - "djing": 36113, - "djo": 19432, - "djoker": 42721, - "djokernole": 42830, - "djokovic": 27944, - "djs": 18117, - "dk": 20702, - "dk": 16196, - "dl": 12558, - "dl": 9373, - "dlc": 19079, - "dle": 11057, - "dle": 3287, - "dled": 23494, - "dler": 40279, - "dles": 7890, - "dless": 14997, - "dley": 12808, - "dling": 18221, - "dly": 3069, - "dm": 19070, - "dm": 4667, - "dma": 42903, - "dman": 18826, - "dmc": 28991, - "dmit": 31607, - "dmitry": 48326, - "dms": 19955, - "dmv": 27508, - "dmx": 45255, - "dn": 11552, - "dn": 7459, - "dna": 8790, - "dnb": 35422, - "dnc": 20237, - "dnd": 11678, - "dnr": 37051, - "dns": 39245, - "dnt": 26795, - "do": 639, - "do": 818, - "doa": 48332, - "dob": 29640, - "doba": 35605, - "dobbs": 43006, - "dobson": 46888, - "doc": 3009, - "doc": 7251, - "doch": 25101, - "dock": 17311, - "dock": 8997, - "docked": 46784, - "docker": 31152, - "docking": 40845, - "docks": 24091, - "docs": 15157, - "doctor": 7872, - "doctor": 5547, - "doctoral": 23649, - "doctorate": 39134, - "doctors": 9705, - "doctorwho": 12996, - "doctr": 28497, - "doctrine": 35612, - "docu": 4433, - "document": 29293, - "document": 15121, - "documentaries": 44209, - "documentary": 7881, - "documentation": 31560, - "documented": 22310, - "documenting": 37876, - "documents": 14105, - "dod": 13847, - "dod": 30187, - "dodd": 36748, - "dodge": 31263, - "dodge": 12093, - "dodgeball": 43244, - "dodger": 31641, - "dodgers": 12422, - "dodgy": 37727, - "doe": 13296, - "does": 2397, - "does": 1897, - "doesn": 2503, - "doesnt": 17937, - "dof": 8277, - "doff": 20193, - "dofficial": 42516, - "dog": 4326, - "dog": 1929, - "dogcelebration": 41819, - "dogday": 27475, - "doge": 42187, - "dogg": 20749, - "doggie": 32237, - "doggo": 42155, - "doggy": 26359, - "doglo": 40733, - "dogre": 40030, - "dogrescue": 44158, - "dogs": 42182, - "dogs": 3255, - "dogsoftwitter": 19415, - "doh": 23581, - "doha": 20908, - "doherty": 31774, - "doi": 36361, - "doin": 15412, - "doing": 37408, - "doing": 1960, - "doit": 32272, - "doit": 28109, - "doj": 25700, - "dojo": 35901, - "dok": 40547, - "dok": 41034, - "doka": 46528, - "dol": 2287, - "dol": 19170, - "dola": 38005, - "dolan": 27200, - "dolby": 42414, - "dolce": 30033, - "dolce": 30661, - "dole": 41040, - "doll": 27031, - "doll": 9286, - "dollar": 35092, - "dollar": 7474, - "dollars": 10669, - "dolls": 15090, - "dolly": 43281, - "dolly": 23821, - "dolom": 37137, - "dolores": 40741, - "dolph": 8900, - "dolph": 22257, - "dolphin": 42963, - "dolphin": 16464, - "dolphins": 14002, - "dom": 2164, - "dom": 1919, - "domain": 15492, - "domaine": 48744, - "domains": 36358, - "dome": 8515, - "dome": 9827, - "domen": 37584, - "domest": 21936, - "domestic": 28189, - "domestic": 9043, - "domin": 4361, - "dominance": 30546, - "dominant": 20565, - "dominate": 21431, - "dominated": 23048, - "dominates": 34043, - "dominating": 29303, - "domination": 30919, - "domingo": 24882, - "dominic": 39007, - "dominic": 19095, - "dominican": 22934, - "dominion": 27155, - "domino": 30752, - "dominos": 39770, - "domo": 44293, - "doms": 30126, - "don": 1067, - "don": 847, - "dona": 26789, - "donal": 42375, - "donald": 5990, - "donald": 4335, - "donaldson": 37783, - "donaldtrump": 6652, - "donat": 36384, - "donate": 6429, - "donated": 8705, - "donates": 26960, - "donating": 12621, - "donation": 7924, - "donations": 9928, - "doncaster": 38008, - "doncaster": 25352, - "doncasterisgreat": 47333, - "done": 5136, - "done": 1700, - "donegal": 24172, - "donesia": 41281, - "donet": 33724, - "donetsk": 33999, - "dong": 26242, - "dong": 31478, - "dongha": 28365, - "donghae": 28945, - "donia": 24014, - "donkey": 21415, - "donkeys": 44644, - "donna": 9158, - "donne": 30897, - "donnein": 38308, - "donneinarte": 40193, - "donnell": 35118, - "donnelly": 39070, - "donnie": 47058, - "donnie": 30609, - "donny": 37291, - "donny": 32887, - "dono": 14840, - "donor": 18013, - "donors": 17887, - "donovan": 21499, - "dons": 22127, - "dont": 8094, - "dont": 4632, - "donut": 18471, - "donuts": 13970, - "doo": 4543, - "doo": 11643, - "doodle": 9388, - "doodled": 41030, - "doodles": 22156, - "doodling": 37548, - "dooley": 47609, - "doom": 23263, - "doom": 14344, - "doomed": 33251, - "doomsday": 41791, - "doon": 36612, - "doop": 33886, - "door": 7188, - "door": 2489, - "doors": 4228, - "doorstep": 19533, - "doorway": 46575, - "dop": 42381, - "dop": 31722, - "dope": 42587, - "dope": 10094, - "doping": 30285, - "dopp": 21774, - "doppelg": 45216, - "doppler": 42540, - "dor": 2766, - "dor": 8695, - "dora": 18104, - "dorado": 32350, - "dorchester": 32656, - "dore": 39423, - "dores": 34323, - "dorf": 17296, - "dori": 49270, - "doria": 43186, - "dorian": 44016, - "doris": 24285, - "dork": 36206, - "dorm": 24263, - "doro": 15498, - "doro": 37389, - "dorothy": 20805, - "dors": 31240, - "dorset": 42109, - "dorset": 16047, - "dorsey": 41607, - "dortmund": 24290, - "dory": 36135, - "dos": 44258, - "dos": 5474, - "dose": 11497, - "doses": 37873, - "dossier": 46042, - "dost": 44222, - "dot": 7473, - "dot": 7004, - "dota": 23085, - "dotcom": 12443, - "dote": 31202, - "dothis": 47864, - "dotnet": 43124, - "dotorg": 46587, - "dots": 19019, - "dotted": 47950, - "dou": 1756, - "dou": 23608, - "doub": 19631, - "double": 13013, - "double": 3200, - "doubled": 24948, - "doubleheader": 34668, - "doubles": 12539, - "doubling": 36850, - "doubt": 37071, - "doubt": 8671, - "doubts": 30894, - "douche": 44292, - "doug": 20271, - "doug": 10758, - "dough": 15785, - "dough": 14983, - "doughnut": 32555, - "doughnuts": 31124, - "dougie": 46317, - "dougla": 9140, - "douglas": 10065, - "douglass": 45692, - "doun": 44785, - "dov": 38856, - "dova": 26551, - "dove": 27511, - "dove": 18281, - "dover": 43019, - "dover": 14683, - "doves": 47067, - "dow": 8022, - "dow": 10688, - "dowell": 27344, - "down": 1833, - "down": 1136, - "downe": 46501, - "downed": 35814, - "downer": 42522, - "downers": 43739, - "downey": 29429, - "downfall": 48702, - "downhill": 27387, - "downing": 28140, - "download": 35076, - "download": 3794, - "downloadable": 49105, - "downloaded": 22961, - "downloading": 30519, - "downloads": 26481, - "downpour": 39034, - "downpours": 40160, - "downs": 10706, - "downside": 41937, - "downstairs": 28174, - "downstream": 43822, - "downtime": 41964, - "downton": 45023, - "downton": 42668, - "downtown": 18230, - "downtown": 5061, - "downward": 37430, - "dowski": 43556, - "dox": 44786, - "dox": 14510, - "doyle": 17728, - "doyou": 27256, - "doz": 31106, - "dozen": 16401, - "dozens": 17883, - "dp": 23820, - "dp": 6465, - "dprint": 46644, - "dprinting": 16194, - "dprk": 47920, - "dps": 34288, - "dq": 28741, - "dr": 1084, - "dr": 1701, - "dra": 1114, - "dra": 7402, - "drac": 20168, - "dracing": 41253, - "dracula": 25405, - "draf": 37426, - "draft": 30624, - "draft": 5198, - "drafted": 19129, - "drafting": 33528, - "drafts": 29194, - "drag": 8452, - "drag": 12463, - "dragged": 27884, - "dragging": 37069, - "dragon": 9187, - "dragon": 5471, - "dragonball": 40959, - "dragoncon": 47802, - "dragonfly": 32824, - "dragons": 10203, - "dragrace": 40762, - "drags": 45368, - "drain": 23347, - "drain": 19467, - "drainage": 25953, - "drained": 44630, - "drains": 43638, - "drainthe": 47337, - "drake": 32504, - "drake": 8958, - "dral": 7503, - "dram": 6937, - "dram": 32170, - "drama": 5055, - "dramas": 33467, - "dramati": 43512, - "dramatic": 11240, - "dramatically": 24495, - "drank": 21712, - "draped": 49113, - "drastic": 43159, - "drastically": 35478, - "drau": 18621, - "draw": 17675, - "draw": 4001, - "drawer": 23219, - "drawers": 38975, - "drawing": 36996, - "drawing": 3610, - "drawings": 13397, - "drawn": 8893, - "draws": 12043, - "dray": 25562, - "drayton": 49044, - "drc": 21434, - "dre": 960, - "dre": 14584, - "dread": 17412, - "dread": 31403, - "dreaded": 47227, - "dreadful": 35846, - "dreality": 48367, - "dream": 4595, - "dream": 2984, - "dreambig": 46495, - "dreamcast": 47226, - "dreamed": 27984, - "dreamer": 25692, - "dreamers": 27194, - "dreaming": 11662, - "dreamliner": 49143, - "dreams": 4405, - "dreamt": 43743, - "dreamteam": 40090, - "dreamy": 23517, - "dred": 10903, - "dredge": 48783, - "dren": 29068, - "dren": 47309, - "drenched": 46378, - "dres": 48852, - "dres": 44697, - "dresden": 34836, - "dress": 12622, - "dress": 2595, - "dressage": 36144, - "dressed": 6559, - "dresser": 26346, - "dresses": 8184, - "dressing": 6348, - "drew": 18792, - "drew": 5281, - "drex": 33985, - "drey": 48271, - "dri": 1203, - "dri": 28833, - "drian": 36870, - "dribb": 42153, - "dric": 23448, - "dridge": 22956, - "drie": 40170, - "dried": 16037, - "drier": 39877, - "dries": 33857, - "drif": 33585, - "drift": 18194, - "drifting": 30276, - "drill": 11626, - "drilled": 46338, - "drilling": 18634, - "drills": 24378, - "drin": 3375, - "drin": 47133, - "drink": 14131, - "drink": 3979, - "drinking": 5778, - "drinklocal": 45998, - "drinks": 6732, - "drip": 24050, - "dripping": 38787, - "dris": 35804, - "drive": 11402, - "drive": 2620, - "driven": 9314, - "driver": 27563, - "driver": 4383, - "driverless": 46769, - "drivers": 7384, - "drives": 11441, - "driveway": 26273, - "driving": 37800, - "driving": 4161, - "drizzle": 28240, - "drm": 39674, - "dro": 1494, - "dro": 12442, - "drogba": 49199, - "droid": 38016, - "drome": 9157, - "dron": 43898, - "dron": 23360, - "drone": 33557, - "drone": 9397, - "drones": 14006, - "droo": 30715, - "drool": 41554, - "drooling": 44360, - "drop": 16407, - "drop": 3387, - "dropbox": 47216, - "dropped": 6792, - "dropping": 8339, - "drops": 6437, - "dros": 47033, - "drou": 38558, - "drought": 13935, - "drove": 13753, - "drow": 21159, - "drown": 28571, - "drowned": 34005, - "drowning": 24618, - "drs": 21257, - "dru": 2275, - "dru": 49048, - "drug": 20601, - "drug": 5600, - "drugs": 8021, - "druid": 40297, - "drum": 13353, - "drum": 8698, - "drummer": 13618, - "drummers": 46191, - "drumming": 35480, - "drummond": 42213, - "drums": 11690, - "drun": 15488, - "drunk": 37398, - "drunk": 8232, - "drunken": 28196, - "drupal": 46481, - "drush": 43009, - "drwho": 48342, - "dry": 13544, - "dry": 4501, - "dryer": 24425, - "drying": 23203, - "ds": 3361, - "ds": 646, - "dsa": 47607, - "dsb": 47168, - "dsb": 14257, - "dsburg": 47237, - "dsc": 37240, - "dsd": 45383, - "dsley": 40740, - "dslr": 33740, - "dsm": 39502, - "dson": 40310, - "dsp": 45291, - "dss": 41580, - "dstv": 35027, - "dt": 13104, - "dt": 7427, - "dthe": 13863, - "dtla": 31885, - "dtm": 42407, - "dts": 46233, - "du": 691, - "du": 3686, - "dua": 25244, - "dual": 39739, - "dual": 5347, - "duane": 38946, - "dub": 14526, - "dub": 13144, - "duba": 5485, - "dubai": 32599, - "dubai": 5985, - "dubbed": 27740, - "dublin": 20707, - "dublin": 6145, - "dubnation": 47329, - "dubois": 48046, - "dubrov": 46709, - "dubrovnik": 48724, - "dubs": 27013, - "dubstep": 38303, - "dubu": 43257, - "duc": 979, - "duc": 36446, - "ducati": 28570, - "ducation": 17197, - "duce": 3660, - "duchess": 21713, - "duck": 12708, - "duck": 6910, - "ducks": 11202, - "duct": 26829, - "dude": 48087, - "dude": 5710, - "dudes": 14449, - "dudley": 27324, - "due": 2887, - "duel": 27143, - "dues": 37646, - "duet": 25457, - "duf": 38713, - "duff": 38071, - "duff": 21934, - "duffy": 23599, - "dug": 22743, - "dug": 21000, - "dugg": 40523, - "duggan": 46169, - "dugout": 36831, - "duh": 26716, - "dui": 29693, - "duk": 14160, - "duke": 18402, - "duke": 7732, - "dukes": 27914, - "dul": 6738, - "dulce": 44872, - "dulil": 32565, - "dulkar": 47980, - "dull": 19433, - "dulu": 28865, - "duluth": 32109, - "dulwich": 47343, - "dum": 13400, - "dum": 11564, - "dumb": 15901, - "dumb": 12464, - "dumbass": 38980, - "dummies": 40899, - "dummy": 34246, - "dump": 12655, - "dump": 17146, - "dumped": 23768, - "dumping": 31707, - "dumplings": 35495, - "dumps": 45804, - "dumpster": 45467, - "dun": 2616, - "dun": 18284, - "dunbar": 41453, - "duncan": 31084, - "duncan": 13502, - "dundal": 38185, - "dundas": 39300, - "dundee": 18619, - "dune": 32833, - "dune": 28208, - "dunedin": 40121, - "dunes": 23526, - "dung": 33712, - "dungeon": 28812, - "dungeon": 22931, - "dungeons": 42572, - "dungeonsand": 34970, - "dungeonsanddragons": 35497, - "dunham": 42501, - "duni": 43454, - "dunk": 17222, - "dunkin": 48022, - "dunkin": 36415, - "dunkirk": 46928, - "dunks": 48977, - "dunlop": 34753, - "dunn": 19185, - "dunne": 38538, - "dunno": 24502, - "duo": 8696, - "dup": 36805, - "dup": 10445, - "duper": 44850, - "duplex": 41186, - "duplic": 28992, - "dupont": 35994, - "dur": 4355, - "dur": 23230, - "dura": 28173, - "dura": 47382, - "durability": 43671, - "durable": 22285, - "duran": 28185, - "durango": 44443, - "durant": 24861, - "duras": 27518, - "duration": 31663, - "durban": 24474, - "dure": 19108, - "durga": 38456, - "durham": 26765, - "durham": 14335, - "during": 1590, - "dus": 9931, - "dusa": 28546, - "dusk": 19708, - "dust": 29723, - "dust": 8349, - "dusted": 38274, - "duster": 46280, - "dustin": 42423, - "dustin": 21235, - "dusting": 41756, - "dusty": 22029, - "dut": 32625, - "dutch": 22277, - "dutch": 7991, - "duter": 21624, - "duterte": 22371, - "duties": 19603, - "dutt": 30081, - "dutton": 42771, - "duty": 6458, - "duval": 42459, - "duvet": 48006, - "dux": 28562, - "dv": 4288, - "dv": 26265, - "dvd": 7170, - "dvds": 36655, - "dvn": 29811, - "dvr": 29210, - "dw": 8455, - "dw": 19997, - "dwar": 13487, - "dwarf": 22643, - "dwayne": 31395, - "dwell": 27549, - "dwell": 18755, - "dwelling": 37098, - "dwight": 22473, - "dwp": 46976, - "dwts": 30220, - "dwyer": 43878, - "dx": 22717, - "dx": 15679, - "dy": 1444, - "dy": 907, - "dyce": 48325, - "dye": 37159, - "dye": 15997, - "dyed": 24906, - "dyer": 29495, - "dyes": 39874, - "dying": 5115, - "dyk": 12142, - "dyke": 32632, - "dylan": 21004, - "dylan": 9900, - "dyn": 44289, - "dyn": 30669, - "dynam": 5735, - "dynamic": 10057, - "dynamics": 14329, - "dynamite": 29003, - "dynamo": 28281, - "dynasty": 14593, - "dyne": 42756, - "dyou": 11484, - "dyour": 22525, - "dys": 11022, - "dys": 38384, - "dysfunction": 36865, - "dysfunctional": 40757, - "dysle": 33681, - "dyslexia": 43199, - "dyson": 34475, - "dyssey": 17435, - "dystop": 28276, - "dystopian": 38915, - "dz": 24421, - "dz": 22913, - "dé": 25466, - "dü": 46948, - "dÃŃ": 46988, - "e": 68, - "e": 324, - "ea": 2150, - "ea": 8100, - "eable": 20693, - "each": 31442, - "each": 2416, - "eachother": 40792, - "ead": 42556, - "ead": 45523, - "eae": 27446, - "eag": 3743, - "eager": 21551, - "eagerly": 30094, - "eagle": 20207, - "eagle": 7517, - "eagles": 6920, - "eal": 48872, - "ealing": 40484, - "eames": 49072, - "eamon": 45954, - "ean": 13327, - "ear": 1055, - "ear": 8373, - "earbuds": 47807, - "eared": 9127, - "earl": 30573, - "earl": 14235, - "earle": 40292, - "earlier": 4297, - "earliest": 22097, - "early": 15840, - "early": 2090, - "earn": 33977, - "earn": 8465, - "earned": 8898, - "earnest": 45422, - "earning": 14550, - "earnings": 15912, - "earns": 16760, - "earp": 35296, - "earphones": 44905, - "earring": 28664, - "earrings": 9136, - "ears": 9861, - "eart": 7086, - "earth": 5184, - "earth": 3475, - "earthand": 34229, - "earthandclouds": 34480, - "earthday": 19481, - "earthquake": 10060, - "earthquakes": 32895, - "earthy": 47139, - "earts": 38824, - "eas": 5740, - "ease": 13574, - "easier": 8817, - "easiest": 26314, - "easily": 8197, - "easing": 44825, - "easport": 42251, - "east": 5022, - "east": 2602, - "eastbound": 28827, - "eastbourne": 38455, - "eastenders": 23545, - "easter": 14783, - "easter": 4811, - "eastern": 34522, - "eastern": 6311, - "eastman": 48280, - "easton": 29619, - "eastside": 42650, - "eastwood": 28270, - "easy": 18308, - "easy": 3176, - "eat": 5418, - "eat": 3384, - "eaten": 16750, - "eater": 24060, - "eaters": 37645, - "eatery": 46559, - "eating": 4371, - "eatlocal": 42868, - "eaton": 28462, - "eats": 13188, - "eau": 17608, - "eazy": 36536, - "eb": 12283, - "eb": 8677, - "eba": 40889, - "ebay": 34412, - "ebay": 4099, - "eber": 34020, - "ebo": 46635, - "ebola": 15864, - "ebon": 22013, - "ebony": 30651, - "ebook": 13122, - "ebooks": 25774, - "ec": 747, - "ec": 10879, - "eca": 18465, - "ecar": 34500, - "ecb": 26205, - "ecc": 33128, - "eccc": 47401, - "eccentric": 43228, - "eccle": 27494, - "ece": 2163, - "eces": 5905, - "ecg": 45983, - "ech": 15797, - "ech": 31147, - "echel": 41233, - "echo": 17366, - "echo": 13989, - "echoes": 32564, - "eci": 31936, - "eck": 25866, - "eck": 15969, - "ecker": 39661, - "ecker": 40890, - "ecla": 47806, - "eclec": 25114, - "eclectic": 28382, - "eclip": 30841, - "eclipse": 11505, - "eclub": 38983, - "eco": 5106, - "eco": 10077, - "ecofriendly": 43412, - "ecol": 22706, - "ecological": 25127, - "ecology": 18578, - "ecommerce": 15529, - "econ": 26755, - "econ": 21158, - "econom": 2768, - "economic": 36649, - "economic": 5259, - "economical": 48782, - "economically": 39406, - "economics": 12625, - "economies": 27136, - "economist": 18836, - "economists": 43701, - "economy": 5644, - "ecor": 28962, - "ecosystem": 15788, - "ecosystems": 28725, - "ecoun": 27924, - "ecr": 48572, - "ecraft": 11439, - "ecs": 23485, - "ecstasy": 47286, - "ecstatic": 36244, - "ect": 25168, - "ecu": 13087, - "ecu": 32919, - "ecuador": 19813, - "ecz": 43530, - "ed": 843, - "ed": 538, - "eda": 10804, - "edad": 44724, - "eday": 39258, - "edc": 21245, - "edchat": 14702, - "edd": 35431, - "eddi": 42930, - "eddie": 22748, - "eddie": 9517, - "eddy": 25959, - "ede": 29632, - "eded": 19555, - "edel": 20460, - "edelman": 48139, - "eden": 23621, - "eden": 13741, - "eder": 16249, - "edes": 36247, - "edfringe": 27402, - "edg": 35955, - "edgar": 33543, - "edgar": 17914, - "edge": 16914, - "edge": 5461, - "edged": 39188, - "edges": 20938, - "edgy": 35393, - "edi": 8750, - "edi": 27148, - "edible": 19795, - "edic": 25184, - "edics": 30641, - "edin": 6524, - "edinburgh": 27574, - "edinburgh": 8068, - "eding": 5742, - "edison": 25846, - "edit": 8239, - "edit": 8013, - "edited": 13945, - "edith": 28597, - "editing": 10178, - "edition": 3062, - "editions": 21664, - "editor": 7661, - "editorial": 12325, - "editors": 19486, - "edits": 24945, - "edm": 37843, - "edm": 13539, - "edmon": 11275, - "edmond": 41581, - "edmonds": 46520, - "edmonton": 37311, - "edmonton": 15058, - "edmun": 36561, - "edmund": 27567, - "edna": 39002, - "edo": 29145, - "edo": 18096, - "edon": 41467, - "edor": 30184, - "edou": 47678, - "edp": 46066, - "eds": 1941, - "edsheeran": 30386, - "edt": 15071, - "edtech": 41825, - "edtech": 15262, - "edu": 11757, - "edu": 11799, - "eduardo": 30604, - "educ": 2200, - "educate": 17563, - "educated": 21447, - "education": 22358, - "education": 2806, - "educational": 10400, - "educator": 19875, - "educators": 15420, - "edwar": 27586, - "edward": 26184, - "edward": 7450, - "edwards": 12627, - "edwin": 48718, - "edwin": 22471, - "edy": 17072, - "edy": 4144, - "ee": 2644, - "ee": 4708, - "eed": 17513, - "eee": 24632, - "eee": 9361, - "eeee": 11696, - "eeee": 17570, - "eeeee": 26938, - "eeeeee": 41407, - "eek": 46591, - "eel": 27462, - "eels": 44416, - "eem": 27236, - "een": 47490, - "een": 21230, - "eer": 35409, - "eer": 31846, - "eera": 36664, - "eerie": 33846, - "ees": 40308, - "eet": 48935, - "eez": 39033, - "ef": 1490, - "ef": 1829, - "efa": 16999, - "eface": 48804, - "efan": 33556, - "efc": 22065, - "efcc": 46087, - "efer": 26199, - "eff": 20548, - "eff": 21715, - "effe": 2808, - "effec": 3943, - "effect": 5436, - "effective": 6837, - "effectively": 17516, - "effectiveness": 26847, - "effects": 7331, - "effic": 36004, - "efficacy": 39937, - "effici": 6670, - "efficiency": 11823, - "efficient": 11334, - "efficiently": 32915, - "effor": 6356, - "effort": 40078, - "effort": 6255, - "effortless": 41639, - "effortlessly": 42320, - "efforts": 6847, - "efish": 35813, - "efl": 27172, - "efron": 48111, - "efs": 7389, - "eg": 8053, - "eg": 14599, - "ega": 41193, - "egan": 42943, - "eger": 46704, - "eger": 22767, - "egg": 13778, - "egg": 5911, - "eggplant": 34906, - "eggs": 7099, - "ego": 34712, - "ego": 14250, - "egos": 43992, - "egre": 27044, - "egret": 42002, - "egy": 5224, - "egyp": 10250, - "egypt": 7267, - "egyptian": 12428, - "eh": 9277, - "eh": 9135, - "eha": 48563, - "ehealth": 48617, - "ehr": 45271, - "ehs": 44648, - "ei": 4006, - "ei": 18264, - "eic": 40251, - "eid": 28038, - "eid": 13979, - "eidmubarak": 46275, - "eiffel": 29720, - "eigh": 13468, - "eight": 7910, - "eighteen": 49316, - "eighth": 21237, - "eighty": 47449, - "eil": 29457, - "eileen": 31468, - "ein": 29944, - "ein": 24524, - "eindhoven": 47172, - "eing": 7702, - "einstein": 20587, - "eira": 47708, - "eis": 13802, - "eisen": 25273, - "eisenhower": 35562, - "either": 6036, - "ej": 19887, - "ej": 25009, - "ejec": 29771, - "ek": 4212, - "ek": 2092, - "el": 544, - "el": 832, - "ela": 11284, - "ela": 3787, - "elab": 38866, - "elabor": 26034, - "elaborate": 33855, - "elaine": 22523, - "elan": 17763, - "elan": 18399, - "eland": 24930, - "eland": 6275, - "elas": 41078, - "elast": 27479, - "elastic": 30282, - "elba": 48598, - "elbow": 21965, - "eld": 5684, - "elder": 11791, - "elder": 14416, - "elderly": 15455, - "elders": 28617, - "eldest": 33503, - "elding": 28223, - "elds": 13466, - "ele": 2084, - "ele": 9766, - "eleague": 36577, - "eleanor": 18604, - "elearning": 29969, - "elec": 1564, - "elec": 38768, - "elect": 15336, - "elected": 8828, - "election": 19312, - "election": 4247, - "electionday": 40540, - "elections": 6949, - "elector": 16465, - "electoral": 19544, - "electr": 3654, - "electra": 48959, - "electri": 23927, - "electric": 19547, - "electric": 5031, - "electrical": 12176, - "electrician": 46422, - "electricity": 10950, - "electrifying": 48843, - "electro": 11648, - "electro": 23244, - "electromagnetic": 46530, - "electron": 33396, - "electronic": 33865, - "electronic": 9273, - "electronica": 43119, - "electronics": 13081, - "eled": 20357, - "elee": 44112, - "eleg": 8075, - "elegance": 19146, - "elegant": 11124, - "elek": 34559, - "elem": 25406, - "element": 14909, - "elementary": 8143, - "elements": 10925, - "elen": 30654, - "elen": 39164, - "elena": 19421, - "eleng": 48180, - "eleph": 7554, - "elephant": 10299, - "elephants": 16871, - "eler": 24646, - "eless": 15244, - "eless": 30837, - "elets": 19400, - "elev": 7921, - "elevate": 26736, - "elevated": 23967, - "elevation": 23826, - "elevator": 19021, - "eleven": 31617, - "eleven": 17795, - "elf": 45961, - "elf": 11924, - "elfie": 39955, - "elg": 28790, - "elgin": 31868, - "eli": 1018, - "eli": 6292, - "elia": 10956, - "elian": 42508, - "elias": 47274, - "elias": 29902, - "elic": 34743, - "elic": 13492, - "elie": 38677, - "elie": 26501, - "elier": 14634, - "elife": 37429, - "elife": 12719, - "eligibility": 34937, - "eligible": 16978, - "elijah": 26065, - "elike": 48913, - "elim": 9296, - "elimin": 11386, - "eliminate": 19655, - "eliminated": 29075, - "eliminating": 36619, - "elimination": 24176, - "elin": 25353, - "elin": 13458, - "eline": 46199, - "eline": 7153, - "eling": 9990, - "elio": 47943, - "elion": 30682, - "elions": 44159, - "eliot": 33326, - "elis": 23411, - "elis": 48021, - "elisa": 25610, - "elisa": 44051, - "elisabeth": 33127, - "elise": 27124, - "elit": 40882, - "elite": 32277, - "elite": 6553, - "elited": 43943, - "elitedangerous": 47138, - "elites": 35975, - "elius": 35623, - "elive": 49338, - "elive": 23505, - "elives": 49174, - "elix": 32926, - "elixir": 42887, - "eliz": 42844, - "eliza": 6132, - "eliza": 29992, - "elizabeth": 22397, - "elizabeth": 7026, - "elk": 34013, - "elk": 21896, - "ell": 826, - "ell": 812, - "ella": 20692, - "ella": 2957, - "elland": 43326, - "ellar": 38443, - "ellas": 37053, - "elle": 12818, - "elle": 4765, - "elled": 13146, - "ellen": 14007, - "ellen": 12312, - "ellenshow": 34812, - "eller": 20927, - "eller": 4465, - "ellers": 19010, - "elles": 24431, - "elli": 3367, - "elli": 6673, - "ellic": 38905, - "ellie": 16769, - "ellier": 44054, - "ellin": 40374, - "elling": 2220, - "ellington": 34477, - "ellini": 43256, - "elliot": 20761, - "elliott": 44456, - "elliott": 13788, - "ellip": 44816, - "ellis": 11553, - "ellison": 32295, - "ello": 2512, - "ellor": 14594, - "ells": 2433, - "ellu": 35560, - "elly": 8041, - "elly": 20355, - "elm": 25199, - "elm": 22082, - "elman": 33622, - "elmer": 45958, - "elmo": 32150, - "elo": 6170, - "elo": 13490, - "elon": 26381, - "elon": 20406, - "elondon": 47377, - "elong": 44363, - "elonmusk": 37076, - "elope": 23367, - "eloqu": 37795, - "elos": 44733, - "elot": 43490, - "elove": 43319, - "elove": 19165, - "elover": 21732, - "elovers": 33946, - "els": 35958, - "els": 1645, - "elsa": 22050, - "else": 18857, - "else": 3344, - "elsewhere": 22906, - "elson": 19624, - "elt": 18692, - "elton": 20758, - "elu": 14208, - "elusive": 28903, - "elves": 29111, - "elvi": 47008, - "elvis": 47359, - "elvis": 14498, - "elxn": 37726, - "ely": 12189, - "ely": 1273, - "elyn": 29691, - "elyn": 18126, - "em": 908, - "em": 2270, - "ema": 7002, - "ema": 11131, - "emabiggest": 23101, - "emabiggestfans": 29587, - "email": 33537, - "email": 4462, - "emailed": 40470, - "emailmarketing": 40188, - "emails": 12871, - "eman": 24416, - "eman": 36868, - "emancip": 42996, - "emanuel": 35232, - "emb": 3692, - "embar": 8266, - "embaras": 48019, - "embark": 33953, - "embarra": 11382, - "embarrass": 27183, - "embarrassed": 28217, - "embarrassing": 19653, - "embarrassment": 41346, - "embassy": 13598, - "embe": 46041, - "embed": 19703, - "embedded": 22046, - "embelli": 32144, - "embellished": 46992, - "ember": 47049, - "emblem": 21163, - "embo": 23065, - "embr": 35267, - "embrac": 16928, - "embrace": 12118, - "embraced": 35739, - "embraces": 38404, - "embracing": 22196, - "embro": 12550, - "embroi": 18667, - "embroide": 21530, - "embroidered": 22381, - "embroidery": 20823, - "emc": 20897, - "emc": 31602, - "emcee": 42038, - "eme": 22910, - "eme": 21548, - "emea": 40352, - "emed": 11028, - "emen": 22033, - "ement": 40841, - "ement": 2057, - "ements": 11058, - "emer": 3132, - "emer": 25727, - "emerald": 46878, - "emerald": 16980, - "emerge": 22182, - "emerged": 26425, - "emergen": 24096, - "emergence": 39867, - "emergencies": 35759, - "emergency": 44038, - "emergency": 5897, - "emerges": 30801, - "emerging": 38174, - "emerging": 11113, - "emeritus": 35333, - "emerson": 24147, - "emery": 32678, - "emi": 44327, - "emi": 18525, - "emil": 26794, - "emil": 40624, - "emile": 43926, - "emili": 20709, - "emilia": 34238, - "emilio": 39722, - "emily": 14545, - "emily": 7640, - "emin": 17227, - "emin": 23995, - "eminem": 22129, - "eminent": 33779, - "eming": 40398, - "emir": 13337, - "emir": 47613, - "emirates": 47244, - "emirates": 17867, - "emission": 27761, - "emissions": 14172, - "emit": 49043, - "emma": 18177, - "emma": 7445, - "emmanuel": 48045, - "emmanuel": 20411, - "emmett": 45779, - "emmy": 35625, - "emmy": 17089, - "emmys": 21875, - "emo": 3738, - "emo": 19381, - "emoji": 16327, - "emojis": 27870, - "emon": 34406, - "emor": 45034, - "emory": 44274, - "emotion": 17464, - "emotional": 7357, - "emotionally": 24088, - "emotions": 12904, - "emp": 3831, - "emp": 41004, - "empathy": 22420, - "emper": 12522, - "emperor": 13828, - "empha": 16237, - "emphasi": 47176, - "emphasis": 29588, - "empire": 26212, - "empire": 7614, - "empires": 46510, - "emplo": 3409, - "employ": 37290, - "employ": 39626, - "employe": 5037, - "employed": 26567, - "employee": 36631, - "employee": 9560, - "employees": 7377, - "employer": 21296, - "employers": 17647, - "employment": 10959, - "empor": 27386, - "emporium": 48541, - "empower": 13612, - "empower": 17230, - "empowered": 29087, - "empowering": 20086, - "empowerment": 15747, - "empowers": 46206, - "empress": 26656, - "empty": 41203, - "empty": 7893, - "emra": 39259, - "ems": 2858, - "emt": 46360, - "emu": 48149, - "emu": 29296, - "emul": 23272, - "emy": 31076, - "en": 524, - "en": 576, - "ena": 3452, - "enab": 17308, - "enable": 15642, - "enabled": 23666, - "enables": 23417, - "enabling": 23590, - "enam": 41486, - "enamel": 22746, - "enary": 13132, - "enas": 34536, - "enation": 20860, - "enberg": 15658, - "enburg": 28430, - "enc": 33169, - "enca": 37774, - "encan": 30345, - "encapsul": 40874, - "ence": 6495, - "ence": 954, - "enced": 6549, - "ences": 3777, - "enchan": 17290, - "enchanted": 28258, - "enchanting": 32531, - "enchil": 47396, - "enci": 32207, - "encia": 30068, - "encies": 18729, - "encing": 10326, - "enclosed": 43243, - "enclosure": 37419, - "encom": 44026, - "encore": 20549, - "encoun": 17309, - "encounter": 13164, - "encountered": 32492, - "encounters": 25399, - "encoura": 6169, - "encourage": 12090, - "encouraged": 20299, - "encouragement": 24959, - "encourages": 23848, - "encouraging": 15875, - "encro": 45822, - "encry": 28600, - "encryp": 42928, - "encrypted": 48710, - "encryption": 31423, - "ency": 3484, - "encyclo": 32104, - "encyclopedia": 38376, - "end": 945, - "end": 806, - "enda": 6735, - "endale": 20290, - "endange": 13990, - "endangered": 14931, - "ende": 11373, - "ende": 40306, - "endeav": 18134, - "endeavor": 40502, - "endeavors": 44394, - "endeavour": 38035, - "ended": 2622, - "endemic": 41241, - "endent": 16265, - "ender": 48106, - "ender": 12383, - "enders": 7418, - "endez": 43850, - "endgame": 23042, - "endi": 31359, - "ending": 2695, - "endings": 36516, - "endish": 38841, - "endless": 12688, - "endlessly": 45145, - "endment": 45894, - "endo": 13476, - "endo": 15830, - "endocr": 36486, - "endof": 40786, - "endome": 46996, - "endon": 48018, - "endor": 8092, - "endorf": 37249, - "endorse": 28819, - "endorsed": 24307, - "endorsement": 21205, - "endorses": 34603, - "endorsing": 46779, - "endow": 45895, - "endra": 22321, - "ends": 1339, - "endthe": 46256, - "endu": 26032, - "endur": 19557, - "endurance": 21027, - "endure": 32419, - "enduring": 30851, - "enduro": 47042, - "ene": 3297, - "ene": 6049, - "ened": 2494, - "eneed": 45137, - "enegger": 33235, - "enei": 48906, - "enemies": 15824, - "enemy": 10310, - "enen": 45113, - "ener": 2244, - "ener": 13600, - "energ": 39451, - "energetic": 24197, - "energi": 23044, - "energies": 42374, - "energized": 48635, - "energy": 14974, - "energy": 2650, - "energye": 32271, - "energyefficiency": 40586, - "eners": 48208, - "enes": 42066, - "eness": 11806, - "enet": 46336, - "enew": 29672, - "enews": 13442, - "eney": 20706, - "enez": 33110, - "enf": 38167, - "enfield": 27808, - "enfor": 10592, - "enforce": 40224, - "enforced": 44597, - "enforcement": 12460, - "eng": 1035, - "eng": 6730, - "enga": 22297, - "engag": 6793, - "engage": 11089, - "engaged": 11475, - "engagement": 7281, - "engaging": 13060, - "enge": 26279, - "enge": 2742, - "engel": 38265, - "engen": 48286, - "enger": 6618, - "engers": 7533, - "engine": 3355, - "engine": 5857, - "engineer": 40151, - "engineer": 8517, - "engineered": 26580, - "engineering": 5273, - "engineers": 11494, - "engines": 14487, - "england": 20904, - "england": 3595, - "english": 15942, - "english": 3469, - "engra": 17560, - "engraved": 29421, - "engraving": 33309, - "engul": 43655, - "engv": 28401, - "enh": 7449, - "enhall": 48781, - "enham": 24592, - "enhan": 26827, - "enhance": 13993, - "enhanced": 16070, - "enhancement": 35601, - "enhances": 38259, - "enhancing": 25986, - "eni": 4395, - "eni": 17538, - "enic": 46780, - "enic": 28292, - "enig": 19754, - "enig": 48730, - "enight": 32848, - "enight": 20640, - "enigma": 34998, - "ening": 1133, - "enium": 34380, - "enix": 25720, - "enjo": 1498, - "enjoy": 12981, - "enjoy": 2218, - "enjoyable": 17444, - "enjoyed": 5045, - "enjoying": 3603, - "enjoyment": 34905, - "enjoys": 17024, - "enka": 43942, - "enko": 25312, - "enlar": 38136, - "enligh": 21364, - "enlighten": 28200, - "enlightened": 44032, - "enlightening": 44005, - "enlightenment": 29255, - "enlisted": 43555, - "enly": 43023, - "enn": 43563, - "enna": 8095, - "enne": 21176, - "enne": 11518, - "ennedy": 46266, - "ennes": 43613, - "enni": 7049, - "ennial": 14220, - "ennis": 48923, - "ennis": 26309, - "eno": 9429, - "eno": 12843, - "enoch": 47917, - "enor": 13955, - "enormous": 20129, - "enos": 44759, - "enote": 44955, - "enough": 2744, - "enow": 26876, - "enqu": 28417, - "enqui": 22810, - "enquire": 46658, - "enquiries": 31901, - "enquiry": 45141, - "enri": 18915, - "enrich": 20058, - "enrich": 45504, - "enriched": 45166, - "enrichment": 32903, - "enrique": 25489, - "enrol": 44279, - "enroll": 23739, - "enroll": 30366, - "enrolled": 36853, - "enrollment": 24875, - "enroute": 40548, - "ens": 41799, - "ens": 1323, - "ense": 12657, - "ense": 27658, - "ensemble": 14843, - "ensis": 32842, - "ensla": 37535, - "enslaved": 48675, - "ensure": 7492, - "ensures": 29707, - "ensuring": 19403, - "ent": 724, - "ent": 621, - "enta": 17681, - "ental": 32342, - "ental": 6168, - "entary": 9833, - "entation": 37412, - "ente": 17433, - "ente": 9935, - "ented": 3800, - "entennial": 43088, - "enter": 2963, - "enter": 3819, - "entered": 10679, - "entering": 12580, - "enterpri": 7339, - "enterprise": 9220, - "enterprises": 21219, - "enters": 15287, - "entertain": 5566, - "entertain": 23510, - "entertained": 30631, - "entertainer": 28674, - "entertaining": 13897, - "entertainment": 6166, - "entes": 24213, - "enthr": 36202, - "enthusi": 9631, - "enthusiasm": 20525, - "enthusiast": 27153, - "enthusiastic": 22068, - "enthusiasts": 27514, - "enti": 1938, - "ential": 5194, - "entially": 37695, - "entic": 10340, - "entine": 49212, - "enting": 20526, - "entire": 4709, - "entirely": 13911, - "entirety": 43242, - "entit": 15209, - "entities": 38134, - "entitled": 18680, - "entity": 28455, - "ently": 2922, - "ento": 21917, - "ento": 8762, - "entom": 31676, - "entourage": 47893, - "entr": 7129, - "entrance": 9129, - "entrata": 27304, - "entre": 34188, - "entre": 19600, - "entren": 46959, - "entrepre": 4583, - "entreprene": 4789, - "entrepreneu": 26784, - "entrepreneur": 12119, - "entrepreneur": 8033, - "entrepreneurial": 28261, - "entrepreneurs": 11054, - "entrepreneurship": 12858, - "entries": 13766, - "entry": 5362, - "ents": 870, - "entu": 6650, - "enty": 5657, - "enu": 23430, - "env": 32280, - "env": 39207, - "envel": 20052, - "envelope": 27358, - "envir": 3512, - "enviro": 46200, - "environ": 3599, - "environment": 33039, - "environment": 5501, - "environmental": 7831, - "environmentally": 32855, - "environments": 19577, - "envision": 49031, - "envoy": 29263, - "envy": 21017, - "eny": 20482, - "enya": 36509, - "enyc": 39520, - "enz": 25805, - "enz": 31873, - "enza": 25239, - "enzie": 14839, - "enzo": 31543, - "enzyme": 40348, - "enzymes": 47465, - "eo": 16054, - "eo": 11712, - "eoin": 48634, - "eon": 31915, - "eos": 17805, - "ep": 1178, - "ep": 1117, - "epa": 15866, - "epage": 26931, - "epaper": 33584, - "epcot": 32524, - "eper": 43071, - "eph": 45752, - "eph": 41240, - "ephe": 25129, - "epi": 7219, - "epi": 34641, - "epic": 12683, - "epic": 4991, - "epiconetsy": 49222, - "epide": 17382, - "epidemi": 44447, - "epidemic": 21522, - "epile": 23150, - "epilepsy": 29547, - "epilo": 31291, - "epilots": 39766, - "epiph": 40561, - "epiphany": 43251, - "epis": 24616, - "episcop": 28037, - "episcopal": 31221, - "episo": 2708, - "episode": 2965, - "episodes": 11837, - "epit": 21967, - "epitome": 35114, - "epl": 25950, - "epo": 25810, - "epp": 39054, - "epp": 39593, - "eps": 4090, - "epsilon": 40019, - "epsom": 40364, - "epstein": 34688, - "eq": 39331, - "eq": 33692, - "equ": 2563, - "equal": 17373, - "equal": 10433, - "equality": 48981, - "equality": 9578, - "equally": 18172, - "equals": 30278, - "equation": 28591, - "equations": 38225, - "eque": 19518, - "equestrian": 24728, - "equi": 8752, - "equili": 43262, - "equine": 33801, - "equinox": 32652, - "equip": 6526, - "equip": 36979, - "equipment": 6893, - "equipo": 45688, - "equipped": 18331, - "equitable": 44717, - "equities": 44015, - "equity": 11293, - "equivalent": 19489, - "er": 517, - "er": 528, - "era": 30548, - "era": 2072, - "erable": 18801, - "erad": 24194, - "eradic": 36346, - "eradicate": 46164, - "eral": 6222, - "eran": 13069, - "eras": 19325, - "eras": 39090, - "erase": 33893, - "erased": 46762, - "erasmus": 38935, - "erc": 5360, - "erc": 32382, - "erd": 25645, - "erdo": 21112, - "erdogan": 24453, - "ere": 17907, - "ere": 642, - "erec": 21526, - "erected": 39365, - "ered": 9097, - "eres": 15751, - "ergon": 38120, - "ergy": 19550, - "eri": 2769, - "eri": 9509, - "eria": 11634, - "erial": 5409, - "eric": 1206, - "eric": 5396, - "erica": 13208, - "erich": 26070, - "erick": 27434, - "erick": 36959, - "erickson": 45286, - "ericsson": 39645, - "eridge": 45408, - "erie": 7005, - "eries": 9099, - "erik": 22805, - "erik": 16532, - "erika": 25531, - "erin": 17532, - "erin": 11333, - "erina": 25176, - "ering": 1785, - "erit": 23335, - "eritrea": 30738, - "erjee": 41665, - "erly": 14380, - "erm": 31649, - "erman": 17990, - "ern": 6992, - "ern": 12140, - "ernal": 20868, - "ernan": 34617, - "ernation": 48796, - "erne": 33930, - "ernest": 23006, - "ernie": 23636, - "ernity": 14653, - "erno": 40812, - "ernst": 30099, - "ero": 3211, - "ero": 3732, - "erock": 38206, - "eron": 32837, - "eroom": 46690, - "eros": 30597, - "erose": 48657, - "erosion": 30174, - "erotic": 30708, - "erotica": 39126, - "erous": 6384, - "eroy": 36461, - "erp": 28268, - "err": 22479, - "err": 25346, - "erra": 48446, - "errands": 45485, - "error": 12097, - "errors": 21195, - "erry": 45236, - "erry": 24124, - "ers": 4840, - "ers": 612, - "ersfc": 37925, - "ership": 2884, - "erson": 25780, - "erson": 6811, - "ert": 40325, - "ert": 3112, - "erta": 32007, - "erton": 26245, - "erts": 12921, - "eru": 36068, - "erun": 41642, - "erup": 17093, - "erupted": 48862, - "eruption": 33705, - "erville": 37557, - "erwin": 43724, - "ery": 12467, - "ery": 1692, - "erz": 38711, - "es": 957, - "es": 542, - "esa": 46834, - "esa": 12489, - "esanders": 23099, - "esc": 3330, - "esc": 28420, - "escal": 15902, - "escap": 11499, - "escape": 32484, - "escape": 7568, - "escaped": 18707, - "escapes": 29916, - "escaping": 21767, - "escar": 39229, - "escence": 37972, - "esch": 46760, - "esch": 41945, - "esco": 32482, - "escobar": 48807, - "escor": 24360, - "escort": 24976, - "escorted": 47667, - "escorts": 48574, - "escu": 36517, - "esday": 19553, - "ese": 18766, - "ese": 2260, - "esg": 41674, - "esh": 17119, - "esh": 13407, - "esha": 28799, - "eshop": 38451, - "eshop": 45570, - "eshopsuk": 39349, - "esi": 30064, - "esis": 12414, - "esk": 19359, - "esl": 26201, - "eso": 29890, - "eso": 28921, - "esof": 17047, - "eson": 46845, - "esp": 3849, - "esp": 13870, - "espa": 37301, - "espan": 41731, - "españa": 41118, - "especially": 4878, - "esper": 29216, - "espino": 46633, - "espionage": 43498, - "espn": 22917, - "espn": 7540, - "espnu": 47747, - "espo": 34381, - "esports": 16035, - "espresso": 17098, - "esq": 47352, - "esqu": 34616, - "esque": 25877, - "ess": 3118, - "ess": 9764, - "essa": 39125, - "essay": 12751, - "essays": 27328, - "esse": 22305, - "essen": 30489, - "essence": 17830, - "essenti": 11163, - "essential": 47264, - "essential": 6895, - "essentially": 30042, - "essentials": 16191, - "essex": 30563, - "essex": 11623, - "est": 2291, - "est": 1509, - "esta": 41449, - "esta": 10135, - "estab": 7010, - "establi": 8412, - "establish": 19709, - "established": 13143, - "establishing": 29420, - "establishment": 20213, - "estas": 39072, - "estate": 47130, - "estate": 6159, - "estates": 26054, - "este": 12968, - "este": 20579, - "esteban": 48381, - "esteem": 31541, - "esteemed": 36293, - "ester": 45808, - "esthe": 18468, - "esther": 24393, - "estim": 8904, - "estimate": 21883, - "estimated": 16665, - "estimates": 21957, - "esto": 31589, - "esto": 23958, - "estonia": 26260, - "estonian": 48895, - "estrada": 48116, - "estre": 31271, - "estu": 26272, - "estuary": 35269, - "esur": 35758, - "esville": 39187, - "esy": 46268, - "et": 1169, - "et": 875, - "eta": 8761, - "etal": 25221, - "etary": 13074, - "etc": 5353, - "etched": 40411, - "etching": 41375, - "ete": 38820, - "ete": 40245, - "eter": 8587, - "eter": 17007, - "eternal": 13732, - "eternally": 48486, - "eternity": 23832, - "eters": 18392, - "etf": 31661, - "eth": 4819, - "eth": 5927, - "ethan": 24245, - "ethan": 15958, - "ethanol": 38166, - "ethe": 21312, - "ethel": 45921, - "ether": 23349, - "ethere": 18705, - "ethereal": 40925, - "ethereum": 19612, - "ethernet": 35026, - "ethi": 10327, - "ethic": 39104, - "ethical": 47041, - "ethical": 17679, - "ethics": 13355, - "ethiop": 10897, - "ethiopia": 13920, - "ethiopian": 24507, - "ethnic": 30522, - "ethnic": 16344, - "ethnicity": 46787, - "ethno": 34225, - "ethos": 48768, - "eti": 11188, - "eti": 30394, - "etienne": 46118, - "eties": 15137, - "etihad": 38489, - "etiquette": 37957, - "etis": 38216, - "etisation": 39733, - "etna": 41940, - "eto": 27829, - "eto": 33837, - "eton": 44339, - "etour": 41462, - "etr": 23012, - "etres": 42838, - "ets": 3442, - "etsy": 13237, - "etsy": 6282, - "etsym": 22902, - "etsymntt": 25416, - "etsyshop": 44643, - "ett": 32729, - "ett": 24998, - "etta": 30466, - "ette": 19981, - "ette": 5212, - "ettes": 35326, - "etto": 44219, - "etty": 40759, - "etu": 36593, - "etv": 49155, - "etv": 20325, - "etwork": 20585, - "ety": 25920, - "ety": 2746, - "etz": 36181, - "etz": 25301, - "eu": 1506, - "eu": 3238, - "eucalyp": 41068, - "eucalyptus": 42351, - "euchar": 38362, - "eugen": 30678, - "eugene": 17760, - "eul": 46749, - "eun": 16431, - "eun": 26219, - "eunhyuk": 47526, - "eup": 44435, - "euph": 21386, - "euphoria": 41051, - "eur": 18343, - "eur": 12018, - "eura": 32605, - "eure": 25311, - "euref": 48017, - "eureka": 31686, - "euro": 2039, - "euro": 8463, - "euroleague": 46821, - "europa": 18290, - "europale": 42473, - "europaleague": 44029, - "europarl": 44922, - "europe": 4198, - "europe": 3848, - "european": 26712, - "european": 4759, - "europeans": 37082, - "euros": 22274, - "eurovision": 17593, - "eurozone": 42555, - "eurusd": 40895, - "eus": 44214, - "euston": 46905, - "euthan": 43280, - "euve": 40652, - "eux": 25019, - "ev": 776, - "ev": 10133, - "eva": 6845, - "evacu": 13187, - "evacuated": 26806, - "evacuation": 27353, - "eval": 25139, - "eval": 9703, - "evalu": 10314, - "evaluate": 27174, - "evaluating": 34541, - "evaluation": 17640, - "evan": 12821, - "evan": 12847, - "evangel": 20518, - "evangeli": 21372, - "evangelical": 36151, - "evangelist": 42275, - "evankirstel": 46581, - "evans": 8836, - "evansville": 44782, - "evapor": 33352, - "evasion": 48795, - "eve": 5732, - "eve": 1866, - "eved": 19820, - "evel": 39315, - "evelyn": 26687, - "evement": 8210, - "even": 6359, - "even": 1427, - "evening": 34487, - "evening": 2285, - "evenings": 19994, - "evenly": 45974, - "event": 10612, - "event": 1655, - "eventful": 45628, - "evento": 38155, - "eventprofs": 24980, - "events": 3667, - "eventu": 14055, - "eventual": 45321, - "eventually": 14397, - "ever": 888, - "ever": 1247, - "everest": 21722, - "everett": 25456, - "everglades": 46294, - "evergreen": 23852, - "everlasting": 32849, - "evers": 31914, - "everton": 13315, - "every": 1091, - "every": 1505, - "everybody": 5901, - "everyday": 25049, - "everyday": 5160, - "everyone": 1584, - "everything": 36376, - "everything": 2410, - "everytime": 16911, - "everywhere": 6364, - "eves": 7323, - "evi": 5348, - "evi": 36989, - "evic": 21336, - "eviction": 37111, - "eviden": 46220, - "evidence": 6439, - "evident": 34529, - "evie": 47195, - "evil": 23218, - "evil": 6006, - "eville": 16143, - "eving": 24729, - "evo": 17962, - "evo": 13169, - "evoc": 43133, - "evol": 5350, - "evolu": 7725, - "evolution": 8902, - "evolutionary": 30629, - "evolve": 23406, - "evolved": 22613, - "evolving": 23675, - "evp": 46154, - "evs": 33576, - "ew": 11942, - "ew": 15428, - "ewan": 40247, - "ewe": 48438, - "ewing": 38873, - "ews": 9878, - "ex": 659, - "ex": 4118, - "exac": 5460, - "exact": 12651, - "exactly": 5840, - "exagger": 29766, - "exal": 49324, - "exam": 4428, - "exam": 8785, - "examination": 20970, - "examine": 25728, - "examined": 44004, - "examiner": 29149, - "examines": 28160, - "examining": 30616, - "example": 6228, - "examples": 14790, - "exams": 14028, - "exas": 47536, - "exc": 1302, - "excav": 20733, - "excavation": 45909, - "exce": 10999, - "exceed": 32521, - "exceeded": 36221, - "exceeding": 47213, - "exceeds": 49353, - "excel": 28351, - "excel": 18754, - "excell": 3298, - "excellence": 8171, - "excellency": 36503, - "excellent": 4239, - "excelsi": 47315, - "excep": 8882, - "except": 8541, - "exception": 25018, - "exceptional": 13425, - "exceptionally": 29306, - "excer": 17737, - "excerpt": 20586, - "excess": 22491, - "excessive": 21332, - "exchange": 6616, - "exchanged": 48919, - "exchanges": 29730, - "exchanging": 47760, - "excit": 10510, - "excite": 47711, - "excited": 1889, - "excitement": 11407, - "exciting": 4300, - "exclu": 3114, - "exclude": 49235, - "excluded": 46216, - "excluding": 44326, - "exclusion": 40219, - "exclusive": 3747, - "exclusively": 13565, - "exclusives": 47149, - "excu": 7324, - "excur": 27533, - "excursion": 34869, - "excuse": 9266, - "excuses": 19388, - "exe": 3554, - "exe": 48027, - "exec": 15052, - "execs": 35728, - "execu": 4360, - "execute": 36405, - "executed": 20432, - "execution": 18085, - "executive": 5944, - "executives": 24357, - "exem": 19753, - "exemp": 28602, - "exempl": 36371, - "exemplary": 39123, - "exempli": 41934, - "exempt": 44278, - "exemption": 47481, - "exer": 40295, - "exerc": 5932, - "exercise": 7016, - "exercises": 19669, - "exercising": 39036, - "exeter": 32137, - "exeter": 18837, - "exfoli": 38823, - "exhau": 11154, - "exhaust": 21812, - "exhausted": 21741, - "exhausting": 40035, - "exhaustion": 49221, - "exhi": 3022, - "exhib": 3783, - "exhibit": 24992, - "exhibit": 8209, - "exhibiting": 23889, - "exhibition": 4219, - "exhibitions": 28311, - "exhibitor": 44192, - "exhibitors": 38542, - "exhibits": 30093, - "exhilar": 40262, - "exhilarating": 49289, - "exi": 5297, - "exico": 38712, - "exile": 28566, - "exist": 10899, - "exist": 9645, - "existed": 23198, - "existence": 13832, - "existent": 43541, - "existential": 38752, - "existing": 12886, - "exists": 14608, - "exit": 9374, - "exited": 37581, - "exiting": 39577, - "exits": 34943, - "exmoor": 48260, - "exo": 15600, - "exo": 5842, - "exodus": 30098, - "exol": 42856, - "exop": 35288, - "exoplan": 37980, - "exor": 24506, - "exorcist": 46309, - "exotic": 15639, - "exp": 9923, - "exp": 19066, - "expan": 7512, - "expand": 10382, - "expand": 13141, - "expanded": 18390, - "expanding": 15755, - "expands": 22223, - "expanse": 46886, - "expansion": 10138, - "expansive": 49261, - "expat": 43900, - "expe": 2560, - "expect": 9802, - "expect": 5716, - "expectation": 34273, - "expectations": 12529, - "expected": 5573, - "expecting": 12525, - "expects": 24536, - "expedition": 16761, - "expeditions": 49327, - "expelled": 48834, - "expen": 7216, - "expend": 29302, - "expenditure": 47044, - "expense": 28473, - "expenses": 21797, - "expensive": 9649, - "exper": 1533, - "experi": 4723, - "experience": 31867, - "experience": 2415, - "experienced": 10417, - "experiences": 8233, - "experiencing": 16643, - "experiential": 44952, - "experim": 6697, - "experiment": 13079, - "experimental": 16539, - "experimenting": 28263, - "experiments": 21077, - "expert": 6284, - "expertise": 16555, - "experts": 6960, - "expi": 26850, - "expir": 35077, - "expire": 49315, - "expired": 30200, - "expires": 34739, - "expl": 3261, - "expla": 3517, - "explain": 48918, - "explain": 7304, - "explained": 14229, - "explaining": 13136, - "explains": 6655, - "explan": 13294, - "explanation": 16577, - "explanations": 34383, - "explic": 21011, - "explicit": 33228, - "explo": 3586, - "explode": 31262, - "exploded": 28947, - "explodes": 38119, - "exploding": 34683, - "exploit": 36953, - "exploited": 48554, - "explor": 11958, - "exploration": 14043, - "explore": 10405, - "explore": 5147, - "explorebc": 38754, - "explorecanada": 36600, - "explored": 25016, - "explorer": 15776, - "explorers": 28491, - "explores": 13996, - "exploring": 7584, - "explosion": 13785, - "explosions": 38646, - "explosive": 18888, - "explosives": 44705, - "expo": 7820, - "expo": 6344, - "expon": 27905, - "export": 14444, - "exporting": 47433, - "exports": 20088, - "expose": 23181, - "exposed": 12180, - "exposes": 33575, - "exposing": 28362, - "exposition": 36943, - "exposure": 11903, - "expre": 6085, - "express": 18553, - "express": 5642, - "expressed": 20777, - "expresses": 31931, - "expressing": 30207, - "expression": 11357, - "expressions": 20314, - "expressive": 42060, - "expressway": 31658, - "exquis": 16575, - "exquisite": 17958, - "ext": 5711, - "ext": 20072, - "exten": 5555, - "extend": 14492, - "extended": 9614, - "extending": 25652, - "extends": 20688, - "extension": 10275, - "extensions": 24525, - "extensive": 16870, - "extensively": 47365, - "extent": 24913, - "exter": 9797, - "exterior": 19352, - "extermin": 41671, - "external": 15028, - "extin": 13553, - "extinct": 24488, - "extinction": 21186, - "extingui": 38567, - "extor": 35620, - "extr": 29082, - "extra": 6416, - "extra": 4231, - "extrac": 18550, - "extract": 18962, - "extraction": 28789, - "extracts": 45576, - "extraordin": 23628, - "extraordinaire": 30909, - "extraordinary": 10982, - "extras": 29817, - "extravag": 22299, - "extravaganza": 29461, - "extre": 3978, - "extreme": 38357, - "extreme": 8331, - "extremely": 6519, - "extremism": 31493, - "extremist": 36383, - "extremists": 41425, - "extru": 43010, - "ey": 1541, - "ey": 1477, - "eyang": 28915, - "eye": 5034, - "eye": 3272, - "eyebrow": 34250, - "eyebrows": 19923, - "eyed": 15512, - "eyeing": 34916, - "eyel": 17075, - "eyelashes": 42074, - "eyeliner": 33354, - "eyeon": 25126, - "eyes": 3095, - "eyeshadow": 35213, - "eyewear": 30165, - "eyewitness": 36258, - "eyou": 31996, - "eyour": 40229, - "eyre": 44115, - "ez": 10082, - "ez": 8387, - "eze": 25993, - "eze": 27229, - "ezekiel": 41428, - "ezra": 27552, - "f": 69, - "f": 325, - "fa": 778, - "fa": 2800, - "faa": 27577, - "fab": 2833, - "fab": 5492, - "faber": 43461, - "faber": 42488, - "fabi": 29425, - "fabian": 34539, - "fabio": 31666, - "fabric": 16217, - "fabric": 10033, - "fabricated": 40851, - "fabrication": 33476, - "fabrics": 23159, - "fabulous": 5189, - "fac": 1053, - "fac": 35438, - "facade": 29217, - "face": 2545, - "face": 1710, - "facebook": 36156, - "facebook": 2943, - "faced": 10941, - "faceli": 32023, - "facelift": 36380, - "faceoff": 42710, - "facep": 45285, - "faces": 4905, - "faceted": 43435, - "facetime": 24076, - "facial": 11909, - "facil": 39973, - "facilit": 13567, - "facilitate": 26733, - "facilitated": 43853, - "facilitating": 34796, - "facilities": 10388, - "facility": 8165, - "facing": 7619, - "fact": 17189, - "fact": 3598, - "factfriday": 27953, - "faction": 14629, - "factor": 21082, - "factor": 8124, - "factories": 36492, - "factors": 12733, - "factory": 42483, - "factory": 6072, - "facts": 5085, - "factual": 45471, - "faculty": 9504, - "facup": 25283, - "fad": 12632, - "fad": 47669, - "fade": 20486, - "faded": 26051, - "fades": 40441, - "fading": 32882, - "fadnavis": 38945, - "faf": 31052, - "faf": 43903, - "fag": 25617, - "fag": 39305, - "fah": 25495, - "fah": 35429, - "fahren": 45527, - "fai": 20519, - "fai": 26384, - "fail": 7105, - "fail": 6801, - "failed": 8314, - "failing": 15757, - "fails": 13388, - "failure": 8732, - "failures": 25442, - "faint": 30807, - "fair": 3031, - "fair": 2849, - "fairbanks": 43962, - "faire": 34745, - "faire": 20798, - "fairfax": 29368, - "fairfield": 29664, - "fairgrounds": 38325, - "fairi": 28884, - "fairies": 33590, - "fairly": 14961, - "fairmont": 41547, - "fairness": 29388, - "fairs": 8655, - "fairtrade": 33361, - "fairview": 43479, - "fairway": 44022, - "fairy": 17021, - "fairy": 10444, - "fairytale": 28944, - "fais": 23542, - "faisal": 35459, - "fait": 20567, - "faith": 10653, - "faith": 5080, - "faithful": 15511, - "faiz": 41775, - "fake": 18794, - "fake": 5777, - "faken": 22853, - "fakenews": 26943, - "fakespeare": 49095, - "fal": 2778, - "fal": 40494, - "fala": 47120, - "falcon": 22498, - "falcon": 13571, - "falcons": 13834, - "falk": 34648, - "falkirk": 44080, - "fall": 6489, - "fall": 2359, - "fallen": 8688, - "falling": 48709, - "falling": 7293, - "fallon": 39596, - "fallon": 21281, - "fallontonight": 44627, - "fallout": 49365, - "fallout": 16009, - "falls": 4778, - "falmouth": 38261, - "false": 38948, - "false": 9078, - "falsely": 42321, - "fam": 1058, - "fam": 5128, - "fame": 6573, - "famed": 23302, - "famer": 24554, - "famil": 3395, - "famili": 8488, - "familia": 25622, - "familiar": 10020, - "families": 4612, - "family": 8137, - "family": 1315, - "familyfun": 46308, - "familytime": 47236, - "familytravel": 38222, - "famine": 35847, - "famous": 44811, - "famous": 4096, - "famously": 44505, - "fan": 1675, - "fan": 2261, - "fanart": 41059, - "fanart": 7855, - "fanartfriday": 45346, - "fanatic": 36643, - "fanatics": 39610, - "fanbase": 36921, - "fanboy": 43369, - "fanc": 29017, - "fancafe": 45080, - "fanci": 35908, - "fanclub": 31530, - "fancy": 47622, - "fancy": 6733, - "fand": 19684, - "fandom": 47634, - "fandom": 11534, - "fanfest": 42916, - "fanfic": 47243, - "fang": 14269, - "fang": 27428, - "fangirl": 28813, - "fangirling": 39463, - "fanning": 37282, - "fanny": 30401, - "fans": 32454, - "fans": 1840, - "fansign": 25288, - "fant": 4467, - "fanta": 2703, - "fantaken": 39412, - "fantasia": 49306, - "fantastic": 31289, - "fantastic": 2935, - "fantasy": 15124, - "fantasy": 5267, - "fantasyfootball": 35713, - "fao": 31155, - "faq": 28533, - "far": 1578, - "far": 2384, - "fara": 48562, - "farage": 28340, - "farah": 31547, - "fare": 8620, - "fare": 6461, - "fares": 27525, - "farewell": 10734, - "fargo": 18870, - "fari": 26197, - "farley": 43761, - "farm": 9066, - "farm": 3985, - "farmer": 19735, - "farmer": 10474, - "farmers": 29752, - "farmers": 6402, - "farmersmarket": 41808, - "farmhouse": 26293, - "farming": 10399, - "farmington": 49305, - "farmland": 45258, - "farms": 11277, - "farn": 27527, - "faroo": 39147, - "farra": 33657, - "farrakhan": 46293, - "farrell": 24234, - "fart": 34664, - "farther": 42233, - "fas": 4830, - "fas": 42995, - "fasci": 17191, - "fascin": 7327, - "fascinated": 32964, - "fascinating": 8640, - "fascism": 28213, - "fascist": 23870, - "fascists": 43598, - "fash": 42682, - "fashi": 2099, - "fashion": 6976, - "fashion": 2444, - "fashionable": 24597, - "fashionblogger": 31726, - "fashioned": 21563, - "fashioni": 26062, - "fashionista": 30415, - "fashions": 37601, - "fashionshow": 45653, - "fashionweek": 28684, - "fass": 42398, - "fast": 8509, - "fast": 1953, - "fasten": 44990, - "faster": 8835, - "fastest": 9808, - "fasting": 24656, - "fat": 4751, - "fat": 5484, - "fatal": 12124, - "fatalities": 44168, - "fatally": 34069, - "fate": 26315, - "fate": 11734, - "father": 11607, - "father": 3224, - "fathers": 12780, - "fathersday": 16731, - "fati": 13430, - "fatigue": 23747, - "fatima": 28202, - "fats": 30151, - "fatt": 44131, - "fatty": 22953, - "fau": 5571, - "fau": 31381, - "faucet": 44273, - "faul": 16230, - "faulkner": 37840, - "fault": 13862, - "faults": 42752, - "faulty": 47103, - "fauna": 30808, - "faust": 44772, - "faux": 19429, - "fav": 1355, - "fav": 5426, - "fave": 7272, - "faves": 18003, - "favor": 1766, - "favor": 12160, - "favorable": 35392, - "favored": 46640, - "favorite": 35262, - "favorite": 1916, - "favorited": 36926, - "favorites": 10564, - "favors": 36085, - "favour": 3111, - "favour": 20469, - "favourite": 3342, - "favourites": 16585, - "favs": 18879, - "faw": 21800, - "fawad": 46425, - "fawn": 48624, - "fax": 32535, - "fax": 9337, - "fay": 8939, - "fay": 40074, - "faye": 30257, - "fayette": 32043, - "fayette": 19782, - "fayetteville": 37771, - "fayre": 34982, - "faz": 26238, - "faze": 44880, - "fb": 22637, - "fb": 3307, - "fball": 29663, - "fbf": 20004, - "fbi": 10293, - "fbloggers": 41389, - "fbs": 48454, - "fc": 4278, - "fc": 1399, - "fca": 24540, - "fcb": 26639, - "fcb": 25045, - "fcbarcelona": 32174, - "fcbayern": 35033, - "fcblive": 44608, - "fcc": 21240, - "fck": 40080, - "fck": 49263, - "fcofficial": 27805, - "fcs": 32095, - "fcu": 47898, - "fd": 16972, - "fd": 11525, - "fda": 17823, - "fdi": 45579, - "fdn": 18563, - "fdny": 41084, - "fdr": 42298, - "fe": 623, - "fe": 873, - "fear": 8744, - "fear": 5402, - "feared": 31154, - "fearless": 17470, - "fears": 13867, - "fearthe": 33449, - "feasi": 34977, - "feast": 37963, - "feast": 9564, - "feat": 1703, - "feat": 5611, - "feather": 24905, - "feather": 17871, - "feathers": 21138, - "featherweight": 44939, - "feature": 30413, - "feature": 4527, - "featured": 4743, - "features": 4643, - "featuring": 3706, - "feb": 4317, - "febru": 4202, - "february": 4248, - "fect": 31293, - "fed": 22518, - "fed": 7035, - "feder": 4737, - "federal": 6369, - "federation": 15530, - "federer": 18246, - "federico": 40539, - "fedex": 32603, - "fedora": 45111, - "feds": 30593, - "fee": 28242, - "fee": 9224, - "feed": 6662, - "feed": 5839, - "feedback": 8683, - "feeder": 24482, - "feeders": 44523, - "feeding": 9879, - "feeds": 21788, - "feel": 2408, - "feel": 2051, - "feelin": 19903, - "feeling": 33087, - "feeling": 3045, - "feelings": 9452, - "feels": 4808, - "feelthe": 22322, - "feelthebern": 27743, - "fees": 11765, - "feet": 4804, - "fei": 23441, - "fei": 34217, - "fein": 46707, - "feinstein": 41313, - "fel": 2081, - "fel": 20304, - "feld": 45913, - "feld": 14219, - "feldman": 41942, - "feli": 7498, - "felic": 25845, - "felici": 23379, - "felicia": 41139, - "felicidades": 41648, - "felicity": 35123, - "feline": 29471, - "felipe": 27681, - "felix": 33455, - "felix": 16514, - "feliz": 26104, - "feliz": 20221, - "fell": 33540, - "fell": 6266, - "fella": 17586, - "fellas": 18787, - "feller": 29226, - "fellow": 12099, - "fellow": 5242, - "fellows": 15766, - "fellowship": 13857, - "felony": 31068, - "felt": 5413, - "fem": 24574, - "fem": 36615, - "fema": 41721, - "female": 22062, - "female": 3970, - "females": 21028, - "femi": 38607, - "femin": 11423, - "femini": 11894, - "feminine": 24911, - "feminism": 18784, - "feminist": 14921, - "feminists": 38809, - "femme": 31331, - "fen": 5509, - "fen": 25024, - "fence": 12679, - "fences": 34312, - "fencing": 23489, - "fender": 17117, - "fener": 41208, - "fenerbah": 46652, - "feng": 33291, - "fennel": 28689, - "fent": 26395, - "fenton": 47265, - "fenway": 29206, - "fer": 1765, - "fer": 2897, - "fera": 37705, - "feral": 29972, - "ferdin": 25541, - "ferdinand": 27591, - "fere": 43144, - "feren": 35652, - "ference": 19984, - "ferg": 44938, - "fergie": 39119, - "fergu": 10988, - "fergus": 42041, - "ferguson": 11904, - "fermentation": 45817, - "fermented": 36886, - "fern": 10747, - "fern": 21685, - "fernandes": 44391, - "fernandez": 23436, - "fernando": 17140, - "ferns": 38277, - "feroci": 45652, - "ferr": 7256, - "ferra": 47911, - "ferrari": 9606, - "ferre": 29626, - "ferred": 10432, - "ferreira": 48686, - "ferrell": 41112, - "ferrer": 38904, - "ferri": 42008, - "ferries": 28489, - "ferris": 27532, - "ferry": 38936, - "ferry": 10278, - "fers": 12378, - "fert": 14925, - "fert": 43662, - "fertil": 41987, - "fertile": 44837, - "fertili": 23912, - "fertility": 23528, - "fertilizer": 36786, - "fery": 47448, - "fes": 32300, - "fest": 17383, - "fest": 2590, - "festa": 42124, - "festi": 1943, - "festiv": 19222, - "festival": 20946, - "festival": 2240, - "festivals": 17834, - "festive": 9533, - "festivities": 21020, - "fet": 21409, - "feta": 31705, - "fetal": 42031, - "fetch": 30271, - "fete": 34629, - "fett": 37979, - "fetus": 26768, - "feu": 24912, - "feu": 32990, - "feud": 27365, - "fever": 40896, - "fever": 9989, - "fevre": 43861, - "few": 1939, - "fewer": 19128, - "fex": 41584, - "fex": 26392, - "fey": 39069, - "fey": 23298, - "fez": 43081, - "ff": 1021, - "ff": 1304, - "ffa": 15355, - "ffame": 42873, - "ffc": 19832, - "ffe": 1138, - "ffe": 8631, - "ffect": 29151, - "ffed": 8448, - "ffee": 26377, - "ffel": 22656, - "ffen": 46537, - "ffer": 27369, - "ffer": 11636, - "ffers": 32163, - "fferty": 44771, - "ffes": 46441, - "ffey": 30138, - "fff": 28106, - "ffi": 19961, - "ffic": 4762, - "ffice": 26044, - "ffici": 3639, - "fficial": 39818, - "fficial": 6463, - "fficiency": 27800, - "fficient": 20424, - "ffin": 12779, - "ffin": 7367, - "ffing": 16592, - "ffins": 17898, - "ffl": 39490, - "ffle": 7749, - "ffler": 39819, - "ffles": 19344, - "ffman": 15823, - "ffo": 42264, - "ffs": 4424, - "ffxiv": 26569, - "ffxv": 46786, - "ffy": 26404, - "ffy": 7795, - "fg": 45977, - "fg": 6823, - "fgm": 32178, - "fgo": 46113, - "fh": 21649, - "fh": 21010, - "fhs": 45094, - "fi": 701, - "fi": 3589, - "fia": 8827, - "fiable": 34373, - "fianc": 27752, - "fiance": 44114, - "fiancé": 34039, - "fiasco": 40944, - "fiat": 16740, - "fiawec": 39485, - "fib": 40594, - "fiba": 34993, - "fiber": 35074, - "fiber": 12612, - "fibers": 44587, - "fibre": 21401, - "fibro": 21294, - "fibrosis": 36307, - "fic": 1788, - "fic": 2059, - "fica": 26952, - "fically": 14854, - "fication": 4523, - "fications": 12512, - "ficial": 48192, - "fics": 42505, - "fiction": 6218, - "fictional": 25570, - "fid": 34197, - "fid": 23966, - "fidd": 25218, - "fiddle": 35968, - "fide": 45375, - "fidel": 21740, - "fidel": 36837, - "fidelity": 30109, - "fidget": 48664, - "fie": 28487, - "fie": 10348, - "fied": 29642, - "fied": 2853, - "fiel": 1361, - "field": 7571, - "field": 1570, - "fielder": 11046, - "fieldhouse": 37969, - "fielding": 30465, - "fields": 6494, - "fieldwork": 33155, - "fiends": 37869, - "fier": 11167, - "fier": 10598, - "fierc": 48609, - "fierce": 13896, - "fiercely": 49039, - "fiers": 16113, - "fiery": 24557, - "fies": 9537, - "fiesta": 14580, - "fif": 5309, - "fifa": 21976, - "fifa": 8516, - "fifaworldcup": 38819, - "fifawwc": 41329, - "fife": 24374, - "fifteen": 29504, - "fifth": 25515, - "fifth": 8772, - "fifthharmony": 31075, - "fifty": 24456, - "fifty": 15978, - "fig": 4814, - "fig": 20719, - "figaro": 48044, - "figh": 23274, - "fight": 5262, - "fight": 2757, - "fighter": 35884, - "fighter": 6438, - "fighters": 7371, - "fightfor": 48909, - "fightfor": 35740, - "fighting": 38625, - "fighting": 4652, - "fighton": 45578, - "fights": 12132, - "figs": 38882, - "figu": 6390, - "figur": 16948, - "figurative": 44042, - "figure": 48820, - "figure": 5274, - "figured": 15630, - "figures": 8739, - "figurine": 33306, - "figuring": 31513, - "fiji": 48270, - "fiji": 18285, - "fik": 46589, - "fil": 1142, - "fil": 14915, - "fila": 30992, - "filament": 49252, - "file": 12545, - "file": 4512, - "filed": 13864, - "files": 7850, - "filet": 43155, - "fili": 9590, - "filing": 16576, - "filip": 14368, - "filipino": 19153, - "fill": 15904, - "fill": 6277, - "filled": 5589, - "filler": 32816, - "fillers": 45005, - "fillet": 39276, - "filling": 9736, - "fillion": 38048, - "fillmore": 43922, - "fills": 21750, - "filly": 27690, - "film": 5117, - "film": 1860, - "filmed": 15801, - "filmfare": 42224, - "filmfest": 24508, - "filmfestival": 28066, - "filming": 6866, - "filmmaker": 17202, - "filmmakers": 24896, - "filmmaking": 18226, - "films": 5370, - "fils": 40271, - "filter": 7541, - "filtered": 29926, - "filtering": 47770, - "filters": 18385, - "filth": 39713, - "filthy": 26899, - "filtr": 21408, - "filtration": 42036, - "fim": 47525, - "fin": 735, - "fin": 10663, - "fina": 34497, - "final": 11968, - "final": 1755, - "finale": 7844, - "finalfantasy": 44543, - "finalfour": 46999, - "finalist": 12620, - "finalists": 13422, - "finalized": 48930, - "finally": 1992, - "finals": 4536, - "finan": 4807, - "finance": 6117, - "finances": 28767, - "financi": 12846, - "financial": 19783, - "financial": 4930, - "financially": 28124, - "financing": 18375, - "finch": 18523, - "find": 18638, - "find": 1416, - "finder": 15045, - "finders": 43884, - "findia": 47064, - "finding": 37455, - "finding": 6002, - "findings": 16529, - "findlay": 48227, - "findom": 36463, - "finds": 6680, - "findyour": 25936, - "findyourpark": 38924, - "fine": 12042, - "fine": 3797, - "fineart": 7484, - "fineart": 16005, - "fineartamerica": 7724, - "fined": 20094, - "finely": 46120, - "finer": 36681, - "fines": 25053, - "finesse": 46047, - "finest": 7707, - "fing": 6485, - "fing": 17955, - "finger": 13480, - "finger": 8895, - "fingerprint": 39579, - "fingers": 9690, - "fini": 2405, - "finish": 42178, - "finish": 3958, - "finished": 3078, - "finisher": 38636, - "finishers": 48661, - "finishes": 13078, - "finishing": 7912, - "finite": 48312, - "finity": 41463, - "finity": 21273, - "fink": 40158, - "finland": 10775, - "finley": 41652, - "finn": 28479, - "finn": 16925, - "finna": 35180, - "finnish": 19616, - "fino": 30083, - "fins": 32810, - "fintech": 48929, - "fintech": 8899, - "fion": 27476, - "fiona": 20099, - "fior": 37086, - "fiore": 44997, - "fioren": 33188, - "fiorentina": 43713, - "fios": 42521, - "fir": 770, - "fir": 16233, - "fire": 2951, - "fire": 1769, - "firearm": 40311, - "firearms": 23960, - "fireball": 40543, - "firec": 42806, - "fired": 8846, - "firefighter": 20498, - "firefighters": 12600, - "firefly": 33997, - "firefox": 35372, - "fireman": 46085, - "firen": 34752, - "firenze": 38445, - "fireplace": 23050, - "fires": 8749, - "fireside": 36185, - "firework": 40750, - "fireworks": 10641, - "firing": 15105, - "firm": 16936, - "firm": 7705, - "firmly": 29156, - "firms": 13655, - "firmware": 42691, - "first": 6853, - "first": 874, - "firstdayof": 44297, - "firsth": 48512, - "firsts": 47884, - "firth": 26078, - "fis": 7846, - "fis": 47683, - "fiscal": 20825, - "fischer": 26532, - "fish": 6431, - "fish": 2759, - "fisher": 11175, - "fisher": 9176, - "fisheries": 24612, - "fisherman": 25055, - "fishermen": 28547, - "fishers": 42065, - "fishery": 49057, - "fishes": 35470, - "fishing": 31703, - "fishing": 4935, - "fishy": 35665, - "fist": 48340, - "fist": 17085, - "fit": 2366, - "fit": 2478, - "fitbit": 33768, - "fitch": 44614, - "fitfam": 20662, - "fitnes": 47285, - "fitness": 20044, - "fitness": 4838, - "fits": 6401, - "fitt": 32994, - "fitted": 14863, - "fitter": 42096, - "fitters": 32364, - "fitting": 11769, - "fittings": 45787, - "fitz": 11120, - "fitz": 25913, - "fitzgerald": 20606, - "fitzpatrick": 37141, - "fiu": 38374, - "five": 19508, - "five": 3127, - "fives": 44066, - "fix": 4596, - "fix": 6028, - "fixed": 9393, - "fixes": 25473, - "fixing": 17423, - "fixture": 17317, - "fixtures": 19904, - "fizz": 31242, - "fj": 43183, - "fj": 46447, - "fjor": 31260, - "fk": 12410, - "fl": 1082, - "fl": 2685, - "fla": 1577, - "fla": 20292, - "flag": 11536, - "flag": 4859, - "flagged": 45012, - "flags": 12221, - "flagship": 19779, - "flagstaff": 40406, - "flair": 24938, - "flake": 21221, - "flakes": 20934, - "flam": 10559, - "flame": 40351, - "flame": 13484, - "flamen": 28826, - "flamenco": 37362, - "flames": 13441, - "flamin": 42693, - "flaming": 34782, - "flamingo": 30323, - "flan": 14572, - "flanagan": 28641, - "flanders": 34837, - "flank": 44553, - "flann": 39510, - "flannel": 37807, - "flap": 35253, - "flappy": 40241, - "flare": 21185, - "flares": 46088, - "flash": 6089, - "flash": 5815, - "flashback": 14616, - "flashback": 11988, - "flashbackfriday": 15014, - "flashbacks": 47056, - "flashes": 31259, - "flashing": 31764, - "flashlight": 37256, - "flask": 36194, - "flat": 8986, - "flat": 6313, - "flats": 17228, - "flatt": 45498, - "flattering": 43267, - "flaun": 41421, - "flav": 7191, - "flavo": 28895, - "flavor": 31835, - "flavor": 11818, - "flavored": 29350, - "flavorful": 49135, - "flavors": 16930, - "flavour": 17026, - "flavoured": 42397, - "flavours": 21083, - "flaw": 14268, - "flaw": 34978, - "flawed": 35136, - "flawless": 15531, - "flaws": 30492, - "flax": 43443, - "fle": 2428, - "fle": 44964, - "flea": 24883, - "fleck": 28143, - "fled": 26731, - "flee": 19427, - "flee": 30167, - "fleece": 25038, - "fleeing": 30543, - "fleek": 43513, - "fleet": 35922, - "fleet": 9147, - "fleetwood": 28883, - "fleming": 25769, - "fler": 48789, - "flesh": 17495, - "flet": 16102, - "fletcher": 19810, - "fleur": 28593, - "flew": 13768, - "flex": 16426, - "flex": 12038, - "flexi": 10032, - "flexibility": 22547, - "flexible": 14502, - "flexing": 48483, - "fli": 2472, - "flick": 13746, - "flick": 23414, - "flickr": 17755, - "flies": 8070, - "flight": 24701, - "flight": 3795, - "flights": 10515, - "flin": 24730, - "flin": 43816, - "flinders": 44647, - "fling": 22768, - "flint": 28306, - "flint": 18324, - "flip": 20385, - "flip": 11035, - "flipk": 30829, - "flipkart": 33154, - "flipped": 28144, - "flipping": 25881, - "flips": 35089, - "flir": 24330, - "flirt": 38352, - "flirting": 35243, - "flix": 40663, - "flo": 1945, - "flo": 20711, - "float": 16123, - "floating": 12619, - "floats": 33272, - "flock": 36297, - "flock": 21822, - "flondon": 47366, - "floo": 4062, - "flood": 23793, - "flood": 7148, - "flooded": 19706, - "flooding": 10204, - "floods": 16369, - "floor": 23657, - "floor": 4125, - "flooring": 19227, - "floors": 15671, - "flop": 22994, - "floppy": 38267, - "flops": 29146, - "flor": 15784, - "flor": 41669, - "flora": 18906, - "floral": 10732, - "florals": 48331, - "floren": 37706, - "florence": 11617, - "flores": 21537, - "flori": 3482, - "florian": 41861, - "florida": 34264, - "florida": 3966, - "florist": 38403, - "floss": 36453, - "flotus": 35181, - "flour": 18592, - "flouri": 23239, - "flourish": 36038, - "flow": 2180, - "flow": 5608, - "flower": 12772, - "flower": 4055, - "flowering": 19953, - "flowers": 4023, - "flowing": 14922, - "flown": 25659, - "flows": 16715, - "floyd": 46369, - "floyd": 13656, - "flu": 3698, - "flu": 13528, - "fluctu": 40181, - "fluence": 38169, - "fluent": 30025, - "fluff": 31174, - "fluffy": 40346, - "fluffy": 17054, - "fluid": 43803, - "fluid": 16717, - "fluids": 41490, - "fluor": 45127, - "fluore": 26974, - "fluorescent": 35036, - "fluori": 45611, - "flur": 31591, - "flush": 25777, - "flushing": 43754, - "flute": 23746, - "flux": 25249, - "flwx": 30907, - "fly": 5666, - "fly": 3228, - "flye": 30873, - "flyeagles": 39927, - "flyeaglesfly": 39931, - "flyer": 11875, - "flyers": 14181, - "flyfishing": 31800, - "flying": 20782, - "flying": 4610, - "flyn": 40676, - "flynn": 15721, - "flyo": 33506, - "flyover": 38083, - "fm": 13715, - "fm": 3689, - "fman": 25152, - "fml": 26730, - "fmr": 32875, - "fn": 22773, - "fn": 21763, - "fnc": 46506, - "fo": 898, - "fo": 6157, - "foal": 40386, - "foam": 30039, - "foam": 14587, - "foamed": 26711, - "fob": 40315, - "focal": 30934, - "focu": 5827, - "focus": 4353, - "focused": 9319, - "focuses": 20093, - "focusing": 15551, - "fod": 31015, - "fod": 43299, - "fodils": 44411, - "foe": 22952, - "foes": 46279, - "fog": 9417, - "foggy": 19770, - "foil": 17302, - "fol": 1106, - "fol": 48616, - "fold": 35201, - "fold": 11021, - "foldable": 48307, - "folded": 25233, - "folder": 25717, - "folding": 15464, - "folds": 24266, - "foley": 22850, - "foli": 7713, - "folia": 48964, - "foliage": 26350, - "folio": 10772, - "folk": 10665, - "folk": 6032, - "folke": 47190, - "folkl": 27273, - "folklore": 22133, - "folklore": 28620, - "folklorethursday": 23270, - "folks": 5422, - "follo": 41417, - "follow": 1964, - "follow": 1979, - "followart": 40957, - "followback": 33863, - "followed": 6499, - "follower": 17039, - "followers": 4856, - "following": 3473, - "followme": 29668, - "followparty": 44757, - "follows": 11287, - "followthe": 30747, - "folly": 41408, - "folsom": 42108, - "fom": 34540, - "fon": 5017, - "fon": 38318, - "fond": 19964, - "fonda": 44609, - "fondue": 48321, - "fone": 40672, - "font": 37610, - "font": 16248, - "fontaine": 37864, - "fontana": 43643, - "fontein": 45062, - "fonts": 32801, - "foo": 1183, - "foo": 23435, - "food": 4586, - "food": 1559, - "foodand": 38317, - "foodbank": 31926, - "foodie": 30762, - "foodie": 9847, - "foodies": 22416, - "foodnetwork": 46793, - "foods": 7057, - "foodsecurity": 49329, - "foodtruck": 47682, - "fool": 23959, - "fool": 12212, - "fooled": 28761, - "fooling": 47964, - "foolish": 33824, - "fools": 15946, - "foot": 6702, - "foot": 4738, - "footage": 11130, - "footb": 33466, - "football": 9376, - "football": 1882, - "footballer": 20646, - "footballers": 30269, - "footed": 38040, - "footh": 25951, - "foothills": 37020, - "footpath": 48858, - "footprint": 23206, - "footprints": 39640, - "footsteps": 27289, - "footwear": 22772, - "footy": 39866, - "footy": 18922, - "for": 645, - "for": 556, - "forage": 46871, - "foraging": 39056, - "forall": 17824, - "forbe": 49098, - "forbes": 13925, - "forbi": 24754, - "forbidden": 25164, - "force": 12068, - "force": 2869, - "forced": 8201, - "forces": 5381, - "forchange": 35848, - "forcing": 21573, - "ford": 3751, - "ford": 1623, - "fordfc": 28581, - "fordham": 48792, - "fords": 29351, - "fordshire": 14645, - "fore": 1484, - "fore": 1332, - "forec": 34155, - "forecast": 7361, - "forecasting": 38133, - "forecasts": 27696, - "foreclo": 44916, - "forefront": 37679, - "foreground": 35186, - "forehead": 25394, - "foreig": 26497, - "foreign": 42255, - "foreign": 6046, - "foreigners": 38549, - "foreman": 36174, - "foremost": 42128, - "foren": 16526, - "forensic": 23158, - "forensics": 38763, - "forest": 18760, - "forest": 4167, - "forestation": 33939, - "forestry": 26281, - "forests": 14095, - "forever": 14748, - "forever": 3225, - "forevery": 40605, - "forex": 40200, - "forex": 17395, - "forfe": 44871, - "forge": 19232, - "forged": 28105, - "forget": 46153, - "forget": 2678, - "forgets": 35613, - "forgetting": 25452, - "forgi": 22080, - "forgive": 15332, - "forgiven": 44894, - "forgiveness": 23585, - "forgood": 39169, - "forgot": 6483, - "forgotten": 7994, - "fork": 24501, - "fork": 13700, - "forkids": 48571, - "forklift": 43202, - "forks": 28769, - "forlife": 17624, - "form": 1157, - "form": 1907, - "forma": 38829, - "formal": 12978, - "formally": 24867, - "format": 16252, - "format": 11874, - "formation": 2510, - "formations": 37715, - "formative": 48882, - "formats": 32085, - "forme": 42085, - "formed": 6528, - "former": 2276, - "formerly": 20866, - "formid": 38599, - "formidable": 39834, - "forming": 15443, - "formity": 42290, - "forms": 5161, - "formu": 8689, - "formul": 23923, - "formula": 24485, - "formula": 10776, - "formulae": 34586, - "formulated": 45066, - "forre": 38876, - "forrest": 25205, - "forrester": 45338, - "forsa": 48958, - "forsale": 13303, - "forster": 42923, - "forsy": 29629, - "forsyth": 40952, - "fort": 12300, - "fort": 2921, - "forte": 44350, - "forte": 27367, - "forth": 17068, - "forth": 11932, - "forthcoming": 19989, - "forthe": 12521, - "forti": 26984, - "fortified": 46486, - "fortn": 14428, - "fortnight": 39235, - "fortnite": 38734, - "fortnite": 17890, - "fortress": 19988, - "fortun": 6950, - "fortunate": 19898, - "fortunately": 34358, - "fortune": 40931, - "fortune": 11451, - "fortunes": 41989, - "forty": 24399, - "forum": 37851, - "forum": 4538, - "forums": 31518, - "forwar": 34364, - "forward": 47031, - "forward": 2342, - "forwards": 38974, - "foryou": 35150, - "forz": 46056, - "forza": 33293, - "forza": 28089, - "fos": 36925, - "fos": 22081, - "foss": 14240, - "foss": 37911, - "fossil": 20419, - "fossil": 15202, - "fossilfriday": 26079, - "fossils": 30652, - "foster": 26778, - "foster": 8139, - "fostering": 35996, - "fosters": 37644, - "foto": 15908, - "foto": 12823, - "fotogra": 23687, - "fotografia": 40256, - "fotos": 26124, - "fou": 14516, - "fought": 10844, - "foul": 19784, - "foun": 3154, - "found": 3454, - "found": 1546, - "foundation": 4058, - "foundations": 25219, - "founded": 12240, - "founder": 5145, - "founders": 14602, - "founding": 15317, - "foundry": 31426, - "fountain": 44863, - "fountain": 13405, - "fountains": 37411, - "four": 5113, - "four": 2721, - "foursquare": 34484, - "fourteen": 46255, - "fourth": 7516, - "fourthofjuly": 47805, - "fow": 17084, - "fowl": 31685, - "fowler": 20980, - "fox": 5007, - "fox": 3240, - "foxandfriends": 45841, - "foxes": 24145, - "foxnews": 18830, - "foxsports": 39267, - "foxtv": 49396, - "foxx": 32993, - "foxy": 27945, - "foy": 30284, - "foyer": 38011, - "foyle": 47902, - "fp": 28058, - "fp": 8941, - "fpl": 27970, - "fpp": 36464, - "fps": 25300, - "fpv": 43175, - "fr": 936, - "fr": 5512, - "fra": 3368, - "fra": 15644, - "frac": 15607, - "fracking": 21894, - "fractal": 46471, - "fraction": 26788, - "fractu": 25847, - "fracture": 28995, - "fractured": 37421, - "fractures": 46213, - "frag": 13093, - "fragile": 23579, - "fragment": 39209, - "fragments": 41424, - "fragr": 15403, - "fragrance": 17874, - "fragrances": 44567, - "fragrant": 37030, - "fram": 27987, - "frame": 11029, - "frame": 6481, - "framed": 13135, - "frames": 15479, - "framework": 13195, - "frameworks": 43136, - "framing": 24539, - "frampton": 41733, - "fran": 2118, - "fran": 18878, - "franc": 3872, - "franc": 42340, - "franca": 48952, - "france": 12045, - "france": 3552, - "frances": 20803, - "francesca": 32327, - "francesco": 25816, - "franch": 11756, - "franchi": 46438, - "franchise": 13664, - "franci": 46458, - "francis": 22187, - "francis": 7660, - "francisco": 6887, - "franco": 17934, - "franco": 17052, - "francois": 29317, - "frank": 5390, - "frank": 5229, - "franken": 20487, - "franken": 48252, - "frankenstein": 26410, - "frankfur": 17442, - "frankfurt": 18598, - "franki": 39227, - "frankie": 38373, - "frankie": 16215, - "franklin": 40935, - "franklin": 9999, - "frankly": 38015, - "franks": 42855, - "frans": 47892, - "franz": 25449, - "franç": 38381, - "fraser": 39082, - "fraser": 16754, - "frat": 15225, - "frat": 39292, - "fraternity": 24433, - "frau": 23063, - "fraud": 40647, - "fraud": 9961, - "fraudul": 42655, - "fraudulent": 47408, - "fray": 41154, - "frazier": 32841, - "frc": 41507, - "fre": 821, - "fre": 43165, - "freak": 20352, - "freak": 13701, - "freaked": 43511, - "freakin": 23900, - "freaking": 11992, - "freaks": 27009, - "freaky": 31583, - "freck": 33328, - "freckles": 48036, - "fred": 9486, - "fred": 6678, - "freddie": 41890, - "freddie": 17014, - "freddy": 24394, - "freder": 10745, - "frederic": 41165, - "frederick": 37103, - "frederick": 18570, - "fredo": 48241, - "free": 2065, - "free": 1139, - "freebie": 35865, - "freebies": 28630, - "freec": 46569, - "freed": 12585, - "freed": 23392, - "freedom": 17992, - "freedom": 4511, - "freedoms": 32500, - "freef": 48678, - "freel": 14174, - "freelance": 21942, - "freely": 24436, - "freeman": 16450, - "freep": 32499, - "freepalestine": 39242, - "freer": 44676, - "frees": 27455, - "freestyle": 15594, - "freeway": 24927, - "freeze": 14187, - "freezer": 25390, - "freezing": 12499, - "frei": 30183, - "freight": 17023, - "fremantle": 48012, - "fremont": 34578, - "fren": 2919, - "french": 13118, - "french": 3461, - "frenzy": 30084, - "frequ": 9211, - "frequencies": 45319, - "frequency": 18825, - "frequent": 19836, - "frequently": 22434, - "fresco": 31609, - "fresh": 4065, - "fresh": 2975, - "fresher": 49284, - "freshers": 35810, - "freshest": 46809, - "freshly": 16081, - "freshman": 9381, - "freshmen": 21292, - "freshness": 45872, - "freshwater": 24803, - "fresno": 40879, - "fresno": 20995, - "fret": 40510, - "freud": 40787, - "frey": 22136, - "frey": 9082, - "fri": 815, - "fri": 6882, - "friars": 30513, - "fric": 18981, - "frick": 46304, - "friction": 38563, - "frid": 46388, - "frida": 36001, - "friday": 6350, - "friday": 1461, - "fridayfeeling": 11952, - "fridaymotivation": 38544, - "fridaynight": 44858, - "fridayreads": 37736, - "fridays": 15589, - "fridaythe": 47642, - "fridge": 13491, - "fridges": 40734, - "frie": 36999, - "fried": 13743, - "fried": 7310, - "friedman": 29402, - "friedrich": 34171, - "friend": 3017, - "friend": 1625, - "friendly": 44612, - "friendly": 4681, - "friends": 38875, - "friends": 1574, - "friendship": 42674, - "friendship": 7679, - "friendships": 28840, - "fries": 11369, - "frifotos": 40493, - "friger": 20785, - "friggin": 48300, - "frigh": 34831, - "fright": 24277, - "fright": 40207, - "frightened": 47136, - "frightening": 39290, - "fringe": 10640, - "fris": 37252, - "frisbee": 45768, - "frisco": 35945, - "frit": 34614, - "fritz": 29860, - "friyay": 38887, - "frm": 12951, - "fro": 626, - "fro": 26603, - "frock": 45306, - "frog": 26494, - "frog": 11438, - "frogs": 20781, - "from": 8330, - "from": 633, - "frome": 48691, - "fromhome": 41477, - "fromthe": 18756, - "fron": 1847, - "fron": 18036, - "front": 10996, - "front": 2184, - "frontal": 35794, - "frontier": 18253, - "frontiers": 38396, - "frontline": 29589, - "frontman": 36775, - "fronts": 26846, - "froome": 48560, - "frosh": 47069, - "frost": 39420, - "frost": 11619, - "frosted": 35988, - "frosting": 33872, - "frosty": 22760, - "froze": 47788, - "frozen": 42464, - "frozen": 8507, - "frs": 26216, - "fru": 3248, - "fruit": 16771, - "fruit": 5190, - "fruitful": 31494, - "fruits": 13282, - "fruity": 22320, - "frustr": 16046, - "frustrated": 25111, - "frustrating": 31342, - "frustration": 30535, - "fry": 33914, - "fry": 13686, - "fryer": 49217, - "frying": 38516, - "fs": 23699, - "fs": 3854, - "fsa": 33373, - "fsu": 44185, - "fsu": 19317, - "ft": 3391, - "ft": 981, - "fta": 41975, - "ftc": 33752, - "fted": 5612, - "fter": 25063, - "fthe": 22886, - "ftheday": 9823, - "fting": 6174, - "fton": 26605, - "ftp": 42649, - "fts": 3767, - "ftse": 46717, - "ftw": 19298, - "fty": 17494, - "fu": 665, - "fu": 9098, - "fuch": 42617, - "fudge": 24270, - "fue": 43723, - "fuego": 41500, - "fuel": 21113, - "fuel": 5945, - "fueled": 28792, - "fueling": 38793, - "fuelled": 48357, - "fuels": 19365, - "fuentes": 44393, - "fuer": 29645, - "fug": 29227, - "fugitive": 39257, - "fuji": 15573, - "fuji": 21634, - "fujifilm": 24765, - "fuk": 31051, - "fuku": 20728, - "fukushima": 33929, - "ful": 1814, - "ful": 857, - "fulbright": 41834, - "fulfill": 43675, - "fulfill": 27467, - "fulfilled": 29919, - "fulfilling": 30621, - "fulfillment": 45573, - "fulham": 25574, - "full": 9407, - "full": 1476, - "fuller": 20225, - "fullerton": 42822, - "fullest": 35603, - "fully": 39142, - "fully": 2401, - "fulness": 10526, - "fuls": 41606, - "fulton": 26725, - "fum": 38393, - "fumble": 49373, - "fun": 1229, - "fun": 1499, - "func": 8679, - "function": 8093, - "functional": 12885, - "functionality": 33316, - "functioning": 25479, - "functions": 18001, - "fund": 19089, - "fund": 4877, - "fundam": 11670, - "fundament": 18852, - "fundamental": 17627, - "fundamentally": 45378, - "fundamentals": 27887, - "funday": 15439, - "funded": 10588, - "funding": 5588, - "fundra": 6201, - "fundraiser": 10049, - "fundraising": 10755, - "funds": 7066, - "funer": 40693, - "funeral": 10606, - "funfact": 31596, - "funfactfriday": 40710, - "fungal": 38838, - "fungi": 27837, - "fungus": 30677, - "funk": 37353, - "funk": 13372, - "funko": 49402, - "funko": 23697, - "funky": 16492, - "funnel": 27862, - "funnier": 42232, - "funniest": 15557, - "funny": 19124, - "funny": 3789, - "funrun": 34185, - "fur": 2395, - "fur": 9686, - "furi": 40816, - "furious": 17522, - "furman": 49238, - "furn": 21348, - "furnace": 31913, - "furnished": 37388, - "furnitu": 45696, - "furniture": 7993, - "furry": 33414, - "furry": 15351, - "fursuit": 25306, - "fursuit": 43083, - "fursuitfriday": 27917, - "further": 5583, - "fury": 14404, - "fus": 18419, - "fuse": 23386, - "fused": 38994, - "fusion": 44661, - "fusion": 9364, - "fuss": 26331, - "fut": 21460, - "fut": 34049, - "futbol": 33014, - "futsal": 20558, - "futu": 33454, - "futur": 38840, - "future": 7959, - "future": 1904, - "futureof": 22599, - "futureofwork": 33202, - "futures": 13488, - "futuri": 19068, - "futurism": 48435, - "futurist": 48086, - "futuristic": 30987, - "fuzz": 47128, - "fuzz": 40443, - "fuzzy": 25876, - "fv": 29795, - "fw": 23934, - "fw": 5277, - "fwd": 27052, - "fx": 17807, - "fx": 9025, - "fy": 8440, - "fy": 2702, - "fyi": 16014, - "fying": 5294, - "fz": 46400, - "fé": 34072, - "g": 70, - "g": 326, - "ga": 1275, - "ga": 1531, - "gaa": 10715, - "gaal": 40867, - "gaard": 24645, - "gab": 3927, - "gab": 37382, - "gabbana": 36272, - "gabby": 48115, - "gabby": 24567, - "gabe": 18916, - "gabi": 41931, - "gable": 33387, - "gables": 40928, - "gabri": 8311, - "gabriel": 31684, - "gabriel": 13244, - "gabrielle": 33572, - "gaby": 46420, - "gac": 32520, - "gad": 7786, - "gad": 44651, - "gadget": 25525, - "gadgets": 22840, - "gado": 29489, - "gae": 22003, - "gael": 35663, - "gaelic": 31173, - "gaf": 21354, - "gaf": 32670, - "gag": 14121, - "gag": 18844, - "gaga": 9782, - "gage": 21081, - "gah": 27750, - "gai": 24214, - "gai": 25153, - "gaia": 41269, - "gail": 41160, - "gail": 27676, - "gain": 21536, - "gain": 6202, - "gaine": 35747, - "gained": 14489, - "gaines": 49225, - "gainesville": 40427, - "gaining": 15260, - "gains": 42751, - "gains": 12107, - "gal": 2001, - "gal": 4488, - "gala": 7211, - "galac": 18864, - "galactic": 25514, - "galap": 41115, - "galapagos": 44057, - "galat": 39853, - "galatasar": 42413, - "galatasaray": 47787, - "galax": 5647, - "galaxies": 32435, - "galaxy": 32130, - "galaxy": 6545, - "gale": 37658, - "gale": 21380, - "galerie": 44539, - "gales": 48633, - "gali": 17546, - "gali": 30552, - "galicia": 47927, - "galileo": 39671, - "gall": 3011, - "gall": 33374, - "galla": 16847, - "gallagher": 19168, - "galleria": 40656, - "galleries": 22304, - "gallery": 36648, - "gallery": 3830, - "galley": 48917, - "galli": 22568, - "gallipoli": 47249, - "gallo": 37350, - "gallo": 33265, - "gallon": 24615, - "gallons": 29335, - "galloway": 27796, - "galore": 22286, - "gals": 20125, - "galvani": 46046, - "galve": 34328, - "galveston": 36003, - "galway": 38045, - "galway": 17112, - "gam": 1162, - "gam": 34195, - "gama": 35873, - "gambia": 32988, - "gamble": 26121, - "gambling": 20287, - "game": 2882, - "game": 1063, - "gameart": 31490, - "gameboy": 40951, - "gamecube": 44079, - "gameday": 9241, - "gamedev": 7544, - "gameinsight": 42626, - "gameof": 10987, - "gameofthrones": 11822, - "gameon": 47691, - "gameplay": 16794, - "gamer": 12595, - "gamer": 11598, - "gamergate": 25961, - "gamers": 16166, - "gamersunite": 26423, - "games": 18551, - "games": 1955, - "gamescom": 37003, - "gamestop": 39436, - "gametime": 45899, - "gami": 42025, - "gamification": 48908, - "gaming": 28803, - "gaming": 4017, - "gamma": 22180, - "gamo": 39325, - "gan": 1822, - "gan": 1670, - "gand": 8399, - "ganda": 27261, - "gander": 44508, - "gandhi": 12322, - "ganesh": 30362, - "ganesha": 45185, - "gang": 8066, - "gang": 5674, - "ganga": 36275, - "gangnam": 46777, - "gangs": 29844, - "gangsta": 37365, - "gangster": 26514, - "gani": 48324, - "gann": 45665, - "gannon": 45837, - "gano": 25304, - "gao": 26556, - "gaon": 19279, - "gap": 29906, - "gap": 7609, - "gaps": 25296, - "gar": 1099, - "gar": 5824, - "gara": 28710, - "garage": 8474, - "garbage": 13760, - "garci": 44658, - "garcia": 10529, - "gard": 7751, - "gard": 21003, - "garda": 31906, - "garde": 22649, - "garden": 4674, - "garden": 2756, - "gardenchat": 46292, - "gardener": 28554, - "gardeners": 38205, - "gardening": 10483, - "gardens": 6152, - "gardiner": 43121, - "gardner": 18710, - "gare": 5633, - "gare": 48402, - "gareth": 37140, - "gareth": 18175, - "garfield": 26728, - "garh": 16762, - "gari": 40898, - "gari": 43080, - "garis": 37839, - "garland": 23418, - "garlic": 9685, - "garment": 31418, - "garments": 43341, - "garmin": 39885, - "garner": 20340, - "garnet": 37669, - "garo": 30388, - "garrett": 15881, - "garri": 21764, - "garrison": 30108, - "garros": 40425, - "garry": 24398, - "gars": 12055, - "gart": 18380, - "gart": 18751, - "garten": 14684, - "garter": 48420, - "garth": 45398, - "garth": 24469, - "gartner": 43334, - "gartner": 29678, - "garty": 46383, - "garu": 31140, - "garvey": 39511, - "garwal": 38623, - "gary": 10535, - "gary": 4516, - "garza": 49393, - "gas": 5047, - "gas": 2474, - "gases": 36971, - "gasoline": 27691, - "gasp": 43762, - "gaston": 40669, - "gastri": 49197, - "gastro": 23740, - "gastron": 30699, - "gastronomy": 46987, - "gat": 5314, - "gat": 18941, - "gata": 44575, - "gate": 8071, - "gate": 3302, - "gated": 23997, - "gates": 9472, - "gateshead": 40051, - "gateway": 45221, - "gateway": 14943, - "gather": 36345, - "gather": 12602, - "gathered": 14646, - "gathering": 9197, - "gatherings": 48096, - "gathers": 39250, - "gating": 27561, - "gation": 11095, - "gations": 33906, - "gato": 44492, - "gator": 20216, - "gator": 16390, - "gatorade": 36354, - "gators": 17173, - "gatory": 24796, - "gatsby": 32586, - "gatwick": 37122, - "gau": 5919, - "gau": 43068, - "gauge": 18728, - "gaunt": 31862, - "gauntlet": 37163, - "gautam": 45853, - "gautam": 31356, - "gauteng": 40333, - "gav": 8966, - "gave": 3485, - "gavin": 32974, - "gavin": 16389, - "gaw": 15405, - "gawd": 43239, - "gawx": 43420, - "gay": 7460, - "gay": 5627, - "gaya": 39477, - "gaye": 41401, - "gayle": 29998, - "gayo": 36768, - "gays": 28001, - "gaz": 4837, - "gaz": 36475, - "gaza": 38391, - "gaza": 10112, - "gazaunderattack": 42458, - "gaze": 23212, - "gazette": 20443, - "gazing": 28373, - "gb": 8727, - "gb": 4619, - "gba": 18528, - "gbbo": 34474, - "gbc": 42993, - "gbp": 27391, - "gbr": 31984, - "gby": 40509, - "gc": 8577, - "gc": 6043, - "gcc": 26804, - "gcse": 28763, - "gcu": 34137, - "gd": 13264, - "gd": 14604, - "gdc": 32793, - "gden": 44928, - "gdp": 17100, - "gdpr": 22963, - "ge": 619, - "ge": 710, - "gea": 26790, - "gear": 15532, - "gear": 4802, - "gearbox": 42454, - "geared": 33903, - "gearing": 19027, - "gears": 21147, - "geaux": 36313, - "gecko": 38616, - "ged": 17252, - "ged": 3480, - "geddon": 31720, - "gedly": 13991, - "gee": 9806, - "gee": 9071, - "geek": 17920, - "geek": 7135, - "geeks": 20110, - "geeky": 47332, - "geel": 25906, - "geelong": 34555, - "gees": 38088, - "geese": 26413, - "geez": 42394, - "geh": 30320, - "geist": 38290, - "gel": 7343, - "gel": 5697, - "gelato": 29577, - "gels": 42552, - "gely": 14637, - "gem": 14261, - "gem": 7613, - "gement": 19495, - "gemini": 23086, - "gemma": 23952, - "gems": 14355, - "gemstone": 27747, - "gemstones": 43972, - "gen": 1024, - "gen": 3278, - "gence": 16088, - "gency": 5245, - "gend": 33247, - "gender": 22976, - "gender": 5906, - "gendere": 35824, - "genderequality": 43338, - "gene": 5822, - "gene": 7962, - "genealo": 24142, - "genealogy": 29381, - "gener": 1832, - "general": 20576, - "general": 3658, - "generally": 19256, - "generals": 30296, - "generate": 16896, - "generated": 19450, - "generates": 33938, - "generating": 23882, - "generation": 41211, - "generation": 4883, - "generational": 34506, - "generations": 12247, - "generative": 29472, - "generator": 19399, - "generators": 41917, - "generic": 26978, - "generosity": 23015, - "generous": 12570, - "generously": 35113, - "genes": 19683, - "genesis": 13518, - "genetic": 47746, - "genetic": 13578, - "genetically": 36745, - "genetics": 18276, - "geneva": 14799, - "genevie": 41633, - "genevieve": 46584, - "geni": 22334, - "genic": 15750, - "genie": 24221, - "genital": 32960, - "genius": 8235, - "geniuses": 41406, - "geno": 41544, - "geno": 46776, - "genoa": 43993, - "genoci": 14687, - "genocide": 15903, - "genome": 23991, - "genomic": 44371, - "genomics": 26227, - "genre": 14249, - "genres": 30340, - "gens": 17449, - "gent": 3685, - "gent": 7139, - "gente": 34325, - "gentle": 7262, - "gentle": 13577, - "gentleman": 13293, - "gentlemen": 11692, - "gently": 17187, - "gento": 28320, - "gentri": 41148, - "gentry": 47225, - "gents": 18862, - "genu": 9182, - "genuine": 12184, - "genuinely": 20006, - "genus": 38161, - "geny": 35323, - "geo": 5038, - "geo": 11604, - "geocaching": 47908, - "geof": 20629, - "geoff": 33697, - "geoff": 20386, - "geoffrey": 29520, - "geograph": 45920, - "geographic": 22635, - "geographical": 39380, - "geography": 17101, - "geological": 38380, - "geology": 21578, - "geom": 46135, - "geome": 12958, - "geometric": 22419, - "geometry": 21731, - "geon": 20844, - "geon": 7295, - "geons": 15914, - "geopol": 39758, - "geor": 2549, - "georg": 43126, - "george": 8377, - "george": 3296, - "georges": 25042, - "georgetown": 22970, - "georgie": 42115, - "georgina": 43892, - "geospatial": 46238, - "geothermal": 38413, - "geous": 3068, - "ger": 1291, - "ger": 1502, - "gera": 48867, - "gerald": 29901, - "gerald": 13269, - "gerard": 35979, - "gerard": 20826, - "gerber": 45058, - "gered": 40179, - "geri": 41664, - "geri": 46214, - "gering": 24077, - "germain": 38786, - "german": 14972, - "german": 4710, - "germans": 28400, - "germany": 4464, - "germin": 44721, - "germs": 47731, - "geronimo": 45171, - "gerrard": 26538, - "gerry": 29825, - "gerry": 23026, - "gers": 3314, - "gertrude": 46950, - "gervais": 36527, - "gery": 32845, - "ges": 3316, - "gest": 11843, - "gest": 2033, - "gesture": 21780, - "gestures": 43524, - "get": 5670, - "get": 779, - "geta": 13155, - "getaway": 16131, - "gether": 27224, - "getic": 20661, - "getin": 25822, - "getit": 44891, - "getit": 48315, - "getoutside": 35644, - "gets": 39448, - "gets": 2127, - "gett": 6647, - "gett": 27965, - "gettable": 15620, - "gette": 29800, - "gettin": 13428, - "getting": 30885, - "getting": 1500, - "getty": 31185, - "getty": 13965, - "gettys": 35189, - "gettysburg": 37062, - "getyour": 42159, - "gey": 29289, - "gf": 28953, - "gf": 10846, - "gfriend": 35245, - "gfs": 37553, - "gg": 1129, - "gg": 3286, - "gga": 26003, - "ggan": 25626, - "gge": 21521, - "gge": 31659, - "gged": 6095, - "gger": 12367, - "gger": 3493, - "ggers": 7480, - "ggg": 20143, - "gggg": 33513, - "ggi": 21662, - "ggin": 17160, - "gging": 4966, - "ggins": 12444, - "ggle": 34981, - "ggle": 11430, - "ggled": 46328, - "ggles": 14703, - "ggling": 16523, - "ggly": 39407, - "ggs": 4797, - "ggy": 24935, - "ggy": 6476, - "gh": 583, - "gh": 790, - "gha": 10010, - "gha": 25183, - "gham": 21456, - "ghan": 18945, - "ghan": 6624, - "ghana": 30330, - "ghana": 9731, - "ghanaian": 34223, - "ghani": 36699, - "ghar": 37334, - "ghar": 36973, - "ghat": 43989, - "ghaz": 37493, - "ghc": 42139, - "ghe": 10754, - "ghe": 28561, - "ghead": 40783, - "ghee": 34794, - "gher": 21542, - "gher": 14796, - "ghet": 18447, - "ghetti": 17485, - "ghetto": 22403, - "ghi": 22436, - "ghi": 22279, - "ghibli": 40555, - "ghj": 38439, - "ghlin": 24131, - "gho": 4307, - "ghorn": 38094, - "ghosh": 43279, - "ghoshal": 49134, - "ghost": 11417, - "ghost": 7108, - "ghostbusters": 25462, - "ghostly": 44901, - "ghosts": 16737, - "ghou": 35843, - "ghoul": 45302, - "ghouse": 38238, - "ghs": 14157, - "ght": 1413, - "ght": 630, - "ghted": 4963, - "ghter": 2427, - "ghters": 12994, - "ghtful": 8334, - "ghting": 3019, - "ghtly": 6993, - "ghtning": 39740, - "ghton": 16353, - "ghts": 1259, - "ghty": 20968, - "ghty": 5866, - "ghu": 25808, - "ghue": 45675, - "ghyun": 25010, - "ghz": 24325, - "gi": 707, - "gi": 4478, - "gia": 8864, - "giac": 35444, - "giam": 39623, - "gian": 17274, - "gian": 12866, - "gianni": 46752, - "giant": 23668, - "giant": 4687, - "giants": 7076, - "giar": 34241, - "gib": 9816, - "gibb": 18964, - "gibbons": 31974, - "gibbs": 26488, - "gibility": 33297, - "gible": 13159, - "gibr": 20206, - "gibraltar": 23988, - "gibson": 37420, - "gibson": 12178, - "gic": 27900, - "gic": 2570, - "gical": 32973, - "gically": 26320, - "gid": 36774, - "gid": 21413, - "giddy": 40894, - "gideon": 43867, - "gidi": 30603, - "gie": 11459, - "gie": 3991, - "gier": 28974, - "gies": 5505, - "gif": 11363, - "gif": 11677, - "gifford": 47850, - "gifs": 37643, - "gift": 20569, - "gift": 2733, - "gifted": 15110, - "giftide": 20152, - "giftideas": 23487, - "gifting": 39546, - "gifts": 5836, - "gig": 26981, - "gig": 7471, - "gigab": 34530, - "gigan": 24104, - "gigantic": 31507, - "giggle": 36426, - "giggles": 42731, - "giggs": 44692, - "gigi": 44106, - "gigi": 26171, - "gigs": 20316, - "gil": 3997, - "gil": 10088, - "gila": 46952, - "gilbert": 14154, - "gilded": 44341, - "giles": 24802, - "gill": 14280, - "gill": 12003, - "gille": 29610, - "gilles": 39590, - "gillespie": 36242, - "gillette": 38603, - "gilli": 13695, - "gillian": 28753, - "gills": 48851, - "gilmore": 27603, - "gilt": 44378, - "gim": 31284, - "gimm": 40692, - "gimme": 21525, - "gin": 3374, - "gin": 4941, - "gina": 15604, - "gine": 27482, - "ging": 10829, - "ging": 3905, - "ginger": 16287, - "ginger": 9718, - "gingerbread": 23692, - "gini": 35768, - "gino": 36521, - "gins": 18328, - "gio": 16329, - "gio": 8050, - "gion": 41226, - "gior": 14920, - "giorgio": 33271, - "giorno": 33310, - "gios": 41927, - "gious": 14419, - "giov": 21404, - "giovanni": 26574, - "gipp": 41351, - "gir": 1077, - "gir": 25481, - "gira": 16949, - "giraffe": 22826, - "giri": 31709, - "girl": 3914, - "girl": 1611, - "girlfriend": 8217, - "girlfriends": 30736, - "girlpower": 37433, - "girls": 15480, - "girls": 1917, - "girly": 29605, - "giro": 39664, - "giro": 26454, - "girona": 47842, - "giroud": 41177, - "gis": 16266, - "gis": 12773, - "gist": 21241, - "git": 16060, - "git": 20918, - "gita": 40838, - "github": 31196, - "giu": 17931, - "giuli": 29762, - "giuliani": 47739, - "giuse": 29385, - "giuseppe": 33563, - "give": 4120, - "give": 1781, - "giveaway": 5310, - "giveaways": 18974, - "giveback": 41385, - "given": 33323, - "given": 4302, - "givenchy": 38245, - "giver": 43339, - "gives": 3926, - "giveup": 35485, - "giving": 14673, - "giving": 2339, - "givingback": 49300, - "givingtuesday": 23556, - "giz": 29237, - "gk": 38953, - "gk": 18719, - "gl": 1849, - "gl": 14751, - "gla": 1523, - "gla": 36904, - "glaci": 14924, - "glacial": 40782, - "glacier": 19282, - "glaciers": 42528, - "glad": 20841, - "glad": 4761, - "glades": 37432, - "gladi": 21742, - "gladiator": 38477, - "gladiators": 41087, - "gladly": 41598, - "gladys": 43168, - "glam": 8738, - "glam": 16905, - "glamorous": 22896, - "glamour": 42876, - "glamour": 17499, - "glamping": 46167, - "glan": 40482, - "glan": 45844, - "glance": 26557, - "gland": 41441, - "glar": 48535, - "glar": 41702, - "glare": 46035, - "glas": 29935, - "glas": 43654, - "glasgo": 6757, - "glasgow": 29990, - "glasgow": 7363, - "glass": 16305, - "glass": 3313, - "glasses": 6116, - "glaston": 26848, - "glastonbury": 28233, - "glau": 39171, - "glaze": 28112, - "glazed": 24122, - "gle": 7166, - "gle": 2865, - "glee": 32379, - "glee": 21614, - "glen": 6158, - "glen": 11049, - "glend": 38332, - "glendale": 33043, - "glenn": 32004, - "glenn": 12861, - "gler": 34649, - "gley": 21998, - "gli": 5896, - "gli": 28791, - "glia": 22217, - "glide": 37321, - "glider": 41636, - "glimp": 12888, - "glimpse": 13817, - "glio": 29785, - "glit": 21079, - "glitch": 29563, - "glitter": 16528, - "glitz": 44542, - "glo": 1721, - "glo": 30474, - "glob": 13363, - "global": 6707, - "global": 2779, - "globalgoals": 33211, - "globalhealth": 46751, - "globalization": 47680, - "globally": 17775, - "globalwarming": 46017, - "globe": 19436, - "globe": 9368, - "globes": 38085, - "glock": 38818, - "glomer": 43689, - "gloom": 48594, - "gloomy": 32199, - "glori": 7270, - "gloria": 19244, - "glorious": 9171, - "glory": 36107, - "glory": 7285, - "glos": 40633, - "gloss": 38258, - "gloss": 22014, - "glossy": 29802, - "glou": 15989, - "gloucester": 28133, - "gloucester": 23835, - "gloucestershire": 33789, - "glove": 16078, - "glover": 21594, - "gloves": 12363, - "glow": 30472, - "glow": 10111, - "glowing": 18437, - "glows": 48107, - "glu": 5952, - "glu": 32281, - "glucose": 34642, - "glue": 22103, - "glued": 38135, - "gluten": 15482, - "gluten": 15524, - "glutenfree": 16138, - "gly": 13027, - "glycer": 48914, - "gm": 18743, - "gm": 5918, - "gma": 18155, - "gmail": 11119, - "gman": 41043, - "gman": 36936, - "gmb": 35934, - "gmb": 31799, - "gmbh": 46877, - "gmc": 27257, - "gmo": 23486, - "gms": 36987, - "gmt": 13803, - "gn": 2455, - "gn": 9831, - "gna": 23009, - "gnation": 45912, - "gne": 25407, - "gni": 5104, - "gnment": 25110, - "gno": 23376, - "gno": 43686, - "gnocchi": 48299, - "gnome": 33643, - "gnon": 20561, - "go": 650, - "go": 861, - "goa": 14399, - "goal": 9003, - "goal": 3321, - "goalie": 20723, - "goalkeeper": 16601, - "goals": 3295, - "goalscorer": 43547, - "goaltender": 44151, - "goat": 34082, - "goat": 9530, - "goats": 18393, - "gob": 29559, - "gobeavs": 48285, - "goblin": 26223, - "goblue": 25232, - "gobucks": 29175, - "gocougs": 34202, - "god": 4190, - "god": 1731, - "godawgs": 40436, - "godbless": 46616, - "godbless": 44007, - "godd": 16589, - "goddamn": 28495, - "goddard": 37827, - "goddess": 10808, - "godfather": 26222, - "godfrey": 40148, - "godis": 38521, - "godly": 42438, - "gods": 33620, - "gods": 10328, - "goducks": 35889, - "godzilla": 23369, - "goe": 22084, - "goers": 27784, - "goes": 43581, - "goes": 2635, - "gof": 17537, - "goff": 34399, - "goftheday": 39360, - "gofund": 34445, - "gofundme": 34686, - "gog": 42949, - "goggles": 31027, - "gogh": 19697, - "gogo": 22688, - "gogreen": 36279, - "gohawks": 34884, - "goi": 24917, - "goin": 13939, - "going": 25787, - "going": 1245, - "goku": 29550, - "gol": 1537, - "gol": 18257, - "gola": 41090, - "gold": 4999, - "gold": 2209, - "goldberg": 25161, - "goldcoast": 34634, - "golden": 10763, - "golden": 3878, - "goldeng": 20650, - "goldenglobes": 26842, - "goldfish": 40293, - "goldie": 42805, - "goldman": 27164, - "golds": 30526, - "golds": 40283, - "goldsmith": 40214, - "gole": 41297, - "golf": 9096, - "golf": 3096, - "golfclub": 45742, - "golfer": 24579, - "golfers": 28441, - "golfing": 31379, - "goli": 29265, - "goliath": 41602, - "gom": 7051, - "goma": 46198, - "gomes": 39128, - "gomez": 16433, - "gon": 1854, - "gon": 3379, - "gona": 34835, - "gone": 35135, - "gone": 3601, - "gong": 28486, - "gonna": 2562, - "gonz": 10587, - "gonzaga": 36241, - "gonzale": 17512, - "gonzales": 31265, - "gonzalez": 18198, - "goo": 1381, - "goo": 17882, - "good": 2185, - "good": 886, - "goodbye": 6968, - "goodday": 46284, - "goode": 42076, - "goodfood": 46844, - "goodfriday": 40360, - "goodie": 29213, - "goodies": 13308, - "goodluck": 19718, - "goodman": 24146, - "goodmorning": 14421, - "goodness": 10531, - "goodnight": 8540, - "goodreads": 31629, - "goods": 9340, - "goodtimes": 22570, - "goodvibes": 43146, - "goodwill": 24902, - "goodwin": 28080, - "goodwood": 30008, - "goody": 35937, - "goodyear": 42858, - "goofy": 26879, - "goog": 18581, - "google": 12195, - "google": 3460, - "googled": 40345, - "googleplay": 37309, - "goon": 15267, - "goons": 30440, - "goooo": 35876, - "goooo": 48957, - "goose": 21445, - "goose": 13822, - "goosebumps": 32254, - "gop": 18942, - "gop": 6250, - "gopack": 46995, - "gopackgo": 47719, - "gopal": 47268, - "gopdebate": 39806, - "gopher": 47750, - "gopher": 48905, - "gophers": 31957, - "gopro": 17511, - "gor": 1747, - "gor": 29827, - "gordo": 47707, - "gordon": 20485, - "gordon": 8244, - "gore": 30311, - "gore": 17872, - "gorg": 46815, - "gorge": 35548, - "gorge": 20038, - "gorgeous": 3241, - "gori": 12461, - "goria": 43359, - "gorilla": 37910, - "gorilla": 21994, - "gorman": 35741, - "goro": 44977, - "gory": 7160, - "gos": 20517, - "gos": 5693, - "gosh": 15395, - "gosling": 35320, - "gosp": 9617, - "gospel": 11313, - "goss": 39734, - "goss": 36924, - "gossi": 15684, - "gossip": 18963, - "got": 10125, - "got": 1005, - "gota": 36693, - "gotcha": 43275, - "gote": 49345, - "goth": 48465, - "goth": 20437, - "gotham": 46123, - "gotham": 18299, - "gothic": 15426, - "goti": 9497, - "goto": 39715, - "gots": 35215, - "gott": 5089, - "gott": 36466, - "gotta": 4633, - "gotten": 5889, - "gotti": 41881, - "gotv": 36089, - "gou": 10520, - "gou": 36555, - "gouache": 43314, - "goul": 33187, - "gould": 31087, - "gour": 13580, - "gourmet": 19111, - "gov": 4022, - "gov": 4564, - "gove": 36997, - "govegan": 38886, - "gover": 10471, - "gover": 16759, - "govern": 2351, - "govern": 32404, - "governance": 13386, - "governing": 30946, - "government": 3149, - "governmental": 42609, - "governments": 19582, - "governor": 17459, - "governor": 6630, - "governors": 26881, - "govin": 42451, - "govt": 5345, - "govuk": 28830, - "gow": 21885, - "gow": 33788, - "gowan": 31307, - "gower": 43448, - "gown": 13719, - "gowns": 38029, - "goyal": 35105, - "gp": 19329, - "gp": 5051, - "gpa": 24098, - "gps": 13639, - "gpu": 38561, - "gq": 40286, - "gq": 31324, - "gr": 709, - "gr": 6062, - "gra": 782, - "gra": 15276, - "grab": 4646, - "grabbed": 22856, - "grabbing": 26440, - "grabs": 17076, - "grac": 11323, - "grace": 13225, - "grace": 5142, - "graced": 31894, - "graceful": 25242, - "graces": 38629, - "graci": 11174, - "gracias": 16463, - "gracie": 23235, - "gracing": 37263, - "gracious": 29044, - "grad": 19869, - "grad": 7291, - "gradable": 41529, - "grade": 45435, - "grade": 3394, - "graded": 13823, - "grader": 23930, - "graders": 10930, - "grades": 10838, - "gradient": 36885, - "grading": 19016, - "grads": 17811, - "gradu": 3230, - "gradual": 45210, - "gradually": 32192, - "graduate": 6675, - "graduated": 15128, - "graduates": 12236, - "graduating": 14819, - "graduation": 8060, - "grady": 33980, - "graeme": 30192, - "graf": 46478, - "graf": 39765, - "graff": 10656, - "graffiti": 11676, - "graft": 32698, - "grafton": 47347, - "graham": 19805, - "graham": 7711, - "grail": 37184, - "grain": 44003, - "grain": 12109, - "grains": 25791, - "gral": 25631, - "gram": 2949, - "gram": 2338, - "grammar": 16077, - "grammy": 15388, - "grammys": 18121, - "grams": 6294, - "gran": 3892, - "gran": 14493, - "granada": 31172, - "grand": 3058, - "grand": 2991, - "grandad": 29148, - "grandchildren": 36856, - "granddaughter": 29460, - "grande": 37514, - "grande": 10757, - "grandes": 36382, - "grandfather": 15346, - "grandma": 10525, - "grandmother": 17469, - "grandpa": 14582, - "grandparents": 21311, - "grandprix": 39358, - "grandson": 20766, - "grandstand": 43172, - "grange": 45027, - "grange": 23850, - "granger": 42968, - "granite": 18813, - "grann": 45585, - "granny": 22710, - "granola": 34271, - "grant": 18682, - "grant": 5442, - "granted": 14156, - "granth": 41283, - "grants": 15123, - "grape": 19131, - "grape": 15959, - "grapefruit": 28347, - "grapes": 18580, - "grapevine": 47619, - "graph": 1349, - "graph": 4407, - "graphene": 38387, - "grapher": 14987, - "graphers": 32088, - "graphic": 15653, - "graphic": 4245, - "graphical": 20878, - "graphicdesign": 21907, - "graphics": 9492, - "graphies": 40164, - "graphite": 29447, - "graphs": 24670, - "graphy": 4897, - "grapp": 30843, - "gras": 31517, - "gras": 17584, - "grasp": 34975, - "grass": 11584, - "grass": 5922, - "grasses": 46807, - "grasshopper": 48894, - "grassi": 42294, - "grasso": 34808, - "grassroots": 21991, - "grassy": 44140, - "grat": 9221, - "grate": 32463, - "grateful": 45659, - "grateful": 5730, - "grati": 36402, - "gratis": 33638, - "gratitude": 12614, - "grav": 20663, - "grave": 16606, - "grave": 9981, - "gravel": 27054, - "graves": 17665, - "graveyard": 31176, - "gravit": 26150, - "gravitational": 45268, - "gravity": 47426, - "gravity": 15160, - "gravy": 21225, - "gray": 12703, - "gray": 7048, - "grays": 46848, - "grayson": 45831, - "grayson": 25471, - "grazi": 42427, - "grazie": 38698, - "grazing": 29889, - "grc": 44069, - "gre": 689, - "gre": 17878, - "grease": 24132, - "greasy": 44376, - "great": 3265, - "great": 830, - "greate": 31930, - "greater": 32725, - "greater": 7033, - "greatest": 39080, - "greatest": 4153, - "greatly": 13978, - "greatness": 14189, - "greats": 21855, - "greaves": 42350, - "greco": 39103, - "gree": 9987, - "gree": 30774, - "greece": 6965, - "greed": 26147, - "greedy": 33301, - "greek": 23844, - "greek": 6842, - "greeks": 35866, - "green": 2762, - "green": 1901, - "greenberg": 46662, - "greene": 16383, - "greener": 31169, - "greenery": 42493, - "greenfield": 39924, - "greeng": 42077, - "greenhouse": 20819, - "greening": 48673, - "greenland": 27345, - "greenpeace": 44755, - "greens": 10235, - "greensboro": 33436, - "greenville": 25156, - "greenway": 35205, - "greenwich": 18658, - "greenwood": 25782, - "greer": 34345, - "greet": 11042, - "greet": 11997, - "greeted": 24546, - "greeting": 17754, - "greetings": 11569, - "greets": 25464, - "greg": 6894, - "greg": 7943, - "gregation": 20131, - "gregg": 39422, - "gregg": 22929, - "gregor": 33856, - "gregor": 16177, - "gregory": 16253, - "gren": 13941, - "gren": 20119, - "grenade": 33679, - "grenfell": 42107, - "gres": 39670, - "gress": 2752, - "gret": 30041, - "greta": 33443, - "gretchen": 45516, - "grette": 38774, - "grew": 10451, - "grey": 9190, - "grey": 5046, - "greyhound": 27363, - "greyhounds": 45718, - "greys": 44311, - "greysanatomy": 36833, - "gri": 2169, - "gri": 18484, - "grid": 29067, - "grid": 9882, - "gridi": 41063, - "gridiron": 47786, - "grids": 46500, - "grief": 21058, - "grier": 22016, - "griev": 36400, - "grieving": 42383, - "griez": 47962, - "griezmann": 48396, - "griff": 17855, - "griff": 35551, - "griffi": 28676, - "griffin": 46612, - "griffin": 13161, - "griffith": 24375, - "griffiths": 34182, - "gril": 49091, - "grill": 44083, - "grill": 9519, - "grille": 34748, - "grilled": 10691, - "grilling": 28324, - "grills": 39464, - "grim": 20383, - "grim": 23635, - "grime": 37101, - "grimes": 25057, - "grimm": 27865, - "grims": 34861, - "grimsby": 41513, - "grin": 11033, - "grin": 28697, - "grinch": 40527, - "grind": 25730, - "grind": 11810, - "grinder": 31733, - "grinding": 21541, - "gring": 40135, - "grip": 15521, - "gripping": 34567, - "grips": 27819, - "gris": 29150, - "grit": 22037, - "grit": 22087, - "grits": 44307, - "gritty": 33704, - "grizz": 14877, - "grizz": 44088, - "grizzlies": 25594, - "grizzly": 29676, - "grl": 48005, - "gro": 1464, - "gro": 12691, - "grocer": 11633, - "groceries": 32409, - "grocery": 13826, - "grom": 45284, - "gron": 22345, - "groningen": 45639, - "groo": 9015, - "groom": 39883, - "groom": 22813, - "grooming": 25575, - "groot": 37708, - "groove": 39484, - "groove": 17680, - "grooves": 43954, - "groovy": 30143, - "gros": 26834, - "gros": 32639, - "gross": 31080, - "gross": 11541, - "grosven": 46911, - "grote": 47207, - "grotto": 45260, - "grou": 1582, - "groun": 45110, - "ground": 9558, - "ground": 2461, - "groundbreaking": 21006, - "grounded": 27799, - "grounds": 8454, - "groundwater": 39457, - "group": 19045, - "group": 1771, - "groupe": 47654, - "groups": 6776, - "grouse": 36327, - "grove": 31756, - "grove": 7463, - "grover": 31345, - "groves": 27306, - "grow": 3179, - "grow": 4559, - "grower": 44925, - "growers": 25689, - "growing": 28429, - "growing": 4425, - "growingup": 43433, - "growler": 47096, - "grown": 41762, - "grown": 7120, - "grows": 13352, - "growth": 17925, - "growth": 4026, - "growthhacking": 25963, - "grp": 27321, - "grt": 28557, - "gru": 5957, - "grub": 34019, - "grue": 42047, - "gruesome": 47111, - "grum": 45454, - "grump": 49015, - "grumpy": 23610, - "grun": 16203, - "grunge": 33745, - "gry": 16140, - "gry": 5364, - "gs": 25818, - "gs": 1345, - "gsa": 40433, - "gsc": 47751, - "gshore": 43392, - "gsm": 32181, - "gsp": 49173, - "gst": 22239, - "gt": 16151, - "gt": 4725, - "gta": 14826, - "gta": 15338, - "gtaonline": 27292, - "gtav": 27283, - "gti": 39954, - "gto": 39071, - "gtr": 33407, - "gts": 37338, - "gtx": 35230, - "gu": 700, - "gu": 12916, - "gua": 23751, - "guacam": 37477, - "guacamole": 40115, - "guad": 22966, - "guadal": 46097, - "guadalu": 36994, - "guadalupe": 38360, - "guam": 37325, - "guan": 44191, - "guan": 42406, - "guang": 27019, - "guangzhou": 37857, - "guar": 4119, - "guaran": 9242, - "guarantee": 17421, - "guaranteed": 14731, - "guarantees": 40154, - "guard": 30776, - "guard": 4901, - "guarded": 40602, - "guardi": 12008, - "guardia": 43628, - "guardian": 23713, - "guardian": 9498, - "guardians": 21479, - "guarding": 24966, - "guardiola": 32100, - "guards": 12810, - "guatem": 19423, - "guatemala": 21670, - "guay": 48591, - "guay": 24247, - "gubernat": 41400, - "gubernatorial": 41618, - "gucci": 16779, - "gud": 48061, - "gud": 22378, - "gue": 2030, - "gue": 2917, - "gued": 38893, - "guel": 23146, - "guelph": 27660, - "guer": 10391, - "guern": 29277, - "guernsey": 33982, - "guerra": 38215, - "guerrero": 31967, - "guerrilla": 36715, - "gues": 39971, - "gues": 12601, - "guess": 35506, - "guess": 3135, - "guessed": 28005, - "guesses": 30623, - "guessing": 21891, - "guest": 27349, - "guest": 3781, - "guests": 6212, - "guet": 36797, - "guetta": 45904, - "guez": 12313, - "gug": 31358, - "guggen": 35086, - "guggenheim": 37135, - "gui": 2587, - "gui": 25746, - "guid": 11437, - "guidance": 12508, - "guide": 21845, - "guide": 3555, - "guided": 13194, - "guidelines": 16591, - "guides": 14375, - "guiding": 22759, - "guido": 41818, - "guil": 5008, - "guild": 19755, - "guild": 16597, - "guildford": 34450, - "guildhall": 47224, - "guillau": 41123, - "guillaume": 45394, - "guiller": 33660, - "guillermo": 39524, - "guilt": 26354, - "guilty": 9761, - "guin": 13284, - "guin": 47863, - "guine": 13759, - "guinea": 18537, - "guinness": 16648, - "guire": 18209, - "guise": 42024, - "guit": 3759, - "guitar": 21746, - "guitar": 5084, - "guitarist": 13035, - "guitars": 15023, - "guj": 34935, - "gujar": 12698, - "gujarat": 14714, - "guk": 20280, - "gul": 5530, - "gul": 21350, - "gula": 27426, - "gular": 34969, - "gulf": 22101, - "gulf": 11279, - "gull": 48764, - "gull": 28778, - "gulls": 37501, - "gully": 46112, - "gum": 22041, - "gum": 11235, - "gumb": 40147, - "gumbo": 47126, - "gummy": 34276, - "gums": 46609, - "gun": 2748, - "gun": 3496, - "guna": 43333, - "gundam": 26087, - "gundy": 21162, - "gunman": 32743, - "gunmen": 44738, - "gunn": 27473, - "gunna": 24002, - "gunnar": 45301, - "gunner": 35285, - "gunners": 37788, - "guns": 7591, - "gunsense": 44781, - "gunshot": 49250, - "gunsn": 49028, - "gup": 38632, - "gup": 47335, - "gupta": 15905, - "gur": 3218, - "gur": 30224, - "gura": 46836, - "gurgaon": 33240, - "guri": 43888, - "gurl": 25445, - "gurmee": 35482, - "gurmeetramrahim": 36549, - "guru": 18629, - "guru": 10800, - "gurudev": 48647, - "gus": 8018, - "gust": 24629, - "gusta": 23024, - "gusta": 44196, - "gustav": 32062, - "gustav": 37921, - "gustave": 43170, - "gustavo": 45943, - "gusto": 37937, - "gusts": 20896, - "gusty": 27589, - "gut": 24780, - "gut": 13486, - "guter": 44963, - "guterres": 48738, - "guth": 31696, - "guthrie": 33164, - "gutier": 32773, - "gutierrez": 33739, - "guts": 25983, - "gutted": 26524, - "gutter": 40537, - "guwa": 43063, - "guwahati": 45045, - "guy": 10008, - "guy": 2149, - "guyana": 45215, - "guyen": 28031, - "guys": 43588, - "guys": 1791, - "guyz": 48170, - "guzman": 37960, - "gv": 15462, - "gv": 17336, - "gw": 7172, - "gw": 15717, - "gwen": 32165, - "gwen": 24182, - "gwin": 43005, - "gwy": 32226, - "gwyne": 36923, - "gx": 40227, - "gy": 2168, - "gy": 1164, - "gya": 43214, - "gyan": 43814, - "gye": 21728, - "gyllen": 49348, - "gym": 9902, - "gym": 5222, - "gymna": 13517, - "gymnasium": 42847, - "gymnast": 42658, - "gymnastics": 20116, - "gyn": 39603, - "gyne": 45836, - "gyp": 40053, - "gypsy": 22354, - "gypt": 41921, - "gz": 45937, - "gz": 35841, - "gö": 40778, - "gü": 31907, - "h": 71, - "h": 327, - "ha": 560, - "ha": 1429, - "haa": 26814, - "haal": 35869, - "haan": 36284, - "haar": 45247, - "haar": 35859, - "haas": 27443, - "haasan": 26601, - "hab": 20573, - "hab": 20002, - "haban": 46225, - "haber": 44737, - "habit": 8491, - "habit": 17215, - "habitat": 11747, - "habitats": 35344, - "habits": 14540, - "habs": 27489, - "hac": 20343, - "hace": 43623, - "haci": 40674, - "hack": 6610, - "hack": 11182, - "hackathon": 25182, - "hacked": 19575, - "hacker": 22376, - "hackers": 21498, - "hacking": 12939, - "hackney": 48811, - "hackney": 24928, - "hacks": 19965, - "had": 10660, - "had": 1100, - "hadi": 39058, - "hadid": 26415, - "hadith": 46907, - "hadley": 44995, - "hadn": 21480, - "hadoop": 43868, - "hae": 30723, - "hae": 27193, - "hafi": 39914, - "hag": 26855, - "hag": 43207, - "hagan": 47489, - "hagen": 14664, - "hager": 48773, - "hagg": 26324, - "hague": 28988, - "hah": 18108, - "hah": 13680, - "haha": 1913, - "haha": 3060, - "hahah": 27253, - "hahah": 15441, - "hahaha": 4722, - "hahahah": 37513, - "hahahah": 20096, - "hahahaha": 8058, - "hahahaha": 9501, - "hahahahah": 33334, - "hahahahaha": 16347, - "hahahahahaha": 26487, - "hahahahahahaha": 43653, - "hahahahahahahaha": 36126, - "hahahha": 49205, - "hahn": 35596, - "hai": 8734, - "hai": 5234, - "haider": 42200, - "haiku": 19542, - "hail": 15272, - "hail": 8634, - "hailed": 44604, - "hailey": 27703, - "hailing": 47288, - "hails": 32571, - "hailstate": 35063, - "hain": 23861, - "hair": 4658, - "hair": 2225, - "haircare": 43682, - "haircut": 14711, - "hairdresser": 47468, - "haired": 27202, - "hairs": 27951, - "hairstyle": 22324, - "hairstyles": 40627, - "hairy": 26513, - "haiti": 17368, - "haitian": 37577, - "haj": 27885, - "haj": 43191, - "haji": 41889, - "hajj": 35576, - "hak": 25142, - "hak": 40671, - "haka": 44011, - "hake": 41663, - "hal": 1296, - "hal": 8708, - "hala": 25918, - "halal": 34216, - "halam": 29061, - "halamadrid": 31132, - "halder": 32201, - "hale": 37038, - "hale": 14701, - "halen": 39204, - "halep": 49017, - "haley": 37330, - "haley": 16839, - "half": 7453, - "half": 2349, - "halftime": 13742, - "halfway": 16736, - "hali": 9860, - "hali": 43030, - "halibut": 49030, - "halifax": 13411, - "hall": 6850, - "hall": 2140, - "halla": 29569, - "halle": 27763, - "halle": 32239, - "hallelujah": 36993, - "halli": 32665, - "hallmark": 31040, - "hallmark": 32053, - "hallmarkchannel": 36840, - "hallo": 3463, - "halloffame": 48578, - "halloween": 28537, - "halloween": 3739, - "halls": 18052, - "hallucin": 35385, - "hallway": 26845, - "halo": 33331, - "halo": 11918, - "halsey": 34256, - "halt": 25640, - "halter": 47194, - "halton": 45445, - "ham": 1522, - "ham": 1714, - "hama": 17944, - "hamas": 14818, - "hamburg": 18409, - "hamburger": 33928, - "hamid": 32377, - "hamil": 6725, - "hamill": 45784, - "hamill": 48729, - "hamillhimself": 47324, - "hamilton": 22448, - "hamilton": 7684, - "hamlet": 27722, - "hamlin": 49326, - "hamm": 46110, - "hammer": 15331, - "hammer": 9401, - "hammered": 37251, - "hammers": 35649, - "hammersmith": 42127, - "hammock": 33682, - "hammond": 21761, - "hamont": 18518, - "hamp": 6665, - "hamper": 27692, - "hampshire": 16006, - "hampstead": 37340, - "hampton": 36582, - "hampton": 12285, - "hamptons": 42415, - "hamr": 47979, - "hamradio": 36712, - "hams": 25619, - "hamster": 33313, - "hamstring": 39990, - "hamza": 45762, - "han": 1545, - "han": 3565, - "hana": 16801, - "hand": 1722, - "hand": 2463, - "handbag": 22654, - "handbags": 35667, - "handball": 27988, - "handbook": 25147, - "handcrafted": 22185, - "handed": 10881, - "handedly": 48656, - "handel": 40072, - "handful": 23725, - "handheld": 26812, - "handic": 17812, - "handicap": 27063, - "handicapp": 42349, - "handing": 19196, - "handle": 43681, - "handle": 7245, - "handled": 26824, - "handler": 29097, - "handles": 22124, - "handling": 14071, - "handmade": 18054, - "handmade": 6737, - "handmadehour": 25724, - "handover": 46922, - "hands": 3500, - "handshake": 38418, - "handsome": 7438, - "handwriting": 29986, - "handwritten": 35192, - "handy": 13479, - "hane": 28411, - "hang": 3351, - "hang": 5592, - "hangar": 33439, - "hanged": 40807, - "hanger": 28905, - "hangin": 22670, - "hanging": 4850, - "hangout": 17572, - "hangover": 20755, - "hangs": 21785, - "hani": 39944, - "hani": 18374, - "hank": 35993, - "hank": 17655, - "hanks": 29943, - "hanley": 47284, - "hann": 5584, - "hanna": 10075, - "hannah": 18622, - "hannah": 9142, - "hannel": 43477, - "hanni": 19493, - "hannibal": 25149, - "hannity": 24569, - "hannover": 39976, - "hanoi": 36134, - "hanover": 33246, - "hans": 35172, - "hans": 16628, - "hansen": 19729, - "hanson": 24602, - "hant": 40641, - "hanuk": 32774, - "hanukkah": 34247, - "hanuman": 46975, - "hao": 27184, - "hap": 44981, - "hap": 47988, - "happ": 784, - "happen": 21486, - "happen": 4506, - "happened": 4402, - "happening": 4284, - "happeningnow": 43107, - "happenings": 41998, - "happens": 4988, - "happier": 14118, - "happiest": 13811, - "happily": 17316, - "happiness": 5096, - "happy": 2952, - "happy": 900, - "happybirthday": 9651, - "happybirthday": 12207, - "happydays": 25106, - "happye": 33922, - "happyeaster": 38745, - "happyfathersday": 43534, - "happyfriday": 33340, - "happyhalloween": 28750, - "happyholidays": 32186, - "happyhour": 32036, - "happymonday": 47364, - "happymothersday": 42425, - "happynewyear": 18655, - "happythanksgiving": 40593, - "happyvalentinesday": 42403, - "haps": 9114, - "haq": 32445, - "har": 915, - "har": 5888, - "hara": 10367, - "haram": 35732, - "haram": 22950, - "haran": 27921, - "harare": 43562, - "haras": 26644, - "harass": 16481, - "harassed": 43067, - "harassment": 16641, - "harat": 28984, - "harb": 5856, - "harbaugh": 45220, - "harbor": 40686, - "harbor": 10202, - "harbour": 35430, - "harbour": 10011, - "harcourt": 48093, - "hard": 3312, - "hard": 1626, - "hardcover": 31123, - "harden": 27350, - "harder": 12274, - "hardest": 15258, - "hardin": 43802, - "harding": 24382, - "hardly": 17363, - "hardro": 28126, - "hardrock": 48365, - "hardrock": 40739, - "hards": 44048, - "hardship": 45085, - "hardt": 17922, - "hardware": 11957, - "hardwell": 45572, - "hardwick": 46864, - "hardwood": 28167, - "hardwork": 42554, - "hardwork": 27404, - "hardworking": 28095, - "hardworkpaysoff": 49193, - "hardy": 48179, - "hardy": 14113, - "hare": 27903, - "hare": 18464, - "harga": 39738, - "hari": 25472, - "hari": 8981, - "harlan": 49133, - "harle": 29096, - "harlem": 17771, - "harley": 24702, - "harley": 13632, - "harleydavidson": 39183, - "harlow": 34113, - "harm": 16656, - "harm": 14452, - "harman": 42434, - "harmed": 39637, - "harmful": 21725, - "harmless": 44369, - "harmon": 10828, - "harmon": 28729, - "harmony": 10785, - "harms": 46703, - "harne": 43323, - "harness": 23205, - "harold": 16917, - "harp": 27339, - "harper": 31288, - "harper": 12634, - "harri": 6639, - "harrier": 37372, - "harriet": 27154, - "harrington": 34340, - "harris": 25356, - "harris": 6925, - "harrisburg": 40590, - "harrison": 34389, - "harrison": 10540, - "harro": 18939, - "harrogate": 30842, - "harrow": 38807, - "harry": 11094, - "harry": 3600, - "harrypotter": 23375, - "harsh": 30596, - "harsh": 16944, - "hart": 9335, - "hart": 7752, - "hartford": 23434, - "harth": 35619, - "hartle": 47482, - "hartley": 31268, - "hartman": 43294, - "haru": 35099, - "harvard": 28118, - "harvard": 12848, - "harve": 6405, - "harvest": 44495, - "harvest": 8971, - "harvested": 35899, - "harvesting": 26674, - "harvey": 33289, - "harvey": 9586, - "harvick": 46983, - "haryana": 27661, - "has": 13855, - "has": 791, - "hasan": 30049, - "hasbro": 37405, - "hash": 6338, - "hash": 19199, - "hashi": 41831, - "hashmi": 35852, - "hashtag": 34015, - "hashtag": 9238, - "hashtags": 23514, - "haskell": 48550, - "hasn": 9143, - "hass": 9298, - "hassan": 15829, - "hassee": 37117, - "hassel": 32204, - "hassle": 35762, - "hast": 18146, - "hasta": 36623, - "hastings": 22035, - "hat": 3447, - "hat": 3801, - "hatch": 24202, - "hatch": 17809, - "hatchback": 42348, - "hatched": 42158, - "hate": 23546, - "hate": 3753, - "hated": 21298, - "hateful": 36418, - "hater": 36917, - "haters": 14027, - "hates": 14957, - "hatfield": 38448, - "hath": 27894, - "hath": 34416, - "hathaway": 31801, - "hati": 26045, - "hating": 25668, - "hatred": 19046, - "hats": 9812, - "hatt": 8747, - "hatton": 44861, - "hau": 5152, - "hauer": 48751, - "haul": 23743, - "haul": 12332, - "hauled": 46620, - "hauling": 43132, - "haun": 9676, - "haunt": 31039, - "haunted": 14944, - "haunting": 24034, - "haunts": 48035, - "haus": 41755, - "haus": 16478, - "hausen": 33338, - "hauser": 46586, - "haute": 28854, - "hav": 13443, - "hav": 20447, - "havan": 36304, - "havana": 23357, - "havas": 46261, - "have": 18053, - "have": 720, - "haven": 33074, - "haven": 3871, - "havent": 29130, - "haver": 27876, - "haves": 49088, - "havin": 31937, - "having": 1977, - "havoc": 24447, - "haw": 2788, - "haw": 26954, - "hawa": 6067, - "hawa": 46278, - "hawai": 15800, - "hawaii": 32413, - "hawaii": 8265, - "hawaiian": 17734, - "hawan": 27765, - "hawk": 14704, - "hawk": 8218, - "hawke": 38178, - "hawker": 39051, - "hawkeye": 38666, - "hawkeyes": 34266, - "hawking": 33437, - "hawkins": 19740, - "hawks": 44806, - "hawks": 5841, - "hawthorn": 45372, - "hawthorne": 36730, - "hay": 4871, - "hay": 11367, - "haya": 41325, - "hayat": 49360, - "hayden": 19806, - "haydn": 48207, - "haye": 36583, - "hayes": 13555, - "hayley": 39986, - "hayley": 22204, - "haynes": 30496, - "hays": 41524, - "hayward": 29400, - "haz": 5040, - "haz": 39921, - "hazard": 26174, - "hazard": 15178, - "hazardous": 27102, - "hazards": 30639, - "haze": 22785, - "hazel": 19838, - "hazel": 21882, - "hazelnut": 35816, - "hazi": 22740, - "hazmat": 48887, - "hazrat": 45775, - "hazy": 32655, - "hb": 6854, - "hb": 12576, - "hbcu": 40008, - "hbd": 25277, - "hbd": 13594, - "hbo": 15252, - "hc": 15831, - "hc": 7821, - "hcs": 46850, - "hd": 11601, - "hd": 4414, - "hdd": 40508, - "hdmi": 33302, - "hdr": 28065, - "he": 651, - "he": 797, - "hea": 27150, - "hea": 32790, - "head": 1603, - "head": 1375, - "headache": 23849, - "headaches": 38025, - "headband": 28556, - "headed": 6153, - "header": 11077, - "heading": 4409, - "headless": 45219, - "headlights": 42422, - "headline": 10891, - "headliner": 38880, - "headlines": 14706, - "headlining": 26971, - "headphone": 37524, - "headphones": 14906, - "headquarters": 13041, - "heads": 5174, - "headset": 23883, - "headshot": 34890, - "heal": 1231, - "heal": 13833, - "healed": 31456, - "healer": 38328, - "healey": 38985, - "healing": 9295, - "heals": 32384, - "health": 2145, - "health": 1728, - "healthand": 43704, - "healthcare": 42500, - "healthcare": 6023, - "healthier": 18242, - "healthtech": 42694, - "healthy": 10330, - "healthy": 3782, - "healthye": 31532, - "healthyeating": 33761, - "healthyfood": 39996, - "healthylifestyle": 46254, - "healthyliving": 27293, - "healy": 34299, - "heap": 34781, - "heaps": 44446, - "hear": 2749, - "hear": 2584, - "heard": 4063, - "hearing": 46353, - "hearing": 5541, - "hearings": 33175, - "hearn": 36613, - "hears": 25395, - "heart": 4975, - "heart": 1936, - "heartbeat": 29154, - "heartbreak": 29281, - "heartbreaking": 21322, - "heartbroken": 35383, - "hearted": 21679, - "heartfelt": 22904, - "hearth": 31563, - "hearthstone": 34054, - "hearti": 29345, - "hearties": 44572, - "heartland": 31923, - "heartless": 47022, - "heartnews": 40426, - "hearts": 5516, - "heartw": 30002, - "heartwarming": 34080, - "hearty": 26994, - "heat": 12175, - "heat": 4403, - "heated": 17057, - "heater": 23246, - "heath": 12794, - "heath": 11719, - "heather": 20230, - "heather": 12470, - "heathrow": 24171, - "heating": 12478, - "heaton": 34557, - "heats": 36106, - "heatwave": 25726, - "heav": 2409, - "heaven": 15520, - "heaven": 5545, - "heavenly": 19117, - "heavens": 26026, - "heavier": 31253, - "heaviest": 33268, - "heavily": 14123, - "heavy": 12048, - "heavy": 4200, - "heavymetal": 39804, - "heavyweight": 17448, - "heb": 24700, - "heb": 34515, - "hebdo": 41817, - "hebrew": 27298, - "hebrides": 45121, - "hebron": 45725, - "hec": 18932, - "heck": 22985, - "heck": 14427, - "hectares": 44162, - "hectic": 37245, - "hector": 25852, - "hed": 18271, - "hedge": 16229, - "hedge": 20294, - "hedgehog": 21940, - "hedges": 41345, - "hee": 18364, - "hee": 15773, - "heechul": 42487, - "heed": 15118, - "heel": 33646, - "heel": 16861, - "heels": 10909, - "heem": 30061, - "heer": 40473, - "hef": 29473, - "heff": 48756, - "hefty": 48584, - "heg": 41995, - "heh": 25834, - "hehe": 48723, - "hehe": 10658, - "hehehe": 24138, - "hei": 6101, - "hei": 29051, - "heidel": 42927, - "heidelberg": 48445, - "heidi": 44860, - "heidi": 23867, - "heifer": 48219, - "heigh": 43883, - "height": 10788, - "heights": 8418, - "heim": 10931, - "heim": 9768, - "heimer": 39517, - "hein": 15487, - "hein": 43206, - "heine": 28742, - "heineken": 36874, - "heinrich": 47877, - "heinz": 32359, - "heir": 27083, - "heir": 34007, - "heirloom": 34232, - "heirs": 43834, - "heis": 21849, - "heisman": 34537, - "heist": 31035, - "heit": 37255, - "hel": 919, - "hel": 11579, - "hela": 48212, - "held": 4042, - "hele": 46129, - "helen": 17576, - "helen": 11291, - "helena": 23109, - "helene": 41591, - "helens": 45940, - "heli": 33874, - "heli": 40183, - "helicop": 10035, - "helicopter": 11956, - "helicopters": 26922, - "helium": 46505, - "helix": 35247, - "hell": 8410, - "hell": 4141, - "hella": 19800, - "hellboy": 48428, - "helle": 48600, - "helle": 46968, - "hellenic": 42544, - "heller": 44464, - "hello": 12887, - "hello": 3306, - "hells": 47989, - "helly": 48690, - "helm": 47970, - "helm": 19520, - "helmet": 11122, - "helmets": 21843, - "help": 8641, - "help": 1318, - "helped": 4845, - "helper": 29321, - "helpers": 36316, - "helpful": 12695, - "helping": 3875, - "helpless": 47638, - "helpline": 43101, - "helps": 5144, - "helsin": 17842, - "helsinki": 19626, - "hem": 20270, - "hem": 11148, - "hemi": 14256, - "hemi": 46856, - "heming": 30819, - "hemingway": 33470, - "hemisphere": 32767, - "hemmings": 34882, - "hemo": 43788, - "hemp": 28225, - "hemp": 18467, - "hems": 32451, - "hemsworth": 39428, - "hen": 2385, - "hen": 8047, - "hence": 23640, - "hend": 11560, - "hender": 49248, - "henderson": 14348, - "hendrick": 45296, - "hendricks": 37588, - "hendrix": 23605, - "henge": 33104, - "henley": 27853, - "henna": 39455, - "hennessy": 42667, - "henri": 19431, - "henri": 21610, - "henrik": 35772, - "henry": 16018, - "henry": 5508, - "hens": 31742, - "henson": 32935, - "hep": 17724, - "hep": 48791, - "hepat": 23767, - "hepatitis": 32169, - "hepburn": 26348, - "her": 1223, - "her": 899, - "hera": 38724, - "heral": 37809, - "herald": 27625, - "herald": 12851, - "herb": 26116, - "herb": 15302, - "herbal": 21868, - "herbali": 44087, - "herbalife": 48364, - "herbert": 19935, - "herbs": 17320, - "hercules": 26539, - "herd": 36142, - "herd": 18589, - "here": 9134, - "here": 763, - "hered": 47976, - "hereford": 35543, - "heres": 13566, - "hereto": 47673, - "heri": 31392, - "herit": 4720, - "heritag": 38273, - "heritage": 20962, - "heritage": 5455, - "herman": 31890, - "herman": 21568, - "hermann": 40942, - "hermes": 34563, - "hermi": 35265, - "hermione": 45502, - "hermit": 43953, - "hermitage": 47706, - "hermo": 40967, - "hermosa": 42531, - "hern": 30571, - "hern": 43576, - "hernandez": 17707, - "hero": 7338, - "hero": 3756, - "heroes": 38010, - "heroes": 5506, - "heroic": 24255, - "heroin": 23841, - "heroine": 27420, - "heron": 22593, - "heros": 37642, - "herr": 38537, - "herrera": 27755, - "herring": 30211, - "hers": 25359, - "herself": 9207, - "hersh": 20379, - "hershey": 29734, - "hert": 26744, - "hertfordshire": 41070, - "herts": 35784, - "herty": 23454, - "hertz": 49383, - "hes": 30553, - "hes": 12784, - "hesit": 23933, - "hesitate": 34967, - "hess": 41888, - "hester": 31105, - "het": 37527, - "het": 19678, - "hetero": 26405, - "heu": 20105, - "heughan": 32298, - "hew": 48141, - "hew": 43051, - "hewitt": 28871, - "hex": 16255, - "hex": 31241, - "hey": 10759, - "hey": 2189, - "hez": 34591, - "hezbollah": 37636, - "hf": 26606, - "hf": 20603, - "hfx": 47297, - "hg": 23986, - "hg": 26237, - "hgtv": 47657, - "hh": 3280, - "hh": 5180, - "hhh": 8281, - "hhhh": 19391, - "hhhh": 13121, - "hhhhh": 24246, - "hhhhhh": 37278, - "hhs": 27006, - "hi": 677, - "hi": 1883, - "hia": 20672, - "hiatus": 27823, - "hib": 15922, - "hiber": 38799, - "hibis": 36226, - "hibiscus": 36460, - "hibition": 24658, - "hibs": 42814, - "hic": 3549, - "hic": 38079, - "hick": 14813, - "hickman": 49148, - "hickory": 29905, - "hicks": 23429, - "hid": 15552, - "hid": 14451, - "hidalgo": 47464, - "hidden": 28305, - "hidden": 7029, - "hiddleston": 31444, - "hide": 17725, - "hide": 9379, - "hideous": 46588, - "hides": 30800, - "hiding": 11371, - "hie": 15763, - "hier": 23433, - "hier": 29913, - "hierarchy": 44442, - "hifi": 38168, - "hig": 38108, - "higgins": 21783, - "high": 1487, - "high": 1400, - "higher": 5321, - "highered": 27072, - "highest": 5317, - "highland": 32244, - "highland": 16062, - "highlander": 46251, - "highlanders": 40445, - "highlands": 16883, - "highlight": 8264, - "highlighted": 22252, - "highlighter": 45460, - "highlighting": 17344, - "highlights": 6173, - "highly": 5302, - "highness": 38694, - "highs": 15144, - "highschool": 23102, - "highway": 45344, - "highway": 7620, - "highways": 28007, - "higu": 39115, - "hihi": 36240, - "hii": 42315, - "hijab": 31407, - "hika": 41356, - "hikari": 44624, - "hike": 9404, - "hiked": 36471, - "hiker": 40947, - "hikers": 46090, - "hikes": 27076, - "hiking": 9118, - "hiko": 48708, - "hil": 3508, - "hil": 17927, - "hila": 38837, - "hilar": 37337, - "hilari": 7784, - "hilarious": 8358, - "hilariously": 43476, - "hilary": 45898, - "hilary": 25415, - "hilde": 45382, - "hill": 3671, - "hill": 2682, - "hillary": 13257, - "hillary": 7074, - "hillaryclinton": 15357, - "hilli": 32513, - "hills": 24178, - "hills": 5289, - "hillsborough": 32157, - "hillside": 37194, - "hilltop": 45858, - "hilly": 32483, - "hilton": 33621, - "hilton": 14012, - "him": 4128, - "him": 1269, - "himach": 29132, - "himachal": 35461, - "himalay": 17552, - "himalayan": 30318, - "himalayas": 32872, - "hime": 45892, - "himself": 4530, - "himss": 41730, - "hin": 1676, - "hin": 37930, - "hina": 40571, - "hinakhan": 45518, - "hinch": 49320, - "hind": 34460, - "hind": 23293, - "hindi": 14967, - "hinds": 47859, - "hindu": 17587, - "hindu": 12053, - "hinduism": 40592, - "hindus": 25701, - "hindustan": 46553, - "hines": 37462, - "hing": 37968, - "hini": 33564, - "hino": 45343, - "hint": 11868, - "hinton": 47165, - "hints": 20594, - "hio": 32897, - "hip": 11725, - "hip": 6584, - "hipho": 8819, - "hiphop": 26598, - "hiphop": 10914, - "hipp": 13607, - "hippie": 28637, - "hippo": 28398, - "hippo": 36729, - "hips": 30191, - "hipstamatic": 31002, - "hipster": 19987, - "hipsters": 48265, - "hir": 4959, - "hir": 14728, - "hira": 42577, - "hire": 32356, - "hire": 8243, - "hired": 17602, - "hires": 24133, - "hiring": 7835, - "hiro": 17396, - "hiro": 20588, - "hiroshima": 33867, - "hirsch": 46967, - "his": 15211, - "his": 787, - "hism": 23502, - "hispan": 16843, - "hispanic": 22676, - "hist": 21710, - "hist": 13779, - "histo": 33479, - "histor": 2993, - "historia": 46010, - "historian": 20697, - "historians": 35200, - "historic": 30195, - "historic": 5726, - "historical": 34154, - "historical": 8039, - "historically": 30445, - "histories": 34736, - "history": 11142, - "history": 1695, - "historymonth": 19356, - "historyof": 35905, - "hit": 5453, - "hit": 2341, - "hitch": 22937, - "hitch": 36203, - "hitler": 16518, - "hitman": 33290, - "hits": 4712, - "hitter": 23538, - "hitters": 39724, - "hitting": 7957, - "hiv": 44410, - "hiv": 11018, - "hive": 38162, - "hive": 18521, - "hiya": 42393, - "hk": 22648, - "hk": 12307, - "hl": 8297, - "hl": 5956, - "hle": 32389, - "hler": 35418, - "hm": 17913, - "hm": 7631, - "hmm": 13725, - "hmmm": 17032, - "hmmmm": 34598, - "hms": 14625, - "hmu": 21630, - "hmv": 49288, - "hn": 22905, - "hn": 7478, - "hns": 48412, - "ho": 606, - "ho": 2971, - "hoa": 37517, - "hoar": 31628, - "hoax": 33438, - "hob": 18212, - "hobart": 31646, - "hobb": 16175, - "hobbies": 36370, - "hobbit": 23207, - "hobbs": 34343, - "hobby": 41120, - "hobby": 17557, - "hobo": 34613, - "hobo": 41334, - "hoboken": 41568, - "hoc": 35880, - "hoch": 43772, - "hock": 34914, - "hock": 46574, - "hockey": 16499, - "hockey": 4111, - "hoco": 34771, - "hod": 31062, - "hodg": 23660, - "hodge": 40585, - "hodges": 35061, - "hodgson": 37044, - "hoe": 32502, - "hoe": 11262, - "hoek": 40073, - "hoes": 21164, - "hof": 20186, - "hof": 12789, - "hofer": 38654, - "hoff": 32860, - "hoff": 22751, - "hofficial": 41949, - "hoffman": 22026, - "hog": 12075, - "hog": 13255, - "hogan": 19757, - "hogg": 42005, - "hogs": 23242, - "hogwarts": 29168, - "hoh": 43947, - "hoi": 39295, - "hok": 26942, - "hok": 47167, - "hokies": 35168, - "hokkaido": 49145, - "hol": 1187, - "hol": 7349, - "hola": 28724, - "hold": 36496, - "hold": 3254, - "holden": 21869, - "holder": 7862, - "holders": 10074, - "holding": 5050, - "holdings": 24832, - "holds": 7286, - "hole": 47242, - "hole": 5341, - "holes": 11266, - "holi": 2093, - "holi": 21926, - "holic": 16348, - "holics": 29782, - "holiday": 13168, - "holiday": 2878, - "holidays": 5372, - "holiness": 37259, - "holistic": 26300, - "holl": 27699, - "holla": 26500, - "holland": 31608, - "holland": 9978, - "hollande": 47690, - "holler": 49047, - "holli": 24019, - "holliday": 41624, - "hollow": 41221, - "hollow": 16691, - "holloway": 29435, - "holly": 12731, - "holly": 11923, - "hollyo": 41525, - "hollyoaks": 43352, - "hollywood": 24655, - "hollywood": 5518, - "holm": 34758, - "holm": 12739, - "holme": 46149, - "holmes": 12756, - "holo": 10317, - "holocau": 14688, - "holocaust": 16476, - "hols": 33344, - "holt": 18868, - "holtz": 44743, - "holy": 13910, - "holy": 4874, - "hom": 906, - "hom": 47397, - "homa": 9557, - "homage": 17746, - "home": 2143, - "home": 1137, - "homebrew": 35046, - "homec": 33869, - "homecoming": 9008, - "homedecor": 15695, - "homedepot": 38707, - "homegrown": 32554, - "homeitems": 42972, - "homeland": 21633, - "homeless": 18403, - "homeless": 9661, - "homelessness": 19851, - "homemade": 7889, - "homeof": 48856, - "homeowner": 37267, - "homeowners": 29882, - "homepage": 29828, - "homer": 29307, - "homer": 16931, - "homers": 38333, - "homes": 19480, - "homes": 5416, - "homeschool": 40994, - "homestead": 32609, - "homeswee": 46298, - "hometown": 12238, - "homework": 12495, - "homicide": 21520, - "homie": 12540, - "homies": 18893, - "homme": 26193, - "homo": 18129, - "homo": 30504, - "homophobia": 37875, - "homophobic": 40975, - "homosexual": 44288, - "homosexuality": 46720, - "homs": 45413, - "hon": 1279, - "hon": 10296, - "honda": 8553, - "honduras": 29715, - "hone": 38640, - "honest": 7814, - "honest": 9602, - "honestly": 9155, - "honesty": 24939, - "honey": 9843, - "honey": 6406, - "honeycomb": 48583, - "honeymoon": 22527, - "hong": 12144, - "hong": 8598, - "hongkong": 16659, - "honi": 17918, - "honolulu": 28096, - "honor": 9206, - "honor": 3402, - "honorable": 19498, - "honorary": 15675, - "honore": 25868, - "honored": 5494, - "honoree": 38993, - "honorees": 43012, - "honoring": 10771, - "honors": 10248, - "honour": 8240, - "honourable": 29855, - "honoured": 11945, - "honouring": 37754, - "honours": 22558, - "hoo": 2300, - "hoo": 7920, - "hood": 18681, - "hood": 3222, - "hooded": 33631, - "hoodie": 13444, - "hoodies": 25974, - "hoods": 16664, - "hoof": 44555, - "hook": 30488, - "hook": 10395, - "hookah": 34214, - "hooked": 18138, - "hookem": 31465, - "hooker": 37891, - "hooking": 35240, - "hooks": 25068, - "hooligans": 48176, - "hoon": 21368, - "hooo": 44538, - "hoop": 31516, - "hoop": 19573, - "hooper": 35221, - "hoops": 9351, - "hoor": 22155, - "hooray": 24940, - "hoos": 46462, - "hoosier": 48886, - "hoosiers": 42780, - "hoot": 29164, - "hoover": 25691, - "hop": 10848, - "hop": 5833, - "hope": 5263, - "hope": 1683, - "hoped": 30628, - "hopeful": 21453, - "hopefully": 7602, - "hopeless": 35586, - "hopes": 10018, - "hoping": 7207, - "hopkins": 17821, - "hopp": 48839, - "hopped": 34220, - "hopper": 21748, - "hopping": 27606, - "hoppy": 38359, - "hops": 21137, - "hor": 1407, - "hor": 33847, - "hora": 26013, - "horace": 39282, - "horan": 26857, - "horde": 44947, - "hore": 15380, - "horiz": 8144, - "horizon": 17924, - "horizon": 11920, - "horizons": 29685, - "horizontal": 25775, - "hormon": 27096, - "hormone": 31283, - "hormones": 35162, - "horn": 15771, - "horn": 9607, - "horne": 38143, - "horned": 34526, - "hornet": 28739, - "hornets": 20124, - "horns": 22109, - "horny": 32622, - "horo": 21500, - "horoscope": 38453, - "horowitz": 44669, - "horri": 8656, - "horrible": 13726, - "horribly": 45484, - "horrific": 25314, - "horrifying": 38901, - "horror": 13787, - "horror": 5032, - "horrormovies": 46682, - "horrors": 33321, - "horse": 8562, - "horse": 4558, - "horseback": 43673, - "horseman": 48885, - "horsepower": 36882, - "horser": 23096, - "horseracing": 30693, - "horses": 8809, - "horseshoe": 29242, - "horst": 37182, - "hort": 19482, - "horticul": 27141, - "horticulture": 39998, - "horton": 25945, - "hortons": 38422, - "horus": 29794, - "hos": 44320, - "hos": 25008, - "hosa": 44618, - "hose": 19662, - "hoseok": 38817, - "hosp": 2847, - "hosp": 37853, - "hospice": 20533, - "hospit": 7180, - "hospital": 29399, - "hospital": 3851, - "hospitality": 11657, - "hospitalized": 36915, - "hospitals": 13816, - "host": 17403, - "host": 3953, - "hostage": 26119, - "hoste": 31700, - "hosted": 6017, - "hostel": 27225, - "hostess": 39692, - "hostile": 28074, - "hosting": 4857, - "hosts": 8718, - "hot": 2851, - "hot": 2069, - "hota": 43289, - "hotdog": 43758, - "hotel": 14591, - "hotel": 2738, - "hotels": 8654, - "hotline": 30516, - "hotmail": 46427, - "hotness": 39803, - "hotra": 27109, - "hotro": 47823, - "hotspot": 36606, - "hotspur": 35176, - "hotter": 23591, - "hottest": 8279, - "hottie": 22804, - "hotties": 46027, - "hou": 1011, - "hou": 10122, - "hough": 44529, - "houghton": 36133, - "houn": 39273, - "houn": 33607, - "hound": 33996, - "hound": 13561, - "hounds": 21178, - "hounews": 48373, - "hour": 14930, - "hour": 2232, - "hourly": 30918, - "hours": 2382, - "house": 4107, - "house": 1212, - "housed": 37518, - "household": 12412, - "households": 27167, - "housel": 48685, - "housemusic": 28468, - "houseof": 19928, - "houses": 7791, - "housewives": 38523, - "housing": 32924, - "housing": 5734, - "houston": 16564, - "houston": 5663, - "hov": 40291, - "hove": 29674, - "hoven": 35559, - "hover": 36252, - "hover": 49016, - "hovering": 43437, - "how": 7470, - "how": 829, - "howar": 37672, - "howard": 25447, - "howard": 7632, - "howdy": 42216, - "howe": 8179, - "howe": 24614, - "howell": 25297, - "hower": 32920, - "however": 8467, - "howi": 47883, - "howie": 42939, - "howl": 40332, - "howling": 41771, - "howto": 38191, - "howto": 44060, - "hoy": 39625, - "hoy": 13278, - "hoya": 40978, - "hp": 23753, - "hp": 6371, - "hpa": 30983, - "hpc": 39936, - "hpe": 33787, - "hpv": 45765, - "hq": 33571, - "hq": 4693, - "hr": 4810, - "hr": 4086, - "hra": 21320, - "hra": 17212, - "hrc": 18139, - "hrh": 29103, - "hri": 21068, - "hrithik": 45371, - "hrs": 7157, - "hru": 24127, - "hrw": 25064, - "hs": 9343, - "hs": 2466, - "hsbc": 31508, - "hsc": 43510, - "hse": 34057, - "hsfb": 29539, - "hsv": 47311, - "ht": 11123, - "ht": 7801, - "hta": 23452, - "hta": 49384, - "htafc": 42821, - "htc": 48942, - "htc": 17635, - "html": 18231, - "hts": 43710, - "htt": 10620, - "http": 15066, - "https": 30901, - "httr": 49372, - "httweets": 43198, - "hu": 845, - "hu": 5949, - "hua": 22138, - "huan": 41405, - "huang": 32013, - "huar": 46916, - "huawe": 17709, - "huawei": 21128, - "hub": 18775, - "hub": 7028, - "hubb": 23183, - "hubbard": 33288, - "hubble": 30421, - "hubby": 16947, - "hubert": 40699, - "hubs": 29327, - "huck": 22909, - "huckabee": 43666, - "hud": 7169, - "hud": 28563, - "hudder": 22629, - "huddersfield": 24220, - "huddle": 33435, - "hudson": 25873, - "hudson": 11260, - "hue": 48380, - "hue": 21465, - "hues": 38003, - "huey": 39663, - "huff": 18746, - "huff": 44999, - "huffpost": 45887, - "hug": 40790, - "hug": 10359, - "huge": 2699, - "hugely": 24648, - "hugged": 41333, - "hugging": 27058, - "hugh": 8723, - "hugh": 15385, - "hughes": 11418, - "hugo": 43935, - "hugo": 17132, - "hugs": 14248, - "huh": 13348, - "huhu": 32134, - "hui": 29978, - "hul": 7911, - "hula": 40145, - "hulk": 17637, - "hull": 25154, - "hull": 10375, - "hulu": 24666, - "hum": 5823, - "hum": 16283, - "human": 3175, - "human": 2751, - "humane": 20220, - "humanitarian": 14170, - "humanities": 24949, - "humanity": 9420, - "humanright": 44385, - "humanrights": 14148, - "humans": 8324, - "humb": 9988, - "humber": 30602, - "humber": 38063, - "humble": 38703, - "humble": 10889, - "humbled": 19682, - "humbling": 39757, - "humbold": 24739, - "humboldt": 31389, - "hume": 38197, - "humid": 14778, - "humid": 27447, - "humidi": 47666, - "humidity": 15469, - "humil": 27205, - "humili": 25332, - "humility": 28535, - "humming": 26515, - "hummingbird": 33072, - "hummus": 31785, - "humor": 29369, - "humor": 11186, - "humorous": 38173, - "humour": 19161, - "hump": 16673, - "hump": 24529, - "humpback": 47662, - "humpday": 27693, - "humph": 19767, - "humphrey": 31549, - "hun": 1616, - "hun": 10795, - "hundre": 8505, - "hundred": 11898, - "hundreds": 8879, - "hung": 13825, - "hungar": 19420, - "hungarian": 23325, - "hungary": 17232, - "hunger": 25565, - "hunger": 10184, - "hungergames": 47507, - "hungover": 41110, - "hungry": 44845, - "hungry": 8451, - "hunk": 33912, - "hunt": 16498, - "hunt": 5774, - "hunted": 37373, - "hunter": 16531, - "hunter": 6099, - "hunters": 16115, - "hunting": 27830, - "hunting": 7507, - "huntington": 23521, - "hunts": 34041, - "huntsville": 34544, - "hur": 2305, - "hur": 34523, - "hurd": 44915, - "hurdle": 27486, - "hurdles": 25440, - "huri": 42486, - "hurley": 30166, - "hurling": 24738, - "huron": 36147, - "hurrah": 40599, - "hurric": 6543, - "hurrican": 36105, - "hurricane": 24051, - "hurricane": 8782, - "hurricanes": 22357, - "hurry": 10921, - "hurst": 44742, - "hurst": 11760, - "hurt": 7413, - "hurting": 24017, - "hurts": 13059, - "hus": 5111, - "hus": 35853, - "husband": 6179, - "husbands": 33612, - "hush": 28728, - "husk": 19246, - "huskers": 26946, - "huskies": 20988, - "husky": 20421, - "huss": 13733, - "hussain": 17940, - "hussein": 31336, - "hust": 27279, - "hustle": 15709, - "huston": 46480, - "hut": 20924, - "hut": 16503, - "hutch": 31018, - "hutch": 33203, - "hutchinson": 35721, - "hutto": 27662, - "hutton": 38321, - "hv": 17209, - "hv": 18593, - "hvac": 27492, - "hw": 27491, - "hw": 18876, - "hwa": 32352, - "hwan": 44390, - "hwang": 46775, - "hwy": 13812, - "hy": 1441, - "hy": 17827, - "hya": 31600, - "hyacin": 47263, - "hyatt": 44856, - "hyatt": 25146, - "hybri": 9084, - "hybrid": 10156, - "hyd": 42382, - "hyde": 46484, - "hyde": 16343, - "hyder": 13960, - "hyderabad": 14801, - "hydr": 8031, - "hydra": 44414, - "hydra": 40420, - "hydrange": 43298, - "hydrate": 29628, - "hydrated": 23300, - "hydrating": 47653, - "hydration": 24174, - "hydrau": 26017, - "hydraulic": 26189, - "hydro": 8368, - "hydro": 22595, - "hydrogen": 20974, - "hye": 32724, - "hye": 25792, - "hygi": 16277, - "hygiene": 19591, - "hymn": 41350, - "hyo": 38960, - "hyo": 35078, - "hyp": 16964, - "hype": 30353, - "hype": 11111, - "hyped": 22507, - "hyper": 7997, - "hyper": 22146, - "hypertension": 40698, - "hypno": 23355, - "hypnosis": 48138, - "hypnoti": 40440, - "hypo": 10252, - "hypocr": 30711, - "hypocri": 25606, - "hypocrisy": 26296, - "hypocrite": 44125, - "hypothe": 46966, - "hypothesis": 44956, - "hyster": 24235, - "hysteria": 45965, - "hysterical": 48627, - "hyuk": 20452, - "hyun": 11831, - "hyun": 8589, - "hyundai": 17094, - "hyung": 46901, - "hyung": 16551, - "hz": 32533, - "i": 72, - "i": 328, - "ia": 12486, - "ia": 1073, - "iac": 32838, - "iac": 44063, - "iaf": 40789, - "iah": 35052, - "iain": 30103, - "ial": 11530, - "ial": 1974, - "ials": 20940, - "iam": 3579, - "iam": 11415, - "iambic": 43668, - "iambicpent": 43891, - "iamsrk": 15103, - "ian": 7723, - "ian": 1800, - "ians": 6451, - "iansomerhalder": 47077, - "iart": 18413, - "iartg": 18669, - "ias": 32303, - "ias": 14620, - "ib": 3962, - "ib": 13554, - "iba": 39763, - "ibadan": 44691, - "iban": 47145, - "ibc": 49014, - "ibd": 40732, - "iber": 23814, - "ibi": 12337, - "ibis": 47048, - "ibiza": 13853, - "ible": 37792, - "ibles": 44102, - "ibm": 23415, - "ibm": 13918, - "ibn": 25729, - "ibooks": 46887, - "ibra": 15476, - "ibrahi": 40350, - "ibrahim": 20816, - "ibrox": 46883, - "ibs": 41993, - "ibu": 43587, - "ibu": 46117, - "ic": 535, - "ic": 1029, - "ica": 2576, - "icago": 37492, - "ical": 6082, - "ical": 1110, - "ically": 3161, - "icals": 13999, - "ican": 17653, - "ican": 5246, - "icans": 20511, - "icar": 37211, - "ication": 21629, - "icc": 12945, - "ice": 2739, - "ice": 733, - "iceberg": 33662, - "icec": 13636, - "icecream": 21334, - "iced": 8049, - "icelan": 34114, - "iceland": 46716, - "iceland": 11935, - "icelandic": 34705, - "ices": 1931, - "ich": 5333, - "ich": 1232, - "icha": 31453, - "iche": 28972, - "iche": 21143, - "ichi": 21669, - "ichi": 14647, - "ichick": 45022, - "ichiro": 43787, - "ici": 948, - "ici": 22189, - "icia": 11774, - "icial": 17543, - "icial": 6397, - "ician": 40522, - "ician": 5374, - "icians": 6264, - "iciary": 21329, - "icic": 46006, - "icide": 6558, - "icides": 28253, - "icing": 7676, - "icio": 24207, - "icion": 45905, - "icious": 3325, - "icist": 21165, - "icists": 42171, - "icity": 7243, - "ick": 1168, - "ick": 1068, - "icked": 39799, - "icker": 40357, - "ickers": 30701, - "icki": 35468, - "icking": 6619, - "icks": 3727, - "icky": 11587, - "icn": 44516, - "ico": 13697, - "ico": 3040, - "icom": 17693, - "icom": 29796, - "icon": 13843, - "icon": 5646, - "iconic": 6959, - "icons": 15553, - "icop": 9389, - "icos": 32002, - "ics": 1324, - "ict": 6349, - "icted": 36515, - "iction": 40560, - "icton": 36548, - "icu": 45118, - "icu": 30443, - "icular": 40660, - "icus": 31459, - "icy": 28780, - "icy": 3495, - "icymi": 5315, - "icz": 46387, - "id": 1568, - "id": 1014, - "ida": 11032, - "ida": 11600, - "idad": 22462, - "idaho": 48817, - "idaho": 15165, - "idal": 39684, - "idan": 17929, - "idc": 22386, - "ide": 1909, - "ide": 14104, - "idea": 3612, - "ideal": 8789, - "ideally": 48247, - "ideals": 45096, - "ideas": 4452, - "ident": 7113, - "identi": 6009, - "identical": 25587, - "identification": 23337, - "identified": 15217, - "identifies": 35712, - "identify": 10949, - "identifying": 23589, - "identities": 34292, - "identity": 8892, - "ideology": 25840, - "iders": 8980, - "ides": 31791, - "idf": 28987, - "idge": 35567, - "idh": 44325, - "idi": 9611, - "idi": 14264, - "idio": 15994, - "idiot": 14087, - "idiots": 20856, - "idk": 8972, - "idle": 34754, - "idlib": 36199, - "ido": 6763, - "ido": 29641, - "idol": 24866, - "idol": 8884, - "idols": 21398, - "idr": 10106, - "idri": 46435, - "idris": 41312, - "ids": 6111, - "idu": 28655, - "idy": 33058, - "idyl": 44879, - "idyllic": 46632, - "ie": 6789, - "ie": 1718, - "iec": 44773, - "ied": 10059, - "ieee": 39860, - "iel": 27875, - "iel": 22729, - "ience": 1542, - "ient": 13115, - "ier": 33173, - "ier": 5912, - "iers": 45060, - "ies": 27912, - "ies": 963, - "iest": 10818, - "if": 8063, - "if": 878, - "ifa": 37574, - "ifc": 36524, - "ife": 41172, - "ife": 19590, - "iff": 35753, - "ification": 35755, - "ified": 41403, - "ift": 31143, - "iftar": 35153, - "ifu": 41523, - "ify": 32807, - "ig": 1089, - "ig": 3072, - "iga": 16493, - "igan": 27468, - "igans": 25419, - "igbo": 44591, - "ige": 10806, - "igen": 33070, - "iger": 30758, - "iger": 20685, - "igers": 40755, - "igers": 48928, - "iggy": 46219, - "iggy": 27604, - "igh": 2712, - "igh": 5451, - "ight": 14571, - "ight": 897, - "ighton": 35292, - "igi": 21901, - "igle": 29912, - "iglesias": 39432, - "ign": 7303, - "ign": 2326, - "ignati": 37573, - "ignatius": 48318, - "igne": 45843, - "ignite": 25210, - "ignition": 36115, - "igno": 15375, - "ignor": 7653, - "ignorance": 22735, - "ignorant": 26933, - "ignore": 12304, - "ignored": 20428, - "ignores": 40129, - "ignoring": 23969, - "igor": 33024, - "igs": 31344, - "igu": 21279, - "ih": 12162, - "ih": 34135, - "ihear": 13043, - "iheart": 30332, - "iheartawards": 18811, - "iheartradio": 25934, - "ihop": 45511, - "ihri": 39108, - "ihrithik": 39326, - "ii": 5103, - "ii": 2329, - "iii": 46236, - "iii": 6572, - "iiii": 20133, - "iiii": 45393, - "iiot": 30704, - "iit": 39330, - "iit": 33238, - "ij": 7337, - "ija": 42802, - "ik": 3903, - "ik": 10177, - "ika": 18188, - "ike": 12329, - "ike": 19696, - "ikea": 20528, - "iker": 38653, - "ikh": 44655, - "ikh": 12758, - "iklan": 32028, - "iklan": 29584, - "iko": 35659, - "iko": 39272, - "ikon": 38543, - "ikon": 19156, - "iku": 17780, - "il": 543, - "il": 958, - "ila": 4344, - "ilah": 32211, - "ilan": 13889, - "ilan": 28076, - "iland": 20957, - "ilation": 16180, - "ilay": 45093, - "ild": 22278, - "ild": 17164, - "ile": 18398, - "ile": 989, - "iled": 3358, - "iler": 22446, - "iler": 3615, - "ilers": 8975, - "iles": 42274, - "ili": 2076, - "ili": 19601, - "ilia": 14855, - "ilian": 10272, - "iliary": 32585, - "ilife": 42835, - "ilike": 44989, - "ilinan": 48497, - "iling": 3299, - "ilio": 47256, - "ilion": 12561, - "ilis": 43442, - "ilit": 11178, - "ilities": 5446, - "ility": 1787, - "ilive": 26478, - "ill": 828, - "ill": 660, - "illa": 8877, - "illa": 3043, - "illac": 17218, - "illage": 48922, - "illard": 21920, - "illary": 33667, - "illas": 23404, - "ille": 18213, - "ille": 5559, - "illed": 2527, - "illeg": 35808, - "illegal": 7983, - "illegally": 24466, - "illegals": 40490, - "iller": 23341, - "iller": 2956, - "illers": 30547, - "illery": 14514, - "illes": 20037, - "illi": 1086, - "illi": 25187, - "illia": 48776, - "illiams": 30301, - "illian": 48775, - "illian": 17355, - "illic": 37152, - "illicit": 40998, - "illie": 26083, - "illin": 35868, - "illing": 2803, - "illini": 28957, - "illino": 8920, - "illinois": 9414, - "illion": 35542, - "illion": 2035, - "illness": 11145, - "illnesses": 33861, - "illo": 34153, - "illo": 7588, - "illon": 20516, - "ills": 1900, - "illu": 3025, - "illumin": 11446, - "illuminate": 43261, - "illuminated": 28814, - "illuminati": 34551, - "illuminating": 46601, - "illumination": 43680, - "illus": 41386, - "illusion": 20318, - "illusions": 47429, - "illustr": 6268, - "illustrate": 37468, - "illustrated": 13151, - "illustrates": 38129, - "illustrating": 43322, - "illustration": 6052, - "illustrations": 17852, - "illustrator": 16649, - "illustri": 43116, - "illustrious": 44304, - "illy": 11707, - "illy": 9532, - "ilm": 36326, - "ilo": 4220, - "ilo": 14835, - "ilove": 7183, - "ilove": 32914, - "iloveart": 41114, - "ilovemy": 28863, - "iloveyou": 28829, - "ils": 1543, - "ilt": 25334, - "ilton": 28494, - "ilu": 27337, - "ilwx": 43777, - "ily": 4881, - "ily": 1026, - "ilya": 33377, - "ilysm": 29228, - "im": 732, - "im": 1496, - "ima": 2414, - "ima": 6432, - "imac": 40675, - "imacele": 47281, - "imag": 2316, - "image": 24101, - "image": 2867, - "imagery": 22828, - "images": 4952, - "imagin": 18178, - "imaginary": 30417, - "imagination": 13783, - "imaginative": 47233, - "imagine": 35752, - "imagine": 4826, - "imagined": 18478, - "imagines": 47379, - "imaging": 14231, - "imagining": 27384, - "imam": 37552, - "imam": 19024, - "iman": 45684, - "iman": 16247, - "imation": 44566, - "imax": 32066, - "imc": 45616, - "imdanielpadilla": 36357, - "imdb": 30407, - "ime": 44937, - "ime": 31151, - "imel": 31594, - "iment": 37157, - "imer": 21802, - "imes": 47744, - "imf": 28403, - "img": 24157, - "imi": 23559, - "imin": 23942, - "imit": 23462, - "imitation": 41630, - "imma": 19487, - "immac": 25085, - "immaculate": 29649, - "immature": 45531, - "immedi": 7366, - "immediate": 14440, - "immediately": 10108, - "immen": 17278, - "immense": 22722, - "immensely": 35013, - "immer": 13954, - "immerse": 46240, - "immersion": 31861, - "immersive": 27521, - "immigr": 5851, - "immigrant": 16474, - "immigrants": 14460, - "immigration": 9588, - "imminent": 27299, - "immort": 39244, - "immortal": 24717, - "immun": 8961, - "immune": 15606, - "immuni": 44571, - "immunity": 26254, - "immuno": 24361, - "immunology": 44483, - "immunotherapy": 39185, - "imo": 26349, - "imo": 13738, - "imp": 3335, - "imp": 31037, - "impac": 7573, - "impact": 33036, - "impact": 3844, - "impacted": 21424, - "impactful": 41631, - "impacting": 29359, - "impacts": 15069, - "impair": 36451, - "impaired": 28028, - "impairment": 44501, - "impala": 36641, - "impe": 23612, - "impeach": 16874, - "impeach": 43497, - "impeachment": 32979, - "impeachtrump": 38006, - "impecc": 34511, - "impeccable": 40111, - "impending": 34486, - "imper": 7727, - "imperative": 39833, - "imperfect": 46034, - "imperi": 30911, - "imperial": 32425, - "imperial": 12361, - "imperialism": 48855, - "imperson": 25551, - "implant": 33106, - "implants": 32202, - "imple": 7423, - "implement": 17966, - "implementation": 15102, - "implemented": 24315, - "implementing": 22862, - "implic": 15269, - "implications": 19229, - "implo": 40337, - "impo": 45704, - "import": 2336, - "import": 16294, - "importance": 6821, - "important": 2829, - "importantly": 21580, - "imported": 28798, - "imports": 25286, - "impose": 35879, - "imposed": 25871, - "imposing": 42289, - "impossible": 9815, - "impre": 3763, - "impress": 20015, - "impressed": 9689, - "impression": 14468, - "impressionism": 36114, - "impressionist": 44904, - "impressions": 22276, - "impressive": 6634, - "imprint": 43863, - "imprison": 22141, - "imprisoned": 32999, - "imprisonment": 39024, - "impro": 2531, - "impromp": 28100, - "impromptu": 28611, - "improv": 22868, - "improve": 4971, - "improved": 9446, - "improvement": 10790, - "improvements": 16320, - "improves": 18035, - "improving": 10381, - "improvis": 32343, - "improvised": 40886, - "impulse": 29683, - "impy": 42690, - "imran": 19647, - "imran": 19212, - "imrankhan": 25956, - "imrankhanpti": 26688, - "ims": 17800, - "imsa": 37262, - "imv": 35731, - "imvkohli": 37136, - "imwith": 26822, - "imwithher": 32651, - "in": 512, - "in": 530, - "ina": 18026, - "ina": 1366, - "inability": 47517, - "inaccurate": 49192, - "inaction": 41916, - "inactive": 49274, - "inadequate": 43403, - "inak": 46549, - "inal": 19178, - "inals": 26438, - "inan": 26204, - "inappropriate": 26722, - "inari": 48620, - "inary": 11337, - "inas": 36731, - "inas": 12362, - "inated": 38530, - "ination": 4706, - "inau": 10832, - "inaugu": 11309, - "inaugur": 11448, - "inaugural": 11340, - "inaugurated": 29011, - "inauguration": 16805, - "inbound": 24420, - "inbox": 18683, - "inc": 14570, - "inc": 4438, - "incan": 45964, - "incar": 18070, - "incarcer": 26334, - "incarcerated": 49178, - "incarceration": 39887, - "incase": 30463, - "ince": 44303, - "incen": 13259, - "incense": 35059, - "incentive": 29024, - "incentives": 29813, - "inception": 36653, - "inch": 6523, - "incheon": 30645, - "inches": 10809, - "inci": 5747, - "incidence": 43371, - "incident": 10103, - "incidents": 22120, - "incindia": 26161, - "inciner": 46434, - "incl": 27857, - "incl": 13338, - "inclined": 45470, - "inclu": 1738, - "include": 5942, - "included": 7414, - "includes": 6197, - "including": 2814, - "inclusion": 12079, - "inclusive": 13393, - "income": 8044, - "incoming": 15416, - "incomparable": 36027, - "incompetent": 45069, - "incomplete": 34040, - "incon": 42372, - "inconvenience": 40563, - "incorpor": 19335, - "incorporate": 34168, - "incorporated": 29494, - "incorporating": 40303, - "incorrect": 31872, - "incre": 1870, - "increase": 5230, - "increased": 9156, - "increases": 13797, - "increasing": 10270, - "increasingly": 16106, - "incredi": 2883, - "incredible": 22128, - "incredible": 3457, - "incredibleindia": 24680, - "incredibles": 48641, - "incredibly": 9513, - "incu": 38830, - "incub": 24587, - "incubator": 35736, - "incumb": 32246, - "incumbent": 38038, - "incur": 42356, - "ind": 5386, - "ind": 4655, - "inda": 15710, - "inde": 2645, - "indeed": 10031, - "indefin": 29501, - "indefinitely": 43750, - "independ": 4147, - "independence": 23117, - "independence": 7955, - "independenceday": 25971, - "independent": 33844, - "independent": 7088, - "independently": 39831, - "inder": 29225, - "index": 35209, - "index": 9458, - "indhoven": 44229, - "indi": 1098, - "indi": 46536, - "india": 27067, - "india": 1762, - "indian": 7685, - "indian": 3606, - "indiana": 8615, - "indianapolis": 17196, - "indianfootball": 45979, - "indians": 10271, - "indic": 7136, - "indicate": 26679, - "indicated": 39416, - "indicates": 29412, - "indication": 38539, - "indicator": 24776, - "indicators": 30054, - "indicted": 34992, - "indictment": 42278, - "indie": 5260, - "indie": 9383, - "indiedev": 10863, - "indiefilm": 22588, - "indiegame": 17969, - "indiegamedev": 40466, - "indiegames": 35864, - "indiegogo": 38057, - "indies": 23618, - "indiffe": 41372, - "indigen": 8348, - "indigenous": 9303, - "indigo": 21002, - "indira": 43887, - "indirec": 26398, - "indirect": 35416, - "indivi": 5649, - "individu": 9574, - "individual": 8512, - "individually": 33782, - "individuals": 11990, - "indo": 26303, - "indo": 18297, - "indom": 42926, - "indone": 6180, - "indonesia": 7229, - "indonesian": 19593, - "indoor": 44478, - "indoor": 9546, - "indoors": 22973, - "indore": 46143, - "indu": 2298, - "induc": 7973, - "induced": 24103, - "inducted": 20596, - "inductee": 39558, - "inductees": 44796, - "induction": 18338, - "indul": 19402, - "indulg": 28388, - "indulge": 24851, - "indulgence": 40856, - "indulgent": 49147, - "industri": 5082, - "industrial": 30853, - "industrial": 7520, - "industries": 11700, - "industry": 47407, - "industry": 3318, - "indv": 16942, - "indy": 9821, - "indy": 10098, - "indycar": 20484, - "indyref": 22569, - "ine": 855, - "ine": 715, - "ineau": 38122, - "inec": 45214, - "ined": 2038, - "inee": 43252, - "inee": 7986, - "inees": 13056, - "ineffe": 47202, - "inely": 18234, - "inem": 48876, - "inema": 29232, - "inen": 44365, - "inequalities": 45507, - "inequality": 17372, - "iner": 17438, - "iner": 5155, - "iners": 41863, - "ines": 2137, - "inese": 35966, - "iness": 1463, - "inet": 8121, - "inette": 38911, - "inev": 19527, - "inevit": 45871, - "inevitable": 25004, - "inews": 24300, - "inexpensive": 38614, - "iney": 30254, - "inez": 12700, - "inf": 1529, - "inf": 35241, - "infamous": 18688, - "infan": 17219, - "infant": 19192, - "infantry": 21655, - "infants": 34726, - "infe": 7164, - "infec": 26088, - "infected": 26136, - "infection": 14774, - "infections": 22227, - "infectious": 29157, - "infeld": 25035, - "infer": 16258, - "inferno": 31290, - "infertility": 40701, - "infield": 48933, - "infiltr": 28683, - "infin": 6246, - "infinite": 12748, - "infiniti": 34644, - "infinity": 34863, - "infinity": 12895, - "infl": 7627, - "inflam": 16080, - "inflammation": 24893, - "inflammatory": 26831, - "inflatable": 30135, - "inflation": 17497, - "inflicted": 48188, - "influ": 4835, - "influen": 13229, - "influence": 9199, - "influenced": 21183, - "influencer": 25013, - "influencers": 29891, - "influences": 24926, - "influencing": 45126, - "influential": 17553, - "influenza": 39897, - "info": 5680, - "info": 2222, - "infographic": 10076, - "infographics": 33172, - "infor": 31773, - "inform": 10241, - "inform": 19449, - "informal": 25705, - "informat": 29625, - "informatics": 35685, - "information": 3204, - "informative": 19364, - "informed": 13876, - "informing": 45388, - "informs": 48440, - "infosec": 17863, - "infr": 29718, - "infra": 7312, - "infra": 45877, - "infrared": 22867, - "infrastructure": 9034, - "infringe": 44882, - "infringement": 48712, - "infront": 37668, - "infu": 15048, - "infuri": 48461, - "infused": 21461, - "infusion": 43464, - "ing": 653, - "ing": 519, - "inga": 15233, - "ingco": 40444, - "ingday": 16561, - "ingdon": 38731, - "inge": 11790, - "inge": 7071, - "inged": 30046, - "ingen": 19088, - "ingeni": 36884, - "inger": 33883, - "inger": 3541, - "ingfor": 33430, - "ingh": 9170, - "ingh": 30495, - "ingham": 24497, - "ingham": 4291, - "inghamshire": 39289, - "inghour": 42728, - "inging": 4066, - "ingl": 45662, - "ingle": 22228, - "ingle": 17005, - "ingles": 24490, - "ingley": 44428, - "inglis": 46327, - "ingly": 4796, - "ingnow": 34766, - "ingo": 30175, - "ingo": 9012, - "ingra": 45165, - "ingrad": 44124, - "ingram": 26998, - "ingredi": 9272, - "ingredient": 19799, - "ingredients": 11788, - "ingrid": 33496, - "ings": 895, - "ingthe": 20170, - "ingtips": 39373, - "ington": 11846, - "ington": 2156, - "ingu": 8714, - "ingual": 22795, - "ingue": 36838, - "ingui": 12788, - "inguish": 36146, - "inha": 32612, - "inhabit": 36189, - "inhabitants": 44968, - "inhal": 30786, - "inhe": 32617, - "inher": 24611, - "inherent": 47327, - "inherit": 34322, - "inheritance": 39341, - "inherited": 39111, - "inhi": 25557, - "inhibit": 32196, - "inho": 12984, - "ini": 6154, - "ini": 3581, - "inian": 36638, - "inim": 38717, - "inindia": 34021, - "ining": 1389, - "inist": 30976, - "init": 42670, - "initi": 4580, - "initial": 13980, - "initially": 28123, - "initials": 48794, - "initiated": 27756, - "initiation": 41009, - "initiative": 8152, - "initiatives": 16549, - "inity": 22126, - "inj": 5112, - "injec": 13688, - "injection": 21438, - "inju": 5006, - "injured": 7505, - "injuries": 9481, - "injury": 6223, - "injustice": 20541, - "ink": 4547, - "ink": 967, - "inka": 40685, - "inked": 29356, - "inki": 46176, - "inkigayo": 47882, - "inking": 37586, - "inks": 20966, - "inktober": 9387, - "inland": 21943, - "inlet": 35161, - "inline": 45004, - "inlove": 28415, - "inmate": 32341, - "inmates": 28216, - "inmy": 42657, - "inn": 27260, - "inn": 5569, - "inna": 35088, - "inner": 24512, - "inner": 6955, - "inning": 4415, - "innings": 11580, - "innis": 44059, - "inno": 7961, - "innocence": 26383, - "innocent": 11241, - "innov": 2890, - "innovate": 24549, - "innovation": 33063, - "innovation": 4272, - "innovations": 18817, - "innovative": 8494, - "innovator": 34735, - "innovators": 27834, - "ino": 4211, - "ino": 2691, - "inoa": 25649, - "inos": 21828, - "inous": 47801, - "inox": 22698, - "input": 16952, - "inputs": 48763, - "inqu": 10628, - "inqui": 18527, - "inquirer": 45172, - "inquiries": 29469, - "inquiry": 15865, - "inquis": 31171, - "inr": 36325, - "ins": 12786, - "ins": 1041, - "insan": 7875, - "insane": 10260, - "insanely": 27846, - "insanity": 26645, - "inscribed": 49168, - "inscription": 41127, - "insec": 15744, - "insect": 21297, - "insects": 18714, - "insecure": 35112, - "insecurity": 36964, - "inser": 13830, - "insert": 18807, - "insi": 3453, - "inside": 19141, - "inside": 2912, - "insider": 13300, - "insiders": 32171, - "insig": 40503, - "insight": 8795, - "insightful": 20354, - "insights": 8729, - "insignia": 48864, - "insist": 35504, - "insisted": 40423, - "insists": 27255, - "inski": 32630, - "insky": 24607, - "insol": 42366, - "insom": 21755, - "insomni": 42040, - "insomnia": 30598, - "inson": 21007, - "insp": 1597, - "inspec": 7915, - "inspect": 40815, - "inspecting": 40565, - "inspection": 15142, - "inspections": 39513, - "inspector": 20514, - "inspir": 2573, - "inspiration": 4195, - "inspirational": 41936, - "inspirational": 9855, - "inspirations": 35093, - "inspire": 27901, - "inspire": 8583, - "inspired": 39849, - "inspired": 3516, - "inspires": 17245, - "inspiring": 41847, - "inspiring": 5705, - "inspo": 26897, - "inst": 1264, - "inst": 1581, - "insta": 22411, - "insta": 11694, - "instability": 41377, - "instac": 46678, - "instaf": 33800, - "instag": 14612, - "instagood": 23718, - "instagram": 27910, - "instagram": 2659, - "instal": 38805, - "install": 6940, - "install": 11168, - "installation": 9358, - "installations": 27909, - "installed": 8807, - "installing": 18301, - "installment": 25315, - "installs": 45568, - "instalment": 47766, - "instance": 34572, - "instant": 38810, - "instant": 10635, - "instantly": 17703, - "instap": 23758, - "instapic": 34378, - "instaweather": 43078, - "instaweatherpro": 43150, - "inste": 3571, - "instead": 4191, - "instein": 13421, - "instem": 27030, - "instin": 23382, - "instinct": 30544, - "institu": 4257, - "institute": 5861, - "institutes": 43674, - "institution": 18823, - "institutional": 27442, - "institutions": 15207, - "instore": 41679, - "instru": 4544, - "instruc": 19648, - "instruction": 19407, - "instructional": 31022, - "instructions": 17040, - "instructor": 16087, - "instructors": 31998, - "instrument": 42196, - "instrument": 15806, - "instrumental": 23041, - "instruments": 14793, - "instyle": 41321, - "insu": 8805, - "insul": 9615, - "insulated": 42051, - "insulation": 28194, - "insulin": 29311, - "insult": 26673, - "insulting": 39646, - "insults": 40451, - "insur": 5024, - "insurance": 5870, - "insured": 31321, - "insurers": 43142, - "insurtech": 28716, - "int": 1828, - "int": 1207, - "inta": 38314, - "intact": 26870, - "intake": 19539, - "intan": 47695, - "inte": 1598, - "inte": 41900, - "intech": 26504, - "inted": 6147, - "integr": 5151, - "integral": 27018, - "integrate": 25735, - "integrated": 12797, - "integrating": 31555, - "integration": 12583, - "integrity": 14791, - "intel": 11778, - "intel": 11426, - "intellec": 13281, - "intellect": 47828, - "intellectu": 31966, - "intellectual": 18069, - "intelli": 5324, - "intellig": 5632, - "intelligence": 6846, - "intelligent": 14063, - "inten": 2967, - "intend": 36674, - "intended": 16812, - "intense": 10258, - "intensi": 22928, - "intensity": 19956, - "intensive": 21049, - "intent": 18881, - "intention": 26786, - "intentional": 29536, - "intentionally": 31215, - "intentions": 26710, - "inter": 1006, - "inter": 10093, - "interact": 21736, - "interacting": 35045, - "interaction": 17650, - "interactions": 22162, - "interactive": 9456, - "intercep": 23676, - "interception": 48762, - "interceptions": 45313, - "interchange": 34222, - "intercontinental": 31983, - "interdisciplinary": 38132, - "intere": 2008, - "interest": 5095, - "interested": 4620, - "interesting": 3628, - "interests": 16425, - "interface": 18753, - "interfaith": 38399, - "interference": 29099, - "interim": 19509, - "interior": 10700, - "interior": 7305, - "interiordesign": 12902, - "interiors": 14836, - "intermedi": 20246, - "intermediate": 24304, - "intermission": 44805, - "intermitt": 44946, - "intern": 9976, - "intern": 14068, - "internal": 11285, - "internally": 41134, - "internation": 42534, - "international": 8566, - "international": 2436, - "internationaldayof": 41518, - "internationally": 24059, - "internationalwomensday": 17682, - "interne": 32713, - "internet": 30180, - "internet": 4757, - "internetof": 44449, - "internetofthings": 45925, - "interns": 19902, - "internship": 16661, - "internships": 39410, - "interoper": 45754, - "interpre": 11162, - "interpret": 49154, - "interpret": 40459, - "interpretation": 20652, - "interpreted": 42157, - "interpreting": 46525, - "interro": 29548, - "interrup": 21609, - "interrupt": 48449, - "interrupted": 30288, - "intersec": 45246, - "intersection": 19210, - "interstate": 21963, - "interstellar": 41506, - "interval": 36032, - "intervals": 44884, - "interven": 18245, - "intervention": 16804, - "interventions": 28848, - "interview": 2885, - "interviewed": 11688, - "interviewing": 16399, - "interviews": 9910, - "intestin": 37938, - "intestinal": 38896, - "inthe": 7486, - "inti": 14459, - "intim": 38832, - "intimacy": 46430, - "intimate": 16382, - "intimid": 24041, - "intimidating": 44405, - "intimidation": 49258, - "inting": 15571, - "intl": 38186, - "intl": 14224, - "intment": 9020, - "intments": 21420, - "into": 35235, - "into": 1095, - "intoler": 28534, - "intolerance": 37808, - "intothe": 38511, - "intra": 20922, - "intrac": 46195, - "intram": 40956, - "intre": 29397, - "intrepid": 39127, - "intri": 15421, - "intric": 23763, - "intricate": 29616, - "intrigu": 18856, - "intrigue": 45140, - "intrigued": 40034, - "intriguing": 24334, - "intrin": 45181, - "intro": 2999, - "intro": 13224, - "introduc": 3621, - "introduce": 9813, - "introduced": 10446, - "introduces": 12933, - "introducing": 6256, - "introduction": 11812, - "introductory": 38121, - "intru": 22949, - "ints": 2514, - "intu": 17225, - "intuition": 40897, - "intuitive": 35224, - "inu": 21131, - "inuit": 41250, - "inus": 45857, - "inv": 2279, - "inv": 43786, - "inva": 10084, - "invade": 34609, - "invaded": 32596, - "invaders": 35188, - "invading": 40101, - "invali": 31592, - "invalid": 46998, - "invaluable": 33976, - "invasi": 38100, - "invasion": 13378, - "invasive": 19554, - "inve": 2024, - "inven": 26233, - "invent": 11665, - "invent": 23558, - "invented": 14100, - "invention": 23607, - "inventions": 44914, - "inventor": 22836, - "inventory": 19444, - "inver": 12061, - "inverness": 33080, - "inverte": 46397, - "inverted": 40709, - "invest": 4180, - "invest": 9716, - "invested": 22536, - "investig": 4626, - "investigate": 15703, - "investigated": 29180, - "investigates": 29621, - "investigating": 13713, - "investigation": 8194, - "investigations": 24020, - "investigative": 30233, - "investigator": 30528, - "investigators": 24121, - "investin": 40195, - "investing": 10554, - "investment": 5605, - "investments": 14675, - "investor": 15490, - "investors": 10486, - "invests": 38378, - "invic": 25253, - "invigor": 48722, - "invin": 30252, - "invincible": 38052, - "invisible": 16093, - "invit": 12454, - "invitation": 15032, - "invitational": 14511, - "invitations": 40120, - "invite": 8109, - "invited": 7731, - "invites": 16034, - "inviting": 14349, - "invo": 29417, - "invol": 4000, - "involve": 26325, - "involved": 5320, - "involvement": 19502, - "involves": 22652, - "involving": 14786, - "inwx": 35674, - "iny": 23257, - "inyour": 47954, - "io": 3167, - "io": 3752, - "ioc": 43018, - "iom": 33000, - "iom": 31135, - "ion": 14871, - "ion": 3668, - "ions": 26289, - "ior": 7354, - "ior": 2498, - "iority": 46016, - "iors": 6427, - "ios": 6614, - "iot": 32694, - "iot": 6627, - "iota": 37294, - "ious": 6994, - "iously": 38233, - "iow": 7439, - "iowa": 38847, - "iowa": 8290, - "ip": 1719, - "ip": 8600, - "ipa": 11199, - "ipad": 39067, - "ipad": 7491, - "ipads": 35281, - "ipc": 41981, - "iphone": 26030, - "iphone": 4314, - "iphones": 37561, - "ipl": 13440, - "ipment": 37824, - "ipo": 40218, - "ipo": 24090, - "ipod": 17889, - "ipp": 31706, - "ips": 26910, - "ipsw": 22221, - "ipswich": 24494, - "iq": 15554, - "iq": 19996, - "iqbal": 33553, - "ir": 582, - "ir": 742, - "ira": 4923, - "ira": 5371, - "irah": 35724, - "iran": 19273, - "iran": 5075, - "irandeal": 46533, - "irani": 37984, - "iranian": 14158, - "iraq": 8543, - "iraqi": 18617, - "irc": 41527, - "ird": 2770, - "ire": 3013, - "ire": 1454, - "ired": 32728, - "ired": 2995, - "ireland": 32806, - "ireland": 4157, - "irene": 21600, - "ires": 12435, - "irez": 21581, - "irgc": 47942, - "iri": 2155, - "iri": 13880, - "irical": 33366, - "irie": 42979, - "irina": 46664, - "iring": 10169, - "iris": 16437, - "irish": 9386, - "irish": 4889, - "irl": 34494, - "irl": 8570, - "irling": 26493, - "irls": 24344, - "irma": 22406, - "irn": 42603, - "iro": 23209, - "iro": 7280, - "iron": 7699, - "iron": 5391, - "ironic": 24518, - "ironically": 36779, - "ironing": 46655, - "ironman": 20330, - "irons": 30032, - "irony": 20681, - "irport": 27769, - "irr": 24641, - "irrational": 47413, - "irregular": 38692, - "irrelevant": 34677, - "irresi": 31200, - "irresistible": 35252, - "irresponsible": 44714, - "irri": 21484, - "irrigation": 23761, - "irrit": 24218, - "irs": 6086, - "irst": 32701, - "iru": 48206, - "irvin": 47053, - "irvine": 24201, - "irving": 19738, - "irwin": 23750, - "iry": 7239, - "is": 595, - "is": 533, - "isa": 11034, - "isa": 6536, - "isaac": 37544, - "isaac": 13659, - "isab": 13357, - "isabel": 27466, - "isabella": 26192, - "isabelle": 31072, - "isable": 46631, - "isai": 15365, - "isaiah": 17952, - "isak": 40619, - "isance": 46893, - "isation": 7194, - "isback": 43811, - "isc": 39316, - "isch": 47888, - "isco": 5736, - "iscoming": 26458, - "isd": 46816, - "isd": 12002, - "ise": 7669, - "ise": 1479, - "ised": 2861, - "iselle": 48491, - "iser": 23080, - "iser": 5626, - "isers": 34879, - "ises": 5153, - "isf": 44036, - "isgreat": 34595, - "ish": 6844, - "ish": 1061, - "isha": 28050, - "ishable": 37949, - "ished": 35341, - "ishere": 46053, - "ishi": 26224, - "ishq": 27996, - "ishqba": 32503, - "ishqbaaaz": 36591, - "isi": 7233, - "isi": 17880, - "isil": 34636, - "isin": 37676, - "ising": 3426, - "isis": 7531, - "isk": 30171, - "isl": 31368, - "isla": 22807, - "islam": 6003, - "islam": 8770, - "islamabad": 19959, - "islamic": 31627, - "islamic": 9552, - "islamist": 38798, - "islamophobia": 43459, - "island": 13408, - "island": 2619, - "islander": 45651, - "islanders": 27804, - "islands": 7145, - "islay": 49279, - "isle": 19082, - "isle": 11849, - "isleof": 24718, - "isles": 21816, - "islife": 26433, - "islington": 34945, - "ism": 47730, - "ism": 1935, - "isma": 43937, - "ismail": 36140, - "isme": 43570, - "ismo": 41926, - "isms": 18700, - "isn": 2923, - "isner": 48246, - "isnow": 43694, - "isnt": 19416, - "iso": 2462, - "iso": 12263, - "isol": 11414, - "isolated": 19044, - "isolation": 26400, - "ison": 12949, - "ison": 4553, - "isons": 33318, - "isoo": 35857, - "isp": 31397, - "isp": 39041, - "isra": 3591, - "israel": 20837, - "israel": 4779, - "israeli": 8994, - "israelis": 45713, - "isreal": 47147, - "isro": 44841, - "iss": 11738, - "iss": 4950, - "issa": 38579, - "issa": 7560, - "issan": 49358, - "issance": 40828, - "issant": 38828, - "isse": 18986, - "ission": 37946, - "issu": 2049, - "issue": 3202, - "issued": 9246, - "issues": 4082, - "issuing": 37226, - "ist": 9751, - "ist": 2304, - "istanbul": 12258, - "istandwith": 33820, - "iste": 32563, - "ister": 14555, - "isthe": 46748, - "istic": 29556, - "ists": 8426, - "isu": 17030, - "isu": 23328, - "it": 529, - "it": 585, - "ita": 36920, - "ita": 2864, - "itable": 8915, - "ital": 2306, - "ital": 1660, - "itali": 11644, - "italia": 11025, - "italian": 20264, - "italian": 5175, - "italians": 44744, - "italk": 32894, - "italy": 4052, - "itan": 18383, - "itans": 40711, - "itar": 47161, - "itarian": 11599, - "itary": 17604, - "itas": 31634, - "itas": 13436, - "itate": 42457, - "itated": 36744, - "itation": 5070, - "itative": 22892, - "itc": 36449, - "itch": 2387, - "itch": 8147, - "itchen": 32664, - "itchy": 41980, - "ite": 2732, - "ite": 802, - "iteam": 37828, - "itec": 3099, - "itec": 43936, - "itech": 44215, - "itech": 23040, - "ited": 8603, - "ited": 1108, - "itel": 44638, - "itely": 4605, - "item": 8532, - "items": 6207, - "iter": 7938, - "iter": 19773, - "iteracy": 39634, - "iterate": 43106, - "iteration": 38790, - "ites": 2454, - "itez": 42131, - "itf": 35436, - "itfc": 36519, - "ith": 6133, - "ith": 1757, - "ithaca": 46257, - "iti": 760, - "iti": 6165, - "itia": 22634, - "itian": 23365, - "itic": 11950, - "itical": 48767, - "itics": 33967, - "ities": 41423, - "ities": 1480, - "itim": 15676, - "itiner": 32803, - "itinerary": 41564, - "iting": 1257, - "ition": 25263, - "ition": 1104, - "itions": 5540, - "itious": 13329, - "itis": 33539, - "itis": 8388, - "itive": 3067, - "itly": 42240, - "ito": 22167, - "ito": 4661, - "iton": 21119, - "itor": 47267, - "itor": 4584, - "itors": 22005, - "itos": 24560, - "its": 7140, - "its": 902, - "itsa": 45032, - "itself": 7290, - "itsme": 41125, - "itss": 47040, - "itt": 1031, - "itt": 11228, - "itta": 21233, - "itte": 31962, - "itted": 24429, - "itten": 30014, - "itten": 4343, - "itter": 11456, - "itters": 13082, - "itti": 28629, - "ittin": 25646, - "itting": 3147, - "ittle": 24208, - "ittle": 21366, - "ittles": 38989, - "itton": 25707, - "itty": 35096, - "itu": 1668, - "itu": 32128, - "itude": 43382, - "itude": 5012, - "itudes": 20459, - "itunes": 7007, - "itup": 35838, - "iture": 25547, - "itus": 24364, - "itutes": 32883, - "itv": 20159, - "itv": 12805, - "ity": 2480, - "ity": 696, - "itya": 32055, - "itz": 14544, - "itz": 7807, - "iu": 14292, - "iu": 15575, - "ium": 10762, - "ius": 6740, - "iv": 6775, - "iv": 9315, - "iva": 42463, - "ivan": 15544, - "ivan": 15689, - "ivanka": 37914, - "ive": 26885, - "ive": 8653, - "ived": 15654, - "iver": 36849, - "iver": 44254, - "ives": 27333, - "ivf": 39159, - "iving": 45136, - "ivory": 16776, - "ivote": 45835, - "ivy": 36939, - "ivy": 16045, - "iw": 13058, - "iw": 46604, - "iwant": 42747, - "iwd": 16815, - "iwm": 44237, - "ix": 13272, - "ix": 8756, - "iy": 13704, - "iya": 18595, - "iyaki": 48395, - "iz": 2845, - "iz": 8407, - "iza": 37704, - "ization": 10847, - "ize": 10885, - "ized": 7690, - "izen": 34776, - "izer": 23895, - "izes": 45434, - "izing": 17354, - "izo": 46910, - "izz": 31779, - "izz": 46128, - "izzy": 28861, - "j": 73, - "j": 329, - "ja": 1586, - "ja": 2641, - "jaan": 25052, - "jab": 8059, - "jab": 9439, - "jac": 2293, - "jac": 30198, - "jace": 43286, - "jack": 2679, - "jack": 3267, - "jacked": 27923, - "jacket": 6164, - "jackets": 14745, - "jacki": 47418, - "jackie": 28023, - "jackie": 11716, - "jacking": 40929, - "jackman": 35723, - "jackpot": 23926, - "jacks": 19649, - "jackson": 12321, - "jackson": 4363, - "jacksonville": 19263, - "jaco": 6840, - "jacob": 14385, - "jacob": 9222, - "jacobs": 17482, - "jacobson": 46826, - "jacqu": 14495, - "jacqueline": 22843, - "jacques": 17799, - "jad": 12976, - "jad": 38691, - "jada": 37416, - "jade": 25123, - "jade": 14513, - "jaden": 37174, - "jadine": 37445, - "jae": 16869, - "jae": 15765, - "jaejoong": 43610, - "jaf": 19362, - "jag": 7984, - "jag": 36236, - "jagan": 48530, - "jagger": 30835, - "jags": 31086, - "jagu": 10096, - "jaguar": 44777, - "jaguar": 14757, - "jaguars": 21854, - "jah": 20067, - "jah": 11084, - "jahan": 44404, - "jahan": 47827, - "jai": 10542, - "jai": 13819, - "jail": 18574, - "jail": 9332, - "jailbreak": 45990, - "jailed": 19456, - "jails": 47833, - "jaime": 24716, - "jain": 21999, - "jaipur": 23593, - "jais": 48607, - "jait": 28910, - "jaitley": 32776, - "jak": 9225, - "jak": 30589, - "jakarta": 15471, - "jake": 13140, - "jake": 7419, - "jakob": 47358, - "jal": 8380, - "jal": 26773, - "jalan": 27270, - "jalap": 49081, - "jalape": 34263, - "jalapeño": 43017, - "jalen": 33548, - "jam": 1434, - "jam": 5201, - "jama": 8977, - "jama": 35366, - "jamaica": 13019, - "jamaican": 25144, - "jamal": 26108, - "jambo": 35599, - "jamboree": 38506, - "jame": 12341, - "james": 6963, - "james": 2392, - "jamesbond": 44704, - "jamesc": 47004, - "jameson": 31731, - "jami": 15092, - "jamie": 16454, - "jamie": 8078, - "jamiedor": 34310, - "jamiedornan": 34896, - "jammed": 35590, - "jammin": 35223, - "jamming": 25862, - "jammu": 25926, - "jams": 20243, - "jan": 1891, - "jan": 3334, - "jana": 18182, - "jane": 12389, - "jane": 6736, - "janeiro": 31740, - "janet": 29665, - "janet": 15872, - "jang": 41526, - "jang": 22074, - "jani": 22606, - "janice": 36048, - "janine": 46896, - "janis": 44233, - "jann": 35377, - "jans": 22578, - "jansen": 45354, - "janu": 3623, - "january": 3697, - "jap": 2299, - "jap": 49062, - "japan": 4502, - "japan": 3400, - "japanese": 27211, - "japanese": 4925, - "japs": 42121, - "jar": 5120, - "jar": 10837, - "jard": 25778, - "jardin": 37371, - "jare": 17654, - "jared": 35597, - "jared": 12571, - "jaredle": 36739, - "jaredleto": 37106, - "jaro": 35505, - "jarpad": 44497, - "jarre": 23385, - "jarrett": 30531, - "jars": 27583, - "jarvis": 29286, - "jas": 4492, - "jas": 17559, - "jasmin": 42989, - "jasmin": 47700, - "jasmine": 17056, - "jason": 10009, - "jason": 5395, - "jasper": 19827, - "jat": 26106, - "jau": 26932, - "jauregui": 48175, - "jav": 6234, - "java": 12918, - "javascri": 16289, - "javascript": 16423, - "jave": 46218, - "javed": 42268, - "javelin": 41701, - "javi": 47627, - "javier": 23307, - "jaw": 14804, - "jaw": 17307, - "jawa": 44790, - "jaws": 25491, - "jax": 22348, - "jax": 12390, - "jay": 3427, - "jay": 4155, - "jaya": 21960, - "jayanti": 37732, - "jaye": 45703, - "jayne": 35228, - "jays": 12393, - "jaz": 3465, - "jaz": 32874, - "jazeera": 38260, - "jazz": 11488, - "jazz": 4528, - "jazzfest": 36683, - "jazzy": 28191, - "jb": 21915, - "jb": 13637, - "jc": 14991, - "jc": 11517, - "jd": 18289, - "jd": 14125, - "jdm": 42013, - "je": 1013, - "je": 8776, - "jeal": 9964, - "jealous": 11093, - "jealousy": 37654, - "jean": 13943, - "jean": 6473, - "jeanette": 48167, - "jeanne": 29201, - "jeans": 10157, - "jeb": 35101, - "jec": 1347, - "ject": 6070, - "jed": 12166, - "jed": 38748, - "jeddah": 40982, - "jedi": 16681, - "jee": 29250, - "jee": 14870, - "jeep": 16593, - "jeep": 11286, - "jeeplife": 43100, - "jeet": 45542, - "jeet": 30944, - "jef": 10276, - "jeff": 6245, - "jeff": 5550, - "jefferson": 44711, - "jefferson": 13976, - "jeffery": 41470, - "jeffree": 45994, - "jeffrey": 32886, - "jeffrey": 16027, - "jeho": 42437, - "jeky": 43893, - "jekyll": 49405, - "jel": 9794, - "jelena": 48218, - "jelly": 19110, - "jelly": 13762, - "jellyfish": 30988, - "jem": 46326, - "jem": 37530, - "jen": 2554, - "jen": 12997, - "jenkins": 16162, - "jenn": 33921, - "jenn": 29869, - "jenna": 17125, - "jenner": 14260, - "jenni": 6774, - "jennie": 28875, - "jennifer": 19786, - "jennifer": 8613, - "jennings": 21564, - "jenny": 20165, - "jenny": 13414, - "jens": 40806, - "jensen": 35558, - "jensen": 19004, - "jensenackles": 41011, - "jeon": 45200, - "jeon": 43337, - "jeong": 47146, - "jeong": 39264, - "jeopar": 22988, - "jeopardy": 29613, - "jer": 2310, - "jer": 35307, - "jere": 5614, - "jeremi": 22362, - "jeremiah": 27301, - "jeremy": 14656, - "jeremy": 8127, - "jeremycorbyn": 37484, - "jeric": 25084, - "jericho": 28892, - "jerk": 23917, - "jerky": 40079, - "jermaine": 40722, - "jerome": 19876, - "jerry": 18163, - "jerry": 9164, - "jersey": 21921, - "jersey": 4471, - "jerseys": 15518, - "jerus": 12257, - "jerusalem": 12557, - "jes": 7686, - "jes": 35826, - "jess": 5313, - "jess": 13758, - "jesse": 23112, - "jesse": 11770, - "jessi": 24373, - "jessic": 14881, - "jessica": 45421, - "jessica": 8178, - "jessie": 19424, - "jester": 44225, - "jesu": 19777, - "jesuit": 33234, - "jesus": 4070, - "jet": 11515, - "jet": 6565, - "jetblue": 45021, - "jeter": 38450, - "jets": 38584, - "jets": 10025, - "jett": 44541, - "jetty": 46382, - "jew": 27450, - "jewel": 4880, - "jewel": 17591, - "jewell": 9777, - "jewellers": 46265, - "jewellery": 11192, - "jewelry": 28018, - "jewelry": 6039, - "jewels": 20205, - "jewish": 29594, - "jewish": 9104, - "jews": 14200, - "jf": 31130, - "jf": 33718, - "jfc": 43652, - "jfk": 18486, - "jg": 41986, - "jg": 35138, - "jh": 24858, - "jh": 21485, - "jha": 47012, - "jha": 38092, - "jhal": 45695, - "jhar": 31546, - "jharkhand": 39001, - "jhb": 34631, - "ji": 3252, - "ji": 2697, - "jia": 32907, - "jian": 33427, - "jiang": 43309, - "jiang": 25762, - "jic": 48350, - "jic": 40215, - "jid": 24403, - "jie": 40005, - "jig": 15136, - "jig": 47430, - "jigsaw": 32987, - "jiha": 23194, - "jihad": 29637, - "jihoon": 44765, - "jil": 36225, - "jill": 24136, - "jill": 15254, - "jillian": 37820, - "jim": 3190, - "jim": 4550, - "jima": 20679, - "jimcantore": 43950, - "jimenez": 35947, - "jimi": 30565, - "jimin": 16286, - "jimmie": 45679, - "jimmy": 12215, - "jimmy": 6817, - "jimmyfallon": 45265, - "jin": 7927, - "jin": 8485, - "jind": 40609, - "jing": 34933, - "jing": 28607, - "jingle": 28699, - "jinnah": 43141, - "jinping": 39308, - "jinx": 42977, - "jinyoung": 38051, - "jio": 40501, - "jis": 25988, - "jis": 23515, - "jisoo": 43070, - "jit": 11947, - "jit": 20308, - "jitsu": 24530, - "jiu": 43351, - "jiu": 44123, - "jj": 12502, - "jj": 12790, - "jk": 20189, - "jk": 9702, - "jkt": 21494, - "jl": 25027, - "jl": 22911, - "jlo": 31017, - "jm": 24044, - "jm": 18657, - "jn": 24576, - "jn": 21717, - "jnr": 37145, - "jnu": 47142, - "jo": 683, - "jo": 3804, - "joachim": 48979, - "joan": 28064, - "joan": 12710, - "joann": 35484, - "joanna": 25357, - "joanne": 43736, - "joanne": 25092, - "joao": 45666, - "joaqu": 25140, - "joaquin": 30745, - "job": 13114, - "job": 2075, - "jobs": 3735, - "jobsearch": 45459, - "joburg": 39343, - "jocel": 36879, - "jocelyn": 47259, - "jock": 34485, - "jockey": 20126, - "jodh": 48689, - "jodi": 36812, - "jodi": 26888, - "jodie": 33100, - "jody": 32959, - "joe": 9309, - "joe": 3305, - "joel": 19819, - "joel": 11429, - "joes": 34756, - "joey": 16281, - "joey": 10455, - "jog": 37967, - "jog": 31691, - "jogging": 37922, - "joh": 1201, - "johan": 17416, - "johan": 27789, - "johann": 31180, - "johanna": 41494, - "johannes": 37779, - "johannesburg": 28377, - "johansson": 41512, - "johar": 34871, - "john": 2004, - "john": 1742, - "johncena": 46820, - "johnnie": 47947, - "johnny": 14464, - "johnny": 6904, - "johns": 14515, - "johnson": 26036, - "johnson": 4010, - "johnston": 19791, - "johnstone": 40766, - "johor": 34750, - "join": 14737, - "join": 1384, - "joined": 4954, - "joining": 5118, - "joins": 5681, - "joint": 6640, - "jointhe": 30422, - "jointly": 37471, - "joints": 27204, - "jojo": 41484, - "jojo": 22075, - "joke": 7198, - "joker": 18200, - "jokers": 44101, - "jokes": 11336, - "joking": 26112, - "joko": 44975, - "jol": 9174, - "jol": 36470, - "jolie": 31633, - "jolla": 46109, - "jolly": 21516, - "jom": 32152, - "jon": 3026, - "jon": 6139, - "jona": 6629, - "jonah": 47934, - "jonah": 27556, - "jonas": 42373, - "jonas": 13650, - "jonathan": 19026, - "jonathan": 7762, - "jone": 33934, - "jones": 19091, - "jones": 3538, - "jong": 20214, - "jong": 14726, - "jonghyun": 29023, - "jongin": 36957, - "joni": 43177, - "jonny": 28454, - "jonny": 21895, - "joo": 25807, - "joo": 27680, - "joom": 47543, - "joon": 18547, - "joong": 26544, - "jop": 30486, - "joplin": 42688, - "jor": 2482, - "jor": 31595, - "jordan": 14644, - "jordan": 4388, - "jordani": 46898, - "jordi": 44795, - "jorge": 48761, - "jorge": 18225, - "jos": 20560, - "jos": 19661, - "jose": 4647, - "jose": 7075, - "josef": 36584, - "josel": 47800, - "joseph": 14163, - "joseph": 6478, - "josephine": 34866, - "josh": 9998, - "josh": 5679, - "joshi": 24786, - "joshu": 9112, - "joshua": 11852, - "josi": 33583, - "josie": 33167, - "joss": 42834, - "josé": 27922, - "jou": 19921, - "jou": 32029, - "jour": 2078, - "jour": 17142, - "journ": 4563, - "journal": 6626, - "journalism": 10123, - "journalist": 9914, - "journalists": 12249, - "journals": 24391, - "journe": 48833, - "journey": 32156, - "journey": 3749, - "journeys": 23329, - "journo": 37034, - "journos": 46437, - "jovi": 33866, - "joy": 6308, - "joy": 4273, - "joyce": 43753, - "joyce": 15275, - "joye": 34052, - "joyeux": 41876, - "joyful": 24139, - "joyous": 32245, - "joyride": 46949, - "joys": 22996, - "jp": 18249, - "jp": 10557, - "jpg": 36950, - "jpn": 36212, - "jr": 13973, - "jr": 3605, - "js": 46243, - "js": 8006, - "jst": 26523, - "jt": 39480, - "jt": 18119, - "ju": 669, - "ju": 9970, - "jual": 38720, - "juan": 17148, - "juan": 9274, - "juana": 9081, - "jubi": 15485, - "jubil": 47743, - "jubilee": 16907, - "juco": 31570, - "jud": 8363, - "juda": 32478, - "judah": 41066, - "judaism": 42217, - "judas": 39532, - "judd": 29770, - "judg": 20012, - "judge": 16824, - "judge": 5656, - "judged": 33453, - "judgement": 25246, - "judges": 12575, - "judging": 16570, - "judgment": 24191, - "judi": 42546, - "judice": 28032, - "judicial": 19579, - "judiciary": 24545, - "judith": 24047, - "judo": 27011, - "judy": 34663, - "judy": 16510, - "jug": 27619, - "jugg": 38628, - "juic": 38761, - "juice": 37954, - "juice": 6916, - "juices": 36757, - "juicy": 17623, - "juju": 43020, - "juke": 32519, - "jukebox": 36411, - "jul": 34662, - "jul": 15975, - "jule": 40819, - "jules": 21996, - "juli": 3614, - "juli": 49160, - "julia": 10207, - "julian": 25459, - "julian": 12643, - "juliana": 46059, - "julie": 22534, - "julie": 10505, - "julien": 32595, - "juliet": 20641, - "juliette": 44804, - "julio": 24888, - "julius": 20870, - "july": 2272, - "jum": 20791, - "jumbo": 24678, - "jume": 45989, - "jump": 5519, - "jump": 6423, - "jumped": 16901, - "jumper": 16558, - "jumpers": 36485, - "jumping": 11476, - "jumpman": 48803, - "jumps": 18911, - "jumpsuit": 31044, - "jun": 1637, - "jun": 7719, - "junction": 11320, - "june": 23188, - "june": 2345, - "jung": 13086, - "jung": 13031, - "jungkook": 20040, - "jungle": 42421, - "jungle": 10865, - "juni": 4029, - "junior": 21167, - "junior": 5027, - "juniors": 16811, - "juniper": 33829, - "junk": 16000, - "junkie": 27613, - "junkies": 41207, - "juno": 28845, - "junto": 34282, - "jupit": 15270, - "jupiter": 16212, - "jur": 15896, - "jura": 14715, - "jurassic": 28844, - "jurassic": 21255, - "jurgen": 39263, - "juris": 37010, - "jurisdic": 37714, - "jury": 12931, - "jus": 14999, - "just": 1770, - "just": 761, - "justi": 14700, - "justic": 30399, - "justice": 16904, - "justice": 3604, - "justicefor": 25812, - "justiceleague": 41929, - "justices": 44356, - "justified": 34546, - "justify": 28192, - "justin": 7537, - "justin": 4394, - "justinbieber": 12501, - "justine": 34418, - "justintrudeau": 32184, - "justsaying": 42922, - "juve": 47717, - "juve": 23092, - "juven": 12944, - "juvenile": 19333, - "juvent": 13908, - "juventus": 47378, - "juventus": 16208, - "jux": 33552, - "juxta": 34964, - "jv": 37932, - "jv": 11805, - "jw": 30221, - "jw": 24215, - "jy": 20979, - "jyo": 27378, - "jyoti": 48696, - "jä": 45381, - "k": 74, - "k": 330, - "ka": 1595, - "ka": 1525, - "kaa": 34496, - "kab": 6554, - "kab": 45134, - "kabaddi": 41749, - "kabir": 38619, - "kabo": 47974, - "kabul": 26160, - "kac": 21693, - "kach": 14341, - "kad": 10901, - "kade": 41130, - "kaduna": 38053, - "kae": 22542, - "kaeper": 30070, - "kaepernick": 30713, - "kaf": 19870, - "kag": 13666, - "kag": 31003, - "kah": 16068, - "kah": 15463, - "kahn": 35397, - "kai": 12752, - "kai": 9601, - "kaido": 40255, - "kail": 23623, - "kaine": 39028, - "kair": 33027, - "kaiser": 43685, - "kaiser": 29960, - "kait": 19326, - "kaitlyn": 34948, - "kaj": 44788, - "kaj": 40381, - "kak": 10401, - "kak": 40128, - "kaka": 47689, - "kaku": 30900, - "kal": 4187, - "kal": 18712, - "kala": 45453, - "kala": 33105, - "kalam": 40142, - "kalamaz": 42328, - "kalamazoo": 46264, - "kalb": 34483, - "kale": 17162, - "kale": 16625, - "kaleido": 41144, - "kali": 17844, - "kali": 26964, - "kalin": 42776, - "kalyan": 23825, - "kam": 4104, - "kam": 26011, - "kamal": 31371, - "kamal": 28619, - "kamala": 45003, - "kame": 45235, - "kamen": 40738, - "kami": 28707, - "kamloops": 36602, - "kamp": 35179, - "kamp": 29522, - "kampala": 37134, - "kan": 2532, - "kan": 8101, - "kana": 35178, - "kand": 17478, - "kane": 32218, - "kane": 9765, - "kang": 12226, - "kang": 20789, - "kangar": 20622, - "kangaroo": 25513, - "kani": 40907, - "kani": 41948, - "kann": 18533, - "kannada": 30053, - "kano": 28201, - "kans": 34012, - "kansas": 25507, - "kansas": 6539, - "kansascity": 46134, - "kant": 39923, - "kant": 47132, - "kanth": 24427, - "kanu": 44565, - "kany": 13590, - "kanye": 29680, - "kanye": 14965, - "kanyewest": 31943, - "kap": 6804, - "kap": 45279, - "kapam": 48561, - "kapil": 32337, - "kapil": 42709, - "kapilshar": 48978, - "kaplan": 37401, - "kapoor": 9117, - "kapp": 36717, - "kappa": 20239, - "kapur": 42371, - "kar": 1813, - "kar": 5933, - "kara": 12552, - "karab": 40916, - "karachi": 13671, - "karak": 40372, - "karan": 20077, - "karan": 20931, - "karanjohar": 47621, - "karao": 16262, - "karaoke": 16640, - "karate": 21211, - "kardashi": 13619, - "kardashian": 14578, - "kare": 14310, - "kare": 38354, - "kareem": 38885, - "kareena": 41569, - "karen": 17719, - "karen": 10349, - "kari": 15339, - "kari": 15161, - "karim": 33477, - "karin": 43917, - "karina": 40250, - "karl": 20967, - "karl": 13134, - "karla": 42309, - "karma": 17658, - "karnat": 13994, - "karnataka": 15515, - "karo": 45305, - "kart": 47841, - "kart": 21310, - "karthik": 41397, - "karti": 23053, - "kartikeyan": 32584, - "karting": 41655, - "kas": 6119, - "kas": 14372, - "kasa": 46111, - "kash": 6954, - "kash": 21371, - "kashi": 47945, - "kashmir": 20251, - "kashmir": 10783, - "kashmiri": 35331, - "kasi": 45870, - "kasi": 32819, - "kasich": 39666, - "kat": 2844, - "kat": 9341, - "kata": 14558, - "kate": 11620, - "kate": 6699, - "katelyn": 45963, - "kath": 7386, - "kath": 19745, - "katharine": 41473, - "katherine": 17687, - "kathle": 18721, - "kathleen": 21709, - "kathmandu": 34456, - "kathniel": 36159, - "kathr": 14905, - "kathryn": 33142, - "kathryn": 19999, - "kathy": 34775, - "kathy": 18795, - "kati": 6515, - "kati": 29928, - "katic": 48058, - "katie": 24117, - "katie": 9076, - "katniss": 47916, - "kato": 27573, - "katrin": 31282, - "katrina": 21397, - "katrinakaif": 45845, - "kats": 44213, - "katsu": 49296, - "katsu": 43712, - "katy": 17609, - "katy": 14435, - "katyperry": 28309, - "katz": 30790, - "kau": 9299, - "kau": 36895, - "kauai": 44050, - "kaufman": 37188, - "kaur": 30518, - "kav": 10228, - "kavan": 18576, - "kavanaugh": 20252, - "kaw": 10842, - "kaw": 42719, - "kawa": 33244, - "kawaii": 26891, - "kawasaki": 28227, - "kawhi": 41220, - "kay": 4673, - "kay": 9862, - "kaya": 22752, - "kayak": 27043, - "kayaking": 28977, - "kaye": 33003, - "kayla": 17139, - "kaylee": 47215, - "kayo": 37021, - "kaz": 8812, - "kaz": 39622, - "kazakh": 25451, - "kazakhstan": 26720, - "kazan": 47641, - "kb": 27381, - "kb": 19960, - "kbs": 27418, - "kc": 10869, - "kc": 8638, - "kca": 14347, - "kcon": 39970, - "kcr": 46181, - "kd": 21826, - "kd": 15597, - "kday": 31074, - "kdrama": 48628, - "ke": 643, - "ke": 618, - "kea": 47926, - "kean": 43288, - "keane": 28635, - "keanu": 40608, - "kear": 21562, - "kearney": 36435, - "keating": 40045, - "keaton": 29975, - "kebab": 36497, - "ked": 11730, - "ked": 1243, - "kee": 9724, - "kee": 6760, - "keef": 42323, - "keefe": 46965, - "keegan": 31122, - "keel": 48376, - "keen": 17714, - "keen": 13218, - "keenan": 36276, - "keep": 2924, - "keep": 1726, - "keeper": 7650, - "keepers": 16130, - "keepin": 41712, - "keeping": 38371, - "keeping": 4873, - "keepit": 28044, - "keeps": 6333, - "keer": 27412, - "keerth": 47500, - "keerthyofficial": 48185, - "kees": 10791, - "keg": 32785, - "keh": 41272, - "keh": 36983, - "kei": 18735, - "kei": 24835, - "keith": 18762, - "keith": 8252, - "kej": 15674, - "kejri": 16617, - "kejriwal": 17334, - "keke": 39195, - "kel": 2825, - "kel": 7553, - "kele": 41765, - "kell": 16082, - "kell": 40103, - "keller": 21407, - "kelley": 23776, - "kelli": 45852, - "kelli": 46190, - "kellie": 49224, - "kellogg": 44218, - "kelly": 13417, - "kelly": 5220, - "kelown": 31708, - "kelowna": 32963, - "kelsey": 42295, - "kelsey": 23018, - "kelvin": 32859, - "kem": 31013, - "kem": 17349, - "kemp": 18302, - "kemp": 25325, - "ken": 1838, - "ken": 1702, - "kend": 7497, - "kendal": 44836, - "kendall": 34607, - "kendall": 16238, - "kendra": 36074, - "kendrick": 41787, - "kendrick": 21953, - "kendricklamar": 47020, - "kenne": 6209, - "kennedy": 38631, - "kennedy": 9004, - "kennel": 39595, - "kenneth": 46900, - "kenneth": 17839, - "kenney": 41373, - "kenny": 20185, - "kenny": 9595, - "kens": 29765, - "kensing": 21505, - "kensington": 24988, - "kent": 13875, - "kent": 8214, - "kentu": 9045, - "kentucky": 32230, - "kentucky": 10014, - "keny": 17374, - "kenya": 6181, - "kenyan": 22624, - "kenyans": 36263, - "kenyatta": 31012, - "kenzie": 38087, - "keo": 43062, - "kept": 7737, - "ker": 2352, - "ker": 1485, - "keral": 35122, - "kerala": 11881, - "kered": 26690, - "kerel": 32232, - "keri": 43447, - "kermit": 40908, - "kern": 40150, - "kernel": 40684, - "kerr": 20491, - "kerri": 41849, - "kerry": 24795, - "kerry": 13097, - "kers": 30347, - "kers": 2880, - "kershaw": 40785, - "kerson": 42810, - "kerswednesday": 48152, - "kert": 47279, - "kes": 38398, - "kes": 1115, - "kesh": 19751, - "kesha": 36526, - "kest": 15080, - "ket": 2715, - "ket": 1236, - "ketball": 38240, - "ketch": 22590, - "ketch": 35371, - "ketchup": 26724, - "kete": 25404, - "keted": 41396, - "keting": 15951, - "keto": 27485, - "keto": 28754, - "kets": 1632, - "kett": 23124, - "kett": 10312, - "kettering": 43779, - "kettle": 41992, - "kettle": 24303, - "kev": 22758, - "kev": 29419, - "kevin": 9419, - "kevin": 4685, - "kew": 38014, - "kew": 31409, - "kex": 30251, - "key": 2891, - "key": 1458, - "keyan": 27617, - "keyboard": 13017, - "keyboards": 49237, - "keychain": 31050, - "keye": 40516, - "keye": 20635, - "keyes": 18336, - "keynes": 32462, - "keynote": 7556, - "keys": 48912, - "keys": 6355, - "keystone": 30688, - "keyword": 42284, - "keywords": 48122, - "kf": 33308, - "kf": 42119, - "kfc": 22032, - "kg": 36772, - "kg": 7817, - "kgs": 46629, - "kh": 2166, - "kh": 7452, - "kha": 7333, - "kha": 18929, - "khair": 43742, - "khaki": 41646, - "khal": 13070, - "khaled": 29343, - "khali": 11324, - "khalid": 27166, - "khalifa": 21389, - "khalil": 36229, - "kham": 24892, - "khan": 13318, - "khan": 3873, - "khand": 43384, - "khand": 31110, - "khanna": 29931, - "khar": 18340, - "khar": 28578, - "khart": 37458, - "khat": 43290, - "khe": 26360, - "kher": 43843, - "khi": 39062, - "khi": 42925, - "khil": 34101, - "khloe": 45312, - "kho": 14022, - "kho": 28774, - "khou": 30656, - "khs": 21239, - "khtar": 45593, - "khu": 14041, - "khur": 32083, - "khy": 40917, - "khz": 45604, - "ki": 848, - "ki": 2608, - "kia": 8712, - "kian": 43961, - "kian": 25708, - "kians": 44010, - "kib": 43108, - "kiba": 37207, - "kic": 24003, - "kic": 27633, - "kicchasu": 44665, - "kicchasudeep": 45560, - "kick": 4102, - "kick": 4289, - "kickass": 39299, - "kickboxing": 36041, - "kicked": 12479, - "kicker": 26338, - "kickin": 34597, - "kicking": 7802, - "kickoff": 10245, - "kicks": 6989, - "kickstart": 40780, - "kickstarter": 13228, - "kid": 3948, - "kid": 3551, - "kidd": 24082, - "kidding": 14535, - "kiddo": 36360, - "kiddos": 29205, - "kidlit": 39064, - "kidlit": 33515, - "kidlitart": 41600, - "kidman": 44931, - "kidnap": 45100, - "kidnapp": 16183, - "kidnapped": 24737, - "kidnapping": 32361, - "kidney": 37835, - "kidney": 14610, - "kids": 15561, - "kids": 1911, - "kidz": 41938, - "kie": 8544, - "kie": 3094, - "kiefer": 48026, - "kiel": 40940, - "kiel": 25509, - "kien": 28782, - "kier": 20403, - "kier": 35575, - "kieran": 29231, - "kies": 36601, - "kies": 4993, - "kiest": 29755, - "kiev": 24585, - "kiewicz": 47574, - "kigali": 40278, - "kii": 39340, - "kik": 36176, - "kiki": 23962, - "kiko": 40861, - "kil": 4912, - "kil": 39337, - "kildare": 45541, - "kili": 24386, - "kilig": 49172, - "kilimanjaro": 43470, - "kilkenny": 33805, - "kill": 6163, - "kill": 4367, - "killa": 41355, - "killarney": 48813, - "killed": 3733, - "killer": 28230, - "killer": 6613, - "killers": 17614, - "killin": 25903, - "killing": 37977, - "killing": 5923, - "killings": 24918, - "kills": 9795, - "kiln": 44150, - "kilo": 39281, - "kilom": 26285, - "kilometers": 39192, - "kilometres": 43278, - "kilt": 49319, - "kim": 4639, - "kim": 4606, - "kimber": 16796, - "kimberley": 39859, - "kimberly": 27465, - "kimchi": 41027, - "kimi": 31536, - "kimkardashian": 35400, - "kimmel": 27820, - "kimono": 40024, - "kin": 1442, - "kin": 2667, - "kina": 28518, - "kind": 7204, - "kind": 3044, - "kinda": 6612, - "kinder": 12711, - "kinder": 24159, - "kindergarten": 16749, - "kindle": 24704, - "kindle": 10746, - "kindleunlimited": 32164, - "kindly": 13952, - "kindness": 45112, - "kindness": 10614, - "kinds": 14879, - "kine": 17607, - "kineni": 49080, - "kinetic": 37699, - "king": 2365, - "king": 674, - "kingdom": 21870, - "kingdom": 7364, - "kingdomhearts": 48570, - "kingdoms": 43890, - "kingfisher": 34330, - "kingjames": 33153, - "kingly": 33642, - "kingof": 27878, - "kings": 18590, - "kings": 4232, - "kingsley": 41807, - "kingston": 40736, - "kingston": 15393, - "kini": 41644, - "kinky": 37006, - "kinney": 37233, - "kino": 39000, - "kins": 31060, - "kins": 4386, - "kinson": 12095, - "kio": 28210, - "kio": 39401, - "kiosk": 39146, - "kip": 27636, - "kip": 15986, - "kipp": 43329, - "kir": 3476, - "kir": 32949, - "kira": 33038, - "kiran": 43234, - "kiran": 36603, - "kirby": 17065, - "kiri": 34170, - "kiri": 45826, - "kirk": 10639, - "kirk": 11508, - "kirkland": 43061, - "kiro": 39749, - "kirstel": 46483, - "kirsten": 31813, - "kirsty": 37787, - "kis": 3199, - "kis": 22796, - "kish": 25662, - "kiss": 43757, - "kiss": 5946, - "kissed": 22561, - "kisses": 47876, - "kisses": 11220, - "kissing": 18637, - "kistan": 29580, - "kit": 4566, - "kit": 4274, - "kita": 29961, - "kitch": 3850, - "kitchen": 18131, - "kitchen": 4485, - "kitchener": 34428, - "kitchens": 28301, - "kite": 47777, - "kite": 19867, - "kites": 45829, - "kits": 13730, - "kitt": 10840, - "kitten": 13063, - "kittens": 17216, - "kitties": 36013, - "kitty": 25067, - "kitty": 8417, - "kiwan": 38709, - "kiwanis": 46513, - "kiwi": 22440, - "kiwis": 48108, - "kiya": 41610, - "kj": 27385, - "kj": 28238, - "kja": 41048, - "kjv": 37387, - "kk": 4390, - "kk": 10849, - "kka": 19002, - "kke": 44239, - "kker": 32399, - "kki": 44672, - "kkk": 20073, - "kkkk": 15834, - "kkkk": 47160, - "kkkkkkkk": 31042, - "kko": 43965, - "kkr": 40855, - "kl": 8498, - "kl": 14134, - "kla": 11249, - "klan": 46935, - "klar": 41374, - "klaus": 31788, - "kle": 7612, - "kle": 7432, - "klein": 33475, - "klein": 17579, - "kley": 18594, - "kli": 31640, - "klin": 44809, - "klin": 41647, - "kline": 47580, - "kling": 40270, - "klm": 38859, - "klo": 15296, - "klopp": 26446, - "kltu": 25978, - "klu": 21852, - "kly": 45090, - "km": 29954, - "km": 4590, - "kman": 33312, - "kms": 24996, - "kn": 4825, - "kn": 23693, - "knapp": 33945, - "kne": 6358, - "knee": 9897, - "knees": 19115, - "kner": 31578, - "knew": 5009, - "kni": 6312, - "knick": 33286, - "knicks": 17657, - "knife": 44176, - "knife": 8960, - "knigh": 43099, - "knight": 17949, - "knight": 7355, - "knights": 10385, - "knit": 18745, - "knit": 14313, - "knitted": 28151, - "knitting": 18863, - "knives": 20910, - "kno": 1482, - "kno": 25362, - "knob": 29736, - "knobs": 47504, - "knock": 14195, - "knock": 11583, - "knocked": 15325, - "knocking": 20380, - "knockout": 22602, - "knocks": 24296, - "knoll": 43882, - "knot": 18412, - "knots": 32428, - "know": 4179, - "know": 1038, - "knowing": 9267, - "knowledge": 27864, - "knowledge": 5510, - "knowledgeable": 43391, - "knowles": 32631, - "known": 3102, - "knows": 4309, - "knowyour": 30773, - "knox": 18630, - "knox": 21833, - "knoxville": 23232, - "knu": 14812, - "knuck": 21333, - "knuckle": 42023, - "knuckles": 40127, - "knw": 40803, - "ko": 1313, - "ko": 2448, - "koala": 36654, - "kobe": 42644, - "kobe": 14470, - "kobo": 42390, - "koch": 25331, - "kochi": 36710, - "kodak": 30425, - "kodi": 46611, - "kof": 17528, - "koff": 47303, - "kofi": 40400, - "koh": 13379, - "koh": 31216, - "kohl": 48479, - "kohli": 17549, - "koi": 28150, - "kojima": 46419, - "kok": 32045, - "kok": 11225, - "koko": 42426, - "koko": 40003, - "kol": 7142, - "kol": 31023, - "kolkata": 18011, - "kom": 6686, - "kom": 24181, - "kombat": 29670, - "kombucha": 48615, - "komo": 31820, - "kon": 5743, - "kon": 29519, - "kona": 30203, - "kong": 31784, - "kong": 6506, - "konstant": 46583, - "koo": 12225, - "koo": 40472, - "kook": 16003, - "kool": 36755, - "kool": 26444, - "kop": 16623, - "kop": 38999, - "kor": 6428, - "kor": 24175, - "kore": 3919, - "korea": 5915, - "korean": 31949, - "korean": 8034, - "kori": 42842, - "korn": 45412, - "korn": 31492, - "kors": 34535, - "kos": 47438, - "kos": 22951, - "kosh": 45233, - "kosher": 36502, - "koso": 23892, - "kosovo": 28343, - "kot": 23323, - "kot": 20701, - "kota": 21735, - "koto": 40945, - "koto": 29977, - "kou": 18502, - "kou": 39614, - "kour": 34134, - "kov": 17733, - "kov": 15156, - "kova": 26185, - "koval": 47903, - "kovic": 16886, - "kovich": 44794, - "kovsky": 33384, - "kow": 29764, - "kow": 23919, - "kowski": 17649, - "koz": 29598, - "kp": 16174, - "kp": 16894, - "kpa": 38759, - "kph": 41138, - "kpk": 42094, - "kpmg": 38243, - "kpop": 29534, - "kpop": 15859, - "kprc": 47832, - "kprs": 46253, - "kr": 7309, - "kr": 14107, - "kra": 5762, - "kraft": 28057, - "kraja": 29016, - "kraken": 48408, - "krakow": 40033, - "kram": 19075, - "kramer": 27495, - "kran": 33243, - "kranti": 47969, - "krat": 30470, - "kre": 8362, - "kreme": 43140, - "kremlin": 33979, - "kri": 3679, - "kris": 35251, - "kris": 12261, - "krish": 11487, - "krishna": 15863, - "krishnan": 46535, - "krispy": 49292, - "krist": 16490, - "kristen": 28881, - "kristen": 16644, - "kristi": 26895, - "kristin": 35408, - "kristin": 26785, - "kristina": 33180, - "krit": 36265, - "kro": 16193, - "kroger": 36344, - "kron": 25999, - "kru": 10609, - "kruger": 32948, - "krun": 43084, - "kry": 13995, - "krystal": 36554, - "ks": 10470, - "ks": 662, - "ksa": 25439, - "ksh": 36594, - "kst": 17420, - "kstate": 48590, - "ksu": 43496, - "kswx": 36180, - "kt": 17238, - "kt": 7792, - "ktm": 33989, - "ktn": 42170, - "kton": 37848, - "kts": 48577, - "ktv": 36444, - "ku": 1836, - "ku": 4827, - "kuala": 30336, - "kubball": 48995, - "kuber": 41336, - "kubernetes": 45144, - "kubrick": 37032, - "kuch": 39394, - "kud": 40818, - "kudos": 14481, - "kul": 11325, - "kul": 31514, - "kum": 18086, - "kum": 28148, - "kuma": 43139, - "kuma": 33920, - "kumar": 22329, - "kumar": 7674, - "kumb": 31391, - "kun": 6849, - "kun": 21842, - "kung": 39656, - "kung": 22347, - "kunst": 37881, - "kup": 39023, - "kups": 27240, - "kur": 4862, - "kurdi": 23504, - "kurdish": 21644, - "kurdistan": 24459, - "kurds": 20888, - "kuri": 46375, - "kuro": 28239, - "kuro": 47826, - "kurt": 31903, - "kurt": 14527, - "kus": 27618, - "kus": 27505, - "kush": 22264, - "kush": 24594, - "kushner": 36716, - "kut": 17283, - "kut": 36965, - "kuwait": 19679, - "kuya": 34815, - "kuz": 33253, - "kv": 27594, - "kv": 34249, - "kw": 10072, - "kw": 18339, - "kwa": 32784, - "kwa": 48576, - "kwame": 46681, - "kwan": 37100, - "kwan": 39447, - "kwang": 40260, - "kwe": 26050, - "kwi": 35327, - "kwon": 36369, - "kx": 28190, - "kx": 46442, - "ky": 2018, - "ky": 2383, - "kya": 29142, - "kyc": 37758, - "kyiv": 36422, - "kyle": 15847, - "kyle": 7539, - "kylie": 28282, - "kylie": 17983, - "kyliejenner": 47232, - "kylo": 47704, - "kyo": 13150, - "kyo": 6281, - "kyoto": 23223, - "kyr": 26329, - "kyrgy": 40013, - "kyrgyz": 48346, - "kyrie": 21857, - "kyu": 28296, - "kyu": 25490, - "kyuhyun": 37229, - "kyung": 41058, - "kyungsoo": 30280, - "kywx": 39940, - "kz": 48743, - "kz": 36848, - "kzn": 38264, - "kö": 32437, - "l": 75, - "l": 331, - "la": 572, - "la": 1210, - "laa": 44642, - "lab": 3537, - "lab": 4352, - "labe": 25749, - "label": 12235, - "label": 9093, - "labeled": 32720, - "labeling": 36825, - "labelled": 45188, - "labels": 17413, - "lable": 31879, - "labor": 11201, - "labor": 7878, - "laboratories": 43421, - "laboratory": 17664, - "laborday": 39324, - "labou": 32700, - "labour": 19586, - "labour": 6019, - "labourdoorstep": 37008, - "labout": 35961, - "labra": 37067, - "labrador": 25409, - "labs": 12021, - "laby": 29131, - "labyrin": 31782, - "labyrinth": 35594, - "lac": 4477, - "lac": 16189, - "lace": 30012, - "lace": 5421, - "laced": 36800, - "laces": 23281, - "lacey": 31754, - "lach": 30558, - "lack": 24915, - "lack": 8069, - "lacking": 30080, - "lacks": 34388, - "laco": 45882, - "lacrosse": 12915, - "lacy": 38645, - "lad": 15991, - "lad": 10707, - "ladak": 42312, - "ladakh": 45295, - "ladder": 16637, - "ladders": 47125, - "lade": 26447, - "laden": 28634, - "ladi": 12934, - "ladies": 28932, - "ladies": 3431, - "lads": 9803, - "lady": 7275, - "lady": 2909, - "ladybird": 43389, - "ladybug": 40038, - "ladygaga": 21232, - "laf": 47555, - "lafayette": 22683, - "lag": 30932, - "lag": 20394, - "laga": 30161, - "lage": 24369, - "lager": 36811, - "lager": 22989, - "lagh": 37237, - "laghate": 47565, - "laghateparth": 48780, - "lagi": 39786, - "lago": 42698, - "lago": 31476, - "lagoon": 22753, - "lagos": 12728, - "lagun": 18500, - "laguna": 23609, - "lah": 27315, - "lah": 4299, - "lahat": 42164, - "lahore": 16733, - "lai": 23947, - "laid": 42560, - "laid": 11160, - "lain": 46958, - "lain": 17151, - "laine": 35860, - "lair": 31981, - "lais": 34923, - "lak": 12890, - "lak": 26793, - "lake": 6441, - "lake": 2553, - "lakedistrict": 26437, - "lakel": 26133, - "lakeland": 34306, - "laker": 45717, - "lakers": 13570, - "lakes": 9265, - "lakeshore": 42595, - "lakeside": 30915, - "lakewood": 36417, - "lakh": 21487, - "lakhs": 37985, - "lakings": 34289, - "lakota": 45510, - "laksh": 24937, - "lakshmi": 39682, - "lal": 12301, - "lal": 19430, - "lala": 33661, - "lali": 21726, - "laliga": 32383, - "lam": 2022, - "lam": 5704, - "lama": 26049, - "lamar": 28678, - "lamar": 17284, - "lamb": 19863, - "lamb": 10034, - "lambda": 36687, - "lambert": 14574, - "lambeth": 43410, - "lambo": 45464, - "lamborgh": 18709, - "lamborghini": 19462, - "lambs": 30361, - "lame": 23192, - "lamin": 22337, - "laminated": 49079, - "lamo": 41461, - "lamont": 46719, - "lamp": 26700, - "lamp": 10725, - "lampard": 39989, - "lamps": 23424, - "lan": 1193, - "lan": 4872, - "lana": 15406, - "lanapar": 47437, - "lanaparrilla": 47819, - "lanc": 11872, - "lanca": 15694, - "lancashire": 20939, - "lancaster": 16446, - "lance": 26025, - "lance": 11609, - "lancer": 38195, - "lancers": 46392, - "lancia": 48698, - "lancs": 47540, - "land": 1567, - "land": 973, - "lande": 36556, - "landed": 9873, - "lander": 37247, - "lander": 9666, - "landers": 20019, - "landfall": 38465, - "landfill": 34947, - "landia": 41384, - "landing": 8292, - "landings": 46104, - "landlord": 28938, - "landlords": 35283, - "landmark": 15208, - "landmarks": 30393, - "lando": 25463, - "lando": 7065, - "landon": 32748, - "landrover": 38125, - "landry": 36137, - "lands": 40223, - "lands": 2961, - "landsc": 4384, - "landscape": 21123, - "landscape": 5727, - "landscapephotography": 28125, - "landscapes": 15344, - "landscaping": 25642, - "landslide": 31954, - "lane": 25534, - "lane": 3980, - "lanes": 10345, - "laney": 38552, - "lang": 7969, - "lang": 8578, - "lange": 32021, - "langford": 45615, - "langley": 28595, - "langu": 4095, - "language": 46103, - "language": 4781, - "languages": 13527, - "lani": 22964, - "lanka": 16221, - "lankan": 40531, - "lannister": 49056, - "lans": 43550, - "lansing": 30805, - "lant": 44504, - "lanta": 44768, - "lantern": 17185, - "lanterns": 33676, - "lantic": 32601, - "lantic": 27678, - "lants": 38425, - "lanyard": 46808, - "lao": 32475, - "lao": 29521, - "laos": 34353, - "lap": 7213, - "lap": 8639, - "lapd": 32557, - "lapel": 47961, - "lapland": 43633, - "laps": 18711, - "lapse": 33365, - "laptop": 10464, - "laptops": 32189, - "laq": 45026, - "lar": 1592, - "lar": 1652, - "lara": 19435, - "lard": 40347, - "lare": 22415, - "laredo": 48427, - "large": 40234, - "large": 3638, - "largely": 21418, - "larger": 12567, - "largest": 4960, - "largo": 44161, - "lari": 34676, - "lark": 43164, - "lark": 23536, - "larkin": 34769, - "larry": 18642, - "larry": 8242, - "lars": 8669, - "larsen": 39721, - "larson": 27973, - "larvae": 44840, - "las": 8295, - "las": 2552, - "lasag": 31210, - "lasagna": 40683, - "lasalle": 43866, - "laser": 25607, - "laser": 9885, - "lasers": 37060, - "lash": 31995, - "lash": 18480, - "lashes": 21015, - "lass": 24203, - "lass": 18263, - "lassic": 39430, - "last": 10600, - "last": 952, - "lasted": 25711, - "lasting": 13434, - "lastnight": 30159, - "lasts": 20141, - "lasvegas": 17789, - "lat": 1591, - "lat": 28437, - "lata": 47114, - "latam": 40012, - "late": 13267, - "late": 2325, - "latel": 49035, - "lately": 11824, - "latepost": 48328, - "later": 24109, - "later": 2941, - "lateral": 26646, - "latest": 46805, - "latest": 2053, - "latex": 27520, - "lati": 16357, - "latimes": 43356, - "latin": 16695, - "latin": 9888, - "latina": 27936, - "latino": 45734, - "latino": 19470, - "latinos": 40233, - "lation": 6191, - "latitude": 37392, - "lative": 15719, - "lator": 9291, - "lators": 28278, - "latt": 33561, - "latte": 17697, - "latter": 26198, - "latvia": 30034, - "lau": 1853, - "lau": 23090, - "lauderdale": 24352, - "laugh": 4969, - "laugh": 6332, - "laughed": 16746, - "laughing": 8301, - "laughs": 14322, - "laughter": 10722, - "laun": 2944, - "launch": 31168, - "launch": 2904, - "launched": 6125, - "launcher": 35782, - "launches": 7023, - "launching": 8565, - "laundering": 34079, - "laundry": 14797, - "laur": 15256, - "laura": 17091, - "laura": 7763, - "laure": 16932, - "laureate": 25675, - "laurel": 43370, - "laurel": 19942, - "lauren": 10456, - "lauren": 7634, - "laurence": 29353, - "laurent": 23226, - "laurie": 20326, - "laus": 38895, - "laus": 28111, - "lause": 22269, - "laut": 47688, - "lav": 13767, - "lav": 26919, - "lava": 16765, - "laven": 15047, - "lavender": 16033, - "laver": 28188, - "lavish": 35443, - "law": 2874, - "law": 2606, - "lawful": 33845, - "lawler": 47862, - "lawless": 39468, - "lawmaker": 37169, - "lawmakers": 21190, - "lawn": 31675, - "lawn": 11024, - "lawrence": 32221, - "lawrence": 8820, - "laws": 7306, - "lawson": 22152, - "lawsuit": 14346, - "lawsuits": 44331, - "lawyer": 10552, - "lawyers": 14232, - "lax": 17750, - "lax": 10024, - "lay": 7205, - "lay": 6360, - "laye": 25995, - "layer": 12411, - "layered": 28520, - "layers": 15900, - "laying": 12333, - "layla": 45050, - "layne": 48721, - "layo": 21738, - "layoffs": 29019, - "layout": 17314, - "lays": 19546, - "layton": 38061, - "laz": 18806, - "lazar": 33075, - "lazarus": 49126, - "laze": 41559, - "lazer": 43735, - "lazio": 33010, - "lazy": 32614, - "lazy": 10753, - "lb": 21958, - "lb": 7422, - "lbc": 37694, - "lbj": 45683, - "lbloggers": 48695, - "lbs": 8912, - "lc": 9584, - "lc": 7225, - "lcd": 21356, - "lcfc": 25339, - "lcs": 32279, - "ld": 1431, - "ld": 730, - "lder": 6945, - "lders": 43221, - "ldn": 37050, - "ldn": 2517, - "ldnont": 25827, - "ldnt": 21690, - "ldr": 37279, - "lds": 31235, - "le": 534, - "le": 579, - "lea": 2246, - "lea": 13324, - "leach": 35527, - "lead": 1328, - "lead": 2784, - "leader": 14806, - "leader": 3236, - "leaderboard": 34519, - "leaders": 3546, - "leadership": 36876, - "leadership": 3652, - "leading": 3833, - "leads": 5335, - "leaf": 9377, - "leaf": 7232, - "leaflet": 38289, - "leaflets": 39014, - "leafs": 16688, - "leafy": 42616, - "leagu": 13317, - "league": 16635, - "league": 2313, - "leagueof": 26022, - "leagueoflegends": 31737, - "leagues": 19888, - "leah": 24350, - "leah": 19308, - "leak": 42900, - "leak": 15489, - "leaked": 14353, - "leaking": 34097, - "leaks": 15657, - "leam": 39606, - "lean": 12447, - "lean": 8208, - "leaning": 24411, - "leanne": 41448, - "leans": 9357, - "leap": 29129, - "leap": 15392, - "leaps": 48080, - "lear": 1146, - "lear": 27663, - "learn": 16959, - "learn": 1768, - "learned": 6048, - "learnenglish": 49040, - "learner": 33547, - "learners": 19572, - "learning": 22632, - "learning": 2378, - "learns": 17569, - "learnt": 18959, - "leary": 36051, - "lease": 49041, - "lease": 14394, - "leased": 48352, - "leash": 36192, - "leasing": 29160, - "least": 3651, - "leather": 21417, - "leather": 5862, - "leau": 26498, - "leav": 3198, - "leave": 37512, - "leave": 3258, - "leaves": 5579, - "leaving": 5216, - "leban": 9360, - "lebanese": 23819, - "lebanon": 11695, - "leblanc": 46381, - "lebo": 44184, - "lebron": 11971, - "lebu": 47030, - "lec": 944, - "lec": 35374, - "leche": 46197, - "lect": 45392, - "lection": 18252, - "lections": 30995, - "lecture": 6617, - "lecturer": 23795, - "lectures": 21118, - "led": 8767, - "led": 912, - "ledge": 23647, - "ledge": 4815, - "ledger": 26817, - "leds": 36763, - "lee": 6224, - "lee": 2592, - "leed": 16483, - "leed": 40206, - "leeds": 38900, - "leeds": 7420, - "leek": 34585, - "leeminho": 37831, - "leen": 35311, - "leen": 15940, - "leep": 48875, - "leep": 10191, - "lees": 29324, - "lees": 34056, - "lef": 9152, - "left": 33949, - "left": 1823, - "leftist": 35143, - "lefto": 17437, - "leftover": 26414, - "leftovers": 28481, - "lefty": 33935, - "leg": 1211, - "leg": 4924, - "lega": 38674, - "legacy": 44108, - "legacy": 6447, - "legal": 17743, - "legal": 3998, - "legalization": 40584, - "legalize": 42921, - "legally": 14152, - "legate": 46009, - "lege": 8065, - "legen": 6105, - "legend": 5480, - "legend": 3539, - "legendary": 6053, - "legendof": 47915, - "legends": 6396, - "leges": 15356, - "legg": 18474, - "legg": 32511, - "legged": 25830, - "leggings": 22895, - "leggo": 43441, - "legi": 11183, - "legion": 35503, - "legion": 14525, - "legis": 7200, - "legislat": 16486, - "legislation": 14143, - "legislative": 16755, - "legislators": 31572, - "legislature": 22309, - "legit": 12563, - "legitim": 17656, - "legitimate": 24491, - "lego": 28117, - "lego": 7849, - "legos": 45359, - "legs": 7072, - "leh": 19105, - "leh": 29298, - "lehead": 28090, - "lehigh": 34527, - "lehman": 46094, - "lei": 15828, - "lei": 21830, - "leia": 32723, - "leic": 35073, - "leica": 30206, - "leice": 10026, - "leicester": 28795, - "leicester": 11510, - "leicestershire": 45358, - "leigh": 14849, - "leigh": 9292, - "leighton": 30782, - "leila": 41342, - "lein": 20026, - "lein": 28551, - "leinster": 32242, - "leip": 36401, - "leipzig": 41860, - "leis": 13133, - "leisure": 15849, - "leit": 35446, - "leith": 34141, - "lek": 26626, - "lek": 36535, - "lel": 46623, - "lele": 26075, - "lem": 10213, - "lem": 8428, - "leman": 24478, - "lemans": 26694, - "lement": 9693, - "lements": 15833, - "lemme": 23318, - "lemon": 12272, - "lemon": 7184, - "lemonade": 18884, - "lemons": 29576, - "lemore": 41147, - "len": 3687, - "len": 2159, - "lena": 22038, - "lend": 45397, - "lend": 24987, - "lender": 44734, - "lenders": 42443, - "lending": 20209, - "lene": 17628, - "leness": 36551, - "leng": 7861, - "length": 10130, - "lengths": 31858, - "lengthy": 32624, - "lenin": 41760, - "lennon": 18360, - "lennox": 45748, - "lenny": 48448, - "lenny": 30124, - "leno": 45357, - "lenovo": 25886, - "lens": 8666, - "lenses": 21264, - "lent": 20943, - "lent": 22605, - "lentil": 41511, - "lentils": 44269, - "leo": 24008, - "leo": 8312, - "leon": 6581, - "leon": 9763, - "leonard": 43849, - "leonard": 13142, - "leonardo": 20282, - "leone": 22864, - "leop": 11234, - "leopard": 15931, - "leopards": 40996, - "leopold": 45501, - "lep": 48884, - "leppard": 41656, - "lepre": 45641, - "ler": 5587, - "ler": 1803, - "lero": 15067, - "lerosis": 35455, - "leroy": 32441, - "lers": 6247, - "lery": 38184, - "les": 4339, - "les": 840, - "lesbian": 17419, - "lesbians": 43182, - "lesh": 32282, - "lesley": 25506, - "lesli": 13649, - "leslie": 16244, - "lesn": 39568, - "lesnar": 42223, - "less": 3242, - "less": 1285, - "lesser": 20369, - "lessly": 13103, - "lessness": 24847, - "lesson": 7714, - "lessons": 7199, - "lest": 24372, - "lest": 6794, - "lester": 23157, - "lester": 24023, - "lestwe": 29726, - "lestweforget": 30273, - "let": 1898, - "let": 1094, - "leta": 34319, - "lete": 34078, - "letes": 6815, - "leth": 30022, - "leth": 42462, - "lethal": 21905, - "lethbridge": 48390, - "leti": 34176, - "letics": 14504, - "letit": 46423, - "leto": 32203, - "leton": 37674, - "leton": 7462, - "lets": 10448, - "lets": 3243, - "letsgo": 16967, - "letsgo": 29789, - "letstalk": 35591, - "lett": 22428, - "lett": 9778, - "lette": 41798, - "lette": 10301, - "letter": 15567, - "letter": 4861, - "lettering": 26382, - "letterman": 38447, - "letters": 9181, - "letting": 9510, - "letto": 35449, - "lettu": 17933, - "lettuce": 18573, - "leu": 15691, - "leuke": 31031, - "leukemia": 32097, - "leum": 21571, - "leur": 45806, - "lev": 17022, - "lev": 29950, - "levan": 42543, - "leve": 36271, - "level": 21682, - "level": 2931, - "leveled": 48453, - "levels": 6295, - "leven": 44792, - "leven": 34729, - "lever": 20178, - "lever": 23094, - "leverage": 24030, - "leveraging": 37948, - "levi": 25630, - "levi": 19113, - "leviathan": 41736, - "levin": 36949, - "levine": 26594, - "levit": 22715, - "levy": 17147, - "lew": 5063, - "lew": 25329, - "lewan": 48349, - "lewd": 45241, - "lewes": 40431, - "lewi": 19589, - "lewis": 22043, - "lewis": 6020, - "lewisham": 37385, - "lewisham": 47633, - "lewishamilton": 42960, - "lewood": 37951, - "lex": 6586, - "lex": 9658, - "lexa": 48259, - "lexi": 44231, - "lexi": 24679, - "lexington": 22308, - "lexus": 20694, - "ley": 2565, - "ley": 1066, - "leye": 37061, - "leys": 45609, - "leys": 14834, - "leyton": 46573, - "lez": 26442, - "lf": 33960, - "lf": 22078, - "lfc": 37826, - "lfc": 8267, - "lfw": 28514, - "lg": 4546, - "lg": 11368, - "lga": 39348, - "lgb": 25401, - "lgbt": 11743, - "lgbt": 9592, - "lgbti": 42730, - "lgbtq": 47625, - "lgbtq": 14939, - "lgm": 39389, - "lh": 27794, - "lh": 31159, - "lhp": 45092, - "lhs": 33170, - "li": 554, - "li": 4250, - "lia": 26118, - "lia": 6964, - "liability": 29139, - "liaison": 39294, - "liam": 5258, - "liam": 7167, - "lian": 18058, - "liance": 40864, - "liar": 16334, - "liars": 23863, - "lias": 46021, - "lib": 10249, - "lib": 13345, - "libby": 36832, - "libdems": 40869, - "liber": 3425, - "liberal": 48032, - "liberal": 9985, - "liberalism": 40018, - "liberals": 15981, - "liberated": 38690, - "liberation": 19507, - "liberia": 32208, - "libertarian": 35067, - "liberties": 48623, - "liberty": 23397, - "liberty": 8480, - "libr": 2856, - "libra": 43038, - "librarian": 25148, - "librarians": 37806, - "libraries": 14277, - "library": 25713, - "library": 3519, - "libre": 49210, - "libre": 31681, - "libs": 26401, - "liby": 36390, - "libya": 16417, - "libyan": 42319, - "lic": 2508, - "lic": 3376, - "lice": 45691, - "licen": 6706, - "licence": 20550, - "license": 10337, - "licensed": 18752, - "licenses": 36414, - "licensing": 24219, - "lich": 23979, - "lich": 25875, - "lick": 29197, - "lick": 17541, - "licking": 33013, - "licks": 42117, - "lics": 44552, - "lid": 39369, - "lid": 17678, - "lidge": 45558, - "lido": 35683, - "lids": 41609, - "lie": 6570, - "lie": 2538, - "lieb": 45387, - "liebe": 37749, - "lied": 6486, - "lief": 38428, - "lien": 45716, - "lier": 3626, - "liers": 19303, - "lies": 37236, - "lies": 3205, - "liest": 14020, - "liet": 41107, - "lieu": 20401, - "lieu": 35313, - "lieutenant": 22538, - "lif": 16456, - "life": 2666, - "life": 970, - "lifeat": 27801, - "lifeboat": 37404, - "lifecycle": 49171, - "lifein": 48447, - "lifeis": 24824, - "lifeisgood": 46433, - "lifel": 15025, - "lifeline": 38438, - "lifelong": 21358, - "lifeof": 36061, - "lifesaving": 48016, - "lifespan": 49257, - "lifestyle": 46512, - "lifestyle": 7037, - "lifestyles": 48521, - "lifetime": 48737, - "lifetime": 9107, - "liff": 34404, - "liffe": 38942, - "lift": 33146, - "lift": 6779, - "lifted": 16783, - "lifter": 38555, - "lifting": 10857, - "lifts": 18291, - "lig": 19915, - "lig": 38493, - "liga": 16802, - "ligam": 31077, - "ligament": 48705, - "ligan": 27962, - "ligans": 42133, - "ligh": 7510, - "light": 3885, - "light": 1395, - "lighted": 18404, - "lighten": 32717, - "lightening": 28170, - "lighter": 14102, - "lighthouse": 13717, - "lighting": 5799, - "lightly": 26878, - "lightning": 7756, - "lightroom": 41454, - "lights": 3073, - "lightweight": 16278, - "ligu": 42920, - "ligue": 29196, - "lik": 4831, - "lik": 18495, - "like": 9175, - "like": 789, - "liked": 7112, - "likefor": 48444, - "likeli": 40666, - "likelihood": 48158, - "likely": 5256, - "liken": 36084, - "likes": 4724, - "liking": 16810, - "lil": 6012, - "lil": 4461, - "lilac": 33647, - "lili": 26686, - "lili": 48411, - "lilies": 38110, - "lillard": 47016, - "lille": 38705, - "lilli": 40920, - "lillian": 41563, - "lilly": 47825, - "lilly": 21815, - "lily": 23803, - "lily": 10647, - "lim": 2377, - "lim": 17204, - "lima": 17589, - "limb": 27061, - "limb": 32363, - "limbo": 46179, - "limbs": 34886, - "lime": 17385, - "lime": 11193, - "limel": 48658, - "limer": 16915, - "limerick": 19501, - "limestone": 27272, - "limit": 18933, - "limit": 9973, - "limitations": 32730, - "limited": 49229, - "limited": 3472, - "limiting": 35812, - "limitless": 35833, - "limits": 11966, - "limo": 33166, - "limous": 47287, - "limpopo": 47175, - "lin": 1254, - "lin": 2424, - "lina": 26110, - "lincol": 6239, - "lincoln": 16957, - "lincoln": 7454, - "lincolnshire": 29014, - "lind": 6492, - "linda": 45410, - "linda": 10760, - "linden": 44076, - "linden": 34832, - "lindo": 38467, - "lindsay": 29846, - "lindsay": 16858, - "lindsey": 29475, - "lindsey": 18128, - "line": 3674, - "line": 1148, - "linear": 19816, - "linebacker": 29848, - "lined": 11842, - "lineman": 31501, - "linen": 20032, - "liner": 11618, - "liners": 24463, - "lines": 3418, - "liness": 28633, - "lineup": 7316, - "lineups": 33589, - "ling": 4851, - "ling": 1358, - "linger": 29593, - "lingerie": 18473, - "lingering": 46494, - "lings": 11390, - "lington": 27673, - "lington": 9002, - "lingu": 34449, - "lingui": 29942, - "linguistic": 46847, - "linguistics": 48651, - "lining": 11589, - "link": 18433, - "link": 2468, - "linke": 15088, - "linked": 11059, - "linkedin": 16302, - "linkin": 40287, - "linkin": 49291, - "linking": 23296, - "links": 8113, - "linn": 37431, - "lino": 41189, - "lino": 34995, - "lins": 6567, - "linson": 15401, - "linton": 36479, - "linus": 49303, - "linux": 14061, - "lio": 19395, - "lion": 8872, - "lion": 5567, - "lionel": 19441, - "lions": 7093, - "lip": 8630, - "lip": 8546, - "lipo": 38795, - "lipp": 38074, - "lips": 8847, - "lipse": 10351, - "lipstick": 15618, - "liqu": 6310, - "lique": 32680, - "liqueur": 43612, - "liqui": 33817, - "liquid": 18366, - "liquid": 10158, - "liquidity": 42812, - "liquor": 17828, - "lis": 7297, - "lis": 12749, - "lisa": 25236, - "lisa": 7424, - "lisam": 43072, - "lisboa": 40052, - "lisbon": 17708, - "lish": 12658, - "lish": 2354, - "lished": 22620, - "lisle": 21529, - "lism": 34390, - "liss": 45489, - "liss": 35433, - "lisse": 49309, - "list": 1734, - "list": 1998, - "lista": 37812, - "listed": 6457, - "listen": 17454, - "listen": 2672, - "listened": 15347, - "listener": 34819, - "listeners": 26901, - "listening": 3656, - "listens": 25912, - "lister": 45109, - "listing": 8145, - "listings": 21987, - "liston": 48041, - "lists": 12281, - "lit": 2213, - "lit": 4350, - "lita": 30100, - "lite": 29273, - "lite": 13694, - "litecoin": 39063, - "liter": 3085, - "liter": 34904, - "literacy": 12841, - "literal": 24269, - "literally": 4719, - "literary": 13586, - "literature": 11072, - "litfest": 40369, - "lith": 37005, - "lithium": 22794, - "litho": 31088, - "lithograph": 49022, - "lithu": 21045, - "lithuania": 27068, - "liti": 24292, - "litigation": 31769, - "lito": 47381, - "litre": 25786, - "litres": 39919, - "litt": 1216, - "litt": 47583, - "litter": 45431, - "litter": 17118, - "litters": 45300, - "little": 7024, - "little": 1274, - "littlemix": 29731, - "littlest": 48969, - "litur": 36830, - "litz": 30357, - "liu": 20466, - "liv": 13895, - "liv": 19901, - "livan": 12785, - "live": 3215, - "live": 1064, - "lived": 8867, - "livel": 17973, - "liveli": 26566, - "livelihood": 46497, - "livelihoods": 47716, - "lively": 19663, - "liveme": 35396, - "livemusic": 15688, - "liven": 41057, - "liveon": 22815, - "livepd": 38742, - "livepd": 31899, - "liver": 4755, - "liver": 12639, - "liverpool": 29778, - "liverpool": 5366, - "livery": 23248, - "lives": 3247, - "livesmatter": 20348, - "livestock": 22079, - "livestream": 16844, - "livetweet": 38546, - "livin": 28061, - "living": 10965, - "living": 2815, - "livingston": 30551, - "lix": 45068, - "liz": 8632, - "liz": 12242, - "liza": 28787, - "lizard": 17221, - "lizards": 41991, - "lizasober": 44487, - "lizasoberano": 45076, - "lizz": 34430, - "lizzie": 29530, - "lizzy": 32306, - "lj": 34211, - "lj": 32273, - "lju": 44562, - "lk": 39110, - "lk": 26596, - "lka": 21881, - "ll": 1657, - "ll": 865, - "lla": 15419, - "llama": 36679, - "llan": 17281, - "llan": 38728, - "lland": 31150, - "llc": 17161, - "lle": 26550, - "lle": 29732, - "llen": 41197, - "ller": 7722, - "llers": 26426, - "lli": 47015, - "lli": 13368, - "llis": 25518, - "lll": 27177, - "llll": 34874, - "llll": 43485, - "llo": 19293, - "lloy": 10092, - "lloyd": 33339, - "lloyd": 12400, - "llp": 28042, - "lls": 40535, - "lly": 26379, - "lm": 6981, - "lm": 15282, - "lma": 4493, - "lmao": 5121, - "lmaoo": 32623, - "lmaooo": 33362, - "lmaoooo": 45232, - "lmfa": 8928, - "lmfao": 11068, - "lmfaooo": 47658, - "lmp": 43575, - "lms": 30381, - "ln": 31644, - "ln": 18654, - "lng": 22339, - "lnp": 39679, - "lo": 549, - "lo": 2982, - "loa": 39678, - "load": 4515, - "load": 2834, - "loaded": 6756, - "loader": 28492, - "loading": 9975, - "loads": 8691, - "loaf": 26467, - "loaf": 18273, - "loan": 28431, - "loan": 8176, - "loans": 14206, - "lob": 11197, - "lob": 46606, - "lobal": 34574, - "lobb": 27698, - "lobby": 12449, - "lobbying": 36047, - "lobe": 46325, - "lobes": 24148, - "lobo": 39323, - "lobos": 36586, - "lobster": 13793, - "loc": 1378, - "loc": 25826, - "local": 9202, - "local": 2029, - "localized": 49399, - "locally": 15603, - "locals": 15041, - "locate": 20490, - "located": 5677, - "location": 4372, - "locations": 9580, - "loch": 20188, - "loch": 14101, - "lock": 7201, - "lock": 4381, - "lockdown": 35636, - "locke": 29698, - "locked": 8371, - "locker": 14053, - "lockhart": 48642, - "lockheed": 36637, - "locking": 19978, - "locks": 13212, - "lockscreen": 42439, - "loco": 25555, - "locom": 22798, - "locomo": 46147, - "locomotive": 30439, - "locu": 33635, - "locust": 46237, - "lod": 45650, - "lodge": 10504, - "loe": 30113, - "loe": 25484, - "loeb": 49334, - "lof": 15011, - "loff": 31008, - "loft": 35707, - "loft": 20049, - "loftus": 46689, - "log": 3239, - "log": 7383, - "logan": 20655, - "logan": 10569, - "logans": 40752, - "logg": 43002, - "logged": 31457, - "logger": 39089, - "logging": 24444, - "logi": 3177, - "logia": 48031, - "logic": 10670, - "logical": 4791, - "logically": 24782, - "logie": 33445, - "logies": 7378, - "login": 31121, - "logist": 7407, - "logistics": 14755, - "logists": 12233, - "logne": 19911, - "logo": 31480, - "logo": 5750, - "logos": 24879, - "logs": 22745, - "logue": 27785, - "logy": 22721, - "logy": 1659, - "loh": 49129, - "loh": 37983, - "loi": 35128, - "loid": 31408, - "loin": 21760, - "loire": 46040, - "lois": 27040, - "lok": 19908, - "lok": 23575, - "loki": 24435, - "lol": 10721, - "lol": 1824, - "lola": 19065, - "lolita": 42615, - "lolla": 45483, - "lolli": 27906, - "lollipop": 34605, - "lolly": 48264, - "lolo": 16895, - "lolo": 37481, - "lolol": 25280, - "lololol": 34738, - "lolz": 35260, - "lom": 9279, - "loma": 42889, - "lombar": 25493, - "lombard": 46461, - "lombardi": 44346, - "lomond": 48941, - "lon": 1235, - "lon": 6507, - "london": 6835, - "london": 1789, - "londonmarathon": 35018, - "lone": 22220, - "lone": 13576, - "lonel": 28872, - "loneliness": 30310, - "lonely": 34509, - "lonely": 12368, - "lonelyplanet": 44984, - "long": 4792, - "long": 1538, - "longe": 25793, - "longer": 5349, - "longest": 10731, - "longevity": 35354, - "longh": 20286, - "longhorn": 41047, - "longhorns": 38295, - "longing": 38482, - "longlive": 47840, - "longs": 43618, - "longtime": 19685, - "loo": 731, - "loo": 11804, - "look": 8874, - "look": 1012, - "lookalike": 38307, - "lookbook": 39184, - "looked": 4913, - "lookin": 11254, - "looking": 36898, - "looking": 1312, - "lookout": 18330, - "looks": 1606, - "lool": 33125, - "loom": 37440, - "loom": 17199, - "looming": 35384, - "looms": 30550, - "loon": 28222, - "loona": 48137, - "looney": 45315, - "looo": 20902, - "loool": 36016, - "looool": 47038, - "looooo": 31484, - "loop": 19606, - "loop": 10408, - "loops": 21625, - "loos": 45723, - "loose": 43815, - "loose": 9786, - "loot": 21518, - "lop": 36734, - "lop": 17066, - "lopes": 49269, - "lopez": 12982, - "lor": 2179, - "lor": 11335, - "lord": 18896, - "lord": 3486, - "lorde": 35483, - "lords": 14969, - "lore": 12880, - "lore": 27218, - "loren": 13602, - "loren": 33398, - "lorenzo": 21342, - "lores": 34510, - "loretta": 40863, - "lori": 20164, - "lori": 23095, - "lorna": 46316, - "lorraine": 27602, - "lorry": 31354, - "los": 32217, - "los": 3087, - "losange": 14037, - "losangeles": 14638, - "lose": 43318, - "lose": 5354, - "loser": 18168, - "losers": 23201, - "loses": 14263, - "losing": 7918, - "loss": 34761, - "loss": 4327, - "losses": 16909, - "lost": 14258, - "lost": 2624, - "lostdog": 48482, - "lot": 5132, - "lot": 1954, - "loth": 43625, - "lothian": 31360, - "lothing": 42058, - "lotion": 25260, - "lotr": 34165, - "lots": 2958, - "lott": 42854, - "lotta": 29125, - "lotte": 16535, - "lotte": 7274, - "lottery": 16975, - "lottie": 48517, - "lotto": 28265, - "lotus": 13824, - "lou": 2207, - "lou": 9745, - "loubout": 38369, - "loud": 22884, - "loud": 7464, - "louder": 25904, - "loudest": 49214, - "loudly": 39256, - "lough": 21927, - "lough": 28045, - "loughborough": 49153, - "loui": 42173, - "louie": 25790, - "louis": 8916, - "louis": 4459, - "louisa": 40011, - "louise": 32275, - "louise": 13076, - "louisi": 12187, - "louisiana": 12946, - "louisville": 13860, - "louisvuitton": 44911, - "loun": 6466, - "lounge": 7141, - "lounging": 45430, - "lour": 29383, - "lourdes": 45071, - "louvre": 36995, - "lov": 8923, - "lov": 21229, - "lova": 37394, - "lovable": 38565, - "lovato": 18960, - "love": 2618, - "love": 793, - "lovecraft": 42405, - "loved": 3249, - "lovefl": 38884, - "loveher": 38306, - "lovehim": 45733, - "loveis": 30931, - "loveisland": 30970, - "loveislove": 43603, - "loveit": 24764, - "lovel": 8999, - "lovelies": 31412, - "lovelondon": 46493, - "lovely": 33250, - "lovely": 2165, - "lovemy": 20041, - "lovemyjob": 40130, - "loven": 33754, - "lover": 28508, - "lover": 7168, - "lovers": 48416, - "lovers": 5973, - "loves": 37773, - "loves": 3925, - "lovethe": 33040, - "lovethem": 48298, - "lovett": 47095, - "lovewins": 47687, - "loveyou": 39226, - "loveyou": 25964, - "loveyour": 26462, - "lovin": 33442, - "lovin": 16354, - "loving": 29568, - "loving": 3721, - "lovingly": 44100, - "low": 1049, - "low": 1042, - "loway": 16104, - "lowe": 17910, - "lowed": 22733, - "lowell": 24458, - "lower": 32578, - "lower": 4909, - "lowered": 34968, - "lowering": 35261, - "lowers": 36398, - "lowes": 38515, - "lowest": 12098, - "lowing": 8283, - "lowkey": 29481, - "lowry": 27444, - "lows": 4406, - "lox": 41725, - "loy": 4519, - "loy": 23929, - "loyal": 13032, - "loyalty": 14686, - "loyd": 44212, - "loyed": 29279, - "loyment": 18307, - "loyola": 32569, - "lp": 22282, - "lp": 6392, - "lpc": 44092, - "lpg": 47905, - "lpga": 34295, - "lps": 32094, - "lr": 20572, - "lr": 7041, - "lrt": 32996, - "ls": 19051, - "ls": 1268, - "lsd": 43766, - "lse": 46127, - "lse": 43886, - "lsu": 35428, - "lsu": 15672, - "lt": 13642, - "lt": 3333, - "ltc": 27664, - "ltd": 6802, - "lte": 25202, - "lton": 14237, - "lu": 664, - "lu": 9657, - "lub": 22469, - "lub": 11836, - "lubbock": 37660, - "lubric": 40963, - "luc": 7013, - "luc": 28014, - "luca": 21053, - "lucas": 23425, - "lucas": 10225, - "lucci": 45849, - "luce": 46217, - "lucent": 41552, - "lucer": 36042, - "luch": 36646, - "lucha": 38449, - "luci": 8787, - "lucia": 22290, - "luciano": 46365, - "lucid": 44540, - "lucie": 39461, - "lucifer": 46224, - "lucifer": 27687, - "lucille": 47454, - "lucin": 27523, - "luck": 9647, - "luck": 2820, - "luckiest": 42469, - "luckily": 20100, - "lucknow": 29407, - "lucky": 20495, - "lucky": 4133, - "lucrative": 41485, - "lucy": 17262, - "lucy": 10120, - "lud": 14288, - "lude": 28755, - "ludo": 40141, - "ludwig": 30633, - "lue": 45199, - "luf": 25264, - "lufc": 17818, - "luffy": 39047, - "lufthan": 37769, - "lufthansa": 39145, - "lug": 45521, - "lugg": 19673, - "luggage": 20138, - "luhan": 20975, - "luigi": 28444, - "luis": 25231, - "luis": 11339, - "luiz": 39633, - "lujah": 31639, - "luk": 21652, - "luka": 34878, - "lukaku": 37177, - "lukas": 37941, - "luke": 11970, - "luke": 5652, - "lul": 20861, - "lulla": 37019, - "lullaby": 41676, - "lulu": 32052, - "lulu": 26935, - "lum": 18112, - "lum": 5997, - "lumb": 36231, - "lumber": 27421, - "lumber": 34692, - "lumi": 41437, - "lumia": 31912, - "lumin": 15867, - "luminous": 37913, - "lump": 38704, - "lumpur": 34411, - "lun": 3221, - "lun": 49390, - "luna": 14425, - "lunar": 16043, - "lunatic": 45874, - "lunch": 10954, - "lunch": 2772, - "luncheon": 15104, - "lunches": 29705, - "lunchtime": 14330, - "lund": 30975, - "lund": 20181, - "lunes": 35648, - "lung": 38479, - "lung": 16271, - "lungs": 27366, - "lup": 27413, - "lupita": 49352, - "lupus": 36017, - "lur": 14439, - "lure": 31376, - "lures": 46747, - "lurking": 29941, - "lus": 7158, - "lusci": 38004, - "luscious": 39935, - "lush": 40382, - "lush": 16263, - "lust": 42071, - "lust": 12662, - "lustre": 46673, - "luther": 21848, - "luther": 17208, - "lutheran": 27341, - "luton": 28288, - "luv": 24726, - "luv": 8502, - "lux": 3439, - "lux": 16704, - "luxe": 26373, - "luxemb": 21314, - "luxembour": 22712, - "luxembourg": 23949, - "luxu": 16112, - "luxurious": 17292, - "luxury": 12083, - "luxury": 5247, - "luxurytravel": 29010, - "luz": 41008, - "lv": 10862, - "lv": 11184, - "lvl": 31256, - "lw": 40515, - "lw": 35115, - "lx": 30789, - "ly": 1251, - "ly": 597, - "lydia": 24316, - "lyf": 43688, - "lyfe": 30787, - "lyft": 32944, - "lying": 7175, - "lyk": 46376, - "lyle": 36828, - "lym": 20087, - "lyme": 31167, - "lymph": 30073, - "lymphoma": 37648, - "lyn": 3957, - "lyn": 5054, - "lynch": 31586, - "lynch": 13560, - "lynd": 33416, - "lynda": 42959, - "lyndon": 48518, - "lynn": 25303, - "lynn": 10667, - "lynne": 26900, - "lynx": 28941, - "lyon": 17176, - "lyons": 29453, - "lyric": 24366, - "lyric": 21291, - "lyrical": 33358, - "lyricist": 49013, - "lyrics": 9551, - "lyrix": 46814, - "lys": 45054, - "lyte": 40059, - "lywood": 4012, - "lz": 30818, - "lé": 39641, - "m": 76, - "m": 332, - "ma": 577, - "ma": 1226, - "maa": 42774, - "maa": 21555, - "maan": 33668, - "maar": 48927, - "maas": 43332, - "mab": 35639, - "mabel": 47319, - "mable": 23001, - "mably": 40082, - "mabu": 44682, - "mac": 1961, - "mac": 4945, - "macar": 21558, - "macaroni": 41824, - "macarthur": 36785, - "macau": 43984, - "macau": 33370, - "macbeth": 36321, - "macbook": 20617, - "macdonald": 20315, - "mace": 44869, - "maced": 21102, - "macedonia": 27071, - "macfar": 45374, - "macfarlane": 48825, - "mach": 2637, - "mach": 35091, - "machado": 42318, - "mache": 43220, - "macher": 29330, - "machi": 41783, - "machin": 17972, - "machine": 11539, - "machine": 4169, - "machinelearning": 13621, - "machinery": 21858, - "machines": 11108, - "machining": 45562, - "macho": 43977, - "macht": 45225, - "macin": 36533, - "mack": 8590, - "mack": 12145, - "mackay": 32497, - "macken": 48057, - "mackenzie": 22351, - "mackerel": 35002, - "mackin": 26010, - "macklemore": 41758, - "macle": 33843, - "maclean": 47137, - "macleod": 43684, - "macmillan": 36364, - "macmillan": 35191, - "macon": 35818, - "macos": 45469, - "macqu": 38365, - "macquarie": 40858, - "macro": 20891, - "macro": 16626, - "macron": 24859, - "macs": 46548, - "macy": 17113, - "macys": 47652, - "mad": 2740, - "mad": 3843, - "mada": 37799, - "madagas": 24758, - "madagascar": 25744, - "madam": 33634, - "madam": 27538, - "madame": 23507, - "madd": 31717, - "madden": 19093, - "maddie": 39959, - "maddie": 18875, - "maddow": 32644, - "maddy": 31734, - "made": 5388, - "made": 1105, - "madein": 13670, - "madeira": 33810, - "madel": 34532, - "madele": 29831, - "madeleine": 33264, - "madeline": 33905, - "madewith": 28627, - "madewithunity": 43190, - "madhu": 23000, - "madhuri": 38346, - "madhuridixit": 43889, - "madhya": 48302, - "madi": 6527, - "madi": 27282, - "madison": 24798, - "madison": 8791, - "madmen": 45452, - "madness": 8755, - "madon": 44852, - "madonna": 14137, - "madra": 27416, - "madras": 42046, - "madre": 42130, - "madri": 5529, - "madrid": 5909, - "mads": 41201, - "madu": 34913, - "madurai": 49159, - "maduro": 32912, - "mae": 16898, - "mae": 17339, - "maer": 47088, - "maestro": 24140, - "mafi": 47164, - "mafia": 14890, - "mag": 1191, - "mag": 4508, - "maga": 8694, - "magaz": 2974, - "magazine": 3113, - "magazines": 22253, - "magdal": 29673, - "mage": 46568, - "mage": 10923, - "magee": 43872, - "magenta": 38091, - "magento": 42442, - "mages": 31059, - "maggi": 29611, - "maggie": 41443, - "maggie": 14524, - "maggio": 49087, - "magh": 45555, - "magi": 19270, - "magic": 13061, - "magic": 3778, - "magical": 36408, - "magical": 7823, - "magician": 26368, - "magin": 42678, - "maging": 41310, - "magn": 10290, - "magna": 34076, - "magne": 9921, - "magnesium": 36379, - "magnet": 18240, - "magnetic": 13838, - "magnets": 33030, - "magni": 24297, - "magnific": 9725, - "magnificent": 10724, - "magnitude": 22955, - "magno": 21184, - "magnolia": 27123, - "magnu": 45198, - "magnum": 23496, - "magnus": 26275, - "magpie": 45973, - "mags": 31021, - "maguire": 26470, - "mah": 7206, - "mah": 10801, - "maha": 12237, - "maha": 33983, - "mahal": 22301, - "mahan": 45191, - "mahar": 11635, - "maharaj": 38488, - "maharashtra": 19328, - "mahat": 32434, - "mahatma": 40530, - "mahe": 15756, - "maher": 29826, - "mahesh": 33448, - "mahesh": 22095, - "mahi": 32529, - "mahi": 38659, - "mahin": 24113, - "mahindra": 31285, - "mahmoud": 41361, - "mahog": 30804, - "mahogany": 33084, - "mahon": 45864, - "mahon": 20371, - "mahone": 26634, - "mai": 7138, - "mai": 14595, - "maia": 46585, - "maid": 23148, - "maid": 10226, - "maidan": 37346, - "maiden": 37011, - "maiden": 13809, - "maids": 27305, - "maidstone": 44395, - "mail": 10478, - "mail": 2614, - "mailbox": 31482, - "mailed": 42314, - "mailing": 26680, - "mailonline": 26021, - "mails": 45213, - "main": 3904, - "main": 2623, - "maine": 18639, - "maine": 7836, - "mained": 15609, - "mainedcm": 15845, - "mainland": 27629, - "mainly": 15280, - "mains": 33656, - "mainst": 42102, - "mainstream": 18034, - "maintain": 12954, - "maintained": 26665, - "maintaining": 21964, - "maintains": 38335, - "mainten": 9399, - "maintenance": 9610, - "mais": 28153, - "maisie": 47355, - "maison": 37065, - "maison": 27626, - "mait": 26387, - "maize": 35386, - "maj": 2948, - "maj": 28723, - "maja": 47498, - "maje": 9852, - "majestic": 15335, - "majesty": 21188, - "major": 8008, - "major": 3350, - "majority": 10508, - "majors": 23597, - "mak": 11271, - "mak": 19253, - "makar": 42242, - "makati": 39402, - "make": 3232, - "make": 1078, - "makeaw": 45859, - "makeinindia": 42739, - "makeit": 26308, - "maken": 47093, - "makeover": 17926, - "maker": 15196, - "maker": 4836, - "makers": 6577, - "makerspace": 42400, - "makes": 2088, - "makeshift": 43274, - "makeu": 41707, - "makeup": 26402, - "makeup": 5853, - "makeyourown": 34090, - "makeyourownlane": 34823, - "maki": 34514, - "makin": 43096, - "makin": 22407, - "making": 17976, - "making": 1665, - "makk": 39852, - "maknae": 44118, - "mako": 49061, - "mal": 1662, - "mal": 3796, - "mala": 28290, - "malade": 36928, - "malaga": 35395, - "malala": 41137, - "malam": 48956, - "malaria": 24929, - "malawi": 23405, - "malay": 5323, - "malay": 42430, - "malayalam": 34860, - "malaysi": 39668, - "malaysia": 8146, - "malaysian": 21136, - "malbec": 47741, - "malcol": 12645, - "malcolm": 14139, - "maldives": 16795, - "male": 11326, - "male": 2801, - "males": 14426, - "malhotra": 28866, - "mali": 6701, - "mali": 22669, - "malia": 46714, - "malibu": 21723, - "malicious": 42147, - "malign": 41122, - "malik": 11394, - "mall": 10984, - "mall": 6220, - "mallorca": 28082, - "mallory": 38968, - "malls": 36447, - "malm": 44071, - "malnutrition": 41153, - "malo": 43518, - "malone": 19852, - "maloney": 45897, - "mals": 25370, - "malt": 21688, - "malta": 16989, - "maltese": 39838, - "malvern": 39356, - "malware": 24153, - "mam": 4404, - "mam": 17778, - "mama": 7133, - "mamamoo": 36012, - "mamas": 42395, - "mamba": 44189, - "mament": 45690, - "mami": 43858, - "mamma": 34893, - "mammal": 33385, - "mammals": 31987, - "mammoth": 28022, - "man": 723, - "man": 786, - "mana": 29467, - "mana": 15837, - "manafort": 40108, - "manag": 1830, - "manage": 9770, - "managed": 7928, - "management": 3319, - "manager": 3898, - "managerial": 44261, - "managers": 12853, - "manages": 29699, - "managing": 10892, - "manas": 44188, - "manatee": 46558, - "mance": 2324, - "manchester": 24424, - "manchester": 4651, - "mancini": 47681, - "mancity": 31538, - "mancrush": 36945, - "mancrushmonday": 39307, - "mand": 4325, - "mand": 27244, - "mandala": 41106, - "mandarin": 26455, - "mandate": 26228, - "mandatory": 19934, - "mandel": 34960, - "mandela": 16280, - "mandi": 38961, - "mandir": 35815, - "mando": 34006, - "mands": 12340, - "mandu": 31440, - "mandy": 41505, - "mandy": 24302, - "mane": 44471, - "mane": 16044, - "maneu": 33216, - "mang": 25616, - "mang": 31096, - "manga": 11873, - "mangal": 43027, - "manger": 48251, - "mango": 43831, - "mango": 13962, - "mangrove": 47180, - "manhatt": 10152, - "manhattan": 10961, - "mani": 5654, - "mani": 10718, - "mania": 8435, - "maniac": 31814, - "maniacs": 41444, - "manian": 40077, - "manic": 23017, - "manic": 37825, - "manicure": 33637, - "manife": 14379, - "manifest": 34422, - "manifestation": 48348, - "manifesto": 20907, - "manil": 38827, - "manila": 10969, - "manipu": 40261, - "manipul": 19237, - "manipulation": 30277, - "manipur": 47757, - "manish": 41759, - "manish": 44720, - "manit": 15693, - "manitoba": 20342, - "manjaro": 41489, - "mankind": 24155, - "manly": 25194, - "mann": 19396, - "mann": 4783, - "manne": 30160, - "manned": 26139, - "mannequin": 43388, - "manner": 20700, - "manners": 31693, - "manning": 15996, - "manny": 37054, - "manny": 20933, - "mano": 15753, - "mano": 24016, - "manoj": 41146, - "manor": 41830, - "manor": 13614, - "mans": 28422, - "mans": 7746, - "mansfield": 25543, - "manship": 15460, - "mansion": 13404, - "manslaughter": 48632, - "manson": 26715, - "mant": 25122, - "mant": 27037, - "manta": 41431, - "mantis": 39946, - "mantle": 22159, - "mantra": 25162, - "manu": 3404, - "manu": 25799, - "manual": 12268, - "manuel": 29171, - "manuel": 9567, - "manufac": 5105, - "manufacture": 27741, - "manufactured": 24010, - "manufacturer": 15668, - "manufacturers": 18763, - "manufacturing": 8386, - "manure": 47907, - "manus": 28181, - "manuscript": 24365, - "manuscripts": 40765, - "manutd": 20994, - "many": 28484, - "many": 1346, - "manziel": 40637, - "mao": 47447, - "mao": 25605, - "maori": 43400, - "map": 25180, - "map": 3923, - "maple": 21980, - "maple": 10570, - "mapleleafs": 41257, - "mapoli": 28768, - "mapp": 36894, - "mapped": 41596, - "mapping": 15231, - "maps": 8765, - "mapu": 42082, - "mar": 675, - "mar": 3091, - "mara": 15655, - "marais": 47913, - "maran": 44732, - "marath": 16274, - "marathi": 34102, - "marathon": 40764, - "marathon": 5910, - "marau": 38475, - "marbella": 36182, - "marble": 45429, - "marble": 13071, - "marbles": 42931, - "marc": 14054, - "marc": 9075, - "marca": 38242, - "marcel": 17726, - "marcel": 24652, - "marcelo": 35939, - "march": 10638, - "march": 2227, - "marche": 36173, - "marched": 37976, - "marches": 38249, - "marchfor": 31721, - "marching": 15082, - "marchmadness": 28555, - "marci": 36698, - "marcia": 41075, - "marck": 47733, - "marco": 24719, - "marco": 10924, - "marcor": 39945, - "marcorubio": 41143, - "marcos": 21696, - "marcu": 20760, - "marcus": 48955, - "marcus": 9895, - "mardi": 39728, - "mardi": 29229, - "mardigras": 43343, - "mare": 26512, - "mare": 8870, - "mares": 19724, - "marg": 44014, - "margar": 16838, - "margare": 10232, - "margaret": 12185, - "margarita": 25958, - "margaritas": 42679, - "margate": 37428, - "margin": 19464, - "margin": 21357, - "marginal": 38320, - "margins": 33763, - "margot": 37144, - "mari": 2603, - "mari": 19322, - "maria": 41109, - "maria": 6595, - "mariachi": 44299, - "mariah": 31214, - "mariah": 24789, - "mariahcarey": 36538, - "marian": 41129, - "marian": 24677, - "mariana": 44224, - "marianne": 32214, - "mariano": 43988, - "marie": 20657, - "marie": 7864, - "marietta": 46634, - "marig": 41002, - "marijuana": 9864, - "maril": 14611, - "marilyn": 38959, - "marilyn": 18489, - "marin": 8910, - "marin": 23992, - "marina": 12060, - "marinated": 33406, - "marine": 20674, - "marine": 5746, - "mariner": 39972, - "mariners": 19086, - "marines": 15018, - "marino": 30878, - "mario": 39176, - "mario": 7600, - "marion": 37765, - "marion": 18397, - "maris": 21512, - "maris": 33093, - "marisa": 42938, - "mariska": 44703, - "marissa": 31219, - "marist": 48223, - "mariti": 13124, - "maritime": 14331, - "marj": 38639, - "mark": 3805, - "mark": 2110, - "marke": 2399, - "marked": 12360, - "marker": 18170, - "markers": 23664, - "market": 11614, - "market": 2196, - "marketer": 33482, - "marketers": 23682, - "marketing": 19535, - "marketing": 2905, - "marketplace": 18241, - "markets": 7292, - "markham": 39817, - "marking": 14705, - "markings": 41046, - "markle": 32672, - "marko": 38338, - "marks": 5466, - "markus": 33725, - "marl": 24922, - "marlborough": 43515, - "marlene": 45117, - "marley": 16504, - "marlin": 34275, - "marlins": 23309, - "marlon": 32995, - "marmalade": 39068, - "marnock": 48305, - "maro": 27029, - "maroon": 20501, - "marqu": 20704, - "marque": 13012, - "marquee": 27725, - "marquette": 37624, - "marquez": 27317, - "marquis": 33530, - "marr": 32871, - "marrake": 37125, - "marrakech": 39006, - "marri": 3839, - "marriage": 38047, - "marriage": 7040, - "marriages": 38190, - "married": 6791, - "marries": 46283, - "marriott": 19211, - "marrow": 31030, - "marry": 13288, - "marrying": 40507, - "mars": 41469, - "mars": 7496, - "marsden": 43344, - "marse": 26577, - "marseille": 30365, - "marsh": 9237, - "marsh": 13505, - "marsha": 21491, - "marshal": 26608, - "marshall": 30939, - "marshall": 9811, - "marshals": 44175, - "marshes": 43450, - "marshmal": 21069, - "marshmallow": 28530, - "marshmallows": 39471, - "mart": 2348, - "mart": 7772, - "marta": 32858, - "martens": 43211, - "marth": 34493, - "martha": 16427, - "marti": 20577, - "martial": 17088, - "martialarts": 35895, - "martian": 30214, - "martin": 6929, - "martin": 3690, - "martina": 34393, - "martinez": 13913, - "marting": 47570, - "martini": 22199, - "martino": 41675, - "martins": 30569, - "marty": 9926, - "marty": 17169, - "martyn": 44075, - "martyr": 36155, - "martyr": 26067, - "martyrdom": 43110, - "martyred": 39114, - "martyrs": 24707, - "maru": 37413, - "maru": 31838, - "marvel": 13835, - "marvel": 5996, - "marvelcomics": 46897, - "marvell": 26576, - "marvellous": 28402, - "marvelous": 25487, - "marvin": 19675, - "marx": 30559, - "marx": 26001, - "marxist": 45205, - "mary": 5146, - "mary": 2676, - "maryam": 33636, - "maryam": 36393, - "maryland": 11379, - "marys": 40905, - "marys": 40228, - "mas": 5226, - "mas": 1412, - "masa": 24995, - "masa": 41868, - "masala": 31483, - "masc": 23564, - "mascar": 46984, - "mascara": 31635, - "mascot": 13983, - "mascots": 43266, - "mascul": 25589, - "masculine": 48269, - "masculinity": 40465, - "mase": 49128, - "maser": 25798, - "maserati": 30442, - "mash": 12317, - "mash": 15680, - "mashable": 41026, - "mashed": 27395, - "mashup": 27079, - "masi": 35965, - "masjid": 31420, - "mask": 19262, - "mask": 8306, - "masked": 25757, - "masking": 47046, - "masks": 19055, - "maslow": 44359, - "mason": 17424, - "mason": 9699, - "masonic": 36491, - "masonry": 30764, - "masons": 37195, - "masqu": 26593, - "masquer": 29604, - "masquerade": 36944, - "mass": 4636, - "mass": 4854, - "massach": 14484, - "massachuse": 14577, - "massachusetts": 14756, - "massacre": 14696, - "massage": 13055, - "masse": 41735, - "masses": 22978, - "massey": 29868, - "massi": 17239, - "massimo": 45821, - "massive": 4818, - "massively": 34297, - "mast": 45916, - "mast": 27920, - "master": 4534, - "master": 3498, - "mastercard": 40542, - "masterchef": 34809, - "masterclass": 17529, - "mastered": 32616, - "masterful": 46823, - "mastering": 28326, - "mastermind": 34029, - "masterpiece": 12066, - "masterpieces": 37596, - "masters": 6913, - "mastery": 34800, - "mastiff": 42311, - "maswar": 47887, - "mat": 905, - "mat": 9063, - "mata": 17270, - "match": 7733, - "match": 2439, - "matcha": 32433, - "matchday": 15947, - "matched": 17792, - "matches": 8609, - "matching": 11840, - "matchup": 19355, - "matchups": 49162, - "mate": 6137, - "mate": 2936, - "mated": 33813, - "mateo": 34991, - "mater": 23724, - "materi": 7084, - "material": 7118, - "materials": 8161, - "maternal": 26131, - "maternity": 23894, - "mates": 5817, - "math": 13277, - "math": 6025, - "mathe": 8725, - "mathemat": 11901, - "mathematical": 25609, - "mathematician": 41036, - "mathematics": 20113, - "mathew": 36333, - "mathews": 37120, - "mathi": 23014, - "mathieu": 40417, - "maths": 14763, - "mati": 12716, - "mati": 32268, - "matic": 36859, - "matic": 7900, - "matically": 38282, - "matics": 23634, - "matil": 26751, - "matilda": 36308, - "matin": 44849, - "matinee": 38525, - "mating": 34346, - "mation": 11701, - "matisse": 43446, - "mato": 13127, - "matologist": 48842, - "matology": 27940, - "matory": 25519, - "matri": 27041, - "matrix": 18078, - "mats": 22259, - "matsu": 30242, - "matt": 7972, - "matt": 3972, - "mattb": 42791, - "matte": 31237, - "matte": 19771, - "mattel": 35365, - "matteo": 33120, - "matter": 30471, - "matter": 3828, - "matters": 5708, - "matth": 41846, - "matthe": 5116, - "matthew": 17588, - "matthew": 7008, - "matthews": 16739, - "matthi": 29853, - "matthias": 45104, - "matti": 39840, - "mattress": 23438, - "matty": 31233, - "matty": 29176, - "matu": 40616, - "matur": 22897, - "mature": 14417, - "maturity": 28047, - "mau": 8134, - "mau": 23033, - "maui": 20463, - "maul": 30725, - "maur": 10574, - "maure": 25191, - "maureen": 31723, - "maurice": 20200, - "mauricio": 39066, - "mauriti": 28406, - "mauritius": 29305, - "mauro": 41691, - "mav": 25697, - "maver": 16700, - "maverick": 27425, - "mavericks": 30092, - "mavs": 30665, - "maw": 39351, - "maw": 42271, - "mawards": 37682, - "max": 4898, - "max": 3902, - "maxi": 8554, - "maxi": 23266, - "maxim": 19892, - "maxim": 38574, - "maximize": 28673, - "maximum": 13162, - "maximus": 44312, - "maxine": 38468, - "maxwell": 19611, - "maxx": 37466, - "may": 1686, - "may": 1270, - "maya": 45783, - "maya": 12987, - "mayan": 37952, - "maybe": 3746, - "mayday": 29957, - "mayer": 21196, - "mayfair": 35171, - "mayfield": 33933, - "mayhem": 21502, - "maymay": 26600, - "maymay": 33853, - "maymayentrata": 30480, - "maynard": 32487, - "mayne": 35771, - "mayo": 22449, - "mayo": 11280, - "mayor": 15429, - "mayor": 4676, - "mayoral": 28983, - "mayorof": 43533, - "mayors": 28501, - "mays": 35445, - "maythe": 42281, - "mayward": 45751, - "mayward": 23519, - "mayweather": 22774, - "maz": 9177, - "maz": 36215, - "mazda": 18506, - "maze": 21988, - "mazz": 29439, - "mañ": 37059, - "mañana": 39354, - "mb": 758, - "mb": 3996, - "mba": 8329, - "mban": 46685, - "mbar": 44452, - "mbb": 10736, - "mbc": 20137, - "mbe": 38395, - "mbe": 27004, - "mber": 5467, - "mber": 1034, - "mberg": 26372, - "mbers": 5443, - "mbi": 45347, - "mble": 20310, - "mble": 4756, - "mbles": 28693, - "mbling": 28604, - "mbo": 25733, - "mbo": 11319, - "mbps": 44896, - "mbs": 10370, - "mbta": 38979, - "mbu": 42228, - "mbuhari": 36752, - "mc": 1278, - "mc": 4126, - "mca": 40570, - "mca": 14635, - "mcal": 28663, - "mcar": 43776, - "mcbride": 35080, - "mcc": 21192, - "mccabe": 37628, - "mccaf": 47385, - "mccain": 20397, - "mccall": 34844, - "mccann": 27140, - "mccar": 9570, - "mccarthy": 16974, - "mccartney": 19958, - "mccl": 24709, - "mccla": 43672, - "mccle": 40139, - "mcclure": 44945, - "mcco": 46152, - "mccon": 32638, - "mccor": 23057, - "mccormack": 45164, - "mccormick": 39088, - "mccoy": 20218, - "mccr": 41996, - "mccre": 25393, - "mccul": 38833, - "mccull": 41782, - "mcd": 28930, - "mcder": 27355, - "mcdermott": 34504, - "mcdon": 12171, - "mcdonald": 10741, - "mcdonalds": 17674, - "mcdonnell": 34360, - "mcdowell": 34119, - "mce": 26864, - "mcel": 28752, - "mcen": 47423, - "mcfad": 36976, - "mcfadden": 42105, - "mcfar": 29020, - "mcfarlane": 47174, - "mcfc": 16416, - "mcfly": 38211, - "mcg": 42507, - "mcg": 27995, - "mcgee": 29223, - "mcgill": 46524, - "mcgill": 35511, - "mcgin": 29596, - "mcgowan": 40462, - "mcgr": 25169, - "mcgra": 29367, - "mcgrath": 28759, - "mcgraw": 40950, - "mcgregor": 19642, - "mcgu": 34294, - "mcguinness": 45299, - "mcguire": 32635, - "mci": 46212, - "mci": 45491, - "mcil": 30481, - "mcin": 18770, - "mcintosh": 45353, - "mcintyre": 33369, - "mck": 6781, - "mckay": 33611, - "mcke": 27424, - "mckee": 43529, - "mcken": 42619, - "mckenna": 24924, - "mckenzie": 25502, - "mckin": 15437, - "mckinley": 39891, - "mckinney": 33554, - "mckinnon": 48736, - "mckinsey": 48143, - "mcl": 49021, - "mcla": 12565, - "mclaren": 37381, - "mclaren": 16789, - "mclau": 32285, - "mclaughlin": 35346, - "mcle": 25299, - "mclean": 28666, - "mcleod": 40259, - "mcm": 12251, - "mcmahon": 24026, - "mcmaster": 42703, - "mcmillan": 45603, - "mcn": 42919, - "mcnam": 32682, - "mcnamara": 37506, - "mcne": 42545, - "mco": 33723, - "mcqueen": 22544, - "mcr": 29884, - "mcr": 16966, - "mcs": 27020, - "mcu": 30403, - "md": 8637, - "md": 4732, - "mdc": 38773, - "mdc": 41761, - "mds": 48746, - "mdt": 40822, - "me": 613, - "me": 614, - "mea": 46045, - "mea": 17711, - "mead": 12134, - "mead": 21567, - "meade": 37218, - "meado": 16402, - "meadow": 25213, - "meadow": 17195, - "meadows": 17178, - "meal": 29662, - "meal": 5478, - "meals": 11229, - "mean": 4189, - "mean": 3450, - "meand": 48015, - "meaning": 14586, - "meaning": 8342, - "meaningful": 17480, - "meaningless": 48932, - "meanings": 45814, - "means": 3494, - "meant": 8674, - "meantime": 27499, - "meanwhile": 9650, - "meas": 5867, - "measles": 38230, - "measurable": 48010, - "measure": 15261, - "measure": 10579, - "measured": 23154, - "measurement": 20973, - "measurements": 29894, - "measures": 11936, - "measuring": 18064, - "meat": 10805, - "meat": 6480, - "meatball": 43642, - "meatballs": 29233, - "meath": 37920, - "meatless": 48085, - "meats": 29558, - "mec": 27432, - "mecca": 36095, - "mech": 38305, - "mechan": 6715, - "mechanic": 24582, - "mechanical": 14467, - "mechanics": 20536, - "mechanism": 22576, - "mechanisms": 28610, - "meck": 41908, - "med": 1948, - "med": 2177, - "meda": 33614, - "medal": 29714, - "medal": 6974, - "medalist": 21040, - "medalists": 43397, - "medalli": 31349, - "medallion": 43469, - "medallist": 41472, - "medals": 14710, - "mede": 48225, - "meded": 27627, - "medi": 1436, - "media": 22064, - "media": 1895, - "mediac": 37490, - "median": 30491, - "mediation": 42829, - "medic": 3602, - "medic": 35441, - "medicaid": 25421, - "medical": 18432, - "medical": 4116, - "medicare": 23710, - "medication": 23771, - "medications": 37181, - "medicinal": 28772, - "medicine": 5616, - "medicines": 26541, - "medics": 46688, - "medieval": 38956, - "medieval": 10789, - "medina": 27281, - "mediocre": 41170, - "medit": 19130, - "meditate": 38039, - "meditation": 10827, - "mediter": 14194, - "mediterran": 14358, - "mediterranean": 15327, - "medium": 8675, - "medley": 24793, - "meds": 25075, - "medtech": 42044, - "medusa": 44216, - "medway": 42286, - "mee": 1725, - "mee": 14075, - "meek": 28935, - "meen": 37940, - "meen": 46515, - "meer": 26714, - "meer": 27555, - "meet": 5714, - "meet": 1633, - "meeting": 48566, - "meeting": 2071, - "meetings": 9980, - "meets": 5972, - "meetthe": 27575, - "meetup": 15430, - "meg": 11500, - "meg": 16186, - "mega": 15979, - "mega": 9068, - "megab": 38103, - "megadeth": 46741, - "megal": 37650, - "megam": 26073, - "megan": 19127, - "megan": 11503, - "megap": 33624, - "megat": 35581, - "megh": 31192, - "meghan": 39939, - "meghan": 18261, - "meh": 10512, - "meh": 22211, - "mehta": 25031, - "mei": 22564, - "mei": 25198, - "meier": 29812, - "mein": 28857, - "mein": 21466, - "meister": 28407, - "mek": 44645, - "mel": 1902, - "mel": 6834, - "mela": 35032, - "melan": 22261, - "melanch": 44818, - "melancholy": 47821, - "melani": 34031, - "melania": 32796, - "melanie": 22153, - "melanoma": 40862, - "melb": 47007, - "melb": 28980, - "melbourne": 28387, - "melbourne": 6995, - "melee": 45108, - "meli": 28885, - "melinda": 46303, - "melis": 18913, - "melissa": 41866, - "melissa": 13030, - "mell": 22531, - "mell": 41583, - "mello": 47594, - "mellon": 45162, - "mellow": 32034, - "melo": 10354, - "melo": 22374, - "melodic": 41877, - "melodies": 38412, - "melody": 19119, - "melon": 12146, - "melrose": 36296, - "melt": 22209, - "melt": 15957, - "meltdown": 30613, - "melted": 23037, - "melting": 19247, - "melton": 46062, - "melts": 31446, - "melville": 46030, - "melvin": 31544, - "mely": 6373, - "mem": 4937, - "mem": 34944, - "memb": 2114, - "member": 29566, - "member": 1640, - "members": 2567, - "membership": 11562, - "membrane": 34088, - "meme": 35157, - "meme": 9169, - "memes": 12828, - "memo": 15967, - "memo": 19334, - "memoir": 20532, - "memoirs": 45311, - "memor": 1858, - "memorab": 26271, - "memorabilia": 27488, - "memorable": 13172, - "memorial": 16285, - "memorial": 4642, - "memorialday": 21598, - "memoriam": 48191, - "memories": 4304, - "memory": 44766, - "memory": 5137, - "memph": 10285, - "memphis": 38432, - "memphis": 11298, - "men": 1552, - "men": 1656, - "mena": 23052, - "menace": 29949, - "mend": 8151, - "mend": 46927, - "mendel": 49268, - "mendes": 18060, - "mendez": 48275, - "mendo": 19327, - "mendoza": 23680, - "meng": 37102, - "meng": 37450, - "mening": 46428, - "menon": 38255, - "menopau": 34974, - "menopause": 46026, - "mens": 16924, - "mens": 10495, - "mensfashion": 27578, - "menstru": 28345, - "menstrual": 40915, - "menswear": 18803, - "ment": 1585, - "ment": 777, - "mental": 8611, - "mental": 3448, - "mentalhealth": 20593, - "mentalhealth": 13022, - "mentality": 26647, - "mentally": 14307, - "mentary": 4468, - "mentation": 9512, - "mentday": 40397, - "mente": 40302, - "mente": 36396, - "mented": 9249, - "menting": 14471, - "mention": 43881, - "mention": 6762, - "mentioned": 11948, - "mentioning": 34290, - "mentions": 12334, - "mento": 30582, - "mentor": 45342, - "mentor": 11642, - "mentoring": 19610, - "mentors": 20945, - "mentorship": 33878, - "ments": 1827, - "menu": 6225, - "menus": 33534, - "meo": 30792, - "meow": 39965, - "meow": 17246, - "mep": 27095, - "mer": 1316, - "mer": 2452, - "mera": 20028, - "merc": 34357, - "merc": 44399, - "mercado": 45479, - "merce": 8409, - "mercede": 34959, - "mercedes": 26403, - "mercedes": 10685, - "mercedesam": 40107, - "mercedesbenz": 32347, - "mercen": 40301, - "mercer": 21632, - "merch": 11504, - "merchandi": 14954, - "merchandise": 16808, - "merchandising": 49196, - "merchant": 19563, - "merchants": 34427, - "merci": 23364, - "merci": 29378, - "mercur": 11471, - "mercury": 45203, - "mercury": 12653, - "mercy": 33249, - "mercy": 10815, - "mere": 29657, - "mere": 10342, - "mered": 24657, - "mered": 32297, - "meredith": 25103, - "merely": 28718, - "merge": 30406, - "merged": 46492, - "merger": 24744, - "merging": 49256, - "meri": 17993, - "meri": 36109, - "meria": 48433, - "meric": 27097, - "merica": 30561, - "meridi": 37901, - "meridian": 31195, - "mering": 41060, - "meringue": 41661, - "merino": 42648, - "merit": 20830, - "merkel": 24715, - "merle": 48586, - "merlin": 26517, - "merlot": 40424, - "mermaid": 16064, - "mermaids": 43617, - "mero": 19097, - "merr": 48288, - "merri": 21462, - "merrill": 47713, - "merritt": 36462, - "merry": 14167, - "merry": 5779, - "merrychristmas": 19672, - "mers": 4199, - "mersal": 36711, - "mersey": 25248, - "mersey": 46239, - "merseyside": 35382, - "mert": 48496, - "merton": 35315, - "mery": 40873, - "meryl": 35787, - "mes": 28432, - "mes": 3029, - "mesa": 18956, - "mese": 42018, - "mesh": 15030, - "mesm": 18695, - "mesmer": 38435, - "mesmeri": 25985, - "mesmerizing": 35637, - "meso": 25537, - "mesqu": 46819, - "mess": 2490, - "mess": 8188, - "message": 3918, - "messages": 9390, - "messaging": 23234, - "messe": 40391, - "messed": 23580, - "messenger": 17389, - "messi": 19394, - "messi": 11252, - "messiah": 28737, - "messing": 23144, - "messy": 15987, - "mest": 23780, - "mester": 47349, - "mesut": 49177, - "met": 5249, - "met": 2340, - "meta": 14803, - "meta": 22701, - "metab": 16150, - "metabol": 48389, - "metaboli": 25573, - "metabolic": 34311, - "metabolism": 27824, - "metal": 8935, - "metal": 4044, - "metall": 19084, - "metallic": 17257, - "metallica": 24079, - "metals": 21375, - "metam": 28862, - "metamor": 39030, - "metamorpho": 47601, - "metaph": 24189, - "metaphor": 34233, - "metast": 41973, - "mete": 11226, - "meteor": 26429, - "meteor": 26823, - "meteoro": 25948, - "meteorologist": 42849, - "meter": 10104, - "meters": 13247, - "metgala": 30089, - "meth": 21867, - "meth": 26177, - "methane": 37565, - "metho": 5770, - "method": 10284, - "methodist": 25165, - "methodo": 28488, - "methodology": 37316, - "methods": 12200, - "methyl": 48999, - "metmuseum": 28207, - "meto": 25679, - "metoo": 24722, - "metr": 15086, - "metre": 27889, - "metres": 19798, - "metric": 19950, - "metrical": 40704, - "metrics": 24396, - "metro": 7257, - "metro": 6784, - "metroid": 39957, - "metropolis": 40476, - "metropolitan": 19013, - "metry": 20039, - "mets": 9633, - "mett": 28081, - "metz": 40506, - "meu": 34520, - "mew": 40368, - "mex": 3213, - "mex": 18387, - "mexic": 31728, - "mexican": 37442, - "mexican": 8186, - "mexicans": 47729, - "mexico": 31834, - "mexico": 4604, - "mey": 28584, - "mey": 27777, - "meyer": 13963, - "meyers": 32326, - "mez": 30615, - "mez": 46833, - "mezz": 38771, - "mf": 18199, - "mf": 11067, - "mfa": 24107, - "mfc": 39474, - "mfg": 21912, - "mfw": 27309, - "mg": 10003, - "mg": 8014, - "mga": 23954, - "mgm": 27572, - "mgmt": 22288, - "mgr": 31500, - "mgs": 48073, - "mgt": 48663, - "mh": 9962, - "mh": 10834, - "mha": 41944, - "mhealth": 41225, - "mhs": 28815, - "mhz": 31550, - "mi": 714, - "mi": 2251, - "mia": 5852, - "miam": 31053, - "miami": 15106, - "miami": 4891, - "mian": 24792, - "miaw": 36046, - "mib": 48178, - "mic": 1213, - "mic": 3816, - "mica": 41551, - "micah": 33870, - "mice": 19030, - "mich": 25628, - "mich": 23029, - "micha": 2083, - "michael": 6051, - "michael": 2511, - "michaela": 41897, - "michaeljackson": 33532, - "michaels": 23868, - "michal": 47144, - "miche": 37966, - "micheal": 43709, - "michel": 5158, - "michel": 17153, - "michelangelo": 41245, - "michele": 20642, - "michelin": 26330, - "michelle": 19028, - "michelle": 8625, - "michi": 5658, - "michigan": 32344, - "michigan": 6296, - "mick": 15171, - "mick": 12592, - "mickey": 41813, - "mickey": 13053, - "micky": 43011, - "micro": 3160, - "micro": 11374, - "microbes": 44671, - "microbi": 19496, - "microbial": 30335, - "microbiology": 35348, - "microbiome": 35148, - "micron": 48742, - "microphone": 24643, - "micropoetry": 35997, - "microscope": 29114, - "microscopy": 38431, - "microsof": 42424, - "microsoft": 38650, - "microsoft": 7254, - "microwave": 24240, - "mics": 16554, - "mid": 2192, - "mid": 4734, - "midcentury": 48988, - "midd": 2983, - "midday": 23390, - "middle": 9849, - "middle": 3694, - "middleeast": 32783, - "middles": 29769, - "middlesbrough": 32436, - "middlesex": 39154, - "middleton": 23627, - "middleweight": 35829, - "midfield": 28116, - "midfielder": 13423, - "midget": 30734, - "midi": 39496, - "midi": 27326, - "midland": 24822, - "midlands": 18062, - "midnight": 35746, - "midnight": 6302, - "mids": 40821, - "midst": 24752, - "midsummer": 35234, - "midterm": 34365, - "midterms": 32015, - "midtown": 26069, - "midway": 26536, - "midweek": 29120, - "midwest": 16627, - "midwi": 44802, - "midwife": 37681, - "midwives": 42355, - "mie": 20865, - "mie": 10555, - "miento": 46482, - "mier": 36490, - "mies": 8840, - "miff": 49398, - "mig": 28743, - "might": 2727, - "mighty": 26632, - "mighty": 7815, - "mign": 41678, - "migos": 44640, - "migr": 3736, - "migra": 28186, - "migraine": 35360, - "migrant": 18902, - "migrants": 15814, - "migrate": 41804, - "migrating": 43604, - "migration": 11891, - "migu": 12279, - "miguel": 33672, - "miguel": 14436, - "miho": 46870, - "mii": 39896, - "mik": 15096, - "mik": 46203, - "mika": 28609, - "mika": 25185, - "mike": 5884, - "mike": 3178, - "mikel": 48865, - "mikequind": 33508, - "mikequindazzi": 33551, - "mikey": 34934, - "mikey": 23368, - "mikha": 30999, - "mikhail": 38327, - "miki": 48863, - "miko": 35413, - "miku": 37703, - "mil": 1469, - "mil": 12826, - "mila": 26183, - "milan": 30380, - "milan": 8552, - "milano": 18585, - "milb": 42248, - "mild": 16085, - "mildly": 49059, - "mile": 7833, - "mile": 6243, - "mileage": 30579, - "miler": 44680, - "miles": 3446, - "milestone": 13485, - "milestones": 34025, - "miley": 25336, - "miley": 14321, - "mileycyrus": 28528, - "milf": 45386, - "milford": 35840, - "mili": 16698, - "miliband": 41440, - "milit": 3715, - "militant": 33629, - "militants": 23974, - "military": 24498, - "military": 4323, - "militi": 46625, - "militia": 32114, - "milk": 13409, - "milk": 5205, - "milkshake": 29066, - "milky": 37320, - "milky": 21120, - "milkyway": 43246, - "mill": 4221, - "mill": 6637, - "milla": 49381, - "millan": 34930, - "millan": 22188, - "millar": 41851, - "mille": 34066, - "millen": 48501, - "millenni": 10406, - "millennial": 28357, - "millennials": 18804, - "millennium": 21116, - "miller": 21699, - "miller": 5733, - "milli": 5340, - "millie": 29283, - "milling": 39133, - "million": 13154, - "million": 2506, - "millionaire": 25179, - "millionaires": 47159, - "millions": 8492, - "mills": 10331, - "millwall": 35902, - "milly": 45794, - "milne": 44590, - "milner": 45230, - "milo": 24548, - "milton": 39004, - "milton": 17360, - "milwau": 13452, - "milwaukee": 14259, - "mim": 39379, - "mimi": 27086, - "mimic": 47116, - "mimic": 46519, - "mimo": 45551, - "min": 771, - "min": 3331, - "mina": 15281, - "minaj": 25136, - "minal": 40222, - "minat": 33275, - "mince": 32396, - "mind": 5890, - "mind": 2575, - "mindanao": 44228, - "minded": 21330, - "mindful": 28457, - "mindfulness": 15707, - "minding": 45337, - "minds": 9244, - "mindset": 14217, - "mindy": 46875, - "mindy": 38551, - "mine": 20149, - "mine": 3347, - "minecraft": 15678, - "mined": 48034, - "minent": 12533, - "miner": 14109, - "miner": 26572, - "mineral": 17692, - "minerals": 21169, - "miners": 22119, - "mines": 16211, - "ming": 10868, - "ming": 2107, - "mingham": 7590, - "mingle": 38437, - "mingly": 36909, - "mington": 49283, - "mington": 23119, - "minh": 48734, - "minho": 21318, - "mini": 1810, - "mini": 3954, - "miniature": 44298, - "miniature": 16377, - "miniatures": 38816, - "minic": 31522, - "minim": 10005, - "minimal": 18458, - "minimalism": 42594, - "minimalist": 26641, - "minimize": 38697, - "minimum": 12244, - "minindia": 28458, - "mining": 8473, - "minion": 28622, - "minions": 27035, - "minis": 33409, - "minis": 35976, - "minister": 25688, - "minister": 3569, - "ministerial": 33008, - "ministers": 16406, - "ministries": 27895, - "ministry": 8742, - "mink": 42017, - "minn": 45991, - "minn": 47318, - "minne": 7083, - "minneapolis": 16977, - "minneso": 9380, - "minnesota": 9968, - "minnie": 24493, - "mino": 22791, - "minogue": 44202, - "minor": 8522, - "minorities": 28119, - "minority": 16210, - "minors": 36789, - "mins": 6196, - "minsk": 46151, - "minster": 11189, - "mint": 48084, - "mint": 7506, - "minted": 49377, - "minton": 20050, - "minu": 29064, - "minus": 15358, - "minute": 28931, - "minute": 4497, - "minutes": 3056, - "mio": 26366, - "mir": 2750, - "mir": 6585, - "mira": 21665, - "mira": 22762, - "mirac": 13685, - "miracle": 49208, - "miracle": 11543, - "miracles": 23478, - "miraculous": 38671, - "mirage": 28679, - "mirai": 49060, - "mirand": 32367, - "miranda": 17590, - "mire": 38140, - "mire": 30140, - "miri": 22273, - "miriam": 30950, - "miro": 34851, - "miro": 48317, - "mirren": 47600, - "mirro": 48500, - "mirror": 29823, - "mirror": 7220, - "mirrors": 21823, - "mirza": 36440, - "mis": 866, - "mis": 11239, - "mischief": 33896, - "misconceptions": 48681, - "misconduct": 30601, - "mise": 46567, - "mise": 17267, - "miser": 33394, - "miserable": 26196, - "misery": 28360, - "mises": 24390, - "misfits": 42708, - "mish": 15494, - "mish": 20981, - "misha": 35434, - "mishra": 33042, - "misleading": 30862, - "mism": 15948, - "miso": 27657, - "miso": 33441, - "misogy": 31315, - "misogyny": 48415, - "miss": 6984, - "miss": 1526, - "missal": 38337, - "missed": 3955, - "misses": 15844, - "missi": 3008, - "missile": 14411, - "missiles": 27868, - "missin": 36209, - "missing": 23509, - "missing": 3423, - "mission": 12738, - "mission": 2406, - "missionaries": 40580, - "missionary": 27915, - "missions": 6990, - "mississ": 26483, - "mississauga": 28393, - "mississi": 11687, - "mississippi": 12232, - "missou": 30710, - "missoula": 48549, - "missouri": 11835, - "missuni": 26347, - "missuniverse": 28766, - "missy": 48105, - "missy": 31515, - "missyou": 45799, - "mist": 12610, - "mist": 11946, - "mistak": 20478, - "mistake": 11303, - "mistaken": 29182, - "mistakenly": 48494, - "mistakes": 12824, - "mister": 26949, - "mister": 18895, - "mistle": 46800, - "mistletoe": 48569, - "mistre": 42039, - "mistress": 24349, - "mists": 28636, - "misty": 18799, - "misunderstood": 41574, - "misuse": 40970, - "mit": 3303, - "mit": 4551, - "mita": 47514, - "mitage": 27964, - "mitch": 6969, - "mitch": 14150, - "mitchell": 39339, - "mitchell": 9007, - "mite": 26929, - "mith": 21752, - "mith": 17948, - "miti": 17857, - "mitigate": 42273, - "mitigation": 35514, - "mito": 38254, - "mitochondri": 42132, - "mitra": 47703, - "mits": 24086, - "mitsu": 17905, - "mitsubi": 21604, - "mitsubishi": 23030, - "mitt": 17321, - "mitt": 21341, - "mitted": 10307, - "mitting": 27938, - "mitz": 41827, - "mium": 35891, - "miwx": 43941, - "mix": 3210, - "mix": 3285, - "mixed": 29376, - "mixed": 6780, - "mixer": 17200, - "mixers": 39175, - "mixes": 19061, - "mixing": 15588, - "mixtape": 11044, - "mixture": 28286, - "miy": 25695, - "miya": 36257, - "miz": 20881, - "miz": 30795, - "mize": 19076, - "mized": 43418, - "mizing": 38715, - "mizz": 19985, - "mizzou": 26165, - "mj": 13117, - "mj": 14733, - "mk": 11581, - "mk": 8937, - "mke": 36642, - "mkt": 24814, - "ml": 3627, - "ml": 5780, - "mla": 16723, - "mlas": 48464, - "mlb": 21039, - "mlb": 7482, - "mley": 40329, - "mlg": 45801, - "mlin": 24556, - "mlk": 17941, - "mlkday": 39905, - "mlm": 37611, - "mln": 18971, - "mlp": 23620, - "mlpfi": 45475, - "mlpfim": 45640, - "mls": 13077, - "mm": 1028, - "mm": 2848, - "mma": 34140, - "mma": 6096, - "mmc": 44253, - "mme": 13105, - "mmed": 19570, - "mmer": 35717, - "mmer": 7508, - "mmers": 28128, - "mmes": 42862, - "mmi": 34147, - "mming": 21038, - "mming": 16507, - "mmings": 31357, - "mmit": 41050, - "mmj": 43015, - "mmm": 37908, - "mmm": 7641, - "mmmm": 36312, - "mmmm": 13180, - "mmmmm": 21808, - "mmmmmm": 43740, - "mmo": 30418, - "mmon": 41131, - "mmor": 36657, - "mmorpg": 39476, - "mms": 37803, - "mmva": 42666, - "mmy": 28837, - "mmy": 8722, - "mn": 5086, - "mn": 4057, - "mna": 34877, - "mnd": 44776, - "mnet": 34129, - "mnf": 41105, - "mnl": 32980, - "mnleg": 42653, - "mns": 39040, - "mnt": 21477, - "mntwins": 45448, - "mnwild": 39044, - "mnwx": 39592, - "mo": 617, - "mo": 2080, - "moa": 33174, - "moana": 43241, - "mob": 2818, - "mob": 12754, - "mobi": 9451, - "mobil": 26343, - "mobil": 29815, - "mobile": 12935, - "mobile": 3451, - "mobiles": 44302, - "mobili": 20770, - "mobility": 12546, - "mobilization": 48916, - "moby": 47219, - "moc": 41439, - "moc": 36992, - "mocha": 28425, - "mochi": 47973, - "mock": 15641, - "mock": 12759, - "mocked": 47400, - "mocking": 28692, - "mocking": 37870, - "mocks": 35142, - "mod": 6362, - "mod": 10893, - "moda": 25814, - "modal": 33157, - "mode": 20402, - "mode": 6493, - "model": 4591, - "model": 2863, - "modeled": 39527, - "modeling": 13706, - "modelling": 19946, - "models": 6176, - "moder": 2894, - "moderate": 16435, - "moderated": 27928, - "moderating": 34242, - "moderator": 32659, - "modern": 11706, - "modern": 4077, - "modernart": 34417, - "moderni": 24328, - "modernism": 39601, - "modernist": 36773, - "modernization": 47294, - "modes": 30454, - "modest": 25436, - "modi": 9047, - "modi": 7774, - "modification": 37630, - "modified": 17964, - "modo": 36820, - "mods": 23843, - "modu": 9036, - "modular": 22437, - "module": 16757, - "modules": 30575, - "moe": 38655, - "moe": 17938, - "mof": 30798, - "moff": 27160, - "mog": 42362, - "moga": 41732, - "mogadishu": 45133, - "mogul": 41320, - "moh": 18979, - "moh": 35388, - "moha": 46892, - "moham": 7923, - "mohamed": 18472, - "mohammad": 19926, - "mohammed": 16168, - "mohan": 26521, - "mohan": 23586, - "mohawk": 34942, - "mohd": 49094, - "mohsin": 48861, - "moi": 20691, - "moi": 21825, - "moil": 30349, - "moines": 32091, - "moist": 19831, - "moist": 33263, - "moisture": 20412, - "moisturi": 25942, - "moj": 34505, - "moja": 49055, - "mojito": 46830, - "mojo": 25204, - "mok": 49146, - "mol": 4246, - "mol": 31582, - "mold": 21846, - "molding": 46274, - "moldova": 47317, - "mole": 9927, - "mole": 23529, - "molecular": 19370, - "molecule": 39233, - "molecules": 35643, - "molina": 34201, - "mollie": 48203, - "molly": 24368, - "molly": 12573, - "molo": 41510, - "mology": 32255, - "molten": 46071, - "moly": 47083, - "mom": 1614, - "mom": 2543, - "moma": 33605, - "mombasa": 40340, - "moment": 12197, - "moment": 2495, - "momento": 30078, - "moments": 5251, - "momentum": 15722, - "momlife": 43825, - "momma": 14508, - "mommy": 12456, - "momo": 48490, - "momo": 25980, - "moms": 28446, - "moms": 10042, - "momsdemand": 33744, - "mon": 749, - "mon": 2173, - "mona": 19143, - "monaco": 14938, - "monaghan": 39797, - "monarch": 27235, - "monarch": 22619, - "monarchs": 36750, - "monarchy": 47503, - "monaster": 19422, - "monastery": 21850, - "monc": 34847, - "moncton": 44962, - "mond": 14522, - "mond": 4475, - "monday": 6205, - "monday": 2098, - "mondaymorning": 40089, - "mondaymotiv": 45488, - "mondaymotivation": 8198, - "mondaymotivaton": 47034, - "mondays": 13815, - "monde": 29339, - "mondo": 36207, - "monds": 20317, - "mone": 25990, - "monet": 24499, - "monetary": 26394, - "moneti": 38056, - "money": 12743, - "money": 2327, - "mong": 43566, - "monger": 38928, - "mongers": 27670, - "mongo": 20680, - "mongolia": 27144, - "mongolian": 46335, - "moni": 46851, - "monia": 31161, - "monic": 30893, - "monica": 13540, - "monit": 9014, - "monitor": 10198, - "monitored": 45828, - "monitoring": 11030, - "monitors": 30478, - "monk": 30557, - "monk": 16424, - "monkey": 29597, - "monkey": 9465, - "monkeys": 15781, - "monks": 29090, - "monmouth": 36929, - "mono": 8220, - "mono": 22537, - "monochrome": 25576, - "monogram": 39665, - "monologue": 47776, - "monopoly": 25241, - "monoxide": 49314, - "monro": 45750, - "monroe": 13625, - "mons": 19885, - "monsanto": 37592, - "monsi": 46677, - "monsieur": 48879, - "monsoon": 18872, - "monsta": 30718, - "monstax": 45631, - "monste": 47045, - "monster": 14454, - "monster": 6060, - "monsters": 11546, - "mont": 5186, - "mont": 5382, - "montag": 37202, - "montage": 32325, - "montal": 42126, - "montan": 28405, - "montana": 11436, - "monte": 8711, - "monte": 14667, - "montene": 28538, - "montenegro": 30378, - "monter": 36673, - "monterey": 23388, - "monterrey": 45254, - "montess": 43205, - "montessori": 45443, - "montgom": 13852, - "montgomery": 14951, - "month": 7680, - "month": 1924, - "monthly": 8764, - "months": 3109, - "monthsary": 42420, - "monton": 41961, - "montp": 39523, - "montre": 8434, - "montreal": 9262, - "montrose": 42347, - "monty": 43997, - "monty": 24038, - "monu": 9748, - "monument": 12019, - "monumental": 31297, - "monuments": 26916, - "mony": 4117, - "monza": 40380, - "moo": 4953, - "moo": 24626, - "mood": 42358, - "mood": 5394, - "moods": 43727, - "moody": 17170, - "moom": 36887, - "moon": 6334, - "moon": 3293, - "mooney": 37942, - "moonlight": 20001, - "moons": 29887, - "moonshine": 46706, - "moor": 14817, - "moor": 11877, - "moore": 28613, - "moore": 6708, - "moors": 32577, - "moose": 37562, - "moose": 17338, - "moot": 46895, - "mop": 33900, - "mopar": 41166, - "mor": 657, - "mor": 18614, - "mora": 29262, - "moral": 11246, - "morale": 39404, - "morales": 27117, - "morality": 34133, - "morally": 42519, - "morals": 46223, - "moran": 21557, - "moray": 44569, - "more": 5434, - "more": 750, - "morecam": 37305, - "morecambe": 43414, - "mored": 20195, - "moreland": 44135, - "moreno": 24826, - "morethan": 30889, - "morg": 34284, - "morgan": 15432, - "morgan": 6075, - "morgen": 35106, - "mori": 25710, - "mori": 29514, - "moris": 43131, - "moritz": 45594, - "morley": 40439, - "mormon": 27715, - "morn": 22393, - "mornin": 28327, - "morning": 10769, - "morning": 1119, - "mornings": 12106, - "moro": 31613, - "moroc": 11996, - "moroccan": 27546, - "morocco": 15228, - "moron": 31875, - "morons": 46477, - "morow": 40779, - "morph": 23915, - "morph": 41700, - "morphe": 38978, - "morpho": 38622, - "morrha": 43044, - "morri": 9876, - "morris": 22560, - "morris": 9090, - "morrison": 40961, - "morrison": 14094, - "morrisons": 40965, - "morrissey": 30040, - "morro": 48363, - "morrow": 21611, - "mors": 13064, - "morse": 25282, - "mort": 24257, - "mort": 30583, - "mortal": 31883, - "mortal": 14680, - "mortality": 20347, - "mortar": 27258, - "mortg": 12069, - "mortgage": 13988, - "mortgages": 45391, - "mortimer": 47836, - "morton": 20698, - "morty": 37391, - "mory": 22633, - "mos": 28658, - "mos": 9593, - "mosa": 14164, - "mosa": 23809, - "mosaic": 17506, - "mosch": 47003, - "mosco": 9840, - "moscow": 10371, - "moseley": 47080, - "moses": 18451, - "mosley": 46228, - "mosqu": 15215, - "mosque": 12694, - "mosques": 41214, - "mosquit": 39699, - "mosquito": 25083, - "mosquitoes": 41870, - "moss": 25107, - "moss": 12815, - "most": 7034, - "most": 1096, - "mostly": 8829, - "mosul": 29165, - "mot": 16352, - "mot": 15452, - "mota": 42499, - "motd": 46232, - "motel": 26191, - "moth": 33208, - "moth": 11736, - "mother": 7455, - "mother": 3050, - "motherhood": 32274, - "motherland": 46774, - "mothers": 10546, - "mothersday": 15583, - "motherwell": 48104, - "moths": 29086, - "moti": 38210, - "motif": 35373, - "motion": 32139, - "motion": 7860, - "motiv": 3183, - "motivate": 26771, - "motivated": 16521, - "motivates": 44684, - "motivating": 37720, - "motivation": 26117, - "motivation": 4193, - "motivational": 32832, - "motivational": 20472, - "motivationmonday": 28703, - "motive": 36669, - "motley": 42553, - "motm": 41192, - "moto": 10646, - "moto": 11431, - "motocross": 34562, - "motogp": 16615, - "motor": 3975, - "motor": 7659, - "motorbike": 33341, - "motorcycle": 10297, - "motorcycles": 24869, - "motoring": 44491, - "motorists": 32766, - "motorola": 33738, - "motors": 14989, - "motorsport": 18371, - "motorsports": 24264, - "motorway": 31808, - "motown": 32685, - "mott": 44570, - "mott": 21708, - "motto": 23338, - "mou": 2809, - "mou": 25289, - "moud": 37698, - "moul": 25725, - "mould": 36743, - "moulin": 47656, - "moun": 2023, - "mound": 21414, - "mount": 20553, - "mount": 5532, - "mountain": 14547, - "mountain": 3965, - "mountaine": 24841, - "mountaineer": 49255, - "mountains": 5873, - "mounted": 17897, - "mounting": 29910, - "mounts": 36767, - "mour": 9053, - "mour": 42446, - "moured": 29555, - "mourinho": 18536, - "mourn": 33592, - "mourning": 24169, - "mourns": 42811, - "mous": 24837, - "mous": 17425, - "mouse": 33032, - "mouse": 9301, - "mousse": 31869, - "moustache": 32795, - "mouth": 15152, - "mouth": 4932, - "mouths": 38518, - "mov": 23950, - "move": 16624, - "move": 2783, - "moved": 6997, - "movember": 23474, - "movement": 5208, - "movements": 19665, - "mover": 37673, - "movers": 33957, - "moves": 6880, - "movi": 1707, - "movic": 43838, - "movie": 11247, - "movie": 2016, - "movies": 4772, - "moving": 32160, - "moving": 3584, - "mow": 31006, - "mow": 36329, - "mower": 30895, - "mowing": 46424, - "mowx": 44263, - "moy": 27276, - "moy": 34205, - "moyes": 37119, - "moz": 14761, - "moz": 43738, - "mozam": 26648, - "mozambique": 28831, - "mozart": 22132, - "mozz": 26317, - "mozzarella": 27845, - "mp": 1037, - "mp": 1246, - "mpa": 30749, - "mpc": 38560, - "mpd": 33814, - "mped": 28134, - "mper": 22803, - "mpg": 39830, - "mpg": 37454, - "mpgvip": 42149, - "mph": 5306, - "mpi": 43263, - "mping": 27999, - "mple": 21139, - "mplo": 47071, - "mpls": 34298, - "mpo": 33674, - "mpp": 39570, - "mps": 5504, - "mption": 9717, - "mpton": 27448, - "mpu": 47156, - "mpus": 25864, - "mpy": 17192, - "mq": 19103, - "mqm": 24687, - "mr": 3139, - "mr": 1982, - "mra": 44568, - "mrc": 25897, - "mri": 24773, - "mrs": 25003, - "mrs": 4255, - "mrt": 30256, - "mru": 22370, - "mrw": 15303, - "ms": 3525, - "ms": 988, - "msa": 36306, - "msc": 31826, - "msc": 20529, - "msd": 25804, - "msd": 36407, - "msdhoni": 32850, - "msf": 36239, - "msg": 44430, - "msg": 10928, - "msh": 41751, - "msi": 43597, - "msi": 45278, - "msk": 38501, - "msl": 42736, - "msm": 22210, - "msn": 18824, - "msn": 41042, - "msnbc": 20245, - "mson": 27773, - "mson": 12298, - "msp": 41445, - "msp": 22318, - "mss": 42136, - "mss": 48610, - "mst": 26335, - "msu": 26763, - "msu": 17298, - "mswx": 42957, - "msy": 43919, - "mt": 4252, - "mt": 3284, - "mta": 28691, - "mtb": 48306, - "mtb": 18747, - "mtc": 42482, - "mtg": 49142, - "mtg": 13648, - "mth": 48151, - "mtl": 22135, - "mtn": 26041, - "mtn": 18953, - "mtr": 46650, - "mts": 38751, - "mtv": 8099, - "mtv": 12555, - "mtvbr": 47258, - "mtvhottest": 16751, - "mtvstars": 19948, - "mu": 670, - "mu": 6411, - "mua": 21395, - "muay": 44910, - "muaythai": 47763, - "mubarak": 17957, - "muc": 49115, - "much": 14300, - "much": 1238, - "mucha": 42191, - "muchas": 26278, - "mucho": 19864, - "muck": 44731, - "muck": 45330, - "mud": 17491, - "mud": 11673, - "mudder": 49104, - "muddy": 21524, - "mue": 44383, - "mue": 40717, - "mueller": 46863, - "mueller": 14719, - "muen": 48646, - "muer": 33840, - "muf": 33852, - "mufc": 9013, - "muffin": 22696, - "muffins": 25922, - "mufti": 44930, - "mug": 16339, - "mug": 9722, - "mugabe": 36441, - "mughal": 37508, - "mugs": 22852, - "mugshot": 40028, - "muh": 36335, - "muh": 46475, - "muham": 10043, - "muhammad": 12259, - "muir": 44650, - "muir": 24745, - "muj": 44635, - "muk": 17327, - "muk": 32600, - "mukher": 34575, - "mukherjee": 37862, - "mul": 1899, - "mul": 43193, - "mula": 40937, - "mulator": 17463, - "mulberry": 39221, - "mule": 28695, - "mull": 17313, - "mull": 35310, - "mulled": 44641, - "mullen": 30797, - "muller": 33956, - "mullet": 35010, - "mulligan": 44336, - "mullins": 41265, - "mult": 34219, - "multi": 3947, - "multi": 6400, - "multic": 21683, - "multicul": 28004, - "multicultural": 34667, - "multil": 27975, - "multimedia": 27977, - "multin": 38996, - "multinational": 46540, - "multip": 40314, - "multiplayer": 27460, - "multiple": 6470, - "multipurpose": 47665, - "multit": 27814, - "multitasking": 48684, - "mulus": 26180, - "mum": 15565, - "mum": 4030, - "mumb": 5850, - "mumbai": 24279, - "mumbai": 6971, - "mumford": 46184, - "mummy": 16301, - "mums": 17868, - "mun": 2617, - "mun": 21059, - "muna": 48424, - "munch": 23587, - "munch": 33299, - "munchies": 44324, - "munchkin": 41305, - "mund": 14244, - "mundo": 20990, - "muni": 27327, - "muni": 39795, - "munich": 13526, - "munici": 12159, - "municipal": 43667, - "municipal": 16600, - "municipality": 29987, - "munition": 32668, - "munro": 36501, - "munster": 27201, - "mup": 21966, - "muppet": 40598, - "muppets": 40187, - "mups": 42195, - "mur": 2144, - "mur": 18293, - "mura": 45176, - "mural": 12315, - "murals": 31499, - "murder": 28136, - "murder": 5787, - "murdered": 13158, - "murderer": 26956, - "murderers": 48472, - "murdering": 36055, - "murders": 22409, - "murdoch": 29037, - "murphy": 48976, - "murphy": 8914, - "murray": 31978, - "murray": 7513, - "murs": 38783, - "mus": 2198, - "mus": 8103, - "musa": 30540, - "musc": 5696, - "muscat": 33322, - "muscle": 27323, - "muscle": 9269, - "muscles": 16786, - "muscular": 30606, - "muse": 2369, - "muse": 15686, - "museo": 36457, - "muses": 48243, - "museu": 27087, - "museum": 15602, - "museum": 2786, - "museums": 15542, - "museumweek": 37996, - "mush": 7635, - "mushroom": 13011, - "mushrooms": 14730, - "musi": 15628, - "music": 4110, - "music": 1179, - "musica": 26668, - "musical": 36002, - "musical": 5173, - "musically": 48893, - "musicals": 36974, - "musichistory": 37890, - "musician": 11179, - "musicians": 12498, - "musicislife": 43311, - "musicmonday": 35887, - "musicvideo": 26764, - "musik": 32986, - "musings": 44961, - "musique": 42250, - "musk": 32143, - "musk": 19063, - "muskete": 32775, - "musketeers": 37993, - "musko": 34987, - "muskoka": 40832, - "musli": 4958, - "muslim": 43795, - "muslim": 7060, - "muslims": 10513, - "muss": 41493, - "mussels": 33393, - "must": 6783, - "must": 2048, - "mustache": 23451, - "mustaf": 23596, - "mustafa": 29000, - "mustang": 42361, - "mustang": 13309, - "mustangs": 22500, - "mustard": 15794, - "muster": 47361, - "mustread": 28978, - "mut": 12598, - "mut": 22839, - "mutant": 28384, - "mutation": 38626, - "mutations": 39651, - "mute": 31252, - "muted": 48028, - "muth": 34280, - "mutil": 39950, - "mutt": 45924, - "mutu": 17574, - "mutual": 15055, - "mutuals": 31158, - "muy": 44625, - "mv": 10580, - "mv": 8269, - "mvc": 40549, - "mvp": 8905, - "mw": 16725, - "mw": 11206, - "mwc": 24289, - "mwf": 48565, - "mx": 21947, - "mx": 9575, - "my": 1152, - "my": 607, - "mya": 31401, - "myal": 42735, - "myan": 13761, - "myanmar": 14764, - "myart": 38826, - "myco": 48362, - "mydayin": 41896, - "mydayinla": 42801, - "mydubai": 43475, - "mye": 27551, - "myel": 40084, - "myers": 15993, - "myjaps": 47939, - "myle": 43700, - "myles": 25511, - "mylife": 30537, - "mylittle": 37757, - "mylittlepony": 45107, - "myo": 16206, - "myr": 20272, - "myra": 35694, - "myri": 34972, - "myrt": 47785, - "myrtle": 27768, - "mys": 11724, - "myself": 3245, - "mysore": 44924, - "myspace": 41382, - "myster": 4669, - "mysteries": 20605, - "mysterious": 12650, - "mystery": 39828, - "mystery": 6711, - "mysti": 28711, - "mystic": 36264, - "mystic": 23722, - "mystical": 34122, - "myth": 20322, - "myth": 13878, - "mythical": 34377, - "mytho": 43857, - "mythology": 22496, - "myths": 18675, - "mz": 29509, - "mz": 33400, - "mzan": 36322, - "mzansi": 43301, - "má": 36842, - "mé": 21890, - "méxico": 46159, - "mü": 28142, - "mün": 41235, - "n": 77, - "n": 333, - "na": 1097, - "na": 1272, - "naa": 37738, - "naacp": 32176, - "nab": 6951, - "nab": 19440, - "nabe": 35111, - "naby": 24800, - "nac": 14557, - "nac": 18950, - "nach": 12168, - "nach": 43622, - "nacho": 35647, - "nachos": 32847, - "nacht": 37261, - "nacional": 38782, - "nad": 6204, - "nad": 43928, - "nada": 31683, - "nadal": 20814, - "nade": 24908, - "nadi": 30512, - "nadia": 27487, - "nadine": 23356, - "nadu": 20936, - "nae": 19374, - "naf": 16161, - "naf": 45956, - "nafta": 43123, - "nag": 6694, - "nag": 23902, - "naga": 45953, - "naga": 38997, - "nagar": 17490, - "nage": 41219, - "nago": 38349, - "nagoya": 43303, - "nagpur": 43328, - "nah": 26421, - "nah": 11129, - "nahi": 35244, - "nai": 6230, - "nai": 10692, - "naia": 31340, - "naidu": 42429, - "naija": 16326, - "naik": 34424, - "nail": 19459, - "nail": 9059, - "nailart": 43532, - "nailed": 19035, - "nails": 8469, - "nair": 27107, - "naira": 39450, - "naire": 48892, - "nairobi": 17756, - "nais": 46396, - "naissance": 44761, - "naive": 43362, - "naj": 30985, - "naji": 32589, - "nak": 9248, - "nak": 25550, - "naked": 46371, - "naked": 11478, - "naku": 39864, - "nal": 14132, - "nal": 3119, - "nale": 27198, - "nall": 32869, - "nally": 26158, - "nam": 1410, - "nam": 12344, - "nama": 39586, - "naman": 27635, - "namaste": 35549, - "name": 18160, - "name": 1981, - "named": 3194, - "nameis": 40831, - "nament": 3916, - "naments": 16540, - "names": 6130, - "namesake": 41298, - "nami": 20393, - "namibia": 23731, - "naming": 19367, - "namjoon": 31986, - "namm": 35524, - "namo": 46013, - "namo": 24854, - "nan": 4375, - "nan": 7750, - "nana": 18761, - "nanaimo": 40518, - "nancy": 21511, - "nancy": 11425, - "nand": 20435, - "nandez": 12764, - "nando": 46044, - "nang": 48148, - "nani": 27980, - "nanny": 31104, - "nano": 15835, - "nano": 22006, - "nanop": 34177, - "nanotechnology": 42235, - "nanow": 46734, - "nant": 22526, - "nantes": 47533, - "nantucket": 41573, - "nao": 39319, - "naom": 34955, - "naomi": 20173, - "nap": 6568, - "nap": 11012, - "napa": 20545, - "napier": 40875, - "napkin": 38930, - "naples": 23560, - "napo": 18715, - "napol": 20122, - "napoleon": 24969, - "napoli": 22445, - "napp": 11359, - "napping": 37657, - "naps": 31317, - "naq": 46453, - "nar": 2977, - "nar": 20145, - "nara": 33823, - "narcis": 25229, - "narcissi": 35442, - "narco": 38461, - "nard": 18216, - "nare": 34853, - "naren": 8468, - "narendr": 9807, - "narendra": 25848, - "narendramodi": 9853, - "narnia": 48693, - "narr": 11845, - "narrated": 43609, - "narrative": 15933, - "narratives": 35117, - "narrator": 46529, - "narrow": 24006, - "narrow": 16652, - "narrowly": 29747, - "naruto": 22732, - "nas": 3090, - "nas": 15250, - "nasa": 6841, - "nasal": 42853, - "nascar": 25723, - "nascar": 7868, - "nasdaq": 26629, - "nash": 6771, - "nash": 13620, - "nasheed": 49176, - "nashgrier": 33372, - "nashville": 45356, - "nashville": 8585, - "nasi": 47987, - "nasir": 47509, - "nassau": 34048, - "nasser": 43559, - "nasty": 32930, - "nasty": 8709, - "nat": 1276, - "nat": 11310, - "nata": 39392, - "natal": 28516, - "natali": 20296, - "natalia": 32978, - "natalie": 36634, - "natalie": 13595, - "natash": 48701, - "natasha": 23093, - "nate": 26643, - "nate": 7587, - "natgeo": 33009, - "natgeo": 25046, - "nath": 22203, - "nath": 19843, - "nathan": 13028, - "nathan": 9711, - "nathanfillion": 47422, - "nathaniel": 32667, - "nati": 1060, - "nati": 13384, - "natic": 44944, - "natin": 44358, - "nation": 2317, - "nation": 2670, - "national": 3126, - "national": 1362, - "nationalbestfriend": 42222, - "nationaldogday": 32227, - "nationalism": 29867, - "nationalist": 25058, - "nationality": 44451, - "nationally": 15130, - "nationalpark": 33060, - "nationalparks": 41204, - "nationals": 10784, - "nationaltrust": 34051, - "nations": 7654, - "nationwide": 13795, - "native": 20639, - "native": 4562, - "natives": 36060, - "nativity": 33988, - "natl": 39225, - "natl": 34465, - "nato": 13139, - "nats": 21106, - "natu": 2775, - "natur": 6800, - "natural": 13198, - "natural": 3288, - "naturally": 12995, - "naturals": 44686, - "nature": 9382, - "nature": 2625, - "naturelovers": 41514, - "naturephotography": 22533, - "natures": 15616, - "natureuk": 46193, - "nau": 5955, - "nau": 32878, - "naught": 41001, - "naughty": 47255, - "naughty": 15101, - "nautical": 31660, - "nav": 3413, - "nav": 25308, - "navajo": 35523, - "naval": 44725, - "naval": 13273, - "navar": 24848, - "navarro": 37104, - "nave": 42704, - "naveen": 43837, - "naver": 32534, - "navi": 16159, - "navi": 44848, - "navig": 12507, - "navigate": 24400, - "navigating": 33134, - "navigation": 20148, - "navigator": 38910, - "navis": 36377, - "navratri": 45428, - "navy": 28414, - "navy": 5598, - "naw": 16259, - "naw": 30500, - "nawaz": 49161, - "nawaz": 19523, - "nax": 38299, - "nay": 11704, - "nay": 16182, - "naya": 38917, - "nayanth": 38157, - "nayanthara": 45184, - "naz": 6363, - "naz": 35534, - "nazi": 12972, - "nazis": 21778, - "nb": 6459, - "nb": 6813, - "nba": 22524, - "nba": 5139, - "nbad": 43458, - "nbaf": 30127, - "nbafinals": 33803, - "nbap": 41956, - "nbaplayoffs": 43860, - "nbat": 46291, - "nbc": 9352, - "nbc": 8799, - "nbd": 24526, - "nbl": 42652, - "nc": 5021, - "nc": 4911, - "nca": 6921, - "ncaa": 9418, - "ncbd": 47221, - "ncc": 33195, - "ncc": 36686, - "ncds": 47573, - "ncfc": 31274, - "ncis": 33617, - "ncpol": 40562, - "ncr": 38474, - "ncs": 42689, - "nct": 27723, - "nct": 20319, - "ncwx": 36166, - "nd": 5625, - "nd": 1764, - "nda": 32862, - "ndc": 47564, - "ndi": 48229, - "ndp": 19257, - "nds": 31347, - "ndtv": 26261, - "ne": 557, - "ne": 1422, - "nea": 24068, - "neal": 33652, - "neal": 16730, - "near": 11296, - "near": 2252, - "nearby": 13314, - "nearest": 18985, - "nearing": 26571, - "nearly": 4816, - "nears": 37710, - "neat": 43201, - "neat": 15465, - "neath": 18315, - "neau": 31559, - "neb": 40209, - "nebra": 13371, - "nebraska": 14565, - "nebu": 49295, - "nebula": 22532, - "nec": 25109, - "nec": 22992, - "necess": 6961, - "necessarily": 25853, - "necessary": 8955, - "necessities": 43483, - "necessity": 33163, - "neck": 6066, - "neck": 6906, - "necklace": 7385, - "necklaces": 32276, - "necks": 29701, - "nectar": 33683, - "ned": 16030, - "ned": 1369, - "nederland": 49058, - "nee": 20494, - "nee": 10601, - "need": 3229, - "need": 1262, - "needed": 4049, - "needing": 22894, - "needle": 44490, - "needle": 19886, - "needles": 27250, - "needless": 39984, - "needs": 2536, - "needy": 30150, - "neel": 33092, - "neel": 46043, - "neer": 34245, - "nees": 47248, - "neet": 46362, - "neg": 5513, - "negan": 42623, - "negative": 8869, - "negatively": 40254, - "negativity": 34658, - "neglec": 18827, - "neglect": 33680, - "neglected": 31893, - "negli": 32594, - "negligence": 45658, - "negoti": 10216, - "negotiate": 32969, - "negotiating": 35510, - "negotiation": 36504, - "negotiations": 20433, - "negr": 42190, - "negro": 26554, - "neh": 40416, - "neh": 41697, - "neha": 44463, - "nehru": 30316, - "nei": 9366, - "neigh": 4061, - "neighb": 6534, - "neighbor": 7759, - "neighbor": 14485, - "neighborhood": 9471, - "neighborhoods": 26713, - "neighboring": 44754, - "neighbors": 13037, - "neighbour": 15858, - "neighbour": 23719, - "neighbourhood": 20312, - "neighbours": 17594, - "neil": 13591, - "neil": 8030, - "neilhimself": 45682, - "neill": 19324, - "neither": 14398, - "nek": 47727, - "neko": 47066, - "nel": 5476, - "nel": 2693, - "nell": 27081, - "nell": 8117, - "nelly": 21166, - "nels": 19296, - "nelson": 24774, - "nelson": 8586, - "nem": 45153, - "neman": 48553, - "neme": 30993, - "nemesis": 37811, - "nemo": 30441, - "nen": 17817, - "nen": 15451, - "nene": 44167, - "neo": 14562, - "neo": 11017, - "neon": 21043, - "neon": 13919, - "neonatal": 46464, - "neop": 49069, - "nep": 20739, - "nep": 41960, - "nepal": 25597, - "nepal": 10066, - "nepali": 47579, - "neph": 27926, - "nephe": 41810, - "nephew": 11689, - "nephews": 43747, - "nephro": 43054, - "neptune": 30566, - "ner": 2064, - "ner": 998, - "nerd": 24452, - "nerd": 12273, - "nerds": 22609, - "nerdy": 33124, - "nered": 17583, - "nerf": 42914, - "nering": 20226, - "nero": 29048, - "ners": 2129, - "nerve": 18571, - "nerves": 27813, - "nervous": 13928, - "nery": 48597, - "nes": 5457, - "nes": 4980, - "nesburg": 27159, - "nese": 32220, - "ness": 7187, - "ness": 1294, - "nesses": 20107, - "nessy": 32939, - "nest": 20302, - "nest": 8719, - "nesting": 28860, - "nestle": 43967, - "nestled": 38107, - "nests": 41133, - "net": 1851, - "net": 2315, - "netany": 23137, - "netanyahu": 23583, - "netball": 19761, - "netes": 44335, - "netfli": 6304, - "netflix": 35325, - "netflix": 6600, - "nether": 9946, - "netherlands": 11060, - "neti": 43980, - "netneutrality": 47794, - "nets": 8582, - "nett": 23403, - "nett": 6975, - "nette": 13271, - "network": 23285, - "network": 3304, - "networking": 9818, - "networks": 10004, - "neu": 3855, - "neu": 43342, - "neue": 45764, - "neur": 19001, - "neur": 31976, - "neural": 26388, - "neuro": 7401, - "neuro": 36000, - "neurological": 41718, - "neurology": 43197, - "neurons": 40442, - "neuroscience": 23381, - "neutr": 17207, - "neutral": 17011, - "neutrality": 26511, - "neutron": 44056, - "nev": 10236, - "nev": 43645, - "neva": 43304, - "nevada": 13499, - "neve": 44099, - "neve": 44023, - "never": 6746, - "never": 1426, - "neveragain": 45053, - "neverforget": 19242, - "nevergiveup": 42497, - "neverland": 41483, - "nevertheless": 48355, - "nevertrump": 47494, - "neville": 19269, - "nevis": 43670, - "new": 1218, - "new": 686, - "newark": 20240, - "newbie": 45427, - "newborn": 18320, - "newbury": 34169, - "newcastle": 41955, - "newcastle": 9302, - "newcomer": 30648, - "newcomers": 44037, - "newe": 40068, - "newell": 41436, - "newer": 33099, - "newest": 4990, - "newfound": 25250, - "newfoundland": 28079, - "newh": 18546, - "newin": 31911, - "newjersey": 32621, - "newly": 42186, - "newly": 7056, - "newman": 15815, - "newmarket": 38617, - "newmexico": 35238, - "newmusic": 32510, - "newmusic": 17201, - "newor": 25969, - "neworleans": 31205, - "newport": 42580, - "newport": 14846, - "newprofile": 14633, - "newprofilepic": 14754, - "newrelease": 34793, - "news": 6216, - "news": 1120, - "newsat": 43979, - "newsc": 28656, - "newscast": 45031, - "newsle": 10727, - "newsletter": 11069, - "newsnow": 48650, - "newsp": 7109, - "newspaper": 8786, - "newspapers": 22423, - "newsroom": 23200, - "newt": 37224, - "newton": 33122, - "newton": 12606, - "newtown": 31747, - "newyear": 22161, - "newyear": 12999, - "newyearseve": 37587, - "newyork": 18140, - "newyork": 10454, - "newyorkcity": 30460, - "newyorker": 39732, - "newzealand": 21117, - "nex": 6897, - "nex": 39720, - "next": 12434, - "next": 1131, - "nextgen": 41933, - "nexus": 19053, - "ney": 3857, - "ney": 1438, - "neymar": 21878, - "neys": 12616, - "nez": 27388, - "nf": 15195, - "nf": 25643, - "nfamily": 20098, - "nfc": 23695, - "nffc": 27893, - "nfl": 11219, - "nfl": 4691, - "nfldraft": 25002, - "ng": 10352, - "ng": 5215, - "nga": 35477, - "ngc": 29046, - "ngo": 38740, - "ngo": 24821, - "ngos": 34627, - "nguyen": 29947, - "nh": 3760, - "nh": 10803, - "nhc": 44817, - "nhl": 12290, - "nhl": 8167, - "nhlbruins": 39081, - "nhljets": 49357, - "nhm": 39483, - "nhpolitics": 36125, - "nhq": 42368, - "nhra": 30052, - "nhs": 23282, - "nhs": 7695, - "ni": 697, - "ni": 3256, - "nia": 3098, - "niag": 18071, - "niagar": 39298, - "niagara": 18965, - "niall": 41354, - "niall": 8327, - "niallo": 22855, - "niallofficial": 23084, - "niam": 39347, - "nian": 46003, - "nib": 31049, - "nic": 2109, - "nic": 6651, - "nica": 29040, - "nicar": 25119, - "nicaragua": 28423, - "nice": 28386, - "nice": 1805, - "nicely": 12303, - "nicer": 29488, - "nicest": 22967, - "niche": 25279, - "nichol": 7668, - "nicholas": 39814, - "nicholas": 13148, - "nicholls": 38846, - "nichols": 22730, - "nicholson": 28745, - "nick": 4209, - "nick": 4253, - "nickel": 22034, - "nickelo": 28668, - "nickelodeon": 33279, - "nicki": 17738, - "nickimin": 27390, - "nickiminaj": 27593, - "nickjonas": 43862, - "nickname": 24731, - "nicknamed": 45190, - "nicks": 15049, - "nicky": 28893, - "nicky": 22091, - "nico": 20850, - "nico": 17779, - "nicol": 9919, - "nicol": 48274, - "nicola": 21791, - "nicolas": 43813, - "nicolas": 18918, - "nicole": 21246, - "nicole": 10000, - "nicot": 45099, - "nicotine": 46697, - "nie": 9524, - "nie": 3501, - "niece": 12795, - "nieces": 44877, - "niel": 19109, - "niel": 26837, - "niels": 37154, - "nielsen": 28372, - "nier": 13014, - "nies": 10586, - "niest": 15007, - "nieu": 29781, - "nific": 4748, - "nifty": 25604, - "nig": 27933, - "nig": 28099, - "nigan": 48516, - "nigel": 33919, - "nigel": 15153, - "niger": 4524, - "niger": 29920, - "nigeri": 40913, - "nigeria": 6106, - "nigerian": 12167, - "nigerians": 25358, - "nigh": 13525, - "nigh": 48157, - "night": 3870, - "night": 930, - "nightclub": 20418, - "nighter": 41349, - "nighting": 36211, - "nightingale": 40696, - "nightlife": 28823, - "nightly": 28868, - "nightmare": 12867, - "nightmares": 24032, - "nightout": 44257, - "nights": 4296, - "nighttime": 38147, - "nightw": 39956, - "nih": 25783, - "nik": 5126, - "nik": 13705, - "nike": 16300, - "nike": 5783, - "nikeplus": 43154, - "niki": 36136, - "nikita": 37118, - "nikk": 38596, - "nikki": 23156, - "nikki": 16689, - "niko": 43771, - "nikol": 27430, - "nikola": 42146, - "nikon": 25488, - "nikon": 13849, - "nikov": 43960, - "nil": 16852, - "nil": 35030, - "nile": 24252, - "nim": 30402, - "nim": 42093, - "nima": 42586, - "nin": 5794, - "nin": 14145, - "nina": 13891, - "nine": 16213, - "nine": 7330, - "ninety": 48214, - "ning": 6050, - "ning": 762, - "ningham": 23395, - "ningly": 43537, - "nings": 4588, - "nington": 26214, - "ninj": 23225, - "ninja": 11969, - "ninjas": 42796, - "nino": 25633, - "ninten": 6184, - "nintendo": 13969, - "nintendo": 7886, - "nintendoswitch": 16404, - "ninth": 22770, - "nip": 33889, - "nip": 22333, - "nipp": 24634, - "nipple": 45987, - "nipples": 44774, - "nippon": 47960, - "nips": 49241, - "nir": 15503, - "nir": 40057, - "nireland": 45763, - "niro": 47373, - "nirvana": 28300, - "nis": 5609, - "nis": 3786, - "nish": 19834, - "nish": 13256, - "nished": 24141, - "nishi": 32386, - "nishings": 49247, - "nison": 45700, - "niss": 39043, - "nissan": 37635, - "nissan": 11082, - "nist": 17782, - "nister": 36640, - "nit": 4087, - "nit": 19011, - "nite": 8427, - "niti": 43964, - "niti": 45355, - "nitin": 37529, - "nitro": 30726, - "nitrogen": 30706, - "niture": 7840, - "nity": 12707, - "niu": 48187, - "niv": 47300, - "niversary": 29643, - "nix": 48552, - "nix": 32278, - "nixon": 20671, - "nj": 8343, - "nj": 6672, - "njcaa": 48992, - "njpw": 38992, - "nk": 22708, - "nk": 17456, - "nko": 36353, - "nl": 12057, - "nl": 7655, - "nli": 37502, - "nlp": 35680, - "nlwx": 49260, - "nm": 15956, - "nm": 11370, - "nmd": 43331, - "nme": 40454, - "nmwx": 47967, - "nn": 8947, - "nn": 12925, - "nnn": 26277, - "nnnn": 41420, - "no": 578, - "no": 871, - "noaa": 27557, - "noah": 28806, - "noah": 11519, - "nobel": 33742, - "nobel": 15605, - "nobelprize": 46074, - "noble": 29430, - "noble": 12051, - "nobody": 7009, - "noc": 16988, - "noc": 44420, - "nocchi": 46359, - "noch": 38672, - "noche": 29689, - "noches": 44166, - "nock": 16993, - "noctur": 26291, - "nocturnal": 41738, - "nod": 18648, - "nodapl": 39079, - "node": 31434, - "node": 24871, - "nodejs": 39262, - "nodes": 40534, - "noel": 38406, - "noel": 17496, - "nof": 29505, - "noff": 46979, - "nofilter": 16418, - "nog": 31157, - "noh": 40775, - "noi": 43115, - "noi": 39889, - "noida": 33404, - "noir": 39291, - "noir": 12953, - "nois": 22057, - "noise": 41018, - "noise": 9307, - "noises": 31575, - "noisse": 45686, - "noisy": 33495, - "nokia": 17731, - "nol": 8055, - "nola": 13289, - "nolan": 17323, - "nold": 40322, - "nole": 34654, - "noles": 40569, - "nollywood": 43145, - "nology": 42221, - "nom": 2981, - "nom": 12799, - "nomad": 27849, - "noman": 45592, - "nomin": 5643, - "nominate": 17122, - "nominated": 8710, - "nominating": 45747, - "nomination": 14136, - "nominations": 17124, - "nominee": 14122, - "nominees": 17873, - "nomnom": 26962, - "nomore": 35126, - "noms": 35706, - "non": 4282, - "non": 3353, - "none": 29644, - "none": 8906, - "nonetheless": 39675, - "nonfiction": 31654, - "nonprofit": 19315, - "nonprofits": 37935, - "nonsense": 19136, - "nonstop": 30300, - "nont": 25207, - "noo": 6759, - "noo": 46672, - "noodle": 19521, - "noodles": 15782, - "nook": 30088, - "noon": 37693, - "noon": 2347, - "noor": 46978, - "noor": 31323, - "nope": 15625, - "nor": 1062, - "nor": 6190, - "nora": 25890, - "norcal": 41970, - "nord": 19261, - "nord": 36067, - "nordic": 36439, - "nordic": 20734, - "nordstrom": 38562, - "norfolk": 30232, - "norfolk": 12202, - "norm": 10990, - "norm": 22457, - "norma": 35757, - "normal": 28748, - "normal": 5967, - "normali": 45157, - "normally": 15870, - "norman": 22027, - "norman": 11338, - "normandy": 23840, - "normani": 44596, - "norms": 33011, - "norris": 21814, - "norse": 36559, - "norte": 35638, - "north": 3468, - "north": 2188, - "northampton": 49246, - "northampton": 26175, - "northan": 37081, - "northbound": 24228, - "northcarolina": 43386, - "northe": 24675, - "northeast": 42673, - "northeast": 13009, - "northeastern": 28297, - "northeasthour": 42869, - "norther": 26908, - "northern": 17210, - "northern": 5049, - "northernlights": 48940, - "northkorea": 38495, - "northside": 45957, - "northumber": 22295, - "northumberland": 22922, - "northwales": 49371, - "northwest": 12894, - "northwestern": 23685, - "norton": 18032, - "norway": 8780, - "norwe": 14414, - "norwegian": 15971, - "norwich": 37629, - "norwich": 15812, - "norwood": 37889, - "nos": 13420, - "nose": 24192, - "nose": 8231, - "noses": 48163, - "nostal": 12076, - "nostalgia": 16622, - "nostalgic": 24468, - "not": 2534, - "not": 783, - "notable": 22023, - "notch": 19476, - "notdead": 42059, - "note": 10910, - "note": 3246, - "notebook": 16365, - "notebooks": 37623, - "noted": 22501, - "notes": 5795, - "nothin": 24291, - "nothing": 28412, - "nothing": 2586, - "noti": 10686, - "notic": 6915, - "notice": 6683, - "noticeable": 40857, - "noticed": 9324, - "notices": 33459, - "noticias": 47759, - "noticing": 37571, - "notification": 22512, - "notifications": 23169, - "notified": 39454, - "noting": 38649, - "notion": 37856, - "notjust": 33212, - "notjustlakes": 45803, - "notmy": 39301, - "noto": 29878, - "noton": 48258, - "notor": 21711, - "notori": 44065, - "notorious": 22489, - "notre": 24397, - "notre": 15306, - "notredame": 34077, - "notsorry": 34361, - "nott": 9333, - "nott": 34989, - "notte": 47308, - "nottingham": 12852, - "notts": 25598, - "nou": 8751, - "nou": 30953, - "noun": 33663, - "nouri": 23796, - "nourish": 46025, - "nourished": 48354, - "nous": 29485, - "nouveau": 29948, - "nouvel": 34215, - "nov": 2264, - "nov": 4293, - "nova": 11236, - "novak": 26465, - "novasco": 33785, - "novascotia": 34744, - "novation": 39753, - "nove": 30507, - "novel": 15044, - "novel": 6080, - "novelist": 27314, - "novella": 42770, - "novels": 16040, - "novelty": 37750, - "november": 3680, - "nover": 37465, - "novi": 47957, - "novice": 33743, - "novo": 27504, - "novo": 36581, - "now": 2040, - "now": 692, - "nowadays": 26155, - "nowhere": 14108, - "nowplaying": 3708, - "nowwatching": 30852, - "nox": 27406, - "noxi": 39304, - "noxious": 42833, - "noy": 32787, - "np": 18205, - "np": 6314, - "npa": 42378, - "npc": 33966, - "npr": 39941, - "npr": 24078, - "nps": 22025, - "npt": 47231, - "nr": 6574, - "nr": 9713, - "nra": 17286, - "nrc": 45786, - "nrf": 47982, - "nrg": 48662, - "nrl": 27142, - "nrl": 18127, - "ns": 12405, - "ns": 1373, - "nsa": 23004, - "nsc": 32792, - "nsd": 36659, - "nsf": 34180, - "nsfw": 19847, - "nsi": 47824, - "nsw": 21301, - "nsw": 11693, - "nswpol": 44434, - "nt": 10902, - "nt": 3207, - "ntr": 30845, - "nts": 43775, - "ntt": 22859, - "ntv": 24807, - "ntv": 45304, - "nu": 1156, - "nu": 9444, - "nucle": 25693, - "nuclear": 34136, - "nuclear": 7279, - "nude": 16630, - "nudes": 32122, - "nue": 22834, - "nuestra": 45649, - "nuestro": 38590, - "nuev": 47861, - "nueva": 48810, - "nuevo": 30265, - "nufc": 15720, - "nuff": 37324, - "nug": 13471, - "nugent": 47457, - "nugget": 25448, - "nuggets": 18970, - "nuh": 45950, - "nuit": 38815, - "nuk": 39228, - "nuke": 39399, - "nul": 29358, - "null": 47376, - "num": 17896, - "num": 30534, - "numb": 34639, - "numb": 39427, - "number": 44078, - "number": 2842, - "numbered": 25975, - "numbers": 6121, - "numer": 11442, - "numerous": 17082, - "numis": 39100, - "nun": 12511, - "nun": 28540, - "nunavut": 48626, - "nunes": 40697, - "nuns": 44061, - "nup": 46757, - "nur": 3920, - "nur": 33493, - "nure": 42480, - "nurse": 37547, - "nurse": 10058, - "nursery": 15540, - "nurses": 12938, - "nursing": 11126, - "nurture": 38865, - "nurturing": 45229, - "nus": 25157, - "nus": 18239, - "nut": 10358, - "nut": 6491, - "nutcracker": 36733, - "nutella": 27312, - "nutr": 6198, - "nutri": 15470, - "nutrient": 32900, - "nutrients": 24668, - "nutriti": 17978, - "nutrition": 41546, - "nutrition": 7989, - "nutritional": 26457, - "nutritious": 30387, - "nuts": 8644, - "nutshell": 26659, - "nutty": 39846, - "nv": 17217, - "nv": 16985, - "nvi": 22847, - "nvidia": 27325, - "nw": 7826, - "nw": 7030, - "nwa": 34237, - "nwo": 40976, - "nws": 23333, - "nws": 30998, - "nwsl": 48394, - "nwt": 25029, - "nx": 18810, - "nx": 16997, - "nxt": 35037, - "nxt": 17804, - "ny": 1383, - "ny": 1350, - "nya": 24165, - "nyc": 13304, - "nyc": 2832, - "nycc": 27187, - "nycfc": 47497, - "nye": 40723, - "nye": 13416, - "nyfw": 21089, - "nyk": 46841, - "nylon": 25915, - "nyo": 41534, - "nyo": 44586, - "nypd": 42293, - "nypd": 18279, - "nyr": 32538, - "nyrd": 47936, - "nys": 36375, - "nys": 23423, - "nyse": 32650, - "nyt": 46311, - "nyt": 12816, - "nytimes": 13772, - "nyu": 43143, - "nyu": 31355, - "nz": 10142, - "nz": 7082, - "o": 78, - "o": 334, - "oa": 11994, - "oahu": 37790, - "oak": 6010, - "oak": 7221, - "oakland": 42663, - "oakland": 12077, - "oakley": 27810, - "oaks": 16734, - "oakville": 38500, - "oasis": 18185, - "oat": 20095, - "oat": 34132, - "oates": 47094, - "oath": 20108, - "oatmeal": 26374, - "oats": 24150, - "oax": 43090, - "oaxaca": 47818, - "ob": 1411, - "ob": 14908, - "oba": 42902, - "oba": 15147, - "obam": 13174, - "obama": 4276, - "obamacare": 18005, - "obe": 11897, - "obe": 29117, - "obedience": 48921, - "ober": 15284, - "obese": 41757, - "obesity": 19499, - "obey": 26926, - "obi": 21454, - "obi": 18414, - "obile": 20513, - "obitu": 39218, - "obituary": 43580, - "objec": 7970, - "object": 14115, - "objective": 23663, - "objectives": 30238, - "objects": 13770, - "obl": 31452, - "oblast": 42672, - "obli": 11416, - "obligation": 34473, - "obligations": 38232, - "obligatory": 35020, - "oblivion": 45323, - "obo": 46001, - "obo": 26618, - "obrien": 31946, - "obs": 39162, - "obsc": 20392, - "obscure": 33337, - "obse": 8433, - "observ": 9050, - "observation": 20250, - "observations": 27409, - "observatory": 21236, - "observe": 23217, - "observed": 21267, - "observer": 22077, - "observers": 47544, - "observing": 28359, - "obsessed": 9744, - "obsession": 15718, - "obsi": 47323, - "obsole": 35561, - "obsolete": 40628, - "obst": 29398, - "obstac": 24075, - "obstacle": 29751, - "obstacles": 24480, - "obste": 49103, - "obstru": 44876, - "obstruc": 38762, - "obstruction": 40240, - "obtain": 26555, - "obtained": 29322, - "obvious": 13959, - "obviously": 10068, - "oc": 1566, - "oc": 6603, - "oca": 31120, - "ocal": 38148, - "occ": 43940, - "occa": 8530, - "occasion": 12280, - "occasional": 33059, - "occasionally": 32479, - "occasions": 26154, - "occer": 20804, - "occi": 42994, - "occu": 7863, - "occult": 42529, - "occup": 11152, - "occupation": 18624, - "occupational": 30644, - "occupied": 17271, - "occupy": 22453, - "occupy": 24210, - "occur": 11264, - "occur": 21813, - "occurred": 19850, - "occurrence": 40615, - "occurring": 31335, - "occurs": 26563, - "ocd": 35904, - "oce": 3509, - "ocean": 12941, - "ocean": 4918, - "oceans": 16792, - "och": 29334, - "och": 32011, - "oche": 33045, - "oci": 9891, - "ocity": 46039, - "ock": 33579, - "ock": 21313, - "ocks": 22410, - "oclock": 36274, - "oco": 32553, - "ocon": 33090, - "ocr": 45813, - "ocre": 40320, - "ocs": 27297, - "oct": 4565, - "octa": 23444, - "octag": 37768, - "octagon": 49167, - "octane": 43040, - "octavia": 47416, - "octo": 31032, - "october": 3481, - "octopus": 22327, - "ocu": 22709, - "oculus": 30082, - "od": 4886, - "od": 9719, - "oda": 24777, - "oday": 41954, - "odd": 15525, - "odd": 11387, - "oddly": 34213, - "odds": 11555, - "ode": 19125, - "ode": 19639, - "odell": 41556, - "odessa": 43574, - "odi": 12223, - "odi": 18853, - "odin": 35175, - "odisha": 15737, - "odo": 49188, - "odo": 40993, - "odor": 39509, - "odu": 35095, - "odu": 39904, - "odyssey": 19991, - "oe": 24251, - "oe": 11667, - "oec": 24288, - "oecd": 30816, - "oem": 29650, - "oes": 3643, - "of": 684, - "of": 539, - "ofa": 29774, - "ofc": 19877, - "ofe": 30000, - "ofer": 47322, - "off": 892, - "off": 1007, - "offe": 8261, - "offee": 34059, - "offen": 7231, - "offence": 34594, - "offences": 33972, - "offended": 30765, - "offender": 48294, - "offenders": 35878, - "offense": 15253, - "offensive": 11037, - "offer": 20607, - "offer": 3271, - "offered": 9395, - "offering": 6896, - "offerings": 24535, - "offers": 4679, - "offic": 3276, - "office": 18033, - "office": 2171, - "officeof": 38750, - "officeofrg": 47100, - "officer": 4683, - "officers": 6335, - "offices": 10933, - "offici": 1401, - "official": 5768, - "official": 1868, - "officially": 4226, - "officials": 7658, - "officiel": 26548, - "offl": 16851, - "offline": 22724, - "offro": 32198, - "offroad": 37173, - "offs": 23987, - "offseason": 25485, - "offset": 28843, - "offshore": 15496, - "offside": 49347, - "offspring": 38635, - "offthe": 38189, - "ofi": 36692, - "ofi": 49090, - "oficial": 18061, - "oft": 16693, - "oftball": 39768, - "often": 4864, - "ofthe": 7592, - "oftheday": 6988, - "oftheweek": 20654, - "oftheyear": 33975, - "og": 11542, - "og": 8555, - "oga": 47312, - "ogden": 42011, - "ogil": 39013, - "ography": 22399, - "ogue": 24761, - "ogun": 48970, - "oh": 5648, - "oh": 1779, - "ohana": 48330, - "ohh": 23076, - "ohhh": 27697, - "ohhhh": 40201, - "ohi": 5207, - "ohio": 18951, - "ohio": 6155, - "ohiostate": 41324, - "ohl": 45547, - "ohl": 41095, - "ohmy": 29758, - "ohn": 48043, - "ohs": 39542, - "ohwx": 47993, - "oi": 27357, - "oi": 13934, - "oic": 45554, - "oid": 14758, - "oids": 21847, - "oil": 11973, - "oil": 2870, - "oiland": 32316, - "oilandgas": 34130, - "oilers": 21627, - "oilpainting": 34279, - "oils": 17886, - "oily": 47550, - "oir": 48079, - "oir": 37113, - "ois": 23262, - "oit": 18453, - "oitnb": 34865, - "oj": 30986, - "oj": 34553, - "ok": 1944, - "ok": 2481, - "oka": 42258, - "oka": 19092, - "okan": 41263, - "okanagan": 43233, - "okay": 4917, - "okc": 42418, - "okc": 18357, - "oke": 26636, - "oke": 23598, - "oki": 20390, - "okin": 30687, - "okinawa": 35877, - "okla": 9431, - "oklahoma": 10170, - "oko": 26892, - "oko": 26095, - "okstate": 36356, - "oktoberfest": 32026, - "oku": 45010, - "oku": 43829, - "okwx": 27336, - "ol": 562, - "ol": 2985, - "ola": 20499, - "ola": 3373, - "olaf": 39709, - "olan": 48489, - "olan": 24227, - "oland": 26452, - "olas": 40800, - "old": 4931, - "old": 896, - "olde": 37731, - "older": 7700, - "oldest": 9285, - "oldham": 29929, - "oldie": 35280, - "oldies": 36278, - "oldman": 48614, - "olds": 8580, - "oldschool": 44384, - "oldschool": 25133, - "oldsmobile": 45396, - "ole": 9089, - "ole": 1947, - "oled": 46768, - "oler": 24069, - "oles": 16962, - "olf": 16346, - "olga": 34779, - "oli": 3811, - "oli": 8810, - "olic": 31341, - "oligar": 46185, - "olim": 47769, - "olin": 37823, - "olin": 18283, - "olina": 34711, - "oline": 17441, - "oling": 38033, - "olini": 36040, - "olis": 49397, - "olithic": 35574, - "olive": 22486, - "olive": 9898, - "oliver": 22882, - "oliver": 9261, - "olives": 27149, - "olivi": 20773, - "olivia": 11697, - "olivier": 23891, - "oll": 32270, - "oll": 15510, - "olla": 31908, - "ollie": 24434, - "olls": 42697, - "olly": 23998, - "olo": 14628, - "olo": 7606, - "ological": 12345, - "ologist": 23442, - "ologists": 30912, - "ology": 4627, - "olor": 29245, - "olph": 25077, - "ols": 2236, - "olsen": 26307, - "olson": 28046, - "olt": 46252, - "olu": 16502, - "olu": 46302, - "olulu": 27645, - "oly": 20323, - "oly": 24823, - "olym": 3594, - "olympi": 13597, - "olympia": 23965, - "olympiad": 47694, - "olympian": 25420, - "olympians": 44583, - "olympic": 26099, - "olympic": 6388, - "olympics": 7629, - "olympus": 30960, - "om": 547, - "om": 3932, - "oma": 44603, - "oma": 5358, - "omaha": 16509, - "oman": 22088, - "oman": 10871, - "omar": 19488, - "omar": 13367, - "omars": 37099, - "omas": 36023, - "omat": 40788, - "omb": 34447, - "ombe": 35967, - "omd": 49346, - "ome": 3693, - "ome": 5832, - "omed": 16835, - "omega": 13465, - "omelette": 38789, - "omen": 9969, - "omen": 25469, - "oment": 43683, - "omeo": 39844, - "omer": 24087, - "omer": 17902, - "omes": 25736, - "ometer": 20060, - "ometric": 38702, - "omez": 12541, - "omf": 47496, - "omfg": 12523, - "omg": 35233, - "omg": 3186, - "omi": 24097, - "omi": 10341, - "omic": 40536, - "omic": 12793, - "omics": 15138, - "omile": 46915, - "omin": 16457, - "omination": 42571, - "oming": 10796, - "ominous": 40914, - "omni": 18793, - "omni": 39489, - "omnibus": 44760, - "omnic": 48383, - "omo": 14478, - "omo": 11066, - "omon": 48758, - "omor": 29431, - "oms": 3770, - "omusic": 38965, - "omy": 40805, - "omy": 6884, - "on": 521, - "on": 525, - "ona": 2687, - "onair": 29511, - "onal": 918, - "onboard": 21689, - "once": 16331, - "once": 2654, - "onceupon": 28122, - "onceuponatime": 33505, - "onco": 46700, - "oncology": 24593, - "ond": 27918, - "ond": 2636, - "onda": 32643, - "onday": 29864, - "onde": 44532, - "ondo": 29529, - "ondon": 42043, - "ondon": 11851, - "one": 1980, - "one": 637, - "onec": 27746, - "oned": 28012, - "oned": 4698, - "onedirection": 16245, - "onee": 44433, - "oneill": 44808, - "onelove": 47417, - "onent": 12147, - "onents": 11709, - "oneof": 48478, - "onep": 20440, - "onepiece": 43153, - "oneplus": 25981, - "oner": 30055, - "oner": 6071, - "oners": 12324, - "ones": 20757, - "ones": 1575, - "oneself": 46874, - "onesie": 33237, - "oness": 25379, - "onet": 36058, - "oneteam": 41094, - "onetsy": 33392, - "onew": 43848, - "onews": 18696, - "onex": 49116, - "oney": 44498, - "oney": 9408, - "onf": 41790, - "onfox": 29874, - "ong": 2787, - "ong": 846, - "onga": 30259, - "ongchang": 35071, - "ongi": 21754, - "ongo": 31226, - "ongoing": 10393, - "ongs": 12143, - "oni": 4385, - "oni": 8048, - "onia": 8001, - "onial": 27599, - "onian": 21090, - "onic": 15838, - "onic": 3711, - "onica": 14631, - "onics": 9779, - "onie": 35249, - "onies": 22601, - "onimo": 41271, - "oning": 5197, - "onion": 10985, - "onions": 15255, - "onist": 10099, - "onists": 19659, - "onix": 27370, - "onized": 43657, - "onlin": 31103, - "online": 12940, - "online": 2027, - "onlinemarketing": 41820, - "onlineshopping": 38587, - "only": 11646, - "only": 1033, - "onlyin": 32947, - "onna": 25438, - "onna": 35458, - "onnaise": 48934, - "onne": 23466, - "onnell": 45613, - "ono": 28165, - "ono": 14388, - "onom": 48014, - "onomy": 36873, - "onpoli": 20708, - "ons": 26076, - "ons": 708, - "onsale": 36324, - "onset": 30527, - "onsite": 37336, - "onstage": 21821, - "onstorm": 49333, - "ont": 34303, - "ont": 11157, - "ontari": 6739, - "ontario": 42766, - "ontario": 7436, - "onte": 34723, - "onthe": 12241, - "onther": 46563, - "ontheroad": 47516, - "onthisday": 6862, - "onto": 11745, - "onto": 3141, - "ontology": 37364, - "ontour": 32155, - "onu": 44142, - "onward": 34827, - "onwards": 20682, - "ony": 9490, - "ony": 2926, - "onym": 11483, - "onymous": 13038, - "onyx": 31353, - "oo": 574, - "oo": 2822, - "ood": 16429, - "ood": 738, - "oodle": 45289, - "oods": 44660, - "oof": 42270, - "ooh": 16806, - "ook": 22326, - "ook": 8394, - "ooks": 31082, - "ool": 37702, - "ool": 929, - "oom": 22786, - "oom": 15002, - "oomf": 40607, - "oon": 35651, - "oon": 7100, - "ooo": 9571, - "oooh": 28927, - "oooo": 4002, - "oooo": 13643, - "ooooo": 12532, - "oooooo": 43590, - "oooooo": 20372, - "ooooooo": 30859, - "oooooooo": 15473, - "oooooooo": 43408, - "oooooooooooooooo": 48645, - "oop": 7326, - "ooper": 39906, - "oops": 9116, - "oor": 35239, - "oos": 9896, - "oosa": 30834, - "oose": 38941, - "oot": 17667, - "ootball": 28914, - "ootd": 16547, - "ooth": 12682, - "oott": 34316, - "ooza": 22809, - "op": 676, - "op": 3691, - "opa": 28949, - "opal": 28982, - "opar": 18167, - "opath": 33079, - "opathic": 37521, - "opathy": 28466, - "opau": 27239, - "opd": 38288, - "ope": 31694, - "ope": 11440, - "opec": 33138, - "opel": 36952, - "open": 3647, - "open": 1488, - "openaccess": 26591, - "opend": 28069, - "opendata": 35709, - "openday": 46991, - "opened": 5303, - "opener": 8998, - "openhouse": 36091, - "opening": 33728, - "opening": 2516, - "openingday": 36359, - "openings": 27643, - "openly": 23005, - "opens": 4801, - "opensource": 29930, - "oper": 2796, - "oper": 37533, - "opera": 8056, - "operate": 19306, - "operated": 23031, - "operates": 38675, - "operating": 12218, - "operation": 27173, - "operation": 7639, - "operational": 18237, - "operations": 8106, - "operative": 28380, - "operator": 15972, - "operators": 19267, - "opers": 48728, - "opes": 37258, - "oph": 6796, - "opha": 38634, - "ophel": 45017, - "ophelia": 49118, - "ophi": 44547, - "ophile": 35915, - "opho": 12900, - "ophobia": 21111, - "ophobic": 29934, - "ophon": 25120, - "ophone": 26345, - "ophthal": 33135, - "ophy": 28539, - "opi": 40056, - "opi": 48994, - "opin": 7636, - "opini": 14825, - "opinion": 7843, - "opinions": 16192, - "opio": 17371, - "opioid": 22833, - "opioids": 47578, - "opla": 36270, - "ople": 25663, - "opol": 15173, - "opoly": 23729, - "opor": 39650, - "opoulos": 42020, - "opp": 2020, - "opp": 21024, - "oppa": 23637, - "oppo": 7399, - "oppo": 41770, - "opponent": 17002, - "opponents": 19664, - "oppor": 2914, - "opportun": 2939, - "opportunities": 5978, - "opportunity": 4004, - "oppos": 10091, - "oppose": 23617, - "opposed": 22509, - "opposes": 47471, - "opposing": 24376, - "opposite": 12872, - "opposition": 11062, - "oppre": 17341, - "oppressed": 41492, - "oppression": 30650, - "opra": 28291, - "oprah": 22562, - "opry": 35340, - "ops": 3054, - "opt": 45103, - "opt": 27188, - "opted": 42035, - "opti": 6580, - "optic": 25190, - "optic": 24755, - "optical": 16822, - "optics": 27165, - "optim": 22331, - "optimal": 25235, - "optimi": 9737, - "optimis": 39459, - "optimism": 25226, - "optimist": 44581, - "optimistic": 23104, - "optimization": 25125, - "optimize": 30456, - "optimized": 43939, - "optimizing": 49157, - "optimum": 35974, - "optimus": 43453, - "option": 8464, - "optional": 25411, - "options": 7063, - "optome": 35533, - "opul": 39858, - "opus": 33295, - "opy": 21835, - "or": 523, - "or": 541, - "ora": 4301, - "orac": 24673, - "oracle": 37308, - "oracle": 15966, - "orah": 40820, - "orail": 45120, - "oral": 32490, - "oral": 6007, - "orama": 33619, - "oran": 32209, - "oran": 28395, - "orang": 22116, - "orange": 13957, - "orange": 4287, - "oranges": 32417, - "orangu": 36112, - "orb": 28894, - "orb": 36958, - "orbit": 19713, - "orbital": 40312, - "orc": 44305, - "orca": 18631, - "orcas": 47676, - "orch": 11893, - "orchar": 40226, - "orchard": 19530, - "orche": 8004, - "orchestr": 42937, - "orchestra": 9573, - "orchestral": 40285, - "orchi": 23696, - "orchid": 18678, - "orchids": 28376, - "ord": 26903, - "ord": 11502, - "orda": 33462, - "ordained": 38302, - "order": 24613, - "order": 2191, - "ordered": 8335, - "ordering": 19588, - "orderly": 43457, - "orders": 6187, - "ordin": 4378, - "ordinance": 38583, - "ordinary": 8012, - "ore": 3580, - "ore": 1423, - "orean": 36696, - "ored": 5133, - "oregon": 21759, - "oregon": 8035, - "oren": 21645, - "oreo": 21873, - "oreos": 41688, - "ores": 17328, - "org": 3401, - "org": 5593, - "organ": 3338, - "organ": 13213, - "organi": 3636, - "organic": 24080, - "organic": 5980, - "organics": 44199, - "organis": 13204, - "organisation": 15868, - "organisations": 20651, - "organise": 36073, - "organised": 13191, - "organiser": 49141, - "organisers": 35778, - "organising": 22787, - "organisms": 37041, - "organiz": 11107, - "organization": 8064, - "organizational": 29510, - "organizations": 13453, - "organize": 19973, - "organized": 10681, - "organizer": 23905, - "organizers": 27191, - "organizing": 15779, - "organs": 29872, - "orgs": 29500, - "ori": 1540, - "ori": 8693, - "oria": 11474, - "orial": 8648, - "orian": 21193, - "oric": 43810, - "orice": 41341, - "orie": 18815, - "orient": 13149, - "orient": 30770, - "oriental": 23056, - "orientation": 16873, - "oriente": 40390, - "oriented": 24596, - "orienteering": 42985, - "ories": 5934, - "orig": 2273, - "orig": 38463, - "origami": 31832, - "origin": 2555, - "origin": 12372, - "original": 18496, - "original": 3117, - "originally": 12849, - "originals": 16953, - "originated": 41823, - "origins": 16291, - "orin": 39863, - "oring": 3006, - "orio": 24308, - "orioles": 21430, - "orion": 21765, - "oris": 37064, - "orities": 7903, - "ority": 5556, - "orium": 12015, - "ork": 22202, - "ork": 37235, - "orkney": 34254, - "orl": 39465, - "orlando": 32247, - "orlando": 7827, - "orleans": 11127, - "orm": 38464, - "orn": 25412, - "orn": 8130, - "ornam": 36122, - "ornament": 23409, - "ornamental": 46270, - "ornaments": 28968, - "ornate": 46865, - "orni": 27713, - "ornithology": 38275, - "orns": 19340, - "oro": 9848, - "oro": 14573, - "orous": 19286, - "orph": 17318, - "orphan": 22718, - "orphan": 28994, - "orphanage": 45196, - "orphaned": 46792, - "orphans": 36588, - "orphe": 39186, - "orr": 32977, - "ors": 1127, - "orship": 20846, - "ort": 1019, - "ortega": 39727, - "orth": 22584, - "orth": 24461, - "ortho": 11366, - "orthodon": 37730, - "orthodox": 19008, - "orthop": 42123, - "orthopedic": 49341, - "ortiz": 23544, - "orton": 37238, - "oru": 44629, - "oru": 31281, - "orum": 42724, - "orwell": 41218, - "ory": 16983, - "ory": 1985, - "os": 2211, - "os": 1299, - "osa": 16340, - "osa": 17237, - "osaka": 21347, - "osborne": 22402, - "osbourne": 43376, - "osc": 5092, - "oscar": 21157, - "oscar": 8191, - "oscars": 11098, - "osce": 37303, - "oscill": 38272, - "ose": 46942, - "ose": 22541, - "osh": 30717, - "osh": 35011, - "osha": 33907, - "oshi": 34770, - "osi": 25247, - "osi": 17636, - "osis": 13903, - "osity": 12730, - "oslo": 20547, - "osm": 31626, - "osman": 46539, - "oso": 42793, - "oso": 21285, - "osp": 24387, - "ospre": 49001, - "osprey": 37893, - "oss": 29362, - "oss": 34640, - "ost": 23701, - "ost": 18749, - "oste": 20632, - "osteo": 43163, - "oster": 31781, - "ostr": 33673, - "ostrich": 47640, - "osu": 29480, - "osu": 19818, - "oswald": 38471, - "ot": 1863, - "ot": 2062, - "ota": 17509, - "ota": 8741, - "otago": 45919, - "otaku": 40743, - "otas": 47616, - "otc": 37934, - "otd": 5683, - "ote": 28511, - "ote": 19744, - "otes": 27280, - "oth": 33262, - "oth": 33519, - "other": 9758, - "other": 1010, - "others": 3326, - "otherwise": 12376, - "oti": 19567, - "oti": 45564, - "otic": 9671, - "otis": 28246, - "otive": 10877, - "oto": 23946, - "oto": 23399, - "otp": 29822, - "otr": 38685, - "ots": 5769, - "ott": 10167, - "ott": 7936, - "otta": 7623, - "otta": 20941, - "ottawa": 49027, - "ottawa": 9019, - "otte": 35214, - "otter": 34710, - "otter": 22456, - "otters": 38883, - "otti": 36721, - "ottnews": 33995, - "otto": 17730, - "ottoman": 27503, - "otw": 35259, - "otwol": 46868, - "ou": 520, - "ou": 6544, - "ouat": 32954, - "ouch": 13493, - "oud": 1359, - "oue": 48838, - "ouf": 34618, - "ough": 4204, - "ough": 991, - "ought": 2253, - "oughton": 36860, - "oui": 39421, - "ouk": 21796, - "oul": 20253, - "oul": 8081, - "ould": 859, - "oulos": 32808, - "oun": 636, - "oun": 20960, - "ounce": 15027, - "ounces": 30299, - "ound": 2013, - "ound": 853, - "oundation": 40132, - "ounded": 9634, - "ounding": 11944, - "ounds": 2753, - "oung": 35875, - "oung": 25341, - "ounge": 29427, - "ount": 43801, - "ount": 4172, - "ounts": 10963, - "oup": 32815, - "our": 727, - "our": 581, - "oura": 29806, - "oura": 36352, - "ourable": 24126, - "ourage": 34525, - "oural": 45840, - "oured": 6956, - "ouri": 12696, - "ouring": 12000, - "ourism": 25496, - "ourke": 26480, - "ourlives": 37541, - "ouro": 41224, - "ours": 1491, - "ourse": 15415, - "ourselves": 10124, - "ourt": 22960, - "oury": 29484, - "ous": 1987, - "ous": 879, - "ouse": 32048, - "ouse": 7603, - "ouses": 33666, - "ously": 2501, - "ousness": 10689, - "ousy": 28302, - "out": 1130, - "out": 620, - "outa": 35187, - "outage": 27320, - "outages": 40353, - "outback": 28532, - "outbound": 41256, - "outbreak": 20103, - "outcome": 16552, - "outcomes": 14016, - "outdated": 38313, - "outdoor": 19184, - "outdoor": 6368, - "outdoors": 10469, - "oute": 44180, - "outed": 34435, - "outer": 30499, - "outer": 14188, - "outes": 39600, - "outfield": 41826, - "outfit": 6525, - "outfits": 16366, - "outfitters": 37725, - "outfy": 34920, - "outgoing": 27302, - "outh": 16933, - "outh": 8111, - "outine": 35452, - "outing": 11251, - "outlander": 45820, - "outlander": 17095, - "outlaw": 37498, - "outlaw": 27340, - "outlaws": 30935, - "outlet": 16855, - "outlets": 20822, - "outline": 26894, - "outlines": 29159, - "outlining": 45960, - "outlook": 12983, - "outof": 43958, - "outpatient": 46603, - "outpost": 44622, - "output": 17255, - "outra": 14262, - "outrage": 23577, - "outraged": 43402, - "outrageous": 29342, - "outre": 14373, - "outreach": 15297, - "outright": 38200, - "outs": 5790, - "outsi": 22515, - "outside": 47693, - "outside": 2782, - "outsider": 41196, - "outsiders": 41742, - "outskirts": 42088, - "outsourcing": 34543, - "outstanding": 6387, - "outta": 15807, - "outtuesday": 48692, - "outw": 34650, - "oux": 40960, - "oux": 14228, - "ov": 6420, - "ov": 8479, - "ova": 12762, - "oval": 15039, - "ovarian": 42913, - "ovation": 24333, - "ove": 8649, - "ove": 15456, - "oven": 44620, - "oven": 12579, - "over": 1658, - "over": 962, - "overall": 6914, - "overboard": 42982, - "overcame": 47235, - "overcast": 36942, - "overcome": 14365, - "overcoming": 29348, - "overdose": 27017, - "overdrive": 40088, - "overdue": 30240, - "overflow": 32885, - "overflowing": 45370, - "overhaul": 31531, - "overhead": 20321, - "overland": 38808, - "overlay": 44827, - "overload": 24327, - "overlook": 35767, - "overlooked": 27632, - "overlooking": 17319, - "overly": 28820, - "overnight": 9913, - "overpass": 44310, - "overrated": 38214, - "overs": 45774, - "overs": 17329, - "overseas": 15100, - "oversight": 32494, - "oversized": 31557, - "overtime": 19347, - "overturned": 31048, - "overview": 14789, - "overwatch": 18124, - "overweight": 43465, - "overwhel": 12204, - "overwhelmed": 23459, - "overwhelming": 20306, - "overwhelmingly": 43549, - "ovi": 32508, - "ovic": 22417, - "ovich": 27623, - "ovie": 47677, - "ovo": 41920, - "ovo": 18065, - "ovski": 26167, - "ow": 2032, - "ow": 2250, - "owa": 32770, - "owe": 19073, - "owed": 37641, - "owen": 24838, - "owen": 12056, - "owens": 20664, - "owes": 35069, - "owing": 48582, - "owl": 34332, - "owl": 9899, - "owls": 18247, - "own": 3845, - "own": 1758, - "owned": 8536, - "owner": 5019, - "owners": 7712, - "ownership": 16583, - "owning": 24661, - "owns": 17533, - "owo": 46142, - "ows": 27423, - "owski": 22573, - "ox": 3282, - "ox": 12071, - "oxfam": 45466, - "oxford": 28588, - "oxford": 8824, - "oxfordshire": 37855, - "oxi": 33731, - "oxi": 48147, - "oxid": 17701, - "oxide": 28235, - "oxo": 37088, - "oxy": 12432, - "oxygen": 16214, - "oy": 6638, - "oy": 12437, - "oya": 38894, - "oye": 48677, - "oyster": 40545, - "oyster": 17253, - "oysters": 22672, - "oz": 10584, - "oz": 6044, - "ozar": 31848, - "ozil": 41365, - "ozone": 37052, - "ozzy": 39549, - "p": 79, - "p": 335, - "pa": 765, - "pa": 2217, - "paa": 32812, - "pab": 9354, - "pablo": 42172, - "pablo": 14473, - "pac": 2332, - "pac": 7608, - "pace": 40600, - "pace": 9450, - "paced": 32611, - "pacers": 23976, - "paces": 43001, - "paci": 5699, - "pacific": 19723, - "pacific": 6654, - "pacing": 45202, - "pack": 2711, - "pack": 3420, - "package": 7053, - "packaged": 29656, - "packages": 14305, - "packaging": 11658, - "packard": 46421, - "packed": 5883, - "packer": 28209, - "packers": 14294, - "packet": 25022, - "packets": 40448, - "packing": 9829, - "packs": 11086, - "paco": 41364, - "pacqui": 28456, - "pacquiao": 30485, - "pact": 27182, - "pad": 3798, - "pad": 7601, - "padded": 42253, - "paddington": 33162, - "paddle": 38276, - "paddle": 20811, - "paddling": 40645, - "paddock": 29590, - "paddy": 33103, - "paddy": 19855, - "padi": 47037, - "padilla": 22380, - "padma": 44595, - "padma": 46457, - "padre": 38343, - "padres": 22829, - "pads": 17353, - "paedi": 41488, - "paella": 46924, - "paf": 47185, - "pafc": 49259, - "pag": 4151, - "pag": 30525, - "pagan": 27854, - "page": 14996, - "page": 2504, - "pageant": 22139, - "pages": 8082, - "pagoda": 44309, - "pah": 41054, - "pah": 26884, - "pai": 20624, - "pai": 21198, - "paid": 5057, - "paige": 33659, - "paige": 16022, - "paign": 31796, - "pain": 2141, - "pain": 4495, - "paine": 38069, - "painful": 16361, - "pains": 25639, - "paint": 7948, - "paint": 5185, - "paintball": 39730, - "painted": 6433, - "painter": 10888, - "painters": 35703, - "painting": 49164, - "painting": 3086, - "paintings": 9956, - "paints": 21672, - "pair": 19848, - "pair": 4038, - "paired": 12433, - "pairing": 16313, - "pairings": 41152, - "pairs": 9950, - "pais": 16878, - "paisley": 22954, - "pajam": 24110, - "pajama": 40244, - "pajamas": 37231, - "pak": 13186, - "pak": 9094, - "paki": 3438, - "pakistan": 10713, - "pakistan": 3994, - "pakistani": 14050, - "pakistanis": 45707, - "pakv": 38196, - "pal": 1850, - "pal": 3611, - "pala": 17895, - "palace": 6381, - "palaces": 45625, - "palad": 28371, - "palae": 43379, - "palais": 35673, - "palate": 34666, - "palawan": 48202, - "palazzo": 36006, - "pale": 4768, - "pale": 12518, - "paleo": 36741, - "paleo": 22198, - "paler": 38028, - "palermo": 40635, - "palestin": 9449, - "palestine": 11682, - "palestinian": 11764, - "palestinians": 21874, - "palette": 13901, - "pali": 48063, - "palin": 40153, - "palis": 44256, - "pality": 27296, - "pall": 35817, - "palla": 21208, - "palladium": 37888, - "pallet": 39057, - "palli": 28954, - "palliative": 46014, - "pally": 46073, - "palm": 19651, - "palm": 8612, - "palma": 29888, - "palmer": 40112, - "palmer": 13633, - "palms": 27059, - "palo": 31562, - "palom": 47698, - "palooza": 25861, - "pals": 11043, - "palsy": 46651, - "pam": 8228, - "pam": 18513, - "pamela": 26991, - "pamp": 37653, - "pamper": 44345, - "pamph": 41332, - "pan": 1072, - "pan": 7437, - "panam": 24606, - "panama": 15522, - "panas": 26207, - "panasonic": 29750, - "pancake": 18723, - "pancakes": 15308, - "panch": 27251, - "pancra": 42472, - "pancre": 27708, - "pancreatic": 49337, - "pancy": 41625, - "pand": 5631, - "panda": 12952, - "pandas": 35119, - "pande": 38419, - "pandey": 34895, - "pandit": 41191, - "pandor": 30250, - "pandora": 17727, - "pandoramusic": 42344, - "pane": 27470, - "panel": 3724, - "paneli": 19410, - "panelist": 39719, - "panelists": 24619, - "panels": 12735, - "panera": 48471, - "pang": 16756, - "pang": 23672, - "panhandle": 40919, - "pani": 36092, - "panic": 46671, - "panic": 14124, - "panini": 30410, - "pann": 42302, - "panna": 49065, - "pano": 36165, - "panor": 12962, - "panorama": 19763, - "panoramic": 22563, - "pans": 35204, - "pant": 22550, - "panther": 22825, - "panther": 13262, - "panthers": 10494, - "panties": 32515, - "panto": 28776, - "pantry": 25608, - "pants": 5003, - "panty": 44217, - "pany": 45567, - "panzer": 41159, - "pao": 33790, - "paola": 44689, - "paolo": 48488, - "paolo": 21133, - "pap": 1884, - "pap": 30756, - "papa": 12211, - "papar": 32782, - "paparazzi": 37842, - "papaya": 44098, - "paper": 8680, - "paper": 2802, - "paperback": 17928, - "papers": 8204, - "paperwork": 35785, - "papi": 35177, - "papp": 26361, - "paprika": 44793, - "papua": 32629, - "par": 699, - "par": 9163, - "para": 18355, - "para": 8976, - "parach": 23147, - "parachute": 30122, - "parad": 37143, - "parade": 5809, - "parades": 46479, - "paradi": 6658, - "paradig": 27786, - "paradigm": 33485, - "paradise": 45869, - "paradise": 7247, - "paradox": 33109, - "parag": 11866, - "paragon": 48099, - "paragra": 24903, - "paragraph": 28499, - "paragu": 38021, - "paraguay": 43579, - "paral": 15143, - "paralle": 13184, - "parallel": 18201, - "paralleled": 42520, - "parallels": 46101, - "paraly": 30255, - "paralym": 18727, - "paralympic": 30806, - "paralympics": 37162, - "paralysis": 45702, - "param": 12250, - "parame": 27106, - "paramedic": 34630, - "paramedics": 35991, - "parameters": 44890, - "paramore": 34401, - "paramount": 26642, - "parano": 30283, - "paranoid": 43029, - "paranor": 16940, - "paranormal": 19047, - "parap": 41091, - "paras": 15198, - "parasite": 42460, - "parasites": 46175, - "parc": 30914, - "parcel": 30367, - "parcels": 45589, - "pard": 18773, - "pardon": 47606, - "pardon": 26565, - "pare": 18202, - "pared": 5498, - "paren": 3106, - "parent": 47848, - "parent": 10183, - "parental": 28339, - "parenthood": 23887, - "parenting": 14529, - "parents": 3731, - "pares": 12420, - "parfait": 46140, - "pari": 17961, - "pari": 27979, - "paris": 13982, - "paris": 3445, - "parisagreement": 47405, - "parish": 47328, - "parish": 13020, - "parisi": 45081, - "parisian": 38512, - "parity": 42734, - "park": 4985, - "park": 1452, - "parked": 16487, - "parker": 31119, - "parker": 8365, - "parkin": 34868, - "parking": 5984, - "parkinson": 28129, - "parkland": 31287, - "parkrun": 25747, - "parks": 6873, - "parkway": 19882, - "parl": 30373, - "parl": 29897, - "parliam": 5941, - "parliament": 41599, - "parliament": 7151, - "parliamentary": 17912, - "parlor": 38253, - "parlour": 37829, - "parma": 36077, - "parme": 26295, - "parmesan": 27274, - "paro": 17429, - "parody": 24318, - "parole": 32158, - "parr": 44113, - "parrish": 43043, - "parrot": 23565, - "parry": 40604, - "parsley": 30077, - "parsons": 22505, - "part": 1872, - "part": 1551, - "parte": 48508, - "parth": 34790, - "parti": 10509, - "partial": 18957, - "partially": 21269, - "partic": 2871, - "partici": 9540, - "particip": 4400, - "participant": 27674, - "participants": 10237, - "participate": 9433, - "participated": 14252, - "participates": 46414, - "participating": 11535, - "participation": 13529, - "particle": 27716, - "particles": 27012, - "particul": 11408, - "particular": 14098, - "particularly": 12170, - "parties": 9032, - "parting": 32844, - "partisan": 20772, - "partist": 44713, - "partition": 42219, - "partly": 21459, - "partner": 5210, - "partner": 4568, - "partnered": 21402, - "partnering": 21182, - "partners": 5568, - "partnership": 6123, - "partnerships": 17418, - "parton": 43245, - "partridge": 34872, - "parts": 5149, - "party": 12877, - "party": 1580, - "partying": 25702, - "pas": 1341, - "pas": 9525, - "pasadena": 25892, - "pascal": 28626, - "pasco": 49220, - "pascu": 42692, - "pash": 23936, - "pasha": 46986, - "paso": 18542, - "pasqu": 44941, - "pass": 5016, - "pass": 3511, - "passage": 16477, - "passages": 48937, - "passed": 4957, - "passenger": 12311, - "passengers": 12781, - "passer": 48544, - "passes": 7633, - "passi": 32471, - "passing": 6589, - "passion": 8822, - "passion": 5332, - "passionate": 10947, - "passionately": 44028, - "passions": 38441, - "passive": 23171, - "passover": 38426, - "passport": 14739, - "passports": 46368, - "password": 20258, - "passwords": 43095, - "past": 7315, - "past": 2729, - "pasta": 10441, - "paste": 34765, - "paste": 17038, - "pastel": 19457, - "pastels": 45699, - "pastor": 19792, - "pastor": 9664, - "pastoral": 37191, - "pastors": 30959, - "pastr": 45478, - "pastries": 39409, - "pastry": 18582, - "pasture": 34764, - "pastures": 47793, - "pat": 1300, - "pat": 7036, - "patag": 29862, - "patagonia": 32786, - "patch": 29284, - "patch": 8721, - "patches": 22104, - "patchwork": 44675, - "patchy": 47488, - "pate": 42122, - "pate": 42098, - "patel": 14168, - "patent": 14692, - "patented": 37277, - "patents": 33911, - "paterson": 36560, - "path": 7408, - "path": 5035, - "pathetic": 18222, - "pathfinder": 35415, - "pathi": 34976, - "pathi": 27347, - "pathic": 49025, - "patho": 18534, - "pathology": 23290, - "paths": 16333, - "pathway": 23488, - "pathways": 24690, - "pathy": 13330, - "pati": 2799, - "pati": 26708, - "patience": 13575, - "patient": 30139, - "patient": 6262, - "patiently": 22980, - "patients": 5543, - "patil": 49187, - "patio": 14304, - "pational": 30627, - "patna": 45025, - "patory": 41859, - "patreon": 17165, - "patri": 4771, - "patriarch": 49054, - "patriarchy": 48806, - "patric": 12569, - "patrice": 40731, - "patricia": 18143, - "patrick": 12078, - "patrick": 5286, - "patricks": 46783, - "patriot": 28896, - "patriot": 15692, - "patrioti": 35520, - "patriotic": 20217, - "patriotism": 35807, - "patriots": 8707, - "patro": 31650, - "patrol": 10073, - "patrolling": 39344, - "patrols": 35978, - "patron": 26658, - "patron": 17683, - "patrons": 28308, - "pats": 24874, - "patsy": 46093, - "patt": 12637, - "patter": 4982, - "pattern": 7447, - "patterned": 47212, - "patterns": 11637, - "patterson": 21384, - "patti": 44927, - "patti": 26123, - "pattinson": 32474, - "patton": 29026, - "patty": 48741, - "patty": 18321, - "pau": 1834, - "pau": 35970, - "paul": 6035, - "paul": 2597, - "paula": 37363, - "paula": 16777, - "pauline": 30438, - "paulo": 48002, - "paulo": 21628, - "pauls": 41413, - "pauls": 40010, - "paulson": 48201, - "pause": 19439, - "paused": 46782, - "pav": 6661, - "pave": 37107, - "paved": 27898, - "pavel": 43152, - "pavement": 27669, - "pavilion": 13374, - "paving": 28651, - "paw": 14009, - "paw": 16016, - "pawan": 29754, - "pawankalyan": 33702, - "pawn": 43195, - "paws": 16714, - "pax": 20007, - "pax": 19033, - "paxton": 38347, - "pay": 2642, - "pay": 3345, - "payback": 36413, - "paycheck": 45078, - "payday": 26957, - "payee": 46985, - "payer": 41503, - "paying": 8341, - "payment": 10596, - "payments": 11832, - "payne": 12775, - "paypal": 21442, - "payroll": 31610, - "pays": 10845, - "paysoff": 48174, - "paytm": 45352, - "payton": 27348, - "paz": 22267, - "pb": 20112, - "pb": 10981, - "pba": 28205, - "pbb": 48567, - "pbb": 40589, - "pbc": 49191, - "pbl": 35166, - "pbr": 32998, - "pbs": 17908, - "pc": 6782, - "pc": 3808, - "pca": 35705, - "pcb": 26235, - "pcc": 36059, - "pci": 38957, - "pcm": 47436, - "pcr": 35704, - "pcs": 11917, - "pcso": 31963, - "pct": 22168, - "pd": 4387, - "pd": 4675, - "pdates": 16842, - "pdc": 40498, - "pdf": 15181, - "pdp": 24601, - "pdt": 21743, - "pdx": 25470, - "pdx": 16153, - "pe": 661, - "pe": 956, - "pea": 13915, - "peabo": 34083, - "peabody": 41244, - "peac": 34615, - "peace": 6249, - "peace": 3021, - "peaceful": 9461, - "peacefully": 30530, - "peacekeeping": 43630, - "peach": 10522, - "peach": 11538, - "peaches": 27216, - "peak": 18572, - "peak": 6026, - "peakdistrict": 41289, - "peake": 24810, - "peaked": 36391, - "peaks": 14067, - "pean": 11563, - "peanu": 25843, - "peanut": 12491, - "peanuts": 26503, - "pear": 4910, - "pear": 18820, - "pearce": 25996, - "pearl": 21806, - "pearl": 8560, - "pearljam": 46739, - "pearls": 19581, - "pears": 39565, - "pearson": 20461, - "peas": 15937, - "peasant": 40621, - "peasants": 48788, - "peat": 26914, - "pebble": 28056, - "pebbles": 40155, - "pec": 32447, - "pec": 17611, - "pecan": 32177, - "peck": 25186, - "peck": 29234, - "pecker": 30169, - "peckham": 45863, - "pecu": 34200, - "peculiar": 42808, - "ped": 13197, - "ped": 2966, - "pedago": 34590, - "pedagogy": 48072, - "pedal": 32943, - "pedal": 19621, - "pedals": 38535, - "pede": 12862, - "pede": 19560, - "pedestri": 30027, - "pedestrian": 18256, - "pedestrians": 33895, - "pedi": 12967, - "pedia": 11733, - "pediatric": 48431, - "pediatric": 22071, - "pedic": 35319, - "pedic": 44528, - "pedro": 29963, - "pedro": 15114, - "peds": 45377, - "pee": 12988, - "pee": 11196, - "peed": 47369, - "peek": 46323, - "peek": 7569, - "peeking": 48771, - "peel": 34386, - "peel": 17158, - "peeled": 33533, - "peeling": 48649, - "peep": 25425, - "peep": 16857, - "peeps": 11681, - "peer": 32416, - "peer": 14432, - "peers": 21626, - "pees": 31830, - "peg": 32182, - "peg": 11207, - "pegas": 30018, - "pegasus": 37822, - "peggy": 24271, - "pei": 48166, - "pei": 12917, - "pel": 4286, - "pel": 7006, - "pele": 44105, - "pelican": 34131, - "pelicans": 29363, - "pell": 46981, - "pelle": 31267, - "pelled": 32506, - "pellegr": 38529, - "pellets": 48240, - "pelo": 40192, - "pelo": 40238, - "pelosi": 22169, - "pelvic": 45646, - "pemb": 19880, - "pembro": 24084, - "pembroke": 36702, - "pembroke": 40044, - "pembrokeshire": 40695, - "pen": 1501, - "pen": 5356, - "pena": 35788, - "penalties": 25417, - "penalty": 11491, - "penang": 29545, - "penc": 20065, - "pence": 18002, - "pencil": 41303, - "pencil": 11200, - "pencils": 21909, - "pend": 3052, - "pendant": 12415, - "pendants": 44117, - "pending": 12770, - "pendleton": 44272, - "pendu": 45336, - "penelope": 36703, - "penetr": 26058, - "peng": 42955, - "peng": 39200, - "pengu": 8854, - "penguin": 28249, - "penguin": 14952, - "penguins": 16557, - "peninsu": 13464, - "peninsula": 14070, - "penn": 7760, - "penn": 11128, - "pennant": 43971, - "penned": 45077, - "penney": 47856, - "pennies": 43094, - "pennsylvania": 13673, - "penny": 20400, - "penny": 11388, - "pens": 13307, - "pens": 13310, - "pensac": 30925, - "pensacola": 33573, - "pension": 32840, - "pension": 17764, - "pensions": 29773, - "penske": 47154, - "pent": 10699, - "pent": 22725, - "pentagon": 23133, - "pente": 33165, - "penthouse": 32673, - "penultimate": 36553, - "peop": 1030, - "people": 10573, - "people": 1047, - "peoples": 28241, - "peoples": 14627, - "peopleschoice": 32418, - "peoplesvote": 45830, - "peoria": 36985, - "pep": 12761, - "pep": 14898, - "pepe": 24778, - "pepp": 34425, - "pepper": 14861, - "pepper": 8253, - "peppermint": 30321, - "pepperoni": 47307, - "peppers": 14650, - "pepsi": 21307, - "per": 703, - "per": 1284, - "pera": 26294, - "perce": 24135, - "perceived": 38436, - "percent": 16328, - "percent": 9017, - "percentage": 19477, - "percep": 28017, - "perception": 20591, - "perceptions": 38138, - "perch": 34281, - "perched": 40071, - "percu": 41722, - "percussion": 23980, - "percy": 23940, - "pere": 8665, - "pere": 36300, - "pered": 24509, - "peregr": 37479, - "peregrine": 44546, - "pereira": 43927, - "peren": 24564, - "perenni": 26996, - "perennial": 34038, - "perez": 15107, - "perf": 22816, - "perfe": 1624, - "perfec": 6599, - "perfect": 17261, - "perfect": 1878, - "perfection": 9646, - "perfectly": 8037, - "perfecto": 42898, - "perfor": 2311, - "perform": 3866, - "perform": 5940, - "performan": 8973, - "performance": 2714, - "performances": 9553, - "performed": 9997, - "performer": 17061, - "performers": 18476, - "performing": 5170, - "performs": 13839, - "perfu": 14214, - "perfume": 17525, - "perhaps": 9297, - "peri": 12618, - "peri": 44068, - "perience": 19302, - "peril": 40119, - "peril": 48301, - "perimeter": 38499, - "pering": 29746, - "perio": 5101, - "period": 6131, - "periodic": 36476, - "periods": 24401, - "periph": 35308, - "peripheral": 43901, - "peris": 19461, - "periscope": 21668, - "perk": 33424, - "perkins": 20057, - "perks": 17660, - "perl": 44018, - "perm": 47847, - "perman": 9018, - "permanent": 11144, - "permanently": 25584, - "perme": 42456, - "permission": 15822, - "permit": 21950, - "permits": 33267, - "permitted": 44380, - "pero": 23551, - "perpe": 15749, - "perpetr": 33376, - "perpetu": 30132, - "perpetual": 32018, - "perrie": 32691, - "perry": 28478, - "perry": 7899, - "pers": 3688, - "pers": 10710, - "perse": 27498, - "persecu": 22878, - "persecution": 32009, - "perseverance": 29820, - "persi": 11509, - "persian": 19859, - "persist": 19412, - "persist": 40938, - "persistence": 34588, - "persistent": 29028, - "person": 3510, - "person": 2533, - "persona": 18401, - "personal": 10114, - "personal": 4121, - "personalised": 24186, - "personalities": 27888, - "personality": 10386, - "personalized": 17845, - "personally": 13885, - "personnel": 14546, - "persons": 14592, - "perspec": 17997, - "perspective": 8996, - "perspectives": 18777, - "persu": 20972, - "pert": 36970, - "pert": 16306, - "perth": 19067, - "perth": 11011, - "peru": 20612, - "peru": 12964, - "peruvian": 30822, - "pes": 38368, - "pes": 2598, - "pesa": 47409, - "pesc": 44044, - "pesh": 33184, - "peshaw": 28524, - "peshawar": 29230, - "pesky": 42512, - "pesos": 47872, - "pessi": 43902, - "pest": 20130, - "pest": 9425, - "pesticide": 48481, - "pesticides": 37868, - "pesto": 26186, - "pests": 41919, - "pet": 2167, - "pet": 3703, - "peta": 28785, - "petal": 38430, - "petal": 40469, - "petals": 26064, - "petday": 45314, - "pete": 14479, - "pete": 8571, - "peter": 5093, - "peter": 3696, - "peterborough": 26012, - "peters": 16336, - "petersburg": 21052, - "petersen": 39794, - "peterson": 16877, - "peth": 48920, - "petit": 36437, - "petit": 21276, - "petite": 27213, - "petition": 10975, - "petitions": 43536, - "petr": 29808, - "petra": 31300, - "petre": 47179, - "petri": 31831, - "petro": 8716, - "petrol": 18149, - "petroleum": 22063, - "petron": 42875, - "pets": 7663, - "pett": 27051, - "petti": 48001, - "petting": 44334, - "petty": 17324, - "peu": 21411, - "peuge": 22893, - "peugeot": 24129, - "pew": 21608, - "pew": 30783, - "pewdie": 41882, - "pewdiepie": 42563, - "pex": 43765, - "pey": 14966, - "pey": 30933, - "peyton": 49254, - "peyton": 20307, - "pez": 45798, - "pez": 10482, - "pf": 16680, - "pf": 12572, - "pfa": 47839, - "pfc": 35007, - "pff": 44121, - "pfi": 29810, - "pfw": 31229, - "pg": 12476, - "pg": 5211, - "pga": 13351, - "pgat": 36514, - "pgatour": 40094, - "pgh": 44862, - "pgh": 30031, - "pgs": 49204, - "ph": 745, - "ph": 2042, - "pha": 4443, - "pha": 26255, - "phal": 19962, - "phan": 8731, - "phan": 40126, - "phant": 36998, - "phantom": 37688, - "phantom": 14490, - "phar": 5570, - "phara": 35792, - "pharaoh": 40437, - "pharm": 45761, - "pharma": 17831, - "pharmac": 8193, - "pharmaceu": 19490, - "pharmaceutical": 25217, - "pharmaceuticals": 44623, - "pharmacist": 41024, - "pharmacists": 44337, - "pharmacy": 15293, - "pharo": 42308, - "pharoah": 49287, - "pharrell": 31316, - "phase": 8304, - "phases": 35337, - "phat": 42492, - "phc": 41102, - "phd": 20875, - "phd": 8472, - "phdchat": 39564, - "phdlife": 39638, - "phe": 4787, - "phe": 19853, - "pheasant": 41983, - "phee": 41292, - "phel": 23711, - "phelps": 27128, - "phen": 7718, - "pheno": 47336, - "phenom": 31673, - "phenom": 39618, - "phenomen": 11304, - "phenomena": 41538, - "phenomenal": 15035, - "phenomenon": 24464, - "pher": 9194, - "pher": 19828, - "phers": 29531, - "pherson": 36421, - "phew": 10295, - "phi": 2239, - "phi": 12220, - "phia": 9228, - "phic": 3977, - "phie": 30237, - "phies": 17062, - "phil": 2821, - "phil": 6199, - "phila": 47443, - "philadel": 9428, - "philadelphia": 9749, - "philanthro": 16587, - "philanthropist": 44153, - "philanthropy": 25047, - "philately": 33695, - "phile": 36543, - "philharmon": 25228, - "philharmonic": 31699, - "phili": 4277, - "philia": 46654, - "philip": 20748, - "philip": 11074, - "philipp": 5623, - "philipp": 47591, - "philippe": 20942, - "philippine": 17629, - "philippines": 8149, - "philips": 25175, - "phill": 42346, - "phill": 48272, - "philli": 6456, - "phillies": 18748, - "phillip": 48832, - "phillip": 19323, - "phillips": 11041, - "philly": 19545, - "philly": 7785, - "philos": 8395, - "philosop": 20349, - "philosoph": 10187, - "philosopher": 25220, - "philosophical": 32628, - "philosophy": 12213, - "phils": 38573, - "phin": 33816, - "phine": 40985, - "phins": 40210, - "phish": 36897, - "phishing": 36546, - "phl": 25603, - "pho": 816, - "pho": 22707, - "phobia": 28749, - "phoe": 22673, - "phoebe": 27582, - "phoeni": 6778, - "phoenix": 20615, - "phoenix": 7793, - "phol": 48140, - "phon": 19602, - "phon": 31115, - "phone": 15486, - "phone": 1951, - "phones": 6351, - "phony": 31925, - "phora": 31363, - "phosp": 22638, - "photo": 1153, - "photo": 1125, - "photobomb": 37075, - "photobook": 41894, - "photog": 28115, - "photogenic": 36108, - "photogra": 36754, - "photograph": 1688, - "photograph": 8853, - "photographed": 11573, - "photographer": 5748, - "photographers": 17141, - "photographic": 22053, - "photographing": 30074, - "photographs": 15759, - "photography": 33183, - "photography": 2108, - "photom": 32223, - "photoo": 11106, - "photooftheday": 11933, - "photos": 2479, - "photoshoot": 11121, - "photoshop": 12419, - "photoshopped": 35738, - "phouse": 27848, - "php": 17370, - "phra": 12777, - "phrase": 18809, - "phrases": 35264, - "phs": 16495, - "phu": 21274, - "phuket": 34028, - "phx": 35466, - "phx": 29507, - "phy": 6484, - "phy": 4292, - "phyl": 35600, - "phyllis": 37844, - "phys": 3734, - "phys": 37894, - "physi": 13782, - "physic": 46641, - "physical": 44127, - "physical": 6671, - "physically": 18105, - "physician": 21055, - "physicians": 26702, - "physicist": 29052, - "physics": 9369, - "physio": 29574, - "physio": 29177, - "physiology": 32349, - "physique": 42884, - "phyto": 42197, - "pi": 741, - "pi": 5357, - "pia": 8918, - "pian": 24637, - "pianist": 21048, - "piano": 49278, - "piano": 7894, - "pianos": 47904, - "piazza": 28496, - "pic": 901, - "pic": 1282, - "pical": 5482, - "picard": 48507, - "picasso": 21481, - "piccad": 33876, - "piccadilly": 37287, - "piccollage": 43621, - "pick": 6379, - "pick": 3142, - "picked": 6018, - "picker": 43105, - "pickering": 47605, - "picket": 33559, - "picking": 9545, - "pickle": 24570, - "pickled": 21705, - "pickles": 25001, - "picks": 8551, - "pickup": 15382, - "pickups": 33383, - "picnic": 12007, - "pico": 23363, - "picoftheday": 18319, - "pics": 2559, - "pict": 18778, - "pictorial": 40640, - "picture": 11663, - "picture": 1674, - "pictured": 7647, - "pictures": 3646, - "picturesque": 24894, - "pid": 5225, - "piday": 48056, - "pie": 12065, - "pie": 5319, - "piece": 39632, - "piece": 2754, - "pieces": 6194, - "pied": 24686, - "pied": 12713, - "piedmont": 39691, - "pier": 5641, - "pier": 11348, - "pierc": 49216, - "pierce": 48462, - "pierce": 16782, - "pierced": 32799, - "piercing": 22557, - "piero": 43125, - "pierre": 34670, - "pierre": 11985, - "piers": 29030, - "pies": 6898, - "pieter": 44801, - "pietro": 42169, - "piff": 40719, - "pig": 12009, - "pig": 9619, - "pigeon": 18008, - "pigeons": 32910, - "piggy": 28245, - "pigment": 40284, - "pigs": 16228, - "pik": 48539, - "pika": 47372, - "pikach": 27268, - "pikachu": 28107, - "pike": 33457, - "pike": 14011, - "pil": 2893, - "pil": 20645, - "pilates": 29518, - "pile": 44403, - "pile": 13930, - "piled": 26873, - "piles": 31968, - "pilgri": 13966, - "pilgrim": 32662, - "pilgrimage": 24335, - "pilgrims": 31370, - "piling": 43050, - "pilip": 27234, - "pilipinas": 32392, - "pill": 14830, - "pill": 19226, - "pillar": 17322, - "pillars": 22054, - "pillow": 42237, - "pillow": 12182, - "pillows": 26499, - "pills": 23964, - "pilo": 37526, - "pilot": 31619, - "pilot": 6687, - "pilots": 15586, - "pilsner": 47153, - "pim": 15285, - "pim": 35472, - "pimp": 35789, - "pin": 2629, - "pin": 5164, - "pinball": 31679, - "pinch": 26114, - "pine": 9398, - "pine": 7374, - "pineapple": 14831, - "pines": 20338, - "ping": 23720, - "ping": 2089, - "pinion": 40557, - "pink": 11151, - "pink": 3360, - "pinkfloyd": 48520, - "pinky": 29803, - "pinn": 31448, - "pinnacle": 32754, - "pinned": 12165, - "pinning": 44515, - "pino": 36633, - "pinot": 41399, - "pinot": 21146, - "pinoy": 43578, - "pinoy": 35258, - "pins": 14619, - "pinst": 41173, - "pint": 42537, - "pint": 13584, - "pinterest": 15379, - "pinto": 35992, - "pints": 27935, - "pinup": 37349, - "pio": 22108, - "pion": 36728, - "pion": 29190, - "pione": 7975, - "pioneer": 34892, - "pioneer": 12459, - "pioneering": 25933, - "pioneers": 22383, - "pious": 42441, - "pip": 30854, - "pipe": 29333, - "pipe": 10459, - "pipel": 12387, - "pipeline": 14151, - "pipelines": 39683, - "piper": 47052, - "piper": 16293, - "pipes": 16991, - "piping": 40744, - "pippa": 47672, - "pir": 4351, - "pir": 38899, - "piracy": 39452, - "piran": 49034, - "pirate": 38680, - "pirate": 13592, - "pirates": 10442, - "pire": 16613, - "pires": 14988, - "pis": 9230, - "pis": 44441, - "pisa": 43632, - "pisces": 45982, - "piss": 20818, - "pissed": 17989, - "pist": 15556, - "pist": 32826, - "pistachi": 29760, - "pistachio": 36320, - "pistol": 20480, - "piston": 48236, - "pistons": 27242, - "pistor": 48162, - "pit": 2946, - "pit": 7476, - "pita": 27070, - "pitbull": 25295, - "pitch": 8992, - "pitch": 5872, - "pitched": 28447, - "pitcher": 13445, - "pitchers": 27835, - "pitches": 21005, - "pitching": 16455, - "piti": 47568, - "pits": 24144, - "pitt": 7607, - "pitt": 15599, - "pitts": 9531, - "pittsburgh": 10453, - "pity": 24380, - "pius": 39988, - "pivo": 18009, - "pivot": 31805, - "pivotal": 31432, - "pix": 6185, - "pix": 13088, - "pixar": 27493, - "pixel": 14384, - "pixel": 13241, - "pixelart": 18516, - "pixels": 34099, - "pixie": 35573, - "piyu": 30772, - "piyush": 36191, - "piyushgoyal": 45318, - "pizz": 3897, - "pizza": 4474, - "pizzas": 30647, - "pizzeria": 44174, - "pj": 12524, - "pj": 17179, - "pjnet": 22011, - "pjs": 36009, - "pk": 10149, - "pk": 10991, - "pkg": 49011, - "pkk": 47480, - "pknot": 41779, - "pkwy": 36827, - "pl": 712, - "pl": 5678, - "pla": 841, - "pla": 19945, - "plac": 2331, - "place": 14884, - "place": 1445, - "placed": 9729, - "placement": 16724, - "placements": 43885, - "placer": 49170, - "places": 4448, - "placing": 18531, - "plague": 25360, - "plaid": 23291, - "plain": 22776, - "plain": 10709, - "plains": 16345, - "plan": 1740, - "plan": 2970, - "pland": 24801, - "plane": 22728, - "plane": 5363, - "planes": 12581, - "planet": 16833, - "planet": 5172, - "planetary": 28361, - "planets": 22315, - "plank": 30991, - "plankton": 48249, - "plann": 6409, - "planned": 8169, - "planner": 18083, - "planners": 33664, - "planning": 4446, - "plano": 34063, - "plans": 4181, - "plant": 8521, - "plant": 3912, - "plantation": 20014, - "plantbased": 33720, - "planted": 14286, - "planter": 34453, - "planters": 43661, - "planting": 13922, - "plants": 5829, - "plaque": 16097, - "plaques": 45610, - "plar": 26754, - "plas": 45673, - "plasma": 24999, - "plaster": 31980, - "plastic": 15645, - "plastic": 6102, - "plasticpollution": 47129, - "plastics": 20999, - "plasticsurgery": 48555, - "plat": 3172, - "plata": 46456, - "plate": 28744, - "plate": 5135, - "plateau": 29301, - "plated": 21161, - "plates": 11485, - "platform": 5549, - "platforms": 13551, - "platin": 10267, - "plating": 44564, - "platinum": 10979, - "plato": 41101, - "platoon": 41254, - "platt": 44459, - "platt": 40097, - "platte": 46785, - "platter": 29071, - "platz": 40878, - "plau": 39139, - "play": 1222, - "play": 1453, - "playa": 23756, - "playable": 33885, - "playback": 39194, - "playbook": 34856, - "playboy": 24383, - "played": 3432, - "player": 24503, - "player": 2477, - "players": 3030, - "playful": 23871, - "playground": 15861, - "playhouse": 23254, - "playin": 24674, - "playing": 47368, - "playing": 1629, - "playlist": 9180, - "playlists": 47183, - "playo": 5804, - "playoff": 9655, - "playoffs": 9548, - "plays": 5134, - "playstation": 11332, - "playtime": 43037, - "playwright": 32070, - "plaza": 8943, - "plc": 16827, - "ple": 926, - "ple": 1619, - "plea": 21956, - "plead": 47539, - "pleads": 31425, - "plear": 21362, - "pleas": 8481, - "pleas": 48740, - "pleasant": 12271, - "please": 41074, - "please": 1474, - "pleased": 6107, - "pleasing": 32893, - "pleasure": 5854, - "pleasures": 29513, - "pledge": 11507, - "pledged": 36799, - "pledges": 26746, - "pledis": 41202, - "plein": 43429, - "plenary": 19891, - "plenty": 7524, - "pler": 17677, - "ples": 6248, - "pless": 39821, - "pless": 17059, - "plets": 43230, - "plex": 23765, - "plex": 15241, - "pley": 19543, - "pli": 30001, - "pli": 45797, - "plic": 5806, - "plicity": 19823, - "plight": 40317, - "plin": 44531, - "plin": 32335, - "pline": 25376, - "pling": 12899, - "plings": 31184, - "pll": 47629, - "pll": 25266, - "pln": 48755, - "plo": 1778, - "plo": 43523, - "plor": 34695, - "plot": 9918, - "plots": 25672, - "plotting": 30751, - "plough": 33811, - "plow": 38363, - "pls": 5572, - "plu": 2052, - "plug": 12628, - "plugged": 23261, - "plugin": 31278, - "plugins": 48797, - "plugs": 28083, - "plum": 26267, - "plum": 16202, - "plumb": 21769, - "plumber": 43478, - "plumbing": 24647, - "plume": 39495, - "plun": 15122, - "plunge": 26506, - "plur": 44664, - "plus": 3097, - "plush": 18926, - "pluto": 26380, - "ply": 17249, - "ply": 28705, - "plying": 36071, - "plym": 11907, - "plymouth": 13786, - "plz": 10538, - "pm": 13699, - "pm": 990, - "pmi": 41206, - "pmln": 23208, - "pmo": 18782, - "pmoindia": 20374, - "pms": 44223, - "pn": 14431, - "pn": 13774, - "pnc": 37148, - "pne": 30966, - "pneu": 28714, - "pneumonia": 42906, - "png": 20992, - "pnp": 25972, - "pnpp": 42175, - "pnw": 31521, - "po": 628, - "po": 3057, - "poa": 43912, - "poached": 27665, - "poaching": 35140, - "poc": 13232, - "poc": 27780, - "pocaly": 37987, - "pocalypse": 42307, - "poche": 38336, - "poche": 39022, - "pocket": 29147, - "pocket": 8504, - "pockets": 19566, - "pocon": 41850, - "pod": 3583, - "pod": 7446, - "podcast": 39654, - "podcast": 4294, - "podcasting": 40106, - "podcasts": 19392, - "pode": 33368, - "poder": 24960, - "podernfamily": 26620, - "podi": 32853, - "podium": 14093, - "pods": 18776, - "poe": 4746, - "poe": 19254, - "poem": 9436, - "poems": 15577, - "poet": 41019, - "poet": 9872, - "poetic": 26365, - "poetry": 20192, - "poetry": 6038, - "poetryday": 39255, - "poets": 19804, - "pof": 40850, - "poff": 28236, - "pogba": 25998, - "poign": 29682, - "poignant": 32138, - "poin": 9074, - "point": 13280, - "point": 2301, - "pointe": 24631, - "pointed": 20703, - "pointer": 29883, - "pointers": 36760, - "pointing": 19233, - "pointless": 33586, - "points": 3396, - "pois": 17008, - "poise": 45087, - "poised": 27354, - "poison": 30722, - "poison": 17074, - "poisoned": 43624, - "poisoning": 25750, - "poisonous": 37131, - "pok": 15387, - "poke": 6892, - "poke": 23186, - "pokemon": 16239, - "pokemon": 9528, - "pokemongo": 23985, - "poker": 30735, - "poker": 11865, - "pokes": 40221, - "poking": 49169, - "poké": 20656, - "pokémon": 22066, - "pol": 977, - "pol": 7649, - "pola": 43876, - "poland": 9834, - "polar": 21432, - "polar": 12214, - "polari": 27919, - "polaris": 37965, - "polarized": 48437, - "polaro": 25237, - "polaroid": 30427, - "poldark": 41322, - "pole": 26682, - "pole": 8170, - "poles": 22585, - "poli": 9675, - "poli": 5414, - "polic": 16126, - "police": 15535, - "police": 2120, - "policeman": 37713, - "policemen": 47946, - "polici": 10819, - "policies": 10993, - "policing": 20969, - "policy": 30173, - "policy": 4660, - "polio": 30533, - "polis": 16133, - "polish": 46941, - "polish": 9632, - "polished": 21478, - "polishing": 43629, - "polit": 2247, - "politan": 15337, - "polite": 31497, - "politi": 40597, - "politic": 33333, - "political": 37744, - "political": 4197, - "politically": 24323, - "politician": 15960, - "politicians": 12914, - "politico": 39403, - "politics": 4929, - "polk": 33317, - "polka": 29476, - "poll": 7032, - "pollen": 27651, - "pollin": 19152, - "pollinators": 36599, - "polling": 18024, - "pollo": 42755, - "pollock": 37614, - "polls": 11813, - "pollu": 8370, - "polluted": 43346, - "pollution": 10384, - "polly": 31204, - "polo": 35928, - "polo": 10229, - "poly": 6833, - "poly": 18367, - "polye": 31730, - "polyester": 38514, - "polym": 23626, - "polymer": 29993, - "polyne": 38892, - "polyvore": 24771, - "pom": 7548, - "pom": 24280, - "pome": 27963, - "pomegran": 29326, - "pomegranate": 32415, - "pomer": 35156, - "pomona": 41690, - "pompe": 18352, - "pompeii": 47775, - "pompeo": 34351, - "pompey": 35079, - "pon": 3809, - "pon": 22391, - "ponce": 43637, - "pond": 10750, - "ponder": 36863, - "pondering": 47395, - "ponds": 31033, - "pone": 32183, - "pong": 40546, - "pong": 17710, - "ponies": 34157, - "pons": 41255, - "pont": 47563, - "pont": 22997, - "ponte": 40892, - "ponti": 15527, - "pontiac": 25373, - "pontifex": 33566, - "ponty": 45152, - "pony": 24438, - "pony": 12678, - "ponytail": 43265, - "poo": 6601, - "poo": 14389, - "pooch": 37037, - "poodle": 34961, - "pooh": 27103, - "pooja": 35676, - "pool": 12484, - "pool": 2831, - "poole": 26290, - "pools": 18736, - "poolside": 35509, - "poon": 33799, - "poon": 36178, - "poop": 23310, - "poor": 14528, - "poor": 3665, - "poorest": 40771, - "poorly": 21101, - "pop": 6530, - "pop": 2852, - "popart": 47425, - "popcorn": 15034, - "pope": 16994, - "pope": 9283, - "popefrancis": 37254, - "poplar": 38726, - "popo": 38835, - "popo": 35572, - "popp": 13156, - "popped": 14934, - "poppies": 30385, - "poppin": 28536, - "popping": 18152, - "poppins": 41216, - "poppy": 32194, - "poppy": 15447, - "pops": 11705, - "popsic": 38481, - "popu": 3785, - "popul": 6593, - "popular": 15854, - "popular": 4368, - "popularity": 19235, - "populated": 38420, - "population": 8423, - "populations": 23797, - "populism": 48998, - "populist": 49376, - "popup": 33053, - "por": 817, - "por": 7697, - "pora": 23537, - "porcel": 19409, - "porcelain": 20451, - "porch": 17154, - "pore": 28267, - "pork": 40379, - "pork": 7897, - "poro": 48110, - "porridge": 34924, - "porsch": 48009, - "porsche": 44049, - "porsche": 8783, - "port": 1641, - "port": 1418, - "porta": 45037, - "portable": 11949, - "portage": 32087, - "portal": 14982, - "porte": 28654, - "ported": 16879, - "porter": 28319, - "porter": 10318, - "porters": 15670, - "portfoli": 45766, - "portfolio": 11938, - "porth": 37425, - "porti": 45760, - "porting": 26052, - "portion": 13739, - "portions": 22914, - "portland": 38366, - "portland": 8880, - "portman": 34755, - "porto": 24853, - "porto": 18947, - "portobello": 48025, - "portra": 4175, - "portrait": 39312, - "portrait": 5352, - "portraits": 14203, - "portray": 46282, - "portrayal": 39238, - "portrayed": 36093, - "ports": 7734, - "portsm": 17063, - "portsmouth": 19074, - "portu": 7159, - "portugal": 9503, - "portugue": 17498, - "portuguese": 18019, - "pos": 1780, - "pos": 11839, - "pose": 25478, - "pose": 4230, - "posed": 5206, - "posei": 47270, - "poser": 46899, - "poses": 9773, - "posey": 34852, - "posh": 26748, - "posing": 10518, - "posit": 28793, - "positi": 7895, - "position": 4657, - "positioned": 34482, - "positioning": 30657, - "positions": 12188, - "positive": 21811, - "positive": 4844, - "positively": 24688, - "positivity": 19966, - "poss": 39745, - "posse": 17414, - "posse": 28413, - "possess": 36810, - "possessed": 36220, - "possession": 16154, - "possessions": 40588, - "possi": 2521, - "possibilities": 17932, - "possibility": 18517, - "possible": 3134, - "possibly": 8601, - "possum": 38575, - "post": 3489, - "post": 1549, - "postage": 27570, - "postal": 21687, - "postcard": 14785, - "postcards": 23922, - "postdoc": 41013, - "posted": 4752, - "poster": 22881, - "poster": 3574, - "posters": 9673, - "postgame": 34873, - "postgraduate": 31997, - "posthum": 42410, - "posting": 7559, - "postman": 38285, - "postpon": 23247, - "postponed": 25097, - "posts": 7824, - "postseason": 24521, - "posture": 29681, - "posure": 35539, - "pot": 3547, - "pot": 5168, - "potam": 45825, - "potassi": 36889, - "potassium": 37147, - "potat": 5975, - "potato": 8527, - "potatoes": 11567, - "potd": 28765, - "pote": 41869, - "poten": 4454, - "potent": 26082, - "potenti": 44104, - "potential": 5100, - "potentially": 16508, - "potholes": 47506, - "potion": 46055, - "potom": 38848, - "potomac": 43372, - "pots": 19234, - "pott": 28698, - "potted": 48581, - "potter": 24975, - "potter": 9026, - "pottery": 18396, - "potts": 39839, - "potty": 43569, - "potus": 8740, - "pou": 9423, - "pouch": 26811, - "poul": 22485, - "poultry": 31005, - "poun": 33719, - "pound": 33809, - "pound": 10674, - "pounding": 46544, - "pounds": 10752, - "pour": 33112, - "pour": 8180, - "poured": 26621, - "pouring": 16098, - "pours": 26005, - "pout": 39621, - "poutine": 43768, - "pov": 25731, - "pover": 8432, - "pover": 29464, - "poverty": 9095, - "pow": 1317, - "pow": 17745, - "powder": 32427, - "powder": 9674, - "powe": 36955, - "powell": 13305, - "power": 2789, - "power": 1807, - "powerball": 47803, - "powered": 45442, - "powered": 7332, - "powerful": 4875, - "powerhouse": 22858, - "powering": 16231, - "powerof": 31961, - "powerpoint": 38940, - "powerrangers": 40620, - "powers": 9422, - "pox": 43649, - "poy": 34737, - "poyn": 47655, - "poz": 39953, - "pp": 604, - "pp": 4186, - "ppa": 10416, - "ppard": 23391, - "ppc": 27778, - "ppe": 24573, - "ppe": 11867, - "pped": 1873, - "ppel": 46523, - "ppen": 30663, - "pper": 6719, - "pper": 2440, - "ppers": 5232, - "ppery": 27833, - "ppet": 20744, - "ppets": 25849, - "ppg": 27433, - "ppi": 9594, - "ppie": 33795, - "ppin": 8076, - "pping": 22214, - "pping": 1682, - "ppings": 35687, - "ppl": 6758, - "pple": 12302, - "ppm": 42053, - "ppo": 10215, - "ppor": 37613, - "ppp": 14017, - "pps": 10683, - "ppv": 38864, - "ppy": 30360, - "ppy": 3860, - "pr": 766, - "pr": 4150, - "pra": 1865, - "pra": 19285, - "prab": 17901, - "prabhas": 29959, - "prabhu": 31529, - "prac": 2243, - "practi": 29995, - "practic": 5495, - "practical": 10792, - "practically": 25588, - "practice": 3349, - "practiced": 36749, - "practices": 9040, - "practicing": 12750, - "practise": 38938, - "practising": 36478, - "practiti": 19909, - "practitioner": 32591, - "practitioners": 29045, - "prada": 29456, - "pradesh": 15384, - "prado": 44141, - "prag": 31025, - "prague": 14940, - "prairi": 12629, - "prairie": 14753, - "praise": 10013, - "praised": 27649, - "praises": 23049, - "praising": 36961, - "prakash": 43708, - "prakash": 25366, - "pram": 47774, - "pran": 20048, - "prank": 23654, - "pras": 41562, - "prasad": 29562, - "prat": 23069, - "prati": 45773, - "pratt": 37863, - "pratt": 23396, - "prawn": 33102, - "prawns": 34903, - "pray": 12671, - "pray": 6041, - "prayed": 34665, - "prayer": 41452, - "prayer": 6583, - "prayers": 8393, - "prayfor": 18443, - "praying": 11550, - "prays": 46602, - "prc": 28781, - "pre": 679, - "pre": 2900, - "preach": 22545, - "preacher": 29357, - "preaching": 23642, - "precau": 36532, - "precautions": 47845, - "prece": 15361, - "preci": 5470, - "precin": 27908, - "precinct": 32587, - "precious": 8226, - "precipit": 27463, - "precipitation": 33399, - "precise": 24457, - "precisely": 34954, - "precision": 44021, - "precision": 15621, - "pred": 40370, - "predat": 13364, - "predator": 20653, - "predators": 25569, - "prede": 38454, - "predecess": 38963, - "predic": 4876, - "predict": 16900, - "predictable": 25344, - "predicted": 18702, - "predicting": 30414, - "prediction": 16296, - "predictions": 15125, - "predictive": 29798, - "predicts": 25960, - "preds": 40125, - "pree": 47026, - "preet": 30131, - "prefe": 14542, - "prefecture": 32890, - "prefer": 33426, - "prefer": 11450, - "preference": 35057, - "preferences": 38118, - "preferred": 18772, - "prefers": 38528, - "pregame": 18575, - "pregn": 7190, - "pregnancy": 12769, - "pregnant": 11195, - "prehistoric": 32750, - "prejudice": 28337, - "preli": 15523, - "prelimin": 19990, - "preliminary": 20997, - "prelims": 43223, - "prelude": 42966, - "prem": 32090, - "prem": 21724, - "premature": 39253, - "premi": 2413, - "premier": 16996, - "premier": 5539, - "premiere": 5367, - "premiered": 27652, - "premieres": 19907, - "premiering": 32615, - "premierleague": 22608, - "premiers": 44883, - "premiership": 23665, - "premiosm": 38460, - "premiosmtvmiaw": 38630, - "premise": 45952, - "premises": 27266, - "premium": 8011, - "pren": 20801, - "preneur": 46288, - "preorder": 16703, - "preorders": 45985, - "prep": 6430, - "prep": 7277, - "prepa": 26270, - "prepaid": 42934, - "prepar": 4968, - "preparation": 11651, - "preparations": 19135, - "prepare": 7014, - "prepared": 7677, - "preparedness": 29492, - "prepares": 16375, - "preparing": 7365, - "prepped": 34379, - "prepping": 16459, - "preps": 14765, - "prequel": 40461, - "pres": 1385, - "pres": 8529, - "presale": 27135, - "presby": 30447, - "presbyter": 33959, - "presbyterian": 35370, - "preschool": 24354, - "prescott": 29392, - "prescri": 14851, - "prescribed": 36968, - "prescription": 23061, - "preseason": 13813, - "presen": 16742, - "presence": 8848, - "present": 2344, - "present": 2881, - "presentation": 4594, - "presentations": 16998, - "presented": 4587, - "presenter": 18587, - "presenters": 32759, - "presenting": 5339, - "presents": 4215, - "preserv": 17616, - "preservation": 21074, - "preserve": 15570, - "preserved": 23161, - "preserves": 44881, - "preserving": 32315, - "presi": 1697, - "presiden": 43374, - "presidency": 18077, - "president": 19900, - "president": 1940, - "presidente": 47363, - "presidenti": 48297, - "presidential": 8503, - "presidents": 16726, - "presiding": 45298, - "presley": 30013, - "press": 4124, - "press": 2124, - "pressed": 20080, - "presser": 27826, - "presses": 33748, - "pressing": 20893, - "pressure": 6083, - "pressures": 38487, - "prest": 41840, - "presti": 12245, - "prestige": 29328, - "prestigious": 15888, - "presto": 42211, - "preston": 37335, - "preston": 15179, - "presu": 21667, - "presumably": 42562, - "pret": 9652, - "preten": 15871, - "pretend": 18111, - "pretending": 21306, - "pretoria": 36080, - "prett": 46667, - "prettier": 31745, - "prettiest": 22866, - "pretty": 18286, - "pretty": 2111, - "pretz": 24890, - "pretzel": 36707, - "pretzels": 45468, - "prev": 20274, - "prevail": 31637, - "prevalence": 41729, - "prevalent": 46260, - "preven": 29382, - "prevent": 26436, - "prevent": 7968, - "preventable": 44250, - "prevented": 35356, - "preventing": 21756, - "prevention": 9500, - "preventive": 40949, - "prevents": 31746, - "preview": 4449, - "previews": 20279, - "previous": 9252, - "previously": 13359, - "prey": 17131, - "prez": 17956, - "pri": 955, - "pri": 23400, - "pric": 24275, - "price": 13254, - "price": 2827, - "priced": 16934, - "priceless": 15743, - "prices": 5954, - "pricing": 14800, - "prick": 43921, - "prick": 46516, - "pride": 15323, - "pride": 3436, - "pridemonth": 41410, - "prie": 22477, - "priest": 38756, - "priest": 14222, - "priests": 30005, - "prim": 22004, - "prima": 35611, - "prima": 33277, - "primal": 36604, - "primar": 21579, - "primaries": 46126, - "primarily": 29465, - "primark": 48329, - "primary": 35024, - "primary": 5814, - "primavera": 44899, - "prime": 14162, - "prime": 5183, - "primed": 45694, - "primer": 22388, - "primetime": 29763, - "primitive": 37467, - "primo": 43215, - "primrose": 45891, - "prin": 1588, - "prince": 9457, - "prince": 4735, - "princes": 45329, - "princes": 30136, - "princess": 24123, - "princess": 5079, - "princesses": 34161, - "princeton": 22433, - "princi": 5129, - "principal": 33599, - "principal": 8860, - "principals": 27524, - "principle": 19595, - "principles": 13755, - "print": 17851, - "print": 3557, - "printable": 29648, - "printed": 7978, - "printer": 14521, - "printers": 27881, - "printing": 7369, - "printmaking": 38669, - "prints": 7704, - "prior": 20328, - "prior": 10572, - "priorit": 47773, - "prioriti": 28822, - "priorities": 15232, - "prioritize": 46715, - "priority": 12451, - "priory": 38665, - "prisc": 32468, - "priscilla": 42396, - "prise": 23343, - "prism": 49311, - "prism": 34356, - "prison": 9281, - "prison": 6622, - "prisoner": 21427, - "prisoners": 17460, - "prisons": 26607, - "pristine": 30618, - "prit": 41668, - "prit": 37523, - "prith": 39173, - "prius": 43561, - "priv": 3270, - "privacy": 10437, - "private": 20362, - "private": 4439, - "privately": 32970, - "privati": 27379, - "privi": 8367, - "privileg": 18015, - "privilege": 11537, - "privileged": 18166, - "prix": 10875, - "priya": 31275, - "priyan": 16488, - "priyanka": 31959, - "priyankach": 30030, - "priyankachopra": 30264, - "prize": 48222, - "prize": 4521, - "prized": 38769, - "prizes": 9268, - "prk": 37094, - "pro": 644, - "pro": 2630, - "proactive": 33364, - "prob": 17706, - "prob": 24007, - "probab": 3907, - "probability": 32637, - "probable": 42444, - "probably": 4047, - "probation": 36531, - "probe": 14359, - "probes": 48564, - "probiotics": 49395, - "proble": 2719, - "problem": 4324, - "problematic": 33767, - "problems": 4671, - "probs": 16330, - "probz": 34243, - "proc": 38417, - "proce": 4076, - "procedu": 18204, - "procedural": 48177, - "procedure": 20163, - "procedures": 21109, - "proceed": 26664, - "proceed": 33894, - "proceedings": 26953, - "proceeds": 11882, - "process": 17291, - "process": 4078, - "processed": 23816, - "processes": 15169, - "processing": 11737, - "procession": 26288, - "processor": 22838, - "processors": 43634, - "proclaimed": 34489, - "proclamation": 32065, - "procra": 25361, - "procrastin": 25586, - "procrastination": 42825, - "procreate": 39336, - "proctor": 47204, - "procu": 21001, - "procurement": 23733, - "prod": 44349, - "prod": 11991, - "prodi": 27759, - "prodigy": 31973, - "produ": 27852, - "produc": 1471, - "produce": 7529, - "produced": 7479, - "producer": 7064, - "producers": 13883, - "produces": 19940, - "producing": 13579, - "product": 32602, - "product": 4306, - "production": 4146, - "productions": 14166, - "productive": 9697, - "productivity": 12800, - "products": 3964, - "prof": 15043, - "prof": 5488, - "profe": 2611, - "profess": 5486, - "professi": 3705, - "profession": 8104, - "profession": 19671, - "professional": 46007, - "professional": 4774, - "professionalism": 41252, - "professionally": 33892, - "professionals": 10165, - "professor": 47302, - "professor": 6092, - "professors": 27758, - "profici": 34685, - "profile": 14291, - "profile": 6444, - "profiles": 22070, - "profiling": 37123, - "profit": 16941, - "profit": 7909, - "profitable": 25465, - "profits": 13410, - "profound": 48245, - "profound": 22998, - "profs": 19260, - "prog": 22219, - "progno": 46070, - "program": 4162, - "program": 2737, - "programme": 6322, - "programmer": 37001, - "programmes": 20468, - "programming": 10831, - "programs": 7345, - "progre": 7069, - "progress": 4421, - "progressi": 23297, - "progressing": 32346, - "progression": 24772, - "progressive": 12208, - "progressives": 41709, - "prohi": 41124, - "prohib": 45040, - "prohibition": 34440, - "proj": 39156, - "proje": 48345, - "projec": 1610, - "project": 15911, - "project": 1965, - "projected": 22873, - "projection": 22384, - "projections": 34638, - "projector": 27816, - "projects": 5090, - "proli": 19710, - "prolife": 32126, - "prolifer": 39018, - "prolific": 27839, - "prolly": 45968, - "prolon": 35379, - "prolonged": 41972, - "prom": 40363, - "prom": 7944, - "prome": 34355, - "promen": 33578, - "promenade": 35522, - "promethe": 44183, - "promin": 35217, - "prominent": 19172, - "promis": 3963, - "promise": 6745, - "promised": 11516, - "promises": 12064, - "promising": 14183, - "promo": 3037, - "promo": 6755, - "promos": 35044, - "promote": 47384, - "promote": 8003, - "promoted": 16395, - "promoter": 33081, - "promotes": 20169, - "promoting": 9695, - "promotion": 9259, - "promotional": 17619, - "promotions": 19142, - "promp": 11671, - "prompt": 20198, - "prompted": 45746, - "prompts": 33490, - "proms": 37759, - "pron": 13285, - "prone": 30964, - "pronoun": 23022, - "pronounce": 40489, - "pronounced": 34109, - "pronto": 44296, - "proof": 17020, - "proof": 5248, - "proofing": 35679, - "proofs": 41023, - "prop": 19123, - "prop": 16254, - "propag": 12151, - "propaganda": 14718, - "propane": 45546, - "propel": 48439, - "propeller": 47404, - "proper": 3577, - "proper": 8205, - "properly": 12560, - "properties": 10922, - "property": 26486, - "property": 5043, - "prophe": 9662, - "prophecy": 32501, - "prophet": 15549, - "prophetic": 47476, - "prophets": 39441, - "propor": 35016, - "proportion": 35775, - "proportions": 39391, - "propos": 9455, - "proposal": 12139, - "proposals": 20568, - "propose": 28471, - "proposed": 10615, - "proposes": 27133, - "proposing": 42631, - "proposition": 44780, - "propri": 28243, - "props": 15249, - "propulsion": 49380, - "pros": 33925, - "pros": 14147, - "prosciutto": 46565, - "prose": 47063, - "prose": 28675, - "prosecco": 28839, - "prosecu": 12136, - "prosecution": 30902, - "prosecutor": 23736, - "prosecutors": 31656, - "prosp": 24242, - "prospec": 12693, - "prospect": 11211, - "prospective": 28034, - "prospects": 15372, - "prosper": 16121, - "prosper": 33526, - "prosperity": 17203, - "prosperous": 28252, - "prost": 47923, - "prostate": 28808, - "prostatec": 49064, - "prosthetic": 44602, - "prostitu": 37333, - "protag": 28950, - "protagonist": 38183, - "prote": 1845, - "protec": 5640, - "protect": 25563, - "protect": 4817, - "protected": 12266, - "protecting": 11710, - "protection": 6238, - "protections": 33772, - "protective": 17028, - "protector": 20441, - "protectors": 45039, - "protects": 21889, - "protein": 8088, - "proteins": 28661, - "protest": 6279, - "protestant": 46945, - "protested": 48089, - "protester": 42073, - "protesters": 12660, - "protesting": 18788, - "protestors": 27822, - "protests": 12450, - "proto": 8672, - "proto": 44958, - "protocol": 19938, - "protocols": 39631, - "proton": 40009, - "prototype": 16675, - "prototyping": 42081, - "prou": 5739, - "proud": 11080, - "proud": 1679, - "prouder": 39585, - "proudest": 46806, - "proudly": 11203, - "proudof": 48184, - "proudtobe": 35043, - "prov": 23772, - "prov": 35021, - "prove": 10107, - "proved": 16473, - "proven": 35405, - "proven": 14569, - "provence": 28067, - "prover": 18312, - "proverb": 34419, - "proverbs": 27016, - "proves": 16119, - "provi": 2289, - "provide": 4832, - "provided": 9046, - "providence": 19331, - "provider": 14409, - "providers": 17120, - "provides": 7161, - "providing": 7250, - "provin": 12074, - "province": 8978, - "provinces": 35050, - "provincial": 16002, - "proving": 18055, - "provision": 30148, - "provisional": 36008, - "provisions": 39269, - "provo": 15367, - "provoc": 31618, - "provocative": 43809, - "provoking": 25510, - "provost": 36627, - "prow": 38737, - "prowrestling": 39825, - "prox": 41616, - "proxim": 31436, - "proximity": 38298, - "proxy": 31680, - "prs": 23879, - "pru": 12961, - "pruitt": 39453, - "prun": 29029, - "pruning": 48133, - "pry": 31965, - "pryor": 43375, - "ps": 3982, - "ps": 814, - "psa": 14031, - "psal": 13859, - "psalm": 17995, - "psalms": 35003, - "psb": 37017, - "psc": 43118, - "psd": 28810, - "pse": 19737, - "pse": 5423, - "pseu": 24919, - "pseudo": 46618, - "psg": 17123, - "psi": 45848, - "psi": 24533, - "psic": 29299, - "psis": 33041, - "psl": 21373, - "psn": 36781, - "pso": 27045, - "pson": 7487, - "psori": 44688, - "psp": 32769, - "pss": 35718, - "pss": 42535, - "psst": 47814, - "pst": 12692, - "psu": 41286, - "psu": 28338, - "psv": 44530, - "psy": 3576, - "psy": 11056, - "psych": 31041, - "psych": 20509, - "psyched": 19932, - "psyched": 35199, - "psychedelic": 23292, - "psychi": 18147, - "psychiatric": 30578, - "psychiatry": 39706, - "psychic": 24916, - "psycho": 6472, - "psycho": 22154, - "psychological": 18153, - "psychologist": 32827, - "psychology": 12352, - "psychop": 30112, - "psychotic": 48774, - "pt": 11139, - "pt": 1459, - "pta": 11586, - "ptbo": 40481, - "ptc": 44646, - "pte": 47804, - "pter": 49323, - "pti": 29375, - "pti": 10491, - "ptic": 20670, - "ption": 3479, - "ptions": 24963, - "pto": 31372, - "pto": 34092, - "pton": 19780, - "pts": 5886, - "ptsd": 23973, - "ptv": 42402, - "pu": 755, - "pu": 11780, - "pub": 20720, - "pub": 6301, - "puberty": 44122, - "pubg": 31496, - "publ": 3434, - "publi": 1617, - "public": 3592, - "public": 2122, - "publica": 49007, - "publication": 13538, - "publications": 27334, - "publichealth": 35872, - "publicity": 20831, - "publicly": 18554, - "publish": 19032, - "published": 4311, - "publisher": 20455, - "publishers": 25222, - "publishes": 35633, - "publishing": 10994, - "publix": 47985, - "pubs": 21099, - "puc": 48779, - "puck": 17550, - "pud": 39234, - "pudding": 14025, - "puddle": 33545, - "pue": 20161, - "pueblo": 33076, - "puer": 8968, - "puerto": 12289, - "puertor": 22757, - "puertorico": 26356, - "puff": 44477, - "puff": 17184, - "puffin": 47632, - "puffs": 47453, - "puffy": 49245, - "pug": 20950, - "pug": 17739, - "pugchat": 42266, - "pugh": 41302, - "puglia": 38345, - "pugs": 39425, - "puj": 46163, - "puja": 33753, - "puk": 31811, - "pul": 2469, - "pul": 40512, - "pula": 45856, - "puli": 47293, - "pulit": 27745, - "pulitzer": 31419, - "pull": 20155, - "pull": 6857, - "pulled": 8525, - "pulling": 12897, - "pullman": 40203, - "pullover": 44020, - "pulls": 16041, - "pulmon": 32613, - "pulmonary": 39132, - "pulp": 25410, - "pulse": 40091, - "pulse": 12485, - "pulses": 42177, - "pulsion": 35398, - "pum": 37497, - "puma": 20858, - "pump": 5179, - "pump": 9173, - "pumped": 12796, - "pumping": 25150, - "pumpkin": 36386, - "pumpkin": 8842, - "pumpkins": 23787, - "pumps": 18540, - "pun": 2707, - "pun": 19929, - "punc": 43907, - "punch": 29332, - "punch": 10730, - "punched": 31689, - "punches": 35279, - "punching": 33468, - "punctu": 31565, - "punctuation": 47051, - "pundit": 41466, - "pune": 32593, - "pune": 14488, - "pung": 45420, - "puni": 11479, - "punish": 34569, - "punished": 31598, - "punisher": 38509, - "punishment": 19099, - "punjab": 19405, - "punjab": 12883, - "punjabi": 25430, - "punk": 28933, - "punk": 7246, - "punks": 47171, - "puns": 35231, - "punt": 32699, - "punta": 34112, - "punter": 47092, - "pup": 11926, - "pup": 11302, - "pupil": 27265, - "pupils": 13628, - "pupp": 7116, - "puppet": 18439, - "puppets": 28475, - "puppies": 14820, - "puppy": 25431, - "puppy": 6829, - "puppylove": 40849, - "pups": 20778, - "pur": 1727, - "pur": 6265, - "pura": 25596, - "puram": 46174, - "purcell": 46065, - "purch": 8384, - "purchase": 5481, - "purchased": 13399, - "purchases": 21887, - "purchasing": 20718, - "purdu": 40691, - "purdue": 22280, - "pure": 14202, - "pure": 5979, - "puree": 45474, - "purely": 32459, - "puremichigan": 39783, - "purest": 45497, - "purge": 33514, - "puri": 16910, - "puri": 21974, - "purification": 47724, - "purity": 29780, - "purple": 17837, - "purple": 5496, - "purpose": 33492, - "purpose": 7391, - "purposes": 22020, - "purr": 49262, - "purr": 46343, - "purse": 16480, - "pursue": 19463, - "pursuing": 26424, - "pursuit": 16469, - "purée": 40981, - "pus": 13841, - "pusa": 40825, - "push": 16028, - "push": 6831, - "pushaw": 35407, - "pushaward": 35448, - "pushawards": 47184, - "pushed": 16155, - "pushes": 23828, - "pushing": 11549, - "put": 29535, - "put": 1983, - "putin": 10693, - "putnam": 40235, - "puts": 7898, - "putt": 30279, - "putter": 44723, - "putting": 5154, - "puzz": 19760, - "puzzle": 12875, - "puzzles": 27986, - "pv": 14517, - "pv": 13495, - "pvc": 26959, - "pvp": 44172, - "pvt": 29898, - "pw": 19419, - "pw": 16067, - "pwc": 22965, - "px": 24790, - "px": 10262, - "pxrtg": 36262, - "py": 4005, - "py": 7504, - "pye": 31099, - "pyeongchang": 36066, - "pyg": 41450, - "pyram": 14405, - "pyramid": 18725, - "pyramids": 36877, - "pyrene": 36740, - "pyrenees": 39744, - "pyro": 39762, - "python": 13370, - "pz": 48361, - "pé": 43167, - "q": 80, - "q": 336, - "qa": 24944, - "qa": 16360, - "qad": 27844, - "qadri": 35672, - "qaeda": 31246, - "qanda": 48672, - "qanon": 19182, - "qant": 35404, - "qantas": 43250, - "qatar": 32804, - "qatar": 10872, - "qb": 8073, - "qbs": 38188, - "qc": 17406, - "qe": 30974, - "qf": 27215, - "qi": 25054, - "qi": 11256, - "qing": 46522, - "qing": 34339, - "ql": 28366, - "qld": 23039, - "qld": 13765, - "qldpol": 42296, - "qm": 42148, - "qotd": 24504, - "qpr": 24788, - "qq": 31960, - "qr": 18193, - "qs": 14364, - "qt": 15013, - "qtr": 44803, - "qu": 666, - "qu": 28646, - "qua": 20363, - "quack": 45575, - "quad": 11656, - "quad": 13419, - "quadcopter": 39792, - "quadru": 35831, - "quaid": 34265, - "quail": 34392, - "quaint": 45976, - "quake": 8421, - "quaker": 43395, - "quakes": 24572, - "qual": 9979, - "qual": 32405, - "qualcomm": 38683, - "quali": 4574, - "qualification": 21508, - "qualifications": 35225, - "qualified": 11927, - "qualifier": 18733, - "qualifiers": 21388, - "qualifies": 35820, - "qualify": 17019, - "qualifying": 11895, - "qualitative": 45847, - "qualities": 20488, - "quality": 28545, - "quality": 3027, - "quan": 11669, - "quan": 27490, - "quand": 28198, - "quant": 15050, - "quanti": 31540, - "quantitative": 40583, - "quantities": 33917, - "quantity": 26920, - "quantum": 15320, - "quar": 3856, - "quare": 42549, - "quarry": 27601, - "quart": 7851, - "quarter": 8816, - "quarter": 6632, - "quarterback": 16545, - "quarterfinal": 37992, - "quarterfinals": 28971, - "quarterly": 23350, - "quarters": 10146, - "quartet": 18056, - "quartz": 17752, - "quat": 25715, - "quattro": 40300, - "quay": 40276, - "quay": 17304, - "que": 1147, - "que": 2319, - "quebec": 15373, - "queen": 6407, - "queen": 2997, - "queenof": 44398, - "queens": 22943, - "queens": 9330, - "queensland": 15168, - "queer": 38874, - "queer": 18161, - "quel": 39774, - "quel": 21879, - "quen": 23876, - "quen": 38324, - "quent": 23808, - "quentin": 27530, - "quer": 17378, - "quer": 26859, - "quered": 23210, - "queries": 32958, - "querque": 30338, - "query": 27464, - "ques": 25328, - "ques": 7715, - "queso": 40110, - "quest": 31653, - "quest": 4846, - "questi": 2391, - "question": 18961, - "question": 4382, - "questionable": 30733, - "questioned": 31847, - "questioning": 24887, - "questions": 3883, - "quests": 44611, - "quet": 8513, - "quets": 39055, - "quetta": 38326, - "quette": 18993, - "queu": 32705, - "queue": 18549, - "queues": 40649, - "queuing": 44082, - "quez": 18677, - "quezon": 41117, - "qui": 1912, - "qui": 18046, - "quic": 26474, - "quiche": 47723, - "quick": 5969, - "quick": 3712, - "quicker": 29211, - "quickest": 37734, - "quickly": 7787, - "quid": 30732, - "quie": 43875, - "quien": 43482, - "quiere": 42723, - "quiero": 32567, - "quiet": 17853, - "quiet": 7557, - "quietly": 22208, - "quig": 44690, - "quil": 12305, - "quill": 48951, - "quilt": 23977, - "quilted": 46052, - "quin": 8607, - "quin": 17167, - "quincy": 27640, - "quind": 32339, - "quinn": 12306, - "quinoa": 26703, - "quins": 39701, - "quint": 26898, - "quinta": 47446, - "quinte": 22098, - "quintess": 37538, - "quintet": 35125, - "quipment": 42813, - "quir": 15943, - "quirky": 25044, - "quis": 15064, - "quist": 25128, - "quit": 19358, - "quit": 11140, - "quite": 4135, - "quito": 35828, - "quits": 32505, - "quitting": 33871, - "quity": 33133, - "quiz": 31197, - "quiz": 8344, - "quizz": 35041, - "quo": 3046, - "quo": 28127, - "quoi": 45549, - "quot": 5452, - "quot": 47587, - "quota": 42097, - "quotation": 49195, - "quote": 15446, - "quote": 4020, - "quoted": 27706, - "quoteoftheday": 19975, - "quotes": 5808, - "quoting": 31651, - "qur": 37782, - "quran": 19690, - "qureshi": 46307, - "qvist": 42322, - "qx": 45038, - "r": 81, - "r": 337, - "ra": 559, - "ra": 1735, - "raa": 44344, - "rab": 14816, - "rab": 33224, - "rabb": 6875, - "rabbi": 20959, - "rabbit": 10274, - "rabbits": 27028, - "rabhu": 25806, - "rable": 10182, - "rac": 1773, - "rac": 30462, - "raccoon": 29516, - "race": 10978, - "race": 2471, - "racec": 18814, - "racecourse": 25036, - "raced": 36021, - "racer": 16798, - "racers": 33603, - "races": 8605, - "raceway": 24650, - "rach": 6876, - "rach": 33429, - "racha": 21952, - "racha": 35022, - "rachael": 29095, - "rachel": 13511, - "rachel": 8029, - "raci": 33381, - "racial": 13801, - "racially": 43577, - "racing": 23306, - "racing": 3699, - "racism": 11276, - "racist": 9684, - "racists": 41777, - "rack": 24600, - "rack": 12034, - "racket": 37691, - "racks": 21191, - "rad": 4473, - "rad": 8238, - "rada": 30437, - "radar": 9672, - "radcliffe": 33096, - "rade": 44494, - "rade": 17911, - "rader": 45002, - "radford": 45800, - "radha": 43122, - "radi": 5772, - "radial": 42028, - "radiance": 45670, - "radiant": 25614, - "radiation": 18210, - "radiator": 39372, - "radic": 18082, - "radical": 13712, - "radicals": 45903, - "radio": 7176, - "radio": 2638, - "radioactive": 34704, - "radiodisney": 36483, - "radiohead": 39472, - "radiology": 29684, - "radios": 43669, - "radish": 37789, - "radius": 37570, - "rado": 29784, - "rae": 21646, - "rae": 15051, - "rael": 45390, - "raer": 44561, - "raf": 11495, - "raf": 11490, - "rafa": 14352, - "rafa": 24850, - "rafael": 38221, - "rafael": 19216, - "rafaelnadal": 49219, - "raff": 34900, - "raffic": 32928, - "raffle": 13752, - "raffles": 43489, - "rafi": 35304, - "raft": 9233, - "rafting": 36309, - "rag": 13958, - "rag": 20687, - "rage": 8593, - "rages": 34253, - "ragh": 35642, - "ragha": 40972, - "raging": 25015, - "ragn": 24125, - "ragnar": 34385, - "ragnarok": 41856, - "ragon": 34768, - "rags": 47838, - "rah": 12277, - "rah": 8766, - "raheem": 43317, - "rahim": 24152, - "rahman": 19680, - "rahu": 13129, - "rahul": 37239, - "rahul": 17440, - "rahulg": 27510, - "rahulgandhi": 28293, - "rai": 9165, - "rai": 9638, - "raid": 6877, - "raided": 43417, - "raider": 27368, - "raider": 21455, - "raidernation": 47901, - "raiders": 11817, - "raids": 26655, - "rail": 4573, - "rail": 6879, - "raila": 47273, - "railminindia": 35557, - "railroad": 17080, - "rails": 23427, - "railway": 27614, - "railway": 7856, - "railwayana": 46750, - "railways": 20765, - "raim": 45785, - "rain": 3128, - "rain": 2443, - "raina": 30564, - "rainbow": 24562, - "rainbow": 6286, - "rainbows": 30483, - "raine": 49038, - "raine": 6871, - "rained": 32310, - "rainf": 15024, - "rainfall": 15350, - "rainforest": 22823, - "rainier": 37850, - "raining": 13964, - "rains": 14272, - "rainy": 10222, - "rais": 14729, - "raise": 24249, - "raise": 5078, - "raised": 6027, - "raiser": 33555, - "raises": 13297, - "raisethe": 47109, - "raisin": 36864, - "raising": 6883, - "raj": 5958, - "raj": 10813, - "raja": 46069, - "raja": 19150, - "rajan": 46595, - "rajas": 16185, - "rajasthan": 18017, - "raje": 21899, - "rajesh": 43602, - "raji": 27569, - "rajini": 29600, - "rajini": 40622, - "rajinikanth": 32922, - "rajiv": 40197, - "rajkumar": 49304, - "rajput": 47572, - "raju": 47029, - "rak": 13523, - "rak": 26287, - "rake": 26825, - "rake": 32712, - "rakesh": 41083, - "ral": 8062, - "ral": 1406, - "rale": 14192, - "raleigh": 18207, - "rall": 23249, - "rallies": 25230, - "rally": 18882, - "rally": 5041, - "rallying": 36836, - "ralph": 25290, - "ralph": 12234, - "ram": 1976, - "ram": 2007, - "rama": 22112, - "ramad": 12736, - "ramadan": 15547, - "ramadhan": 47415, - "raman": 39816, - "ramapho": 43963, - "ramaphosa": 44993, - "ramatta": 49112, - "rambo": 41855, - "ramcharan": 45275, - "rame": 47745, - "ramen": 18892, - "ramesh": 48640, - "ramesh": 40186, - "rami": 43016, - "ramirez": 23877, - "ramon": 27958, - "ramone": 47201, - "ramos": 21046, - "ramp": 14271, - "rampage": 32077, - "rampant": 41985, - "ramps": 35257, - "rams": 10292, - "ramsay": 26259, - "ramsey": 19215, - "ran": 1433, - "ran": 4031, - "rana": 22143, - "ranbir": 40881, - "rance": 29034, - "ranch": 43955, - "ranch": 10659, - "rancho": 26258, - "rand": 5628, - "rand": 18718, - "randall": 23639, - "rande": 21469, - "randolph": 29899, - "random": 11396, - "random": 6160, - "randomly": 17272, - "rands": 39153, - "randy": 29479, - "randy": 13279, - "rane": 28852, - "rang": 4043, - "rang": 24377, - "range": 13627, - "range": 3818, - "ranger": 31472, - "ranger": 13593, - "rangers": 7664, - "ranges": 25685, - "ranging": 25946, - "rani": 29264, - "rani": 22631, - "rank": 11501, - "ranked": 8307, - "rankin": 37539, - "ranking": 12347, - "rankings": 12596, - "ranks": 14469, - "rano": 18608, - "rans": 46259, - "ransom": 28523, - "ransom": 34646, - "ransomware": 33815, - "rant": 46467, - "rant": 9819, - "rants": 34014, - "ranveer": 32402, - "ranveer": 41482, - "ranveerofficial": 42116, - "rao": 16913, - "rap": 7773, - "rap": 7348, - "rape": 46099, - "rape": 10070, - "raped": 23700, - "rapha": 22754, - "raphael": 30091, - "rapi": 8610, - "rapid": 47697, - "rapid": 12205, - "rapidly": 16710, - "rapids": 18848, - "raping": 44926, - "rapist": 33360, - "rapp": 19283, - "rapper": 11860, - "rappers": 30315, - "rapping": 42864, - "raps": 37887, - "raptor": 26762, - "raptors": 17035, - "raq": 39787, - "raq": 43312, - "raqqa": 47074, - "raquel": 44338, - "rar": 26819, - "rar": 24605, - "rard": 21012, - "rare": 18992, - "rare": 3865, - "rarely": 17315, - "rarest": 43237, - "rarity": 45862, - "ras": 23492, - "ras": 8224, - "rasc": 30085, - "rascal": 43481, - "rash": 14917, - "rash": 30608, - "rashad": 46527, - "rasheed": 41638, - "rashi": 19426, - "rashid": 26757, - "rasp": 10487, - "raspberries": 37742, - "raspberry": 40162, - "raspberry": 13615, - "raspberrypi": 43934, - "rass": 45654, - "rasta": 47002, - "rat": 3806, - "rat": 8985, - "rata": 28568, - "ratchet": 25078, - "rate": 5068, - "rated": 8183, - "rates": 6864, - "rath": 18268, - "rath": 39772, - "rather": 5252, - "rati": 11486, - "rating": 10567, - "ratings": 14176, - "ratio": 15893, - "ration": 27002, - "ration": 35662, - "rational": 33086, - "ratna": 49078, - "ratri": 32288, - "rats": 19043, - "ratt": 20737, - "ratt": 34785, - "rattle": 40824, - "rattle": 41839, - "rau": 27744, - "raul": 30218, - "raun": 41169, - "rav": 14367, - "rav": 23606, - "rave": 38784, - "rave": 17601, - "ravel": 27927, - "raven": 10269, - "raven": 16803, - "ravens": 17946, - "ravi": 22947, - "ravi": 19538, - "ravin": 39099, - "raving": 45807, - "raviol": 41104, - "ravioli": 43460, - "raw": 10166, - "raw": 6323, - "rawlings": 40662, - "rax": 38520, - "ray": 5312, - "ray": 3077, - "raya": 29991, - "raymond": 16683, - "rayn": 47852, - "rayon": 47900, - "rays": 11064, - "raz": 9700, - "raz": 19087, - "raza": 37724, - "razer": 33832, - "razor": 24934, - "razor": 21300, - "razz": 43769, - "rb": 12740, - "rb": 7477, - "rbc": 37500, - "rbi": 15687, - "rbs": 29102, - "rc": 7575, - "rc": 7457, - "rca": 33942, - "rcb": 45240, - "rcmp": 31489, - "rcn": 49370, - "rctid": 49223, - "rd": 13501, - "rd": 1973, - "rda": 45755, - "rdr": 44364, - "rds": 32378, - "re": 515, - "re": 810, - "rea": 11521, - "reach": 4483, - "reach": 4279, - "reached": 6878, - "reaches": 14462, - "reaching": 11358, - "react": 36566, - "react": 15065, - "reacted": 42515, - "reacting": 40595, - "reaction": 7189, - "reactions": 18438, - "reactive": 42072, - "reactjs": 46173, - "reactor": 32037, - "reacts": 23115, - "read": 933, - "read": 1199, - "reader": 9884, - "readers": 10335, - "readiness": 28131, - "reading": 17556, - "reading": 2337, - "readingfc": 47428, - "readings": 23361, - "reads": 6597, - "ready": 17351, - "ready": 1112, - "reagan": 17767, - "real": 2017, - "real": 1532, - "realdonaldtrump": 7025, - "reale": 5930, - "realest": 45855, - "realestate": 32937, - "realestate": 6569, - "reali": 4185, - "realis": 38114, - "realise": 14773, - "realised": 17945, - "realising": 39537, - "realism": 20024, - "realist": 30248, - "realistic": 16157, - "realities": 32443, - "reality": 46802, - "reality": 5004, - "realization": 40402, - "realize": 7538, - "realized": 10489, - "realizes": 42918, - "realizing": 23284, - "reall": 39686, - "really": 43249, - "really": 1414, - "realm": 23083, - "realmadrid": 27866, - "realms": 43033, - "realness": 46761, - "realtime": 44002, - "realtime": 38203, - "realtor": 18038, - "realtors": 31759, - "realty": 20471, - "ream": 37242, - "ream": 15219, - "rean": 48477, - "reap": 31334, - "reaper": 29922, - "rear": 39652, - "rear": 10223, - "reas": 9121, - "reason": 12882, - "reason": 3893, - "reasonable": 18558, - "reasonably": 38589, - "reasoning": 30341, - "reasons": 5686, - "reau": 32398, - "reb": 12370, - "reb": 18796, - "reba": 48543, - "rebate": 43817, - "rebe": 25227, - "rebec": 10774, - "rebecca": 12892, - "rebel": 8185, - "rebel": 12248, - "rebellion": 22170, - "rebels": 13623, - "rebirth": 33303, - "reboot": 22385, - "reborn": 30229, - "reboun": 43381, - "rebound": 31280, - "rebounds": 19190, - "rebs": 28164, - "rebu": 43162, - "rebuild": 20022, - "rebuilding": 30880, - "rebuilt": 33137, - "rec": 1020, - "rec": 11243, - "recall": 15151, - "recalled": 32142, - "recalling": 47855, - "recalls": 24740, - "recap": 29816, - "recap": 8337, - "recaps": 47997, - "recard": 35536, - "rece": 1890, - "recei": 2148, - "receip": 38503, - "receipt": 30479, - "receipts": 41181, - "receive": 4800, - "received": 4178, - "receiver": 17659, - "receivers": 45294, - "receives": 10027, - "receiving": 7252, - "recent": 3969, - "recently": 4482, - "recep": 17450, - "reception": 8364, - "receptions": 46881, - "receptor": 41835, - "recess": 38182, - "recession": 27176, - "recharge": 29396, - "rechargeable": 37516, - "reci": 2037, - "recipe": 28923, - "recipe": 4614, - "recipeoftheday": 38727, - "recipes": 9243, - "recipi": 10136, - "recipient": 13703, - "recipients": 18940, - "recipro": 41789, - "recital": 23457, - "recite": 48824, - "reck": 11715, - "reckless": 26284, - "reckon": 23854, - "recl": 42277, - "reclaim": 35969, - "reclaimed": 32648, - "reco": 2535, - "reco": 46038, - "recogn": 6343, - "recogni": 5329, - "recognise": 19824, - "recognised": 20986, - "recognising": 48423, - "recognition": 9415, - "recognizable": 47240, - "recognize": 10905, - "recognized": 9929, - "recognizes": 26909, - "recognizing": 19666, - "recomm": 4540, - "recommend": 11628, - "recommend": 8942, - "recommendation": 20118, - "recommendations": 16516, - "recommended": 11100, - "recommending": 44301, - "recommends": 22940, - "recon": 15371, - "recon": 28996, - "reconciliation": 26451, - "reconstruction": 24955, - "recor": 1723, - "record": 21328, - "record": 2717, - "recorded": 9392, - "recorder": 26747, - "recording": 48237, - "recording": 6942, - "recordings": 19715, - "records": 4529, - "recover": 16785, - "recovered": 16444, - "recovering": 19005, - "recovers": 47935, - "recovery": 6591, - "recre": 22148, - "recreate": 29775, - "recreated": 40888, - "recreating": 48224, - "recreation": 17331, - "recreational": 24329, - "recru": 4745, - "recruit": 9011, - "recruit": 15585, - "recruited": 36518, - "recruiter": 43120, - "recruiters": 46542, - "recruiting": 10533, - "recruitment": 10541, - "recruits": 22647, - "recs": 33069, - "rectan": 43041, - "rectangular": 43321, - "rector": 41585, - "recu": 26798, - "recur": 19983, - "recurring": 35912, - "recy": 6790, - "recycla": 40659, - "recyclable": 48907, - "recycle": 19366, - "recycled": 16829, - "recycling": 12566, - "red": 1893, - "red": 736, - "redbubble": 46137, - "redbull": 29483, - "redbull": 29219, - "redcarpet": 32259, - "redcross": 30659, - "redd": 22149, - "redd": 40618, - "redding": 41061, - "reddish": 43383, - "reddit": 15226, - "reddy": 23028, - "rede": 10913, - "redeem": 37449, - "redefining": 46352, - "redemption": 20233, - "redesign": 24188, - "redesigned": 33111, - "redevelopment": 30322, - "redhead": 36267, - "redi": 7976, - "redman": 44753, - "redmond": 39627, - "rednation": 28180, - "rednationrising": 28262, - "redneck": 39105, - "redness": 22626, - "redo": 42524, - "redon": 48506, - "redro": 37722, - "reds": 11221, - "redskins": 19023, - "redsox": 19144, - "reduc": 5015, - "reduce": 6604, - "reduced": 10821, - "reduces": 20539, - "reducing": 13836, - "reduction": 12219, - "reductions": 48263, - "redux": 43014, - "redvelvet": 41845, - "redwings": 31058, - "redwood": 31748, - "ree": 9282, - "ree": 5813, - "reebok": 26734, - "reece": 30457, - "reed": 26209, - "reed": 10435, - "reedus": 32865, - "reef": 46557, - "reef": 15624, - "reefs": 34459, - "reel": 34467, - "reel": 17166, - "reels": 48127, - "reem": 48891, - "reen": 21638, - "reen": 23679, - "rees": 18314, - "reese": 20929, - "reeves": 23060, - "ref": 4067, - "ref": 9591, - "refe": 5624, - "refer": 18425, - "refer": 22325, - "referee": 20398, - "referees": 45583, - "referen": 13535, - "reference": 10214, - "references": 24009, - "referendum": 16732, - "referr": 47784, - "referral": 30219, - "referred": 22969, - "referring": 29797, - "refers": 30069, - "refill": 37859, - "refin": 13455, - "refined": 26098, - "refinery": 31393, - "refining": 48406, - "reflec": 4608, - "reflect": 13373, - "reflected": 28732, - "reflecting": 19700, - "reflection": 11884, - "reflections": 16647, - "reflective": 27008, - "reflects": 15821, - "reflex": 45756, - "reflex": 36050, - "reform": 45678, - "reform": 8875, - "reformation": 45119, - "reformed": 40880, - "reforms": 19274, - "refr": 34850, - "refre": 11995, - "refresh": 17836, - "refresh": 23288, - "refreshed": 35925, - "refresher": 41481, - "refreshing": 14159, - "refreshments": 31127, - "refriger": 21076, - "refrigerator": 36662, - "refs": 35595, - "refu": 3545, - "refuge": 5638, - "refuge": 17432, - "refugee": 11556, - "refugees": 42687, - "refugees": 8316, - "refund": 28899, - "refur": 15519, - "refurbi": 18259, - "refurbished": 26190, - "refurbishment": 35803, - "refusal": 46547, - "refuse": 16412, - "refused": 17190, - "refuses": 20085, - "refusing": 26704, - "reg": 5472, - "reg": 12353, - "regain": 37510, - "regal": 31512, - "regal": 25028, - "regan": 34062, - "regar": 5881, - "regard": 21801, - "regarded": 32017, - "regarding": 8493, - "regardless": 17220, - "regards": 23079, - "regatta": 26316, - "regen": 46545, - "regency": 29341, - "regeneration": 29257, - "regent": 30455, - "regents": 46710, - "regg": 12757, - "reggae": 37821, - "reggae": 15214, - "reggie": 21872, - "regi": 1608, - "regime": 11378, - "regiment": 18603, - "regin": 23287, - "regina": 16841, - "region": 16542, - "region": 4341, - "regional": 5552, - "regionals": 26043, - "regions": 14530, - "regis": 28094, - "register": 3967, - "registered": 10254, - "registering": 33510, - "registr": 29193, - "registration": 7302, - "registrations": 38423, - "registry": 30020, - "rego": 47351, - "regram": 30329, - "regrann": 48802, - "regre": 8627, - "regression": 43733, - "regret": 14374, - "regrets": 23231, - "regu": 3411, - "regui": 46722, - "regul": 11847, - "regular": 14882, - "regular": 6307, - "regularly": 17263, - "regulat": 14575, - "regulate": 33494, - "regulated": 31384, - "regulating": 48156, - "regulation": 14267, - "regulations": 16654, - "regulator": 30364, - "regulators": 35837, - "regulatory": 17717, - "reh": 21492, - "reha": 10193, - "rehab": 16973, - "rehabil": 17930, - "rehabilitation": 21042, - "rehear": 7273, - "rehearsal": 11482, - "rehearsals": 17977, - "rehearsing": 23125, - "rehman": 39206, - "rei": 15343, - "rei": 26033, - "reic": 41230, - "reich": 48589, - "reich": 28929, - "reid": 45125, - "reid": 11744, - "reig": 13092, - "reign": 41419, - "reign": 14827, - "reigning": 28409, - "reigns": 21217, - "reiki": 46960, - "reilly": 28120, - "reim": 35421, - "reimagined": 46799, - "reimbur": 39857, - "rein": 9240, - "rein": 45009, - "reina": 43847, - "reinde": 23810, - "reindeer": 25072, - "reinfor": 48161, - "reinforced": 41909, - "reinst": 33969, - "reinvent": 38171, - "reissue": 34042, - "reiter": 35394, - "rejec": 9958, - "reject": 22435, - "rejected": 17505, - "rejection": 32264, - "rejects": 23155, - "rejo": 20150, - "rejoice": 24712, - "rejuven": 26332, - "rek": 47542, - "rek": 19201, - "rel": 1825, - "rel": 5233, - "rela": 4362, - "reland": 15220, - "relat": 27192, - "relatable": 31010, - "relate": 17520, - "related": 5880, - "relates": 36064, - "relating": 27373, - "relation": 4561, - "relation": 16207, - "relations": 10100, - "relationship": 47239, - "relationship": 5837, - "relationships": 10610, - "relative": 17265, - "relatively": 18351, - "relatives": 21981, - "relax": 6777, - "relax": 9035, - "relaxation": 22194, - "relaxed": 18999, - "relaxing": 10256, - "relay": 12403, - "relays": 28404, - "rele": 1602, - "release": 29100, - "release": 2706, - "released": 3410, - "releases": 7393, - "releasethe": 44008, - "releasing": 10321, - "releg": 23378, - "relegated": 45884, - "relegation": 35040, - "relent": 22213, - "relentless": 27207, - "relessly": 33927, - "relev": 9349, - "relevance": 31400, - "relevant": 10568, - "reli": 2674, - "reliability": 27220, - "reliable": 13714, - "reliance": 27727, - "relic": 27802, - "relics": 43208, - "relief": 7518, - "relies": 41579, - "relieve": 28623, - "relieved": 36597, - "religi": 4940, - "religion": 8803, - "religions": 31189, - "religious": 8289, - "relish": 35550, - "relive": 23939, - "reliving": 47558, - "rell": 28802, - "rell": 7127, - "rella": 9952, - "relle": 31390, - "reloaded": 38908, - "relocated": 46791, - "relocation": 39198, - "rels": 23320, - "relu": 32058, - "reluct": 32549, - "reluctant": 45552, - "rely": 4158, - "relying": 42168, - "rem": 15098, - "rem": 21637, - "rema": 4569, - "remain": 29144, - "remain": 6415, - "remainder": 41672, - "remained": 23714, - "remaining": 11392, - "remains": 6807, - "remake": 16234, - "remark": 11136, - "remarkable": 12404, - "remarkably": 39087, - "remarks": 15001, - "remastered": 24932, - "rematch": 26473, - "rembrandt": 45972, - "reme": 20071, - "remedi": 18442, - "remedies": 25581, - "remedy": 25794, - "remem": 7966, - "rememb": 7062, - "remember": 22045, - "remember": 2195, - "remembered": 11763, - "remembering": 8135, - "remembers": 12551, - "remembrance": 40321, - "remembrance": 15860, - "remembranceday": 48333, - "rement": 7173, - "rements": 12667, - "remi": 41693, - "remin": 3216, - "remind": 9868, - "reminded": 12309, - "reminder": 5565, - "reminders": 34121, - "reminding": 19976, - "reminds": 8303, - "remington": 43527, - "reminis": 17723, - "reminiscent": 41704, - "reminiscing": 32552, - "remix": 8519, - "remixes": 31011, - "remn": 29127, - "remnants": 39032, - "remo": 4064, - "remo": 33259, - "remodel": 34159, - "remodel": 37495, - "remodeling": 41432, - "remote": 47163, - "remote": 9687, - "remotely": 32375, - "removable": 44095, - "removal": 13679, - "remove": 9709, - "removed": 10289, - "remover": 44267, - "removes": 29018, - "removing": 18504, - "remy": 30434, - "ren": 737, - "ren": 2596, - "rena": 12591, - "renais": 15409, - "renaissance": 16007, - "renal": 36096, - "renamed": 31535, - "renault": 17600, - "rence": 19245, - "rence": 1553, - "rences": 8545, - "rend": 33932, - "rend": 22851, - "render": 39752, - "render": 13024, - "rendered": 23652, - "rendering": 21339, - "renders": 39419, - "rendez": 43293, - "rendezvous": 45644, - "rendition": 28891, - "rendon": 46272, - "rendous": 49403, - "rends": 38842, - "rene": 15438, - "rene": 12597, - "renee": 23480, - "reneg": 29909, - "renegade": 41229, - "renergy": 37151, - "renew": 6645, - "renew": 22015, - "renewable": 31269, - "renewable": 15941, - "renewableenergy": 33357, - "renewables": 21619, - "renewal": 21270, - "renewed": 20524, - "renfre": 45043, - "reng": 36795, - "reno": 11520, - "reno": 12831, - "renov": 9984, - "renovated": 23839, - "renovation": 17121, - "renovations": 31311, - "renowned": 14727, - "rens": 18183, - "renshaw": 44445, - "rent": 17377, - "rent": 1609, - "rental": 12193, - "rentals": 24105, - "rented": 35932, - "rential": 31692, - "renting": 37662, - "rently": 2615, - "rents": 31109, - "reo": 15963, - "reo": 26854, - "reon": 15761, - "reopen": 26883, - "reopened": 32868, - "reopening": 36663, - "reopens": 40644, - "rep": 4229, - "rep": 6487, - "repair": 8419, - "repaired": 32953, - "repairing": 38534, - "repairs": 16297, - "repar": 34065, - "repe": 5785, - "repeal": 42622, - "repeal": 23938, - "repeat": 10192, - "repeated": 27904, - "repeatedly": 26630, - "repeating": 33834, - "repeats": 39158, - "repell": 46235, - "repent": 47261, - "reper": 29085, - "repet": 38533, - "repl": 13047, - "replac": 6069, - "replace": 9466, - "replaceable": 47762, - "replaced": 13200, - "replacement": 10835, - "replaces": 27781, - "replacing": 18647, - "replay": 16875, - "repleni": 44839, - "replic": 21651, - "replica": 18125, - "replied": 24238, - "replies": 18808, - "reply": 8965, - "replying": 47599, - "repor": 2628, - "report": 2417, - "reported": 7598, - "reportedly": 10953, - "reporter": 11019, - "reporters": 18454, - "reporting": 9218, - "reports": 4908, - "reposit": 41276, - "repository": 46977, - "repost": 33147, - "repost": 7217, - "repostapp": 38388, - "reposting": 20223, - "reppin": 19163, - "repping": 22574, - "repre": 3397, - "represent": 8293, - "represent": 8406, - "representation": 13520, - "representative": 13175, - "representatives": 15591, - "represented": 12299, - "representing": 7561, - "represents": 14433, - "repri": 31854, - "reproduction": 35714, - "reproductive": 25522, - "reps": 14265, - "reptile": 36938, - "reptiles": 38679, - "republic": 6376, - "republic": 7185, - "republican": 9842, - "republicans": 12384, - "repur": 41852, - "req": 42411, - "requ": 10664, - "reque": 9539, - "request": 7813, - "requested": 16199, - "requesting": 33245, - "requests": 17087, - "requi": 4863, - "requiem": 40316, - "require": 14437, - "required": 8500, - "requirement": 27146, - "requirements": 12860, - "requires": 13396, - "requiring": 33425, - "requis": 42602, - "rer": 41295, - "rer": 3407, - "rera": 14301, - "rero": 21860, - "rers": 18869, - "res": 4466, - "res": 934, - "resc": 3956, - "rescheduled": 43553, - "rescu": 8618, - "rescue": 28567, - "rescue": 5718, - "rescued": 11919, - "rescues": 32439, - "rescuing": 43770, - "rese": 13000, - "resear": 6090, - "research": 25694, - "research": 2379, - "researched": 42733, - "researcher": 18334, - "researchers": 9522, - "researching": 24544, - "reseller": 35391, - "resemb": 16916, - "resemblance": 26856, - "resemble": 37230, - "resembles": 35417, - "reser": 16420, - "reserv": 11906, - "reservation": 20289, - "reservations": 19307, - "reserve": 6911, - "reserved": 19796, - "reserves": 19705, - "reservoir": 20574, - "reset": 26250, - "resh": 47432, - "reshi": 39435, - "resi": 2152, - "residen": 22311, - "residence": 11672, - "residences": 38855, - "residency": 18545, - "resident": 9016, - "residente": 44637, - "residentevil": 48393, - "residential": 11002, - "residents": 6008, - "resign": 23584, - "resignation": 24779, - "resigned": 31014, - "resigns": 29738, - "resil": 10932, - "resili": 39212, - "resilience": 15271, - "resilient": 24694, - "resin": 24156, - "resist": 37345, - "resist": 9587, - "resistance": 7392, - "resistant": 17542, - "resisting": 43679, - "resolution": 9977, - "resolutions": 26816, - "resolve": 20787, - "resolved": 28807, - "reson": 18092, - "resonance": 42310, - "resort": 6594, - "resorts": 18839, - "resource": 43729, - "resource": 9760, - "resources": 6723, - "respec": 7466, - "respect": 31411, - "respect": 4916, - "respected": 19126, - "respectful": 24379, - "respecting": 36172, - "respective": 25817, - "respectively": 28794, - "respects": 23553, - "respir": 20771, - "respiratory": 24483, - "respon": 2421, - "respond": 12355, - "responded": 21121, - "respondents": 49253, - "responders": 25155, - "responding": 18037, - "responds": 17436, - "response": 5399, - "responses": 19006, - "responsi": 5490, - "responsibilities": 30375, - "responsibility": 11272, - "responsible": 8936, - "responsibly": 33675, - "responsive": 21544, - "ress": 34651, - "ress": 13629, - "resso": 15133, - "rest": 10974, - "rest": 2539, - "restart": 37378, - "restaur": 3775, - "restaurant": 41930, - "restaurant": 4489, - "restaurants": 11714, - "rested": 46020, - "resting": 18044, - "restless": 36724, - "restling": 30076, - "resto": 11118, - "resto": 41666, - "restock": 34060, - "restocked": 36966, - "restor": 8984, - "restoration": 11989, - "restorative": 46509, - "restore": 14008, - "restored": 14238, - "restoring": 24406, - "restra": 25424, - "restric": 11036, - "restricted": 27197, - "restriction": 44282, - "restrictions": 19884, - "restroom": 43423, - "restructuring": 43260, - "rests": 33775, - "resu": 10095, - "resul": 2655, - "result": 5659, - "resulted": 26449, - "resulting": 24581, - "results": 3790, - "resume": 15077, - "resumes": 30268, - "resur": 14865, - "resurg": 45962, - "resurgence": 47692, - "resurrec": 18487, - "resurrection": 25811, - "resusc": 47523, - "ret": 20500, - "ret": 10048, - "reta": 20153, - "retail": 14910, - "retail": 6455, - "retailer": 22549, - "retailers": 19418, - "retain": 24430, - "retained": 42737, - "retaining": 35571, - "retains": 42583, - "retali": 33101, - "retar": 29964, - "retarded": 44111, - "retention": 26247, - "rethink": 29078, - "rethinking": 42951, - "reti": 4721, - "retin": 31270, - "retina": 36919, - "retire": 18846, - "retired": 11477, - "retirement": 9205, - "retires": 29060, - "retiring": 21200, - "retrac": 32735, - "retreat": 11210, - "retri": 16918, - "retriever": 28394, - "retro": 6535, - "retro": 7755, - "retrogamer": 47220, - "retrogaming": 11316, - "retrospective": 27105, - "rett": 41082, - "rett": 8425, - "rette": 33066, - "return": 43042, - "return": 3458, - "returned": 10476, - "returning": 9290, - "returns": 5020, - "retwee": 48190, - "retweet": 3195, - "retweeted": 12705, - "retweeting": 32345, - "retweets": 10160, - "rety": 41550, - "reu": 20255, - "reu": 40371, - "reuben": 40450, - "reunion": 10247, - "reunite": 26179, - "reunited": 13516, - "reusable": 30395, - "reuse": 26535, - "reut": 15210, - "reuters": 15569, - "rev": 8424, - "rev": 11789, - "revamp": 29819, - "revamped": 36420, - "revan": 45277, - "reve": 3115, - "reveal": 8052, - "revealed": 7171, - "revealing": 21321, - "reveals": 6621, - "revel": 14133, - "revelation": 24053, - "revelations": 36163, - "reven": 10171, - "revenge": 12717, - "revenue": 10637, - "revenues": 33348, - "rever": 14829, - "rever": 41913, - "revere": 44187, - "reverend": 34407, - "revers": 20726, - "reversal": 33367, - "reverse": 12812, - "reversed": 42485, - "reversi": 31601, - "reversible": 34212, - "revi": 8317, - "review": 2268, - "reviewed": 16678, - "reviewer": 36409, - "reviewers": 48195, - "reviewing": 20458, - "reviews": 7227, - "revise": 46801, - "revised": 22806, - "revising": 46882, - "revision": 20335, - "revisit": 26568, - "revisited": 34302, - "revisiting": 33144, - "revit": 26367, - "revitalization": 46923, - "revival": 14142, - "revive": 26450, - "revived": 42912, - "revo": 28660, - "revol": 13447, - "revolt": 31697, - "revolu": 4900, - "revolution": 17699, - "revolution": 6644, - "revolutionary": 14734, - "revolver": 38747, - "revolving": 47230, - "revs": 49286, - "revue": 43428, - "rew": 37564, - "rewar": 15857, - "reward": 11223, - "rewarded": 27163, - "rewarding": 23351, - "rewards": 15235, - "rewatch": 35610, - "rewatching": 41287, - "rewind": 26867, - "rewrite": 45218, - "rex": 13002, - "rex": 10904, - "rexperience": 33924, - "rey": 9681, - "rey": 4517, - "reyes": 18255, - "reykja": 47571, - "reyn": 11998, - "reynolds": 14309, - "reys": 48284, - "rez": 27597, - "rez": 15192, - "reza": 35888, - "rf": 35529, - "rf": 16368, - "rfc": 19003, - "rfid": 40204, - "rg": 33055, - "rg": 14897, - "rgb": 36128, - "rgv": 33685, - "rh": 8745, - "rh": 22404, - "rha": 19473, - "rhapso": 32532, - "rhapsody": 35774, - "rhe": 9186, - "rhea": 28612, - "rhetor": 24359, - "rhetoric": 29985, - "rhett": 42984, - "rheu": 42953, - "rhi": 21212, - "rhin": 12269, - "rhine": 22863, - "rhine": 44833, - "rhinestone": 30450, - "rhino": 41744, - "rhino": 20056, - "rhinos": 30671, - "rho": 7637, - "rhode": 39302, - "rhode": 27907, - "rhodes": 17785, - "rhon": 25882, - "rhonda": 46100, - "rhp": 27199, - "rhs": 24551, - "rhu": 23897, - "rhubarb": 30213, - "rhy": 7740, - "rhyme": 37356, - "rhymes": 33143, - "rhys": 28647, - "rhyth": 27069, - "rhythm": 16172, - "rhythmic": 46386, - "rhythms": 40872, - "ri": 553, - "ri": 2574, - "ria": 3650, - "rial": 15200, - "rian": 7788, - "rib": 44634, - "rib": 18298, - "riba": 44992, - "ribb": 10081, - "ribbon": 12114, - "ribbons": 35271, - "ribe": 46115, - "ribs": 17519, - "ric": 920, - "ric": 4798, - "rica": 14230, - "rical": 18109, - "rican": 30958, - "ricardo": 23140, - "ricci": 35783, - "ricciardo": 49282, - "rice": 36362, - "rice": 4741, - "rich": 5223, - "rich": 4021, - "richar": 9350, - "richard": 9080, - "richard": 4470, - "richards": 11372, - "richardson": 15984, - "riche": 23286, - "richer": 34138, - "riches": 37093, - "richest": 25572, - "richi": 38934, - "richie": 19797, - "richland": 43079, - "richmond": 34143, - "richmond": 11292, - "richter": 37591, - "rick": 6237, - "rick": 3064, - "ricket": 46161, - "ricket": 23671, - "ricks": 23111, - "ricky": 19188, - "ricky": 12814, - "rico": 37962, - "rico": 11362, - "ricotta": 38473, - "rics": 7353, - "ricul": 6980, - "rid": 18103, - "rid": 9874, - "ridd": 21990, - "ridden": 32025, - "riddle": 31839, - "ride": 15816, - "ride": 2994, - "rider": 31056, - "rider": 9707, - "riders": 10826, - "rides": 11308, - "ridg": 42646, - "ridge": 16580, - "ridge": 6352, - "ridic": 9624, - "ridiculous": 12659, - "ridiculously": 25661, - "ridin": 47869, - "riding": 6765, - "ridley": 27883, - "rie": 14824, - "rie": 5322, - "ried": 7552, - "riel": 26696, - "rien": 35237, - "rier": 40714, - "rier": 13336, - "ries": 28179, - "ries": 3059, - "riesling": 36372, - "rif": 7044, - "riff": 30359, - "rifle": 15354, - "rifles": 25678, - "rift": 26681, - "rig": 18462, - "rig": 13871, - "riga": 36626, - "rigged": 35897, - "rigging": 38160, - "riggs": 40328, - "righ": 15391, - "right": 13341, - "right": 1155, - "righte": 20762, - "righteous": 28169, - "righteousness": 42481, - "rightful": 42601, - "rightly": 42669, - "rights": 3336, - "rigid": 43138, - "rigor": 36788, - "rigorous": 41654, - "rigs": 42893, - "rihanna": 13744, - "rij": 41097, - "rik": 31136, - "rik": 27832, - "rika": 28580, - "ril": 12270, - "ril": 2388, - "riley": 35056, - "riley": 12260, - "rill": 23705, - "rilla": 43956, - "rilla": 18685, - "rim": 28147, - "rim": 12199, - "rime": 27064, - "rimin": 11527, - "rimo": 47817, - "rims": 34327, - "rin": 5859, - "rin": 11739, - "rina": 12869, - "rine": 24952, - "ring": 8318, - "ring": 2540, - "ringed": 44712, - "ringer": 35761, - "ringing": 26035, - "ringo": 38845, - "rings": 5751, - "rington": 12455, - "rink": 21497, - "rinka": 47316, - "rino": 47188, - "rinse": 48320, - "rio": 15681, - "rio": 5782, - "rion": 31623, - "rion": 34046, - "rios": 32814, - "riot": 32636, - "riot": 14218, - "riots": 24844, - "rious": 6340, - "rip": 10353, - "rip": 4243, - "ripe": 22832, - "ripley": 41589, - "ripp": 25276, - "ripped": 17815, - "ripper": 35347, - "ripping": 29126, - "ripple": 24825, - "rips": 30182, - "rir": 36792, - "ris": 6108, - "ris": 1999, - "rise": 13641, - "rise": 3151, - "risen": 23653, - "risers": 44983, - "rises": 13362, - "riseup": 35760, - "rish": 18378, - "rish": 18927, - "rishi": 48434, - "rising": 30452, - "rising": 5448, - "risis": 37998, - "risk": 27967, - "risk": 4213, - "risking": 48155, - "risks": 12474, - "risky": 27630, - "risotto": 31471, - "rist": 40610, - "rit": 5156, - "rit": 17333, - "rita": 16178, - "ritchie": 30997, - "rite": 39318, - "rite": 18429, - "rites": 36160, - "rith": 48169, - "rith": 48850, - "riti": 32904, - "rito": 19379, - "ritos": 33507, - "ritt": 26092, - "ritter": 34854, - "ritu": 13391, - "ritual": 19712, - "rituals": 31145, - "ritz": 39151, - "ritz": 25627, - "rium": 33884, - "riv": 25113, - "rival": 13412, - "rival": 15629, - "rivalry": 19511, - "rivals": 15135, - "rive": 27588, - "rive": 34917, - "river": 5239, - "river": 2473, - "rivera": 18275, - "riverdale": 28304, - "riverfront": 44439, - "rivers": 10723, - "riverside": 15809, - "riveting": 44024, - "riviera": 25851, - "rix": 43407, - "rix": 9483, - "riya": 36908, - "riyad": 31564, - "riyadh": 33577, - "riz": 18426, - "riz": 35411, - "rizal": 41555, - "rizio": 40191, - "rizz": 34826, - "rizzo": 49076, - "rj": 26016, - "rj": 20949, - "rk": 38725, - "rk": 21422, - "rl": 18041, - "rl": 14590, - "rlly": 43222, - "rly": 25954, - "rm": 20202, - "rm": 8431, - "rmb": 49097, - "rms": 40529, - "rn": 13206, - "rn": 7666, - "rna": 24566, - "rnb": 31556, - "rnc": 35309, - "rnli": 29748, - "ro": 532, - "ro": 2795, - "roa": 8313, - "roach": 31073, - "road": 4370, - "road": 1759, - "roadhouse": 47891, - "roadmap": 30111, - "roads": 6189, - "roadsafety": 39992, - "roadshow": 21168, - "roadside": 26928, - "roadster": 28920, - "roadto": 24681, - "roadtrip": 15094, - "roadway": 42744, - "roam": 34045, - "roaming": 29240, - "roano": 34184, - "roanoke": 36587, - "roar": 34193, - "roar": 18483, - "roaring": 26428, - "roast": 11404, - "roasted": 10479, - "roasting": 32228, - "rob": 2668, - "rob": 6442, - "robb": 14059, - "robb": 39673, - "robbed": 24163, - "robber": 35545, - "robbers": 40852, - "robbery": 16393, - "robbi": 44898, - "robbie": 37200, - "robbie": 15970, - "robbing": 47569, - "robbins": 23461, - "robby": 44128, - "robe": 23116, - "rober": 4532, - "robert": 8811, - "robert": 3929, - "roberta": 43373, - "roberto": 42645, - "roberto": 16227, - "roberts": 10366, - "robertson": 17643, - "robes": 29304, - "robi": 16743, - "robin": 6681, - "robin": 7988, - "robins": 35502, - "robinson": 8523, - "robles": 47646, - "roblo": 27481, - "roblox": 37798, - "robo": 4672, - "robo": 36057, - "robot": 46089, - "robot": 8797, - "robotic": 23975, - "robotics": 13546, - "robots": 13473, - "robson": 31113, - "robust": 22780, - "robyn": 34533, - "roc": 3268, - "roc": 13776, - "rocco": 30009, - "roch": 23788, - "rochdale": 41880, - "roche": 31776, - "rochelle": 40161, - "rochester": 18057, - "rock": 2640, - "rock": 2172, - "rockab": 39353, - "rockabilly": 45019, - "rocke": 19914, - "rocked": 16116, - "rockefeller": 35476, - "rocker": 29008, - "rockers": 32338, - "rocket": 25435, - "rocket": 8383, - "rockets": 13292, - "rockford": 41039, - "rockies": 20621, - "rockin": 12073, - "rocking": 7081, - "rockn": 24442, - "rocknroll": 27840, - "rocks": 6135, - "rockstar": 23603, - "rockstar": 18000, - "rockstargames": 27516, - "rockstars": 46639, - "rockthe": 49363, - "rockwell": 34747, - "rocky": 33481, - "rocky": 9648, - "rod": 9712, - "rod": 8291, - "roddy": 42332, - "rode": 18449, - "rodeo": 18250, - "rodgers": 17612, - "rodi": 49100, - "rodney": 21753, - "rodri": 11053, - "rodrigo": 33944, - "rodriguez": 14057, - "rods": 28618, - "roe": 27671, - "roe": 9996, - "rof": 33029, - "rofl": 48228, - "roft": 45212, - "rog": 34269, - "rog": 34017, - "rogen": 23380, - "roger": 13929, - "roger": 7735, - "rogerfederer": 40182, - "rogers": 10661, - "rogue": 32575, - "rogue": 15162, - "roh": 14933, - "roh": 29840, - "rohan": 39848, - "rohing": 23600, - "rohingya": 26146, - "rohit": 44649, - "rohit": 24299, - "roi": 21877, - "rok": 36807, - "rol": 3393, - "rol": 7818, - "roland": 33713, - "roland": 19569, - "role": 18485, - "role": 3414, - "roles": 11871, - "rolex": 21093, - "rolf": 48606, - "roll": 4711, - "roll": 3341, - "rolled": 11982, - "roller": 21034, - "roller": 12342, - "rollercoaster": 38248, - "rollers": 36941, - "rollin": 27545, - "rolling": 24250, - "rolling": 6347, - "rollingstones": 41309, - "rollins": 27724, - "rollout": 47710, - "rollover": 39214, - "rolls": 8614, - "rolltide": 28101, - "rom": 11377, - "rom": 19205, - "roma": 44134, - "roma": 11631, - "romain": 48897, - "roman": 4416, - "roman": 7370, - "romance": 7215, - "romania": 15884, - "romanian": 30866, - "romano": 38409, - "romans": 23066, - "romantic": 41457, - "romantic": 8821, - "rome": 9406, - "rome": 5243, - "romeo": 14429, - "romero": 23694, - "romney": 19287, - "romo": 32248, - "romper": 43699, - "ron": 2393, - "ron": 3372, - "rona": 42385, - "ronal": 46194, - "ronald": 15683, - "ronaldo": 13463, - "ronan": 34971, - "rond": 31935, - "ronda": 37436, - "rondo": 43756, - "rone": 48082, - "rone": 32763, - "roni": 47234, - "ronnie": 45257, - "ronnie": 16421, - "rons": 19536, - "ront": 48881, - "roo": 1249, - "roo": 31227, - "rood": 38007, - "roof": 9120, - "roof": 6449, - "roofing": 24415, - "roofs": 34635, - "rooftop": 16319, - "rook": 35918, - "rookie": 9771, - "rookies": 31917, - "room": 8845, - "room": 1530, - "roomie": 36851, - "roommate": 19825, - "roommates": 37323, - "rooms": 6328, - "rooney": 17712, - "roos": 32938, - "roosevel": 17644, - "roosevelt": 18488, - "rooster": 46263, - "rooster": 30926, - "roosters": 43693, - "root": 25930, - "root": 9728, - "rooted": 30428, - "rooting": 25523, - "roots": 8084, - "rop": 43401, - "rope": 9953, - "ropes": 30506, - "ror": 8668, - "ror": 2843, - "rors": 12072, - "rory": 42804, - "rory": 17813, - "ros": 5288, - "ros": 6930, - "rosa": 14393, - "rosal": 30397, - "rosario": 33640, - "rosary": 33098, - "rosberg": 46037, - "rose": 6146, - "rose": 3568, - "roseanne": 47528, - "rosel": 33616, - "rosemary": 19472, - "rosen": 13214, - "rosen": 36424, - "rosenberg": 43558, - "rosenthal": 46990, - "roses": 9061, - "rosetta": 43800, - "rosewood": 38686, - "rosie": 43049, - "rosie": 16888, - "ross": 8801, - "ross": 2158, - "rosse": 11602, - "rossi": 24817, - "rosso": 33023, - "roster": 12487, - "roswell": 45116, - "rosy": 46705, - "rosé": 28006, - "rot": 10055, - "rot": 9643, - "rotar": 45959, - "rotary": 14654, - "rotating": 32265, - "rotation": 18089, - "rotc": 32252, - "roth": 17741, - "roth": 19139, - "rother": 23174, - "rotherham": 37687, - "rothschild": 45089, - "roti": 46940, - "roto": 34698, - "rotor": 42991, - "rots": 16642, - "rott": 34806, - "rotten": 24324, - "rotter": 22614, - "rotterdam": 23422, - "rotun": 42970, - "rou": 2964, - "rou": 34783, - "roud": 28375, - "rouge": 16209, - "rough": 11699, - "rough": 8511, - "roughly": 21910, - "roughs": 37598, - "rouhani": 39912, - "roulette": 39930, - "roun": 5602, - "round": 9403, - "round": 2522, - "roundabout": 29953, - "rounded": 26973, - "rounder": 37024, - "rounding": 40208, - "rounds": 11242, - "roundtable": 19386, - "roundup": 17503, - "roup": 29220, - "rourke": 38753, - "rous": 33645, - "rous": 34531, - "rousey": 46267, - "rout": 7502, - "rout": 41778, - "route": 5261, - "router": 29962, - "routes": 14923, - "routine": 12319, - "routines": 44074, - "routing": 44086, - "roux": 43416, - "rov": 23971, - "rove": 30130, - "rover": 12776, - "rovers": 16373, - "row": 5275, - "row": 1044, - "rowan": 26240, - "rowdy": 32141, - "rowe": 28323, - "rowed": 22615, - "rower": 43345, - "rowers": 41806, - "rowing": 12807, - "rowland": 33037, - "rowley": 48793, - "rowling": 29371, - "rown": 22287, - "rown": 25060, - "rows": 9409, - "rox": 14111, - "rox": 41033, - "roxy": 28093, - "roy": 2128, - "roy": 6354, - "royal": 6691, - "royal": 3853, - "royale": 20630, - "royalnavy": 41545, - "royals": 13335, - "royalties": 48660, - "royalty": 18296, - "royalwedding": 27461, - "royce": 18444, - "royd": 41476, - "royo": 39357, - "roz": 28989, - "roz": 37250, - "rp": 17305, - "rp": 8174, - "rpa": 41872, - "rpg": 12445, - "rpm": 23715, - "rps": 49215, - "rr": 5311, - "rr": 9126, - "rrp": 36967, - "rrr": 18267, - "rrrr": 25561, - "rrrr": 34444, - "rs": 6978, - "rs": 1724, - "rsa": 29437, - "rsc": 48524, - "rsd": 34426, - "rsi": 39046, - "rsl": 44752, - "rsp": 16381, - "rspb": 38508, - "rspb": 36727, - "rspca": 45643, - "rss": 46466, - "rss": 22350, - "rstats": 38700, - "rsvp": 9774, - "rt": 8959, - "rt": 8991, - "rtc": 31648, - "rte": 33822, - "rte": 23322, - "rtg": 22028, - "rti": 47549, - "rtr": 43999, - "rts": 8496, - "rtw": 34673, - "ru": 681, - "ru": 13735, - "rub": 15862, - "rub": 22586, - "rubb": 19597, - "rubbed": 45239, - "rubber": 31131, - "rubber": 11331, - "rubbing": 41262, - "rubbish": 21108, - "rubble": 42230, - "ruben": 44058, - "ruben": 29722, - "rubi": 27856, - "rubin": 34128, - "rubio": 24244, - "rubs": 43422, - "ruby": 24552, - "ruby": 11493, - "ruck": 27449, - "rucker": 45402, - "rud": 35256, - "rudd": 31836, - "rude": 16548, - "rudi": 48360, - "rudol": 40927, - "rudolf": 46835, - "rudolph": 30119, - "rudy": 38226, - "rudy": 22131, - "rue": 38024, - "rue": 19276, - "rufc": 45084, - "ruff": 28177, - "ruff": 30304, - "rufus": 39322, - "rug": 4217, - "rug": 19220, - "rugby": 15091, - "rugby": 4964, - "rugbyleague": 44419, - "ruger": 48655, - "rugged": 25225, - "rugs": 29946, - "rui": 46974, - "ruin": 16256, - "ruined": 17231, - "ruining": 29952, - "ruins": 16094, - "ruiz": 27873, - "ruk": 46628, - "rukh": 43075, - "rukh": 27631, - "rule": 31643, - "rule": 6175, - "ruled": 16324, - "ruler": 26286, - "rulers": 45328, - "rules": 5272, - "ruling": 14690, - "rum": 9223, - "rum": 11233, - "rumb": 42432, - "rumble": 18900, - "rumi": 31428, - "rumor": 22254, - "rumored": 36694, - "rumors": 16160, - "rumour": 34296, - "rumours": 20716, - "rump": 29366, - "run": 1639, - "run": 1934, - "runaway": 28851, - "runchat": 25838, - "rundown": 41100, - "rune": 33882, - "rune": 49244, - "runner": 37370, - "runner": 7913, - "runners": 10571, - "runnin": 43130, - "running": 24451, - "running": 2761, - "runoff": 38564, - "runs": 5586, - "runway": 13927, - "rup": 7996, - "rup": 14980, - "rupaul": 44211, - "rupee": 43916, - "rupees": 44110, - "rupert": 25625, - "rupt": 23055, - "ruption": 35403, - "rural": 28801, - "rural": 8737, - "rus": 35811, - "rus": 5998, - "rush": 12148, - "rush": 6973, - "rushed": 28104, - "rusher": 48745, - "rushes": 47217, - "rushing": 20284, - "russ": 6285, - "russ": 20764, - "russell": 26122, - "russell": 8150, - "russi": 2600, - "russia": 4018, - "russian": 30731, - "russian": 4868, - "russians": 25413, - "russo": 30679, - "rust": 28682, - "rust": 14212, - "rustic": 19822, - "rusty": 43966, - "rusty": 22646, - "rut": 14973, - "rut": 39102, - "rutger": 49029, - "rutgers": 28934, - "ruth": 15798, - "ruth": 12029, - "ruther": 26676, - "rutherford": 31070, - "ruthless": 36063, - "rutland": 46024, - "ruto": 43702, - "ruz": 23275, - "rv": 17135, - "rv": 17951, - "rva": 24278, - "rw": 9085, - "rw": 22926, - "rwa": 47452, - "rwand": 31758, - "rwanda": 15427, - "rwby": 39698, - "rwc": 32321, - "rx": 41188, - "rx": 15945, - "ry": 1511, - "ry": 913, - "ryan": 8682, - "ryan": 4053, - "ryanair": 43526, - "ryder": 43564, - "ryder": 21805, - "rye": 24015, - "rye": 17409, - "rying": 7838, - "ryn": 37728, - "ryo": 24460, - "rys": 21654, - "ryu": 46656, - "ryu": 34604, - "ré": 29106, - "s": 82, - "s": 338, - "sa": 774, - "sa": 1344, - "saa": 13429, - "saab": 27158, - "saad": 36530, - "saas": 25761, - "saat": 33151, - "sab": 3233, - "sab": 23213, - "saba": 38344, - "sabah": 32854, - "saban": 41620, - "sabar": 47102, - "sabbath": 26008, - "sabc": 30010, - "sabcnews": 41093, - "saber": 46822, - "saber": 25624, - "sabha": 23431, - "sabi": 47073, - "sabine": 44062, - "sable": 19224, - "sabot": 30700, - "sabotage": 40496, - "sabre": 35110, - "sabres": 29620, - "sabrin": 37029, - "sabrina": 24994, - "sac": 3632, - "sac": 12905, - "sach": 30168, - "sacha": 49010, - "sachin": 47527, - "sachin": 30297, - "sachs": 31451, - "sack": 28964, - "sack": 14979, - "sacked": 27519, - "sacks": 26441, - "sacram": 13334, - "sacramento": 16065, - "sacred": 40612, - "sacred": 12477, - "sacri": 15283, - "sacrif": 12117, - "sacrific": 16919, - "sacrifice": 12556, - "sacrificed": 31116, - "sacrifices": 28858, - "sacrificing": 48146, - "sad": 2810, - "sad": 3719, - "saddened": 27720, - "saddest": 34925, - "saddle": 30469, - "saddle": 20283, - "sade": 27429, - "sadh": 40955, - "sadi": 22207, - "sadie": 30333, - "sadiq": 44107, - "sadler": 45600, - "sadly": 11603, - "sadness": 20399, - "sae": 38633, - "sae": 34883, - "saeed": 29745, - "saf": 2125, - "saf": 25760, - "safar": 23443, - "safari": 14091, - "safarilive": 34816, - "safc": 27998, - "safe": 2901, - "safe": 2996, - "safeguard": 42249, - "safeguarding": 47451, - "safely": 11513, - "safer": 40124, - "safer": 15504, - "safest": 38973, - "safety": 19050, - "safety": 3406, - "safetyfirst": 43608, - "saffron": 27529, - "sag": 6609, - "sag": 30048, - "saga": 15758, - "sagan": 37193, - "sagar": 42518, - "sage": 25800, - "sage": 7509, - "sages": 25979, - "sagin": 47097, - "sagitt": 44685, - "sagu": 44708, - "sah": 30943, - "sah": 26342, - "saha": 36062, - "sahara": 24599, - "saharan": 44255, - "sahi": 24608, - "sahib": 34150, - "sai": 16048, - "sai": 10886, - "said": 40319, - "said": 1946, - "saif": 44164, - "saig": 36328, - "saigon": 41081, - "sail": 7528, - "sail": 12156, - "sailed": 43047, - "sailing": 11003, - "sailor": 28002, - "sailor": 16076, - "sailormoon": 40673, - "sailors": 25355, - "sails": 27526, - "sain": 21226, - "sain": 40378, - "sains": 24860, - "sainsbury": 45879, - "sainsburys": 36934, - "saint": 11274, - "saint": 5599, - "saints": 8769, - "saintsfc": 31102, - "sair": 46600, - "sair": 30971, - "saire": 28087, - "saison": 33256, - "sait": 48008, - "saj": 33580, - "sak": 11511, - "sak": 35900, - "saka": 33609, - "sake": 12874, - "sakh": 43945, - "saki": 40514, - "saku": 37550, - "sakura": 24162, - "sal": 980, - "sal": 6126, - "sala": 17300, - "salaam": 46773, - "salad": 6188, - "salads": 30948, - "salah": 22516, - "salam": 19007, - "salam": 33963, - "salamat": 44696, - "salami": 46885, - "salaries": 33132, - "salary": 16312, - "salazar": 45988, - "sale": 17786, - "sale": 1690, - "saleh": 38353, - "salem": 48194, - "salem": 16884, - "sales": 13347, - "sales": 3765, - "salesforce": 22680, - "salesman": 37633, - "salford": 25629, - "sali": 15411, - "salim": 42760, - "salinas": 41990, - "saline": 46918, - "salis": 20667, - "salis": 39378, - "salisbury": 24763, - "sall": 27122, - "sall": 20883, - "salle": 23738, - "sally": 29542, - "sally": 13349, - "salman": 13754, - "salman": 16219, - "salmankhan": 15177, - "salmon": 37040, - "salmon": 9137, - "salom": 38268, - "salon": 33916, - "salon": 11105, - "saloon": 26038, - "sals": 16307, - "salsa": 16442, - "salt": 12763, - "salt": 6611, - "salted": 26313, - "saltlife": 47809, - "salts": 40559, - "saltwater": 43616, - "salty": 20678, - "salu": 31711, - "salud": 46867, - "salut": 44998, - "salute": 44908, - "salute": 9747, - "salutes": 32762, - "salv": 8299, - "salvador": 20874, - "salvage": 33131, - "salvation": 19534, - "salvatore": 38772, - "salz": 33594, - "salzburg": 43396, - "sam": 1644, - "sam": 3730, - "sama": 19272, - "samanth": 11465, - "samantha": 15466, - "samanthap": 38266, - "samanthaprabhu": 38643, - "samar": 21820, - "samaritan": 45495, - "samba": 37190, - "same": 23062, - "same": 2208, - "samheughan": 36255, - "sami": 48400, - "sami": 24322, - "sammy": 31091, - "sammy": 16758, - "samo": 30006, - "samoa": 34932, - "samp": 31225, - "sample": 9542, - "sampler": 40629, - "samples": 13387, - "sampling": 19522, - "sampson": 39983, - "sams": 44667, - "samson": 34659, - "samsun": 47875, - "samsung": 35369, - "samsung": 8115, - "samu": 7646, - "samuel": 30612, - "samuel": 12787, - "samurai": 21739, - "san": 1489, - "san": 2223, - "sana": 19434, - "sanantonio": 34714, - "sanat": 29091, - "sanatomy": 36052, - "sanc": 7398, - "sance": 15930, - "sanchez": 13971, - "sanctioned": 43032, - "sanctions": 17790, - "sanctu": 12712, - "sanctuary": 14044, - "sand": 2147, - "sand": 5094, - "sandal": 36445, - "sandal": 42185, - "sandals": 20731, - "sandalwood": 47502, - "sandeep": 46973, - "sander": 34111, - "sanders": 10429, - "sanderson": 36198, - "sandi": 44249, - "sandiego": 45997, - "sandiego": 15793, - "sandman": 45730, - "sando": 35921, - "sandoval": 44157, - "sandra": 33733, - "sandra": 13415, - "sandro": 42389, - "sands": 5936, - "sandstone": 36796, - "sandwich": 17050, - "sandwich": 8687, - "sandwiches": 19667, - "sandy": 29679, - "sandy": 10355, - "sane": 23419, - "sanford": 32330, - "sanfrancisco": 20254, - "sang": 13235, - "sang": 11684, - "sange": 12466, - "sangria": 42665, - "sani": 39137, - "sani": 34492, - "sanitary": 33842, - "sanitation": 25414, - "saniti": 43987, - "sanity": 30517, - "sanjay": 31712, - "sanjay": 25796, - "sanje": 40405, - "sanjose": 45971, - "sank": 43692, - "sano": 34053, - "sans": 16982, - "sansk": 39689, - "sanskrit": 48083, - "sant": 8356, - "sant": 23120, - "santa": 22175, - "santa": 4555, - "santac": 28876, - "santam": 45627, - "santana": 27033, - "santander": 46476, - "santi": 13856, - "santiago": 16568, - "santo": 29631, - "santo": 18400, - "santor": 28448, - "santorini": 39573, - "santos": 16582, - "sany": 47679, - "sao": 28026, - "sap": 8089, - "sap": 11591, - "sapi": 40016, - "sapp": 13427, - "sapp": 40729, - "sapphire": 22044, - "sar": 1808, - "sar": 9424, - "sara": 37196, - "sara": 10063, - "sarab": 40716, - "sarac": 35722, - "sarah": 9086, - "sarah": 5327, - "saraj": 42592, - "sarajevo": 48211, - "saras": 20373, - "sarasota": 31990, - "sarato": 24845, - "saratoga": 29496, - "sarawak": 47331, - "sarcasm": 37246, - "sarcastic": 48639, - "sardar": 41786, - "sarde": 43925, - "sardin": 27383, - "sardinia": 41025, - "sare": 13051, - "saree": 30860, - "sargent": 34864, - "sari": 42327, - "sari": 20261, - "saries": 47586, - "sarkar": 30673, - "sarko": 33658, - "sarkodie": 42848, - "sarmy": 20954, - "sart": 33006, - "sary": 15398, - "sas": 3960, - "sas": 5235, - "sash": 35656, - "sasha": 46078, - "sasha": 20894, - "sasia": 44751, - "sask": 47091, - "sask": 30416, - "saskat": 17102, - "saskatchewan": 23899, - "saskatoon": 31128, - "sass": 31351, - "sassy": 20827, - "sat": 1382, - "sat": 3279, - "sata": 41520, - "satan": 19446, - "satanic": 38224, - "satchel": 45908, - "sate": 35749, - "satell": 9031, - "satellite": 10316, - "satellites": 28483, - "sath": 29675, - "sathletics": 30154, - "sati": 7038, - "satin": 21803, - "sation": 23674, - "sations": 31232, - "satire": 29875, - "satis": 9906, - "satisf": 22941, - "satisfaction": 19925, - "satisfied": 18101, - "satisfy": 29444, - "satisfying": 23755, - "sato": 34376, - "satu": 45283, - "satur": 1634, - "saturated": 32466, - "saturday": 12537, - "saturday": 1748, - "saturdaymorning": 29053, - "saturdaymotivation": 40843, - "saturdays": 18930, - "saturn": 17312, - "saty": 39426, - "sau": 2096, - "sau": 19455, - "sauce": 5520, - "saucer": 42272, - "sauces": 40367, - "saucy": 46684, - "saudi": 24511, - "saudi": 8548, - "saudiarabia": 28680, - "sauer": 46333, - "saul": 47623, - "saul": 23252, - "sault": 40361, - "sauna": 35460, - "saunders": 23794, - "saur": 13227, - "saura": 46532, - "saurus": 22118, - "saus": 36121, - "sausage": 11855, - "sausages": 31593, - "sauté": 36290, - "sautéed": 38517, - "sauvi": 30116, - "sauvignon": 32745, - "sav": 2248, - "sav": 26533, - "sava": 40198, - "savag": 43039, - "savage": 11859, - "savannah": 18662, - "save": 5895, - "save": 2673, - "saved": 7137, - "saveour": 33390, - "saver": 20987, - "savers": 31416, - "saves": 12907, - "savethe": 18031, - "savi": 14721, - "saving": 28498, - "saving": 6979, - "savings": 10651, - "savior": 24762, - "saviour": 35800, - "savor": 48071, - "savory": 32992, - "savoury": 49071, - "savoy": 39552, - "savvy": 29278, - "saw": 12429, - "saw": 2425, - "sawa": 39613, - "sawards": 29012, - "sawyer": 27726, - "sax": 14169, - "sax": 23766, - "saxon": 31856, - "saxophon": 43760, - "saxophone": 32296, - "say": 3047, - "say": 1451, - "saya": 35170, - "sayang": 46322, - "sayers": 44116, - "sayin": 23662, - "saying": 4455, - "says": 1563, - "saz": 35577, - "sb": 5576, - "sb": 4977, - "sba": 44970, - "sback": 43840, - "sband": 27539, - "sbaseball": 46491, - "sbball": 39190, - "sbc": 31404, - "sberg": 20358, - "sbi": 41369, - "sbk": 39211, - "sboro": 18909, - "sbridge": 49228, - "sbs": 18883, - "sbu": 48075, - "sbu": 46281, - "sburg": 7390, - "sburgh": 48205, - "sbury": 14081, - "sby": 26519, - "sby": 10287, - "sc": 663, - "sc": 3219, - "sca": 11001, - "scab": 31716, - "scaf": 28981, - "scafe": 45574, - "scaffolding": 41687, - "scal": 10859, - "scala": 37997, - "scalable": 44084, - "scale": 37817, - "scale": 5879, - "scaled": 41923, - "scales": 22891, - "scaling": 29116, - "scallo": 19936, - "scallop": 39544, - "scallops": 31430, - "scalp": 38898, - "scam": 17620, - "scam": 13215, - "scamp": 28451, - "scams": 34395, - "scan": 10650, - "scan": 11261, - "scanada": 27121, - "scand": 8110, - "scandal": 35420, - "scandal": 11622, - "scandals": 45490, - "scandin": 32014, - "scandinavian": 35661, - "scanned": 43719, - "scanner": 24185, - "scanning": 24092, - "scans": 31251, - "scap": 35883, - "scape": 36005, - "scape": 12314, - "scapes": 31933, - "scar": 4171, - "scar": 18088, - "scarborough": 24254, - "scarce": 38572, - "scarcity": 45812, - "scare": 33536, - "scare": 15920, - "scarec": 38814, - "scarecrow": 46504, - "scared": 9870, - "scares": 34096, - "scarf": 13365, - "scari": 27050, - "scariest": 37213, - "scarlet": 20389, - "scarlett": 28325, - "scars": 20747, - "scarves": 29249, - "scary": 9250, - "scat": 13899, - "scattered": 22090, - "scavenger": 36778, - "scc": 19458, - "scd": 48422, - "scen": 2204, - "scenario": 20456, - "scenarios": 31346, - "scence": 33418, - "scene": 3562, - "scenery": 16025, - "scenes": 5415, - "scenic": 15394, - "scent": 36277, - "scent": 7683, - "scented": 27190, - "scenter": 23059, - "scentre": 39371, - "scents": 26336, - "scep": 24439, - "scfc": 38578, - "sch": 844, - "sch": 7542, - "scha": 42809, - "schaf": 45588, - "schaft": 41010, - "schal": 35568, - "schalke": 41029, - "schallenge": 43665, - "schan": 31328, - "schar": 15085, - "schat": 31842, - "schau": 35830, - "sche": 3038, - "sche": 7289, - "schedu": 4207, - "schedule": 5521, - "scheduled": 10986, - "schedules": 28986, - "scheduling": 32216, - "scheer": 26776, - "schel": 39881, - "schel": 38569, - "schem": 17720, - "scheme": 9024, - "schemes": 22958, - "schen": 22738, - "scher": 21925, - "scher": 21299, - "schi": 13731, - "schi": 24984, - "schicago": 46230, - "schiff": 39431, - "schild": 32148, - "schiz": 33230, - "schizoph": 40004, - "schizophre": 41163, - "schle": 32022, - "schmid": 17375, - "schmidt": 18463, - "schnau": 45745, - "schnei": 19941, - "schneider": 22972, - "schnit": 40903, - "scho": 2493, - "schoice": 23860, - "schol": 4498, - "scholar": 7192, - "scholar": 12830, - "scholarly": 41065, - "scholars": 13818, - "scholarship": 9070, - "scholarships": 17866, - "scholastic": 35743, - "schoo": 20721, - "school": 6063, - "school": 1228, - "schooled": 44722, - "schoolers": 31455, - "schooling": 28608, - "schools": 3513, - "schre": 47685, - "schri": 25453, - "schro": 32381, - "schu": 11318, - "schubert": 46939, - "schul": 14945, - "schultz": 30308, - "schulz": 39572, - "schumacher": 39208, - "schumer": 25313, - "schur": 42475, - "schwab": 47602, - "schwar": 13985, - "schwartz": 30617, - "schwarz": 27074, - "schwarzenegger": 33860, - "schwe": 25324, - "sci": 2267, - "sci": 8309, - "sciart": 31704, - "scicom": 28606, - "scicomm": 29573, - "scien": 39261, - "science": 10201, - "science": 2497, - "sciencefiction": 39170, - "sciences": 11481, - "scienti": 4338, - "scientific": 9750, - "scientist": 11083, - "scientists": 8045, - "sciento": 36193, - "scientology": 44694, - "scifi": 41862, - "scifi": 12230, - "scion": 47208, - "sciss": 25667, - "scissors": 30867, - "sciutto": 44392, - "sclerosis": 39446, - "sclub": 20017, - "sco": 1065, - "sco": 4763, - "scoe": 31164, - "scol": 13599, - "scoll": 44895, - "scollege": 39536, - "scom": 26407, - "scon": 17163, - "scon": 29272, - "scones": 36443, - "sconf": 39704, - "scoo": 14199, - "scooby": 34469, - "scoop": 13829, - "scoops": 41360, - "scope": 7979, - "scopes": 30328, - "scopic": 23869, - "scopy": 20018, - "scor": 8442, - "score": 12067, - "score": 4431, - "scoreboard": 30104, - "scorecard": 38128, - "scored": 6143, - "scoreless": 33469, - "scorer": 16572, - "scorers": 26699, - "scores": 7039, - "scoring": 9198, - "scorpi": 15445, - "scorpio": 34331, - "scorpion": 28461, - "scorpions": 45401, - "scorsese": 45975, - "scot": 2496, - "scot": 9271, - "scotch": 16687, - "scoti": 46446, - "scotia": 27859, - "scotland": 29174, - "scotland": 4203, - "scots": 17260, - "scotsman": 39612, - "scott": 7775, - "scott": 3664, - "scotti": 6227, - "scottish": 18039, - "scottish": 7442, - "scottsdale": 27817, - "scotty": 39697, - "scotty": 26836, - "scotus": 21720, - "scou": 44909, - "scoun": 16110, - "scouncil": 48787, - "scountry": 40432, - "scour": 46172, - "scout": 32213, - "scout": 10786, - "scouting": 19072, - "scouts": 14837, - "scow": 27929, - "scowboys": 31386, - "scp": 45030, - "scr": 36131, - "scra": 11187, - "scrabble": 39488, - "scram": 17289, - "scramble": 32688, - "scrambled": 39026, - "scran": 41774, - "scranton": 45274, - "scrap": 27950, - "scrap": 21695, - "scrapbook": 48733, - "scrapped": 43325, - "scraps": 40809, - "scrat": 9572, - "scratch": 13258, - "scratched": 48831, - "scratches": 46556, - "scratching": 44617, - "scre": 1795, - "scream": 31645, - "scream": 13239, - "screamed": 35427, - "screaming": 12891, - "screams": 23989, - "screen": 5351, - "screen": 3750, - "screened": 31450, - "screening": 6688, - "screenings": 27655, - "screenplay": 30058, - "screens": 12689, - "screenshot": 20637, - "screenshot": 12646, - "screenshots": 26783, - "screenshotsaturday": 21406, - "screenwriter": 37293, - "screenwriting": 35465, - "screw": 25529, - "screw": 14225, - "screwdriver": 48748, - "screwed": 30592, - "screws": 38292, - "scri": 2139, - "scrib": 34259, - "scribe": 36228, - "scribed": 38334, - "scricket": 45947, - "scrim": 21978, - "scrimmage": 25216, - "scrip": 11955, - "script": 8374, - "scripted": 40513, - "scription": 26604, - "scriptions": 39512, - "scripts": 20109, - "scripture": 27186, - "scro": 30768, - "scroll": 24160, - "scrolling": 28889, - "scrolls": 38113, - "scroo": 42263, - "scru": 7589, - "scrub": 23432, - "scrubs": 37919, - "scrum": 29047, - "scrump": 39791, - "scrumptious": 40987, - "scrutiny": 34305, - "scs": 26853, - "sct": 39284, - "scu": 8181, - "scu": 32135, - "scuba": 39053, - "scuba": 20559, - "scubadiving": 49046, - "scue": 25955, - "scul": 4948, - "scully": 36598, - "sculp": 6093, - "sculpt": 45044, - "sculpted": 41296, - "sculpting": 44389, - "sculptor": 29409, - "sculpture": 8757, - "sculptures": 20378, - "scum": 29655, - "scumb": 44525, - "scup": 21506, - "scur": 32742, - "scwx": 41966, - "scy": 27471, - "sd": 3080, - "sd": 4159, - "sda": 25548, - "sdale": 12327, - "sday": 5902, - "sday": 1376, - "sdays": 14491, - "sdc": 40992, - "sdcc": 13246, - "sden": 17241, - "sdf": 34681, - "sdg": 20177, - "sdgs": 16261, - "sdk": 40015, - "sdlive": 34561, - "sdn": 41925, - "sdsu": 41284, - "se": 567, - "se": 611, - "sea": 5970, - "sea": 2102, - "seab": 15728, - "seabir": 42558, - "seac": 35626, - "seaf": 9336, - "seafood": 12472, - "seag": 15730, - "seagu": 38076, - "seagull": 38858, - "seagulls": 42215, - "seahawks": 15341, - "seal": 21381, - "seal": 10159, - "sealed": 13358, - "sealing": 42992, - "seals": 18179, - "seam": 13710, - "seam": 44201, - "seaman": 47513, - "seamless": 29373, - "seamus": 40175, - "sean": 11406, - "sean": 6077, - "seanhannity": 43316, - "seap": 29983, - "seaport": 46418, - "sear": 1612, - "search": 23129, - "search": 1920, - "searched": 28961, - "searches": 26378, - "searching": 10626, - "seared": 29727, - "sears": 26693, - "seas": 7329, - "seas": 9556, - "seascape": 42593, - "seaside": 18867, - "season": 19288, - "season": 1367, - "seasonal": 14215, - "seasoned": 28399, - "seasoning": 43439, - "seasons": 8635, - "seat": 19670, - "seat": 4922, - "seated": 23953, - "seater": 37543, - "seating": 16240, - "seats": 6944, - "seattle": 24388, - "seattle": 6274, - "seau": 32263, - "seaw": 32658, - "seaweed": 30204, - "seaworld": 27422, - "seb": 35766, - "seb": 25171, - "sebasti": 10324, - "sebastian": 43792, - "sebastian": 13181, - "sebring": 41086, - "sec": 2875, - "sec": 5338, - "seca": 37847, - "secco": 27394, - "sece": 46297, - "seclu": 42392, - "secon": 1846, - "second": 9329, - "second": 2241, - "secondary": 13107, - "seconds": 6541, - "secre": 2460, - "secret": 20710, - "secret": 4145, - "secretari": 29515, - "secretariat": 31767, - "secretary": 6552, - "secretly": 21400, - "secrets": 9735, - "secs": 28665, - "sect": 15772, - "section": 34986, - "section": 4853, - "sectional": 21876, - "sections": 20061, - "sector": 6579, - "sectors": 22173, - "secu": 4894, - "secular": 47483, - "secular": 27560, - "secur": 2557, - "secure": 44763, - "secure": 7515, - "secured": 16848, - "secures": 31567, - "securing": 24759, - "securities": 25080, - "security": 31245, - "security": 2741, - "sed": 14034, - "sed": 1252, - "sedan": 24237, - "sedg": 46926, - "sedge": 45288, - "sedi": 29269, - "sedly": 31771, - "sedona": 46862, - "seduc": 19933, - "seductive": 43721, - "see": 1751, - "see": 862, - "seed": 14064, - "seed": 6488, - "seeded": 33688, - "seeding": 40050, - "seedlings": 47933, - "seeds": 9128, - "seeing": 3214, - "seek": 8839, - "seeker": 28011, - "seekers": 20732, - "seeking": 8592, - "seeks": 12594, - "seem": 20043, - "seem": 7523, - "seemed": 17240, - "seemingly": 25917, - "seems": 4453, - "seen": 36273, - "seen": 2041, - "seer": 32486, - "sees": 7594, - "seeyou": 41279, - "sef": 27453, - "seg": 10551, - "sega": 16122, - "segment": 15615, - "segments": 43053, - "segreg": 49117, - "segregation": 39086, - "segu": 33156, - "segun": 43087, - "seh": 27536, - "seh": 41430, - "sehun": 17705, - "sei": 13130, - "sei": 15907, - "sein": 24669, - "seine": 41378, - "seinfeld": 33706, - "seis": 25559, - "seismic": 38459, - "seiz": 22171, - "seize": 26624, - "seized": 15826, - "seizure": 36804, - "seizures": 47199, - "sek": 45515, - "sek": 25880, - "sel": 1000, - "sel": 4098, - "sela": 47006, - "selamat": 37692, - "selangor": 44402, - "selby": 43546, - "selca": 38606, - "selcaday": 35924, - "seldom": 48322, - "sele": 29137, - "selec": 3014, - "select": 8690, - "selected": 6881, - "selecting": 32696, - "selection": 6724, - "selections": 24099, - "selective": 28686, - "selects": 32902, - "selen": 19970, - "selena": 14677, - "selenagomez": 27653, - "seley": 30556, - "self": 10139, - "self": 1322, - "selfcare": 39560, - "selfi": 3007, - "selfie": 26735, - "selfie": 3666, - "selfies": 46058, - "selfies": 10050, - "selfish": 26907, - "selfless": 34236, - "sell": 10279, - "sell": 5119, - "seller": 11779, - "sellers": 16562, - "selling": 4396, - "sells": 14306, - "selma": 36652, - "sels": 42070, - "selves": 4505, - "sely": 8402, - "sem": 8645, - "sem": 17106, - "sema": 31816, - "seman": 29119, - "seman": 28378, - "semana": 41780, - "semb": 36054, - "seme": 10855, - "sement": 10714, - "sements": 31449, - "semester": 11905, - "semi": 11023, - "semi": 6684, - "semic": 26967, - "semicon": 34315, - "semiconduc": 35646, - "semiconductor": 43551, - "semifinal": 22935, - "semifinals": 21863, - "semin": 5595, - "seminar": 7269, - "seminars": 34870, - "seminary": 31655, - "seminole": 42956, - "semis": 24013, - "semit": 22628, - "semite": 23721, - "semitic": 34894, - "semitism": 25911, - "semper": 47391, - "sen": 1057, - "sen": 2249, - "sena": 21584, - "senate": 30703, - "senate": 6843, - "senator": 20871, - "senator": 8495, - "senators": 16889, - "send": 27684, - "send": 3625, - "sending": 6985, - "sends": 10817, - "sene": 25269, - "seneca": 33419, - "senegal": 28255, - "senew": 49313, - "seng": 43022, - "seng": 29971, - "senior": 19865, - "senior": 3415, - "seniors": 8138, - "senna": 36195, - "senpai": 46562, - "sens": 5218, - "sens": 22837, - "sensation": 19383, - "sensational": 23051, - "sense": 29162, - "sense": 4747, - "sensei": 36158, - "senses": 21809, - "sensi": 38802, - "sensible": 30635, - "sensing": 29236, - "sensiti": 20531, - "sensitive": 13734, - "sensitivity": 27788, - "sensor": 15330, - "sensors": 20356, - "sensory": 21831, - "sensu": 28157, - "sensual": 40860, - "sent": 6200, - "sent": 3676, - "sentence": 12737, - "sentenced": 17773, - "sentences": 25858, - "sentencing": 34394, - "senti": 19042, - "sentim": 25102, - "sentiment": 25949, - "sentimental": 40070, - "sentiments": 47450, - "sentin": 20042, - "sentinel": 23123, - "senting": 3924, - "seo": 24743, - "seo": 8622, - "seok": 34697, - "seok": 22482, - "seokjin": 45584, - "seoul": 13253, - "sep": 3212, - "sep": 10434, - "separ": 6859, - "separate": 13886, - "separated": 22163, - "separately": 41904, - "separates": 45365, - "separati": 39377, - "separating": 43480, - "separation": 22007, - "sephora": 38414, - "sepsis": 40205, - "sept": 5380, - "septe": 3672, - "september": 3707, - "septic": 34690, - "sepul": 47360, - "seq": 44379, - "sequ": 5491, - "seque": 44662, - "sequel": 15701, - "sequence": 18833, - "sequences": 47306, - "sequencing": 33484, - "sequo": 32781, - "sequoia": 42404, - "ser": 803, - "ser": 2771, - "sera": 28250, - "serbia": 19038, - "serbian": 33687, - "sere": 35770, - "seren": 7880, - "serena": 19519, - "serenawilliams": 48316, - "serendip": 45805, - "serendipity": 49386, - "serene": 28269, - "serenity": 24187, - "serge": 13477, - "serge": 35700, - "sergeant": 22049, - "sergei": 39870, - "sergey": 35390, - "sergi": 47675, - "sergio": 18359, - "seri": 2763, - "seri": 37509, - "serial": 14216, - "serie": 19752, - "seriea": 32660, - "series": 1857, - "serious": 47421, - "serious": 4770, - "seriously": 4885, - "sermon": 24884, - "sero": 48883, - "serpent": 37084, - "serpent": 35364, - "serra": 39851, - "serrano": 44236, - "sers": 13509, - "serum": 25385, - "serv": 1297, - "serv": 24571, - "servant": 20810, - "servants": 29652, - "serve": 39202, - "serve": 2838, - "served": 4740, - "server": 36458, - "server": 8398, - "serverless": 49243, - "servers": 22262, - "serves": 9915, - "servic": 27115, - "service": 21496, - "service": 2086, - "serviced": 44687, - "services": 3100, - "servicing": 41300, - "serving": 5722, - "sery": 14279, - "ses": 23708, - "ses": 1386, - "sesame": 21706, - "sese": 37128, - "sesh": 24274, - "session": 2550, - "sessions": 6327, - "set": 7965, - "set": 1167, - "setback": 43605, - "seth": 20005, - "seth": 11870, - "sethu": 38933, - "setlist": 33141, - "seton": 43799, - "sets": 4650, - "sett": 4984, - "sett": 17567, - "sette": 14613, - "setter": 23153, - "settes": 44145, - "setti": 45170, - "setting": 5264, - "settings": 18628, - "settle": 15075, - "settled": 18310, - "settlement": 16494, - "settlements": 36605, - "settlers": 35671, - "settles": 41498, - "settling": 22036, - "setup": 11092, - "seu": 31539, - "seul": 48975, - "seum": 18838, - "seun": 24209, - "seung": 32393, - "seung": 33711, - "seungri": 41627, - "seuss": 34441, - "sev": 26585, - "sev": 37600, - "seva": 42604, - "seve": 21458, - "seve": 22468, - "sevel": 17439, - "seven": 7874, - "seven": 5757, - "sevens": 29911, - "sevent": 43048, - "seventeen": 19337, - "seventh": 17568, - "seventy": 47170, - "sever": 3250, - "sever": 45557, - "several": 5560, - "severance": 26194, - "severe": 6215, - "severely": 24417, - "severn": 34626, - "severy": 34207, - "sevilla": 24947, - "seville": 34988, - "sew": 28640, - "sewage": 32777, - "sewer": 28294, - "sewing": 15974, - "sewn": 42118, - "sex": 3548, - "sex": 5937, - "sexi": 20562, - "sexiest": 25426, - "sexism": 32059, - "sexist": 33047, - "sexu": 14741, - "sexual": 6749, - "sexuality": 21244, - "sexually": 23032, - "sexy": 21019, - "sexy": 38127, - "sey": 6317, - "sey": 2258, - "seychel": 36809, - "seychelles": 38519, - "seye": 35604, - "seym": 22657, - "seymour": 25850, - "seys": 15081, - "sez": 42377, - "señ": 43368, - "sf": 4435, - "sf": 4915, - "sfa": 32675, - "sfam": 37649, - "sfb": 27930, - "sfc": 14129, - "sfest": 49024, - "sff": 42056, - "sfgiants": 20923, - "sfield": 11801, - "sfo": 39182, - "sfootball": 45259, - "sfor": 9115, - "sford": 28917, - "sforsale": 28888, - "sfw": 18073, - "sfx": 37995, - "sg": 9599, - "sg": 7611, - "sga": 33049, - "sgate": 27558, - "sgh": 47590, - "sgo": 5393, - "sgo": 21044, - "sgt": 13748, - "sh": 552, - "sh": 849, - "sha": 1514, - "sha": 3337, - "shaa": 44221, - "shab": 8323, - "shabbat": 38042, - "shabby": 28838, - "shack": 23866, - "shack": 18785, - "shad": 3182, - "shad": 23874, - "shade": 34554, - "shade": 10097, - "shaded": 43506, - "shades": 46608, - "shades": 9270, - "shadesof": 45180, - "shading": 37348, - "shado": 9325, - "shadow": 15243, - "shadow": 7068, - "shadowhun": 19931, - "shadowhunters": 24834, - "shadowing": 46092, - "shadows": 12971, - "shady": 22158, - "shaf": 12032, - "shaft": 21545, - "shag": 22439, - "shaggy": 42662, - "shah": 13203, - "shah": 8439, - "shahe": 23643, - "shaheed": 30060, - "shaheer": 43969, - "shahi": 46972, - "shahid": 25696, - "shahid": 27138, - "shahidkapoor": 29892, - "shahzad": 45915, - "shai": 47941, - "shaikh": 45712, - "shail": 37603, - "shair": 43135, - "shak": 8385, - "shake": 8206, - "shake": 8251, - "shaken": 38237, - "shaker": 26210, - "shakers": 38411, - "shakes": 19668, - "shakespe": 9890, - "shakespeare": 22499, - "shakespeare": 12488, - "shakespearesunday": 32320, - "shaking": 19101, - "shakira": 40795, - "shakti": 48593, - "shakti": 32458, - "shakur": 48915, - "shal": 15056, - "shal": 28175, - "shale": 32864, - "shall": 4742, - "shallow": 23730, - "shalom": 31339, - "sham": 6453, - "sham": 9005, - "shaman": 48727, - "shambles": 40799, - "shame": 14776, - "shame": 7593, - "shameful": 28283, - "shameless": 25380, - "shaming": 40553, - "shampoo": 23944, - "shamrock": 34199, - "shan": 5171, - "shan": 8834, - "shana": 44835, - "shand": 29101, - "shane": 26863, - "shane": 11572, - "shang": 11141, - "shanghai": 12742, - "shani": 46665, - "shank": 24685, - "shankar": 24108, - "shann": 9932, - "shannon": 22842, - "shannon": 13581, - "shant": 36610, - "shap": 5581, - "shape": 26925, - "shape": 6448, - "shaped": 10127, - "shapes": 15377, - "shaping": 18632, - "shapiro": 32110, - "shaq": 46402, - "shaq": 26843, - "shar": 1669, - "shar": 36542, - "shara": 48849, - "sharapo": 36489, - "sharapova": 36671, - "shard": 42207, - "share": 7585, - "share": 1978, - "shared": 5368, - "shareholder": 38241, - "shareholders": 34778, - "sharepoint": 39213, - "shares": 4974, - "sharethe": 49277, - "shareyour": 45890, - "shari": 27738, - "shari": 47390, - "sharia": 37244, - "sharif": 15501, - "sharing": 3567, - "sharjah": 33420, - "shark": 15836, - "shark": 7980, - "sharks": 10047, - "sharkweek": 39571, - "sharma": 10105, - "sharon": 28722, - "sharon": 14138, - "sharp": 17126, - "sharp": 8157, - "sharpe": 34374, - "sharpen": 41465, - "sharpie": 46858, - "sharply": 37185, - "shasta": 46727, - "shat": 12169, - "shat": 44388, - "shatter": 45008, - "shattered": 26820, - "shau": 13750, - "shaun": 23446, - "shaun": 16669, - "shav": 11410, - "shave": 17735, - "shaved": 25571, - "shaving": 24261, - "shaw": 6122, - "shaw": 6805, - "shawa": 46413, - "shawl": 35132, - "shawn": 16677, - "shawn": 10970, - "shawnee": 48060, - "shawnmendes": 27277, - "shawty": 38026, - "shay": 10778, - "shay": 18361, - "shaykh": 47223, - "shaz": 18618, - "shazam": 29063, - "shc": 43419, - "shd": 37729, - "she": 1729, - "she": 1043, - "shea": 20407, - "shead": 44287, - "shead": 20434, - "shealth": 41743, - "shealth": 22197, - "shear": 27974, - "shear": 32108, - "shearer": 40505, - "sheath": 45637, - "shed": 16586, - "shed": 1492, - "shedding": 33608, - "sheds": 25921, - "shee": 23450, - "shee": 34321, - "sheed": 26105, - "sheehan": 41809, - "sheen": 25025, - "sheep": 23604, - "sheep": 9629, - "sheer": 17577, - "sheeran": 18561, - "sheet": 7298, - "sheets": 12744, - "shef": 8237, - "sheff": 38844, - "sheff": 43821, - "sheffiel": 26940, - "sheffield": 41763, - "sheffield": 10420, - "sheffieldissuper": 33628, - "sheh": 31667, - "sheikh": 15031, - "sheil": 42765, - "sheila": 25734, - "shek": 33285, - "shel": 3159, - "shelby": 36906, - "shelby": 16885, - "sheldon": 25079, - "shelf": 10955, - "shell": 23374, - "shell": 6648, - "shelley": 22497, - "shelling": 43166, - "shells": 19265, - "shelly": 37461, - "shelter": 8599, - "sheltered": 48070, - "shelters": 24312, - "shelton": 24471, - "shelves": 16225, - "shem": 40299, - "shen": 10154, - "shen": 31098, - "shenan": 20965, - "shenando": 44666, - "shenanigans": 26590, - "shenko": 39751, - "shenmue": 48279, - "shenzhen": 38970, - "shep": 33757, - "shep": 44857, - "shepard": 26810, - "shepher": 11008, - "shepherd": 13242, - "shepherds": 42792, - "sheppard": 37304, - "sher": 3570, - "sher": 4510, - "sheraton": 39400, - "shere": 21507, - "sheri": 9235, - "sheridan": 27085, - "sheriff": 10309, - "sherlock": 17294, - "sherman": 17822, - "sherry": 44348, - "sherry": 24689, - "shers": 14141, - "sherwood": 24527, - "sheryl": 39773, - "shes": 45514, - "shes": 2502, - "shet": 15850, - "shetland": 29595, - "shetty": 25533, - "shev": 45182, - "sheva": 45132, - "shh": 35025, - "shhh": 36932, - "shi": 823, - "shi": 3533, - "shia": 23791, - "shibu": 36177, - "shibuya": 41623, - "shie": 26638, - "shiel": 33413, - "shield": 8670, - "shields": 19085, - "shies": 35312, - "shif": 35317, - "shift": 43767, - "shift": 6905, - "shifted": 34429, - "shifter": 48944, - "shifting": 21992, - "shifts": 23957, - "shik": 36980, - "shil": 14370, - "shill": 32121, - "shill": 30090, - "shilpa": 47062, - "shilpa": 40690, - "shim": 11986, - "shim": 32780, - "shima": 14382, - "shimano": 48904, - "shimi": 40517, - "shimmer": 38792, - "shin": 5664, - "shin": 11784, - "shinde": 41516, - "shine": 17582, - "shine": 3780, - "shinee": 19660, - "shines": 16015, - "shing": 38641, - "shing": 1743, - "shining": 10485, - "shino": 43074, - "shiny": 12190, - "ship": 7645, - "ship": 1158, - "shipment": 28553, - "shipp": 34709, - "shipped": 15279, - "shippers": 44789, - "shipping": 5721, - "ships": 3262, - "shipwreck": 48878, - "shipy": 26828, - "shipyard": 31273, - "shir": 1956, - "shiraz": 35618, - "shire": 11975, - "shire": 2968, - "shirehour": 32456, - "shirley": 18189, - "shiro": 26048, - "shirt": 27576, - "shirt": 2523, - "shirtless": 28959, - "shirts": 5803, - "shistory": 34979, - "shiv": 18042, - "shiv": 37121, - "shiva": 33881, - "shiva": 21174, - "shka": 38944, - "shld": 49359, - "shma": 48074, - "shment": 8802, - "shments": 18822, - "sho": 719, - "sho": 13756, - "shock": 19617, - "shock": 8736, - "shocked": 15787, - "shocker": 37971, - "shockey": 22258, - "shocking": 13394, - "shocks": 31886, - "shoe": 16308, - "shoe": 7342, - "shoes": 49391, - "shoes": 4079, - "shol": 21472, - "sholm": 44139, - "shome": 42701, - "shon": 19526, - "shon": 37621, - "shone": 47173, - "shoo": 1975, - "shook": 20730, - "shoops": 29956, - "shoot": 12531, - "shoot": 3704, - "shooter": 13645, - "shooters": 31902, - "shooting": 3992, - "shootings": 26753, - "shootout": 20666, - "shoots": 14144, - "shop": 5738, - "shop": 1557, - "shopify": 47949, - "shoplocal": 21775, - "shopp": 38486, - "shoppe": 38236, - "shopped": 28088, - "shopper": 24346, - "shoppers": 22316, - "shopping": 42101, - "shopping": 4266, - "shops": 6467, - "shopsmall": 35942, - "shor": 3209, - "shore": 14717, - "shore": 5928, - "shored": 33140, - "shoreditch": 35042, - "shoreline": 34807, - "shores": 18102, - "short": 6803, - "short": 3005, - "shortage": 19910, - "shortages": 38730, - "shortcuts": 45793, - "shorten": 41711, - "shorter": 20350, - "shortest": 33717, - "shortfilm": 37204, - "shorth": 37397, - "shortlist": 28163, - "shortlisted": 20631, - "shortly": 11967, - "shorts": 9680, - "shorty": 33502, - "shot": 9805, - "shot": 2000, - "shotel": 42365, - "shotgun": 21643, - "shots": 5342, - "shou": 3890, - "shoul": 29847, - "should": 14947, - "should": 1535, - "shoulder": 8476, - "shoulders": 18738, - "shouldn": 9416, - "shour": 20025, - "shouse": 28671, - "shout": 7335, - "shout": 5214, - "shouted": 44397, - "shouting": 26464, - "shoutout": 8274, - "shouts": 26709, - "shovel": 31778, - "show": 2133, - "show": 1080, - "showbiz": 34156, - "showcas": 14290, - "showcase": 7265, - "showcased": 35786, - "showcases": 26266, - "showcasing": 17036, - "showdown": 15576, - "showed": 7150, - "shower": 7777, - "showers": 9893, - "showing": 3649, - "shown": 8506, - "showroom": 16821, - "shows": 2665, - "showtime": 40576, - "showtime": 15442, - "showyour": 46733, - "shp": 38341, - "shq": 21145, - "shr": 10118, - "shra": 21360, - "shradd": 28172, - "shraddha": 35208, - "shraddhakapoor": 40385, - "shre": 12101, - "shred": 19756, - "shred": 33017, - "shredded": 31772, - "shredding": 45534, - "shree": 37410, - "shrek": 35009, - "shrews": 26411, - "shrewsbury": 30921, - "shri": 8838, - "shri": 11424, - "shrimp": 12727, - "shrin": 24865, - "shrine": 16156, - "shrink": 34957, - "shrinking": 41243, - "shrm": 44163, - "shro": 15259, - "shroff": 32081, - "shrop": 22630, - "shropshire": 26344, - "shru": 14911, - "shrub": 41464, - "shrubs": 47975, - "shrun": 46767, - "shs": 16184, - "sht": 44210, - "shti": 38927, - "shu": 2872, - "shu": 17651, - "shua": 33771, - "shub": 40552, - "shud": 45782, - "shuff": 42641, - "shuffle": 21681, - "shui": 45473, - "shuk": 29927, - "shukla": 46829, - "shul": 30721, - "shum": 37383, - "shun": 24479, - "shun": 39594, - "shur": 41032, - "shut": 8702, - "shut": 8282, - "shutdown": 16051, - "shutout": 24385, - "shuts": 28313, - "shutt": 31866, - "shutter": 36235, - "shutter": 33902, - "shutters": 46894, - "shutting": 31383, - "shuttle": 15842, - "shwar": 41640, - "shy": 22678, - "shy": 9682, - "si": 564, - "si": 2990, - "sia": 2357, - "siam": 29686, - "siam": 48248, - "siamese": 43161, - "sian": 28510, - "sian": 6221, - "sians": 26583, - "sias": 28645, - "siber": 22206, - "siberia": 39969, - "siberian": 34058, - "sibl": 14338, - "sible": 14507, - "sibling": 43060, - "sibling": 23779, - "siblings": 17156, - "sic": 8278, - "sic": 1118, - "sica": 34125, - "sical": 33875, - "sichuan": 48950, - "sicilian": 45292, - "sicily": 23179, - "sick": 11143, - "sick": 5359, - "sickest": 47972, - "sickle": 41459, - "sickness": 28898, - "sics": 26297, - "sid": 10117, - "sid": 15119, - "sidd": 19842, - "siddi": 35227, - "side": 5869, - "side": 1145, - "sided": 21061, - "sidekick": 44683, - "sidel": 43557, - "sideline": 32056, - "sidelines": 31046, - "sider": 30581, - "siders": 41249, - "sides": 7578, - "sideshow": 46789, - "sidewalk": 23278, - "sidewalks": 43583, - "sideways": 35593, - "siding": 38758, - "sidney": 22598, - "sie": 8533, - "sie": 5685, - "sieg": 49203, - "siege": 18460, - "siegel": 48559, - "siem": 18434, - "siemens": 30147, - "siempre": 44030, - "siena": 33336, - "sienna": 40373, - "sier": 10028, - "sier": 7444, - "sierra": 13552, - "siers": 35923, - "sies": 16367, - "siest": 18323, - "sif": 29300, - "sig": 872, - "sig": 19145, - "sigh": 36303, - "sigh": 15505, - "sighs": 44579, - "sight": 16897, - "sight": 6329, - "sighted": 33034, - "sighting": 17507, - "sightings": 30004, - "sights": 17364, - "sightseeing": 34210, - "sigma": 45075, - "sigma": 15697, - "sign": 5538, - "sign": 2292, - "signage": 21156, - "signal": 10781, - "signaling": 38492, - "signalling": 48426, - "signals": 17150, - "signation": 24347, - "signature": 9189, - "signatures": 21865, - "signed": 3163, - "signee": 39778, - "signi": 34023, - "signific": 6374, - "significance": 23769, - "significant": 8735, - "significantly": 16187, - "signing": 4401, - "signingday": 40282, - "signings": 27731, - "signs": 4659, - "signup": 40791, - "sigue": 49401, - "sii": 36672, - "sik": 19974, - "sik": 22413, - "sika": 31144, - "sikh": 21829, - "sikhs": 45426, - "sil": 1556, - "sil": 8315, - "sila": 41754, - "sile": 37620, - "silen": 39048, - "silence": 8462, - "silenced": 45415, - "silent": 30352, - "silent": 8487, - "silently": 42640, - "silhou": 20589, - "silhouette": 26149, - "silic": 23830, - "silicon": 32412, - "silicon": 17888, - "silicone": 28221, - "silk": 25891, - "silk": 9743, - "silky": 29554, - "sill": 42468, - "sill": 48024, - "silly": 11883, - "silon": 31841, - "sils": 39708, - "silva": 16489, - "silve": 37697, - "silver": 7525, - "silver": 3467, - "silverado": 46160, - "silverstone": 29666, - "silvia": 37289, - "sim": 5026, - "sim": 10740, - "sima": 35871, - "simba": 39492, - "simcoe": 47148, - "sime": 28329, - "simi": 38073, - "simil": 7202, - "similar": 8547, - "similarities": 34716, - "simm": 13001, - "simmons": 14699, - "simo": 37171, - "simon": 8796, - "simon": 6668, - "simona": 46277, - "simone": 19062, - "simons": 33097, - "simp": 2542, - "simple": 19018, - "simple": 4129, - "simpler": 35489, - "simplest": 39588, - "simpli": 16868, - "simplicity": 21262, - "simplified": 36647, - "simplify": 35479, - "simply": 25637, - "simply": 6151, - "simpson": 41805, - "simpson": 11750, - "simpsons": 21092, - "sims": 14021, - "simul": 9845, - "simulated": 46395, - "simulation": 18610, - "simulator": 20821, - "simultaneous": 48816, - "simultaneously": 28575, - "sin": 1303, - "sin": 3421, - "sina": 19541, - "sinai": 33226, - "sinatra": 27262, - "sinc": 30464, - "since": 1855, - "sincere": 24513, - "sincere": 24886, - "sincerely": 25673, - "sinclair": 23100, - "sind": 39598, - "sind": 30877, - "sindh": 20754, - "sindia": 48038, - "sine": 22741, - "sine": 33793, - "sinfo": 47178, - "sing": 1387, - "sing": 1197, - "singapo": 27861, - "singapore": 28879, - "singapore": 6754, - "singer": 33880, - "singer": 5108, - "singers": 15613, - "singersongwriter": 44585, - "singh": 19445, - "singh": 5715, - "singing": 5864, - "single": 19524, - "single": 2688, - "singles": 12025, - "singleton": 46247, - "singly": 16619, - "sings": 13635, - "singul": 34003, - "singular": 44009, - "singularity": 48410, - "sinha": 29416, - "sini": 41781, - "sini": 26319, - "sinister": 31313, - "sink": 37232, - "sink": 14551, - "sinking": 27949, - "sinks": 32710, - "sinn": 36315, - "sinner": 45380, - "sinners": 43436, - "sino": 29759, - "sins": 9345, - "sinthe": 30737, - "sinu": 37351, - "sinus": 47535, - "sio": 10807, - "siob": 40954, - "siology": 46315, - "sion": 5676, - "sion": 1015, - "sional": 14533, - "sionally": 30754, - "sions": 4060, - "sioux": 44695, - "sioux": 24954, - "sip": 16096, - "sipping": 28527, - "sir": 10708, - "sir": 3846, - "sire": 28450, - "siren": 33026, - "sirens": 35907, - "siri": 13986, - "siri": 18394, - "sirius": 23574, - "sirius": 34999, - "siriusxm": 29833, - "sirloin": 46828, - "sis": 18132, - "sis": 2580, - "sisd": 27132, - "sisi": 37892, - "siss": 42929, - "sissy": 27564, - "sist": 20520, - "sista": 37448, - "sister": 17417, - "sister": 3677, - "sisterhood": 37313, - "sisters": 6404, - "sit": 7387, - "sit": 4037, - "sitcom": 30426, - "site": 26792, - "site": 1988, - "sites": 7236, - "sith": 41499, - "sito": 42613, - "sits": 12726, - "sitt": 42988, - "sitter": 40777, - "sittin": 40887, - "sitting": 4919, - "situ": 5562, - "situ": 42536, - "situated": 22030, - "situation": 7144, - "situations": 19096, - "sity": 38177, - "sity": 5477, - "siu": 40174, - "sium": 8090, - "sius": 27595, - "siva": 20991, - "sivan": 36931, - "sive": 23572, - "sive": 1875, - "sively": 10343, - "siveness": 39667, - "sives": 23896, - "sivity": 42738, - "siwon": 29055, - "six": 5968, - "six": 4093, - "sixers": 25941, - "sixteen": 28677, - "sixth": 12909, - "sixties": 44948, - "sixty": 32588, - "siya": 44440, - "size": 38377, - "size": 3235, - "sized": 9832, - "sizes": 10253, - "sizing": 28330, - "sizz": 23778, - "sizzle": 47890, - "sizzling": 35799, - "sj": 7536, - "sj": 16010, - "sjo": 42012, - "sk": 909, - "sk": 2058, - "ska": 7495, - "skag": 31948, - "skan": 46772, - "skar": 27587, - "skar": 26835, - "skate": 13740, - "skate": 12745, - "skateboard": 31777, - "skateboarding": 31352, - "skater": 30337, - "skaters": 39824, - "skates": 31479, - "skc": 44551, - "ske": 6261, - "ske": 25516, - "skel": 36564, - "skelet": 27075, - "skeletal": 37369, - "skeleton": 20062, - "skeletons": 48874, - "skell": 40801, - "skep": 27772, - "skeptical": 44934, - "sker": 37640, - "sker": 33600, - "sket": 3744, - "sketch": 11767, - "sketch": 5269, - "sketchbook": 18899, - "sketched": 38581, - "sketches": 17622, - "sketching": 23228, - "sketchy": 41582, - "skey": 37453, - "ski": 3327, - "ski": 3428, - "skid": 36574, - "skid": 32099, - "skier": 42585, - "skies": 7244, - "skiing": 14400, - "skil": 24543, - "skill": 15598, - "skill": 10604, - "skilled": 17535, - "skillet": 40568, - "skills": 4113, - "skim": 33191, - "skin": 5821, - "skin": 3575, - "skincare": 12648, - "skine": 37300, - "sking": 46215, - "skinned": 42199, - "skinner": 30261, - "skinny": 42729, - "skinny": 15457, - "skins": 11594, - "skip": 39793, - "skip": 14296, - "skipped": 40639, - "skipper": 22226, - "skipping": 34867, - "skir": 8919, - "skirt": 12386, - "skirts": 24840, - "skis": 32843, - "skit": 43573, - "skitchen": 42820, - "skittles": 43213, - "sko": 15141, - "sko": 23493, - "skoda": 38668, - "skool": 26743, - "skril": 43149, - "skrillex": 43651, - "sks": 48136, - "sku": 10836, - "skul": 17561, - "skull": 34068, - "skull": 12092, - "skulls": 31804, - "skunk": 42194, - "sky": 3075, - "sky": 2390, - "skybet": 45540, - "skye": 21475, - "skyl": 43554, - "skylar": 45411, - "skyline": 14606, - "skymap": 41734, - "skynews": 40977, - "skype": 17069, - "skyrim": 33693, - "skysports": 39845, - "skysports": 46725, - "skywalker": 32936, - "sl": 2621, - "sl": 7489, - "sla": 2725, - "sla": 26707, - "slab": 24241, - "slabs": 42818, - "slack": 37108, - "slack": 30142, - "slade": 33546, - "slain": 35972, - "slalom": 43540, - "slam": 14891, - "slam": 10131, - "slammed": 29772, - "slams": 18907, - "slan": 44663, - "slan": 47193, - "sland": 11294, - "slang": 33655, - "slap": 48830, - "slap": 21751, - "slapped": 38861, - "slaps": 46796, - "slash": 19749, - "slat": 38966, - "slate": 17919, - "slated": 36094, - "slater": 25968, - "slaugh": 26782, - "slaughter": 19815, - "slaughtered": 46615, - "slav": 47292, - "slava": 41797, - "slave": 14029, - "slavery": 15754, - "slaves": 23833, - "slaw": 28178, - "slay": 48319, - "slay": 19380, - "slayed": 44870, - "slayer": 21605, - "slaying": 27812, - "slays": 45648, - "slc": 21972, - "sle": 1709, - "sleague": 23336, - "sled": 28438, - "sledge": 48750, - "slee": 17642, - "slee": 38977, - "sleek": 23187, - "sleep": 4656, - "sleep": 3840, - "sleeper": 28709, - "sleeping": 6982, - "sleepless": 39779, - "sleepover": 39415, - "sleeps": 16610, - "sleepy": 32572, - "sleepy": 14497, - "sleet": 36948, - "sleeve": 35270, - "sleeve": 10536, - "sleeveless": 38049, - "sleeves": 19691, - "sleg": 47650, - "sleigh": 30865, - "slender": 40331, - "slept": 20388, - "sler": 14066, - "sley": 17198, - "sley": 6496, - "sli": 1811, - "sli": 44824, - "slic": 19692, - "slice": 13431, - "sliced": 28121, - "slices": 28424, - "slick": 18341, - "slide": 27828, - "slide": 8837, - "slider": 37861, - "sliders": 40700, - "slides": 15939, - "slideshow": 42817, - "sliding": 21468, - "slife": 15448, - "sliga": 21080, - "slight": 14297, - "slightly": 8456, - "sligo": 30424, - "slike": 38744, - "slim": 35226, - "slim": 12364, - "slime": 29107, - "sling": 28021, - "sling": 32607, - "slinger": 47269, - "slions": 43363, - "slip": 39785, - "slip": 12105, - "slipknot": 41816, - "slipped": 30344, - "slipper": 39644, - "slippers": 26509, - "slippery": 30814, - "slipping": 36301, - "slips": 30632, - "slist": 33749, - "slit": 47011, - "slive": 31652, - "slo": 4303, - "slo": 36083, - "sloan": 29110, - "sloane": 41553, - "slogan": 23398, - "slogans": 42795, - "slope": 22769, - "slopes": 24066, - "sloppy": 36154, - "slot": 14500, - "sloth": 30007, - "slots": 19238, - "slou": 48493, - "slovak": 23315, - "slovakia": 25994, - "sloven": 17018, - "slovenia": 21037, - "slow": 6674, - "slow": 5444, - "slowdown": 38421, - "slowed": 43793, - "slower": 29181, - "slowing": 29839, - "slowly": 9568, - "slows": 46855, - "slp": 45599, - "slr": 21325, - "sls": 33651, - "slt": 39283, - "sltd": 36388, - "slu": 7224, - "slu": 47456, - "slug": 34190, - "slugger": 48671, - "slum": 46754, - "slumber": 44295, - "slump": 35588, - "slur": 30476, - "slush": 39815, - "slv": 45526, - "sly": 28145, - "sly": 21062, - "sm": 978, - "sm": 2764, - "sma": 4357, - "sma": 11854, - "smack": 21280, - "smack": 30026, - "smackdown": 26138, - "smafia": 47686, - "smag": 32212, - "smal": 48379, - "small": 5244, - "small": 2442, - "smallbiz": 41724, - "smallbiz": 18987, - "smallbusiness": 21316, - "smalle": 18490, - "smaller": 12431, - "smallest": 18686, - "smalls": 41696, - "sman": 9612, - "smar": 3201, - "smart": 5383, - "smart": 4115, - "smartcities": 34822, - "smartcity": 33973, - "smarter": 18990, - "smartest": 37092, - "smarthome": 47726, - "smartphone": 11290, - "smartphones": 22212, - "smartwatch": 35798, - "smash": 17258, - "smash": 10332, - "smashbros": 44897, - "smashed": 18410, - "smashes": 45657, - "smashing": 19632, - "smatter": 16537, - "smb": 30446, - "smc": 31375, - "smc": 28312, - "smd": 34582, - "sme": 11758, - "sme": 15650, - "smear": 37546, - "smel": 28476, - "smell": 9688, - "smelling": 32493, - "smells": 14668, - "smelly": 46145, - "smen": 15961, - "smer": 48526, - "smere": 39629, - "smes": 26141, - "smg": 46876, - "smh": 9623, - "smi": 5655, - "smi": 40049, - "smil": 33937, - "smile": 27641, - "smile": 3490, - "smiled": 34362, - "smiles": 8726, - "smiley": 22925, - "smiling": 9200, - "smir": 24667, - "smith": 10527, - "smith": 2915, - "smiths": 27872, - "smithson": 25372, - "smithsonian": 31209, - "smm": 19510, - "smma": 42370, - "smo": 2513, - "smo": 13437, - "smobile": 38923, - "smog": 44425, - "smoke": 20381, - "smoke": 6664, - "smoked": 11161, - "smoker": 32348, - "smokers": 29571, - "smokes": 40336, - "smokey": 23670, - "smokin": 32825, - "smoking": 9038, - "smoky": 25549, - "smol": 29939, - "smol": 40403, - "smoo": 5430, - "smooth": 10958, - "smooth": 8990, - "smoother": 44271, - "smoothie": 16668, - "smoothies": 34458, - "smoothly": 32380, - "smore": 48323, - "smp": 32260, - "smriti": 49227, - "sms": 10409, - "smt": 26672, - "smtown": 26072, - "smu": 10878, - "smu": 30458, - "smug": 41021, - "smugg": 28130, - "smuggling": 34146, - "smur": 24708, - "smusic": 19191, - "smw": 44929, - "smx": 46699, - "smy": 14381, - "smyth": 44822, - "sn": 1672, - "sn": 5844, - "sna": 4032, - "snack": 47548, - "snack": 10039, - "snacking": 46474, - "snacks": 12349, - "snag": 34789, - "snag": 28043, - "snagged": 48534, - "snail": 23132, - "snails": 34928, - "snake": 30133, - "snake": 8798, - "snakes": 19605, - "snap": 4578, - "snap": 7404, - "snapback": 31234, - "snapchat": 7799, - "snapmatic": 45907, - "snapp": 10185, - "snapped": 15543, - "snapper": 31677, - "snapping": 31581, - "snaps": 16890, - "snapshot": 18243, - "snar": 30810, - "snare": 40651, - "snat": 18457, - "snatch": 35302, - "snatched": 44821, - "snation": 14362, - "snazzy": 48963, - "snc": 39918, - "sne": 3791, - "sne": 46503, - "sneak": 27871, - "sneak": 6917, - "sneaker": 31698, - "sneaker": 24781, - "sneakers": 17397, - "sneaking": 34633, - "sneakpeek": 47831, - "sneaks": 40926, - "sneaky": 21293, - "snee": 42095, - "snell": 46410, - "sner": 31424, - "snes": 26667, - "snews": 18623, - "snf": 47651, - "sng": 41549, - "snhl": 43093, - "sni": 7186, - "sni": 35570, - "snickers": 49127, - "sniff": 37841, - "snip": 42954, - "sniper": 22157, - "snippet": 37531, - "snippets": 44001, - "snl": 16011, - "sno": 8567, - "sno": 17802, - "snoo": 11352, - "snooker": 25657, - "snoop": 44503, - "snoop": 27754, - "snoopdogg": 48388, - "snoopy": 41967, - "snooze": 40718, - "snor": 16590, - "snoring": 44560, - "snorkel": 44285, - "snorkeling": 48103, - "snow": 3880, - "snow": 2583, - "snowball": 39254, - "snowboard": 33403, - "snowboarding": 32397, - "snowday": 37982, - "snowden": 32154, - "snowdon": 47107, - "snowdonia": 36088, - "snowed": 45073, - "snowfall": 21714, - "snowflake": 33447, - "snowflakes": 38618, - "snowing": 21443, - "snowman": 22668, - "snowstorm": 38777, - "snowy": 14191, - "snp": 15301, - "sns": 36343, - "snsd": 27961, - "snt": 34834, - "snu": 9694, - "snuck": 36522, - "snug": 45169, - "snuggle": 31327, - "snuggles": 48165, - "sny": 17526, - "snyder": 22106, - "snz": 37678, - "so": 759, - "so": 706, - "soa": 39584, - "soak": 24839, - "soaked": 26592, - "soaking": 26750, - "soap": 26086, - "soap": 11088, - "soaps": 40958, - "soar": 48997, - "soar": 22241, - "soaring": 27968, - "soars": 41348, - "sob": 24900, - "sob": 35507, - "sobbing": 36691, - "sober": 30969, - "sober": 24487, - "sobre": 42768, - "sobri": 49308, - "sobs": 43636, - "soc": 3253, - "soc": 7741, - "soca": 49239, - "socal": 46470, - "socal": 20450, - "soccer": 16268, - "soccer": 4233, - "socceroos": 41997, - "socent": 30831, - "sochi": 21014, - "soci": 1720, - "social": 4803, - "social": 2346, - "socialism": 23372, - "socialist": 18450, - "socialists": 43839, - "socially": 24555, - "socialmedi": 23813, - "socialmedia": 9600, - "socialmediamarketing": 31790, - "societal": 40058, - "societies": 25855, - "society": 3757, - "socio": 44319, - "socio": 42790, - "sociology": 32373, - "sock": 29801, - "sock": 18277, - "socket": 28657, - "socks": 8774, - "socorro": 46409, - "socute": 45086, - "sod": 31435, - "soda": 13533, - "sodium": 29070, - "soe": 44136, - "soe": 25498, - "soever": 34024, - "sof": 1571, - "sof": 41187, - "sofa": 15723, - "soff": 35290, - "soff": 30684, - "sofficial": 20563, - "sofi": 41537, - "sofia": 18914, - "sofinstagram": 17301, - "soft": 12778, - "soft": 3773, - "softball": 8369, - "softer": 44462, - "softhe": 23127, - "softly": 34958, - "software": 35941, - "software": 5847, - "softwitter": 11311, - "sog": 44775, - "soggy": 41168, - "sohn": 49267, - "soho": 47749, - "soho": 17592, - "soi": 40495, - "soil": 33417, - "soil": 9216, - "soils": 34891, - "soir": 43427, - "sok": 43456, - "sol": 1175, - "sol": 9941, - "sola": 40086, - "solace": 42567, - "solar": 16990, - "solar": 5199, - "solareclipse": 44727, - "sold": 33116, - "sold": 3939, - "soldi": 5098, - "soldier": 9355, - "soldiers": 7547, - "sole": 10519, - "sole": 8576, - "soleil": 33148, - "solely": 27913, - "solent": 47783, - "soles": 22682, - "soli": 3911, - "solic": 19369, - "solicitor": 45647, - "solicitors": 46000, - "solid": 30626, - "solid": 6148, - "solidar": 10415, - "solidarity": 10983, - "solidi": 46136, - "solids": 49070, - "solihull": 45293, - "solit": 37039, - "solitaire": 47257, - "solitary": 33094, - "solitude": 33199, - "solo": 17626, - "solo": 5797, - "soloist": 46391, - "solom": 15768, - "solomon": 19785, - "solos": 44868, - "solst": 20298, - "solstice": 21359, - "solu": 2487, - "solution": 4575, - "solutions": 5140, - "solve": 8917, - "solved": 13451, - "solves": 42740, - "solving": 15581, - "som": 734, - "som": 10672, - "soma": 36170, - "somal": 40281, - "somali": 26231, - "somalia": 17051, - "somaliland": 43315, - "some": 1132, - "some": 836, - "somebody": 8305, - "someday": 17127, - "somehow": 11735, - "someone": 2100, - "somer": 9656, - "somerhalder": 33990, - "somerset": 14926, - "somerville": 41409, - "somes": 38124, - "somethin": 33541, - "something": 28316, - "something": 2006, - "sometime": 21464, - "sometimes": 4237, - "somewhat": 17864, - "somewhere": 8119, - "somm": 42726, - "somme": 30625, - "sommer": 44954, - "somos": 24951, - "son": 1176, - "son": 825, - "sona": 21249, - "sonam": 40096, - "sonar": 48235, - "sonata": 37009, - "sone": 29599, - "song": 6868, - "song": 2295, - "songs": 4641, - "songwriter": 13034, - "songwriters": 39583, - "songwriting": 33567, - "songz": 49302, - "soni": 34899, - "soni": 35911, - "sonia": 20409, - "sonic": 23785, - "sonic": 9132, - "sonics": 48511, - "sonja": 46102, - "sonline": 23412, - "sonny": 43000, - "sonny": 20880, - "sono": 44109, - "sonom": 48596, - "sonoma": 26269, - "sons": 5502, - "sonsof": 46676, - "sont": 31063, - "sonthe": 40923, - "sony": 16042, - "sony": 8748, - "sonya": 39172, - "soo": 5517, - "soo": 8602, - "soom": 39771, - "soon": 27559, - "soon": 1745, - "sooner": 18968, - "sooners": 30449, - "sooo": 11526, - "soooo": 13658, - "sooooo": 21199, - "soooooo": 34859, - "soor": 46698, - "soothe": 44424, - "soothing": 27730, - "sop": 3974, - "sop": 19194, - "soph": 34963, - "sophi": 6192, - "sophia": 16790, - "sophie": 38648, - "sophie": 12357, - "sophistic": 17646, - "sophisticated": 20833, - "sophom": 13696, - "sophomore": 15242, - "sophomores": 47645, - "soprano": 28880, - "soproud": 44479, - "sor": 1852, - "sor": 16872, - "sora": 38719, - "sorbet": 39994, - "sore": 43330, - "sore": 15454, - "sored": 6731, - "soren": 38907, - "sorg": 28152, - "sori": 38588, - "sorority": 30059, - "soros": 33248, - "sorren": 44012, - "sorrow": 28020, - "sorrows": 47924, - "sorry": 25745, - "sorry": 3675, - "sorrynotsorry": 37105, - "sort": 8450, - "sorta": 34700, - "sorted": 13221, - "sorting": 19198, - "sorts": 12577, - "sory": 16257, - "sos": 25145, - "sos": 5792, - "sosa": 45433, - "sosfam": 47709, - "sot": 41542, - "sot": 34116, - "sothe": 32145, - "sotho": 45496, - "soto": 27947, - "sotto": 26047, - "sotu": 32286, - "sou": 1101, - "sou": 24293, - "sought": 18874, - "soul": 8701, - "soul": 3755, - "soulful": 30196, - "soulmate": 38130, - "souls": 10951, - "soun": 19474, - "sound": 5236, - "sound": 3608, - "soundcheck": 31394, - "soundcloud": 15190, - "sounded": 28287, - "sounders": 44933, - "sounding": 21351, - "sounds": 5694, - "soundtrack": 11389, - "soup": 7077, - "soups": 45052, - "sour": 2235, - "sour": 12049, - "source": 23698, - "source": 3634, - "sourced": 23340, - "sources": 5124, - "sourcing": 19574, - "sourdough": 29921, - "souri": 11674, - "sous": 32093, - "sousa": 46296, - "sout": 38156, - "sout": 32732, - "south": 2938, - "south": 2045, - "southafrica": 15184, - "southampton": 15767, - "southbank": 44173, - "southbound": 22932, - "southeast": 13942, - "southeastern": 26813, - "southend": 25583, - "souther": 33330, - "southern": 17704, - "southern": 5036, - "southgate": 47262, - "southkorea": 43552, - "southport": 37446, - "southside": 36436, - "southsudan": 30419, - "southwark": 39098, - "southwe": 46443, - "southwest": 13320, - "southwestern": 30157, - "souven": 20210, - "souvenir": 24811, - "souvenirs": 48460, - "souza": 29424, - "sov": 29737, - "sover": 31876, - "sovere": 17736, - "sovereign": 29418, - "sovereign": 26337, - "sovereignty": 31701, - "soviet": 14274, - "sow": 33089, - "sowe": 36130, - "soweto": 47070, - "sown": 49369, - "sox": 39556, - "sox": 8657, - "soy": 16524, - "soy": 15010, - "soybean": 34606, - "soybeans": 40840, - "soyu": 39578, - "soyuz": 43842, - "sp": 588, - "sp": 4393, - "spa": 7852, - "spa": 6692, - "spac": 10336, - "space": 7857, - "space": 2138, - "spacecraft": 25940, - "spaces": 9006, - "spaceship": 34317, - "spacex": 22511, - "spacey": 48770, - "spacious": 24769, - "spad": 45362, - "spade": 32562, - "spades": 48368, - "spaghetti": 18440, - "spain": 5083, - "spal": 26018, - "spam": 29712, - "spam": 14624, - "span": 4270, - "span": 14537, - "spandex": 41686, - "spani": 16721, - "spaniel": 35435, - "spanish": 29966, - "spanish": 6013, - "spann": 25323, - "spanning": 38638, - "spans": 45407, - "spaper": 34548, - "spar": 3378, - "spar": 34576, - "spare": 12615, - "spares": 39505, - "spark": 9555, - "spark": 11047, - "sparked": 32647, - "sparkle": 18287, - "sparkles": 36410, - "sparkling": 17893, - "sparkly": 30542, - "sparks": 15046, - "sparky": 47198, - "sparring": 42161, - "sparrow": 22888, - "spart": 10143, - "sparta": 38401, - "spartan": 26582, - "spartan": 24225, - "spartans": 20457, - "sparty": 36477, - "spas": 31714, - "spati": 19200, - "spatial": 22022, - "spaw": 31605, - "spawn": 29166, - "spay": 40634, - "spc": 20492, - "spca": 37018, - "spd": 37717, - "spd": 28307, - "spdwy": 45981, - "spe": 876, - "spe": 36676, - "speak": 20599, - "speak": 4208, - "speake": 46077, - "speaker": 25764, - "speaker": 4914, - "speakers": 7675, - "speaking": 3714, - "speaks": 5661, - "spear": 23277, - "spear": 30420, - "speare": 43859, - "spears": 20242, - "spec": 1711, - "spec": 18596, - "speci": 1969, - "special": 11422, - "special": 1689, - "specialist": 10630, - "specialists": 21719, - "speciality": 46904, - "specialized": 23265, - "specializes": 48533, - "specially": 4513, - "specials": 11983, - "specialty": 18262, - "species": 6330, - "specific": 10528, - "specifically": 17174, - "specification": 46394, - "specifications": 39705, - "specified": 48114, - "specimen": 30263, - "specimens": 42715, - "specs": 24093, - "spect": 3416, - "spectac": 7242, - "spectacle": 34342, - "spectacular": 8404, - "spectator": 32372, - "spectators": 39306, - "spective": 6633, - "spector": 48676, - "spectral": 45441, - "spectre": 35998, - "spectro": 27646, - "spectrum": 13532, - "specul": 19209, - "speculation": 30898, - "sped": 38813, - "spee": 4050, - "speech": 19556, - "speech": 4902, - "speeches": 25208, - "speechless": 23152, - "speed": 6860, - "speed": 4163, - "speeding": 27264, - "speeds": 22017, - "speedway": 11480, - "speedy": 21603, - "spel": 41887, - "spell": 22784, - "spell": 11230, - "spelled": 24339, - "spelling": 15614, - "spells": 25335, - "spelt": 38316, - "spen": 5087, - "spence": 33324, - "spencer": 27509, - "spencer": 10678, - "spend": 4664, - "spending": 5961, - "spends": 22508, - "spent": 4429, - "speople": 33035, - "sper": 8213, - "sper": 15313, - "sperm": 35781, - "sperson": 22687, - "spf": 34973, - "spg": 34623, - "sph": 28909, - "sph": 24684, - "sphe": 33691, - "spher": 18349, - "sphere": 6987, - "spheres": 37478, - "spheric": 21744, - "sphin": 39237, - "sphinx": 46487, - "spho": 20442, - "sphoto": 38594, - "sphy": 43808, - "spi": 3174, - "spi": 37080, - "spic": 17264, - "spice": 29761, - "spice": 10141, - "spiced": 24267, - "spicer": 37627, - "spices": 21194, - "spicy": 10915, - "spide": 36801, - "spider": 11963, - "spider": 7622, - "spiderman": 39808, - "spiderman": 18427, - "spiders": 23141, - "spidey": 41706, - "spie": 28573, - "spie": 28746, - "spied": 43998, - "spiegel": 45351, - "spiel": 28435, - "spiel": 37690, - "spielberg": 37569, - "spies": 25374, - "spieth": 43254, - "spike": 35306, - "spike": 15310, - "spiked": 47014, - "spikes": 29582, - "spil": 47765, - "spill": 43933, - "spill": 18006, - "spilled": 33206, - "spilling": 49006, - "spills": 35796, - "spin": 6288, - "spin": 9226, - "spinach": 14747, - "spinal": 23925, - "spine": 48221, - "spine": 19646, - "sping": 47113, - "spinner": 29924, - "spinning": 13987, - "spino": 40848, - "spinoff": 42513, - "spinrilla": 46064, - "spins": 27243, - "spion": 39604, - "spionage": 41838, - "spir": 3745, - "spiral": 19873, - "spiration": 38126, - "spire": 27439, - "spired": 40650, - "spires": 46938, - "spiri": 4024, - "spirit": 18224, - "spirit": 4071, - "spirited": 34701, - "spirits": 13192, - "spiritu": 7237, - "spiritual": 46076, - "spiritual": 9473, - "spirituality": 22165, - "spiro": 40085, - "spit": 18115, - "spit": 23177, - "spite": 26060, - "spitfire": 31126, - "spitting": 40721, - "spl": 2470, - "spl": 33052, - "spla": 4809, - "splac": 16059, - "splace": 38743, - "splash": 43641, - "splash": 11879, - "splat": 15733, - "splatoon": 22565, - "splay": 3169, - "splen": 18552, - "splend": 29861, - "splendid": 21016, - "splendor": 46262, - "splin": 38090, - "split": 25443, - "split": 9109, - "splits": 34897, - "splitting": 37210, - "splus": 40866, - "spn": 35467, - "spn": 19414, - "spnfamily": 38566, - "spo": 1261, - "spo": 21085, - "spock": 43918, - "spoil": 25600, - "spoiled": 21399, - "spoiler": 16512, - "spoilers": 18326, - "spoils": 42436, - "spoilt": 35358, - "spokane": 24528, - "spoke": 13890, - "spoke": 6518, - "spoken": 12979, - "spokesman": 31632, - "spokesperson": 26234, - "spol": 22476, - "spol": 8132, - "spoli": 34301, - "spolice": 37406, - "spon": 1715, - "spon": 48216, - "sponge": 22861, - "sponge": 24345, - "spongebob": 25089, - "spons": 5597, - "sponsor": 10424, - "sponsor": 7574, - "sponsored": 7197, - "sponsoring": 16181, - "sponsors": 11005, - "sponsorship": 17632, - "spontaneous": 32465, - "spoo": 11248, - "spooky": 15369, - "spool": 49152, - "spoon": 27001, - "spoon": 14024, - "spoons": 29661, - "spor": 1475, - "spor": 33746, - "sport": 4379, - "sport": 2364, - "sporting": 32620, - "sporting": 8944, - "sports": 6436, - "sports": 2054, - "sportsc": 40114, - "sportscar": 46931, - "sportscenter": 39157, - "sportsman": 39020, - "sportsmanship": 34858, - "sportsnet": 34144, - "sportswear": 39747, - "sporty": 33346, - "spot": 3223, - "spot": 3049, - "spotify": 7193, - "spotlight": 7901, - "spots": 7670, - "spotted": 4533, - "spotter": 30742, - "spotting": 15885, - "spouse": 24724, - "spout": 48993, - "spp": 47567, - "spr": 1536, - "spr": 19417, - "spra": 12966, - "spraw": 46590, - "spray": 37885, - "spray": 10449, - "sprayed": 40022, - "spraying": 39224, - "spre": 18740, - "spread": 20620, - "spread": 5284, - "spreading": 11821, - "spreads": 27579, - "spree": 21851, - "spri": 35498, - "spride": 26685, - "spring": 5166, - "spring": 2420, - "springbreak": 37753, - "springer": 30117, - "springfield": 16599, - "springs": 7308, - "springst": 32132, - "springsteen": 28367, - "springtime": 28285, - "springtraining": 49364, - "springwatch": 29239, - "sprink": 15817, - "sprinkle": 42897, - "sprinkler": 48754, - "sprinkles": 37326, - "sprint": 29248, - "sprint": 10751, - "sprinter": 36947, - "sprints": 36404, - "sprite": 32544, - "spro": 13902, - "spro": 37403, - "sproject": 37802, - "sproud": 37686, - "sprout": 35863, - "sprouts": 25756, - "spru": 17041, - "spruce": 23812, - "sprung": 32968, - "sps": 13869, - "spu": 23566, - "spun": 47922, - "spun": 32852, - "spur": 15206, - "spur": 20361, - "spurs": 10916, - "spursofficial": 45290, - "sput": 47521, - "spx": 20584, - "spy": 13861, - "spy": 6656, - "spyder": 39952, - "spying": 36227, - "sq": 9370, - "sq": 11590, - "sqft": 41912, - "sql": 42759, - "sql": 18938, - "sqm": 47978, - "sqn": 41209, - "squ": 1653, - "squad": 13892, - "squad": 4234, - "squadron": 18579, - "squads": 36590, - "square": 19314, - "square": 3999, - "squared": 32967, - "squares": 26972, - "squash": 13312, - "squat": 44628, - "squat": 30680, - "squats": 40213, - "sque": 9721, - "sque": 8097, - "squee": 14420, - "squeeze": 21684, - "squeezed": 40413, - "squid": 42057, - "squid": 22553, - "squir": 9683, - "squire": 48090, - "squirrel": 14004, - "squirrels": 26623, - "squish": 42607, - "squishy": 47001, - "sr": 3437, - "sr": 5428, - "srbachchan": 32353, - "src": 23445, - "sre": 17748, - "sri": 11051, - "sri": 9276, - "sridevi": 46301, - "srilan": 15559, - "srilanka": 16922, - "srin": 26818, - "srinagar": 33671, - "srini": 41899, - "sriracha": 42743, - "sris": 27851, - "srisri": 32966, - "srk": 44982, - "srk": 11216, - "srl": 33808, - "srp": 43004, - "srs": 41764, - "srsly": 44179, - "srt": 28139, - "sru": 44152, - "srugby": 40526, - "ss": 690, - "ss": 632, - "ssa": 6088, - "ssal": 31330, - "ssal": 35936, - "ssb": 37511, - "ssc": 21692, - "ssc": 20364, - "ssd": 23107, - "sse": 9030, - "sse": 8938, - "ssed": 38755, - "ssed": 1804, - "ssel": 17402, - "ssel": 19373, - "sseldorf": 47792, - "ssell": 42388, - "ssels": 8355, - "ssen": 39408, - "ssen": 22645, - "sser": 20445, - "sses": 1802, - "ssett": 44103, - "ssf": 33239, - "ssg": 40707, - "ssh": 48866, - "ssi": 834, - "ssi": 14953, - "ssia": 22238, - "ssian": 31218, - "ssible": 47099, - "ssic": 27774, - "ssic": 17077, - "ssie": 7572, - "ssier": 26422, - "ssil": 15026, - "ssin": 42660, - "ssing": 2112, - "ssion": 16050, - "ssion": 1627, - "ssional": 13727, - "ssionism": 24787, - "ssionist": 27682, - "ssions": 4137, - "ssive": 2734, - "ssively": 28060, - "ssl": 32195, - "ssler": 30287, - "ssly": 24904, - "ssn": 39116, - "ssnhq": 47998, - "sso": 25900, - "sso": 7914, - "ssoccer": 32546, - "sson": 36124, - "sson": 7271, - "ssor": 35152, - "ssp": 31101, - "ssr": 39880, - "sss": 11176, - "ssss": 30676, - "ssss": 15880, - "sssss": 24298, - "sst": 40396, - "ssu": 35351, - "ssummit": 49301, - "ssus": 31286, - "ssw": 36937, - "ssy": 22519, - "ssy": 8661, - "st": 522, - "st": 545, - "sta": 1363, - "sta": 2745, - "stab": 7726, - "stab": 29974, - "stabbed": 24534, - "stabbing": 25474, - "stabil": 42576, - "stabili": 23903, - "stability": 16716, - "stable": 44427, - "stable": 10492, - "stables": 34218, - "stac": 10175, - "stacey": 41653, - "stacey": 24262, - "stache": 23616, - "stack": 24723, - "stack": 11257, - "stacked": 24990, - "stacking": 39836, - "stacks": 24734, - "stacy": 26628, - "stad": 15832, - "stad": 16485, - "stade": 38198, - "stadi": 26587, - "stadion": 48815, - "stadium": 3390, - "stadiums": 38852, - "stadt": 22713, - "staf": 2367, - "staff": 31188, - "staff": 2813, - "staffer": 38494, - "staffers": 44994, - "staffing": 32932, - "stafford": 25006, - "staffordshire": 29198, - "staffs": 36098, - "stag": 12088, - "stag": 20277, - "stage": 23182, - "stage": 2170, - "staged": 19906, - "stages": 12297, - "staggering": 37315, - "staging": 27026, - "stagram": 19503, - "stags": 45936, - "stain": 3933, - "stain": 14603, - "stained": 13751, - "staining": 32523, - "stainless": 12320, - "stains": 32008, - "stair": 7240, - "stair": 17662, - "staircase": 22777, - "stairs": 9577, - "stairway": 45559, - "stak": 39144, - "stake": 15955, - "stake": 7937, - "stakeholder": 39122, - "stakeholders": 22968, - "stakes": 7519, - "staking": 47082, - "stal": 3861, - "stal": 5535, - "stale": 42471, - "stalert": 25450, - "stalin": 28346, - "stalk": 40826, - "stalk": 14878, - "stalker": 26777, - "stalking": 24721, - "stalks": 45886, - "stall": 24636, - "stall": 12058, - "stalled": 40362, - "stallion": 28273, - "stallions": 44787, - "stallone": 40969, - "stalls": 25427, - "stam": 4663, - "stamatic": 30904, - "stamford": 27843, - "stamina": 48753, - "stamp": 28694, - "stamp": 12771, - "stampcollecting": 42852, - "stamped": 38356, - "stampede": 25384, - "stamps": 13827, - "stan": 2203, - "stan": 2434, - "stana": 33311, - "stanbul": 11231, - "stance": 48900, - "stance": 3542, - "stances": 15054, - "stand": 1819, - "stand": 2087, - "standalone": 44887, - "standard": 35780, - "standard": 5807, - "standardi": 30247, - "standards": 9022, - "standby": 36184, - "standing": 39934, - "standing": 2862, - "standings": 19835, - "standoff": 31821, - "standout": 23131, - "standre": 48309, - "stands": 6446, - "standup": 35108, - "standup": 24964, - "standwith": 19540, - "stanford": 36219, - "stanford": 15087, - "stang": 12536, - "stani": 38228, - "stanis": 37711, - "stanley": 19048, - "stanley": 10079, - "stanleycup": 28662, - "stans": 26564, - "stant": 41576, - "stant": 4906, - "stanton": 25400, - "stap": 10438, - "staple": 22695, - "staples": 23646, - "stapleton": 45228, - "star": 993, - "star": 1565, - "starbuck": 48519, - "starbucks": 9499, - "starch": 47837, - "starcraft": 48871, - "stardom": 44616, - "stardust": 34337, - "stare": 18094, - "stared": 47772, - "stares": 37916, - "starfish": 44283, - "stargate": 41099, - "stargazing": 49328, - "staring": 13800, - "stark": 40446, - "stark": 15353, - "starlight": 32197, - "starling": 46205, - "starmagic": 48023, - "starplus": 37815, - "starr": 19186, - "starred": 24180, - "starrer": 41311, - "starring": 6660, - "starry": 30963, - "stars": 2895, - "starship": 37166, - "start": 17466, - "start": 1572, - "started": 2760, - "starter": 7800, - "starters": 22222, - "starting": 2530, - "startrek": 30642, - "startrek": 15349, - "starts": 3105, - "startu": 6996, - "startup": 18049, - "startup": 5882, - "startups": 9056, - "starve": 46957, - "starving": 30473, - "starwar": 17287, - "starwars": 26239, - "starwars": 7887, - "starz": 25928, - "stas": 19866, - "stash": 27711, - "stasy": 45942, - "stat": 3004, - "stat": 15216, - "state": 3492, - "state": 1295, - "statec": 33931, - "stated": 19629, - "statedept": 41458, - "statefair": 40305, - "statement": 5401, - "statements": 19513, - "staten": 38263, - "stateof": 35195, - "states": 22125, - "states": 4218, - "statesman": 35301, - "stateu": 44248, - "statewide": 29561, - "stati": 9622, - "static": 16363, - "stating": 35147, - "station": 13498, - "station": 2631, - "stationary": 29493, - "stationed": 47618, - "stationery": 33851, - "stations": 10051, - "statistical": 29349, - "statistics": 14165, - "stats": 7294, - "statu": 32481, - "statue": 8222, - "statues": 24363, - "status": 6414, - "stau": 28550, - "staur": 3709, - "stav": 20285, - "stax": 32235, - "stay": 4714, - "stay": 2277, - "stayed": 13805, - "staying": 8993, - "stays": 13311, - "staytuned": 39285, - "stc": 29859, - "std": 30477, - "ste": 795, - "ste": 2686, - "stea": 46614, - "stead": 16101, - "stead": 11031, - "steadily": 35049, - "steady": 12937, - "steak": 26955, - "steak": 8913, - "steakhouse": 35031, - "steaks": 30655, - "steal": 37070, - "steal": 10181, - "stealing": 14242, - "steals": 20224, - "stealth": 25327, - "steam": 10962, - "steam": 6972, - "steamboat": 41121, - "steamed": 29007, - "steamer": 49075, - "steaming": 43746, - "steampunk": 24130, - "steamy": 43104, - "stec": 46713, - "stech": 48949, - "stech": 32455, - "sted": 20426, - "sted": 1356, - "stee": 31793, - "steed": 48293, - "steel": 6938, - "steel": 4726, - "steele": 19460, - "steelers": 14430, - "steen": 42851, - "steen": 18625, - "steep": 28648, - "steep": 20714, - "steer": 27612, - "steering": 19833, - "stef": 29158, - "stefan": 15004, - "stefan": 18829, - "stefani": 38319, - "stefano": 30719, - "steff": 30075, - "stein": 13653, - "stein": 5818, - "steiner": 36314, - "stel": 9102, - "stel": 10798, - "stell": 22355, - "stella": 46178, - "stella": 17869, - "stellar": 13810, - "stellen": 42754, - "stem": 24342, - "stem": 6761, - "stemc": 40486, - "stems": 31503, - "sten": 7652, - "sten": 7877, - "stencil": 47854, - "stennis": 45636, - "step": 15572, - "step": 3348, - "steph": 3522, - "steph": 16251, - "stephan": 37312, - "stephani": 48121, - "stephanie": 14361, - "stephen": 10421, - "stephen": 6078, - "stephenking": 46361, - "stephens": 22256, - "stephenson": 37280, - "stepped": 18384, - "stepping": 15906, - "steps": 5408, - "ster": 1022, - "ster": 881, - "stere": 9229, - "stered": 6935, - "stereo": 15992, - "stereo": 17400, - "stereotypes": 27890, - "steria": 38804, - "stering": 14175, - "sterling": 45790, - "sterling": 9378, - "stern": 36254, - "stern": 2945, - "steroids": 37670, - "sterone": 39418, - "sters": 2132, - "stery": 24232, - "stest": 8556, - "stev": 11640, - "steve": 7412, - "steve": 3803, - "steven": 10973, - "steven": 8016, - "stevens": 13877, - "stevenson": 25091, - "stevie": 42104, - "stevie": 18969, - "stew": 17906, - "stewar": 28453, - "steward": 34980, - "steward": 43355, - "stewards": 49294, - "stewardship": 36720, - "stewart": 8120, - "stfu": 47000, - "stg": 48387, - "stgeorge": 43698, - "sth": 13456, - "sth": 34004, - "sthe": 16491, - "sthel": 42863, - "sti": 860, - "sti": 12439, - "stia": 26492, - "stible": 25835, - "stic": 5868, - "stic": 1561, - "stical": 16660, - "stically": 19041, - "stick": 5483, - "stick": 4987, - "sticker": 11270, - "stickers": 11613, - "sticking": 21021, - "sticks": 10016, - "sticky": 18887, - "stics": 5449, - "stie": 38164, - "stie": 11000, - "stier": 42069, - "sties": 16428, - "stiff": 43471, - "stiff": 21441, - "stig": 4088, - "stig": 42551, - "stigate": 15390, - "stigma": 20619, - "stik": 42247, - "stil": 21790, - "stil": 37519, - "stiles": 33028, - "still": 13209, - "still": 1170, - "stills": 20259, - "stim": 18269, - "stime": 24711, - "stimul": 16434, - "stimulate": 42380, - "stimulating": 41237, - "stimulation": 39530, - "stimulus": 47283, - "stin": 2588, - "stin": 4025, - "stina": 22359, - "stine": 7098, - "sting": 19868, - "sting": 1271, - "stingly": 49332, - "stingray": 43229, - "stink": 38213, - "stinky": 44957, - "stino": 40658, - "stint": 33531, - "stion": 10812, - "stip": 39869, - "stips": 44756, - "stique": 43305, - "stir": 12416, - "stir": 19564, - "stirling": 23128, - "stirring": 39205, - "stis": 45224, - "stit": 14110, - "stitch": 30003, - "stitch": 14771, - "stitched": 36540, - "stitcher": 48204, - "stitches": 32360, - "stitching": 45208, - "stitu": 14585, - "stitutes": 40479, - "stive": 22426, - "stix": 48829, - "stjohn": 36153, - "stl": 14179, - "stl": 12527, - "stlblues": 44138, - "stlcards": 28644, - "stle": 7698, - "stles": 48638, - "stlouis": 40358, - "stlouis": 39516, - "stm": 28333, - "stn": 27175, - "sto": 928, - "sto": 5723, - "stock": 5899, - "stock": 3206, - "stocked": 23552, - "stockholm": 16024, - "stocki": 42944, - "stocking": 17335, - "stockings": 28040, - "stockmarket": 40359, - "stockport": 35569, - "stocks": 9321, - "stockton": 26130, - "stoday": 22392, - "stok": 43782, - "stoke": 31338, - "stoke": 13550, - "stoked": 13160, - "stokes": 27512, - "stol": 11401, - "stol": 6700, - "stole": 10995, - "stolen": 8704, - "stolic": 45020, - "stom": 2343, - "stom": 38068, - "stoma": 43545, - "stomach": 14722, - "stomp": 40165, - "stomping": 46144, - "ston": 4101, - "ston": 1839, - "stone": 7694, - "stone": 2441, - "stoned": 36248, - "stonehenge": 42417, - "stoner": 35131, - "stoner": 29115, - "stones": 42659, - "stones": 6885, - "stonewall": 39688, - "stoney": 44198, - "stony": 41717, - "stony": 35691, - "stoo": 24505, - "stood": 9151, - "stool": 34413, - "stool": 22314, - "stop": 6005, - "stop": 1691, - "stopbrexit": 48680, - "stopp": 15738, - "stopped": 6015, - "stopper": 32147, - "stoppers": 34457, - "stopping": 10735, - "stops": 9822, - "stopthe": 26463, - "stor": 809, - "stor": 17740, - "storage": 6824, - "store": 17769, - "store": 2183, - "stored": 28257, - "stores": 6370, - "storey": 24025, - "storians": 34628, - "stories": 3784, - "storing": 40087, - "stork": 46452, - "storm": 7434, - "storm": 2819, - "stormed": 45939, - "stormhour": 12161, - "storming": 24842, - "storms": 6464, - "stormtrooper": 49218, - "stormy": 20075, - "stors": 7178, - "story": 6512, - "story": 1134, - "storyline": 37079, - "storymonth": 23717, - "storyteller": 35882, - "storytelling": 14457, - "storytime": 44197, - "stos": 19281, - "stou": 37168, - "stour": 37361, - "stour": 21928, - "stout": 16550, - "stove": 21423, - "stow": 44284, - "stow": 17046, - "stowe": 34196, - "stown": 28071, - "stown": 7939, - "stp": 30576, - "stpatrick": 21343, - "stpatricksday": 22747, - "str": 807, - "str": 15913, - "stra": 1894, - "stra": 6253, - "strack": 46861, - "strada": 31134, - "strade": 48968, - "straigh": 31016, - "straight": 22114, - "straight": 4241, - "strain": 16887, - "strains": 38067, - "strait": 22946, - "straits": 41984, - "stral": 23289, - "stralia": 42510, - "stran": 18411, - "strand": 18214, - "strand": 17826, - "stranded": 22975, - "strang": 11138, - "strange": 33380, - "strange": 7288, - "strangely": 37566, - "stranger": 35541, - "stranger": 14149, - "strangers": 20684, - "strangerthings": 43271, - "strangest": 46740, - "strap": 13946, - "strapped": 40922, - "straps": 31213, - "stras": 36814, - "stras": 42125, - "strasbourg": 39576, - "strat": 11345, - "strat": 32925, - "strata": 47278, - "strate": 3532, - "strate": 28758, - "strategi": 49102, - "strategic": 10246, - "strategically": 45706, - "strategies": 9942, - "strategist": 37180, - "strategy": 5637, - "strates": 45724, - "stratford": 23955, - "strath": 21997, - "stration": 3156, - "strato": 28878, - "strauss": 32033, - "strava": 34625, - "stravel": 43494, - "straw": 7430, - "straw": 16438, - "strawberries": 17796, - "strawberry": 10233, - "straws": 33048, - "stray": 30784, - "stray": 15712, - "stre": 1079, - "stre": 19652, - "stread": 27797, - "streak": 11749, - "streaks": 42092, - "stream": 8659, - "stream": 3322, - "streamed": 26280, - "streamer": 25178, - "streamers": 19937, - "streaming": 6278, - "streamline": 44917, - "streams": 13545, - "stree": 35082, - "stree": 32438, - "streep": 38701, - "street": 4839, - "street": 2012, - "streetart": 12948, - "streetcar": 34268, - "streetfood": 44486, - "streetphotography": 20786, - "streets": 6058, - "streetstyle": 39118, - "streetwear": 37298, - "strel": 39685, - "stren": 4349, - "streng": 4472, - "strength": 15475, - "strength": 5959, - "strengthen": 16318, - "strengthened": 47131, - "strengthening": 23475, - "strengthens": 40280, - "strengths": 29268, - "stress": 17297, - "stress": 5843, - "stressed": 16497, - "stresses": 32112, - "stressful": 24268, - "stressing": 35917, - "stret": 12265, - "stretch": 10064, - "stretched": 29393, - "stretches": 32231, - "stretching": 24423, - "stri": 1493, - "stri": 27795, - "stria": 39620, - "strial": 30217, - "strian": 12924, - "stric": 2607, - "strick": 25181, - "strickland": 48939, - "strict": 21585, - "strictly": 16475, - "stride": 36024, - "strides": 37355, - "stries": 18171, - "strife": 46473, - "strike": 20774, - "strike": 5767, - "striker": 12448, - "strikers": 33465, - "strikes": 9280, - "striking": 13392, - "string": 25512, - "string": 9696, - "strings": 15699, - "strip": 9317, - "stripe": 19368, - "striped": 22192, - "stripes": 14239, - "stripped": 26602, - "stripper": 45759, - "stripping": 48588, - "strips": 19000, - "strive": 22140, - "striving": 37671, - "stro": 3121, - "stro": 6186, - "stroke": 44621, - "stroke": 10403, - "strokes": 26595, - "strol": 30123, - "stroll": 15924, - "stroller": 47076, - "strolling": 40911, - "strom": 14707, - "stron": 4165, - "strong": 10436, - "strong": 2389, - "stronger": 27760, - "stronger": 9245, - "strongertogether": 38532, - "strongest": 16171, - "strongh": 38678, - "strongly": 15507, - "strophy": 47912, - "strou": 48425, - "stroud": 39895, - "strous": 23752, - "stru": 1666, - "struc": 3311, - "struck": 10861, - "struction": 12497, - "structural": 16899, - "structure": 5285, - "structured": 27147, - "structures": 14171, - "structuring": 37496, - "strugg": 5176, - "struggle": 8443, - "struggled": 32921, - "struggles": 17446, - "struggling": 12135, - "struly": 34118, - "strum": 37632, - "strung": 46033, - "strust": 23920, - "strut": 48375, - "stry": 17325, - "stry": 2245, - "sts": 1088, - "stu": 858, - "stu": 23531, - "stuart": 32054, - "stuart": 11723, - "stub": 27066, - "stubborn": 38955, - "stuck": 6596, - "stud": 22368, - "stud": 13319, - "studded": 29153, - "studen": 44156, - "student": 14681, - "student": 2556, - "students": 1712, - "studi": 5691, - "studied": 21369, - "studies": 6426, - "studio": 17798, - "studio": 3155, - "studios": 6231, - "studs": 27571, - "study": 21051, - "study": 3123, - "studyabroad": 45425, - "studying": 8826, - "stuff": 46072, - "stuff": 3487, - "stuffed": 11781, - "stuffing": 31612, - "stuffs": 43455, - "stuk": 32424, - "stumb": 16784, - "stumble": 39045, - "stumbled": 21776, - "stump": 32064, - "stun": 3088, - "stun": 37959, - "stunned": 34034, - "stunner": 29965, - "stunning": 3769, - "stunningly": 47515, - "stuns": 43796, - "stunt": 19905, - "stunts": 40118, - "stupi": 18975, - "stupid": 42600, - "stupid": 8085, - "stupidity": 33766, - "stur": 10676, - "sturdy": 43780, - "stures": 27223, - "sturgeon": 31580, - "sturi": 21747, - "sturridge": 45331, - "stutt": 30444, - "stuttgart": 32219, - "stv": 27060, - "stv": 9708, - "stweet": 46832, - "stweets": 39174, - "stx": 42548, - "sty": 1421, - "sty": 2920, - "style": 12356, - "style": 1844, - "styled": 17974, - "styles": 6948, - "styli": 38577, - "styling": 14597, - "stylish": 10378, - "stylist": 15928, - "styn": 41394, - "su": 605, - "su": 2937, - "sua": 42448, - "suarez": 21437, - "suave": 47305, - "sub": 1783, - "sub": 7765, - "subaru": 21319, - "subjec": 16090, - "subject": 10300, - "subjects": 22099, - "subli": 16350, - "sublime": 22367, - "submarine": 19968, - "submer": 27156, - "submerged": 43171, - "submission": 16571, - "submissions": 21566, - "submit": 10423, - "submitted": 15189, - "submitting": 38788, - "subram": 49207, - "subs": 16398, - "subscri": 5838, - "subscribe": 9839, - "subscribed": 44867, - "subscriber": 36292, - "subscribers": 17337, - "subscription": 17979, - "subscriptions": 47162, - "subsequ": 33598, - "subsequent": 44323, - "subsi": 14856, - "subsidi": 45029, - "subsidiary": 45506, - "subsidies": 37685, - "subsidy": 47462, - "substan": 17487, - "substance": 19309, - "substances": 36834, - "substantial": 27171, - "substantially": 47577, - "substitu": 18529, - "substitute": 25340, - "subtitles": 39479, - "subtle": 16536, - "subur": 12517, - "suburb": 37664, - "suburban": 23570, - "suburbs": 25317, - "subway": 12196, - "suc": 1869, - "succe": 7981, - "succeed": 13556, - "succeeded": 41077, - "succes": 39019, - "success": 3695, - "success": 3034, - "successes": 29436, - "successful": 4670, - "successfully": 9934, - "succession": 38491, - "successive": 41319, - "successor": 34774, - "succu": 45253, - "succul": 25671, - "succulent": 35236, - "such": 2046, - "suction": 42786, - "sud": 8067, - "sud": 33714, - "sudan": 31149, - "sudan": 13474, - "sudanese": 42837, - "sudbury": 32488, - "sudden": 10833, - "sudden": 15433, - "suddenly": 11076, - "sue": 14045, - "sue": 6641, - "sued": 22225, - "suede": 21036, - "sues": 17105, - "suf": 21204, - "suf": 22579, - "sufc": 37091, - "suff": 4866, - "suffe": 13510, - "suffer": 13557, - "suffered": 14766, - "suffering": 10140, - "suffers": 22389, - "sufficient": 28410, - "suffol": 13775, - "suffolk": 46408, - "suffolk": 15685, - "suffra": 34596, - "suffrage": 39567, - "sufi": 39756, - "sug": 3189, - "suga": 28757, - "sugar": 12418, - "sugar": 5574, - "sugge": 6345, - "suggest": 13356, - "suggested": 18790, - "suggesti": 15033, - "suggesting": 29792, - "suggestion": 23741, - "suggestions": 16052, - "suggests": 13333, - "suho": 32744, - "sui": 24972, - "suici": 16372, - "suicidal": 37165, - "suicide": 31310, - "suicide": 8247, - "suing": 18309, - "suisse": 35964, - "suit": 11887, - "suit": 3940, - "suitable": 17476, - "suitcase": 27792, - "suite": 9346, - "suited": 25919, - "suites": 21523, - "suits": 9949, - "suk": 24820, - "suk": 6886, - "suka": 44017, - "suke": 25590, - "sukh": 46961, - "suki": 32704, - "sul": 1767, - "sul": 19879, - "sula": 34713, - "sula": 26143, - "sullivan": 14477, - "sully": 37752, - "sulph": 37234, - "sulphur": 47659, - "sultan": 35650, - "sultan": 17049, - "sum": 7054, - "sum": 8257, - "suma": 47938, - "sumat": 32640, - "sumatra": 47346, - "sume": 45457, - "sumi": 41248, - "summ": 1309, - "summar": 34657, - "summari": 31993, - "summary": 13435, - "summed": 34912, - "summer": 5500, - "summer": 1673, - "summers": 18254, - "summerslam": 40264, - "summertime": 19025, - "summit": 30011, - "summit": 3768, - "summon": 27622, - "summon": 39782, - "sumner": 46813, - "sumo": 33734, - "sump": 34252, - "sumptuous": 47354, - "sums": 13325, - "sun": 968, - "sun": 2176, - "sunbathing": 46994, - "sunburn": 45767, - "sund": 40735, - "sundae": 38078, - "sundance": 24128, - "sundar": 44936, - "sunday": 6649, - "sunday": 1706, - "sundayfunday": 21565, - "sundaymorning": 24809, - "sundaymotivation": 46227, - "sundays": 15827, - "sundaywith": 26469, - "sundaywithmarsha": 26662, - "sunder": 15097, - "sunderland": 45727, - "sunderland": 18851, - "sundown": 44438, - "sune": 41096, - "sunflower": 21559, - "sunflowers": 39809, - "sung": 16903, - "sung": 6047, - "sunglasses": 12906, - "suni": 17663, - "suni": 47010, - "sunil": 32861, - "sunite": 21382, - "sunited": 35276, - "sunk": 37534, - "sunken": 43473, - "sunlight": 17996, - "sunni": 44315, - "sunny": 15632, - "sunny": 5438, - "sunrise": 5610, - "suns": 18322, - "sunscreen": 29355, - "sunset": 37880, - "sunset": 3424, - "sunsets": 17721, - "sunshine": 32761, - "sunshine": 5385, - "suny": 41308, - "sup": 19078, - "sup": 8249, - "supdates": 24177, - "super": 1642, - "super": 1994, - "superb": 8930, - "superbike": 45709, - "superbowl": 47461, - "superbowl": 16467, - "supercar": 27021, - "supercars": 32185, - "supercell": 43227, - "supercharged": 47479, - "supere": 46831, - "superfood": 41715, - "supergirl": 25771, - "superhero": 14049, - "superheroes": 23334, - "superint": 17615, - "superintendent": 19020, - "superior": 13205, - "superjunior": 40475, - "superleague": 45539, - "superman": 11237, - "supermarket": 19897, - "supermarkets": 45106, - "supermodel": 41963, - "supermoon": 36571, - "supernatural": 15484, - "supernova": 39843, - "superrugby": 48717, - "supersonic": 42019, - "supersport": 46319, - "superst": 38202, - "superstar": 32551, - "superstar": 10472, - "superstars": 25797, - "supervis": 12709, - "supervised": 41316, - "supervision": 36234, - "supervisor": 20366, - "supervisors": 37958, - "superyacht": 42714, - "supp": 1023, - "supper": 15727, - "supple": 31431, - "supplement": 19924, - "supplements": 21265, - "supplied": 24106, - "supplier": 18043, - "suppliers": 24196, - "supplies": 9384, - "supply": 25074, - "supply": 6389, - "supplychain": 31224, - "supplying": 32739, - "suppo": 6941, - "suppor": 2104, - "support": 12062, - "support": 1425, - "supported": 8038, - "supporter": 12992, - "supporters": 7403, - "supportindiefilm": 43976, - "supporting": 3976, - "supportive": 18313, - "supportlocal": 43852, - "supports": 8336, - "supportsmall": 30941, - "supportsmallstreamers": 36097, - "suppose": 18924, - "supposed": 9119, - "supposedly": 32302, - "suppre": 20542, - "suppression": 36508, - "supra": 48485, - "supre": 5875, - "supremac": 28643, - "supremacist": 39005, - "supremacy": 28913, - "supreme": 35222, - "supreme": 7468, - "supt": 23625, - "sur": 1090, - "sur": 7123, - "sura": 33412, - "sura": 49125, - "surabaya": 45227, - "surance": 22184, - "surat": 30201, - "sure": 14320, - "sure": 1650, - "sured": 36869, - "surely": 11409, - "sures": 12725, - "suresh": 32118, - "suresh": 31464, - "sureshpp": 41924, - "sureshpprabhu": 42050, - "surf": 10176, - "surf": 10322, - "surface": 7744, - "surfaces": 20746, - "surfer": 24925, - "surfers": 34842, - "surfing": 15762, - "surg": 13045, - "surge": 17457, - "surgeon": 16039, - "surgeons": 26000, - "surger": 5122, - "surgeries": 34940, - "surgery": 5344, - "surgical": 16386, - "suri": 14130, - "suri": 33952, - "suring": 16817, - "suriya": 17832, - "surpass": 45494, - "surpassed": 25648, - "surplus": 29413, - "surpri": 3244, - "surprise": 5099, - "surprised": 8949, - "surprises": 16920, - "surprising": 14964, - "surprisingly": 17367, - "surreal": 18408, - "surrealism": 41773, - "surrender": 20964, - "surrendered": 44601, - "surrey": 26489, - "surrey": 14315, - "surro": 47499, - "surroun": 8250, - "surround": 26543, - "surround": 22999, - "surrounded": 13589, - "surrounding": 12544, - "surroundings": 26915, - "surrounds": 39012, - "suru": 49240, - "surve": 8952, - "surveill": 15408, - "surveillance": 15578, - "survey": 45914, - "survey": 6809, - "surveying": 33085, - "surveys": 25096, - "survi": 3440, - "surviv": 12922, - "survival": 10172, - "survive": 10431, - "survived": 13483, - "survives": 30927, - "surviving": 18609, - "survivor": 31934, - "survivor": 10944, - "survivors": 13711, - "surya": 37767, - "sus": 8091, - "sus": 3036, - "susa": 20546, - "susan": 19922, - "susan": 10168, - "suscep": 44270, - "sush": 22298, - "sushi": 11729, - "sushmaswar": 48200, - "susie": 32284, - "susp": 7971, - "suspec": 10298, - "suspect": 9065, - "suspected": 15579, - "suspects": 18265, - "suspen": 10578, - "suspend": 41007, - "suspended": 13126, - "suspends": 39535, - "suspense": 21556, - "suspension": 15417, - "suspici": 25714, - "suspicion": 34910, - "suspicious": 19862, - "sussex": 31244, - "sussex": 13266, - "sustain": 4644, - "sustain": 28156, - "sustainability": 9635, - "sustainable": 23645, - "sustainable": 7078, - "sustained": 22699, - "sustaining": 44418, - "sut": 23984, - "sut": 28956, - "sutherland": 27592, - "sutton": 39359, - "sutton": 18564, - "suv": 15985, - "suz": 9957, - "suzanne": 24617, - "suzu": 36289, - "suzuki": 16892, - "suzy": 26552, - "sv": 6508, - "sv": 17083, - "svc": 45065, - "sve": 47637, - "sven": 37786, - "sven": 45183, - "sver": 45923, - "sville": 44580, - "sville": 6741, - "svp": 28465, - "svt": 42014, - "svu": 32123, - "sw": 1220, - "sw": 4457, - "swa": 4707, - "swa": 31916, - "swach": 20862, - "swachhb": 31898, - "swachhbharat": 36927, - "swag": 8852, - "swag": 8177, - "swagg": 47702, - "swagger": 35797, - "swain": 43226, - "swal": 13433, - "swallow": 28979, - "swallowed": 46956, - "swallows": 45124, - "swam": 42539, - "swami": 25021, - "swamp": 41953, - "swamp": 16595, - "swamy": 28445, - "swan": 8215, - "swan": 12530, - "swana": 24699, - "swans": 19516, - "swansea": 16567, - "swanson": 34797, - "swap": 15234, - "swapped": 39077, - "swapping": 44702, - "swaps": 49242, - "swar": 11680, - "swarm": 31577, - "swarovski": 28515, - "swat": 32547, - "swat": 26482, - "swatch": 48053, - "sway": 26443, - "sway": 26617, - "swc": 42231, - "swe": 2350, - "swe": 38070, - "swear": 7406, - "swearing": 32627, - "sweat": 10282, - "sweat": 12663, - "sweater": 11455, - "sweaters": 31303, - "sweating": 33215, - "sweats": 39321, - "sweatshirt": 22442, - "sweaty": 28419, - "sweden": 8760, - "swedish": 11585, - "swee": 1812, - "sweek": 30017, - "sweeney": 27286, - "sweep": 23220, - "sweep": 13669, - "sweeping": 25719, - "sweeps": 26887, - "sweepstakes": 25992, - "sweet": 10957, - "sweet": 2418, - "sweetened": 45577, - "sweeter": 32873, - "sweetest": 15180, - "sweethe": 16316, - "sweetheart": 18079, - "sweetie": 24450, - "sweetness": 29713, - "sweets": 18045, - "swel": 48470, - "swell": 35538, - "swell": 21490, - "swelling": 46578, - "swept": 23311, - "swer": 30514, - "swfc": 30227, - "swfl": 46607, - "swi": 3881, - "swi": 45223, - "swick": 17159, - "swif": 28548, - "swift": 34843, - "swift": 8229, - "swild": 33909, - "swild": 38696, - "swildlife": 46818, - "swim": 4928, - "swim": 7681, - "swimmer": 25475, - "swimmers": 27776, - "swimming": 7411, - "swims": 46798, - "swimsuit": 25504, - "swimwear": 31889, - "swin": 14554, - "swin": 40798, - "swindon": 29540, - "swine": 31166, - "swing": 25292, - "swing": 7429, - "swinging": 26760, - "swings": 29141, - "swipe": 31828, - "swire": 42753, - "swirl": 35795, - "swis": 23611, - "swish": 38571, - "swiss": 37917, - "swiss": 9287, - "swit": 3726, - "switch": 22480, - "switch": 5893, - "switched": 22869, - "switches": 33569, - "switching": 21155, - "swith": 17299, - "switzer": 9835, - "switzerland": 9912, - "swivel": 48256, - "swo": 38673, - "swol": 29575, - "swollen": 36129, - "swoo": 29744, - "swood": 24158, - "swoon": 37028, - "swoop": 45661, - "sword": 33294, - "sword": 11356, - "swords": 27181, - "swork": 42722, - "sworld": 33305, - "sworn": 21130, - "sworth": 13322, - "swt": 38878, - "swx": 20597, - "sx": 9402, - "sx": 17806, - "sxsw": 13369, - "sy": 974, - "sy": 2126, - "sya": 35017, - "sycam": 34911, - "sycamore": 43086, - "syd": 4525, - "syd": 22504, - "sydney": 15878, - "sydney": 5278, - "syed": 27624, - "syfy": 32047, - "sykes": 27287, - "syl": 6452, - "sylla": 41708, - "sylvania": 12011, - "sylve": 28369, - "sylvester": 37214, - "sylvia": 25670, - "sym": 3645, - "sym": 40327, - "symb": 22987, - "symbol": 13085, - "symboli": 22019, - "symbolic": 33177, - "symbolism": 44679, - "symbols": 25476, - "symmetry": 31427, - "symp": 11468, - "sympathi": 47493, - "sympathy": 32477, - "symph": 9544, - "symphonic": 42639, - "symphony": 11180, - "sympo": 9730, - "symposium": 9971, - "symptom": 47799, - "symptoms": 12956, - "syn": 3758, - "syn": 36090, - "synago": 30945, - "synagogue": 33518, - "sync": 20081, - "synchron": 23943, - "syndic": 21098, - "syndicate": 28779, - "syndrome": 10927, - "syner": 22283, - "synergy": 32012, - "syno": 31533, - "synod": 47712, - "synopsis": 47018, - "synth": 33841, - "synth": 24462, - "synthe": 22604, - "synthesi": 33565, - "synthesis": 21602, - "synthesizer": 44077, - "synthetic": 19917, - "syou": 26742, - "syour": 21718, - "syrac": 17279, - "syracuse": 19640, - "syrah": 45364, - "syri": 18917, - "syria": 5563, - "syrian": 47562, - "syrian": 10041, - "syrians": 41392, - "syrup": 16611, - "sys": 26726, - "syste": 1933, - "system": 47813, - "system": 2422, - "systematic": 28586, - "systemic": 33807, - "systems": 4828, - "sz": 13438, - "sz": 15879, - "sze": 44507, - "szn": 48092, - "são": 45911, - "sé": 37879, - "t": 83, - "t": 339, - "ta": 648, - "ta": 1397, - "taa": 43874, - "tab": 2648, - "tab": 14724, - "tabby": 36145, - "tabern": 48991, - "tability": 15770, - "table": 12108, - "table": 2175, - "tableau": 39723, - "tables": 7822, - "tablet": 12494, - "tabletop": 46843, - "tabletop": 25773, - "tablets": 20436, - "tably": 24440, - "taboo": 38400, - "tabs": 29163, - "tac": 3145, - "tac": 22653, - "tache": 39239, - "tack": 6339, - "tack": 34446, - "tackle": 10294, - "tackled": 47218, - "tackles": 18021, - "tackling": 19628, - "taco": 31924, - "taco": 12436, - "tacoma": 25397, - "tacos": 14090, - "tactic": 40377, - "tactical": 17137, - "tactics": 16410, - "tacular": 48985, - "tad": 15890, - "tad": 19860, - "tado": 40846, - "tae": 15257, - "tae": 15580, - "taehyung": 24642, - "taek": 30753, - "taekwondo": 39963, - "taemin": 30600, - "taeyang": 45802, - "taeyeon": 27389, - "taf": 29660, - "taft": 42141, - "tag": 3456, - "tag": 3640, - "tage": 2669, - "tages": 39902, - "tagged": 12969, - "tagging": 25138, - "tagne": 47467, - "tags": 11606, - "tah": 14822, - "tah": 7090, - "tahit": 45385, - "tahoe": 26140, - "tai": 6511, - "tai": 13040, - "taiji": 30185, - "tail": 7156, - "tail": 4132, - "tailed": 20626, - "tailgate": 23168, - "tailgating": 42625, - "tailo": 27230, - "tailor": 29870, - "tailored": 28275, - "tailoring": 46357, - "tails": 16066, - "tain": 2841, - "tain": 1908, - "taine": 21214, - "taine": 32299, - "tained": 10212, - "taining": 7565, - "tainment": 30063, - "tains": 3952, - "tainted": 47211, - "taipei": 24356, - "tair": 29143, - "tairp": 43707, - "tait": 45325, - "taiwan": 36319, - "taiwan": 12626, - "taiwanese": 41416, - "taj": 28937, - "taj": 24805, - "taji": 46358, - "tak": 15070, - "tak": 14458, - "taka": 24070, - "taka": 40968, - "take": 5052, - "take": 1172, - "takeaway": 25737, - "takeaways": 32080, - "takeme": 41748, - "taken": 2807, - "takeoff": 32789, - "takeover": 11863, - "taker": 17939, - "takers": 30775, - "takes": 2633, - "takin": 30890, - "taking": 2019, - "taku": 48168, - "tal": 976, - "tal": 2066, - "tala": 29845, - "talaga": 35349, - "talbot": 30585, - "tale": 33971, - "tale": 7798, - "talent": 30435, - "talent": 5114, - "talented": 5331, - "talents": 16136, - "tales": 9469, - "tali": 12122, - "tali": 45406, - "taliban": 20788, - "talis": 36480, - "tality": 15631, - "talk": 12462, - "talk": 1841, - "talked": 10153, - "talkin": 26040, - "talking": 31463, - "talking": 2578, - "talks": 3237, - "tall": 11664, - "tall": 7771, - "talla": 21528, - "tallade": 44220, - "tallahassee": 37832, - "taller": 23470, - "tallest": 19774, - "tallinn": 45079, - "tally": 16323, - "talon": 47897, - "tam": 2661, - "tam": 12246, - "tama": 45424, - "tamanna": 48055, - "tamar": 22901, - "tamara": 35697, - "tame": 38557, - "tame": 32778, - "tamed": 40575, - "tami": 39429, - "tamil": 23046, - "tamil": 14033, - "tamilnadu": 32371, - "tamine": 42566, - "tammy": 28396, - "tampa": 10906, - "tampab": 37852, - "tamu": 34105, - "tan": 2123, - "tan": 5039, - "tana": 21396, - "tand": 20244, - "tandem": 33756, - "tane": 13344, - "tane": 24923, - "taneous": 22275, - "taneously": 24422, - "tang": 10425, - "tang": 20794, - "tanger": 31844, - "tangerine": 42045, - "tangible": 44823, - "tangle": 36568, - "tangled": 33587, - "tango": 24089, - "tani": 31374, - "tani": 32985, - "tania": 45369, - "tank": 29858, - "tank": 6172, - "tanker": 25020, - "tanks": 14223, - "tann": 19174, - "tanner": 22001, - "tanning": 27985, - "tans": 27332, - "tant": 41383, - "tant": 41695, - "tante": 48262, - "tanto": 45685, - "tany": 34410, - "tanya": 26800, - "tanz": 47399, - "tanzania": 15711, - "tao": 29084, - "tao": 18923, - "tap": 17923, - "tap": 7888, - "tapas": 27361, - "tape": 18332, - "tape": 5749, - "taped": 33219, - "tapes": 17903, - "tapestry": 33525, - "taping": 24355, - "tapp": 27644, - "tapp": 27764, - "tapped": 26649, - "tapping": 27882, - "tapro": 34415, - "taproom": 40266, - "taps": 23267, - "tar": 2002, - "tar": 6977, - "tara": 15264, - "tarak": 37813, - "taran": 32370, - "tarantino": 41180, - "tarde": 48670, - "tardis": 35410, - "tares": 34587, - "targe": 9620, - "target": 38556, - "target": 5400, - "targeted": 14968, - "targeting": 15818, - "targets": 12468, - "tari": 4238, - "tari": 38012, - "tarian": 11762, - "tarians": 42789, - "taries": 47291, - "tariff": 40220, - "tariffs": 28335, - "tariq": 42526, - "tarmac": 44294, - "taro": 26264, - "tarot": 23702, - "tart": 16707, - "tart": 14120, - "tartan": 35064, - "tarts": 29799, - "tary": 31729, - "tary": 5065, - "tarzan": 45463, - "tas": 6538, - "tas": 10163, - "tash": 35272, - "tasha": 44967, - "task": 39189, - "task": 10549, - "tasks": 19453, - "tasmania": 22429, - "tasmanian": 45102, - "tassel": 49276, - "tast": 10839, - "taste": 14314, - "taste": 5219, - "tasted": 22827, - "tasteof": 38097, - "taster": 29743, - "tastes": 13736, - "tastic": 21337, - "tasting": 7656, - "tastings": 49273, - "tasty": 43390, - "tasty": 8568, - "tat": 2652, - "tat": 21592, - "tata": 19300, - "tate": 44476, - "tate": 13295, - "tath": 27566, - "tati": 31433, - "tatiana": 48837, - "tation": 5280, - "tations": 32324, - "tator": 18791, - "tators": 37206, - "tats": 44557, - "tatt": 9232, - "tatted": 41605, - "tattoo": 15980, - "tattoo": 6325, - "tattooed": 28541, - "tattoos": 14900, - "tatum": 26103, - "tau": 6620, - "tau": 20510, - "taught": 9306, - "taun": 23910, - "taunton": 40681, - "taurus": 32881, - "taver": 37776, - "tavern": 18644, - "taw": 33868, - "taw": 40289, - "tawa": 29035, - "tawards": 14351, - "tax": 4581, - "tax": 3879, - "taxation": 36847, - "taxes": 11462, - "taxi": 25160, - "taxi": 11380, - "taxider": 47420, - "taxis": 34009, - "taxpay": 17986, - "taxpayer": 30978, - "taxpayers": 25503, - "tay": 6542, - "tay": 15073, - "taya": 38484, - "tayl": 3913, - "taylor": 9044, - "taylor": 3961, - "taylorswift": 18936, - "tayo": 33941, - "taz": 41475, - "taz": 31870, - "tb": 1990, - "tb": 7490, - "tba": 34363, - "tball": 8390, - "tball": 1467, - "tbc": 31807, - "tbd": 45548, - "tbh": 13238, - "tbi": 45868, - "tbl": 42962, - "tbli": 43664, - "tblightning": 44178, - "tbo": 34255, - "tbr": 46643, - "tbs": 37368, - "tbt": 2950, - "tc": 6820, - "tc": 5454, - "tca": 35116, - "tch": 10744, - "tch": 4048, - "tches": 42001, - "tcm": 21501, - "tcm": 26588, - "tcmparty": 24338, - "tcot": 8995, - "tcs": 39107, - "tcu": 26791, - "td": 20578, - "td": 3192, - "tdf": 21844, - "tdi": 45621, - "tdp": 47009, - "tds": 20238, - "tdsb": 29836, - "te": 600, - "te": 756, - "tea": 41053, - "tea": 3274, - "teach": 2043, - "teach": 6865, - "teacher": 18051, - "teacher": 4008, - "teachers": 5069, - "teaches": 17110, - "teaching": 5141, - "teachings": 32119, - "teal": 22821, - "team": 2085, - "team": 1027, - "teamcanada": 46636, - "teamed": 20590, - "teamgb": 40971, - "teaming": 24392, - "teammate": 17900, - "teammates": 13921, - "teams": 3891, - "teamsisd": 34703, - "teamusa": 28625, - "teamwork": 14657, - "teaparty": 33065, - "teapo": 35745, - "teapot": 40749, - "tear": 15802, - "tear": 11862, - "tearful": 46873, - "tearing": 24785, - "tears": 7688, - "teas": 23003, - "teas": 29314, - "tease": 25163, - "teased": 49122, - "teaser": 8982, - "teasers": 48990, - "teases": 28509, - "teasing": 36507, - "teat": 26376, - "teatime": 48948, - "teatro": 35756, - "teau": 24931, - "tebow": 37797, - "tec": 17381, - "tec": 11612, - "tech": 1782, - "tech": 2061, - "techcrunch": 42110, - "techn": 6252, - "technews": 31787, - "technic": 16639, - "technic": 37666, - "technical": 49231, - "technical": 7582, - "technically": 23180, - "technician": 22540, - "technicians": 35513, - "techno": 2599, - "techno": 17564, - "technological": 23068, - "technologies": 10040, - "technology": 3089, - "techs": 41353, - "ted": 4841, - "ted": 775, - "tedcruz": 27517, - "teddy": 25758, - "teddy": 11798, - "tedly": 8539, - "tedu": 42517, - "tedx": 17950, - "tedx": 41504, - "tee": 12676, - "tee": 3385, - "teed": 13692, - "teen": 5398, - "teen": 4697, - "teenage": 14069, - "teenager": 19338, - "teenagers": 25989, - "teenchoice": 28203, - "teens": 12375, - "teenth": 20249, - "teenwolf": 40067, - "teeny": 41622, - "teer": 48648, - "tees": 9641, - "teessi": 43295, - "teeth": 8225, - "tega": 29508, - "tegr": 39801, - "teh": 18720, - "teh": 29601, - "tehran": 26399, - "tein": 33223, - "tej": 46724, - "tek": 17489, - "tek": 18294, - "tekken": 29843, - "tel": 4978, - "tel": 2226, - "telang": 23469, - "telangana": 26386, - "tele": 3103, - "tele": 32851, - "telecom": 21057, - "telecommunications": 39900, - "telegram": 26780, - "telegraph": 14713, - "telephone": 17243, - "telescope": 19037, - "telethon": 49266, - "televised": 39470, - "television": 8608, - "telford": 38323, - "tell": 16069, - "tell": 2330, - "teller": 20415, - "tellers": 42707, - "telling": 5507, - "tells": 5217, - "tellu": 42511, - "telly": 31475, - "tels": 43607, - "telugu": 22927, - "tely": 5630, - "tem": 2404, - "tem": 17536, - "tema": 45881, - "teme": 43378, - "temp": 2684, - "temp": 11097, - "tempe": 36723, - "temper": 5981, - "temper": 35521, - "temperature": 9543, - "temperatures": 11575, - "tempered": 40521, - "tempest": 36053, - "templ": 16679, - "template": 18591, - "templates": 30498, - "temple": 21841, - "temple": 5620, - "temples": 24024, - "tempo": 19625, - "tempor": 4858, - "temporal": 43656, - "temporarily": 23189, - "temporary": 6513, - "temps": 11668, - "tempt": 28460, - "temptation": 30118, - "tempted": 26226, - "tempting": 34876, - "ten": 1149, - "ten": 2581, - "tenant": 16954, - "tenants": 26023, - "tenay": 45384, - "tenberg": 31329, - "tend": 17630, - "tend": 21252, - "tendency": 47277, - "tender": 23020, - "tender": 9838, - "tenderloin": 42750, - "tenders": 44741, - "tending": 35084, - "tendon": 48459, - "tends": 39962, - "tene": 24868, - "tened": 13682, - "tener": 29054, - "teneri": 28000, - "tenerife": 29401, - "teners": 41307, - "teness": 18018, - "teng": 34016, - "teng": 28474, - "tennant": 29310, - "tennes": 9514, - "tennessee": 10053, - "tennis": 31504, - "tennis": 5298, - "tenor": 30521, - "tens": 14062, - "tense": 23518, - "tension": 15221, - "tensions": 24224, - "tenstein": 49139, - "tent": 18505, - "tent": 10782, - "tentative": 48238, - "tenth": 27483, - "tention": 12191, - "tents": 30730, - "tenure": 30739, - "teo": 18665, - "tep": 31806, - "tequ": 17502, - "tequila": 18510, - "ter": 704, - "ter": 652, - "tera": 15155, - "teras": 44830, - "tere": 11329, - "tered": 49272, - "tered": 4389, - "terence": 33806, - "teresa": 19081, - "teri": 30917, - "teria": 22685, - "terie": 42276, - "tering": 7929, - "term": 40991, - "term": 4780, - "termin": 4766, - "terminal": 11816, - "terminals": 44091, - "terminator": 29609, - "terminology": 48896, - "terms": 8663, - "tern": 41572, - "tern": 12959, - "terns": 25251, - "tero": 20727, - "tero": 24697, - "terps": 41471, - "terr": 3921, - "terra": 22366, - "terra": 18816, - "terrac": 28549, - "terrace": 13820, - "terraces": 47508, - "terracotta": 45123, - "terrain": 20184, - "terran": 43726, - "terre": 33888, - "terre": 27537, - "terrell": 39494, - "terrence": 38746, - "terrestrial": 46299, - "terri": 4504, - "terri": 36722, - "terrible": 9741, - "terribly": 34558, - "terrier": 14455, - "terriers": 47047, - "terrific": 13837, - "terrified": 28204, - "terrifying": 18526, - "territ": 10720, - "territorial": 39163, - "territories": 32846, - "territory": 13936, - "terror": 9596, - "terror": 9327, - "terrori": 6836, - "terrorism": 10583, - "terrorist": 10575, - "terrorists": 12835, - "terry": 19378, - "terry": 8561, - "ters": 24102, - "ters": 1737, - "terti": 48386, - "tery": 4184, - "tes": 8019, - "tes": 3609, - "tesco": 15434, - "tese": 33320, - "tesla": 12254, - "tess": 21807, - "tess": 20840, - "tessa": 32063, - "test": 7738, - "test": 1628, - "testam": 23477, - "testament": 24609, - "tested": 10576, - "tester": 32707, - "testi": 18373, - "testic": 42364, - "testify": 33088, - "testifying": 46347, - "testim": 12553, - "testimonial": 28834, - "testimony": 18672, - "testing": 4967, - "testo": 42428, - "testosterone": 45168, - "tests": 8715, - "tet": 40468, - "tet": 13275, - "tetra": 40902, - "tetris": 45934, - "teu": 47152, - "teuk": 39979, - "teur": 27120, - "tex": 2056, - "tex": 11728, - "texan": 35287, - "texan": 38386, - "texans": 17580, - "texanscheer": 43717, - "texas": 15713, - "texas": 3403, - "texaste": 46469, - "text": 18169, - "text": 4160, - "textbook": 25952, - "textbooks": 44041, - "texted": 29004, - "textile": 19789, - "textiles": 24326, - "texting": 18600, - "texts": 12767, - "texture": 16505, - "textured": 32168, - "textures": 28063, - "tey": 32395, - "tez": 22664, - "tf": 18828, - "tf": 5001, - "tfc": 30186, - "tfl": 29918, - "tford": 22493, - "tful": 17108, - "tfw": 16741, - "tg": 7665, - "tg": 11981, - "tgif": 14483, - "th": 513, - "th": 640, - "tha": 18470, - "tha": 4715, - "thab": 38219, - "thad": 48339, - "thai": 28054, - "thai": 8825, - "thail": 7258, - "thailand": 7469, - "thak": 22801, - "thakur": 38427, - "thal": 7967, - "thal": 12323, - "thala": 17784, - "thalai": 25206, - "thalaivar": 44918, - "thalap": 39789, - "thalapathy": 45405, - "thalapathy": 23324, - "thall": 36007, - "tham": 11761, - "tham": 8896, - "thames": 43472, - "thames": 15321, - "than": 792, - "than": 1126, - "thand": 44465, - "thane": 21463, - "thang": 24870, - "thani": 31322, - "thank": 2790, - "thank": 1144, - "thanked": 32079, - "thankful": 38839, - "thankful": 6217, - "thankfully": 22089, - "thanking": 21989, - "thanks": 5672, - "thanks": 1085, - "thanksgiving": 45732, - "thanksgiving": 6167, - "thanku": 45710, - "thankyou": 18050, - "thankyou": 9911, - "thanniversary": 35564, - "thanos": 36709, - "thanx": 25095, - "thar": 14396, - "thar": 38843, - "thard": 43474, - "that": 6303, - "that": 682, - "thatcher": 32496, - "thats": 44636, - "thats": 9254, - "thaw": 26081, - "thaw": 47229, - "thbewithyou": 41067, - "thc": 20091, - "thcentury": 49111, - "thd": 28219, - "thday": 37801, - "the": 599, - "the": 518, - "thea": 15935, - "thea": 25429, - "thead": 25259, - "theal": 45728, - "thealth": 31398, - "thear": 43283, - "theart": 44678, - "theast": 8378, - "theastern": 17877, - "theat": 2263, - "theater": 39438, - "theater": 6128, - "theaters": 14689, - "theatre": 19857, - "theatre": 3292, - "theatres": 21680, - "theatrical": 26833, - "theband": 27695, - "thebeatles": 35645, - "thebest": 40883, - "thebest": 25856, - "thebig": 24732, - "theblack": 47718, - "thec": 48659, - "thed": 31405, - "thedaily": 33550, - "theday": 4408, - "thedream": 39417, - "thee": 44475, - "thee": 15108, - "theeconomist": 44518, - "theellenshow": 35342, - "thefilm": 31665, - "theflash": 25434, - "theforce": 40002, - "theforceawakens": 48033, - "theft": 13286, - "thefuture": 34287, - "thegame": 24428, - "thegood": 28594, - "thegreat": 28721, - "thei": 44522, - "their": 911, - "theirs": 29297, - "thel": 5403, - "thelast": 23495, - "thelastjedi": 47992, - "theless": 27712, - "theli": 15277, - "thelittle": 46872, - "thelo": 47036, - "thelove": 40668, - "thelove": 43200, - "them": 5435, - "them": 1180, - "themasters": 48378, - "theme": 38524, - "theme": 5849, - "themed": 10126, - "themes": 17849, - "themet": 48183, - "themovie": 27062, - "themselves": 6503, - "then": 5929, - "then": 1594, - "thenburg": 45209, - "thene": 17012, - "thenew": 24212, - "thenext": 47881, - "thenight": 43336, - "theno": 37172, - "thenorth": 34338, - "theo": 17043, - "theo": 18084, - "theod": 26653, - "theodore": 30743, - "theological": 41162, - "theology": 24095, - "theon": 34653, - "theone": 46231, - "theopen": 41438, - "theore": 22690, - "theoretical": 35585, - "theori": 34804, - "theories": 23937, - "theory": 7143, - "thepeople": 33597, - "thepersonal": 29981, - "thepersonalnetwork": 30016, - "thephoto": 18303, - "thephotohour": 18607, - "ther": 1160, - "ther": 743, - "therap": 4499, - "therapeu": 19332, - "therapeutic": 23240, - "therapeutics": 49101, - "therapies": 30179, - "therapist": 20608, - "therapists": 34763, - "therapper": 49340, - "therapy": 5257, - "there": 5283, - "there": 997, - "thereal": 8074, - "thereal": 41140, - "thereby": 43308, - "thered": 10208, - "therefore": 16865, - "theres": 18494, - "theresa": 14126, - "therese": 47996, - "theresistance": 22845, - "theri": 28967, - "theri": 45297, - "therine": 26807, - "therine": 9239, - "thering": 7891, - "therland": 25351, - "thermal": 13689, - "thermo": 22303, - "thermom": 31138, - "thermometer": 38172, - "thermost": 42391, - "thern": 10919, - "thern": 3137, - "thero": 13165, - "theroad": 29807, - "therock": 30036, - "theroy": 38146, - "thers": 1959, - "thes": 40556, - "thes": 6460, - "thescript": 47061, - "these": 40366, - "these": 1071, - "theses": 39388, - "thesimpsons": 45513, - "thesims": 34192, - "thesis": 10673, - "thessal": 41491, - "thessaloni": 41753, - "thest": 35343, - "thesun": 45617, - "theta": 27694, - "thetic": 7954, - "thetimes": 36039, - "thevamp": 33701, - "thevoice": 47206, - "thevoice": 30258, - "thewalkingdead": 18087, - "thewanted": 43008, - "theworld": 44988, - "theworld": 17475, - "thex": 35990, - "they": 15174, - "they": 889, - "theyre": 28266, - "thfc": 17729, - "thi": 2362, - "thi": 9111, - "thia": 17943, - "thiago": 44537, - "thian": 23214, - "thians": 28187, - "thibau": 48351, - "thic": 26107, - "thic": 11794, - "thick": 18417, - "thick": 11006, - "thicker": 43302, - "thickness": 40754, - "thief": 18508, - "thier": 25595, - "thierry": 32929, - "thieves": 17899, - "thigh": 47124, - "thigh": 22877, - "thighs": 30847, - "thik": 20512, - "thika": 44619, - "thill": 31266, - "thim": 42331, - "thin": 2178, - "thin": 7847, - "thine": 47192, - "thing": 7499, - "thing": 946, - "things": 30670, - "things": 1739, - "thingsto": 43924, - "thingy": 36888, - "think": 9820, - "think": 1331, - "thinkbig": 26015, - "thinkbigsundaywithmarsha": 26666, - "thinker": 34577, - "thinkers": 32779, - "thinkin": 34443, - "thinking": 3291, - "thinks": 6109, - "thinner": 47247, - "thir": 6030, - "third": 32102, - "third": 3981, - "thirds": 42582, - "thirst": 23563, - "thirsty": 39731, - "thirsty": 17521, - "thirteen": 34209, - "thirty": 20813, - "thiru": 43292, - "this": 4340, - "this": 589, - "thisday": 6532, - "thisdayin": 33641, - "thisdayinhistory": 46913, - "thisi": 7299, - "thisis": 14887, - "thismorning": 36245, - "thistle": 29039, - "thistory": 28904, - "thium": 21804, - "thletics": 17765, - "thm": 10407, - "thman": 30079, - "thms": 19874, - "thn": 44155, - "thn": 45587, - "thnx": 25480, - "tho": 1325, - "tho": 5025, - "thof": 18943, - "thofjuly": 21613, - "thol": 29319, - "thole": 31029, - "tholes": 42465, - "thology": 9881, - "thom": 2585, - "thom": 24094, - "thomas": 12574, - "thomas": 3888, - "thome": 21289, - "thomp": 37274, - "thompson": 42181, - "thompson": 8535, - "thomson": 24151, - "thon": 38776, - "thon": 8924, - "thong": 37058, - "thood": 15623, - "thor": 4130, - "thor": 13691, - "thora": 46866, - "thorn": 12957, - "thorn": 18466, - "thorne": 18025, - "thorns": 33650, - "thornton": 23592, - "thorough": 15294, - "thorough": 34788, - "thoroughbred": 43248, - "thoroughly": 19750, - "thorpe": 18099, - "thos": 41965, - "those": 1753, - "thot": 33736, - "thou": 1513, - "thou": 17781, - "though": 2846, - "thought": 23948, - "thought": 2449, - "thoughtful": 19592, - "thoughts": 3618, - "thour": 27125, - "thousand": 9344, - "thousands": 7089, - "thouse": 40318, - "thouse": 7819, - "thoven": 23078, - "thr": 1111, - "thr": 19138, - "thra": 17761, - "thra": 32797, - "thrash": 38262, - "thre": 1607, - "thread": 31108, - "thread": 8815, - "threads": 24957, - "threat": 7527, - "threat": 7212, - "threaten": 26097, - "threatened": 16391, - "threatening": 16400, - "threatens": 20555, - "threats": 12766, - "three": 21615, - "three": 2097, - "thren": 41776, - "thresh": 29779, - "threshold": 33791, - "threw": 12746, - "thri": 8713, - "thrift": 27779, - "thrill": 21023, - "thrilled": 7879, - "thriller": 9653, - "thrilling": 20101, - "thrills": 39829, - "thrive": 17669, - "thriving": 22677, - "thro": 2101, - "thro": 28624, - "throat": 16371, - "thrombo": 47585, - "throne": 15999, - "thrones": 8072, - "throp": 34939, - "throttle": 37139, - "through": 6091, - "through": 1417, - "throughout": 6721, - "throughs": 48278, - "throw": 3315, - "throw": 6293, - "throwback": 6001, - "throwback": 5058, - "throwbackthursday": 6326, - "thrower": 40199, - "throwing": 9734, - "thrown": 15079, - "throws": 14723, - "thru": 23856, - "thru": 6162, - "thrush": 46133, - "thrust": 40202, - "ths": 2079, - "tht": 23554, - "thu": 3837, - "thu": 14153, - "thub": 25660, - "thug": 37212, - "thug": 18137, - "thugs": 27686, - "thul": 28368, - "thulhu": 37560, - "thum": 14679, - "thumb": 19514, - "thumb": 18674, - "thumbnail": 32365, - "thumbs": 17599, - "thun": 32267, - "thunder": 6161, - "thunder": 8951, - "thunderbird": 45131, - "thunderbirds": 44286, - "thunderbolt": 43596, - "thunderstorm": 12005, - "thunderstorms": 19525, - "thunt": 46763, - "thur": 1837, - "thur": 21704, - "thurman": 41291, - "thurs": 9908, - "thursday": 11218, - "thursday": 2221, - "thursdaymotivation": 39375, - "thursdays": 21444, - "thursdaythoughts": 14866, - "thurst": 33970, - "thus": 12457, - "thusi": 9488, - "thwaite": 48469, - "thweeksary": 30871, - "thx": 5913, - "thy": 7804, - "thy": 3362, - "thyme": 29805, - "thyro": 25174, - "thyroid": 32558, - "ti": 555, - "ti": 2605, - "tia": 6709, - "tial": 2826, - "tially": 14503, - "tian": 23011, - "tian": 8125, - "tians": 35182, - "tiara": 38322, - "tib": 47868, - "tibet": 19927, - "tibet": 22234, - "tibetan": 24057, - "tible": 11453, - "tic": 890, - "tic": 1550, - "tica": 9669, - "tical": 34191, - "tical": 4342, - "tically": 13375, - "ticals": 30861, - "tice": 3122, - "tich": 48769, - "tician": 43358, - "ticism": 26491, - "tick": 24640, - "tick": 15617, - "ticket": 25740, - "ticket": 4500, - "ticketing": 44432, - "tickets": 2015, - "ticking": 35842, - "tickle": 42999, - "ticks": 40269, - "tico": 17670, - "ticon": 45996, - "tics": 2419, - "ticul": 15538, - "ticus": 44277, - "tid": 26002, - "tid": 23727, - "tidal": 21949, - "tide": 15698, - "tide": 9105, - "tides": 25524, - "tidy": 23858, - "tie": 14072, - "tie": 3422, - "tied": 9889, - "tiem": 34762, - "tien": 47538, - "tiene": 43438, - "tier": 14390, - "tier": 6598, - "tierney": 45693, - "tiers": 24604, - "ties": 25556, - "ties": 2499, - "tiest": 18300, - "tiesto": 46367, - "tif": 23216, - "tiff": 11112, - "tiff": 20699, - "tiffany": 30467, - "tiffany": 14446, - "tification": 43923, - "tified": 40854, - "tiful": 29123, - "tify": 6677, - "tig": 31999, - "tiger": 11954, - "tiger": 6531, - "tigers": 6934, - "tigh": 31365, - "tight": 25763, - "tight": 9123, - "tighten": 46653, - "tighter": 48193, - "tightly": 37568, - "tights": 29581, - "tijuana": 45273, - "tik": 24986, - "tik": 32403, - "tiki": 30107, - "til": 6124, - "til": 1763, - "tile": 26217, - "tile": 8227, - "tiles": 10607, - "tility": 38180, - "till": 17462, - "till": 4267, - "tilla": 26063, - "tillerson": 47738, - "tilly": 41199, - "tilt": 23601, - "tim": 1292, - "tim": 3863, - "timate": 4754, - "timb": 26627, - "timber": 14441, - "timber": 16246, - "timberlake": 28274, - "timbers": 39911, - "timberwolves": 41190, - "time": 3764, - "time": 788, - "timed": 32727, - "timehop": 19944, - "timel": 23549, - "timelapse": 48154, - "timeless": 15558, - "timeline": 11492, - "timely": 19250, - "timeout": 41536, - "timer": 19725, - "timers": 44574, - "times": 26445, - "times": 1661, - "timesnow": 45487, - "timesof": 32522, - "timesofindia": 44182, - "timetable": 31971, - "timeto": 29187, - "timing": 13624, - "timm": 22444, - "timmy": 33252, - "timo": 13390, - "timo": 33777, - "timothy": 42087, - "timothy": 18560, - "timp": 42166, - "tin": 1310, - "tin": 5420, - "tina": 9257, - "tinder": 24287, - "tine": 22341, - "ting": 7451, - "ting": 694, - "tinged": 44829, - "tings": 35332, - "tini": 26839, - "tink": 39278, - "tinker": 45272, - "tinker": 40910, - "tino": 20538, - "tins": 37359, - "tint": 40497, - "tinted": 42618, - "tiny": 21716, - "tiny": 5591, - "tio": 27562, - "tion": 2274, - "tion": 740, - "tional": 22460, - "tional": 2986, - "tionality": 24514, - "tionally": 12409, - "tionary": 8381, - "tione": 44318, - "tioned": 9083, - "tioning": 15528, - "tionist": 25732, - "tions": 1371, - "tious": 14255, - "tip": 15383, - "tip": 4623, - "tipoff": 44521, - "tipp": 32294, - "tipped": 31878, - "tipper": 38095, - "tipperary": 45612, - "tipping": 27827, - "tips": 3173, - "tipton": 48809, - "tiptuesday": 42112, - "tique": 37772, - "tir": 25467, - "tir": 38462, - "tire": 29128, - "tire": 9362, - "tired": 6533, - "tireless": 39835, - "tirelessly": 41548, - "tires": 15533, - "tiring": 42630, - "tiru": 36033, - "tis": 7839, - "tis": 7394, - "tise": 13745, - "tisgarh": 40538, - "tish": 45148, - "tish": 28784, - "tism": 27113, - "tiss": 28155, - "tissue": 15368, - "tissues": 32172, - "tist": 7902, - "tista": 25580, - "tists": 25944, - "tit": 1991, - "tit": 13202, - "tita": 40936, - "titan": 13496, - "titan": 15516, - "titanic": 20729, - "titanium": 24409, - "titans": 13066, - "titi": 17434, - "titi": 48504, - "title": 28033, - "title": 3644, - "titled": 9939, - "titles": 9780, - "tito": 26838, - "titus": 36102, - "tium": 21975, - "tiv": 1835, - "tiva": 41886, - "tive": 14640, - "tive": 1420, - "tively": 9883, - "tiveness": 20955, - "tives": 7570, - "tivity": 9859, - "tivo": 32162, - "tix": 5835, - "tiz": 19376, - "tj": 18890, - "tj": 18988, - "tk": 22344, - "tk": 20676, - "tko": 37347, - "tks": 38739, - "tl": 14325, - "tl": 8190, - "tland": 30697, - "tlap": 41976, - "tlc": 22047, - "tle": 39141, - "tle": 5825, - "tles": 39363, - "tless": 17427, - "tlot": 41080, - "tls": 47367, - "tly": 37483, - "tly": 1646, - "tm": 9430, - "tm": 7789, - "tman": 20796, - "tmc": 35263, - "tment": 26485, - "tml": 39445, - "tmltalk": 42260, - "tmnt": 32444, - "tmobile": 34901, - "tmr": 35906, - "tmrw": 16496, - "tms": 44496, - "tmund": 23801, - "tmw": 45827, - "tmz": 37248, - "tn": 3827, - "tn": 7248, - "tna": 21150, - "tnam": 8079, - "tner": 34922, - "tness": 35212, - "tney": 9523, - "tng": 35898, - "tnt": 20659, - "tnx": 38220, - "to": 580, - "to": 531, - "toa": 17916, - "toad": 26096, - "toast": 24654, - "toast": 10920, - "toasted": 23533, - "toaster": 39061, - "toasty": 44726, - "tob": 24260, - "tobac": 12611, - "tobacco": 13905, - "tobago": 39482, - "tobe": 17534, - "tobe": 28740, - "tober": 18162, - "tober": 2925, - "toberfest": 26249, - "tobi": 40335, - "tobi": 48374, - "tobias": 32464, - "tobin": 42466, - "toby": 29659, - "toby": 18333, - "toc": 41907, - "toc": 30643, - "tock": 25274, - "tod": 38239, - "tod": 33568, - "toda": 47141, - "todas": 36150, - "today": 11800, - "today": 721, - "todayin": 32957, - "todays": 13513, - "todayshow": 29739, - "todd": 10398, - "todd": 9951, - "toddler": 17772, - "toddlers": 36719, - "toddy": 38926, - "todo": 48857, - "todo": 23087, - "todos": 33355, - "toe": 47756, - "toe": 11344, - "toes": 16511, - "tof": 6659, - "toff": 27319, - "toffee": 34880, - "tofficial": 47953, - "tofthe": 23678, - "toftheday": 20566, - "tofu": 24692, - "tog": 45715, - "toge": 1903, - "together": 17858, - "together": 1952, - "togo": 26729, - "tography": 33968, - "toh": 26851, - "toi": 7472, - "toi": 26941, - "toid": 49124, - "toile": 43148, - "toilet": 11071, - "toilets": 24027, - "toire": 39534, - "tok": 16690, - "tok": 27010, - "token": 32634, - "token": 17134, - "tokens": 23562, - "tokyo": 35038, - "tokyo": 6667, - "tol": 4678, - "tol": 32962, - "told": 3527, - "tole": 15677, - "toledo": 19812, - "toler": 12150, - "tolerance": 20377, - "tolerant": 38536, - "tolerate": 35556, - "tolkien": 32989, - "toll": 44090, - "toll": 14155, - "tollywood": 42016, - "tology": 34799, - "tom": 999, - "tom": 2435, - "toma": 42360, - "toma": 44710, - "tomas": 35944, - "tomas": 27178, - "tomat": 12041, - "tomato": 9867, - "tomatoes": 13004, - "tomb": 37187, - "tomb": 15582, - "tombs": 48613, - "tombstone": 45729, - "tome": 24137, - "tome": 24283, - "tomi": 46290, - "tomlin": 46649, - "tomlinson": 17484, - "tommorow": 42871, - "tommy": 16573, - "tommy": 8876, - "tomo": 31223, - "tomo": 34434, - "tomor": 1277, - "tomorrow": 19728, - "tomorrow": 1293, - "tomorrowland": 34951, - "tomorrows": 32258, - "tomorrowspaper": 35005, - "tomorrowspaperstoday": 35190, - "tomp": 43544, - "tompkins": 49068, - "toms": 10545, - "tomy": 18730, - "ton": 838, - "ton": 917, - "tona": 13459, - "tone": 32366, - "tone": 8408, - "toned": 29426, - "toner": 40614, - "tones": 14744, - "tong": 21510, - "tonga": 37882, - "tongue": 44820, - "tongue": 13626, - "tongues": 39837, - "toni": 17766, - "toni": 17171, - "tonic": 17808, - "tonics": 34647, - "tonight": 1009, - "tonights": 23312, - "tonite": 13449, - "tonka": 42781, - "tonline": 45867, - "tonne": 42450, - "tonnes": 24813, - "tons": 7555, - "tony": 9150, - "tony": 4767, - "tonyawards": 46068, - "too": 1843, - "too": 1256, - "took": 2280, - "tool": 13718, - "tool": 5999, - "toolbox": 46599, - "toolkit": 29849, - "tools": 5771, - "toom": 27550, - "toon": 24664, - "toon": 19701, - "toonami": 48336, - "toons": 35345, - "toor": 42590, - "tooth": 15316, - "tooth": 12030, - "toothbrush": 36841, - "toothpaste": 37322, - "tooting": 42969, - "top": 5534, - "top": 1253, - "topaz": 46125, - "tope": 32149, - "tope": 42239, - "topeka": 46884, - "topia": 29618, - "topic": 8720, - "topical": 37464, - "topics": 11916, - "topless": 37415, - "topo": 23008, - "topoli": 30152, - "topp": 19529, - "topped": 12588, - "topper": 31780, - "toppers": 41651, - "topping": 21071, - "toppings": 47554, - "topps": 20201, - "tops": 8154, - "topshop": 40953, - "topus": 21495, - "tor": 937, - "tor": 1208, - "tora": 45147, - "torah": 37945, - "toral": 45282, - "torch": 31921, - "torch": 15820, - "tore": 38066, - "tore": 19385, - "tored": 38046, - "torg": 33214, - "tori": 17689, - "tori": 17539, - "toria": 23732, - "torial": 28029, - "torian": 48399, - "tories": 14193, - "torino": 29178, - "torio": 34235, - "torn": 8572, - "torn": 18023, - "tornad": 24676, - "tornado": 9062, - "tornadoes": 28254, - "toro": 17892, - "toron": 37407, - "toronto": 16866, - "toronto": 4514, - "torpe": 34093, - "torpedo": 46582, - "torquay": 45738, - "torque": 31940, - "torre": 39563, - "torre": 38009, - "torrent": 42317, - "torrential": 41158, - "torres": 16049, - "tors": 2546, - "tortilla": 32683, - "torto": 24170, - "tortoise": 30178, - "torture": 16013, - "tortured": 29900, - "tory": 29390, - "tory": 4214, - "tos": 6094, - "tosc": 37719, - "tose": 38154, - "tosh": 17109, - "toshi": 31744, - "toss": 19656, - "tossed": 31296, - "tot": 4618, - "tot": 23659, - "total": 13507, - "total": 4445, - "totally": 5440, - "totals": 25772, - "tote": 48145, - "tote": 19031, - "totem": 45376, - "totes": 37199, - "tothe": 12222, - "toto": 39823, - "tots": 24978, - "totten": 14360, - "tottenham": 14889, - "tou": 1879, - "tou": 29261, - "touch": 9480, - "touch": 4526, - "touchdown": 18664, - "touchdowns": 37905, - "touched": 13190, - "touches": 14832, - "touching": 14088, - "touchscreen": 39095, - "tough": 12063, - "tough": 5499, - "tougher": 33722, - "toughest": 23773, - "toughness": 45522, - "toulou": 27145, - "toulouse": 30267, - "tour": 2710, - "tour": 1760, - "tourde": 39247, - "toured": 27654, - "touri": 4224, - "touring": 11853, - "tourism": 23661, - "tourism": 6556, - "tourist": 12123, - "tourists": 15546, - "tournament": 4097, - "tournaments": 23058, - "tourney": 12603, - "tours": 8948, - "tous": 37424, - "tout": 22300, - "touts": 41274, - "tov": 28970, - "tow": 11557, - "tow": 18653, - "toward": 8508, - "towards": 4447, - "towed": 45419, - "towel": 15953, - "towels": 26578, - "tower": 26669, - "tower": 4730, - "towering": 39444, - "towers": 12701, - "towie": 44613, - "towin": 45819, - "towing": 36963, - "town": 4068, - "town": 1605, - "townfc": 33981, - "townhall": 33408, - "townhouse": 40178, - "towns": 14173, - "townsend": 26826, - "township": 14622, - "townsville": 47330, - "towork": 48233, - "tox": 7742, - "tox": 16145, - "toxic": 27436, - "toxic": 12348, - "toxicity": 41234, - "toxin": 48899, - "toxins": 36618, - "toy": 14387, - "toy": 5988, - "toya": 37602, - "toyo": 7644, - "toyota": 8908, - "toys": 39508, - "toys": 7162, - "tp": 23760, - "tp": 15188, - "tpp": 29411, - "tps": 35246, - "tq": 43066, - "tr": 635, - "tr": 6337, - "tra": 752, - "tra": 2483, - "trac": 2266, - "trace": 48611, - "trace": 14767, - "traced": 47956, - "traces": 30913, - "tracey": 25558, - "tracing": 27897, - "track": 10887, - "track": 2700, - "tracked": 27049, - "tracker": 18123, - "tracking": 10428, - "tracklist": 39777, - "tracks": 7579, - "tract": 4690, - "traction": 10644, - "tractor": 14607, - "tractors": 37854, - "tracy": 32984, - "tracy": 15508, - "trad": 48716, - "trad": 38037, - "trade": 10457, - "trade": 3629, - "traded": 18860, - "trademark": 25011, - "trader": 17700, - "traders": 19112, - "trades": 18519, - "trading": 40083, - "trading": 6520, - "tradio": 20689, - "tradition": 20838, - "tradition": 8784, - "traditional": 41113, - "traditional": 5604, - "traditionally": 35532, - "traditions": 18016, - "traf": 3227, - "trafal": 32461, - "trafalgar": 36969, - "traff": 31571, - "traffic": 12080, - "traffic": 3399, - "trafficking": 15983, - "trafford": 22912, - "trage": 12430, - "tragedy": 14082, - "tragic": 14828, - "tragically": 39599, - "trail": 11523, - "trail": 4921, - "trailblazer": 41015, - "trailblazers": 35954, - "trailer": 4700, - "trailers": 24862, - "trailing": 37427, - "trails": 10633, - "train": 9122, - "train": 3231, - "trained": 10874, - "trainee": 25795, - "trainees": 30382, - "trainer": 9767, - "trainers": 18871, - "training": 34508, - "training": 2199, - "trains": 9541, - "trait": 35160, - "traitor": 31760, - "traitors": 42633, - "traits": 25748, - "trajec": 42042, - "trak": 24065, - "tral": 14609, - "tram": 9800, - "tram": 17500, - "tramp": 46289, - "trampol": 32905, - "trampoline": 42800, - "tramrahim": 35220, - "tran": 1357, - "tran": 22031, - "trance": 30584, - "trance": 18671, - "trancefamily": 39630, - "trane": 35779, - "tranqu": 18912, - "tranquil": 35764, - "tranquility": 36688, - "trans": 1826, - "trans": 8126, - "transaction": 24881, - "transactions": 21653, - "transat": 37872, - "transatlantic": 40703, - "transc": 21073, - "transcend": 47087, - "transcript": 39008, - "transcription": 48765, - "transfer": 22659, - "transfer": 7134, - "transferred": 29700, - "transferring": 40924, - "transfers": 21621, - "transform": 8142, - "transform": 12288, - "transformation": 34204, - "transformation": 7832, - "transformational": 47135, - "transformationtuesday": 36511, - "transformative": 38106, - "transformed": 17453, - "transformer": 38235, - "transformers": 17843, - "transforming": 44470, - "transforming": 19251, - "transforms": 30312, - "transgender": 17732, - "transi": 32236, - "transit": 10174, - "transiti": 22939, - "transition": 11391, - "transitional": 41519, - "transitioning": 43586, - "transitions": 39374, - "transl": 12243, - "translate": 22655, - "translated": 20752, - "translates": 36334, - "translating": 42156, - "translation": 12153, - "translations": 41367, - "translator": 36230, - "translucent": 49052, - "transm": 18861, - "transmission": 16103, - "transmitted": 48605, - "transmitter": 40457, - "transp": 11726, - "transpa": 18524, - "transparen": 16108, - "transparency": 16828, - "transparent": 19017, - "transpl": 16038, - "transplant": 41871, - "transplant": 18771, - "transplantation": 45207, - "transpor": 19406, - "transport": 10231, - "transport": 7362, - "transportation": 10911, - "transported": 29089, - "transporter": 43568, - "transporting": 42259, - "trap": 36224, - "trap": 9677, - "trape": 42435, - "trapped": 15592, - "traps": 28517, - "tras": 30638, - "trash": 39215, - "trash": 9798, - "traum": 22263, - "trauma": 13846, - "traumati": 46613, - "traumatic": 29958, - "trav": 7586, - "trav": 46955, - "trave": 35357, - "travel": 2824, - "travel": 1949, - "travelblog": 35957, - "travelblogger": 25494, - "travelchat": 46455, - "traveled": 20384, - "traveler": 17794, - "travelers": 20644, - "travelgram": 40069, - "traveling": 9365, - "travelled": 23428, - "traveller": 22546, - "travellers": 29583, - "travelling": 11190, - "travelphotography": 22808, - "travelpics": 32293, - "travels": 11472, - "traveltips": 36260, - "traveltuesday": 16713, - "traverse": 35058, - "travi": 46971, - "travis": 27441, - "travis": 12287, - "traw": 42288, - "trax": 34421, - "tray": 38470, - "tray": 14621, - "trays": 39798, - "trc": 41803, - "tre": 975, - "tre": 6033, - "treach": 46005, - "tread": 26182, - "tread": 35658, - "treadmill": 37780, - "treas": 8591, - "treason": 28103, - "treasure": 9922, - "treasured": 48068, - "treasurer": 26985, - "treasures": 16500, - "treasury": 20956, - "treat": 3968, - "treat": 3901, - "treated": 9772, - "treating": 13842, - "treatment": 4869, - "treatments": 15839, - "treats": 8878, - "treaty": 19967, - "treble": 33194, - "trecht": 33812, - "tree": 13354, - "tree": 2677, - "treehouse": 42387, - "trees": 4682, - "trek": 13236, - "trek": 8136, - "trekking": 25293, - "trell": 35159, - "tremb": 44043, - "tremend": 14659, - "tremendous": 15988, - "tren": 2579, - "trench": 23846, - "trenches": 38723, - "trend": 19986, - "trend": 6643, - "trending": 6087, - "trends": 7015, - "trendsetter": 46666, - "trendy": 23072, - "trent": 45885, - "trent": 15548, - "trenton": 37470, - "tres": 23569, - "tress": 4733, - "tresses": 24273, - "trevor": 23437, - "trevor": 13219, - "trex": 42114, - "trey": 36670, - "trey": 16939, - "tri": 924, - "tri": 9618, - "triad": 45602, - "trial": 5991, - "trials": 10992, - "triangle": 14615, - "triathlon": 18080, - "trib": 45151, - "tribal": 16629, - "tribe": 19943, - "tribe": 11365, - "tribeca": 35184, - "tribes": 26546, - "tribu": 3028, - "tribun": 14311, - "tribunal": 32911, - "tribune": 18556, - "tribute": 5493, - "tributes": 15537, - "tric": 9511, - "tric": 4081, - "trich": 39519, - "trick": 17177, - "trick": 8172, - "tricks": 13177, - "tricky": 22319, - "trics": 31437, - "trident": 35491, - "tridge": 18722, - "tried": 4554, - "tries": 4315, - "trife": 48962, - "trigge": 30509, - "trigger": 16158, - "triggered": 30924, - "triggers": 37319, - "tright": 29915, - "tril": 40626, - "trill": 39297, - "trilli": 39350, - "trillion": 20160, - "trilo": 15183, - "trilogy": 16862, - "trim": 14182, - "trimmed": 40657, - "trin": 6628, - "trinidad": 26244, - "trinity": 30744, - "trinity": 12267, - "trio": 10263, - "trip": 23421, - "trip": 2529, - "tripad": 37189, - "tripadvisor": 38708, - "triple": 16519, - "triple": 7673, - "triplets": 48601, - "tripod": 36141, - "tripoli": 40095, - "trippin": 43073, - "tripping": 35229, - "trippy": 35137, - "trips": 12292, - "tris": 29690, - "trish": 40511, - "trish": 37179, - "trisha": 39152, - "tristan": 25497, - "trit": 37087, - "triton": 45437, - "triu": 14782, - "trium": 21065, - "triumph": 26507, - "triumph": 15307, - "triumphant": 41918, - "trivi": 21228, - "trivia": 10642, - "triviatuesday": 45499, - "trix": 41017, - "tro": 1046, - "tro": 3332, - "trock": 44368, - "trojan": 30653, - "trojans": 25310, - "trol": 10306, - "troll": 39737, - "troll": 17103, - "trolley": 25124, - "trolling": 28552, - "trolls": 20890, - "tromb": 32390, - "trombone": 44423, - "tron": 19057, - "tron": 10684, - "tronic": 34258, - "tronics": 34397, - "troom": 23691, - "troop": 12492, - "troop": 24054, - "trooper": 18327, - "troopers": 23576, - "troops": 10109, - "trop": 31585, - "trope": 41150, - "trophies": 20998, - "trophy": 42676, - "trophy": 6502, - "tropic": 21794, - "tropic": 36736, - "tropical": 41699, - "tropical": 8686, - "tropics": 36940, - "tros": 40456, - "trose": 36022, - "trot": 30453, - "trotter": 38287, - "trou": 5181, - "troubad": 49037, - "trouble": 25669, - "trouble": 7848, - "troubled": 25568, - "troubles": 27254, - "trough": 39761, - "troupe": 34803, - "trous": 19727, - "trousers": 23172, - "trout": 14853, - "trove": 45350, - "trow": 46914, - "troy": 26283, - "troy": 12819, - "trs": 24770, - "tru": 931, - "tru": 25326, - "truck": 14781, - "truck": 4629, - "trucker": 45918, - "truckers": 43404, - "trucking": 26208, - "trucks": 9569, - "trude": 39017, - "trudeau": 15752, - "true": 13096, - "true": 2328, - "truec": 37583, - "truelove": 45711, - "truffle": 23064, - "truffles": 37057, - "truly": 4545, - "trum": 11766, - "trum": 11399, - "truman": 29414, - "trump": 9124, - "trump": 1797, - "trumpet": 23681, - "trumpp": 45550, - "trumprussia": 39135, - "trumps": 29793, - "trumptrain": 43595, - "trun": 16163, - "trun": 46661, - "trunk": 18347, - "trunks": 38531, - "truro": 43507, - "truss": 46080, - "trust": 17691, - "trust": 3876, - "truste": 17356, - "trusted": 16538, - "trustee": 30803, - "trustees": 28853, - "trusting": 33221, - "trusts": 27507, - "trustworthy": 46840, - "trusty": 37955, - "truth": 21335, - "truth": 4319, - "truths": 27179, - "trx": 31620, - "try": 4487, - "try": 1209, - "tryin": 31085, - "trying": 2551, - "tryna": 15702, - "tryout": 43832, - "tryouts": 28053, - "ts": 2290, - "ts": 590, - "tsa": 25977, - "tsal": 20438, - "tsb": 45015, - "tsc": 37437, - "tsch": 38778, - "tsd": 20611, - "tse": 49144, - "tsfor": 42654, - "tsford": 32823, - "tsh": 42872, - "tshirt": 14907, - "tshirts": 29377, - "tsi": 40048, - "tsi": 37867, - "tsk": 43600, - "tsla": 35681, - "tsm": 43452, - "tsman": 20046, - "tsn": 44921, - "tsn": 26896, - "tson": 42353, - "tson": 47140, - "tsp": 34230, - "tsu": 13950, - "tsu": 20175, - "tsun": 19155, - "tsunami": 24286, - "tsville": 29080, - "tt": 971, - "tt": 1402, - "tta": 2646, - "ttc": 27668, - "tte": 23105, - "tte": 3070, - "tted": 15163, - "tten": 11351, - "tten": 17479, - "tter": 18691, - "tter": 5165, - "tters": 6318, - "ttes": 9293, - "tti": 5237, - "ttin": 36589, - "tting": 1188, - "ttino": 47389, - "ttip": 46993, - "ttle": 9253, - "ttm": 46838, - "tto": 8759, - "tto": 8105, - "tton": 10562, - "ttot": 12480, - "ttp": 30828, - "ttr": 47589, - "tts": 11570, - "ttt": 17256, - "tttt": 33119, - "ttu": 44006, - "ttv": 24281, - "tty": 11457, - "tty": 1856, - "tu": 764, - "tu": 5760, - "tua": 41344, - "tual": 4799, - "tuan": 37297, - "tub": 34907, - "tub": 15450, - "tube": 38229, - "tube": 3308, - "tuber": 30371, - "tuberculo": 42606, - "tuberculosis": 43129, - "tubes": 22870, - "tubing": 40794, - "tubs": 41705, - "tubular": 48786, - "tuc": 14456, - "tuc": 43871, - "tuck": 22398, - "tucked": 26923, - "tucker": 39703, - "tucker": 15726, - "tucket": 32677, - "tucson": 17250, - "tudor": 24547, - "tue": 17515, - "tues": 2283, - "tues": 12113, - "tuesday": 10209, - "tuesday": 2519, - "tuesdaymotivation": 25432, - "tuesdays": 23195, - "tuesdaythoughts": 17988, - "tuf": 44510, - "tuff": 38868, - "tug": 47032, - "tug": 27902, - "tuition": 21129, - "tuk": 39271, - "tuk": 14993, - "tul": 9069, - "tul": 40837, - "tula": 36332, - "tulane": 44893, - "tulip": 28389, - "tulips": 30886, - "tulsa": 18850, - "tum": 12932, - "tum": 8843, - "tumb": 8831, - "tumble": 38284, - "tumbler": 48790, - "tumbling": 46226, - "tumblr": 11841, - "tummy": 26053, - "tumor": 22616, - "tumors": 39894, - "tumour": 45129, - "tun": 1415, - "tun": 21349, - "tuna": 15037, - "tundra": 39899, - "tune": 11427, - "tune": 3300, - "tuned": 5898, - "tunein": 16809, - "tuner": 42905, - "tunes": 31688, - "tunes": 10810, - "tunesapp": 32550, - "tung": 47940, - "tung": 31092, - "tuni": 16270, - "tunic": 43495, - "tuning": 19585, - "tunisia": 23346, - "tunnel": 11096, - "tunnels": 29814, - "tuous": 28738, - "tup": 37956, - "tup": 4507, - "tupac": 31506, - "tups": 44855, - "tur": 985, - "tur": 17182, - "tura": 16127, - "tural": 45143, - "tural": 4261, - "turb": 18973, - "turban": 48515, - "turbine": 26880, - "turbines": 38863, - "turbo": 23578, - "turbo": 13668, - "turbul": 31100, - "turbulent": 47871, - "ture": 4321, - "ture": 941, - "tured": 3987, - "turer": 11993, - "turers": 16956, - "tures": 2400, - "turf": 36762, - "turf": 12510, - "turi": 11896, - "turin": 36251, - "turing": 5812, - "turismo": 30202, - "turk": 8254, - "turk": 32507, - "turkey": 35977, - "turkey": 4790, - "turkeys": 37991, - "turkish": 48199, - "turkish": 9278, - "turks": 34344, - "turmeric": 34044, - "turmoil": 37751, - "turn": 5522, - "turn": 2105, - "turnaround": 32719, - "turnbull": 27863, - "turned": 3771, - "turner": 42867, - "turner": 8777, - "turning": 4976, - "turno": 21377, - "turnout": 11654, - "turnover": 30794, - "turnpike": 38301, - "turns": 3185, - "turnt": 28887, - "turntable": 37953, - "turnup": 30591, - "turo": 29224, - "turquo": 19390, - "turquoise": 19899, - "turt": 13716, - "turtle": 35943, - "turtle": 10912, - "turtles": 17862, - "tus": 24828, - "tus": 7079, - "tusc": 17909, - "tuscal": 42638, - "tuscaloosa": 44375, - "tuscan": 42865, - "tuscany": 20885, - "tuss": 31741, - "tut": 35121, - "tutor": 10054, - "tutor": 27858, - "tutorial": 12857, - "tutorials": 30973, - "tutoring": 37532, - "tutti": 46880, - "tutu": 35845, - "tux": 28720, - "tux": 49186, - "tuxedo": 40173, - "tv": 3197, - "tv": 1583, - "tvc": 49190, - "tvd": 25889, - "tvmiaw": 38554, - "tvn": 44232, - "tvs": 27114, - "tvtime": 19947, - "tvxq": 43968, - "tw": 966, - "tw": 12842, - "twa": 46954, - "twain": 30689, - "twal": 48126, - "tware": 5707, - "twc": 41217, - "twd": 29440, - "twd": 19343, - "twdfamily": 38218, - "twe": 18365, - "tweak": 48870, - "tweaks": 42661, - "twee": 1330, - "tweed": 26904, - "tweeps": 14928, - "tweet": 11826, - "tweet": 1842, - "tweeta": 32024, - "tweetapicture": 40596, - "tweeted": 7841, - "tweeter": 32876, - "tweeters": 31713, - "tweeting": 8901, - "tweets": 3560, - "tweetyour": 45033, - "twel": 14476, - "twelf": 39443, - "twelfth": 44072, - "twell": 38722, - "twell": 30162, - "twelve": 19694, - "twent": 27027, - "twenti": 35167, - "twenty": 13016, - "twentyon": 39609, - "twentyonepilots": 40007, - "twer": 13923, - "twerk": 28506, - "twi": 5537, - "twice": 6970, - "twick": 34326, - "twickenham": 39619, - "twil": 12804, - "twili": 35754, - "twilight": 46366, - "twilight": 14512, - "twill": 43703, - "twin": 9342, - "twin": 6769, - "twine": 42775, - "twinkle": 36545, - "twinning": 30156, - "twinpeaks": 32042, - "twins": 8040, - "twist": 10589, - "twisted": 18233, - "twister": 45933, - "twists": 34149, - "twit": 1643, - "twit": 18704, - "twitart": 27709, - "twitch": 13251, - "twitch": 9153, - "twitter": 7546, - "twitter": 1989, - "twitterkurds": 32722, - "twitterstorians": 35389, - "two": 17211, - "two": 1237, - "twol": 31964, - "twood": 40404, - "twood": 13245, - "twp": 33283, - "twright": 46778, - "twt": 6825, - "twx": 26830, - "twy": 45861, - "tx": 6636, - "tx": 5200, - "txhsfb": 34757, - "txlege": 26995, - "txst": 40761, - "txt": 24595, - "txwx": 22995, - "ty": 1260, - "ty": 744, - "tya": 41273, - "tycoon": 36803, - "tye": 43097, - "tyfree": 41215, - "tyga": 41952, - "tying": 22559, - "tyl": 47537, - "tyler": 14787, - "tyler": 7058, - "tym": 45772, - "tyne": 27000, - "tyne": 29729, - "tyour": 16823, - "type": 15673, - "type": 3877, - "typed": 40753, - "typeface": 44969, - "types": 7543, - "typewriter": 42180, - "typho": 17486, - "typhoon": 21110, - "typic": 21648, - "typical": 9854, - "typically": 23175, - "typing": 20102, - "typo": 18831, - "typo": 29076, - "typography": 24332, - "tyr": 15590, - "tyran": 46921, - "tyranny": 35402, - "tyre": 38330, - "tyre": 16864, - "tyres": 21376, - "tyrone": 30226, - "tyson": 16616, - "tz": 7710, - "tz": 4983, - "tzer": 45267, - "tzky": 47127, - "tzman": 46032, - "tzu": 34354, - "té": 27208, - "té": 39694, - "u": 84, - "u": 340, - "ua": 34075, - "ua": 8441, - "uaap": 46753, - "uaap": 43774, - "uab": 35587, - "uae": 9752, - "ual": 1921, - "ually": 10767, - "uan": 33062, - "uas": 38339, - "uav": 30303, - "ub": 18430, - "ub": 13494, - "uba": 29768, - "ubc": 42479, - "ubc": 29455, - "ube": 30892, - "uber": 25896, - "uber": 10668, - "ubi": 26758, - "ubio": 32867, - "ubiquit": 48129, - "ubis": 28248, - "ubisoft": 32051, - "ubs": 43851, - "ubun": 28184, - "ubuntu": 30791, - "uc": 4903, - "uc": 12438, - "uca": 30942, - "ucc": 44844, - "ucc": 29138, - "ucci": 30746, - "uccino": 30409, - "ucd": 44746, - "ucd": 43514, - "ucf": 24414, - "uch": 19465, - "uch": 22394, - "uchi": 37473, - "uci": 46354, - "uci": 28925, - "uck": 34189, - "ucl": 12013, - "ucl": 13647, - "ucla": 37667, - "ucla": 17259, - "ucn": 49036, - "uconn": 30549, - "ud": 6560, - "ud": 5765, - "uda": 22800, - "udaipur": 49385, - "uddin": 43035, - "ude": 37016, - "ude": 35194, - "ue": 16696, - "ue": 1190, - "uefa": 19189, - "uel": 24231, - "uer": 45951, - "ues": 2526, - "uf": 17777, - "uf": 19230, - "ufc": 20396, - "ufc": 6490, - "uff": 45701, - "ufo": 19443, - "ufos": 48234, - "ug": 3754, - "ug": 16061, - "uga": 16056, - "ugand": 25965, - "uganda": 11125, - "ugandan": 44206, - "ugby": 30658, - "ugh": 39736, - "ugh": 12755, - "ugliest": 43543, - "ugly": 36070, - "ugly": 8159, - "ugu": 18144, - "uh": 17661, - "uh": 9219, - "uhc": 44974, - "uhh": 35938, - "uhhh": 45270, - "uhm": 35614, - "uhur": 29434, - "uhuru": 35690, - "ui": 17326, - "ui": 11458, - "uil": 29395, - "uit": 30696, - "uit": 47584, - "uj": 33266, - "uji": 39672, - "uk": 2294, - "uk": 1432, - "uka": 23294, - "uke": 48836, - "uke": 28577, - "uked": 48987, - "uki": 37435, - "uki": 9009, - "ukin": 34996, - "ukip": 20360, - "uklabour": 36902, - "ukmfg": 38764, - "uko": 33562, - "ukone": 24682, - "ukrain": 15468, - "ukraine": 7768, - "ukrainian": 16927, - "ukrunchat": 34481, - "uku": 29541, - "uku": 36082, - "ukulele": 39094, - "ul": 914, - "ul": 6625, - "ula": 34104, - "ula": 9506, - "ular": 4927, - "ulary": 21701, - "ulate": 20467, - "ulation": 32896, - "ule": 35616, - "ules": 26274, - "ulf": 49331, - "uli": 41841, - "uli": 22174, - "ull": 33254, - "ulla": 30577, - "ullah": 45310, - "ullivan": 45252, - "ulls": 37418, - "ulo": 46084, - "ulo": 36738, - "ulous": 42490, - "ulous": 4281, - "ulously": 20167, - "ulster": 29709, - "ulster": 24639, - "ult": 4380, - "ulti": 11925, - "ulties": 21884, - "ultimat": 16522, - "ultimate": 34684, - "ultimate": 5377, - "ultimatefan": 48372, - "ultimatefanlive": 48644, - "ultimately": 23023, - "ultr": 25636, - "ultra": 11398, - "ultra": 8118, - "ultram": 44519, - "ultrasound": 29717, - "ulture": 22272, - "ulty": 8036, - "ulu": 41815, - "ulu": 15659, - "ulum": 17235, - "uly": 33220, - "ulysses": 46114, - "um": 1622, - "um": 1008, - "uma": 29982, - "uma": 9256, - "uman": 27112, - "umar": 25656, - "umass": 39390, - "umatic": 45006, - "umb": 7493, - "umber": 19195, - "umbrel": 34773, - "umbrella": 17143, - "umbrellas": 42782, - "umbria": 39287, - "umc": 39491, - "umd": 42067, - "ume": 38480, - "umen": 42832, - "uments": 25924, - "umer": 23539, - "umes": 21403, - "umi": 48772, - "umi": 15458, - "umich": 41294, - "umin": 31542, - "umm": 26129, - "umm": 21215, - "ummer": 47628, - "ummm": 33665, - "umni": 31739, - "ump": 22224, - "umpire": 36214, - "ums": 8643, - "umu": 39788, - "un": 569, - "un": 2271, - "una": 6385, - "unable": 17793, - "unacceptable": 25234, - "unanim": 20800, - "unanimous": 33520, - "unanimously": 31798, - "unanswered": 43611, - "unarmed": 41541, - "unas": 41366, - "unavailable": 48430, - "unaware": 33347, - "unbeat": 37056, - "unbeatable": 40267, - "unbeaten": 19228, - "unbeliev": 11383, - "unbelievable": 13306, - "unbelievably": 33781, - "unborn": 37257, - "unboxing": 32866, - "unbreakable": 32956, - "unbroken": 49271, - "unc": 24921, - "unc": 15322, - "uncanny": 32556, - "uncertain": 30384, - "uncertainty": 23956, - "unch": 1527, - "unchanged": 34272, - "uncharted": 34560, - "unci": 25521, - "unciation": 34117, - "uncle": 31537, - "uncle": 8002, - "unclear": 32955, - "uncles": 45335, - "uncomfortable": 22470, - "uncommon": 34888, - "uncondition": 46561, - "unconditional": 31112, - "unconscious": 34791, - "unconstitutional": 43585, - "unconventional": 39440, - "uncover": 33031, - "uncovered": 28234, - "uncture": 38736, - "uncut": 41056, - "und": 9762, - "und": 9732, - "unda": 39932, - "undant": 25377, - "unday": 29338, - "unde": 45226, - "undead": 40105, - "undecided": 49368, - "undefeated": 15326, - "undeni": 38424, - "under": 1473, - "under": 1798, - "underage": 45669, - "underattack": 35075, - "undercover": 21595, - "underdog": 44266, - "undere": 21675, - "underestim": 23348, - "underestimate": 31794, - "undergo": 31545, - "undergoing": 26419, - "undergrad": 38331, - "undergraduate": 24320, - "underground": 9396, - "undering": 30826, - "underlying": 31812, - "undermine": 42839, - "underneath": 20857, - "underrated": 19494, - "unders": 20376, - "understand": 47582, - "understand": 4600, - "understanding": 7522, - "understands": 21607, - "understatement": 38296, - "understood": 17303, - "undertaker": 40144, - "undertaking": 49067, - "undertale": 48283, - "underthe": 41161, - "underwater": 14760, - "underway": 6273, - "underwear": 21154, - "underwood": 21474, - "underworld": 34760, - "undi": 23845, - "undisclosed": 39334, - "undo": 35454, - "undocumented": 35414, - "undoub": 38836, - "undoubtedly": 42204, - "undp": 26691, - "une": 4522, - "une": 10966, - "unearth": 32716, - "unearthed": 36632, - "unemp": 15139, - "unemployed": 32721, - "unemployment": 19350, - "unes": 6394, - "unesco": 16216, - "uneven": 43204, - "unex": 9484, - "unexpe": 10802, - "unexpec": 31829, - "unexpected": 12293, - "unexpectedly": 35622, - "unf": 29285, - "unfair": 22193, - "unfinished": 26526, - "unfit": 45367, - "unfold": 38681, - "unfollow": 38797, - "unfor": 14010, - "unforgettable": 16173, - "unfortun": 10194, - "unfortunate": 22361, - "unfortunately": 12863, - "unfpa": 45048, - "ung": 10439, - "ung": 4334, - "unga": 19151, - "ungsoo": 25582, - "unh": 25365, - "unhappy": 26528, - "unhcr": 43451, - "unhealthy": 30994, - "uni": 1107, - "uni": 5926, - "unic": 7648, - "unicef": 38286, - "unicef": 19259, - "unicorn": 15660, - "unicorns": 35183, - "unidenti": 33707, - "unidentified": 35563, - "unification": 45036, - "unified": 20876, - "uniform": 11075, - "uniforms": 17838, - "unil": 32388, - "unilever": 48654, - "uniof": 21218, - "union": 14210, - "union": 3503, - "unions": 18353, - "unis": 30482, - "unis": 39266, - "unisex": 27609, - "unison": 46694, - "unit": 28522, - "unit": 5695, - "unite": 15078, - "unite": 11305, - "uniteblue": 20935, - "united": 10898, - "united": 2690, - "unitedstates": 39636, - "unitedway": 47486, - "unites": 32061, - "uniting": 31318, - "units": 10394, - "unity": 38300, - "unity": 8581, - "univ": 36680, - "univ": 14896, - "univer": 15574, - "univers": 5855, - "universal": 19148, - "universal": 8754, - "universe": 6104, - "universi": 41692, - "universit": 26019, - "universities": 16408, - "university": 40728, - "university": 2182, - "universityof": 46158, - "unk": 5542, - "unknown": 8685, - "unl": 43807, - "unlawful": 42305, - "unle": 19677, - "unlea": 23893, - "unleash": 26706, - "unleashed": 27955, - "unless": 10602, - "unlike": 16694, - "unlikely": 18904, - "unlimited": 11015, - "unlock": 18649, - "unlocked": 16770, - "unlocking": 40810, - "unlucky": 35029, - "unlv": 42283, - "unmanned": 36751, - "unmatched": 46054, - "unn": 38364, - "unnamed": 44985, - "unnecessary": 24100, - "unner": 31481, - "unning": 43282, - "unnoticed": 42807, - "uno": 32446, - "uno": 17078, - "unofficial": 22506, - "unpacking": 43589, - "unpaid": 32811, - "unparalleled": 44396, - "unplugged": 31724, - "unpopular": 40232, - "unprece": 23054, - "unprecedented": 23344, - "unpredictable": 38684, - "unra": 45150, - "unreal": 46980, - "unreal": 15636, - "unrelated": 38644, - "unreleased": 29654, - "unrest": 36452, - "uns": 25908, - "unsafe": 32071, - "unsc": 36395, - "unseen": 19069, - "unsigned": 39346, - "unsolved": 40836, - "unsplash": 46196, - "unstable": 34730, - "unstopp": 22105, - "unstoppable": 23484, - "unsuccessful": 47478, - "unsung": 33015, - "unsure": 26396, - "unt": 19654, - "unt": 6537, - "until": 1942, - "untitled": 21309, - "unto": 19801, - "untold": 32206, - "untouch": 44509, - "untouched": 42764, - "unused": 29636, - "unusual": 12613, - "unusually": 36465, - "unve": 6685, - "unveil": 20483, - "unveiled": 13572, - "unveiling": 20327, - "unveils": 15057, - "unwanted": 25285, - "unwind": 34064, - "unya": 37142, - "uo": 30874, - "uo": 36162, - "uof": 11155, - "uoft": 37329, - "uon": 48144, - "uous": 40185, - "up": 1083, - "up": 705, - "upa": 31727, - "upbeat": 39201, - "upcoming": 4196, - "upcycled": 46552, - "upd": 3226, - "update": 2491, - "updated": 5974, - "updates": 4904, - "updating": 22792, - "uper": 38082, - "uper": 33056, - "upfront": 42064, - "upgrade": 10365, - "upgraded": 18577, - "upgrades": 21253, - "upgrading": 34368, - "uph": 14128, - "uphill": 42767, - "uphol": 26195, - "uphold": 43897, - "upholstery": 44556, - "upl": 41939, - "uplift": 45389, - "uplifting": 29546, - "upload": 13968, - "uploaded": 16793, - "uploading": 30145, - "upon": 23524, - "upon": 5067, - "upp": 19549, - "upp": 45946, - "upper": 22465, - "upper": 7067, - "upri": 15982, - "upright": 29818, - "uprising": 26006, - "upro": 28922, - "ups": 6926, - "upscale": 47501, - "upset": 11214, - "upsets": 42637, - "upside": 15362, - "upstairs": 21387, - "upstate": 33335, - "upstream": 45517, - "upthe": 31510, - "upto": 26575, - "upton": 31910, - "uptown": 23807, - "upward": 32526, - "upwards": 34915, - "uq": 39591, - "ur": 565, - "ur": 1775, - "ura": 29337, - "ura": 3544, - "urable": 40194, - "ural": 23547, - "ural": 33948, - "uran": 16197, - "uranium": 29850, - "urban": 7931, - "urban": 5800, - "urbanart": 40834, - "urd": 47880, - "urday": 19742, - "urdu": 29976, - "ure": 5514, - "ure": 726, - "ured": 4210, - "urer": 20864, - "ures": 2288, - "urg": 35995, - "urge": 14852, - "urged": 23790, - "urgency": 47612, - "urgent": 13693, - "urgently": 34534, - "urges": 16692, - "urging": 27748, - "uri": 11052, - "uri": 8699, - "urie": 46429, - "urin": 45245, - "urine": 28864, - "uring": 1351, - "url": 23464, - "urn": 38075, - "uro": 17343, - "uro": 5925, - "urology": 48585, - "urope": 14918, - "urs": 4794, - "urself": 31942, - "urst": 19181, - "urstruly": 34751, - "urstrulymahesh": 35314, - "ursula": 38390, - "urt": 24309, - "uru": 16322, - "uru": 11768, - "uruguay": 27931, - "urus": 14246, - "urve": 24583, - "ury": 8642, - "ury": 2106, - "us": 904, - "us": 718, - "usa": 9491, - "usa": 2547, - "usability": 46736, - "usable": 22890, - "usaf": 25017, - "usage": 19137, - "usaid": 34507, - "usair": 36742, - "usairforce": 42179, - "usarmy": 19132, - "usatoday": 40263, - "usav": 36056, - "usb": 10281, - "usc": 13346, - "usc": 14995, - "uscg": 43932, - "usd": 7485, - "usda": 25829, - "use": 4419, - "use": 1483, - "used": 32289, - "used": 2026, - "useful": 9784, - "useless": 20154, - "usemb": 39700, - "user": 21248, - "user": 7031, - "username": 28162, - "users": 7433, - "uses": 5282, - "useum": 45189, - "usf": 32385, - "usf": 28942, - "usgs": 35103, - "ush": 12001, - "ush": 18335, - "usher": 27411, - "ushi": 47734, - "usi": 25540, - "usic": 34909, - "usic": 16753, - "using": 1996, - "usky": 45778, - "usl": 42113, - "usm": 40041, - "usmc": 21678, - "usmnt": 30662, - "usn": 40579, - "usnavy": 24500, - "usnews": 43752, - "uso": 21539, - "usopen": 21782, - "usp": 26651, - "usps": 39980, - "usrc": 33274, - "uss": 11545, - "uss": 9260, - "ussia": 29553, - "ussoccer": 42828, - "ussr": 32697, - "ust": 35501, - "ust": 24725, - "usu": 4254, - "usu": 40434, - "usual": 6129, - "usually": 8296, - "usur": 45582, - "uswnt": 35255, - "ut": 1419, - "ut": 3641, - "uta": 42706, - "uta": 25925, - "utah": 27474, - "utah": 9312, - "utc": 18196, - "utd": 10493, - "ute": 16856, - "ute": 3130, - "uten": 32089, - "uter": 39197, - "utes": 2850, - "uth": 48819, - "uth": 44750, - "uti": 24568, - "util": 28824, - "utili": 17015, - "utilities": 27210, - "utility": 14941, - "utilize": 36861, - "utilized": 47604, - "utilizing": 40212, - "utm": 47853, - "utmost": 42352, - "uto": 18866, - "uto": 13683, - "utopia": 34433, - "utpol": 42605, - "utr": 48726, - "utrecht": 37216, - "uts": 11740, - "utsa": 37528, - "utt": 17096, - "uttar": 40168, - "uttarak": 33755, - "uttarakhand": 35655, - "utter": 18769, - "utter": 24558, - "utterly": 21353, - "utto": 42183, - "utv": 36351, - "utz": 45320, - "uu": 5702, - "uu": 14553, - "uuu": 44355, - "uuu": 27656, - "uuuu": 16720, - "uuuu": 40797, - "uv": 23777, - "uv": 15977, - "uva": 23908, - "uw": 13933, - "uw": 19166, - "uwe": 48785, - "uwu": 35544, - "ux": 9251, - "ux": 6213, - "uy": 31929, - "uy": 48113, - "uz": 19398, - "uz": 36991, - "uzbe": 43007, - "uzbekistan": 45024, - "uzzi": 48210, - "v": 85, - "v": 341, - "va": 4648, - "va": 1892, - "vaa": 37488, - "vable": 23088, - "vac": 3125, - "vac": 34085, - "vaca": 48215, - "vacancies": 26333, - "vacancy": 21247, - "vacant": 25262, - "vacation": 28336, - "vacation": 6561, - "vacations": 29002, - "vacay": 44716, - "vacc": 13342, - "vaccin": 19164, - "vaccinated": 48134, - "vaccination": 32518, - "vaccine": 47780, - "vaccine": 17493, - "vaccines": 25860, - "vach": 46211, - "vacu": 16058, - "vacuum": 18420, - "vad": 11880, - "vada": 46759, - "vader": 21908, - "vae": 39384, - "vag": 13015, - "vague": 42154, - "vah": 26921, - "vai": 26893, - "vai": 36802, - "vail": 21189, - "vain": 25538, - "vais": 28719, - "vaj": 34206, - "vak": 16288, - "vak": 41597, - "val": 1214, - "val": 1560, - "vala": 48525, - "valdez": 40617, - "vale": 35554, - "vale": 10820, - "valedic": 43525, - "valen": 12630, - "valence": 30225, - "valenci": 34183, - "valencia": 16559, - "valent": 3655, - "valent": 15300, - "valentin": 48631, - "valentina": 43741, - "valentine": 11208, - "valentine": 5876, - "valentines": 10259, - "valentinesday": 12369, - "valentino": 29624, - "valeri": 31951, - "valerie": 25592, - "valet": 45749, - "vali": 8230, - "valiant": 33804, - "valid": 15126, - "validation": 32536, - "valkyrie": 42326, - "vall": 23523, - "vall": 35295, - "vallarta": 47874, - "valle": 24857, - "valle": 29105, - "valley": 18354, - "valley": 3136, - "valleys": 28649, - "valor": 30930, - "vals": 7431, - "valu": 6291, - "valuable": 10056, - "valuation": 25894, - "value": 41358, - "value": 4602, - "valued": 17801, - "values": 8857, - "valve": 17001, - "valves": 33517, - "vam": 9983, - "vamo": 46718, - "vamos": 30346, - "vamp": 10680, - "vampi": 47017, - "vampire": 47576, - "vampire": 13220, - "vampires": 30868, - "vamps": 44810, - "van": 2446, - "van": 2451, - "vana": 20543, - "vanc": 6320, - "vance": 31447, - "vancou": 6750, - "vancouver": 31904, - "vancouver": 7208, - "vand": 11691, - "vandalism": 45664, - "vander": 16264, - "vanderbilt": 33524, - "vandy": 39268, - "vane": 43828, - "vaness": 13328, - "vanessa": 16836, - "vangogh": 47849, - "vanguard": 27916, - "vani": 15396, - "vani": 26459, - "vania": 10998, - "vanilla": 11974, - "vanished": 43783, - "vanishing": 48296, - "vanity": 48353, - "vanity": 22938, - "vans": 11711, - "vant": 26298, - "vantage": 31749, - "vanu": 42892, - "vanuatu": 48766, - "vap": 10462, - "vape": 25423, - "vape": 20219, - "vaping": 29403, - "vapor": 37167, - "vapor": 30729, - "vapori": 46183, - "var": 3187, - "var": 12998, - "vara": 47492, - "varan": 36585, - "varanasi": 39364, - "vard": 21866, - "vard": 8773, - "vardy": 47371, - "vare": 38159, - "vares": 42895, - "vargas": 32752, - "vari": 3354, - "variable": 26416, - "varian": 34334, - "variant": 20293, - "variants": 38312, - "variation": 26420, - "variations": 29025, - "varied": 32334, - "varies": 32543, - "varieties": 23805, - "variety": 8396, - "various": 7395, - "varsity": 43716, - "varsity": 8574, - "varun": 48120, - "varun": 22069, - "vary": 18855, - "varying": 36456, - "vas": 5669, - "vas": 5995, - "vasc": 40995, - "vascular": 19218, - "vase": 20431, - "vasi": 49092, - "vast": 24413, - "vast": 16414, - "vastly": 48257, - "vat": 11588, - "vat": 18363, - "vatican": 21030, - "vation": 37884, - "vau": 6391, - "vaugh": 25158, - "vaughan": 21392, - "vaughn": 29013, - "vaul": 27469, - "vault": 15240, - "vaus": 40217, - "vaux": 27403, - "vauxhall": 29173, - "vaw": 47952, - "vay": 48000, - "vaz": 38142, - "vb": 29365, - "vb": 8778, - "vball": 38329, - "vc": 28670, - "vc": 7952, - "vcs": 43528, - "vcu": 40102, - "vd": 9515, - "vday": 42055, - "ve": 673, - "ve": 563, - "vea": 43798, - "veal": 36616, - "veau": 24419, - "vec": 19912, - "vector": 40453, - "vector": 21533, - "ved": 19515, - "ved": 1102, - "veda": 44401, - "vedere": 45660, - "vedi": 47971, - "vee": 35708, - "vee": 17073, - "veen": 22432, - "veer": 21243, - "veer": 22058, - "veg": 9048, - "veg": 16460, - "vega": 22930, - "vegan": 15705, - "vegan": 5615, - "vegans": 48514, - "vegas": 20288, - "vegas": 4413, - "vege": 6219, - "vegetable": 15725, - "vegetables": 14119, - "vegetarian": 14600, - "vegetation": 33947, - "veggie": 19401, - "veggies": 16767, - "vehic": 3973, - "vehicle": 5299, - "vehicles": 8361, - "veil": 23516, - "vein": 29169, - "veins": 28867, - "veit": 30620, - "vel": 942, - "vel": 1287, - "vela": 34898, - "veld": 34011, - "veled": 15370, - "veli": 49166, - "veling": 37970, - "vell": 21173, - "vell": 32997, - "velo": 14357, - "velo": 33850, - "velocity": 23811, - "vels": 5109, - "velve": 37849, - "velvet": 11063, - "vely": 1708, - "vember": 3477, - "vement": 3129, - "vements": 11104, - "ven": 1240, - "ven": 1638, - "vena": 47442, - "vend": 10851, - "vending": 29202, - "vendor": 21261, - "vendors": 20353, - "vene": 5365, - "veness": 10516, - "venetian": 34336, - "venezia": 34139, - "venezu": 10939, - "venezuela": 12839, - "venezuelan": 34699, - "veng": 31526, - "venge": 27757, - "vengeance": 32057, - "veni": 31142, - "venice": 11010, - "vening": 47532, - "venison": 40037, - "venom": 42491, - "venom": 21588, - "vens": 20884, - "vent": 4373, - "vent": 5687, - "ventil": 39522, - "ventilation": 35066, - "venting": 15731, - "vention": 4122, - "vents": 12833, - "ventu": 48217, - "ventura": 20921, - "venture": 37046, - "venture": 12543, - "ventures": 20829, - "venue": 5097, - "venues": 18120, - "venus": 14691, - "ver": 624, - "ver": 667, - "vera": 13350, - "verage": 3725, - "verb": 34952, - "verbal": 26522, - "verbally": 39985, - "verbs": 45687, - "verde": 16935, - "verdi": 42306, - "verdict": 18030, - "vere": 11135, - "vere": 34707, - "vered": 2868, - "verge": 23913, - "veri": 11638, - "verification": 33521, - "verified": 22555, - "verify": 34722, - "vering": 4630, - "veriz": 19707, - "verizon": 21532, - "verma": 41261, - "vermont": 19241, - "vern": 2214, - "vern": 12586, - "verne": 45553, - "vernon": 18348, - "vero": 45217, - "vero": 38208, - "verona": 31819, - "veronic": 39551, - "veronica": 24039, - "vers": 1219, - "vers": 2094, - "versa": 35765, - "versace": 25422, - "versail": 29857, - "versailles": 32129, - "versary": 2940, - "versatile": 18110, - "versatility": 41340, - "verse": 39466, - "verse": 3131, - "verses": 30769, - "versi": 8934, - "version": 3273, - "versions": 16190, - "versity": 1906, - "verst": 42484, - "verstappen": 45064, - "versus": 14548, - "versy": 18522, - "vert": 11742, - "verte": 35158, - "verted": 48173, - "verti": 30459, - "vertical": 14293, - "vertigo": 42477, - "verton": 40632, - "verts": 37265, - "very": 11698, - "very": 1070, - "veryday": 37944, - "verything": 45174, - "ves": 9616, - "ves": 1003, - "vesmatter": 47636, - "vespa": 46029, - "vessel": 16387, - "vessels": 22822, - "vest": 31657, - "vest": 12473, - "vesti": 40349, - "vests": 41906, - "vet": 12294, - "vet": 5951, - "veter": 4330, - "veteran": 20797, - "veteran": 8814, - "veterans": 7092, - "veteransday": 26409, - "veterin": 43959, - "veterinary": 25458, - "veto": 36570, - "vets": 13113, - "vette": 17045, - "vettel": 28700, - "vevo": 35141, - "vex": 36187, - "vex": 43978, - "vey": 34792, - "vey": 3884, - "vez": 35987, - "vez": 17226, - "vf": 25966, - "vfl": 33726, - "vfx": 30149, - "vg": 40591, - "vg": 22346, - "vh": 46953, - "vh": 23847, - "vhs": 21932, - "vi": 603, - "vi": 4259, - "via": 1048, - "viable": 25752, - "viadu": 37012, - "viaduct": 39113, - "vial": 39951, - "vian": 40487, - "vian": 16124, - "vibe": 37974, - "vibe": 12813, - "vibes": 7764, - "vibr": 9527, - "vibrant": 14270, - "vibration": 37456, - "vibrations": 43660, - "vic": 1555, - "vic": 4412, - "vica": 46168, - "vicar": 43899, - "vice": 43572, - "vice": 6931, - "vicente": 39411, - "vices": 8332, - "vich": 24143, - "vici": 46670, - "vicious": 25177, - "vick": 15116, - "vick": 29704, - "vickers": 48452, - "vicki": 34927, - "vicky": 37176, - "vicky": 25788, - "victi": 6861, - "victim": 9133, - "victims": 7131, - "victor": 2423, - "victor": 10690, - "victori": 17555, - "victoria": 39286, - "victoria": 6127, - "victorian": 12350, - "victorias": 47791, - "victories": 24577, - "victorious": 24033, - "victory": 36668, - "victory": 4127, - "vid": 17233, - "vid": 9284, - "vida": 19015, - "vidal": 36678, - "vide": 1334, - "vide": 45244, - "video": 9478, - "video": 1455, - "videogame": 35097, - "videogames": 21149, - "videos": 6081, - "vids": 23035, - "vidy": 29639, - "vidya": 45264, - "vie": 922, - "vie": 8538, - "vien": 36493, - "vienna": 12670, - "vier": 15352, - "vier": 11987, - "viera": 21114, - "viernes": 33826, - "vies": 22458, - "viest": 31979, - "viet": 17558, - "viet": 13128, - "vietnam": 19558, - "vietnam": 8623, - "vietnamese": 22382, - "view": 12004, - "view": 1093, - "viewed": 7226, - "viewer": 15061, - "viewers": 14275, - "viewing": 7124, - "viewpoint": 41604, - "views": 2758, - "vig": 8549, - "vig": 45083, - "vigil": 21538, - "vigil": 19896, - "vigilant": 43026, - "vigne": 40447, - "vigne": 34581, - "vigo": 44097, - "vigor": 26781, - "vii": 17759, - "viii": 20414, - "vijay": 12014, - "vijay": 10823, - "vijaysethu": 47966, - "vik": 10764, - "vik": 17181, - "vika": 39562, - "vikas": 37116, - "viking": 26663, - "viking": 15897, - "vikings": 11713, - "vikram": 41136, - "vikram": 24314, - "viktor": 36101, - "vil": 1338, - "vil": 3000, - "vila": 37505, - "vile": 27247, - "vill": 10481, - "vill": 45698, - "villa": 3203, - "villa": 7754, - "village": 34584, - "village": 4331, - "villagers": 34283, - "villages": 17621, - "villain": 15425, - "villains": 25271, - "villanova": 44025, - "villar": 35164, - "villas": 28907, - "ville": 11110, - "ville": 1930, - "villen": 46177, - "villi": 36907, - "vimeo": 48720, - "vin": 1379, - "vin": 2558, - "vina": 35682, - "vinai": 37396, - "vinaigrette": 39876, - "vinay": 43952, - "vince": 32429, - "vince": 6236, - "vincen": 33402, - "vincent": 29069, - "vincent": 10357, - "vinci": 30199, - "vind": 20275, - "vindic": 39582, - "vine": 8471, - "vine": 7721, - "vinegar": 23834, - "vines": 21268, - "vineyard": 16527, - "vineyards": 23082, - "ving": 5375, - "ving": 903, - "vingne": 42579, - "vings": 22510, - "vini": 48119, - "vinnie": 40885, - "vinny": 36794, - "vino": 14509, - "vinod": 43348, - "vins": 34820, - "vinson": 45945, - "vintag": 10936, - "vintage": 13654, - "vintage": 3266, - "viny": 40990, - "vinyl": 22835, - "vinyl": 5754, - "vio": 11913, - "vio": 20324, - "viol": 3164, - "viola": 27438, - "violate": 44875, - "violated": 38192, - "violating": 37554, - "violation": 22919, - "violations": 21969, - "violence": 5450, - "violent": 11565, - "violently": 47758, - "violet": 16118, - "violets": 42861, - "violin": 17058, - "violinist": 36299, - "vion": 35496, - "vious": 6418, - "viously": 7149, - "vip": 45714, - "vip": 7111, - "viper": 27401, - "vips": 41149, - "vir": 1790, - "vir": 25319, - "vira": 35910, - "viral": 11653, - "virat": 32473, - "virgil": 39076, - "virgin": 5651, - "virgin": 12103, - "virgini": 43426, - "virginia": 6728, - "virgo": 39978, - "viro": 32301, - "viron": 38309, - "virtu": 7977, - "virtual": 18059, - "virtual": 7790, - "virtually": 22475, - "virtualreality": 32608, - "virtue": 26860, - "virtues": 42167, - "virtuoso": 47027, - "virus": 11808, - "viruses": 34830, - "vis": 1301, - "vis": 5337, - "visa": 12802, - "visas": 41228, - "vise": 24977, - "vised": 14810, - "vish": 12024, - "vish": 29124, - "vishal": 33648, - "vishnu": 37816, - "visi": 1409, - "visibility": 15921, - "visible": 36658, - "visible": 8626, - "vising": 37439, - "vision": 11147, - "vision": 2515, - "visional": 24627, - "visionary": 22959, - "visions": 13804, - "visit": 3388, - "visit": 1600, - "visitation": 44370, - "visited": 5580, - "visiting": 4680, - "visitor": 13881, - "visitors": 9160, - "visits": 8489, - "visitscotland": 28760, - "visitspain": 48860, - "vism": 15514, - "viso": 46732, - "visor": 24217, - "vist": 21436, - "vista": 13865, - "visu": 7739, - "visual": 17004, - "visual": 7195, - "visualization": 28500, - "visualize": 45057, - "visually": 25743, - "visuals": 21315, - "viswas": 36513, - "viswasam": 47664, - "vit": 4056, - "vit": 35580, - "vita": 15700, - "vital": 32525, - "vital": 10585, - "vitality": 36385, - "vitam": 9856, - "vitamin": 13675, - "vitamins": 22582, - "vito": 36725, - "vity": 4893, - "vitz": 26188, - "vius": 41571, - "viv": 21827, - "viv": 35363, - "viva": 17399, - "vival": 35920, - "vive": 18980, - "vive": 24004, - "vivek": 36243, - "vivi": 11625, - "vivian": 30129, - "vivid": 22984, - "vivo": 28091, - "vivo": 25888, - "vix": 28976, - "vix": 34811, - "vixen": 38757, - "vixx": 32106, - "viz": 28251, - "viz": 31786, - "vj": 45439, - "vj": 30827, - "vk": 41893, - "vl": 37580, - "vl": 36442, - "vla": 23686, - "vlad": 41089, - "vladi": 19320, - "vladimir": 21702, - "vlive": 46797, - "vlog": 18894, - "vm": 16204, - "vm": 20269, - "vma": 35666, - "vmas": 30236, - "vmware": 29615, - "vn": 47098, - "vn": 25076, - "vo": 947, - "vo": 3951, - "voc": 4105, - "voc": 20855, - "vocab": 21346, - "vocabulary": 23804, - "vocal": 34037, - "vocal": 13147, - "vocali": 19134, - "vocalist": 22102, - "vocals": 17666, - "vocation": 20521, - "vocational": 33751, - "vod": 11820, - "vod": 35854, - "vodaf": 28436, - "vodafone": 38695, - "vodka": 13646, - "vogel": 44960, - "vogue": 24418, - "vogue": 13178, - "voic": 29185, - "voice": 13179, - "voice": 3386, - "voiced": 34352, - "voiceof": 44966, - "voiceover": 41979, - "voices": 9144, - "void": 21561, - "voip": 42762, - "voir": 16036, - "vol": 1343, - "vol": 7945, - "volatile": 41022, - "volatility": 32355, - "volcan": 9916, - "volcanic": 24072, - "volcano": 14581, - "volcanoes": 38055, - "voli": 40138, - "volk": 13432, - "volkswag": 14407, - "volkswagen": 15342, - "volley": 7130, - "volley": 34656, - "volleyball": 7458, - "volo": 44791, - "vols": 20404, - "volt": 26430, - "volta": 29879, - "volta": 33480, - "voltage": 23118, - "voltron": 39314, - "volu": 3563, - "volume": 8284, - "volumes": 22651, - "volun": 3356, - "voluntar": 48823, - "voluntary": 23815, - "volunte": 3556, - "volunteer": 32331, - "volunteer": 7114, - "volunteered": 34000, - "volunteering": 14902, - "volunteers": 5939, - "volution": 24043, - "volved": 42888, - "volvo": 39991, - "volvo": 16906, - "vom": 24198, - "vomit": 46485, - "von": 11269, - "von": 8497, - "voo": 19497, - "voodoo": 26869, - "voor": 34291, - "voor": 34464, - "vor": 8338, - "vor": 5308, - "vore": 18215, - "vortex": 30071, - "vos": 16863, - "vot": 48558, - "vote": 6830, - "vote": 2187, - "voted": 6454, - "votel": 41379, - "voter": 44474, - "voter": 14065, - "voters": 8925, - "votes": 6693, - "voting": 5756, - "vou": 11045, - "voucher": 18190, - "vouchers": 23384, - "vous": 10636, - "vow": 34787, - "vows": 21677, - "vox": 29215, - "vox": 22692, - "voy": 10622, - "voy": 15021, - "voyage": 16299, - "voyager": 29669, - "vp": 32758, - "vp": 3896, - "vpn": 38212, - "vr": 16840, - "vr": 5921, - "vre": 44500, - "vre": 17501, - "vs": 11385, - "vs": 1547, - "vsco": 26752, - "vsco": 32822, - "vscocam": 34694, - "vsky": 37791, - "vss": 31919, - "vt": 31732, - "vt": 10291, - "vu": 8664, - "vu": 13230, - "vue": 43915, - "vue": 19313, - "vuel": 31312, - "vuelta": 43856, - "vuitton": 26705, - "vul": 6856, - "vulcan": 34767, - "vulner": 11213, - "vulnerability": 28797, - "vulnerable": 14332, - "vulture": 34593, - "vultures": 47197, - "vv": 19264, - "vv": 35686, - "vw": 28650, - "vw": 13250, - "vx": 47644, - "vy": 11566, - "vy": 5157, - "w": 86, - "w": 342, - "wa": 869, - "wa": 2663, - "waa": 35874, - "wab": 19893, - "wab": 36852, - "wac": 27445, - "wac": 37947, - "wack": 22880, - "wack": 38270, - "wacky": 34318, - "waco": 36035, - "wad": 11133, - "wad": 30451, - "wada": 40006, - "wade": 40237, - "wade": 14180, - "wadi": 37253, - "waf": 17638, - "wafc": 49086, - "waff": 13940, - "waffle": 20375, - "waffles": 24205, - "wag": 5764, - "wag": 19177, - "wage": 10716, - "wager": 43430, - "wages": 19114, - "wagner": 18081, - "wagon": 13260, - "wagons": 47944, - "wags": 48580, - "wah": 24812, - "wah": 18014, - "wahl": 27500, - "wahlberg": 35151, - "wahoo": 47995, - "wai": 11469, - "wai": 21569, - "waifu": 46551, - "waikiki": 44907, - "wain": 28358, - "wain": 20120, - "wainwright": 45878, - "waist": 36946, - "waist": 18459, - "wait": 10021, - "wait": 1885, - "waite": 24272, - "waited": 18492, - "waiter": 32946, - "waitin": 44482, - "waiting": 2680, - "waitress": 39760, - "waitrose": 37164, - "waits": 21361, - "waiver": 42866, - "waj": 49367, - "wak": 11172, - "wak": 36015, - "waka": 42696, - "wake": 10501, - "wake": 5731, - "wakefield": 26358, - "wakes": 29108, - "wakeup": 26328, - "wakeup": 35380, - "wakeupamerica": 37474, - "waking": 13025, - "wal": 1056, - "wal": 6903, - "wala": 16468, - "walang": 49180, - "walcott": 45744, - "wald": 46930, - "wald": 15724, - "walden": 39311, - "waldo": 32440, - "waldorf": 38227, - "wale": 41247, - "wale": 20336, - "wales": 25383, - "wales": 5110, - "walgreens": 38490, - "wali": 37576, - "wali": 14768, - "walia": 44455, - "walk": 8588, - "walk": 2374, - "walkaway": 48255, - "walked": 8667, - "walker": 24735, - "walker": 6150, - "walkers": 23366, - "walkin": 45792, - "walking": 12644, - "walking": 3941, - "walkingdead": 14948, - "walkout": 47470, - "walks": 8192, - "walkway": 36614, - "wall": 4316, - "wall": 2569, - "walla": 26007, - "walla": 39982, - "wallabies": 48926, - "wallace": 12535, - "wallart": 36223, - "walled": 36567, - "waller": 45340, - "wallet": 12154, - "wallets": 38550, - "walleye": 49099, - "wallis": 42206, - "wallpaper": 10560, - "wallpapers": 29841, - "walls": 8258, - "wallstreet": 45341, - "wally": 26024, - "walmart": 11972, - "walnut": 16310, - "walnuts": 38294, - "walsall": 42935, - "walsh": 12856, - "walt": 23535, - "walt": 14312, - "waltdisneyworld": 36505, - "walter": 31156, - "walter": 10645, - "walters": 25532, - "waltham": 42742, - "waltham": 45581, - "walton": 19485, - "waltz": 35982, - "wam": 20503, - "wamy": 46970, - "wan": 2060, - "wan": 4557, - "wana": 30830, - "wand": 14636, - "wand": 28559, - "wanda": 25070, - "wander": 12985, - "wander": 24473, - "wandered": 46593, - "wanderers": 27540, - "wandering": 22597, - "wanderlust": 16129, - "wane": 27459, - "wang": 19731, - "wang": 11900, - "wani": 21674, - "wankers": 42189, - "wann": 23622, - "wanna": 35940, - "wanna": 3836, - "wannabe": 40730, - "wannaone": 44832, - "want": 18356, - "want": 1280, - "wanted": 3146, - "wanting": 12801, - "wants": 3107, - "wap": 27393, - "wap": 30368, - "waq": 47512, - "war": 984, - "war": 2238, - "wara": 21631, - "warbler": 33891, - "warcraft": 13660, - "ward": 7728, - "ward": 1460, - "warden": 27798, - "wardly": 30780, - "wardro": 14247, - "wardrobe": 15020, - "wards": 2593, - "ware": 7416, - "ware": 4476, - "wareagle": 35716, - "warehouse": 13054, - "wareness": 41601, - "wareness": 35870, - "wares": 30692, - "warfare": 15739, - "warhammer": 26832, - "warhol": 27554, - "wari": 20977, - "wark": 46346, - "wark": 15164, - "warlock": 42455, - "warm": 14725, - "warm": 3616, - "warmed": 36695, - "warmer": 14328, - "warmest": 30910, - "warming": 8606, - "warmly": 45322, - "warmongers": 33205, - "warms": 32917, - "warmth": 19636, - "warmup": 29904, - "warmups": 44094, - "warn": 19360, - "warned": 16409, - "warner": 28564, - "warner": 13402, - "warning": 4994, - "warnings": 18098, - "warns": 14086, - "waron": 38947, - "warp": 32411, - "warped": 32125, - "warran": 17392, - "warrant": 22554, - "warrants": 45677, - "warranty": 23999, - "warren": 23143, - "warren": 9234, - "warri": 4109, - "warrington": 31203, - "warrior": 18998, - "warrior": 8148, - "warriors": 6421, - "wars": 3931, - "warsaw": 21072, - "warship": 47846, - "wart": 43535, - "wart": 7346, - "wartime": 42998, - "warts": 21781, - "warwick": 23081, - "warwick": 22215, - "warwickshire": 36766, - "wary": 36213, - "was": 3398, - "was": 739, - "wasabi": 47334, - "wash": 3363, - "wash": 7810, - "washed": 14092, - "washer": 24085, - "washes": 38950, - "washing": 13029, - "washington": 16774, - "washington": 4365, - "washingtondc": 40225, - "washingtonpost": 28426, - "wasn": 5044, - "wasnt": 29607, - "wasp": 24889, - "wasps": 35300, - "wassup": 45708, - "wast": 28886, - "waste": 18157, - "waste": 6065, - "wasted": 18278, - "wasteland": 44035, - "wastewater": 34463, - "wasting": 25577, - "wat": 800, - "wat": 10621, - "wata": 42509, - "watch": 7046, - "watch": 1239, - "watchdog": 35303, - "watched": 5775, - "watcher": 35971, - "watchers": 28443, - "watches": 9521, - "watchin": 32432, - "watching": 2113, - "water": 2505, - "water": 1573, - "watercolor": 14211, - "watercolour": 18377, - "waterfall": 16403, - "waterfalls": 26692, - "waterford": 24448, - "waterfront": 16605, - "waterhouse": 45072, - "watering": 19871, - "waterloo": 17465, - "watermelon": 19889, - "waterproof": 17613, - "waters": 7753, - "watershed": 33204, - "waterstones": 45014, - "waterways": 37395, - "watford": 23162, - "watfordfc": 37328, - "wati": 27966, - "watkins": 22539, - "watson": 35490, - "watson": 9294, - "watt": 22899, - "watt": 15805, - "wattpad": 32351, - "watts": 14750, - "wau": 9479, - "wav": 6054, - "wave": 17530, - "wave": 4535, - "waved": 44657, - "waver": 25997, - "waves": 7882, - "waving": 26545, - "wavy": 31941, - "waw": 22039, - "wawrinka": 48414, - "wawx": 47387, - "wax": 18789, - "wax": 11910, - "waxing": 38781, - "way": 3079, - "way": 923, - "wayback": 47822, - "wayne": 23632, - "wayne": 7003, - "ways": 1248, - "waz": 20889, - "waz": 48835, - "wb": 10726, - "wb": 12377, - "wba": 22675, - "wbb": 14482, - "wbc": 26745, - "wbo": 49053, - "wbz": 35471, - "wc": 4842, - "wc": 5755, - "wcc": 47166, - "wcc": 34926, - "wcpo": 46624, - "wcs": 39916, - "wcvb": 32709, - "wcw": 9041, - "wd": 15998, - "wd": 7494, - "wdw": 40334, - "we": 598, - "we": 649, - "wea": 37146, - "wea": 47301, - "weak": 12128, - "weak": 10128, - "weaker": 39735, - "weakness": 21448, - "weaknesses": 43487, - "weal": 14759, - "wealth": 33150, - "wealth": 7904, - "wealthy": 22617, - "weap": 6156, - "weapon": 42612, - "weapon": 10537, - "weapons": 10007, - "wear": 12206, - "wear": 2839, - "wearab": 22983, - "wearable": 44943, - "wearable": 24973, - "wearables": 30319, - "weare": 4264, - "weare": 27867, - "weareall": 45980, - "wearec": 43620, - "wearen": 45635, - "weareone": 16149, - "weareoneexo": 16448, - "wearethe": 40242, - "wearing": 3309, - "wears": 11869, - "weary": 38766, - "weasel": 44308, - "weather": 8808, - "weather": 2237, - "weathercee": 44980, - "weatherchannel": 42138, - "weav": 22260, - "weave": 22450, - "weaver": 20297, - "weaving": 27131, - "web": 2055, - "web": 4601, - "webb": 15708, - "webber": 34248, - "webcam": 24211, - "webcam": 22589, - "webcamtoy": 27719, - "webcast": 28256, - "webcomic": 34286, - "webcomics": 39811, - "webdesign": 20470, - "webdev": 37000, - "webdevelopment": 47553, - "weber": 20179, - "webin": 8460, - "webinar": 8921, - "webinars": 47755, - "webpage": 46964, - "webs": 32829, - "webseries": 44819, - "website": 3364, - "websites": 19278, - "webster": 19471, - "websummit": 48069, - "wec": 33152, - "wechat": 46124, - "wed": 1687, - "wed": 3478, - "wedd": 7576, - "wedding": 11204, - "wedding": 3101, - "weddings": 15964, - "wedge": 21446, - "wedges": 33179, - "wedne": 2380, - "wednesday": 9311, - "wednesday": 2689, - "wednesdaymotivation": 37860, - "wednesdays": 24943, - "wednesdaywisdom": 11445, - "wedo": 43432, - "weds": 19107, - "wee": 716, - "wee": 8288, - "weed": 36935, - "weed": 8015, - "weeds": 26326, - "week": 1286, - "week": 994, - "weekday": 29244, - "weekdays": 44330, - "weekend": 17205, - "weekend": 1456, - "weekender": 36547, - "weekends": 14564, - "weekly": 34652, - "weekly": 5885, - "weeknd": 29925, - "weeks": 2898, - "weeksary": 24628, - "ween": 17517, - "ween": 1599, - "weep": 39270, - "weeping": 36629, - "weer": 32491, - "weet": 17742, - "weets": 13454, - "wef": 23313, - "weg": 47867, - "weg": 47561, - "wego": 44784, - "wego": 28220, - "weh": 48458, - "weh": 40313, - "weho": 47798, - "wei": 6958, - "wei": 20952, - "weibo": 20613, - "weigh": 10565, - "weigh": 17346, - "weighed": 33210, - "weighing": 24455, - "weighs": 20481, - "weight": 12723, - "weight": 3868, - "weighted": 43179, - "weightlifting": 36164, - "weightloss": 20359, - "weights": 21374, - "weil": 43720, - "weiler": 42203, - "wein": 29134, - "wein": 37684, - "weiner": 38822, - "weinstein": 34367, - "weir": 11299, - "weir": 25517, - "weird": 27981, - "weird": 5613, - "weirdest": 29482, - "weirdo": 32476, - "weis": 26251, - "weiser": 34833, - "weiss": 24794, - "wel": 1267, - "wel": 8042, - "welch": 25820, - "welcom": 11578, - "welcome": 18318, - "welcome": 1881, - "welcomed": 12590, - "welcomes": 9304, - "welcometo": 47511, - "welcoming": 8775, - "weld": 39776, - "welding": 24956, - "welfare": 12129, - "well": 3277, - "well": 1123, - "wellbeing": 14273, - "weller": 40921, - "welling": 49165, - "wellington": 15389, - "wellness": 40574, - "wellness": 9904, - "wells": 42705, - "wells": 9804, - "welove": 13573, - "welp": 28391, - "wels": 20852, - "welsh": 19173, - "welsh": 10977, - "welt": 38595, - "welter": 37115, - "welterweight": 39617, - "wemb": 15213, - "wembley": 16579, - "wen": 6590, - "wen": 11278, - "wend": 15166, - "wendell": 42091, - "wendy": 31616, - "wendy": 14074, - "wenger": 21105, - "went": 18633, - "went": 2437, - "wentworth": 36423, - "wentz": 39179, - "wer": 6316, - "wer": 2980, - "were": 15461, - "were": 1365, - "wered": 6605, - "weren": 13611, - "werewolf": 32001, - "werk": 30176, - "werner": 29917, - "wers": 7110, - "wes": 18620, - "wes": 14738, - "wesle": 29606, - "wesley": 17332, - "wesleyan": 32509, - "wesome": 33292, - "wess": 44431, - "west": 2973, - "west": 1593, - "westbound": 29208, - "westbrook": 26948, - "westchester": 36675, - "westcoast": 44610, - "westend": 44815, - "wester": 9846, - "western": 17079, - "western": 4463, - "westfield": 32309, - "westh": 36798, - "westin": 43232, - "westlake": 41535, - "westminster": 15158, - "weston": 22771, - "westside": 33762, - "westwood": 26371, - "westworld": 42287, - "wet": 12406, - "wet": 6682, - "weta": 40946, - "wethenorth": 45281, - "wethepeople": 48030, - "wether": 33794, - "wether": 48405, - "wetland": 37357, - "wetlands": 26547, - "wett": 41971, - "wetter": 43957, - "wewant": 39280, - "wewill": 37241, - "wex": 17234, - "wexford": 29876, - "wexmondays": 49042, - "wey": 30376, - "wey": 19781, - "weymouth": 41433, - "wf": 14576, - "wf": 22313, - "wfa": 44606, - "wfc": 36431, - "wfp": 35193, - "wftv": 47075, - "wg": 21091, - "wg": 25857, - "wga": 32354, - "wgn": 48828, - "wh": 573, - "wh": 13844, - "wha": 18994, - "wha": 25884, - "whal": 38967, - "whale": 37083, - "whale": 11650, - "whales": 17722, - "wham": 42506, - "whar": 15517, - "wharf": 22452, - "wharton": 43320, - "what": 4268, - "what": 768, - "whatcha": 37160, - "whate": 6695, - "whatever": 6743, - "whati": 23500, - "whats": 9263, - "whats": 13084, - "whatsapp": 10119, - "whatsoever": 39928, - "whatson": 35632, - "whatyou": 30508, - "whe": 2009, - "whead": 34583, - "wheat": 20505, - "wheat": 10303, - "wheaton": 46933, - "wheel": 7360, - "wheel": 6744, - "wheelchair": 17713, - "wheeler": 18405, - "wheeling": 34839, - "wheels": 8025, - "whel": 9792, - "whelan": 40715, - "when": 8753, - "when": 827, - "whenever": 10500, - "where": 7052, - "where": 1234, - "whereabouts": 47808, - "whereas": 42234, - "wheres": 46345, - "wherever": 14103, - "whereyou": 46837, - "whether": 5903, - "whew": 39016, - "whey": 34556, - "whi": 4295, - "whi": 33129, - "which": 1448, - "whiche": 48719, - "whichever": 49138, - "whil": 8499, - "while": 1519, - "whilst": 8596, - "whim": 27766, - "whimsical": 42282, - "whip": 14412, - "whipped": 22323, - "whipping": 41567, - "whir": 20873, - "whirl": 30962, - "whirlwind": 47771, - "whis": 6024, - "whiskey": 41381, - "whiskey": 11610, - "whisky": 37567, - "whisky": 12599, - "whisp": 21986, - "whispe": 30356, - "whisper": 27616, - "whisperer": 41368, - "whispering": 42599, - "whispers": 29133, - "whist": 13640, - "whistle": 23972, - "whistle": 19746, - "whistleblower": 40410, - "whistler": 29633, - "whit": 4398, - "whit": 31498, - "whitaker": 35851, - "whitby": 30858, - "white": 4699, - "white": 1579, - "whiteboard": 40839, - "whitec": 24575, - "whitehall": 42827, - "whitehead": 43560, - "whitehouse": 20776, - "whitening": 35540, - "whitepaper": 42713, - "whites": 35886, - "whites": 18835, - "whitesox": 28816, - "whitewater": 49350, - "whitfield": 48404, - "whitley": 40564, - "whitman": 32394, - "whitney": 43021, - "whitney": 18048, - "whitt": 33784, - "whittaker": 47595, - "whl": 25801, - "who": 2969, - "who": 822, - "whoa": 16943, - "whoever": 11137, - "whois": 41884, - "whole": 10360, - "whole": 2954, - "wholefoods": 42840, - "wholesale": 18306, - "wholesome": 35959, - "whom": 38158, - "whom": 12873, - "whoo": 20003, - "whoo": 49290, - "whoop": 22060, - "whoops": 28433, - "whopping": 34384, - "whore": 31690, - "whos": 41460, - "whos": 27130, - "whose": 6933, - "whouse": 45927, - "whs": 26292, - "wht": 32470, - "whufc": 31695, - "whun": 18272, - "why": 11040, - "why": 1182, - "whyte": 42386, - "wi": 820, - "wi": 5585, - "wib": 45303, - "wic": 7834, - "wich": 9759, - "wich": 5238, - "wichita": 22566, - "wick": 6798, - "wick": 6479, - "wicked": 32579, - "wicked": 12825, - "wicker": 38096, - "wicket": 19180, - "wickets": 22110, - "wicklow": 39039, - "wicz": 30121, - "wid": 11886, - "wid": 20886, - "wide": 19341, - "wide": 3184, - "widely": 16195, - "widening": 46598, - "wider": 21263, - "widesp": 20598, - "widespread": 21258, - "widget": 43906, - "wido": 28068, - "widow": 19949, - "widows": 42129, - "width": 23571, - "wie": 21378, - "wie": 9131, - "wielding": 47272, - "wien": 38131, - "wiener": 40567, - "wies": 42788, - "wif": 37572, - "wife": 3607, - "wifey": 35282, - "wifi": 11026, - "wig": 23690, - "wig": 12216, - "wigan": 23130, - "wiggins": 32329, - "wiggle": 47812, - "wight": 41278, - "wight": 15545, - "wigs": 31207, - "wii": 8005, - "wiiu": 40980, - "wiki": 10373, - "wiki": 24265, - "wikileaks": 28731, - "wikipedia": 15176, - "wil": 1352, - "wil": 20581, - "wilbur": 43069, - "wilcox": 43231, - "wild": 2780, - "wild": 3220, - "wildatlantic": 35500, - "wildatlanticway": 35776, - "wildcard": 37360, - "wildcat": 49077, - "wildcat": 25870, - "wildcats": 15909, - "wilde": 23498, - "wilder": 14343, - "wilder": 23499, - "wilderness": 16506, - "wildest": 43028, - "wildfire": 22788, - "wildfires": 29184, - "wildflower": 27628, - "wildflower": 33181, - "wildflowerhour": 31302, - "wildflowers": 29136, - "wildlife": 13298, - "wildlife": 5250, - "wildlifephotography": 32307, - "wildlifewednesday": 48537, - "wildly": 35981, - "wildoz": 40113, - "wiley": 32747, - "wilhelm": 39696, - "wilkes": 39548, - "wilkins": 36986, - "wilkinson": 26797, - "will": 5062, - "will": 751, - "willam": 43276, - "willard": 44920, - "wille": 48739, - "willem": 38044, - "willi": 2256, - "william": 8420, - "william": 4705, - "williams": 38452, - "williams": 4075, - "williamsburg": 30683, - "williamson": 20793, - "willie": 13907, - "willing": 34160, - "willing": 11718, - "willingness": 40573, - "willis": 18491, - "willow": 33887, - "willow": 15665, - "wills": 26913, - "willy": 34502, - "willy": 19599, - "wilmington": 28052, - "wilms": 47879, - "wilshere": 48359, - "wilson": 23629, - "wilson": 5622, - "wilt": 23394, - "wilt": 47357, - "wilton": 46638, - "wiltshire": 28025, - "wim": 8662, - "wim": 27580, - "wimble": 11752, - "wimbledon": 12229, - "win": 831, - "win": 1225, - "winchester": 20647, - "wind": 6812, - "wind": 3630, - "winder": 44454, - "winder": 46245, - "winding": 22390, - "windmill": 34084, - "windo": 3110, - "window": 26675, - "window": 4879, - "windows": 5437, - "winds": 12668, - "winds": 7012, - "windshield": 33002, - "windsor": 44322, - "windsor": 12884, - "windy": 13446, - "wine": 7375, - "wine": 2604, - "winelover": 26357, - "winemaker": 41588, - "wineoclock": 43846, - "wineries": 49349, - "winery": 15500, - "wines": 8263, - "winetasting": 41288, - "winewednesday": 35447, - "wing": 8141, - "wing": 1340, - "winged": 24993, - "winger": 22727, - "winget": 44578, - "wings": 5178, - "wink": 34455, - "wink": 25859, - "winkle": 36430, - "winn": 38104, - "winne": 46273, - "winner": 32961, - "winner": 2520, - "winners": 4320, - "winni": 13018, - "winnie": 29022, - "winning": 42099, - "winning": 2577, - "winnings": 46490, - "winnipeg": 14369, - "winona": 49202, - "wins": 46839, - "wins": 2718, - "winslow": 39658, - "winston": 14848, - "winter": 7340, - "winter": 2541, - "winters": 21587, - "wintry": 39504, - "wip": 10447, - "wipe": 26761, - "wiped": 31822, - "wipes": 33463, - "wir": 16849, - "wir": 44838, - "wire": 7558, - "wire": 7794, - "wired": 18935, - "wireless": 9103, - "wires": 24311, - "wiring": 36434, - "wirral": 34675, - "wis": 3392, - "wis": 20405, - "wiscon": 9857, - "wisconsin": 10265, - "wisdom": 42474, - "wisdom": 5425, - "wise": 19116, - "wise": 5558, - "wisely": 26173, - "wiser": 44859, - "wish": 11328, - "wish": 2412, - "wished": 25883, - "wishes": 6045, - "wishing": 5307, - "wishlist": 31969, - "wit": 584, - "wit": 8531, - "witch": 20139, - "witch": 10083, - "witchcraft": 35065, - "witcher": 33684, - "witches": 21673, - "with": 1435, - "with": 593, - "withdra": 24696, - "withdraw": 31670, - "withdrawal": 25765, - "withdrawn": 46687, - "withdraws": 48637, - "wither": 39655, - "witherspoon": 45409, - "within": 4154, - "withme": 44670, - "without": 32836, - "without": 2193, - "withstand": 42236, - "withthe": 36872, - "withus": 30572, - "withyou": 30351, - "witne": 12096, - "witness": 8793, - "witnessed": 20187, - "witnesses": 22778, - "witnessing": 33618, - "wits": 30938, - "witt": 38194, - "witt": 17168, - "witter": 31597, - "witty": 29970, - "witz": 44186, - "witz": 13265, - "wiv": 48925, - "wives": 14378, - "wiwx": 44461, - "wiz": 7730, - "wiz": 23178, - "wizar": 49121, - "wizard": 30490, - "wizard": 14295, - "wizards": 19140, - "wizkid": 40146, - "wj": 19739, - "wj": 35453, - "wk": 11512, - "wk": 11528, - "wkend": 42336, - "wknd": 20851, - "wks": 25508, - "wku": 43377, - "wl": 13299, - "wl": 9613, - "wm": 20268, - "wm": 15790, - "wn": 1186, - "wn": 757, - "wnba": 32358, - "wned": 8628, - "wns": 12950, - "wnt": 22484, - "wny": 24833, - "wo": 1613, - "wo": 11132, - "woah": 17751, - "wob": 35984, - "woc": 39011, - "wod": 41522, - "woes": 27860, - "wof": 45671, - "woj": 48931, - "wok": 28912, - "woke": 9331, - "woken": 43697, - "woking": 43931, - "wol": 2798, - "wol": 48622, - "wold": 42399, - "wolf": 9453, - "wolf": 5916, - "wolfe": 24989, - "wolff": 34369, - "wolfgang": 34061, - "wolfpack": 30887, - "wolve": 45101, - "wolver": 14334, - "wolverhampton": 34518, - "wolverine": 23353, - "wolverines": 42003, - "wolves": 9372, - "wom": 1087, - "womack": 48980, - "woman": 15716, - "woman": 2308, - "womanc": 35630, - "womancrush": 37721, - "womancrushwednesday": 39714, - "womanin": 30562, - "womaninbiz": 36482, - "womb": 37023, - "women": 3648, - "women": 1507, - "womenin": 13062, - "womeninscience": 41343, - "womeninstem": 29380, - "womenintech": 31470, - "womenof": 48421, - "womens": 12822, - "womens": 14408, - "womensart": 38548, - "womensday": 13956, - "womenshi": 22887, - "womenshistorymonth": 24982, - "womensmarch": 30102, - "won": 1528, - "won": 1749, - "wonder": 2070, - "wonder": 3936, - "wondercon": 46944, - "wondered": 15550, - "wonderful": 2582, - "wonderfully": 23245, - "wondering": 8360, - "wonderland": 13874, - "wonders": 14048, - "wonderwoman": 31000, - "wondo": 38402, - "wondr": 46771, - "wong": 17876, - "wonka": 43463, - "wont": 43174, - "wont": 15952, - "woo": 1867, - "woo": 9322, - "wood": 3269, - "wood": 1704, - "woodbridge": 49074, - "wooden": 48226, - "wooden": 9057, - "woodland": 44314, - "woodland": 17447, - "woodlands": 32430, - "woodley": 40566, - "woodpecker": 32684, - "woods": 6267, - "woodson": 48967, - "woodstock": 29486, - "woodward": 27419, - "woodwork": 47386, - "woodworking": 29267, - "woody": 38627, - "woody": 17144, - "woof": 34234, - "woof": 24028, - "woohoo": 20172, - "wook": 29192, - "wool": 9967, - "wool": 13283, - "woolf": 43728, - "woolly": 47722, - "woon": 33126, - "wooo": 43217, - "woop": 31884, - "woot": 22466, - "wor": 641, - "worcester": 22172, - "worcester": 19580, - "worcestershire": 38440, - "worcestershirehour": 43644, - "word": 8272, - "word": 2653, - "wordof": 33500, - "wordoftheday": 43594, - "wordpress": 15193, - "words": 31007, - "words": 2709, - "wore": 8953, - "work": 1636, - "work": 951, - "workday": 29735, - "worked": 5410, - "worker": 8098, - "workers": 4795, - "workflow": 28502, - "workforce": 14672, - "workin": 31825, - "workin": 26323, - "working": 20806, - "working": 1699, - "workinprogress": 46086, - "workout": 6773, - "workouts": 22779, - "workplace": 11959, - "workplaces": 47383, - "works": 2322, - "workshop": 3832, - "workshops": 12262, - "workspace": 34470, - "worl": 5221, - "world": 2334, - "world": 1002, - "worlda": 46627, - "worldbank": 36759, - "worldbookday": 31191, - "worldcup": 42525, - "worldcup": 8650, - "worlden": 44668, - "worldenviron": 47115, - "worldenvironmentday": 47522, - "worldly": 36268, - "worldo": 41698, - "worldof": 22636, - "worldre": 33951, - "worlds": 7691, - "worldseries": 26695, - "worldtour": 23202, - "worldwater": 41176, - "worldwaterday": 44520, - "worldwide": 6214, - "worm": 33709, - "worm": 10945, - "worms": 20231, - "worn": 9037, - "worried": 11911, - "worries": 17684, - "worry": 7534, - "worrying": 24058, - "worse": 8236, - "worsen": 46344, - "worshi": 31840, - "worship": 46399, - "worship": 9023, - "worst": 5719, - "wort": 30209, - "worth": 10671, - "worth": 2450, - "worthing": 39929, - "worthit": 40830, - "worthless": 44736, - "worths": 44633, - "worthwhile": 36295, - "worthy": 8881, - "worx": 44973, - "wot": 24863, - "wou": 5279, - "would": 39873, - "would": 1311, - "wouldn": 5878, - "wouldnt": 41595, - "wound": 19231, - "wounded": 14859, - "wounds": 21290, - "woven": 19830, - "wow": 22191, - "wow": 2781, - "woz": 44558, - "wozni": 47782, - "wp": 15378, - "wp": 13302, - "wpg": 35048, - "wps": 33386, - "wq": 45195, - "wr": 1189, - "wr": 8028, - "wra": 3852, - "wra": 46004, - "wral": 49050, - "wrangler": 30923, - "wrap": 7094, - "wrapped": 9875, - "wrapping": 15223, - "wraps": 18236, - "wrath": 29783, - "wray": 48943, - "wrc": 16004, - "wre": 3168, - "wreath": 23091, - "wrec": 20879, - "wreck": 28775, - "wreck": 15017, - "wrecked": 32695, - "wreckem": 45676, - "wrecking": 36956, - "wrecks": 45545, - "wren": 20191, - "wren": 31970, - "wrench": 30980, - "wrest": 4177, - "wrestle": 17097, - "wrestle": 28086, - "wrestlemania": 18849, - "wrestler": 19790, - "wrestlers": 25902, - "wrestling": 31292, - "wrestling": 5904, - "wrexham": 34479, - "wri": 7667, - "wri": 42007, - "wright": 28616, - "wright": 6991, - "wrights": 43711, - "wrigley": 33538, - "wrink": 22201, - "wrinkle": 46642, - "wrinkles": 35525, - "wrist": 19243, - "wrist": 16139, - "wristband": 36890, - "wristbands": 44864, - "writ": 2902, - "write": 28874, - "write": 4946, - "writer": 27886, - "writer": 4422, - "writers": 18742, - "writers": 7307, - "writerslife": 25007, - "writes": 8023, - "writing": 16053, - "writing": 2979, - "writingcommunity": 39178, - "writings": 36259, - "written": 5231, - "wro": 5447, - "wrong": 18381, - "wrong": 3669, - "wrongly": 45642, - "wrote": 5796, - "wrought": 48125, - "wrs": 45280, - "ws": 6300, - "ws": 799, - "wsb": 30681, - "wsbtv": 38394, - "wsj": 19764, - "wski": 12548, - "wsl": 43706, - "wsoc": 40253, - "wson": 33954, - "wsop": 41231, - "wsu": 44674, - "wsu": 32913, - "wsw": 43285, - "wt": 15873, - "wt": 12255, - "wta": 25984, - "wtc": 39718, - "wtf": 6891, - "wth": 23021, - "wthr": 45269, - "wti": 47345, - "wto": 36406, - "wts": 32159, - "wu": 9710, - "wu": 9837, - "wud": 43870, - "wul": 35154, - "wunder": 36661, - "wur": 24040, - "wurst": 44409, - "wusa": 40021, - "wut": 28590, - "wv": 18920, - "wv": 14743, - "wvu": 44878, - "wvu": 25879, - "ww": 3181, - "ww": 4491, - "wwc": 26505, - "wwdc": 47441, - "wwe": 12112, - "wwe": 5290, - "wwen": 23308, - "wwenetwork": 37228, - "wwenxt": 39898, - "wwer": 32038, - "wwf": 23332, - "wwfc": 42681, - "wwg": 35322, - "wwi": 20194, - "wwii": 10261, - "www": 26074, - "www": 9667, - "wwwbigbaldhead": 30761, - "wwww": 34224, - "wwww": 25200, - "wwwww": 48268, - "wwx": 47431, - "wx": 18192, - "wx": 3561, - "wy": 4665, - "wy": 7625, - "wyatt": 21660, - "wyd": 33113, - "wye": 48436, - "wye": 43751, - "wylie": 49330, - "wyn": 11802, - "wyn": 17504, - "wynn": 36117, - "wynne": 35951, - "wynonna": 41456, - "wynonnaearp": 43755, - "wyoming": 18693, - "x": 87, - "x": 343, - "xa": 24831, - "xan": 45530, - "xander": 45601, - "xavi": 36342, - "xavier": 41044, - "xavier": 18567, - "xb": 33678, - "xbox": 18063, - "xbox": 7748, - "xboxone": 27410, - "xc": 12515, - "xchange": 49132, - "xd": 6380, - "xe": 42886, - "xe": 19183, - "xen": 15568, - "xer": 49005, - "xf": 35274, - "xfactor": 25211, - "xfinity": 35107, - "xford": 34732, - "xh": 45771, - "xham": 25284, - "xi": 2467, - "xi": 7376, - "xia": 19854, - "xia": 20724, - "xian": 42570, - "xiao": 49318, - "xiaomi": 27477, - "xico": 38469, - "xide": 17398, - "xie": 40122, - "xie": 15976, - "xii": 36525, - "xiii": 28199, - "xim": 11217, - "xin": 27053, - "xin": 41517, - "xing": 14383, - "xion": 24164, - "xis": 35793, - "xit": 5316, - "xiumin": 36563, - "xiv": 16125, - "xj": 42453, - "xl": 36529, - "xl": 8833, - "xley": 38223, - "xm": 18626, - "xma": 48805, - "xmas": 48848, - "xmas": 6425, - "xmen": 28708, - "xn": 25388, - "xo": 26936, - "xo": 9000, - "xon": 29186, - "xon": 8482, - "xox": 11531, - "xox": 34050, - "xoxo": 13313, - "xp": 15651, - "xper": 32200, - "xperia": 37615, - "xpo": 44377, - "xpress": 31809, - "xq": 40606, - "xr": 26276, - "xrp": 26965, - "xs": 16397, - "xt": 1052, - "xtina": 45520, - "xton": 32666, - "xton": 10597, - "xtra": 26969, - "xtre": 27025, - "xtreme": 33483, - "xu": 42063, - "xu": 37198, - "xv": 17768, - "xvi": 44031, - "xx": 5675, - "xx": 3553, - "xxl": 29777, - "xxx": 33923, - "xxx": 8352, - "xxxx": 32035, - "xxxx": 22819, - "xxxxx": 44195, - "xy": 20023, - "xy": 11443, - "y": 88, - "y": 344, - "ya": 5018, - "ya": 1430, - "yaa": 48847, - "yaa": 34498, - "yaan": 34680, - "yab": 27737, - "yach": 9039, - "yacht": 43806, - "yacht": 12859, - "yachts": 29260, - "yad": 13276, - "yad": 40047, - "yadav": 26650, - "yaf": 38019, - "yag": 35081, - "yah": 16170, - "yah": 12381, - "yaho": 37929, - "yahoo": 38152, - "yahoo": 16846, - "yak": 11014, - "yak": 29074, - "yaki": 44677, - "yaku": 29572, - "yakuza": 42628, - "yal": 16198, - "yal": 13418, - "yale": 39926, - "yale": 17157, - "yall": 9210, - "yam": 6666, - "yam": 19318, - "yama": 23512, - "yamaha": 18854, - "yan": 3949, - "yan": 4788, - "yana": 18698, - "yand": 38609, - "yang": 23818, - "yang": 12605, - "yani": 26439, - "yankee": 21554, - "yankees": 11889, - "yann": 40246, - "yann": 38657, - "yao": 45231, - "yap": 48700, - "yap": 34468, - "yar": 6786, - "yar": 23071, - "yard": 20234, - "yard": 4313, - "yards": 7550, - "yarmouth": 45941, - "yarn": 19702, - "yarra": 46824, - "yas": 8168, - "yas": 20570, - "yash": 30216, - "yash": 37836, - "yasi": 37700, - "yasss": 23873, - "yat": 29443, - "yat": 34965, - "yates": 27677, - "yatra": 38932, - "yav": 41275, - "yaw": 31989, - "yawn": 48643, - "yay": 20614, - "yay": 6712, - "yaya": 37608, - "yaz": 19348, - "yaz": 42252, - "yb": 41785, - "yb": 27615, - "yc": 11931, - "ycle": 38089, - "yd": 29896, - "yd": 9534, - "yday": 15899, - "yds": 24819, - "ye": 693, - "ye": 4582, - "yea": 13687, - "yeah": 29405, - "yeah": 3908, - "year": 5163, - "year": 935, - "yearbook": 21636, - "yearling": 48392, - "yearly": 24541, - "yearof": 31944, - "yearofthe": 47899, - "years": 30864, - "years": 1151, - "yearsof": 14932, - "yearswith": 45249, - "yeast": 25819, - "yeats": 44903, - "yed": 28137, - "yed": 3301, - "yee": 18114, - "yee": 23108, - "yeezy": 24901, - "yeg": 16854, - "yeg": 11976, - "yegfood": 48711, - "yeh": 21331, - "yel": 3323, - "yel": 48164, - "yell": 30824, - "yelled": 39199, - "yelling": 26581, - "yellow": 12059, - "yellow": 4481, - "yellowstone": 29241, - "yelp": 31674, - "yemen": 29276, - "yemen": 12513, - "yemeni": 44656, - "yemi": 42267, - "yen": 29602, - "yen": 17960, - "yeo": 32292, - "yeo": 43830, - "yeol": 15808, - "yeon": 16602, - "yep": 10964, - "yer": 15491, - "yer": 2371, - "yers": 3722, - "yes": 21620, - "yes": 1958, - "yess": 42778, - "yess": 40189, - "yesss": 36210, - "yessss": 45620, - "yester": 1905, - "yesterday": 1926, - "yesterdays": 36238, - "yesung": 38527, - "yet": 2296, - "yeti": 34228, - "yev": 39855, - "yew": 34660, - "yey": 45447, - "yg": 16396, - "ygk": 44758, - "ygo": 46166, - "yh": 41978, - "yi": 5826, - "yi": 14762, - "yield": 16825, - "yields": 24856, - "yikes": 25094, - "yin": 26476, - "yin": 23543, - "ying": 42933, - "ying": 910, - "yixing": 32120, - "yk": 30965, - "yl": 2656, - "yl": 4045, - "ylan": 41875, - "ylde": 42850, - "yle": 32305, - "yle": 10770, - "ylene": 34239, - "yler": 48081, - "yles": 42860, - "ylon": 22375, - "ylor": 48468, - "ym": 1786, - "ym": 19587, - "yman": 29077, - "ymc": 47101, - "ymca": 22369, - "yment": 8199, - "ymes": 39968, - "ymi": 5271, - "ymm": 37133, - "ymoun": 41426, - "ymouth": 36429, - "yn": 2823, - "yn": 4100, - "yne": 18238, - "ynes": 18020, - "ynn": 10499, - "ynna": 48292, - "ynwa": 27372, - "yo": 586, - "yo": 3497, - "yoda": 31922, - "yof": 5966, - "yofficial": 21818, - "yofthe": 43983, - "yog": 34985, - "yog": 36539, - "yoga": 25872, - "yoga": 5523, - "yogh": 32626, - "yoghurt": 33491, - "yogi": 22766, - "yogur": 16137, - "yogurt": 16819, - "yoh": 48880, - "yoke": 41969, - "yoko": 25929, - "yoko": 32256, - "yokohama": 42409, - "yol": 19387, - "yol": 35218, - "yolanda": 43845, - "yolo": 20905, - "yom": 34718, - "yom": 44527, - "yon": 10147, - "yon": 7604, - "yong": 27960, - "yong": 20887, - "yonge": 48592, - "yoo": 25842, - "yoo": 20775, - "yoon": 30863, - "yoon": 22113, - "yoona": 32736, - "yoongi": 24037, - "yor": 2028, - "yor": 21132, - "york": 5318, - "york": 2705, - "yorker": 23865, - "yorkers": 41041, - "yorks": 39093, - "yorkshi": 43367, - "yorkshire": 27007, - "yorkshire": 8633, - "yoruba": 46083, - "yos": 35607, - "yosemite": 25893, - "yoshi": 22920, - "yoshi": 25354, - "yot": 22875, - "yotes": 46157, - "yotpo": 26113, - "you": 1562, - "you": 592, - "youare": 33879, - "youcan": 32498, - "youknow": 47919, - "youknow": 41088, - "youn": 1596, - "young": 6939, - "young": 1888, - "younger": 10414, - "youngest": 12316, - "youngjae": 46426, - "youngster": 35881, - "youngsters": 28098, - "younow": 33831, - "your": 2130, - "your": 695, - "youre": 28344, - "youre": 19695, - "yourown": 28583, - "yours": 3834, - "yourself": 3053, - "yourselves": 19747, - "youth": 10743, - "youth": 3281, - "youthful": 37480, - "youths": 23614, - "youts": 22737, - "youtu": 13868, - "youtube": 31258, - "youtube": 3895, - "youtuber": 24720, - "youtubers": 36822, - "youu": 35055, - "youuu": 35324, - "youuuu": 47123, - "yoy": 41865, - "yp": 38370, - "yp": 34734, - "ypg": 37386, - "yql": 46122, - "yqr": 36881, - "yr": 18395, - "yr": 4333, - "yrs": 4822, - "ys": 1971, - "ys": 961, - "yser": 33121, - "ysis": 4843, - "ysl": 45681, - "ysm": 23842, - "yst": 40528, - "yt": 36777, - "yt": 14779, - "ytd": 47524, - "yte": 48172, - "yu": 3371, - "yu": 8887, - "yuan": 26236, - "yuck": 48282, - "yugo": 48231, - "yuh": 42547, - "yui": 47932, - "yuk": 17037, - "yuk": 24063, - "yuki": 34010, - "yukon": 27094, - "yul": 39832, - "yum": 6869, - "yum": 7259, - "yuma": 47566, - "yummy": 7687, - "yun": 14976, - "yun": 18288, - "yung": 44545, - "yung": 17676, - "yunho": 39748, - "yup": 13231, - "yur": 42533, - "yuri": 23823, - "yusuf": 33222, - "yuv": 36784, - "yves": 33698, - "yvon": 23327, - "yvonne": 32583, - "yvr": 29058, - "yw": 33741, - "yx": 35624, - "yxe": 34240, - "yy": 3433, - "yy": 8321, - "yya": 37444, - "yyc": 27542, - "yyc": 11741, - "yyj": 26203, - "yyy": 11514, - "yyyy": 38749, - "yyyy": 16955, - "yyyyy": 26089, - "yyyyyy": 47055, - "yz": 37579, - "yz": 46451, - "yü": 48232, - "z": 89, - "z": 345, - "za": 3710, - "za": 2186, - "zab": 22982, - "zable": 37002, - "zac": 25501, - "zac": 19159, - "zach": 13401, - "zach": 11815, - "zachary": 32401, - "zack": 30567, - "zack": 19120, - "zad": 47314, - "zad": 27838, - "zada": 34889, - "zaf": 21837, - "zafar": 46668, - "zag": 26091, - "zag": 29346, - "zagre": 34107, - "zagreb": 35355, - "zah": 23258, - "zah": 43297, - "zaha": 44408, - "zai": 44329, - "zai": 27065, - "zain": 34400, - "zain": 45366, - "zak": 13050, - "zak": 20738, - "zaki": 48091, - "zal": 20552, - "zal": 33298, - "zam": 7218, - "zam": 41578, - "zambia": 21671, - "zan": 7284, - "zan": 17835, - "zana": 39643, - "zand": 37712, - "zane": 34786, - "zani": 45373, - "zania": 15059, - "zano": 27637, - "zanzi": 47835, - "zap": 24134, - "zapp": 33504, - "zappa": 46592, - "zar": 5458, - "zar": 16392, - "zara": 24454, - "zardari": 20174, - "zas": 48261, - "zation": 3683, - "zawa": 49281, - "zay": 7102, - "zayed": 36726, - "zayn": 22292, - "zayn": 10308, - "zaynmalik": 25278, - "zazzle": 47857, - "ze": 2254, - "ze": 1298, - "zeal": 44951, - "zealand": 7618, - "zeb": 46518, - "zebra": 47394, - "zebra": 22548, - "zed": 21047, - "zed": 1993, - "zedd": 45608, - "zee": 25468, - "zee": 14080, - "zeiss": 47460, - "zeit": 37898, - "zeit": 37906, - "zek": 40829, - "zeke": 47065, - "zel": 10389, - "zel": 12027, - "zelda": 17138, - "zell": 39526, - "zen": 8518, - "zen": 3928, - "zend": 33478, - "zendaya": 35956, - "zenith": 44740, - "zens": 15298, - "zeph": 40726, - "zepp": 22977, - "zeppelin": 25408, - "zer": 6118, - "zer": 3716, - "zero": 14867, - "zero": 5848, - "zers": 9547, - "zes": 4073, - "zest": 37709, - "zet": 34098, - "zeta": 30954, - "zetta": 45993, - "zeus": 32800, - "zey": 46647, - "zh": 33389, - "zh": 41621, - "zhang": 21127, - "zhen": 37374, - "zhen": 33236, - "zhou": 17384, - "zhu": 42049, - "zi": 2651, - "zi": 5819, - "zia": 13764, - "zid": 30235, - "zidane": 34643, - "zie": 29316, - "zie": 8956, - "zieg": 40157, - "ziegler": 46812, - "ziel": 32151, - "zier": 15399, - "zies": 38001, - "ziest": 28159, - "zig": 15950, - "zig": 21345, - "ziggy": 39274, - "zik": 30125, - "zika": 28783, - "zil": 25039, - "zil": 33190, - "zilla": 17879, - "zim": 8112, - "zim": 22577, - "zimbab": 12373, - "zimbabwe": 45668, - "zimbabwe": 13583, - "zimmer": 27452, - "zimmer": 35211, - "zimmerman": 38231, - "zin": 14085, - "zin": 21278, - "zinc": 27458, - "zind": 26206, - "zindabad": 42208, - "zine": 16100, - "zing": 25062, - "zing": 3152, - "zinger": 42027, - "zio": 13906, - "zion": 31763, - "zion": 20963, - "zione": 36161, - "zionist": 33078, - "zip": 26479, - "zip": 16083, - "zipper": 33670, - "zir": 31892, - "zl": 39168, - "zlat": 32489, - "zlatan": 37877, - "zm": 43691, - "zman": 24248, - "zn": 18004, - "zo": 4397, - "zo": 5056, - "zodi": 22660, - "zodiac": 27753, - "zoe": 43114, - "zoe": 16662, - "zoey": 39871, - "zog": 40680, - "zol": 25939, - "zola": 46105, - "zom": 6623, - "zombi": 29452, - "zombie": 11819, - "zombies": 46702, - "zombies": 16517, - "zon": 15109, - "zon": 14618, - "zona": 42134, - "zone": 37197, - "zone": 4442, - "zones": 17247, - "zoning": 36790, - "zoo": 8182, - "zoo": 7147, - "zoom": 32671, - "zoom": 13909, - "zor": 17605, - "zou": 38072, - "zr": 39275, - "zs": 35248, - "zshq": 41442, - "zt": 42629, - "zu": 4091, - "zu": 14184, - "zucchini": 29873, - "zucker": 26890, - "zuckerberg": 30066, - "zul": 31146, - "zulu": 32821, - "zum": 35094, - "zuma": 23326, - "zumba": 32976, - "zun": 42440, - "zur": 17128, - "zurich": 21288, - "zw": 42188, - "zx": 31604, - "zy": 6615, - "zy": 2303, - "zyk": 39112, - "zyme": 36472, - "zyn": 45287, - "zz": 1544, - "zz": 4943, - "zza": 14642, - "zzi": 13974, - "zzie": 18635, - "zzle": 7873, - "zzled": 39075, - "zzo": 14036, - "zzy": 21275, - "zzy": 8353, - "zzz": 20055, - "zzzz": 35742, - "zzzz": 43103, - "{": 90, - "{": 346, - "{}": 39025, - "|": 91, - "|#": 31183, - "|": 347, - "|@": 41677, - "||": 7566, - "}": 92, - "}": 348, - "~": 93, - "~!": 31181, - "~\"": 48442, - "~": 349, - "~>": 43291, - "~@": 44247, - "~~": 11461, - "~~": 16671, - "~~~": 32472, - "~~~~": 28295, - "¡": 94, - "¡": 350, - "¡ï¸ı": 15113, - "¡ï¸ı": 4174, - "¡ľ": 43991, - "¢": 95, - "¢": 351, - "£": 96, - "£": 352, - "£ï¸ı": 18446, - "¤": 97, - "¤": 353, - "¥": 98, - "¥": 354, - "¦": 99, - "¦": 355, - "¦Ī": 47615, - "§": 100, - "§": 356, - "¨": 101, - "¨": 357, - "©": 102, - "©": 358, - "ª": 103, - "ª": 359, - "«": 104, - "«": 360, - "¬": 105, - "¬": 361, - "¬ë": 31736, - "®": 106, - "®": 362, - "¯": 107, - "¯": 363, - "°": 108, - "°:": 21787, - "°": 364, - "°ï¸ı": 34777, - "±": 109, - "±": 365, - "±ï¸ı": 41020, - "²": 110, - "²": 366, - "³": 111, - "³": 367, - "³ï¸ı": 22195, - "³ï¸ı": 24706, - "´": 112, - "´": 368, - "µ": 113, - "µ": 369, - "µï¸ı": 27605, - "¶": 114, - "¶": 370, - "·": 115, - "·": 371, - "¸": 116, - "¸": 372, - "¸ë": 19693, - "¹": 117, - "¹": 373, - "º": 118, - "º": 374, - "»": 119, - "»": 375, - "¼": 120, - "¼": 376, - "½": 121, - "½": 377, - "½ï¸ı": 31333, - "¾": 122, - "¾": 378, - "¿": 123, - "¿": 379, - "À": 124, - "À": 380, - "Á": 125, - "Á": 381, - "Â": 126, - "Â": 382, - "¡": 26868, - "¡": 10830, - "¡¡": 45505, - "¢": 41359, - "£": 31117, - "£": 1950, - "Â¥": 20199, - "¨": 19957, - "¨¨": 23089, - "¨¨¨¨": 41223, - "©": 31148, - "©": 5811, - "«": 14434, - "®": 30857, - "®": 8436, - "¯": 38682, - "¯": 43593, - "¯\\": 44096, - "¯\\_(": 45115, - "°": 21305, - "°": 6858, - "²": 41175, - "´": 30560, - "´": 12559, - "·": 14844, - "º": 28059, - "»": 31642, - "»": 7599, - "½": 33613, - "¿": 44559, - "¿": 17133, - "ÂŃ": 22618, - "Ã": 127, - "Ã": 383, - "á": 7261, - "á": 22229, - "án": 38340, - "án": 21385, - "â": 26170, - "ã": 19339, - "ão": 21141, - "ä": 10896, - "ä": 47276, - "än": 42787, - "Ã¥": 23176, - "æ": 42495, - "ç": 10067, - "ça": 22711, - "è": 12138, - "è": 37761, - "ère": 30272, - "ès": 41210, - "é": 3459, - "é": 4166, - "éal": 45251, - "ée": 13489, - "és": 20507, - "ê": 27515, - "ë": 29526, - "ë": 40520, - "î": 48704, - "ï": 35689, - "ñ": 6445, - "ña": 17753, - "ño": 16574, - "ños": 40104, - "ó": 8891, - "ó": 27733, - "ón": 13926, - "ô": 26815, - "ö": 7255, - "ö": 37423, - "ör": 31762, - "ø": 17483, - "ø": 45598, - "ú": 17963, - "ú": 36019, - "ü": 6522, - "ü": 47177, - "ür": 26132, - "ÃĹ": 16165, - "Ãł": 36149, - "Ãł": 21259, - "ÃŃ": 8366, - "ÃŃ": 23928, - "ÃŃa": 16609, - "ÃŃn": 33623, - "Ä": 128, - "Ä": 384, - "ı": 18562, - "ı": 41901, - "Äģ": 23134, - "Äĩ": 31719, - "Äį": 45414, - "ÄŁ": 26540, - "Å": 129, - "Å": 385, - "Å¡": 35621, - "ÅĤ": 40419, - "Åį": 41267, - "ÅŁ": 21254, - "ÅŁ": 40706, - "Æ": 130, - "Æ": 386, - "Ç": 131, - "Ç": 387, - "È": 132, - "È": 388, - "É": 133, - "É": 389, - "Ê": 134, - "Ê": 390, - "Ë": 135, - "Ë": 391, - "Ì": 136, - "Ì": 392, - "Ìĩ": 16384, - "Í": 137, - "Í": 393, - "Î": 138, - "Î": 394, - "Ï": 139, - "Ï": 395, - "Ïī": 38065, - "Ð": 140, - "Ð": 396, - "а": 16912, - "а": 27080, - "аÐ": 31090, - "в": 39813, - "е": 22176, - "и": 16701, - "иÐ": 29503, - "к": 27152, - "л": 47611, - "м": 38018, - "н": 22705, - "о": 13506, - "о": 29386, - "оÐ": 20978, - "од": 38416, - "оÑĤ": 28599, - "п": 26302, - "пÑĢи": 46321, - "пÑĢиÑĢода": 48150, - "Ñ": 141, - "Ñ": 397, - "ÑĢ": 16370, - "ÑĢи": 41092, - "ÑĢод": 47039, - "ÑĢода": 47929, - "Ñģ": 23669, - "ÑĤ": 17875, - "Ñĥ": 39729, - "ÑĦ": 27993, - "ÑĦоÑĤ": 35155, - "ÑĦоÑĤо": 38981, - "Ñĭ": 45001, - "Ò": 142, - "Ò": 398, - "Ó": 143, - "Ó": 399, - "Ô": 144, - "Ô": 400, - "Õ": 145, - "Õ": 401, - "Ö": 146, - "Ö": 402, - "×": 147, - "×": 403, - "Ø": 148, - "Ø": 404, - "ا": 6042, - "ا": 22625, - "اØ": 13189, - "ار": 40137, - "اÙ": 8453, - "اÙĦ": 12973, - "اÙħ": 47626, - "اÙĨ": 42773, - "اÙĨ": 33200, - "ب": 16378, - "ب": 35330, - "Ø©": 20915, - "ت": 18197, - "ت": 44333, - "ج": 26375, - "Ø®": 41495, - "د": 19872, - "د": 35566, - "ر": 10948, - "ر": 24933, - "رÙĬ": 43273, - "ز": 36169, - "س": 17856, - "Ø´": 28770, - "ص": 27271, - "Ø·": 32050, - "ع": 18843, - "غ": 48510, - "ØŃ": 25722, - "Ù": 149, - "Ù": 405, - "Ùģ": 24112, - "ÙĤ": 27585, - "Ùĥ": 33499, - "ÙĦ": 14251, - "ÙĦ": 37899, - "Ùħ": 12986, - "Ùħ": 29945, - "ÙĨ": 16655, - "ÙĨ": 25386, - "Ùĩ": 34274, - "Ùĩ": 31343, - "ÙĪ": 12203, - "ÙĪ": 38310, - "ÙĪØ±": 48242, - "ÙĬ": 12046, - "ÙĬ": 23853, - "Ú": 150, - "Ú": 406, - "Ú©": 26475, - "Û": 151, - "Û": 407, - "Ûģ": 40480, - "ÛĮ": 21452, - "ÛĮ": 32703, - "Ü": 152, - "Ü": 408, - "Ý": 153, - "Ý": 409, - "Þ": 154, - "Þ": 410, - "ß": 155, - "ß": 411, - "à": 156, - "à": 412, - "à¤": 3124, - "त": 27263, - "द": 29552, - "न": 26090, - "प": 44149, - "ब": 43599, - "म": 48254, - "म": 26774, - "य": 37299, - "र": 39136, - "र": 19052, - "ल": 30881, - "व": 39545, - "श": 43181, - "स": 28505, - "ह": 29446, - "ा": 37973, - "ा": 13343, - "ि": 26721, - "à¤Ĥ": 30833, - "à¤ķ": 22067, - "à¤Ĺ": 42598, - "à¤ľ": 39561, - "à¥": 7410, - "à¥Ģ": 45791, - "à¥Ģ": 25751, - "à¥ģ": 39653, - "à¥ĩ": 48612, - "à¥ĩ": 25130, - "à¥ĭ": 34452, - "à¥į": 19389, - "à¦": 11322, - "া": 41532, - "à§": 26339, - "à¨": 15741, - "à©": 32086, - "àª": 22990, - "à«": 48347, - "à¬": 32791, - "à®": 6022, - "த": 34691, - "ன": 43394, - "ப": 47388, - "à®®": 35463, - "à®°": 43270, - "ல": 47705, - "ா": 32831, - "ி": 27126, - "à®ķ": 36168, - "à®Ł": 45263, - "à¯": 11259, - "à¯ģ": 33115, - "à¯į": 16631, - "à°": 12100, - "à±": 23550, - "à±į": 46098, - "à²": 9992, - "ಿ": 47797, - "à³": 20745, - "à³į": 36148, - "à´": 15418, - "àµ": 27392, - "àµį": 45266, - "à¶": 29881, - "à·": 30766, - "à¸": 1777, - "ม": 26137, - "ม": 29570, - "ย": 27241, - "ย": 33091, - "ร": 32225, - "ร": 27331, - "ล": 34696, - "ล": 32746, - "ว": 26990, - "ว": 30245, - "ส": 37883, - "ส": 35737, - "ห": 33064, - "ะ": 43920, - "ะ": 49234, - "ั": 14978, - "า": 11529, - "า": 38476, - "าà¸": 12330, - "ิ": 17092, - "ี": 22421, - "ี": 20278, - "ีà¹Ī": 31511, - "ื": 47991, - "ุ": 30524, - "ู": 35273, - "à¸ģ": 30767, - "à¸ģà¸": 31474, - "à¸Ħ": 31757, - "à¸Ħà¸": 39628, - "à¸ĩ": 24603, - "à¸ĩ": 33382, - "à¸Ī": 47608, - "à¸Ĭ": 46324, - "à¸Ķ": 31107, - "à¸Ķ": 38825, - "à¸ķ": 40273, - "à¸ķ": 41108, - "à¸Ĺ": 36171, - "à¸Ļ": 17474, - "à¸Ļ": 17639, - "à¸Ļà¸": 23121, - "à¸ļ": 33859, - "à¸ļ": 39616, - "à¸ŀ": 48171, - "à¸Ń": 13398, - "à¸Ń": 32818, - "à¸Ńà¸": 14649, - "à¸Ńà¸ĩ": 46622, - "à¹": 4484, - "à¹Ģ": 13729, - "à¹Ģà¸": 14076, - "à¹ģà¸": 23916, - "à¹Ĥ": 33118, - "à¹ĥ": 40962, - "à¹Ħà¸": 31718, - "à¹ĩ": 38699, - "à¹Ī": 11722, - "à¹ī": 13123, - "à¹Į": 28353, - "à¼": 46186, - "à½": 39219, - "á": 157, - "á": 413, - "á´": 19036, - "áµ": 17330, - "áĢ": 45932, - "áĥ": 24829, - "áĥ¦": 32193, - "â": 158, - "â": 414, - "â¤": 25087, - "⤵ï¸ı": 36026, - "â¬": 7930, - "â¬ħï¸ı": 42111, - "â¬Ĩ": 27718, - "â¬Ĩï¸ı": 32798, - "â¬ĩ": 10917, - "â¬ĩ": 39370, - "â¬ĩï¸ı": 25621, - "â¬ĩï¸ı": 13984, - "â¬ĩï¸ıâ¬ĩï¸ı": 40159, - "âĢ": 728, - "âĢ¢": 9485, - "âĢ¢": 2701, - "âĢ¢âĢ¢": 15006, - "âĢ¢âĢ¢": 47575, - "âĢ¢âĢ¢âĢ¢âĢ¢": 27502, - "âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢": 48630, - "â̦": 7095, - "â̦\"": 20215, - "â̦..": 47779, - "â̦.": 18615, - "â̦/": 29842, - "â̦": 959, - "â̦â̦": 40066, - "â̲": 32633, - "â̳": 25061, - "â̼": 6578, - "â̼ï¸ı": 15622, - "â̼ï¸ı": 8310, - "â̼ï¸ıâ̼ï¸ı": 33218, - "âĢĭ": 17086, - "âĢĭ": 9844, - "âĢį": 4244, - "âĢįâĻ": 5177, - "âĢįâĻĢï¸ı": 18897, - "âĢįâĻĢï¸ı": 9605, - "âĢįâĻĤ": 8832, - "âĢįâĻĤï¸ı": 21779, - "âĢįâĻĤï¸ı": 10613, - "âĢİ": 31001, - "âĢIJ": 34512, - "âĢĵ": 21070, - "âĢĵ": 1224, - "âĢĶ": 6718, - "âĢĶ": 2005, - "âĢĶ>": 26341, - "âĢĶ@": 28470, - "âĢĶâĢĶ": 10037, - "âĢĶâĢĶ": 44800, - "âĢĶâĢĶâĢĶâĢĶ": 17797, - "âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ": 34432, - "âĢķ": 14236, - "âģ": 1667, - "âģ£": 31089, - "âģ£": 16845, - "âģ¦": 2773, - "âģ¦": 34855, - "âģ¦@": 2859, - "âģ¦âģ¦@": 27783, - "âģ©": 20097, - "âģ©,": 48749, - "âģ©.": 35777, - "âģ©": 2918, - "âģīï¸ı": 46534, - "âģł": 23881, - "âģł": 13503, - "âģłâģł": 33488, - "âĤ": 5227, - "âĤ¬": 34919, - "âĤ¬": 6309, - "âĤ¹": 21777, - "âĥ": 2805, - "âĥ£": 11250, - "âĥ£": 3076, - "âĥ£@": 48291, - "âĦ": 8604, - "âĦ¢": 29438, - "âĦ¢": 11675, - "âĦ¹": 45462, - "âĨ": 6059, - "âĨĴ": 7481, - "âĨĵ": 41603, - "âĩ": 27228, - "âĪ": 17788, - "âī": 22684, - "âīĪ": 45451, - "âĮ": 17848, - "âĮļ": 31301, - "âĮļï¸ı": 35931, - "âı": 7960, - "âı©": 40847, - "âı°": 12714, - "âı±": 33149, - "âı³": 47617, - "âĵ": 27400, - "âĶ": 13389, - "âĶĢ": 45139, - "âĶģ": 42022, - "âķ": 17027, - "âķIJ": 48039, - "âĸ": 4168, - "âĸª": 21203, - "âĸª": 36628, - "âĸªï¸ı": 24974, - "âĸ«": 39478, - "âĸ¬": 33798, - "âĸ¬âĸ¬": 36975, - "âĸ¶": 12509, - "âĸ¶": 21126, - "âĸ¶ï¸ı": 14442, - "âĸº": 46061, - "âĸº": 12086, - "âĸ½": 45634, - "âĸł": 36791, - "âĹ": 9323, - "âĹĨ": 48961, - "âĹı": 26999, - "âĺ": 1741, - "âĺ®": 45851, - "âĺ¹": 28811, - "âĺ¹ï¸ı": 39605, - "âĺº": 5010, - "âĺº": 8703, - "âĺºâĺº": 46051, - "âĺºï¸ı": 11506, - "âĺºï¸ı": 7779, - "âĺºï¸ıâĺºï¸ı": 41315, - "âĺ¼": 38877, - "âĺĢ": 32146, - "âĺĢ": 22242, - "âĺĢï¸ı": 12817, - "âĺĢï¸ı": 8219, - "âĺĢï¸ıâĺĢï¸ı": 44550, - "âĺģ": 25195, - "âĺģï¸ı": 35197, - "âĺĥ": 38972, - "âĺħ": 9339, - "âĺħ": 10643, - "âĺħâĺħ": 12681, - "âĺħâĺħ": 36644, - "âĺħâĺħâĺħâĺħ": 34431, - "âĺħâĺħâĺħâĺħ": 44034, - "âĺħâĺħâĺħâĺħâĺħ": 45984, - "âĺĨ": 23941, - "âĺĨ": 13439, - "âĺİ": 24045, - "âĺİ": 45493, - "âĺİï¸ı": 27219, - "âĺij": 20983, - "âĺij": 42300, - "âĺijï¸ı": 22291, - "âĺĶï¸ı": 31238, - "âĺķ": 11454, - "âĺķ": 26561, - "âĺķï¸ı": 25839, - "âĺķï¸ı": 15499, - "âĺĺ": 23483, - "âĺĺï¸ı": 31454, - "âĺĿ": 21982, - "âĺĿï¸ı": 38891, - "âĺŀ": 31255, - "âĺłï¸ı": 34672, - "âĻ": 1548, - "âĻ¡": 11091, - "âĻ¡": 6251, - "âĻ¡âĻ¡": 22360, - "âĻ¡âĻ¡": 34267, - "âĻ¡âĻ¡âĻ¡": 36611, - "âϤ": 47435, - "âĻ¥": 4622, - "âĻ¥": 3405, - "âĻ¥âĻ¥": 12975, - "âĻ¥âĻ¥": 19604, - "âĻ¥âĻ¥âĻ¥": 23255, - "âĻ¥âĻ¥âĻ¥âĻ¥": 49020, - "âĻ¥ï¸ı": 17774, - "âĻ¥ï¸ı": 10561, - "âĻ¥ï¸ıâĻ¥ï¸ı": 40309, - "âϦ": 32376, - "âϦ": 47547, - "âĻ©": 30339, - "âĻ©âĻ«": 31636, - "âĻª": 27364, - "âĻª": 12382, - "âĻ«": 39217, - "âĻ«": 10814, - "âϬ": 24753, - "âĻ»": 39611, - "âĻ»ï¸ı": 46075, - "âļ": 2234, - "âļ¡": 40098, - "âļ¡": 20712, - "âļ¡ï¸ı": 19500, - "âļ¡ï¸ı": 11605, - "âļ¡ï¸ıâļ¡ï¸ı": 45922, - "âļª": 11922, - "âļª": 36373, - "âļªï¸ı": 22251, - "âļªï¸ı": 17885, - "âļ«": 15374, - "âļ«ï¸ı": 26529, - "âļ«ï¸ı": 24649, - "âļ½": 4867, - "âļ½": 13173, - "âļ½âļ½": 43259, - "âļ½ï¸ı": 11342, - "âļ½ï¸ı": 6768, - "âļ½ï¸ıâļ½ï¸ı": 30358, - "âļ½ï¸ıâļ½ï¸ı": 44148, - "âļ¾": 11314, - "âļ¾": 34717, - "âļ¾ï¸ı": 24727, - "âļ¾ï¸ı": 14858, - "âļĵ": 23522, - "âļĵï¸ı": 35299, - "âļĶï¸ı": 29361, - "âļľ": 47491, - "âļł": 39203, - "âļłï¸ı": 40966, - "âļłï¸ı": 15596, - "âĽ": 7956, - "âĽ³ï¸ı": 29204, - "âĽĦ": 30668, - "âĽĦï¸ı": 45465, - "âľ": 1508, - "⾨": 7181, - "⾨": 3531, - "⾨⾨": 35174, - "⾨⾨": 21985, - "⾨⾨⾨": 39424, - "âľĤ": 38602, - "âľħ": 29544, - "âľħ": 5564, - "âľĪ": 10682, - "âľĪ": 30712, - "âľĪï¸ı": 26176, - "âľĪï¸ı": 13413, - "âľĬ": 12392, - "âľĬ": 17819, - "âľĬðŁı½": 48547, - "âľĬðŁı¾": 41185, - "âľĭ": 39383, - "âľĭ": 30239, - "âľĮ": 6419, - "âľĮ": 12656, - "âľĮï¸ı": 21906, - "âľĮï¸ı": 12239, - "âľĮðŁı»": 30538, - "âľĮðŁı¼": 30588, - "âľį": 20872, - "âľįï¸ı": 30888, - "âľı": 32574, - "âľıï¸ı": 40724, - "âľĵ": 36700, - "âľĶ": 47200, - "âľĶ": 13749, - "âľĶï¸ı": 40544, - "âľĶï¸ı": 9191, - "âľĸï¸ı": 44133, - "âľĿ": 42220, - "âĿ": 1045, - "âĿ£": 37007, - "âĿ£": 25623, - "âĿ£ï¸ı": 25240, - "âĿ¤": 1266, - "âĿ¤": 2720, - "âĿ¤âĿ¤": 9033, - "âĿ¤âĿ¤": 14058, - "âĿ¤âĿ¤âĿ¤": 16708, - "âĿ¤âĿ¤âĿ¤âĿ¤": 37918, - "âĿ¤âĿ¤âĿ¤âĿ¤": 43970, - "âĿ¤ï¸ı": 2626, - "âĿ¤ï¸ı#": 30281, - "âĿ¤ï¸ı.": 45326, - "âĿ¤ï¸ı": 1752, - "âĿ¤ï¸ı@": 31187, - "âĿ¤ï¸ıâĿ¤ï¸ı": 6713, - "âĿ¤ï¸ıâĿ¤ï¸ı": 10363, - "âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı": 12282, - "âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı": 39167, - "âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı": 29880, - "âĿ¤ï¸ıðŁĴĻ": 37380, - "âĿ¤ï¸ıðŁĺį": 37272, - "âĿ¤ï¸ıðŁĺĺ": 41800, - "âĿ¤ðŁĺį": 49120, - "âĿ¥": 36914, - "âĿĦ": 8501, - "âĿĦ": 30494, - "âĿĦï¸ı": 16834, - "âĿĦï¸ı": 12402, - "âĿĦï¸ıâĿĦï¸ı": 41626, - "âĿĮ": 44485, - "âĿĮ": 17975, - "âĿĵ": 29791, - "âĿĹ": 12868, - "âĿĹ": 29079, - "âĿĹï¸ı": 28642, - "âĿĹï¸ı": 17391, - "âĿĿ": 46951, - "âŀ": 3257, - "âŀ¡": 12854, - "âŀ¡ï¸ı": 31860, - "âŀ¡ï¸ı": 4956, - "âŀ¤": 18651, - "âŀķ": 46526, - "âŀĸ": 21327, - "âŀĸ": 34902, - "âŀĸâŀĸ": 23316, - "âŀĸâŀĸâŀĸâŀĸ": 40401, - "âŀľ": 23775, - "âł": 5689, - "âłĢ": 9691, - "âłĢ": 8621, - "âłĢâłĢ": 11466, - "âłĢâłĢ": 39092, - "âłĢâłĢâłĢâłĢ": 20976, - "âłĢâłĢâłĢâłĢâłĢâłĢâłĢâłĢ": 46063, - "âŃ": 5527, - "âŃIJ": 6410, - "âŃIJ": 19012, - "âŃIJâŃIJ": 32663, - "âŃIJï¸ı": 12427, - "âŃIJï¸ı": 10251, - "âŃIJï¸ıâŃIJï¸ı": 18640, - "âŃIJï¸ıâŃIJï¸ıâŃIJï¸ı": 40746, - "ã": 159, - "ã": 415, - "ãĢ": 4092, - "ãĢģ": 45262, - "ãĢĤ": 38060, - "ãĢĤ": 38000, - "ãĢĬ": 39920, - "ãĢĭ": 32898, - "ãĢĮ": 18116, - "ãĢį": 19149, - "ãĢİ": 26947, - "ãĢı": 30293, - "ãĢIJ": 12534, - "ãĢij": 12990, - "ãĢľ": 39581, - "ãģ": 4813, - "ãģ¦": 48029, - "ãģ¨": 34671, - "ãģ¨ç¹ĭãģ": 47310, - "ãģ¨ç¹ĭãģĮãĤĬãģŁãģĦ": 48290, - "ãģª": 29104, - "ãģ®": 21575, - "ãģ·": 44130, - "ãģĦ": 33523, - "ãģĦ": 38850, - "ãģĨ": 44235, - "ãģį": 42184, - "ãĤ": 3909, - "ãĤ¢": 26560, - "ãĤ¤": 19319, - "ãĤ¤ãĥ": 36294, - "ãĤ«": 37367, - "ãĤ¯": 31574, - "ãĤ·": 37665, - "ãĤ¸": 32234, - "ãĤ¸ãĥ": 43491, - "ãĤ¹": 22694, - "ãĤ¹": 39220, - "ãĤ¹ãĥ": 32421, - "ãĤ¿": 34941, - "ãĤĬãģ": 40500, - "ãĤĮ": 45211, - "ãĤŃ": 47121, - "ãĥ": 2429, - "ãĥ©": 23007, - "ãĥª": 32115, - "ãĥ«": 33257, - "ãĥ¬": 32965, - "ãĥ³": 17671, - "ãĥ³": 26875, - "ãĥ³ãĤ": 45105, - "ãĥ³ãĥ": 25914, - "ãĥ»": 8415, - "ãĥ»": 11158, - "ãĥ»ãĥ»": 13949, - "ãĥ»ãĥ»ãĥ»": 14234, - "ãĥ¼": 13457, - "ãĥ¼": 30391, - "ãĥ¼ãĥ": 18584, - "ãĥĥ": 28902, - "ãĥĦ": 32173, - "ãĥĪ": 42384, - "ãĥİ": 39967, - "ãĥķãĤ": 33371, - "ãĥŀ": 48924, - "ãĥŃ": 35827, - "ãħ": 5947, - "ãħ¤": 21096, - "ãħ¤ãħ¤": 22583, - "ãħ¤ãħ¤ãħ¤ãħ¤": 39329, - "ãħĭ": 13052, - "ãħĭ": 25108, - "ãħĭãħĭ": 16604, - "ãħĭãħĭ": 42581, - "ãħĭãħĭãħĭ": 46407, - "ãħĭãħĭãħĭãħĭ": 39362, - "ãħł": 16089, - "ãħł": 25781, - "ãħłãħł": 22021, - "ãħłãħł": 34398, - "ãħłãħłãħłãħł": 47028, - "ä": 160, - "ä": 416, - "ä¸": 19759, - "ä¹": 41854, - "äº": 21078, - "人": 36839, - "ä»": 37743, - "ä½": 47466, - "å": 161, - "å": 417, - "å¤": 23170, - "å¥": 29290, - "å®": 27047, - "å°": 34720, - "å±": 46096, - "å¸": 42021, - "å¹": 38780, - "åħ": 34314, - "åĨ": 27972, - "åĨĻ": 44653, - "åĪ": 42748, - "åĭ": 47505, - "åı": 34517, - "åIJ": 41673, - "åĽ": 39027, - "åľ": 37746, - "åŃ": 35751, - "æ": 162, - "æ": 418, - "æĸ": 29032, - "æĹ": 22265, - "æĹ¥": 39121, - "æĹ¥": 37156, - "æĺ": 42891, - "æĻ": 48132, - "æľ": 19277, - "æľ¬": 44353, - "æĿ": 27667, - "æĿ±": 48338, - "ç": 163, - "ç": 419, - "ç¥": 26369, - "ç¥Ń": 42557, - "çµ": 37810, - "ç¹": 43431, - "ç¹ĭãģ": 45930, - "çĶ": 20211, - "çĶŁ": 33375, - "çľ": 33440, - "羣": 41570, - "è": 164, - "è": 420, - "èª": 34002, - "èªķ": 41293, - "é": 165, - "é": 421, - "éģ": 44854, - "éĩ": 38283, - "ê": 166, - "ê": 422, - "ê°": 21122, - "ê°ĵ": 41076, - "ê°ĵìĦ¸ë¸IJ": 41689, - "ê°ķ": 45758, - "ê²": 35555, - "ê³": 36216, - "êµ": 31871, - "ê·": 42680, - "ê¸": 32495, - "ê¹": 24531, - "ê¹Ģ": 25203, - "ë": 167, - "ë": 423, - "ë¦": 24621, - "리": 47649, - "ë§": 28024, - "ë§Ī": 40027, - "ëª": 36311, - "ë¯": 19528, - "민": 34442, - "민": 44632, - "ë°": 15810, - "ë°©": 23273, - "ë°©íĥ": 25081, - "ë°©íĥĦ": 25641, - "ë°©íĥĦìĨĮëħĦëĭ": 26068, - "ë°©íĥĦìĨĮëħĦëĭ¨": 27129, - "ë°ķ": 40988, - "ë²": 48267, - "ë³": 44693, - "ë¹": 24193, - "ëĤ": 27252, - "ëĤĺ": 48484, - "ëĭ": 13094, - "ëĭ¤": 46680, - "ëĭĪ": 33708, - "ëį": 45543, - "ëı": 31972, - "ëĵ": 30850, - "ëĿ": 44317, - "ì": 168, - "ì": 424, - "ì£": 39856, - "주": 45161, - "ì¤": 31153, - "ì§": 16279, - "ì§Ģ": 28836, - "ì§Ħ": 38890, - "ì°": 40742, - "ì¶": 42476, - "ì¶ķ": 46403, - "ì¶ķíķĺ": 47866, - "ì¹": 45088, - "ìĤ": 31061, - "ìĥ": 30587, - "ìĥĿ": 47858, - "ìĦ": 15074, - "ìĦ¸ë": 29254, - "ìĦ¸ë¸": 29658, - "ìĦ¸ë¸IJ": 41415, - "ìĨ": 15115, - "ìĨĮë": 20515, - "ìĨĮëħ": 21391, - "ìĨĮëħĦëĭ": 25887, - "ìĪ": 32757, - "ìĬ": 12125, - "ìĬ¤": 20305, - "ìĬ¤": 23829, - "ìĭ": 23924, - "ìķ": 16071, - "ìķĦ": 23233, - "ìĸ": 31625, - "ìĹ": 13252, - "ìĹIJ": 37622, - "ìĹij": 31036, - "ìĹijìĨ": 42763, - "ìĹijìĨĮ": 45606, - "ìĺ": 21144, - "ìĻ": 39405, - "ìļ": 18541, - "ìļ°": 38415, - "ìļ°": 49344, - "ìĽ": 22543, - "ìĽIJ": 36495, - "ìľ": 20909, - "ìľł": 42890, - "ìĿ": 8276, - "ìĿ´": 12286, - "ìĿ´": 34746, - "ìĿ´ì": 37590, - "ìĿ¼": 43406, - "ìŀ": 20849, - "ìł": 20580, - "ìłķ": 34725, - "í": 169, - "í": 425, - "íģ": 35641, - "íģ¬": 45832, - "íĤ": 43565, - "íĥ": 15012, - "íĥĢ": 41126, - "íĥľ": 37663, - "íĬ": 23215, - "íĬ¸": 48974, - "íĬ¸": 39820, - "íĭ": 34350, - "íĶ": 29450, - "íķ": 15197, - "íķ´": 35286, - "íķĺ": 33992, - "íĺ": 15962, - "íĺ¸": 39657, - "íĺĦ": 34645, - "íĻ": 31882, - "î": 170, - "î": 426, - "îĢ": 36288, - "îĦ": 35368, - "îĮ": 41006, - "îIJ": 16929, - "îIJĴ": 40100, - "ï": 171, - "ï": 427, - "ï¸": 842, - "ï¸İ": 24029, - "ï¸ı": 1392, - "ï¸ı#": 46997, - "ï¸ı:": 32604, - "ï¸ı": 1001, - "ï¸ı@": 34600, - "ï¸ıâĥ£": 17394, - "ï¸ıâĥ£-": 40376, - "ï¸ıâĥ£": 4603, - "ï¿": 27850, - "�": 47356, - "�": 39802, - "ð": 172, - "ð": 428, - "ðĿ": 6874, - "ðĿIJ": 15889, - "ðĿij": 43794, - "ðĿĴ": 43387, - "ðĿĵ": 47110, - "ðĿĹ": 18865, - "ðĿĺ": 26109, - "ðĿĻ": 29415, - "ðŁ": 558, - "ð٤": 1793, - "ðŁ¤£": 9665, - "ðŁ¤£": 9909, - "ðŁ¤£ðŁ¤£": 16430, - "ðŁ¤£ðŁ¤£": 31009, - "ðŁ¤£ðŁ¤£ðŁ¤£": 32262, - "ðŁ¤¤": 39550, - "ðŁ¤¤": 26759, - "ðŁ¤¦": 17186, - "ðŁ¤§": 40983, - "ðŁ¤©": 27351, - "ðŁ¤©": 16074, - "ðŁ¤ª": 44230, - "ðŁ¤ª": 24920, - "ðŁ¤«": 47671, - "ðŁ¤¯": 37595, - "ðŁ¤·": 13185, - "ðŁ¤·ðŁı»âĢįâĻĢï¸ı": 46770, - "ð٤ij": 34801, - "ð٤ĵ": 36580, - "ð٤ĵ": 18928, - "ð٤Ķ": 12706, - "ð٤Ķ": 6497, - "ð٤Ķð٤Ķ": 28490, - "ð٤Ķð٤Ķð٤Ķ": 43361, - "ð٤ĸ": 46146, - "ð٤Ĺ": 16646, - "ð٤Ĺ": 10465, - "ð٤Ĺð٤Ĺ": 44321, - "ð٤ĺ": 10623, - "ð٤ĺ": 17288, - "ð٤ĺðŁı»": 46449, - "ð٤ĺðŁı»": 30891, - "ð٤ĺðŁı¼": 31458, - "ð٤ĺðŁı½": 49362, - "ð٤Ļ": 23800, - "ð٤Ļ": 39101, - "ð٤Ŀ": 35242, - "ð٤ŀ": 29463, - "ð٤ŀ": 38597, - "ðŁ¤Ł": 48509, - "ðŁ¤ł": 36737, - "ð٤Ń": 47289, - "ðŁ¥": 4156, - "ðŁ¥°": 29246, - "ðŁ¥°": 17597, - "ðŁ¥³": 45823, - "ðŁ¥³": 28055, - "ðŁ¥º": 43380, - "ðŁ¥º": 36858, - "ðŁ¥Ĥ": 43805, - "ðŁ¥Ĥ": 25212, - "ðŁ¥ĥ": 47790, - "ðŁ¥ĩ": 34372, - "ðŁ¥ĩ": 20069, - "ðŁ¥Ī": 35858, - "ðŁ¥ī": 36782, - "ðŁ¥Ĭ": 29275, - "ð٦": 6040, - "ð٦ģ": 36367, - "ð٦ģ": 26056, - "ð٦ĥ": 40184, - "ð٦Ħ": 37659, - "ð٦ħ": 28800, - "ð٦Ī": 48984, - "ð٦ĭ": 49325, - "ð٦ĭ": 28985, - "ð٧": 8792, - "ðŁ§¡": 30996, - "ðŁ§¡": 24578, - "ð٧IJ": 33549, - "ðŁħ": 22010, - "ðŁĨ": 9536, - "ðŁĨķ": 34956, - "ðŁĨĺ": 39868, - "ðŁĨļ": 16325, - "ðŁĩ": 1173, - "ðŁĩ¦": 12469, - "ðŁĩ¦": 28565, - "ðŁĩ¦ðŁĩ": 33196, - "ðŁĩ¦ðŁĩ·": 41629, - "ðŁĩ¦ðŁĩº": 25192, - "ðŁĩ§": 14660, - "ðŁĩ§ðŁĩ": 37342, - "ðŁĩ§ðŁĩª": 38794, - "ðŁĩ§ðŁĩ·": 28182, - "ðŁĩ¨": 8889, - "ðŁĩ¨ðŁĩ": 8989, - "ðŁĩ¨ðŁĩ¦": 34324, - "ðŁĩ¨ðŁĩ¦": 16364, - "ðŁĩ¨ðŁĩ³": 36819, - "ðŁĩ¨ðŁĩŃ": 41119, - "ðŁĩ©": 15222, - "ðŁĩ©ðŁĩ": 36350, - "ðŁĩ©ðŁĩª": 21531, - "ðŁĩª": 11428, - "ðŁĩª": 12331, - "ðŁĩªðŁĩ": 13917, - "ðŁĩªðŁĩ¸": 22177, - "ðŁĩªðŁĩº": 34655, - "ðŁĩ«": 12977, - "ðŁĩ«ðŁĩ·": 39109, - "ðŁĩ«ðŁĩ·": 16223, - "ðŁĩ¬": 8129, - "ðŁĩ¬ðŁĩ": 8354, - "ðŁĩ¬ðŁĩ§": 23762, - "ðŁĩ¬ðŁĩ§": 11559, - "ðŁĩ®": 8268, - "ðŁĩ®ðŁĩ": 8347, - "ðŁĩ®ðŁĩª": 34148, - "ðŁĩ®ðŁĩ³": 47299, - "ðŁĩ®ðŁĩ³": 23602, - "ðŁĩ®ðŁĩ¹": 42034, - "ðŁĩ®ðŁĩ¹": 17070, - "ðŁĩ¯": 20090, - "ðŁĩ¯ðŁĩ": 22924, - "ðŁĩ¯ðŁĩµ": 26527, - "ðŁĩ°": 28232, - "ðŁĩ±": 29533, - "ðŁĩ±ðŁĩ": 40941, - "ðŁĩ²": 16411, - "ðŁĩ²ðŁĩ": 17562, - "ðŁĩ²ðŁĩ½": 32073, - "ðŁĩ³": 16645, - "ðŁĩ³ðŁĩ": 17747, - "ðŁĩ³ðŁĩ±": 36747, - "ðŁĩµ": 12127, - "ðŁĩµðŁĩ": 13608, - "ðŁĩµðŁĩ°": 37764, - "ðŁĩµðŁĩ¹": 42621, - "ðŁĩµðŁĩŃ": 42777, - "ðŁĩ·": 16026, - "ðŁĩ·": 9869, - "ðŁĩ·ðŁĩº": 37902, - "ðŁĩ¸": 19447, - "ðŁĩ¸ðŁĩ": 33325, - "ðŁĩ¸ðŁĩª": 39260, - "ðŁĩ¹": 21810, - "ðŁĩ¹ðŁĩ": 36250, - "ðŁĩº": 4054, - "ðŁĩº": 17467, - "ðŁĩºðŁĩ": 4131, - "ðŁĩºðŁĩ¸": 8907, - "ðŁĩºðŁĩ¸": 5688, - "ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸": 18739, - "ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸": 41411, - "ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸": 43357, - "ðŁĩ¿": 25520, - "ðŁĩ¿ðŁĩ¦": 36982, - "ðŁĩŃ": 30370, - "ðŁĮ": 1576, - "ðŁĮ±": 35318, - "ðŁĮ±": 20665, - "ðŁĮ²": 34071, - "ðŁĮ²": 28154, - "ðŁĮ³": 44265, - "ðŁĮ³": 28543, - "ðŁĮ´": 20643, - "ðŁĮ´": 15968, - "ðŁĮµ": 40871, - "ðŁĮ·": 32328, - "ðŁĮ·": 24259, - "ðŁĮ¸": 16314, - "ðŁĮ¸": 10980, - "ðŁĮ¸ðŁĮ¸": 46210, - "ðŁĮ¹": 14990, - "ðŁĮ¹": 10662, - "ðŁĮ¹ðŁĮ¹": 37933, - "ðŁĮº": 27608, - "ðŁĮº": 19829, - "ðŁĮ»": 27196, - "ðŁĮ»": 19772, - "ðŁĮ¼": 36484, - "ðŁĮ¼": 26312, - "ðŁĮ¾": 39796, - "ðŁĮ¿": 27736, - "ðŁĮ¿": 18588, - "ðŁĮĢ": 34348, - "ðŁĮħ": 27547, - "ðŁĮĪ": 23038, - "ðŁĮĪ": 13042, - "ðŁĮĬ": 20465, - "ðŁĮĬ": 14302, - "ðŁĮĮ": 43393, - "ðŁĮį": 34931, - "ðŁĮį": 18641, - "ðŁĮİ": 31125, - "ðŁĮİ": 16969, - "ðŁĮı": 31527, - "ðŁĮIJ": 33071, - "ðŁĮĻ": 42330, - "ðŁĮĻ": 23283, - "ðŁĮļ": 49004, - "ðŁĮļ": 27877, - "ðŁĮŀ": 21152, - "ðŁĮŀ": 12980, - "ðŁĮŁ": 13196, - "ðŁĮŁ": 8542, - "ðŁĮŁðŁĮŁ": 26014, - "ðŁį": 2011, - "ðŁį¦": 47375, - "ðŁį¦": 32032, - "ðŁį©": 38379, - "ðŁįª": 38958, - "ðŁį«": 47994, - "ðŁį«": 33401, - "ðŁį°": 43732, - "ðŁį°": 30051, - "ðŁį³": 37441, - "ðŁį´": 41531, - "ðŁį´": 25338, - "ðŁį·": 24445, - "ðŁį·": 18072, - "ðŁį¸": 43058, - "ðŁį¸": 31217, - "ðŁį¹": 35598, - "ðŁįº": 31081, - "ðŁįº": 21590, - "ðŁį»": 22793, - "ðŁį»": 13167, - "ðŁį¾": 27294, - "ðŁį¾": 21656, - "ðŁįĢ": 22865, - "ðŁįĢ": 15764, - "ðŁįģ": 29837, - "ðŁįģ": 23075, - "ðŁįĤ": 35015, - "ðŁįĤ": 25721, - "ðŁįĥ": 27157, - "ðŁįĥ": 20147, - "ðŁįĩ": 48697, - "ðŁįĬ": 35001, - "ðŁįĬ": 28036, - "ðŁįĭ": 39543, - "ðŁįĮ": 44987, - "ðŁįį": 48946, - "ðŁįİ": 32069, - "ðŁįij": 32889, - "ðŁįĴ": 33160, - "ðŁįĵ": 44739, - "ðŁįĵ": 33456, - "ðŁįĶ": 46415, - "ðŁįĶ": 36031, - "ðŁįķ": 31469, - "ðŁįķ": 23904, - "ðŁįŃ": 42100, - "ðŁİ": 1165, - "ðŁİ£": 43158, - "ðŁİ¤": 23490, - "ðŁİ¤": 15690, - "ðŁİ¥": 22186, - "ðŁİ¥:": 43640, - "ðŁİ¥": 13233, - "ðŁİ§": 31254, - "ðŁİ§": 14266, - "ðŁİ¨": 31953, - "ðŁİ¨": 13461, - "ðŁİ©": 37701, - "ðŁİ«": 30331, - "ðŁİ¬": 36020, - "ðŁİ¬": 18150, - "ðŁİ®": 29312, - "ðŁİ¯": 23114, - "ðŁİµ": 27435, - "ðŁİµ": 14946, - "ðŁİ¶": 11755, - "ðŁİ¶": 6011, - "ðŁİ¶ðŁİ¶": 36283, - "ðŁİ¸": 29135, - "ðŁİ¸": 22122, - "ðŁİ¹": 43493, - "ðŁİ¼": 34949, - "ðŁİ¼": 23757, - "ðŁİ¾": 41982, - "ðŁİ¾": 24222, - "ðŁİĢ": 34347, - "ðŁİĢ": 20151, - "ðŁİģ": 18368, - "ðŁİģ": 13462, - "ðŁİĤ": 13026, - "ðŁİĤ": 10392, - "ðŁİĤðŁİĤ": 39338, - "ðŁİĥ": 22622, - "ðŁİĥ": 16780, - "ðŁİĦ": 12942, - "ðŁİĦ": 11267, - "ðŁİħ": 17685, - "ðŁİħ": 24276, - "ðŁİĨ": 39222, - "ðŁİĪ": 16142, - "ðŁİĪ": 14448, - "ðŁİĪðŁİī": 48049, - "ðŁİī": 4310, - "ðŁİī:": 17310, - "ðŁİī": 3986, - "ðŁİīðŁİ": 11473, - "ðŁİīðŁİĪ": 40499, - "ðŁİīðŁİĪ": 34008, - "ðŁİīðŁİī": 25159, - "ðŁİīðŁİī": 13450, - "ðŁİīðŁİīðŁİī": 20828, - "ðŁİīðŁİĬ": 31662, - "ðŁİīðŁİĬ": 30781, - "ðŁİĬ": 22763, - "ðŁİĬ": 22425, - "ðŁİĬðŁİī": 48801, - "ðŁİĵ": 28916, - "ðŁİĵ": 18744, - "ðŁİĻ": 29001, - "ðŁİĻ": 29753, - "ðŁİĻï¸ı": 44205, - "ðŁİŁ": 19248, - "ðŁİŁ": 21107, - "ðŁİŁï¸ı": 30243, - "ðŁİŃ": 28856, - "ðŁı": 1109, - "ðŁı¡": 27318, - "ðŁı³ï¸ı": 26844, - "ðŁı³ï¸ıâĢį": 27093, - "ðŁı³ï¸ıâĢįðŁĮĪ": 32610, - "ðŁı´": 39690, - "ðŁı´": 19704, - "ðŁı»": 5042, - "ðŁı»": 3702, - "ðŁı»âĢį": 46250, - "ðŁı»âĢįâĻĢï¸ı": 48391, - "ðŁı»âĢįâĻĢï¸ı": 23595, - "ðŁı»âĢįâĻĤï¸ı": 30984, - "ðŁı¼": 6193, - "ðŁı¼": 4027, - "ðŁı¼âĢįâĻĢï¸ı": 28955, - "ðŁı½": 8514, - "ðŁı½": 6114, - "ðŁı½âĢįâĻĢï¸ı": 37036, - "ðŁı½âĢįâĻĤï¸ı": 43157, - "ðŁı¾": 10230, - "ðŁı¾": 7778, - "ðŁı¾âĢįâĻĤï¸ı": 47189, - "ðŁı¿": 29854, - "ðŁı¿": 21094, - "ðŁıĢ": 13708, - "ðŁıĢ": 8813, - "ðŁıĢðŁıĢ": 43169, - "ðŁıģ": 29423, - "ðŁıģ": 17473, - "ðŁıĥ": 16820, - "ðŁıĥ": 32751, - "ðŁıħ": 25500, - "ðŁıĨ": 9585, - "ðŁıĨ": 5596, - "ðŁıĨðŁıĨ": 18946, - "ðŁıĨðŁıĨ": 38269, - "ðŁıĨðŁıĨðŁıĨ": 44484, - "ðŁıĩ": 45789, - "ðŁıĩ": 40288, - "ðŁıĪ": 16144, - "ðŁıĪ": 10477, - "ðŁıī": 26020, - "ðŁıĬ": 33061, - "ðŁıĬ": 47830, - "ðŁıĮ": 41116, - "ðŁıı": 32460, - "ðŁıIJ": 46334, - "ðŁıIJ": 29433, - "ðŁıĴ": 37756, - "ðŁıŁ": 35914, - "ðŁıŁ": 26472, - "ðŁıŁï¸ı": 42627, - "ðŁıł": 33727, - "ðŁIJ": 2074, - "ðŁIJ¢": 37049, - "ðŁIJ£": 39597, - "ðŁIJ¥": 42981, - "ðŁIJ¦": 37260, - "ðŁIJ¬": 44238, - "ðŁIJ¯": 34825, - "ðŁIJ¯": 26111, - "ðŁIJ°": 35378, - "ðŁIJ°": 25050, - "ðŁIJ±": 35710, - "ðŁIJ±": 22979, - "ðŁIJ´": 33509, - "ðŁIJ¶": 14466, - "ðŁIJ¶": 10631, - "ðŁIJ·": 38408, - "ðŁIJ¸": 45597, - "ðŁIJ¸": 40298, - "ðŁIJº": 44281, - "ðŁIJº": 31445, - "ðŁIJ»": 30750, - "ðŁIJ»": 25322, - "ðŁIJ¼": 46234, - "ðŁIJ¾": 16057, - "ðŁIJ¾": 11317, - "ðŁIJ¾ðŁIJ¾": 42202, - "ðŁIJī": 46908, - "ðŁIJĬ": 43974, - "ðŁIJį": 48903, - "ðŁIJį": 30177, - "ðŁIJİ": 48281, - "ðŁIJİ": 32726, - "ðŁIJIJ": 47735, - "ðŁIJIJ": 27954, - "ðŁIJij": 49389, - "ðŁIJķ": 41069, - "ðŁIJĺ": 38733, - "ðŁIJĿ": 30619, - "ðŁIJĿ": 20111, - "ðŁIJŁ": 42084, - "ðŁIJŁ": 29989, - "ðŁIJł": 42725, - "ðŁij": 964, - "ðŁij£": 39755, - "ðŁij§": 48938, - "ðŁij¨": 18966, - "ðŁij¨âĢį": 25023, - "ðŁij©": 18800, - "ðŁij©âĢį": 26304, - "ðŁij«": 47106, - "ðŁij«": 35457, - "ðŁij®": 42686, - "ðŁij¯": 25910, - "ðŁij¯": 20582, - "ðŁij¶": 26187, - "ðŁij¶": 33189, - "ðŁij¸": 26268, - "ðŁij¸": 36645, - "ðŁij¹": 46766, - "ðŁij»": 24625, - "ðŁij»": 16243, - "ðŁij¼": 25270, - "ðŁij¼": 31083, - "ðŁij½": 42677, - "ðŁij½": 26257, - "ðŁijĢ": 11524, - "ðŁijĢ": 5908, - "ðŁijĢðŁijĢ": 31561, - "ðŁijģ": 47796, - "ðŁijģ": 45705, - "ðŁijĦ": 47445, - "ðŁijħ": 31833, - "ðŁijħ": 24672, - "ðŁijĨ": 42975, - "ðŁijĨ": 45194, - "ðŁijĩ": 7662, - "ðŁijĩ": 7475, - "ðŁijĩðŁı»": 45811, - "ðŁijĩðŁı»": 32813, - "ðŁijĩðŁı¼": 37504, - "ðŁijĩðŁijĩ": 17915, - "ðŁijĩðŁijĩ": 31891, - "ðŁijĩðŁijĩðŁijĩ": 35627, - "ðŁijĪ": 32794, - "ðŁijĪ": 20832, - "ðŁijī": 9477, - "ðŁijī": 3988, - "ðŁijīðŁı»": 23481, - "ðŁijīðŁı¼": 27534, - "ðŁijīðŁı½": 38059, - "ðŁijīðŁijī": 41480, - "ðŁijĬ": 8897, - "ðŁijĬ": 9704, - "ðŁijĬðŁı»": 47393, - "ðŁijĬðŁı»": 29152, - "ðŁijĬðŁı¼": 49000, - "ðŁijĬðŁı¼": 30115, - "ðŁijĬðŁijĬ": 46521, - "ðŁijĭ": 19351, - "ðŁijĭ": 17686, - "ðŁijĮ": 4890, - "ðŁijĮ": 4494, - "ðŁijĮðŁı»": 31818, - "ðŁijĮðŁı»": 18606, - "ðŁijĮðŁı¼": 37655, - "ðŁijĮðŁı¼": 20031, - "ðŁijĮðŁı½": 35834, - "ðŁijĮðŁijĮ": 36139, - "ðŁijĮðŁijĮ": 21435, - "ðŁijĮðŁijĮðŁijĮ": 40876, - "ðŁijį": 4686, - "ðŁijį": 4201, - "ðŁijįðŁı»": 25803, - "ðŁijįðŁı»": 15129, - "ðŁijįðŁı¼": 37285, - "ðŁijįðŁı¼": 19689, - "ðŁijįðŁı½": 43722, - "ðŁijįðŁijį": 33012, - "ðŁijįðŁijį": 18997, - "ðŁijįðŁijįðŁijį": 37284, - "ðŁijİ": 39702, - "ðŁijİ": 32568, - "ðŁijı": 3802, - "ðŁijı": 4829, - "ðŁijıðŁı»": 19236, - "ðŁijıðŁı»": 17029, - "ðŁijıðŁı»ðŁijıðŁı»": 35254, - "ðŁijıðŁı¼": 24496, - "ðŁijıðŁı¼": 19979, - "ðŁijıðŁı¼ðŁijıðŁı¼": 46712, - "ðŁijıðŁı½": 40796, - "ðŁijıðŁı½": 33978, - "ðŁijıðŁı¾": 45450, - "ðŁijıðŁijı": 10356, - "ðŁijıðŁijı": 16706, - "ðŁijıðŁijıðŁijı": 17254, - "ðŁijIJ": 40877, - "ðŁijij": 14955, - "ðŁijij": 8717, - "ðŁijijðŁijij": 48532, - "ðŁijķ": 47865, - "ðŁijŁ": 41183, - "ðŁijł": 41264, - "ðŁijŃ": 34175, - "ðŁijŃ": 27943, - "ðŁĴ": 837, - "ðŁĴ¡": 24081, - "ðŁĴ£": 36862, - "ðŁĴ£": 29006, - "ðŁĴ¤": 34706, - "ðŁĴ¤": 25632, - "ðŁĴ¥": 12209, - "ðŁĴ¥": 7347, - "ðŁĴ¥ðŁĴ¥": 27396, - "ðŁĴ¥ðŁĴ¥": 39246, - "ðŁĴ¥ðŁĴ¥ðŁĴ¥": 48890, - "ðŁĴ¦": 21180, - "ðŁĴ¦": 14060, - "ðŁĴ¦ðŁĴ¦": 44469, - "ðŁĴ§": 34095, - "ðŁĴ¨": 27408, - "ðŁĴ¨": 17891, - "ðŁĴ©": 48621, - "ðŁĴ©": 28847, - "ðŁĴª": 5475, - "ðŁĴª": 6440, - "ðŁĴªðŁı»": 31669, - "ðŁĴªðŁı»": 21903, - "ðŁĴªðŁı¼": 32041, - "ðŁĴªðŁı¼": 20759, - "ðŁĴªðŁı½": 46380, - "ðŁĴªðŁı½": 31111, - "ðŁĴªðŁı¾": 39398, - "ðŁĴªðŁĴª": 24747, - "ðŁĴªðŁĴªðŁĴª": 39913, - "ðŁĴ«": 25770, - "ðŁĴ«": 12526, - "ðŁĴ¬": 30947, - "ðŁĴ¯": 10611, - "ðŁĴ¯": 7018, - "ðŁĴ¯ðŁĴ¯": 30234, - "ðŁĴ¯ðŁĴ¯": 44070, - "ðŁĴ°": 20454, - "ðŁĴ°": 14078, - "ðŁĴ°ðŁĴ°": 41747, - "ðŁĴµ": 47412, - "ðŁĴµ": 38041, - "ðŁĴ¸": 37696, - "ðŁĴ¸": 25957, - "ðŁĴ»": 33433, - "ðŁĴ»": 18135, - "ðŁĴ¿": 39541, - "ðŁĴĢ": 14888, - "ðŁĴĢ": 12158, - "ðŁĴĢðŁĴĢ": 30884, - "ðŁĴģ": 13997, - "ðŁĴģ": 14392, - "ðŁĴĥ": 9947, - "ðŁĴĥ": 14333, - "ðŁĴĥðŁı»": 38624, - "ðŁĴĥðŁĴĥ": 28041, - "ðŁĴĦ": 46116, - "ðŁĴĦ": 34571, - "ðŁĴħ": 27457, - "ðŁĴħ": 32414, - "ðŁĴī": 44316, - "ðŁĴī": 30503, - "ðŁĴĭ": 12217, - "ðŁĴĭ": 7417, - "ðŁĴĭðŁĴĭ": 29214, - "ðŁĴĮ": 40817, - "ðŁĴį": 35850, - "ðŁĴį": 24898, - "ðŁĴİ": 25938, - "ðŁĴİ": 15874, - "ðŁĴIJ": 27375, - "ðŁĴIJ": 20554, - "ðŁĴij": 49404, - "ðŁĴĵ": 20628, - "ðŁĴĵ": 12568, - "ðŁĴĵðŁĴĵ": 43505, - "ðŁĴĶ": 18880, - "ðŁĴĶ": 10704, - "ðŁĴĶðŁĴĶ": 44673, - "ðŁĴķ": 5412, - "ðŁĴķ": 3082, - "ðŁĴķðŁĴķ": 23106, - "ðŁĴķðŁĴķ": 14117, - "ðŁĴķðŁĴķðŁĴķ": 26772, - "ðŁĴĸ": 8466, - "ðŁĴĸ": 5582, - "ðŁĴĸðŁĴĸ": 19562, - "ðŁĴĸðŁĴĸ": 30595, - "ðŁĴĸðŁĴĸðŁĴĸ": 33915, - "ðŁĴĹ": 10148, - "ðŁĴĹ": 6690, - "ðŁĴĹðŁĴĹ": 47158, - "ðŁĴĹðŁĴĹ": 24064, - "ðŁĴĹðŁĴĹðŁĴĹ": 36990, - "ðŁĴĺ": 18223, - "ðŁĴĺ": 10816, - "ðŁĴĺðŁĴĺ": 40464, - "ðŁĴĻ": 5305, - "ðŁĴĻ": 4074, - "ðŁĴĻðŁĴĻ": 17833, - "ðŁĴĻðŁĴĻ": 27101, - "ðŁĴĻðŁĴĻðŁĴĻ": 30698, - "ðŁĴĻðŁĴĽ": 46804, - "ðŁĴĻðŁĴĽ": 26230, - "ðŁĴĻðŁĴľ": 47931, - "ðŁĴĻðŁĴľ": 42541, - "ðŁĴļ": 8102, - "ðŁĴļ": 6521, - "ðŁĴļðŁĴļ": 27497, - "ðŁĴļðŁĴļ": 46209, - "ðŁĴļðŁĴļðŁĴļ": 46182, - "ðŁĴļðŁĴĽ": 41232, - "ðŁĴĽ": 8221, - "ðŁĴĽ": 6233, - "ðŁĴĽðŁĴĻ": 36337, - "ðŁĴĽðŁĴļ": 37994, - "ðŁĴĽðŁĴĽ": 32420, - "ðŁĴľ": 6832, - "ðŁĴľ": 4882, - "ðŁĴľðŁĴľ": 17280, - "ðŁĴľðŁĴľ": 28211, - "ðŁĴľðŁĴľðŁĴľ": 31004, - "ðŁĴĿ": 36761, - "ðŁĴĿ": 22002, - "ðŁĴŀ": 14862, - "ðŁĴŀ": 8988, - "ðŁĴŀðŁĴŀ": 36448, - "ðŁĴŁ": 49394, - "ðŁĴŁ": 28828, - "ðŁĴŃ": 33848, - "ðŁĵ": 1497, - "ðŁĵ¢": 46560, - "ðŁĵ¢": 20901, - "ðŁĵ£": 48841, - "ðŁĵ£": 21282, - "ðŁĵ°:": 28952, - "ðŁĵ°": 14985, - "ðŁĵ±": 36104, - "ðŁĵ±": 20824, - "ðŁĵ²": 19363, - "ðŁĵ·": 6966, - "ðŁĵ·:": 8294, - "ðŁĵ·": 5551, - "ðŁĵ·@": 40032, - "ðŁĵ¸": 8401, - "ðŁĵ¸:": 10379, - "ðŁĵ¸": 6074, - "ðŁĵ¸@": 39660, - "ðŁĵ¹": 49251, - "ðŁĵº": 21792, - "ðŁĵº:": 29728, - "ðŁĵº": 10450, - "ðŁĵ»": 32711, - "ðŁĵ»": 15882, - "ðŁĵ½": 45361, - "ðŁĵħ": 21277, - "ðŁĵĨ": 23471, - "ðŁĵĪ": 23359, - "ðŁĵĬ": 22244, - "ðŁĵĭ": 46351, - "ðŁĵĮ": 22289, - "ðŁĵį": 25043, - "ðŁĵį:": 36845, - "ðŁĵį": 8903, - "ðŁĵĸ": 49003, - "ðŁĵĸ": 23043, - "ðŁĵļ": 25433, - "ðŁĵļ": 15566, - "ðŁĵĿ": 31888, - "ðŁĵĿ:": 48398, - "ðŁĵĿ": 15853, - "ðŁĵŀ": 24022, - "ðŁĶ": 1428, - "ðŁĶ¥": 3191, - "ðŁĶ¥#": 44354, - "ðŁĶ¥": 3016, - "ðŁĶ¥ðŁĶ¥": 5692, - "ðŁĶ¥ðŁĶ¥": 11771, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥": 11004, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥": 23408, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥": 30989, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥": 48401, - "ðŁĶ¥ðŁĶĹ": 35130, - "ðŁĶª": 47078, - "ðŁĶª": 34545, - "ðŁĶ«": 38116, - "ðŁĶ«": 20583, - "ðŁĶ¬": 44227, - "ðŁĶ®": 38077, - "ðŁĶ´": 12408, - "ðŁĶ´": 10854, - "ðŁĶ´âļªï¸ı": 46879, - "ðŁĶ´âļªï¸ı": 40055, - "ðŁĶµ": 17531, - "ðŁĶµ": 17193, - "ðŁĶµâļªï¸ı": 42412, - "ðŁĶ¶": 42880, - "ðŁĶ¶": 36222, - "ðŁĶ·": 37740, - "ðŁĶ¸": 24200, - "ðŁĶ¹": 19995, - "ðŁĶº": 45561, - "ðŁĶģ": 41299, - "ðŁĶĬ": 32580, - "ðŁĶĬ": 20502, - "ðŁĶİ": 44935, - "ðŁĶij": 35127, - "ðŁĶĴ": 44972, - "ðŁĶĶ": 45753, - "ðŁĶĹ": 47475, - "ðŁĶĹ": 14561, - "ðŁĶĺ": 38995, - "ðŁĶľ": 36011, - "ðŁĶĿ": 44387, - "ðŁĶĿ": 29506, - "ðŁķ": 7692, - "ðŁķº": 33958, - "ðŁķĬ": 42624, - "ðŁķĬ": 37760, - "ðŁĸ": 6269, - "ðŁĸ¤": 17603, - "ðŁĸ¤": 10860, - "ðŁĸ¥": 47990, - "ðŁĹ": 7045, - "ðŁĹ£": 33232, - "ðŁĹ£": 18583, - "ðŁĹ£ï¸ı": 37476, - "ðŁĹĵ": 34335, - "ðŁĹĵ": 28773, - "ðŁĹĵï¸ı": 39847, - "ðŁĺ": 668, - "ðŁĺ¡": 21968, - "ðŁĺ¡": 17452, - "ðŁĺ¡ðŁĺ¡": 37223, - "ðŁĺ¢": 14308, - "ðŁĺ¢": 9925, - "ðŁĺ¢ðŁĺ¢": 32923, - "ðŁĺ¢ðŁĺ¢": 47921, - "ðŁĺ£": 32718, - "ðŁĺ¤": 26872, - "ðŁĺ¤": 20740, - "ðŁĺ¥": 38383, - "ðŁĺ¥": 23951, - "ðŁĺ¨": 38080, - "ðŁĺ©": 9051, - "ðŁĺ©": 9494, - "ðŁĺ©ðŁĺ©": 22820, - "ðŁĺ©ðŁĺ©": 38031, - "ðŁĺ©ðŁĺ©ðŁĺ©": 49063, - "ðŁĺª": 38181, - "ðŁĺª": 22243, - "ðŁĺ«": 25141, - "ðŁĺ«": 22340, - "ðŁĺ¬": 23704, - "ðŁĺ¬": 14549, - "ðŁĺ®": 40163, - "ðŁĺ®": 21616, - "ðŁĺ¯": 37858, - "ðŁĺ°": 34728, - "ðŁĺ±": 10938, - "ðŁĺ±": 9055, - "ðŁĺ±ðŁĺ±": 22061, - "ðŁĺ±ðŁĺ±": 40767, - "ðŁĺ±ðŁĺ±ðŁĺ±": 40909, - "ðŁĺ²": 40460, - "ðŁĺ²": 24620, - "ðŁĺ³": 12047, - "ðŁĺ³": 8223, - "ðŁĺ³ðŁĺ³": 32592, - "ðŁĺ´": 23527, - "ðŁĺ´": 16415, - "ðŁĺ´ðŁĺ´": 49307, - "ðŁĺµ": 39368, - "ðŁĺ¶": 35207, - "ðŁĺ·": 37943, - "ðŁĺ·": 25759, - "ðŁĺ¸": 36912, - "ðŁĺ¹": 26477, - "ðŁĺ¹": 26573, - "ðŁĺ¹ðŁĺ¹": 46287, - "ðŁĺº": 40613, - "ðŁĺ»": 15453, - "ðŁĺ»": 12911, - "ðŁĺ»ðŁĺ»": 34414, - "ðŁĺ¼": 44245, - "ðŁĺ½": 45156, - "ðŁĺĢ": 12832, - "ðŁĺĢ": 7334, - "ðŁĺĢðŁĺĢ": 34503, - "ðŁĺģ": 6967, - "ðŁĺģ": 4821, - "ðŁĺģðŁĺģ": 37900, - "ðŁĺģðŁĺģ": 19213, - "ðŁĺģðŁĺģðŁĺģ": 29083, - "ðŁĺĤ": 1424, - "ðŁĺĤ)": 42643, - "ðŁĺĤ.": 42550, - "ðŁĺĤ": 1558, - "ðŁĺĤâĿ¤ï¸ı": 36412, - "ðŁĺĤðŁijĮ": 42000, - "ðŁĺĤðŁĺĤ": 2286, - "ðŁĺĤðŁĺĤ": 4112, - "ðŁĺĤðŁĺĤðŁĺĤ": 22233, - "ðŁĺĤðŁĺĤðŁĺĤ": 4887, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 9936, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 11522, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 19295, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 33415, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 48973, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 28504, - "ðŁĺĤðŁĺį": 43128, - "ðŁĺĤðŁĺŃ": 28965, - "ðŁĺĤðŁĺŃ": 25802, - "ðŁĺĥ": 14079, - "ðŁĺĥ": 8520, - "ðŁĺĥðŁĺĥ": 38358, - "ðŁĺĦ": 12141, - "ðŁĺĦ": 7624, - "ðŁĺĦðŁĺĦ": 32312, - "ðŁĺħ": 15245, - "ðŁĺħ": 9188, - "ðŁĺħðŁĺħ": 39078, - "ðŁĺĨ": 16541, - "ðŁĺĨ": 10943, - "ðŁĺĨðŁĺĨ": 39503, - "ðŁĺĩ": 21694, - "ðŁĺĩ": 13091, - "ðŁĺĪ": 14377, - "ðŁĺĪ": 9756, - "ðŁĺĪðŁĺĪ": 44473, - "ðŁĺī": 9740, - "ðŁĺī": 4955, - "ðŁĺīðŁĺī": 40430, - "ðŁĺĬ": 4692, - "ðŁĺĬ": 3020, - "ðŁĺĬâĿ¤ï¸ı": 43606, - "ðŁĺĬðŁĺĬ": 12838, - "ðŁĺĬðŁĺĬ": 20842, - "ðŁĺĬðŁĺĬðŁĺĬ": 28685, - "ðŁĺĬðŁĺĬðŁĺĬðŁĺĬ": 35519, - "ðŁĺĭ": 12391, - "ðŁĺĭ": 7203, - "ðŁĺĭðŁĺĭ": 33304, - "ðŁĺĮ": 19221, - "ðŁĺĮ": 12163, - "ðŁĺį": 1796, - "ðŁĺį#": 42357, - "ðŁĺį.": 48579, - "ðŁĺį": 1754, - "ðŁĺįâĿ¤": 29122, - "ðŁĺįâĿ¤ï¸ı": 21945, - "ðŁĺįðŁijĮ": 41005, - "ðŁĺįðŁĴķ": 35946, - "ðŁĺįðŁĶ¥": 46648, - "ðŁĺįðŁĺĤ": 48715, - "ðŁĺįðŁĺį": 3663, - "ðŁĺįðŁĺį": 6471, - "ðŁĺįðŁĺįðŁĺį": 30614, - "ðŁĺįðŁĺįðŁĺį": 7703, - "ðŁĺįðŁĺįðŁĺįðŁĺį": 16603, - "ðŁĺįðŁĺįðŁĺįðŁĺį": 18925, - "ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį": 32078, - "ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį": 48683, - "ðŁĺįðŁĺĺ": 29646, - "ðŁĺįðŁĺĺ": 19849, - "ðŁĺįðŁĺŃ": 39555, - "ðŁĺİ": 7426, - "ðŁĺİ": 4345, - "ðŁĺİðŁĺİ": 24048, - "ðŁĺİðŁĺİðŁĺİ": 39742, - "ðŁĺı": 11624, - "ðŁĺı": 6909, - "ðŁĺıðŁĺı": 38151, - "ðŁĺIJ": 38586, - "ðŁĺIJ": 19618, - "ðŁĺij": 32469, - "ðŁĺij": 18937, - "ðŁĺĴ": 20792, - "ðŁĺĴ": 11702, - "ðŁĺĵ": 28733, - "ðŁĺĶ": 19532, - "ðŁĺĶ": 11432, - "ðŁĺķ": 45741, - "ðŁĺķ": 20602, - "ðŁĺĸ": 35006, - "ðŁĺĺ": 4240, - "ðŁĺĺ": 3352, - "ðŁĺĺâĿ¤": 48409, - "ðŁĺĺâĿ¤ï¸ı": 39150, - "ðŁĺĺðŁĺį": 38176, - "ðŁĺĺðŁĺĺ": 15663, - "ðŁĺĺðŁĺĺ": 10507, - "ðŁĺĺðŁĺĺðŁĺĺ": 20208, - "ðŁĺĺðŁĺĺðŁĺĺðŁĺĺ": 44892, - "ðŁĺĻ": 36201, - "ðŁĺĻ": 29209, - "ðŁĺļ": 24897, - "ðŁĺļ": 19102, - "ðŁĺĽ": 24550, - "ðŁĺĽ": 15745, - "ðŁĺľ": 13226, - "ðŁĺľ": 7830, - "ðŁĺľðŁĺľ": 43065, - "ðŁĺĿ": 20064, - "ðŁĺĿ": 12970, - "ðŁĺŀ": 40458, - "ðŁĺŀ": 21103, - "ðŁĺŁ": 46947, - "ðŁĺł": 34094, - "ðŁĺŃ": 2962, - "ðŁĺŃ": 3915, - "ðŁĺŃâĿ¤ï¸ı": 29567, - "ðŁĺŃðŁĴķ": 46306, - "ðŁĺŃðŁĺĤ": 38505, - "ðŁĺŃðŁĺį": 36893, - "ðŁĺŃðŁĺŃ": 5300, - "ðŁĺŃðŁĺŃ": 11834, - "ðŁĺŃðŁĺŃðŁĺŃ": 44089, - "ðŁĺŃðŁĺŃðŁĺŃ": 13116, - "ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ": 19793, - "ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ": 27322, - "ðŁĺŃðŁĺŃðŁĺŃðŁĺŃðŁĺŃ": 43366, - "ðŁĻ": 1478, - "ðŁĻĢ": 43092, - "ðŁĻĤ": 32006, - "ðŁĻĤ": 14860, - "ðŁĻĥ": 27222, - "ðŁĻĥ": 15652, - "ðŁĻĦ": 20648, - "ðŁĻĦ": 13049, - "ðŁĻħ": 42702, - "ðŁĻĨ": 30050, - "ðŁĻĨ": 35730, - "ðŁĻĪ": 12661, - "ðŁĻĪ": 9516, - "ðŁĻĪðŁĻĪ": 41796, - "ðŁĻĬ": 23684, - "ðŁĻĬ": 16636, - "ðŁĻĭ": 19193, - "ðŁĻĭ": 30274, - "ðŁĻĮ": 4366, - "ðŁĻĮ": 4855, - "ðŁĻĮðŁı»": 26756, - "ðŁĻĮðŁı»": 15799, - "ðŁĻĮðŁı¼": 26584, - "ðŁĻĮðŁı¼": 15364, - "ðŁĻĮðŁı½": 36660, - "ðŁĻĮðŁı½": 22962, - "ðŁĻĮðŁı¾": 38023, - "ðŁĻĮðŁı¾": 26466, - "ðŁĻĮðŁĻĮ": 21202, - "ðŁĻĮðŁĻĮ": 30430, - "ðŁĻĮðŁĻĮðŁĻĮ": 37127, - "ðŁĻı": 4260, - "ðŁĻı": 5503, - "ðŁĻıðŁı»": 25100, - "ðŁĻıðŁı»": 16650, - "ðŁĻıðŁı¼": 31163, - "ðŁĻıðŁı¼": 18952, - "ðŁĻıðŁı½": 34103, - "ðŁĻıðŁı½": 21540, - "ðŁĻıðŁı¾": 34277, - "ðŁĻıðŁı¾": 21979, - "ðŁĻıðŁĻı": 18227, - "ðŁĻıðŁĻı": 26510, - "ðŁĻıðŁĻıðŁĻı": 31702, - "ðŁļ": 2730, - "ðŁļ¨": 12198, - "ðŁļ¨": 6056, - "ðŁļ¨ðŁļ¨": 36487, - "ðŁļ¨ðŁļ¨": 21440, - "ðŁļ¨ðŁļ¨ðŁļ¨": 41515, - "ðŁļ©": 44514, - "ðŁļ«": 35291, - "ðŁļ²": 37085, - "ðŁļ´": 30825, - "ðŁļ¶": 46060, - "ðŁļĢ": 22400, - "ðŁļĢ": 13542, - "ðŁļĢðŁļĢ": 49033, - "ðŁļĤ": 38949, - "ðŁļĮ": 46891, - "ðŁļĹ": 33054, - "ðŁļĹ": 22783, - "ðŁļĺ": 35825, - "ðŁļĻ": 48487, - "ðŁĽ": 11306, - "ñ": 173, - "ñ": 429, - "ò": 174, - "ò": 430, - "ó": 175, - "ó": 431, - "ô": 176, - "ô": 432, - "õ": 177, - "õ": 433, - "ö": 178, - "ö": 434, - "÷": 179, - "÷": 435, - "ø": 180, - "ø": 436, - "ù": 181, - "ù": 437, - "ú": 182, - "ú": 438, - "û": 183, - "û": 439, - "ü": 184, - "ü": 440, - "ý": 185, - "ý": 441, - "þ": 186, - "þ": 442, - "ÿ": 187, - "ÿ": 443, - "Ā": 188, - "Ā": 444, - "ā": 189, - "ā": 445, - "Ă": 190, - "Ă": 446, - "ă": 191, - "ă": 447, - "Ą": 192, - "Ą": 448, - "ą": 193, - "ą": 449, - "Ć": 194, - "Ć": 450, - "ć": 195, - "ć": 451, - "Ĉ": 196, - "Ĉ": 452, - "ĉ": 197, - "ĉ": 453, - "Ċ": 198, - "Ċ": 454, - "ċ": 199, - "ċ": 455, - "Č": 200, - "Č": 456, - "č": 201, - "č": 457, - "Ď": 202, - "Ď": 458, - "ď": 203, - "ď": 459, - "Đ": 204, - "Đ": 460, - "đ": 205, - "đ": 461, - "Ē": 206, - "Ē": 462, - "ē": 207, - "ē": 463, - "Ĕ": 208, - "Ĕ": 464, - "ĕ": 209, - "ĕ": 465, - "Ė": 210, - "Ė": 466, - "ė": 211, - "ė": 467, - "Ę": 212, - "Ę": 468, - "ę": 213, - "ę": 469, - "Ě": 214, - "Ě": 470, - "ě": 215, - "ě": 471, - "Ĝ": 216, - "Ĝ": 472, - "ĝ": 217, - "ĝ": 473, - "Ğ": 218, - "Ğ": 474, - "ğ": 219, - "ğ": 475, - "Ġ": 220, - "Ġ": 476, - "ġ": 221, - "ġ": 477, - "Ģ": 222, - "Ģ": 478, - "Ģï¸ı": 9668, - "Ģï¸ı": 5511, - "ģ": 223, - "ģ": 479, - "ģà¸": 15016, - "Ĥ": 224, - "Ĥ": 480, - "Ĥâĸ": 29036, - "ĤâĸĤâĸ": 30832, - "ĥ": 225, - "ĥ": 481, - "Ħ": 226, - "Ħ": 482, - "Ħà¸": 20537, - "Ħë": 34462, - "Ħëĭ": 25170, - "ħ": 227, - "ħ": 483, - "ħï¸ı": 33950, - "Ĩ": 228, - "Ĩ": 484, - "ĩ": 229, - "ĩ": 485, - "Ī": 230, - "Ī": 486, - "ī": 231, - "ī": 487, - "īï¸ı": 37463, - "Ĭ": 232, - "Ĭ": 488, - "Ĭãģ": 30294, - "ĭ": 233, - "ĭ": 489, - "ĭãģ": 36218, - "ĭãĤ": 45737, - "Į": 234, - "Į": 490, - "ĮãĤĬãģ": 45969, - "ĮãĤĬãģŁãģĦ": 47021, - "Įë": 17003, - "į": 235, - "į": 491, - "İ": 236, - "İ": 492, - "ı": 237, - "ı": 493, - "IJ": 238, - "IJ": 494, - "ij": 239, - "ij": 495, - "Ĵ": 240, - "Ĵ": 496, - "ĵ": 241, - "ĵ": 497, - "Ķ": 242, - "Ķ": 498, - "Ķë": 37978, - "Ķï¸ı": 24395, - "Ķï¸ı": 7443, - "ķ": 243, - "ķ": 499, - "ķãĤ": 26609, - "ķï¸ı": 44853, - "ĸ": 244, - "ĸ": 500, - "ĸï¸ı": 28877, - "Ĺ": 245, - "Ĺ": 501, - "ĺ": 246, - "ĺ": 502, - "Ļ": 247, - "Ļ": 503, - "ļ": 248, - "ļ": 504, - "Ľ": 249, - "Ľ": 505, - "ľ": 250, - "ľ": 506, - "ľë": 39810, - "Ŀ": 251, - "Ŀ": 507, - "ŀ": 252, - "ŀ": 508, - "Ł": 253, - "Ł": 509, - "ŁãģĦ": 46023, - "ł": 254, - "ł": 510, - "łï¸ı": 27899, - "łï¸ı": 12715, - "łĪ": 43364, - "Ń": 255, - "Ń": 511 -} diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/unet/config.json b/checkpoints/ashawkey/imagedream-ipmv-diffusers/unet/config.json deleted file mode 100644 index d7bd7d1..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/unet/config.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "_class_name": "MultiViewUNetModel", - "_diffusers_version": "0.25.0", - "attention_resolutions": [ - 4, - 2, - 1 - ], - "camera_dim": 16, - "channel_mult": [ - 1, - 2, - 4, - 4 - ], - "context_dim": 1024, - "image_size": 32, - "in_channels": 4, - "ip_dim": 16, - "model_channels": 320, - "num_head_channels": 64, - "num_res_blocks": 2, - "out_channels": 4, - "transformer_depth": 1 -} diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/unet/mv_unet.py b/checkpoints/ashawkey/imagedream-ipmv-diffusers/unet/mv_unet.py deleted file mode 100644 index 60e2ddb..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/unet/mv_unet.py +++ /dev/null @@ -1,1005 +0,0 @@ -import math -import numpy as np -from inspect import isfunction -from typing import Optional, Any, List - -import torch -import torch.nn as nn -import torch.nn.functional as F -from einops import rearrange, repeat - -from diffusers.configuration_utils import ConfigMixin -from diffusers.models.modeling_utils import ModelMixin - -# require xformers! -import xformers -import xformers.ops - -from kiui.cam import orbit_camera - -def get_camera( - num_frames, elevation=15, azimuth_start=0, azimuth_span=360, blender_coord=True, extra_view=False, -): - angle_gap = azimuth_span / num_frames - cameras = [] - for azimuth in np.arange(azimuth_start, azimuth_span + azimuth_start, angle_gap): - - pose = orbit_camera(-elevation, azimuth, radius=1) # kiui's elevation is negated, [4, 4] - - # opengl to blender - if blender_coord: - pose[2] *= -1 - pose[[1, 2]] = pose[[2, 1]] - - cameras.append(pose.flatten()) - - if extra_view: - cameras.append(np.zeros_like(cameras[0])) - - return torch.from_numpy(np.stack(cameras, axis=0)).float() # [num_frames, 16] - - -def timestep_embedding(timesteps, dim, max_period=10000, repeat_only=False): - """ - Create sinusoidal timestep embeddings. - :param timesteps: a 1-D Tensor of N indices, one per batch element. - These may be fractional. - :param dim: the dimension of the output. - :param max_period: controls the minimum frequency of the embeddings. - :return: an [N x dim] Tensor of positional embeddings. - """ - if not repeat_only: - half = dim // 2 - freqs = torch.exp( - -math.log(max_period) - * torch.arange(start=0, end=half, dtype=torch.float32) - / half - ).to(device=timesteps.device) - args = timesteps[:, None] * freqs[None] - embedding = torch.cat([torch.cos(args), torch.sin(args)], dim=-1) - if dim % 2: - embedding = torch.cat( - [embedding, torch.zeros_like(embedding[:, :1])], dim=-1 - ) - else: - embedding = repeat(timesteps, "b -> b d", d=dim) - # import pdb; pdb.set_trace() - return embedding - - -def zero_module(module): - """ - Zero out the parameters of a module and return it. - """ - for p in module.parameters(): - p.detach().zero_() - return module - - -def conv_nd(dims, *args, **kwargs): - """ - Create a 1D, 2D, or 3D convolution module. - """ - if dims == 1: - return nn.Conv1d(*args, **kwargs) - elif dims == 2: - return nn.Conv2d(*args, **kwargs) - elif dims == 3: - return nn.Conv3d(*args, **kwargs) - raise ValueError(f"unsupported dimensions: {dims}") - - -def avg_pool_nd(dims, *args, **kwargs): - """ - Create a 1D, 2D, or 3D average pooling module. - """ - if dims == 1: - return nn.AvgPool1d(*args, **kwargs) - elif dims == 2: - return nn.AvgPool2d(*args, **kwargs) - elif dims == 3: - return nn.AvgPool3d(*args, **kwargs) - raise ValueError(f"unsupported dimensions: {dims}") - - -def default(val, d): - if val is not None: - return val - return d() if isfunction(d) else d - - -class GEGLU(nn.Module): - def __init__(self, dim_in, dim_out): - super().__init__() - self.proj = nn.Linear(dim_in, dim_out * 2) - - def forward(self, x): - x, gate = self.proj(x).chunk(2, dim=-1) - return x * F.gelu(gate) - - -class FeedForward(nn.Module): - def __init__(self, dim, dim_out=None, mult=4, glu=False, dropout=0.0): - super().__init__() - inner_dim = int(dim * mult) - dim_out = default(dim_out, dim) - project_in = ( - nn.Sequential(nn.Linear(dim, inner_dim), nn.GELU()) - if not glu - else GEGLU(dim, inner_dim) - ) - - self.net = nn.Sequential( - project_in, nn.Dropout(dropout), nn.Linear(inner_dim, dim_out) - ) - - def forward(self, x): - return self.net(x) - - -class MemoryEfficientCrossAttention(nn.Module): - # https://github.com/MatthieuTPHR/diffusers/blob/d80b531ff8060ec1ea982b65a1b8df70f73aa67c/src/diffusers/models/attention.py#L223 - def __init__( - self, - query_dim, - context_dim=None, - heads=8, - dim_head=64, - dropout=0.0, - ip_dim=0, - ip_weight=1, - ): - super().__init__() - - inner_dim = dim_head * heads - context_dim = default(context_dim, query_dim) - - self.heads = heads - self.dim_head = dim_head - - self.ip_dim = ip_dim - self.ip_weight = ip_weight - - if self.ip_dim > 0: - self.to_k_ip = nn.Linear(context_dim, inner_dim, bias=False) - self.to_v_ip = nn.Linear(context_dim, inner_dim, bias=False) - - self.to_q = nn.Linear(query_dim, inner_dim, bias=False) - self.to_k = nn.Linear(context_dim, inner_dim, bias=False) - self.to_v = nn.Linear(context_dim, inner_dim, bias=False) - - self.to_out = nn.Sequential( - nn.Linear(inner_dim, query_dim), nn.Dropout(dropout) - ) - self.attention_op: Optional[Any] = None - - def forward(self, x, context=None): - q = self.to_q(x) - context = default(context, x) - - if self.ip_dim > 0: - # context: [B, 77 + 16(ip), 1024] - token_len = context.shape[1] - context_ip = context[:, -self.ip_dim :, :] - k_ip = self.to_k_ip(context_ip) - v_ip = self.to_v_ip(context_ip) - context = context[:, : (token_len - self.ip_dim), :] - - k = self.to_k(context) - v = self.to_v(context) - - b, _, _ = q.shape - q, k, v = map( - lambda t: t.unsqueeze(3) - .reshape(b, t.shape[1], self.heads, self.dim_head) - .permute(0, 2, 1, 3) - .reshape(b * self.heads, t.shape[1], self.dim_head) - .contiguous(), - (q, k, v), - ) - - # actually compute the attention, what we cannot get enough of - out = xformers.ops.memory_efficient_attention( - q, k, v, attn_bias=None, op=self.attention_op - ) - - if self.ip_dim > 0: - k_ip, v_ip = map( - lambda t: t.unsqueeze(3) - .reshape(b, t.shape[1], self.heads, self.dim_head) - .permute(0, 2, 1, 3) - .reshape(b * self.heads, t.shape[1], self.dim_head) - .contiguous(), - (k_ip, v_ip), - ) - # actually compute the attention, what we cannot get enough of - out_ip = xformers.ops.memory_efficient_attention( - q, k_ip, v_ip, attn_bias=None, op=self.attention_op - ) - out = out + self.ip_weight * out_ip - - out = ( - out.unsqueeze(0) - .reshape(b, self.heads, out.shape[1], self.dim_head) - .permute(0, 2, 1, 3) - .reshape(b, out.shape[1], self.heads * self.dim_head) - ) - return self.to_out(out) - - -class BasicTransformerBlock3D(nn.Module): - - def __init__( - self, - dim, - n_heads, - d_head, - context_dim, - dropout=0.0, - gated_ff=True, - ip_dim=0, - ip_weight=1, - ): - super().__init__() - - self.attn1 = MemoryEfficientCrossAttention( - query_dim=dim, - context_dim=None, # self-attention - heads=n_heads, - dim_head=d_head, - dropout=dropout, - ) - self.ff = FeedForward(dim, dropout=dropout, glu=gated_ff) - self.attn2 = MemoryEfficientCrossAttention( - query_dim=dim, - context_dim=context_dim, - heads=n_heads, - dim_head=d_head, - dropout=dropout, - # ip only applies to cross-attention - ip_dim=ip_dim, - ip_weight=ip_weight, - ) - self.norm1 = nn.LayerNorm(dim) - self.norm2 = nn.LayerNorm(dim) - self.norm3 = nn.LayerNorm(dim) - - def forward(self, x, context=None, num_frames=1): - x = rearrange(x, "(b f) l c -> b (f l) c", f=num_frames).contiguous() - x = self.attn1(self.norm1(x), context=None) + x - x = rearrange(x, "b (f l) c -> (b f) l c", f=num_frames).contiguous() - x = self.attn2(self.norm2(x), context=context) + x - x = self.ff(self.norm3(x)) + x - return x - - -class SpatialTransformer3D(nn.Module): - - def __init__( - self, - in_channels, - n_heads, - d_head, - context_dim, # cross attention input dim - depth=1, - dropout=0.0, - ip_dim=0, - ip_weight=1, - ): - super().__init__() - - if not isinstance(context_dim, list): - context_dim = [context_dim] - - self.in_channels = in_channels - - inner_dim = n_heads * d_head - self.norm = nn.GroupNorm(num_groups=32, num_channels=in_channels, eps=1e-6, affine=True) - self.proj_in = nn.Linear(in_channels, inner_dim) - - self.transformer_blocks = nn.ModuleList( - [ - BasicTransformerBlock3D( - inner_dim, - n_heads, - d_head, - context_dim=context_dim[d], - dropout=dropout, - ip_dim=ip_dim, - ip_weight=ip_weight, - ) - for d in range(depth) - ] - ) - - self.proj_out = zero_module(nn.Linear(in_channels, inner_dim)) - - - def forward(self, x, context=None, num_frames=1): - # note: if no context is given, cross-attention defaults to self-attention - if not isinstance(context, list): - context = [context] - b, c, h, w = x.shape - x_in = x - x = self.norm(x) - x = rearrange(x, "b c h w -> b (h w) c").contiguous() - x = self.proj_in(x) - for i, block in enumerate(self.transformer_blocks): - x = block(x, context=context[i], num_frames=num_frames) - x = self.proj_out(x) - x = rearrange(x, "b (h w) c -> b c h w", h=h, w=w).contiguous() - - return x + x_in - - -class PerceiverAttention(nn.Module): - def __init__(self, *, dim, dim_head=64, heads=8): - super().__init__() - self.scale = dim_head ** -0.5 - self.dim_head = dim_head - self.heads = heads - inner_dim = dim_head * heads - - self.norm1 = nn.LayerNorm(dim) - self.norm2 = nn.LayerNorm(dim) - - self.to_q = nn.Linear(dim, inner_dim, bias=False) - self.to_kv = nn.Linear(dim, inner_dim * 2, bias=False) - self.to_out = nn.Linear(inner_dim, dim, bias=False) - - def forward(self, x, latents): - """ - Args: - x (torch.Tensor): image features - shape (b, n1, D) - latent (torch.Tensor): latent features - shape (b, n2, D) - """ - x = self.norm1(x) - latents = self.norm2(latents) - - b, l, _ = latents.shape - - q = self.to_q(latents) - kv_input = torch.cat((x, latents), dim=-2) - k, v = self.to_kv(kv_input).chunk(2, dim=-1) - - q, k, v = map( - lambda t: t.reshape(b, t.shape[1], self.heads, -1) - .transpose(1, 2) - .reshape(b, self.heads, t.shape[1], -1) - .contiguous(), - (q, k, v), - ) - - # attention - scale = 1 / math.sqrt(math.sqrt(self.dim_head)) - weight = (q * scale) @ (k * scale).transpose(-2, -1) # More stable with f16 than dividing afterwards - weight = torch.softmax(weight.float(), dim=-1).type(weight.dtype) - out = weight @ v - - out = out.permute(0, 2, 1, 3).reshape(b, l, -1) - - return self.to_out(out) - - -class Resampler(nn.Module): - def __init__( - self, - dim=1024, - depth=8, - dim_head=64, - heads=16, - num_queries=8, - embedding_dim=768, - output_dim=1024, - ff_mult=4, - ): - super().__init__() - self.latents = nn.Parameter(torch.randn(1, num_queries, dim) / dim ** 0.5) - self.proj_in = nn.Linear(embedding_dim, dim) - self.proj_out = nn.Linear(dim, output_dim) - self.norm_out = nn.LayerNorm(output_dim) - - self.layers = nn.ModuleList([]) - for _ in range(depth): - self.layers.append( - nn.ModuleList( - [ - PerceiverAttention(dim=dim, dim_head=dim_head, heads=heads), - nn.Sequential( - nn.LayerNorm(dim), - nn.Linear(dim, dim * ff_mult, bias=False), - nn.GELU(), - nn.Linear(dim * ff_mult, dim, bias=False), - ) - ] - ) - ) - - def forward(self, x): - latents = self.latents.repeat(x.size(0), 1, 1) - x = self.proj_in(x) - for attn, ff in self.layers: - latents = attn(x, latents) + latents - latents = ff(latents) + latents - - latents = self.proj_out(latents) - return self.norm_out(latents) - - -class CondSequential(nn.Sequential): - """ - A sequential module that passes timestep embeddings to the children that - support it as an extra input. - """ - - def forward(self, x, emb, context=None, num_frames=1): - for layer in self: - if isinstance(layer, ResBlock): - x = layer(x, emb) - elif isinstance(layer, SpatialTransformer3D): - x = layer(x, context, num_frames=num_frames) - else: - x = layer(x) - return x - - -class Upsample(nn.Module): - """ - An upsampling layer with an optional convolution. - :param channels: channels in the inputs and outputs. - :param use_conv: a bool determining if a convolution is applied. - :param dims: determines if the signal is 1D, 2D, or 3D. If 3D, then - upsampling occurs in the inner-two dimensions. - """ - - def __init__(self, channels, use_conv, dims=2, out_channels=None, padding=1): - super().__init__() - self.channels = channels - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.dims = dims - if use_conv: - self.conv = conv_nd( - dims, self.channels, self.out_channels, 3, padding=padding - ) - - def forward(self, x): - assert x.shape[1] == self.channels - if self.dims == 3: - x = F.interpolate( - x, (x.shape[2], x.shape[3] * 2, x.shape[4] * 2), mode="nearest" - ) - else: - x = F.interpolate(x, scale_factor=2, mode="nearest") - if self.use_conv: - x = self.conv(x) - return x - - -class Downsample(nn.Module): - """ - A downsampling layer with an optional convolution. - :param channels: channels in the inputs and outputs. - :param use_conv: a bool determining if a convolution is applied. - :param dims: determines if the signal is 1D, 2D, or 3D. If 3D, then - downsampling occurs in the inner-two dimensions. - """ - - def __init__(self, channels, use_conv, dims=2, out_channels=None, padding=1): - super().__init__() - self.channels = channels - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.dims = dims - stride = 2 if dims != 3 else (1, 2, 2) - if use_conv: - self.op = conv_nd( - dims, - self.channels, - self.out_channels, - 3, - stride=stride, - padding=padding, - ) - else: - assert self.channels == self.out_channels - self.op = avg_pool_nd(dims, kernel_size=stride, stride=stride) - - def forward(self, x): - assert x.shape[1] == self.channels - return self.op(x) - - -class ResBlock(nn.Module): - """ - A residual block that can optionally change the number of channels. - :param channels: the number of input channels. - :param emb_channels: the number of timestep embedding channels. - :param dropout: the rate of dropout. - :param out_channels: if specified, the number of out channels. - :param use_conv: if True and out_channels is specified, use a spatial - convolution instead of a smaller 1x1 convolution to change the - channels in the skip connection. - :param dims: determines if the signal is 1D, 2D, or 3D. - :param up: if True, use this block for upsampling. - :param down: if True, use this block for downsampling. - """ - - def __init__( - self, - channels, - emb_channels, - dropout, - out_channels=None, - use_conv=False, - use_scale_shift_norm=False, - dims=2, - up=False, - down=False, - ): - super().__init__() - self.channels = channels - self.emb_channels = emb_channels - self.dropout = dropout - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.use_scale_shift_norm = use_scale_shift_norm - - self.in_layers = nn.Sequential( - nn.GroupNorm(32, channels), - nn.SiLU(), - conv_nd(dims, channels, self.out_channels, 3, padding=1), - ) - - self.updown = up or down - - if up: - self.h_upd = Upsample(channels, False, dims) - self.x_upd = Upsample(channels, False, dims) - elif down: - self.h_upd = Downsample(channels, False, dims) - self.x_upd = Downsample(channels, False, dims) - else: - self.h_upd = self.x_upd = nn.Identity() - - self.emb_layers = nn.Sequential( - nn.SiLU(), - nn.Linear( - emb_channels, - 2 * self.out_channels if use_scale_shift_norm else self.out_channels, - ), - ) - self.out_layers = nn.Sequential( - nn.GroupNorm(32, self.out_channels), - nn.SiLU(), - nn.Dropout(p=dropout), - zero_module( - conv_nd(dims, self.out_channels, self.out_channels, 3, padding=1) - ), - ) - - if self.out_channels == channels: - self.skip_connection = nn.Identity() - elif use_conv: - self.skip_connection = conv_nd( - dims, channels, self.out_channels, 3, padding=1 - ) - else: - self.skip_connection = conv_nd(dims, channels, self.out_channels, 1) - - def forward(self, x, emb): - if self.updown: - in_rest, in_conv = self.in_layers[:-1], self.in_layers[-1] - h = in_rest(x) - h = self.h_upd(h) - x = self.x_upd(x) - h = in_conv(h) - else: - h = self.in_layers(x) - emb_out = self.emb_layers(emb).type(h.dtype) - while len(emb_out.shape) < len(h.shape): - emb_out = emb_out[..., None] - if self.use_scale_shift_norm: - out_norm, out_rest = self.out_layers[0], self.out_layers[1:] - scale, shift = torch.chunk(emb_out, 2, dim=1) - h = out_norm(h) * (1 + scale) + shift - h = out_rest(h) - else: - h = h + emb_out - h = self.out_layers(h) - return self.skip_connection(x) + h - - -class MultiViewUNetModel(ModelMixin, ConfigMixin): - """ - The full multi-view UNet model with attention, timestep embedding and camera embedding. - :param in_channels: channels in the input Tensor. - :param model_channels: base channel count for the model. - :param out_channels: channels in the output Tensor. - :param num_res_blocks: number of residual blocks per downsample. - :param attention_resolutions: a collection of downsample rates at which - attention will take place. May be a set, list, or tuple. - For example, if this contains 4, then at 4x downsampling, attention - will be used. - :param dropout: the dropout probability. - :param channel_mult: channel multiplier for each level of the UNet. - :param conv_resample: if True, use learned convolutions for upsampling and - downsampling. - :param dims: determines if the signal is 1D, 2D, or 3D. - :param num_classes: if specified (as an int), then this model will be - class-conditional with `num_classes` classes. - :param num_heads: the number of attention heads in each attention layer. - :param num_heads_channels: if specified, ignore num_heads and instead use - a fixed channel width per attention head. - :param num_heads_upsample: works with num_heads to set a different number - of heads for upsampling. Deprecated. - :param use_scale_shift_norm: use a FiLM-like conditioning mechanism. - :param resblock_updown: use residual blocks for up/downsampling. - :param use_new_attention_order: use a different attention pattern for potentially - increased efficiency. - :param camera_dim: dimensionality of camera input. - """ - - def __init__( - self, - image_size, - in_channels, - model_channels, - out_channels, - num_res_blocks, - attention_resolutions, - dropout=0, - channel_mult=(1, 2, 4, 8), - conv_resample=True, - dims=2, - num_classes=None, - num_heads=-1, - num_head_channels=-1, - num_heads_upsample=-1, - use_scale_shift_norm=False, - resblock_updown=False, - transformer_depth=1, - context_dim=None, - n_embed=None, - num_attention_blocks=None, - adm_in_channels=None, - camera_dim=None, - ip_dim=0, # imagedream uses ip_dim > 0 - ip_weight=1.0, - **kwargs, - ): - super().__init__() - assert context_dim is not None - - if num_heads_upsample == -1: - num_heads_upsample = num_heads - - if num_heads == -1: - assert ( - num_head_channels != -1 - ), "Either num_heads or num_head_channels has to be set" - - if num_head_channels == -1: - assert ( - num_heads != -1 - ), "Either num_heads or num_head_channels has to be set" - - self.image_size = image_size - self.in_channels = in_channels - self.model_channels = model_channels - self.out_channels = out_channels - if isinstance(num_res_blocks, int): - self.num_res_blocks = len(channel_mult) * [num_res_blocks] - else: - if len(num_res_blocks) != len(channel_mult): - raise ValueError( - "provide num_res_blocks either as an int (globally constant) or " - "as a list/tuple (per-level) with the same length as channel_mult" - ) - self.num_res_blocks = num_res_blocks - - if num_attention_blocks is not None: - assert len(num_attention_blocks) == len(self.num_res_blocks) - assert all( - map( - lambda i: self.num_res_blocks[i] >= num_attention_blocks[i], - range(len(num_attention_blocks)), - ) - ) - print( - f"Constructor of UNetModel received num_attention_blocks={num_attention_blocks}. " - f"This option has LESS priority than attention_resolutions {attention_resolutions}, " - f"i.e., in cases where num_attention_blocks[i] > 0 but 2**i not in attention_resolutions, " - f"attention will still not be set." - ) - - self.attention_resolutions = attention_resolutions - self.dropout = dropout - self.channel_mult = channel_mult - self.conv_resample = conv_resample - self.num_classes = num_classes - self.num_heads = num_heads - self.num_head_channels = num_head_channels - self.num_heads_upsample = num_heads_upsample - self.predict_codebook_ids = n_embed is not None - - self.ip_dim = ip_dim - self.ip_weight = ip_weight - - if self.ip_dim > 0: - self.image_embed = Resampler( - dim=context_dim, - depth=4, - dim_head=64, - heads=12, - num_queries=ip_dim, # num token - embedding_dim=1280, - output_dim=context_dim, - ff_mult=4, - ) - - time_embed_dim = model_channels * 4 - self.time_embed = nn.Sequential( - nn.Linear(model_channels, time_embed_dim), - nn.SiLU(), - nn.Linear(time_embed_dim, time_embed_dim), - ) - - if camera_dim is not None: - time_embed_dim = model_channels * 4 - self.camera_embed = nn.Sequential( - nn.Linear(camera_dim, time_embed_dim), - nn.SiLU(), - nn.Linear(time_embed_dim, time_embed_dim), - ) - - if self.num_classes is not None: - if isinstance(self.num_classes, int): - self.label_emb = nn.Embedding(self.num_classes, time_embed_dim) - elif self.num_classes == "continuous": - # print("setting up linear c_adm embedding layer") - self.label_emb = nn.Linear(1, time_embed_dim) - elif self.num_classes == "sequential": - assert adm_in_channels is not None - self.label_emb = nn.Sequential( - nn.Sequential( - nn.Linear(adm_in_channels, time_embed_dim), - nn.SiLU(), - nn.Linear(time_embed_dim, time_embed_dim), - ) - ) - else: - raise ValueError() - - self.input_blocks = nn.ModuleList( - [ - CondSequential( - conv_nd(dims, in_channels, model_channels, 3, padding=1) - ) - ] - ) - self._feature_size = model_channels - input_block_chans = [model_channels] - ch = model_channels - ds = 1 - for level, mult in enumerate(channel_mult): - for nr in range(self.num_res_blocks[level]): - layers: List[Any] = [ - ResBlock( - ch, - time_embed_dim, - dropout, - out_channels=mult * model_channels, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - ) - ] - ch = mult * model_channels - if ds in attention_resolutions: - if num_head_channels == -1: - dim_head = ch // num_heads - else: - num_heads = ch // num_head_channels - dim_head = num_head_channels - - if num_attention_blocks is None or nr < num_attention_blocks[level]: - layers.append( - SpatialTransformer3D( - ch, - num_heads, - dim_head, - context_dim=context_dim, - depth=transformer_depth, - ip_dim=self.ip_dim, - ip_weight=self.ip_weight, - ) - ) - self.input_blocks.append(CondSequential(*layers)) - self._feature_size += ch - input_block_chans.append(ch) - if level != len(channel_mult) - 1: - out_ch = ch - self.input_blocks.append( - CondSequential( - ResBlock( - ch, - time_embed_dim, - dropout, - out_channels=out_ch, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - down=True, - ) - if resblock_updown - else Downsample( - ch, conv_resample, dims=dims, out_channels=out_ch - ) - ) - ) - ch = out_ch - input_block_chans.append(ch) - ds *= 2 - self._feature_size += ch - - if num_head_channels == -1: - dim_head = ch // num_heads - else: - num_heads = ch // num_head_channels - dim_head = num_head_channels - - self.middle_block = CondSequential( - ResBlock( - ch, - time_embed_dim, - dropout, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - ), - SpatialTransformer3D( - ch, - num_heads, - dim_head, - context_dim=context_dim, - depth=transformer_depth, - ip_dim=self.ip_dim, - ip_weight=self.ip_weight, - ), - ResBlock( - ch, - time_embed_dim, - dropout, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - ), - ) - self._feature_size += ch - - self.output_blocks = nn.ModuleList([]) - for level, mult in list(enumerate(channel_mult))[::-1]: - for i in range(self.num_res_blocks[level] + 1): - ich = input_block_chans.pop() - layers = [ - ResBlock( - ch + ich, - time_embed_dim, - dropout, - out_channels=model_channels * mult, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - ) - ] - ch = model_channels * mult - if ds in attention_resolutions: - if num_head_channels == -1: - dim_head = ch // num_heads - else: - num_heads = ch // num_head_channels - dim_head = num_head_channels - - if num_attention_blocks is None or i < num_attention_blocks[level]: - layers.append( - SpatialTransformer3D( - ch, - num_heads, - dim_head, - context_dim=context_dim, - depth=transformer_depth, - ip_dim=self.ip_dim, - ip_weight=self.ip_weight, - ) - ) - if level and i == self.num_res_blocks[level]: - out_ch = ch - layers.append( - ResBlock( - ch, - time_embed_dim, - dropout, - out_channels=out_ch, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - up=True, - ) - if resblock_updown - else Upsample(ch, conv_resample, dims=dims, out_channels=out_ch) - ) - ds //= 2 - self.output_blocks.append(CondSequential(*layers)) - self._feature_size += ch - - self.out = nn.Sequential( - nn.GroupNorm(32, ch), - nn.SiLU(), - zero_module(conv_nd(dims, model_channels, out_channels, 3, padding=1)), - ) - if self.predict_codebook_ids: - self.id_predictor = nn.Sequential( - nn.GroupNorm(32, ch), - conv_nd(dims, model_channels, n_embed, 1), - # nn.LogSoftmax(dim=1) # change to cross_entropy and produce non-normalized logits - ) - - def forward( - self, - x, - timesteps=None, - context=None, - y=None, - camera=None, - num_frames=1, - ip=None, - ip_img=None, - **kwargs, - ): - """ - Apply the model to an input batch. - :param x: an [(N x F) x C x ...] Tensor of inputs. F is the number of frames (views). - :param timesteps: a 1-D batch of timesteps. - :param context: conditioning plugged in via crossattn - :param y: an [N] Tensor of labels, if class-conditional. - :param num_frames: a integer indicating number of frames for tensor reshaping. - :return: an [(N x F) x C x ...] Tensor of outputs. F is the number of frames (views). - """ - assert ( - x.shape[0] % num_frames == 0 - ), "input batch size must be dividable by num_frames!" - assert (y is not None) == ( - self.num_classes is not None - ), "must specify y if and only if the model is class-conditional" - - hs = [] - - t_emb = timestep_embedding(timesteps, self.model_channels, repeat_only=False).to(x.dtype) - - emb = self.time_embed(t_emb) - - if self.num_classes is not None: - assert y is not None - assert y.shape[0] == x.shape[0] - emb = emb + self.label_emb(y) - - # Add camera embeddings - if camera is not None: - emb = emb + self.camera_embed(camera) - - # imagedream variant - if self.ip_dim > 0: - x[(num_frames - 1) :: num_frames, :, :, :] = ip_img # place at [4, 9] - ip_emb = self.image_embed(ip) - context = torch.cat((context, ip_emb), 1) - - h = x - for module in self.input_blocks: - h = module(h, emb, context, num_frames=num_frames) - hs.append(h) - h = self.middle_block(h, emb, context, num_frames=num_frames) - for module in self.output_blocks: - h = torch.cat([h, hs.pop()], dim=1) - h = module(h, emb, context, num_frames=num_frames) - h = h.type(x.dtype) - if self.predict_codebook_ids: - return self.id_predictor(h) - else: - return self.out(h) \ No newline at end of file diff --git a/checkpoints/ashawkey/imagedream-ipmv-diffusers/vae/config.json b/checkpoints/ashawkey/imagedream-ipmv-diffusers/vae/config.json deleted file mode 100644 index ae5747e..0000000 --- a/checkpoints/ashawkey/imagedream-ipmv-diffusers/vae/config.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "_class_name": "AutoencoderKL", - "_diffusers_version": "0.25.0", - "act_fn": "silu", - "block_out_channels": [ - 128, - 256, - 512, - 512 - ], - "down_block_types": [ - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D" - ], - "force_upcast": true, - "in_channels": 3, - "latent_channels": 4, - "layers_per_block": 2, - "norm_num_groups": 32, - "out_channels": 3, - "sample_size": 256, - "scaling_factor": 0.18215, - "up_block_types": [ - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D" - ] -} diff --git a/checkpoints/flamehaze1115/wonder3d-v1.0/feature_extractor/preprocessor_config.json b/checkpoints/flamehaze1115/wonder3d-v1.0/feature_extractor/preprocessor_config.json deleted file mode 100644 index 0d9d33b..0000000 --- a/checkpoints/flamehaze1115/wonder3d-v1.0/feature_extractor/preprocessor_config.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "crop_size": { - "height": 224, - "width": 224 - }, - "do_center_crop": true, - "do_convert_rgb": true, - "do_normalize": true, - "do_rescale": true, - "do_resize": true, - "feature_extractor_type": "CLIPFeatureExtractor", - "image_mean": [ - 0.48145466, - 0.4578275, - 0.40821073 - ], - "image_processor_type": "CLIPImageProcessor", - "image_std": [ - 0.26862954, - 0.26130258, - 0.27577711 - ], - "resample": 3, - "rescale_factor": 0.00392156862745098, - "size": { - "shortest_edge": 224 - } -} diff --git a/checkpoints/flamehaze1115/wonder3d-v1.0/image_encoder/config.json b/checkpoints/flamehaze1115/wonder3d-v1.0/image_encoder/config.json deleted file mode 100644 index 3b69e48..0000000 --- a/checkpoints/flamehaze1115/wonder3d-v1.0/image_encoder/config.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "_name_or_path": "lambdalabs/sd-image-variations-diffusers", - "architectures": [ - "CLIPVisionModelWithProjection" - ], - "attention_dropout": 0.0, - "dropout": 0.0, - "hidden_act": "quick_gelu", - "hidden_size": 1024, - "image_size": 224, - "initializer_factor": 1.0, - "initializer_range": 0.02, - "intermediate_size": 4096, - "layer_norm_eps": 1e-05, - "model_type": "clip_vision_model", - "num_attention_heads": 16, - "num_channels": 3, - "num_hidden_layers": 24, - "patch_size": 14, - "projection_dim": 768, - "torch_dtype": "float16", - "transformers_version": "4.34.1" -} diff --git a/checkpoints/flamehaze1115/wonder3d-v1.0/model_index.json b/checkpoints/flamehaze1115/wonder3d-v1.0/model_index.json deleted file mode 100644 index 6d7b440..0000000 --- a/checkpoints/flamehaze1115/wonder3d-v1.0/model_index.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "_class_name": "MVDiffusionImagePipeline", - "_diffusers_version": "0.19.3", - "feature_extractor": [ - "transformers", - "CLIPImageProcessor" - ], - "image_encoder": [ - "transformers", - "CLIPVisionModelWithProjection" - ], - "requires_safety_checker": true, - "safety_checker": [ - null, - null - ], - "scheduler": [ - "diffusers", - "DDIMScheduler" - ], - "unet": [ - "mvdiffusion.models.unet_mv2d_condition", - "UNetMV2DConditionModel" - ], - "vae": [ - "diffusers", - "AutoencoderKL" - ] -} diff --git a/checkpoints/flamehaze1115/wonder3d-v1.0/scheduler/scheduler_config.json b/checkpoints/flamehaze1115/wonder3d-v1.0/scheduler/scheduler_config.json deleted file mode 100644 index 93da17b..0000000 --- a/checkpoints/flamehaze1115/wonder3d-v1.0/scheduler/scheduler_config.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "_class_name": "DDIMScheduler", - "_diffusers_version": "0.19.3", - "beta_end": 0.012, - "beta_schedule": "scaled_linear", - "beta_start": 0.00085, - "clip_sample": false, - "clip_sample_range": 1.0, - "dynamic_thresholding_ratio": 0.995, - "num_train_timesteps": 1000, - "prediction_type": "epsilon", - "rescale_betas_zero_snr": false, - "sample_max_value": 1.0, - "set_alpha_to_one": false, - "skip_prk_steps": true, - "steps_offset": 1, - "thresholding": false, - "timestep_spacing": "leading", - "trained_betas": null -} diff --git a/checkpoints/flamehaze1115/wonder3d-v1.0/unet/config.json b/checkpoints/flamehaze1115/wonder3d-v1.0/unet/config.json deleted file mode 100644 index 64655ad..0000000 --- a/checkpoints/flamehaze1115/wonder3d-v1.0/unet/config.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "_class_name": "UNetMV2DConditionModel", - "_diffusers_version": "0.19.3", - "_name_or_path": "/home/xiaoxiao/Workplace/wonder3Dplus/ckpts", - "act_fn": "silu", - "addition_embed_type": null, - "addition_embed_type_num_heads": 64, - "addition_time_embed_dim": null, - "attention_head_dim": 8, - "block_out_channels": [ - 320, - 640, - 1280, - 1280 - ], - "cd_attention_last": false, - "cd_attention_mid": true, - "center_input_sample": false, - "class_embed_type": "projection", - "class_embeddings_concat": false, - "conv_in_kernel": 3, - "conv_out_kernel": 3, - "cross_attention_dim": 768, - "cross_attention_norm": null, - "cross_domain_attention": false, - "down_block_types": [ - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "DownBlock2D" - ], - "downsample_padding": 1, - "dual_cross_attention": false, - "encoder_hid_dim": null, - "encoder_hid_dim_type": null, - "flip_sin_to_cos": true, - "freq_shift": 0, - "in_channels": 8, - "joint_attention": false, - "joint_attention_twice": true, - "layers_per_block": 2, - "mid_block_only_cross_attention": null, - "mid_block_scale_factor": 1, - "mid_block_type": "UNetMidBlockMV2DCrossAttn", - "multiview_attention": true, - "mvcd_attention": false, - "norm_eps": 1e-05, - "norm_num_groups": 32, - "num_attention_heads": null, - "num_class_embeds": null, - "num_views": 6, - "only_cross_attention": false, - "out_channels": 4, - "projection_class_embeddings_input_dim": 10, - "resnet_out_scale_factor": 1.0, - "resnet_skip_time_act": false, - "resnet_time_scale_shift": "default", - "sample_size": 32, - "sparse_mv_attention": false, - "time_cond_proj_dim": null, - "time_embedding_act_fn": null, - "time_embedding_dim": null, - "time_embedding_type": "positional", - "timestep_post_act": null, - "transformer_layers_per_block": 1, - "up_block_types": [ - "UpBlock2D", - "CrossAttnUpBlockMV2D", - "CrossAttnUpBlockMV2D", - "CrossAttnUpBlockMV2D" - ], - "upcast_attention": false, - "use_linear_projection": false -} diff --git a/checkpoints/flamehaze1115/wonder3d-v1.0/vae/config.json b/checkpoints/flamehaze1115/wonder3d-v1.0/vae/config.json deleted file mode 100644 index 6c38401..0000000 --- a/checkpoints/flamehaze1115/wonder3d-v1.0/vae/config.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "_class_name": "AutoencoderKL", - "_diffusers_version": "0.19.3", - "_name_or_path": "lambdalabs/sd-image-variations-diffusers", - "act_fn": "silu", - "block_out_channels": [ - 128, - 256, - 512, - 512 - ], - "down_block_types": [ - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D" - ], - "force_upcast": true, - "in_channels": 3, - "latent_channels": 4, - "layers_per_block": 2, - "norm_num_groups": 32, - "out_channels": 3, - "sample_size": 256, - "scaling_factor": 0.18215, - "up_block_types": [ - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D" - ] -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/.gitattributes b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/.gitattributes deleted file mode 100644 index a6344aa..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/.gitattributes +++ /dev/null @@ -1,35 +0,0 @@ -*.7z filter=lfs diff=lfs merge=lfs -text -*.arrow filter=lfs diff=lfs merge=lfs -text -*.bin filter=lfs diff=lfs merge=lfs -text -*.bz2 filter=lfs diff=lfs merge=lfs -text -*.ckpt filter=lfs diff=lfs merge=lfs -text -*.ftz filter=lfs diff=lfs merge=lfs -text -*.gz filter=lfs diff=lfs merge=lfs -text -*.h5 filter=lfs diff=lfs merge=lfs -text -*.joblib filter=lfs diff=lfs merge=lfs -text -*.lfs.* filter=lfs diff=lfs merge=lfs -text -*.mlmodel filter=lfs diff=lfs merge=lfs -text -*.model filter=lfs diff=lfs merge=lfs -text -*.msgpack filter=lfs diff=lfs merge=lfs -text -*.npy filter=lfs diff=lfs merge=lfs -text -*.npz filter=lfs diff=lfs merge=lfs -text -*.onnx filter=lfs diff=lfs merge=lfs -text -*.ot filter=lfs diff=lfs merge=lfs -text -*.parquet filter=lfs diff=lfs merge=lfs -text -*.pb filter=lfs diff=lfs merge=lfs -text -*.pickle filter=lfs diff=lfs merge=lfs -text -*.pkl filter=lfs diff=lfs merge=lfs -text -*.pt filter=lfs diff=lfs merge=lfs -text -*.pth filter=lfs diff=lfs merge=lfs -text -*.rar filter=lfs diff=lfs merge=lfs -text -*.safetensors filter=lfs diff=lfs merge=lfs -text -saved_model/**/* filter=lfs diff=lfs merge=lfs -text -*.tar.* filter=lfs diff=lfs merge=lfs -text -*.tar filter=lfs diff=lfs merge=lfs -text -*.tflite filter=lfs diff=lfs merge=lfs -text -*.tgz filter=lfs diff=lfs merge=lfs -text -*.wasm filter=lfs diff=lfs merge=lfs -text -*.xz filter=lfs diff=lfs merge=lfs -text -*.zip filter=lfs diff=lfs merge=lfs -text -*.zst filter=lfs diff=lfs merge=lfs -text -*tfevents* filter=lfs diff=lfs merge=lfs -text diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/README.md b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/README.md deleted file mode 100644 index 154df82..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/README.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -license: apache-2.0 ---- diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/feature_extractor/preprocessor_config.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/feature_extractor/preprocessor_config.json deleted file mode 100644 index fb1692f..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/feature_extractor/preprocessor_config.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "crop_size": { - "height": 224, - "width": 224 - }, - "do_center_crop": true, - "do_convert_rgb": true, - "do_normalize": true, - "do_rescale": true, - "do_resize": true, - "image_mean": [ - 0.48145466, - 0.4578275, - 0.40821073 - ], - "image_processor_type": "CLIPImageProcessor", - "image_std": [ - 0.26862954, - 0.26130258, - 0.27577711 - ], - "resample": 3, - "rescale_factor": 0.00392156862745098, - "size": { - "shortest_edge": 224 - } -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/image_encoder/config.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/image_encoder/config.json deleted file mode 100644 index 8acd629..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/image_encoder/config.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "_name_or_path": "stabilityai/stable-diffusion-2-1-unclip", - "architectures": [ - "CLIPVisionModelWithProjection" - ], - "attention_dropout": 0.0, - "dropout": 0.0, - "hidden_act": "gelu", - "hidden_size": 1280, - "image_size": 224, - "initializer_factor": 1.0, - "initializer_range": 0.02, - "intermediate_size": 5120, - "layer_norm_eps": 1e-05, - "model_type": "clip_vision_model", - "num_attention_heads": 16, - "num_channels": 3, - "num_hidden_layers": 32, - "patch_size": 14, - "projection_dim": 1024, - "torch_dtype": "float16", - "transformers_version": "4.37.2" -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/image_noising_scheduler/scheduler_config.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/image_noising_scheduler/scheduler_config.json deleted file mode 100644 index 87af594..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/image_noising_scheduler/scheduler_config.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "_class_name": "DDPMScheduler", - "_diffusers_version": "0.26.0.dev0", - "beta_end": 0.02, - "beta_schedule": "squaredcos_cap_v2", - "beta_start": 0.0001, - "clip_sample": true, - "clip_sample_range": 1.0, - "dynamic_thresholding_ratio": 0.995, - "num_train_timesteps": 1000, - "prediction_type": "epsilon", - "rescale_betas_zero_snr": false, - "sample_max_value": 1.0, - "steps_offset": 0, - "thresholding": false, - "timestep_spacing": "leading", - "trained_betas": null, - "variance_type": "fixed_small" -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/image_normalizer/config.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/image_normalizer/config.json deleted file mode 100644 index 5007254..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/image_normalizer/config.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "_class_name": "StableUnCLIPImageNormalizer", - "_diffusers_version": "0.26.0.dev0", - "_name_or_path": "stabilityai/stable-diffusion-2-1-unclip", - "embedding_dim": 1024 -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/model_index.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/model_index.json deleted file mode 100644 index e689f07..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/model_index.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "_class_name": "StableUnCLIPImg2ImgPipeline", - "_diffusers_version": "0.26.0.dev0", - "feature_extractor": [ - "transformers", - "CLIPImageProcessor" - ], - "image_encoder": [ - "transformers", - "CLIPVisionModelWithProjection" - ], - "image_noising_scheduler": [ - "diffusers", - "DDPMScheduler" - ], - "image_normalizer": [ - "stable_diffusion", - "StableUnCLIPImageNormalizer" - ], - "scheduler": [ - "diffusers", - "DDIMScheduler" - ], - "text_encoder": [ - "transformers", - "CLIPTextModel" - ], - "tokenizer": [ - "transformers", - "CLIPTokenizer" - ], - "unet": [ - "era3d.mvdiffusion.models.unet_mv2d_condition", - "UNetMV2DConditionModel" - ], - "vae": [ - "diffusers", - "AutoencoderKL" - ] -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/scheduler/scheduler_config.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/scheduler/scheduler_config.json deleted file mode 100644 index e52d1cb..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/scheduler/scheduler_config.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "_class_name": "DDIMScheduler", - "_diffusers_version": "0.26.0.dev0", - "beta_end": 0.012, - "beta_schedule": "linear", - "beta_start": 0.00085, - "clip_sample": false, - "clip_sample_range": 1.0, - "dynamic_thresholding_ratio": 0.995, - "num_train_timesteps": 1000, - "prediction_type": "v_prediction", - "rescale_betas_zero_snr": false, - "sample_max_value": 1.0, - "set_alpha_to_one": false, - "skip_prk_steps": true, - "steps_offset": 1, - "thresholding": false, - "timestep_spacing": "leading", - "trained_betas": null -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/text_encoder/config.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/text_encoder/config.json deleted file mode 100644 index 120e7db..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/text_encoder/config.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "_name_or_path": "stabilityai/stable-diffusion-2-1-unclip", - "architectures": [ - "CLIPTextModel" - ], - "attention_dropout": 0.0, - "bos_token_id": 0, - "dropout": 0.0, - "eos_token_id": 2, - "hidden_act": "gelu", - "hidden_size": 1024, - "initializer_factor": 1.0, - "initializer_range": 0.02, - "intermediate_size": 4096, - "layer_norm_eps": 1e-05, - "max_position_embeddings": 77, - "model_type": "clip_text_model", - "num_attention_heads": 16, - "num_hidden_layers": 23, - "pad_token_id": 1, - "projection_dim": 512, - "torch_dtype": "float16", - "transformers_version": "4.37.2", - "vocab_size": 49408 -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/merges.txt b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/merges.txt deleted file mode 100644 index 76e821f..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/merges.txt +++ /dev/null @@ -1,48895 +0,0 @@ -#version: 0.2 -i n -t h -a n -r e -a r -e r -th e -in g -o u -o n -s t -o r -e n -o n -a l -a t -e r -i t -i n -t o -r o -i s -l e -i c -a t -an d -e d -o f -c h -o r -e s -i l -e l -s t -a c -o m -a m -l o -a n -a y -s h -r i -l i -t i -f or -n e -ð Ł -r a -h a -d e -o l -v e -s i -u r -a l -s e -' s -u n -d i -b e -l a -w h -o o -d ay -e n -m a -n o -l e -t o -ou r -i r -g h -w it -i t -y o -a s -s p -th is -t s -at i -yo u -wit h -a d -i s -a b -l y -w e -th e -t e -a s -a g -v i -p p -s u -h o -m y -. . -b u -c om -s e -er s -m e -m e -al l -c on -m o -k e -g e -ou t -en t -c o -f e -v er -a r -f ro -a u -p o -c e -gh t -ar e -s s -fro m -c h -t r -ou n -on e -b y -d o -t h -w or -er e -k e -p ro -f or -d s -b o -t a -w e -g o -h e -t er -in g -d e -b e -ati on -m or -a y -e x -il l -p e -k s -s c -l u -f u -q u -v er -ðŁ ĺ -j u -m u -at e -an d -v e -k ing -m ar -o p -h i -.. . -p re -a d -r u -th at -j o -o f -c e -ne w -a m -a p -g re -s s -d u -no w -y e -t ing -y our -it y -n i -c i -p ar -g u -f i -a f -p er -t er -u p -s o -g i -on s -g r -g e -b r -p l -' t -m i -in e -we e -b i -u s -sh o -ha ve -to day -a v -m an -en t -ac k -ur e -ou r -â Ģ -c u -l d -lo o -i m -ic e -s om -f in -re d -re n -oo d -w as -ti on -p i -i r -th er -t y -p h -ar d -e c -! ! -m on -mor e -w ill -t ra -c an -c ol -p u -t e -w n -m b -s o -it i -ju st -n ing -h ere -t u -p a -p r -bu t -wh at -al ly -f ir -m in -c a -an t -s a -t ed -e v -m ent -f a -ge t -am e -ab out -g ra -no t -ha pp -ay s -m an -h is -ti me -li ke -g h -ha s -th an -lo ve -ar t -st e -d ing -h e -c re -w s -w at -d er -it e -s er -ac e -ag e -en d -st r -a w -st or -r e -c ar -el l -al l -p s -f ri -p ho -p or -d o -a k -w i -f re -wh o -sh i -b oo -s on -el l -wh en -il l -ho w -gre at -w in -e l -b l -s si -al i -som e -ðŁ Ĵ -t on -d er -le s -p la -ï ¸ -e d -s ch -h u -on g -d on -k i -s h -an n -c or -. . -oun d -a z -in e -ar y -fu l -st u -ou ld -st i -g o -se e -ab le -ar s -l l -m is -b er -c k -w a -en ts -n o -si g -f e -fir st -e t -sp e -ac k -i f -ou s -' m -st er -a pp -an g -an ce -an s -g ood -b re -e ver -the y -t ic -com e -of f -b ack -as e -ing s -ol d -i ght -f o -h er -happ y -p ic -it s -v ing -u s -m at -h om -d y -e m -s k -y ing -the ir -le d -r y -u l -h ar -c k -t on -on al -h el -r ic -b ir -vi e -w ay -t ri -d a -p le -b ro -st o -oo l -ni ght -tr u -b a -re ad -re s -ye ar -f r -t or -al s -c oun -c la -t ure -v el -at ed -le c -en d -th ing -v o -ic i -be st -c an -wor k -la st -af ter -en ce -p ri -p e -e s -i l -âĢ ¦ -d re -y s -o ver -i es -ðŁ ij -com m -t w -in k -s un -c l -li fe -t t -a ch -l and -s y -t re -t al -p ol -s m -du c -s al -f t -' re -ch e -w ar -t ur -ati ons -ac h -m s -il e -p m -ou gh -at e -st ar -wee k -! !! -c lu -th ere -n er -t om -s el -ï¸ ı -wor ld -v es -c am -go t -in ter -of f -u m -ton ight -o ther -h ou -loo k -j e -i d -si on -be au -at t -el i -or t -re c -f f -st er -su pp -g en -be en -il y -te am -m m -i c -pe op -it t -at s -on ly -mb er -en g -b ri -m p -k now -b ur -b ar -in s -lo w -sh e -ro w -â Ŀ -t ro -peop le -vi a -lo w -ag a -be t -x t -f ac -ch ar -e ar -w al -s en -f am -b le -n ati -is h -n or -g ame -li ve -s co -le y -d on -ic k -b all -ver y -the se -p an -i a -at ing -c r -a re -g ir -ma ke -st re -sho w -. " -f l -u p -d r -than ks -il li -w om -st s -i g -s ur -ever y -c ur -vie w -le t -in to -mo st -n a -in di -g ar -ha d -s ou -v ed -an t -iti on -ma de -f ol -un i -it ed -ðŁ ı -ic al -th r -read y -ch ec -d ra -k es -boo k -e p -si c -mor ning -ne ws -c au -c t -w ell -an c -pho to -th an -or s -bir th -g g -ou t -ne xt -som e -en ing -stor y -ch ri -do wn -hom e -f fe -fre e -d a -b or -f il -ci al -than k -si de -le ar -qu e -l ine -t en -at es -ye ars -m y -pho to -beau ti -ri ght -n u -for m -shi p -b an -th er -d ays -g am -as on -g y -ðŁ İ -birth day -se t -ic k -e t -st ill -com ing -ta ke -ðŁ ĩ -b b -s ol -s on -d en -e p -mu sic -the m -de n -wh y -f oo -c ra -am az -w n -h ol -t ting -w r -u e -ma g -c ro -l an -c lo -b ra -a k -s ing -c al -re ad -' ve -jo h -b ab -d ri -b lo -bi g -er ic -in t -t or -tr y -l a -le g -hou se -m ic -v al -beauti ful -l itt -chec k -ne w -ver s -s w -ar i -pla y -h er -âĢ ĵ -w in -m a -con gr -sch ool -f un -. @ -he al -ic h -d el -wh ere -l on -ke t -tw o -mu ch -wat ch -v en -d ed -a st -k ed -b as -go ing -m p -e ver -w ays -ro o -de sig -l y -s ed -to p -l in -ch an -to o -it ing -d ent -gh ts -t y -sp o -ne ed -b lu -in st -be ing -âĿ ¤ -w el -l s -hi m -m ay -st ing -n a -el y -litt le -g a -n at -tom or -m c -h on -w ant -a ir -pi c -am eric -p er -le ss -wee k -ve l -a h -c ap -ch am -g er -ti m -tomor row -ne ss -st ate -h al -ser v -z e -o s -p at -v is -ex c -s in -f f -c ity -c en -an y -b el -su mm -t in -w ould -loo king -k o -ce le -fam ily -m er -po w -hel p -bu s -c o -c le -sel f -en s -ic s -th o -an i -ch o -le ad -b s -t wee -th ink -for e -ch il -vi de -di d -al e -ch i -v il -en ds -w ing -p as -' ll -v ol -s a -g s -man y -j ec -be fore -gra ph -n y -ur ing -w il -d d -bu il -f av -st ed -tr an -l ing -ou d -d ge -fi el -nati onal -st a -c er -w ere -in a -se ason -c ou -n ed -amaz ing -ti ons -cele br -n s -a th -he ad -s day -d ar -lo c -v in -an other -g oo -s at -n y -jo in -pre s -s es -s ing -an a -in ing -.. .. -c our -ï¸ ı -ac t -cau se -li ght -am s -t a -b al -f c -hi gh -off ici -t t -chri st -d ic -d ay -ra l -h or -: ) -vi si -n am -o b -ma s -gh t -re ally -t un -fin d -thr ough -por t -u t -ti ve -st y -n e -or e -ðŁĺ Ĥ -supp ort -ne ver -ev en -ðŁ Ķ -h a -y a -l d -u k -r an -j am -wi th -me di -d es -ne y -ch ing -al e -h y -k in -! ! -d y -pl ace -al so -b le -wh ich -bl ack -b li -s ay -par k -pl ay -ir e -vide o -week end -a il -ke y -p t -w ard -fri day -d in -ine ss -g ro -b en -al ways -t ball -ag o -m il -c y -pro duc -di sc -un der -ple ase -sp or -fu ll -e y -ðŁ Ļ -is e -iti es -c at -k no -u se -fo re -k er -ar t -hi gh -op en -s an -e f -our s -sh ed -st ri -d ro -aga in -i m -ðŁ ĵ -en jo -fu n -ge tting -p en -g er -c li -an y -ever y -e u -wom en -â ľ -e st -c ould -r y -" @ -th ou -sh a -comm un -b er -d ents -di s -wh ile -aw ay -di o -h am -g la -d ate -k a -mis s -un ch -w on -in f -roo m -g a -re al -ex per -di rec -sh ould -sp r -g ol -l ong -bet ter -or i -e y -i ence -il s -z z -h an -f ound -v s -â Ļ -po st -ti c -par t -m en -ren ce -ce ss -v ic -s il -sho p -ðŁĺ Ĥ -f ood -v al -sti c -y ou -s ays -e lec -st ar -o c -l and -i d -c tion -fiel d -s of -st art -wat er -fri ends -on es -ðŁ Į -f la -f ar -wh ite -par ty -in st -gr ou -t v -every one -m ent -j a -ch a -pr in -an ts -d uring -l at -l ar -we st -th en -k a -y oun -in sp -in te -we en -visi t -aga inst -re le -he ad -c es -to wn -loo ks -th re -re gi -ren t -pro jec -gir l -se ar -w o -m om -c ar -h un -pu bli -d i -p le -c all -c ri -u m -for d -per fe -fri end -h ard -ssi on -te st -pla ying -ar ound -be cause -ke ts -me et -sat ur -ar ti -wor k -j un -v en -r un -me mber -por t -su per -t wit -s am -el s -t ly -ad v -ati ve -at h -s ure -av ail -la r -s qu -ar ds -ev ent -m en -l l -o ver -lo gy -it al -tim es -m al -b ack -c oo -ma king -st ru -â ģ -it u -sh ar -g an -c as -s n -summ er -pic ture -f an -h in -christ mas -c y -pr oud -cham pi -desig n -pp ing -ho pe -c a -avail able -ma y -we d -photo graph -spe cial -sal e -sto p -er y -a we -al ity -hi story -am a -pre si -b ru -wor king -d one -d r -k en -fe at -w ood -ate st -sun day -mo vi -vel y -s le -f ace -sp ec -stu dents -b y -ha m -sp on -bus iness -d at -i e -i p -so ci -g lo -h and -re cor -r s -me e -ke ep -p ur -heal th -sh e -com ple -go d -da vi -col lec -li st -r a -clu b -t ers -in clu -th ings -pl an -â ĺ -joh n -sh ing -at ul -so on -blu e -g or -satur day -w on -congr atul -se e -âĿ¤ ï¸ı -tho se -ðŁĺ į -fin al -d ou -it h -o wn -ro ad -t our -a st -indi a -ti l -n d -f er -fav or -su l -lear n -fir e -ju st -grou p -a h -r ac -bo dy -u r -c are -à ¸ -p lo -o h -po s -gi ve -te ch -su b -c ent -er ing -y m -il ity -f ic -lon don -v ir -gu ys -b a -ðŁ ¤ -bab y -sc re -ðŁĺ į -tru mp -un der -chan ge -i an -col le -ss es -l er -ss ed -n ice -ann oun -pow er -s ar -a king -min i -s li -s wee -k ar -fu l -c ru -ac tion -a ther -) . -st and -de vel -a a -g an -le ft -lo l -re l -tran s -m ents -in t -e f -man ag -di g -gen er -do wn -p au -ti v -k u -th ur -k en -st on -f ans -tal k -twee t -t oo -sty le -pro te -se con -fr on -awe some -g l -p al -ne t -s or -la u -g on -sin ce -t ty -ser ies -me mor -b eli -fil m -di d -di es -o t -congratul ations -p ra -e ve -w oo -offici al -su c -in cre -b on -par t -pp ed -cla ss -si ve -bo y -cu l -perfe ct -t ou -d am -wel come -foo tball -h i -p ap -wa it -ad a -congr ats -youn g -exc ited -re ce -j an -v a -re d -st ra -medi a -' d -do es -le t -mu l -ill s -gre en -m el -to ge -fu ture -ye ster -vers ity -for m -ta in -i de -ch es -ki ds -qu i -ha ha -de ta -bi g -favor ite -gir ls -con tin -do m -sear ch -u al -a ir -d ers -mon th -c er -yester day -commun ity -ad e -do g -vil le -ic es -d eli -sy ste -ru n -is m -he art -c up -en ti -fe w -presi dent -e ds -un til -fe sti -o k -f lo -sa id -ol e -me d -tra vel - £ -ph one -toge ther -fa st -lo t -gam es -sh ir -bet ween -y es -th ers -do ing -m ac -at or -b and -fol low -projec t -devel op -di ffe -con fe -spe ci -ca st -y s -bo ard -r d -i al -sh oo -r am -ha ving -sh are -fol low -on e -n ame -m r -pu t -disc u -or y -c ame -ou s -s ite -twit ter -t b -t it -fin ally -z ed -su per -com pan -us ing -all s -li st -r is -sho t -g al -t ar -de l -joh n -âĢ Ķ -some thing -ra m -inte re -wh e -b it -ðŁ į -stre et -oun d -a i -tic kets -movi e -re al -k y -ta king -o pp -c c -l am -m oun -in ve -bl ack -us ed -on line -y or -loc al -gu e -c ks -o w -ge st -bo ys -illi on -con t -re ci -in ed -eu ro -no w -se en -p h -te ach -de f -sou th -su ch -aw ard -mu st -is su -ca re -fe el -p lu -l atest -spor ts -we b -te x -e ment -s k -fi c -w an -te ch -o t -bo x -n er -fre e -t al -a sh -c ase -ho t -won der -mee ting -er a -ch all -ðŁ IJ -jo b -il i -c ool -j our -th s -m o -f el -di e -mic ha -e le -te am -serv ice -st and -ma kes -p ing -ear ly -com es -e k -ho li -v ers -ag ue -s au -thre e -mon day -fa shi -some one -th ro -se a -b ad -supp or -tur n -ur y -m ing -photograph y -n ic -mar k -pre tty -ss ing -wat ching -me mb -ar ri -coun ty -be ach -fr an -cen ter -pol ice -b at -publi c -t an -pre ss -s af -s y -ge ts -ro y -n ers -y our -bu y -st ers -sho w -as ed -chil dre -af ric -in es -sp ace -sc ri -h all -pa in -ar ing -hom e -m ur -heal th -ch ed -s and -rece i -gu y -e a -americ an -re si -childre n -- - -i ri -ing ton -coun try -ro ss -le n -ann a -boo ks -b c -e ce -d om -lo vely -k h -pe t -g y -g ri -st age -off ice -ro ck -m on -b ay -t able -su n -m ed -th in -l or -f low -( @ -uni versity -stor e -fron t -goo d -z a -vo te -nor th -he y -an im -or der -mi d -with out -a de -re member -mar ket -? ? -mu s -tra ining -e duc -bu t -co ver -st an -sc en -b la -bre ak -l ou -s ame -g old -a in -o s -bo th -l it -ver n -a i -al bu -p a -enjo y -be g -ell ing -thur sday -inf o -s an -americ a -ha ir -te l -mar ch -con cer -colle ge -confe rence -ap p -h our -ch ang -â ļ -s our -ol s -we ather -w ar -p hi -festi val -secon d -cu te -pr ac -en er -str y -le a -pol it -s av -se n -o w -m i -ne ar -ou ght -z e -co ffe -w illi -d an -se y -davi d -e se -f an -de ci -the at -no v -ati on -tr ac -sc i -re view -c el -e m -u n -ju ly -or ig -ti on -d ru -form er -st ay -af ter -in v -too k -dat a -b al -tu es -d an -ev ening -ðŁĺĤ ðŁĺĤ -d ol -u res -pro vi -t s -e st -sig n -j ac -u k -s ong -ye t -bo w -in du -j ap -h oo -po int -any one -z y -i st -h ur -it al -buil ding -wom an -ch ur -j er -per for -co ach -le ague -ce ss -ne t -i mag -nati on -br it -qu e -aw ards -ag es -wor ks -c ed -man ce -l ate -ig n -mon ey -tru e -i i -t ell -pl ac -p ac -as y -wor ld -be hin -im port -read ing -gra m -gi ving -me t -h it -for ward -st om -pres ent -jun e -so cial -no on -mar t -hal f -s we -go vern -k er -deta ils -li sh -_ _ -ac y -si a -ber t -f all -! !!! -) , -th i -d iti -sp ort -k ing -f it -st af -c at -mu se -cen tr -y er -con tro -b loo -wal k -ac tu -did n -li m -lear ning -re search -wed ne -au th -h ours -k y -f ar -h en -.. .. -it ch -ri l -str ong -sk y -que sti -jam es -r on -d g -f ur -c in -do es -app ro -mar ke -tu res -ful ly -ch at -behin d -te m -fin i -mis sion -b att -fe el -he av -every thing -b ar -w ish -pre mi -i ma -exper ience -e ach -re port -swee t -tic s -spr ing -re spon -syste m -vic tor -l in -sa w -al ready -gh ter -f le -ã ĥ -br ing -albu m -- - -ell s -st an -to m -inter national -w ent -an ni -mat ch -pp er -st one -sm all -ra in -fashi on -are a -v an -ag ram -k o -thou ght -wor th -v an -m er -coffe e -it es -g n -arti st -c on -ar ch -c ir -se cre -gr ound -is o -h and -co m -bri dge -h s -x i -l ink -pu l -sp l -r ace -f li -ri ver -g as -di sco -d al -play er -f it -photo s -it y -o k -j or -tr a -ap ril -ad s -a di -sol u -beau ty -do or -me ss -up date -ali a -sch o -en ed -mom ent -sco t -sc ience -i or -ti es -ac ross -ous ly -sh es -does n -p age -wat er -m illion -cla ssi -l ic -ca st -form ation -micha el -ell o -s mo -in ts -vi sion -op ening -ld n -au str -tues day -win ner -po ssi -r ound -shir t -di t -b o -u es -il led -al ong -tri p -star ting -im pro -k an -per son -no t -re co -ne eds -c le -li e -re st -r ing -win ter -si mp -mo m -be er -fac e -tor s -us a -collec tion -ge or -se ssion -tr ying -la s -la ke -j en -orig in -stu dent -se cur -v in -pic s -ex pe -com p -gon na -e qu -b ad -le y -a u -memb ers -bre ak -w all -gi c -din ner -bu l -insp ir -r i -min d -ic a -win ning -tal king -t ren -s is -t en -wonder ful -s now -he ar -th om -no thing -gu i -st in -blo g -fe st -b un -le e -war ds -ch ance -dre ss -re n -pau l -p es -tech no -ru ssi -c ard -e ast -mar i -w ine -t i -la w -str ic -k i -ap e -au gu -pro fe -as h -cour se -ma il -ren tly -d un -m un -lo ve -is land -dri ve -s l -end ed -ma in -lo st -nat ure -âĿ¤ ï¸ı -ch ic -re por -p in -pr o -st ation -ce p -ta kes -compan y -go es -on d -ma ch -ra dio -d ad -ro ck -j a -p ay -champi on -e e -in de -tt a -ati c -t ab -beli eve -ener gy -z i -t at -wor d -on ce -re sul -y l -and re -an o -inst agram -clo se -t am -cu stom -w a -con om -sho ws -li fe -k in -ro b -t age -n ation -al most -list en -sa ve -re li -ac e -mar y -tre e -for get -j ack -wa iting -direc tor -h ill -bor n -te mp -f l -st e -on a -sing le -wedne sday -un ited -in o -@ _ -ne l -celebr ate -en ding -de al -j i -can ada -hu ge -tr ack -âĢ ¢ -f y -fan ta -an g -yor k -rele ase -p un -ep iso -wor ds -t our -p ack -i gh -classi c -perfor mance -ke t -after noon -recor d -win s -pro ble -âĿ ¤ -f our -b ed -ban k -d ance -s la -cal led -mi ght -a p -pa st -ðŁ ļ -diffe rent -it e -gi ft -ssi ve -chur ch -c us -pro gram -ho tel -ic e -ma d -secur ity -en ge -d c -en ough -st a -e ty -de ad -g un -he ar -m ir -hu man -gre ss -oun ds -pi ece -bre aking -gar den -fi ght -vie ws -f ish -star ted -run ning -gre en -ser i -s m -as k -d or -de ath -e conom -er i -ir d -s er -l unch -âģ ¦ -bo x -nat u -ba se -b an -f al -glo bal -wil d -wo w -out side -mo ve -le ad -an al -muse um -on g -ha w -pow er -than k -b ac -char ac -cam pa -dig ital -r o -op er -de v -w ol -p ati -f a -m ale -pap er -ill ing -c s -â ĥ -educ ation -ta ken -e ffe -m ou -s ad -" . -bas ed -staf f -inclu ding -li ving -a c -ch ina -mo b -stor m -lu ck -ph il -o o -y n -tra vel -k el -ti al -pr ice -boo k -import ant -bi o -p ool -ny c -f ab -lo ad -? ! -chall enge -cr y -ser ve -we ar -bu s -ta in -nu mber -ro r -k at -i z -th ough -ho sp -m m -fa ir -ut es -ho t -po p -fi ed -cam p -develop ment -li br -c ali -em s -âģ¦ @ -b ol -is ed -stand ing -mo del -it a -g le -bro wn -ima ge -ve red -for ce -o il -par tic -sh u -da ily -la w -se c -cla ss -cam p -holi day -cl in -k ers -pres ent -gam e -incre di -er ship -inter view -b ill -du e -and y -ab o -in nov -ke y -ac ade -p il -mo der -st ars -br and -f er -wee ks -con si -pr e -sa fe -wr it -di um -la unch -marke ting -ann ual -as si -cour t -la dy -c ted -and a -in side -chil d -opp or -sm ith -centr e -gu e -âģ © -f ren -st y -for t -ent ly -is n -ke ep -to ber -on y -bo y -al d -col la -de mo -le vel -com pet -ad o -b our -fanta stic -m ate -s u -sou th -oppor tun -vers ary -lat er -bu d -face book -la un -ster n -p it -! " -ma j -gr am -tb t -fi re -happ y -a ks -wh ole -actu ally -ill er -ell a -lo ts -al ex -an ge -lan ds -ðŁĺ Ń -en ter -r ou -episo de -p ed -in ten -sh ire -wh o -pl an -h o -ca ke -we st -mag az -fre sh -c c -n ar -ch ris -wr iting -w er -n om -l o -mi dd -dre am -o l -ti onal -de b -> > -be come -s i -gr and -all ing -hi stor -ri de -i red -saf e -que en -ci l -in tro -vi l -d ani -.. . -ar tic -st at -sh ort -or ing -sel fi -mis si -do c -b it -g all -b om -i re -se lec -d ition -ðŁĶ ¥ -fri end -be at -gh ting -ðŁĺ Ĭ -pe ace -ex hi -ant a -ab ility -il lu -j on -qu ality -tri bu -m es -play ers -fa ir -cu t -c ab -suc cess -b i -su s -pro mo -sch e -an ge -ic o -comm it -cat ch -ill a -kin d -feel ing -qu o -s ay -anni versary -spo t -mo ther -an e -p end -your self -op s -app le -min utes -p o -gr and -ri es -ha ha -care er -ed ition -de c -ric k -am i -concer t -iti ve -ge ous -d ly -t te -adv ent -i g -li ghts -ak er -sk y -âĥ £ -r ay -fini shed -w ay -s d -ac coun -ðŁĴ ķ -ck y -ch el -lit er -pain ting -lo s -st un -techno logy -n as -ma r -b il -afric a -ki e -ey es -gol f -plu s -ni a -it ec -serv ices -wed ding -kno wn -te le -.. ... -star ts -pa ren -w ants -ati onal -mon ths -win do -fav our -er t -magaz ine -ex clu -re ve -b c -origin al -e ss -n al -an ti -st ro -t ice -stu dy -à ¤ -v ac -nation al -fi ve -ra in -ve ment -u te -ver se -em er -ar my -possi ble -gue ss -val ley -ther n -cro w -m r -col or -on to -pic k -cle ar -dar k -t ac -wan ted -it ting -can cer -govern ment -di e -ri se -z ing -col d -f oun -stu dio -str ation -bro ther -a head -sh el -mic ro -ic ally -d au -sig ned -vi ol -a x -as se -i o -w re -spl ay -ch ick -augu st -pl at -ti ps -sp i -hu man -e asy -lo gi -mi ke -gro w -ag re -w w -sh ad -mo tiv -wi de -tur ns -om g -v ar -de fin -su g -j im -ðŁĶ ¥ -t d -campa ign -nam ed -re tweet -co p -t v -le av -k is -dou ble -s mar -issu e -vil la -in formation -li es -sto ck -n t -di stric -sh or -mi x -er o -se p -me x -see ing -li ve -re min -co de -g ur -s c -wil d -l un -h ood -spo t -fa ther -fore ver -up d -tra f -f ly -ne ed -gra du -tra in -ma ke -s ab -be y -si ze -lead er -tal ks -e u -lo g -fo x -gor geous -le ss -le ts -sur pri -my self -no te -li ves -f ru -lo ved -se ver -de m -j i -so c -h old -do gs -n i -â ŀ -lea ve -air port -ben ef -ex pl -shi ps -comple te -ach i -gre at -vin tage -j ack -ro c -woo d -pri v -off er -ey e -ver sion -te a -co ach -off ic -w ell -g en -s at -h h -you th -o x -? " -m t -mi x -g g -d le -natu ral -buil d -break fast -thin king -theat re -mo on -ber g -go als -geor ge -en e -exc ell -il ing -tun e -y ed -g ate -m it -net work -jo e -h ello -f b -tu be -we aring -ath le -stru c -har d -gla ss -g ers -thro w -g es -b t -indu stry -manag ement -ali st -go al -stre am -y el -a vi -ici ous -o thers -s ki -chri sti -bir d -e sc -m in -tr o -l t -j an -im p -ri ghts -sh a -or gan -cent ral -ar a -ro ll -favour ite -che ster -el se -p ay -car s -m ine -ste p -prac tice -maj or -h ang -ðŁĺ ĺ -n on -v ari -eng ine -vol un -di a -i led -arch itec -p ink -d s -th y -wa sh -web site -ba g -contro l -el li -f ra -an sw -d ence -y u -r on -ol a -g in -dr in -li c -cou ple -sp ar -g on -cre ate -c t -celebr ating -de ep -e at -te e -vo ice -dro p -vis it -at ors -sta dium -f t -w is -ro l -gra de -fam il -po ints -re pre -w as -traf fic -jap an -or g -hon or -tex as -man u -âĻ ¥ -safe ty -re r -b ag -em plo -rele ased -re gu -ak a -n av -ro le -sen ior -spec t -cro ss -lin es -be st -p ack -s in -ti e -mis sing -sun set -li ber -is ing -j ay -sk i -champion ship -ac tiv -la dies -play ed -y y -pu bl -al o -pri de -s r -pa ki -lu x -sur vi -ck ed -e ts -cho col -austr alia -par is -mi les -h at -ment al -al a -me an -mob ile -en a -in si -f ound -chi ef -t ag -incredi ble -re turn -à © -goo gle -fren ch -cre w -hal lo -ali an -j az -ch er -sil ver -nor th -eng lish -base ball -c af -lim ited -follow ing -app reci -ear th -k ir -ve mber -w ed -p tion -g ed -oc tober -fl ori -c r -en cy -ga ve -lor d -stu ff -ber ry -po st -sm ile -bro ad -st ate -gg er -me ans -ic y -gu n -y o -ma ster -bur g -han ds -ni e -/ / -uni on -brit ish -big gest -distric t -am ing -h il -o ce -per son -pas s -en vir -scho ols -arri ved -anc es -insp ired -ex pla -be n -libr ary -bo tt -am p -ste ph -cont act -b ang -m s -cali for -t old -batt le -b b -chic ago -âľ ¨ -str ate -sh i -de ce -- ) -ad d -la b -j ones -leg end -cast le -ing er -st ance -be l -ur a -re fu -lead ers -po t -se x -h ic -artic le -ki d -fr ance -x x -ex e -gui de -volun te -pr int -al i -ce o -twee ts -w x -scen e -vol u -ant i -h an -as soci -shar ing -ro se -mini ster -sh er -in ste -cle an -demo cr -po ster -sk in -p sy -pro per -cra zy -i am -o re -in i -any thing -po d -mo ving -cl ick -ex plo -com b -cra ft -f i -bloo d -is ra -publ ic -d ent -ol ym -eng land -a si -ch er -fac t -envir on -har ry -g one -me dic -enjo ying -just ice -j r -indi an -wi fe -s ound -t es -dra wing -p al -ide a -cr it -ju li -il er -war m -cl ar -thou ghts -def en -coun cil -intro duc -di ed -jan u -an i -s end -li er -m l -intere sting -tra de -win d -b ay -s ac -anc y -sour ce -b es -org ani -ar ly -lar ge -ff ici -ta g -u t -de sp -o es -tit le -sy m -pic tures -op en -wom en -sho wing -ri a -le ast -lead ership -cur rent -elec tr -val ent -list ening -c key -gener al -de ser -du ce -; ) -c ent -ðŁĺį ðŁĺį -sco tt -po or -selfi e -ev ents -i on -wr ong -de v -h ill -sep te -cul ture -l ine -sor ry -s ent -si ster -ce pt -k ri -no vember -ar i -announ ce -z ation -br an -g ent -d u -l en -per s -f m -mart in -o p -e mb -om e -midd le -suc cess -pe ter -janu ary -f lu -rac ing -d av -bi ke -ðŁı » -pe t -shoo t -profe ssi -feat uring -septe mber -now playing -sta ur -z a -on ic -qu ick -bas ke -spe aking -mil it -z er -chick en -b ell -s ad -co ast -lo ving -y ers -d j -pan el -ver age -s wit -ic ks -b ou -califor nia -s am -paren ts -er o -k illed -ph ys -jo bs -mi gr -an th -e mo -hallo ween -and er -c m -compet ition -e ag -s ket -sp ir -may be -exclu sive -app e -jour ney -scre en -for d -i o -h ate -u g -sou l -her o -soci ety -sy n -gu it -n h -d j -as es -im pre -ti me -sal es -d d -f ts -summ it -stun ning -om s -tur ned -cle an -sof t -be at -re staur -de red -en ces -ma gic -di o -sh ine -gu est -health y -exhi b -stor ies -po pu -n is -el a -bel ow -fun ny -resul ts -s ne -cur rently -ar d -down load -f light -m al -f ine -p ad -ch u -ent ed -h at -ðŁij ı -ste ve -j o -mar k -r at -b all -p c -p on -b by -o li -ar ts -as ure -bow l -att ack -mi c -de ar -ran ge -en ter -chocol ate -br illi -ac cess -, " -? ?? -ch ap -con st -t n -mat ter -blu e -gall ery -em p -work shop -lead ing -y ours -baske tball -w anna -th u -_ _ -mar ri -sle ep -bi a -ch e -ma d -imp act -o wn -si r -chan nel -euro pe -e sp -k itch -hosp ital -w ra -roy al -f s -ne u -qu ar -ne y -ac ks -ch ase -pp y -st al -at ely -ti m -dece mber -r are -per form -cre am -we ight -ch oo -ni ght -ha ven -fr anc -kh an -buil t -hel ping -tru st -ty pe -gol den -ta x -s now -s wi -di sa -questi ons -ve y -li ght -c n -cl oud -thom as -ag ed -sh ou -te ams -gr an -re ason -a a -you tube -v p -pi zz -manag er -bur y -cre dit -tre at -ma x -i k -ma in -g ing -de ad -pro bab -ye ah -ã Ĥ -br and -so li -pl ant -ta yl -gir l -ðŁĺ Ń -nam ent -au to -mess age -ko re -n ur -ter r -ag u -ma p -sen ting -lo ves -gi ves -g ab -z en -ro bert -con fir -w ars -o m -sta in -cam era -and er -won der -a b -ca p -s old -su it -wal king -contin ue -effe c -dau ghter -d anc -cha in -mul ti -ki d -y an -champi on -v o -ta ins -ho st -min i -mis sed -re sc -ly n -fin ish -del icious -s as -tayl or -i b -pro mis -produc ts -moun tain -flori da -regi ster -tre at -rec ent -fe male -boo th -mat t -ve hic -s op -mo tor -suppor ting -phi c -ex tre -dr ink -lan e -th ird -p s -con stru -ce re -far m -ðŁİ ī -tu red -ðŁij ī -c ats -a j -gi e -shoo ting -as ked -paki stan -am e -m b -g il -leg al -squ are -in vol -dra w -oo oo -!! !! -opportun ity -p y -e i -b ts -teach er -charac ter -john son -br on -ly wood -ch ine -c ing -c ine -d ge -gam ing -russi a -ci a -quo te -ric h -go v -flow ers -sp iri -st in -grow th -ðŁı ¼ -comm er -j uni -mu m -r an -s na -a ren -c b -ac tor -col or -si t -pa ir -ch i -bo w -acade my -hel d -r ang -me tal -y l -ac tive -probab ly -t ch -need ed -spe e -cho ice -ital y -ry an -ðŁĩ º -flow er -v it -m n -found ation -b ak -si ons -ne igh -f loo -he ard -re mo -fre sh -ing ing -re f -to wn -cl ou -je sus -spiri t -cou ldn -z es -ðŁĴ Ļ -willi ams -pro ce -moder n -pro cess -sho es -cre ated -tri c -issu es -ann e -att en -de but -h r -n it -sti g -a po -e ps -z u -ã Ģ -si x -car ds -lan gu -fam ous -tour nament -se l -e bay -y n -st on -k ick -announ ced -k am -vo c -brilli ant -hou se -che ese -war ri -mus ic -ho ckey -ðŁĺĤ ðŁĺĤ -sk ills -au tom -smar t -med ical -mon y -e x -gu ar -gi ve -pers onal -ven tion -al li -pre ss -flo or -m c -victor y -hi m -simp le -th or -ðŁĩº ðŁĩ -ta il -lu cky -ale x -qu ite -bo t -ssi ons -chall eng -c ann -amaz on -h ell -b ought -) : -ed y -secre t -produc tion -inde pend -de fe -ad ded -p r -p ag -be d -gre atest -with in -j ay -ðŁ ¥ -ire land -re ly -s d -te xt -dri ving -pro gram -spe ed -col um -str on -à © -fore st -â ĸ -mach ine -co in -sc ar -oun t -bi e -¡ ï¸ı -por tra -comm on -wre st -recei ved -kno w -inve st -pl ans -ac cor -ad op -ter y -re ali -p p -k al -art work -me an -go d -inste ad -an ci -motiv ation -as ing -inspir ation -up coming -polit ical -euro pe -m ers -heav y -ðŁij į -fe bru -scot land -ou gh -b t -bo ss -sche du -spe ak -n ick -u red -in o -e k -ri sk -tor y -pres ents -b on -ru g -st ates -exhib ition -il o -m ill -br ought -: -) -tou ri -com e -offici ally -champi ons -do ors -re p -po se -ex tra -k ings -soc cer -squ ad -app lic -at a -some times -t ari -excell ent -ðŁĺ ĺ -stra ight -car ol -ri p -âĢ į -gra phic -m ol -elec tion -febru ary -as ons -l i -di r -m t -n ick -u su -m rs -com ics -inst itu -cor por -v i -ðŁĻ ı -tu ral -di se -ac ci -we are -am ong -sho pping -t ill -wh at -cha ir -sp an -chine se -innov ation -jo y -k it -cent ury -ob ama -ph ili -f c -re ach -c iti -ul ous -n on -d ang -happ ening -bur n -p el -or ange -d v -k ick -cla im -ing ham -ph y -no v -pod cast -wh i -ni ghts -ear lier -be ar -la h -exc iting -or a -gi ven -s lo -memor ies -contin ues -produc t -gh o -c d -kno ws -ðŁİ ī -publi shed -discu ss -y ard -i phone -tri es -w all -fe b -are n -tru th -win ners -tu re -diti onal -milit ary -proble m -m and -do g -lo ss -c ric -can adi -ve ter -villa ge -" , -y r -un g -don ald -ag ing -bir ds -sci enti -le s -th is -regi on -tic al -itt en -il a -ðŁĺ İ -d ad -di am -abo ve -st ren -li t -p ir -la b -fo cus -bus y -d ur -app ly -s ma -auth or -ac i -exe cu -dom in -re la -jack son -at o -wash ington -ðŁĻ Į -k ill -popu lar -ce ment -ro ad -e ating -loc ation -v ent -ar re -n an -cu sto -advent ure -or din -spor t -ul t -lo ck -questi on -dri ver -land sc -on i -k ins -p d -jor dan -te red -k k -a f -chil d -s p -just in -en i -s elling -z o -wh it -bo ston -partic ip -sig ning -happ ened -he at -m am -dre ams -lo ws -gra ph -the day -head ing -br o -ble ssed -vi c -ve gas -h d -in ning -ro man -and ro -den ti -u se -c it -pro gress -writ er -bo b -ff s -gro wing -b ly -aw are -ex am -sp ent -be t -sc ore -bey ond -do cu -ad el -s f -cou ra -colla bor -in c -priv ate -bo at -* * -z one -p ha -b ill -to tal -plan ning -to wards -plac es -pre view -cre ative -dam n -ide as -se ems -po ten -say ing -di splay -s w -a qu -lou is -by e -li l -e mail -we stern -ger many -ell er -re s -f ant -ment ary -de als -ric hard -jer sey -stren g -ra d -pizz a -mon d -w are -l ac -g i -ar chi -c d -yel low -rec ently -re ach -à ¹ -kitch en -desig ned -tr y -g al -restaur ant -at ure -w w -j as -l ma -ðŁij Į -pa in -av o -min ute -sch ol -ther ap -tic ket -d ry -jap an -diti ons -ter ri -sel ves -happ en -t up -ma g -cop y -sh er -free dom -f ile -speci ally -tor onto -lo ad -g ary -re y -answ er -lo y -cau ght -pri ze -u ne -fic ation -ni ger -sy d -tou ch -feat ure -jaz z -recor ds -him self -di sh -ro ber -spot ted -ma ster -wa ve -fin als -bu ll -for um -al d -re comm -ch a -a e -d oo -inst ru -tru ly -l g -in k -bro thers -de st -j im -m it -clo sed -is on -tri ed -s anta -af fe -w an -hor se -g row -camp us -rel ation -nati ve -jour n -go v -o ct -k it -b ound -part ner -re ma -crow d -! ) -c alls -ra il -qu ali -solu tion -con test -con vers -sn ap -b ase -in iti -ta x -y e -ent repre -it or -constru ction -foo d -present ed -n ings -cli mate -k m -mo del -b j -blo ck -present ation -dre am -fi x -c alling -bus ine -con gress -under stand -we b -val ue -ï¸ı âĥ£ -mex ico -it ely -ki m -char ity -ref lec -bl an -fl ying -anal y -famil ies -b and -reci pe -celebr ation -ac cep -ar y -to t -g b -intere sted -cap tain -âĻ ¥ -ti p -ab sol -bra z -inve stig -o logy -de c -tru ck -ver ing -c lear -don t -go tta -ad vis -beg ins -ma ss -de scri -blo ck -k im -davi d -son gs -memor ial -feat ures -su stain -' . -gra b -jo se -v a -con serv -se ts -man chester -fi ghting -de gre -ag a -in d -sle ep -pos ition -ha ir -sig ns -pol icy -it o -al ert -st am -sp end -w y -absol ut -d m -anim al -my ster -success ful -proble ms -ro bo -k ay -gar den -p d -may or -d ale -t ol -off ers -vis iting -friend ly -tre es -offic er -accoun t -ke vin -ðŁij į -gi ant -contin u -con su -tr act -n fl -ðŁĺ Ĭ -h q -b ility -a ar -dis ney -te en -on ed -wh ite -tra iler -de dic -al one -absolut ely -dig ital -willi am -in ation -s wa -e e -enti re -ger man -ro ll -h its -co st -st ay -th a -ali ve -accor ding -co t -liter ally -her it -re ti -haha ha -exper i -li kes -g t -ste el -__ __ -ch air -christi an -to wer -diffe rence -m d -tre ss -mi d -prin ce -afric an -fe der -foo t -car ri -ser ved -r ice -sh all -feat ured -ck er -rec ru -po e -sen se -ni fic -com edy -cont ent -f at -po sted -con tribu -tim ate -li ver -mb le -inter net -ag e -europe an -cl ing -gla d -ff ic -sc o -ak es -el le -ter min -ton y -p ale -col our -seri ous -pat ri -movi es -b m -professi onal -ad o -al u -br inging -f alls -isra el -ter m -langu age -bro ok -man n -commun ic -can not -ac ti -p he -y an -entrepre ne -tur key -log ical -lon g -ar m -ur s -work ers -ing ly -gg s -ri c -tu al -recei ve -op ens -ge ar -soci al -fe et -c king -ad ver -fin an -fe els -sp la -h r -ea ster -bra in -ã ģ -fi g -le dge -ne arly -prote ct -ma ssive -e th -aw a -ðŁĺ ģ -y rs -aware ness -defin itely -k n -imag ine -k u -syste ms -ðŁij ı -f as -li k -provi de -am o -disco ver -inf lu -ma ker -g az -fit ness -stre et -er s -te d -w c -ys is -pos itive -hel ped -que st -andre w -bra d -b in -hang ing -l ing -bri ght -se ction -ma ss -ðŁĻ Į -follow ers -ho sting -tem por -fla g -a ve -let ter -k ur -re qui -of ten -cry p -su ff -âļ ½ -russi an -treat ment -al le -ha y -l an -keep ing -hol y -power ful -pre dic -fun d -e specially -windo w -je wel -il y -ðŁĴ ľ -gener ation -app a -seri ously -o d -ðŁĺĤðŁĺĤ ðŁĺĤ -cer ti -iri sh -ðŁij Į -mi ami -be th -v ity -se cu -che f -cri me -graph y -ma x -arti sts -re volu -gu ard -spee ch -u c -upd ates -fac es -st ant -chang ed -repor ts -low er -pe ar -n c -k il -loo ked -spe aker -s f -re spect -ok ay -oce an -s itting -architec ture -tra il -se at -i ra -le g -japan ese -d am -u lar -sw im -polit ics -finan cial -ol d -mou th -at temp -de stin -fi shing -atten tion -me m -chang es -deci ded -reli gi -g in -c av -z z -ad am -ma c -wr ite -beg in -sc ul -al ter -is s -ath on -imag es -m oo -jo ined -ðŁĺ ī -âŀ ¡ï¸ı -pas sed -mu sli -h ir -lar gest -cam er -com ic -gh ted -rug by -bur gh -gg ing -te sting -pre par -lau gh -al ed -impro ve -beli ev -adv ice -sha res -he art -tur ning -s b -t el -caf e -n es -dani el -pat ter -t z -se tt -par k -c and -st ick -happ ens -bri an -ne west -e pic -ad or -ki es -war ning -anim als -custo m -ar c -di an -gol d -cor e -t f -c ity -pan ts -re ality -con fi -in ju -fo x -gu il -k new -âĺ º -cor rec -itu de -d den -. # -re duc -pas s -f on -y a -ow ner -re turns -n c -e ast -ap ol -in sur -th o -si m -juni or -be e -ang el -att le -elec tric -hor ror -cra sh -e ye -pat h -sou thern -emplo ye -ge o -t an -ha z -r ally -ðŁı » -proper ty -was n -enjo yed -gre y -g as -bre w -nor thern -hol ding -g p -ta ke -ch art -ly n -dr ama -z o -pa id -throw back -cu p -discu ssion -down town -w ill -le w -b is -t ary -bre ad -up on -r ate -teach ers -it ation -anc ed -cy cle -choo se -d c -ir an -co w -da ve -ra ise -prin cess -fa ith -- > -indu stri -sp ain -guit ar -fac ts -m n -sp en -cour te -go tt -projec ts -au di -o sc -pe ter -s and -intere st -happ iness -ven ue -sol di -surpri se -poten tial -per io -custom er -i i -g ni -manu fac -e co -bro ken -sing er -vel s -wal es -hu s -in j -f our -tal ent -d ying -mat the -fil m -jo ining -s ell -j ar -lma o -sur ger -bb c -sour ces -au stin -ni k -char les -f am -prin ci -ange l -cas h -lo t -o red -pla ys -pl ate -don e -memor y -br ings -n ba -solu tions -teach ing -gr ace -cir cu -hel ps -foun der -mar y -expl ore -de cor -par ts -ch o -inte gr -ha u -is es -pu tting -in er -r it -v y -mic hel -blu es -every day -for ms -bi o -ye ar -p in -t ter -spr ing -) ) -po t -al ing -perform ing -sh an -plan et -mus ical -head s -it alian -stru gg -âĢį âĻ -w ings -pu mp -h h -tr ou -a id -pri me -ear th -pa int -mon t -am y -bb c -fab ulous -fru it -andro id -bour ne -cere mony -enti al -? ? -deb ate -on ing -dra ft -sol ar -t x -j am -cor n -!! !!! -bro o -mil k -po sed -o hi -mo vement -b ren -part ner -p g -et te -ar ies -sh out -n g -leav ing -t ells -sen s -ta ste -kel ly -wor l -gy m -ric h -e gy -pi d -ma s -â Ĥ -courte sy -fran k -incre ase -wr itten -pp ers -re l -ha i -s as -s ound -tt i -w ich -ri ver -.. ." -a g -fel low -ro me -sm all -gen cy -ic an -lux ury -pro of -me t -wild life -mom ents -ra ther -cor ner -com pe -canadi an -lik ely -therap y -li am -econom ic -indi e -rou te -fi ght -ho pe -se tting -ant ly -cro ss -fant asy -de e -sket ch -comp li -ym i -ru les -engine ering -fig ure -ro w -. , -f w -syd ney -w ou -t ation -dre w -us es -the re -sp read -struc ture -pat rick -appa rently -ro s -h ills -w we -ann y -com mission -di v -f ying -con sul -anal ysis -ex i -ten nis -vehic le -ðŁĺŃ ðŁĺŃ -as s -high ly -op ened -b ann -ðŁĴ Ļ -mp h -wi shing -v or -fi f -give away -r r -ra y -je ss -g at -ic ymi -x it -high est -yor k -pi e -invol ved -high er -ri e -mal ay -int elli -desp ite -che e -sar ah -be an -reco gni -ar sen -tal ented -pas sion -ic h -ab c -lead s -dise ase -v is -se c -pre senting -m illi -hol e -sho ts -de part -surger y -gov t -b in -du al -e vi -lon ger -ev ol -scre en -portra it -et c -lo se -ch at -p en -p i -om a -s ick -er c -compan ies -en try -plan e -gr y -ven e -liver pool -premi ere -sha red -a red -fil ms -ir a -holi days -cric ket -ici an -v ing -. ) -ul timate -di vision -con duc -se pt -for ces -mon t -s mart -disa pp -sun shine -in d -b less -ma de -col ors -fran k -ir on -bott le -s go -m ood -j ason -er ic -bir th -te en -respon se -tar get -state ment -fe ar -th el -al um -ar ab -bl in -direc tion -ste ps -er ial -wor ked -at l -ðŁĴ ķ -fel t -pol i -scen es -hom es -b ell -e at -ate ful -t in -l ace -fol ks -p se -an n -wis dom -fa v -but ter -s r -are as -sm oo -bi z -dg es -app o -mo re -the m -effe ct -windo ws -sun ny -cap ital -tot ally -c ities -gr ant -mb ers -s low -au tu -il ities -w ro -ri sing -st ics -viol ence -i gh -qu ot -h it -t c -herit age -bu ff -ne s -z ar -den tial -ex ac -ed ge -de ep -aren a -be came -benef its -mar ks -mb er -a z -am es -pre ci -dra gon -re g -d ings -do s -ðŁĴ ª -n el -s ity -me al -di st -leg end -pur chase -pic al -st ick -f at -du ba -profe ss -car to -pro f -coun tries -respon si -se qu -fa b -tribu te -hon ored -prac tic -pur ple -an ton -pa red -t ough -summ er -environ ment -s ons -ðŁĻ ı -m ps -gi es -her oes -t elling -hen ry -f en -know ledge -Ģ ï¸ı -f r -ne g -u re -ac king -hear ts -s oo -hol lywood -ju mp -sau ce -schedu le -tur n -yo ga -cre ating -c ket -cre ek -â Ń -custom ers -ma dri -gu l -asse mb -moun t -c ell -to p -st al -dav is -t wi -sig n -premi er -iti ons -he aring -un k -pati ents -app ear -heav en -al ty -doc tor -a e -plat form -je ff -ðŁĵ · -regi onal -bi d -box ing -ex ten -or ity -a w -w ise -il le -sever al -bi e -s itu -sy ria -âľ ħ -remin der -enter tain -li on -part ners -in n -ph ar -f au -pl s -expe cted -sug ar -deci sion -s b -ch ron -associ ation -leav es -vis ited -sh ap -ðŁĴ ĸ -fur ther -h ann -w i -run s -l er -fun ding -fil led -.. .... -tin y -han g -or g -co ol -se min -ðŁı Ĩ -spon s -nav y -sa int -dru g -d al -r oun -co vered -tra ditional -invest ment -de te -al ism -f low -n is -sun rise -fe at -f ted -we ird -je re -ve gan -medic ine -an o -ac cu -deli very -temp le -chang ing -wil son -phili pp -re fe -n d -is er -g ay -r and -ati ves -t ely -p and -intelli g -g are -am bas -de mon -commit tee -strate gy -refu ge -bud get -prote c -pi er -ex press -nom in -econom y -al low -ic on -gal ax -o h -indi vi -dem and -vir gin -lu ke -ali sts -man i -s mi -ju dge -ent y -mic hi -resul t -am ed -spe aks -' , -hou ston -sh in -b ing -fl y -ch em -au to -v as -ge t -ar m -thank s -d in -gan g -x x -si on -loc ated -p l -jo sh -in fo -jo ins -adver ti -ot d -el d -si e -re asons -v ent -ðŁĩºðŁĩ ¸ -â ł -convers ation -stu di -ðŁĶ¥ ðŁĶ¥ -go s -s ounds -un it -mu sc -ge l -ack ed -pac i -co s -de re -u u -a o -la m -inspir ing -ar ms -tw are -mat ters -ad dic -du de -ex t -cri sis -b ath -me et -sing h -expe ct -del hi -resc ue -wor st -au g -shi pping -ser ving -st o -dar k -ac es -histor ic -landsc ape -desig ner -b illion -gr ateful -wa ke -e ve -m iller -hou sing -dy nam -is co -be ha -sh op -pr ou -e as -a sia -e ding -k on -depart ment -aw ar -mar ine -in ci -photograph er -ta pe -lo go -r ings -d it --- -- -vin yl -w c -vo ting -se ven -ambas sad -dal las -t u -com ment -k ra -b les -w ag -u d -au dio -stri ke -offici al -o ts -me tho -to ols -ra di -al an -hun t -wat ched -a ke -fa ke -drin king -mer ry -m l -b day -ri o -ni ke -c ant -re pe -co stu -mur der -ak ers -ch ers -ou ts -beg inning -so s -ad es -n in -not es -wro te -sol o -c i -li ghting -ur ban -bre xit -att end -shir ts -pla yo -ac tress -pl ic -stand ard -quot es -par ade -anci ent - © -tur ing -re e -pri mary -fla sh -citi z -mat es -ste in -z i -clin ton -sk in -gen e -hu m -g ar -t le -y i -fo cu -de an -pl ants -cy ber -b u -om e -ho p -ad dress -ti x -gi fts -relation ship -sub scri -fe ed -exac tly -haw ks -ex o -stre ss -s n -arre sted -an e -sof tware -z ero -the me -mu mb -im migr -mi a -make up -ple asure -uni vers -har b -eng ine -ap er -r in -br a -institu te -le ather -al th -sing ing -co s -gh ty -me as -st ic -si de -insur ance -co t -pit ch -moun tains -cri min -su pre -valent ine -at er -wou ldn -sc ale -rel ated -re gar -star tup -pack ed -mi ke -week ly -p ts -coun t -ha r -gott en -min d -ber lin -con ditions -swit ch -cor n -sa ve -g li -emer gency -tun ed -sto ck -discu ssing -every body -s day -whe ther -wrest ling -ec es -gen der -ch en -ðŁij Ģ -madri d -mar athon -e gg -i er -th x -as king -kore a -wol f -ay a -g m -g au -at ory -v r -gra ss -k illing -b ble -ur o -un i -e th -sh ore -th en -re ale -bot tom -ex erc -k ar -or ies -ad ri -san ds -se x -. ' -volunte ers -per form -par liam -inclu de -deli ghted -execu tive -fu el -kis s -ã ħ -char ge -h u -ca kes -ve t -g lu -agre e -pr ices -n au -h l -g ru -ra j -streng th -b ic -sp ending -al es -av en -b last -: ( -yo f -nor mal -si x -qu ick -se a -d aw -mee ts -lo vers -upd ated -po tat -comple ted -coo k -opportun ities -p ure -organ ic -tem per -c am -avo id -par king -duba i -and o -di stri -to y -comple tely -don ald -tri al -bas s -b oun -back ground -v as -mar vel -lu m -ru s -t ool -com missi -throw back -fin ding -is lam -! ? -st op -e vil -or al -resi dents -i denti -o ak -ðŁİ ¶ -l il -span ish -chap ter -sto pped -direc t -ho sted -pic ked -lab our -lew is -defen se -à ® -health care -wh is -mat h -pe ak -ra ised -fi x -bu ll -th ir -chel sea -fol k -tr e -can di -pau l -ei ther -ad am -poe try -jewel ry -ðŁ ¦ -pr ay -Ø § -g c -o z -wi shes -fore ign -sun g -lear ned -en e -n ing -micha el -illu stration -legend ary -w av -b au -ðŁļ ¨ -cal end -stre ets -â Ĩ -mon ster -bu ck -g r -scho ol -ba th -wa ste -ne ck -ha wa -be ach -re plac -jec t -on er -fac tory -coun t -ðŁĵ ¸ -mor gan -der ing -se an -steph en -de p -no vel -vide os -ic al -press ure -arsen al -ex pre -ir s -tren ding -ss a -fla sh -re sear -thr ough -profess or -scul p -to s -gg ed -mm a -be e -a pe -hun ter -am i -he i -pla stic -bu cks -uni verse -le gen -niger ia -ple ased -ri s -thin ks -autu mn -i ds -d is -anth ony -ðŁı ½ -ak ed -gla sses -fin ance -z er -k as -con tract -nu mbers -sh aw -partner ship -t il -laun ched -s al -victor ia -theat er -usu al -nam es -perio d -eli za -i th -bar cel -ro cks -bag s -mat e -distri bu -j on -di ffic -ali zed -cur ren -sco red -b ha -du blin -ro se -in ted -soli d -beha vi -wal ker -simp ly -garden s -head ed -in i -ohi o -we ap -f o -gl en -e state -ran dom -th under -thr u -k ill -jac ket -it i -entertain ment -thanks giving -ent al -en coura -el o -a ther -tan k -high lights -f ting -ru le -model s -bor der -bj p -hus band -in done -ken ya -be ars -al o -n inten -pi x -str o -or ders -sal ad -ro ads -n or -l ation -sop hi -ðŁı ¼ -pi eces -b one -min s -inclu des -nu tr -phi l -s ent -fun dra -ga in -bor ough -n ad -mon day -activ ity -it ems -be coming -ken ne -de tro -car di -gue sts -u x -world wide -sever e -new s -thank ful -fic tion -ve ge -m all -si an -er al -inj ury -le e -men u -danc ing -scot ti -exam ple -( # -na i -studi os -ba i -ðŁĴ Ľ -j av -diam ond -vin ce -ric k -prote ction -lin col -cham ps -appro ach -d ar -m ile -clou ds -je ff -in fin -l ers -p les -pe ace -go p -âĻ ¡ -tech n -str a -a verage -ef fort -introduc ing -di versity -austr alian -am p -boo st -s ke -pati ent -appreci ate -ici ans -pu r -f ell -woo ds -illu str -ðŁ ĸ -ag ency -ac tions -brit ain -under way -se attle -el and -ag o -f ill -stre aming -pro test -challeng es -ky o -et sy -coo king -exper t -ru ss -rain bow -commer cial -sp in -be ats -c ry -val u -el i -th row -gr ams -le vels -michi gan -c ad -ador able -const itu -w s -pu b -mid night -th at -net fli -braz il -die go -regu lar -jo y -âĤ ¬ -li qu -ea stern -k ni -fl at -n p -bro wn -w er -se y -tt ers -ac ting -v anc -cy cling -program me -ra w -comple x -tat too -throwback thursday -se ssions -ro oms -si ght -speci es -bom b -lau gh -ke eps -mo on -offic ers -con ver -t r -ha sh -t ack -ri ous -ad ap -a j -reco gn -ex po -sug ge -confir med -rol ling -dre ssing -ic t -fri day -ph ones -ri dge -con cept -ro y -ke ys -ef for -c ate -k ne -ev en -l ay -commun ities -mo d -n az -every where -al ab -bit coin -ban ks -out door -feder al -sto res -h p -c al -m ely -sig nific -be ar -re public -clo ser -al lah -pic k -x d -pal ace -ch ill -b am -er ous -un a -al len -out standing -olym pic -supp ly -fi gu -v au -l p -char lie -un es -> >> -legen ds -ici al -co ast -benef it -mul ti -f its -far mers -am ount -si sters -har ve -hon ey -que en -b ers -pl ann -âŃ IJ -m u -barcel ona -al ber -stat us -re main -ex tra -c andy -vi ous -âľ Į -o v -warri ors --- > -ju mp -am ar -x mas -stu dies -i ors -k or -don ate -pre p -fi sh -im a -pain ted -ad mini -co splay -spor ts -dro ps -fi ghter -evi dence -ðŁĴ ª -la ke -ro b -cine ma -pro file -à ± -stan ds -leg acy -sh ape -ro of -ci vil -i ans -sy l -sh am -vo ted -re tail -ph illi -li sted -du ty -n b -th es -f are -au ction -ffici al -stor ms -d p -l oun -sh ops -al y -ani me -multi ple -ðŁĺį ðŁĺį -psy cho -je an -ap art -candi date -gg y -con f -jose ph -w ick -me at -fr ame -c l -for got -ph y -f ing -li ed -re p -se ed -f all -u fc -nu t -lin d -mo de -fiel ds -en ce -s ley -ðŁ¤ Ķ -ch ill -follow ed -announ ces -cor ru -tro phy -them selves -ac le -al du -k ong -l on -s v -bro ke -ander son -ta i -stor y -tempor ary -activ ities -k ati -ari z -cry stal -spo ke -extre mely -tra ding -ðŁĴ ļ -à ¼ -in ch -ed in -out fit -equ ip -ma di -form ed -be ef -po p -ti ger -this day -ti red -neigh b -re tro -is a -un t -t as -kan sas -de st -secon ds -ta y -hur ric -o u -galax y -dad dy -bro w -bur ger -en ced -de sk -ac cur -secre tary -el ite -k ab -ch in -touri sm -bud dy -ici de -dre ssed -u d -vac ation -che ers -com for -charac ters -j et -bu ying -l ins -n ap -reale state -li e -af c -i ii -f ame -n r -b at -ag ent -ma kers -âĢ ¼ -sec tor -op ti -le on -di et -pra yer -hi p -mi r -le x -br y -an a -pas sing -w en -reco very -ak i -po pul -res ort -mar ia -stu ck -read s -ti er -perfe c -netfli x -p oo -cham p -o c -re duce -we red -comm ents -cla im -acci dent -s ag -h ack -sal t -kin da -k iller -i os -z y -ex change -lec ture -eng er -ic king -t au -reve als -pri son -z om -gh an -u l -jour nal -i ot -tr in -jon a -govern or -cap e -quar ter -spec tive -impre ssive -bab ies -t x -m ill -o y -har ri -jo int -su e -collabor ation -tren d -revolu tion -re new -alum ni -ge tt -sh ell -sun day -ent u -ni c -donald trump -block chain -paci fic -expla ins -sp y -ad voc -par adi -to f -star ring -p av -fe ed -br ac -smo ke -ham p -y am -to kyo -si mon -d h -e ffici -phys ical -n j -ell i -s low -gradu ate -americ ans -ti fy -f red -ap ore -fin ds -rob in -we t -not ice -se mi -un ve -k om -pil ot -scre ening -da ily -ðŁĴ Ĺ -roy al -sp a -vo tes -n ag -wh ate -att ending -exper im -ad dition -k ate -sto l -m ali -foo t -chri st -ch an -de e -lic en -glo bal -mo ore -ti a -bri gh -myster y -y ay -âĿ¤ï¸ı âĿ¤ï¸ı -cre ati -me chan -clo ck -di c -âĢ Ķ -pp er -al ph -through out -al low -re sources -selec tion -ham il -bb q -aa aa -virgin ia -dis ney -en g -so red -drin ks -f ancy -consi der -end a -jan e -hand made -du l -on tari -i us -s ville -color ado -whate ver -whe el -promis e -ne ver -desig ns -ab ly -sex ual -vanc ou -at i -con vention -cul tural -sing apore -pro mo -load ed -gla sgo -pp l -n oo -ke e -ste m -men tion -i do -cru ise -ri ding -be comes -be y -âļ½ ï¸ı -tw in -dedic ated -na sh -de si -work out -jen ni -i v -grou ps -rela x -pho eni -li ft -mix ed -m ck -p c -mu st -me tro -ci es -y ar -a im -ang er -i e -rec y -marri ed -dro pped -eng ag -le st -ambassad or -op h -de s -w ick -assi stant -nat ur -fa il -l td -shor t -k ap -sha w -bi gger -rema ins -crit ical -sur vey -co verage -er son -win d -n b -bil ly -let es -ac ts -jim my -at lan -al and -t c -import ance -dam age -f g -stor age -tw t -bon d -bal ance -cr ying -pu ppy -vo te -pu sh -ðŁĴ ľ -pol y -me l -lon don -terr ori -effec tive -corpor ate -atl anta -jac o -nas a -gre ek -sen ate -i sh -ev a -intellig ence -effor ts -al co -k un -h all -di ag -claim s -fir st -h b -ba e -v ul -pu ll - ° -se par -spe ed -vic ti -on thisday -audi ence -r ates -te ach -fil ming -bu sh -son g -y um -br un -ra ine -aw a -par ks -ð Ŀ -ra bb -ra ch -ra id -reach ed -ra il -mo ves -selec ted -fr i -ra ising -om y -st ones -su k -franc isco -cas es -cap it -con fu -w tf -po ke -equip ment -gre g -ess ential -off ering -ne x -pi es -be c -cre ation -chair man -cro wn -w al -john ny -shi ft -ne ck -ban g -bir d -ðŁĺ ı -du ck -re serve -de pu -ma sters -over all -no tic -ju ice -sne ak -che er -cla sses -eag les -n ca -car pet -ci vil -coach es -har ris -u ps -b alls -dec or -mar tin -ro s -v ice -announ cement -who se -ti gers -ste red -c ts -dr am -ste el -youn g -inst all -supp o -recor ding -de ck -se ats -l der -ang le -bo t -sty les -elec tions -for tun -n ab -but ter -ari an -ka sh -in ner -ou red -be ast -we i -ic onic -exper ts -ne cess -b eng -jam es -li a -gre ece -ðŁĵ · -ðŁĺ ģ -good bye -m itch -tw ice -mumb ai -ste am -ru sh -med al -ne tt -fashi on -t ar -r s -sav ing -ric ul -l m -sleep ing -brook lyn -mis s -sen ding -disco vered -sp here -of theday -k icks -missi ons -w right -er n -ght ly -i ous -mel bourne -star tu -mo ved -car ry -d ak -ag ues -bel gi -e ma -way ne -do t -er ie -pe l -it unes -matthe w -no body -est ab -cal m -win ds -lu c -prep are -tren ds -exerc ise -adv ant -ðŁĴ ¯ -athle tics -app s -c tions -adv ance -laun ches -litt le -real donaldtrump -eliza beth -carol ina -hu b -hi dden -n w -us er -pol l -great er -mo st -f ed -p at -life style -s ati -sco res -marri age -l r -aven ue -de serve -ri f -ðŁ Ĺ -wat ch -champion ships -gr ay -en ni -cot ton -g om -whe re -pack age -su m -ab solu -new ly -foo ds -ty ler -assemb ly -musli m -ban k -re memb -op tions -produc er -land o -fun ds -u pper -shad ow -pro gre -co p -ing e -leg s -detro it -hill ary -jo se -gi ants -sou p -sustain able -t us -clo thes -roc king -n z -min ne -mat eri -bru ce -ear t -ca sting -independ ent -thou sands -ta h -de cl -veter ans -li ons -wra p -âĢ ¦ -de ss -bl ing -st ine -e ggs -o on -clo sing -z ay -at t -bac on -fa il -ariz ona -de pre -gho st -new sp -w ers -vi p -li ked -id ent -volunte er -ad ult -pu pp -cir cle -mat erial -degre e -gro wn -boo m -calend ar -su r -vie wing -ath letes -ch and -re ll -asi an -en tr -vol ley -victi ms -bo dy -m ama -trans fer -ge ek -in dic -sav ed -ma i -g ent -it s -loun ge -k ol -the ory -situ ation -is lands -ar th -z oo -floo d -vi ously -show ed -parliam ent -ch ev -el ine -at trac -ab ad -ta il -h rs -lu s -por tu -gor y -provi des -to ys -de ath -in fe -an ce -g le -li am -lo ver -hu d -dv d -reve aled -g w -re ment -ca the -l ying -ra dio -der by -stor s -che mi -hosp it -âľ ¨ -' : -ilo ve -le mon -re public -s ni -ne ss -do or -re action -pre gn -fla v -schol ar -spo tify -is ation -vis ual -aw are -spon sored -jo ke -less ons -leg is -lo ck -si mil -ðŁĺ ĭ -kin d -la y -ma h -ho ping -vancou ver -as er -clean ing -gal a -thre at -la p -ach e -ro mance -ex pen -re post -z am -e pi -mir ror -o ak -ad ul -bat man -s lu -l c -vie wed -re views -d ates -indone sia -acti vi -off en -lea f -i si -ag ricul -costu me -s ites -spir itu -appear ance -ir y -st air -applic ation -spec tac -ic ity -ski es -hand le -pun k -paradi se -t n -de al -provi ding -do c -recei ving -bre w -micro soft -à ¶ -fer r -me tro -th ail -y um -car ter -à ¡ -gent le -bre aks -coo per -show case -cu tting -egy pt -bab y -semin ar -gl ori -ss on -fa ve -re hear -lo tte -la dy -al as -pre p -deli vered -nu clear -ir o -engag ement -at ta -con ven -z an -gl ory -hol ds -busine sses -str ange -sch e -it self -gra d -mar kets -f alling -st ats -ge on -bu dd -li s -she et -thi si -co lo -deser t -regi stration -ig n -expla in -inter ior -la ws -writ ers -spr ings -k r -fri ed -blo om -inf ra -a o -cre d -pa st -line up -bo o -bre a -boo ts -celebr ity -att acks -bro ok -ev es -ex cu -cher ry -oo p -fas cin -boy friend -se as -n ine -effec ts -po wered -k ha -ðŁĺ Ģ -sh out -con dition -i j -her o -enter pri -win ter -applic ations -sho e -g el -batt le -pro grams -w art -ðŁĴ ¥ -ra p -ho l -dang erous -di a -coun ter -ric s -i or -k night -co at -emo tional -at ures -d as -whe el -fore cast -tran sport -glasgo w -king dom -prepar ing -im medi -ff in -awar ded -prin ting -ro man -fight ers -any more -bel t -p ine -win e -x i -employe es -logi es -al led -de mo -birth day -ange les -lo g -dri vers -neck lace -k ath -s it -athle te -ef s -s burg -pur pose -resi stance -rele ases -t is -vari ous -deli ver -ch al -s anc -opp o -cra w -neu ro -dr a -suppor ters -sna p -diffic ult -swe ar -logi st -pa th -attemp t -à ¥ -swim ming -ste ve -hur t -inclu ded -b ap -wa re -ðŁĴ ĭ -end ers -ja ke -le eds -cli mb -l b -im ple -li sa -clo thing -ðŁĺ İ -d t -com pla -sw ing -stra w -v als -k le -us ers -stor m -cu ts -ontari o -p an -hand some -i ow -ar gu -chec king -scotti sh -Ķ ï¸ı -si er -em ma -po d -patter n -de sh -en h -ed ward -t ing -k h -hal f -lincol n -mo ther -al leg -r c -volley ball -d n -g ay -all y -le ton -gro ve -l oud -adv anced -re spec -cli ent -supre me -thail and -ho w -gi g -to i -do t -dol lar -ðŁij ĩ -p it -r b -h n -produc ed -gg ers -âĨ Ĵ -ml b -can vas -fin eart -us d -in the -p son -actu al -s l -t b -ip ad -en sure -u mb -w d -sk a -mar s -k end -f eli -th ing -count down -absolu te -r out -dra l -p y -inju red -min t -hun ting -mm er -s age -li gh -ac ity -ex pan -mur ray -ar o -sec ure -four th -eag le -reli ef -st akes -industri al -clar k -under standing -see m -pl enty -sil ver -cla u -thre at -sa il -pro duce -ab str -is is -b r -eng ers -wor ry -bie ber -s j -just in -reali ze -ky le -esp n -fil ter -s ch -ty pes -game dev -d ing -twit ter -soldi ers -p om -car bon -y ards -child hood -ri ed -ke l -ele ph -t ons -key note -qui et -wi re -po sting -is sa -repre senting -bac ks -alex ander -celebr ates -ta ining -| | -ch or -esc ape -pe ek -ti ves -fiel d -ssi e -im pac -spons or -r c -we dd -cann ab -si des -trac ks -com par -con trac -techn ical -bi ble -expl oring -sh are -tra v -n ate -ill o -sc ru -m ingham -gun s -of the -sh ame -se es -ca tho -ac cess -ce l -repor ted - » -mari o -p ad -hope fully -ou se -y on -disapp o -ol o -p itt -pa c -ga p -cru sh -s g -k le -ge m -emp ire -dir ty -a is -avi ation -ze aland -fac ing -high way -d anny -spi der -ot ta -ðŁĺ Ħ -w y -col ours -in fl -co sts -olym pics -au s -h m -ho ward -pas ses -lau ren -mu sh -op in -r ho -disc ount -oper ation -em ily -mm m -cham ber -d il -to yo -shi p -sam u -pic tured -un ic -po l -keep er -carto on -st en -ig nor -n ations -n l -ta sting -deta il -offici als -mo tor -franc is -ed itor -ðŁij ĩ -pe ts -rang ers -t g -r n -w ri -nic hol -i se -spo ts -ani e -chec k -tri ple -ku mar -spe akers -ic ing -pre pared -ab use -friend ship -mon th -swi m -air e -sc ent -hamil ton -indi an -j es -yum my -te ars -da wn -i zed -worl ds -ðŁ ķ -b illi -st one -n hs -ba sic -p or -st le -ir on -ol der -cle vel -e ing -ðŁĺįðŁĺį ðŁĺį -prin ts -fir m -air craft -fin est -devel op -aar on -t z -gra ham -own ers -fo li -less on -qu es -bab e -cra ft -ph en -ju n -bir mingham -v ine -ll er -i an -fineart america -evol u -st ab -im per -war d -com ic -wi z -inv ited -du ke -mat ch -por ts -ro ger -diag no -ke pt -te st -vis u -r hy -so c -to x -b aker -sur face -co vers -man s -b its -x box -ff le -n an -gar d -h art -wat ers -v illa -re tro -light ning -catho lic -democr acy -neigh bor -pen n -cr an -jona than -la ura -vi bes -su b -coach ing -clear ly -uk raine -bra ve -commit ment -t all -mar t -ra p -mo di -sco tt -bro s -show er -ðŁı ¾ -âĺº ï¸ı -cou sin -appro ach -br e -com pos -hil ari -phil ly -g ad -quick ly -ri an -t m -vir tual -hou ses -k t -phoeni x -w ire -ff y -b unch -anc ing -tal e -snap chat -star ter -h t -k icking -ap art -th y -) ! -blo gger -it z -com fort -ang els -w ash -" : -ar gent -re quest -hon est -mi ghty -bo bby -k g -ro l -thou se -ex po -h c -tab les -mag ical -po sts -de m -n w -or lando -ab er -* ** -ðŁĺ ľ -environ mental -trans formation -mi le -w ic -hir ing -ma ine -bo ar -r ying -ti s -nit ure -twee ted -anton io -opin ion -fin ale -di y -f is -th in -trou ble -le go -fi les -qu art -sp a -curren cy -cli mate -fan art -rail way -sp ace -ban ds -dani el -mo tion -l eng -hol der -oc cu -mar ie -cathe dral -bu zz -bi es -nas car -bm w -bat tery -char lotte -doc tor -zz le -se ven -in san -d dy -st en -lab or -thr illed -se ren -docu mentary -wav es -cer tain -can did -allow ed -ninten do -star wars -ta p -home made -d les -ther ing -bre e -emp ty -pi ano -pos iti -coun try -por k -pu ts -per ry -m atic -spot light -ti st -or ities -we alth -c p -bar bar -commit ted -as sau -pro fit -e ight -hu l -fini shing -run ner -ss o -insp ec -char ged -christ op -lo sing -co al -ho o -ele v -de le -mo ham -don ation -c able -clin ic -j in -manag ed -ter ing -â ¬ -ur ban -depu ty -bb er -bur n -acade mic -o tt -sta ke -it er -sto wn -ack er -advent ures -ad ams -gre g -pro m -vo l -ac qu -con gre -pa int -citiz ens -c all -af ford -v c -as ks -the tic -independ ence -â Ľ -h itting -bl on -fu ture -â ı -in no -gen e -bo ards -di stance -se t -re mem -th al -pre vent -l ang -ob jec -su sp -mat t -in duc -bor o -pi one -re di -vir tu -prin ted -sco pe -shar k -suc ce -a stron -il legal -j ag -c ting -ine e -at o -rob in -nutr ition -b f -du tch -b n -fur niture -for gotten -at ar -ru p -hy per -bran ch -communic ation -degre es -on ia -un cle -promo te -or che -wi i -j s -but ton -ma jor -c bs -bri stol -premi um -ordin ary -e dit -m g -we ed -st even -: ' -gu s -te s -cap tured -dru gs -do w -wr ites -bi shop -whe els -ali zation -disco very -w r -rach el -ne il -hy dr -cu test -entreprene ur -kore an -ore gon -ul ty -perfec tly -suppor ted -histor ical -t wins -ell y -we l -de vil -in come -scienti sts -de leg -h en -on i -ic ed -gi o -cur ry -reve al -e g -buff alo -n ol -op era -camer on -haha haha -j ab -gradu ation -cra ig -r al -i f -organi zation -le ge -g ang -su d -edin burgh -l ack -fli es -g ate -thr ones -q b -the real -e leg -pp in -c les -jam ie -tn am -cryp to -ou l -p ages -a se -roo ts -stu pid -a did -boo t -prote in -s ap -si um -su s -end or -fun ction -don t -en na -ch y -squ e -wor ker -m tv -e a -k an -ðŁĴ ļ -mu s -professi on -t to -oper ations -al lo -c tor -inv ite -sc and -ou th -z im -lin ks -cli ents -sam sung -discu sses -n ell -ul tra -some where -ste wart -ine t -de z -b out -fac tor -ti an -tr ans -jere my -d b -ðŁĩ ¬ -or n -develop ing -spo l -coo per -ma u -rememb ering -tre k -famil y -sen iors -fo ster -att ended -w ing -trans form -ele mentary -hor iz -li sting -malay sia -it ch -warri or -philipp ines -russ ell -m end -initi ative -cre ep -to ps -br iti -a ur -shar p -adverti sing -ug ly -achi ev -materi als -bu g -dev ice -bon us -fac ility -col e -nh l -y as -plann ed -pol e -excell ence -tr ick -con fl -r p -achi eve -lo an -swa g -jess ica -ho we -p our -sc u -z oo -r ated -dre sses -re bel -mex ican -co ordin -me ss -atlan tic -t l -osc ar -wal ks -phar mac -investig ation -... # -cc i -eas ily -monday motivation -y ment -au ti -for ced -ar med -colle agues -pap ers -pro per -sha ke -bu c -le an -exhi bit -e vement -co tt -bi z -sp er -k ent -sw an -/ @ -girl friend -haw k -âĺ Ģï¸ı -mon o -ðŁĴ Ľ -stat ue -ðŁĺ ³ -ra s -te eth -preci ous -t ile -p am -swi ft -v ali -no se -dr unk -experi ences -come back -gen ius -wor se -sh ef -ra d -ed it -hon our -au spol -lar ry -h ire -gor don -achi evement -.... .... -su icide -alter native -su p -sur roun -sha ke -ke ith -pe pper -tur k -crimin al -be ck -su m -w alls -cn n -an tic -of fe -col li -win es -high light -hawa ii -emb ar -l fc -ðŁĩ ® -m v -> > -at mo -wor d -car l -shout out -bre wing -ì Ŀ -do f -s ic -hot test -col on -hh h -shu t -low ing -volu me -apart ment -agre ement -de stro -we e -religi ous -iow a -ro d -land ing -re present -ðŁĵ· : -la s -usu ally -h l -c ac -sal v -al ong -laugh ing -be ans -remin ds -pha se -some body -ma sk -ran ked -dest roy -sc i -â̼ ï¸ı -gab ri -le o -ro a -fa iled -si l -refuge es -re vi -r ing -ber ries -coo kies -y y -conserv ation -sh ab -human s -de termin -a in -ni all -as su -mb a -fro m -extre me -vic es -commer ce -ght ful -or dered -suppor ts -re cap -v or -dro pping -correc t -pay ing -mean ing -n j -qui z -" # -busine ss -ðŁĩ® ðŁĩ -indi gen -du st -box es -bl ind -x xx -zz y -ðŁĩ¬ ðŁĩ -ss els -s ant -dd le -hilari ous -desig n -wonder ing -vehic les -k re -ju d -rece ption -par ker -Ã Ń -pri vi -hy dro -sof tball -pol lu -lo cked -ba h -e ar -scri pt -di vi -br ace -geor ge -the ast -bel o -j al -tion ary -dent al -roc ket -pur ch -sh ak -manufac turing -e z -it is -con cep -tb all -ch s -direc ted -pra yers -oo k -phil os -vari ety -che ss -ser ver -g and -bal ti -ðŁĵ ¸ -sel y -cru z -spectac ular -bur ning -re present -i z -t one -mer ce -h ell -bed room -estab li -bo l -com mon -ãĥ » -ab or -kit ty -hei ghts -re pair -willi am -qu ake -alab ama -popul ation -re v -re tt -i sts -n ite -le m -a ha -clevel and -r m -po ver -ob se -mon tre -man ia - ® -con ne -car ni -sh ah -f y -u a -sc or -strugg le -bo b -' ' -appro pri -deci de -ff ed -ca ster -s ort -hun gry -dra g -ا Ù -gr ounds -d w -sli ghtly -car din -dead line -bron ze -web in -bar ry -sil ence -e uro -op tion -ear n -ðŁĴ ĸ -howe ver -na ren -na ils -bath room -v ine -ph d -min ing -gar age -( ) -shou lder -defe at -di r -o v -liber ty -ple as -x on -com pre -a v -j in -ab les -sil ent -fam ili -vis its -di pl -ha bit -milli ons -regar ding -innov ative -sen ator -r ts -v on -k l -wh il -requi red -âĿ Ħ -lu v -presi dential -po cket -hun dre -sho wn -fro zen -to ward -fa st -confi dence -r ough -indivi dual -qu et -ðŁı ½ -dom e -fi fa -engine er -z en -re mix -ðŁĺ ĥ -pl ant -min or -robin son -as y -pul led -cer tain -potat o -( : -pre s -oc ca -w it -it em -si e -d ating -thom pson -own ed -an u -vi e -te dly -good night -ex cept -ðŁĮ Ł -ira q -ki e -ren ces -li p -simil ar -sau di -vi g -arth ur -pic ks -mil an -hon da -ma xi -o g -ste st -ar ch -analy tics -ba sti -pear l -ter ry -hor se -ast ro -ac ce -laun ching -inter national -s no -ta sty -den ver -ir l -pe te -tor n -advant age -var sity -" " -sol e -g c -lan g -demon str -ol ds -un ity -ne ts -insp ire -cre te -nash ville -nel son -e ter -wal k -hy un -m ack -tre as -see king -ra ge -bru sh -ab and -whil st -co con -h ong -shel ter -i p -possi bly -so o -it ed -â Ħ -rac es -war ming -qu in -tele vision -mat ches -ra pi -ment al -pal m -jenni fer -rol ls -indi ana -b ars -cat ching -resc u -candid ates -fa re -âł Ģ -se o -vie tnam -alph a -michel le -visi ble -re gre -wn ed -app le -li p -f fe -li z -york shire -ha il -se asons -be gan -m d -k c -la p -fascin ating -hel p -ur y -u ms -nu ts -se m -along side -bri dge -ori al -o ve -world cup -briti sh -comfor table -i ve -hot els -fair s -hor ri -so x -d ining -stre am -bar ri -ss y -w im -ter ms -v u -pe re -l ens -wal ked -r or -l ars -shi eld -dou bt -pro to -cro ssing -me ant -medi um -ad ding -e b -che ap -fun c -pap er -bran ds -ry an -feed back -col lins -un known -tro pical -sand wich -fal len -for mu -selec t -lo ads -answ ers -or i -mag a -d or -du o -ali e -dru m -ur i -de er -sou l -sh ut -âĺ º -sto len -don ated -bu zz -patri ots -ha l -na sty -nomin ated -mon te -ki a -th ri -ing u -te sts -pe tro -ðŁij ij -ho sts -ne st -to pic -pat ch -m my -hu gh -ab ilities -ma the -s miles -g b -ag enda -insi ghts -chi p -ph an -fail ure -dg ers -ha i -signific ant -sho ck -ru ral -gl am -figu res -pot us -o ta -mini stry -appe ars -fe ar -r h -americ an -h att -son y -fi res -e di -n ou -e qui -wh en -univers al -mad ness -i x -sculp ture -b ach -t to -swe den -et a -en to -develop ed -month ly -ma ps -ra h -le d -del ta -sa ints -is lam -ben ch -fif th -v ard -so cks -wel coming -j e -tur ner -v b -ad i -nor way -ad y -hurric ane -por sche -tra dition -ex am -newsp aper -lu ci -a ver -ide al -d na -madi son -ðŁ § -wit ness -ac ou -insi ght -si mon -robo t -sna ke -n bc -ac o -ro ss -sh ment -religi on -ch ann -in su -camp bell -inst alled -we ather -hor ses -ol i -rober t -k az -ðŁı Ģ -veter an -th read -quar ter -ea sier -cap ture -hi pho -law rence -roman tic -pas sion -cl ay -ox ford -th ai -stu dying -fi a -elec ted -most ly -c b -tu mb -âĢįâĻ Ĥ -x l -sh an -fa ster -ev ans -sli de -sh ri -see k -mi es -chemi stry -pump kin -tu m -, , -ro om -fi red -li ps -pres ence -af f -brew ery -arri ve -sw ag -photo graph -pen gu -chi ps -at tor -val ues -accur ate -con temporary -princi pal -cannab is -ari o -any where -gi a -democr ats -buil dings -li ved -ap s -neg ative -m are -bal lo -li on -diam on -loo k -re form -tom my -il la -tre ats -hundre ds -port land -wor thy -ex cep -ar ia -ido l -be er -cd n -y u -aw k -ðŁĩ ¨ -c ells -à ³ -ident ity -dra wn -de vil -f inger -th am -ðŁij Ĭ -ear ned -fin tech -dol ph -twee ting -evolu tion -ðŁĵ į -est im -m vp -n one -ðŁĩºðŁĩ ¸ -toyo ta -au x -mar in -b old -l bs -ste ak -mur phy -it able -lou is -sol ve -pi a -sk ir -ill ino -webin ar -ban ana -lo v -th on -vo ters -afford able -defe ated -lm fa -air lines -super b -any way -deb t -bo red -ver si -me tal -responsi ble -m k -s se -f ay -cau sed -f p -recomm end -pla za -spor ting -alli ance -au stri -n n -t ours -surpri sed -arti f -th under -sur ve -wor e -bri ef -necess ary -z ie -ash ley -dra ke -r t -kni fe -im mun -char ges -a the -bri de -rep ly -g av -broad cast -pu er -brace let -cap acity -harve st -id k -perfor man -d ding -il ers -par a -jam a -pro vince -ch in -id ers -har i -te aser -ch en -re stor -r at -fl at -col om -ðŁĴ ŀ -ðŁĩ¨ ðŁĩ -smoo th -r t -p itch -stay ing -isra eli -t cot -per spective -do ck -open er -lo vel -x o -class room -l ington -go al -kenne dy -sh am -sp aces -mitch ell -home coming -uk i -claim ed -recru it -ing o -mu fc -mon it -g roo -resi dent -per cent -per man -otta wa -int ment -an xi -stand ards -wor ship -sche me -f x -pot ter -bi an -athle tic -af gh -s se -sat ell -par ties -âĿ¤ âĿ¤ -infra structure -rela x -mo du -wor n -smo king -y ach -practic es -wc w -am b -dome stic -tay lor -k entu -provi ded -mo di -ve g -" ... -ob serv -ðŁĺ © -be ard -m our -an gry -ðŁĺ ± -startu ps -woo den -di ve -na il -anti que -ro ses -torn ado -m at -^ ^ -su spect -far m -de vices -me ga -tu l -scholar ship -ge e -disa ster -arri val -po in -mar c -kati e -bb ed -fal se -deser ves -ric hard -ju ana -fre y -tion ed -hy bri -r w -sar ah -ach i -c ure -o le -mor ris -ch ic -broad way -la bel -pa k -pover ty -gol f -e red -f u -er ies -be es -alo gue -st el -wire less -je wish -ti de -blo cked -life time -b har -sp lit -am ster -th i -jo shu -br unch -ha ps -s for -oo ps -ka poor -hi king -suppo sed -ro of -re as -tra in -ti ght -tru mp -bas ically -r r -ea red -see ds -entr ance -c p -wi e -son ic -vic tim -he re -e h -ear rings -sal mon -arc tic -an ne -dou gla -corru ption -hann ah -ha sn -vo ices -con ce -att a -fle et -clin ical -democr atic -ton y -st ood -le f -twit ch -a il -honest ly -incre ased -dro me -don na -accep ted -visit ors -ap ar -ad or -p ar -jer ry -ra i -brand on -ab u -!! !!!! -me me -in gh -glori ous -b hu -pu mp -j ol -li ke -fi sher -ma z -ag an -destin ation -play list -le tters -gen u -br ace -celebr ated -bann er -r he -dra gon -ðŁĺ ħ -sig nature -gre y -âľ Ķï¸ı -al ice -be red -ph er -ber n -ca th -ga thering -sc oring -influ ence -sm iling -de pt -lo cal -a x -ac u -reti rement -hon or -her self -chem ical -asse ss -y all -fre qu -appreci ation -ac a -cho ir -cu z -so il -c il -repor ting -u h -enterpri se -gr at -jaco b -ru m -fe e -j ak -sp in -bi kes -phi a -ste re -p is -bloo d -t att -ra ft -war ren -sh eri -back stage -mar sh -hash tag -ther ine -re in -game day -guar an -reci pes -min ds -stron ger -issu ed -bic y -n ak -ment ed -sc ary -u x -pre vious -tt le -th ats -ac tors -u ma -tin a -bun ny -promo tion -u ss -oli ver -montre al -what s -appreci ated -la kes -excu se -kno wing -pri zes -musc le -shad es -sco t -ing redi -electr onic -ju an -comb at -s ri -e h -turk ish -l om -stri kes -pri son -re e -po pe -vi d -ol dest -dol l -sw iss -certi fied -cli p -re turning -lat or -le igh -tt es -wat son -heal ing -el im -per haps -ha ss -k au -d der -mou se -new castle -indigen ous -wel comes -co le -tau ght -no ise -appe ar -jo e -can on -wedne sday -u tah -c tive -dri ven -i v -c ell -stri p -ac c -focu sed -ar rest -sto cks -wo o -â Ĺ -notic ed -shad o -di spla -ter ror -bor ne -secon d -que ens -wo ke -ja il -no tt -cam bridge -har t -se af -fa x -ac cept -âĺ ħ -goo ds -k at -t win -h s -thou sand -s ins -su ite -amp ton -ar n -rele v -ric har -hoo ps -n bc -class ic -p ab -soldi er -de plo -le ans -install ation -cla sh -le ban -ee e -ti re -belo ved -fu sion -travel ing -ne i -coo kie -glo be -phys ics -s q -co l -wol ves -d l -ex it -" - -foo tball -le af -ster ling -hi de -minne so -fresh man -natu re -indi e -supp lies -bri s -iri sh -ink tober -doo dle -ic op -mess ages -adul ts -recor ded -fix ed -ar do -offe red -under ground -dr one -p ine -ma inten -and re -ham mer -s x -r ound -hi ke -bra d -ro me -fu ll -on ey -ro ws -colum bia -archi ves -appro ved -bat ch -illino is -recogn ition -shou ldn -fo g -nca a -ke vin -human ity -al though -pow ers -p ou -s ar -pe st -alco hol -con sci -phil adel -en o -t m -ok la -cate gory -particip ate -accu sed -bri ef -po em -clu bs -consul t -ja b -big data -amster dam -ac ing -certi fic -n u -d at -impro ved -and y -campa ig -pale stin -p ace -mo bi -feel ings -wol f -bra in -pro pos -inter active -prin ce -inde x -c is -cha e -peace ful -co vering -ac o -cour ses -mon key -re place -b l -bloo dy -tal es -brigh ton -neighbor hood -g ates -spiritu al -af raid -bre ast -b ones -ðŁij ī -vide o -w au -tou ch -inju ries -car l -ri x -une x -âĢ ¢ -fre d -consi dered -thu si -an ch -on y -u sa -graph ics -ac re -ðŁĺ © -com memor -com mod -go ti -guar dian -star bucks -pre vention -haha haha -admini stration -portu gal -fac ulty -bet a -ul a -al bert -bre ath -er i -le tting -tr ic -ment ation -incredi bly -ten nes -v d -ðŁĻ Ī -ed die -br ick -gr ill -bt w -wat ches -resear chers -t ney -ni e -p as -a ster -vi br -poke mon -ch rome -go at -pitt s -il ly -festi ve -y d -can al -ðŁ Ĩ -fi es -car los -re que -partic i -tra ins -sam ple -temper ature -sym ph -pic king -in door -z ers -playo ffs -____ ____ -ap es -ly rics -islam ic -performan ces -d ick -spar k -se as -hom a -gr ound -disc i -employe e -com mu -alas ka -al an -fe ast -dg ing -ban king -manu el -slow ly -tru cks -mc car -oo o -sc rat -orche stra -indivi du -m x -bre ath -stair s -equ ality -bla ke -loc ations -cocon ut -balti more -aa a -l c -ðŁı Ĩ -har vey -resi st -immigr ation -adid as -fil i -re f -lg bt -mo s -pp i -ken ny -terr or -ban e -apol is -s g -social media -ka i -hon est -as sas -bol lywood -âĢįâĻ Ģï¸ı -ferr ari -hor n -cryp to -bo om -mainten ance -i di -s man -w l -ext ended -in sul -ve s -go sp -tr i -pi g -tar ge -cel er -st ati -sm h -ri dic -appe al -? ) -con clu -cos me -she ep -christop her -en thusi -po lish -me ts -oun ded -sustain ability -creati vity -con crete -ra i -ali en -ble ss -te es -clu b -ro t -bo s -ex ist -perfe ction -lu ck -rock y -expen sive -mean while -happy birthday -pre t -thr iller -ca ve -playo ff -som er -l u -le x -def ence -am writing -home less -pro phe -ch et -past or -ðŁ¤ £ -land er -ww w -Ģ ï¸ı -tic a -! # -o tic -rad ar -po sters -pow der -po li -ha un -tra p -bl in -assau lt -shor ts -re y -sh y -squ ir -rac ist -gar lic -fu r -remo te -sm ell -impre ssed -fing ers -âł Ģ -din o -le ment -s nu -promo ting -str ing -produc tive -b age -ma son -ra z -direc tly -j k -ev al -ðŁij Ĭ -doc tors -co w -ri der -st v -re move -w u -na than -ro d -n r -= > -affe cted -inve st -mp tion -g inger -o d -agricul ture -s que -mu g -coun ting -ke e -mag nific -coo k -ani stan -roo t -plac ed -sym po -gh ana -un d -che er -thro wing -secre ts -f illing -opti mi -butter fly -bu bb -ðŁĺ ī -terri ble -d g -sil k -obse ssed -lo u -ai de -sal ute -mon u -philadel phia -scienti fic -i st -u ae -dess ert -bott les -can yon -ðŁĺ Ī -car ib -o ther -w ich -re source -guil ty -un d -le on -e ss -kan e -el e -tra iner -he im -an te -man age -roo kie -tre ated -po ses -rs vp -cau ses -aw ak -je well -le tt -on ics -tit les -cardi ff -g aga -bu mp -use ful -? ! -loo se -bb ing -: : -argent ina -de bu -cy cl -wh el -dis gu -j el -k ills -bio logy -ex ter -tra sh -bo dies -tr am -circu it -expe ct -la ds -w ells -sho t -ge e -naren dr -fa stest -b ent -b ills -mar shall -h ats -intro duce -citi zen -im possible -gi b -az z -net working -r ant -thin k -in dy -st ops -f theday -bri an -* * -amo di -dom e -coura ge -pac king -af fairs -g n -si zed -ent ary -pol and -swit zer -afgh anistan -w u -ten der -subscri be -mo sco -att end -republic an -hon ey -âĢ ĭ -si mul -we ster -foo die -or o -midd le -ab t -co pies -ma je -narendr amodi -ty pical -inspir ational -vit am -wis con -cu bs -tiv ity -h ali -e ars -k ay -d are -mari juana -cu rious -an ia -tom ato -re mind -ðŁĩ · -sc ared -cou p -po et -land ed -ri d -wra pped -mor ri -climb ing -e ws -fe eding -con tra -tho logy -gri d -ti vely -read er -la ser -di ving -di g -lat in -ti ed -shake spe -o ci -ad m -show ers -chu ck -mar cus -oo s -kne e -o live -ow l -dy lan -an no -g ym -deci sions -well ness -arri ves -sati s -chri s -thur s -ðŁ¤ £ -inter views -thank you -switzer land -over night -journ alist -ser ves -vol can -.... ... -plo t -nic ol -car rying -mag ne -tre asure -ex p -be ver -ðŁĺ ¢ -mar ty -mo le -don ations -recogni zed -b h -du s -sh ann -al do -success fully -ent e -ðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ -cab inet -cu is -tit led -d as -so l -strate gies -deli vering -ad ds -ani an -ne ther -ðŁĴ ĥ -con tain -su its -pa irs -to dd -rel la -ro pe -ci o -cro p -paint ings -su z -re jec -bu st -d h -fra ud -m h -contro l -je al -destroy ed -al lows -wo ol -minneso ta -om en -j u -sympo sium -d af -lim it -accoun ts -load ing -inter n -re solution -hol land -qu al -meet ings -gra ve -cam ping -v am -re nov -liber al -am ber -gre e -hu mb -fe ver -el ing -broo ks -à ² -be th -ad ed -al t -ro e -perform ed -jo sh -frank lin -nic ole -de ss -bb s -m g -net works -min im -al t -weap ons -gu y -jas on -g ha -harb our -at on -pra ise -kentu cky -bel fast -st icks -blo ss -ho pes -an thro -famili ar -wa it -ch ile -depre ssion -la x -je ts -le ice -recei ves -si er -an k -de x -inde ed -fle xi -fab ric -lam b -hel icop -am anda -âĢĶ âĢĶ -compe te -sn ack -techno logies -sy rian -mom s -mu ham -cho sen -an at -dev on -shar ks -re t -fundra iser -selfi es -st ations -communic ations -tennes see -tu tor -ro t -valu able -dynam ic -nur se -i ed -earth quake -deser ved -a ve -sar a -stre tch -dougla s -ne pal -à § -ob viously -d ame -ra pe -any body -k w -pat rol -hol ders -h anna -info graphic -ec o -be ating -stan ley -bo ats -ri bb -e z -wit ch -inv a -ac id -boar ding -- @ -gi l -da ve -care ers -opp os -l loy -in ter -do pe -re su -j agu -sh ade -in dy -on ist -rel ations -ag en -ab le -inci dent -me ter -shar ma -id r -pro ve -immedi ately -tro ops -am an -g low -gaz a -blo cks -person al -chron ic -all er -si d -sh r -whats app -lu cy -ar chae -ho u -journ alism -our selves -go t -the med -shap ed -we ak -cas ual -leng th -sla m -ab bey -e v -coun ter -est a -reci pi -cha pel -expan sion -sel f -suff ering -sp ice -n z -sp art -desp er -boo king -quart ers -y on -ðŁĴ Ĺ -p k -continu ed -- # -man hatt -tal ked -sh en -com bo -hybri d -je ans -liqu id -se al -re tweets -ac celer -collec tive -t as -: )) -profession als -ra w -o tt -su san -ir ing -okla homa -re ven -survi val -cre ator -tran sit -st ac -sur f -i k -ed iting -ch illing -bai ley -ste al -ra ble -pa rent -hun ger -sn app -collec t -philos oph -dedic ation -c f -c m -le ep -repe at -re ha -un fortun -a er -a ero -abstr act -mon itor -ag ents -bu l -sci ence -harb or -drag ons -floo ding -ac compli -d ash -juli a -the red -tues day -cy ber -b low -ta ined -le m -refe rence -pp o -ne goti -char le -con nor -au lt -access ories -commissi oner -rain y -re ar -advis ory -luc as -ma id -co al -k av -pol o -ðŁı ¾ -tran sport -mar gare -straw berry -bur ns -gre ens -ne v -partici pants -col in -belgi um -col our -in form -d ell -br on -cal y -kick off -strate gic -re union -hon ors -li b -egy p -âŃIJ ï¸ı -hy po -si zes -regi stered -bet es -relax ing -bloo m -inten se -valent ines -insan e -w wii -p x -tri o -bla de -wiscon sin -con e -plat in -ali ze -ra ven -incre asing -indi ans -il ian -bl u -rabb it -exten sion -je f -au di -fer ry -s ell -a day -us b -swe at -cham pag -metho d -mem ph -assi st -s by -ca pe -remo ved -mag n -v t -r ams -f bi -tack le -phe w -h on -motor cycle -su spec -eleph ant -sub ject -let te -da iry -whe at -awk ward -ac t -tro l -mit ted -zay n -sheri ff -ene my -con s -ke tt -bul ls -ev alu -bt c -satell ite -ho lo -por ter -dia betes -bet ter -rele asing -sur f -: - -se basti -collec ting -en cing -e thi -go ds -al ley -health y -m ills -sma sh -co pper -cr ack -read ers -sp ac -licen se -bas ket -bang la -en tic -om i -m ere -si vely -anim ation -lan es -dent ally -chill in -fi e -k aren -dep th -li pse -n g -ri p -mel o -sand y -ðŁijı ðŁijı -vin cent -nu t -hu g -who le -cre ates -? ??? -âĿ¤ï¸ı âĿ¤ï¸ı -bak ed -up grade -rober ts -har a -carib bean -auth entic -mb s -mosco w -attor ney -wi ki -ch lo -hu ll -cor k -" ! -sty lish -ðŁĵ¸ : -di ary -impro ving -ex pand -bri ght -pollu tion -k nights -person ality -chec ked -fac ilities -z el -bow ling -gu er -ðŁİ Ĥ -on going -un its -hoo k -be ck -confl ict -to dd -far ming -educ ational -k ak -cla y -stro ke -bel ly -explo re -mill enni -th m -loo p -sm s -consi st -cir ca -br yan -d ab -youn ger -soli dar -pp a -experi enced -b ella -bo ard -shef field -steph en -consu mer -sub mit -spon sor -t ang -ag gre -comb ined -trac king -sand ers -b az -survi ve -fer red -equ al -se p -re ed -str ong -priv acy -st ap -un g -ac ry -pa sta -pir ates -ag er -fair y -du p -introduc ed -wi p -let s -spr ay -ðŁĵ º -gre w -a sts -pitts burgh -new york -jo ey -lau ren -tra de -ch op -pi pe -cla ire -behavi or -v ap -cre ws -lap top -ðŁ¤ Ĺ -che ster -disci pl -d f -out doors -k s -go ver -super star -cas ino -far mer -; -) -re turned -ðŁı Ī -ma il -roa sted -co sta -v ill -pe z -gard ening -distribu tion -sh ining -inve stors -ra sp -dec ades -reali zed -bar n -p ti -st able -ut d -pan thers -m ens -b n -ca de -bu cket -yn n -when ever -wa ke -da is -ber nie -lo dge -ju lie -atmo sphere -ðŁĺĺ ðŁĺĺ -major ity -par ti -exc it -cu t -me h -musli ms -be gun -fli ghts -vene ss -ce me -po sing -so le -g ou -dark ness -pe ach -cel tic -auth ority -grand ma -ful ness -smi th -speci fic -gar cia -co ins -good ness -aldu b -recru iting -den nis -gar y -sle eve -weap on -pl z -disco ver -harri son -recruit ment -ja i -ch im -com pared -tom s -mo thers -am y -archi ve -t ask -ben jam -se g -law yer -al um -inve sting -mi e -che z -j p -a ke -fl am -wall paper -âĻ¥ ï¸ı -t ton -che st -favor ites -we igh -coo lest -r ating -relev ant -lo gan -ma ple -run ners -pri or -peop le -ma ur -terrori st -te sted -carni val -su spen -me asure -m v -cyber security -app ren -terror ism -o z -v ital -ni es -gon z -fun ded -twi st -assess ment -die sel -en for -colum n -ad dressing -ca sts -pay ment -x ton -fi er -, ' -la st -ne e -un less -clo se -sk ill -cuis ine -fun eral -ti les -a un -k ru -relation ships -ðŁĴ ¯ -ev ent -âĢįâĻĤ ï¸ı -kind ness -pro posed -acou stic -a es -defen der -dan ce -h tt -w at -vo y -ðŁ¤ ĺ -au s -cli ff -sear ching -beauti fully -in qu -at l -speci alist -ðŁIJ ¶ -da i -tra ils -class ics -inst ant -v ous -re venue -mar ch -kir k -fr inge -fire works -tri via -âĺ ħ -tr action -wal ter -mo to -l ily -att itude -cli mb -sc an -sav ings -c w -fa ith -cred its -ab led -gra ff -auto graph -he he -ran ch -ha d -ro gers -ðŁĮ ¹ -f in -re qu -fol k -ad ditional -lyn n -u ber -dol lars -lo gic -wor th -so m -the sis -p ound -bi c -st ur -cer am -spen cer -en tered -v amp -organi zed -âľ Ī -pp s -tr on -merce des -no ti -compet itive -do w -ous ness -vic tor -gr illed -na i -pu tin -ab ra -bl ame -alex and -anim al -dec ent -p ent -inter ior -:' ) -but ler -bal let -ðŁĴ Ķ -albu ms -down s -la d -si r -pla in -p ers -blon de -dis c -paki stan -se ment -ga a -w age -ch as -man i -co ps -terr it -lo l -lau ghter -ri vers -magnific ent -lam p -w b -new sle -char ts -ble ssing -p unch -lon gest -fl oral -cu tie -fare well -sto pping -mb b -bu d -chee se -de cla -si m -mc donald -de ter -you th -t ch -fre der -kin dle -fer n -at or -as leep -p ond -spr int -p ounds -la zy -gh e -fundra ising -dead ly -gran de -dou g -he y -lin da -consi dering -i um -gol den -vi k -auth ors -di ss -u ally -appropri ate -mor ning -y le -hon oring -foli o -be c -re bec -fin land -formu la -corn wall -sh ay -cau sing -bl end -sig nal -t ent -kash mir -nation als -har mony -sc out -acce ssi -he ight -medi eval -impro vement -ke es -prac tical -car d -de par -hu n -om ing -cal gary -ste l -bu bble -gur u -ma h -unex pe -n h -ed a -me at -i ge -si o -god dess -in ches -tun es -br itt -sti on -ra j -âĻ « -mer cy -ðŁĴ ĺ -sen ds -i est -pol ici -val e -reduc ed -as ap -vi jay -defen sive -celebr ations -ri ders -med itation -har mon -g ing - ¡ -program ming -in au -sud den -m h -replac ement -sk u -j ar -gra des -ta st -k itt -brand ing -k aw -boo t -f ought -p ays -g f -iz ation -ho p -k k -activi st -v end -coast al -cha os -ðŁĶ ´ -se me -bill board -li fting -cu mb -sc al -ðŁĸ ¤ -stru ck -l v -indie dev -beat en -jun gle -al right -destin y -m ing -k c -ch ances -om an -q atar -cra f -tra ined -pri x -char m -o tive -s mu -e c -and ers -hand ed -al ban -certain ly -arri ving -i ze -sa i -tr ack -pain ter -hu mble -appo intment -head line -manag ing -mo d -as pe -andre a -à ¤ -ethi op -un ited -exi st -bal i -k ad -n t -d red -re x -recogni ze -tam pa -be ers -ati a -he els -no te -transport ation -tur tle -re de -hipho p -sp icy -sp urs -⬠ĩ -cor p -ther n -to ast -hur ry -proper ties -ma ge -mar co -ele ments -bou ti -syn drome -ms g -develop er -gra ders -he im -re sil -off ices -del ay -di men -vin tag -barbar a -ðŁĺ ± -vene zu -cu lar -fac ed -bar n -ðŁĺ Ĩ -survi vor -wor m -confu sed -passion ate -Ø ± -identi fy -electr icity -sou ls -brad ley -repor tedly -lun ch -shel f -eli a -swee t -smoo th -emplo yment -am el -manhatt an -ste am -oun ts -ye p -li ving -un e -descri be -ca res -man ila -sha wn -ac ted -bas h -st even -re st -pet ition -div ine -wel sh -rac e -platin um -ðŁĮ ¸ -p b -extra ordinary -solidar ity -m all -on ion -schedu led -game of -fer gu -de ms -nor m -p k -tri als -polici es -publi shing -st ole -fron t -charac ter -van ia -ex ce -sti e -sc a -resi dential -sa iling -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ -spons ors -th ick -champag ne -she pher -continu ing -ven ice -per th -na p -a ster -y ak -un limited -cho ices -ne o -hi v -repor ter -bru ssels -f old -dy s -se mi -la wn -it alia -wi fi -as k -em ed -fr ame -monit oring -ste ad -i da -gr in -is a -fli p -re stric -offen sive -atta ched -di sh -wh y -philli ps -gre et -p als -mix tape -v ou -fiel der -spar k -alber ta -g len -ca sh -s ri -u ri -ro dri -entreprene urs -climate change -p sy -d le -em ents -lin ked -nether lands -acci dentally -oppos ition -vel vet -ra ys -c w -om o -m f -lmfa o -newsle tter -: ) -toi let -liter ature -di sp -phili p -uni form -sudden ly -head er -cool er --- - -prou d -bri g -nis san -scienti st -j ah -con centr -pac ks -appo inted -so ap -eng age -cho se -âĻ ¡ -se tup -jeal ous -har ry -g ation -tun nel -te mp -osc ars -dec ade -recomm ended -child ren -ab a -anxi ety -ve ments -sal on -pho too -organi z -mach ines -ab s -vil le -hy pe -ti ff -emer ging -av geek -[ # -contribu tion -bra dy -re sto -g mail -fit z -photo shoot -hel met -h t -eleg ant -ug anda -nur sing -or leans -pen n -na h -foo tage -em a -w o -w ad -concer ns -ve re -re mark -who ever -str ang -p t -qu it -sh ang -histor y -s ick -perman ent -ill ness -col d -visi on -he m -ar row -con vic -pin k -oc cup -bal d -ex hau -u of -am o -on t -ãĥ » -adop t -la id -smo ked -inter pre -ess enti -associ ated -b d -bb y -fi er -inst all -dipl om -con diti -c f -w ak -any a -gr aci -fi sher -s ss -ap r -il it -mus ician -symph ony -cor d -h ack -le gi -l v -bless ings -hum or -sc ra -e ti -min ster -trav elling -bu sh -jewell ery -li me -!! ! -pregn ant -pe e -lo b -cap ital -ip a -pen cil -la bor -duc ks -prou dly -wedd ing -dere k -m w -pe g -valent ine -an gu -re treat -pro spect -dang er -vul ner -up set -, # -sr k -x im -thur sday -n fl -kis ses -re ds -cr ack -re ward -c u -ko k -me te -aband oned -it t -me als -sp ell -stan bul -del ays -ru m -le op -gu m -no va -super man -ch ick -m is -dram atic -inno cent -r ounds -re c -auti sm -bangla desh -mor al -mo vie -sp oo -k la -âĥ £ -ou ting -mess i -ab road -loo kin -a im -q i -st ack -colla ge -à ¯ -hud son -sc an -ho e -ch au -oc cur -comm ander -ho les -ðŁİ Ħ -bi as -v on -stick er -ma k -responsi bility -colum bus -sa int -ed mon -rac ism -far ms -w en -gul f -may o -!!!! !!!! -corpor ation -ba chel -el a -inter nal -je ep -fol lows -di alogue -de rer -smart phone -he len -rich mond -equ ity -s land -b g -ne ar -av i -memph is -we ir -discu ssed -bad ge -p up -mi stake -phen omen -un ite -ðŁ Ľ -de pic -ri des -in augu -n at -sof twitter -comb ination -gosp el -âļ ¾ -ad mission -retro gaming -ðŁIJ ¾ -sch u -mb o -jun ction -al arm -à ¦ -gr ac -kh ali -k ul -m ale -cap tion -wi sh -te re -cor ps -ru bber -play station -er in -effici ent -l or -jo kes -in ary -nor man -lu is -inaugu ral -ch ed -âļ½ ï¸ı -di p -to e -str at -aa c -am u -pi er -co tt -comm and -tt en -sn oo -cu be -clo ses -class ical -s word -expre ssion -reach ing -n app -co st -affe ct -ric o -gi f -brea the -tri be -or tho -h ay -l g -fri es -n m -hi ding -richar ds -en de -mic ro -capit ol -cop y -ro m -regi me -mary land -tax i -di al -embar ra -un believ -ch t -v s -elim in -o dd -pen ny -sound track -l ings -trans ition -rema ining -a is -mali k -? !? -rand om -def end -ul tra -tru m -danc er -st ol -dri ve -a ver -ro ast -defin ition -se an -excit ement -partic ul -su rely -sh av -ber y -di shes -com m -is ol -i am -ob li -gho st -hugh es -chi efs -b as -conserv ative -speci al -fe min -sh ri -n ancy -inte l -tu ne -ðŁĩ ª -jo el -gg le -mo to -ðŁĺ Ķ -bu ck -d ag -antic ip -mont ana -gu id -fro g -ec raft -op e -dri ves -nu mer -x y -color ful -wednesday wisdom -illu min -bey on -inau gur -deep ly -pre fer -for tune -coo ked -ti ble -âĺ ķ -swe ater -it ter -tt y -u i -gi e -com plic -~ ~ -tax es -cu ps -di verse -sam anth -âłĢ âłĢ -ba king -sy mp -wa i -be half -mer cur -travel s -ðŁİī ðŁİ -or ia -eng aged -jump ing -reti red -n aked -p uni -speed way -sci ences -rehear sal -on ym -dy ou -pl ates -r ati -kri sh -jaz z -car ol -ra f -pen alty -tim eline -ru by -engine ers -ra f -bel le -do se -che on -esc ap -me g -ran k -or d -me gan -mer ch -ec lipse -âĺº ï¸ı -ple dge -kir k -per si -leice ster -sa k -w k -saf ely -yy y -je t -promis ed -j c -en ne -no ah -re no -re a -ðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ -tra il -ðŁij Ģ -f d -soo o -ri min -w k -ภ² -i al -x ox -bis cu -d ale -fan dom -particip ating -fla g -privi lege -pe ach -mach ine -bo ston -gro ss -o g -mir acle -adop tion -u ss -mon sters -be ij -clar ke -pu shing -pra ying -ar o -d n -ell is -apol lo -od ds -refuge e -to w -b p -ðŁĩ¬ðŁĩ § -h end -app eared -memb ership -pe an -du m -viol ent -v y -potat oes -aw w -greet ings -t ts -ac on -sh ane -photograph ed -cra b -temper atures -cu ba -c fc -wel com -he l -in nings -m k -co de -kno ck -gra ss -swe dish -p ta -ick y -v at -lin ing -s q -sa p -ar c -announ cing -sk ins -cit yof -br ing -co x -gam er -it arian -i da -h d -ros se -sad ly -ge o -âļ ¡ï¸ı -tag s -fa ther -chan ge -l ance -whis key -adel aide -te c -stick ers -marke t -class y -bad ass -flo rence -lin er -fro st -k ate -ac on -scand al -es sex -ðŁĺ ı -vi vi -dr ill -blo ggers -recomm end -d ha -ac res -ro ma -bu y -gro cer -er ia -ma har -ff er -patter ns -ver i -com pu -st ev -ang a -ment or -do o -it ali -cdn poli -on ly -conduc t -elec tro -de f -wh ale -prepar ation -bicy cle -vi ral -turn out -bra ss -qu ad -hospit ality -pack aging -den cy -ceme tery -abo ard -dre aming -pic ture -t all -inv ent -ad mi -o e -tem ps -qu an -fun dam -pro mp -resi dence -mu d -sour i -âĦ ¢ -graff iti -gi f -d nd -com p -s war -pe eps -pale stine -devil s -san g -assi stance -bi ke -missi ssi -inter viewed -ne phew -dru ms -v and -gentle men -n sw -inst a -leban on -ee ee -oli via -ver y -rou gh -industri es -m ation -ðŁĺ Ĵ -bar rel -n ay -po ps -moder n -ill y -are st -on ents -protec ting -v ans -e o -vi kings -restaur ants -re ck -jac kie -andre w -w illing -he ath -citiz en -disc rimin -à¹ Ī -stu art -m ys -hi p -tran sp -" ? -te x -su shi -ke d -cro ssed -dist ur -pe dia -f ate -some how -mo th -proce ssing -is s -r in -u ts -yy c -ver t -lg bt -re id -on to -arab ia -habit at -= = -stre ak -simp son -addic tion -wim ble -deli vers -challeng ing -ðŁİ ¶ -fran ch -e du -s me -ai ds -hur st -th am -tari an -remem bered -palestin ian -fe es -tru m -sket ch -ur u -fit ting -jes se -ðŁĶ¥ ðŁĶ¥ ----- ---- -ba ch -ici a -colo red -da h -associ ate -int el -s eller -p u -stu ffed -ac s -b s -sh in -cooper ation -certific ate -ab u -ingredi ents -re v -in ge -el der -christi an -bun dle -th ic -dir t -beij ing -comm it -ted dy -ed u -to day -s field -w yn -confir ms -lo o -j v -ene ss -al pha -vir us -ari um -gr ind -bri dges -introduc tion -pol ls -bac ter -z ach -termin al -ra iders -fla vor -zom bie -vo d -sp reading -gameof thrones -effici ency -lat ely -ale m -twee t -cri mes -cl er -de y -dg ed -hy un -pay ments -cir cus -ðŁĺŃ ðŁĺŃ -mis souri -lu b -episo des -c age -po s -mat ching -tumb lr -lin ed -ge st -am bi -nar r -ing ton -regu l -blo wn -is le -co co -on don -joshu a -tour ing -sm a -sau sage -best friend -bo eing -desi re -sav age -ra pper -de vo -te ar -take over -cow boys -po ker -par ag -pp e -h int -we ars -se th -ro les -l anc -man ga -form at -fl yer -c ay -mo or -ba ke -spla sh -v ad -ker ala -proce eds -sil ly -reflec tion -di str -wi d -su it -ci vic -yan kees -by n -migr ation -di stin -or ch -fe mini -quali fying -tu ri -o be -hun dred -cra p -wan g -mathe mat -bu re -expo sure -fergu son -seme ster -re serv -pl ym -a hu -fac ial -wa x -wor ried -ca b -vi o -as a -co d -to pics -p cs -hal o -rescu ed -horiz on -ar k -âļ ª -hol ly -el f -ul ti -pu p -quali fied -attend ance -ati vely -destro y -y c -for th -photoo ftheday -c ents -ic eland -meas ures -de sk -port folio -artic les -direc tors -dat ab -e w -creep y -oun ding -hon oured -mi st -j it -men tioned -port able -iti c -d ann -friday feeling -am id -ti ger -scri p -helicop ter -hard ware -expl or -work place -austri a -beat les -ber nar -spi der -disc o -cul t -lim its -shor tly -fin al -nin ja -lu ke -le bron -wal mart -o il -van illa -shi re -ye g -ak y -c s -bl er -collec ted -t g -rol led -speci als -b ff -pier re -sh im -vi er -flash back -restor ation -individu als -pro d -fre aking -tu rer -o a -re fre -mor oc -gre et -re yn -care ful -our ing -u sh -is d -g ill -vie w -thunder storm -b led -pic nic -guar di -pi g -ar k -syl vania -bann ed -u cl -vi jay -ori um -av engers -believ es -eu r -monu ment -concer ned -la bs -ber g -a ap -vi sh -sing les -can cel -z el -ar ab -ru th -too th -ar ta -sh af -chair s -r ack -dise ases -crow d -cl y -fle x -christ ma -artif icial -tom at -fin e -dra ws -advoc ate -fran ce -Ù Ĭ -ðŁĺ ³ -heav y -s our -compre hen -no ble -aa p -hin du -cor al -g ars -ow en -n l -st all -yel low -mar ina -in ver -suppor t -tou gh -promis es -pi e -master piece -sco re -for ce -mor tg -crypto currency -o x -r ors -rock in -pro vin -ho g -no stal -oak land -pat rick -inclu sion -tra ffic -ah med -a ha -lux ury -con secu -de mon -âĸ º -b lowing -st ag -: " -encoura ge -ben e -sku ll -do dge -bu ster -kin son -wit ne -er ror -lo west -fel low -à ° -sh re -bl ur -vir gin -compos er -sli p -mor nings -ga ins -tab le -gra in -ari st -braz ilian -w we -tu es -ribb on -an ag -di st -sac rif -em brace -entreprene ur -af fili -de o -t ali -touri st -fat al -ì Ĭ -autom atic -ðŁĩ µ -we ak -wel fare -confir m -benjam in -fi ghts -alleg ed -me ad -strugg ling -pro secu -che f -à ¨ -propos al -er n -ðŁĺ Ħ -dy k -on gs -hon g -m ack -mel on -on ent -ru sh -d ap -tol er -pro pag -c ze -trans lation -wal let -cott age -sa il -constitu tion -ðŁĴ Ģ -mun ici -fav or -storm hour -i h -ðŁĺ Į -approach ing -pin ned -j ed -niger ian -n ach -sh at -particul arly -mc don -camer as -anni e -admini str -he at -electr ical -char ming -gib son -bouti que -ex posed -ac tor -pil low -beach es -genu ine -margare t -ben nett -lou isi -pos itions -el y -shin y -ten tion -architec t -ren tal -ac qui -goo gle -sub way -mom ent -ðŁļ ¨ -ri m -metho ds -cy cli -nor folk -Ù Ī -over whel -ra pid -we ar -happy birthday -progre ssive -ðŁĴ ¥ -co gn -pap a -f ool -philosoph y -pol ar -jim my -wi g -ðŁĴ ĭ -oper ating -reduc tion -ph i -fla gs -to the -o di -a res -k oo -k ang -ar kansas -ash ton -wimble don -sci fi -attrac tive -mississi ppi -logi sts -ral ph -la bel -gradu ates -ma ha -home town -âľĮ ï¸ı -foun ded -on the -li z -trans l -mini mum -pre sti -ta m -gener ations -re bel -journ alists -par am -mc m -acry lic -death s -tes la -w t -bry ant -jer us -i stanbul -muham mad -ri ley -k ris -work shops -is o -coun ts -stre t -prote cted -trin ity -man ual -r hin -r il -pleas ant -le mon -ner d -har der -dar ren -bur y -ra h -bas is -mi gu -occa sion -li sts -âĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ı -e b -de cre -hamp ton -ìĿ ´ -tra vis -trans form -puer to -nh l -av oc -tri ps -unexpe cted -ve t -di dyou -bar ber -st ages -m son -re presented -for t -l al -pp le -nic ely -ignor e -qu il -qu inn -h k -carri er -remin ded -am ong -pass enger -el len -gue z -sc ape -mu ral -youn gest -ma sh -d ill -rout ine -stain less -jack son -gand hi -th al -on ers -edit orial -convers ations -sd ale -autom ation -i ke -า ภ-ðŁĩ ª -hau l -la ying -men tions -am en -abor tion -i bi -coun ties -ca therine -man ds -jam e -roll er -au t -n am -o logical -cep tion -ran king -tox ic -sn acks -victor ian -bang kok -psycho logy -re g -ang ela -respon d -sty le -sophi e -dak ota -achiev ed -mar ked -imper ial -in as -glo ves -sli m -confi dent -att acked -gg er -lon ely -valentine sday -re b -craft beer -orig in -zim bab -ce iling -te ens -other wise -w b -f ers -day sof -advis or -y ah -âĻ ª -en der -republic ans -av a -skir t -pi pel -chi e -jan e -ja x -ðŁĺ ĭ -âľ Ĭ -j ays -bre tt -bal o -cru cial -d har -as is -de au -lloy d -chat ting -âĿĦ ï¸ı -rel ay -remark able -n s -we t -bris bane -ðŁĶ ´ -tion ally -f k -la yer -house hold -consecu tive -es is -pend ant -st ir -crit ic -su gar -photo shop -pa res -arti stic -do dgers -c un -cra fted -am end -bo at -âŃIJ ï¸ı -egyp tian -sa w -tra ge -small er -ox y -pa ired -nex t -i res -tac o -o y -u c -st i -a erial -: // -dr o -dot com -gg ins -r pg -ay e -le an -stri ker -lo bby -prote sts -pri ority -congre ss -am ate -inv it -r ington -mom my -th us -allow ing -pione er -enfor cement -g ori -tal k -dra g -du mb -bul let -san ge -er y -tar gets -ðŁĩ ¦ -he ather -consi der -seaf ood -ve st -ris ks -% . -p g -sac red -he ating -kick ed -tto t -. - -chan di -co ven -po ol -pul se -i a -ro ster -shakespe are -es a -car go -pean ut -tro op -ac tion -tab let -home work -cast le -stru ction -mus icians -free zing -bu tt -justin bieber -j j -bah rain -an them -au dit -didyou know -na vig -guid ance -âĸ ¶ -tur f -n un -fic ations -ye men -char ging -x c -bron cos -su bur -p ale -bor ing -among st -for the -em per -om fg -p j -expe cting -ðŁĴ « -st l -ad min -expect ations -sw an -shoo t -oooo o -min ent -ãĢ IJ -wall ace -stan g -satur day -adop ted -dou bles -hom ie -ome z -d han -vent ure -surroun ding -fi le -mob ility -de es -w ski -broo ke -emb ro -re members -kar a -test im -bo tan -m tv -sacrif ice -jerus alem -d l - ´ -proper ly -ili on -as i -leg it -co pe -m cla -recy cling -lar ger -ðŁĴ ĵ -pat ric -gener ous -ja red -p f -mol ly -thom as -ju dges -h b -sor ts -bl vd -o ven -enter ing -plan es -be et -integr ation -boo ked -fre ed -ver n -ash es -to pped -de pot -welcom ed -ren a -m ick -d and -see ks -gam er -ran kings -ren e -mu t -whis ky -fire fighters -gu es -ga ther -tour ney -de men -y ang -new ton -autom otive -back yard -deta iled -mi st -to bac -fi ber -un usual -grat itude -sp are -ne ys -: * -per i -flo ating -fin alist -don ating -dre ss -bro ad -be the -econom ics -tai wan -ed wards -plu g -pra iri -val en -bab a -f ad -an as -har per -dis order -app lied -p att -bi kin -li ver -cu ri -carol ine -ann er -juli an -wal king -mal col -screen shot -co ding -skin care -activi sts -myster ious -ex act -blo cking -mercur y -bat ter -du mp -âľ Į -en se -li sh -ridic ulous -prote sters -ðŁĻ Ī -lu st -swe at -as s -ali ke -co dy -re ments -win ds -as pir -vi enna -pra y -.. .@ -bo i -cand le -assi sts -te e -der son -p ony -f ence -con spir -âĺħ âĺħ -oo th -e pic -ba rely -a unt -b am -diamon ds -end less -scre ens -can cer -gr o -p st -pro spec -mo sque -help ful -ou ri -bro ther -gu jar -cri sti -ine z -to wers -ad dresses -gra y -bur ton -re tweeted -ðŁ¤ Ķ -n ity -du ck -super vis -jo an -kin der -sanc tu -pi ed -âı ° -ł ï¸ı -m ati -reven ge -ce ster -eli fe -desig ners -back ed -bo li -wei ght -cou ch -su res -s its -shri mp -la gos -auth orities -os ity -hol ly -compu ting -fac tors -ab e -pan els -ram ad -sent ence -missi on -hol m -r b -d ads -shang hai -mon ey -she ets -sk ate -thre w -cup cakes -infin ite -l is -practic ing -ess ay -ka i -as ci -mo b -u gh -hol mes -re gg -ik h -mo ck -collec tions -pe p -o va -sal t -nan dez -co y -thre ats -tex ts -cin nam -pregn ancy -pen ding -stam p -flow er -g is -agre ed -pay ne -ro ver -ph ra -sof t -f fin -fa thers -pass engers -aw ays -al a -h es -li van -in s -samu el -ingu i -h of -j j -chen nai -cat al -om ic -he ath -ni ece -pump ed -integr ated -are l -no m -produc tivity -wan ting -vis a -di ana -tw il -it v -cam ps -ro wing -d ley -black and -gu ards -b ells -re verse -vi be -ric ky -mo ss -ny t -âĺ Ģï¸ı -el le -tro y -cu dd -ev an -women s -fo to -mi stakes -wick ed -mi l -c led -me mes -co smo -schol ar -ren o -ðŁĺ Ģ -v ents -# â̦ -terrori sts -ca sey -cardin als -ðŁĺĬ ðŁĺĬ -venezu ela -bol a -liter acy -t w -en o -con tains -au stin -fin anci -ev an -har vard -origin ally -chev ro -her ald -nott ingham -manag ers -âŀ ¡ -accep ting -wal sh -tutor ial -entrepreneur ship -yach t -requi rements -glen n -pe de -unfortun ately -ach ing -dais y -gi an -night mare -âĿ Ĺ -r ina -b art -ema ils -oppo site -who m -sa ke -pu zzle -da shi -par ty -blan ket -bus es -lo re -beau ty -reas on -pun jab -winds or -func tional -exi sting -hel lo -gli mp -con vin -la k -scre aming -rebec ca -bli ss -north west -infin ity -cosme tics -pul ling -coffe e -pl ing -op ho -colom bia -interior design -( + -emo tions -sa c -sun glasses -sav es -d f -six th -al y -ðŁĺ » -de en -dev ast -polit icians -lac rosse -g u -pe i -jav a -comb ine -coal ition -er ts -survi v -ch ad -stri an -n n -de vi -coun c -concer n -contro ller -bre ast -j ury -tu m -introduc es -la di -mobi le -al z -ste ady -nur ses -h acking -on line -oce an -ðŁİ Ħ -a am -ju ven -ic c -louisi ana -ar te -street art -is on -wn s -fr m -p anda -no ir -main tain -del ay -symp toms -thor n -ge ome -ter n -carri ed -p ru -pan or -as sy -per u -clou d -sp ra -pe di -e ste -tag ged -ðŁĺ Ŀ -shado ws -naz i -ا٠Ħ -cor ri -âĻ¥ âĻ¥ -j ad -ðŁĩ « -form al -spo ken -ðŁĮ ŀ -enjo y -lo pez -out look -in ho -w ander -Ù ħ -ma ya -pe e -d ine -ãĢ ij -brief ing -suppor ter -ar ily -ght ers -natur ally -doctor who -j en -v ar -new year -re se -si mm -re x -con sequ -tomat oes -bur st -bra vo -bur gers -cr acking -nor theast -bi om -mush room -mar que -dou ble -ni er -v ag -tw enty -key board -win ni -jama ica -par ish -: - -mental health -ali zing -ren der -wa king -ðŁİ Ĥ -g ly -na than -wa shing -mel issa -jun g -loy al -chil i -song writer -guit arist -bo wie -neighb ors -onym ous -as set -ta i -head quarters -ðŁĮ Ī -i hear -ci gare -sur g -) " -re pl -dar ling -ðŁĻ Ħ -z ak -sa re -ãħ ĭ -mic key -ware house -mass age -ine es -did nt -i w -hur ts -eng aging -mag ic -women in -k itten -mor s -c art -tit ans -colle ague -compe ting -er an -k hal -mar ble -dem and -del ight -et ary -bli zz -lou ise -m ls -fini shes -experim ent -conduc ted -electr onics -itt ers -car ing -wh ats -sym bol -jun g -e cu -pi x -con text -char ger -ðŁĺ ĩ -re ig -fra g -ë ĭ -ch ad -tru e -ker ry -def ending -a int -au ton -check out -bar nes -less ly -d t -m me -clou dy -second ary -are z -_ : -app a -const ant -" ) -ve ts -jo b -i ent -ðŁĺŃðŁĺŃ ðŁĺŃ -m j -fren ch -di ver -davi es -hh hh -e book -๠ī -mar iti -bree ze -susp ended -mat o -vi et -ra hu -se i -bol t -en ary -le is -kar l -fr amed -expla ining -ab c -de aling -nat o -ja ke -exp and -leon ard -establi shed -du b -ar men -el led -voc al -nichol as -ori ent -k yo -illustr ated -ah h -danc ers -milli on -ge ta -po pp -as u -mur dered -gi ble -sto ked -gri ffin -maxi mum -adri an -en counter -ther o -david son -ðŁį » -holi day -ev o -asse ts -car son -memor able -âļ ½ -ob am -represent ative -cb d -tr icks -vo gue -vo ice -mm mm -sebasti an -cli f -ath y -par alle -ðŁ¤ · -pa k -ev acu -e ats -ا Ø -tou ched -organ ised -spir its -can ad -gui ded -frame work -ðŁĮ Ł -pe d -natur al -ag ar -replac ed -anch or -ti t -sha h -organ is -super ior -r n -ch ro -eric a -st ill -cor on -chu ck -loc ks -or gan -ro sen -sc am -ben ed -/ # -ke en -tre vor -vamp ire -sor ted -! ' -af ford -in tro -gr ace -ðŁĺ ľ -sau r -kick starter -influ en -v u -y up -po c -ðŁİ ¥ -a ar -s ang -tre k -et sy -tb h -scre am -chevro let -pix el -shepher d -an or -gabri el -tw ood -sd cc -me ters -develop ers -clo sure -v w -twit ch -ì Ĺ -se oul -pr ice -ho g -n ish -hill ary -scrat ch -in cen -wag on -dis ability -pan ther -ch ats -g d -wit z -sus sex -l ate -den mark -ger ald -cancel led -net te -i x -nav al -bap tist -te t -y ad -ma th -ho y -r andy -po int -intel lec -fru its -w ool -gu in -pr on -the ft -con dem -mar ry -n ola -architec ts -cin cin -roc kets -gentle man -ex plan -t ate -do e -ra ises -wild life -w l -insi der -blan c -w p -for sale -ny c -po well -unbeliev able -pen s -goo dies -mu stang -p ens -st ays -squ ash -xox o -near by -ever ton -co co -le agu -k han -stu d -south west -con struc -s worth -cro atia -le a -su ms -aim s -e an -van ess -iti ous -pa thy -arc ade -b end -sugge sts -sac ram -roy als -ri er -em ir -in cl -an k -clar k -ri ght -vac c -ठ¾ -tan e -li b -u sc -sal es -hu h -s ally -ver a -p ga -gro ws -dru m -tre e -eth ics -sug gest -is ab -se aled -pre viously -anim ated -ab du -ri ses -glo b -pre dat -scar f -del ic -om ar -ll i -sx sw -py thon -ne bra -fun k -reflec t -pav ilion -tic ally -ch asing -bak ery -inva sion -ko h -believ ed -co hen -con qu -cra fts -nat i -cle ver -govern ance -sam ples -fa ils -â Ķ -ti mo -r itu -stri king -inclu sive -sho cking -can t -requi res -dra wings -à¸ Ń -purch ased -du m -z ach -war ner -con sole -man sion -foun tain -circu m -e sh -is land -mil k -pro fits -hali fax -ri val -âľĪ ï¸ı -jen ny -sand ra -ny e -k elly -y al -qu ad -no s -inste in -fin alists -mid fielder -cu e -excep tional -a an -sa pp -gett in -sa a -f ati -sl ice -vol k -s wal -la sting -sum mary -it as -sm o -s z -âĺ Ĩ -ip l -fl ames -ene ws -ha v -hoo die -pitch er -win dy -re vol -centr al -ton ite -ðŁİī ðŁİī -sol ved -mil wau -organiz ations -wee ts -re fin -s th -ãĥ ¼ -el in -ton a -cinnam on -ðŁİ ¨ -ðŁİ ģ -ron aldo -pen insu -ome ga -el ds -desig ning -e igh -blu et -ben z -nu g -ash a -robo ts -su dan -choo sing -en do -ser ge -clo sely -hand y -fing er -be ing -ar te -survi ved -fl ame -mile stone -gu t -d war -fu tures -é e -el o -fri dge -eli c -ou ch -u b -p v -tit an -col lar -st ation -nev ada -aur ora -r d -dun can -âģ ł -bri en -mar sh -Ð ¾ -to tal -ch ry -s ers -su ffe -ra chel -colle ge -to days -cour ts -ch it -re united -gym na -gen esis -be side -re presentation -ch ant -collec tor -ra k -ath ens -ni gh -mun ich -langu ages -fl u -particip ation -__ _ -c v -spec trum -so da -co ver -refe ren -ab bo -ap a -public ation -ed m -mon ica -ar my -ðŁļ Ģ -div or -dr y -stre ams -robo tics -ci der -bull ying -appro val -sto ke -plat forms -sier ra -ex tin -i b -ha yes -succe ed -suff er -at ically -da i -lyn ch -h ound -del ines -ack now -d ated -exclu sively -he res -fac ilit -dam aged -char ter -la kers -fal con -unve iled -wel ove -e ase -pati ence -l one -gent le -gene tic -produc ing -g our -shann on -bil ities -zimbab we -p int -dau ghters -liter ary -bel le -cl am -surroun ded -k any -ne il -pir ate -rang er -hb d -nat alie -bel ong -olym pi -emb assy -sc ol -en er -ak in -lo ren -b h -: / -di va -den im -hi pp -ðŁĩµ ðŁĩ -arn old -? ' -we ren -em power -dis abled -man or -rasp berry -b af -aw ful -dru mmer -kar dashi -n ash -machine learning -ch u -rebel s -tim ing -mon roe -ton gue -ran ge -pup ils -re ss -amaz on -b z -har ley -pal mer -ballo on -s ings -ic ec -j b -c ers -g ps -whi st -ri se -l t -oo oo -c attle -shoo ter -vod ka -uc l -mt g -le sli -jon as -di spo -at ric -ste in -vintag e -fir ms -flo yd -cow boy -soo oo -is aac -war craft -disney land -beauti ful -be am -franch ise -bu n -k ag -an on -tur bo -swee p -made in -kar achi -dete ctive -penn sylvania -contro versi -vitam in -a side -chron ic -descri bes -remo val -ha h -ap er -ten ed -u to -bad ly -mir ac -f ry -ye a -in jec -ther mal -comp act -th or -te ed -ur gent -l ite -g illi -sop hom -ic o -che m -p m -for k -fre ak -ch ak -recipi ent -i y -ni k -model ing -c ans -ðŁı Ģ -del ux -se am -surviv ors -rad ical -investig ating -reli able -f m -tur t -ligh thouse -to ol -go wn -) ) -bo ts -auto graph -a id -bu ffe -h mm -horri ble -ssi onal -ann i -à¹ Ģ -k its -sch i -eter nal -hu ss -sens itive -r u -tast es -chec ks -im o -por tion -sk ate -e den -half time -fri ed -ri hanna -ti se -fl ick -ca in -s gt -âľ Ķ -sh au -sta ined -ra ffle -dro ve -sal man -princi ples -sh o -ar u -je ss -gu ine -gar bage -my an -jel ly -dis ru -z ia -q ld -ent ries -la v -fle w -ad mit -objec ts -comp are -ny times -cann es -p n -suff ol -ro c -d ana -e gg -hi st -coun sel -' ! -phy si -imag ination -ad just -explo sion -plym outh -hor ror -elli ott -bour ne -de x -bre ed -au dio -lob ster -disappo inted -nation wide -( ( -incre ases -austr ali -ce dar -star ing -rac ial -e is -g mt -visi ons -stay ed -discu ssions -de an -cur tis -mai den -stel lar -happ iest -h wy -pre season -car av -mon days -hospit als -glimp se -schol ars -ja i -ter race -ann a -goo se -gra ded -lot us -hun g -grocer y -stam ps -emper or -sc oop -in ser -c as -exist ence -he al -fal cons -mar vel -reduc ing -terri fic -magne tic -perfor ms -bar re -p us -tre ating -ic on -w h -decla red -tra uma -do d -come dian -nik on -bu gs -as m -mont gom -ibi za -comprehen sive -ha s -san ti -fellow ship -da sh -p sal -louis ville -sp y -fau lt -d the -fi led -vi sta -de sc -fe ars -you tu -sp s -es p -ri g -cri me -ber ger -wonder land -k ent -in formed -stev ens -my th -ast on -ir i -visit or -at ri -produc ers -al la -person ally -separ ate -agen cies -af ri -il an -spo ke -n ina -squ ad -di ves -de pend -li v -fier ce -enter taining -cha in -sc at -bor ders -pal ette -sp ro -os is -der by -tobac co -zi o -willi e -ju vent -zoo m -hol y -enti rely -af e -mart inez -be ds -pe a -bull dogs -ðŁĩª ðŁĩ -ib m -ne on -ethiop ia -team mates -plan ting -tw er -any time -for bes -ó n -run way -ner vous -ro ger -p ile -ch anc -apo caly -u w -o i -dr ought -territ ory -br ick -cre atures -go in -w aff -gre n -sou theast -je an -am bul -ed ited -stra p -c v -aar on -ãĥ» ãĥ» -t su -descri ption -kin dly -clu tch -im mer -en or -women sday -or ange -ra g -ob vious -hy der -chann els -man go -me yer -ra ining -ge tty -pil gri -coordin ator -up load -ninten do -don uts -san chez -app arel -j r -zz i -, @ -jeff erson -accessi ble -great ly -e id -initi al -budd ha -par is -ma scot -â¬ĩ ï¸ı -sch war -si ri -sp inning -mortg age -e cho -end ange -ge dly -chlo e -enh ance -kar nat -k ry -explo res -ðŁĴ ģ -af fair -ic als -all a -dar t -dolph ins -diffe rences -squir rel -au gh -dr ones -ell en -re store -pa w -un for -pi ke -hil ton -colla b -consu mers -co inci -out comes -pp p -a q -coup on -li est -si ms -k ho -av es -spo on -pu dding -cor byn -hat ers -ex ams -sla ve -. ! -p sa -app les -tam il -se d -co ke -zz o -lo sange -car bon -cla ir -... ) -k hu -cra ig -explor ation -sanctu ary -su e -al way -demen tia -won ders -super hero -pakistan i -brown s -bluet ooth -lo cker -mar c -ev entu -delux e -rodri guez -âĿ¤ âĿ¤ -ro bb -ðŁĴ ¦ -lin ux -ten s -intellig ent -se ed -vo ter -s ler -pe aks -inter n -teen age -peninsu la -hand ling -ti e -cou sins -wen dy -me e -à¹Ģ ภ-din o -ðŁĴ ° -ðŁĺ ĥ -ze e -s bury -trage dy -b k -bo re -z in -war ns -idi ot -tou ching -contin ental -tac os -saf ari -wa shed -po dium -morri son -fore sts -c bc -al on -partic ular -be ads -inv ented -lo ch -li ghter -where ver -i de -docu ments -a we -k r -no where -min er -st it -ro x -contribu te -har dy -cl an -ob ject -ca it -ðŁĴķ ðŁĴķ -happ ier -vege tables -t art -g ag -nom inee -heav ily -pan ic -j d -there sa -at m -u ph -s fc -su ri -drin k -n al -re vel -k l -avoc ado -nom ination -ma donna -shar on -malcol m -control led -sh ers -revi val -legis lation -shoo ts -n in -comm entary -pro s -human rights -str anger -mit ch -pipel ine -leg ally -th u -gil bert -tol l -gran ted -gh s -ir anian -refre shing -du k -ab i -pri me -jose ph -mo sa -stati stics -produc tions -mer ry -pat el -sa x -human itarian -struc tures -e missions -town s -fre el -ster ing -rat ings -alle gedly -cab in -st l -w ade -fl yers -tri m -promis ing -z u -bal lot -compar ison -free ze -ou ter -great ness -as sign -snow y -r ale -tor ies -med iter -kno ck -consult ant -cincin nati -analy st -sc oo -je ws -appro xim -pu re -portra its -cy rus -ation al -lo ans -acqu is -el u -accep table -uni on -water color -ru st -batt les -per fu -seas onal -ser ial -mind set -ri ot -fel d -enni al -clo set -pri est -tan ks -int l -scre w -bu m -ab dul -ou x -expla ined -ric a -imag ing -law yers -bu ried -ãĥ»ãĥ» ãĥ» -ear l -âĢ ķ -l ton -resto red -stri pes -fo ss -de mands -ste aling -alex is -mun d -ak er -ur us -war dro -hu gs -gen re -e go -Ù Ħ -particip ated -bab es -ban quet -ti ous -he mi -ds b -lo st -milwau kee -jen ner -ge m -ou tra -lo ses -id i -re ps -ðŁİ § -regu lation -fla w -f ang -vibr ant -ram p -ra ins -well being -so viet -vie wers -de po -libr aries -bi go -ser y -g ill -de struction -co z -c x -bri dal -al ds -plan ted -amate ur -lu d -che ering -show cas -pro file -i u -ver tical -pack ers -wiz ard -ski p -s light -be au -air ways -mu ch -re ra -ðŁĮ Ĭ -ab sor -pati o -pack ages -s ells -ment ally -ðŁĺ ¢ -reyn olds -k are -tri bun -wal t -kn it -ta ste -sur rey -boun ce -cre ature -b are -bet ting -su re -mi ley -laugh s -al ore -cy n -t l -arti st -ann ah -war mer -dynam ics -lunch time -mariti me -vulner able -ðŁĴ ĥ -wol ver -dur ham -const antly -am in -si bl -: @ -bul let -k ach -angel o -wil der -doo m -desk top -law suit -k ca -hen derson -inv iting -bet ty -ta wards -ra fa -le aked -and i -ge ms -af l -vel o -mediter ran -pro be -to tten -steph anie -sn ation -com be -q s -over come -assas sin -ra v -fil ip -winni peg -sh il -determin ed -k as -ou tre -regre t -gui des -aa a -ðŁĺ Ī -wi ves -mani fe -er ly -sm y -sh ima -x ing -pix el -jac ob -ac commod -to y -on o -po o -ti er -an swe -ðŁĴ ģ -ro sa -le ase -bel ongs -th ar -eventu ally -nei ther -go a -ski ing -at ra -ag h -broad casting -f ury -py ram -d ice -volk swag -wom ens -provi der -bom bs -miss ile -whi p -d ick -nor we -back up -el der -mat ure -concer ts -gi ous -sque e -good morning -bra ves -^ _ -au ssie -lun a -mal es -he ck -for tn -rome o -steel ers -p n -pe er -re presents - « -kat y -migu el -requ ire -cha ins -l ur -immedi ate -ti mber -âĸ¶ ï¸ı -advoc acy -ex port -an z -tiff any -auth or -ðŁİ Ī -du des -chil ly -hi d -har m -bu g -mon ster -terri er -tu c -story telling -ta k -in ti -immigr ants -b is -reach es -com passion -john ny -contribu tions -ðŁIJ ¶ -mechan ical -impre ssion -ran ks -ko be -men ting -bloss om -pab lo -buil der -bom bing -tw el -sul livan -om o -pe te -de mi -ku dos -w bb -t gif -mass ach -neighb or -che fs -eng ines -pun e -ga ined -phan tom -s days -ext end -gr an -cent ers -jac qu -dat asci -sleep y -el vis -answe red -s lot -con y -flexi ble -ti ally -le tics -% , -andre ws -si ble -mom ma -vin o -do x -invit ational -twil ight -j ade -ill ery -joh ns -f ou -p v --- -> -break down -billi on -prin ter -mon d -c bc -mag gie -legi on -du b -kur t -po or -paren ting -regi ons -bikin i -be ware -si onal -au burn -kid ding -amp les -sp an -con tempor -c ic -ha bits -ak o -pre fe -bud dies -it z -em ily -person nel -moun tain -ver sus -ðŁĺ ¬ -ear ning -s ink -dar i -u u -s win -i ster -bru tal -n ac -kat a -clo th -am and -ðŁĶ Ĺ -ne o -alu min -week ends -nebra ska -co des -delay ed -brun o -pro ven -in c -i ght -fl an -or o -lam bert -regu lat -w f -massach use -kardashi an -bern ard -fi esta -volcan o -grand pa -anc a -d re -st itu -mean ing -fo am -au ck -at ed -r l -hot el -pers ons -dy nasty -ell or -ma i -am ne -sty ling -avi er -e g -vege tarian -, â̦ -foun ders -sta in -g d -cy cles -sky line -trac tor -exi sts -tra l -kid ney -mar il -inst ag -se tte -addic t -tri angle -flash back -controversi al -z on -p ins -i as -tr ay -town ship -deleg ates -sp am -h ms -cr ane -peop les -o lo -fac tion -but es -on ica -deleg ation -new profile -eli er -mc a -w and -g ely -losange les -ber ke -ti ve -dis rup -zz a -cas a -jor dan -ford shire -ga thered -ic hi -atten dees -à¸Ń ภ-pe ppers -co in -bour bon -ern ity -ro tary -behavi our -jere my -team work -compli ance -tre mend -ðŁĩ § -bu hari -cam bo -bu yers -ha gen -bu ds -bay ern -mon te -sm ells -an za -ath lon -descri bed -work force -gi ving -ap i -invest ments -da il -sel ena -datab ase -th um -mor tal -stu dent -bu yer -do ver -gar ten -att le -loy alty -gen oci -holo cau -theat ers -ru ling -ven us -pat ent -ch un -ab by -awa ke -mass acre -bang alore -break ing -simm ons -ju sti -hal e -ed chat -gg les -haw k -mar king -head lines -stro m -co ve -breath taking -med als -hair cut -christ ine -tele graph -gujar at -ju ra -can e -sho re -propag anda -mu eller -.... .... -sa vi -stom ach -thro ws -ta b -war m -j ong -reno wned -hi r -ra is -mush rooms -guaran teed -bo a -m j -revolu tionary -certi fication -bru ins -jo in -w es -pas sport -c g -sex u -cap able -w v -ton es -jac kets -ac compan -spin ach -fore ver -bla ir -wat ts -g l -cou ples -prairi e -newprofile pic -logi stics -massachuse tts -jagu ar -o id -we al -under water -mo z -y i -ma ths -myan mar -pre ps -suffe red -tr ace -wal i -ah hh -bor g -st itch -cu lin -real ise -infe ction -discrimin ation -sh ame -an kle -hu mid -y t -brac ket -tru ck -tri u -ea ster -commun ity -post card -invol ving -ty ler -car amel -over view -ex amples -integr ity -base ment -instru ments -ani um -at us -gh er -laun dry -achi eve -gen eva -pr icing -hyder abad -beli ef -me ta -j aw -accoun ting -lead er -cristi ano -cou ture -cy p -vis ed -, ,, -k nu -h ick -break er -br am -ra b -mo or -ham as -gradu ating -pupp ies -ak h -ta h -ach es -ri e -op ini -g ta -re ign -tra gic -re ver -p ill -pine apple -tou ches -da re -le ys -il o -inter iors -sc outs -bar t -en zie -don o -bro ck -christi ans -ense mble - · -cine mas -new port -air line -win ston -le igh -cont ents -pre scri -ur ge -tr out -fic ally -il ia -sub si -are r -âļ¾ ï¸ı -w ounded -ðŁĻ Ĥ -pe pper -ðŁĴ ŀ -fit ted -af f -re sur -thursday thoughts -z ero -archae ology -di v -je e -i on -awa iting -co zy -beauti es -bal d -dat a -gri zz -stal k -kin ds -cle ared -jess ic -regu lar -ali ens -plac e -bo s -bi zar -thisi s -ðŁĴ Ģ -totten ham -ma fia -s lam -ari ana -car roll -back pack -care y -uni v -r g -pe p -dig it -tatt oos -ag on -volunte ering -diffe ren -consu mption -ka thr -head phones -t shirt -o b -ele ment -re tail -sh ru -al gori -contain er -consci ous -fi l -com ing -ra sh -u rope -def ine -gi or -femini st -flow ing -rout es -gl aci -fer t -somer set -ant es -twee ps -$ $ -h our -endange red -year sof -ro h -po pped -bac king -ba sil -bra ke -mon aco -lgbt q -pra gue -ut ility -cas si -gate way -haun ted -sch ul -ðŁİ µ -shou ld -walking dead -comple ting -dann y -montgom ery -pengu in -ss i -mer chandi -ðŁij ij -chur ch -h ates -cap tain -brea thing -ce t -fair ly -approach es -compan ion -surpri sing -kany e -pe y -hin di -targe ted -lor ds -de ut -di gging -ger man -ru t -ener gy -close st -y un -apo logi -ภ± -s ack -ru p -dd y -port al -d ough -b ats -ðŁĵ ° -at ur -graph er -pi res -mo tors -ðŁĮ ¹ -j c -dan g -tu k -clu e -us c -pag e -d less -bro ws -ju s -ad ing -re marks -oo m -car dio -ste fan -arm strong -âĢ¢ âĢ¢ -ni est -belgi an -bi op -so y -lo f -í ĥ -q t -flashback friday -ce e -ģ ภ-wre ck -mar ines -amend ment -wardro be -vo y -bur ned -guit ars -ra inf -li fel -ssi l -oun ce -exter nal -c key -me sh -she ikh -inv itation -sugge sti -pop corn -phenomen al -an onymous -tun a -chic ago -o val -del y -loc als -( & -pro f -no vel -fin der -spar ks -la ven -in fu -nic ks -qu ant -ra e -exe c -dist ingui -st ances -mu tual -sh al -unve ils -edmon ton -zan ia -a dio -vie wer -brad ford -audit orium -qu is -re act -htt p -l ero -chee ky -impac ts -ta k -ed t -desper ate -t ay -ì Ħ -sett le -bar gain -resu me -un ite -thro wn -ke st -se ys -mar ching -am it -decl ine -sch ar -me tr -stan ford -lin ke -ber ra -dol ls -rug by -jam i -b or -road trip -dino saur -mi k -sun der -re m -b k -over seas -nau ghty -imple mentation -iam srk -lun cheon -fir ing -mi ami -pere z -the e -z on -gi fted -con version -ceram ic -¡ ï¸ı -pe dro -ì Ĩ -v ick -! @ -he ed -si d -b w -docu ment -pl un -gr ants -fant asy -predic tions -vali d -car ved -gradu ated -ðŁijį ðŁı» -nation ally -ch y -af l -re sso -blan k -ri vals -j ig -e ties -om ics -une mp -b ound -sk o -inspec tion -par al -high s -cri sp -b ans -ob a -[ @ -co spla -costu mes -rec all -mou th -ni gel -b ts -ter a -ko v -do cs -west minster -dic t -gra vity -kar i -ro gue -t ted -war k -ida ho -w end -aw i -queen sland -proce sses -cli ffe -m ick -com pens -op ol -the y -cl ari -wiki pedia -salman khan -haz ard -pre ston -swee test -pd f -che es -tr ilo -south africa -bur nt -( $ -con tain -t p -sub mitted -sound cloud -at u -re z -word press -corru pt -n f -ma ker -í ķ -par as -adv ent -ri al -ca fe -fo ssil -!!!! !!! -co ws -c j -sp ur -institu tions -land mark -ent it -re ut -h is -alz heim -we mb -regg ae -mo squ -st at -identi fied -deal er -re am -re land -ten sion -ðŁĩ © -wra pping -deep er -fr at -red dit -ar is -moroc co -.. " -b low -ma pping -pri orities -ing a -swa p -re wards -conspir acy -creati ve -c j -congre ssional -vau lt -ple x -sophom ore -shad ow -ele ss -ðŁĺ ħ -dar ts -aldu b -anno ying -pro ps -n as -alumin um -h bo -offen se -j ill -oni ons -la ur -ta e -har dest -sh ro -ga ining -meas ure -ed tech -cyp rus -tar a -ang eli -car lo -go on -all i -im plic -ju pit -resil ience -ha il -bal anced -) ... -joy ce -gr a -th eli -defin ed -shi pped -main ly -min a -l m -sac ri -o ber -p im -claim ing -ent ers -co rey -bo k -cri ed -cool ing -dani elle -pharmac y -thor ough -ca ke -k lo -outre ach -z ens -digital marketing -val ent -sn p -her b -mr w -caf é -cap tures -no tre -triu mph -pan cakes -cu mber -spi ke -d ation -bi gg -sp er -crit ical -am al -too th -foun ding -a stro -' # -quan tum -th ames -un c -pri de -air bus -kno cked -un defeated -mediterran ean -cal cu -clo wn -sens or -ham mer -for give -cu shi -ber ry -maje stic -elec t -polit an -g ta -k ari -bur ke -sea hawks -volkswag en -re i -landsc apes -cas u -grand father -list ened -/ / -star trek -rainf all -fur ry -vi er -star k -rif le -ff a -leg es -hillary clinton -min us -correc tly -architec tural -pre ce -up side -box er -ðŁĻĮ ðŁı¼ -is ai -de t -pro vo -tis sue -spoo ky -ve led -re con -prospec ts -que bec -âļ « -ig no -anat omy -shap es -w p -p interest -hor e -an es -pick up -ti p -pra desh -hu gh -co e -po k -gram my -well ington -sti gate -ri gh -lea p -king ston -scen ic -go sh -v ani -au g -s ary -zi er -bure au -lin son -con te -fra gr -all an -g aw -lan a -colli sion -surve ill -ren ais -ar range -s ali -do in -br ance -bren dan -our se -in coming -suspen sion -à ´ -l la -educ ators -in tri -da e -bio graphy -bul gar -villa in -go thic -rw anda -e w -may or -meet up -democr at -mor gan -su dden -te sco -car rot -bom ber -mck in -re ne -fun day -agricul tural -haha h -show time -form ing -col a -scor pi -quo te -po ppy -s life -d az -tu b -ne n -mo t -ðŁĺ » -s ore -elder ly -o ve -skin ny -um i -anc o -man ship -we re -g v -k ah -fol ding -ne at -samanth a -dan ish -uk rain -humid ity -nu tri -jak arta -cand les -oooo oooo -at ile -streng th -i bra -bap ti -charle ston -fr ames -girl s -clear ing -glu ten -# # -super natural -ju bi -ph one -he in -dr un -le ak -invest or -y er -dom ain -ball room -mi sh -app li -off shore -bla ze -dor o -âĺķ ï¸ı -win ery -shar if -ad ore -n ir -saf er -si gh -as cri -strong ly -trac y -ck er -ol l -faith ful -ey ed -deli ghtful -vis m -karnat aka -tit an -wh ar -jer seys -re fur -heav en -gri p -pan ama -pre li -glu ten -o dd -cont ent -pon ti -tion ing -e commerce -feder ation -flaw less -ge ar -ti res -by r -pol ice -cu ban -tri butes -tic ul -chur ches -nur sery -di aries -muse ums -snapp ed -i van -wi ght -touri sts -ramad an -t rent -prophe t -won dered -focu sing -hi d -ic ons -i q -ambul ance -pi st -fun niest -time less -sr ilan -bu ys -ki ds -colour ful -a shi -ch ir -mu m -ðŁĵ ļ -let ter -x en -reut ers -pre serve -in ting -ste p -fu ji -uni ver -i u -show down -po ems -surveill ance -suspec ted -ta e -sol ving -tom b -mother sday -car pen -recru it -pil ots -bro c -mix ing -fri days -ty r -represent atives -tra pped -abdu l -free style -clu ster -âļ łï¸ı -k d -sk ill -pit t -ex o -commer ci -muse um -loc ally -g ina -no bel -immun e -fr ac -cap su -main ed -attemp ts -bull dog -be spoke -sing ers -sp elling -seg ment -nat ures -tic k -lip stick -clean er -gett able -preci sion -â̼ ï¸ı -th ood -re ef -no pe -bill y -di gi -mu si -ri val -figu red -tal ity -sun ny -ber k -aw ww -awa its -un real -co pen -asy lum -ex otic -bu en -mo ck -en able -arch y -fr a -pla stic -al mond -amp li -displa ys -abbo tt -s me -x p -ðŁĻ ĥ -graph ic -i ved -mar a -cau tion -lea ks -en berg -ul u -unic orn -cann on -appren tic -ðŁĺĺ ðŁĺĺ -b ball -wil low -at ics -am as -manufac turer -campaig ns -port ers -flo ors -l su -ty pe -ke j -honor ary -it im -to le -min ecraft -d x -ma sh -ri o -consequ ences -ron ald -go ssi -suffol k -mu se -r bi -live music -i van -ðŁİ ¤ -le u -patri ot -man it -lan ca -home decor -de ar -sig ma -ti de -str ings -v ita -sequ el -try na -inve stigate -bor is -ve gan -barri er -mind fulness -web b -hu stle -in da -tan zania -str ay -tex as -c ag -diagno sis -wom an -g w -ob session -l ative -nu fc -fl ynn -moment um -sof a -wal d -vege table -tu cker -supp er -se ab -ar ro -se ag -ven ting -counc ill -sp lat -cal cul -.. # -com fy -odi sha -sto pp -war fare -ca es -à ¨ -co y -price less -in sec -ðŁĺ Ľ -contro ls -empower ment -datasci ence -per pe -gen ic -e res -tru deau -man o -sla very -expand ing -ma he -fa iling -s aga -photograph s -cre st -re on -surf ing -hi e -ðŁį Ģ -ja e -fel lows -south ampton -sol om -ce ster -tab ility -hor n -se ct -he e -cole man -at las -explo rer -consul tation -copy right -organi zing -den ied -mon keys -noo dles -br is -fl or -dou gh -bon ds -sho cked -eco system -care fully -w m -apart ments -cur ve -san diego -must ard -comm en -cere mon -e ch -ru th -ðŁĻĮ ðŁı» -hawa i -fil med -te ar -as ingly -ca ir -wat t -instru ment -ou tta -ye ol -river side -ë ° -. : -nor wich -alo g -migr ants -new man -ri de -spr ink -targe ting -beli eve -tor ch -reflec ts -per mission -ff man -ene mies -bas ics -se ized -sun days -le i -hass an -en do -h c -st ad -le ments -kk kk -nan o -shar k -man a -on ic -treat ments -ear ly -collabor ative -shu ttle -bran ches -mis ses -mained cm -ap ers -ky le -carri e -leis ure -sh et -bir ding -adv ances -ðŁĵ Ŀ -popu lar -di ane -a be -re war -neigh bour -k pop -remem brance -play ground -ru b -krish na -e bola -inqu iry -ep a -lu min -organ isation -abra ham -norm ally -pre ten -jan et -w t -ðŁĴ İ -encoura ging -a stic -bu mp -syd ney -s z -ss ss -gar rett -ðŁĵ » -consul ting -roman ia -spo tting -chanc ellor -ar ma -presti gious -ðĿ IJ -t ad -cry st -compe tit -rati o -cat aly -bro w -j ur -vi king -commu te -y day -la yers -du mb -esc al -genoci de -f ill -gu pta -ste pping -se i -fo to -wild cats -col i -projec t -ear nings -st r -ge ons -comple tion -b m -decor ated -craw ford -af ghan -sc are -visi bility -hi b -direc tion -stro ll -christ ina -alter nate -cl are -sty list -be hold -s ance -leop ard -acqui red -narr ative -ash i -the a -?? ?? -pe as -at ch -sli des -le en -renew able -eng lish -qu ir -co aster -r x -fo ols -match day -mis m -amaz ing -z ig -ke ting -won t -to wel -di ab -sta ke -n m -mel t -e than -gra pe -polit ician -sm en -í ĺ -re o -wedd ings -cat cher -or acle -me mo -ðŁĮ ´ -ec k -rob bie -norwe gian -oper ator -am or -se wing -ju l -x ie -u v -fif ty -me ga -tatt oo -liber als -u pri -traffic king -richard son -su v -ki p -mess y -tremend ous -gl ou -cour tney -la d -stere o -my ers -i dio -^_ ^ -man ning -dy e -w d -thr one -jun k -as u -provin cial -k ook -wr c -fine art -hamp shire -renais sance -b red -fall out -s j -sn l -al am -tor ture -fy i -sh ines -pa w -ch ar -hen ry -c row -aci ous -di an -pa ige -ba re -stock holm -scen ery -ðŁĩ · -jef frey -pu sh -decor ation -ne d -cu te -brig ade -laven der -inv ites -e sports -vo ir -dri ed -tran spl -sur geon -no vels -pul ls -son y -lun ar -man e -i vy -fru str -dor set -sa i -tor res -ssi on -shut down -suggesti ons -writ ing -e o -battle field -u ga -ðŁIJ ¾ -vac u -spl ac -g it -u g -high land -% ) -mer maid -sacram ento -ta ils -p w -ka h -t ell -enh anced -ì ķ -auck land -cru el -ðŁ¤ © -au dre -sail or -gram mar -g love -de on -infl am -fresh ly -k ell -zi p -christi e -mil d -di xon -instru ctor -g ence -ãħ ł -sub jec -constitu tional -crow ds -in visible -ru ins -da k -si p -pla que -p ouring -comple x -z ine -ste ad -f let -trans mission -lo way -ar un -incre asingly -au d -transp aren -cro wned -sc oun -blizz ard -lux u -fi ers -achieve ments -hun ters -rock ed -bas in -vio let -pro ves -achiev ing -pro sper -se ga -flo at -vi an -xi v -pol ic -tur a -approxim ately -wander lust -keep ers -geta way -co d -pol is -br yan -col ts -tal ents -yo gur -gluten free -wri st -gr y -cze ch -ðŁİ Ī -ev ille -ðŁı Ī -to x -dani els -am er -bi ds -weare one -me tab -g t -boy z -pd x -pos session -pu shed -shr ine -reali stic -tri gger -na vi -ru mors -n af -jen kins -tr un -comm uni -Ã Ĺ -gam ers -arm or -moham med -bal cony -y ah -stron gest -rhy thm -unfor gettable -k p -ho bb -custo dy -greg or -r ita -aes thetic -il ation -sponsor ing -n ay -kid napp -sh s -ra jas -me g -signific antly -butt ons -la c -ver sions -essenti als -opini ons -k ro -d printing -wi dely -d k -ur an -y al -reque sted -c n -cur ric -plu m -gr un -v m -dev on -m yo -rel ation -juvent us -rou ge -min ority -min es -jupit er -n ine -oxy gen -fran kie -une sco -fab ric -disgu sting -sal man -dete ction -lan ka -d ac -ðŁĩ« ðŁĩ· -argu ment -shel ves -cel tics -rober to -pi gs -he dge -fau l -pow ering -butter flies -fi r -re make -att i -com o -emp ha -kend all -poke mon -se ating -d ans -bald win -ðŁij » -lesli e -one direction -ti mber -im an -fon t -e der -di on -ste ph -for mat -gre gory -pro p -he x -ru in -sor y -inf er -n aw -bar ak -sd gs -kar ao -lu sh -v ander -end ent -g is -a fro -soc cer -ay an -t uni -lun g -da yof -alex a -mar ath -addic ted -ag ile -hy gi -light weight -ì § -mand ela -jo ey -anc y -hu m -bi r -memor ial -jim in -ging er -v ak -jav ascri -cro ps -orig ins -d ari -pi per -im port -aggre ssive -predic tion -re pairs -cr acker -voy age -ni ke -mu mmy -linke din -country side -bor der -gla ss -per t -s als -sho e -autograph ed -wal nut -colle gi -sal ary -pa iring -ðŁĮ ¸ -cath ol -swee the -defe ats -streng then -roof top -impro vements -barri ers -ur u -t ally -ru led -ðŁĨ ļ -nai ja -emo ji -per cent -gi o -pro bs -on ce -adm its -pa ths -li ar -day tona -pe ters -cal i -cal li -mu g -o sa -ap h -ab y -hy de -eth nic -pla ins -ol f -haha hahaha -holi c -?! ?! -su bli -bl acks -mo t -gh ton -lo vin -b rent -bar u -l ati -de w -ate au -q a -pain ful -bu sters -st atic -ðŁĩ¨ðŁĩ ¦ -note book -out fits -si es -r f -floo ds -Ñ Ģ -thro at -su ici -ro vers -beng al -pre pares -blo g -mini ature -Ø ¨ -am phi -com b -r sp -in timate -green e -Ì ĩ -al tar -surg ical -ves sel -... ? -gav in -g ator -threat ened -z ar -rob bery -di er -promo ted -y g -x s -su bs -inter viewing -threat ening -do zen -me ado -water fall -nintendo switch -cal um -mini sters -dro p -univers ities -war ned -tac tics -ðŁĩ ² -refu se -ad ju -v ast -ðŁĺ ´ -mc fc -lib ya -no filter -distribu ted -re ser -ron nie -de co -javascri pt -mon k -intere sts -fle x -mar tha -sti es -oo d -ðŁ¤£ ðŁ¤£ -e un -b ali -g omez -sti mul -moder ate -d ity -ir is -stra w -consist ent -direc tions -adop t -sal sa -cro o -reco vered -black friday -lan caster -accep t -weareone exo -buil ds -free man -air plane -diti on -bel ong -jam ie -pit ching -li f -om in -cri spy -pre pping -ve g -chan g -accompli shed -graci as -dolph in -elec tor -culin ary -super bowl -wal a -pur suit -black berry -be an -cardin al -pro ved -immigr ant -stric tly -holocau st -pass age -ha us -cou p -pur se -har ass -< < -le ed -ado be -st ad -legis lat -par ked -pri yan -sil va -kri st -s the -fun ky -ig a -sett lement -ph s -t mrw -stre ssed -hun t -ho ckey -treas ures -cham bers -ol u -hu t -mar ley -tex ture -wilder ness -mm ing -poten tially -om aha -ju dy -to es -spo iler -distingui shed -feli x -ah u -recommend ations -zom bies -hit ler -tri ple -colla pse -motiv ated -ulti mat -gg ling -so y -ci gar -fo ren -vine yard -gl itter -fin dings -colon ial -hun ter -eri k -den s -beet le -lot te -sub tle -s matter -tru sted -experim ental -nam ents -ðŁĺ Ĩ -regi on -acquis ition -bre eding -quarter back -am reading -oo td -ru de -initi atives -st out -hy ung -out come -al fred -mic s -exper tise -bacter ia -pengu ins -jump er -valen cia -bar k -ing day -sell ers -contrac ts -hou ston -commissi oned -adap tation -swan sea -santi ago -common wealth -ju dging -sub mission -sco rer -tom my -ñ o -ex quis -fil ing -explan ation -alli son -wemb ley -ri dge -chev y -san tos -own ership -cogn itive -favour ites -sh ed -phil anthro -dele ted -go dd -s nor -gui delines -ff ing -je ep -cli ps -sw amp -an or -guil d -bol ton -spring field -munici pal -goal keeper -ye on -ðŁĺįðŁĺį ðŁĺįðŁĺį -ãħĭ ãħĭ -water front -gra ve -contempor ary -ar ity -ÃŃ a -sle eps -sy rup -al am -pi re -co yo -moto gp -ty son -kej ri -cir cul -sing ly -cr unch -complic ated -nostal gia -k op -mo ve -k ale -mac ro -mid west -h ans -tri bal -nu de -௠į -bey once -congratul ate -cat er -leagu e -ðŁĻ Ĭ -la dder -cra shed -tech nic -karao ke -harass ment -ro ts -experi encing -kri sten -ðŁĩ ³ -ðŁ¤ Ĺ -reflec tions -guin ness -illustr ator -ðŁĻı ðŁı» -cen ter -nar row -comm ons -regul ations -Ù Ĩ -har m -cro ft -cu ssion -hong kong -st ical -intern ship -zo e -cho p -hoo ds -estim ated -batter ies -berke ley -smooth ie -shau n -cro s -~ ~ -cam pe -hu mp -b g -proto type -cl ick -shaw n -re viewed -tem pl -p f -jed i -blo gs -ray mond -as th -ba h -av ail -scot ch -leaf s -nik ki -to k -hol low -ur ges -of t -un like -lat in -u e -cat ering -mil i -alter nati -ma ver -Ð ¸ -ag le -pre order -lu x -cu cu -ðŁijı ðŁijı -t art -âĿ¤âĿ¤ âĿ¤ -arab ic -rapi dly -ar rang -all en -travel tuesday -pa ws -flo ws -st ability -flu id -ca pp -can berra -uu uu -sp ani -demon stration -m la -plac ement -m w -presi dents -awe som -bever ly -ani st -ne al -father sday -referen dum -la hore -o aks -deb bie -half way -gho sts -de bor -matthe ws -fi at -t fw -pre sen -rob i -de d -bro ck -laugh ed -am ounts -bam boo -kinder garten -eat en -mtv hottest -break out -u sic -fra ser -legis lative -p ang -modu le -sam my -go ver -ear ns -expe dition -gar h -concep ts -char lie -la va -bachel or -veg gies -deter mine -el lie -un locked -fru it -dal la -cou pe -wash ington -depo sit -iv ory -pau la -chic ag -gu cci -ðŁİ ĥ -cul tiv -pier ce -li fted -stu mb -re cover -musc les -conduc ting -cb s -mcla ren -sophi a -cel lu -oce ans -up loaded -game play -mal dives -kim ber -avo i -rac er -ca ine -cav s -h ana -li ga -ra ven -inter vention -inaugur ation -oo h -at traction -merchandi se -tune in -li king -juni ors -int ended -att acking -aqu arium -i wd -comp onents -sur ing -cent u -yogur t -ðŁı ĥ -show room -op tical -ty our -ju dge -yi eld -an to -pl c -transparen cy -recy cled -chi ef -ar om -ambassad ors -plan et -âĿĦ ï¸ı -om ed -vaness a -cour t -mar gar -hal ey -v r -reg ina -pd ates -hi span -live stream -âģ £ -ya hoo -gal la -secu red -w ir -bene ath -off l -n il -am b -ye g -out let -u te -pe ep -lind say -bent ley -... ! -he el -trilo gy -vo s -ty re -there fore -tor onto -ab i -simp li -ja e -exten sive -eleph ants -s or -orient ation -im peach -re play -constru cted -peter son -pa is -por ted -custom s -colla p -ad u -high lands -sal em -shel by -ko vic -stra in -ro sie -sen ators -snap s -bo bb -suz uki -bla des -k p -lo lo -gener ate -si ght -ma e -struc tural -predic t -jump ed -ah mad -sun g -just ice -gla m -vol vo -jubi lee -de tention -lo sses -pu ri -every time -Ð ° -ra o -ed ge -li mer -rese mb -har old -re tri -sacri fic -surpri ses -am c -srilan ka -bar bie -men s -fin n -ag s -ukrain ian -em brac -î IJ -flav ors -hom er -lau re -ou th -pr iced -ver de -fir m -ah s -cu b -tre y -par anor -pro fit -in dv -who a -har sh -al ot -crit ics -hu bby -fi gur -gi ra -ca stro -chan el -in put -origin als -ten ant -yy yy -ture rs -lincol n -co on -lear n -ch ou -ac are -o les -din er -hy p -bizar re -mc r -let sgo -decor ating -ðŁĮ İ -al ison -ar vin -f d -reha b -mccar thy -lot tery -da h -minne apolis -eli gible -diagno sed -emer ald -destin ations -s ans -or y -bla zers -n v -ba il -digital art -no c -mal ta -sol ar -pi pes -alleg ations -no ck -po pe -bri d -premi er -n x -present ations -ef a -bo ws -val ve -opp onent -Į ë -visu al -ing le -cate gor -e ter -po is -dan i -at tract -neu tral -th ene -cra shes -fred die -ut ili -c st -awak ening -slo ven -quali fy -pro of -fair y -le v -fre ight -enjo ys -cup cake -flav our -â ķ -protec tive -ðŁijı ðŁı» -is u -ad mir -h mmm -continu ous -ai res -rap tors -showcas ing -y uk -pa ste -follow er -instru ctions -sp ru -@ __ -the o -debu ts -ve tte -sto w -es of -ach ed -sul tan -sand wich -som alia -franc o -car ne -flu ffy -al pine -jas mine -he ated -viol in -ple ss -divor ce -per former -phi es -port sm -dar a -kir by -lo p -chill i -for th -sky pe -ðŁĩ®ðŁĩ ¹ -celebr ities -ed y -ve e -po ison -ey el -gra bs -ssi c -un o -wester n -rail road -am er -numer ous -s v -fo w -fi st -âĢ ĭ -reque sts -mar tial -em my -accept ance -lau ra -ภ´ -er up -hyun dai -out lander -u tt -wrest le -esp resso -demand ing -g dp -geo graphy -sas kat -tro ll -confe der -su es -se m -be ts -t ful -to sh -teach es -col oured -gal way -mac y -dis orders -bb cra -at em -fen der -lit ter -e sh -provi ders -renov ation -nomin ate -ps g -nomin ations -jen na -shar p -some day -z ur -bra ins -che shire -pre y -hu go - ¿ -to ken -r v -car r -tac tical -zel da -kay la -fern ando -photograph ers -j our -umb rella -woo dy -congress man -du mp -le vy -ju an -d azz -sign als -la in -an u -mic hel -por ch -al den -sibl ings -y ale -pe el -sw ick -gg in -ll c -k ale -s con -il d -pat reon -re el -qu in -wit t -mar ty -moo dy -ton i -der y -g ators -speci fically -dd in -ly on -tr ick -meado ws -p j -bor gh -vi k -tu r -bron x -pu ff -lan tern -ðŁ¤ ¦ -g ently -be stie -fac t -refu sed -fas ci -mp y -ðŁĶ µ -cross over -mead ow -indian apolis -duc ation -sle y -loo m -mix er -new music -film maker -prosper ity -li m -week end -cre amy -neu tr -lu ther -h v -nor thern -tw o -h ra -cat ches -appear ances -ha bit -kitt ens -n v -illa c -inf an -regar dless -liz ard -dun k -cur tain -ac om -in tu -ve z -e min -fl ats -calend ars -em power -ru ined -hun gary -vi d -we x -u lum -aber deen -o sa -k t -ma ssi -se emed -s den -' ? -tele phone -de fi -insp ires -me ow -z ones -bl ind -pl y -tuc son -advent ure -ge d -oy ster -ðŁijıðŁijı ðŁijı -out put -tt t -metal lic -sma sh -ucl a -sco ts -perfe ct -lu cy -regular ly -sp ic -rel ative -ath ers -mis e -batt ling -deci des -mat a -occu pied -random ly -cat softwitter -gi an -ball y -al ties -al lies -im men -sy rac -ðŁĴľ ðŁĴľ -l lan -au r -k ut -lam ar -affe cts -n ra -star war -ðŁ¤ ĺ -sc ram -en chan -pro cess -luxu rious -ar ray -sher lock -comp ati -dor f -stre ss -m su -s with -sal a -sof instagram -fo il -under stood -qu ay -r p -c ade -ja w -en ab -en coun -ðŁİī : -do ck -satur n -mu ll -lay out -ra rely -happ ily -fix ture -or ph -over looking -her bs -m itt -pil lar -nol an -pe tty -str y -u i -mu k -o res -o vers -á µ -re creation -we sley -ri t -kejri wal -sto cking -g v -subscri bers -moo se -ma e -ber t -opp re -assign ment -u ro -high lighting -cal vin -we igh -cambo dia -av on -ke m -dis abilities -read y -char gers -p ads -iz ing -illi an -tru ste -col leges -associ ates -alban y -mil ton -cr on -bu r -har dly -si ghts -anti ques -e cho -surpri singly -ha iti -cap t -ph p -op io -ine quality -equ al -ken y -sch mid -autograph s -ren t -qu er -cit rus -challeng ed -te c -epi de -fe st -z hou -li me -citizen ship -cry stal -convin ced -mess enger -copen hagen -âĿĹ ï¸ı -war ran -develop ments -ï¸ı âĥ£ -fore x -hi ro -sne akers -xi de -vi va -stere o -bat ting -ss el -ho st -beng al -critic ism -q c -cr un -attemp ted -ry e -determin ation -cre ations -d read -label s -pos se -anc er -joh an -si ster -partner ships -les bian -k st -guaran tee -bar o -fix ing -ma son -m ous -chem icals -t less -bio diversity -par o -bhar at -ac ol -refu ge -en te -t iti -dys sey -respon ds -lef to -in er -se vel -rahu l -ol ine -frank fur -cho reo -enjoy able -c to -strugg les -wood land -heavy weight -gen s -rece p -ac cred -ðŁĺ ¡ -trans formed -list en -at op -n k -sur ge -be re -gover nor -prison ers -clau de -t ill -mu lator -emo tion -water loo -star t -ðŁĩ º -clean ed -grand mother -fear less -afric an -astron omy -ðŁı ģ -à¸ Ļ -the world -su itable -anth ony -k and -tt en -meaning ful -disc lo -jaco bs -à ¸ -tom linson -ghe tti -ty pho -sub stan -as co -te k -nag ar -mu d -am on -vacc ine -f ty -fle sh -no el -infl ation -portu gue -glam our -tra m -v re -te qu -roun dup -w yn -rejec ted -mosa ic -si ghting -cal f -o ta -com position -go pro -gonz ale -e ed -b ard -tu e -effec tively -we en -al to -ri bs -rel ate -thir sty -fu rious -di m -ch ard -perfu me -s ny -chur chill -k of -master class -wa ve -ðŁĶ µ -er in -own s -to be -sk illed -te m -go f -en i -tor i -cra zy -l ick -resi stant -ici al -ag ar -! : -g ali -del aware -bl itz -koh li -pu ck -avail ability -hi malay -influ ential -cro chet -victor i -read ing -ho bby -vie t -j as -en gra -sk ul -ðŁĩ² ðŁĩ -educ ate -tech no -distric ts -blu es -se tt -seven th -lear ns -ee ee -apocaly pse -hang out -cru el -mu tu -bru h -hel en -she er -c tion -kle in -tex ans -ce real -sh ine -ne red -gra s -am bro -f ella -hin du -matthe w -li ma -mir anda -je wel -so ho -euro vision -neighb ours -chand ler -be sides -ðŁ¥ ° -ast ros -thu mbs -ren ault -ra ve -hi red -ðŁĸ ¤ -it ary -z or -bla zer -k ine -ea u -kat y -dc comics -pe c -ro dgers -water proof -kill ers -super int -pre serv -as so -brew ers -promo tional -sc am -villa ges -sket ches -ju icy -for life -au dit -so lo -fundam ental -len e -philipp ine -t end -conserv atives -sponsor ship -dd le -a ine -h tc -os i -hul k -w af -à¸ Ļ -evalu ation -ant ine -sle e -robert son -roo sevel -ag i -sophi stic -emplo yers -bubb les -ko wski -inter action -sh u -bou le -ic an -j are -han k -leg itim -k nicks -kar ma -recei ver -per ks -u h -sta ir -sun i -labor atory -gra ves -voc als -oo t -c ture -thri ve -tic o -ãĥ ³ -b w -carto ons -mcdon alds -dra w -y ung -pl er -li d -eth ical -groo ve -ent a -international womensday -pat ron -wor ries -ðŁİ ħ -ðŁij ĭ -ka therine -di az -tor i -bach chan -tru st -min eral -ic om -buil ders -bor n -col oring -lat te -ca se -revolu tion -tra der -ox id -chi pot -inst antly -sou thern -se hun -pro b -her nandez -lis bon -hu awe -p ong -me a -ro oney -wheel chair -ke en -be tt -cor in -regulat ory -di splac -ka ren -sch em -sun sets -wh ales -remin is -he p -hi de -mar cel -pand ora -do yle -th fc -ot to -no kia -trans gender -ko v -hawai ian -sha ve -so vere -exc er -nick i -pu g -st or -ro th -wee t -leg al -dig nity -po w -hom age -ðŁĩ³ ðŁĩ -s re -can on -la x -wo ah -quart z -ñ a -gree ting -flick r -nai robi -advoc ates -an c -vi i -eu gene -th ra -c re -el an -pen sion -th letics -ton i -re agan -x v -sto re -ben ch -har lem -todd ler -sent enced -âĻ¥ ï¸ı -glob ally -che aper -u f -ma m -nic o -ik u -tho u -ni st -dam i -th ala -rho des -sal e -bow ls -â Ī -las vegas -sanc tions -adm ire -mat ched -un able -travel er -ele ven -straw berries -âĢĶâĢĶ âĢĶâĢĶ -stu dio -jac ques -im s -valu ed -s no -cheese cake -n xt -e os -s x -f x -ton ic -hat ch -chic ks -gra ds -hand ic -r ory -as p -ri pped -denti st -n en -lu fc -âľ Ĭ -di ge -hop kins -sher man -f da -for all -ash ley -str and -h y -liqu or -buffe t -ess ence -phar ma -suri ya -ðŁĴĻ ðŁĴĻ -festi vals -z an -re fresh -pur ple -uni forms -kenne th -= ) -as an -hel sin -transform ers -k ali -person alized -chal k -bo bby -â Į -the mes -depar ture -prin t -illustr ations -qui et -agre es -gri ff -Ø ³ -m iti -toge ther -conven ience -ab ar -car lo -turt les -info sec -some what -ar lington -scholar ships -emir ates -mu ms -st ella -auton om -fe ather -g ore -nom inees -fragr ance -Ñ Ĥ -w ong -thea stern -gr e -z illa -is i -bump er -go o -do zens -ab duc -âļª ï¸ı -o ils -don ors -sil icon -i pod -fortn ite -ðŁĴ ¨ -tor o -spark ling -consci ousness -pal a -nu m -moun ted -ffin s -thi eves -team mate -pra b -om er -ta pes -bo d -mit su -ste w -e re -p bs -tu sc -lo we -ra de -parliam entary -h m -ed gar -ðŁijĩ ðŁijĩ -to a -a gh -hon i -s late -ge ek -ap t -hard t -ta p -horiz on -grow th -make over -hi l -paper back -id an -reha bil -gi u -possi bilities -let tu -fran co -bo ss -ach er -does nt -mo e -ta ker -huss ain -ml k -di l -th ia -ham a -real ised -raven s -curric ulum -m ith -k night -ted x -r v -isai ah -cumb ria -birth days -f ing -pre z -mu barak -exquis ite -clear ance -y en -par i -ev o -à º -modi fied -app lying -imple ment -disco vering -chap man -indie game -dis k -crowd funding -mach in -li vel -sty led -âĿ Į -ma king -rehear sals -nutr iti -subscri ption -and ro -cre ators -car ries -ky lie -cam den -appren tice -tax pay -c ca -tuesday thoughts -pis sed -er man -dete c -freed om -mer i -.. ! -psal m -sun light -per spec -be ings -book store -rock star -fun ctions -p ence -fav es -z n -obam acare -sp ill -coven try -pi geon -pi vo -ba it -kol kata -av al -don or -wa h -privi leg -tra ditions -rajas than -ten ess -portugue se -yn es -tack les -de fic -tor n -pol ling -thor ne -in a -bened ict -bar ry -cal ories -ver dict -save the -nor ton -off ice -main stream -impro ves -fr on -respon ding -real tor -scotti sh -de clar -r l -shi v -supp lier -re sting -swee ts -qu i -. â̦ -whit ney -startu p -thank you -teach er -h alls -ha ve -hand made -pro ving -quar tet -ro chester -li an -virtu al -mend es -of icial -mid lands -x box -meas uring -o vo -accommod ation -bri des -collegi ate -intellec tual -in car -ni ag -ðŁį · -sf w -coco a -co ats -civil ians -presi dency -mat rix -sweethe art -tri athlon -wag ner -ra dic -plann er -the o -execu tion -k um -the walkingdead -sc ar -ro tation -blo gging -bom b -re son -bb les -st are -assi sted -e do -brand ed -war nings -thor pe -acknow le -satis fied -sho res -ri d -dor a -phys ically -bi gh -appro ves -ha h -ric al -vers atile -pret end -lu m -ab hi -ye e -sp it -ãĢ Į -dj s -ash tra -j t -ven ues -gram mys -cy clo -tr acker -over watch -repl ica -el yn -nr l -lind sey -hom o -ballo ons -kitch en -si s -am os -ende av -ðŁĴ » -a rec -thu g -hoo ked -hr c -new york -bur gh -americ as -patric ia -ug u -ap athy -ha st -psy chi -cor k -petro l -ðŁİ ¬ -ak u -po pping -psycho logical -au x -g ma -cad illac -wa ste -auth ent -bri stol -nam e -que er -to ber -jer ry -com in -ch ant -privileg ed -op ar -lo ser -tex t -mar ker -stri es -equ ally -ak i -christ mas -gare th -ble w -em ma -imag in -se als -che at -conditi oning -j ana -ren s -dar ies -o asis -disc ounts -coun cil -i ka -shir ley -vou cher -al ps -w x -q r -dri ft -attemp ting -ut c -Ø ª -gonzale z -m f -jo ker -paralle l -pa re -aspe cts -proce du -n p -am a -rale igh -bright en -gu ire -radi ation -cre scent -ho b -il le -str and -v ore -n ard -che st -di wali -av atar -al der -d ling -pa thetic -ðŁĴ ĺ -spir it -jor ge -film making -ðŁĻı ðŁĻı -challeng er -b j -down town -ht ml -ade qu -twi sted -in ely -( ' -wra ps -oper ational -y ne -n us -mag net -market place -health ier -snap shot -dam on -inter ven -fe derer -ow ls -biscu its -j p -ro deo -blue berry -lec tion -fron tier -summ ers -re yes -pede strian -go l -caf fe -refur bi -bou lder -me ghan -speci alty -la ss -e i -suspec ts -appro x -rr r -ra th -st im -cru shed -he d -wh un -lo af -cr ore -river a -gene tics -so ck -wa sted -ny pd -answ ering -do ve -bel la -ol in -du n -fi ji -pre tty -spar kle -y un -j d -euro pa -li fts -am ber -mu r -te k -boy d -roy alty -in do -ri b -go tham -ti est -inst alling -ke mp -the photo -cos mic -) )) -whole sale -loy ment -eas y -su ing -sett led -af p -pro ver -suppor tive -re es -ne ath -deli ber -c é -wel come -pic oftheday -new born -pat ty -sun s -si est -fl int -diffe rently -spo ilers -troop er -g ins -cor y -look out -equi pped -ta pe -to by -resear cher -u sh -ke yes -al ma -induc tion -k w -k har -sl ick -bri de -e ur -cra ving -book ings -ch es -tr unk -vern on -sp her -cryst als -rel atively -pom pe -uni ons -val ley -par a -w ant -ok c -de af -ser gio -len non -sh ay -cr a -v at -he e -t we -liqu id -pol y -ðŁİ ģ -b ent -be aring -motor sport -bar be -te sti -han i -fin ancing -astron aut -water colour -ri sh -comic con -gar t -wr ong -ber n -it an -ste pped -fil ters -c low -me x -dem ons -all o -expand ed -comm and -et ers -go ats -si ri -y r -pot tery -mari on -i le -el an -san to -person a -du ke -hom eless -li ghted -wheel er -chang er -cab bage -sur real -ham burg -sma shed -str an -k not -i art -ob i -be dro -di al -th ick -b ingo -fu s -vacu um -con ve -ati ve -accur acy -accoun t -re fer -ri z -spider man -ban a -r ite -u b -ab s -medic al -lin k -si em -> >>> -be tra -g lowing -re actions -pupp et -spa ghetti -ang s -re medi -pray for -roy ce -char lotte -£ ï¸ı -gh et -affe cting -ro de -soci alist -mo ses -az i -o it -re porters -cd t -ap ing -s nat -minim al -wa ist -sie ge ->> >> -ri g -schmid t -h are -ec a -thor n -he mp -es the -cly de -th a -don ut -moham ed -ling erie -le gg -carpen ter -perform ers -de a -imag ined -cur se -la sh -ct r -agu a -ro ar -gr i -ro le -j fk -resur rec -roosevel t -maril yn -sm alle -will is -wa ited -char ities -the res -li k -origin al -car i -c ough -cru ci -la gun -contra st -k ou -arm our -re moving -t ent -maz da -bri ghter -thi ef -cor ner -tequ ila -buzz ing -al bi -p am -az ure -disc oun -pixel art -possi bility -ham ont -tra des -bu da -hi ve -vers y -fin ch -tran spa -em i -terri fying -in qui -g ba -sub stitu -collec ti -plac ing -cin dy -k ann -pa tho -diamon d -mour inho -guine a -anthro po -air s -pu mps -ì ļ -pas o -cur ling -an ita -resi dency -ne wh -jo on -cigare tte -que ue -ex trac -gam es -spl en -ex press -public ly -bon nie -tribun e -ba ek -reason able -c or -timo thy -she eran -Ä ± -f dn -su tton -concentr ation -carav an -x avier -al ger -cy lin -freder ick -ner ve -pe ak -lettu ce -j ail -pre game -kav an -up graded -eco logy -squad ron -gra pes -goo g -pa stry -ðŁĹ £ -ãĥ¼ ãĥ -mil ano -awa z -presen ter -ðŁĮ ¿ -her d -king s -tem plate -fl our -h v -k ley -i ya -spe c -at er -frankfur t -co ch -tex ting -del i -communi st -regi ment -ele anor -anticip ated -ðŁijĮ ðŁı» -thephoto hour -ran o -survi ving -simul ation -daw son -ar in -aqu a -m or -â̦ . -cin o -ira qi -sh az -dun dee -we s -dra u -hann ah -s news -occup ation -ste en -x m -ang les -sett ings -gur u -kno x -or ca -shap ing -w ent -dr illing -zz ie -br i -kis sing -fin d -ma ine -âŃIJï¸ı âŃIJï¸ı -ðŁĮ į -lar ry -bu sted -ta vern -acti vely -- " -replac ing -no d -un lock -. " -âŀ ¤ -affili ate -to w -l n -happy newyear -di f -j m -green wich -contro versy -daw g -con dol -sav annah -compens ation -touch down -te o -amb itious -embro i -convic ted -iart g -bar ack -tr ance -testim ony -au dition -thum b -my ths -be x -que z -orch id -den y -entit led -hoo d -gr ant -in box -blue jays -r illa -smalle st -bur den -in famous -divi ded -boun daries -t ter -el t -wy oming -be verage -me sm -one ws -budd hist -y ana -as sad -is ms -bar rett -predic ted -back to -tw it -e there -cap tains -escap ed -ay o -lam borgh -gard ner -la ps -k al -adverti sement -insec ts -na po -am en -ac y -r and -g k -te h -k athle -tri dge -pan cake -at ro -pyram id -bu la -paral ym -gau ge -en cies -tom y -biscu it -but cher -quali fier -coun ty -ke i -po ols -dar ker -should ers -ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸ -sp re -( " -writ ers -g m -ðŁİ ĵ -k nit -hu ff -mt b -philli es -o st -den is -g art -licen sed -inter face -ex cel -d well -from the -co fficial -az zi -appear ing -fore st -n ana -ke ith -manufac turers -beck ham -) ? -e se -col ony -delic ate -ut ter -mc in -transpl ant -pre ferred -par d -ari e -hu b -po ds -perspec tives -pic t -del u -app er -be than -p mo -crimin als -femin ism -sh ack -circum stances -fel las -prote sting -wa x -sugge sted -t ator -dre w -om ni -fa ke -kath y -re b -del ine -ber ni -mi sty -ðŁij © -er able -break through -men swear -millenni als -chan yeol -la z -inser t -rep lies -phra se -n x -ihear tawards -audre y -gran ite -rac ec -ori e -ter ra -innov ations -britt any -at eral -pe ar -bio logical -sh ments -institu tion -m sn -frequ ency -d man -neg lec -t f -ste fan -fox news -ty po -comm s -sequ ence -car men -wh ites -econom ist -exe ter -se um -re sorts -cas ually -bun de -divi de -Ø ¹ -ga g -cre ed -reti re -cau cus -rapi ds -wrestle mania -tul sa -sunder land -fundam ent -o di -yam aha -v ary -intri gu -el se -be acon -an gie -tra ded -tran sm -g ents -kn itting -gal ac -ðĿ Ĺ -u to -sea side -hol t -re rs -far go -train ers -mon soon -b ale -sou ght -mad die -h w -co li -fr an -fav s -ðŁĴ Ķ -int ent -r ally -s bs -lemon ade -barack obama -bre ad -stick y -explo sive -chel ten -t j -as soc -ram en -hom ies -v log -mi ster -lor d -âĢįâĻ Ģï¸ı -aly ssa -sketch book -ru mble -cat ch -migr ant -discipl ine -un likely -chronic les -fl ora -sl ams -am id -s boro -coo p -ju mps -tran qu -mel is -sof ia -en ri -gab e -sy ri -nicol as -cha i -w v -be cky -foo ty -ta o -suppo se -ðŁĺįðŁĺį ðŁĺįðŁĺį -plu sh -ri sh -ðŁ¤ ĵ -k ha -satur days -ac cent -he c -lim it -carl ton -wi red -taylor swift -ðŁĺ ij -sq l -har ro -recipi ents -g at -go p -th of -amaz ed -gh an -ðŁıĨ ðŁıĨ -por to -cla re -di stant -na c -ohi o -ðŁĻı ðŁı¼ -mt n -anti bio -dino sa -me sa -par tial -b v -lear nt -lov ato -questi on -ex tract -gossi p -gi bb -niag ara -ðŁij ¨ -displa yed -so oner -ste vie -nug gets -ml n -bro m -tur b -give aways -stu pi -bl ink -c ili -conven ient -mo h -vi ve -f ric -cau se -cham ber -cu les -ne arest -is se -small biz -t j -canadi ans -smar ter -bra sil -ra re -que tte -w ha -cand le -at omic -ðŁijį ðŁijį -warri or -relax ed -stri ps -ne ur -k ka -r fc -jen sen -reco vering -respon ses -sal am -ortho dox -acti ve -ell ers -n it -âŃ IJ -metro politan -centu ries -vi da -gra ding -transpa rent -sim ple -do ts -superint endent -elev ator -autom ated -red skins -ima m -summer time -jona than -ge aring -michel le -confl ic -m ice -to te -publi sh -pa x -) - -na iled -á ´ -tele scope -ser bia -ba b -ape u -st ically -sen ti -r ats -isol ated -grou p -hat red -paranor mal -stan ley -ali on -safe ty -l s -ठ° -nex us -alexand ra -mas ks -+ + -tr on -au k -brother hood -brow se -mix es -sim one -mu sk -appro ve -lo la -ex p -per th -fu turi -un seen -d m -chel se -sc outing -o we -portsm outh -k ram -mi ze -di spen -su p -d lc -adver t -tere sa -is le -cy cle -met all -shi elds -marin ers -ra z -ing en -fun d -an go -jon es -o ka -mad den -broc coli -domin ic -situ ations -mer o -cric ke -puni shment -d b -sha king -ðŁĺ ļ -m q -ari ans -le h -cla w -we ds -d ure -ni el -j elly -gour met -tra ders -le vi -w ages -kne es -wi se -heaven ly -avi d -melo dy -z ack -ban anas -apprentic e -pro p -fun ny -o de -respec ted -me gan -fe wer -dra fted -med it -gra pe -us army -cru sad -vo cali -prepar ations -non sense -us age -th r -ro th -wiz ards -insi de -promo tions -mon a -red sox -si g -eleg ance -ch ia -univer sal -ãĢ į -ra ja -un ga -pol lin -filip ino -ak a -t sun -ik on -bi king -decor ations -z ac -cade ts -hum our -ag m -re ppin -vac cin -elo ve -u w -dia be -galla gher -az er -do l -a while -pro minent -wel sh -t ann -' ) -bi en -wa g -in al -c wc -wic ket -ur st -q anon -x e -out door -dun n -star r -co logy -ric ky -u efa -reb ounds -s music -inf ant -ðŁĻ ĭ -so p -u mber -hand ing -beg in -sor ting -ha sh -sp ati -re k -buda pest -black hawks -dele te -ro m -can did -auth ori -de bris -spe cul -inter section -marri ott -im ran -ðŁĺģ ðŁĺģ -cru ises -ram sey -rafa el -aware ness -vas cular -beyon cé -ru g -ðŁĺ Į -festi v -ar am -s able -bas il -p ill -flo oring -un beaten -implic ations -u f -w ound -for ge -poin ting -po ts -popular ity -ðŁijı ðŁı» -mani pul -s lots -deb ates -abs ence -ver mont -never forget -wri st -gl oria -ren ce -hu sk -mel ting -ðŁİ Ł -br aces -tim ely -transform ing -am ps -ma k -po e -ah an -gener ally -nd p -ale ppo -unic ef -pro fs -nor d -ma sk -jackson ville -v v -sh ells -bloom ing -oper ators -char coal -ne ville -ma gi -chi p -sam a -ir an -re forms -accu mul -ru e -æ ľ -web sites -ga on -devast ating -sto s -glaci er -ra pp -chipot le -pr a -or ous -rom ney -seas on -decor ative -c isco -dit ch -compla in -ll o -assu me -ðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ -n els -cent ric -ft w -car rots -tat a -can ter -per ience -li ers -demo s -bl unt -oper ate -reserv ations -le ah -sub stance -di son -an te -elec tion -v ue -squ are -non profit -ca a -f su -y am -ãĤ ¤ -v ladi -comple tes -mar i -philli p -ne ill -er as -ka it -men do -mahar ashtra -g p -dan e -provi dence -ther apeu -juven ile -me mo -in corpor -aa aa -seven teen -teen ager -à £ -or ns -wi de -cu teness -tw d -ff les -bar a -com edy -over time -y az -bar on -unemp loyment -ðŁij ĭ -exter ior -den se -cent res -match up -history month -artif icial -qu it -e sk -war n -cr itic -j af -ðŁĵ ² -inform ative -fu els -recy cle -nam ing -stri pe -sol ic -mole cular -dee pi -con vo -s sel -na e -de scent -ti z -accoun tability -ter ry -r ito -sl ay -em o -dem ol -sens ation -co v -tor e -round table -y ol -excu ses -ॠį -tur quo -hh hh -pod casts -cele b -me ssi -li o -man n -contribu ted -u z -gener ator -ele ts -veg gie -indu l -en suring -detro it -pun jab -tran spor -instru ction -ad d -por cel -pan eli -cir cles -persi st -clay ton -sp n -dog softwitter -is nt -sp r -retail ers -p w -hun gar -el ena -mon aster -gu atem -je ssie -an z -ra shi -fle e -car ving -fau x -l al -hen ri -d jo -du ll -s ana -lar a -glo be -cri mson -com pass -pau se -na b -lion el -ba ths -u fo -invent ory -sin gh -sat an -ðŁĩ ¸ -ce ments -in form -gener ated -bi den -av g -tas ks -de er -sa u -ja iled -pa stel -sc c -na il -steel e -per is -lamborgh ini -pur sue -mar gin -u ch -bo sch -dra in -cl ara -bo m -lat ino -web ster -rose mary -r ha -s oun -billion aire -not ch -percent age -con or -' " -hom es -earth day -h ort -big gest -di sin -wal ton -edit ors -im ma -om ar -equi valent -pharmac eu -ah med -cam eo -han ni -under rated -ge ment -micro bi -v oo -honor able -obe sity -âļ ¡ï¸ı -limer ick -invol vement -st agram -boule vard -bur g -blackand white -liber ation -fi ve -inter im -sm m -rival ry -cap abilities -stat ements -thu mb -ve d -sw ans -bar ber -e que -seren a -hel m -noo dle -sam pling -n awaz -sing le -thunder storms -sh on -in ev -ë ¯ -to pp -orch ard -bi an -ðŁĺ Ķ -door step -salv ation -marke ting -r ons -cle mson -ra vi -in take -stand with -sin a -ha iku -ple y -elector al -ph illy -la ys -electr ic -cap turing -u pp -er gy -believ ing -cul tures -es day -inva sive -ed ed -spee ch -end ur -viet nam -boy cott -pe de -deli ver -ðŁĴĸ ðŁĴĸ -mer chant -st ir -den ies -poc kets -o ti -cu ddle -ro land -mm ed -den ed -lear ners -hoo p -sour cing -h acked -di m -environ ments -ben son -jud icial -wor cester -pear ls -govern ments -arri vals -cor ners -tun ing -la bour -y m -or dering -le wi -i fe -hygi ene -thou ghtful -indone sian -campaig ning -princi ple -assau l -ru bb -at v -wil ly -en tre -il i -ph on -du ties -âĻ¥ âĻ¥ -sn akes -lo op -am ar -conver tible -bon ding -ment oring -max well -ethere um -destro ying -ax is -ca iro -fin nish -sho ck -ðŁĺ IJ -cal eb -com a -pe dal -co re -contin ent -el son -temp o -helsin ki -ac p -tack ling -st ated -bl a -dou b -sma shing -a ja -camer on -disru ption -warm th -being salmankhan -bullet in -o de -syrac use -ar an -mc gregor -bul k -an ton -confir mation -sp ine -im ran -instru c -jac ks -chi o -pal m -str e -embarra ssing -un t -elimin ate -to ss -c ise -a ws -oni sts -sh inee -jo s -ho se -li vely -opp onents -mo vements -recogni zing -sandwich es -sh akes -exerc ises -se at -profe ssion -merry christmas -lu gg -adopt dont -mar vin -byr ne -un le -he t -ku wait -rah man -aspe ct -humb led -gen es -f and -long time -) ; -cam pu -an gus -ðŁijį ðŁı¼ -q uran -sle eves -s lic -¸ ë -twel ve -your e -i ke -go gh -b st -dic tionary -reflec ting -to on -yar n -em bed -ðŁı ´ -re serves -floo ded -ver iz -du sk -estab lish -pro li -au d -ritu al -or bit -declar ation -recor dings -cam o -cas sette -good luck -cu tter -bo p -b ho -che ating -paci fic -ma res -tim er -col t -tr ous -tomor row -han sen -ci e -w ang -ban i -circu lar -ac ute -far mer -co ys -p se -ir ving -w j -haw kins -b ison -ur day -cru ising -o te -k ath -whi stle -your selves -ant is -sla sh -thorough ly -ke sh -ser ie -ex em -en ig -guil d -sh red -ho gan -ap o -ä ¸ -pu zz -ne tball -au ssi -panor ama -ws j -av is -ar ming -hum ph -brow ser -cri es -fo ggy -mat te -ðŁĮ » -it er -tal lest -by ron -cap tiv -je su -any ways -flag ship -p ton -we y -fay ette -financi al -f oul -solom on -jenni fer -cucu mber -ar gue -tex tile -wrest ler -john ston -pa stor -ðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ -cac tus -edi ble -re served -ric hie -met res -ingredi ent -h ella -un to -ch ol -cele bs -po ets -gra ham -hay den -coinci dence -b aw -communic ate -flet cher -/ - -tole do -ecu ador -coun sel -s laughter -line ar -at p -os u -jo el -ev ed -conqu er -ru stic -plic ity -recogn ise -room mate -cr acked -jas per -ph er -ðŁĮ º -wo ven -mo ist -ff c -ste ering -ni sh -stand ings -frequ ent -ar di -haz el -as msg -bau m -d art -si dd -nat h -ch ero -card board -c ss -n sfw -pa ir -ðŁĺį ðŁĺĺ -occur red -homeless ness -mal one -ph e -xi a -pad dy -decl are -theat re -b f -per sian -ta d -ax e -susp icious -lam b -mu cho -sen ior -st as -k ite -st ing -gra d -k af -wat ering -Ø ¯ -spi ral -th ms -educ ator -jer ome -of c -clo ck -su l -pe mb -.... ..... -park way -de aux -restric tions -m ons -need le -e j -le agues -water melon -am an -pl enary -max im -w ab -coming soon -bry ce -vi gil -super market -fortun ate -turquo ise -presi dent -li v -inter ns -feel in -fix tures -stun t -st aged -premi eres -lo k -prac titi -shor tage -log ne -ve c -con cor -roc ke -li g -com posed -syn thetic -di p -cam ila -ch is -j ou -su san -eye brows -supp lement -satis faction -moham mad -ti bet -house of -pu n -as sam -shado whun -psy ched -se duc -mand atory -her bert -sc allo -stream ers -proto col -block buster -produc es -sch nei -lau rel -tri be -time hop -pl a -mod elling -tv time -mtv stars -wi dow -me tric -ch am -con do -flow ering -ale c -d ms -inten sity - ¨ -mccar tney -islam abad -k b -f fi -ph al -anal og -f ond -h acks -positi vity -treat y -sub marine -conne ct -sel en -categor ies -cu b -organi ze -si k -quote oftheday -remin ding -am or -loc king -ðŁijı ðŁı¼ -comp ound -et te -b out -rec ur -fe rence -mi zz -tren d -hip ster -for tress -forth coming -preli min -o dyssey -ang p -del ici -even ings -ðŁĶ ¹ -i q -d w -da ir -kathr yn -christian ity -moon light -ha b -wh oo -f bf -se th -genu inely -pa x -char ity -deplo yed -b nb -bu cs -ju dg -con ge -plant ation -im press -car a -sc lub -sco py -land ers -compla ints -b ama -re build -x y -real ism -sh our -le in -brac elets -mer a -assas sin -an chor -ðŁijĮ ðŁı¼ -lin en -con fron -chronic le -comm ent -cat alog -il les -gor ge -me try -jung kook -love my -sent in -se em -fit ness -alli ed -ts man -digital transformation -pr an -lo ft -min ton -alden richards -en vel -cher ish -certain ty -zz z -rhin o -per kins -en rich -cape town -ome ter -sec tions -ske leton -def enders -ðŁĺ Ŀ -pen c -bri t -ja h -capital ism -ðŁ¥ ĩ -baz aar -re me -ex t -kk k -conver t -stor my -b ye -kar an -chry sler -ad os -pre ssed -syn c -ation day -dang er -bad ges -refu ses -em powering -ly m -ex ports -adoptdont shop -ðŁĩ ¯ -th c -awa ited -focu ses -fin ed -o at -haha hah -âģ © -n family -fi ona -luck ily -thr illing -ty ping -out break -di es -he u -craw l -ne sses -o ath -scri pts -gee ks -ðŁIJ Ŀ -p b -mathemat ics -al is -________ ________ -gymna stics -acti vism -recommend ation -gre n -wa in -cour ty -n apol -cau li -hor nets -g als -jo ckey -dir ty -at ar -enor mous -pe st -greg ation -an os -ii ii -def ends -black historymonth -at x -mb c -lugg age -wit ch -co b -la sts -cu m -gg g -ba thing -n ar -ce bu -ðŁį ĥ -navig ation -min e -re jo -ðŁİ Ģ -gif tide -re ta -use less -pu ll -defic it -al lu -ati me -it v -tr illion -pu e -ac ies -proce dure -l ori -jen ny -c ad -ul ously -dr ac -promo tes -ing the -can u -woo hoo -na omi -zar dari -ts u -be ir -sd g -le ver -we ber -ab ud -lun d -crow ded -deplo yment -ter rain -ken ny -ho f -witne ssed -lo ch -j k -bul ly -w ren -poe try -do ff -ww i -mo red -din i -cul ture -promp t - ¥ -maur ice -to pps -r m -cor respon -ab out -jewel s -gi br -eag le -ðŁĺĺ ðŁĺĺðŁĺĺ -l ending -sou ven -ç Ķ -contemporary art -establi shment -j ong -â̦ " -gat or -patri otic -mc coy -v ape -human e -feli z -coach ella -re posting -ste als -fu ller -n ering -at ra -( - -bla ke -he ather -wor ms -discipl inary -rede mption -y ard -am in -" @_ -d nc -t ds -k appa -ne wark -comm its -spe ars -j ams -t and -msn bc -inter medi -aim ed -at ic -teen th -observ ation -kash mir -kavan augh -ou l -san francisco -re u -bel ated -cho w -pass word -st ills -deta ined -sar i -day ton -dar ren -itali an -ar th -amu sic -ar bit -w m -v m -he m -dou g -my r -a sho -pre v -vin d -bra h -sta g -ภµ -pre views -gu k -con taining -leon ardo -sad dle -ru shing -st av -lon gh -gam bling -ve gas -reserv ation -end ale -bal a -fl a -vari ant -he dge -bulgar ia -nat ali -we aver -sol st -encoura ged -ap c -as parag -ne st -cycli sts -fe l -ìĬ ¤ -overwhel ming -pey ton -j it -a post -mb le -ble eding -neighbour hood -a very -expre ssions -mac donald -gi gs -mon ds -illu sion -n ct -cam ero -over head -my th -ol y -vi o -et v -lau rie -unve iling -pri or -con n -iron man -di ff -day in -crit ici -con go -re vision -wal e -direc tor -p ines -black pink -gar ner -cur ated -manit oba -h ac -common ly -bar ton -.... # -mor tality -live smatter -philos op -shor ter -con vince -fre ak -vend ors -insi ghtful -el ly -sens ors -e led -s berg -weight loss -u kip -sp ur -priv ate -qu a -ss c -, ... -supervis or -advis er -amaz ingly -less er -at es -mah on -oooo oo -sar as -pmo india -waff le -un ders -toler ance -sculp tures -her sh -kno cking -smo ke -cathol ic -gri m -tra veled -fli p -ge off -dinosa urs -sle pt -scar let -ok i -compla int -ob sc -nam i -la g -cross fit -u fc -mc cain -refe ree -sad ness -pen ny -li eu -mo de -ki er -vol s -w is -el on -she a -ba o -son ia -cla ire -em manuel -moist ure -di gest -vi ii -t eller -ch on -access ory -night club -foss il -aw an -hu sky -ab original -brand on -ffici ent -cou gars -ste d -ad mitted -igno red -content marketing -ag as -v ase -execu ted -negoti ations -she ad -n and -tab lets -go th -ts al -d fw -on ep -protec tor -sp ho -gaz ette -andre as -ss er -comp ilation -ha v -contain ers -bro ker -soc al -porcel ain -hy uk -air ing -ðŁĴ ° -publi sher -scen ario -spart ans -re viewing -itu des -ed el -pear son -ba sh -mau i -a ad -ðŁĮ Ĭ -li u -ul ate -program mes -fav our -web design -real ty -motiv ational -cro sses -' ... -bus ch -adjust able -ar jun -mist ak -dimen sion -pi stol -weigh s -en y -unve il -indy car -gor don -f ade -fran ken -qual ities -bet t -loc ate -ker r -sp c -confu sion -ne e -luck y -bas es -dep ends -fire fighter -ol a -re t -mar oon -ðŁĶ Ĭ -w am -defin ing -whe at -bi l -é s -b hai -psy ch -ta u -ic ans -thi k -ob ile -inspec tor -ìĨ Įë -ill on -go s -ev angel -fa i -si st -voc ation -bur ge -chi stan -renew ed -enthusi asm -en ting -ag ri -ike a -m sc -aero space -sens iti -memo ir -hosp ice -co caine -der ry -mechan ics -Ħ ภ-tin o -reduc es -collec tors -in justice -supp re -v ana -ab un -nap a -su sa -os lo -e ff -en core -lic ence -ched dar -z al -moun t -ðŁĴ IJ -threat ens -!! " -archi e -fu tsal -scu ba -jo s -gn on -se xi -s official -compar ing -domin ant -tof theday -fa it -propos als -gi ft -y as -cn c -l r -ha b -reser voir -beli efs -gener al -mar ti -t d -est e -ì ł -wi l -ðŁij ¯ -ðŁĶ « -sp x -et work -excer pt -e instein -hir o -sil hou -team ed -per ception -corri dor -mental health -hin ts -ben ny -induc ted -sw x -wi desp -spe ak -cher yl -dru g -ðŁĺ ķ -h f -asparag us -myster ies -fitz gerald -off er -therap ist -care er -dam aging -ts d -per u -wei bo -y ay -phoeni x -disc re -mac book -bar ker -stig ma -sp read -roc kies -kang ar -bri dg -pa i -bi shop -ta iled -capsu le -ðŁĴ ĵ -ge of -roy ale -short listed -o ste -ash amed -ch app -key e -cl a -screen shot -austri an -nati ve -en ight -juli et -michel e -ðŁĮ ´ -travel ers -pi l -football er -win chester -ðŁĻ Ħ -azer bai -gold eng -organis ations -interpre tation -predat or -ofthe week -lo gan -pok é -mari e -cal la -t nt -cin de -ge tic -fit fam -gra v -ow ens -ðŁĮ ± -shoot out -sal is -commissi ons -co he -p tic -ni xon -hi a -amb ition -mar ine -cruel ty -t k -cru de -sal ty -jim a -mon go -ir ony -on wards -arre sts -strang ers -ig er -cycli st -ra g -exten ds -tra dio -bour g -mo i -el la -e able -lex us -au l -der a -histor ian -mor ton -ti ff -man ner -ko t -d k -po inted -mar qu -a an -en ey -du blin -on poli -em ili -secre t -fl o -âļ ¡ -ba j -ste ep -accompan ied -rum ours -dev i -purch asing -fi g -pu b -sch oo -autonom ous -go alie -x ia -autom atically -re vers -ter o -fu ku -titan ic -shoo k -sand als -see kers -exc av -nor dic -bigo live -ba ke -r att -z ak -ne p -ðŁĺ ¤ -cand y -billi ons -book worm -pp et -à ³ -sur faces -sc ars -phil ip -do gg -ci gars -co te -transl ated -cur ator -sin dh -han gover -bre wer -on es -el ton -ðŁĴª ðŁı¼ -mar cu -elli ot -righ te -di oce -ru ss -rail ways -grand son -as cen -apo logy -awa it -mob ili -re spir -parti san -oli vi -stri ke -yo o -white house -expre ssed -pu ps -bed ford -cul tur -fro gs -fly ing -cav ali -c ds -fri ger -street photography -re solve -tali ban -kan g -cru shing -ju m -ðŁĺ Ĵ -william son -tan g -cur ly -t man -veter an -fa ire -artificial intelligence -un anim -pre n -back drop -fr ances -oc cer -doro thy -work ing -ar thr -conver ted -day light -serv ant -pad dle -compla ining -thir ty -nad al -ak u -ibra him -ad dressed -p iss -green house -batt alion -si mulator -out lets -embroi dery -ðŁĵ ± -fis cal -ger ard -sas sy -ðŁİī ðŁİīðŁİī -vent ures -mer it -public ity -ðŁij Ī -sophistic ated -c tu -conven tional -condol ences -isra el -tra dition -ar an -te ss -gla d -ðŁĺĬ ðŁĺĬ -correc tion -ge on -am d -or ship -be ast -ch ment -ì ŀ -nic o -wk nd -wel s -cushi on -beli e -vo c -idio ts -under neath -pu ma -corn ell -en ation -lu l -swa ch -ab ig -u rer -mi e -form erly -ca f -er nal -chor us -juli us -sen ator -âľ į -wh ir -salv ador -ph d -uni fied -boo ster -graph ical -w rec -son ny -mi z -dere rs -s all -ven s -tusc any -wi d -y ong -kur ds -w az -trol ls -mac ro -cat urday -pre ssing -sa sha -cent ennial -gu sts -em c -be fore -den ise -cu st -ðŁĵ ¢ -lo oo -base l -eng land -y olo -ar du -manife sto -do ha -ì ľ -kni ves -bourne mouth -bi bl -bar b -al icia -Ø © -com er -cycl one -g it -ane ws -character i -vent ura -in tra -sf giants -hu t -be a -dar win -ell er -al v -re ese -bl y -kar an -conclu sion -man ny -fla kes -unite blue -nad u -co pp -ed ges -lanca shire -i als -o tta -philipp e -l ent -che e -ment ors -festi val -an ism -compli mentary -r j -pu g -d ine -we i -cli ffs -sar my -ti veness -treas ury -il and -after math -rabb i -ou n -bou quet -herit age -zi on -sur render -shen an -in ks -kar l -gh ty -pol icing -exam ination -ce y -per su -measure ment -hydro gen -lu han -âłĢâłĢ âłĢâłĢ -war i -о Ð -j y -fow ler -mis h -al fre -âĺ ij -bb naija -cat alogue -recogn ised -sa ver -hu skies -col in -mun do -si va -p ng -discoun ted -man utd -fre sno -de vin -prelimin ary -tro phies -pla stics -du g -pro cu -indi go -g ard -dy lan -pit ches -ground breaking -in son -bl ac -an thology -f h -expl ic -r ard -admi ral -so chi -la shes -splen did -en vy -ad v -sex y -festiv ities -stic king -bi b -thr ill -op p -ari el -botan ical -endur ance -fe males -br icks -vat ican -black pool -ber mu -br ough -roll er -bi d -sue de -sloven ia -mm ing -ml b -med alist -di ans -rehabil itation -ne on -s go -li thu -ram os -z ed -pi anist -inten sive -broad band -stu dy -peter sburg -lu ca -ah hhh -phys ician -dill on -tele com -gri ef -mu n -ac ro -si ded -s ly -blo ws -classic cars -tri um -ar gy -? : -h ri -marsh mal -âĢ ĵ -to pping -war saw -tran sc -preserv ation -b av -re friger -experim ents -ä º -gl it -sli ga -g age -fac tor -flav ours -br ony -sp o -cook book -carri age -aw ay -ny fw -on ian -w g -simp sons -ro lex -ðŁı ¿ -cro sby -ãħ ¤ -cre di -syn dic -pu bs -ali fe -poor ly -mac ed -ðŁĺ ŀ -behin dthe -w enger -n ats -ðŁİ Ł -rubb ish -procedu res -typho on -opho bia -er do -fu el -vi era -bu mps -millenni um -new zealand -lec tures -it on -mil ky -respon ded -ê ° -landsc ape -.. @ -bo ther -âĸ ¶ -z hang -huawe i -tu ition -s worn -in u -y or -pa olo -au ditions -ab il -malay sian -ho ps -fe athers -mp le -au ts -ã o -boun ty -ic he -ì ĺ -sh q -pin ot -ge ars -disapp ear -video games -t na -alzheim er -ðŁĮ ŀ -a ji -under wear -swit ching -sign age -o scar -ec on -dro w -cl int -pl ated -gun dy -emb lem -ho es -ici st -nel ly -juni or -road show -miner als -at le -alexand ria -ac claimed -v ell -shi va -ad he -en ne -amne sty -h ounds -councill or -ðŁĴ ¦ -aes the -part nering -influ enced -mag no -fl are -extin ction -civil ian -maje sty -va il -law makers -rac ks -mc c -ori an -sp ices -er rors -may er -co ca -pa i -s ooooo -reti ring -ba thro -ðŁĻĮ ðŁĻĮ -âĸ ª -su f -endor sement -buil ding -broo ch -pal la -arvin d -ag ent -kar ate -r hi -c tv -ta ine -um m -ba x -reig ns -uni of -enterpri ses -adel e -fla ke -at tire -bru ce -ba hamas -gra vy -sa in -che ek -tri vi -lo v -e en -bb lo -lady gaga -itt a -. "- -du stin -observ atory -eigh th -bloom berg -kh s -f cc -gi st -commemor ate -ve er -sexu ality -ed c -nic ole -vac ancy -u ser -son a -:' ( -dipl oma -t end -up grades -Å Ł -jura ssic -cardi ac -dr s -widesp read -à ł -dail ies -vend or -sim plicity -wi der -len ses -supp lements -de pos -ob served -vin es -parti ally -renew al -collabor ate -ali g -fin ity -ph u -zz y -pe tit -ðŁĵ ħ -z in -i gu -sm ack -fall on -ðŁĵ £ -back wards -comp onent -o so -compati ble -bin ding -zur ich -thom e -w ounds -ly ric -fresh men -sne aky -fi bro -di et -emplo yer -in sect -h ated -sch er -raz or -n sw -boo ker -califor ni -av fc - ° -preten ding -pep si -al is -un titled -k art -grand parents -e the -o ck -lux emb -visu als -small business -abdul lah -min ho -su baru -h ra -reve aling -heart breaking -clar ity -am g -sl r -** ** -âŀ ĸ -recor d -ici ary -min ded -ye h -exce ssive -knu ck -icec ream -tru th -ev ic -ta stic -ant arc -ren dering -, , -mit t -loren zo -st patrick -bound ary -zi g -vo cab -osa ka -fur n -tu n -gu l -s ounding -blo gger -utter ly -g af -adv ancing -l cd -mar gin -lifel ong -solst ice -sh ra -wa its -ple ar -bre ach -en ligh -ad er -itt le -c ation -ho on -stu died -?? ??? -k ash -ev angeli -ps l -wei ghts -met als -ty res -tur no -wi e -car b -g ale -se al -sun ite -am ic -patter son -á n -eu ph -up stairs -quali fiers -khali fa -apple music -ìĨĮë ħ -vau ghan -al ter -cru iser -mu a -t ana -kat rina -id ols -spo iled -secre tly -fi bre -part nered -um es -gi ov -com et -screenshot saturday -k eller -fil tr -fe t -con way -pe u -bad minton -gi d -m ound -don key -bu ff -lea ther -lar gely -bro ch -int ments -am use -r k -sto ve -impac ted -con t -cr acks -prison er -bar i -contrac tor -ori oles -domin ate -pol ar -am elia -dr c -ðŁijĮ ðŁijĮ -vi st -su arez -injec tion -blo oms -ðŁļ¨ ðŁļ¨ -sti ff -pay pal -sno wing -thur sdays -goo se -we dge -educ ated -weak ness -de cker -abud ha -bree zy -Û Į -hope ful -o bi -rai der -gh am -de u -se ve -par tly -fu t -infu sed -mer ri -than e -some time -hu e -me in -cre dit -sli ding -ran de -cher ry -dead pool -sh ol -ar am -under wood -sky e -distur bing -m nt -poli shed -guardi ans -ha dn -pic asso -ari us -ak shay -ir ri -j h -happ en -la kh -dal ton -at the -s well -mar sha -re h -cour s -j kt -top us -serv ice -r ink -hack ers -dono van -hor o -tc m -may hem -cha se -dev ops -ken sing -sc up -sh ere -quali fication -c live -ton g -n ancy -mar is -der dale -ber man -cinde rella -jol ly -ci c -loo t -collecti bles -hom icide -g ge -epide mic -su ites -mu ddy -gi mme -e rec -- * -tal la -lis le -embro ide -ðŁĩ© ðŁĩª -veriz on -ve ctor -be anie -arti san -ga in -flo res -vi gil -u so -ðŁĻı ðŁı½ -grin ding -gh er -air ports -respon sive -shaf t -can cel -ceremon ies -e me -at ari -bru shes -eag er -bo hemi -children s -yan kee -ma a -suspen se -mor an -mac ar -sun flower -cre w -vo id -ke ar -fashi oned -jen nings -sunday funday -sub missions -me ad -her man -wa i -crit ically -le um -baek hyun -for cing -co bra -ãģ ® -acqu ire -al k -ge ology -pri mar -import antly -ire z -bunde sliga -curi osity -sen a -stric t -con soli -win ters -ven om -chelten ham -ðŁį º -cen a -t at -ba in -glo ver -under cover -as ses -car n -memorial day -am eli -i rene -ch on -syn thesis -spe edy -mitsu bi -sla yer -compos ite -under stands -pe w -inter rup -hen ri -mor row -an om -thof july -g lee -thre e -ðŁĺ ® -and hi -ch att -renew ables -ye s -trans fers -!!!! !!!! -bab u -du ter -lo ops -pe ers -o ilers -pau lo -ic ation -h mu -war a -mer cer -hom eland -fu ji -ale y -year book -re m -re en -ab sur -bo is -] : -caes ar -shot gun -kur dish -o ren -ra e -anci es -ty pic -f h -def ault -re plic -lu k -trans actions -r ys -infan try -ðŁį ¾ -cho w -chick ens -ba gh -wy att -ay e -gg i -bre ws -ed itions -mi ra -commen cement -pre su -peris cope -ic hi -guatem ala -zam bia -pain ts -wit ches -wan i -un dere -cro y -vo ws -us mc -hear ted -theat res -shu ffle -le vel -mul tic -squee ze -fer n -app et -post al -mal t -on board -ld nt -co o -s sc -k ac -ðŁĺ ĩ -sc rap -mar cos -deal ers -ann u -mill er -co ve -ul ary -vladi mir -be ef -th ur -pick led -se same -bengal uru -mo tt -kathle en -hi st -no tor -dr ank -du chess -snow fall -e ff -tin y -j n -sy our -speci alists -scot us -bay lor -eve rest -mali bu -pre m -harm ful -l ali -b ates -g ye -differen ti -and ra -geome try -el over -black out -== == -ko ta -inter act -asi an -la yo -samu rai -fi del -exhau sted -gla di -pd t -spher ic -anti qu -guit ar -stu ri -ho pper -ang le -f ills -sla p -mi th -rod ney -ong i -in som -pre venting -cassi dy -ap ho -ore gon -lo in -ham mond -contribu ting -f n -gar ri -ori on -comp elling -escap ing -aim ing -plu mb -bi stro -be asts -concer ning -bo e -do pp -shop local -stumb led -âĤ ¹ -naz is -âĢįâĻĤ ï¸ı -gest ure -war ts -us open -hi ggins -char li -hang s -bom bers -° : -fe eds -c ch -st il -nic ola -ðŁĵ º -clam ation -tro pic -af ro -ou k -expen ses -der rick -al ine -fa w -reg ard -im er -sat in -thi um -ry der -pear l -te ss -mm mmm -sen ses -ðŁĩ ¹ -positi ve -exhau st -occu r -nor ris -lil ly -is les -direc ting -yo fficial -count less -sam ar -on stage -flo ck -mir rors -arch er -mo i -k d -vi v -in os -si kh -le i -sen sory -br its -kno x -chest nut -op y -coli seum -z af -di vin -adap ter -:) )) -tem ple -ku n -hel mets -t df -gu ide -m old -o ids -lu ther -he is -monaster y -sp ree -k lu -brit ney -jagu ars -gre ats -c cc -ky rie -machin ery -cric ket -re ro -ab o -aspir ing -semi finals -ale ss -sig natures -var d -me th -her bal -hol den -king dom -ap or -reg gie -ore o -palestin ians -em mys -sec tional -ro i -ney mar -qu el -cu ll -l ka -haz el -estim ate -ul ties -go w -be a -purch ases -bel ts -protec ts -m é -gue ssing -bb o -clau dia -fr acking -jon ny -el k -cel tic -al mighty -ra je -courty ard -ig i -can es -ðŁĴª ðŁı» -bank rup -le thal -âľĮ ï¸ı -graphic design -vad er -penc ils -rough ly -dan te -m fg -const ell -cam el -j b -bloss oms -en to -balo chistan -cine mato -ill ard -jer sey -con sent -dent ed -con templ -sch er -hol i -lou gh -st our -a yo -begin ners -cur b -v hs -a jax -du ff -av eng -dom est -commit ting -ai red -cha p -hedge hog -disappo inting -freel ance -in land -char ms -ðŁĺį âĿ¤ï¸ı -ai sh -m x -buck le -ti dal -per mit -bo ating -ra cha -kend rick -b ello -b hi -ple a -estim ates -l b -apo logies -jay a -bb l -ast oni -inter state -main taining -el bow -mu p -ep it -ðŁĺ ¡ -viol ations -def end -be h -sl c -am ir -pur i -ti um -fi fa -blur ry -scri m -ðŁĻı ðŁı¾ -ma ple -rel atives -âĺ Ŀ -cho c -con nor -⾨ ⾨ -whi sp -list ings -ma ze -than king -ri dd -grass roots -shi fting -desper ately -gor illa -den i -ju les -stra th -g ley -ja in -bu ick -t anner -ðŁĴ Ŀ -ga e -pri m -it ors -n ano -separ ation -armen ia -bor deaux -ðŁ ħ -pj net -bu rial -e bon -glo ss -re new -gri er -spe eds -comic books -sym boli -pur poses -ãħł ãħł -spati al -no table -ci on -n ps -ho ffman -nor man -rt g -du sty -situ ated -tr an -k fc -em en -nic kel -hast ings -sett ling -gr it -l ena -w aw -art s -gu m -ca regi -le wis -sapp hire -rememb er -embed ded -t lc -bl at -serge ant -el sa -boot camp -bow man -photo graphic -pill ars -direction ers -classi fied -no is -ve er -barre ls -wh oop -ðŁĺ± ðŁĺ± -fe male -petro leum -medi a -e fc -poké mon -ठķ -enthusi astic -var un -pro files -pedi atric -acci dents -con rad -jan g -jo jo -ac or -ob server -l f -live stock -for gi -fo s -el m -an and -go e -c ere -avoi ding -gri t -om an -thank fully -scat tered -nick y -cylin der -chees y -di ver -mahe sh -cav es -ear liest -qu inte -subjec ts -b end -gul f -vocali st -glu e -pat ches -un stopp -sny der -demonstr ating -pi o -hor ns -wic kets -and the -r ama -yo on -stra ight -bed time -or ang -bul lets -sa urus -min ers -inci dents -! ... -ðŁİ ¸ -ag ers -hand les -stat es -in ity -d ons -incredi ble -emin em -avi v -ru dy -moz art -folk lore -appli ances -mt l -fre y -di as -hu a -page ant -stri ve -im prison -bul lish -r ana -al erts -bb mas -hy per -derby shire -re cre -re dd -debor ah -cosmo s -law son -mel anie -psy cho -ho or -doo dles -sni per -shad y -man tle -canadi an -new year -inter actions -separ ated -cor ds -spiritu ality -ap u -it o -p ct -pel osi -rebel lion -se iz -wor cester -sec tors -ul i -san ta -Ð µ -ðŁĩªðŁĩ ¸ -bi ased -class ical -gam ma -dee plear -emer ge -back er -sur ance -hand crafted -ðŁİ ¥ -franc is -mill an -ic i -cro wn -wo w -stri ped -un fair -relax ation -³ ï¸ı -embrac ing -she alth -pale o -martin i -dist illery -wr ink -or k -na th -hay ley -cour thouse -si ber -sa di -quiet ly -mel t -m sm -me h -smart phones -rel ent -pp ing -war wick -co logne -gli a -cot ton -pro g -lon e -ip sw -star ters -expan ds -u mp -su ed -ski pper -infe ctions -ing le -à ¡ -cler k -demonstr ate -ac ar -ðŁĺĤðŁĺĤ ðŁĺĤ -ti bet -bun s -alo m -demol ition -ssi a -g st -[ ] -so ar -âĺ Ģ -ðŁĺ ª -ðŁĵ Ĭ -dee pest -beyon d -are t -att ends -activ ated -di mit -âļª ï¸ı -high lighted -magaz ines -rum or -az za -steph ens -dol ph -sho ckey -mat s -we av -mel an -serv ers -tra um -ku sh -æ Ĺ -bab ys -pa z -a al -la use -break ers -canter bury -ul ture -mi ri -euro s -tane ous -impre ssions -du tch -il d -gh i -pur due -adequ ate -l p -sy ner -ang ler -du rable -gal ore -ro wn -mg mt -ðŁĵ Į -lu cia -âĺij ï¸ı -zay n -bor row -. ( -north umber -cru sh -eng a -su sh -extra vag -t out -ma hal -ali stic -ther mo -gall eries -es se -chi bi -attrac tions -lex ington -legislat ure -docu mented -resi den -brow nies -w f -st ool -plan ets -sho ppers -conduc tor -ms p -tr icky -fru ity -end ra -feel the -whi pped -hair style -re fer -oo k -oc topus -audi ences -ku mar -after no -op tim -c fl -ni p -gen i -alpha bet -ann ab -lam in -accep ts -l ng -ðŁĺ « -t ine -ac om -cheer leaders -t k -gr on -v g -k ung -ja x -dha bi -r ss -mack enzie -beir ut -clean up -gy psy -st ell -bur ger -hurric anes -educ ation -st ina -âĻ¡ âĻ¡ -unfortun ate -jere mi -bad ger -at ers -: â̦ -ter ra -subli me -stu d -y mca -mr u -duter te -bren nan -bul b -mel o -yl on -hack er -c red -gu d -as an -pad illa -embroide red -vietnam ese -pione ers -projec tion -re boot -id c -an ey -pri mer -suff ers -win ding -p on -sto day -mor n -u ch -all in -adid as -eliza beth -tu ck -o graphy -ðŁļ Ģ -be g -os borne -ghet to -r h -cn n -ir ma -ma kin -cab les -mur ders -oc ks -inst a -al as -si k -cu ff -la re -foo dies -o vic -at om -geome tric -em pathy -ภµ -cent enary -newsp apers -administr ative -ðŁİ Ĭ -sti ve -contrac tors -le tt -tas mania -awesom eness -den sity -ve en -prince ton -frequ ently -re ject -gh i -modu lar -ceram ics -sh ag -ki wi -can vas -sweat shirt -an j -ti mm -napol i -il er -appe als -hamil ton -ma yo -we ave -arrang ed -whar f -occu py -b vb -as aki -ot ter -nor m -vi es -de tox -tion al -dere k -id ad -ad missions -constitu ency -u pper -woo t -allo y -se ve -lu b -un comfortable -ed win -ab re -d wight -ar che -virtu ally -sp ol -pri e -ai i -er r -swit ch -bar ack -se ok -cou l -wn t -pou l -o live -caffe ine -cardi ff -notor ious -de mp -ex cess -bar r -t ford -a jay -bump ed -my thology -shel ley -fal con -shakespe are -must angs -no ted -bon e -civil ization -sy d -par sons -un official -hy ped -sp ends -oppo sed -v ings -space x -noti fication -deci ding -bio tech -out si -sal ah -! . -fe d -ss y -c ms -bad gers -cr o -ela ine -n ba -dy our -n ant -honey moon -climb ed -conom y -ath a -m ell -ne bula -nature photography -juli e -bm x -inve sted -mon o -lieu tenant -wat kins -techn ician -o se -ka e -ì Ľ -mc queen -pre ach -trav eller -flexi bility -ze bra -reta iler -p ant -ben der -brand t -squ id -war rant -veri fied -cas s -pier cing -hon ours -t ying -mor ris -kis sed -op rah -panor amic -me i -splat oon -wich ita -ari as -gal li -indy ref -good times -athe ist -confe ssion -ow ski -re pping -ad ditions -mechan ism -z im -j ans -su f -cho pped -beg innings -vitam ins -ãħ¤ ãħ¤ -or th -po les -ru b -antarc tica -indie film -web cam -ket ch -bre tt -cle ment -her on -defe ating -hydr o -buc ket -wand ering -sid ney -future of -b inge -on ies -knock out -administr ator -syn the -l ent -jan i -bar ley -premier league -ner ds -cr m -bra s -bot any -evol ved -rot ter -ro wed -tum or -weal thy -Â Ń -mon arch -li shed -da hl -ðŁİ ĥ -bu ch -ken yan -Ø § -red ness -assemb led -se mit -hud der -shro p -ran i -lear ning -mor y -iti a -geo graphic -worl dof -f b -pho sp -boo gie -am ped -? ... -che w -dwar f -ar us -s sen -ru sty -recru its -h k -gar de -app lause -vol umes -invol ves -ta c -hand bag -trans late -ffe l -se ym -aqu atic -trans fer -zo di -and r -acade mia -cr ater -te z -ar se -adap t -col oni -snow man -mal i -hang in -di schar -oy sters -pho e -colon el -w ba -hispan ic -thri ving -sh y -ag les -sales force -cre me -so les -la fayette -â ī -ter ia -ach a -sp erson -go go -car ly -the ore -am ore -vo x -af t -ãĤ ¹ -stap le -mu ffin -di agram -ino x -su stained -av ent -me ta -arbit r -dec ay -ado le -Ð ½ -ec ol -ph o -n k -o cu -gr anny -ç a -luxemb our -stad t -alber to -le vit -am as -d x -or phan -co bb -as c -lo gy -immen se -chan ts -off line -p ent -bre x -w inger -plan e -i el -nichol s -ca thy -nar uto -low ed -/ // -ignor ance -cat astro -you ts -sch en -buil d -haz i -s ine -critical role -du g -dete ct -lo gs -en amel -stpatrick sday -ed die -co pa -cigare ttes -ho ff -kay a -la goon -ra pha -air borne -choo se -puer tor -ke v -gui ding -fro sty -bor ough -mir a -ðŁİ Ĭ -cade t -anu sh -yo gi -e ger -fl ing -slo pe -nin th -we ston -foot wear -f n -may weather -a am -pla in -stair case -witne sses -work outs -ro bust -dex ter -co hort -ðŁļ Ĺ -sp ell -ha ze -o om -organ ising -wild fire -cont acts -av on -min o -upd ating -ðŁį » -li thium -ing ual -k is -au ga -lo com -de duc -u da -th ak -boy le -mp er -hot tie -eri k -re vised -is la -travel photography -oo za -en qui -confe rences -clo ver -g room -cur ves -live on -per f -displac ed -bo log -xx xx -ðŁĺ© ðŁĺ© -te al -ve ssels -rain forest -cal ci -pan ther -gira ffe -ta sted -imag ery -pad res -day time -bas s -ri pe -opio id -nu e -vin yl -invent or -sen s -process or -mu t -gad gets -bibl ical -shann on -jacqu eline -car y -the resistance -ali en -n vi -co sy -bi har -fo ley -ren d -mu gs -fa ken -cl one -ni allo -gra bbed -chi hu -power house -n tt -chero kee -spon ge -imple menting -rh ine -le one -ðŁį Ģ -pret tiest -infra red -impro v -swit ched -tu bes -con tr -bl k -projec ted -be aver -yo t -bbcra dio -thi gh -per secu -apologi ze -w ack -po ster -oli ver -az a -lou d -( ?) -f the -women shi -spar row -blu sh -us able -sc ales -it ative -peu ge -ne eding -legg ings -glam orous -mat ur -c z -wat t -da b -tam ar -et sym -bau er -heart felt -h n -else where -bir ch -alu mini -hu ck -e me -j l -traf ford -d z -por tions -ana sta -arthr itis -esp n -ber gen -viol ation -yo shi -c z -northumber land -clo sures -ðŁĩ¯ ðŁĩ -smi ley -r w -tel ugu -inten si -gre gg -ve ga -dun geon -south bound -ba il -domin ican -semi final -chap ters -h itch -van ity -trans iti -recomm ends -sati sf -bar ca -queen s -( ( -de struc -stra it -ra vi -dess erts -in tru -har am -k os -fo e -fat ty -pais ley -magn itude -dri dge -com ey -schem es -vision ary -our t -down loaded -ðŁĻĮ ðŁı½ -gd pr -lan i -p wc -gu ad -nic est -stake holders -re ferred -george town -arvind kejriwal -schnei der -in doors -all star -strand ed -gen der -ze pp -ma sses -ðŁIJ ± -pati ently -bl dg -z ab -we arab -vi vid -he ck -d ella -sy mb -je opar -la ger -à ª -comb ines -ne c -br ay -flo p -tx wx -jo ys -pon t -pro found -sur round -mad hu -ma ble -ay r -te as -n sa -open ly -er nest -ãĥ © -to po -g na -anti oxid -ti an -e tr -c ello -ma thi -gener osity -b iting -man ic -kel sey -chee ks -ten der -w th -pron oun -ultimat ely -gu sta -ari anag -ger ry -ble ed -red dy -mic h -mitsubi shi -oper ated -sex ually -ma u -cl lr -vi ds -co c -mel ted -ðŁĮ Ī -q ld -ite ch -instru mental -end game -ðŁĵ ĸ -ener gi -brow nie -tam il -at in -domin ated -pra ises -fire place -sens ational -men a -k arti -un prece -ru pt -ori ental -mc cor -tour naments -scen ter -re eves -prescri ption -sam e -fra u -tru ffle -em bo -roman s -bla sts -techno logical -pr at -b sb -y ar -tren dy -ac l -al ad -ðŁį ģ -o hh -bankrup t -tho ven -regar ds -is er -war wick -vine yards -real m -niallo fficial -do ta -ge mini -to do -v able -¨ ¨ -la u -wre ath -ju ve -nat asha -le ver -lor i -hor ser -cc tv -air bnb -es anders -sin clair -ema biggest -high school -con test -optimi stic -t te -ðŁĴķ ðŁĴķ -ss d -ye e -hel ena -con sen -ric ks -jes se -an ic -ðŁİ ¯ -re acts -ro be -independ ence -vol tage -m ington -s ant -à¸Ļ ภ--------- -------- -sentin el -ke tt -rehear sing -aaaa aaaa -sof the -stir ling -sear ch -wi gan -stand out -sna il -pent agon -Ä ģ -ch lor -cru st -net any -chemi st -disapp eared -ric ardo -sp iders -bo se -war ren -me ssing -bann ers -gu el -par ach -ma id -coun ted -epi le -bon fire -speech less -se tter -meas ured -rejec ts -nik ki -le ster -foren sic -fab rics -alo ha -pre served -wat ford -deta iling -dar th -bo u -car ly -... ' -tail gate -noti fications -å ¤ -pas sive -trous ers -balo ch -ro ther -typic ally -à ¥ -sp it -wi z -sic ily -technic ally -ex pose -st age -hu bb -cre am -cap s -po ke -sle ek -ju ne -tempor arily -de z -awak ens -l ame -_ - -ji ha -tues days -advis ed -advis ors -exi sted -dis agree -news room -lo sers -world tour -dr ying -al di -har ness -foot print -hobb it -p mln -i ro -que red -asse ss -gaz e -sa b -th ian -í Ĭ -ti f -ob serve -ev il -dra wer -swee p -cor y -co dy -kyo to -cal lum -n inj -lau rent -be i -sket ching -custom ized -du r -regre ts -knox ville -ìķ Ħ -mess aging -grac ie -abun dance -bi dding -bre wed -fl ouri -therapeu tic -alt itude -ho gs -bur ner -elec tro -wonder fully -he ater -post pon -li very -r all -ad as -a ac -sau l -brook lyn -play house -âĻ¥âĻ¥ âĻ¥ -char itable -in y -z ah -compet itions -be av -plu gged -o is -do om -astron om -speci alized -max i -ta ps -cellu lar -depre ssed -folklore thursday -cri b -e mul -ë° © -fi gh -ru z -car lisle -spe ar -side walk -de i -depend ent -lac es -nh s -ðŁĮ Ļ -reali zing -net work -ric he -re gin -re fresh -st ral -pa thology -pla id -psyched elic -hin d -u ka -algori thm -lin king -progre ssi -fe y -d ade -hydr ated -b ant -fam ed -cot sw -bo ise -as c -rac ing -ja vier -ww en -mar lins -poo p -swe pt -toni ghts -we f -ani me -slo vak -âŀĸ âŀĸ -cla us -lem me -cli ppers -re ls -arianag rande -r te -ko t -thal apathy -hungar ian -zu ma -y von -is u -jour neys -clin ics -be be -ww f -n ws -super heroes -er it -sle ague -identi fication -mo tto -ba i -sour ced -ill er -ap i -pri se -unprece dented -dam as -tuni sia -dra in -undere stim -e ther -quarter ly -rewar ding -al ham -wolver ine -cab ine -hyp no -nad ine -hav ana -da e -ðŁĵ Ī -dr on -read ings -b ati -pic o -mer ci -iti an -wal kers -el ope -mi key -god zilla -bur lington -abu ja -social ism -at ility -sh ell -harry potter -g no -ab ur -re leg -fel ici -ro gen -neuro science -inst in -ath am -vou chers -j arre -fu se -def ici -monte rey -de port -mid day -pp ard -fre ed -ame ter -wil t -n ingham -pr att -liber ty -slo gan -o to -pr i -co ated -c pd -ne tt -il las -mal awi -evol ve -accessi bility -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ -or nament -b p -el is -son line -chi ro -fl ick -ib m -ar ak -en ables -gar land -san e -cu ties -tri p -rotter dam -n ys -lam ps -lu cas -bo g -ra ils -travel led -hic ks -en u -sab ha -scru b -hi er -hart ford -fo o -fer nandez -tre vor -mat tress -appo intments -ale j -fe i -o logist -saf ar -oc ta -sr c -sha un -ambi ent -dri c -bi ker -she e -must ache -h ta -bo one -her ty -car dio -bra kes -rec ital -consi sts -overwhel med -cau l -robb ins -im it -al th -ur l -bi bli -on ne -black livesmatter -diffic ulties -tel ang -tall er -ðŁĵ Ĩ -deb ating -bur rito -mo vember -strength ening -bo e -te stam -mirac les -base ball -re nee -ðŁijī ðŁı» -al fa -âĺ ĺ -unstopp able -ec s -g mo -giftide as -path way -fen cing -ðŁİ ¤ -b ham -ra s -sk o -d led -thel ast -magn um -bin ary -wil de -wil der -wh ati -barbe cue -h ism -can oe -kur di -eli ve -advant ages -mad ame -bi er -mis sing -enter tain -air force -y ama -c is -hash tags -j is -ve il -dream y -ten se -may ward -ch ateau -hunt ington -âļ ĵ -v all -up on -bl ouse -dun es -ðŁĺ ´ -fert ility -m ole -curren cies -st u -ber lin -toa sted -div as -wal t -lar k -por a -hit ter -um er -chil led -bal ancing -fa is -y in -or tiz -east enders -h ate -ur al -ap ril -tim el -à ± -per o -sto cked -respec ts -th t -best friends -giving tuesday -be ad -inv ent -im i -nap les -comb ining -tok ens -thir st -ma sc -par rot -sp u -dent on -* -* -t res -subur ban -wid th -si ve -con tender -siri us -lo k -troop ers -outra ge -tur bo -frag ile -me ssed -do h -disc ord -netany ahu -re sign -forgi veness -mo han -mun ch -cam ou -identi fying -enab ling -hot ter -thorn ton -jai pur -ar ya -ðŁı» âĢįâĻĢï¸ı -mu staf -maj ors -o ke -du ffy -roh ing -til t -ðŁĩ®ðŁĩ ³ -rock star -she ep -hend rix -ra v -in vention -do u -lagun a -gru mpy -sw is -im pe -) ' -you ths -bun ker -st ache -oppo se -indi es -acceler ate -ml p -ed en -w ann -k ail -akshay kumar -su pt -pol ym -midd leton -extra ordin -wil son -australi an -alumini um -way ne -alum nus -mat ics -gri m -er nie -opp a -competit ors -rand all -h ence -decla res -pre aching -sha he -can e -sustain able -stap les -le dge -ad ena -doctor al -bur gundy -decor ate -ren dered -ri sen -pr ank -di or -bee thoven -flo or -ac com -to t -ho dg -touri sm -say in -objec tive -mar kers -premi ership -en abled -camou fla -gi ant -Ñ ģ -smo key -ric ket -pan g -de pending -s ation -evol ving -inter cep -cen sus -tof the -re en -mendo za -trum pet -marke ters -an it -ðŁĻ Ĭ -north western -v la -foto gra -blackand white -che wan -wi g -tro om -ginger bread -k n -ro mero -n fc -or chi -fun ko -sour ce -f s -ra ped -o st -tar ot -ann ually -ðŁĺ ¬ -r ill -del av -.. !! -se s -can n -medic are -ph el -ape x -guardi an -rema ined -r pm -a ñ -story month -instag ood -neighb our -p ing -sem ite -my stic -as cot -mat er -hand ful -dang ers -ti d -ana heim -opol y -sh allow -nami bia -tor ia -procu rement -big bang -announ cements -prosecu tor -beng als -sal le -en roll -ga stro -sugge stion -ba k -ha ul -budd hism -berni esanders -flu te -fati gue -cyn thia -cho i -ir win -gu a -str ous -h p -ba p -satisf ying -play a -ðŁİ ¼ -inst ap -al ice -t p -irri gation -ðŁĩ¬ðŁĩ § -in tric -clu es -ple x -sa x -he pat -dump ed -signific ance -by u -medic ation -pro v -tough est -corn ish -âŀ ľ -kel ley -u v -si zz -si bling -me st -di stor -diplom atic -aun tie -b hat -son ic -bren da -pump kins -ro ch -black burn -ur ged -shi a -arrange ments -floo d -sa unders -lec turer -nou ri -popul ations -diplom acy -consist ently -ðŁ¤ Ļ -t mund -cauli flower -l ily -vocab ulary -vari eties -coo ker -up town -qu ent -mo sa -re inde -velo city -spru ce -social medi -i ber -volun tary -proce ssed -bal tic -y ang -leban ese -d p -dol ly -arrange ment -y uri -cran berry -kal yan -elev ation -cli ff -pu shes -ìĬ ¤ -sil ic -co wx -eter nity -sla ves -vine gar -glou cester -con tained -breaking news -aga inst -renov ated -norm andy -hero in -ys m -mo ds -gre ek -un di -tren ch -v h -encoura ges -head ache -gr ange -: ' -ever green -Ù Ĭ -reck on -ab used -th ru -cho ice -ti dy -col der -scho ice -ha in -bru m -li ars -bre it -yor ker -sh ack -he idi -micha els -sco pic -fasci st -play ful -ca c -yas ss -sh ad -.. ? -qu en -ram irez -clif ton -pr s -best fan -âģ ł -gener ating -head set -disappo intment -abstr act -bo iled -paren thood -azerbai jan -exhib iting -bom bay -oli vier -ko so -un lea -mat ernity -iz er -si ves -r hu -col l -saskat chewan -fre akin -de k -na g -stab ili -ðŁį ķ -organi zer -bo sses -ar u -u va -at able -ta un -after wards -fert ili -ver ge -az i -mor ph -๠ģภ-jer k -cosme tic -ko w -stru st -ap ache -post cards -for mul -ì ĭ -spin al -jack pot -elec tri -Ã Ń -lo y -gra der -diab lo -ar di -he sit -f w -arch ery -pa sh -the ories -repe al -re live -per cy -âĺ Ĩ -im in -syn chron -sham poo -coup ons -o to -la i -thou ght -luxembour g -mo v -ðŁĺ ¥ -ge mma -se ated -m ga -strat ford -un certainty -shi fts -est o -fo ol -fire arms -cor rie -ki ki -appa rent -p ills -olym pia -fi d -elev ated -de cks -ignor ing -av alan -ro v -whist le -p tsd -milit ants -robo tic -pac ers -quil t -bankrupt cy -lic h -per cussion -celebr ity -al s -( ; -su t -pokemon go -h g -off s -gibr altar -scre ams -billi e -gen ome -mar in -be ams -arch bishop -em in -bedro oms -g ated -ol ly -warran ty -at own -cudd les -gun na -k ic -vi ve -cy mru -nar row -pro b -le o -refe rences -manufac tured -cho pper -brun swick -sem is -don ia -r ye -man o -hur ting -? # -hol li -investig ations -c els -ðŁĵ ŀ -le ster -temp les -sto rey -mc mahon -toi lets -wo of -ï¸ İ -le verage -at om -night mares -victor ious -haun ting -custom er -ag i -yo ongi -mon ty -ver onica -w ur -inti mid -blan kets -volu tion -j m -âĺ İ -am on -jud ith -ðŁĺİ ðŁĺİ -distr acted -dri p -hurric ane -and es -revel ation -tro op -ab leg -col lin -tibet an -wor rying -inter nationally -eat er -camero on -brad or -y uk -ðŁĴĹ ðŁĴĹ -tra k -slo pes -ci er -ne a -ol er -ta ka -albi on -volcan ic -am n -a fi -ob stac -face time -ger ing -n pr -metall ica -organ ic -ðŁĴ ¡ -ki dd -d ances -pemb ro -wash er -m its -om er -emo tionally -tan go -ip o -do cks -scan ning -spec s -tho m -the ology -emer gen -om i -g pa -selec tions -un necessary -ima ge -ter s -induc ed -gi gan -rent als -supp lied -m fa -shan kar -lat er -pa jam -cla ve -Ù ģ -ma hin -carl son -avi an -ano va -kati e -aj ith -design ated -chocol ates -investig ators -gla zed -prin cess -er ry -ra gn -ou rable -hr u -sun dance -peuge ot -steam punk -gh lin -gre ase -hi res -z ap -per ce -j ill -tom e -he hehe -joy ful -mae stro -ni shed -gene alo -v ich -p its -fox es -good man -emer son -lo bes -con verse -o ats -thom son -ra him -mal ware -ah i -man kind -re sin -im g -sw ood -kin der -sc roll -ar a -sak ura -ro bbed -xi on -ny a -c ism -ce dar -be in -mour ning -tor to -heath row -done gal -bar b -hydr ation -k or -elim ination -su pdates -hill s -appe ti -star red -ko m -gw en -dd d -cra y -sc anner -personal ised -seren ity -re design -meta ph -box ed -judg ment -no se -ë ¹ -er ad -ac ne -supp liers -ener getic -v om -as ap -ðŁĶ ¸ -ir vine -hat ch -la ss -ad ren -waff les -accur ately -ici o -itt le -se un -occup y -web cam -thene w -ent es -ga i -j w -accoun table -vis or -ir rit -licen sing -hudder sfield -gen ie -ðŁİ ¾ -atmo spheric -ten sions -spart an -clif ford -ol an -north bound -ame en -cen sor -u el -ster y -$ $ -far rell -hy ster -cl t -se dan -rep lied -descri bing -micro wave -sla b -pro sp -assi sting -ru bio -e than -hh hhh -gu ay -z man -ra ise -roll ing -o e -n ile -ambro se -scar borough -hero ic -coo ks -mor t -chop ra -ðŁĮ · -to b -shav ing -stac ey -dor m -motor sports -wi ki -fol ds -sp iced -stress ful -liter al -fu dge -pe ggy -wa ite -tre sses -se sh -pr ic -ðŁİ ħ -fri ght -r va -mumb ai -po m -tt v -cel lar -tom e -andro id -dor is -tsun ami -tin der -o ec -m wc -dor tmund -no thin -l iti -so u -believe in -at u -kno cks -mag ni -ss sss -ro hit -ine ws -ang i -m andy -ke ttle -intermedi ate -av ant -cur l -endor sed -ori o -ur t -consider ation -wi res -shel ters -b ino -vik ram -imple mented -ly dia -bu k -paro dy -c news -under graduate -canu cks -sam i -polit ically -ro tten -gh z -tex tiles -over load -moder ni -recre ational -fli r -bat on -typo graphy -ov ation -intrigu ing -pilgri mage -al ge -ad ays -tcm party -sp elled -cur ls -boo ze -ste m -ann es -ir ls -spon ge -sho pper -sig nation -bra ss -mi stress -le ah -beg inner -lau derdale -augu st -pre school -ta ping -tai pei -execu tives -b d -rhe tor -esc or -immun o -deeplear ning -stat ues -it us -manu script -ly ric -cor vette -mol ly -la ge -de p -cn bc -le st -je ssi -fi fe -griff ith -oppo sing -ran g -dr ills -respec tful -p ity -d ell -har ding -play boy -blo ke -shut out -k ili -o sp -se attle -bc poli -mis es -journ als -team ing -es ther -fre ddy -Ķ ï¸ı -metr ics -no tre -gar ry -for ty -navi gate -perio ds -bened ic -j id -da w -ance stors -restor ing -con g -aller gy -tit anium -c ence -lean ing -ab bas -v ast -uc f -roof ing -e man -seve rely -vo gue -ve au -in bound -d z -tane ously -stret ching -man chester -dr yer -dav is -kan th -the game -it ted -re tain -el les -conge stion -frat ernity -ol lie -lo ki -fre ely -cho o -pon y -sc ep -tab ly -bal t -rock n -di me -lo gging -ðŁį · -ad u -ha voc -water ford -char is -swee tie -run ning -ner d -erdo gan -z ara -weigh ing -fif ty -pre cise -low ell -kurdi stan -r yo -or th -syn th -lin ers -phenomen on -art illery -il legally -constru ct -nostal gic -gar th -al ta -shel ton -a sean -w ander -dur ban -di versi -bon o -cl on -le man -sh un -obstac les -appet ite -fe eder -respir atory -di xie -formu la -an to -so ber -extin ct -au c -ing les -legitim ate -; ; -min nie -ipsw ich -dram atically -ðŁijı ðŁı¼ -ingh am -milit ary -mon et -us navy -for k -dun no -play er -q otd -st oo -ex or -ethiop ian -film fest -pe red -c ate -sau di -in ner -sin cere -tion ality -ale e -de eds -cooper ative -ir onic -cro cod -br ary -post season -cam per -can ary -e in -exten sions -nb d -sher wood -spo kane -hu mp -jit su -ê ¹ -dar yl -p si -stab bed -offer ings -expe cts -cav al -body building -fr aming -f ca -ye arly -bom bed -sk il -resear ching -jud iciary -gree ted -tu dor -mil o -innov ate -ðŁĺ Ľ -r hs -ru by -contribu tor -fam er -soci ally -m lin -fi ery -ut ter -beau t -it os -de voted -rain bow -bar ney -pe ren -ar jun -r na -gab by -ut i -hann ity -pick le -ser v -qu akes -pp e -fe m -wh itec -j n -victor ies -ðŁ§ ¡ -gol fer -congratul ates -resul ting -mechan ic -ur ve -cen tered -kie v -an s -in cub -< < -c mo -bestfan army -dap h -en ham -on cology -ku sh -t xt -ori ented -fashion able -c sr -sa hara -r ack -pd p -han son -ภĩ -ti ers -ra r -pan am -in sky -sa hi -testam ent -asth ma -in her -fisher ies -or der -ho we -gall on -ep is -suz anne -drow ning -paneli sts -ðŁĺ ² -ë ¦ -al ach -commemor ative -at tribu -ðŁij » -mo o -visi onal -week sary -gu st -ak in -poin te -ee e -di spar -ni pp -dent al -st all -pi an -bor e -ul ster -tic k -ir r -tae hyung -micro phone -bermu da -ga ard -el er -plumb ing -hu gely -âļ« ï¸ı -race way -cam bridge -mar cel -burn ley -to ast -holly wood -fa sting -me red -hib ition -ca pped -benef icial -ow ning -cont amin -arab ian -to on -cap ac -hul u -sm ir -nutri ents -se in -graph s -con ditional -ðŁij ħ -or ac -play in -nor the -tor nad -mar ian -ju mbo -lex i -incredible india -road to -uk one -confu sing -sp h -shan k -pi ed -mq m -positi vely -sher ry -path ways -consi ders -tof u -argu ments -resil ient -che tt -with dra -ter o -ated ly -sw ana -he b -fli ght -har ley -decre ase -kind le -book shop -³ ï¸ı -marty rs -sm ur -mc cl -concer to -sti me -rejo ice -app lau -cle ment -mer kel -jai me -im mortal -isle of -mar co -youtu ber -stal king -me too -st ack -sp ouse -u st -lu v -âļ¾ ï¸ı -eque strian -ev ing -fl in -nick name -the big -as ar -st acks -wal ker -bor a -kidnapp ed -hur ling -humb old -rec alls -co pper -ann is -se o -mer ger -mu ir -ad dy -ðŁĴª ðŁĴª -be x -cr acy -con an -congratul ation -mid st -âĻ ¬ -for bi -op tic -cr ate -crocod ile -mad agas -secur ing -ast on -o gue -savi or -salis bury -love it -fuji film -cast les -as st -ar rows -sp acious -tr s -poly vore -progre ssion -m ri -nel son -bi m -indic ator -o da -pe pe -re signation -gu t -sne aker -log ically -az y -are lla -te aring -jo shi -ssion ism -q pr -mari ah -p x -ble ed -mi an -med ley -we iss -ker ry -gat ory -at al -madi son -av enger -nab y -pl and -gi les -fresh water -d ington -ta j -demonstr ates -n tv -bul bs -sunday morning -pe ake -souven ir -wa h -ton nes -m kt -complex ity -con den -ross i -b ing -y ds -su k -n go -mid land -ol y -life is -ri pple -mo reno -dd ers -tu s -á ĥ -bou l -x a -hol dings -wn y -shadowhun ters -ke i -asp ire -m ous -ow en -so ak -skir ts -moun taine -stor ming -ch rome -ri ots -sar ato -amaz e -less ness -nav ar -crit eria -ra fa -indul ge -ay er -por to -nam o -........ ........ -yi elds -val le -j h -mac ron -sa ins -dur ant -tra ilers -wo t -confeder ate -sh rin -id ol -form ally -ten e -motor cycles -than g -no de -bang er -dal y -p ats -enroll ment -au ctions -at al -ar bor -lo gos -de arest -trans action -dom ingo -fle a -ser mon -de ck -sin cere -questi oning -juli o -was p -pre tz -armen ian -k ham -inflam mation -picture sque -acci dental -film makers -ðŁĺ ļ -ðŁĴ į -ca sey -so b -yee zy -good will -parag ra -ss ly -fe ather -dy ed -assassin ation -na de -b cs -app lies -femin ine -fe u -ext ent -depu ties -l ack -psy chic -go i -kill ings -pse u -ðŁ¤ ª -un c -mar l -tan e -mck enna -sur fer -influ ences -free way -hack ney -mal aria -el and -te au -rema stered -Ø ± -raz or -gg y -cor ro -lak sh -fla ir -honest y -hoor ay -de pp -am c -wedne sdays -q a -ed its -- $ -se villa -dou bled -human ities -c cot -som os -r ine -af a -si oux -re construction -wel ding -th reads -am ish -encoura gement -po der -bo ck -bal m -p tions -stand up -accompli shments -guar ding -convic tion -ac ion -napo leon -depic ting -att ack -su i -wear able -âĸª ï¸ı -pot ter -esc ort -vis e -to ts -bo on -event profs -angu lar -womenshi storymonth -bar row -sch i -ac comp -ti k -l end -kensing ton -wol fe -st acked -cra shing -exhi bit -wing ed -sab rina -ma sa -k ms -alway s -et t -pla sma -counsel ing -pick les -nfl draft -mr s -inev itable -coura geous -staf ford -writers life -ho s -e j -gh yun -trade mark -adri an -influen cer -coron ation -ra ging -explo red -usa f -excep tion -eu x -tan ker -sw ami -pac ket -ðŁij¨ âĢį -f en -she en -a ero -j l -re gal -nw t -au ster -meh ta -char ge -a ste -b ate -inf eld -racec ourse -collap sed -fle ece -z il -al lie -alternati ves -geor ges -ðŁĵ į -quir ky -fc b -nat geo -philanthro py -bra i -every day -ðŁIJ ° -ach ers -ja an -fin es -q i -fisher man -distin ct -gri mes -nation alist -comm ence -ro wn -âĢ ³ -z ing -f ter -hr w -baro que -bl ender -kitt y -hoo ks -c ited -w anda -consen sus -reinde er -an and -supp ly -me ds -v n -ol ph -rat chet -shel don -secur ities -ë°© íĥ -cro m -mosqu ito -j eric -im mac -dimen sions -â ¤ -di ssi -sponge bob -dami en -steven son -jo anne -del ish -yi kes -than x -surve ys -postpon ed -alco holic -al ised -ðŁĻı ðŁı» -do ch -sen tim -mered ith -com pares -b ago -happy days -mo ss -ãħ ĭ -ne c -gn ment -frustr ated -comb in -ri v -ec lec -col lo -compli ment -actor slife -ct to -nic ar -op hon -apar the -man t -ja de -trol ley -optimi zation -eye on -eco logical -qui st -ep he -ॠĩ -cin co -appo ints -old school -c pr -behavi oral -min aj -:- ( -tag ging -ev al -jo aqu -ðŁĺ « -ha k -de me -jama ican -so s -hy att -hand book -libr arian -hanni bal -pump ing -ch om -f man -ga i -hu ll -respon ders -green ville -n us -vau gh -ðŁİī ðŁİī -ta xi -gold berg -man tra -te ase -forbi dden -metho dist -ati vity -* *** -ec t -mc gr -Ħ ëĭ -se b -amid st -disapp ear -thy ro -phili ps -er ina -v icious -stream er -million aire -ma p -str ick -hack athon -gh a -ed ic -mi ka -pe ck -ill i -anto ine -ar ca -op tic -ma ure -ðŁĩ¦ ðŁĩº -cla shes -man ly -âĺ ģ -al var -and res -me i -el m -ww ww -al tered -l te -ê¹ Ģ -mo jo -for rest -thal ai -non t -spee ches -acknow ledge -ign ite -x factor -ðŁ¥ Ĥ -mead ow -disru pt -debu ted -scrim mage -pharmaceu tical -fi dd -found ations -philosop her -et al -publi shers -bo ys -c ke -ru gged -opti mism -re be -phil harmon -nar cis -ral lies -lu is -go blue -fol ded -un acceptable -optim al -li sa -pol aro -+ . -en za -âĿ £ï¸ı -mon opoly -grace ful -dair y -du a -diffic ulty -judge ment -o si -mer sey -flu x -new found -ter ns -dimen sional -in vic -al ba -am it -abudha bi -alger ia -autom obile -the ad -lo tion -acceler ator -vac ant -iti on -lu f -al ic -pl l -bla zing -ba z -sen e -ðŁij ¼ -villa ins -direc tory -eis en -to ck -broch ure -ri pp -hb d -zayn malik -nic he -lo lol -certific ates -mor se -fac up -x ham -un wanted -im ports -carne gie -fan sign -mo u -r alph -destroy er -sw ing -trek king -cili ation -pit bull -g aps -ho well -defin itive -mc le -f ps -et z -bol ly -lyn n -gan o -at ure -fur suit -co il -na v -but ts -tro jans -eu re -en ko -sch umer -horri fic -install ment -br b -subur bs -a bel -vi r -de sh -cun ningham -ðŁIJ » -span n -sch we -ke mp -tr u -ste alth -qu es -le w -deli ghts -ko ch -hu mili -cr iti -il t -sp ells -mi ley -car ic -ðŁį ´ -lc fc -substitu te -oun g -? !! -af fir -predic table -class of -er r -cy press -chand ra -age ing -__ __ -ther land -don caster -el in -yo shi -sail ors -har ris -jo anna -niger ians -h ers -pla gue -pro cra -k no -can ton -busine s -un h -pra kash -c in -bow en -co ating -m als -be gging -smith son -ponti ac -sp ies -dam ian -pl ine -und ant -al ta -one ss -shame less -da q -bb m -wal es -stam pede -ser um -Ù Ĩ -cataly st -x n -ab sc -free zer -ch un -ari os -mc cre -fore head -he ars -damas cus -tac oma -ardu ino -encoun ters -stan ton -lg b -ab as -" .. -ke te -drac ula -ele m -g ne -zepp elin -la brador -pul p -op tional -or n -russi ans -san itation -hil ary -etsym ntt -pen alties -au st -ig ans -olympi an -medic aid -vers ace -va pe -re stra -pe ep -sexi est -st alls -di le -the a -punjab i -pupp y -tuesday motivation -ðŁĵ ļ -the flash -roc ket -mo dest -chihu ahu -on na -k sa -hur dles -ca ve -fail ures -sp lit -bo ho -gur l -disappo int -ho ward -nug get -fran z -stal ert -kaz akh -for getting -sch ri -ag ate -am at -eve rett -du et -veter inary -juli an -ch ills -bra ve -ghost busters -lan do -gre ets -profit able -d é -ti r -ze e -om en -pd x -gray son -har i -fix es -stab bing -swim mer -symb ols -compli ments -po se -func tioning -th nx -gi r -corpor ations -bar low -lo e -off season -distin ctive -marvel ous -nik on -enri que -ky u -ja ws -amo to -lom bar -travel blogger -fa h -ouri sm -tri stan -so e -ce ase -ðŁı ħ -z ac -mck enzie -taxpay ers -swim suit -bl o -les ley -kan sas -w ks -ki el -provo king -my les -str ing -kangar oo -galac tic -fif th -s ke -we ir -ll is -mat ory -ðŁĩ ¿ -un ci -re productive -roo ting -ti des -gad get -.... ...... -alex ander -bow ler -scre w -apo log -eri ka -wal ters -shet ty -lan e -ban ter -as ant -me so -v ain -" "" -us i -fer din -accomp lish -man sfield -bom bar -collabor ating -cla p -it ure -s da -smo ky -na k -im person -car la -com ra -bur gl -lo co -ti es -in hi -trac ey -se is -diss er -rr rr -dra y -prote ct -cor ona -hun ger -ck en -c eli -trou bled -predat ors -fic tional -shav ed -riche st -metab oli -ful ham -gro oming -mono chrome -wa sting -as co -ast e -ti sta -remedi es -ung soo -south end -perman ently -bu mble -procra stin -ident ical -practic ally -ma scul -su ke -assu red -val erie -devi ant -grizz lies -thi er -pur a -ne pal -not ts -bil ateral -spo il -car mel -cine matic -ph l -ni fty -ma o -hypo cri -la ser -pan try -mathemat ical -el isa -coordin ation -bel mont -a it -radi ant -bo iler -man g -f ag -cr c -h ams -br in -â¬ĩ ï¸ı -famil ia -âĿ £ -sab er -ru pert -gg an -rit z -mic h -sal ford -le vi -gra l -ðŁĴ ¤ -n ino -ce d -business man -ul tr -sim ply -compre ssion -pa ins -hal t -ë°©íĥ Ħ -landsc aping -n f -croo ked -er d -itt in -ddle ston -sur passed -ino a -da g -bl en -exten ding -at ing -al gae -ball er -u mar -snoo ker -col lu -flo wn -thu b -ridic ulously -ki sh -op le -di re -as ser -ari sto -sc iss -h ating -trou ble -syl via -suc cul -plo ts -sincere ly -al er -laure ate -br ack -att n -rif les -me to -collec tible -cu omo -conte stant -consist ency -ant z -rang es -abig ail -de b -mini ster -grow ers -an oo -hoo ver -dream er -nu cle -resear ch -mi y -sha hid -ma v -d honi -cin i -do j -hin dus -part ying -dal i -alon so -inform al -clark son -it ton -ki an -cit yo -mor i -la sted -as pen -libr ary -susp ici -qu at -den ial -fol der -ch ori -swee ping -eni x -ðŁį Ĥ -Ø Ń -nas car -handmade hour -mou l -heat wave -em er -exam ine -ib n -gr ind -po v -tion ist -m bo -she ila -integr ate -om es -take away -cer v -con nie -tic ket -ce led -bi en -visu ally -madagas car -sor ry -gu i -park run -tra its -la be -pois oning -à¥ Ģ -vi able -bohemi an -denti stry -bad os -spr outs -mask ed -te ddy -ðŁĺ · -sa f -sa as -ji ang -ti ght -spe aker -withdra wal -bc n -as signed -class rooms -fle ming -ðŁĴ « -super girl -tot als -table top -e books -horizon tal -cra z -flu sh -j ard -c dc -er son -ãħ ł -green wood -ni h -co x -ad a -lit re -go ing -v icky -cur ved -lou ie -gra ins -hy e -lon ge -reme dy -tra inee -san jay -super stars -ma ser -man u -s age -wh l -ðŁĺĤ ðŁĺŃ -ðŁijį ðŁı» -m sd -en z -rab hu -j oo -gh u -ac er -e po -resurrec tion -justice for -bl ended -mo da -avalan che -france sco -re spective -g s -ye ast -wel ch -devo tion -ge tin -athe ism -am ic -carol yn -lo c -ld nont -ave c -us da -le gged -bra very -b lower -cow boy -he h -sti ble -buff al -chann el -run chat -âĺķ ï¸ı -ide ology -best seller -y oo -pe anu -bon ne -fel ic -edi son -fr actu -naren dra -pp ets -seym our -ri viera -he ctor -necess arily -bi anca -soci eties -the best -w g -sent ences -win k -vacc ines -pal ooza -jam ming -as f -mp us -agre ements -ec k -ba c -hon ore -com pul -wild cat -im posed -yo ga -hud son -can celed -l ich -fu zzy -es que -ch uk -w vu -se k -fli pping -r hon -wi shed -wh a -cap ability -len ovo -ìĨĮëħ Ħëĭ -vi vo -tv d -nor a -sil k -pas adena -yo semite -valu ation -clo cks -u ber -mr c -dar kest -au bre -ss o -bell y -wrest lers -kill in -lou der -buck ley -ge el -ad on -un s -appe aling -ðŁij ¯ -semit ism -list ens -fit z -ãĥ³ ãĥ -ny lon -ar ty -seem ingly -hal a -su ited -et y -she ds -mu ffins -ap ric -um ents -u ta -jam mu -chelse afc -star z -yo ko -roo t -clean sing -di ar -pione ering -ihear tradio -dig iti -fin dyour -can o -ðŁĴ İ -z ol -spac ecraft -six ers -moi sturi -b ile -ti sts -hor ton -rang ing -colum bi -mete oro -senti ment -ep l -foo th -text book -drain age -r ly -sc ue -imran khan -ðŁĴ ¸ -margar ita -ed dy -predic ts -gamer gate -advis e -growth hacking -love you -ug and -v f -beng hazi -s later -ne wor -ch el -independence day -p np -cul len -hoo dies -num bered -brit t -t sa -kl tu -s ages -mom o -onep lus -col l -gu ts -w ta -mesm eri -enh ancing -chiro prac -j is -teen agers -m one -constell ation -sweep stakes -e ze -slovak ia -la ye -pear ce -wa ver -po gba -k ron -sur geons -mar x -ti d -gg a -desc end -p ours -upri sing -wal la -sab bath -bachel ore -mack in -k am -peter borough -hor a -ðŁĮŁ ðŁĮŁ -think big -r j -hy drau -sp al -univers it -ðŁı ī -mail online -league of -ten ants -w ally -lan ce -heav ens -dd r -bol ts -am ir -i phone -ci gar -en du -re i -el abor -r inging -john son -characteri stics -sal oon -algori thms -tal kin -m tn -di ve -region als -ff ice -hat i -deviant art -so tto -shir o -l ama -k we -f aded -por ting -tu mmy -est ates -buen os -ðŁ¦ ģ -beli ever -pen etr -dar n -sp ite -can opy -fashi oni -t illa -pet als -eli jah -bra wl -marty r -ë°©íĥĦ ìĨĮëħĦëĭ -mid town -eric h -d apper -sm town -me gam -ww w -le le -on s -cat fish -fir th -fossil friday -ball park -th aw -pot ent -illi e -cre ep -car p -so ap -gun dam -infe c -yy yyy -ठ¨ -z ag -rit t -calcu lator -bo ca -ok o -to ad -threat en -refin ed -olym pic -accompli shment -bacter ial -a ji -tat um -feli z -she ed -j at -th ic -jam al -ðĿ ĺ -lin a -ðŁIJ ¯ -jo king -yot po -pin ch -ak ron -her b -motiv ation -li a -ho stage -cre ek -gam ble -russ ell -patt i -fo tos -c pc -bro ken -back the -cla ys -u mm -stock ton -mat ernal -ü r -la kel -cent ury -be k -infe cted -ภ¡ -smack down -man ned -ta hoe -sm es -bas a -su la -augu sta -. * -rohing ya -gre ed -counsel or -silhou ette -gra vit -cla use -' - -bo bc -occa sions -now adays -dic tat -be ard -n ally -brigh test -kab ul -inc india -dhan ush -archae ological -che ape -mizz ou -d hi -ov ski -bax ter -asse mble -à ¢ -gi gi -ac am -wis ely -haz ard -north ampton -âľĪ ï¸ı -me th -bla sting -re unite -mu lus -ali zes -t read -mil a -ed ward -ko va -pe sto -ðŁij ¶ -vit z -hydrau lic -refurbi shed -mo tel -isab ella -hom me -sever ance -uph ol -mis erable -f ari -lat ter -ef er -crack ers -es l -ac io -yy j -in an -ec b -z ind -pan as -tru cking -re ed -sh aker -burge ss -em pire -ag nes -n ington -art works -fr s -ti le -bi ome -eu n -ch ong -americ ana -god father -go blin -i shi -! ). -temp ted -gen omics -mand ate -ck y -ðŁĴĻ ðŁĴĽ -som ali -br andy -in ven -spoke sperson -pc b -yu an -h g -fa z -starwar s -ro wan -blue grass -don g -d day -trin idad -er ton -ban ning -re tention -cu red -tober fest -re set -we is -deta ched -behindthe scenes -immun ity -ph a -bra y -ðŁij ½ -ran cho -ram say -est onia -nd tv -] . -cab aret -tar o -d v -show cases -plu m -ðŁij ¸ -son oma -pre pa -memor ab -e stu -drive way -u les -magn us -x r -nn n -much as -en ge -stre amed -fore stry -audio book -tro y -reck less -kil om -ru ler -ra k -proce ssion -i ons -po ole -noc tur -wh s -farm house -per a -par me -hypocri sy -s ics -v ant -cas k -holi stic -au st -Ð ¿ -in do -ðŁij© âĢį -di so -disp atch -ol sen -make it -en nis -cent re -ar range -ðŁĮ ¼ -sal ted -ea siest -f ate -reg atta -mo zz -ac an -sin i -g ically -ch ops -chick en -work in -ha gg -invol ve -wee ds -book day -wake up -ky r -michel in -fu ss -re juven -vac ancies -incar cer -m st -sc ents -sovere ign -kick er -à § -bo d -âĢĶ > -sa h -mob il -shrop shire -oph one -dress er -mis suni -hep burn -i mo -foli age -diagno stic -as san -cycl ing -guil t -c sa -puertor ico -win elover -wake field -do ggy -k he -pa pp -co g -al lot -cu ck -poe tic -mi o -re vit -mag ician -ç ¥ -ant enna -west wood -mber g -lux e -oat meal -Ø ¬ -te at -ffe e -sear ches -l ly -plu to -el on -let tering -inno cence -fa i -ann on -telang ana -ma it -neu ral -can ni -ar oma -a stor -fe x -co cac -mon etary -f ent -un sure -' @ -indi rec -teh ran -isol ation -li bs -make up -merce des -ff y -he tero -de o -sco m -cur sed -veteran sday -franken stein -shre ws -de co -ge ese -lefto ver -ha did -vari able -acade mics -carol in -under going -vari ation -na h -ssi er -gamer sunite -pur suing -emer ged -ll ers -control ling -ro aring -mete or -vol t -daw gs -be aver -is life -bathro oms -aci onal -pre vent -lake district -in als -y ani -gra bbing -sac ks -le z -sw ay -k ool -time s -klo pp -la de -con cord -resul ted -revi ve -recon ciliation -ol and -az z -gir o -mand arin -de en -nutriti onal -is coming -van i -aw www -der ived -love your -stop the -shou ting -nov ak -ðŁĻĮ ðŁı¾ -lo af -displa ying -sunday with -ma guire -ch eri -ðŁı Ł -re match -qu ic -Ú © -y in -ðŁĺ ¹ -ili ve -z ip -our ke -down loads -sw at -missi ss -care rs -t ment -proper ty -hahahaha haha -gi bbs -sur rey -ar ise -tic ism -sti a -ir ling -fro g -co se -bas sist -fore ig -lea u -pil lows -hol la -eli e -disclo sure -peanu ts -inte ch -ww c -plun ge -trium ph -cor i -sli ppers -ðŁĻı ðŁĻı -neutr ality -ma re -hair y -gang ster -hu mming -cust ard -mer lin -ale a -s by -dam p -mo han -ver bal -j st -gu tted -b jor -un finished -ðŁĩ¯ðŁĩ µ -un happy -âļ« ï¸ı -by pass -at su -fis cher -sa v -afric ans -re use -mid way -demo lished -ger rard -her cules -Ä Ł -medic ines -cl icking -sur round -jo ong -wav ing -tri bes -wet lands -offici el -argu ing -l le -do va -su zy -club house -ne gro -ob tain -ga o -gl ance -assi st -ch os -ãĤ ¢ -âĺ ķ -adri d -occur s -st ans -par don -livel i -emplo yed -re visit -ff xiv -bb le -ne aring -min er -ðŁĺ ¹ -giov anni -up to -mar vell -mar se -to wels -cb n -engine ered -y elling -spart an -si ans -ðŁĻĮ ðŁı¼ -se v -coyo te -sta di -t cm -app en -shenan igans -open access -so aked -ma squ -le vine -stro kes -l k -aparthe id -hipho p -char don -may may -ha asan -stri pped -fr o -scri ption -f ton -h f -pri sons -marsh al -ķ ãĤ -an cho -com promise -classi fication -buzz feed -bblo ggers -deser ving -) / -s way -ob o -camp ers -poder nfamily -p oured -bri e -squir rels -se ize -: # -le k -ti mb -st acy -nas daq -repe atedly -br at -mi ghty -competit or -mah one -de si -o ke -bm w -shi e -f cb -cheape st -minim alist -par amount -n ate -har as -insan ity -lat eral -ment ality -mo zam -ta pped -yad av -u sp -b way -the od -bil t -ra ids -em press -adap ted -pat ron -nut shell -ag ra -be aded -sundaywith marsha -vi king -proce ed -main tained -thinkbig sundaywithmarsha -sn es -mus ica -to wer -ch ab -bo k -sm t -insul t -harve sting -windo w -ru ther -be ige -dec al -indic ate -ma iling -ri ft -po le -ander son -ch oral -sp ride -l ili -ev elyn -imrankhan pti -.... " -ke red -un dp -water falls -se ars -le mans -world series -ri el -ani e -app ar -score rs -lam p -a than -phys icians -qu inoa -refu sing -vu itton -unle ash -s la -pat i -shou ts -inten tions -fo amed -europe an -neighbor hoods -me er -man son -du h -br at -con es -bow l -kazakh stan -ठ¿ -in appropriate -del hi -ketch up -ful ton -s ys -consul t -gar field -to go -f ml -f led -b ds -facilit ate -ree bok -selfi e -elev ate -activ ate -bi ble -ca wx -b ys -cam ille -sy ou -sk ool -her t -w bc -ple dges -recor der -po sh -ac re -so aking -mat il -v sco -shoot ings -pla r -e con -ðŁĻĮ ðŁı» -rashi d -u bi -ðŁ¤ ¤ -sw inging -wi pe -rap tor -m su -music video -dur ham -at tic -apar ty -fe tus -activ ation -aa z -motiv ate -ðŁĴķ ðŁĴķðŁĴķ -j al -ठ® -ag on -sche er -stal ker -fo ster -az zo -tele gram -vi gor -s laugh -screen shots -entrepre neu -kri stin -inten tion -ch illi -fr action -don a -ge a -tc u -s ite -la k -em il -d nt -bor o -wil kinson -re cu -ato day -t anya -bl anco -cd n -brilli antly -g cc -ac c -evacu ated -ther ine -den ny -cait lin -she pard -pou ch -hand held -sou theastern -ha a -à ´ -re solutions -led ger -sr in -r ar -shat tered -chim ney -im with -mete or -hand led -ra ke -town send -en han -shi py -duc t -tw x -inflam matory -war hammer -theat rical -gro s -sk ar -sco tty -ni el -tit o -tin i -conne ction -_ . -goldeng lobes -sha q -ðŁı ³ï¸ı -hall way -fron ts -effec tiveness -gla ston -d hs -ex pi -to h -c pl -sc s -re o -ha g -resemb lance -hor an -abu sive -qu er -virtu e -cho lester -a q -shan e -m ce -carri ers -di stress -re wind - ¡ -voo doo -int act -ann o -ðŁĺ ¤ -pi led -adi a -ãĥ ³ -en ow -di gs -light ly -goo fy -turb ine -governor s -con te -re open -pa h -i ve -cra fting -swee ps -jo di -an de -zu cker -kaw aii -o ko -v ai -out line -kri sti -ts n -insp o -qu int -fil thy -lyn ne -listen ers -depar ting -or d -t weed -, & -ale k -sel fish -nor ther -recogni zes -i ps -be s -a ed -w ills -pe at -surround ings -mon uments -ais le -be cker -la v -quant ity -v ah -helicop ters -tu cked -alv arez -sha pe -o bey -ad diti -road side -m ite -bl ers -ep age -j au -ignor ant -b ins -lu lu -x o -c fo -ee eee -apprentice ship -shef fiel -to i -ho k -faken ews -deplo y -aid an -husk ers -ãĢ İ -west brook -mi ster -confi gur -car r -fic a -proceed ings -ha w -ste ak -mur derer -pay day -a jo -p vc -don ates -bi af -nom nom -be it -k ali -x rp -ahmed abad -se mic -che y -x tra -an twer -head lining -squ ares -roun ded -flu ore -bol d -disa sters -am oo -gener ic -cran es -brief ly -gi g -auster ity -anticip ation -for ti -treas urer -cann y -ce cil -dete cted -check list -ภ§ -pam ela -bar bados -an field -hear ty -tx lege -peren ni -arro g -ing ram -âĹ ı -ty ne -spo on -r ation -am ba -m be -cam el -h hs -york shire -reflec tive -fre aks -to k -ju do -partic les -du bs -ban jo -accred itation -prover bs -over dose -inte gral -gu ang -mc s -super car -af b -al vin -ail s -x tre -st aging -tw ent -rabb its -mar o -inste m -dol l -cr ay -sant ana -ble ach -mini ons -che ap -man t -di vers -catal onia -lo is -mat ri -cou gar -kay ak -e gre -p so -a ia -å ® -char lton -tr acked -sc ari -pe tt -f wd -x in -gra vel -br ic -bigg boss -ar den -hu gging -pal ms -st v -li mb -the movie -handic ap -ri me -z ai -stu b -indi a -lithu ania -rhy th -p ita -maced onia -high ered -brid get -schwar z -ske let -hi kes -ant arctic -c ps -mash up -Ð ° -n ell -chand ra -he ir -an us -sher idan -mi mi -muse u -bec ca -an ir -bar rie -dioce se -compar able -ðŁı³ï¸ı âĢį -yuk on -me p -hor mon -mer ic -al f -con quered -christ church -ðŁĴĻ ðŁĴĻ -hazard ous -poo h -cont ing -retro spective -par ame -na ir -con sor -ho tra -astoni shing -cater pillar -u man -ti sm -t vs -serv ic -croy don -mor ales -c g -cu m -te ur -scan ada -s all -magno lia -el ise -th our -à® ¿ -ag omez -phel ps -ë°©íĥĦìĨĮëħĦëĭ ¨ -wh os -weav ing -si sd -pro poses -cro ws -pre sale -econom ies -bernar do -sha hid -air show -mc cann -hor ticul -nr l -du el -mongo lia -tou lou -requi rement -struc tured -ed i -o lives -he a -cu ter -Ð º -enthusi ast -harri et -domin ion -sub mer -ðŁį ĥ -sa ab -nes burg -mo ff -def ended -bur t -rewar ded -gold man -op tics -khali d -house holds -buc kets -ce cil -che ss -substan tial -ef l -oper ation -evalu ate -st n -rece ssion -l ll -tom as -tru ths -ak bar -s words -p act -embarra ss -ha o -ay urve -scrip ture -ny cc -op t -di ameter -sc ented -organi zers -re lat -ha e -dream ers -de se -ðŁĮ » -restric ted -n ale -r hp -dol an -mun ster -ha ired -consult ants -jo ints -hu mil -d ill -relent less -t é -af il -ut ilities -japan ese -condem n -pet ite -colli de -q f -peach es -cou rier -l ore -âĺİ ï¸ı -reli ability -ch uk -ðŁĻ ĥ -stu res -ge ther -ho stel -bi er -- _- -â ĩ -e ze -ta ilo -di ent -blu ff -chu ffed -pil ip -mon arch -e em -bu chan -b ick -op au -ku ps -ภ¢ -pist ons -sp ins -m and -ce st -bur ne -v ile -cher ries -bec kett -need les -pan ch -ë Ĥ -haha h -trou bles -insi sts -do you -g mc -mor tar -deleg ate -in n -g anda -sin atra -ठ¤ -spee ding -pu pil -pre mises -ali gnment -pi kach -as us -j alan -Ø µ -lime stone -fol kl -parme san -ce il -mo y -shawn mendes -ac up -hu st -ot es -med ina -ma di -gta v -censor ship -ar g -swe eney -sy kes -col o -foot steps -cann ed -adv ance -gta online -healthy living -ðŁį ¾ -a ig -p ality -oc s -he brew -im minent -berk shire -jeremi ah -out going -bak er -entr ata -ma ids -gro ves -bo c -a del -m fw -con science -arm ys -nut ella -conte stalert -novel ist -la h -ban ker -marque z -ðŁı ¡ -to ff -out age -gr p -ðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ -musc le -du dley -nvi dia -mi di -m uni -ess ays -dat ac -car ter -ภ£ -t ans -i ves -public ations -al er -ok wx -il u -cu tt -har p -out law -luther an -br ill -bo lic -do well -green land -be sties -path i -pay ton -gue st -har den -ðŁ¤ © -ann ed -evacu ation -po ised -mc der -b han -o i -envel ope -ci d -ca vi -ta pas -book review -grey hound -âĻ ª -fe ud -lun gs -for te -rai der -ff er -oni x -dep end -yn wa -rel ating -de vs -ðŁĴ IJ -acqui res -d ha -j yo -priv ati -can ine -k b -cra b -sar din -imag ining -k j -em por -down hill -ne z -ta eyeon -nick imin -gb p -à µ -w ap -sec co -ma shed -ðŁĴ¥ ðŁĴ¥ -augu stine -diss ol -dic tator -â ĵ -vi per -ed fringe -vau x -hard work -book let -no x -chi ff -ðŁĴ ¨ -observ ations -xbox one -u sher -ke er -lu p -dal las -cal gary -ma dra -di ous -k bs -wood ward -hero ine -lu mber -sea world -o ws -mc ke -maver ick -gu la -cross roads -fan g -s ade -nik ol -chee tah -me c -pp g -er ick -ðŁİ µ -tox ic -bj j -viol a -sp ire -ch ino -tra vis -institu tional -ha as -low ry -w ac -ea e -hu mid -mp ton -ru ck -je w -c ine -zim mer -se f -bhar at -fre es -aam ir -ðŁĴ ħ -z inc -wan e -multi player -royal wedding -e el -preci pit -qu ery -kimber ly -isa bel -ful fill -ig an -vau l -pan e -sc y -dig it -gun n -u tah -dog day -fi on -xia omi -da c -el ast -cha vez -ro blo -g ine -ten th -ab h -ke to -hur dle -na dia -memorab ilia -ha bs -qu an -h w -hv ac -pix ar -ec cle -kram er -accu ses -ðŁĴļ ðŁĴļ -per se -mean time -wa hl -atle tico -âĢ¢âĢ¢ âĢ¢âĢ¢ -ott oman -no vo -k us -conne cted -tru sts -d mv -spen cer -rahu lg -do ve -sto kes -bolog na -enthusi asts -à ª -rockstar games -ted cruz -du ras -s acked -late x -immer sive -cer t -lu cin -princi pals -fa res -sa ils -far n -am ent -saf fron -quent in -check point -fer ris -ex cur -ðŁijī ðŁı¼ -bai ley -se h -ter re -mad am -s band -wan derers -cumber batch -yy c -digit ally -blackandwhite photography -roll in -moroc can -ðŁĮ ħ -din ner -d well -to om -m ye -ez ra -cp fc -war hol -me er -jon ah -no aa -s gate -so on -secu lar -g ating -ti o -dri ver -si ssy -assan ge -ta th -ed mund -bobc ats -ra ji -po stage -stu ds -m gm -kat o -edin burgh -meet the -shir t -fa a -mens fashion -sp reads -wi m -car ts -phoe be -j ars -bot swana -Ù Ĥ -ed war -sk ar -ri ve -gu sty -c tv -ferdin and -su therland -nickimin aj -k v -si us -bee ch -re z -desi res -on ial -camp o -quar ry -lor raine -gil more -ig gy -µ ï¸ı -ho pping -avi z -ðŁĮ º -uni sex -dedic ate -att itudes -ste er -jun kie -rail way -y b -whi sper -key an -k us -ju g -di x -a ins -sum mon -ov ich -sy ed -her ald -ma ison -me ded -wild flower -main land -ri sky -ru kh -over looked -ki c -destro ys -nam an -ki p -z ano -champion sleague -ban dit -quin cy -smi le -cal vin -open ings -ta pp -ol ulu -spec tro -accred ited -ap k -pra ised -bar nett -pol len -premi ered -selen agomez -tou red -screen ings -uu u -mis o -en se -adam lambert -guel ph -har yana -hu tto -le ar -l tc -po ached -brex it -æ Ŀ -tt c -pa vement -mon gers -ro e -ad ers -ling ton -particip ant -ca red -ga il -y ates -lan tic -dash board -jo o -feli pe -ssi onist -bu m -s end -a eri -thu gs -luci fer -a he -dete ctor -fil ly -gas oline -ham per -hump day -the ta -the band -fore casts -o hhh -lo bb -hol l -cp u -az u -ad ar -hai ley -bu b -car t -quo ted -an archy -pan cre -twit art -al den -st ash -the less -or ni -belie bers -mor mon -partic le -avi ation -⬠Ĩ -webcam toy -sad dened -cru is -ham let -n ct -roll ins -marque e -saw yer -reli ance -a ura -di ec -soo thing -sig nings -ak is -à ³ -at kins -aer op -ðŁĮ ¿ -y ab -sh ari -con nol -du bbed -manufac ture -convin cing -feelthe bern -ra u -pu lit -on ec -gem stone -ur ging -bag u -ga h -aci ds -fi anc -zodi ac -sn oop -her rera -initi ated -ven ge -profess ors -pro di -stron ger -e mission -bb a -hal le -ta pp -haw an -wh im -compe ted -myr tle -ir port -cold play -ach e -ske p -m son -ss ic -calli graphy -swim mers -me y -pp c -thri ft -po c -re places -commu ter -âģ¦ âģ¦@ -go ers -lo gue -para dig -bas kets -sensiti vity -joh an -atl antis -& & -suit case -anxi ous -l h -str i -gal loway -stre ad -war den -gr ounded -ffici ency -li feat -reli c -disgu ise -island ers -f cofficial -classical music -b mc -en field -bi que -oak ley -bat man -sla ying -ner ves -mul tit -calci um -projec tor -scott sdale -ant ino -gri ps -kim mel -des mond -prote stors -hi atus -metaboli sm -conclu ded -press er -ti pping -sli de -e to -hun ting -aus open -ri k -pp ery -innov ators -pitch ers -ag ger -fun gi -z ad -proli fic -rockn roll -bl ames -ct ar -stam ford -q ad -mozz arella -insan ely -den ver -ph ouse -nom ad -ï ¿ -s ris -pro du -hen ley -pag an -am trak -ru bi -in cl -tu tor -sco tia -wo es -sing apo -fun nel -turn bull -know ledge -gri mm -real madrid -we are -missi les -con sol -emo jis -sne ak -smi ths -ru iz -br ou -i el -ha ver -ðŁĮ ļ -kin gof -basil ica -circul ation -prin ters -ta pping -ri dley -dra gged -ha j -writ er -fundament als -personal ities -me tre -stereo types -bur le -best of -n ffc -ha th -mini stries -a ali -trac ing -pav ed -ł ï¸ı -g ic -insp ire -tu g -ha re -repe ated -ex pon -lol li -rho de -pre cin -install ations -instag ram -az ar -i es -sole ly -du kes -mission ary -van guard -fursuit friday -on d -pol ari -ma st -har an -jos é -jack ed -ec oun -al ities -ne ph -ra vel -moder ated -sco w -s fb -uru guay -as o -ni g -au du -p ints -lat ina -ben z -m itting -char ted -mat ology -cit ro -biop ic -ðŁij Ń -djo kovic -fox y -agu il -so to -an ada -sin king -sc rap -hair s -bethan y -fact friday -ðŁIJ IJ -unlea shed -) ( -contra dic -ram on -coast line -y ong -sn sd -li gan -p ome -mit age -ge tt -wat i -ri sk -so aring -bru sh -f pl -av an -å Ĩ -lar son -sh ear -mul til -blu r -multi media -chun ky -par i -n ani -weir d -cholester ol -char les -dream ed -tan ning -puzz les -fr am -hand ball -ch ag -beli ze -al u -bang s -Ñ Ħ -detec tives -mc g -ish q -bo thered -saf c -mp ing -ten eri -g ays -sail or -an gi -mul ticul -gue ssed -ros é -high ways -bro om -chatt anoo -- ' -see ker -on ed -at f -lu c -> < -bar i -per cep -jewel ry -as ph -sor row -sl ing -mam moth -jac kie -ë § -wilt shire -sa o -can cell -im paired -tor ial -bre ed -guy en -jud ice -tit le -pro spective -applic ants -ðŁį Ĭ -epis cop -e id -b yo -stock ings -ðŁĴĥ ðŁĴĥ -ll p -sna g -keep it -l ough -ol son -matur ity -!! !" -cop ter -i sha -bl i -wil mington -tr youts -th ai -ðŁ¥ ³ -pe bble -kra ft -f p - º -ssi vely -li vin -contest ants -tex tures -jo an -h dr -film festival -prov ence -wi do -op end -c si -sto wn -cro ati -ad just -host ile -analy sts -il an -cu ppa -bru m -newfound land -good win -me tt -mall orca -plu gs -bu k -bb hutto -wrest le -sa ire -sho pped -for za -le head -vi vo -ba st -ro xy -reg is -hard working -hon olulu -desp air -young sters -ni g -impro mp -roll tide -de emed -tre ason -ru shed -for ged -ff f -pikach u -bri ggs -do it -ac cent -la us -gla ze -compet ent -a ho -photo g -mid field -le go -har vard -min orities -re illy -slic ed -once upon -initi ally -financi ally -landscape photography -har dro -qu o -mm ers -par kinson -smu gg -read iness -bru tally -glou cester -mp ed -bbhutto zardari -mur der -ye d -dat aviz -sr t -dow ning -bi ans -m ü -fle ck -fli pped -s ly -brilli ance -ri m -k um -bubb a -ko i -knit ted -sor g -ma is -ðŁĮ ² -ti ss -su stain -sen su -ak han -zi est -exam ines -chardon nay -user name -short list -re bs -on o -dar ing -hard wood -che que -righte ous -light ening -dir k -shra dd -du ra -down stairs -sh al -ami gos -ru ff -s law -ri es -red nation -man us -ðŁĩ§ ðŁĩ· -distin ction -u bun -dur an -mi gra -thi ans -la ver -domest ic -k x -jaz zy -justi fy -belong ing -insul ation -color stv -drun ken -chann eling -qu and -xi ii -enligh ten -kan o -fati ma -teen choice -terri fied -p ba -as ley -met museum -dun e -pack er -ki o -ðŁĴľ ðŁĴľ -bo iler -fas cism -ar mored -back grounds -in mates -embarra ssed -defin es -th d -we go -silic one -lo on -el ding -bor rowed -he mp -ak sh -kaw asaki -br y -de af -kill er -dispo sal -ðŁĩ ° -glaston bury -un covered -o xide -po ff -d ant -k j -ku ro -dri zzle -peop les -fe e -pro pri -dd lovato -pi ggy -ot is -aller gies -u bis -pengu in -ser a -vi z -prosp erous -ici des -tornad oes -sene gal -web cast -sto red -enchan ted -bb cone -bay area -entrepreneu rial -rednation rising -experim enting -ang an -lot to -they re -por e -er p -seren e -east wood -bro kers -bar ge -stal lion -timber lake -tailo red -dy stop -b ate -lat ors -di xit -bran son -dynam o -ky lie -shame ful -bt wn -spring time -mix ture -s ounded -lu ton -dad es -mal a -op ra -en ic -rahulg andhi -se wer -~~ ~~ -ky u -nor theastern -ca er -bc u -nir vana -kitch ens -ous y -al m -river dale -hid den -fl int -sp d -pat rons -katy perry -au gh -exhib itions -sm c -shu ts -at ore -da in -some thing -ber th -bo g -por ter -gen to -con cussion -ang lic -ro we -gr illing -scar lett -master ing -mor nin -comm ented -si me -si zing -christ y -ce os -st m -at ry -tari ffs -vac ation -pre judice -p su -paren tal -far age -can a -cap com -koso vo -you re -men stru -stal in -grape fruit -br an -che sa -dav en -exc el -!! ) -๠Į -distribu tor -ce a -bride sma -millenni al -wa in -ob serving -mis ery -plan etary -expo sing -bra ised -comp ton -don gha -q l -spring steen -th ul -syl ve -cab o -pal ad -niel sen -gaz ing -ba ja -r oud -orchi ds -johan nesburg -se man -d ji -oper ative -affe ction -eclec tic -at c -mut ant -aw x -nic e -mel bourne -indu lg -tu lip -dias pora -wel p -big gie -mississ auga -retri ever -or an -tam my -c ta -hipp o -seas oned -ger mans -eng v -marvell ous -im f -rela ys -mon tan -maur iti -me ister -as surance -reig ning -su fficient -han e -no thing -pos se -nav y -in love -brigh ton -en qu -ch ung -sweat y -es c -cal ed -man s -nicar agua -sl ices -mo cha -washington post -bb n -dam ned -grow ing -en burg -lo an -me s -wh oops -believ ers -spi el -vo daf -l at -s led -cricke ter -brown e -golf ers -bar ra -wat chers -lu igi -sw amy -mom s -pit ched -san tor -cr s -si re -sc amp -bo de -ste war -jon ny -ent ity -pac qui -mind ful -min india -bear ded -temp t -scorpi on -eat on -authori zed -ar to -s vp -op athy -cch ini -house music -disney world -âĢĶ @ -pro pose -di y -expen se -ten g -pupp ets -sm el -d aca -per ry -fin n -boo sting -lefto vers -cou gs -satell ites -man y -az e -g ong -fi e -metho do -fer ries -ðŁ¤Ķ ðŁ¤Ķ -explore rs -load er -attrac ted -il ton -godd amn -pi azza -doc tr -sav ing -paragra ph -visu alization -may ors -work flow -ack les -ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ -ठ¸ -twer k -clu t -lo ver -te ases -si an -o te -deter ior -accor d -l fw -swar ovski -nat al -tra ps -k ina -analy ze -laye red -bever ages -un it -ran som -pe shaw -dest ined -astro logy -si pping -miley cyrus -cam ino -marshmal low -bli ss -out back -fa q -int oler -humil ity -po ppin -hallo ween -mon tene -op hy -nu n -tattoo ed -a as -ðŁĮ ³ -dale y -qual ity -du sa -fisher men -swi f -ter rac -st au -le in -trol ling -ship ment -garden er -march madness -head band -gr t -bur nett -w and -!!!! !!!!! -gh e -du x -hu d -war ner -ðŁĩ ¦ -ex ile -rescu e -rat a -d han -duc ati -dro wn -bl ends -spi e -alli gator -simul taneously -broo ke -u ke -k har -comm union -ri ka -ford fc -chin atown -you rown -me y -can al -syste matic -de pri -ox ford -an il -w ut -equ ation -be z -fle ur -the good -lang ley -ad ity -ed ith -al fie -о ÑĤ -en cry -br ill -ex emp -ce sar -mb ling -ab ri -sc icom -j ing -school ing -mi ka -mechan isms -impromp tu -rhe a -moo re -crime a -be sto -wri ght -el ders -ro ds -kam al -folkl ore -be et -mini on -reli eve -thr o -team usa -pas cal -made with -boli via -itt i -free bies -desi red -best selling -l iness -la den -ke ane -mi sts -hipp ie -atta chment -@ / -se w -flan agan -âĿĹ ï¸ı -supre mac -stl cards -si as -q u -rh ys -ste ep -val leys -v w -pav ing -disp at -al ison -por te -id u -new sc -soc ket -mo s -co star -re vo -prote ins -stanley cup -m cal -ear ring -se cs -mc lean -cap ric -nick elo -ad en -v c -shou se -adap tive -maxi mize -entertain er -pro se -gri ffi -six teen -lam ar -mi rage -saudi arabia -awe ather -ru st -in filtr -fashion week -ðŁĺĬðŁĺĬ ðŁĺĬ -selec tive -bubb le -a den -fen nel -deci sive -m ta -mock ing -mb les -st amp -mu le -bernar do -gr in -po tt -j ingle -vet tel -colom bian -cam o -motivation monday -ba han -p ly -dh ary -k ami -x men -sleep er -gar a -my sti -confi dential -conflic ts -p neu -ce s -insur tech -clean se -me rely -va is -tu x -the great -shar on -ma j -hol a -eco systems -aj ay -aa j -hu sh -har mon -backto school -wiki leaks -reflec ted -ðŁĺ ĵ -commemor ating -ac et -buck ingham -messi ah -tu ous -hor net -to be -d q -he ine -mi g -pl ate -nichol son -sp ie -cumber land -nor mal -pho bia -happy halloween -city fc -mc el -gilli an -ke to -lu de -de mise -su ga -str ate -mcgr ath -visit scotland -foo led -cb r -gc se -col ori -po td -missuni verse -fin ances -ma poli -for ks -Ø ´ -cann on -medic inal -ðŁĹ ĵ -kh o -wre ck -pan to -bag el -gu ll -syndic ate -ic y -pr c -ki en -zi ka -ti sh -pe ta -c co -li za -ch ut -ex traction -el g -gl i -fu eled -pos it -respec tively -leice ster -br ink -vulner ability -im ported -e sha -ðŁ¦ ħ -r ural -re ll -gam ing -atlan tic -aband on -no ah -re solved -pro state -aller gic -ps d -âĺ ¹ -dun geon -fang irl -illumin ated -m hs -white sox -d ently -ck o -endor se -over ly -dazz ling -prior iti -night life -ut il -be have -flam en -east bound -ðŁĴ Ł -ilove you -gov uk -mozam bique -alle gi -dr i -testim onial -ath s -ì§ Ģ -mm y -shab by -pro secco -friend ships -cal am -dam ages -off set -jura ssic -jun o -arre ll -ðŁĴ © -interven tions -dare devil -car ver -run away -ran e -truste es -ha ute -dep ths -ðŁİ Ń -me in -sacrific es -con cier -ne sting -i zzy -me tam -ilove my -ur ine -du lu -mal hotra -ve ins -night ly -co at -an di -he witt -lon el -ci ble -wr ite -jen nie -sant ac -ĸ ï¸ı -str ato -singapo re -sop rano -kri sten -cheer ful -flee twood -fa iri -m eli -wa st -tur nt -sfor sale -sc rolling -angel ina -ren dition -jeric ho -nick y -or b -fla vo -patri ot -ash eville -sick ness -re fund -aggre ssion -b pl -ãĥ ĥ -elu sive -thi story -hang er -bu ffs -vil las -at kinson -sp h -ja it -decl ined -wo k -supre macy -oo tball -ey ang -ðŁİ ĵ -s ford -ath i -consu me -road ster -e so -u pro -reci pe -au f -uc i -ar on -oo oh -cs go -re ich -mc d -min ute -ladi es -pun k -rut gers -mee k -ariz on -ta j -land lord -de gra -autu mn -lyn x -us f -b hi -fairy tale -dongha e -bet sy -explo ded -chen nai -op a -pro tag -br ant -ðŁĵ °: -g f -pal li -ðŁı¼ âĢįâĻĢï¸ı -su t -ill ini -colum nist -shir tless -de centr -sear ched -ec or -bu ggy -s ack -ðŁĺĤ ðŁĺŃ -de t -ther i -or naments -bring back -to v -quarter finals -ic he -con stra -gi er -buchan an -vi x -kay aking -mu stread -swal low -mel b -sc af -op al -may oral -har at -ðŁ¦ ĭ -schedu les -id f -ha gue -ro z -a ah -d mc -du plic -ca che -orph an -frac ture -rec on -ch av -bun nies -al ain -mustaf a -ðŁİ Ļ -vac ations -dynam ite -tex ted -broad caster -ðŁĴ £ -ste amed -rock er -di etary -luxury travel -inaugur ated -sa wards -vaugh n -lincoln shire -click ed -kra ja -f anc -remo ves -layo ffs -mc far -bre eds -win nie -jon ghyun -incen tive -vari ations -pat ton -atur day -persist ent -pr un -pi ers -dal es -æ ĸ -breast feeding -r ance -ta wa -Ĥ âĸ -mur doch -cap tive -thi stle -nic a -commod ity -cou ldnt -board walk -graci ous -practiti oners -n gc -scru m -ner o -camoufla ge -col on -he i -phys icist -saturday morning -ten er -si won -colum ns -bru ne -y vr -ba ir -reti res -hal am -cab er -shaz am -min u -cas cade -milk shake -gri d -d ren -vin cent -so dium -plat ter -cheer leader -chen ko -y ak -elimin ated -ty po -y man -re think -âĿ Ĺ -ts ville -bernardo kath -ex tr -ðŁĺģ ðŁĺģðŁĺģ -ta o -re per -mo ths -em powered -c iting -transpor ted -mon ks -san at -cle ars -bachelore tte -camp bell -racha el -har le -hand ler -climb s -inter ference -rele ase -sh and -r bs -hr h -ãģ ª -val le -r é -sli me -w akes -chu bby -slo an -el ves -ath en -attor neys -micro scope -ston er -sc aling -o be -c out -se man -mid week -bal sam -ðŁĺį âĿ¤ -ti ful -v ish -lo tta -ri pping -re mn -ti re -le ap -ha vent -la by -hi mach -whisp ers -we in -ðŁİ ¸ -wild flowers -se le -u cc -li ability -az ine -sw ings -k ya -ta ir -re main -e do -flo ps -poc ket -grand ad -exam iner -gr is -ffe ct -ðŁijĬ ðŁı» -stud ded -heart beat -de acon -firm ly -infec tious -ste f -out lines -le asing -cla ws -sen se -tab s -hoo t -mo sul -spa wn -co a -hog warts -ve in -alban ia -manu el -b ino -vaux hall -scot land -go bucks -mat ty -phy sio -tor ino -const able -investig ated -s lower -mistak en -bay er -wild fires -vo ic -x on -time to -chas sis -bar ric -pi on -bald head -woo k -regi str -dra fts -b hs -li gue -l ick -staf fordshire -baf ta -dar ry -je anne -ven ding -cor p -⼠³ï¸ı -kid dos -fen way -ca o -west bound -ðŁĺ Ļ -dv r -quick er -bla h -goo die -ðŁĴĭ ðŁĴĭ -vo x -esp er -fac ade -cor relation -red bull -rou p -decl ining -chi ve -mc gee -tur o -in der -f eller -fu g -il ysm -mar di -peshaw ar -ki eran -ine ma -meat balls -pe ck -depre ssing -sen sing -gi z -dd ington -spring watch -ro aming -yellow stone -horse shoe -am man -week day -ol or -ðŁ¥ ° -boo sts -spr int -scar ves -je e -bee tro -cl an -all the -ìĦ ¸ë -enlighten ment -ado be -re generation -? @ -cont ag -yach ts -to u -mor a -en voy -r ani -go li -dhanush kraja -wood working -streng ths -se di -disc s -ar ina -sc on -lit e -ano ther -ðŁ¥ Ĭ -ye men -gu ern -sav vy -lo yed -biom ed -heart break -comra des -milli e -pat ch -un f -jar vis -bl aming -commemor ation -ge y -å ¥ -cardio vascular -alig ned -docu ment -. ? -aesthe tics -em u -the irs -le h -ps ic -si f -pl ateau -ex pend -domin ating -rob es -mauriti us -excep tionally -hom er -discover ies -bra un -ten nant -insul in -ðŁİ ® -car bs -te as -? !" -zi e -franco is -brow sing -th ol -cla rence -hel per -ob tained -cas sie -le es -! , -pome gran -hu bs -presti ge -] [ -mach er -bott led -pun ch -pi pe -o ch -gall ons -deliver ies -u ra -un day -mon de -depic ts -re gency -outra geous -khal ed -car o -he arti -za g -develop mental -over coming -stati stical -flavo red -for ds -cre atives -lau rence -di as -sun screen -in ked -pre acher -n ul -impac ting -auti stic -âļ Ķï¸ı -o ss -pel icans -cele ste -v b -ru mp -mc gra -fair fax -hu mor -bbc news -row ling -cal der -seam less -ag ne -p ti -mix ed -t shirts -mer ci -b tob -women instem -genealo gy -pre ven -l our -cra dle -gi use -Ð ¾ -chron o -fair ness -chocol ate -tor y -as da -pre scott -stret ched -al man -u il -re charge -in tre -ob st -hosp ital -hay ward -teneri fe -fried man -vap ing -confe ssions -ye ah -bal li -luck now -cor pse -sculp tor -amp ton -t pp -indic ates -sur plus -tru man -ðĿ Ļ -sin ha -in vo -sovere ign -ke v -establi shing -engra ved -assu ming -ðŁı ģ -sou za -fab i -ton ed -oun ge -del oit -dow ney -no ble -om or -car tridge -ðŁı IJ -u hur -hol loway -succe sses -r sa -âĦ ¢ -ma zz -tw d -disc ourse -. < -y at -satis fy -com pri -ठ¹ -graph ite -disser tation -ar ter -í Ķ -b ally -zom bi -ly ons -a ic -u bc -pra da -e il -da x -cla i -grand daughter -extravag anza -chall enge -ðŁ¤ ŀ -po ver -primar ily -dad dy -man a -bi kers -inqui ries -da un -fel ine -gener ative -he f -benef iting -lind sey -pol ka -demonstr ated -al le -rand y -o su -low key -weir dest -red bull -our y -n ous -wood stock -cre denti -nic er -g ado -aly ss -ap h -prepa redness -station ary -incorpor ated -dy er -sarato ga -cele sti -: " -antibio tics -or gs -inde fin -ap ron -и Ð -fif teen -no f -ðŁĶ Ŀ -ph x -te ga -m z -organiz ational -on air -band ung -pleas ures -mor i -secre tari -rac coon -ca shi -pil ates -k on -geof frey -la o -kam p -depart ments -back packing -an am -à « -crack down -aun ty -on do -li zzie -ph ers -cu n -ðŁĩ ± -k pop -pu t -inten tional -connol ly -bar clays -hs fb -swin don -u ku -s ally -a int -âľ ħ -pen ang -up lifting -epile psy -inter ro -bun gal -go ku -blue berries -ठ¦ -u ssia -sil ky -mou red -i stic -bri efs -me ats -go b -ch aser -state wide -pra sad -gl itch -ar in -ban ff -memb er -ðŁĺŃ âĿ¤ï¸ı -lo ving -hall a -ภ¡ -smo kers -yak u -scicom m -physi o -sw ol -lem ons -gel ato -ch ool -capit als -ki stan -ti ghts -spi kes -trav ellers -ik lan -commissi oning -ar ine -emabiggest fans -empha sis -front line -pad dock -destruc tive -ba ha -l inger -je wish -shet land -mc gin -mon key -ko z -s one -raj ini -te h -y en -c vs -masqu er -gir ly -we sle -was nt -bro dy -termin ator -gil le -mag gi -bir die -jeopar dy -cu bic -vm ware -intric ate -an up -to pia -east on -sab res -investig ates -bu sting -bil ingual -valent ino -in format -fer re -advent ur -hydr ate -for sy -az iz -san to -e de -whist ler -continu ously -d ham -un used -ji had -addic tive -vi dy -do b -i do -fi ed -ni versary -n one -fu er -ðŁĺį ðŁĺĺ -coven ant -prin table -immac ulate -o em -cl t -serv ants -consu med -un released -sc um -pack aged -me re -ìĦ¸ë ¸ -to by -ta f -spo ons -me al -f ball -fair field -jan et -silver stone -dart mouth -follow me -voy ager -kom bat -anni ver -ene w -mag dal -ho ve -sa th -grizz ly -car di -gart ner -sand y -kan ye -post ure -po ign -im pulse -radio logy -horiz ons -si am -aish war -= => -no che -tr is -el yn -com me -du i -ce c -councill ors -cudd ling -creep ing -loc ke -manag es -trans ferred -ne cks -di er -dan o -v ick -lun ches -d he -en sures -cri ss -ul ster -bann on -cont enders -sp am -sweet ness -med al -hon duras -arc tic -ultra sound -in fr -disco vers -ei ffel -ca sters -ru ben -du st -awe ed -atri um -lest we -se ared -ðŁĵº : -ty ne -ex changes -little mix -l le -astron auts -hersh ey -work day -kno b -so v -re signs -today show -der man -an th -af c -ta ster -sw oo -sa eed -per ing -narrow ly -rn li -best buy -panas onic -obst acle -farmer s -ðŁİ Ļ -pa wan -ki est -ang ers -absur d -oh my -sin o -pist achi -sp ice -giu li -prime time -ko w -k ens -ex agger -! ?! -u ba -midd les -ju dd -e jec -slam med -pen sions -of a -re create -b hp -xx l -liver pool -thre sh -pur ity -ni eu -hol ics -wr ath -ra do -gli o -am ma -dile mma -cr u -lets go -.... @ -âĿ ĵ -sugge sting -tru mps -hor us -f v -ic om -refer ring -predic tive -tar ts -ge tte -so ck -glo ssy -pin ky -al ec -thy me -ou ra -thero ad -pe tr -cr am -p fi -dv n -me ier -incen tives -tun nels -mobi l -rec ap -extra s -upri ght -rev amp -per severance -, - -ot p -mir ror -ar wx -ger ry -ma her -g or -hom epage -am is -ag ra -made le -best friend -sirius xm -bun dles -admir ing -t dsb -ðŁį ģ -ch as -slow ing -ro h -wall papers -â̦ / -tek ken -gang s -tal a -lind say -shou l -line backer -tool kit -ur anium -caly p -ab rams -mat thi -ðŁı ¿ -hon ourable -da yo -ver sail -tan k -st c -fr itz -spl end -pat ag -anno yed -on day -devast ated -chattanoo ga -national ism -mas sey -jen n -tail or -dev gn -org ans -zu cchini -on fox -sat ire -wex ford -dis grace -no to -vol ta -âĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı -à ¶ -home owners -poin ter -m cr -au sten -day sto -mo ons -pal ma -gra zing -e so -influen cers -shahid kapoor -compli ant -measure ments -develop s -y d -par l -p vt -rand olph -tor tured -ger ald -eli as -deepi kap -war mup -hick ory -g ap -co ffin -am our -re neg -moun ting -seven s -ig le -hi er -dec ad -tri ght -esc apes -wer ner -t fl -ful filled -ni ger -sour dough -re aper -choo ses -spin ner -week nd -fil tered -sh uk -kat i -old ham -open source -kh anna -at elier -conne c -opho bic -gla s -complic ations -ar son -counc ils -sm ol -as sy -lur king -ling ui -han ks -e in -Ù ħ -ru gs -n guyen -nou veau -men ace -le v -alad din -ru ining -round about -k m -con or -shoo ps -may day -traum atic -prab has -ka iser -k ita -rou ter -pe dro -re tar -stun ner -spani sh -distur bed -acade my -e learning -wit ty -sen g -fer al -av y -sta b -ke aton -ur du -ko to -hu i -coo ke -ari an -the personal -u ma -se ap -a sting -rhetor ic -hand writing -munici pality -consor tium -ðŁIJ Ł -glasgo w -ra ya -eli za -polym er -bro th -prac ti -correspon dent -addic ts -gay le -ail ing -o fe -p li -hear tw -st itch -sight ings -prie sts -sam o -slo th -good wood -roc co -sab c -summ it -l ace -pres ley -itt en -cin cy -thepersonal network -s week -pe gas -af con -regi stry -ci m -le th -dic ap -cand ice -flu ent -sm ack -pede stri -al oud -car ac -priyan kach -p gh -ir ons -dol ce -lat via -dece ased -thero ck -cla p -cen e -fo am -morris sey -gre t -essenti ally -com cast -be agle -argu es -ing ed -- â̦ -sa g -ha san -ðŁĻ Ĩ -ðŁį ° -nh ra -kann ada -indic ators -on er -bri xton -at as -screen play -sor ority -sha heed -he em -class mates -tain ment -es i -breast cancer -zucker berg -aur or -en cia -ref ers -kae per -vor tex -com part -lym ph -photograph ing -ste ff -rest ling -par sley -mom ento -th man -lac king -du tt -ocu lus -fin o -fren zy -ra sc -der n -dis missed -noo k -met gala -sh ill -rapha el -maver icks -exhib its -eag erly -c pa -amen ities -. âłĢ -exo dus -ern st -lit a -deal t -womens march -i ain -score board -campe ones -c en -ti ki -garri son -fidel ity -bra g -road map -psy chop -lo e -ble u -ðŁijĬ ðŁı¼ -sau vi -spr inger -temp tation -ru dolph -ac ura -wic z -parach ute -stro l -len ny -zi k -dom s -nb af -al pac -vivi an -ro ve -pre et -perpe tu -sna ke -air soft -infl atable -prin ces -ati e -ffe y -pati ent -m ire -chel le -sl ack -groo vy -# : -up loading -!!!!!!!! !!!!!!!! -siem ens -provi sion -v fx -need y -f ats -to poli -bhu tto -sa thletics -alu ms -t winning -south western -adop ting -last night -man ne -la ga -tw ell -ac ia --- -- -eye wear -hur ley -fle e -sa ch -pe cker -cost ly -is k -cr ates -polic y -ero sion -in go -wer k -ðŁIJ į -torto ise -therap ies -inter net -chihuahu a -ri ps -fre i -ed or -tai ji -t fc -do d -demp sey -christ in -chen g -hi ps -gra eme -com passionate -cavali ers -histor ic -soul ful -crimin al -ja c -vin ci -expi red -sur at -turi smo -k ona -se aweed -ber ts -le ica -expre ssing -a al -wor t -break fast -her ring -am used -rhu barb -mar tian -cospla yer -y ash -stri al -ra ul -refer ral -dw ts -j w -ad ler -cur tains -gu r -val ence -tyr one -sw fc -coach ed -re born -diabe tic -cho ke -nor folk -investig ative -ðŁĴ¯ ðŁĴ¯ -z id -v mas -phi e -objec tives -âľ ĭ -over due -di vers -mat su -ðŁİŁ ï¸ı -casu alties -ภ§ -al k -stand ardi -re alist -arti facts -pand or -ke x -in vin -( !) -ine y -par aly -mr t -fay e -the voice -on ga -de ed -skin ner -az wx -speci men -priyankach opra -nu evo -bar kley -toulou se -resu mes -football ers -cit i -fe tch -è re -lestwe forget -ðŁĻ ĭ -ch unk -dri fting -manipul ation -equ als -pu tt -ky ungsoo -âĿ¤ï¸ı # -ela stic -par ano -fo y -do ping -cin cy -ss ler -interrup ted -al ay -ado res -ame thy -con voy -ãĢ ı -Ĭ ãģ -black list -gener als -sa chin -bru shed -oun ces -non stop -illi ams -bt sarmy -u av -ru ff -bur ma -bi k -defen ce -schul tz -bo asts -lonel iness -go re -trans forms -alum na -@ @ -ra ppers -ne hru -car o -himalay an -wearab les -ge h -pepper mint -re development -flam ingo -cos by -big baldhead -ag ri -bare foot -sco pes -re gram -gh ana -ðŁİ « -i heart -sa die -carri e -microbi al -ku ala -sk ater -quer que -âĻ © -gen res -reas oning -ch ased -as o -sli pped -en can -vam os -ker s -ad verse -mo il -commod ities -with you -sil ent -hy pe -an de -am ination -whi spe -lit z -âļ½ï¸ı âļ½ï¸ı -ri ff -pp y -lam bs -gan esh -ab sent -regu lator -marse ille -en roll -par cel -wa p -by rd -ðŁĩ Ń -tu ber -country music -par l -contro llers -responsi bilities -we y -ch ate -montene gro -chic o -mil an -l ms -tra inees -appropri ately -un certain -popp ies -ed sheeran -nutr itious -gar o -deut sch -awe some -ãĥ ¼ -comfor tably -land marks -et i -re usable -daniel le -ro sal -co les -just ic -c cs -f anny -ni m -mc u -clin ch -at ene -mer ge -im db -ang lo -uc cino -pan ini -an not -bur berry -feat ure -predic ting -fashioni sta -s ask -imag inary -mm o -south sudan -spe ar -hu bble -jo inthe -coyo tes -sli go -ko dak -sit com -polaro id -roo ted -corru p -ðŁĻĮ ðŁĻĮ -bris ban -at z -ah l -re my -tal ent -aval on -ra da -pau line -locom otive -go ons -ne mo -maser ati -ic u -stu tt -histor ically -sm b -pres by -avo id -so oners -rhine stone -w ad -ri sing -tro t -mo des -reg ent -optimi ze -re ece -sm u -ver ti -newyork city -cor tez -ra c -in case -sin c -fiel ding -e tta -tiff any -al monds -sad dle -k rat -mat ter -g low -star ving -gl o -cra ppy -sl ur -st d -monit ors -recei pt -maymay entrata -mc il -un is -rain bows -cal dwell -pacqui ao -j op -a fe -hoo k -es sen -wiz ard -medi an -fla ws -com s -âĿ Ħ -ing h -ha ynes -anton io -tem plates -ou ter -na w -cardi gan -bel grade -ðŁĴ ī -hom o -a ise -ro pes -no ve -what you -tri gge -concep tion -ad ukone -na di -fri ars -sw er -adju sted -hot line -san ity -kau r -down loading -c gi -ten or -eth nic -app alach -ภ¸ -pa g -gol ds -on set -investig ator -car tel -peace fully -jarre tt -cat alan -poli o -n um -fru stration -dhar ma -my life -âľĮ ðŁı» -aber deen -mu sa -bin der -spark ly -fle eing -instin ct -co ping -domin ance -ill ers -er a -u conn -lo oms -living ston -gal i -he s -c ma -bel a -se ley -mon k -la ch -mar x - ´ -m erica -woman in -es sex -ra ina -jim i -nep tune -z ack -chine se -mart ins -chand elier -her n -with us -ear l -asph alt -modu les -st p -ul la -psychi atric -mile age -captiv ating -si der -men to -mor t -tran ce -tal bot -ab by -ì ĥ -âľĮ ðŁı¼ -j ak -daw n -turn up -scre wed -fe ds -blue print -ðŁĴĸ ðŁĴĸ -har sh -er os -insom nia -ban kers -ta emin -mis conduct -hu mber -gi di -edu ardo -con a -musc ular -consu ming -ra sh -don nie -di pped -col lie -samu el -melt down -ðŁĺįðŁĺį ðŁĺį -me z -exam ining -schwar tz -pri stine -ðŁIJ Ŀ -ve it -ful filling -an esthe -gue sses -dra ft -som me -soli d -pati onal -ho ped -evolu tionary -all er -enter tained -sli ps -lud wig -conclu des -sen sible -bon net -cra ze -tra s -haz ards -const antine -ed ics -star trek -to c -occu pational -in cheon -deepikap adukone -pizz as -new comer -de part -oppre ssion -ebon y -foss ils -tro jan -el en -ste aks -k hou -positi oning -ug by -red cross -ak h -dol ce -us mnt -pp en -dil ig -ma vs -call er -cost ello -⼠Ħ -dy n -thing s -rhin os -a xi -sar kar -con vocation -att ers -ss ss -fun gus -eu gen -russ o -squ at -w sb -eli on -william sburg -s off -defici ency -be arer -o kin -key stone -t wain -cal ming -break able -wa res -horser acing -com bs -bun ting -u it -t land -ðŁĴĻðŁĴĻ ðŁĴĻ -ga stron -sab ot -ick ers -commissi oners -sen ate -ii ot -ath ena -nit rogen -an tony -ero tic -di alo -mis sou -hypo cr -âľ Ī -kaeper nick -can v -d roo -clevel and -o sh -mon sta -stefan o -^ ) -sh ul -po ison -ha e -commerci als -ma ul -nit ro -co worker -alo e -vap or -t ents -russi an -qu id -question able -mid get -po ker -girl friends -sin the -erit rea -ten ure -depos its -buc keyes -spot ter -theod ore -trin ity -joaqu in -u cci -follow the -caf c -mp a -ðŁIJ » -plo tting -dom ino -ta ek -sion ally -dicap rio -pa p -car mel -ig er -bt cc -beth le -www bigbaldhead -foo die -bagh dad -mason ry -off ended -à · -ภģ -sc ro -vers es -ori ent -ar ches -pi yu -know your -gre e -ta kers -gu ard -dish on -bucket list -bha fc -war dly -ðŁİīðŁİ Ĭ -leigh ton -pe w -stra y -assaul ted -in hal -ly fe -amar keting -l x -kat z -ubun tu -me o -carto onist -turno ver -mi z -dis like -mul len -mo f -bl and -hi des -emer ges -chori zo -truste e -ma hog -lan sing -paralym pic -fa int -fa una -ch al -sn ar -cat h -bent on -cast illo -sli ppery -apric ot -oec d -bar o -l z -he ming -clow ns -co workers -peru vian -commu ters -y ell -ðŁļ ´ -under ing -v j -tt p -fli pk -w ana -soc ent -Ĥâĸ Ĥâĸ -ठĤ -oo sa -jag ger -di sm -e less -d ham -cali f -a official -ec lip -harro gate -gra pp -com rade -n tr -concentr ate -thi ghs -bit coin -bel arus -ë ĵ -end uring -now watching -industri al -pi p -ar on -ar at - ® -whit by -oooo ooo -sa ree -tic als -mis leading -yo on -year s -sle igh -roman ian -sciss ors -vam pires -ac up -ab ba -th weeksary -cent ri -fl ye -u o -c bi -bu ena -sin d -mar ino -bur r -re building -ठ² -anniver saire -ac ca -ðŁĴĢ ðŁĴĢ -gett ing -tu lips -wolf pack -âľį ï¸ı -more than -ta kin -ð٤ĺ ðŁı» -u be -mon ic -dou bts -mo wer -co balt -don ne -specul ation -argu ably -kak u -htt ps -prosecu tion -din ah -stam atic -disclo sed -bever ly -fl wx -cra bs -extraordin aire -war mest -imper i -o logists -trac es -par c -lake side -am r -ter i -hour ly -domin ation -ar row -shrews bury -ance stry -wr angler -trigge red -pen sac -roo ster -survi ves -a on -bo ko -val or -love is -la g -pe y -fo cal -out laws -bl anc -artic ho -wit s -marsh all -die go -support small -u ca -sa h -je et -syn ago -gover ning -ðŁĴ ¬ -sal ads -cre ate -miri am -cen sored -ami de -no u -z eta -allegi ance -* ) -bl m -ric an -pa stors -oly mpus -blo c -whir l -star ry -pr one -y k -p ne -congratul ating -be v -so ber -love island -sa ir -an ing -tutor ials -q e -lun d -in ist -cle ver -taxpay er -ali z -wren ch -dd ling -cap ri -h pa -ðŁı» âĢįâĻĤï¸ı -na j -o j -futuri stic -jelly fish -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ -cel ery -plan k -fil a -ne me -un healthy -lec tions -ðŁ§ ¡ -rit chie -n ws -mi kha -wonder woman -âĢ İ -hip stamatic -ka g -ðŁĴľðŁĴľ ðŁĴľ -poul try -mo w -wor ds -lo ff -ðŁ¤£ ðŁ¤£ -relat able -re mixes -keny atta -ke m -re signed -fo d -stra igh -j lo -hu tch -box ers -colle en -mag s -instruc tional -ko l -attrac ts -pra g -account ant -go ggles -br u -th ole -mar row -leu ke -oc to -pon ds -bubb ly -he ist -ìĹ ij -im p -a har -ha unt -hall mark -psy ch -kkkk kkkk -col umb -jump suit -cost co -si delines -ag gies -over turned -ni b -key chain -fu k -f af -mi am -assist ants -cy cled -ri der -dam mit -red wings -mag es -kin s -ì Ĥ -ho d -son t -carol ine -" ' -cu le -bra id -fel ony -ar ities -ruther ford -depic tion -isab elle -ro ach -k day -fifth harmony -em y -li gam -bari sta -albu querque -gro ss -ðŁį º -oo ks -ðŁij ¼ -dun can -try in -jag s -g ould -li tho -âģ £ -а Ð -sam my -tun g -cas ser -apo lo -aaaa a -man g -as ics -sh en -p ye -tur bul -ss p -saint sfc -on lin -n anny -he ster -do z -à¸ Ķ -th read -ren ts -kh and -ðŁĴª ðŁı½ -un conditional -rob son -car re -ph on -sacrific ed - £ -auto s -par ker -oc a -log in -kee gan -hard cover -dough nuts -ðŁĮ İ -spit fire -refresh ments -saskat oon -commod ore -j f -rub ber -halam adrid -child care -stra da -io m -ri k -dak ar -ther mom -cro pped -gar u -ali k -ven i -i ft -si ka -ritu als -z ul -e ch - © -su dan -l land -i me -do cker -ì ¤ -fe ared -fa o -wal ter -no g -mutu als -l h -ali gn -mon ia -concep tart -ðŁĻı ðŁı¼ -sco e -compet ence -sw ine -ly me -laun ch -green er -abstract art -inqu is -gran ada -ga elic -flu ff -d backs -grave yard -ba be -acade mic -adventur ous -joh ann -~ ! -bi bi -| # -pl ings -gett y -as b -âĿ¤ï¸ı @ -staf f -religi ons -bang or -world bookday -me gh -de vin -ash ore -meri dian -gi thub -qui z -all stars -be stest -ir resi -ack er -do te -war rington -pol ly -newor leans -cr ou -wi gs -che y -smithson ian -la sag -de tour -bor is -stra ps -mari ah -inten tionally -ko h -ðŁį ¸ -ssi an -mar issa -cor al -episcop al -casu alty -tom o -supply chain -sam p -on go -ro o -cavi ar -p fw -clau dio -buff alo -s ations -mat ty -snap back -l ds -al arms -mat te -âĺ Ķï¸ı -conditi oner -d ors -he x -fi zz -a stri -sus sex -secur ity -qa eda -all star -cocac ola -as one -cl icks -sc ans -mu te -he avier -ðŁİ § -âĺ ŀ -lv l -book boost -youtu be -fla shes -f jor -c su -explo de -do dge -cair n -gonz ales -th ill -pel le -hart ley -renew able -re tin -e stre -costar ica -shipy ard -nc fc -pri ya -a ghan -an ath -plu gin -co rey -re bound -or u -kat rin -hor mone -gi m -mahin dra -s sus -park land -har per -fanta stic -infer no -ep ilo -wrest ling -fe ct -c it -ac oun -to ssed -monu mental -char tered -bu st -pe tra -âĮ ļ -wildflower hour -sweat ers -* . -bl er -ate ch -go wan -demo graphic -bra l -suici de -renov ations -vu el -sin ister -ar mani -miso gy -ph arrell -nap s -un iting -crusad ers -cor gi -insu red -than i -no or -g q -d ada -bicy cles -snu ggle -sch an -ten berg -ss al -fe mme -bo il -½ ï¸ı -re ap -occur ring -hus sein -divi d -sto ke -sh alom -na ia -o lic -frustr ating -Ù ĩ -ig s -gro ver -scen arios -n ds -bru tality -med alli -bu on -sas s -skate boarding -ony x -lor ry -ny u -gau tam -mm ings -gu g -end i -lo thian -comm ando -chal k -ph ora -asse ssing -ti gh -crun chy -ad ay -is l -ci ara -pilgri ms -kam al -p to -brit anni -t ani -sm c -l ure -app store -ab y -golf ing -cl c -fa u -an as -shu tting -regul ated -carn age -scow boys -all enge -c ma -humbold t -rel le -ku mb -her i -refin ery -sound check -d wayne -bos nia -i sp -the alth -anni v -relev ance -my a -bag gage -dre ad -s bc -th ed -bu h -hi jab -lo id -ke w -c te -respec t -lovel ies -cu bes -celebr ate -dir t -sav ers -_ , -gar ment -pulit zer -mas jid -beat port -al arts -encry ption -s ner -ple ads -found ry -sym metry -ru mi -birth place -scallo ps -supp le -pivo tal -t ati -no de -so d -pro xim -tr ics -col dest -bren t -mand u -cla ir -e ach -and alu -hi ddleston -ðŁIJ º -mel ts -v ance -pin n -se ments -scre ened -sa chs -o bl -ic ha -âĺĺ ï¸ı -school ers -heal ed -lo gged -ð٤ĺ ðŁı¼ -ic us -bore dom -b ish -b ffs -tal king -sure sh -hoo kem -de on -de fl -ei leen -ðŁį ķ -women intech -ri sotto -rang er -adverti se -ภģภ-tel ly -la go -dart moor -d ong -sk ates -lo go -un ner -mail box -ma sala -lo oooo -amethy st -che wing -c bb -australi ans -rc mp -game art -# ... -kor n -extre mism -fruit ful -anci ent -pu bg -pol ite -wh it -mur als -m gr -line man -dav ao -ste ms -ten nis -av age -tu pac -gigan tic -hs bc -auto biography -up the -ี à¹Ī -re gal -fig uring -ku l -mis sy -hoo p -gra s -for ums -back lash -abduc ted -p nw -min ic -bu tt -bott oms -at on -ven g -ðŁĮ ı -del aney -prab hu -fan club -over haul -health ye -sy no -aa f -ren amed -kim i -un cle -man city -se u -qu anti -este em -um in -en zo -mel vin -under go -j har -far ah -coast ers -humph rey -mh z -children s -^ . -d hi -disrup tive -integr ating -r nb -over sized -a ide -ne au -docu mentation -ðŁijĢ ðŁijĢ -pal o -hear th -ri yad -pun ctu -abc news -secu res -boy band -bir ch -ju co -tra ff -legislat ors -bay a -ãĤ ¯ -no ises -collec ts -s warm -k ner -bi shops -stur geon -snapp ing -mo l -fre aky -chair person -tro p -lyn ch -car cin -art sy -e sto -cha i -fl ur -inv ali -sau sages -im el -j or -fun fact -wit ter -puni shed -ac ons -h ya -re versi -em c -dif fu -z x -sp aw -cla d -d mit -hol land -fre sco -pay roll -ab undant -stu ffing -mor o -c ny -boy cott -wend y -ele ven -pro voc -pil ot -tr x -be ad -climate action -ri on -assi e -ì ĸ -o sm -islam ic -ho ar -good reads -al ici -afterno ons -spoke sman -jo lie -it as -masc ara -âĻ© âĻ« -pre vail -beetro ot -lu jah -k li -dod ger - » -ru le -l n -scre am -ho bart -col bert -r tc -er m -pat ro -quo ting -s live -que st -non fiction -semin ary -prosecu tors -ve st -express way -g ge -nau tical -et f -ðŁİīðŁİ Ĭ -dur ation -cha ired -the film -fab io -she h -can o -ðŁĴª ðŁı» -with draw -! :) -cor pus -phen om -yel p -la wn -ent om -snapp er -but te -pin ball -pro xy -libr e -alle vi -n ada -gabri el -fo wl -eure ka -daph ne -tu nes -pun ched -wh ore -jo g -ren tial -man ners -o pe -wh ufc -gu th -revol t -sne aker -philharmon ic -ho ste -sovereign ty -ðŁĻıðŁĻı ðŁĻı -fish ing -sci art -fe ta -i pp -dump ing -kel own -gir i -dig its -sal u -san jay -twee ters -sp as -col chester -sc ab -ma dd -๠Ħภ-Ä ĩ -ged don -march for -do p -maure en -un plugged -di do -fashion blogger -up a -mex ic -tar y -pol ye -jame son -v t -grin der -mad dy -consult ancy -¬ ë -leagueof legends -ac cents -um ni -jane iro -tu ss -h ens -ampli fier -to shi -pret tier -pre vents -new town -red wood -vant age -ball ard -ar tof -a she -a sion -lac ey -ap at -gro ve -ภĦ -rw and -real tors -tra itor -bed ding -ö r -zi on -fla shing -cam pan -boom er -secretari at -ab ol -liti gation -cont amination -se dly -shred ded -in for -do herty -bench mark -ro che -skate board -sho vel -i zz -to pper -o ster -laby rin -autu m -k ong -hum mus -vi z -tech news -kla us -am using -socialmedi amarketing -i des -cast ell -ste e -underestim ate -cal ab -pa ign -b illing -unanim ously -g mb -fly fishing -hath away -commerci al -colour ing -skul ls -pivo t -te p -tb c -motor way -x press -construc tive -pu k -under lying -kir sten -mani ac -cha o -se ma -chiff on -ðŁijĮ ðŁı» -ver ona -kom o -stan doff -wi ped -c ated -bla ir -wor kin -m sc -bethle hem -swi pe -unexpe c -pe es -pe tri -orig ami -ðŁij ħ -mex ico -flav or -ru dd -cannab is -mar u -ri ddle -wor shi -sil on -sch at -ap se -tang er -bi ous -e er -questi oned -o zar -dan k -angle sey -char an -bak u -compe ten -re pri -bat ter -sa xon -cal ves -leng ths -$ $$ -âŀ ¡ï¸ı -immer sion -ga unt -car ry -cy to -b anda -shu tt -experi ence -el gin -mous se -ta z -ê µ -in correct -en z -b ham -mor on -so ver -ar un -ti pped -la ble -de arly -bau tista -í Ļ -mor tal -woo p -dt la -sho cks -dav os -ðŁĵ Ŀ -swim wear -her man -ðŁijĩ ðŁijĩ -z ir -neglec ted -grac ed -campu ses -av s -ar ora -swach hb -live pd -ac cra -enqui ries -shoo ters -kur t -vancou ver -brad ley -gar da -g ü -ol la -attrac ting -up ton -ne win -lu mia -furn ace -ev ers -e on -sw a -roo kies -a oc -v ss -bris ket -tor ch -yo da -heart land -tac o -ph ony -food bank -ab bey -bab ylon -u y -gre ate -expre sses -d andy -sc apes -survi vor -ron d -e ci -ha vin -ab el -chil dish -tor que -wav y -ur self -kanye west -year of -ale stine -o brien -al fon -sk ag -kore an -anchor age -val eri -de w -ðŁİ ¨ -land slide -car ole -christ en -go phers -af i -priyan ka -q q -power of -it te -pc so -tw ol -pr y -intellec tu -guer rero -pi les -wish list -w ren -time table -ë ı -prodi gy -gibb ons -. / -ne ur -anz ac -mur ray -vie st -pla ster -la ir -art gallery -inter continental -g br -bell ator -nam joon -mam mals -am el -y aw -saras ota -cam ar -bud ding -sum mari -aco sta -la sh -ey ou -post graduate -instruc tors -ti g -const ant -were wolf -ic os -cla s -glen n -bud ge -ðŁĻ Ĥ -er ta -sta ins -persecu tion -cumb ri -o ch -syner gy -hu ang -scand in -mid terms -comment ator -regar ded -perpe tual -bo iling -al p -lan ge -sch le -fac eli -twee ta -ri dden -ok toberfest -charlotte sville -ik lan -jo u -ch atham -b sc -ðŁį ¦ -stra uss -mel low -xx xx -happy hour -re actor -ww er -distr action -at orial -ðŁĴª ðŁı¼ -twin peaks -fay ette -a or -ko k -bro om -sy fy -ou se -am ag -Ø · -ubis oft -lu lu -hall mark -stu art -it ya -si deline -venge ance -re lu -sex ism -boun cing -un ites -gu stav -te ssa -stu mp -pro clamation -ima x -divid end -col by -ðŁį İ -play wright -un safe -co smo -ðŁĩ²ðŁĩ ½ -cup board -constitu ents -ang lia -ram page -ðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺį -than ked -take aways -shro ff -de bat -kh ur -conduc ts -format s -à © -port age -graph ers -u ten -pre m -mo ines -condem ns -s ous -l ps -f cs -deal ership -leuke mia -bure au -ski d -guardi ola -ca ster -thir d -avoi ded -en cyclo -c sr -vi xx -analy zing -she ar -dulu th -shap iro -chan ting -stre sses -as be -mil itia -ãĥ ª -col lin -arsen e -sure sh -teach ings -yi xing -sh ill -nu des -sv u -clear water -war ped -pro life -artist son -it u -versail les -galax y -ax el -spring st -cal a -hu hu -sc u -commit ments -exe ter -poign ant -mo tion -conserv atory -row dy -rec alled -mu sk -emb elli -so the -âĺ Ģ -sto pper -sch ild -to pe -el mo -zi el -j om -barn sley -snow den -on tour -jour ney -hills borough -par ole -w ts -mo ving -ag ility -tiv o -ff ers -kindle unlimited -g wen -ann an -ah mad -tex tured -hepat itis -dra m -insi ders -tis sues -ãĥ Ħ -fc barcelona -cr atic -na acp -pe can -f gm -custom ize -concer t -g sm -pe g -p one -justin trudeau -super cars -happy holidays -bu lar -ado x -lap tops -digital health -destin ation -gradu ally -áĥ ¦ -popp y -ss l -inhi bit -star light -of fro -glo omy -x per -hal der -im plants -le to -hass el -a as -un told -en ci -liber ia -or an -con tests -il ah -sma g -sc out -mari anne -cr yo -schedu ling -lo s -kan e -stutt gart -ne se -law rence -da in -pho tom -car ou -ภ£ -g wy -national dogday -roa sting -band camp -kentu cky -stret ches -ke rel -ca she -ãĤ ¸ -sta x -tran si -dog gie -at ric -hal le -ci vic -brow ning -lein ster -cat day -high land -joy ous -in cumb -or lando -ro mo -col ton -del ta -car ab -ro tc -aster oid -goose bumps -mo logy -yo ko -an ds -tomor rows -red carpet -sm p -ca sio -ðŁ¤£ðŁ¤£ ðŁ¤£ -se au -rejec tion -rot ating -bi partisan -th un -mat i -bon i -ol l -ener gye -do it -l j -mother hood -lou ise -neck laces -el ite -ni x -l cs -en v -gl u -le sh -cran k -su sie -m clau -so tu -crow ley -rat ri -use d -bre ton -alfre do -ye o -travel pics -ti pp -elli son -sax ophone -me red -heu ghan -ta ine -f es -vi ro -suppo sedly -i as -dige stive -y le -li zzy -wildlife photography -bri anna -west field -ra ined -am her -ðŁĺĦ ðŁĺĦ -distribu te -bott om -pre serving -oil and -craf ty -de scen -col ling -shakespeare sunday -r wc -ang led -ci an -t ations -mon tage -me yers -france sca -ðŁĮ · -wi ggins -san ford -volunte er -car ra -bar k -vari ed -pl in -am u -kap il -rock ers -qu ind -br ane -in mate -ent al -impro vis -michi gan -re tweeting -progre ssing -mercedes benz -smo ker -physi ology -dor ado -watt pad -h wa -sr bachchan -w ga -vol atility -hi re -ac ap -wn ba -hein z -stit ches -kidnapp ing -bur ys -lim b -f itters -thumb nail -ton e -mir and -desi rable -ad dison -tar an -tamil nadu -spec tator -soci ology -amit shah -remo tely -âĻ ¦ -ham id -r ds -g lee -smooth ly -sch ro -er c -lali ga -he als -us f -ni shi -d hu -un il -h le -tro mb -bhu tan -pilip inas -se ung -whit man -te y -min ce -snow boarding -re au -k ker -av o -zach ary -ran veer -ti k -gover n -qu al -beck y -anthropo logy -att en -grocer ies -de bit -war p -sil icon -hawa ii -ðŁĴ ħ -pomegran ate -pe er -orang es -people schoice -end ure -ðŁĴĽ ðŁĴĽ -ãĤ¹ ãĥ -ac ial -a haha -stu k -imper ial -bl ond -pow der -kno ts -vin ce -wood lands -den a -watch in -mat cha -ma hat -galax ies -middles brough -k ö -stre e -resc ues -wal do -lero y -desp ic -real ities -tm nt -ha q -un o -pe c -bolly wood -blin ds -design thinking -he ms -and hra -ab sen -fan s -ste ch -shire hour -bla ine -shak ti -pu rely -ðŁı ı -tra fal -ke ynes -gr ate -to bias -spon taneous -satur ated -caval ry -pri sc -ðŁĺ ij -wh t -pas si -~~ ~ -vir at -patt inson -la o -weir do -sym pathy -ju da -occa sionally -cred ited -stat u -es co -hil ly -esc ape -dischar ge -se er -may nard -sud bury -z lat -or al -we er -encoun tered -sm elling -over sight -ê ¸ -that cher -mack ay -you can -fre ep -freed oms -prophe cy -ho e -ishq ba -dra ke -qu its -pel led -tur k -o vi -wesle yan -new music -leg g -ch eng -h illi -ay y -pan ties -ad versity -ad jac -vaccin ation -ju ke -ga c -exce ed -time sof -sta ining -ep cot -v ital -up ward -bethe sda -apar k -ma hi -camp fire -enchan ting -rha pso -h z -na ver -fa x -vali dation -ac ad -ny r -as ym -coordin ated -depar ted -all ery -var ies -spr ite -chap lin -ss occer -s wat -bre t -relu ct -tunes app -super star -reminis cing -o co -home grown -dough nut -un canny -la pd -thyro id -! âĿ¤ï¸ı -botan ic -bre s -sp ade -i ste -echo es -du lil -bur sting -qui ero -ðŁij İ -loy ola -amuse ment -ha ils -sleep y -burgl ary -âľ ı -ro gue -cot land -mo ors -low er -wic ked -ðŁĶ Ĭ -compet iti -argent ine -yvon ne -karti keyan -ili ary -gat sby -precin ct -six ty -na ji -cam s -practiti oner -ðŁĺ³ ðŁĺ³ -pu ne -neg li -juli en -inv aded -cali br -cla m -duba i -mu k -lan tic -produc t -fe dex -ï¸ı : -eu ra -dari us -s ling -virtual reality -home stead -ðŁı³ï¸ıâĢį ðŁĮĪ -pac ed -in ha -pul mon -la zy -premi ering -ma stered -in he -con gregation -ba jo -sport ing -new jersey -hor ny -lma oo -leng thy -du t -yo gh -swe aring -philosoph ical -pap ua -in ski -know les -dy ke -âĢ ² -to ken -mc guire -ri ot -probab ility -mc con -gro s -su mat -c ite -da a -on da -mad dow -che w -board games -spar ked -re claimed -ad hd -ny se -imwith her -equ inox -boo ths -balsam ic -ha zy -dor chester -ag os -se aw -moder ator -seri ea -ander sen -pilgri m -âŃIJ âŃIJ -itch en -hal li -x ton -nathan iel -mun ition -celesti al -ga f -zo om -mark le -pen thouse -cal e -s fa -bar king -tu cket -em ery -cal orie -li que -ad ar -mc nam -tor tilla -wood pecker -mo town -bad ger -ayr shire -scram ble -dd ay -cra ziest -per rie -cho co -cast e -i ot -wre cked -selec ting -uss r -gra ft -pun t -lab ou -ir st -ba ek -Û Į -su ki -que u -ach at -te ster -aug mented -wc vb -sin ks -ðŁĵ » -ra ke -inter ne -be cause -belle vue -une arth -light en -ðŁĺ £ -turn around -labe led -unemp loyed -twitter kurds -le ia -h ye -great er -ðŁIJ İ -tim ed -i red -e tt -limit ations -cab e -s out -bee ch -anni hil -re trac -yo ona -ang er -den nis -supp lying -di z -" ( -sc ur -gun man -su ho -sauvi gnon -ภ¥ -wi ley -land on -choreo graphy -pre historic -ðŁı ĥ -var gas -assess ments -pinn acle -di i -chamber lain -ì Ī -v p -present ers -deut sche -sun shine -sal utes -r one -bu siest -- .- -motor ists -hemi sphere -al wx -ps p -ow a -den ying -cho c -gu tier -han uk -mus kete -jait ley -se wage -t ame -thin kers -shi m -se quo -pap ar -middle east -k wa -ke g -patag onia -no y -bar ça -take off -he a -à ¬ -n sc -g dc -ðŁij Ī -mou stache -mel ania -thr a -â¬Ĩ ï¸ı -pier ced -ze us -fon ts -ber a -it iner -q atar -contr ary -ire land -i fy -ou los -commun al -fin s -un paid -pa a -ðŁijĩ ðŁı» -ri os -ou p -f iller -cafe teria -à¸ Ń -kas i -cali ber -z ulu -v sco -ts ford -dragon fly -smo kin -pi st -psycho logist -diplom at -we bs -buc cane -à® ¾ -motiv ational -du ne -ba e -c fs -with out -er on -i ac -ate e -pen sion -fra zier -en sis -sk is -par ting -ger y -territ ories -nach os -eni ght -ever lasting -msd honi -tel e -sp un -po di -sab ah -environ mentally -ce ase -beau mont -mar ta -kel vin -ho ff -sun il -n da -co b -sh ale -ree dus -un boxing -u bio -re opened -n all -capsu les -mar r -himalay as -swee ter -ja z -f mr -twee ter -dha ka -na u -de mi -d fs -ta urus -fad ing -it utes -ci p -over flow -jef frey -don ny -car tunesapp -ðŁį ij -prefe cture -danc ed -c pt -ple asing -ital k -earth quakes -ul ation -hi o -ãĢ ĭ -ant an -nutri ent -de ere -selec ts -enrich ment -r iti -tram pol -bl amed -j ia -contribu tors -chesa peake -pi geons -tribun al -mad uro -w su -ilo ve -effici ently -dar cy -war ms -ar ra -ec u -ho wer -strugg led -rajini kanth -ðŁĺ¢ ðŁĺ¢ -hou sing -str at -eli x -disp ro -raf fic -thi erry -na sty -c fb -staf fing -al ma -back ers -hen son -sky walker -reale state -roo s -ness y -chan ce -cair ns -c ci -pe dal -ly ft -cross word -wait er -only in -kru ger -k ir -alej andro -car tier -car rera -re paired -ou at -un clear -un breakable -today in -qu eries -jo dy -gen ital -win ner -to l -kelown a -fascin ated -ãĥ ¬ -sris ri -squ ared -spr ung -negoti ate -priv ately -av en ->> >>> -g ical -gav in -chester field -zu mba -or r -nat alia -impeach ment -mn l -car at -criti que -credi ble -trac y -tan i -musi k -jig saw -gam bia -tol kien -fe u -as per -sav ory -fo xx -f itt -mar lon -l rt -v ell -p br -imprison ed -i om -chu l -wind shield -kay e -ba a -chor d -s art -al gon -minister ial -nat geo -la zio -nor ms -ðŁijį ðŁijį -lic king -fut bol -un sung -dalla scowboys -sh red -distur b -dev ine -be ards -ch f -b day -ro sso -ig or -ay i -si ren -k air -sti les -ro f -mag nets -un cover -mou se -bang ing -si ghted -spe ople -impac t -row land -kir a -environ ment -love the -p sis -mish ra -gl endale -ca jun -o che -de ception -sex ist -stra ws -s ga -buff er -apost le -sp l -pop up -ðŁļ Ĺ -r g -up er -ball in -i dy -occa sional -national park -ðŁı Ĭ -u an -innov ation -ภ« -te aparty -re tte -counter fe -b ha -rec s -ig en -ðŁĮ IJ -humming bird -cu r -ha ven -la zar -pue blo -: : -zi onist -op ath -inver ness -promo ter -carto on -cabine ts -mahog any -surve ying -r ational -feel ing -testi fy -so w -oc on -ภ¢ -ne el -mar is -sol itary -che mo -rad cliffe -sim ons -ros ary -new er -jo die -re tali -pra wn -pad dy -hen ge -k ala -im plant -at y -bren twood -par adox -ene z -re designed -p our -wy d -al de -௠ģ -sol d -biomed ical -๠Ĥ -tt tt -mat teo -ys er -new ton -de bun -ner dy -loo l -wo on -elisa beth -ec c -wh i -ach o -salv age -sal aries -qu ity -navig ating -oph thal -con soles -re built -o pec -ast ers -sho red -set list -kathr yn -rhy mes -re visiting -ash ish -li ft -re post -sole il -âı ± -weal th -sa at -we c -king james -flipk art -field work -se gu -mo dal -bu b -are rs -ðŁį Ĵ -clo oney -pad dington -necess ity -guth rie -pen te -li mo -jo sie -ar tin -en c -l hs -betra yal -info graphics -i er -mo a -hear ings -bon jour -sym bolic -ag ro -wed ges -krist ina -wild flower -athle tic -photograph y -pe sh -ca hill -chi lean -gou l -fi oren -ðŁij ¶ -z il -sk im -bad oo -deli a -tre ble -n cc -ðŁĩ¦ ðŁĩ -a house -bul lock -sol itude -ا٠Ĩ -can cers -futureof work -hu tch -water shed -war mongers -sp illed -colom bo -mo th -associ ations -weigh ed -global goals -not just -christ i -tor g -swe ating -man eu -clu sters -â̼ï¸ı â̼ï¸ı -ta ped -ul y -tru sting -yu suf -te in -ra b -, ,,, -sin ai -audi ble -explic it -cro wns -sch iz -at least -ðŁĹ £ -de bra -je suit -ene gger -z hen -one sie -i it -ss f -gur gaon -chak ra -bear cats -k ran -k awa -reque sting -han over -g end -sor os -mer cy -lovel y -do omed -tim my -ku z -ul l -ab ram -sa ison -ãĥ « -clean ers -re mo -circu its -bar red -o th -mo ist -madele ine -gall o -u j -per mits -hea viest -car ols -az te -gior gio -flo ats -decl aring -us rc -min at -craf ts -pri ma -conven i -nickelo deon -danc ing -ceremon ial -blo gg -tw p -anglic an -she k -k nick -( (( -hubb ard -harve y -hit man -fen g -we some -for za -s word -op us -bro m -gi bility -z al -m unch -dance hall -gre edy -hd mi -re birth -ðŁĺĭ ðŁĺĭ -s world -figur ine -com post -k f -engra ving -gior no -st ana -k man -ham ster -compos ers -aj e -func tionality -pol k -is ons -air planes -te se -hor rors -musc at -gi ven -sp ence -ðŁĩ¸ ðŁĩ -eli ot -ach illes -fre ck -crypto currencies -sou ther -hal o -bor neo -polit ic -hahahaha h -up state -si ena -obsc ure -hau sen -lloy d -happy friday -motor bike -bon a -americ as -hol s -- ( -spor ty -un aware -reven ues -christop her -bank sy -av an -ev apor -com press -eyel iner -to dos -buff y -renewable energy -ly rical -ar chan -rapi st -fair trade -lma ooo -beat z -pro active -la pse -ir ical -revers al -po de -mcin tyre -mac au -ãĥ ķãĤ -nash grier -f sa -g all -çĶ Ł -perpe tr -il ya -configur ation -% ; -str ange -rac i -ภĩ -pic kups -kov sky -mam mal -w ps -g able -compar ative -z h -save our -da vey -on etsy -mu ssels -mis er -cri stina -electr on -cra ve -lo ren -precipit ation -m z -ðŁį « -vin cen -snow board -no ida -ah n -marin ated -g tr -town hall -min is -bethe l -adv an -su ra -shi el -fur ry -ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ -lyn d -so il -sc ence -sen eca -shar jah -dick ens -credenti als -av ar -per k -requ iring -pre fer -j ian -de ca -r ach -ing for -del e -be ep -ðŁĴ » -cis ely -hu ddle -green sboro -haw king -ho ax -hang ar -ç ľ -mis o -lo vin -gre ta -ab ad -logi e -at an -snow flake -mahe sh -fear the -al kal -bobb lehead -ba hn -ju dged -fu tu -feli x -ðŁį ĵ -pi ke -der iv -notic es -au er -dis super -or da -wi pes -am ino -stri kers -foo tb -dram as -pun ching -score less -heming way -bi h -bal lad -chat ter -am mo -kle in -fabric ation -kari m -z end -hi sto -vol ta -rock y -marke ter -xtre me -sequ encing -paradig m -cle ats -boom ing -âģł âģł -block ade -promp ts -yogh urt -pur pose -nu r -regu late -nois y -ing rid -bird watching -bar tender -Ù ĥ -wor dof -cha otic -shor ty -el dest -z app -onceupon atime -fl yo -rit os -mike quind -ðŁIJ ´ -regi stering -. ] -ad ol -gg gg -pur ge -kid lit -ar bor -val ves -synago gue -o th -unanim ous -veri fication -dar rell -ãģ Ħ -vander bilt -tape stry -pro sper -did dy -dra fting -de cep -marqu is -st int -michael jackson -pee led -men us -bb b -sc are -ema il -wri gley -it is -f ell -some thin -bar ra -ed gar -di pping -pu ddle -sla de -lear ner -jal en -ðŁ§ IJ -the daily -mikequind azzi -ju x -iq bal -mckin ney -ra iser -ef an -dr one -cat o -pic ket -cro we -l att -uk o -giuse ppe -hin i -synthe si -ponti fex -song writing -to d -swit ches -din ners -h q -gabri elle -pensac ola -cir cle -expo ses -ev s -riyad h -pro men -o ck -sa j -cit ation -brew co -jo si -ep aper -dri f -point less -tang led -cri pp -line ups -fairi es -daz e -mour n -bla dder -sal z -bur undi -book mark -the people -sub sequ -princi pal -sk er -court ney -a oki -rac ers -ad m -mom a -critical role -hou n -shed ding -sa ka -ace ous -mck ay -hus bands - ½ -me da -accu sations -ro sel -nc is -witne ssing -or ama -go ds -hil ton -el man -ÃŃ n -meg ap -cra ven -announ cer -crit eri -sheffiel dissuper -milit ant -consu l -hoo ded -aby ss -b x -ma dam -lo cu -mary am -manic ure -grat is -ac tresses -ros ario -this dayin -king ly -gn ome -cel ine -r ous -he el -lil ac -vish al -ab h -thor ns -s ls -ne al -construc ting -be ren -s lang -ma ins -far ra -sar ko -pai ge -gu iller -l ala -ice berg -nou n -plann ers -u mmm -ou ses -ill ary -ma an -box ing -zi pper -srin agar -migu el -o str -mp o -responsi bly -lan terns -appli ance -x b -gren ade -neglec t -dy sle -ham mock -ne ctar -wit cher -r gv -di ence -ser bian -seed ed -cru z -bi sh -sp he -e q -sky rim -alge bra -phil ately -bungal ow -ge off -y ves -demand ed -consider ations -the vamp -pawan kalyan -co ded -grit ty -erup tion -se infeld -uni denti -ëĭ Ī -wor m -ac us -se ung -dun g -ro land -su d -di visions -ab lanc -shor test -j f -p oun -plant based -be to -tough er -mc o -don et -mark us -v fl -ðŁı ł -open ing -co ward -caber net -o xi -burle sque -sand ra -su mo -consi st -tho t -cay man -motor ola -gutier rez -d slr -y w -no bel -nov ice -moms demand -grun ge -sp or -d cc -pre sses -sli st -allot ment -voc ational -ft c -pu ja -lo ven -utt arak -tan dem -sh ep -come dians -anat om -cant wait -healthye ating -west side -mar gins -chi ang -asbe stos -stupi dity -proble matic -fit bit -: $ -ceil ings -shu a -protec tions -bio tic -beng ali -re sts -bien nale -tim o -cul min -e minent -affe ction -unbeliev ably -individu ally -canvas sing -wh itt -nov asco -chin son -h pe -go w -gloucester shire -pa o -thresh old -chev ron -s ine -we ther -pp ie -aqu ino -antwer p -âĸ ¬ -po on -inst af -equ ine -cinemato graphy -nbaf inals -vali ant -kil kenny -te rence -syste mic -sr l -p ound -made ira -pl ough -tre cht -mat ed -mp d -ransom ware -ph in -li qui -bb ce -boom er -i standwith -con ju -r te -nar a -foo lish -da shing -vier nes -br ite -da u -juni per -ai da -you now -ra zer -de i -repe ating -comfor ting -adjac ent -e to -ca sted -chat ur -mu er -syn th -san itary -mac le -independ ent -law ful -e erie -h or -ðŁĴ Ń -am rit -vel o -station ery -mu f -may may -contempl ating -elabor ate -gre gor -dri es -ac col -ภļ -schwarz enegger -ill nesses -day break -follow back -collu sion -electr onic -jo vi -hiro shima -ta w -hom ec -mic ah -qu itting -fro sting -ben fica -hel i -s ical -pic cad -corpor ate -ment orship -you are -sing er -shi va -ru ne -ing er -ri um -play able -doo p -wil low -ter re -ni p -at d -war bler -profession ally -er ase -proce ed -pedestri ans -mis chief -ben ding -alas kan -c kett -mo p -dd les -shut ter -ge ared -atene o -ma deline -g ations -o sha -der ick -sw ild -an gry -pat ents -hun k -decre ased -fr y -ðŁĴĸðŁĴĸ ðŁĴĸ -sal on -quant ities -d ario -ni gel -ku ma -jen n -happ ye -xx x -rex perience -pro s -au sch -rele ssly -ham burger -fuku shima -er ne -stat ec -ren d -may field -j one -lef ty -bern stein -sm il -gener ates -fore station -band its -ta yo -r ca -ac ci -rodri go -kn app -elo vers -vege tation -u ral -le ft -ħ ï¸ı -worl dre -sur i -embar k -w son -ba you -mu ller -mo vers -ðŁķ º -presby ter -l f -cre e -bat b -sal am -demonstr ations -an ec -n pc -it ics -to graphy -re inst -thur st -tal e -off ences -smart city -bro tha -ofthe year -in valuable -ear n -ðŁijı ðŁı½ -kre mlin -gra dy -town fc -guern sey -ma ha -contag ious -dre x -be en -( £ -nati vity -k tm -somer halder -comp ounds -íķ ĺ -" â̦ -af g -ott news -h ound -fire fly -cil an -donet sk -volunte ered -ak ira -è ª -sing ul -st h -dro wned -mand o -he ir -ðŁİīðŁİ Ī -tax is -y uki -vel d -k ans -el k -ran ts -hash tag -t eng -ro g -a at -gru b -e ber -in india -colo ssus -sig ni -so ever -mile stones -der o -differen tial -phu ket -master mind -an gh -mel ani -bro ker -actor vijay -stun ned -continu ity -af fl -vo cal -perenni al -fianc é -in complete -hun ts -re issue -domin ates -tur meric -ro am -ri on -bag ged -nas sau -fu t -x ox -national trust -jo ye -san o -hearth stone -dis respect -le es -h se -siber ian -offe e -re stock -wolf gang -re gan -plan o -un wind -re par -mil le -] , -skul l -fat ally -concep tual -ðŁĮ ² -f é -ber to -b ms -u a -mag na -notre dame -le te -la undering -heartw arming -buffe tt -go at -pe abo -wind mill -v ac -continu ally -az alea -mem brane -can cels -make yourown -athe red -p to -tor pe -ðŁĺ ł -ðŁĴ § -sc ares -le aking -z et -pix els -ac i -kh il -marath i -ðŁĻı ðŁı½ -u la -tam u -chandi garh -z agre -aa b -pronoun ced -aubre y -sand er -pun ta -har low -ic elan -celebr atory -so t -unci ation -stru ly -mc dowell -deepi ka -remin ders -my stical -ct c -chat ted -s ica -bar gains -ch hat -ru bin -m net -oiland gas -pel ican -o at -mor ality -k our -i h -nu clear -gc u -ric her -vene zia -m ma -le ith -ac company -rich mond -sports net -ba ahu -smu ggling -mm i -ðŁĩ®ðŁĩ ª -twi sts -sahi b -.... . -amb itions -il lo -histor ical -fo rec -show biz -pon ies -chas ers -remo del -will ing -prince sses -am ple -cushi ons -ac les -lot r -da ch -an the -in corporate -new bury -ki ri -fried rich -ab v -ball ers -alber t -ðŁij Ń -let i -nan op -ci de -anal o -n sf -)) )) -griffi ths -valen ci -ro ano -fun run -babys itting -ca day -ent re -u ck -slu g -tic al -the sims -ro ar -car ney -g am -sto we -fi d -bun ny -sham rock -pe cu -mol ina -go cougs -con tributes -transform ation -mo y -v aj -sever y -antioxid ants -thir teen -sight seeing -l j -reversi ble -odd ly -hoo kah -nou vel -hal al -fe i -stab les -mul t -ho pped -bra ids -inter change -ghana ian -ww ww -eth no -con junction -ago v -ye ti -earth and -ts p -con serve -heir loom -metaph or -woo f -tor io -self less -n wa -em ilia -yl ene -y xe -gi ar -moder ating -pro bz -b fi -ne er -du mmy -hanuk kah -we bber -k v -eye brow -dag ger -su mp -ra ges -ork ney -tb o -hal sey -assign ments -tr onic -scri b -co on -an war -# âĢİ -jal ape -flori da -qu aid -haw keyes -âĻ¡ âĻ¡ -street car -ro g -dat lantic -gran ola -un changed -expect ation -Ù ĩ -mar lin -gu mmy -ðŁĻı ðŁı¾ -awareness month -oil painting -mu th -per ch -jun to -villa gers -mor g -che ated -web comic -the future -d ps -la kings -men tioning -vo or -ident ities -accor d -mc gu -l pga -rum our -massi vely -m pls -heal y -d ate -sp oli -re visited -on t -al and -scru tiny -lakel and -bl ending -< / -an kara -jami edor -metab olic -f ences -ann y -å ħ -semic on -oo tt -space ship -wack y -le ta -ap ac -she e -in herit -do res -ðŁĩ¨ðŁĩ ¦ -gent e -tw ick -ri ms -gal ve -de ville -king fisher -scorpi o -ow l -al ar -vari an -ðŁĹ ĵ -vene tian -star dust -then orth -q ing -har rington -consul ate -spectac le -ho bbs -tur ks -gre er -mat ing -ðŁİ Ģ -ðŁĮ Ģ -direc ts -í ĭ -pompe o -vo iced -la os -tz u -pro me -pri sm -mer c -fortun ately -bc fc -mcdon nell -not sorry -smi led -t ba -for war -mid term -dar by -we instein -up grading -wol ff -bron co -cab ello -ðŁ¥ ĩ -fi able -shar pe -bat tered -sat o -myth ical -instap ic -pre pped -eni um -e spo -di aper -explan ations -who pping -ragn ar -pe el -antibio tic -l acks -harri son -li sm -au l -qu ail -martin a -sent encing -sc ams -di di -tr onics -ãħł ãħł -go ff -za in -param ore -cha ined -clin ton -li ff -cott ages -em on -reve rend -consu mer -ce an -t any -lum pur -e bay -sto ol -ðŁĺ» ðŁĺ» -ta pro -h ath -modern art -just ine -prover b -app y -tra x -mani fest -am bu -nai k -pe pp -r sd -mer chants -kitch ener -shi fted -li zz -âĺħâĺħ âĺħâĺħ -âĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ -uto pia -tom o -ou ted -com ers -chiroprac tic -book club -cin dy -pro hibition -se uss -ë¯ ¼ -thin kin -rr rr -go fund -t ack -om b -catastro phic -ling u -guild ford -bo td -ॠĭ -plan ter -^ ^ -win k -kath mandu -sto ppers -smooth ies -re efs -hin d -bell amy -Ħ ë -waste water -vo or -nat l -! ] -re el -y ap -scoo by -work space -corin thians -bl un -obli gation -g bbo -dy son -cra vings -ell ington -dap l -wre xham -earthand clouds -uk runchat -positi oned -kal b -four square -jo ck -im pending -even ing -ath y -pro claimed -c ites -ann apolis -san i -mar th -ir l -accom mo -ka a -fin a -y aa -di sper -ec ar -bha k -will y -ðŁĺĢ ðŁĺĢ -mcder mott -mo j -gener ational -u said -train ing -lon ely -lo res -impe cc -âĢ IJ -beav ers -ma ki -he b -aap l -å ı -wolver hampton -leader board -me u -c fa -easter n -hu r -civil war -ou rage -hor ned -le high -awar ds -evi dent -gi gab -r ous -ma del -ro byn -ur gently -k ors -en as -heis man -bam bam -fab ian -f om -evalu ating -assemb ly -out sourcing -hun tsville -ðŁĶ ª -justi fied -cashi er -sp aper -buc keye -analy tical -illumin ati -au tho -o j -sha de -geel ong -wh ey -he aton -terri bly -ele k -un charted -sd live -moto cross -her mes -dar shan -dar lington -cash mere -gri pping -cilan tro -pun ish -... : -ðŁĴ Ħ -inst ance -der i -lo bal -muk her -sp ar -thin ker -fre mont -com piled -color ado -vig ne -sm d -whe ad -villa ge -le ek -formula e -ta res -persist ence -?? ???? -ped ago -he z -alzheim ers -vul ture -off ence -is great -suff ra -kick in -h mmmm -broad way -ï¸ı @ -art i -alli son -endor ses -ry u -lolli pop -soy bean -kend all -cer a -inv ade -( ðŁĵ·: -conver ter -car pets -ho bo -fr it -pe ac -es qu -ern an -ou f -an il -di ffer -ch ing -bre cht -sp g -daven port -stra va -sever n -n gos -stor ians -fe te -parame dic -j hb -al amo -sne aking -gold coast -roof s -isi l -depic ted -projec tions -nu mb -o ss -ep i -glu cose -zid ane -infin iti -íĺ Ħ -ran som -ton ics -fal k -g ler -ou tw -re ss -week ly -the on -n ole -ðŁĩªðŁĩ º -vol ley -sum mar -neg ativity -sam son -ye w -aus votes -ju l -ju dy -f art -pra yed -pal ate -multicul tural -double header -cycl ones -pier re -ãģ ¨ -âĺ łï¸ı -rt w -conver ting -wir ral -l ari -ir relevant -austin mahone -an che -ya an -sd f -$ . -explo ding -ulti mate -prof ici -gofund me -cell ence -ep stein -bul lied -sep tic -à® ¤ -lu mber -cu ff -vsco cam -pl or -ภ¥ -se ok -ro to -venezu elan -sor ta -spir ited -daniel padilla -team sisd -radio active -icelan dic -ðŁĴ ¤ -ver e -accommo date -shi pp -ot ter -ol ina -e go -su la -san antonio -de as -simil arities -âļ ¾ -y om -bro ward -å ° -can cun -veri fy -on te -candle light -ìł ķ -inf ants -az am -ðŁĺ ° -le ven -un stable -bloom ington -x ford -con tour -y p -innov ator -histor ies -po y -lolo lol -ex pires -cat alo -bill boards -an ab -el ic -novasco tia -fa ire -ìĿ ´ -rock well -gr ille -az tec -joh or -ur struly -fi ren -dun lop -id le -port man -jo es -tx hsfb -hol m -cham ele -under world -lo ss -ti em -therap ists -past ure -pa ste -ing now -vul can -ra gon -lar kin -o shi -ho co -child hood -umb rel -success or -kath y -iz en -° ï¸ı -share holders -ol ga -ai b -he ap -fl aming -ro u -air tel -rat t -z ane -vo w -thor ough -sn ag -par th -un conscious -ve y -new release -gh ee -croati an -facilit ating -swan son -astor ia -to logy -master y -ðŁ¤ ij -bil bao -trou pe -the ori -chey enne -ro tt -shore line -gra sso -master chef -+ ) -vi x -ellen show -as g -an ak -ku ya -safar ilive -debu ting -blu m -list ener -v ins -book shelf -smart cities -makeyourown lane -; ; -ðŁIJ ¯ -ri zz -on ward -bull dog -bear ish -vir uses -fri gh -lin den -we iser -sn t -gon a -dre sden -fl anders -cu k -wheel ing -ba u -atu esday -surf ers -swi ft -mc call -arbitr ation -aw d -mon c -b ine -at x -re fr -mi ro -po sey -n are -rit ter -âģ ¦ -play book -blow out -sports manship -s oooooo -malay alam -gri ms -bur bank -infin ity -sar gent -oit nb -joseph ine -ski pping -par kin -excur sion -semin ars -jo har -par tridge -post game -ll ll -blan che -temp ting -m na -lu ka -is ers -to ffee -bar ron -he mmings -sa e -go hawks -cu pid -li mbs -con se -un common -z ada -head shot -so ils -pione er -mam ma -sem itic -pan dey -jamiedor nan -spl its -vel a -son i -ra ff -t mobile -âŀ ĸ -pra wns -lit er -enjo yment -egg plant -tu b -cultur al -us ic -suspici on -sy cam -summ ed -ma du -ho ck -up wards -eye ing -ri ve -assas sins -âĤ ¬ -out fy -chi ves -t ner -la is -por ridge -sad dest -w cc -vick i -sna ils -biz italk -mill an -ðŁĮ į -sam oa -j ing -mi key -gu j -chel ms -eli gibility -arma da -thro p -surger ies -ãĤ ¿ -mo hawk -ex its -me m -is lington -c me -land fill -kait lyn -ðŁİ ¼ -combin ations -tomorrow land -ver b -cor a -pre cisely -na om -ðŁĨ ķ -shr ink -sof tly -merce de -mand el -poo dle -ball erina -sop h -jux ta -y at -ary an -hesit ate -lo wered -gu lar -dungeon sand -ron an -my ri -sp f -men opau -gra sp -pa thi -fe asi -fla w -shi story -ste ward -gg le -fay re -cli que -credi bility -yo g -sec tion -mu sko -se ville -no tt -cal m -mate o -indic ted -fi ba -by l -lin o -u kin -!! # -enig ma -siri us -bu sc -ðŁį Ĭ -mac kerel -psal ms -a at -tomorrow spaper -ðŁĺ ĸ -p fc -........ ... -shre k -mul let -o sh -danger ously -immen sely -am ur -ðŁį Ĥ -pro por -sy a -london marathon -abo ve -obli gatory -pro v -ra cha -alex is -pri mary -sh h -ether net -d stv -cou gar -un lucky -ni l -steak house -mel a -fc bayern -cause way -ca therine -fluore scent -nx t -to kyo -au sp -releg ation -qui zz -shored itch -proud tobe -promo s -inter acting -home brew -da esh -w pg -stead ily -provin ces -bal lots -i ah -al to -< << -you u -ri ley -prefe rence -tra verse -incen se -am munition -ho dges -# @ -hail state -tart an -witch craft -vent ilation -liber tarian -! â̦ -ow es -% ! -ong chang -bru shing -le ic -fi ber -under attack -down load -ex pir -hy o -pompe y -mc bride -y ag -stre e -com bat -ten ding -ai ra -gug gen -ab ra -in na -fli ps -aw al -m ach -dol lar -inspir ations -z um -o du -it ty -video game -aqu aman -har u -bel fast -je b -but ch -us gs -calcu lus -go yal -mor gen -x finity -stand up -contrac ep -sab re -na be -in secure -gener ously -epit ome -l w -t ca -narr atives -don nell -pand as -ber gh -tu t -ker al -fel icity -br ampton -quinte t -nom ore -ðŁĶ ij -lo i -alham dulil -ðŁĶ¥ ðŁĶĹ -ston er -shaw l -clin ical -bren dan -gon e -fla wed -tri ppy -j g -al location -po aching -ve vo -mo cks -lef tist -bon uses -condem ned -abil ity -st ating -microbi ome -bio logist -for you -wahl berg -ss or -ift ar -w ul -ÑĦ оÑĤ -pom er -me me -ver te -tre ll -tra it -in let -hormon es -deliber ately -vill ar -battle ship -p bl -tw enti -ho kies -dal ail -say a -may fair -han s -die ts -⾨ ⾨ -od in -hot spur -pap i -k ana -k amp -fin na -flo tus -ti ans -unic orns -tribe ca -chang ers -fore ground -out a -inv aders -gett ys -tomorrowspaper stoday -mac millan -hand written -w fp -u de -state of -base d -âĺģ ï¸ı -cas m -psy ched -histor ians -fol d -d da -ag grav -p ans -green way -au sv -ðŁĺ ¶ -shradd ha -inde x -be sti -zim mer -t ness -eye shadow -ot te -go ts -distribu ting -pro min -yo l -ace a -tram rahim -hoo per -supre me -jam min -intu itive -quali fications -sli m -sid di -jay ne -tri pping -g tx -pun s -e manuel -om g -mid summer -in to -succul ent -ri en -new mexico -o or -hoo king -in f -ðŁ¤ Ŀ -flir ting -na hi -g friend -t ps -hel ix -z s -on ie -ct f -kri s -irresi stible -fla p -ðŁijıðŁı» ðŁijıðŁı» -us wnt -ru d -ram ps -pin oy -ot w -lol z -low ering -favor ite -t mc -phra ses -her mi -aver aging -em br -ben o -estu ary -sle eve -ribb ons -ta sh -ภ¹ -x f -aw gs -sun ited -brew eries -anir ud -pun ches -ol die -ip ads -wi fey -land lords -d ji -gun ner -íķ ´ -tex an -ex op -cas sandra -s off -ðŁļ « -igh ton -bak ers -awareness week -v all -ear p -bts bbmas -apologi zes -âļĵ ï¸ı -was ps -states man -snat ch -watch dog -ra fi -after party -spi ke -j er -peri ph -r nc -mu ll -le en -shi es -li eu -urstruly mahesh -mer ton -de sai -shi f -ðŁĮ ± -pe dic -gos ling -arrang ing -ww g -gen y -you uu -netfli x -e ttes -k wi -bernar dino -am iga -Ø ¨ -kashmir i -t ings -emer itus -de cat -ab domin -dc i -pha ses -d jan -be am -op ry -i shed -the ellenshow -the st -habit ats -to ons -mclau ghlin -ri pper -micro biology -tal aga -clu eless -ss u -cro che -bro mance -longe vity -zagre b -prev ented -tra ve -spo ilt -darry l -migra ine -al cat -dd dd -vi v -ser pent -mat tel -jam a -con quest -î Ħ -sam sung -presbyter ian -ket ch -fire fox -mo tif -le c -cho pping -cher no -j ann -ðŁIJ ° -pro lon -wake up -conver gence -mersey side -heart broken -lo oming -hal lucin -mai ze -commun ism -mo h -twitter storians -serge y -res eller -favor able -ed gy -re iter -mal aga -live me -ka hn -pul sion -big g -kim kardashian -ati o -tyr anny -ru ption -q ant -pro ven -by z -pu shaw -kri stin -e er -tar dis -ri z -awak en -mi ko -un documented -path finder -indirec t -resemb les -h ler -conce aled -scand al -re im -d nb -cr itters -attend ant -apprentice ships -aa u -scre amed -l su -fa h -har bour -ed d -bat sman -li ss -mi sha -spani el -it f -advan cement -fa c -close up -cecil ia -medi c -narcis si -lav ish -gi ac -ma ys -le it -wine wednesday -pushaw ard -let to -curren ts -bug atti -out ine -w j -un do -ler osis -devo tional -ðŁij « -on na -fais al -sa una -himach al -am ii -à® ® -di zzy -screen writing -ph x -sp n -ick i -ag irl -fi shes -wb z -pi m -bo ar -ac id -! .. -rocke feller -n ga -dra stically -simpli fy -dru mming -autum nal -gur mee -lor de -jo ann -give up -b our -am ura -der land -sim pler -wat son -tri dent -concor dia -bel lum -bre k -dum plings -vi on -dungeonsand dragons -sp ri -ascen sion -wil datlantic -u st -rob ins -legi on -insi st -jar o -gue ss -so b -bigh it -pool side -negoti ating -mc gill -bil d -techn icians -miti gation -ajay devgn -b to -ant en -cosmo politan -ðŁĺĬðŁĺĬ ðŁĺĬðŁĺĬ -patri oti -temp er -promen ade -nav ajo -nam m -wrink les -dc fc -le ach -bru nette -r f -cout inho -al ti -tradition ally -op tome -na z -accord ingly -rec ard -de ets -sw ell -po sure -whit ening -strang er -illi on -here ford -u wu -ro bber -cotsw olds -cl en -gor ge -nam aste -re lish -gri ff -adren aline -bla sio -val e -ê ² -toler ate -rail minindia -jen sen -ho ven -el lu -ob sole -eisen hower -unidenti fied -than niversary -body guard -Ø ¯ -i dge -sch al -stock port -sn i -re taining -po po -pix ie -oli thic -ki er -ha jj -sa z -cor bin -!!!! !!!!!! -v it -me gat -de h -circu it -af fleck -theore tical -hope less -u ab -slu mp -b ice -jam med -let stalk -can i -side ways -labyrin th -re fs -ha hn -jare d -ðŁį ¹ -jam bo -ph yl -enhan cement -c tr -ful lest -se ye -do ba -cho ic -yo s -cb j -andr é -re watch -pri ma -doctr ine -for gets -u hm -ar ound -u le -art lovers -shi raz -har th -ex tor -Å ¡ -unexpec tedly -eli us -y x -em my -se ac -ðŁijĩðŁijĩ ðŁijĩ -correc ted -com bu -wom anc -cou gh -what son -publi shes -divers ity -back bone -lock down -mesmeri zing -nor te -ma b -desig ner -í ģ -ra gh -mole cules -get outside -the beatles -semicon duc -nach o -lun es -ham mers -sul tan -o on -fe ren -att ach -ar qu -uttarak hand -s ash -; - -tre ad -i ko -ar thur -scandin avian -r ation -ga el -charge able -fish y -v ma -hand bags -char a -ay ne -de fam -sett lers -qad ri -pal ais -in wx -apocaly ptic -poo ja -a es -at ories -proof ing -n lp -ts la -v ina -li do -dee phouse -informat ics -v v -pp ings -di ss -à ¯ -uhur u -st ony -betra yed -b aff -my ra -as pen -allow ance -tam ara -ci f -cor bett -ser ge -di go -ambi gu -pain ters -p cr -p ca -nom s -lo ft -ve e -opend ata -ðŁIJ ± -alex andre -identi fies -fantasy football -re production -brom ley -ware agle -mm er -p ss -cu es -ay at -hut chinson -sar ac -jack man -ira h -ap ink -col s -aussi es -ex ecs -day ton -ðŁĻ Ĩ -im v -har am -chuck le -authent icity -ar do -incub ator -ภª -photo shopped -embrac ed -fight for -gor man -zz zz -schol astic -cri sps -te apo -mid night -ga ine -col lier -s ate -de tte -å Ń -imag ine -i ff -tw ili -i fication -teat ro -nor ma -es ur -emergen cies -rise up -r inger -hass le -cait lyn -tranqu il -vers a -se b -over look -gin i -bo go -se re -may ne -henri k -contamin ated -rhapso dy -pro portion -wildatlantic way -âģ© . -organis ers -tran e -stand ard -sper m -laun cher -ric ci -her ts -paper work -showcas ed -mer yl -pen a -p imp -disa strous -^. ^ -phar a -x is -fron tal -sw irl -sp ills -swag ger -smart watch -sizz ling -savi our -cat ar -bb cr -refurbi shment -dr is -citro en -absor b -patrioti sm -il leg -chro mo -fresh ers -ru s -lim iting -ef ish -down ed -man dir -hazel nut -p all -mac on -disappear ing -quali fies -bo on -bar racks -am ine -gen dere -ðŁļ ĺ -j es -ãĥ Ń -qu ito -middle weight -sch au -quad ru -aci ones -limit less -ðŁijĮ ðŁı½ -ch man -ar av -regulat ors -it up -batter sea -mil ford -g z -tic king -gh ou -cru shes -tu tu -dread ful -fam ine -for change -dalail ama -ðŁĴ į -whit aker -hash mi -h us -vo d -bet te -aa ah -iso o -ðŁ¥ Ī -ha ar -la ine -b v -all day -spr out -indie games -free bie -gree ks -but ler -ill in -ha al -ware ness -si ma -public health -gam a -wa a -oun g -goo oo -okin awa -off enders -im pose -ho c -young ster -story teller -sc ap -figh ter -+ , -whit es -music monday -re za -go ducks -bri a -mi um -cas per -cru mbs -a ad -marti alarts -ch p -ri gged -tn g -harve sted -sa k -do jo -mill wall -b nw -oc d -histor yof -t mr -si rens -fan ci -caregi vers -vir a -son i -recur ring -acknowle dged -ðŁı Ł -oph ile -bu cky -stre ssing -roo k -di gger -vi val -san do -fle et -si ers -sel caday -refre shed -anti fa -a que -po lo -disappear ance -de mb -âĮļ ï¸ı -ren ted -ber ger -g mb -cu la -ss al -goo dy -u hh -marcel o -w anna -soft ware -shop small -turt le -tom as -fri sco -ðŁĺį ðŁĴķ -jim enez -c su -day z -an do -wyn ne -choreo grapher -cerv ical -trail blazers -ed g -zend aya -travel blog -el s -whole some -co g -lab out -ar ney -del le -su isse -ma si -ine se -om be -fi ddle -re claim -pa u -wat cher -sla in -ber ty -opti mum -el ites -min is -tur key -patro ls -ger ard -au reli -wild ly -wal tz -br gy -w ob -cre st -+ ++ -ve z -fro sted -davi do -the x -param edics -p into -han k -du pont -ur g -fo stering -micro poetry -spec tre ----- > -ne uro -fri da -music al -galve ston -e ffic -sc ape -pal azzo -th all -pro visional -p js -au re -ðŁĶ ľ -mam amoo -kit ties -cre e -wa k -lo ool -lu pus -cn blue -à º -ðŁİ ¬ -rac ed -tro se -om as -stri de -co ors -⤠µï¸ı -in comparable -cy ril -broad er -arec lipse -ðŁį Ķ -inter val -ti ru -co working -w aco -a ham -a bee -flouri sh -the times -ol ini -kick boxing -lu cer -at la -as un -casser ole -mi aw -lobb ying -jan ice -cir que -re flex -le ary -sanat omy -tem pest -se mb -mur dering -us av -ro bo -on et -p cc -nati ves -life of -sa ha -ruth less -rel ates -appeti zer -pye ongchang -nor d -er u -a thing -ug ly -pl ying -bran ce -organ ise -kend ra -dat o -chees es -par ma -burn out -a stra -pre toria -adjust ment -uk u -sl o -li ken -fav ors -cli ve -be ets -snow donia -go tv -sy n -open house -pan i -portra yed -sl ated -me cca -ren al -supportsmall streamers -staf fs -da o -bi ker -vik tor -tit us -admi red -ðŁĵ ± -hurric an -he ats -gl ory -photo genic -mer i -de por -burn ham -or angu -dj ing -impre ssionism -ign ition -ca i -w ynn -de pe -cove ted -colla gen -sau s -or nam -administr ators -ss on -nh politics -hahahaha hahahaha -aspir ations -r gb -swol len -so we -sc r -diver gent -hou ghton -han oi -d ory -ni ki -land ry -b cci -ðŁijĮ ðŁijĮ -is mail -tri pod -her d -bhat t -dress age -tab by -ingu ish -hur on -à³ į -à ł -to das -evangel ical -chor ds -st john -slo ppy -marty r -face book -ali ght -sen sei -kath niel -r ites -zi one -u o -revel ations -weight lifting -pan o -nc wx -ac ton -à® ķ -Ø ² -som a -à¸ Ĺ -respec ting -mar che -fore man -be tty -ki k -shi bu -po on -argy le -k swx -et z -mar bella -brac kets -stand by -fire side -defi ance -v ex -britanni a -in habit -appo int -piyu sh -le ash -sci ento -fla sk -sen na -> : -at roc -sand erson -id lib -dhan ush -ðŁĺ Ļ -en thr -hit ch -de dly -al ley -dor k -mon do -cudd ly -mis sin -ye sss -night ing -j pn -w ary -ump ire -ma z -ê ³ -bab s -ĭ ãģ -stan ford -posse ssed -exce eded -ðŁĶ ¶ -wall art -tra p -j il -hi bis -sp ying -scri be -khali l -trans lator -lu mb -di zed -ch c -super vision -shut ter -ja g -_ * -yester days -ms f -hi hi -gonz aga -gille spie -vive k -ec static -this morning -ch us -ed es -ston ed -be es -ðŁĩ¹ ðŁĩ -tur in -ho ver -at rics -ster n -sam heughan -auti sm -mi ya -eye witness -writ ings -travel tips -chut ney -px rtg -keny ans -my stic -k rit -/ $ -red head -world ly -am us -op la -le ve -gab bana -se en -o clock -gang a -keen an -sc ent -ol dies -go green -corner stone -comp ly -con cours -ðŁİ¶ ðŁİ¶ -ha an -con fis -aw son -cle op -î Ģ -su zu -sau té -al gar -subscri ber -este emed -ãĤ¤ ãĥ -worth while -mel rose -flo ck -bri ghtly -viol inist -p ere -sli pping -and co -si gh -ha van -cu lo -m sa -fibro sis -matil da -ra fting -aw ard -ë ª -mm mm -ge aux -ste iner -sin n -help ers -beet les -ai mee -tai wan -pistachi o -mac beth -m zan -descend ants -on sale -in r -il m -grou se -sa ig -mo w -bi gre -adjust ments -tu la -mathe w -transl ates -mu h -bol lah -ðŁĴĽ ðŁĴĻ -amo res -ab outs -bomb shell -bla ster -x avi -s ns -k roger -ga ther -erad ic -daf t -chem o -ben ches -ðŁĩ© ðŁĩ -ut v -our a -n ko -gator ade -biaf ra -ok state -im danielpadilla -dom ains -open ingday -kid do -do i -ric e -day care -mac millan -ba thurst -cheer leading -ðŁ¦ ģ -cash back -k won -hob bies -exem pl -ries ling -âļ ª -ag les -ny s -every thing -nav is -ad di -magne sium -faceli ft -ark ham -grand es -extre mist -don at -vit ality -pump kin -be tta -sl td -arti san -li by -pe aked -ah hhhh -mary am -assi m -un sc -ment e -al aya -low ers -ar as -gri ev -le ip -gr ati -cri ses -spr ints -exe cute -w to -ms d -mag ical -re viewer -spark les -juke box -ðŁĺĤ âĿ¤ï¸ı -pay back -licen ses -dun kin -bel t -lake wood -h ateful -bud gets -rev amped -ph erson -ky iv -went worth -ro sen -cru ise -gi ggle -def star -assassin scre -ym outh -win kle -w fc -band wagon -b kk -w iring -kear ney -south side -pe tit -! ðŁĺį -nor dic -mir za -mu gabe -v l -scon es -k tv -sand al -du c -m alls -ðŁĴŀ ðŁĴŀ -it c -al ay -im pair -un rest -flo ss -c é -ab ou -var ying -muse o -ser ver -di ya -hibis cus -ero y -mer ritt -fin dom -f pp -un usually -go tt -conting ent -ali aa -ball on -jo l -hi ked -zy me -ay r -ag n -ga z -perio dic -spar ty -practi sing -lin ton -tal is -cy pri -womanin biz -radio disney -ðŁĮ ¼ -jump ers -endo cr -ðŁļ¨ ðŁļ¨ -and on -shar apo -mi er -ma sonic -fac tories -vi en -bb ers -ìĽ IJ -hol d -ke bab -be ak -approach ed -ac milan -mun ro -ko sher -excell ency -negoti ation -walt disneyworld -cr ouch -te asing -suppre ssion -en ya -b ce -transformation tuesday -cal lie -vis was -p gat -ic ted -end ings -esc u -recru ited -it fc -collabor ations -g ino -snu ck -ausch witz -i fc -x ii -ke sha -ger vais -clo ak -x l -sa ad -prob ation -pre cau -mac in -anasta si -le k -e azy -daysof code -mariah carey -yo g -stit ched -boy friends -sh ar -ph ile -ag u -twin kle -phi shing -week ender -ic ton -gurmee tramrahim -al ton -l eness -all an -pen ultimate -kry stal -go u -lan de -dis mant -ab using -nor se -pat erson -ed mun -ap an -xi umin -sk el -cat walk -re act -wal led -t angle -br yn -ve to -super moon -cas ablanc -appreci ates -ski d -bo th -catal ina -ele ague -cyber monday -cau tious -ðŁ¤ ĵ -nov o -hamp ton -ha ye -jose f -var an -lo bos -roano ke -orph ans -tt in -squ ads -ishqba aaz -black panther -e tu -k sh -cru mble -cess na -reli eved -scul ly -pollin ators -explore canada -ki es -kam loops -kir an -pri mal -sett lements -hot spot -brain storming -ce dric -bi ennial -sh ant -âĻ¡âĻ¡ âĻ¡ -do on -hear n -walk way -fe m -ve al -deport ation -tox ins -elimin ating -descen ding -by the -bla sphe -ha sta -comple ment -as cent -ri ga -provo st -âĸ ª -wee ping -anti semitism -employe e -unearth ed -pin o -natali e -bla d -ang ola -lock heed -in ian -ag r -ni ster -im pala -m ke -fan atic -âĺħ âĺħ -ðŁij ¸ -lu ch -simpli fied -gall ery -econom ic -cy borg -con i -sel ma -in ception -ko ala -dv ds -cre sted -m mor -visi ble -n sd -ðŁĻĮ ðŁı½ -w under -refriger ator -re opening -e era -carou sel -as p -balli stic -victor y -mo tive -tre y -sharapo va -si i -mon ter -int end -west chester -sp e -cy mb -vi dal -ll ama -uni v -fin er -crafts manship -jazz fest -b ch -ag gio -n cc -lamb da -tranqu ility -cis co -ba den -so bbing -of i -go ta -ru mored -war med -ore an -ac ton -mar ci -gh ani -âľ ĵ -as sorted -pembro ke -pen elope -da f -at ty -aim o -pretz el -carni val -than os -ko chi -mer sal -ham radio -ar twit -cas c -guer rilla -kush ner -k app -al ise -todd lers -steward ship -o tti -ter ri -tem pe -rest less -vit o -zay ed -rsp b -pi on -hi ppo -haw thorne -in as -am ily -nut cracker -lo p -d ali -tro pic -ðŁ¤ ł -ul o -jare dle -py rene -pale o -usa ir -m ould -it ated -gene tically -biom ass -ðŁĩ³ðŁĩ ± -do dd -practic ed -monarch s -un manned -m buhari -am al -photo gra -ko ol -bren don -ju ices -cu re -world bank -poin ters -ðŁĴ Ŀ -tur f -le ds -bor ussia -bapti sm -warwick shire -moun ts -gay o -be gg -co pied -asi ans -k g -moder nist -gi d -front man -concentr ated -y t -sc avenger -iron ically -adi c -ps n -ðŁ¥ ī -cultur ally -yu v -mac arthur -fertili zer -be withyou -ri gor -min ors -z oning -âĸ ł -ri r -adole scent -vin ny -ren g -sand stone -gu et -we sth -ple dged -lac ed -sp ide -v ai -ty coon -seiz ure -du p -appalach ian -ro k -cathol ics -sey chel -posse ss -la ger -jo di -cham p -stra s -d ina -cent uri -cal der -blur ay -ðŁĩ¨ðŁĩ ³ -mo do -an nette -youtu bers -chap s -ang ling -label ing -a qui -pk wy -ly le -bi sexual -lit ur -dug out -li bby -grey sanatomy -sub stances -august us -rall ying -fi del -ing ue -äº º -hallmark channel -tooth brush -m á -adi rond -ag gi -ðŁĵį : -cru sade -tax ation -k z -i ver -dou bling -room ie -wa b -en rolled -az on -a ju -grand children -as df -ðŁ¥ º -mat ic -ough ton -utili ze -ðŁĴ £ -pon der -rais in -dys function -co bain -butter nut -e man -su red -dri an -and friends -with the -on omy -heine ken -bri dal -leader ship -pyram ids -deutsch land -jo cel -bo wel -y qr -horse power -be acon -ing eni -gra dient -fer mented -mo om -thing y -pot assi -wrist band -bor d -bo died -ðŁĺŃ ðŁĺį -ma pp -ka u -cyber punk -ph ish -loo king -co ates -ap ur -am ie -uk labour -at in -g la -adop table -shel by -v illi -ri ya -m ingly -cli mber -bumble bee -ðŁĺ ¸ -c sd -âĿ ¥ -hospit alized -c ki -hat er -ch r -re tina -it a -fan base -beat rice -gwy ne -go ss -fo s -favor ited -swachhb harat -mal ade -mon mouth -" [ -si van -sh hh -command ing -sains burys -wee d -g man -ss w -rep tile -iv y -tro pics -roll ers -over cast -ex position -masquer ade -man crush -wa ist -spr inter -sle et -le vin -j pg -_ ( -o pel -explo it -ap a -po we -wrec king -jong in -or b -er ick -bo sco -pra ising -ber tr -to wing -in security -ku t -resto cked -rr p -prescri bed -trafal gar -per t -g ases -app rais -g har -music als -âĸ¬ âĸ¬ -mc fad -ag ony -conditi on -equi p -shi k -atra vel -ðŁĩ¿ ðŁĩ¦ -ke h -abduc tion -pe oria -wil kins -g ms -as d -ev i -ðŁĴĹ ðŁĴĹðŁĴĹ -u z -mo c -halle lujah -guad alu -lou vre -dra wing -go ve -ph ant -fri e -web dev -program mer -z able -games com -clari fy -li th -kin ky -âĿ £ -labour doorstep -son ata -ju ris -mai den -vi adu -buch arest -conditi oned -capit alist -u de -ps b -sp ca -lul la -footh ills -kay o -bon d -wom b -roun der -ce sar -bur sts -ap ra -sw oon -sab rin -fra grant -cle arer -ku brick -cli max -jour no -ag le -ðŁı½ âĢįâĻĢï¸ı -poo ch -hal e -sol it -sal mon -organis ms -bron son -art en -hodg son -alo ve -vent ure -bb i -ae a -ðŁIJ ¢ -ld n -d nr -o zone -el las -man ny -azz ur -un beat -tru ffles -th ong -ma ñ -las ers -ley e -gettys burg -back packs -or is -ma ison -craw ling -la bra -cl ing -dra gging -ste al -dou bt -de van -ck ers -agent sof -photo bomb -elon musk -abo y -dist ances -story line -sp i -nor than -europe ans -wh ale -ser pent -ðŁļ ² -fi or -tr it -ox o -awar ding -class mate -su fc -smar test -rich es -pr k -big foot -ar mb -bi polar -dw elling -om ars -k wan -gri me -m eng -freder ick -navar ro -sorry notsorry -jaredle to -pa ve -sl ack -barn sley -att ar -evic tion -accumul ation -o ir -cat chy -wel ter -vik as -has see -nik ita -mo yes -mathe ws -shi v -gat wick -pro filing -compan ions -mar rake -an tics -ðŁĻĮðŁĻĮ ðŁĻĮ -se se -bo i -bart lett -poison ous -ab uses -ym m -kam pala -guggen heim -imv kohli -dol om -bre e -thro ttle -gare th -fitz patrick -un ya -par ad -mar got -j nr -we a -potassi um -p nc -disgu ised -cra sh -ren ergy -ill ic -coup led -ni els -ci ones -æĹ ¥ -im ent -despic able -d ye -what cha -conne ctions -paralym pics -gaunt let -wait rose -suici dal -star ship -vap or -st ou -law maker -coo led -si mo -then o -offro ad -ja den -bas que -vick y -lu kaku -centr o -tri sh -strate gist -medic ations -hor st -b fc -gra il -sharp ly -ad itya -tom b -kau fman -tri pad -sam ba -pastor al -brit ney -sag an -hill side -mas ons -sar a -z one -x u -to tes -rob bie -app en -mon tag -der o -short film -charis matic -tat ors -ki ba -and ri -al arming -split ting -ic ar -th ug -scari est -sylve ster -an an -u trecht -a difference -me ade -bu ster -air strikes -cu ffs -account ants -ðŁĺ¡ ðŁĺ¡ -new t -bo tt -issu ing -cl ancy -wwen etwork -kyu hyun -rese mble -pajam as -sin k -kin ney -sul ph -or k -li es -la gh -or ton -ra hul -d sc -we will -re am -collo qui -shar ia -hec tic -sar casm -land er -tm z -endor f -ro z -ham mered -fri s -w adi -pope francis -he it -flash light -un born -op es -hol iness -ðŁIJ ¦ -nach t -im sa -gr acing -bj p -ver ts -c sc -home owner -a que -bigo try -anni e -bag h -âĿ¤ï¸ı ðŁĺį -car i -thom p -dispo sable -cardio logy -pat ented -hh hhhh -ld r -stephen son -cro res -fan ning -cli mat -ðŁijį ðŁijįðŁijį -ðŁijį ðŁı¼ -aer on -piccad illy -bank rupt -sil via -emplo y -don ny -commen ting -screen writer -io ta -ce an -anc ers -tu an -street wear -ठ¯ -sk ine -esp a -asi f -os ce -she ppard -more cam -bott le -der s -orac le -google play -aver aged -edmon ton -steph an -sister hood -cru sted -stag gering -methodo logy -congress woman -c abo -tri ggers -mil ky -gli de -tooth paste -room mates -nu ff -gu am -sprink les -alternati ve -wat fordfc -uof t -hal ey -cont acted -bun dy -pro stitu -gh ar -pre ston -on site -hil ar -g ts -c att -hamp stead -? ?! -ðŁĩ§ ðŁĩ -bbc qt -aless andro -resi st -ma idan -t ko -shad ing -pin up -gal lo -sin u -at ec -fun k -ac lu -stri des -rhy me -wet land -bbc springwatch -t ins -wild card -st our -flamen co -pau la -onto logy -gang sta -am ade -ãĤ « -t bs -skelet al -run ner -jard in -harri er -hun ted -z hen -believein film -de mean -au diti -re start -chon dri -âĿ¤ï¸ı ðŁĴĻ -mcla ren -ga b -sh um -au sa -lewi sham -y pg -k jv -fur nished -dor o -bon ded -mor ty -lat itude -_ ) -lo va -water ways -vin ai -shor th -drun k -c ay -ay ana -kap lan -capp uccino -spr o -life boat -has bro -spol ice -tor on -do ing -dam n -sh ree -foun tains -ent ation -mar u -boar der -to pless -j ada -chan ning -ul ls -en closure -gib son -fractu red -brit ton -à ¶ -t ous -por th -dra f -tra iling -mar gate -eli fe -down ward -lin n -gla des -girl power -ak rish -u ki -ron da -ts c -appreci ationday -vis ing -lo om -ðŁį ³ -mex ican -ar gos -y ya -jad ine -south port -d end -si sta -rede em -men g -bra xton -antioxid ant -s key -mp g -fin ding -vibr ation -ce u -kh art -di mini -cl ine -shel ly -hin es -ī ï¸ı -to pical -no ver -ma xx -prim itive -illustr ate -b ounds -tren ton -join tly -breed ers -u chi -wakeup america -b ada -ðŁĹ £ï¸ı -gu acam -sp heres -pere gr -youth ful -lo lo -bir min -t ly -jeremy corbyn -defe cts -co sm -a rent -v aa -bag els -medi ac -cori ander -ic ago -g haz -ab bas -re model -struc turing -pu m -out law -ad ani -r bc -gul ls -n li -confu se -ðŁijĩ ðŁı¼ -vil a -mcnam ara -correc tions -mug hal -ser i -re gain -ss b -lea ve -haha hah -gran de -di stressed -re chargeable -ho a -hou sed -sti l -attribu ted -opath ic -di ps -pri t -head phone -conclu de -pil o -he t -ut sa -nit in -je m -sni ppet -tutor ing -op er -sun k -en sla -cha u -ac orn -quinte ss -ran kin -affili ated -our lives -cl int -se ater -isa ac -ba shing -sme ar -nur se -doo dling -" ; -sa ku -atroc ities -im am -g fs -viol ating -comm end -brad shaw -er ville -b illed -b be -thul hu -i phones -moo se -di os -re w -me thane -strang ely -whis ky -ti ghtly -spiel berg -radi us -notic ing -wi f -ig nati -i fa -ap is -w ali -ha itian -bu shes -y z -v l -ex ited -asse l -tru ec -dom en -ash er -in king -newyear seve -hend ricks -bat i -ìĿ´ ì -rich ter -mon santo -con line -agre at -ðŁ¤ ¯ -master pieces -ar n -rough s -cle ve -se v -fashi ons -to ya -sh ail -cop eland -aqu ari -dec als -are you -y aya -a str -fon t -ml m -ar ca -pp or -pol lock -xper ia -conserv ation -chain saw -ag gie -?! ?!? -si le -sh on -ìĹ IJ -note books -marque tte -de us -bb led -spic er -mc cabe -nor wich -modi fication -boo sted -stru m -sales man -bang le -nis san -hez bollah -brea sts -a af -anth us -sk er -ow ed -her os -gi fs -fo sters -eat ers -du es -_ / -lymph oma -sf am -me gal -afri di -ag ic -p amp -jeal ousy -ðŁijĮ ðŁı¼ -calcul ate -napp ing -g ale -ðŁ¦ Ħ -lub bock -assu med -ren ting -íĥ ľ -subur b -ãĤ · -tech nic -u cla -in front -gar net -ster oids -stri ving -ho war -mo ver -le ton -bull do -is in -ci ao -sn z -fore front -d ams -mid wife -ma wards -cla pton -we in -subsi dies -spr oud -rother ham -phan tom -ar ach -spi el -rac ket -sel amat -no on -l bc -enti ally -ðŁĴ ¸ -sil ve -m oud -kine tic -y asi -ðŁİ © -o ol -mi ku -i za -fer a -flo ren -barber shop -groo t -z est -ne ars -stan is -z and -police man -juris dic -form ations -appar atus -sp d -arti fact -to sc -motiv ating -womanc rush -re dro -diagno stics -ra za -out fitters -el xn -dod gy -ry n -sh d -ortho don -ol de -jay anti -bal ances -quic kest -can ton -friday reads -! * -na a -a ak -ðŁĶ · -behavi ors -rasp berries -ä » -polit ical -cam il -å ľ -di k -ast ounding -lie be -novel ty -tur moil -sul ly -spring break -hon ouring -cc g -ðŁı Ĵ -my little -ky c -pro ms -ðŁķ Ĭ -à ¨ -bi ge -av ril -ðŁĩµðŁĩ ° -mari on -as ants -sur ya -oc tag -luf than -ac ron -fayette ville -ti que -love s -en ca -de kalb -ta ver -de vote -aux iliary -joh annes -tread mill -ay an -qu r -donald son -cher yl -" .... -s ven -kir sty -gun ners -ra dish -o ahu -v sky -i ble -con course -b ps -elo qu -ash ford -te bow -roblo x -ma da -dri ving -th day -spro ject -m ms -band ed -. !! -libr arians -flan nel -intoler ance -her al -ç µ -neme sis -list a -tar ak -cry pt -star plus -vish nu -sc ale -cr is -% ), -j illian -regg ae -pegas us -ol in -ip ment -man ic -l fc -godd ard -ite am -parl our -anch ors -lee minho -talla hassee -ant it -d ho -kid ney -y ash -batt led -az ad -gar is -faul kner -sni ff -papar azzi -ed m -phy llis -con tested -aa ay -se ca -k ton -vel ve -rain ier -for um -tam pab -ho sp -trac tors -ox fordshire -no tion -guang zhou -ðŁĺ ¯ -ref ill -wednesday motivation -sli der -mukher jee -pr att -fon taine -alph on -af ar -ts i -pest icides -fi ends -mo cking -bra w -tran sat -do ses -co res -hom ophobia -docu menting -zlat an -con doms -s é -sun set -kun st -ton ga -ภª -v ation -sp ray -chow der -ra ps -palla dium -nor wood -music history -hoo ker -si si -osp rey -ph ys -conce ded -bob cat -ar mad -ze it -Ù Ħ -ðŁĺģ ðŁĺģ -mer idi -ðŁĩ· ðŁĩº -corn wall -! ), -touch downs -ze it -chal et -mm m -al che -gor illa -fo ss -ati ku -lumin ous -ivan ka -be ek -sta res -sw iss -âĿ¤âĿ¤ âĿ¤âĿ¤ -scru bs -me ath -gusta v -jo gging -confe tti -as os -ers fc -breit bart -applic able -autho red -ya ho -h in -displac ement -j v -ðŁĮ¹ ðŁĮ¹ -ot c -non profits -diec ast -gu sto -inte stin -c ages -me en -lu kas -moon ey -ðŁĺ · -very day -tor ah -is sion -wa c -lever aging -ish able -cu se -le wood -may an -turn table -ju ice -tru sty -tu p -eti quette -supervis ors -stu n -gu zman -confe ren -ric o -fe ast -back ward -pol aris -mic he -jo g -h ing -field house -vel ing -sho cker -esc ence -ठ¾ -vi be -anasta sia -mar ched -kill ing -Ķ ë -fe tt -exop lan -... ( -snow day -lo h -ir ani -la khs -del a -po caly -boom ers -dictat orship -ac er -tur keys -quarter final -muskete ers -ðŁĴĽ ðŁĴļ -sf x -museum week -sc ala -ri sis -( ðŁĵ· -ãĢ Ĥ -z ies -bo eh -hu es -lu sci -dol a -impeach trump -roo d -don caster -tor re -hero es -fo yer -tar i -blur red -ke w -frank ly -dro id -ap al -Ð ¼ -y af -bre t -par agu -cac ao -ðŁĻĮ ðŁı¾ -ru e -head aches -shaw ty -char ley -pal er -go wns -correc tional -ðŁĺ© ðŁĺ© -breaking bad -ol ing -da p -endeav our -cit adel -tra d -incumb ent -medit ate -foo ted -ðŁĴ µ -shab bat -dayof the -wil lem -gal way -to red -marri age -f illion -sleeve less -aud itor -jin young -invin cible -kad una -a and -volcan oes -mon eti -indie gogo -buccane ers -ðŁijī ðŁı½ -ãĢ Ĥ -lay ton -cuck oo -hu mber -buzz er -Ï ī -to re -stra ins -sto m -pa ine -s we -du ff -z ou -si mi -li pp -ur n -se agu -ðŁĶ ® -sun dae -hi c -ðŁĺ ¨ -bull pen -u per -flyo ver -al dridge -glo bes -ali es -ken zie -ge es -y cle -sp lin -mag enta -j ha -bal u -gh orn -ti pper -wick er -taste of -con clave -ch ale -inv asi -cat er -dio xide -me gab -win n -at p -transform ative -nest led -hi g -bri dging -lil ies -chee red -bad dest -sc rolls -real is -dipl o -ðŁĶ « -conce ssion -prefe rences -explo des -er gon -introduc tory -ine au -ch af -som es -land rover -spir ation -sex y -sco recard -illustr ates -soul mate -wi en -inter disciplinary -fore casting -ent ities -glu ed -en lar -cur t -percep tions -boot leg -mi re -asho k -v az -hor ne -cal le -ac ulture -ther oy -night time -oc al -character design -ar mist -ðŁĺı ðŁĺı -yah oo -ac eae -to se -even to -sou t -nay anth -wh om -v are -ri gging -gen us -hi ve -com mands -sti e -day a -ethan ol -en f -hi fi -flu ence -cle mson -re invent -thermom eter -humor ous -emer ging -aci ón -ðŁĺĺ ðŁĺį -s ity -haw ke -accompan ying -t ility -ðŁĺ ª -re cess -protag onist -l ery -dun dal -int l -britt any -q bs -off the -marri ages -how to -viol ated -adel aide -wit t -lanc er -pak v -hu me -st ade -bra gging -ou tright -ad c -super st -real time -cu res -garden ers -ero ck -dale jr -ver o -bar tol -mo ti -mc fly -v pn -st ink -over rated -guer ra -e tis -ath ome -twd family -th ab -tn x -rafa el -family travel -x ley -sat anic -equ ations -ru dy -wal dorf -stan i -tu be -meas les -zimmer man -obli gations -i ously -bow ser -trans former -sho ppe -shak en -gh ouse -to d -ke tball -share holder -mar ca -kp mg -ak an -given chy -coast al -au th -roller coaster -mar ches -coordin ate -cine ma -apprentic es -par lor -mit o -men on -consider able -bar re -glo ss -enh ances -jaz eera -fal mouth -thra sh -stat en -k zn -eng el -samanth ap -flo ppy -sal om -ðŁıĨ ðŁıĨ -w ack -deliber ate -osc ill -herit ag -du sted -orni thology -pad dle -fer ns -bar un -cl ans -anticip ate -a ay -mat ically -é ĩ -tu mble -post man -unic ef -tro tter -op d -leaf let -ge ist -cease fire -scre ws -cre ation -wal nuts -longh orns -under statement -ab b -proxim ity -na x -un ity -turn pike -orda ined -dub step -chak ra -me ch -love her -look alike -donne in -vir on -Ù Ī -bang ers -vari ants -out dated -in ta -cri sto -sp elt -food and -f on -stefan i -margin al -hu tton -ti ara -tel ford -qu en -fair grounds -que tta -mikha il -heal er -v ball -ty re -under grad -gl end -hom ers -scri bed -main tains -po che -mis sal -mar ko -u as -á n -sh p -con vey -pad re -sab a -pu glia -madhu ri -pa xton -chap lain -n ago -ca si -... !!! -fli rt -sal eh -k are -di re -stam ped -extre me -ðŁĺĥ ðŁĺĥ -ho ppy -guadalu pe -advant aged -eu char -p low -un n -mac qu -port land -cla sh -pe s -lou bout -y p -keep ing -arca dia -fran kie -fi u -de th -encyclo pedia -si ze -inve sts -ðŁį © -geo logical -fran ç -con front -ðŁĺ ¥ -d ys -af m -tex an -graph ene -repost app -ac f -ur sula -gaz a -dd led -fu m -wsb tv -m be -fron tiers -chrono graph -ke s -inter faith -tab oo -spar ta -won do -flori st -em braces -ca w -no el -arch ers -ðŁIJ · -roman o -ban an -sh akers -melo dies -geo thermal -se phora -ìļ ° -оР´ -pro c -hand shake -pan de -popul ated -slow down -hor tons -registr ations -un deni -lan ts -pas sover -thak ur -li ef -adhe sive -pe tal -micro scopy -memph is -confir ming -air drop -mesm er -perce ived -ming le -lifel ine -gh j -worcester shire -pas sions -ach er -el lar -ah o -firen ze -bar ang -letter man -hat field -lu cha -je ter -e shop -william s -horo scope -pre de -east bourne -dur ga -di version -al trin -seis mic -premi osm -nar co -ti r -ori g -or m -land fall -ci ous -lin do -max ine -x ico -tra y -os wald -c ba -ric otta -n cr -mar au -ภ² -gladi ator -ch ery -lun g -u me -po psic -lon ging -can als -ta ya -decentr alized -sho pp -pres sures -mahar aj -eti had -wal greens -succe ssion -sign aling -li g -staf fer -north korea -def ying -as ma -de g -peri meter -oak ville -m sk -balti more -rece ip -de ple -ðŁĺŃ ðŁĺĤ -jambo ree -> .< -rsp b -puni sher -consider ably -in tothe -pari sian -acceler ated -polye ster -low es -fr ying -sauté ed -mou ths -seychel les -ra x -go dis -dak ota -house wives -the me -mat inee -black bird -ye sung -pre fers -pelle gr -in ated -trun ks -stronger together -re pet -re pairing -ped als -toler ant -her r -dun ne -indic ation -decat ur -b tv -exhibit ors -ik on -friday motivation -bra gg -live tweet -al ves -womens art -foreig ners -wal lets -min dy -lan ey -bb in -tv miaw -lif ter -tar get -tam e -dr ou -astro photography -mp c -g pu -nord strom -fric tion -run off -lov able -sp nfamily -ext ingui -bloo dy -sch el -arti stry -sw ish -scar ce -ph ils -max im -pos sum -com promised -sty li -sc fc -is sa -birmin gham -sket ched -angel ica -ordin ance -je ts -conqu er -ðŁĺ IJ -online shopping -s ori -reason ably -nue stro -ar turo -ch l -benef ici -spho to -wel t -ni kk -ðŁ¤ ŀ -dan ao -for mid -as se -af irst -âľ Ĥ -gil lette -as sor -an onym -sel ca -fe mi -bear able -y and -ar mory -cre pe -celtic fc -bra vo -in expensive -de lec -ge cko -new market -snow flakes -kab ir -con tra -can ning -mor pho -gar wal -ðŁĴĥ ðŁı» -fight ing -mu tation -woo dy -ju gg -gr aces -premiosm tvmiaw -kenne dy -gu p -sa e -op ha -off spring -fini sher -bet ts -span ning -mar j -h one -sh ing -contin ents -samanthap rabhu -un related -l acy -explo sions -benjam in -sophi e -no ting -micro soft -as sen -a hoy -i ker -ho fer -mo e -ah madi -yan n -an ak -ma hi -be u -aha h -creep er -baahu bali -am at -pri ory -haw keye -deloit te -sko da -print making -assemb ling -mirac ulous -no ch -sw o -leg a -oper ates -border lands -eli e -stron gh -rep tiles -pir ate -un fold - ¯ -qual comm -un predictable -ot r -rose wood -direc tional -counsel ors -corn ell -liber ated -j ad -ir regular -bulgar ian -high ness -vodaf one -sw ild -mini mize -gra zie -๠ĩ -r stats -stre ep -ome tric -humb le -lu mp -l ille -b ü -home depot -tripad visor -ki wan -a via -er z -ex ico -du f -blu men -mi zing -ar ma -in im -con stan -sor a -ju al -au n -tw ell -tren ches -her a -r k -po plar -recipe oftheday -ll an -bhu ban -short ages -ing don -bridge water -ðŁIJ ĺ -fortn ite -cam den -un cture -pro w -colon ies -t ks -n go -b hm -live pd -spl ace -sli ke -happye aster -ter rence -revol ver -j ed -yy yy -office of -m ts -exist ential -r ourke -explore bc -sse d -pri est -vix en -si ding -k pa -a har -ju ic -ob struc -foren sics -uk mfg -cancell ation -we ary -ab q -ele c -pri zed -deb ts -me zz -salv atore -m dc -gre tte -c gc -th on -snow storm -ts ch -cook ery -å ¹ -wa xing -n acional -mur s -ra ve -cap es -ger main -dri pping -sub mitting -ome lette -iter ation -aj es -shim mer -fu eling -ðŁĩ§ ðŁĩª -li po -bo bble -un follow -islam ist -hi ber -cat s -agentsof shield -sen si -____ _ -ster ia -inst al -ausp icious -har row -over land -femini sts -inst ant -char iot -blind ness -sp ed -sc arec -nu it -mini atures -ho seok -glo ck -fifa worldcup -e te -dis m -we iner -ex foli -ear ts -à¸ Ķ -my art -man il -iss ant -form a -in cu -buffal ob -in tim -mc cul -anj ali -po po -un doub -hil a -fun gal -thank ful -fu tur -en dish -ren ds -th ar -she ff -ring o -nichol ls -io wa -po tom -cl ams -ãģ Ħ -acon f -stadi ums -di mp -di k -residen ces -do v -caric ature -seagu ll -kl m -confe ss -sla pped -cele b -turb ines -pp v -nur ture -el ab -.... .# -tu ff -de press -al far -amii bo -di spon -e wing -que er -friend s -for re -âĺ ¼ -sw t -aqu arius -head liner -cur d -fi gs -o tters -love fl -kare em -go vegan -fri yay -consol ation -at ri -ì§ Ħ -âĺĿ ï¸ı -poly ne -gu ed -o ya -la us -intestin al -cam illa -scal p -pi r -leed s -horri fying -bore tum -dand elion -fer rer -ell ic -as x -so ren -re loaded -ale ague -navig ator -ine tte -add ams -al chemist -ak shay -dystop ian -awe c -n aya -al isa -ai led -ag or -avi ator -ali zer -smo bile -findyour park -cop ying -to ddy -sh ti -mon ger -cal houn -nap kin -break up -y atra -se thu -ric hi -eras mus -fer ry -am ore -prac tise -bo bo -power point -oo se -li ffe -chin a -sh ka -fad navis -du ane -war on -fal se -ðŁļ Ĥ -wa shes -disc ip -==== ==== -g k -ab b -stub born -medi eval -p ci -ðŁį ª -maril yn -h yo -man di -cr i -prede cess -continu ation -om usic -s lat -wh al -mall ory -bon n -shen zhen -ca i -âĺ ĥ -sa fest -for wards -dra wers -bla sted -sle e -mor phe -mb ta -dumb ass -ÑĦоÑĤ о -alhamdulil lah -ec lub -al beit -heal ey -ayurve da -adverti sed -cro cs -itt les -bry son -be i -nj pw -honore e -fu sed -ðŁĶ ĺ -mul tin -n aga -de parts -ko p -kin o -jhar khand -ed na -ax le -mil ton -supremac ist -marrake ch -domin ic -tran script -] [# -: ). -wo c -sur rounds -o gil -leaf lets -co well -whe w -tru de -proli fer -succe s -sports man -con dom -po che -k up -imprison ment -{ } -scram bled -å Ľ -ka ine -cell phone -metam or -con i -remn ants -ee z -down pour -afterno on -exerc ising -ber ser -architec ture -wick low -m ns -is p -bo c -n iss -mn wild -stu mble -r si -lu ffy -sil en -dd ad -bul lies -haw ker -bb cc -scu ba -e pp -que ts -for aging -pal let -ha di -cinemato grapher -cat chers -to aster -k hi -lite coin -kid lit -amher st -maur icio -ip ad -mar malade -fe y -don nelly -g to -est as -cere bral -ant grasso -zz led -vir gil -swa pped -ðŁĺħ ðŁĺħ -no dapl -greate st -nhl bruins -fra ser -b mo -ane w -. âĿ¤ï¸ı -se gregation -remark ably -mccor mick -lo gger -er as -contrac ting -âłĢ âłĢ -yor ks -uku lele -touch screen -de cked -ben n -south wark -ra vin -nu mis -ðŁ¤ Ļ -ru t -gre co -eth ic -red neck -ar r -t cs -ih ri -ðŁĩ« ðŁĩ· -l k -inher ited -zy k -viadu ct -marty red -hi gu -ss n -be in -street style -fer gie -bank of -æĹ ¥ -stake holder -exempl ary -cre ss -ess a -ero tica -intre pid -gom es -bra un -bethan y -bang tan -pulmon ary -m illing -doctor ate -trump russia -ठ° -s ani -bl att -pla u -depri ved -t le -ful ly -bour n -st ak -lufthan sa -kio sk -far oo -def y -bad an -ðŁĺĺ âĿ¤ï¸ı -rit z -tri sha -ran ds -middle sex -arab s -pro j -sport scenter -repe ats -iv f -bleed blue -as sure -o bs -territ orial -ele n -bever ley -ann ah -âĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı -z l -for good -science fiction -gla u -son ya -pri th -st weets -mix ers -mari o -ant elope -writing community -went z -den ham -be di -sf o -harley davidson -look book -immuno therapy -or phe -es ville -ed ged -tas k -sb ball -corro sion -kilom eters -co sting -play back -ke ke -di visi -u ter -re location -yel led -pen g -up beat -ser ve -âļ ł -hal en -stir ring -reh man -en v -schu macher -frag ment -alkal ine -sb k -resil i -share point -rol lover -tra sh -counter part -âĻ « -ob itu -à ½ -ãĤ ¹ -mul berry -ðŁİ Ĩ -auton omy -spra ying -nat l -love you -fran ki -nu k -esc ar -can teen -ali baba -de plor -mole cule -pu d -fort night -blon die -sp hin -portra yal -ta che -bu te -consi sting -freep alestine -c sp -im mort -d ns -ðŁĴ¥ ðŁĴ¥ -tour de -coo king -archi val -ga thers -bit t -b anc -pre mature -snow ball -poetry day -lou dly -fug itive -ed ay -em ra -ðŁĩ¸ ðŁĩª -sci en -node js -jur gen -je ong -band ana -un is -fox sports -v andy -pro visions -wee p -tu k -i ko -h oun -zig gy -z r -fil let -bat a -tin k -con e -we want -k ilo -hor ace -sl t -sc t -stay tuned -victor ia -umb ria -att acker -ingham shire -fright ening -no ir -fr at -con tempt -lia ison -ho i -br ink -tr ill -ni agar -kick ass -dun das -not my -rho de -bu mble -no xi -fa g -spec tators -mancrush monday -jin ping -distr act -dais y -wal den -portra it -ar thistory -vol tron -ev el -is c -ac m -r ite -na o -de ported -swe ats -ru fus -lo bo -labor day -gam o -ihri thik -bl it -abdomin al -ãħ¤ãħ¤ ãħ¤ãħ¤ -i it -e q -bu sy -allu arjun -un disclosed -de ton -pro create -ki l -ðŁİĤ ðŁİĤ -mitch ell -ki i -inherit ance -al p -jo burg -pat rolling -compul sory -un signed -ni am -l ga -eshop suk -tr illi -ma w -appreci ating -rock ab -mañ ana -an tal -mal vern -roy o -grand prix -sut ton -go ftheday -dig i -ãħĭãħĭ ãħĭãħĭ -t les -varan asi -erec ted -discip les -cont act -ðŁĺ µ -li d -⬠ĩ -scen tre -radi ator -ing tips -trans itions -thursday motivation -chem ical -separ ati -sal is -mi m -geo graphical -book fest -/ . -âľ ĭ -v ae -cur rie -ag garwal -acceler ation -the ses -lg m -u mass -pro portions -nat a -ani ans -ku ch -be acons -ap r -@ # -ðŁĴª ðŁı¾ -nu ke -sher aton -ki o -ma kati -polit ico -mor ale -ì Ļ -econom ically -gg ly -ss en -pa stries -intern ships -vic ente -fanta ken -aveng ers -accu se -slee pover -indic ated -the dream -ster one -ren ders -fro st -ou i -gre gg -d ore -⾨ ⾨⾨ -pu gs -sat y -nu mb -hems worth -tam i -la ssic -schi ff -igle sias -ag awa -] " -re shi -game stop -divor ced -theat er -clau di -un conventional -prophe ts -ac in -twel f -tow ering -t ml -sc lerosis -k wan -ge ts -distur b -na ira -ener g -pir acy -pru itt -noti fied -hen na -bra m -ground water -bl s -opti mis -$ ) -luci e -biz hour -fang irling -gr ills -or l -ver se -c ina -law less -artistson twitter -tele vised -marshmal lows -radio head -bar r -m fc -bre vi -mmor pg -g aya -âĸ « -sub titles -j t -disney land -to bago -nh m -groo ve -fi awec -" / -ba o -scra bble -om ni -ff l -um c -si mba -ali er -ter rell -plu me -mi di -dig nit -co c -bru t -ad ata -alche my -d sm -ðŁĺĨ ðŁĺĨ -win try -spa res -cu er -conclu sions -to ys -od or -fl ann -gar vey -scrip tions -inspec tions -cat ap -ang lo -st louis -heim er -at ay -tr ich -en yc -chil ds -vent il -mont p -guiller mo -circu lare -z ell -mode led -craf tsman -al ina -stimul ation -cashe w -ju das -best of -to ire -susp ends -scol lege -real ising -by tes -bloo ds -as si -ðŁĴ ¿ -o hs -ðŁį ĭ -scallo p -ठµ -gi fting -camo gie -wil kes -o zzy -ðŁ¤ ¤ -ver onic -sav oy -deme tri -baby girl -ðŁĺį ðŁĺŃ -so x -cly de -induc tee -count down -self care -ठľ -vi ka -tor re -phd chat -pe ars -aw h -suff rage -le sn -admir ation -mp p -shark week -schul z -santor ini -clo ver -( * -stras bourg -ex iting -so yu -finger print -che a -ãĢ ľ -vin dic -song writers -so a -prou der -nam a -= )) -simple st -delici ously -gil les -u q -mn wx -ep p -sh un -ken nel -fall on -ðŁIJ £ -sin d -tra gically -out es -modern ism -co ke -gy n -spi on -âĺ¹ ï¸ı -le am -compress or -apolog ise -twent yon -fan atics -âĻ » -sco tsman -sa wa -ko u -as er -ภļ -welter weight -phen om -twick enham -stri a -p out -ka z -gi am -cd p -ho y -emplo y -red mond -ภĦภ-sm ere -trance family -proto cols -pie ce -lu iz -iter acy -carl s -united states -har med -phd life -ch aw -foot prints -l é -cho ker -z ana -sli pper -eric sson -insul ting -articho ke -advis ing -acquis itions -op or -mut ations -re ar -ॠģ -pod cast -wi ther -kun g -íĺ ¸ -win slow -di apers -ðŁĵ¸ @ -ec ker -col lar -hu ey -gi ro -mono gram -kas ich -si veness -malay si -arom atic -gre s -gali leo -u ji -rob b -dr m -none theless -as a -: > -lo a -l np -at work -ag t -laksh mi -pipel ines -id al -stre l -re all -chain z -stone wall -san sk -ðŁı ´ -pied mont -hoste ss -ci u -t é -analy ses -wil helm -scott y -rw by -mosqu it -use mb -qu ins -ðŁij İ -tu cker -s conf -speci fications -psychi atry -broo kes -s ils -ol af -de to -co di -cli p -fil th -womancrush wednesday -go to -ang erous -be ale -w tc -paneli st -ne x -lar sen -emili o -tab leau -h itters -conce ived -americ ani -or tega -mar di -Ñ ĥ -pain tball -thir sty -new yorker -etis ation -go ss -we aker -u gh -tro ll -har ga -du al -ght ning -at ine -ðŁĺİ ðŁĺİðŁĺİ -cook out -pyrene es -po ss -authent ication -sports wear -yun ho -kir o -archi pel -shen ko -ren der -nov ation -divin ity -ðŁij £ -su fi -humb ling -ge opol -devote es -wait ress -tr ough -py ro -i ba -bl ing -gra f -epilo ts -bt r -of tball -bas king -domin os -so om -r ath -sher yl -qu el -astronom ical -wel d -track list -sig nee -slee pless -com man -ch ron -summ on -pure michigan -cri spr -sli p -la gi -ra q -um u -thal ap -char med -scru mp -quad copter -ski p -peter sen -mun i -ðŁĮ ¾ -mon aghan -tra ys -ick ed -canad aday -te gr -ï¿ ½ -hot ness -heavy metal -ab ar -gop debate -az ul -spider man -sun flowers -ľ ë -web comics -bar d -Ð ² -nichol as -slu sh -ram an -mark ham -ffici al -ff ler -íĬ ¸ -ple ss -anush ka -to to -sk aters -pro wrestling -compet es -ay ala -myster y -thr ills -mp g -independ ently -y ul -imper ative -formid able -tire less -st acking -ton gues -mal tese -pot ts -mat ti -char ting -chill out -super nova -ome o -sky sports -nu tty -ðŁĹĵ ï¸ı -ro han -insp ired -concier ge -ser ra -ma kk -gal at -chi pp -ye v -ì £ -reim bur -op ul -kimber ley -i eee -bre men -ch itec -or in -nak u -bon kers -foo ty -emer gence -ðŁĨ ĺ -sti p -serge i -zo ey -ai me -wou ld -dy es -destin y -vinai grette -dri er -circulare conomy -an archi -ss r -sch el -cin er -gro om -determin ing -gar min -cal ais -incarcer ation -bu kit -no i -chelms ford -mckin ley -chi pped -belong ed -tu mors -str oud -mi i -influen za -wwen xt -tun dra -tele communications -cat sofinstagram -t ages -beat ty -o du -ml kday -oo per -dang le -ak ley -cru mb -anti gua -ti mbers -rou hani -ðŁĴª ðŁĴªðŁĴª -ha fi -... !! -w cs -coo p -sn c -lit res -ãĢ Ĭ -ha z -co z -k ant -green field -cur ti -y ale -flye agles -what soever -wor thing -rou lette -flyeagles fly -un da -a inted -stand ing -lusci ous -h pc -effic acy -ash land -me ghan -ky wx -n pr -bath tub -ac os -h ani -mar cor -man tis -da isi -bo ba -ab bie -mu til -vi al -spy der -po z -g ti -el fie -nigh tw -metro id -anton i -mad die -dh ry -dar lings -ten ds -taek wondo -atlan ta -me ow -chlo e -ãĥ İ -ym es -siber ia -k con -gu es -mar iner -fac il -azz le -[ ... -han nover -bav aria -vir go -te uk -u sps -) # -wall a -sam pson -need less -ver bally -hay ley -bow led -pi us -lam pard -ham string -vol vo -road safety -cho king -sor bet -a hem -healthy food -brai ded -horticul ture -cr ative -che ek -ad do -the force -ko ko -schiz oph -j ie -w ada -twentyon epilots -h bcu -pro ton -pau ls -lou isa -lat am -kyr gy -com pac -sd k -sap i -?? ? -liber alism -ep silon -ai den -w usa -spra yed -baske tball -kim ono -blue wave -ali as -ë§ Ī -mug shot -ce c -do gre -ad ora -ðŁĵ· @ -kra kow -intrigu ed -exhau sting -astron omer -ven ison -lady bug -ci v -bra e -us m -bri be -acup uncture -pembro ke -ke ating -chi e -y ad -t si -sm i -see ding -gate shead -lis boa -gy p -canv ass -ðŁĶ´ âļªï¸ı -op i -ni r -soci etal -ly te -ati es -c sm -ar tery -al in -aka poor -abstr acts -â̦ â̦ -teen wolf -ne we -travel gram -sentim ental -per ched -han del -ho ek -f ay -coordin ating -anim ate -man ian -effor t -jer ky -f ck -adri enne -ma bly -tra ding -my el -spi ro -sol a -stor ing -over drive -monday morning -dream team -pul se -bon di -ber nie -pgat our -tri poli -son am -plat t -âļ ¡ -ag roup -îIJ Ĵ -inv ading -v cu -k ell -ñ os -un dead -pod casting -mercede sam -mana fort -cor tex -que so -impecc able -pal mer -wil doz -sport sc -guacam ole -dispen ser -cate gori -stun ts -per il -invit ations -dune din -xi e -achi eves -saf er -pre ds -ph an -knuck les -k ak -igno res -lovemy job -aru ba -ound ation -datac enter -co vert -gr ing -cou ple -ا ر -vol i -mc cle -arti sans -lu do -kal am -arom a -under taker -hu la -wiz kid -gu mb -god frey -bakers field -ker n -engine er -car ve -pal in -guaran tees -pe bbles -b ays -zi eg -fin k -â¬ĩï¸ı â¬ĩï¸ı -down pours -ro chelle -rasp berry -ðŁĺ ® -gra phies -stom p -caf es -ari zed -utt ar -cal vary -dri e -crusad er -bus an -tux edo -si u -seam us -cul tured -blan chard -town house -ge red -butter milk -flu ctu -roger federer -hel i -ðŁ¦ ĥ -u ous -ram esh -mu ppets -email marketing -ye ss -br ice -ri zio -pel o -donnein arte -u rable -inve stin -bump ing -raji v -sav a -thro wer -fore x -o hhhh -th rust -pull man -r fid -sep sis -le ed -fri ght -roun ding -ne b -ph ins -ai sha -utili zing -squ ats -gold smith -j ic -bo ks -vau s -i po -exclu sion -tari ff -po kes -min al -land s -en force -washington dc -or char -g x -mar ys -ey our -aussi e -bak ers -un popular -latin os -lar ge -pu tnam -bol o -wa de -pel o -di zz -ob struction -fla ppy -weare the -depend ence -pajam a -e te -y ann -e wan -disc la -a ay -kar ina -e ic -an trim -w soc -neg atively -kai do -fotogra fia -dh ru -colo ssal -mcle od -k wang -mani pu -ex hilar -us atoday -summer slam -co les -tapro om -unbeat able -de ma -tic ks -k ling -fil s -campaig ners -ภķ -brew ster -audu bon -qu ay -ch s -ki gali -d ler -strength ens -som al -sign ingday -gol ds -pig ment -orche stral -g q -lin kin -ðŁı ĩ -ta w -algar ve -ho v -ear le -gold fish -am ig -ex er -ben in -dru id -ðŁIJ ¸ -she m -quat tro -mer cen -men te -incorpor ating -bon anza -state fair -en de -concep tions -e es -âĻ¥ï¸ı âĻ¥ï¸ı -d son -fire arm -orb ital -we h -multi p -fo b -requi em -p light -thou se -sa id -oc re -remem brance -n old -chi pping -be v -er t -ca thy -sy m -ri ggs -m ley -dialo gues -sl ender -how l -gau teng -wd w -to bi -smo kes -im plo -b pm -ad n -mom basa -cap sul -bloom field -artic ul -cle o -goog led -flu ffy -l ard -en zyme -ve sti -ibra hi -fl ame -e mea -out ages -dispro por -ble ak -an sel -ick er -st louis -stock market -good friday -sau lt -stal led -pro m -ep som -b é -the se -sau ces -me w -lit fest -pre d -re u -kar ak -si enna -ell in -bio technology -ï¸ıâĥ£ - -tac tic -sa in -por k -mon za -ka j -lu sh -compart ment -chang ing -shraddha kapoor -fo al -ar tem -cu ando -can ola -ori ente -me sse -d ited -br c -box er -bbc two -s st -ment day -em ing -de wey -kof i -âŀĸâŀĸ âŀĸâŀĸ -reali zation -smo l -tw ood -san je -flag staff -ber wick -cor set -can ary -whistle blower -et ched -com posing -squee zed -bow er -auto desk -ne h -mathi eu -ba ja -Å Ĥ -hy dra -da im -am eri -insi sted -mer lot -gar ros -heart news -gaine sville -cut ler -bo de -ðŁĺī ðŁĺī -lew es -scoun try -g sa -us u -cc m -god awgs -phara oh -cra e -mor ley -hyp noti -f ades -neur ons -fu zz -ing co -high landers -star k -vig ne -pac kets -amar illo -reu ben -insul ts -bas ic -vec tor -n me -ac ruz -tro s -transm itter -ðŁĺ ŀ -interpre t -ðŁĺ ² -pre quel -mc gowan -dis semin -ðŁĴĺ ðŁĴĺ -mascul inity -indie gamedev -ali ve -te t -pe tal -ema iled -ar med -ko o -he er -ba ird -super junior -metro polis -delav in -decl ines -stit utes -Û ģ -p tbo -g lan -cho res -e aling -chri ssy -ste mc -vi an -assassin ated -pron ounce -illeg als -discover y -cav ill -fri fotos -f al -so i -sabot age -t int -p dc -ðŁİīðŁİ Ī -ãĤ Ĭãģ -ji o -endeav or -in sig -commit tees -she arer -me tz -mar rying -h dd -g by -fre t -tri sh -pu l -scrip ted -sa ki -l w -ke ye -shim i -nan aimo -ca h -à « -tem pered -ici an -du gg -dish washer -air field -s rugby -gr inch -y st -r ms -mahat ma -lan kan -disc ar -dige stion -no des -l ls -om ic -gu tter -tis garh -feder ico -election day -bo he -master card -fire ball -âľ Ķï¸ı -oy ster -p ong -do k -en route -m vc -beat the -ali stair -shu b -sh aming -cherno byl -ghi bli -the s -pin ion -d bs -sal ts -ic tion -epi ph -nc pol -in convenience -whit ley -inspec ting -wood ley -wi ener -skil let -no les -m ca -h ina -a sha -willing ness -well ness -tam ed -show time -dis advantaged -ber nat -us n -mission aries -coun selling -arrog ant -quant itative -leg alization -ho dge -energye fficiency -cameron dallas -pos sessions -p bb -harris burg -v g -hindu ism -happy thanksgiving -fi b -re acting -tweeta picture -pol iti -mu ppet -hur rah -pac e -coast guard -guar ded -as am -par ry -fore very -x q -oom f -ke anu -j ind -ri st -customer service -sac red -ðŁĺ º -ton er -occur rence -mat u -val dez -red d -is ak -power rangers -pe asant -raj ini -abra ham -e mil -car do -tr il -hair styles -obsole te -sam pler -direc tive -delavin kisses -ver ton -glo s -sp ay -paler mo -com ets -man ziel -chicag of -ski pped -pic torial -h ant -b mi -a ol -re opens -pad dling -devo s -fra ud -bas eline -que ues -sp ired -sn are -eu ve -descri ptions -daisi es -ca ching -gall eria -tri mmed -stin o -recy cla -ic ular -bir ken -raw lings -fli x -chic as -b gt -lik eli -argy ll -thel ove -ga ston -bl anca -ha k -f one -sailor moon -h aci -ima c -fl yn -de can -bel les -ap ic -zo g -taun ton -con stance -lasag na -ker nel -in ka -har bor -collec tively -calcul ated -av ille -shil pa -pur du -gi mm -fun er -a est -pembroke shire -nighting ale -n unes -hyper tension -hu bert -sli ders -infer tility -comm ended -transat lantic -metr ical -!! @ -Å Ł -ss g -bac ca -inver ted -fun factfriday -it ans -albu m -acqu ainted -ri er -whel an -sar ab -mu e -snoo ze -pi ff -agre eing -sp itting -jer maine -n ye -âľı ï¸ı -am bush -ze ph -con greg -univers ity -s app -wann abe -pat rice -ib d -do glo -fri dges -sun d -king ston -ar gon -kam en -hardro ck -ds ley -do lores -ì ° -ota ku -pi ping -be having -âŃIJï¸ıâŃIJï¸ı âŃIJï¸ı -blue bird -an sari -teapo t -fire work -cro p -log ans -ty ped -thick ness -ig ers -c fp -dys functional -contra sting -et ty -aston martin -tx st -dra grace -at tributes -marath on -manu scripts -john stone -ðŁĺ± ðŁĺ± -bo er -ay u -aru gula -poo rest -con du -assu mption -anag h -no h -delav in -sit ter -g ö -mor ow -kick start -com i -gl acial -ghe ad -ba in -ker shaw -en dof -fre ud -om at -i af -hu g -sign up -each other -defin ite -tu bing -shak ira -ðŁijı ðŁı½ -uu uu -sw in -sham bles -ol as -sk ell -brit ain -kn w -clu tter -om y -j ens -hang ed -city scape -scra ps -un locking -dead liest -er no -breast cancer -a it -inspec t -fu ri -ðŁĴ Į -ku d -ju le -or ah -mi ds -m dt -bur gring -r attle -pu sa -stal k -cle ans -iss ance -z ek -worth it -nam eis -musko ka -council man -urban art -bar rac -un solved -tu l -g ita -white board -soy beans -em ent -cont i -saturday motivation -conveni ently -doc king -t ado -âı © -sp ino -puppy love -po f -fabric ated -robb ers -adop ts -ti fied -kk r -indulg ence -notic eable -macqu arie -chap el -sensu al -ki ko -melan oma -lore tta -li ance -ab en -sp lus -ga al -ac ele -lib dems -compar isons -ðŁĮ µ -rhy thms -mer y -en capsul -nap ier -ðŁijĮ ðŁijĮðŁijĮ -ðŁij IJ -plat z -fre sno -re formed -ran bir -el it -the best -bhu shan -vin nie -impro vised -s ittin -re created -e ba -ec ker -ac rob -pon te -cor d -gi ddy -eur usd -fe ver -intu ition -gar i -dum mies -bud weiser -amend ments -te tra -sch nit -ay as -mar ys -ci st -k ani -ker mit -ðŁĺ±ðŁĺ± ðŁĺ± -tin ker -strol ling -di visional -niger i -omin ous -menstru al -kar ab -k hy -bw fc -pan handle -l illi -well er -stra pped -son the -transfer ring -ethe real -sne aks -ru dol -gab les -jac king -cin code -for tune -canadi ens -con for -ab normal -frank lin -tit a -mu la -persi st -cu ties -ki el -ðŁĩ± ðŁĩ -her mann -aw k -fi asco -ko to -we ta -hi ker -budd y -preven tive -mcgra w -game boy -forsy th -top shop -si ob -sad h -in tram -follow art -so aps -dragon ball -ou x -morri son -๠ĥ -lu bric -adul thood -morri sons -âļ łï¸ı -her mo -ta ka -stall one -mis use -team gb -ra gha -con fined -at y -hom ophobic -nw o -sky news -ho ya -ac rosse -wi iu -pur ée -jed dah -ðŁ¤ § -advis ers -ph ine -an is -scrump tious -ë° ķ -c ke -vin y -ter m -s dc -o do -home school -vas c -leop ards -debor ah -illic it -cur ran -as roma -nau ght -mar ig -brand i -em p -ðŁĺį ðŁijĮ -î Į -su spend -lu z -initi ation -sch aft -jensen ackles -craw ler -post doc -des ks -trail blazer -den omin -tri x -no ise -po et -± ï¸ı -s mug -vol atile -proof s -pharmac ist -sardin ia -mash able -kim chi -co ed -schal ke -doo dled -c sw -sh ur -ro x -do k -chris brown -mathemat ician -ab ound -ang elic -rock ford -d ole -yor kers -ms n -g man -xavi er -bor rowing -mark ings -longh orn -k ja -diver ted -mm it -euph oria -ay yy -te a -pa h -ck i -un cut -li ven -ky ung -fan art -mer ing -red ding -amo vie -gri di -c thulhu -schol arly -ju dah -th bewithyou -eu calyp -ðŁIJ ķ -hert fordshire -cour troom -by u -auc tioned -ple ase -mar cia -ê° ĵ -succe eded -el as -arvin d -t lot -saig on -re tt -ra kesh -fd ny -as en -se bring -gladi ators -you know -v lad -gol a -par ap -ÑĢ Ð¸ -sab cnews -one team -oh l -sun e -ri j -cd c -star gate -run down -plat o -ph c -chat ter -ra viol -mn f -mand ala -li et -ภķ -mari a -hun gover -consoli dation -fer rell -tradition al -ilove art -gal ap -ðŁı Į -que zon -espa ña -ðŁĩ¨ðŁĩ Ń -ho bby -steam boat -mali gn -guil lau -pro hi -its me -íĥ Ģ -in scription -al z -mari an -k ade -mm on -adju sting -ne sts -intern ally -ci r -vik ram -mal ala -k ph -fel icia -the real -cap tivity -at is -marcor ubio -kale ido -che v -mano j -le more -gent ri -vi ps -tro pe -" âĢĶ -pair ings -mal nutrition -fr ay -desig nation -brun omars -az e -tor rential -pan zer -ga il -under the -the ological -schizoph re -dazz le -freder ic -mo par -ad illa -so ggy -ra un -medi ocre -colo rec -i fe -p inst -blu ef - ² -world water -gir oud -clar inet -ad olf -tar antino -receip ts -assu mp -ðŁij Ł -coffe es -âľĬ ðŁı¾ -du plex -s of -r x -lin o -timber wolves -pan dit -mo tm -e ga -ay ama -ach s -outsi der -ll en -co er -til ly -cheese burger -ma ds -ple dis -emp ty -national parks -az iz -p mi -jun kies -f ener -sq n -è s -gener ation -cleop atra -bhuban es -mosqu es -ty free -popp ins -tw c -or well -n age -ka whi -hol low -dal ai -¨¨ ¨¨ -ou ro -m health -gi on -az o -vis as -reneg ade -re ic -w sop -ðŁĴļ ðŁĴĽ -e chel -tox icity -mü n -bun k -stimul ating -asth our -\ ' -ep h -ende mic -cn bc -shrin king -peabo dy -michel angelo -can yon -wal e -su mi -si ders -inu it -? . -profession alism -dr acing -plat oon -p ons -out bound -maple leafs -de sol -cen cy -a than -ver ma -ru bbing -ok an -ðŁij ł -mull ins -authent ic -Å į -alman ac -ga ia -bb q -on imo -ke h -ty a -tou ts -y av -re posit -, . -wi ght -se eyou -cal lof -done sia -bar gaining -gr anth -sd su -amphi theater -p su -re watching -wine tasting -peak district -dete cting -thur man -phe e -èª ķ -u mich -re r -sculp ted -go le -name sake -ðŁĶ ģ -serv icing -bau gh -pu gh -pen cil -dar th -munch kin -at orium -ten ers -sun y -rolling stones -mag ing -star rer -i dris -fe instein -ag ron -âĺºï¸ı âĺºï¸ı -supervis ed -chamele on -aggre gate -succe ssive -mo gul -inst yle -pol dark -custom e -ohio state -ha ya -ci des -broker age -angel ou -fifa wwc -de forestation -al ton -pam ph -hu gged -ho bo -change able -ku ber -bur roughs -demon etisation -cape cod -vers atility -or ice -le ila -womenin science -tu a -he dges -embarrass ment -ali fe -so ars -ni ghter -hy mn -gi pp -chas u -tech s -ni all -k illa -hi ka -cam els -valu e - ¢ -sc oops -mah moud -clu sive -adri ana -pac o -oz il -un as -transl ations -whispe rer -s bi -bu xton -bio tics -indi ffe -ken ney -k lar -et ching -barra best -inst ability -se ine -vo tel -blo gged -whis key -my space -t ant -lan dia -give back -illu s -aw ak -ac ab -f bloggers -cloud computing -blat ant -syri ans -band ra -sty n -an em -ke ted -kar thik -barun sob -pin ot -gu bernat -gay e -arti ste -i fied -conven tions -hu an -geni uses -eeee ee -fol ly -somer ville -pride month -ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸ -chemo therapy -paul s -bak ar -ìĦ¸ë¸ IJ -taiwan ese -fol lo -c ss -re ign -nn nn -fla un -catastro phe -iti es -frag ments -extre mists -ym oun -car men -eze kiel -conne cting -se h -man ta -remodel ing -we ymouth -at oms -ce m -ne well -lu mi -the open -mo c -mili band -g land -z shq -mag gie -mani acs -m sp -ad y -cre ams -le anne -e sta -py g -af finity -pray er -dun bar -ligh troom -ac adi -wyn onna -roman tic -state dept -sick le -wh os -lam o -et our -fin ity -shru b -shar pen -pun dit -ed on -af ore -mar s -jeff ery -ter ps -medal list -kath arine -accu sing -ta z -roy d -from home -confron tation -alle gh -ðŁijī ðŁijī -refresh er -ran veer -never land -jo jo -lu crative -en am -ca ver -pa edi -man jaro -flu ids -the ssal -oppre ssed -mu ss -joh anna -Ø ® -cn g -buil dthe -sett les -s ith -fu ego -cl amp -ar ag -pay er -ted x -mand y -inter stellar -fr c -ch and -b cc -mo lo -len til -johan sson -grims by -nature lovers -ðŁļ¨ ðŁļ¨ðŁļ¨ -shin de -x in -international dayof -transiti onal -sat a -cad dy -wo d -if u -ha ys -holl yo -j ang -ir c -co im -grad able -" " -ðŁį ´ -ঠ¾ -a el -n yo -west lake -time out -sof i -phenom ena -cultiv ation -ag no -un armed -so t -con j -gen o -royal navy -nutriti on -fair mont -ti relessly -sn g -re ty -mic a -lu cent -slo ane -droo l -riz al -od ell -critici zed -. '" -la ze -deser ted -co der -pra s -l illian -itiner ary -dav y -an ap -whi pping -hobo ken -kare ena -çľ Ł -vi us -ter n -nan tucket -mis understood -bu laga -st ant -chin ook -z am -reli es -d ss -ed mond -sket chy -m ell -fe x -rec tor -dist ill -day dream -wine maker -ri pley -billion aires -hel ene -ati f -cul prit -bertr and -wou ldnt -ma pped -v ak -gla dly -parliam ent -kidlit art -ware ness -goli ath -âĨ ĵ -view point -tat ted -fu ls -dor sey -ang lers -li ds -ki ya -bow les -be h -b ite -compati bility -ance stral -pro x -beha ved -gubernat orial -ch field -sab an -z h -teen y -shibu ya -holli day -pan cy -âĿĦï¸ı âĿĦï¸ı -seun gri -? , -ðŁĩ¦ ðŁĩ· -im itation -impac tful -any i -gene vie -añ os -bate man -gli der -af ar -ra sheed -effor tless -sh war -dach sh -er un -at os -kin i -ch d -kha ki -k lin -felici dades -bel o -as l -to ppers -fin ley -stac ey -rigor ous -kar ting -le ppard -car michael -be ret -c se -ak hi -mer ingue -ab an -ha ke -ger i -er jee -re sto -comm anders -pr it -fl or -ad ven -ex termin -remain der -å IJ -es g -martin o -lulla by -| @ -mi gn -in store -big bang -cor di -cau ley -ante bellum -dg ate -cro ck -span dex -scaf folding -ore os -ê°ĵ ìĦ¸ë¸IJ -pom ona -ma uro -uni versi -re mi -af ootball -t ant -sm alls -ne h -worl do -tropic al -mor ph -jav elin -gla r -arqu itec -reminis cent -tu bs -spide y -make u -syl la -progressi ves -blo t -shor ten -keep in -ch ak -ang st -super food -decad ent -ston y -neuro logical -ar boretum -ann ak -fe ma -per cu -dis respectful -small biz -lo x -co om -c sc -bs bi -pre valence -him ss -esp an -mo ga -fr ampton -sky map -mas se -levi athan -( ). -noctur nal -car ameli -ang or -amne sia -outsi ders -she alth -rhin o -ant ag -ag io -ðŁĴ° ðŁĴ° -take me -kab addi -c si -m sh -coch rane -thessal oni -sil a -ha us -du sting -obe se -mack lemore -mani sh -len in -m dc -gro wn -shef field -s rs -ke le -car son -ch um -dah lia -can tore -opp o -how ling -cyber crime -sur realism -sc ran -fa iz -thre n -rac ists -r out -pk not -se mana -sin i -mc cull -ma chi -alfon so -y b -sar dar -kend rick -den g -reci pro -on f -doom sday -bri bery -custom iz -art is -c pi -ðŁĻĪ ðŁĻĪ -sla va -let te -en s -âĿ¤ï¸ı ðŁĺĺ -cra yon -ad an -tr c -migr ate -simp son -row ers -king sley -farmers market -shee han -ne phe -bor non -car ton -mic key -all ure -u lu -sli pknot -heb do -gui do -dog celebration -online marketing -acceler ating -) .. -origin ated -macar oni -ed tech -out field -mit z -disc us -adverti ser -man or -ha shi -descri p -cap ita -ful bright -recep tor -con n -con ey -spion age -r attle -pre st -u li -blog post -acker ay -) â̦ -red velvet -mat th -inspir ing -b sd -ker ri -po con -mil lar -re pur -accent ure -ä ¹ -ram bo -ragnar ok -dele ting -british museum -pat ory -leip zig -flori an -sci fi -in ers -br ate -yo y -melis sa -ab er -ma sa -po te -mosquit oes -transpl ant -r pa -; )) -bast ille -yl an -joye ux -melo dic -cap tions -atri st -roch dale -gott i -pew die -cuties aturday -who is -aqu aculture -tiv a -sp el -he ss -ha ji -fred die -co per -brand o -v k -photo book -* , -my dayin -micha ela -brune i -sr ini -in te -Ä ± -de ol -d fc -separ ately -bun d -ve sts -to c -me ck -rein forced -constra ints -car roll -sq ft -re ver -cam per -bird man -in action -gener ators -triumph ant -pe sts -o vo -gy pt -al amo -sc aled -suresh pp -sd n -is mo -gi os -) @ -justic eleague -restaur ant -gab i -den gue -next gen -exemp li -ap ex -inspir ational -down side -kid z -u pl -et na -alvar o -fel dman -bar net -m ha -es ch -bloo ded ->>>> >>>> -kan i -ho fficial -casablanc a -bir ds -ty ga -sw amp -o day -new castle -nb ap -ci sion -cho ols -af lo -ne p -mon ton -ak b -super model -down time -th os -sc wx -snoo py -ag greg -yo ke -nor cal -we tt -prolon ged -me tast -beat er -f ta -t lap -disgu sted -y h -voice over -itch y -ip c -ðŁİ ¾ -phe asant -stra its -ram pant -j g -fer til -assu res -fortun es -sal inas -liz ards -kett le -i bs -cyn thi -he g -mc cr -soccer oos -happen ings -cor den -ðŁĺĤ ðŁijĮ -t ches -egre t -wolver ines -congratul ated -ho gg -bott ling -wr i -fer ri -bo sch -af ire -og den -s jo -j dm -sv t -con tex -tol lywood -min k -me se -super sonic -op oulos -å ¸ -âĶ ģ -knuck le -gu ise -gam i -chu cky -z inger -radi al -compla ined -bo da -fe tal -discipl ines -cor ro -ðŁĩ®ðŁĩ ¹ -op ted -filtr ation -ad nan -em cee -mi stre -insom ni -fer gus -tra jec -on don -med tech -tanger ine -madra s -gru e -cab s -z hu -sureshpp rabhu -insul ated -day swild -pp m -band ai -v day -s ff -squ id -lo thing -not dead -expre ssive -cu ll -ala stair -x u -up front -fish ers -en es -um d -dis missal -sti er -sel s -lu st -re active -prote ster -eyel ashes -al im -goo de -gre eng -da ir -com pen -anush ka -proto typing -ma pu -bear ings -ðŁIJ Ł -for me -bsbi botany -timo thy -out skirts -am bed -are tha -wend ell -stre aks -ni m -k pk -sne e -fit ter -quo ta -p ate -win ning -ðŁį Ń -sho pping -ma inst -cul ver -ste vie -mcfad den -counter parts -gren fell -fol som -dor set -tech crunch -⬠ħï¸ı -tip tuesday -us l -tre x -geor gie -ranveer official -lic ks -se wn -k f -' â̦ -jap s -p ate -orth op -fe sta -stra s -mon tal -hammer smith -fore most -wido ws -mad re -ite z -mito chondri -lig ans -z ona -cari bou -m ss -andre i -weather channel -gh c -: ... -ta ft -awe ather -al isation -bru tal -bliss ful -nik ola -mal icious -q m -mpg vip -bro die -bl itz -applau d -dri bb -v ague -dog go -transl ating -interpre ted -hat ched -ge tyour -benefici aries -spar ring -caes ars -aw illiams -la hat -bro ke -ti mp -virtu es -rel ying -pie tro -k tn -ici sts -pab lo -lou i -a ag -pn pp -cha st -pul ses -fini sh -usair force -type writer -thomp son -dog s -ut to -ãģ į -sand al -new ly -do ge -z w -wan kers -ne gr -mu cha -determin es -black fish -sk unk -mu ps -instru ment -phy to -daysto go -skin ned -hai der -con ten -ðŁIJ¾ ðŁIJ¾ -we iler -undoub tedly -chair ing -wall is -sh ard -zind abad -adul t -absor ption -pre sto -deplo ying -drum mond -battle front -seag ulls -how dy -juda ism -des de -part ition -âľ Ŀ -no logy -national bestfriend -lesn ar -film fare -co asts -christen sen -ac an -mb u -co pped -ru bble -sw c -fun nier -far ther -where as -nano technology -with stand -pil low -bow ers -to pe -it ly -con fit -ma kar -comfor ts -bo sh -cli pper -bal la -sti k -mil b -safe guard -musi que -eas port -ya z -pad ded -bad er -fore ign -chop in -archi ve -o ka -tran sporting -tml talk -aj it -consequ ence -sc roo -ff o -collabor ated -pug chat -ye mi -jav ed -au burn -o of -ma w -sau cer -miti gate -i les -evangeli st -ter ie -re cl -indic tment -cat a -bright ness -may the -whim sical -un lv -key word -cu min -med way -west world -tra w -im posing -form ity -coul ter -ab z -ny pd -grass i -kel sey -qld pol -clock work -f dr -di anne -âĺ ij -ad h -p ann -bra vely -ae ge -un lawful -ver di -pocaly pse -phar o -kar la -reson ance -ma stiff -la dak -bu u -ma iled -hi i -craw ley -tor rent -mach ado -liby an -effort lessly -fal sely -q vist -ke ef -craf thour -cheri shed -val kyrie -s ari -kal amaz -be he -ðŁĮ Ļ -th im -ro ddy -col trane -but chers -ach im -wk end -awk ward -cab rera -:) ))) -fran c -decl an -con dos -a ja -pandor amusic -char ter -ph ill -mon trose -hatch back -handic app -gre aves -eucalyp tus -ut most -t son -bur ton -mid wives -in cur -ðŁĺį # -moo d -compre ssed -tom a -must ang -mo g -as ana -te stic -sho tel -in sol -cor sair -nh q -ben ny -sm ma -kap ur -in con -jon as -ener gies -don al -as ad -se z -n pa -archi ved -stimul ate -do p -hy d -gri eving -ãĥ Ī -ron a -why te -tree house -ss ell -sand ro -ko bo -ther most -se clu -hi ya -ge ez -mam as -prisc illa -flav oured -fas s -w old -maker space -cospla y -p tv -happy valentinesday -sequo ia -love craft -gu an -d tm -ci i -yoko hama -pos thum -re q -ðŁĶµ âļªï¸ı -galat asar -dol by -hamp tons -disturb ance -stone henge -ok c -disrup ting -month sary -jun gle -head lights -du stin -micro sof -happy mothersday -ko ko -gra zi -te sto -na idu -mal ay -ari al -ru mb -ab oo -har man -tra pe -spo ils -je ho -go dly -lock screen -z un -pi ous -ma gento -l enders -prob able -corpor al -m our -aw al -su a -call me -ton ne -go vin -devast ation -x j -gear box -war lock -per me -it ate -gaza underattack -du val -paras ite -clement e -le th -i va -fro zen -tho les -to bin -cair n -s ill -luc kiest -conver ts -st ale -pan cra -euro pale -wis dom -sch ur -ì ¶ -verti go -bi j -u bc -nu re -righte ousness -mt c -factor y -ver st -revers ed -hur i -hee chul -fab er -ar r -ul ous -ven om -ph at -green ery -bra dy -à ¦ -: (( -never giveup -di sha -mo ta -health care -dun ham -dex po -den zel -bb ins -f ics -wh am -mc g -eli an -wat a -str alia -tel lu -pe sky -spin off -ar moured -re acted -do fficial -te du -sag ar -mor ally -paralle led -fi os -dow ner -dau gh -re do -world cup -tari q -bar ne -glaci ers -oc cult -barbar ian -her mosa -!! !) -y ur -inter nation -p ss -sit u -p int -american air -sw am -dopp ler -ðŁĴĻ ðŁĴľ -cincode mayo -le van -hell enic -mc ne -ju di -yu h -st x -qu are -ðŁĺĤ . -sti g -g els -mot ley -hard work -euro zone -e ad -ç¥ Ń -seab ir -ci us -la id -alpac a -presu mably -pewdie pie -boo ted -am ari -tam ine -sol ace -bar row -acade mies -x ian -om ination -dun geons -b ma -de ity -ai k -stab il -hir a -affection ate -ving ne -new port -ãħĭ ãħĭ -thir ds -re tains -aroma therapy -ski er -ni ma -do pe -cr inge -con domin -to or -anim ator -sar aj -seas cape -minim alism -lake shore -calla way -berg man -à¤ Ĺ -whisp ering -stupi d -ri ghtful -requ is -ir n -se va -ut pol -tuber culo -squ ish -de but -govern mental -christ ine -all man -weap on -s ito -bur i -lo lita -leaf y -fu ch -tin ted -mck en -a hahaha -ðŁĩµðŁĩ ¹ -repe al -ne gan -ðŁķ Ĭ -tail gating -game insight -ðŁıŁ ï¸ı -yaku za -z t -ti ring -pro posing -bow lers -tra itors -ak shi -cler gy -cit o -up sets -tu scal -symph onic -sil ently -shu ff -black well -ðŁĺĤ ) -ko be -rober to -ri dg -dc u -mer ino -ft p -east side -. ~ -nb l -mn leg -ts for -frau dul -ca pping -in my -gymna st -ston es -ss in -twe aks -shag gy -oak land -dem sin -sang ria -mm va -hen nessy -down ton -ri ghtly -in it -aga ve -ob last -northe ast -friend ship -dal a -tro phy -ðŁij ½ -mag in -margar itas -ê · -ww fc -fa sh -di ke -cu d -char t -ðŁij ® -refuge es -jop lin -n cs -imp y -firm ware -pas cu -flam in -health tech -bell letstalk -w aka -ol ls -la go -co wan -bombar dier -sh ome -ðŁĻ ħ -mc master -na ve -well s -u ta -tell ers -mis fits -kap il -face off -af firm -a pro -whit epaper -super yacht -speci mens -al located -... , -- __ -ka w -dachsh und -djo ker -s work -qui ere -or um -ðŁIJ ł -som m -c mt -ingh our -skin ny -lgb ti -gi ggles -break away -resear ched -par ity -my al -ms l -re tained -si vity -make inindia -sol ves -defam ation -wal tham -sri racha -road way -concep tu -al in -iw ant -å Ī -del ft -tender loin -ga ins -faul ts -sw ire -st ellen -pol lo -dy ne -bornon thisday -asdf ghj -sq l -sali m -advis es -vo ip -ìĹij ìĨ -un touched -she il -ontari o -uph ill -so bre -de shi -nov ella -du tton -craw fish -ا٠Ĩ -ma a -tw ine -kal in -ðŁĩµðŁĩ Ń -ye ss -brook s -hoo siers -ton ka -umbrel las -ay ers -ate am -acqu iring -su ction -ä n -wi es -tari ans -soci o -mat tb -shepher ds -o so -charity tuesday -s logans -ninj as -al bat -by te -bash ir -trampol ine -mydayin la -i ja -bas el -ror y -gol die -fi rec -un noticed -pecu liar -sch a -ker son -mour ns -liquid ity -qu ipment -hi bs -ar s -aeron au -slide show -sla bs -delici ousness -sk itchen -hta fc -full erton -cre ighton -aer ob -procrastin ation -az ores -white hall -uss occer -medi ation -djoker nole -and me -um en -noxi ous -jo ss -ili fe -anni vers -sudan ese -et res -under mine -whole foods -diso be -kor i -ade le -eli z -can ti -al on -gymna sium -sarko die -meteoro logist -yl de -ste en -stamp collecting -nas al -lo tt -fran ks -ex ol -ack i -good year -animal rights -y les -vio lets -mm es -s thel -ra pping -tu scan -wai ver -tur ner -eat local -northe asthour -anim ations -tom morow -t sh -ff ame -bra e -pe tron -glam our -br yn -d cs -bal es -ðŁĶ ¶ -bro v -bre v -b ons -physi que -car ne -x e -elix ir -vol ved -l oma -ìľ ł -æ ĺ -van u -ri gs -bal ance -va res -bon ita -sprink le -perfec to -di on -le ak -calcu tta -o ba -d ma -c mon -tun er -pneu monia -bo gus -apolo ge -cl ough -bor ne -)) )) -revi ved -o varian -ner f -c legg -fan fest -cho u -reali zes -mc n -li gu -leg alize -just saying -for ster -bo sni -k hi -in dom -hei del -en cryp -si ss -ed di -mar bles -brisban e -y ing -pre paid -wal sall -cooper ate -orche str -mar isa -ho wie -che wy -bren ner -andro meda -e gan -sto cki -cav endish -ag an -ban o -de ir -go g -bl k -re thinking -ch ig -rhe u -sni p -p eng -semin ole -m swx -an nex -lyn da -lewisham ilton -cu mul -tb l -dolph in -agu ero -........ .... -pre lude -at our -gr anger -too ting -ro tun -dis ar -home items -da res -**** **** -ðŁij Ĩ -compre h -jin x -as well -iri e -circul ating -ðŁIJ ¥ -over board -cultiv ate -rhe tt -oriente ering -ca k -bal kans -s itt -jas min -britney spears -ro tor -se aling -g bc -oc ci -f as -eman cip -com er -war time -tic kle -son ny -pac es -log g -at rix -sr p -g win -do bbs -uz be -the wanted -dru sh -ex tru -m icky -honore es -dar win -re dux -mm j -ram i -jalape ño -io c -do ver -ju ju -whit ney -s eng -en ly -au ch -archipel ago -vigil ant -man gal -wil dest -parano id -hal i -bb ly -sanc tioned -real ms -con co -u ddin -c sk -play time -libr a -sav ag -oc tane -rec tan -re turn -par rish -mor rha -cc p -c mu -sa iled -se vent -ro sie -pil ing -he w -boar ded -seg ments -neph ro -( . -cr ats -bak es -ðŁį ¸ -back tothe -sibl ing -kirk land -ke o -gu wa -bre ads -ðŁĺľ ðŁĺľ -t q -haras sed -ga u -wil bur -j isoo -ep er -li sam -tri ppin -sh ino -ru kh -beast mode -cho a -inst aweather -rich land -gar i -fe z -cowboy snation -fur suit -k run -a en -sycam ore -se gun -ent ennial -di h -o ax -demsin philly -ðŁĻ Ģ -sn hl -pen nies -pass words -ma kin -ty e -d eng -kni gh -jeep life -hel pline -a for -zz zz -ste amy -pic ker -iter ate -happen ingnow -ki b -bloom berg -martyr dom -bul ly -assor tment -a hora -zo e -no i -illu stri -agar wal -p sc -electr onica -recruit er -gar diner -rad ha -naf ta -dot net -pi ero -geor g -bel s -ðŁĺĤ ðŁĺį -tuberculo sis -run nin -mor is -haul ing -ev oc -bre thren -sha ir -frame works -a stu -ri gid -ku ma -kre me -jin nah -insu rers -ny u -f ere -nol lywood -good vibes -- ... -toi le -sk ril -instaweather pro -cze ch -pa vel -one piece -nike plus -fi let -cav ity -ðŁı½ âĢįâĻĤï¸ı -ðŁİ £ -dra stic -dail ys -siam ese -re bu -oste o -lar k -f re -sh elling -p é -glad ys -ðŁıĢ ðŁıĢ -gusta ve -submer ged -grand stand -att u -won t -f pv -b ley -jon i -ang ames -weigh ted -al ou -ठ¶ -les bians -f j -anni es -am l -dor ia -dav in -be ta -can c -madewith unity -ha j -bad lands -mu l -blu ec -pa wn -cov ington -neuro logy -htt weets -dysle xia -thel ove -ne at -fork lift -autom ate -une ven -monte ss -he in -ha g -rel ics -competiti veness -can elo -mar tens -bullet proof -sk ittles -g ya -pri mo -americ afirst -woo o -abor tions -?? !! -ma che -ld ers -rl ly -preli ms -direc t -cour se -swa in -super cell -ec centric -sting ray -ple ts -wil cox -west in -okan agan -kir an -car bo -bomb ings -ra rest -bo h -gaw d -di gg -mo ana -enti rety -en closed -dodge ball -par ton -milky way -at r -thorough bred -re ally -qant as -epiph any -ine e -aero smith -spi eth -ar thro -ell ini -du bu -bra ving -âļ½ âļ½ -re structuring -illumin ate -equ ili -mp i -ash ton -pony tail -ma scots -flat tering -cru m -ast a -à® ° -stranger things -bar nab -ر ÙĬ -make shift -got cha -will am -cho irs -kilom etres -gho sh -eu than -dol ly -un ning -the ar -cre we -w sw -j ace -dis miss -ke an -ho ta -kh at -~ > -thir u -ren dez -hart man -tee ssi -cas ca -z ah -hydr ange -fo d -aw p -mzan si -thick er -nago ya -ne va -sti que -cast el -dam ian -there by -ji ang -ale k -music islife -ra q -calla han -gou ache -somal iland -sean hannity -ra heem -lo se -elo ve -whar ton -rectan gular -illustr ating -har ne -auti sma -scra pped -ell and -decre e -nag pur -ki pp -so re -n md -ma as -gun a -gart ner -bel li -then ight -je on -gendere quality -gi ver -a el -gar ments -ne u -mardi gras -mar sden -ro wer -pollu ted -camer aman -vin od -be asley -cro c -ji u -hollyo aks -anesthe sia -al les -ste ward -lati mes -ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸ -tic ian -gor ia -come dic -ðŁ¤Ķ ð٤ĶðŁ¤Ķ -nai ve -sli ons -ł Ī -bur glar -ðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃðŁĺŃ -york shi -se ñ -fan boy -lau rel -inci dence -potom ac -rober ta -presi den -pr yor -os bourne -w ku -te me -pal ae -ðŁ¥ º -re boun -itu de -red dish -k hand -coloni alism -north carolina -ðĿ Ĵ -manne quin -lady bird -ta sty -knowledge able -g shore -ðŁĮ Į -à® © -qu aker -salz burg -med alists -chy na -bridesma id -ma ori -ro p -outra ged -in adequate -truck ers -al ana -ìĿ ¼ -ri x -oooo oooo -command ments -lam beth -aa j -eco friendly -bla z -morecam be -boun cy -rou x -rai ded -mi zed -sh c -gaw x -labor atories -ru bs -rest room -consult ations -ca jun -virgin i -so ir -rev ue -ple in -wag er -ç ¹ -we do -growing up -! ðŁĺĬ -face ted -sin ners -ho vering -ti ene -seas oning -an ja -leg go -il is -fla x -dev o -ash ram -mati sse -ker i -go wer -bo tox -mar shes -unh cr -ts m -opti mus -dun i -stu ffs -so k -order ly -n bad -islam ophobia -raviol i -fab er -cre ds -won ka -in fusion -over weight -daily news -assi mil -acol lege -medalli on -kili manjaro -sti ff -tham es -sun ken -th ard -my dubai -hilari ously -han nel -plu mber -fair view -separ ating -rasc al -qui en -necess ities -confeder ation -ll ll -: ] -weak nesses -bron co -ra ffles -el ot -ãĤ¸ ãĥ -advent calendar -ðŁİ ¹ -stra vel -tun ic -k su -im peach -e spionage -! - -di ment -cur rant -bio de -commu ting -by ron -ðŁĴĵ ðŁĴĵ -shad ed -tr uro -cray ons -ar ne -h sc -fre aked -dram ati -fle ek -u cd -marl borough -^ - -cross ings -mal o -black ops -bin ance -cho ked -chen ey -pl o -ge stures -val edic -ryan air -rem ington -v cs -mc kee -ec z -be gs -nail art -mayor of -happy fathersday -war t -pet itions -n ingly -clean energy -bro x -sl alom -exist ent -ab ay -ug liest -tom p -stom a -sel by -goal scorer -ben ji -overwhel mingly -lan s -semiconduc tor -south korea -re scheduled -sk yl -en listed -dow ski -si del -rosen berg -nas ser -white head -pri us -har are -en n -ry der -í Ĥ -mon g -clas ico -transpor ter -po tty -is me -** *** -vic e -sk it -ode ssa -l mp -her n -raci ally -pin oy -paragu ay -obitu ary -go es -bu cha -side walks -angu lar -un constitutional -transiti oning -i bu -gu ys -un packing -oooo oo -black girl -ber gs - ¯ -wordof theday -trump train -thunder bolt -m si -fasci sts -ठ¬ -t sk -collap ses -raje sh -loveis love -migr ating -set back -ðŁĺĬ âĿ¤ï¸ı -t els -safety first -nar rated -jae joong -un answered -lique ur -en nes -dal go -bill ings -salt water -mer maids -lon gs -clap ham -we arec -pic collage -n ach -h ace -pois oned -lo th -ag na -adel rey -guar dia -poli shing -peace keeping -d all -p isa -la pland -process ors -de andre -so bs -p once -dra ins -c be -ðŁİ¥ : -spla sh -meat ball -fon tana -worcester shirehour -ne v -bri sk -b int -ac r -po x -cay enne -skril lex -j fc -hahahaha hahaha -gla s -en gul -tempor al -oni zed -con cre -com pose -vibr ations -plant ers -fer t -criticalrole fanart -t bli -sch allenge -huck abee -munici pal -iam bic -radi os -ne vis -dura bility -mc cla -horse back -inst itutes -ful fill -atta ch -ate ur -ak an -resi sting -illumin ation -hand le -hair care -om ent -macle od -ka iser -g no -bear down -ly f -gl omer -distor tion -z m -san k -roo sters -is now -as ports -ag en -wo ken -st george -ro mper -my le -econom ists -ru to -t will -health and -d ito -ws l -tair p -pra kash -mic heal -h ts -w rights -kat su -fioren tina -defen seman -d itch -var sity -texan scheer -ba ham -sc anned -we il -seduc tive -ðŁijį ðŁı½ -fu e -er win -dav ison -ter ran -moo ds -wool f -re source -@ . -cu sh -ðŁį ° -regre ssion -cur led -la zer -jo anne -ab bott -mo z -down ers -mm mmmm -valent ina -k hair -dream t -cro ok -che k -ste aming -nephe ws -cl eric -as ober -indefin itely -w ye -us news -joy ce -flu shing -wynonna earp -ron do -kis s -hot dog -bar ns -sax ophon -far ley -gas p -decre asing -al way -pe x -l sd -shi ft -p outine -ra zz -rescu ing -ni ko -ho ch -cc l -u aap -n ts -m car -il wx -conqu ering -ket tering -stur dy -delay ing -sto k -vani shed -cath ar -bin gham -in v -ic hiro -he mo -budge ting -[... ] -be ss -sebasti an -slow ed -ðĿ ij -musli m -stun s -acton climate -ve a -se ton -rose tta -oun t -hard in -flu id -ca w -ðŁ¥ Ĥ -yach t -un l -sp hy -provoc ative -or ic -is back -__ _ -nicol as -gy an -loo se -fl in -reb ate -: :: -! "@ -com icon -she ff -down stream -chic hester -beach life -mom life -diabe te -ar ra -van e -ok u -ye o -man go -try out -app ell -he irs -arjun a -dd u -na veen -movi c -soci alists -s back -criteri on -soyu z -k her -da z -yol anda -wine oclock -re ina -one w -leon ard -en dez -u bs -support local -facilit ated -carameli zed -b pa -vuel ta -my tho -m ami -spe are -nbap layoffs -fe vre -nick jonas -im print -c so -craig slist -la salle -gi deon -ha doop -dis regard -w ud -tu c -ma gee -acou stics -ta a -qui e -pol a -cr t -dw yer -dis sec -capit ol -men tion -kn oll -he igh -fin ders -plac ements -l se -indi ra -gur i -madhuri dixit -kingdom s -iambic pent -geor gina -je ky -conflic ting -bay an -aga tha -uph old -dr on -vic ar -ex pat -periph eral -pe ssi -fa f -ance stor -? .. -wid get -pun c -comm enced -beav s -air waves -ad dis -po a -de sses -co den -vu e -ru pee -kar in -spo ck -m sy -ภ° -pr ick -fill more -ti fication -thing sto -sar de -em ile -pere ira -n ad -bright ening -arre sting -wo king -usc g -sp ill -raspberry pi -hu go -ite c -is ma -cuff links -optimi zed -oc c -mi wx -en ka -el ited -afford able -sa kh -coron ado -ho h -at ul -ai oli -jim cantore -accoun ted -vin ay -her mit -groo ves -ran ch -r illa -we tter -ou tof -veter in -ni kov -ki an -fair banks -ram apho -n iti -k ko -ru sty -ne stle -tv xq -shahe er -âĿ¤âĿ¤ âĿ¤âĿ¤ -penn ant -gem stones -dem debate -ðŁIJ Ĭ -auton ews -support indiefilm -mach o -ve x -new sat -ne ti -conce ssions -can died -yof the -mac au -den ds -cricke ters -san iti -mari ano -gh at -ar toftheday -¡ ľ -e gos -gen oa -chat bots -bri er -al labout -mon ty -spi ed -r tr -comfor t -sni ppets -real time -gra in -exam ined -en lightening -tt u -god bless -release the -sing ular -ki ans -ha ka -sor ren -defe ct -mar g -equ ities -d orian -su ka -per l -aishwar ya -pul lover -preci sion -fair way -ne ve -rive ting -vill anova -en com -ak o -passion ately -europale ague -siem pre -x vi -enligh tened -c fr -âĺħâĺħ âĺħâĺħ -wast eland -is f -new comers -emergen cy -amphi theatre -- . -text books -figur ative -tre mb -pe sc -ab hin -ab bot -ac acia -har ds -por sche -kau ai -el isa -car rick -abo u -elli er -be ch -neu tron -galap agos -ru ben -in nis -how to -nun s -sab ine -i ac -clin ched -no tori -fi ves -cairn gor -per i -gr c -ðŁĴ¯ ðŁĴ¯ -mal m -twelf th -di ff -rout ines -marty n -lin den -synthesi zer -nu mber -game cube -fal kirk -byz antine -queu ing -gr ill -scal able -char red -rou ting -her bali -gri zz -ðŁĺŃðŁĺŃ ðŁĺŃ -tol l -termin als -l pc -ab d -war mups -remo vable -¯ \ -vi go -pap aya -ne ve -lov ingly -jo kers -ib les -sse tt -poten ti -pel e -gi gi -sadi q -leg acy -son o -ru pees -retar ded -ele e -par r -fi ance -ey re -say ers -pend ants -mak nae -al bans -adap ting -p ff -pu berty -ji u -ing rad -hypocr ite -diplom ats -phys ical -rob by -bon sai -ãģ · -f att -catal unya -âľ ĸï¸ı -ro ma -more land -so e -conver sions -stl blues -shol m -gra ssy -pra do -on u -assaul ting -> _ -sett es -dis graceful -aph ra -âļ½ï¸ı âļ½ï¸ı -ठª -kil n -goal tender -s ru -philanthro pist -b als -th n -stu den -sando val -dogre scue -eli ons -asse ssed -lar go -hec tares -sh rm -sa if -cle avage -no ches -n ene -fat alities -cur ing -clean ser -al es -p vp -south bank -pizz eria -marsh als -kni fe -an dover -tbli ghtning -sr sly -ou te -digi mon -timesof india -prome the -le bo -f su -wit z -rever e -man as -mam ba -ch ica -gu an -exhibit or -csr racing -d ere -xx xxx -gu sta -story time -ston ey -organ ics -and u -se am -min ogue -anushka sharma -ab a -ðŁİĻ ï¸ı -ugand an -chro matic -as sn -document aries -sh t -ru paul -loy d -k ats -e us -ite ch -me dusa -pan ty -kel logg -et to -talla de -sha a -do st -p ms -mari ana -je ster -croo ks -ðŁĶ ¬ -min danao -ind hoven -ðŁ¤ ª -le xi -tv n -jan is -co te -ãģ Ĩ -ser rano -iw m -ðŁIJ ¬ -k ke -distribu tors -cap u -counterfe it -camp site -ag gie -ðŁĺ ¼ -chhat tisgarh -~ @ -state u -san di -prevent able -cl s -can ne -mm c -i ver -sa haran -pal is -night out -do s -ap ia -absc bn -manag erial -aro se -mo wx -aro sa -ðŁĮ ³ -under dog -remo ver -astronom ers -lent ils -su scep -smoo ther -pend leton -fau cet -e mory -dal mati -af cb -tic us -exem pt -en rol -d heim -ðŁIJ º -restric tion -star fish -sto w -snor kel -thunder birds -she ad -homo sexual -dy n -as li -andre tti -dou che -dom o -tar mac -slu mber -pr onto -first dayof -mini ature -mari achi -argu s -recomm ending -mobi les -in ce -illustri ous -or c -adver ts -gr its -wea sel -pag oda -over pass -gre ys -maxi mus -arma gh -wood land -sun ni -ðŁĴ ī -ë Ŀ -ti one -soci o -ho s -ðŁ¤Ĺ ðŁ¤Ĺ -wind sor -subsequ ent -munch ies -id h -exclu ding -e mi -cu th -z ai -week days -law suits -barn ard -Ø ª -pe tting -net es -mul ligan -pharmac ists -ra quel -e ton -cran ston -gil ded -cle ary -ce ph -ra a -pam per -lombar di -as in -sher ry -pro d -for te -ari anism -buffalob ills -æľ ¬ -ðŁĶ¥ # -uu u -just ices -car ina -nat in -mas low -dro oling -cog nac -cam ber -el ong -r dr -in en -convic tions -am use -tro ck -harm less -visit ation -gen omic -bl and -beno it -chim p -tuscal oosa -gre asy -x po -gil t -se q -per mitted -christma seve -book s -mu e -old school -human right -be ati -ðŁĶ Ŀ -sh at -sculp ting -h wan -fern andes -sci utto -fu entes -endeav ors -maid stone -un paralleled -shou ted -queen of -mer c -band ic -ve da -sel angor -pi le -ja han -intimid ating -disapp ears -cl ich -za ha -w urst -hi v -fod ils -cor dless -aaaa aa -hy dra -bel inda -e els -bu f -su staining -rugby league -no c -brig itte -( ðŁĵ¸: -tromb one -soo the -smo g -ad p -stab le -ing ley -diagno se -ms g -we ss -tic keting -one e -nsw pol -e up -auto psy -adity anath -sun down -river front -si ya -p is -hier archy -dur ango -di jk -ren shaw -he aps -epide mi -david bowie -interne tof -dd i -nation ality -mb ar -air y -win der -w alia -elli ott -c x -bav arian -pl att -an tw -wi wx -sof ter -ne ha -h eller -th and -dani ela -bo ast -degra dation -ðŁĴ¦ ðŁĴ¦ -transform ing -man e -av ut -ðŁĺĪ ðŁĺĪ -vo ter -the e -t ate -pu ff -in door -sop roud -boy ce -boris johnson -wait in -immun ology -ðŁıĨðŁıĨ ðŁıĨ -âĿ Į -street food -liz asober -cavali er -c elia -need le -motor ing -g ato -, ) -ra de -harve st -t ms -jar pad -on ey -air men -v re -impair ment -abhi shek -snoo p -l ant -fam ously -bl ou -s ze -g ander -un touch -tu f -dee jay -col lateral -b ind -ðŁļ © -pin ning -ic n -' ; -the economist -ul tram -worldwater day -ti poff -the i -feed ers -campa ign -sc umb -day weekend -yo m -pe dic -h ough -ps v -pl in -on de -boston marathon -az zy -* _* -con ley -thi ago -hoo o -gal erie -luci d -je tt -gl itz -final fantasy -achiev ers -y ung -peregr ine -op hi -dam es -biom ar -âĺĢï¸ı âĺĢï¸ı -sk c -l ics -fl ank -ar rahman -ho of -uphol stery -t ats -wo z - ¿ -snor ing -ra er -l ju -ap d -pl ating -kan u -im ation -fragr ances -m ra -mor ay -mo tt -im muni -hearti es -bho pal -tim ers -g ata -color way -car nation -win get -si ghs -s ville -optimi st -chate au -olympi ans -ci o -singer songwriter -ny o -fi bers -bur ch -ag ro -mil ne -ig bo -cr amer -ation als -dan ube -pad ma -nor mani -en forced -bre ck -boeh ner -ar den -sur rendered -pros thetic -om a -ha iled -calcul ations -w fa -bi b -fcb live -fon da -west coast -que sts -friend ly -to wie -fit ch -bal ot -star dom -scrat ching -ho sa -thi ka -o ven -stro ke -out post -pharmaceu ticals -hi kari -mu y -af d -fallon tonight -squ at -or u -dra ined -chocol at -ë¯ ¼ -wor ths -ri b -mu j -that s -residen te -it el -boo st -mi gos -mul led -la a -etsy shop -don keys -me k -p tc -flin ders -e hs -ro hit -mu ir -g ad -compos itions -åĨ Ļ -combu stion -i kh -yemen i -wav ed -gar ci -ak os -oo ds -fu sion -se que -s lan -pl ur -kic chasu -shenan do -s ams -worl den -horo witz -with me -mic robes -k ki -ðŁĴĶ ðŁĴĶ -w su -patch work -fre er -y aki -the art -symboli sm -mil er -bt n -ma bu -side kick -motiv ates -sag itt -natur als -serv iced -ps ori -pa ola -qu ig -i badan -gi ggs -ë ³ -sciento logy -si oux -salam at -d res -cad bury -d hawan -ci ón -_ ' -swa pping -maris ka -james bond -explo sives -ay les -af er -s agu -cen sor -tom a -jeff erson -ring ed -par tist -ir responsible -aguil ar -vac ay -equ itable -altrin cham -ac ur -man ish -ger min -schoo led -pu tter -ed ad -nav al -toast y -sol areclipse -dish u -coy ne -ac co -mu ck -mar an -el os -len der -cro ix -worth less -ha ber -gun men -ðŁį ĵ -zen ith -t enders -hur st -hol tz -itali ans -car low -u cd -characteri stic -bun g -av l -u th -sa sia -rs l -red man -neighbor ing -green peace -sti ps -follow party -y gk -en os -omni bus -na issance -chri ssy -secu re -call back -ji hoon -memor y -block er -l anta -daf fodils -bil t -ffer ty -fau st -ie c -nipp les -so g -m nd -jagu ar -bol dly -ab poli -pro position -gun sense -evan sville -cu tters -we go -dou n -do x -stal lions -ka j -shi ppers -j awa -vol o -le ven -pap rika -kov ich -jor di -induc tees -app alling -dial ysis -allevi ate -âĢĶ âĢĶ -pie ter -mid wi -q tr -juli ette -inter mission -haw ks -act ment -one ill -k lin -vam ps -fam ous -cou ld -autom obi -da an -west end -elli p -nh c -mel anch -web series -ton gue -snat ched -smy th -tan gible -sl i -e asing -bar stool -over lay -afford ability -ting ed -ter as -ay ush -wanna one -rh ine -dan a -sh ana -kend al -fer tile -w ir -repl eni -lar vae -is ro -con vos -ab brevi -u cc -hun gry -bur rows -ag er -nav i -mat in -du per -cer n -ma don -ķ ï¸ı -é ģ -tu ps -hy att -sh ep -friday night -wis er -hei di -hat ton -p gh -foun tain -wrist bands -ahmadi yya -aeri al -subscri bed -so los -m ace -sla yed -for fe -dul ce -christ mass -arun jaitley -viol ate -ob stru -ni eces -w vu -idy l -fa ze -pre serves -infr inge -premi ers -inter vals -agen cy -( © -stand alone -di mes -bo er -param eters -ge tit -ðŁĺĺðŁĺĺ ðŁĺĺðŁĺĺ -tu lane -for given -scol l -mb ps -smash bros -rob bi -prima vera -ali st -ghost ly -ay at -ye ats -impre ssionist -ear phones -caul field -wai kiki -sal ute -sc ou -mu ay -louis vuitton -bak hta -ado g -inven tions -hur d -forec lo -stream line -thalai var -ch snews -will ard -t sn -euro parl -cru sher -my sore -gro wer -ra ping -pat ti -g den -sm w -muf ti -kid man -ab r -soun ders -skep tical -ðŁĶ İ -sun dar -i me -fer g -feather weight -ar lington -pas qu -ag azine -wearab le -nati c -mccl ure -inter mitt -hor de -six ties -car te -bha v -ze al -experi ential -ador ned -som mer -eno te -hypo thesis -stin ky -pro to -dead lines -vo gel -mus ings -monc ton -gu ter -f le -aci on -voice of -ta sha -inhabit ants -type face -s ba -bts x -ðŁĶ Ĵ -wor x -u hc -jo ko -cell ars -gor o -continu um -... & -weather cee -ha p -sr k -ris ers -lonely planet -un named -co eur -ðŁį Į -the world -ili ke -fa sten -ami go -ri ba -ramapho sa -staf fers -had ley -? ?" -fi ore -sal ut -hu ff -bez os -Ñ ĭ -ra der -kam ala -in line -fill ers -um atic -all in -shat ter -re in -o ku -ch ases -fla gged -baby metal -water stones -ts b -cut out -op hel -aam a -rockab illy -sto lic -jet blue -ich ick -down ton -uzbe kistan -pat na -la q -gr ange -) _/ -subsi di -sc p -newsc ast -it sa -twee tyour -e mor -archae ologists -uni fication -por ta -q x -protec tors -pro hib -charis ma -car tag -ren fre -scul pt -guwa hati -de ma -boo p -unf pa -dex ter -lay la -alleg es -sou ps -never again -l ys -cal c -bar oness -visu alize -ger ber -absor bed -i ers -a han -fon tein -detec tors -verst appen -sv c -formul ated -ac dc -li x -in competent -bh k -lour des -water house -snow ed -appreci ative -sig ma -lizasober ano -pen ned -pay check -tall inn -fanc afe -par isi -av alley -vi g -ru fc -hard ship -so cute -po ise -ì ¹ -roth schild -k ly -???? ???? -l hp -il ay -f hs -am ad -ide als -brad bury -bal boa -nic ot -kid nap -wol ve -tas manian -op t -matthi as -ãĥ³ ãĤ -super markets -mylittle pony -me lee -li ster -gr oun -fe dora -kind ness -en en -bra hms -¯\ _( -ros well -mar lene -ic u -re formation -or ail -he brides -dispar ities -terrac otta -swal lows -re id -influ encing -flu or -den e -tum our -blon des -thunder bird -sh eva -moga dishu -ka b -cre eps -i ving -ene ed -anno y -âĶ Ģ -intri gue -enqu iry -ar aj -tur al -kuber netes -end lessly -divi dends -tor a -ti sh -commemor ates -un ra -tri b -pon ty -ne m -diss ent -brew ingco -ðŁĺ ½ -nor mali -bi of -( ... -chil len -ì£ ¼ -mell on -av is -mccor mack -ing ra -enrich ed -custome rexperience -testo sterone -snu g -sett i -ger onimo -inqui rer -bre aches -very thing -bloom ing -mu ra -dispo s -bi de -de va -shade sof -in trin -sh ev -s ven -nayanth ara -gan esha -c ws -ber ta -label led -use um -nick named -ma han -car uso -ap ur -ðŁij Ĩ -w q -orphan age -discar ded -mag nu -lu e -je on -bridge port -pac ing -mercur y -( ðŁĵ¸ -marx ist -amphi bious -transplant ation -stit ching -then burg -gradu al -ãĤ Į -ro ft -ma ils -ine c -guy ana -dopp elg -ver o -re write -head less -harb augh -gate way -car sforsale -sw i -st is -mach t -un de -sura baya -stap leton -nur turing -mil ner -ya o -lma oooo -ko sh -arsen al -k ame -er ry -ar royo -dis misses -ru bbed -rc b -lew d -dil u -and or -vi de -ur in -inter sec -ha ar -al b -year swith -app leton -é al -ul livan -suc cu -monter rey -d mx -artem is -ron nie -farm land -s football -gro tto -anth i -ãĢ ģ -à® Ł -vid ya -jimmy fallon -ൠį -t zer -gravit ational -w thr -u hhh -e hr -tin ker -ti juana -scran ton -ram charan -bar clay -re van -m si -ka p -wr s -we thenorth -tor al -sat u -gro m -fac ep -erick son -z yn -se dge -oo dle -spur sofficial -ds p -sic ilian -soli hull -recei vers -ladak h -hend rick -ther i -presi ding -mc guinness -litt ers -gun nar -gh oul -wi b -n tv -kar o -fro ck -b lau -ampli fy -all is -ul lah -memo irs -kh loe -intercep tions -pet day -lo oney -con fin -ch ay -piyush goyal -frequ encies -ut z -event ual -warm ly -obli vion -an ka -ta it -âĿ¤ï¸ı . -director ial -ru lers -prince s -mu ck -stur ridge -deu ce -abri dged -bagu ette -un cles -pen du -min ding -forre ster -av ila -wall er -wall street -ment or -hin o -high way -crom well -fanart friday -mb i -co yle -a hi -tro ve -spie gel -pay tm -mcin tosh -jan sen -nit i -nash ville -len o -leicester shire -le gos -dic t -ðŁĵ ½ -sp ad -beverly hills -sy rah -separ ates -z ain -un fit -dra gs -tan ia -over flowing -hri thik -haw thorn -z ani -mac far -fi de -to tem -pe ds -fundament ally -cal ico -sin ner -j ä -hil de -ds d -ten ay -ta hit -mil f -lie b -inform ing -up lift -ra el -mortg ages -lec t -ii ii -guillau me -compos ites -old smobile -l end -gar th -com mish -bapti zed -scorpi ons -ru cker -bringback our -alli ance -thalap athy -tal i -sp ans -eri dge -wither spoon -lin da -sky lar -kor n -hom s -Ä į -sil enced -caf fe -ar ty -dist inguish -to wed -pun g -jessic a -ear nest -beau fort -t ama -study abroad -si khs -new bie -nav ratri -mar ble -loun ging -lit ter -dal it -so sa -iz es -gra de -com promising -tr iton -de tta -v j -chau ffe -spec tral -powe red -montess ori -artic ulate -hal ton -al co -ye y -mn twins -acoun ty -ðŁijı ðŁı¾ -âī Ī -mad men -kal a -gru m -chi k -ati s -su me -akh tar -job search -high lighter -bo ath -âĦ ¹ -tar zan -lam bo -âĽĦ ï¸ı -ox fam -dump ster -pretz els -mac os -incl ined -fac tual -adverti sers -shu i -pu ree -ml pfi -anti dote -cap o -pa str -merc ado -but ton -ar min -ag g -lol la -horri bly -er rands -christop he -time snow -monday motiv -li ss -scand als -mc i -dispropor tion -âĺ İ -sur pass -samar itan -so tho -pu rest -fl att -trivi atuesday -delec table -leop old -hermi one -chou dhary -en rich -¡ ¡ -subsi diary -ine qualities -bachel or -auto immune -la kota -i hop -ad jec -the simpsons -sh es -se k -gret chen -up stream -hin akhan -coper nic -x tina -lu g -tough ness -e ad -cli pped -bi us -sl v -fah ren -dee pak -ca u -x an -im mature -dig ni -bo bs -shred ding -but tery -accommod ations -de ven -chun ks -super league -sky bet -kil dare -je et -ë į -ce k -wrec ks -pro pane -oh l -tb d -quo i -trum pp -mi mo -reluct ant -ver ne -o ic -ma gh -ar nau -se ver -li dge -stair way -kicchasu deep -ðŁĶ º -mach ining -aama admi -ot i -c da -al it -pan y -inst alls -ac ct -e shop -di em -hard well -fulfill ment -sc afe -qu ack -extrac ts -swee tened -fi ghton -f di -d inger -wal tham -us ur -refe rees -seok jin -gran n -af rin -th n -sch af -par cels -bet is -amar ine -nom an -kh tar -mor itz -cou pling -bar ons -ðŁIJ ¸ -à ¸ -sl p -sad ler -x ander -tri ad -mc millan -kh z -divi ding -ìĹijìĨ Į -dar yl -zed d -le ys -pla ques -flu ori -tipper ary -on nell -di dier -lang ford -im c -the sun -bir dies -ar cha -ye ssss -t di -dar ia -cand ace -al tam -pal aces -ch it -sant am -event ful -book of -ad b -mon stax -cre ole -co el -âĸ ½ -we aren -sten nis -she ath -ati sm -gron ingen -mlpfi m -le pre -wrong ly -rsp ca -rendez vous -acknowle dging -pel vic -solic itor -sla ys -nue stra -lo d -is lander -fer oci -fashion show -ra ss -dge on -adole scents -sma shes -negli gence -grate ful -ved ere -sw oop -ing l -apol ice -vand alism -gan n -jo ao -di supdates -zimbab we -under age -radi ance -w of -bour geo -pla s -cr ani -gh ue -wrec kem -warran ts -re form -jim mie -at wood -ys l -neil himself -l bj -i man -tan to -nois se -ver bs -equip o -al together -mam ent -l ice -dou glass -tier ney -pri med -j hal -furn itu -braz ili -v ill -past els -n ison -u ff -paral ysis -jay e -im po -ðŁij ģ -strate gically -pakistan is -was sup -super bike -thank u -tru elove -sha ikh -israel is -vi p -to g -li en -la ker -grey hounds -cul ars -bian chi -balot elli -ar ran -loo s -str ates -he bron -ar vo -sunder land -the al -tomb stone -sand man -c pac -thanks giving -love him -lat ino -an in -aka if -ĭ ãĤ -tor quay -di est -alli anz -ðŁĺ ķ -golf club -cl lr -wal cott -sch nau -promp ted -nomin ating -len nox -val et -mon ro -may ward -e ph -ðŁĶ Ķ -inter oper -r da -re flex -arm chair -ê° ķ -stri pper -por ti -ph arm -ham za -ni reland -ne ue -h pv -port foli -sun burn -fris bee -be al -bapti ste -x h -ty m -pr ati -o vers -haz rat -deser t -der ry -us ky -em mett -ach arya -)_/ ¯ -shu d -may a -ham ill -ra im -nr c -fitt ings -cur vy -ðŁı ĩ -ster ling -à¥ Ģ -wal kin -short cuts -mil ly -ast ur -alpha be -pl i -pe z -miss you -rad ford -ml g -ta eyang -notjust lakes -du mps -seren dip -le ur -ra ving -e ster -de priv -absc bn -ðŁijĩ ðŁı» -scar city -o cr -mean ings -cap t -da hl -fer mentation -bri oche -to win -out lander -massi mo -en cro -ðŁ¥ ³ -buil t -po tam -kir i -tm w -monit ored -k ites -peoples vote -gray son -íģ ¬ -afri ka -a dies -i vote -gy ne -g annon -di x -c mc -ou ral -fox andfriends -bel i -ig ne -gl an -katrin akaif -co politics -qual itative -p si -lu cci -disc oura -âĺ ® -kel li -gau tam -carac as -reale st -pu la -in us -hill top -make aw -atten borough -tw y -r arity -peck ham -ma hon -corn elius -clin icians -ton line -tb i -paradi se -ka si -inev it -fresh ness -colling wood -lun atic -defen se -cop d -in fra -wain wright -sains bury -alab am -te ma -lac o -chec ker -releg ated -tren t -stal ks -huff post -bhubanes war -ast ral -share your -prim rose -hi me -cat an -end ment -en dow -cle mens -mal oney -hil ary -game time -den ise -collabor ators -b wo -radic als -gue tta -ici on -au a -snap matic -sat chel -excav ation -base man -s ão -gn ation -fel d -surve y -shah zad -ma st -anirud hofficial -tru cker -ot ago -geo graph -ethe l -âļ¡ï¸ı âļ¡ï¸ı -s ver -mu tt -internetof things -ancho red -wh ouse -bang la -bal main -ç¹ ĭãģ -break fa -á Ģ -twi ster -te tris -ca v -stag s -g z -au b -stor med -hel ens -yar mouth -st asy -gustav o -co sc -vin son -up p -sc ricket -assump tions -app e -nu h -u er -pre mise -n aga -e amon -coron ary -na f -north side -el mer -ro tar -out lining -el f -re surg -kat elyn -in can -hyster ia -ce e -am bani -pro lly -Į ãĤĬãģ -ax es -san jose -rem brandt -mag pie -even ly -scor sese -qu aint -f g -b buk -indian football -weare all -spd wy -pis ces -ec g -âĺħâĺħâĺħâĺħ âĺħ -pre orders -: | -ni pple -sal azar -ju me -jail break -min n -bas sett -ze tta -jef free -ad jun -tic on -san diego -drink local -chol era -solic itors -o bo -com post -ni an -wr a -tre ach -ic ic -profession al -del ve -leg ate -histor ia -cro issant -con noisse -nam o -palli ative -chem trails -i ority -global warming -comic art -behavi oural -re sted -li as -cli mates -Ł ãģĦ -rut land -nou rish -menopau se -hot ties -demen ti -ve spa -mel ville -anal ogue -tz man -str ung -im perfect -gl are -cir cling -ros berg -rec o -oc ity -lo ire -em be -do ssier -ne el -nan do -me a -gal vani -fin esse -ag p -berke ley -asi m -âĺº âĺº -quil ted -ish ere -un matched -po tion -for z -at re -selfi es -juli ana -ðŁļ ¶ -âĸ º -mel ton -âłĢâłĢâłĢâłĢ âłĢâłĢâłĢâłĢ -spin rilla -pur cell -ed p -at leti -tony awards -ra ja -pro gno -mol ten -stu ff -p ally -nobel prize -âĻ» ï¸ı -spiritu al -spe ake -sa sha -bri um -tru ss -critici ze -assassinscre ed -yor uba -u lo -fire man -workin progress -ef cc -fla res -ro bot -hi kers -cl l -shado wing -pat sy -leh man -c ns -å ± -guad al -à± į -ra pe -r honda -paralle ls -son ja -langu age -land ings -z ola -cr amps -bur ning -apprais al -jol la -ham m -kas a -gul ly -f go -uly sses -ri be -ðŁĴ Ħ -ib u -eti enne -bri ar -fin ely -comb ating -y ql -go tham -we chat -to paz -primar ies -l se -iz z -hel e -dispon ible -cy stic -bel ichick -th rush -kansas city -ge om -soli di -red bubble -by stand -cambridge shire -par fait -ast le -ow o -ind ore -stom ping -sm elly -ðŁ¤ ĸ -locom o -adm itting -hol me -clock wise -min sk -mc co -for get -ev p -cam ra -ab ella -yo tes -universit yof -mé xico -silver ado -ric ket -crom bie -pu j -eradic ate -deli ght -y go -glam ping -vic a -du ggan -coun ters -cf d -sc our -react js -pu ram -paras ites -in ki -vill en -stel la -li mbo -ang as -k cr -ðŁĴļðŁĴļ ðŁĴļ -vap ori -mum ford -oli gar -à ¼ -al oo -boo ties -ad r -k elli -dru mmers -av ici -nature uk -ron al -in trac -un splash -le che -g oma -el ine -envir o -bi onic -bu eno -mi k -av in -star ling -em powers -cake day -boy cot -ðŁĴļ ðŁĴļ -ðŁĮ¸ ðŁĮ¸ -v ach -m ci -fractu res -ger i -sk ing -exclu ded -lu ce -ja ve -ig gy -evi den -aki stan -a wn -mor als -luci fer -ha ban -tumb ling -sunday motivation -mo sley -captain america -sch icago -the one -mo td -d ts -ðŁIJ ¼ -rep ell -ii i -locu st -geo spatial -mer sey -immer se -desc end -ber nade -j s -boat sales -win der -cran k -sing leton -candid acy -ben a -ðŁı» âĢį -high lander -ol t -k prs -healthy lifestyle -four teen -end the -ith aca -circul ated -r ans -pre valent -ha vas -splend or -roo ster -kalamaz oo -jewell ers -enne dy -rou sey -es y -cann ons -ornam ental -// // -ren don -win ne -mol ding -eid mubarak -coun tess -simon a -ha wa -fo es -du ster -sb u -por tray -mar ries -goo dday -cho co -achi ever -ðŁĺ¹ ðŁĺ¹ -pre neur -tr amp -tom i -n bat -garden chat -farra khan -ever glades -ab ru -sou sa -se ce -homes wee -terre strial -bar it -sri devi -ol u -mel inda -f rick -can dies -ðŁĺŃ ðŁĴķ -qu reshi -family fun -exor cist -cardin al -ny t -dies el -cu mulus -capric orn -si ology -lor na -dou gie -an die -super sport -c fl -п ÑĢи -say ang -pe ek -ภĬ -lo be -j em -ing lis -gg led -c sn -amne sty -chu ps -ba es -sau er -ðŁı IJ -mongo lian -en et -back street -dr illed -acce ssing -ce o -b se -ai ken -pur r -wor sen -whe res -war k -testi fying -bu ri -bla st -aw g -ðŁĵ ĭ -re defining -hear ing -u ci -c mp -bon i -tail oring -ta ji -noc chi -em t -stephen king -ne et -compla ins -campaig ner -luci ano -twili ght -ti esto -pas sports -flo yd -cathe dr -na ked -caregi ver -b coz -ade cides -ku ri -ly k -br aries -dren ched -disc lose -ðŁĴª ðŁı½ -le blanc -je tty -gar ty -chip mun -b su -rhyth mic -ic z -fri d -anne x -ame x -solo ist -lanc ers -arro whead -speci fication -simul ated -na is -inver te -bo wing -wor ship -f z -abo ss -sha q -ì¶ ķ -challeng ers -an arch -aamaadmi party -ãħĭãħĭ ãħĭ -suffol k -so corro -sn ell -cla dding -absor bing -shaw a -particip ates -ðŁį Ķ -book stores -bak u -seap ort -ko jima -gab y -pack ard -electr ician -let it -mo wing -fa wad -young jae -hot mail -men ing -u rie -intim acy -con ti -: ") -lifeis good -in ciner -i dri -craz iness -jour nos -fran chi -bott len -al da -ff es -k x -south we -air a -clay ton -sco ti -f j -bri ga -ð٤ĺ ðŁı» -demonstr ators -y z -stor k -na q -casc ades -travel chat -plat a -pad ma -fran ci -at tain -bat girl -lom bard -hoo s -d dos -neon atal -discla imer -r ss -r ant -di sen -tex aste -so cal -frac tal -cam ry -stri fe -sn acking -mu h -sant ander -mor ons -gra f -par ades -hu ston -dru pal -mi ento -kir stel -hy de -vom it -forti fied -sphin x -da v -bir yani -win nings -s baseball -mer ged -lovel ondon -ling ering -dream big -car leton -liveli hood -djan go -astri d -gri ds -down e -bru ised -s ne -scarec row -hel ium -f nc -bi ggs -an ter -restor ative -em pires -ab del -life style -kiwan is -colloqui um -me en -pr ick -anti que -ze b -mi mic -edmon ds -ðŁijĬ ðŁijĬ -q ing -pp el -mc gill -interpre ting -âŀ ķ -rash ad -do ka -narr ator -electro magnetic -ash by -sau ra -iran deal -âģ īï¸ı -krish nan -in di -ff en -bre a -os man -multin ational -chi ppe -recruit ers -aus biz -p ounding -re gen -cur sor -refu sal -mac s -in ak -ax ial -wa ifu -up cycled -hindu stan -cas sini -carly le -scrat ches -re ef -man atee -eat ery -ðŁĵ ¢ -un condition -sen pai -on ther -comic book -pro sciutto -de mar -mi se -ma ge -fre ec -aye sha -al der -android games -ley ton -ho ck -door way -chicagof ire -aali yah -sw elling -bi x -. ðŁĺĤ -evan kirstel -torpe do -kon stant -genevie ve -ma ia -ha user -do torg -hide ous -fi k -sp raw -e ek -z appa -wan dered -' ' -ra jan -bam bi -( $) -wid ening -tool box -sa ir -illumin ating -pra ys -out patient -i w -day o -lo b -sw fl -sha des -gu ms -coo kin -ko di -gri ffin -traum ati -ste a -slaugh tered -god bless -air time -pseu do -b sa -hau led -ar if -à¸Ńภĩ -le l -wc po -mil iti -char ters -worl da -ru k -k gs -digital india -is able -idyl lic -esp ino -marie tta -e bo -team canada -ab our -wil ton -rock stars -fav ored -phys ic -wrink le -tb r -d print -ball arat -ad al -z ey -ðŁĺį ðŁĶ¥ -tom lin -mt r -pal sy -fener bah -tight en -phil ia -ir oning -ry u -b ant -enqu ire -ca ir -abur ger -tru n -green berg -chau han -ir ina -sh ani -trend setter -pre tt -zaf ar -alo ve -v ici -pan ic -no o -lu stre -disrup ted -bal lis -son sof -mon si -inst ac -ake st -ëĭ ¤ -kw ame -horror movies -distric t -sau cy -mb an -ar mies -with drawn -med ics -loft us -er oom -be kind -ar ns -all on -un ison -davi ds -cr at -nicot ine -so or -sm x -on co -cospla ying -zombi es -har ms -e ger -ro sy -moon shine -fe in -ce tt -du brov -reg ents -ben itez -ðŁijıðŁı¼ ðŁijıðŁı¼ -ste c -m alia -prioriti ze -ic eland -ft se -v amo -lam ont -homo sexuality -bre es -regu i -cb p -te j -sky sports -deter gent -sha sta -de rel -conserv ancy -colori zed -accol ades -vis o -show your -nan ow -bice ps -us ability -bi m -dailys ketch -pearl jam -stran gest -mega deth -broad casts -bar ren -ar ton -chri ss -confi gu -lu res -is the -e ul -railway ana -global health -gi anni -u aap -s lum -consci ously -ab re -n up -bud get -v ada -e sch -real ness -er ased -th unt -be z -armist ice -ðŁij ¹ -sh run -o led -driver less -ðŁ¤· ðŁı»âĢįâĻĢï¸ı -won dr -sk an -sal aam -mother land -h wang -gen o -gang nam -tw right -endor sing -en ic -ador ation -pau sed -patric ks -do cked -plat te -ff xv -ethnic ity -auto show -side show -after life -re located -orphan ed -food network -dare to -and ra -sla ps -v live -swim s -re imagined -mist le -re vise -real ity -bhar ti -ðŁĴĻ ðŁĴĽ -late st -prou dest -gra sses -lan yard -fresh est -carcin oma -anom aly -zieg ler -sum ner -ly rix -gor g -is d -av el -swild life -me squ -john cena -euro league -sab er -master ful -yar ra -cogn ition -jacob son -abo lic -sir loin -shuk la -moj ito -su pere -st weet -me z -e sa -rudol f -gur a -where you -tt m -win s -trust worthy -ny k -bra den -table top -good food -es on -be k -lingui stic -gra ys -ch ath -h cs -mon i -de ans -cu ssions -ch ell -slo ws -he mi -d app -shar pie -boo sters -a os -str ack -se dona -mu eller -hard wick -or nate -thor a -sal ud -o twol -ch um -mi ho -for age -thel ittle -tear ful -ones elf -min dy -sm g -gmb h -emer ald -ðŁĶ´ âļªï¸ı -tu tti -recep tions -re vising -i brox -tope ka -sal ami -expan se -i books -dob son -cli o -at s -ðŁļ Į -mo ha -is ance -shu tters -moo t -jan ine -marvel comics -jor dani -pos er -kenne th -hy ung -de ja -ase ball -speci ality -eu ston -classic car -had ith -ðŁIJ ī -chas ing -iz o -gros ven -ag lia -thisdayin history -t row -om ile -hu ar -by n -sal ine -div ine -demon ic -ty ran -han dover -revit alization -pa ella -cryp tic -se dg -m end -dun kirk -bre d -wal d -sport scar -a ard -whe aton -da ener -k lan -br t -bakhta war -spi res -schu bert -ro ti -poli sh -o se -ag ame -wonder con -prote stant -bo sa -ðŁĺ Ł -d ü -joy ride -ger trude -âĿ Ŀ -gil a -v h -tw a -tra v -swal lowed -star ve -la in -ent ren -rei ki -su kh -cra ic -az u -web page -kee fe -hypo the -hir sch -hel le -camp ground -w amy -tra vi -sha hi -san deep -ru i -han uman -dw p -reposit ory -no or -no ff -un real -p ell -black history -har vick -ma scar -pay ee -pa sha -gastron omy -d ÃŃ -ai g -rosen thal -open day -embelli shed -t tip -sun bathing -go pack -end ome -ï¸ı # -invali d -final four -st fu -squish y -ra sta -mo sch -jam esc -die trich -sel a -mel b -el vi -t dp -sun i -sli t -j ha -bi za -spi ked -l li -l illard -vam pi -syno psis -az har -kendrick lamar -ĮãĤĬãģ ŁãģĦ -heart less -country file -air play -arrog ance -pre e -virtu oso -ãħłãħł ãħłãħł -raj u -le bu -for ward -tu g -dro s -mondaymotiv aton -concep cion -thel o -pad i -looo ol -ÑĢ Ð¾Ð´ -it ss -eth ical -end uro -__ : -expend iture -mon ste -mas king -terri ers -ib is -e mber -cu mple -punctu ation -pi per -ir vin -ade e -yy yyyy -flash backs -cel sius -don nie -bo gota -ben evol -the script -shil pa -pro se -fin dia -ze ke -ne ko -do ves -blues lyrix -fro sh -sowe to -mp lo -al ai -sab i -raq qa -wf tv -stro ller -ian somerhalder -ðŁĶ ª -an on -mo seley -! ?!? -sta king -mol y -car tri -c sg -ast or -transc end -ma er -de ux -cow girl -sas k -pun ter -ma ken -o ates -love tt -grow ler -sag in -v n -ssi ble -officeof rg -y mc -sab ar -faul ty -ap ha -ak on -ðŁij « -snow don -ae w -raise the -ðĿ ĵ -grue some -clement ine -sp ing -lat a -worlden viron -mi mic -can aria -bakhtawar bz -ao a -fal a -ãĤ Ń -avi va -you uuu -thi gh -la dders -gu mbo -tz ky -fu zz -plastic pollution -est ate -strength ened -k ant -dr in -cal vert -transform ational -frigh tened -mac lean -elited angerous -ear thy -t son -to da -j nu -.. , -mic hal -i ban -je ong -is real -sim coe -exclu sives -blue bells -ben e -te u -pil sner -pens ke -athe ists -m pu -cartag ena -ðŁĴĹ ðŁĴĹ -million aires -kk kk -it ar -subscri ptions -remo te -ma fi -hin ton -w cc -ho k -ds b -ab leton -sevent y -pun ks -e indhoven -sh one -mcfar lane -lim popo -empha si -à ¼ -sin fo -pe tre -man grove -ch ino -ber tie -play lists -push awards -p af -deb bie -c do -r ino -ðŁı¾ âĢįâĻĤï¸ı -fol ke -bon nar -th ine -sl an -hal ter -evi e -aw some -vul tures -spar ky -seiz ures -âľ Ķ -ram one -ine ffe -al n -pro ctor -ast ra -the voice -gro te -sci on -dead line -am aya -tain ted -patter ned -exce eding -cross fit -kay lee -drop box -ru shes -tack led -mo by -retro gamer -n cbd -benef itting -shay kh -guild hall -gen try -dream cast -dread ed -bun dled -th aw -revol ving -n pt -kylie jenner -imagin ative -ron i -over came -family time -ds burg -car naval -relation ship -recogni zable -cor oner -ho le -fan fic -emir ates -bur ritos -analy se -thin ner -ne es -galli poli -bl r -cat woman --- >> -au lt -ada ily -nau ghty -ili o -solit aire -mtv br -jocel yn -arun ach -rep ent -south gate -hy acin -essenti al -fent on -and um -it or -go pal -sl inger -po sei -aw il -wi elding -ra ila -eli as -a sto -à ¤ -tend ency -str ata -ker t -< - -im acele -da es -sti mulus -han ley -fit nes -ec stasy -lim ous -ha iling -ðŁ¤ Ń -chis wick -tar ies -sla v -pul i -moderni zation -black mail -b ingham -h fx -+ + -ðŁĩ®ðŁĩ ³ -ni v -we a -profess or -k off -bol ster -su ave -sequ ences -pepper oni -not te -dre n -ãģ¨ ç¹ĭãģ -hs v -o ga -ap tly -z ad -excel si -rin ka -mol dova -min n -ma bel -conferen cing -bas ing -of er -ob si -hamill himself -care less -brief ed -inhe rent -par ish -dub nation -town sville -sar awak -gee ky -doncaster isgreat -was abi -gu p -phen o -dra inthe -carrie underwood -ble eds -bbc world -ane w -alta f -dul wich -ani ston -w ti -sumat ra -gra fton -bl n -me ster -bode ga -re go -es q -an jo -sump tuous -mai sie -ï¿ ½ -wil t -jak ob -el vis -se pul -mu ster -air pollution -president e -happy monday -exten sively -fl ondon -t ls -play ing -pe ed -din ho -var dy -pi ka -n iro -au cus -ðŁį ¦ -nu ll -el ondon -juvent us -imag ines -dis ab -lit o -d ura -work places -promo te -mc caf -wood work -waw x -à® ª -tt ino -shar i -sem per -better together -ðŁijĬ ðŁı» -ze bra -pon dering -en chil -ho m -cosm ic -tan z -mo cked -ec cc -ath ed -abo lish -prop eller -paris agreement -assemb lies -indu stry -fraudul ent -pe sa -chang min -ax x -ðŁĴ µ -irr ational -cu sa -ramad han -octa via -on elove -jac ki -bar ak -taxi der -seri ous -nathan fillion -mc en -ch k -po part -grav ity -copp ola -reading fc -illu sions -j ig -ww x -re sh -ex porting -buzz ard -âĻ ¤ -p cm -lan apar -ko s -arom as -antal ya -ww dc -ven a -phil a -ball in -ðŁij Ħ -quin ta -ma o -f ery -eigh ty -sentim ents -safe guarding -r wa -pu ffs -luc ille -de cath -sl u -nu gent -de ter -braz il -ze iss -super bowl -subsi dy -alter n -hi dalgo -enz ymes -ä ½ -tag ne -hair dresser -adri en -walk out -oppo ses -can tina -bed side -af an -ðŁĶ Ĺ -prophe tic -dan es -un successful -super charged -pk k -exem ption -hart le -secu lar -cli pping -br s -united way -c net -pat chy -ha gan -e en -âļ ľ -var a -sym pathi -never trump -affir mation -om f -ny cfc -ma ja -sur ro -keer th -up scale -sandal wood -mon archy -kno bs -å ĭ -po tholes -hunger games -ter races -na sir -coun sell -welcome to -wa q -se aman -m ita -stun ningly -on theroad -in ability -) !! -bon go -ant v -sp ut -worldenviron mentday -resu sc -y td -fi m -eun hyuk -sa chin -rose anne -cler mont -ape c -am ina -v ening -n antes -al most -sin us -ex as -ty l -ti en -ple ad -lanc s -bur naby -re k -jo om -observ ers -disco graphy -cl g -âĻ ¦ -sn ack -r ti -o ily -crystal li -bru te -web development -topp ings -la f -an is -ad der -reli ving -car lin -battle of -we g -syri an -pon t -n dc -lagh ate -yu ma -sp p -p iti -ro bbing -mart ing -rey kja -raj put -nc ds -kie wicz -âĢ¢ âĢ¢ -vam pire -substan tially -opio ids -nepal i -k line -ar oo -under stand -lit t -u it -thro mbo -sar ies -qu ot -b alling -t tr -s gh -philip p -br ant -ac l -m ello -whit taker -. ; -defi ant -b gc -repl ying -mir ren -metamor pho -sch wab -bul ge -utili zed -pick ering -par don -d sa -à¸ Ī -doo ley -cumul ative -Ð » -ur gency -e mir -+ /- -¦ Ī -ot as -âı ³ -station ed -grape vine -ar ac -karan johar -f ancy -sau l -coo gs -lgbt q -ا٠ħ -jav i -u mmer -pl l -den is -dai pur -pu ffin -lewi sham -fand om -co pe -ves matter -s ve -hel pless -deo dor -ostr ich -kaz an -friday the -con dor -v x -sophom ores -rob les -cu tt -cli mbers -ë¦ ¬ -sle g -sn f -mac ys -hydr ating -grou pe -po yn -mou lin -hg tv -lmfa ooo -sulph ur -asdfghj kl -annab elle -hump back -bra ved -viswas am -multi purpose -hu midi -escor ted -barb ican -f ad -cor sa -ðŁ¤ « -pi ppa -here to -can y -ser gi -or cas -o vie -ed ou -s any -glob alization -man cini -food truck -f is -defi brill -sch re -sma fia -love wins -la ut -k aka -hol lande -game on -resurg ence -out side -olympi ad -int an -abstr action -rapi d -pal om -cal le -jas min -attack ers -swag g -mit ra -ky lo -à® ² -her mitage -gor do -e ira -so sfam -roll out -exc ite -sy nod -mer rill -c als -as sa -liveli hoods -ju ve -the black -gopack go -ant lers -alban ian -wool ly -qu iche -puri fication -are th -smar thome -ne k -all blacks -mex icans -is m -ger ms -comple xion -mar ck -u shi -ðŁIJ IJ -char l -ca stic -till erson -giuli ani -biode gradable -mal bec -bo is -ju bil -im es -r ame -gene tic -esp nu -ch ley -so ho -go pher -g sc -buu ren -cu be -bridesma ids -webin ars -to e -mani pur -viol ently -notic ias -ex changing -chi ev -replac eable -muay thai -bu ss -sp il -instal ment -div ya -cait lin -o lim -fil tering -whirl wind -sta red -prior it -pr am -pompe ii -mono logue -k ite -bu ka -â̦ .. -vac cine -bre ro -woz ni -sol ent -re ferr -my rt -gridi ron -galatasar ay -fro ze -clare mont -ðŁ¥ ĥ -victori as -ssel dorf -pa stures -net neutrality -ch or -ðŁij ģ -ಠ¿ -we ho -symp tom -jo sel -in ous -dragon con -power ball -p te -four thofjuly -ec la -ear buds -where abouts -salt life -depriv ation -ch ter -wi ggle -syste m -ps st -ch az -d any -ri mo -oax aca -lanapar rilla -barcel on -melanch oly -way back -ho tro -n si -l illy -kur o -ja han -intellec t -board game -ðŁı Ĭ -sneak peek -k prc -jail s -cand el -zan zi -mor timer -star ch -ra gs -p fa -long live -k art -gir ona -cro cker -christop h -precau tions -war ship -per m -paren t -van gogh -gif ford -allegh eny -ra yn -ut m -sten cil -rec alling -pen ney -z azzle -ìĥ Ŀ -hin ds -aren as -nu ev -law ler -gu in -do this -ðŁij ķ -ì¶ķ íķĺ -we g -ti b -ri din -complex es -turbul ent -pe sos -de marcus -vall arta -sam sun -kis ses -hein rich -deport es -wil ms -ur d -then ext -inki gayo -ho wi -fir sts -carri age -clean liness -mas war -is ch -ax el -si zzle -road house -fr ans -ent ourage -co bble -boo th -benedic t -tal on -fc u -year ofthe -ray on -raider nation -fo yle -ko val -pi anos -l pg -bur mese -man ure -geo caching -cosc ino -b np -fer ra -stro phy -mar ais -ce es -legen dof -kat niss -eno ch -av ed -you know -d prk -ðŁĺ¢ ðŁĺ¢ -sp un -pro st -sor rows -cent red -ke a -gal icia -? ðŁ¤Ķ -ÑĢод а -bou chard -ðŁĴĻ ðŁĴľ -yu i -seed lings -jon ah -reco vers -ny rd -board room -su ma -my japs -tun g -sha i -ir gc -eli o -wag ons -ka shi -polic emen -john nie -ale coscino -shop ify -dot ted -de tri -va w -to fficial -in your -chal mers -trac ed -no vi -by es -ari el -nipp on -la pel -gri ez -b gs -fool ing -d ita -vijay sethu -nm wx -as ot -kr anti -hel m -ve di -sic kest -mo chi -k abo -shru bs -he red -b sp -sq m -ham r -dul kar -anth a -nr f -avoid ance -at en -publi x -be arers -nas i -ha p -h ells -ðŁĸ ¥ -ภ· -thelast jedi -oh wx -ðŁį « -wa hoo -there se -rec aps -ss nhq -bird photography -v ay -pet ti -pau lo -bel vedere -( * -gr l -du vet -c pec -sa it -por sch -meas urable -avi ators -fre mantle -bre en -on om -me and -life saving -eu ref -en don -embar as -aira sia -el is -dun kin -star magic -s ill -porto bello -ki efer -ex e -mu ted -ãģ ¦ -we thepeople -logi a -liber al -theforce awakens -min ed -haun ts -freck les -care taker -s india -âķ IJ -dev lin -list on -direction er -oh n -fi garo -em manuel -du bois -cl ones -bru ise -ðŁİĪ ðŁİī -disin fe -der matology -as r -s watch -dis comfort -tam anna -pi day -mack en -k atic -delu sional -shaw nee -gu d -al bino -p ali -din gh -cucu mbers -coffe y -anticip ating -treas ured -web summit -shel tered -sav or -pedago gy -m gs -sh ma -s bu -den ali -cam pos -bubble gum -o ir -le aps -y ler -r one -sansk rit -min t -meat less -futuri st -du de -a vel -prote sted -squ ire -z aki -sz n -har court -cycl one -bour dain -gather ings -d ant -advent urer -parag on -alt man -dd ing -ban erjee -snorkel ing -mother well -mis sy -en der -glo ws -ki wis -chick pea -por o -e fron -app t -u y -speci fied -gab by -e strada -com bos -bour bon -vin i -var un -steph ani -key words -car vings -amit abh -wr ought -tw al -re els -clu bbing -ubi quit -cri t -ambed kar -æ Ļ -prun ing -vaccin ated -boe ing -s ks -lo ona -hypno sis -edel man -pho l -he w -colo sse -mckin sey -u on -to te -sacrific ing -ox i -n ang -e mu -пÑĢи ÑĢода -m th -kers wednesday -argu ed -timel apse -ris king -regul ating -ni gh -likeli hood -cu bic -au ction -rein for -pi stor -no ses -ye l -snu ggles -pe i -jean ette -ta ku -ri th -guy z -ภŀ -y te -ver ted -pay soff -jau regui -hoo ligans -procedu ral -mi b -har dy -el eng -chec kers -all ine -the met -prou dof -keerth yofficial -collabor ator -ni u -infl icted -adv ani -re twee -memor iam -f icial -ti ghter -sal em -re viewers -br ics -ben digo -am ell -tur kish -sush maswar -paul son -pal awan -mol lie -stitch er -s burgh -ir u -hay dn -en ers -aro a -u zzi -saraj evo -hel a -apol lo -nine ty -vac a -sp on -vent u -jel ena -hei fer -avo ids -sp ine -pri ze -mar ist -re creating -me de -woo den -find lay -ro fl -n di -compreh end -yu go -y ü -to work -u fos -son ar -pi ston -recor ding -tent ative -art forsale -pel lets -fre do -ÙĪ Ø± -mu ses -custom ization -pro found -is ner -ide ally -si am -plan kton -cm dr -man ger -fran ken -customiz able -ठ® -walk away -swi vel -vast ly -no ton -lex a -ex moor -z as -tan te -reduc tions -lol ly -hip sters -benef ited -ë ² -ww www -mascul ine -fi ji -dre y -ph ill -ane ous -nic ol -men dez -disapp ro -ch ner -through s -shen mue -east man -ðŁIJ İ -yu ck -under tale -re ys -go beavs -eng en -c na -mer r -bir k -ãģ¨ç¹ĭãģ ĮãĤĬãģŁãģĦ -âĥ£ @ -yn na -ste ed -offen der -at um -vani shing -presi denti -love them -g nocchi -fri ggin -per il -mad hya -ag ne -dee jay -mar nock -m tb -fold able -@ ___ -stand re -bron x -bow ski -fin ite -cro ckett -b sf -ge tit -seren awilliams -mir o -ignati us -sla y -rin se -fon due -sel dom -s more -gan i -dy ce -dmit ry -cru mb -late post -pri mark -oh ana -flor als -do a -remembrance day -d ds -azi one -toon ami -air port -æĿ ± -th ad -fi st -dine sh -dr who -ad words -admi rer -pro je -kyrgy z -à « -manife station -le wan -j ic -thi bau -le ased -van ity -nouri shed -never theless -aug mente -fu elled -che ad -wil shere -ru di -p z -my co -mor ro -herbali fe -hardro ck -de man -dre ality -sp ades -ce vic -bha i -bar on -ultimat efan -hou news -to bi -stru t -ke el -affili ation -the masters -sm al -hu e -este ban -con v -om nic -datab ases -co v -ter ti -st g -snoop dogg -metab ol -leth bridge -ðŁı» âĢįâĻĢï¸ı -year ling -residente vil -nws l -iy aki -griez mann -c ous -ðŁĵĿ : -tor ian -sam i -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ðŁĶ¥ -g are -alli ances -whit field -we ther -refin ing -coy i -kra ken -ðŁĺĺ âĿ¤ -singul arity -lil i -h ns -bol dand -waw rinka -misogy ny -lo vers -c q -b dg -ad ona -gar ter -women of -sc d -recogn ising -mun a -str ou -sign alling -lare do -hell boy -alek sand -un available -pedi atric -as in -mer ia -ri shi -futuri sm -w ye -polari zed -e we -pro pel -in forms -cre ase -~ " -arti ston -like for -heidel berg -er ra -life in -len ny -inter rupt -cohe rent -ca z -vick ers -le veled -f bs -cab ins -bu mmed -apost les -we h -ten don -souven irs -infu ri -pier ce -asse t -m las -go th -di ggin -ann as -yl or -th waite -sw el -pan era -mur derers -croo ked -bs go -ac u -a on -re an -one of -ko hl -bloo dh -pest icide -lost dog -fle xing -ëĤ ĺ -su pra -eter nally -ðŁļ Ļ -pa olo -ol an -mom o -is elle -captain marvel -s lou -mistak enly -akhi lesh -mer t -il inan -bu on -bal kan -mir ro -mill en -der ail -dam on -tit i -bi os -re don -pic ard -par te -ðŁ¤ Ł -Ø º -son ics -fir sth -dd c -veg ans -tur ban -ni gan -lot tie -lyn don -star buck -pink floyd -life styles -am ara -a she -r sc -val a -sm er -cw gc -cli ent -buen as -jag an -coo ps -ðŁijij ðŁijij -speci alizes -snag ged -g lar -ben net -wildlife wednesday -bow den -pi k -art in -empor ium -ar l -re ba -pas ser -disappo ints -additi ve -âľĬ ðŁı½ -bay er -missou la -ha skell -comm ences -ni x -ne man -explo ited -plastic surgery -cc d -aso cial -vo t -sie gel -fro ome -kap am -far a -e ha -pro bes -mw f -meet ing -p bb -ak ins -mistle toe -kingdom hearts -for kids -ec r -bal e -escor ts -adidas originals -k wa -k ts -hallo ffame -ðŁĺį . -wag s -pot ted -o wing -honey comb -he fty -uro logy -mer le -b pd -stri pping -re ich -k state -gu ay -yon ge -shak ti -g loom -bat t -son om -n ery -el ba -blan ks -hel le -triple ts -bom bay -ak arta -ab ia -transm itted -rol f -ja is -angular js -fi erc -m ss -trac e -ॠĩ -tom bs -old man -kom bucha -fo l -e health -cere als -are lli -in ari -ðŁĴ © -wo l -liber ties -fa wn -af firm -nun avut -hyster ical -k drama -art es -âĢ¢âĢ¢âĢ¢âĢ¢ âĢ¢âĢ¢âĢ¢âĢ¢ -valent in -man slaughter -gal es -eo in -energi zed -del s -with draws -st les -sar castic -ram esh -incredi bles -lock hart -ya wn -ultimatefan live -oooooooo oooooooo -mu en -guru dev -te er -pe eling -new snow -lingui stics -direc tv -ag end -uni lever -ru ger -han dedly -ero se -li mel -the c -royal ties -fini shers -nr g -m gt -fid get -com ps -bac on -aggre ssively -ab it -ch â -tar de -slu gger -q anda -gre ening -d ats -ensla ved -spec tor -o ye -fre ef -b hand -stop brexit -mis conceptions -cav a -ðŁĺįðŁĺįðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺįðŁĺį -multit asking -hou sel -ferre ira -cen time -ank les -jo dh -hel ly -fro me -out tuesday -nar nia -bal aji -l bloggers -jyo ti -ðŁį ĩ -lan cia -cap ri -y ap -nat ash -down fall -." âĢĶ -à ® -ligam ent -coat ings -ai ded -hi ko -fall ing -encryp ted -yeg food -infringe ment -cu di -ce p -ðŁĺį ðŁĺĤ -tra d -super rugby -ed win -wh iche -vi meo -lay ne -in vigor -he he -dubrov nik -bie ber -u tr -sham an -op ers -ham ill -en ig -di f -ar um -scrap book -min h -diver gence -mckin non -life time -guter res -wil le -ple as -patt y -mic ron -k z -dom aine -ru sher -m ds -ches ney -screw driver -âģ© , -sle dge -hau er -chan a -stam ina -sprink ler -pl n -he ff -bol ton -om on -car rington -accor dion -jor ge -inter ception -in puts -gu ll -tran scription -vanu atu -it ical -eth os -tic h -spac ey -pee king -u mi -ha ger -psycho tic -illi an -illi a -bonnar oo -an ese -pu c -laghate parth -en hall -econom ical -dre dge -% - -u we -tu bular -scoun cil -pe asants -fl er -tumb ler -he p -ford ham -row ley -initi als -ev asion -er nation -plu gins -coch ran -c attle -acid ity -ðŁİĬ ðŁİī -re grann -jump man -ef ace -x ma -patri archy -esco bar -cristi an -tip ton -nu eva -hack ney -back seat -kill arney -aid an -sta dion -simul taneous -ida ho -a je -u th -figu re -clo s -bur k -volun tar -rec ite -macfar lane -cur few -bou do -w gn -sti x -sla p -scrat ched -philli p -jour ne -ex pelled -wa z -u ke -tati ana -ou e -ho pp -dimit ri -ðŁĵ £ -mato logist -electri fying -blu ffs -bill smafia -az cardinals -y aa -x mas -shar a -r ith -g ills -dre s -bar ton -authori zation -imperi alism -home of -to do -foot path -band width -visit spain -moh sin -erup ted -mi ki -insig nia -mike l -ss h -ger a -bank holiday -aw an -t weak -star craft -e al -construc tion -skelet ons -le ep -ine m -bar clay -ship wreck -monsi eur -yo h -ron t -form ative -ser o -le p -horse man -hoo sier -haz mat -cylin ders -cen ti -ðŁĴ¥ðŁĴ¥ ðŁĴ¥ -re em -na ire -mus ically -gras shopper -est onian -termin ology -ro main -blogger rt -tox in -stan ce -cultiv ated -an ast -ðŁIJ į -shi mano -go pher -ene i -recycla ble -gam ification -fight for -c q -avoc ados -ke ys -eli ke -gly cer -shak ur -mobili zation -gal ley -expla in -ex changed -pe th -obe dience -illa ge -en nis -ãĥ ŀ -wi v -walla bies -ma ar -ig ers -fin tech -fin alized -wo j -meaning less -in field -onna ise -e et -bron te -pass ages -ðŁij § -strick land -northern lights -lom ond -h tc -wr ay -shi fter -di alog -ðŁį į ->> >>>> -te atime -ste ch -sic huan -qu ill -fran ca -comple mentary -bar rington -marcu s -mal am -goo oo -for sa -elec tra -af s -âĹ Ĩ -tri fe -sn azzy -fo lia -and olan -after dark -wood son -stra de -litt lest -o gun -con wy -co wards -ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ -íĬ ¸ -se ul -mur phy -dun ks -kapil shar -jo achim -wom ack -equal ity -aver ages -a ine -ðŁ¦ Ī -tac ular -dis ability -u ked -mid century -bar thol -teas ers -tab ern -nj caa -sp out -op i -ku bball -bl om -so ar -popu lism -meth yl -ðŁijĬ ðŁı¼ -o spre -alo ils -ðŁĵ ĸ -ðŁĮ ļ -x er -sp illing -publ ica -car dam -adi sh -sa cha -p kg -bu da -lyric ist -i bc -gru mp -ho ver -hal ep -anti body -anem one -âĻ¥âĻ¥ âĻ¥âĻ¥ -m cl -litho graph -cc u -s fest -path ic -calli ster -otta wa -gun sn -rut ger -hali but -en vision -differenti ate -ðŁļĢ ðŁļĢ -pir an -lat el -uc n -trou bad -ra ine -fierc ely -learn english -lea se -wex mondays -em it -dray ton -bur rell -scuba diving -hol ler -dr u -clo cked -w ral -ap ro -trans lucent -w bo -patri arch -mo ja -lan nister -fish ery -ne derland -mil dly -mi rai -ma ko -ja p -ðŁĺ©ðŁĺ© ðŁĺ© -pro statec -p anna -ar ama -under taking -tomp kins -ne op -soli ds -sav oury -e ames -cut lery -wood bridge -steam er -ri zzo -wild cat -rat na -lamin ated -kin eni -jal ap -ai des -acknowle dges -?! ?!?! -! ðŁİī -w afc -mag gio -ha ves -dar je -of i -gr il -v asi -bru x -mo hd -fake speare -arn old -r mb -for be -wal leye -ro di -therapeu tics -strate gi -ob ste -mu dder -download able -dd ings -d ca -asi angames -campe on -appropri ation -th century -ram atta -dra ped -bul lion -mu c -one x -se greg -ophel ia -bod ily -âĿ¤ ðŁĺį -wi zar -te ased -ade my -to id -sur a -lazar us -sn ickers -ma se -lo h -bow ed -bibli o -x change -har lan -gho shal -flavor ful -bha gat -alle z -whiche ver -ten stein -disc er -organ iser -mt g -dream liner -t se -hok kaido -mo k -indulg ent -hick man -blin ded -al yn -aaa ah -sp ool -lough borough -inter pret -et v -aristo tle -optimi zing -avici i -madu rai -ju li -naw az -mat chups -ab ide -paint ing -w elling -vel i -octag on -in scribed -po king -plac er -life cycle -kili g -g sp -eli ves -cle ments -na sheed -me sut -incarcer ated -dist illed -wal ang -delic acy -del gado -che z -ch ita -ad ero -tu x -pati l -o do -abh cosmetics -tv c -p bc -in accurate -hardwork paysoff -ball er -quot ation -merchandi sing -ga stri -defen ses -dro gba -bex hill -ban kno -win ona -si eg -p gs -hahah ha -agu chi -su bram -mirac le -de sch -li bre -ba cher -ent ine -bbcra di -lou dest -r ps -pi erc -fr yer -storm trooper -rafael nadal -pas co -exhau stion -epic onetsy -rc tid -kel lie -ga ines -d bz -sm riti -s bridge -lim ited -cla w -technic al -bio graphical -ado red -ภ° -exclu de -ac adia -key boards -fur man -so ca -sur u -ni ps -sw aps -server less -run e -pu ffy -north ampton -nish ings -hen der -cartri dges -gun shot -ðŁĵ ¹ -fil ament -respon dents -pey ton -mountaine er -mer ging -life span -intimid ation -p afc -nl wx -expan sive -pur r -f ck -ca e -at ti -tele thon -so hn -mend el -lo pes -dor i -un broken -te red -tast ings -in active -disin tegr -t assel -share the -pi ano -is lay -air space -z awa -ricci ardo -ming ton -fresh er -cur ry -re vs -pharo ah -h mv -exhilar ating -wh oo -lin kin -kri spy -competen cy -ste wards -ne bu -kat su -ad mins -baz ar -as ar -giving back -s summit -song z -lin us -raj kumar -farm ington -fanta sia -ðŁĺ´ ðŁĺ´ -so bri -lis se -barry more -pri sm -blo b -sen ew -mono xide -exp ire -eigh teen -di pper -xi ao -kil t -hin ch -bbc sport -bam boo -p ter -ex al -ðŁ¦ ĭ -ham lin -expe ditions -star gazing -food security -wy lie -ul f -st ingly -on storm -lo eb -bro ome -bn ha -pancre atic -eli ve -!!!!!!!! !!! -ther apper -ortho pedic -avengers endgame -antit rust -ìļ ° -go te -om d -off side -gy llen -win eries -white water -ad l -lu pita -exce eds -consi sted -chew bacca -ash leigh -nhl jets -is san -sh ld -hay at -cran berries -ð٤ĺ ðŁı½ -rock the -spring training -fall out -dairy free -wa j -un decided -so wn -rc n -north wales -htt r -fu mble -d its -comp elled -popu list -min ted -blan chett -. '' -pro pulsion -m illa -au berg -her tz -h ta -u daipur -serendip ity -azte cs -als ace -ðŁIJ ij -lu n -sho es -char li -gar za -ðŁĴ Ł -pro biotics -fox tv -ol is -mi ff -loc alized -diffu ser -si gue -fun ko -rend ous -ðŁĴ ij -jeky ll diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/special_tokens_map.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/special_tokens_map.json deleted file mode 100644 index ae0c5be..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/special_tokens_map.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "bos_token": { - "content": "<|startoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false - }, - "eos_token": { - "content": "<|endoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false - }, - "pad_token": "!", - "unk_token": { - "content": "<|endoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false - } -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/tokenizer_config.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/tokenizer_config.json deleted file mode 100644 index bd2abe1..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/tokenizer_config.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "add_prefix_space": false, - "added_tokens_decoder": { - "0": { - "content": "!", - "lstrip": false, - "normalized": false, - "rstrip": false, - "single_word": false, - "special": true - }, - "49406": { - "content": "<|startoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false, - "special": true - }, - "49407": { - "content": "<|endoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false, - "special": true - } - }, - "bos_token": "<|startoftext|>", - "clean_up_tokenization_spaces": true, - "do_lower_case": true, - "eos_token": "<|endoftext|>", - "errors": "replace", - "model_max_length": 77, - "pad_token": "!", - "tokenizer_class": "CLIPTokenizer", - "unk_token": "<|endoftext|>" -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/vocab.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/vocab.json deleted file mode 100644 index 469be27..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/tokenizer/vocab.json +++ /dev/null @@ -1,49410 +0,0 @@ -{ - "!": 0, - "!!": 1443, - "!!!": 11194, - "!!!!": 4003, - "!!!!!!!!": 11281, - "!!!!!!!!!!!!!!!!": 30146, - "!!!!!!!!!!!": 49339, - "!!!!!!!!!!": 35579, - "!!!!!!!!!": 28560, - "!!!!!!!!": 21622, - "!!!!!!!": 15203, - "!!!!!!": 9168, - "!!!!!": 5203, - "!!!!": 2360, - "!!!\"": 28048, - "!!!)": 42532, - "!!!": 995, - "!!\"": 20556, - "!!#": 34997, - "!!)": 28352, - "!!": 748, - "!!@": 40705, - "!\"": 2947, - "!\"@": 43819, - "!#": 9670, - "!'": 13222, - "!),": 37904, - "!).": 26225, - "!)": 4571, - "!*": 37737, - "!,": 29325, - "!-": 43499, - "!...": 22121, - "!..": 35475, - "!.": 22517, - "!:)": 31671, - "!:": 17545, - "!": 256, - "!?!": 29767, - "!?!?": 47081, - "!?": 6004, - "!@": 15117, - "!]": 34466, - "!â̦": 35068, - "!âĿ¤ï¸ı": 32559, - "!ðŁİī": 49085, - "!ðŁĺĬ": 43434, - "!ðŁĺį": 36438, - "\"": 1, - "\"!": 10377, - "\"\"": 41530, - "\"\"\"": 25539, - "\"\"": 8575, - "\"#": 8345, - "\"'": 31065, - "\"(": 32741, - "\")": 13112, - "\",": 4332, - "\"-": 9375, - "\"....": 37785, - "\"...": 9049, - "\"..": 25403, - "\".": 2811, - "\"/": 39486, - "\":": 7811, - "\";": 37549, - "\"": 257, - "\"?": 11727, - "\"@": 1512, - "\"@_": 20236, - "\"[": 36930, - "\"â̦": 33993, - "\"âĢĶ": 41151, - "#": 2, - "##": 15483, - "#...": 31491, - "#:": 30144, - "#": 258, - "#@": 35062, - "#â̦": 12834, - "#âĢİ": 34262, - "$": 3, - "$$": 24233, - "$$$": 31859, - "$$": 14929, - "$)": 39460, - "$.": 34682, - "$": 259, - "%": 4, - "%!": 35070, - "%),": 37819, - "%)": 16063, - "%,": 14505, - "%-": 48784, - "%.": 12475, - "%;": 33379, - "%": 260, - "&": 5, - "&&": 27791, - "&": 261, - "'": 6, - "'!": 13781, - "'\"": 19479, - "'#": 15319, - "''": 46594, - "''": 8445, - "')": 19175, - "',": 5662, - "'-": 26152, - "'...": 20474, - "'.": 4645, - "':": 7182, - "';": 44517, - "'": 262, - "'?": 17242, - "'@": 26397, - "'d": 1896, - "'ll": 1342, - "'m": 880, - "'re": 982, - "'s": 568, - "'t": 713, - "'ve": 1200, - "'â̦": 42120, - "(": 7, - "(!)": 30253, - "(\"": 18741, - "(#": 6229, - "($)": 46597, - "($": 15186, - "(&": 15042, - "('": 18235, - "((": 22944, - "(((": 33287, - "((": 13796, - "().": 41737, - "()": 8475, - "(*": 48004, - "(*": 39575, - "(+": 12903, - "(-": 20228, - "(...": 45159, - "(.": 43055, - "(:": 8528, - "(;": 23983, - "(": 263, - "(?)": 22885, - "(@": 2181, - "(£": 33987, - "(©": 44886, - "(ðŁĵ·:": 34610, - "(ðŁĵ·": 37999, - "(ðŁĵ¸:": 44422, - "(ðŁĵ¸": 45204, - ")": 8, - ")!!": 47518, - ")!": 7805, - ")\"": 13046, - ")#": 39981, - ")'": 23613, - ")(": 27956, - "))": 13720, - "))))": 42911, - "))))": 34181, - ")))": 18305, - "))": 5167, - "),": 2361, - ")-": 19034, - ")...": 15274, - ")..": 41822, - ").": 1818, - ")/": 26616, - "):": 4143, - ");": 19686, - ")": 264, - ")?": 18765, - ")@": 41928, - ")_/": 45028, - ")_/¯": 45781, - ")â̦": 41844, - "*": 9, - "*)": 30956, - "**": 9825, - "****": 21326, - "********": 42974, - "*****": 43571, - "****": 25167, - "***": 7829, - "**": 4441, - "*,": 41895, - "*-*": 23568, - "*.": 31304, - "*": 265, - "*_*": 44535, - "+": 10, - "+)": 34810, - "++": 47298, - "+++": 35986, - "++": 19056, - "+,": 35885, - "+.": 25238, - "+/-": 47614, - "+": 266, - ",": 11, - ",\"": 3823, - ",#": 11215, - ",&": 26905, - ",'": 10599, - ",)": 44493, - ",,": 21340, - ",,,,": 33225, - ",,,": 14811, - ",,": 8844, - ",-": 29821, - ",...": 20365, - ",.": 41277, - ",": 267, - ",@": 13975, - ",â̦": 14601, - "-": 12, - "-\"": 18646, - "-#": 10151, - "-$": 24946, - "-'": 28010, - "-(": 33345, - "-)": 3535, - "-*": 21527, - "--": 2154, - "----": 5753, - "--------": 11772, - "----------------": 23122, - "----": 30164, - "---->": 35999, - "---": 11079, - "--->": 14518, - "--": 2432, - "-->": 6422, - "-->>": 47252, - "-.-": 32765, - "-...": 43147, - "-.": 44040, - "-": 268, - "->": 5081, - "-@": 10087, - "-_-": 27227, - "-__": 42718, - "-â̦": 30047, - ".": 13, - ".!!": 37805, - ".!": 14030, - ".\"": 18650, - ".\"-": 21234, - ".\"": 1081, - ".\"âĢĶ": 48703, - ".#": 5014, - ".'\"": 41558, - ".''": 49379, - ".'": 5938, - ".(": 22294, - ".)": 5376, - ".*": 26145, - ".,": 5276, - ".-": 12481, - "..": 608, - "..!!": 23707, - "..!": 17994, - "..\"": 15229, - "..#": 15735, - "..,": 47143, - "...": 3002, - "...!!!": 38351, - "...!!": 39915, - "...!": 16860, - "...\"": 5240, - "...#": 8195, - "...&": 44979, - "...'": 23167, - "...(": 37981, - "...)": 14040, - "...,": 42717, - "....": 2386, - "....\"": 26689, - "....#": 20346, - ".....": 34151, - ".....#": 38867, - "........": 8246, - "................": 24855, - "............": 42965, - "...........": 35008, - "..........": 25526, - ".........": 19881, - "........": 14720, - ".......": 9917, - "......": 5590, - ".....": 3104, - "....": 1390, - "....@": 29790, - "...:": 34570, - "...": 678, - "...?": 16388, - "...@": 12672, - "..": 852, - "..?": 23875, - "..@": 21124, - "./": 31975, - ".:": 15811, - ".;": 47596, - ".": 269, - ".<": 29442, - ".?": 29294, - ".@": 1230, - ".]": 33511, - ".~": 42651, - ".â̦": 18047, - ".âĿ¤ï¸ı": 39085, - ".âłĢ": 30097, - ".ðŁĺĤ": 46580, - "/": 14, - "/#": 13217, - "/$": 36266, - "/-": 19811, - "/.": 39382, - "//": 15348, - "////": 46271, - "///": 22734, - "//": 3502, - "/": 270, - "/@": 8216, - "0": 15, - "0": 271, - "1": 16, - "1": 272, - "2": 17, - "2": 273, - "3": 18, - "3": 274, - "4": 19, - "4": 275, - "5": 20, - "5": 276, - "6": 21, - "6": 277, - "7": 22, - "7": 278, - "8": 23, - "8": 279, - "9": 24, - "9": 280, - ":": 25, - ":\"": 29498, - ":\")": 46432, - ":\"": 12089, - ":#": 26625, - ":$": 33769, - ":'": 8017, - ":'(": 21250, - ":')": 10701, - ":'": 23851, - ":((": 42496, - ":(": 5965, - ":)": 11070, - ":))))": 42339, - ":)))": 21840, - ":))": 10164, - ":).": 39010, - ":)": 1408, - ":*": 12617, - ":-": 13021, - ":-(": 25137, - ":-)": 4223, - ":-": 10323, - ":...": 42140, - "://": 12441, - ":/": 13604, - "::": 33077, - ":::": 43818, - "::": 9788, - ":": 281, - ":>": 39677, - ":@": 14339, - ":]": 43486, - ":|": 45986, - ":â̦": 22365, - ";": 26, - ";))": 41873, - ";)": 3661, - ";-": 35657, - ";-)": 10475, - ";;": 34824, - ";;": 24492, - ";": 282, - "<": 27, - "<-": 47280, - "": 34308, - "<<": 24588, - "<": 283, - "<<": 16482, - "<<<": 35054, - "<|endoftext|>": 49407, - "<|startoftext|>": 49406, - "=": 28, - "=))": 39587, - "=)": 17840, - "=": 284, - "==": 11748, - "====": 21734, - "========": 38952, - "==>": 29688, - "=>": 9714, - ">": 29, - ">.<": 38507, - ">:": 36196, - ">": 285, - "><": 28015, - ">>": 8270, - ">>": 2988, - ">>>": 6395, - ">>>>": 18461, - ">>>>": 18435, - ">>>>>": 32972, - ">>>>>>": 48947, - ">>>>>>>>": 41947, - ">_": 44144, - "?": 30, - "?!": 9785, - "?!!": 25342, - "?!\"": 29315, - "?!": 2835, - "?!?!": 16349, - "?!?!?!": 49084, - "?!?!?": 37619, - "?!?": 11395, - "?\"": 3283, - "?#": 24018, - "?'": 13610, - "?)": 9626, - "?,": 41628, - "?...": 22641, - "?..": 43905, - "?.": 41251, - "?:": 21067, - "?": 286, - "??": 5195, - "??!!": 43219, - "??!": 37341, - "??\"": 44996, - "??": 2197, - "???": 40017, - "???": 3824, - "????": 15936, - "????": 10362, - "?????": 21370, - "??????": 34589, - "????????": 45091, - "?@": 29258, - "?ð٤Ķ": 47928, - "@": 31, - "@#": 39397, - "@.": 43730, - "@/": 28639, - "@": 287, - "@@": 30314, - "@_": 2692, - "@__": 17042, - "@___": 48308, - "A": 32, - "A": 288, - "B": 33, - "B": 289, - "C": 34, - "C": 290, - "D": 35, - "D": 291, - "E": 36, - "E": 292, - "F": 37, - "F": 293, - "G": 38, - "G": 294, - "H": 39, - "H": 295, - "I": 40, - "I": 296, - "J": 41, - "J": 297, - "K": 42, - "K": 298, - "L": 43, - "L": 299, - "M": 44, - "M": 300, - "N": 45, - "N": 301, - "O": 46, - "O": 302, - "P": 47, - "P": 303, - "Q": 48, - "Q": 304, - "R": 49, - "R": 305, - "S": 50, - "S": 306, - "T": 51, - "T": 307, - "U": 52, - "U": 308, - "V": 53, - "V": 309, - "W": 54, - "W": 310, - "X": 55, - "X": 311, - "Y": 56, - "Y": 312, - "Z": 57, - "Z": 313, - "[": 58, - "[#": 11115, - "[...": 39975, - "[...]": 43790, - "[": 314, - "[@": 15148, - "[]": 22240, - "\\": 59, - "\\'": 41239, - "\\": 315, - "]": 60, - "]\"": 39434, - "],": 34067, - "].": 26262, - "]:": 21641, - "]": 316, - "][#": 39009, - "][": 29329, - "^": 61, - "^)": 30720, - "^-": 43516, - "^.": 31552, - "^.^": 35791, - "^": 317, - "^^": 34454, - "^^": 9064, - "^_": 14423, - "^_^": 15995, - "_": 62, - "_'": 44701, - "_(": 36951, - "_)": 37393, - "_*": 36237, - "_,": 31417, - "_-": 23193, - "_.": 26841, - "_/": 37647, - "_:": 13109, - "_": 318, - "__": 2355, - "__:": 47043, - "__": 3838, - "___": 43812, - "___": 13530, - "____": 4727, - "____": 25350, - "_____": 38803, - "________": 9549, - "________________": 20115, - "`": 63, - "`": 319, - "a": 64, - "a": 320, - "aa": 1821, - "aa": 3894, - "aaa": 14376, - "aaa": 9583, - "aaaa": 6727, - "aaaa": 19336, - "aaaaa": 31095, - "aaaaaa": 44413, - "aaaaaaaa": 23126, - "aaaah": 49151, - "aaah": 35856, - "aaay": 37846, - "aab": 34108, - "aac": 23251, - "aac": 11346, - "aad": 20464, - "aad": 35894, - "aaf": 37638, - "aaf": 31534, - "aag": 42174, - "aah": 28990, - "aaj": 28727, - "aaj": 43411, - "aak": 37739, - "aal": 22268, - "aal": 30208, - "aali": 27896, - "aaliyah": 46577, - "aam": 12943, - "aam": 22775, - "aama": 45018, - "aamaadmi": 45563, - "aamaadmiparty": 46406, - "aamir": 27456, - "aan": 20705, - "aan": 13426, - "aand": 38054, - "aap": 12023, - "aap": 12052, - "aapl": 34516, - "aar": 4695, - "aar": 13234, - "aard": 46932, - "aaron": 13948, - "aaron": 7709, - "aas": 28542, - "aas": 32205, - "aat": 34018, - "aat": 35004, - "aau": 35426, - "aay": 38281, - "aay": 40249, - "aaz": 26770, - "ab": 596, - "ab": 3937, - "aba": 44204, - "aba": 11102, - "abad": 33444, - "abad": 7155, - "aban": 41662, - "aband": 8595, - "abandon": 28805, - "abandoned": 11227, - "abar": 17860, - "abar": 39805, - "abas": 25402, - "abay": 43542, - "abb": 38954, - "abb": 38297, - "abba": 30870, - "abbas": 37494, - "abbas": 24412, - "abbey": 31927, - "abbey": 10132, - "abbie": 39949, - "abbo": 13536, - "abbot": 44046, - "abbott": 43737, - "abbott": 15649, - "abbrevi": 44843, - "abby": 30586, - "abby": 14694, - "abc": 13137, - "abc": 5334, - "abcnews": 31566, - "abd": 44093, - "abdel": 46511, - "abdomin": 35335, - "abdominal": 39328, - "abdu": 13361, - "abduc": 17884, - "abducted": 31520, - "abduction": 36984, - "abdul": 14227, - "abdul": 15593, - "abdullah": 21317, - "abe": 15856, - "abe": 12734, - "abee": 36037, - "abel": 31938, - "abel": 25318, - "abella": 46156, - "aben": 40865, - "aber": 7828, - "aber": 41867, - "aberdeen": 30539, - "aberdeen": 17236, - "abh": 27484, - "abh": 33649, - "abhcosmetics": 49189, - "abhi": 18113, - "abhin": 44045, - "abhishek": 44502, - "abi": 16867, - "abi": 14161, - "abia": 48604, - "abide": 49163, - "abig": 20863, - "abigail": 25686, - "abil": 21135, - "abilities": 8724, - "ability": 35146, - "ability": 3024, - "abit": 48668, - "ablanc": 33716, - "able": 10102, - "able": 863, - "abled": 10655, - "ableg": 24055, - "ables": 8486, - "ableton": 47169, - "ably": 6748, - "abnormal": 40934, - "abo": 2889, - "abo": 21861, - "aboard": 11661, - "abol": 31768, - "abolic": 46827, - "abolish": 47403, - "aboo": 42433, - "abor": 8416, - "aboriginal": 20422, - "abortion": 12336, - "abortions": 43218, - "aboss": 46401, - "abou": 36455, - "abou": 44053, - "abound": 41037, - "abour": 46637, - "about": 20204, - "about": 781, - "abouts": 36339, - "above": 35019, - "above": 4348, - "aboy": 37077, - "abpoli": 44779, - "abq": 38767, - "abr": 44932, - "abra": 10694, - "abra": 35087, - "abraham": 40623, - "abraham": 15869, - "abram": 33255, - "abrams": 29852, - "abre": 22472, - "abre": 46756, - "abri": 28605, - "abridged": 45333, - "abroad": 11253, - "abru": 46295, - "abs": 18431, - "abs": 11109, - "absc": 25389, - "abscbn": 44260, - "abscbn": 45810, - "absen": 32453, - "absence": 19240, - "absent": 30363, - "absol": 4624, - "absolu": 7055, - "absolut": 4666, - "absolute": 7501, - "absolutely": 4703, - "absor": 14303, - "absorb": 35806, - "absorbed": 45059, - "absorbing": 46412, - "absorption": 42210, - "abstr": 7530, - "abstract": 23885, - "abstract": 10197, - "abstractart": 31170, - "abstraction": 47696, - "abstracts": 40065, - "absur": 21639, - "absurd": 29757, - "abt": 9850, - "abu": 9167, - "abu": 11787, - "abud": 20180, - "abudha": 21450, - "abudhabi": 25256, - "abuja": 23371, - "abun": 20544, - "abundance": 23236, - "abundant": 31611, - "abur": 23377, - "aburger": 46660, - "abuse": 7678, - "abused": 23855, - "abuses": 37132, - "abusing": 36558, - "abusive": 26858, - "abv": 34172, - "aby": 16342, - "aby": 31378, - "abyss": 33632, - "abz": 42292, - "ac": 546, - "ac": 2816, - "aca": 9213, - "acab": 41388, - "acacia": 44047, - "acad": 32537, - "acade": 2892, - "academia": 22662, - "academic": 31178, - "academic": 7935, - "academics": 26417, - "academies": 42569, - "academy": 29968, - "academy": 4041, - "acadi": 41455, - "acadia": 49236, - "acam": 26172, - "acan": 42227, - "acan": 26318, - "acap": 32357, - "acar": 22232, - "acare": 16961, - "acc": 26805, - "acc": 9318, - "acca": 30883, - "acce": 8564, - "acceler": 10161, - "accelerate": 23619, - "accelerated": 38513, - "accelerating": 41821, - "acceleration": 39387, - "accelerator": 25261, - "accent": 28110, - "accent": 18931, - "accents": 31738, - "accenture": 41853, - "accep": 4616, - "accept": 16447, - "accept": 9338, - "acceptable": 14209, - "acceptance": 17090, - "accepted": 9159, - "accepting": 12855, - "accepts": 22338, - "access": 7596, - "access": 3822, - "accessi": 10787, - "accessibility": 23407, - "accessible": 13977, - "accessing": 46339, - "accessories": 10220, - "accessory": 20417, - "acci": 4263, - "acci": 33943, - "accident": 6608, - "accidental": 24895, - "accidentally": 11061, - "accidents": 22072, - "acclaimed": 21172, - "acco": 44730, - "accol": 33858, - "accolades": 46731, - "accom": 23658, - "accommo": 34495, - "accommod": 14386, - "accommodate": 34708, - "accommodation": 18066, - "accommodations": 45536, - "accomp": 24985, - "accompan": 14746, - "accompanied": 20715, - "accompany": 34142, - "accompanying": 38179, - "accompli": 10205, - "accomplish": 25542, - "accomplished": 16462, - "accomplishment": 26100, - "accomplishments": 24965, - "accor": 4182, - "accord": 34293, - "accord": 28513, - "according": 4717, - "accordingly": 35535, - "accordion": 48760, - "accoun": 3081, - "account": 18424, - "account": 4684, - "accountability": 19377, - "accountable": 24216, - "accountant": 31026, - "accountants": 37222, - "accounted": 43951, - "accounting": 14805, - "accounts": 9974, - "accra": 31900, - "accred": 17451, - "accreditation": 27015, - "accredited": 27647, - "acct": 45569, - "accu": 5618, - "accumul": 19275, - "accumulation": 37112, - "accur": 6551, - "accuracy": 18423, - "accurate": 8858, - "accurately": 24206, - "accusations": 33615, - "accuse": 39414, - "accused": 9434, - "accuses": 27496, - "accusing": 41474, - "acdc": 45067, - "ace": 2675, - "ace": 804, - "acea": 35219, - "aceae": 38153, - "acele": 40868, - "aceous": 33610, - "acer": 37990, - "acer": 25809, - "aces": 5725, - "acet": 28735, - "acf": 38389, - "ach": 972, - "ach": 987, - "acha": 22686, - "acharya": 45780, - "achat": 32706, - "ache": 27771, - "ache": 7214, - "ached": 17048, - "acher": 38442, - "acher": 17936, - "achers": 25051, - "aches": 14823, - "achi": 3264, - "achi": 9087, - "achiev": 8160, - "achieve": 14798, - "achieve": 8175, - "achieved": 12359, - "achievement": 8245, - "achievements": 16114, - "achiever": 46286, - "achievers": 44544, - "achieves": 40123, - "achieving": 16120, - "achilles": 33327, - "achim": 42335, - "aching": 12864, - "acho": 33130, - "achs": 41195, - "aci": 4359, - "aci": 34100, - "acia": 30163, - "acial": 32422, - "acid": 35474, - "acid": 10085, - "acidity": 48800, - "acids": 27751, - "acies": 20162, - "acin": 39442, - "acing": 9442, - "acio": 26202, - "acion": 44965, - "acion": 24968, - "acional": 26435, - "aciones": 35832, - "acious": 16020, - "acity": 7511, - "ación": 38175, - "ack": 877, - "ack": 725, - "acked": 5698, - "acker": 31201, - "acker": 7940, - "ackeray": 41843, - "acki": 42857, - "acking": 5515, - "ackles": 28503, - "acknow": 13563, - "acknowle": 18100, - "acknowledge": 25209, - "acknowledged": 35913, - "acknowledges": 49083, - "acknowledging": 45645, - "acks": 3858, - "acl": 47593, - "acl": 23073, - "acle": 6504, - "acles": 34164, - "aclu": 37354, - "acm": 39317, - "acmilan": 36500, - "acne": 24195, - "aco": 9463, - "aco": 8800, - "acol": 17431, - "acollege": 43468, - "acom": 17224, - "acom": 22342, - "acon": 11621, - "acon": 11571, - "aconf": 38851, - "acons": 31599, - "acor": 22076, - "acorn": 37537, - "acos": 39943, - "acosta": 31994, - "acou": 8794, - "acoun": 31295, - "acounty": 45449, - "acoustic": 10616, - "acoustics": 43873, - "acp": 19627, - "acqu": 7946, - "acquainted": 40713, - "acqui": 12194, - "acquire": 21576, - "acquired": 15932, - "acquires": 27376, - "acquiring": 42785, - "acquis": 14207, - "acquisition": 16543, - "acquisitions": 39649, - "acr": 43648, - "acre": 26749, - "acre": 9493, - "acres": 11630, - "acro": 21060, - "acrob": 40891, - "acron": 37770, - "across": 2500, - "acrosse": 40979, - "acruz": 40455, - "acry": 10440, - "acrylic": 12252, - "acs": 11782, - "act": 10305, - "act": 1393, - "acted": 10971, - "acti": 4786, - "acting": 6319, - "action": 12493, - "action": 1816, - "actions": 6271, - "activ": 3430, - "activate": 26737, - "activated": 22249, - "activation": 26769, - "active": 19009, - "active": 4046, - "actively": 18645, - "activi": 7230, - "activism": 20117, - "activist": 10850, - "activists": 12649, - "activities": 6514, - "activity": 6206, - "actment": 44807, - "acton": 36167, - "acton": 36697, - "actonclimate": 43797, - "actor": 12181, - "actor": 4035, - "actors": 9255, - "actorslife": 25117, - "actorvijay": 34033, - "actress": 5805, - "actresses": 33639, - "acts": 6816, - "actu": 2375, - "actual": 7488, - "actually": 2955, - "acu": 9204, - "acu": 48475, - "aculture": 38145, - "acup": 30869, - "acup": 27278, - "acupuncture": 40043, - "acur": 44719, - "acura": 30120, - "acus": 33710, - "acute": 19734, - "acy": 18717, - "acy": 2356, - "ad": 594, - "ad": 680, - "ada": 25785, - "ada": 1886, - "adaily": 47254, - "adal": 46646, - "adam": 6037, - "adam": 4944, - "adamlambert": 27659, - "adams": 7942, - "adan": 41802, - "adani": 37499, - "adap": 6341, - "adapt": 22666, - "adaptation": 16566, - "adapted": 26657, - "adapter": 21839, - "adapting": 44120, - "adaptive": 28672, - "adar": 27702, - "adar": 32681, - "adas": 23250, - "adata": 39500, - "aday": 31367, - "aday": 10280, - "adays": 24337, - "adb": 45630, - "adc": 38201, - "add": 19408, - "add": 3536, - "addams": 38912, - "added": 4149, - "adder": 47557, - "addi": 36378, - "addic": 5709, - "addict": 14614, - "addicted": 16275, - "addiction": 11751, - "addictive": 29638, - "addicts": 29997, - "adding": 8676, - "addis": 43911, - "addison": 32369, - "additi": 26927, - "addition": 6698, - "additional": 10666, - "additions": 22575, - "additive": 48546, - "addo": 40001, - "address": 5834, - "addressed": 20817, - "addresses": 12702, - "addressing": 10594, - "adds": 9944, - "addy": 24746, - "ade": 2194, - "ade": 1928, - "adecides": 46374, - "aded": 9994, - "adee": 47054, - "adel": 4434, - "adel": 27308, - "adelaide": 38193, - "adelaide": 11611, - "adele": 42843, - "adele": 21220, - "adelrey": 43627, - "ademy": 49123, - "aden": 28669, - "aden": 28688, - "adena": 23648, - "adequ": 18232, - "adequate": 22281, - "ader": 21365, - "adero": 49185, - "aders": 27672, - "ades": 5793, - "adh": 42301, - "adhd": 32649, - "adhe": 21175, - "adhesive": 38429, - "adi": 2486, - "adi": 8779, - "adia": 26874, - "adic": 36780, - "adid": 8086, - "adidas": 22396, - "adidas": 9589, - "adidasoriginals": 48575, - "adies": 45834, - "adifference": 37217, - "adilla": 41167, - "ading": 15000, - "adio": 15060, - "adirond": 36843, - "adish": 49009, - "adity": 28596, - "aditya": 37186, - "adityanath": 44437, - "adjac": 32517, - "adjacent": 33836, - "adjec": 45512, - "adju": 16413, - "adjun": 45995, - "adjust": 13784, - "adjust": 28073, - "adjustable": 20476, - "adjusted": 30515, - "adjusting": 41132, - "adjustment": 36081, - "adjustments": 36331, - "adl": 49351, - "adler": 30222, - "adm": 9892, - "adm": 33604, - "admi": 11666, - "admin": 12528, - "admini": 6434, - "administr": 12174, - "administration": 9502, - "administrative": 22424, - "administrator": 22603, - "administrators": 36123, - "admins": 49297, - "admir": 17031, - "admiral": 21013, - "admiration": 39569, - "admire": 17791, - "admired": 36103, - "admirer": 48344, - "admiring": 29835, - "admission": 11315, - "admissions": 22463, - "admit": 13769, - "admits": 16332, - "admitted": 20427, - "admitting": 46148, - "adn": 40339, - "adnan": 42037, - "ado": 4775, - "ado": 2933, - "adobe": 29256, - "adobe": 16484, - "adog": 44913, - "adol": 33512, - "adole": 22704, - "adolescent": 36793, - "adolescents": 45656, - "adolf": 41179, - "adon": 25907, - "adona": 48419, - "adop": 4183, - "adopt": 16441, - "adopt": 11159, - "adoptable": 36905, - "adoptdont": 19674, - "adoptdontshop": 20089, - "adopted": 12538, - "adopting": 30158, - "adoption": 11544, - "adopts": 40853, - "ador": 4992, - "ador": 9162, - "adora": 40031, - "adorable": 6298, - "adoration": 46781, - "adore": 15502, - "adored": 49233, - "adores": 30290, - "adorned": 44953, - "ados": 20079, - "adox": 32188, - "adp": 44426, - "adr": 46189, - "adren": 24204, - "adrenaline": 35552, - "adri": 5935, - "adrian": 25012, - "adrian": 13163, - "adriana": 41363, - "adrid": 26562, - "adrien": 47469, - "adrienne": 40081, - "ads": 2485, - "adu": 16882, - "adu": 24446, - "adukone": 30511, - "adul": 7222, - "adult": 42209, - "adult": 7115, - "adulthood": 40964, - "adults": 9391, - "adv": 1647, - "adv": 21018, - "advan": 33411, - "advance": 27291, - "advance": 7022, - "advanced": 7465, - "advancement": 35437, - "advances": 15852, - "advancing": 21355, - "advani": 48189, - "advant": 7017, - "advantage": 8573, - "advantaged": 38361, - "advantages": 23506, - "adven": 41670, - "advent": 3071, - "advent": 15199, - "adventcalendar": 43492, - "adventur": 29627, - "adventure": 17251, - "adventure": 4377, - "adventurer": 48098, - "adventures": 7941, - "adventurous": 31179, - "adver": 4806, - "adverse": 30348, - "adversity": 32516, - "advert": 19080, - "adverti": 5682, - "advertise": 31473, - "advertised": 38987, - "advertisement": 18713, - "advertiser": 41829, - "advertisers": 45472, - "advertising": 8158, - "adverts": 44306, - "advice": 4973, - "advis": 4634, - "advise": 25962, - "advised": 23196, - "adviser": 20367, - "advisers": 40984, - "advises": 42761, - "advising": 39648, - "advisor": 12380, - "advisors": 23197, - "advisory": 10224, - "advoc": 6657, - "advocacy": 14443, - "advocate": 12044, - "advocates": 17757, - "adwords": 48343, - "ady": 41446, - "ady": 8781, - "ae": 5548, - "ae": 4542, - "aea": 37048, - "aed": 26912, - "aege": 42304, - "ael": 41533, - "ael": 43340, - "aen": 43085, - "aer": 10195, - "aeri": 27685, - "aerial": 44866, - "aerial": 12440, - "aero": 10196, - "aero": 25026, - "aerob": 42824, - "aeron": 37286, - "aeronau": 42816, - "aerop": 27735, - "aerosmith": 43253, - "aerospace": 20530, - "aes": 10617, - "aes": 35677, - "aest": 40694, - "aesthe": 21181, - "aesthetic": 16179, - "aesthetics": 29295, - "aew": 47108, - "af": 702, - "af": 4391, - "afa": 24953, - "afan": 47474, - "afar": 41637, - "afar": 37866, - "afb": 27022, - "afc": 29742, - "afc": 6571, - "afcb": 44276, - "afcon": 30019, - "afd": 44626, - "afe": 30487, - "afe": 13912, - "afer": 44707, - "aff": 8849, - "aff": 14864, - "affair": 13998, - "affairs": 9830, - "affe": 4556, - "affect": 11361, - "affected": 9715, - "affecting": 18448, - "affection": 33780, - "affection": 28381, - "affectionate": 42578, - "affects": 17285, - "affili": 12120, - "affiliate": 18652, - "affiliated": 37540, - "affiliation": 48377, - "affinity": 41451, - "affir": 25343, - "affirm": 42711, - "affirm": 48625, - "affirmation": 47495, - "affl": 34036, - "affleck": 35584, - "afford": 7951, - "afford": 13223, - "affordability": 44828, - "affordable": 43944, - "affordable": 8926, - "afg": 33994, - "afgh": 9029, - "afghan": 15919, - "afghanistan": 9836, - "afi": 24074, - "afi": 31958, - "afil": 27209, - "afire": 42010, - "afirst": 38601, - "afl": 15132, - "afl": 14356, - "aflo": 41959, - "afm": 38385, - "afootball": 41694, - "afor": 43102, - "afore": 41468, - "afp": 18311, - "afraid": 9474, - "afri": 13888, - "afric": 2136, - "africa": 3093, - "african": 17471, - "african": 4736, - "africans": 26534, - "afridi": 37651, - "afrika": 45833, - "afrin": 45586, - "afro": 16267, - "afro": 21795, - "afs": 48960, - "aft": 22693, - "after": 2278, - "after": 953, - "afterdark": 48966, - "afterlife": 46790, - "aftermath": 20958, - "afterno": 22330, - "afternoon": 39035, - "afternoon": 2716, - "afternoons": 31631, - "afterparty": 35305, - "afterwards": 23911, - "ag": 602, - "ag": 5241, - "aga": 1050, - "aga": 4654, - "again": 1495, - "against": 23838, - "against": 1601, - "agame": 46943, - "agan": 42946, - "agan": 9178, - "agar": 13199, - "agar": 17544, - "agarwal": 43117, - "agas": 20430, - "agate": 25454, - "agatha": 43896, - "agave": 42671, - "agawa": 39433, - "agazine": 44942, - "age": 4758, - "age": 805, - "aged": 3889, - "ageing": 25349, - "agen": 10101, - "agen": 43696, - "agencies": 13887, - "agency": 44885, - "agency": 6270, - "agend": 48653, - "agenda": 8728, - "agent": 21210, - "agent": 6576, - "agents": 10199, - "agentsof": 37074, - "agentsofshield": 38801, - "ager": 44847, - "ager": 10443, - "agers": 22123, - "ages": 2321, - "agg": 45482, - "aggarwal": 39386, - "agger": 27836, - "aggi": 36844, - "aggie": 44244, - "aggie": 37618, - "aggies": 31047, - "aggio": 36685, - "aggrav": 35203, - "aggre": 10426, - "aggreg": 41968, - "aggregate": 41318, - "aggression": 28900, - "aggressive": 16295, - "aggressively": 48667, - "agh": 17917, - "agh": 14402, - "aghan": 31276, - "agi": 24036, - "agi": 17645, - "agic": 37652, - "agile": 16276, - "agility": 32161, - "aging": 4336, - "agio": 41746, - "agirl": 35469, - "agle": 37035, - "agle": 16702, - "agles": 36374, - "agles": 22679, - "aglia": 46912, - "agm": 19162, - "agn": 36474, - "agna": 43626, - "agne": 29374, - "agne": 48303, - "agnes": 26213, - "agno": 41540, - "ago": 6276, - "ago": 1468, - "agomez": 27127, - "agon": 26775, - "agon": 14901, - "agony": 36977, - "agor": 38920, - "agos": 32657, - "agov": 34227, - "agp": 46048, - "agr": 36639, - "agra": 26660, - "agra": 29830, - "agram": 2447, - "agre": 3180, - "agreat": 37594, - "agree": 5953, - "agreed": 12774, - "agreeing": 40720, - "agreement": 8286, - "agreements": 25865, - "agrees": 17854, - "agri": 20527, - "agri": 30326, - "agricul": 7234, - "agricultural": 15440, - "agriculture": 9720, - "agro": 33178, - "agro": 44589, - "agron": 41314, - "agroup": 40099, - "ags": 16926, - "agt": 39681, - "agu": 3922, - "agu": 36544, - "agua": 18482, - "aguchi": 49206, - "ague": 2095, - "aguero": 42964, - "agues": 7000, - "aguil": 27946, - "aguilar": 44715, - "ah": 1772, - "ah": 1288, - "aha": 12082, - "aha": 8429, - "ahah": 38661, - "ahaha": 32423, - "ahahaha": 42620, - "aham": 36036, - "ahan": 45061, - "ahan": 19255, - "ahar": 31038, - "ahar": 38760, - "ahe": 27688, - "ahead": 3158, - "ahem": 39995, - "ahh": 13152, - "ahhh": 14769, - "ahhhh": 21054, - "ahhhhh": 36392, - "ahi": 45349, - "ahi": 24154, - "ahl": 30433, - "ahmad": 32167, - "ahmad": 16902, - "ahmadi": 38656, - "ahmadiyya": 44865, - "ahmed": 19491, - "ahmed": 12081, - "ahmedabad": 26966, - "ahn": 33405, - "aho": 28114, - "aho": 38444, - "ahora": 43113, - "ahouse": 33197, - "ahoy": 38652, - "ahs": 16937, - "ahu": 11908, - "ahu": 16515, - "ai": 2014, - "ai": 2215, - "aia": 27046, - "aib": 34780, - "aic": 29454, - "aid": 13723, - "aid": 5182, - "aida": 33830, - "aidan": 48814, - "aidan": 26945, - "aide": 31558, - "aide": 9746, - "aided": 48707, - "aiden": 40020, - "aides": 49082, - "aids": 11759, - "aig": 27295, - "aig": 46989, - "aii": 22478, - "aik": 42575, - "aiken": 46342, - "ail": 1457, - "ail": 9154, - "ailed": 38919, - "ailing": 29999, - "ails": 27024, - "aim": 6787, - "aim": 11255, - "aime": 39872, - "aimed": 20247, - "aimee": 36318, - "aiming": 21768, - "aimo": 36706, - "aims": 13326, - "ain": 8326, - "ain": 2210, - "aine": 48983, - "aine": 17634, - "ains": 27621, - "aint": 29543, - "aint": 13099, - "ainted": 39933, - "aioli": 43949, - "air": 1281, - "air": 1922, - "aira": 35085, - "aira": 46444, - "airasia": 48020, - "airbnb": 23098, - "airborne": 22755, - "airbus": 15324, - "aircraft": 7706, - "airdrop": 38434, - "aire": 7682, - "aired": 21938, - "aires": 17034, - "airfield": 40525, - "airforce": 23511, - "airing": 20453, - "airline": 14847, - "airlines": 8929, - "airmen": 44499, - "airplane": 16451, - "airplanes": 33319, - "airplay": 47024, - "airpollution": 47362, - "airport": 48337, - "airport": 3259, - "airports": 21543, - "airs": 18539, - "airshow": 27139, - "airsoft": 30134, - "airspace": 49280, - "airstrikes": 37220, - "airtel": 34784, - "airtime": 46617, - "airwaves": 43910, - "airways": 14299, - "airy": 44453, - "ais": 7616, - "ais": 11393, - "aise": 30505, - "aish": 21946, - "aisha": 40211, - "aishwar": 29687, - "aishwarya": 44019, - "aisle": 26917, - "ait": 25613, - "ait": 40814, - "aj": 3990, - "aj": 6342, - "aja": 42343, - "aja": 19633, - "ajax": 21933, - "ajay": 22494, - "ajay": 28726, - "ajaydevgn": 35515, - "aje": 48818, - "aje": 33315, - "ajes": 38791, - "aji": 26102, - "aji": 21153, - "ajit": 42261, - "ajith": 24118, - "ajo": 26958, - "aju": 36855, - "ak": 819, - "ak": 1196, - "aka": 19154, - "aka": 3412, - "akaif": 45736, - "akan": 43678, - "akan": 38244, - "akapoor": 40064, - "akarta": 48603, - "akb": 41962, - "akbar": 27180, - "ake": 10558, - "ake": 5776, - "aked": 6115, - "aker": 14245, - "aker": 3074, - "akers": 5788, - "akes": 4764, - "akest": 46679, - "akh": 14821, - "akh": 30660, - "akhan": 28158, - "akhi": 41660, - "akhilesh": 48495, - "akhtar": 45458, - "aki": 18173, - "aki": 6592, - "akin": 24630, - "akin": 13601, - "aking": 1809, - "akins": 48568, - "akira": 34001, - "akis": 27732, - "akistan": 46221, - "akley": 39908, - "ako": 44027, - "ako": 14541, - "akon": 47105, - "akos": 44659, - "akrish": 37434, - "akron": 26115, - "aks": 2953, - "aksh": 28226, - "akshay": 21483, - "akshay": 38914, - "akshaykumar": 23624, - "akshi": 42634, - "aku": 18151, - "aku": 20815, - "aky": 11977, - "al": 526, - "al": 566, - "ala": 12783, - "ala": 3449, - "alab": 6365, - "alabam": 45880, - "alabama": 8422, - "alach": 24622, - "alad": 23074, - "aladdin": 29951, - "alai": 47072, - "alain": 28999, - "alam": 16612, - "alam": 16012, - "alamo": 41922, - "alamo": 34632, - "alan": 9563, - "alan": 5773, - "alana": 43405, - "aland": 34304, - "aland": 6819, - "alar": 34333, - "alarm": 11321, - "alarming": 37209, - "alarms": 31236, - "alarts": 31422, - "alas": 7276, - "alas": 22412, - "alaska": 9562, - "alaskan": 33898, - "alastair": 42062, - "alay": 30289, - "alay": 36450, - "alaya": 36397, - "alb": 45248, - "alba": 25254, - "alban": 10882, - "albania": 29170, - "albanian": 47721, - "albans": 44119, - "albany": 17359, - "albat": 42797, - "albeit": 38984, - "alber": 6413, - "albert": 34174, - "albert": 9507, - "alberta": 11048, - "alberto": 22714, - "albi": 18512, - "albino": 48062, - "albion": 24071, - "albu": 2216, - "album": 40712, - "album": 2431, - "albums": 10705, - "albuquerque": 31079, - "alcat": 35361, - "alche": 37909, - "alchemist": 38913, - "alchemy": 39501, - "alco": 6848, - "alco": 45446, - "alcohol": 9426, - "alcoholic": 25098, - "ald": 4539, - "ald": 2928, - "alda": 46440, - "alde": 33114, - "alden": 17155, - "alden": 27710, - "aldenrichards": 20051, - "alder": 18220, - "alder": 46571, - "aldi": 23204, - "aldo": 9933, - "aldridge": 38084, - "alds": 14285, - "aldu": 6505, - "aldub": 10532, - "aldub": 15247, - "ale": 1440, - "ale": 1336, - "alea": 26518, - "aleague": 38909, - "alec": 29804, - "alec": 19954, - "alecoscino": 47948, - "aled": 4970, - "alee": 24515, - "alej": 23440, - "alejandro": 32950, - "alek": 26906, - "alek": 43310, - "aleksand": 48429, - "alem": 11825, - "aleppo": 19258, - "aler": 25674, - "aler": 27335, - "alert": 4662, - "alerts": 22144, - "ales": 44171, - "ales": 5962, - "aless": 21864, - "alessandro": 37344, - "alestine": 31945, - "alex": 2959, - "alex": 4134, - "alexa": 16273, - "alexand": 10696, - "alexander": 25527, - "alexander": 7563, - "alexandra": 19054, - "alexandre": 35711, - "alexandria": 21171, - "alexis": 35023, - "alexis": 14243, - "aley": 21635, - "alf": 27098, - "alfa": 23482, - "alfar": 38870, - "alfie": 28598, - "alfon": 31947, - "alfonso": 41784, - "alfre": 20982, - "alfred": 16553, - "alfredo": 32291, - "algae": 25654, - "algar": 36291, - "algarve": 40290, - "alge": 24336, - "algebra": 33694, - "alger": 18568, - "algeria": 25257, - "algon": 33007, - "algori": 14912, - "algorithm": 23295, - "algorithms": 26039, - "alham": 23352, - "alhamdulil": 35129, - "alhamdulillah": 38982, - "ali": 835, - "ali": 3558, - "alia": 2492, - "aliaa": 36468, - "alian": 3464, - "alias": 40026, - "alibaba": 39231, - "alic": 25265, - "alice": 23759, - "alice": 9192, - "alici": 31630, - "alicia": 20914, - "alie": 8697, - "alien": 22846, - "alien": 9639, - "aliens": 14883, - "alier": 39493, - "alies": 38086, - "alife": 41347, - "alife": 21100, - "alig": 21272, - "alight": 36157, - "align": 31160, - "aligned": 29292, - "alignment": 27267, - "alik": 31141, - "alike": 12665, - "alim": 42075, - "alin": 42746, - "alin": 40063, - "alina": 39529, - "aline": 21799, - "aling": 5169, - "alion": 19049, - "alis": 21308, - "alis": 20114, - "alisa": 38918, - "alisation": 42143, - "alise": 36718, - "alised": 25099, - "alism": 5607, - "alison": 28653, - "alison": 16970, - "alist": 44900, - "alist": 3320, - "alistair": 40551, - "alistic": 22302, - "alists": 5653, - "alit": 45566, - "alities": 27925, - "ality": 1694, - "alive": 40467, - "alive": 4716, - "aliz": 30979, - "alization": 8026, - "alize": 10268, - "alized": 6141, - "alizer": 38922, - "alizes": 26181, - "alizing": 13023, - "alk": 30246, - "alk": 21577, - "alkal": 33450, - "alkaline": 39210, - "all": 813, - "all": 615, - "alla": 13884, - "alla": 14000, - "allabout": 43996, - "allah": 6378, - "allan": 36552, - "allan": 15404, - "allblacks": 47728, - "allday": 35862, - "alle": 4870, - "alle": 29478, - "alled": 7379, - "alleg": 7456, - "allegations": 16992, - "alleged": 12133, - "allegedly": 14177, - "alleges": 45051, - "allegh": 41479, - "allegheny": 47851, - "allegi": 28832, - "allegiance": 30955, - "allen": 16712, - "allen": 6386, - "allenge": 31387, - "aller": 10116, - "aller": 30630, - "allergic": 28809, - "allergies": 28247, - "allergy": 24408, - "allery": 32542, - "alles": 43354, - "allevi": 31682, - "alleviate": 44799, - "alley": 36205, - "alley": 10329, - "allez": 49137, - "alli": 4123, - "alli": 15268, - "alliance": 45404, - "alliance": 8945, - "alliances": 48403, - "allianz": 45740, - "allie": 25040, - "allied": 20045, - "allies": 17277, - "alligator": 28574, - "allin": 45007, - "allin": 22395, - "alline": 48182, - "alling": 2992, - "allis": 45309, - "allison": 34602, - "allison": 16578, - "allman": 42611, - "allo": 8107, - "allo": 18389, - "allocated": 42716, - "allocation": 35139, - "allon": 46693, - "allot": 26363, - "allotment": 33750, - "allow": 5645, - "allow": 6722, - "allowance": 35696, - "allowed": 7885, - "allowing": 12458, - "allows": 9966, - "alloy": 22467, - "alls": 1997, - "allstar": 31247, - "allstar": 22974, - "allstars": 31198, - "allthe": 29253, - "allu": 20157, - "alluarjun": 39333, - "allure": 41814, - "ally": 7461, - "ally": 769, - "alm": 28303, - "alma": 32933, - "alma": 18337, - "alman": 29394, - "almanac": 41268, - "almighty": 21898, - "almond": 15646, - "almonds": 30468, - "almost": 47534, - "almost": 2671, - "aln": 47203, - "alo": 3435, - "alo": 6183, - "aloe": 30728, - "alog": 15813, - "alogue": 9101, - "aloha": 23160, - "aloils": 49002, - "alom": 22236, - "alon": 14097, - "alon": 42846, - "alone": 4702, - "along": 8300, - "along": 2528, - "alongside": 8646, - "alonso": 25704, - "aloo": 46187, - "alore": 14323, - "alot": 16945, - "alou": 43180, - "aloud": 30028, - "alove": 46669, - "alove": 37045, - "alp": 32020, - "alp": 39342, - "alpac": 30128, - "alpaca": 42561, - "alph": 6720, - "alpha": 11807, - "alpha": 8624, - "alphabe": 45796, - "alphabet": 22335, - "alphon": 37865, - "alpine": 17055, - "alps": 18191, - "already": 2426, - "alright": 10866, - "als": 23982, - "als": 938, - "alsace": 49388, - "also": 1446, - "alt": 9995, - "alt": 10006, - "alta": 24470, - "alta": 25378, - "altaf": 47342, - "altam": 45624, - "altar": 16385, - "alter": 4949, - "alter": 21393, - "altered": 25201, - "altern": 47463, - "alternate": 15926, - "alternati": 16699, - "alternative": 37327, - "alternative": 8248, - "alternatives": 25041, - "alth": 23463, - "alth": 5863, - "although": 9421, - "alti": 35531, - "alties": 17276, - "altitude": 23241, - "altman": 48100, - "alto": 35053, - "alto": 17518, - "altogether": 45689, - "alton": 41331, - "alton": 36550, - "altrin": 38458, - "altrincham": 44718, - "alty": 5546, - "alu": 4776, - "alu": 27991, - "alum": 5404, - "alum": 10553, - "alumin": 14563, - "alumini": 22908, - "aluminium": 23631, - "aluminum": 15251, - "alumna": 30313, - "alumni": 6646, - "alumnus": 23633, - "alums": 30155, - "alv": 20928, - "alvar": 25196, - "alvarez": 26924, - "alvaro": 41941, - "alves": 38547, - "alvin": 27023, - "alway": 14046, - "alway": 43764, - "always": 24997, - "always": 1466, - "alwx": 32768, - "aly": 6468, - "aly": 12910, - "alyn": 49150, - "alyss": 29490, - "alyssa": 18898, - "alz": 12936, - "alz": 41128, - "alzheim": 15212, - "alzheimer": 21151, - "alzheimers": 34592, - "am": 548, - "am": 687, - "ama": 18206, - "ama": 1696, - "amad": 45095, - "amade": 37366, - "amag": 32049, - "amal": 15315, - "amal": 36753, - "aman": 19890, - "aman": 10110, - "amand": 14560, - "amanda": 10036, - "amar": 6424, - "amar": 19607, - "amara": 48522, - "amari": 42565, - "amarillo": 40449, - "amarine": 45591, - "amarketing": 30788, - "amas": 22716, - "amas": 15667, - "amat": 38664, - "amat": 25455, - "amate": 12453, - "amateur": 14287, - "amaya": 47210, - "amaz": 1185, - "amaze": 24846, - "amazed": 18944, - "amazing": 15949, - "amazing": 1370, - "amazingly": 20368, - "amazon": 13630, - "amazon": 4140, - "amb": 9042, - "amb": 16853, - "amba": 27003, - "ambani": 45967, - "ambas": 5634, - "ambassad": 5758, - "ambassador": 6795, - "ambassadors": 16832, - "ambed": 42089, - "ambedkar": 48131, - "amber": 18292, - "amber": 9986, - "ambi": 11844, - "ambient": 23447, - "ambigu": 35702, - "ambition": 20673, - "ambitions": 34152, - "ambitious": 18666, - "ambro": 17585, - "ambrose": 24253, - "ambu": 34423, - "ambul": 13944, - "ambulance": 15555, - "ambush": 40725, - "amc": 24942, - "amc": 16921, - "amd": 20845, - "ame": 3995, - "ame": 780, - "amed": 5660, - "ameen": 24229, - "amel": 31988, - "amel": 10960, - "ameli": 21599, - "amelia": 21433, - "amell": 48198, - "amen": 18716, - "amen": 12335, - "amend": 12425, - "amendment": 15019, - "amendments": 40901, - "amenities": 30096, - "ament": 27528, - "amer": 17081, - "amer": 16147, - "ameri": 40422, - "americ": 1283, - "america": 2224, - "americafirst": 43216, - "american": 8746, - "american": 2151, - "americana": 26221, - "americanair": 42538, - "americani": 39726, - "americans": 6676, - "americas": 33343, - "americas": 18142, - "ames": 5469, - "ameter": 23393, - "amethy": 30291, - "amethyst": 31485, - "amex": 46390, - "amg": 21324, - "amher": 32311, - "amherst": 39065, - "ami": 6100, - "ami": 3065, - "amic": 25824, - "amic": 21383, - "amid": 18908, - "amid": 11953, - "amide": 30952, - "amidst": 25172, - "amie": 36901, - "amig": 40294, - "amiga": 35329, - "amigo": 44991, - "amigos": 28176, - "amii": 35462, - "amiibo": 38871, - "amily": 36732, - "amin": 14337, - "amin": 20235, - "amina": 47531, - "amination": 30355, - "amine": 35823, - "aming": 3507, - "amino": 33464, - "amir": 26029, - "amir": 21973, - "amis": 29829, - "amish": 24958, - "amit": 15083, - "amit": 25255, - "amitabh": 48124, - "amitshah": 32374, - "aml": 43185, - "amma": 29786, - "amman": 29243, - "ammo": 33474, - "ammunition": 35060, - "amn": 24073, - "amne": 14596, - "amnesia": 41741, - "amnesty": 46330, - "amnesty": 21177, - "amo": 4833, - "amo": 11156, - "amodi": 9826, - "amon": 17492, - "amon": 24046, - "among": 12310, - "among": 4265, - "amongst": 12520, - "amoo": 26977, - "amor": 19977, - "amor": 15973, - "amore": 38937, - "amore": 22691, - "amores": 36338, - "amos": 18133, - "amoto": 25492, - "amount": 6403, - "amounts": 16747, - "amour": 29908, - "amovie": 41062, - "amp": 3521, - "amp": 6259, - "amped": 22640, - "amphi": 16379, - "amphibious": 45206, - "amphitheater": 41285, - "amphitheatre": 44039, - "ample": 34162, - "amples": 14536, - "ampli": 15647, - "amplifier": 31743, - "amplify": 45308, - "amps": 19252, - "ampton": 29410, - "ampton": 9347, - "amr": 30916, - "amreading": 16546, - "amrit": 33849, - "ams": 1396, - "amster": 9110, - "amsterdam": 9441, - "amtrak": 27855, - "amu": 11347, - "amu": 32336, - "amur": 35014, - "amura": 35487, - "amus": 36269, - "amuse": 21421, - "amuse": 44367, - "amused": 30212, - "amusement": 32570, - "amusic": 20266, - "amusing": 31789, - "amwriting": 9660, - "amy": 10547, - "amy": 5187, - "an": 514, - "an": 550, - "ana": 6588, - "ana": 1388, - "anab": 34742, - "anada": 27948, - "anag": 12115, - "anagh": 40774, - "anaheim": 23728, - "anak": 34814, - "anak": 38658, - "anal": 2785, - "analo": 34179, - "analog": 19963, - "analogue": 46031, - "analy": 4611, - "analyse": 47246, - "analyses": 39695, - "analysis": 5296, - "analyst": 14198, - "analysts": 28075, - "analytical": 34550, - "analytics": 8558, - "analyze": 28519, - "analyzing": 32107, - "anam": 29525, - "anan": 37215, - "anand": 25073, - "anand": 22083, - "anap": 41566, - "anarch": 46405, - "anarchi": 39879, - "anarchy": 27707, - "anas": 31382, - "anas": 12633, - "anast": 48902, - "anasta": 22915, - "anastasi": 36534, - "anastasia": 37975, - "anat": 10045, - "anath": 31277, - "anatom": 33759, - "anatomy": 15376, - "anc": 1124, - "anc": 17758, - "anca": 14583, - "ance": 7165, - "ance": 884, - "anced": 5071, - "ancer": 17415, - "ancers": 37296, - "ances": 3515, - "ancestor": 43904, - "ancestors": 24405, - "ancestral": 41615, - "ancestry": 30922, - "anch": 9489, - "anche": 34679, - "ancho": 26610, - "anchor": 20030, - "anchor": 13201, - "anchorage": 31950, - "anchored": 45926, - "anchors": 37830, - "anci": 4192, - "ancient": 31495, - "ancient": 5810, - "ancies": 21647, - "ancing": 7797, - "anco": 15459, - "ancy": 16282, - "ancy": 3633, - "and": 672, - "and": 537, - "anda": 2911, - "andalu": 31443, - "andco": 36302, - "ande": 26889, - "ande": 30354, - "ander": 3740, - "ander": 3935, - "anders": 10880, - "andersen": 32661, - "anderson": 26683, - "anderson": 6510, - "andes": 24052, - "andfriends": 36871, - "andhi": 21617, - "andhra": 32452, - "andi": 28870, - "andi": 14354, - "andie": 46318, - "andme": 42831, - "ando": 35950, - "ando": 5986, - "andolan": 48965, - "andon": 36488, - "andor": 45243, - "andover": 44177, - "andr": 22661, - "andra": 46795, - "andra": 21730, - "andre": 2657, - "andre": 9400, - "andrea": 10895, - "andreas": 20444, - "andrei": 42137, - "andres": 25197, - "andretti": 44291, - "andrew": 11717, - "andrew": 4847, - "andrews": 14506, - "andri": 37208, - "andro": 4417, - "andro": 17980, - "android": 24284, - "android": 5191, - "androidgames": 46572, - "andromeda": 42942, - "andré": 35609, - "ands": 32257, - "andthe": 22111, - "andu": 44200, - "andum": 47266, - "andy": 9447, - "andy": 2888, - "ane": 5846, - "ane": 3051, - "anec": 33965, - "anem": 41395, - "anemone": 49019, - "aneous": 48273, - "anes": 15381, - "anese": 48778, - "anesthe": 30622, - "anesthesia": 43353, - "anew": 39084, - "anew": 47341, - "anews": 20919, - "aney": 22387, - "anfield": 26993, - "ang": 883, - "ang": 2704, - "anga": 11641, - "angames": 43178, - "angan": 28264, - "angas": 46180, - "ange": 2960, - "ange": 3039, - "angel": 5029, - "angel": 5130, - "angela": 12354, - "angeles": 7382, - "angeli": 15265, - "angelic": 41038, - "angelica": 38582, - "angelina": 28890, - "angelo": 14342, - "angelou": 41328, - "angels": 7809, - "anger": 32737, - "anger": 6788, - "angerous": 39716, - "angers": 29756, - "angh": 34030, - "angi": 28003, - "angi": 24301, - "angie": 18859, - "angle": 21749, - "angle": 6946, - "angled": 32322, - "angler": 22284, - "anglers": 41608, - "angles": 18627, - "anglesey": 31850, - "anglia": 32076, - "anglic": 28322, - "anglican": 33284, - "angling": 36824, - "anglo": 39515, - "anglo": 30408, - "ango": 19090, - "angola": 36636, - "angor": 41740, - "angp": 19992, - "angry": 33910, - "angry": 9054, - "angs": 18441, - "angst": 41714, - "angu": 11209, - "angular": 43584, - "angular": 24981, - "angularjs": 48608, - "angus": 19688, - "ani": 1326, - "ani": 3624, - "ania": 9866, - "anian": 9945, - "anians": 39393, - "anic": 23113, - "anie": 26697, - "anie": 7671, - "anil": 28589, - "anil": 34619, - "anim": 2190, - "animal": 10697, - "animal": 4668, - "animalrights": 42859, - "animals": 4995, - "animate": 40076, - "animated": 13360, - "animation": 10344, - "animations": 42870, - "animator": 42591, - "anime": 23314, - "anime": 6469, - "anin": 45735, - "aning": 30972, - "anir": 27089, - "anirud": 35278, - "anirudhofficial": 45917, - "anis": 40986, - "anis": 47556, - "anism": 20947, - "anist": 16729, - "anistan": 9727, - "aniston": 47344, - "anit": 23683, - "anita": 18544, - "anium": 14794, - "anj": 22443, - "anja": 43440, - "anjali": 38834, - "anjo": 47353, - "ank": 13339, - "ank": 10029, - "anka": 45324, - "ankara": 34309, - "ankle": 14777, - "ankles": 48688, - "ann": 850, - "ann": 5424, - "anna": 13821, - "anna": 2160, - "annab": 22336, - "annabelle": 47661, - "annah": 39166, - "annah": 14327, - "annak": 41720, - "annan": 32166, - "annapolis": 34491, - "annas": 48467, - "anne": 9139, - "anne": 4083, - "anned": 27352, - "anner": 12642, - "annes": 24343, - "annette": 36821, - "annex": 42958, - "annex": 46389, - "anni": 2438, - "anni": 13728, - "annie": 37270, - "annie": 12173, - "annies": 43184, - "annihil": 32734, - "annis": 24742, - "anniv": 31399, - "anniver": 29671, - "annivers": 42836, - "anniversaire": 30882, - "anniversary": 3048, - "anno": 9901, - "anno": 26871, - "annon": 26385, - "annot": 30411, - "announ": 1806, - "announce": 3682, - "announced": 4103, - "announcement": 6932, - "announcements": 23735, - "announcer": 33626, - "announces": 6500, - "announcing": 11593, - "annoy": 45138, - "annoyed": 29863, - "annoying": 15248, - "annu": 21698, - "annual": 2906, - "annually": 23703, - "anny": 34313, - "anny": 5291, - "ano": 5617, - "ano": 2658, - "anom": 21612, - "anomaly": 46811, - "anon": 47079, - "anon": 13667, - "anonym": 38605, - "anonymous": 15036, - "anoo": 25690, - "anor": 13243, - "anor": 16596, - "anos": 20132, - "another": 29274, - "another": 1380, - "anova": 24116, - "ans": 24586, - "ans": 885, - "ansari": 40748, - "ansel": 40356, - "answ": 3369, - "answe": 14391, - "answer": 4518, - "answered": 14499, - "answering": 18280, - "answers": 8692, - "ant": 1103, - "ant": 773, - "anta": 3023, - "antag": 41745, - "antal": 39355, - "antalya": 47440, - "antan": 32899, - "antarc": 21338, - "antarctic": 27077, - "antarctica": 22587, - "ante": 19311, - "ante": 9769, - "antebellum": 41683, - "antelope": 39177, - "anten": 35517, - "antenna": 26370, - "anter": 46508, - "antes": 14927, - "antgrasso": 39074, - "anth": 3737, - "anth": 29741, - "antha": 47981, - "anthe": 34167, - "anthem": 12504, - "anthi": 45261, - "anthology": 21009, - "anthony": 17477, - "anthony": 6113, - "anthro": 10019, - "anthropo": 18538, - "anthropology": 32407, - "anthus": 37639, - "anti": 3120, - "anti": 3564, - "antibio": 18954, - "antibiotic": 34387, - "antibiotics": 29499, - "antibody": 49018, - "antic": 8260, - "anticip": 11435, - "anticipate": 38280, - "anticipated": 18605, - "anticipating": 48067, - "anticipation": 26983, - "antics": 37126, - "antidote": 45476, - "antifa": 35926, - "antigua": 39910, - "antine": 17641, - "antino": 27818, - "antioxid": 23010, - "antioxidant": 37452, - "antioxidants": 34208, - "antiqu": 21745, - "antique": 46517, - "antique": 9060, - "antiques": 17365, - "antis": 19748, - "antisemitism": 36630, - "antit": 37833, - "antitrust": 49343, - "antlers": 47720, - "antly": 5265, - "anto": 16826, - "anto": 24486, - "antoine": 25188, - "anton": 5497, - "anton": 19644, - "antoni": 39958, - "antonio": 30497, - "antonio": 7842, - "antony": 30707, - "antrim": 40252, - "ants": 1589, - "antv": 47520, - "antw": 44460, - "antwer": 26970, - "antwerp": 33797, - "antz": 25684, - "anu": 8537, - "anu": 17152, - "anup": 29617, - "anus": 27084, - "anush": 22765, - "anushka": 42080, - "anushka": 39822, - "anushkasharma": 44203, - "anwar": 34261, - "anxi": 9021, - "anxiety": 11103, - "anxious": 27793, - "any": 1307, - "any": 1504, - "anya": 11173, - "anybody": 10071, - "anyi": 41632, - "anymore": 7372, - "anyone": 2302, - "anything": 3582, - "anytime": 13924, - "anyway": 8931, - "anyways": 19778, - "anywhere": 8863, - "anz": 14445, - "anz": 19425, - "anza": 14669, - "anzac": 31977, - "ao": 7313, - "ao": 5703, - "aoa": 47119, - "aoc": 31918, - "aofficial": 30840, - "aoki": 33602, - "aol": 40643, - "aon": 30928, - "aon": 48476, - "aor": 32044, - "aos": 46860, - "ap": 688, - "ap": 2728, - "apa": 36954, - "apa": 13537, - "apac": 34320, - "apache": 23921, - "apal": 38017, - "apan": 36562, - "apar": 9161, - "apark": 32528, - "apart": 6474, - "apart": 7803, - "aparthe": 25121, - "apartheid": 26597, - "apartment": 8285, - "apartments": 15791, - "aparty": 26767, - "apat": 31755, - "apathy": 18145, - "apc": 20300, - "apd": 44563, - "ape": 6098, - "ape": 2609, - "apec": 47530, - "aper": 13681, - "aper": 5858, - "apers": 15846, - "apes": 9550, - "apeu": 19040, - "apex": 41935, - "apex": 23712, - "aph": 16341, - "aph": 29491, - "apha": 47104, - "apho": 21758, - "aphra": 44147, - "api": 23342, - "api": 14674, - "apia": 44259, - "apic": 40679, - "aping": 18456, - "apink": 35725, - "apis": 37575, - "apk": 27648, - "apo": 4089, - "apo": 19758, - "apocaly": 13932, - "apocalypse": 17571, - "apocalyptic": 35675, - "apol": 5023, - "apolice": 45663, - "apolis": 9598, - "apollo": 48213, - "apollo": 11554, - "apolo": 31094, - "apolog": 25530, - "apologe": 42908, - "apologi": 14977, - "apologies": 21959, - "apologise": 39608, - "apologize": 22879, - "apologizes": 35298, - "apology": 20768, - "apor": 21871, - "apore": 6679, - "apost": 20309, - "apostle": 33051, - "apostles": 48457, - "app": 882, - "app": 2231, - "appa": 4884, - "appa": 13110, - "appalach": 30523, - "appalachian": 36806, - "appalling": 44797, - "appar": 26698, - "apparatus": 37716, - "apparel": 13972, - "apparent": 23963, - "apparently": 5287, - "appe": 3748, - "appe": 45949, - "appeal": 9625, - "appealing": 25909, - "appeals": 22447, - "appear": 5544, - "appear": 9308, - "appearance": 7238, - "appearances": 17214, - "appeared": 11561, - "appearing": 18759, - "appears": 8743, - "appell": 43833, - "appen": 37201, - "appen": 26589, - "apper": 18780, - "appet": 21686, - "appeti": 24179, - "appetite": 24481, - "appetizer": 36065, - "applau": 24713, - "applaud": 42152, - "applause": 22650, - "apple": 8629, - "apple": 3055, - "applemusic": 21390, - "apples": 14032, - "appleton": 45250, - "appli": 15495, - "appliance": 33677, - "appliances": 22134, - "applic": 4235, - "applicable": 37927, - "applicants": 28035, - "application": 7241, - "applications": 7341, - "applied": 12636, - "applies": 24910, - "apply": 4356, - "applying": 17965, - "appo": 5433, - "appoint": 36190, - "appointed": 11087, - "appointment": 10890, - "appointments": 23439, - "appoints": 25132, - "apprais": 36972, - "appraisal": 46108, - "appreci": 3474, - "appreciate": 6263, - "appreciated": 9264, - "appreciates": 36573, - "appreciating": 39352, - "appreciation": 9212, - "appreciationday": 37438, - "appreciative": 45074, - "appren": 10582, - "apprentic": 15662, - "apprentice": 19122, - "apprentice": 17985, - "apprentices": 38252, - "apprenticeship": 26939, - "apprenticeships": 35425, - "appro": 2398, - "approach": 7781, - "approach": 6241, - "approached": 36499, - "approaches": 14962, - "approaching": 12164, - "appropri": 8446, - "appropriate": 10768, - "appropriately": 30383, - "appropriation": 49110, - "approval": 13549, - "approve": 19064, - "approved": 9412, - "approves": 18107, - "approx": 18266, - "approxim": 14201, - "approximately": 16128, - "apps": 7020, - "appstore": 31377, - "appt": 48112, - "appy": 34420, - "apr": 39396, - "apr": 11177, - "apra": 37027, - "apric": 25923, - "apricot": 30815, - "april": 23548, - "april": 2484, - "apro": 42712, - "apro": 49051, - "apron": 29502, - "aps": 8868, - "apse": 31843, - "apt": 17921, - "aptly": 47313, - "apu": 22166, - "apur": 36900, - "apur": 45193, - "aq": 14018, - "aq": 26862, - "aqu": 4458, - "aqua": 18613, - "aquaculture": 41885, - "aquaman": 35098, - "aquari": 37605, - "aquarium": 16814, - "aquarius": 38879, - "aquatic": 22658, - "aque": 35927, - "aque": 37268, - "aqui": 36826, - "aquino": 33796, - "ar": 516, - "ar": 625, - "ara": 24161, - "ara": 3340, - "arab": 5405, - "arab": 12028, - "arabia": 11746, - "arabian": 24663, - "arabic": 16709, - "arabs": 39155, - "arac": 47620, - "arach": 37689, - "arag": 41502, - "araj": 45142, - "arak": 23416, - "aram": 19223, - "aram": 21473, - "arama": 49066, - "aran": 20839, - "aran": 19641, - "aras": 36399, - "arat": 30856, - "arav": 35836, - "arbit": 20267, - "arbitr": 22702, - "arbitration": 34845, - "arbor": 33516, - "arbor": 24878, - "arboretum": 41719, - "arc": 4997, - "arc": 11592, - "arca": 25189, - "arca": 37612, - "arcade": 13331, - "arcadia": 38372, - "arch": 2458, - "arch": 8557, - "archa": 45619, - "archae": 10121, - "archaeological": 26163, - "archaeologists": 45035, - "archaeology": 14868, - "archan": 33359, - "archbishop": 23994, - "arche": 22474, - "archer": 21824, - "archers": 38407, - "archery": 23935, - "arches": 30771, - "archi": 4479, - "archie": 20557, - "archipel": 39750, - "archipelago": 43025, - "architec": 3359, - "architect": 12192, - "architects": 13290, - "architectural": 15360, - "architecture": 39038, - "architecture": 4920, - "archival": 39249, - "archive": 42257, - "archive": 10548, - "archived": 42379, - "archives": 9411, - "archy": 15643, - "arctic": 29716, - "arctic": 9138, - "ard": 3793, - "ard": 746, - "arden": 44600, - "arden": 27057, - "ardi": 23932, - "ardi": 19837, - "ardo": 35735, - "ardo": 9394, - "ards": 1654, - "ardu": 20906, - "arduino": 25398, - "are": 1076, - "are": 631, - "area": 2445, - "areas": 5429, - "arec": 18136, - "areclipse": 36030, - "ared": 5369, - "arel": 12798, - "arella": 24784, - "arelli": 48619, - "aren": 4033, - "aren": 4318, - "arena": 5463, - "arenas": 47860, - "arent": 37487, - "arer": 14857, - "arers": 33159, - "ares": 12224, - "arest": 11708, - "aret": 22247, - "areth": 47725, - "aretha": 42090, - "areyou": 37607, - "arez": 13108, - "arg": 27285, - "argent": 7812, - "argentina": 9789, - "argentine": 32582, - "argon": 40737, - "argos": 37443, - "argu": 7440, - "arguably": 30899, - "argue": 19788, - "argued": 48153, - "argues": 30045, - "arguing": 26549, - "argument": 16224, - "arguments": 24693, - "argus": 44300, - "argy": 21066, - "argyle": 36179, - "argyll": 40667, - "ari": 1221, - "ari": 3681, - "aria": 8883, - "arial": 42431, - "arian": 29980, - "arian": 6953, - "ariana": 14892, - "arianag": 23025, - "arianagrande": 23321, - "arianism": 44351, - "arians": 19104, - "arias": 22567, - "arie": 18774, - "ariel": 47959, - "ariel": 21025, - "aries": 5213, - "arif": 46621, - "arily": 12993, - "arin": 29564, - "arin": 18612, - "arina": 29271, - "arine": 29586, - "aring": 2142, - "ario": 8862, - "arios": 25392, - "aris": 15227, - "arise": 26490, - "arist": 12110, - "aristo": 25666, - "aristotle": 49156, - "arities": 31069, - "arity": 16608, - "arium": 11809, - "arius": 21482, - "ariz": 6516, - "arized": 40167, - "arizon": 28936, - "arizona": 7106, - "arjun": 24565, - "arjun": 20477, - "arjuna": 43835, - "ark": 11921, - "ark": 12010, - "arkansas": 12227, - "arkham": 36381, - "arl": 48542, - "arlington": 44940, - "arlington": 17865, - "arly": 3637, - "arm": 5671, - "arm": 4793, - "arma": 15887, - "arma": 38716, - "armad": 37897, - "armada": 34938, - "armagh": 44313, - "armani": 31314, - "armb": 37096, - "armchair": 45757, - "armed": 40471, - "armed": 8202, - "armen": 13145, - "armenia": 22008, - "armenian": 24891, - "armies": 46686, - "armin": 45481, - "arming": 19766, - "armist": 38150, - "armistice": 46765, - "armor": 16167, - "armored": 28214, - "armory": 38610, - "armour": 18503, - "armoured": 42514, - "arms": 5706, - "armstrong": 15005, - "army": 13541, - "army": 3133, - "armys": 27311, - "arn": 9348, - "arn": 37597, - "arnau": 45556, - "arne": 43509, - "arney": 35962, - "arnold": 49096, - "arnold": 13609, - "arns": 46692, - "aro": 7514, - "aro": 11551, - "aroa": 48209, - "arom": 16831, - "aroma": 40143, - "aroma": 26390, - "aromas": 47439, - "aromatherapy": 42584, - "aromatic": 39669, - "aron": 30855, - "aron": 28926, - "aroo": 47581, - "arora": 31897, - "arosa": 44264, - "arose": 44262, - "around": 35615, - "around": 1630, - "arqu": 35654, - "arquitec": 41703, - "arr": 39106, - "arr": 42489, - "arra": 32918, - "arra": 43827, - "arrahman": 44554, - "arran": 45722, - "arrang": 16711, - "arrange": 15410, - "arrange": 26311, - "arranged": 22451, - "arrangement": 23822, - "arrangements": 23792, - "arranging": 35321, - "array": 17293, - "arre": 4374, - "arrell": 28846, - "arrest": 9320, - "arrested": 5845, - "arresting": 43930, - "arrests": 20683, - "arri": 2115, - "arrival": 9073, - "arrivals": 19583, - "arrive": 8851, - "arrived": 3514, - "arrives": 9905, - "arriving": 10884, - "arro": 15729, - "arrog": 26997, - "arrogance": 47025, - "arrogant": 40582, - "arrow": 30920, - "arrow": 11149, - "arrowhead": 46393, - "arrows": 24768, - "arroyo": 45237, - "ars": 42815, - "ars": 864, - "arse": 22665, - "arsen": 5330, - "arsenal": 45234, - "arsenal": 6084, - "arsene": 32117, - "arson": 29937, - "art": 1486, - "art": 794, - "arta": 12031, - "arte": 13482, - "arte": 12947, - "artem": 40387, - "artemis": 45256, - "arten": 37043, - "arter": 29449, - "artery": 40062, - "artes": 48629, - "artforsale": 48239, - "artgallery": 31982, - "arth": 7146, - "arth": 20265, - "arthistory": 39313, - "arthr": 20807, - "arthritis": 22916, - "arthro": 43255, - "arthur": 35660, - "arthur": 8550, - "arti": 1635, - "arti": 34601, - "artic": 3003, - "articho": 30937, - "artichoke": 39647, - "article": 3550, - "articles": 11939, - "articul": 40343, - "articulate": 45444, - "artif": 8950, - "artifact": 37718, - "artifacts": 30249, - "artificial": 19357, - "artificial": 12040, - "artificialintelligence": 20799, - "artillery": 24465, - "artin": 33168, - "artin": 48540, - "artis": 41794, - "artisan": 36389, - "artisan": 21535, - "artisans": 40140, - "artist": 14326, - "artist": 2456, - "artiste": 41402, - "artistic": 12421, - "artiston": 48443, - "artistry": 38570, - "artists": 4899, - "artistson": 32127, - "artistsontwitter": 39469, - "artlovers": 35617, - "arto": 28464, - "artof": 31751, - "artoftheday": 43990, - "arton": 46744, - "arts": 22040, - "arts": 3812, - "artsy": 31588, - "arturo": 38591, - "artwit": 36713, - "artwork": 4188, - "artworks": 26215, - "arty": 45417, - "arty": 25916, - "aru": 13757, - "aru": 23907, - "aruba": 40131, - "arugula": 40770, - "arum": 48732, - "arun": 16105, - "arun": 31877, - "arunach": 47260, - "arunjaitley": 44874, - "arus": 22644, - "arvin": 16971, - "arvind": 21209, - "arvind": 41079, - "arvindkejriwal": 22971, - "arvo": 45726, - "arwx": 29824, - "ary": 4617, - "ary": 856, - "arya": 23594, - "aryan": 34966, - "as": 587, - "as": 601, - "asa": 39676, - "asa": 11914, - "asad": 42376, - "asaki": 22455, - "asam": 40603, - "asan": 22379, - "asan": 17841, - "asana": 42363, - "asant": 25536, - "asants": 37766, - "asap": 24199, - "asap": 10822, - "asar": 24733, - "asar": 49299, - "asb": 31186, - "asbe": 32113, - "asbestos": 33765, - "asc": 22720, - "asc": 23305, - "ascen": 20767, - "ascension": 35499, - "ascent": 36625, - "asci": 12753, - "asco": 25578, - "asco": 17488, - "ascot": 23723, - "ascri": 15506, - "asd": 36988, - "asda": 29391, - "asdf": 36857, - "asdfghj": 42758, - "asdfghjkl": 47660, - "ase": 8083, - "ase": 894, - "asean": 24472, - "aseball": 46903, - "ased": 2134, - "asen": 41085, - "aser": 39615, - "aser": 7209, - "ases": 3762, - "asf": 25863, - "asg": 34813, - "ash": 2067, - "ash": 2612, - "asha": 40572, - "asha": 13472, - "ashamed": 20633, - "ashby": 46531, - "ashe": 48523, - "ashe": 31752, - "asher": 37585, - "ashes": 12587, - "asheville": 28897, - "ashford": 37796, - "ashi": 15563, - "ashi": 15934, - "ashish": 33145, - "ashland": 39938, - "ashleigh": 49356, - "ashley": 17825, - "ashley": 8957, - "asho": 20273, - "ashok": 38141, - "ashore": 31194, - "ashram": 43445, - "ashton": 43264, - "ashton": 12228, - "ashtra": 18118, - "asi": 3596, - "asi": 12562, - "asia": 5741, - "asian": 21737, - "asian": 7128, - "asiangames": 49108, - "asians": 36771, - "asics": 31097, - "aside": 13676, - "asif": 37302, - "asim": 46050, - "asin": 48432, - "asin": 44347, - "asing": 4194, - "asingly": 15803, - "asion": 31753, - "asis": 12398, - "ask": 11027, - "ask": 2765, - "asked": 3993, - "asking": 5914, - "asks": 7953, - "asl": 41650, - "asleep": 10749, - "asley": 28206, - "asli": 44290, - "asm": 13851, - "asma": 38497, - "asmsg": 19839, - "aso": 30343, - "aso": 27932, - "asober": 43749, - "asocial": 48557, - "ason": 1163, - "asone": 31249, - "asons": 4249, - "asos": 37924, - "asot": 47968, - "asp": 17814, - "asp": 36666, - "asparag": 20301, - "asparagus": 20604, - "aspe": 10894, - "aspect": 19681, - "aspects": 18203, - "aspen": 35695, - "aspen": 25712, - "asper": 32991, - "asph": 28019, - "asphalt": 30574, - "aspir": 12669, - "aspirations": 36127, - "aspire": 24836, - "aspiring": 21862, - "asports": 43695, - "asr": 48052, - "asroma": 41000, - "ass": 12664, - "ass": 5301, - "assa": 47715, - "assad": 18699, - "assam": 19930, - "assan": 26352, - "assange": 27565, - "assas": 9603, - "assassin": 14366, - "assassin": 20029, - "assassinated": 40488, - "assassination": 24907, - "assassins": 34918, - "assassinscre": 36428, - "assassinscreed": 46082, - "assau": 7908, - "assaul": 19596, - "assault": 9679, - "assaulted": 30785, - "assaulting": 44143, - "asse": 3166, - "asse": 38600, - "assel": 37582, - "assemb": 5531, - "assemble": 26169, - "assembled": 22627, - "assemblies": 47406, - "assembling": 38670, - "assembly": 34542, - "assembly": 7059, - "assen": 38651, - "asser": 25665, - "asses": 21596, - "assess": 9209, - "assess": 23211, - "assessed": 44160, - "assessing": 31364, - "assessment": 10590, - "assessments": 32753, - "asset": 48463, - "asset": 13039, - "assets": 13170, - "assi": 2907, - "assi": 39540, - "assie": 31624, - "assign": 14190, - "assigned": 25767, - "assignment": 17342, - "assignments": 34257, - "assim": 36394, - "assimil": 43467, - "assist": 26558, - "assist": 10286, - "assistance": 11685, - "assistant": 6799, - "assistants": 31054, - "assisted": 18095, - "assisting": 24243, - "assists": 12675, - "assn": 44208, - "asso": 17617, - "assoc": 18891, - "associ": 3566, - "associate": 11777, - "associated": 11164, - "associates": 17358, - "association": 5578, - "associations": 33209, - "assor": 38604, - "assorted": 36701, - "assortment": 43112, - "asst": 24767, - "assu": 8328, - "assume": 19294, - "assumed": 37661, - "assuming": 29422, - "assump": 41182, - "assumption": 40773, - "assumptions": 45948, - "assurance": 28408, - "assure": 39161, - "assured": 25591, - "assures": 41988, - "assy": 29940, - "assy": 12963, - "ast": 1761, - "ast": 1242, - "asta": 43269, - "aste": 25033, - "aste": 25579, - "aster": 11013, - "aster": 9526, - "asteroid": 32253, - "asters": 33139, - "asth": 16684, - "asthma": 24610, - "asthour": 41238, - "astic": 15876, - "asting": 29984, - "astle": 46141, - "asto": 47275, - "aston": 24760, - "aston": 13879, - "astoni": 21962, - "astonishing": 27110, - "astonmartin": 40760, - "astor": 26391, - "astor": 47086, - "astoria": 34798, - "astounding": 37748, - "astr": 37609, - "astra": 47205, - "astra": 36079, - "astral": 45889, - "astri": 31243, - "astrid": 46499, - "astro": 8563, - "astro": 15318, - "astrology": 28526, - "astron": 7982, - "astronaut": 18376, - "astronauts": 29733, - "astronom": 23264, - "astronomer": 40036, - "astronomers": 44268, - "astronomical": 39775, - "astronomy": 17472, - "astrophotography": 38559, - "astros": 17598, - "asts": 10452, - "astu": 43137, - "astur": 45795, - "asu": 13157, - "asu": 16001, - "asun": 36044, - "asure": 3813, - "asus": 27269, - "aswell": 42978, - "asx": 38906, - "asy": 8524, - "asy": 2333, - "asylum": 15638, - "asym": 32539, - "at": 527, - "at": 536, - "ata": 4236, - "atable": 23909, - "atal": 24877, - "atal": 24797, - "atan": 33446, - "atar": 20128, - "atar": 7995, - "atari": 21549, - "atas": 30057, - "atay": 39518, - "atc": 28383, - "atch": 15938, - "atd": 33890, - "ate": 992, - "ate": 671, - "ateam": 42784, - "ateau": 16359, - "atec": 37352, - "atech": 31306, - "ated": 14589, - "ated": 943, - "atedly": 24698, - "atee": 32839, - "ateful": 5419, - "atelier": 29932, - "ately": 3862, - "atem": 17116, - "aten": 47984, - "atene": 30405, - "ateneo": 33904, - "ater": 18597, - "ater": 5877, - "ateral": 18819, - "aters": 22364, - "ates": 20370, - "ates": 1150, - "atest": 1705, - "ateur": 43677, - "atf": 28013, - "ath": 1374, - "ath": 1649, - "atha": 22530, - "atham": 23383, - "athan": 41260, - "athan": 26701, - "athe": 8963, - "athed": 47402, - "atheism": 25823, - "atheist": 22571, - "atheists": 47155, - "athen": 29112, - "athena": 30705, - "athens": 13524, - "ather": 6171, - "ather": 1817, - "athered": 34091, - "athers": 17266, - "athi": 28918, - "athing": 36069, - "athle": 3310, - "athlete": 7388, - "athletes": 7125, - "athletic": 33182, - "athletic": 9028, - "athletics": 7019, - "athlon": 14670, - "athome": 38217, - "athon": 4951, - "aths": 28835, - "athy": 34488, - "athy": 13183, - "ati": 591, - "ati": 6751, - "atia": 10908, - "atic": 20248, - "atic": 2647, - "atically": 13558, - "atics": 15666, - "atie": 30137, - "aties": 40060, - "atif": 41592, - "atiku": 37912, - "atile": 15474, - "atility": 23373, - "atime": 20158, - "atin": 36903, - "atin": 23047, - "atine": 39741, - "ating": 25653, - "ating": 1074, - "atio": 35401, - "ation": 2265, - "ation": 656, - "ational": 14205, - "ational": 3108, - "ationals": 44593, - "ationday": 20082, - "ations": 986, - "atis": 45456, - "atis": 41142, - "atism": 45638, - "ative": 18422, - "ative": 1648, - "atively": 11929, - "atives": 5629, - "ativity": 25166, - "atkins": 27734, - "atkinson": 28908, - "atl": 5411, - "atl": 10629, - "atla": 36043, - "atlan": 6818, - "atlanta": 39964, - "atlanta": 6839, - "atlantic": 28804, - "atlantic": 8189, - "atlantis": 27790, - "atlas": 15775, - "atle": 21170, - "atleast": 33231, - "atleti": 46067, - "atletico": 27501, - "atm": 14127, - "atmo": 8271, - "atmosphere": 10506, - "atmospheric": 24223, - "ato": 7987, - "ato": 4364, - "atoday": 26799, - "atom": 22418, - "atom": 24031, - "atomic": 18996, - "atoms": 41434, - "aton": 31525, - "aton": 10012, - "atop": 17455, - "ator": 10748, - "ator": 1962, - "atore": 28314, - "atorial": 32040, - "atories": 35678, - "atorium": 41306, - "ators": 3389, - "atory": 5920, - "atos": 41643, - "atour": 42967, - "atown": 24000, - "atp": 38105, - "atp": 19817, - "atr": 43247, - "atra": 20227, - "atra": 14401, - "atravel": 36981, - "atre": 46057, - "atri": 13882, - "atri": 38889, - "atric": 32238, - "atric": 13652, - "atrics": 36253, - "atrist": 41879, - "atrium": 29725, - "atrix": 43003, - "atro": 18724, - "atroc": 36197, - "atrocities": 37551, - "atry": 28334, - "ats": 46890, - "ats": 1032, - "atsu": 26531, - "att": 1017, - "att": 7103, - "atta": 7282, - "atta": 9146, - "attach": 43676, - "attach": 35653, - "attached": 11038, - "attachment": 28638, - "attack": 24971, - "attack": 3815, - "attacked": 12366, - "attacker": 39288, - "attackers": 47701, - "attacking": 16813, - "attacks": 7321, - "attain": 46459, - "attar": 37110, - "attemp": 4933, - "attempt": 7409, - "attempted": 17408, - "attempting": 18195, - "attempts": 15610, - "atten": 4084, - "atten": 32408, - "attenborough": 45860, - "attend": 9841, - "attend": 5802, - "attendance": 11928, - "attendant": 35424, - "attended": 8140, - "attendees": 14648, - "attending": 6696, - "attends": 22248, - "attention": 4936, - "atters": 30675, - "atthe": 21489, - "atti": 49265, - "atti": 16235, - "attic": 26766, - "attire": 21222, - "attitude": 10648, - "attitudes": 27611, - "attle": 14685, - "attle": 5030, - "attn": 25677, - "attor": 8856, - "attorney": 10372, - "attorneys": 29113, - "attrac": 7154, - "attract": 17010, - "attracted": 28493, - "attracting": 31909, - "attraction": 16807, - "attractions": 22307, - "attractive": 12231, - "attracts": 31024, - "attribu": 24624, - "attributed": 37520, - "attributes": 40763, - "attu": 43173, - "atty": 36705, - "atu": 15191, - "atu": 24295, - "atuesday": 34841, - "atul": 1744, - "atul": 43948, - "atum": 48295, - "atur": 14986, - "aturday": 29027, - "ature": 25305, - "ature": 4490, - "atures": 7358, - "atus": 14795, - "atv": 19598, - "atwood": 45680, - "atwork": 39680, - "atx": 34849, - "atx": 20136, - "aty": 40974, - "aty": 33107, - "atz": 30432, - "au": 627, - "au": 2566, - "aua": 45906, - "aub": 45938, - "auberg": 49382, - "aubre": 25899, - "aubrey": 34110, - "auburn": 42269, - "auburn": 14534, - "auc": 24489, - "auch": 43024, - "auck": 14588, - "auckland": 16072, - "auction": 48160, - "auction": 6462, - "auctioned": 41073, - "auctions": 24876, - "aucus": 47374, - "aud": 16107, - "aud": 19711, - "audi": 5091, - "audi": 10277, - "audible": 33227, - "audience": 6863, - "audiences": 22328, - "audio": 13792, - "audio": 5766, - "audiobook": 26282, - "audit": 12505, - "audit": 17625, - "auditi": 37377, - "audition": 18673, - "auditions": 21134, - "auditor": 38050, - "auditorium": 15063, - "audre": 16075, - "audrey": 18812, - "audu": 27934, - "audubon": 40275, - "auer": 33460, - "auf": 28924, - "aug": 15397, - "aug": 5720, - "auga": 22797, - "augh": 28310, - "augh": 14005, - "augmente": 48356, - "augmented": 32708, - "augu": 2610, - "august": 24353, - "august": 3171, - "augusta": 26144, - "augustine": 27397, - "augustus": 36835, - "auk": 19058, - "aul": 20695, - "aul": 34391, - "ault": 47253, - "ault": 10219, - "aun": 10608, - "aun": 38721, - "aunt": 12685, - "auntie": 23783, - "aunty": 29528, - "aur": 8156, - "aur": 17282, - "aura": 27728, - "aure": 36010, - "aureli": 35980, - "auror": 30067, - "aurora": 13500, - "aus": 10624, - "aus": 7630, - "ausa": 37384, - "ausbiz": 46543, - "ausch": 33926, - "auschwitz": 36523, - "ausopen": 27831, - "ausp": 35039, - "auspicious": 38806, - "auspol": 8241, - "aussi": 19762, - "aussie": 40230, - "aussie": 14424, - "aussies": 35727, - "aust": 26301, - "aust": 25418, - "austen": 29885, - "auster": 25030, - "austerity": 26982, - "austin": 12845, - "austin": 5125, - "austinmahone": 34678, - "austr": 2518, - "australi": 13798, - "australia": 3444, - "australian": 23630, - "australian": 6258, - "australians": 31488, - "austri": 8946, - "austria": 11960, - "austrian": 20638, - "ausv": 35206, - "ausvotes": 34661, - "aut": 12343, - "auth": 2381, - "auth": 38247, - "authent": 18158, - "authentic": 41266, - "authentic": 10369, - "authentication": 39746, - "authenticity": 35734, - "autho": 34552, - "author": 14447, - "author": 4358, - "authored": 37928, - "authori": 19207, - "authorities": 12729, - "authority": 10524, - "authorization": 48854, - "authorized": 28463, - "authors": 10765, - "auti": 8200, - "autism": 36256, - "autism": 11244, - "autisma": 43324, - "autistic": 29360, - "auto": 3917, - "auto": 5668, - "autobiography": 31509, - "autodesk": 40415, - "autograph": 10657, - "autograph": 13722, - "autographed": 16309, - "autographs": 17376, - "autoimmune": 45509, - "autom": 4114, - "automate": 43203, - "automated": 19022, - "automatic": 12126, - "automatically": 20725, - "automation": 12328, - "automobi": 44813, - "automobile": 25258, - "automotive": 12607, - "auton": 13100, - "autonews": 43975, - "autonom": 17870, - "autonomous": 20722, - "autonomy": 39223, - "autopsy": 44436, - "autos": 31118, - "autoshow": 46788, - "auts": 21140, - "autu": 5445, - "autum": 31783, - "autumn": 28940, - "autumn": 6110, - "autumnal": 35481, - "aux": 18154, - "aux": 8909, - "auxiliary": 37778, - "av": 722, - "av": 8484, - "ava": 12385, - "avage": 31505, - "avail": 1651, - "avail": 16686, - "availability": 17551, - "available": 1685, - "aval": 18012, - "avalan": 23970, - "avalanche": 25815, - "avalley": 45082, - "avalon": 30436, - "avan": 27971, - "avan": 33351, - "avant": 24305, - "avar": 33423, - "avatar": 18219, - "ave": 10062, - "ave": 4860, - "avec": 25828, - "aved": 47918, - "avel": 46817, - "avel": 48088, - "aven": 5963, - "aven": 32971, - "aveng": 21935, - "avenger": 24799, - "avengers": 39413, - "avengers": 12016, - "avengersendgame": 49342, - "avent": 22700, - "avenue": 7042, - "aver": 8788, - "aver": 11403, - "average": 6254, - "averaged": 37310, - "averages": 48982, - "averaging": 35266, - "avery": 20313, - "aves": 14023, - "avfc": 21304, - "avg": 19452, - "avgeek": 11114, - "avi": 3324, - "avi": 11297, - "avia": 38710, - "avian": 24115, - "aviation": 27717, - "aviation": 7617, - "aviator": 38921, - "aviators": 48011, - "avici": 46192, - "avicii": 49158, - "avid": 19118, - "avier": 14598, - "avila": 45339, - "aville": 40689, - "avin": 46204, - "avis": 45163, - "avis": 19765, - "aviv": 22130, - "aviva": 47122, - "aviz": 27607, - "avl": 44749, - "avo": 4496, - "avo": 32400, - "avoc": 12291, - "avocado": 14135, - "avocados": 48911, - "avoi": 16797, - "avoid": 30448, - "avoid": 5983, - "avoidance": 47983, - "avoided": 32103, - "avoiding": 22086, - "avoids": 48220, - "avon": 22790, - "avon": 17348, - "avril": 37763, - "avs": 31896, - "avut": 44472, - "avy": 29973, - "aw": 808, - "aw": 5557, - "awa": 4820, - "awa": 6872, - "await": 20769, - "awaited": 20092, - "awaiting": 14872, - "awaits": 15635, - "awak": 9776, - "awak": 41387, - "awake": 14695, - "awaken": 35412, - "awakening": 17017, - "awakens": 23191, - "awal": 42447, - "awal": 35090, - "awan": 48869, - "awan": 20420, - "awar": 5745, - "award": 36310, - "award": 2047, - "awarded": 7368, - "awarding": 37089, - "awards": 34528, - "awards": 2320, - "aware": 4427, - "aware": 7196, - "awareness": 19217, - "awareness": 4823, - "awarenessmonth": 34278, - "awarenessweek": 35294, - "away": 21088, - "away": 1520, - "aways": 12782, - "awaz": 18586, - "awd": 34846, - "awe": 1693, - "awe": 14106, - "aweather": 42142, - "aweather": 28681, - "awec": 38916, - "aweed": 29724, - "awesom": 16727, - "awesome": 30390, - "awesome": 1848, - "awesomeness": 22430, - "awful": 13617, - "awg": 46350, - "awgs": 35275, - "awh": 39566, - "awhile": 19171, - "awi": 15167, - "awil": 47271, - "awilliams": 42163, - "awk": 8888, - "awk": 40943, - "awkward": 42337, - "awkward": 10304, - "awn": 46222, - "awp": 43300, - "aws": 19658, - "awsome": 47196, - "awson": 36286, - "aww": 11568, - "awww": 15634, - "awwww": 26460, - "awx": 28385, - "ax": 3165, - "ax": 9203, - "axe": 19861, - "axel": 47889, - "axel": 32131, - "axes": 45970, - "axi": 30672, - "axial": 46550, - "axis": 19614, - "axle": 39003, - "axx": 47411, - "ay": 658, - "ay": 551, - "aya": 5917, - "ayala": 39827, - "ayama": 41194, - "ayan": 37781, - "ayan": 16269, - "ayana": 37400, - "ayas": 40904, - "ayat": 44902, - "ayat": 35720, - "aye": 21661, - "aye": 12446, - "ayer": 24852, - "ayers": 42783, - "ayesha": 46570, - "ayi": 33025, - "ayles": 44706, - "ayne": 35669, - "ayo": 21929, - "ayo": 18708, - "ayr": 23002, - "ayr": 36473, - "ayrshire": 32687, - "ays": 785, - "ayu": 40769, - "ayurve": 27185, - "ayurveda": 38986, - "ayush": 44831, - "ayy": 32514, - "ayyy": 41052, - "az": 854, - "az": 5468, - "aza": 22883, - "azad": 37838, - "azalea": 34087, - "azam": 34727, - "azar": 27911, - "azcardinals": 48846, - "aze": 41157, - "aze": 28485, - "azer": 19169, - "azerbai": 20649, - "azerbaijan": 23888, - "azhar": 47019, - "azi": 23914, - "azi": 18452, - "azine": 29140, - "azione": 48335, - "aziz": 41205, - "aziz": 29630, - "azo": 41227, - "azon": 36854, - "azores": 42826, - "azte": 33270, - "aztec": 34749, - "aztecs": 49387, - "azu": 27701, - "azu": 46963, - "azul": 39807, - "azure": 18514, - "azwx": 30262, - "azy": 24783, - "azz": 9817, - "azz": 26453, - "azza": 22255, - "azzi": 18758, - "azzle": 39974, - "azzo": 26779, - "azzur": 37055, - "azzy": 44534, - "añ": 23716, - "años": 41634, - "b": 65, - "b": 321, - "ba": 932, - "ba": 1792, - "baa": 33004, - "baahu": 34145, - "baahubali": 38663, - "bab": 1202, - "bab": 19039, - "baba": 12631, - "babe": 31177, - "babe": 7716, - "babes": 14253, - "babies": 6635, - "babs": 36217, - "babu": 21623, - "baby": 7268, - "baby": 1794, - "babygirl": 39554, - "babylon": 31928, - "babymetal": 45013, - "babys": 22266, - "babysitting": 34186, - "bac": 2791, - "bac": 25867, - "bacca": 40708, - "bach": 11773, - "bach": 8758, - "bachchan": 17690, - "bachel": 11283, - "bachelor": 45508, - "bachelor": 16766, - "bachelore": 26009, - "bachelorette": 29093, - "bacher": 49211, - "back": 1663, - "back": 893, - "backbone": 35635, - "backdrop": 20802, - "backed": 12721, - "backer": 22183, - "backers": 32934, - "background": 5994, - "backgrounds": 28215, - "backing": 14935, - "backlash": 31519, - "backpack": 14894, - "backpacking": 29524, - "backpacks": 37063, - "backs": 7562, - "backseat": 48812, - "backstage": 9236, - "backstreet": 46337, - "backthe": 26127, - "backto": 18703, - "backtoschool": 28730, - "backtothe": 43059, - "backup": 14415, - "backward": 37964, - "backwards": 21283, - "backyard": 12608, - "bacon": 48666, - "bacon": 7104, - "bacter": 11814, - "bacteria": 16556, - "bacterial": 26101, - "bad": 2564, - "bad": 2103, - "bada": 37475, - "badan": 39149, - "badass": 11616, - "baddest": 38112, - "baden": 36690, - "bader": 42254, - "badge": 11301, - "badger": 32686, - "badger": 22363, - "badgers": 22521, - "badges": 20084, - "badlands": 43192, - "badly": 13684, - "badminton": 21412, - "badoo": 33192, - "bados": 25755, - "bae": 32834, - "bae": 6855, - "baek": 18557, - "baek": 32702, - "baekhyun": 21572, - "baes": 46332, - "baf": 13616, - "baff": 35693, - "bafta": 29199, - "bag": 3408, - "bag": 3365, - "bage": 9698, - "bagel": 28777, - "bagels": 37489, - "baggage": 31402, - "bagged": 34047, - "bagh": 21659, - "bagh": 37271, - "baghdad": 30763, - "bago": 25105, - "bags": 6136, - "bagu": 27749, - "baguette": 45334, - "bah": 8372, - "bah": 16685, - "baha": 29592, - "baham": 43718, - "bahamas": 21224, - "bahan": 28704, - "bahn": 33452, - "bahrain": 12503, - "bai": 6232, - "bai": 23339, - "bail": 22933, - "bail": 16986, - "bailey": 27535, - "bailey": 10180, - "bain": 40784, - "bain": 21593, - "bair": 29059, - "baird": 40474, - "bait": 18010, - "baj": 20713, - "baja": 40418, - "baja": 28374, - "bajo": 32619, - "bak": 4059, - "bak": 23742, - "bakar": 41414, - "bake": 20736, - "bake": 11878, - "baked": 10364, - "baker": 27303, - "baker": 7743, - "bakers": 35293, - "bakers": 40231, - "bakersfield": 40149, - "bakery": 13377, - "bakes": 43057, - "bakhta": 44912, - "bakhtawar": 46937, - "bakhtawarbz": 47118, - "baking": 11467, - "baku": 46417, - "baku": 31852, - "bal": 1398, - "bal": 2282, - "bala": 20291, - "balaji": 48694, - "balance": 42894, - "balance": 6827, - "balanced": 15273, - "balances": 37733, - "balancing": 23541, - "balboa": 45098, - "balcony": 16169, - "bald": 11153, - "bald": 14875, - "baldhead": 29191, - "baldwin": 16242, - "bale": 48573, - "bale": 18873, - "bales": 42879, - "bali": 16432, - "bali": 10900, - "balkan": 48499, - "balkans": 42987, - "ball": 3807, - "ball": 1069, - "balla": 42246, - "ballad": 33472, - "ballarat": 46645, - "ballard": 31750, - "baller": 49194, - "baller": 25655, - "ballerina": 34962, - "ballers": 34173, - "ballet": 10703, - "balli": 29406, - "ballin": 47444, - "ballin": 33057, - "balling": 47588, - "ballis": 46675, - "ballistic": 36667, - "ballo": 8871, - "ballon": 36469, - "balloon": 13634, - "balloons": 18130, - "ballot": 14185, - "ballots": 35051, - "ballpark": 26080, - "ballroom": 15493, - "balls": 6927, - "bally": 17275, - "bally": 29451, - "balm": 24962, - "balmain": 45929, - "balo": 12395, - "baloch": 23173, - "balochistan": 21918, - "balot": 44615, - "balotelli": 45721, - "bals": 44154, - "balsam": 29121, - "balsamic": 32654, - "balt": 24441, - "balti": 8400, - "baltic": 23817, - "baltimore": 38502, - "baltimore": 9582, - "balu": 38093, - "bam": 6383, - "bam": 12686, - "bama": 20021, - "bambam": 34538, - "bambi": 46596, - "bamboo": 49322, - "bamboo": 16748, - "ban": 1159, - "ban": 2777, - "bana": 18428, - "banan": 38410, - "banana": 8922, - "bananas": 19121, - "banc": 39252, - "band": 4613, - "band": 1963, - "banda": 31865, - "bandai": 42054, - "bandana": 39265, - "bandcamp": 32229, - "banded": 37804, - "bandic": 44400, - "bandit": 27639, - "bandits": 33940, - "bandra": 41393, - "bands": 7858, - "bandung": 29512, - "bandwagon": 36432, - "bandwidth": 48859, - "bane": 9597, - "banerjee": 48102, - "banff": 29565, - "bang": 3524, - "bang": 6907, - "bangalore": 14697, - "banger": 24872, - "bangers": 38311, - "banging": 33033, - "bangkok": 12351, - "bangla": 10339, - "bangla": 45928, - "bangladesh": 11245, - "bangle": 37634, - "bangor": 31190, - "bangs": 27992, - "bangtan": 39131, - "bani": 19732, - "banjo": 27014, - "bank": 7061, - "bank": 2723, - "banker": 27316, - "bankers": 30599, - "bankholiday": 48868, - "banking": 9566, - "bankno": 49201, - "bankof": 39120, - "bankrup": 21904, - "bankrupt": 23077, - "bankrupt": 37288, - "bankruptcy": 23978, - "banks": 6367, - "banksy": 33350, - "bann": 5304, - "banned": 12012, - "banner": 9185, - "banners": 23145, - "banning": 26246, - "bannon": 29710, - "bano": 42947, - "banquet": 14254, - "bans": 15146, - "bant": 23301, - "bant": 46657, - "banter": 25535, - "bao": 39487, - "bao": 20408, - "bap": 7415, - "bap": 23754, - "bapti": 15477, - "baptism": 36765, - "baptist": 13274, - "baptiste": 45770, - "baptized": 45400, - "bar": 1040, - "bar": 2411, - "bara": 19345, - "barack": 18670, - "barack": 22481, - "barackobama": 18885, - "barak": 47419, - "barak": 16260, - "barang": 38446, - "barb": 24173, - "barb": 20913, - "barbados": 26992, - "barbar": 7906, - "barbara": 10937, - "barbarian": 42530, - "barbe": 18372, - "barbecue": 23501, - "barber": 19517, - "barber": 12296, - "barbershop": 37707, - "barbican": 47668, - "barbie": 16923, - "barca": 22942, - "barcel": 6134, - "barcelon": 47820, - "barcelona": 6412, - "barclay": 48877, - "barclay": 45276, - "barclays": 29538, - "bard": 39812, - "bard": 17514, - "bare": 16023, - "bare": 14318, - "barefoot": 30327, - "barely": 12684, - "bargain": 15076, - "bargaining": 41282, - "bargains": 34126, - "barge": 28272, - "bari": 21428, - "bari": 28016, - "barista": 31078, - "barit": 46300, - "bark": 32333, - "bark": 16560, - "barker": 20618, - "barking": 32676, - "barkley": 30266, - "barley": 22607, - "barlow": 25483, - "barn": 10490, - "barn": 10942, - "barnab": 43272, - "barnard": 44332, - "barne": 42527, - "barnes": 13102, - "barnet": 41943, - "barnett": 27650, - "barney": 24563, - "barns": 43759, - "barnsley": 37109, - "barnsley": 32153, - "baro": 17422, - "baro": 30817, - "baron": 48371, - "baron": 19349, - "baroness": 45056, - "barons": 45596, - "baroque": 25065, - "barr": 39473, - "barr": 22492, - "barra": 28442, - "barra": 33542, - "barrabest": 41376, - "barrac": 40835, - "barracks": 35822, - "barre": 13840, - "barre": 38257, - "barred": 33261, - "barrel": 11703, - "barrels": 22059, - "barren": 46743, - "barrett": 18701, - "barri": 8660, - "barric": 29189, - "barrie": 27090, - "barrier": 15706, - "barriers": 16321, - "barrington": 48954, - "barron": 34881, - "barrow": 42568, - "barrow": 24983, - "barry": 18028, - "barry": 8461, - "barrymore": 49310, - "bars": 8616, - "barstool": 44826, - "bart": 14838, - "bart": 12870, - "bartender": 33498, - "barthol": 48989, - "bartlett": 37130, - "bartol": 38209, - "barton": 48853, - "barton": 20345, - "baru": 16356, - "barun": 38278, - "barunsob": 41398, - "barça": 32788, - "bas": 1244, - "bas": 11420, - "basa": 26142, - "base": 2776, - "base": 4579, - "baseball": 23479, - "baseball": 3470, - "based": 35196, - "based": 2812, - "basel": 42803, - "basel": 20903, - "baseline": 40648, - "baseman": 45910, - "basement": 14792, - "bases": 20496, - "bash": 20462, - "bash": 10972, - "bashing": 37545, - "bashir": 42799, - "basic": 40452, - "basic": 7696, - "basically": 9125, - "basics": 15825, - "basil": 19225, - "basil": 14936, - "basilica": 27879, - "basin": 16117, - "basing": 47321, - "basis": 12278, - "baske": 3713, - "basket": 10338, - "basketball": 40023, - "basketball": 3835, - "baskets": 27787, - "basking": 39769, - "basque": 37175, - "bass": 22831, - "bass": 5992, - "bassett": 45992, - "bassist": 26496, - "bast": 28092, - "basti": 8559, - "bastille": 41874, - "bat": 2121, - "bat": 6575, - "bata": 39277, - "batb": 33962, - "batch": 9413, - "bate": 25034, - "bate": 28277, - "bateman": 41635, - "bates": 21727, - "batgirl": 46460, - "bath": 6064, - "bath": 5713, - "bathing": 20144, - "bathro": 21201, - "bathroom": 8470, - "bathrooms": 26434, - "baths": 19442, - "bathtub": 39942, - "bathurst": 36365, - "bati": 23362, - "bati": 37589, - "batman": 27811, - "batman": 7223, - "baton": 24331, - "bats": 14984, - "batsman": 35432, - "batt": 2407, - "batt": 48595, - "battalion": 20820, - "batter": 12654, - "batter": 31855, - "battered": 34375, - "batteries": 16666, - "battersea": 35839, - "battery": 7870, - "batting": 17401, - "battle": 7344, - "battle": 3528, - "battled": 37837, - "battlefield": 16055, - "battlefront": 42214, - "battleof": 47560, - "battles": 14213, - "battleship": 35165, - "battling": 17268, - "bau": 6055, - "bau": 34840, - "bauer": 22903, - "baugh": 41301, - "baum": 19840, - "bautista": 31881, - "bav": 21075, - "bavaria": 39977, - "bavarian": 44458, - "baw": 19808, - "bax": 21216, - "baxter": 26168, - "bay": 3631, - "bay": 2174, - "baya": 31573, - "bayan": 43895, - "bayarea": 28260, - "bayer": 48548, - "bayer": 29183, - "bayern": 14666, - "baylor": 21721, - "bayou": 33955, - "bays": 40156, - "baz": 10430, - "baz": 25268, - "bazaar": 20070, - "bazar": 49298, - "bb": 1174, - "bb": 3529, - "bba": 27762, - "bball": 15664, - "bbb": 33535, - "bbc": 5123, - "bbc": 5188, - "bbcc": 39052, - "bbce": 33818, - "bbcnews": 29370, - "bbcone": 28259, - "bbcqt": 37343, - "bbcr": 35802, - "bbcra": 17115, - "bbcradi": 49213, - "bbcradio": 22876, - "bbcsport": 49321, - "bbcspringwatch": 37358, - "bbctwo": 40395, - "bbcworld": 47340, - "bbe": 37559, - "bbed": 9077, - "bber": 7933, - "bbers": 36494, - "bbhutto": 28085, - "bbhuttozardari": 28135, - "bbi": 37047, - "bbin": 38553, - "bbing": 9787, - "bbins": 42504, - "bbl": 21961, - "bble": 26570, - "bble": 5924, - "bbled": 37626, - "bbles": 18093, - "bblo": 21231, - "bbloggers": 26614, - "bbly": 43031, - "bbm": 25382, - "bbmas": 22145, - "bbn": 28427, - "bbnaija": 20984, - "bbo": 21892, - "bbq": 41270, - "bbq": 6726, - "bbs": 10002, - "bbuk": 45978, - "bby": 11166, - "bby": 3810, - "bc": 3116, - "bc": 2162, - "bcc": 41509, - "bcci": 36138, - "bce": 36510, - "bcfc": 34359, - "bch": 36684, - "bcn": 25766, - "bcoz": 46373, - "bcpoli": 24389, - "bcs": 24909, - "bcu": 28299, - "bd": 24358, - "bd": 11165, - "bday": 33022, - "bday": 5781, - "bdg": 48418, - "bds": 26732, - "be": 571, - "be": 655, - "bea": 21886, - "bea": 20925, - "beach": 6068, - "beach": 2117, - "beaches": 12183, - "beachlife": 43824, - "beacon": 36883, - "beacon": 18858, - "beacons": 39395, - "bead": 31621, - "bead": 23557, - "beaded": 26661, - "beads": 14099, - "beagle": 30044, - "beak": 36498, - "beal": 45769, - "beale": 39717, - "beam": 35339, - "beam": 13663, - "beams": 23993, - "bean": 16471, - "bean": 5328, - "beanie": 21534, - "beans": 8302, - "bear": 6375, - "bear": 4298, - "bearable": 38608, - "bearcats": 33242, - "beard": 26157, - "beard": 9052, - "bearded": 28459, - "beardown": 43687, - "beards": 33020, - "bearer": 30686, - "bearers": 47986, - "bearing": 18370, - "bearings": 42083, - "bearish": 34829, - "bears": 6182, - "beasley": 43349, - "beast": 20847, - "beast": 6957, - "beastmode": 43076, - "beasts": 21771, - "beat": 3774, - "beat": 3018, - "beaten": 10864, - "beater": 41974, - "beati": 44386, - "beating": 10078, - "beatles": 11961, - "beatport": 31421, - "beatrice": 36922, - "beats": 6289, - "beatthe": 40550, - "beatty": 39903, - "beatz": 33363, - "beau": 1016, - "beau": 14298, - "beaufort": 45423, - "beaumont": 32857, - "beaut": 24559, - "beauti": 1154, - "beauties": 14874, - "beautiful": 13662, - "beautiful": 1215, - "beautifully": 10627, - "beauty": 12881, - "beauty": 2488, - "beav": 23260, - "beaver": 26432, - "beaver": 22874, - "beavers": 34513, - "beavs": 43909, - "bebe": 23331, - "bec": 6899, - "bec": 10773, - "became": 5464, - "because": 32714, - "because": 1631, - "becca": 27088, - "bech": 44055, - "beck": 8256, - "beck": 10396, - "becker": 26918, - "beckett": 27249, - "beckham": 18764, - "becky": 32406, - "becky": 18921, - "become": 2989, - "becomes": 6766, - "becoming": 6208, - "bed": 4152, - "bed": 2722, - "bedding": 31761, - "bedford": 20779, - "bedi": 39181, - "bedro": 18415, - "bedroom": 8411, - "bedrooms": 23996, - "beds": 13914, - "bedside": 47473, - "bedtime": 22115, - "bee": 6097, - "bee": 5028, - "beech": 32733, - "beech": 27596, - "beef": 21703, - "beef": 6529, - "beek": 37915, - "been": 33986, - "been": 1025, - "beep": 33432, - "beer": 8885, - "beer": 2544, - "beers": 10907, - "bees": 36249, - "bees": 9100, - "beet": 12582, - "beet": 28621, - "beethoven": 23656, - "beetle": 16534, - "beetles": 36317, - "beetro": 29251, - "beetroot": 31638, - "beets": 36087, - "before": 20898, - "before": 1348, - "beg": 2219, - "beg": 22401, - "began": 8636, - "begg": 36769, - "begging": 25371, - "begin": 19197, - "begin": 4947, - "beginner": 24351, - "beginners": 21930, - "beginning": 5791, - "beginnings": 22581, - "begins": 4635, - "begs": 43531, - "begun": 10514, - "beh": 21971, - "beh": 41612, - "beha": 5737, - "behalf": 11470, - "behave": 28825, - "behaved": 41617, - "behavi": 6149, - "behaving": 40745, - "behavior": 10461, - "behavioral": 25135, - "behaviors": 37741, - "behaviour": 14655, - "behavioural": 46019, - "behe": 42329, - "behin": 2335, - "behind": 2403, - "behindthe": 21104, - "behindthescenes": 26253, - "behold": 15929, - "bei": 38991, - "bei": 23227, - "beige": 26677, - "beij": 11547, - "beijing": 11796, - "bein": 39117, - "bein": 24168, - "being": 13481, - "being": 1265, - "beings": 17998, - "beingsalmankhan": 19637, - "beir": 20176, - "beirut": 22352, - "beit": 26963, - "bek": 46846, - "bek": 26135, - "bekind": 46691, - "bel": 1308, - "bel": 3543, - "bela": 30555, - "belarus": 30849, - "belated": 20256, - "belfast": 35100, - "belfast": 10015, - "belgi": 7001, - "belgian": 15008, - "belgium": 10239, - "belgrade": 30502, - "beli": 1859, - "beli": 45842, - "belichick": 46132, - "belie": 20854, - "beliebers": 27714, - "belief": 14802, - "beliefs": 20575, - "believ": 4972, - "believe": 15819, - "believe": 2649, - "believed": 13380, - "believein": 24294, - "believeinfilm": 37375, - "believer": 26057, - "believers": 28434, - "believes": 12017, - "believing": 19551, - "belinda": 44415, - "belize": 27990, - "bell": 5417, - "bell": 3718, - "bella": 18282, - "bella": 10418, - "bellamy": 34461, - "bellator": 31985, - "belle": 13587, - "belle": 11496, - "belles": 40678, - "bellevue": 32715, - "belli": 43335, - "bellletstalk": 42695, - "bello": 21954, - "bells": 12811, - "bellum": 35493, - "belly": 25901, - "belly": 10404, - "belmont": 25612, - "belo": 8379, - "belo": 41649, - "belong": 16453, - "belong": 13596, - "belonged": 39893, - "belonging": 28193, - "belongs": 14395, - "beloved": 9363, - "below": 3788, - "bels": 43127, - "belt": 36416, - "belt": 7373, - "belts": 21888, - "belvedere": 48003, - "ben": 1465, - "ben": 3518, - "bena": 46249, - "bench": 17770, - "bench": 8771, - "benches": 36349, - "benchmark": 31775, - "bend": 22100, - "bend": 13332, - "bender": 22551, - "bendigo": 48197, - "bending": 33897, - "bene": 12091, - "bene": 47151, - "beneath": 16850, - "bened": 13216, - "benedic": 24402, - "benedict": 47896, - "benedict": 18027, - "benef": 3260, - "benefici": 38593, - "beneficial": 24660, - "beneficiaries": 42160, - "benefit": 6399, - "benefited": 48266, - "benefiting": 29474, - "benefits": 5465, - "benefitting": 47222, - "benevol": 47060, - "benfica": 33873, - "beng": 6962, - "bengal": 17404, - "bengal": 16374, - "bengali": 33774, - "bengals": 23737, - "bengaluru": 21707, - "benghazi": 25967, - "benin": 40296, - "benitez": 46711, - "benjam": 10550, - "benjamin": 38647, - "benjamin": 12131, - "benji": 43548, - "benn": 39097, - "bennet": 48536, - "bennett": 12186, - "benny": 42369, - "benny": 20595, - "beno": 35268, - "benoit": 44373, - "benson": 19578, - "bent": 9809, - "bent": 18369, - "bentley": 16859, - "benton": 30812, - "benz": 27937, - "benz": 13470, - "ber": 867, - "ber": 1516, - "bera": 32802, - "bere": 17458, - "bered": 9193, - "beren": 33654, - "beret": 41658, - "berg": 12022, - "berg": 3294, - "bergen": 22918, - "berger": 35933, - "berger": 13873, - "bergh": 35120, - "bergman": 42597, - "bergs": 43592, - "berk": 15633, - "berke": 14639, - "berkeley": 46049, - "berkeley": 16667, - "berkshire": 27300, - "berlin": 23532, - "berlin": 5891, - "berman": 21514, - "bermu": 21032, - "bermuda": 24644, - "bern": 9195, - "bern": 18382, - "bernade": 46242, - "bernar": 11962, - "bernard": 14579, - "bernardino": 35328, - "bernardo": 27137, - "bernardo": 28696, - "bernardokath": 29081, - "bernat": 40578, - "berni": 18798, - "bernie": 40093, - "bernie": 10503, - "berniesanders": 23745, - "bernstein": 33936, - "berra": 15089, - "berries": 8319, - "berry": 15334, - "berry": 3488, - "bers": 6408, - "berser": 39037, - "bert": 17340, - "bert": 2358, - "berta": 45187, - "berth": 28317, - "bertie": 47182, - "berto": 34073, - "bertr": 36962, - "bertrand": 41594, - "berts": 30205, - "berty": 35973, - "berwick": 40407, - "bery": 11411, - "bes": 26911, - "bes": 3635, - "beside": 13519, - "besides": 17596, - "bespoke": 15612, - "bess": 43791, - "best": 3419, - "best": 949, - "bestbuy": 29749, - "bestest": 31199, - "bestfan": 23880, - "bestfanarmy": 24590, - "bestfriend": 29832, - "bestfriend": 11856, - "bestfriends": 23555, - "besti": 35210, - "bestie": 17188, - "besties": 27346, - "besto": 28615, - "bestof": 27892, - "bestof": 39533, - "bestseller": 25841, - "bestselling": 28632, - "bet": 1051, - "bet": 4430, - "beta": 43188, - "beta": 9505, - "betes": 10255, - "beth": 9993, - "beth": 4892, - "bethan": 18781, - "bethany": 39130, - "bethany": 27952, - "bethe": 12624, - "bethel": 33410, - "bethesda": 32527, - "bethle": 30760, - "bethlehem": 31827, - "betis": 45590, - "beto": 33721, - "betra": 18436, - "betrayal": 33171, - "betrayed": 35692, - "bets": 17107, - "betsy": 28946, - "bett": 17715, - "bett": 20489, - "betta": 36387, - "bette": 35855, - "better": 10320, - "better": 1539, - "bettertogether": 47392, - "betting": 14319, - "betts": 38637, - "betty": 36175, - "betty": 14350, - "between": 1957, - "beu": 38660, - "bev": 40324, - "bev": 30968, - "bever": 9924, - "beverage": 18694, - "beverages": 28521, - "beverley": 39165, - "beverly": 30906, - "beverly": 16728, - "beverlyhills": 45363, - "beware": 14532, - "bewithyou": 36787, - "bex": 18676, - "bex": 24748, - "bexhill": 49200, - "bey": 3234, - "bey": 6767, - "beyon": 11447, - "beyonce": 16632, - "beyoncé": 19219, - "beyond": 22246, - "beyond": 4432, - "bez": 28592, - "bez": 46764, - "bezos": 45000, - "bf": 19858, - "bf": 7990, - "bfc": 37183, - "bff": 11984, - "bffs": 31462, - "bfi": 34244, - "bg": 16674, - "bg": 11295, - "bgc": 47598, - "bgs": 47963, - "bgt": 40665, - "bh": 9930, - "bh": 13603, - "bha": 6144, - "bha": 33068, - "bhafc": 30779, - "bhagat": 49136, - "bhai": 48370, - "bhai": 20508, - "bhak": 34501, - "bham": 31874, - "bham": 23491, - "bhan": 27356, - "bhand": 48679, - "bhar": 9108, - "bharat": 27454, - "bharat": 17430, - "bharti": 46803, - "bhat": 23784, - "bhatt": 36143, - "bhav": 44950, - "bhi": 28943, - "bhi": 21955, - "bhk": 45070, - "bhm": 38741, - "bho": 19721, - "bhopal": 44573, - "bhp": 29776, - "bhs": 29195, - "bhu": 9172, - "bhuban": 38729, - "bhubanes": 41213, - "bhubaneswar": 45888, - "bhushan": 40884, - "bhutan": 32391, - "bhutto": 30153, - "bi": 717, - "bi": 3035, - "bia": 3841, - "biaf": 26961, - "biafra": 36355, - "bian": 19531, - "bian": 9027, - "bianca": 25854, - "bianchi": 45720, - "bians": 28141, - "bias": 11268, - "biased": 22178, - "bib": 44607, - "bib": 21022, - "bibi": 31182, - "bibl": 20912, - "bible": 26738, - "bible": 7583, - "bibli": 23465, - "biblical": 22841, - "biblio": 49131, - "bic": 5960, - "bic": 10675, - "bice": 35589, - "biceps": 46735, - "bick": 27238, - "bicy": 9247, - "bicycle": 11652, - "bicycles": 31326, - "bid": 21035, - "bid": 5553, - "bidding": 23237, - "bide": 45178, - "biden": 19451, - "bids": 16148, - "bie": 5561, - "bie": 4173, - "bieber": 48725, - "bieber": 7535, - "bien": 19176, - "bien": 25742, - "biennale": 33776, - "biennial": 36609, - "bier": 27226, - "bier": 23508, - "bies": 7867, - "big": 1915, - "big": 1205, - "bigbaldhead": 30325, - "bigbang": 41680, - "bigbang": 23734, - "bigdata": 9440, - "bige": 37762, - "bigfoot": 37095, - "bigg": 15312, - "bigg": 35399, - "biggboss": 27056, - "bigger": 6806, - "biggest": 19483, - "biggest": 3505, - "biggie": 28392, - "biggs": 46507, - "bigh": 18106, - "bighit": 35508, - "bigo": 14278, - "bigolive": 20735, - "bigotry": 37269, - "bigre": 36330, - "bih": 33471, - "bihar": 22849, - "bij": 42478, - "bik": 30306, - "bike": 11686, - "bike": 3701, - "biker": 36100, - "biker": 23449, - "bikers": 29468, - "bikes": 9227, - "bikin": 12638, - "biking": 19157, - "bikini": 14531, - "bil": 3092, - "bil": 20506, - "bilateral": 25599, - "bilbao": 34802, - "bild": 35512, - "bile": 25943, - "bilingual": 29623, - "bilities": 13582, - "bility": 4694, - "bill": 4444, - "bill": 2886, - "billboard": 10856, - "billboards": 34741, - "billed": 37558, - "billi": 7693, - "billie": 23990, - "billing": 31797, - "billings": 43615, - "billion": 14520, - "billion": 5729, - "billionaire": 19475, - "billionaires": 41590, - "billions": 20742, - "bills": 9810, - "billsmafia": 48845, - "billy": 15626, - "billy": 6814, - "bilt": 44770, - "bilt": 26654, - "bim": 46737, - "bim": 24775, - "bin": 4849, - "bin": 5346, - "binance": 43520, - "binary": 23497, - "bind": 44513, - "binder": 30541, - "binding": 21287, - "bine": 34848, - "bing": 24818, - "bing": 5665, - "binge": 22600, - "bingham": 43785, - "bingham": 47296, - "bingo": 18418, - "bino": 29172, - "bino": 24313, - "bins": 26934, - "bint": 43647, - "bio": 2830, - "bio": 5162, - "biode": 43502, - "biodegradable": 47740, - "biodiversity": 17428, - "biof": 45158, - "biographical": 49232, - "biography": 15423, - "biological": 18821, - "biologist": 35149, - "biology": 9796, - "biom": 13010, - "biomar": 44549, - "biomass": 36746, - "biome": 26218, - "biomed": 29280, - "biomedical": 33117, - "bionic": 46201, - "biop": 15009, - "biopic": 27942, - "bios": 48505, - "biotech": 22514, - "biotechnology": 40375, - "biotic": 33773, - "biotics": 41371, - "bious": 31845, - "bipartisan": 32266, - "bipolar": 37097, - "bique": 27809, - "bir": 921, - "bir": 16284, - "birch": 31569, - "birch": 22907, - "bird": 6908, - "bird": 3329, - "birdie": 29612, - "birdies": 45618, - "birding": 15851, - "birdman": 41915, - "birdphotography": 47999, - "birds": 41951, - "birds": 4337, - "birdwatching": 33497, - "birk": 48289, - "birken": 40661, - "birmin": 37482, - "birmingham": 38580, - "birmingham": 7720, - "birth": 1128, - "birth": 5397, - "birthday": 7381, - "birthday": 1166, - "birthdays": 17954, - "birthplace": 31429, - "biryani": 46489, - "bis": 5064, - "bis": 14461, - "biscu": 11532, - "biscuit": 18731, - "biscuits": 18248, - "bisexual": 36829, - "bish": 33690, - "bish": 31461, - "bishop": 20625, - "bishop": 8024, - "bishops": 31579, - "bison": 19741, - "bistro": 21770, - "bit": 3010, - "bit": 2010, - "bitcoin": 30848, - "bitcoin": 6366, - "bite": 41613, - "biting": 23016, - "bits": 7747, - "bitt": 39251, - "bius": 45525, - "bix": 46579, - "biz": 8212, - "biz": 5431, - "biza": 47013, - "bizar": 14886, - "bizarre": 16965, - "bizhour": 39462, - "bizitalk": 34929, - "bj": 4592, - "bj": 18229, - "bjj": 27437, - "bjor": 26525, - "bjp": 37264, - "bjp": 6178, - "bk": 15099, - "bk": 14083, - "bkk": 36433, - "bl": 833, - "bl": 9467, - "bla": 2205, - "bla": 19630, - "blac": 21008, - "black": 2025, - "black": 1449, - "blackand": 12809, - "blackandwhite": 23688, - "blackandwhite": 19506, - "blackandwhitephotography": 27544, - "blackberry": 16470, - "blackbird": 38526, - "blackburn": 23789, - "blackfish": 42193, - "blackfriday": 16445, - "blackgirl": 43591, - "blackhawks": 19203, - "blackhistory": 46982, - "blackhistorymonth": 20135, - "blacklist": 30295, - "blacklivesmatter": 23467, - "blackmail": 47295, - "blackops": 43519, - "blackout": 21733, - "blackpanther": 36592, - "blackpink": 20339, - "blackpool": 21031, - "blacks": 16351, - "blackwell": 42642, - "blad": 36635, - "bladder": 33593, - "blade": 10264, - "blades": 16893, - "blah": 29212, - "blaine": 32457, - "blair": 31824, - "blair": 14749, - "blake": 20229, - "blake": 9579, - "blame": 10695, - "blamed": 32906, - "blames": 27841, - "blaming": 29287, - "blan": 4609, - "blanc": 30936, - "blanc": 13301, - "blanca": 40670, - "blanchard": 40177, - "blanche": 34875, - "blanchett": 49378, - "blanco": 26801, - "bland": 44372, - "bland": 30799, - "blank": 15134, - "blanket": 12878, - "blankets": 24042, - "blanks": 48599, - "blasio": 35553, - "blasphe": 36622, - "blast": 46349, - "blast": 5964, - "blasted": 38976, - "blaster": 36341, - "blasting": 26178, - "blasts": 23067, - "blat": 22048, - "blatant": 41391, - "blatt": 39138, - "blau": 45307, - "blaz": 43413, - "blaze": 15497, - "blazer": 17606, - "blazers": 16984, - "blazing": 25267, - "bldg": 22981, - "ble": 1447, - "ble": 1059, - "bleach": 27034, - "bleak": 40355, - "bled": 12006, - "bleed": 23027, - "bleed": 24791, - "bleedblue": 39160, - "bleeding": 20311, - "bleeds": 47339, - "blen": 25651, - "blend": 10780, - "blended": 25813, - "blender": 25066, - "blending": 34307, - "blends": 28572, - "bler": 31305, - "bler": 11979, - "blers": 26930, - "bles": 5763, - "bless": 9640, - "bless": 5387, - "blessed": 4411, - "blessing": 10729, - "blessings": 11185, - "bleu": 30114, - "blew": 18176, - "bley": 43176, - "bli": 1450, - "bli": 28051, - "blin": 9678, - "blin": 5406, - "blind": 17248, - "blind": 8351, - "blinded": 49149, - "blindness": 38812, - "blinds": 32449, - "bling": 39764, - "bling": 7097, - "blink": 18976, - "bliss": 28531, - "bliss": 12893, - "blissful": 42145, - "blit": 39327, - "blitz": 42151, - "blitz": 17548, - "blizz": 13075, - "blizzard": 16111, - "blk": 42950, - "blk": 22872, - "blm": 30957, - "bln": 47348, - "blo": 1204, - "blo": 25505, - "blob": 49312, - "bloc": 30961, - "block": 4638, - "block": 4593, - "blockade": 33489, - "blockbuster": 19939, - "blockchain": 6653, - "blocked": 9106, - "blocker": 44767, - "blocking": 12652, - "blocks": 10113, - "blog": 16376, - "blog": 2589, - "blogg": 33282, - "blogged": 41380, - "blogger": 21352, - "blogger": 7806, - "bloggerrt": 48898, - "bloggers": 11627, - "blogging": 18090, - "blogpost": 41842, - "blogs": 16682, - "bloke": 24384, - "blom": 48996, - "blon": 7958, - "blond": 32426, - "blonde": 10711, - "blondes": 45130, - "blondie": 39236, - "bloo": 2373, - "blood": 9231, - "blood": 3590, - "blooded": 41946, - "bloodh": 48480, - "bloods": 39539, - "bloody": 38568, - "bloody": 9468, - "bloom": 7311, - "bloom": 10257, - "bloomberg": 43109, - "bloomberg": 21238, - "bloomfield": 40342, - "blooming": 45175, - "blooming": 19266, - "bloomington": 34731, - "blooms": 21439, - "bloss": 10017, - "blossom": 14472, - "blossoms": 21916, - "blot": 41710, - "blou": 44506, - "blouse": 23525, - "blow": 15230, - "blow": 10211, - "blower": 25832, - "blowing": 12087, - "blown": 11848, - "blowout": 34857, - "blows": 21063, - "blr": 47250, - "bls": 39458, - "blu": 1263, - "blu": 10273, - "blue": 3829, - "blue": 1746, - "bluebells": 47150, - "blueberries": 29551, - "blueberry": 18251, - "bluebird": 40747, - "bluec": 43194, - "bluef": 41174, - "bluegrass": 26241, - "bluejays": 18684, - "blueprint": 30594, - "blues": 17566, - "blues": 5159, - "blueslyrix": 47068, - "bluet": 13469, - "bluetooth": 14052, - "bluewave": 40025, - "bluff": 27232, - "bluffs": 48844, - "blum": 34818, - "blumen": 38714, - "blun": 34472, - "blunt": 19305, - "blur": 12102, - "blur": 27976, - "bluray": 36818, - "blurred": 38013, - "blurry": 21977, - "blush": 22889, - "blvd": 12578, - "bly": 20930, - "bly": 4426, - "bm": 4773, - "bm": 15916, - "bma": 42573, - "bmc": 27807, - "bmi": 40642, - "bmo": 39083, - "bms": 34074, - "bmw": 26637, - "bmw": 7869, - "bmx": 22535, - "bn": 10496, - "bn": 7992, - "bnb": 20010, - "bnha": 49336, - "bnp": 47910, - "bnw": 35903, - "bo": 647, - "bo": 2525, - "boa": 14732, - "boar": 7837, - "boar": 35473, - "board": 10419, - "board": 1972, - "boarded": 43052, - "boarder": 37414, - "boardgame": 47829, - "boardgames": 32646, - "boarding": 10086, - "boardroom": 47937, - "boards": 7963, - "boardwalk": 29043, - "boast": 44467, - "boasts": 30309, - "boat": 12426, - "boat": 4440, - "boath": 45461, - "boating": 21951, - "boats": 10080, - "boatsales": 46244, - "bob": 8444, - "bob": 4423, - "boba": 39948, - "bobb": 16891, - "bobble": 38796, - "bobblehead": 33451, - "bobby": 17847, - "bobby": 7816, - "bobc": 26153, - "bobcat": 37896, - "bobcats": 27568, - "bobo": 38939, - "bobs": 45533, - "boc": 27307, - "boc": 39042, - "boca": 26094, - "bock": 24961, - "bod": 17904, - "bod": 26340, - "boda": 42030, - "bode": 28452, - "bode": 40429, - "bodega": 47350, - "bodied": 36892, - "bodies": 9799, - "bodily": 49119, - "body": 7132, - "body": 1774, - "bodybuilding": 24538, - "bodyguard": 35565, - "boe": 23476, - "boe": 21773, - "boeh": 38002, - "boehner": 44599, - "boeing": 48135, - "boeing": 11857, - "boer": 44889, - "boer": 40768, - "bog": 23426, - "bog": 28318, - "bogo": 35769, - "bogota": 47059, - "bogus": 42907, - "boh": 43238, - "bohe": 40541, - "bohemi": 21552, - "bohemian": 25753, - "boho": 25444, - "boi": 37129, - "boi": 12673, - "boil": 31332, - "boiled": 23886, - "boiler": 28212, - "boiler": 25615, - "boiling": 32019, - "bois": 47742, - "bois": 21640, - "boise": 23304, - "bok": 26671, - "bok": 15289, - "boko": 30929, - "boks": 40216, - "bol": 2860, - "bol": 8413, - "bola": 12840, - "bold": 26975, - "bold": 8911, - "boldand": 48413, - "boldly": 44778, - "boli": 12722, - "bolic": 27343, - "bolivia": 28628, - "bollah": 36336, - "bolly": 25302, - "bollywood": 32448, - "bollywood": 9604, - "bolo": 40236, - "bolog": 22818, - "bologna": 27513, - "bolster": 47304, - "bolt": 13131, - "bolton": 48757, - "bolton": 16598, - "bolts": 26028, - "bom": 3012, - "bom": 19469, - "bomb": 18091, - "bomb": 6331, - "bombar": 25544, - "bombardier": 42700, - "bombay": 48602, - "bombay": 23890, - "bombed": 24542, - "bomber": 15436, - "bombers": 21786, - "bombing": 14475, - "bombings": 43236, - "bombs": 14410, - "bombshell": 36340, - "bon": 1871, - "bon": 4216, - "bona": 33342, - "bonanza": 40304, - "bond": 37022, - "bond": 6826, - "bonded": 37390, - "bondi": 40092, - "bonding": 19609, - "bonds": 15786, - "bone": 22502, - "bone": 6195, - "bones": 9476, - "bonfire": 23151, - "bongo": 47519, - "boni": 32269, - "boni": 46356, - "bonita": 42896, - "bonjour": 33176, - "bonkers": 39865, - "bonn": 38969, - "bonnar": 47191, - "bonnaroo": 48777, - "bonne": 25844, - "bonnet": 30636, - "bonnie": 18555, - "bono": 24476, - "bons": 42883, - "bonsai": 44129, - "bonus": 8164, - "bonuses": 35144, - "boo": 824, - "boo": 7317, - "boogie": 22639, - "book": 2828, - "book": 1116, - "bookboost": 31257, - "bookclub": 34438, - "bookday": 26327, - "booked": 12584, - "booker": 21302, - "bookfest": 39381, - "booking": 10145, - "bookings": 18345, - "booklet": 27405, - "bookmark": 33596, - "bookof": 45629, - "bookreview": 27362, - "books": 44382, - "books": 2161, - "bookshelf": 34821, - "bookshop": 24705, - "bookstore": 17999, - "bookstores": 46416, - "bookworm": 20743, - "boom": 9609, - "boom": 7121, - "boomer": 33819, - "boomer": 31766, - "boomers": 37988, - "booming": 33487, - "boon": 24979, - "boon": 35821, - "boone": 23453, - "boop": 45047, - "boost": 44639, - "boost": 6260, - "boosted": 37631, - "booster": 20877, - "boosters": 46859, - "boosting": 28480, - "boosts": 29247, - "boot": 10843, - "boot": 8087, - "bootcamp": 22051, - "booted": 42564, - "booth": 47895, - "booth": 3971, - "booths": 32653, - "booties": 46188, - "bootleg": 38139, - "boots": 7319, - "booze": 24341, - "bop": 19720, - "bor": 1141, - "bor": 15093, - "bora": 24736, - "bord": 36891, - "bordeaux": 22009, - "border": 16304, - "border": 6177, - "borderlands": 38676, - "borders": 13900, - "bore": 14084, - "bore": 24638, - "bored": 8933, - "boredom": 31460, - "boretum": 38902, - "borg": 14770, - "borgh": 17180, - "boring": 12519, - "boris": 31212, - "boris": 15704, - "borisjohnson": 44481, - "born": 17695, - "born": 2683, - "borne": 42910, - "borne": 9328, - "borneo": 33332, - "bornon": 41811, - "bornonthisday": 42757, - "boro": 26796, - "boro": 7974, - "borough": 22761, - "borough": 6203, - "borrow": 22293, - "borrowed": 28224, - "borrowing": 41045, - "borussia": 36764, - "bos": 14885, - "bos": 9644, - "bosa": 46946, - "bosch": 42009, - "bosch": 19466, - "bosco": 36960, - "bose": 23142, - "bosh": 42244, - "bosni": 42924, - "bosnia": 31396, - "boss": 17935, - "boss": 4206, - "bosses": 23906, - "boston": 11540, - "boston": 4399, - "bostonmarathon": 44533, - "bot": 4136, - "bot": 6947, - "botan": 12554, - "botanic": 32560, - "botanical": 21026, - "botany": 22612, - "botd": 34451, - "both": 36575, - "both": 2212, - "bother": 21125, - "bothered": 27997, - "botox": 43449, - "bots": 13721, - "botswana": 27584, - "bott": 3520, - "bott": 37225, - "bottle": 37306, - "bottle": 5392, - "bottled": 29331, - "bottlen": 46439, - "bottles": 9754, - "bottling": 42006, - "bottom": 32314, - "bottom": 5931, - "bottoms": 31524, - "bou": 3728, - "bou": 23165, - "bouchard": 47930, - "boudo": 48827, - "bought": 4142, - "boul": 24830, - "boulder": 18260, - "boule": 17652, - "boulevard": 19504, - "boun": 5993, - "bounce": 14316, - "bouncing": 32060, - "bouncy": 43415, - "bound": 15140, - "bound": 4567, - "boundaries": 18690, - "boundary": 21344, - "bounds": 37469, - "bounty": 21142, - "bouquet": 20961, - "bour": 2934, - "bour": 35486, - "bourbon": 48118, - "bourbon": 14652, - "bourdain": 48095, - "bourg": 20690, - "bourgeo": 45672, - "bourn": 39143, - "bourne": 13789, - "bourne": 5192, - "bournemouth": 20911, - "bout": 19982, - "bout": 8123, - "bouti": 10926, - "boutique": 12179, - "bow": 2297, - "bow": 4040, - "bowden": 48538, - "bowed": 49130, - "bowel": 36880, - "bowen": 25368, - "bower": 40414, - "bowers": 42238, - "bowie": 13036, - "bowing": 46398, - "bowl": 26719, - "bowl": 3814, - "bowled": 39987, - "bowler": 25528, - "bowlers": 42632, - "bowles": 41611, - "bowling": 10390, - "bowls": 17787, - "bowman": 22052, - "bows": 17000, - "bowser": 38234, - "bowski": 48311, - "box": 2774, - "box": 2063, - "boxed": 24190, - "boxer": 40394, - "boxer": 15363, - "boxers": 31019, - "boxes": 8350, - "boxing": 33669, - "boxing": 5554, - "boy": 2927, - "boy": 1876, - "boyband": 31568, - "boyce": 44480, - "boycot": 46208, - "boycott": 31615, - "boycott": 19559, - "boyd": 18295, - "boyfriend": 7328, - "boyfriends": 36541, - "boyle": 22802, - "boys": 25223, - "boys": 2034, - "boyz": 16152, - "bp": 23410, - "bp": 11558, - "bpa": 43855, - "bpd": 48587, - "bpl": 28901, - "bpm": 40338, - "bps": 37794, - "br": 711, - "br": 7532, - "bra": 1195, - "bra": 5860, - "brac": 6663, - "brace": 8376, - "brace": 9183, - "bracelet": 8969, - "bracelets": 20027, - "braces": 19249, - "brack": 25676, - "bracket": 14780, - "brackets": 36183, - "brad": 4848, - "brad": 9405, - "bradbury": 45097, - "braden": 46842, - "bradford": 15062, - "bradley": 31905, - "bradley": 10952, - "brador": 24062, - "bradshaw": 37556, - "brady": 42494, - "brady": 11117, - "brae": 42874, - "brae": 40040, - "brag": 30110, - "bragg": 38545, - "bragging": 38199, - "brah": 20276, - "brahms": 45114, - "brai": 25048, - "braid": 31067, - "braided": 39997, - "braids": 34221, - "brain": 9454, - "brain": 4812, - "brains": 17129, - "brainstorming": 36607, - "braised": 28363, - "brake": 14937, - "brakes": 23456, - "bral": 31309, - "bram": 14815, - "bram": 39456, - "brampton": 35124, - "bran": 3684, - "bran": 28348, - "brance": 36072, - "brance": 15413, - "branch": 7998, - "branches": 15843, - "brand": 3910, - "brand": 2896, - "branded": 18097, - "brandi": 41003, - "branding": 10841, - "brando": 41892, - "brandon": 20423, - "brandon": 9166, - "brands": 8681, - "brandt": 22552, - "brandy": 26232, - "brane": 32340, - "branson": 28280, - "brant": 28951, - "brant": 47592, - "braries": 46377, - "brary": 24520, - "bras": 22611, - "brasil": 18991, - "brass": 24348, - "brass": 11655, - "brat": 26717, - "brat": 26631, - "brate": 41864, - "braun": 39129, - "braun": 29309, - "brave": 25461, - "brave": 7769, - "braved": 47663, - "bravely": 42303, - "bravery": 25831, - "braves": 14422, - "braving": 43258, - "bravo": 38613, - "bravo": 13006, - "braw": 37871, - "brawl": 26066, - "braxton": 37451, - "bray": 26256, - "bray": 22993, - "braz": 4625, - "brazil": 47459, - "brazil": 6305, - "brazili": 45697, - "brazilian": 12111, - "brb": 25316, - "brc": 40393, - "bre": 887, - "bre": 7782, - "brea": 7318, - "brea": 46538, - "breach": 21363, - "breaches": 45173, - "bread": 18886, - "bread": 5066, - "breads": 43064, - "break": 2206, - "break": 2568, - "breakable": 30691, - "breakaway": 42732, - "breakdown": 14519, - "breaker": 14814, - "breakers": 22270, - "breakfa": 45931, - "breakfast": 30210, - "breakfast": 3290, - "breaking": 14698, - "breaking": 2755, - "breakingbad": 38032, - "breakingnews": 23837, - "breakout": 16752, - "breaks": 7263, - "breakthrough": 18802, - "breakup": 38931, - "breast": 12930, - "breast": 9475, - "breastcancer": 40813, - "breastcancer": 30065, - "breastfeeding": 29033, - "breasts": 37637, - "breath": 9508, - "breath": 9576, - "breathe": 11364, - "breathing": 14959, - "breathtaking": 14709, - "brecht": 34622, - "breck": 44598, - "bred": 46929, - "bred": 16008, - "bree": 7892, - "bree": 37138, - "breed": 28030, - "breed": 13791, - "breeders": 37472, - "breeding": 16544, - "breeds": 29021, - "breen": 48013, - "brees": 46721, - "breeze": 13125, - "breezy": 21451, - "breit": 23864, - "breitbart": 37926, - "brek": 35494, - "bremen": 39861, - "bren": 5209, - "brenda": 23786, - "brendan": 35134, - "brendan": 15414, - "brendon": 36756, - "brennan": 22372, - "brenner": 42941, - "brent": 31439, - "brent": 16355, - "brentwood": 33108, - "brero": 47781, - "bres": 32561, - "bret": 38020, - "bret": 32548, - "brethren": 43134, - "breton": 32290, - "brett": 22591, - "brett": 12394, - "brev": 42882, - "brevi": 39475, - "brew": 5048, - "brew": 7253, - "brewco": 33582, - "brewed": 23238, - "brewer": 20756, - "breweries": 35277, - "brewers": 17618, - "brewery": 8850, - "brewing": 8275, - "brewingco": 45155, - "brews": 21663, - "brewster": 40274, - "brex": 22726, - "brexit": 27666, - "brexit": 5801, - "brgy": 35983, - "bri": 1036, - "bri": 18636, - "bria": 35890, - "brian": 9824, - "brian": 4989, - "brianna": 32308, - "briar": 46119, - "bribe": 40042, - "bribery": 41792, - "bric": 27055, - "brice": 40190, - "brick": 13937, - "brick": 9518, - "bricks": 21029, - "brics": 48196, - "brid": 16995, - "bridal": 36875, - "bridal": 14284, - "bride": 18342, - "bride": 8964, - "brides": 18067, - "bridesma": 28356, - "bridesmaid": 43399, - "bridesmaids": 47754, - "bridg": 20623, - "bridge": 8647, - "bridge": 2465, - "bridgeport": 45201, - "bridges": 11811, - "bridget": 27073, - "bridgewater": 38732, - "bridging": 38109, - "brie": 26622, - "brief": 9435, - "brief": 8954, - "briefed": 47326, - "briefing": 12991, - "briefly": 26980, - "briefs": 29557, - "brien": 13504, - "brier": 43995, - "brig": 11081, - "briga": 46448, - "brigade": 16032, - "briggs": 28108, - "brigh": 6710, - "bright": 10383, - "bright": 4852, - "brighten": 18208, - "brightening": 43929, - "brighter": 18507, - "brightest": 26159, - "brightly": 36298, - "brightness": 42280, - "brighton": 28416, - "brighton": 9470, - "brigitte": 44421, - "brill": 27342, - "brill": 28601, - "brilli": 3821, - "brilliance": 28146, - "brilliant": 4106, - "brilliantly": 26803, - "brin": 25620, - "bring": 11596, - "bring": 2430, - "bringback": 28969, - "bringbackour": 45403, - "bringing": 4777, - "brings": 5138, - "brink": 39296, - "brink": 28796, - "brioche": 45818, - "bris": 9385, - "bris": 15783, - "brisban": 30431, - "brisbane": 42932, - "brisbane": 12407, - "brisk": 43646, - "brisket": 31920, - "bristol": 18159, - "bristol": 8010, - "brit": 2318, - "brit": 20066, - "britain": 40802, - "britain": 6272, - "britanni": 31373, - "britannia": 36188, - "brite": 33827, - "briti": 8155, - "british": 8651, - "british": 3504, - "britishmuseum": 41858, - "britney": 37192, - "britney": 21853, - "britneyspears": 42990, - "brits": 21832, - "britt": 10811, - "britt": 25976, - "brittany": 38187, - "brittany": 18818, - "britton": 37422, - "brium": 46079, - "brixton": 30056, - "bro": 927, - "bro": 4410, - "broad": 3491, - "broad": 12623, - "broadband": 21050, - "broadcast": 8967, - "broadcaster": 29005, - "broadcasting": 14403, - "broadcasts": 46742, - "broader": 36029, - "broadway": 34599, - "broadway": 9092, - "broc": 15587, - "broccoli": 19094, - "broch": 21419, - "brochure": 25275, - "brock": 14841, - "brock": 16745, - "brodie": 42150, - "brody": 29608, - "broke": 42165, - "broke": 6509, - "broken": 26126, - "broken": 5107, - "broker": 34032, - "broker": 20449, - "brokerage": 41327, - "brokers": 28271, - "brom": 18972, - "brom": 33296, - "bromance": 35353, - "bromley": 35715, - "bron": 4011, - "bron": 10243, - "bronco": 43488, - "bronco": 34370, - "broncos": 12516, - "bronson": 37042, - "bronte": 48936, - "bronx": 48310, - "bronx": 17183, - "brony": 21084, - "bronze": 8459, - "broo": 5204, - "brooch": 21207, - "brook": 4782, - "brook": 7322, - "brooke": 28576, - "brooke": 12549, - "brookes": 39707, - "brooklyn": 23253, - "brooklyn": 6983, - "brooks": 42779, - "brooks": 9991, - "broom": 32046, - "broom": 28008, - "broome": 49335, - "bros": 7776, - "broth": 29994, - "brotha": 33974, - "brother": 12697, - "brother": 3157, - "brotherhood": 19059, - "brothers": 4548, - "brou": 27874, - "brough": 21033, - "brought": 4222, - "brov": 42881, - "brow": 6547, - "brow": 15895, - "broward": 34719, - "brown": 6315, - "brown": 2866, - "browne": 28440, - "brownie": 23045, - "brownies": 22312, - "browning": 32241, - "browns": 14051, - "brows": 14998, - "browse": 19060, - "browser": 19768, - "browsing": 29318, - "brox": 43539, - "brs": 47485, - "brt": 46936, - "bru": 1698, - "bru": 31028, - "bruce": 21223, - "bruce": 7085, - "bruh": 17575, - "bruins": 14736, - "bruise": 48048, - "bruised": 46502, - "brum": 23862, - "brum": 28078, - "brun": 6870, - "brunch": 9113, - "brune": 29057, - "brunei": 41898, - "brunette": 35528, - "bruno": 14568, - "brunomars": 41156, - "brunswick": 24012, - "brush": 27969, - "brush": 8594, - "brushed": 30298, - "brushes": 21550, - "brushing": 35072, - "brussels": 11020, - "brut": 39499, - "brutal": 42144, - "brutal": 14556, - "brutality": 31348, - "brutally": 28132, - "brute": 47552, - "brux": 49093, - "bry": 6587, - "bry": 28228, - "bryan": 16134, - "bryan": 10412, - "bryant": 12256, - "bryce": 19895, - "bryn": 36569, - "bryn": 42877, - "bryson": 38990, - "bs": 11783, - "bs": 1329, - "bsa": 46619, - "bsb": 23070, - "bsbi": 41728, - "bsbibotany": 42086, - "bsc": 32031, - "bsd": 41848, - "bse": 46341, - "bsf": 48314, - "bsgo": 48474, - "bsp": 47977, - "bst": 19698, - "bsu": 46385, - "bt": 3317, - "bt": 4205, - "btc": 10315, - "btcc": 30759, - "btn": 44681, - "bto": 35516, - "btob": 29379, - "btr": 39767, - "bts": 15154, - "bts": 4007, - "btsarmy": 30302, - "btsbbmas": 35297, - "btsx": 44971, - "btv": 38541, - "btw": 9520, - "btwn": 28284, - "bu": 609, - "bu": 5831, - "bub": 27704, - "bub": 33158, - "bubb": 9739, - "bubba": 28149, - "bubble": 28687, - "bubble": 10799, - "bubblegum": 48078, - "bubbles": 17648, - "bubbly": 31034, - "buc": 8207, - "buccane": 32830, - "buccaneers": 38058, - "buch": 22623, - "bucha": 43582, - "buchan": 27237, - "buchanan": 28975, - "bucharest": 37013, - "buck": 6061, - "buck": 11433, - "bucket": 22596, - "bucket": 10498, - "bucketlist": 30778, - "buckets": 27168, - "buckeye": 34549, - "buckeyes": 30741, - "buckingham": 28736, - "buckle": 21948, - "buckley": 25905, - "bucks": 6103, - "bucky": 35916, - "bucs": 20011, - "bud": 2942, - "bud": 10737, - "buda": 18520, - "buda": 49012, - "budapest": 19202, - "budd": 7296, - "buddha": 13981, - "buddhism": 23744, - "buddhist": 18697, - "buddies": 14543, - "budding": 31992, - "buddy": 40948, - "buddy": 6557, - "budge": 32005, - "budget": 46758, - "budget": 5639, - "budgeting": 43789, - "budgets": 36419, - "buds": 14665, - "budweiser": 40900, - "buen": 15640, - "buena": 30876, - "buenas": 48529, - "bueno": 46202, - "buenos": 26055, - "buf": 44417, - "buff": 5456, - "buff": 21416, - "buffal": 25836, - "buffalo": 31231, - "buffalo": 8054, - "buffalob": 38831, - "buffalobills": 44352, - "buffe": 13724, - "buffer": 33050, - "buffet": 17829, - "buffett": 34081, - "buffs": 28906, - "buffy": 33356, - "bug": 14453, - "bug": 8162, - "bugatti": 35451, - "buggy": 28963, - "bugs": 13850, - "buh": 31406, - "buhari": 14661, - "buick": 22000, - "buil": 1354, - "build": 22739, - "build": 3289, - "builder": 14474, - "builders": 17694, - "building": 21206, - "building": 2307, - "buildings": 8866, - "builds": 16449, - "buildthe": 41497, - "built": 45824, - "built": 3874, - "buk": 28084, - "buk": 24317, - "buka": 47778, - "bukit": 39888, - "bul": 2572, - "bul": 10200, - "bula": 18726, - "bulaga": 41575, - "bular": 32187, - "bulb": 22373, - "bulbs": 24808, - "bulgar": 15424, - "bulgaria": 20295, - "bulgarian": 38693, - "bulge": 47603, - "bulk": 19643, - "bull": 4537, - "bull": 6029, - "bulldo": 37675, - "bulldog": 34828, - "bulldog": 15611, - "bulldogs": 13916, - "bullet": 14340, - "bullet": 12465, - "bulletin": 19638, - "bulletproof": 43212, - "bullets": 22117, - "bullied": 34689, - "bullies": 39050, - "bullion": 49114, - "bullish": 22142, - "bullock": 33198, - "bullpen": 38081, - "bulls": 10313, - "bully": 43111, - "bully": 20190, - "bullying": 13548, - "bum": 27683, - "bum": 14226, - "bumble": 25585, - "bumble": 39303, - "bumblebee": 36911, - "bummed": 48456, - "bump": 9783, - "bump": 15877, - "bumped": 22495, - "bumper": 17881, - "bumping": 40196, - "bumps": 21115, - "bun": 2591, - "bun": 13665, - "bunch": 7796, - "bund": 41905, - "bunde": 18841, - "bundesliga": 21582, - "bundle": 11793, - "bundled": 47228, - "bundles": 29834, - "bundy": 37332, - "bung": 44748, - "bungal": 29549, - "bungalow": 33696, - "bunk": 41236, - "bunker": 23615, - "bunnies": 28998, - "bunny": 34198, - "bunny": 9258, - "buns": 22235, - "bunting": 30695, - "buon": 31350, - "buon": 48498, - "bur": 1039, - "bur": 17362, - "burbank": 34862, - "burberry": 30412, - "burch": 44588, - "burden": 18687, - "bure": 11902, - "bureau": 32098, - "bureau": 15400, - "burg": 19505, - "burg": 3499, - "burge": 20522, - "burger": 22356, - "burger": 6548, - "burgers": 13007, - "burgess": 26211, - "burgh": 18141, - "burgh": 4965, - "burgl": 25554, - "burglar": 43365, - "burglary": 32573, - "burgring": 40823, - "burgundy": 23650, - "buri": 46348, - "buri": 42614, - "burial": 22012, - "buried": 14233, - "burk": 48822, - "burke": 15340, - "burle": 27891, - "burlesque": 33732, - "burlington": 23370, - "burma": 30305, - "burmese": 47906, - "burn": 7934, - "burn": 4285, - "burnaby": 47541, - "burne": 27246, - "burned": 15022, - "burner": 23243, - "burnett": 28558, - "burnham": 36111, - "burning": 46107, - "burning": 8405, - "burnley": 24653, - "burnout": 36078, - "burns": 10234, - "burnt": 15185, - "burr": 30879, - "burrell": 49045, - "burrito": 23473, - "burritos": 47245, - "burroughs": 41337, - "burrows": 44846, - "burst": 13005, - "bursting": 32566, - "bursts": 37026, - "burt": 27162, - "burton": 42354, - "burton": 12704, - "burundi": 33595, - "bury": 12276, - "bury": 3899, - "burys": 32362, - "bus": 1319, - "bus": 2840, - "busan": 40172, - "busc": 35000, - "busch": 20475, - "buses": 12879, - "bush": 11191, - "bush": 6867, - "bushes": 37578, - "busiest": 32764, - "busine": 4598, - "busines": 25364, - "business": 8346, - "business": 1716, - "businesses": 7287, - "businessman": 25635, - "buss": 47764, - "bust": 31299, - "bust": 9959, - "busted": 18643, - "buster": 37219, - "buster": 12094, - "busters": 16362, - "busting": 29622, - "busy": 39332, - "busy": 4354, - "but": 2201, - "but": 767, - "butch": 35102, - "butcher": 18732, - "butchers": 42334, - "bute": 39240, - "butes": 14630, - "butler": 35867, - "butler": 10702, - "butt": 12500, - "butt": 31523, - "butte": 31678, - "butter": 5427, - "butter": 6952, - "butterflies": 16232, - "butterfly": 9738, - "buttermilk": 40180, - "butternut": 36867, - "buttery": 45535, - "button": 45480, - "button": 8007, - "buttons": 16188, - "butts": 25309, - "buu": 42313, - "buuren": 47752, - "buxton": 41370, - "buy": 11632, - "buy": 2131, - "buyer": 14682, - "buyers": 14663, - "buying": 6566, - "buys": 15560, - "buzz": 7866, - "buzz": 8706, - "buzzard": 47434, - "buzzer": 38064, - "buzzfeed": 26613, - "buzzing": 18511, - "bv": 18958, - "bv": 35861, - "bvb": 22454, - "bw": 17672, - "bw": 15120, - "bway": 26652, - "bwfc": 40918, - "bwo": 45902, - "bx": 33633, - "by": 1713, - "by": 638, - "bye": 20076, - "bye": 4460, - "byes": 47958, - "byl": 34994, - "byn": 46917, - "byn": 11890, - "byo": 28039, - "bypass": 26530, - "byr": 15534, - "byrd": 30369, - "byrne": 19676, - "byron": 43504, - "byron": 19775, - "bys": 26740, - "bystand": 46138, - "byte": 42798, - "bytes": 39538, - "bythe": 36621, - "byu": 41072, - "byu": 23770, - "byz": 35406, - "byzantine": 44081, - "bz": 13631, - "bé": 40365, - "bü": 38706, - "c": 66, - "c": 322, - "ca": 772, - "ca": 1684, - "caa": 19316, - "cab": 3033, - "cab": 11912, - "cabaret": 26263, - "cabbage": 18407, - "cabe": 32731, - "cabello": 34371, - "caber": 29062, - "cabernet": 33730, - "cabin": 14178, - "cabine": 23354, - "cabinet": 9937, - "cabinets": 33083, - "cabins": 48455, - "cable": 7925, - "cables": 22408, - "cabo": 37318, - "cabo": 28370, - "cabrera": 42338, - "cabs": 42048, - "cac": 8298, - "cac": 23872, - "cacao": 38022, - "cache": 28993, - "caching": 40655, - "cactus": 19794, - "cad": 6297, - "cad": 20166, - "caday": 34187, - "cadbury": 44698, - "caddy": 41521, - "cade": 10497, - "cade": 17306, - "cadet": 22764, - "cadets": 19160, - "cadillac": 18156, - "cae": 49264, - "caer": 28298, - "caes": 15740, - "caesar": 21642, - "caesars": 42162, - "caf": 3471, - "caf": 20867, - "cafc": 30748, - "cafe": 15201, - "cafe": 4979, - "cafes": 40166, - "cafeteria": 32817, - "caffe": 18258, - "caffe": 45416, - "caffeine": 22487, - "café": 15304, - "cag": 15714, - "cage": 11838, - "cages": 37939, - "cah": 40519, - "cahill": 33185, - "cai": 38971, - "cai": 36116, - "cain": 13747, - "caine": 16799, - "cair": 15804, - "cair": 46659, - "cairn": 31264, - "cairn": 42467, - "cairngor": 44067, - "cairns": 32941, - "cairo": 19615, - "cait": 14116, - "caitlin": 47768, - "caitlin": 26809, - "caitlyn": 35763, - "cajun": 43425, - "cajun": 33044, - "cak": 42986, - "cake": 15295, - "cake": 2972, - "cakeday": 46207, - "cakes": 5950, - "cal": 1198, - "cal": 6372, - "cala": 32133, - "calab": 31795, - "calais": 39886, - "calam": 28841, - "calc": 45055, - "calci": 22824, - "calcium": 27815, - "calcu": 15328, - "calcul": 15734, - "calculate": 37656, - "calculated": 40688, - "calculations": 44605, - "calculator": 26093, - "calculus": 35104, - "calcutta": 42901, - "calder": 29372, - "calder": 36817, - "caldwell": 30484, - "cale": 32674, - "caleb": 19619, - "caled": 28421, - "calend": 6057, - "calendar": 7122, - "calendars": 17229, - "calf": 17508, - "calgary": 27415, - "calgary": 10797, - "calhoun": 38929, - "cali": 2857, - "cali": 16337, - "caliber": 32820, - "calibr": 32597, - "calico": 45379, - "calif": 30839, - "califor": 3526, - "californi": 21303, - "california": 3729, - "call": 7950, - "call": 1620, - "calla": 20658, - "callahan": 43313, - "callaway": 42596, - "callback": 44764, - "calle": 47699, - "calle": 38144, - "called": 2726, - "caller": 30666, - "calli": 16338, - "callie": 36512, - "calligraphy": 27775, - "calling": 4597, - "callister": 49026, - "callme": 42449, - "callof": 41280, - "calls": 4572, - "callum": 23224, - "calm": 34990, - "calm": 7011, - "calming": 30690, - "calorie": 32679, - "calories": 18029, - "cals": 47714, - "calum": 16405, - "calvary": 40169, - "calvert": 47134, - "calves": 31857, - "calvin": 27642, - "calvin": 17345, - "caly": 10244, - "calyp": 29851, - "cam": 1004, - "cam": 5982, - "camar": 31991, - "camber": 44362, - "cambo": 14662, - "cambodia": 17347, - "cambridge": 24651, - "cambridge": 9334, - "cambridgeshire": 46139, - "camden": 38735, - "camden": 17984, - "came": 1986, - "camel": 27005, - "camel": 21914, - "camels": 41357, - "cameo": 19492, - "camer": 4961, - "camera": 3934, - "cameraman": 43347, - "cameras": 12172, - "camero": 20320, - "cameron": 19634, - "cameron": 8057, - "camerondallas": 40587, - "cameroon": 24061, - "camil": 37745, - "camila": 19919, - "camilla": 38897, - "camille": 26741, - "camino": 28529, - "camo": 28702, - "camo": 19716, - "camogie": 39547, - "camou": 23588, - "camoufla": 23667, - "camouflage": 29049, - "camp": 2854, - "camp": 2877, - "campa": 2793, - "campaig": 9448, - "campaign": 44524, - "campaign": 3193, - "campaigner": 46364, - "campaigners": 40272, - "campaigning": 19594, - "campaigns": 15669, - "campan": 31765, - "campbell": 29094, - "campbell": 8806, - "campe": 16672, - "campeon": 49109, - "campeones": 30105, - "camper": 41914, - "camper": 24522, - "campers": 26619, - "campfire": 32530, - "campground": 46969, - "camping": 9982, - "campo": 27600, - "campos": 48077, - "camps": 12806, - "campsite": 44243, - "campu": 19687, - "campus": 4560, - "campuses": 31895, - "camra": 46155, - "camry": 46472, - "cams": 32590, - "can": 950, - "can": 753, - "cana": 28341, - "canad": 13193, - "canada": 2698, - "canadaday": 39800, - "canadi": 4329, - "canadian": 22160, - "canadian": 5255, - "canadians": 18989, - "canadiens": 40932, - "canal": 28585, - "canal": 9535, - "canals": 38483, - "canaria": 47117, - "canary": 40409, - "canary": 24523, - "canberra": 16719, - "canc": 43189, - "cancel": 12026, - "cancel": 21546, - "canceled": 25874, - "cancell": 28027, - "cancellation": 38765, - "cancelled": 13270, - "cancels": 34089, - "cancer": 12690, - "cancer": 3148, - "cancers": 33201, - "cancun": 34721, - "cand": 4986, - "candace": 45623, - "candel": 47834, - "candi": 6034, - "candice": 30024, - "candid": 7884, - "candid": 19206, - "candidacy": 46248, - "candidate": 6475, - "candidates": 8619, - "candied": 43982, - "candies": 46305, - "candle": 18995, - "candle": 12674, - "candlelight": 34724, - "candles": 15472, - "candy": 20741, - "candy": 6417, - "cane": 23644, - "cane": 14716, - "canelo": 43210, - "canes": 21902, - "cani": 35592, - "canine": 27380, - "cann": 4139, - "cann": 23709, - "cannab": 7577, - "cannabis": 31837, - "cannabis": 8861, - "canne": 44252, - "canned": 27290, - "cannes": 13773, - "canni": 26389, - "canning": 38621, - "cannon": 28771, - "cannon": 15661, - "cannons": 46269, - "cannot": 4785, - "canny": 26986, - "cano": 31668, - "cano": 25937, - "canoe": 23503, - "canola": 40389, - "canon": 17749, - "canon": 9310, - "canopy": 26061, - "cans": 13707, - "cant": 13395, - "cant": 5784, - "canteen": 39230, - "canter": 19301, - "canterbury": 22271, - "canti": 42845, - "cantina": 47472, - "canton": 37735, - "canton": 25363, - "cantore": 41769, - "cantwait": 33760, - "canu": 20171, - "canucks": 24321, - "canv": 30714, - "canvas": 22441, - "canvas": 7483, - "canvass": 40054, - "canvassing": 33783, - "cany": 47674, - "canyon": 41246, - "canyon": 9755, - "cao": 29207, - "cap": 1289, - "cap": 3938, - "capabilities": 19512, - "capability": 25885, - "capable": 14742, - "capac": 24665, - "capacity": 8970, - "capcom": 28342, - "cape": 10288, - "cape": 6631, - "capecod": 41339, - "capes": 38785, - "capetown": 20059, - "capit": 6889, - "capita": 41833, - "capital": 11198, - "capital": 5439, - "capitalism": 20068, - "capitalist": 37015, - "capitals": 29579, - "capitol": 43880, - "capitol": 11375, - "capo": 45477, - "capp": 16718, - "capped": 24659, - "capping": 42656, - "cappuccino": 37402, - "capri": 48699, - "capri": 30982, - "capric": 28667, - "capricorn": 46314, - "caps": 23185, - "capsu": 15608, - "capsul": 40341, - "capsule": 20627, - "capsules": 32870, - "capt": 45815, - "capt": 17369, - "captain": 14958, - "captain": 4621, - "captainamerica": 46229, - "captainmarvel": 48492, - "captains": 18706, - "caption": 11327, - "captions": 41878, - "captiv": 19776, - "captivating": 30580, - "captive": 29038, - "captivity": 41141, - "capture": 8818, - "captured": 8020, - "captures": 15305, - "capturing": 19548, - "capu": 44241, - "car": 811, - "car": 1615, - "cara": 20016, - "carab": 32251, - "carac": 30029, - "caracas": 45854, - "caramel": 14788, - "carameli": 41739, - "caramelized": 43854, - "carat": 32981, - "carav": 13814, - "caravan": 18566, - "carb": 21379, - "carbo": 43235, - "carbon": 14038, - "carbon": 7549, - "carbs": 29313, - "carcin": 31587, - "carcinoma": 46810, - "card": 10793, - "card": 2601, - "cardam": 49008, - "cardboard": 19845, - "cardi": 6211, - "cardi": 29677, - "cardiac": 21256, - "cardiff": 22488, - "cardiff": 9781, - "cardigan": 30501, - "cardin": 8457, - "cardinal": 46310, - "cardinal": 16472, - "cardinals": 12837, - "cardio": 15003, - "cardio": 23455, - "cardiology": 37276, - "cardiovascular": 29291, - "cardo": 40625, - "cards": 4094, - "care": 2050, - "care": 1776, - "cared": 27675, - "career": 20609, - "career": 3061, - "careers": 10090, - "careful": 11999, - "carefully": 15789, - "caregi": 22042, - "caregiver": 46372, - "caregivers": 35909, - "careless": 47325, - "carers": 26484, - "cares": 10968, - "caretaker": 48037, - "carey": 14895, - "cargo": 12490, - "cari": 18497, - "cari": 37273, - "carib": 9757, - "caribbean": 10368, - "caribou": 42135, - "caric": 25337, - "caricature": 38857, - "carina": 44357, - "caring": 13083, - "carl": 8273, - "carl": 9482, - "carla": 25552, - "carleton": 46496, - "carlin": 47559, - "carlisle": 23276, - "carlo": 17861, - "carlo": 15266, - "carlos": 9538, - "carlow": 44745, - "carls": 39635, - "carlson": 24114, - "carlton": 18934, - "carly": 23166, - "carly": 22689, - "carlyle": 46555, - "carmel": 30757, - "carmel": 25601, - "carmen": 41427, - "carmen": 18834, - "carmichael": 41657, - "carn": 21597, - "carnage": 31385, - "carnation": 44577, - "carnaval": 47238, - "carne": 17053, - "carne": 42885, - "carnegie": 25287, - "carney": 34194, - "carni": 8438, - "carnival": 36708, - "carnival": 10577, - "caro": 30317, - "caro": 29344, - "carol": 4242, - "carol": 11489, - "carole": 31955, - "carolin": 26418, - "carolina": 7027, - "caroline": 31064, - "caroline": 12641, - "carols": 33269, - "carolyn": 25825, - "carou": 32224, - "carousel": 36665, - "carp": 26085, - "carpen": 15584, - "carpenter": 18475, - "carpet": 6922, - "carpets": 34612, - "carr": 26951, - "carr": 17136, - "carra": 32332, - "carre": 31114, - "carrera": 32952, - "carri": 4739, - "carriage": 47885, - "carriage": 21087, - "carrick": 44052, - "carrie": 30334, - "carrie": 15848, - "carried": 12960, - "carrier": 12308, - "carriers": 26865, - "carries": 17982, - "carrieunderwood": 47338, - "carrington": 48759, - "carroll": 41911, - "carroll": 14893, - "carrot": 15435, - "carrots": 19299, - "carry": 31863, - "carry": 6998, - "carrying": 9920, - "cars": 3346, - "carsforsale": 45222, - "carson": 41766, - "carson": 13171, - "cart": 27705, - "cart": 13065, - "cartag": 45042, - "cartagena": 47157, - "carte": 44949, - "cartel": 30529, - "carter": 27330, - "carter": 7260, - "cartier": 32951, - "carto": 5487, - "carton": 41812, - "cartoon": 33082, - "cartoon": 7651, - "cartoonist": 30793, - "cartoons": 17673, - "cartri": 47084, - "cartridge": 29432, - "cartridges": 49249, - "carts": 27581, - "cartunesapp": 32888, - "caruso": 45192, - "carve": 40152, - "carved": 15127, - "carver": 28850, - "carving": 19428, - "carvings": 48123, - "cary": 22844, - "cas": 1671, - "cas": 13831, - "casa": 14643, - "casablanc": 36572, - "casablanca": 41950, - "casc": 36714, - "casca": 43296, - "cascade": 29065, - "cascades": 46454, - "case": 17698, - "case": 2068, - "cases": 6888, - "casey": 24899, - "casey": 12836, - "cash": 11050, - "cash": 5131, - "cashback": 36368, - "cashe": 32233, - "cashew": 39531, - "cashi": 29517, - "cashier": 34547, - "cashmere": 34566, - "casi": 38350, - "casino": 10473, - "casio": 32261, - "cask": 26299, - "casm": 35198, - "casper": 35892, - "cass": 22556, - "cassandra": 35289, - "casser": 31093, - "casserole": 36045, - "cassette": 19717, - "cassi": 14942, - "cassidy": 21757, - "cassie": 29323, - "cassini": 46554, - "cast": 2509, - "cast": 1970, - "caste": 32693, - "casted": 33838, - "castel": 43306, - "castell": 31792, - "caster": 32101, - "caster": 8449, - "casters": 29721, - "castic": 47737, - "castillo": 30813, - "casting": 7087, - "castle": 12496, - "castle": 3540, - "castles": 24766, - "castro": 16950, - "casts": 10595, - "casu": 15345, - "casual": 10129, - "casually": 18840, - "casualties": 30244, - "casualty": 31222, - "cat": 1481, - "cat": 2368, - "cata": 42279, - "catal": 12792, - "catalan": 30532, - "catalina": 36576, - "catalo": 34740, - "catalog": 20036, - "catalogue": 20985, - "catalonia": 27039, - "catalunya": 44132, - "cataly": 15894, - "catalyst": 25387, - "catan": 45893, - "catap": 39514, - "catar": 35801, - "catastro": 22736, - "catastrophe": 41422, - "catastrophic": 34448, - "catch": 18901, - "catch": 3042, - "catcher": 15965, - "catchers": 39060, - "catches": 17213, - "catching": 8617, - "catchy": 37114, - "catday": 32243, - "cate": 6357, - "cate": 24510, - "cated": 31823, - "categor": 17006, - "categori": 40117, - "categories": 19971, - "category": 9432, - "cater": 16634, - "cater": 38101, - "catering": 16697, - "caterpillar": 27111, - "catfish": 26077, - "cath": 9196, - "cath": 30811, - "cathar": 43784, - "cathe": 7174, - "cathedr": 46370, - "cathedral": 7865, - "catherine": 35035, - "catherine": 12339, - "catho": 7595, - "cathol": 16315, - "catholic": 20382, - "catholic": 7757, - "catholics": 36808, - "cathy": 40326, - "cathy": 22731, - "cation": 21367, - "cato": 33558, - "cats": 38800, - "cats": 3989, - "catsofinstagram": 39901, - "catsoftwitter": 17273, - "catt": 37339, - "cattle": 48799, - "cattle": 13644, - "caturday": 20892, - "catwalk": 36565, - "catwoman": 47251, - "cau": 1121, - "cau": 45529, - "caucus": 18847, - "caught": 4520, - "caul": 23460, - "cauley": 41682, - "caulfield": 44906, - "cauli": 20123, - "cauliflower": 23802, - "cause": 18982, - "cause": 1394, - "caused": 8940, - "causes": 9775, - "causeway": 35034, - "causing": 10779, - "caution": 15656, - "cautious": 36579, - "cav": 4942, - "cav": 45935, - "cava": 48682, - "caval": 24537, - "cavali": 20783, - "cavalier": 44488, - "cavaliers": 30194, - "cavalry": 32467, - "cave": 25441, - "cave": 9654, - "cavendish": 42945, - "caver": 41487, - "caves": 22096, - "cavi": 27360, - "caviar": 31228, - "cavill": 40492, - "cavity": 43156, - "cavs": 16800, - "caw": 38405, - "caw": 43804, - "cawx": 26739, - "cay": 11876, - "cay": 37399, - "cayenne": 43650, - "cayman": 33737, - "caz": 48451, - "cb": 4034, - "cb": 8830, - "cba": 38472, - "cbb": 31487, - "cbc": 14096, - "cbc": 14523, - "cbd": 13176, - "cbe": 43639, - "cbi": 30875, - "cbj": 35608, - "cbn": 26579, - "cbp": 46723, - "cbr": 28762, - "cbs": 16788, - "cbs": 8009, - "cc": 2976, - "cc": 2021, - "cca": 17987, - "ccc": 21856, - "ccd": 48556, - "ccg": 37755, - "cch": 21789, - "cchini": 28467, - "cci": 32942, - "cci": 8196, - "ccl": 43773, - "ccm": 40435, - "cco": 28786, - "ccot": 24950, - "ccp": 43045, - "ccs": 30400, - "cctv": 23097, - "ccu": 49023, - "cd": 4308, - "cd": 4480, - "cda": 45565, - "cdc": 41098, - "cdc": 25779, - "cdn": 8886, - "cdn": 26802, - "cdnpoli": 11645, - "cdo": 47187, - "cdp": 39624, - "cds": 20784, - "cdt": 18455, - "ce": 685, - "ce": 629, - "cea": 28355, - "cean": 34409, - "cean": 37295, - "cease": 32856, - "cease": 25499, - "ceasefire": 38291, - "cebu": 20146, - "cec": 29694, - "cec": 40029, - "cecil": 26987, - "cecil": 27169, - "cecilia": 35440, - "ced": 25634, - "ced": 2323, - "cedar": 24167, - "cedar": 13799, - "cedric": 36608, - "cee": 45966, - "cee": 15015, - "cees": 47914, - "ceil": 27275, - "ceiling": 12374, - "ceilings": 33770, - "cek": 45544, - "cel": 2269, - "cel": 7597, - "cele": 1314, - "celeb": 38862, - "celeb": 19393, - "celebr": 1372, - "celebrate": 31414, - "celebrate": 2694, - "celebrated": 9184, - "celebrates": 7564, - "celebrating": 3382, - "celebration": 4615, - "celebrations": 10825, - "celebratory": 34115, - "celebrities": 17071, - "celebrity": 23981, - "celebrity": 7320, - "celebs": 19803, - "celed": 25741, - "celer": 9621, - "celery": 30990, - "celeste": 29364, - "celesti": 29497, - "celestial": 32669, - "celi": 25567, - "celia": 44489, - "celine": 33644, - "cell": 9316, - "cell": 5533, - "cellar": 24282, - "cellars": 44976, - "cellence": 34687, - "cello": 23013, - "cellphone": 39029, - "cells": 8890, - "cellu": 16791, - "cellular": 23268, - "cels": 24021, - "celsius": 47057, - "celtic": 21897, - "celtic": 10523, - "celticfc": 38612, - "celtics": 16226, - "cem": 41435, - "ceme": 10517, - "cement": 4369, - "cements": 19448, - "cemetery": 11660, - "cen": 1306, - "cen": 30106, - "cena": 21591, - "cence": 24410, - "cency": 41259, - "cene": 30038, - "censor": 24230, - "censor": 44709, - "censored": 30951, - "censorship": 27284, - "census": 23677, - "cent": 1784, - "cent": 3662, - "centenary": 22422, - "centennial": 20895, - "center": 16651, - "center": 2119, - "centered": 24584, - "centers": 14494, - "centi": 48889, - "centime": 48687, - "centr": 2370, - "central": 13448, - "central": 3339, - "centre": 26310, - "centre": 2916, - "centred": 47925, - "centres": 19354, - "centri": 30872, - "centric": 19297, - "centro": 37178, - "cents": 11934, - "centu": 16818, - "centuri": 36816, - "centuries": 19014, - "century": 26134, - "century": 4275, - "ceo": 46340, - "ceo": 3559, - "ceos": 28332, - "cep": 2632, - "cep": 48714, - "ceph": 44343, - "cept": 3678, - "ception": 12346, - "cer": 1364, - "cer": 1925, - "cera": 34608, - "ceram": 10677, - "ceramic": 15112, - "ceramics": 22438, - "cere": 3984, - "cere": 22085, - "cereal": 17581, - "cereals": 48618, - "cerebral": 39073, - "ceremon": 15796, - "ceremonial": 33281, - "ceremonies": 21547, - "ceremony": 5193, - "cern": 44851, - "cers": 13638, - "cert": 27522, - "certain": 8526, - "certain": 7883, - "certainly": 10883, - "certainty": 20054, - "certi": 4888, - "certific": 9443, - "certificate": 11786, - "certificates": 25281, - "certification": 14735, - "certified": 9288, - "cerv": 25738, - "cervical": 35953, - "ces": 28715, - "ces": 1604, - "cesar": 37025, - "cesar": 28603, - "cess": 2314, - "cess": 1554, - "cessna": 36596, - "cest": 27245, - "cester": 15769, - "cester": 12718, - "cet": 14960, - "cett": 46708, - "ceu": 37457, - "cevic": 48369, - "cey": 20971, - "cf": 10189, - "cf": 11171, - "cfa": 34521, - "cfb": 32931, - "cfc": 11577, - "cfd": 46171, - "cfl": 46320, - "cfl": 22332, - "cfo": 26937, - "cfp": 40756, - "cfr": 44033, - "cfs": 32835, - "cg": 27118, - "cg": 14740, - "cgc": 38775, - "cgi": 30520, - "ch": 540, - "ch": 634, - "cha": 1587, - "cha": 4541, - "chab": 26670, - "chad": 13095, - "chad": 12923, - "chae": 9460, - "chaf": 38123, - "chag": 27989, - "chai": 31590, - "chai": 18919, - "chain": 13898, - "chain": 3946, - "chained": 34402, - "chains": 14438, - "chainsaw": 37617, - "chainz": 39687, - "chair": 4728, - "chair": 4269, - "chaired": 31664, - "chairing": 42205, - "chairman": 6901, - "chairperson": 31584, - "chairs": 12033, - "chak": 13702, - "chak": 41713, - "chakra": 38304, - "chakra": 33241, - "chal": 7397, - "chal": 30809, - "chale": 38099, - "chalet": 37907, - "chalk": 31362, - "chalk": 17846, - "chall": 2073, - "challeng": 4138, - "challenge": 29462, - "challenge": 2836, - "challenged": 17380, - "challenger": 18228, - "challengers": 46404, - "challenges": 6280, - "challenging": 11754, - "chalmers": 47955, - "cham": 1290, - "cham": 19951, - "chamber": 18983, - "chamber": 7642, - "chamberlain": 32756, - "chambers": 16501, - "chamele": 34759, - "chameleon": 41317, - "champ": 36813, - "champ": 6602, - "champag": 10283, - "champagne": 11007, - "champi": 1680, - "champion": 2643, - "champion": 3950, - "champions": 4227, - "championship": 3429, - "championships": 7047, - "championsleague": 27638, - "champs": 6240, - "chan": 1255, - "chan": 6704, - "chana": 48752, - "chanc": 13931, - "chance": 32940, - "chance": 2594, - "chancellor": 15886, - "chances": 10870, - "chand": 7126, - "chand": 41508, - "chandelier": 30570, - "chandi": 12482, - "chandigarh": 34106, - "chandler": 17595, - "chandra": 27082, - "chandra": 25348, - "chanel": 16951, - "chang": 2233, - "chang": 16461, - "change": 11608, - "change": 1799, - "changeable": 41335, - "changed": 4907, - "changer": 18406, - "changers": 35185, - "changes": 4938, - "changing": 40384, - "changing": 5621, - "changmin": 47410, - "chann": 8804, - "channel": 25837, - "channel": 3847, - "channeling": 28197, - "channels": 13961, - "channing": 37417, - "chant": 18165, - "chant": 13521, - "chanting": 32111, - "chants": 22723, - "chanyeol": 18805, - "chao": 31815, - "chaos": 10853, - "chaotic": 33501, - "chap": 3825, - "chap": 21939, - "chapel": 40859, - "chapel": 10137, - "chaplain": 38348, - "chaplin": 32545, - "chapman": 17968, - "chapp": 20634, - "chaps": 36823, - "chapter": 6014, - "chapters": 22936, - "char": 1054, - "char": 16017, - "chara": 35668, - "charac": 2792, - "character": 10997, - "character": 4009, - "characterdesign": 38149, - "characteri": 20920, - "characteristic": 44747, - "characteristics": 26037, - "characters": 6564, - "charan": 31851, - "charcoal": 19268, - "chard": 17524, - "chardon": 26599, - "chardonnay": 28161, - "charge": 25032, - "charge": 5948, - "chargeable": 35664, - "charged": 7916, - "charger": 13090, - "chargers": 17352, - "charges": 8962, - "charging": 12514, - "chariot": 38811, - "charis": 24449, - "charisma": 45041, - "charismatic": 37205, - "charitable": 23256, - "charities": 18493, - "charity": 20008, - "charity": 4607, - "charitytuesday": 42794, - "charl": 47736, - "charle": 10217, - "charles": 27983, - "charles": 5127, - "charleston": 15478, - "charley": 38027, - "charli": 21784, - "charli": 49392, - "charlie": 16764, - "charlie": 6393, - "charlotte": 18445, - "charlotte": 7871, - "charlottesville": 32027, - "charlton": 27048, - "charm": 10876, - "charmed": 39790, - "charming": 12177, - "charms": 21944, - "charred": 44085, - "chart": 42685, - "chart": 5053, - "charted": 27939, - "charter": 42345, - "charter": 13569, - "chartered": 31298, - "charters": 46626, - "charting": 39841, - "charts": 10728, - "chas": 10717, - "chas": 29838, - "chase": 21503, - "chase": 3859, - "chased": 30342, - "chaser": 29560, - "chasers": 34158, - "chases": 45011, - "chasing": 46909, - "chasing": 13376, - "chassis": 29188, - "chast": 42176, - "chasu": 41352, - "chat": 5355, - "chat": 2402, - "chatbots": 43994, - "chate": 30377, - "chateau": 44582, - "chateau": 23520, - "chath": 46849, - "chatham": 32030, - "chats": 13263, - "chatt": 21618, - "chattanoo": 28009, - "chattanooga": 29866, - "chatted": 34124, - "chatter": 33473, - "chatter": 41103, - "chatting": 12401, - "chatur": 33839, - "chau": 11263, - "chau": 37536, - "chauffe": 45440, - "chauhan": 46663, - "chav": 28997, - "chavez": 27480, - "chaw": 39639, - "chay": 45317, - "chaz": 47815, - "chc": 36233, - "chd": 41645, - "che": 983, - "che": 3842, - "chea": 39580, - "chead": 48358, - "cheap": 27036, - "cheap": 8678, - "cheape": 26164, - "cheaper": 17776, - "cheapest": 26640, - "cheat": 18180, - "cheated": 34285, - "cheating": 19722, - "chec": 1113, - "check": 7672, - "check": 1217, - "checked": 10387, - "checker": 45883, - "checkers": 48181, - "checking": 7441, - "checklist": 26989, - "checkout": 13101, - "checkpoint": 27531, - "checks": 13737, - "ched": 11341, - "ched": 2146, - "cheddar": 20551, - "chee": 5326, - "chee": 20944, - "cheek": 40000, - "cheek": 21227, - "cheeks": 23019, - "cheeky": 15068, - "cheer": 9733, - "cheer": 6918, - "cheered": 38111, - "cheerful": 28882, - "cheering": 14289, - "cheerleader": 29072, - "cheerleaders": 22343, - "cheerleading": 36366, - "cheers": 6562, - "chees": 15182, - "cheese": 10738, - "cheese": 4108, - "cheeseburger": 41200, - "cheesecake": 17803, - "cheeses": 36076, - "cheesy": 22093, - "cheetah": 27431, - "chef": 12137, - "chef": 4895, - "chefs": 14486, - "chek": 43745, - "chel": 3084, - "chel": 25970, - "chell": 46854, - "chelle": 30141, - "chelms": 34936, - "chelmsford": 39890, - "chelse": 19071, - "chelsea": 6031, - "chelseafc": 25927, - "chelten": 18889, - "cheltenham": 21589, - "chem": 5667, - "chem": 13698, - "chemi": 7179, - "chemical": 39376, - "chemical": 9208, - "chemicals": 17426, - "chemist": 23138, - "chemistry": 8841, - "chemo": 33095, - "chemo": 36348, - "chemotherapy": 41412, - "chemtrails": 46015, - "chen": 5907, - "chen": 8983, - "cheney": 43522, - "cheng": 32512, - "cheng": 30190, - "chenko": 29073, - "chennai": 28948, - "chennai": 12791, - "cheon": 11498, - "cheque": 28168, - "cher": 3597, - "cher": 3466, - "cheri": 26471, - "cherish": 20053, - "cherished": 42325, - "cherno": 35376, - "chernobyl": 40554, - "chero": 19844, - "cherokee": 22860, - "cherries": 27248, - "cherry": 21470, - "cherry": 7325, - "chers": 5789, - "chery": 38478, - "cheryl": 37784, - "cheryl": 20600, - "ches": 18346, - "ches": 1910, - "chesa": 28349, - "chesapeake": 32909, - "cheshire": 17130, - "chesney": 48747, - "chess": 27170, - "chess": 8397, - "chest": 18217, - "chest": 10563, - "chester": 10466, - "chester": 3343, - "chesterfield": 32975, - "chestnut": 21834, - "chet": 9663, - "chett": 24695, - "chev": 7152, - "chev": 41145, - "chevro": 12850, - "chevrolet": 13240, - "chevron": 33792, - "chevy": 16581, - "chew": 32645, - "chew": 22642, - "chewan": 23689, - "chewbacca": 49355, - "chewing": 31486, - "chewy": 42940, - "chey": 26968, - "chey": 31208, - "cheyenne": 34805, - "chez": 49183, - "chez": 10556, - "chf": 33021, - "chfield": 41619, - "chhat": 34127, - "chhattisgarh": 44246, - "chi": 1337, - "chi": 4039, - "chia": 19147, - "chiang": 33764, - "chibi": 22306, - "chic": 2627, - "chic": 9091, - "chica": 44190, - "chicag": 16778, - "chicago": 15038, - "chicago": 3530, - "chicagof": 40638, - "chicagofire": 46576, - "chicas": 40664, - "chichester": 43823, - "chick": 3170, - "chick": 11238, - "chicken": 26322, - "chicken": 3717, - "chickens": 21658, - "chickpea": 48109, - "chicks": 17810, - "chico": 30379, - "chie": 40046, - "chie": 12388, - "chief": 16830, - "chief": 3455, - "chiefs": 11419, - "chiev": 47761, - "chiff": 27407, - "chiffon": 31817, - "chig": 42952, - "chihu": 22857, - "chihuahu": 25437, - "chihuahua": 30181, - "chik": 45455, - "chil": 1333, - "child": 4392, - "child": 2913, - "childcare": 31133, - "childhood": 34772, - "childhood": 7551, - "childish": 31939, - "childre": 2135, - "children": 11101, - "children": 2153, - "childrens": 31551, - "childrens": 21553, - "childs": 39521, - "chile": 10022, - "chilean": 33186, - "chili": 13033, - "chill": 6498, - "chill": 6382, - "chilled": 23540, - "chillen": 45160, - "chilli": 26787, - "chilli": 17067, - "chillin": 10347, - "chilling": 10179, - "chillout": 39842, - "chills": 25460, - "chilly": 14450, - "chim": 10543, - "chimney": 26821, - "chimp": 44374, - "chin": 6555, - "chin": 8979, - "china": 38943, - "china": 2817, - "chinatown": 28582, - "chine": 4013, - "chinese": 30568, - "chinese": 4271, - "ching": 34621, - "ching": 1439, - "chino": 47181, - "chino": 27440, - "chinook": 41577, - "chinson": 33786, - "chio": 19650, - "chip": 19271, - "chip": 8730, - "chipmun": 46384, - "chipot": 17702, - "chipotle": 19284, - "chipp": 39854, - "chippe": 46541, - "chipped": 39892, - "chipping": 40323, - "chips": 8855, - "chir": 15564, - "chiro": 23413, - "chiroprac": 25987, - "chiropractic": 34437, - "chis": 19920, - "chistan": 20523, - "chiswick": 47290, - "chit": 13515, - "chit": 45626, - "chita": 49184, - "chitec": 39862, - "chive": 29222, - "chives": 34921, - "chk": 47424, - "chl": 38592, - "chley": 47748, - "chlo": 10374, - "chloe": 39966, - "chloe": 13992, - "chlor": 23135, - "chman": 35835, - "chment": 20848, - "chner": 48277, - "cho": 1327, - "cho": 5150, - "choa": 43077, - "choc": 32772, - "choc": 21983, - "choco": 46285, - "choco": 32692, - "chocol": 3443, - "chocolat": 44631, - "chocolate": 29389, - "chocolate": 3820, - "chocolates": 24120, - "choi": 23749, - "choic": 35606, - "choice": 23857, - "choice": 4051, - "choices": 11016, - "choir": 9214, - "choirs": 43277, - "choke": 30231, - "choked": 43521, - "choker": 39642, - "choking": 39993, - "chol": 19802, - "cholera": 45999, - "cholester": 26861, - "cholesterol": 27982, - "chom": 25151, - "chon": 20416, - "chon": 21601, - "chondri": 37379, - "chong": 26220, - "choo": 3869, - "choo": 24437, - "chool": 29578, - "chools": 41958, - "choose": 22756, - "choose": 5073, - "chooses": 29923, - "choosing": 13475, - "chop": 10458, - "chop": 16663, - "chopin": 42256, - "chopped": 22580, - "chopper": 24011, - "chopping": 35375, - "chopra": 24258, - "chops": 26321, - "chor": 7567, - "chor": 47795, - "choral": 26684, - "chord": 33005, - "chords": 36152, - "choreo": 17443, - "choreographer": 35952, - "choreography": 32749, - "chores": 40483, - "chori": 25718, - "chorizo": 30802, - "chorus": 20869, - "chos": 26559, - "chose": 11090, - "chosen": 10044, - "chou": 16960, - "chou": 42917, - "choudhary": 45503, - "chow": 20257, - "chow": 21657, - "chowder": 37886, - "chp": 35896, - "chr": 36918, - "chri": 1135, - "chris": 9907, - "chris": 2978, - "chrisbrown": 41035, - "chriss": 46745, - "chrissy": 44762, - "chrissy": 40485, - "christ": 1403, - "christ": 6703, - "christchurch": 27100, - "christen": 31956, - "christensen": 42226, - "christi": 3328, - "christi": 33213, - "christian": 11792, - "christian": 4729, - "christianity": 20000, - "christians": 14842, - "christie": 16084, - "christin": 30189, - "christina": 15925, - "christine": 42610, - "christine": 14712, - "christma": 12039, - "christmas": 18174, - "christmas": 1677, - "christmaseve": 44381, - "christmass": 44873, - "christop": 7917, - "christoph": 47844, - "christophe": 45486, - "christopher": 33349, - "christopher": 9630, - "christy": 28331, - "chro": 13207, - "chromatic": 44207, - "chrome": 24843, - "chrome": 9529, - "chromo": 35809, - "chron": 5577, - "chron": 39781, - "chronic": 10115, - "chronic": 13677, - "chronicle": 20034, - "chronicles": 18905, - "chrono": 29387, - "chronograph": 38397, - "chry": 13508, - "chrysler": 20078, - "chs": 40277, - "chs": 8391, - "chsnews": 44919, - "cht": 11384, - "chter": 47811, - "chu": 3799, - "chu": 13622, - "chubby": 29109, - "chuck": 13211, - "chuck": 9894, - "chuckle": 35733, - "chucky": 42026, - "chuffed": 27233, - "chuk": 25878, - "chuk": 27221, - "chul": 33001, - "chum": 46869, - "chum": 41767, - "chun": 14693, - "chun": 25391, - "chung": 28418, - "chunk": 30275, - "chunks": 45538, - "chunky": 27978, - "chups": 46331, - "chur": 2309, - "church": 14956, - "church": 2735, - "churches": 15539, - "churchill": 17527, - "chus": 36246, - "chut": 28788, - "chutney": 36261, - "chy": 15131, - "chy": 8096, - "chyna": 43398, - "châ": 48669, - "ci": 698, - "ci": 5798, - "cia": 4019, - "cial": 1143, - "cian": 32323, - "ciao": 37677, - "ciara": 31369, - "cible": 28873, - "cic": 14539, - "cic": 21517, - "cid": 27359, - "cide": 34178, - "cider": 13547, - "cides": 41326, - "cie": 19730, - "cier": 24067, - "cies": 6785, - "cif": 35698, - "cigar": 26031, - "cigar": 16525, - "cigare": 13044, - "cigarette": 18548, - "cigarettes": 22750, - "cigars": 20750, - "cii": 42408, - "cil": 9217, - "cil": 2998, - "cilan": 33998, - "cilantro": 34568, - "cili": 18977, - "ciliation": 25294, - "cim": 30021, - "cin": 2396, - "cin": 25367, - "cina": 39467, - "cincin": 13291, - "cincinnati": 14197, - "cinco": 25131, - "cincode": 40930, - "cincodemayo": 42542, - "cincy": 30015, - "cincy": 30286, - "cinde": 20660, - "cinderella": 21515, - "cindy": 34439, - "cindy": 18532, - "cine": 4015, - "cine": 27451, - "cinema": 38251, - "cinema": 6443, - "cinemas": 14845, - "cinematic": 25602, - "cinemato": 21919, - "cinematographer": 39059, - "cinematography": 33802, - "ciner": 39882, - "cing": 4014, - "cini": 25699, - "cinnam": 12768, - "cinnamon": 13460, - "cino": 18616, - "cio": 44584, - "cio": 9954, - "cion": 22024, - "ciones": 37155, - "cious": 38466, - "cip": 32884, - "cir": 2459, - "cir": 41135, - "circa": 10411, - "circle": 33574, - "circle": 7117, - "circles": 19411, - "circling": 46036, - "circu": 5143, - "circuit": 35583, - "circuit": 9801, - "circuits": 33260, - "circul": 16618, - "circular": 19733, - "circulare": 39525, - "circulareconomy": 39878, - "circulated": 46258, - "circulating": 42980, - "circulation": 27880, - "circum": 13406, - "circumstances": 18786, - "circus": 11833, - "cirque": 36049, - "cis": 9459, - "cis": 23513, - "cisco": 36689, - "cisco": 19290, - "cise": 19657, - "cisely": 33434, - "cision": 41957, - "cism": 24166, - "cist": 40906, - "cit": 4420, - "cit": 31294, - "citadel": 38036, - "citation": 33581, - "cite": 32641, - "cited": 25069, - "cites": 34490, - "citi": 4280, - "citi": 30270, - "cities": 5441, - "citing": 29088, - "citiz": 5816, - "citizen": 11720, - "citizen": 9814, - "citizens": 7949, - "citizenship": 17386, - "cito": 42636, - "citro": 27941, - "citroen": 35805, - "citrus": 17379, - "city": 5002, - "city": 1305, - "cityfc": 28751, - "cityo": 25709, - "cityof": 11595, - "cityscape": 40808, - "ciu": 39693, - "cius": 42559, - "civ": 40039, - "civic": 32240, - "civic": 11888, - "civil": 6923, - "civil": 6450, - "civilian": 21187, - "civilians": 18076, - "civilization": 22503, - "civilwar": 34524, - "ción": 44700, - "cj": 15238, - "cj": 15205, - "ck": 916, - "ck": 868, - "cke": 25224, - "cke": 40989, - "cked": 3441, - "cken": 25566, - "cker": 15509, - "cker": 4744, - "ckers": 37073, - "cket": 5525, - "ckett": 33899, - "ckey": 15029, - "ckey": 3657, - "cki": 36916, - "cki": 41055, - "cking": 4805, - "cko": 28818, - "cks": 2031, - "cky": 26229, - "cky": 3083, - "cl": 969, - "cl": 6482, - "cla": 940, - "cla": 20636, - "clad": 31606, - "cladding": 46411, - "clai": 29459, - "claim": 4290, - "claim": 6607, - "claimed": 9010, - "claiming": 15286, - "claims": 6852, - "clair": 31441, - "clair": 14039, - "claire": 20410, - "claire": 10460, - "clam": 13588, - "clam": 32598, - "clamation": 21793, - "clamp": 41501, - "clams": 38849, - "clan": 29252, - "clan": 14114, - "clancy": 37227, - "clans": 38279, - "clap": 30037, - "clap": 25546, - "clapham": 43619, - "clapton": 37683, - "clar": 3617, - "clara": 19468, - "clare": 18948, - "clare": 15927, - "claremont": 47789, - "clarence": 29320, - "clari": 15175, - "clarify": 37004, - "clarinet": 41178, - "clarity": 21323, - "clark": 13340, - "clark": 7521, - "clarke": 11548, - "clarkson": 25706, - "clas": 32003, - "clash": 38367, - "clash": 9359, - "clashes": 25193, - "clasico": 43567, - "class": 2876, - "class": 1874, - "classes": 6919, - "classi": 2507, - "classic": 9353, - "classic": 2713, - "classical": 22179, - "classical": 11355, - "classicalmusic": 27806, - "classiccar": 46906, - "classiccars": 21064, - "classics": 10634, - "classification": 26612, - "classified": 22056, - "classmate": 37090, - "classmates": 30062, - "classof": 25345, - "classroom": 9001, - "classrooms": 25768, - "classy": 11615, - "clau": 7526, - "claude": 17461, - "claudi": 39439, - "claudia": 21893, - "claudio": 31230, - "claus": 23317, - "clause": 26151, - "clave": 24111, - "claw": 49230, - "claw": 19106, - "claws": 29161, - "clay": 10402, - "clay": 8823, - "clays": 26128, - "clayton": 46445, - "clayton": 19413, - "clc": 31380, - "cle": 1321, - "cle": 2537, - "clean": 3572, - "clean": 3772, - "cleaned": 17468, - "cleanenergy": 43538, - "cleaner": 15619, - "cleaners": 33258, - "cleaning": 7210, - "cleanliness": 47886, - "cleans": 40827, - "cleanse": 28717, - "cleanser": 44170, - "cleansing": 25931, - "cleanup": 22353, - "clear": 4631, - "clear": 3143, - "clearance": 17959, - "cleared": 14880, - "clearer": 37031, - "clearing": 15481, - "clearly": 7767, - "clears": 29092, - "clearwater": 32124, - "cleary": 44342, - "cleats": 33486, - "cleavage": 44165, - "cled": 12827, - "clegg": 42915, - "clemens": 45896, - "clement": 22592, - "clement": 24714, - "clemente": 42461, - "clementine": 47112, - "clements": 49175, - "clemson": 38170, - "clemson": 19537, - "clen": 35547, - "cleo": 40344, - "cleop": 36287, - "cleopatra": 41212, - "cler": 11828, - "clergy": 42635, - "cleric": 43748, - "clerk": 22230, - "clermont": 47529, - "cles": 8077, - "cleve": 37599, - "clevel": 7701, - "cleveland": 30716, - "cleveland": 8430, - "clever": 30977, - "clever": 13385, - "clg": 47546, - "cli": 1503, - "clich": 44407, - "click": 16676, - "click": 3585, - "clicked": 29015, - "clicking": 26542, - "clicks": 31250, - "client": 48528, - "client": 7467, - "clients": 8114, - "clif": 13182, - "cliff": 23827, - "cliff": 10625, - "cliffe": 15170, - "clifford": 24226, - "cliffs": 20953, - "clifton": 23878, - "climat": 37283, - "climate": 7854, - "climate": 4589, - "climateaction": 31622, - "climatechange": 11055, - "climates": 46022, - "climax": 37033, - "climb": 7421, - "climb": 10649, - "climbed": 22528, - "climber": 36910, - "climbers": 47648, - "climbing": 9877, - "climbs": 29098, - "clin": 2879, - "clinch": 30404, - "clinched": 44064, - "cline": 37460, - "cling": 37068, - "cling": 4760, - "clinic": 7926, - "clinical": 35133, - "clinical": 9148, - "clinicians": 45866, - "clinics": 23330, - "clint": 37542, - "clint": 21160, - "clinton": 34403, - "clinton": 5820, - "clio": 46889, - "clip": 39712, - "clip": 9289, - "clipped": 45524, - "clipper": 42245, - "clippers": 23319, - "clipping": 47484, - "clips": 16594, - "clique": 34983, - "clive": 36086, - "clive": 21509, - "cll": 46091, - "cllr": 45743, - "cllr": 23034, - "clo": 1194, - "cloak": 36528, - "clock": 19878, - "clock": 6716, - "clocked": 49049, - "clocks": 25895, - "clockwise": 46150, - "clockwork": 42297, - "clon": 24477, - "clone": 22854, - "clones": 48047, - "clooney": 33161, - "clos": 48821, - "close": 10603, - "close": 2660, - "closed": 4552, - "closely": 13478, - "closer": 6377, - "closes": 11354, - "closest": 14975, - "closet": 14221, - "closeup": 35439, - "closing": 7101, - "closure": 13249, - "closures": 22923, - "cloth": 14559, - "clothes": 7080, - "clothing": 7425, - "clou": 4069, - "cloud": 12965, - "cloud": 3887, - "cloudcomputing": 41390, - "clouds": 6244, - "cloudy": 13106, - "clough": 42909, - "clover": 39574, - "clover": 22812, - "clow": 18386, - "clown": 15329, - "clowns": 30820, - "cls": 44251, - "clt": 29651, - "clt": 24236, - "clu": 996, - "club": 9642, - "club": 1736, - "clubbing": 48128, - "clubhouse": 26553, - "clubs": 9437, - "clue": 14994, - "clueless": 35350, - "clues": 23764, - "clusive": 41362, - "cluster": 15595, - "clusters": 33217, - "clut": 28507, - "clutch": 13953, - "clutter": 40804, - "cly": 12037, - "clyde": 39557, - "clyde": 18469, - "cm": 10190, - "cm": 3741, - "cma": 30554, - "cma": 31388, - "cmc": 45839, - "cmdr": 48250, - "cme": 34946, - "cmo": 24589, - "cmon": 42904, - "cmp": 46355, - "cms": 22520, - "cmt": 42727, - "cmu": 43046, - "cn": 3886, - "cn": 16200, - "cna": 48287, - "cnbc": 41242, - "cnbc": 24371, - "cnblue": 36018, - "cnc": 20571, - "cnet": 47487, - "cnews": 24319, - "cng": 41496, - "cnn": 22405, - "cnn": 8259, - "cns": 46095, - "cny": 31614, - "co": 622, - "co": 1320, - "coa": 29167, - "coach": 3275, - "coach": 2312, - "coached": 30228, - "coachella": 20222, - "coaches": 6924, - "coaching": 7766, - "coal": 10227, - "coal": 7919, - "coalition": 12920, - "coast": 6398, - "coast": 3720, - "coastal": 38246, - "coastal": 10852, - "coaster": 15944, - "coasters": 31548, - "coastguard": 40601, - "coastline": 27959, - "coasts": 42225, - "coat": 28869, - "coat": 7356, - "coated": 23401, - "coates": 36899, - "coating": 25369, - "coatings": 48706, - "coats": 18075, - "cob": 20140, - "cob": 32863, - "cobain": 36866, - "cobalt": 30896, - "cobb": 22719, - "cobble": 47894, - "cobra": 21574, - "coc": 23036, - "coc": 39498, - "coca": 21197, - "cocac": 26393, - "cocacola": 31248, - "cocaine": 20534, - "coch": 18599, - "cochran": 48798, - "cochrane": 41752, - "coco": 11850, - "coco": 13316, - "cocoa": 18074, - "cocon": 8597, - "coconut": 9581, - "cod": 16132, - "cod": 11915, - "code": 11582, - "code": 3217, - "coded": 33703, - "coden": 43914, - "coder": 41561, - "codes": 14566, - "codi": 39711, - "coding": 12647, - "cody": 23222, - "cody": 12666, - "coe": 15386, - "coed": 41028, - "coel": 45633, - "coer": 41198, - "coeur": 44986, - "coffe": 2255, - "coffee": 12898, - "coffee": 2453, - "coffees": 41184, - "coffey": 48066, - "cofficial": 18757, - "coffin": 29907, - "cog": 26362, - "cog": 35960, - "cogn": 12210, - "cognac": 44361, - "cognition": 46825, - "cognitive": 16584, - "cohe": 20669, - "cohen": 13381, - "coherent": 48450, - "cohort": 22782, - "coil": 25307, - "coim": 41528, - "coin": 14651, - "coin": 4170, - "coinci": 14015, - "coincidence": 19807, - "coins": 10530, - "coke": 39602, - "coke": 14035, - "col": 754, - "col": 9371, - "cola": 15444, - "colbert": 31647, - "colby": 32068, - "colchester": 31715, - "cold": 11146, - "cold": 3153, - "colder": 23859, - "coldest": 31438, - "coldplay": 27770, - "cole": 9305, - "cole": 8166, - "coleman": 15774, - "coles": 40265, - "coles": 30398, - "coli": 18877, - "coli": 15910, - "colin": 20989, - "colin": 10238, - "coliseum": 21836, - "coll": 25982, - "coll": 23898, - "colla": 2929, - "collab": 14013, - "collabor": 4437, - "collaborate": 21271, - "collaborated": 42265, - "collaborating": 25545, - "collaboration": 6642, - "collaborations": 36520, - "collaborative": 15841, - "collaborator": 48186, - "collaborators": 45901, - "collage": 11258, - "collagen": 36120, - "collap": 16881, - "collapse": 16520, - "collapsed": 25037, - "collapses": 43601, - "collar": 39662, - "collar": 13497, - "collateral": 44512, - "colle": 1801, - "colleague": 13067, - "colleagues": 8203, - "collec": 1733, - "collect": 10186, - "collected": 11980, - "collecti": 18530, - "collectible": 25680, - "collectibles": 21519, - "collecting": 10325, - "collection": 2548, - "collections": 12760, - "collective": 10162, - "collectively": 40687, - "collector": 13522, - "collectors": 20540, - "collects": 31576, - "colleen": 31020, - "college": 13512, - "college": 2229, - "colleges": 17357, - "collegi": 16311, - "collegiate": 18068, - "colli": 8262, - "collide": 27214, - "collie": 30611, - "collier": 35748, - "collin": 24056, - "collin": 32116, - "colling": 32319, - "collingwood": 45873, - "collins": 8684, - "collision": 15407, - "collo": 25115, - "colloqui": 37243, - "colloquium": 46514, - "collu": 25658, - "collusion": 33864, - "colo": 7300, - "colo": 27288, - "cologne": 22216, - "cology": 19187, - "colom": 8987, - "colombia": 12901, - "colombian": 28701, - "colombo": 33207, - "colon": 8280, - "colon": 29050, - "colonel": 22674, - "coloni": 22667, - "colonial": 16530, - "colonialism": 43385, - "colonies": 38738, - "colony": 18767, - "color": 4036, - "color": 3140, - "colorado": 34580, - "colorado": 6742, - "colorec": 41171, - "colored": 11775, - "colorful": 11444, - "colori": 28764, - "coloring": 17696, - "colorized": 46730, - "colors": 5389, - "colorstv": 28195, - "colorway": 44576, - "colossal": 40258, - "colosse": 48142, - "colossus": 34022, - "colour": 10240, - "colour": 4769, - "coloured": 17111, - "colourful": 15562, - "colouring": 31803, - "colours": 7626, - "cols": 35726, - "colt": 19726, - "colton": 32249, - "coltrane": 42333, - "colts": 16135, - "colum": 4164, - "columb": 31043, - "columbi": 25947, - "columbia": 9410, - "columbus": 11273, - "column": 10593, - "columnist": 28958, - "columns": 29056, - "com": 610, - "com": 2464, - "coma": 19620, - "comb": 3587, - "comb": 16380, - "combat": 35083, - "combat": 9275, - "combating": 46121, - "combe": 14363, - "combin": 25112, - "combination": 11312, - "combinations": 34950, - "combine": 12919, - "combined": 10427, - "combines": 22991, - "combining": 23561, - "combo": 10155, - "combos": 48117, - "combs": 30694, - "combu": 35629, - "combustion": 44654, - "comcast": 30043, - "come": 4225, - "come": 891, - "comeback": 8234, - "comedian": 13848, - "comedians": 33758, - "comedic": 43360, - "comedy": 19346, - "comedy": 4749, - "comer": 42997, - "comer": 20916, - "comers": 34436, - "comes": 2091, - "comet": 21405, - "comets": 40636, - "comey": 22957, - "comfor": 6563, - "comfort": 44000, - "comfort": 7808, - "comfortable": 8652, - "comfortably": 30392, - "comforting": 33835, - "comforts": 42243, - "comfy": 15736, - "comi": 40781, - "comic": 7729, - "comic": 4962, - "comicart": 46018, - "comicbook": 46564, - "comicbooks": 22018, - "comiccon": 18379, - "comicon": 43820, - "comics": 4256, - "comin": 18164, - "coming": 14916, - "coming": 1171, - "comingsoon": 19894, - "comm": 965, - "comm": 11413, - "comman": 39780, - "command": 18391, - "command": 11350, - "commander": 11265, - "commanders": 41667, - "commanding": 36933, - "commandments": 43409, - "commando": 31361, - "commands": 38163, - "comme": 29692, - "commemor": 9495, - "commemorate": 21242, - "commemorates": 45149, - "commemorating": 28734, - "commemoration": 29288, - "commemorative": 24623, - "commen": 15795, - "commence": 25059, - "commenced": 43908, - "commencement": 21666, - "commences": 48551, - "commend": 37555, - "commended": 40702, - "comment": 20035, - "comment": 5761, - "commentary": 14146, - "commentator": 32016, - "commented": 28328, - "commenting": 37292, - "comments": 6606, - "commer": 4028, - "commerce": 8333, - "commerci": 15601, - "commercial": 31802, - "commercial": 6287, - "commercials": 30724, - "commish": 45399, - "commissi": 6000, - "commission": 5292, - "commissioned": 16565, - "commissioner": 10221, - "commissioners": 30702, - "commissioning": 29585, - "commissions": 20668, - "commit": 3041, - "commit": 11797, - "commitment": 7770, - "commitments": 32136, - "commits": 20241, - "committed": 7907, - "committee": 5636, - "committees": 40504, - "committing": 21937, - "commod": 9496, - "commodities": 30350, - "commodity": 29041, - "commodore": 31129, - "common": 8414, - "common": 4176, - "commonly": 20344, - "commons": 16653, - "commonwealth": 16569, - "comms": 18832, - "commu": 9561, - "commun": 1515, - "communal": 32809, - "communi": 16164, - "communic": 4784, - "communicate": 19809, - "communication": 7999, - "communications": 10052, - "communion": 28579, - "communism": 35387, - "communist": 18602, - "communities": 6361, - "community": 14784, - "community": 1927, - "commute": 15898, - "commuter": 27782, - "commuters": 30823, - "commuting": 43503, - "como": 16236, - "comp": 2561, - "comp": 11679, - "compac": 40014, - "compact": 13690, - "compan": 1995, - "companies": 5361, - "companion": 14963, - "companions": 37124, - "company": 2634, - "compar": 7580, - "comparable": 27092, - "comparative": 33388, - "compare": 13771, - "compared": 10544, - "compares": 25104, - "comparing": 20564, - "comparison": 14186, - "comparisons": 40870, - "compart": 30072, - "compartment": 40383, - "compass": 19438, - "compassion": 14463, - "compassionate": 30193, - "compati": 17295, - "compatibility": 41614, - "compatible": 21286, - "compe": 5254, - "compelled": 49375, - "compelling": 21766, - "compen": 42079, - "compens": 15172, - "compensation": 18663, - "compet": 2932, - "compete": 10038, - "competed": 27767, - "competen": 31853, - "competence": 31165, - "competency": 49293, - "competent": 28113, - "competes": 39826, - "competing": 13068, - "competit": 15892, - "competiti": 32581, - "competition": 3742, - "competitions": 23259, - "competitive": 10687, - "competitiveness": 43209, - "competitor": 26633, - "competitors": 23638, - "compilation": 20446, - "compiled": 34579, - "compla": 7428, - "complain": 19292, - "complained": 42029, - "complaining": 20812, - "complains": 46363, - "complaint": 20391, - "complaints": 20020, - "comple": 1730, - "complement": 36624, - "complementary": 48953, - "complete": 3263, - "completed": 5976, - "completely": 5989, - "completes": 19321, - "completing": 14949, - "completion": 15915, - "complex": 16099, - "complex": 6324, - "complexes": 47870, - "complexion": 47732, - "complexity": 24815, - "compli": 5270, - "compliance": 14658, - "compliant": 29893, - "complic": 11460, - "complicated": 16621, - "complications": 29936, - "compliment": 25116, - "complimentary": 20948, - "compliments": 25477, - "comply": 36281, - "component": 21284, - "components": 16816, - "compos": 7783, - "compose": 43659, - "composed": 19916, - "composer": 12104, - "composers": 33314, - "composing": 40412, - "composite": 21606, - "composites": 45395, - "composition": 17510, - "compositions": 44652, - "compost": 46002, - "compost": 33307, - "compound": 19980, - "compounds": 33991, - "compre": 8483, - "compreh": 42976, - "comprehen": 12050, - "comprehend": 48230, - "comprehensive": 13854, - "compress": 33353, - "compressed": 42359, - "compression": 25638, - "compressor": 39607, - "compri": 29445, - "compromise": 26611, - "compromised": 38576, - "compromising": 45436, - "comps": 48665, - "compton": 28364, - "compu": 11639, - "compul": 25869, - "compulsory": 39345, - "computing": 12732, - "comra": 25553, - "comrade": 30844, - "comrades": 29282, - "coms": 30493, - "con": 616, - "con": 2457, - "cona": 30605, - "conan": 24750, - "conce": 9145, - "concealed": 35419, - "conceded": 37895, - "conceived": 39725, - "concentr": 11085, - "concentrate": 30846, - "concentrated": 36776, - "concentration": 18565, - "concep": 8389, - "concepcion": 47035, - "concept": 6353, - "conceptart": 31162, - "conception": 30510, - "conceptions": 40307, - "concepts": 16763, - "conceptu": 42745, - "conceptual": 34070, - "concer": 2228, - "concern": 12928, - "concerned": 12020, - "concerning": 21772, - "concerns": 11134, - "concert": 32180, - "concert": 3066, - "concerto": 24710, - "concerts": 14418, - "concession": 38117, - "concessions": 43981, - "concier": 28859, - "concierge": 39850, - "conclave": 38098, - "conclu": 9627, - "conclude": 37525, - "concluded": 27825, - "concludes": 30634, - "conclusion": 20932, - "conclusions": 39507, - "conco": 43034, - "concor": 19913, - "concord": 26448, - "concordia": 35492, - "concours": 36282, - "concourse": 37793, - "concre": 43658, - "concrete": 9637, - "concussion": 28321, - "condem": 13287, - "condemn": 27212, - "condemned": 35145, - "condemns": 32092, - "conden": 24816, - "conditi": 11170, - "condition": 36978, - "condition": 7336, - "conditional": 24671, - "conditioned": 37014, - "conditioner": 31239, - "conditioning": 18181, - "conditions": 5892, - "condo": 19952, - "condol": 18661, - "condolences": 20836, - "condom": 39021, - "condomin": 42589, - "condoms": 37878, - "condor": 47643, - "condos": 42342, - "condu": 40772, - "conduc": 5379, - "conduct": 11647, - "conducted": 13080, - "conducting": 16787, - "conductor": 22317, - "conducts": 32084, - "cone": 39279, - "cone": 10266, - "cones": 26718, - "coney": 41837, - "conf": 6477, - "confe": 1968, - "confeder": 17104, - "confederate": 24864, - "confederation": 43484, - "conferen": 37961, - "conference": 2230, - "conferences": 22811, - "conferencing": 47320, - "confess": 38860, - "confession": 22572, - "confessions": 29404, - "confetti": 37923, - "confi": 5005, - "confidence": 8510, - "confident": 12365, - "confidential": 28712, - "configu": 46746, - "configur": 26950, - "configuration": 33378, - "confin": 45316, - "confined": 40973, - "confir": 3930, - "confirm": 12130, - "confirmation": 19645, - "confirmed": 6346, - "confirming": 38433, - "confirms": 11803, - "confis": 36285, - "confit": 42241, - "confl": 8173, - "conflic": 19029, - "conflict": 10397, - "conflicting": 43894, - "conflicts": 28713, - "confor": 40933, - "confron": 20033, - "confront": 38382, - "confrontation": 41478, - "confu": 6890, - "confuse": 37503, - "confused": 10946, - "confusing": 24683, - "confusion": 20493, - "cong": 24407, - "conge": 20013, - "congestion": 24432, - "congo": 20334, - "congr": 1227, - "congrats": 1887, - "congratul": 1750, - "congratulate": 16633, - "congratulated": 42004, - "congratulates": 24580, - "congratulating": 30967, - "congratulation": 24751, - "congratulations": 1864, - "congre": 7947, - "congreg": 40727, - "congregation": 32618, - "congress": 12452, - "congress": 4599, - "congressional": 15239, - "congressman": 17145, - "congresswoman": 37317, - "coni": 39031, - "coni": 36651, - "conj": 41543, - "conju": 33821, - "conjunction": 34226, - "conley": 44536, - "conline": 37593, - "conn": 41836, - "conn": 20329, - "conne": 8437, - "connec": 29933, - "connect": 19969, - "connected": 27506, - "connecting": 41429, - "connection": 26840, - "connections": 37161, - "connie": 25739, - "connoisse": 46012, - "connol": 27739, - "connolly": 29537, - "connor": 21984, - "connor": 10218, - "conom": 2664, - "conomy": 22529, - "conor": 29955, - "conor": 19478, - "conqu": 13382, - "conquer": 38585, - "conquer": 19821, - "conquered": 27099, - "conquering": 43778, - "conquest": 35367, - "conrad": 22073, - "cons": 10311, - "consci": 9427, - "conscience": 27310, - "conscious": 14914, - "consciously": 46755, - "consciousness": 17894, - "conse": 34887, - "consecu": 12084, - "consecutive": 12413, - "consen": 23110, - "consensus": 25071, - "consent": 21922, - "consequ": 13003, - "consequence": 42262, - "consequences": 15682, - "conserv": 4649, - "conservancy": 46729, - "conservation": 37616, - "conservation": 8322, - "conservative": 11421, - "conservatives": 17631, - "conservatory": 32140, - "conserve": 34231, - "consi": 2899, - "consider": 12471, - "consider": 6734, - "considerable": 38256, - "considerably": 38510, - "consideration": 24310, - "considerations": 33700, - "considered": 9487, - "considering": 10761, - "considers": 24691, - "consist": 10410, - "consist": 33735, - "consisted": 49354, - "consistency": 25683, - "consistent": 16439, - "consistently": 23799, - "consisting": 39241, - "consists": 23458, - "consol": 27869, - "consolation": 38888, - "console": 13403, - "consoles": 33136, - "consoli": 21586, - "consolidation": 41111, - "consor": 27108, - "consortium": 29988, - "conspir": 12680, - "conspiracy": 15236, - "const": 3826, - "constable": 29179, - "constan": 38718, - "constance": 40682, - "constant": 32000, - "constant": 13111, - "constantine": 30640, - "constantly": 14336, - "constell": 21913, - "constellation": 25991, - "constitu": 6299, - "constituency": 22464, - "constituents": 32075, - "constitution": 12157, - "constitutional": 16091, - "constra": 28973, - "constraints": 41910, - "constru": 3983, - "construc": 13321, - "construct": 24467, - "constructed": 16876, - "constructing": 33653, - "construction": 48873, - "construction": 4585, - "constructive": 31810, - "consu": 4689, - "consul": 5295, - "consul": 33630, - "consulate": 34341, - "consult": 9438, - "consult": 26727, - "consultancy": 31735, - "consultant": 14196, - "consultants": 27203, - "consultation": 15777, - "consultations": 43424, - "consulting": 15883, - "consume": 28919, - "consumed": 29653, - "consumer": 34408, - "consumer": 10422, - "consumers": 14014, - "consuming": 30607, - "consumption": 14904, - "cont": 2036, - "cont": 21425, - "contact": 39367, - "contact": 3523, - "contacted": 37331, - "contacts": 22789, - "contag": 29259, - "contagious": 33984, - "contain": 9948, - "contain": 15187, - "contained": 23836, - "container": 14913, - "containers": 20448, - "containing": 20281, - "contains": 12844, - "contamin": 24662, - "contaminated": 35773, - "contamination": 31770, - "conte": 15402, - "conte": 26882, - "contempl": 21924, - "contemplating": 33854, - "contempor": 14538, - "contemporary": 16607, - "contemporary": 8859, - "contemporaryart": 20212, - "contempt": 39293, - "conten": 42201, - "contender": 23573, - "contenders": 29711, - "content": 15526, - "content": 4750, - "contentmarketing": 20429, - "contents": 14850, - "contest": 23103, - "contest": 4576, - "contestalert": 27313, - "contestant": 25682, - "contestants": 28062, - "contested": 37845, - "contests": 32210, - "contex": 42015, - "context": 13089, - "conti": 46431, - "conti": 40842, - "contin": 1918, - "continent": 19623, - "continental": 14089, - "continents": 38642, - "conting": 27104, - "contingent": 36467, - "continu": 4688, - "continually": 34086, - "continuation": 38964, - "continue": 3942, - "continued": 10150, - "continues": 4305, - "continuing": 11009, - "continuity": 34035, - "continuous": 17033, - "continuously": 29634, - "continuum": 44978, - "contour": 34733, - "contr": 22871, - "contra": 9880, - "contra": 38620, - "contrac": 7581, - "contracep": 35109, - "contract": 6120, - "contracting": 39091, - "contractor": 21429, - "contractors": 22427, - "contracts": 16563, - "contradic": 27957, - "contrary": 32805, - "contrast": 18501, - "contrasting": 40758, - "contribu": 4753, - "contribute": 14112, - "contributed": 19397, - "contributes": 34203, - "contributing": 21762, - "contribution": 11116, - "contributions": 14465, - "contributor": 24553, - "contributors": 32908, - "contro": 2372, - "control": 9963, - "control": 3366, - "controlled": 14140, - "controller": 12929, - "controllers": 30374, - "controlling": 26427, - "controls": 15746, - "controversi": 13674, - "controversial": 14617, - "controversy": 18659, - "conv": 48382, - "conve": 18421, - "conven": 7283, - "conveni": 33278, - "convenience": 17859, - "convenient": 18978, - "conveniently": 40844, - "convention": 6752, - "conventional": 20835, - "conventions": 41404, - "conver": 6336, - "convergence": 35381, - "convers": 4577, - "conversation": 5690, - "conversations": 12326, - "converse": 24149, - "conversion": 15111, - "conversions": 44137, - "convert": 20074, - "converted": 20808, - "converter": 34611, - "convertible": 19608, - "converting": 34674, - "converts": 42470, - "convey": 38342, - "convic": 11150, - "convicted": 18668, - "conviction": 24967, - "convictions": 44366, - "convin": 12889, - "convince": 20351, - "convinced": 17388, - "convincing": 27742, - "convo": 19372, - "convocation": 30674, - "convos": 44842, - "convoy": 30292, - "conway": 21410, - "conwy": 48971, - "cony": 14501, - "coo": 1664, - "coo": 21691, - "coogs": 47624, - "cook": 9726, - "cook": 5977, - "cookbook": 21086, - "cooke": 29979, - "cooked": 11452, - "cooker": 23806, - "cookery": 38779, - "cookie": 9367, - "cookies": 8320, - "cookin": 46610, - "cooking": 39248, - "cooking": 6283, - "cookout": 39743, - "cooks": 24256, - "cool": 5594, - "cool": 2077, - "cooled": 37170, - "cooler": 11078, - "coolest": 10566, - "cooling": 15291, - "coom": 41726, - "coon": 34260, - "coon": 16958, - "coop": 39917, - "coop": 18910, - "cooper": 7264, - "cooper": 8133, - "cooperate": 42936, - "cooperation": 11785, - "cooperative": 24517, - "coops": 48531, - "coordin": 8187, - "coordinate": 38250, - "coordinated": 32540, - "coordinating": 40075, - "coordination": 25611, - "coordinator": 13967, - "coors": 36025, - "cop": 3196, - "cop": 7070, - "copa": 22749, - "copd": 45876, - "cope": 47635, - "cope": 12564, - "copeland": 37604, - "copen": 15637, - "copenhagen": 17390, - "coper": 41891, - "copernic": 45519, - "copied": 36770, - "copies": 9851, - "coping": 30545, - "copolitics": 45846, - "copp": 20937, - "copped": 42229, - "copper": 24741, - "copper": 10333, - "coppola": 47427, - "cops": 10719, - "copter": 28049, - "copy": 11376, - "copy": 4509, - "copying": 38925, - "copyright": 15778, - "cor": 851, - "cor": 18559, - "cora": 34953, - "coral": 31220, - "coral": 12054, - "corbett": 35699, - "corbin": 35578, - "corbyn": 14026, - "cord": 40893, - "cord": 11181, - "corden": 41999, - "cordi": 41681, - "cordless": 44412, - "cords": 22164, - "core": 19622, - "core": 5000, - "cores": 37874, - "corey": 31279, - "corey": 15288, - "corgi": 31320, - "cori": 26508, - "coriander": 37491, - "corin": 17716, - "corinthians": 34471, - "cork": 18148, - "cork": 10376, - "corn": 5202, - "corn": 5894, - "cornelius": 45865, - "cornell": 38689, - "cornell": 20859, - "corner": 18509, - "corner": 5253, - "corners": 19584, - "cornerstone": 36280, - "cornish": 23774, - "cornwall": 37903, - "cornwall": 10777, - "coron": 13210, - "corona": 25564, - "coronado": 43946, - "coronary": 45955, - "coronation": 25014, - "coroner": 47241, - "corp": 29203, - "corp": 10918, - "corpor": 4258, - "corporal": 42445, - "corporate": 33877, - "corporate": 6838, - "corporation": 11282, - "corporations": 25482, - "corps": 11330, - "corpse": 29408, - "corpus": 31672, - "correc": 5011, - "correct": 8340, - "corrected": 35628, - "correction": 20843, - "correctional": 38030, - "corrections": 37507, - "correctly": 15359, - "correlation": 29218, - "correspon": 20203, - "correspondent": 29996, - "corri": 12974, - "corridor": 20592, - "corrie": 23961, - "corro": 24936, - "corro": 42033, - "corrosion": 39191, - "corru": 6501, - "corrup": 30429, - "corrupt": 15194, - "corruption": 9141, - "corsa": 47670, - "corsair": 42367, - "corset": 40408, - "cortex": 40109, - "cortez": 30461, - "corvette": 24367, - "cory": 23221, - "cory": 18329, - "cos": 5865, - "cos": 5700, - "cosby": 30324, - "cosc": 45944, - "coscino": 47909, - "cose": 26495, - "cosm": 37486, - "cosme": 9628, - "cosmetic": 23918, - "cosmetics": 12896, - "cosmic": 47398, - "cosmic": 18304, - "cosmo": 12829, - "cosmo": 32072, - "cosmopolitan": 35518, - "cosmos": 22151, - "cospla": 15149, - "cosplay": 42401, - "cosplay": 6435, - "cosplayer": 30215, - "cosplaying": 46701, - "cost": 11360, - "cost": 4713, - "costa": 10480, - "costar": 28659, - "costarica": 31272, - "costco": 31045, - "costello": 30667, - "costing": 39193, - "costly": 30170, - "costs": 7628, - "costu": 5786, - "costume": 7235, - "costumes": 15150, - "cosy": 22848, - "cot": 4718, - "cot": 5871, - "cote": 44234, - "cote": 20751, - "cotland": 32576, - "cotsw": 23303, - "cotswolds": 35546, - "cott": 8211, - "cott": 11349, - "cottage": 12155, - "cottages": 34405, - "cotton": 22218, - "cotton": 7050, - "cou": 1368, - "couch": 12724, - "cougar": 35028, - "cougar": 27042, - "cougars": 20425, - "cough": 35631, - "cough": 18498, - "cougs": 28482, - "coul": 22483, - "could": 44812, - "could": 1510, - "couldn": 4072, - "couldnt": 29042, - "coulter": 42291, - "coun": 939, - "counc": 12927, - "council": 18187, - "council": 3620, - "councill": 15732, - "councillor": 21179, - "councillors": 29695, - "councilman": 40833, - "councils": 29938, - "counsel": 13780, - "counsel": 19814, - "counseling": 25000, - "counsell": 47510, - "counselling": 40581, - "counselor": 26148, - "counselors": 38688, - "count": 6073, - "count": 5887, - "countdown": 39559, - "countdown": 7500, - "counted": 23149, - "counter": 10134, - "counter": 7352, - "counterfe": 33067, - "counterfeit": 44242, - "counterpart": 39216, - "counterparts": 42106, - "counters": 46170, - "countess": 46276, - "counties": 12338, - "counting": 9723, - "countless": 21819, - "countries": 5489, - "country": 7896, - "country": 2157, - "countryfile": 47023, - "countrymusic": 30372, - "countryside": 16303, - "counts": 12264, - "county": 18734, - "county": 2116, - "coup": 9871, - "coup": 16479, - "coupe": 16773, - "couple": 40136, - "couple": 3377, - "coupled": 37153, - "couples": 14752, - "coupling": 45595, - "coupon": 14019, - "coupons": 23945, - "cour": 1391, - "coura": 4436, - "courage": 9828, - "courageous": 25005, - "courier": 27217, - "cours": 21493, - "course": 43225, - "course": 2613, - "courses": 9464, - "court": 16837, - "court": 2908, - "courte": 5088, - "courtesy": 5228, - "courthouse": 22205, - "courtney": 33601, - "courtney": 15990, - "courtroom": 41071, - "courts": 13514, - "courty": 20121, - "courtyard": 21900, - "cous": 48397, - "cousin": 7780, - "cousins": 14073, - "cout": 29118, - "coutinho": 35530, - "couture": 14808, - "cov": 19384, - "cov": 48385, - "cove": 21700, - "cove": 14708, - "coven": 12483, - "covenant": 29647, - "coventry": 18007, - "cover": 13534, - "cover": 2202, - "coverage": 6810, - "covered": 5603, - "covering": 9462, - "covers": 7745, - "covert": 40134, - "coveted": 36119, - "covington": 43196, - "cow": 5076, - "cow": 9706, - "cowan": 42699, - "coward": 33729, - "cowards": 48972, - "cowboy": 25833, - "cowboy": 13657, - "cowboys": 11864, - "cowboysnation": 43082, - "cowell": 39015, - "cowgirl": 47090, - "coworker": 30727, - "coworkers": 30821, - "coworking": 36034, - "cows": 15204, - "cowx": 23831, - "cox": 25784, - "cox": 11597, - "coy": 12765, - "coy": 15742, - "coyi": 48407, - "coyle": 45348, - "coyne": 44729, - "coyo": 16614, - "coyote": 26586, - "coyotes": 30423, - "coys": 19736, - "coz": 39922, - "coz": 14282, - "cozy": 14873, - "cp": 7905, - "cp": 9130, - "cpa": 30095, - "cpac": 45731, - "cpc": 26125, - "cpd": 23402, - "cpec": 48007, - "cpfc": 27553, - "cpi": 41795, - "cpl": 26852, - "cpr": 25134, - "cps": 27078, - "cpt": 32892, - "cpu": 27700, - "cq": 48910, - "cq": 48417, - "cr": 1075, - "cr": 3483, - "cra": 1184, - "cra": 18362, - "crab": 27382, - "crab": 11574, - "crabs": 30908, - "crack": 11222, - "crack": 10334, - "crackdown": 29527, - "cracked": 19826, - "cracker": 16298, - "crackers": 26200, - "cracking": 13008, - "cracks": 21426, - "cracy": 24749, - "cradle": 29384, - "crae": 40438, - "craf": 10873, - "craft": 7717, - "craft": 3588, - "craftbeer": 12371, - "crafted": 12424, - "crafthour": 42324, - "crafting": 26886, - "crafts": 33276, - "crafts": 13383, - "craftsman": 39528, - "craftsmanship": 36682, - "crafty": 32317, - "craic": 46962, - "craig": 14042, - "craig": 8061, - "craigslist": 43865, - "cram": 29809, - "cramer": 44592, - "cramps": 46106, - "cran": 7761, - "cranberries": 49361, - "cranberry": 23824, - "crane": 14626, - "cranes": 26979, - "crani": 45674, - "crank": 46246, - "crank": 32283, - "cranston": 44340, - "crap": 11899, - "crappy": 30475, - "crash": 37150, - "crash": 5033, - "crashed": 16638, - "crashes": 17013, - "crashing": 24991, - "crat": 46696, - "crate": 24756, - "crater": 22663, - "crates": 30172, - "cratic": 32175, - "crative": 39999, - "crats": 43056, - "crave": 33397, - "craven": 33625, - "craving": 18344, - "cravings": 34476, - "craw": 7400, - "crawfish": 42772, - "crawford": 15918, - "crawl": 20106, - "crawler": 41012, - "crawley": 42316, - "crawling": 37066, - "cray": 24184, - "cray": 27032, - "crayon": 41801, - "crayons": 43508, - "craz": 25776, - "craze": 30637, - "craziest": 32690, - "craziness": 46436, - "crazy": 17540, - "crazy": 3578, - "crc": 25618, - "cre": 798, - "cre": 17762, - "cream": 23184, - "cream": 3867, - "creams": 41447, - "creamy": 17206, - "crease": 48441, - "create": 30949, - "create": 3380, - "created": 4080, - "creates": 10361, - "creati": 6714, - "creating": 5524, - "creation": 38293, - "creation": 6900, - "creations": 17411, - "creative": 15237, - "creative": 4450, - "creatives": 29352, - "creativity": 9636, - "creator": 10173, - "creators": 17981, - "creature": 14317, - "creatures": 13938, - "cred": 7314, - "cred": 22377, - "credenti": 29487, - "credentials": 33422, - "credi": 21097, - "credibility": 34984, - "credible": 32983, - "credit": 21467, - "credit": 3900, - "credited": 32480, - "credits": 10654, - "creds": 43462, - "cree": 33961, - "cree": 36014, - "creed": 18845, - "creek": 26120, - "creek": 5526, - "creep": 8153, - "creep": 26084, - "creeper": 38662, - "creeping": 29697, - "creeps": 45135, - "creepy": 11943, - "creighton": 42823, - "creme": 22681, - "creole": 45632, - "crepe": 38611, - "crescent": 18211, - "cress": 39124, - "crest": 35985, - "crest": 15760, - "crested": 36656, - "crete": 8584, - "crew": 21560, - "crew": 3462, - "crewe": 43284, - "crews": 10463, - "cri": 1621, - "cri": 38962, - "crib": 23271, - "cric": 4328, - "cricke": 19098, - "cricket": 21859, - "cricket": 5373, - "cricketer": 28439, - "cricketers": 43986, - "cried": 15290, - "cries": 19769, - "crime": 13872, - "crime": 4896, - "crimea": 28614, - "crimes": 11827, - "crimin": 5874, - "criminal": 30197, - "criminal": 8255, - "criminals": 18783, - "crimson": 19437, - "cringe": 42588, - "cripp": 33588, - "cris": 37818, - "crises": 36403, - "crisis": 5712, - "crisp": 15145, - "crispr": 39784, - "crisps": 35744, - "crispy": 16458, - "criss": 29708, - "cristi": 12699, - "cristian": 48808, - "cristiano": 14807, - "cristina": 33395, - "cristo": 38315, - "crit": 3613, - "crit": 48130, - "criteri": 33627, - "criteria": 24849, - "criterion": 43841, - "criti": 25333, - "critic": 12417, - "critic": 19361, - "critical": 15314, - "critical": 6808, - "critically": 21570, - "criticalrole": 33606, - "criticalrole": 22742, - "criticalrolefanart": 43663, - "critici": 20333, - "criticism": 17405, - "criticize": 46081, - "criticized": 41557, - "critics": 16946, - "critique": 32982, - "critters": 35423, - "crm": 22610, - "cro": 1192, - "cro": 22522, - "croati": 28072, - "croatia": 13323, - "croatian": 34795, - "croc": 43350, - "croche": 35352, - "crochet": 17554, - "crock": 41685, - "crocker": 47843, - "crockett": 48313, - "crocod": 24519, - "crocodile": 24757, - "crocs": 38988, - "croft": 16657, - "croissant": 46011, - "croix": 44735, - "crom": 25082, - "crombie": 46162, - "cromwell": 45345, - "cron": 17361, - "croo": 16443, - "crook": 43744, - "crooked": 48473, - "crooked": 25644, - "crooks": 44226, - "crop": 40751, - "crop": 9955, - "cropped": 31139, - "crops": 16290, - "crore": 18274, - "crores": 37281, - "cros": 16670, - "crosby": 21095, - "cross": 5266, - "cross": 3417, - "crossed": 11731, - "crosses": 20473, - "crossfit": 47214, - "crossfit": 20395, - "crossing": 8673, - "crossings": 43517, - "crossover": 17194, - "crossroads": 27427, - "crossword": 32945, - "crou": 31206, - "crouch": 36506, - "crow": 3138, - "crow": 16019, - "crowd": 12036, - "crowd": 4570, - "crowded": 20182, - "crowdfunding": 17971, - "crowds": 16092, - "crowe": 33560, - "crowley": 32287, - "crown": 22190, - "crown": 6902, - "crowned": 16109, - "crowns": 33229, - "crows": 27134, - "croy": 21676, - "croydon": 27116, - "crs": 28449, - "crt": 43877, - "cru": 1815, - "cru": 29788, - "cruci": 18499, - "crucial": 12396, - "crude": 20677, - "cruel": 16073, - "cruel": 17573, - "cruelty": 20675, - "cruis": 27721, - "cruise": 36425, - "cruise": 6764, - "cruiser": 21394, - "cruises": 19214, - "cruising": 19743, - "crum": 43268, - "crumb": 48327, - "crumb": 39909, - "crumble": 36595, - "crumbs": 35893, - "crun": 17407, - "crunch": 16620, - "crunchy": 31366, - "crusad": 19133, - "crusade": 36846, - "crusader": 40171, - "crusaders": 31319, - "crush": 22296, - "crush": 7610, - "crushed": 18270, - "crusher": 44923, - "crushes": 35844, - "crushing": 20790, - "crust": 23136, - "crusted": 37314, - "cruz": 33689, - "cruz": 8403, - "cry": 2837, - "cry": 6290, - "crying": 6828, - "cryo": 32215, - "cryp": 4865, - "crypt": 37814, - "cryptic": 46925, - "crypto": 8080, - "crypto": 9608, - "cryptocurrencies": 33329, - "cryptocurrency": 12070, - "cryst": 15891, - "crystal": 17387, - "crystal": 6517, - "crystalli": 47551, - "crystals": 18350, - "cs": 11978, - "cs": 2804, - "csa": 26355, - "csc": 41727, - "csc": 37266, - "csd": 36913, - "cse": 41659, - "csg": 47085, - "csgo": 28928, - "csi": 41750, - "csi": 28070, - "csk": 43036, - "csm": 40061, - "csn": 46329, - "cso": 43864, - "csp": 39243, - "csr": 32105, - "csr": 24598, - "csrracing": 44193, - "css": 41418, - "css": 19846, - "cst": 17016, - "csu": 35948, - "csu": 31261, - "csw": 41031, - "ct": 3381, - "ct": 1122, - "cta": 28397, - "ctar": 27842, - "ctc": 34123, - "cte": 31410, - "cted": 2910, - "ctf": 35250, - "cthulhu": 41064, - "cting": 7985, - "ction": 17578, - "ction": 1569, - "ctions": 7021, - "ctive": 9313, - "cto": 17445, - "ctor": 8108, - "ctr": 35602, - "ctr": 18481, - "cts": 6936, - "ctto": 25118, - "ctu": 20834, - "cture": 17668, - "ctv": 21213, - "ctv": 27590, - "cu": 729, - "cu": 11224, - "cuando": 40388, - "cub": 16938, - "cub": 19972, - "cuba": 11576, - "cuban": 15536, - "cube": 47753, - "cube": 11353, - "cubes": 31413, - "cubic": 48159, - "cubic": 29614, - "cubs": 9858, - "cuck": 26364, - "cuckoo": 38062, - "cucu": 16705, - "cucumber": 19787, - "cucumbers": 48065, - "cud": 42684, - "cudd": 12820, - "cuddle": 19568, - "cuddles": 24001, - "cuddling": 29696, - "cuddly": 36208, - "cudi": 48713, - "cue": 13424, - "cuer": 39506, - "cues": 35719, - "cuff": 34693, - "cuff": 22414, - "cufflinks": 43938, - "cuffs": 37221, - "cuis": 9938, - "cuisine": 10605, - "cuk": 34838, - "cul": 1877, - "cula": 35935, - "cular": 10940, - "culars": 45719, - "cule": 31066, - "cules": 18984, - "culin": 14772, - "culinary": 16466, - "cull": 21880, - "cull": 42061, - "cullen": 25973, - "culmin": 33778, - "culo": 36305, - "culprit": 41593, - "cult": 11965, - "cultiv": 16781, - "cultivate": 42983, - "cultivated": 48901, - "cultivation": 41539, - "cultur": 20780, - "cultural": 34908, - "cultural": 6753, - "culturally": 36783, - "culture": 20197, - "culture": 3673, - "cultured": 40176, - "cultures": 19552, - "culver": 42103, - "cum": 20142, - "cum": 27119, - "cumb": 10858, - "cumber": 15309, - "cumberbatch": 27541, - "cumberland": 28747, - "cumbri": 32010, - "cumbria": 17953, - "cumin": 42285, - "cumple": 47050, - "cumul": 42961, - "cumulative": 47610, - "cumulus": 46313, - "cun": 12423, - "cun": 29532, - "cunningham": 25321, - "cuomo": 25681, - "cup": 5059, - "cup": 1937, - "cupboard": 32074, - "cupcake": 17025, - "cupcakes": 12747, - "cupid": 34885, - "cuppa": 28077, - "cups": 11463, - "cur": 1092, - "cur": 33073, - "curated": 20341, - "curator": 20753, - "curb": 21931, - "curd": 38881, - "cure": 36758, - "cure": 9088, - "cured": 26248, - "cures": 38204, - "curfew": 48826, - "curi": 12640, - "curing": 44169, - "curiosity": 21583, - "curious": 9865, - "curl": 24306, - "curled": 43734, - "curling": 18543, - "curls": 24340, - "curly": 20795, - "curran": 40999, - "currant": 43501, - "curren": 6142, - "currencies": 23530, - "currency": 7853, - "current": 3653, - "currently": 3792, - "currents": 35450, - "curric": 16201, - "curriculum": 17947, - "currie": 39385, - "curry": 49285, - "curry": 8051, - "curse": 18479, - "cursed": 26408, - "cursor": 46546, - "curt": 38137, - "curtain": 17223, - "curtains": 30223, - "curti": 39925, - "curtis": 13808, - "curve": 15792, - "curved": 25789, - "curves": 22814, - "curvy": 45788, - "cus": 2736, - "cusa": 47414, - "cuse": 37950, - "cush": 43731, - "cushi": 15333, - "cushion": 20853, - "cushions": 34163, - "cussion": 16658, - "cussions": 46853, - "cust": 20900, - "custard": 26516, - "custo": 4376, - "custody": 16176, - "custom": 2662, - "custom": 4996, - "custome": 41323, - "customer": 24035, - "customer": 5102, - "customerexperience": 45167, - "customers": 5528, - "customerservice": 40611, - "customiz": 41793, - "customizable": 48253, - "customization": 48244, - "customize": 32179, - "customized": 23229, - "customs": 16880, - "cut": 10511, - "cut": 3032, - "cute": 16031, - "cute": 2242, - "cuteness": 19342, - "cuter": 27151, - "cutest": 8032, - "cuth": 44328, - "cutie": 10733, - "cuties": 40939, - "cuties": 23420, - "cutiesaturday": 41883, - "cutler": 40428, - "cutlery": 49073, - "cutout": 45016, - "cuts": 7435, - "cutt": 27338, - "cutt": 47647, - "cutter": 19719, - "cutters": 44783, - "cutting": 7266, - "cuz": 9215, - "cv": 13531, - "cv": 13947, - "cvs": 29603, - "cw": 10652, - "cw": 11065, - "cwc": 19179, - "cwgc": 48527, - "cws": 45186, - "cx": 44457, - "cx": 14283, - "cy": 1470, - "cy": 1678, - "cyber": 5830, - "cyber": 10210, - "cybercrime": 41772, - "cybermonday": 36578, - "cyberpunk": 36896, - "cybersecurity": 10581, - "cyborg": 36650, - "cycl": 9791, - "cycle": 19083, - "cycle": 5072, - "cycled": 31055, - "cycles": 14605, - "cycli": 12201, - "cycling": 26353, - "cycling": 6321, - "cyclist": 20686, - "cyclists": 20303, - "cyclo": 18122, - "cyclone": 48094, - "cyclone": 20917, - "cyclones": 34669, - "cylin": 18569, - "cylinder": 22092, - "cylinders": 48888, - "cymb": 36677, - "cymru": 24005, - "cyn": 14324, - "cynthi": 41994, - "cynthia": 23748, - "cyp": 14809, - "cypress": 25347, - "cypri": 36481, - "cyprus": 15263, - "cyril": 36028, - "cyrus": 14204, - "cystic": 46131, - "cyto": 31864, - "cz": 22898, - "cz": 22921, - "cze": 12152, - "czech": 43151, - "czech": 16141, - "cé": 36454, - "cé": 18317, - "d": 67, - "d": 323, - "da": 925, - "da": 1140, - "daa": 32642, - "daan": 44814, - "dab": 10413, - "dab": 22900, - "dac": 16222, - "dac": 27478, - "daca": 28477, - "dach": 34166, - "dachsh": 41641, - "dachshund": 42720, - "dad": 4346, - "dad": 2639, - "dada": 31325, - "daddy": 29466, - "daddy": 6546, - "dade": 23299, - "dades": 28289, - "dads": 12741, - "dae": 23358, - "dae": 15422, - "daener": 46934, - "daes": 47282, - "daesh": 35047, - "daf": 9972, - "daf": 36704, - "daffodils": 44769, - "daft": 36347, - "dag": 11434, - "dag": 25650, - "dagger": 34251, - "dah": 16976, - "dah": 11776, - "dahl": 45816, - "dahl": 22621, - "dahlia": 41768, - "dai": 13559, - "dai": 10632, - "dail": 14676, - "dailies": 21260, - "daily": 6689, - "daily": 2873, - "dailynews": 43466, - "dailys": 43160, - "dailysketch": 46738, - "daim": 40421, - "dain": 32222, - "dain": 28315, - "daipur": 47631, - "dair": 19998, - "dair": 42078, - "dairy": 25243, - "dairy": 10302, - "dairyfree": 49366, - "dais": 10502, - "daisi": 39947, - "daisies": 40654, - "daisy": 39310, - "daisy": 12865, - "dak": 6999, - "dak": 16095, - "dakar": 31137, - "dakota": 38522, - "dakota": 12358, - "dal": 2476, - "dal": 5601, - "dala": 42675, - "dalai": 41222, - "dalail": 35169, - "dalailama": 35849, - "dale": 11533, - "dale": 4677, - "dalejr": 38207, - "dales": 29031, - "daley": 28544, - "dalgo": 43614, - "dali": 36735, - "dali": 25703, - "dalit": 45432, - "dall": 43631, - "dalla": 16772, - "dallas": 27414, - "dallas": 5759, - "dallascowboys": 33016, - "dalmati": 44275, - "dalton": 21488, - "daly": 24873, - "dam": 1880, - "dam": 4926, - "damage": 6822, - "damaged": 13568, - "damages": 28842, - "damaging": 20610, - "damas": 23345, - "damascus": 25396, - "dame": 10069, - "dames": 44548, - "dami": 17783, - "damian": 43307, - "damian": 25375, - "damien": 25090, - "dammit": 31057, - "damn": 37409, - "damn": 4451, - "damned": 28428, - "damon": 48503, - "damon": 18244, - "damp": 26520, - "dams": 37680, - "dan": 2257, - "dan": 2284, - "dana": 44834, - "dana": 13777, - "danao": 38598, - "danc": 3945, - "dance": 10619, - "dance": 2724, - "danced": 32891, - "dancehall": 33300, - "dancer": 11400, - "dancers": 13153, - "dances": 24083, - "dancing": 33280, - "dancing": 6226, - "dand": 12593, - "dandelion": 38903, - "dandy": 31932, - "dane": 19330, - "danes": 47477, - "dang": 4283, - "dang": 14992, - "danger": 20083, - "danger": 11212, - "dangerous": 7350, - "dangerously": 35012, - "dangers": 23726, - "dangle": 39907, - "dani": 3001, - "dani": 17009, - "daniel": 7859, - "daniel": 4981, - "daniela": 44466, - "danielle": 30396, - "danielle": 15292, - "danielpadilla": 34702, - "daniels": 16146, - "danish": 15467, - "dank": 31849, - "dann": 11951, - "danny": 14950, - "danny": 7621, - "dano": 29703, - "dans": 16241, - "dant": 48097, - "dant": 28237, - "dante": 21911, - "danube": 44594, - "dany": 47816, - "dao": 36099, - "dap": 12149, - "dap": 38034, - "daph": 24591, - "daphne": 31687, - "dapl": 34478, - "dapp": 46857, - "dapper": 26071, - "daq": 25381, - "dar": 1377, - "dar": 6242, - "dara": 17064, - "darby": 34366, - "darcy": 32916, - "dare": 14833, - "dare": 9863, - "daredevil": 28849, - "dares": 42973, - "dareto": 46794, - "dari": 16292, - "dari": 14552, - "daria": 45622, - "daries": 18184, - "daring": 28166, - "dario": 33918, - "darius": 32606, - "darje": 49089, - "dark": 5724, - "dark": 3144, - "darker": 18737, - "darkest": 25898, - "darkness": 10521, - "darling": 13048, - "darlings": 39961, - "darlington": 34565, - "darn": 26059, - "darrell": 33522, - "darren": 20263, - "darren": 12275, - "darry": 29200, - "darryl": 35359, - "darshan": 34564, - "dart": 14001, - "dart": 19841, - "darth": 41304, - "darth": 23164, - "dartmoor": 31477, - "dartmouth": 29667, - "darts": 15246, - "darwin": 43013, - "darwin": 20926, - "daryl": 45607, - "daryl": 24532, - "das": 9940, - "das": 7359, - "dash": 13858, - "dash": 10206, - "dashboard": 27679, - "dashi": 12876, - "dashing": 33825, - "dat": 1717, - "dat": 9445, - "data": 14876, - "data": 2281, - "datab": 11941, - "database": 14678, - "databases": 48384, - "datac": 27329, - "datacenter": 40133, - "datasci": 14496, - "datascience": 15748, - "dataviz": 28138, - "date": 34300, - "date": 1524, - "dated": 13564, - "dates": 7228, - "dating": 8534, - "dation": 15311, - "datlantic": 34270, - "dato": 36075, - "dats": 48674, - "dau": 3162, - "dau": 33828, - "daugh": 42523, - "daughter": 3944, - "daughters": 13585, - "daun": 29470, - "dav": 3700, - "dav": 46488, - "davao": 31502, - "dave": 10089, - "dave": 5077, - "daven": 28350, - "davenport": 34624, - "davey": 33391, - "davi": 1732, - "david": 4640, - "david": 2259, - "davidbowie": 44448, - "davido": 35989, - "davids": 46695, - "davidson": 13166, - "davies": 13120, - "davin": 43187, - "davis": 24426, - "davis": 5536, - "davison": 43725, - "davos": 31887, - "davy": 41565, - "daw": 5971, - "daw": 24404, - "dawg": 18660, - "dawgs": 26431, - "dawn": 30590, - "dawn": 7689, - "dawson": 18611, - "dax": 29458, - "day": 1405, - "day": 575, - "daya": 38165, - "daybreak": 33862, - "daycare": 36363, - "daydream": 41587, - "dayin": 20332, - "daylight": 20809, - "dayo": 29856, - "dayo": 46605, - "dayof": 16272, - "dayofthe": 38043, - "days": 1161, - "daysof": 12379, - "daysofcode": 36537, - "daysto": 29886, - "daystogo": 42198, - "dayswild": 42052, - "daytime": 22830, - "dayton": 35729, - "dayton": 20262, - "daytona": 16335, - "dayweekend": 44526, - "dayz": 35949, - "daz": 15449, - "daz": 43844, - "daze": 33591, - "dazz": 17149, - "dazzle": 41164, - "dazzling": 28821, - "db": 19100, - "db": 8128, - "dbacks": 31175, - "dbs": 40558, - "dbz": 49226, - "dc": 5074, - "dc": 2743, - "dca": 49107, - "dcc": 33747, - "dccomics": 17610, - "dcfc": 35526, - "dci": 35336, - "dcs": 42878, - "dcu": 42647, - "dd": 1353, - "dd": 3766, - "dda": 35202, - "ddad": 39049, - "dday": 32689, - "dday": 26243, - "ddc": 48513, - "ddd": 24183, - "dddd": 35362, - "dden": 5013, - "dder": 9300, - "dders": 24827, - "ddi": 44450, - "ddin": 17175, - "dding": 48101, - "dding": 8974, - "ddings": 49106, - "ddington": 29238, - "ddle": 17633, - "ddle": 8357, - "ddled": 38392, - "ddles": 33901, - "ddleston": 25647, - "ddling": 30981, - "ddlovato": 28244, - "ddos": 46463, - "ddr": 26027, - "dds": 48334, - "ddu": 43836, - "ddy": 14981, - "ddy": 7876, - "de": 561, - "de": 654, - "dea": 18477, - "deacon": 29155, - "dead": 3906, - "dead": 2747, - "deadliest": 40811, - "deadline": 47209, - "deadline": 8458, - "deadlines": 44959, - "deadly": 10756, - "deadpool": 21471, - "deaf": 28229, - "deaf": 18358, - "deal": 7249, - "deal": 2696, - "dealer": 15218, - "dealers": 21697, - "dealership": 32096, - "dealing": 13138, - "deals": 4469, - "dealt": 30101, - "dean": 13807, - "dean": 5828, - "deandre": 43635, - "deans": 46852, - "dear": 15696, - "dear": 3817, - "dearest": 24880, - "dearly": 31880, - "deas": 34715, - "death": 7163, - "death": 2767, - "deaths": 12253, - "deau": 12399, - "deaux": 19883, - "deb": 2987, - "deb": 25687, - "debat": 32082, - "debate": 5196, - "debates": 19239, - "debating": 23472, - "debbie": 47186, - "debbie": 16735, - "debit": 32410, - "debor": 16738, - "deborah": 40997, - "deborah": 22150, - "debra": 33233, - "debris": 19208, - "debt": 8932, - "debts": 38770, - "debu": 9790, - "debun": 33123, - "debut": 42608, - "debut": 4085, - "debuted": 25215, - "debuting": 34817, - "debuts": 17044, - "dec": 3063, - "dec": 4628, - "deca": 33428, - "decad": 29914, - "decade": 11099, - "decadent": 41716, - "decades": 10488, - "decal": 26678, - "decals": 37606, - "decan": 40677, - "decat": 35334, - "decath": 47455, - "decatur": 38540, - "decay": 22703, - "dece": 3534, - "deceased": 30035, - "december": 3864, - "decent": 10698, - "decentr": 28960, - "decentralized": 38485, - "decep": 33529, - "deception": 33046, - "deci": 2262, - "decide": 8447, - "decided": 4939, - "decides": 17269, - "deciding": 22513, - "decision": 5575, - "decisions": 9903, - "decisive": 28690, - "deck": 24885, - "deck": 6943, - "decked": 39096, - "decker": 21449, - "decks": 23968, - "decl": 7091, - "decla": 10739, - "declan": 42341, - "declar": 18040, - "declaration": 19714, - "declare": 19856, - "declared": 13845, - "declares": 23641, - "declaring": 33273, - "decline": 15084, - "declined": 28911, - "declines": 40478, - "declining": 29221, - "deco": 26412, - "deco": 16422, - "decor": 5148, - "decor": 6928, - "decorate": 23651, - "decorated": 15917, - "decorating": 16968, - "decoration": 16029, - "decorations": 19158, - "decorative": 19289, - "decre": 12284, - "decrease": 24703, - "decreased": 33913, - "decreasing": 43763, - "decree": 43327, - "ded": 16744, - "ded": 1241, - "dedic": 4701, - "dedicate": 27610, - "dedicated": 6770, - "dedication": 10188, - "dedly": 36204, - "deduc": 22799, - "dee": 5268, - "dee": 6705, - "deed": 30260, - "deeds": 24516, - "deejay": 48304, - "deejay": 44511, - "deemed": 28102, - "deen": 26456, - "deen": 12912, - "deep": 5462, - "deep": 3383, - "deepak": 45528, - "deeper": 15224, - "deepest": 22245, - "deephouse": 35684, - "deepi": 19371, - "deepika": 34120, - "deepikap": 29903, - "deepikapadukone": 30646, - "deeplear": 22181, - "deeplearning": 24362, - "deeply": 11449, - "deer": 19454, - "deer": 8700, - "deere": 32901, - "dees": 12547, - "deets": 35537, - "def": 2044, - "def": 11649, - "defam": 35670, - "defamation": 42741, - "default": 21650, - "defe": 4148, - "defeat": 8477, - "defeated": 8927, - "defeating": 22594, - "defeats": 16317, - "defect": 44013, - "defects": 37485, - "defen": 3619, - "defence": 30307, - "defence": 9659, - "defend": 21970, - "defend": 11397, - "defended": 27161, - "defender": 10618, - "defenders": 20063, - "defending": 13098, - "defends": 20134, - "defense": 45875, - "defense": 6021, - "defenseman": 43714, - "defenses": 49198, - "defensive": 10824, - "defi": 17244, - "defiance": 36186, - "defiant": 47597, - "defibrill": 47684, - "defic": 18022, - "defici": 23387, - "deficiency": 30685, - "deficit": 20156, - "defin": 3188, - "define": 14919, - "defined": 15278, - "defines": 28218, - "defining": 20504, - "definite": 40793, - "definitely": 4824, - "definition": 11405, - "definitive": 25298, - "defl": 31467, - "deforestation": 41330, - "defstar": 36427, - "defy": 39148, - "defying": 38496, - "deg": 38498, - "degra": 28939, - "degradation": 44468, - "degre": 4653, - "degree": 7119, - "degrees": 8000, - "deh": 35582, - "dei": 33833, - "dei": 23279, - "deir": 42948, - "deity": 42574, - "deja": 46902, - "dek": 23901, - "dekalb": 37775, - "del": 1233, - "del": 2003, - "dela": 37986, - "delaney": 31528, - "delav": 23706, - "delavin": 40477, - "delavin": 40776, - "delavinkisses": 40631, - "delaware": 17547, - "delay": 12955, - "delay": 10934, - "delayed": 14567, - "delaying": 43781, - "delays": 11232, - "dele": 7922, - "dele": 33431, - "delec": 38615, - "delectable": 45500, - "deleg": 8046, - "delegate": 27259, - "delegates": 14623, - "delegation": 14632, - "delete": 19204, - "deleted": 16588, - "deleting": 41857, - "delft": 42749, - "delgado": 49182, - "delhi": 26723, - "delhi": 5717, - "deli": 1932, - "deli": 18601, - "delia": 33193, - "deliber": 18316, - "deliberate": 38271, - "deliberately": 35163, - "delic": 13366, - "delicacy": 49181, - "delicate": 18768, - "delici": 19993, - "delicious": 3959, - "deliciously": 39589, - "deliciousness": 42819, - "delight": 46165, - "delight": 13073, - "delighted": 5943, - "delightful": 15513, - "delights": 25330, - "deline": 18797, - "delines": 13562, - "delish": 25093, - "deliver": 19561, - "deliver": 7396, - "delivered": 7278, - "deliveries": 29336, - "delivering": 9943, - "delivers": 11753, - "delivery": 5619, - "dell": 24381, - "dell": 10242, - "della": 22986, - "delle": 35963, - "deloit": 29428, - "deloitte": 38667, - "dels": 48636, - "delta": 32250, - "delta": 8768, - "delu": 18779, - "delusional": 48059, - "delux": 13709, - "deluxe": 14056, - "delve": 46008, - "dely": 15040, - "dem": 3251, - "dem": 7825, - "dema": 40268, - "dema": 45046, - "deman": 48366, - "demand": 13072, - "demand": 5650, - "demanded": 33699, - "demanding": 17099, - "demands": 14241, - "demar": 46566, - "demarcus": 47873, - "demb": 35930, - "demdebate": 43973, - "deme": 25143, - "demean": 37376, - "demen": 12604, - "dementi": 46028, - "dementia": 14047, - "demetri": 39553, - "demi": 32879, - "demi": 14480, - "demise": 28756, - "demo": 2930, - "demo": 7380, - "democr": 3573, - "democracy": 7758, - "democrat": 15431, - "democratic": 9149, - "democrats": 8865, - "demographic": 31308, - "demol": 19382, - "demolished": 26537, - "demolition": 22237, - "demon": 5635, - "demon": 12085, - "demonetisation": 41338, - "demonic": 46920, - "demons": 18388, - "demonstr": 8579, - "demonstrate": 22231, - "demonstrated": 29477, - "demonstrates": 24806, - "demonstrating": 22107, - "demonstration": 16722, - "demonstrations": 33964, - "demonstrators": 46450, - "demos": 19304, - "demp": 22490, - "dempsey": 30188, - "dems": 10989, - "demsin": 42664, - "demsinphilly": 43091, - "den": 1177, - "den": 1181, - "dena": 32431, - "denali": 48076, - "dence": 3370, - "dency": 11659, - "dend": 37447, - "dends": 43985, - "dene": 45128, - "dened": 19571, - "deng": 43098, - "deng": 41788, - "dengue": 41932, - "denham": 39180, - "deni": 21995, - "denial": 25716, - "denied": 15780, - "denies": 19565, - "denim": 13606, - "denis": 47630, - "denis": 18750, - "denise": 45900, - "denise": 20899, - "denmark": 13268, - "dennis": 32738, - "dennis": 10534, - "denny": 26808, - "denomin": 41016, - "dens": 16533, - "dense": 19353, - "density": 22431, - "dent": 3593, - "dent": 1258, - "dental": 24635, - "dental": 8382, - "dentally": 10346, - "dented": 21923, - "denti": 4418, - "dential": 5459, - "dentist": 17816, - "dentistry": 25754, - "dently": 28817, - "denton": 23567, - "dents": 1517, - "denver": 27847, - "denver": 8569, - "deny": 18679, - "denying": 32771, - "denzel": 42503, - "deo": 26406, - "deo": 12121, - "deodor": 47639, - "deol": 41902, - "deon": 31466, - "deon": 16079, - "dep": 6079, - "dep": 24370, - "depar": 10794, - "depart": 5343, - "depart": 30649, - "departed": 32541, - "departing": 26902, - "department": 5744, - "departments": 29523, - "departs": 38998, - "departure": 17850, - "depe": 36118, - "depend": 13894, - "depend": 27371, - "dependence": 40243, - "dependent": 23280, - "depending": 23673, - "depends": 20497, - "depic": 11307, - "depicted": 34637, - "depicting": 24970, - "depiction": 31071, - "depicts": 29340, - "deple": 38504, - "deplo": 9356, - "deplor": 39232, - "deploy": 26944, - "deployed": 20009, - "deploying": 42212, - "deployment": 20183, - "depo": 14276, - "depor": 36110, - "deport": 23389, - "deportation": 36617, - "deported": 39320, - "deportes": 47878, - "depos": 21266, - "deposit": 16775, - "deposits": 30740, - "depot": 12589, - "depp": 24941, - "depre": 7107, - "depress": 38869, - "depressed": 23269, - "depressing": 29235, - "depression": 10023, - "depri": 28587, - "depriv": 45809, - "deprivation": 47810, - "deprived": 39140, - "dept": 9201, - "depth": 10350, - "depths": 28855, - "depu": 6912, - "deputies": 24914, - "deputy": 7932, - "der": 839, - "der": 801, - "dera": 20696, - "derail": 48502, - "derby": 13904, - "derby": 7177, - "derbyshire": 22147, - "derdale": 21513, - "dere": 5701, - "dere": 44194, - "dered": 3776, - "derek": 22461, - "derek": 11205, - "derel": 46728, - "derer": 11289, - "derers": 20882, - "deri": 34573, - "derick": 33908, - "dering": 6076, - "deriv": 33458, - "derived": 26461, - "derland": 35488, - "derman": 29740, - "dermatology": 48051, - "dern": 30086, - "dero": 37203, - "dero": 34026, - "derrick": 21798, - "derry": 45777, - "derry": 20535, - "ders": 37307, - "ders": 1923, - "derson": 12677, - "dery": 17172, - "des": 6797, - "des": 1437, - "desai": 35316, - "desc": 13866, - "descen": 32318, - "descend": 26004, - "descend": 46241, - "descendants": 36323, - "descending": 36620, - "descent": 19375, - "desch": 49209, - "descri": 4637, - "describe": 10967, - "described": 14671, - "describes": 13678, - "describing": 24239, - "descrip": 41832, - "description": 13951, - "descriptions": 40653, - "desde": 42218, - "dese": 27195, - "deser": 3659, - "desert": 45776, - "desert": 7301, - "deserted": 41560, - "deserve": 7043, - "deserved": 10061, - "deserves": 9079, - "deserving": 26615, - "desh": 25320, - "desh": 7448, - "deshi": 42769, - "desi": 6772, - "desi": 26635, - "desig": 1250, - "design": 8359, - "design": 1681, - "designated": 24119, - "designation": 41155, - "designed": 4486, - "designer": 35640, - "designer": 5728, - "designers": 12720, - "designing": 13467, - "designs": 6747, - "designthinking": 32450, - "desirable": 32368, - "desire": 11858, - "desired": 28631, - "desires": 27598, - "desk": 11937, - "desk": 6550, - "desks": 41014, - "desktop": 14345, - "desmond": 27821, - "desol": 41258, - "desp": 3642, - "despair": 28097, - "desper": 10144, - "desperate": 15072, - "desperately": 21993, - "despic": 32442, - "despicable": 37158, - "despite": 5325, - "dess": 7096, - "dess": 10001, - "dessert": 9753, - "desserts": 22948, - "desses": 43913, - "dest": 6540, - "dest": 4549, - "destin": 4934, - "destination": 32191, - "destination": 9179, - "destinations": 16981, - "destined": 28525, - "destiny": 39875, - "destiny": 10867, - "destro": 8287, - "destroy": 8308, - "destroy": 11930, - "destroyed": 9965, - "destroyer": 25291, - "destroying": 19613, - "destroys": 27634, - "destruc": 22945, - "destruction": 14281, - "destructive": 29591, - "det": 28966, - "det": 15366, - "deta": 1914, - "detached": 26252, - "detail": 7657, - "detailed": 12609, - "detailing": 23163, - "details": 2353, - "detained": 20260, - "dete": 5606, - "detec": 17991, - "detect": 22744, - "detected": 26988, - "detecting": 41290, - "detection": 16220, - "detective": 13672, - "detectives": 27994, - "detector": 27689, - "detectors": 45063, - "detention": 16908, - "deter": 10742, - "deter": 47458, - "detergent": 46726, - "deterior": 28512, - "determin": 8325, - "determination": 17410, - "determine": 16768, - "determined": 14371, - "determines": 42192, - "determining": 39884, - "deth": 38375, - "deto": 39710, - "deton": 39335, - "detour": 31211, - "detox": 22459, - "detri": 47951, - "detro": 6210, - "detroit": 19404, - "detroit": 7073, - "detta": 45438, - "dette": 35750, - "deu": 21457, - "deuce": 45332, - "deus": 37625, - "deut": 14970, - "deutsch": 30389, - "deutsche": 32760, - "deutschland": 36878, - "deux": 47089, - "dev": 2797, - "dev": 3670, - "deva": 45179, - "devan": 37072, - "devast": 12913, - "devastated": 29865, - "devastating": 19280, - "devastation": 42452, - "devel": 1820, - "develop": 1966, - "develop": 7708, - "developed": 8763, - "developer": 10929, - "developers": 13248, - "developing": 8131, - "development": 2855, - "developmental": 29347, - "developments": 17393, - "develops": 29895, - "deven": 45537, - "devgn": 29871, - "devi": 12926, - "devi": 20717, - "deviant": 25593, - "deviantart": 26046, - "device": 8163, - "devices": 9067, - "devil": 8894, - "devil": 8043, - "deville": 34329, - "devils": 11683, - "devin": 31193, - "devin": 20996, - "devine": 33019, - "devlin": 48040, - "devo": 11861, - "devo": 43444, - "devon": 16205, - "devon": 10046, - "devops": 21504, - "devos": 40646, - "devote": 37777, - "devoted": 24561, - "devotees": 39759, - "devotion": 25821, - "devotional": 35456, - "devs": 27374, - "dew": 31952, - "dew": 16358, - "dewey": 40399, - "dex": 10030, - "dex": 13790, - "dexpo": 42502, - "dexter": 45049, - "dexter": 22781, - "dey": 11829, - "dez": 23190, - "dez": 8122, - "df": 12908, - "df": 10468, - "dfc": 41903, - "dfs": 32880, - "dfw": 20439, - "dg": 2394, - "dg": 9742, - "dgate": 41684, - "dge": 4016, - "dge": 1360, - "dged": 11830, - "dgeon": 45655, - "dgers": 8733, - "dges": 5432, - "dging": 9565, - "dh": 6669, - "dh": 9960, - "dha": 11629, - "dha": 27377, - "dhabi": 22349, - "dhaka": 32877, - "dham": 29635, - "dham": 30838, - "dhan": 12542, - "dhan": 28569, - "dhanush": 26162, - "dhanush": 36200, - "dhanushkraja": 29266, - "dhar": 12397, - "dharma": 30536, - "dhary": 28706, - "dhawan": 44699, - "dhe": 29706, - "dheim": 44280, - "dhi": 31553, - "dhi": 26166, - "dho": 37834, - "dhoni": 25698, - "dhru": 40257, - "dhry": 39960, - "dhs": 26849, - "dhu": 32387, - "di": 570, - "di": 1618, - "dia": 7351, - "dia": 3357, - "diab": 15954, - "diabe": 19167, - "diabete": 43826, - "diabetes": 10319, - "diabetic": 30230, - "diablo": 23931, - "diag": 6851, - "diagno": 7736, - "diagnose": 44429, - "diagnosed": 16979, - "diagnosis": 15715, - "diagnostic": 26351, - "diagnostics": 37723, - "diagram": 22697, - "dial": 18416, - "dial": 11381, - "dialo": 30709, - "dialog": 48945, - "dialogue": 11288, - "dialogues": 40330, - "dialysis": 44798, - "diam": 4347, - "diameter": 27189, - "diamon": 8873, - "diamond": 18535, - "diamond": 6235, - "diamonds": 12687, - "dian": 16021, - "dian": 4998, - "diana": 12803, - "diane": 15855, - "dianne": 42299, - "dians": 21041, - "diaper": 34382, - "diapers": 39659, - "diar": 25932, - "diaries": 15541, - "diary": 10380, - "dias": 22137, - "dias": 29354, - "diaspora": 28390, - "diaz": 17688, - "dic": 1404, - "dic": 6717, - "dicap": 30023, - "dicaprio": 30755, - "dice": 14406, - "dick": 14413, - "dick": 9554, - "dickens": 33421, - "dict": 45360, - "dict": 15159, - "dictat": 26156, - "dictator": 27399, - "dictatorship": 37989, - "dictionary": 19699, - "did": 1861, - "did": 1335, - "diddy": 33527, - "didi": 34396, - "didier": 45614, - "didn": 2376, - "didnt": 13057, - "dido": 31725, - "didyou": 12295, - "didyouknow": 12506, - "die": 3150, - "die": 2082, - "diec": 27729, - "diecast": 37936, - "died": 3622, - "diego": 30940, - "diego": 6306, - "diem": 45571, - "dience": 33686, - "dient": 27231, - "dier": 29702, - "dier": 16394, - "dies": 20104, - "dies": 1862, - "diesel": 46312, - "diesel": 10591, - "diest": 45739, - "diet": 21295, - "diet": 6582, - "dietary": 29009, - "dietrich": 47005, - "diets": 35173, - "dif": 18656, - "dif": 48731, - "diff": 44073, - "diff": 20331, - "diffe": 1967, - "differ": 34620, - "differen": 14903, - "difference": 4731, - "differences": 14003, - "different": 2731, - "differenti": 21729, - "differential": 34027, - "differentiate": 49032, - "differently": 18325, - "diffic": 6140, - "difficult": 7405, - "difficulties": 23468, - "difficulty": 25245, - "diffu": 31603, - "diffuser": 49400, - "dig": 1831, - "dig": 9887, - "dige": 17820, - "digest": 20413, - "digestion": 40533, - "digestive": 32304, - "digg": 43240, - "digger": 35919, - "diggin": 48466, - "digging": 14971, - "digi": 15627, - "digi": 39361, - "digimon": 44181, - "digit": 14899, - "digit": 27472, - "digital": 4704, - "digital": 2794, - "digitalart": 16987, - "digitalhealth": 32190, - "digitalindia": 46630, - "digitally": 27543, - "digitalmarketing": 15299, - "digitaltransformation": 20047, - "digiti": 25935, - "digits": 31710, - "digni": 45532, - "dignit": 39497, - "dignity": 17744, - "digo": 35701, - "digs": 26877, - "dih": 43089, - "dii": 32755, - "dijk": 44444, - "dik": 38854, - "dik": 37747, - "dike": 42683, - "dil": 7643, - "dil": 17942, - "dile": 25428, - "dilemma": 29787, - "dilig": 30664, - "dill": 12318, - "dill": 27206, - "dillon": 21056, - "dilu": 45242, - "dim": 19576, - "dim": 17523, - "dime": 24443, - "dimen": 10935, - "dimension": 20479, - "dimensional": 25252, - "dimensions": 25086, - "diment": 43500, - "dimes": 44888, - "dimini": 37459, - "dimit": 22250, - "dimitri": 48840, - "dimp": 38853, - "din": 1462, - "din": 5673, - "dina": 36815, - "dinah": 30903, - "dine": 20951, - "dine": 12989, - "diner": 16963, - "dinesh": 48341, - "ding": 7545, - "ding": 796, - "dinger": 45580, - "dingh": 48064, - "dings": 5473, - "dington": 24804, - "dinho": 47370, - "dini": 20196, - "dining": 8658, - "dinner": 27548, - "dinner": 2571, - "dinners": 33570, - "dino": 9692, - "dino": 14077, - "dinosa": 18955, - "dinosaur": 15095, - "dinosaurs": 20387, - "dio": 3779, - "dio": 1521, - "dioce": 20763, - "diocese": 27091, - "dion": 42899, - "dion": 16250, - "dior": 23655, - "dios": 37563, - "dious": 27417, - "dioxide": 38102, - "dip": 19918, - "dip": 11343, - "dipl": 8490, - "diplo": 38115, - "diplom": 11169, - "diploma": 21251, - "diplomacy": 23798, - "diplomat": 32828, - "diplomatic": 23782, - "diplomats": 44126, - "dipped": 30610, - "dipper": 49317, - "dipping": 33544, - "dips": 37522, - "dir": 4251, - "dir": 8478, - "dire": 38355, - "dire": 25664, - "direc": 1534, - "direct": 43224, - "direct": 6016, - "directed": 8392, - "directing": 21817, - "direction": 15923, - "direction": 5407, - "directional": 38687, - "directioner": 48042, - "directioners": 22055, - "directions": 16440, - "directive": 40630, - "directly": 9701, - "director": 20337, - "director": 2681, - "directorial": 45327, - "directors": 11940, - "directory": 25272, - "directs": 34349, - "directv": 48652, - "dirk": 28171, - "dirt": 31415, - "dirt": 11795, - "dirty": 20127, - "dirty": 7615, - "dis": 1518, - "dis": 6112, - "disa": 3882, - "disab": 47380, - "disabilities": 17350, - "disability": 48986, - "disability": 13261, - "disabled": 13613, - "disadvantaged": 40577, - "disagree": 23199, - "disapp": 5384, - "disappear": 21148, - "disappear": 25173, - "disappearance": 35929, - "disappeared": 23139, - "disappearing": 35819, - "disappears": 44406, - "disappo": 7605, - "disappoint": 25446, - "disappointed": 13794, - "disappointing": 21941, - "disappointment": 23884, - "disappoints": 48545, - "disappro": 48276, - "disar": 42971, - "disaster": 9072, - "disasters": 26976, - "disastrous": 35790, - "disc": 1472, - "disc": 10712, - "discar": 40532, - "discarded": 45197, - "discer": 49140, - "dischar": 22671, - "discharge": 32485, - "disci": 9559, - "discip": 38951, - "discipl": 10467, - "disciples": 39366, - "disciplinary": 20232, - "discipline": 18903, - "disciplines": 42032, - "discla": 40248, - "disclaimer": 46465, - "disclo": 17481, - "disclose": 46379, - "disclosed": 30905, - "disclosure": 26502, - "disco": 2475, - "disco": 11964, - "discography": 47545, - "discomfort": 48054, - "discord": 23582, - "discoun": 18515, - "discount": 7638, - "discounted": 20993, - "discounts": 18186, - "discoura": 45850, - "discourse": 29441, - "discover": 10539, - "discover": 4834, - "discovered": 6986, - "discoveries": 29308, - "discovering": 17967, - "discovers": 29719, - "discovery": 40491, - "discovery": 8027, - "discre": 20616, - "discrimin": 11721, - "discrimination": 14775, - "discs": 29270, - "discu": 1984, - "discus": 41828, - "discuss": 4312, - "discussed": 11300, - "discusses": 8116, - "discussing": 5900, - "discussion": 5060, - "discussions": 13806, - "dise": 4262, - "disease": 5336, - "diseases": 12035, - "disen": 46468, - "disgrace": 29877, - "disgraceful": 44146, - "disgu": 9793, - "disguise": 27803, - "disguised": 37149, - "disgusted": 41977, - "disgusting": 16218, - "dish": 11039, - "dish": 4531, - "disha": 42498, - "dishes": 11412, - "dishon": 30777, - "dishu": 44728, - "dishwasher": 40524, - "disin": 19484, - "disinfe": 48050, - "disintegr": 49275, - "disk": 17970, - "dislike": 30796, - "dism": 30836, - "dism": 38821, - "dismant": 36557, - "dismiss": 43287, - "dismissal": 42068, - "dismissed": 30087, - "dismisses": 45238, - "disney": 6729, - "disney": 4696, - "disneyland": 39481, - "disneyland": 13661, - "disneyworld": 28469, - "diso": 26305, - "disobe": 42841, - "dison": 19310, - "disorder": 12635, - "disorders": 17114, - "disp": 11073, - "dispar": 24633, - "disparities": 45122, - "dispat": 28652, - "dispatch": 26306, - "dispen": 19077, - "dispenser": 40116, - "disper": 34499, - "displa": 9326, - "displac": 17718, - "displaced": 22817, - "displacement": 37931, - "display": 4456, - "displayed": 18967, - "displaying": 26468, - "displays": 15648, - "dispo": 13651, - "dispon": 38872, - "disponible": 46130, - "dispos": 45177, - "disposable": 37275, - "disposal": 28231, - "dispro": 32927, - "dispropor": 40354, - "disproportion": 45492, - "disregard": 43869, - "disrespect": 34055, - "disrespectful": 41723, - "disru": 13763, - "disrup": 14641, - "disrupt": 25214, - "disrupted": 46674, - "disrupting": 42419, - "disruption": 19635, - "disruptive": 31554, - "diss": 10766, - "diss": 35688, - "dissec": 43879, - "dissemin": 40463, - "dissent": 45154, - "disser": 25560, - "dissertation": 29448, - "dissi": 25088, - "dissol": 27398, - "dissuper": 33461, - "dist": 5479, - "dist": 12116, - "distance": 7964, - "distances": 37078, - "distant": 18949, - "distill": 41586, - "distilled": 49179, - "distillery": 22200, - "distin": 11892, - "distinct": 25056, - "distinction": 28183, - "distinctive": 25486, - "distingui": 15053, - "distinguish": 45418, - "distinguished": 16513, - "distor": 23781, - "distortion": 43690, - "distr": 11885, - "distract": 39309, - "distracted": 24049, - "distraction": 32039, - "distress": 26866, - "distressed": 37515, - "distri": 5987, - "distribu": 6138, - "distribute": 32313, - "distributed": 16419, - "distributing": 35216, - "distribution": 10484, - "distributor": 28354, - "distributors": 44240, - "distric": 3208, - "district": 46683, - "district": 3506, - "districts": 17565, - "distur": 11732, - "disturb": 33018, - "disturb": 39449, - "disturbance": 42416, - "disturbed": 29967, - "disturbing": 21476, - "disupdates": 45667, - "dit": 5752, - "dit": 2524, - "dita": 47965, - "ditch": 43715, - "ditch": 19291, - "dited": 40392, - "diti": 2363, - "dition": 16452, - "dition": 3015, - "ditional": 4322, - "ditions": 4503, - "dito": 43705, - "dits": 49374, - "dity": 16436, - "dium": 2903, - "div": 5293, - "div": 14869, - "diva": 13605, - "divas": 23534, - "dive": 26042, - "dive": 9058, - "diver": 13119, - "diver": 22094, - "divergence": 48735, - "divergent": 36132, - "divers": 30241, - "divers": 27038, - "diverse": 11464, - "diversi": 24475, - "diversion": 38457, - "diversity": 35634, - "diversity": 6257, - "diverted": 41049, - "dives": 13893, - "divi": 8375, - "divid": 31337, - "divide": 18842, - "divided": 18689, - "dividend": 32067, - "dividends": 45146, - "dividing": 45605, - "divin": 21838, - "divine": 46919, - "divine": 10976, - "diving": 9886, - "divinity": 39754, - "divisi": 39196, - "division": 5378, - "divisional": 40912, - "divisions": 33715, - "divor": 13543, - "divorce": 17060, - "divorced": 39437, - "divya": 47767, - "diwali": 18218, - "dix": 45838, - "dix": 27620, - "dixie": 24484, - "dixit": 28279, - "dixon": 16086, - "diy": 28472, - "diy": 7845, - "diya": 36459, - "diz": 32740, - "dized": 36232, - "dizz": 40239, - "dizzy": 35464, - "dj": 3761, - "dj": 3723, - "djan": 35338, - "django": 46498, - "dji": 35284, - "dji": 28379, - "djing": 36113, - "djo": 19432, - "djoker": 42721, - "djokernole": 42830, - "djokovic": 27944, - "djs": 18117, - "dk": 20702, - "dk": 16196, - "dl": 12558, - "dl": 9373, - "dlc": 19079, - "dle": 11057, - "dle": 3287, - "dled": 23494, - "dler": 40279, - "dles": 7890, - "dless": 14997, - "dley": 12808, - "dling": 18221, - "dly": 3069, - "dm": 19070, - "dm": 4667, - "dma": 42903, - "dman": 18826, - "dmc": 28991, - "dmit": 31607, - "dmitry": 48326, - "dms": 19955, - "dmv": 27508, - "dmx": 45255, - "dn": 11552, - "dn": 7459, - "dna": 8790, - "dnb": 35422, - "dnc": 20237, - "dnd": 11678, - "dnr": 37051, - "dns": 39245, - "dnt": 26795, - "do": 639, - "do": 818, - "doa": 48332, - "dob": 29640, - "doba": 35605, - "dobbs": 43006, - "dobson": 46888, - "doc": 3009, - "doc": 7251, - "doch": 25101, - "dock": 17311, - "dock": 8997, - "docked": 46784, - "docker": 31152, - "docking": 40845, - "docks": 24091, - "docs": 15157, - "doctor": 7872, - "doctor": 5547, - "doctoral": 23649, - "doctorate": 39134, - "doctors": 9705, - "doctorwho": 12996, - "doctr": 28497, - "doctrine": 35612, - "docu": 4433, - "document": 29293, - "document": 15121, - "documentaries": 44209, - "documentary": 7881, - "documentation": 31560, - "documented": 22310, - "documenting": 37876, - "documents": 14105, - "dod": 13847, - "dod": 30187, - "dodd": 36748, - "dodge": 31263, - "dodge": 12093, - "dodgeball": 43244, - "dodger": 31641, - "dodgers": 12422, - "dodgy": 37727, - "doe": 13296, - "does": 2397, - "does": 1897, - "doesn": 2503, - "doesnt": 17937, - "dof": 8277, - "doff": 20193, - "dofficial": 42516, - "dog": 4326, - "dog": 1929, - "dogcelebration": 41819, - "dogday": 27475, - "doge": 42187, - "dogg": 20749, - "doggie": 32237, - "doggo": 42155, - "doggy": 26359, - "doglo": 40733, - "dogre": 40030, - "dogrescue": 44158, - "dogs": 42182, - "dogs": 3255, - "dogsoftwitter": 19415, - "doh": 23581, - "doha": 20908, - "doherty": 31774, - "doi": 36361, - "doin": 15412, - "doing": 37408, - "doing": 1960, - "doit": 32272, - "doit": 28109, - "doj": 25700, - "dojo": 35901, - "dok": 40547, - "dok": 41034, - "doka": 46528, - "dol": 2287, - "dol": 19170, - "dola": 38005, - "dolan": 27200, - "dolby": 42414, - "dolce": 30033, - "dolce": 30661, - "dole": 41040, - "doll": 27031, - "doll": 9286, - "dollar": 35092, - "dollar": 7474, - "dollars": 10669, - "dolls": 15090, - "dolly": 43281, - "dolly": 23821, - "dolom": 37137, - "dolores": 40741, - "dolph": 8900, - "dolph": 22257, - "dolphin": 42963, - "dolphin": 16464, - "dolphins": 14002, - "dom": 2164, - "dom": 1919, - "domain": 15492, - "domaine": 48744, - "domains": 36358, - "dome": 8515, - "dome": 9827, - "domen": 37584, - "domest": 21936, - "domestic": 28189, - "domestic": 9043, - "domin": 4361, - "dominance": 30546, - "dominant": 20565, - "dominate": 21431, - "dominated": 23048, - "dominates": 34043, - "dominating": 29303, - "domination": 30919, - "domingo": 24882, - "dominic": 39007, - "dominic": 19095, - "dominican": 22934, - "dominion": 27155, - "domino": 30752, - "dominos": 39770, - "domo": 44293, - "doms": 30126, - "don": 1067, - "don": 847, - "dona": 26789, - "donal": 42375, - "donald": 5990, - "donald": 4335, - "donaldson": 37783, - "donaldtrump": 6652, - "donat": 36384, - "donate": 6429, - "donated": 8705, - "donates": 26960, - "donating": 12621, - "donation": 7924, - "donations": 9928, - "doncaster": 38008, - "doncaster": 25352, - "doncasterisgreat": 47333, - "done": 5136, - "done": 1700, - "donegal": 24172, - "donesia": 41281, - "donet": 33724, - "donetsk": 33999, - "dong": 26242, - "dong": 31478, - "dongha": 28365, - "donghae": 28945, - "donia": 24014, - "donkey": 21415, - "donkeys": 44644, - "donna": 9158, - "donne": 30897, - "donnein": 38308, - "donneinarte": 40193, - "donnell": 35118, - "donnelly": 39070, - "donnie": 47058, - "donnie": 30609, - "donny": 37291, - "donny": 32887, - "dono": 14840, - "donor": 18013, - "donors": 17887, - "donovan": 21499, - "dons": 22127, - "dont": 8094, - "dont": 4632, - "donut": 18471, - "donuts": 13970, - "doo": 4543, - "doo": 11643, - "doodle": 9388, - "doodled": 41030, - "doodles": 22156, - "doodling": 37548, - "dooley": 47609, - "doom": 23263, - "doom": 14344, - "doomed": 33251, - "doomsday": 41791, - "doon": 36612, - "doop": 33886, - "door": 7188, - "door": 2489, - "doors": 4228, - "doorstep": 19533, - "doorway": 46575, - "dop": 42381, - "dop": 31722, - "dope": 42587, - "dope": 10094, - "doping": 30285, - "dopp": 21774, - "doppelg": 45216, - "doppler": 42540, - "dor": 2766, - "dor": 8695, - "dora": 18104, - "dorado": 32350, - "dorchester": 32656, - "dore": 39423, - "dores": 34323, - "dorf": 17296, - "dori": 49270, - "doria": 43186, - "dorian": 44016, - "doris": 24285, - "dork": 36206, - "dorm": 24263, - "doro": 15498, - "doro": 37389, - "dorothy": 20805, - "dors": 31240, - "dorset": 42109, - "dorset": 16047, - "dorsey": 41607, - "dortmund": 24290, - "dory": 36135, - "dos": 44258, - "dos": 5474, - "dose": 11497, - "doses": 37873, - "dossier": 46042, - "dost": 44222, - "dot": 7473, - "dot": 7004, - "dota": 23085, - "dotcom": 12443, - "dote": 31202, - "dothis": 47864, - "dotnet": 43124, - "dotorg": 46587, - "dots": 19019, - "dotted": 47950, - "dou": 1756, - "dou": 23608, - "doub": 19631, - "double": 13013, - "double": 3200, - "doubled": 24948, - "doubleheader": 34668, - "doubles": 12539, - "doubling": 36850, - "doubt": 37071, - "doubt": 8671, - "doubts": 30894, - "douche": 44292, - "doug": 20271, - "doug": 10758, - "dough": 15785, - "dough": 14983, - "doughnut": 32555, - "doughnuts": 31124, - "dougie": 46317, - "dougla": 9140, - "douglas": 10065, - "douglass": 45692, - "doun": 44785, - "dov": 38856, - "dova": 26551, - "dove": 27511, - "dove": 18281, - "dover": 43019, - "dover": 14683, - "doves": 47067, - "dow": 8022, - "dow": 10688, - "dowell": 27344, - "down": 1833, - "down": 1136, - "downe": 46501, - "downed": 35814, - "downer": 42522, - "downers": 43739, - "downey": 29429, - "downfall": 48702, - "downhill": 27387, - "downing": 28140, - "download": 35076, - "download": 3794, - "downloadable": 49105, - "downloaded": 22961, - "downloading": 30519, - "downloads": 26481, - "downpour": 39034, - "downpours": 40160, - "downs": 10706, - "downside": 41937, - "downstairs": 28174, - "downstream": 43822, - "downtime": 41964, - "downton": 45023, - "downton": 42668, - "downtown": 18230, - "downtown": 5061, - "downward": 37430, - "dowski": 43556, - "dox": 44786, - "dox": 14510, - "doyle": 17728, - "doyou": 27256, - "doz": 31106, - "dozen": 16401, - "dozens": 17883, - "dp": 23820, - "dp": 6465, - "dprint": 46644, - "dprinting": 16194, - "dprk": 47920, - "dps": 34288, - "dq": 28741, - "dr": 1084, - "dr": 1701, - "dra": 1114, - "dra": 7402, - "drac": 20168, - "dracing": 41253, - "dracula": 25405, - "draf": 37426, - "draft": 30624, - "draft": 5198, - "drafted": 19129, - "drafting": 33528, - "drafts": 29194, - "drag": 8452, - "drag": 12463, - "dragged": 27884, - "dragging": 37069, - "dragon": 9187, - "dragon": 5471, - "dragonball": 40959, - "dragoncon": 47802, - "dragonfly": 32824, - "dragons": 10203, - "dragrace": 40762, - "drags": 45368, - "drain": 23347, - "drain": 19467, - "drainage": 25953, - "drained": 44630, - "drains": 43638, - "drainthe": 47337, - "drake": 32504, - "drake": 8958, - "dral": 7503, - "dram": 6937, - "dram": 32170, - "drama": 5055, - "dramas": 33467, - "dramati": 43512, - "dramatic": 11240, - "dramatically": 24495, - "drank": 21712, - "draped": 49113, - "drastic": 43159, - "drastically": 35478, - "drau": 18621, - "draw": 17675, - "draw": 4001, - "drawer": 23219, - "drawers": 38975, - "drawing": 36996, - "drawing": 3610, - "drawings": 13397, - "drawn": 8893, - "draws": 12043, - "dray": 25562, - "drayton": 49044, - "drc": 21434, - "dre": 960, - "dre": 14584, - "dread": 17412, - "dread": 31403, - "dreaded": 47227, - "dreadful": 35846, - "dreality": 48367, - "dream": 4595, - "dream": 2984, - "dreambig": 46495, - "dreamcast": 47226, - "dreamed": 27984, - "dreamer": 25692, - "dreamers": 27194, - "dreaming": 11662, - "dreamliner": 49143, - "dreams": 4405, - "dreamt": 43743, - "dreamteam": 40090, - "dreamy": 23517, - "dred": 10903, - "dredge": 48783, - "dren": 29068, - "dren": 47309, - "drenched": 46378, - "dres": 48852, - "dres": 44697, - "dresden": 34836, - "dress": 12622, - "dress": 2595, - "dressage": 36144, - "dressed": 6559, - "dresser": 26346, - "dresses": 8184, - "dressing": 6348, - "drew": 18792, - "drew": 5281, - "drex": 33985, - "drey": 48271, - "dri": 1203, - "dri": 28833, - "drian": 36870, - "dribb": 42153, - "dric": 23448, - "dridge": 22956, - "drie": 40170, - "dried": 16037, - "drier": 39877, - "dries": 33857, - "drif": 33585, - "drift": 18194, - "drifting": 30276, - "drill": 11626, - "drilled": 46338, - "drilling": 18634, - "drills": 24378, - "drin": 3375, - "drin": 47133, - "drink": 14131, - "drink": 3979, - "drinking": 5778, - "drinklocal": 45998, - "drinks": 6732, - "drip": 24050, - "dripping": 38787, - "dris": 35804, - "drive": 11402, - "drive": 2620, - "driven": 9314, - "driver": 27563, - "driver": 4383, - "driverless": 46769, - "drivers": 7384, - "drives": 11441, - "driveway": 26273, - "driving": 37800, - "driving": 4161, - "drizzle": 28240, - "drm": 39674, - "dro": 1494, - "dro": 12442, - "drogba": 49199, - "droid": 38016, - "drome": 9157, - "dron": 43898, - "dron": 23360, - "drone": 33557, - "drone": 9397, - "drones": 14006, - "droo": 30715, - "drool": 41554, - "drooling": 44360, - "drop": 16407, - "drop": 3387, - "dropbox": 47216, - "dropped": 6792, - "dropping": 8339, - "drops": 6437, - "dros": 47033, - "drou": 38558, - "drought": 13935, - "drove": 13753, - "drow": 21159, - "drown": 28571, - "drowned": 34005, - "drowning": 24618, - "drs": 21257, - "dru": 2275, - "dru": 49048, - "drug": 20601, - "drug": 5600, - "drugs": 8021, - "druid": 40297, - "drum": 13353, - "drum": 8698, - "drummer": 13618, - "drummers": 46191, - "drumming": 35480, - "drummond": 42213, - "drums": 11690, - "drun": 15488, - "drunk": 37398, - "drunk": 8232, - "drunken": 28196, - "drupal": 46481, - "drush": 43009, - "drwho": 48342, - "dry": 13544, - "dry": 4501, - "dryer": 24425, - "drying": 23203, - "ds": 3361, - "ds": 646, - "dsa": 47607, - "dsb": 47168, - "dsb": 14257, - "dsburg": 47237, - "dsc": 37240, - "dsd": 45383, - "dsley": 40740, - "dslr": 33740, - "dsm": 39502, - "dson": 40310, - "dsp": 45291, - "dss": 41580, - "dstv": 35027, - "dt": 13104, - "dt": 7427, - "dthe": 13863, - "dtla": 31885, - "dtm": 42407, - "dts": 46233, - "du": 691, - "du": 3686, - "dua": 25244, - "dual": 39739, - "dual": 5347, - "duane": 38946, - "dub": 14526, - "dub": 13144, - "duba": 5485, - "dubai": 32599, - "dubai": 5985, - "dubbed": 27740, - "dublin": 20707, - "dublin": 6145, - "dubnation": 47329, - "dubois": 48046, - "dubrov": 46709, - "dubrovnik": 48724, - "dubs": 27013, - "dubstep": 38303, - "dubu": 43257, - "duc": 979, - "duc": 36446, - "ducati": 28570, - "ducation": 17197, - "duce": 3660, - "duchess": 21713, - "duck": 12708, - "duck": 6910, - "ducks": 11202, - "duct": 26829, - "dude": 48087, - "dude": 5710, - "dudes": 14449, - "dudley": 27324, - "due": 2887, - "duel": 27143, - "dues": 37646, - "duet": 25457, - "duf": 38713, - "duff": 38071, - "duff": 21934, - "duffy": 23599, - "dug": 22743, - "dug": 21000, - "dugg": 40523, - "duggan": 46169, - "dugout": 36831, - "duh": 26716, - "dui": 29693, - "duk": 14160, - "duke": 18402, - "duke": 7732, - "dukes": 27914, - "dul": 6738, - "dulce": 44872, - "dulil": 32565, - "dulkar": 47980, - "dull": 19433, - "dulu": 28865, - "duluth": 32109, - "dulwich": 47343, - "dum": 13400, - "dum": 11564, - "dumb": 15901, - "dumb": 12464, - "dumbass": 38980, - "dummies": 40899, - "dummy": 34246, - "dump": 12655, - "dump": 17146, - "dumped": 23768, - "dumping": 31707, - "dumplings": 35495, - "dumps": 45804, - "dumpster": 45467, - "dun": 2616, - "dun": 18284, - "dunbar": 41453, - "duncan": 31084, - "duncan": 13502, - "dundal": 38185, - "dundas": 39300, - "dundee": 18619, - "dune": 32833, - "dune": 28208, - "dunedin": 40121, - "dunes": 23526, - "dung": 33712, - "dungeon": 28812, - "dungeon": 22931, - "dungeons": 42572, - "dungeonsand": 34970, - "dungeonsanddragons": 35497, - "dunham": 42501, - "duni": 43454, - "dunk": 17222, - "dunkin": 48022, - "dunkin": 36415, - "dunkirk": 46928, - "dunks": 48977, - "dunlop": 34753, - "dunn": 19185, - "dunne": 38538, - "dunno": 24502, - "duo": 8696, - "dup": 36805, - "dup": 10445, - "duper": 44850, - "duplex": 41186, - "duplic": 28992, - "dupont": 35994, - "dur": 4355, - "dur": 23230, - "dura": 28173, - "dura": 47382, - "durability": 43671, - "durable": 22285, - "duran": 28185, - "durango": 44443, - "durant": 24861, - "duras": 27518, - "duration": 31663, - "durban": 24474, - "dure": 19108, - "durga": 38456, - "durham": 26765, - "durham": 14335, - "during": 1590, - "dus": 9931, - "dusa": 28546, - "dusk": 19708, - "dust": 29723, - "dust": 8349, - "dusted": 38274, - "duster": 46280, - "dustin": 42423, - "dustin": 21235, - "dusting": 41756, - "dusty": 22029, - "dut": 32625, - "dutch": 22277, - "dutch": 7991, - "duter": 21624, - "duterte": 22371, - "duties": 19603, - "dutt": 30081, - "dutton": 42771, - "duty": 6458, - "duval": 42459, - "duvet": 48006, - "dux": 28562, - "dv": 4288, - "dv": 26265, - "dvd": 7170, - "dvds": 36655, - "dvn": 29811, - "dvr": 29210, - "dw": 8455, - "dw": 19997, - "dwar": 13487, - "dwarf": 22643, - "dwayne": 31395, - "dwell": 27549, - "dwell": 18755, - "dwelling": 37098, - "dwight": 22473, - "dwp": 46976, - "dwts": 30220, - "dwyer": 43878, - "dx": 22717, - "dx": 15679, - "dy": 1444, - "dy": 907, - "dyce": 48325, - "dye": 37159, - "dye": 15997, - "dyed": 24906, - "dyer": 29495, - "dyes": 39874, - "dying": 5115, - "dyk": 12142, - "dyke": 32632, - "dylan": 21004, - "dylan": 9900, - "dyn": 44289, - "dyn": 30669, - "dynam": 5735, - "dynamic": 10057, - "dynamics": 14329, - "dynamite": 29003, - "dynamo": 28281, - "dynasty": 14593, - "dyne": 42756, - "dyou": 11484, - "dyour": 22525, - "dys": 11022, - "dys": 38384, - "dysfunction": 36865, - "dysfunctional": 40757, - "dysle": 33681, - "dyslexia": 43199, - "dyson": 34475, - "dyssey": 17435, - "dystop": 28276, - "dystopian": 38915, - "dz": 24421, - "dz": 22913, - "dé": 25466, - "dü": 46948, - "dÃŃ": 46988, - "e": 68, - "e": 324, - "ea": 2150, - "ea": 8100, - "eable": 20693, - "each": 31442, - "each": 2416, - "eachother": 40792, - "ead": 42556, - "ead": 45523, - "eae": 27446, - "eag": 3743, - "eager": 21551, - "eagerly": 30094, - "eagle": 20207, - "eagle": 7517, - "eagles": 6920, - "eal": 48872, - "ealing": 40484, - "eames": 49072, - "eamon": 45954, - "ean": 13327, - "ear": 1055, - "ear": 8373, - "earbuds": 47807, - "eared": 9127, - "earl": 30573, - "earl": 14235, - "earle": 40292, - "earlier": 4297, - "earliest": 22097, - "early": 15840, - "early": 2090, - "earn": 33977, - "earn": 8465, - "earned": 8898, - "earnest": 45422, - "earning": 14550, - "earnings": 15912, - "earns": 16760, - "earp": 35296, - "earphones": 44905, - "earring": 28664, - "earrings": 9136, - "ears": 9861, - "eart": 7086, - "earth": 5184, - "earth": 3475, - "earthand": 34229, - "earthandclouds": 34480, - "earthday": 19481, - "earthquake": 10060, - "earthquakes": 32895, - "earthy": 47139, - "earts": 38824, - "eas": 5740, - "ease": 13574, - "easier": 8817, - "easiest": 26314, - "easily": 8197, - "easing": 44825, - "easport": 42251, - "east": 5022, - "east": 2602, - "eastbound": 28827, - "eastbourne": 38455, - "eastenders": 23545, - "easter": 14783, - "easter": 4811, - "eastern": 34522, - "eastern": 6311, - "eastman": 48280, - "easton": 29619, - "eastside": 42650, - "eastwood": 28270, - "easy": 18308, - "easy": 3176, - "eat": 5418, - "eat": 3384, - "eaten": 16750, - "eater": 24060, - "eaters": 37645, - "eatery": 46559, - "eating": 4371, - "eatlocal": 42868, - "eaton": 28462, - "eats": 13188, - "eau": 17608, - "eazy": 36536, - "eb": 12283, - "eb": 8677, - "eba": 40889, - "ebay": 34412, - "ebay": 4099, - "eber": 34020, - "ebo": 46635, - "ebola": 15864, - "ebon": 22013, - "ebony": 30651, - "ebook": 13122, - "ebooks": 25774, - "ec": 747, - "ec": 10879, - "eca": 18465, - "ecar": 34500, - "ecb": 26205, - "ecc": 33128, - "eccc": 47401, - "eccentric": 43228, - "eccle": 27494, - "ece": 2163, - "eces": 5905, - "ecg": 45983, - "ech": 15797, - "ech": 31147, - "echel": 41233, - "echo": 17366, - "echo": 13989, - "echoes": 32564, - "eci": 31936, - "eck": 25866, - "eck": 15969, - "ecker": 39661, - "ecker": 40890, - "ecla": 47806, - "eclec": 25114, - "eclectic": 28382, - "eclip": 30841, - "eclipse": 11505, - "eclub": 38983, - "eco": 5106, - "eco": 10077, - "ecofriendly": 43412, - "ecol": 22706, - "ecological": 25127, - "ecology": 18578, - "ecommerce": 15529, - "econ": 26755, - "econ": 21158, - "econom": 2768, - "economic": 36649, - "economic": 5259, - "economical": 48782, - "economically": 39406, - "economics": 12625, - "economies": 27136, - "economist": 18836, - "economists": 43701, - "economy": 5644, - "ecor": 28962, - "ecosystem": 15788, - "ecosystems": 28725, - "ecoun": 27924, - "ecr": 48572, - "ecraft": 11439, - "ecs": 23485, - "ecstasy": 47286, - "ecstatic": 36244, - "ect": 25168, - "ecu": 13087, - "ecu": 32919, - "ecuador": 19813, - "ecz": 43530, - "ed": 843, - "ed": 538, - "eda": 10804, - "edad": 44724, - "eday": 39258, - "edc": 21245, - "edchat": 14702, - "edd": 35431, - "eddi": 42930, - "eddie": 22748, - "eddie": 9517, - "eddy": 25959, - "ede": 29632, - "eded": 19555, - "edel": 20460, - "edelman": 48139, - "eden": 23621, - "eden": 13741, - "eder": 16249, - "edes": 36247, - "edfringe": 27402, - "edg": 35955, - "edgar": 33543, - "edgar": 17914, - "edge": 16914, - "edge": 5461, - "edged": 39188, - "edges": 20938, - "edgy": 35393, - "edi": 8750, - "edi": 27148, - "edible": 19795, - "edic": 25184, - "edics": 30641, - "edin": 6524, - "edinburgh": 27574, - "edinburgh": 8068, - "eding": 5742, - "edison": 25846, - "edit": 8239, - "edit": 8013, - "edited": 13945, - "edith": 28597, - "editing": 10178, - "edition": 3062, - "editions": 21664, - "editor": 7661, - "editorial": 12325, - "editors": 19486, - "edits": 24945, - "edm": 37843, - "edm": 13539, - "edmon": 11275, - "edmond": 41581, - "edmonds": 46520, - "edmonton": 37311, - "edmonton": 15058, - "edmun": 36561, - "edmund": 27567, - "edna": 39002, - "edo": 29145, - "edo": 18096, - "edon": 41467, - "edor": 30184, - "edou": 47678, - "edp": 46066, - "eds": 1941, - "edsheeran": 30386, - "edt": 15071, - "edtech": 41825, - "edtech": 15262, - "edu": 11757, - "edu": 11799, - "eduardo": 30604, - "educ": 2200, - "educate": 17563, - "educated": 21447, - "education": 22358, - "education": 2806, - "educational": 10400, - "educator": 19875, - "educators": 15420, - "edwar": 27586, - "edward": 26184, - "edward": 7450, - "edwards": 12627, - "edwin": 48718, - "edwin": 22471, - "edy": 17072, - "edy": 4144, - "ee": 2644, - "ee": 4708, - "eed": 17513, - "eee": 24632, - "eee": 9361, - "eeee": 11696, - "eeee": 17570, - "eeeee": 26938, - "eeeeee": 41407, - "eek": 46591, - "eel": 27462, - "eels": 44416, - "eem": 27236, - "een": 47490, - "een": 21230, - "eer": 35409, - "eer": 31846, - "eera": 36664, - "eerie": 33846, - "ees": 40308, - "eet": 48935, - "eez": 39033, - "ef": 1490, - "ef": 1829, - "efa": 16999, - "eface": 48804, - "efan": 33556, - "efc": 22065, - "efcc": 46087, - "efer": 26199, - "eff": 20548, - "eff": 21715, - "effe": 2808, - "effec": 3943, - "effect": 5436, - "effective": 6837, - "effectively": 17516, - "effectiveness": 26847, - "effects": 7331, - "effic": 36004, - "efficacy": 39937, - "effici": 6670, - "efficiency": 11823, - "efficient": 11334, - "efficiently": 32915, - "effor": 6356, - "effort": 40078, - "effort": 6255, - "effortless": 41639, - "effortlessly": 42320, - "efforts": 6847, - "efish": 35813, - "efl": 27172, - "efron": 48111, - "efs": 7389, - "eg": 8053, - "eg": 14599, - "ega": 41193, - "egan": 42943, - "eger": 46704, - "eger": 22767, - "egg": 13778, - "egg": 5911, - "eggplant": 34906, - "eggs": 7099, - "ego": 34712, - "ego": 14250, - "egos": 43992, - "egre": 27044, - "egret": 42002, - "egy": 5224, - "egyp": 10250, - "egypt": 7267, - "egyptian": 12428, - "eh": 9277, - "eh": 9135, - "eha": 48563, - "ehealth": 48617, - "ehr": 45271, - "ehs": 44648, - "ei": 4006, - "ei": 18264, - "eic": 40251, - "eid": 28038, - "eid": 13979, - "eidmubarak": 46275, - "eiffel": 29720, - "eigh": 13468, - "eight": 7910, - "eighteen": 49316, - "eighth": 21237, - "eighty": 47449, - "eil": 29457, - "eileen": 31468, - "ein": 29944, - "ein": 24524, - "eindhoven": 47172, - "eing": 7702, - "einstein": 20587, - "eira": 47708, - "eis": 13802, - "eisen": 25273, - "eisenhower": 35562, - "either": 6036, - "ej": 19887, - "ej": 25009, - "ejec": 29771, - "ek": 4212, - "ek": 2092, - "el": 544, - "el": 832, - "ela": 11284, - "ela": 3787, - "elab": 38866, - "elabor": 26034, - "elaborate": 33855, - "elaine": 22523, - "elan": 17763, - "elan": 18399, - "eland": 24930, - "eland": 6275, - "elas": 41078, - "elast": 27479, - "elastic": 30282, - "elba": 48598, - "elbow": 21965, - "eld": 5684, - "elder": 11791, - "elder": 14416, - "elderly": 15455, - "elders": 28617, - "eldest": 33503, - "elding": 28223, - "elds": 13466, - "ele": 2084, - "ele": 9766, - "eleague": 36577, - "eleanor": 18604, - "elearning": 29969, - "elec": 1564, - "elec": 38768, - "elect": 15336, - "elected": 8828, - "election": 19312, - "election": 4247, - "electionday": 40540, - "elections": 6949, - "elector": 16465, - "electoral": 19544, - "electr": 3654, - "electra": 48959, - "electri": 23927, - "electric": 19547, - "electric": 5031, - "electrical": 12176, - "electrician": 46422, - "electricity": 10950, - "electrifying": 48843, - "electro": 11648, - "electro": 23244, - "electromagnetic": 46530, - "electron": 33396, - "electronic": 33865, - "electronic": 9273, - "electronica": 43119, - "electronics": 13081, - "eled": 20357, - "elee": 44112, - "eleg": 8075, - "elegance": 19146, - "elegant": 11124, - "elek": 34559, - "elem": 25406, - "element": 14909, - "elementary": 8143, - "elements": 10925, - "elen": 30654, - "elen": 39164, - "elena": 19421, - "eleng": 48180, - "eleph": 7554, - "elephant": 10299, - "elephants": 16871, - "eler": 24646, - "eless": 15244, - "eless": 30837, - "elets": 19400, - "elev": 7921, - "elevate": 26736, - "elevated": 23967, - "elevation": 23826, - "elevator": 19021, - "eleven": 31617, - "eleven": 17795, - "elf": 45961, - "elf": 11924, - "elfie": 39955, - "elg": 28790, - "elgin": 31868, - "eli": 1018, - "eli": 6292, - "elia": 10956, - "elian": 42508, - "elias": 47274, - "elias": 29902, - "elic": 34743, - "elic": 13492, - "elie": 38677, - "elie": 26501, - "elier": 14634, - "elife": 37429, - "elife": 12719, - "eligibility": 34937, - "eligible": 16978, - "elijah": 26065, - "elike": 48913, - "elim": 9296, - "elimin": 11386, - "eliminate": 19655, - "eliminated": 29075, - "eliminating": 36619, - "elimination": 24176, - "elin": 25353, - "elin": 13458, - "eline": 46199, - "eline": 7153, - "eling": 9990, - "elio": 47943, - "elion": 30682, - "elions": 44159, - "eliot": 33326, - "elis": 23411, - "elis": 48021, - "elisa": 25610, - "elisa": 44051, - "elisabeth": 33127, - "elise": 27124, - "elit": 40882, - "elite": 32277, - "elite": 6553, - "elited": 43943, - "elitedangerous": 47138, - "elites": 35975, - "elius": 35623, - "elive": 49338, - "elive": 23505, - "elives": 49174, - "elix": 32926, - "elixir": 42887, - "eliz": 42844, - "eliza": 6132, - "eliza": 29992, - "elizabeth": 22397, - "elizabeth": 7026, - "elk": 34013, - "elk": 21896, - "ell": 826, - "ell": 812, - "ella": 20692, - "ella": 2957, - "elland": 43326, - "ellar": 38443, - "ellas": 37053, - "elle": 12818, - "elle": 4765, - "elled": 13146, - "ellen": 14007, - "ellen": 12312, - "ellenshow": 34812, - "eller": 20927, - "eller": 4465, - "ellers": 19010, - "elles": 24431, - "elli": 3367, - "elli": 6673, - "ellic": 38905, - "ellie": 16769, - "ellier": 44054, - "ellin": 40374, - "elling": 2220, - "ellington": 34477, - "ellini": 43256, - "elliot": 20761, - "elliott": 44456, - "elliott": 13788, - "ellip": 44816, - "ellis": 11553, - "ellison": 32295, - "ello": 2512, - "ellor": 14594, - "ells": 2433, - "ellu": 35560, - "elly": 8041, - "elly": 20355, - "elm": 25199, - "elm": 22082, - "elman": 33622, - "elmer": 45958, - "elmo": 32150, - "elo": 6170, - "elo": 13490, - "elon": 26381, - "elon": 20406, - "elondon": 47377, - "elong": 44363, - "elonmusk": 37076, - "elope": 23367, - "eloqu": 37795, - "elos": 44733, - "elot": 43490, - "elove": 43319, - "elove": 19165, - "elover": 21732, - "elovers": 33946, - "els": 35958, - "els": 1645, - "elsa": 22050, - "else": 18857, - "else": 3344, - "elsewhere": 22906, - "elson": 19624, - "elt": 18692, - "elton": 20758, - "elu": 14208, - "elusive": 28903, - "elves": 29111, - "elvi": 47008, - "elvis": 47359, - "elvis": 14498, - "elxn": 37726, - "ely": 12189, - "ely": 1273, - "elyn": 29691, - "elyn": 18126, - "em": 908, - "em": 2270, - "ema": 7002, - "ema": 11131, - "emabiggest": 23101, - "emabiggestfans": 29587, - "email": 33537, - "email": 4462, - "emailed": 40470, - "emailmarketing": 40188, - "emails": 12871, - "eman": 24416, - "eman": 36868, - "emancip": 42996, - "emanuel": 35232, - "emb": 3692, - "embar": 8266, - "embaras": 48019, - "embark": 33953, - "embarra": 11382, - "embarrass": 27183, - "embarrassed": 28217, - "embarrassing": 19653, - "embarrassment": 41346, - "embassy": 13598, - "embe": 46041, - "embed": 19703, - "embedded": 22046, - "embelli": 32144, - "embellished": 46992, - "ember": 47049, - "emblem": 21163, - "embo": 23065, - "embr": 35267, - "embrac": 16928, - "embrace": 12118, - "embraced": 35739, - "embraces": 38404, - "embracing": 22196, - "embro": 12550, - "embroi": 18667, - "embroide": 21530, - "embroidered": 22381, - "embroidery": 20823, - "emc": 20897, - "emc": 31602, - "emcee": 42038, - "eme": 22910, - "eme": 21548, - "emea": 40352, - "emed": 11028, - "emen": 22033, - "ement": 40841, - "ement": 2057, - "ements": 11058, - "emer": 3132, - "emer": 25727, - "emerald": 46878, - "emerald": 16980, - "emerge": 22182, - "emerged": 26425, - "emergen": 24096, - "emergence": 39867, - "emergencies": 35759, - "emergency": 44038, - "emergency": 5897, - "emerges": 30801, - "emerging": 38174, - "emerging": 11113, - "emeritus": 35333, - "emerson": 24147, - "emery": 32678, - "emi": 44327, - "emi": 18525, - "emil": 26794, - "emil": 40624, - "emile": 43926, - "emili": 20709, - "emilia": 34238, - "emilio": 39722, - "emily": 14545, - "emily": 7640, - "emin": 17227, - "emin": 23995, - "eminem": 22129, - "eminent": 33779, - "eming": 40398, - "emir": 13337, - "emir": 47613, - "emirates": 47244, - "emirates": 17867, - "emission": 27761, - "emissions": 14172, - "emit": 49043, - "emma": 18177, - "emma": 7445, - "emmanuel": 48045, - "emmanuel": 20411, - "emmett": 45779, - "emmy": 35625, - "emmy": 17089, - "emmys": 21875, - "emo": 3738, - "emo": 19381, - "emoji": 16327, - "emojis": 27870, - "emon": 34406, - "emor": 45034, - "emory": 44274, - "emotion": 17464, - "emotional": 7357, - "emotionally": 24088, - "emotions": 12904, - "emp": 3831, - "emp": 41004, - "empathy": 22420, - "emper": 12522, - "emperor": 13828, - "empha": 16237, - "emphasi": 47176, - "emphasis": 29588, - "empire": 26212, - "empire": 7614, - "empires": 46510, - "emplo": 3409, - "employ": 37290, - "employ": 39626, - "employe": 5037, - "employed": 26567, - "employee": 36631, - "employee": 9560, - "employees": 7377, - "employer": 21296, - "employers": 17647, - "employment": 10959, - "empor": 27386, - "emporium": 48541, - "empower": 13612, - "empower": 17230, - "empowered": 29087, - "empowering": 20086, - "empowerment": 15747, - "empowers": 46206, - "empress": 26656, - "empty": 41203, - "empty": 7893, - "emra": 39259, - "ems": 2858, - "emt": 46360, - "emu": 48149, - "emu": 29296, - "emul": 23272, - "emy": 31076, - "en": 524, - "en": 576, - "ena": 3452, - "enab": 17308, - "enable": 15642, - "enabled": 23666, - "enables": 23417, - "enabling": 23590, - "enam": 41486, - "enamel": 22746, - "enary": 13132, - "enas": 34536, - "enation": 20860, - "enberg": 15658, - "enburg": 28430, - "enc": 33169, - "enca": 37774, - "encan": 30345, - "encapsul": 40874, - "ence": 6495, - "ence": 954, - "enced": 6549, - "ences": 3777, - "enchan": 17290, - "enchanted": 28258, - "enchanting": 32531, - "enchil": 47396, - "enci": 32207, - "encia": 30068, - "encies": 18729, - "encing": 10326, - "enclosed": 43243, - "enclosure": 37419, - "encom": 44026, - "encore": 20549, - "encoun": 17309, - "encounter": 13164, - "encountered": 32492, - "encounters": 25399, - "encoura": 6169, - "encourage": 12090, - "encouraged": 20299, - "encouragement": 24959, - "encourages": 23848, - "encouraging": 15875, - "encro": 45822, - "encry": 28600, - "encryp": 42928, - "encrypted": 48710, - "encryption": 31423, - "ency": 3484, - "encyclo": 32104, - "encyclopedia": 38376, - "end": 945, - "end": 806, - "enda": 6735, - "endale": 20290, - "endange": 13990, - "endangered": 14931, - "ende": 11373, - "ende": 40306, - "endeav": 18134, - "endeavor": 40502, - "endeavors": 44394, - "endeavour": 38035, - "ended": 2622, - "endemic": 41241, - "endent": 16265, - "ender": 48106, - "ender": 12383, - "enders": 7418, - "endez": 43850, - "endgame": 23042, - "endi": 31359, - "ending": 2695, - "endings": 36516, - "endish": 38841, - "endless": 12688, - "endlessly": 45145, - "endment": 45894, - "endo": 13476, - "endo": 15830, - "endocr": 36486, - "endof": 40786, - "endome": 46996, - "endon": 48018, - "endor": 8092, - "endorf": 37249, - "endorse": 28819, - "endorsed": 24307, - "endorsement": 21205, - "endorses": 34603, - "endorsing": 46779, - "endow": 45895, - "endra": 22321, - "ends": 1339, - "endthe": 46256, - "endu": 26032, - "endur": 19557, - "endurance": 21027, - "endure": 32419, - "enduring": 30851, - "enduro": 47042, - "ene": 3297, - "ene": 6049, - "ened": 2494, - "eneed": 45137, - "enegger": 33235, - "enei": 48906, - "enemies": 15824, - "enemy": 10310, - "enen": 45113, - "ener": 2244, - "ener": 13600, - "energ": 39451, - "energetic": 24197, - "energi": 23044, - "energies": 42374, - "energized": 48635, - "energy": 14974, - "energy": 2650, - "energye": 32271, - "energyefficiency": 40586, - "eners": 48208, - "enes": 42066, - "eness": 11806, - "enet": 46336, - "enew": 29672, - "enews": 13442, - "eney": 20706, - "enez": 33110, - "enf": 38167, - "enfield": 27808, - "enfor": 10592, - "enforce": 40224, - "enforced": 44597, - "enforcement": 12460, - "eng": 1035, - "eng": 6730, - "enga": 22297, - "engag": 6793, - "engage": 11089, - "engaged": 11475, - "engagement": 7281, - "engaging": 13060, - "enge": 26279, - "enge": 2742, - "engel": 38265, - "engen": 48286, - "enger": 6618, - "engers": 7533, - "engine": 3355, - "engine": 5857, - "engineer": 40151, - "engineer": 8517, - "engineered": 26580, - "engineering": 5273, - "engineers": 11494, - "engines": 14487, - "england": 20904, - "england": 3595, - "english": 15942, - "english": 3469, - "engra": 17560, - "engraved": 29421, - "engraving": 33309, - "engul": 43655, - "engv": 28401, - "enh": 7449, - "enhall": 48781, - "enham": 24592, - "enhan": 26827, - "enhance": 13993, - "enhanced": 16070, - "enhancement": 35601, - "enhances": 38259, - "enhancing": 25986, - "eni": 4395, - "eni": 17538, - "enic": 46780, - "enic": 28292, - "enig": 19754, - "enig": 48730, - "enight": 32848, - "enight": 20640, - "enigma": 34998, - "ening": 1133, - "enium": 34380, - "enix": 25720, - "enjo": 1498, - "enjoy": 12981, - "enjoy": 2218, - "enjoyable": 17444, - "enjoyed": 5045, - "enjoying": 3603, - "enjoyment": 34905, - "enjoys": 17024, - "enka": 43942, - "enko": 25312, - "enlar": 38136, - "enligh": 21364, - "enlighten": 28200, - "enlightened": 44032, - "enlightening": 44005, - "enlightenment": 29255, - "enlisted": 43555, - "enly": 43023, - "enn": 43563, - "enna": 8095, - "enne": 21176, - "enne": 11518, - "ennedy": 46266, - "ennes": 43613, - "enni": 7049, - "ennial": 14220, - "ennis": 48923, - "ennis": 26309, - "eno": 9429, - "eno": 12843, - "enoch": 47917, - "enor": 13955, - "enormous": 20129, - "enos": 44759, - "enote": 44955, - "enough": 2744, - "enow": 26876, - "enqu": 28417, - "enqui": 22810, - "enquire": 46658, - "enquiries": 31901, - "enquiry": 45141, - "enri": 18915, - "enrich": 20058, - "enrich": 45504, - "enriched": 45166, - "enrichment": 32903, - "enrique": 25489, - "enrol": 44279, - "enroll": 23739, - "enroll": 30366, - "enrolled": 36853, - "enrollment": 24875, - "enroute": 40548, - "ens": 41799, - "ens": 1323, - "ense": 12657, - "ense": 27658, - "ensemble": 14843, - "ensis": 32842, - "ensla": 37535, - "enslaved": 48675, - "ensure": 7492, - "ensures": 29707, - "ensuring": 19403, - "ent": 724, - "ent": 621, - "enta": 17681, - "ental": 32342, - "ental": 6168, - "entary": 9833, - "entation": 37412, - "ente": 17433, - "ente": 9935, - "ented": 3800, - "entennial": 43088, - "enter": 2963, - "enter": 3819, - "entered": 10679, - "entering": 12580, - "enterpri": 7339, - "enterprise": 9220, - "enterprises": 21219, - "enters": 15287, - "entertain": 5566, - "entertain": 23510, - "entertained": 30631, - "entertainer": 28674, - "entertaining": 13897, - "entertainment": 6166, - "entes": 24213, - "enthr": 36202, - "enthusi": 9631, - "enthusiasm": 20525, - "enthusiast": 27153, - "enthusiastic": 22068, - "enthusiasts": 27514, - "enti": 1938, - "ential": 5194, - "entially": 37695, - "entic": 10340, - "entine": 49212, - "enting": 20526, - "entire": 4709, - "entirely": 13911, - "entirety": 43242, - "entit": 15209, - "entities": 38134, - "entitled": 18680, - "entity": 28455, - "ently": 2922, - "ento": 21917, - "ento": 8762, - "entom": 31676, - "entourage": 47893, - "entr": 7129, - "entrance": 9129, - "entrata": 27304, - "entre": 34188, - "entre": 19600, - "entren": 46959, - "entrepre": 4583, - "entreprene": 4789, - "entrepreneu": 26784, - "entrepreneur": 12119, - "entrepreneur": 8033, - "entrepreneurial": 28261, - "entrepreneurs": 11054, - "entrepreneurship": 12858, - "entries": 13766, - "entry": 5362, - "ents": 870, - "entu": 6650, - "enty": 5657, - "enu": 23430, - "env": 32280, - "env": 39207, - "envel": 20052, - "envelope": 27358, - "envir": 3512, - "enviro": 46200, - "environ": 3599, - "environment": 33039, - "environment": 5501, - "environmental": 7831, - "environmentally": 32855, - "environments": 19577, - "envision": 49031, - "envoy": 29263, - "envy": 21017, - "eny": 20482, - "enya": 36509, - "enyc": 39520, - "enz": 25805, - "enz": 31873, - "enza": 25239, - "enzie": 14839, - "enzo": 31543, - "enzyme": 40348, - "enzymes": 47465, - "eo": 16054, - "eo": 11712, - "eoin": 48634, - "eon": 31915, - "eos": 17805, - "ep": 1178, - "ep": 1117, - "epa": 15866, - "epage": 26931, - "epaper": 33584, - "epcot": 32524, - "eper": 43071, - "eph": 45752, - "eph": 41240, - "ephe": 25129, - "epi": 7219, - "epi": 34641, - "epic": 12683, - "epic": 4991, - "epiconetsy": 49222, - "epide": 17382, - "epidemi": 44447, - "epidemic": 21522, - "epile": 23150, - "epilepsy": 29547, - "epilo": 31291, - "epilots": 39766, - "epiph": 40561, - "epiphany": 43251, - "epis": 24616, - "episcop": 28037, - "episcopal": 31221, - "episo": 2708, - "episode": 2965, - "episodes": 11837, - "epit": 21967, - "epitome": 35114, - "epl": 25950, - "epo": 25810, - "epp": 39054, - "epp": 39593, - "eps": 4090, - "epsilon": 40019, - "epsom": 40364, - "epstein": 34688, - "eq": 39331, - "eq": 33692, - "equ": 2563, - "equal": 17373, - "equal": 10433, - "equality": 48981, - "equality": 9578, - "equally": 18172, - "equals": 30278, - "equation": 28591, - "equations": 38225, - "eque": 19518, - "equestrian": 24728, - "equi": 8752, - "equili": 43262, - "equine": 33801, - "equinox": 32652, - "equip": 6526, - "equip": 36979, - "equipment": 6893, - "equipo": 45688, - "equipped": 18331, - "equitable": 44717, - "equities": 44015, - "equity": 11293, - "equivalent": 19489, - "er": 517, - "er": 528, - "era": 30548, - "era": 2072, - "erable": 18801, - "erad": 24194, - "eradic": 36346, - "eradicate": 46164, - "eral": 6222, - "eran": 13069, - "eras": 19325, - "eras": 39090, - "erase": 33893, - "erased": 46762, - "erasmus": 38935, - "erc": 5360, - "erc": 32382, - "erd": 25645, - "erdo": 21112, - "erdogan": 24453, - "ere": 17907, - "ere": 642, - "erec": 21526, - "erected": 39365, - "ered": 9097, - "eres": 15751, - "ergon": 38120, - "ergy": 19550, - "eri": 2769, - "eri": 9509, - "eria": 11634, - "erial": 5409, - "eric": 1206, - "eric": 5396, - "erica": 13208, - "erich": 26070, - "erick": 27434, - "erick": 36959, - "erickson": 45286, - "ericsson": 39645, - "eridge": 45408, - "erie": 7005, - "eries": 9099, - "erik": 22805, - "erik": 16532, - "erika": 25531, - "erin": 17532, - "erin": 11333, - "erina": 25176, - "ering": 1785, - "erit": 23335, - "eritrea": 30738, - "erjee": 41665, - "erly": 14380, - "erm": 31649, - "erman": 17990, - "ern": 6992, - "ern": 12140, - "ernal": 20868, - "ernan": 34617, - "ernation": 48796, - "erne": 33930, - "ernest": 23006, - "ernie": 23636, - "ernity": 14653, - "erno": 40812, - "ernst": 30099, - "ero": 3211, - "ero": 3732, - "erock": 38206, - "eron": 32837, - "eroom": 46690, - "eros": 30597, - "erose": 48657, - "erosion": 30174, - "erotic": 30708, - "erotica": 39126, - "erous": 6384, - "eroy": 36461, - "erp": 28268, - "err": 22479, - "err": 25346, - "erra": 48446, - "errands": 45485, - "error": 12097, - "errors": 21195, - "erry": 45236, - "erry": 24124, - "ers": 4840, - "ers": 612, - "ersfc": 37925, - "ership": 2884, - "erson": 25780, - "erson": 6811, - "ert": 40325, - "ert": 3112, - "erta": 32007, - "erton": 26245, - "erts": 12921, - "eru": 36068, - "erun": 41642, - "erup": 17093, - "erupted": 48862, - "eruption": 33705, - "erville": 37557, - "erwin": 43724, - "ery": 12467, - "ery": 1692, - "erz": 38711, - "es": 957, - "es": 542, - "esa": 46834, - "esa": 12489, - "esanders": 23099, - "esc": 3330, - "esc": 28420, - "escal": 15902, - "escap": 11499, - "escape": 32484, - "escape": 7568, - "escaped": 18707, - "escapes": 29916, - "escaping": 21767, - "escar": 39229, - "escence": 37972, - "esch": 46760, - "esch": 41945, - "esco": 32482, - "escobar": 48807, - "escor": 24360, - "escort": 24976, - "escorted": 47667, - "escorts": 48574, - "escu": 36517, - "esday": 19553, - "ese": 18766, - "ese": 2260, - "esg": 41674, - "esh": 17119, - "esh": 13407, - "esha": 28799, - "eshop": 38451, - "eshop": 45570, - "eshopsuk": 39349, - "esi": 30064, - "esis": 12414, - "esk": 19359, - "esl": 26201, - "eso": 29890, - "eso": 28921, - "esof": 17047, - "eson": 46845, - "esp": 3849, - "esp": 13870, - "espa": 37301, - "espan": 41731, - "españa": 41118, - "especially": 4878, - "esper": 29216, - "espino": 46633, - "espionage": 43498, - "espn": 22917, - "espn": 7540, - "espnu": 47747, - "espo": 34381, - "esports": 16035, - "espresso": 17098, - "esq": 47352, - "esqu": 34616, - "esque": 25877, - "ess": 3118, - "ess": 9764, - "essa": 39125, - "essay": 12751, - "essays": 27328, - "esse": 22305, - "essen": 30489, - "essence": 17830, - "essenti": 11163, - "essential": 47264, - "essential": 6895, - "essentially": 30042, - "essentials": 16191, - "essex": 30563, - "essex": 11623, - "est": 2291, - "est": 1509, - "esta": 41449, - "esta": 10135, - "estab": 7010, - "establi": 8412, - "establish": 19709, - "established": 13143, - "establishing": 29420, - "establishment": 20213, - "estas": 39072, - "estate": 47130, - "estate": 6159, - "estates": 26054, - "este": 12968, - "este": 20579, - "esteban": 48381, - "esteem": 31541, - "esteemed": 36293, - "ester": 45808, - "esthe": 18468, - "esther": 24393, - "estim": 8904, - "estimate": 21883, - "estimated": 16665, - "estimates": 21957, - "esto": 31589, - "esto": 23958, - "estonia": 26260, - "estonian": 48895, - "estrada": 48116, - "estre": 31271, - "estu": 26272, - "estuary": 35269, - "esur": 35758, - "esville": 39187, - "esy": 46268, - "et": 1169, - "et": 875, - "eta": 8761, - "etal": 25221, - "etary": 13074, - "etc": 5353, - "etched": 40411, - "etching": 41375, - "ete": 38820, - "ete": 40245, - "eter": 8587, - "eter": 17007, - "eternal": 13732, - "eternally": 48486, - "eternity": 23832, - "eters": 18392, - "etf": 31661, - "eth": 4819, - "eth": 5927, - "ethan": 24245, - "ethan": 15958, - "ethanol": 38166, - "ethe": 21312, - "ethel": 45921, - "ether": 23349, - "ethere": 18705, - "ethereal": 40925, - "ethereum": 19612, - "ethernet": 35026, - "ethi": 10327, - "ethic": 39104, - "ethical": 47041, - "ethical": 17679, - "ethics": 13355, - "ethiop": 10897, - "ethiopia": 13920, - "ethiopian": 24507, - "ethnic": 30522, - "ethnic": 16344, - "ethnicity": 46787, - "ethno": 34225, - "ethos": 48768, - "eti": 11188, - "eti": 30394, - "etienne": 46118, - "eties": 15137, - "etihad": 38489, - "etiquette": 37957, - "etis": 38216, - "etisation": 39733, - "etna": 41940, - "eto": 27829, - "eto": 33837, - "eton": 44339, - "etour": 41462, - "etr": 23012, - "etres": 42838, - "ets": 3442, - "etsy": 13237, - "etsy": 6282, - "etsym": 22902, - "etsymntt": 25416, - "etsyshop": 44643, - "ett": 32729, - "ett": 24998, - "etta": 30466, - "ette": 19981, - "ette": 5212, - "ettes": 35326, - "etto": 44219, - "etty": 40759, - "etu": 36593, - "etv": 49155, - "etv": 20325, - "etwork": 20585, - "ety": 25920, - "ety": 2746, - "etz": 36181, - "etz": 25301, - "eu": 1506, - "eu": 3238, - "eucalyp": 41068, - "eucalyptus": 42351, - "euchar": 38362, - "eugen": 30678, - "eugene": 17760, - "eul": 46749, - "eun": 16431, - "eun": 26219, - "eunhyuk": 47526, - "eup": 44435, - "euph": 21386, - "euphoria": 41051, - "eur": 18343, - "eur": 12018, - "eura": 32605, - "eure": 25311, - "euref": 48017, - "eureka": 31686, - "euro": 2039, - "euro": 8463, - "euroleague": 46821, - "europa": 18290, - "europale": 42473, - "europaleague": 44029, - "europarl": 44922, - "europe": 4198, - "europe": 3848, - "european": 26712, - "european": 4759, - "europeans": 37082, - "euros": 22274, - "eurovision": 17593, - "eurozone": 42555, - "eurusd": 40895, - "eus": 44214, - "euston": 46905, - "euthan": 43280, - "euve": 40652, - "eux": 25019, - "ev": 776, - "ev": 10133, - "eva": 6845, - "evacu": 13187, - "evacuated": 26806, - "evacuation": 27353, - "eval": 25139, - "eval": 9703, - "evalu": 10314, - "evaluate": 27174, - "evaluating": 34541, - "evaluation": 17640, - "evan": 12821, - "evan": 12847, - "evangel": 20518, - "evangeli": 21372, - "evangelical": 36151, - "evangelist": 42275, - "evankirstel": 46581, - "evans": 8836, - "evansville": 44782, - "evapor": 33352, - "evasion": 48795, - "eve": 5732, - "eve": 1866, - "eved": 19820, - "evel": 39315, - "evelyn": 26687, - "evement": 8210, - "even": 6359, - "even": 1427, - "evening": 34487, - "evening": 2285, - "evenings": 19994, - "evenly": 45974, - "event": 10612, - "event": 1655, - "eventful": 45628, - "evento": 38155, - "eventprofs": 24980, - "events": 3667, - "eventu": 14055, - "eventual": 45321, - "eventually": 14397, - "ever": 888, - "ever": 1247, - "everest": 21722, - "everett": 25456, - "everglades": 46294, - "evergreen": 23852, - "everlasting": 32849, - "evers": 31914, - "everton": 13315, - "every": 1091, - "every": 1505, - "everybody": 5901, - "everyday": 25049, - "everyday": 5160, - "everyone": 1584, - "everything": 36376, - "everything": 2410, - "everytime": 16911, - "everywhere": 6364, - "eves": 7323, - "evi": 5348, - "evi": 36989, - "evic": 21336, - "eviction": 37111, - "eviden": 46220, - "evidence": 6439, - "evident": 34529, - "evie": 47195, - "evil": 23218, - "evil": 6006, - "eville": 16143, - "eving": 24729, - "evo": 17962, - "evo": 13169, - "evoc": 43133, - "evol": 5350, - "evolu": 7725, - "evolution": 8902, - "evolutionary": 30629, - "evolve": 23406, - "evolved": 22613, - "evolving": 23675, - "evp": 46154, - "evs": 33576, - "ew": 11942, - "ew": 15428, - "ewan": 40247, - "ewe": 48438, - "ewing": 38873, - "ews": 9878, - "ex": 659, - "ex": 4118, - "exac": 5460, - "exact": 12651, - "exactly": 5840, - "exagger": 29766, - "exal": 49324, - "exam": 4428, - "exam": 8785, - "examination": 20970, - "examine": 25728, - "examined": 44004, - "examiner": 29149, - "examines": 28160, - "examining": 30616, - "example": 6228, - "examples": 14790, - "exams": 14028, - "exas": 47536, - "exc": 1302, - "excav": 20733, - "excavation": 45909, - "exce": 10999, - "exceed": 32521, - "exceeded": 36221, - "exceeding": 47213, - "exceeds": 49353, - "excel": 28351, - "excel": 18754, - "excell": 3298, - "excellence": 8171, - "excellency": 36503, - "excellent": 4239, - "excelsi": 47315, - "excep": 8882, - "except": 8541, - "exception": 25018, - "exceptional": 13425, - "exceptionally": 29306, - "excer": 17737, - "excerpt": 20586, - "excess": 22491, - "excessive": 21332, - "exchange": 6616, - "exchanged": 48919, - "exchanges": 29730, - "exchanging": 47760, - "excit": 10510, - "excite": 47711, - "excited": 1889, - "excitement": 11407, - "exciting": 4300, - "exclu": 3114, - "exclude": 49235, - "excluded": 46216, - "excluding": 44326, - "exclusion": 40219, - "exclusive": 3747, - "exclusively": 13565, - "exclusives": 47149, - "excu": 7324, - "excur": 27533, - "excursion": 34869, - "excuse": 9266, - "excuses": 19388, - "exe": 3554, - "exe": 48027, - "exec": 15052, - "execs": 35728, - "execu": 4360, - "execute": 36405, - "executed": 20432, - "execution": 18085, - "executive": 5944, - "executives": 24357, - "exem": 19753, - "exemp": 28602, - "exempl": 36371, - "exemplary": 39123, - "exempli": 41934, - "exempt": 44278, - "exemption": 47481, - "exer": 40295, - "exerc": 5932, - "exercise": 7016, - "exercises": 19669, - "exercising": 39036, - "exeter": 32137, - "exeter": 18837, - "exfoli": 38823, - "exhau": 11154, - "exhaust": 21812, - "exhausted": 21741, - "exhausting": 40035, - "exhaustion": 49221, - "exhi": 3022, - "exhib": 3783, - "exhibit": 24992, - "exhibit": 8209, - "exhibiting": 23889, - "exhibition": 4219, - "exhibitions": 28311, - "exhibitor": 44192, - "exhibitors": 38542, - "exhibits": 30093, - "exhilar": 40262, - "exhilarating": 49289, - "exi": 5297, - "exico": 38712, - "exile": 28566, - "exist": 10899, - "exist": 9645, - "existed": 23198, - "existence": 13832, - "existent": 43541, - "existential": 38752, - "existing": 12886, - "exists": 14608, - "exit": 9374, - "exited": 37581, - "exiting": 39577, - "exits": 34943, - "exmoor": 48260, - "exo": 15600, - "exo": 5842, - "exodus": 30098, - "exol": 42856, - "exop": 35288, - "exoplan": 37980, - "exor": 24506, - "exorcist": 46309, - "exotic": 15639, - "exp": 9923, - "exp": 19066, - "expan": 7512, - "expand": 10382, - "expand": 13141, - "expanded": 18390, - "expanding": 15755, - "expands": 22223, - "expanse": 46886, - "expansion": 10138, - "expansive": 49261, - "expat": 43900, - "expe": 2560, - "expect": 9802, - "expect": 5716, - "expectation": 34273, - "expectations": 12529, - "expected": 5573, - "expecting": 12525, - "expects": 24536, - "expedition": 16761, - "expeditions": 49327, - "expelled": 48834, - "expen": 7216, - "expend": 29302, - "expenditure": 47044, - "expense": 28473, - "expenses": 21797, - "expensive": 9649, - "exper": 1533, - "experi": 4723, - "experience": 31867, - "experience": 2415, - "experienced": 10417, - "experiences": 8233, - "experiencing": 16643, - "experiential": 44952, - "experim": 6697, - "experiment": 13079, - "experimental": 16539, - "experimenting": 28263, - "experiments": 21077, - "expert": 6284, - "expertise": 16555, - "experts": 6960, - "expi": 26850, - "expir": 35077, - "expire": 49315, - "expired": 30200, - "expires": 34739, - "expl": 3261, - "expla": 3517, - "explain": 48918, - "explain": 7304, - "explained": 14229, - "explaining": 13136, - "explains": 6655, - "explan": 13294, - "explanation": 16577, - "explanations": 34383, - "explic": 21011, - "explicit": 33228, - "explo": 3586, - "explode": 31262, - "exploded": 28947, - "explodes": 38119, - "exploding": 34683, - "exploit": 36953, - "exploited": 48554, - "explor": 11958, - "exploration": 14043, - "explore": 10405, - "explore": 5147, - "explorebc": 38754, - "explorecanada": 36600, - "explored": 25016, - "explorer": 15776, - "explorers": 28491, - "explores": 13996, - "exploring": 7584, - "explosion": 13785, - "explosions": 38646, - "explosive": 18888, - "explosives": 44705, - "expo": 7820, - "expo": 6344, - "expon": 27905, - "export": 14444, - "exporting": 47433, - "exports": 20088, - "expose": 23181, - "exposed": 12180, - "exposes": 33575, - "exposing": 28362, - "exposition": 36943, - "exposure": 11903, - "expre": 6085, - "express": 18553, - "express": 5642, - "expressed": 20777, - "expresses": 31931, - "expressing": 30207, - "expression": 11357, - "expressions": 20314, - "expressive": 42060, - "expressway": 31658, - "exquis": 16575, - "exquisite": 17958, - "ext": 5711, - "ext": 20072, - "exten": 5555, - "extend": 14492, - "extended": 9614, - "extending": 25652, - "extends": 20688, - "extension": 10275, - "extensions": 24525, - "extensive": 16870, - "extensively": 47365, - "extent": 24913, - "exter": 9797, - "exterior": 19352, - "extermin": 41671, - "external": 15028, - "extin": 13553, - "extinct": 24488, - "extinction": 21186, - "extingui": 38567, - "extor": 35620, - "extr": 29082, - "extra": 6416, - "extra": 4231, - "extrac": 18550, - "extract": 18962, - "extraction": 28789, - "extracts": 45576, - "extraordin": 23628, - "extraordinaire": 30909, - "extraordinary": 10982, - "extras": 29817, - "extravag": 22299, - "extravaganza": 29461, - "extre": 3978, - "extreme": 38357, - "extreme": 8331, - "extremely": 6519, - "extremism": 31493, - "extremist": 36383, - "extremists": 41425, - "extru": 43010, - "ey": 1541, - "ey": 1477, - "eyang": 28915, - "eye": 5034, - "eye": 3272, - "eyebrow": 34250, - "eyebrows": 19923, - "eyed": 15512, - "eyeing": 34916, - "eyel": 17075, - "eyelashes": 42074, - "eyeliner": 33354, - "eyeon": 25126, - "eyes": 3095, - "eyeshadow": 35213, - "eyewear": 30165, - "eyewitness": 36258, - "eyou": 31996, - "eyour": 40229, - "eyre": 44115, - "ez": 10082, - "ez": 8387, - "eze": 25993, - "eze": 27229, - "ezekiel": 41428, - "ezra": 27552, - "f": 69, - "f": 325, - "fa": 778, - "fa": 2800, - "faa": 27577, - "fab": 2833, - "fab": 5492, - "faber": 43461, - "faber": 42488, - "fabi": 29425, - "fabian": 34539, - "fabio": 31666, - "fabric": 16217, - "fabric": 10033, - "fabricated": 40851, - "fabrication": 33476, - "fabrics": 23159, - "fabulous": 5189, - "fac": 1053, - "fac": 35438, - "facade": 29217, - "face": 2545, - "face": 1710, - "facebook": 36156, - "facebook": 2943, - "faced": 10941, - "faceli": 32023, - "facelift": 36380, - "faceoff": 42710, - "facep": 45285, - "faces": 4905, - "faceted": 43435, - "facetime": 24076, - "facial": 11909, - "facil": 39973, - "facilit": 13567, - "facilitate": 26733, - "facilitated": 43853, - "facilitating": 34796, - "facilities": 10388, - "facility": 8165, - "facing": 7619, - "fact": 17189, - "fact": 3598, - "factfriday": 27953, - "faction": 14629, - "factor": 21082, - "factor": 8124, - "factories": 36492, - "factors": 12733, - "factory": 42483, - "factory": 6072, - "facts": 5085, - "factual": 45471, - "faculty": 9504, - "facup": 25283, - "fad": 12632, - "fad": 47669, - "fade": 20486, - "faded": 26051, - "fades": 40441, - "fading": 32882, - "fadnavis": 38945, - "faf": 31052, - "faf": 43903, - "fag": 25617, - "fag": 39305, - "fah": 25495, - "fah": 35429, - "fahren": 45527, - "fai": 20519, - "fai": 26384, - "fail": 7105, - "fail": 6801, - "failed": 8314, - "failing": 15757, - "fails": 13388, - "failure": 8732, - "failures": 25442, - "faint": 30807, - "fair": 3031, - "fair": 2849, - "fairbanks": 43962, - "faire": 34745, - "faire": 20798, - "fairfax": 29368, - "fairfield": 29664, - "fairgrounds": 38325, - "fairi": 28884, - "fairies": 33590, - "fairly": 14961, - "fairmont": 41547, - "fairness": 29388, - "fairs": 8655, - "fairtrade": 33361, - "fairview": 43479, - "fairway": 44022, - "fairy": 17021, - "fairy": 10444, - "fairytale": 28944, - "fais": 23542, - "faisal": 35459, - "fait": 20567, - "faith": 10653, - "faith": 5080, - "faithful": 15511, - "faiz": 41775, - "fake": 18794, - "fake": 5777, - "faken": 22853, - "fakenews": 26943, - "fakespeare": 49095, - "fal": 2778, - "fal": 40494, - "fala": 47120, - "falcon": 22498, - "falcon": 13571, - "falcons": 13834, - "falk": 34648, - "falkirk": 44080, - "fall": 6489, - "fall": 2359, - "fallen": 8688, - "falling": 48709, - "falling": 7293, - "fallon": 39596, - "fallon": 21281, - "fallontonight": 44627, - "fallout": 49365, - "fallout": 16009, - "falls": 4778, - "falmouth": 38261, - "false": 38948, - "false": 9078, - "falsely": 42321, - "fam": 1058, - "fam": 5128, - "fame": 6573, - "famed": 23302, - "famer": 24554, - "famil": 3395, - "famili": 8488, - "familia": 25622, - "familiar": 10020, - "families": 4612, - "family": 8137, - "family": 1315, - "familyfun": 46308, - "familytime": 47236, - "familytravel": 38222, - "famine": 35847, - "famous": 44811, - "famous": 4096, - "famously": 44505, - "fan": 1675, - "fan": 2261, - "fanart": 41059, - "fanart": 7855, - "fanartfriday": 45346, - "fanatic": 36643, - "fanatics": 39610, - "fanbase": 36921, - "fanboy": 43369, - "fanc": 29017, - "fancafe": 45080, - "fanci": 35908, - "fanclub": 31530, - "fancy": 47622, - "fancy": 6733, - "fand": 19684, - "fandom": 47634, - "fandom": 11534, - "fanfest": 42916, - "fanfic": 47243, - "fang": 14269, - "fang": 27428, - "fangirl": 28813, - "fangirling": 39463, - "fanning": 37282, - "fanny": 30401, - "fans": 32454, - "fans": 1840, - "fansign": 25288, - "fant": 4467, - "fanta": 2703, - "fantaken": 39412, - "fantasia": 49306, - "fantastic": 31289, - "fantastic": 2935, - "fantasy": 15124, - "fantasy": 5267, - "fantasyfootball": 35713, - "fao": 31155, - "faq": 28533, - "far": 1578, - "far": 2384, - "fara": 48562, - "farage": 28340, - "farah": 31547, - "fare": 8620, - "fare": 6461, - "fares": 27525, - "farewell": 10734, - "fargo": 18870, - "fari": 26197, - "farley": 43761, - "farm": 9066, - "farm": 3985, - "farmer": 19735, - "farmer": 10474, - "farmers": 29752, - "farmers": 6402, - "farmersmarket": 41808, - "farmhouse": 26293, - "farming": 10399, - "farmington": 49305, - "farmland": 45258, - "farms": 11277, - "farn": 27527, - "faroo": 39147, - "farra": 33657, - "farrakhan": 46293, - "farrell": 24234, - "fart": 34664, - "farther": 42233, - "fas": 4830, - "fas": 42995, - "fasci": 17191, - "fascin": 7327, - "fascinated": 32964, - "fascinating": 8640, - "fascism": 28213, - "fascist": 23870, - "fascists": 43598, - "fash": 42682, - "fashi": 2099, - "fashion": 6976, - "fashion": 2444, - "fashionable": 24597, - "fashionblogger": 31726, - "fashioned": 21563, - "fashioni": 26062, - "fashionista": 30415, - "fashions": 37601, - "fashionshow": 45653, - "fashionweek": 28684, - "fass": 42398, - "fast": 8509, - "fast": 1953, - "fasten": 44990, - "faster": 8835, - "fastest": 9808, - "fasting": 24656, - "fat": 4751, - "fat": 5484, - "fatal": 12124, - "fatalities": 44168, - "fatally": 34069, - "fate": 26315, - "fate": 11734, - "father": 11607, - "father": 3224, - "fathers": 12780, - "fathersday": 16731, - "fati": 13430, - "fatigue": 23747, - "fatima": 28202, - "fats": 30151, - "fatt": 44131, - "fatty": 22953, - "fau": 5571, - "fau": 31381, - "faucet": 44273, - "faul": 16230, - "faulkner": 37840, - "fault": 13862, - "faults": 42752, - "faulty": 47103, - "fauna": 30808, - "faust": 44772, - "faux": 19429, - "fav": 1355, - "fav": 5426, - "fave": 7272, - "faves": 18003, - "favor": 1766, - "favor": 12160, - "favorable": 35392, - "favored": 46640, - "favorite": 35262, - "favorite": 1916, - "favorited": 36926, - "favorites": 10564, - "favors": 36085, - "favour": 3111, - "favour": 20469, - "favourite": 3342, - "favourites": 16585, - "favs": 18879, - "faw": 21800, - "fawad": 46425, - "fawn": 48624, - "fax": 32535, - "fax": 9337, - "fay": 8939, - "fay": 40074, - "faye": 30257, - "fayette": 32043, - "fayette": 19782, - "fayetteville": 37771, - "fayre": 34982, - "faz": 26238, - "faze": 44880, - "fb": 22637, - "fb": 3307, - "fball": 29663, - "fbf": 20004, - "fbi": 10293, - "fbloggers": 41389, - "fbs": 48454, - "fc": 4278, - "fc": 1399, - "fca": 24540, - "fcb": 26639, - "fcb": 25045, - "fcbarcelona": 32174, - "fcbayern": 35033, - "fcblive": 44608, - "fcc": 21240, - "fck": 40080, - "fck": 49263, - "fcofficial": 27805, - "fcs": 32095, - "fcu": 47898, - "fd": 16972, - "fd": 11525, - "fda": 17823, - "fdi": 45579, - "fdn": 18563, - "fdny": 41084, - "fdr": 42298, - "fe": 623, - "fe": 873, - "fear": 8744, - "fear": 5402, - "feared": 31154, - "fearless": 17470, - "fears": 13867, - "fearthe": 33449, - "feasi": 34977, - "feast": 37963, - "feast": 9564, - "feat": 1703, - "feat": 5611, - "feather": 24905, - "feather": 17871, - "feathers": 21138, - "featherweight": 44939, - "feature": 30413, - "feature": 4527, - "featured": 4743, - "features": 4643, - "featuring": 3706, - "feb": 4317, - "febru": 4202, - "february": 4248, - "fect": 31293, - "fed": 22518, - "fed": 7035, - "feder": 4737, - "federal": 6369, - "federation": 15530, - "federer": 18246, - "federico": 40539, - "fedex": 32603, - "fedora": 45111, - "feds": 30593, - "fee": 28242, - "fee": 9224, - "feed": 6662, - "feed": 5839, - "feedback": 8683, - "feeder": 24482, - "feeders": 44523, - "feeding": 9879, - "feeds": 21788, - "feel": 2408, - "feel": 2051, - "feelin": 19903, - "feeling": 33087, - "feeling": 3045, - "feelings": 9452, - "feels": 4808, - "feelthe": 22322, - "feelthebern": 27743, - "fees": 11765, - "feet": 4804, - "fei": 23441, - "fei": 34217, - "fein": 46707, - "feinstein": 41313, - "fel": 2081, - "fel": 20304, - "feld": 45913, - "feld": 14219, - "feldman": 41942, - "feli": 7498, - "felic": 25845, - "felici": 23379, - "felicia": 41139, - "felicidades": 41648, - "felicity": 35123, - "feline": 29471, - "felipe": 27681, - "felix": 33455, - "felix": 16514, - "feliz": 26104, - "feliz": 20221, - "fell": 33540, - "fell": 6266, - "fella": 17586, - "fellas": 18787, - "feller": 29226, - "fellow": 12099, - "fellow": 5242, - "fellows": 15766, - "fellowship": 13857, - "felony": 31068, - "felt": 5413, - "fem": 24574, - "fem": 36615, - "fema": 41721, - "female": 22062, - "female": 3970, - "females": 21028, - "femi": 38607, - "femin": 11423, - "femini": 11894, - "feminine": 24911, - "feminism": 18784, - "feminist": 14921, - "feminists": 38809, - "femme": 31331, - "fen": 5509, - "fen": 25024, - "fence": 12679, - "fences": 34312, - "fencing": 23489, - "fender": 17117, - "fener": 41208, - "fenerbah": 46652, - "feng": 33291, - "fennel": 28689, - "fent": 26395, - "fenton": 47265, - "fenway": 29206, - "fer": 1765, - "fer": 2897, - "fera": 37705, - "feral": 29972, - "ferdin": 25541, - "ferdinand": 27591, - "fere": 43144, - "feren": 35652, - "ference": 19984, - "ferg": 44938, - "fergie": 39119, - "fergu": 10988, - "fergus": 42041, - "ferguson": 11904, - "fermentation": 45817, - "fermented": 36886, - "fern": 10747, - "fern": 21685, - "fernandes": 44391, - "fernandez": 23436, - "fernando": 17140, - "ferns": 38277, - "feroci": 45652, - "ferr": 7256, - "ferra": 47911, - "ferrari": 9606, - "ferre": 29626, - "ferred": 10432, - "ferreira": 48686, - "ferrell": 41112, - "ferrer": 38904, - "ferri": 42008, - "ferries": 28489, - "ferris": 27532, - "ferry": 38936, - "ferry": 10278, - "fers": 12378, - "fert": 14925, - "fert": 43662, - "fertil": 41987, - "fertile": 44837, - "fertili": 23912, - "fertility": 23528, - "fertilizer": 36786, - "fery": 47448, - "fes": 32300, - "fest": 17383, - "fest": 2590, - "festa": 42124, - "festi": 1943, - "festiv": 19222, - "festival": 20946, - "festival": 2240, - "festivals": 17834, - "festive": 9533, - "festivities": 21020, - "fet": 21409, - "feta": 31705, - "fetal": 42031, - "fetch": 30271, - "fete": 34629, - "fett": 37979, - "fetus": 26768, - "feu": 24912, - "feu": 32990, - "feud": 27365, - "fever": 40896, - "fever": 9989, - "fevre": 43861, - "few": 1939, - "fewer": 19128, - "fex": 41584, - "fex": 26392, - "fey": 39069, - "fey": 23298, - "fez": 43081, - "ff": 1021, - "ff": 1304, - "ffa": 15355, - "ffame": 42873, - "ffc": 19832, - "ffe": 1138, - "ffe": 8631, - "ffect": 29151, - "ffed": 8448, - "ffee": 26377, - "ffel": 22656, - "ffen": 46537, - "ffer": 27369, - "ffer": 11636, - "ffers": 32163, - "fferty": 44771, - "ffes": 46441, - "ffey": 30138, - "fff": 28106, - "ffi": 19961, - "ffic": 4762, - "ffice": 26044, - "ffici": 3639, - "fficial": 39818, - "fficial": 6463, - "fficiency": 27800, - "fficient": 20424, - "ffin": 12779, - "ffin": 7367, - "ffing": 16592, - "ffins": 17898, - "ffl": 39490, - "ffle": 7749, - "ffler": 39819, - "ffles": 19344, - "ffman": 15823, - "ffo": 42264, - "ffs": 4424, - "ffxiv": 26569, - "ffxv": 46786, - "ffy": 26404, - "ffy": 7795, - "fg": 45977, - "fg": 6823, - "fgm": 32178, - "fgo": 46113, - "fh": 21649, - "fh": 21010, - "fhs": 45094, - "fi": 701, - "fi": 3589, - "fia": 8827, - "fiable": 34373, - "fianc": 27752, - "fiance": 44114, - "fiancé": 34039, - "fiasco": 40944, - "fiat": 16740, - "fiawec": 39485, - "fib": 40594, - "fiba": 34993, - "fiber": 35074, - "fiber": 12612, - "fibers": 44587, - "fibre": 21401, - "fibro": 21294, - "fibrosis": 36307, - "fic": 1788, - "fic": 2059, - "fica": 26952, - "fically": 14854, - "fication": 4523, - "fications": 12512, - "ficial": 48192, - "fics": 42505, - "fiction": 6218, - "fictional": 25570, - "fid": 34197, - "fid": 23966, - "fidd": 25218, - "fiddle": 35968, - "fide": 45375, - "fidel": 21740, - "fidel": 36837, - "fidelity": 30109, - "fidget": 48664, - "fie": 28487, - "fie": 10348, - "fied": 29642, - "fied": 2853, - "fiel": 1361, - "field": 7571, - "field": 1570, - "fielder": 11046, - "fieldhouse": 37969, - "fielding": 30465, - "fields": 6494, - "fieldwork": 33155, - "fiends": 37869, - "fier": 11167, - "fier": 10598, - "fierc": 48609, - "fierce": 13896, - "fiercely": 49039, - "fiers": 16113, - "fiery": 24557, - "fies": 9537, - "fiesta": 14580, - "fif": 5309, - "fifa": 21976, - "fifa": 8516, - "fifaworldcup": 38819, - "fifawwc": 41329, - "fife": 24374, - "fifteen": 29504, - "fifth": 25515, - "fifth": 8772, - "fifthharmony": 31075, - "fifty": 24456, - "fifty": 15978, - "fig": 4814, - "fig": 20719, - "figaro": 48044, - "figh": 23274, - "fight": 5262, - "fight": 2757, - "fighter": 35884, - "fighter": 6438, - "fighters": 7371, - "fightfor": 48909, - "fightfor": 35740, - "fighting": 38625, - "fighting": 4652, - "fighton": 45578, - "fights": 12132, - "figs": 38882, - "figu": 6390, - "figur": 16948, - "figurative": 44042, - "figure": 48820, - "figure": 5274, - "figured": 15630, - "figures": 8739, - "figurine": 33306, - "figuring": 31513, - "fiji": 48270, - "fiji": 18285, - "fik": 46589, - "fil": 1142, - "fil": 14915, - "fila": 30992, - "filament": 49252, - "file": 12545, - "file": 4512, - "filed": 13864, - "files": 7850, - "filet": 43155, - "fili": 9590, - "filing": 16576, - "filip": 14368, - "filipino": 19153, - "fill": 15904, - "fill": 6277, - "filled": 5589, - "filler": 32816, - "fillers": 45005, - "fillet": 39276, - "filling": 9736, - "fillion": 38048, - "fillmore": 43922, - "fills": 21750, - "filly": 27690, - "film": 5117, - "film": 1860, - "filmed": 15801, - "filmfare": 42224, - "filmfest": 24508, - "filmfestival": 28066, - "filming": 6866, - "filmmaker": 17202, - "filmmakers": 24896, - "filmmaking": 18226, - "films": 5370, - "fils": 40271, - "filter": 7541, - "filtered": 29926, - "filtering": 47770, - "filters": 18385, - "filth": 39713, - "filthy": 26899, - "filtr": 21408, - "filtration": 42036, - "fim": 47525, - "fin": 735, - "fin": 10663, - "fina": 34497, - "final": 11968, - "final": 1755, - "finale": 7844, - "finalfantasy": 44543, - "finalfour": 46999, - "finalist": 12620, - "finalists": 13422, - "finalized": 48930, - "finally": 1992, - "finals": 4536, - "finan": 4807, - "finance": 6117, - "finances": 28767, - "financi": 12846, - "financial": 19783, - "financial": 4930, - "financially": 28124, - "financing": 18375, - "finch": 18523, - "find": 18638, - "find": 1416, - "finder": 15045, - "finders": 43884, - "findia": 47064, - "finding": 37455, - "finding": 6002, - "findings": 16529, - "findlay": 48227, - "findom": 36463, - "finds": 6680, - "findyour": 25936, - "findyourpark": 38924, - "fine": 12042, - "fine": 3797, - "fineart": 7484, - "fineart": 16005, - "fineartamerica": 7724, - "fined": 20094, - "finely": 46120, - "finer": 36681, - "fines": 25053, - "finesse": 46047, - "finest": 7707, - "fing": 6485, - "fing": 17955, - "finger": 13480, - "finger": 8895, - "fingerprint": 39579, - "fingers": 9690, - "fini": 2405, - "finish": 42178, - "finish": 3958, - "finished": 3078, - "finisher": 38636, - "finishers": 48661, - "finishes": 13078, - "finishing": 7912, - "finite": 48312, - "finity": 41463, - "finity": 21273, - "fink": 40158, - "finland": 10775, - "finley": 41652, - "finn": 28479, - "finn": 16925, - "finna": 35180, - "finnish": 19616, - "fino": 30083, - "fins": 32810, - "fintech": 48929, - "fintech": 8899, - "fion": 27476, - "fiona": 20099, - "fior": 37086, - "fiore": 44997, - "fioren": 33188, - "fiorentina": 43713, - "fios": 42521, - "fir": 770, - "fir": 16233, - "fire": 2951, - "fire": 1769, - "firearm": 40311, - "firearms": 23960, - "fireball": 40543, - "firec": 42806, - "fired": 8846, - "firefighter": 20498, - "firefighters": 12600, - "firefly": 33997, - "firefox": 35372, - "fireman": 46085, - "firen": 34752, - "firenze": 38445, - "fireplace": 23050, - "fires": 8749, - "fireside": 36185, - "firework": 40750, - "fireworks": 10641, - "firing": 15105, - "firm": 16936, - "firm": 7705, - "firmly": 29156, - "firms": 13655, - "firmware": 42691, - "first": 6853, - "first": 874, - "firstdayof": 44297, - "firsth": 48512, - "firsts": 47884, - "firth": 26078, - "fis": 7846, - "fis": 47683, - "fiscal": 20825, - "fischer": 26532, - "fish": 6431, - "fish": 2759, - "fisher": 11175, - "fisher": 9176, - "fisheries": 24612, - "fisherman": 25055, - "fishermen": 28547, - "fishers": 42065, - "fishery": 49057, - "fishes": 35470, - "fishing": 31703, - "fishing": 4935, - "fishy": 35665, - "fist": 48340, - "fist": 17085, - "fit": 2366, - "fit": 2478, - "fitbit": 33768, - "fitch": 44614, - "fitfam": 20662, - "fitnes": 47285, - "fitness": 20044, - "fitness": 4838, - "fits": 6401, - "fitt": 32994, - "fitted": 14863, - "fitter": 42096, - "fitters": 32364, - "fitting": 11769, - "fittings": 45787, - "fitz": 11120, - "fitz": 25913, - "fitzgerald": 20606, - "fitzpatrick": 37141, - "fiu": 38374, - "five": 19508, - "five": 3127, - "fives": 44066, - "fix": 4596, - "fix": 6028, - "fixed": 9393, - "fixes": 25473, - "fixing": 17423, - "fixture": 17317, - "fixtures": 19904, - "fizz": 31242, - "fj": 43183, - "fj": 46447, - "fjor": 31260, - "fk": 12410, - "fl": 1082, - "fl": 2685, - "fla": 1577, - "fla": 20292, - "flag": 11536, - "flag": 4859, - "flagged": 45012, - "flags": 12221, - "flagship": 19779, - "flagstaff": 40406, - "flair": 24938, - "flake": 21221, - "flakes": 20934, - "flam": 10559, - "flame": 40351, - "flame": 13484, - "flamen": 28826, - "flamenco": 37362, - "flames": 13441, - "flamin": 42693, - "flaming": 34782, - "flamingo": 30323, - "flan": 14572, - "flanagan": 28641, - "flanders": 34837, - "flank": 44553, - "flann": 39510, - "flannel": 37807, - "flap": 35253, - "flappy": 40241, - "flare": 21185, - "flares": 46088, - "flash": 6089, - "flash": 5815, - "flashback": 14616, - "flashback": 11988, - "flashbackfriday": 15014, - "flashbacks": 47056, - "flashes": 31259, - "flashing": 31764, - "flashlight": 37256, - "flask": 36194, - "flat": 8986, - "flat": 6313, - "flats": 17228, - "flatt": 45498, - "flattering": 43267, - "flaun": 41421, - "flav": 7191, - "flavo": 28895, - "flavor": 31835, - "flavor": 11818, - "flavored": 29350, - "flavorful": 49135, - "flavors": 16930, - "flavour": 17026, - "flavoured": 42397, - "flavours": 21083, - "flaw": 14268, - "flaw": 34978, - "flawed": 35136, - "flawless": 15531, - "flaws": 30492, - "flax": 43443, - "fle": 2428, - "fle": 44964, - "flea": 24883, - "fleck": 28143, - "fled": 26731, - "flee": 19427, - "flee": 30167, - "fleece": 25038, - "fleeing": 30543, - "fleek": 43513, - "fleet": 35922, - "fleet": 9147, - "fleetwood": 28883, - "fleming": 25769, - "fler": 48789, - "flesh": 17495, - "flet": 16102, - "fletcher": 19810, - "fleur": 28593, - "flew": 13768, - "flex": 16426, - "flex": 12038, - "flexi": 10032, - "flexibility": 22547, - "flexible": 14502, - "flexing": 48483, - "fli": 2472, - "flick": 13746, - "flick": 23414, - "flickr": 17755, - "flies": 8070, - "flight": 24701, - "flight": 3795, - "flights": 10515, - "flin": 24730, - "flin": 43816, - "flinders": 44647, - "fling": 22768, - "flint": 28306, - "flint": 18324, - "flip": 20385, - "flip": 11035, - "flipk": 30829, - "flipkart": 33154, - "flipped": 28144, - "flipping": 25881, - "flips": 35089, - "flir": 24330, - "flirt": 38352, - "flirting": 35243, - "flix": 40663, - "flo": 1945, - "flo": 20711, - "float": 16123, - "floating": 12619, - "floats": 33272, - "flock": 36297, - "flock": 21822, - "flondon": 47366, - "floo": 4062, - "flood": 23793, - "flood": 7148, - "flooded": 19706, - "flooding": 10204, - "floods": 16369, - "floor": 23657, - "floor": 4125, - "flooring": 19227, - "floors": 15671, - "flop": 22994, - "floppy": 38267, - "flops": 29146, - "flor": 15784, - "flor": 41669, - "flora": 18906, - "floral": 10732, - "florals": 48331, - "floren": 37706, - "florence": 11617, - "flores": 21537, - "flori": 3482, - "florian": 41861, - "florida": 34264, - "florida": 3966, - "florist": 38403, - "floss": 36453, - "flotus": 35181, - "flour": 18592, - "flouri": 23239, - "flourish": 36038, - "flow": 2180, - "flow": 5608, - "flower": 12772, - "flower": 4055, - "flowering": 19953, - "flowers": 4023, - "flowing": 14922, - "flown": 25659, - "flows": 16715, - "floyd": 46369, - "floyd": 13656, - "flu": 3698, - "flu": 13528, - "fluctu": 40181, - "fluence": 38169, - "fluent": 30025, - "fluff": 31174, - "fluffy": 40346, - "fluffy": 17054, - "fluid": 43803, - "fluid": 16717, - "fluids": 41490, - "fluor": 45127, - "fluore": 26974, - "fluorescent": 35036, - "fluori": 45611, - "flur": 31591, - "flush": 25777, - "flushing": 43754, - "flute": 23746, - "flux": 25249, - "flwx": 30907, - "fly": 5666, - "fly": 3228, - "flye": 30873, - "flyeagles": 39927, - "flyeaglesfly": 39931, - "flyer": 11875, - "flyers": 14181, - "flyfishing": 31800, - "flying": 20782, - "flying": 4610, - "flyn": 40676, - "flynn": 15721, - "flyo": 33506, - "flyover": 38083, - "fm": 13715, - "fm": 3689, - "fman": 25152, - "fml": 26730, - "fmr": 32875, - "fn": 22773, - "fn": 21763, - "fnc": 46506, - "fo": 898, - "fo": 6157, - "foal": 40386, - "foam": 30039, - "foam": 14587, - "foamed": 26711, - "fob": 40315, - "focal": 30934, - "focu": 5827, - "focus": 4353, - "focused": 9319, - "focuses": 20093, - "focusing": 15551, - "fod": 31015, - "fod": 43299, - "fodils": 44411, - "foe": 22952, - "foes": 46279, - "fog": 9417, - "foggy": 19770, - "foil": 17302, - "fol": 1106, - "fol": 48616, - "fold": 35201, - "fold": 11021, - "foldable": 48307, - "folded": 25233, - "folder": 25717, - "folding": 15464, - "folds": 24266, - "foley": 22850, - "foli": 7713, - "folia": 48964, - "foliage": 26350, - "folio": 10772, - "folk": 10665, - "folk": 6032, - "folke": 47190, - "folkl": 27273, - "folklore": 22133, - "folklore": 28620, - "folklorethursday": 23270, - "folks": 5422, - "follo": 41417, - "follow": 1964, - "follow": 1979, - "followart": 40957, - "followback": 33863, - "followed": 6499, - "follower": 17039, - "followers": 4856, - "following": 3473, - "followme": 29668, - "followparty": 44757, - "follows": 11287, - "followthe": 30747, - "folly": 41408, - "folsom": 42108, - "fom": 34540, - "fon": 5017, - "fon": 38318, - "fond": 19964, - "fonda": 44609, - "fondue": 48321, - "fone": 40672, - "font": 37610, - "font": 16248, - "fontaine": 37864, - "fontana": 43643, - "fontein": 45062, - "fonts": 32801, - "foo": 1183, - "foo": 23435, - "food": 4586, - "food": 1559, - "foodand": 38317, - "foodbank": 31926, - "foodie": 30762, - "foodie": 9847, - "foodies": 22416, - "foodnetwork": 46793, - "foods": 7057, - "foodsecurity": 49329, - "foodtruck": 47682, - "fool": 23959, - "fool": 12212, - "fooled": 28761, - "fooling": 47964, - "foolish": 33824, - "fools": 15946, - "foot": 6702, - "foot": 4738, - "footage": 11130, - "footb": 33466, - "football": 9376, - "football": 1882, - "footballer": 20646, - "footballers": 30269, - "footed": 38040, - "footh": 25951, - "foothills": 37020, - "footpath": 48858, - "footprint": 23206, - "footprints": 39640, - "footsteps": 27289, - "footwear": 22772, - "footy": 39866, - "footy": 18922, - "for": 645, - "for": 556, - "forage": 46871, - "foraging": 39056, - "forall": 17824, - "forbe": 49098, - "forbes": 13925, - "forbi": 24754, - "forbidden": 25164, - "force": 12068, - "force": 2869, - "forced": 8201, - "forces": 5381, - "forchange": 35848, - "forcing": 21573, - "ford": 3751, - "ford": 1623, - "fordfc": 28581, - "fordham": 48792, - "fords": 29351, - "fordshire": 14645, - "fore": 1484, - "fore": 1332, - "forec": 34155, - "forecast": 7361, - "forecasting": 38133, - "forecasts": 27696, - "foreclo": 44916, - "forefront": 37679, - "foreground": 35186, - "forehead": 25394, - "foreig": 26497, - "foreign": 42255, - "foreign": 6046, - "foreigners": 38549, - "foreman": 36174, - "foremost": 42128, - "foren": 16526, - "forensic": 23158, - "forensics": 38763, - "forest": 18760, - "forest": 4167, - "forestation": 33939, - "forestry": 26281, - "forests": 14095, - "forever": 14748, - "forever": 3225, - "forevery": 40605, - "forex": 40200, - "forex": 17395, - "forfe": 44871, - "forge": 19232, - "forged": 28105, - "forget": 46153, - "forget": 2678, - "forgets": 35613, - "forgetting": 25452, - "forgi": 22080, - "forgive": 15332, - "forgiven": 44894, - "forgiveness": 23585, - "forgood": 39169, - "forgot": 6483, - "forgotten": 7994, - "fork": 24501, - "fork": 13700, - "forkids": 48571, - "forklift": 43202, - "forks": 28769, - "forlife": 17624, - "form": 1157, - "form": 1907, - "forma": 38829, - "formal": 12978, - "formally": 24867, - "format": 16252, - "format": 11874, - "formation": 2510, - "formations": 37715, - "formative": 48882, - "formats": 32085, - "forme": 42085, - "formed": 6528, - "former": 2276, - "formerly": 20866, - "formid": 38599, - "formidable": 39834, - "forming": 15443, - "formity": 42290, - "forms": 5161, - "formu": 8689, - "formul": 23923, - "formula": 24485, - "formula": 10776, - "formulae": 34586, - "formulated": 45066, - "forre": 38876, - "forrest": 25205, - "forrester": 45338, - "forsa": 48958, - "forsale": 13303, - "forster": 42923, - "forsy": 29629, - "forsyth": 40952, - "fort": 12300, - "fort": 2921, - "forte": 44350, - "forte": 27367, - "forth": 17068, - "forth": 11932, - "forthcoming": 19989, - "forthe": 12521, - "forti": 26984, - "fortified": 46486, - "fortn": 14428, - "fortnight": 39235, - "fortnite": 38734, - "fortnite": 17890, - "fortress": 19988, - "fortun": 6950, - "fortunate": 19898, - "fortunately": 34358, - "fortune": 40931, - "fortune": 11451, - "fortunes": 41989, - "forty": 24399, - "forum": 37851, - "forum": 4538, - "forums": 31518, - "forwar": 34364, - "forward": 47031, - "forward": 2342, - "forwards": 38974, - "foryou": 35150, - "forz": 46056, - "forza": 33293, - "forza": 28089, - "fos": 36925, - "fos": 22081, - "foss": 14240, - "foss": 37911, - "fossil": 20419, - "fossil": 15202, - "fossilfriday": 26079, - "fossils": 30652, - "foster": 26778, - "foster": 8139, - "fostering": 35996, - "fosters": 37644, - "foto": 15908, - "foto": 12823, - "fotogra": 23687, - "fotografia": 40256, - "fotos": 26124, - "fou": 14516, - "fought": 10844, - "foul": 19784, - "foun": 3154, - "found": 3454, - "found": 1546, - "foundation": 4058, - "foundations": 25219, - "founded": 12240, - "founder": 5145, - "founders": 14602, - "founding": 15317, - "foundry": 31426, - "fountain": 44863, - "fountain": 13405, - "fountains": 37411, - "four": 5113, - "four": 2721, - "foursquare": 34484, - "fourteen": 46255, - "fourth": 7516, - "fourthofjuly": 47805, - "fow": 17084, - "fowl": 31685, - "fowler": 20980, - "fox": 5007, - "fox": 3240, - "foxandfriends": 45841, - "foxes": 24145, - "foxnews": 18830, - "foxsports": 39267, - "foxtv": 49396, - "foxx": 32993, - "foxy": 27945, - "foy": 30284, - "foyer": 38011, - "foyle": 47902, - "fp": 28058, - "fp": 8941, - "fpl": 27970, - "fpp": 36464, - "fps": 25300, - "fpv": 43175, - "fr": 936, - "fr": 5512, - "fra": 3368, - "fra": 15644, - "frac": 15607, - "fracking": 21894, - "fractal": 46471, - "fraction": 26788, - "fractu": 25847, - "fracture": 28995, - "fractured": 37421, - "fractures": 46213, - "frag": 13093, - "fragile": 23579, - "fragment": 39209, - "fragments": 41424, - "fragr": 15403, - "fragrance": 17874, - "fragrances": 44567, - "fragrant": 37030, - "fram": 27987, - "frame": 11029, - "frame": 6481, - "framed": 13135, - "frames": 15479, - "framework": 13195, - "frameworks": 43136, - "framing": 24539, - "frampton": 41733, - "fran": 2118, - "fran": 18878, - "franc": 3872, - "franc": 42340, - "franca": 48952, - "france": 12045, - "france": 3552, - "frances": 20803, - "francesca": 32327, - "francesco": 25816, - "franch": 11756, - "franchi": 46438, - "franchise": 13664, - "franci": 46458, - "francis": 22187, - "francis": 7660, - "francisco": 6887, - "franco": 17934, - "franco": 17052, - "francois": 29317, - "frank": 5390, - "frank": 5229, - "franken": 20487, - "franken": 48252, - "frankenstein": 26410, - "frankfur": 17442, - "frankfurt": 18598, - "franki": 39227, - "frankie": 38373, - "frankie": 16215, - "franklin": 40935, - "franklin": 9999, - "frankly": 38015, - "franks": 42855, - "frans": 47892, - "franz": 25449, - "franç": 38381, - "fraser": 39082, - "fraser": 16754, - "frat": 15225, - "frat": 39292, - "fraternity": 24433, - "frau": 23063, - "fraud": 40647, - "fraud": 9961, - "fraudul": 42655, - "fraudulent": 47408, - "fray": 41154, - "frazier": 32841, - "frc": 41507, - "fre": 821, - "fre": 43165, - "freak": 20352, - "freak": 13701, - "freaked": 43511, - "freakin": 23900, - "freaking": 11992, - "freaks": 27009, - "freaky": 31583, - "freck": 33328, - "freckles": 48036, - "fred": 9486, - "fred": 6678, - "freddie": 41890, - "freddie": 17014, - "freddy": 24394, - "freder": 10745, - "frederic": 41165, - "frederick": 37103, - "frederick": 18570, - "fredo": 48241, - "free": 2065, - "free": 1139, - "freebie": 35865, - "freebies": 28630, - "freec": 46569, - "freed": 12585, - "freed": 23392, - "freedom": 17992, - "freedom": 4511, - "freedoms": 32500, - "freef": 48678, - "freel": 14174, - "freelance": 21942, - "freely": 24436, - "freeman": 16450, - "freep": 32499, - "freepalestine": 39242, - "freer": 44676, - "frees": 27455, - "freestyle": 15594, - "freeway": 24927, - "freeze": 14187, - "freezer": 25390, - "freezing": 12499, - "frei": 30183, - "freight": 17023, - "fremantle": 48012, - "fremont": 34578, - "fren": 2919, - "french": 13118, - "french": 3461, - "frenzy": 30084, - "frequ": 9211, - "frequencies": 45319, - "frequency": 18825, - "frequent": 19836, - "frequently": 22434, - "fresco": 31609, - "fresh": 4065, - "fresh": 2975, - "fresher": 49284, - "freshers": 35810, - "freshest": 46809, - "freshly": 16081, - "freshman": 9381, - "freshmen": 21292, - "freshness": 45872, - "freshwater": 24803, - "fresno": 40879, - "fresno": 20995, - "fret": 40510, - "freud": 40787, - "frey": 22136, - "frey": 9082, - "fri": 815, - "fri": 6882, - "friars": 30513, - "fric": 18981, - "frick": 46304, - "friction": 38563, - "frid": 46388, - "frida": 36001, - "friday": 6350, - "friday": 1461, - "fridayfeeling": 11952, - "fridaymotivation": 38544, - "fridaynight": 44858, - "fridayreads": 37736, - "fridays": 15589, - "fridaythe": 47642, - "fridge": 13491, - "fridges": 40734, - "frie": 36999, - "fried": 13743, - "fried": 7310, - "friedman": 29402, - "friedrich": 34171, - "friend": 3017, - "friend": 1625, - "friendly": 44612, - "friendly": 4681, - "friends": 38875, - "friends": 1574, - "friendship": 42674, - "friendship": 7679, - "friendships": 28840, - "fries": 11369, - "frifotos": 40493, - "friger": 20785, - "friggin": 48300, - "frigh": 34831, - "fright": 24277, - "fright": 40207, - "frightened": 47136, - "frightening": 39290, - "fringe": 10640, - "fris": 37252, - "frisbee": 45768, - "frisco": 35945, - "frit": 34614, - "fritz": 29860, - "friyay": 38887, - "frm": 12951, - "fro": 626, - "fro": 26603, - "frock": 45306, - "frog": 26494, - "frog": 11438, - "frogs": 20781, - "from": 8330, - "from": 633, - "frome": 48691, - "fromhome": 41477, - "fromthe": 18756, - "fron": 1847, - "fron": 18036, - "front": 10996, - "front": 2184, - "frontal": 35794, - "frontier": 18253, - "frontiers": 38396, - "frontline": 29589, - "frontman": 36775, - "fronts": 26846, - "froome": 48560, - "frosh": 47069, - "frost": 39420, - "frost": 11619, - "frosted": 35988, - "frosting": 33872, - "frosty": 22760, - "froze": 47788, - "frozen": 42464, - "frozen": 8507, - "frs": 26216, - "fru": 3248, - "fruit": 16771, - "fruit": 5190, - "fruitful": 31494, - "fruits": 13282, - "fruity": 22320, - "frustr": 16046, - "frustrated": 25111, - "frustrating": 31342, - "frustration": 30535, - "fry": 33914, - "fry": 13686, - "fryer": 49217, - "frying": 38516, - "fs": 23699, - "fs": 3854, - "fsa": 33373, - "fsu": 44185, - "fsu": 19317, - "ft": 3391, - "ft": 981, - "fta": 41975, - "ftc": 33752, - "fted": 5612, - "fter": 25063, - "fthe": 22886, - "ftheday": 9823, - "fting": 6174, - "fton": 26605, - "ftp": 42649, - "fts": 3767, - "ftse": 46717, - "ftw": 19298, - "fty": 17494, - "fu": 665, - "fu": 9098, - "fuch": 42617, - "fudge": 24270, - "fue": 43723, - "fuego": 41500, - "fuel": 21113, - "fuel": 5945, - "fueled": 28792, - "fueling": 38793, - "fuelled": 48357, - "fuels": 19365, - "fuentes": 44393, - "fuer": 29645, - "fug": 29227, - "fugitive": 39257, - "fuji": 15573, - "fuji": 21634, - "fujifilm": 24765, - "fuk": 31051, - "fuku": 20728, - "fukushima": 33929, - "ful": 1814, - "ful": 857, - "fulbright": 41834, - "fulfill": 43675, - "fulfill": 27467, - "fulfilled": 29919, - "fulfilling": 30621, - "fulfillment": 45573, - "fulham": 25574, - "full": 9407, - "full": 1476, - "fuller": 20225, - "fullerton": 42822, - "fullest": 35603, - "fully": 39142, - "fully": 2401, - "fulness": 10526, - "fuls": 41606, - "fulton": 26725, - "fum": 38393, - "fumble": 49373, - "fun": 1229, - "fun": 1499, - "func": 8679, - "function": 8093, - "functional": 12885, - "functionality": 33316, - "functioning": 25479, - "functions": 18001, - "fund": 19089, - "fund": 4877, - "fundam": 11670, - "fundament": 18852, - "fundamental": 17627, - "fundamentally": 45378, - "fundamentals": 27887, - "funday": 15439, - "funded": 10588, - "funding": 5588, - "fundra": 6201, - "fundraiser": 10049, - "fundraising": 10755, - "funds": 7066, - "funer": 40693, - "funeral": 10606, - "funfact": 31596, - "funfactfriday": 40710, - "fungal": 38838, - "fungi": 27837, - "fungus": 30677, - "funk": 37353, - "funk": 13372, - "funko": 49402, - "funko": 23697, - "funky": 16492, - "funnel": 27862, - "funnier": 42232, - "funniest": 15557, - "funny": 19124, - "funny": 3789, - "funrun": 34185, - "fur": 2395, - "fur": 9686, - "furi": 40816, - "furious": 17522, - "furman": 49238, - "furn": 21348, - "furnace": 31913, - "furnished": 37388, - "furnitu": 45696, - "furniture": 7993, - "furry": 33414, - "furry": 15351, - "fursuit": 25306, - "fursuit": 43083, - "fursuitfriday": 27917, - "further": 5583, - "fury": 14404, - "fus": 18419, - "fuse": 23386, - "fused": 38994, - "fusion": 44661, - "fusion": 9364, - "fuss": 26331, - "fut": 21460, - "fut": 34049, - "futbol": 33014, - "futsal": 20558, - "futu": 33454, - "futur": 38840, - "future": 7959, - "future": 1904, - "futureof": 22599, - "futureofwork": 33202, - "futures": 13488, - "futuri": 19068, - "futurism": 48435, - "futurist": 48086, - "futuristic": 30987, - "fuzz": 47128, - "fuzz": 40443, - "fuzzy": 25876, - "fv": 29795, - "fw": 23934, - "fw": 5277, - "fwd": 27052, - "fx": 17807, - "fx": 9025, - "fy": 8440, - "fy": 2702, - "fyi": 16014, - "fying": 5294, - "fz": 46400, - "fé": 34072, - "g": 70, - "g": 326, - "ga": 1275, - "ga": 1531, - "gaa": 10715, - "gaal": 40867, - "gaard": 24645, - "gab": 3927, - "gab": 37382, - "gabbana": 36272, - "gabby": 48115, - "gabby": 24567, - "gabe": 18916, - "gabi": 41931, - "gable": 33387, - "gables": 40928, - "gabri": 8311, - "gabriel": 31684, - "gabriel": 13244, - "gabrielle": 33572, - "gaby": 46420, - "gac": 32520, - "gad": 7786, - "gad": 44651, - "gadget": 25525, - "gadgets": 22840, - "gado": 29489, - "gae": 22003, - "gael": 35663, - "gaelic": 31173, - "gaf": 21354, - "gaf": 32670, - "gag": 14121, - "gag": 18844, - "gaga": 9782, - "gage": 21081, - "gah": 27750, - "gai": 24214, - "gai": 25153, - "gaia": 41269, - "gail": 41160, - "gail": 27676, - "gain": 21536, - "gain": 6202, - "gaine": 35747, - "gained": 14489, - "gaines": 49225, - "gainesville": 40427, - "gaining": 15260, - "gains": 42751, - "gains": 12107, - "gal": 2001, - "gal": 4488, - "gala": 7211, - "galac": 18864, - "galactic": 25514, - "galap": 41115, - "galapagos": 44057, - "galat": 39853, - "galatasar": 42413, - "galatasaray": 47787, - "galax": 5647, - "galaxies": 32435, - "galaxy": 32130, - "galaxy": 6545, - "gale": 37658, - "gale": 21380, - "galerie": 44539, - "gales": 48633, - "gali": 17546, - "gali": 30552, - "galicia": 47927, - "galileo": 39671, - "gall": 3011, - "gall": 33374, - "galla": 16847, - "gallagher": 19168, - "galleria": 40656, - "galleries": 22304, - "gallery": 36648, - "gallery": 3830, - "galley": 48917, - "galli": 22568, - "gallipoli": 47249, - "gallo": 37350, - "gallo": 33265, - "gallon": 24615, - "gallons": 29335, - "galloway": 27796, - "galore": 22286, - "gals": 20125, - "galvani": 46046, - "galve": 34328, - "galveston": 36003, - "galway": 38045, - "galway": 17112, - "gam": 1162, - "gam": 34195, - "gama": 35873, - "gambia": 32988, - "gamble": 26121, - "gambling": 20287, - "game": 2882, - "game": 1063, - "gameart": 31490, - "gameboy": 40951, - "gamecube": 44079, - "gameday": 9241, - "gamedev": 7544, - "gameinsight": 42626, - "gameof": 10987, - "gameofthrones": 11822, - "gameon": 47691, - "gameplay": 16794, - "gamer": 12595, - "gamer": 11598, - "gamergate": 25961, - "gamers": 16166, - "gamersunite": 26423, - "games": 18551, - "games": 1955, - "gamescom": 37003, - "gamestop": 39436, - "gametime": 45899, - "gami": 42025, - "gamification": 48908, - "gaming": 28803, - "gaming": 4017, - "gamma": 22180, - "gamo": 39325, - "gan": 1822, - "gan": 1670, - "gand": 8399, - "ganda": 27261, - "gander": 44508, - "gandhi": 12322, - "ganesh": 30362, - "ganesha": 45185, - "gang": 8066, - "gang": 5674, - "ganga": 36275, - "gangnam": 46777, - "gangs": 29844, - "gangsta": 37365, - "gangster": 26514, - "gani": 48324, - "gann": 45665, - "gannon": 45837, - "gano": 25304, - "gao": 26556, - "gaon": 19279, - "gap": 29906, - "gap": 7609, - "gaps": 25296, - "gar": 1099, - "gar": 5824, - "gara": 28710, - "garage": 8474, - "garbage": 13760, - "garci": 44658, - "garcia": 10529, - "gard": 7751, - "gard": 21003, - "garda": 31906, - "garde": 22649, - "garden": 4674, - "garden": 2756, - "gardenchat": 46292, - "gardener": 28554, - "gardeners": 38205, - "gardening": 10483, - "gardens": 6152, - "gardiner": 43121, - "gardner": 18710, - "gare": 5633, - "gare": 48402, - "gareth": 37140, - "gareth": 18175, - "garfield": 26728, - "garh": 16762, - "gari": 40898, - "gari": 43080, - "garis": 37839, - "garland": 23418, - "garlic": 9685, - "garment": 31418, - "garments": 43341, - "garmin": 39885, - "garner": 20340, - "garnet": 37669, - "garo": 30388, - "garrett": 15881, - "garri": 21764, - "garrison": 30108, - "garros": 40425, - "garry": 24398, - "gars": 12055, - "gart": 18380, - "gart": 18751, - "garten": 14684, - "garter": 48420, - "garth": 45398, - "garth": 24469, - "gartner": 43334, - "gartner": 29678, - "garty": 46383, - "garu": 31140, - "garvey": 39511, - "garwal": 38623, - "gary": 10535, - "gary": 4516, - "garza": 49393, - "gas": 5047, - "gas": 2474, - "gases": 36971, - "gasoline": 27691, - "gasp": 43762, - "gaston": 40669, - "gastri": 49197, - "gastro": 23740, - "gastron": 30699, - "gastronomy": 46987, - "gat": 5314, - "gat": 18941, - "gata": 44575, - "gate": 8071, - "gate": 3302, - "gated": 23997, - "gates": 9472, - "gateshead": 40051, - "gateway": 45221, - "gateway": 14943, - "gather": 36345, - "gather": 12602, - "gathered": 14646, - "gathering": 9197, - "gatherings": 48096, - "gathers": 39250, - "gating": 27561, - "gation": 11095, - "gations": 33906, - "gato": 44492, - "gator": 20216, - "gator": 16390, - "gatorade": 36354, - "gators": 17173, - "gatory": 24796, - "gatsby": 32586, - "gatwick": 37122, - "gau": 5919, - "gau": 43068, - "gauge": 18728, - "gaunt": 31862, - "gauntlet": 37163, - "gautam": 45853, - "gautam": 31356, - "gauteng": 40333, - "gav": 8966, - "gave": 3485, - "gavin": 32974, - "gavin": 16389, - "gaw": 15405, - "gawd": 43239, - "gawx": 43420, - "gay": 7460, - "gay": 5627, - "gaya": 39477, - "gaye": 41401, - "gayle": 29998, - "gayo": 36768, - "gays": 28001, - "gaz": 4837, - "gaz": 36475, - "gaza": 38391, - "gaza": 10112, - "gazaunderattack": 42458, - "gaze": 23212, - "gazette": 20443, - "gazing": 28373, - "gb": 8727, - "gb": 4619, - "gba": 18528, - "gbbo": 34474, - "gbc": 42993, - "gbp": 27391, - "gbr": 31984, - "gby": 40509, - "gc": 8577, - "gc": 6043, - "gcc": 26804, - "gcse": 28763, - "gcu": 34137, - "gd": 13264, - "gd": 14604, - "gdc": 32793, - "gden": 44928, - "gdp": 17100, - "gdpr": 22963, - "ge": 619, - "ge": 710, - "gea": 26790, - "gear": 15532, - "gear": 4802, - "gearbox": 42454, - "geared": 33903, - "gearing": 19027, - "gears": 21147, - "geaux": 36313, - "gecko": 38616, - "ged": 17252, - "ged": 3480, - "geddon": 31720, - "gedly": 13991, - "gee": 9806, - "gee": 9071, - "geek": 17920, - "geek": 7135, - "geeks": 20110, - "geeky": 47332, - "geel": 25906, - "geelong": 34555, - "gees": 38088, - "geese": 26413, - "geez": 42394, - "geh": 30320, - "geist": 38290, - "gel": 7343, - "gel": 5697, - "gelato": 29577, - "gels": 42552, - "gely": 14637, - "gem": 14261, - "gem": 7613, - "gement": 19495, - "gemini": 23086, - "gemma": 23952, - "gems": 14355, - "gemstone": 27747, - "gemstones": 43972, - "gen": 1024, - "gen": 3278, - "gence": 16088, - "gency": 5245, - "gend": 33247, - "gender": 22976, - "gender": 5906, - "gendere": 35824, - "genderequality": 43338, - "gene": 5822, - "gene": 7962, - "genealo": 24142, - "genealogy": 29381, - "gener": 1832, - "general": 20576, - "general": 3658, - "generally": 19256, - "generals": 30296, - "generate": 16896, - "generated": 19450, - "generates": 33938, - "generating": 23882, - "generation": 41211, - "generation": 4883, - "generational": 34506, - "generations": 12247, - "generative": 29472, - "generator": 19399, - "generators": 41917, - "generic": 26978, - "generosity": 23015, - "generous": 12570, - "generously": 35113, - "genes": 19683, - "genesis": 13518, - "genetic": 47746, - "genetic": 13578, - "genetically": 36745, - "genetics": 18276, - "geneva": 14799, - "genevie": 41633, - "genevieve": 46584, - "geni": 22334, - "genic": 15750, - "genie": 24221, - "genital": 32960, - "genius": 8235, - "geniuses": 41406, - "geno": 41544, - "geno": 46776, - "genoa": 43993, - "genoci": 14687, - "genocide": 15903, - "genome": 23991, - "genomic": 44371, - "genomics": 26227, - "genre": 14249, - "genres": 30340, - "gens": 17449, - "gent": 3685, - "gent": 7139, - "gente": 34325, - "gentle": 7262, - "gentle": 13577, - "gentleman": 13293, - "gentlemen": 11692, - "gently": 17187, - "gento": 28320, - "gentri": 41148, - "gentry": 47225, - "gents": 18862, - "genu": 9182, - "genuine": 12184, - "genuinely": 20006, - "genus": 38161, - "geny": 35323, - "geo": 5038, - "geo": 11604, - "geocaching": 47908, - "geof": 20629, - "geoff": 33697, - "geoff": 20386, - "geoffrey": 29520, - "geograph": 45920, - "geographic": 22635, - "geographical": 39380, - "geography": 17101, - "geological": 38380, - "geology": 21578, - "geom": 46135, - "geome": 12958, - "geometric": 22419, - "geometry": 21731, - "geon": 20844, - "geon": 7295, - "geons": 15914, - "geopol": 39758, - "geor": 2549, - "georg": 43126, - "george": 8377, - "george": 3296, - "georges": 25042, - "georgetown": 22970, - "georgie": 42115, - "georgina": 43892, - "geospatial": 46238, - "geothermal": 38413, - "geous": 3068, - "ger": 1291, - "ger": 1502, - "gera": 48867, - "gerald": 29901, - "gerald": 13269, - "gerard": 35979, - "gerard": 20826, - "gerber": 45058, - "gered": 40179, - "geri": 41664, - "geri": 46214, - "gering": 24077, - "germain": 38786, - "german": 14972, - "german": 4710, - "germans": 28400, - "germany": 4464, - "germin": 44721, - "germs": 47731, - "geronimo": 45171, - "gerrard": 26538, - "gerry": 29825, - "gerry": 23026, - "gers": 3314, - "gertrude": 46950, - "gervais": 36527, - "gery": 32845, - "ges": 3316, - "gest": 11843, - "gest": 2033, - "gesture": 21780, - "gestures": 43524, - "get": 5670, - "get": 779, - "geta": 13155, - "getaway": 16131, - "gether": 27224, - "getic": 20661, - "getin": 25822, - "getit": 44891, - "getit": 48315, - "getoutside": 35644, - "gets": 39448, - "gets": 2127, - "gett": 6647, - "gett": 27965, - "gettable": 15620, - "gette": 29800, - "gettin": 13428, - "getting": 30885, - "getting": 1500, - "getty": 31185, - "getty": 13965, - "gettys": 35189, - "gettysburg": 37062, - "getyour": 42159, - "gey": 29289, - "gf": 28953, - "gf": 10846, - "gfriend": 35245, - "gfs": 37553, - "gg": 1129, - "gg": 3286, - "gga": 26003, - "ggan": 25626, - "gge": 21521, - "gge": 31659, - "gged": 6095, - "gger": 12367, - "gger": 3493, - "ggers": 7480, - "ggg": 20143, - "gggg": 33513, - "ggi": 21662, - "ggin": 17160, - "gging": 4966, - "ggins": 12444, - "ggle": 34981, - "ggle": 11430, - "ggled": 46328, - "ggles": 14703, - "ggling": 16523, - "ggly": 39407, - "ggs": 4797, - "ggy": 24935, - "ggy": 6476, - "gh": 583, - "gh": 790, - "gha": 10010, - "gha": 25183, - "gham": 21456, - "ghan": 18945, - "ghan": 6624, - "ghana": 30330, - "ghana": 9731, - "ghanaian": 34223, - "ghani": 36699, - "ghar": 37334, - "ghar": 36973, - "ghat": 43989, - "ghaz": 37493, - "ghc": 42139, - "ghe": 10754, - "ghe": 28561, - "ghead": 40783, - "ghee": 34794, - "gher": 21542, - "gher": 14796, - "ghet": 18447, - "ghetti": 17485, - "ghetto": 22403, - "ghi": 22436, - "ghi": 22279, - "ghibli": 40555, - "ghj": 38439, - "ghlin": 24131, - "gho": 4307, - "ghorn": 38094, - "ghosh": 43279, - "ghoshal": 49134, - "ghost": 11417, - "ghost": 7108, - "ghostbusters": 25462, - "ghostly": 44901, - "ghosts": 16737, - "ghou": 35843, - "ghoul": 45302, - "ghouse": 38238, - "ghs": 14157, - "ght": 1413, - "ght": 630, - "ghted": 4963, - "ghter": 2427, - "ghters": 12994, - "ghtful": 8334, - "ghting": 3019, - "ghtly": 6993, - "ghtning": 39740, - "ghton": 16353, - "ghts": 1259, - "ghty": 20968, - "ghty": 5866, - "ghu": 25808, - "ghue": 45675, - "ghyun": 25010, - "ghz": 24325, - "gi": 707, - "gi": 4478, - "gia": 8864, - "giac": 35444, - "giam": 39623, - "gian": 17274, - "gian": 12866, - "gianni": 46752, - "giant": 23668, - "giant": 4687, - "giants": 7076, - "giar": 34241, - "gib": 9816, - "gibb": 18964, - "gibbons": 31974, - "gibbs": 26488, - "gibility": 33297, - "gible": 13159, - "gibr": 20206, - "gibraltar": 23988, - "gibson": 37420, - "gibson": 12178, - "gic": 27900, - "gic": 2570, - "gical": 32973, - "gically": 26320, - "gid": 36774, - "gid": 21413, - "giddy": 40894, - "gideon": 43867, - "gidi": 30603, - "gie": 11459, - "gie": 3991, - "gier": 28974, - "gies": 5505, - "gif": 11363, - "gif": 11677, - "gifford": 47850, - "gifs": 37643, - "gift": 20569, - "gift": 2733, - "gifted": 15110, - "giftide": 20152, - "giftideas": 23487, - "gifting": 39546, - "gifts": 5836, - "gig": 26981, - "gig": 7471, - "gigab": 34530, - "gigan": 24104, - "gigantic": 31507, - "giggle": 36426, - "giggles": 42731, - "giggs": 44692, - "gigi": 44106, - "gigi": 26171, - "gigs": 20316, - "gil": 3997, - "gil": 10088, - "gila": 46952, - "gilbert": 14154, - "gilded": 44341, - "giles": 24802, - "gill": 14280, - "gill": 12003, - "gille": 29610, - "gilles": 39590, - "gillespie": 36242, - "gillette": 38603, - "gilli": 13695, - "gillian": 28753, - "gills": 48851, - "gilmore": 27603, - "gilt": 44378, - "gim": 31284, - "gimm": 40692, - "gimme": 21525, - "gin": 3374, - "gin": 4941, - "gina": 15604, - "gine": 27482, - "ging": 10829, - "ging": 3905, - "ginger": 16287, - "ginger": 9718, - "gingerbread": 23692, - "gini": 35768, - "gino": 36521, - "gins": 18328, - "gio": 16329, - "gio": 8050, - "gion": 41226, - "gior": 14920, - "giorgio": 33271, - "giorno": 33310, - "gios": 41927, - "gious": 14419, - "giov": 21404, - "giovanni": 26574, - "gipp": 41351, - "gir": 1077, - "gir": 25481, - "gira": 16949, - "giraffe": 22826, - "giri": 31709, - "girl": 3914, - "girl": 1611, - "girlfriend": 8217, - "girlfriends": 30736, - "girlpower": 37433, - "girls": 15480, - "girls": 1917, - "girly": 29605, - "giro": 39664, - "giro": 26454, - "girona": 47842, - "giroud": 41177, - "gis": 16266, - "gis": 12773, - "gist": 21241, - "git": 16060, - "git": 20918, - "gita": 40838, - "github": 31196, - "giu": 17931, - "giuli": 29762, - "giuliani": 47739, - "giuse": 29385, - "giuseppe": 33563, - "give": 4120, - "give": 1781, - "giveaway": 5310, - "giveaways": 18974, - "giveback": 41385, - "given": 33323, - "given": 4302, - "givenchy": 38245, - "giver": 43339, - "gives": 3926, - "giveup": 35485, - "giving": 14673, - "giving": 2339, - "givingback": 49300, - "givingtuesday": 23556, - "giz": 29237, - "gk": 38953, - "gk": 18719, - "gl": 1849, - "gl": 14751, - "gla": 1523, - "gla": 36904, - "glaci": 14924, - "glacial": 40782, - "glacier": 19282, - "glaciers": 42528, - "glad": 20841, - "glad": 4761, - "glades": 37432, - "gladi": 21742, - "gladiator": 38477, - "gladiators": 41087, - "gladly": 41598, - "gladys": 43168, - "glam": 8738, - "glam": 16905, - "glamorous": 22896, - "glamour": 42876, - "glamour": 17499, - "glamping": 46167, - "glan": 40482, - "glan": 45844, - "glance": 26557, - "gland": 41441, - "glar": 48535, - "glar": 41702, - "glare": 46035, - "glas": 29935, - "glas": 43654, - "glasgo": 6757, - "glasgow": 29990, - "glasgow": 7363, - "glass": 16305, - "glass": 3313, - "glasses": 6116, - "glaston": 26848, - "glastonbury": 28233, - "glau": 39171, - "glaze": 28112, - "glazed": 24122, - "gle": 7166, - "gle": 2865, - "glee": 32379, - "glee": 21614, - "glen": 6158, - "glen": 11049, - "glend": 38332, - "glendale": 33043, - "glenn": 32004, - "glenn": 12861, - "gler": 34649, - "gley": 21998, - "gli": 5896, - "gli": 28791, - "glia": 22217, - "glide": 37321, - "glider": 41636, - "glimp": 12888, - "glimpse": 13817, - "glio": 29785, - "glit": 21079, - "glitch": 29563, - "glitter": 16528, - "glitz": 44542, - "glo": 1721, - "glo": 30474, - "glob": 13363, - "global": 6707, - "global": 2779, - "globalgoals": 33211, - "globalhealth": 46751, - "globalization": 47680, - "globally": 17775, - "globalwarming": 46017, - "globe": 19436, - "globe": 9368, - "globes": 38085, - "glock": 38818, - "glomer": 43689, - "gloom": 48594, - "gloomy": 32199, - "glori": 7270, - "gloria": 19244, - "glorious": 9171, - "glory": 36107, - "glory": 7285, - "glos": 40633, - "gloss": 38258, - "gloss": 22014, - "glossy": 29802, - "glou": 15989, - "gloucester": 28133, - "gloucester": 23835, - "gloucestershire": 33789, - "glove": 16078, - "glover": 21594, - "gloves": 12363, - "glow": 30472, - "glow": 10111, - "glowing": 18437, - "glows": 48107, - "glu": 5952, - "glu": 32281, - "glucose": 34642, - "glue": 22103, - "glued": 38135, - "gluten": 15482, - "gluten": 15524, - "glutenfree": 16138, - "gly": 13027, - "glycer": 48914, - "gm": 18743, - "gm": 5918, - "gma": 18155, - "gmail": 11119, - "gman": 41043, - "gman": 36936, - "gmb": 35934, - "gmb": 31799, - "gmbh": 46877, - "gmc": 27257, - "gmo": 23486, - "gms": 36987, - "gmt": 13803, - "gn": 2455, - "gn": 9831, - "gna": 23009, - "gnation": 45912, - "gne": 25407, - "gni": 5104, - "gnment": 25110, - "gno": 23376, - "gno": 43686, - "gnocchi": 48299, - "gnome": 33643, - "gnon": 20561, - "go": 650, - "go": 861, - "goa": 14399, - "goal": 9003, - "goal": 3321, - "goalie": 20723, - "goalkeeper": 16601, - "goals": 3295, - "goalscorer": 43547, - "goaltender": 44151, - "goat": 34082, - "goat": 9530, - "goats": 18393, - "gob": 29559, - "gobeavs": 48285, - "goblin": 26223, - "goblue": 25232, - "gobucks": 29175, - "gocougs": 34202, - "god": 4190, - "god": 1731, - "godawgs": 40436, - "godbless": 46616, - "godbless": 44007, - "godd": 16589, - "goddamn": 28495, - "goddard": 37827, - "goddess": 10808, - "godfather": 26222, - "godfrey": 40148, - "godis": 38521, - "godly": 42438, - "gods": 33620, - "gods": 10328, - "goducks": 35889, - "godzilla": 23369, - "goe": 22084, - "goers": 27784, - "goes": 43581, - "goes": 2635, - "gof": 17537, - "goff": 34399, - "goftheday": 39360, - "gofund": 34445, - "gofundme": 34686, - "gog": 42949, - "goggles": 31027, - "gogh": 19697, - "gogo": 22688, - "gogreen": 36279, - "gohawks": 34884, - "goi": 24917, - "goin": 13939, - "going": 25787, - "going": 1245, - "goku": 29550, - "gol": 1537, - "gol": 18257, - "gola": 41090, - "gold": 4999, - "gold": 2209, - "goldberg": 25161, - "goldcoast": 34634, - "golden": 10763, - "golden": 3878, - "goldeng": 20650, - "goldenglobes": 26842, - "goldfish": 40293, - "goldie": 42805, - "goldman": 27164, - "golds": 30526, - "golds": 40283, - "goldsmith": 40214, - "gole": 41297, - "golf": 9096, - "golf": 3096, - "golfclub": 45742, - "golfer": 24579, - "golfers": 28441, - "golfing": 31379, - "goli": 29265, - "goliath": 41602, - "gom": 7051, - "goma": 46198, - "gomes": 39128, - "gomez": 16433, - "gon": 1854, - "gon": 3379, - "gona": 34835, - "gone": 35135, - "gone": 3601, - "gong": 28486, - "gonna": 2562, - "gonz": 10587, - "gonzaga": 36241, - "gonzale": 17512, - "gonzales": 31265, - "gonzalez": 18198, - "goo": 1381, - "goo": 17882, - "good": 2185, - "good": 886, - "goodbye": 6968, - "goodday": 46284, - "goode": 42076, - "goodfood": 46844, - "goodfriday": 40360, - "goodie": 29213, - "goodies": 13308, - "goodluck": 19718, - "goodman": 24146, - "goodmorning": 14421, - "goodness": 10531, - "goodnight": 8540, - "goodreads": 31629, - "goods": 9340, - "goodtimes": 22570, - "goodvibes": 43146, - "goodwill": 24902, - "goodwin": 28080, - "goodwood": 30008, - "goody": 35937, - "goodyear": 42858, - "goofy": 26879, - "goog": 18581, - "google": 12195, - "google": 3460, - "googled": 40345, - "googleplay": 37309, - "goon": 15267, - "goons": 30440, - "goooo": 35876, - "goooo": 48957, - "goose": 21445, - "goose": 13822, - "goosebumps": 32254, - "gop": 18942, - "gop": 6250, - "gopack": 46995, - "gopackgo": 47719, - "gopal": 47268, - "gopdebate": 39806, - "gopher": 47750, - "gopher": 48905, - "gophers": 31957, - "gopro": 17511, - "gor": 1747, - "gor": 29827, - "gordo": 47707, - "gordon": 20485, - "gordon": 8244, - "gore": 30311, - "gore": 17872, - "gorg": 46815, - "gorge": 35548, - "gorge": 20038, - "gorgeous": 3241, - "gori": 12461, - "goria": 43359, - "gorilla": 37910, - "gorilla": 21994, - "gorman": 35741, - "goro": 44977, - "gory": 7160, - "gos": 20517, - "gos": 5693, - "gosh": 15395, - "gosling": 35320, - "gosp": 9617, - "gospel": 11313, - "goss": 39734, - "goss": 36924, - "gossi": 15684, - "gossip": 18963, - "got": 10125, - "got": 1005, - "gota": 36693, - "gotcha": 43275, - "gote": 49345, - "goth": 48465, - "goth": 20437, - "gotham": 46123, - "gotham": 18299, - "gothic": 15426, - "goti": 9497, - "goto": 39715, - "gots": 35215, - "gott": 5089, - "gott": 36466, - "gotta": 4633, - "gotten": 5889, - "gotti": 41881, - "gotv": 36089, - "gou": 10520, - "gou": 36555, - "gouache": 43314, - "goul": 33187, - "gould": 31087, - "gour": 13580, - "gourmet": 19111, - "gov": 4022, - "gov": 4564, - "gove": 36997, - "govegan": 38886, - "gover": 10471, - "gover": 16759, - "govern": 2351, - "govern": 32404, - "governance": 13386, - "governing": 30946, - "government": 3149, - "governmental": 42609, - "governments": 19582, - "governor": 17459, - "governor": 6630, - "governors": 26881, - "govin": 42451, - "govt": 5345, - "govuk": 28830, - "gow": 21885, - "gow": 33788, - "gowan": 31307, - "gower": 43448, - "gown": 13719, - "gowns": 38029, - "goyal": 35105, - "gp": 19329, - "gp": 5051, - "gpa": 24098, - "gps": 13639, - "gpu": 38561, - "gq": 40286, - "gq": 31324, - "gr": 709, - "gr": 6062, - "gra": 782, - "gra": 15276, - "grab": 4646, - "grabbed": 22856, - "grabbing": 26440, - "grabs": 17076, - "grac": 11323, - "grace": 13225, - "grace": 5142, - "graced": 31894, - "graceful": 25242, - "graces": 38629, - "graci": 11174, - "gracias": 16463, - "gracie": 23235, - "gracing": 37263, - "gracious": 29044, - "grad": 19869, - "grad": 7291, - "gradable": 41529, - "grade": 45435, - "grade": 3394, - "graded": 13823, - "grader": 23930, - "graders": 10930, - "grades": 10838, - "gradient": 36885, - "grading": 19016, - "grads": 17811, - "gradu": 3230, - "gradual": 45210, - "gradually": 32192, - "graduate": 6675, - "graduated": 15128, - "graduates": 12236, - "graduating": 14819, - "graduation": 8060, - "grady": 33980, - "graeme": 30192, - "graf": 46478, - "graf": 39765, - "graff": 10656, - "graffiti": 11676, - "graft": 32698, - "grafton": 47347, - "graham": 19805, - "graham": 7711, - "grail": 37184, - "grain": 44003, - "grain": 12109, - "grains": 25791, - "gral": 25631, - "gram": 2949, - "gram": 2338, - "grammar": 16077, - "grammy": 15388, - "grammys": 18121, - "grams": 6294, - "gran": 3892, - "gran": 14493, - "granada": 31172, - "grand": 3058, - "grand": 2991, - "grandad": 29148, - "grandchildren": 36856, - "granddaughter": 29460, - "grande": 37514, - "grande": 10757, - "grandes": 36382, - "grandfather": 15346, - "grandma": 10525, - "grandmother": 17469, - "grandpa": 14582, - "grandparents": 21311, - "grandprix": 39358, - "grandson": 20766, - "grandstand": 43172, - "grange": 45027, - "grange": 23850, - "granger": 42968, - "granite": 18813, - "grann": 45585, - "granny": 22710, - "granola": 34271, - "grant": 18682, - "grant": 5442, - "granted": 14156, - "granth": 41283, - "grants": 15123, - "grape": 19131, - "grape": 15959, - "grapefruit": 28347, - "grapes": 18580, - "grapevine": 47619, - "graph": 1349, - "graph": 4407, - "graphene": 38387, - "grapher": 14987, - "graphers": 32088, - "graphic": 15653, - "graphic": 4245, - "graphical": 20878, - "graphicdesign": 21907, - "graphics": 9492, - "graphies": 40164, - "graphite": 29447, - "graphs": 24670, - "graphy": 4897, - "grapp": 30843, - "gras": 31517, - "gras": 17584, - "grasp": 34975, - "grass": 11584, - "grass": 5922, - "grasses": 46807, - "grasshopper": 48894, - "grassi": 42294, - "grasso": 34808, - "grassroots": 21991, - "grassy": 44140, - "grat": 9221, - "grate": 32463, - "grateful": 45659, - "grateful": 5730, - "grati": 36402, - "gratis": 33638, - "gratitude": 12614, - "grav": 20663, - "grave": 16606, - "grave": 9981, - "gravel": 27054, - "graves": 17665, - "graveyard": 31176, - "gravit": 26150, - "gravitational": 45268, - "gravity": 47426, - "gravity": 15160, - "gravy": 21225, - "gray": 12703, - "gray": 7048, - "grays": 46848, - "grayson": 45831, - "grayson": 25471, - "grazi": 42427, - "grazie": 38698, - "grazing": 29889, - "grc": 44069, - "gre": 689, - "gre": 17878, - "grease": 24132, - "greasy": 44376, - "great": 3265, - "great": 830, - "greate": 31930, - "greater": 32725, - "greater": 7033, - "greatest": 39080, - "greatest": 4153, - "greatly": 13978, - "greatness": 14189, - "greats": 21855, - "greaves": 42350, - "greco": 39103, - "gree": 9987, - "gree": 30774, - "greece": 6965, - "greed": 26147, - "greedy": 33301, - "greek": 23844, - "greek": 6842, - "greeks": 35866, - "green": 2762, - "green": 1901, - "greenberg": 46662, - "greene": 16383, - "greener": 31169, - "greenery": 42493, - "greenfield": 39924, - "greeng": 42077, - "greenhouse": 20819, - "greening": 48673, - "greenland": 27345, - "greenpeace": 44755, - "greens": 10235, - "greensboro": 33436, - "greenville": 25156, - "greenway": 35205, - "greenwich": 18658, - "greenwood": 25782, - "greer": 34345, - "greet": 11042, - "greet": 11997, - "greeted": 24546, - "greeting": 17754, - "greetings": 11569, - "greets": 25464, - "greg": 6894, - "greg": 7943, - "gregation": 20131, - "gregg": 39422, - "gregg": 22929, - "gregor": 33856, - "gregor": 16177, - "gregory": 16253, - "gren": 13941, - "gren": 20119, - "grenade": 33679, - "grenfell": 42107, - "gres": 39670, - "gress": 2752, - "gret": 30041, - "greta": 33443, - "gretchen": 45516, - "grette": 38774, - "grew": 10451, - "grey": 9190, - "grey": 5046, - "greyhound": 27363, - "greyhounds": 45718, - "greys": 44311, - "greysanatomy": 36833, - "gri": 2169, - "gri": 18484, - "grid": 29067, - "grid": 9882, - "gridi": 41063, - "gridiron": 47786, - "grids": 46500, - "grief": 21058, - "grier": 22016, - "griev": 36400, - "grieving": 42383, - "griez": 47962, - "griezmann": 48396, - "griff": 17855, - "griff": 35551, - "griffi": 28676, - "griffin": 46612, - "griffin": 13161, - "griffith": 24375, - "griffiths": 34182, - "gril": 49091, - "grill": 44083, - "grill": 9519, - "grille": 34748, - "grilled": 10691, - "grilling": 28324, - "grills": 39464, - "grim": 20383, - "grim": 23635, - "grime": 37101, - "grimes": 25057, - "grimm": 27865, - "grims": 34861, - "grimsby": 41513, - "grin": 11033, - "grin": 28697, - "grinch": 40527, - "grind": 25730, - "grind": 11810, - "grinder": 31733, - "grinding": 21541, - "gring": 40135, - "grip": 15521, - "gripping": 34567, - "grips": 27819, - "gris": 29150, - "grit": 22037, - "grit": 22087, - "grits": 44307, - "gritty": 33704, - "grizz": 14877, - "grizz": 44088, - "grizzlies": 25594, - "grizzly": 29676, - "grl": 48005, - "gro": 1464, - "gro": 12691, - "grocer": 11633, - "groceries": 32409, - "grocery": 13826, - "grom": 45284, - "gron": 22345, - "groningen": 45639, - "groo": 9015, - "groom": 39883, - "groom": 22813, - "grooming": 25575, - "groot": 37708, - "groove": 39484, - "groove": 17680, - "grooves": 43954, - "groovy": 30143, - "gros": 26834, - "gros": 32639, - "gross": 31080, - "gross": 11541, - "grosven": 46911, - "grote": 47207, - "grotto": 45260, - "grou": 1582, - "groun": 45110, - "ground": 9558, - "ground": 2461, - "groundbreaking": 21006, - "grounded": 27799, - "grounds": 8454, - "groundwater": 39457, - "group": 19045, - "group": 1771, - "groupe": 47654, - "groups": 6776, - "grouse": 36327, - "grove": 31756, - "grove": 7463, - "grover": 31345, - "groves": 27306, - "grow": 3179, - "grow": 4559, - "grower": 44925, - "growers": 25689, - "growing": 28429, - "growing": 4425, - "growingup": 43433, - "growler": 47096, - "grown": 41762, - "grown": 7120, - "grows": 13352, - "growth": 17925, - "growth": 4026, - "growthhacking": 25963, - "grp": 27321, - "grt": 28557, - "gru": 5957, - "grub": 34019, - "grue": 42047, - "gruesome": 47111, - "grum": 45454, - "grump": 49015, - "grumpy": 23610, - "grun": 16203, - "grunge": 33745, - "gry": 16140, - "gry": 5364, - "gs": 25818, - "gs": 1345, - "gsa": 40433, - "gsc": 47751, - "gshore": 43392, - "gsm": 32181, - "gsp": 49173, - "gst": 22239, - "gt": 16151, - "gt": 4725, - "gta": 14826, - "gta": 15338, - "gtaonline": 27292, - "gtav": 27283, - "gti": 39954, - "gto": 39071, - "gtr": 33407, - "gts": 37338, - "gtx": 35230, - "gu": 700, - "gu": 12916, - "gua": 23751, - "guacam": 37477, - "guacamole": 40115, - "guad": 22966, - "guadal": 46097, - "guadalu": 36994, - "guadalupe": 38360, - "guam": 37325, - "guan": 44191, - "guan": 42406, - "guang": 27019, - "guangzhou": 37857, - "guar": 4119, - "guaran": 9242, - "guarantee": 17421, - "guaranteed": 14731, - "guarantees": 40154, - "guard": 30776, - "guard": 4901, - "guarded": 40602, - "guardi": 12008, - "guardia": 43628, - "guardian": 23713, - "guardian": 9498, - "guardians": 21479, - "guarding": 24966, - "guardiola": 32100, - "guards": 12810, - "guatem": 19423, - "guatemala": 21670, - "guay": 48591, - "guay": 24247, - "gubernat": 41400, - "gubernatorial": 41618, - "gucci": 16779, - "gud": 48061, - "gud": 22378, - "gue": 2030, - "gue": 2917, - "gued": 38893, - "guel": 23146, - "guelph": 27660, - "guer": 10391, - "guern": 29277, - "guernsey": 33982, - "guerra": 38215, - "guerrero": 31967, - "guerrilla": 36715, - "gues": 39971, - "gues": 12601, - "guess": 35506, - "guess": 3135, - "guessed": 28005, - "guesses": 30623, - "guessing": 21891, - "guest": 27349, - "guest": 3781, - "guests": 6212, - "guet": 36797, - "guetta": 45904, - "guez": 12313, - "gug": 31358, - "guggen": 35086, - "guggenheim": 37135, - "gui": 2587, - "gui": 25746, - "guid": 11437, - "guidance": 12508, - "guide": 21845, - "guide": 3555, - "guided": 13194, - "guidelines": 16591, - "guides": 14375, - "guiding": 22759, - "guido": 41818, - "guil": 5008, - "guild": 19755, - "guild": 16597, - "guildford": 34450, - "guildhall": 47224, - "guillau": 41123, - "guillaume": 45394, - "guiller": 33660, - "guillermo": 39524, - "guilt": 26354, - "guilty": 9761, - "guin": 13284, - "guin": 47863, - "guine": 13759, - "guinea": 18537, - "guinness": 16648, - "guire": 18209, - "guise": 42024, - "guit": 3759, - "guitar": 21746, - "guitar": 5084, - "guitarist": 13035, - "guitars": 15023, - "guj": 34935, - "gujar": 12698, - "gujarat": 14714, - "guk": 20280, - "gul": 5530, - "gul": 21350, - "gula": 27426, - "gular": 34969, - "gulf": 22101, - "gulf": 11279, - "gull": 48764, - "gull": 28778, - "gulls": 37501, - "gully": 46112, - "gum": 22041, - "gum": 11235, - "gumb": 40147, - "gumbo": 47126, - "gummy": 34276, - "gums": 46609, - "gun": 2748, - "gun": 3496, - "guna": 43333, - "gundam": 26087, - "gundy": 21162, - "gunman": 32743, - "gunmen": 44738, - "gunn": 27473, - "gunna": 24002, - "gunnar": 45301, - "gunner": 35285, - "gunners": 37788, - "guns": 7591, - "gunsense": 44781, - "gunshot": 49250, - "gunsn": 49028, - "gup": 38632, - "gup": 47335, - "gupta": 15905, - "gur": 3218, - "gur": 30224, - "gura": 46836, - "gurgaon": 33240, - "guri": 43888, - "gurl": 25445, - "gurmee": 35482, - "gurmeetramrahim": 36549, - "guru": 18629, - "guru": 10800, - "gurudev": 48647, - "gus": 8018, - "gust": 24629, - "gusta": 23024, - "gusta": 44196, - "gustav": 32062, - "gustav": 37921, - "gustave": 43170, - "gustavo": 45943, - "gusto": 37937, - "gusts": 20896, - "gusty": 27589, - "gut": 24780, - "gut": 13486, - "guter": 44963, - "guterres": 48738, - "guth": 31696, - "guthrie": 33164, - "gutier": 32773, - "gutierrez": 33739, - "guts": 25983, - "gutted": 26524, - "gutter": 40537, - "guwa": 43063, - "guwahati": 45045, - "guy": 10008, - "guy": 2149, - "guyana": 45215, - "guyen": 28031, - "guys": 43588, - "guys": 1791, - "guyz": 48170, - "guzman": 37960, - "gv": 15462, - "gv": 17336, - "gw": 7172, - "gw": 15717, - "gwen": 32165, - "gwen": 24182, - "gwin": 43005, - "gwy": 32226, - "gwyne": 36923, - "gx": 40227, - "gy": 2168, - "gy": 1164, - "gya": 43214, - "gyan": 43814, - "gye": 21728, - "gyllen": 49348, - "gym": 9902, - "gym": 5222, - "gymna": 13517, - "gymnasium": 42847, - "gymnast": 42658, - "gymnastics": 20116, - "gyn": 39603, - "gyne": 45836, - "gyp": 40053, - "gypsy": 22354, - "gypt": 41921, - "gz": 45937, - "gz": 35841, - "gö": 40778, - "gü": 31907, - "h": 71, - "h": 327, - "ha": 560, - "ha": 1429, - "haa": 26814, - "haal": 35869, - "haan": 36284, - "haar": 45247, - "haar": 35859, - "haas": 27443, - "haasan": 26601, - "hab": 20573, - "hab": 20002, - "haban": 46225, - "haber": 44737, - "habit": 8491, - "habit": 17215, - "habitat": 11747, - "habitats": 35344, - "habits": 14540, - "habs": 27489, - "hac": 20343, - "hace": 43623, - "haci": 40674, - "hack": 6610, - "hack": 11182, - "hackathon": 25182, - "hacked": 19575, - "hacker": 22376, - "hackers": 21498, - "hacking": 12939, - "hackney": 48811, - "hackney": 24928, - "hacks": 19965, - "had": 10660, - "had": 1100, - "hadi": 39058, - "hadid": 26415, - "hadith": 46907, - "hadley": 44995, - "hadn": 21480, - "hadoop": 43868, - "hae": 30723, - "hae": 27193, - "hafi": 39914, - "hag": 26855, - "hag": 43207, - "hagan": 47489, - "hagen": 14664, - "hager": 48773, - "hagg": 26324, - "hague": 28988, - "hah": 18108, - "hah": 13680, - "haha": 1913, - "haha": 3060, - "hahah": 27253, - "hahah": 15441, - "hahaha": 4722, - "hahahah": 37513, - "hahahah": 20096, - "hahahaha": 8058, - "hahahaha": 9501, - "hahahahah": 33334, - "hahahahaha": 16347, - "hahahahahaha": 26487, - "hahahahahahaha": 43653, - "hahahahahahahaha": 36126, - "hahahha": 49205, - "hahn": 35596, - "hai": 8734, - "hai": 5234, - "haider": 42200, - "haiku": 19542, - "hail": 15272, - "hail": 8634, - "hailed": 44604, - "hailey": 27703, - "hailing": 47288, - "hails": 32571, - "hailstate": 35063, - "hain": 23861, - "hair": 4658, - "hair": 2225, - "haircare": 43682, - "haircut": 14711, - "hairdresser": 47468, - "haired": 27202, - "hairs": 27951, - "hairstyle": 22324, - "hairstyles": 40627, - "hairy": 26513, - "haiti": 17368, - "haitian": 37577, - "haj": 27885, - "haj": 43191, - "haji": 41889, - "hajj": 35576, - "hak": 25142, - "hak": 40671, - "haka": 44011, - "hake": 41663, - "hal": 1296, - "hal": 8708, - "hala": 25918, - "halal": 34216, - "halam": 29061, - "halamadrid": 31132, - "halder": 32201, - "hale": 37038, - "hale": 14701, - "halen": 39204, - "halep": 49017, - "haley": 37330, - "haley": 16839, - "half": 7453, - "half": 2349, - "halftime": 13742, - "halfway": 16736, - "hali": 9860, - "hali": 43030, - "halibut": 49030, - "halifax": 13411, - "hall": 6850, - "hall": 2140, - "halla": 29569, - "halle": 27763, - "halle": 32239, - "hallelujah": 36993, - "halli": 32665, - "hallmark": 31040, - "hallmark": 32053, - "hallmarkchannel": 36840, - "hallo": 3463, - "halloffame": 48578, - "halloween": 28537, - "halloween": 3739, - "halls": 18052, - "hallucin": 35385, - "hallway": 26845, - "halo": 33331, - "halo": 11918, - "halsey": 34256, - "halt": 25640, - "halter": 47194, - "halton": 45445, - "ham": 1522, - "ham": 1714, - "hama": 17944, - "hamas": 14818, - "hamburg": 18409, - "hamburger": 33928, - "hamid": 32377, - "hamil": 6725, - "hamill": 45784, - "hamill": 48729, - "hamillhimself": 47324, - "hamilton": 22448, - "hamilton": 7684, - "hamlet": 27722, - "hamlin": 49326, - "hamm": 46110, - "hammer": 15331, - "hammer": 9401, - "hammered": 37251, - "hammers": 35649, - "hammersmith": 42127, - "hammock": 33682, - "hammond": 21761, - "hamont": 18518, - "hamp": 6665, - "hamper": 27692, - "hampshire": 16006, - "hampstead": 37340, - "hampton": 36582, - "hampton": 12285, - "hamptons": 42415, - "hamr": 47979, - "hamradio": 36712, - "hams": 25619, - "hamster": 33313, - "hamstring": 39990, - "hamza": 45762, - "han": 1545, - "han": 3565, - "hana": 16801, - "hand": 1722, - "hand": 2463, - "handbag": 22654, - "handbags": 35667, - "handball": 27988, - "handbook": 25147, - "handcrafted": 22185, - "handed": 10881, - "handedly": 48656, - "handel": 40072, - "handful": 23725, - "handheld": 26812, - "handic": 17812, - "handicap": 27063, - "handicapp": 42349, - "handing": 19196, - "handle": 43681, - "handle": 7245, - "handled": 26824, - "handler": 29097, - "handles": 22124, - "handling": 14071, - "handmade": 18054, - "handmade": 6737, - "handmadehour": 25724, - "handover": 46922, - "hands": 3500, - "handshake": 38418, - "handsome": 7438, - "handwriting": 29986, - "handwritten": 35192, - "handy": 13479, - "hane": 28411, - "hang": 3351, - "hang": 5592, - "hangar": 33439, - "hanged": 40807, - "hanger": 28905, - "hangin": 22670, - "hanging": 4850, - "hangout": 17572, - "hangover": 20755, - "hangs": 21785, - "hani": 39944, - "hani": 18374, - "hank": 35993, - "hank": 17655, - "hanks": 29943, - "hanley": 47284, - "hann": 5584, - "hanna": 10075, - "hannah": 18622, - "hannah": 9142, - "hannel": 43477, - "hanni": 19493, - "hannibal": 25149, - "hannity": 24569, - "hannover": 39976, - "hanoi": 36134, - "hanover": 33246, - "hans": 35172, - "hans": 16628, - "hansen": 19729, - "hanson": 24602, - "hant": 40641, - "hanuk": 32774, - "hanukkah": 34247, - "hanuman": 46975, - "hao": 27184, - "hap": 44981, - "hap": 47988, - "happ": 784, - "happen": 21486, - "happen": 4506, - "happened": 4402, - "happening": 4284, - "happeningnow": 43107, - "happenings": 41998, - "happens": 4988, - "happier": 14118, - "happiest": 13811, - "happily": 17316, - "happiness": 5096, - "happy": 2952, - "happy": 900, - "happybirthday": 9651, - "happybirthday": 12207, - "happydays": 25106, - "happye": 33922, - "happyeaster": 38745, - "happyfathersday": 43534, - "happyfriday": 33340, - "happyhalloween": 28750, - "happyholidays": 32186, - "happyhour": 32036, - "happymonday": 47364, - "happymothersday": 42425, - "happynewyear": 18655, - "happythanksgiving": 40593, - "happyvalentinesday": 42403, - "haps": 9114, - "haq": 32445, - "har": 915, - "har": 5888, - "hara": 10367, - "haram": 35732, - "haram": 22950, - "haran": 27921, - "harare": 43562, - "haras": 26644, - "harass": 16481, - "harassed": 43067, - "harassment": 16641, - "harat": 28984, - "harb": 5856, - "harbaugh": 45220, - "harbor": 40686, - "harbor": 10202, - "harbour": 35430, - "harbour": 10011, - "harcourt": 48093, - "hard": 3312, - "hard": 1626, - "hardcover": 31123, - "harden": 27350, - "harder": 12274, - "hardest": 15258, - "hardin": 43802, - "harding": 24382, - "hardly": 17363, - "hardro": 28126, - "hardrock": 48365, - "hardrock": 40739, - "hards": 44048, - "hardship": 45085, - "hardt": 17922, - "hardware": 11957, - "hardwell": 45572, - "hardwick": 46864, - "hardwood": 28167, - "hardwork": 42554, - "hardwork": 27404, - "hardworking": 28095, - "hardworkpaysoff": 49193, - "hardy": 48179, - "hardy": 14113, - "hare": 27903, - "hare": 18464, - "harga": 39738, - "hari": 25472, - "hari": 8981, - "harlan": 49133, - "harle": 29096, - "harlem": 17771, - "harley": 24702, - "harley": 13632, - "harleydavidson": 39183, - "harlow": 34113, - "harm": 16656, - "harm": 14452, - "harman": 42434, - "harmed": 39637, - "harmful": 21725, - "harmless": 44369, - "harmon": 10828, - "harmon": 28729, - "harmony": 10785, - "harms": 46703, - "harne": 43323, - "harness": 23205, - "harold": 16917, - "harp": 27339, - "harper": 31288, - "harper": 12634, - "harri": 6639, - "harrier": 37372, - "harriet": 27154, - "harrington": 34340, - "harris": 25356, - "harris": 6925, - "harrisburg": 40590, - "harrison": 34389, - "harrison": 10540, - "harro": 18939, - "harrogate": 30842, - "harrow": 38807, - "harry": 11094, - "harry": 3600, - "harrypotter": 23375, - "harsh": 30596, - "harsh": 16944, - "hart": 9335, - "hart": 7752, - "hartford": 23434, - "harth": 35619, - "hartle": 47482, - "hartley": 31268, - "hartman": 43294, - "haru": 35099, - "harvard": 28118, - "harvard": 12848, - "harve": 6405, - "harvest": 44495, - "harvest": 8971, - "harvested": 35899, - "harvesting": 26674, - "harvey": 33289, - "harvey": 9586, - "harvick": 46983, - "haryana": 27661, - "has": 13855, - "has": 791, - "hasan": 30049, - "hasbro": 37405, - "hash": 6338, - "hash": 19199, - "hashi": 41831, - "hashmi": 35852, - "hashtag": 34015, - "hashtag": 9238, - "hashtags": 23514, - "haskell": 48550, - "hasn": 9143, - "hass": 9298, - "hassan": 15829, - "hassee": 37117, - "hassel": 32204, - "hassle": 35762, - "hast": 18146, - "hasta": 36623, - "hastings": 22035, - "hat": 3447, - "hat": 3801, - "hatch": 24202, - "hatch": 17809, - "hatchback": 42348, - "hatched": 42158, - "hate": 23546, - "hate": 3753, - "hated": 21298, - "hateful": 36418, - "hater": 36917, - "haters": 14027, - "hates": 14957, - "hatfield": 38448, - "hath": 27894, - "hath": 34416, - "hathaway": 31801, - "hati": 26045, - "hating": 25668, - "hatred": 19046, - "hats": 9812, - "hatt": 8747, - "hatton": 44861, - "hau": 5152, - "hauer": 48751, - "haul": 23743, - "haul": 12332, - "hauled": 46620, - "hauling": 43132, - "haun": 9676, - "haunt": 31039, - "haunted": 14944, - "haunting": 24034, - "haunts": 48035, - "haus": 41755, - "haus": 16478, - "hausen": 33338, - "hauser": 46586, - "haute": 28854, - "hav": 13443, - "hav": 20447, - "havan": 36304, - "havana": 23357, - "havas": 46261, - "have": 18053, - "have": 720, - "haven": 33074, - "haven": 3871, - "havent": 29130, - "haver": 27876, - "haves": 49088, - "havin": 31937, - "having": 1977, - "havoc": 24447, - "haw": 2788, - "haw": 26954, - "hawa": 6067, - "hawa": 46278, - "hawai": 15800, - "hawaii": 32413, - "hawaii": 8265, - "hawaiian": 17734, - "hawan": 27765, - "hawk": 14704, - "hawk": 8218, - "hawke": 38178, - "hawker": 39051, - "hawkeye": 38666, - "hawkeyes": 34266, - "hawking": 33437, - "hawkins": 19740, - "hawks": 44806, - "hawks": 5841, - "hawthorn": 45372, - "hawthorne": 36730, - "hay": 4871, - "hay": 11367, - "haya": 41325, - "hayat": 49360, - "hayden": 19806, - "haydn": 48207, - "haye": 36583, - "hayes": 13555, - "hayley": 39986, - "hayley": 22204, - "haynes": 30496, - "hays": 41524, - "hayward": 29400, - "haz": 5040, - "haz": 39921, - "hazard": 26174, - "hazard": 15178, - "hazardous": 27102, - "hazards": 30639, - "haze": 22785, - "hazel": 19838, - "hazel": 21882, - "hazelnut": 35816, - "hazi": 22740, - "hazmat": 48887, - "hazrat": 45775, - "hazy": 32655, - "hb": 6854, - "hb": 12576, - "hbcu": 40008, - "hbd": 25277, - "hbd": 13594, - "hbo": 15252, - "hc": 15831, - "hc": 7821, - "hcs": 46850, - "hd": 11601, - "hd": 4414, - "hdd": 40508, - "hdmi": 33302, - "hdr": 28065, - "he": 651, - "he": 797, - "hea": 27150, - "hea": 32790, - "head": 1603, - "head": 1375, - "headache": 23849, - "headaches": 38025, - "headband": 28556, - "headed": 6153, - "header": 11077, - "heading": 4409, - "headless": 45219, - "headlights": 42422, - "headline": 10891, - "headliner": 38880, - "headlines": 14706, - "headlining": 26971, - "headphone": 37524, - "headphones": 14906, - "headquarters": 13041, - "heads": 5174, - "headset": 23883, - "headshot": 34890, - "heal": 1231, - "heal": 13833, - "healed": 31456, - "healer": 38328, - "healey": 38985, - "healing": 9295, - "heals": 32384, - "health": 2145, - "health": 1728, - "healthand": 43704, - "healthcare": 42500, - "healthcare": 6023, - "healthier": 18242, - "healthtech": 42694, - "healthy": 10330, - "healthy": 3782, - "healthye": 31532, - "healthyeating": 33761, - "healthyfood": 39996, - "healthylifestyle": 46254, - "healthyliving": 27293, - "healy": 34299, - "heap": 34781, - "heaps": 44446, - "hear": 2749, - "hear": 2584, - "heard": 4063, - "hearing": 46353, - "hearing": 5541, - "hearings": 33175, - "hearn": 36613, - "hears": 25395, - "heart": 4975, - "heart": 1936, - "heartbeat": 29154, - "heartbreak": 29281, - "heartbreaking": 21322, - "heartbroken": 35383, - "hearted": 21679, - "heartfelt": 22904, - "hearth": 31563, - "hearthstone": 34054, - "hearti": 29345, - "hearties": 44572, - "heartland": 31923, - "heartless": 47022, - "heartnews": 40426, - "hearts": 5516, - "heartw": 30002, - "heartwarming": 34080, - "hearty": 26994, - "heat": 12175, - "heat": 4403, - "heated": 17057, - "heater": 23246, - "heath": 12794, - "heath": 11719, - "heather": 20230, - "heather": 12470, - "heathrow": 24171, - "heating": 12478, - "heaton": 34557, - "heats": 36106, - "heatwave": 25726, - "heav": 2409, - "heaven": 15520, - "heaven": 5545, - "heavenly": 19117, - "heavens": 26026, - "heavier": 31253, - "heaviest": 33268, - "heavily": 14123, - "heavy": 12048, - "heavy": 4200, - "heavymetal": 39804, - "heavyweight": 17448, - "heb": 24700, - "heb": 34515, - "hebdo": 41817, - "hebrew": 27298, - "hebrides": 45121, - "hebron": 45725, - "hec": 18932, - "heck": 22985, - "heck": 14427, - "hectares": 44162, - "hectic": 37245, - "hector": 25852, - "hed": 18271, - "hedge": 16229, - "hedge": 20294, - "hedgehog": 21940, - "hedges": 41345, - "hee": 18364, - "hee": 15773, - "heechul": 42487, - "heed": 15118, - "heel": 33646, - "heel": 16861, - "heels": 10909, - "heem": 30061, - "heer": 40473, - "hef": 29473, - "heff": 48756, - "hefty": 48584, - "heg": 41995, - "heh": 25834, - "hehe": 48723, - "hehe": 10658, - "hehehe": 24138, - "hei": 6101, - "hei": 29051, - "heidel": 42927, - "heidelberg": 48445, - "heidi": 44860, - "heidi": 23867, - "heifer": 48219, - "heigh": 43883, - "height": 10788, - "heights": 8418, - "heim": 10931, - "heim": 9768, - "heimer": 39517, - "hein": 15487, - "hein": 43206, - "heine": 28742, - "heineken": 36874, - "heinrich": 47877, - "heinz": 32359, - "heir": 27083, - "heir": 34007, - "heirloom": 34232, - "heirs": 43834, - "heis": 21849, - "heisman": 34537, - "heist": 31035, - "heit": 37255, - "hel": 919, - "hel": 11579, - "hela": 48212, - "held": 4042, - "hele": 46129, - "helen": 17576, - "helen": 11291, - "helena": 23109, - "helene": 41591, - "helens": 45940, - "heli": 33874, - "heli": 40183, - "helicop": 10035, - "helicopter": 11956, - "helicopters": 26922, - "helium": 46505, - "helix": 35247, - "hell": 8410, - "hell": 4141, - "hella": 19800, - "hellboy": 48428, - "helle": 48600, - "helle": 46968, - "hellenic": 42544, - "heller": 44464, - "hello": 12887, - "hello": 3306, - "hells": 47989, - "helly": 48690, - "helm": 47970, - "helm": 19520, - "helmet": 11122, - "helmets": 21843, - "help": 8641, - "help": 1318, - "helped": 4845, - "helper": 29321, - "helpers": 36316, - "helpful": 12695, - "helping": 3875, - "helpless": 47638, - "helpline": 43101, - "helps": 5144, - "helsin": 17842, - "helsinki": 19626, - "hem": 20270, - "hem": 11148, - "hemi": 14256, - "hemi": 46856, - "heming": 30819, - "hemingway": 33470, - "hemisphere": 32767, - "hemmings": 34882, - "hemo": 43788, - "hemp": 28225, - "hemp": 18467, - "hems": 32451, - "hemsworth": 39428, - "hen": 2385, - "hen": 8047, - "hence": 23640, - "hend": 11560, - "hender": 49248, - "henderson": 14348, - "hendrick": 45296, - "hendricks": 37588, - "hendrix": 23605, - "henge": 33104, - "henley": 27853, - "henna": 39455, - "hennessy": 42667, - "henri": 19431, - "henri": 21610, - "henrik": 35772, - "henry": 16018, - "henry": 5508, - "hens": 31742, - "henson": 32935, - "hep": 17724, - "hep": 48791, - "hepat": 23767, - "hepatitis": 32169, - "hepburn": 26348, - "her": 1223, - "her": 899, - "hera": 38724, - "heral": 37809, - "herald": 27625, - "herald": 12851, - "herb": 26116, - "herb": 15302, - "herbal": 21868, - "herbali": 44087, - "herbalife": 48364, - "herbert": 19935, - "herbs": 17320, - "hercules": 26539, - "herd": 36142, - "herd": 18589, - "here": 9134, - "here": 763, - "hered": 47976, - "hereford": 35543, - "heres": 13566, - "hereto": 47673, - "heri": 31392, - "herit": 4720, - "heritag": 38273, - "heritage": 20962, - "heritage": 5455, - "herman": 31890, - "herman": 21568, - "hermann": 40942, - "hermes": 34563, - "hermi": 35265, - "hermione": 45502, - "hermit": 43953, - "hermitage": 47706, - "hermo": 40967, - "hermosa": 42531, - "hern": 30571, - "hern": 43576, - "hernandez": 17707, - "hero": 7338, - "hero": 3756, - "heroes": 38010, - "heroes": 5506, - "heroic": 24255, - "heroin": 23841, - "heroine": 27420, - "heron": 22593, - "heros": 37642, - "herr": 38537, - "herrera": 27755, - "herring": 30211, - "hers": 25359, - "herself": 9207, - "hersh": 20379, - "hershey": 29734, - "hert": 26744, - "hertfordshire": 41070, - "herts": 35784, - "herty": 23454, - "hertz": 49383, - "hes": 30553, - "hes": 12784, - "hesit": 23933, - "hesitate": 34967, - "hess": 41888, - "hester": 31105, - "het": 37527, - "het": 19678, - "hetero": 26405, - "heu": 20105, - "heughan": 32298, - "hew": 48141, - "hew": 43051, - "hewitt": 28871, - "hex": 16255, - "hex": 31241, - "hey": 10759, - "hey": 2189, - "hez": 34591, - "hezbollah": 37636, - "hf": 26606, - "hf": 20603, - "hfx": 47297, - "hg": 23986, - "hg": 26237, - "hgtv": 47657, - "hh": 3280, - "hh": 5180, - "hhh": 8281, - "hhhh": 19391, - "hhhh": 13121, - "hhhhh": 24246, - "hhhhhh": 37278, - "hhs": 27006, - "hi": 677, - "hi": 1883, - "hia": 20672, - "hiatus": 27823, - "hib": 15922, - "hiber": 38799, - "hibis": 36226, - "hibiscus": 36460, - "hibition": 24658, - "hibs": 42814, - "hic": 3549, - "hic": 38079, - "hick": 14813, - "hickman": 49148, - "hickory": 29905, - "hicks": 23429, - "hid": 15552, - "hid": 14451, - "hidalgo": 47464, - "hidden": 28305, - "hidden": 7029, - "hiddleston": 31444, - "hide": 17725, - "hide": 9379, - "hideous": 46588, - "hides": 30800, - "hiding": 11371, - "hie": 15763, - "hier": 23433, - "hier": 29913, - "hierarchy": 44442, - "hifi": 38168, - "hig": 38108, - "higgins": 21783, - "high": 1487, - "high": 1400, - "higher": 5321, - "highered": 27072, - "highest": 5317, - "highland": 32244, - "highland": 16062, - "highlander": 46251, - "highlanders": 40445, - "highlands": 16883, - "highlight": 8264, - "highlighted": 22252, - "highlighter": 45460, - "highlighting": 17344, - "highlights": 6173, - "highly": 5302, - "highness": 38694, - "highs": 15144, - "highschool": 23102, - "highway": 45344, - "highway": 7620, - "highways": 28007, - "higu": 39115, - "hihi": 36240, - "hii": 42315, - "hijab": 31407, - "hika": 41356, - "hikari": 44624, - "hike": 9404, - "hiked": 36471, - "hiker": 40947, - "hikers": 46090, - "hikes": 27076, - "hiking": 9118, - "hiko": 48708, - "hil": 3508, - "hil": 17927, - "hila": 38837, - "hilar": 37337, - "hilari": 7784, - "hilarious": 8358, - "hilariously": 43476, - "hilary": 45898, - "hilary": 25415, - "hilde": 45382, - "hill": 3671, - "hill": 2682, - "hillary": 13257, - "hillary": 7074, - "hillaryclinton": 15357, - "hilli": 32513, - "hills": 24178, - "hills": 5289, - "hillsborough": 32157, - "hillside": 37194, - "hilltop": 45858, - "hilly": 32483, - "hilton": 33621, - "hilton": 14012, - "him": 4128, - "him": 1269, - "himach": 29132, - "himachal": 35461, - "himalay": 17552, - "himalayan": 30318, - "himalayas": 32872, - "hime": 45892, - "himself": 4530, - "himss": 41730, - "hin": 1676, - "hin": 37930, - "hina": 40571, - "hinakhan": 45518, - "hinch": 49320, - "hind": 34460, - "hind": 23293, - "hindi": 14967, - "hinds": 47859, - "hindu": 17587, - "hindu": 12053, - "hinduism": 40592, - "hindus": 25701, - "hindustan": 46553, - "hines": 37462, - "hing": 37968, - "hini": 33564, - "hino": 45343, - "hint": 11868, - "hinton": 47165, - "hints": 20594, - "hio": 32897, - "hip": 11725, - "hip": 6584, - "hipho": 8819, - "hiphop": 26598, - "hiphop": 10914, - "hipp": 13607, - "hippie": 28637, - "hippo": 28398, - "hippo": 36729, - "hips": 30191, - "hipstamatic": 31002, - "hipster": 19987, - "hipsters": 48265, - "hir": 4959, - "hir": 14728, - "hira": 42577, - "hire": 32356, - "hire": 8243, - "hired": 17602, - "hires": 24133, - "hiring": 7835, - "hiro": 17396, - "hiro": 20588, - "hiroshima": 33867, - "hirsch": 46967, - "his": 15211, - "his": 787, - "hism": 23502, - "hispan": 16843, - "hispanic": 22676, - "hist": 21710, - "hist": 13779, - "histo": 33479, - "histor": 2993, - "historia": 46010, - "historian": 20697, - "historians": 35200, - "historic": 30195, - "historic": 5726, - "historical": 34154, - "historical": 8039, - "historically": 30445, - "histories": 34736, - "history": 11142, - "history": 1695, - "historymonth": 19356, - "historyof": 35905, - "hit": 5453, - "hit": 2341, - "hitch": 22937, - "hitch": 36203, - "hitler": 16518, - "hitman": 33290, - "hits": 4712, - "hitter": 23538, - "hitters": 39724, - "hitting": 7957, - "hiv": 44410, - "hiv": 11018, - "hive": 38162, - "hive": 18521, - "hiya": 42393, - "hk": 22648, - "hk": 12307, - "hl": 8297, - "hl": 5956, - "hle": 32389, - "hler": 35418, - "hm": 17913, - "hm": 7631, - "hmm": 13725, - "hmmm": 17032, - "hmmmm": 34598, - "hms": 14625, - "hmu": 21630, - "hmv": 49288, - "hn": 22905, - "hn": 7478, - "hns": 48412, - "ho": 606, - "ho": 2971, - "hoa": 37517, - "hoar": 31628, - "hoax": 33438, - "hob": 18212, - "hobart": 31646, - "hobb": 16175, - "hobbies": 36370, - "hobbit": 23207, - "hobbs": 34343, - "hobby": 41120, - "hobby": 17557, - "hobo": 34613, - "hobo": 41334, - "hoboken": 41568, - "hoc": 35880, - "hoch": 43772, - "hock": 34914, - "hock": 46574, - "hockey": 16499, - "hockey": 4111, - "hoco": 34771, - "hod": 31062, - "hodg": 23660, - "hodge": 40585, - "hodges": 35061, - "hodgson": 37044, - "hoe": 32502, - "hoe": 11262, - "hoek": 40073, - "hoes": 21164, - "hof": 20186, - "hof": 12789, - "hofer": 38654, - "hoff": 32860, - "hoff": 22751, - "hofficial": 41949, - "hoffman": 22026, - "hog": 12075, - "hog": 13255, - "hogan": 19757, - "hogg": 42005, - "hogs": 23242, - "hogwarts": 29168, - "hoh": 43947, - "hoi": 39295, - "hok": 26942, - "hok": 47167, - "hokies": 35168, - "hokkaido": 49145, - "hol": 1187, - "hol": 7349, - "hola": 28724, - "hold": 36496, - "hold": 3254, - "holden": 21869, - "holder": 7862, - "holders": 10074, - "holding": 5050, - "holdings": 24832, - "holds": 7286, - "hole": 47242, - "hole": 5341, - "holes": 11266, - "holi": 2093, - "holi": 21926, - "holic": 16348, - "holics": 29782, - "holiday": 13168, - "holiday": 2878, - "holidays": 5372, - "holiness": 37259, - "holistic": 26300, - "holl": 27699, - "holla": 26500, - "holland": 31608, - "holland": 9978, - "hollande": 47690, - "holler": 49047, - "holli": 24019, - "holliday": 41624, - "hollow": 41221, - "hollow": 16691, - "holloway": 29435, - "holly": 12731, - "holly": 11923, - "hollyo": 41525, - "hollyoaks": 43352, - "hollywood": 24655, - "hollywood": 5518, - "holm": 34758, - "holm": 12739, - "holme": 46149, - "holmes": 12756, - "holo": 10317, - "holocau": 14688, - "holocaust": 16476, - "hols": 33344, - "holt": 18868, - "holtz": 44743, - "holy": 13910, - "holy": 4874, - "hom": 906, - "hom": 47397, - "homa": 9557, - "homage": 17746, - "home": 2143, - "home": 1137, - "homebrew": 35046, - "homec": 33869, - "homecoming": 9008, - "homedecor": 15695, - "homedepot": 38707, - "homegrown": 32554, - "homeitems": 42972, - "homeland": 21633, - "homeless": 18403, - "homeless": 9661, - "homelessness": 19851, - "homemade": 7889, - "homeof": 48856, - "homeowner": 37267, - "homeowners": 29882, - "homepage": 29828, - "homer": 29307, - "homer": 16931, - "homers": 38333, - "homes": 19480, - "homes": 5416, - "homeschool": 40994, - "homestead": 32609, - "homeswee": 46298, - "hometown": 12238, - "homework": 12495, - "homicide": 21520, - "homie": 12540, - "homies": 18893, - "homme": 26193, - "homo": 18129, - "homo": 30504, - "homophobia": 37875, - "homophobic": 40975, - "homosexual": 44288, - "homosexuality": 46720, - "homs": 45413, - "hon": 1279, - "hon": 10296, - "honda": 8553, - "honduras": 29715, - "hone": 38640, - "honest": 7814, - "honest": 9602, - "honestly": 9155, - "honesty": 24939, - "honey": 9843, - "honey": 6406, - "honeycomb": 48583, - "honeymoon": 22527, - "hong": 12144, - "hong": 8598, - "hongkong": 16659, - "honi": 17918, - "honolulu": 28096, - "honor": 9206, - "honor": 3402, - "honorable": 19498, - "honorary": 15675, - "honore": 25868, - "honored": 5494, - "honoree": 38993, - "honorees": 43012, - "honoring": 10771, - "honors": 10248, - "honour": 8240, - "honourable": 29855, - "honoured": 11945, - "honouring": 37754, - "honours": 22558, - "hoo": 2300, - "hoo": 7920, - "hood": 18681, - "hood": 3222, - "hooded": 33631, - "hoodie": 13444, - "hoodies": 25974, - "hoods": 16664, - "hoof": 44555, - "hook": 30488, - "hook": 10395, - "hookah": 34214, - "hooked": 18138, - "hookem": 31465, - "hooker": 37891, - "hooking": 35240, - "hooks": 25068, - "hooligans": 48176, - "hoon": 21368, - "hooo": 44538, - "hoop": 31516, - "hoop": 19573, - "hooper": 35221, - "hoops": 9351, - "hoor": 22155, - "hooray": 24940, - "hoos": 46462, - "hoosier": 48886, - "hoosiers": 42780, - "hoot": 29164, - "hoover": 25691, - "hop": 10848, - "hop": 5833, - "hope": 5263, - "hope": 1683, - "hoped": 30628, - "hopeful": 21453, - "hopefully": 7602, - "hopeless": 35586, - "hopes": 10018, - "hoping": 7207, - "hopkins": 17821, - "hopp": 48839, - "hopped": 34220, - "hopper": 21748, - "hopping": 27606, - "hoppy": 38359, - "hops": 21137, - "hor": 1407, - "hor": 33847, - "hora": 26013, - "horace": 39282, - "horan": 26857, - "horde": 44947, - "hore": 15380, - "horiz": 8144, - "horizon": 17924, - "horizon": 11920, - "horizons": 29685, - "horizontal": 25775, - "hormon": 27096, - "hormone": 31283, - "hormones": 35162, - "horn": 15771, - "horn": 9607, - "horne": 38143, - "horned": 34526, - "hornet": 28739, - "hornets": 20124, - "horns": 22109, - "horny": 32622, - "horo": 21500, - "horoscope": 38453, - "horowitz": 44669, - "horri": 8656, - "horrible": 13726, - "horribly": 45484, - "horrific": 25314, - "horrifying": 38901, - "horror": 13787, - "horror": 5032, - "horrormovies": 46682, - "horrors": 33321, - "horse": 8562, - "horse": 4558, - "horseback": 43673, - "horseman": 48885, - "horsepower": 36882, - "horser": 23096, - "horseracing": 30693, - "horses": 8809, - "horseshoe": 29242, - "horst": 37182, - "hort": 19482, - "horticul": 27141, - "horticulture": 39998, - "horton": 25945, - "hortons": 38422, - "horus": 29794, - "hos": 44320, - "hos": 25008, - "hosa": 44618, - "hose": 19662, - "hoseok": 38817, - "hosp": 2847, - "hosp": 37853, - "hospice": 20533, - "hospit": 7180, - "hospital": 29399, - "hospital": 3851, - "hospitality": 11657, - "hospitalized": 36915, - "hospitals": 13816, - "host": 17403, - "host": 3953, - "hostage": 26119, - "hoste": 31700, - "hosted": 6017, - "hostel": 27225, - "hostess": 39692, - "hostile": 28074, - "hosting": 4857, - "hosts": 8718, - "hot": 2851, - "hot": 2069, - "hota": 43289, - "hotdog": 43758, - "hotel": 14591, - "hotel": 2738, - "hotels": 8654, - "hotline": 30516, - "hotmail": 46427, - "hotness": 39803, - "hotra": 27109, - "hotro": 47823, - "hotspot": 36606, - "hotspur": 35176, - "hotter": 23591, - "hottest": 8279, - "hottie": 22804, - "hotties": 46027, - "hou": 1011, - "hou": 10122, - "hough": 44529, - "houghton": 36133, - "houn": 39273, - "houn": 33607, - "hound": 33996, - "hound": 13561, - "hounds": 21178, - "hounews": 48373, - "hour": 14930, - "hour": 2232, - "hourly": 30918, - "hours": 2382, - "house": 4107, - "house": 1212, - "housed": 37518, - "household": 12412, - "households": 27167, - "housel": 48685, - "housemusic": 28468, - "houseof": 19928, - "houses": 7791, - "housewives": 38523, - "housing": 32924, - "housing": 5734, - "houston": 16564, - "houston": 5663, - "hov": 40291, - "hove": 29674, - "hoven": 35559, - "hover": 36252, - "hover": 49016, - "hovering": 43437, - "how": 7470, - "how": 829, - "howar": 37672, - "howard": 25447, - "howard": 7632, - "howdy": 42216, - "howe": 8179, - "howe": 24614, - "howell": 25297, - "hower": 32920, - "however": 8467, - "howi": 47883, - "howie": 42939, - "howl": 40332, - "howling": 41771, - "howto": 38191, - "howto": 44060, - "hoy": 39625, - "hoy": 13278, - "hoya": 40978, - "hp": 23753, - "hp": 6371, - "hpa": 30983, - "hpc": 39936, - "hpe": 33787, - "hpv": 45765, - "hq": 33571, - "hq": 4693, - "hr": 4810, - "hr": 4086, - "hra": 21320, - "hra": 17212, - "hrc": 18139, - "hrh": 29103, - "hri": 21068, - "hrithik": 45371, - "hrs": 7157, - "hru": 24127, - "hrw": 25064, - "hs": 9343, - "hs": 2466, - "hsbc": 31508, - "hsc": 43510, - "hse": 34057, - "hsfb": 29539, - "hsv": 47311, - "ht": 11123, - "ht": 7801, - "hta": 23452, - "hta": 49384, - "htafc": 42821, - "htc": 48942, - "htc": 17635, - "html": 18231, - "hts": 43710, - "htt": 10620, - "http": 15066, - "https": 30901, - "httr": 49372, - "httweets": 43198, - "hu": 845, - "hu": 5949, - "hua": 22138, - "huan": 41405, - "huang": 32013, - "huar": 46916, - "huawe": 17709, - "huawei": 21128, - "hub": 18775, - "hub": 7028, - "hubb": 23183, - "hubbard": 33288, - "hubble": 30421, - "hubby": 16947, - "hubert": 40699, - "hubs": 29327, - "huck": 22909, - "huckabee": 43666, - "hud": 7169, - "hud": 28563, - "hudder": 22629, - "huddersfield": 24220, - "huddle": 33435, - "hudson": 25873, - "hudson": 11260, - "hue": 48380, - "hue": 21465, - "hues": 38003, - "huey": 39663, - "huff": 18746, - "huff": 44999, - "huffpost": 45887, - "hug": 40790, - "hug": 10359, - "huge": 2699, - "hugely": 24648, - "hugged": 41333, - "hugging": 27058, - "hugh": 8723, - "hugh": 15385, - "hughes": 11418, - "hugo": 43935, - "hugo": 17132, - "hugs": 14248, - "huh": 13348, - "huhu": 32134, - "hui": 29978, - "hul": 7911, - "hula": 40145, - "hulk": 17637, - "hull": 25154, - "hull": 10375, - "hulu": 24666, - "hum": 5823, - "hum": 16283, - "human": 3175, - "human": 2751, - "humane": 20220, - "humanitarian": 14170, - "humanities": 24949, - "humanity": 9420, - "humanright": 44385, - "humanrights": 14148, - "humans": 8324, - "humb": 9988, - "humber": 30602, - "humber": 38063, - "humble": 38703, - "humble": 10889, - "humbled": 19682, - "humbling": 39757, - "humbold": 24739, - "humboldt": 31389, - "hume": 38197, - "humid": 14778, - "humid": 27447, - "humidi": 47666, - "humidity": 15469, - "humil": 27205, - "humili": 25332, - "humility": 28535, - "humming": 26515, - "hummingbird": 33072, - "hummus": 31785, - "humor": 29369, - "humor": 11186, - "humorous": 38173, - "humour": 19161, - "hump": 16673, - "hump": 24529, - "humpback": 47662, - "humpday": 27693, - "humph": 19767, - "humphrey": 31549, - "hun": 1616, - "hun": 10795, - "hundre": 8505, - "hundred": 11898, - "hundreds": 8879, - "hung": 13825, - "hungar": 19420, - "hungarian": 23325, - "hungary": 17232, - "hunger": 25565, - "hunger": 10184, - "hungergames": 47507, - "hungover": 41110, - "hungry": 44845, - "hungry": 8451, - "hunk": 33912, - "hunt": 16498, - "hunt": 5774, - "hunted": 37373, - "hunter": 16531, - "hunter": 6099, - "hunters": 16115, - "hunting": 27830, - "hunting": 7507, - "huntington": 23521, - "hunts": 34041, - "huntsville": 34544, - "hur": 2305, - "hur": 34523, - "hurd": 44915, - "hurdle": 27486, - "hurdles": 25440, - "huri": 42486, - "hurley": 30166, - "hurling": 24738, - "huron": 36147, - "hurrah": 40599, - "hurric": 6543, - "hurrican": 36105, - "hurricane": 24051, - "hurricane": 8782, - "hurricanes": 22357, - "hurry": 10921, - "hurst": 44742, - "hurst": 11760, - "hurt": 7413, - "hurting": 24017, - "hurts": 13059, - "hus": 5111, - "hus": 35853, - "husband": 6179, - "husbands": 33612, - "hush": 28728, - "husk": 19246, - "huskers": 26946, - "huskies": 20988, - "husky": 20421, - "huss": 13733, - "hussain": 17940, - "hussein": 31336, - "hust": 27279, - "hustle": 15709, - "huston": 46480, - "hut": 20924, - "hut": 16503, - "hutch": 31018, - "hutch": 33203, - "hutchinson": 35721, - "hutto": 27662, - "hutton": 38321, - "hv": 17209, - "hv": 18593, - "hvac": 27492, - "hw": 27491, - "hw": 18876, - "hwa": 32352, - "hwan": 44390, - "hwang": 46775, - "hwy": 13812, - "hy": 1441, - "hy": 17827, - "hya": 31600, - "hyacin": 47263, - "hyatt": 44856, - "hyatt": 25146, - "hybri": 9084, - "hybrid": 10156, - "hyd": 42382, - "hyde": 46484, - "hyde": 16343, - "hyder": 13960, - "hyderabad": 14801, - "hydr": 8031, - "hydra": 44414, - "hydra": 40420, - "hydrange": 43298, - "hydrate": 29628, - "hydrated": 23300, - "hydrating": 47653, - "hydration": 24174, - "hydrau": 26017, - "hydraulic": 26189, - "hydro": 8368, - "hydro": 22595, - "hydrogen": 20974, - "hye": 32724, - "hye": 25792, - "hygi": 16277, - "hygiene": 19591, - "hymn": 41350, - "hyo": 38960, - "hyo": 35078, - "hyp": 16964, - "hype": 30353, - "hype": 11111, - "hyped": 22507, - "hyper": 7997, - "hyper": 22146, - "hypertension": 40698, - "hypno": 23355, - "hypnosis": 48138, - "hypnoti": 40440, - "hypo": 10252, - "hypocr": 30711, - "hypocri": 25606, - "hypocrisy": 26296, - "hypocrite": 44125, - "hypothe": 46966, - "hypothesis": 44956, - "hyster": 24235, - "hysteria": 45965, - "hysterical": 48627, - "hyuk": 20452, - "hyun": 11831, - "hyun": 8589, - "hyundai": 17094, - "hyung": 46901, - "hyung": 16551, - "hz": 32533, - "i": 72, - "i": 328, - "ia": 12486, - "ia": 1073, - "iac": 32838, - "iac": 44063, - "iaf": 40789, - "iah": 35052, - "iain": 30103, - "ial": 11530, - "ial": 1974, - "ials": 20940, - "iam": 3579, - "iam": 11415, - "iambic": 43668, - "iambicpent": 43891, - "iamsrk": 15103, - "ian": 7723, - "ian": 1800, - "ians": 6451, - "iansomerhalder": 47077, - "iart": 18413, - "iartg": 18669, - "ias": 32303, - "ias": 14620, - "ib": 3962, - "ib": 13554, - "iba": 39763, - "ibadan": 44691, - "iban": 47145, - "ibc": 49014, - "ibd": 40732, - "iber": 23814, - "ibi": 12337, - "ibis": 47048, - "ibiza": 13853, - "ible": 37792, - "ibles": 44102, - "ibm": 23415, - "ibm": 13918, - "ibn": 25729, - "ibooks": 46887, - "ibra": 15476, - "ibrahi": 40350, - "ibrahim": 20816, - "ibrox": 46883, - "ibs": 41993, - "ibu": 43587, - "ibu": 46117, - "ic": 535, - "ic": 1029, - "ica": 2576, - "icago": 37492, - "ical": 6082, - "ical": 1110, - "ically": 3161, - "icals": 13999, - "ican": 17653, - "ican": 5246, - "icans": 20511, - "icar": 37211, - "ication": 21629, - "icc": 12945, - "ice": 2739, - "ice": 733, - "iceberg": 33662, - "icec": 13636, - "icecream": 21334, - "iced": 8049, - "icelan": 34114, - "iceland": 46716, - "iceland": 11935, - "icelandic": 34705, - "ices": 1931, - "ich": 5333, - "ich": 1232, - "icha": 31453, - "iche": 28972, - "iche": 21143, - "ichi": 21669, - "ichi": 14647, - "ichick": 45022, - "ichiro": 43787, - "ici": 948, - "ici": 22189, - "icia": 11774, - "icial": 17543, - "icial": 6397, - "ician": 40522, - "ician": 5374, - "icians": 6264, - "iciary": 21329, - "icic": 46006, - "icide": 6558, - "icides": 28253, - "icing": 7676, - "icio": 24207, - "icion": 45905, - "icious": 3325, - "icist": 21165, - "icists": 42171, - "icity": 7243, - "ick": 1168, - "ick": 1068, - "icked": 39799, - "icker": 40357, - "ickers": 30701, - "icki": 35468, - "icking": 6619, - "icks": 3727, - "icky": 11587, - "icn": 44516, - "ico": 13697, - "ico": 3040, - "icom": 17693, - "icom": 29796, - "icon": 13843, - "icon": 5646, - "iconic": 6959, - "icons": 15553, - "icop": 9389, - "icos": 32002, - "ics": 1324, - "ict": 6349, - "icted": 36515, - "iction": 40560, - "icton": 36548, - "icu": 45118, - "icu": 30443, - "icular": 40660, - "icus": 31459, - "icy": 28780, - "icy": 3495, - "icymi": 5315, - "icz": 46387, - "id": 1568, - "id": 1014, - "ida": 11032, - "ida": 11600, - "idad": 22462, - "idaho": 48817, - "idaho": 15165, - "idal": 39684, - "idan": 17929, - "idc": 22386, - "ide": 1909, - "ide": 14104, - "idea": 3612, - "ideal": 8789, - "ideally": 48247, - "ideals": 45096, - "ideas": 4452, - "ident": 7113, - "identi": 6009, - "identical": 25587, - "identification": 23337, - "identified": 15217, - "identifies": 35712, - "identify": 10949, - "identifying": 23589, - "identities": 34292, - "identity": 8892, - "ideology": 25840, - "iders": 8980, - "ides": 31791, - "idf": 28987, - "idge": 35567, - "idh": 44325, - "idi": 9611, - "idi": 14264, - "idio": 15994, - "idiot": 14087, - "idiots": 20856, - "idk": 8972, - "idle": 34754, - "idlib": 36199, - "ido": 6763, - "ido": 29641, - "idol": 24866, - "idol": 8884, - "idols": 21398, - "idr": 10106, - "idri": 46435, - "idris": 41312, - "ids": 6111, - "idu": 28655, - "idy": 33058, - "idyl": 44879, - "idyllic": 46632, - "ie": 6789, - "ie": 1718, - "iec": 44773, - "ied": 10059, - "ieee": 39860, - "iel": 27875, - "iel": 22729, - "ience": 1542, - "ient": 13115, - "ier": 33173, - "ier": 5912, - "iers": 45060, - "ies": 27912, - "ies": 963, - "iest": 10818, - "if": 8063, - "if": 878, - "ifa": 37574, - "ifc": 36524, - "ife": 41172, - "ife": 19590, - "iff": 35753, - "ification": 35755, - "ified": 41403, - "ift": 31143, - "iftar": 35153, - "ifu": 41523, - "ify": 32807, - "ig": 1089, - "ig": 3072, - "iga": 16493, - "igan": 27468, - "igans": 25419, - "igbo": 44591, - "ige": 10806, - "igen": 33070, - "iger": 30758, - "iger": 20685, - "igers": 40755, - "igers": 48928, - "iggy": 46219, - "iggy": 27604, - "igh": 2712, - "igh": 5451, - "ight": 14571, - "ight": 897, - "ighton": 35292, - "igi": 21901, - "igle": 29912, - "iglesias": 39432, - "ign": 7303, - "ign": 2326, - "ignati": 37573, - "ignatius": 48318, - "igne": 45843, - "ignite": 25210, - "ignition": 36115, - "igno": 15375, - "ignor": 7653, - "ignorance": 22735, - "ignorant": 26933, - "ignore": 12304, - "ignored": 20428, - "ignores": 40129, - "ignoring": 23969, - "igor": 33024, - "igs": 31344, - "igu": 21279, - "ih": 12162, - "ih": 34135, - "ihear": 13043, - "iheart": 30332, - "iheartawards": 18811, - "iheartradio": 25934, - "ihop": 45511, - "ihri": 39108, - "ihrithik": 39326, - "ii": 5103, - "ii": 2329, - "iii": 46236, - "iii": 6572, - "iiii": 20133, - "iiii": 45393, - "iiot": 30704, - "iit": 39330, - "iit": 33238, - "ij": 7337, - "ija": 42802, - "ik": 3903, - "ik": 10177, - "ika": 18188, - "ike": 12329, - "ike": 19696, - "ikea": 20528, - "iker": 38653, - "ikh": 44655, - "ikh": 12758, - "iklan": 32028, - "iklan": 29584, - "iko": 35659, - "iko": 39272, - "ikon": 38543, - "ikon": 19156, - "iku": 17780, - "il": 543, - "il": 958, - "ila": 4344, - "ilah": 32211, - "ilan": 13889, - "ilan": 28076, - "iland": 20957, - "ilation": 16180, - "ilay": 45093, - "ild": 22278, - "ild": 17164, - "ile": 18398, - "ile": 989, - "iled": 3358, - "iler": 22446, - "iler": 3615, - "ilers": 8975, - "iles": 42274, - "ili": 2076, - "ili": 19601, - "ilia": 14855, - "ilian": 10272, - "iliary": 32585, - "ilife": 42835, - "ilike": 44989, - "ilinan": 48497, - "iling": 3299, - "ilio": 47256, - "ilion": 12561, - "ilis": 43442, - "ilit": 11178, - "ilities": 5446, - "ility": 1787, - "ilive": 26478, - "ill": 828, - "ill": 660, - "illa": 8877, - "illa": 3043, - "illac": 17218, - "illage": 48922, - "illard": 21920, - "illary": 33667, - "illas": 23404, - "ille": 18213, - "ille": 5559, - "illed": 2527, - "illeg": 35808, - "illegal": 7983, - "illegally": 24466, - "illegals": 40490, - "iller": 23341, - "iller": 2956, - "illers": 30547, - "illery": 14514, - "illes": 20037, - "illi": 1086, - "illi": 25187, - "illia": 48776, - "illiams": 30301, - "illian": 48775, - "illian": 17355, - "illic": 37152, - "illicit": 40998, - "illie": 26083, - "illin": 35868, - "illing": 2803, - "illini": 28957, - "illino": 8920, - "illinois": 9414, - "illion": 35542, - "illion": 2035, - "illness": 11145, - "illnesses": 33861, - "illo": 34153, - "illo": 7588, - "illon": 20516, - "ills": 1900, - "illu": 3025, - "illumin": 11446, - "illuminate": 43261, - "illuminated": 28814, - "illuminati": 34551, - "illuminating": 46601, - "illumination": 43680, - "illus": 41386, - "illusion": 20318, - "illusions": 47429, - "illustr": 6268, - "illustrate": 37468, - "illustrated": 13151, - "illustrates": 38129, - "illustrating": 43322, - "illustration": 6052, - "illustrations": 17852, - "illustrator": 16649, - "illustri": 43116, - "illustrious": 44304, - "illy": 11707, - "illy": 9532, - "ilm": 36326, - "ilo": 4220, - "ilo": 14835, - "ilove": 7183, - "ilove": 32914, - "iloveart": 41114, - "ilovemy": 28863, - "iloveyou": 28829, - "ils": 1543, - "ilt": 25334, - "ilton": 28494, - "ilu": 27337, - "ilwx": 43777, - "ily": 4881, - "ily": 1026, - "ilya": 33377, - "ilysm": 29228, - "im": 732, - "im": 1496, - "ima": 2414, - "ima": 6432, - "imac": 40675, - "imacele": 47281, - "imag": 2316, - "image": 24101, - "image": 2867, - "imagery": 22828, - "images": 4952, - "imagin": 18178, - "imaginary": 30417, - "imagination": 13783, - "imaginative": 47233, - "imagine": 35752, - "imagine": 4826, - "imagined": 18478, - "imagines": 47379, - "imaging": 14231, - "imagining": 27384, - "imam": 37552, - "imam": 19024, - "iman": 45684, - "iman": 16247, - "imation": 44566, - "imax": 32066, - "imc": 45616, - "imdanielpadilla": 36357, - "imdb": 30407, - "ime": 44937, - "ime": 31151, - "imel": 31594, - "iment": 37157, - "imer": 21802, - "imes": 47744, - "imf": 28403, - "img": 24157, - "imi": 23559, - "imin": 23942, - "imit": 23462, - "imitation": 41630, - "imma": 19487, - "immac": 25085, - "immaculate": 29649, - "immature": 45531, - "immedi": 7366, - "immediate": 14440, - "immediately": 10108, - "immen": 17278, - "immense": 22722, - "immensely": 35013, - "immer": 13954, - "immerse": 46240, - "immersion": 31861, - "immersive": 27521, - "immigr": 5851, - "immigrant": 16474, - "immigrants": 14460, - "immigration": 9588, - "imminent": 27299, - "immort": 39244, - "immortal": 24717, - "immun": 8961, - "immune": 15606, - "immuni": 44571, - "immunity": 26254, - "immuno": 24361, - "immunology": 44483, - "immunotherapy": 39185, - "imo": 26349, - "imo": 13738, - "imp": 3335, - "imp": 31037, - "impac": 7573, - "impact": 33036, - "impact": 3844, - "impacted": 21424, - "impactful": 41631, - "impacting": 29359, - "impacts": 15069, - "impair": 36451, - "impaired": 28028, - "impairment": 44501, - "impala": 36641, - "impe": 23612, - "impeach": 16874, - "impeach": 43497, - "impeachment": 32979, - "impeachtrump": 38006, - "impecc": 34511, - "impeccable": 40111, - "impending": 34486, - "imper": 7727, - "imperative": 39833, - "imperfect": 46034, - "imperi": 30911, - "imperial": 32425, - "imperial": 12361, - "imperialism": 48855, - "imperson": 25551, - "implant": 33106, - "implants": 32202, - "imple": 7423, - "implement": 17966, - "implementation": 15102, - "implemented": 24315, - "implementing": 22862, - "implic": 15269, - "implications": 19229, - "implo": 40337, - "impo": 45704, - "import": 2336, - "import": 16294, - "importance": 6821, - "important": 2829, - "importantly": 21580, - "imported": 28798, - "imports": 25286, - "impose": 35879, - "imposed": 25871, - "imposing": 42289, - "impossible": 9815, - "impre": 3763, - "impress": 20015, - "impressed": 9689, - "impression": 14468, - "impressionism": 36114, - "impressionist": 44904, - "impressions": 22276, - "impressive": 6634, - "imprint": 43863, - "imprison": 22141, - "imprisoned": 32999, - "imprisonment": 39024, - "impro": 2531, - "impromp": 28100, - "impromptu": 28611, - "improv": 22868, - "improve": 4971, - "improved": 9446, - "improvement": 10790, - "improvements": 16320, - "improves": 18035, - "improving": 10381, - "improvis": 32343, - "improvised": 40886, - "impulse": 29683, - "impy": 42690, - "imran": 19647, - "imran": 19212, - "imrankhan": 25956, - "imrankhanpti": 26688, - "ims": 17800, - "imsa": 37262, - "imv": 35731, - "imvkohli": 37136, - "imwith": 26822, - "imwithher": 32651, - "in": 512, - "in": 530, - "ina": 18026, - "ina": 1366, - "inability": 47517, - "inaccurate": 49192, - "inaction": 41916, - "inactive": 49274, - "inadequate": 43403, - "inak": 46549, - "inal": 19178, - "inals": 26438, - "inan": 26204, - "inappropriate": 26722, - "inari": 48620, - "inary": 11337, - "inas": 36731, - "inas": 12362, - "inated": 38530, - "ination": 4706, - "inau": 10832, - "inaugu": 11309, - "inaugur": 11448, - "inaugural": 11340, - "inaugurated": 29011, - "inauguration": 16805, - "inbound": 24420, - "inbox": 18683, - "inc": 14570, - "inc": 4438, - "incan": 45964, - "incar": 18070, - "incarcer": 26334, - "incarcerated": 49178, - "incarceration": 39887, - "incase": 30463, - "ince": 44303, - "incen": 13259, - "incense": 35059, - "incentive": 29024, - "incentives": 29813, - "inception": 36653, - "inch": 6523, - "incheon": 30645, - "inches": 10809, - "inci": 5747, - "incidence": 43371, - "incident": 10103, - "incidents": 22120, - "incindia": 26161, - "inciner": 46434, - "incl": 27857, - "incl": 13338, - "inclined": 45470, - "inclu": 1738, - "include": 5942, - "included": 7414, - "includes": 6197, - "including": 2814, - "inclusion": 12079, - "inclusive": 13393, - "income": 8044, - "incoming": 15416, - "incomparable": 36027, - "incompetent": 45069, - "incomplete": 34040, - "incon": 42372, - "inconvenience": 40563, - "incorpor": 19335, - "incorporate": 34168, - "incorporated": 29494, - "incorporating": 40303, - "incorrect": 31872, - "incre": 1870, - "increase": 5230, - "increased": 9156, - "increases": 13797, - "increasing": 10270, - "increasingly": 16106, - "incredi": 2883, - "incredible": 22128, - "incredible": 3457, - "incredibleindia": 24680, - "incredibles": 48641, - "incredibly": 9513, - "incu": 38830, - "incub": 24587, - "incubator": 35736, - "incumb": 32246, - "incumbent": 38038, - "incur": 42356, - "ind": 5386, - "ind": 4655, - "inda": 15710, - "inde": 2645, - "indeed": 10031, - "indefin": 29501, - "indefinitely": 43750, - "independ": 4147, - "independence": 23117, - "independence": 7955, - "independenceday": 25971, - "independent": 33844, - "independent": 7088, - "independently": 39831, - "inder": 29225, - "index": 35209, - "index": 9458, - "indhoven": 44229, - "indi": 1098, - "indi": 46536, - "india": 27067, - "india": 1762, - "indian": 7685, - "indian": 3606, - "indiana": 8615, - "indianapolis": 17196, - "indianfootball": 45979, - "indians": 10271, - "indic": 7136, - "indicate": 26679, - "indicated": 39416, - "indicates": 29412, - "indication": 38539, - "indicator": 24776, - "indicators": 30054, - "indicted": 34992, - "indictment": 42278, - "indie": 5260, - "indie": 9383, - "indiedev": 10863, - "indiefilm": 22588, - "indiegame": 17969, - "indiegamedev": 40466, - "indiegames": 35864, - "indiegogo": 38057, - "indies": 23618, - "indiffe": 41372, - "indigen": 8348, - "indigenous": 9303, - "indigo": 21002, - "indira": 43887, - "indirec": 26398, - "indirect": 35416, - "indivi": 5649, - "individu": 9574, - "individual": 8512, - "individually": 33782, - "individuals": 11990, - "indo": 26303, - "indo": 18297, - "indom": 42926, - "indone": 6180, - "indonesia": 7229, - "indonesian": 19593, - "indoor": 44478, - "indoor": 9546, - "indoors": 22973, - "indore": 46143, - "indu": 2298, - "induc": 7973, - "induced": 24103, - "inducted": 20596, - "inductee": 39558, - "inductees": 44796, - "induction": 18338, - "indul": 19402, - "indulg": 28388, - "indulge": 24851, - "indulgence": 40856, - "indulgent": 49147, - "industri": 5082, - "industrial": 30853, - "industrial": 7520, - "industries": 11700, - "industry": 47407, - "industry": 3318, - "indv": 16942, - "indy": 9821, - "indy": 10098, - "indycar": 20484, - "indyref": 22569, - "ine": 855, - "ine": 715, - "ineau": 38122, - "inec": 45214, - "ined": 2038, - "inee": 43252, - "inee": 7986, - "inees": 13056, - "ineffe": 47202, - "inely": 18234, - "inem": 48876, - "inema": 29232, - "inen": 44365, - "inequalities": 45507, - "inequality": 17372, - "iner": 17438, - "iner": 5155, - "iners": 41863, - "ines": 2137, - "inese": 35966, - "iness": 1463, - "inet": 8121, - "inette": 38911, - "inev": 19527, - "inevit": 45871, - "inevitable": 25004, - "inews": 24300, - "inexpensive": 38614, - "iney": 30254, - "inez": 12700, - "inf": 1529, - "inf": 35241, - "infamous": 18688, - "infan": 17219, - "infant": 19192, - "infantry": 21655, - "infants": 34726, - "infe": 7164, - "infec": 26088, - "infected": 26136, - "infection": 14774, - "infections": 22227, - "infectious": 29157, - "infeld": 25035, - "infer": 16258, - "inferno": 31290, - "infertility": 40701, - "infield": 48933, - "infiltr": 28683, - "infin": 6246, - "infinite": 12748, - "infiniti": 34644, - "infinity": 34863, - "infinity": 12895, - "infl": 7627, - "inflam": 16080, - "inflammation": 24893, - "inflammatory": 26831, - "inflatable": 30135, - "inflation": 17497, - "inflicted": 48188, - "influ": 4835, - "influen": 13229, - "influence": 9199, - "influenced": 21183, - "influencer": 25013, - "influencers": 29891, - "influences": 24926, - "influencing": 45126, - "influential": 17553, - "influenza": 39897, - "info": 5680, - "info": 2222, - "infographic": 10076, - "infographics": 33172, - "infor": 31773, - "inform": 10241, - "inform": 19449, - "informal": 25705, - "informat": 29625, - "informatics": 35685, - "information": 3204, - "informative": 19364, - "informed": 13876, - "informing": 45388, - "informs": 48440, - "infosec": 17863, - "infr": 29718, - "infra": 7312, - "infra": 45877, - "infrared": 22867, - "infrastructure": 9034, - "infringe": 44882, - "infringement": 48712, - "infront": 37668, - "infu": 15048, - "infuri": 48461, - "infused": 21461, - "infusion": 43464, - "ing": 653, - "ing": 519, - "inga": 15233, - "ingco": 40444, - "ingday": 16561, - "ingdon": 38731, - "inge": 11790, - "inge": 7071, - "inged": 30046, - "ingen": 19088, - "ingeni": 36884, - "inger": 33883, - "inger": 3541, - "ingfor": 33430, - "ingh": 9170, - "ingh": 30495, - "ingham": 24497, - "ingham": 4291, - "inghamshire": 39289, - "inghour": 42728, - "inging": 4066, - "ingl": 45662, - "ingle": 22228, - "ingle": 17005, - "ingles": 24490, - "ingley": 44428, - "inglis": 46327, - "ingly": 4796, - "ingnow": 34766, - "ingo": 30175, - "ingo": 9012, - "ingra": 45165, - "ingrad": 44124, - "ingram": 26998, - "ingredi": 9272, - "ingredient": 19799, - "ingredients": 11788, - "ingrid": 33496, - "ings": 895, - "ingthe": 20170, - "ingtips": 39373, - "ington": 11846, - "ington": 2156, - "ingu": 8714, - "ingual": 22795, - "ingue": 36838, - "ingui": 12788, - "inguish": 36146, - "inha": 32612, - "inhabit": 36189, - "inhabitants": 44968, - "inhal": 30786, - "inhe": 32617, - "inher": 24611, - "inherent": 47327, - "inherit": 34322, - "inheritance": 39341, - "inherited": 39111, - "inhi": 25557, - "inhibit": 32196, - "inho": 12984, - "ini": 6154, - "ini": 3581, - "inian": 36638, - "inim": 38717, - "inindia": 34021, - "ining": 1389, - "inist": 30976, - "init": 42670, - "initi": 4580, - "initial": 13980, - "initially": 28123, - "initials": 48794, - "initiated": 27756, - "initiation": 41009, - "initiative": 8152, - "initiatives": 16549, - "inity": 22126, - "inj": 5112, - "injec": 13688, - "injection": 21438, - "inju": 5006, - "injured": 7505, - "injuries": 9481, - "injury": 6223, - "injustice": 20541, - "ink": 4547, - "ink": 967, - "inka": 40685, - "inked": 29356, - "inki": 46176, - "inkigayo": 47882, - "inking": 37586, - "inks": 20966, - "inktober": 9387, - "inland": 21943, - "inlet": 35161, - "inline": 45004, - "inlove": 28415, - "inmate": 32341, - "inmates": 28216, - "inmy": 42657, - "inn": 27260, - "inn": 5569, - "inna": 35088, - "inner": 24512, - "inner": 6955, - "inning": 4415, - "innings": 11580, - "innis": 44059, - "inno": 7961, - "innocence": 26383, - "innocent": 11241, - "innov": 2890, - "innovate": 24549, - "innovation": 33063, - "innovation": 4272, - "innovations": 18817, - "innovative": 8494, - "innovator": 34735, - "innovators": 27834, - "ino": 4211, - "ino": 2691, - "inoa": 25649, - "inos": 21828, - "inous": 47801, - "inox": 22698, - "input": 16952, - "inputs": 48763, - "inqu": 10628, - "inqui": 18527, - "inquirer": 45172, - "inquiries": 29469, - "inquiry": 15865, - "inquis": 31171, - "inr": 36325, - "ins": 12786, - "ins": 1041, - "insan": 7875, - "insane": 10260, - "insanely": 27846, - "insanity": 26645, - "inscribed": 49168, - "inscription": 41127, - "insec": 15744, - "insect": 21297, - "insects": 18714, - "insecure": 35112, - "insecurity": 36964, - "inser": 13830, - "insert": 18807, - "insi": 3453, - "inside": 19141, - "inside": 2912, - "insider": 13300, - "insiders": 32171, - "insig": 40503, - "insight": 8795, - "insightful": 20354, - "insights": 8729, - "insignia": 48864, - "insist": 35504, - "insisted": 40423, - "insists": 27255, - "inski": 32630, - "insky": 24607, - "insol": 42366, - "insom": 21755, - "insomni": 42040, - "insomnia": 30598, - "inson": 21007, - "insp": 1597, - "inspec": 7915, - "inspect": 40815, - "inspecting": 40565, - "inspection": 15142, - "inspections": 39513, - "inspector": 20514, - "inspir": 2573, - "inspiration": 4195, - "inspirational": 41936, - "inspirational": 9855, - "inspirations": 35093, - "inspire": 27901, - "inspire": 8583, - "inspired": 39849, - "inspired": 3516, - "inspires": 17245, - "inspiring": 41847, - "inspiring": 5705, - "inspo": 26897, - "inst": 1264, - "inst": 1581, - "insta": 22411, - "insta": 11694, - "instability": 41377, - "instac": 46678, - "instaf": 33800, - "instag": 14612, - "instagood": 23718, - "instagram": 27910, - "instagram": 2659, - "instal": 38805, - "install": 6940, - "install": 11168, - "installation": 9358, - "installations": 27909, - "installed": 8807, - "installing": 18301, - "installment": 25315, - "installs": 45568, - "instalment": 47766, - "instance": 34572, - "instant": 38810, - "instant": 10635, - "instantly": 17703, - "instap": 23758, - "instapic": 34378, - "instaweather": 43078, - "instaweatherpro": 43150, - "inste": 3571, - "instead": 4191, - "instein": 13421, - "instem": 27030, - "instin": 23382, - "instinct": 30544, - "institu": 4257, - "institute": 5861, - "institutes": 43674, - "institution": 18823, - "institutional": 27442, - "institutions": 15207, - "instore": 41679, - "instru": 4544, - "instruc": 19648, - "instruction": 19407, - "instructional": 31022, - "instructions": 17040, - "instructor": 16087, - "instructors": 31998, - "instrument": 42196, - "instrument": 15806, - "instrumental": 23041, - "instruments": 14793, - "instyle": 41321, - "insu": 8805, - "insul": 9615, - "insulated": 42051, - "insulation": 28194, - "insulin": 29311, - "insult": 26673, - "insulting": 39646, - "insults": 40451, - "insur": 5024, - "insurance": 5870, - "insured": 31321, - "insurers": 43142, - "insurtech": 28716, - "int": 1828, - "int": 1207, - "inta": 38314, - "intact": 26870, - "intake": 19539, - "intan": 47695, - "inte": 1598, - "inte": 41900, - "intech": 26504, - "inted": 6147, - "integr": 5151, - "integral": 27018, - "integrate": 25735, - "integrated": 12797, - "integrating": 31555, - "integration": 12583, - "integrity": 14791, - "intel": 11778, - "intel": 11426, - "intellec": 13281, - "intellect": 47828, - "intellectu": 31966, - "intellectual": 18069, - "intelli": 5324, - "intellig": 5632, - "intelligence": 6846, - "intelligent": 14063, - "inten": 2967, - "intend": 36674, - "intended": 16812, - "intense": 10258, - "intensi": 22928, - "intensity": 19956, - "intensive": 21049, - "intent": 18881, - "intention": 26786, - "intentional": 29536, - "intentionally": 31215, - "intentions": 26710, - "inter": 1006, - "inter": 10093, - "interact": 21736, - "interacting": 35045, - "interaction": 17650, - "interactions": 22162, - "interactive": 9456, - "intercep": 23676, - "interception": 48762, - "interceptions": 45313, - "interchange": 34222, - "intercontinental": 31983, - "interdisciplinary": 38132, - "intere": 2008, - "interest": 5095, - "interested": 4620, - "interesting": 3628, - "interests": 16425, - "interface": 18753, - "interfaith": 38399, - "interference": 29099, - "interim": 19509, - "interior": 10700, - "interior": 7305, - "interiordesign": 12902, - "interiors": 14836, - "intermedi": 20246, - "intermediate": 24304, - "intermission": 44805, - "intermitt": 44946, - "intern": 9976, - "intern": 14068, - "internal": 11285, - "internally": 41134, - "internation": 42534, - "international": 8566, - "international": 2436, - "internationaldayof": 41518, - "internationally": 24059, - "internationalwomensday": 17682, - "interne": 32713, - "internet": 30180, - "internet": 4757, - "internetof": 44449, - "internetofthings": 45925, - "interns": 19902, - "internship": 16661, - "internships": 39410, - "interoper": 45754, - "interpre": 11162, - "interpret": 49154, - "interpret": 40459, - "interpretation": 20652, - "interpreted": 42157, - "interpreting": 46525, - "interro": 29548, - "interrup": 21609, - "interrupt": 48449, - "interrupted": 30288, - "intersec": 45246, - "intersection": 19210, - "interstate": 21963, - "interstellar": 41506, - "interval": 36032, - "intervals": 44884, - "interven": 18245, - "intervention": 16804, - "interventions": 28848, - "interview": 2885, - "interviewed": 11688, - "interviewing": 16399, - "interviews": 9910, - "intestin": 37938, - "intestinal": 38896, - "inthe": 7486, - "inti": 14459, - "intim": 38832, - "intimacy": 46430, - "intimate": 16382, - "intimid": 24041, - "intimidating": 44405, - "intimidation": 49258, - "inting": 15571, - "intl": 38186, - "intl": 14224, - "intment": 9020, - "intments": 21420, - "into": 35235, - "into": 1095, - "intoler": 28534, - "intolerance": 37808, - "intothe": 38511, - "intra": 20922, - "intrac": 46195, - "intram": 40956, - "intre": 29397, - "intrepid": 39127, - "intri": 15421, - "intric": 23763, - "intricate": 29616, - "intrigu": 18856, - "intrigue": 45140, - "intrigued": 40034, - "intriguing": 24334, - "intrin": 45181, - "intro": 2999, - "intro": 13224, - "introduc": 3621, - "introduce": 9813, - "introduced": 10446, - "introduces": 12933, - "introducing": 6256, - "introduction": 11812, - "introductory": 38121, - "intru": 22949, - "ints": 2514, - "intu": 17225, - "intuition": 40897, - "intuitive": 35224, - "inu": 21131, - "inuit": 41250, - "inus": 45857, - "inv": 2279, - "inv": 43786, - "inva": 10084, - "invade": 34609, - "invaded": 32596, - "invaders": 35188, - "invading": 40101, - "invali": 31592, - "invalid": 46998, - "invaluable": 33976, - "invasi": 38100, - "invasion": 13378, - "invasive": 19554, - "inve": 2024, - "inven": 26233, - "invent": 11665, - "invent": 23558, - "invented": 14100, - "invention": 23607, - "inventions": 44914, - "inventor": 22836, - "inventory": 19444, - "inver": 12061, - "inverness": 33080, - "inverte": 46397, - "inverted": 40709, - "invest": 4180, - "invest": 9716, - "invested": 22536, - "investig": 4626, - "investigate": 15703, - "investigated": 29180, - "investigates": 29621, - "investigating": 13713, - "investigation": 8194, - "investigations": 24020, - "investigative": 30233, - "investigator": 30528, - "investigators": 24121, - "investin": 40195, - "investing": 10554, - "investment": 5605, - "investments": 14675, - "investor": 15490, - "investors": 10486, - "invests": 38378, - "invic": 25253, - "invigor": 48722, - "invin": 30252, - "invincible": 38052, - "invisible": 16093, - "invit": 12454, - "invitation": 15032, - "invitational": 14511, - "invitations": 40120, - "invite": 8109, - "invited": 7731, - "invites": 16034, - "inviting": 14349, - "invo": 29417, - "invol": 4000, - "involve": 26325, - "involved": 5320, - "involvement": 19502, - "involves": 22652, - "involving": 14786, - "inwx": 35674, - "iny": 23257, - "inyour": 47954, - "io": 3167, - "io": 3752, - "ioc": 43018, - "iom": 33000, - "iom": 31135, - "ion": 14871, - "ion": 3668, - "ions": 26289, - "ior": 7354, - "ior": 2498, - "iority": 46016, - "iors": 6427, - "ios": 6614, - "iot": 32694, - "iot": 6627, - "iota": 37294, - "ious": 6994, - "iously": 38233, - "iow": 7439, - "iowa": 38847, - "iowa": 8290, - "ip": 1719, - "ip": 8600, - "ipa": 11199, - "ipad": 39067, - "ipad": 7491, - "ipads": 35281, - "ipc": 41981, - "iphone": 26030, - "iphone": 4314, - "iphones": 37561, - "ipl": 13440, - "ipment": 37824, - "ipo": 40218, - "ipo": 24090, - "ipod": 17889, - "ipp": 31706, - "ips": 26910, - "ipsw": 22221, - "ipswich": 24494, - "iq": 15554, - "iq": 19996, - "iqbal": 33553, - "ir": 582, - "ir": 742, - "ira": 4923, - "ira": 5371, - "irah": 35724, - "iran": 19273, - "iran": 5075, - "irandeal": 46533, - "irani": 37984, - "iranian": 14158, - "iraq": 8543, - "iraqi": 18617, - "irc": 41527, - "ird": 2770, - "ire": 3013, - "ire": 1454, - "ired": 32728, - "ired": 2995, - "ireland": 32806, - "ireland": 4157, - "irene": 21600, - "ires": 12435, - "irez": 21581, - "irgc": 47942, - "iri": 2155, - "iri": 13880, - "irical": 33366, - "irie": 42979, - "irina": 46664, - "iring": 10169, - "iris": 16437, - "irish": 9386, - "irish": 4889, - "irl": 34494, - "irl": 8570, - "irling": 26493, - "irls": 24344, - "irma": 22406, - "irn": 42603, - "iro": 23209, - "iro": 7280, - "iron": 7699, - "iron": 5391, - "ironic": 24518, - "ironically": 36779, - "ironing": 46655, - "ironman": 20330, - "irons": 30032, - "irony": 20681, - "irport": 27769, - "irr": 24641, - "irrational": 47413, - "irregular": 38692, - "irrelevant": 34677, - "irresi": 31200, - "irresistible": 35252, - "irresponsible": 44714, - "irri": 21484, - "irrigation": 23761, - "irrit": 24218, - "irs": 6086, - "irst": 32701, - "iru": 48206, - "irvin": 47053, - "irvine": 24201, - "irving": 19738, - "irwin": 23750, - "iry": 7239, - "is": 595, - "is": 533, - "isa": 11034, - "isa": 6536, - "isaac": 37544, - "isaac": 13659, - "isab": 13357, - "isabel": 27466, - "isabella": 26192, - "isabelle": 31072, - "isable": 46631, - "isai": 15365, - "isaiah": 17952, - "isak": 40619, - "isance": 46893, - "isation": 7194, - "isback": 43811, - "isc": 39316, - "isch": 47888, - "isco": 5736, - "iscoming": 26458, - "isd": 46816, - "isd": 12002, - "ise": 7669, - "ise": 1479, - "ised": 2861, - "iselle": 48491, - "iser": 23080, - "iser": 5626, - "isers": 34879, - "ises": 5153, - "isf": 44036, - "isgreat": 34595, - "ish": 6844, - "ish": 1061, - "isha": 28050, - "ishable": 37949, - "ished": 35341, - "ishere": 46053, - "ishi": 26224, - "ishq": 27996, - "ishqba": 32503, - "ishqbaaaz": 36591, - "isi": 7233, - "isi": 17880, - "isil": 34636, - "isin": 37676, - "ising": 3426, - "isis": 7531, - "isk": 30171, - "isl": 31368, - "isla": 22807, - "islam": 6003, - "islam": 8770, - "islamabad": 19959, - "islamic": 31627, - "islamic": 9552, - "islamist": 38798, - "islamophobia": 43459, - "island": 13408, - "island": 2619, - "islander": 45651, - "islanders": 27804, - "islands": 7145, - "islay": 49279, - "isle": 19082, - "isle": 11849, - "isleof": 24718, - "isles": 21816, - "islife": 26433, - "islington": 34945, - "ism": 47730, - "ism": 1935, - "isma": 43937, - "ismail": 36140, - "isme": 43570, - "ismo": 41926, - "isms": 18700, - "isn": 2923, - "isner": 48246, - "isnow": 43694, - "isnt": 19416, - "iso": 2462, - "iso": 12263, - "isol": 11414, - "isolated": 19044, - "isolation": 26400, - "ison": 12949, - "ison": 4553, - "isons": 33318, - "isoo": 35857, - "isp": 31397, - "isp": 39041, - "isra": 3591, - "israel": 20837, - "israel": 4779, - "israeli": 8994, - "israelis": 45713, - "isreal": 47147, - "isro": 44841, - "iss": 11738, - "iss": 4950, - "issa": 38579, - "issa": 7560, - "issan": 49358, - "issance": 40828, - "issant": 38828, - "isse": 18986, - "ission": 37946, - "issu": 2049, - "issue": 3202, - "issued": 9246, - "issues": 4082, - "issuing": 37226, - "ist": 9751, - "ist": 2304, - "istanbul": 12258, - "istandwith": 33820, - "iste": 32563, - "ister": 14555, - "isthe": 46748, - "istic": 29556, - "ists": 8426, - "isu": 17030, - "isu": 23328, - "it": 529, - "it": 585, - "ita": 36920, - "ita": 2864, - "itable": 8915, - "ital": 2306, - "ital": 1660, - "itali": 11644, - "italia": 11025, - "italian": 20264, - "italian": 5175, - "italians": 44744, - "italk": 32894, - "italy": 4052, - "itan": 18383, - "itans": 40711, - "itar": 47161, - "itarian": 11599, - "itary": 17604, - "itas": 31634, - "itas": 13436, - "itate": 42457, - "itated": 36744, - "itation": 5070, - "itative": 22892, - "itc": 36449, - "itch": 2387, - "itch": 8147, - "itchen": 32664, - "itchy": 41980, - "ite": 2732, - "ite": 802, - "iteam": 37828, - "itec": 3099, - "itec": 43936, - "itech": 44215, - "itech": 23040, - "ited": 8603, - "ited": 1108, - "itel": 44638, - "itely": 4605, - "item": 8532, - "items": 6207, - "iter": 7938, - "iter": 19773, - "iteracy": 39634, - "iterate": 43106, - "iteration": 38790, - "ites": 2454, - "itez": 42131, - "itf": 35436, - "itfc": 36519, - "ith": 6133, - "ith": 1757, - "ithaca": 46257, - "iti": 760, - "iti": 6165, - "itia": 22634, - "itian": 23365, - "itic": 11950, - "itical": 48767, - "itics": 33967, - "ities": 41423, - "ities": 1480, - "itim": 15676, - "itiner": 32803, - "itinerary": 41564, - "iting": 1257, - "ition": 25263, - "ition": 1104, - "itions": 5540, - "itious": 13329, - "itis": 33539, - "itis": 8388, - "itive": 3067, - "itly": 42240, - "ito": 22167, - "ito": 4661, - "iton": 21119, - "itor": 47267, - "itor": 4584, - "itors": 22005, - "itos": 24560, - "its": 7140, - "its": 902, - "itsa": 45032, - "itself": 7290, - "itsme": 41125, - "itss": 47040, - "itt": 1031, - "itt": 11228, - "itta": 21233, - "itte": 31962, - "itted": 24429, - "itten": 30014, - "itten": 4343, - "itter": 11456, - "itters": 13082, - "itti": 28629, - "ittin": 25646, - "itting": 3147, - "ittle": 24208, - "ittle": 21366, - "ittles": 38989, - "itton": 25707, - "itty": 35096, - "itu": 1668, - "itu": 32128, - "itude": 43382, - "itude": 5012, - "itudes": 20459, - "itunes": 7007, - "itup": 35838, - "iture": 25547, - "itus": 24364, - "itutes": 32883, - "itv": 20159, - "itv": 12805, - "ity": 2480, - "ity": 696, - "itya": 32055, - "itz": 14544, - "itz": 7807, - "iu": 14292, - "iu": 15575, - "ium": 10762, - "ius": 6740, - "iv": 6775, - "iv": 9315, - "iva": 42463, - "ivan": 15544, - "ivan": 15689, - "ivanka": 37914, - "ive": 26885, - "ive": 8653, - "ived": 15654, - "iver": 36849, - "iver": 44254, - "ives": 27333, - "ivf": 39159, - "iving": 45136, - "ivory": 16776, - "ivote": 45835, - "ivy": 36939, - "ivy": 16045, - "iw": 13058, - "iw": 46604, - "iwant": 42747, - "iwd": 16815, - "iwm": 44237, - "ix": 13272, - "ix": 8756, - "iy": 13704, - "iya": 18595, - "iyaki": 48395, - "iz": 2845, - "iz": 8407, - "iza": 37704, - "ization": 10847, - "ize": 10885, - "ized": 7690, - "izen": 34776, - "izer": 23895, - "izes": 45434, - "izing": 17354, - "izo": 46910, - "izz": 31779, - "izz": 46128, - "izzy": 28861, - "j": 73, - "j": 329, - "ja": 1586, - "ja": 2641, - "jaan": 25052, - "jab": 8059, - "jab": 9439, - "jac": 2293, - "jac": 30198, - "jace": 43286, - "jack": 2679, - "jack": 3267, - "jacked": 27923, - "jacket": 6164, - "jackets": 14745, - "jacki": 47418, - "jackie": 28023, - "jackie": 11716, - "jacking": 40929, - "jackman": 35723, - "jackpot": 23926, - "jacks": 19649, - "jackson": 12321, - "jackson": 4363, - "jacksonville": 19263, - "jaco": 6840, - "jacob": 14385, - "jacob": 9222, - "jacobs": 17482, - "jacobson": 46826, - "jacqu": 14495, - "jacqueline": 22843, - "jacques": 17799, - "jad": 12976, - "jad": 38691, - "jada": 37416, - "jade": 25123, - "jade": 14513, - "jaden": 37174, - "jadine": 37445, - "jae": 16869, - "jae": 15765, - "jaejoong": 43610, - "jaf": 19362, - "jag": 7984, - "jag": 36236, - "jagan": 48530, - "jagger": 30835, - "jags": 31086, - "jagu": 10096, - "jaguar": 44777, - "jaguar": 14757, - "jaguars": 21854, - "jah": 20067, - "jah": 11084, - "jahan": 44404, - "jahan": 47827, - "jai": 10542, - "jai": 13819, - "jail": 18574, - "jail": 9332, - "jailbreak": 45990, - "jailed": 19456, - "jails": 47833, - "jaime": 24716, - "jain": 21999, - "jaipur": 23593, - "jais": 48607, - "jait": 28910, - "jaitley": 32776, - "jak": 9225, - "jak": 30589, - "jakarta": 15471, - "jake": 13140, - "jake": 7419, - "jakob": 47358, - "jal": 8380, - "jal": 26773, - "jalan": 27270, - "jalap": 49081, - "jalape": 34263, - "jalapeño": 43017, - "jalen": 33548, - "jam": 1434, - "jam": 5201, - "jama": 8977, - "jama": 35366, - "jamaica": 13019, - "jamaican": 25144, - "jamal": 26108, - "jambo": 35599, - "jamboree": 38506, - "jame": 12341, - "james": 6963, - "james": 2392, - "jamesbond": 44704, - "jamesc": 47004, - "jameson": 31731, - "jami": 15092, - "jamie": 16454, - "jamie": 8078, - "jamiedor": 34310, - "jamiedornan": 34896, - "jammed": 35590, - "jammin": 35223, - "jamming": 25862, - "jammu": 25926, - "jams": 20243, - "jan": 1891, - "jan": 3334, - "jana": 18182, - "jane": 12389, - "jane": 6736, - "janeiro": 31740, - "janet": 29665, - "janet": 15872, - "jang": 41526, - "jang": 22074, - "jani": 22606, - "janice": 36048, - "janine": 46896, - "janis": 44233, - "jann": 35377, - "jans": 22578, - "jansen": 45354, - "janu": 3623, - "january": 3697, - "jap": 2299, - "jap": 49062, - "japan": 4502, - "japan": 3400, - "japanese": 27211, - "japanese": 4925, - "japs": 42121, - "jar": 5120, - "jar": 10837, - "jard": 25778, - "jardin": 37371, - "jare": 17654, - "jared": 35597, - "jared": 12571, - "jaredle": 36739, - "jaredleto": 37106, - "jaro": 35505, - "jarpad": 44497, - "jarre": 23385, - "jarrett": 30531, - "jars": 27583, - "jarvis": 29286, - "jas": 4492, - "jas": 17559, - "jasmin": 42989, - "jasmin": 47700, - "jasmine": 17056, - "jason": 10009, - "jason": 5395, - "jasper": 19827, - "jat": 26106, - "jau": 26932, - "jauregui": 48175, - "jav": 6234, - "java": 12918, - "javascri": 16289, - "javascript": 16423, - "jave": 46218, - "javed": 42268, - "javelin": 41701, - "javi": 47627, - "javier": 23307, - "jaw": 14804, - "jaw": 17307, - "jawa": 44790, - "jaws": 25491, - "jax": 22348, - "jax": 12390, - "jay": 3427, - "jay": 4155, - "jaya": 21960, - "jayanti": 37732, - "jaye": 45703, - "jayne": 35228, - "jays": 12393, - "jaz": 3465, - "jaz": 32874, - "jazeera": 38260, - "jazz": 11488, - "jazz": 4528, - "jazzfest": 36683, - "jazzy": 28191, - "jb": 21915, - "jb": 13637, - "jc": 14991, - "jc": 11517, - "jd": 18289, - "jd": 14125, - "jdm": 42013, - "je": 1013, - "je": 8776, - "jeal": 9964, - "jealous": 11093, - "jealousy": 37654, - "jean": 13943, - "jean": 6473, - "jeanette": 48167, - "jeanne": 29201, - "jeans": 10157, - "jeb": 35101, - "jec": 1347, - "ject": 6070, - "jed": 12166, - "jed": 38748, - "jeddah": 40982, - "jedi": 16681, - "jee": 29250, - "jee": 14870, - "jeep": 16593, - "jeep": 11286, - "jeeplife": 43100, - "jeet": 45542, - "jeet": 30944, - "jef": 10276, - "jeff": 6245, - "jeff": 5550, - "jefferson": 44711, - "jefferson": 13976, - "jeffery": 41470, - "jeffree": 45994, - "jeffrey": 32886, - "jeffrey": 16027, - "jeho": 42437, - "jeky": 43893, - "jekyll": 49405, - "jel": 9794, - "jelena": 48218, - "jelly": 19110, - "jelly": 13762, - "jellyfish": 30988, - "jem": 46326, - "jem": 37530, - "jen": 2554, - "jen": 12997, - "jenkins": 16162, - "jenn": 33921, - "jenn": 29869, - "jenna": 17125, - "jenner": 14260, - "jenni": 6774, - "jennie": 28875, - "jennifer": 19786, - "jennifer": 8613, - "jennings": 21564, - "jenny": 20165, - "jenny": 13414, - "jens": 40806, - "jensen": 35558, - "jensen": 19004, - "jensenackles": 41011, - "jeon": 45200, - "jeon": 43337, - "jeong": 47146, - "jeong": 39264, - "jeopar": 22988, - "jeopardy": 29613, - "jer": 2310, - "jer": 35307, - "jere": 5614, - "jeremi": 22362, - "jeremiah": 27301, - "jeremy": 14656, - "jeremy": 8127, - "jeremycorbyn": 37484, - "jeric": 25084, - "jericho": 28892, - "jerk": 23917, - "jerky": 40079, - "jermaine": 40722, - "jerome": 19876, - "jerry": 18163, - "jerry": 9164, - "jersey": 21921, - "jersey": 4471, - "jerseys": 15518, - "jerus": 12257, - "jerusalem": 12557, - "jes": 7686, - "jes": 35826, - "jess": 5313, - "jess": 13758, - "jesse": 23112, - "jesse": 11770, - "jessi": 24373, - "jessic": 14881, - "jessica": 45421, - "jessica": 8178, - "jessie": 19424, - "jester": 44225, - "jesu": 19777, - "jesuit": 33234, - "jesus": 4070, - "jet": 11515, - "jet": 6565, - "jetblue": 45021, - "jeter": 38450, - "jets": 38584, - "jets": 10025, - "jett": 44541, - "jetty": 46382, - "jew": 27450, - "jewel": 4880, - "jewel": 17591, - "jewell": 9777, - "jewellers": 46265, - "jewellery": 11192, - "jewelry": 28018, - "jewelry": 6039, - "jewels": 20205, - "jewish": 29594, - "jewish": 9104, - "jews": 14200, - "jf": 31130, - "jf": 33718, - "jfc": 43652, - "jfk": 18486, - "jg": 41986, - "jg": 35138, - "jh": 24858, - "jh": 21485, - "jha": 47012, - "jha": 38092, - "jhal": 45695, - "jhar": 31546, - "jharkhand": 39001, - "jhb": 34631, - "ji": 3252, - "ji": 2697, - "jia": 32907, - "jian": 33427, - "jiang": 43309, - "jiang": 25762, - "jic": 48350, - "jic": 40215, - "jid": 24403, - "jie": 40005, - "jig": 15136, - "jig": 47430, - "jigsaw": 32987, - "jiha": 23194, - "jihad": 29637, - "jihoon": 44765, - "jil": 36225, - "jill": 24136, - "jill": 15254, - "jillian": 37820, - "jim": 3190, - "jim": 4550, - "jima": 20679, - "jimcantore": 43950, - "jimenez": 35947, - "jimi": 30565, - "jimin": 16286, - "jimmie": 45679, - "jimmy": 12215, - "jimmy": 6817, - "jimmyfallon": 45265, - "jin": 7927, - "jin": 8485, - "jind": 40609, - "jing": 34933, - "jing": 28607, - "jingle": 28699, - "jinnah": 43141, - "jinping": 39308, - "jinx": 42977, - "jinyoung": 38051, - "jio": 40501, - "jis": 25988, - "jis": 23515, - "jisoo": 43070, - "jit": 11947, - "jit": 20308, - "jitsu": 24530, - "jiu": 43351, - "jiu": 44123, - "jj": 12502, - "jj": 12790, - "jk": 20189, - "jk": 9702, - "jkt": 21494, - "jl": 25027, - "jl": 22911, - "jlo": 31017, - "jm": 24044, - "jm": 18657, - "jn": 24576, - "jn": 21717, - "jnr": 37145, - "jnu": 47142, - "jo": 683, - "jo": 3804, - "joachim": 48979, - "joan": 28064, - "joan": 12710, - "joann": 35484, - "joanna": 25357, - "joanne": 43736, - "joanne": 25092, - "joao": 45666, - "joaqu": 25140, - "joaquin": 30745, - "job": 13114, - "job": 2075, - "jobs": 3735, - "jobsearch": 45459, - "joburg": 39343, - "jocel": 36879, - "jocelyn": 47259, - "jock": 34485, - "jockey": 20126, - "jodh": 48689, - "jodi": 36812, - "jodi": 26888, - "jodie": 33100, - "jody": 32959, - "joe": 9309, - "joe": 3305, - "joel": 19819, - "joel": 11429, - "joes": 34756, - "joey": 16281, - "joey": 10455, - "jog": 37967, - "jog": 31691, - "jogging": 37922, - "joh": 1201, - "johan": 17416, - "johan": 27789, - "johann": 31180, - "johanna": 41494, - "johannes": 37779, - "johannesburg": 28377, - "johansson": 41512, - "johar": 34871, - "john": 2004, - "john": 1742, - "johncena": 46820, - "johnnie": 47947, - "johnny": 14464, - "johnny": 6904, - "johns": 14515, - "johnson": 26036, - "johnson": 4010, - "johnston": 19791, - "johnstone": 40766, - "johor": 34750, - "join": 14737, - "join": 1384, - "joined": 4954, - "joining": 5118, - "joins": 5681, - "joint": 6640, - "jointhe": 30422, - "jointly": 37471, - "joints": 27204, - "jojo": 41484, - "jojo": 22075, - "joke": 7198, - "joker": 18200, - "jokers": 44101, - "jokes": 11336, - "joking": 26112, - "joko": 44975, - "jol": 9174, - "jol": 36470, - "jolie": 31633, - "jolla": 46109, - "jolly": 21516, - "jom": 32152, - "jon": 3026, - "jon": 6139, - "jona": 6629, - "jonah": 47934, - "jonah": 27556, - "jonas": 42373, - "jonas": 13650, - "jonathan": 19026, - "jonathan": 7762, - "jone": 33934, - "jones": 19091, - "jones": 3538, - "jong": 20214, - "jong": 14726, - "jonghyun": 29023, - "jongin": 36957, - "joni": 43177, - "jonny": 28454, - "jonny": 21895, - "joo": 25807, - "joo": 27680, - "joom": 47543, - "joon": 18547, - "joong": 26544, - "jop": 30486, - "joplin": 42688, - "jor": 2482, - "jor": 31595, - "jordan": 14644, - "jordan": 4388, - "jordani": 46898, - "jordi": 44795, - "jorge": 48761, - "jorge": 18225, - "jos": 20560, - "jos": 19661, - "jose": 4647, - "jose": 7075, - "josef": 36584, - "josel": 47800, - "joseph": 14163, - "joseph": 6478, - "josephine": 34866, - "josh": 9998, - "josh": 5679, - "joshi": 24786, - "joshu": 9112, - "joshua": 11852, - "josi": 33583, - "josie": 33167, - "joss": 42834, - "josé": 27922, - "jou": 19921, - "jou": 32029, - "jour": 2078, - "jour": 17142, - "journ": 4563, - "journal": 6626, - "journalism": 10123, - "journalist": 9914, - "journalists": 12249, - "journals": 24391, - "journe": 48833, - "journey": 32156, - "journey": 3749, - "journeys": 23329, - "journo": 37034, - "journos": 46437, - "jovi": 33866, - "joy": 6308, - "joy": 4273, - "joyce": 43753, - "joyce": 15275, - "joye": 34052, - "joyeux": 41876, - "joyful": 24139, - "joyous": 32245, - "joyride": 46949, - "joys": 22996, - "jp": 18249, - "jp": 10557, - "jpg": 36950, - "jpn": 36212, - "jr": 13973, - "jr": 3605, - "js": 46243, - "js": 8006, - "jst": 26523, - "jt": 39480, - "jt": 18119, - "ju": 669, - "ju": 9970, - "jual": 38720, - "juan": 17148, - "juan": 9274, - "juana": 9081, - "jubi": 15485, - "jubil": 47743, - "jubilee": 16907, - "juco": 31570, - "jud": 8363, - "juda": 32478, - "judah": 41066, - "judaism": 42217, - "judas": 39532, - "judd": 29770, - "judg": 20012, - "judge": 16824, - "judge": 5656, - "judged": 33453, - "judgement": 25246, - "judges": 12575, - "judging": 16570, - "judgment": 24191, - "judi": 42546, - "judice": 28032, - "judicial": 19579, - "judiciary": 24545, - "judith": 24047, - "judo": 27011, - "judy": 34663, - "judy": 16510, - "jug": 27619, - "jugg": 38628, - "juic": 38761, - "juice": 37954, - "juice": 6916, - "juices": 36757, - "juicy": 17623, - "juju": 43020, - "juke": 32519, - "jukebox": 36411, - "jul": 34662, - "jul": 15975, - "jule": 40819, - "jules": 21996, - "juli": 3614, - "juli": 49160, - "julia": 10207, - "julian": 25459, - "julian": 12643, - "juliana": 46059, - "julie": 22534, - "julie": 10505, - "julien": 32595, - "juliet": 20641, - "juliette": 44804, - "julio": 24888, - "julius": 20870, - "july": 2272, - "jum": 20791, - "jumbo": 24678, - "jume": 45989, - "jump": 5519, - "jump": 6423, - "jumped": 16901, - "jumper": 16558, - "jumpers": 36485, - "jumping": 11476, - "jumpman": 48803, - "jumps": 18911, - "jumpsuit": 31044, - "jun": 1637, - "jun": 7719, - "junction": 11320, - "june": 23188, - "june": 2345, - "jung": 13086, - "jung": 13031, - "jungkook": 20040, - "jungle": 42421, - "jungle": 10865, - "juni": 4029, - "junior": 21167, - "junior": 5027, - "juniors": 16811, - "juniper": 33829, - "junk": 16000, - "junkie": 27613, - "junkies": 41207, - "juno": 28845, - "junto": 34282, - "jupit": 15270, - "jupiter": 16212, - "jur": 15896, - "jura": 14715, - "jurassic": 28844, - "jurassic": 21255, - "jurgen": 39263, - "juris": 37010, - "jurisdic": 37714, - "jury": 12931, - "jus": 14999, - "just": 1770, - "just": 761, - "justi": 14700, - "justic": 30399, - "justice": 16904, - "justice": 3604, - "justicefor": 25812, - "justiceleague": 41929, - "justices": 44356, - "justified": 34546, - "justify": 28192, - "justin": 7537, - "justin": 4394, - "justinbieber": 12501, - "justine": 34418, - "justintrudeau": 32184, - "justsaying": 42922, - "juve": 47717, - "juve": 23092, - "juven": 12944, - "juvenile": 19333, - "juvent": 13908, - "juventus": 47378, - "juventus": 16208, - "jux": 33552, - "juxta": 34964, - "jv": 37932, - "jv": 11805, - "jw": 30221, - "jw": 24215, - "jy": 20979, - "jyo": 27378, - "jyoti": 48696, - "jä": 45381, - "k": 74, - "k": 330, - "ka": 1595, - "ka": 1525, - "kaa": 34496, - "kab": 6554, - "kab": 45134, - "kabaddi": 41749, - "kabir": 38619, - "kabo": 47974, - "kabul": 26160, - "kac": 21693, - "kach": 14341, - "kad": 10901, - "kade": 41130, - "kaduna": 38053, - "kae": 22542, - "kaeper": 30070, - "kaepernick": 30713, - "kaf": 19870, - "kag": 13666, - "kag": 31003, - "kah": 16068, - "kah": 15463, - "kahn": 35397, - "kai": 12752, - "kai": 9601, - "kaido": 40255, - "kail": 23623, - "kaine": 39028, - "kair": 33027, - "kaiser": 43685, - "kaiser": 29960, - "kait": 19326, - "kaitlyn": 34948, - "kaj": 44788, - "kaj": 40381, - "kak": 10401, - "kak": 40128, - "kaka": 47689, - "kaku": 30900, - "kal": 4187, - "kal": 18712, - "kala": 45453, - "kala": 33105, - "kalam": 40142, - "kalamaz": 42328, - "kalamazoo": 46264, - "kalb": 34483, - "kale": 17162, - "kale": 16625, - "kaleido": 41144, - "kali": 17844, - "kali": 26964, - "kalin": 42776, - "kalyan": 23825, - "kam": 4104, - "kam": 26011, - "kamal": 31371, - "kamal": 28619, - "kamala": 45003, - "kame": 45235, - "kamen": 40738, - "kami": 28707, - "kamloops": 36602, - "kamp": 35179, - "kamp": 29522, - "kampala": 37134, - "kan": 2532, - "kan": 8101, - "kana": 35178, - "kand": 17478, - "kane": 32218, - "kane": 9765, - "kang": 12226, - "kang": 20789, - "kangar": 20622, - "kangaroo": 25513, - "kani": 40907, - "kani": 41948, - "kann": 18533, - "kannada": 30053, - "kano": 28201, - "kans": 34012, - "kansas": 25507, - "kansas": 6539, - "kansascity": 46134, - "kant": 39923, - "kant": 47132, - "kanth": 24427, - "kanu": 44565, - "kany": 13590, - "kanye": 29680, - "kanye": 14965, - "kanyewest": 31943, - "kap": 6804, - "kap": 45279, - "kapam": 48561, - "kapil": 32337, - "kapil": 42709, - "kapilshar": 48978, - "kaplan": 37401, - "kapoor": 9117, - "kapp": 36717, - "kappa": 20239, - "kapur": 42371, - "kar": 1813, - "kar": 5933, - "kara": 12552, - "karab": 40916, - "karachi": 13671, - "karak": 40372, - "karan": 20077, - "karan": 20931, - "karanjohar": 47621, - "karao": 16262, - "karaoke": 16640, - "karate": 21211, - "kardashi": 13619, - "kardashian": 14578, - "kare": 14310, - "kare": 38354, - "kareem": 38885, - "kareena": 41569, - "karen": 17719, - "karen": 10349, - "kari": 15339, - "kari": 15161, - "karim": 33477, - "karin": 43917, - "karina": 40250, - "karl": 20967, - "karl": 13134, - "karla": 42309, - "karma": 17658, - "karnat": 13994, - "karnataka": 15515, - "karo": 45305, - "kart": 47841, - "kart": 21310, - "karthik": 41397, - "karti": 23053, - "kartikeyan": 32584, - "karting": 41655, - "kas": 6119, - "kas": 14372, - "kasa": 46111, - "kash": 6954, - "kash": 21371, - "kashi": 47945, - "kashmir": 20251, - "kashmir": 10783, - "kashmiri": 35331, - "kasi": 45870, - "kasi": 32819, - "kasich": 39666, - "kat": 2844, - "kat": 9341, - "kata": 14558, - "kate": 11620, - "kate": 6699, - "katelyn": 45963, - "kath": 7386, - "kath": 19745, - "katharine": 41473, - "katherine": 17687, - "kathle": 18721, - "kathleen": 21709, - "kathmandu": 34456, - "kathniel": 36159, - "kathr": 14905, - "kathryn": 33142, - "kathryn": 19999, - "kathy": 34775, - "kathy": 18795, - "kati": 6515, - "kati": 29928, - "katic": 48058, - "katie": 24117, - "katie": 9076, - "katniss": 47916, - "kato": 27573, - "katrin": 31282, - "katrina": 21397, - "katrinakaif": 45845, - "kats": 44213, - "katsu": 49296, - "katsu": 43712, - "katy": 17609, - "katy": 14435, - "katyperry": 28309, - "katz": 30790, - "kau": 9299, - "kau": 36895, - "kauai": 44050, - "kaufman": 37188, - "kaur": 30518, - "kav": 10228, - "kavan": 18576, - "kavanaugh": 20252, - "kaw": 10842, - "kaw": 42719, - "kawa": 33244, - "kawaii": 26891, - "kawasaki": 28227, - "kawhi": 41220, - "kay": 4673, - "kay": 9862, - "kaya": 22752, - "kayak": 27043, - "kayaking": 28977, - "kaye": 33003, - "kayla": 17139, - "kaylee": 47215, - "kayo": 37021, - "kaz": 8812, - "kaz": 39622, - "kazakh": 25451, - "kazakhstan": 26720, - "kazan": 47641, - "kb": 27381, - "kb": 19960, - "kbs": 27418, - "kc": 10869, - "kc": 8638, - "kca": 14347, - "kcon": 39970, - "kcr": 46181, - "kd": 21826, - "kd": 15597, - "kday": 31074, - "kdrama": 48628, - "ke": 643, - "ke": 618, - "kea": 47926, - "kean": 43288, - "keane": 28635, - "keanu": 40608, - "kear": 21562, - "kearney": 36435, - "keating": 40045, - "keaton": 29975, - "kebab": 36497, - "ked": 11730, - "ked": 1243, - "kee": 9724, - "kee": 6760, - "keef": 42323, - "keefe": 46965, - "keegan": 31122, - "keel": 48376, - "keen": 17714, - "keen": 13218, - "keenan": 36276, - "keep": 2924, - "keep": 1726, - "keeper": 7650, - "keepers": 16130, - "keepin": 41712, - "keeping": 38371, - "keeping": 4873, - "keepit": 28044, - "keeps": 6333, - "keer": 27412, - "keerth": 47500, - "keerthyofficial": 48185, - "kees": 10791, - "keg": 32785, - "keh": 41272, - "keh": 36983, - "kei": 18735, - "kei": 24835, - "keith": 18762, - "keith": 8252, - "kej": 15674, - "kejri": 16617, - "kejriwal": 17334, - "keke": 39195, - "kel": 2825, - "kel": 7553, - "kele": 41765, - "kell": 16082, - "kell": 40103, - "keller": 21407, - "kelley": 23776, - "kelli": 45852, - "kelli": 46190, - "kellie": 49224, - "kellogg": 44218, - "kelly": 13417, - "kelly": 5220, - "kelown": 31708, - "kelowna": 32963, - "kelsey": 42295, - "kelsey": 23018, - "kelvin": 32859, - "kem": 31013, - "kem": 17349, - "kemp": 18302, - "kemp": 25325, - "ken": 1838, - "ken": 1702, - "kend": 7497, - "kendal": 44836, - "kendall": 34607, - "kendall": 16238, - "kendra": 36074, - "kendrick": 41787, - "kendrick": 21953, - "kendricklamar": 47020, - "kenne": 6209, - "kennedy": 38631, - "kennedy": 9004, - "kennel": 39595, - "kenneth": 46900, - "kenneth": 17839, - "kenney": 41373, - "kenny": 20185, - "kenny": 9595, - "kens": 29765, - "kensing": 21505, - "kensington": 24988, - "kent": 13875, - "kent": 8214, - "kentu": 9045, - "kentucky": 32230, - "kentucky": 10014, - "keny": 17374, - "kenya": 6181, - "kenyan": 22624, - "kenyans": 36263, - "kenyatta": 31012, - "kenzie": 38087, - "keo": 43062, - "kept": 7737, - "ker": 2352, - "ker": 1485, - "keral": 35122, - "kerala": 11881, - "kered": 26690, - "kerel": 32232, - "keri": 43447, - "kermit": 40908, - "kern": 40150, - "kernel": 40684, - "kerr": 20491, - "kerri": 41849, - "kerry": 24795, - "kerry": 13097, - "kers": 30347, - "kers": 2880, - "kershaw": 40785, - "kerson": 42810, - "kerswednesday": 48152, - "kert": 47279, - "kes": 38398, - "kes": 1115, - "kesh": 19751, - "kesha": 36526, - "kest": 15080, - "ket": 2715, - "ket": 1236, - "ketball": 38240, - "ketch": 22590, - "ketch": 35371, - "ketchup": 26724, - "kete": 25404, - "keted": 41396, - "keting": 15951, - "keto": 27485, - "keto": 28754, - "kets": 1632, - "kett": 23124, - "kett": 10312, - "kettering": 43779, - "kettle": 41992, - "kettle": 24303, - "kev": 22758, - "kev": 29419, - "kevin": 9419, - "kevin": 4685, - "kew": 38014, - "kew": 31409, - "kex": 30251, - "key": 2891, - "key": 1458, - "keyan": 27617, - "keyboard": 13017, - "keyboards": 49237, - "keychain": 31050, - "keye": 40516, - "keye": 20635, - "keyes": 18336, - "keynes": 32462, - "keynote": 7556, - "keys": 48912, - "keys": 6355, - "keystone": 30688, - "keyword": 42284, - "keywords": 48122, - "kf": 33308, - "kf": 42119, - "kfc": 22032, - "kg": 36772, - "kg": 7817, - "kgs": 46629, - "kh": 2166, - "kh": 7452, - "kha": 7333, - "kha": 18929, - "khair": 43742, - "khaki": 41646, - "khal": 13070, - "khaled": 29343, - "khali": 11324, - "khalid": 27166, - "khalifa": 21389, - "khalil": 36229, - "kham": 24892, - "khan": 13318, - "khan": 3873, - "khand": 43384, - "khand": 31110, - "khanna": 29931, - "khar": 18340, - "khar": 28578, - "khart": 37458, - "khat": 43290, - "khe": 26360, - "kher": 43843, - "khi": 39062, - "khi": 42925, - "khil": 34101, - "khloe": 45312, - "kho": 14022, - "kho": 28774, - "khou": 30656, - "khs": 21239, - "khtar": 45593, - "khu": 14041, - "khur": 32083, - "khy": 40917, - "khz": 45604, - "ki": 848, - "ki": 2608, - "kia": 8712, - "kian": 43961, - "kian": 25708, - "kians": 44010, - "kib": 43108, - "kiba": 37207, - "kic": 24003, - "kic": 27633, - "kicchasu": 44665, - "kicchasudeep": 45560, - "kick": 4102, - "kick": 4289, - "kickass": 39299, - "kickboxing": 36041, - "kicked": 12479, - "kicker": 26338, - "kickin": 34597, - "kicking": 7802, - "kickoff": 10245, - "kicks": 6989, - "kickstart": 40780, - "kickstarter": 13228, - "kid": 3948, - "kid": 3551, - "kidd": 24082, - "kidding": 14535, - "kiddo": 36360, - "kiddos": 29205, - "kidlit": 39064, - "kidlit": 33515, - "kidlitart": 41600, - "kidman": 44931, - "kidnap": 45100, - "kidnapp": 16183, - "kidnapped": 24737, - "kidnapping": 32361, - "kidney": 37835, - "kidney": 14610, - "kids": 15561, - "kids": 1911, - "kidz": 41938, - "kie": 8544, - "kie": 3094, - "kiefer": 48026, - "kiel": 40940, - "kiel": 25509, - "kien": 28782, - "kier": 20403, - "kier": 35575, - "kieran": 29231, - "kies": 36601, - "kies": 4993, - "kiest": 29755, - "kiev": 24585, - "kiewicz": 47574, - "kigali": 40278, - "kii": 39340, - "kik": 36176, - "kiki": 23962, - "kiko": 40861, - "kil": 4912, - "kil": 39337, - "kildare": 45541, - "kili": 24386, - "kilig": 49172, - "kilimanjaro": 43470, - "kilkenny": 33805, - "kill": 6163, - "kill": 4367, - "killa": 41355, - "killarney": 48813, - "killed": 3733, - "killer": 28230, - "killer": 6613, - "killers": 17614, - "killin": 25903, - "killing": 37977, - "killing": 5923, - "killings": 24918, - "kills": 9795, - "kiln": 44150, - "kilo": 39281, - "kilom": 26285, - "kilometers": 39192, - "kilometres": 43278, - "kilt": 49319, - "kim": 4639, - "kim": 4606, - "kimber": 16796, - "kimberley": 39859, - "kimberly": 27465, - "kimchi": 41027, - "kimi": 31536, - "kimkardashian": 35400, - "kimmel": 27820, - "kimono": 40024, - "kin": 1442, - "kin": 2667, - "kina": 28518, - "kind": 7204, - "kind": 3044, - "kinda": 6612, - "kinder": 12711, - "kinder": 24159, - "kindergarten": 16749, - "kindle": 24704, - "kindle": 10746, - "kindleunlimited": 32164, - "kindly": 13952, - "kindness": 45112, - "kindness": 10614, - "kinds": 14879, - "kine": 17607, - "kineni": 49080, - "kinetic": 37699, - "king": 2365, - "king": 674, - "kingdom": 21870, - "kingdom": 7364, - "kingdomhearts": 48570, - "kingdoms": 43890, - "kingfisher": 34330, - "kingjames": 33153, - "kingly": 33642, - "kingof": 27878, - "kings": 18590, - "kings": 4232, - "kingsley": 41807, - "kingston": 40736, - "kingston": 15393, - "kini": 41644, - "kinky": 37006, - "kinney": 37233, - "kino": 39000, - "kins": 31060, - "kins": 4386, - "kinson": 12095, - "kio": 28210, - "kio": 39401, - "kiosk": 39146, - "kip": 27636, - "kip": 15986, - "kipp": 43329, - "kir": 3476, - "kir": 32949, - "kira": 33038, - "kiran": 43234, - "kiran": 36603, - "kirby": 17065, - "kiri": 34170, - "kiri": 45826, - "kirk": 10639, - "kirk": 11508, - "kirkland": 43061, - "kiro": 39749, - "kirstel": 46483, - "kirsten": 31813, - "kirsty": 37787, - "kis": 3199, - "kis": 22796, - "kish": 25662, - "kiss": 43757, - "kiss": 5946, - "kissed": 22561, - "kisses": 47876, - "kisses": 11220, - "kissing": 18637, - "kistan": 29580, - "kit": 4566, - "kit": 4274, - "kita": 29961, - "kitch": 3850, - "kitchen": 18131, - "kitchen": 4485, - "kitchener": 34428, - "kitchens": 28301, - "kite": 47777, - "kite": 19867, - "kites": 45829, - "kits": 13730, - "kitt": 10840, - "kitten": 13063, - "kittens": 17216, - "kitties": 36013, - "kitty": 25067, - "kitty": 8417, - "kiwan": 38709, - "kiwanis": 46513, - "kiwi": 22440, - "kiwis": 48108, - "kiya": 41610, - "kj": 27385, - "kj": 28238, - "kja": 41048, - "kjv": 37387, - "kk": 4390, - "kk": 10849, - "kka": 19002, - "kke": 44239, - "kker": 32399, - "kki": 44672, - "kkk": 20073, - "kkkk": 15834, - "kkkk": 47160, - "kkkkkkkk": 31042, - "kko": 43965, - "kkr": 40855, - "kl": 8498, - "kl": 14134, - "kla": 11249, - "klan": 46935, - "klar": 41374, - "klaus": 31788, - "kle": 7612, - "kle": 7432, - "klein": 33475, - "klein": 17579, - "kley": 18594, - "kli": 31640, - "klin": 44809, - "klin": 41647, - "kline": 47580, - "kling": 40270, - "klm": 38859, - "klo": 15296, - "klopp": 26446, - "kltu": 25978, - "klu": 21852, - "kly": 45090, - "km": 29954, - "km": 4590, - "kman": 33312, - "kms": 24996, - "kn": 4825, - "kn": 23693, - "knapp": 33945, - "kne": 6358, - "knee": 9897, - "knees": 19115, - "kner": 31578, - "knew": 5009, - "kni": 6312, - "knick": 33286, - "knicks": 17657, - "knife": 44176, - "knife": 8960, - "knigh": 43099, - "knight": 17949, - "knight": 7355, - "knights": 10385, - "knit": 18745, - "knit": 14313, - "knitted": 28151, - "knitting": 18863, - "knives": 20910, - "kno": 1482, - "kno": 25362, - "knob": 29736, - "knobs": 47504, - "knock": 14195, - "knock": 11583, - "knocked": 15325, - "knocking": 20380, - "knockout": 22602, - "knocks": 24296, - "knoll": 43882, - "knot": 18412, - "knots": 32428, - "know": 4179, - "know": 1038, - "knowing": 9267, - "knowledge": 27864, - "knowledge": 5510, - "knowledgeable": 43391, - "knowles": 32631, - "known": 3102, - "knows": 4309, - "knowyour": 30773, - "knox": 18630, - "knox": 21833, - "knoxville": 23232, - "knu": 14812, - "knuck": 21333, - "knuckle": 42023, - "knuckles": 40127, - "knw": 40803, - "ko": 1313, - "ko": 2448, - "koala": 36654, - "kobe": 42644, - "kobe": 14470, - "kobo": 42390, - "koch": 25331, - "kochi": 36710, - "kodak": 30425, - "kodi": 46611, - "kof": 17528, - "koff": 47303, - "kofi": 40400, - "koh": 13379, - "koh": 31216, - "kohl": 48479, - "kohli": 17549, - "koi": 28150, - "kojima": 46419, - "kok": 32045, - "kok": 11225, - "koko": 42426, - "koko": 40003, - "kol": 7142, - "kol": 31023, - "kolkata": 18011, - "kom": 6686, - "kom": 24181, - "kombat": 29670, - "kombucha": 48615, - "komo": 31820, - "kon": 5743, - "kon": 29519, - "kona": 30203, - "kong": 31784, - "kong": 6506, - "konstant": 46583, - "koo": 12225, - "koo": 40472, - "kook": 16003, - "kool": 36755, - "kool": 26444, - "kop": 16623, - "kop": 38999, - "kor": 6428, - "kor": 24175, - "kore": 3919, - "korea": 5915, - "korean": 31949, - "korean": 8034, - "kori": 42842, - "korn": 45412, - "korn": 31492, - "kors": 34535, - "kos": 47438, - "kos": 22951, - "kosh": 45233, - "kosher": 36502, - "koso": 23892, - "kosovo": 28343, - "kot": 23323, - "kot": 20701, - "kota": 21735, - "koto": 40945, - "koto": 29977, - "kou": 18502, - "kou": 39614, - "kour": 34134, - "kov": 17733, - "kov": 15156, - "kova": 26185, - "koval": 47903, - "kovic": 16886, - "kovich": 44794, - "kovsky": 33384, - "kow": 29764, - "kow": 23919, - "kowski": 17649, - "koz": 29598, - "kp": 16174, - "kp": 16894, - "kpa": 38759, - "kph": 41138, - "kpk": 42094, - "kpmg": 38243, - "kpop": 29534, - "kpop": 15859, - "kprc": 47832, - "kprs": 46253, - "kr": 7309, - "kr": 14107, - "kra": 5762, - "kraft": 28057, - "kraja": 29016, - "kraken": 48408, - "krakow": 40033, - "kram": 19075, - "kramer": 27495, - "kran": 33243, - "kranti": 47969, - "krat": 30470, - "kre": 8362, - "kreme": 43140, - "kremlin": 33979, - "kri": 3679, - "kris": 35251, - "kris": 12261, - "krish": 11487, - "krishna": 15863, - "krishnan": 46535, - "krispy": 49292, - "krist": 16490, - "kristen": 28881, - "kristen": 16644, - "kristi": 26895, - "kristin": 35408, - "kristin": 26785, - "kristina": 33180, - "krit": 36265, - "kro": 16193, - "kroger": 36344, - "kron": 25999, - "kru": 10609, - "kruger": 32948, - "krun": 43084, - "kry": 13995, - "krystal": 36554, - "ks": 10470, - "ks": 662, - "ksa": 25439, - "ksh": 36594, - "kst": 17420, - "kstate": 48590, - "ksu": 43496, - "kswx": 36180, - "kt": 17238, - "kt": 7792, - "ktm": 33989, - "ktn": 42170, - "kton": 37848, - "kts": 48577, - "ktv": 36444, - "ku": 1836, - "ku": 4827, - "kuala": 30336, - "kubball": 48995, - "kuber": 41336, - "kubernetes": 45144, - "kubrick": 37032, - "kuch": 39394, - "kud": 40818, - "kudos": 14481, - "kul": 11325, - "kul": 31514, - "kum": 18086, - "kum": 28148, - "kuma": 43139, - "kuma": 33920, - "kumar": 22329, - "kumar": 7674, - "kumb": 31391, - "kun": 6849, - "kun": 21842, - "kung": 39656, - "kung": 22347, - "kunst": 37881, - "kup": 39023, - "kups": 27240, - "kur": 4862, - "kurdi": 23504, - "kurdish": 21644, - "kurdistan": 24459, - "kurds": 20888, - "kuri": 46375, - "kuro": 28239, - "kuro": 47826, - "kurt": 31903, - "kurt": 14527, - "kus": 27618, - "kus": 27505, - "kush": 22264, - "kush": 24594, - "kushner": 36716, - "kut": 17283, - "kut": 36965, - "kuwait": 19679, - "kuya": 34815, - "kuz": 33253, - "kv": 27594, - "kv": 34249, - "kw": 10072, - "kw": 18339, - "kwa": 32784, - "kwa": 48576, - "kwame": 46681, - "kwan": 37100, - "kwan": 39447, - "kwang": 40260, - "kwe": 26050, - "kwi": 35327, - "kwon": 36369, - "kx": 28190, - "kx": 46442, - "ky": 2018, - "ky": 2383, - "kya": 29142, - "kyc": 37758, - "kyiv": 36422, - "kyle": 15847, - "kyle": 7539, - "kylie": 28282, - "kylie": 17983, - "kyliejenner": 47232, - "kylo": 47704, - "kyo": 13150, - "kyo": 6281, - "kyoto": 23223, - "kyr": 26329, - "kyrgy": 40013, - "kyrgyz": 48346, - "kyrie": 21857, - "kyu": 28296, - "kyu": 25490, - "kyuhyun": 37229, - "kyung": 41058, - "kyungsoo": 30280, - "kywx": 39940, - "kz": 48743, - "kz": 36848, - "kzn": 38264, - "kö": 32437, - "l": 75, - "l": 331, - "la": 572, - "la": 1210, - "laa": 44642, - "lab": 3537, - "lab": 4352, - "labe": 25749, - "label": 12235, - "label": 9093, - "labeled": 32720, - "labeling": 36825, - "labelled": 45188, - "labels": 17413, - "lable": 31879, - "labor": 11201, - "labor": 7878, - "laboratories": 43421, - "laboratory": 17664, - "laborday": 39324, - "labou": 32700, - "labour": 19586, - "labour": 6019, - "labourdoorstep": 37008, - "labout": 35961, - "labra": 37067, - "labrador": 25409, - "labs": 12021, - "laby": 29131, - "labyrin": 31782, - "labyrinth": 35594, - "lac": 4477, - "lac": 16189, - "lace": 30012, - "lace": 5421, - "laced": 36800, - "laces": 23281, - "lacey": 31754, - "lach": 30558, - "lack": 24915, - "lack": 8069, - "lacking": 30080, - "lacks": 34388, - "laco": 45882, - "lacrosse": 12915, - "lacy": 38645, - "lad": 15991, - "lad": 10707, - "ladak": 42312, - "ladakh": 45295, - "ladder": 16637, - "ladders": 47125, - "lade": 26447, - "laden": 28634, - "ladi": 12934, - "ladies": 28932, - "ladies": 3431, - "lads": 9803, - "lady": 7275, - "lady": 2909, - "ladybird": 43389, - "ladybug": 40038, - "ladygaga": 21232, - "laf": 47555, - "lafayette": 22683, - "lag": 30932, - "lag": 20394, - "laga": 30161, - "lage": 24369, - "lager": 36811, - "lager": 22989, - "lagh": 37237, - "laghate": 47565, - "laghateparth": 48780, - "lagi": 39786, - "lago": 42698, - "lago": 31476, - "lagoon": 22753, - "lagos": 12728, - "lagun": 18500, - "laguna": 23609, - "lah": 27315, - "lah": 4299, - "lahat": 42164, - "lahore": 16733, - "lai": 23947, - "laid": 42560, - "laid": 11160, - "lain": 46958, - "lain": 17151, - "laine": 35860, - "lair": 31981, - "lais": 34923, - "lak": 12890, - "lak": 26793, - "lake": 6441, - "lake": 2553, - "lakedistrict": 26437, - "lakel": 26133, - "lakeland": 34306, - "laker": 45717, - "lakers": 13570, - "lakes": 9265, - "lakeshore": 42595, - "lakeside": 30915, - "lakewood": 36417, - "lakh": 21487, - "lakhs": 37985, - "lakings": 34289, - "lakota": 45510, - "laksh": 24937, - "lakshmi": 39682, - "lal": 12301, - "lal": 19430, - "lala": 33661, - "lali": 21726, - "laliga": 32383, - "lam": 2022, - "lam": 5704, - "lama": 26049, - "lamar": 28678, - "lamar": 17284, - "lamb": 19863, - "lamb": 10034, - "lambda": 36687, - "lambert": 14574, - "lambeth": 43410, - "lambo": 45464, - "lamborgh": 18709, - "lamborghini": 19462, - "lambs": 30361, - "lame": 23192, - "lamin": 22337, - "laminated": 49079, - "lamo": 41461, - "lamont": 46719, - "lamp": 26700, - "lamp": 10725, - "lampard": 39989, - "lamps": 23424, - "lan": 1193, - "lan": 4872, - "lana": 15406, - "lanapar": 47437, - "lanaparrilla": 47819, - "lanc": 11872, - "lanca": 15694, - "lancashire": 20939, - "lancaster": 16446, - "lance": 26025, - "lance": 11609, - "lancer": 38195, - "lancers": 46392, - "lancia": 48698, - "lancs": 47540, - "land": 1567, - "land": 973, - "lande": 36556, - "landed": 9873, - "lander": 37247, - "lander": 9666, - "landers": 20019, - "landfall": 38465, - "landfill": 34947, - "landia": 41384, - "landing": 8292, - "landings": 46104, - "landlord": 28938, - "landlords": 35283, - "landmark": 15208, - "landmarks": 30393, - "lando": 25463, - "lando": 7065, - "landon": 32748, - "landrover": 38125, - "landry": 36137, - "lands": 40223, - "lands": 2961, - "landsc": 4384, - "landscape": 21123, - "landscape": 5727, - "landscapephotography": 28125, - "landscapes": 15344, - "landscaping": 25642, - "landslide": 31954, - "lane": 25534, - "lane": 3980, - "lanes": 10345, - "laney": 38552, - "lang": 7969, - "lang": 8578, - "lange": 32021, - "langford": 45615, - "langley": 28595, - "langu": 4095, - "language": 46103, - "language": 4781, - "languages": 13527, - "lani": 22964, - "lanka": 16221, - "lankan": 40531, - "lannister": 49056, - "lans": 43550, - "lansing": 30805, - "lant": 44504, - "lanta": 44768, - "lantern": 17185, - "lanterns": 33676, - "lantic": 32601, - "lantic": 27678, - "lants": 38425, - "lanyard": 46808, - "lao": 32475, - "lao": 29521, - "laos": 34353, - "lap": 7213, - "lap": 8639, - "lapd": 32557, - "lapel": 47961, - "lapland": 43633, - "laps": 18711, - "lapse": 33365, - "laptop": 10464, - "laptops": 32189, - "laq": 45026, - "lar": 1592, - "lar": 1652, - "lara": 19435, - "lard": 40347, - "lare": 22415, - "laredo": 48427, - "large": 40234, - "large": 3638, - "largely": 21418, - "larger": 12567, - "largest": 4960, - "largo": 44161, - "lari": 34676, - "lark": 43164, - "lark": 23536, - "larkin": 34769, - "larry": 18642, - "larry": 8242, - "lars": 8669, - "larsen": 39721, - "larson": 27973, - "larvae": 44840, - "las": 8295, - "las": 2552, - "lasag": 31210, - "lasagna": 40683, - "lasalle": 43866, - "laser": 25607, - "laser": 9885, - "lasers": 37060, - "lash": 31995, - "lash": 18480, - "lashes": 21015, - "lass": 24203, - "lass": 18263, - "lassic": 39430, - "last": 10600, - "last": 952, - "lasted": 25711, - "lasting": 13434, - "lastnight": 30159, - "lasts": 20141, - "lasvegas": 17789, - "lat": 1591, - "lat": 28437, - "lata": 47114, - "latam": 40012, - "late": 13267, - "late": 2325, - "latel": 49035, - "lately": 11824, - "latepost": 48328, - "later": 24109, - "later": 2941, - "lateral": 26646, - "latest": 46805, - "latest": 2053, - "latex": 27520, - "lati": 16357, - "latimes": 43356, - "latin": 16695, - "latin": 9888, - "latina": 27936, - "latino": 45734, - "latino": 19470, - "latinos": 40233, - "lation": 6191, - "latitude": 37392, - "lative": 15719, - "lator": 9291, - "lators": 28278, - "latt": 33561, - "latte": 17697, - "latter": 26198, - "latvia": 30034, - "lau": 1853, - "lau": 23090, - "lauderdale": 24352, - "laugh": 4969, - "laugh": 6332, - "laughed": 16746, - "laughing": 8301, - "laughs": 14322, - "laughter": 10722, - "laun": 2944, - "launch": 31168, - "launch": 2904, - "launched": 6125, - "launcher": 35782, - "launches": 7023, - "launching": 8565, - "laundering": 34079, - "laundry": 14797, - "laur": 15256, - "laura": 17091, - "laura": 7763, - "laure": 16932, - "laureate": 25675, - "laurel": 43370, - "laurel": 19942, - "lauren": 10456, - "lauren": 7634, - "laurence": 29353, - "laurent": 23226, - "laurie": 20326, - "laus": 38895, - "laus": 28111, - "lause": 22269, - "laut": 47688, - "lav": 13767, - "lav": 26919, - "lava": 16765, - "laven": 15047, - "lavender": 16033, - "laver": 28188, - "lavish": 35443, - "law": 2874, - "law": 2606, - "lawful": 33845, - "lawler": 47862, - "lawless": 39468, - "lawmaker": 37169, - "lawmakers": 21190, - "lawn": 31675, - "lawn": 11024, - "lawrence": 32221, - "lawrence": 8820, - "laws": 7306, - "lawson": 22152, - "lawsuit": 14346, - "lawsuits": 44331, - "lawyer": 10552, - "lawyers": 14232, - "lax": 17750, - "lax": 10024, - "lay": 7205, - "lay": 6360, - "laye": 25995, - "layer": 12411, - "layered": 28520, - "layers": 15900, - "laying": 12333, - "layla": 45050, - "layne": 48721, - "layo": 21738, - "layoffs": 29019, - "layout": 17314, - "lays": 19546, - "layton": 38061, - "laz": 18806, - "lazar": 33075, - "lazarus": 49126, - "laze": 41559, - "lazer": 43735, - "lazio": 33010, - "lazy": 32614, - "lazy": 10753, - "lb": 21958, - "lb": 7422, - "lbc": 37694, - "lbj": 45683, - "lbloggers": 48695, - "lbs": 8912, - "lc": 9584, - "lc": 7225, - "lcd": 21356, - "lcfc": 25339, - "lcs": 32279, - "ld": 1431, - "ld": 730, - "lder": 6945, - "lders": 43221, - "ldn": 37050, - "ldn": 2517, - "ldnont": 25827, - "ldnt": 21690, - "ldr": 37279, - "lds": 31235, - "le": 534, - "le": 579, - "lea": 2246, - "lea": 13324, - "leach": 35527, - "lead": 1328, - "lead": 2784, - "leader": 14806, - "leader": 3236, - "leaderboard": 34519, - "leaders": 3546, - "leadership": 36876, - "leadership": 3652, - "leading": 3833, - "leads": 5335, - "leaf": 9377, - "leaf": 7232, - "leaflet": 38289, - "leaflets": 39014, - "leafs": 16688, - "leafy": 42616, - "leagu": 13317, - "league": 16635, - "league": 2313, - "leagueof": 26022, - "leagueoflegends": 31737, - "leagues": 19888, - "leah": 24350, - "leah": 19308, - "leak": 42900, - "leak": 15489, - "leaked": 14353, - "leaking": 34097, - "leaks": 15657, - "leam": 39606, - "lean": 12447, - "lean": 8208, - "leaning": 24411, - "leanne": 41448, - "leans": 9357, - "leap": 29129, - "leap": 15392, - "leaps": 48080, - "lear": 1146, - "lear": 27663, - "learn": 16959, - "learn": 1768, - "learned": 6048, - "learnenglish": 49040, - "learner": 33547, - "learners": 19572, - "learning": 22632, - "learning": 2378, - "learns": 17569, - "learnt": 18959, - "leary": 36051, - "lease": 49041, - "lease": 14394, - "leased": 48352, - "leash": 36192, - "leasing": 29160, - "least": 3651, - "leather": 21417, - "leather": 5862, - "leau": 26498, - "leav": 3198, - "leave": 37512, - "leave": 3258, - "leaves": 5579, - "leaving": 5216, - "leban": 9360, - "lebanese": 23819, - "lebanon": 11695, - "leblanc": 46381, - "lebo": 44184, - "lebron": 11971, - "lebu": 47030, - "lec": 944, - "lec": 35374, - "leche": 46197, - "lect": 45392, - "lection": 18252, - "lections": 30995, - "lecture": 6617, - "lecturer": 23795, - "lectures": 21118, - "led": 8767, - "led": 912, - "ledge": 23647, - "ledge": 4815, - "ledger": 26817, - "leds": 36763, - "lee": 6224, - "lee": 2592, - "leed": 16483, - "leed": 40206, - "leeds": 38900, - "leeds": 7420, - "leek": 34585, - "leeminho": 37831, - "leen": 35311, - "leen": 15940, - "leep": 48875, - "leep": 10191, - "lees": 29324, - "lees": 34056, - "lef": 9152, - "left": 33949, - "left": 1823, - "leftist": 35143, - "lefto": 17437, - "leftover": 26414, - "leftovers": 28481, - "lefty": 33935, - "leg": 1211, - "leg": 4924, - "lega": 38674, - "legacy": 44108, - "legacy": 6447, - "legal": 17743, - "legal": 3998, - "legalization": 40584, - "legalize": 42921, - "legally": 14152, - "legate": 46009, - "lege": 8065, - "legen": 6105, - "legend": 5480, - "legend": 3539, - "legendary": 6053, - "legendof": 47915, - "legends": 6396, - "leges": 15356, - "legg": 18474, - "legg": 32511, - "legged": 25830, - "leggings": 22895, - "leggo": 43441, - "legi": 11183, - "legion": 35503, - "legion": 14525, - "legis": 7200, - "legislat": 16486, - "legislation": 14143, - "legislative": 16755, - "legislators": 31572, - "legislature": 22309, - "legit": 12563, - "legitim": 17656, - "legitimate": 24491, - "lego": 28117, - "lego": 7849, - "legos": 45359, - "legs": 7072, - "leh": 19105, - "leh": 29298, - "lehead": 28090, - "lehigh": 34527, - "lehman": 46094, - "lei": 15828, - "lei": 21830, - "leia": 32723, - "leic": 35073, - "leica": 30206, - "leice": 10026, - "leicester": 28795, - "leicester": 11510, - "leicestershire": 45358, - "leigh": 14849, - "leigh": 9292, - "leighton": 30782, - "leila": 41342, - "lein": 20026, - "lein": 28551, - "leinster": 32242, - "leip": 36401, - "leipzig": 41860, - "leis": 13133, - "leisure": 15849, - "leit": 35446, - "leith": 34141, - "lek": 26626, - "lek": 36535, - "lel": 46623, - "lele": 26075, - "lem": 10213, - "lem": 8428, - "leman": 24478, - "lemans": 26694, - "lement": 9693, - "lements": 15833, - "lemme": 23318, - "lemon": 12272, - "lemon": 7184, - "lemonade": 18884, - "lemons": 29576, - "lemore": 41147, - "len": 3687, - "len": 2159, - "lena": 22038, - "lend": 45397, - "lend": 24987, - "lender": 44734, - "lenders": 42443, - "lending": 20209, - "lene": 17628, - "leness": 36551, - "leng": 7861, - "length": 10130, - "lengths": 31858, - "lengthy": 32624, - "lenin": 41760, - "lennon": 18360, - "lennox": 45748, - "lenny": 48448, - "lenny": 30124, - "leno": 45357, - "lenovo": 25886, - "lens": 8666, - "lenses": 21264, - "lent": 20943, - "lent": 22605, - "lentil": 41511, - "lentils": 44269, - "leo": 24008, - "leo": 8312, - "leon": 6581, - "leon": 9763, - "leonard": 43849, - "leonard": 13142, - "leonardo": 20282, - "leone": 22864, - "leop": 11234, - "leopard": 15931, - "leopards": 40996, - "leopold": 45501, - "lep": 48884, - "leppard": 41656, - "lepre": 45641, - "ler": 5587, - "ler": 1803, - "lero": 15067, - "lerosis": 35455, - "leroy": 32441, - "lers": 6247, - "lery": 38184, - "les": 4339, - "les": 840, - "lesbian": 17419, - "lesbians": 43182, - "lesh": 32282, - "lesley": 25506, - "lesli": 13649, - "leslie": 16244, - "lesn": 39568, - "lesnar": 42223, - "less": 3242, - "less": 1285, - "lesser": 20369, - "lessly": 13103, - "lessness": 24847, - "lesson": 7714, - "lessons": 7199, - "lest": 24372, - "lest": 6794, - "lester": 23157, - "lester": 24023, - "lestwe": 29726, - "lestweforget": 30273, - "let": 1898, - "let": 1094, - "leta": 34319, - "lete": 34078, - "letes": 6815, - "leth": 30022, - "leth": 42462, - "lethal": 21905, - "lethbridge": 48390, - "leti": 34176, - "letics": 14504, - "letit": 46423, - "leto": 32203, - "leton": 37674, - "leton": 7462, - "lets": 10448, - "lets": 3243, - "letsgo": 16967, - "letsgo": 29789, - "letstalk": 35591, - "lett": 22428, - "lett": 9778, - "lette": 41798, - "lette": 10301, - "letter": 15567, - "letter": 4861, - "lettering": 26382, - "letterman": 38447, - "letters": 9181, - "letting": 9510, - "letto": 35449, - "lettu": 17933, - "lettuce": 18573, - "leu": 15691, - "leuke": 31031, - "leukemia": 32097, - "leum": 21571, - "leur": 45806, - "lev": 17022, - "lev": 29950, - "levan": 42543, - "leve": 36271, - "level": 21682, - "level": 2931, - "leveled": 48453, - "levels": 6295, - "leven": 44792, - "leven": 34729, - "lever": 20178, - "lever": 23094, - "leverage": 24030, - "leveraging": 37948, - "levi": 25630, - "levi": 19113, - "leviathan": 41736, - "levin": 36949, - "levine": 26594, - "levit": 22715, - "levy": 17147, - "lew": 5063, - "lew": 25329, - "lewan": 48349, - "lewd": 45241, - "lewes": 40431, - "lewi": 19589, - "lewis": 22043, - "lewis": 6020, - "lewisham": 37385, - "lewisham": 47633, - "lewishamilton": 42960, - "lewood": 37951, - "lex": 6586, - "lex": 9658, - "lexa": 48259, - "lexi": 44231, - "lexi": 24679, - "lexington": 22308, - "lexus": 20694, - "ley": 2565, - "ley": 1066, - "leye": 37061, - "leys": 45609, - "leys": 14834, - "leyton": 46573, - "lez": 26442, - "lf": 33960, - "lf": 22078, - "lfc": 37826, - "lfc": 8267, - "lfw": 28514, - "lg": 4546, - "lg": 11368, - "lga": 39348, - "lgb": 25401, - "lgbt": 11743, - "lgbt": 9592, - "lgbti": 42730, - "lgbtq": 47625, - "lgbtq": 14939, - "lgm": 39389, - "lh": 27794, - "lh": 31159, - "lhp": 45092, - "lhs": 33170, - "li": 554, - "li": 4250, - "lia": 26118, - "lia": 6964, - "liability": 29139, - "liaison": 39294, - "liam": 5258, - "liam": 7167, - "lian": 18058, - "liance": 40864, - "liar": 16334, - "liars": 23863, - "lias": 46021, - "lib": 10249, - "lib": 13345, - "libby": 36832, - "libdems": 40869, - "liber": 3425, - "liberal": 48032, - "liberal": 9985, - "liberalism": 40018, - "liberals": 15981, - "liberated": 38690, - "liberation": 19507, - "liberia": 32208, - "libertarian": 35067, - "liberties": 48623, - "liberty": 23397, - "liberty": 8480, - "libr": 2856, - "libra": 43038, - "librarian": 25148, - "librarians": 37806, - "libraries": 14277, - "library": 25713, - "library": 3519, - "libre": 49210, - "libre": 31681, - "libs": 26401, - "liby": 36390, - "libya": 16417, - "libyan": 42319, - "lic": 2508, - "lic": 3376, - "lice": 45691, - "licen": 6706, - "licence": 20550, - "license": 10337, - "licensed": 18752, - "licenses": 36414, - "licensing": 24219, - "lich": 23979, - "lich": 25875, - "lick": 29197, - "lick": 17541, - "licking": 33013, - "licks": 42117, - "lics": 44552, - "lid": 39369, - "lid": 17678, - "lidge": 45558, - "lido": 35683, - "lids": 41609, - "lie": 6570, - "lie": 2538, - "lieb": 45387, - "liebe": 37749, - "lied": 6486, - "lief": 38428, - "lien": 45716, - "lier": 3626, - "liers": 19303, - "lies": 37236, - "lies": 3205, - "liest": 14020, - "liet": 41107, - "lieu": 20401, - "lieu": 35313, - "lieutenant": 22538, - "lif": 16456, - "life": 2666, - "life": 970, - "lifeat": 27801, - "lifeboat": 37404, - "lifecycle": 49171, - "lifein": 48447, - "lifeis": 24824, - "lifeisgood": 46433, - "lifel": 15025, - "lifeline": 38438, - "lifelong": 21358, - "lifeof": 36061, - "lifesaving": 48016, - "lifespan": 49257, - "lifestyle": 46512, - "lifestyle": 7037, - "lifestyles": 48521, - "lifetime": 48737, - "lifetime": 9107, - "liff": 34404, - "liffe": 38942, - "lift": 33146, - "lift": 6779, - "lifted": 16783, - "lifter": 38555, - "lifting": 10857, - "lifts": 18291, - "lig": 19915, - "lig": 38493, - "liga": 16802, - "ligam": 31077, - "ligament": 48705, - "ligan": 27962, - "ligans": 42133, - "ligh": 7510, - "light": 3885, - "light": 1395, - "lighted": 18404, - "lighten": 32717, - "lightening": 28170, - "lighter": 14102, - "lighthouse": 13717, - "lighting": 5799, - "lightly": 26878, - "lightning": 7756, - "lightroom": 41454, - "lights": 3073, - "lightweight": 16278, - "ligu": 42920, - "ligue": 29196, - "lik": 4831, - "lik": 18495, - "like": 9175, - "like": 789, - "liked": 7112, - "likefor": 48444, - "likeli": 40666, - "likelihood": 48158, - "likely": 5256, - "liken": 36084, - "likes": 4724, - "liking": 16810, - "lil": 6012, - "lil": 4461, - "lilac": 33647, - "lili": 26686, - "lili": 48411, - "lilies": 38110, - "lillard": 47016, - "lille": 38705, - "lilli": 40920, - "lillian": 41563, - "lilly": 47825, - "lilly": 21815, - "lily": 23803, - "lily": 10647, - "lim": 2377, - "lim": 17204, - "lima": 17589, - "limb": 27061, - "limb": 32363, - "limbo": 46179, - "limbs": 34886, - "lime": 17385, - "lime": 11193, - "limel": 48658, - "limer": 16915, - "limerick": 19501, - "limestone": 27272, - "limit": 18933, - "limit": 9973, - "limitations": 32730, - "limited": 49229, - "limited": 3472, - "limiting": 35812, - "limitless": 35833, - "limits": 11966, - "limo": 33166, - "limous": 47287, - "limpopo": 47175, - "lin": 1254, - "lin": 2424, - "lina": 26110, - "lincol": 6239, - "lincoln": 16957, - "lincoln": 7454, - "lincolnshire": 29014, - "lind": 6492, - "linda": 45410, - "linda": 10760, - "linden": 44076, - "linden": 34832, - "lindo": 38467, - "lindsay": 29846, - "lindsay": 16858, - "lindsey": 29475, - "lindsey": 18128, - "line": 3674, - "line": 1148, - "linear": 19816, - "linebacker": 29848, - "lined": 11842, - "lineman": 31501, - "linen": 20032, - "liner": 11618, - "liners": 24463, - "lines": 3418, - "liness": 28633, - "lineup": 7316, - "lineups": 33589, - "ling": 4851, - "ling": 1358, - "linger": 29593, - "lingerie": 18473, - "lingering": 46494, - "lings": 11390, - "lington": 27673, - "lington": 9002, - "lingu": 34449, - "lingui": 29942, - "linguistic": 46847, - "linguistics": 48651, - "lining": 11589, - "link": 18433, - "link": 2468, - "linke": 15088, - "linked": 11059, - "linkedin": 16302, - "linkin": 40287, - "linkin": 49291, - "linking": 23296, - "links": 8113, - "linn": 37431, - "lino": 41189, - "lino": 34995, - "lins": 6567, - "linson": 15401, - "linton": 36479, - "linus": 49303, - "linux": 14061, - "lio": 19395, - "lion": 8872, - "lion": 5567, - "lionel": 19441, - "lions": 7093, - "lip": 8630, - "lip": 8546, - "lipo": 38795, - "lipp": 38074, - "lips": 8847, - "lipse": 10351, - "lipstick": 15618, - "liqu": 6310, - "lique": 32680, - "liqueur": 43612, - "liqui": 33817, - "liquid": 18366, - "liquid": 10158, - "liquidity": 42812, - "liquor": 17828, - "lis": 7297, - "lis": 12749, - "lisa": 25236, - "lisa": 7424, - "lisam": 43072, - "lisboa": 40052, - "lisbon": 17708, - "lish": 12658, - "lish": 2354, - "lished": 22620, - "lisle": 21529, - "lism": 34390, - "liss": 45489, - "liss": 35433, - "lisse": 49309, - "list": 1734, - "list": 1998, - "lista": 37812, - "listed": 6457, - "listen": 17454, - "listen": 2672, - "listened": 15347, - "listener": 34819, - "listeners": 26901, - "listening": 3656, - "listens": 25912, - "lister": 45109, - "listing": 8145, - "listings": 21987, - "liston": 48041, - "lists": 12281, - "lit": 2213, - "lit": 4350, - "lita": 30100, - "lite": 29273, - "lite": 13694, - "litecoin": 39063, - "liter": 3085, - "liter": 34904, - "literacy": 12841, - "literal": 24269, - "literally": 4719, - "literary": 13586, - "literature": 11072, - "litfest": 40369, - "lith": 37005, - "lithium": 22794, - "litho": 31088, - "lithograph": 49022, - "lithu": 21045, - "lithuania": 27068, - "liti": 24292, - "litigation": 31769, - "lito": 47381, - "litre": 25786, - "litres": 39919, - "litt": 1216, - "litt": 47583, - "litter": 45431, - "litter": 17118, - "litters": 45300, - "little": 7024, - "little": 1274, - "littlemix": 29731, - "littlest": 48969, - "litur": 36830, - "litz": 30357, - "liu": 20466, - "liv": 13895, - "liv": 19901, - "livan": 12785, - "live": 3215, - "live": 1064, - "lived": 8867, - "livel": 17973, - "liveli": 26566, - "livelihood": 46497, - "livelihoods": 47716, - "lively": 19663, - "liveme": 35396, - "livemusic": 15688, - "liven": 41057, - "liveon": 22815, - "livepd": 38742, - "livepd": 31899, - "liver": 4755, - "liver": 12639, - "liverpool": 29778, - "liverpool": 5366, - "livery": 23248, - "lives": 3247, - "livesmatter": 20348, - "livestock": 22079, - "livestream": 16844, - "livetweet": 38546, - "livin": 28061, - "living": 10965, - "living": 2815, - "livingston": 30551, - "lix": 45068, - "liz": 8632, - "liz": 12242, - "liza": 28787, - "lizard": 17221, - "lizards": 41991, - "lizasober": 44487, - "lizasoberano": 45076, - "lizz": 34430, - "lizzie": 29530, - "lizzy": 32306, - "lj": 34211, - "lj": 32273, - "lju": 44562, - "lk": 39110, - "lk": 26596, - "lka": 21881, - "ll": 1657, - "ll": 865, - "lla": 15419, - "llama": 36679, - "llan": 17281, - "llan": 38728, - "lland": 31150, - "llc": 17161, - "lle": 26550, - "lle": 29732, - "llen": 41197, - "ller": 7722, - "llers": 26426, - "lli": 47015, - "lli": 13368, - "llis": 25518, - "lll": 27177, - "llll": 34874, - "llll": 43485, - "llo": 19293, - "lloy": 10092, - "lloyd": 33339, - "lloyd": 12400, - "llp": 28042, - "lls": 40535, - "lly": 26379, - "lm": 6981, - "lm": 15282, - "lma": 4493, - "lmao": 5121, - "lmaoo": 32623, - "lmaooo": 33362, - "lmaoooo": 45232, - "lmfa": 8928, - "lmfao": 11068, - "lmfaooo": 47658, - "lmp": 43575, - "lms": 30381, - "ln": 31644, - "ln": 18654, - "lng": 22339, - "lnp": 39679, - "lo": 549, - "lo": 2982, - "loa": 39678, - "load": 4515, - "load": 2834, - "loaded": 6756, - "loader": 28492, - "loading": 9975, - "loads": 8691, - "loaf": 26467, - "loaf": 18273, - "loan": 28431, - "loan": 8176, - "loans": 14206, - "lob": 11197, - "lob": 46606, - "lobal": 34574, - "lobb": 27698, - "lobby": 12449, - "lobbying": 36047, - "lobe": 46325, - "lobes": 24148, - "lobo": 39323, - "lobos": 36586, - "lobster": 13793, - "loc": 1378, - "loc": 25826, - "local": 9202, - "local": 2029, - "localized": 49399, - "locally": 15603, - "locals": 15041, - "locate": 20490, - "located": 5677, - "location": 4372, - "locations": 9580, - "loch": 20188, - "loch": 14101, - "lock": 7201, - "lock": 4381, - "lockdown": 35636, - "locke": 29698, - "locked": 8371, - "locker": 14053, - "lockhart": 48642, - "lockheed": 36637, - "locking": 19978, - "locks": 13212, - "lockscreen": 42439, - "loco": 25555, - "locom": 22798, - "locomo": 46147, - "locomotive": 30439, - "locu": 33635, - "locust": 46237, - "lod": 45650, - "lodge": 10504, - "loe": 30113, - "loe": 25484, - "loeb": 49334, - "lof": 15011, - "loff": 31008, - "loft": 35707, - "loft": 20049, - "loftus": 46689, - "log": 3239, - "log": 7383, - "logan": 20655, - "logan": 10569, - "logans": 40752, - "logg": 43002, - "logged": 31457, - "logger": 39089, - "logging": 24444, - "logi": 3177, - "logia": 48031, - "logic": 10670, - "logical": 4791, - "logically": 24782, - "logie": 33445, - "logies": 7378, - "login": 31121, - "logist": 7407, - "logistics": 14755, - "logists": 12233, - "logne": 19911, - "logo": 31480, - "logo": 5750, - "logos": 24879, - "logs": 22745, - "logue": 27785, - "logy": 22721, - "logy": 1659, - "loh": 49129, - "loh": 37983, - "loi": 35128, - "loid": 31408, - "loin": 21760, - "loire": 46040, - "lois": 27040, - "lok": 19908, - "lok": 23575, - "loki": 24435, - "lol": 10721, - "lol": 1824, - "lola": 19065, - "lolita": 42615, - "lolla": 45483, - "lolli": 27906, - "lollipop": 34605, - "lolly": 48264, - "lolo": 16895, - "lolo": 37481, - "lolol": 25280, - "lololol": 34738, - "lolz": 35260, - "lom": 9279, - "loma": 42889, - "lombar": 25493, - "lombard": 46461, - "lombardi": 44346, - "lomond": 48941, - "lon": 1235, - "lon": 6507, - "london": 6835, - "london": 1789, - "londonmarathon": 35018, - "lone": 22220, - "lone": 13576, - "lonel": 28872, - "loneliness": 30310, - "lonely": 34509, - "lonely": 12368, - "lonelyplanet": 44984, - "long": 4792, - "long": 1538, - "longe": 25793, - "longer": 5349, - "longest": 10731, - "longevity": 35354, - "longh": 20286, - "longhorn": 41047, - "longhorns": 38295, - "longing": 38482, - "longlive": 47840, - "longs": 43618, - "longtime": 19685, - "loo": 731, - "loo": 11804, - "look": 8874, - "look": 1012, - "lookalike": 38307, - "lookbook": 39184, - "looked": 4913, - "lookin": 11254, - "looking": 36898, - "looking": 1312, - "lookout": 18330, - "looks": 1606, - "lool": 33125, - "loom": 37440, - "loom": 17199, - "looming": 35384, - "looms": 30550, - "loon": 28222, - "loona": 48137, - "looney": 45315, - "looo": 20902, - "loool": 36016, - "looool": 47038, - "looooo": 31484, - "loop": 19606, - "loop": 10408, - "loops": 21625, - "loos": 45723, - "loose": 43815, - "loose": 9786, - "loot": 21518, - "lop": 36734, - "lop": 17066, - "lopes": 49269, - "lopez": 12982, - "lor": 2179, - "lor": 11335, - "lord": 18896, - "lord": 3486, - "lorde": 35483, - "lords": 14969, - "lore": 12880, - "lore": 27218, - "loren": 13602, - "loren": 33398, - "lorenzo": 21342, - "lores": 34510, - "loretta": 40863, - "lori": 20164, - "lori": 23095, - "lorna": 46316, - "lorraine": 27602, - "lorry": 31354, - "los": 32217, - "los": 3087, - "losange": 14037, - "losangeles": 14638, - "lose": 43318, - "lose": 5354, - "loser": 18168, - "losers": 23201, - "loses": 14263, - "losing": 7918, - "loss": 34761, - "loss": 4327, - "losses": 16909, - "lost": 14258, - "lost": 2624, - "lostdog": 48482, - "lot": 5132, - "lot": 1954, - "loth": 43625, - "lothian": 31360, - "lothing": 42058, - "lotion": 25260, - "lotr": 34165, - "lots": 2958, - "lott": 42854, - "lotta": 29125, - "lotte": 16535, - "lotte": 7274, - "lottery": 16975, - "lottie": 48517, - "lotto": 28265, - "lotus": 13824, - "lou": 2207, - "lou": 9745, - "loubout": 38369, - "loud": 22884, - "loud": 7464, - "louder": 25904, - "loudest": 49214, - "loudly": 39256, - "lough": 21927, - "lough": 28045, - "loughborough": 49153, - "loui": 42173, - "louie": 25790, - "louis": 8916, - "louis": 4459, - "louisa": 40011, - "louise": 32275, - "louise": 13076, - "louisi": 12187, - "louisiana": 12946, - "louisville": 13860, - "louisvuitton": 44911, - "loun": 6466, - "lounge": 7141, - "lounging": 45430, - "lour": 29383, - "lourdes": 45071, - "louvre": 36995, - "lov": 8923, - "lov": 21229, - "lova": 37394, - "lovable": 38565, - "lovato": 18960, - "love": 2618, - "love": 793, - "lovecraft": 42405, - "loved": 3249, - "lovefl": 38884, - "loveher": 38306, - "lovehim": 45733, - "loveis": 30931, - "loveisland": 30970, - "loveislove": 43603, - "loveit": 24764, - "lovel": 8999, - "lovelies": 31412, - "lovelondon": 46493, - "lovely": 33250, - "lovely": 2165, - "lovemy": 20041, - "lovemyjob": 40130, - "loven": 33754, - "lover": 28508, - "lover": 7168, - "lovers": 48416, - "lovers": 5973, - "loves": 37773, - "loves": 3925, - "lovethe": 33040, - "lovethem": 48298, - "lovett": 47095, - "lovewins": 47687, - "loveyou": 39226, - "loveyou": 25964, - "loveyour": 26462, - "lovin": 33442, - "lovin": 16354, - "loving": 29568, - "loving": 3721, - "lovingly": 44100, - "low": 1049, - "low": 1042, - "loway": 16104, - "lowe": 17910, - "lowed": 22733, - "lowell": 24458, - "lower": 32578, - "lower": 4909, - "lowered": 34968, - "lowering": 35261, - "lowers": 36398, - "lowes": 38515, - "lowest": 12098, - "lowing": 8283, - "lowkey": 29481, - "lowry": 27444, - "lows": 4406, - "lox": 41725, - "loy": 4519, - "loy": 23929, - "loyal": 13032, - "loyalty": 14686, - "loyd": 44212, - "loyed": 29279, - "loyment": 18307, - "loyola": 32569, - "lp": 22282, - "lp": 6392, - "lpc": 44092, - "lpg": 47905, - "lpga": 34295, - "lps": 32094, - "lr": 20572, - "lr": 7041, - "lrt": 32996, - "ls": 19051, - "ls": 1268, - "lsd": 43766, - "lse": 46127, - "lse": 43886, - "lsu": 35428, - "lsu": 15672, - "lt": 13642, - "lt": 3333, - "ltc": 27664, - "ltd": 6802, - "lte": 25202, - "lton": 14237, - "lu": 664, - "lu": 9657, - "lub": 22469, - "lub": 11836, - "lubbock": 37660, - "lubric": 40963, - "luc": 7013, - "luc": 28014, - "luca": 21053, - "lucas": 23425, - "lucas": 10225, - "lucci": 45849, - "luce": 46217, - "lucent": 41552, - "lucer": 36042, - "luch": 36646, - "lucha": 38449, - "luci": 8787, - "lucia": 22290, - "luciano": 46365, - "lucid": 44540, - "lucie": 39461, - "lucifer": 46224, - "lucifer": 27687, - "lucille": 47454, - "lucin": 27523, - "luck": 9647, - "luck": 2820, - "luckiest": 42469, - "luckily": 20100, - "lucknow": 29407, - "lucky": 20495, - "lucky": 4133, - "lucrative": 41485, - "lucy": 17262, - "lucy": 10120, - "lud": 14288, - "lude": 28755, - "ludo": 40141, - "ludwig": 30633, - "lue": 45199, - "luf": 25264, - "lufc": 17818, - "luffy": 39047, - "lufthan": 37769, - "lufthansa": 39145, - "lug": 45521, - "lugg": 19673, - "luggage": 20138, - "luhan": 20975, - "luigi": 28444, - "luis": 25231, - "luis": 11339, - "luiz": 39633, - "lujah": 31639, - "luk": 21652, - "luka": 34878, - "lukaku": 37177, - "lukas": 37941, - "luke": 11970, - "luke": 5652, - "lul": 20861, - "lulla": 37019, - "lullaby": 41676, - "lulu": 32052, - "lulu": 26935, - "lum": 18112, - "lum": 5997, - "lumb": 36231, - "lumber": 27421, - "lumber": 34692, - "lumi": 41437, - "lumia": 31912, - "lumin": 15867, - "luminous": 37913, - "lump": 38704, - "lumpur": 34411, - "lun": 3221, - "lun": 49390, - "luna": 14425, - "lunar": 16043, - "lunatic": 45874, - "lunch": 10954, - "lunch": 2772, - "luncheon": 15104, - "lunches": 29705, - "lunchtime": 14330, - "lund": 30975, - "lund": 20181, - "lunes": 35648, - "lung": 38479, - "lung": 16271, - "lungs": 27366, - "lup": 27413, - "lupita": 49352, - "lupus": 36017, - "lur": 14439, - "lure": 31376, - "lures": 46747, - "lurking": 29941, - "lus": 7158, - "lusci": 38004, - "luscious": 39935, - "lush": 40382, - "lush": 16263, - "lust": 42071, - "lust": 12662, - "lustre": 46673, - "luther": 21848, - "luther": 17208, - "lutheran": 27341, - "luton": 28288, - "luv": 24726, - "luv": 8502, - "lux": 3439, - "lux": 16704, - "luxe": 26373, - "luxemb": 21314, - "luxembour": 22712, - "luxembourg": 23949, - "luxu": 16112, - "luxurious": 17292, - "luxury": 12083, - "luxury": 5247, - "luxurytravel": 29010, - "luz": 41008, - "lv": 10862, - "lv": 11184, - "lvl": 31256, - "lw": 40515, - "lw": 35115, - "lx": 30789, - "ly": 1251, - "ly": 597, - "lydia": 24316, - "lyf": 43688, - "lyfe": 30787, - "lyft": 32944, - "lying": 7175, - "lyk": 46376, - "lyle": 36828, - "lym": 20087, - "lyme": 31167, - "lymph": 30073, - "lymphoma": 37648, - "lyn": 3957, - "lyn": 5054, - "lynch": 31586, - "lynch": 13560, - "lynd": 33416, - "lynda": 42959, - "lyndon": 48518, - "lynn": 25303, - "lynn": 10667, - "lynne": 26900, - "lynx": 28941, - "lyon": 17176, - "lyons": 29453, - "lyric": 24366, - "lyric": 21291, - "lyrical": 33358, - "lyricist": 49013, - "lyrics": 9551, - "lyrix": 46814, - "lys": 45054, - "lyte": 40059, - "lywood": 4012, - "lz": 30818, - "lé": 39641, - "m": 76, - "m": 332, - "ma": 577, - "ma": 1226, - "maa": 42774, - "maa": 21555, - "maan": 33668, - "maar": 48927, - "maas": 43332, - "mab": 35639, - "mabel": 47319, - "mable": 23001, - "mably": 40082, - "mabu": 44682, - "mac": 1961, - "mac": 4945, - "macar": 21558, - "macaroni": 41824, - "macarthur": 36785, - "macau": 43984, - "macau": 33370, - "macbeth": 36321, - "macbook": 20617, - "macdonald": 20315, - "mace": 44869, - "maced": 21102, - "macedonia": 27071, - "macfar": 45374, - "macfarlane": 48825, - "mach": 2637, - "mach": 35091, - "machado": 42318, - "mache": 43220, - "macher": 29330, - "machi": 41783, - "machin": 17972, - "machine": 11539, - "machine": 4169, - "machinelearning": 13621, - "machinery": 21858, - "machines": 11108, - "machining": 45562, - "macho": 43977, - "macht": 45225, - "macin": 36533, - "mack": 8590, - "mack": 12145, - "mackay": 32497, - "macken": 48057, - "mackenzie": 22351, - "mackerel": 35002, - "mackin": 26010, - "macklemore": 41758, - "macle": 33843, - "maclean": 47137, - "macleod": 43684, - "macmillan": 36364, - "macmillan": 35191, - "macon": 35818, - "macos": 45469, - "macqu": 38365, - "macquarie": 40858, - "macro": 20891, - "macro": 16626, - "macron": 24859, - "macs": 46548, - "macy": 17113, - "macys": 47652, - "mad": 2740, - "mad": 3843, - "mada": 37799, - "madagas": 24758, - "madagascar": 25744, - "madam": 33634, - "madam": 27538, - "madame": 23507, - "madd": 31717, - "madden": 19093, - "maddie": 39959, - "maddie": 18875, - "maddow": 32644, - "maddy": 31734, - "made": 5388, - "made": 1105, - "madein": 13670, - "madeira": 33810, - "madel": 34532, - "madele": 29831, - "madeleine": 33264, - "madeline": 33905, - "madewith": 28627, - "madewithunity": 43190, - "madhu": 23000, - "madhuri": 38346, - "madhuridixit": 43889, - "madhya": 48302, - "madi": 6527, - "madi": 27282, - "madison": 24798, - "madison": 8791, - "madmen": 45452, - "madness": 8755, - "madon": 44852, - "madonna": 14137, - "madra": 27416, - "madras": 42046, - "madre": 42130, - "madri": 5529, - "madrid": 5909, - "mads": 41201, - "madu": 34913, - "madurai": 49159, - "maduro": 32912, - "mae": 16898, - "mae": 17339, - "maer": 47088, - "maestro": 24140, - "mafi": 47164, - "mafia": 14890, - "mag": 1191, - "mag": 4508, - "maga": 8694, - "magaz": 2974, - "magazine": 3113, - "magazines": 22253, - "magdal": 29673, - "mage": 46568, - "mage": 10923, - "magee": 43872, - "magenta": 38091, - "magento": 42442, - "mages": 31059, - "maggi": 29611, - "maggie": 41443, - "maggie": 14524, - "maggio": 49087, - "magh": 45555, - "magi": 19270, - "magic": 13061, - "magic": 3778, - "magical": 36408, - "magical": 7823, - "magician": 26368, - "magin": 42678, - "maging": 41310, - "magn": 10290, - "magna": 34076, - "magne": 9921, - "magnesium": 36379, - "magnet": 18240, - "magnetic": 13838, - "magnets": 33030, - "magni": 24297, - "magnific": 9725, - "magnificent": 10724, - "magnitude": 22955, - "magno": 21184, - "magnolia": 27123, - "magnu": 45198, - "magnum": 23496, - "magnus": 26275, - "magpie": 45973, - "mags": 31021, - "maguire": 26470, - "mah": 7206, - "mah": 10801, - "maha": 12237, - "maha": 33983, - "mahal": 22301, - "mahan": 45191, - "mahar": 11635, - "maharaj": 38488, - "maharashtra": 19328, - "mahat": 32434, - "mahatma": 40530, - "mahe": 15756, - "maher": 29826, - "mahesh": 33448, - "mahesh": 22095, - "mahi": 32529, - "mahi": 38659, - "mahin": 24113, - "mahindra": 31285, - "mahmoud": 41361, - "mahog": 30804, - "mahogany": 33084, - "mahon": 45864, - "mahon": 20371, - "mahone": 26634, - "mai": 7138, - "mai": 14595, - "maia": 46585, - "maid": 23148, - "maid": 10226, - "maidan": 37346, - "maiden": 37011, - "maiden": 13809, - "maids": 27305, - "maidstone": 44395, - "mail": 10478, - "mail": 2614, - "mailbox": 31482, - "mailed": 42314, - "mailing": 26680, - "mailonline": 26021, - "mails": 45213, - "main": 3904, - "main": 2623, - "maine": 18639, - "maine": 7836, - "mained": 15609, - "mainedcm": 15845, - "mainland": 27629, - "mainly": 15280, - "mains": 33656, - "mainst": 42102, - "mainstream": 18034, - "maintain": 12954, - "maintained": 26665, - "maintaining": 21964, - "maintains": 38335, - "mainten": 9399, - "maintenance": 9610, - "mais": 28153, - "maisie": 47355, - "maison": 37065, - "maison": 27626, - "mait": 26387, - "maize": 35386, - "maj": 2948, - "maj": 28723, - "maja": 47498, - "maje": 9852, - "majestic": 15335, - "majesty": 21188, - "major": 8008, - "major": 3350, - "majority": 10508, - "majors": 23597, - "mak": 11271, - "mak": 19253, - "makar": 42242, - "makati": 39402, - "make": 3232, - "make": 1078, - "makeaw": 45859, - "makeinindia": 42739, - "makeit": 26308, - "maken": 47093, - "makeover": 17926, - "maker": 15196, - "maker": 4836, - "makers": 6577, - "makerspace": 42400, - "makes": 2088, - "makeshift": 43274, - "makeu": 41707, - "makeup": 26402, - "makeup": 5853, - "makeyourown": 34090, - "makeyourownlane": 34823, - "maki": 34514, - "makin": 43096, - "makin": 22407, - "making": 17976, - "making": 1665, - "makk": 39852, - "maknae": 44118, - "mako": 49061, - "mal": 1662, - "mal": 3796, - "mala": 28290, - "malade": 36928, - "malaga": 35395, - "malala": 41137, - "malam": 48956, - "malaria": 24929, - "malawi": 23405, - "malay": 5323, - "malay": 42430, - "malayalam": 34860, - "malaysi": 39668, - "malaysia": 8146, - "malaysian": 21136, - "malbec": 47741, - "malcol": 12645, - "malcolm": 14139, - "maldives": 16795, - "male": 11326, - "male": 2801, - "males": 14426, - "malhotra": 28866, - "mali": 6701, - "mali": 22669, - "malia": 46714, - "malibu": 21723, - "malicious": 42147, - "malign": 41122, - "malik": 11394, - "mall": 10984, - "mall": 6220, - "mallorca": 28082, - "mallory": 38968, - "malls": 36447, - "malm": 44071, - "malnutrition": 41153, - "malo": 43518, - "malone": 19852, - "maloney": 45897, - "mals": 25370, - "malt": 21688, - "malta": 16989, - "maltese": 39838, - "malvern": 39356, - "malware": 24153, - "mam": 4404, - "mam": 17778, - "mama": 7133, - "mamamoo": 36012, - "mamas": 42395, - "mamba": 44189, - "mament": 45690, - "mami": 43858, - "mamma": 34893, - "mammal": 33385, - "mammals": 31987, - "mammoth": 28022, - "man": 723, - "man": 786, - "mana": 29467, - "mana": 15837, - "manafort": 40108, - "manag": 1830, - "manage": 9770, - "managed": 7928, - "management": 3319, - "manager": 3898, - "managerial": 44261, - "managers": 12853, - "manages": 29699, - "managing": 10892, - "manas": 44188, - "manatee": 46558, - "mance": 2324, - "manchester": 24424, - "manchester": 4651, - "mancini": 47681, - "mancity": 31538, - "mancrush": 36945, - "mancrushmonday": 39307, - "mand": 4325, - "mand": 27244, - "mandala": 41106, - "mandarin": 26455, - "mandate": 26228, - "mandatory": 19934, - "mandel": 34960, - "mandela": 16280, - "mandi": 38961, - "mandir": 35815, - "mando": 34006, - "mands": 12340, - "mandu": 31440, - "mandy": 41505, - "mandy": 24302, - "mane": 44471, - "mane": 16044, - "maneu": 33216, - "mang": 25616, - "mang": 31096, - "manga": 11873, - "mangal": 43027, - "manger": 48251, - "mango": 43831, - "mango": 13962, - "mangrove": 47180, - "manhatt": 10152, - "manhattan": 10961, - "mani": 5654, - "mani": 10718, - "mania": 8435, - "maniac": 31814, - "maniacs": 41444, - "manian": 40077, - "manic": 23017, - "manic": 37825, - "manicure": 33637, - "manife": 14379, - "manifest": 34422, - "manifestation": 48348, - "manifesto": 20907, - "manil": 38827, - "manila": 10969, - "manipu": 40261, - "manipul": 19237, - "manipulation": 30277, - "manipur": 47757, - "manish": 41759, - "manish": 44720, - "manit": 15693, - "manitoba": 20342, - "manjaro": 41489, - "mankind": 24155, - "manly": 25194, - "mann": 19396, - "mann": 4783, - "manne": 30160, - "manned": 26139, - "mannequin": 43388, - "manner": 20700, - "manners": 31693, - "manning": 15996, - "manny": 37054, - "manny": 20933, - "mano": 15753, - "mano": 24016, - "manoj": 41146, - "manor": 41830, - "manor": 13614, - "mans": 28422, - "mans": 7746, - "mansfield": 25543, - "manship": 15460, - "mansion": 13404, - "manslaughter": 48632, - "manson": 26715, - "mant": 25122, - "mant": 27037, - "manta": 41431, - "mantis": 39946, - "mantle": 22159, - "mantra": 25162, - "manu": 3404, - "manu": 25799, - "manual": 12268, - "manuel": 29171, - "manuel": 9567, - "manufac": 5105, - "manufacture": 27741, - "manufactured": 24010, - "manufacturer": 15668, - "manufacturers": 18763, - "manufacturing": 8386, - "manure": 47907, - "manus": 28181, - "manuscript": 24365, - "manuscripts": 40765, - "manutd": 20994, - "many": 28484, - "many": 1346, - "manziel": 40637, - "mao": 47447, - "mao": 25605, - "maori": 43400, - "map": 25180, - "map": 3923, - "maple": 21980, - "maple": 10570, - "mapleleafs": 41257, - "mapoli": 28768, - "mapp": 36894, - "mapped": 41596, - "mapping": 15231, - "maps": 8765, - "mapu": 42082, - "mar": 675, - "mar": 3091, - "mara": 15655, - "marais": 47913, - "maran": 44732, - "marath": 16274, - "marathi": 34102, - "marathon": 40764, - "marathon": 5910, - "marau": 38475, - "marbella": 36182, - "marble": 45429, - "marble": 13071, - "marbles": 42931, - "marc": 14054, - "marc": 9075, - "marca": 38242, - "marcel": 17726, - "marcel": 24652, - "marcelo": 35939, - "march": 10638, - "march": 2227, - "marche": 36173, - "marched": 37976, - "marches": 38249, - "marchfor": 31721, - "marching": 15082, - "marchmadness": 28555, - "marci": 36698, - "marcia": 41075, - "marck": 47733, - "marco": 24719, - "marco": 10924, - "marcor": 39945, - "marcorubio": 41143, - "marcos": 21696, - "marcu": 20760, - "marcus": 48955, - "marcus": 9895, - "mardi": 39728, - "mardi": 29229, - "mardigras": 43343, - "mare": 26512, - "mare": 8870, - "mares": 19724, - "marg": 44014, - "margar": 16838, - "margare": 10232, - "margaret": 12185, - "margarita": 25958, - "margaritas": 42679, - "margate": 37428, - "margin": 19464, - "margin": 21357, - "marginal": 38320, - "margins": 33763, - "margot": 37144, - "mari": 2603, - "mari": 19322, - "maria": 41109, - "maria": 6595, - "mariachi": 44299, - "mariah": 31214, - "mariah": 24789, - "mariahcarey": 36538, - "marian": 41129, - "marian": 24677, - "mariana": 44224, - "marianne": 32214, - "mariano": 43988, - "marie": 20657, - "marie": 7864, - "marietta": 46634, - "marig": 41002, - "marijuana": 9864, - "maril": 14611, - "marilyn": 38959, - "marilyn": 18489, - "marin": 8910, - "marin": 23992, - "marina": 12060, - "marinated": 33406, - "marine": 20674, - "marine": 5746, - "mariner": 39972, - "mariners": 19086, - "marines": 15018, - "marino": 30878, - "mario": 39176, - "mario": 7600, - "marion": 37765, - "marion": 18397, - "maris": 21512, - "maris": 33093, - "marisa": 42938, - "mariska": 44703, - "marissa": 31219, - "marist": 48223, - "mariti": 13124, - "maritime": 14331, - "marj": 38639, - "mark": 3805, - "mark": 2110, - "marke": 2399, - "marked": 12360, - "marker": 18170, - "markers": 23664, - "market": 11614, - "market": 2196, - "marketer": 33482, - "marketers": 23682, - "marketing": 19535, - "marketing": 2905, - "marketplace": 18241, - "markets": 7292, - "markham": 39817, - "marking": 14705, - "markings": 41046, - "markle": 32672, - "marko": 38338, - "marks": 5466, - "markus": 33725, - "marl": 24922, - "marlborough": 43515, - "marlene": 45117, - "marley": 16504, - "marlin": 34275, - "marlins": 23309, - "marlon": 32995, - "marmalade": 39068, - "marnock": 48305, - "maro": 27029, - "maroon": 20501, - "marqu": 20704, - "marque": 13012, - "marquee": 27725, - "marquette": 37624, - "marquez": 27317, - "marquis": 33530, - "marr": 32871, - "marrake": 37125, - "marrakech": 39006, - "marri": 3839, - "marriage": 38047, - "marriage": 7040, - "marriages": 38190, - "married": 6791, - "marries": 46283, - "marriott": 19211, - "marrow": 31030, - "marry": 13288, - "marrying": 40507, - "mars": 41469, - "mars": 7496, - "marsden": 43344, - "marse": 26577, - "marseille": 30365, - "marsh": 9237, - "marsh": 13505, - "marsha": 21491, - "marshal": 26608, - "marshall": 30939, - "marshall": 9811, - "marshals": 44175, - "marshes": 43450, - "marshmal": 21069, - "marshmallow": 28530, - "marshmallows": 39471, - "mart": 2348, - "mart": 7772, - "marta": 32858, - "martens": 43211, - "marth": 34493, - "martha": 16427, - "marti": 20577, - "martial": 17088, - "martialarts": 35895, - "martian": 30214, - "martin": 6929, - "martin": 3690, - "martina": 34393, - "martinez": 13913, - "marting": 47570, - "martini": 22199, - "martino": 41675, - "martins": 30569, - "marty": 9926, - "marty": 17169, - "martyn": 44075, - "martyr": 36155, - "martyr": 26067, - "martyrdom": 43110, - "martyred": 39114, - "martyrs": 24707, - "maru": 37413, - "maru": 31838, - "marvel": 13835, - "marvel": 5996, - "marvelcomics": 46897, - "marvell": 26576, - "marvellous": 28402, - "marvelous": 25487, - "marvin": 19675, - "marx": 30559, - "marx": 26001, - "marxist": 45205, - "mary": 5146, - "mary": 2676, - "maryam": 33636, - "maryam": 36393, - "maryland": 11379, - "marys": 40905, - "marys": 40228, - "mas": 5226, - "mas": 1412, - "masa": 24995, - "masa": 41868, - "masala": 31483, - "masc": 23564, - "mascar": 46984, - "mascara": 31635, - "mascot": 13983, - "mascots": 43266, - "mascul": 25589, - "masculine": 48269, - "masculinity": 40465, - "mase": 49128, - "maser": 25798, - "maserati": 30442, - "mash": 12317, - "mash": 15680, - "mashable": 41026, - "mashed": 27395, - "mashup": 27079, - "masi": 35965, - "masjid": 31420, - "mask": 19262, - "mask": 8306, - "masked": 25757, - "masking": 47046, - "masks": 19055, - "maslow": 44359, - "mason": 17424, - "mason": 9699, - "masonic": 36491, - "masonry": 30764, - "masons": 37195, - "masqu": 26593, - "masquer": 29604, - "masquerade": 36944, - "mass": 4636, - "mass": 4854, - "massach": 14484, - "massachuse": 14577, - "massachusetts": 14756, - "massacre": 14696, - "massage": 13055, - "masse": 41735, - "masses": 22978, - "massey": 29868, - "massi": 17239, - "massimo": 45821, - "massive": 4818, - "massively": 34297, - "mast": 45916, - "mast": 27920, - "master": 4534, - "master": 3498, - "mastercard": 40542, - "masterchef": 34809, - "masterclass": 17529, - "mastered": 32616, - "masterful": 46823, - "mastering": 28326, - "mastermind": 34029, - "masterpiece": 12066, - "masterpieces": 37596, - "masters": 6913, - "mastery": 34800, - "mastiff": 42311, - "maswar": 47887, - "mat": 905, - "mat": 9063, - "mata": 17270, - "match": 7733, - "match": 2439, - "matcha": 32433, - "matchday": 15947, - "matched": 17792, - "matches": 8609, - "matching": 11840, - "matchup": 19355, - "matchups": 49162, - "mate": 6137, - "mate": 2936, - "mated": 33813, - "mateo": 34991, - "mater": 23724, - "materi": 7084, - "material": 7118, - "materials": 8161, - "maternal": 26131, - "maternity": 23894, - "mates": 5817, - "math": 13277, - "math": 6025, - "mathe": 8725, - "mathemat": 11901, - "mathematical": 25609, - "mathematician": 41036, - "mathematics": 20113, - "mathew": 36333, - "mathews": 37120, - "mathi": 23014, - "mathieu": 40417, - "maths": 14763, - "mati": 12716, - "mati": 32268, - "matic": 36859, - "matic": 7900, - "matically": 38282, - "matics": 23634, - "matil": 26751, - "matilda": 36308, - "matin": 44849, - "matinee": 38525, - "mating": 34346, - "mation": 11701, - "matisse": 43446, - "mato": 13127, - "matologist": 48842, - "matology": 27940, - "matory": 25519, - "matri": 27041, - "matrix": 18078, - "mats": 22259, - "matsu": 30242, - "matt": 7972, - "matt": 3972, - "mattb": 42791, - "matte": 31237, - "matte": 19771, - "mattel": 35365, - "matteo": 33120, - "matter": 30471, - "matter": 3828, - "matters": 5708, - "matth": 41846, - "matthe": 5116, - "matthew": 17588, - "matthew": 7008, - "matthews": 16739, - "matthi": 29853, - "matthias": 45104, - "matti": 39840, - "mattress": 23438, - "matty": 31233, - "matty": 29176, - "matu": 40616, - "matur": 22897, - "mature": 14417, - "maturity": 28047, - "mau": 8134, - "mau": 23033, - "maui": 20463, - "maul": 30725, - "maur": 10574, - "maure": 25191, - "maureen": 31723, - "maurice": 20200, - "mauricio": 39066, - "mauriti": 28406, - "mauritius": 29305, - "mauro": 41691, - "mav": 25697, - "maver": 16700, - "maverick": 27425, - "mavericks": 30092, - "mavs": 30665, - "maw": 39351, - "maw": 42271, - "mawards": 37682, - "max": 4898, - "max": 3902, - "maxi": 8554, - "maxi": 23266, - "maxim": 19892, - "maxim": 38574, - "maximize": 28673, - "maximum": 13162, - "maximus": 44312, - "maxine": 38468, - "maxwell": 19611, - "maxx": 37466, - "may": 1686, - "may": 1270, - "maya": 45783, - "maya": 12987, - "mayan": 37952, - "maybe": 3746, - "mayday": 29957, - "mayer": 21196, - "mayfair": 35171, - "mayfield": 33933, - "mayhem": 21502, - "maymay": 26600, - "maymay": 33853, - "maymayentrata": 30480, - "maynard": 32487, - "mayne": 35771, - "mayo": 22449, - "mayo": 11280, - "mayor": 15429, - "mayor": 4676, - "mayoral": 28983, - "mayorof": 43533, - "mayors": 28501, - "mays": 35445, - "maythe": 42281, - "mayward": 45751, - "mayward": 23519, - "mayweather": 22774, - "maz": 9177, - "maz": 36215, - "mazda": 18506, - "maze": 21988, - "mazz": 29439, - "mañ": 37059, - "mañana": 39354, - "mb": 758, - "mb": 3996, - "mba": 8329, - "mban": 46685, - "mbar": 44452, - "mbb": 10736, - "mbc": 20137, - "mbe": 38395, - "mbe": 27004, - "mber": 5467, - "mber": 1034, - "mberg": 26372, - "mbers": 5443, - "mbi": 45347, - "mble": 20310, - "mble": 4756, - "mbles": 28693, - "mbling": 28604, - "mbo": 25733, - "mbo": 11319, - "mbps": 44896, - "mbs": 10370, - "mbta": 38979, - "mbu": 42228, - "mbuhari": 36752, - "mc": 1278, - "mc": 4126, - "mca": 40570, - "mca": 14635, - "mcal": 28663, - "mcar": 43776, - "mcbride": 35080, - "mcc": 21192, - "mccabe": 37628, - "mccaf": 47385, - "mccain": 20397, - "mccall": 34844, - "mccann": 27140, - "mccar": 9570, - "mccarthy": 16974, - "mccartney": 19958, - "mccl": 24709, - "mccla": 43672, - "mccle": 40139, - "mcclure": 44945, - "mcco": 46152, - "mccon": 32638, - "mccor": 23057, - "mccormack": 45164, - "mccormick": 39088, - "mccoy": 20218, - "mccr": 41996, - "mccre": 25393, - "mccul": 38833, - "mccull": 41782, - "mcd": 28930, - "mcder": 27355, - "mcdermott": 34504, - "mcdon": 12171, - "mcdonald": 10741, - "mcdonalds": 17674, - "mcdonnell": 34360, - "mcdowell": 34119, - "mce": 26864, - "mcel": 28752, - "mcen": 47423, - "mcfad": 36976, - "mcfadden": 42105, - "mcfar": 29020, - "mcfarlane": 47174, - "mcfc": 16416, - "mcfly": 38211, - "mcg": 42507, - "mcg": 27995, - "mcgee": 29223, - "mcgill": 46524, - "mcgill": 35511, - "mcgin": 29596, - "mcgowan": 40462, - "mcgr": 25169, - "mcgra": 29367, - "mcgrath": 28759, - "mcgraw": 40950, - "mcgregor": 19642, - "mcgu": 34294, - "mcguinness": 45299, - "mcguire": 32635, - "mci": 46212, - "mci": 45491, - "mcil": 30481, - "mcin": 18770, - "mcintosh": 45353, - "mcintyre": 33369, - "mck": 6781, - "mckay": 33611, - "mcke": 27424, - "mckee": 43529, - "mcken": 42619, - "mckenna": 24924, - "mckenzie": 25502, - "mckin": 15437, - "mckinley": 39891, - "mckinney": 33554, - "mckinnon": 48736, - "mckinsey": 48143, - "mcl": 49021, - "mcla": 12565, - "mclaren": 37381, - "mclaren": 16789, - "mclau": 32285, - "mclaughlin": 35346, - "mcle": 25299, - "mclean": 28666, - "mcleod": 40259, - "mcm": 12251, - "mcmahon": 24026, - "mcmaster": 42703, - "mcmillan": 45603, - "mcn": 42919, - "mcnam": 32682, - "mcnamara": 37506, - "mcne": 42545, - "mco": 33723, - "mcqueen": 22544, - "mcr": 29884, - "mcr": 16966, - "mcs": 27020, - "mcu": 30403, - "md": 8637, - "md": 4732, - "mdc": 38773, - "mdc": 41761, - "mds": 48746, - "mdt": 40822, - "me": 613, - "me": 614, - "mea": 46045, - "mea": 17711, - "mead": 12134, - "mead": 21567, - "meade": 37218, - "meado": 16402, - "meadow": 25213, - "meadow": 17195, - "meadows": 17178, - "meal": 29662, - "meal": 5478, - "meals": 11229, - "mean": 4189, - "mean": 3450, - "meand": 48015, - "meaning": 14586, - "meaning": 8342, - "meaningful": 17480, - "meaningless": 48932, - "meanings": 45814, - "means": 3494, - "meant": 8674, - "meantime": 27499, - "meanwhile": 9650, - "meas": 5867, - "measles": 38230, - "measurable": 48010, - "measure": 15261, - "measure": 10579, - "measured": 23154, - "measurement": 20973, - "measurements": 29894, - "measures": 11936, - "measuring": 18064, - "meat": 10805, - "meat": 6480, - "meatball": 43642, - "meatballs": 29233, - "meath": 37920, - "meatless": 48085, - "meats": 29558, - "mec": 27432, - "mecca": 36095, - "mech": 38305, - "mechan": 6715, - "mechanic": 24582, - "mechanical": 14467, - "mechanics": 20536, - "mechanism": 22576, - "mechanisms": 28610, - "meck": 41908, - "med": 1948, - "med": 2177, - "meda": 33614, - "medal": 29714, - "medal": 6974, - "medalist": 21040, - "medalists": 43397, - "medalli": 31349, - "medallion": 43469, - "medallist": 41472, - "medals": 14710, - "mede": 48225, - "meded": 27627, - "medi": 1436, - "media": 22064, - "media": 1895, - "mediac": 37490, - "median": 30491, - "mediation": 42829, - "medic": 3602, - "medic": 35441, - "medicaid": 25421, - "medical": 18432, - "medical": 4116, - "medicare": 23710, - "medication": 23771, - "medications": 37181, - "medicinal": 28772, - "medicine": 5616, - "medicines": 26541, - "medics": 46688, - "medieval": 38956, - "medieval": 10789, - "medina": 27281, - "mediocre": 41170, - "medit": 19130, - "meditate": 38039, - "meditation": 10827, - "mediter": 14194, - "mediterran": 14358, - "mediterranean": 15327, - "medium": 8675, - "medley": 24793, - "meds": 25075, - "medtech": 42044, - "medusa": 44216, - "medway": 42286, - "mee": 1725, - "mee": 14075, - "meek": 28935, - "meen": 37940, - "meen": 46515, - "meer": 26714, - "meer": 27555, - "meet": 5714, - "meet": 1633, - "meeting": 48566, - "meeting": 2071, - "meetings": 9980, - "meets": 5972, - "meetthe": 27575, - "meetup": 15430, - "meg": 11500, - "meg": 16186, - "mega": 15979, - "mega": 9068, - "megab": 38103, - "megadeth": 46741, - "megal": 37650, - "megam": 26073, - "megan": 19127, - "megan": 11503, - "megap": 33624, - "megat": 35581, - "megh": 31192, - "meghan": 39939, - "meghan": 18261, - "meh": 10512, - "meh": 22211, - "mehta": 25031, - "mei": 22564, - "mei": 25198, - "meier": 29812, - "mein": 28857, - "mein": 21466, - "meister": 28407, - "mek": 44645, - "mel": 1902, - "mel": 6834, - "mela": 35032, - "melan": 22261, - "melanch": 44818, - "melancholy": 47821, - "melani": 34031, - "melania": 32796, - "melanie": 22153, - "melanoma": 40862, - "melb": 47007, - "melb": 28980, - "melbourne": 28387, - "melbourne": 6995, - "melee": 45108, - "meli": 28885, - "melinda": 46303, - "melis": 18913, - "melissa": 41866, - "melissa": 13030, - "mell": 22531, - "mell": 41583, - "mello": 47594, - "mellon": 45162, - "mellow": 32034, - "melo": 10354, - "melo": 22374, - "melodic": 41877, - "melodies": 38412, - "melody": 19119, - "melon": 12146, - "melrose": 36296, - "melt": 22209, - "melt": 15957, - "meltdown": 30613, - "melted": 23037, - "melting": 19247, - "melton": 46062, - "melts": 31446, - "melville": 46030, - "melvin": 31544, - "mely": 6373, - "mem": 4937, - "mem": 34944, - "memb": 2114, - "member": 29566, - "member": 1640, - "members": 2567, - "membership": 11562, - "membrane": 34088, - "meme": 35157, - "meme": 9169, - "memes": 12828, - "memo": 15967, - "memo": 19334, - "memoir": 20532, - "memoirs": 45311, - "memor": 1858, - "memorab": 26271, - "memorabilia": 27488, - "memorable": 13172, - "memorial": 16285, - "memorial": 4642, - "memorialday": 21598, - "memoriam": 48191, - "memories": 4304, - "memory": 44766, - "memory": 5137, - "memph": 10285, - "memphis": 38432, - "memphis": 11298, - "men": 1552, - "men": 1656, - "mena": 23052, - "menace": 29949, - "mend": 8151, - "mend": 46927, - "mendel": 49268, - "mendes": 18060, - "mendez": 48275, - "mendo": 19327, - "mendoza": 23680, - "meng": 37102, - "meng": 37450, - "mening": 46428, - "menon": 38255, - "menopau": 34974, - "menopause": 46026, - "mens": 16924, - "mens": 10495, - "mensfashion": 27578, - "menstru": 28345, - "menstrual": 40915, - "menswear": 18803, - "ment": 1585, - "ment": 777, - "mental": 8611, - "mental": 3448, - "mentalhealth": 20593, - "mentalhealth": 13022, - "mentality": 26647, - "mentally": 14307, - "mentary": 4468, - "mentation": 9512, - "mentday": 40397, - "mente": 40302, - "mente": 36396, - "mented": 9249, - "menting": 14471, - "mention": 43881, - "mention": 6762, - "mentioned": 11948, - "mentioning": 34290, - "mentions": 12334, - "mento": 30582, - "mentor": 45342, - "mentor": 11642, - "mentoring": 19610, - "mentors": 20945, - "mentorship": 33878, - "ments": 1827, - "menu": 6225, - "menus": 33534, - "meo": 30792, - "meow": 39965, - "meow": 17246, - "mep": 27095, - "mer": 1316, - "mer": 2452, - "mera": 20028, - "merc": 34357, - "merc": 44399, - "mercado": 45479, - "merce": 8409, - "mercede": 34959, - "mercedes": 26403, - "mercedes": 10685, - "mercedesam": 40107, - "mercedesbenz": 32347, - "mercen": 40301, - "mercer": 21632, - "merch": 11504, - "merchandi": 14954, - "merchandise": 16808, - "merchandising": 49196, - "merchant": 19563, - "merchants": 34427, - "merci": 23364, - "merci": 29378, - "mercur": 11471, - "mercury": 45203, - "mercury": 12653, - "mercy": 33249, - "mercy": 10815, - "mere": 29657, - "mere": 10342, - "mered": 24657, - "mered": 32297, - "meredith": 25103, - "merely": 28718, - "merge": 30406, - "merged": 46492, - "merger": 24744, - "merging": 49256, - "meri": 17993, - "meri": 36109, - "meria": 48433, - "meric": 27097, - "merica": 30561, - "meridi": 37901, - "meridian": 31195, - "mering": 41060, - "meringue": 41661, - "merino": 42648, - "merit": 20830, - "merkel": 24715, - "merle": 48586, - "merlin": 26517, - "merlot": 40424, - "mermaid": 16064, - "mermaids": 43617, - "mero": 19097, - "merr": 48288, - "merri": 21462, - "merrill": 47713, - "merritt": 36462, - "merry": 14167, - "merry": 5779, - "merrychristmas": 19672, - "mers": 4199, - "mersal": 36711, - "mersey": 25248, - "mersey": 46239, - "merseyside": 35382, - "mert": 48496, - "merton": 35315, - "mery": 40873, - "meryl": 35787, - "mes": 28432, - "mes": 3029, - "mesa": 18956, - "mese": 42018, - "mesh": 15030, - "mesm": 18695, - "mesmer": 38435, - "mesmeri": 25985, - "mesmerizing": 35637, - "meso": 25537, - "mesqu": 46819, - "mess": 2490, - "mess": 8188, - "message": 3918, - "messages": 9390, - "messaging": 23234, - "messe": 40391, - "messed": 23580, - "messenger": 17389, - "messi": 19394, - "messi": 11252, - "messiah": 28737, - "messing": 23144, - "messy": 15987, - "mest": 23780, - "mester": 47349, - "mesut": 49177, - "met": 5249, - "met": 2340, - "meta": 14803, - "meta": 22701, - "metab": 16150, - "metabol": 48389, - "metaboli": 25573, - "metabolic": 34311, - "metabolism": 27824, - "metal": 8935, - "metal": 4044, - "metall": 19084, - "metallic": 17257, - "metallica": 24079, - "metals": 21375, - "metam": 28862, - "metamor": 39030, - "metamorpho": 47601, - "metaph": 24189, - "metaphor": 34233, - "metast": 41973, - "mete": 11226, - "meteor": 26429, - "meteor": 26823, - "meteoro": 25948, - "meteorologist": 42849, - "meter": 10104, - "meters": 13247, - "metgala": 30089, - "meth": 21867, - "meth": 26177, - "methane": 37565, - "metho": 5770, - "method": 10284, - "methodist": 25165, - "methodo": 28488, - "methodology": 37316, - "methods": 12200, - "methyl": 48999, - "metmuseum": 28207, - "meto": 25679, - "metoo": 24722, - "metr": 15086, - "metre": 27889, - "metres": 19798, - "metric": 19950, - "metrical": 40704, - "metrics": 24396, - "metro": 7257, - "metro": 6784, - "metroid": 39957, - "metropolis": 40476, - "metropolitan": 19013, - "metry": 20039, - "mets": 9633, - "mett": 28081, - "metz": 40506, - "meu": 34520, - "mew": 40368, - "mex": 3213, - "mex": 18387, - "mexic": 31728, - "mexican": 37442, - "mexican": 8186, - "mexicans": 47729, - "mexico": 31834, - "mexico": 4604, - "mey": 28584, - "mey": 27777, - "meyer": 13963, - "meyers": 32326, - "mez": 30615, - "mez": 46833, - "mezz": 38771, - "mf": 18199, - "mf": 11067, - "mfa": 24107, - "mfc": 39474, - "mfg": 21912, - "mfw": 27309, - "mg": 10003, - "mg": 8014, - "mga": 23954, - "mgm": 27572, - "mgmt": 22288, - "mgr": 31500, - "mgs": 48073, - "mgt": 48663, - "mh": 9962, - "mh": 10834, - "mha": 41944, - "mhealth": 41225, - "mhs": 28815, - "mhz": 31550, - "mi": 714, - "mi": 2251, - "mia": 5852, - "miam": 31053, - "miami": 15106, - "miami": 4891, - "mian": 24792, - "miaw": 36046, - "mib": 48178, - "mic": 1213, - "mic": 3816, - "mica": 41551, - "micah": 33870, - "mice": 19030, - "mich": 25628, - "mich": 23029, - "micha": 2083, - "michael": 6051, - "michael": 2511, - "michaela": 41897, - "michaeljackson": 33532, - "michaels": 23868, - "michal": 47144, - "miche": 37966, - "micheal": 43709, - "michel": 5158, - "michel": 17153, - "michelangelo": 41245, - "michele": 20642, - "michelin": 26330, - "michelle": 19028, - "michelle": 8625, - "michi": 5658, - "michigan": 32344, - "michigan": 6296, - "mick": 15171, - "mick": 12592, - "mickey": 41813, - "mickey": 13053, - "micky": 43011, - "micro": 3160, - "micro": 11374, - "microbes": 44671, - "microbi": 19496, - "microbial": 30335, - "microbiology": 35348, - "microbiome": 35148, - "micron": 48742, - "microphone": 24643, - "micropoetry": 35997, - "microscope": 29114, - "microscopy": 38431, - "microsof": 42424, - "microsoft": 38650, - "microsoft": 7254, - "microwave": 24240, - "mics": 16554, - "mid": 2192, - "mid": 4734, - "midcentury": 48988, - "midd": 2983, - "midday": 23390, - "middle": 9849, - "middle": 3694, - "middleeast": 32783, - "middles": 29769, - "middlesbrough": 32436, - "middlesex": 39154, - "middleton": 23627, - "middleweight": 35829, - "midfield": 28116, - "midfielder": 13423, - "midget": 30734, - "midi": 39496, - "midi": 27326, - "midland": 24822, - "midlands": 18062, - "midnight": 35746, - "midnight": 6302, - "mids": 40821, - "midst": 24752, - "midsummer": 35234, - "midterm": 34365, - "midterms": 32015, - "midtown": 26069, - "midway": 26536, - "midweek": 29120, - "midwest": 16627, - "midwi": 44802, - "midwife": 37681, - "midwives": 42355, - "mie": 20865, - "mie": 10555, - "miento": 46482, - "mier": 36490, - "mies": 8840, - "miff": 49398, - "mig": 28743, - "might": 2727, - "mighty": 26632, - "mighty": 7815, - "mign": 41678, - "migos": 44640, - "migr": 3736, - "migra": 28186, - "migraine": 35360, - "migrant": 18902, - "migrants": 15814, - "migrate": 41804, - "migrating": 43604, - "migration": 11891, - "migu": 12279, - "miguel": 33672, - "miguel": 14436, - "miho": 46870, - "mii": 39896, - "mik": 15096, - "mik": 46203, - "mika": 28609, - "mika": 25185, - "mike": 5884, - "mike": 3178, - "mikel": 48865, - "mikequind": 33508, - "mikequindazzi": 33551, - "mikey": 34934, - "mikey": 23368, - "mikha": 30999, - "mikhail": 38327, - "miki": 48863, - "miko": 35413, - "miku": 37703, - "mil": 1469, - "mil": 12826, - "mila": 26183, - "milan": 30380, - "milan": 8552, - "milano": 18585, - "milb": 42248, - "mild": 16085, - "mildly": 49059, - "mile": 7833, - "mile": 6243, - "mileage": 30579, - "miler": 44680, - "miles": 3446, - "milestone": 13485, - "milestones": 34025, - "miley": 25336, - "miley": 14321, - "mileycyrus": 28528, - "milf": 45386, - "milford": 35840, - "mili": 16698, - "miliband": 41440, - "milit": 3715, - "militant": 33629, - "militants": 23974, - "military": 24498, - "military": 4323, - "militi": 46625, - "militia": 32114, - "milk": 13409, - "milk": 5205, - "milkshake": 29066, - "milky": 37320, - "milky": 21120, - "milkyway": 43246, - "mill": 4221, - "mill": 6637, - "milla": 49381, - "millan": 34930, - "millan": 22188, - "millar": 41851, - "mille": 34066, - "millen": 48501, - "millenni": 10406, - "millennial": 28357, - "millennials": 18804, - "millennium": 21116, - "miller": 21699, - "miller": 5733, - "milli": 5340, - "millie": 29283, - "milling": 39133, - "million": 13154, - "million": 2506, - "millionaire": 25179, - "millionaires": 47159, - "millions": 8492, - "mills": 10331, - "millwall": 35902, - "milly": 45794, - "milne": 44590, - "milner": 45230, - "milo": 24548, - "milton": 39004, - "milton": 17360, - "milwau": 13452, - "milwaukee": 14259, - "mim": 39379, - "mimi": 27086, - "mimic": 47116, - "mimic": 46519, - "mimo": 45551, - "min": 771, - "min": 3331, - "mina": 15281, - "minaj": 25136, - "minal": 40222, - "minat": 33275, - "mince": 32396, - "mind": 5890, - "mind": 2575, - "mindanao": 44228, - "minded": 21330, - "mindful": 28457, - "mindfulness": 15707, - "minding": 45337, - "minds": 9244, - "mindset": 14217, - "mindy": 46875, - "mindy": 38551, - "mine": 20149, - "mine": 3347, - "minecraft": 15678, - "mined": 48034, - "minent": 12533, - "miner": 14109, - "miner": 26572, - "mineral": 17692, - "minerals": 21169, - "miners": 22119, - "mines": 16211, - "ming": 10868, - "ming": 2107, - "mingham": 7590, - "mingle": 38437, - "mingly": 36909, - "mington": 49283, - "mington": 23119, - "minh": 48734, - "minho": 21318, - "mini": 1810, - "mini": 3954, - "miniature": 44298, - "miniature": 16377, - "miniatures": 38816, - "minic": 31522, - "minim": 10005, - "minimal": 18458, - "minimalism": 42594, - "minimalist": 26641, - "minimize": 38697, - "minimum": 12244, - "minindia": 28458, - "mining": 8473, - "minion": 28622, - "minions": 27035, - "minis": 33409, - "minis": 35976, - "minister": 25688, - "minister": 3569, - "ministerial": 33008, - "ministers": 16406, - "ministries": 27895, - "ministry": 8742, - "mink": 42017, - "minn": 45991, - "minn": 47318, - "minne": 7083, - "minneapolis": 16977, - "minneso": 9380, - "minnesota": 9968, - "minnie": 24493, - "mino": 22791, - "minogue": 44202, - "minor": 8522, - "minorities": 28119, - "minority": 16210, - "minors": 36789, - "mins": 6196, - "minsk": 46151, - "minster": 11189, - "mint": 48084, - "mint": 7506, - "minted": 49377, - "minton": 20050, - "minu": 29064, - "minus": 15358, - "minute": 28931, - "minute": 4497, - "minutes": 3056, - "mio": 26366, - "mir": 2750, - "mir": 6585, - "mira": 21665, - "mira": 22762, - "mirac": 13685, - "miracle": 49208, - "miracle": 11543, - "miracles": 23478, - "miraculous": 38671, - "mirage": 28679, - "mirai": 49060, - "mirand": 32367, - "miranda": 17590, - "mire": 38140, - "mire": 30140, - "miri": 22273, - "miriam": 30950, - "miro": 34851, - "miro": 48317, - "mirren": 47600, - "mirro": 48500, - "mirror": 29823, - "mirror": 7220, - "mirrors": 21823, - "mirza": 36440, - "mis": 866, - "mis": 11239, - "mischief": 33896, - "misconceptions": 48681, - "misconduct": 30601, - "mise": 46567, - "mise": 17267, - "miser": 33394, - "miserable": 26196, - "misery": 28360, - "mises": 24390, - "misfits": 42708, - "mish": 15494, - "mish": 20981, - "misha": 35434, - "mishra": 33042, - "misleading": 30862, - "mism": 15948, - "miso": 27657, - "miso": 33441, - "misogy": 31315, - "misogyny": 48415, - "miss": 6984, - "miss": 1526, - "missal": 38337, - "missed": 3955, - "misses": 15844, - "missi": 3008, - "missile": 14411, - "missiles": 27868, - "missin": 36209, - "missing": 23509, - "missing": 3423, - "mission": 12738, - "mission": 2406, - "missionaries": 40580, - "missionary": 27915, - "missions": 6990, - "mississ": 26483, - "mississauga": 28393, - "mississi": 11687, - "mississippi": 12232, - "missou": 30710, - "missoula": 48549, - "missouri": 11835, - "missuni": 26347, - "missuniverse": 28766, - "missy": 48105, - "missy": 31515, - "missyou": 45799, - "mist": 12610, - "mist": 11946, - "mistak": 20478, - "mistake": 11303, - "mistaken": 29182, - "mistakenly": 48494, - "mistakes": 12824, - "mister": 26949, - "mister": 18895, - "mistle": 46800, - "mistletoe": 48569, - "mistre": 42039, - "mistress": 24349, - "mists": 28636, - "misty": 18799, - "misunderstood": 41574, - "misuse": 40970, - "mit": 3303, - "mit": 4551, - "mita": 47514, - "mitage": 27964, - "mitch": 6969, - "mitch": 14150, - "mitchell": 39339, - "mitchell": 9007, - "mite": 26929, - "mith": 21752, - "mith": 17948, - "miti": 17857, - "mitigate": 42273, - "mitigation": 35514, - "mito": 38254, - "mitochondri": 42132, - "mitra": 47703, - "mits": 24086, - "mitsu": 17905, - "mitsubi": 21604, - "mitsubishi": 23030, - "mitt": 17321, - "mitt": 21341, - "mitted": 10307, - "mitting": 27938, - "mitz": 41827, - "mium": 35891, - "miwx": 43941, - "mix": 3210, - "mix": 3285, - "mixed": 29376, - "mixed": 6780, - "mixer": 17200, - "mixers": 39175, - "mixes": 19061, - "mixing": 15588, - "mixtape": 11044, - "mixture": 28286, - "miy": 25695, - "miya": 36257, - "miz": 20881, - "miz": 30795, - "mize": 19076, - "mized": 43418, - "mizing": 38715, - "mizz": 19985, - "mizzou": 26165, - "mj": 13117, - "mj": 14733, - "mk": 11581, - "mk": 8937, - "mke": 36642, - "mkt": 24814, - "ml": 3627, - "ml": 5780, - "mla": 16723, - "mlas": 48464, - "mlb": 21039, - "mlb": 7482, - "mley": 40329, - "mlg": 45801, - "mlin": 24556, - "mlk": 17941, - "mlkday": 39905, - "mlm": 37611, - "mln": 18971, - "mlp": 23620, - "mlpfi": 45475, - "mlpfim": 45640, - "mls": 13077, - "mm": 1028, - "mm": 2848, - "mma": 34140, - "mma": 6096, - "mmc": 44253, - "mme": 13105, - "mmed": 19570, - "mmer": 35717, - "mmer": 7508, - "mmers": 28128, - "mmes": 42862, - "mmi": 34147, - "mming": 21038, - "mming": 16507, - "mmings": 31357, - "mmit": 41050, - "mmj": 43015, - "mmm": 37908, - "mmm": 7641, - "mmmm": 36312, - "mmmm": 13180, - "mmmmm": 21808, - "mmmmmm": 43740, - "mmo": 30418, - "mmon": 41131, - "mmor": 36657, - "mmorpg": 39476, - "mms": 37803, - "mmva": 42666, - "mmy": 28837, - "mmy": 8722, - "mn": 5086, - "mn": 4057, - "mna": 34877, - "mnd": 44776, - "mnet": 34129, - "mnf": 41105, - "mnl": 32980, - "mnleg": 42653, - "mns": 39040, - "mnt": 21477, - "mntwins": 45448, - "mnwild": 39044, - "mnwx": 39592, - "mo": 617, - "mo": 2080, - "moa": 33174, - "moana": 43241, - "mob": 2818, - "mob": 12754, - "mobi": 9451, - "mobil": 26343, - "mobil": 29815, - "mobile": 12935, - "mobile": 3451, - "mobiles": 44302, - "mobili": 20770, - "mobility": 12546, - "mobilization": 48916, - "moby": 47219, - "moc": 41439, - "moc": 36992, - "mocha": 28425, - "mochi": 47973, - "mock": 15641, - "mock": 12759, - "mocked": 47400, - "mocking": 28692, - "mocking": 37870, - "mocks": 35142, - "mod": 6362, - "mod": 10893, - "moda": 25814, - "modal": 33157, - "mode": 20402, - "mode": 6493, - "model": 4591, - "model": 2863, - "modeled": 39527, - "modeling": 13706, - "modelling": 19946, - "models": 6176, - "moder": 2894, - "moderate": 16435, - "moderated": 27928, - "moderating": 34242, - "moderator": 32659, - "modern": 11706, - "modern": 4077, - "modernart": 34417, - "moderni": 24328, - "modernism": 39601, - "modernist": 36773, - "modernization": 47294, - "modes": 30454, - "modest": 25436, - "modi": 9047, - "modi": 7774, - "modification": 37630, - "modified": 17964, - "modo": 36820, - "mods": 23843, - "modu": 9036, - "modular": 22437, - "module": 16757, - "modules": 30575, - "moe": 38655, - "moe": 17938, - "mof": 30798, - "moff": 27160, - "mog": 42362, - "moga": 41732, - "mogadishu": 45133, - "mogul": 41320, - "moh": 18979, - "moh": 35388, - "moha": 46892, - "moham": 7923, - "mohamed": 18472, - "mohammad": 19926, - "mohammed": 16168, - "mohan": 26521, - "mohan": 23586, - "mohawk": 34942, - "mohd": 49094, - "mohsin": 48861, - "moi": 20691, - "moi": 21825, - "moil": 30349, - "moines": 32091, - "moist": 19831, - "moist": 33263, - "moisture": 20412, - "moisturi": 25942, - "moj": 34505, - "moja": 49055, - "mojito": 46830, - "mojo": 25204, - "mok": 49146, - "mol": 4246, - "mol": 31582, - "mold": 21846, - "molding": 46274, - "moldova": 47317, - "mole": 9927, - "mole": 23529, - "molecular": 19370, - "molecule": 39233, - "molecules": 35643, - "molina": 34201, - "mollie": 48203, - "molly": 24368, - "molly": 12573, - "molo": 41510, - "mology": 32255, - "molten": 46071, - "moly": 47083, - "mom": 1614, - "mom": 2543, - "moma": 33605, - "mombasa": 40340, - "moment": 12197, - "moment": 2495, - "momento": 30078, - "moments": 5251, - "momentum": 15722, - "momlife": 43825, - "momma": 14508, - "mommy": 12456, - "momo": 48490, - "momo": 25980, - "moms": 28446, - "moms": 10042, - "momsdemand": 33744, - "mon": 749, - "mon": 2173, - "mona": 19143, - "monaco": 14938, - "monaghan": 39797, - "monarch": 27235, - "monarch": 22619, - "monarchs": 36750, - "monarchy": 47503, - "monaster": 19422, - "monastery": 21850, - "monc": 34847, - "moncton": 44962, - "mond": 14522, - "mond": 4475, - "monday": 6205, - "monday": 2098, - "mondaymorning": 40089, - "mondaymotiv": 45488, - "mondaymotivation": 8198, - "mondaymotivaton": 47034, - "mondays": 13815, - "monde": 29339, - "mondo": 36207, - "monds": 20317, - "mone": 25990, - "monet": 24499, - "monetary": 26394, - "moneti": 38056, - "money": 12743, - "money": 2327, - "mong": 43566, - "monger": 38928, - "mongers": 27670, - "mongo": 20680, - "mongolia": 27144, - "mongolian": 46335, - "moni": 46851, - "monia": 31161, - "monic": 30893, - "monica": 13540, - "monit": 9014, - "monitor": 10198, - "monitored": 45828, - "monitoring": 11030, - "monitors": 30478, - "monk": 30557, - "monk": 16424, - "monkey": 29597, - "monkey": 9465, - "monkeys": 15781, - "monks": 29090, - "monmouth": 36929, - "mono": 8220, - "mono": 22537, - "monochrome": 25576, - "monogram": 39665, - "monologue": 47776, - "monopoly": 25241, - "monoxide": 49314, - "monro": 45750, - "monroe": 13625, - "mons": 19885, - "monsanto": 37592, - "monsi": 46677, - "monsieur": 48879, - "monsoon": 18872, - "monsta": 30718, - "monstax": 45631, - "monste": 47045, - "monster": 14454, - "monster": 6060, - "monsters": 11546, - "mont": 5186, - "mont": 5382, - "montag": 37202, - "montage": 32325, - "montal": 42126, - "montan": 28405, - "montana": 11436, - "monte": 8711, - "monte": 14667, - "montene": 28538, - "montenegro": 30378, - "monter": 36673, - "monterey": 23388, - "monterrey": 45254, - "montess": 43205, - "montessori": 45443, - "montgom": 13852, - "montgomery": 14951, - "month": 7680, - "month": 1924, - "monthly": 8764, - "months": 3109, - "monthsary": 42420, - "monton": 41961, - "montp": 39523, - "montre": 8434, - "montreal": 9262, - "montrose": 42347, - "monty": 43997, - "monty": 24038, - "monu": 9748, - "monument": 12019, - "monumental": 31297, - "monuments": 26916, - "mony": 4117, - "monza": 40380, - "moo": 4953, - "moo": 24626, - "mood": 42358, - "mood": 5394, - "moods": 43727, - "moody": 17170, - "moom": 36887, - "moon": 6334, - "moon": 3293, - "mooney": 37942, - "moonlight": 20001, - "moons": 29887, - "moonshine": 46706, - "moor": 14817, - "moor": 11877, - "moore": 28613, - "moore": 6708, - "moors": 32577, - "moose": 37562, - "moose": 17338, - "moot": 46895, - "mop": 33900, - "mopar": 41166, - "mor": 657, - "mor": 18614, - "mora": 29262, - "moral": 11246, - "morale": 39404, - "morales": 27117, - "morality": 34133, - "morally": 42519, - "morals": 46223, - "moran": 21557, - "moray": 44569, - "more": 5434, - "more": 750, - "morecam": 37305, - "morecambe": 43414, - "mored": 20195, - "moreland": 44135, - "moreno": 24826, - "morethan": 30889, - "morg": 34284, - "morgan": 15432, - "morgan": 6075, - "morgen": 35106, - "mori": 25710, - "mori": 29514, - "moris": 43131, - "moritz": 45594, - "morley": 40439, - "mormon": 27715, - "morn": 22393, - "mornin": 28327, - "morning": 10769, - "morning": 1119, - "mornings": 12106, - "moro": 31613, - "moroc": 11996, - "moroccan": 27546, - "morocco": 15228, - "moron": 31875, - "morons": 46477, - "morow": 40779, - "morph": 23915, - "morph": 41700, - "morphe": 38978, - "morpho": 38622, - "morrha": 43044, - "morri": 9876, - "morris": 22560, - "morris": 9090, - "morrison": 40961, - "morrison": 14094, - "morrisons": 40965, - "morrissey": 30040, - "morro": 48363, - "morrow": 21611, - "mors": 13064, - "morse": 25282, - "mort": 24257, - "mort": 30583, - "mortal": 31883, - "mortal": 14680, - "mortality": 20347, - "mortar": 27258, - "mortg": 12069, - "mortgage": 13988, - "mortgages": 45391, - "mortimer": 47836, - "morton": 20698, - "morty": 37391, - "mory": 22633, - "mos": 28658, - "mos": 9593, - "mosa": 14164, - "mosa": 23809, - "mosaic": 17506, - "mosch": 47003, - "mosco": 9840, - "moscow": 10371, - "moseley": 47080, - "moses": 18451, - "mosley": 46228, - "mosqu": 15215, - "mosque": 12694, - "mosques": 41214, - "mosquit": 39699, - "mosquito": 25083, - "mosquitoes": 41870, - "moss": 25107, - "moss": 12815, - "most": 7034, - "most": 1096, - "mostly": 8829, - "mosul": 29165, - "mot": 16352, - "mot": 15452, - "mota": 42499, - "motd": 46232, - "motel": 26191, - "moth": 33208, - "moth": 11736, - "mother": 7455, - "mother": 3050, - "motherhood": 32274, - "motherland": 46774, - "mothers": 10546, - "mothersday": 15583, - "motherwell": 48104, - "moths": 29086, - "moti": 38210, - "motif": 35373, - "motion": 32139, - "motion": 7860, - "motiv": 3183, - "motivate": 26771, - "motivated": 16521, - "motivates": 44684, - "motivating": 37720, - "motivation": 26117, - "motivation": 4193, - "motivational": 32832, - "motivational": 20472, - "motivationmonday": 28703, - "motive": 36669, - "motley": 42553, - "motm": 41192, - "moto": 10646, - "moto": 11431, - "motocross": 34562, - "motogp": 16615, - "motor": 3975, - "motor": 7659, - "motorbike": 33341, - "motorcycle": 10297, - "motorcycles": 24869, - "motoring": 44491, - "motorists": 32766, - "motorola": 33738, - "motors": 14989, - "motorsport": 18371, - "motorsports": 24264, - "motorway": 31808, - "motown": 32685, - "mott": 44570, - "mott": 21708, - "motto": 23338, - "mou": 2809, - "mou": 25289, - "moud": 37698, - "moul": 25725, - "mould": 36743, - "moulin": 47656, - "moun": 2023, - "mound": 21414, - "mount": 20553, - "mount": 5532, - "mountain": 14547, - "mountain": 3965, - "mountaine": 24841, - "mountaineer": 49255, - "mountains": 5873, - "mounted": 17897, - "mounting": 29910, - "mounts": 36767, - "mour": 9053, - "mour": 42446, - "moured": 29555, - "mourinho": 18536, - "mourn": 33592, - "mourning": 24169, - "mourns": 42811, - "mous": 24837, - "mous": 17425, - "mouse": 33032, - "mouse": 9301, - "mousse": 31869, - "moustache": 32795, - "mouth": 15152, - "mouth": 4932, - "mouths": 38518, - "mov": 23950, - "move": 16624, - "move": 2783, - "moved": 6997, - "movember": 23474, - "movement": 5208, - "movements": 19665, - "mover": 37673, - "movers": 33957, - "moves": 6880, - "movi": 1707, - "movic": 43838, - "movie": 11247, - "movie": 2016, - "movies": 4772, - "moving": 32160, - "moving": 3584, - "mow": 31006, - "mow": 36329, - "mower": 30895, - "mowing": 46424, - "mowx": 44263, - "moy": 27276, - "moy": 34205, - "moyes": 37119, - "moz": 14761, - "moz": 43738, - "mozam": 26648, - "mozambique": 28831, - "mozart": 22132, - "mozz": 26317, - "mozzarella": 27845, - "mp": 1037, - "mp": 1246, - "mpa": 30749, - "mpc": 38560, - "mpd": 33814, - "mped": 28134, - "mper": 22803, - "mpg": 39830, - "mpg": 37454, - "mpgvip": 42149, - "mph": 5306, - "mpi": 43263, - "mping": 27999, - "mple": 21139, - "mplo": 47071, - "mpls": 34298, - "mpo": 33674, - "mpp": 39570, - "mps": 5504, - "mption": 9717, - "mpton": 27448, - "mpu": 47156, - "mpus": 25864, - "mpy": 17192, - "mq": 19103, - "mqm": 24687, - "mr": 3139, - "mr": 1982, - "mra": 44568, - "mrc": 25897, - "mri": 24773, - "mrs": 25003, - "mrs": 4255, - "mrt": 30256, - "mru": 22370, - "mrw": 15303, - "ms": 3525, - "ms": 988, - "msa": 36306, - "msc": 31826, - "msc": 20529, - "msd": 25804, - "msd": 36407, - "msdhoni": 32850, - "msf": 36239, - "msg": 44430, - "msg": 10928, - "msh": 41751, - "msi": 43597, - "msi": 45278, - "msk": 38501, - "msl": 42736, - "msm": 22210, - "msn": 18824, - "msn": 41042, - "msnbc": 20245, - "mson": 27773, - "mson": 12298, - "msp": 41445, - "msp": 22318, - "mss": 42136, - "mss": 48610, - "mst": 26335, - "msu": 26763, - "msu": 17298, - "mswx": 42957, - "msy": 43919, - "mt": 4252, - "mt": 3284, - "mta": 28691, - "mtb": 48306, - "mtb": 18747, - "mtc": 42482, - "mtg": 49142, - "mtg": 13648, - "mth": 48151, - "mtl": 22135, - "mtn": 26041, - "mtn": 18953, - "mtr": 46650, - "mts": 38751, - "mtv": 8099, - "mtv": 12555, - "mtvbr": 47258, - "mtvhottest": 16751, - "mtvstars": 19948, - "mu": 670, - "mu": 6411, - "mua": 21395, - "muay": 44910, - "muaythai": 47763, - "mubarak": 17957, - "muc": 49115, - "much": 14300, - "much": 1238, - "mucha": 42191, - "muchas": 26278, - "mucho": 19864, - "muck": 44731, - "muck": 45330, - "mud": 17491, - "mud": 11673, - "mudder": 49104, - "muddy": 21524, - "mue": 44383, - "mue": 40717, - "mueller": 46863, - "mueller": 14719, - "muen": 48646, - "muer": 33840, - "muf": 33852, - "mufc": 9013, - "muffin": 22696, - "muffins": 25922, - "mufti": 44930, - "mug": 16339, - "mug": 9722, - "mugabe": 36441, - "mughal": 37508, - "mugs": 22852, - "mugshot": 40028, - "muh": 36335, - "muh": 46475, - "muham": 10043, - "muhammad": 12259, - "muir": 44650, - "muir": 24745, - "muj": 44635, - "muk": 17327, - "muk": 32600, - "mukher": 34575, - "mukherjee": 37862, - "mul": 1899, - "mul": 43193, - "mula": 40937, - "mulator": 17463, - "mulberry": 39221, - "mule": 28695, - "mull": 17313, - "mull": 35310, - "mulled": 44641, - "mullen": 30797, - "muller": 33956, - "mullet": 35010, - "mulligan": 44336, - "mullins": 41265, - "mult": 34219, - "multi": 3947, - "multi": 6400, - "multic": 21683, - "multicul": 28004, - "multicultural": 34667, - "multil": 27975, - "multimedia": 27977, - "multin": 38996, - "multinational": 46540, - "multip": 40314, - "multiplayer": 27460, - "multiple": 6470, - "multipurpose": 47665, - "multit": 27814, - "multitasking": 48684, - "mulus": 26180, - "mum": 15565, - "mum": 4030, - "mumb": 5850, - "mumbai": 24279, - "mumbai": 6971, - "mumford": 46184, - "mummy": 16301, - "mums": 17868, - "mun": 2617, - "mun": 21059, - "muna": 48424, - "munch": 23587, - "munch": 33299, - "munchies": 44324, - "munchkin": 41305, - "mund": 14244, - "mundo": 20990, - "muni": 27327, - "muni": 39795, - "munich": 13526, - "munici": 12159, - "municipal": 43667, - "municipal": 16600, - "municipality": 29987, - "munition": 32668, - "munro": 36501, - "munster": 27201, - "mup": 21966, - "muppet": 40598, - "muppets": 40187, - "mups": 42195, - "mur": 2144, - "mur": 18293, - "mura": 45176, - "mural": 12315, - "murals": 31499, - "murder": 28136, - "murder": 5787, - "murdered": 13158, - "murderer": 26956, - "murderers": 48472, - "murdering": 36055, - "murders": 22409, - "murdoch": 29037, - "murphy": 48976, - "murphy": 8914, - "murray": 31978, - "murray": 7513, - "murs": 38783, - "mus": 2198, - "mus": 8103, - "musa": 30540, - "musc": 5696, - "muscat": 33322, - "muscle": 27323, - "muscle": 9269, - "muscles": 16786, - "muscular": 30606, - "muse": 2369, - "muse": 15686, - "museo": 36457, - "muses": 48243, - "museu": 27087, - "museum": 15602, - "museum": 2786, - "museums": 15542, - "museumweek": 37996, - "mush": 7635, - "mushroom": 13011, - "mushrooms": 14730, - "musi": 15628, - "music": 4110, - "music": 1179, - "musica": 26668, - "musical": 36002, - "musical": 5173, - "musically": 48893, - "musicals": 36974, - "musichistory": 37890, - "musician": 11179, - "musicians": 12498, - "musicislife": 43311, - "musicmonday": 35887, - "musicvideo": 26764, - "musik": 32986, - "musings": 44961, - "musique": 42250, - "musk": 32143, - "musk": 19063, - "muskete": 32775, - "musketeers": 37993, - "musko": 34987, - "muskoka": 40832, - "musli": 4958, - "muslim": 43795, - "muslim": 7060, - "muslims": 10513, - "muss": 41493, - "mussels": 33393, - "must": 6783, - "must": 2048, - "mustache": 23451, - "mustaf": 23596, - "mustafa": 29000, - "mustang": 42361, - "mustang": 13309, - "mustangs": 22500, - "mustard": 15794, - "muster": 47361, - "mustread": 28978, - "mut": 12598, - "mut": 22839, - "mutant": 28384, - "mutation": 38626, - "mutations": 39651, - "mute": 31252, - "muted": 48028, - "muth": 34280, - "mutil": 39950, - "mutt": 45924, - "mutu": 17574, - "mutual": 15055, - "mutuals": 31158, - "muy": 44625, - "mv": 10580, - "mv": 8269, - "mvc": 40549, - "mvp": 8905, - "mw": 16725, - "mw": 11206, - "mwc": 24289, - "mwf": 48565, - "mx": 21947, - "mx": 9575, - "my": 1152, - "my": 607, - "mya": 31401, - "myal": 42735, - "myan": 13761, - "myanmar": 14764, - "myart": 38826, - "myco": 48362, - "mydayin": 41896, - "mydayinla": 42801, - "mydubai": 43475, - "mye": 27551, - "myel": 40084, - "myers": 15993, - "myjaps": 47939, - "myle": 43700, - "myles": 25511, - "mylife": 30537, - "mylittle": 37757, - "mylittlepony": 45107, - "myo": 16206, - "myr": 20272, - "myra": 35694, - "myri": 34972, - "myrt": 47785, - "myrtle": 27768, - "mys": 11724, - "myself": 3245, - "mysore": 44924, - "myspace": 41382, - "myster": 4669, - "mysteries": 20605, - "mysterious": 12650, - "mystery": 39828, - "mystery": 6711, - "mysti": 28711, - "mystic": 36264, - "mystic": 23722, - "mystical": 34122, - "myth": 20322, - "myth": 13878, - "mythical": 34377, - "mytho": 43857, - "mythology": 22496, - "myths": 18675, - "mz": 29509, - "mz": 33400, - "mzan": 36322, - "mzansi": 43301, - "má": 36842, - "mé": 21890, - "méxico": 46159, - "mü": 28142, - "mün": 41235, - "n": 77, - "n": 333, - "na": 1097, - "na": 1272, - "naa": 37738, - "naacp": 32176, - "nab": 6951, - "nab": 19440, - "nabe": 35111, - "naby": 24800, - "nac": 14557, - "nac": 18950, - "nach": 12168, - "nach": 43622, - "nacho": 35647, - "nachos": 32847, - "nacht": 37261, - "nacional": 38782, - "nad": 6204, - "nad": 43928, - "nada": 31683, - "nadal": 20814, - "nade": 24908, - "nadi": 30512, - "nadia": 27487, - "nadine": 23356, - "nadu": 20936, - "nae": 19374, - "naf": 16161, - "naf": 45956, - "nafta": 43123, - "nag": 6694, - "nag": 23902, - "naga": 45953, - "naga": 38997, - "nagar": 17490, - "nage": 41219, - "nago": 38349, - "nagoya": 43303, - "nagpur": 43328, - "nah": 26421, - "nah": 11129, - "nahi": 35244, - "nai": 6230, - "nai": 10692, - "naia": 31340, - "naidu": 42429, - "naija": 16326, - "naik": 34424, - "nail": 19459, - "nail": 9059, - "nailart": 43532, - "nailed": 19035, - "nails": 8469, - "nair": 27107, - "naira": 39450, - "naire": 48892, - "nairobi": 17756, - "nais": 46396, - "naissance": 44761, - "naive": 43362, - "naj": 30985, - "naji": 32589, - "nak": 9248, - "nak": 25550, - "naked": 46371, - "naked": 11478, - "naku": 39864, - "nal": 14132, - "nal": 3119, - "nale": 27198, - "nall": 32869, - "nally": 26158, - "nam": 1410, - "nam": 12344, - "nama": 39586, - "naman": 27635, - "namaste": 35549, - "name": 18160, - "name": 1981, - "named": 3194, - "nameis": 40831, - "nament": 3916, - "naments": 16540, - "names": 6130, - "namesake": 41298, - "nami": 20393, - "namibia": 23731, - "naming": 19367, - "namjoon": 31986, - "namm": 35524, - "namo": 46013, - "namo": 24854, - "nan": 4375, - "nan": 7750, - "nana": 18761, - "nanaimo": 40518, - "nancy": 21511, - "nancy": 11425, - "nand": 20435, - "nandez": 12764, - "nando": 46044, - "nang": 48148, - "nani": 27980, - "nanny": 31104, - "nano": 15835, - "nano": 22006, - "nanop": 34177, - "nanotechnology": 42235, - "nanow": 46734, - "nant": 22526, - "nantes": 47533, - "nantucket": 41573, - "nao": 39319, - "naom": 34955, - "naomi": 20173, - "nap": 6568, - "nap": 11012, - "napa": 20545, - "napier": 40875, - "napkin": 38930, - "naples": 23560, - "napo": 18715, - "napol": 20122, - "napoleon": 24969, - "napoli": 22445, - "napp": 11359, - "napping": 37657, - "naps": 31317, - "naq": 46453, - "nar": 2977, - "nar": 20145, - "nara": 33823, - "narcis": 25229, - "narcissi": 35442, - "narco": 38461, - "nard": 18216, - "nare": 34853, - "naren": 8468, - "narendr": 9807, - "narendra": 25848, - "narendramodi": 9853, - "narnia": 48693, - "narr": 11845, - "narrated": 43609, - "narrative": 15933, - "narratives": 35117, - "narrator": 46529, - "narrow": 24006, - "narrow": 16652, - "narrowly": 29747, - "naruto": 22732, - "nas": 3090, - "nas": 15250, - "nasa": 6841, - "nasal": 42853, - "nascar": 25723, - "nascar": 7868, - "nasdaq": 26629, - "nash": 6771, - "nash": 13620, - "nasheed": 49176, - "nashgrier": 33372, - "nashville": 45356, - "nashville": 8585, - "nasi": 47987, - "nasir": 47509, - "nassau": 34048, - "nasser": 43559, - "nasty": 32930, - "nasty": 8709, - "nat": 1276, - "nat": 11310, - "nata": 39392, - "natal": 28516, - "natali": 20296, - "natalia": 32978, - "natalie": 36634, - "natalie": 13595, - "natash": 48701, - "natasha": 23093, - "nate": 26643, - "nate": 7587, - "natgeo": 33009, - "natgeo": 25046, - "nath": 22203, - "nath": 19843, - "nathan": 13028, - "nathan": 9711, - "nathanfillion": 47422, - "nathaniel": 32667, - "nati": 1060, - "nati": 13384, - "natic": 44944, - "natin": 44358, - "nation": 2317, - "nation": 2670, - "national": 3126, - "national": 1362, - "nationalbestfriend": 42222, - "nationaldogday": 32227, - "nationalism": 29867, - "nationalist": 25058, - "nationality": 44451, - "nationally": 15130, - "nationalpark": 33060, - "nationalparks": 41204, - "nationals": 10784, - "nationaltrust": 34051, - "nations": 7654, - "nationwide": 13795, - "native": 20639, - "native": 4562, - "natives": 36060, - "nativity": 33988, - "natl": 39225, - "natl": 34465, - "nato": 13139, - "nats": 21106, - "natu": 2775, - "natur": 6800, - "natural": 13198, - "natural": 3288, - "naturally": 12995, - "naturals": 44686, - "nature": 9382, - "nature": 2625, - "naturelovers": 41514, - "naturephotography": 22533, - "natures": 15616, - "natureuk": 46193, - "nau": 5955, - "nau": 32878, - "naught": 41001, - "naughty": 47255, - "naughty": 15101, - "nautical": 31660, - "nav": 3413, - "nav": 25308, - "navajo": 35523, - "naval": 44725, - "naval": 13273, - "navar": 24848, - "navarro": 37104, - "nave": 42704, - "naveen": 43837, - "naver": 32534, - "navi": 16159, - "navi": 44848, - "navig": 12507, - "navigate": 24400, - "navigating": 33134, - "navigation": 20148, - "navigator": 38910, - "navis": 36377, - "navratri": 45428, - "navy": 28414, - "navy": 5598, - "naw": 16259, - "naw": 30500, - "nawaz": 49161, - "nawaz": 19523, - "nax": 38299, - "nay": 11704, - "nay": 16182, - "naya": 38917, - "nayanth": 38157, - "nayanthara": 45184, - "naz": 6363, - "naz": 35534, - "nazi": 12972, - "nazis": 21778, - "nb": 6459, - "nb": 6813, - "nba": 22524, - "nba": 5139, - "nbad": 43458, - "nbaf": 30127, - "nbafinals": 33803, - "nbap": 41956, - "nbaplayoffs": 43860, - "nbat": 46291, - "nbc": 9352, - "nbc": 8799, - "nbd": 24526, - "nbl": 42652, - "nc": 5021, - "nc": 4911, - "nca": 6921, - "ncaa": 9418, - "ncbd": 47221, - "ncc": 33195, - "ncc": 36686, - "ncds": 47573, - "ncfc": 31274, - "ncis": 33617, - "ncpol": 40562, - "ncr": 38474, - "ncs": 42689, - "nct": 27723, - "nct": 20319, - "ncwx": 36166, - "nd": 5625, - "nd": 1764, - "nda": 32862, - "ndc": 47564, - "ndi": 48229, - "ndp": 19257, - "nds": 31347, - "ndtv": 26261, - "ne": 557, - "ne": 1422, - "nea": 24068, - "neal": 33652, - "neal": 16730, - "near": 11296, - "near": 2252, - "nearby": 13314, - "nearest": 18985, - "nearing": 26571, - "nearly": 4816, - "nears": 37710, - "neat": 43201, - "neat": 15465, - "neath": 18315, - "neau": 31559, - "neb": 40209, - "nebra": 13371, - "nebraska": 14565, - "nebu": 49295, - "nebula": 22532, - "nec": 25109, - "nec": 22992, - "necess": 6961, - "necessarily": 25853, - "necessary": 8955, - "necessities": 43483, - "necessity": 33163, - "neck": 6066, - "neck": 6906, - "necklace": 7385, - "necklaces": 32276, - "necks": 29701, - "nectar": 33683, - "ned": 16030, - "ned": 1369, - "nederland": 49058, - "nee": 20494, - "nee": 10601, - "need": 3229, - "need": 1262, - "needed": 4049, - "needing": 22894, - "needle": 44490, - "needle": 19886, - "needles": 27250, - "needless": 39984, - "needs": 2536, - "needy": 30150, - "neel": 33092, - "neel": 46043, - "neer": 34245, - "nees": 47248, - "neet": 46362, - "neg": 5513, - "negan": 42623, - "negative": 8869, - "negatively": 40254, - "negativity": 34658, - "neglec": 18827, - "neglect": 33680, - "neglected": 31893, - "negli": 32594, - "negligence": 45658, - "negoti": 10216, - "negotiate": 32969, - "negotiating": 35510, - "negotiation": 36504, - "negotiations": 20433, - "negr": 42190, - "negro": 26554, - "neh": 40416, - "neh": 41697, - "neha": 44463, - "nehru": 30316, - "nei": 9366, - "neigh": 4061, - "neighb": 6534, - "neighbor": 7759, - "neighbor": 14485, - "neighborhood": 9471, - "neighborhoods": 26713, - "neighboring": 44754, - "neighbors": 13037, - "neighbour": 15858, - "neighbour": 23719, - "neighbourhood": 20312, - "neighbours": 17594, - "neil": 13591, - "neil": 8030, - "neilhimself": 45682, - "neill": 19324, - "neither": 14398, - "nek": 47727, - "neko": 47066, - "nel": 5476, - "nel": 2693, - "nell": 27081, - "nell": 8117, - "nelly": 21166, - "nels": 19296, - "nelson": 24774, - "nelson": 8586, - "nem": 45153, - "neman": 48553, - "neme": 30993, - "nemesis": 37811, - "nemo": 30441, - "nen": 17817, - "nen": 15451, - "nene": 44167, - "neo": 14562, - "neo": 11017, - "neon": 21043, - "neon": 13919, - "neonatal": 46464, - "neop": 49069, - "nep": 20739, - "nep": 41960, - "nepal": 25597, - "nepal": 10066, - "nepali": 47579, - "neph": 27926, - "nephe": 41810, - "nephew": 11689, - "nephews": 43747, - "nephro": 43054, - "neptune": 30566, - "ner": 2064, - "ner": 998, - "nerd": 24452, - "nerd": 12273, - "nerds": 22609, - "nerdy": 33124, - "nered": 17583, - "nerf": 42914, - "nering": 20226, - "nero": 29048, - "ners": 2129, - "nerve": 18571, - "nerves": 27813, - "nervous": 13928, - "nery": 48597, - "nes": 5457, - "nes": 4980, - "nesburg": 27159, - "nese": 32220, - "ness": 7187, - "ness": 1294, - "nesses": 20107, - "nessy": 32939, - "nest": 20302, - "nest": 8719, - "nesting": 28860, - "nestle": 43967, - "nestled": 38107, - "nests": 41133, - "net": 1851, - "net": 2315, - "netany": 23137, - "netanyahu": 23583, - "netball": 19761, - "netes": 44335, - "netfli": 6304, - "netflix": 35325, - "netflix": 6600, - "nether": 9946, - "netherlands": 11060, - "neti": 43980, - "netneutrality": 47794, - "nets": 8582, - "nett": 23403, - "nett": 6975, - "nette": 13271, - "network": 23285, - "network": 3304, - "networking": 9818, - "networks": 10004, - "neu": 3855, - "neu": 43342, - "neue": 45764, - "neur": 19001, - "neur": 31976, - "neural": 26388, - "neuro": 7401, - "neuro": 36000, - "neurological": 41718, - "neurology": 43197, - "neurons": 40442, - "neuroscience": 23381, - "neutr": 17207, - "neutral": 17011, - "neutrality": 26511, - "neutron": 44056, - "nev": 10236, - "nev": 43645, - "neva": 43304, - "nevada": 13499, - "neve": 44099, - "neve": 44023, - "never": 6746, - "never": 1426, - "neveragain": 45053, - "neverforget": 19242, - "nevergiveup": 42497, - "neverland": 41483, - "nevertheless": 48355, - "nevertrump": 47494, - "neville": 19269, - "nevis": 43670, - "new": 1218, - "new": 686, - "newark": 20240, - "newbie": 45427, - "newborn": 18320, - "newbury": 34169, - "newcastle": 41955, - "newcastle": 9302, - "newcomer": 30648, - "newcomers": 44037, - "newe": 40068, - "newell": 41436, - "newer": 33099, - "newest": 4990, - "newfound": 25250, - "newfoundland": 28079, - "newh": 18546, - "newin": 31911, - "newjersey": 32621, - "newly": 42186, - "newly": 7056, - "newman": 15815, - "newmarket": 38617, - "newmexico": 35238, - "newmusic": 32510, - "newmusic": 17201, - "newor": 25969, - "neworleans": 31205, - "newport": 42580, - "newport": 14846, - "newprofile": 14633, - "newprofilepic": 14754, - "newrelease": 34793, - "news": 6216, - "news": 1120, - "newsat": 43979, - "newsc": 28656, - "newscast": 45031, - "newsle": 10727, - "newsletter": 11069, - "newsnow": 48650, - "newsp": 7109, - "newspaper": 8786, - "newspapers": 22423, - "newsroom": 23200, - "newt": 37224, - "newton": 33122, - "newton": 12606, - "newtown": 31747, - "newyear": 22161, - "newyear": 12999, - "newyearseve": 37587, - "newyork": 18140, - "newyork": 10454, - "newyorkcity": 30460, - "newyorker": 39732, - "newzealand": 21117, - "nex": 6897, - "nex": 39720, - "next": 12434, - "next": 1131, - "nextgen": 41933, - "nexus": 19053, - "ney": 3857, - "ney": 1438, - "neymar": 21878, - "neys": 12616, - "nez": 27388, - "nf": 15195, - "nf": 25643, - "nfamily": 20098, - "nfc": 23695, - "nffc": 27893, - "nfl": 11219, - "nfl": 4691, - "nfldraft": 25002, - "ng": 10352, - "ng": 5215, - "nga": 35477, - "ngc": 29046, - "ngo": 38740, - "ngo": 24821, - "ngos": 34627, - "nguyen": 29947, - "nh": 3760, - "nh": 10803, - "nhc": 44817, - "nhl": 12290, - "nhl": 8167, - "nhlbruins": 39081, - "nhljets": 49357, - "nhm": 39483, - "nhpolitics": 36125, - "nhq": 42368, - "nhra": 30052, - "nhs": 23282, - "nhs": 7695, - "ni": 697, - "ni": 3256, - "nia": 3098, - "niag": 18071, - "niagar": 39298, - "niagara": 18965, - "niall": 41354, - "niall": 8327, - "niallo": 22855, - "niallofficial": 23084, - "niam": 39347, - "nian": 46003, - "nib": 31049, - "nic": 2109, - "nic": 6651, - "nica": 29040, - "nicar": 25119, - "nicaragua": 28423, - "nice": 28386, - "nice": 1805, - "nicely": 12303, - "nicer": 29488, - "nicest": 22967, - "niche": 25279, - "nichol": 7668, - "nicholas": 39814, - "nicholas": 13148, - "nicholls": 38846, - "nichols": 22730, - "nicholson": 28745, - "nick": 4209, - "nick": 4253, - "nickel": 22034, - "nickelo": 28668, - "nickelodeon": 33279, - "nicki": 17738, - "nickimin": 27390, - "nickiminaj": 27593, - "nickjonas": 43862, - "nickname": 24731, - "nicknamed": 45190, - "nicks": 15049, - "nicky": 28893, - "nicky": 22091, - "nico": 20850, - "nico": 17779, - "nicol": 9919, - "nicol": 48274, - "nicola": 21791, - "nicolas": 43813, - "nicolas": 18918, - "nicole": 21246, - "nicole": 10000, - "nicot": 45099, - "nicotine": 46697, - "nie": 9524, - "nie": 3501, - "niece": 12795, - "nieces": 44877, - "niel": 19109, - "niel": 26837, - "niels": 37154, - "nielsen": 28372, - "nier": 13014, - "nies": 10586, - "niest": 15007, - "nieu": 29781, - "nific": 4748, - "nifty": 25604, - "nig": 27933, - "nig": 28099, - "nigan": 48516, - "nigel": 33919, - "nigel": 15153, - "niger": 4524, - "niger": 29920, - "nigeri": 40913, - "nigeria": 6106, - "nigerian": 12167, - "nigerians": 25358, - "nigh": 13525, - "nigh": 48157, - "night": 3870, - "night": 930, - "nightclub": 20418, - "nighter": 41349, - "nighting": 36211, - "nightingale": 40696, - "nightlife": 28823, - "nightly": 28868, - "nightmare": 12867, - "nightmares": 24032, - "nightout": 44257, - "nights": 4296, - "nighttime": 38147, - "nightw": 39956, - "nih": 25783, - "nik": 5126, - "nik": 13705, - "nike": 16300, - "nike": 5783, - "nikeplus": 43154, - "niki": 36136, - "nikita": 37118, - "nikk": 38596, - "nikki": 23156, - "nikki": 16689, - "niko": 43771, - "nikol": 27430, - "nikola": 42146, - "nikon": 25488, - "nikon": 13849, - "nikov": 43960, - "nil": 16852, - "nil": 35030, - "nile": 24252, - "nim": 30402, - "nim": 42093, - "nima": 42586, - "nin": 5794, - "nin": 14145, - "nina": 13891, - "nine": 16213, - "nine": 7330, - "ninety": 48214, - "ning": 6050, - "ning": 762, - "ningham": 23395, - "ningly": 43537, - "nings": 4588, - "nington": 26214, - "ninj": 23225, - "ninja": 11969, - "ninjas": 42796, - "nino": 25633, - "ninten": 6184, - "nintendo": 13969, - "nintendo": 7886, - "nintendoswitch": 16404, - "ninth": 22770, - "nip": 33889, - "nip": 22333, - "nipp": 24634, - "nipple": 45987, - "nipples": 44774, - "nippon": 47960, - "nips": 49241, - "nir": 15503, - "nir": 40057, - "nireland": 45763, - "niro": 47373, - "nirvana": 28300, - "nis": 5609, - "nis": 3786, - "nish": 19834, - "nish": 13256, - "nished": 24141, - "nishi": 32386, - "nishings": 49247, - "nison": 45700, - "niss": 39043, - "nissan": 37635, - "nissan": 11082, - "nist": 17782, - "nister": 36640, - "nit": 4087, - "nit": 19011, - "nite": 8427, - "niti": 43964, - "niti": 45355, - "nitin": 37529, - "nitro": 30726, - "nitrogen": 30706, - "niture": 7840, - "nity": 12707, - "niu": 48187, - "niv": 47300, - "niversary": 29643, - "nix": 48552, - "nix": 32278, - "nixon": 20671, - "nj": 8343, - "nj": 6672, - "njcaa": 48992, - "njpw": 38992, - "nk": 22708, - "nk": 17456, - "nko": 36353, - "nl": 12057, - "nl": 7655, - "nli": 37502, - "nlp": 35680, - "nlwx": 49260, - "nm": 15956, - "nm": 11370, - "nmd": 43331, - "nme": 40454, - "nmwx": 47967, - "nn": 8947, - "nn": 12925, - "nnn": 26277, - "nnnn": 41420, - "no": 578, - "no": 871, - "noaa": 27557, - "noah": 28806, - "noah": 11519, - "nobel": 33742, - "nobel": 15605, - "nobelprize": 46074, - "noble": 29430, - "noble": 12051, - "nobody": 7009, - "noc": 16988, - "noc": 44420, - "nocchi": 46359, - "noch": 38672, - "noche": 29689, - "noches": 44166, - "nock": 16993, - "noctur": 26291, - "nocturnal": 41738, - "nod": 18648, - "nodapl": 39079, - "node": 31434, - "node": 24871, - "nodejs": 39262, - "nodes": 40534, - "noel": 38406, - "noel": 17496, - "nof": 29505, - "noff": 46979, - "nofilter": 16418, - "nog": 31157, - "noh": 40775, - "noi": 43115, - "noi": 39889, - "noida": 33404, - "noir": 39291, - "noir": 12953, - "nois": 22057, - "noise": 41018, - "noise": 9307, - "noises": 31575, - "noisse": 45686, - "noisy": 33495, - "nokia": 17731, - "nol": 8055, - "nola": 13289, - "nolan": 17323, - "nold": 40322, - "nole": 34654, - "noles": 40569, - "nollywood": 43145, - "nology": 42221, - "nom": 2981, - "nom": 12799, - "nomad": 27849, - "noman": 45592, - "nomin": 5643, - "nominate": 17122, - "nominated": 8710, - "nominating": 45747, - "nomination": 14136, - "nominations": 17124, - "nominee": 14122, - "nominees": 17873, - "nomnom": 26962, - "nomore": 35126, - "noms": 35706, - "non": 4282, - "non": 3353, - "none": 29644, - "none": 8906, - "nonetheless": 39675, - "nonfiction": 31654, - "nonprofit": 19315, - "nonprofits": 37935, - "nonsense": 19136, - "nonstop": 30300, - "nont": 25207, - "noo": 6759, - "noo": 46672, - "noodle": 19521, - "noodles": 15782, - "nook": 30088, - "noon": 37693, - "noon": 2347, - "noor": 46978, - "noor": 31323, - "nope": 15625, - "nor": 1062, - "nor": 6190, - "nora": 25890, - "norcal": 41970, - "nord": 19261, - "nord": 36067, - "nordic": 36439, - "nordic": 20734, - "nordstrom": 38562, - "norfolk": 30232, - "norfolk": 12202, - "norm": 10990, - "norm": 22457, - "norma": 35757, - "normal": 28748, - "normal": 5967, - "normali": 45157, - "normally": 15870, - "norman": 22027, - "norman": 11338, - "normandy": 23840, - "normani": 44596, - "norms": 33011, - "norris": 21814, - "norse": 36559, - "norte": 35638, - "north": 3468, - "north": 2188, - "northampton": 49246, - "northampton": 26175, - "northan": 37081, - "northbound": 24228, - "northcarolina": 43386, - "northe": 24675, - "northeast": 42673, - "northeast": 13009, - "northeastern": 28297, - "northeasthour": 42869, - "norther": 26908, - "northern": 17210, - "northern": 5049, - "northernlights": 48940, - "northkorea": 38495, - "northside": 45957, - "northumber": 22295, - "northumberland": 22922, - "northwales": 49371, - "northwest": 12894, - "northwestern": 23685, - "norton": 18032, - "norway": 8780, - "norwe": 14414, - "norwegian": 15971, - "norwich": 37629, - "norwich": 15812, - "norwood": 37889, - "nos": 13420, - "nose": 24192, - "nose": 8231, - "noses": 48163, - "nostal": 12076, - "nostalgia": 16622, - "nostalgic": 24468, - "not": 2534, - "not": 783, - "notable": 22023, - "notch": 19476, - "notdead": 42059, - "note": 10910, - "note": 3246, - "notebook": 16365, - "notebooks": 37623, - "noted": 22501, - "notes": 5795, - "nothin": 24291, - "nothing": 28412, - "nothing": 2586, - "noti": 10686, - "notic": 6915, - "notice": 6683, - "noticeable": 40857, - "noticed": 9324, - "notices": 33459, - "noticias": 47759, - "noticing": 37571, - "notification": 22512, - "notifications": 23169, - "notified": 39454, - "noting": 38649, - "notion": 37856, - "notjust": 33212, - "notjustlakes": 45803, - "notmy": 39301, - "noto": 29878, - "noton": 48258, - "notor": 21711, - "notori": 44065, - "notorious": 22489, - "notre": 24397, - "notre": 15306, - "notredame": 34077, - "notsorry": 34361, - "nott": 9333, - "nott": 34989, - "notte": 47308, - "nottingham": 12852, - "notts": 25598, - "nou": 8751, - "nou": 30953, - "noun": 33663, - "nouri": 23796, - "nourish": 46025, - "nourished": 48354, - "nous": 29485, - "nouveau": 29948, - "nouvel": 34215, - "nov": 2264, - "nov": 4293, - "nova": 11236, - "novak": 26465, - "novasco": 33785, - "novascotia": 34744, - "novation": 39753, - "nove": 30507, - "novel": 15044, - "novel": 6080, - "novelist": 27314, - "novella": 42770, - "novels": 16040, - "novelty": 37750, - "november": 3680, - "nover": 37465, - "novi": 47957, - "novice": 33743, - "novo": 27504, - "novo": 36581, - "now": 2040, - "now": 692, - "nowadays": 26155, - "nowhere": 14108, - "nowplaying": 3708, - "nowwatching": 30852, - "nox": 27406, - "noxi": 39304, - "noxious": 42833, - "noy": 32787, - "np": 18205, - "np": 6314, - "npa": 42378, - "npc": 33966, - "npr": 39941, - "npr": 24078, - "nps": 22025, - "npt": 47231, - "nr": 6574, - "nr": 9713, - "nra": 17286, - "nrc": 45786, - "nrf": 47982, - "nrg": 48662, - "nrl": 27142, - "nrl": 18127, - "ns": 12405, - "ns": 1373, - "nsa": 23004, - "nsc": 32792, - "nsd": 36659, - "nsf": 34180, - "nsfw": 19847, - "nsi": 47824, - "nsw": 21301, - "nsw": 11693, - "nswpol": 44434, - "nt": 10902, - "nt": 3207, - "ntr": 30845, - "nts": 43775, - "ntt": 22859, - "ntv": 24807, - "ntv": 45304, - "nu": 1156, - "nu": 9444, - "nucle": 25693, - "nuclear": 34136, - "nuclear": 7279, - "nude": 16630, - "nudes": 32122, - "nue": 22834, - "nuestra": 45649, - "nuestro": 38590, - "nuev": 47861, - "nueva": 48810, - "nuevo": 30265, - "nufc": 15720, - "nuff": 37324, - "nug": 13471, - "nugent": 47457, - "nugget": 25448, - "nuggets": 18970, - "nuh": 45950, - "nuit": 38815, - "nuk": 39228, - "nuke": 39399, - "nul": 29358, - "null": 47376, - "num": 17896, - "num": 30534, - "numb": 34639, - "numb": 39427, - "number": 44078, - "number": 2842, - "numbered": 25975, - "numbers": 6121, - "numer": 11442, - "numerous": 17082, - "numis": 39100, - "nun": 12511, - "nun": 28540, - "nunavut": 48626, - "nunes": 40697, - "nuns": 44061, - "nup": 46757, - "nur": 3920, - "nur": 33493, - "nure": 42480, - "nurse": 37547, - "nurse": 10058, - "nursery": 15540, - "nurses": 12938, - "nursing": 11126, - "nurture": 38865, - "nurturing": 45229, - "nus": 25157, - "nus": 18239, - "nut": 10358, - "nut": 6491, - "nutcracker": 36733, - "nutella": 27312, - "nutr": 6198, - "nutri": 15470, - "nutrient": 32900, - "nutrients": 24668, - "nutriti": 17978, - "nutrition": 41546, - "nutrition": 7989, - "nutritional": 26457, - "nutritious": 30387, - "nuts": 8644, - "nutshell": 26659, - "nutty": 39846, - "nv": 17217, - "nv": 16985, - "nvi": 22847, - "nvidia": 27325, - "nw": 7826, - "nw": 7030, - "nwa": 34237, - "nwo": 40976, - "nws": 23333, - "nws": 30998, - "nwsl": 48394, - "nwt": 25029, - "nx": 18810, - "nx": 16997, - "nxt": 35037, - "nxt": 17804, - "ny": 1383, - "ny": 1350, - "nya": 24165, - "nyc": 13304, - "nyc": 2832, - "nycc": 27187, - "nycfc": 47497, - "nye": 40723, - "nye": 13416, - "nyfw": 21089, - "nyk": 46841, - "nylon": 25915, - "nyo": 41534, - "nyo": 44586, - "nypd": 42293, - "nypd": 18279, - "nyr": 32538, - "nyrd": 47936, - "nys": 36375, - "nys": 23423, - "nyse": 32650, - "nyt": 46311, - "nyt": 12816, - "nytimes": 13772, - "nyu": 43143, - "nyu": 31355, - "nz": 10142, - "nz": 7082, - "o": 78, - "o": 334, - "oa": 11994, - "oahu": 37790, - "oak": 6010, - "oak": 7221, - "oakland": 42663, - "oakland": 12077, - "oakley": 27810, - "oaks": 16734, - "oakville": 38500, - "oasis": 18185, - "oat": 20095, - "oat": 34132, - "oates": 47094, - "oath": 20108, - "oatmeal": 26374, - "oats": 24150, - "oax": 43090, - "oaxaca": 47818, - "ob": 1411, - "ob": 14908, - "oba": 42902, - "oba": 15147, - "obam": 13174, - "obama": 4276, - "obamacare": 18005, - "obe": 11897, - "obe": 29117, - "obedience": 48921, - "ober": 15284, - "obese": 41757, - "obesity": 19499, - "obey": 26926, - "obi": 21454, - "obi": 18414, - "obile": 20513, - "obitu": 39218, - "obituary": 43580, - "objec": 7970, - "object": 14115, - "objective": 23663, - "objectives": 30238, - "objects": 13770, - "obl": 31452, - "oblast": 42672, - "obli": 11416, - "obligation": 34473, - "obligations": 38232, - "obligatory": 35020, - "oblivion": 45323, - "obo": 46001, - "obo": 26618, - "obrien": 31946, - "obs": 39162, - "obsc": 20392, - "obscure": 33337, - "obse": 8433, - "observ": 9050, - "observation": 20250, - "observations": 27409, - "observatory": 21236, - "observe": 23217, - "observed": 21267, - "observer": 22077, - "observers": 47544, - "observing": 28359, - "obsessed": 9744, - "obsession": 15718, - "obsi": 47323, - "obsole": 35561, - "obsolete": 40628, - "obst": 29398, - "obstac": 24075, - "obstacle": 29751, - "obstacles": 24480, - "obste": 49103, - "obstru": 44876, - "obstruc": 38762, - "obstruction": 40240, - "obtain": 26555, - "obtained": 29322, - "obvious": 13959, - "obviously": 10068, - "oc": 1566, - "oc": 6603, - "oca": 31120, - "ocal": 38148, - "occ": 43940, - "occa": 8530, - "occasion": 12280, - "occasional": 33059, - "occasionally": 32479, - "occasions": 26154, - "occer": 20804, - "occi": 42994, - "occu": 7863, - "occult": 42529, - "occup": 11152, - "occupation": 18624, - "occupational": 30644, - "occupied": 17271, - "occupy": 22453, - "occupy": 24210, - "occur": 11264, - "occur": 21813, - "occurred": 19850, - "occurrence": 40615, - "occurring": 31335, - "occurs": 26563, - "ocd": 35904, - "oce": 3509, - "ocean": 12941, - "ocean": 4918, - "oceans": 16792, - "och": 29334, - "och": 32011, - "oche": 33045, - "oci": 9891, - "ocity": 46039, - "ock": 33579, - "ock": 21313, - "ocks": 22410, - "oclock": 36274, - "oco": 32553, - "ocon": 33090, - "ocr": 45813, - "ocre": 40320, - "ocs": 27297, - "oct": 4565, - "octa": 23444, - "octag": 37768, - "octagon": 49167, - "octane": 43040, - "octavia": 47416, - "octo": 31032, - "october": 3481, - "octopus": 22327, - "ocu": 22709, - "oculus": 30082, - "od": 4886, - "od": 9719, - "oda": 24777, - "oday": 41954, - "odd": 15525, - "odd": 11387, - "oddly": 34213, - "odds": 11555, - "ode": 19125, - "ode": 19639, - "odell": 41556, - "odessa": 43574, - "odi": 12223, - "odi": 18853, - "odin": 35175, - "odisha": 15737, - "odo": 49188, - "odo": 40993, - "odor": 39509, - "odu": 35095, - "odu": 39904, - "odyssey": 19991, - "oe": 24251, - "oe": 11667, - "oec": 24288, - "oecd": 30816, - "oem": 29650, - "oes": 3643, - "of": 684, - "of": 539, - "ofa": 29774, - "ofc": 19877, - "ofe": 30000, - "ofer": 47322, - "off": 892, - "off": 1007, - "offe": 8261, - "offee": 34059, - "offen": 7231, - "offence": 34594, - "offences": 33972, - "offended": 30765, - "offender": 48294, - "offenders": 35878, - "offense": 15253, - "offensive": 11037, - "offer": 20607, - "offer": 3271, - "offered": 9395, - "offering": 6896, - "offerings": 24535, - "offers": 4679, - "offic": 3276, - "office": 18033, - "office": 2171, - "officeof": 38750, - "officeofrg": 47100, - "officer": 4683, - "officers": 6335, - "offices": 10933, - "offici": 1401, - "official": 5768, - "official": 1868, - "officially": 4226, - "officials": 7658, - "officiel": 26548, - "offl": 16851, - "offline": 22724, - "offro": 32198, - "offroad": 37173, - "offs": 23987, - "offseason": 25485, - "offset": 28843, - "offshore": 15496, - "offside": 49347, - "offspring": 38635, - "offthe": 38189, - "ofi": 36692, - "ofi": 49090, - "oficial": 18061, - "oft": 16693, - "oftball": 39768, - "often": 4864, - "ofthe": 7592, - "oftheday": 6988, - "oftheweek": 20654, - "oftheyear": 33975, - "og": 11542, - "og": 8555, - "oga": 47312, - "ogden": 42011, - "ogil": 39013, - "ography": 22399, - "ogue": 24761, - "ogun": 48970, - "oh": 5648, - "oh": 1779, - "ohana": 48330, - "ohh": 23076, - "ohhh": 27697, - "ohhhh": 40201, - "ohi": 5207, - "ohio": 18951, - "ohio": 6155, - "ohiostate": 41324, - "ohl": 45547, - "ohl": 41095, - "ohmy": 29758, - "ohn": 48043, - "ohs": 39542, - "ohwx": 47993, - "oi": 27357, - "oi": 13934, - "oic": 45554, - "oid": 14758, - "oids": 21847, - "oil": 11973, - "oil": 2870, - "oiland": 32316, - "oilandgas": 34130, - "oilers": 21627, - "oilpainting": 34279, - "oils": 17886, - "oily": 47550, - "oir": 48079, - "oir": 37113, - "ois": 23262, - "oit": 18453, - "oitnb": 34865, - "oj": 30986, - "oj": 34553, - "ok": 1944, - "ok": 2481, - "oka": 42258, - "oka": 19092, - "okan": 41263, - "okanagan": 43233, - "okay": 4917, - "okc": 42418, - "okc": 18357, - "oke": 26636, - "oke": 23598, - "oki": 20390, - "okin": 30687, - "okinawa": 35877, - "okla": 9431, - "oklahoma": 10170, - "oko": 26892, - "oko": 26095, - "okstate": 36356, - "oktoberfest": 32026, - "oku": 45010, - "oku": 43829, - "okwx": 27336, - "ol": 562, - "ol": 2985, - "ola": 20499, - "ola": 3373, - "olaf": 39709, - "olan": 48489, - "olan": 24227, - "oland": 26452, - "olas": 40800, - "old": 4931, - "old": 896, - "olde": 37731, - "older": 7700, - "oldest": 9285, - "oldham": 29929, - "oldie": 35280, - "oldies": 36278, - "oldman": 48614, - "olds": 8580, - "oldschool": 44384, - "oldschool": 25133, - "oldsmobile": 45396, - "ole": 9089, - "ole": 1947, - "oled": 46768, - "oler": 24069, - "oles": 16962, - "olf": 16346, - "olga": 34779, - "oli": 3811, - "oli": 8810, - "olic": 31341, - "oligar": 46185, - "olim": 47769, - "olin": 37823, - "olin": 18283, - "olina": 34711, - "oline": 17441, - "oling": 38033, - "olini": 36040, - "olis": 49397, - "olithic": 35574, - "olive": 22486, - "olive": 9898, - "oliver": 22882, - "oliver": 9261, - "olives": 27149, - "olivi": 20773, - "olivia": 11697, - "olivier": 23891, - "oll": 32270, - "oll": 15510, - "olla": 31908, - "ollie": 24434, - "olls": 42697, - "olly": 23998, - "olo": 14628, - "olo": 7606, - "ological": 12345, - "ologist": 23442, - "ologists": 30912, - "ology": 4627, - "olor": 29245, - "olph": 25077, - "ols": 2236, - "olsen": 26307, - "olson": 28046, - "olt": 46252, - "olu": 16502, - "olu": 46302, - "olulu": 27645, - "oly": 20323, - "oly": 24823, - "olym": 3594, - "olympi": 13597, - "olympia": 23965, - "olympiad": 47694, - "olympian": 25420, - "olympians": 44583, - "olympic": 26099, - "olympic": 6388, - "olympics": 7629, - "olympus": 30960, - "om": 547, - "om": 3932, - "oma": 44603, - "oma": 5358, - "omaha": 16509, - "oman": 22088, - "oman": 10871, - "omar": 19488, - "omar": 13367, - "omars": 37099, - "omas": 36023, - "omat": 40788, - "omb": 34447, - "ombe": 35967, - "omd": 49346, - "ome": 3693, - "ome": 5832, - "omed": 16835, - "omega": 13465, - "omelette": 38789, - "omen": 9969, - "omen": 25469, - "oment": 43683, - "omeo": 39844, - "omer": 24087, - "omer": 17902, - "omes": 25736, - "ometer": 20060, - "ometric": 38702, - "omez": 12541, - "omf": 47496, - "omfg": 12523, - "omg": 35233, - "omg": 3186, - "omi": 24097, - "omi": 10341, - "omic": 40536, - "omic": 12793, - "omics": 15138, - "omile": 46915, - "omin": 16457, - "omination": 42571, - "oming": 10796, - "ominous": 40914, - "omni": 18793, - "omni": 39489, - "omnibus": 44760, - "omnic": 48383, - "omo": 14478, - "omo": 11066, - "omon": 48758, - "omor": 29431, - "oms": 3770, - "omusic": 38965, - "omy": 40805, - "omy": 6884, - "on": 521, - "on": 525, - "ona": 2687, - "onair": 29511, - "onal": 918, - "onboard": 21689, - "once": 16331, - "once": 2654, - "onceupon": 28122, - "onceuponatime": 33505, - "onco": 46700, - "oncology": 24593, - "ond": 27918, - "ond": 2636, - "onda": 32643, - "onday": 29864, - "onde": 44532, - "ondo": 29529, - "ondon": 42043, - "ondon": 11851, - "one": 1980, - "one": 637, - "onec": 27746, - "oned": 28012, - "oned": 4698, - "onedirection": 16245, - "onee": 44433, - "oneill": 44808, - "onelove": 47417, - "onent": 12147, - "onents": 11709, - "oneof": 48478, - "onep": 20440, - "onepiece": 43153, - "oneplus": 25981, - "oner": 30055, - "oner": 6071, - "oners": 12324, - "ones": 20757, - "ones": 1575, - "oneself": 46874, - "onesie": 33237, - "oness": 25379, - "onet": 36058, - "oneteam": 41094, - "onetsy": 33392, - "onew": 43848, - "onews": 18696, - "onex": 49116, - "oney": 44498, - "oney": 9408, - "onf": 41790, - "onfox": 29874, - "ong": 2787, - "ong": 846, - "onga": 30259, - "ongchang": 35071, - "ongi": 21754, - "ongo": 31226, - "ongoing": 10393, - "ongs": 12143, - "oni": 4385, - "oni": 8048, - "onia": 8001, - "onial": 27599, - "onian": 21090, - "onic": 15838, - "onic": 3711, - "onica": 14631, - "onics": 9779, - "onie": 35249, - "onies": 22601, - "onimo": 41271, - "oning": 5197, - "onion": 10985, - "onions": 15255, - "onist": 10099, - "onists": 19659, - "onix": 27370, - "onized": 43657, - "onlin": 31103, - "online": 12940, - "online": 2027, - "onlinemarketing": 41820, - "onlineshopping": 38587, - "only": 11646, - "only": 1033, - "onlyin": 32947, - "onna": 25438, - "onna": 35458, - "onnaise": 48934, - "onne": 23466, - "onnell": 45613, - "ono": 28165, - "ono": 14388, - "onom": 48014, - "onomy": 36873, - "onpoli": 20708, - "ons": 26076, - "ons": 708, - "onsale": 36324, - "onset": 30527, - "onsite": 37336, - "onstage": 21821, - "onstorm": 49333, - "ont": 34303, - "ont": 11157, - "ontari": 6739, - "ontario": 42766, - "ontario": 7436, - "onte": 34723, - "onthe": 12241, - "onther": 46563, - "ontheroad": 47516, - "onthisday": 6862, - "onto": 11745, - "onto": 3141, - "ontology": 37364, - "ontour": 32155, - "onu": 44142, - "onward": 34827, - "onwards": 20682, - "ony": 9490, - "ony": 2926, - "onym": 11483, - "onymous": 13038, - "onyx": 31353, - "oo": 574, - "oo": 2822, - "ood": 16429, - "ood": 738, - "oodle": 45289, - "oods": 44660, - "oof": 42270, - "ooh": 16806, - "ook": 22326, - "ook": 8394, - "ooks": 31082, - "ool": 37702, - "ool": 929, - "oom": 22786, - "oom": 15002, - "oomf": 40607, - "oon": 35651, - "oon": 7100, - "ooo": 9571, - "oooh": 28927, - "oooo": 4002, - "oooo": 13643, - "ooooo": 12532, - "oooooo": 43590, - "oooooo": 20372, - "ooooooo": 30859, - "oooooooo": 15473, - "oooooooo": 43408, - "oooooooooooooooo": 48645, - "oop": 7326, - "ooper": 39906, - "oops": 9116, - "oor": 35239, - "oos": 9896, - "oosa": 30834, - "oose": 38941, - "oot": 17667, - "ootball": 28914, - "ootd": 16547, - "ooth": 12682, - "oott": 34316, - "ooza": 22809, - "op": 676, - "op": 3691, - "opa": 28949, - "opal": 28982, - "opar": 18167, - "opath": 33079, - "opathic": 37521, - "opathy": 28466, - "opau": 27239, - "opd": 38288, - "ope": 31694, - "ope": 11440, - "opec": 33138, - "opel": 36952, - "open": 3647, - "open": 1488, - "openaccess": 26591, - "opend": 28069, - "opendata": 35709, - "openday": 46991, - "opened": 5303, - "opener": 8998, - "openhouse": 36091, - "opening": 33728, - "opening": 2516, - "openingday": 36359, - "openings": 27643, - "openly": 23005, - "opens": 4801, - "opensource": 29930, - "oper": 2796, - "oper": 37533, - "opera": 8056, - "operate": 19306, - "operated": 23031, - "operates": 38675, - "operating": 12218, - "operation": 27173, - "operation": 7639, - "operational": 18237, - "operations": 8106, - "operative": 28380, - "operator": 15972, - "operators": 19267, - "opers": 48728, - "opes": 37258, - "oph": 6796, - "opha": 38634, - "ophel": 45017, - "ophelia": 49118, - "ophi": 44547, - "ophile": 35915, - "opho": 12900, - "ophobia": 21111, - "ophobic": 29934, - "ophon": 25120, - "ophone": 26345, - "ophthal": 33135, - "ophy": 28539, - "opi": 40056, - "opi": 48994, - "opin": 7636, - "opini": 14825, - "opinion": 7843, - "opinions": 16192, - "opio": 17371, - "opioid": 22833, - "opioids": 47578, - "opla": 36270, - "ople": 25663, - "opol": 15173, - "opoly": 23729, - "opor": 39650, - "opoulos": 42020, - "opp": 2020, - "opp": 21024, - "oppa": 23637, - "oppo": 7399, - "oppo": 41770, - "opponent": 17002, - "opponents": 19664, - "oppor": 2914, - "opportun": 2939, - "opportunities": 5978, - "opportunity": 4004, - "oppos": 10091, - "oppose": 23617, - "opposed": 22509, - "opposes": 47471, - "opposing": 24376, - "opposite": 12872, - "opposition": 11062, - "oppre": 17341, - "oppressed": 41492, - "oppression": 30650, - "opra": 28291, - "oprah": 22562, - "opry": 35340, - "ops": 3054, - "opt": 45103, - "opt": 27188, - "opted": 42035, - "opti": 6580, - "optic": 25190, - "optic": 24755, - "optical": 16822, - "optics": 27165, - "optim": 22331, - "optimal": 25235, - "optimi": 9737, - "optimis": 39459, - "optimism": 25226, - "optimist": 44581, - "optimistic": 23104, - "optimization": 25125, - "optimize": 30456, - "optimized": 43939, - "optimizing": 49157, - "optimum": 35974, - "optimus": 43453, - "option": 8464, - "optional": 25411, - "options": 7063, - "optome": 35533, - "opul": 39858, - "opus": 33295, - "opy": 21835, - "or": 523, - "or": 541, - "ora": 4301, - "orac": 24673, - "oracle": 37308, - "oracle": 15966, - "orah": 40820, - "orail": 45120, - "oral": 32490, - "oral": 6007, - "orama": 33619, - "oran": 32209, - "oran": 28395, - "orang": 22116, - "orange": 13957, - "orange": 4287, - "oranges": 32417, - "orangu": 36112, - "orb": 28894, - "orb": 36958, - "orbit": 19713, - "orbital": 40312, - "orc": 44305, - "orca": 18631, - "orcas": 47676, - "orch": 11893, - "orchar": 40226, - "orchard": 19530, - "orche": 8004, - "orchestr": 42937, - "orchestra": 9573, - "orchestral": 40285, - "orchi": 23696, - "orchid": 18678, - "orchids": 28376, - "ord": 26903, - "ord": 11502, - "orda": 33462, - "ordained": 38302, - "order": 24613, - "order": 2191, - "ordered": 8335, - "ordering": 19588, - "orderly": 43457, - "orders": 6187, - "ordin": 4378, - "ordinance": 38583, - "ordinary": 8012, - "ore": 3580, - "ore": 1423, - "orean": 36696, - "ored": 5133, - "oregon": 21759, - "oregon": 8035, - "oren": 21645, - "oreo": 21873, - "oreos": 41688, - "ores": 17328, - "org": 3401, - "org": 5593, - "organ": 3338, - "organ": 13213, - "organi": 3636, - "organic": 24080, - "organic": 5980, - "organics": 44199, - "organis": 13204, - "organisation": 15868, - "organisations": 20651, - "organise": 36073, - "organised": 13191, - "organiser": 49141, - "organisers": 35778, - "organising": 22787, - "organisms": 37041, - "organiz": 11107, - "organization": 8064, - "organizational": 29510, - "organizations": 13453, - "organize": 19973, - "organized": 10681, - "organizer": 23905, - "organizers": 27191, - "organizing": 15779, - "organs": 29872, - "orgs": 29500, - "ori": 1540, - "ori": 8693, - "oria": 11474, - "orial": 8648, - "orian": 21193, - "oric": 43810, - "orice": 41341, - "orie": 18815, - "orient": 13149, - "orient": 30770, - "oriental": 23056, - "orientation": 16873, - "oriente": 40390, - "oriented": 24596, - "orienteering": 42985, - "ories": 5934, - "orig": 2273, - "orig": 38463, - "origami": 31832, - "origin": 2555, - "origin": 12372, - "original": 18496, - "original": 3117, - "originally": 12849, - "originals": 16953, - "originated": 41823, - "origins": 16291, - "orin": 39863, - "oring": 3006, - "orio": 24308, - "orioles": 21430, - "orion": 21765, - "oris": 37064, - "orities": 7903, - "ority": 5556, - "orium": 12015, - "ork": 22202, - "ork": 37235, - "orkney": 34254, - "orl": 39465, - "orlando": 32247, - "orlando": 7827, - "orleans": 11127, - "orm": 38464, - "orn": 25412, - "orn": 8130, - "ornam": 36122, - "ornament": 23409, - "ornamental": 46270, - "ornaments": 28968, - "ornate": 46865, - "orni": 27713, - "ornithology": 38275, - "orns": 19340, - "oro": 9848, - "oro": 14573, - "orous": 19286, - "orph": 17318, - "orphan": 22718, - "orphan": 28994, - "orphanage": 45196, - "orphaned": 46792, - "orphans": 36588, - "orphe": 39186, - "orr": 32977, - "ors": 1127, - "orship": 20846, - "ort": 1019, - "ortega": 39727, - "orth": 22584, - "orth": 24461, - "ortho": 11366, - "orthodon": 37730, - "orthodox": 19008, - "orthop": 42123, - "orthopedic": 49341, - "ortiz": 23544, - "orton": 37238, - "oru": 44629, - "oru": 31281, - "orum": 42724, - "orwell": 41218, - "ory": 16983, - "ory": 1985, - "os": 2211, - "os": 1299, - "osa": 16340, - "osa": 17237, - "osaka": 21347, - "osborne": 22402, - "osbourne": 43376, - "osc": 5092, - "oscar": 21157, - "oscar": 8191, - "oscars": 11098, - "osce": 37303, - "oscill": 38272, - "ose": 46942, - "ose": 22541, - "osh": 30717, - "osh": 35011, - "osha": 33907, - "oshi": 34770, - "osi": 25247, - "osi": 17636, - "osis": 13903, - "osity": 12730, - "oslo": 20547, - "osm": 31626, - "osman": 46539, - "oso": 42793, - "oso": 21285, - "osp": 24387, - "ospre": 49001, - "osprey": 37893, - "oss": 29362, - "oss": 34640, - "ost": 23701, - "ost": 18749, - "oste": 20632, - "osteo": 43163, - "oster": 31781, - "ostr": 33673, - "ostrich": 47640, - "osu": 29480, - "osu": 19818, - "oswald": 38471, - "ot": 1863, - "ot": 2062, - "ota": 17509, - "ota": 8741, - "otago": 45919, - "otaku": 40743, - "otas": 47616, - "otc": 37934, - "otd": 5683, - "ote": 28511, - "ote": 19744, - "otes": 27280, - "oth": 33262, - "oth": 33519, - "other": 9758, - "other": 1010, - "others": 3326, - "otherwise": 12376, - "oti": 19567, - "oti": 45564, - "otic": 9671, - "otis": 28246, - "otive": 10877, - "oto": 23946, - "oto": 23399, - "otp": 29822, - "otr": 38685, - "ots": 5769, - "ott": 10167, - "ott": 7936, - "otta": 7623, - "otta": 20941, - "ottawa": 49027, - "ottawa": 9019, - "otte": 35214, - "otter": 34710, - "otter": 22456, - "otters": 38883, - "otti": 36721, - "ottnews": 33995, - "otto": 17730, - "ottoman": 27503, - "otw": 35259, - "otwol": 46868, - "ou": 520, - "ou": 6544, - "ouat": 32954, - "ouch": 13493, - "oud": 1359, - "oue": 48838, - "ouf": 34618, - "ough": 4204, - "ough": 991, - "ought": 2253, - "oughton": 36860, - "oui": 39421, - "ouk": 21796, - "oul": 20253, - "oul": 8081, - "ould": 859, - "oulos": 32808, - "oun": 636, - "oun": 20960, - "ounce": 15027, - "ounces": 30299, - "ound": 2013, - "ound": 853, - "oundation": 40132, - "ounded": 9634, - "ounding": 11944, - "ounds": 2753, - "oung": 35875, - "oung": 25341, - "ounge": 29427, - "ount": 43801, - "ount": 4172, - "ounts": 10963, - "oup": 32815, - "our": 727, - "our": 581, - "oura": 29806, - "oura": 36352, - "ourable": 24126, - "ourage": 34525, - "oural": 45840, - "oured": 6956, - "ouri": 12696, - "ouring": 12000, - "ourism": 25496, - "ourke": 26480, - "ourlives": 37541, - "ouro": 41224, - "ours": 1491, - "ourse": 15415, - "ourselves": 10124, - "ourt": 22960, - "oury": 29484, - "ous": 1987, - "ous": 879, - "ouse": 32048, - "ouse": 7603, - "ouses": 33666, - "ously": 2501, - "ousness": 10689, - "ousy": 28302, - "out": 1130, - "out": 620, - "outa": 35187, - "outage": 27320, - "outages": 40353, - "outback": 28532, - "outbound": 41256, - "outbreak": 20103, - "outcome": 16552, - "outcomes": 14016, - "outdated": 38313, - "outdoor": 19184, - "outdoor": 6368, - "outdoors": 10469, - "oute": 44180, - "outed": 34435, - "outer": 30499, - "outer": 14188, - "outes": 39600, - "outfield": 41826, - "outfit": 6525, - "outfits": 16366, - "outfitters": 37725, - "outfy": 34920, - "outgoing": 27302, - "outh": 16933, - "outh": 8111, - "outine": 35452, - "outing": 11251, - "outlander": 45820, - "outlander": 17095, - "outlaw": 37498, - "outlaw": 27340, - "outlaws": 30935, - "outlet": 16855, - "outlets": 20822, - "outline": 26894, - "outlines": 29159, - "outlining": 45960, - "outlook": 12983, - "outof": 43958, - "outpatient": 46603, - "outpost": 44622, - "output": 17255, - "outra": 14262, - "outrage": 23577, - "outraged": 43402, - "outrageous": 29342, - "outre": 14373, - "outreach": 15297, - "outright": 38200, - "outs": 5790, - "outsi": 22515, - "outside": 47693, - "outside": 2782, - "outsider": 41196, - "outsiders": 41742, - "outskirts": 42088, - "outsourcing": 34543, - "outstanding": 6387, - "outta": 15807, - "outtuesday": 48692, - "outw": 34650, - "oux": 40960, - "oux": 14228, - "ov": 6420, - "ov": 8479, - "ova": 12762, - "oval": 15039, - "ovarian": 42913, - "ovation": 24333, - "ove": 8649, - "ove": 15456, - "oven": 44620, - "oven": 12579, - "over": 1658, - "over": 962, - "overall": 6914, - "overboard": 42982, - "overcame": 47235, - "overcast": 36942, - "overcome": 14365, - "overcoming": 29348, - "overdose": 27017, - "overdrive": 40088, - "overdue": 30240, - "overflow": 32885, - "overflowing": 45370, - "overhaul": 31531, - "overhead": 20321, - "overland": 38808, - "overlay": 44827, - "overload": 24327, - "overlook": 35767, - "overlooked": 27632, - "overlooking": 17319, - "overly": 28820, - "overnight": 9913, - "overpass": 44310, - "overrated": 38214, - "overs": 45774, - "overs": 17329, - "overseas": 15100, - "oversight": 32494, - "oversized": 31557, - "overtime": 19347, - "overturned": 31048, - "overview": 14789, - "overwatch": 18124, - "overweight": 43465, - "overwhel": 12204, - "overwhelmed": 23459, - "overwhelming": 20306, - "overwhelmingly": 43549, - "ovi": 32508, - "ovic": 22417, - "ovich": 27623, - "ovie": 47677, - "ovo": 41920, - "ovo": 18065, - "ovski": 26167, - "ow": 2032, - "ow": 2250, - "owa": 32770, - "owe": 19073, - "owed": 37641, - "owen": 24838, - "owen": 12056, - "owens": 20664, - "owes": 35069, - "owing": 48582, - "owl": 34332, - "owl": 9899, - "owls": 18247, - "own": 3845, - "own": 1758, - "owned": 8536, - "owner": 5019, - "owners": 7712, - "ownership": 16583, - "owning": 24661, - "owns": 17533, - "owo": 46142, - "ows": 27423, - "owski": 22573, - "ox": 3282, - "ox": 12071, - "oxfam": 45466, - "oxford": 28588, - "oxford": 8824, - "oxfordshire": 37855, - "oxi": 33731, - "oxi": 48147, - "oxid": 17701, - "oxide": 28235, - "oxo": 37088, - "oxy": 12432, - "oxygen": 16214, - "oy": 6638, - "oy": 12437, - "oya": 38894, - "oye": 48677, - "oyster": 40545, - "oyster": 17253, - "oysters": 22672, - "oz": 10584, - "oz": 6044, - "ozar": 31848, - "ozil": 41365, - "ozone": 37052, - "ozzy": 39549, - "p": 79, - "p": 335, - "pa": 765, - "pa": 2217, - "paa": 32812, - "pab": 9354, - "pablo": 42172, - "pablo": 14473, - "pac": 2332, - "pac": 7608, - "pace": 40600, - "pace": 9450, - "paced": 32611, - "pacers": 23976, - "paces": 43001, - "paci": 5699, - "pacific": 19723, - "pacific": 6654, - "pacing": 45202, - "pack": 2711, - "pack": 3420, - "package": 7053, - "packaged": 29656, - "packages": 14305, - "packaging": 11658, - "packard": 46421, - "packed": 5883, - "packer": 28209, - "packers": 14294, - "packet": 25022, - "packets": 40448, - "packing": 9829, - "packs": 11086, - "paco": 41364, - "pacqui": 28456, - "pacquiao": 30485, - "pact": 27182, - "pad": 3798, - "pad": 7601, - "padded": 42253, - "paddington": 33162, - "paddle": 38276, - "paddle": 20811, - "paddling": 40645, - "paddock": 29590, - "paddy": 33103, - "paddy": 19855, - "padi": 47037, - "padilla": 22380, - "padma": 44595, - "padma": 46457, - "padre": 38343, - "padres": 22829, - "pads": 17353, - "paedi": 41488, - "paella": 46924, - "paf": 47185, - "pafc": 49259, - "pag": 4151, - "pag": 30525, - "pagan": 27854, - "page": 14996, - "page": 2504, - "pageant": 22139, - "pages": 8082, - "pagoda": 44309, - "pah": 41054, - "pah": 26884, - "pai": 20624, - "pai": 21198, - "paid": 5057, - "paige": 33659, - "paige": 16022, - "paign": 31796, - "pain": 2141, - "pain": 4495, - "paine": 38069, - "painful": 16361, - "pains": 25639, - "paint": 7948, - "paint": 5185, - "paintball": 39730, - "painted": 6433, - "painter": 10888, - "painters": 35703, - "painting": 49164, - "painting": 3086, - "paintings": 9956, - "paints": 21672, - "pair": 19848, - "pair": 4038, - "paired": 12433, - "pairing": 16313, - "pairings": 41152, - "pairs": 9950, - "pais": 16878, - "paisley": 22954, - "pajam": 24110, - "pajama": 40244, - "pajamas": 37231, - "pak": 13186, - "pak": 9094, - "paki": 3438, - "pakistan": 10713, - "pakistan": 3994, - "pakistani": 14050, - "pakistanis": 45707, - "pakv": 38196, - "pal": 1850, - "pal": 3611, - "pala": 17895, - "palace": 6381, - "palaces": 45625, - "palad": 28371, - "palae": 43379, - "palais": 35673, - "palate": 34666, - "palawan": 48202, - "palazzo": 36006, - "pale": 4768, - "pale": 12518, - "paleo": 36741, - "paleo": 22198, - "paler": 38028, - "palermo": 40635, - "palestin": 9449, - "palestine": 11682, - "palestinian": 11764, - "palestinians": 21874, - "palette": 13901, - "pali": 48063, - "palin": 40153, - "palis": 44256, - "pality": 27296, - "pall": 35817, - "palla": 21208, - "palladium": 37888, - "pallet": 39057, - "palli": 28954, - "palliative": 46014, - "pally": 46073, - "palm": 19651, - "palm": 8612, - "palma": 29888, - "palmer": 40112, - "palmer": 13633, - "palms": 27059, - "palo": 31562, - "palom": 47698, - "palooza": 25861, - "pals": 11043, - "palsy": 46651, - "pam": 8228, - "pam": 18513, - "pamela": 26991, - "pamp": 37653, - "pamper": 44345, - "pamph": 41332, - "pan": 1072, - "pan": 7437, - "panam": 24606, - "panama": 15522, - "panas": 26207, - "panasonic": 29750, - "pancake": 18723, - "pancakes": 15308, - "panch": 27251, - "pancra": 42472, - "pancre": 27708, - "pancreatic": 49337, - "pancy": 41625, - "pand": 5631, - "panda": 12952, - "pandas": 35119, - "pande": 38419, - "pandey": 34895, - "pandit": 41191, - "pandor": 30250, - "pandora": 17727, - "pandoramusic": 42344, - "pane": 27470, - "panel": 3724, - "paneli": 19410, - "panelist": 39719, - "panelists": 24619, - "panels": 12735, - "panera": 48471, - "pang": 16756, - "pang": 23672, - "panhandle": 40919, - "pani": 36092, - "panic": 46671, - "panic": 14124, - "panini": 30410, - "pann": 42302, - "panna": 49065, - "pano": 36165, - "panor": 12962, - "panorama": 19763, - "panoramic": 22563, - "pans": 35204, - "pant": 22550, - "panther": 22825, - "panther": 13262, - "panthers": 10494, - "panties": 32515, - "panto": 28776, - "pantry": 25608, - "pants": 5003, - "panty": 44217, - "pany": 45567, - "panzer": 41159, - "pao": 33790, - "paola": 44689, - "paolo": 48488, - "paolo": 21133, - "pap": 1884, - "pap": 30756, - "papa": 12211, - "papar": 32782, - "paparazzi": 37842, - "papaya": 44098, - "paper": 8680, - "paper": 2802, - "paperback": 17928, - "papers": 8204, - "paperwork": 35785, - "papi": 35177, - "papp": 26361, - "paprika": 44793, - "papua": 32629, - "par": 699, - "par": 9163, - "para": 18355, - "para": 8976, - "parach": 23147, - "parachute": 30122, - "parad": 37143, - "parade": 5809, - "parades": 46479, - "paradi": 6658, - "paradig": 27786, - "paradigm": 33485, - "paradise": 45869, - "paradise": 7247, - "paradox": 33109, - "parag": 11866, - "paragon": 48099, - "paragra": 24903, - "paragraph": 28499, - "paragu": 38021, - "paraguay": 43579, - "paral": 15143, - "paralle": 13184, - "parallel": 18201, - "paralleled": 42520, - "parallels": 46101, - "paraly": 30255, - "paralym": 18727, - "paralympic": 30806, - "paralympics": 37162, - "paralysis": 45702, - "param": 12250, - "parame": 27106, - "paramedic": 34630, - "paramedics": 35991, - "parameters": 44890, - "paramore": 34401, - "paramount": 26642, - "parano": 30283, - "paranoid": 43029, - "paranor": 16940, - "paranormal": 19047, - "parap": 41091, - "paras": 15198, - "parasite": 42460, - "parasites": 46175, - "parc": 30914, - "parcel": 30367, - "parcels": 45589, - "pard": 18773, - "pardon": 47606, - "pardon": 26565, - "pare": 18202, - "pared": 5498, - "paren": 3106, - "parent": 47848, - "parent": 10183, - "parental": 28339, - "parenthood": 23887, - "parenting": 14529, - "parents": 3731, - "pares": 12420, - "parfait": 46140, - "pari": 17961, - "pari": 27979, - "paris": 13982, - "paris": 3445, - "parisagreement": 47405, - "parish": 47328, - "parish": 13020, - "parisi": 45081, - "parisian": 38512, - "parity": 42734, - "park": 4985, - "park": 1452, - "parked": 16487, - "parker": 31119, - "parker": 8365, - "parkin": 34868, - "parking": 5984, - "parkinson": 28129, - "parkland": 31287, - "parkrun": 25747, - "parks": 6873, - "parkway": 19882, - "parl": 30373, - "parl": 29897, - "parliam": 5941, - "parliament": 41599, - "parliament": 7151, - "parliamentary": 17912, - "parlor": 38253, - "parlour": 37829, - "parma": 36077, - "parme": 26295, - "parmesan": 27274, - "paro": 17429, - "parody": 24318, - "parole": 32158, - "parr": 44113, - "parrish": 43043, - "parrot": 23565, - "parry": 40604, - "parsley": 30077, - "parsons": 22505, - "part": 1872, - "part": 1551, - "parte": 48508, - "parth": 34790, - "parti": 10509, - "partial": 18957, - "partially": 21269, - "partic": 2871, - "partici": 9540, - "particip": 4400, - "participant": 27674, - "participants": 10237, - "participate": 9433, - "participated": 14252, - "participates": 46414, - "participating": 11535, - "participation": 13529, - "particle": 27716, - "particles": 27012, - "particul": 11408, - "particular": 14098, - "particularly": 12170, - "parties": 9032, - "parting": 32844, - "partisan": 20772, - "partist": 44713, - "partition": 42219, - "partly": 21459, - "partner": 5210, - "partner": 4568, - "partnered": 21402, - "partnering": 21182, - "partners": 5568, - "partnership": 6123, - "partnerships": 17418, - "parton": 43245, - "partridge": 34872, - "parts": 5149, - "party": 12877, - "party": 1580, - "partying": 25702, - "pas": 1341, - "pas": 9525, - "pasadena": 25892, - "pascal": 28626, - "pasco": 49220, - "pascu": 42692, - "pash": 23936, - "pasha": 46986, - "paso": 18542, - "pasqu": 44941, - "pass": 5016, - "pass": 3511, - "passage": 16477, - "passages": 48937, - "passed": 4957, - "passenger": 12311, - "passengers": 12781, - "passer": 48544, - "passes": 7633, - "passi": 32471, - "passing": 6589, - "passion": 8822, - "passion": 5332, - "passionate": 10947, - "passionately": 44028, - "passions": 38441, - "passive": 23171, - "passover": 38426, - "passport": 14739, - "passports": 46368, - "password": 20258, - "passwords": 43095, - "past": 7315, - "past": 2729, - "pasta": 10441, - "paste": 34765, - "paste": 17038, - "pastel": 19457, - "pastels": 45699, - "pastor": 19792, - "pastor": 9664, - "pastoral": 37191, - "pastors": 30959, - "pastr": 45478, - "pastries": 39409, - "pastry": 18582, - "pasture": 34764, - "pastures": 47793, - "pat": 1300, - "pat": 7036, - "patag": 29862, - "patagonia": 32786, - "patch": 29284, - "patch": 8721, - "patches": 22104, - "patchwork": 44675, - "patchy": 47488, - "pate": 42122, - "pate": 42098, - "patel": 14168, - "patent": 14692, - "patented": 37277, - "patents": 33911, - "paterson": 36560, - "path": 7408, - "path": 5035, - "pathetic": 18222, - "pathfinder": 35415, - "pathi": 34976, - "pathi": 27347, - "pathic": 49025, - "patho": 18534, - "pathology": 23290, - "paths": 16333, - "pathway": 23488, - "pathways": 24690, - "pathy": 13330, - "pati": 2799, - "pati": 26708, - "patience": 13575, - "patient": 30139, - "patient": 6262, - "patiently": 22980, - "patients": 5543, - "patil": 49187, - "patio": 14304, - "pational": 30627, - "patna": 45025, - "patory": 41859, - "patreon": 17165, - "patri": 4771, - "patriarch": 49054, - "patriarchy": 48806, - "patric": 12569, - "patrice": 40731, - "patricia": 18143, - "patrick": 12078, - "patrick": 5286, - "patricks": 46783, - "patriot": 28896, - "patriot": 15692, - "patrioti": 35520, - "patriotic": 20217, - "patriotism": 35807, - "patriots": 8707, - "patro": 31650, - "patrol": 10073, - "patrolling": 39344, - "patrols": 35978, - "patron": 26658, - "patron": 17683, - "patrons": 28308, - "pats": 24874, - "patsy": 46093, - "patt": 12637, - "patter": 4982, - "pattern": 7447, - "patterned": 47212, - "patterns": 11637, - "patterson": 21384, - "patti": 44927, - "patti": 26123, - "pattinson": 32474, - "patton": 29026, - "patty": 48741, - "patty": 18321, - "pau": 1834, - "pau": 35970, - "paul": 6035, - "paul": 2597, - "paula": 37363, - "paula": 16777, - "pauline": 30438, - "paulo": 48002, - "paulo": 21628, - "pauls": 41413, - "pauls": 40010, - "paulson": 48201, - "pause": 19439, - "paused": 46782, - "pav": 6661, - "pave": 37107, - "paved": 27898, - "pavel": 43152, - "pavement": 27669, - "pavilion": 13374, - "paving": 28651, - "paw": 14009, - "paw": 16016, - "pawan": 29754, - "pawankalyan": 33702, - "pawn": 43195, - "paws": 16714, - "pax": 20007, - "pax": 19033, - "paxton": 38347, - "pay": 2642, - "pay": 3345, - "payback": 36413, - "paycheck": 45078, - "payday": 26957, - "payee": 46985, - "payer": 41503, - "paying": 8341, - "payment": 10596, - "payments": 11832, - "payne": 12775, - "paypal": 21442, - "payroll": 31610, - "pays": 10845, - "paysoff": 48174, - "paytm": 45352, - "payton": 27348, - "paz": 22267, - "pb": 20112, - "pb": 10981, - "pba": 28205, - "pbb": 48567, - "pbb": 40589, - "pbc": 49191, - "pbl": 35166, - "pbr": 32998, - "pbs": 17908, - "pc": 6782, - "pc": 3808, - "pca": 35705, - "pcb": 26235, - "pcc": 36059, - "pci": 38957, - "pcm": 47436, - "pcr": 35704, - "pcs": 11917, - "pcso": 31963, - "pct": 22168, - "pd": 4387, - "pd": 4675, - "pdates": 16842, - "pdc": 40498, - "pdf": 15181, - "pdp": 24601, - "pdt": 21743, - "pdx": 25470, - "pdx": 16153, - "pe": 661, - "pe": 956, - "pea": 13915, - "peabo": 34083, - "peabody": 41244, - "peac": 34615, - "peace": 6249, - "peace": 3021, - "peaceful": 9461, - "peacefully": 30530, - "peacekeeping": 43630, - "peach": 10522, - "peach": 11538, - "peaches": 27216, - "peak": 18572, - "peak": 6026, - "peakdistrict": 41289, - "peake": 24810, - "peaked": 36391, - "peaks": 14067, - "pean": 11563, - "peanu": 25843, - "peanut": 12491, - "peanuts": 26503, - "pear": 4910, - "pear": 18820, - "pearce": 25996, - "pearl": 21806, - "pearl": 8560, - "pearljam": 46739, - "pearls": 19581, - "pears": 39565, - "pearson": 20461, - "peas": 15937, - "peasant": 40621, - "peasants": 48788, - "peat": 26914, - "pebble": 28056, - "pebbles": 40155, - "pec": 32447, - "pec": 17611, - "pecan": 32177, - "peck": 25186, - "peck": 29234, - "pecker": 30169, - "peckham": 45863, - "pecu": 34200, - "peculiar": 42808, - "ped": 13197, - "ped": 2966, - "pedago": 34590, - "pedagogy": 48072, - "pedal": 32943, - "pedal": 19621, - "pedals": 38535, - "pede": 12862, - "pede": 19560, - "pedestri": 30027, - "pedestrian": 18256, - "pedestrians": 33895, - "pedi": 12967, - "pedia": 11733, - "pediatric": 48431, - "pediatric": 22071, - "pedic": 35319, - "pedic": 44528, - "pedro": 29963, - "pedro": 15114, - "peds": 45377, - "pee": 12988, - "pee": 11196, - "peed": 47369, - "peek": 46323, - "peek": 7569, - "peeking": 48771, - "peel": 34386, - "peel": 17158, - "peeled": 33533, - "peeling": 48649, - "peep": 25425, - "peep": 16857, - "peeps": 11681, - "peer": 32416, - "peer": 14432, - "peers": 21626, - "pees": 31830, - "peg": 32182, - "peg": 11207, - "pegas": 30018, - "pegasus": 37822, - "peggy": 24271, - "pei": 48166, - "pei": 12917, - "pel": 4286, - "pel": 7006, - "pele": 44105, - "pelican": 34131, - "pelicans": 29363, - "pell": 46981, - "pelle": 31267, - "pelled": 32506, - "pellegr": 38529, - "pellets": 48240, - "pelo": 40192, - "pelo": 40238, - "pelosi": 22169, - "pelvic": 45646, - "pemb": 19880, - "pembro": 24084, - "pembroke": 36702, - "pembroke": 40044, - "pembrokeshire": 40695, - "pen": 1501, - "pen": 5356, - "pena": 35788, - "penalties": 25417, - "penalty": 11491, - "penang": 29545, - "penc": 20065, - "pence": 18002, - "pencil": 41303, - "pencil": 11200, - "pencils": 21909, - "pend": 3052, - "pendant": 12415, - "pendants": 44117, - "pending": 12770, - "pendleton": 44272, - "pendu": 45336, - "penelope": 36703, - "penetr": 26058, - "peng": 42955, - "peng": 39200, - "pengu": 8854, - "penguin": 28249, - "penguin": 14952, - "penguins": 16557, - "peninsu": 13464, - "peninsula": 14070, - "penn": 7760, - "penn": 11128, - "pennant": 43971, - "penned": 45077, - "penney": 47856, - "pennies": 43094, - "pennsylvania": 13673, - "penny": 20400, - "penny": 11388, - "pens": 13307, - "pens": 13310, - "pensac": 30925, - "pensacola": 33573, - "pension": 32840, - "pension": 17764, - "pensions": 29773, - "penske": 47154, - "pent": 10699, - "pent": 22725, - "pentagon": 23133, - "pente": 33165, - "penthouse": 32673, - "penultimate": 36553, - "peop": 1030, - "people": 10573, - "people": 1047, - "peoples": 28241, - "peoples": 14627, - "peopleschoice": 32418, - "peoplesvote": 45830, - "peoria": 36985, - "pep": 12761, - "pep": 14898, - "pepe": 24778, - "pepp": 34425, - "pepper": 14861, - "pepper": 8253, - "peppermint": 30321, - "pepperoni": 47307, - "peppers": 14650, - "pepsi": 21307, - "per": 703, - "per": 1284, - "pera": 26294, - "perce": 24135, - "perceived": 38436, - "percent": 16328, - "percent": 9017, - "percentage": 19477, - "percep": 28017, - "perception": 20591, - "perceptions": 38138, - "perch": 34281, - "perched": 40071, - "percu": 41722, - "percussion": 23980, - "percy": 23940, - "pere": 8665, - "pere": 36300, - "pered": 24509, - "peregr": 37479, - "peregrine": 44546, - "pereira": 43927, - "peren": 24564, - "perenni": 26996, - "perennial": 34038, - "perez": 15107, - "perf": 22816, - "perfe": 1624, - "perfec": 6599, - "perfect": 17261, - "perfect": 1878, - "perfection": 9646, - "perfectly": 8037, - "perfecto": 42898, - "perfor": 2311, - "perform": 3866, - "perform": 5940, - "performan": 8973, - "performance": 2714, - "performances": 9553, - "performed": 9997, - "performer": 17061, - "performers": 18476, - "performing": 5170, - "performs": 13839, - "perfu": 14214, - "perfume": 17525, - "perhaps": 9297, - "peri": 12618, - "peri": 44068, - "perience": 19302, - "peril": 40119, - "peril": 48301, - "perimeter": 38499, - "pering": 29746, - "perio": 5101, - "period": 6131, - "periodic": 36476, - "periods": 24401, - "periph": 35308, - "peripheral": 43901, - "peris": 19461, - "periscope": 21668, - "perk": 33424, - "perkins": 20057, - "perks": 17660, - "perl": 44018, - "perm": 47847, - "perman": 9018, - "permanent": 11144, - "permanently": 25584, - "perme": 42456, - "permission": 15822, - "permit": 21950, - "permits": 33267, - "permitted": 44380, - "pero": 23551, - "perpe": 15749, - "perpetr": 33376, - "perpetu": 30132, - "perpetual": 32018, - "perrie": 32691, - "perry": 28478, - "perry": 7899, - "pers": 3688, - "pers": 10710, - "perse": 27498, - "persecu": 22878, - "persecution": 32009, - "perseverance": 29820, - "persi": 11509, - "persian": 19859, - "persist": 19412, - "persist": 40938, - "persistence": 34588, - "persistent": 29028, - "person": 3510, - "person": 2533, - "persona": 18401, - "personal": 10114, - "personal": 4121, - "personalised": 24186, - "personalities": 27888, - "personality": 10386, - "personalized": 17845, - "personally": 13885, - "personnel": 14546, - "persons": 14592, - "perspec": 17997, - "perspective": 8996, - "perspectives": 18777, - "persu": 20972, - "pert": 36970, - "pert": 16306, - "perth": 19067, - "perth": 11011, - "peru": 20612, - "peru": 12964, - "peruvian": 30822, - "pes": 38368, - "pes": 2598, - "pesa": 47409, - "pesc": 44044, - "pesh": 33184, - "peshaw": 28524, - "peshawar": 29230, - "pesky": 42512, - "pesos": 47872, - "pessi": 43902, - "pest": 20130, - "pest": 9425, - "pesticide": 48481, - "pesticides": 37868, - "pesto": 26186, - "pests": 41919, - "pet": 2167, - "pet": 3703, - "peta": 28785, - "petal": 38430, - "petal": 40469, - "petals": 26064, - "petday": 45314, - "pete": 14479, - "pete": 8571, - "peter": 5093, - "peter": 3696, - "peterborough": 26012, - "peters": 16336, - "petersburg": 21052, - "petersen": 39794, - "peterson": 16877, - "peth": 48920, - "petit": 36437, - "petit": 21276, - "petite": 27213, - "petition": 10975, - "petitions": 43536, - "petr": 29808, - "petra": 31300, - "petre": 47179, - "petri": 31831, - "petro": 8716, - "petrol": 18149, - "petroleum": 22063, - "petron": 42875, - "pets": 7663, - "pett": 27051, - "petti": 48001, - "petting": 44334, - "petty": 17324, - "peu": 21411, - "peuge": 22893, - "peugeot": 24129, - "pew": 21608, - "pew": 30783, - "pewdie": 41882, - "pewdiepie": 42563, - "pex": 43765, - "pey": 14966, - "pey": 30933, - "peyton": 49254, - "peyton": 20307, - "pez": 45798, - "pez": 10482, - "pf": 16680, - "pf": 12572, - "pfa": 47839, - "pfc": 35007, - "pff": 44121, - "pfi": 29810, - "pfw": 31229, - "pg": 12476, - "pg": 5211, - "pga": 13351, - "pgat": 36514, - "pgatour": 40094, - "pgh": 44862, - "pgh": 30031, - "pgs": 49204, - "ph": 745, - "ph": 2042, - "pha": 4443, - "pha": 26255, - "phal": 19962, - "phan": 8731, - "phan": 40126, - "phant": 36998, - "phantom": 37688, - "phantom": 14490, - "phar": 5570, - "phara": 35792, - "pharaoh": 40437, - "pharm": 45761, - "pharma": 17831, - "pharmac": 8193, - "pharmaceu": 19490, - "pharmaceutical": 25217, - "pharmaceuticals": 44623, - "pharmacist": 41024, - "pharmacists": 44337, - "pharmacy": 15293, - "pharo": 42308, - "pharoah": 49287, - "pharrell": 31316, - "phase": 8304, - "phases": 35337, - "phat": 42492, - "phc": 41102, - "phd": 20875, - "phd": 8472, - "phdchat": 39564, - "phdlife": 39638, - "phe": 4787, - "phe": 19853, - "pheasant": 41983, - "phee": 41292, - "phel": 23711, - "phelps": 27128, - "phen": 7718, - "pheno": 47336, - "phenom": 31673, - "phenom": 39618, - "phenomen": 11304, - "phenomena": 41538, - "phenomenal": 15035, - "phenomenon": 24464, - "pher": 9194, - "pher": 19828, - "phers": 29531, - "pherson": 36421, - "phew": 10295, - "phi": 2239, - "phi": 12220, - "phia": 9228, - "phic": 3977, - "phie": 30237, - "phies": 17062, - "phil": 2821, - "phil": 6199, - "phila": 47443, - "philadel": 9428, - "philadelphia": 9749, - "philanthro": 16587, - "philanthropist": 44153, - "philanthropy": 25047, - "philately": 33695, - "phile": 36543, - "philharmon": 25228, - "philharmonic": 31699, - "phili": 4277, - "philia": 46654, - "philip": 20748, - "philip": 11074, - "philipp": 5623, - "philipp": 47591, - "philippe": 20942, - "philippine": 17629, - "philippines": 8149, - "philips": 25175, - "phill": 42346, - "phill": 48272, - "philli": 6456, - "phillies": 18748, - "phillip": 48832, - "phillip": 19323, - "phillips": 11041, - "philly": 19545, - "philly": 7785, - "philos": 8395, - "philosop": 20349, - "philosoph": 10187, - "philosopher": 25220, - "philosophical": 32628, - "philosophy": 12213, - "phils": 38573, - "phin": 33816, - "phine": 40985, - "phins": 40210, - "phish": 36897, - "phishing": 36546, - "phl": 25603, - "pho": 816, - "pho": 22707, - "phobia": 28749, - "phoe": 22673, - "phoebe": 27582, - "phoeni": 6778, - "phoenix": 20615, - "phoenix": 7793, - "phol": 48140, - "phon": 19602, - "phon": 31115, - "phone": 15486, - "phone": 1951, - "phones": 6351, - "phony": 31925, - "phora": 31363, - "phosp": 22638, - "photo": 1153, - "photo": 1125, - "photobomb": 37075, - "photobook": 41894, - "photog": 28115, - "photogenic": 36108, - "photogra": 36754, - "photograph": 1688, - "photograph": 8853, - "photographed": 11573, - "photographer": 5748, - "photographers": 17141, - "photographic": 22053, - "photographing": 30074, - "photographs": 15759, - "photography": 33183, - "photography": 2108, - "photom": 32223, - "photoo": 11106, - "photooftheday": 11933, - "photos": 2479, - "photoshoot": 11121, - "photoshop": 12419, - "photoshopped": 35738, - "phouse": 27848, - "php": 17370, - "phra": 12777, - "phrase": 18809, - "phrases": 35264, - "phs": 16495, - "phu": 21274, - "phuket": 34028, - "phx": 35466, - "phx": 29507, - "phy": 6484, - "phy": 4292, - "phyl": 35600, - "phyllis": 37844, - "phys": 3734, - "phys": 37894, - "physi": 13782, - "physic": 46641, - "physical": 44127, - "physical": 6671, - "physically": 18105, - "physician": 21055, - "physicians": 26702, - "physicist": 29052, - "physics": 9369, - "physio": 29574, - "physio": 29177, - "physiology": 32349, - "physique": 42884, - "phyto": 42197, - "pi": 741, - "pi": 5357, - "pia": 8918, - "pian": 24637, - "pianist": 21048, - "piano": 49278, - "piano": 7894, - "pianos": 47904, - "piazza": 28496, - "pic": 901, - "pic": 1282, - "pical": 5482, - "picard": 48507, - "picasso": 21481, - "piccad": 33876, - "piccadilly": 37287, - "piccollage": 43621, - "pick": 6379, - "pick": 3142, - "picked": 6018, - "picker": 43105, - "pickering": 47605, - "picket": 33559, - "picking": 9545, - "pickle": 24570, - "pickled": 21705, - "pickles": 25001, - "picks": 8551, - "pickup": 15382, - "pickups": 33383, - "picnic": 12007, - "pico": 23363, - "picoftheday": 18319, - "pics": 2559, - "pict": 18778, - "pictorial": 40640, - "picture": 11663, - "picture": 1674, - "pictured": 7647, - "pictures": 3646, - "picturesque": 24894, - "pid": 5225, - "piday": 48056, - "pie": 12065, - "pie": 5319, - "piece": 39632, - "piece": 2754, - "pieces": 6194, - "pied": 24686, - "pied": 12713, - "piedmont": 39691, - "pier": 5641, - "pier": 11348, - "pierc": 49216, - "pierce": 48462, - "pierce": 16782, - "pierced": 32799, - "piercing": 22557, - "piero": 43125, - "pierre": 34670, - "pierre": 11985, - "piers": 29030, - "pies": 6898, - "pieter": 44801, - "pietro": 42169, - "piff": 40719, - "pig": 12009, - "pig": 9619, - "pigeon": 18008, - "pigeons": 32910, - "piggy": 28245, - "pigment": 40284, - "pigs": 16228, - "pik": 48539, - "pika": 47372, - "pikach": 27268, - "pikachu": 28107, - "pike": 33457, - "pike": 14011, - "pil": 2893, - "pil": 20645, - "pilates": 29518, - "pile": 44403, - "pile": 13930, - "piled": 26873, - "piles": 31968, - "pilgri": 13966, - "pilgrim": 32662, - "pilgrimage": 24335, - "pilgrims": 31370, - "piling": 43050, - "pilip": 27234, - "pilipinas": 32392, - "pill": 14830, - "pill": 19226, - "pillar": 17322, - "pillars": 22054, - "pillow": 42237, - "pillow": 12182, - "pillows": 26499, - "pills": 23964, - "pilo": 37526, - "pilot": 31619, - "pilot": 6687, - "pilots": 15586, - "pilsner": 47153, - "pim": 15285, - "pim": 35472, - "pimp": 35789, - "pin": 2629, - "pin": 5164, - "pinball": 31679, - "pinch": 26114, - "pine": 9398, - "pine": 7374, - "pineapple": 14831, - "pines": 20338, - "ping": 23720, - "ping": 2089, - "pinion": 40557, - "pink": 11151, - "pink": 3360, - "pinkfloyd": 48520, - "pinky": 29803, - "pinn": 31448, - "pinnacle": 32754, - "pinned": 12165, - "pinning": 44515, - "pino": 36633, - "pinot": 41399, - "pinot": 21146, - "pinoy": 43578, - "pinoy": 35258, - "pins": 14619, - "pinst": 41173, - "pint": 42537, - "pint": 13584, - "pinterest": 15379, - "pinto": 35992, - "pints": 27935, - "pinup": 37349, - "pio": 22108, - "pion": 36728, - "pion": 29190, - "pione": 7975, - "pioneer": 34892, - "pioneer": 12459, - "pioneering": 25933, - "pioneers": 22383, - "pious": 42441, - "pip": 30854, - "pipe": 29333, - "pipe": 10459, - "pipel": 12387, - "pipeline": 14151, - "pipelines": 39683, - "piper": 47052, - "piper": 16293, - "pipes": 16991, - "piping": 40744, - "pippa": 47672, - "pir": 4351, - "pir": 38899, - "piracy": 39452, - "piran": 49034, - "pirate": 38680, - "pirate": 13592, - "pirates": 10442, - "pire": 16613, - "pires": 14988, - "pis": 9230, - "pis": 44441, - "pisa": 43632, - "pisces": 45982, - "piss": 20818, - "pissed": 17989, - "pist": 15556, - "pist": 32826, - "pistachi": 29760, - "pistachio": 36320, - "pistol": 20480, - "piston": 48236, - "pistons": 27242, - "pistor": 48162, - "pit": 2946, - "pit": 7476, - "pita": 27070, - "pitbull": 25295, - "pitch": 8992, - "pitch": 5872, - "pitched": 28447, - "pitcher": 13445, - "pitchers": 27835, - "pitches": 21005, - "pitching": 16455, - "piti": 47568, - "pits": 24144, - "pitt": 7607, - "pitt": 15599, - "pitts": 9531, - "pittsburgh": 10453, - "pity": 24380, - "pius": 39988, - "pivo": 18009, - "pivot": 31805, - "pivotal": 31432, - "pix": 6185, - "pix": 13088, - "pixar": 27493, - "pixel": 14384, - "pixel": 13241, - "pixelart": 18516, - "pixels": 34099, - "pixie": 35573, - "piyu": 30772, - "piyush": 36191, - "piyushgoyal": 45318, - "pizz": 3897, - "pizza": 4474, - "pizzas": 30647, - "pizzeria": 44174, - "pj": 12524, - "pj": 17179, - "pjnet": 22011, - "pjs": 36009, - "pk": 10149, - "pk": 10991, - "pkg": 49011, - "pkk": 47480, - "pknot": 41779, - "pkwy": 36827, - "pl": 712, - "pl": 5678, - "pla": 841, - "pla": 19945, - "plac": 2331, - "place": 14884, - "place": 1445, - "placed": 9729, - "placement": 16724, - "placements": 43885, - "placer": 49170, - "places": 4448, - "placing": 18531, - "plague": 25360, - "plaid": 23291, - "plain": 22776, - "plain": 10709, - "plains": 16345, - "plan": 1740, - "plan": 2970, - "pland": 24801, - "plane": 22728, - "plane": 5363, - "planes": 12581, - "planet": 16833, - "planet": 5172, - "planetary": 28361, - "planets": 22315, - "plank": 30991, - "plankton": 48249, - "plann": 6409, - "planned": 8169, - "planner": 18083, - "planners": 33664, - "planning": 4446, - "plano": 34063, - "plans": 4181, - "plant": 8521, - "plant": 3912, - "plantation": 20014, - "plantbased": 33720, - "planted": 14286, - "planter": 34453, - "planters": 43661, - "planting": 13922, - "plants": 5829, - "plaque": 16097, - "plaques": 45610, - "plar": 26754, - "plas": 45673, - "plasma": 24999, - "plaster": 31980, - "plastic": 15645, - "plastic": 6102, - "plasticpollution": 47129, - "plastics": 20999, - "plasticsurgery": 48555, - "plat": 3172, - "plata": 46456, - "plate": 28744, - "plate": 5135, - "plateau": 29301, - "plated": 21161, - "plates": 11485, - "platform": 5549, - "platforms": 13551, - "platin": 10267, - "plating": 44564, - "platinum": 10979, - "plato": 41101, - "platoon": 41254, - "platt": 44459, - "platt": 40097, - "platte": 46785, - "platter": 29071, - "platz": 40878, - "plau": 39139, - "play": 1222, - "play": 1453, - "playa": 23756, - "playable": 33885, - "playback": 39194, - "playbook": 34856, - "playboy": 24383, - "played": 3432, - "player": 24503, - "player": 2477, - "players": 3030, - "playful": 23871, - "playground": 15861, - "playhouse": 23254, - "playin": 24674, - "playing": 47368, - "playing": 1629, - "playlist": 9180, - "playlists": 47183, - "playo": 5804, - "playoff": 9655, - "playoffs": 9548, - "plays": 5134, - "playstation": 11332, - "playtime": 43037, - "playwright": 32070, - "plaza": 8943, - "plc": 16827, - "ple": 926, - "ple": 1619, - "plea": 21956, - "plead": 47539, - "pleads": 31425, - "plear": 21362, - "pleas": 8481, - "pleas": 48740, - "pleasant": 12271, - "please": 41074, - "please": 1474, - "pleased": 6107, - "pleasing": 32893, - "pleasure": 5854, - "pleasures": 29513, - "pledge": 11507, - "pledged": 36799, - "pledges": 26746, - "pledis": 41202, - "plein": 43429, - "plenary": 19891, - "plenty": 7524, - "pler": 17677, - "ples": 6248, - "pless": 39821, - "pless": 17059, - "plets": 43230, - "plex": 23765, - "plex": 15241, - "pley": 19543, - "pli": 30001, - "pli": 45797, - "plic": 5806, - "plicity": 19823, - "plight": 40317, - "plin": 44531, - "plin": 32335, - "pline": 25376, - "pling": 12899, - "plings": 31184, - "pll": 47629, - "pll": 25266, - "pln": 48755, - "plo": 1778, - "plo": 43523, - "plor": 34695, - "plot": 9918, - "plots": 25672, - "plotting": 30751, - "plough": 33811, - "plow": 38363, - "pls": 5572, - "plu": 2052, - "plug": 12628, - "plugged": 23261, - "plugin": 31278, - "plugins": 48797, - "plugs": 28083, - "plum": 26267, - "plum": 16202, - "plumb": 21769, - "plumber": 43478, - "plumbing": 24647, - "plume": 39495, - "plun": 15122, - "plunge": 26506, - "plur": 44664, - "plus": 3097, - "plush": 18926, - "pluto": 26380, - "ply": 17249, - "ply": 28705, - "plying": 36071, - "plym": 11907, - "plymouth": 13786, - "plz": 10538, - "pm": 13699, - "pm": 990, - "pmi": 41206, - "pmln": 23208, - "pmo": 18782, - "pmoindia": 20374, - "pms": 44223, - "pn": 14431, - "pn": 13774, - "pnc": 37148, - "pne": 30966, - "pneu": 28714, - "pneumonia": 42906, - "png": 20992, - "pnp": 25972, - "pnpp": 42175, - "pnw": 31521, - "po": 628, - "po": 3057, - "poa": 43912, - "poached": 27665, - "poaching": 35140, - "poc": 13232, - "poc": 27780, - "pocaly": 37987, - "pocalypse": 42307, - "poche": 38336, - "poche": 39022, - "pocket": 29147, - "pocket": 8504, - "pockets": 19566, - "pocon": 41850, - "pod": 3583, - "pod": 7446, - "podcast": 39654, - "podcast": 4294, - "podcasting": 40106, - "podcasts": 19392, - "pode": 33368, - "poder": 24960, - "podernfamily": 26620, - "podi": 32853, - "podium": 14093, - "pods": 18776, - "poe": 4746, - "poe": 19254, - "poem": 9436, - "poems": 15577, - "poet": 41019, - "poet": 9872, - "poetic": 26365, - "poetry": 20192, - "poetry": 6038, - "poetryday": 39255, - "poets": 19804, - "pof": 40850, - "poff": 28236, - "pogba": 25998, - "poign": 29682, - "poignant": 32138, - "poin": 9074, - "point": 13280, - "point": 2301, - "pointe": 24631, - "pointed": 20703, - "pointer": 29883, - "pointers": 36760, - "pointing": 19233, - "pointless": 33586, - "points": 3396, - "pois": 17008, - "poise": 45087, - "poised": 27354, - "poison": 30722, - "poison": 17074, - "poisoned": 43624, - "poisoning": 25750, - "poisonous": 37131, - "pok": 15387, - "poke": 6892, - "poke": 23186, - "pokemon": 16239, - "pokemon": 9528, - "pokemongo": 23985, - "poker": 30735, - "poker": 11865, - "pokes": 40221, - "poking": 49169, - "poké": 20656, - "pokémon": 22066, - "pol": 977, - "pol": 7649, - "pola": 43876, - "poland": 9834, - "polar": 21432, - "polar": 12214, - "polari": 27919, - "polaris": 37965, - "polarized": 48437, - "polaro": 25237, - "polaroid": 30427, - "poldark": 41322, - "pole": 26682, - "pole": 8170, - "poles": 22585, - "poli": 9675, - "poli": 5414, - "polic": 16126, - "police": 15535, - "police": 2120, - "policeman": 37713, - "policemen": 47946, - "polici": 10819, - "policies": 10993, - "policing": 20969, - "policy": 30173, - "policy": 4660, - "polio": 30533, - "polis": 16133, - "polish": 46941, - "polish": 9632, - "polished": 21478, - "polishing": 43629, - "polit": 2247, - "politan": 15337, - "polite": 31497, - "politi": 40597, - "politic": 33333, - "political": 37744, - "political": 4197, - "politically": 24323, - "politician": 15960, - "politicians": 12914, - "politico": 39403, - "politics": 4929, - "polk": 33317, - "polka": 29476, - "poll": 7032, - "pollen": 27651, - "pollin": 19152, - "pollinators": 36599, - "polling": 18024, - "pollo": 42755, - "pollock": 37614, - "polls": 11813, - "pollu": 8370, - "polluted": 43346, - "pollution": 10384, - "polly": 31204, - "polo": 35928, - "polo": 10229, - "poly": 6833, - "poly": 18367, - "polye": 31730, - "polyester": 38514, - "polym": 23626, - "polymer": 29993, - "polyne": 38892, - "polyvore": 24771, - "pom": 7548, - "pom": 24280, - "pome": 27963, - "pomegran": 29326, - "pomegranate": 32415, - "pomer": 35156, - "pomona": 41690, - "pompe": 18352, - "pompeii": 47775, - "pompeo": 34351, - "pompey": 35079, - "pon": 3809, - "pon": 22391, - "ponce": 43637, - "pond": 10750, - "ponder": 36863, - "pondering": 47395, - "ponds": 31033, - "pone": 32183, - "pong": 40546, - "pong": 17710, - "ponies": 34157, - "pons": 41255, - "pont": 47563, - "pont": 22997, - "ponte": 40892, - "ponti": 15527, - "pontiac": 25373, - "pontifex": 33566, - "ponty": 45152, - "pony": 24438, - "pony": 12678, - "ponytail": 43265, - "poo": 6601, - "poo": 14389, - "pooch": 37037, - "poodle": 34961, - "pooh": 27103, - "pooja": 35676, - "pool": 12484, - "pool": 2831, - "poole": 26290, - "pools": 18736, - "poolside": 35509, - "poon": 33799, - "poon": 36178, - "poop": 23310, - "poor": 14528, - "poor": 3665, - "poorest": 40771, - "poorly": 21101, - "pop": 6530, - "pop": 2852, - "popart": 47425, - "popcorn": 15034, - "pope": 16994, - "pope": 9283, - "popefrancis": 37254, - "poplar": 38726, - "popo": 38835, - "popo": 35572, - "popp": 13156, - "popped": 14934, - "poppies": 30385, - "poppin": 28536, - "popping": 18152, - "poppins": 41216, - "poppy": 32194, - "poppy": 15447, - "pops": 11705, - "popsic": 38481, - "popu": 3785, - "popul": 6593, - "popular": 15854, - "popular": 4368, - "popularity": 19235, - "populated": 38420, - "population": 8423, - "populations": 23797, - "populism": 48998, - "populist": 49376, - "popup": 33053, - "por": 817, - "por": 7697, - "pora": 23537, - "porcel": 19409, - "porcelain": 20451, - "porch": 17154, - "pore": 28267, - "pork": 40379, - "pork": 7897, - "poro": 48110, - "porridge": 34924, - "porsch": 48009, - "porsche": 44049, - "porsche": 8783, - "port": 1641, - "port": 1418, - "porta": 45037, - "portable": 11949, - "portage": 32087, - "portal": 14982, - "porte": 28654, - "ported": 16879, - "porter": 28319, - "porter": 10318, - "porters": 15670, - "portfoli": 45766, - "portfolio": 11938, - "porth": 37425, - "porti": 45760, - "porting": 26052, - "portion": 13739, - "portions": 22914, - "portland": 38366, - "portland": 8880, - "portman": 34755, - "porto": 24853, - "porto": 18947, - "portobello": 48025, - "portra": 4175, - "portrait": 39312, - "portrait": 5352, - "portraits": 14203, - "portray": 46282, - "portrayal": 39238, - "portrayed": 36093, - "ports": 7734, - "portsm": 17063, - "portsmouth": 19074, - "portu": 7159, - "portugal": 9503, - "portugue": 17498, - "portuguese": 18019, - "pos": 1780, - "pos": 11839, - "pose": 25478, - "pose": 4230, - "posed": 5206, - "posei": 47270, - "poser": 46899, - "poses": 9773, - "posey": 34852, - "posh": 26748, - "posing": 10518, - "posit": 28793, - "positi": 7895, - "position": 4657, - "positioned": 34482, - "positioning": 30657, - "positions": 12188, - "positive": 21811, - "positive": 4844, - "positively": 24688, - "positivity": 19966, - "poss": 39745, - "posse": 17414, - "posse": 28413, - "possess": 36810, - "possessed": 36220, - "possession": 16154, - "possessions": 40588, - "possi": 2521, - "possibilities": 17932, - "possibility": 18517, - "possible": 3134, - "possibly": 8601, - "possum": 38575, - "post": 3489, - "post": 1549, - "postage": 27570, - "postal": 21687, - "postcard": 14785, - "postcards": 23922, - "postdoc": 41013, - "posted": 4752, - "poster": 22881, - "poster": 3574, - "posters": 9673, - "postgame": 34873, - "postgraduate": 31997, - "posthum": 42410, - "posting": 7559, - "postman": 38285, - "postpon": 23247, - "postponed": 25097, - "posts": 7824, - "postseason": 24521, - "posture": 29681, - "posure": 35539, - "pot": 3547, - "pot": 5168, - "potam": 45825, - "potassi": 36889, - "potassium": 37147, - "potat": 5975, - "potato": 8527, - "potatoes": 11567, - "potd": 28765, - "pote": 41869, - "poten": 4454, - "potent": 26082, - "potenti": 44104, - "potential": 5100, - "potentially": 16508, - "potholes": 47506, - "potion": 46055, - "potom": 38848, - "potomac": 43372, - "pots": 19234, - "pott": 28698, - "potted": 48581, - "potter": 24975, - "potter": 9026, - "pottery": 18396, - "potts": 39839, - "potty": 43569, - "potus": 8740, - "pou": 9423, - "pouch": 26811, - "poul": 22485, - "poultry": 31005, - "poun": 33719, - "pound": 33809, - "pound": 10674, - "pounding": 46544, - "pounds": 10752, - "pour": 33112, - "pour": 8180, - "poured": 26621, - "pouring": 16098, - "pours": 26005, - "pout": 39621, - "poutine": 43768, - "pov": 25731, - "pover": 8432, - "pover": 29464, - "poverty": 9095, - "pow": 1317, - "pow": 17745, - "powder": 32427, - "powder": 9674, - "powe": 36955, - "powell": 13305, - "power": 2789, - "power": 1807, - "powerball": 47803, - "powered": 45442, - "powered": 7332, - "powerful": 4875, - "powerhouse": 22858, - "powering": 16231, - "powerof": 31961, - "powerpoint": 38940, - "powerrangers": 40620, - "powers": 9422, - "pox": 43649, - "poy": 34737, - "poyn": 47655, - "poz": 39953, - "pp": 604, - "pp": 4186, - "ppa": 10416, - "ppard": 23391, - "ppc": 27778, - "ppe": 24573, - "ppe": 11867, - "pped": 1873, - "ppel": 46523, - "ppen": 30663, - "pper": 6719, - "pper": 2440, - "ppers": 5232, - "ppery": 27833, - "ppet": 20744, - "ppets": 25849, - "ppg": 27433, - "ppi": 9594, - "ppie": 33795, - "ppin": 8076, - "pping": 22214, - "pping": 1682, - "ppings": 35687, - "ppl": 6758, - "pple": 12302, - "ppm": 42053, - "ppo": 10215, - "ppor": 37613, - "ppp": 14017, - "pps": 10683, - "ppv": 38864, - "ppy": 30360, - "ppy": 3860, - "pr": 766, - "pr": 4150, - "pra": 1865, - "pra": 19285, - "prab": 17901, - "prabhas": 29959, - "prabhu": 31529, - "prac": 2243, - "practi": 29995, - "practic": 5495, - "practical": 10792, - "practically": 25588, - "practice": 3349, - "practiced": 36749, - "practices": 9040, - "practicing": 12750, - "practise": 38938, - "practising": 36478, - "practiti": 19909, - "practitioner": 32591, - "practitioners": 29045, - "prada": 29456, - "pradesh": 15384, - "prado": 44141, - "prag": 31025, - "prague": 14940, - "prairi": 12629, - "prairie": 14753, - "praise": 10013, - "praised": 27649, - "praises": 23049, - "praising": 36961, - "prakash": 43708, - "prakash": 25366, - "pram": 47774, - "pran": 20048, - "prank": 23654, - "pras": 41562, - "prasad": 29562, - "prat": 23069, - "prati": 45773, - "pratt": 37863, - "pratt": 23396, - "prawn": 33102, - "prawns": 34903, - "pray": 12671, - "pray": 6041, - "prayed": 34665, - "prayer": 41452, - "prayer": 6583, - "prayers": 8393, - "prayfor": 18443, - "praying": 11550, - "prays": 46602, - "prc": 28781, - "pre": 679, - "pre": 2900, - "preach": 22545, - "preacher": 29357, - "preaching": 23642, - "precau": 36532, - "precautions": 47845, - "prece": 15361, - "preci": 5470, - "precin": 27908, - "precinct": 32587, - "precious": 8226, - "precipit": 27463, - "precipitation": 33399, - "precise": 24457, - "precisely": 34954, - "precision": 44021, - "precision": 15621, - "pred": 40370, - "predat": 13364, - "predator": 20653, - "predators": 25569, - "prede": 38454, - "predecess": 38963, - "predic": 4876, - "predict": 16900, - "predictable": 25344, - "predicted": 18702, - "predicting": 30414, - "prediction": 16296, - "predictions": 15125, - "predictive": 29798, - "predicts": 25960, - "preds": 40125, - "pree": 47026, - "preet": 30131, - "prefe": 14542, - "prefecture": 32890, - "prefer": 33426, - "prefer": 11450, - "preference": 35057, - "preferences": 38118, - "preferred": 18772, - "prefers": 38528, - "pregame": 18575, - "pregn": 7190, - "pregnancy": 12769, - "pregnant": 11195, - "prehistoric": 32750, - "prejudice": 28337, - "preli": 15523, - "prelimin": 19990, - "preliminary": 20997, - "prelims": 43223, - "prelude": 42966, - "prem": 32090, - "prem": 21724, - "premature": 39253, - "premi": 2413, - "premier": 16996, - "premier": 5539, - "premiere": 5367, - "premiered": 27652, - "premieres": 19907, - "premiering": 32615, - "premierleague": 22608, - "premiers": 44883, - "premiership": 23665, - "premiosm": 38460, - "premiosmtvmiaw": 38630, - "premise": 45952, - "premises": 27266, - "premium": 8011, - "pren": 20801, - "preneur": 46288, - "preorder": 16703, - "preorders": 45985, - "prep": 6430, - "prep": 7277, - "prepa": 26270, - "prepaid": 42934, - "prepar": 4968, - "preparation": 11651, - "preparations": 19135, - "prepare": 7014, - "prepared": 7677, - "preparedness": 29492, - "prepares": 16375, - "preparing": 7365, - "prepped": 34379, - "prepping": 16459, - "preps": 14765, - "prequel": 40461, - "pres": 1385, - "pres": 8529, - "presale": 27135, - "presby": 30447, - "presbyter": 33959, - "presbyterian": 35370, - "preschool": 24354, - "prescott": 29392, - "prescri": 14851, - "prescribed": 36968, - "prescription": 23061, - "preseason": 13813, - "presen": 16742, - "presence": 8848, - "present": 2344, - "present": 2881, - "presentation": 4594, - "presentations": 16998, - "presented": 4587, - "presenter": 18587, - "presenters": 32759, - "presenting": 5339, - "presents": 4215, - "preserv": 17616, - "preservation": 21074, - "preserve": 15570, - "preserved": 23161, - "preserves": 44881, - "preserving": 32315, - "presi": 1697, - "presiden": 43374, - "presidency": 18077, - "president": 19900, - "president": 1940, - "presidente": 47363, - "presidenti": 48297, - "presidential": 8503, - "presidents": 16726, - "presiding": 45298, - "presley": 30013, - "press": 4124, - "press": 2124, - "pressed": 20080, - "presser": 27826, - "presses": 33748, - "pressing": 20893, - "pressure": 6083, - "pressures": 38487, - "prest": 41840, - "presti": 12245, - "prestige": 29328, - "prestigious": 15888, - "presto": 42211, - "preston": 37335, - "preston": 15179, - "presu": 21667, - "presumably": 42562, - "pret": 9652, - "preten": 15871, - "pretend": 18111, - "pretending": 21306, - "pretoria": 36080, - "prett": 46667, - "prettier": 31745, - "prettiest": 22866, - "pretty": 18286, - "pretty": 2111, - "pretz": 24890, - "pretzel": 36707, - "pretzels": 45468, - "prev": 20274, - "prevail": 31637, - "prevalence": 41729, - "prevalent": 46260, - "preven": 29382, - "prevent": 26436, - "prevent": 7968, - "preventable": 44250, - "prevented": 35356, - "preventing": 21756, - "prevention": 9500, - "preventive": 40949, - "prevents": 31746, - "preview": 4449, - "previews": 20279, - "previous": 9252, - "previously": 13359, - "prey": 17131, - "prez": 17956, - "pri": 955, - "pri": 23400, - "pric": 24275, - "price": 13254, - "price": 2827, - "priced": 16934, - "priceless": 15743, - "prices": 5954, - "pricing": 14800, - "prick": 43921, - "prick": 46516, - "pride": 15323, - "pride": 3436, - "pridemonth": 41410, - "prie": 22477, - "priest": 38756, - "priest": 14222, - "priests": 30005, - "prim": 22004, - "prima": 35611, - "prima": 33277, - "primal": 36604, - "primar": 21579, - "primaries": 46126, - "primarily": 29465, - "primark": 48329, - "primary": 35024, - "primary": 5814, - "primavera": 44899, - "prime": 14162, - "prime": 5183, - "primed": 45694, - "primer": 22388, - "primetime": 29763, - "primitive": 37467, - "primo": 43215, - "primrose": 45891, - "prin": 1588, - "prince": 9457, - "prince": 4735, - "princes": 45329, - "princes": 30136, - "princess": 24123, - "princess": 5079, - "princesses": 34161, - "princeton": 22433, - "princi": 5129, - "principal": 33599, - "principal": 8860, - "principals": 27524, - "principle": 19595, - "principles": 13755, - "print": 17851, - "print": 3557, - "printable": 29648, - "printed": 7978, - "printer": 14521, - "printers": 27881, - "printing": 7369, - "printmaking": 38669, - "prints": 7704, - "prior": 20328, - "prior": 10572, - "priorit": 47773, - "prioriti": 28822, - "priorities": 15232, - "prioritize": 46715, - "priority": 12451, - "priory": 38665, - "prisc": 32468, - "priscilla": 42396, - "prise": 23343, - "prism": 49311, - "prism": 34356, - "prison": 9281, - "prison": 6622, - "prisoner": 21427, - "prisoners": 17460, - "prisons": 26607, - "pristine": 30618, - "prit": 41668, - "prit": 37523, - "prith": 39173, - "prius": 43561, - "priv": 3270, - "privacy": 10437, - "private": 20362, - "private": 4439, - "privately": 32970, - "privati": 27379, - "privi": 8367, - "privileg": 18015, - "privilege": 11537, - "privileged": 18166, - "prix": 10875, - "priya": 31275, - "priyan": 16488, - "priyanka": 31959, - "priyankach": 30030, - "priyankachopra": 30264, - "prize": 48222, - "prize": 4521, - "prized": 38769, - "prizes": 9268, - "prk": 37094, - "pro": 644, - "pro": 2630, - "proactive": 33364, - "prob": 17706, - "prob": 24007, - "probab": 3907, - "probability": 32637, - "probable": 42444, - "probably": 4047, - "probation": 36531, - "probe": 14359, - "probes": 48564, - "probiotics": 49395, - "proble": 2719, - "problem": 4324, - "problematic": 33767, - "problems": 4671, - "probs": 16330, - "probz": 34243, - "proc": 38417, - "proce": 4076, - "procedu": 18204, - "procedural": 48177, - "procedure": 20163, - "procedures": 21109, - "proceed": 26664, - "proceed": 33894, - "proceedings": 26953, - "proceeds": 11882, - "process": 17291, - "process": 4078, - "processed": 23816, - "processes": 15169, - "processing": 11737, - "procession": 26288, - "processor": 22838, - "processors": 43634, - "proclaimed": 34489, - "proclamation": 32065, - "procra": 25361, - "procrastin": 25586, - "procrastination": 42825, - "procreate": 39336, - "proctor": 47204, - "procu": 21001, - "procurement": 23733, - "prod": 44349, - "prod": 11991, - "prodi": 27759, - "prodigy": 31973, - "produ": 27852, - "produc": 1471, - "produce": 7529, - "produced": 7479, - "producer": 7064, - "producers": 13883, - "produces": 19940, - "producing": 13579, - "product": 32602, - "product": 4306, - "production": 4146, - "productions": 14166, - "productive": 9697, - "productivity": 12800, - "products": 3964, - "prof": 15043, - "prof": 5488, - "profe": 2611, - "profess": 5486, - "professi": 3705, - "profession": 8104, - "profession": 19671, - "professional": 46007, - "professional": 4774, - "professionalism": 41252, - "professionally": 33892, - "professionals": 10165, - "professor": 47302, - "professor": 6092, - "professors": 27758, - "profici": 34685, - "profile": 14291, - "profile": 6444, - "profiles": 22070, - "profiling": 37123, - "profit": 16941, - "profit": 7909, - "profitable": 25465, - "profits": 13410, - "profound": 48245, - "profound": 22998, - "profs": 19260, - "prog": 22219, - "progno": 46070, - "program": 4162, - "program": 2737, - "programme": 6322, - "programmer": 37001, - "programmes": 20468, - "programming": 10831, - "programs": 7345, - "progre": 7069, - "progress": 4421, - "progressi": 23297, - "progressing": 32346, - "progression": 24772, - "progressive": 12208, - "progressives": 41709, - "prohi": 41124, - "prohib": 45040, - "prohibition": 34440, - "proj": 39156, - "proje": 48345, - "projec": 1610, - "project": 15911, - "project": 1965, - "projected": 22873, - "projection": 22384, - "projections": 34638, - "projector": 27816, - "projects": 5090, - "proli": 19710, - "prolife": 32126, - "prolifer": 39018, - "prolific": 27839, - "prolly": 45968, - "prolon": 35379, - "prolonged": 41972, - "prom": 40363, - "prom": 7944, - "prome": 34355, - "promen": 33578, - "promenade": 35522, - "promethe": 44183, - "promin": 35217, - "prominent": 19172, - "promis": 3963, - "promise": 6745, - "promised": 11516, - "promises": 12064, - "promising": 14183, - "promo": 3037, - "promo": 6755, - "promos": 35044, - "promote": 47384, - "promote": 8003, - "promoted": 16395, - "promoter": 33081, - "promotes": 20169, - "promoting": 9695, - "promotion": 9259, - "promotional": 17619, - "promotions": 19142, - "promp": 11671, - "prompt": 20198, - "prompted": 45746, - "prompts": 33490, - "proms": 37759, - "pron": 13285, - "prone": 30964, - "pronoun": 23022, - "pronounce": 40489, - "pronounced": 34109, - "pronto": 44296, - "proof": 17020, - "proof": 5248, - "proofing": 35679, - "proofs": 41023, - "prop": 19123, - "prop": 16254, - "propag": 12151, - "propaganda": 14718, - "propane": 45546, - "propel": 48439, - "propeller": 47404, - "proper": 3577, - "proper": 8205, - "properly": 12560, - "properties": 10922, - "property": 26486, - "property": 5043, - "prophe": 9662, - "prophecy": 32501, - "prophet": 15549, - "prophetic": 47476, - "prophets": 39441, - "propor": 35016, - "proportion": 35775, - "proportions": 39391, - "propos": 9455, - "proposal": 12139, - "proposals": 20568, - "propose": 28471, - "proposed": 10615, - "proposes": 27133, - "proposing": 42631, - "proposition": 44780, - "propri": 28243, - "props": 15249, - "propulsion": 49380, - "pros": 33925, - "pros": 14147, - "prosciutto": 46565, - "prose": 47063, - "prose": 28675, - "prosecco": 28839, - "prosecu": 12136, - "prosecution": 30902, - "prosecutor": 23736, - "prosecutors": 31656, - "prosp": 24242, - "prospec": 12693, - "prospect": 11211, - "prospective": 28034, - "prospects": 15372, - "prosper": 16121, - "prosper": 33526, - "prosperity": 17203, - "prosperous": 28252, - "prost": 47923, - "prostate": 28808, - "prostatec": 49064, - "prosthetic": 44602, - "prostitu": 37333, - "protag": 28950, - "protagonist": 38183, - "prote": 1845, - "protec": 5640, - "protect": 25563, - "protect": 4817, - "protected": 12266, - "protecting": 11710, - "protection": 6238, - "protections": 33772, - "protective": 17028, - "protector": 20441, - "protectors": 45039, - "protects": 21889, - "protein": 8088, - "proteins": 28661, - "protest": 6279, - "protestant": 46945, - "protested": 48089, - "protester": 42073, - "protesters": 12660, - "protesting": 18788, - "protestors": 27822, - "protests": 12450, - "proto": 8672, - "proto": 44958, - "protocol": 19938, - "protocols": 39631, - "proton": 40009, - "prototype": 16675, - "prototyping": 42081, - "prou": 5739, - "proud": 11080, - "proud": 1679, - "prouder": 39585, - "proudest": 46806, - "proudly": 11203, - "proudof": 48184, - "proudtobe": 35043, - "prov": 23772, - "prov": 35021, - "prove": 10107, - "proved": 16473, - "proven": 35405, - "proven": 14569, - "provence": 28067, - "prover": 18312, - "proverb": 34419, - "proverbs": 27016, - "proves": 16119, - "provi": 2289, - "provide": 4832, - "provided": 9046, - "providence": 19331, - "provider": 14409, - "providers": 17120, - "provides": 7161, - "providing": 7250, - "provin": 12074, - "province": 8978, - "provinces": 35050, - "provincial": 16002, - "proving": 18055, - "provision": 30148, - "provisional": 36008, - "provisions": 39269, - "provo": 15367, - "provoc": 31618, - "provocative": 43809, - "provoking": 25510, - "provost": 36627, - "prow": 38737, - "prowrestling": 39825, - "prox": 41616, - "proxim": 31436, - "proximity": 38298, - "proxy": 31680, - "prs": 23879, - "pru": 12961, - "pruitt": 39453, - "prun": 29029, - "pruning": 48133, - "pry": 31965, - "pryor": 43375, - "ps": 3982, - "ps": 814, - "psa": 14031, - "psal": 13859, - "psalm": 17995, - "psalms": 35003, - "psb": 37017, - "psc": 43118, - "psd": 28810, - "pse": 19737, - "pse": 5423, - "pseu": 24919, - "pseudo": 46618, - "psg": 17123, - "psi": 45848, - "psi": 24533, - "psic": 29299, - "psis": 33041, - "psl": 21373, - "psn": 36781, - "pso": 27045, - "pson": 7487, - "psori": 44688, - "psp": 32769, - "pss": 35718, - "pss": 42535, - "psst": 47814, - "pst": 12692, - "psu": 41286, - "psu": 28338, - "psv": 44530, - "psy": 3576, - "psy": 11056, - "psych": 31041, - "psych": 20509, - "psyched": 19932, - "psyched": 35199, - "psychedelic": 23292, - "psychi": 18147, - "psychiatric": 30578, - "psychiatry": 39706, - "psychic": 24916, - "psycho": 6472, - "psycho": 22154, - "psychological": 18153, - "psychologist": 32827, - "psychology": 12352, - "psychop": 30112, - "psychotic": 48774, - "pt": 11139, - "pt": 1459, - "pta": 11586, - "ptbo": 40481, - "ptc": 44646, - "pte": 47804, - "pter": 49323, - "pti": 29375, - "pti": 10491, - "ptic": 20670, - "ption": 3479, - "ptions": 24963, - "pto": 31372, - "pto": 34092, - "pton": 19780, - "pts": 5886, - "ptsd": 23973, - "ptv": 42402, - "pu": 755, - "pu": 11780, - "pub": 20720, - "pub": 6301, - "puberty": 44122, - "pubg": 31496, - "publ": 3434, - "publi": 1617, - "public": 3592, - "public": 2122, - "publica": 49007, - "publication": 13538, - "publications": 27334, - "publichealth": 35872, - "publicity": 20831, - "publicly": 18554, - "publish": 19032, - "published": 4311, - "publisher": 20455, - "publishers": 25222, - "publishes": 35633, - "publishing": 10994, - "publix": 47985, - "pubs": 21099, - "puc": 48779, - "puck": 17550, - "pud": 39234, - "pudding": 14025, - "puddle": 33545, - "pue": 20161, - "pueblo": 33076, - "puer": 8968, - "puerto": 12289, - "puertor": 22757, - "puertorico": 26356, - "puff": 44477, - "puff": 17184, - "puffin": 47632, - "puffs": 47453, - "puffy": 49245, - "pug": 20950, - "pug": 17739, - "pugchat": 42266, - "pugh": 41302, - "puglia": 38345, - "pugs": 39425, - "puj": 46163, - "puja": 33753, - "puk": 31811, - "pul": 2469, - "pul": 40512, - "pula": 45856, - "puli": 47293, - "pulit": 27745, - "pulitzer": 31419, - "pull": 20155, - "pull": 6857, - "pulled": 8525, - "pulling": 12897, - "pullman": 40203, - "pullover": 44020, - "pulls": 16041, - "pulmon": 32613, - "pulmonary": 39132, - "pulp": 25410, - "pulse": 40091, - "pulse": 12485, - "pulses": 42177, - "pulsion": 35398, - "pum": 37497, - "puma": 20858, - "pump": 5179, - "pump": 9173, - "pumped": 12796, - "pumping": 25150, - "pumpkin": 36386, - "pumpkin": 8842, - "pumpkins": 23787, - "pumps": 18540, - "pun": 2707, - "pun": 19929, - "punc": 43907, - "punch": 29332, - "punch": 10730, - "punched": 31689, - "punches": 35279, - "punching": 33468, - "punctu": 31565, - "punctuation": 47051, - "pundit": 41466, - "pune": 32593, - "pune": 14488, - "pung": 45420, - "puni": 11479, - "punish": 34569, - "punished": 31598, - "punisher": 38509, - "punishment": 19099, - "punjab": 19405, - "punjab": 12883, - "punjabi": 25430, - "punk": 28933, - "punk": 7246, - "punks": 47171, - "puns": 35231, - "punt": 32699, - "punta": 34112, - "punter": 47092, - "pup": 11926, - "pup": 11302, - "pupil": 27265, - "pupils": 13628, - "pupp": 7116, - "puppet": 18439, - "puppets": 28475, - "puppies": 14820, - "puppy": 25431, - "puppy": 6829, - "puppylove": 40849, - "pups": 20778, - "pur": 1727, - "pur": 6265, - "pura": 25596, - "puram": 46174, - "purcell": 46065, - "purch": 8384, - "purchase": 5481, - "purchased": 13399, - "purchases": 21887, - "purchasing": 20718, - "purdu": 40691, - "purdue": 22280, - "pure": 14202, - "pure": 5979, - "puree": 45474, - "purely": 32459, - "puremichigan": 39783, - "purest": 45497, - "purge": 33514, - "puri": 16910, - "puri": 21974, - "purification": 47724, - "purity": 29780, - "purple": 17837, - "purple": 5496, - "purpose": 33492, - "purpose": 7391, - "purposes": 22020, - "purr": 49262, - "purr": 46343, - "purse": 16480, - "pursue": 19463, - "pursuing": 26424, - "pursuit": 16469, - "purée": 40981, - "pus": 13841, - "pusa": 40825, - "push": 16028, - "push": 6831, - "pushaw": 35407, - "pushaward": 35448, - "pushawards": 47184, - "pushed": 16155, - "pushes": 23828, - "pushing": 11549, - "put": 29535, - "put": 1983, - "putin": 10693, - "putnam": 40235, - "puts": 7898, - "putt": 30279, - "putter": 44723, - "putting": 5154, - "puzz": 19760, - "puzzle": 12875, - "puzzles": 27986, - "pv": 14517, - "pv": 13495, - "pvc": 26959, - "pvp": 44172, - "pvt": 29898, - "pw": 19419, - "pw": 16067, - "pwc": 22965, - "px": 24790, - "px": 10262, - "pxrtg": 36262, - "py": 4005, - "py": 7504, - "pye": 31099, - "pyeongchang": 36066, - "pyg": 41450, - "pyram": 14405, - "pyramid": 18725, - "pyramids": 36877, - "pyrene": 36740, - "pyrenees": 39744, - "pyro": 39762, - "python": 13370, - "pz": 48361, - "pé": 43167, - "q": 80, - "q": 336, - "qa": 24944, - "qa": 16360, - "qad": 27844, - "qadri": 35672, - "qaeda": 31246, - "qanda": 48672, - "qanon": 19182, - "qant": 35404, - "qantas": 43250, - "qatar": 32804, - "qatar": 10872, - "qb": 8073, - "qbs": 38188, - "qc": 17406, - "qe": 30974, - "qf": 27215, - "qi": 25054, - "qi": 11256, - "qing": 46522, - "qing": 34339, - "ql": 28366, - "qld": 23039, - "qld": 13765, - "qldpol": 42296, - "qm": 42148, - "qotd": 24504, - "qpr": 24788, - "qq": 31960, - "qr": 18193, - "qs": 14364, - "qt": 15013, - "qtr": 44803, - "qu": 666, - "qu": 28646, - "qua": 20363, - "quack": 45575, - "quad": 11656, - "quad": 13419, - "quadcopter": 39792, - "quadru": 35831, - "quaid": 34265, - "quail": 34392, - "quaint": 45976, - "quake": 8421, - "quaker": 43395, - "quakes": 24572, - "qual": 9979, - "qual": 32405, - "qualcomm": 38683, - "quali": 4574, - "qualification": 21508, - "qualifications": 35225, - "qualified": 11927, - "qualifier": 18733, - "qualifiers": 21388, - "qualifies": 35820, - "qualify": 17019, - "qualifying": 11895, - "qualitative": 45847, - "qualities": 20488, - "quality": 28545, - "quality": 3027, - "quan": 11669, - "quan": 27490, - "quand": 28198, - "quant": 15050, - "quanti": 31540, - "quantitative": 40583, - "quantities": 33917, - "quantity": 26920, - "quantum": 15320, - "quar": 3856, - "quare": 42549, - "quarry": 27601, - "quart": 7851, - "quarter": 8816, - "quarter": 6632, - "quarterback": 16545, - "quarterfinal": 37992, - "quarterfinals": 28971, - "quarterly": 23350, - "quarters": 10146, - "quartet": 18056, - "quartz": 17752, - "quat": 25715, - "quattro": 40300, - "quay": 40276, - "quay": 17304, - "que": 1147, - "que": 2319, - "quebec": 15373, - "queen": 6407, - "queen": 2997, - "queenof": 44398, - "queens": 22943, - "queens": 9330, - "queensland": 15168, - "queer": 38874, - "queer": 18161, - "quel": 39774, - "quel": 21879, - "quen": 23876, - "quen": 38324, - "quent": 23808, - "quentin": 27530, - "quer": 17378, - "quer": 26859, - "quered": 23210, - "queries": 32958, - "querque": 30338, - "query": 27464, - "ques": 25328, - "ques": 7715, - "queso": 40110, - "quest": 31653, - "quest": 4846, - "questi": 2391, - "question": 18961, - "question": 4382, - "questionable": 30733, - "questioned": 31847, - "questioning": 24887, - "questions": 3883, - "quests": 44611, - "quet": 8513, - "quets": 39055, - "quetta": 38326, - "quette": 18993, - "queu": 32705, - "queue": 18549, - "queues": 40649, - "queuing": 44082, - "quez": 18677, - "quezon": 41117, - "qui": 1912, - "qui": 18046, - "quic": 26474, - "quiche": 47723, - "quick": 5969, - "quick": 3712, - "quicker": 29211, - "quickest": 37734, - "quickly": 7787, - "quid": 30732, - "quie": 43875, - "quien": 43482, - "quiere": 42723, - "quiero": 32567, - "quiet": 17853, - "quiet": 7557, - "quietly": 22208, - "quig": 44690, - "quil": 12305, - "quill": 48951, - "quilt": 23977, - "quilted": 46052, - "quin": 8607, - "quin": 17167, - "quincy": 27640, - "quind": 32339, - "quinn": 12306, - "quinoa": 26703, - "quins": 39701, - "quint": 26898, - "quinta": 47446, - "quinte": 22098, - "quintess": 37538, - "quintet": 35125, - "quipment": 42813, - "quir": 15943, - "quirky": 25044, - "quis": 15064, - "quist": 25128, - "quit": 19358, - "quit": 11140, - "quite": 4135, - "quito": 35828, - "quits": 32505, - "quitting": 33871, - "quity": 33133, - "quiz": 31197, - "quiz": 8344, - "quizz": 35041, - "quo": 3046, - "quo": 28127, - "quoi": 45549, - "quot": 5452, - "quot": 47587, - "quota": 42097, - "quotation": 49195, - "quote": 15446, - "quote": 4020, - "quoted": 27706, - "quoteoftheday": 19975, - "quotes": 5808, - "quoting": 31651, - "qur": 37782, - "quran": 19690, - "qureshi": 46307, - "qvist": 42322, - "qx": 45038, - "r": 81, - "r": 337, - "ra": 559, - "ra": 1735, - "raa": 44344, - "rab": 14816, - "rab": 33224, - "rabb": 6875, - "rabbi": 20959, - "rabbit": 10274, - "rabbits": 27028, - "rabhu": 25806, - "rable": 10182, - "rac": 1773, - "rac": 30462, - "raccoon": 29516, - "race": 10978, - "race": 2471, - "racec": 18814, - "racecourse": 25036, - "raced": 36021, - "racer": 16798, - "racers": 33603, - "races": 8605, - "raceway": 24650, - "rach": 6876, - "rach": 33429, - "racha": 21952, - "racha": 35022, - "rachael": 29095, - "rachel": 13511, - "rachel": 8029, - "raci": 33381, - "racial": 13801, - "racially": 43577, - "racing": 23306, - "racing": 3699, - "racism": 11276, - "racist": 9684, - "racists": 41777, - "rack": 24600, - "rack": 12034, - "racket": 37691, - "racks": 21191, - "rad": 4473, - "rad": 8238, - "rada": 30437, - "radar": 9672, - "radcliffe": 33096, - "rade": 44494, - "rade": 17911, - "rader": 45002, - "radford": 45800, - "radha": 43122, - "radi": 5772, - "radial": 42028, - "radiance": 45670, - "radiant": 25614, - "radiation": 18210, - "radiator": 39372, - "radic": 18082, - "radical": 13712, - "radicals": 45903, - "radio": 7176, - "radio": 2638, - "radioactive": 34704, - "radiodisney": 36483, - "radiohead": 39472, - "radiology": 29684, - "radios": 43669, - "radish": 37789, - "radius": 37570, - "rado": 29784, - "rae": 21646, - "rae": 15051, - "rael": 45390, - "raer": 44561, - "raf": 11495, - "raf": 11490, - "rafa": 14352, - "rafa": 24850, - "rafael": 38221, - "rafael": 19216, - "rafaelnadal": 49219, - "raff": 34900, - "raffic": 32928, - "raffle": 13752, - "raffles": 43489, - "rafi": 35304, - "raft": 9233, - "rafting": 36309, - "rag": 13958, - "rag": 20687, - "rage": 8593, - "rages": 34253, - "ragh": 35642, - "ragha": 40972, - "raging": 25015, - "ragn": 24125, - "ragnar": 34385, - "ragnarok": 41856, - "ragon": 34768, - "rags": 47838, - "rah": 12277, - "rah": 8766, - "raheem": 43317, - "rahim": 24152, - "rahman": 19680, - "rahu": 13129, - "rahul": 37239, - "rahul": 17440, - "rahulg": 27510, - "rahulgandhi": 28293, - "rai": 9165, - "rai": 9638, - "raid": 6877, - "raided": 43417, - "raider": 27368, - "raider": 21455, - "raidernation": 47901, - "raiders": 11817, - "raids": 26655, - "rail": 4573, - "rail": 6879, - "raila": 47273, - "railminindia": 35557, - "railroad": 17080, - "rails": 23427, - "railway": 27614, - "railway": 7856, - "railwayana": 46750, - "railways": 20765, - "raim": 45785, - "rain": 3128, - "rain": 2443, - "raina": 30564, - "rainbow": 24562, - "rainbow": 6286, - "rainbows": 30483, - "raine": 49038, - "raine": 6871, - "rained": 32310, - "rainf": 15024, - "rainfall": 15350, - "rainforest": 22823, - "rainier": 37850, - "raining": 13964, - "rains": 14272, - "rainy": 10222, - "rais": 14729, - "raise": 24249, - "raise": 5078, - "raised": 6027, - "raiser": 33555, - "raises": 13297, - "raisethe": 47109, - "raisin": 36864, - "raising": 6883, - "raj": 5958, - "raj": 10813, - "raja": 46069, - "raja": 19150, - "rajan": 46595, - "rajas": 16185, - "rajasthan": 18017, - "raje": 21899, - "rajesh": 43602, - "raji": 27569, - "rajini": 29600, - "rajini": 40622, - "rajinikanth": 32922, - "rajiv": 40197, - "rajkumar": 49304, - "rajput": 47572, - "raju": 47029, - "rak": 13523, - "rak": 26287, - "rake": 26825, - "rake": 32712, - "rakesh": 41083, - "ral": 8062, - "ral": 1406, - "rale": 14192, - "raleigh": 18207, - "rall": 23249, - "rallies": 25230, - "rally": 18882, - "rally": 5041, - "rallying": 36836, - "ralph": 25290, - "ralph": 12234, - "ram": 1976, - "ram": 2007, - "rama": 22112, - "ramad": 12736, - "ramadan": 15547, - "ramadhan": 47415, - "raman": 39816, - "ramapho": 43963, - "ramaphosa": 44993, - "ramatta": 49112, - "rambo": 41855, - "ramcharan": 45275, - "rame": 47745, - "ramen": 18892, - "ramesh": 48640, - "ramesh": 40186, - "rami": 43016, - "ramirez": 23877, - "ramon": 27958, - "ramone": 47201, - "ramos": 21046, - "ramp": 14271, - "rampage": 32077, - "rampant": 41985, - "ramps": 35257, - "rams": 10292, - "ramsay": 26259, - "ramsey": 19215, - "ran": 1433, - "ran": 4031, - "rana": 22143, - "ranbir": 40881, - "rance": 29034, - "ranch": 43955, - "ranch": 10659, - "rancho": 26258, - "rand": 5628, - "rand": 18718, - "randall": 23639, - "rande": 21469, - "randolph": 29899, - "random": 11396, - "random": 6160, - "randomly": 17272, - "rands": 39153, - "randy": 29479, - "randy": 13279, - "rane": 28852, - "rang": 4043, - "rang": 24377, - "range": 13627, - "range": 3818, - "ranger": 31472, - "ranger": 13593, - "rangers": 7664, - "ranges": 25685, - "ranging": 25946, - "rani": 29264, - "rani": 22631, - "rank": 11501, - "ranked": 8307, - "rankin": 37539, - "ranking": 12347, - "rankings": 12596, - "ranks": 14469, - "rano": 18608, - "rans": 46259, - "ransom": 28523, - "ransom": 34646, - "ransomware": 33815, - "rant": 46467, - "rant": 9819, - "rants": 34014, - "ranveer": 32402, - "ranveer": 41482, - "ranveerofficial": 42116, - "rao": 16913, - "rap": 7773, - "rap": 7348, - "rape": 46099, - "rape": 10070, - "raped": 23700, - "rapha": 22754, - "raphael": 30091, - "rapi": 8610, - "rapid": 47697, - "rapid": 12205, - "rapidly": 16710, - "rapids": 18848, - "raping": 44926, - "rapist": 33360, - "rapp": 19283, - "rapper": 11860, - "rappers": 30315, - "rapping": 42864, - "raps": 37887, - "raptor": 26762, - "raptors": 17035, - "raq": 39787, - "raq": 43312, - "raqqa": 47074, - "raquel": 44338, - "rar": 26819, - "rar": 24605, - "rard": 21012, - "rare": 18992, - "rare": 3865, - "rarely": 17315, - "rarest": 43237, - "rarity": 45862, - "ras": 23492, - "ras": 8224, - "rasc": 30085, - "rascal": 43481, - "rash": 14917, - "rash": 30608, - "rashad": 46527, - "rasheed": 41638, - "rashi": 19426, - "rashid": 26757, - "rasp": 10487, - "raspberries": 37742, - "raspberry": 40162, - "raspberry": 13615, - "raspberrypi": 43934, - "rass": 45654, - "rasta": 47002, - "rat": 3806, - "rat": 8985, - "rata": 28568, - "ratchet": 25078, - "rate": 5068, - "rated": 8183, - "rates": 6864, - "rath": 18268, - "rath": 39772, - "rather": 5252, - "rati": 11486, - "rating": 10567, - "ratings": 14176, - "ratio": 15893, - "ration": 27002, - "ration": 35662, - "rational": 33086, - "ratna": 49078, - "ratri": 32288, - "rats": 19043, - "ratt": 20737, - "ratt": 34785, - "rattle": 40824, - "rattle": 41839, - "rau": 27744, - "raul": 30218, - "raun": 41169, - "rav": 14367, - "rav": 23606, - "rave": 38784, - "rave": 17601, - "ravel": 27927, - "raven": 10269, - "raven": 16803, - "ravens": 17946, - "ravi": 22947, - "ravi": 19538, - "ravin": 39099, - "raving": 45807, - "raviol": 41104, - "ravioli": 43460, - "raw": 10166, - "raw": 6323, - "rawlings": 40662, - "rax": 38520, - "ray": 5312, - "ray": 3077, - "raya": 29991, - "raymond": 16683, - "rayn": 47852, - "rayon": 47900, - "rays": 11064, - "raz": 9700, - "raz": 19087, - "raza": 37724, - "razer": 33832, - "razor": 24934, - "razor": 21300, - "razz": 43769, - "rb": 12740, - "rb": 7477, - "rbc": 37500, - "rbi": 15687, - "rbs": 29102, - "rc": 7575, - "rc": 7457, - "rca": 33942, - "rcb": 45240, - "rcmp": 31489, - "rcn": 49370, - "rctid": 49223, - "rd": 13501, - "rd": 1973, - "rda": 45755, - "rdr": 44364, - "rds": 32378, - "re": 515, - "re": 810, - "rea": 11521, - "reach": 4483, - "reach": 4279, - "reached": 6878, - "reaches": 14462, - "reaching": 11358, - "react": 36566, - "react": 15065, - "reacted": 42515, - "reacting": 40595, - "reaction": 7189, - "reactions": 18438, - "reactive": 42072, - "reactjs": 46173, - "reactor": 32037, - "reacts": 23115, - "read": 933, - "read": 1199, - "reader": 9884, - "readers": 10335, - "readiness": 28131, - "reading": 17556, - "reading": 2337, - "readingfc": 47428, - "readings": 23361, - "reads": 6597, - "ready": 17351, - "ready": 1112, - "reagan": 17767, - "real": 2017, - "real": 1532, - "realdonaldtrump": 7025, - "reale": 5930, - "realest": 45855, - "realestate": 32937, - "realestate": 6569, - "reali": 4185, - "realis": 38114, - "realise": 14773, - "realised": 17945, - "realising": 39537, - "realism": 20024, - "realist": 30248, - "realistic": 16157, - "realities": 32443, - "reality": 46802, - "reality": 5004, - "realization": 40402, - "realize": 7538, - "realized": 10489, - "realizes": 42918, - "realizing": 23284, - "reall": 39686, - "really": 43249, - "really": 1414, - "realm": 23083, - "realmadrid": 27866, - "realms": 43033, - "realness": 46761, - "realtime": 44002, - "realtime": 38203, - "realtor": 18038, - "realtors": 31759, - "realty": 20471, - "ream": 37242, - "ream": 15219, - "rean": 48477, - "reap": 31334, - "reaper": 29922, - "rear": 39652, - "rear": 10223, - "reas": 9121, - "reason": 12882, - "reason": 3893, - "reasonable": 18558, - "reasonably": 38589, - "reasoning": 30341, - "reasons": 5686, - "reau": 32398, - "reb": 12370, - "reb": 18796, - "reba": 48543, - "rebate": 43817, - "rebe": 25227, - "rebec": 10774, - "rebecca": 12892, - "rebel": 8185, - "rebel": 12248, - "rebellion": 22170, - "rebels": 13623, - "rebirth": 33303, - "reboot": 22385, - "reborn": 30229, - "reboun": 43381, - "rebound": 31280, - "rebounds": 19190, - "rebs": 28164, - "rebu": 43162, - "rebuild": 20022, - "rebuilding": 30880, - "rebuilt": 33137, - "rec": 1020, - "rec": 11243, - "recall": 15151, - "recalled": 32142, - "recalling": 47855, - "recalls": 24740, - "recap": 29816, - "recap": 8337, - "recaps": 47997, - "recard": 35536, - "rece": 1890, - "recei": 2148, - "receip": 38503, - "receipt": 30479, - "receipts": 41181, - "receive": 4800, - "received": 4178, - "receiver": 17659, - "receivers": 45294, - "receives": 10027, - "receiving": 7252, - "recent": 3969, - "recently": 4482, - "recep": 17450, - "reception": 8364, - "receptions": 46881, - "receptor": 41835, - "recess": 38182, - "recession": 27176, - "recharge": 29396, - "rechargeable": 37516, - "reci": 2037, - "recipe": 28923, - "recipe": 4614, - "recipeoftheday": 38727, - "recipes": 9243, - "recipi": 10136, - "recipient": 13703, - "recipients": 18940, - "recipro": 41789, - "recital": 23457, - "recite": 48824, - "reck": 11715, - "reckless": 26284, - "reckon": 23854, - "recl": 42277, - "reclaim": 35969, - "reclaimed": 32648, - "reco": 2535, - "reco": 46038, - "recogn": 6343, - "recogni": 5329, - "recognise": 19824, - "recognised": 20986, - "recognising": 48423, - "recognition": 9415, - "recognizable": 47240, - "recognize": 10905, - "recognized": 9929, - "recognizes": 26909, - "recognizing": 19666, - "recomm": 4540, - "recommend": 11628, - "recommend": 8942, - "recommendation": 20118, - "recommendations": 16516, - "recommended": 11100, - "recommending": 44301, - "recommends": 22940, - "recon": 15371, - "recon": 28996, - "reconciliation": 26451, - "reconstruction": 24955, - "recor": 1723, - "record": 21328, - "record": 2717, - "recorded": 9392, - "recorder": 26747, - "recording": 48237, - "recording": 6942, - "recordings": 19715, - "records": 4529, - "recover": 16785, - "recovered": 16444, - "recovering": 19005, - "recovers": 47935, - "recovery": 6591, - "recre": 22148, - "recreate": 29775, - "recreated": 40888, - "recreating": 48224, - "recreation": 17331, - "recreational": 24329, - "recru": 4745, - "recruit": 9011, - "recruit": 15585, - "recruited": 36518, - "recruiter": 43120, - "recruiters": 46542, - "recruiting": 10533, - "recruitment": 10541, - "recruits": 22647, - "recs": 33069, - "rectan": 43041, - "rectangular": 43321, - "rector": 41585, - "recu": 26798, - "recur": 19983, - "recurring": 35912, - "recy": 6790, - "recycla": 40659, - "recyclable": 48907, - "recycle": 19366, - "recycled": 16829, - "recycling": 12566, - "red": 1893, - "red": 736, - "redbubble": 46137, - "redbull": 29483, - "redbull": 29219, - "redcarpet": 32259, - "redcross": 30659, - "redd": 22149, - "redd": 40618, - "redding": 41061, - "reddish": 43383, - "reddit": 15226, - "reddy": 23028, - "rede": 10913, - "redeem": 37449, - "redefining": 46352, - "redemption": 20233, - "redesign": 24188, - "redesigned": 33111, - "redevelopment": 30322, - "redhead": 36267, - "redi": 7976, - "redman": 44753, - "redmond": 39627, - "rednation": 28180, - "rednationrising": 28262, - "redneck": 39105, - "redness": 22626, - "redo": 42524, - "redon": 48506, - "redro": 37722, - "reds": 11221, - "redskins": 19023, - "redsox": 19144, - "reduc": 5015, - "reduce": 6604, - "reduced": 10821, - "reduces": 20539, - "reducing": 13836, - "reduction": 12219, - "reductions": 48263, - "redux": 43014, - "redvelvet": 41845, - "redwings": 31058, - "redwood": 31748, - "ree": 9282, - "ree": 5813, - "reebok": 26734, - "reece": 30457, - "reed": 26209, - "reed": 10435, - "reedus": 32865, - "reef": 46557, - "reef": 15624, - "reefs": 34459, - "reel": 34467, - "reel": 17166, - "reels": 48127, - "reem": 48891, - "reen": 21638, - "reen": 23679, - "rees": 18314, - "reese": 20929, - "reeves": 23060, - "ref": 4067, - "ref": 9591, - "refe": 5624, - "refer": 18425, - "refer": 22325, - "referee": 20398, - "referees": 45583, - "referen": 13535, - "reference": 10214, - "references": 24009, - "referendum": 16732, - "referr": 47784, - "referral": 30219, - "referred": 22969, - "referring": 29797, - "refers": 30069, - "refill": 37859, - "refin": 13455, - "refined": 26098, - "refinery": 31393, - "refining": 48406, - "reflec": 4608, - "reflect": 13373, - "reflected": 28732, - "reflecting": 19700, - "reflection": 11884, - "reflections": 16647, - "reflective": 27008, - "reflects": 15821, - "reflex": 45756, - "reflex": 36050, - "reform": 45678, - "reform": 8875, - "reformation": 45119, - "reformed": 40880, - "reforms": 19274, - "refr": 34850, - "refre": 11995, - "refresh": 17836, - "refresh": 23288, - "refreshed": 35925, - "refresher": 41481, - "refreshing": 14159, - "refreshments": 31127, - "refriger": 21076, - "refrigerator": 36662, - "refs": 35595, - "refu": 3545, - "refuge": 5638, - "refuge": 17432, - "refugee": 11556, - "refugees": 42687, - "refugees": 8316, - "refund": 28899, - "refur": 15519, - "refurbi": 18259, - "refurbished": 26190, - "refurbishment": 35803, - "refusal": 46547, - "refuse": 16412, - "refused": 17190, - "refuses": 20085, - "refusing": 26704, - "reg": 5472, - "reg": 12353, - "regain": 37510, - "regal": 31512, - "regal": 25028, - "regan": 34062, - "regar": 5881, - "regard": 21801, - "regarded": 32017, - "regarding": 8493, - "regardless": 17220, - "regards": 23079, - "regatta": 26316, - "regen": 46545, - "regency": 29341, - "regeneration": 29257, - "regent": 30455, - "regents": 46710, - "regg": 12757, - "reggae": 37821, - "reggae": 15214, - "reggie": 21872, - "regi": 1608, - "regime": 11378, - "regiment": 18603, - "regin": 23287, - "regina": 16841, - "region": 16542, - "region": 4341, - "regional": 5552, - "regionals": 26043, - "regions": 14530, - "regis": 28094, - "register": 3967, - "registered": 10254, - "registering": 33510, - "registr": 29193, - "registration": 7302, - "registrations": 38423, - "registry": 30020, - "rego": 47351, - "regram": 30329, - "regrann": 48802, - "regre": 8627, - "regression": 43733, - "regret": 14374, - "regrets": 23231, - "regu": 3411, - "regui": 46722, - "regul": 11847, - "regular": 14882, - "regular": 6307, - "regularly": 17263, - "regulat": 14575, - "regulate": 33494, - "regulated": 31384, - "regulating": 48156, - "regulation": 14267, - "regulations": 16654, - "regulator": 30364, - "regulators": 35837, - "regulatory": 17717, - "reh": 21492, - "reha": 10193, - "rehab": 16973, - "rehabil": 17930, - "rehabilitation": 21042, - "rehear": 7273, - "rehearsal": 11482, - "rehearsals": 17977, - "rehearsing": 23125, - "rehman": 39206, - "rei": 15343, - "rei": 26033, - "reic": 41230, - "reich": 48589, - "reich": 28929, - "reid": 45125, - "reid": 11744, - "reig": 13092, - "reign": 41419, - "reign": 14827, - "reigning": 28409, - "reigns": 21217, - "reiki": 46960, - "reilly": 28120, - "reim": 35421, - "reimagined": 46799, - "reimbur": 39857, - "rein": 9240, - "rein": 45009, - "reina": 43847, - "reinde": 23810, - "reindeer": 25072, - "reinfor": 48161, - "reinforced": 41909, - "reinst": 33969, - "reinvent": 38171, - "reissue": 34042, - "reiter": 35394, - "rejec": 9958, - "reject": 22435, - "rejected": 17505, - "rejection": 32264, - "rejects": 23155, - "rejo": 20150, - "rejoice": 24712, - "rejuven": 26332, - "rek": 47542, - "rek": 19201, - "rel": 1825, - "rel": 5233, - "rela": 4362, - "reland": 15220, - "relat": 27192, - "relatable": 31010, - "relate": 17520, - "related": 5880, - "relates": 36064, - "relating": 27373, - "relation": 4561, - "relation": 16207, - "relations": 10100, - "relationship": 47239, - "relationship": 5837, - "relationships": 10610, - "relative": 17265, - "relatively": 18351, - "relatives": 21981, - "relax": 6777, - "relax": 9035, - "relaxation": 22194, - "relaxed": 18999, - "relaxing": 10256, - "relay": 12403, - "relays": 28404, - "rele": 1602, - "release": 29100, - "release": 2706, - "released": 3410, - "releases": 7393, - "releasethe": 44008, - "releasing": 10321, - "releg": 23378, - "relegated": 45884, - "relegation": 35040, - "relent": 22213, - "relentless": 27207, - "relessly": 33927, - "relev": 9349, - "relevance": 31400, - "relevant": 10568, - "reli": 2674, - "reliability": 27220, - "reliable": 13714, - "reliance": 27727, - "relic": 27802, - "relics": 43208, - "relief": 7518, - "relies": 41579, - "relieve": 28623, - "relieved": 36597, - "religi": 4940, - "religion": 8803, - "religions": 31189, - "religious": 8289, - "relish": 35550, - "relive": 23939, - "reliving": 47558, - "rell": 28802, - "rell": 7127, - "rella": 9952, - "relle": 31390, - "reloaded": 38908, - "relocated": 46791, - "relocation": 39198, - "rels": 23320, - "relu": 32058, - "reluct": 32549, - "reluctant": 45552, - "rely": 4158, - "relying": 42168, - "rem": 15098, - "rem": 21637, - "rema": 4569, - "remain": 29144, - "remain": 6415, - "remainder": 41672, - "remained": 23714, - "remaining": 11392, - "remains": 6807, - "remake": 16234, - "remark": 11136, - "remarkable": 12404, - "remarkably": 39087, - "remarks": 15001, - "remastered": 24932, - "rematch": 26473, - "rembrandt": 45972, - "reme": 20071, - "remedi": 18442, - "remedies": 25581, - "remedy": 25794, - "remem": 7966, - "rememb": 7062, - "remember": 22045, - "remember": 2195, - "remembered": 11763, - "remembering": 8135, - "remembers": 12551, - "remembrance": 40321, - "remembrance": 15860, - "remembranceday": 48333, - "rement": 7173, - "rements": 12667, - "remi": 41693, - "remin": 3216, - "remind": 9868, - "reminded": 12309, - "reminder": 5565, - "reminders": 34121, - "reminding": 19976, - "reminds": 8303, - "remington": 43527, - "reminis": 17723, - "reminiscent": 41704, - "reminiscing": 32552, - "remix": 8519, - "remixes": 31011, - "remn": 29127, - "remnants": 39032, - "remo": 4064, - "remo": 33259, - "remodel": 34159, - "remodel": 37495, - "remodeling": 41432, - "remote": 47163, - "remote": 9687, - "remotely": 32375, - "removable": 44095, - "removal": 13679, - "remove": 9709, - "removed": 10289, - "remover": 44267, - "removes": 29018, - "removing": 18504, - "remy": 30434, - "ren": 737, - "ren": 2596, - "rena": 12591, - "renais": 15409, - "renaissance": 16007, - "renal": 36096, - "renamed": 31535, - "renault": 17600, - "rence": 19245, - "rence": 1553, - "rences": 8545, - "rend": 33932, - "rend": 22851, - "render": 39752, - "render": 13024, - "rendered": 23652, - "rendering": 21339, - "renders": 39419, - "rendez": 43293, - "rendezvous": 45644, - "rendition": 28891, - "rendon": 46272, - "rendous": 49403, - "rends": 38842, - "rene": 15438, - "rene": 12597, - "renee": 23480, - "reneg": 29909, - "renegade": 41229, - "renergy": 37151, - "renew": 6645, - "renew": 22015, - "renewable": 31269, - "renewable": 15941, - "renewableenergy": 33357, - "renewables": 21619, - "renewal": 21270, - "renewed": 20524, - "renfre": 45043, - "reng": 36795, - "reno": 11520, - "reno": 12831, - "renov": 9984, - "renovated": 23839, - "renovation": 17121, - "renovations": 31311, - "renowned": 14727, - "rens": 18183, - "renshaw": 44445, - "rent": 17377, - "rent": 1609, - "rental": 12193, - "rentals": 24105, - "rented": 35932, - "rential": 31692, - "renting": 37662, - "rently": 2615, - "rents": 31109, - "reo": 15963, - "reo": 26854, - "reon": 15761, - "reopen": 26883, - "reopened": 32868, - "reopening": 36663, - "reopens": 40644, - "rep": 4229, - "rep": 6487, - "repair": 8419, - "repaired": 32953, - "repairing": 38534, - "repairs": 16297, - "repar": 34065, - "repe": 5785, - "repeal": 42622, - "repeal": 23938, - "repeat": 10192, - "repeated": 27904, - "repeatedly": 26630, - "repeating": 33834, - "repeats": 39158, - "repell": 46235, - "repent": 47261, - "reper": 29085, - "repet": 38533, - "repl": 13047, - "replac": 6069, - "replace": 9466, - "replaceable": 47762, - "replaced": 13200, - "replacement": 10835, - "replaces": 27781, - "replacing": 18647, - "replay": 16875, - "repleni": 44839, - "replic": 21651, - "replica": 18125, - "replied": 24238, - "replies": 18808, - "reply": 8965, - "replying": 47599, - "repor": 2628, - "report": 2417, - "reported": 7598, - "reportedly": 10953, - "reporter": 11019, - "reporters": 18454, - "reporting": 9218, - "reports": 4908, - "reposit": 41276, - "repository": 46977, - "repost": 33147, - "repost": 7217, - "repostapp": 38388, - "reposting": 20223, - "reppin": 19163, - "repping": 22574, - "repre": 3397, - "represent": 8293, - "represent": 8406, - "representation": 13520, - "representative": 13175, - "representatives": 15591, - "represented": 12299, - "representing": 7561, - "represents": 14433, - "repri": 31854, - "reproduction": 35714, - "reproductive": 25522, - "reps": 14265, - "reptile": 36938, - "reptiles": 38679, - "republic": 6376, - "republic": 7185, - "republican": 9842, - "republicans": 12384, - "repur": 41852, - "req": 42411, - "requ": 10664, - "reque": 9539, - "request": 7813, - "requested": 16199, - "requesting": 33245, - "requests": 17087, - "requi": 4863, - "requiem": 40316, - "require": 14437, - "required": 8500, - "requirement": 27146, - "requirements": 12860, - "requires": 13396, - "requiring": 33425, - "requis": 42602, - "rer": 41295, - "rer": 3407, - "rera": 14301, - "rero": 21860, - "rers": 18869, - "res": 4466, - "res": 934, - "resc": 3956, - "rescheduled": 43553, - "rescu": 8618, - "rescue": 28567, - "rescue": 5718, - "rescued": 11919, - "rescues": 32439, - "rescuing": 43770, - "rese": 13000, - "resear": 6090, - "research": 25694, - "research": 2379, - "researched": 42733, - "researcher": 18334, - "researchers": 9522, - "researching": 24544, - "reseller": 35391, - "resemb": 16916, - "resemblance": 26856, - "resemble": 37230, - "resembles": 35417, - "reser": 16420, - "reserv": 11906, - "reservation": 20289, - "reservations": 19307, - "reserve": 6911, - "reserved": 19796, - "reserves": 19705, - "reservoir": 20574, - "reset": 26250, - "resh": 47432, - "reshi": 39435, - "resi": 2152, - "residen": 22311, - "residence": 11672, - "residences": 38855, - "residency": 18545, - "resident": 9016, - "residente": 44637, - "residentevil": 48393, - "residential": 11002, - "residents": 6008, - "resign": 23584, - "resignation": 24779, - "resigned": 31014, - "resigns": 29738, - "resil": 10932, - "resili": 39212, - "resilience": 15271, - "resilient": 24694, - "resin": 24156, - "resist": 37345, - "resist": 9587, - "resistance": 7392, - "resistant": 17542, - "resisting": 43679, - "resolution": 9977, - "resolutions": 26816, - "resolve": 20787, - "resolved": 28807, - "reson": 18092, - "resonance": 42310, - "resort": 6594, - "resorts": 18839, - "resource": 43729, - "resource": 9760, - "resources": 6723, - "respec": 7466, - "respect": 31411, - "respect": 4916, - "respected": 19126, - "respectful": 24379, - "respecting": 36172, - "respective": 25817, - "respectively": 28794, - "respects": 23553, - "respir": 20771, - "respiratory": 24483, - "respon": 2421, - "respond": 12355, - "responded": 21121, - "respondents": 49253, - "responders": 25155, - "responding": 18037, - "responds": 17436, - "response": 5399, - "responses": 19006, - "responsi": 5490, - "responsibilities": 30375, - "responsibility": 11272, - "responsible": 8936, - "responsibly": 33675, - "responsive": 21544, - "ress": 34651, - "ress": 13629, - "resso": 15133, - "rest": 10974, - "rest": 2539, - "restart": 37378, - "restaur": 3775, - "restaurant": 41930, - "restaurant": 4489, - "restaurants": 11714, - "rested": 46020, - "resting": 18044, - "restless": 36724, - "restling": 30076, - "resto": 11118, - "resto": 41666, - "restock": 34060, - "restocked": 36966, - "restor": 8984, - "restoration": 11989, - "restorative": 46509, - "restore": 14008, - "restored": 14238, - "restoring": 24406, - "restra": 25424, - "restric": 11036, - "restricted": 27197, - "restriction": 44282, - "restrictions": 19884, - "restroom": 43423, - "restructuring": 43260, - "rests": 33775, - "resu": 10095, - "resul": 2655, - "result": 5659, - "resulted": 26449, - "resulting": 24581, - "results": 3790, - "resume": 15077, - "resumes": 30268, - "resur": 14865, - "resurg": 45962, - "resurgence": 47692, - "resurrec": 18487, - "resurrection": 25811, - "resusc": 47523, - "ret": 20500, - "ret": 10048, - "reta": 20153, - "retail": 14910, - "retail": 6455, - "retailer": 22549, - "retailers": 19418, - "retain": 24430, - "retained": 42737, - "retaining": 35571, - "retains": 42583, - "retali": 33101, - "retar": 29964, - "retarded": 44111, - "retention": 26247, - "rethink": 29078, - "rethinking": 42951, - "reti": 4721, - "retin": 31270, - "retina": 36919, - "retire": 18846, - "retired": 11477, - "retirement": 9205, - "retires": 29060, - "retiring": 21200, - "retrac": 32735, - "retreat": 11210, - "retri": 16918, - "retriever": 28394, - "retro": 6535, - "retro": 7755, - "retrogamer": 47220, - "retrogaming": 11316, - "retrospective": 27105, - "rett": 41082, - "rett": 8425, - "rette": 33066, - "return": 43042, - "return": 3458, - "returned": 10476, - "returning": 9290, - "returns": 5020, - "retwee": 48190, - "retweet": 3195, - "retweeted": 12705, - "retweeting": 32345, - "retweets": 10160, - "rety": 41550, - "reu": 20255, - "reu": 40371, - "reuben": 40450, - "reunion": 10247, - "reunite": 26179, - "reunited": 13516, - "reusable": 30395, - "reuse": 26535, - "reut": 15210, - "reuters": 15569, - "rev": 8424, - "rev": 11789, - "revamp": 29819, - "revamped": 36420, - "revan": 45277, - "reve": 3115, - "reveal": 8052, - "revealed": 7171, - "revealing": 21321, - "reveals": 6621, - "revel": 14133, - "revelation": 24053, - "revelations": 36163, - "reven": 10171, - "revenge": 12717, - "revenue": 10637, - "revenues": 33348, - "rever": 14829, - "rever": 41913, - "revere": 44187, - "reverend": 34407, - "revers": 20726, - "reversal": 33367, - "reverse": 12812, - "reversed": 42485, - "reversi": 31601, - "reversible": 34212, - "revi": 8317, - "review": 2268, - "reviewed": 16678, - "reviewer": 36409, - "reviewers": 48195, - "reviewing": 20458, - "reviews": 7227, - "revise": 46801, - "revised": 22806, - "revising": 46882, - "revision": 20335, - "revisit": 26568, - "revisited": 34302, - "revisiting": 33144, - "revit": 26367, - "revitalization": 46923, - "revival": 14142, - "revive": 26450, - "revived": 42912, - "revo": 28660, - "revol": 13447, - "revolt": 31697, - "revolu": 4900, - "revolution": 17699, - "revolution": 6644, - "revolutionary": 14734, - "revolver": 38747, - "revolving": 47230, - "revs": 49286, - "revue": 43428, - "rew": 37564, - "rewar": 15857, - "reward": 11223, - "rewarded": 27163, - "rewarding": 23351, - "rewards": 15235, - "rewatch": 35610, - "rewatching": 41287, - "rewind": 26867, - "rewrite": 45218, - "rex": 13002, - "rex": 10904, - "rexperience": 33924, - "rey": 9681, - "rey": 4517, - "reyes": 18255, - "reykja": 47571, - "reyn": 11998, - "reynolds": 14309, - "reys": 48284, - "rez": 27597, - "rez": 15192, - "reza": 35888, - "rf": 35529, - "rf": 16368, - "rfc": 19003, - "rfid": 40204, - "rg": 33055, - "rg": 14897, - "rgb": 36128, - "rgv": 33685, - "rh": 8745, - "rh": 22404, - "rha": 19473, - "rhapso": 32532, - "rhapsody": 35774, - "rhe": 9186, - "rhea": 28612, - "rhetor": 24359, - "rhetoric": 29985, - "rhett": 42984, - "rheu": 42953, - "rhi": 21212, - "rhin": 12269, - "rhine": 22863, - "rhine": 44833, - "rhinestone": 30450, - "rhino": 41744, - "rhino": 20056, - "rhinos": 30671, - "rho": 7637, - "rhode": 39302, - "rhode": 27907, - "rhodes": 17785, - "rhon": 25882, - "rhonda": 46100, - "rhp": 27199, - "rhs": 24551, - "rhu": 23897, - "rhubarb": 30213, - "rhy": 7740, - "rhyme": 37356, - "rhymes": 33143, - "rhys": 28647, - "rhyth": 27069, - "rhythm": 16172, - "rhythmic": 46386, - "rhythms": 40872, - "ri": 553, - "ri": 2574, - "ria": 3650, - "rial": 15200, - "rian": 7788, - "rib": 44634, - "rib": 18298, - "riba": 44992, - "ribb": 10081, - "ribbon": 12114, - "ribbons": 35271, - "ribe": 46115, - "ribs": 17519, - "ric": 920, - "ric": 4798, - "rica": 14230, - "rical": 18109, - "rican": 30958, - "ricardo": 23140, - "ricci": 35783, - "ricciardo": 49282, - "rice": 36362, - "rice": 4741, - "rich": 5223, - "rich": 4021, - "richar": 9350, - "richard": 9080, - "richard": 4470, - "richards": 11372, - "richardson": 15984, - "riche": 23286, - "richer": 34138, - "riches": 37093, - "richest": 25572, - "richi": 38934, - "richie": 19797, - "richland": 43079, - "richmond": 34143, - "richmond": 11292, - "richter": 37591, - "rick": 6237, - "rick": 3064, - "ricket": 46161, - "ricket": 23671, - "ricks": 23111, - "ricky": 19188, - "ricky": 12814, - "rico": 37962, - "rico": 11362, - "ricotta": 38473, - "rics": 7353, - "ricul": 6980, - "rid": 18103, - "rid": 9874, - "ridd": 21990, - "ridden": 32025, - "riddle": 31839, - "ride": 15816, - "ride": 2994, - "rider": 31056, - "rider": 9707, - "riders": 10826, - "rides": 11308, - "ridg": 42646, - "ridge": 16580, - "ridge": 6352, - "ridic": 9624, - "ridiculous": 12659, - "ridiculously": 25661, - "ridin": 47869, - "riding": 6765, - "ridley": 27883, - "rie": 14824, - "rie": 5322, - "ried": 7552, - "riel": 26696, - "rien": 35237, - "rier": 40714, - "rier": 13336, - "ries": 28179, - "ries": 3059, - "riesling": 36372, - "rif": 7044, - "riff": 30359, - "rifle": 15354, - "rifles": 25678, - "rift": 26681, - "rig": 18462, - "rig": 13871, - "riga": 36626, - "rigged": 35897, - "rigging": 38160, - "riggs": 40328, - "righ": 15391, - "right": 13341, - "right": 1155, - "righte": 20762, - "righteous": 28169, - "righteousness": 42481, - "rightful": 42601, - "rightly": 42669, - "rights": 3336, - "rigid": 43138, - "rigor": 36788, - "rigorous": 41654, - "rigs": 42893, - "rihanna": 13744, - "rij": 41097, - "rik": 31136, - "rik": 27832, - "rika": 28580, - "ril": 12270, - "ril": 2388, - "riley": 35056, - "riley": 12260, - "rill": 23705, - "rilla": 43956, - "rilla": 18685, - "rim": 28147, - "rim": 12199, - "rime": 27064, - "rimin": 11527, - "rimo": 47817, - "rims": 34327, - "rin": 5859, - "rin": 11739, - "rina": 12869, - "rine": 24952, - "ring": 8318, - "ring": 2540, - "ringed": 44712, - "ringer": 35761, - "ringing": 26035, - "ringo": 38845, - "rings": 5751, - "rington": 12455, - "rink": 21497, - "rinka": 47316, - "rino": 47188, - "rinse": 48320, - "rio": 15681, - "rio": 5782, - "rion": 31623, - "rion": 34046, - "rios": 32814, - "riot": 32636, - "riot": 14218, - "riots": 24844, - "rious": 6340, - "rip": 10353, - "rip": 4243, - "ripe": 22832, - "ripley": 41589, - "ripp": 25276, - "ripped": 17815, - "ripper": 35347, - "ripping": 29126, - "ripple": 24825, - "rips": 30182, - "rir": 36792, - "ris": 6108, - "ris": 1999, - "rise": 13641, - "rise": 3151, - "risen": 23653, - "risers": 44983, - "rises": 13362, - "riseup": 35760, - "rish": 18378, - "rish": 18927, - "rishi": 48434, - "rising": 30452, - "rising": 5448, - "risis": 37998, - "risk": 27967, - "risk": 4213, - "risking": 48155, - "risks": 12474, - "risky": 27630, - "risotto": 31471, - "rist": 40610, - "rit": 5156, - "rit": 17333, - "rita": 16178, - "ritchie": 30997, - "rite": 39318, - "rite": 18429, - "rites": 36160, - "rith": 48169, - "rith": 48850, - "riti": 32904, - "rito": 19379, - "ritos": 33507, - "ritt": 26092, - "ritter": 34854, - "ritu": 13391, - "ritual": 19712, - "rituals": 31145, - "ritz": 39151, - "ritz": 25627, - "rium": 33884, - "riv": 25113, - "rival": 13412, - "rival": 15629, - "rivalry": 19511, - "rivals": 15135, - "rive": 27588, - "rive": 34917, - "river": 5239, - "river": 2473, - "rivera": 18275, - "riverdale": 28304, - "riverfront": 44439, - "rivers": 10723, - "riverside": 15809, - "riveting": 44024, - "riviera": 25851, - "rix": 43407, - "rix": 9483, - "riya": 36908, - "riyad": 31564, - "riyadh": 33577, - "riz": 18426, - "riz": 35411, - "rizal": 41555, - "rizio": 40191, - "rizz": 34826, - "rizzo": 49076, - "rj": 26016, - "rj": 20949, - "rk": 38725, - "rk": 21422, - "rl": 18041, - "rl": 14590, - "rlly": 43222, - "rly": 25954, - "rm": 20202, - "rm": 8431, - "rmb": 49097, - "rms": 40529, - "rn": 13206, - "rn": 7666, - "rna": 24566, - "rnb": 31556, - "rnc": 35309, - "rnli": 29748, - "ro": 532, - "ro": 2795, - "roa": 8313, - "roach": 31073, - "road": 4370, - "road": 1759, - "roadhouse": 47891, - "roadmap": 30111, - "roads": 6189, - "roadsafety": 39992, - "roadshow": 21168, - "roadside": 26928, - "roadster": 28920, - "roadto": 24681, - "roadtrip": 15094, - "roadway": 42744, - "roam": 34045, - "roaming": 29240, - "roano": 34184, - "roanoke": 36587, - "roar": 34193, - "roar": 18483, - "roaring": 26428, - "roast": 11404, - "roasted": 10479, - "roasting": 32228, - "rob": 2668, - "rob": 6442, - "robb": 14059, - "robb": 39673, - "robbed": 24163, - "robber": 35545, - "robbers": 40852, - "robbery": 16393, - "robbi": 44898, - "robbie": 37200, - "robbie": 15970, - "robbing": 47569, - "robbins": 23461, - "robby": 44128, - "robe": 23116, - "rober": 4532, - "robert": 8811, - "robert": 3929, - "roberta": 43373, - "roberto": 42645, - "roberto": 16227, - "roberts": 10366, - "robertson": 17643, - "robes": 29304, - "robi": 16743, - "robin": 6681, - "robin": 7988, - "robins": 35502, - "robinson": 8523, - "robles": 47646, - "roblo": 27481, - "roblox": 37798, - "robo": 4672, - "robo": 36057, - "robot": 46089, - "robot": 8797, - "robotic": 23975, - "robotics": 13546, - "robots": 13473, - "robson": 31113, - "robust": 22780, - "robyn": 34533, - "roc": 3268, - "roc": 13776, - "rocco": 30009, - "roch": 23788, - "rochdale": 41880, - "roche": 31776, - "rochelle": 40161, - "rochester": 18057, - "rock": 2640, - "rock": 2172, - "rockab": 39353, - "rockabilly": 45019, - "rocke": 19914, - "rocked": 16116, - "rockefeller": 35476, - "rocker": 29008, - "rockers": 32338, - "rocket": 25435, - "rocket": 8383, - "rockets": 13292, - "rockford": 41039, - "rockies": 20621, - "rockin": 12073, - "rocking": 7081, - "rockn": 24442, - "rocknroll": 27840, - "rocks": 6135, - "rockstar": 23603, - "rockstar": 18000, - "rockstargames": 27516, - "rockstars": 46639, - "rockthe": 49363, - "rockwell": 34747, - "rocky": 33481, - "rocky": 9648, - "rod": 9712, - "rod": 8291, - "roddy": 42332, - "rode": 18449, - "rodeo": 18250, - "rodgers": 17612, - "rodi": 49100, - "rodney": 21753, - "rodri": 11053, - "rodrigo": 33944, - "rodriguez": 14057, - "rods": 28618, - "roe": 27671, - "roe": 9996, - "rof": 33029, - "rofl": 48228, - "roft": 45212, - "rog": 34269, - "rog": 34017, - "rogen": 23380, - "roger": 13929, - "roger": 7735, - "rogerfederer": 40182, - "rogers": 10661, - "rogue": 32575, - "rogue": 15162, - "roh": 14933, - "roh": 29840, - "rohan": 39848, - "rohing": 23600, - "rohingya": 26146, - "rohit": 44649, - "rohit": 24299, - "roi": 21877, - "rok": 36807, - "rol": 3393, - "rol": 7818, - "roland": 33713, - "roland": 19569, - "role": 18485, - "role": 3414, - "roles": 11871, - "rolex": 21093, - "rolf": 48606, - "roll": 4711, - "roll": 3341, - "rolled": 11982, - "roller": 21034, - "roller": 12342, - "rollercoaster": 38248, - "rollers": 36941, - "rollin": 27545, - "rolling": 24250, - "rolling": 6347, - "rollingstones": 41309, - "rollins": 27724, - "rollout": 47710, - "rollover": 39214, - "rolls": 8614, - "rolltide": 28101, - "rom": 11377, - "rom": 19205, - "roma": 44134, - "roma": 11631, - "romain": 48897, - "roman": 4416, - "roman": 7370, - "romance": 7215, - "romania": 15884, - "romanian": 30866, - "romano": 38409, - "romans": 23066, - "romantic": 41457, - "romantic": 8821, - "rome": 9406, - "rome": 5243, - "romeo": 14429, - "romero": 23694, - "romney": 19287, - "romo": 32248, - "romper": 43699, - "ron": 2393, - "ron": 3372, - "rona": 42385, - "ronal": 46194, - "ronald": 15683, - "ronaldo": 13463, - "ronan": 34971, - "rond": 31935, - "ronda": 37436, - "rondo": 43756, - "rone": 48082, - "rone": 32763, - "roni": 47234, - "ronnie": 45257, - "ronnie": 16421, - "rons": 19536, - "ront": 48881, - "roo": 1249, - "roo": 31227, - "rood": 38007, - "roof": 9120, - "roof": 6449, - "roofing": 24415, - "roofs": 34635, - "rooftop": 16319, - "rook": 35918, - "rookie": 9771, - "rookies": 31917, - "room": 8845, - "room": 1530, - "roomie": 36851, - "roommate": 19825, - "roommates": 37323, - "rooms": 6328, - "rooney": 17712, - "roos": 32938, - "roosevel": 17644, - "roosevelt": 18488, - "rooster": 46263, - "rooster": 30926, - "roosters": 43693, - "root": 25930, - "root": 9728, - "rooted": 30428, - "rooting": 25523, - "roots": 8084, - "rop": 43401, - "rope": 9953, - "ropes": 30506, - "ror": 8668, - "ror": 2843, - "rors": 12072, - "rory": 42804, - "rory": 17813, - "ros": 5288, - "ros": 6930, - "rosa": 14393, - "rosal": 30397, - "rosario": 33640, - "rosary": 33098, - "rosberg": 46037, - "rose": 6146, - "rose": 3568, - "roseanne": 47528, - "rosel": 33616, - "rosemary": 19472, - "rosen": 13214, - "rosen": 36424, - "rosenberg": 43558, - "rosenthal": 46990, - "roses": 9061, - "rosetta": 43800, - "rosewood": 38686, - "rosie": 43049, - "rosie": 16888, - "ross": 8801, - "ross": 2158, - "rosse": 11602, - "rossi": 24817, - "rosso": 33023, - "roster": 12487, - "roswell": 45116, - "rosy": 46705, - "rosé": 28006, - "rot": 10055, - "rot": 9643, - "rotar": 45959, - "rotary": 14654, - "rotating": 32265, - "rotation": 18089, - "rotc": 32252, - "roth": 17741, - "roth": 19139, - "rother": 23174, - "rotherham": 37687, - "rothschild": 45089, - "roti": 46940, - "roto": 34698, - "rotor": 42991, - "rots": 16642, - "rott": 34806, - "rotten": 24324, - "rotter": 22614, - "rotterdam": 23422, - "rotun": 42970, - "rou": 2964, - "rou": 34783, - "roud": 28375, - "rouge": 16209, - "rough": 11699, - "rough": 8511, - "roughly": 21910, - "roughs": 37598, - "rouhani": 39912, - "roulette": 39930, - "roun": 5602, - "round": 9403, - "round": 2522, - "roundabout": 29953, - "rounded": 26973, - "rounder": 37024, - "rounding": 40208, - "rounds": 11242, - "roundtable": 19386, - "roundup": 17503, - "roup": 29220, - "rourke": 38753, - "rous": 33645, - "rous": 34531, - "rousey": 46267, - "rout": 7502, - "rout": 41778, - "route": 5261, - "router": 29962, - "routes": 14923, - "routine": 12319, - "routines": 44074, - "routing": 44086, - "roux": 43416, - "rov": 23971, - "rove": 30130, - "rover": 12776, - "rovers": 16373, - "row": 5275, - "row": 1044, - "rowan": 26240, - "rowdy": 32141, - "rowe": 28323, - "rowed": 22615, - "rower": 43345, - "rowers": 41806, - "rowing": 12807, - "rowland": 33037, - "rowley": 48793, - "rowling": 29371, - "rown": 22287, - "rown": 25060, - "rows": 9409, - "rox": 14111, - "rox": 41033, - "roxy": 28093, - "roy": 2128, - "roy": 6354, - "royal": 6691, - "royal": 3853, - "royale": 20630, - "royalnavy": 41545, - "royals": 13335, - "royalties": 48660, - "royalty": 18296, - "royalwedding": 27461, - "royce": 18444, - "royd": 41476, - "royo": 39357, - "roz": 28989, - "roz": 37250, - "rp": 17305, - "rp": 8174, - "rpa": 41872, - "rpg": 12445, - "rpm": 23715, - "rps": 49215, - "rr": 5311, - "rr": 9126, - "rrp": 36967, - "rrr": 18267, - "rrrr": 25561, - "rrrr": 34444, - "rs": 6978, - "rs": 1724, - "rsa": 29437, - "rsc": 48524, - "rsd": 34426, - "rsi": 39046, - "rsl": 44752, - "rsp": 16381, - "rspb": 38508, - "rspb": 36727, - "rspca": 45643, - "rss": 46466, - "rss": 22350, - "rstats": 38700, - "rsvp": 9774, - "rt": 8959, - "rt": 8991, - "rtc": 31648, - "rte": 33822, - "rte": 23322, - "rtg": 22028, - "rti": 47549, - "rtr": 43999, - "rts": 8496, - "rtw": 34673, - "ru": 681, - "ru": 13735, - "rub": 15862, - "rub": 22586, - "rubb": 19597, - "rubbed": 45239, - "rubber": 31131, - "rubber": 11331, - "rubbing": 41262, - "rubbish": 21108, - "rubble": 42230, - "ruben": 44058, - "ruben": 29722, - "rubi": 27856, - "rubin": 34128, - "rubio": 24244, - "rubs": 43422, - "ruby": 24552, - "ruby": 11493, - "ruck": 27449, - "rucker": 45402, - "rud": 35256, - "rudd": 31836, - "rude": 16548, - "rudi": 48360, - "rudol": 40927, - "rudolf": 46835, - "rudolph": 30119, - "rudy": 38226, - "rudy": 22131, - "rue": 38024, - "rue": 19276, - "rufc": 45084, - "ruff": 28177, - "ruff": 30304, - "rufus": 39322, - "rug": 4217, - "rug": 19220, - "rugby": 15091, - "rugby": 4964, - "rugbyleague": 44419, - "ruger": 48655, - "rugged": 25225, - "rugs": 29946, - "rui": 46974, - "ruin": 16256, - "ruined": 17231, - "ruining": 29952, - "ruins": 16094, - "ruiz": 27873, - "ruk": 46628, - "rukh": 43075, - "rukh": 27631, - "rule": 31643, - "rule": 6175, - "ruled": 16324, - "ruler": 26286, - "rulers": 45328, - "rules": 5272, - "ruling": 14690, - "rum": 9223, - "rum": 11233, - "rumb": 42432, - "rumble": 18900, - "rumi": 31428, - "rumor": 22254, - "rumored": 36694, - "rumors": 16160, - "rumour": 34296, - "rumours": 20716, - "rump": 29366, - "run": 1639, - "run": 1934, - "runaway": 28851, - "runchat": 25838, - "rundown": 41100, - "rune": 33882, - "rune": 49244, - "runner": 37370, - "runner": 7913, - "runners": 10571, - "runnin": 43130, - "running": 24451, - "running": 2761, - "runoff": 38564, - "runs": 5586, - "runway": 13927, - "rup": 7996, - "rup": 14980, - "rupaul": 44211, - "rupee": 43916, - "rupees": 44110, - "rupert": 25625, - "rupt": 23055, - "ruption": 35403, - "rural": 28801, - "rural": 8737, - "rus": 35811, - "rus": 5998, - "rush": 12148, - "rush": 6973, - "rushed": 28104, - "rusher": 48745, - "rushes": 47217, - "rushing": 20284, - "russ": 6285, - "russ": 20764, - "russell": 26122, - "russell": 8150, - "russi": 2600, - "russia": 4018, - "russian": 30731, - "russian": 4868, - "russians": 25413, - "russo": 30679, - "rust": 28682, - "rust": 14212, - "rustic": 19822, - "rusty": 43966, - "rusty": 22646, - "rut": 14973, - "rut": 39102, - "rutger": 49029, - "rutgers": 28934, - "ruth": 15798, - "ruth": 12029, - "ruther": 26676, - "rutherford": 31070, - "ruthless": 36063, - "rutland": 46024, - "ruto": 43702, - "ruz": 23275, - "rv": 17135, - "rv": 17951, - "rva": 24278, - "rw": 9085, - "rw": 22926, - "rwa": 47452, - "rwand": 31758, - "rwanda": 15427, - "rwby": 39698, - "rwc": 32321, - "rx": 41188, - "rx": 15945, - "ry": 1511, - "ry": 913, - "ryan": 8682, - "ryan": 4053, - "ryanair": 43526, - "ryder": 43564, - "ryder": 21805, - "rye": 24015, - "rye": 17409, - "rying": 7838, - "ryn": 37728, - "ryo": 24460, - "rys": 21654, - "ryu": 46656, - "ryu": 34604, - "ré": 29106, - "s": 82, - "s": 338, - "sa": 774, - "sa": 1344, - "saa": 13429, - "saab": 27158, - "saad": 36530, - "saas": 25761, - "saat": 33151, - "sab": 3233, - "sab": 23213, - "saba": 38344, - "sabah": 32854, - "saban": 41620, - "sabar": 47102, - "sabbath": 26008, - "sabc": 30010, - "sabcnews": 41093, - "saber": 46822, - "saber": 25624, - "sabha": 23431, - "sabi": 47073, - "sabine": 44062, - "sable": 19224, - "sabot": 30700, - "sabotage": 40496, - "sabre": 35110, - "sabres": 29620, - "sabrin": 37029, - "sabrina": 24994, - "sac": 3632, - "sac": 12905, - "sach": 30168, - "sacha": 49010, - "sachin": 47527, - "sachin": 30297, - "sachs": 31451, - "sack": 28964, - "sack": 14979, - "sacked": 27519, - "sacks": 26441, - "sacram": 13334, - "sacramento": 16065, - "sacred": 40612, - "sacred": 12477, - "sacri": 15283, - "sacrif": 12117, - "sacrific": 16919, - "sacrifice": 12556, - "sacrificed": 31116, - "sacrifices": 28858, - "sacrificing": 48146, - "sad": 2810, - "sad": 3719, - "saddened": 27720, - "saddest": 34925, - "saddle": 30469, - "saddle": 20283, - "sade": 27429, - "sadh": 40955, - "sadi": 22207, - "sadie": 30333, - "sadiq": 44107, - "sadler": 45600, - "sadly": 11603, - "sadness": 20399, - "sae": 38633, - "sae": 34883, - "saeed": 29745, - "saf": 2125, - "saf": 25760, - "safar": 23443, - "safari": 14091, - "safarilive": 34816, - "safc": 27998, - "safe": 2901, - "safe": 2996, - "safeguard": 42249, - "safeguarding": 47451, - "safely": 11513, - "safer": 40124, - "safer": 15504, - "safest": 38973, - "safety": 19050, - "safety": 3406, - "safetyfirst": 43608, - "saffron": 27529, - "sag": 6609, - "sag": 30048, - "saga": 15758, - "sagan": 37193, - "sagar": 42518, - "sage": 25800, - "sage": 7509, - "sages": 25979, - "sagin": 47097, - "sagitt": 44685, - "sagu": 44708, - "sah": 30943, - "sah": 26342, - "saha": 36062, - "sahara": 24599, - "saharan": 44255, - "sahi": 24608, - "sahib": 34150, - "sai": 16048, - "sai": 10886, - "said": 40319, - "said": 1946, - "saif": 44164, - "saig": 36328, - "saigon": 41081, - "sail": 7528, - "sail": 12156, - "sailed": 43047, - "sailing": 11003, - "sailor": 28002, - "sailor": 16076, - "sailormoon": 40673, - "sailors": 25355, - "sails": 27526, - "sain": 21226, - "sain": 40378, - "sains": 24860, - "sainsbury": 45879, - "sainsburys": 36934, - "saint": 11274, - "saint": 5599, - "saints": 8769, - "saintsfc": 31102, - "sair": 46600, - "sair": 30971, - "saire": 28087, - "saison": 33256, - "sait": 48008, - "saj": 33580, - "sak": 11511, - "sak": 35900, - "saka": 33609, - "sake": 12874, - "sakh": 43945, - "saki": 40514, - "saku": 37550, - "sakura": 24162, - "sal": 980, - "sal": 6126, - "sala": 17300, - "salaam": 46773, - "salad": 6188, - "salads": 30948, - "salah": 22516, - "salam": 19007, - "salam": 33963, - "salamat": 44696, - "salami": 46885, - "salaries": 33132, - "salary": 16312, - "salazar": 45988, - "sale": 17786, - "sale": 1690, - "saleh": 38353, - "salem": 48194, - "salem": 16884, - "sales": 13347, - "sales": 3765, - "salesforce": 22680, - "salesman": 37633, - "salford": 25629, - "sali": 15411, - "salim": 42760, - "salinas": 41990, - "saline": 46918, - "salis": 20667, - "salis": 39378, - "salisbury": 24763, - "sall": 27122, - "sall": 20883, - "salle": 23738, - "sally": 29542, - "sally": 13349, - "salman": 13754, - "salman": 16219, - "salmankhan": 15177, - "salmon": 37040, - "salmon": 9137, - "salom": 38268, - "salon": 33916, - "salon": 11105, - "saloon": 26038, - "sals": 16307, - "salsa": 16442, - "salt": 12763, - "salt": 6611, - "salted": 26313, - "saltlife": 47809, - "salts": 40559, - "saltwater": 43616, - "salty": 20678, - "salu": 31711, - "salud": 46867, - "salut": 44998, - "salute": 44908, - "salute": 9747, - "salutes": 32762, - "salv": 8299, - "salvador": 20874, - "salvage": 33131, - "salvation": 19534, - "salvatore": 38772, - "salz": 33594, - "salzburg": 43396, - "sam": 1644, - "sam": 3730, - "sama": 19272, - "samanth": 11465, - "samantha": 15466, - "samanthap": 38266, - "samanthaprabhu": 38643, - "samar": 21820, - "samaritan": 45495, - "samba": 37190, - "same": 23062, - "same": 2208, - "samheughan": 36255, - "sami": 48400, - "sami": 24322, - "sammy": 31091, - "sammy": 16758, - "samo": 30006, - "samoa": 34932, - "samp": 31225, - "sample": 9542, - "sampler": 40629, - "samples": 13387, - "sampling": 19522, - "sampson": 39983, - "sams": 44667, - "samson": 34659, - "samsun": 47875, - "samsung": 35369, - "samsung": 8115, - "samu": 7646, - "samuel": 30612, - "samuel": 12787, - "samurai": 21739, - "san": 1489, - "san": 2223, - "sana": 19434, - "sanantonio": 34714, - "sanat": 29091, - "sanatomy": 36052, - "sanc": 7398, - "sance": 15930, - "sanchez": 13971, - "sanctioned": 43032, - "sanctions": 17790, - "sanctu": 12712, - "sanctuary": 14044, - "sand": 2147, - "sand": 5094, - "sandal": 36445, - "sandal": 42185, - "sandals": 20731, - "sandalwood": 47502, - "sandeep": 46973, - "sander": 34111, - "sanders": 10429, - "sanderson": 36198, - "sandi": 44249, - "sandiego": 45997, - "sandiego": 15793, - "sandman": 45730, - "sando": 35921, - "sandoval": 44157, - "sandra": 33733, - "sandra": 13415, - "sandro": 42389, - "sands": 5936, - "sandstone": 36796, - "sandwich": 17050, - "sandwich": 8687, - "sandwiches": 19667, - "sandy": 29679, - "sandy": 10355, - "sane": 23419, - "sanford": 32330, - "sanfrancisco": 20254, - "sang": 13235, - "sang": 11684, - "sange": 12466, - "sangria": 42665, - "sani": 39137, - "sani": 34492, - "sanitary": 33842, - "sanitation": 25414, - "saniti": 43987, - "sanity": 30517, - "sanjay": 31712, - "sanjay": 25796, - "sanje": 40405, - "sanjose": 45971, - "sank": 43692, - "sano": 34053, - "sans": 16982, - "sansk": 39689, - "sanskrit": 48083, - "sant": 8356, - "sant": 23120, - "santa": 22175, - "santa": 4555, - "santac": 28876, - "santam": 45627, - "santana": 27033, - "santander": 46476, - "santi": 13856, - "santiago": 16568, - "santo": 29631, - "santo": 18400, - "santor": 28448, - "santorini": 39573, - "santos": 16582, - "sany": 47679, - "sao": 28026, - "sap": 8089, - "sap": 11591, - "sapi": 40016, - "sapp": 13427, - "sapp": 40729, - "sapphire": 22044, - "sar": 1808, - "sar": 9424, - "sara": 37196, - "sara": 10063, - "sarab": 40716, - "sarac": 35722, - "sarah": 9086, - "sarah": 5327, - "saraj": 42592, - "sarajevo": 48211, - "saras": 20373, - "sarasota": 31990, - "sarato": 24845, - "saratoga": 29496, - "sarawak": 47331, - "sarcasm": 37246, - "sarcastic": 48639, - "sardar": 41786, - "sarde": 43925, - "sardin": 27383, - "sardinia": 41025, - "sare": 13051, - "saree": 30860, - "sargent": 34864, - "sari": 42327, - "sari": 20261, - "saries": 47586, - "sarkar": 30673, - "sarko": 33658, - "sarkodie": 42848, - "sarmy": 20954, - "sart": 33006, - "sary": 15398, - "sas": 3960, - "sas": 5235, - "sash": 35656, - "sasha": 46078, - "sasha": 20894, - "sasia": 44751, - "sask": 47091, - "sask": 30416, - "saskat": 17102, - "saskatchewan": 23899, - "saskatoon": 31128, - "sass": 31351, - "sassy": 20827, - "sat": 1382, - "sat": 3279, - "sata": 41520, - "satan": 19446, - "satanic": 38224, - "satchel": 45908, - "sate": 35749, - "satell": 9031, - "satellite": 10316, - "satellites": 28483, - "sath": 29675, - "sathletics": 30154, - "sati": 7038, - "satin": 21803, - "sation": 23674, - "sations": 31232, - "satire": 29875, - "satis": 9906, - "satisf": 22941, - "satisfaction": 19925, - "satisfied": 18101, - "satisfy": 29444, - "satisfying": 23755, - "sato": 34376, - "satu": 45283, - "satur": 1634, - "saturated": 32466, - "saturday": 12537, - "saturday": 1748, - "saturdaymorning": 29053, - "saturdaymotivation": 40843, - "saturdays": 18930, - "saturn": 17312, - "saty": 39426, - "sau": 2096, - "sau": 19455, - "sauce": 5520, - "saucer": 42272, - "sauces": 40367, - "saucy": 46684, - "saudi": 24511, - "saudi": 8548, - "saudiarabia": 28680, - "sauer": 46333, - "saul": 47623, - "saul": 23252, - "sault": 40361, - "sauna": 35460, - "saunders": 23794, - "saur": 13227, - "saura": 46532, - "saurus": 22118, - "saus": 36121, - "sausage": 11855, - "sausages": 31593, - "sauté": 36290, - "sautéed": 38517, - "sauvi": 30116, - "sauvignon": 32745, - "sav": 2248, - "sav": 26533, - "sava": 40198, - "savag": 43039, - "savage": 11859, - "savannah": 18662, - "save": 5895, - "save": 2673, - "saved": 7137, - "saveour": 33390, - "saver": 20987, - "savers": 31416, - "saves": 12907, - "savethe": 18031, - "savi": 14721, - "saving": 28498, - "saving": 6979, - "savings": 10651, - "savior": 24762, - "saviour": 35800, - "savor": 48071, - "savory": 32992, - "savoury": 49071, - "savoy": 39552, - "savvy": 29278, - "saw": 12429, - "saw": 2425, - "sawa": 39613, - "sawards": 29012, - "sawyer": 27726, - "sax": 14169, - "sax": 23766, - "saxon": 31856, - "saxophon": 43760, - "saxophone": 32296, - "say": 3047, - "say": 1451, - "saya": 35170, - "sayang": 46322, - "sayers": 44116, - "sayin": 23662, - "saying": 4455, - "says": 1563, - "saz": 35577, - "sb": 5576, - "sb": 4977, - "sba": 44970, - "sback": 43840, - "sband": 27539, - "sbaseball": 46491, - "sbball": 39190, - "sbc": 31404, - "sberg": 20358, - "sbi": 41369, - "sbk": 39211, - "sboro": 18909, - "sbridge": 49228, - "sbs": 18883, - "sbu": 48075, - "sbu": 46281, - "sburg": 7390, - "sburgh": 48205, - "sbury": 14081, - "sby": 26519, - "sby": 10287, - "sc": 663, - "sc": 3219, - "sca": 11001, - "scab": 31716, - "scaf": 28981, - "scafe": 45574, - "scaffolding": 41687, - "scal": 10859, - "scala": 37997, - "scalable": 44084, - "scale": 37817, - "scale": 5879, - "scaled": 41923, - "scales": 22891, - "scaling": 29116, - "scallo": 19936, - "scallop": 39544, - "scallops": 31430, - "scalp": 38898, - "scam": 17620, - "scam": 13215, - "scamp": 28451, - "scams": 34395, - "scan": 10650, - "scan": 11261, - "scanada": 27121, - "scand": 8110, - "scandal": 35420, - "scandal": 11622, - "scandals": 45490, - "scandin": 32014, - "scandinavian": 35661, - "scanned": 43719, - "scanner": 24185, - "scanning": 24092, - "scans": 31251, - "scap": 35883, - "scape": 36005, - "scape": 12314, - "scapes": 31933, - "scar": 4171, - "scar": 18088, - "scarborough": 24254, - "scarce": 38572, - "scarcity": 45812, - "scare": 33536, - "scare": 15920, - "scarec": 38814, - "scarecrow": 46504, - "scared": 9870, - "scares": 34096, - "scarf": 13365, - "scari": 27050, - "scariest": 37213, - "scarlet": 20389, - "scarlett": 28325, - "scars": 20747, - "scarves": 29249, - "scary": 9250, - "scat": 13899, - "scattered": 22090, - "scavenger": 36778, - "scc": 19458, - "scd": 48422, - "scen": 2204, - "scenario": 20456, - "scenarios": 31346, - "scence": 33418, - "scene": 3562, - "scenery": 16025, - "scenes": 5415, - "scenic": 15394, - "scent": 36277, - "scent": 7683, - "scented": 27190, - "scenter": 23059, - "scentre": 39371, - "scents": 26336, - "scep": 24439, - "scfc": 38578, - "sch": 844, - "sch": 7542, - "scha": 42809, - "schaf": 45588, - "schaft": 41010, - "schal": 35568, - "schalke": 41029, - "schallenge": 43665, - "schan": 31328, - "schar": 15085, - "schat": 31842, - "schau": 35830, - "sche": 3038, - "sche": 7289, - "schedu": 4207, - "schedule": 5521, - "scheduled": 10986, - "schedules": 28986, - "scheduling": 32216, - "scheer": 26776, - "schel": 39881, - "schel": 38569, - "schem": 17720, - "scheme": 9024, - "schemes": 22958, - "schen": 22738, - "scher": 21925, - "scher": 21299, - "schi": 13731, - "schi": 24984, - "schicago": 46230, - "schiff": 39431, - "schild": 32148, - "schiz": 33230, - "schizoph": 40004, - "schizophre": 41163, - "schle": 32022, - "schmid": 17375, - "schmidt": 18463, - "schnau": 45745, - "schnei": 19941, - "schneider": 22972, - "schnit": 40903, - "scho": 2493, - "schoice": 23860, - "schol": 4498, - "scholar": 7192, - "scholar": 12830, - "scholarly": 41065, - "scholars": 13818, - "scholarship": 9070, - "scholarships": 17866, - "scholastic": 35743, - "schoo": 20721, - "school": 6063, - "school": 1228, - "schooled": 44722, - "schoolers": 31455, - "schooling": 28608, - "schools": 3513, - "schre": 47685, - "schri": 25453, - "schro": 32381, - "schu": 11318, - "schubert": 46939, - "schul": 14945, - "schultz": 30308, - "schulz": 39572, - "schumacher": 39208, - "schumer": 25313, - "schur": 42475, - "schwab": 47602, - "schwar": 13985, - "schwartz": 30617, - "schwarz": 27074, - "schwarzenegger": 33860, - "schwe": 25324, - "sci": 2267, - "sci": 8309, - "sciart": 31704, - "scicom": 28606, - "scicomm": 29573, - "scien": 39261, - "science": 10201, - "science": 2497, - "sciencefiction": 39170, - "sciences": 11481, - "scienti": 4338, - "scientific": 9750, - "scientist": 11083, - "scientists": 8045, - "sciento": 36193, - "scientology": 44694, - "scifi": 41862, - "scifi": 12230, - "scion": 47208, - "sciss": 25667, - "scissors": 30867, - "sciutto": 44392, - "sclerosis": 39446, - "sclub": 20017, - "sco": 1065, - "sco": 4763, - "scoe": 31164, - "scol": 13599, - "scoll": 44895, - "scollege": 39536, - "scom": 26407, - "scon": 17163, - "scon": 29272, - "scones": 36443, - "sconf": 39704, - "scoo": 14199, - "scooby": 34469, - "scoop": 13829, - "scoops": 41360, - "scope": 7979, - "scopes": 30328, - "scopic": 23869, - "scopy": 20018, - "scor": 8442, - "score": 12067, - "score": 4431, - "scoreboard": 30104, - "scorecard": 38128, - "scored": 6143, - "scoreless": 33469, - "scorer": 16572, - "scorers": 26699, - "scores": 7039, - "scoring": 9198, - "scorpi": 15445, - "scorpio": 34331, - "scorpion": 28461, - "scorpions": 45401, - "scorsese": 45975, - "scot": 2496, - "scot": 9271, - "scotch": 16687, - "scoti": 46446, - "scotia": 27859, - "scotland": 29174, - "scotland": 4203, - "scots": 17260, - "scotsman": 39612, - "scott": 7775, - "scott": 3664, - "scotti": 6227, - "scottish": 18039, - "scottish": 7442, - "scottsdale": 27817, - "scotty": 39697, - "scotty": 26836, - "scotus": 21720, - "scou": 44909, - "scoun": 16110, - "scouncil": 48787, - "scountry": 40432, - "scour": 46172, - "scout": 32213, - "scout": 10786, - "scouting": 19072, - "scouts": 14837, - "scow": 27929, - "scowboys": 31386, - "scp": 45030, - "scr": 36131, - "scra": 11187, - "scrabble": 39488, - "scram": 17289, - "scramble": 32688, - "scrambled": 39026, - "scran": 41774, - "scranton": 45274, - "scrap": 27950, - "scrap": 21695, - "scrapbook": 48733, - "scrapped": 43325, - "scraps": 40809, - "scrat": 9572, - "scratch": 13258, - "scratched": 48831, - "scratches": 46556, - "scratching": 44617, - "scre": 1795, - "scream": 31645, - "scream": 13239, - "screamed": 35427, - "screaming": 12891, - "screams": 23989, - "screen": 5351, - "screen": 3750, - "screened": 31450, - "screening": 6688, - "screenings": 27655, - "screenplay": 30058, - "screens": 12689, - "screenshot": 20637, - "screenshot": 12646, - "screenshots": 26783, - "screenshotsaturday": 21406, - "screenwriter": 37293, - "screenwriting": 35465, - "screw": 25529, - "screw": 14225, - "screwdriver": 48748, - "screwed": 30592, - "screws": 38292, - "scri": 2139, - "scrib": 34259, - "scribe": 36228, - "scribed": 38334, - "scricket": 45947, - "scrim": 21978, - "scrimmage": 25216, - "scrip": 11955, - "script": 8374, - "scripted": 40513, - "scription": 26604, - "scriptions": 39512, - "scripts": 20109, - "scripture": 27186, - "scro": 30768, - "scroll": 24160, - "scrolling": 28889, - "scrolls": 38113, - "scroo": 42263, - "scru": 7589, - "scrub": 23432, - "scrubs": 37919, - "scrum": 29047, - "scrump": 39791, - "scrumptious": 40987, - "scrutiny": 34305, - "scs": 26853, - "sct": 39284, - "scu": 8181, - "scu": 32135, - "scuba": 39053, - "scuba": 20559, - "scubadiving": 49046, - "scue": 25955, - "scul": 4948, - "scully": 36598, - "sculp": 6093, - "sculpt": 45044, - "sculpted": 41296, - "sculpting": 44389, - "sculptor": 29409, - "sculpture": 8757, - "sculptures": 20378, - "scum": 29655, - "scumb": 44525, - "scup": 21506, - "scur": 32742, - "scwx": 41966, - "scy": 27471, - "sd": 3080, - "sd": 4159, - "sda": 25548, - "sdale": 12327, - "sday": 5902, - "sday": 1376, - "sdays": 14491, - "sdc": 40992, - "sdcc": 13246, - "sden": 17241, - "sdf": 34681, - "sdg": 20177, - "sdgs": 16261, - "sdk": 40015, - "sdlive": 34561, - "sdn": 41925, - "sdsu": 41284, - "se": 567, - "se": 611, - "sea": 5970, - "sea": 2102, - "seab": 15728, - "seabir": 42558, - "seac": 35626, - "seaf": 9336, - "seafood": 12472, - "seag": 15730, - "seagu": 38076, - "seagull": 38858, - "seagulls": 42215, - "seahawks": 15341, - "seal": 21381, - "seal": 10159, - "sealed": 13358, - "sealing": 42992, - "seals": 18179, - "seam": 13710, - "seam": 44201, - "seaman": 47513, - "seamless": 29373, - "seamus": 40175, - "sean": 11406, - "sean": 6077, - "seanhannity": 43316, - "seap": 29983, - "seaport": 46418, - "sear": 1612, - "search": 23129, - "search": 1920, - "searched": 28961, - "searches": 26378, - "searching": 10626, - "seared": 29727, - "sears": 26693, - "seas": 7329, - "seas": 9556, - "seascape": 42593, - "seaside": 18867, - "season": 19288, - "season": 1367, - "seasonal": 14215, - "seasoned": 28399, - "seasoning": 43439, - "seasons": 8635, - "seat": 19670, - "seat": 4922, - "seated": 23953, - "seater": 37543, - "seating": 16240, - "seats": 6944, - "seattle": 24388, - "seattle": 6274, - "seau": 32263, - "seaw": 32658, - "seaweed": 30204, - "seaworld": 27422, - "seb": 35766, - "seb": 25171, - "sebasti": 10324, - "sebastian": 43792, - "sebastian": 13181, - "sebring": 41086, - "sec": 2875, - "sec": 5338, - "seca": 37847, - "secco": 27394, - "sece": 46297, - "seclu": 42392, - "secon": 1846, - "second": 9329, - "second": 2241, - "secondary": 13107, - "seconds": 6541, - "secre": 2460, - "secret": 20710, - "secret": 4145, - "secretari": 29515, - "secretariat": 31767, - "secretary": 6552, - "secretly": 21400, - "secrets": 9735, - "secs": 28665, - "sect": 15772, - "section": 34986, - "section": 4853, - "sectional": 21876, - "sections": 20061, - "sector": 6579, - "sectors": 22173, - "secu": 4894, - "secular": 47483, - "secular": 27560, - "secur": 2557, - "secure": 44763, - "secure": 7515, - "secured": 16848, - "secures": 31567, - "securing": 24759, - "securities": 25080, - "security": 31245, - "security": 2741, - "sed": 14034, - "sed": 1252, - "sedan": 24237, - "sedg": 46926, - "sedge": 45288, - "sedi": 29269, - "sedly": 31771, - "sedona": 46862, - "seduc": 19933, - "seductive": 43721, - "see": 1751, - "see": 862, - "seed": 14064, - "seed": 6488, - "seeded": 33688, - "seeding": 40050, - "seedlings": 47933, - "seeds": 9128, - "seeing": 3214, - "seek": 8839, - "seeker": 28011, - "seekers": 20732, - "seeking": 8592, - "seeks": 12594, - "seem": 20043, - "seem": 7523, - "seemed": 17240, - "seemingly": 25917, - "seems": 4453, - "seen": 36273, - "seen": 2041, - "seer": 32486, - "sees": 7594, - "seeyou": 41279, - "sef": 27453, - "seg": 10551, - "sega": 16122, - "segment": 15615, - "segments": 43053, - "segreg": 49117, - "segregation": 39086, - "segu": 33156, - "segun": 43087, - "seh": 27536, - "seh": 41430, - "sehun": 17705, - "sei": 13130, - "sei": 15907, - "sein": 24669, - "seine": 41378, - "seinfeld": 33706, - "seis": 25559, - "seismic": 38459, - "seiz": 22171, - "seize": 26624, - "seized": 15826, - "seizure": 36804, - "seizures": 47199, - "sek": 45515, - "sek": 25880, - "sel": 1000, - "sel": 4098, - "sela": 47006, - "selamat": 37692, - "selangor": 44402, - "selby": 43546, - "selca": 38606, - "selcaday": 35924, - "seldom": 48322, - "sele": 29137, - "selec": 3014, - "select": 8690, - "selected": 6881, - "selecting": 32696, - "selection": 6724, - "selections": 24099, - "selective": 28686, - "selects": 32902, - "selen": 19970, - "selena": 14677, - "selenagomez": 27653, - "seley": 30556, - "self": 10139, - "self": 1322, - "selfcare": 39560, - "selfi": 3007, - "selfie": 26735, - "selfie": 3666, - "selfies": 46058, - "selfies": 10050, - "selfish": 26907, - "selfless": 34236, - "sell": 10279, - "sell": 5119, - "seller": 11779, - "sellers": 16562, - "selling": 4396, - "sells": 14306, - "selma": 36652, - "sels": 42070, - "selves": 4505, - "sely": 8402, - "sem": 8645, - "sem": 17106, - "sema": 31816, - "seman": 29119, - "seman": 28378, - "semana": 41780, - "semb": 36054, - "seme": 10855, - "sement": 10714, - "sements": 31449, - "semester": 11905, - "semi": 11023, - "semi": 6684, - "semic": 26967, - "semicon": 34315, - "semiconduc": 35646, - "semiconductor": 43551, - "semifinal": 22935, - "semifinals": 21863, - "semin": 5595, - "seminar": 7269, - "seminars": 34870, - "seminary": 31655, - "seminole": 42956, - "semis": 24013, - "semit": 22628, - "semite": 23721, - "semitic": 34894, - "semitism": 25911, - "semper": 47391, - "sen": 1057, - "sen": 2249, - "sena": 21584, - "senate": 30703, - "senate": 6843, - "senator": 20871, - "senator": 8495, - "senators": 16889, - "send": 27684, - "send": 3625, - "sending": 6985, - "sends": 10817, - "sene": 25269, - "seneca": 33419, - "senegal": 28255, - "senew": 49313, - "seng": 43022, - "seng": 29971, - "senior": 19865, - "senior": 3415, - "seniors": 8138, - "senna": 36195, - "senpai": 46562, - "sens": 5218, - "sens": 22837, - "sensation": 19383, - "sensational": 23051, - "sense": 29162, - "sense": 4747, - "sensei": 36158, - "senses": 21809, - "sensi": 38802, - "sensible": 30635, - "sensing": 29236, - "sensiti": 20531, - "sensitive": 13734, - "sensitivity": 27788, - "sensor": 15330, - "sensors": 20356, - "sensory": 21831, - "sensu": 28157, - "sensual": 40860, - "sent": 6200, - "sent": 3676, - "sentence": 12737, - "sentenced": 17773, - "sentences": 25858, - "sentencing": 34394, - "senti": 19042, - "sentim": 25102, - "sentiment": 25949, - "sentimental": 40070, - "sentiments": 47450, - "sentin": 20042, - "sentinel": 23123, - "senting": 3924, - "seo": 24743, - "seo": 8622, - "seok": 34697, - "seok": 22482, - "seokjin": 45584, - "seoul": 13253, - "sep": 3212, - "sep": 10434, - "separ": 6859, - "separate": 13886, - "separated": 22163, - "separately": 41904, - "separates": 45365, - "separati": 39377, - "separating": 43480, - "separation": 22007, - "sephora": 38414, - "sepsis": 40205, - "sept": 5380, - "septe": 3672, - "september": 3707, - "septic": 34690, - "sepul": 47360, - "seq": 44379, - "sequ": 5491, - "seque": 44662, - "sequel": 15701, - "sequence": 18833, - "sequences": 47306, - "sequencing": 33484, - "sequo": 32781, - "sequoia": 42404, - "ser": 803, - "ser": 2771, - "sera": 28250, - "serbia": 19038, - "serbian": 33687, - "sere": 35770, - "seren": 7880, - "serena": 19519, - "serenawilliams": 48316, - "serendip": 45805, - "serendipity": 49386, - "serene": 28269, - "serenity": 24187, - "serge": 13477, - "serge": 35700, - "sergeant": 22049, - "sergei": 39870, - "sergey": 35390, - "sergi": 47675, - "sergio": 18359, - "seri": 2763, - "seri": 37509, - "serial": 14216, - "serie": 19752, - "seriea": 32660, - "series": 1857, - "serious": 47421, - "serious": 4770, - "seriously": 4885, - "sermon": 24884, - "sero": 48883, - "serpent": 37084, - "serpent": 35364, - "serra": 39851, - "serrano": 44236, - "sers": 13509, - "serum": 25385, - "serv": 1297, - "serv": 24571, - "servant": 20810, - "servants": 29652, - "serve": 39202, - "serve": 2838, - "served": 4740, - "server": 36458, - "server": 8398, - "serverless": 49243, - "servers": 22262, - "serves": 9915, - "servic": 27115, - "service": 21496, - "service": 2086, - "serviced": 44687, - "services": 3100, - "servicing": 41300, - "serving": 5722, - "sery": 14279, - "ses": 23708, - "ses": 1386, - "sesame": 21706, - "sese": 37128, - "sesh": 24274, - "session": 2550, - "sessions": 6327, - "set": 7965, - "set": 1167, - "setback": 43605, - "seth": 20005, - "seth": 11870, - "sethu": 38933, - "setlist": 33141, - "seton": 43799, - "sets": 4650, - "sett": 4984, - "sett": 17567, - "sette": 14613, - "setter": 23153, - "settes": 44145, - "setti": 45170, - "setting": 5264, - "settings": 18628, - "settle": 15075, - "settled": 18310, - "settlement": 16494, - "settlements": 36605, - "settlers": 35671, - "settles": 41498, - "settling": 22036, - "setup": 11092, - "seu": 31539, - "seul": 48975, - "seum": 18838, - "seun": 24209, - "seung": 32393, - "seung": 33711, - "seungri": 41627, - "seuss": 34441, - "sev": 26585, - "sev": 37600, - "seva": 42604, - "seve": 21458, - "seve": 22468, - "sevel": 17439, - "seven": 7874, - "seven": 5757, - "sevens": 29911, - "sevent": 43048, - "seventeen": 19337, - "seventh": 17568, - "seventy": 47170, - "sever": 3250, - "sever": 45557, - "several": 5560, - "severance": 26194, - "severe": 6215, - "severely": 24417, - "severn": 34626, - "severy": 34207, - "sevilla": 24947, - "seville": 34988, - "sew": 28640, - "sewage": 32777, - "sewer": 28294, - "sewing": 15974, - "sewn": 42118, - "sex": 3548, - "sex": 5937, - "sexi": 20562, - "sexiest": 25426, - "sexism": 32059, - "sexist": 33047, - "sexu": 14741, - "sexual": 6749, - "sexuality": 21244, - "sexually": 23032, - "sexy": 21019, - "sexy": 38127, - "sey": 6317, - "sey": 2258, - "seychel": 36809, - "seychelles": 38519, - "seye": 35604, - "seym": 22657, - "seymour": 25850, - "seys": 15081, - "sez": 42377, - "señ": 43368, - "sf": 4435, - "sf": 4915, - "sfa": 32675, - "sfam": 37649, - "sfb": 27930, - "sfc": 14129, - "sfest": 49024, - "sff": 42056, - "sfgiants": 20923, - "sfield": 11801, - "sfo": 39182, - "sfootball": 45259, - "sfor": 9115, - "sford": 28917, - "sforsale": 28888, - "sfw": 18073, - "sfx": 37995, - "sg": 9599, - "sg": 7611, - "sga": 33049, - "sgate": 27558, - "sgh": 47590, - "sgo": 5393, - "sgo": 21044, - "sgt": 13748, - "sh": 552, - "sh": 849, - "sha": 1514, - "sha": 3337, - "shaa": 44221, - "shab": 8323, - "shabbat": 38042, - "shabby": 28838, - "shack": 23866, - "shack": 18785, - "shad": 3182, - "shad": 23874, - "shade": 34554, - "shade": 10097, - "shaded": 43506, - "shades": 46608, - "shades": 9270, - "shadesof": 45180, - "shading": 37348, - "shado": 9325, - "shadow": 15243, - "shadow": 7068, - "shadowhun": 19931, - "shadowhunters": 24834, - "shadowing": 46092, - "shadows": 12971, - "shady": 22158, - "shaf": 12032, - "shaft": 21545, - "shag": 22439, - "shaggy": 42662, - "shah": 13203, - "shah": 8439, - "shahe": 23643, - "shaheed": 30060, - "shaheer": 43969, - "shahi": 46972, - "shahid": 25696, - "shahid": 27138, - "shahidkapoor": 29892, - "shahzad": 45915, - "shai": 47941, - "shaikh": 45712, - "shail": 37603, - "shair": 43135, - "shak": 8385, - "shake": 8206, - "shake": 8251, - "shaken": 38237, - "shaker": 26210, - "shakers": 38411, - "shakes": 19668, - "shakespe": 9890, - "shakespeare": 22499, - "shakespeare": 12488, - "shakespearesunday": 32320, - "shaking": 19101, - "shakira": 40795, - "shakti": 48593, - "shakti": 32458, - "shakur": 48915, - "shal": 15056, - "shal": 28175, - "shale": 32864, - "shall": 4742, - "shallow": 23730, - "shalom": 31339, - "sham": 6453, - "sham": 9005, - "shaman": 48727, - "shambles": 40799, - "shame": 14776, - "shame": 7593, - "shameful": 28283, - "shameless": 25380, - "shaming": 40553, - "shampoo": 23944, - "shamrock": 34199, - "shan": 5171, - "shan": 8834, - "shana": 44835, - "shand": 29101, - "shane": 26863, - "shane": 11572, - "shang": 11141, - "shanghai": 12742, - "shani": 46665, - "shank": 24685, - "shankar": 24108, - "shann": 9932, - "shannon": 22842, - "shannon": 13581, - "shant": 36610, - "shap": 5581, - "shape": 26925, - "shape": 6448, - "shaped": 10127, - "shapes": 15377, - "shaping": 18632, - "shapiro": 32110, - "shaq": 46402, - "shaq": 26843, - "shar": 1669, - "shar": 36542, - "shara": 48849, - "sharapo": 36489, - "sharapova": 36671, - "shard": 42207, - "share": 7585, - "share": 1978, - "shared": 5368, - "shareholder": 38241, - "shareholders": 34778, - "sharepoint": 39213, - "shares": 4974, - "sharethe": 49277, - "shareyour": 45890, - "shari": 27738, - "shari": 47390, - "sharia": 37244, - "sharif": 15501, - "sharing": 3567, - "sharjah": 33420, - "shark": 15836, - "shark": 7980, - "sharks": 10047, - "sharkweek": 39571, - "sharma": 10105, - "sharon": 28722, - "sharon": 14138, - "sharp": 17126, - "sharp": 8157, - "sharpe": 34374, - "sharpen": 41465, - "sharpie": 46858, - "sharply": 37185, - "shasta": 46727, - "shat": 12169, - "shat": 44388, - "shatter": 45008, - "shattered": 26820, - "shau": 13750, - "shaun": 23446, - "shaun": 16669, - "shav": 11410, - "shave": 17735, - "shaved": 25571, - "shaving": 24261, - "shaw": 6122, - "shaw": 6805, - "shawa": 46413, - "shawl": 35132, - "shawn": 16677, - "shawn": 10970, - "shawnee": 48060, - "shawnmendes": 27277, - "shawty": 38026, - "shay": 10778, - "shay": 18361, - "shaykh": 47223, - "shaz": 18618, - "shazam": 29063, - "shc": 43419, - "shd": 37729, - "she": 1729, - "she": 1043, - "shea": 20407, - "shead": 44287, - "shead": 20434, - "shealth": 41743, - "shealth": 22197, - "shear": 27974, - "shear": 32108, - "shearer": 40505, - "sheath": 45637, - "shed": 16586, - "shed": 1492, - "shedding": 33608, - "sheds": 25921, - "shee": 23450, - "shee": 34321, - "sheed": 26105, - "sheehan": 41809, - "sheen": 25025, - "sheep": 23604, - "sheep": 9629, - "sheer": 17577, - "sheeran": 18561, - "sheet": 7298, - "sheets": 12744, - "shef": 8237, - "sheff": 38844, - "sheff": 43821, - "sheffiel": 26940, - "sheffield": 41763, - "sheffield": 10420, - "sheffieldissuper": 33628, - "sheh": 31667, - "sheikh": 15031, - "sheil": 42765, - "sheila": 25734, - "shek": 33285, - "shel": 3159, - "shelby": 36906, - "shelby": 16885, - "sheldon": 25079, - "shelf": 10955, - "shell": 23374, - "shell": 6648, - "shelley": 22497, - "shelling": 43166, - "shells": 19265, - "shelly": 37461, - "shelter": 8599, - "sheltered": 48070, - "shelters": 24312, - "shelton": 24471, - "shelves": 16225, - "shem": 40299, - "shen": 10154, - "shen": 31098, - "shenan": 20965, - "shenando": 44666, - "shenanigans": 26590, - "shenko": 39751, - "shenmue": 48279, - "shenzhen": 38970, - "shep": 33757, - "shep": 44857, - "shepard": 26810, - "shepher": 11008, - "shepherd": 13242, - "shepherds": 42792, - "sheppard": 37304, - "sher": 3570, - "sher": 4510, - "sheraton": 39400, - "shere": 21507, - "sheri": 9235, - "sheridan": 27085, - "sheriff": 10309, - "sherlock": 17294, - "sherman": 17822, - "sherry": 44348, - "sherry": 24689, - "shers": 14141, - "sherwood": 24527, - "sheryl": 39773, - "shes": 45514, - "shes": 2502, - "shet": 15850, - "shetland": 29595, - "shetty": 25533, - "shev": 45182, - "sheva": 45132, - "shh": 35025, - "shhh": 36932, - "shi": 823, - "shi": 3533, - "shia": 23791, - "shibu": 36177, - "shibuya": 41623, - "shie": 26638, - "shiel": 33413, - "shield": 8670, - "shields": 19085, - "shies": 35312, - "shif": 35317, - "shift": 43767, - "shift": 6905, - "shifted": 34429, - "shifter": 48944, - "shifting": 21992, - "shifts": 23957, - "shik": 36980, - "shil": 14370, - "shill": 32121, - "shill": 30090, - "shilpa": 47062, - "shilpa": 40690, - "shim": 11986, - "shim": 32780, - "shima": 14382, - "shimano": 48904, - "shimi": 40517, - "shimmer": 38792, - "shin": 5664, - "shin": 11784, - "shinde": 41516, - "shine": 17582, - "shine": 3780, - "shinee": 19660, - "shines": 16015, - "shing": 38641, - "shing": 1743, - "shining": 10485, - "shino": 43074, - "shiny": 12190, - "ship": 7645, - "ship": 1158, - "shipment": 28553, - "shipp": 34709, - "shipped": 15279, - "shippers": 44789, - "shipping": 5721, - "ships": 3262, - "shipwreck": 48878, - "shipy": 26828, - "shipyard": 31273, - "shir": 1956, - "shiraz": 35618, - "shire": 11975, - "shire": 2968, - "shirehour": 32456, - "shirley": 18189, - "shiro": 26048, - "shirt": 27576, - "shirt": 2523, - "shirtless": 28959, - "shirts": 5803, - "shistory": 34979, - "shiv": 18042, - "shiv": 37121, - "shiva": 33881, - "shiva": 21174, - "shka": 38944, - "shld": 49359, - "shma": 48074, - "shment": 8802, - "shments": 18822, - "sho": 719, - "sho": 13756, - "shock": 19617, - "shock": 8736, - "shocked": 15787, - "shocker": 37971, - "shockey": 22258, - "shocking": 13394, - "shocks": 31886, - "shoe": 16308, - "shoe": 7342, - "shoes": 49391, - "shoes": 4079, - "shol": 21472, - "sholm": 44139, - "shome": 42701, - "shon": 19526, - "shon": 37621, - "shone": 47173, - "shoo": 1975, - "shook": 20730, - "shoops": 29956, - "shoot": 12531, - "shoot": 3704, - "shooter": 13645, - "shooters": 31902, - "shooting": 3992, - "shootings": 26753, - "shootout": 20666, - "shoots": 14144, - "shop": 5738, - "shop": 1557, - "shopify": 47949, - "shoplocal": 21775, - "shopp": 38486, - "shoppe": 38236, - "shopped": 28088, - "shopper": 24346, - "shoppers": 22316, - "shopping": 42101, - "shopping": 4266, - "shops": 6467, - "shopsmall": 35942, - "shor": 3209, - "shore": 14717, - "shore": 5928, - "shored": 33140, - "shoreditch": 35042, - "shoreline": 34807, - "shores": 18102, - "short": 6803, - "short": 3005, - "shortage": 19910, - "shortages": 38730, - "shortcuts": 45793, - "shorten": 41711, - "shorter": 20350, - "shortest": 33717, - "shortfilm": 37204, - "shorth": 37397, - "shortlist": 28163, - "shortlisted": 20631, - "shortly": 11967, - "shorts": 9680, - "shorty": 33502, - "shot": 9805, - "shot": 2000, - "shotel": 42365, - "shotgun": 21643, - "shots": 5342, - "shou": 3890, - "shoul": 29847, - "should": 14947, - "should": 1535, - "shoulder": 8476, - "shoulders": 18738, - "shouldn": 9416, - "shour": 20025, - "shouse": 28671, - "shout": 7335, - "shout": 5214, - "shouted": 44397, - "shouting": 26464, - "shoutout": 8274, - "shouts": 26709, - "shovel": 31778, - "show": 2133, - "show": 1080, - "showbiz": 34156, - "showcas": 14290, - "showcase": 7265, - "showcased": 35786, - "showcases": 26266, - "showcasing": 17036, - "showdown": 15576, - "showed": 7150, - "shower": 7777, - "showers": 9893, - "showing": 3649, - "shown": 8506, - "showroom": 16821, - "shows": 2665, - "showtime": 40576, - "showtime": 15442, - "showyour": 46733, - "shp": 38341, - "shq": 21145, - "shr": 10118, - "shra": 21360, - "shradd": 28172, - "shraddha": 35208, - "shraddhakapoor": 40385, - "shre": 12101, - "shred": 19756, - "shred": 33017, - "shredded": 31772, - "shredding": 45534, - "shree": 37410, - "shrek": 35009, - "shrews": 26411, - "shrewsbury": 30921, - "shri": 8838, - "shri": 11424, - "shrimp": 12727, - "shrin": 24865, - "shrine": 16156, - "shrink": 34957, - "shrinking": 41243, - "shrm": 44163, - "shro": 15259, - "shroff": 32081, - "shrop": 22630, - "shropshire": 26344, - "shru": 14911, - "shrub": 41464, - "shrubs": 47975, - "shrun": 46767, - "shs": 16184, - "sht": 44210, - "shti": 38927, - "shu": 2872, - "shu": 17651, - "shua": 33771, - "shub": 40552, - "shud": 45782, - "shuff": 42641, - "shuffle": 21681, - "shui": 45473, - "shuk": 29927, - "shukla": 46829, - "shul": 30721, - "shum": 37383, - "shun": 24479, - "shun": 39594, - "shur": 41032, - "shut": 8702, - "shut": 8282, - "shutdown": 16051, - "shutout": 24385, - "shuts": 28313, - "shutt": 31866, - "shutter": 36235, - "shutter": 33902, - "shutters": 46894, - "shutting": 31383, - "shuttle": 15842, - "shwar": 41640, - "shy": 22678, - "shy": 9682, - "si": 564, - "si": 2990, - "sia": 2357, - "siam": 29686, - "siam": 48248, - "siamese": 43161, - "sian": 28510, - "sian": 6221, - "sians": 26583, - "sias": 28645, - "siber": 22206, - "siberia": 39969, - "siberian": 34058, - "sibl": 14338, - "sible": 14507, - "sibling": 43060, - "sibling": 23779, - "siblings": 17156, - "sic": 8278, - "sic": 1118, - "sica": 34125, - "sical": 33875, - "sichuan": 48950, - "sicilian": 45292, - "sicily": 23179, - "sick": 11143, - "sick": 5359, - "sickest": 47972, - "sickle": 41459, - "sickness": 28898, - "sics": 26297, - "sid": 10117, - "sid": 15119, - "sidd": 19842, - "siddi": 35227, - "side": 5869, - "side": 1145, - "sided": 21061, - "sidekick": 44683, - "sidel": 43557, - "sideline": 32056, - "sidelines": 31046, - "sider": 30581, - "siders": 41249, - "sides": 7578, - "sideshow": 46789, - "sidewalk": 23278, - "sidewalks": 43583, - "sideways": 35593, - "siding": 38758, - "sidney": 22598, - "sie": 8533, - "sie": 5685, - "sieg": 49203, - "siege": 18460, - "siegel": 48559, - "siem": 18434, - "siemens": 30147, - "siempre": 44030, - "siena": 33336, - "sienna": 40373, - "sier": 10028, - "sier": 7444, - "sierra": 13552, - "siers": 35923, - "sies": 16367, - "siest": 18323, - "sif": 29300, - "sig": 872, - "sig": 19145, - "sigh": 36303, - "sigh": 15505, - "sighs": 44579, - "sight": 16897, - "sight": 6329, - "sighted": 33034, - "sighting": 17507, - "sightings": 30004, - "sights": 17364, - "sightseeing": 34210, - "sigma": 45075, - "sigma": 15697, - "sign": 5538, - "sign": 2292, - "signage": 21156, - "signal": 10781, - "signaling": 38492, - "signalling": 48426, - "signals": 17150, - "signation": 24347, - "signature": 9189, - "signatures": 21865, - "signed": 3163, - "signee": 39778, - "signi": 34023, - "signific": 6374, - "significance": 23769, - "significant": 8735, - "significantly": 16187, - "signing": 4401, - "signingday": 40282, - "signings": 27731, - "signs": 4659, - "signup": 40791, - "sigue": 49401, - "sii": 36672, - "sik": 19974, - "sik": 22413, - "sika": 31144, - "sikh": 21829, - "sikhs": 45426, - "sil": 1556, - "sil": 8315, - "sila": 41754, - "sile": 37620, - "silen": 39048, - "silence": 8462, - "silenced": 45415, - "silent": 30352, - "silent": 8487, - "silently": 42640, - "silhou": 20589, - "silhouette": 26149, - "silic": 23830, - "silicon": 32412, - "silicon": 17888, - "silicone": 28221, - "silk": 25891, - "silk": 9743, - "silky": 29554, - "sill": 42468, - "sill": 48024, - "silly": 11883, - "silon": 31841, - "sils": 39708, - "silva": 16489, - "silve": 37697, - "silver": 7525, - "silver": 3467, - "silverado": 46160, - "silverstone": 29666, - "silvia": 37289, - "sim": 5026, - "sim": 10740, - "sima": 35871, - "simba": 39492, - "simcoe": 47148, - "sime": 28329, - "simi": 38073, - "simil": 7202, - "similar": 8547, - "similarities": 34716, - "simm": 13001, - "simmons": 14699, - "simo": 37171, - "simon": 8796, - "simon": 6668, - "simona": 46277, - "simone": 19062, - "simons": 33097, - "simp": 2542, - "simple": 19018, - "simple": 4129, - "simpler": 35489, - "simplest": 39588, - "simpli": 16868, - "simplicity": 21262, - "simplified": 36647, - "simplify": 35479, - "simply": 25637, - "simply": 6151, - "simpson": 41805, - "simpson": 11750, - "simpsons": 21092, - "sims": 14021, - "simul": 9845, - "simulated": 46395, - "simulation": 18610, - "simulator": 20821, - "simultaneous": 48816, - "simultaneously": 28575, - "sin": 1303, - "sin": 3421, - "sina": 19541, - "sinai": 33226, - "sinatra": 27262, - "sinc": 30464, - "since": 1855, - "sincere": 24513, - "sincere": 24886, - "sincerely": 25673, - "sinclair": 23100, - "sind": 39598, - "sind": 30877, - "sindh": 20754, - "sindia": 48038, - "sine": 22741, - "sine": 33793, - "sinfo": 47178, - "sing": 1387, - "sing": 1197, - "singapo": 27861, - "singapore": 28879, - "singapore": 6754, - "singer": 33880, - "singer": 5108, - "singers": 15613, - "singersongwriter": 44585, - "singh": 19445, - "singh": 5715, - "singing": 5864, - "single": 19524, - "single": 2688, - "singles": 12025, - "singleton": 46247, - "singly": 16619, - "sings": 13635, - "singul": 34003, - "singular": 44009, - "singularity": 48410, - "sinha": 29416, - "sini": 41781, - "sini": 26319, - "sinister": 31313, - "sink": 37232, - "sink": 14551, - "sinking": 27949, - "sinks": 32710, - "sinn": 36315, - "sinner": 45380, - "sinners": 43436, - "sino": 29759, - "sins": 9345, - "sinthe": 30737, - "sinu": 37351, - "sinus": 47535, - "sio": 10807, - "siob": 40954, - "siology": 46315, - "sion": 5676, - "sion": 1015, - "sional": 14533, - "sionally": 30754, - "sions": 4060, - "sioux": 44695, - "sioux": 24954, - "sip": 16096, - "sipping": 28527, - "sir": 10708, - "sir": 3846, - "sire": 28450, - "siren": 33026, - "sirens": 35907, - "siri": 13986, - "siri": 18394, - "sirius": 23574, - "sirius": 34999, - "siriusxm": 29833, - "sirloin": 46828, - "sis": 18132, - "sis": 2580, - "sisd": 27132, - "sisi": 37892, - "siss": 42929, - "sissy": 27564, - "sist": 20520, - "sista": 37448, - "sister": 17417, - "sister": 3677, - "sisterhood": 37313, - "sisters": 6404, - "sit": 7387, - "sit": 4037, - "sitcom": 30426, - "site": 26792, - "site": 1988, - "sites": 7236, - "sith": 41499, - "sito": 42613, - "sits": 12726, - "sitt": 42988, - "sitter": 40777, - "sittin": 40887, - "sitting": 4919, - "situ": 5562, - "situ": 42536, - "situated": 22030, - "situation": 7144, - "situations": 19096, - "sity": 38177, - "sity": 5477, - "siu": 40174, - "sium": 8090, - "sius": 27595, - "siva": 20991, - "sivan": 36931, - "sive": 23572, - "sive": 1875, - "sively": 10343, - "siveness": 39667, - "sives": 23896, - "sivity": 42738, - "siwon": 29055, - "six": 5968, - "six": 4093, - "sixers": 25941, - "sixteen": 28677, - "sixth": 12909, - "sixties": 44948, - "sixty": 32588, - "siya": 44440, - "size": 38377, - "size": 3235, - "sized": 9832, - "sizes": 10253, - "sizing": 28330, - "sizz": 23778, - "sizzle": 47890, - "sizzling": 35799, - "sj": 7536, - "sj": 16010, - "sjo": 42012, - "sk": 909, - "sk": 2058, - "ska": 7495, - "skag": 31948, - "skan": 46772, - "skar": 27587, - "skar": 26835, - "skate": 13740, - "skate": 12745, - "skateboard": 31777, - "skateboarding": 31352, - "skater": 30337, - "skaters": 39824, - "skates": 31479, - "skc": 44551, - "ske": 6261, - "ske": 25516, - "skel": 36564, - "skelet": 27075, - "skeletal": 37369, - "skeleton": 20062, - "skeletons": 48874, - "skell": 40801, - "skep": 27772, - "skeptical": 44934, - "sker": 37640, - "sker": 33600, - "sket": 3744, - "sketch": 11767, - "sketch": 5269, - "sketchbook": 18899, - "sketched": 38581, - "sketches": 17622, - "sketching": 23228, - "sketchy": 41582, - "skey": 37453, - "ski": 3327, - "ski": 3428, - "skid": 36574, - "skid": 32099, - "skier": 42585, - "skies": 7244, - "skiing": 14400, - "skil": 24543, - "skill": 15598, - "skill": 10604, - "skilled": 17535, - "skillet": 40568, - "skills": 4113, - "skim": 33191, - "skin": 5821, - "skin": 3575, - "skincare": 12648, - "skine": 37300, - "sking": 46215, - "skinned": 42199, - "skinner": 30261, - "skinny": 42729, - "skinny": 15457, - "skins": 11594, - "skip": 39793, - "skip": 14296, - "skipped": 40639, - "skipper": 22226, - "skipping": 34867, - "skir": 8919, - "skirt": 12386, - "skirts": 24840, - "skis": 32843, - "skit": 43573, - "skitchen": 42820, - "skittles": 43213, - "sko": 15141, - "sko": 23493, - "skoda": 38668, - "skool": 26743, - "skril": 43149, - "skrillex": 43651, - "sks": 48136, - "sku": 10836, - "skul": 17561, - "skull": 34068, - "skull": 12092, - "skulls": 31804, - "skunk": 42194, - "sky": 3075, - "sky": 2390, - "skybet": 45540, - "skye": 21475, - "skyl": 43554, - "skylar": 45411, - "skyline": 14606, - "skymap": 41734, - "skynews": 40977, - "skype": 17069, - "skyrim": 33693, - "skysports": 39845, - "skysports": 46725, - "skywalker": 32936, - "sl": 2621, - "sl": 7489, - "sla": 2725, - "sla": 26707, - "slab": 24241, - "slabs": 42818, - "slack": 37108, - "slack": 30142, - "slade": 33546, - "slain": 35972, - "slalom": 43540, - "slam": 14891, - "slam": 10131, - "slammed": 29772, - "slams": 18907, - "slan": 44663, - "slan": 47193, - "sland": 11294, - "slang": 33655, - "slap": 48830, - "slap": 21751, - "slapped": 38861, - "slaps": 46796, - "slash": 19749, - "slat": 38966, - "slate": 17919, - "slated": 36094, - "slater": 25968, - "slaugh": 26782, - "slaughter": 19815, - "slaughtered": 46615, - "slav": 47292, - "slava": 41797, - "slave": 14029, - "slavery": 15754, - "slaves": 23833, - "slaw": 28178, - "slay": 48319, - "slay": 19380, - "slayed": 44870, - "slayer": 21605, - "slaying": 27812, - "slays": 45648, - "slc": 21972, - "sle": 1709, - "sleague": 23336, - "sled": 28438, - "sledge": 48750, - "slee": 17642, - "slee": 38977, - "sleek": 23187, - "sleep": 4656, - "sleep": 3840, - "sleeper": 28709, - "sleeping": 6982, - "sleepless": 39779, - "sleepover": 39415, - "sleeps": 16610, - "sleepy": 32572, - "sleepy": 14497, - "sleet": 36948, - "sleeve": 35270, - "sleeve": 10536, - "sleeveless": 38049, - "sleeves": 19691, - "sleg": 47650, - "sleigh": 30865, - "slender": 40331, - "slept": 20388, - "sler": 14066, - "sley": 17198, - "sley": 6496, - "sli": 1811, - "sli": 44824, - "slic": 19692, - "slice": 13431, - "sliced": 28121, - "slices": 28424, - "slick": 18341, - "slide": 27828, - "slide": 8837, - "slider": 37861, - "sliders": 40700, - "slides": 15939, - "slideshow": 42817, - "sliding": 21468, - "slife": 15448, - "sliga": 21080, - "slight": 14297, - "slightly": 8456, - "sligo": 30424, - "slike": 38744, - "slim": 35226, - "slim": 12364, - "slime": 29107, - "sling": 28021, - "sling": 32607, - "slinger": 47269, - "slions": 43363, - "slip": 39785, - "slip": 12105, - "slipknot": 41816, - "slipped": 30344, - "slipper": 39644, - "slippers": 26509, - "slippery": 30814, - "slipping": 36301, - "slips": 30632, - "slist": 33749, - "slit": 47011, - "slive": 31652, - "slo": 4303, - "slo": 36083, - "sloan": 29110, - "sloane": 41553, - "slogan": 23398, - "slogans": 42795, - "slope": 22769, - "slopes": 24066, - "sloppy": 36154, - "slot": 14500, - "sloth": 30007, - "slots": 19238, - "slou": 48493, - "slovak": 23315, - "slovakia": 25994, - "sloven": 17018, - "slovenia": 21037, - "slow": 6674, - "slow": 5444, - "slowdown": 38421, - "slowed": 43793, - "slower": 29181, - "slowing": 29839, - "slowly": 9568, - "slows": 46855, - "slp": 45599, - "slr": 21325, - "sls": 33651, - "slt": 39283, - "sltd": 36388, - "slu": 7224, - "slu": 47456, - "slug": 34190, - "slugger": 48671, - "slum": 46754, - "slumber": 44295, - "slump": 35588, - "slur": 30476, - "slush": 39815, - "slv": 45526, - "sly": 28145, - "sly": 21062, - "sm": 978, - "sm": 2764, - "sma": 4357, - "sma": 11854, - "smack": 21280, - "smack": 30026, - "smackdown": 26138, - "smafia": 47686, - "smag": 32212, - "smal": 48379, - "small": 5244, - "small": 2442, - "smallbiz": 41724, - "smallbiz": 18987, - "smallbusiness": 21316, - "smalle": 18490, - "smaller": 12431, - "smallest": 18686, - "smalls": 41696, - "sman": 9612, - "smar": 3201, - "smart": 5383, - "smart": 4115, - "smartcities": 34822, - "smartcity": 33973, - "smarter": 18990, - "smartest": 37092, - "smarthome": 47726, - "smartphone": 11290, - "smartphones": 22212, - "smartwatch": 35798, - "smash": 17258, - "smash": 10332, - "smashbros": 44897, - "smashed": 18410, - "smashes": 45657, - "smashing": 19632, - "smatter": 16537, - "smb": 30446, - "smc": 31375, - "smc": 28312, - "smd": 34582, - "sme": 11758, - "sme": 15650, - "smear": 37546, - "smel": 28476, - "smell": 9688, - "smelling": 32493, - "smells": 14668, - "smelly": 46145, - "smen": 15961, - "smer": 48526, - "smere": 39629, - "smes": 26141, - "smg": 46876, - "smh": 9623, - "smi": 5655, - "smi": 40049, - "smil": 33937, - "smile": 27641, - "smile": 3490, - "smiled": 34362, - "smiles": 8726, - "smiley": 22925, - "smiling": 9200, - "smir": 24667, - "smith": 10527, - "smith": 2915, - "smiths": 27872, - "smithson": 25372, - "smithsonian": 31209, - "smm": 19510, - "smma": 42370, - "smo": 2513, - "smo": 13437, - "smobile": 38923, - "smog": 44425, - "smoke": 20381, - "smoke": 6664, - "smoked": 11161, - "smoker": 32348, - "smokers": 29571, - "smokes": 40336, - "smokey": 23670, - "smokin": 32825, - "smoking": 9038, - "smoky": 25549, - "smol": 29939, - "smol": 40403, - "smoo": 5430, - "smooth": 10958, - "smooth": 8990, - "smoother": 44271, - "smoothie": 16668, - "smoothies": 34458, - "smoothly": 32380, - "smore": 48323, - "smp": 32260, - "smriti": 49227, - "sms": 10409, - "smt": 26672, - "smtown": 26072, - "smu": 10878, - "smu": 30458, - "smug": 41021, - "smugg": 28130, - "smuggling": 34146, - "smur": 24708, - "smusic": 19191, - "smw": 44929, - "smx": 46699, - "smy": 14381, - "smyth": 44822, - "sn": 1672, - "sn": 5844, - "sna": 4032, - "snack": 47548, - "snack": 10039, - "snacking": 46474, - "snacks": 12349, - "snag": 34789, - "snag": 28043, - "snagged": 48534, - "snail": 23132, - "snails": 34928, - "snake": 30133, - "snake": 8798, - "snakes": 19605, - "snap": 4578, - "snap": 7404, - "snapback": 31234, - "snapchat": 7799, - "snapmatic": 45907, - "snapp": 10185, - "snapped": 15543, - "snapper": 31677, - "snapping": 31581, - "snaps": 16890, - "snapshot": 18243, - "snar": 30810, - "snare": 40651, - "snat": 18457, - "snatch": 35302, - "snatched": 44821, - "snation": 14362, - "snazzy": 48963, - "snc": 39918, - "sne": 3791, - "sne": 46503, - "sneak": 27871, - "sneak": 6917, - "sneaker": 31698, - "sneaker": 24781, - "sneakers": 17397, - "sneaking": 34633, - "sneakpeek": 47831, - "sneaks": 40926, - "sneaky": 21293, - "snee": 42095, - "snell": 46410, - "sner": 31424, - "snes": 26667, - "snews": 18623, - "snf": 47651, - "sng": 41549, - "snhl": 43093, - "sni": 7186, - "sni": 35570, - "snickers": 49127, - "sniff": 37841, - "snip": 42954, - "sniper": 22157, - "snippet": 37531, - "snippets": 44001, - "snl": 16011, - "sno": 8567, - "sno": 17802, - "snoo": 11352, - "snooker": 25657, - "snoop": 44503, - "snoop": 27754, - "snoopdogg": 48388, - "snoopy": 41967, - "snooze": 40718, - "snor": 16590, - "snoring": 44560, - "snorkel": 44285, - "snorkeling": 48103, - "snow": 3880, - "snow": 2583, - "snowball": 39254, - "snowboard": 33403, - "snowboarding": 32397, - "snowday": 37982, - "snowden": 32154, - "snowdon": 47107, - "snowdonia": 36088, - "snowed": 45073, - "snowfall": 21714, - "snowflake": 33447, - "snowflakes": 38618, - "snowing": 21443, - "snowman": 22668, - "snowstorm": 38777, - "snowy": 14191, - "snp": 15301, - "sns": 36343, - "snsd": 27961, - "snt": 34834, - "snu": 9694, - "snuck": 36522, - "snug": 45169, - "snuggle": 31327, - "snuggles": 48165, - "sny": 17526, - "snyder": 22106, - "snz": 37678, - "so": 759, - "so": 706, - "soa": 39584, - "soak": 24839, - "soaked": 26592, - "soaking": 26750, - "soap": 26086, - "soap": 11088, - "soaps": 40958, - "soar": 48997, - "soar": 22241, - "soaring": 27968, - "soars": 41348, - "sob": 24900, - "sob": 35507, - "sobbing": 36691, - "sober": 30969, - "sober": 24487, - "sobre": 42768, - "sobri": 49308, - "sobs": 43636, - "soc": 3253, - "soc": 7741, - "soca": 49239, - "socal": 46470, - "socal": 20450, - "soccer": 16268, - "soccer": 4233, - "socceroos": 41997, - "socent": 30831, - "sochi": 21014, - "soci": 1720, - "social": 4803, - "social": 2346, - "socialism": 23372, - "socialist": 18450, - "socialists": 43839, - "socially": 24555, - "socialmedi": 23813, - "socialmedia": 9600, - "socialmediamarketing": 31790, - "societal": 40058, - "societies": 25855, - "society": 3757, - "socio": 44319, - "socio": 42790, - "sociology": 32373, - "sock": 29801, - "sock": 18277, - "socket": 28657, - "socks": 8774, - "socorro": 46409, - "socute": 45086, - "sod": 31435, - "soda": 13533, - "sodium": 29070, - "soe": 44136, - "soe": 25498, - "soever": 34024, - "sof": 1571, - "sof": 41187, - "sofa": 15723, - "soff": 35290, - "soff": 30684, - "sofficial": 20563, - "sofi": 41537, - "sofia": 18914, - "sofinstagram": 17301, - "soft": 12778, - "soft": 3773, - "softball": 8369, - "softer": 44462, - "softhe": 23127, - "softly": 34958, - "software": 35941, - "software": 5847, - "softwitter": 11311, - "sog": 44775, - "soggy": 41168, - "sohn": 49267, - "soho": 47749, - "soho": 17592, - "soi": 40495, - "soil": 33417, - "soil": 9216, - "soils": 34891, - "soir": 43427, - "sok": 43456, - "sol": 1175, - "sol": 9941, - "sola": 40086, - "solace": 42567, - "solar": 16990, - "solar": 5199, - "solareclipse": 44727, - "sold": 33116, - "sold": 3939, - "soldi": 5098, - "soldier": 9355, - "soldiers": 7547, - "sole": 10519, - "sole": 8576, - "soleil": 33148, - "solely": 27913, - "solent": 47783, - "soles": 22682, - "soli": 3911, - "solic": 19369, - "solicitor": 45647, - "solicitors": 46000, - "solid": 30626, - "solid": 6148, - "solidar": 10415, - "solidarity": 10983, - "solidi": 46136, - "solids": 49070, - "solihull": 45293, - "solit": 37039, - "solitaire": 47257, - "solitary": 33094, - "solitude": 33199, - "solo": 17626, - "solo": 5797, - "soloist": 46391, - "solom": 15768, - "solomon": 19785, - "solos": 44868, - "solst": 20298, - "solstice": 21359, - "solu": 2487, - "solution": 4575, - "solutions": 5140, - "solve": 8917, - "solved": 13451, - "solves": 42740, - "solving": 15581, - "som": 734, - "som": 10672, - "soma": 36170, - "somal": 40281, - "somali": 26231, - "somalia": 17051, - "somaliland": 43315, - "some": 1132, - "some": 836, - "somebody": 8305, - "someday": 17127, - "somehow": 11735, - "someone": 2100, - "somer": 9656, - "somerhalder": 33990, - "somerset": 14926, - "somerville": 41409, - "somes": 38124, - "somethin": 33541, - "something": 28316, - "something": 2006, - "sometime": 21464, - "sometimes": 4237, - "somewhat": 17864, - "somewhere": 8119, - "somm": 42726, - "somme": 30625, - "sommer": 44954, - "somos": 24951, - "son": 1176, - "son": 825, - "sona": 21249, - "sonam": 40096, - "sonar": 48235, - "sonata": 37009, - "sone": 29599, - "song": 6868, - "song": 2295, - "songs": 4641, - "songwriter": 13034, - "songwriters": 39583, - "songwriting": 33567, - "songz": 49302, - "soni": 34899, - "soni": 35911, - "sonia": 20409, - "sonic": 23785, - "sonic": 9132, - "sonics": 48511, - "sonja": 46102, - "sonline": 23412, - "sonny": 43000, - "sonny": 20880, - "sono": 44109, - "sonom": 48596, - "sonoma": 26269, - "sons": 5502, - "sonsof": 46676, - "sont": 31063, - "sonthe": 40923, - "sony": 16042, - "sony": 8748, - "sonya": 39172, - "soo": 5517, - "soo": 8602, - "soom": 39771, - "soon": 27559, - "soon": 1745, - "sooner": 18968, - "sooners": 30449, - "sooo": 11526, - "soooo": 13658, - "sooooo": 21199, - "soooooo": 34859, - "soor": 46698, - "soothe": 44424, - "soothing": 27730, - "sop": 3974, - "sop": 19194, - "soph": 34963, - "sophi": 6192, - "sophia": 16790, - "sophie": 38648, - "sophie": 12357, - "sophistic": 17646, - "sophisticated": 20833, - "sophom": 13696, - "sophomore": 15242, - "sophomores": 47645, - "soprano": 28880, - "soproud": 44479, - "sor": 1852, - "sor": 16872, - "sora": 38719, - "sorbet": 39994, - "sore": 43330, - "sore": 15454, - "sored": 6731, - "soren": 38907, - "sorg": 28152, - "sori": 38588, - "sorority": 30059, - "soros": 33248, - "sorren": 44012, - "sorrow": 28020, - "sorrows": 47924, - "sorry": 25745, - "sorry": 3675, - "sorrynotsorry": 37105, - "sort": 8450, - "sorta": 34700, - "sorted": 13221, - "sorting": 19198, - "sorts": 12577, - "sory": 16257, - "sos": 25145, - "sos": 5792, - "sosa": 45433, - "sosfam": 47709, - "sot": 41542, - "sot": 34116, - "sothe": 32145, - "sotho": 45496, - "soto": 27947, - "sotto": 26047, - "sotu": 32286, - "sou": 1101, - "sou": 24293, - "sought": 18874, - "soul": 8701, - "soul": 3755, - "soulful": 30196, - "soulmate": 38130, - "souls": 10951, - "soun": 19474, - "sound": 5236, - "sound": 3608, - "soundcheck": 31394, - "soundcloud": 15190, - "sounded": 28287, - "sounders": 44933, - "sounding": 21351, - "sounds": 5694, - "soundtrack": 11389, - "soup": 7077, - "soups": 45052, - "sour": 2235, - "sour": 12049, - "source": 23698, - "source": 3634, - "sourced": 23340, - "sources": 5124, - "sourcing": 19574, - "sourdough": 29921, - "souri": 11674, - "sous": 32093, - "sousa": 46296, - "sout": 38156, - "sout": 32732, - "south": 2938, - "south": 2045, - "southafrica": 15184, - "southampton": 15767, - "southbank": 44173, - "southbound": 22932, - "southeast": 13942, - "southeastern": 26813, - "southend": 25583, - "souther": 33330, - "southern": 17704, - "southern": 5036, - "southgate": 47262, - "southkorea": 43552, - "southport": 37446, - "southside": 36436, - "southsudan": 30419, - "southwark": 39098, - "southwe": 46443, - "southwest": 13320, - "southwestern": 30157, - "souven": 20210, - "souvenir": 24811, - "souvenirs": 48460, - "souza": 29424, - "sov": 29737, - "sover": 31876, - "sovere": 17736, - "sovereign": 29418, - "sovereign": 26337, - "sovereignty": 31701, - "soviet": 14274, - "sow": 33089, - "sowe": 36130, - "soweto": 47070, - "sown": 49369, - "sox": 39556, - "sox": 8657, - "soy": 16524, - "soy": 15010, - "soybean": 34606, - "soybeans": 40840, - "soyu": 39578, - "soyuz": 43842, - "sp": 588, - "sp": 4393, - "spa": 7852, - "spa": 6692, - "spac": 10336, - "space": 7857, - "space": 2138, - "spacecraft": 25940, - "spaces": 9006, - "spaceship": 34317, - "spacex": 22511, - "spacey": 48770, - "spacious": 24769, - "spad": 45362, - "spade": 32562, - "spades": 48368, - "spaghetti": 18440, - "spain": 5083, - "spal": 26018, - "spam": 29712, - "spam": 14624, - "span": 4270, - "span": 14537, - "spandex": 41686, - "spani": 16721, - "spaniel": 35435, - "spanish": 29966, - "spanish": 6013, - "spann": 25323, - "spanning": 38638, - "spans": 45407, - "spaper": 34548, - "spar": 3378, - "spar": 34576, - "spare": 12615, - "spares": 39505, - "spark": 9555, - "spark": 11047, - "sparked": 32647, - "sparkle": 18287, - "sparkles": 36410, - "sparkling": 17893, - "sparkly": 30542, - "sparks": 15046, - "sparky": 47198, - "sparring": 42161, - "sparrow": 22888, - "spart": 10143, - "sparta": 38401, - "spartan": 26582, - "spartan": 24225, - "spartans": 20457, - "sparty": 36477, - "spas": 31714, - "spati": 19200, - "spatial": 22022, - "spaw": 31605, - "spawn": 29166, - "spay": 40634, - "spc": 20492, - "spca": 37018, - "spd": 37717, - "spd": 28307, - "spdwy": 45981, - "spe": 876, - "spe": 36676, - "speak": 20599, - "speak": 4208, - "speake": 46077, - "speaker": 25764, - "speaker": 4914, - "speakers": 7675, - "speaking": 3714, - "speaks": 5661, - "spear": 23277, - "spear": 30420, - "speare": 43859, - "spears": 20242, - "spec": 1711, - "spec": 18596, - "speci": 1969, - "special": 11422, - "special": 1689, - "specialist": 10630, - "specialists": 21719, - "speciality": 46904, - "specialized": 23265, - "specializes": 48533, - "specially": 4513, - "specials": 11983, - "specialty": 18262, - "species": 6330, - "specific": 10528, - "specifically": 17174, - "specification": 46394, - "specifications": 39705, - "specified": 48114, - "specimen": 30263, - "specimens": 42715, - "specs": 24093, - "spect": 3416, - "spectac": 7242, - "spectacle": 34342, - "spectacular": 8404, - "spectator": 32372, - "spectators": 39306, - "spective": 6633, - "spector": 48676, - "spectral": 45441, - "spectre": 35998, - "spectro": 27646, - "spectrum": 13532, - "specul": 19209, - "speculation": 30898, - "sped": 38813, - "spee": 4050, - "speech": 19556, - "speech": 4902, - "speeches": 25208, - "speechless": 23152, - "speed": 6860, - "speed": 4163, - "speeding": 27264, - "speeds": 22017, - "speedway": 11480, - "speedy": 21603, - "spel": 41887, - "spell": 22784, - "spell": 11230, - "spelled": 24339, - "spelling": 15614, - "spells": 25335, - "spelt": 38316, - "spen": 5087, - "spence": 33324, - "spencer": 27509, - "spencer": 10678, - "spend": 4664, - "spending": 5961, - "spends": 22508, - "spent": 4429, - "speople": 33035, - "sper": 8213, - "sper": 15313, - "sperm": 35781, - "sperson": 22687, - "spf": 34973, - "spg": 34623, - "sph": 28909, - "sph": 24684, - "sphe": 33691, - "spher": 18349, - "sphere": 6987, - "spheres": 37478, - "spheric": 21744, - "sphin": 39237, - "sphinx": 46487, - "spho": 20442, - "sphoto": 38594, - "sphy": 43808, - "spi": 3174, - "spi": 37080, - "spic": 17264, - "spice": 29761, - "spice": 10141, - "spiced": 24267, - "spicer": 37627, - "spices": 21194, - "spicy": 10915, - "spide": 36801, - "spider": 11963, - "spider": 7622, - "spiderman": 39808, - "spiderman": 18427, - "spiders": 23141, - "spidey": 41706, - "spie": 28573, - "spie": 28746, - "spied": 43998, - "spiegel": 45351, - "spiel": 28435, - "spiel": 37690, - "spielberg": 37569, - "spies": 25374, - "spieth": 43254, - "spike": 35306, - "spike": 15310, - "spiked": 47014, - "spikes": 29582, - "spil": 47765, - "spill": 43933, - "spill": 18006, - "spilled": 33206, - "spilling": 49006, - "spills": 35796, - "spin": 6288, - "spin": 9226, - "spinach": 14747, - "spinal": 23925, - "spine": 48221, - "spine": 19646, - "sping": 47113, - "spinner": 29924, - "spinning": 13987, - "spino": 40848, - "spinoff": 42513, - "spinrilla": 46064, - "spins": 27243, - "spion": 39604, - "spionage": 41838, - "spir": 3745, - "spiral": 19873, - "spiration": 38126, - "spire": 27439, - "spired": 40650, - "spires": 46938, - "spiri": 4024, - "spirit": 18224, - "spirit": 4071, - "spirited": 34701, - "spirits": 13192, - "spiritu": 7237, - "spiritual": 46076, - "spiritual": 9473, - "spirituality": 22165, - "spiro": 40085, - "spit": 18115, - "spit": 23177, - "spite": 26060, - "spitfire": 31126, - "spitting": 40721, - "spl": 2470, - "spl": 33052, - "spla": 4809, - "splac": 16059, - "splace": 38743, - "splash": 43641, - "splash": 11879, - "splat": 15733, - "splatoon": 22565, - "splay": 3169, - "splen": 18552, - "splend": 29861, - "splendid": 21016, - "splendor": 46262, - "splin": 38090, - "split": 25443, - "split": 9109, - "splits": 34897, - "splitting": 37210, - "splus": 40866, - "spn": 35467, - "spn": 19414, - "spnfamily": 38566, - "spo": 1261, - "spo": 21085, - "spock": 43918, - "spoil": 25600, - "spoiled": 21399, - "spoiler": 16512, - "spoilers": 18326, - "spoils": 42436, - "spoilt": 35358, - "spokane": 24528, - "spoke": 13890, - "spoke": 6518, - "spoken": 12979, - "spokesman": 31632, - "spokesperson": 26234, - "spol": 22476, - "spol": 8132, - "spoli": 34301, - "spolice": 37406, - "spon": 1715, - "spon": 48216, - "sponge": 22861, - "sponge": 24345, - "spongebob": 25089, - "spons": 5597, - "sponsor": 10424, - "sponsor": 7574, - "sponsored": 7197, - "sponsoring": 16181, - "sponsors": 11005, - "sponsorship": 17632, - "spontaneous": 32465, - "spoo": 11248, - "spooky": 15369, - "spool": 49152, - "spoon": 27001, - "spoon": 14024, - "spoons": 29661, - "spor": 1475, - "spor": 33746, - "sport": 4379, - "sport": 2364, - "sporting": 32620, - "sporting": 8944, - "sports": 6436, - "sports": 2054, - "sportsc": 40114, - "sportscar": 46931, - "sportscenter": 39157, - "sportsman": 39020, - "sportsmanship": 34858, - "sportsnet": 34144, - "sportswear": 39747, - "sporty": 33346, - "spot": 3223, - "spot": 3049, - "spotify": 7193, - "spotlight": 7901, - "spots": 7670, - "spotted": 4533, - "spotter": 30742, - "spotting": 15885, - "spouse": 24724, - "spout": 48993, - "spp": 47567, - "spr": 1536, - "spr": 19417, - "spra": 12966, - "spraw": 46590, - "spray": 37885, - "spray": 10449, - "sprayed": 40022, - "spraying": 39224, - "spre": 18740, - "spread": 20620, - "spread": 5284, - "spreading": 11821, - "spreads": 27579, - "spree": 21851, - "spri": 35498, - "spride": 26685, - "spring": 5166, - "spring": 2420, - "springbreak": 37753, - "springer": 30117, - "springfield": 16599, - "springs": 7308, - "springst": 32132, - "springsteen": 28367, - "springtime": 28285, - "springtraining": 49364, - "springwatch": 29239, - "sprink": 15817, - "sprinkle": 42897, - "sprinkler": 48754, - "sprinkles": 37326, - "sprint": 29248, - "sprint": 10751, - "sprinter": 36947, - "sprints": 36404, - "sprite": 32544, - "spro": 13902, - "spro": 37403, - "sproject": 37802, - "sproud": 37686, - "sprout": 35863, - "sprouts": 25756, - "spru": 17041, - "spruce": 23812, - "sprung": 32968, - "sps": 13869, - "spu": 23566, - "spun": 47922, - "spun": 32852, - "spur": 15206, - "spur": 20361, - "spurs": 10916, - "spursofficial": 45290, - "sput": 47521, - "spx": 20584, - "spy": 13861, - "spy": 6656, - "spyder": 39952, - "spying": 36227, - "sq": 9370, - "sq": 11590, - "sqft": 41912, - "sql": 42759, - "sql": 18938, - "sqm": 47978, - "sqn": 41209, - "squ": 1653, - "squad": 13892, - "squad": 4234, - "squadron": 18579, - "squads": 36590, - "square": 19314, - "square": 3999, - "squared": 32967, - "squares": 26972, - "squash": 13312, - "squat": 44628, - "squat": 30680, - "squats": 40213, - "sque": 9721, - "sque": 8097, - "squee": 14420, - "squeeze": 21684, - "squeezed": 40413, - "squid": 42057, - "squid": 22553, - "squir": 9683, - "squire": 48090, - "squirrel": 14004, - "squirrels": 26623, - "squish": 42607, - "squishy": 47001, - "sr": 3437, - "sr": 5428, - "srbachchan": 32353, - "src": 23445, - "sre": 17748, - "sri": 11051, - "sri": 9276, - "sridevi": 46301, - "srilan": 15559, - "srilanka": 16922, - "srin": 26818, - "srinagar": 33671, - "srini": 41899, - "sriracha": 42743, - "sris": 27851, - "srisri": 32966, - "srk": 44982, - "srk": 11216, - "srl": 33808, - "srp": 43004, - "srs": 41764, - "srsly": 44179, - "srt": 28139, - "sru": 44152, - "srugby": 40526, - "ss": 690, - "ss": 632, - "ssa": 6088, - "ssal": 31330, - "ssal": 35936, - "ssb": 37511, - "ssc": 21692, - "ssc": 20364, - "ssd": 23107, - "sse": 9030, - "sse": 8938, - "ssed": 38755, - "ssed": 1804, - "ssel": 17402, - "ssel": 19373, - "sseldorf": 47792, - "ssell": 42388, - "ssels": 8355, - "ssen": 39408, - "ssen": 22645, - "sser": 20445, - "sses": 1802, - "ssett": 44103, - "ssf": 33239, - "ssg": 40707, - "ssh": 48866, - "ssi": 834, - "ssi": 14953, - "ssia": 22238, - "ssian": 31218, - "ssible": 47099, - "ssic": 27774, - "ssic": 17077, - "ssie": 7572, - "ssier": 26422, - "ssil": 15026, - "ssin": 42660, - "ssing": 2112, - "ssion": 16050, - "ssion": 1627, - "ssional": 13727, - "ssionism": 24787, - "ssionist": 27682, - "ssions": 4137, - "ssive": 2734, - "ssively": 28060, - "ssl": 32195, - "ssler": 30287, - "ssly": 24904, - "ssn": 39116, - "ssnhq": 47998, - "sso": 25900, - "sso": 7914, - "ssoccer": 32546, - "sson": 36124, - "sson": 7271, - "ssor": 35152, - "ssp": 31101, - "ssr": 39880, - "sss": 11176, - "ssss": 30676, - "ssss": 15880, - "sssss": 24298, - "sst": 40396, - "ssu": 35351, - "ssummit": 49301, - "ssus": 31286, - "ssw": 36937, - "ssy": 22519, - "ssy": 8661, - "st": 522, - "st": 545, - "sta": 1363, - "sta": 2745, - "stab": 7726, - "stab": 29974, - "stabbed": 24534, - "stabbing": 25474, - "stabil": 42576, - "stabili": 23903, - "stability": 16716, - "stable": 44427, - "stable": 10492, - "stables": 34218, - "stac": 10175, - "stacey": 41653, - "stacey": 24262, - "stache": 23616, - "stack": 24723, - "stack": 11257, - "stacked": 24990, - "stacking": 39836, - "stacks": 24734, - "stacy": 26628, - "stad": 15832, - "stad": 16485, - "stade": 38198, - "stadi": 26587, - "stadion": 48815, - "stadium": 3390, - "stadiums": 38852, - "stadt": 22713, - "staf": 2367, - "staff": 31188, - "staff": 2813, - "staffer": 38494, - "staffers": 44994, - "staffing": 32932, - "stafford": 25006, - "staffordshire": 29198, - "staffs": 36098, - "stag": 12088, - "stag": 20277, - "stage": 23182, - "stage": 2170, - "staged": 19906, - "stages": 12297, - "staggering": 37315, - "staging": 27026, - "stagram": 19503, - "stags": 45936, - "stain": 3933, - "stain": 14603, - "stained": 13751, - "staining": 32523, - "stainless": 12320, - "stains": 32008, - "stair": 7240, - "stair": 17662, - "staircase": 22777, - "stairs": 9577, - "stairway": 45559, - "stak": 39144, - "stake": 15955, - "stake": 7937, - "stakeholder": 39122, - "stakeholders": 22968, - "stakes": 7519, - "staking": 47082, - "stal": 3861, - "stal": 5535, - "stale": 42471, - "stalert": 25450, - "stalin": 28346, - "stalk": 40826, - "stalk": 14878, - "stalker": 26777, - "stalking": 24721, - "stalks": 45886, - "stall": 24636, - "stall": 12058, - "stalled": 40362, - "stallion": 28273, - "stallions": 44787, - "stallone": 40969, - "stalls": 25427, - "stam": 4663, - "stamatic": 30904, - "stamford": 27843, - "stamina": 48753, - "stamp": 28694, - "stamp": 12771, - "stampcollecting": 42852, - "stamped": 38356, - "stampede": 25384, - "stamps": 13827, - "stan": 2203, - "stan": 2434, - "stana": 33311, - "stanbul": 11231, - "stance": 48900, - "stance": 3542, - "stances": 15054, - "stand": 1819, - "stand": 2087, - "standalone": 44887, - "standard": 35780, - "standard": 5807, - "standardi": 30247, - "standards": 9022, - "standby": 36184, - "standing": 39934, - "standing": 2862, - "standings": 19835, - "standoff": 31821, - "standout": 23131, - "standre": 48309, - "stands": 6446, - "standup": 35108, - "standup": 24964, - "standwith": 19540, - "stanford": 36219, - "stanford": 15087, - "stang": 12536, - "stani": 38228, - "stanis": 37711, - "stanley": 19048, - "stanley": 10079, - "stanleycup": 28662, - "stans": 26564, - "stant": 41576, - "stant": 4906, - "stanton": 25400, - "stap": 10438, - "staple": 22695, - "staples": 23646, - "stapleton": 45228, - "star": 993, - "star": 1565, - "starbuck": 48519, - "starbucks": 9499, - "starch": 47837, - "starcraft": 48871, - "stardom": 44616, - "stardust": 34337, - "stare": 18094, - "stared": 47772, - "stares": 37916, - "starfish": 44283, - "stargate": 41099, - "stargazing": 49328, - "staring": 13800, - "stark": 40446, - "stark": 15353, - "starlight": 32197, - "starling": 46205, - "starmagic": 48023, - "starplus": 37815, - "starr": 19186, - "starred": 24180, - "starrer": 41311, - "starring": 6660, - "starry": 30963, - "stars": 2895, - "starship": 37166, - "start": 17466, - "start": 1572, - "started": 2760, - "starter": 7800, - "starters": 22222, - "starting": 2530, - "startrek": 30642, - "startrek": 15349, - "starts": 3105, - "startu": 6996, - "startup": 18049, - "startup": 5882, - "startups": 9056, - "starve": 46957, - "starving": 30473, - "starwar": 17287, - "starwars": 26239, - "starwars": 7887, - "starz": 25928, - "stas": 19866, - "stash": 27711, - "stasy": 45942, - "stat": 3004, - "stat": 15216, - "state": 3492, - "state": 1295, - "statec": 33931, - "stated": 19629, - "statedept": 41458, - "statefair": 40305, - "statement": 5401, - "statements": 19513, - "staten": 38263, - "stateof": 35195, - "states": 22125, - "states": 4218, - "statesman": 35301, - "stateu": 44248, - "statewide": 29561, - "stati": 9622, - "static": 16363, - "stating": 35147, - "station": 13498, - "station": 2631, - "stationary": 29493, - "stationed": 47618, - "stationery": 33851, - "stations": 10051, - "statistical": 29349, - "statistics": 14165, - "stats": 7294, - "statu": 32481, - "statue": 8222, - "statues": 24363, - "status": 6414, - "stau": 28550, - "staur": 3709, - "stav": 20285, - "stax": 32235, - "stay": 4714, - "stay": 2277, - "stayed": 13805, - "staying": 8993, - "stays": 13311, - "staytuned": 39285, - "stc": 29859, - "std": 30477, - "ste": 795, - "ste": 2686, - "stea": 46614, - "stead": 16101, - "stead": 11031, - "steadily": 35049, - "steady": 12937, - "steak": 26955, - "steak": 8913, - "steakhouse": 35031, - "steaks": 30655, - "steal": 37070, - "steal": 10181, - "stealing": 14242, - "steals": 20224, - "stealth": 25327, - "steam": 10962, - "steam": 6972, - "steamboat": 41121, - "steamed": 29007, - "steamer": 49075, - "steaming": 43746, - "steampunk": 24130, - "steamy": 43104, - "stec": 46713, - "stech": 48949, - "stech": 32455, - "sted": 20426, - "sted": 1356, - "stee": 31793, - "steed": 48293, - "steel": 6938, - "steel": 4726, - "steele": 19460, - "steelers": 14430, - "steen": 42851, - "steen": 18625, - "steep": 28648, - "steep": 20714, - "steer": 27612, - "steering": 19833, - "stef": 29158, - "stefan": 15004, - "stefan": 18829, - "stefani": 38319, - "stefano": 30719, - "steff": 30075, - "stein": 13653, - "stein": 5818, - "steiner": 36314, - "stel": 9102, - "stel": 10798, - "stell": 22355, - "stella": 46178, - "stella": 17869, - "stellar": 13810, - "stellen": 42754, - "stem": 24342, - "stem": 6761, - "stemc": 40486, - "stems": 31503, - "sten": 7652, - "sten": 7877, - "stencil": 47854, - "stennis": 45636, - "step": 15572, - "step": 3348, - "steph": 3522, - "steph": 16251, - "stephan": 37312, - "stephani": 48121, - "stephanie": 14361, - "stephen": 10421, - "stephen": 6078, - "stephenking": 46361, - "stephens": 22256, - "stephenson": 37280, - "stepped": 18384, - "stepping": 15906, - "steps": 5408, - "ster": 1022, - "ster": 881, - "stere": 9229, - "stered": 6935, - "stereo": 15992, - "stereo": 17400, - "stereotypes": 27890, - "steria": 38804, - "stering": 14175, - "sterling": 45790, - "sterling": 9378, - "stern": 36254, - "stern": 2945, - "steroids": 37670, - "sterone": 39418, - "sters": 2132, - "stery": 24232, - "stest": 8556, - "stev": 11640, - "steve": 7412, - "steve": 3803, - "steven": 10973, - "steven": 8016, - "stevens": 13877, - "stevenson": 25091, - "stevie": 42104, - "stevie": 18969, - "stew": 17906, - "stewar": 28453, - "steward": 34980, - "steward": 43355, - "stewards": 49294, - "stewardship": 36720, - "stewart": 8120, - "stfu": 47000, - "stg": 48387, - "stgeorge": 43698, - "sth": 13456, - "sth": 34004, - "sthe": 16491, - "sthel": 42863, - "sti": 860, - "sti": 12439, - "stia": 26492, - "stible": 25835, - "stic": 5868, - "stic": 1561, - "stical": 16660, - "stically": 19041, - "stick": 5483, - "stick": 4987, - "sticker": 11270, - "stickers": 11613, - "sticking": 21021, - "sticks": 10016, - "sticky": 18887, - "stics": 5449, - "stie": 38164, - "stie": 11000, - "stier": 42069, - "sties": 16428, - "stiff": 43471, - "stiff": 21441, - "stig": 4088, - "stig": 42551, - "stigate": 15390, - "stigma": 20619, - "stik": 42247, - "stil": 21790, - "stil": 37519, - "stiles": 33028, - "still": 13209, - "still": 1170, - "stills": 20259, - "stim": 18269, - "stime": 24711, - "stimul": 16434, - "stimulate": 42380, - "stimulating": 41237, - "stimulation": 39530, - "stimulus": 47283, - "stin": 2588, - "stin": 4025, - "stina": 22359, - "stine": 7098, - "sting": 19868, - "sting": 1271, - "stingly": 49332, - "stingray": 43229, - "stink": 38213, - "stinky": 44957, - "stino": 40658, - "stint": 33531, - "stion": 10812, - "stip": 39869, - "stips": 44756, - "stique": 43305, - "stir": 12416, - "stir": 19564, - "stirling": 23128, - "stirring": 39205, - "stis": 45224, - "stit": 14110, - "stitch": 30003, - "stitch": 14771, - "stitched": 36540, - "stitcher": 48204, - "stitches": 32360, - "stitching": 45208, - "stitu": 14585, - "stitutes": 40479, - "stive": 22426, - "stix": 48829, - "stjohn": 36153, - "stl": 14179, - "stl": 12527, - "stlblues": 44138, - "stlcards": 28644, - "stle": 7698, - "stles": 48638, - "stlouis": 40358, - "stlouis": 39516, - "stm": 28333, - "stn": 27175, - "sto": 928, - "sto": 5723, - "stock": 5899, - "stock": 3206, - "stocked": 23552, - "stockholm": 16024, - "stocki": 42944, - "stocking": 17335, - "stockings": 28040, - "stockmarket": 40359, - "stockport": 35569, - "stocks": 9321, - "stockton": 26130, - "stoday": 22392, - "stok": 43782, - "stoke": 31338, - "stoke": 13550, - "stoked": 13160, - "stokes": 27512, - "stol": 11401, - "stol": 6700, - "stole": 10995, - "stolen": 8704, - "stolic": 45020, - "stom": 2343, - "stom": 38068, - "stoma": 43545, - "stomach": 14722, - "stomp": 40165, - "stomping": 46144, - "ston": 4101, - "ston": 1839, - "stone": 7694, - "stone": 2441, - "stoned": 36248, - "stonehenge": 42417, - "stoner": 35131, - "stoner": 29115, - "stones": 42659, - "stones": 6885, - "stonewall": 39688, - "stoney": 44198, - "stony": 41717, - "stony": 35691, - "stoo": 24505, - "stood": 9151, - "stool": 34413, - "stool": 22314, - "stop": 6005, - "stop": 1691, - "stopbrexit": 48680, - "stopp": 15738, - "stopped": 6015, - "stopper": 32147, - "stoppers": 34457, - "stopping": 10735, - "stops": 9822, - "stopthe": 26463, - "stor": 809, - "stor": 17740, - "storage": 6824, - "store": 17769, - "store": 2183, - "stored": 28257, - "stores": 6370, - "storey": 24025, - "storians": 34628, - "stories": 3784, - "storing": 40087, - "stork": 46452, - "storm": 7434, - "storm": 2819, - "stormed": 45939, - "stormhour": 12161, - "storming": 24842, - "storms": 6464, - "stormtrooper": 49218, - "stormy": 20075, - "stors": 7178, - "story": 6512, - "story": 1134, - "storyline": 37079, - "storymonth": 23717, - "storyteller": 35882, - "storytelling": 14457, - "storytime": 44197, - "stos": 19281, - "stou": 37168, - "stour": 37361, - "stour": 21928, - "stout": 16550, - "stove": 21423, - "stow": 44284, - "stow": 17046, - "stowe": 34196, - "stown": 28071, - "stown": 7939, - "stp": 30576, - "stpatrick": 21343, - "stpatricksday": 22747, - "str": 807, - "str": 15913, - "stra": 1894, - "stra": 6253, - "strack": 46861, - "strada": 31134, - "strade": 48968, - "straigh": 31016, - "straight": 22114, - "straight": 4241, - "strain": 16887, - "strains": 38067, - "strait": 22946, - "straits": 41984, - "stral": 23289, - "stralia": 42510, - "stran": 18411, - "strand": 18214, - "strand": 17826, - "stranded": 22975, - "strang": 11138, - "strange": 33380, - "strange": 7288, - "strangely": 37566, - "stranger": 35541, - "stranger": 14149, - "strangers": 20684, - "strangerthings": 43271, - "strangest": 46740, - "strap": 13946, - "strapped": 40922, - "straps": 31213, - "stras": 36814, - "stras": 42125, - "strasbourg": 39576, - "strat": 11345, - "strat": 32925, - "strata": 47278, - "strate": 3532, - "strate": 28758, - "strategi": 49102, - "strategic": 10246, - "strategically": 45706, - "strategies": 9942, - "strategist": 37180, - "strategy": 5637, - "strates": 45724, - "stratford": 23955, - "strath": 21997, - "stration": 3156, - "strato": 28878, - "strauss": 32033, - "strava": 34625, - "stravel": 43494, - "straw": 7430, - "straw": 16438, - "strawberries": 17796, - "strawberry": 10233, - "straws": 33048, - "stray": 30784, - "stray": 15712, - "stre": 1079, - "stre": 19652, - "stread": 27797, - "streak": 11749, - "streaks": 42092, - "stream": 8659, - "stream": 3322, - "streamed": 26280, - "streamer": 25178, - "streamers": 19937, - "streaming": 6278, - "streamline": 44917, - "streams": 13545, - "stree": 35082, - "stree": 32438, - "streep": 38701, - "street": 4839, - "street": 2012, - "streetart": 12948, - "streetcar": 34268, - "streetfood": 44486, - "streetphotography": 20786, - "streets": 6058, - "streetstyle": 39118, - "streetwear": 37298, - "strel": 39685, - "stren": 4349, - "streng": 4472, - "strength": 15475, - "strength": 5959, - "strengthen": 16318, - "strengthened": 47131, - "strengthening": 23475, - "strengthens": 40280, - "strengths": 29268, - "stress": 17297, - "stress": 5843, - "stressed": 16497, - "stresses": 32112, - "stressful": 24268, - "stressing": 35917, - "stret": 12265, - "stretch": 10064, - "stretched": 29393, - "stretches": 32231, - "stretching": 24423, - "stri": 1493, - "stri": 27795, - "stria": 39620, - "strial": 30217, - "strian": 12924, - "stric": 2607, - "strick": 25181, - "strickland": 48939, - "strict": 21585, - "strictly": 16475, - "stride": 36024, - "strides": 37355, - "stries": 18171, - "strife": 46473, - "strike": 20774, - "strike": 5767, - "striker": 12448, - "strikers": 33465, - "strikes": 9280, - "striking": 13392, - "string": 25512, - "string": 9696, - "strings": 15699, - "strip": 9317, - "stripe": 19368, - "striped": 22192, - "stripes": 14239, - "stripped": 26602, - "stripper": 45759, - "stripping": 48588, - "strips": 19000, - "strive": 22140, - "striving": 37671, - "stro": 3121, - "stro": 6186, - "stroke": 44621, - "stroke": 10403, - "strokes": 26595, - "strol": 30123, - "stroll": 15924, - "stroller": 47076, - "strolling": 40911, - "strom": 14707, - "stron": 4165, - "strong": 10436, - "strong": 2389, - "stronger": 27760, - "stronger": 9245, - "strongertogether": 38532, - "strongest": 16171, - "strongh": 38678, - "strongly": 15507, - "strophy": 47912, - "strou": 48425, - "stroud": 39895, - "strous": 23752, - "stru": 1666, - "struc": 3311, - "struck": 10861, - "struction": 12497, - "structural": 16899, - "structure": 5285, - "structured": 27147, - "structures": 14171, - "structuring": 37496, - "strugg": 5176, - "struggle": 8443, - "struggled": 32921, - "struggles": 17446, - "struggling": 12135, - "struly": 34118, - "strum": 37632, - "strung": 46033, - "strust": 23920, - "strut": 48375, - "stry": 17325, - "stry": 2245, - "sts": 1088, - "stu": 858, - "stu": 23531, - "stuart": 32054, - "stuart": 11723, - "stub": 27066, - "stubborn": 38955, - "stuck": 6596, - "stud": 22368, - "stud": 13319, - "studded": 29153, - "studen": 44156, - "student": 14681, - "student": 2556, - "students": 1712, - "studi": 5691, - "studied": 21369, - "studies": 6426, - "studio": 17798, - "studio": 3155, - "studios": 6231, - "studs": 27571, - "study": 21051, - "study": 3123, - "studyabroad": 45425, - "studying": 8826, - "stuff": 46072, - "stuff": 3487, - "stuffed": 11781, - "stuffing": 31612, - "stuffs": 43455, - "stuk": 32424, - "stumb": 16784, - "stumble": 39045, - "stumbled": 21776, - "stump": 32064, - "stun": 3088, - "stun": 37959, - "stunned": 34034, - "stunner": 29965, - "stunning": 3769, - "stunningly": 47515, - "stuns": 43796, - "stunt": 19905, - "stunts": 40118, - "stupi": 18975, - "stupid": 42600, - "stupid": 8085, - "stupidity": 33766, - "stur": 10676, - "sturdy": 43780, - "stures": 27223, - "sturgeon": 31580, - "sturi": 21747, - "sturridge": 45331, - "stutt": 30444, - "stuttgart": 32219, - "stv": 27060, - "stv": 9708, - "stweet": 46832, - "stweets": 39174, - "stx": 42548, - "sty": 1421, - "sty": 2920, - "style": 12356, - "style": 1844, - "styled": 17974, - "styles": 6948, - "styli": 38577, - "styling": 14597, - "stylish": 10378, - "stylist": 15928, - "styn": 41394, - "su": 605, - "su": 2937, - "sua": 42448, - "suarez": 21437, - "suave": 47305, - "sub": 1783, - "sub": 7765, - "subaru": 21319, - "subjec": 16090, - "subject": 10300, - "subjects": 22099, - "subli": 16350, - "sublime": 22367, - "submarine": 19968, - "submer": 27156, - "submerged": 43171, - "submission": 16571, - "submissions": 21566, - "submit": 10423, - "submitted": 15189, - "submitting": 38788, - "subram": 49207, - "subs": 16398, - "subscri": 5838, - "subscribe": 9839, - "subscribed": 44867, - "subscriber": 36292, - "subscribers": 17337, - "subscription": 17979, - "subscriptions": 47162, - "subsequ": 33598, - "subsequent": 44323, - "subsi": 14856, - "subsidi": 45029, - "subsidiary": 45506, - "subsidies": 37685, - "subsidy": 47462, - "substan": 17487, - "substance": 19309, - "substances": 36834, - "substantial": 27171, - "substantially": 47577, - "substitu": 18529, - "substitute": 25340, - "subtitles": 39479, - "subtle": 16536, - "subur": 12517, - "suburb": 37664, - "suburban": 23570, - "suburbs": 25317, - "subway": 12196, - "suc": 1869, - "succe": 7981, - "succeed": 13556, - "succeeded": 41077, - "succes": 39019, - "success": 3695, - "success": 3034, - "successes": 29436, - "successful": 4670, - "successfully": 9934, - "succession": 38491, - "successive": 41319, - "successor": 34774, - "succu": 45253, - "succul": 25671, - "succulent": 35236, - "such": 2046, - "suction": 42786, - "sud": 8067, - "sud": 33714, - "sudan": 31149, - "sudan": 13474, - "sudanese": 42837, - "sudbury": 32488, - "sudden": 10833, - "sudden": 15433, - "suddenly": 11076, - "sue": 14045, - "sue": 6641, - "sued": 22225, - "suede": 21036, - "sues": 17105, - "suf": 21204, - "suf": 22579, - "sufc": 37091, - "suff": 4866, - "suffe": 13510, - "suffer": 13557, - "suffered": 14766, - "suffering": 10140, - "suffers": 22389, - "sufficient": 28410, - "suffol": 13775, - "suffolk": 46408, - "suffolk": 15685, - "suffra": 34596, - "suffrage": 39567, - "sufi": 39756, - "sug": 3189, - "suga": 28757, - "sugar": 12418, - "sugar": 5574, - "sugge": 6345, - "suggest": 13356, - "suggested": 18790, - "suggesti": 15033, - "suggesting": 29792, - "suggestion": 23741, - "suggestions": 16052, - "suggests": 13333, - "suho": 32744, - "sui": 24972, - "suici": 16372, - "suicidal": 37165, - "suicide": 31310, - "suicide": 8247, - "suing": 18309, - "suisse": 35964, - "suit": 11887, - "suit": 3940, - "suitable": 17476, - "suitcase": 27792, - "suite": 9346, - "suited": 25919, - "suites": 21523, - "suits": 9949, - "suk": 24820, - "suk": 6886, - "suka": 44017, - "suke": 25590, - "sukh": 46961, - "suki": 32704, - "sul": 1767, - "sul": 19879, - "sula": 34713, - "sula": 26143, - "sullivan": 14477, - "sully": 37752, - "sulph": 37234, - "sulphur": 47659, - "sultan": 35650, - "sultan": 17049, - "sum": 7054, - "sum": 8257, - "suma": 47938, - "sumat": 32640, - "sumatra": 47346, - "sume": 45457, - "sumi": 41248, - "summ": 1309, - "summar": 34657, - "summari": 31993, - "summary": 13435, - "summed": 34912, - "summer": 5500, - "summer": 1673, - "summers": 18254, - "summerslam": 40264, - "summertime": 19025, - "summit": 30011, - "summit": 3768, - "summon": 27622, - "summon": 39782, - "sumner": 46813, - "sumo": 33734, - "sump": 34252, - "sumptuous": 47354, - "sums": 13325, - "sun": 968, - "sun": 2176, - "sunbathing": 46994, - "sunburn": 45767, - "sund": 40735, - "sundae": 38078, - "sundance": 24128, - "sundar": 44936, - "sunday": 6649, - "sunday": 1706, - "sundayfunday": 21565, - "sundaymorning": 24809, - "sundaymotivation": 46227, - "sundays": 15827, - "sundaywith": 26469, - "sundaywithmarsha": 26662, - "sunder": 15097, - "sunderland": 45727, - "sunderland": 18851, - "sundown": 44438, - "sune": 41096, - "sunflower": 21559, - "sunflowers": 39809, - "sung": 16903, - "sung": 6047, - "sunglasses": 12906, - "suni": 17663, - "suni": 47010, - "sunil": 32861, - "sunite": 21382, - "sunited": 35276, - "sunk": 37534, - "sunken": 43473, - "sunlight": 17996, - "sunni": 44315, - "sunny": 15632, - "sunny": 5438, - "sunrise": 5610, - "suns": 18322, - "sunscreen": 29355, - "sunset": 37880, - "sunset": 3424, - "sunsets": 17721, - "sunshine": 32761, - "sunshine": 5385, - "suny": 41308, - "sup": 19078, - "sup": 8249, - "supdates": 24177, - "super": 1642, - "super": 1994, - "superb": 8930, - "superbike": 45709, - "superbowl": 47461, - "superbowl": 16467, - "supercar": 27021, - "supercars": 32185, - "supercell": 43227, - "supercharged": 47479, - "supere": 46831, - "superfood": 41715, - "supergirl": 25771, - "superhero": 14049, - "superheroes": 23334, - "superint": 17615, - "superintendent": 19020, - "superior": 13205, - "superjunior": 40475, - "superleague": 45539, - "superman": 11237, - "supermarket": 19897, - "supermarkets": 45106, - "supermodel": 41963, - "supermoon": 36571, - "supernatural": 15484, - "supernova": 39843, - "superrugby": 48717, - "supersonic": 42019, - "supersport": 46319, - "superst": 38202, - "superstar": 32551, - "superstar": 10472, - "superstars": 25797, - "supervis": 12709, - "supervised": 41316, - "supervision": 36234, - "supervisor": 20366, - "supervisors": 37958, - "superyacht": 42714, - "supp": 1023, - "supper": 15727, - "supple": 31431, - "supplement": 19924, - "supplements": 21265, - "supplied": 24106, - "supplier": 18043, - "suppliers": 24196, - "supplies": 9384, - "supply": 25074, - "supply": 6389, - "supplychain": 31224, - "supplying": 32739, - "suppo": 6941, - "suppor": 2104, - "support": 12062, - "support": 1425, - "supported": 8038, - "supporter": 12992, - "supporters": 7403, - "supportindiefilm": 43976, - "supporting": 3976, - "supportive": 18313, - "supportlocal": 43852, - "supports": 8336, - "supportsmall": 30941, - "supportsmallstreamers": 36097, - "suppose": 18924, - "supposed": 9119, - "supposedly": 32302, - "suppre": 20542, - "suppression": 36508, - "supra": 48485, - "supre": 5875, - "supremac": 28643, - "supremacist": 39005, - "supremacy": 28913, - "supreme": 35222, - "supreme": 7468, - "supt": 23625, - "sur": 1090, - "sur": 7123, - "sura": 33412, - "sura": 49125, - "surabaya": 45227, - "surance": 22184, - "surat": 30201, - "sure": 14320, - "sure": 1650, - "sured": 36869, - "surely": 11409, - "sures": 12725, - "suresh": 32118, - "suresh": 31464, - "sureshpp": 41924, - "sureshpprabhu": 42050, - "surf": 10176, - "surf": 10322, - "surface": 7744, - "surfaces": 20746, - "surfer": 24925, - "surfers": 34842, - "surfing": 15762, - "surg": 13045, - "surge": 17457, - "surgeon": 16039, - "surgeons": 26000, - "surger": 5122, - "surgeries": 34940, - "surgery": 5344, - "surgical": 16386, - "suri": 14130, - "suri": 33952, - "suring": 16817, - "suriya": 17832, - "surpass": 45494, - "surpassed": 25648, - "surplus": 29413, - "surpri": 3244, - "surprise": 5099, - "surprised": 8949, - "surprises": 16920, - "surprising": 14964, - "surprisingly": 17367, - "surreal": 18408, - "surrealism": 41773, - "surrender": 20964, - "surrendered": 44601, - "surrey": 26489, - "surrey": 14315, - "surro": 47499, - "surroun": 8250, - "surround": 26543, - "surround": 22999, - "surrounded": 13589, - "surrounding": 12544, - "surroundings": 26915, - "surrounds": 39012, - "suru": 49240, - "surve": 8952, - "surveill": 15408, - "surveillance": 15578, - "survey": 45914, - "survey": 6809, - "surveying": 33085, - "surveys": 25096, - "survi": 3440, - "surviv": 12922, - "survival": 10172, - "survive": 10431, - "survived": 13483, - "survives": 30927, - "surviving": 18609, - "survivor": 31934, - "survivor": 10944, - "survivors": 13711, - "surya": 37767, - "sus": 8091, - "sus": 3036, - "susa": 20546, - "susan": 19922, - "susan": 10168, - "suscep": 44270, - "sush": 22298, - "sushi": 11729, - "sushmaswar": 48200, - "susie": 32284, - "susp": 7971, - "suspec": 10298, - "suspect": 9065, - "suspected": 15579, - "suspects": 18265, - "suspen": 10578, - "suspend": 41007, - "suspended": 13126, - "suspends": 39535, - "suspense": 21556, - "suspension": 15417, - "suspici": 25714, - "suspicion": 34910, - "suspicious": 19862, - "sussex": 31244, - "sussex": 13266, - "sustain": 4644, - "sustain": 28156, - "sustainability": 9635, - "sustainable": 23645, - "sustainable": 7078, - "sustained": 22699, - "sustaining": 44418, - "sut": 23984, - "sut": 28956, - "sutherland": 27592, - "sutton": 39359, - "sutton": 18564, - "suv": 15985, - "suz": 9957, - "suzanne": 24617, - "suzu": 36289, - "suzuki": 16892, - "suzy": 26552, - "sv": 6508, - "sv": 17083, - "svc": 45065, - "sve": 47637, - "sven": 37786, - "sven": 45183, - "sver": 45923, - "sville": 44580, - "sville": 6741, - "svp": 28465, - "svt": 42014, - "svu": 32123, - "sw": 1220, - "sw": 4457, - "swa": 4707, - "swa": 31916, - "swach": 20862, - "swachhb": 31898, - "swachhbharat": 36927, - "swag": 8852, - "swag": 8177, - "swagg": 47702, - "swagger": 35797, - "swain": 43226, - "swal": 13433, - "swallow": 28979, - "swallowed": 46956, - "swallows": 45124, - "swam": 42539, - "swami": 25021, - "swamp": 41953, - "swamp": 16595, - "swamy": 28445, - "swan": 8215, - "swan": 12530, - "swana": 24699, - "swans": 19516, - "swansea": 16567, - "swanson": 34797, - "swap": 15234, - "swapped": 39077, - "swapping": 44702, - "swaps": 49242, - "swar": 11680, - "swarm": 31577, - "swarovski": 28515, - "swat": 32547, - "swat": 26482, - "swatch": 48053, - "sway": 26443, - "sway": 26617, - "swc": 42231, - "swe": 2350, - "swe": 38070, - "swear": 7406, - "swearing": 32627, - "sweat": 10282, - "sweat": 12663, - "sweater": 11455, - "sweaters": 31303, - "sweating": 33215, - "sweats": 39321, - "sweatshirt": 22442, - "sweaty": 28419, - "sweden": 8760, - "swedish": 11585, - "swee": 1812, - "sweek": 30017, - "sweeney": 27286, - "sweep": 23220, - "sweep": 13669, - "sweeping": 25719, - "sweeps": 26887, - "sweepstakes": 25992, - "sweet": 10957, - "sweet": 2418, - "sweetened": 45577, - "sweeter": 32873, - "sweetest": 15180, - "sweethe": 16316, - "sweetheart": 18079, - "sweetie": 24450, - "sweetness": 29713, - "sweets": 18045, - "swel": 48470, - "swell": 35538, - "swell": 21490, - "swelling": 46578, - "swept": 23311, - "swer": 30514, - "swfc": 30227, - "swfl": 46607, - "swi": 3881, - "swi": 45223, - "swick": 17159, - "swif": 28548, - "swift": 34843, - "swift": 8229, - "swild": 33909, - "swild": 38696, - "swildlife": 46818, - "swim": 4928, - "swim": 7681, - "swimmer": 25475, - "swimmers": 27776, - "swimming": 7411, - "swims": 46798, - "swimsuit": 25504, - "swimwear": 31889, - "swin": 14554, - "swin": 40798, - "swindon": 29540, - "swine": 31166, - "swing": 25292, - "swing": 7429, - "swinging": 26760, - "swings": 29141, - "swipe": 31828, - "swire": 42753, - "swirl": 35795, - "swis": 23611, - "swish": 38571, - "swiss": 37917, - "swiss": 9287, - "swit": 3726, - "switch": 22480, - "switch": 5893, - "switched": 22869, - "switches": 33569, - "switching": 21155, - "swith": 17299, - "switzer": 9835, - "switzerland": 9912, - "swivel": 48256, - "swo": 38673, - "swol": 29575, - "swollen": 36129, - "swoo": 29744, - "swood": 24158, - "swoon": 37028, - "swoop": 45661, - "sword": 33294, - "sword": 11356, - "swords": 27181, - "swork": 42722, - "sworld": 33305, - "sworn": 21130, - "sworth": 13322, - "swt": 38878, - "swx": 20597, - "sx": 9402, - "sx": 17806, - "sxsw": 13369, - "sy": 974, - "sy": 2126, - "sya": 35017, - "sycam": 34911, - "sycamore": 43086, - "syd": 4525, - "syd": 22504, - "sydney": 15878, - "sydney": 5278, - "syed": 27624, - "syfy": 32047, - "sykes": 27287, - "syl": 6452, - "sylla": 41708, - "sylvania": 12011, - "sylve": 28369, - "sylvester": 37214, - "sylvia": 25670, - "sym": 3645, - "sym": 40327, - "symb": 22987, - "symbol": 13085, - "symboli": 22019, - "symbolic": 33177, - "symbolism": 44679, - "symbols": 25476, - "symmetry": 31427, - "symp": 11468, - "sympathi": 47493, - "sympathy": 32477, - "symph": 9544, - "symphonic": 42639, - "symphony": 11180, - "sympo": 9730, - "symposium": 9971, - "symptom": 47799, - "symptoms": 12956, - "syn": 3758, - "syn": 36090, - "synago": 30945, - "synagogue": 33518, - "sync": 20081, - "synchron": 23943, - "syndic": 21098, - "syndicate": 28779, - "syndrome": 10927, - "syner": 22283, - "synergy": 32012, - "syno": 31533, - "synod": 47712, - "synopsis": 47018, - "synth": 33841, - "synth": 24462, - "synthe": 22604, - "synthesi": 33565, - "synthesis": 21602, - "synthesizer": 44077, - "synthetic": 19917, - "syou": 26742, - "syour": 21718, - "syrac": 17279, - "syracuse": 19640, - "syrah": 45364, - "syri": 18917, - "syria": 5563, - "syrian": 47562, - "syrian": 10041, - "syrians": 41392, - "syrup": 16611, - "sys": 26726, - "syste": 1933, - "system": 47813, - "system": 2422, - "systematic": 28586, - "systemic": 33807, - "systems": 4828, - "sz": 13438, - "sz": 15879, - "sze": 44507, - "szn": 48092, - "são": 45911, - "sé": 37879, - "t": 83, - "t": 339, - "ta": 648, - "ta": 1397, - "taa": 43874, - "tab": 2648, - "tab": 14724, - "tabby": 36145, - "tabern": 48991, - "tability": 15770, - "table": 12108, - "table": 2175, - "tableau": 39723, - "tables": 7822, - "tablet": 12494, - "tabletop": 46843, - "tabletop": 25773, - "tablets": 20436, - "tably": 24440, - "taboo": 38400, - "tabs": 29163, - "tac": 3145, - "tac": 22653, - "tache": 39239, - "tack": 6339, - "tack": 34446, - "tackle": 10294, - "tackled": 47218, - "tackles": 18021, - "tackling": 19628, - "taco": 31924, - "taco": 12436, - "tacoma": 25397, - "tacos": 14090, - "tactic": 40377, - "tactical": 17137, - "tactics": 16410, - "tacular": 48985, - "tad": 15890, - "tad": 19860, - "tado": 40846, - "tae": 15257, - "tae": 15580, - "taehyung": 24642, - "taek": 30753, - "taekwondo": 39963, - "taemin": 30600, - "taeyang": 45802, - "taeyeon": 27389, - "taf": 29660, - "taft": 42141, - "tag": 3456, - "tag": 3640, - "tage": 2669, - "tages": 39902, - "tagged": 12969, - "tagging": 25138, - "tagne": 47467, - "tags": 11606, - "tah": 14822, - "tah": 7090, - "tahit": 45385, - "tahoe": 26140, - "tai": 6511, - "tai": 13040, - "taiji": 30185, - "tail": 7156, - "tail": 4132, - "tailed": 20626, - "tailgate": 23168, - "tailgating": 42625, - "tailo": 27230, - "tailor": 29870, - "tailored": 28275, - "tailoring": 46357, - "tails": 16066, - "tain": 2841, - "tain": 1908, - "taine": 21214, - "taine": 32299, - "tained": 10212, - "taining": 7565, - "tainment": 30063, - "tains": 3952, - "tainted": 47211, - "taipei": 24356, - "tair": 29143, - "tairp": 43707, - "tait": 45325, - "taiwan": 36319, - "taiwan": 12626, - "taiwanese": 41416, - "taj": 28937, - "taj": 24805, - "taji": 46358, - "tak": 15070, - "tak": 14458, - "taka": 24070, - "taka": 40968, - "take": 5052, - "take": 1172, - "takeaway": 25737, - "takeaways": 32080, - "takeme": 41748, - "taken": 2807, - "takeoff": 32789, - "takeover": 11863, - "taker": 17939, - "takers": 30775, - "takes": 2633, - "takin": 30890, - "taking": 2019, - "taku": 48168, - "tal": 976, - "tal": 2066, - "tala": 29845, - "talaga": 35349, - "talbot": 30585, - "tale": 33971, - "tale": 7798, - "talent": 30435, - "talent": 5114, - "talented": 5331, - "talents": 16136, - "tales": 9469, - "tali": 12122, - "tali": 45406, - "taliban": 20788, - "talis": 36480, - "tality": 15631, - "talk": 12462, - "talk": 1841, - "talked": 10153, - "talkin": 26040, - "talking": 31463, - "talking": 2578, - "talks": 3237, - "tall": 11664, - "tall": 7771, - "talla": 21528, - "tallade": 44220, - "tallahassee": 37832, - "taller": 23470, - "tallest": 19774, - "tallinn": 45079, - "tally": 16323, - "talon": 47897, - "tam": 2661, - "tam": 12246, - "tama": 45424, - "tamanna": 48055, - "tamar": 22901, - "tamara": 35697, - "tame": 38557, - "tame": 32778, - "tamed": 40575, - "tami": 39429, - "tamil": 23046, - "tamil": 14033, - "tamilnadu": 32371, - "tamine": 42566, - "tammy": 28396, - "tampa": 10906, - "tampab": 37852, - "tamu": 34105, - "tan": 2123, - "tan": 5039, - "tana": 21396, - "tand": 20244, - "tandem": 33756, - "tane": 13344, - "tane": 24923, - "taneous": 22275, - "taneously": 24422, - "tang": 10425, - "tang": 20794, - "tanger": 31844, - "tangerine": 42045, - "tangible": 44823, - "tangle": 36568, - "tangled": 33587, - "tango": 24089, - "tani": 31374, - "tani": 32985, - "tania": 45369, - "tank": 29858, - "tank": 6172, - "tanker": 25020, - "tanks": 14223, - "tann": 19174, - "tanner": 22001, - "tanning": 27985, - "tans": 27332, - "tant": 41383, - "tant": 41695, - "tante": 48262, - "tanto": 45685, - "tany": 34410, - "tanya": 26800, - "tanz": 47399, - "tanzania": 15711, - "tao": 29084, - "tao": 18923, - "tap": 17923, - "tap": 7888, - "tapas": 27361, - "tape": 18332, - "tape": 5749, - "taped": 33219, - "tapes": 17903, - "tapestry": 33525, - "taping": 24355, - "tapp": 27644, - "tapp": 27764, - "tapped": 26649, - "tapping": 27882, - "tapro": 34415, - "taproom": 40266, - "taps": 23267, - "tar": 2002, - "tar": 6977, - "tara": 15264, - "tarak": 37813, - "taran": 32370, - "tarantino": 41180, - "tarde": 48670, - "tardis": 35410, - "tares": 34587, - "targe": 9620, - "target": 38556, - "target": 5400, - "targeted": 14968, - "targeting": 15818, - "targets": 12468, - "tari": 4238, - "tari": 38012, - "tarian": 11762, - "tarians": 42789, - "taries": 47291, - "tariff": 40220, - "tariffs": 28335, - "tariq": 42526, - "tarmac": 44294, - "taro": 26264, - "tarot": 23702, - "tart": 16707, - "tart": 14120, - "tartan": 35064, - "tarts": 29799, - "tary": 31729, - "tary": 5065, - "tarzan": 45463, - "tas": 6538, - "tas": 10163, - "tash": 35272, - "tasha": 44967, - "task": 39189, - "task": 10549, - "tasks": 19453, - "tasmania": 22429, - "tasmanian": 45102, - "tassel": 49276, - "tast": 10839, - "taste": 14314, - "taste": 5219, - "tasted": 22827, - "tasteof": 38097, - "taster": 29743, - "tastes": 13736, - "tastic": 21337, - "tasting": 7656, - "tastings": 49273, - "tasty": 43390, - "tasty": 8568, - "tat": 2652, - "tat": 21592, - "tata": 19300, - "tate": 44476, - "tate": 13295, - "tath": 27566, - "tati": 31433, - "tatiana": 48837, - "tation": 5280, - "tations": 32324, - "tator": 18791, - "tators": 37206, - "tats": 44557, - "tatt": 9232, - "tatted": 41605, - "tattoo": 15980, - "tattoo": 6325, - "tattooed": 28541, - "tattoos": 14900, - "tatum": 26103, - "tau": 6620, - "tau": 20510, - "taught": 9306, - "taun": 23910, - "taunton": 40681, - "taurus": 32881, - "taver": 37776, - "tavern": 18644, - "taw": 33868, - "taw": 40289, - "tawa": 29035, - "tawards": 14351, - "tax": 4581, - "tax": 3879, - "taxation": 36847, - "taxes": 11462, - "taxi": 25160, - "taxi": 11380, - "taxider": 47420, - "taxis": 34009, - "taxpay": 17986, - "taxpayer": 30978, - "taxpayers": 25503, - "tay": 6542, - "tay": 15073, - "taya": 38484, - "tayl": 3913, - "taylor": 9044, - "taylor": 3961, - "taylorswift": 18936, - "tayo": 33941, - "taz": 41475, - "taz": 31870, - "tb": 1990, - "tb": 7490, - "tba": 34363, - "tball": 8390, - "tball": 1467, - "tbc": 31807, - "tbd": 45548, - "tbh": 13238, - "tbi": 45868, - "tbl": 42962, - "tbli": 43664, - "tblightning": 44178, - "tbo": 34255, - "tbr": 46643, - "tbs": 37368, - "tbt": 2950, - "tc": 6820, - "tc": 5454, - "tca": 35116, - "tch": 10744, - "tch": 4048, - "tches": 42001, - "tcm": 21501, - "tcm": 26588, - "tcmparty": 24338, - "tcot": 8995, - "tcs": 39107, - "tcu": 26791, - "td": 20578, - "td": 3192, - "tdf": 21844, - "tdi": 45621, - "tdp": 47009, - "tds": 20238, - "tdsb": 29836, - "te": 600, - "te": 756, - "tea": 41053, - "tea": 3274, - "teach": 2043, - "teach": 6865, - "teacher": 18051, - "teacher": 4008, - "teachers": 5069, - "teaches": 17110, - "teaching": 5141, - "teachings": 32119, - "teal": 22821, - "team": 2085, - "team": 1027, - "teamcanada": 46636, - "teamed": 20590, - "teamgb": 40971, - "teaming": 24392, - "teammate": 17900, - "teammates": 13921, - "teams": 3891, - "teamsisd": 34703, - "teamusa": 28625, - "teamwork": 14657, - "teaparty": 33065, - "teapo": 35745, - "teapot": 40749, - "tear": 15802, - "tear": 11862, - "tearful": 46873, - "tearing": 24785, - "tears": 7688, - "teas": 23003, - "teas": 29314, - "tease": 25163, - "teased": 49122, - "teaser": 8982, - "teasers": 48990, - "teases": 28509, - "teasing": 36507, - "teat": 26376, - "teatime": 48948, - "teatro": 35756, - "teau": 24931, - "tebow": 37797, - "tec": 17381, - "tec": 11612, - "tech": 1782, - "tech": 2061, - "techcrunch": 42110, - "techn": 6252, - "technews": 31787, - "technic": 16639, - "technic": 37666, - "technical": 49231, - "technical": 7582, - "technically": 23180, - "technician": 22540, - "technicians": 35513, - "techno": 2599, - "techno": 17564, - "technological": 23068, - "technologies": 10040, - "technology": 3089, - "techs": 41353, - "ted": 4841, - "ted": 775, - "tedcruz": 27517, - "teddy": 25758, - "teddy": 11798, - "tedly": 8539, - "tedu": 42517, - "tedx": 17950, - "tedx": 41504, - "tee": 12676, - "tee": 3385, - "teed": 13692, - "teen": 5398, - "teen": 4697, - "teenage": 14069, - "teenager": 19338, - "teenagers": 25989, - "teenchoice": 28203, - "teens": 12375, - "teenth": 20249, - "teenwolf": 40067, - "teeny": 41622, - "teer": 48648, - "tees": 9641, - "teessi": 43295, - "teeth": 8225, - "tega": 29508, - "tegr": 39801, - "teh": 18720, - "teh": 29601, - "tehran": 26399, - "tein": 33223, - "tej": 46724, - "tek": 17489, - "tek": 18294, - "tekken": 29843, - "tel": 4978, - "tel": 2226, - "telang": 23469, - "telangana": 26386, - "tele": 3103, - "tele": 32851, - "telecom": 21057, - "telecommunications": 39900, - "telegram": 26780, - "telegraph": 14713, - "telephone": 17243, - "telescope": 19037, - "telethon": 49266, - "televised": 39470, - "television": 8608, - "telford": 38323, - "tell": 16069, - "tell": 2330, - "teller": 20415, - "tellers": 42707, - "telling": 5507, - "tells": 5217, - "tellu": 42511, - "telly": 31475, - "tels": 43607, - "telugu": 22927, - "tely": 5630, - "tem": 2404, - "tem": 17536, - "tema": 45881, - "teme": 43378, - "temp": 2684, - "temp": 11097, - "tempe": 36723, - "temper": 5981, - "temper": 35521, - "temperature": 9543, - "temperatures": 11575, - "tempered": 40521, - "tempest": 36053, - "templ": 16679, - "template": 18591, - "templates": 30498, - "temple": 21841, - "temple": 5620, - "temples": 24024, - "tempo": 19625, - "tempor": 4858, - "temporal": 43656, - "temporarily": 23189, - "temporary": 6513, - "temps": 11668, - "tempt": 28460, - "temptation": 30118, - "tempted": 26226, - "tempting": 34876, - "ten": 1149, - "ten": 2581, - "tenant": 16954, - "tenants": 26023, - "tenay": 45384, - "tenberg": 31329, - "tend": 17630, - "tend": 21252, - "tendency": 47277, - "tender": 23020, - "tender": 9838, - "tenderloin": 42750, - "tenders": 44741, - "tending": 35084, - "tendon": 48459, - "tends": 39962, - "tene": 24868, - "tened": 13682, - "tener": 29054, - "teneri": 28000, - "tenerife": 29401, - "teners": 41307, - "teness": 18018, - "teng": 34016, - "teng": 28474, - "tennant": 29310, - "tennes": 9514, - "tennessee": 10053, - "tennis": 31504, - "tennis": 5298, - "tenor": 30521, - "tens": 14062, - "tense": 23518, - "tension": 15221, - "tensions": 24224, - "tenstein": 49139, - "tent": 18505, - "tent": 10782, - "tentative": 48238, - "tenth": 27483, - "tention": 12191, - "tents": 30730, - "tenure": 30739, - "teo": 18665, - "tep": 31806, - "tequ": 17502, - "tequila": 18510, - "ter": 704, - "ter": 652, - "tera": 15155, - "teras": 44830, - "tere": 11329, - "tered": 49272, - "tered": 4389, - "terence": 33806, - "teresa": 19081, - "teri": 30917, - "teria": 22685, - "terie": 42276, - "tering": 7929, - "term": 40991, - "term": 4780, - "termin": 4766, - "terminal": 11816, - "terminals": 44091, - "terminator": 29609, - "terminology": 48896, - "terms": 8663, - "tern": 41572, - "tern": 12959, - "terns": 25251, - "tero": 20727, - "tero": 24697, - "terps": 41471, - "terr": 3921, - "terra": 22366, - "terra": 18816, - "terrac": 28549, - "terrace": 13820, - "terraces": 47508, - "terracotta": 45123, - "terrain": 20184, - "terran": 43726, - "terre": 33888, - "terre": 27537, - "terrell": 39494, - "terrence": 38746, - "terrestrial": 46299, - "terri": 4504, - "terri": 36722, - "terrible": 9741, - "terribly": 34558, - "terrier": 14455, - "terriers": 47047, - "terrific": 13837, - "terrified": 28204, - "terrifying": 18526, - "territ": 10720, - "territorial": 39163, - "territories": 32846, - "territory": 13936, - "terror": 9596, - "terror": 9327, - "terrori": 6836, - "terrorism": 10583, - "terrorist": 10575, - "terrorists": 12835, - "terry": 19378, - "terry": 8561, - "ters": 24102, - "ters": 1737, - "terti": 48386, - "tery": 4184, - "tes": 8019, - "tes": 3609, - "tesco": 15434, - "tese": 33320, - "tesla": 12254, - "tess": 21807, - "tess": 20840, - "tessa": 32063, - "test": 7738, - "test": 1628, - "testam": 23477, - "testament": 24609, - "tested": 10576, - "tester": 32707, - "testi": 18373, - "testic": 42364, - "testify": 33088, - "testifying": 46347, - "testim": 12553, - "testimonial": 28834, - "testimony": 18672, - "testing": 4967, - "testo": 42428, - "testosterone": 45168, - "tests": 8715, - "tet": 40468, - "tet": 13275, - "tetra": 40902, - "tetris": 45934, - "teu": 47152, - "teuk": 39979, - "teur": 27120, - "tex": 2056, - "tex": 11728, - "texan": 35287, - "texan": 38386, - "texans": 17580, - "texanscheer": 43717, - "texas": 15713, - "texas": 3403, - "texaste": 46469, - "text": 18169, - "text": 4160, - "textbook": 25952, - "textbooks": 44041, - "texted": 29004, - "textile": 19789, - "textiles": 24326, - "texting": 18600, - "texts": 12767, - "texture": 16505, - "textured": 32168, - "textures": 28063, - "tey": 32395, - "tez": 22664, - "tf": 18828, - "tf": 5001, - "tfc": 30186, - "tfl": 29918, - "tford": 22493, - "tful": 17108, - "tfw": 16741, - "tg": 7665, - "tg": 11981, - "tgif": 14483, - "th": 513, - "th": 640, - "tha": 18470, - "tha": 4715, - "thab": 38219, - "thad": 48339, - "thai": 28054, - "thai": 8825, - "thail": 7258, - "thailand": 7469, - "thak": 22801, - "thakur": 38427, - "thal": 7967, - "thal": 12323, - "thala": 17784, - "thalai": 25206, - "thalaivar": 44918, - "thalap": 39789, - "thalapathy": 45405, - "thalapathy": 23324, - "thall": 36007, - "tham": 11761, - "tham": 8896, - "thames": 43472, - "thames": 15321, - "than": 792, - "than": 1126, - "thand": 44465, - "thane": 21463, - "thang": 24870, - "thani": 31322, - "thank": 2790, - "thank": 1144, - "thanked": 32079, - "thankful": 38839, - "thankful": 6217, - "thankfully": 22089, - "thanking": 21989, - "thanks": 5672, - "thanks": 1085, - "thanksgiving": 45732, - "thanksgiving": 6167, - "thanku": 45710, - "thankyou": 18050, - "thankyou": 9911, - "thanniversary": 35564, - "thanos": 36709, - "thanx": 25095, - "thar": 14396, - "thar": 38843, - "thard": 43474, - "that": 6303, - "that": 682, - "thatcher": 32496, - "thats": 44636, - "thats": 9254, - "thaw": 26081, - "thaw": 47229, - "thbewithyou": 41067, - "thc": 20091, - "thcentury": 49111, - "thd": 28219, - "thday": 37801, - "the": 599, - "the": 518, - "thea": 15935, - "thea": 25429, - "thead": 25259, - "theal": 45728, - "thealth": 31398, - "thear": 43283, - "theart": 44678, - "theast": 8378, - "theastern": 17877, - "theat": 2263, - "theater": 39438, - "theater": 6128, - "theaters": 14689, - "theatre": 19857, - "theatre": 3292, - "theatres": 21680, - "theatrical": 26833, - "theband": 27695, - "thebeatles": 35645, - "thebest": 40883, - "thebest": 25856, - "thebig": 24732, - "theblack": 47718, - "thec": 48659, - "thed": 31405, - "thedaily": 33550, - "theday": 4408, - "thedream": 39417, - "thee": 44475, - "thee": 15108, - "theeconomist": 44518, - "theellenshow": 35342, - "thefilm": 31665, - "theflash": 25434, - "theforce": 40002, - "theforceawakens": 48033, - "theft": 13286, - "thefuture": 34287, - "thegame": 24428, - "thegood": 28594, - "thegreat": 28721, - "thei": 44522, - "their": 911, - "theirs": 29297, - "thel": 5403, - "thelast": 23495, - "thelastjedi": 47992, - "theless": 27712, - "theli": 15277, - "thelittle": 46872, - "thelo": 47036, - "thelove": 40668, - "thelove": 43200, - "them": 5435, - "them": 1180, - "themasters": 48378, - "theme": 38524, - "theme": 5849, - "themed": 10126, - "themes": 17849, - "themet": 48183, - "themovie": 27062, - "themselves": 6503, - "then": 5929, - "then": 1594, - "thenburg": 45209, - "thene": 17012, - "thenew": 24212, - "thenext": 47881, - "thenight": 43336, - "theno": 37172, - "thenorth": 34338, - "theo": 17043, - "theo": 18084, - "theod": 26653, - "theodore": 30743, - "theological": 41162, - "theology": 24095, - "theon": 34653, - "theone": 46231, - "theopen": 41438, - "theore": 22690, - "theoretical": 35585, - "theori": 34804, - "theories": 23937, - "theory": 7143, - "thepeople": 33597, - "thepersonal": 29981, - "thepersonalnetwork": 30016, - "thephoto": 18303, - "thephotohour": 18607, - "ther": 1160, - "ther": 743, - "therap": 4499, - "therapeu": 19332, - "therapeutic": 23240, - "therapeutics": 49101, - "therapies": 30179, - "therapist": 20608, - "therapists": 34763, - "therapper": 49340, - "therapy": 5257, - "there": 5283, - "there": 997, - "thereal": 8074, - "thereal": 41140, - "thereby": 43308, - "thered": 10208, - "therefore": 16865, - "theres": 18494, - "theresa": 14126, - "therese": 47996, - "theresistance": 22845, - "theri": 28967, - "theri": 45297, - "therine": 26807, - "therine": 9239, - "thering": 7891, - "therland": 25351, - "thermal": 13689, - "thermo": 22303, - "thermom": 31138, - "thermometer": 38172, - "thermost": 42391, - "thern": 10919, - "thern": 3137, - "thero": 13165, - "theroad": 29807, - "therock": 30036, - "theroy": 38146, - "thers": 1959, - "thes": 40556, - "thes": 6460, - "thescript": 47061, - "these": 40366, - "these": 1071, - "theses": 39388, - "thesimpsons": 45513, - "thesims": 34192, - "thesis": 10673, - "thessal": 41491, - "thessaloni": 41753, - "thest": 35343, - "thesun": 45617, - "theta": 27694, - "thetic": 7954, - "thetimes": 36039, - "thevamp": 33701, - "thevoice": 47206, - "thevoice": 30258, - "thewalkingdead": 18087, - "thewanted": 43008, - "theworld": 44988, - "theworld": 17475, - "thex": 35990, - "they": 15174, - "they": 889, - "theyre": 28266, - "thfc": 17729, - "thi": 2362, - "thi": 9111, - "thia": 17943, - "thiago": 44537, - "thian": 23214, - "thians": 28187, - "thibau": 48351, - "thic": 26107, - "thic": 11794, - "thick": 18417, - "thick": 11006, - "thicker": 43302, - "thickness": 40754, - "thief": 18508, - "thier": 25595, - "thierry": 32929, - "thieves": 17899, - "thigh": 47124, - "thigh": 22877, - "thighs": 30847, - "thik": 20512, - "thika": 44619, - "thill": 31266, - "thim": 42331, - "thin": 2178, - "thin": 7847, - "thine": 47192, - "thing": 7499, - "thing": 946, - "things": 30670, - "things": 1739, - "thingsto": 43924, - "thingy": 36888, - "think": 9820, - "think": 1331, - "thinkbig": 26015, - "thinkbigsundaywithmarsha": 26666, - "thinker": 34577, - "thinkers": 32779, - "thinkin": 34443, - "thinking": 3291, - "thinks": 6109, - "thinner": 47247, - "thir": 6030, - "third": 32102, - "third": 3981, - "thirds": 42582, - "thirst": 23563, - "thirsty": 39731, - "thirsty": 17521, - "thirteen": 34209, - "thirty": 20813, - "thiru": 43292, - "this": 4340, - "this": 589, - "thisday": 6532, - "thisdayin": 33641, - "thisdayinhistory": 46913, - "thisi": 7299, - "thisis": 14887, - "thismorning": 36245, - "thistle": 29039, - "thistory": 28904, - "thium": 21804, - "thletics": 17765, - "thm": 10407, - "thman": 30079, - "thms": 19874, - "thn": 44155, - "thn": 45587, - "thnx": 25480, - "tho": 1325, - "tho": 5025, - "thof": 18943, - "thofjuly": 21613, - "thol": 29319, - "thole": 31029, - "tholes": 42465, - "thology": 9881, - "thom": 2585, - "thom": 24094, - "thomas": 12574, - "thomas": 3888, - "thome": 21289, - "thomp": 37274, - "thompson": 42181, - "thompson": 8535, - "thomson": 24151, - "thon": 38776, - "thon": 8924, - "thong": 37058, - "thood": 15623, - "thor": 4130, - "thor": 13691, - "thora": 46866, - "thorn": 12957, - "thorn": 18466, - "thorne": 18025, - "thorns": 33650, - "thornton": 23592, - "thorough": 15294, - "thorough": 34788, - "thoroughbred": 43248, - "thoroughly": 19750, - "thorpe": 18099, - "thos": 41965, - "those": 1753, - "thot": 33736, - "thou": 1513, - "thou": 17781, - "though": 2846, - "thought": 23948, - "thought": 2449, - "thoughtful": 19592, - "thoughts": 3618, - "thour": 27125, - "thousand": 9344, - "thousands": 7089, - "thouse": 40318, - "thouse": 7819, - "thoven": 23078, - "thr": 1111, - "thr": 19138, - "thra": 17761, - "thra": 32797, - "thrash": 38262, - "thre": 1607, - "thread": 31108, - "thread": 8815, - "threads": 24957, - "threat": 7527, - "threat": 7212, - "threaten": 26097, - "threatened": 16391, - "threatening": 16400, - "threatens": 20555, - "threats": 12766, - "three": 21615, - "three": 2097, - "thren": 41776, - "thresh": 29779, - "threshold": 33791, - "threw": 12746, - "thri": 8713, - "thrift": 27779, - "thrill": 21023, - "thrilled": 7879, - "thriller": 9653, - "thrilling": 20101, - "thrills": 39829, - "thrive": 17669, - "thriving": 22677, - "thro": 2101, - "thro": 28624, - "throat": 16371, - "thrombo": 47585, - "throne": 15999, - "thrones": 8072, - "throp": 34939, - "throttle": 37139, - "through": 6091, - "through": 1417, - "throughout": 6721, - "throughs": 48278, - "throw": 3315, - "throw": 6293, - "throwback": 6001, - "throwback": 5058, - "throwbackthursday": 6326, - "thrower": 40199, - "throwing": 9734, - "thrown": 15079, - "throws": 14723, - "thru": 23856, - "thru": 6162, - "thrush": 46133, - "thrust": 40202, - "ths": 2079, - "tht": 23554, - "thu": 3837, - "thu": 14153, - "thub": 25660, - "thug": 37212, - "thug": 18137, - "thugs": 27686, - "thul": 28368, - "thulhu": 37560, - "thum": 14679, - "thumb": 19514, - "thumb": 18674, - "thumbnail": 32365, - "thumbs": 17599, - "thun": 32267, - "thunder": 6161, - "thunder": 8951, - "thunderbird": 45131, - "thunderbirds": 44286, - "thunderbolt": 43596, - "thunderstorm": 12005, - "thunderstorms": 19525, - "thunt": 46763, - "thur": 1837, - "thur": 21704, - "thurman": 41291, - "thurs": 9908, - "thursday": 11218, - "thursday": 2221, - "thursdaymotivation": 39375, - "thursdays": 21444, - "thursdaythoughts": 14866, - "thurst": 33970, - "thus": 12457, - "thusi": 9488, - "thwaite": 48469, - "thweeksary": 30871, - "thx": 5913, - "thy": 7804, - "thy": 3362, - "thyme": 29805, - "thyro": 25174, - "thyroid": 32558, - "ti": 555, - "ti": 2605, - "tia": 6709, - "tial": 2826, - "tially": 14503, - "tian": 23011, - "tian": 8125, - "tians": 35182, - "tiara": 38322, - "tib": 47868, - "tibet": 19927, - "tibet": 22234, - "tibetan": 24057, - "tible": 11453, - "tic": 890, - "tic": 1550, - "tica": 9669, - "tical": 34191, - "tical": 4342, - "tically": 13375, - "ticals": 30861, - "tice": 3122, - "tich": 48769, - "tician": 43358, - "ticism": 26491, - "tick": 24640, - "tick": 15617, - "ticket": 25740, - "ticket": 4500, - "ticketing": 44432, - "tickets": 2015, - "ticking": 35842, - "tickle": 42999, - "ticks": 40269, - "tico": 17670, - "ticon": 45996, - "tics": 2419, - "ticul": 15538, - "ticus": 44277, - "tid": 26002, - "tid": 23727, - "tidal": 21949, - "tide": 15698, - "tide": 9105, - "tides": 25524, - "tidy": 23858, - "tie": 14072, - "tie": 3422, - "tied": 9889, - "tiem": 34762, - "tien": 47538, - "tiene": 43438, - "tier": 14390, - "tier": 6598, - "tierney": 45693, - "tiers": 24604, - "ties": 25556, - "ties": 2499, - "tiest": 18300, - "tiesto": 46367, - "tif": 23216, - "tiff": 11112, - "tiff": 20699, - "tiffany": 30467, - "tiffany": 14446, - "tification": 43923, - "tified": 40854, - "tiful": 29123, - "tify": 6677, - "tig": 31999, - "tiger": 11954, - "tiger": 6531, - "tigers": 6934, - "tigh": 31365, - "tight": 25763, - "tight": 9123, - "tighten": 46653, - "tighter": 48193, - "tightly": 37568, - "tights": 29581, - "tijuana": 45273, - "tik": 24986, - "tik": 32403, - "tiki": 30107, - "til": 6124, - "til": 1763, - "tile": 26217, - "tile": 8227, - "tiles": 10607, - "tility": 38180, - "till": 17462, - "till": 4267, - "tilla": 26063, - "tillerson": 47738, - "tilly": 41199, - "tilt": 23601, - "tim": 1292, - "tim": 3863, - "timate": 4754, - "timb": 26627, - "timber": 14441, - "timber": 16246, - "timberlake": 28274, - "timbers": 39911, - "timberwolves": 41190, - "time": 3764, - "time": 788, - "timed": 32727, - "timehop": 19944, - "timel": 23549, - "timelapse": 48154, - "timeless": 15558, - "timeline": 11492, - "timely": 19250, - "timeout": 41536, - "timer": 19725, - "timers": 44574, - "times": 26445, - "times": 1661, - "timesnow": 45487, - "timesof": 32522, - "timesofindia": 44182, - "timetable": 31971, - "timeto": 29187, - "timing": 13624, - "timm": 22444, - "timmy": 33252, - "timo": 13390, - "timo": 33777, - "timothy": 42087, - "timothy": 18560, - "timp": 42166, - "tin": 1310, - "tin": 5420, - "tina": 9257, - "tinder": 24287, - "tine": 22341, - "ting": 7451, - "ting": 694, - "tinged": 44829, - "tings": 35332, - "tini": 26839, - "tink": 39278, - "tinker": 45272, - "tinker": 40910, - "tino": 20538, - "tins": 37359, - "tint": 40497, - "tinted": 42618, - "tiny": 21716, - "tiny": 5591, - "tio": 27562, - "tion": 2274, - "tion": 740, - "tional": 22460, - "tional": 2986, - "tionality": 24514, - "tionally": 12409, - "tionary": 8381, - "tione": 44318, - "tioned": 9083, - "tioning": 15528, - "tionist": 25732, - "tions": 1371, - "tious": 14255, - "tip": 15383, - "tip": 4623, - "tipoff": 44521, - "tipp": 32294, - "tipped": 31878, - "tipper": 38095, - "tipperary": 45612, - "tipping": 27827, - "tips": 3173, - "tipton": 48809, - "tiptuesday": 42112, - "tique": 37772, - "tir": 25467, - "tir": 38462, - "tire": 29128, - "tire": 9362, - "tired": 6533, - "tireless": 39835, - "tirelessly": 41548, - "tires": 15533, - "tiring": 42630, - "tiru": 36033, - "tis": 7839, - "tis": 7394, - "tise": 13745, - "tisgarh": 40538, - "tish": 45148, - "tish": 28784, - "tism": 27113, - "tiss": 28155, - "tissue": 15368, - "tissues": 32172, - "tist": 7902, - "tista": 25580, - "tists": 25944, - "tit": 1991, - "tit": 13202, - "tita": 40936, - "titan": 13496, - "titan": 15516, - "titanic": 20729, - "titanium": 24409, - "titans": 13066, - "titi": 17434, - "titi": 48504, - "title": 28033, - "title": 3644, - "titled": 9939, - "titles": 9780, - "tito": 26838, - "titus": 36102, - "tium": 21975, - "tiv": 1835, - "tiva": 41886, - "tive": 14640, - "tive": 1420, - "tively": 9883, - "tiveness": 20955, - "tives": 7570, - "tivity": 9859, - "tivo": 32162, - "tix": 5835, - "tiz": 19376, - "tj": 18890, - "tj": 18988, - "tk": 22344, - "tk": 20676, - "tko": 37347, - "tks": 38739, - "tl": 14325, - "tl": 8190, - "tland": 30697, - "tlap": 41976, - "tlc": 22047, - "tle": 39141, - "tle": 5825, - "tles": 39363, - "tless": 17427, - "tlot": 41080, - "tls": 47367, - "tly": 37483, - "tly": 1646, - "tm": 9430, - "tm": 7789, - "tman": 20796, - "tmc": 35263, - "tment": 26485, - "tml": 39445, - "tmltalk": 42260, - "tmnt": 32444, - "tmobile": 34901, - "tmr": 35906, - "tmrw": 16496, - "tms": 44496, - "tmund": 23801, - "tmw": 45827, - "tmz": 37248, - "tn": 3827, - "tn": 7248, - "tna": 21150, - "tnam": 8079, - "tner": 34922, - "tness": 35212, - "tney": 9523, - "tng": 35898, - "tnt": 20659, - "tnx": 38220, - "to": 580, - "to": 531, - "toa": 17916, - "toad": 26096, - "toast": 24654, - "toast": 10920, - "toasted": 23533, - "toaster": 39061, - "toasty": 44726, - "tob": 24260, - "tobac": 12611, - "tobacco": 13905, - "tobago": 39482, - "tobe": 17534, - "tobe": 28740, - "tober": 18162, - "tober": 2925, - "toberfest": 26249, - "tobi": 40335, - "tobi": 48374, - "tobias": 32464, - "tobin": 42466, - "toby": 29659, - "toby": 18333, - "toc": 41907, - "toc": 30643, - "tock": 25274, - "tod": 38239, - "tod": 33568, - "toda": 47141, - "todas": 36150, - "today": 11800, - "today": 721, - "todayin": 32957, - "todays": 13513, - "todayshow": 29739, - "todd": 10398, - "todd": 9951, - "toddler": 17772, - "toddlers": 36719, - "toddy": 38926, - "todo": 48857, - "todo": 23087, - "todos": 33355, - "toe": 47756, - "toe": 11344, - "toes": 16511, - "tof": 6659, - "toff": 27319, - "toffee": 34880, - "tofficial": 47953, - "tofthe": 23678, - "toftheday": 20566, - "tofu": 24692, - "tog": 45715, - "toge": 1903, - "together": 17858, - "together": 1952, - "togo": 26729, - "tography": 33968, - "toh": 26851, - "toi": 7472, - "toi": 26941, - "toid": 49124, - "toile": 43148, - "toilet": 11071, - "toilets": 24027, - "toire": 39534, - "tok": 16690, - "tok": 27010, - "token": 32634, - "token": 17134, - "tokens": 23562, - "tokyo": 35038, - "tokyo": 6667, - "tol": 4678, - "tol": 32962, - "told": 3527, - "tole": 15677, - "toledo": 19812, - "toler": 12150, - "tolerance": 20377, - "tolerant": 38536, - "tolerate": 35556, - "tolkien": 32989, - "toll": 44090, - "toll": 14155, - "tollywood": 42016, - "tology": 34799, - "tom": 999, - "tom": 2435, - "toma": 42360, - "toma": 44710, - "tomas": 35944, - "tomas": 27178, - "tomat": 12041, - "tomato": 9867, - "tomatoes": 13004, - "tomb": 37187, - "tomb": 15582, - "tombs": 48613, - "tombstone": 45729, - "tome": 24137, - "tome": 24283, - "tomi": 46290, - "tomlin": 46649, - "tomlinson": 17484, - "tommorow": 42871, - "tommy": 16573, - "tommy": 8876, - "tomo": 31223, - "tomo": 34434, - "tomor": 1277, - "tomorrow": 19728, - "tomorrow": 1293, - "tomorrowland": 34951, - "tomorrows": 32258, - "tomorrowspaper": 35005, - "tomorrowspaperstoday": 35190, - "tomp": 43544, - "tompkins": 49068, - "toms": 10545, - "tomy": 18730, - "ton": 838, - "ton": 917, - "tona": 13459, - "tone": 32366, - "tone": 8408, - "toned": 29426, - "toner": 40614, - "tones": 14744, - "tong": 21510, - "tonga": 37882, - "tongue": 44820, - "tongue": 13626, - "tongues": 39837, - "toni": 17766, - "toni": 17171, - "tonic": 17808, - "tonics": 34647, - "tonight": 1009, - "tonights": 23312, - "tonite": 13449, - "tonka": 42781, - "tonline": 45867, - "tonne": 42450, - "tonnes": 24813, - "tons": 7555, - "tony": 9150, - "tony": 4767, - "tonyawards": 46068, - "too": 1843, - "too": 1256, - "took": 2280, - "tool": 13718, - "tool": 5999, - "toolbox": 46599, - "toolkit": 29849, - "tools": 5771, - "toom": 27550, - "toon": 24664, - "toon": 19701, - "toonami": 48336, - "toons": 35345, - "toor": 42590, - "tooth": 15316, - "tooth": 12030, - "toothbrush": 36841, - "toothpaste": 37322, - "tooting": 42969, - "top": 5534, - "top": 1253, - "topaz": 46125, - "tope": 32149, - "tope": 42239, - "topeka": 46884, - "topia": 29618, - "topic": 8720, - "topical": 37464, - "topics": 11916, - "topless": 37415, - "topo": 23008, - "topoli": 30152, - "topp": 19529, - "topped": 12588, - "topper": 31780, - "toppers": 41651, - "topping": 21071, - "toppings": 47554, - "topps": 20201, - "tops": 8154, - "topshop": 40953, - "topus": 21495, - "tor": 937, - "tor": 1208, - "tora": 45147, - "torah": 37945, - "toral": 45282, - "torch": 31921, - "torch": 15820, - "tore": 38066, - "tore": 19385, - "tored": 38046, - "torg": 33214, - "tori": 17689, - "tori": 17539, - "toria": 23732, - "torial": 28029, - "torian": 48399, - "tories": 14193, - "torino": 29178, - "torio": 34235, - "torn": 8572, - "torn": 18023, - "tornad": 24676, - "tornado": 9062, - "tornadoes": 28254, - "toro": 17892, - "toron": 37407, - "toronto": 16866, - "toronto": 4514, - "torpe": 34093, - "torpedo": 46582, - "torquay": 45738, - "torque": 31940, - "torre": 39563, - "torre": 38009, - "torrent": 42317, - "torrential": 41158, - "torres": 16049, - "tors": 2546, - "tortilla": 32683, - "torto": 24170, - "tortoise": 30178, - "torture": 16013, - "tortured": 29900, - "tory": 29390, - "tory": 4214, - "tos": 6094, - "tosc": 37719, - "tose": 38154, - "tosh": 17109, - "toshi": 31744, - "toss": 19656, - "tossed": 31296, - "tot": 4618, - "tot": 23659, - "total": 13507, - "total": 4445, - "totally": 5440, - "totals": 25772, - "tote": 48145, - "tote": 19031, - "totem": 45376, - "totes": 37199, - "tothe": 12222, - "toto": 39823, - "tots": 24978, - "totten": 14360, - "tottenham": 14889, - "tou": 1879, - "tou": 29261, - "touch": 9480, - "touch": 4526, - "touchdown": 18664, - "touchdowns": 37905, - "touched": 13190, - "touches": 14832, - "touching": 14088, - "touchscreen": 39095, - "tough": 12063, - "tough": 5499, - "tougher": 33722, - "toughest": 23773, - "toughness": 45522, - "toulou": 27145, - "toulouse": 30267, - "tour": 2710, - "tour": 1760, - "tourde": 39247, - "toured": 27654, - "touri": 4224, - "touring": 11853, - "tourism": 23661, - "tourism": 6556, - "tourist": 12123, - "tourists": 15546, - "tournament": 4097, - "tournaments": 23058, - "tourney": 12603, - "tours": 8948, - "tous": 37424, - "tout": 22300, - "touts": 41274, - "tov": 28970, - "tow": 11557, - "tow": 18653, - "toward": 8508, - "towards": 4447, - "towed": 45419, - "towel": 15953, - "towels": 26578, - "tower": 26669, - "tower": 4730, - "towering": 39444, - "towers": 12701, - "towie": 44613, - "towin": 45819, - "towing": 36963, - "town": 4068, - "town": 1605, - "townfc": 33981, - "townhall": 33408, - "townhouse": 40178, - "towns": 14173, - "townsend": 26826, - "township": 14622, - "townsville": 47330, - "towork": 48233, - "tox": 7742, - "tox": 16145, - "toxic": 27436, - "toxic": 12348, - "toxicity": 41234, - "toxin": 48899, - "toxins": 36618, - "toy": 14387, - "toy": 5988, - "toya": 37602, - "toyo": 7644, - "toyota": 8908, - "toys": 39508, - "toys": 7162, - "tp": 23760, - "tp": 15188, - "tpp": 29411, - "tps": 35246, - "tq": 43066, - "tr": 635, - "tr": 6337, - "tra": 752, - "tra": 2483, - "trac": 2266, - "trace": 48611, - "trace": 14767, - "traced": 47956, - "traces": 30913, - "tracey": 25558, - "tracing": 27897, - "track": 10887, - "track": 2700, - "tracked": 27049, - "tracker": 18123, - "tracking": 10428, - "tracklist": 39777, - "tracks": 7579, - "tract": 4690, - "traction": 10644, - "tractor": 14607, - "tractors": 37854, - "tracy": 32984, - "tracy": 15508, - "trad": 48716, - "trad": 38037, - "trade": 10457, - "trade": 3629, - "traded": 18860, - "trademark": 25011, - "trader": 17700, - "traders": 19112, - "trades": 18519, - "trading": 40083, - "trading": 6520, - "tradio": 20689, - "tradition": 20838, - "tradition": 8784, - "traditional": 41113, - "traditional": 5604, - "traditionally": 35532, - "traditions": 18016, - "traf": 3227, - "trafal": 32461, - "trafalgar": 36969, - "traff": 31571, - "traffic": 12080, - "traffic": 3399, - "trafficking": 15983, - "trafford": 22912, - "trage": 12430, - "tragedy": 14082, - "tragic": 14828, - "tragically": 39599, - "trail": 11523, - "trail": 4921, - "trailblazer": 41015, - "trailblazers": 35954, - "trailer": 4700, - "trailers": 24862, - "trailing": 37427, - "trails": 10633, - "train": 9122, - "train": 3231, - "trained": 10874, - "trainee": 25795, - "trainees": 30382, - "trainer": 9767, - "trainers": 18871, - "training": 34508, - "training": 2199, - "trains": 9541, - "trait": 35160, - "traitor": 31760, - "traitors": 42633, - "traits": 25748, - "trajec": 42042, - "trak": 24065, - "tral": 14609, - "tram": 9800, - "tram": 17500, - "tramp": 46289, - "trampol": 32905, - "trampoline": 42800, - "tramrahim": 35220, - "tran": 1357, - "tran": 22031, - "trance": 30584, - "trance": 18671, - "trancefamily": 39630, - "trane": 35779, - "tranqu": 18912, - "tranquil": 35764, - "tranquility": 36688, - "trans": 1826, - "trans": 8126, - "transaction": 24881, - "transactions": 21653, - "transat": 37872, - "transatlantic": 40703, - "transc": 21073, - "transcend": 47087, - "transcript": 39008, - "transcription": 48765, - "transfer": 22659, - "transfer": 7134, - "transferred": 29700, - "transferring": 40924, - "transfers": 21621, - "transform": 8142, - "transform": 12288, - "transformation": 34204, - "transformation": 7832, - "transformational": 47135, - "transformationtuesday": 36511, - "transformative": 38106, - "transformed": 17453, - "transformer": 38235, - "transformers": 17843, - "transforming": 44470, - "transforming": 19251, - "transforms": 30312, - "transgender": 17732, - "transi": 32236, - "transit": 10174, - "transiti": 22939, - "transition": 11391, - "transitional": 41519, - "transitioning": 43586, - "transitions": 39374, - "transl": 12243, - "translate": 22655, - "translated": 20752, - "translates": 36334, - "translating": 42156, - "translation": 12153, - "translations": 41367, - "translator": 36230, - "translucent": 49052, - "transm": 18861, - "transmission": 16103, - "transmitted": 48605, - "transmitter": 40457, - "transp": 11726, - "transpa": 18524, - "transparen": 16108, - "transparency": 16828, - "transparent": 19017, - "transpl": 16038, - "transplant": 41871, - "transplant": 18771, - "transplantation": 45207, - "transpor": 19406, - "transport": 10231, - "transport": 7362, - "transportation": 10911, - "transported": 29089, - "transporter": 43568, - "transporting": 42259, - "trap": 36224, - "trap": 9677, - "trape": 42435, - "trapped": 15592, - "traps": 28517, - "tras": 30638, - "trash": 39215, - "trash": 9798, - "traum": 22263, - "trauma": 13846, - "traumati": 46613, - "traumatic": 29958, - "trav": 7586, - "trav": 46955, - "trave": 35357, - "travel": 2824, - "travel": 1949, - "travelblog": 35957, - "travelblogger": 25494, - "travelchat": 46455, - "traveled": 20384, - "traveler": 17794, - "travelers": 20644, - "travelgram": 40069, - "traveling": 9365, - "travelled": 23428, - "traveller": 22546, - "travellers": 29583, - "travelling": 11190, - "travelphotography": 22808, - "travelpics": 32293, - "travels": 11472, - "traveltips": 36260, - "traveltuesday": 16713, - "traverse": 35058, - "travi": 46971, - "travis": 27441, - "travis": 12287, - "traw": 42288, - "trax": 34421, - "tray": 38470, - "tray": 14621, - "trays": 39798, - "trc": 41803, - "tre": 975, - "tre": 6033, - "treach": 46005, - "tread": 26182, - "tread": 35658, - "treadmill": 37780, - "treas": 8591, - "treason": 28103, - "treasure": 9922, - "treasured": 48068, - "treasurer": 26985, - "treasures": 16500, - "treasury": 20956, - "treat": 3968, - "treat": 3901, - "treated": 9772, - "treating": 13842, - "treatment": 4869, - "treatments": 15839, - "treats": 8878, - "treaty": 19967, - "treble": 33194, - "trecht": 33812, - "tree": 13354, - "tree": 2677, - "treehouse": 42387, - "trees": 4682, - "trek": 13236, - "trek": 8136, - "trekking": 25293, - "trell": 35159, - "tremb": 44043, - "tremend": 14659, - "tremendous": 15988, - "tren": 2579, - "trench": 23846, - "trenches": 38723, - "trend": 19986, - "trend": 6643, - "trending": 6087, - "trends": 7015, - "trendsetter": 46666, - "trendy": 23072, - "trent": 45885, - "trent": 15548, - "trenton": 37470, - "tres": 23569, - "tress": 4733, - "tresses": 24273, - "trevor": 23437, - "trevor": 13219, - "trex": 42114, - "trey": 36670, - "trey": 16939, - "tri": 924, - "tri": 9618, - "triad": 45602, - "trial": 5991, - "trials": 10992, - "triangle": 14615, - "triathlon": 18080, - "trib": 45151, - "tribal": 16629, - "tribe": 19943, - "tribe": 11365, - "tribeca": 35184, - "tribes": 26546, - "tribu": 3028, - "tribun": 14311, - "tribunal": 32911, - "tribune": 18556, - "tribute": 5493, - "tributes": 15537, - "tric": 9511, - "tric": 4081, - "trich": 39519, - "trick": 17177, - "trick": 8172, - "tricks": 13177, - "tricky": 22319, - "trics": 31437, - "trident": 35491, - "tridge": 18722, - "tried": 4554, - "tries": 4315, - "trife": 48962, - "trigge": 30509, - "trigger": 16158, - "triggered": 30924, - "triggers": 37319, - "tright": 29915, - "tril": 40626, - "trill": 39297, - "trilli": 39350, - "trillion": 20160, - "trilo": 15183, - "trilogy": 16862, - "trim": 14182, - "trimmed": 40657, - "trin": 6628, - "trinidad": 26244, - "trinity": 30744, - "trinity": 12267, - "trio": 10263, - "trip": 23421, - "trip": 2529, - "tripad": 37189, - "tripadvisor": 38708, - "triple": 16519, - "triple": 7673, - "triplets": 48601, - "tripod": 36141, - "tripoli": 40095, - "trippin": 43073, - "tripping": 35229, - "trippy": 35137, - "trips": 12292, - "tris": 29690, - "trish": 40511, - "trish": 37179, - "trisha": 39152, - "tristan": 25497, - "trit": 37087, - "triton": 45437, - "triu": 14782, - "trium": 21065, - "triumph": 26507, - "triumph": 15307, - "triumphant": 41918, - "trivi": 21228, - "trivia": 10642, - "triviatuesday": 45499, - "trix": 41017, - "tro": 1046, - "tro": 3332, - "trock": 44368, - "trojan": 30653, - "trojans": 25310, - "trol": 10306, - "troll": 39737, - "troll": 17103, - "trolley": 25124, - "trolling": 28552, - "trolls": 20890, - "tromb": 32390, - "trombone": 44423, - "tron": 19057, - "tron": 10684, - "tronic": 34258, - "tronics": 34397, - "troom": 23691, - "troop": 12492, - "troop": 24054, - "trooper": 18327, - "troopers": 23576, - "troops": 10109, - "trop": 31585, - "trope": 41150, - "trophies": 20998, - "trophy": 42676, - "trophy": 6502, - "tropic": 21794, - "tropic": 36736, - "tropical": 41699, - "tropical": 8686, - "tropics": 36940, - "tros": 40456, - "trose": 36022, - "trot": 30453, - "trotter": 38287, - "trou": 5181, - "troubad": 49037, - "trouble": 25669, - "trouble": 7848, - "troubled": 25568, - "troubles": 27254, - "trough": 39761, - "troupe": 34803, - "trous": 19727, - "trousers": 23172, - "trout": 14853, - "trove": 45350, - "trow": 46914, - "troy": 26283, - "troy": 12819, - "trs": 24770, - "tru": 931, - "tru": 25326, - "truck": 14781, - "truck": 4629, - "trucker": 45918, - "truckers": 43404, - "trucking": 26208, - "trucks": 9569, - "trude": 39017, - "trudeau": 15752, - "true": 13096, - "true": 2328, - "truec": 37583, - "truelove": 45711, - "truffle": 23064, - "truffles": 37057, - "truly": 4545, - "trum": 11766, - "trum": 11399, - "truman": 29414, - "trump": 9124, - "trump": 1797, - "trumpet": 23681, - "trumpp": 45550, - "trumprussia": 39135, - "trumps": 29793, - "trumptrain": 43595, - "trun": 16163, - "trun": 46661, - "trunk": 18347, - "trunks": 38531, - "truro": 43507, - "truss": 46080, - "trust": 17691, - "trust": 3876, - "truste": 17356, - "trusted": 16538, - "trustee": 30803, - "trustees": 28853, - "trusting": 33221, - "trusts": 27507, - "trustworthy": 46840, - "trusty": 37955, - "truth": 21335, - "truth": 4319, - "truths": 27179, - "trx": 31620, - "try": 4487, - "try": 1209, - "tryin": 31085, - "trying": 2551, - "tryna": 15702, - "tryout": 43832, - "tryouts": 28053, - "ts": 2290, - "ts": 590, - "tsa": 25977, - "tsal": 20438, - "tsb": 45015, - "tsc": 37437, - "tsch": 38778, - "tsd": 20611, - "tse": 49144, - "tsfor": 42654, - "tsford": 32823, - "tsh": 42872, - "tshirt": 14907, - "tshirts": 29377, - "tsi": 40048, - "tsi": 37867, - "tsk": 43600, - "tsla": 35681, - "tsm": 43452, - "tsman": 20046, - "tsn": 44921, - "tsn": 26896, - "tson": 42353, - "tson": 47140, - "tsp": 34230, - "tsu": 13950, - "tsu": 20175, - "tsun": 19155, - "tsunami": 24286, - "tsville": 29080, - "tt": 971, - "tt": 1402, - "tta": 2646, - "ttc": 27668, - "tte": 23105, - "tte": 3070, - "tted": 15163, - "tten": 11351, - "tten": 17479, - "tter": 18691, - "tter": 5165, - "tters": 6318, - "ttes": 9293, - "tti": 5237, - "ttin": 36589, - "tting": 1188, - "ttino": 47389, - "ttip": 46993, - "ttle": 9253, - "ttm": 46838, - "tto": 8759, - "tto": 8105, - "tton": 10562, - "ttot": 12480, - "ttp": 30828, - "ttr": 47589, - "tts": 11570, - "ttt": 17256, - "tttt": 33119, - "ttu": 44006, - "ttv": 24281, - "tty": 11457, - "tty": 1856, - "tu": 764, - "tu": 5760, - "tua": 41344, - "tual": 4799, - "tuan": 37297, - "tub": 34907, - "tub": 15450, - "tube": 38229, - "tube": 3308, - "tuber": 30371, - "tuberculo": 42606, - "tuberculosis": 43129, - "tubes": 22870, - "tubing": 40794, - "tubs": 41705, - "tubular": 48786, - "tuc": 14456, - "tuc": 43871, - "tuck": 22398, - "tucked": 26923, - "tucker": 39703, - "tucker": 15726, - "tucket": 32677, - "tucson": 17250, - "tudor": 24547, - "tue": 17515, - "tues": 2283, - "tues": 12113, - "tuesday": 10209, - "tuesday": 2519, - "tuesdaymotivation": 25432, - "tuesdays": 23195, - "tuesdaythoughts": 17988, - "tuf": 44510, - "tuff": 38868, - "tug": 47032, - "tug": 27902, - "tuition": 21129, - "tuk": 39271, - "tuk": 14993, - "tul": 9069, - "tul": 40837, - "tula": 36332, - "tulane": 44893, - "tulip": 28389, - "tulips": 30886, - "tulsa": 18850, - "tum": 12932, - "tum": 8843, - "tumb": 8831, - "tumble": 38284, - "tumbler": 48790, - "tumbling": 46226, - "tumblr": 11841, - "tummy": 26053, - "tumor": 22616, - "tumors": 39894, - "tumour": 45129, - "tun": 1415, - "tun": 21349, - "tuna": 15037, - "tundra": 39899, - "tune": 11427, - "tune": 3300, - "tuned": 5898, - "tunein": 16809, - "tuner": 42905, - "tunes": 31688, - "tunes": 10810, - "tunesapp": 32550, - "tung": 47940, - "tung": 31092, - "tuni": 16270, - "tunic": 43495, - "tuning": 19585, - "tunisia": 23346, - "tunnel": 11096, - "tunnels": 29814, - "tuous": 28738, - "tup": 37956, - "tup": 4507, - "tupac": 31506, - "tups": 44855, - "tur": 985, - "tur": 17182, - "tura": 16127, - "tural": 45143, - "tural": 4261, - "turb": 18973, - "turban": 48515, - "turbine": 26880, - "turbines": 38863, - "turbo": 23578, - "turbo": 13668, - "turbul": 31100, - "turbulent": 47871, - "ture": 4321, - "ture": 941, - "tured": 3987, - "turer": 11993, - "turers": 16956, - "tures": 2400, - "turf": 36762, - "turf": 12510, - "turi": 11896, - "turin": 36251, - "turing": 5812, - "turismo": 30202, - "turk": 8254, - "turk": 32507, - "turkey": 35977, - "turkey": 4790, - "turkeys": 37991, - "turkish": 48199, - "turkish": 9278, - "turks": 34344, - "turmeric": 34044, - "turmoil": 37751, - "turn": 5522, - "turn": 2105, - "turnaround": 32719, - "turnbull": 27863, - "turned": 3771, - "turner": 42867, - "turner": 8777, - "turning": 4976, - "turno": 21377, - "turnout": 11654, - "turnover": 30794, - "turnpike": 38301, - "turns": 3185, - "turnt": 28887, - "turntable": 37953, - "turnup": 30591, - "turo": 29224, - "turquo": 19390, - "turquoise": 19899, - "turt": 13716, - "turtle": 35943, - "turtle": 10912, - "turtles": 17862, - "tus": 24828, - "tus": 7079, - "tusc": 17909, - "tuscal": 42638, - "tuscaloosa": 44375, - "tuscan": 42865, - "tuscany": 20885, - "tuss": 31741, - "tut": 35121, - "tutor": 10054, - "tutor": 27858, - "tutorial": 12857, - "tutorials": 30973, - "tutoring": 37532, - "tutti": 46880, - "tutu": 35845, - "tux": 28720, - "tux": 49186, - "tuxedo": 40173, - "tv": 3197, - "tv": 1583, - "tvc": 49190, - "tvd": 25889, - "tvmiaw": 38554, - "tvn": 44232, - "tvs": 27114, - "tvtime": 19947, - "tvxq": 43968, - "tw": 966, - "tw": 12842, - "twa": 46954, - "twain": 30689, - "twal": 48126, - "tware": 5707, - "twc": 41217, - "twd": 29440, - "twd": 19343, - "twdfamily": 38218, - "twe": 18365, - "tweak": 48870, - "tweaks": 42661, - "twee": 1330, - "tweed": 26904, - "tweeps": 14928, - "tweet": 11826, - "tweet": 1842, - "tweeta": 32024, - "tweetapicture": 40596, - "tweeted": 7841, - "tweeter": 32876, - "tweeters": 31713, - "tweeting": 8901, - "tweets": 3560, - "tweetyour": 45033, - "twel": 14476, - "twelf": 39443, - "twelfth": 44072, - "twell": 38722, - "twell": 30162, - "twelve": 19694, - "twent": 27027, - "twenti": 35167, - "twenty": 13016, - "twentyon": 39609, - "twentyonepilots": 40007, - "twer": 13923, - "twerk": 28506, - "twi": 5537, - "twice": 6970, - "twick": 34326, - "twickenham": 39619, - "twil": 12804, - "twili": 35754, - "twilight": 46366, - "twilight": 14512, - "twill": 43703, - "twin": 9342, - "twin": 6769, - "twine": 42775, - "twinkle": 36545, - "twinning": 30156, - "twinpeaks": 32042, - "twins": 8040, - "twist": 10589, - "twisted": 18233, - "twister": 45933, - "twists": 34149, - "twit": 1643, - "twit": 18704, - "twitart": 27709, - "twitch": 13251, - "twitch": 9153, - "twitter": 7546, - "twitter": 1989, - "twitterkurds": 32722, - "twitterstorians": 35389, - "two": 17211, - "two": 1237, - "twol": 31964, - "twood": 40404, - "twood": 13245, - "twp": 33283, - "twright": 46778, - "twt": 6825, - "twx": 26830, - "twy": 45861, - "tx": 6636, - "tx": 5200, - "txhsfb": 34757, - "txlege": 26995, - "txst": 40761, - "txt": 24595, - "txwx": 22995, - "ty": 1260, - "ty": 744, - "tya": 41273, - "tycoon": 36803, - "tye": 43097, - "tyfree": 41215, - "tyga": 41952, - "tying": 22559, - "tyl": 47537, - "tyler": 14787, - "tyler": 7058, - "tym": 45772, - "tyne": 27000, - "tyne": 29729, - "tyour": 16823, - "type": 15673, - "type": 3877, - "typed": 40753, - "typeface": 44969, - "types": 7543, - "typewriter": 42180, - "typho": 17486, - "typhoon": 21110, - "typic": 21648, - "typical": 9854, - "typically": 23175, - "typing": 20102, - "typo": 18831, - "typo": 29076, - "typography": 24332, - "tyr": 15590, - "tyran": 46921, - "tyranny": 35402, - "tyre": 38330, - "tyre": 16864, - "tyres": 21376, - "tyrone": 30226, - "tyson": 16616, - "tz": 7710, - "tz": 4983, - "tzer": 45267, - "tzky": 47127, - "tzman": 46032, - "tzu": 34354, - "té": 27208, - "té": 39694, - "u": 84, - "u": 340, - "ua": 34075, - "ua": 8441, - "uaap": 46753, - "uaap": 43774, - "uab": 35587, - "uae": 9752, - "ual": 1921, - "ually": 10767, - "uan": 33062, - "uas": 38339, - "uav": 30303, - "ub": 18430, - "ub": 13494, - "uba": 29768, - "ubc": 42479, - "ubc": 29455, - "ube": 30892, - "uber": 25896, - "uber": 10668, - "ubi": 26758, - "ubio": 32867, - "ubiquit": 48129, - "ubis": 28248, - "ubisoft": 32051, - "ubs": 43851, - "ubun": 28184, - "ubuntu": 30791, - "uc": 4903, - "uc": 12438, - "uca": 30942, - "ucc": 44844, - "ucc": 29138, - "ucci": 30746, - "uccino": 30409, - "ucd": 44746, - "ucd": 43514, - "ucf": 24414, - "uch": 19465, - "uch": 22394, - "uchi": 37473, - "uci": 46354, - "uci": 28925, - "uck": 34189, - "ucl": 12013, - "ucl": 13647, - "ucla": 37667, - "ucla": 17259, - "ucn": 49036, - "uconn": 30549, - "ud": 6560, - "ud": 5765, - "uda": 22800, - "udaipur": 49385, - "uddin": 43035, - "ude": 37016, - "ude": 35194, - "ue": 16696, - "ue": 1190, - "uefa": 19189, - "uel": 24231, - "uer": 45951, - "ues": 2526, - "uf": 17777, - "uf": 19230, - "ufc": 20396, - "ufc": 6490, - "uff": 45701, - "ufo": 19443, - "ufos": 48234, - "ug": 3754, - "ug": 16061, - "uga": 16056, - "ugand": 25965, - "uganda": 11125, - "ugandan": 44206, - "ugby": 30658, - "ugh": 39736, - "ugh": 12755, - "ugliest": 43543, - "ugly": 36070, - "ugly": 8159, - "ugu": 18144, - "uh": 17661, - "uh": 9219, - "uhc": 44974, - "uhh": 35938, - "uhhh": 45270, - "uhm": 35614, - "uhur": 29434, - "uhuru": 35690, - "ui": 17326, - "ui": 11458, - "uil": 29395, - "uit": 30696, - "uit": 47584, - "uj": 33266, - "uji": 39672, - "uk": 2294, - "uk": 1432, - "uka": 23294, - "uke": 48836, - "uke": 28577, - "uked": 48987, - "uki": 37435, - "uki": 9009, - "ukin": 34996, - "ukip": 20360, - "uklabour": 36902, - "ukmfg": 38764, - "uko": 33562, - "ukone": 24682, - "ukrain": 15468, - "ukraine": 7768, - "ukrainian": 16927, - "ukrunchat": 34481, - "uku": 29541, - "uku": 36082, - "ukulele": 39094, - "ul": 914, - "ul": 6625, - "ula": 34104, - "ula": 9506, - "ular": 4927, - "ulary": 21701, - "ulate": 20467, - "ulation": 32896, - "ule": 35616, - "ules": 26274, - "ulf": 49331, - "uli": 41841, - "uli": 22174, - "ull": 33254, - "ulla": 30577, - "ullah": 45310, - "ullivan": 45252, - "ulls": 37418, - "ulo": 46084, - "ulo": 36738, - "ulous": 42490, - "ulous": 4281, - "ulously": 20167, - "ulster": 29709, - "ulster": 24639, - "ult": 4380, - "ulti": 11925, - "ulties": 21884, - "ultimat": 16522, - "ultimate": 34684, - "ultimate": 5377, - "ultimatefan": 48372, - "ultimatefanlive": 48644, - "ultimately": 23023, - "ultr": 25636, - "ultra": 11398, - "ultra": 8118, - "ultram": 44519, - "ultrasound": 29717, - "ulture": 22272, - "ulty": 8036, - "ulu": 41815, - "ulu": 15659, - "ulum": 17235, - "uly": 33220, - "ulysses": 46114, - "um": 1622, - "um": 1008, - "uma": 29982, - "uma": 9256, - "uman": 27112, - "umar": 25656, - "umass": 39390, - "umatic": 45006, - "umb": 7493, - "umber": 19195, - "umbrel": 34773, - "umbrella": 17143, - "umbrellas": 42782, - "umbria": 39287, - "umc": 39491, - "umd": 42067, - "ume": 38480, - "umen": 42832, - "uments": 25924, - "umer": 23539, - "umes": 21403, - "umi": 48772, - "umi": 15458, - "umich": 41294, - "umin": 31542, - "umm": 26129, - "umm": 21215, - "ummer": 47628, - "ummm": 33665, - "umni": 31739, - "ump": 22224, - "umpire": 36214, - "ums": 8643, - "umu": 39788, - "un": 569, - "un": 2271, - "una": 6385, - "unable": 17793, - "unacceptable": 25234, - "unanim": 20800, - "unanimous": 33520, - "unanimously": 31798, - "unanswered": 43611, - "unarmed": 41541, - "unas": 41366, - "unavailable": 48430, - "unaware": 33347, - "unbeat": 37056, - "unbeatable": 40267, - "unbeaten": 19228, - "unbeliev": 11383, - "unbelievable": 13306, - "unbelievably": 33781, - "unborn": 37257, - "unboxing": 32866, - "unbreakable": 32956, - "unbroken": 49271, - "unc": 24921, - "unc": 15322, - "uncanny": 32556, - "uncertain": 30384, - "uncertainty": 23956, - "unch": 1527, - "unchanged": 34272, - "uncharted": 34560, - "unci": 25521, - "unciation": 34117, - "uncle": 31537, - "uncle": 8002, - "unclear": 32955, - "uncles": 45335, - "uncomfortable": 22470, - "uncommon": 34888, - "uncondition": 46561, - "unconditional": 31112, - "unconscious": 34791, - "unconstitutional": 43585, - "unconventional": 39440, - "uncover": 33031, - "uncovered": 28234, - "uncture": 38736, - "uncut": 41056, - "und": 9762, - "und": 9732, - "unda": 39932, - "undant": 25377, - "unday": 29338, - "unde": 45226, - "undead": 40105, - "undecided": 49368, - "undefeated": 15326, - "undeni": 38424, - "under": 1473, - "under": 1798, - "underage": 45669, - "underattack": 35075, - "undercover": 21595, - "underdog": 44266, - "undere": 21675, - "underestim": 23348, - "underestimate": 31794, - "undergo": 31545, - "undergoing": 26419, - "undergrad": 38331, - "undergraduate": 24320, - "underground": 9396, - "undering": 30826, - "underlying": 31812, - "undermine": 42839, - "underneath": 20857, - "underrated": 19494, - "unders": 20376, - "understand": 47582, - "understand": 4600, - "understanding": 7522, - "understands": 21607, - "understatement": 38296, - "understood": 17303, - "undertaker": 40144, - "undertaking": 49067, - "undertale": 48283, - "underthe": 41161, - "underwater": 14760, - "underway": 6273, - "underwear": 21154, - "underwood": 21474, - "underworld": 34760, - "undi": 23845, - "undisclosed": 39334, - "undo": 35454, - "undocumented": 35414, - "undoub": 38836, - "undoubtedly": 42204, - "undp": 26691, - "une": 4522, - "une": 10966, - "unearth": 32716, - "unearthed": 36632, - "unemp": 15139, - "unemployed": 32721, - "unemployment": 19350, - "unes": 6394, - "unesco": 16216, - "uneven": 43204, - "unex": 9484, - "unexpe": 10802, - "unexpec": 31829, - "unexpected": 12293, - "unexpectedly": 35622, - "unf": 29285, - "unfair": 22193, - "unfinished": 26526, - "unfit": 45367, - "unfold": 38681, - "unfollow": 38797, - "unfor": 14010, - "unforgettable": 16173, - "unfortun": 10194, - "unfortunate": 22361, - "unfortunately": 12863, - "unfpa": 45048, - "ung": 10439, - "ung": 4334, - "unga": 19151, - "ungsoo": 25582, - "unh": 25365, - "unhappy": 26528, - "unhcr": 43451, - "unhealthy": 30994, - "uni": 1107, - "uni": 5926, - "unic": 7648, - "unicef": 38286, - "unicef": 19259, - "unicorn": 15660, - "unicorns": 35183, - "unidenti": 33707, - "unidentified": 35563, - "unification": 45036, - "unified": 20876, - "uniform": 11075, - "uniforms": 17838, - "unil": 32388, - "unilever": 48654, - "uniof": 21218, - "union": 14210, - "union": 3503, - "unions": 18353, - "unis": 30482, - "unis": 39266, - "unisex": 27609, - "unison": 46694, - "unit": 28522, - "unit": 5695, - "unite": 15078, - "unite": 11305, - "uniteblue": 20935, - "united": 10898, - "united": 2690, - "unitedstates": 39636, - "unitedway": 47486, - "unites": 32061, - "uniting": 31318, - "units": 10394, - "unity": 38300, - "unity": 8581, - "univ": 36680, - "univ": 14896, - "univer": 15574, - "univers": 5855, - "universal": 19148, - "universal": 8754, - "universe": 6104, - "universi": 41692, - "universit": 26019, - "universities": 16408, - "university": 40728, - "university": 2182, - "universityof": 46158, - "unk": 5542, - "unknown": 8685, - "unl": 43807, - "unlawful": 42305, - "unle": 19677, - "unlea": 23893, - "unleash": 26706, - "unleashed": 27955, - "unless": 10602, - "unlike": 16694, - "unlikely": 18904, - "unlimited": 11015, - "unlock": 18649, - "unlocked": 16770, - "unlocking": 40810, - "unlucky": 35029, - "unlv": 42283, - "unmanned": 36751, - "unmatched": 46054, - "unn": 38364, - "unnamed": 44985, - "unnecessary": 24100, - "unner": 31481, - "unning": 43282, - "unnoticed": 42807, - "uno": 32446, - "uno": 17078, - "unofficial": 22506, - "unpacking": 43589, - "unpaid": 32811, - "unparalleled": 44396, - "unplugged": 31724, - "unpopular": 40232, - "unprece": 23054, - "unprecedented": 23344, - "unpredictable": 38684, - "unra": 45150, - "unreal": 46980, - "unreal": 15636, - "unrelated": 38644, - "unreleased": 29654, - "unrest": 36452, - "uns": 25908, - "unsafe": 32071, - "unsc": 36395, - "unseen": 19069, - "unsigned": 39346, - "unsolved": 40836, - "unsplash": 46196, - "unstable": 34730, - "unstopp": 22105, - "unstoppable": 23484, - "unsuccessful": 47478, - "unsung": 33015, - "unsure": 26396, - "unt": 19654, - "unt": 6537, - "until": 1942, - "untitled": 21309, - "unto": 19801, - "untold": 32206, - "untouch": 44509, - "untouched": 42764, - "unused": 29636, - "unusual": 12613, - "unusually": 36465, - "unve": 6685, - "unveil": 20483, - "unveiled": 13572, - "unveiling": 20327, - "unveils": 15057, - "unwanted": 25285, - "unwind": 34064, - "unya": 37142, - "uo": 30874, - "uo": 36162, - "uof": 11155, - "uoft": 37329, - "uon": 48144, - "uous": 40185, - "up": 1083, - "up": 705, - "upa": 31727, - "upbeat": 39201, - "upcoming": 4196, - "upcycled": 46552, - "upd": 3226, - "update": 2491, - "updated": 5974, - "updates": 4904, - "updating": 22792, - "uper": 38082, - "uper": 33056, - "upfront": 42064, - "upgrade": 10365, - "upgraded": 18577, - "upgrades": 21253, - "upgrading": 34368, - "uph": 14128, - "uphill": 42767, - "uphol": 26195, - "uphold": 43897, - "upholstery": 44556, - "upl": 41939, - "uplift": 45389, - "uplifting": 29546, - "upload": 13968, - "uploaded": 16793, - "uploading": 30145, - "upon": 23524, - "upon": 5067, - "upp": 19549, - "upp": 45946, - "upper": 22465, - "upper": 7067, - "upri": 15982, - "upright": 29818, - "uprising": 26006, - "upro": 28922, - "ups": 6926, - "upscale": 47501, - "upset": 11214, - "upsets": 42637, - "upside": 15362, - "upstairs": 21387, - "upstate": 33335, - "upstream": 45517, - "upthe": 31510, - "upto": 26575, - "upton": 31910, - "uptown": 23807, - "upward": 32526, - "upwards": 34915, - "uq": 39591, - "ur": 565, - "ur": 1775, - "ura": 29337, - "ura": 3544, - "urable": 40194, - "ural": 23547, - "ural": 33948, - "uran": 16197, - "uranium": 29850, - "urban": 7931, - "urban": 5800, - "urbanart": 40834, - "urd": 47880, - "urday": 19742, - "urdu": 29976, - "ure": 5514, - "ure": 726, - "ured": 4210, - "urer": 20864, - "ures": 2288, - "urg": 35995, - "urge": 14852, - "urged": 23790, - "urgency": 47612, - "urgent": 13693, - "urgently": 34534, - "urges": 16692, - "urging": 27748, - "uri": 11052, - "uri": 8699, - "urie": 46429, - "urin": 45245, - "urine": 28864, - "uring": 1351, - "url": 23464, - "urn": 38075, - "uro": 17343, - "uro": 5925, - "urology": 48585, - "urope": 14918, - "urs": 4794, - "urself": 31942, - "urst": 19181, - "urstruly": 34751, - "urstrulymahesh": 35314, - "ursula": 38390, - "urt": 24309, - "uru": 16322, - "uru": 11768, - "uruguay": 27931, - "urus": 14246, - "urve": 24583, - "ury": 8642, - "ury": 2106, - "us": 904, - "us": 718, - "usa": 9491, - "usa": 2547, - "usability": 46736, - "usable": 22890, - "usaf": 25017, - "usage": 19137, - "usaid": 34507, - "usair": 36742, - "usairforce": 42179, - "usarmy": 19132, - "usatoday": 40263, - "usav": 36056, - "usb": 10281, - "usc": 13346, - "usc": 14995, - "uscg": 43932, - "usd": 7485, - "usda": 25829, - "use": 4419, - "use": 1483, - "used": 32289, - "used": 2026, - "useful": 9784, - "useless": 20154, - "usemb": 39700, - "user": 21248, - "user": 7031, - "username": 28162, - "users": 7433, - "uses": 5282, - "useum": 45189, - "usf": 32385, - "usf": 28942, - "usgs": 35103, - "ush": 12001, - "ush": 18335, - "usher": 27411, - "ushi": 47734, - "usi": 25540, - "usic": 34909, - "usic": 16753, - "using": 1996, - "usky": 45778, - "usl": 42113, - "usm": 40041, - "usmc": 21678, - "usmnt": 30662, - "usn": 40579, - "usnavy": 24500, - "usnews": 43752, - "uso": 21539, - "usopen": 21782, - "usp": 26651, - "usps": 39980, - "usrc": 33274, - "uss": 11545, - "uss": 9260, - "ussia": 29553, - "ussoccer": 42828, - "ussr": 32697, - "ust": 35501, - "ust": 24725, - "usu": 4254, - "usu": 40434, - "usual": 6129, - "usually": 8296, - "usur": 45582, - "uswnt": 35255, - "ut": 1419, - "ut": 3641, - "uta": 42706, - "uta": 25925, - "utah": 27474, - "utah": 9312, - "utc": 18196, - "utd": 10493, - "ute": 16856, - "ute": 3130, - "uten": 32089, - "uter": 39197, - "utes": 2850, - "uth": 48819, - "uth": 44750, - "uti": 24568, - "util": 28824, - "utili": 17015, - "utilities": 27210, - "utility": 14941, - "utilize": 36861, - "utilized": 47604, - "utilizing": 40212, - "utm": 47853, - "utmost": 42352, - "uto": 18866, - "uto": 13683, - "utopia": 34433, - "utpol": 42605, - "utr": 48726, - "utrecht": 37216, - "uts": 11740, - "utsa": 37528, - "utt": 17096, - "uttar": 40168, - "uttarak": 33755, - "uttarakhand": 35655, - "utter": 18769, - "utter": 24558, - "utterly": 21353, - "utto": 42183, - "utv": 36351, - "utz": 45320, - "uu": 5702, - "uu": 14553, - "uuu": 44355, - "uuu": 27656, - "uuuu": 16720, - "uuuu": 40797, - "uv": 23777, - "uv": 15977, - "uva": 23908, - "uw": 13933, - "uw": 19166, - "uwe": 48785, - "uwu": 35544, - "ux": 9251, - "ux": 6213, - "uy": 31929, - "uy": 48113, - "uz": 19398, - "uz": 36991, - "uzbe": 43007, - "uzbekistan": 45024, - "uzzi": 48210, - "v": 85, - "v": 341, - "va": 4648, - "va": 1892, - "vaa": 37488, - "vable": 23088, - "vac": 3125, - "vac": 34085, - "vaca": 48215, - "vacancies": 26333, - "vacancy": 21247, - "vacant": 25262, - "vacation": 28336, - "vacation": 6561, - "vacations": 29002, - "vacay": 44716, - "vacc": 13342, - "vaccin": 19164, - "vaccinated": 48134, - "vaccination": 32518, - "vaccine": 47780, - "vaccine": 17493, - "vaccines": 25860, - "vach": 46211, - "vacu": 16058, - "vacuum": 18420, - "vad": 11880, - "vada": 46759, - "vader": 21908, - "vae": 39384, - "vag": 13015, - "vague": 42154, - "vah": 26921, - "vai": 26893, - "vai": 36802, - "vail": 21189, - "vain": 25538, - "vais": 28719, - "vaj": 34206, - "vak": 16288, - "vak": 41597, - "val": 1214, - "val": 1560, - "vala": 48525, - "valdez": 40617, - "vale": 35554, - "vale": 10820, - "valedic": 43525, - "valen": 12630, - "valence": 30225, - "valenci": 34183, - "valencia": 16559, - "valent": 3655, - "valent": 15300, - "valentin": 48631, - "valentina": 43741, - "valentine": 11208, - "valentine": 5876, - "valentines": 10259, - "valentinesday": 12369, - "valentino": 29624, - "valeri": 31951, - "valerie": 25592, - "valet": 45749, - "vali": 8230, - "valiant": 33804, - "valid": 15126, - "validation": 32536, - "valkyrie": 42326, - "vall": 23523, - "vall": 35295, - "vallarta": 47874, - "valle": 24857, - "valle": 29105, - "valley": 18354, - "valley": 3136, - "valleys": 28649, - "valor": 30930, - "vals": 7431, - "valu": 6291, - "valuable": 10056, - "valuation": 25894, - "value": 41358, - "value": 4602, - "valued": 17801, - "values": 8857, - "valve": 17001, - "valves": 33517, - "vam": 9983, - "vamo": 46718, - "vamos": 30346, - "vamp": 10680, - "vampi": 47017, - "vampire": 47576, - "vampire": 13220, - "vampires": 30868, - "vamps": 44810, - "van": 2446, - "van": 2451, - "vana": 20543, - "vanc": 6320, - "vance": 31447, - "vancou": 6750, - "vancouver": 31904, - "vancouver": 7208, - "vand": 11691, - "vandalism": 45664, - "vander": 16264, - "vanderbilt": 33524, - "vandy": 39268, - "vane": 43828, - "vaness": 13328, - "vanessa": 16836, - "vangogh": 47849, - "vanguard": 27916, - "vani": 15396, - "vani": 26459, - "vania": 10998, - "vanilla": 11974, - "vanished": 43783, - "vanishing": 48296, - "vanity": 48353, - "vanity": 22938, - "vans": 11711, - "vant": 26298, - "vantage": 31749, - "vanu": 42892, - "vanuatu": 48766, - "vap": 10462, - "vape": 25423, - "vape": 20219, - "vaping": 29403, - "vapor": 37167, - "vapor": 30729, - "vapori": 46183, - "var": 3187, - "var": 12998, - "vara": 47492, - "varan": 36585, - "varanasi": 39364, - "vard": 21866, - "vard": 8773, - "vardy": 47371, - "vare": 38159, - "vares": 42895, - "vargas": 32752, - "vari": 3354, - "variable": 26416, - "varian": 34334, - "variant": 20293, - "variants": 38312, - "variation": 26420, - "variations": 29025, - "varied": 32334, - "varies": 32543, - "varieties": 23805, - "variety": 8396, - "various": 7395, - "varsity": 43716, - "varsity": 8574, - "varun": 48120, - "varun": 22069, - "vary": 18855, - "varying": 36456, - "vas": 5669, - "vas": 5995, - "vasc": 40995, - "vascular": 19218, - "vase": 20431, - "vasi": 49092, - "vast": 24413, - "vast": 16414, - "vastly": 48257, - "vat": 11588, - "vat": 18363, - "vatican": 21030, - "vation": 37884, - "vau": 6391, - "vaugh": 25158, - "vaughan": 21392, - "vaughn": 29013, - "vaul": 27469, - "vault": 15240, - "vaus": 40217, - "vaux": 27403, - "vauxhall": 29173, - "vaw": 47952, - "vay": 48000, - "vaz": 38142, - "vb": 29365, - "vb": 8778, - "vball": 38329, - "vc": 28670, - "vc": 7952, - "vcs": 43528, - "vcu": 40102, - "vd": 9515, - "vday": 42055, - "ve": 673, - "ve": 563, - "vea": 43798, - "veal": 36616, - "veau": 24419, - "vec": 19912, - "vector": 40453, - "vector": 21533, - "ved": 19515, - "ved": 1102, - "veda": 44401, - "vedere": 45660, - "vedi": 47971, - "vee": 35708, - "vee": 17073, - "veen": 22432, - "veer": 21243, - "veer": 22058, - "veg": 9048, - "veg": 16460, - "vega": 22930, - "vegan": 15705, - "vegan": 5615, - "vegans": 48514, - "vegas": 20288, - "vegas": 4413, - "vege": 6219, - "vegetable": 15725, - "vegetables": 14119, - "vegetarian": 14600, - "vegetation": 33947, - "veggie": 19401, - "veggies": 16767, - "vehic": 3973, - "vehicle": 5299, - "vehicles": 8361, - "veil": 23516, - "vein": 29169, - "veins": 28867, - "veit": 30620, - "vel": 942, - "vel": 1287, - "vela": 34898, - "veld": 34011, - "veled": 15370, - "veli": 49166, - "veling": 37970, - "vell": 21173, - "vell": 32997, - "velo": 14357, - "velo": 33850, - "velocity": 23811, - "vels": 5109, - "velve": 37849, - "velvet": 11063, - "vely": 1708, - "vember": 3477, - "vement": 3129, - "vements": 11104, - "ven": 1240, - "ven": 1638, - "vena": 47442, - "vend": 10851, - "vending": 29202, - "vendor": 21261, - "vendors": 20353, - "vene": 5365, - "veness": 10516, - "venetian": 34336, - "venezia": 34139, - "venezu": 10939, - "venezuela": 12839, - "venezuelan": 34699, - "veng": 31526, - "venge": 27757, - "vengeance": 32057, - "veni": 31142, - "venice": 11010, - "vening": 47532, - "venison": 40037, - "venom": 42491, - "venom": 21588, - "vens": 20884, - "vent": 4373, - "vent": 5687, - "ventil": 39522, - "ventilation": 35066, - "venting": 15731, - "vention": 4122, - "vents": 12833, - "ventu": 48217, - "ventura": 20921, - "venture": 37046, - "venture": 12543, - "ventures": 20829, - "venue": 5097, - "venues": 18120, - "venus": 14691, - "ver": 624, - "ver": 667, - "vera": 13350, - "verage": 3725, - "verb": 34952, - "verbal": 26522, - "verbally": 39985, - "verbs": 45687, - "verde": 16935, - "verdi": 42306, - "verdict": 18030, - "vere": 11135, - "vere": 34707, - "vered": 2868, - "verge": 23913, - "veri": 11638, - "verification": 33521, - "verified": 22555, - "verify": 34722, - "vering": 4630, - "veriz": 19707, - "verizon": 21532, - "verma": 41261, - "vermont": 19241, - "vern": 2214, - "vern": 12586, - "verne": 45553, - "vernon": 18348, - "vero": 45217, - "vero": 38208, - "verona": 31819, - "veronic": 39551, - "veronica": 24039, - "vers": 1219, - "vers": 2094, - "versa": 35765, - "versace": 25422, - "versail": 29857, - "versailles": 32129, - "versary": 2940, - "versatile": 18110, - "versatility": 41340, - "verse": 39466, - "verse": 3131, - "verses": 30769, - "versi": 8934, - "version": 3273, - "versions": 16190, - "versity": 1906, - "verst": 42484, - "verstappen": 45064, - "versus": 14548, - "versy": 18522, - "vert": 11742, - "verte": 35158, - "verted": 48173, - "verti": 30459, - "vertical": 14293, - "vertigo": 42477, - "verton": 40632, - "verts": 37265, - "very": 11698, - "very": 1070, - "veryday": 37944, - "verything": 45174, - "ves": 9616, - "ves": 1003, - "vesmatter": 47636, - "vespa": 46029, - "vessel": 16387, - "vessels": 22822, - "vest": 31657, - "vest": 12473, - "vesti": 40349, - "vests": 41906, - "vet": 12294, - "vet": 5951, - "veter": 4330, - "veteran": 20797, - "veteran": 8814, - "veterans": 7092, - "veteransday": 26409, - "veterin": 43959, - "veterinary": 25458, - "veto": 36570, - "vets": 13113, - "vette": 17045, - "vettel": 28700, - "vevo": 35141, - "vex": 36187, - "vex": 43978, - "vey": 34792, - "vey": 3884, - "vez": 35987, - "vez": 17226, - "vf": 25966, - "vfl": 33726, - "vfx": 30149, - "vg": 40591, - "vg": 22346, - "vh": 46953, - "vh": 23847, - "vhs": 21932, - "vi": 603, - "vi": 4259, - "via": 1048, - "viable": 25752, - "viadu": 37012, - "viaduct": 39113, - "vial": 39951, - "vian": 40487, - "vian": 16124, - "vibe": 37974, - "vibe": 12813, - "vibes": 7764, - "vibr": 9527, - "vibrant": 14270, - "vibration": 37456, - "vibrations": 43660, - "vic": 1555, - "vic": 4412, - "vica": 46168, - "vicar": 43899, - "vice": 43572, - "vice": 6931, - "vicente": 39411, - "vices": 8332, - "vich": 24143, - "vici": 46670, - "vicious": 25177, - "vick": 15116, - "vick": 29704, - "vickers": 48452, - "vicki": 34927, - "vicky": 37176, - "vicky": 25788, - "victi": 6861, - "victim": 9133, - "victims": 7131, - "victor": 2423, - "victor": 10690, - "victori": 17555, - "victoria": 39286, - "victoria": 6127, - "victorian": 12350, - "victorias": 47791, - "victories": 24577, - "victorious": 24033, - "victory": 36668, - "victory": 4127, - "vid": 17233, - "vid": 9284, - "vida": 19015, - "vidal": 36678, - "vide": 1334, - "vide": 45244, - "video": 9478, - "video": 1455, - "videogame": 35097, - "videogames": 21149, - "videos": 6081, - "vids": 23035, - "vidy": 29639, - "vidya": 45264, - "vie": 922, - "vie": 8538, - "vien": 36493, - "vienna": 12670, - "vier": 15352, - "vier": 11987, - "viera": 21114, - "viernes": 33826, - "vies": 22458, - "viest": 31979, - "viet": 17558, - "viet": 13128, - "vietnam": 19558, - "vietnam": 8623, - "vietnamese": 22382, - "view": 12004, - "view": 1093, - "viewed": 7226, - "viewer": 15061, - "viewers": 14275, - "viewing": 7124, - "viewpoint": 41604, - "views": 2758, - "vig": 8549, - "vig": 45083, - "vigil": 21538, - "vigil": 19896, - "vigilant": 43026, - "vigne": 40447, - "vigne": 34581, - "vigo": 44097, - "vigor": 26781, - "vii": 17759, - "viii": 20414, - "vijay": 12014, - "vijay": 10823, - "vijaysethu": 47966, - "vik": 10764, - "vik": 17181, - "vika": 39562, - "vikas": 37116, - "viking": 26663, - "viking": 15897, - "vikings": 11713, - "vikram": 41136, - "vikram": 24314, - "viktor": 36101, - "vil": 1338, - "vil": 3000, - "vila": 37505, - "vile": 27247, - "vill": 10481, - "vill": 45698, - "villa": 3203, - "villa": 7754, - "village": 34584, - "village": 4331, - "villagers": 34283, - "villages": 17621, - "villain": 15425, - "villains": 25271, - "villanova": 44025, - "villar": 35164, - "villas": 28907, - "ville": 11110, - "ville": 1930, - "villen": 46177, - "villi": 36907, - "vimeo": 48720, - "vin": 1379, - "vin": 2558, - "vina": 35682, - "vinai": 37396, - "vinaigrette": 39876, - "vinay": 43952, - "vince": 32429, - "vince": 6236, - "vincen": 33402, - "vincent": 29069, - "vincent": 10357, - "vinci": 30199, - "vind": 20275, - "vindic": 39582, - "vine": 8471, - "vine": 7721, - "vinegar": 23834, - "vines": 21268, - "vineyard": 16527, - "vineyards": 23082, - "ving": 5375, - "ving": 903, - "vingne": 42579, - "vings": 22510, - "vini": 48119, - "vinnie": 40885, - "vinny": 36794, - "vino": 14509, - "vinod": 43348, - "vins": 34820, - "vinson": 45945, - "vintag": 10936, - "vintage": 13654, - "vintage": 3266, - "viny": 40990, - "vinyl": 22835, - "vinyl": 5754, - "vio": 11913, - "vio": 20324, - "viol": 3164, - "viola": 27438, - "violate": 44875, - "violated": 38192, - "violating": 37554, - "violation": 22919, - "violations": 21969, - "violence": 5450, - "violent": 11565, - "violently": 47758, - "violet": 16118, - "violets": 42861, - "violin": 17058, - "violinist": 36299, - "vion": 35496, - "vious": 6418, - "viously": 7149, - "vip": 45714, - "vip": 7111, - "viper": 27401, - "vips": 41149, - "vir": 1790, - "vir": 25319, - "vira": 35910, - "viral": 11653, - "virat": 32473, - "virgil": 39076, - "virgin": 5651, - "virgin": 12103, - "virgini": 43426, - "virginia": 6728, - "virgo": 39978, - "viro": 32301, - "viron": 38309, - "virtu": 7977, - "virtual": 18059, - "virtual": 7790, - "virtually": 22475, - "virtualreality": 32608, - "virtue": 26860, - "virtues": 42167, - "virtuoso": 47027, - "virus": 11808, - "viruses": 34830, - "vis": 1301, - "vis": 5337, - "visa": 12802, - "visas": 41228, - "vise": 24977, - "vised": 14810, - "vish": 12024, - "vish": 29124, - "vishal": 33648, - "vishnu": 37816, - "visi": 1409, - "visibility": 15921, - "visible": 36658, - "visible": 8626, - "vising": 37439, - "vision": 11147, - "vision": 2515, - "visional": 24627, - "visionary": 22959, - "visions": 13804, - "visit": 3388, - "visit": 1600, - "visitation": 44370, - "visited": 5580, - "visiting": 4680, - "visitor": 13881, - "visitors": 9160, - "visits": 8489, - "visitscotland": 28760, - "visitspain": 48860, - "vism": 15514, - "viso": 46732, - "visor": 24217, - "vist": 21436, - "vista": 13865, - "visu": 7739, - "visual": 17004, - "visual": 7195, - "visualization": 28500, - "visualize": 45057, - "visually": 25743, - "visuals": 21315, - "viswas": 36513, - "viswasam": 47664, - "vit": 4056, - "vit": 35580, - "vita": 15700, - "vital": 32525, - "vital": 10585, - "vitality": 36385, - "vitam": 9856, - "vitamin": 13675, - "vitamins": 22582, - "vito": 36725, - "vity": 4893, - "vitz": 26188, - "vius": 41571, - "viv": 21827, - "viv": 35363, - "viva": 17399, - "vival": 35920, - "vive": 18980, - "vive": 24004, - "vivek": 36243, - "vivi": 11625, - "vivian": 30129, - "vivid": 22984, - "vivo": 28091, - "vivo": 25888, - "vix": 28976, - "vix": 34811, - "vixen": 38757, - "vixx": 32106, - "viz": 28251, - "viz": 31786, - "vj": 45439, - "vj": 30827, - "vk": 41893, - "vl": 37580, - "vl": 36442, - "vla": 23686, - "vlad": 41089, - "vladi": 19320, - "vladimir": 21702, - "vlive": 46797, - "vlog": 18894, - "vm": 16204, - "vm": 20269, - "vma": 35666, - "vmas": 30236, - "vmware": 29615, - "vn": 47098, - "vn": 25076, - "vo": 947, - "vo": 3951, - "voc": 4105, - "voc": 20855, - "vocab": 21346, - "vocabulary": 23804, - "vocal": 34037, - "vocal": 13147, - "vocali": 19134, - "vocalist": 22102, - "vocals": 17666, - "vocation": 20521, - "vocational": 33751, - "vod": 11820, - "vod": 35854, - "vodaf": 28436, - "vodafone": 38695, - "vodka": 13646, - "vogel": 44960, - "vogue": 24418, - "vogue": 13178, - "voic": 29185, - "voice": 13179, - "voice": 3386, - "voiced": 34352, - "voiceof": 44966, - "voiceover": 41979, - "voices": 9144, - "void": 21561, - "voip": 42762, - "voir": 16036, - "vol": 1343, - "vol": 7945, - "volatile": 41022, - "volatility": 32355, - "volcan": 9916, - "volcanic": 24072, - "volcano": 14581, - "volcanoes": 38055, - "voli": 40138, - "volk": 13432, - "volkswag": 14407, - "volkswagen": 15342, - "volley": 7130, - "volley": 34656, - "volleyball": 7458, - "volo": 44791, - "vols": 20404, - "volt": 26430, - "volta": 29879, - "volta": 33480, - "voltage": 23118, - "voltron": 39314, - "volu": 3563, - "volume": 8284, - "volumes": 22651, - "volun": 3356, - "voluntar": 48823, - "voluntary": 23815, - "volunte": 3556, - "volunteer": 32331, - "volunteer": 7114, - "volunteered": 34000, - "volunteering": 14902, - "volunteers": 5939, - "volution": 24043, - "volved": 42888, - "volvo": 39991, - "volvo": 16906, - "vom": 24198, - "vomit": 46485, - "von": 11269, - "von": 8497, - "voo": 19497, - "voodoo": 26869, - "voor": 34291, - "voor": 34464, - "vor": 8338, - "vor": 5308, - "vore": 18215, - "vortex": 30071, - "vos": 16863, - "vot": 48558, - "vote": 6830, - "vote": 2187, - "voted": 6454, - "votel": 41379, - "voter": 44474, - "voter": 14065, - "voters": 8925, - "votes": 6693, - "voting": 5756, - "vou": 11045, - "voucher": 18190, - "vouchers": 23384, - "vous": 10636, - "vow": 34787, - "vows": 21677, - "vox": 29215, - "vox": 22692, - "voy": 10622, - "voy": 15021, - "voyage": 16299, - "voyager": 29669, - "vp": 32758, - "vp": 3896, - "vpn": 38212, - "vr": 16840, - "vr": 5921, - "vre": 44500, - "vre": 17501, - "vs": 11385, - "vs": 1547, - "vsco": 26752, - "vsco": 32822, - "vscocam": 34694, - "vsky": 37791, - "vss": 31919, - "vt": 31732, - "vt": 10291, - "vu": 8664, - "vu": 13230, - "vue": 43915, - "vue": 19313, - "vuel": 31312, - "vuelta": 43856, - "vuitton": 26705, - "vul": 6856, - "vulcan": 34767, - "vulner": 11213, - "vulnerability": 28797, - "vulnerable": 14332, - "vulture": 34593, - "vultures": 47197, - "vv": 19264, - "vv": 35686, - "vw": 28650, - "vw": 13250, - "vx": 47644, - "vy": 11566, - "vy": 5157, - "w": 86, - "w": 342, - "wa": 869, - "wa": 2663, - "waa": 35874, - "wab": 19893, - "wab": 36852, - "wac": 27445, - "wac": 37947, - "wack": 22880, - "wack": 38270, - "wacky": 34318, - "waco": 36035, - "wad": 11133, - "wad": 30451, - "wada": 40006, - "wade": 40237, - "wade": 14180, - "wadi": 37253, - "waf": 17638, - "wafc": 49086, - "waff": 13940, - "waffle": 20375, - "waffles": 24205, - "wag": 5764, - "wag": 19177, - "wage": 10716, - "wager": 43430, - "wages": 19114, - "wagner": 18081, - "wagon": 13260, - "wagons": 47944, - "wags": 48580, - "wah": 24812, - "wah": 18014, - "wahl": 27500, - "wahlberg": 35151, - "wahoo": 47995, - "wai": 11469, - "wai": 21569, - "waifu": 46551, - "waikiki": 44907, - "wain": 28358, - "wain": 20120, - "wainwright": 45878, - "waist": 36946, - "waist": 18459, - "wait": 10021, - "wait": 1885, - "waite": 24272, - "waited": 18492, - "waiter": 32946, - "waitin": 44482, - "waiting": 2680, - "waitress": 39760, - "waitrose": 37164, - "waits": 21361, - "waiver": 42866, - "waj": 49367, - "wak": 11172, - "wak": 36015, - "waka": 42696, - "wake": 10501, - "wake": 5731, - "wakefield": 26358, - "wakes": 29108, - "wakeup": 26328, - "wakeup": 35380, - "wakeupamerica": 37474, - "waking": 13025, - "wal": 1056, - "wal": 6903, - "wala": 16468, - "walang": 49180, - "walcott": 45744, - "wald": 46930, - "wald": 15724, - "walden": 39311, - "waldo": 32440, - "waldorf": 38227, - "wale": 41247, - "wale": 20336, - "wales": 25383, - "wales": 5110, - "walgreens": 38490, - "wali": 37576, - "wali": 14768, - "walia": 44455, - "walk": 8588, - "walk": 2374, - "walkaway": 48255, - "walked": 8667, - "walker": 24735, - "walker": 6150, - "walkers": 23366, - "walkin": 45792, - "walking": 12644, - "walking": 3941, - "walkingdead": 14948, - "walkout": 47470, - "walks": 8192, - "walkway": 36614, - "wall": 4316, - "wall": 2569, - "walla": 26007, - "walla": 39982, - "wallabies": 48926, - "wallace": 12535, - "wallart": 36223, - "walled": 36567, - "waller": 45340, - "wallet": 12154, - "wallets": 38550, - "walleye": 49099, - "wallis": 42206, - "wallpaper": 10560, - "wallpapers": 29841, - "walls": 8258, - "wallstreet": 45341, - "wally": 26024, - "walmart": 11972, - "walnut": 16310, - "walnuts": 38294, - "walsall": 42935, - "walsh": 12856, - "walt": 23535, - "walt": 14312, - "waltdisneyworld": 36505, - "walter": 31156, - "walter": 10645, - "walters": 25532, - "waltham": 42742, - "waltham": 45581, - "walton": 19485, - "waltz": 35982, - "wam": 20503, - "wamy": 46970, - "wan": 2060, - "wan": 4557, - "wana": 30830, - "wand": 14636, - "wand": 28559, - "wanda": 25070, - "wander": 12985, - "wander": 24473, - "wandered": 46593, - "wanderers": 27540, - "wandering": 22597, - "wanderlust": 16129, - "wane": 27459, - "wang": 19731, - "wang": 11900, - "wani": 21674, - "wankers": 42189, - "wann": 23622, - "wanna": 35940, - "wanna": 3836, - "wannabe": 40730, - "wannaone": 44832, - "want": 18356, - "want": 1280, - "wanted": 3146, - "wanting": 12801, - "wants": 3107, - "wap": 27393, - "wap": 30368, - "waq": 47512, - "war": 984, - "war": 2238, - "wara": 21631, - "warbler": 33891, - "warcraft": 13660, - "ward": 7728, - "ward": 1460, - "warden": 27798, - "wardly": 30780, - "wardro": 14247, - "wardrobe": 15020, - "wards": 2593, - "ware": 7416, - "ware": 4476, - "wareagle": 35716, - "warehouse": 13054, - "wareness": 41601, - "wareness": 35870, - "wares": 30692, - "warfare": 15739, - "warhammer": 26832, - "warhol": 27554, - "wari": 20977, - "wark": 46346, - "wark": 15164, - "warlock": 42455, - "warm": 14725, - "warm": 3616, - "warmed": 36695, - "warmer": 14328, - "warmest": 30910, - "warming": 8606, - "warmly": 45322, - "warmongers": 33205, - "warms": 32917, - "warmth": 19636, - "warmup": 29904, - "warmups": 44094, - "warn": 19360, - "warned": 16409, - "warner": 28564, - "warner": 13402, - "warning": 4994, - "warnings": 18098, - "warns": 14086, - "waron": 38947, - "warp": 32411, - "warped": 32125, - "warran": 17392, - "warrant": 22554, - "warrants": 45677, - "warranty": 23999, - "warren": 23143, - "warren": 9234, - "warri": 4109, - "warrington": 31203, - "warrior": 18998, - "warrior": 8148, - "warriors": 6421, - "wars": 3931, - "warsaw": 21072, - "warship": 47846, - "wart": 43535, - "wart": 7346, - "wartime": 42998, - "warts": 21781, - "warwick": 23081, - "warwick": 22215, - "warwickshire": 36766, - "wary": 36213, - "was": 3398, - "was": 739, - "wasabi": 47334, - "wash": 3363, - "wash": 7810, - "washed": 14092, - "washer": 24085, - "washes": 38950, - "washing": 13029, - "washington": 16774, - "washington": 4365, - "washingtondc": 40225, - "washingtonpost": 28426, - "wasn": 5044, - "wasnt": 29607, - "wasp": 24889, - "wasps": 35300, - "wassup": 45708, - "wast": 28886, - "waste": 18157, - "waste": 6065, - "wasted": 18278, - "wasteland": 44035, - "wastewater": 34463, - "wasting": 25577, - "wat": 800, - "wat": 10621, - "wata": 42509, - "watch": 7046, - "watch": 1239, - "watchdog": 35303, - "watched": 5775, - "watcher": 35971, - "watchers": 28443, - "watches": 9521, - "watchin": 32432, - "watching": 2113, - "water": 2505, - "water": 1573, - "watercolor": 14211, - "watercolour": 18377, - "waterfall": 16403, - "waterfalls": 26692, - "waterford": 24448, - "waterfront": 16605, - "waterhouse": 45072, - "watering": 19871, - "waterloo": 17465, - "watermelon": 19889, - "waterproof": 17613, - "waters": 7753, - "watershed": 33204, - "waterstones": 45014, - "waterways": 37395, - "watford": 23162, - "watfordfc": 37328, - "wati": 27966, - "watkins": 22539, - "watson": 35490, - "watson": 9294, - "watt": 22899, - "watt": 15805, - "wattpad": 32351, - "watts": 14750, - "wau": 9479, - "wav": 6054, - "wave": 17530, - "wave": 4535, - "waved": 44657, - "waver": 25997, - "waves": 7882, - "waving": 26545, - "wavy": 31941, - "waw": 22039, - "wawrinka": 48414, - "wawx": 47387, - "wax": 18789, - "wax": 11910, - "waxing": 38781, - "way": 3079, - "way": 923, - "wayback": 47822, - "wayne": 23632, - "wayne": 7003, - "ways": 1248, - "waz": 20889, - "waz": 48835, - "wb": 10726, - "wb": 12377, - "wba": 22675, - "wbb": 14482, - "wbc": 26745, - "wbo": 49053, - "wbz": 35471, - "wc": 4842, - "wc": 5755, - "wcc": 47166, - "wcc": 34926, - "wcpo": 46624, - "wcs": 39916, - "wcvb": 32709, - "wcw": 9041, - "wd": 15998, - "wd": 7494, - "wdw": 40334, - "we": 598, - "we": 649, - "wea": 37146, - "wea": 47301, - "weak": 12128, - "weak": 10128, - "weaker": 39735, - "weakness": 21448, - "weaknesses": 43487, - "weal": 14759, - "wealth": 33150, - "wealth": 7904, - "wealthy": 22617, - "weap": 6156, - "weapon": 42612, - "weapon": 10537, - "weapons": 10007, - "wear": 12206, - "wear": 2839, - "wearab": 22983, - "wearable": 44943, - "wearable": 24973, - "wearables": 30319, - "weare": 4264, - "weare": 27867, - "weareall": 45980, - "wearec": 43620, - "wearen": 45635, - "weareone": 16149, - "weareoneexo": 16448, - "wearethe": 40242, - "wearing": 3309, - "wears": 11869, - "weary": 38766, - "weasel": 44308, - "weather": 8808, - "weather": 2237, - "weathercee": 44980, - "weatherchannel": 42138, - "weav": 22260, - "weave": 22450, - "weaver": 20297, - "weaving": 27131, - "web": 2055, - "web": 4601, - "webb": 15708, - "webber": 34248, - "webcam": 24211, - "webcam": 22589, - "webcamtoy": 27719, - "webcast": 28256, - "webcomic": 34286, - "webcomics": 39811, - "webdesign": 20470, - "webdev": 37000, - "webdevelopment": 47553, - "weber": 20179, - "webin": 8460, - "webinar": 8921, - "webinars": 47755, - "webpage": 46964, - "webs": 32829, - "webseries": 44819, - "website": 3364, - "websites": 19278, - "webster": 19471, - "websummit": 48069, - "wec": 33152, - "wechat": 46124, - "wed": 1687, - "wed": 3478, - "wedd": 7576, - "wedding": 11204, - "wedding": 3101, - "weddings": 15964, - "wedge": 21446, - "wedges": 33179, - "wedne": 2380, - "wednesday": 9311, - "wednesday": 2689, - "wednesdaymotivation": 37860, - "wednesdays": 24943, - "wednesdaywisdom": 11445, - "wedo": 43432, - "weds": 19107, - "wee": 716, - "wee": 8288, - "weed": 36935, - "weed": 8015, - "weeds": 26326, - "week": 1286, - "week": 994, - "weekday": 29244, - "weekdays": 44330, - "weekend": 17205, - "weekend": 1456, - "weekender": 36547, - "weekends": 14564, - "weekly": 34652, - "weekly": 5885, - "weeknd": 29925, - "weeks": 2898, - "weeksary": 24628, - "ween": 17517, - "ween": 1599, - "weep": 39270, - "weeping": 36629, - "weer": 32491, - "weet": 17742, - "weets": 13454, - "wef": 23313, - "weg": 47867, - "weg": 47561, - "wego": 44784, - "wego": 28220, - "weh": 48458, - "weh": 40313, - "weho": 47798, - "wei": 6958, - "wei": 20952, - "weibo": 20613, - "weigh": 10565, - "weigh": 17346, - "weighed": 33210, - "weighing": 24455, - "weighs": 20481, - "weight": 12723, - "weight": 3868, - "weighted": 43179, - "weightlifting": 36164, - "weightloss": 20359, - "weights": 21374, - "weil": 43720, - "weiler": 42203, - "wein": 29134, - "wein": 37684, - "weiner": 38822, - "weinstein": 34367, - "weir": 11299, - "weir": 25517, - "weird": 27981, - "weird": 5613, - "weirdest": 29482, - "weirdo": 32476, - "weis": 26251, - "weiser": 34833, - "weiss": 24794, - "wel": 1267, - "wel": 8042, - "welch": 25820, - "welcom": 11578, - "welcome": 18318, - "welcome": 1881, - "welcomed": 12590, - "welcomes": 9304, - "welcometo": 47511, - "welcoming": 8775, - "weld": 39776, - "welding": 24956, - "welfare": 12129, - "well": 3277, - "well": 1123, - "wellbeing": 14273, - "weller": 40921, - "welling": 49165, - "wellington": 15389, - "wellness": 40574, - "wellness": 9904, - "wells": 42705, - "wells": 9804, - "welove": 13573, - "welp": 28391, - "wels": 20852, - "welsh": 19173, - "welsh": 10977, - "welt": 38595, - "welter": 37115, - "welterweight": 39617, - "wemb": 15213, - "wembley": 16579, - "wen": 6590, - "wen": 11278, - "wend": 15166, - "wendell": 42091, - "wendy": 31616, - "wendy": 14074, - "wenger": 21105, - "went": 18633, - "went": 2437, - "wentworth": 36423, - "wentz": 39179, - "wer": 6316, - "wer": 2980, - "were": 15461, - "were": 1365, - "wered": 6605, - "weren": 13611, - "werewolf": 32001, - "werk": 30176, - "werner": 29917, - "wers": 7110, - "wes": 18620, - "wes": 14738, - "wesle": 29606, - "wesley": 17332, - "wesleyan": 32509, - "wesome": 33292, - "wess": 44431, - "west": 2973, - "west": 1593, - "westbound": 29208, - "westbrook": 26948, - "westchester": 36675, - "westcoast": 44610, - "westend": 44815, - "wester": 9846, - "western": 17079, - "western": 4463, - "westfield": 32309, - "westh": 36798, - "westin": 43232, - "westlake": 41535, - "westminster": 15158, - "weston": 22771, - "westside": 33762, - "westwood": 26371, - "westworld": 42287, - "wet": 12406, - "wet": 6682, - "weta": 40946, - "wethenorth": 45281, - "wethepeople": 48030, - "wether": 33794, - "wether": 48405, - "wetland": 37357, - "wetlands": 26547, - "wett": 41971, - "wetter": 43957, - "wewant": 39280, - "wewill": 37241, - "wex": 17234, - "wexford": 29876, - "wexmondays": 49042, - "wey": 30376, - "wey": 19781, - "weymouth": 41433, - "wf": 14576, - "wf": 22313, - "wfa": 44606, - "wfc": 36431, - "wfp": 35193, - "wftv": 47075, - "wg": 21091, - "wg": 25857, - "wga": 32354, - "wgn": 48828, - "wh": 573, - "wh": 13844, - "wha": 18994, - "wha": 25884, - "whal": 38967, - "whale": 37083, - "whale": 11650, - "whales": 17722, - "wham": 42506, - "whar": 15517, - "wharf": 22452, - "wharton": 43320, - "what": 4268, - "what": 768, - "whatcha": 37160, - "whate": 6695, - "whatever": 6743, - "whati": 23500, - "whats": 9263, - "whats": 13084, - "whatsapp": 10119, - "whatsoever": 39928, - "whatson": 35632, - "whatyou": 30508, - "whe": 2009, - "whead": 34583, - "wheat": 20505, - "wheat": 10303, - "wheaton": 46933, - "wheel": 7360, - "wheel": 6744, - "wheelchair": 17713, - "wheeler": 18405, - "wheeling": 34839, - "wheels": 8025, - "whel": 9792, - "whelan": 40715, - "when": 8753, - "when": 827, - "whenever": 10500, - "where": 7052, - "where": 1234, - "whereabouts": 47808, - "whereas": 42234, - "wheres": 46345, - "wherever": 14103, - "whereyou": 46837, - "whether": 5903, - "whew": 39016, - "whey": 34556, - "whi": 4295, - "whi": 33129, - "which": 1448, - "whiche": 48719, - "whichever": 49138, - "whil": 8499, - "while": 1519, - "whilst": 8596, - "whim": 27766, - "whimsical": 42282, - "whip": 14412, - "whipped": 22323, - "whipping": 41567, - "whir": 20873, - "whirl": 30962, - "whirlwind": 47771, - "whis": 6024, - "whiskey": 41381, - "whiskey": 11610, - "whisky": 37567, - "whisky": 12599, - "whisp": 21986, - "whispe": 30356, - "whisper": 27616, - "whisperer": 41368, - "whispering": 42599, - "whispers": 29133, - "whist": 13640, - "whistle": 23972, - "whistle": 19746, - "whistleblower": 40410, - "whistler": 29633, - "whit": 4398, - "whit": 31498, - "whitaker": 35851, - "whitby": 30858, - "white": 4699, - "white": 1579, - "whiteboard": 40839, - "whitec": 24575, - "whitehall": 42827, - "whitehead": 43560, - "whitehouse": 20776, - "whitening": 35540, - "whitepaper": 42713, - "whites": 35886, - "whites": 18835, - "whitesox": 28816, - "whitewater": 49350, - "whitfield": 48404, - "whitley": 40564, - "whitman": 32394, - "whitney": 43021, - "whitney": 18048, - "whitt": 33784, - "whittaker": 47595, - "whl": 25801, - "who": 2969, - "who": 822, - "whoa": 16943, - "whoever": 11137, - "whois": 41884, - "whole": 10360, - "whole": 2954, - "wholefoods": 42840, - "wholesale": 18306, - "wholesome": 35959, - "whom": 38158, - "whom": 12873, - "whoo": 20003, - "whoo": 49290, - "whoop": 22060, - "whoops": 28433, - "whopping": 34384, - "whore": 31690, - "whos": 41460, - "whos": 27130, - "whose": 6933, - "whouse": 45927, - "whs": 26292, - "wht": 32470, - "whufc": 31695, - "whun": 18272, - "why": 11040, - "why": 1182, - "whyte": 42386, - "wi": 820, - "wi": 5585, - "wib": 45303, - "wic": 7834, - "wich": 9759, - "wich": 5238, - "wichita": 22566, - "wick": 6798, - "wick": 6479, - "wicked": 32579, - "wicked": 12825, - "wicker": 38096, - "wicket": 19180, - "wickets": 22110, - "wicklow": 39039, - "wicz": 30121, - "wid": 11886, - "wid": 20886, - "wide": 19341, - "wide": 3184, - "widely": 16195, - "widening": 46598, - "wider": 21263, - "widesp": 20598, - "widespread": 21258, - "widget": 43906, - "wido": 28068, - "widow": 19949, - "widows": 42129, - "width": 23571, - "wie": 21378, - "wie": 9131, - "wielding": 47272, - "wien": 38131, - "wiener": 40567, - "wies": 42788, - "wif": 37572, - "wife": 3607, - "wifey": 35282, - "wifi": 11026, - "wig": 23690, - "wig": 12216, - "wigan": 23130, - "wiggins": 32329, - "wiggle": 47812, - "wight": 41278, - "wight": 15545, - "wigs": 31207, - "wii": 8005, - "wiiu": 40980, - "wiki": 10373, - "wiki": 24265, - "wikileaks": 28731, - "wikipedia": 15176, - "wil": 1352, - "wil": 20581, - "wilbur": 43069, - "wilcox": 43231, - "wild": 2780, - "wild": 3220, - "wildatlantic": 35500, - "wildatlanticway": 35776, - "wildcard": 37360, - "wildcat": 49077, - "wildcat": 25870, - "wildcats": 15909, - "wilde": 23498, - "wilder": 14343, - "wilder": 23499, - "wilderness": 16506, - "wildest": 43028, - "wildfire": 22788, - "wildfires": 29184, - "wildflower": 27628, - "wildflower": 33181, - "wildflowerhour": 31302, - "wildflowers": 29136, - "wildlife": 13298, - "wildlife": 5250, - "wildlifephotography": 32307, - "wildlifewednesday": 48537, - "wildly": 35981, - "wildoz": 40113, - "wiley": 32747, - "wilhelm": 39696, - "wilkes": 39548, - "wilkins": 36986, - "wilkinson": 26797, - "will": 5062, - "will": 751, - "willam": 43276, - "willard": 44920, - "wille": 48739, - "willem": 38044, - "willi": 2256, - "william": 8420, - "william": 4705, - "williams": 38452, - "williams": 4075, - "williamsburg": 30683, - "williamson": 20793, - "willie": 13907, - "willing": 34160, - "willing": 11718, - "willingness": 40573, - "willis": 18491, - "willow": 33887, - "willow": 15665, - "wills": 26913, - "willy": 34502, - "willy": 19599, - "wilmington": 28052, - "wilms": 47879, - "wilshere": 48359, - "wilson": 23629, - "wilson": 5622, - "wilt": 23394, - "wilt": 47357, - "wilton": 46638, - "wiltshire": 28025, - "wim": 8662, - "wim": 27580, - "wimble": 11752, - "wimbledon": 12229, - "win": 831, - "win": 1225, - "winchester": 20647, - "wind": 6812, - "wind": 3630, - "winder": 44454, - "winder": 46245, - "winding": 22390, - "windmill": 34084, - "windo": 3110, - "window": 26675, - "window": 4879, - "windows": 5437, - "winds": 12668, - "winds": 7012, - "windshield": 33002, - "windsor": 44322, - "windsor": 12884, - "windy": 13446, - "wine": 7375, - "wine": 2604, - "winelover": 26357, - "winemaker": 41588, - "wineoclock": 43846, - "wineries": 49349, - "winery": 15500, - "wines": 8263, - "winetasting": 41288, - "winewednesday": 35447, - "wing": 8141, - "wing": 1340, - "winged": 24993, - "winger": 22727, - "winget": 44578, - "wings": 5178, - "wink": 34455, - "wink": 25859, - "winkle": 36430, - "winn": 38104, - "winne": 46273, - "winner": 32961, - "winner": 2520, - "winners": 4320, - "winni": 13018, - "winnie": 29022, - "winning": 42099, - "winning": 2577, - "winnings": 46490, - "winnipeg": 14369, - "winona": 49202, - "wins": 46839, - "wins": 2718, - "winslow": 39658, - "winston": 14848, - "winter": 7340, - "winter": 2541, - "winters": 21587, - "wintry": 39504, - "wip": 10447, - "wipe": 26761, - "wiped": 31822, - "wipes": 33463, - "wir": 16849, - "wir": 44838, - "wire": 7558, - "wire": 7794, - "wired": 18935, - "wireless": 9103, - "wires": 24311, - "wiring": 36434, - "wirral": 34675, - "wis": 3392, - "wis": 20405, - "wiscon": 9857, - "wisconsin": 10265, - "wisdom": 42474, - "wisdom": 5425, - "wise": 19116, - "wise": 5558, - "wisely": 26173, - "wiser": 44859, - "wish": 11328, - "wish": 2412, - "wished": 25883, - "wishes": 6045, - "wishing": 5307, - "wishlist": 31969, - "wit": 584, - "wit": 8531, - "witch": 20139, - "witch": 10083, - "witchcraft": 35065, - "witcher": 33684, - "witches": 21673, - "with": 1435, - "with": 593, - "withdra": 24696, - "withdraw": 31670, - "withdrawal": 25765, - "withdrawn": 46687, - "withdraws": 48637, - "wither": 39655, - "witherspoon": 45409, - "within": 4154, - "withme": 44670, - "without": 32836, - "without": 2193, - "withstand": 42236, - "withthe": 36872, - "withus": 30572, - "withyou": 30351, - "witne": 12096, - "witness": 8793, - "witnessed": 20187, - "witnesses": 22778, - "witnessing": 33618, - "wits": 30938, - "witt": 38194, - "witt": 17168, - "witter": 31597, - "witty": 29970, - "witz": 44186, - "witz": 13265, - "wiv": 48925, - "wives": 14378, - "wiwx": 44461, - "wiz": 7730, - "wiz": 23178, - "wizar": 49121, - "wizard": 30490, - "wizard": 14295, - "wizards": 19140, - "wizkid": 40146, - "wj": 19739, - "wj": 35453, - "wk": 11512, - "wk": 11528, - "wkend": 42336, - "wknd": 20851, - "wks": 25508, - "wku": 43377, - "wl": 13299, - "wl": 9613, - "wm": 20268, - "wm": 15790, - "wn": 1186, - "wn": 757, - "wnba": 32358, - "wned": 8628, - "wns": 12950, - "wnt": 22484, - "wny": 24833, - "wo": 1613, - "wo": 11132, - "woah": 17751, - "wob": 35984, - "woc": 39011, - "wod": 41522, - "woes": 27860, - "wof": 45671, - "woj": 48931, - "wok": 28912, - "woke": 9331, - "woken": 43697, - "woking": 43931, - "wol": 2798, - "wol": 48622, - "wold": 42399, - "wolf": 9453, - "wolf": 5916, - "wolfe": 24989, - "wolff": 34369, - "wolfgang": 34061, - "wolfpack": 30887, - "wolve": 45101, - "wolver": 14334, - "wolverhampton": 34518, - "wolverine": 23353, - "wolverines": 42003, - "wolves": 9372, - "wom": 1087, - "womack": 48980, - "woman": 15716, - "woman": 2308, - "womanc": 35630, - "womancrush": 37721, - "womancrushwednesday": 39714, - "womanin": 30562, - "womaninbiz": 36482, - "womb": 37023, - "women": 3648, - "women": 1507, - "womenin": 13062, - "womeninscience": 41343, - "womeninstem": 29380, - "womenintech": 31470, - "womenof": 48421, - "womens": 12822, - "womens": 14408, - "womensart": 38548, - "womensday": 13956, - "womenshi": 22887, - "womenshistorymonth": 24982, - "womensmarch": 30102, - "won": 1528, - "won": 1749, - "wonder": 2070, - "wonder": 3936, - "wondercon": 46944, - "wondered": 15550, - "wonderful": 2582, - "wonderfully": 23245, - "wondering": 8360, - "wonderland": 13874, - "wonders": 14048, - "wonderwoman": 31000, - "wondo": 38402, - "wondr": 46771, - "wong": 17876, - "wonka": 43463, - "wont": 43174, - "wont": 15952, - "woo": 1867, - "woo": 9322, - "wood": 3269, - "wood": 1704, - "woodbridge": 49074, - "wooden": 48226, - "wooden": 9057, - "woodland": 44314, - "woodland": 17447, - "woodlands": 32430, - "woodley": 40566, - "woodpecker": 32684, - "woods": 6267, - "woodson": 48967, - "woodstock": 29486, - "woodward": 27419, - "woodwork": 47386, - "woodworking": 29267, - "woody": 38627, - "woody": 17144, - "woof": 34234, - "woof": 24028, - "woohoo": 20172, - "wook": 29192, - "wool": 9967, - "wool": 13283, - "woolf": 43728, - "woolly": 47722, - "woon": 33126, - "wooo": 43217, - "woop": 31884, - "woot": 22466, - "wor": 641, - "worcester": 22172, - "worcester": 19580, - "worcestershire": 38440, - "worcestershirehour": 43644, - "word": 8272, - "word": 2653, - "wordof": 33500, - "wordoftheday": 43594, - "wordpress": 15193, - "words": 31007, - "words": 2709, - "wore": 8953, - "work": 1636, - "work": 951, - "workday": 29735, - "worked": 5410, - "worker": 8098, - "workers": 4795, - "workflow": 28502, - "workforce": 14672, - "workin": 31825, - "workin": 26323, - "working": 20806, - "working": 1699, - "workinprogress": 46086, - "workout": 6773, - "workouts": 22779, - "workplace": 11959, - "workplaces": 47383, - "works": 2322, - "workshop": 3832, - "workshops": 12262, - "workspace": 34470, - "worl": 5221, - "world": 2334, - "world": 1002, - "worlda": 46627, - "worldbank": 36759, - "worldbookday": 31191, - "worldcup": 42525, - "worldcup": 8650, - "worlden": 44668, - "worldenviron": 47115, - "worldenvironmentday": 47522, - "worldly": 36268, - "worldo": 41698, - "worldof": 22636, - "worldre": 33951, - "worlds": 7691, - "worldseries": 26695, - "worldtour": 23202, - "worldwater": 41176, - "worldwaterday": 44520, - "worldwide": 6214, - "worm": 33709, - "worm": 10945, - "worms": 20231, - "worn": 9037, - "worried": 11911, - "worries": 17684, - "worry": 7534, - "worrying": 24058, - "worse": 8236, - "worsen": 46344, - "worshi": 31840, - "worship": 46399, - "worship": 9023, - "worst": 5719, - "wort": 30209, - "worth": 10671, - "worth": 2450, - "worthing": 39929, - "worthit": 40830, - "worthless": 44736, - "worths": 44633, - "worthwhile": 36295, - "worthy": 8881, - "worx": 44973, - "wot": 24863, - "wou": 5279, - "would": 39873, - "would": 1311, - "wouldn": 5878, - "wouldnt": 41595, - "wound": 19231, - "wounded": 14859, - "wounds": 21290, - "woven": 19830, - "wow": 22191, - "wow": 2781, - "woz": 44558, - "wozni": 47782, - "wp": 15378, - "wp": 13302, - "wpg": 35048, - "wps": 33386, - "wq": 45195, - "wr": 1189, - "wr": 8028, - "wra": 3852, - "wra": 46004, - "wral": 49050, - "wrangler": 30923, - "wrap": 7094, - "wrapped": 9875, - "wrapping": 15223, - "wraps": 18236, - "wrath": 29783, - "wray": 48943, - "wrc": 16004, - "wre": 3168, - "wreath": 23091, - "wrec": 20879, - "wreck": 28775, - "wreck": 15017, - "wrecked": 32695, - "wreckem": 45676, - "wrecking": 36956, - "wrecks": 45545, - "wren": 20191, - "wren": 31970, - "wrench": 30980, - "wrest": 4177, - "wrestle": 17097, - "wrestle": 28086, - "wrestlemania": 18849, - "wrestler": 19790, - "wrestlers": 25902, - "wrestling": 31292, - "wrestling": 5904, - "wrexham": 34479, - "wri": 7667, - "wri": 42007, - "wright": 28616, - "wright": 6991, - "wrights": 43711, - "wrigley": 33538, - "wrink": 22201, - "wrinkle": 46642, - "wrinkles": 35525, - "wrist": 19243, - "wrist": 16139, - "wristband": 36890, - "wristbands": 44864, - "writ": 2902, - "write": 28874, - "write": 4946, - "writer": 27886, - "writer": 4422, - "writers": 18742, - "writers": 7307, - "writerslife": 25007, - "writes": 8023, - "writing": 16053, - "writing": 2979, - "writingcommunity": 39178, - "writings": 36259, - "written": 5231, - "wro": 5447, - "wrong": 18381, - "wrong": 3669, - "wrongly": 45642, - "wrote": 5796, - "wrought": 48125, - "wrs": 45280, - "ws": 6300, - "ws": 799, - "wsb": 30681, - "wsbtv": 38394, - "wsj": 19764, - "wski": 12548, - "wsl": 43706, - "wsoc": 40253, - "wson": 33954, - "wsop": 41231, - "wsu": 44674, - "wsu": 32913, - "wsw": 43285, - "wt": 15873, - "wt": 12255, - "wta": 25984, - "wtc": 39718, - "wtf": 6891, - "wth": 23021, - "wthr": 45269, - "wti": 47345, - "wto": 36406, - "wts": 32159, - "wu": 9710, - "wu": 9837, - "wud": 43870, - "wul": 35154, - "wunder": 36661, - "wur": 24040, - "wurst": 44409, - "wusa": 40021, - "wut": 28590, - "wv": 18920, - "wv": 14743, - "wvu": 44878, - "wvu": 25879, - "ww": 3181, - "ww": 4491, - "wwc": 26505, - "wwdc": 47441, - "wwe": 12112, - "wwe": 5290, - "wwen": 23308, - "wwenetwork": 37228, - "wwenxt": 39898, - "wwer": 32038, - "wwf": 23332, - "wwfc": 42681, - "wwg": 35322, - "wwi": 20194, - "wwii": 10261, - "www": 26074, - "www": 9667, - "wwwbigbaldhead": 30761, - "wwww": 34224, - "wwww": 25200, - "wwwww": 48268, - "wwx": 47431, - "wx": 18192, - "wx": 3561, - "wy": 4665, - "wy": 7625, - "wyatt": 21660, - "wyd": 33113, - "wye": 48436, - "wye": 43751, - "wylie": 49330, - "wyn": 11802, - "wyn": 17504, - "wynn": 36117, - "wynne": 35951, - "wynonna": 41456, - "wynonnaearp": 43755, - "wyoming": 18693, - "x": 87, - "x": 343, - "xa": 24831, - "xan": 45530, - "xander": 45601, - "xavi": 36342, - "xavier": 41044, - "xavier": 18567, - "xb": 33678, - "xbox": 18063, - "xbox": 7748, - "xboxone": 27410, - "xc": 12515, - "xchange": 49132, - "xd": 6380, - "xe": 42886, - "xe": 19183, - "xen": 15568, - "xer": 49005, - "xf": 35274, - "xfactor": 25211, - "xfinity": 35107, - "xford": 34732, - "xh": 45771, - "xham": 25284, - "xi": 2467, - "xi": 7376, - "xia": 19854, - "xia": 20724, - "xian": 42570, - "xiao": 49318, - "xiaomi": 27477, - "xico": 38469, - "xide": 17398, - "xie": 40122, - "xie": 15976, - "xii": 36525, - "xiii": 28199, - "xim": 11217, - "xin": 27053, - "xin": 41517, - "xing": 14383, - "xion": 24164, - "xis": 35793, - "xit": 5316, - "xiumin": 36563, - "xiv": 16125, - "xj": 42453, - "xl": 36529, - "xl": 8833, - "xley": 38223, - "xm": 18626, - "xma": 48805, - "xmas": 48848, - "xmas": 6425, - "xmen": 28708, - "xn": 25388, - "xo": 26936, - "xo": 9000, - "xon": 29186, - "xon": 8482, - "xox": 11531, - "xox": 34050, - "xoxo": 13313, - "xp": 15651, - "xper": 32200, - "xperia": 37615, - "xpo": 44377, - "xpress": 31809, - "xq": 40606, - "xr": 26276, - "xrp": 26965, - "xs": 16397, - "xt": 1052, - "xtina": 45520, - "xton": 32666, - "xton": 10597, - "xtra": 26969, - "xtre": 27025, - "xtreme": 33483, - "xu": 42063, - "xu": 37198, - "xv": 17768, - "xvi": 44031, - "xx": 5675, - "xx": 3553, - "xxl": 29777, - "xxx": 33923, - "xxx": 8352, - "xxxx": 32035, - "xxxx": 22819, - "xxxxx": 44195, - "xy": 20023, - "xy": 11443, - "y": 88, - "y": 344, - "ya": 5018, - "ya": 1430, - "yaa": 48847, - "yaa": 34498, - "yaan": 34680, - "yab": 27737, - "yach": 9039, - "yacht": 43806, - "yacht": 12859, - "yachts": 29260, - "yad": 13276, - "yad": 40047, - "yadav": 26650, - "yaf": 38019, - "yag": 35081, - "yah": 16170, - "yah": 12381, - "yaho": 37929, - "yahoo": 38152, - "yahoo": 16846, - "yak": 11014, - "yak": 29074, - "yaki": 44677, - "yaku": 29572, - "yakuza": 42628, - "yal": 16198, - "yal": 13418, - "yale": 39926, - "yale": 17157, - "yall": 9210, - "yam": 6666, - "yam": 19318, - "yama": 23512, - "yamaha": 18854, - "yan": 3949, - "yan": 4788, - "yana": 18698, - "yand": 38609, - "yang": 23818, - "yang": 12605, - "yani": 26439, - "yankee": 21554, - "yankees": 11889, - "yann": 40246, - "yann": 38657, - "yao": 45231, - "yap": 48700, - "yap": 34468, - "yar": 6786, - "yar": 23071, - "yard": 20234, - "yard": 4313, - "yards": 7550, - "yarmouth": 45941, - "yarn": 19702, - "yarra": 46824, - "yas": 8168, - "yas": 20570, - "yash": 30216, - "yash": 37836, - "yasi": 37700, - "yasss": 23873, - "yat": 29443, - "yat": 34965, - "yates": 27677, - "yatra": 38932, - "yav": 41275, - "yaw": 31989, - "yawn": 48643, - "yay": 20614, - "yay": 6712, - "yaya": 37608, - "yaz": 19348, - "yaz": 42252, - "yb": 41785, - "yb": 27615, - "yc": 11931, - "ycle": 38089, - "yd": 29896, - "yd": 9534, - "yday": 15899, - "yds": 24819, - "ye": 693, - "ye": 4582, - "yea": 13687, - "yeah": 29405, - "yeah": 3908, - "year": 5163, - "year": 935, - "yearbook": 21636, - "yearling": 48392, - "yearly": 24541, - "yearof": 31944, - "yearofthe": 47899, - "years": 30864, - "years": 1151, - "yearsof": 14932, - "yearswith": 45249, - "yeast": 25819, - "yeats": 44903, - "yed": 28137, - "yed": 3301, - "yee": 18114, - "yee": 23108, - "yeezy": 24901, - "yeg": 16854, - "yeg": 11976, - "yegfood": 48711, - "yeh": 21331, - "yel": 3323, - "yel": 48164, - "yell": 30824, - "yelled": 39199, - "yelling": 26581, - "yellow": 12059, - "yellow": 4481, - "yellowstone": 29241, - "yelp": 31674, - "yemen": 29276, - "yemen": 12513, - "yemeni": 44656, - "yemi": 42267, - "yen": 29602, - "yen": 17960, - "yeo": 32292, - "yeo": 43830, - "yeol": 15808, - "yeon": 16602, - "yep": 10964, - "yer": 15491, - "yer": 2371, - "yers": 3722, - "yes": 21620, - "yes": 1958, - "yess": 42778, - "yess": 40189, - "yesss": 36210, - "yessss": 45620, - "yester": 1905, - "yesterday": 1926, - "yesterdays": 36238, - "yesung": 38527, - "yet": 2296, - "yeti": 34228, - "yev": 39855, - "yew": 34660, - "yey": 45447, - "yg": 16396, - "ygk": 44758, - "ygo": 46166, - "yh": 41978, - "yi": 5826, - "yi": 14762, - "yield": 16825, - "yields": 24856, - "yikes": 25094, - "yin": 26476, - "yin": 23543, - "ying": 42933, - "ying": 910, - "yixing": 32120, - "yk": 30965, - "yl": 2656, - "yl": 4045, - "ylan": 41875, - "ylde": 42850, - "yle": 32305, - "yle": 10770, - "ylene": 34239, - "yler": 48081, - "yles": 42860, - "ylon": 22375, - "ylor": 48468, - "ym": 1786, - "ym": 19587, - "yman": 29077, - "ymc": 47101, - "ymca": 22369, - "yment": 8199, - "ymes": 39968, - "ymi": 5271, - "ymm": 37133, - "ymoun": 41426, - "ymouth": 36429, - "yn": 2823, - "yn": 4100, - "yne": 18238, - "ynes": 18020, - "ynn": 10499, - "ynna": 48292, - "ynwa": 27372, - "yo": 586, - "yo": 3497, - "yoda": 31922, - "yof": 5966, - "yofficial": 21818, - "yofthe": 43983, - "yog": 34985, - "yog": 36539, - "yoga": 25872, - "yoga": 5523, - "yogh": 32626, - "yoghurt": 33491, - "yogi": 22766, - "yogur": 16137, - "yogurt": 16819, - "yoh": 48880, - "yoke": 41969, - "yoko": 25929, - "yoko": 32256, - "yokohama": 42409, - "yol": 19387, - "yol": 35218, - "yolanda": 43845, - "yolo": 20905, - "yom": 34718, - "yom": 44527, - "yon": 10147, - "yon": 7604, - "yong": 27960, - "yong": 20887, - "yonge": 48592, - "yoo": 25842, - "yoo": 20775, - "yoon": 30863, - "yoon": 22113, - "yoona": 32736, - "yoongi": 24037, - "yor": 2028, - "yor": 21132, - "york": 5318, - "york": 2705, - "yorker": 23865, - "yorkers": 41041, - "yorks": 39093, - "yorkshi": 43367, - "yorkshire": 27007, - "yorkshire": 8633, - "yoruba": 46083, - "yos": 35607, - "yosemite": 25893, - "yoshi": 22920, - "yoshi": 25354, - "yot": 22875, - "yotes": 46157, - "yotpo": 26113, - "you": 1562, - "you": 592, - "youare": 33879, - "youcan": 32498, - "youknow": 47919, - "youknow": 41088, - "youn": 1596, - "young": 6939, - "young": 1888, - "younger": 10414, - "youngest": 12316, - "youngjae": 46426, - "youngster": 35881, - "youngsters": 28098, - "younow": 33831, - "your": 2130, - "your": 695, - "youre": 28344, - "youre": 19695, - "yourown": 28583, - "yours": 3834, - "yourself": 3053, - "yourselves": 19747, - "youth": 10743, - "youth": 3281, - "youthful": 37480, - "youths": 23614, - "youts": 22737, - "youtu": 13868, - "youtube": 31258, - "youtube": 3895, - "youtuber": 24720, - "youtubers": 36822, - "youu": 35055, - "youuu": 35324, - "youuuu": 47123, - "yoy": 41865, - "yp": 38370, - "yp": 34734, - "ypg": 37386, - "yql": 46122, - "yqr": 36881, - "yr": 18395, - "yr": 4333, - "yrs": 4822, - "ys": 1971, - "ys": 961, - "yser": 33121, - "ysis": 4843, - "ysl": 45681, - "ysm": 23842, - "yst": 40528, - "yt": 36777, - "yt": 14779, - "ytd": 47524, - "yte": 48172, - "yu": 3371, - "yu": 8887, - "yuan": 26236, - "yuck": 48282, - "yugo": 48231, - "yuh": 42547, - "yui": 47932, - "yuk": 17037, - "yuk": 24063, - "yuki": 34010, - "yukon": 27094, - "yul": 39832, - "yum": 6869, - "yum": 7259, - "yuma": 47566, - "yummy": 7687, - "yun": 14976, - "yun": 18288, - "yung": 44545, - "yung": 17676, - "yunho": 39748, - "yup": 13231, - "yur": 42533, - "yuri": 23823, - "yusuf": 33222, - "yuv": 36784, - "yves": 33698, - "yvon": 23327, - "yvonne": 32583, - "yvr": 29058, - "yw": 33741, - "yx": 35624, - "yxe": 34240, - "yy": 3433, - "yy": 8321, - "yya": 37444, - "yyc": 27542, - "yyc": 11741, - "yyj": 26203, - "yyy": 11514, - "yyyy": 38749, - "yyyy": 16955, - "yyyyy": 26089, - "yyyyyy": 47055, - "yz": 37579, - "yz": 46451, - "yü": 48232, - "z": 89, - "z": 345, - "za": 3710, - "za": 2186, - "zab": 22982, - "zable": 37002, - "zac": 25501, - "zac": 19159, - "zach": 13401, - "zach": 11815, - "zachary": 32401, - "zack": 30567, - "zack": 19120, - "zad": 47314, - "zad": 27838, - "zada": 34889, - "zaf": 21837, - "zafar": 46668, - "zag": 26091, - "zag": 29346, - "zagre": 34107, - "zagreb": 35355, - "zah": 23258, - "zah": 43297, - "zaha": 44408, - "zai": 44329, - "zai": 27065, - "zain": 34400, - "zain": 45366, - "zak": 13050, - "zak": 20738, - "zaki": 48091, - "zal": 20552, - "zal": 33298, - "zam": 7218, - "zam": 41578, - "zambia": 21671, - "zan": 7284, - "zan": 17835, - "zana": 39643, - "zand": 37712, - "zane": 34786, - "zani": 45373, - "zania": 15059, - "zano": 27637, - "zanzi": 47835, - "zap": 24134, - "zapp": 33504, - "zappa": 46592, - "zar": 5458, - "zar": 16392, - "zara": 24454, - "zardari": 20174, - "zas": 48261, - "zation": 3683, - "zawa": 49281, - "zay": 7102, - "zayed": 36726, - "zayn": 22292, - "zayn": 10308, - "zaynmalik": 25278, - "zazzle": 47857, - "ze": 2254, - "ze": 1298, - "zeal": 44951, - "zealand": 7618, - "zeb": 46518, - "zebra": 47394, - "zebra": 22548, - "zed": 21047, - "zed": 1993, - "zedd": 45608, - "zee": 25468, - "zee": 14080, - "zeiss": 47460, - "zeit": 37898, - "zeit": 37906, - "zek": 40829, - "zeke": 47065, - "zel": 10389, - "zel": 12027, - "zelda": 17138, - "zell": 39526, - "zen": 8518, - "zen": 3928, - "zend": 33478, - "zendaya": 35956, - "zenith": 44740, - "zens": 15298, - "zeph": 40726, - "zepp": 22977, - "zeppelin": 25408, - "zer": 6118, - "zer": 3716, - "zero": 14867, - "zero": 5848, - "zers": 9547, - "zes": 4073, - "zest": 37709, - "zet": 34098, - "zeta": 30954, - "zetta": 45993, - "zeus": 32800, - "zey": 46647, - "zh": 33389, - "zh": 41621, - "zhang": 21127, - "zhen": 37374, - "zhen": 33236, - "zhou": 17384, - "zhu": 42049, - "zi": 2651, - "zi": 5819, - "zia": 13764, - "zid": 30235, - "zidane": 34643, - "zie": 29316, - "zie": 8956, - "zieg": 40157, - "ziegler": 46812, - "ziel": 32151, - "zier": 15399, - "zies": 38001, - "ziest": 28159, - "zig": 15950, - "zig": 21345, - "ziggy": 39274, - "zik": 30125, - "zika": 28783, - "zil": 25039, - "zil": 33190, - "zilla": 17879, - "zim": 8112, - "zim": 22577, - "zimbab": 12373, - "zimbabwe": 45668, - "zimbabwe": 13583, - "zimmer": 27452, - "zimmer": 35211, - "zimmerman": 38231, - "zin": 14085, - "zin": 21278, - "zinc": 27458, - "zind": 26206, - "zindabad": 42208, - "zine": 16100, - "zing": 25062, - "zing": 3152, - "zinger": 42027, - "zio": 13906, - "zion": 31763, - "zion": 20963, - "zione": 36161, - "zionist": 33078, - "zip": 26479, - "zip": 16083, - "zipper": 33670, - "zir": 31892, - "zl": 39168, - "zlat": 32489, - "zlatan": 37877, - "zm": 43691, - "zman": 24248, - "zn": 18004, - "zo": 4397, - "zo": 5056, - "zodi": 22660, - "zodiac": 27753, - "zoe": 43114, - "zoe": 16662, - "zoey": 39871, - "zog": 40680, - "zol": 25939, - "zola": 46105, - "zom": 6623, - "zombi": 29452, - "zombie": 11819, - "zombies": 46702, - "zombies": 16517, - "zon": 15109, - "zon": 14618, - "zona": 42134, - "zone": 37197, - "zone": 4442, - "zones": 17247, - "zoning": 36790, - "zoo": 8182, - "zoo": 7147, - "zoom": 32671, - "zoom": 13909, - "zor": 17605, - "zou": 38072, - "zr": 39275, - "zs": 35248, - "zshq": 41442, - "zt": 42629, - "zu": 4091, - "zu": 14184, - "zucchini": 29873, - "zucker": 26890, - "zuckerberg": 30066, - "zul": 31146, - "zulu": 32821, - "zum": 35094, - "zuma": 23326, - "zumba": 32976, - "zun": 42440, - "zur": 17128, - "zurich": 21288, - "zw": 42188, - "zx": 31604, - "zy": 6615, - "zy": 2303, - "zyk": 39112, - "zyme": 36472, - "zyn": 45287, - "zz": 1544, - "zz": 4943, - "zza": 14642, - "zzi": 13974, - "zzie": 18635, - "zzle": 7873, - "zzled": 39075, - "zzo": 14036, - "zzy": 21275, - "zzy": 8353, - "zzz": 20055, - "zzzz": 35742, - "zzzz": 43103, - "{": 90, - "{": 346, - "{}": 39025, - "|": 91, - "|#": 31183, - "|": 347, - "|@": 41677, - "||": 7566, - "}": 92, - "}": 348, - "~": 93, - "~!": 31181, - "~\"": 48442, - "~": 349, - "~>": 43291, - "~@": 44247, - "~~": 11461, - "~~": 16671, - "~~~": 32472, - "~~~~": 28295, - "¡": 94, - "¡": 350, - "¡ï¸ı": 15113, - "¡ï¸ı": 4174, - "¡ľ": 43991, - "¢": 95, - "¢": 351, - "£": 96, - "£": 352, - "£ï¸ı": 18446, - "¤": 97, - "¤": 353, - "¥": 98, - "¥": 354, - "¦": 99, - "¦": 355, - "¦Ī": 47615, - "§": 100, - "§": 356, - "¨": 101, - "¨": 357, - "©": 102, - "©": 358, - "ª": 103, - "ª": 359, - "«": 104, - "«": 360, - "¬": 105, - "¬": 361, - "¬ë": 31736, - "®": 106, - "®": 362, - "¯": 107, - "¯": 363, - "°": 108, - "°:": 21787, - "°": 364, - "°ï¸ı": 34777, - "±": 109, - "±": 365, - "±ï¸ı": 41020, - "²": 110, - "²": 366, - "³": 111, - "³": 367, - "³ï¸ı": 22195, - "³ï¸ı": 24706, - "´": 112, - "´": 368, - "µ": 113, - "µ": 369, - "µï¸ı": 27605, - "¶": 114, - "¶": 370, - "·": 115, - "·": 371, - "¸": 116, - "¸": 372, - "¸ë": 19693, - "¹": 117, - "¹": 373, - "º": 118, - "º": 374, - "»": 119, - "»": 375, - "¼": 120, - "¼": 376, - "½": 121, - "½": 377, - "½ï¸ı": 31333, - "¾": 122, - "¾": 378, - "¿": 123, - "¿": 379, - "À": 124, - "À": 380, - "Á": 125, - "Á": 381, - "Â": 126, - "Â": 382, - "¡": 26868, - "¡": 10830, - "¡¡": 45505, - "¢": 41359, - "£": 31117, - "£": 1950, - "Â¥": 20199, - "¨": 19957, - "¨¨": 23089, - "¨¨¨¨": 41223, - "©": 31148, - "©": 5811, - "«": 14434, - "®": 30857, - "®": 8436, - "¯": 38682, - "¯": 43593, - "¯\\": 44096, - "¯\\_(": 45115, - "°": 21305, - "°": 6858, - "²": 41175, - "´": 30560, - "´": 12559, - "·": 14844, - "º": 28059, - "»": 31642, - "»": 7599, - "½": 33613, - "¿": 44559, - "¿": 17133, - "ÂŃ": 22618, - "Ã": 127, - "Ã": 383, - "á": 7261, - "á": 22229, - "án": 38340, - "án": 21385, - "â": 26170, - "ã": 19339, - "ão": 21141, - "ä": 10896, - "ä": 47276, - "än": 42787, - "Ã¥": 23176, - "æ": 42495, - "ç": 10067, - "ça": 22711, - "è": 12138, - "è": 37761, - "ère": 30272, - "ès": 41210, - "é": 3459, - "é": 4166, - "éal": 45251, - "ée": 13489, - "és": 20507, - "ê": 27515, - "ë": 29526, - "ë": 40520, - "î": 48704, - "ï": 35689, - "ñ": 6445, - "ña": 17753, - "ño": 16574, - "ños": 40104, - "ó": 8891, - "ó": 27733, - "ón": 13926, - "ô": 26815, - "ö": 7255, - "ö": 37423, - "ör": 31762, - "ø": 17483, - "ø": 45598, - "ú": 17963, - "ú": 36019, - "ü": 6522, - "ü": 47177, - "ür": 26132, - "ÃĹ": 16165, - "Ãł": 36149, - "Ãł": 21259, - "ÃŃ": 8366, - "ÃŃ": 23928, - "ÃŃa": 16609, - "ÃŃn": 33623, - "Ä": 128, - "Ä": 384, - "ı": 18562, - "ı": 41901, - "Äģ": 23134, - "Äĩ": 31719, - "Äį": 45414, - "ÄŁ": 26540, - "Å": 129, - "Å": 385, - "Å¡": 35621, - "ÅĤ": 40419, - "Åį": 41267, - "ÅŁ": 21254, - "ÅŁ": 40706, - "Æ": 130, - "Æ": 386, - "Ç": 131, - "Ç": 387, - "È": 132, - "È": 388, - "É": 133, - "É": 389, - "Ê": 134, - "Ê": 390, - "Ë": 135, - "Ë": 391, - "Ì": 136, - "Ì": 392, - "Ìĩ": 16384, - "Í": 137, - "Í": 393, - "Î": 138, - "Î": 394, - "Ï": 139, - "Ï": 395, - "Ïī": 38065, - "Ð": 140, - "Ð": 396, - "а": 16912, - "а": 27080, - "аÐ": 31090, - "в": 39813, - "е": 22176, - "и": 16701, - "иÐ": 29503, - "к": 27152, - "л": 47611, - "м": 38018, - "н": 22705, - "о": 13506, - "о": 29386, - "оÐ": 20978, - "од": 38416, - "оÑĤ": 28599, - "п": 26302, - "пÑĢи": 46321, - "пÑĢиÑĢода": 48150, - "Ñ": 141, - "Ñ": 397, - "ÑĢ": 16370, - "ÑĢи": 41092, - "ÑĢод": 47039, - "ÑĢода": 47929, - "Ñģ": 23669, - "ÑĤ": 17875, - "Ñĥ": 39729, - "ÑĦ": 27993, - "ÑĦоÑĤ": 35155, - "ÑĦоÑĤо": 38981, - "Ñĭ": 45001, - "Ò": 142, - "Ò": 398, - "Ó": 143, - "Ó": 399, - "Ô": 144, - "Ô": 400, - "Õ": 145, - "Õ": 401, - "Ö": 146, - "Ö": 402, - "×": 147, - "×": 403, - "Ø": 148, - "Ø": 404, - "ا": 6042, - "ا": 22625, - "اØ": 13189, - "ار": 40137, - "اÙ": 8453, - "اÙĦ": 12973, - "اÙħ": 47626, - "اÙĨ": 42773, - "اÙĨ": 33200, - "ب": 16378, - "ب": 35330, - "Ø©": 20915, - "ت": 18197, - "ت": 44333, - "ج": 26375, - "Ø®": 41495, - "د": 19872, - "د": 35566, - "ر": 10948, - "ر": 24933, - "رÙĬ": 43273, - "ز": 36169, - "س": 17856, - "Ø´": 28770, - "ص": 27271, - "Ø·": 32050, - "ع": 18843, - "غ": 48510, - "ØŃ": 25722, - "Ù": 149, - "Ù": 405, - "Ùģ": 24112, - "ÙĤ": 27585, - "Ùĥ": 33499, - "ÙĦ": 14251, - "ÙĦ": 37899, - "Ùħ": 12986, - "Ùħ": 29945, - "ÙĨ": 16655, - "ÙĨ": 25386, - "Ùĩ": 34274, - "Ùĩ": 31343, - "ÙĪ": 12203, - "ÙĪ": 38310, - "ÙĪØ±": 48242, - "ÙĬ": 12046, - "ÙĬ": 23853, - "Ú": 150, - "Ú": 406, - "Ú©": 26475, - "Û": 151, - "Û": 407, - "Ûģ": 40480, - "ÛĮ": 21452, - "ÛĮ": 32703, - "Ü": 152, - "Ü": 408, - "Ý": 153, - "Ý": 409, - "Þ": 154, - "Þ": 410, - "ß": 155, - "ß": 411, - "à": 156, - "à": 412, - "à¤": 3124, - "त": 27263, - "द": 29552, - "न": 26090, - "प": 44149, - "ब": 43599, - "म": 48254, - "म": 26774, - "य": 37299, - "र": 39136, - "र": 19052, - "ल": 30881, - "व": 39545, - "श": 43181, - "स": 28505, - "ह": 29446, - "ा": 37973, - "ा": 13343, - "ि": 26721, - "à¤Ĥ": 30833, - "à¤ķ": 22067, - "à¤Ĺ": 42598, - "à¤ľ": 39561, - "à¥": 7410, - "à¥Ģ": 45791, - "à¥Ģ": 25751, - "à¥ģ": 39653, - "à¥ĩ": 48612, - "à¥ĩ": 25130, - "à¥ĭ": 34452, - "à¥į": 19389, - "à¦": 11322, - "া": 41532, - "à§": 26339, - "à¨": 15741, - "à©": 32086, - "àª": 22990, - "à«": 48347, - "à¬": 32791, - "à®": 6022, - "த": 34691, - "ன": 43394, - "ப": 47388, - "à®®": 35463, - "à®°": 43270, - "ல": 47705, - "ா": 32831, - "ி": 27126, - "à®ķ": 36168, - "à®Ł": 45263, - "à¯": 11259, - "à¯ģ": 33115, - "à¯į": 16631, - "à°": 12100, - "à±": 23550, - "à±į": 46098, - "à²": 9992, - "ಿ": 47797, - "à³": 20745, - "à³į": 36148, - "à´": 15418, - "àµ": 27392, - "àµį": 45266, - "à¶": 29881, - "à·": 30766, - "à¸": 1777, - "ม": 26137, - "ม": 29570, - "ย": 27241, - "ย": 33091, - "ร": 32225, - "ร": 27331, - "ล": 34696, - "ล": 32746, - "ว": 26990, - "ว": 30245, - "ส": 37883, - "ส": 35737, - "ห": 33064, - "ะ": 43920, - "ะ": 49234, - "ั": 14978, - "า": 11529, - "า": 38476, - "าà¸": 12330, - "ิ": 17092, - "ี": 22421, - "ี": 20278, - "ีà¹Ī": 31511, - "ื": 47991, - "ุ": 30524, - "ู": 35273, - "à¸ģ": 30767, - "à¸ģà¸": 31474, - "à¸Ħ": 31757, - "à¸Ħà¸": 39628, - "à¸ĩ": 24603, - "à¸ĩ": 33382, - "à¸Ī": 47608, - "à¸Ĭ": 46324, - "à¸Ķ": 31107, - "à¸Ķ": 38825, - "à¸ķ": 40273, - "à¸ķ": 41108, - "à¸Ĺ": 36171, - "à¸Ļ": 17474, - "à¸Ļ": 17639, - "à¸Ļà¸": 23121, - "à¸ļ": 33859, - "à¸ļ": 39616, - "à¸ŀ": 48171, - "à¸Ń": 13398, - "à¸Ń": 32818, - "à¸Ńà¸": 14649, - "à¸Ńà¸ĩ": 46622, - "à¹": 4484, - "à¹Ģ": 13729, - "à¹Ģà¸": 14076, - "à¹ģà¸": 23916, - "à¹Ĥ": 33118, - "à¹ĥ": 40962, - "à¹Ħà¸": 31718, - "à¹ĩ": 38699, - "à¹Ī": 11722, - "à¹ī": 13123, - "à¹Į": 28353, - "à¼": 46186, - "à½": 39219, - "á": 157, - "á": 413, - "á´": 19036, - "áµ": 17330, - "áĢ": 45932, - "áĥ": 24829, - "áĥ¦": 32193, - "â": 158, - "â": 414, - "â¤": 25087, - "⤵ï¸ı": 36026, - "â¬": 7930, - "â¬ħï¸ı": 42111, - "â¬Ĩ": 27718, - "â¬Ĩï¸ı": 32798, - "â¬ĩ": 10917, - "â¬ĩ": 39370, - "â¬ĩï¸ı": 25621, - "â¬ĩï¸ı": 13984, - "â¬ĩï¸ıâ¬ĩï¸ı": 40159, - "âĢ": 728, - "âĢ¢": 9485, - "âĢ¢": 2701, - "âĢ¢âĢ¢": 15006, - "âĢ¢âĢ¢": 47575, - "âĢ¢âĢ¢âĢ¢âĢ¢": 27502, - "âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢": 48630, - "â̦": 7095, - "â̦\"": 20215, - "â̦..": 47779, - "â̦.": 18615, - "â̦/": 29842, - "â̦": 959, - "â̦â̦": 40066, - "â̲": 32633, - "â̳": 25061, - "â̼": 6578, - "â̼ï¸ı": 15622, - "â̼ï¸ı": 8310, - "â̼ï¸ıâ̼ï¸ı": 33218, - "âĢĭ": 17086, - "âĢĭ": 9844, - "âĢį": 4244, - "âĢįâĻ": 5177, - "âĢįâĻĢï¸ı": 18897, - "âĢįâĻĢï¸ı": 9605, - "âĢįâĻĤ": 8832, - "âĢįâĻĤï¸ı": 21779, - "âĢįâĻĤï¸ı": 10613, - "âĢİ": 31001, - "âĢIJ": 34512, - "âĢĵ": 21070, - "âĢĵ": 1224, - "âĢĶ": 6718, - "âĢĶ": 2005, - "âĢĶ>": 26341, - "âĢĶ@": 28470, - "âĢĶâĢĶ": 10037, - "âĢĶâĢĶ": 44800, - "âĢĶâĢĶâĢĶâĢĶ": 17797, - "âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ": 34432, - "âĢķ": 14236, - "âģ": 1667, - "âģ£": 31089, - "âģ£": 16845, - "âģ¦": 2773, - "âģ¦": 34855, - "âģ¦@": 2859, - "âģ¦âģ¦@": 27783, - "âģ©": 20097, - "âģ©,": 48749, - "âģ©.": 35777, - "âģ©": 2918, - "âģīï¸ı": 46534, - "âģł": 23881, - "âģł": 13503, - "âģłâģł": 33488, - "âĤ": 5227, - "âĤ¬": 34919, - "âĤ¬": 6309, - "âĤ¹": 21777, - "âĥ": 2805, - "âĥ£": 11250, - "âĥ£": 3076, - "âĥ£@": 48291, - "âĦ": 8604, - "âĦ¢": 29438, - "âĦ¢": 11675, - "âĦ¹": 45462, - "âĨ": 6059, - "âĨĴ": 7481, - "âĨĵ": 41603, - "âĩ": 27228, - "âĪ": 17788, - "âī": 22684, - "âīĪ": 45451, - "âĮ": 17848, - "âĮļ": 31301, - "âĮļï¸ı": 35931, - "âı": 7960, - "âı©": 40847, - "âı°": 12714, - "âı±": 33149, - "âı³": 47617, - "âĵ": 27400, - "âĶ": 13389, - "âĶĢ": 45139, - "âĶģ": 42022, - "âķ": 17027, - "âķIJ": 48039, - "âĸ": 4168, - "âĸª": 21203, - "âĸª": 36628, - "âĸªï¸ı": 24974, - "âĸ«": 39478, - "âĸ¬": 33798, - "âĸ¬âĸ¬": 36975, - "âĸ¶": 12509, - "âĸ¶": 21126, - "âĸ¶ï¸ı": 14442, - "âĸº": 46061, - "âĸº": 12086, - "âĸ½": 45634, - "âĸł": 36791, - "âĹ": 9323, - "âĹĨ": 48961, - "âĹı": 26999, - "âĺ": 1741, - "âĺ®": 45851, - "âĺ¹": 28811, - "âĺ¹ï¸ı": 39605, - "âĺº": 5010, - "âĺº": 8703, - "âĺºâĺº": 46051, - "âĺºï¸ı": 11506, - "âĺºï¸ı": 7779, - "âĺºï¸ıâĺºï¸ı": 41315, - "âĺ¼": 38877, - "âĺĢ": 32146, - "âĺĢ": 22242, - "âĺĢï¸ı": 12817, - "âĺĢï¸ı": 8219, - "âĺĢï¸ıâĺĢï¸ı": 44550, - "âĺģ": 25195, - "âĺģï¸ı": 35197, - "âĺĥ": 38972, - "âĺħ": 9339, - "âĺħ": 10643, - "âĺħâĺħ": 12681, - "âĺħâĺħ": 36644, - "âĺħâĺħâĺħâĺħ": 34431, - "âĺħâĺħâĺħâĺħ": 44034, - "âĺħâĺħâĺħâĺħâĺħ": 45984, - "âĺĨ": 23941, - "âĺĨ": 13439, - "âĺİ": 24045, - "âĺİ": 45493, - "âĺİï¸ı": 27219, - "âĺij": 20983, - "âĺij": 42300, - "âĺijï¸ı": 22291, - "âĺĶï¸ı": 31238, - "âĺķ": 11454, - "âĺķ": 26561, - "âĺķï¸ı": 25839, - "âĺķï¸ı": 15499, - "âĺĺ": 23483, - "âĺĺï¸ı": 31454, - "âĺĿ": 21982, - "âĺĿï¸ı": 38891, - "âĺŀ": 31255, - "âĺłï¸ı": 34672, - "âĻ": 1548, - "âĻ¡": 11091, - "âĻ¡": 6251, - "âĻ¡âĻ¡": 22360, - "âĻ¡âĻ¡": 34267, - "âĻ¡âĻ¡âĻ¡": 36611, - "âϤ": 47435, - "âĻ¥": 4622, - "âĻ¥": 3405, - "âĻ¥âĻ¥": 12975, - "âĻ¥âĻ¥": 19604, - "âĻ¥âĻ¥âĻ¥": 23255, - "âĻ¥âĻ¥âĻ¥âĻ¥": 49020, - "âĻ¥ï¸ı": 17774, - "âĻ¥ï¸ı": 10561, - "âĻ¥ï¸ıâĻ¥ï¸ı": 40309, - "âϦ": 32376, - "âϦ": 47547, - "âĻ©": 30339, - "âĻ©âĻ«": 31636, - "âĻª": 27364, - "âĻª": 12382, - "âĻ«": 39217, - "âĻ«": 10814, - "âϬ": 24753, - "âĻ»": 39611, - "âĻ»ï¸ı": 46075, - "âļ": 2234, - "âļ¡": 40098, - "âļ¡": 20712, - "âļ¡ï¸ı": 19500, - "âļ¡ï¸ı": 11605, - "âļ¡ï¸ıâļ¡ï¸ı": 45922, - "âļª": 11922, - "âļª": 36373, - "âļªï¸ı": 22251, - "âļªï¸ı": 17885, - "âļ«": 15374, - "âļ«ï¸ı": 26529, - "âļ«ï¸ı": 24649, - "âļ½": 4867, - "âļ½": 13173, - "âļ½âļ½": 43259, - "âļ½ï¸ı": 11342, - "âļ½ï¸ı": 6768, - "âļ½ï¸ıâļ½ï¸ı": 30358, - "âļ½ï¸ıâļ½ï¸ı": 44148, - "âļ¾": 11314, - "âļ¾": 34717, - "âļ¾ï¸ı": 24727, - "âļ¾ï¸ı": 14858, - "âļĵ": 23522, - "âļĵï¸ı": 35299, - "âļĶï¸ı": 29361, - "âļľ": 47491, - "âļł": 39203, - "âļłï¸ı": 40966, - "âļłï¸ı": 15596, - "âĽ": 7956, - "âĽ³ï¸ı": 29204, - "âĽĦ": 30668, - "âĽĦï¸ı": 45465, - "âľ": 1508, - "⾨": 7181, - "⾨": 3531, - "⾨⾨": 35174, - "⾨⾨": 21985, - "⾨⾨⾨": 39424, - "âľĤ": 38602, - "âľħ": 29544, - "âľħ": 5564, - "âľĪ": 10682, - "âľĪ": 30712, - "âľĪï¸ı": 26176, - "âľĪï¸ı": 13413, - "âľĬ": 12392, - "âľĬ": 17819, - "âľĬðŁı½": 48547, - "âľĬðŁı¾": 41185, - "âľĭ": 39383, - "âľĭ": 30239, - "âľĮ": 6419, - "âľĮ": 12656, - "âľĮï¸ı": 21906, - "âľĮï¸ı": 12239, - "âľĮðŁı»": 30538, - "âľĮðŁı¼": 30588, - "âľį": 20872, - "âľįï¸ı": 30888, - "âľı": 32574, - "âľıï¸ı": 40724, - "âľĵ": 36700, - "âľĶ": 47200, - "âľĶ": 13749, - "âľĶï¸ı": 40544, - "âľĶï¸ı": 9191, - "âľĸï¸ı": 44133, - "âľĿ": 42220, - "âĿ": 1045, - "âĿ£": 37007, - "âĿ£": 25623, - "âĿ£ï¸ı": 25240, - "âĿ¤": 1266, - "âĿ¤": 2720, - "âĿ¤âĿ¤": 9033, - "âĿ¤âĿ¤": 14058, - "âĿ¤âĿ¤âĿ¤": 16708, - "âĿ¤âĿ¤âĿ¤âĿ¤": 37918, - "âĿ¤âĿ¤âĿ¤âĿ¤": 43970, - "âĿ¤ï¸ı": 2626, - "âĿ¤ï¸ı#": 30281, - "âĿ¤ï¸ı.": 45326, - "âĿ¤ï¸ı": 1752, - "âĿ¤ï¸ı@": 31187, - "âĿ¤ï¸ıâĿ¤ï¸ı": 6713, - "âĿ¤ï¸ıâĿ¤ï¸ı": 10363, - "âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı": 12282, - "âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı": 39167, - "âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı": 29880, - "âĿ¤ï¸ıðŁĴĻ": 37380, - "âĿ¤ï¸ıðŁĺį": 37272, - "âĿ¤ï¸ıðŁĺĺ": 41800, - "âĿ¤ðŁĺį": 49120, - "âĿ¥": 36914, - "âĿĦ": 8501, - "âĿĦ": 30494, - "âĿĦï¸ı": 16834, - "âĿĦï¸ı": 12402, - "âĿĦï¸ıâĿĦï¸ı": 41626, - "âĿĮ": 44485, - "âĿĮ": 17975, - "âĿĵ": 29791, - "âĿĹ": 12868, - "âĿĹ": 29079, - "âĿĹï¸ı": 28642, - "âĿĹï¸ı": 17391, - "âĿĿ": 46951, - "âŀ": 3257, - "âŀ¡": 12854, - "âŀ¡ï¸ı": 31860, - "âŀ¡ï¸ı": 4956, - "âŀ¤": 18651, - "âŀķ": 46526, - "âŀĸ": 21327, - "âŀĸ": 34902, - "âŀĸâŀĸ": 23316, - "âŀĸâŀĸâŀĸâŀĸ": 40401, - "âŀľ": 23775, - "âł": 5689, - "âłĢ": 9691, - "âłĢ": 8621, - "âłĢâłĢ": 11466, - "âłĢâłĢ": 39092, - "âłĢâłĢâłĢâłĢ": 20976, - "âłĢâłĢâłĢâłĢâłĢâłĢâłĢâłĢ": 46063, - "âŃ": 5527, - "âŃIJ": 6410, - "âŃIJ": 19012, - "âŃIJâŃIJ": 32663, - "âŃIJï¸ı": 12427, - "âŃIJï¸ı": 10251, - "âŃIJï¸ıâŃIJï¸ı": 18640, - "âŃIJï¸ıâŃIJï¸ıâŃIJï¸ı": 40746, - "ã": 159, - "ã": 415, - "ãĢ": 4092, - "ãĢģ": 45262, - "ãĢĤ": 38060, - "ãĢĤ": 38000, - "ãĢĬ": 39920, - "ãĢĭ": 32898, - "ãĢĮ": 18116, - "ãĢį": 19149, - "ãĢİ": 26947, - "ãĢı": 30293, - "ãĢIJ": 12534, - "ãĢij": 12990, - "ãĢľ": 39581, - "ãģ": 4813, - "ãģ¦": 48029, - "ãģ¨": 34671, - "ãģ¨ç¹ĭãģ": 47310, - "ãģ¨ç¹ĭãģĮãĤĬãģŁãģĦ": 48290, - "ãģª": 29104, - "ãģ®": 21575, - "ãģ·": 44130, - "ãģĦ": 33523, - "ãģĦ": 38850, - "ãģĨ": 44235, - "ãģį": 42184, - "ãĤ": 3909, - "ãĤ¢": 26560, - "ãĤ¤": 19319, - "ãĤ¤ãĥ": 36294, - "ãĤ«": 37367, - "ãĤ¯": 31574, - "ãĤ·": 37665, - "ãĤ¸": 32234, - "ãĤ¸ãĥ": 43491, - "ãĤ¹": 22694, - "ãĤ¹": 39220, - "ãĤ¹ãĥ": 32421, - "ãĤ¿": 34941, - "ãĤĬãģ": 40500, - "ãĤĮ": 45211, - "ãĤŃ": 47121, - "ãĥ": 2429, - "ãĥ©": 23007, - "ãĥª": 32115, - "ãĥ«": 33257, - "ãĥ¬": 32965, - "ãĥ³": 17671, - "ãĥ³": 26875, - "ãĥ³ãĤ": 45105, - "ãĥ³ãĥ": 25914, - "ãĥ»": 8415, - "ãĥ»": 11158, - "ãĥ»ãĥ»": 13949, - "ãĥ»ãĥ»ãĥ»": 14234, - "ãĥ¼": 13457, - "ãĥ¼": 30391, - "ãĥ¼ãĥ": 18584, - "ãĥĥ": 28902, - "ãĥĦ": 32173, - "ãĥĪ": 42384, - "ãĥİ": 39967, - "ãĥķãĤ": 33371, - "ãĥŀ": 48924, - "ãĥŃ": 35827, - "ãħ": 5947, - "ãħ¤": 21096, - "ãħ¤ãħ¤": 22583, - "ãħ¤ãħ¤ãħ¤ãħ¤": 39329, - "ãħĭ": 13052, - "ãħĭ": 25108, - "ãħĭãħĭ": 16604, - "ãħĭãħĭ": 42581, - "ãħĭãħĭãħĭ": 46407, - "ãħĭãħĭãħĭãħĭ": 39362, - "ãħł": 16089, - "ãħł": 25781, - "ãħłãħł": 22021, - "ãħłãħł": 34398, - "ãħłãħłãħłãħł": 47028, - "ä": 160, - "ä": 416, - "ä¸": 19759, - "ä¹": 41854, - "äº": 21078, - "人": 36839, - "ä»": 37743, - "ä½": 47466, - "å": 161, - "å": 417, - "å¤": 23170, - "å¥": 29290, - "å®": 27047, - "å°": 34720, - "å±": 46096, - "å¸": 42021, - "å¹": 38780, - "åħ": 34314, - "åĨ": 27972, - "åĨĻ": 44653, - "åĪ": 42748, - "åĭ": 47505, - "åı": 34517, - "åIJ": 41673, - "åĽ": 39027, - "åľ": 37746, - "åŃ": 35751, - "æ": 162, - "æ": 418, - "æĸ": 29032, - "æĹ": 22265, - "æĹ¥": 39121, - "æĹ¥": 37156, - "æĺ": 42891, - "æĻ": 48132, - "æľ": 19277, - "æľ¬": 44353, - "æĿ": 27667, - "æĿ±": 48338, - "ç": 163, - "ç": 419, - "ç¥": 26369, - "ç¥Ń": 42557, - "çµ": 37810, - "ç¹": 43431, - "ç¹ĭãģ": 45930, - "çĶ": 20211, - "çĶŁ": 33375, - "çľ": 33440, - "羣": 41570, - "è": 164, - "è": 420, - "èª": 34002, - "èªķ": 41293, - "é": 165, - "é": 421, - "éģ": 44854, - "éĩ": 38283, - "ê": 166, - "ê": 422, - "ê°": 21122, - "ê°ĵ": 41076, - "ê°ĵìĦ¸ë¸IJ": 41689, - "ê°ķ": 45758, - "ê²": 35555, - "ê³": 36216, - "êµ": 31871, - "ê·": 42680, - "ê¸": 32495, - "ê¹": 24531, - "ê¹Ģ": 25203, - "ë": 167, - "ë": 423, - "ë¦": 24621, - "리": 47649, - "ë§": 28024, - "ë§Ī": 40027, - "ëª": 36311, - "ë¯": 19528, - "민": 34442, - "민": 44632, - "ë°": 15810, - "ë°©": 23273, - "ë°©íĥ": 25081, - "ë°©íĥĦ": 25641, - "ë°©íĥĦìĨĮëħĦëĭ": 26068, - "ë°©íĥĦìĨĮëħĦëĭ¨": 27129, - "ë°ķ": 40988, - "ë²": 48267, - "ë³": 44693, - "ë¹": 24193, - "ëĤ": 27252, - "ëĤĺ": 48484, - "ëĭ": 13094, - "ëĭ¤": 46680, - "ëĭĪ": 33708, - "ëį": 45543, - "ëı": 31972, - "ëĵ": 30850, - "ëĿ": 44317, - "ì": 168, - "ì": 424, - "ì£": 39856, - "주": 45161, - "ì¤": 31153, - "ì§": 16279, - "ì§Ģ": 28836, - "ì§Ħ": 38890, - "ì°": 40742, - "ì¶": 42476, - "ì¶ķ": 46403, - "ì¶ķíķĺ": 47866, - "ì¹": 45088, - "ìĤ": 31061, - "ìĥ": 30587, - "ìĥĿ": 47858, - "ìĦ": 15074, - "ìĦ¸ë": 29254, - "ìĦ¸ë¸": 29658, - "ìĦ¸ë¸IJ": 41415, - "ìĨ": 15115, - "ìĨĮë": 20515, - "ìĨĮëħ": 21391, - "ìĨĮëħĦëĭ": 25887, - "ìĪ": 32757, - "ìĬ": 12125, - "ìĬ¤": 20305, - "ìĬ¤": 23829, - "ìĭ": 23924, - "ìķ": 16071, - "ìķĦ": 23233, - "ìĸ": 31625, - "ìĹ": 13252, - "ìĹIJ": 37622, - "ìĹij": 31036, - "ìĹijìĨ": 42763, - "ìĹijìĨĮ": 45606, - "ìĺ": 21144, - "ìĻ": 39405, - "ìļ": 18541, - "ìļ°": 38415, - "ìļ°": 49344, - "ìĽ": 22543, - "ìĽIJ": 36495, - "ìľ": 20909, - "ìľł": 42890, - "ìĿ": 8276, - "ìĿ´": 12286, - "ìĿ´": 34746, - "ìĿ´ì": 37590, - "ìĿ¼": 43406, - "ìŀ": 20849, - "ìł": 20580, - "ìłķ": 34725, - "í": 169, - "í": 425, - "íģ": 35641, - "íģ¬": 45832, - "íĤ": 43565, - "íĥ": 15012, - "íĥĢ": 41126, - "íĥľ": 37663, - "íĬ": 23215, - "íĬ¸": 48974, - "íĬ¸": 39820, - "íĭ": 34350, - "íĶ": 29450, - "íķ": 15197, - "íķ´": 35286, - "íķĺ": 33992, - "íĺ": 15962, - "íĺ¸": 39657, - "íĺĦ": 34645, - "íĻ": 31882, - "î": 170, - "î": 426, - "îĢ": 36288, - "îĦ": 35368, - "îĮ": 41006, - "îIJ": 16929, - "îIJĴ": 40100, - "ï": 171, - "ï": 427, - "ï¸": 842, - "ï¸İ": 24029, - "ï¸ı": 1392, - "ï¸ı#": 46997, - "ï¸ı:": 32604, - "ï¸ı": 1001, - "ï¸ı@": 34600, - "ï¸ıâĥ£": 17394, - "ï¸ıâĥ£-": 40376, - "ï¸ıâĥ£": 4603, - "ï¿": 27850, - "�": 47356, - "�": 39802, - "ð": 172, - "ð": 428, - "ðĿ": 6874, - "ðĿIJ": 15889, - "ðĿij": 43794, - "ðĿĴ": 43387, - "ðĿĵ": 47110, - "ðĿĹ": 18865, - "ðĿĺ": 26109, - "ðĿĻ": 29415, - "ðŁ": 558, - "ð٤": 1793, - "ðŁ¤£": 9665, - "ðŁ¤£": 9909, - "ðŁ¤£ðŁ¤£": 16430, - "ðŁ¤£ðŁ¤£": 31009, - "ðŁ¤£ðŁ¤£ðŁ¤£": 32262, - "ðŁ¤¤": 39550, - "ðŁ¤¤": 26759, - "ðŁ¤¦": 17186, - "ðŁ¤§": 40983, - "ðŁ¤©": 27351, - "ðŁ¤©": 16074, - "ðŁ¤ª": 44230, - "ðŁ¤ª": 24920, - "ðŁ¤«": 47671, - "ðŁ¤¯": 37595, - "ðŁ¤·": 13185, - "ðŁ¤·ðŁı»âĢįâĻĢï¸ı": 46770, - "ð٤ij": 34801, - "ð٤ĵ": 36580, - "ð٤ĵ": 18928, - "ð٤Ķ": 12706, - "ð٤Ķ": 6497, - "ð٤Ķð٤Ķ": 28490, - "ð٤Ķð٤Ķð٤Ķ": 43361, - "ð٤ĸ": 46146, - "ð٤Ĺ": 16646, - "ð٤Ĺ": 10465, - "ð٤Ĺð٤Ĺ": 44321, - "ð٤ĺ": 10623, - "ð٤ĺ": 17288, - "ð٤ĺðŁı»": 46449, - "ð٤ĺðŁı»": 30891, - "ð٤ĺðŁı¼": 31458, - "ð٤ĺðŁı½": 49362, - "ð٤Ļ": 23800, - "ð٤Ļ": 39101, - "ð٤Ŀ": 35242, - "ð٤ŀ": 29463, - "ð٤ŀ": 38597, - "ðŁ¤Ł": 48509, - "ðŁ¤ł": 36737, - "ð٤Ń": 47289, - "ðŁ¥": 4156, - "ðŁ¥°": 29246, - "ðŁ¥°": 17597, - "ðŁ¥³": 45823, - "ðŁ¥³": 28055, - "ðŁ¥º": 43380, - "ðŁ¥º": 36858, - "ðŁ¥Ĥ": 43805, - "ðŁ¥Ĥ": 25212, - "ðŁ¥ĥ": 47790, - "ðŁ¥ĩ": 34372, - "ðŁ¥ĩ": 20069, - "ðŁ¥Ī": 35858, - "ðŁ¥ī": 36782, - "ðŁ¥Ĭ": 29275, - "ð٦": 6040, - "ð٦ģ": 36367, - "ð٦ģ": 26056, - "ð٦ĥ": 40184, - "ð٦Ħ": 37659, - "ð٦ħ": 28800, - "ð٦Ī": 48984, - "ð٦ĭ": 49325, - "ð٦ĭ": 28985, - "ð٧": 8792, - "ðŁ§¡": 30996, - "ðŁ§¡": 24578, - "ð٧IJ": 33549, - "ðŁħ": 22010, - "ðŁĨ": 9536, - "ðŁĨķ": 34956, - "ðŁĨĺ": 39868, - "ðŁĨļ": 16325, - "ðŁĩ": 1173, - "ðŁĩ¦": 12469, - "ðŁĩ¦": 28565, - "ðŁĩ¦ðŁĩ": 33196, - "ðŁĩ¦ðŁĩ·": 41629, - "ðŁĩ¦ðŁĩº": 25192, - "ðŁĩ§": 14660, - "ðŁĩ§ðŁĩ": 37342, - "ðŁĩ§ðŁĩª": 38794, - "ðŁĩ§ðŁĩ·": 28182, - "ðŁĩ¨": 8889, - "ðŁĩ¨ðŁĩ": 8989, - "ðŁĩ¨ðŁĩ¦": 34324, - "ðŁĩ¨ðŁĩ¦": 16364, - "ðŁĩ¨ðŁĩ³": 36819, - "ðŁĩ¨ðŁĩŃ": 41119, - "ðŁĩ©": 15222, - "ðŁĩ©ðŁĩ": 36350, - "ðŁĩ©ðŁĩª": 21531, - "ðŁĩª": 11428, - "ðŁĩª": 12331, - "ðŁĩªðŁĩ": 13917, - "ðŁĩªðŁĩ¸": 22177, - "ðŁĩªðŁĩº": 34655, - "ðŁĩ«": 12977, - "ðŁĩ«ðŁĩ·": 39109, - "ðŁĩ«ðŁĩ·": 16223, - "ðŁĩ¬": 8129, - "ðŁĩ¬ðŁĩ": 8354, - "ðŁĩ¬ðŁĩ§": 23762, - "ðŁĩ¬ðŁĩ§": 11559, - "ðŁĩ®": 8268, - "ðŁĩ®ðŁĩ": 8347, - "ðŁĩ®ðŁĩª": 34148, - "ðŁĩ®ðŁĩ³": 47299, - "ðŁĩ®ðŁĩ³": 23602, - "ðŁĩ®ðŁĩ¹": 42034, - "ðŁĩ®ðŁĩ¹": 17070, - "ðŁĩ¯": 20090, - "ðŁĩ¯ðŁĩ": 22924, - "ðŁĩ¯ðŁĩµ": 26527, - "ðŁĩ°": 28232, - "ðŁĩ±": 29533, - "ðŁĩ±ðŁĩ": 40941, - "ðŁĩ²": 16411, - "ðŁĩ²ðŁĩ": 17562, - "ðŁĩ²ðŁĩ½": 32073, - "ðŁĩ³": 16645, - "ðŁĩ³ðŁĩ": 17747, - "ðŁĩ³ðŁĩ±": 36747, - "ðŁĩµ": 12127, - "ðŁĩµðŁĩ": 13608, - "ðŁĩµðŁĩ°": 37764, - "ðŁĩµðŁĩ¹": 42621, - "ðŁĩµðŁĩŃ": 42777, - "ðŁĩ·": 16026, - "ðŁĩ·": 9869, - "ðŁĩ·ðŁĩº": 37902, - "ðŁĩ¸": 19447, - "ðŁĩ¸ðŁĩ": 33325, - "ðŁĩ¸ðŁĩª": 39260, - "ðŁĩ¹": 21810, - "ðŁĩ¹ðŁĩ": 36250, - "ðŁĩº": 4054, - "ðŁĩº": 17467, - "ðŁĩºðŁĩ": 4131, - "ðŁĩºðŁĩ¸": 8907, - "ðŁĩºðŁĩ¸": 5688, - "ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸": 18739, - "ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸": 41411, - "ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸": 43357, - "ðŁĩ¿": 25520, - "ðŁĩ¿ðŁĩ¦": 36982, - "ðŁĩŃ": 30370, - "ðŁĮ": 1576, - "ðŁĮ±": 35318, - "ðŁĮ±": 20665, - "ðŁĮ²": 34071, - "ðŁĮ²": 28154, - "ðŁĮ³": 44265, - "ðŁĮ³": 28543, - "ðŁĮ´": 20643, - "ðŁĮ´": 15968, - "ðŁĮµ": 40871, - "ðŁĮ·": 32328, - "ðŁĮ·": 24259, - "ðŁĮ¸": 16314, - "ðŁĮ¸": 10980, - "ðŁĮ¸ðŁĮ¸": 46210, - "ðŁĮ¹": 14990, - "ðŁĮ¹": 10662, - "ðŁĮ¹ðŁĮ¹": 37933, - "ðŁĮº": 27608, - "ðŁĮº": 19829, - "ðŁĮ»": 27196, - "ðŁĮ»": 19772, - "ðŁĮ¼": 36484, - "ðŁĮ¼": 26312, - "ðŁĮ¾": 39796, - "ðŁĮ¿": 27736, - "ðŁĮ¿": 18588, - "ðŁĮĢ": 34348, - "ðŁĮħ": 27547, - "ðŁĮĪ": 23038, - "ðŁĮĪ": 13042, - "ðŁĮĬ": 20465, - "ðŁĮĬ": 14302, - "ðŁĮĮ": 43393, - "ðŁĮį": 34931, - "ðŁĮį": 18641, - "ðŁĮİ": 31125, - "ðŁĮİ": 16969, - "ðŁĮı": 31527, - "ðŁĮIJ": 33071, - "ðŁĮĻ": 42330, - "ðŁĮĻ": 23283, - "ðŁĮļ": 49004, - "ðŁĮļ": 27877, - "ðŁĮŀ": 21152, - "ðŁĮŀ": 12980, - "ðŁĮŁ": 13196, - "ðŁĮŁ": 8542, - "ðŁĮŁðŁĮŁ": 26014, - "ðŁį": 2011, - "ðŁį¦": 47375, - "ðŁį¦": 32032, - "ðŁį©": 38379, - "ðŁįª": 38958, - "ðŁį«": 47994, - "ðŁį«": 33401, - "ðŁį°": 43732, - "ðŁį°": 30051, - "ðŁį³": 37441, - "ðŁį´": 41531, - "ðŁį´": 25338, - "ðŁį·": 24445, - "ðŁį·": 18072, - "ðŁį¸": 43058, - "ðŁį¸": 31217, - "ðŁį¹": 35598, - "ðŁįº": 31081, - "ðŁįº": 21590, - "ðŁį»": 22793, - "ðŁį»": 13167, - "ðŁį¾": 27294, - "ðŁį¾": 21656, - "ðŁįĢ": 22865, - "ðŁįĢ": 15764, - "ðŁįģ": 29837, - "ðŁįģ": 23075, - "ðŁįĤ": 35015, - "ðŁįĤ": 25721, - "ðŁįĥ": 27157, - "ðŁįĥ": 20147, - "ðŁįĩ": 48697, - "ðŁįĬ": 35001, - "ðŁįĬ": 28036, - "ðŁįĭ": 39543, - "ðŁįĮ": 44987, - "ðŁįį": 48946, - "ðŁįİ": 32069, - "ðŁįij": 32889, - "ðŁįĴ": 33160, - "ðŁįĵ": 44739, - "ðŁįĵ": 33456, - "ðŁįĶ": 46415, - "ðŁįĶ": 36031, - "ðŁįķ": 31469, - "ðŁįķ": 23904, - "ðŁįŃ": 42100, - "ðŁİ": 1165, - "ðŁİ£": 43158, - "ðŁİ¤": 23490, - "ðŁİ¤": 15690, - "ðŁİ¥": 22186, - "ðŁİ¥:": 43640, - "ðŁİ¥": 13233, - "ðŁİ§": 31254, - "ðŁİ§": 14266, - "ðŁİ¨": 31953, - "ðŁİ¨": 13461, - "ðŁİ©": 37701, - "ðŁİ«": 30331, - "ðŁİ¬": 36020, - "ðŁİ¬": 18150, - "ðŁİ®": 29312, - "ðŁİ¯": 23114, - "ðŁİµ": 27435, - "ðŁİµ": 14946, - "ðŁİ¶": 11755, - "ðŁİ¶": 6011, - "ðŁİ¶ðŁİ¶": 36283, - "ðŁİ¸": 29135, - "ðŁİ¸": 22122, - "ðŁİ¹": 43493, - "ðŁİ¼": 34949, - "ðŁİ¼": 23757, - "ðŁİ¾": 41982, - "ðŁİ¾": 24222, - "ðŁİĢ": 34347, - "ðŁİĢ": 20151, - "ðŁİģ": 18368, - "ðŁİģ": 13462, - "ðŁİĤ": 13026, - "ðŁİĤ": 10392, - "ðŁİĤðŁİĤ": 39338, - "ðŁİĥ": 22622, - "ðŁİĥ": 16780, - "ðŁİĦ": 12942, - "ðŁİĦ": 11267, - "ðŁİħ": 17685, - "ðŁİħ": 24276, - "ðŁİĨ": 39222, - "ðŁİĪ": 16142, - "ðŁİĪ": 14448, - "ðŁİĪðŁİī": 48049, - "ðŁİī": 4310, - "ðŁİī:": 17310, - "ðŁİī": 3986, - "ðŁİīðŁİ": 11473, - "ðŁİīðŁİĪ": 40499, - "ðŁİīðŁİĪ": 34008, - "ðŁİīðŁİī": 25159, - "ðŁİīðŁİī": 13450, - "ðŁİīðŁİīðŁİī": 20828, - "ðŁİīðŁİĬ": 31662, - "ðŁİīðŁİĬ": 30781, - "ðŁİĬ": 22763, - "ðŁİĬ": 22425, - "ðŁİĬðŁİī": 48801, - "ðŁİĵ": 28916, - "ðŁİĵ": 18744, - "ðŁİĻ": 29001, - "ðŁİĻ": 29753, - "ðŁİĻï¸ı": 44205, - "ðŁİŁ": 19248, - "ðŁİŁ": 21107, - "ðŁİŁï¸ı": 30243, - "ðŁİŃ": 28856, - "ðŁı": 1109, - "ðŁı¡": 27318, - "ðŁı³ï¸ı": 26844, - "ðŁı³ï¸ıâĢį": 27093, - "ðŁı³ï¸ıâĢįðŁĮĪ": 32610, - "ðŁı´": 39690, - "ðŁı´": 19704, - "ðŁı»": 5042, - "ðŁı»": 3702, - "ðŁı»âĢį": 46250, - "ðŁı»âĢįâĻĢï¸ı": 48391, - "ðŁı»âĢįâĻĢï¸ı": 23595, - "ðŁı»âĢįâĻĤï¸ı": 30984, - "ðŁı¼": 6193, - "ðŁı¼": 4027, - "ðŁı¼âĢįâĻĢï¸ı": 28955, - "ðŁı½": 8514, - "ðŁı½": 6114, - "ðŁı½âĢįâĻĢï¸ı": 37036, - "ðŁı½âĢįâĻĤï¸ı": 43157, - "ðŁı¾": 10230, - "ðŁı¾": 7778, - "ðŁı¾âĢįâĻĤï¸ı": 47189, - "ðŁı¿": 29854, - "ðŁı¿": 21094, - "ðŁıĢ": 13708, - "ðŁıĢ": 8813, - "ðŁıĢðŁıĢ": 43169, - "ðŁıģ": 29423, - "ðŁıģ": 17473, - "ðŁıĥ": 16820, - "ðŁıĥ": 32751, - "ðŁıħ": 25500, - "ðŁıĨ": 9585, - "ðŁıĨ": 5596, - "ðŁıĨðŁıĨ": 18946, - "ðŁıĨðŁıĨ": 38269, - "ðŁıĨðŁıĨðŁıĨ": 44484, - "ðŁıĩ": 45789, - "ðŁıĩ": 40288, - "ðŁıĪ": 16144, - "ðŁıĪ": 10477, - "ðŁıī": 26020, - "ðŁıĬ": 33061, - "ðŁıĬ": 47830, - "ðŁıĮ": 41116, - "ðŁıı": 32460, - "ðŁıIJ": 46334, - "ðŁıIJ": 29433, - "ðŁıĴ": 37756, - "ðŁıŁ": 35914, - "ðŁıŁ": 26472, - "ðŁıŁï¸ı": 42627, - "ðŁıł": 33727, - "ðŁIJ": 2074, - "ðŁIJ¢": 37049, - "ðŁIJ£": 39597, - "ðŁIJ¥": 42981, - "ðŁIJ¦": 37260, - "ðŁIJ¬": 44238, - "ðŁIJ¯": 34825, - "ðŁIJ¯": 26111, - "ðŁIJ°": 35378, - "ðŁIJ°": 25050, - "ðŁIJ±": 35710, - "ðŁIJ±": 22979, - "ðŁIJ´": 33509, - "ðŁIJ¶": 14466, - "ðŁIJ¶": 10631, - "ðŁIJ·": 38408, - "ðŁIJ¸": 45597, - "ðŁIJ¸": 40298, - "ðŁIJº": 44281, - "ðŁIJº": 31445, - "ðŁIJ»": 30750, - "ðŁIJ»": 25322, - "ðŁIJ¼": 46234, - "ðŁIJ¾": 16057, - "ðŁIJ¾": 11317, - "ðŁIJ¾ðŁIJ¾": 42202, - "ðŁIJī": 46908, - "ðŁIJĬ": 43974, - "ðŁIJį": 48903, - "ðŁIJį": 30177, - "ðŁIJİ": 48281, - "ðŁIJİ": 32726, - "ðŁIJIJ": 47735, - "ðŁIJIJ": 27954, - "ðŁIJij": 49389, - "ðŁIJķ": 41069, - "ðŁIJĺ": 38733, - "ðŁIJĿ": 30619, - "ðŁIJĿ": 20111, - "ðŁIJŁ": 42084, - "ðŁIJŁ": 29989, - "ðŁIJł": 42725, - "ðŁij": 964, - "ðŁij£": 39755, - "ðŁij§": 48938, - "ðŁij¨": 18966, - "ðŁij¨âĢį": 25023, - "ðŁij©": 18800, - "ðŁij©âĢį": 26304, - "ðŁij«": 47106, - "ðŁij«": 35457, - "ðŁij®": 42686, - "ðŁij¯": 25910, - "ðŁij¯": 20582, - "ðŁij¶": 26187, - "ðŁij¶": 33189, - "ðŁij¸": 26268, - "ðŁij¸": 36645, - "ðŁij¹": 46766, - "ðŁij»": 24625, - "ðŁij»": 16243, - "ðŁij¼": 25270, - "ðŁij¼": 31083, - "ðŁij½": 42677, - "ðŁij½": 26257, - "ðŁijĢ": 11524, - "ðŁijĢ": 5908, - "ðŁijĢðŁijĢ": 31561, - "ðŁijģ": 47796, - "ðŁijģ": 45705, - "ðŁijĦ": 47445, - "ðŁijħ": 31833, - "ðŁijħ": 24672, - "ðŁijĨ": 42975, - "ðŁijĨ": 45194, - "ðŁijĩ": 7662, - "ðŁijĩ": 7475, - "ðŁijĩðŁı»": 45811, - "ðŁijĩðŁı»": 32813, - "ðŁijĩðŁı¼": 37504, - "ðŁijĩðŁijĩ": 17915, - "ðŁijĩðŁijĩ": 31891, - "ðŁijĩðŁijĩðŁijĩ": 35627, - "ðŁijĪ": 32794, - "ðŁijĪ": 20832, - "ðŁijī": 9477, - "ðŁijī": 3988, - "ðŁijīðŁı»": 23481, - "ðŁijīðŁı¼": 27534, - "ðŁijīðŁı½": 38059, - "ðŁijīðŁijī": 41480, - "ðŁijĬ": 8897, - "ðŁijĬ": 9704, - "ðŁijĬðŁı»": 47393, - "ðŁijĬðŁı»": 29152, - "ðŁijĬðŁı¼": 49000, - "ðŁijĬðŁı¼": 30115, - "ðŁijĬðŁijĬ": 46521, - "ðŁijĭ": 19351, - "ðŁijĭ": 17686, - "ðŁijĮ": 4890, - "ðŁijĮ": 4494, - "ðŁijĮðŁı»": 31818, - "ðŁijĮðŁı»": 18606, - "ðŁijĮðŁı¼": 37655, - "ðŁijĮðŁı¼": 20031, - "ðŁijĮðŁı½": 35834, - "ðŁijĮðŁijĮ": 36139, - "ðŁijĮðŁijĮ": 21435, - "ðŁijĮðŁijĮðŁijĮ": 40876, - "ðŁijį": 4686, - "ðŁijį": 4201, - "ðŁijįðŁı»": 25803, - "ðŁijįðŁı»": 15129, - "ðŁijįðŁı¼": 37285, - "ðŁijįðŁı¼": 19689, - "ðŁijįðŁı½": 43722, - "ðŁijįðŁijį": 33012, - "ðŁijįðŁijį": 18997, - "ðŁijįðŁijįðŁijį": 37284, - "ðŁijİ": 39702, - "ðŁijİ": 32568, - "ðŁijı": 3802, - "ðŁijı": 4829, - "ðŁijıðŁı»": 19236, - "ðŁijıðŁı»": 17029, - "ðŁijıðŁı»ðŁijıðŁı»": 35254, - "ðŁijıðŁı¼": 24496, - "ðŁijıðŁı¼": 19979, - "ðŁijıðŁı¼ðŁijıðŁı¼": 46712, - "ðŁijıðŁı½": 40796, - "ðŁijıðŁı½": 33978, - "ðŁijıðŁı¾": 45450, - "ðŁijıðŁijı": 10356, - "ðŁijıðŁijı": 16706, - "ðŁijıðŁijıðŁijı": 17254, - "ðŁijIJ": 40877, - "ðŁijij": 14955, - "ðŁijij": 8717, - "ðŁijijðŁijij": 48532, - "ðŁijķ": 47865, - "ðŁijŁ": 41183, - "ðŁijł": 41264, - "ðŁijŃ": 34175, - "ðŁijŃ": 27943, - "ðŁĴ": 837, - "ðŁĴ¡": 24081, - "ðŁĴ£": 36862, - "ðŁĴ£": 29006, - "ðŁĴ¤": 34706, - "ðŁĴ¤": 25632, - "ðŁĴ¥": 12209, - "ðŁĴ¥": 7347, - "ðŁĴ¥ðŁĴ¥": 27396, - "ðŁĴ¥ðŁĴ¥": 39246, - "ðŁĴ¥ðŁĴ¥ðŁĴ¥": 48890, - "ðŁĴ¦": 21180, - "ðŁĴ¦": 14060, - "ðŁĴ¦ðŁĴ¦": 44469, - "ðŁĴ§": 34095, - "ðŁĴ¨": 27408, - "ðŁĴ¨": 17891, - "ðŁĴ©": 48621, - "ðŁĴ©": 28847, - "ðŁĴª": 5475, - "ðŁĴª": 6440, - "ðŁĴªðŁı»": 31669, - "ðŁĴªðŁı»": 21903, - "ðŁĴªðŁı¼": 32041, - "ðŁĴªðŁı¼": 20759, - "ðŁĴªðŁı½": 46380, - "ðŁĴªðŁı½": 31111, - "ðŁĴªðŁı¾": 39398, - "ðŁĴªðŁĴª": 24747, - "ðŁĴªðŁĴªðŁĴª": 39913, - "ðŁĴ«": 25770, - "ðŁĴ«": 12526, - "ðŁĴ¬": 30947, - "ðŁĴ¯": 10611, - "ðŁĴ¯": 7018, - "ðŁĴ¯ðŁĴ¯": 30234, - "ðŁĴ¯ðŁĴ¯": 44070, - "ðŁĴ°": 20454, - "ðŁĴ°": 14078, - "ðŁĴ°ðŁĴ°": 41747, - "ðŁĴµ": 47412, - "ðŁĴµ": 38041, - "ðŁĴ¸": 37696, - "ðŁĴ¸": 25957, - "ðŁĴ»": 33433, - "ðŁĴ»": 18135, - "ðŁĴ¿": 39541, - "ðŁĴĢ": 14888, - "ðŁĴĢ": 12158, - "ðŁĴĢðŁĴĢ": 30884, - "ðŁĴģ": 13997, - "ðŁĴģ": 14392, - "ðŁĴĥ": 9947, - "ðŁĴĥ": 14333, - "ðŁĴĥðŁı»": 38624, - "ðŁĴĥðŁĴĥ": 28041, - "ðŁĴĦ": 46116, - "ðŁĴĦ": 34571, - "ðŁĴħ": 27457, - "ðŁĴħ": 32414, - "ðŁĴī": 44316, - "ðŁĴī": 30503, - "ðŁĴĭ": 12217, - "ðŁĴĭ": 7417, - "ðŁĴĭðŁĴĭ": 29214, - "ðŁĴĮ": 40817, - "ðŁĴį": 35850, - "ðŁĴį": 24898, - "ðŁĴİ": 25938, - "ðŁĴİ": 15874, - "ðŁĴIJ": 27375, - "ðŁĴIJ": 20554, - "ðŁĴij": 49404, - "ðŁĴĵ": 20628, - "ðŁĴĵ": 12568, - "ðŁĴĵðŁĴĵ": 43505, - "ðŁĴĶ": 18880, - "ðŁĴĶ": 10704, - "ðŁĴĶðŁĴĶ": 44673, - "ðŁĴķ": 5412, - "ðŁĴķ": 3082, - "ðŁĴķðŁĴķ": 23106, - "ðŁĴķðŁĴķ": 14117, - "ðŁĴķðŁĴķðŁĴķ": 26772, - "ðŁĴĸ": 8466, - "ðŁĴĸ": 5582, - "ðŁĴĸðŁĴĸ": 19562, - "ðŁĴĸðŁĴĸ": 30595, - "ðŁĴĸðŁĴĸðŁĴĸ": 33915, - "ðŁĴĹ": 10148, - "ðŁĴĹ": 6690, - "ðŁĴĹðŁĴĹ": 47158, - "ðŁĴĹðŁĴĹ": 24064, - "ðŁĴĹðŁĴĹðŁĴĹ": 36990, - "ðŁĴĺ": 18223, - "ðŁĴĺ": 10816, - "ðŁĴĺðŁĴĺ": 40464, - "ðŁĴĻ": 5305, - "ðŁĴĻ": 4074, - "ðŁĴĻðŁĴĻ": 17833, - "ðŁĴĻðŁĴĻ": 27101, - "ðŁĴĻðŁĴĻðŁĴĻ": 30698, - "ðŁĴĻðŁĴĽ": 46804, - "ðŁĴĻðŁĴĽ": 26230, - "ðŁĴĻðŁĴľ": 47931, - "ðŁĴĻðŁĴľ": 42541, - "ðŁĴļ": 8102, - "ðŁĴļ": 6521, - "ðŁĴļðŁĴļ": 27497, - "ðŁĴļðŁĴļ": 46209, - "ðŁĴļðŁĴļðŁĴļ": 46182, - "ðŁĴļðŁĴĽ": 41232, - "ðŁĴĽ": 8221, - "ðŁĴĽ": 6233, - "ðŁĴĽðŁĴĻ": 36337, - "ðŁĴĽðŁĴļ": 37994, - "ðŁĴĽðŁĴĽ": 32420, - "ðŁĴľ": 6832, - "ðŁĴľ": 4882, - "ðŁĴľðŁĴľ": 17280, - "ðŁĴľðŁĴľ": 28211, - "ðŁĴľðŁĴľðŁĴľ": 31004, - "ðŁĴĿ": 36761, - "ðŁĴĿ": 22002, - "ðŁĴŀ": 14862, - "ðŁĴŀ": 8988, - "ðŁĴŀðŁĴŀ": 36448, - "ðŁĴŁ": 49394, - "ðŁĴŁ": 28828, - "ðŁĴŃ": 33848, - "ðŁĵ": 1497, - "ðŁĵ¢": 46560, - "ðŁĵ¢": 20901, - "ðŁĵ£": 48841, - "ðŁĵ£": 21282, - "ðŁĵ°:": 28952, - "ðŁĵ°": 14985, - "ðŁĵ±": 36104, - "ðŁĵ±": 20824, - "ðŁĵ²": 19363, - "ðŁĵ·": 6966, - "ðŁĵ·:": 8294, - "ðŁĵ·": 5551, - "ðŁĵ·@": 40032, - "ðŁĵ¸": 8401, - "ðŁĵ¸:": 10379, - "ðŁĵ¸": 6074, - "ðŁĵ¸@": 39660, - "ðŁĵ¹": 49251, - "ðŁĵº": 21792, - "ðŁĵº:": 29728, - "ðŁĵº": 10450, - "ðŁĵ»": 32711, - "ðŁĵ»": 15882, - "ðŁĵ½": 45361, - "ðŁĵħ": 21277, - "ðŁĵĨ": 23471, - "ðŁĵĪ": 23359, - "ðŁĵĬ": 22244, - "ðŁĵĭ": 46351, - "ðŁĵĮ": 22289, - "ðŁĵį": 25043, - "ðŁĵį:": 36845, - "ðŁĵį": 8903, - "ðŁĵĸ": 49003, - "ðŁĵĸ": 23043, - "ðŁĵļ": 25433, - "ðŁĵļ": 15566, - "ðŁĵĿ": 31888, - "ðŁĵĿ:": 48398, - "ðŁĵĿ": 15853, - "ðŁĵŀ": 24022, - "ðŁĶ": 1428, - "ðŁĶ¥": 3191, - "ðŁĶ¥#": 44354, - "ðŁĶ¥": 3016, - "ðŁĶ¥ðŁĶ¥": 5692, - "ðŁĶ¥ðŁĶ¥": 11771, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥": 11004, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥": 23408, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥": 30989, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥": 48401, - "ðŁĶ¥ðŁĶĹ": 35130, - "ðŁĶª": 47078, - "ðŁĶª": 34545, - "ðŁĶ«": 38116, - "ðŁĶ«": 20583, - "ðŁĶ¬": 44227, - "ðŁĶ®": 38077, - "ðŁĶ´": 12408, - "ðŁĶ´": 10854, - "ðŁĶ´âļªï¸ı": 46879, - "ðŁĶ´âļªï¸ı": 40055, - "ðŁĶµ": 17531, - "ðŁĶµ": 17193, - "ðŁĶµâļªï¸ı": 42412, - "ðŁĶ¶": 42880, - "ðŁĶ¶": 36222, - "ðŁĶ·": 37740, - "ðŁĶ¸": 24200, - "ðŁĶ¹": 19995, - "ðŁĶº": 45561, - "ðŁĶģ": 41299, - "ðŁĶĬ": 32580, - "ðŁĶĬ": 20502, - "ðŁĶİ": 44935, - "ðŁĶij": 35127, - "ðŁĶĴ": 44972, - "ðŁĶĶ": 45753, - "ðŁĶĹ": 47475, - "ðŁĶĹ": 14561, - "ðŁĶĺ": 38995, - "ðŁĶľ": 36011, - "ðŁĶĿ": 44387, - "ðŁĶĿ": 29506, - "ðŁķ": 7692, - "ðŁķº": 33958, - "ðŁķĬ": 42624, - "ðŁķĬ": 37760, - "ðŁĸ": 6269, - "ðŁĸ¤": 17603, - "ðŁĸ¤": 10860, - "ðŁĸ¥": 47990, - "ðŁĹ": 7045, - "ðŁĹ£": 33232, - "ðŁĹ£": 18583, - "ðŁĹ£ï¸ı": 37476, - "ðŁĹĵ": 34335, - "ðŁĹĵ": 28773, - "ðŁĹĵï¸ı": 39847, - "ðŁĺ": 668, - "ðŁĺ¡": 21968, - "ðŁĺ¡": 17452, - "ðŁĺ¡ðŁĺ¡": 37223, - "ðŁĺ¢": 14308, - "ðŁĺ¢": 9925, - "ðŁĺ¢ðŁĺ¢": 32923, - "ðŁĺ¢ðŁĺ¢": 47921, - "ðŁĺ£": 32718, - "ðŁĺ¤": 26872, - "ðŁĺ¤": 20740, - "ðŁĺ¥": 38383, - "ðŁĺ¥": 23951, - "ðŁĺ¨": 38080, - "ðŁĺ©": 9051, - "ðŁĺ©": 9494, - "ðŁĺ©ðŁĺ©": 22820, - "ðŁĺ©ðŁĺ©": 38031, - "ðŁĺ©ðŁĺ©ðŁĺ©": 49063, - "ðŁĺª": 38181, - "ðŁĺª": 22243, - "ðŁĺ«": 25141, - "ðŁĺ«": 22340, - "ðŁĺ¬": 23704, - "ðŁĺ¬": 14549, - "ðŁĺ®": 40163, - "ðŁĺ®": 21616, - "ðŁĺ¯": 37858, - "ðŁĺ°": 34728, - "ðŁĺ±": 10938, - "ðŁĺ±": 9055, - "ðŁĺ±ðŁĺ±": 22061, - "ðŁĺ±ðŁĺ±": 40767, - "ðŁĺ±ðŁĺ±ðŁĺ±": 40909, - "ðŁĺ²": 40460, - "ðŁĺ²": 24620, - "ðŁĺ³": 12047, - "ðŁĺ³": 8223, - "ðŁĺ³ðŁĺ³": 32592, - "ðŁĺ´": 23527, - "ðŁĺ´": 16415, - "ðŁĺ´ðŁĺ´": 49307, - "ðŁĺµ": 39368, - "ðŁĺ¶": 35207, - "ðŁĺ·": 37943, - "ðŁĺ·": 25759, - "ðŁĺ¸": 36912, - "ðŁĺ¹": 26477, - "ðŁĺ¹": 26573, - "ðŁĺ¹ðŁĺ¹": 46287, - "ðŁĺº": 40613, - "ðŁĺ»": 15453, - "ðŁĺ»": 12911, - "ðŁĺ»ðŁĺ»": 34414, - "ðŁĺ¼": 44245, - "ðŁĺ½": 45156, - "ðŁĺĢ": 12832, - "ðŁĺĢ": 7334, - "ðŁĺĢðŁĺĢ": 34503, - "ðŁĺģ": 6967, - "ðŁĺģ": 4821, - "ðŁĺģðŁĺģ": 37900, - "ðŁĺģðŁĺģ": 19213, - "ðŁĺģðŁĺģðŁĺģ": 29083, - "ðŁĺĤ": 1424, - "ðŁĺĤ)": 42643, - "ðŁĺĤ.": 42550, - "ðŁĺĤ": 1558, - "ðŁĺĤâĿ¤ï¸ı": 36412, - "ðŁĺĤðŁijĮ": 42000, - "ðŁĺĤðŁĺĤ": 2286, - "ðŁĺĤðŁĺĤ": 4112, - "ðŁĺĤðŁĺĤðŁĺĤ": 22233, - "ðŁĺĤðŁĺĤðŁĺĤ": 4887, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 9936, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 11522, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 19295, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 33415, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 48973, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 28504, - "ðŁĺĤðŁĺį": 43128, - "ðŁĺĤðŁĺŃ": 28965, - "ðŁĺĤðŁĺŃ": 25802, - "ðŁĺĥ": 14079, - "ðŁĺĥ": 8520, - "ðŁĺĥðŁĺĥ": 38358, - "ðŁĺĦ": 12141, - "ðŁĺĦ": 7624, - "ðŁĺĦðŁĺĦ": 32312, - "ðŁĺħ": 15245, - "ðŁĺħ": 9188, - "ðŁĺħðŁĺħ": 39078, - "ðŁĺĨ": 16541, - "ðŁĺĨ": 10943, - "ðŁĺĨðŁĺĨ": 39503, - "ðŁĺĩ": 21694, - "ðŁĺĩ": 13091, - "ðŁĺĪ": 14377, - "ðŁĺĪ": 9756, - "ðŁĺĪðŁĺĪ": 44473, - "ðŁĺī": 9740, - "ðŁĺī": 4955, - "ðŁĺīðŁĺī": 40430, - "ðŁĺĬ": 4692, - "ðŁĺĬ": 3020, - "ðŁĺĬâĿ¤ï¸ı": 43606, - "ðŁĺĬðŁĺĬ": 12838, - "ðŁĺĬðŁĺĬ": 20842, - "ðŁĺĬðŁĺĬðŁĺĬ": 28685, - "ðŁĺĬðŁĺĬðŁĺĬðŁĺĬ": 35519, - "ðŁĺĭ": 12391, - "ðŁĺĭ": 7203, - "ðŁĺĭðŁĺĭ": 33304, - "ðŁĺĮ": 19221, - "ðŁĺĮ": 12163, - "ðŁĺį": 1796, - "ðŁĺį#": 42357, - "ðŁĺį.": 48579, - "ðŁĺį": 1754, - "ðŁĺįâĿ¤": 29122, - "ðŁĺįâĿ¤ï¸ı": 21945, - "ðŁĺįðŁijĮ": 41005, - "ðŁĺįðŁĴķ": 35946, - "ðŁĺįðŁĶ¥": 46648, - "ðŁĺįðŁĺĤ": 48715, - "ðŁĺįðŁĺį": 3663, - "ðŁĺįðŁĺį": 6471, - "ðŁĺįðŁĺįðŁĺį": 30614, - "ðŁĺįðŁĺįðŁĺį": 7703, - "ðŁĺįðŁĺįðŁĺįðŁĺį": 16603, - "ðŁĺįðŁĺįðŁĺįðŁĺį": 18925, - "ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį": 32078, - "ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį": 48683, - "ðŁĺįðŁĺĺ": 29646, - "ðŁĺįðŁĺĺ": 19849, - "ðŁĺįðŁĺŃ": 39555, - "ðŁĺİ": 7426, - "ðŁĺİ": 4345, - "ðŁĺİðŁĺİ": 24048, - "ðŁĺİðŁĺİðŁĺİ": 39742, - "ðŁĺı": 11624, - "ðŁĺı": 6909, - "ðŁĺıðŁĺı": 38151, - "ðŁĺIJ": 38586, - "ðŁĺIJ": 19618, - "ðŁĺij": 32469, - "ðŁĺij": 18937, - "ðŁĺĴ": 20792, - "ðŁĺĴ": 11702, - "ðŁĺĵ": 28733, - "ðŁĺĶ": 19532, - "ðŁĺĶ": 11432, - "ðŁĺķ": 45741, - "ðŁĺķ": 20602, - "ðŁĺĸ": 35006, - "ðŁĺĺ": 4240, - "ðŁĺĺ": 3352, - "ðŁĺĺâĿ¤": 48409, - "ðŁĺĺâĿ¤ï¸ı": 39150, - "ðŁĺĺðŁĺį": 38176, - "ðŁĺĺðŁĺĺ": 15663, - "ðŁĺĺðŁĺĺ": 10507, - "ðŁĺĺðŁĺĺðŁĺĺ": 20208, - "ðŁĺĺðŁĺĺðŁĺĺðŁĺĺ": 44892, - "ðŁĺĻ": 36201, - "ðŁĺĻ": 29209, - "ðŁĺļ": 24897, - "ðŁĺļ": 19102, - "ðŁĺĽ": 24550, - "ðŁĺĽ": 15745, - "ðŁĺľ": 13226, - "ðŁĺľ": 7830, - "ðŁĺľðŁĺľ": 43065, - "ðŁĺĿ": 20064, - "ðŁĺĿ": 12970, - "ðŁĺŀ": 40458, - "ðŁĺŀ": 21103, - "ðŁĺŁ": 46947, - "ðŁĺł": 34094, - "ðŁĺŃ": 2962, - "ðŁĺŃ": 3915, - "ðŁĺŃâĿ¤ï¸ı": 29567, - "ðŁĺŃðŁĴķ": 46306, - "ðŁĺŃðŁĺĤ": 38505, - "ðŁĺŃðŁĺį": 36893, - "ðŁĺŃðŁĺŃ": 5300, - "ðŁĺŃðŁĺŃ": 11834, - "ðŁĺŃðŁĺŃðŁĺŃ": 44089, - "ðŁĺŃðŁĺŃðŁĺŃ": 13116, - "ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ": 19793, - "ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ": 27322, - "ðŁĺŃðŁĺŃðŁĺŃðŁĺŃðŁĺŃ": 43366, - "ðŁĻ": 1478, - "ðŁĻĢ": 43092, - "ðŁĻĤ": 32006, - "ðŁĻĤ": 14860, - "ðŁĻĥ": 27222, - "ðŁĻĥ": 15652, - "ðŁĻĦ": 20648, - "ðŁĻĦ": 13049, - "ðŁĻħ": 42702, - "ðŁĻĨ": 30050, - "ðŁĻĨ": 35730, - "ðŁĻĪ": 12661, - "ðŁĻĪ": 9516, - "ðŁĻĪðŁĻĪ": 41796, - "ðŁĻĬ": 23684, - "ðŁĻĬ": 16636, - "ðŁĻĭ": 19193, - "ðŁĻĭ": 30274, - "ðŁĻĮ": 4366, - "ðŁĻĮ": 4855, - "ðŁĻĮðŁı»": 26756, - "ðŁĻĮðŁı»": 15799, - "ðŁĻĮðŁı¼": 26584, - "ðŁĻĮðŁı¼": 15364, - "ðŁĻĮðŁı½": 36660, - "ðŁĻĮðŁı½": 22962, - "ðŁĻĮðŁı¾": 38023, - "ðŁĻĮðŁı¾": 26466, - "ðŁĻĮðŁĻĮ": 21202, - "ðŁĻĮðŁĻĮ": 30430, - "ðŁĻĮðŁĻĮðŁĻĮ": 37127, - "ðŁĻı": 4260, - "ðŁĻı": 5503, - "ðŁĻıðŁı»": 25100, - "ðŁĻıðŁı»": 16650, - "ðŁĻıðŁı¼": 31163, - "ðŁĻıðŁı¼": 18952, - "ðŁĻıðŁı½": 34103, - "ðŁĻıðŁı½": 21540, - "ðŁĻıðŁı¾": 34277, - "ðŁĻıðŁı¾": 21979, - "ðŁĻıðŁĻı": 18227, - "ðŁĻıðŁĻı": 26510, - "ðŁĻıðŁĻıðŁĻı": 31702, - "ðŁļ": 2730, - "ðŁļ¨": 12198, - "ðŁļ¨": 6056, - "ðŁļ¨ðŁļ¨": 36487, - "ðŁļ¨ðŁļ¨": 21440, - "ðŁļ¨ðŁļ¨ðŁļ¨": 41515, - "ðŁļ©": 44514, - "ðŁļ«": 35291, - "ðŁļ²": 37085, - "ðŁļ´": 30825, - "ðŁļ¶": 46060, - "ðŁļĢ": 22400, - "ðŁļĢ": 13542, - "ðŁļĢðŁļĢ": 49033, - "ðŁļĤ": 38949, - "ðŁļĮ": 46891, - "ðŁļĹ": 33054, - "ðŁļĹ": 22783, - "ðŁļĺ": 35825, - "ðŁļĻ": 48487, - "ðŁĽ": 11306, - "ñ": 173, - "ñ": 429, - "ò": 174, - "ò": 430, - "ó": 175, - "ó": 431, - "ô": 176, - "ô": 432, - "õ": 177, - "õ": 433, - "ö": 178, - "ö": 434, - "÷": 179, - "÷": 435, - "ø": 180, - "ø": 436, - "ù": 181, - "ù": 437, - "ú": 182, - "ú": 438, - "û": 183, - "û": 439, - "ü": 184, - "ü": 440, - "ý": 185, - "ý": 441, - "þ": 186, - "þ": 442, - "ÿ": 187, - "ÿ": 443, - "Ā": 188, - "Ā": 444, - "ā": 189, - "ā": 445, - "Ă": 190, - "Ă": 446, - "ă": 191, - "ă": 447, - "Ą": 192, - "Ą": 448, - "ą": 193, - "ą": 449, - "Ć": 194, - "Ć": 450, - "ć": 195, - "ć": 451, - "Ĉ": 196, - "Ĉ": 452, - "ĉ": 197, - "ĉ": 453, - "Ċ": 198, - "Ċ": 454, - "ċ": 199, - "ċ": 455, - "Č": 200, - "Č": 456, - "č": 201, - "č": 457, - "Ď": 202, - "Ď": 458, - "ď": 203, - "ď": 459, - "Đ": 204, - "Đ": 460, - "đ": 205, - "đ": 461, - "Ē": 206, - "Ē": 462, - "ē": 207, - "ē": 463, - "Ĕ": 208, - "Ĕ": 464, - "ĕ": 209, - "ĕ": 465, - "Ė": 210, - "Ė": 466, - "ė": 211, - "ė": 467, - "Ę": 212, - "Ę": 468, - "ę": 213, - "ę": 469, - "Ě": 214, - "Ě": 470, - "ě": 215, - "ě": 471, - "Ĝ": 216, - "Ĝ": 472, - "ĝ": 217, - "ĝ": 473, - "Ğ": 218, - "Ğ": 474, - "ğ": 219, - "ğ": 475, - "Ġ": 220, - "Ġ": 476, - "ġ": 221, - "ġ": 477, - "Ģ": 222, - "Ģ": 478, - "Ģï¸ı": 9668, - "Ģï¸ı": 5511, - "ģ": 223, - "ģ": 479, - "ģà¸": 15016, - "Ĥ": 224, - "Ĥ": 480, - "Ĥâĸ": 29036, - "ĤâĸĤâĸ": 30832, - "ĥ": 225, - "ĥ": 481, - "Ħ": 226, - "Ħ": 482, - "Ħà¸": 20537, - "Ħë": 34462, - "Ħëĭ": 25170, - "ħ": 227, - "ħ": 483, - "ħï¸ı": 33950, - "Ĩ": 228, - "Ĩ": 484, - "ĩ": 229, - "ĩ": 485, - "Ī": 230, - "Ī": 486, - "ī": 231, - "ī": 487, - "īï¸ı": 37463, - "Ĭ": 232, - "Ĭ": 488, - "Ĭãģ": 30294, - "ĭ": 233, - "ĭ": 489, - "ĭãģ": 36218, - "ĭãĤ": 45737, - "Į": 234, - "Į": 490, - "ĮãĤĬãģ": 45969, - "ĮãĤĬãģŁãģĦ": 47021, - "Įë": 17003, - "į": 235, - "į": 491, - "İ": 236, - "İ": 492, - "ı": 237, - "ı": 493, - "IJ": 238, - "IJ": 494, - "ij": 239, - "ij": 495, - "Ĵ": 240, - "Ĵ": 496, - "ĵ": 241, - "ĵ": 497, - "Ķ": 242, - "Ķ": 498, - "Ķë": 37978, - "Ķï¸ı": 24395, - "Ķï¸ı": 7443, - "ķ": 243, - "ķ": 499, - "ķãĤ": 26609, - "ķï¸ı": 44853, - "ĸ": 244, - "ĸ": 500, - "ĸï¸ı": 28877, - "Ĺ": 245, - "Ĺ": 501, - "ĺ": 246, - "ĺ": 502, - "Ļ": 247, - "Ļ": 503, - "ļ": 248, - "ļ": 504, - "Ľ": 249, - "Ľ": 505, - "ľ": 250, - "ľ": 506, - "ľë": 39810, - "Ŀ": 251, - "Ŀ": 507, - "ŀ": 252, - "ŀ": 508, - "Ł": 253, - "Ł": 509, - "ŁãģĦ": 46023, - "ł": 254, - "ł": 510, - "łï¸ı": 27899, - "łï¸ı": 12715, - "łĪ": 43364, - "Ń": 255, - "Ń": 511 -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/unet/config.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/unet/config.json deleted file mode 100644 index e2ca405..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/unet/config.json +++ /dev/null @@ -1,95 +0,0 @@ -{ - "_class_name": "UNetMV2DConditionModel", - "_diffusers_version": "0.26.0.dev0", - "_name_or_path": "../checkpoint_backup/output/unit-unclip-512-6view-randomele-self+row-8w-selfcd-rowmv-2block-linear-depthfilter-step-removewh-bs256-three/checkpoint-40000/unet_ema", - "act_fn": "silu", - "addition_channels": [ - 1280, - 1280, - 1280 - ], - "addition_downsample": false, - "addition_embed_type": null, - "addition_embed_type_num_heads": 64, - "addition_time_embed_dim": null, - "attention_head_dim": [ - 5, - 10, - 20, - 20 - ], - "block_out_channels": [ - 320, - 640, - 1280, - 1280 - ], - "cd_attention_last": false, - "cd_attention_mid": false, - "center_input_sample": false, - "class_embed_type": "projection", - "class_embeddings_concat": false, - "conv_in_kernel": 3, - "conv_out_kernel": 3, - "cross_attention_dim": 1024, - "cross_attention_norm": null, - "decay": 0.9999, - "down_block_types": [ - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "DownBlock2D" - ], - "downsample_padding": 1, - "dual_cross_attention": false, - "encoder_hid_dim": null, - "encoder_hid_dim_type": null, - "flip_sin_to_cos": true, - "freq_shift": 0, - "in_channels": 8, - "inv_gamma": 1.0, - "layers_per_block": 2, - "mid_block_only_cross_attention": null, - "mid_block_scale_factor": 1, - "mid_block_type": "UNetMidBlockMV2DCrossAttn", - "min_decay": 0.0, - "multiview_attention": true, - "mvcd_attention": true, - "norm_eps": 1e-05, - "norm_num_groups": 32, - "num_attention_heads": null, - "num_class_embeds": null, - "num_regress_blocks": 3, - "num_views": 6, - "only_cross_attention": false, - "optimization_step": 40000, - "out_channels": 4, - "power": 0.6666666666666666, - "projection_camera_embeddings_input_dim": 4, - "projection_class_embeddings_input_dim": 2048, - "regress_elevation": true, - "regress_focal_length": true, - "resnet_out_scale_factor": 1.0, - "resnet_skip_time_act": false, - "resnet_time_scale_shift": "default", - "sample_size": 64, - "selfattn_block": "self_rowwise", - "sparse_mv_attention": true, - "time_cond_proj_dim": null, - "time_embedding_act_fn": null, - "time_embedding_dim": null, - "time_embedding_type": "positional", - "timestep_post_act": null, - "transformer_layers_per_block": 1, - "up_block_types": [ - "UpBlock2D", - "CrossAttnUpBlockMV2D", - "CrossAttnUpBlockMV2D", - "CrossAttnUpBlockMV2D" - ], - "upcast_attention": true, - "update_after_step": 0, - "use_dino": false, - "use_ema_warmup": false, - "use_linear_projection": true -} diff --git a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/vae/config.json b/checkpoints/pengHTYX/MacLab-Era3D-512-6view/vae/config.json deleted file mode 100644 index a6792c1..0000000 --- a/checkpoints/pengHTYX/MacLab-Era3D-512-6view/vae/config.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "_class_name": "AutoencoderKL", - "_diffusers_version": "0.26.0.dev0", - "_name_or_path": "stabilityai/stable-diffusion-2-1-unclip", - "act_fn": "silu", - "block_out_channels": [ - 128, - 256, - 512, - 512 - ], - "down_block_types": [ - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D" - ], - "force_upcast": true, - "in_channels": 3, - "latent_channels": 4, - "layers_per_block": 2, - "norm_num_groups": 32, - "out_channels": 3, - "sample_size": 768, - "scaling_factor": 0.18215, - "up_block_types": [ - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D" - ] -} diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/.gitattributes b/checkpoints/sudo-ai/zero123plus-v1.2/.gitattributes deleted file mode 100644 index a6344aa..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/.gitattributes +++ /dev/null @@ -1,35 +0,0 @@ -*.7z filter=lfs diff=lfs merge=lfs -text -*.arrow filter=lfs diff=lfs merge=lfs -text -*.bin filter=lfs diff=lfs merge=lfs -text -*.bz2 filter=lfs diff=lfs merge=lfs -text -*.ckpt filter=lfs diff=lfs merge=lfs -text -*.ftz filter=lfs diff=lfs merge=lfs -text -*.gz filter=lfs diff=lfs merge=lfs -text -*.h5 filter=lfs diff=lfs merge=lfs -text -*.joblib filter=lfs diff=lfs merge=lfs -text -*.lfs.* filter=lfs diff=lfs merge=lfs -text -*.mlmodel filter=lfs diff=lfs merge=lfs -text -*.model filter=lfs diff=lfs merge=lfs -text -*.msgpack filter=lfs diff=lfs merge=lfs -text -*.npy filter=lfs diff=lfs merge=lfs -text -*.npz filter=lfs diff=lfs merge=lfs -text -*.onnx filter=lfs diff=lfs merge=lfs -text -*.ot filter=lfs diff=lfs merge=lfs -text -*.parquet filter=lfs diff=lfs merge=lfs -text -*.pb filter=lfs diff=lfs merge=lfs -text -*.pickle filter=lfs diff=lfs merge=lfs -text -*.pkl filter=lfs diff=lfs merge=lfs -text -*.pt filter=lfs diff=lfs merge=lfs -text -*.pth filter=lfs diff=lfs merge=lfs -text -*.rar filter=lfs diff=lfs merge=lfs -text -*.safetensors filter=lfs diff=lfs merge=lfs -text -saved_model/**/* filter=lfs diff=lfs merge=lfs -text -*.tar.* filter=lfs diff=lfs merge=lfs -text -*.tar filter=lfs diff=lfs merge=lfs -text -*.tflite filter=lfs diff=lfs merge=lfs -text -*.tgz filter=lfs diff=lfs merge=lfs -text -*.wasm filter=lfs diff=lfs merge=lfs -text -*.xz filter=lfs diff=lfs merge=lfs -text -*.zip filter=lfs diff=lfs merge=lfs -text -*.zst filter=lfs diff=lfs merge=lfs -text -*tfevents* filter=lfs diff=lfs merge=lfs -text diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/feature_extractor_clip/preprocessor_config.json b/checkpoints/sudo-ai/zero123plus-v1.2/feature_extractor_clip/preprocessor_config.json deleted file mode 100644 index fb1692f..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/feature_extractor_clip/preprocessor_config.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "crop_size": { - "height": 224, - "width": 224 - }, - "do_center_crop": true, - "do_convert_rgb": true, - "do_normalize": true, - "do_rescale": true, - "do_resize": true, - "image_mean": [ - 0.48145466, - 0.4578275, - 0.40821073 - ], - "image_processor_type": "CLIPImageProcessor", - "image_std": [ - 0.26862954, - 0.26130258, - 0.27577711 - ], - "resample": 3, - "rescale_factor": 0.00392156862745098, - "size": { - "shortest_edge": 224 - } -} diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/feature_extractor_vae/preprocessor_config.json b/checkpoints/sudo-ai/zero123plus-v1.2/feature_extractor_vae/preprocessor_config.json deleted file mode 100644 index 66cc267..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/feature_extractor_vae/preprocessor_config.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "crop_size": { - "height": 512, - "width": 512 - }, - "do_center_crop": true, - "do_convert_rgb": true, - "do_normalize": true, - "do_rescale": true, - "do_resize": true, - "image_mean": 0.5, - "image_processor_type": "CLIPImageProcessor", - "image_std": 0.8, - "resample": 2, - "rescale_factor": 0.00392156862745098, - "size": { - "shortest_edge": 512 - } -} diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/model_index.json b/checkpoints/sudo-ai/zero123plus-v1.2/model_index.json deleted file mode 100644 index 02bcecc..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/model_index.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "_class_name": "Zero123PlusPipeline", - "_diffusers_version": "0.24.0", - "_name_or_path": "sudo-ai/zero123plus-v1.1", - "feature_extractor_clip": [ - "transformers", - "CLIPImageProcessor" - ], - "feature_extractor_vae": [ - "transformers", - "CLIPImageProcessor" - ], - "ramping_coefficients": [ - 0.00301829120144248, - 0.2204633206129074, - 0.21527841687202454, - 0.23498539626598358, - 0.1914631873369217, - 0.20188239216804504, - 0.19352824985980988, - 0.17249998450279236, - 0.15826298296451569, - 0.15236389636993408, - 0.13444548845291138, - 0.12044154852628708, - 0.12808501720428467, - 0.1271015852689743, - 0.13629068434238434, - 0.14516159892082214, - 0.15645112097263336, - 0.16885493695735931, - 0.18022602796554565, - 0.1958882212638855, - 0.21415705978870392, - 0.23056700825691223, - 0.2505834102630615, - 0.2574525773525238, - 0.275470107793808, - 0.2808215022087097, - 0.29953837394714355, - 0.2967497408390045, - 0.2883710563182831, - 0.3023308515548706, - 0.3054688572883606, - 0.32596179842948914, - 0.3225354254245758, - 0.3140765428543091, - 0.3288663625717163, - 0.3435625731945038, - 0.3342442810535431, - 0.32937031984329224, - 0.35734811425209045, - 0.3601177930831909, - 0.3517529368400574, - 0.3810708224773407, - 0.40007662773132324, - 0.4264647364616394, - 0.3977527916431427, - 0.4314143657684326, - 0.49558719992637634, - 0.4665665030479431, - 0.48960328102111816, - 0.5141982436180115, - 0.5230164527893066, - 0.5266074538230896, - 0.5456079840660095, - 0.5737904906272888, - 0.5882097482681274, - 0.6210350394248962, - 0.6530380845069885, - 0.6383244395256042, - 0.6792004704475403, - 0.6567418575286865, - 0.7517656683921814, - 0.736494243144989, - 0.7586457133293152, - 0.8130561709403992, - 0.9578766226768494, - 1.001284122467041, - 0.9404520988464355, - 1.004292368888855, - 0.9145274758338928, - 0.9771682620048523, - 1.0350638628005981, - 1.0265849828720093, - 1.0594775676727295, - 0.980824887752533, - 1.0715670585632324, - 1.0140161514282227, - 1.1983819007873535 - ], - "safety_checker": [ - null, - null - ], - "scheduler": [ - "diffusers", - "EulerAncestralDiscreteScheduler" - ], - "text_encoder": [ - "transformers", - "CLIPTextModel" - ], - "tokenizer": [ - "transformers", - "CLIPTokenizer" - ], - "unet": [ - "diffusers", - "UNet2DConditionModel" - ], - "vae": [ - "diffusers", - "AutoencoderKL" - ], - "vision_encoder": [ - "transformers", - "CLIPVisionModelWithProjection" - ] -} diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/scheduler/scheduler_config.json b/checkpoints/sudo-ai/zero123plus-v1.2/scheduler/scheduler_config.json deleted file mode 100644 index 9844a97..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/scheduler/scheduler_config.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "_class_name": "EulerAncestralDiscreteScheduler", - "_diffusers_version": "0.24.0", - "beta_end": 0.012, - "beta_schedule": "linear", - "beta_start": 0.00085, - "clip_sample": false, - "num_train_timesteps": 1000, - "prediction_type": "v_prediction", - "set_alpha_to_one": false, - "skip_prk_steps": true, - "steps_offset": 1, - "timestep_spacing": "linspace", - "trained_betas": null -} diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/text_encoder/config.json b/checkpoints/sudo-ai/zero123plus-v1.2/text_encoder/config.json deleted file mode 100644 index 43336e2..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/text_encoder/config.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "_name_or_path": "D:\\.cache\\huggingface\\hub\\models--sudo-ai--zero123plus-v1.1\\snapshots\\36df7de980afd15f80b2e1a4e9a920d7020e2654\\text_encoder", - "architectures": [ - "CLIPTextModel" - ], - "attention_dropout": 0.0, - "bos_token_id": 0, - "dropout": 0.0, - "eos_token_id": 2, - "hidden_act": "gelu", - "hidden_size": 1024, - "initializer_factor": 1.0, - "initializer_range": 0.02, - "intermediate_size": 4096, - "layer_norm_eps": 1e-05, - "max_position_embeddings": 77, - "model_type": "clip_text_model", - "num_attention_heads": 16, - "num_hidden_layers": 23, - "pad_token_id": 1, - "projection_dim": 512, - "torch_dtype": "float16", - "transformers_version": "4.36.0", - "vocab_size": 49408 -} diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/merges.txt b/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/merges.txt deleted file mode 100644 index 76e821f..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/merges.txt +++ /dev/null @@ -1,48895 +0,0 @@ -#version: 0.2 -i n -t h -a n -r e -a r -e r -th e -in g -o u -o n -s t -o r -e n -o n -a l -a t -e r -i t -i n -t o -r o -i s -l e -i c -a t -an d -e d -o f -c h -o r -e s -i l -e l -s t -a c -o m -a m -l o -a n -a y -s h -r i -l i -t i -f or -n e -ð Ł -r a -h a -d e -o l -v e -s i -u r -a l -s e -' s -u n -d i -b e -l a -w h -o o -d ay -e n -m a -n o -l e -t o -ou r -i r -g h -w it -i t -y o -a s -s p -th is -t s -at i -yo u -wit h -a d -i s -a b -l y -w e -th e -t e -a s -a g -v i -p p -s u -h o -m y -. . -b u -c om -s e -er s -m e -m e -al l -c on -m o -k e -g e -ou t -en t -c o -f e -v er -a r -f ro -a u -p o -c e -gh t -ar e -s s -fro m -c h -t r -ou n -on e -b y -d o -t h -w or -er e -k e -p ro -f or -d s -b o -t a -w e -g o -h e -t er -in g -d e -b e -ati on -m or -a y -e x -il l -p e -k s -s c -l u -f u -q u -v er -ðŁ ĺ -j u -m u -at e -an d -v e -k ing -m ar -o p -h i -.. . -p re -a d -r u -th at -j o -o f -c e -ne w -a m -a p -g re -s s -d u -no w -y e -t ing -y our -it y -n i -c i -p ar -g u -f i -a f -p er -t er -u p -s o -g i -on s -g r -g e -b r -p l -' t -m i -in e -we e -b i -u s -sh o -ha ve -to day -a v -m an -en t -ac k -ur e -ou r -â Ģ -c u -l d -lo o -i m -ic e -s om -f in -re d -re n -oo d -w as -ti on -p i -i r -th er -t y -p h -ar d -e c -! ! -m on -mor e -w ill -t ra -c an -c ol -p u -t e -w n -m b -s o -it i -ju st -n ing -h ere -t u -p a -p r -bu t -wh at -al ly -f ir -m in -c a -an t -s a -t ed -e v -m ent -f a -ge t -am e -ab out -g ra -no t -ha pp -ay s -m an -h is -ti me -li ke -g h -ha s -th an -lo ve -ar t -st e -d ing -h e -c re -w s -w at -d er -it e -s er -ac e -ag e -en d -st r -a w -st or -r e -c ar -el l -al l -p s -f ri -p ho -p or -d o -a k -w i -f re -wh o -sh i -b oo -s on -el l -wh en -il l -ho w -gre at -w in -e l -b l -s si -al i -som e -ðŁ Ĵ -t on -d er -le s -p la -ï ¸ -e d -s ch -h u -on g -d on -k i -s h -an n -c or -. . -oun d -a z -in e -ar y -fu l -st u -ou ld -st i -g o -se e -ab le -ar s -l l -m is -b er -c k -w a -en ts -n o -si g -f e -fir st -e t -sp e -ac k -i f -ou s -' m -st er -a pp -an g -an ce -an s -g ood -b re -e ver -the y -t ic -com e -of f -b ack -as e -ing s -ol d -i ght -f o -h er -happ y -p ic -it s -v ing -u s -m at -h om -d y -e m -s k -y ing -the ir -le d -r y -u l -h ar -c k -t on -on al -h el -r ic -b ir -vi e -w ay -t ri -d a -p le -b ro -st o -oo l -ni ght -tr u -b a -re ad -re s -ye ar -f r -t or -al s -c oun -c la -t ure -v el -at ed -le c -en d -th ing -v o -ic i -be st -c an -wor k -la st -af ter -en ce -p ri -p e -e s -i l -âĢ ¦ -d re -y s -o ver -i es -ðŁ ij -com m -t w -in k -s un -c l -li fe -t t -a ch -l and -s y -t re -t al -p ol -s m -du c -s al -f t -' re -ch e -w ar -t ur -ati ons -ac h -m s -il e -p m -ou gh -at e -st ar -wee k -! !! -c lu -th ere -n er -t om -s el -ï¸ ı -wor ld -v es -c am -go t -in ter -of f -u m -ton ight -o ther -h ou -loo k -j e -i d -si on -be au -at t -el i -or t -re c -f f -st er -su pp -g en -be en -il y -te am -m m -i c -pe op -it t -at s -on ly -mb er -en g -b ri -m p -k now -b ur -b ar -in s -lo w -sh e -ro w -â Ŀ -t ro -peop le -vi a -lo w -ag a -be t -x t -f ac -ch ar -e ar -w al -s en -f am -b le -n ati -is h -n or -g ame -li ve -s co -le y -d on -ic k -b all -ver y -the se -p an -i a -at ing -c r -a re -g ir -ma ke -st re -sho w -. " -f l -u p -d r -than ks -il li -w om -st s -i g -s ur -ever y -c ur -vie w -le t -in to -mo st -n a -in di -g ar -ha d -s ou -v ed -an t -iti on -ma de -f ol -un i -it ed -ðŁ ı -ic al -th r -read y -ch ec -d ra -k es -boo k -e p -si c -mor ning -ne ws -c au -c t -w ell -an c -pho to -th an -or s -bir th -g g -ou t -ne xt -som e -en ing -stor y -ch ri -do wn -hom e -f fe -fre e -d a -b or -f il -ci al -than k -si de -le ar -qu e -l ine -t en -at es -ye ars -m y -pho to -beau ti -ri ght -n u -for m -shi p -b an -th er -d ays -g am -as on -g y -ðŁ İ -birth day -se t -ic k -e t -st ill -com ing -ta ke -ðŁ ĩ -b b -s ol -s on -d en -e p -mu sic -the m -de n -wh y -f oo -c ra -am az -w n -h ol -t ting -w r -u e -ma g -c ro -l an -c lo -b ra -a k -s ing -c al -re ad -' ve -jo h -b ab -d ri -b lo -bi g -er ic -in t -t or -tr y -l a -le g -hou se -m ic -v al -beauti ful -l itt -chec k -ne w -ver s -s w -ar i -pla y -h er -âĢ ĵ -w in -m a -con gr -sch ool -f un -. @ -he al -ic h -d el -wh ere -l on -ke t -tw o -mu ch -wat ch -v en -d ed -a st -k ed -b as -go ing -m p -e ver -w ays -ro o -de sig -l y -s ed -to p -l in -ch an -to o -it ing -d ent -gh ts -t y -sp o -ne ed -b lu -in st -be ing -âĿ ¤ -w el -l s -hi m -m ay -st ing -n a -el y -litt le -g a -n at -tom or -m c -h on -w ant -a ir -pi c -am eric -p er -le ss -wee k -ve l -a h -c ap -ch am -g er -ti m -tomor row -ne ss -st ate -h al -ser v -z e -o s -p at -v is -ex c -s in -f f -c ity -c en -an y -b el -su mm -t in -w ould -loo king -k o -ce le -fam ily -m er -po w -hel p -bu s -c o -c le -sel f -en s -ic s -th o -an i -ch o -le ad -b s -t wee -th ink -for e -ch il -vi de -di d -al e -ch i -v il -en ds -w ing -p as -' ll -v ol -s a -g s -man y -j ec -be fore -gra ph -n y -ur ing -w il -d d -bu il -f av -st ed -tr an -l ing -ou d -d ge -fi el -nati onal -st a -c er -w ere -in a -se ason -c ou -n ed -amaz ing -ti ons -cele br -n s -a th -he ad -s day -d ar -lo c -v in -an other -g oo -s at -n y -jo in -pre s -s es -s ing -an a -in ing -.. .. -c our -ï¸ ı -ac t -cau se -li ght -am s -t a -b al -f c -hi gh -off ici -t t -chri st -d ic -d ay -ra l -h or -: ) -vi si -n am -o b -ma s -gh t -re ally -t un -fin d -thr ough -por t -u t -ti ve -st y -n e -or e -ðŁĺ Ĥ -supp ort -ne ver -ev en -ðŁ Ķ -h a -y a -l d -u k -r an -j am -wi th -me di -d es -ne y -ch ing -al e -h y -k in -! ! -d y -pl ace -al so -b le -wh ich -bl ack -b li -s ay -par k -pl ay -ir e -vide o -week end -a il -ke y -p t -w ard -fri day -d in -ine ss -g ro -b en -al ways -t ball -ag o -m il -c y -pro duc -di sc -un der -ple ase -sp or -fu ll -e y -ðŁ Ļ -is e -iti es -c at -k no -u se -fo re -k er -ar t -hi gh -op en -s an -e f -our s -sh ed -st ri -d ro -aga in -i m -ðŁ ĵ -en jo -fu n -ge tting -p en -g er -c li -an y -ever y -e u -wom en -â ľ -e st -c ould -r y -" @ -th ou -sh a -comm un -b er -d ents -di s -wh ile -aw ay -di o -h am -g la -d ate -k a -mis s -un ch -w on -in f -roo m -g a -re al -ex per -di rec -sh ould -sp r -g ol -l ong -bet ter -or i -e y -i ence -il s -z z -h an -f ound -v s -â Ļ -po st -ti c -par t -m en -ren ce -ce ss -v ic -s il -sho p -ðŁĺ Ĥ -f ood -v al -sti c -y ou -s ays -e lec -st ar -o c -l and -i d -c tion -fiel d -s of -st art -wat er -fri ends -on es -ðŁ Į -f la -f ar -wh ite -par ty -in st -gr ou -t v -every one -m ent -j a -ch a -pr in -an ts -d uring -l at -l ar -we st -th en -k a -y oun -in sp -in te -we en -visi t -aga inst -re le -he ad -c es -to wn -loo ks -th re -re gi -ren t -pro jec -gir l -se ar -w o -m om -c ar -h un -pu bli -d i -p le -c all -c ri -u m -for d -per fe -fri end -h ard -ssi on -te st -pla ying -ar ound -be cause -ke ts -me et -sat ur -ar ti -wor k -j un -v en -r un -me mber -por t -su per -t wit -s am -el s -t ly -ad v -ati ve -at h -s ure -av ail -la r -s qu -ar ds -ev ent -m en -l l -o ver -lo gy -it al -tim es -m al -b ack -c oo -ma king -st ru -â ģ -it u -sh ar -g an -c as -s n -summ er -pic ture -f an -h in -christ mas -c y -pr oud -cham pi -desig n -pp ing -ho pe -c a -avail able -ma y -we d -photo graph -spe cial -sal e -sto p -er y -a we -al ity -hi story -am a -pre si -b ru -wor king -d one -d r -k en -fe at -w ood -ate st -sun day -mo vi -vel y -s le -f ace -sp ec -stu dents -b y -ha m -sp on -bus iness -d at -i e -i p -so ci -g lo -h and -re cor -r s -me e -ke ep -p ur -heal th -sh e -com ple -go d -da vi -col lec -li st -r a -clu b -t ers -in clu -th ings -pl an -â ĺ -joh n -sh ing -at ul -so on -blu e -g or -satur day -w on -congr atul -se e -âĿ¤ ï¸ı -tho se -ðŁĺ į -fin al -d ou -it h -o wn -ro ad -t our -a st -indi a -ti l -n d -f er -fav or -su l -lear n -fir e -ju st -grou p -a h -r ac -bo dy -u r -c are -à ¸ -p lo -o h -po s -gi ve -te ch -su b -c ent -er ing -y m -il ity -f ic -lon don -v ir -gu ys -b a -ðŁ ¤ -bab y -sc re -ðŁĺ į -tru mp -un der -chan ge -i an -col le -ss es -l er -ss ed -n ice -ann oun -pow er -s ar -a king -min i -s li -s wee -k ar -fu l -c ru -ac tion -a ther -) . -st and -de vel -a a -g an -le ft -lo l -re l -tran s -m ents -in t -e f -man ag -di g -gen er -do wn -p au -ti v -k u -th ur -k en -st on -f ans -tal k -twee t -t oo -sty le -pro te -se con -fr on -awe some -g l -p al -ne t -s or -la u -g on -sin ce -t ty -ser ies -me mor -b eli -fil m -di d -di es -o t -congratul ations -p ra -e ve -w oo -offici al -su c -in cre -b on -par t -pp ed -cla ss -si ve -bo y -cu l -perfe ct -t ou -d am -wel come -foo tball -h i -p ap -wa it -ad a -congr ats -youn g -exc ited -re ce -j an -v a -re d -st ra -medi a -' d -do es -le t -mu l -ill s -gre en -m el -to ge -fu ture -ye ster -vers ity -for m -ta in -i de -ch es -ki ds -qu i -ha ha -de ta -bi g -favor ite -gir ls -con tin -do m -sear ch -u al -a ir -d ers -mon th -c er -yester day -commun ity -ad e -do g -vil le -ic es -d eli -sy ste -ru n -is m -he art -c up -en ti -fe w -presi dent -e ds -un til -fe sti -o k -f lo -sa id -ol e -me d -tra vel - £ -ph one -toge ther -fa st -lo t -gam es -sh ir -bet ween -y es -th ers -do ing -m ac -at or -b and -fol low -projec t -devel op -di ffe -con fe -spe ci -ca st -y s -bo ard -r d -i al -sh oo -r am -ha ving -sh are -fol low -on e -n ame -m r -pu t -disc u -or y -c ame -ou s -s ite -twit ter -t b -t it -fin ally -z ed -su per -com pan -us ing -all s -li st -r is -sho t -g al -t ar -de l -joh n -âĢ Ķ -some thing -ra m -inte re -wh e -b it -ðŁ į -stre et -oun d -a i -tic kets -movi e -re al -k y -ta king -o pp -c c -l am -m oun -in ve -bl ack -us ed -on line -y or -loc al -gu e -c ks -o w -ge st -bo ys -illi on -con t -re ci -in ed -eu ro -no w -se en -p h -te ach -de f -sou th -su ch -aw ard -mu st -is su -ca re -fe el -p lu -l atest -spor ts -we b -te x -e ment -s k -fi c -w an -te ch -o t -bo x -n er -fre e -t al -a sh -c ase -ho t -won der -mee ting -er a -ch all -ðŁ IJ -jo b -il i -c ool -j our -th s -m o -f el -di e -mic ha -e le -te am -serv ice -st and -ma kes -p ing -ear ly -com es -e k -ho li -v ers -ag ue -s au -thre e -mon day -fa shi -some one -th ro -se a -b ad -supp or -tur n -ur y -m ing -photograph y -n ic -mar k -pre tty -ss ing -wat ching -me mb -ar ri -coun ty -be ach -fr an -cen ter -pol ice -b at -publi c -t an -pre ss -s af -s y -ge ts -ro y -n ers -y our -bu y -st ers -sho w -as ed -chil dre -af ric -in es -sp ace -sc ri -h all -pa in -ar ing -hom e -m ur -heal th -ch ed -s and -rece i -gu y -e a -americ an -re si -childre n -- - -i ri -ing ton -coun try -ro ss -le n -ann a -boo ks -b c -e ce -d om -lo vely -k h -pe t -g y -g ri -st age -off ice -ro ck -m on -b ay -t able -su n -m ed -th in -l or -f low -( @ -uni versity -stor e -fron t -goo d -z a -vo te -nor th -he y -an im -or der -mi d -with out -a de -re member -mar ket -? ? -mu s -tra ining -e duc -bu t -co ver -st an -sc en -b la -bre ak -l ou -s ame -g old -a in -o s -bo th -l it -ver n -a i -al bu -p a -enjo y -be g -ell ing -thur sday -inf o -s an -americ a -ha ir -te l -mar ch -con cer -colle ge -confe rence -ap p -h our -ch ang -â ļ -s our -ol s -we ather -w ar -p hi -festi val -secon d -cu te -pr ac -en er -str y -le a -pol it -s av -se n -o w -m i -ne ar -ou ght -z e -co ffe -w illi -d an -se y -davi d -e se -f an -de ci -the at -no v -ati on -tr ac -sc i -re view -c el -e m -u n -ju ly -or ig -ti on -d ru -form er -st ay -af ter -in v -too k -dat a -b al -tu es -d an -ev ening -ðŁĺĤ ðŁĺĤ -d ol -u res -pro vi -t s -e st -sig n -j ac -u k -s ong -ye t -bo w -in du -j ap -h oo -po int -any one -z y -i st -h ur -it al -buil ding -wom an -ch ur -j er -per for -co ach -le ague -ce ss -ne t -i mag -nati on -br it -qu e -aw ards -ag es -wor ks -c ed -man ce -l ate -ig n -mon ey -tru e -i i -t ell -pl ac -p ac -as y -wor ld -be hin -im port -read ing -gra m -gi ving -me t -h it -for ward -st om -pres ent -jun e -so cial -no on -mar t -hal f -s we -go vern -k er -deta ils -li sh -_ _ -ac y -si a -ber t -f all -! !!! -) , -th i -d iti -sp ort -k ing -f it -st af -c at -mu se -cen tr -y er -con tro -b loo -wal k -ac tu -did n -li m -lear ning -re search -wed ne -au th -h ours -k y -f ar -h en -.. .. -it ch -ri l -str ong -sk y -que sti -jam es -r on -d g -f ur -c in -do es -app ro -mar ke -tu res -ful ly -ch at -behin d -te m -fin i -mis sion -b att -fe el -he av -every thing -b ar -w ish -pre mi -i ma -exper ience -e ach -re port -swee t -tic s -spr ing -re spon -syste m -vic tor -l in -sa w -al ready -gh ter -f le -ã ĥ -br ing -albu m -- - -ell s -st an -to m -inter national -w ent -an ni -mat ch -pp er -st one -sm all -ra in -fashi on -are a -v an -ag ram -k o -thou ght -wor th -v an -m er -coffe e -it es -g n -arti st -c on -ar ch -c ir -se cre -gr ound -is o -h and -co m -bri dge -h s -x i -l ink -pu l -sp l -r ace -f li -ri ver -g as -di sco -d al -play er -f it -photo s -it y -o k -j or -tr a -ap ril -ad s -a di -sol u -beau ty -do or -me ss -up date -ali a -sch o -en ed -mom ent -sco t -sc ience -i or -ti es -ac ross -ous ly -sh es -does n -p age -wat er -m illion -cla ssi -l ic -ca st -form ation -micha el -ell o -s mo -in ts -vi sion -op ening -ld n -au str -tues day -win ner -po ssi -r ound -shir t -di t -b o -u es -il led -al ong -tri p -star ting -im pro -k an -per son -no t -re co -ne eds -c le -li e -re st -r ing -win ter -si mp -mo m -be er -fac e -tor s -us a -collec tion -ge or -se ssion -tr ying -la s -la ke -j en -orig in -stu dent -se cur -v in -pic s -ex pe -com p -gon na -e qu -b ad -le y -a u -memb ers -bre ak -w all -gi c -din ner -bu l -insp ir -r i -min d -ic a -win ning -tal king -t ren -s is -t en -wonder ful -s now -he ar -th om -no thing -gu i -st in -blo g -fe st -b un -le e -war ds -ch ance -dre ss -re n -pau l -p es -tech no -ru ssi -c ard -e ast -mar i -w ine -t i -la w -str ic -k i -ap e -au gu -pro fe -as h -cour se -ma il -ren tly -d un -m un -lo ve -is land -dri ve -s l -end ed -ma in -lo st -nat ure -âĿ¤ ï¸ı -ch ic -re por -p in -pr o -st ation -ce p -ta kes -compan y -go es -on d -ma ch -ra dio -d ad -ro ck -j a -p ay -champi on -e e -in de -tt a -ati c -t ab -beli eve -ener gy -z i -t at -wor d -on ce -re sul -y l -and re -an o -inst agram -clo se -t am -cu stom -w a -con om -sho ws -li fe -k in -ro b -t age -n ation -al most -list en -sa ve -re li -ac e -mar y -tre e -for get -j ack -wa iting -direc tor -h ill -bor n -te mp -f l -st e -on a -sing le -wedne sday -un ited -in o -@ _ -ne l -celebr ate -en ding -de al -j i -can ada -hu ge -tr ack -âĢ ¢ -f y -fan ta -an g -yor k -rele ase -p un -ep iso -wor ds -t our -p ack -i gh -classi c -perfor mance -ke t -after noon -recor d -win s -pro ble -âĿ ¤ -f our -b ed -ban k -d ance -s la -cal led -mi ght -a p -pa st -ðŁ ļ -diffe rent -it e -gi ft -ssi ve -chur ch -c us -pro gram -ho tel -ic e -ma d -secur ity -en ge -d c -en ough -st a -e ty -de ad -g un -he ar -m ir -hu man -gre ss -oun ds -pi ece -bre aking -gar den -fi ght -vie ws -f ish -star ted -run ning -gre en -ser i -s m -as k -d or -de ath -e conom -er i -ir d -s er -l unch -âģ ¦ -bo x -nat u -ba se -b an -f al -glo bal -wil d -wo w -out side -mo ve -le ad -an al -muse um -on g -ha w -pow er -than k -b ac -char ac -cam pa -dig ital -r o -op er -de v -w ol -p ati -f a -m ale -pap er -ill ing -c s -â ĥ -educ ation -ta ken -e ffe -m ou -s ad -" . -bas ed -staf f -inclu ding -li ving -a c -ch ina -mo b -stor m -lu ck -ph il -o o -y n -tra vel -k el -ti al -pr ice -boo k -import ant -bi o -p ool -ny c -f ab -lo ad -? ! -chall enge -cr y -ser ve -we ar -bu s -ta in -nu mber -ro r -k at -i z -th ough -ho sp -m m -fa ir -ut es -ho t -po p -fi ed -cam p -develop ment -li br -c ali -em s -âģ¦ @ -b ol -is ed -stand ing -mo del -it a -g le -bro wn -ima ge -ve red -for ce -o il -par tic -sh u -da ily -la w -se c -cla ss -cam p -holi day -cl in -k ers -pres ent -gam e -incre di -er ship -inter view -b ill -du e -and y -ab o -in nov -ke y -ac ade -p il -mo der -st ars -br and -f er -wee ks -con si -pr e -sa fe -wr it -di um -la unch -marke ting -ann ual -as si -cour t -la dy -c ted -and a -in side -chil d -opp or -sm ith -centr e -gu e -âģ © -f ren -st y -for t -ent ly -is n -ke ep -to ber -on y -bo y -al d -col la -de mo -le vel -com pet -ad o -b our -fanta stic -m ate -s u -sou th -oppor tun -vers ary -lat er -bu d -face book -la un -ster n -p it -! " -ma j -gr am -tb t -fi re -happ y -a ks -wh ole -actu ally -ill er -ell a -lo ts -al ex -an ge -lan ds -ðŁĺ Ń -en ter -r ou -episo de -p ed -in ten -sh ire -wh o -pl an -h o -ca ke -we st -mag az -fre sh -c c -n ar -ch ris -wr iting -w er -n om -l o -mi dd -dre am -o l -ti onal -de b -> > -be come -s i -gr and -all ing -hi stor -ri de -i red -saf e -que en -ci l -in tro -vi l -d ani -.. . -ar tic -st at -sh ort -or ing -sel fi -mis si -do c -b it -g all -b om -i re -se lec -d ition -ðŁĶ ¥ -fri end -be at -gh ting -ðŁĺ Ĭ -pe ace -ex hi -ant a -ab ility -il lu -j on -qu ality -tri bu -m es -play ers -fa ir -cu t -c ab -suc cess -b i -su s -pro mo -sch e -an ge -ic o -comm it -cat ch -ill a -kin d -feel ing -qu o -s ay -anni versary -spo t -mo ther -an e -p end -your self -op s -app le -min utes -p o -gr and -ri es -ha ha -care er -ed ition -de c -ric k -am i -concer t -iti ve -ge ous -d ly -t te -adv ent -i g -li ghts -ak er -sk y -âĥ £ -r ay -fini shed -w ay -s d -ac coun -ðŁĴ ķ -ck y -ch el -lit er -pain ting -lo s -st un -techno logy -n as -ma r -b il -afric a -ki e -ey es -gol f -plu s -ni a -it ec -serv ices -wed ding -kno wn -te le -.. ... -star ts -pa ren -w ants -ati onal -mon ths -win do -fav our -er t -magaz ine -ex clu -re ve -b c -origin al -e ss -n al -an ti -st ro -t ice -stu dy -à ¤ -v ac -nation al -fi ve -ra in -ve ment -u te -ver se -em er -ar my -possi ble -gue ss -val ley -ther n -cro w -m r -col or -on to -pic k -cle ar -dar k -t ac -wan ted -it ting -can cer -govern ment -di e -ri se -z ing -col d -f oun -stu dio -str ation -bro ther -a head -sh el -mic ro -ic ally -d au -sig ned -vi ol -a x -as se -i o -w re -spl ay -ch ick -augu st -pl at -ti ps -sp i -hu man -e asy -lo gi -mi ke -gro w -ag re -w w -sh ad -mo tiv -wi de -tur ns -om g -v ar -de fin -su g -j im -ðŁĶ ¥ -t d -campa ign -nam ed -re tweet -co p -t v -le av -k is -dou ble -s mar -issu e -vil la -in formation -li es -sto ck -n t -di stric -sh or -mi x -er o -se p -me x -see ing -li ve -re min -co de -g ur -s c -wil d -l un -h ood -spo t -fa ther -fore ver -up d -tra f -f ly -ne ed -gra du -tra in -ma ke -s ab -be y -si ze -lead er -tal ks -e u -lo g -fo x -gor geous -le ss -le ts -sur pri -my self -no te -li ves -f ru -lo ved -se ver -de m -j i -so c -h old -do gs -n i -â ŀ -lea ve -air port -ben ef -ex pl -shi ps -comple te -ach i -gre at -vin tage -j ack -ro c -woo d -pri v -off er -ey e -ver sion -te a -co ach -off ic -w ell -g en -s at -h h -you th -o x -? " -m t -mi x -g g -d le -natu ral -buil d -break fast -thin king -theat re -mo on -ber g -go als -geor ge -en e -exc ell -il ing -tun e -y ed -g ate -m it -net work -jo e -h ello -f b -tu be -we aring -ath le -stru c -har d -gla ss -g ers -thro w -g es -b t -indu stry -manag ement -ali st -go al -stre am -y el -a vi -ici ous -o thers -s ki -chri sti -bir d -e sc -m in -tr o -l t -j an -im p -ri ghts -sh a -or gan -cent ral -ar a -ro ll -favour ite -che ster -el se -p ay -car s -m ine -ste p -prac tice -maj or -h ang -ðŁĺ ĺ -n on -v ari -eng ine -vol un -di a -i led -arch itec -p ink -d s -th y -wa sh -web site -ba g -contro l -el li -f ra -an sw -d ence -y u -r on -ol a -g in -dr in -li c -cou ple -sp ar -g on -cre ate -c t -celebr ating -de ep -e at -te e -vo ice -dro p -vis it -at ors -sta dium -f t -w is -ro l -gra de -fam il -po ints -re pre -w as -traf fic -jap an -or g -hon or -tex as -man u -âĻ ¥ -safe ty -re r -b ag -em plo -rele ased -re gu -ak a -n av -ro le -sen ior -spec t -cro ss -lin es -be st -p ack -s in -ti e -mis sing -sun set -li ber -is ing -j ay -sk i -champion ship -ac tiv -la dies -play ed -y y -pu bl -al o -pri de -s r -pa ki -lu x -sur vi -ck ed -e ts -cho col -austr alia -par is -mi les -h at -ment al -al a -me an -mob ile -en a -in si -f ound -chi ef -t ag -incredi ble -re turn -à © -goo gle -fren ch -cre w -hal lo -ali an -j az -ch er -sil ver -nor th -eng lish -base ball -c af -lim ited -follow ing -app reci -ear th -k ir -ve mber -w ed -p tion -g ed -oc tober -fl ori -c r -en cy -ga ve -lor d -stu ff -ber ry -po st -sm ile -bro ad -st ate -gg er -me ans -ic y -gu n -y o -ma ster -bur g -han ds -ni e -/ / -uni on -brit ish -big gest -distric t -am ing -h il -o ce -per son -pas s -en vir -scho ols -arri ved -anc es -insp ired -ex pla -be n -libr ary -bo tt -am p -ste ph -cont act -b ang -m s -cali for -t old -batt le -b b -chic ago -âľ ¨ -str ate -sh i -de ce -- ) -ad d -la b -j ones -leg end -cast le -ing er -st ance -be l -ur a -re fu -lead ers -po t -se x -h ic -artic le -ki d -fr ance -x x -ex e -gui de -volun te -pr int -al i -ce o -twee ts -w x -scen e -vol u -ant i -h an -as soci -shar ing -ro se -mini ster -sh er -in ste -cle an -demo cr -po ster -sk in -p sy -pro per -cra zy -i am -o re -in i -any thing -po d -mo ving -cl ick -ex plo -com b -cra ft -f i -bloo d -is ra -publ ic -d ent -ol ym -eng land -a si -ch er -fac t -envir on -har ry -g one -me dic -enjo ying -just ice -j r -indi an -wi fe -s ound -t es -dra wing -p al -ide a -cr it -ju li -il er -war m -cl ar -thou ghts -def en -coun cil -intro duc -di ed -jan u -an i -s end -li er -m l -intere sting -tra de -win d -b ay -s ac -anc y -sour ce -b es -org ani -ar ly -lar ge -ff ici -ta g -u t -de sp -o es -tit le -sy m -pic tures -op en -wom en -sho wing -ri a -le ast -lead ership -cur rent -elec tr -val ent -list ening -c key -gener al -de ser -du ce -; ) -c ent -ðŁĺį ðŁĺį -sco tt -po or -selfi e -ev ents -i on -wr ong -de v -h ill -sep te -cul ture -l ine -sor ry -s ent -si ster -ce pt -k ri -no vember -ar i -announ ce -z ation -br an -g ent -d u -l en -per s -f m -mart in -o p -e mb -om e -midd le -suc cess -pe ter -janu ary -f lu -rac ing -d av -bi ke -ðŁı » -pe t -shoo t -profe ssi -feat uring -septe mber -now playing -sta ur -z a -on ic -qu ick -bas ke -spe aking -mil it -z er -chick en -b ell -s ad -co ast -lo ving -y ers -d j -pan el -ver age -s wit -ic ks -b ou -califor nia -s am -paren ts -er o -k illed -ph ys -jo bs -mi gr -an th -e mo -hallo ween -and er -c m -compet ition -e ag -s ket -sp ir -may be -exclu sive -app e -jour ney -scre en -for d -i o -h ate -u g -sou l -her o -soci ety -sy n -gu it -n h -d j -as es -im pre -ti me -sal es -d d -f ts -summ it -stun ning -om s -tur ned -cle an -sof t -be at -re staur -de red -en ces -ma gic -di o -sh ine -gu est -health y -exhi b -stor ies -po pu -n is -el a -bel ow -fun ny -resul ts -s ne -cur rently -ar d -down load -f light -m al -f ine -p ad -ch u -ent ed -h at -ðŁij ı -ste ve -j o -mar k -r at -b all -p c -p on -b by -o li -ar ts -as ure -bow l -att ack -mi c -de ar -ran ge -en ter -chocol ate -br illi -ac cess -, " -? ?? -ch ap -con st -t n -mat ter -blu e -gall ery -em p -work shop -lead ing -y ours -baske tball -w anna -th u -_ _ -mar ri -sle ep -bi a -ch e -ma d -imp act -o wn -si r -chan nel -euro pe -e sp -k itch -hosp ital -w ra -roy al -f s -ne u -qu ar -ne y -ac ks -ch ase -pp y -st al -at ely -ti m -dece mber -r are -per form -cre am -we ight -ch oo -ni ght -ha ven -fr anc -kh an -buil t -hel ping -tru st -ty pe -gol den -ta x -s now -s wi -di sa -questi ons -ve y -li ght -c n -cl oud -thom as -ag ed -sh ou -te ams -gr an -re ason -a a -you tube -v p -pi zz -manag er -bur y -cre dit -tre at -ma x -i k -ma in -g ing -de ad -pro bab -ye ah -ã Ĥ -br and -so li -pl ant -ta yl -gir l -ðŁĺ Ń -nam ent -au to -mess age -ko re -n ur -ter r -ag u -ma p -sen ting -lo ves -gi ves -g ab -z en -ro bert -con fir -w ars -o m -sta in -cam era -and er -won der -a b -ca p -s old -su it -wal king -contin ue -effe c -dau ghter -d anc -cha in -mul ti -ki d -y an -champi on -v o -ta ins -ho st -min i -mis sed -re sc -ly n -fin ish -del icious -s as -tayl or -i b -pro mis -produc ts -moun tain -flori da -regi ster -tre at -rec ent -fe male -boo th -mat t -ve hic -s op -mo tor -suppor ting -phi c -ex tre -dr ink -lan e -th ird -p s -con stru -ce re -far m -ðŁİ ī -tu red -ðŁij ī -c ats -a j -gi e -shoo ting -as ked -paki stan -am e -m b -g il -leg al -squ are -in vol -dra w -oo oo -!! !! -opportun ity -p y -e i -b ts -teach er -charac ter -john son -br on -ly wood -ch ine -c ing -c ine -d ge -gam ing -russi a -ci a -quo te -ric h -go v -flow ers -sp iri -st in -grow th -ðŁı ¼ -comm er -j uni -mu m -r an -s na -a ren -c b -ac tor -col or -si t -pa ir -ch i -bo w -acade my -hel d -r ang -me tal -y l -ac tive -probab ly -t ch -need ed -spe e -cho ice -ital y -ry an -ðŁĩ º -flow er -v it -m n -found ation -b ak -si ons -ne igh -f loo -he ard -re mo -fre sh -ing ing -re f -to wn -cl ou -je sus -spiri t -cou ldn -z es -ðŁĴ Ļ -willi ams -pro ce -moder n -pro cess -sho es -cre ated -tri c -issu es -ann e -att en -de but -h r -n it -sti g -a po -e ps -z u -ã Ģ -si x -car ds -lan gu -fam ous -tour nament -se l -e bay -y n -st on -k ick -announ ced -k am -vo c -brilli ant -hou se -che ese -war ri -mus ic -ho ckey -ðŁĺĤ ðŁĺĤ -sk ills -au tom -smar t -med ical -mon y -e x -gu ar -gi ve -pers onal -ven tion -al li -pre ss -flo or -m c -victor y -hi m -simp le -th or -ðŁĩº ðŁĩ -ta il -lu cky -ale x -qu ite -bo t -ssi ons -chall eng -c ann -amaz on -h ell -b ought -) : -ed y -secre t -produc tion -inde pend -de fe -ad ded -p r -p ag -be d -gre atest -with in -j ay -ðŁ ¥ -ire land -re ly -s d -te xt -dri ving -pro gram -spe ed -col um -str on -à © -fore st -â ĸ -mach ine -co in -sc ar -oun t -bi e -¡ ï¸ı -por tra -comm on -wre st -recei ved -kno w -inve st -pl ans -ac cor -ad op -ter y -re ali -p p -k al -art work -me an -go d -inste ad -an ci -motiv ation -as ing -inspir ation -up coming -polit ical -euro pe -m ers -heav y -ðŁij į -fe bru -scot land -ou gh -b t -bo ss -sche du -spe ak -n ick -u red -in o -e k -ri sk -tor y -pres ents -b on -ru g -st ates -exhib ition -il o -m ill -br ought -: -) -tou ri -com e -offici ally -champi ons -do ors -re p -po se -ex tra -k ings -soc cer -squ ad -app lic -at a -some times -t ari -excell ent -ðŁĺ ĺ -stra ight -car ol -ri p -âĢ į -gra phic -m ol -elec tion -febru ary -as ons -l i -di r -m t -n ick -u su -m rs -com ics -inst itu -cor por -v i -ðŁĻ ı -tu ral -di se -ac ci -we are -am ong -sho pping -t ill -wh at -cha ir -sp an -chine se -innov ation -jo y -k it -cent ury -ob ama -ph ili -f c -re ach -c iti -ul ous -n on -d ang -happ ening -bur n -p el -or ange -d v -k ick -cla im -ing ham -ph y -no v -pod cast -wh i -ni ghts -ear lier -be ar -la h -exc iting -or a -gi ven -s lo -memor ies -contin ues -produc t -gh o -c d -kno ws -ðŁİ ī -publi shed -discu ss -y ard -i phone -tri es -w all -fe b -are n -tru th -win ners -tu re -diti onal -milit ary -proble m -m and -do g -lo ss -c ric -can adi -ve ter -villa ge -" , -y r -un g -don ald -ag ing -bir ds -sci enti -le s -th is -regi on -tic al -itt en -il a -ðŁĺ İ -d ad -di am -abo ve -st ren -li t -p ir -la b -fo cus -bus y -d ur -app ly -s ma -auth or -ac i -exe cu -dom in -re la -jack son -at o -wash ington -ðŁĻ Į -k ill -popu lar -ce ment -ro ad -e ating -loc ation -v ent -ar re -n an -cu sto -advent ure -or din -spor t -ul t -lo ck -questi on -dri ver -land sc -on i -k ins -p d -jor dan -te red -k k -a f -chil d -s p -just in -en i -s elling -z o -wh it -bo ston -partic ip -sig ning -happ ened -he at -m am -dre ams -lo ws -gra ph -the day -head ing -br o -ble ssed -vi c -ve gas -h d -in ning -ro man -and ro -den ti -u se -c it -pro gress -writ er -bo b -ff s -gro wing -b ly -aw are -ex am -sp ent -be t -sc ore -bey ond -do cu -ad el -s f -cou ra -colla bor -in c -priv ate -bo at -* * -z one -p ha -b ill -to tal -plan ning -to wards -plac es -pre view -cre ative -dam n -ide as -se ems -po ten -say ing -di splay -s w -a qu -lou is -by e -li l -e mail -we stern -ger many -ell er -re s -f ant -ment ary -de als -ric hard -jer sey -stren g -ra d -pizz a -mon d -w are -l ac -g i -ar chi -c d -yel low -rec ently -re ach -à ¹ -kitch en -desig ned -tr y -g al -restaur ant -at ure -w w -j as -l ma -ðŁij Į -pa in -av o -min ute -sch ol -ther ap -tic ket -d ry -jap an -diti ons -ter ri -sel ves -happ en -t up -ma g -cop y -sh er -free dom -f ile -speci ally -tor onto -lo ad -g ary -re y -answ er -lo y -cau ght -pri ze -u ne -fic ation -ni ger -sy d -tou ch -feat ure -jaz z -recor ds -him self -di sh -ro ber -spot ted -ma ster -wa ve -fin als -bu ll -for um -al d -re comm -ch a -a e -d oo -inst ru -tru ly -l g -in k -bro thers -de st -j im -m it -clo sed -is on -tri ed -s anta -af fe -w an -hor se -g row -camp us -rel ation -nati ve -jour n -go v -o ct -k it -b ound -part ner -re ma -crow d -! ) -c alls -ra il -qu ali -solu tion -con test -con vers -sn ap -b ase -in iti -ta x -y e -ent repre -it or -constru ction -foo d -present ed -n ings -cli mate -k m -mo del -b j -blo ck -present ation -dre am -fi x -c alling -bus ine -con gress -under stand -we b -val ue -ï¸ı âĥ£ -mex ico -it ely -ki m -char ity -ref lec -bl an -fl ying -anal y -famil ies -b and -reci pe -celebr ation -ac cep -ar y -to t -g b -intere sted -cap tain -âĻ ¥ -ti p -ab sol -bra z -inve stig -o logy -de c -tru ck -ver ing -c lear -don t -go tta -ad vis -beg ins -ma ss -de scri -blo ck -k im -davi d -son gs -memor ial -feat ures -su stain -' . -gra b -jo se -v a -con serv -se ts -man chester -fi ghting -de gre -ag a -in d -sle ep -pos ition -ha ir -sig ns -pol icy -it o -al ert -st am -sp end -w y -absol ut -d m -anim al -my ster -success ful -proble ms -ro bo -k ay -gar den -p d -may or -d ale -t ol -off ers -vis iting -friend ly -tre es -offic er -accoun t -ke vin -ðŁij į -gi ant -contin u -con su -tr act -n fl -ðŁĺ Ĭ -h q -b ility -a ar -dis ney -te en -on ed -wh ite -tra iler -de dic -al one -absolut ely -dig ital -willi am -in ation -s wa -e e -enti re -ger man -ro ll -h its -co st -st ay -th a -ali ve -accor ding -co t -liter ally -her it -re ti -haha ha -exper i -li kes -g t -ste el -__ __ -ch air -christi an -to wer -diffe rence -m d -tre ss -mi d -prin ce -afric an -fe der -foo t -car ri -ser ved -r ice -sh all -feat ured -ck er -rec ru -po e -sen se -ni fic -com edy -cont ent -f at -po sted -con tribu -tim ate -li ver -mb le -inter net -ag e -europe an -cl ing -gla d -ff ic -sc o -ak es -el le -ter min -ton y -p ale -col our -seri ous -pat ri -movi es -b m -professi onal -ad o -al u -br inging -f alls -isra el -ter m -langu age -bro ok -man n -commun ic -can not -ac ti -p he -y an -entrepre ne -tur key -log ical -lon g -ar m -ur s -work ers -ing ly -gg s -ri c -tu al -recei ve -op ens -ge ar -soci al -fe et -c king -ad ver -fin an -fe els -sp la -h r -ea ster -bra in -ã ģ -fi g -le dge -ne arly -prote ct -ma ssive -e th -aw a -ðŁĺ ģ -y rs -aware ness -defin itely -k n -imag ine -k u -syste ms -ðŁij ı -f as -li k -provi de -am o -disco ver -inf lu -ma ker -g az -fit ness -stre et -er s -te d -w c -ys is -pos itive -hel ped -que st -andre w -bra d -b in -hang ing -l ing -bri ght -se ction -ma ss -ðŁĻ Į -follow ers -ho sting -tem por -fla g -a ve -let ter -k ur -re qui -of ten -cry p -su ff -âļ ½ -russi an -treat ment -al le -ha y -l an -keep ing -hol y -power ful -pre dic -fun d -e specially -windo w -je wel -il y -ðŁĴ ľ -gener ation -app a -seri ously -o d -ðŁĺĤðŁĺĤ ðŁĺĤ -cer ti -iri sh -ðŁij Į -mi ami -be th -v ity -se cu -che f -cri me -graph y -ma x -arti sts -re volu -gu ard -spee ch -u c -upd ates -fac es -st ant -chang ed -repor ts -low er -pe ar -n c -k il -loo ked -spe aker -s f -re spect -ok ay -oce an -s itting -architec ture -tra il -se at -i ra -le g -japan ese -d am -u lar -sw im -polit ics -finan cial -ol d -mou th -at temp -de stin -fi shing -atten tion -me m -chang es -deci ded -reli gi -g in -c av -z z -ad am -ma c -wr ite -beg in -sc ul -al ter -is s -ath on -imag es -m oo -jo ined -ðŁĺ ī -âŀ ¡ï¸ı -pas sed -mu sli -h ir -lar gest -cam er -com ic -gh ted -rug by -bur gh -gg ing -te sting -pre par -lau gh -al ed -impro ve -beli ev -adv ice -sha res -he art -tur ning -s b -t el -caf e -n es -dani el -pat ter -t z -se tt -par k -c and -st ick -happ ens -bri an -ne west -e pic -ad or -ki es -war ning -anim als -custo m -ar c -di an -gol d -cor e -t f -c ity -pan ts -re ality -con fi -in ju -fo x -gu il -k new -âĺ º -cor rec -itu de -d den -. # -re duc -pas s -f on -y a -ow ner -re turns -n c -e ast -ap ol -in sur -th o -si m -juni or -be e -ang el -att le -elec tric -hor ror -cra sh -e ye -pat h -sou thern -emplo ye -ge o -t an -ha z -r ally -ðŁı » -proper ty -was n -enjo yed -gre y -g as -bre w -nor thern -hol ding -g p -ta ke -ch art -ly n -dr ama -z o -pa id -throw back -cu p -discu ssion -down town -w ill -le w -b is -t ary -bre ad -up on -r ate -teach ers -it ation -anc ed -cy cle -choo se -d c -ir an -co w -da ve -ra ise -prin cess -fa ith -- > -indu stri -sp ain -guit ar -fac ts -m n -sp en -cour te -go tt -projec ts -au di -o sc -pe ter -s and -intere st -happ iness -ven ue -sol di -surpri se -poten tial -per io -custom er -i i -g ni -manu fac -e co -bro ken -sing er -vel s -wal es -hu s -in j -f our -tal ent -d ying -mat the -fil m -jo ining -s ell -j ar -lma o -sur ger -bb c -sour ces -au stin -ni k -char les -f am -prin ci -ange l -cas h -lo t -o red -pla ys -pl ate -don e -memor y -br ings -n ba -solu tions -teach ing -gr ace -cir cu -hel ps -foun der -mar y -expl ore -de cor -par ts -ch o -inte gr -ha u -is es -pu tting -in er -r it -v y -mic hel -blu es -every day -for ms -bi o -ye ar -p in -t ter -spr ing -) ) -po t -al ing -perform ing -sh an -plan et -mus ical -head s -it alian -stru gg -âĢį âĻ -w ings -pu mp -h h -tr ou -a id -pri me -ear th -pa int -mon t -am y -bb c -fab ulous -fru it -andro id -bour ne -cere mony -enti al -? ? -deb ate -on ing -dra ft -sol ar -t x -j am -cor n -!! !!! -bro o -mil k -po sed -o hi -mo vement -b ren -part ner -p g -et te -ar ies -sh out -n g -leav ing -t ells -sen s -ta ste -kel ly -wor l -gy m -ric h -e gy -pi d -ma s -â Ĥ -courte sy -fran k -incre ase -wr itten -pp ers -re l -ha i -s as -s ound -tt i -w ich -ri ver -.. ." -a g -fel low -ro me -sm all -gen cy -ic an -lux ury -pro of -me t -wild life -mom ents -ra ther -cor ner -com pe -canadi an -lik ely -therap y -li am -econom ic -indi e -rou te -fi ght -ho pe -se tting -ant ly -cro ss -fant asy -de e -sket ch -comp li -ym i -ru les -engine ering -fig ure -ro w -. , -f w -syd ney -w ou -t ation -dre w -us es -the re -sp read -struc ture -pat rick -appa rently -ro s -h ills -w we -ann y -com mission -di v -f ying -con sul -anal ysis -ex i -ten nis -vehic le -ðŁĺŃ ðŁĺŃ -as s -high ly -op ened -b ann -ðŁĴ Ļ -mp h -wi shing -v or -fi f -give away -r r -ra y -je ss -g at -ic ymi -x it -high est -yor k -pi e -invol ved -high er -ri e -mal ay -int elli -desp ite -che e -sar ah -be an -reco gni -ar sen -tal ented -pas sion -ic h -ab c -lead s -dise ase -v is -se c -pre senting -m illi -hol e -sho ts -de part -surger y -gov t -b in -du al -e vi -lon ger -ev ol -scre en -portra it -et c -lo se -ch at -p en -p i -om a -s ick -er c -compan ies -en try -plan e -gr y -ven e -liver pool -premi ere -sha red -a red -fil ms -ir a -holi days -cric ket -ici an -v ing -. ) -ul timate -di vision -con duc -se pt -for ces -mon t -s mart -disa pp -sun shine -in d -b less -ma de -col ors -fran k -ir on -bott le -s go -m ood -j ason -er ic -bir th -te en -respon se -tar get -state ment -fe ar -th el -al um -ar ab -bl in -direc tion -ste ps -er ial -wor ked -at l -ðŁĴ ķ -fel t -pol i -scen es -hom es -b ell -e at -ate ful -t in -l ace -fol ks -p se -an n -wis dom -fa v -but ter -s r -are as -sm oo -bi z -dg es -app o -mo re -the m -effe ct -windo ws -sun ny -cap ital -tot ally -c ities -gr ant -mb ers -s low -au tu -il ities -w ro -ri sing -st ics -viol ence -i gh -qu ot -h it -t c -herit age -bu ff -ne s -z ar -den tial -ex ac -ed ge -de ep -aren a -be came -benef its -mar ks -mb er -a z -am es -pre ci -dra gon -re g -d ings -do s -ðŁĴ ª -n el -s ity -me al -di st -leg end -pur chase -pic al -st ick -f at -du ba -profe ss -car to -pro f -coun tries -respon si -se qu -fa b -tribu te -hon ored -prac tic -pur ple -an ton -pa red -t ough -summ er -environ ment -s ons -ðŁĻ ı -m ps -gi es -her oes -t elling -hen ry -f en -know ledge -Ģ ï¸ı -f r -ne g -u re -ac king -hear ts -s oo -hol lywood -ju mp -sau ce -schedu le -tur n -yo ga -cre ating -c ket -cre ek -â Ń -custom ers -ma dri -gu l -asse mb -moun t -c ell -to p -st al -dav is -t wi -sig n -premi er -iti ons -he aring -un k -pati ents -app ear -heav en -al ty -doc tor -a e -plat form -je ff -ðŁĵ · -regi onal -bi d -box ing -ex ten -or ity -a w -w ise -il le -sever al -bi e -s itu -sy ria -âľ ħ -remin der -enter tain -li on -part ners -in n -ph ar -f au -pl s -expe cted -sug ar -deci sion -s b -ch ron -associ ation -leav es -vis ited -sh ap -ðŁĴ ĸ -fur ther -h ann -w i -run s -l er -fun ding -fil led -.. .... -tin y -han g -or g -co ol -se min -ðŁı Ĩ -spon s -nav y -sa int -dru g -d al -r oun -co vered -tra ditional -invest ment -de te -al ism -f low -n is -sun rise -fe at -f ted -we ird -je re -ve gan -medic ine -an o -ac cu -deli very -temp le -chang ing -wil son -phili pp -re fe -n d -is er -g ay -r and -ati ves -t ely -p and -intelli g -g are -am bas -de mon -commit tee -strate gy -refu ge -bud get -prote c -pi er -ex press -nom in -econom y -al low -ic on -gal ax -o h -indi vi -dem and -vir gin -lu ke -ali sts -man i -s mi -ju dge -ent y -mic hi -resul t -am ed -spe aks -' , -hou ston -sh in -b ing -fl y -ch em -au to -v as -ge t -ar m -thank s -d in -gan g -x x -si on -loc ated -p l -jo sh -in fo -jo ins -adver ti -ot d -el d -si e -re asons -v ent -ðŁĩºðŁĩ ¸ -â ł -convers ation -stu di -ðŁĶ¥ ðŁĶ¥ -go s -s ounds -un it -mu sc -ge l -ack ed -pac i -co s -de re -u u -a o -la m -inspir ing -ar ms -tw are -mat ters -ad dic -du de -ex t -cri sis -b ath -me et -sing h -expe ct -del hi -resc ue -wor st -au g -shi pping -ser ving -st o -dar k -ac es -histor ic -landsc ape -desig ner -b illion -gr ateful -wa ke -e ve -m iller -hou sing -dy nam -is co -be ha -sh op -pr ou -e as -a sia -e ding -k on -depart ment -aw ar -mar ine -in ci -photograph er -ta pe -lo go -r ings -d it --- -- -vin yl -w c -vo ting -se ven -ambas sad -dal las -t u -com ment -k ra -b les -w ag -u d -au dio -stri ke -offici al -o ts -me tho -to ols -ra di -al an -hun t -wat ched -a ke -fa ke -drin king -mer ry -m l -b day -ri o -ni ke -c ant -re pe -co stu -mur der -ak ers -ch ers -ou ts -beg inning -so s -ad es -n in -not es -wro te -sol o -c i -li ghting -ur ban -bre xit -att end -shir ts -pla yo -ac tress -pl ic -stand ard -quot es -par ade -anci ent - © -tur ing -re e -pri mary -fla sh -citi z -mat es -ste in -z i -clin ton -sk in -gen e -hu m -g ar -t le -y i -fo cu -de an -pl ants -cy ber -b u -om e -ho p -ad dress -ti x -gi fts -relation ship -sub scri -fe ed -exac tly -haw ks -ex o -stre ss -s n -arre sted -an e -sof tware -z ero -the me -mu mb -im migr -mi a -make up -ple asure -uni vers -har b -eng ine -ap er -r in -br a -institu te -le ather -al th -sing ing -co s -gh ty -me as -st ic -si de -insur ance -co t -pit ch -moun tains -cri min -su pre -valent ine -at er -wou ldn -sc ale -rel ated -re gar -star tup -pack ed -mi ke -week ly -p ts -coun t -ha r -gott en -min d -ber lin -con ditions -swit ch -cor n -sa ve -g li -emer gency -tun ed -sto ck -discu ssing -every body -s day -whe ther -wrest ling -ec es -gen der -ch en -ðŁij Ģ -madri d -mar athon -e gg -i er -th x -as king -kore a -wol f -ay a -g m -g au -at ory -v r -gra ss -k illing -b ble -ur o -un i -e th -sh ore -th en -re ale -bot tom -ex erc -k ar -or ies -ad ri -san ds -se x -. ' -volunte ers -per form -par liam -inclu de -deli ghted -execu tive -fu el -kis s -ã ħ -char ge -h u -ca kes -ve t -g lu -agre e -pr ices -n au -h l -g ru -ra j -streng th -b ic -sp ending -al es -av en -b last -: ( -yo f -nor mal -si x -qu ick -se a -d aw -mee ts -lo vers -upd ated -po tat -comple ted -coo k -opportun ities -p ure -organ ic -tem per -c am -avo id -par king -duba i -and o -di stri -to y -comple tely -don ald -tri al -bas s -b oun -back ground -v as -mar vel -lu m -ru s -t ool -com missi -throw back -fin ding -is lam -! ? -st op -e vil -or al -resi dents -i denti -o ak -ðŁİ ¶ -l il -span ish -chap ter -sto pped -direc t -ho sted -pic ked -lab our -lew is -defen se -à ® -health care -wh is -mat h -pe ak -ra ised -fi x -bu ll -th ir -chel sea -fol k -tr e -can di -pau l -ei ther -ad am -poe try -jewel ry -ðŁ ¦ -pr ay -Ø § -g c -o z -wi shes -fore ign -sun g -lear ned -en e -n ing -micha el -illu stration -legend ary -w av -b au -ðŁļ ¨ -cal end -stre ets -â Ĩ -mon ster -bu ck -g r -scho ol -ba th -wa ste -ne ck -ha wa -be ach -re plac -jec t -on er -fac tory -coun t -ðŁĵ ¸ -mor gan -der ing -se an -steph en -de p -no vel -vide os -ic al -press ure -arsen al -ex pre -ir s -tren ding -ss a -fla sh -re sear -thr ough -profess or -scul p -to s -gg ed -mm a -be e -a pe -hun ter -am i -he i -pla stic -bu cks -uni verse -le gen -niger ia -ple ased -ri s -thin ks -autu mn -i ds -d is -anth ony -ðŁı ½ -ak ed -gla sses -fin ance -z er -k as -con tract -nu mbers -sh aw -partner ship -t il -laun ched -s al -victor ia -theat er -usu al -nam es -perio d -eli za -i th -bar cel -ro cks -bag s -mat e -distri bu -j on -di ffic -ali zed -cur ren -sco red -b ha -du blin -ro se -in ted -soli d -beha vi -wal ker -simp ly -garden s -head ed -in i -ohi o -we ap -f o -gl en -e state -ran dom -th under -thr u -k ill -jac ket -it i -entertain ment -thanks giving -ent al -en coura -el o -a ther -tan k -high lights -f ting -ru le -model s -bor der -bj p -hus band -in done -ken ya -be ars -al o -n inten -pi x -str o -or ders -sal ad -ro ads -n or -l ation -sop hi -ðŁı ¼ -pi eces -b one -min s -inclu des -nu tr -phi l -s ent -fun dra -ga in -bor ough -n ad -mon day -activ ity -it ems -be coming -ken ne -de tro -car di -gue sts -u x -world wide -sever e -new s -thank ful -fic tion -ve ge -m all -si an -er al -inj ury -le e -men u -danc ing -scot ti -exam ple -( # -na i -studi os -ba i -ðŁĴ Ľ -j av -diam ond -vin ce -ric k -prote ction -lin col -cham ps -appro ach -d ar -m ile -clou ds -je ff -in fin -l ers -p les -pe ace -go p -âĻ ¡ -tech n -str a -a verage -ef fort -introduc ing -di versity -austr alian -am p -boo st -s ke -pati ent -appreci ate -ici ans -pu r -f ell -woo ds -illu str -ðŁ ĸ -ag ency -ac tions -brit ain -under way -se attle -el and -ag o -f ill -stre aming -pro test -challeng es -ky o -et sy -coo king -exper t -ru ss -rain bow -commer cial -sp in -be ats -c ry -val u -el i -th row -gr ams -le vels -michi gan -c ad -ador able -const itu -w s -pu b -mid night -th at -net fli -braz il -die go -regu lar -jo y -âĤ ¬ -li qu -ea stern -k ni -fl at -n p -bro wn -w er -se y -tt ers -ac ting -v anc -cy cling -program me -ra w -comple x -tat too -throwback thursday -se ssions -ro oms -si ght -speci es -bom b -lau gh -ke eps -mo on -offic ers -con ver -t r -ha sh -t ack -ri ous -ad ap -a j -reco gn -ex po -sug ge -confir med -rol ling -dre ssing -ic t -fri day -ph ones -ri dge -con cept -ro y -ke ys -ef for -c ate -k ne -ev en -l ay -commun ities -mo d -n az -every where -al ab -bit coin -ban ks -out door -feder al -sto res -h p -c al -m ely -sig nific -be ar -re public -clo ser -al lah -pic k -x d -pal ace -ch ill -b am -er ous -un a -al len -out standing -olym pic -supp ly -fi gu -v au -l p -char lie -un es -> >> -legen ds -ici al -co ast -benef it -mul ti -f its -far mers -am ount -si sters -har ve -hon ey -que en -b ers -pl ann -âŃ IJ -m u -barcel ona -al ber -stat us -re main -ex tra -c andy -vi ous -âľ Į -o v -warri ors --- > -ju mp -am ar -x mas -stu dies -i ors -k or -don ate -pre p -fi sh -im a -pain ted -ad mini -co splay -spor ts -dro ps -fi ghter -evi dence -ðŁĴ ª -la ke -ro b -cine ma -pro file -à ± -stan ds -leg acy -sh ape -ro of -ci vil -i ans -sy l -sh am -vo ted -re tail -ph illi -li sted -du ty -n b -th es -f are -au ction -ffici al -stor ms -d p -l oun -sh ops -al y -ani me -multi ple -ðŁĺį ðŁĺį -psy cho -je an -ap art -candi date -gg y -con f -jose ph -w ick -me at -fr ame -c l -for got -ph y -f ing -li ed -re p -se ed -f all -u fc -nu t -lin d -mo de -fiel ds -en ce -s ley -ðŁ¤ Ķ -ch ill -follow ed -announ ces -cor ru -tro phy -them selves -ac le -al du -k ong -l on -s v -bro ke -ander son -ta i -stor y -tempor ary -activ ities -k ati -ari z -cry stal -spo ke -extre mely -tra ding -ðŁĴ ļ -à ¼ -in ch -ed in -out fit -equ ip -ma di -form ed -be ef -po p -ti ger -this day -ti red -neigh b -re tro -is a -un t -t as -kan sas -de st -secon ds -ta y -hur ric -o u -galax y -dad dy -bro w -bur ger -en ced -de sk -ac cur -secre tary -el ite -k ab -ch in -touri sm -bud dy -ici de -dre ssed -u d -vac ation -che ers -com for -charac ters -j et -bu ying -l ins -n ap -reale state -li e -af c -i ii -f ame -n r -b at -ag ent -ma kers -âĢ ¼ -sec tor -op ti -le on -di et -pra yer -hi p -mi r -le x -br y -an a -pas sing -w en -reco very -ak i -po pul -res ort -mar ia -stu ck -read s -ti er -perfe c -netfli x -p oo -cham p -o c -re duce -we red -comm ents -cla im -acci dent -s ag -h ack -sal t -kin da -k iller -i os -z y -ex change -lec ture -eng er -ic king -t au -reve als -pri son -z om -gh an -u l -jour nal -i ot -tr in -jon a -govern or -cap e -quar ter -spec tive -impre ssive -bab ies -t x -m ill -o y -har ri -jo int -su e -collabor ation -tren d -revolu tion -re new -alum ni -ge tt -sh ell -sun day -ent u -ni c -donald trump -block chain -paci fic -expla ins -sp y -ad voc -par adi -to f -star ring -p av -fe ed -br ac -smo ke -ham p -y am -to kyo -si mon -d h -e ffici -phys ical -n j -ell i -s low -gradu ate -americ ans -ti fy -f red -ap ore -fin ds -rob in -we t -not ice -se mi -un ve -k om -pil ot -scre ening -da ily -ðŁĴ Ĺ -roy al -sp a -vo tes -n ag -wh ate -att ending -exper im -ad dition -k ate -sto l -m ali -foo t -chri st -ch an -de e -lic en -glo bal -mo ore -ti a -bri gh -myster y -y ay -âĿ¤ï¸ı âĿ¤ï¸ı -cre ati -me chan -clo ck -di c -âĢ Ķ -pp er -al ph -through out -al low -re sources -selec tion -ham il -bb q -aa aa -virgin ia -dis ney -en g -so red -drin ks -f ancy -consi der -end a -jan e -hand made -du l -on tari -i us -s ville -color ado -whate ver -whe el -promis e -ne ver -desig ns -ab ly -sex ual -vanc ou -at i -con vention -cul tural -sing apore -pro mo -load ed -gla sgo -pp l -n oo -ke e -ste m -men tion -i do -cru ise -ri ding -be comes -be y -âļ½ ï¸ı -tw in -dedic ated -na sh -de si -work out -jen ni -i v -grou ps -rela x -pho eni -li ft -mix ed -m ck -p c -mu st -me tro -ci es -y ar -a im -ang er -i e -rec y -marri ed -dro pped -eng ag -le st -ambassad or -op h -de s -w ick -assi stant -nat ur -fa il -l td -shor t -k ap -sha w -bi gger -rema ins -crit ical -sur vey -co verage -er son -win d -n b -bil ly -let es -ac ts -jim my -at lan -al and -t c -import ance -dam age -f g -stor age -tw t -bon d -bal ance -cr ying -pu ppy -vo te -pu sh -ðŁĴ ľ -pol y -me l -lon don -terr ori -effec tive -corpor ate -atl anta -jac o -nas a -gre ek -sen ate -i sh -ev a -intellig ence -effor ts -al co -k un -h all -di ag -claim s -fir st -h b -ba e -v ul -pu ll - ° -se par -spe ed -vic ti -on thisday -audi ence -r ates -te ach -fil ming -bu sh -son g -y um -br un -ra ine -aw a -par ks -ð Ŀ -ra bb -ra ch -ra id -reach ed -ra il -mo ves -selec ted -fr i -ra ising -om y -st ones -su k -franc isco -cas es -cap it -con fu -w tf -po ke -equip ment -gre g -ess ential -off ering -ne x -pi es -be c -cre ation -chair man -cro wn -w al -john ny -shi ft -ne ck -ban g -bir d -ðŁĺ ı -du ck -re serve -de pu -ma sters -over all -no tic -ju ice -sne ak -che er -cla sses -eag les -n ca -car pet -ci vil -coach es -har ris -u ps -b alls -dec or -mar tin -ro s -v ice -announ cement -who se -ti gers -ste red -c ts -dr am -ste el -youn g -inst all -supp o -recor ding -de ck -se ats -l der -ang le -bo t -sty les -elec tions -for tun -n ab -but ter -ari an -ka sh -in ner -ou red -be ast -we i -ic onic -exper ts -ne cess -b eng -jam es -li a -gre ece -ðŁĵ · -ðŁĺ ģ -good bye -m itch -tw ice -mumb ai -ste am -ru sh -med al -ne tt -fashi on -t ar -r s -sav ing -ric ul -l m -sleep ing -brook lyn -mis s -sen ding -disco vered -sp here -of theday -k icks -missi ons -w right -er n -ght ly -i ous -mel bourne -star tu -mo ved -car ry -d ak -ag ues -bel gi -e ma -way ne -do t -er ie -pe l -it unes -matthe w -no body -est ab -cal m -win ds -lu c -prep are -tren ds -exerc ise -adv ant -ðŁĴ ¯ -athle tics -app s -c tions -adv ance -laun ches -litt le -real donaldtrump -eliza beth -carol ina -hu b -hi dden -n w -us er -pol l -great er -mo st -f ed -p at -life style -s ati -sco res -marri age -l r -aven ue -de serve -ri f -ðŁ Ĺ -wat ch -champion ships -gr ay -en ni -cot ton -g om -whe re -pack age -su m -ab solu -new ly -foo ds -ty ler -assemb ly -musli m -ban k -re memb -op tions -produc er -land o -fun ds -u pper -shad ow -pro gre -co p -ing e -leg s -detro it -hill ary -jo se -gi ants -sou p -sustain able -t us -clo thes -roc king -n z -min ne -mat eri -bru ce -ear t -ca sting -independ ent -thou sands -ta h -de cl -veter ans -li ons -wra p -âĢ ¦ -de ss -bl ing -st ine -e ggs -o on -clo sing -z ay -at t -bac on -fa il -ariz ona -de pre -gho st -new sp -w ers -vi p -li ked -id ent -volunte er -ad ult -pu pp -cir cle -mat erial -degre e -gro wn -boo m -calend ar -su r -vie wing -ath letes -ch and -re ll -asi an -en tr -vol ley -victi ms -bo dy -m ama -trans fer -ge ek -in dic -sav ed -ma i -g ent -it s -loun ge -k ol -the ory -situ ation -is lands -ar th -z oo -floo d -vi ously -show ed -parliam ent -ch ev -el ine -at trac -ab ad -ta il -h rs -lu s -por tu -gor y -provi des -to ys -de ath -in fe -an ce -g le -li am -lo ver -hu d -dv d -reve aled -g w -re ment -ca the -l ying -ra dio -der by -stor s -che mi -hosp it -âľ ¨ -' : -ilo ve -le mon -re public -s ni -ne ss -do or -re action -pre gn -fla v -schol ar -spo tify -is ation -vis ual -aw are -spon sored -jo ke -less ons -leg is -lo ck -si mil -ðŁĺ ĭ -kin d -la y -ma h -ho ping -vancou ver -as er -clean ing -gal a -thre at -la p -ach e -ro mance -ex pen -re post -z am -e pi -mir ror -o ak -ad ul -bat man -s lu -l c -vie wed -re views -d ates -indone sia -acti vi -off en -lea f -i si -ag ricul -costu me -s ites -spir itu -appear ance -ir y -st air -applic ation -spec tac -ic ity -ski es -hand le -pun k -paradi se -t n -de al -provi ding -do c -recei ving -bre w -micro soft -à ¶ -fer r -me tro -th ail -y um -car ter -à ¡ -gent le -bre aks -coo per -show case -cu tting -egy pt -bab y -semin ar -gl ori -ss on -fa ve -re hear -lo tte -la dy -al as -pre p -deli vered -nu clear -ir o -engag ement -at ta -con ven -z an -gl ory -hol ds -busine sses -str ange -sch e -it self -gra d -mar kets -f alling -st ats -ge on -bu dd -li s -she et -thi si -co lo -deser t -regi stration -ig n -expla in -inter ior -la ws -writ ers -spr ings -k r -fri ed -blo om -inf ra -a o -cre d -pa st -line up -bo o -bre a -boo ts -celebr ity -att acks -bro ok -ev es -ex cu -cher ry -oo p -fas cin -boy friend -se as -n ine -effec ts -po wered -k ha -ðŁĺ Ģ -sh out -con dition -i j -her o -enter pri -win ter -applic ations -sho e -g el -batt le -pro grams -w art -ðŁĴ ¥ -ra p -ho l -dang erous -di a -coun ter -ric s -i or -k night -co at -emo tional -at ures -d as -whe el -fore cast -tran sport -glasgo w -king dom -prepar ing -im medi -ff in -awar ded -prin ting -ro man -fight ers -any more -bel t -p ine -win e -x i -employe es -logi es -al led -de mo -birth day -ange les -lo g -dri vers -neck lace -k ath -s it -athle te -ef s -s burg -pur pose -resi stance -rele ases -t is -vari ous -deli ver -ch al -s anc -opp o -cra w -neu ro -dr a -suppor ters -sna p -diffic ult -swe ar -logi st -pa th -attemp t -à ¥ -swim ming -ste ve -hur t -inclu ded -b ap -wa re -ðŁĴ ĭ -end ers -ja ke -le eds -cli mb -l b -im ple -li sa -clo thing -ðŁĺ İ -d t -com pla -sw ing -stra w -v als -k le -us ers -stor m -cu ts -ontari o -p an -hand some -i ow -ar gu -chec king -scotti sh -Ķ ï¸ı -si er -em ma -po d -patter n -de sh -en h -ed ward -t ing -k h -hal f -lincol n -mo ther -al leg -r c -volley ball -d n -g ay -all y -le ton -gro ve -l oud -adv anced -re spec -cli ent -supre me -thail and -ho w -gi g -to i -do t -dol lar -ðŁij ĩ -p it -r b -h n -produc ed -gg ers -âĨ Ĵ -ml b -can vas -fin eart -us d -in the -p son -actu al -s l -t b -ip ad -en sure -u mb -w d -sk a -mar s -k end -f eli -th ing -count down -absolu te -r out -dra l -p y -inju red -min t -hun ting -mm er -s age -li gh -ac ity -ex pan -mur ray -ar o -sec ure -four th -eag le -reli ef -st akes -industri al -clar k -under standing -see m -pl enty -sil ver -cla u -thre at -sa il -pro duce -ab str -is is -b r -eng ers -wor ry -bie ber -s j -just in -reali ze -ky le -esp n -fil ter -s ch -ty pes -game dev -d ing -twit ter -soldi ers -p om -car bon -y ards -child hood -ri ed -ke l -ele ph -t ons -key note -qui et -wi re -po sting -is sa -repre senting -bac ks -alex ander -celebr ates -ta ining -| | -ch or -esc ape -pe ek -ti ves -fiel d -ssi e -im pac -spons or -r c -we dd -cann ab -si des -trac ks -com par -con trac -techn ical -bi ble -expl oring -sh are -tra v -n ate -ill o -sc ru -m ingham -gun s -of the -sh ame -se es -ca tho -ac cess -ce l -repor ted - » -mari o -p ad -hope fully -ou se -y on -disapp o -ol o -p itt -pa c -ga p -cru sh -s g -k le -ge m -emp ire -dir ty -a is -avi ation -ze aland -fac ing -high way -d anny -spi der -ot ta -ðŁĺ Ħ -w y -col ours -in fl -co sts -olym pics -au s -h m -ho ward -pas ses -lau ren -mu sh -op in -r ho -disc ount -oper ation -em ily -mm m -cham ber -d il -to yo -shi p -sam u -pic tured -un ic -po l -keep er -carto on -st en -ig nor -n ations -n l -ta sting -deta il -offici als -mo tor -franc is -ed itor -ðŁij ĩ -pe ts -rang ers -t g -r n -w ri -nic hol -i se -spo ts -ani e -chec k -tri ple -ku mar -spe akers -ic ing -pre pared -ab use -friend ship -mon th -swi m -air e -sc ent -hamil ton -indi an -j es -yum my -te ars -da wn -i zed -worl ds -ðŁ ķ -b illi -st one -n hs -ba sic -p or -st le -ir on -ol der -cle vel -e ing -ðŁĺįðŁĺį ðŁĺį -prin ts -fir m -air craft -fin est -devel op -aar on -t z -gra ham -own ers -fo li -less on -qu es -bab e -cra ft -ph en -ju n -bir mingham -v ine -ll er -i an -fineart america -evol u -st ab -im per -war d -com ic -wi z -inv ited -du ke -mat ch -por ts -ro ger -diag no -ke pt -te st -vis u -r hy -so c -to x -b aker -sur face -co vers -man s -b its -x box -ff le -n an -gar d -h art -wat ers -v illa -re tro -light ning -catho lic -democr acy -neigh bor -pen n -cr an -jona than -la ura -vi bes -su b -coach ing -clear ly -uk raine -bra ve -commit ment -t all -mar t -ra p -mo di -sco tt -bro s -show er -ðŁı ¾ -âĺº ï¸ı -cou sin -appro ach -br e -com pos -hil ari -phil ly -g ad -quick ly -ri an -t m -vir tual -hou ses -k t -phoeni x -w ire -ff y -b unch -anc ing -tal e -snap chat -star ter -h t -k icking -ap art -th y -) ! -blo gger -it z -com fort -ang els -w ash -" : -ar gent -re quest -hon est -mi ghty -bo bby -k g -ro l -thou se -ex po -h c -tab les -mag ical -po sts -de m -n w -or lando -ab er -* ** -ðŁĺ ľ -environ mental -trans formation -mi le -w ic -hir ing -ma ine -bo ar -r ying -ti s -nit ure -twee ted -anton io -opin ion -fin ale -di y -f is -th in -trou ble -le go -fi les -qu art -sp a -curren cy -cli mate -fan art -rail way -sp ace -ban ds -dani el -mo tion -l eng -hol der -oc cu -mar ie -cathe dral -bu zz -bi es -nas car -bm w -bat tery -char lotte -doc tor -zz le -se ven -in san -d dy -st en -lab or -thr illed -se ren -docu mentary -wav es -cer tain -can did -allow ed -ninten do -star wars -ta p -home made -d les -ther ing -bre e -emp ty -pi ano -pos iti -coun try -por k -pu ts -per ry -m atic -spot light -ti st -or ities -we alth -c p -bar bar -commit ted -as sau -pro fit -e ight -hu l -fini shing -run ner -ss o -insp ec -char ged -christ op -lo sing -co al -ho o -ele v -de le -mo ham -don ation -c able -clin ic -j in -manag ed -ter ing -â ¬ -ur ban -depu ty -bb er -bur n -acade mic -o tt -sta ke -it er -sto wn -ack er -advent ures -ad ams -gre g -pro m -vo l -ac qu -con gre -pa int -citiz ens -c all -af ford -v c -as ks -the tic -independ ence -â Ľ -h itting -bl on -fu ture -â ı -in no -gen e -bo ards -di stance -se t -re mem -th al -pre vent -l ang -ob jec -su sp -mat t -in duc -bor o -pi one -re di -vir tu -prin ted -sco pe -shar k -suc ce -a stron -il legal -j ag -c ting -ine e -at o -rob in -nutr ition -b f -du tch -b n -fur niture -for gotten -at ar -ru p -hy per -bran ch -communic ation -degre es -on ia -un cle -promo te -or che -wi i -j s -but ton -ma jor -c bs -bri stol -premi um -ordin ary -e dit -m g -we ed -st even -: ' -gu s -te s -cap tured -dru gs -do w -wr ites -bi shop -whe els -ali zation -disco very -w r -rach el -ne il -hy dr -cu test -entreprene ur -kore an -ore gon -ul ty -perfec tly -suppor ted -histor ical -t wins -ell y -we l -de vil -in come -scienti sts -de leg -h en -on i -ic ed -gi o -cur ry -reve al -e g -buff alo -n ol -op era -camer on -haha haha -j ab -gradu ation -cra ig -r al -i f -organi zation -le ge -g ang -su d -edin burgh -l ack -fli es -g ate -thr ones -q b -the real -e leg -pp in -c les -jam ie -tn am -cryp to -ou l -p ages -a se -roo ts -stu pid -a did -boo t -prote in -s ap -si um -su s -end or -fun ction -don t -en na -ch y -squ e -wor ker -m tv -e a -k an -ðŁĴ ļ -mu s -professi on -t to -oper ations -al lo -c tor -inv ite -sc and -ou th -z im -lin ks -cli ents -sam sung -discu sses -n ell -ul tra -some where -ste wart -ine t -de z -b out -fac tor -ti an -tr ans -jere my -d b -ðŁĩ ¬ -or n -develop ing -spo l -coo per -ma u -rememb ering -tre k -famil y -sen iors -fo ster -att ended -w ing -trans form -ele mentary -hor iz -li sting -malay sia -it ch -warri or -philipp ines -russ ell -m end -initi ative -cre ep -to ps -br iti -a ur -shar p -adverti sing -ug ly -achi ev -materi als -bu g -dev ice -bon us -fac ility -col e -nh l -y as -plann ed -pol e -excell ence -tr ick -con fl -r p -achi eve -lo an -swa g -jess ica -ho we -p our -sc u -z oo -r ated -dre sses -re bel -mex ican -co ordin -me ss -atlan tic -t l -osc ar -wal ks -phar mac -investig ation -... # -cc i -eas ily -monday motivation -y ment -au ti -for ced -ar med -colle agues -pap ers -pro per -sha ke -bu c -le an -exhi bit -e vement -co tt -bi z -sp er -k ent -sw an -/ @ -girl friend -haw k -âĺ Ģï¸ı -mon o -ðŁĴ Ľ -stat ue -ðŁĺ ³ -ra s -te eth -preci ous -t ile -p am -swi ft -v ali -no se -dr unk -experi ences -come back -gen ius -wor se -sh ef -ra d -ed it -hon our -au spol -lar ry -h ire -gor don -achi evement -.... .... -su icide -alter native -su p -sur roun -sha ke -ke ith -pe pper -tur k -crimin al -be ck -su m -w alls -cn n -an tic -of fe -col li -win es -high light -hawa ii -emb ar -l fc -ðŁĩ ® -m v -> > -at mo -wor d -car l -shout out -bre wing -ì Ŀ -do f -s ic -hot test -col on -hh h -shu t -low ing -volu me -apart ment -agre ement -de stro -we e -religi ous -iow a -ro d -land ing -re present -ðŁĵ· : -la s -usu ally -h l -c ac -sal v -al ong -laugh ing -be ans -remin ds -pha se -some body -ma sk -ran ked -dest roy -sc i -â̼ ï¸ı -gab ri -le o -ro a -fa iled -si l -refuge es -re vi -r ing -ber ries -coo kies -y y -conserv ation -sh ab -human s -de termin -a in -ni all -as su -mb a -fro m -extre me -vic es -commer ce -ght ful -or dered -suppor ts -re cap -v or -dro pping -correc t -pay ing -mean ing -n j -qui z -" # -busine ss -ðŁĩ® ðŁĩ -indi gen -du st -box es -bl ind -x xx -zz y -ðŁĩ¬ ðŁĩ -ss els -s ant -dd le -hilari ous -desig n -wonder ing -vehic les -k re -ju d -rece ption -par ker -Ã Ń -pri vi -hy dro -sof tball -pol lu -lo cked -ba h -e ar -scri pt -di vi -br ace -geor ge -the ast -bel o -j al -tion ary -dent al -roc ket -pur ch -sh ak -manufac turing -e z -it is -con cep -tb all -ch s -direc ted -pra yers -oo k -phil os -vari ety -che ss -ser ver -g and -bal ti -ðŁĵ ¸ -sel y -cru z -spectac ular -bur ning -re present -i z -t one -mer ce -h ell -bed room -estab li -bo l -com mon -ãĥ » -ab or -kit ty -hei ghts -re pair -willi am -qu ake -alab ama -popul ation -re v -re tt -i sts -n ite -le m -a ha -clevel and -r m -po ver -ob se -mon tre -man ia - ® -con ne -car ni -sh ah -f y -u a -sc or -strugg le -bo b -' ' -appro pri -deci de -ff ed -ca ster -s ort -hun gry -dra g -ا Ù -gr ounds -d w -sli ghtly -car din -dead line -bron ze -web in -bar ry -sil ence -e uro -op tion -ear n -ðŁĴ ĸ -howe ver -na ren -na ils -bath room -v ine -ph d -min ing -gar age -( ) -shou lder -defe at -di r -o v -liber ty -ple as -x on -com pre -a v -j in -ab les -sil ent -fam ili -vis its -di pl -ha bit -milli ons -regar ding -innov ative -sen ator -r ts -v on -k l -wh il -requi red -âĿ Ħ -lu v -presi dential -po cket -hun dre -sho wn -fro zen -to ward -fa st -confi dence -r ough -indivi dual -qu et -ðŁı ½ -dom e -fi fa -engine er -z en -re mix -ðŁĺ ĥ -pl ant -min or -robin son -as y -pul led -cer tain -potat o -( : -pre s -oc ca -w it -it em -si e -d ating -thom pson -own ed -an u -vi e -te dly -good night -ex cept -ðŁĮ Ł -ira q -ki e -ren ces -li p -simil ar -sau di -vi g -arth ur -pic ks -mil an -hon da -ma xi -o g -ste st -ar ch -analy tics -ba sti -pear l -ter ry -hor se -ast ro -ac ce -laun ching -inter national -s no -ta sty -den ver -ir l -pe te -tor n -advant age -var sity -" " -sol e -g c -lan g -demon str -ol ds -un ity -ne ts -insp ire -cre te -nash ville -nel son -e ter -wal k -hy un -m ack -tre as -see king -ra ge -bru sh -ab and -whil st -co con -h ong -shel ter -i p -possi bly -so o -it ed -â Ħ -rac es -war ming -qu in -tele vision -mat ches -ra pi -ment al -pal m -jenni fer -rol ls -indi ana -b ars -cat ching -resc u -candid ates -fa re -âł Ģ -se o -vie tnam -alph a -michel le -visi ble -re gre -wn ed -app le -li p -f fe -li z -york shire -ha il -se asons -be gan -m d -k c -la p -fascin ating -hel p -ur y -u ms -nu ts -se m -along side -bri dge -ori al -o ve -world cup -briti sh -comfor table -i ve -hot els -fair s -hor ri -so x -d ining -stre am -bar ri -ss y -w im -ter ms -v u -pe re -l ens -wal ked -r or -l ars -shi eld -dou bt -pro to -cro ssing -me ant -medi um -ad ding -e b -che ap -fun c -pap er -bran ds -ry an -feed back -col lins -un known -tro pical -sand wich -fal len -for mu -selec t -lo ads -answ ers -or i -mag a -d or -du o -ali e -dru m -ur i -de er -sou l -sh ut -âĺ º -sto len -don ated -bu zz -patri ots -ha l -na sty -nomin ated -mon te -ki a -th ri -ing u -te sts -pe tro -ðŁij ij -ho sts -ne st -to pic -pat ch -m my -hu gh -ab ilities -ma the -s miles -g b -ag enda -insi ghts -chi p -ph an -fail ure -dg ers -ha i -signific ant -sho ck -ru ral -gl am -figu res -pot us -o ta -mini stry -appe ars -fe ar -r h -americ an -h att -son y -fi res -e di -n ou -e qui -wh en -univers al -mad ness -i x -sculp ture -b ach -t to -swe den -et a -en to -develop ed -month ly -ma ps -ra h -le d -del ta -sa ints -is lam -ben ch -fif th -v ard -so cks -wel coming -j e -tur ner -v b -ad i -nor way -ad y -hurric ane -por sche -tra dition -ex am -newsp aper -lu ci -a ver -ide al -d na -madi son -ðŁ § -wit ness -ac ou -insi ght -si mon -robo t -sna ke -n bc -ac o -ro ss -sh ment -religi on -ch ann -in su -camp bell -inst alled -we ather -hor ses -ol i -rober t -k az -ðŁı Ģ -veter an -th read -quar ter -ea sier -cap ture -hi pho -law rence -roman tic -pas sion -cl ay -ox ford -th ai -stu dying -fi a -elec ted -most ly -c b -tu mb -âĢįâĻ Ĥ -x l -sh an -fa ster -ev ans -sli de -sh ri -see k -mi es -chemi stry -pump kin -tu m -, , -ro om -fi red -li ps -pres ence -af f -brew ery -arri ve -sw ag -photo graph -pen gu -chi ps -at tor -val ues -accur ate -con temporary -princi pal -cannab is -ari o -any where -gi a -democr ats -buil dings -li ved -ap s -neg ative -m are -bal lo -li on -diam on -loo k -re form -tom my -il la -tre ats -hundre ds -port land -wor thy -ex cep -ar ia -ido l -be er -cd n -y u -aw k -ðŁĩ ¨ -c ells -à ³ -ident ity -dra wn -de vil -f inger -th am -ðŁij Ĭ -ear ned -fin tech -dol ph -twee ting -evolu tion -ðŁĵ į -est im -m vp -n one -ðŁĩºðŁĩ ¸ -toyo ta -au x -mar in -b old -l bs -ste ak -mur phy -it able -lou is -sol ve -pi a -sk ir -ill ino -webin ar -ban ana -lo v -th on -vo ters -afford able -defe ated -lm fa -air lines -super b -any way -deb t -bo red -ver si -me tal -responsi ble -m k -s se -f ay -cau sed -f p -recomm end -pla za -spor ting -alli ance -au stri -n n -t ours -surpri sed -arti f -th under -sur ve -wor e -bri ef -necess ary -z ie -ash ley -dra ke -r t -kni fe -im mun -char ges -a the -bri de -rep ly -g av -broad cast -pu er -brace let -cap acity -harve st -id k -perfor man -d ding -il ers -par a -jam a -pro vince -ch in -id ers -har i -te aser -ch en -re stor -r at -fl at -col om -ðŁĴ ŀ -ðŁĩ¨ ðŁĩ -smoo th -r t -p itch -stay ing -isra eli -t cot -per spective -do ck -open er -lo vel -x o -class room -l ington -go al -kenne dy -sh am -sp aces -mitch ell -home coming -uk i -claim ed -recru it -ing o -mu fc -mon it -g roo -resi dent -per cent -per man -otta wa -int ment -an xi -stand ards -wor ship -sche me -f x -pot ter -bi an -athle tic -af gh -s se -sat ell -par ties -âĿ¤ âĿ¤ -infra structure -rela x -mo du -wor n -smo king -y ach -practic es -wc w -am b -dome stic -tay lor -k entu -provi ded -mo di -ve g -" ... -ob serv -ðŁĺ © -be ard -m our -an gry -ðŁĺ ± -startu ps -woo den -di ve -na il -anti que -ro ses -torn ado -m at -^ ^ -su spect -far m -de vices -me ga -tu l -scholar ship -ge e -disa ster -arri val -po in -mar c -kati e -bb ed -fal se -deser ves -ric hard -ju ana -fre y -tion ed -hy bri -r w -sar ah -ach i -c ure -o le -mor ris -ch ic -broad way -la bel -pa k -pover ty -gol f -e red -f u -er ies -be es -alo gue -st el -wire less -je wish -ti de -blo cked -life time -b har -sp lit -am ster -th i -jo shu -br unch -ha ps -s for -oo ps -ka poor -hi king -suppo sed -ro of -re as -tra in -ti ght -tru mp -bas ically -r r -ea red -see ds -entr ance -c p -wi e -son ic -vic tim -he re -e h -ear rings -sal mon -arc tic -an ne -dou gla -corru ption -hann ah -ha sn -vo ices -con ce -att a -fle et -clin ical -democr atic -ton y -st ood -le f -twit ch -a il -honest ly -incre ased -dro me -don na -accep ted -visit ors -ap ar -ad or -p ar -jer ry -ra i -brand on -ab u -!! !!!! -me me -in gh -glori ous -b hu -pu mp -j ol -li ke -fi sher -ma z -ag an -destin ation -play list -le tters -gen u -br ace -celebr ated -bann er -r he -dra gon -ðŁĺ ħ -sig nature -gre y -âľ Ķï¸ı -al ice -be red -ph er -ber n -ca th -ga thering -sc oring -influ ence -sm iling -de pt -lo cal -a x -ac u -reti rement -hon or -her self -chem ical -asse ss -y all -fre qu -appreci ation -ac a -cho ir -cu z -so il -c il -repor ting -u h -enterpri se -gr at -jaco b -ru m -fe e -j ak -sp in -bi kes -phi a -ste re -p is -bloo d -t att -ra ft -war ren -sh eri -back stage -mar sh -hash tag -ther ine -re in -game day -guar an -reci pes -min ds -stron ger -issu ed -bic y -n ak -ment ed -sc ary -u x -pre vious -tt le -th ats -ac tors -u ma -tin a -bun ny -promo tion -u ss -oli ver -montre al -what s -appreci ated -la kes -excu se -kno wing -pri zes -musc le -shad es -sco t -ing redi -electr onic -ju an -comb at -s ri -e h -turk ish -l om -stri kes -pri son -re e -po pe -vi d -ol dest -dol l -sw iss -certi fied -cli p -re turning -lat or -le igh -tt es -wat son -heal ing -el im -per haps -ha ss -k au -d der -mou se -new castle -indigen ous -wel comes -co le -tau ght -no ise -appe ar -jo e -can on -wedne sday -u tah -c tive -dri ven -i v -c ell -stri p -ac c -focu sed -ar rest -sto cks -wo o -â Ĺ -notic ed -shad o -di spla -ter ror -bor ne -secon d -que ens -wo ke -ja il -no tt -cam bridge -har t -se af -fa x -ac cept -âĺ ħ -goo ds -k at -t win -h s -thou sand -s ins -su ite -amp ton -ar n -rele v -ric har -hoo ps -n bc -class ic -p ab -soldi er -de plo -le ans -install ation -cla sh -le ban -ee e -ti re -belo ved -fu sion -travel ing -ne i -coo kie -glo be -phys ics -s q -co l -wol ves -d l -ex it -" - -foo tball -le af -ster ling -hi de -minne so -fresh man -natu re -indi e -supp lies -bri s -iri sh -ink tober -doo dle -ic op -mess ages -adul ts -recor ded -fix ed -ar do -offe red -under ground -dr one -p ine -ma inten -and re -ham mer -s x -r ound -hi ke -bra d -ro me -fu ll -on ey -ro ws -colum bia -archi ves -appro ved -bat ch -illino is -recogn ition -shou ldn -fo g -nca a -ke vin -human ity -al though -pow ers -p ou -s ar -pe st -alco hol -con sci -phil adel -en o -t m -ok la -cate gory -particip ate -accu sed -bri ef -po em -clu bs -consul t -ja b -big data -amster dam -ac ing -certi fic -n u -d at -impro ved -and y -campa ig -pale stin -p ace -mo bi -feel ings -wol f -bra in -pro pos -inter active -prin ce -inde x -c is -cha e -peace ful -co vering -ac o -cour ses -mon key -re place -b l -bloo dy -tal es -brigh ton -neighbor hood -g ates -spiritu al -af raid -bre ast -b ones -ðŁij ī -vide o -w au -tou ch -inju ries -car l -ri x -une x -âĢ ¢ -fre d -consi dered -thu si -an ch -on y -u sa -graph ics -ac re -ðŁĺ © -com memor -com mod -go ti -guar dian -star bucks -pre vention -haha haha -admini stration -portu gal -fac ulty -bet a -ul a -al bert -bre ath -er i -le tting -tr ic -ment ation -incredi bly -ten nes -v d -ðŁĻ Ī -ed die -br ick -gr ill -bt w -wat ches -resear chers -t ney -ni e -p as -a ster -vi br -poke mon -ch rome -go at -pitt s -il ly -festi ve -y d -can al -ðŁ Ĩ -fi es -car los -re que -partic i -tra ins -sam ple -temper ature -sym ph -pic king -in door -z ers -playo ffs -____ ____ -ap es -ly rics -islam ic -performan ces -d ick -spar k -se as -hom a -gr ound -disc i -employe e -com mu -alas ka -al an -fe ast -dg ing -ban king -manu el -slow ly -tru cks -mc car -oo o -sc rat -orche stra -indivi du -m x -bre ath -stair s -equ ality -bla ke -loc ations -cocon ut -balti more -aa a -l c -ðŁı Ĩ -har vey -resi st -immigr ation -adid as -fil i -re f -lg bt -mo s -pp i -ken ny -terr or -ban e -apol is -s g -social media -ka i -hon est -as sas -bol lywood -âĢįâĻ Ģï¸ı -ferr ari -hor n -cryp to -bo om -mainten ance -i di -s man -w l -ext ended -in sul -ve s -go sp -tr i -pi g -tar ge -cel er -st ati -sm h -ri dic -appe al -? ) -con clu -cos me -she ep -christop her -en thusi -po lish -me ts -oun ded -sustain ability -creati vity -con crete -ra i -ali en -ble ss -te es -clu b -ro t -bo s -ex ist -perfe ction -lu ck -rock y -expen sive -mean while -happy birthday -pre t -thr iller -ca ve -playo ff -som er -l u -le x -def ence -am writing -home less -pro phe -ch et -past or -ðŁ¤ £ -land er -ww w -Ģ ï¸ı -tic a -! # -o tic -rad ar -po sters -pow der -po li -ha un -tra p -bl in -assau lt -shor ts -re y -sh y -squ ir -rac ist -gar lic -fu r -remo te -sm ell -impre ssed -fing ers -âł Ģ -din o -le ment -s nu -promo ting -str ing -produc tive -b age -ma son -ra z -direc tly -j k -ev al -ðŁij Ĭ -doc tors -co w -ri der -st v -re move -w u -na than -ro d -n r -= > -affe cted -inve st -mp tion -g inger -o d -agricul ture -s que -mu g -coun ting -ke e -mag nific -coo k -ani stan -roo t -plac ed -sym po -gh ana -un d -che er -thro wing -secre ts -f illing -opti mi -butter fly -bu bb -ðŁĺ ī -terri ble -d g -sil k -obse ssed -lo u -ai de -sal ute -mon u -philadel phia -scienti fic -i st -u ae -dess ert -bott les -can yon -ðŁĺ Ī -car ib -o ther -w ich -re source -guil ty -un d -le on -e ss -kan e -el e -tra iner -he im -an te -man age -roo kie -tre ated -po ses -rs vp -cau ses -aw ak -je well -le tt -on ics -tit les -cardi ff -g aga -bu mp -use ful -? ! -loo se -bb ing -: : -argent ina -de bu -cy cl -wh el -dis gu -j el -k ills -bio logy -ex ter -tra sh -bo dies -tr am -circu it -expe ct -la ds -w ells -sho t -ge e -naren dr -fa stest -b ent -b ills -mar shall -h ats -intro duce -citi zen -im possible -gi b -az z -net working -r ant -thin k -in dy -st ops -f theday -bri an -* * -amo di -dom e -coura ge -pac king -af fairs -g n -si zed -ent ary -pol and -swit zer -afgh anistan -w u -ten der -subscri be -mo sco -att end -republic an -hon ey -âĢ ĭ -si mul -we ster -foo die -or o -midd le -ab t -co pies -ma je -narendr amodi -ty pical -inspir ational -vit am -wis con -cu bs -tiv ity -h ali -e ars -k ay -d are -mari juana -cu rious -an ia -tom ato -re mind -ðŁĩ · -sc ared -cou p -po et -land ed -ri d -wra pped -mor ri -climb ing -e ws -fe eding -con tra -tho logy -gri d -ti vely -read er -la ser -di ving -di g -lat in -ti ed -shake spe -o ci -ad m -show ers -chu ck -mar cus -oo s -kne e -o live -ow l -dy lan -an no -g ym -deci sions -well ness -arri ves -sati s -chri s -thur s -ðŁ¤ £ -inter views -thank you -switzer land -over night -journ alist -ser ves -vol can -.... ... -plo t -nic ol -car rying -mag ne -tre asure -ex p -be ver -ðŁĺ ¢ -mar ty -mo le -don ations -recogni zed -b h -du s -sh ann -al do -success fully -ent e -ðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ -cab inet -cu is -tit led -d as -so l -strate gies -deli vering -ad ds -ani an -ne ther -ðŁĴ ĥ -con tain -su its -pa irs -to dd -rel la -ro pe -ci o -cro p -paint ings -su z -re jec -bu st -d h -fra ud -m h -contro l -je al -destroy ed -al lows -wo ol -minneso ta -om en -j u -sympo sium -d af -lim it -accoun ts -load ing -inter n -re solution -hol land -qu al -meet ings -gra ve -cam ping -v am -re nov -liber al -am ber -gre e -hu mb -fe ver -el ing -broo ks -à ² -be th -ad ed -al t -ro e -perform ed -jo sh -frank lin -nic ole -de ss -bb s -m g -net works -min im -al t -weap ons -gu y -jas on -g ha -harb our -at on -pra ise -kentu cky -bel fast -st icks -blo ss -ho pes -an thro -famili ar -wa it -ch ile -depre ssion -la x -je ts -le ice -recei ves -si er -an k -de x -inde ed -fle xi -fab ric -lam b -hel icop -am anda -âĢĶ âĢĶ -compe te -sn ack -techno logies -sy rian -mom s -mu ham -cho sen -an at -dev on -shar ks -re t -fundra iser -selfi es -st ations -communic ations -tennes see -tu tor -ro t -valu able -dynam ic -nur se -i ed -earth quake -deser ved -a ve -sar a -stre tch -dougla s -ne pal -à § -ob viously -d ame -ra pe -any body -k w -pat rol -hol ders -h anna -info graphic -ec o -be ating -stan ley -bo ats -ri bb -e z -wit ch -inv a -ac id -boar ding -- @ -gi l -da ve -care ers -opp os -l loy -in ter -do pe -re su -j agu -sh ade -in dy -on ist -rel ations -ag en -ab le -inci dent -me ter -shar ma -id r -pro ve -immedi ately -tro ops -am an -g low -gaz a -blo cks -person al -chron ic -all er -si d -sh r -whats app -lu cy -ar chae -ho u -journ alism -our selves -go t -the med -shap ed -we ak -cas ual -leng th -sla m -ab bey -e v -coun ter -est a -reci pi -cha pel -expan sion -sel f -suff ering -sp ice -n z -sp art -desp er -boo king -quart ers -y on -ðŁĴ Ĺ -p k -continu ed -- # -man hatt -tal ked -sh en -com bo -hybri d -je ans -liqu id -se al -re tweets -ac celer -collec tive -t as -: )) -profession als -ra w -o tt -su san -ir ing -okla homa -re ven -survi val -cre ator -tran sit -st ac -sur f -i k -ed iting -ch illing -bai ley -ste al -ra ble -pa rent -hun ger -sn app -collec t -philos oph -dedic ation -c f -c m -le ep -repe at -re ha -un fortun -a er -a ero -abstr act -mon itor -ag ents -bu l -sci ence -harb or -drag ons -floo ding -ac compli -d ash -juli a -the red -tues day -cy ber -b low -ta ined -le m -refe rence -pp o -ne goti -char le -con nor -au lt -access ories -commissi oner -rain y -re ar -advis ory -luc as -ma id -co al -k av -pol o -ðŁı ¾ -tran sport -mar gare -straw berry -bur ns -gre ens -ne v -partici pants -col in -belgi um -col our -in form -d ell -br on -cal y -kick off -strate gic -re union -hon ors -li b -egy p -âŃIJ ï¸ı -hy po -si zes -regi stered -bet es -relax ing -bloo m -inten se -valent ines -insan e -w wii -p x -tri o -bla de -wiscon sin -con e -plat in -ali ze -ra ven -incre asing -indi ans -il ian -bl u -rabb it -exten sion -je f -au di -fer ry -s ell -a day -us b -swe at -cham pag -metho d -mem ph -assi st -s by -ca pe -remo ved -mag n -v t -r ams -f bi -tack le -phe w -h on -motor cycle -su spec -eleph ant -sub ject -let te -da iry -whe at -awk ward -ac t -tro l -mit ted -zay n -sheri ff -ene my -con s -ke tt -bul ls -ev alu -bt c -satell ite -ho lo -por ter -dia betes -bet ter -rele asing -sur f -: - -se basti -collec ting -en cing -e thi -go ds -al ley -health y -m ills -sma sh -co pper -cr ack -read ers -sp ac -licen se -bas ket -bang la -en tic -om i -m ere -si vely -anim ation -lan es -dent ally -chill in -fi e -k aren -dep th -li pse -n g -ri p -mel o -sand y -ðŁijı ðŁijı -vin cent -nu t -hu g -who le -cre ates -? ??? -âĿ¤ï¸ı âĿ¤ï¸ı -bak ed -up grade -rober ts -har a -carib bean -auth entic -mb s -mosco w -attor ney -wi ki -ch lo -hu ll -cor k -" ! -sty lish -ðŁĵ¸ : -di ary -impro ving -ex pand -bri ght -pollu tion -k nights -person ality -chec ked -fac ilities -z el -bow ling -gu er -ðŁİ Ĥ -on going -un its -hoo k -be ck -confl ict -to dd -far ming -educ ational -k ak -cla y -stro ke -bel ly -explo re -mill enni -th m -loo p -sm s -consi st -cir ca -br yan -d ab -youn ger -soli dar -pp a -experi enced -b ella -bo ard -shef field -steph en -consu mer -sub mit -spon sor -t ang -ag gre -comb ined -trac king -sand ers -b az -survi ve -fer red -equ al -se p -re ed -str ong -priv acy -st ap -un g -ac ry -pa sta -pir ates -ag er -fair y -du p -introduc ed -wi p -let s -spr ay -ðŁĵ º -gre w -a sts -pitts burgh -new york -jo ey -lau ren -tra de -ch op -pi pe -cla ire -behavi or -v ap -cre ws -lap top -ðŁ¤ Ĺ -che ster -disci pl -d f -out doors -k s -go ver -super star -cas ino -far mer -; -) -re turned -ðŁı Ī -ma il -roa sted -co sta -v ill -pe z -gard ening -distribu tion -sh ining -inve stors -ra sp -dec ades -reali zed -bar n -p ti -st able -ut d -pan thers -m ens -b n -ca de -bu cket -yn n -when ever -wa ke -da is -ber nie -lo dge -ju lie -atmo sphere -ðŁĺĺ ðŁĺĺ -major ity -par ti -exc it -cu t -me h -musli ms -be gun -fli ghts -vene ss -ce me -po sing -so le -g ou -dark ness -pe ach -cel tic -auth ority -grand ma -ful ness -smi th -speci fic -gar cia -co ins -good ness -aldu b -recru iting -den nis -gar y -sle eve -weap on -pl z -disco ver -harri son -recruit ment -ja i -ch im -com pared -tom s -mo thers -am y -archi ve -t ask -ben jam -se g -law yer -al um -inve sting -mi e -che z -j p -a ke -fl am -wall paper -âĻ¥ ï¸ı -t ton -che st -favor ites -we igh -coo lest -r ating -relev ant -lo gan -ma ple -run ners -pri or -peop le -ma ur -terrori st -te sted -carni val -su spen -me asure -m v -cyber security -app ren -terror ism -o z -v ital -ni es -gon z -fun ded -twi st -assess ment -die sel -en for -colum n -ad dressing -ca sts -pay ment -x ton -fi er -, ' -la st -ne e -un less -clo se -sk ill -cuis ine -fun eral -ti les -a un -k ru -relation ships -ðŁĴ ¯ -ev ent -âĢįâĻĤ ï¸ı -kind ness -pro posed -acou stic -a es -defen der -dan ce -h tt -w at -vo y -ðŁ¤ ĺ -au s -cli ff -sear ching -beauti fully -in qu -at l -speci alist -ðŁIJ ¶ -da i -tra ils -class ics -inst ant -v ous -re venue -mar ch -kir k -fr inge -fire works -tri via -âĺ ħ -tr action -wal ter -mo to -l ily -att itude -cli mb -sc an -sav ings -c w -fa ith -cred its -ab led -gra ff -auto graph -he he -ran ch -ha d -ro gers -ðŁĮ ¹ -f in -re qu -fol k -ad ditional -lyn n -u ber -dol lars -lo gic -wor th -so m -the sis -p ound -bi c -st ur -cer am -spen cer -en tered -v amp -organi zed -âľ Ī -pp s -tr on -merce des -no ti -compet itive -do w -ous ness -vic tor -gr illed -na i -pu tin -ab ra -bl ame -alex and -anim al -dec ent -p ent -inter ior -:' ) -but ler -bal let -ðŁĴ Ķ -albu ms -down s -la d -si r -pla in -p ers -blon de -dis c -paki stan -se ment -ga a -w age -ch as -man i -co ps -terr it -lo l -lau ghter -ri vers -magnific ent -lam p -w b -new sle -char ts -ble ssing -p unch -lon gest -fl oral -cu tie -fare well -sto pping -mb b -bu d -chee se -de cla -si m -mc donald -de ter -you th -t ch -fre der -kin dle -fer n -at or -as leep -p ond -spr int -p ounds -la zy -gh e -fundra ising -dead ly -gran de -dou g -he y -lin da -consi dering -i um -gol den -vi k -auth ors -di ss -u ally -appropri ate -mor ning -y le -hon oring -foli o -be c -re bec -fin land -formu la -corn wall -sh ay -cau sing -bl end -sig nal -t ent -kash mir -nation als -har mony -sc out -acce ssi -he ight -medi eval -impro vement -ke es -prac tical -car d -de par -hu n -om ing -cal gary -ste l -bu bble -gur u -ma h -unex pe -n h -ed a -me at -i ge -si o -god dess -in ches -tun es -br itt -sti on -ra j -âĻ « -mer cy -ðŁĴ ĺ -sen ds -i est -pol ici -val e -reduc ed -as ap -vi jay -defen sive -celebr ations -ri ders -med itation -har mon -g ing - ¡ -program ming -in au -sud den -m h -replac ement -sk u -j ar -gra des -ta st -k itt -brand ing -k aw -boo t -f ought -p ays -g f -iz ation -ho p -k k -activi st -v end -coast al -cha os -ðŁĶ ´ -se me -bill board -li fting -cu mb -sc al -ðŁĸ ¤ -stru ck -l v -indie dev -beat en -jun gle -al right -destin y -m ing -k c -ch ances -om an -q atar -cra f -tra ined -pri x -char m -o tive -s mu -e c -and ers -hand ed -al ban -certain ly -arri ving -i ze -sa i -tr ack -pain ter -hu mble -appo intment -head line -manag ing -mo d -as pe -andre a -à ¤ -ethi op -un ited -exi st -bal i -k ad -n t -d red -re x -recogni ze -tam pa -be ers -ati a -he els -no te -transport ation -tur tle -re de -hipho p -sp icy -sp urs -⬠ĩ -cor p -ther n -to ast -hur ry -proper ties -ma ge -mar co -ele ments -bou ti -syn drome -ms g -develop er -gra ders -he im -re sil -off ices -del ay -di men -vin tag -barbar a -ðŁĺ ± -vene zu -cu lar -fac ed -bar n -ðŁĺ Ĩ -survi vor -wor m -confu sed -passion ate -Ø ± -identi fy -electr icity -sou ls -brad ley -repor tedly -lun ch -shel f -eli a -swee t -smoo th -emplo yment -am el -manhatt an -ste am -oun ts -ye p -li ving -un e -descri be -ca res -man ila -sha wn -ac ted -bas h -st even -re st -pet ition -div ine -wel sh -rac e -platin um -ðŁĮ ¸ -p b -extra ordinary -solidar ity -m all -on ion -schedu led -game of -fer gu -de ms -nor m -p k -tri als -polici es -publi shing -st ole -fron t -charac ter -van ia -ex ce -sti e -sc a -resi dential -sa iling -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ -spons ors -th ick -champag ne -she pher -continu ing -ven ice -per th -na p -a ster -y ak -un limited -cho ices -ne o -hi v -repor ter -bru ssels -f old -dy s -se mi -la wn -it alia -wi fi -as k -em ed -fr ame -monit oring -ste ad -i da -gr in -is a -fli p -re stric -offen sive -atta ched -di sh -wh y -philli ps -gre et -p als -mix tape -v ou -fiel der -spar k -alber ta -g len -ca sh -s ri -u ri -ro dri -entreprene urs -climate change -p sy -d le -em ents -lin ked -nether lands -acci dentally -oppos ition -vel vet -ra ys -c w -om o -m f -lmfa o -newsle tter -: ) -toi let -liter ature -di sp -phili p -uni form -sudden ly -head er -cool er --- - -prou d -bri g -nis san -scienti st -j ah -con centr -pac ks -appo inted -so ap -eng age -cho se -âĻ ¡ -se tup -jeal ous -har ry -g ation -tun nel -te mp -osc ars -dec ade -recomm ended -child ren -ab a -anxi ety -ve ments -sal on -pho too -organi z -mach ines -ab s -vil le -hy pe -ti ff -emer ging -av geek -[ # -contribu tion -bra dy -re sto -g mail -fit z -photo shoot -hel met -h t -eleg ant -ug anda -nur sing -or leans -pen n -na h -foo tage -em a -w o -w ad -concer ns -ve re -re mark -who ever -str ang -p t -qu it -sh ang -histor y -s ick -perman ent -ill ness -col d -visi on -he m -ar row -con vic -pin k -oc cup -bal d -ex hau -u of -am o -on t -ãĥ » -adop t -la id -smo ked -inter pre -ess enti -associ ated -b d -bb y -fi er -inst all -dipl om -con diti -c f -w ak -any a -gr aci -fi sher -s ss -ap r -il it -mus ician -symph ony -cor d -h ack -le gi -l v -bless ings -hum or -sc ra -e ti -min ster -trav elling -bu sh -jewell ery -li me -!! ! -pregn ant -pe e -lo b -cap ital -ip a -pen cil -la bor -duc ks -prou dly -wedd ing -dere k -m w -pe g -valent ine -an gu -re treat -pro spect -dang er -vul ner -up set -, # -sr k -x im -thur sday -n fl -kis ses -re ds -cr ack -re ward -c u -ko k -me te -aband oned -it t -me als -sp ell -stan bul -del ays -ru m -le op -gu m -no va -super man -ch ick -m is -dram atic -inno cent -r ounds -re c -auti sm -bangla desh -mor al -mo vie -sp oo -k la -âĥ £ -ou ting -mess i -ab road -loo kin -a im -q i -st ack -colla ge -à ¯ -hud son -sc an -ho e -ch au -oc cur -comm ander -ho les -ðŁİ Ħ -bi as -v on -stick er -ma k -responsi bility -colum bus -sa int -ed mon -rac ism -far ms -w en -gul f -may o -!!!! !!!! -corpor ation -ba chel -el a -inter nal -je ep -fol lows -di alogue -de rer -smart phone -he len -rich mond -equ ity -s land -b g -ne ar -av i -memph is -we ir -discu ssed -bad ge -p up -mi stake -phen omen -un ite -ðŁ Ľ -de pic -ri des -in augu -n at -sof twitter -comb ination -gosp el -âļ ¾ -ad mission -retro gaming -ðŁIJ ¾ -sch u -mb o -jun ction -al arm -à ¦ -gr ac -kh ali -k ul -m ale -cap tion -wi sh -te re -cor ps -ru bber -play station -er in -effici ent -l or -jo kes -in ary -nor man -lu is -inaugu ral -ch ed -âļ½ ï¸ı -di p -to e -str at -aa c -am u -pi er -co tt -comm and -tt en -sn oo -cu be -clo ses -class ical -s word -expre ssion -reach ing -n app -co st -affe ct -ric o -gi f -brea the -tri be -or tho -h ay -l g -fri es -n m -hi ding -richar ds -en de -mic ro -capit ol -cop y -ro m -regi me -mary land -tax i -di al -embar ra -un believ -ch t -v s -elim in -o dd -pen ny -sound track -l ings -trans ition -rema ining -a is -mali k -? !? -rand om -def end -ul tra -tru m -danc er -st ol -dri ve -a ver -ro ast -defin ition -se an -excit ement -partic ul -su rely -sh av -ber y -di shes -com m -is ol -i am -ob li -gho st -hugh es -chi efs -b as -conserv ative -speci al -fe min -sh ri -n ancy -inte l -tu ne -ðŁĩ ª -jo el -gg le -mo to -ðŁĺ Ķ -bu ck -d ag -antic ip -mont ana -gu id -fro g -ec raft -op e -dri ves -nu mer -x y -color ful -wednesday wisdom -illu min -bey on -inau gur -deep ly -pre fer -for tune -coo ked -ti ble -âĺ ķ -swe ater -it ter -tt y -u i -gi e -com plic -~ ~ -tax es -cu ps -di verse -sam anth -âłĢ âłĢ -ba king -sy mp -wa i -be half -mer cur -travel s -ðŁİī ðŁİ -or ia -eng aged -jump ing -reti red -n aked -p uni -speed way -sci ences -rehear sal -on ym -dy ou -pl ates -r ati -kri sh -jaz z -car ol -ra f -pen alty -tim eline -ru by -engine ers -ra f -bel le -do se -che on -esc ap -me g -ran k -or d -me gan -mer ch -ec lipse -âĺº ï¸ı -ple dge -kir k -per si -leice ster -sa k -w k -saf ely -yy y -je t -promis ed -j c -en ne -no ah -re no -re a -ðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ -tra il -ðŁij Ģ -f d -soo o -ri min -w k -ภ² -i al -x ox -bis cu -d ale -fan dom -particip ating -fla g -privi lege -pe ach -mach ine -bo ston -gro ss -o g -mir acle -adop tion -u ss -mon sters -be ij -clar ke -pu shing -pra ying -ar o -d n -ell is -apol lo -od ds -refuge e -to w -b p -ðŁĩ¬ðŁĩ § -h end -app eared -memb ership -pe an -du m -viol ent -v y -potat oes -aw w -greet ings -t ts -ac on -sh ane -photograph ed -cra b -temper atures -cu ba -c fc -wel com -he l -in nings -m k -co de -kno ck -gra ss -swe dish -p ta -ick y -v at -lin ing -s q -sa p -ar c -announ cing -sk ins -cit yof -br ing -co x -gam er -it arian -i da -h d -ros se -sad ly -ge o -âļ ¡ï¸ı -tag s -fa ther -chan ge -l ance -whis key -adel aide -te c -stick ers -marke t -class y -bad ass -flo rence -lin er -fro st -k ate -ac on -scand al -es sex -ðŁĺ ı -vi vi -dr ill -blo ggers -recomm end -d ha -ac res -ro ma -bu y -gro cer -er ia -ma har -ff er -patter ns -ver i -com pu -st ev -ang a -ment or -do o -it ali -cdn poli -on ly -conduc t -elec tro -de f -wh ale -prepar ation -bicy cle -vi ral -turn out -bra ss -qu ad -hospit ality -pack aging -den cy -ceme tery -abo ard -dre aming -pic ture -t all -inv ent -ad mi -o e -tem ps -qu an -fun dam -pro mp -resi dence -mu d -sour i -âĦ ¢ -graff iti -gi f -d nd -com p -s war -pe eps -pale stine -devil s -san g -assi stance -bi ke -missi ssi -inter viewed -ne phew -dru ms -v and -gentle men -n sw -inst a -leban on -ee ee -oli via -ver y -rou gh -industri es -m ation -ðŁĺ Ĵ -bar rel -n ay -po ps -moder n -ill y -are st -on ents -protec ting -v ans -e o -vi kings -restaur ants -re ck -jac kie -andre w -w illing -he ath -citiz en -disc rimin -à¹ Ī -stu art -m ys -hi p -tran sp -" ? -te x -su shi -ke d -cro ssed -dist ur -pe dia -f ate -some how -mo th -proce ssing -is s -r in -u ts -yy c -ver t -lg bt -re id -on to -arab ia -habit at -= = -stre ak -simp son -addic tion -wim ble -deli vers -challeng ing -ðŁİ ¶ -fran ch -e du -s me -ai ds -hur st -th am -tari an -remem bered -palestin ian -fe es -tru m -sket ch -ur u -fit ting -jes se -ðŁĶ¥ ðŁĶ¥ ----- ---- -ba ch -ici a -colo red -da h -associ ate -int el -s eller -p u -stu ffed -ac s -b s -sh in -cooper ation -certific ate -ab u -ingredi ents -re v -in ge -el der -christi an -bun dle -th ic -dir t -beij ing -comm it -ted dy -ed u -to day -s field -w yn -confir ms -lo o -j v -ene ss -al pha -vir us -ari um -gr ind -bri dges -introduc tion -pol ls -bac ter -z ach -termin al -ra iders -fla vor -zom bie -vo d -sp reading -gameof thrones -effici ency -lat ely -ale m -twee t -cri mes -cl er -de y -dg ed -hy un -pay ments -cir cus -ðŁĺŃ ðŁĺŃ -mis souri -lu b -episo des -c age -po s -mat ching -tumb lr -lin ed -ge st -am bi -nar r -ing ton -regu l -blo wn -is le -co co -on don -joshu a -tour ing -sm a -sau sage -best friend -bo eing -desi re -sav age -ra pper -de vo -te ar -take over -cow boys -po ker -par ag -pp e -h int -we ars -se th -ro les -l anc -man ga -form at -fl yer -c ay -mo or -ba ke -spla sh -v ad -ker ala -proce eds -sil ly -reflec tion -di str -wi d -su it -ci vic -yan kees -by n -migr ation -di stin -or ch -fe mini -quali fying -tu ri -o be -hun dred -cra p -wan g -mathe mat -bu re -expo sure -fergu son -seme ster -re serv -pl ym -a hu -fac ial -wa x -wor ried -ca b -vi o -as a -co d -to pics -p cs -hal o -rescu ed -horiz on -ar k -âļ ª -hol ly -el f -ul ti -pu p -quali fied -attend ance -ati vely -destro y -y c -for th -photoo ftheday -c ents -ic eland -meas ures -de sk -port folio -artic les -direc tors -dat ab -e w -creep y -oun ding -hon oured -mi st -j it -men tioned -port able -iti c -d ann -friday feeling -am id -ti ger -scri p -helicop ter -hard ware -expl or -work place -austri a -beat les -ber nar -spi der -disc o -cul t -lim its -shor tly -fin al -nin ja -lu ke -le bron -wal mart -o il -van illa -shi re -ye g -ak y -c s -bl er -collec ted -t g -rol led -speci als -b ff -pier re -sh im -vi er -flash back -restor ation -individu als -pro d -fre aking -tu rer -o a -re fre -mor oc -gre et -re yn -care ful -our ing -u sh -is d -g ill -vie w -thunder storm -b led -pic nic -guar di -pi g -ar k -syl vania -bann ed -u cl -vi jay -ori um -av engers -believ es -eu r -monu ment -concer ned -la bs -ber g -a ap -vi sh -sing les -can cel -z el -ar ab -ru th -too th -ar ta -sh af -chair s -r ack -dise ases -crow d -cl y -fle x -christ ma -artif icial -tom at -fin e -dra ws -advoc ate -fran ce -Ù Ĭ -ðŁĺ ³ -heav y -s our -compre hen -no ble -aa p -hin du -cor al -g ars -ow en -n l -st all -yel low -mar ina -in ver -suppor t -tou gh -promis es -pi e -master piece -sco re -for ce -mor tg -crypto currency -o x -r ors -rock in -pro vin -ho g -no stal -oak land -pat rick -inclu sion -tra ffic -ah med -a ha -lux ury -con secu -de mon -âĸ º -b lowing -st ag -: " -encoura ge -ben e -sku ll -do dge -bu ster -kin son -wit ne -er ror -lo west -fel low -à ° -sh re -bl ur -vir gin -compos er -sli p -mor nings -ga ins -tab le -gra in -ari st -braz ilian -w we -tu es -ribb on -an ag -di st -sac rif -em brace -entreprene ur -af fili -de o -t ali -touri st -fat al -ì Ĭ -autom atic -ðŁĩ µ -we ak -wel fare -confir m -benjam in -fi ghts -alleg ed -me ad -strugg ling -pro secu -che f -à ¨ -propos al -er n -ðŁĺ Ħ -dy k -on gs -hon g -m ack -mel on -on ent -ru sh -d ap -tol er -pro pag -c ze -trans lation -wal let -cott age -sa il -constitu tion -ðŁĴ Ģ -mun ici -fav or -storm hour -i h -ðŁĺ Į -approach ing -pin ned -j ed -niger ian -n ach -sh at -particul arly -mc don -camer as -anni e -admini str -he at -electr ical -char ming -gib son -bouti que -ex posed -ac tor -pil low -beach es -genu ine -margare t -ben nett -lou isi -pos itions -el y -shin y -ten tion -architec t -ren tal -ac qui -goo gle -sub way -mom ent -ðŁļ ¨ -ri m -metho ds -cy cli -nor folk -Ù Ī -over whel -ra pid -we ar -happy birthday -progre ssive -ðŁĴ ¥ -co gn -pap a -f ool -philosoph y -pol ar -jim my -wi g -ðŁĴ ĭ -oper ating -reduc tion -ph i -fla gs -to the -o di -a res -k oo -k ang -ar kansas -ash ton -wimble don -sci fi -attrac tive -mississi ppi -logi sts -ral ph -la bel -gradu ates -ma ha -home town -âľĮ ï¸ı -foun ded -on the -li z -trans l -mini mum -pre sti -ta m -gener ations -re bel -journ alists -par am -mc m -acry lic -death s -tes la -w t -bry ant -jer us -i stanbul -muham mad -ri ley -k ris -work shops -is o -coun ts -stre t -prote cted -trin ity -man ual -r hin -r il -pleas ant -le mon -ner d -har der -dar ren -bur y -ra h -bas is -mi gu -occa sion -li sts -âĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ı -e b -de cre -hamp ton -ìĿ ´ -tra vis -trans form -puer to -nh l -av oc -tri ps -unexpe cted -ve t -di dyou -bar ber -st ages -m son -re presented -for t -l al -pp le -nic ely -ignor e -qu il -qu inn -h k -carri er -remin ded -am ong -pass enger -el len -gue z -sc ape -mu ral -youn gest -ma sh -d ill -rout ine -stain less -jack son -gand hi -th al -on ers -edit orial -convers ations -sd ale -autom ation -i ke -า ภ-ðŁĩ ª -hau l -la ying -men tions -am en -abor tion -i bi -coun ties -ca therine -man ds -jam e -roll er -au t -n am -o logical -cep tion -ran king -tox ic -sn acks -victor ian -bang kok -psycho logy -re g -ang ela -respon d -sty le -sophi e -dak ota -achiev ed -mar ked -imper ial -in as -glo ves -sli m -confi dent -att acked -gg er -lon ely -valentine sday -re b -craft beer -orig in -zim bab -ce iling -te ens -other wise -w b -f ers -day sof -advis or -y ah -âĻ ª -en der -republic ans -av a -skir t -pi pel -chi e -jan e -ja x -ðŁĺ ĭ -âľ Ĭ -j ays -bre tt -bal o -cru cial -d har -as is -de au -lloy d -chat ting -âĿĦ ï¸ı -rel ay -remark able -n s -we t -bris bane -ðŁĶ ´ -tion ally -f k -la yer -house hold -consecu tive -es is -pend ant -st ir -crit ic -su gar -photo shop -pa res -arti stic -do dgers -c un -cra fted -am end -bo at -âŃIJ ï¸ı -egyp tian -sa w -tra ge -small er -ox y -pa ired -nex t -i res -tac o -o y -u c -st i -a erial -: // -dr o -dot com -gg ins -r pg -ay e -le an -stri ker -lo bby -prote sts -pri ority -congre ss -am ate -inv it -r ington -mom my -th us -allow ing -pione er -enfor cement -g ori -tal k -dra g -du mb -bul let -san ge -er y -tar gets -ðŁĩ ¦ -he ather -consi der -seaf ood -ve st -ris ks -% . -p g -sac red -he ating -kick ed -tto t -. - -chan di -co ven -po ol -pul se -i a -ro ster -shakespe are -es a -car go -pean ut -tro op -ac tion -tab let -home work -cast le -stru ction -mus icians -free zing -bu tt -justin bieber -j j -bah rain -an them -au dit -didyou know -na vig -guid ance -âĸ ¶ -tur f -n un -fic ations -ye men -char ging -x c -bron cos -su bur -p ale -bor ing -among st -for the -em per -om fg -p j -expe cting -ðŁĴ « -st l -ad min -expect ations -sw an -shoo t -oooo o -min ent -ãĢ IJ -wall ace -stan g -satur day -adop ted -dou bles -hom ie -ome z -d han -vent ure -surroun ding -fi le -mob ility -de es -w ski -broo ke -emb ro -re members -kar a -test im -bo tan -m tv -sacrif ice -jerus alem -d l - ´ -proper ly -ili on -as i -leg it -co pe -m cla -recy cling -lar ger -ðŁĴ ĵ -pat ric -gener ous -ja red -p f -mol ly -thom as -ju dges -h b -sor ts -bl vd -o ven -enter ing -plan es -be et -integr ation -boo ked -fre ed -ver n -ash es -to pped -de pot -welcom ed -ren a -m ick -d and -see ks -gam er -ran kings -ren e -mu t -whis ky -fire fighters -gu es -ga ther -tour ney -de men -y ang -new ton -autom otive -back yard -deta iled -mi st -to bac -fi ber -un usual -grat itude -sp are -ne ys -: * -per i -flo ating -fin alist -don ating -dre ss -bro ad -be the -econom ics -tai wan -ed wards -plu g -pra iri -val en -bab a -f ad -an as -har per -dis order -app lied -p att -bi kin -li ver -cu ri -carol ine -ann er -juli an -wal king -mal col -screen shot -co ding -skin care -activi sts -myster ious -ex act -blo cking -mercur y -bat ter -du mp -âľ Į -en se -li sh -ridic ulous -prote sters -ðŁĻ Ī -lu st -swe at -as s -ali ke -co dy -re ments -win ds -as pir -vi enna -pra y -.. .@ -bo i -cand le -assi sts -te e -der son -p ony -f ence -con spir -âĺħ âĺħ -oo th -e pic -ba rely -a unt -b am -diamon ds -end less -scre ens -can cer -gr o -p st -pro spec -mo sque -help ful -ou ri -bro ther -gu jar -cri sti -ine z -to wers -ad dresses -gra y -bur ton -re tweeted -ðŁ¤ Ķ -n ity -du ck -super vis -jo an -kin der -sanc tu -pi ed -âı ° -ł ï¸ı -m ati -reven ge -ce ster -eli fe -desig ners -back ed -bo li -wei ght -cou ch -su res -s its -shri mp -la gos -auth orities -os ity -hol ly -compu ting -fac tors -ab e -pan els -ram ad -sent ence -missi on -hol m -r b -d ads -shang hai -mon ey -she ets -sk ate -thre w -cup cakes -infin ite -l is -practic ing -ess ay -ka i -as ci -mo b -u gh -hol mes -re gg -ik h -mo ck -collec tions -pe p -o va -sal t -nan dez -co y -thre ats -tex ts -cin nam -pregn ancy -pen ding -stam p -flow er -g is -agre ed -pay ne -ro ver -ph ra -sof t -f fin -fa thers -pass engers -aw ays -al a -h es -li van -in s -samu el -ingu i -h of -j j -chen nai -cat al -om ic -he ath -ni ece -pump ed -integr ated -are l -no m -produc tivity -wan ting -vis a -di ana -tw il -it v -cam ps -ro wing -d ley -black and -gu ards -b ells -re verse -vi be -ric ky -mo ss -ny t -âĺ Ģï¸ı -el le -tro y -cu dd -ev an -women s -fo to -mi stakes -wick ed -mi l -c led -me mes -co smo -schol ar -ren o -ðŁĺ Ģ -v ents -# â̦ -terrori sts -ca sey -cardin als -ðŁĺĬ ðŁĺĬ -venezu ela -bol a -liter acy -t w -en o -con tains -au stin -fin anci -ev an -har vard -origin ally -chev ro -her ald -nott ingham -manag ers -âŀ ¡ -accep ting -wal sh -tutor ial -entrepreneur ship -yach t -requi rements -glen n -pe de -unfortun ately -ach ing -dais y -gi an -night mare -âĿ Ĺ -r ina -b art -ema ils -oppo site -who m -sa ke -pu zzle -da shi -par ty -blan ket -bus es -lo re -beau ty -reas on -pun jab -winds or -func tional -exi sting -hel lo -gli mp -con vin -la k -scre aming -rebec ca -bli ss -north west -infin ity -cosme tics -pul ling -coffe e -pl ing -op ho -colom bia -interior design -( + -emo tions -sa c -sun glasses -sav es -d f -six th -al y -ðŁĺ » -de en -dev ast -polit icians -lac rosse -g u -pe i -jav a -comb ine -coal ition -er ts -survi v -ch ad -stri an -n n -de vi -coun c -concer n -contro ller -bre ast -j ury -tu m -introduc es -la di -mobi le -al z -ste ady -nur ses -h acking -on line -oce an -ðŁİ Ħ -a am -ju ven -ic c -louisi ana -ar te -street art -is on -wn s -fr m -p anda -no ir -main tain -del ay -symp toms -thor n -ge ome -ter n -carri ed -p ru -pan or -as sy -per u -clou d -sp ra -pe di -e ste -tag ged -ðŁĺ Ŀ -shado ws -naz i -ا٠Ħ -cor ri -âĻ¥ âĻ¥ -j ad -ðŁĩ « -form al -spo ken -ðŁĮ ŀ -enjo y -lo pez -out look -in ho -w ander -Ù ħ -ma ya -pe e -d ine -ãĢ ij -brief ing -suppor ter -ar ily -ght ers -natur ally -doctor who -j en -v ar -new year -re se -si mm -re x -con sequ -tomat oes -bur st -bra vo -bur gers -cr acking -nor theast -bi om -mush room -mar que -dou ble -ni er -v ag -tw enty -key board -win ni -jama ica -par ish -: - -mental health -ali zing -ren der -wa king -ðŁİ Ĥ -g ly -na than -wa shing -mel issa -jun g -loy al -chil i -song writer -guit arist -bo wie -neighb ors -onym ous -as set -ta i -head quarters -ðŁĮ Ī -i hear -ci gare -sur g -) " -re pl -dar ling -ðŁĻ Ħ -z ak -sa re -ãħ ĭ -mic key -ware house -mass age -ine es -did nt -i w -hur ts -eng aging -mag ic -women in -k itten -mor s -c art -tit ans -colle ague -compe ting -er an -k hal -mar ble -dem and -del ight -et ary -bli zz -lou ise -m ls -fini shes -experim ent -conduc ted -electr onics -itt ers -car ing -wh ats -sym bol -jun g -e cu -pi x -con text -char ger -ðŁĺ ĩ -re ig -fra g -ë ĭ -ch ad -tru e -ker ry -def ending -a int -au ton -check out -bar nes -less ly -d t -m me -clou dy -second ary -are z -_ : -app a -const ant -" ) -ve ts -jo b -i ent -ðŁĺŃðŁĺŃ ðŁĺŃ -m j -fren ch -di ver -davi es -hh hh -e book -๠ī -mar iti -bree ze -susp ended -mat o -vi et -ra hu -se i -bol t -en ary -le is -kar l -fr amed -expla ining -ab c -de aling -nat o -ja ke -exp and -leon ard -establi shed -du b -ar men -el led -voc al -nichol as -ori ent -k yo -illustr ated -ah h -danc ers -milli on -ge ta -po pp -as u -mur dered -gi ble -sto ked -gri ffin -maxi mum -adri an -en counter -ther o -david son -ðŁį » -holi day -ev o -asse ts -car son -memor able -âļ ½ -ob am -represent ative -cb d -tr icks -vo gue -vo ice -mm mm -sebasti an -cli f -ath y -par alle -ðŁ¤ · -pa k -ev acu -e ats -ا Ø -tou ched -organ ised -spir its -can ad -gui ded -frame work -ðŁĮ Ł -pe d -natur al -ag ar -replac ed -anch or -ti t -sha h -organ is -super ior -r n -ch ro -eric a -st ill -cor on -chu ck -loc ks -or gan -ro sen -sc am -ben ed -/ # -ke en -tre vor -vamp ire -sor ted -! ' -af ford -in tro -gr ace -ðŁĺ ľ -sau r -kick starter -influ en -v u -y up -po c -ðŁİ ¥ -a ar -s ang -tre k -et sy -tb h -scre am -chevro let -pix el -shepher d -an or -gabri el -tw ood -sd cc -me ters -develop ers -clo sure -v w -twit ch -ì Ĺ -se oul -pr ice -ho g -n ish -hill ary -scrat ch -in cen -wag on -dis ability -pan ther -ch ats -g d -wit z -sus sex -l ate -den mark -ger ald -cancel led -net te -i x -nav al -bap tist -te t -y ad -ma th -ho y -r andy -po int -intel lec -fru its -w ool -gu in -pr on -the ft -con dem -mar ry -n ola -architec ts -cin cin -roc kets -gentle man -ex plan -t ate -do e -ra ises -wild life -w l -insi der -blan c -w p -for sale -ny c -po well -unbeliev able -pen s -goo dies -mu stang -p ens -st ays -squ ash -xox o -near by -ever ton -co co -le agu -k han -stu d -south west -con struc -s worth -cro atia -le a -su ms -aim s -e an -van ess -iti ous -pa thy -arc ade -b end -sugge sts -sac ram -roy als -ri er -em ir -in cl -an k -clar k -ri ght -vac c -ठ¾ -tan e -li b -u sc -sal es -hu h -s ally -ver a -p ga -gro ws -dru m -tre e -eth ics -sug gest -is ab -se aled -pre viously -anim ated -ab du -ri ses -glo b -pre dat -scar f -del ic -om ar -ll i -sx sw -py thon -ne bra -fun k -reflec t -pav ilion -tic ally -ch asing -bak ery -inva sion -ko h -believ ed -co hen -con qu -cra fts -nat i -cle ver -govern ance -sam ples -fa ils -â Ķ -ti mo -r itu -stri king -inclu sive -sho cking -can t -requi res -dra wings -à¸ Ń -purch ased -du m -z ach -war ner -con sole -man sion -foun tain -circu m -e sh -is land -mil k -pro fits -hali fax -ri val -âľĪ ï¸ı -jen ny -sand ra -ny e -k elly -y al -qu ad -no s -inste in -fin alists -mid fielder -cu e -excep tional -a an -sa pp -gett in -sa a -f ati -sl ice -vol k -s wal -la sting -sum mary -it as -sm o -s z -âĺ Ĩ -ip l -fl ames -ene ws -ha v -hoo die -pitch er -win dy -re vol -centr al -ton ite -ðŁİī ðŁİī -sol ved -mil wau -organiz ations -wee ts -re fin -s th -ãĥ ¼ -el in -ton a -cinnam on -ðŁİ ¨ -ðŁİ ģ -ron aldo -pen insu -ome ga -el ds -desig ning -e igh -blu et -ben z -nu g -ash a -robo ts -su dan -choo sing -en do -ser ge -clo sely -hand y -fing er -be ing -ar te -survi ved -fl ame -mile stone -gu t -d war -fu tures -é e -el o -fri dge -eli c -ou ch -u b -p v -tit an -col lar -st ation -nev ada -aur ora -r d -dun can -âģ ł -bri en -mar sh -Ð ¾ -to tal -ch ry -s ers -su ffe -ra chel -colle ge -to days -cour ts -ch it -re united -gym na -gen esis -be side -re presentation -ch ant -collec tor -ra k -ath ens -ni gh -mun ich -langu ages -fl u -particip ation -__ _ -c v -spec trum -so da -co ver -refe ren -ab bo -ap a -public ation -ed m -mon ica -ar my -ðŁļ Ģ -div or -dr y -stre ams -robo tics -ci der -bull ying -appro val -sto ke -plat forms -sier ra -ex tin -i b -ha yes -succe ed -suff er -at ically -da i -lyn ch -h ound -del ines -ack now -d ated -exclu sively -he res -fac ilit -dam aged -char ter -la kers -fal con -unve iled -wel ove -e ase -pati ence -l one -gent le -gene tic -produc ing -g our -shann on -bil ities -zimbab we -p int -dau ghters -liter ary -bel le -cl am -surroun ded -k any -ne il -pir ate -rang er -hb d -nat alie -bel ong -olym pi -emb assy -sc ol -en er -ak in -lo ren -b h -: / -di va -den im -hi pp -ðŁĩµ ðŁĩ -arn old -? ' -we ren -em power -dis abled -man or -rasp berry -b af -aw ful -dru mmer -kar dashi -n ash -machine learning -ch u -rebel s -tim ing -mon roe -ton gue -ran ge -pup ils -re ss -amaz on -b z -har ley -pal mer -ballo on -s ings -ic ec -j b -c ers -g ps -whi st -ri se -l t -oo oo -c attle -shoo ter -vod ka -uc l -mt g -le sli -jon as -di spo -at ric -ste in -vintag e -fir ms -flo yd -cow boy -soo oo -is aac -war craft -disney land -beauti ful -be am -franch ise -bu n -k ag -an on -tur bo -swee p -made in -kar achi -dete ctive -penn sylvania -contro versi -vitam in -a side -chron ic -descri bes -remo val -ha h -ap er -ten ed -u to -bad ly -mir ac -f ry -ye a -in jec -ther mal -comp act -th or -te ed -ur gent -l ite -g illi -sop hom -ic o -che m -p m -for k -fre ak -ch ak -recipi ent -i y -ni k -model ing -c ans -ðŁı Ģ -del ux -se am -surviv ors -rad ical -investig ating -reli able -f m -tur t -ligh thouse -to ol -go wn -) ) -bo ts -auto graph -a id -bu ffe -h mm -horri ble -ssi onal -ann i -à¹ Ģ -k its -sch i -eter nal -hu ss -sens itive -r u -tast es -chec ks -im o -por tion -sk ate -e den -half time -fri ed -ri hanna -ti se -fl ick -ca in -s gt -âľ Ķ -sh au -sta ined -ra ffle -dro ve -sal man -princi ples -sh o -ar u -je ss -gu ine -gar bage -my an -jel ly -dis ru -z ia -q ld -ent ries -la v -fle w -ad mit -objec ts -comp are -ny times -cann es -p n -suff ol -ro c -d ana -e gg -hi st -coun sel -' ! -phy si -imag ination -ad just -explo sion -plym outh -hor ror -elli ott -bour ne -de x -bre ed -au dio -lob ster -disappo inted -nation wide -( ( -incre ases -austr ali -ce dar -star ing -rac ial -e is -g mt -visi ons -stay ed -discu ssions -de an -cur tis -mai den -stel lar -happ iest -h wy -pre season -car av -mon days -hospit als -glimp se -schol ars -ja i -ter race -ann a -goo se -gra ded -lot us -hun g -grocer y -stam ps -emper or -sc oop -in ser -c as -exist ence -he al -fal cons -mar vel -reduc ing -terri fic -magne tic -perfor ms -bar re -p us -tre ating -ic on -w h -decla red -tra uma -do d -come dian -nik on -bu gs -as m -mont gom -ibi za -comprehen sive -ha s -san ti -fellow ship -da sh -p sal -louis ville -sp y -fau lt -d the -fi led -vi sta -de sc -fe ars -you tu -sp s -es p -ri g -cri me -ber ger -wonder land -k ent -in formed -stev ens -my th -ast on -ir i -visit or -at ri -produc ers -al la -person ally -separ ate -agen cies -af ri -il an -spo ke -n ina -squ ad -di ves -de pend -li v -fier ce -enter taining -cha in -sc at -bor ders -pal ette -sp ro -os is -der by -tobac co -zi o -willi e -ju vent -zoo m -hol y -enti rely -af e -mart inez -be ds -pe a -bull dogs -ðŁĩª ðŁĩ -ib m -ne on -ethiop ia -team mates -plan ting -tw er -any time -for bes -ó n -run way -ner vous -ro ger -p ile -ch anc -apo caly -u w -o i -dr ought -territ ory -br ick -cre atures -go in -w aff -gre n -sou theast -je an -am bul -ed ited -stra p -c v -aar on -ãĥ» ãĥ» -t su -descri ption -kin dly -clu tch -im mer -en or -women sday -or ange -ra g -ob vious -hy der -chann els -man go -me yer -ra ining -ge tty -pil gri -coordin ator -up load -ninten do -don uts -san chez -app arel -j r -zz i -, @ -jeff erson -accessi ble -great ly -e id -initi al -budd ha -par is -ma scot -â¬ĩ ï¸ı -sch war -si ri -sp inning -mortg age -e cho -end ange -ge dly -chlo e -enh ance -kar nat -k ry -explo res -ðŁĴ ģ -af fair -ic als -all a -dar t -dolph ins -diffe rences -squir rel -au gh -dr ones -ell en -re store -pa w -un for -pi ke -hil ton -colla b -consu mers -co inci -out comes -pp p -a q -coup on -li est -si ms -k ho -av es -spo on -pu dding -cor byn -hat ers -ex ams -sla ve -. ! -p sa -app les -tam il -se d -co ke -zz o -lo sange -car bon -cla ir -... ) -k hu -cra ig -explor ation -sanctu ary -su e -al way -demen tia -won ders -super hero -pakistan i -brown s -bluet ooth -lo cker -mar c -ev entu -delux e -rodri guez -âĿ¤ âĿ¤ -ro bb -ðŁĴ ¦ -lin ux -ten s -intellig ent -se ed -vo ter -s ler -pe aks -inter n -teen age -peninsu la -hand ling -ti e -cou sins -wen dy -me e -à¹Ģ ภ-din o -ðŁĴ ° -ðŁĺ ĥ -ze e -s bury -trage dy -b k -bo re -z in -war ns -idi ot -tou ching -contin ental -tac os -saf ari -wa shed -po dium -morri son -fore sts -c bc -al on -partic ular -be ads -inv ented -lo ch -li ghter -where ver -i de -docu ments -a we -k r -no where -min er -st it -ro x -contribu te -har dy -cl an -ob ject -ca it -ðŁĴķ ðŁĴķ -happ ier -vege tables -t art -g ag -nom inee -heav ily -pan ic -j d -there sa -at m -u ph -s fc -su ri -drin k -n al -re vel -k l -avoc ado -nom ination -ma donna -shar on -malcol m -control led -sh ers -revi val -legis lation -shoo ts -n in -comm entary -pro s -human rights -str anger -mit ch -pipel ine -leg ally -th u -gil bert -tol l -gran ted -gh s -ir anian -refre shing -du k -ab i -pri me -jose ph -mo sa -stati stics -produc tions -mer ry -pat el -sa x -human itarian -struc tures -e missions -town s -fre el -ster ing -rat ings -alle gedly -cab in -st l -w ade -fl yers -tri m -promis ing -z u -bal lot -compar ison -free ze -ou ter -great ness -as sign -snow y -r ale -tor ies -med iter -kno ck -consult ant -cincin nati -analy st -sc oo -je ws -appro xim -pu re -portra its -cy rus -ation al -lo ans -acqu is -el u -accep table -uni on -water color -ru st -batt les -per fu -seas onal -ser ial -mind set -ri ot -fel d -enni al -clo set -pri est -tan ks -int l -scre w -bu m -ab dul -ou x -expla ined -ric a -imag ing -law yers -bu ried -ãĥ»ãĥ» ãĥ» -ear l -âĢ ķ -l ton -resto red -stri pes -fo ss -de mands -ste aling -alex is -mun d -ak er -ur us -war dro -hu gs -gen re -e go -Ù Ħ -particip ated -bab es -ban quet -ti ous -he mi -ds b -lo st -milwau kee -jen ner -ge m -ou tra -lo ses -id i -re ps -ðŁİ § -regu lation -fla w -f ang -vibr ant -ram p -ra ins -well being -so viet -vie wers -de po -libr aries -bi go -ser y -g ill -de struction -co z -c x -bri dal -al ds -plan ted -amate ur -lu d -che ering -show cas -pro file -i u -ver tical -pack ers -wiz ard -ski p -s light -be au -air ways -mu ch -re ra -ðŁĮ Ĭ -ab sor -pati o -pack ages -s ells -ment ally -ðŁĺ ¢ -reyn olds -k are -tri bun -wal t -kn it -ta ste -sur rey -boun ce -cre ature -b are -bet ting -su re -mi ley -laugh s -al ore -cy n -t l -arti st -ann ah -war mer -dynam ics -lunch time -mariti me -vulner able -ðŁĴ ĥ -wol ver -dur ham -const antly -am in -si bl -: @ -bul let -k ach -angel o -wil der -doo m -desk top -law suit -k ca -hen derson -inv iting -bet ty -ta wards -ra fa -le aked -and i -ge ms -af l -vel o -mediter ran -pro be -to tten -steph anie -sn ation -com be -q s -over come -assas sin -ra v -fil ip -winni peg -sh il -determin ed -k as -ou tre -regre t -gui des -aa a -ðŁĺ Ī -wi ves -mani fe -er ly -sm y -sh ima -x ing -pix el -jac ob -ac commod -to y -on o -po o -ti er -an swe -ðŁĴ ģ -ro sa -le ase -bel ongs -th ar -eventu ally -nei ther -go a -ski ing -at ra -ag h -broad casting -f ury -py ram -d ice -volk swag -wom ens -provi der -bom bs -miss ile -whi p -d ick -nor we -back up -el der -mat ure -concer ts -gi ous -sque e -good morning -bra ves -^ _ -au ssie -lun a -mal es -he ck -for tn -rome o -steel ers -p n -pe er -re presents - « -kat y -migu el -requ ire -cha ins -l ur -immedi ate -ti mber -âĸ¶ ï¸ı -advoc acy -ex port -an z -tiff any -auth or -ðŁİ Ī -du des -chil ly -hi d -har m -bu g -mon ster -terri er -tu c -story telling -ta k -in ti -immigr ants -b is -reach es -com passion -john ny -contribu tions -ðŁIJ ¶ -mechan ical -impre ssion -ran ks -ko be -men ting -bloss om -pab lo -buil der -bom bing -tw el -sul livan -om o -pe te -de mi -ku dos -w bb -t gif -mass ach -neighb or -che fs -eng ines -pun e -ga ined -phan tom -s days -ext end -gr an -cent ers -jac qu -dat asci -sleep y -el vis -answe red -s lot -con y -flexi ble -ti ally -le tics -% , -andre ws -si ble -mom ma -vin o -do x -invit ational -twil ight -j ade -ill ery -joh ns -f ou -p v --- -> -break down -billi on -prin ter -mon d -c bc -mag gie -legi on -du b -kur t -po or -paren ting -regi ons -bikin i -be ware -si onal -au burn -kid ding -amp les -sp an -con tempor -c ic -ha bits -ak o -pre fe -bud dies -it z -em ily -person nel -moun tain -ver sus -ðŁĺ ¬ -ear ning -s ink -dar i -u u -s win -i ster -bru tal -n ac -kat a -clo th -am and -ðŁĶ Ĺ -ne o -alu min -week ends -nebra ska -co des -delay ed -brun o -pro ven -in c -i ght -fl an -or o -lam bert -regu lat -w f -massach use -kardashi an -bern ard -fi esta -volcan o -grand pa -anc a -d re -st itu -mean ing -fo am -au ck -at ed -r l -hot el -pers ons -dy nasty -ell or -ma i -am ne -sty ling -avi er -e g -vege tarian -, â̦ -foun ders -sta in -g d -cy cles -sky line -trac tor -exi sts -tra l -kid ney -mar il -inst ag -se tte -addic t -tri angle -flash back -controversi al -z on -p ins -i as -tr ay -town ship -deleg ates -sp am -h ms -cr ane -peop les -o lo -fac tion -but es -on ica -deleg ation -new profile -eli er -mc a -w and -g ely -losange les -ber ke -ti ve -dis rup -zz a -cas a -jor dan -ford shire -ga thered -ic hi -atten dees -à¸Ń ภ-pe ppers -co in -bour bon -ern ity -ro tary -behavi our -jere my -team work -compli ance -tre mend -ðŁĩ § -bu hari -cam bo -bu yers -ha gen -bu ds -bay ern -mon te -sm ells -an za -ath lon -descri bed -work force -gi ving -ap i -invest ments -da il -sel ena -datab ase -th um -mor tal -stu dent -bu yer -do ver -gar ten -att le -loy alty -gen oci -holo cau -theat ers -ru ling -ven us -pat ent -ch un -ab by -awa ke -mass acre -bang alore -break ing -simm ons -ju sti -hal e -ed chat -gg les -haw k -mar king -head lines -stro m -co ve -breath taking -med als -hair cut -christ ine -tele graph -gujar at -ju ra -can e -sho re -propag anda -mu eller -.... .... -sa vi -stom ach -thro ws -ta b -war m -j ong -reno wned -hi r -ra is -mush rooms -guaran teed -bo a -m j -revolu tionary -certi fication -bru ins -jo in -w es -pas sport -c g -sex u -cap able -w v -ton es -jac kets -ac compan -spin ach -fore ver -bla ir -wat ts -g l -cou ples -prairi e -newprofile pic -logi stics -massachuse tts -jagu ar -o id -we al -under water -mo z -y i -ma ths -myan mar -pre ps -suffe red -tr ace -wal i -ah hh -bor g -st itch -cu lin -real ise -infe ction -discrimin ation -sh ame -an kle -hu mid -y t -brac ket -tru ck -tri u -ea ster -commun ity -post card -invol ving -ty ler -car amel -over view -ex amples -integr ity -base ment -instru ments -ani um -at us -gh er -laun dry -achi eve -gen eva -pr icing -hyder abad -beli ef -me ta -j aw -accoun ting -lead er -cristi ano -cou ture -cy p -vis ed -, ,, -k nu -h ick -break er -br am -ra b -mo or -ham as -gradu ating -pupp ies -ak h -ta h -ach es -ri e -op ini -g ta -re ign -tra gic -re ver -p ill -pine apple -tou ches -da re -le ys -il o -inter iors -sc outs -bar t -en zie -don o -bro ck -christi ans -ense mble - · -cine mas -new port -air line -win ston -le igh -cont ents -pre scri -ur ge -tr out -fic ally -il ia -sub si -are r -âļ¾ ï¸ı -w ounded -ðŁĻ Ĥ -pe pper -ðŁĴ ŀ -fit ted -af f -re sur -thursday thoughts -z ero -archae ology -di v -je e -i on -awa iting -co zy -beauti es -bal d -dat a -gri zz -stal k -kin ds -cle ared -jess ic -regu lar -ali ens -plac e -bo s -bi zar -thisi s -ðŁĴ Ģ -totten ham -ma fia -s lam -ari ana -car roll -back pack -care y -uni v -r g -pe p -dig it -tatt oos -ag on -volunte ering -diffe ren -consu mption -ka thr -head phones -t shirt -o b -ele ment -re tail -sh ru -al gori -contain er -consci ous -fi l -com ing -ra sh -u rope -def ine -gi or -femini st -flow ing -rout es -gl aci -fer t -somer set -ant es -twee ps -$ $ -h our -endange red -year sof -ro h -po pped -bac king -ba sil -bra ke -mon aco -lgbt q -pra gue -ut ility -cas si -gate way -haun ted -sch ul -ðŁİ µ -shou ld -walking dead -comple ting -dann y -montgom ery -pengu in -ss i -mer chandi -ðŁij ij -chur ch -h ates -cap tain -brea thing -ce t -fair ly -approach es -compan ion -surpri sing -kany e -pe y -hin di -targe ted -lor ds -de ut -di gging -ger man -ru t -ener gy -close st -y un -apo logi -ภ± -s ack -ru p -dd y -port al -d ough -b ats -ðŁĵ ° -at ur -graph er -pi res -mo tors -ðŁĮ ¹ -j c -dan g -tu k -clu e -us c -pag e -d less -bro ws -ju s -ad ing -re marks -oo m -car dio -ste fan -arm strong -âĢ¢ âĢ¢ -ni est -belgi an -bi op -so y -lo f -í ĥ -q t -flashback friday -ce e -ģ ภ-wre ck -mar ines -amend ment -wardro be -vo y -bur ned -guit ars -ra inf -li fel -ssi l -oun ce -exter nal -c key -me sh -she ikh -inv itation -sugge sti -pop corn -phenomen al -an onymous -tun a -chic ago -o val -del y -loc als -( & -pro f -no vel -fin der -spar ks -la ven -in fu -nic ks -qu ant -ra e -exe c -dist ingui -st ances -mu tual -sh al -unve ils -edmon ton -zan ia -a dio -vie wer -brad ford -audit orium -qu is -re act -htt p -l ero -chee ky -impac ts -ta k -ed t -desper ate -t ay -ì Ħ -sett le -bar gain -resu me -un ite -thro wn -ke st -se ys -mar ching -am it -decl ine -sch ar -me tr -stan ford -lin ke -ber ra -dol ls -rug by -jam i -b or -road trip -dino saur -mi k -sun der -re m -b k -over seas -nau ghty -imple mentation -iam srk -lun cheon -fir ing -mi ami -pere z -the e -z on -gi fted -con version -ceram ic -¡ ï¸ı -pe dro -ì Ĩ -v ick -! @ -he ed -si d -b w -docu ment -pl un -gr ants -fant asy -predic tions -vali d -car ved -gradu ated -ðŁijį ðŁı» -nation ally -ch y -af l -re sso -blan k -ri vals -j ig -e ties -om ics -une mp -b ound -sk o -inspec tion -par al -high s -cri sp -b ans -ob a -[ @ -co spla -costu mes -rec all -mou th -ni gel -b ts -ter a -ko v -do cs -west minster -dic t -gra vity -kar i -ro gue -t ted -war k -ida ho -w end -aw i -queen sland -proce sses -cli ffe -m ick -com pens -op ol -the y -cl ari -wiki pedia -salman khan -haz ard -pre ston -swee test -pd f -che es -tr ilo -south africa -bur nt -( $ -con tain -t p -sub mitted -sound cloud -at u -re z -word press -corru pt -n f -ma ker -í ķ -par as -adv ent -ri al -ca fe -fo ssil -!!!! !!! -co ws -c j -sp ur -institu tions -land mark -ent it -re ut -h is -alz heim -we mb -regg ae -mo squ -st at -identi fied -deal er -re am -re land -ten sion -ðŁĩ © -wra pping -deep er -fr at -red dit -ar is -moroc co -.. " -b low -ma pping -pri orities -ing a -swa p -re wards -conspir acy -creati ve -c j -congre ssional -vau lt -ple x -sophom ore -shad ow -ele ss -ðŁĺ ħ -dar ts -aldu b -anno ying -pro ps -n as -alumin um -h bo -offen se -j ill -oni ons -la ur -ta e -har dest -sh ro -ga ining -meas ure -ed tech -cyp rus -tar a -ang eli -car lo -go on -all i -im plic -ju pit -resil ience -ha il -bal anced -) ... -joy ce -gr a -th eli -defin ed -shi pped -main ly -min a -l m -sac ri -o ber -p im -claim ing -ent ers -co rey -bo k -cri ed -cool ing -dani elle -pharmac y -thor ough -ca ke -k lo -outre ach -z ens -digital marketing -val ent -sn p -her b -mr w -caf é -cap tures -no tre -triu mph -pan cakes -cu mber -spi ke -d ation -bi gg -sp er -crit ical -am al -too th -foun ding -a stro -' # -quan tum -th ames -un c -pri de -air bus -kno cked -un defeated -mediterran ean -cal cu -clo wn -sens or -ham mer -for give -cu shi -ber ry -maje stic -elec t -polit an -g ta -k ari -bur ke -sea hawks -volkswag en -re i -landsc apes -cas u -grand father -list ened -/ / -star trek -rainf all -fur ry -vi er -star k -rif le -ff a -leg es -hillary clinton -min us -correc tly -architec tural -pre ce -up side -box er -ðŁĻĮ ðŁı¼ -is ai -de t -pro vo -tis sue -spoo ky -ve led -re con -prospec ts -que bec -âļ « -ig no -anat omy -shap es -w p -p interest -hor e -an es -pick up -ti p -pra desh -hu gh -co e -po k -gram my -well ington -sti gate -ri gh -lea p -king ston -scen ic -go sh -v ani -au g -s ary -zi er -bure au -lin son -con te -fra gr -all an -g aw -lan a -colli sion -surve ill -ren ais -ar range -s ali -do in -br ance -bren dan -our se -in coming -suspen sion -à ´ -l la -educ ators -in tri -da e -bio graphy -bul gar -villa in -go thic -rw anda -e w -may or -meet up -democr at -mor gan -su dden -te sco -car rot -bom ber -mck in -re ne -fun day -agricul tural -haha h -show time -form ing -col a -scor pi -quo te -po ppy -s life -d az -tu b -ne n -mo t -ðŁĺ » -s ore -elder ly -o ve -skin ny -um i -anc o -man ship -we re -g v -k ah -fol ding -ne at -samanth a -dan ish -uk rain -humid ity -nu tri -jak arta -cand les -oooo oooo -at ile -streng th -i bra -bap ti -charle ston -fr ames -girl s -clear ing -glu ten -# # -super natural -ju bi -ph one -he in -dr un -le ak -invest or -y er -dom ain -ball room -mi sh -app li -off shore -bla ze -dor o -âĺķ ï¸ı -win ery -shar if -ad ore -n ir -saf er -si gh -as cri -strong ly -trac y -ck er -ol l -faith ful -ey ed -deli ghtful -vis m -karnat aka -tit an -wh ar -jer seys -re fur -heav en -gri p -pan ama -pre li -glu ten -o dd -cont ent -pon ti -tion ing -e commerce -feder ation -flaw less -ge ar -ti res -by r -pol ice -cu ban -tri butes -tic ul -chur ches -nur sery -di aries -muse ums -snapp ed -i van -wi ght -touri sts -ramad an -t rent -prophe t -won dered -focu sing -hi d -ic ons -i q -ambul ance -pi st -fun niest -time less -sr ilan -bu ys -ki ds -colour ful -a shi -ch ir -mu m -ðŁĵ ļ -let ter -x en -reut ers -pre serve -in ting -ste p -fu ji -uni ver -i u -show down -po ems -surveill ance -suspec ted -ta e -sol ving -tom b -mother sday -car pen -recru it -pil ots -bro c -mix ing -fri days -ty r -represent atives -tra pped -abdu l -free style -clu ster -âļ łï¸ı -k d -sk ill -pit t -ex o -commer ci -muse um -loc ally -g ina -no bel -immun e -fr ac -cap su -main ed -attemp ts -bull dog -be spoke -sing ers -sp elling -seg ment -nat ures -tic k -lip stick -clean er -gett able -preci sion -â̼ ï¸ı -th ood -re ef -no pe -bill y -di gi -mu si -ri val -figu red -tal ity -sun ny -ber k -aw ww -awa its -un real -co pen -asy lum -ex otic -bu en -mo ck -en able -arch y -fr a -pla stic -al mond -amp li -displa ys -abbo tt -s me -x p -ðŁĻ ĥ -graph ic -i ved -mar a -cau tion -lea ks -en berg -ul u -unic orn -cann on -appren tic -ðŁĺĺ ðŁĺĺ -b ball -wil low -at ics -am as -manufac turer -campaig ns -port ers -flo ors -l su -ty pe -ke j -honor ary -it im -to le -min ecraft -d x -ma sh -ri o -consequ ences -ron ald -go ssi -suffol k -mu se -r bi -live music -i van -ðŁİ ¤ -le u -patri ot -man it -lan ca -home decor -de ar -sig ma -ti de -str ings -v ita -sequ el -try na -inve stigate -bor is -ve gan -barri er -mind fulness -web b -hu stle -in da -tan zania -str ay -tex as -c ag -diagno sis -wom an -g w -ob session -l ative -nu fc -fl ynn -moment um -sof a -wal d -vege table -tu cker -supp er -se ab -ar ro -se ag -ven ting -counc ill -sp lat -cal cul -.. # -com fy -odi sha -sto pp -war fare -ca es -à ¨ -co y -price less -in sec -ðŁĺ Ľ -contro ls -empower ment -datasci ence -per pe -gen ic -e res -tru deau -man o -sla very -expand ing -ma he -fa iling -s aga -photograph s -cre st -re on -surf ing -hi e -ðŁį Ģ -ja e -fel lows -south ampton -sol om -ce ster -tab ility -hor n -se ct -he e -cole man -at las -explo rer -consul tation -copy right -organi zing -den ied -mon keys -noo dles -br is -fl or -dou gh -bon ds -sho cked -eco system -care fully -w m -apart ments -cur ve -san diego -must ard -comm en -cere mon -e ch -ru th -ðŁĻĮ ðŁı» -hawa i -fil med -te ar -as ingly -ca ir -wat t -instru ment -ou tta -ye ol -river side -ë ° -. : -nor wich -alo g -migr ants -new man -ri de -spr ink -targe ting -beli eve -tor ch -reflec ts -per mission -ff man -ene mies -bas ics -se ized -sun days -le i -hass an -en do -h c -st ad -le ments -kk kk -nan o -shar k -man a -on ic -treat ments -ear ly -collabor ative -shu ttle -bran ches -mis ses -mained cm -ap ers -ky le -carri e -leis ure -sh et -bir ding -adv ances -ðŁĵ Ŀ -popu lar -di ane -a be -re war -neigh bour -k pop -remem brance -play ground -ru b -krish na -e bola -inqu iry -ep a -lu min -organ isation -abra ham -norm ally -pre ten -jan et -w t -ðŁĴ İ -encoura ging -a stic -bu mp -syd ney -s z -ss ss -gar rett -ðŁĵ » -consul ting -roman ia -spo tting -chanc ellor -ar ma -presti gious -ðĿ IJ -t ad -cry st -compe tit -rati o -cat aly -bro w -j ur -vi king -commu te -y day -la yers -du mb -esc al -genoci de -f ill -gu pta -ste pping -se i -fo to -wild cats -col i -projec t -ear nings -st r -ge ons -comple tion -b m -decor ated -craw ford -af ghan -sc are -visi bility -hi b -direc tion -stro ll -christ ina -alter nate -cl are -sty list -be hold -s ance -leop ard -acqui red -narr ative -ash i -the a -?? ?? -pe as -at ch -sli des -le en -renew able -eng lish -qu ir -co aster -r x -fo ols -match day -mis m -amaz ing -z ig -ke ting -won t -to wel -di ab -sta ke -n m -mel t -e than -gra pe -polit ician -sm en -í ĺ -re o -wedd ings -cat cher -or acle -me mo -ðŁĮ ´ -ec k -rob bie -norwe gian -oper ator -am or -se wing -ju l -x ie -u v -fif ty -me ga -tatt oo -liber als -u pri -traffic king -richard son -su v -ki p -mess y -tremend ous -gl ou -cour tney -la d -stere o -my ers -i dio -^_ ^ -man ning -dy e -w d -thr one -jun k -as u -provin cial -k ook -wr c -fine art -hamp shire -renais sance -b red -fall out -s j -sn l -al am -tor ture -fy i -sh ines -pa w -ch ar -hen ry -c row -aci ous -di an -pa ige -ba re -stock holm -scen ery -ðŁĩ · -jef frey -pu sh -decor ation -ne d -cu te -brig ade -laven der -inv ites -e sports -vo ir -dri ed -tran spl -sur geon -no vels -pul ls -son y -lun ar -man e -i vy -fru str -dor set -sa i -tor res -ssi on -shut down -suggesti ons -writ ing -e o -battle field -u ga -ðŁIJ ¾ -vac u -spl ac -g it -u g -high land -% ) -mer maid -sacram ento -ta ils -p w -ka h -t ell -enh anced -ì ķ -auck land -cru el -ðŁ¤ © -au dre -sail or -gram mar -g love -de on -infl am -fresh ly -k ell -zi p -christi e -mil d -di xon -instru ctor -g ence -ãħ ł -sub jec -constitu tional -crow ds -in visible -ru ins -da k -si p -pla que -p ouring -comple x -z ine -ste ad -f let -trans mission -lo way -ar un -incre asingly -au d -transp aren -cro wned -sc oun -blizz ard -lux u -fi ers -achieve ments -hun ters -rock ed -bas in -vio let -pro ves -achiev ing -pro sper -se ga -flo at -vi an -xi v -pol ic -tur a -approxim ately -wander lust -keep ers -geta way -co d -pol is -br yan -col ts -tal ents -yo gur -gluten free -wri st -gr y -cze ch -ðŁİ Ī -ev ille -ðŁı Ī -to x -dani els -am er -bi ds -weare one -me tab -g t -boy z -pd x -pos session -pu shed -shr ine -reali stic -tri gger -na vi -ru mors -n af -jen kins -tr un -comm uni -Ã Ĺ -gam ers -arm or -moham med -bal cony -y ah -stron gest -rhy thm -unfor gettable -k p -ho bb -custo dy -greg or -r ita -aes thetic -il ation -sponsor ing -n ay -kid napp -sh s -ra jas -me g -signific antly -butt ons -la c -ver sions -essenti als -opini ons -k ro -d printing -wi dely -d k -ur an -y al -reque sted -c n -cur ric -plu m -gr un -v m -dev on -m yo -rel ation -juvent us -rou ge -min ority -min es -jupit er -n ine -oxy gen -fran kie -une sco -fab ric -disgu sting -sal man -dete ction -lan ka -d ac -ðŁĩ« ðŁĩ· -argu ment -shel ves -cel tics -rober to -pi gs -he dge -fau l -pow ering -butter flies -fi r -re make -att i -com o -emp ha -kend all -poke mon -se ating -d ans -bald win -ðŁij » -lesli e -one direction -ti mber -im an -fon t -e der -di on -ste ph -for mat -gre gory -pro p -he x -ru in -sor y -inf er -n aw -bar ak -sd gs -kar ao -lu sh -v ander -end ent -g is -a fro -soc cer -ay an -t uni -lun g -da yof -alex a -mar ath -addic ted -ag ile -hy gi -light weight -ì § -mand ela -jo ey -anc y -hu m -bi r -memor ial -jim in -ging er -v ak -jav ascri -cro ps -orig ins -d ari -pi per -im port -aggre ssive -predic tion -re pairs -cr acker -voy age -ni ke -mu mmy -linke din -country side -bor der -gla ss -per t -s als -sho e -autograph ed -wal nut -colle gi -sal ary -pa iring -ðŁĮ ¸ -cath ol -swee the -defe ats -streng then -roof top -impro vements -barri ers -ur u -t ally -ru led -ðŁĨ ļ -nai ja -emo ji -per cent -gi o -pro bs -on ce -adm its -pa ths -li ar -day tona -pe ters -cal i -cal li -mu g -o sa -ap h -ab y -hy de -eth nic -pla ins -ol f -haha hahaha -holi c -?! ?! -su bli -bl acks -mo t -gh ton -lo vin -b rent -bar u -l ati -de w -ate au -q a -pain ful -bu sters -st atic -ðŁĩ¨ðŁĩ ¦ -note book -out fits -si es -r f -floo ds -Ñ Ģ -thro at -su ici -ro vers -beng al -pre pares -blo g -mini ature -Ø ¨ -am phi -com b -r sp -in timate -green e -Ì ĩ -al tar -surg ical -ves sel -... ? -gav in -g ator -threat ened -z ar -rob bery -di er -promo ted -y g -x s -su bs -inter viewing -threat ening -do zen -me ado -water fall -nintendo switch -cal um -mini sters -dro p -univers ities -war ned -tac tics -ðŁĩ ² -refu se -ad ju -v ast -ðŁĺ ´ -mc fc -lib ya -no filter -distribu ted -re ser -ron nie -de co -javascri pt -mon k -intere sts -fle x -mar tha -sti es -oo d -ðŁ¤£ ðŁ¤£ -e un -b ali -g omez -sti mul -moder ate -d ity -ir is -stra w -consist ent -direc tions -adop t -sal sa -cro o -reco vered -black friday -lan caster -accep t -weareone exo -buil ds -free man -air plane -diti on -bel ong -jam ie -pit ching -li f -om in -cri spy -pre pping -ve g -chan g -accompli shed -graci as -dolph in -elec tor -culin ary -super bowl -wal a -pur suit -black berry -be an -cardin al -pro ved -immigr ant -stric tly -holocau st -pass age -ha us -cou p -pur se -har ass -< < -le ed -ado be -st ad -legis lat -par ked -pri yan -sil va -kri st -s the -fun ky -ig a -sett lement -ph s -t mrw -stre ssed -hun t -ho ckey -treas ures -cham bers -ol u -hu t -mar ley -tex ture -wilder ness -mm ing -poten tially -om aha -ju dy -to es -spo iler -distingui shed -feli x -ah u -recommend ations -zom bies -hit ler -tri ple -colla pse -motiv ated -ulti mat -gg ling -so y -ci gar -fo ren -vine yard -gl itter -fin dings -colon ial -hun ter -eri k -den s -beet le -lot te -sub tle -s matter -tru sted -experim ental -nam ents -ðŁĺ Ĩ -regi on -acquis ition -bre eding -quarter back -am reading -oo td -ru de -initi atives -st out -hy ung -out come -al fred -mic s -exper tise -bacter ia -pengu ins -jump er -valen cia -bar k -ing day -sell ers -contrac ts -hou ston -commissi oned -adap tation -swan sea -santi ago -common wealth -ju dging -sub mission -sco rer -tom my -ñ o -ex quis -fil ing -explan ation -alli son -wemb ley -ri dge -chev y -san tos -own ership -cogn itive -favour ites -sh ed -phil anthro -dele ted -go dd -s nor -gui delines -ff ing -je ep -cli ps -sw amp -an or -guil d -bol ton -spring field -munici pal -goal keeper -ye on -ðŁĺįðŁĺį ðŁĺįðŁĺį -ãħĭ ãħĭ -water front -gra ve -contempor ary -ar ity -ÃŃ a -sle eps -sy rup -al am -pi re -co yo -moto gp -ty son -kej ri -cir cul -sing ly -cr unch -complic ated -nostal gia -k op -mo ve -k ale -mac ro -mid west -h ans -tri bal -nu de -௠į -bey once -congratul ate -cat er -leagu e -ðŁĻ Ĭ -la dder -cra shed -tech nic -karao ke -harass ment -ro ts -experi encing -kri sten -ðŁĩ ³ -ðŁ¤ Ĺ -reflec tions -guin ness -illustr ator -ðŁĻı ðŁı» -cen ter -nar row -comm ons -regul ations -Ù Ĩ -har m -cro ft -cu ssion -hong kong -st ical -intern ship -zo e -cho p -hoo ds -estim ated -batter ies -berke ley -smooth ie -shau n -cro s -~ ~ -cam pe -hu mp -b g -proto type -cl ick -shaw n -re viewed -tem pl -p f -jed i -blo gs -ray mond -as th -ba h -av ail -scot ch -leaf s -nik ki -to k -hol low -ur ges -of t -un like -lat in -u e -cat ering -mil i -alter nati -ma ver -Ð ¸ -ag le -pre order -lu x -cu cu -ðŁijı ðŁijı -t art -âĿ¤âĿ¤ âĿ¤ -arab ic -rapi dly -ar rang -all en -travel tuesday -pa ws -flo ws -st ability -flu id -ca pp -can berra -uu uu -sp ani -demon stration -m la -plac ement -m w -presi dents -awe som -bever ly -ani st -ne al -father sday -referen dum -la hore -o aks -deb bie -half way -gho sts -de bor -matthe ws -fi at -t fw -pre sen -rob i -de d -bro ck -laugh ed -am ounts -bam boo -kinder garten -eat en -mtv hottest -break out -u sic -fra ser -legis lative -p ang -modu le -sam my -go ver -ear ns -expe dition -gar h -concep ts -char lie -la va -bachel or -veg gies -deter mine -el lie -un locked -fru it -dal la -cou pe -wash ington -depo sit -iv ory -pau la -chic ag -gu cci -ðŁİ ĥ -cul tiv -pier ce -li fted -stu mb -re cover -musc les -conduc ting -cb s -mcla ren -sophi a -cel lu -oce ans -up loaded -game play -mal dives -kim ber -avo i -rac er -ca ine -cav s -h ana -li ga -ra ven -inter vention -inaugur ation -oo h -at traction -merchandi se -tune in -li king -juni ors -int ended -att acking -aqu arium -i wd -comp onents -sur ing -cent u -yogur t -ðŁı ĥ -show room -op tical -ty our -ju dge -yi eld -an to -pl c -transparen cy -recy cled -chi ef -ar om -ambassad ors -plan et -âĿĦ ï¸ı -om ed -vaness a -cour t -mar gar -hal ey -v r -reg ina -pd ates -hi span -live stream -âģ £ -ya hoo -gal la -secu red -w ir -bene ath -off l -n il -am b -ye g -out let -u te -pe ep -lind say -bent ley -... ! -he el -trilo gy -vo s -ty re -there fore -tor onto -ab i -simp li -ja e -exten sive -eleph ants -s or -orient ation -im peach -re play -constru cted -peter son -pa is -por ted -custom s -colla p -ad u -high lands -sal em -shel by -ko vic -stra in -ro sie -sen ators -snap s -bo bb -suz uki -bla des -k p -lo lo -gener ate -si ght -ma e -struc tural -predic t -jump ed -ah mad -sun g -just ice -gla m -vol vo -jubi lee -de tention -lo sses -pu ri -every time -Ð ° -ra o -ed ge -li mer -rese mb -har old -re tri -sacri fic -surpri ses -am c -srilan ka -bar bie -men s -fin n -ag s -ukrain ian -em brac -î IJ -flav ors -hom er -lau re -ou th -pr iced -ver de -fir m -ah s -cu b -tre y -par anor -pro fit -in dv -who a -har sh -al ot -crit ics -hu bby -fi gur -gi ra -ca stro -chan el -in put -origin als -ten ant -yy yy -ture rs -lincol n -co on -lear n -ch ou -ac are -o les -din er -hy p -bizar re -mc r -let sgo -decor ating -ðŁĮ İ -al ison -ar vin -f d -reha b -mccar thy -lot tery -da h -minne apolis -eli gible -diagno sed -emer ald -destin ations -s ans -or y -bla zers -n v -ba il -digital art -no c -mal ta -sol ar -pi pes -alleg ations -no ck -po pe -bri d -premi er -n x -present ations -ef a -bo ws -val ve -opp onent -Į ë -visu al -ing le -cate gor -e ter -po is -dan i -at tract -neu tral -th ene -cra shes -fred die -ut ili -c st -awak ening -slo ven -quali fy -pro of -fair y -le v -fre ight -enjo ys -cup cake -flav our -â ķ -protec tive -ðŁijı ðŁı» -is u -ad mir -h mmm -continu ous -ai res -rap tors -showcas ing -y uk -pa ste -follow er -instru ctions -sp ru -@ __ -the o -debu ts -ve tte -sto w -es of -ach ed -sul tan -sand wich -som alia -franc o -car ne -flu ffy -al pine -jas mine -he ated -viol in -ple ss -divor ce -per former -phi es -port sm -dar a -kir by -lo p -chill i -for th -sky pe -ðŁĩ®ðŁĩ ¹ -celebr ities -ed y -ve e -po ison -ey el -gra bs -ssi c -un o -wester n -rail road -am er -numer ous -s v -fo w -fi st -âĢ ĭ -reque sts -mar tial -em my -accept ance -lau ra -ภ´ -er up -hyun dai -out lander -u tt -wrest le -esp resso -demand ing -g dp -geo graphy -sas kat -tro ll -confe der -su es -se m -be ts -t ful -to sh -teach es -col oured -gal way -mac y -dis orders -bb cra -at em -fen der -lit ter -e sh -provi ders -renov ation -nomin ate -ps g -nomin ations -jen na -shar p -some day -z ur -bra ins -che shire -pre y -hu go - ¿ -to ken -r v -car r -tac tical -zel da -kay la -fern ando -photograph ers -j our -umb rella -woo dy -congress man -du mp -le vy -ju an -d azz -sign als -la in -an u -mic hel -por ch -al den -sibl ings -y ale -pe el -sw ick -gg in -ll c -k ale -s con -il d -pat reon -re el -qu in -wit t -mar ty -moo dy -ton i -der y -g ators -speci fically -dd in -ly on -tr ick -meado ws -p j -bor gh -vi k -tu r -bron x -pu ff -lan tern -ðŁ¤ ¦ -g ently -be stie -fac t -refu sed -fas ci -mp y -ðŁĶ µ -cross over -mead ow -indian apolis -duc ation -sle y -loo m -mix er -new music -film maker -prosper ity -li m -week end -cre amy -neu tr -lu ther -h v -nor thern -tw o -h ra -cat ches -appear ances -ha bit -kitt ens -n v -illa c -inf an -regar dless -liz ard -dun k -cur tain -ac om -in tu -ve z -e min -fl ats -calend ars -em power -ru ined -hun gary -vi d -we x -u lum -aber deen -o sa -k t -ma ssi -se emed -s den -' ? -tele phone -de fi -insp ires -me ow -z ones -bl ind -pl y -tuc son -advent ure -ge d -oy ster -ðŁijıðŁijı ðŁijı -out put -tt t -metal lic -sma sh -ucl a -sco ts -perfe ct -lu cy -regular ly -sp ic -rel ative -ath ers -mis e -batt ling -deci des -mat a -occu pied -random ly -cat softwitter -gi an -ball y -al ties -al lies -im men -sy rac -ðŁĴľ ðŁĴľ -l lan -au r -k ut -lam ar -affe cts -n ra -star war -ðŁ¤ ĺ -sc ram -en chan -pro cess -luxu rious -ar ray -sher lock -comp ati -dor f -stre ss -m su -s with -sal a -sof instagram -fo il -under stood -qu ay -r p -c ade -ja w -en ab -en coun -ðŁİī : -do ck -satur n -mu ll -lay out -ra rely -happ ily -fix ture -or ph -over looking -her bs -m itt -pil lar -nol an -pe tty -str y -u i -mu k -o res -o vers -á µ -re creation -we sley -ri t -kejri wal -sto cking -g v -subscri bers -moo se -ma e -ber t -opp re -assign ment -u ro -high lighting -cal vin -we igh -cambo dia -av on -ke m -dis abilities -read y -char gers -p ads -iz ing -illi an -tru ste -col leges -associ ates -alban y -mil ton -cr on -bu r -har dly -si ghts -anti ques -e cho -surpri singly -ha iti -cap t -ph p -op io -ine quality -equ al -ken y -sch mid -autograph s -ren t -qu er -cit rus -challeng ed -te c -epi de -fe st -z hou -li me -citizen ship -cry stal -convin ced -mess enger -copen hagen -âĿĹ ï¸ı -war ran -develop ments -ï¸ı âĥ£ -fore x -hi ro -sne akers -xi de -vi va -stere o -bat ting -ss el -ho st -beng al -critic ism -q c -cr un -attemp ted -ry e -determin ation -cre ations -d read -label s -pos se -anc er -joh an -si ster -partner ships -les bian -k st -guaran tee -bar o -fix ing -ma son -m ous -chem icals -t less -bio diversity -par o -bhar at -ac ol -refu ge -en te -t iti -dys sey -respon ds -lef to -in er -se vel -rahu l -ol ine -frank fur -cho reo -enjoy able -c to -strugg les -wood land -heavy weight -gen s -rece p -ac cred -ðŁĺ ¡ -trans formed -list en -at op -n k -sur ge -be re -gover nor -prison ers -clau de -t ill -mu lator -emo tion -water loo -star t -ðŁĩ º -clean ed -grand mother -fear less -afric an -astron omy -ðŁı ģ -à¸ Ļ -the world -su itable -anth ony -k and -tt en -meaning ful -disc lo -jaco bs -à ¸ -tom linson -ghe tti -ty pho -sub stan -as co -te k -nag ar -mu d -am on -vacc ine -f ty -fle sh -no el -infl ation -portu gue -glam our -tra m -v re -te qu -roun dup -w yn -rejec ted -mosa ic -si ghting -cal f -o ta -com position -go pro -gonz ale -e ed -b ard -tu e -effec tively -we en -al to -ri bs -rel ate -thir sty -fu rious -di m -ch ard -perfu me -s ny -chur chill -k of -master class -wa ve -ðŁĶ µ -er in -own s -to be -sk illed -te m -go f -en i -tor i -cra zy -l ick -resi stant -ici al -ag ar -! : -g ali -del aware -bl itz -koh li -pu ck -avail ability -hi malay -influ ential -cro chet -victor i -read ing -ho bby -vie t -j as -en gra -sk ul -ðŁĩ² ðŁĩ -educ ate -tech no -distric ts -blu es -se tt -seven th -lear ns -ee ee -apocaly pse -hang out -cru el -mu tu -bru h -hel en -she er -c tion -kle in -tex ans -ce real -sh ine -ne red -gra s -am bro -f ella -hin du -matthe w -li ma -mir anda -je wel -so ho -euro vision -neighb ours -chand ler -be sides -ðŁ¥ ° -ast ros -thu mbs -ren ault -ra ve -hi red -ðŁĸ ¤ -it ary -z or -bla zer -k ine -ea u -kat y -dc comics -pe c -ro dgers -water proof -kill ers -super int -pre serv -as so -brew ers -promo tional -sc am -villa ges -sket ches -ju icy -for life -au dit -so lo -fundam ental -len e -philipp ine -t end -conserv atives -sponsor ship -dd le -a ine -h tc -os i -hul k -w af -à¸ Ļ -evalu ation -ant ine -sle e -robert son -roo sevel -ag i -sophi stic -emplo yers -bubb les -ko wski -inter action -sh u -bou le -ic an -j are -han k -leg itim -k nicks -kar ma -recei ver -per ks -u h -sta ir -sun i -labor atory -gra ves -voc als -oo t -c ture -thri ve -tic o -ãĥ ³ -b w -carto ons -mcdon alds -dra w -y ung -pl er -li d -eth ical -groo ve -ent a -international womensday -pat ron -wor ries -ðŁİ ħ -ðŁij ĭ -ka therine -di az -tor i -bach chan -tru st -min eral -ic om -buil ders -bor n -col oring -lat te -ca se -revolu tion -tra der -ox id -chi pot -inst antly -sou thern -se hun -pro b -her nandez -lis bon -hu awe -p ong -me a -ro oney -wheel chair -ke en -be tt -cor in -regulat ory -di splac -ka ren -sch em -sun sets -wh ales -remin is -he p -hi de -mar cel -pand ora -do yle -th fc -ot to -no kia -trans gender -ko v -hawai ian -sha ve -so vere -exc er -nick i -pu g -st or -ro th -wee t -leg al -dig nity -po w -hom age -ðŁĩ³ ðŁĩ -s re -can on -la x -wo ah -quart z -ñ a -gree ting -flick r -nai robi -advoc ates -an c -vi i -eu gene -th ra -c re -el an -pen sion -th letics -ton i -re agan -x v -sto re -ben ch -har lem -todd ler -sent enced -âĻ¥ ï¸ı -glob ally -che aper -u f -ma m -nic o -ik u -tho u -ni st -dam i -th ala -rho des -sal e -bow ls -â Ī -las vegas -sanc tions -adm ire -mat ched -un able -travel er -ele ven -straw berries -âĢĶâĢĶ âĢĶâĢĶ -stu dio -jac ques -im s -valu ed -s no -cheese cake -n xt -e os -s x -f x -ton ic -hat ch -chic ks -gra ds -hand ic -r ory -as p -ri pped -denti st -n en -lu fc -âľ Ĭ -di ge -hop kins -sher man -f da -for all -ash ley -str and -h y -liqu or -buffe t -ess ence -phar ma -suri ya -ðŁĴĻ ðŁĴĻ -festi vals -z an -re fresh -pur ple -uni forms -kenne th -= ) -as an -hel sin -transform ers -k ali -person alized -chal k -bo bby -â Į -the mes -depar ture -prin t -illustr ations -qui et -agre es -gri ff -Ø ³ -m iti -toge ther -conven ience -ab ar -car lo -turt les -info sec -some what -ar lington -scholar ships -emir ates -mu ms -st ella -auton om -fe ather -g ore -nom inees -fragr ance -Ñ Ĥ -w ong -thea stern -gr e -z illa -is i -bump er -go o -do zens -ab duc -âļª ï¸ı -o ils -don ors -sil icon -i pod -fortn ite -ðŁĴ ¨ -tor o -spark ling -consci ousness -pal a -nu m -moun ted -ffin s -thi eves -team mate -pra b -om er -ta pes -bo d -mit su -ste w -e re -p bs -tu sc -lo we -ra de -parliam entary -h m -ed gar -ðŁijĩ ðŁijĩ -to a -a gh -hon i -s late -ge ek -ap t -hard t -ta p -horiz on -grow th -make over -hi l -paper back -id an -reha bil -gi u -possi bilities -let tu -fran co -bo ss -ach er -does nt -mo e -ta ker -huss ain -ml k -di l -th ia -ham a -real ised -raven s -curric ulum -m ith -k night -ted x -r v -isai ah -cumb ria -birth days -f ing -pre z -mu barak -exquis ite -clear ance -y en -par i -ev o -à º -modi fied -app lying -imple ment -disco vering -chap man -indie game -dis k -crowd funding -mach in -li vel -sty led -âĿ Į -ma king -rehear sals -nutr iti -subscri ption -and ro -cre ators -car ries -ky lie -cam den -appren tice -tax pay -c ca -tuesday thoughts -pis sed -er man -dete c -freed om -mer i -.. ! -psal m -sun light -per spec -be ings -book store -rock star -fun ctions -p ence -fav es -z n -obam acare -sp ill -coven try -pi geon -pi vo -ba it -kol kata -av al -don or -wa h -privi leg -tra ditions -rajas than -ten ess -portugue se -yn es -tack les -de fic -tor n -pol ling -thor ne -in a -bened ict -bar ry -cal ories -ver dict -save the -nor ton -off ice -main stream -impro ves -fr on -respon ding -real tor -scotti sh -de clar -r l -shi v -supp lier -re sting -swee ts -qu i -. â̦ -whit ney -startu p -thank you -teach er -h alls -ha ve -hand made -pro ving -quar tet -ro chester -li an -virtu al -mend es -of icial -mid lands -x box -meas uring -o vo -accommod ation -bri des -collegi ate -intellec tual -in car -ni ag -ðŁį · -sf w -coco a -co ats -civil ians -presi dency -mat rix -sweethe art -tri athlon -wag ner -ra dic -plann er -the o -execu tion -k um -the walkingdead -sc ar -ro tation -blo gging -bom b -re son -bb les -st are -assi sted -e do -brand ed -war nings -thor pe -acknow le -satis fied -sho res -ri d -dor a -phys ically -bi gh -appro ves -ha h -ric al -vers atile -pret end -lu m -ab hi -ye e -sp it -ãĢ Į -dj s -ash tra -j t -ven ues -gram mys -cy clo -tr acker -over watch -repl ica -el yn -nr l -lind sey -hom o -ballo ons -kitch en -si s -am os -ende av -ðŁĴ » -a rec -thu g -hoo ked -hr c -new york -bur gh -americ as -patric ia -ug u -ap athy -ha st -psy chi -cor k -petro l -ðŁİ ¬ -ak u -po pping -psycho logical -au x -g ma -cad illac -wa ste -auth ent -bri stol -nam e -que er -to ber -jer ry -com in -ch ant -privileg ed -op ar -lo ser -tex t -mar ker -stri es -equ ally -ak i -christ mas -gare th -ble w -em ma -imag in -se als -che at -conditi oning -j ana -ren s -dar ies -o asis -disc ounts -coun cil -i ka -shir ley -vou cher -al ps -w x -q r -dri ft -attemp ting -ut c -Ø ª -gonzale z -m f -jo ker -paralle l -pa re -aspe cts -proce du -n p -am a -rale igh -bright en -gu ire -radi ation -cre scent -ho b -il le -str and -v ore -n ard -che st -di wali -av atar -al der -d ling -pa thetic -ðŁĴ ĺ -spir it -jor ge -film making -ðŁĻı ðŁĻı -challeng er -b j -down town -ht ml -ade qu -twi sted -in ely -( ' -wra ps -oper ational -y ne -n us -mag net -market place -health ier -snap shot -dam on -inter ven -fe derer -ow ls -biscu its -j p -ro deo -blue berry -lec tion -fron tier -summ ers -re yes -pede strian -go l -caf fe -refur bi -bou lder -me ghan -speci alty -la ss -e i -suspec ts -appro x -rr r -ra th -st im -cru shed -he d -wh un -lo af -cr ore -river a -gene tics -so ck -wa sted -ny pd -answ ering -do ve -bel la -ol in -du n -fi ji -pre tty -spar kle -y un -j d -euro pa -li fts -am ber -mu r -te k -boy d -roy alty -in do -ri b -go tham -ti est -inst alling -ke mp -the photo -cos mic -) )) -whole sale -loy ment -eas y -su ing -sett led -af p -pro ver -suppor tive -re es -ne ath -deli ber -c é -wel come -pic oftheday -new born -pat ty -sun s -si est -fl int -diffe rently -spo ilers -troop er -g ins -cor y -look out -equi pped -ta pe -to by -resear cher -u sh -ke yes -al ma -induc tion -k w -k har -sl ick -bri de -e ur -cra ving -book ings -ch es -tr unk -vern on -sp her -cryst als -rel atively -pom pe -uni ons -val ley -par a -w ant -ok c -de af -ser gio -len non -sh ay -cr a -v at -he e -t we -liqu id -pol y -ðŁİ ģ -b ent -be aring -motor sport -bar be -te sti -han i -fin ancing -astron aut -water colour -ri sh -comic con -gar t -wr ong -ber n -it an -ste pped -fil ters -c low -me x -dem ons -all o -expand ed -comm and -et ers -go ats -si ri -y r -pot tery -mari on -i le -el an -san to -person a -du ke -hom eless -li ghted -wheel er -chang er -cab bage -sur real -ham burg -sma shed -str an -k not -i art -ob i -be dro -di al -th ick -b ingo -fu s -vacu um -con ve -ati ve -accur acy -accoun t -re fer -ri z -spider man -ban a -r ite -u b -ab s -medic al -lin k -si em -> >>> -be tra -g lowing -re actions -pupp et -spa ghetti -ang s -re medi -pray for -roy ce -char lotte -£ ï¸ı -gh et -affe cting -ro de -soci alist -mo ses -az i -o it -re porters -cd t -ap ing -s nat -minim al -wa ist -sie ge ->> >> -ri g -schmid t -h are -ec a -thor n -he mp -es the -cly de -th a -don ut -moham ed -ling erie -le gg -carpen ter -perform ers -de a -imag ined -cur se -la sh -ct r -agu a -ro ar -gr i -ro le -j fk -resur rec -roosevel t -maril yn -sm alle -will is -wa ited -char ities -the res -li k -origin al -car i -c ough -cru ci -la gun -contra st -k ou -arm our -re moving -t ent -maz da -bri ghter -thi ef -cor ner -tequ ila -buzz ing -al bi -p am -az ure -disc oun -pixel art -possi bility -ham ont -tra des -bu da -hi ve -vers y -fin ch -tran spa -em i -terri fying -in qui -g ba -sub stitu -collec ti -plac ing -cin dy -k ann -pa tho -diamon d -mour inho -guine a -anthro po -air s -pu mps -ì ļ -pas o -cur ling -an ita -resi dency -ne wh -jo on -cigare tte -que ue -ex trac -gam es -spl en -ex press -public ly -bon nie -tribun e -ba ek -reason able -c or -timo thy -she eran -Ä ± -f dn -su tton -concentr ation -carav an -x avier -al ger -cy lin -freder ick -ner ve -pe ak -lettu ce -j ail -pre game -kav an -up graded -eco logy -squad ron -gra pes -goo g -pa stry -ðŁĹ £ -ãĥ¼ ãĥ -mil ano -awa z -presen ter -ðŁĮ ¿ -her d -king s -tem plate -fl our -h v -k ley -i ya -spe c -at er -frankfur t -co ch -tex ting -del i -communi st -regi ment -ele anor -anticip ated -ðŁijĮ ðŁı» -thephoto hour -ran o -survi ving -simul ation -daw son -ar in -aqu a -m or -â̦ . -cin o -ira qi -sh az -dun dee -we s -dra u -hann ah -s news -occup ation -ste en -x m -ang les -sett ings -gur u -kno x -or ca -shap ing -w ent -dr illing -zz ie -br i -kis sing -fin d -ma ine -âŃIJï¸ı âŃIJï¸ı -ðŁĮ į -lar ry -bu sted -ta vern -acti vely -- " -replac ing -no d -un lock -. " -âŀ ¤ -affili ate -to w -l n -happy newyear -di f -j m -green wich -contro versy -daw g -con dol -sav annah -compens ation -touch down -te o -amb itious -embro i -convic ted -iart g -bar ack -tr ance -testim ony -au dition -thum b -my ths -be x -que z -orch id -den y -entit led -hoo d -gr ant -in box -blue jays -r illa -smalle st -bur den -in famous -divi ded -boun daries -t ter -el t -wy oming -be verage -me sm -one ws -budd hist -y ana -as sad -is ms -bar rett -predic ted -back to -tw it -e there -cap tains -escap ed -ay o -lam borgh -gard ner -la ps -k al -adverti sement -insec ts -na po -am en -ac y -r and -g k -te h -k athle -tri dge -pan cake -at ro -pyram id -bu la -paral ym -gau ge -en cies -tom y -biscu it -but cher -quali fier -coun ty -ke i -po ols -dar ker -should ers -ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸ -sp re -( " -writ ers -g m -ðŁİ ĵ -k nit -hu ff -mt b -philli es -o st -den is -g art -licen sed -inter face -ex cel -d well -from the -co fficial -az zi -appear ing -fore st -n ana -ke ith -manufac turers -beck ham -) ? -e se -col ony -delic ate -ut ter -mc in -transpl ant -pre ferred -par d -ari e -hu b -po ds -perspec tives -pic t -del u -app er -be than -p mo -crimin als -femin ism -sh ack -circum stances -fel las -prote sting -wa x -sugge sted -t ator -dre w -om ni -fa ke -kath y -re b -del ine -ber ni -mi sty -ðŁij © -er able -break through -men swear -millenni als -chan yeol -la z -inser t -rep lies -phra se -n x -ihear tawards -audre y -gran ite -rac ec -ori e -ter ra -innov ations -britt any -at eral -pe ar -bio logical -sh ments -institu tion -m sn -frequ ency -d man -neg lec -t f -ste fan -fox news -ty po -comm s -sequ ence -car men -wh ites -econom ist -exe ter -se um -re sorts -cas ually -bun de -divi de -Ø ¹ -ga g -cre ed -reti re -cau cus -rapi ds -wrestle mania -tul sa -sunder land -fundam ent -o di -yam aha -v ary -intri gu -el se -be acon -an gie -tra ded -tran sm -g ents -kn itting -gal ac -ðĿ Ĺ -u to -sea side -hol t -re rs -far go -train ers -mon soon -b ale -sou ght -mad die -h w -co li -fr an -fav s -ðŁĴ Ķ -int ent -r ally -s bs -lemon ade -barack obama -bre ad -stick y -explo sive -chel ten -t j -as soc -ram en -hom ies -v log -mi ster -lor d -âĢįâĻ Ģï¸ı -aly ssa -sketch book -ru mble -cat ch -migr ant -discipl ine -un likely -chronic les -fl ora -sl ams -am id -s boro -coo p -ju mps -tran qu -mel is -sof ia -en ri -gab e -sy ri -nicol as -cha i -w v -be cky -foo ty -ta o -suppo se -ðŁĺįðŁĺį ðŁĺįðŁĺį -plu sh -ri sh -ðŁ¤ ĵ -k ha -satur days -ac cent -he c -lim it -carl ton -wi red -taylor swift -ðŁĺ ij -sq l -har ro -recipi ents -g at -go p -th of -amaz ed -gh an -ðŁıĨ ðŁıĨ -por to -cla re -di stant -na c -ohi o -ðŁĻı ðŁı¼ -mt n -anti bio -dino sa -me sa -par tial -b v -lear nt -lov ato -questi on -ex tract -gossi p -gi bb -niag ara -ðŁij ¨ -displa yed -so oner -ste vie -nug gets -ml n -bro m -tur b -give aways -stu pi -bl ink -c ili -conven ient -mo h -vi ve -f ric -cau se -cham ber -cu les -ne arest -is se -small biz -t j -canadi ans -smar ter -bra sil -ra re -que tte -w ha -cand le -at omic -ðŁijį ðŁijį -warri or -relax ed -stri ps -ne ur -k ka -r fc -jen sen -reco vering -respon ses -sal am -ortho dox -acti ve -ell ers -n it -âŃ IJ -metro politan -centu ries -vi da -gra ding -transpa rent -sim ple -do ts -superint endent -elev ator -autom ated -red skins -ima m -summer time -jona than -ge aring -michel le -confl ic -m ice -to te -publi sh -pa x -) - -na iled -á ´ -tele scope -ser bia -ba b -ape u -st ically -sen ti -r ats -isol ated -grou p -hat red -paranor mal -stan ley -ali on -safe ty -l s -ठ° -nex us -alexand ra -mas ks -+ + -tr on -au k -brother hood -brow se -mix es -sim one -mu sk -appro ve -lo la -ex p -per th -fu turi -un seen -d m -chel se -sc outing -o we -portsm outh -k ram -mi ze -di spen -su p -d lc -adver t -tere sa -is le -cy cle -met all -shi elds -marin ers -ra z -ing en -fun d -an go -jon es -o ka -mad den -broc coli -domin ic -situ ations -mer o -cric ke -puni shment -d b -sha king -ðŁĺ ļ -m q -ari ans -le h -cla w -we ds -d ure -ni el -j elly -gour met -tra ders -le vi -w ages -kne es -wi se -heaven ly -avi d -melo dy -z ack -ban anas -apprentic e -pro p -fun ny -o de -respec ted -me gan -fe wer -dra fted -med it -gra pe -us army -cru sad -vo cali -prepar ations -non sense -us age -th r -ro th -wiz ards -insi de -promo tions -mon a -red sox -si g -eleg ance -ch ia -univer sal -ãĢ į -ra ja -un ga -pol lin -filip ino -ak a -t sun -ik on -bi king -decor ations -z ac -cade ts -hum our -ag m -re ppin -vac cin -elo ve -u w -dia be -galla gher -az er -do l -a while -pro minent -wel sh -t ann -' ) -bi en -wa g -in al -c wc -wic ket -ur st -q anon -x e -out door -dun n -star r -co logy -ric ky -u efa -reb ounds -s music -inf ant -ðŁĻ ĭ -so p -u mber -hand ing -beg in -sor ting -ha sh -sp ati -re k -buda pest -black hawks -dele te -ro m -can did -auth ori -de bris -spe cul -inter section -marri ott -im ran -ðŁĺģ ðŁĺģ -cru ises -ram sey -rafa el -aware ness -vas cular -beyon cé -ru g -ðŁĺ Į -festi v -ar am -s able -bas il -p ill -flo oring -un beaten -implic ations -u f -w ound -for ge -poin ting -po ts -popular ity -ðŁijı ðŁı» -mani pul -s lots -deb ates -abs ence -ver mont -never forget -wri st -gl oria -ren ce -hu sk -mel ting -ðŁİ Ł -br aces -tim ely -transform ing -am ps -ma k -po e -ah an -gener ally -nd p -ale ppo -unic ef -pro fs -nor d -ma sk -jackson ville -v v -sh ells -bloom ing -oper ators -char coal -ne ville -ma gi -chi p -sam a -ir an -re forms -accu mul -ru e -æ ľ -web sites -ga on -devast ating -sto s -glaci er -ra pp -chipot le -pr a -or ous -rom ney -seas on -decor ative -c isco -dit ch -compla in -ll o -assu me -ðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ -n els -cent ric -ft w -car rots -tat a -can ter -per ience -li ers -demo s -bl unt -oper ate -reserv ations -le ah -sub stance -di son -an te -elec tion -v ue -squ are -non profit -ca a -f su -y am -ãĤ ¤ -v ladi -comple tes -mar i -philli p -ne ill -er as -ka it -men do -mahar ashtra -g p -dan e -provi dence -ther apeu -juven ile -me mo -in corpor -aa aa -seven teen -teen ager -à £ -or ns -wi de -cu teness -tw d -ff les -bar a -com edy -over time -y az -bar on -unemp loyment -ðŁij ĭ -exter ior -den se -cent res -match up -history month -artif icial -qu it -e sk -war n -cr itic -j af -ðŁĵ ² -inform ative -fu els -recy cle -nam ing -stri pe -sol ic -mole cular -dee pi -con vo -s sel -na e -de scent -ti z -accoun tability -ter ry -r ito -sl ay -em o -dem ol -sens ation -co v -tor e -round table -y ol -excu ses -ॠį -tur quo -hh hh -pod casts -cele b -me ssi -li o -man n -contribu ted -u z -gener ator -ele ts -veg gie -indu l -en suring -detro it -pun jab -tran spor -instru ction -ad d -por cel -pan eli -cir cles -persi st -clay ton -sp n -dog softwitter -is nt -sp r -retail ers -p w -hun gar -el ena -mon aster -gu atem -je ssie -an z -ra shi -fle e -car ving -fau x -l al -hen ri -d jo -du ll -s ana -lar a -glo be -cri mson -com pass -pau se -na b -lion el -ba ths -u fo -invent ory -sin gh -sat an -ðŁĩ ¸ -ce ments -in form -gener ated -bi den -av g -tas ks -de er -sa u -ja iled -pa stel -sc c -na il -steel e -per is -lamborgh ini -pur sue -mar gin -u ch -bo sch -dra in -cl ara -bo m -lat ino -web ster -rose mary -r ha -s oun -billion aire -not ch -percent age -con or -' " -hom es -earth day -h ort -big gest -di sin -wal ton -edit ors -im ma -om ar -equi valent -pharmac eu -ah med -cam eo -han ni -under rated -ge ment -micro bi -v oo -honor able -obe sity -âļ ¡ï¸ı -limer ick -invol vement -st agram -boule vard -bur g -blackand white -liber ation -fi ve -inter im -sm m -rival ry -cap abilities -stat ements -thu mb -ve d -sw ans -bar ber -e que -seren a -hel m -noo dle -sam pling -n awaz -sing le -thunder storms -sh on -in ev -ë ¯ -to pp -orch ard -bi an -ðŁĺ Ķ -door step -salv ation -marke ting -r ons -cle mson -ra vi -in take -stand with -sin a -ha iku -ple y -elector al -ph illy -la ys -electr ic -cap turing -u pp -er gy -believ ing -cul tures -es day -inva sive -ed ed -spee ch -end ur -viet nam -boy cott -pe de -deli ver -ðŁĴĸ ðŁĴĸ -mer chant -st ir -den ies -poc kets -o ti -cu ddle -ro land -mm ed -den ed -lear ners -hoo p -sour cing -h acked -di m -environ ments -ben son -jud icial -wor cester -pear ls -govern ments -arri vals -cor ners -tun ing -la bour -y m -or dering -le wi -i fe -hygi ene -thou ghtful -indone sian -campaig ning -princi ple -assau l -ru bb -at v -wil ly -en tre -il i -ph on -du ties -âĻ¥ âĻ¥ -sn akes -lo op -am ar -conver tible -bon ding -ment oring -max well -ethere um -destro ying -ax is -ca iro -fin nish -sho ck -ðŁĺ IJ -cal eb -com a -pe dal -co re -contin ent -el son -temp o -helsin ki -ac p -tack ling -st ated -bl a -dou b -sma shing -a ja -camer on -disru ption -warm th -being salmankhan -bullet in -o de -syrac use -ar an -mc gregor -bul k -an ton -confir mation -sp ine -im ran -instru c -jac ks -chi o -pal m -str e -embarra ssing -un t -elimin ate -to ss -c ise -a ws -oni sts -sh inee -jo s -ho se -li vely -opp onents -mo vements -recogni zing -sandwich es -sh akes -exerc ises -se at -profe ssion -merry christmas -lu gg -adopt dont -mar vin -byr ne -un le -he t -ku wait -rah man -aspe ct -humb led -gen es -f and -long time -) ; -cam pu -an gus -ðŁijį ðŁı¼ -q uran -sle eves -s lic -¸ ë -twel ve -your e -i ke -go gh -b st -dic tionary -reflec ting -to on -yar n -em bed -ðŁı ´ -re serves -floo ded -ver iz -du sk -estab lish -pro li -au d -ritu al -or bit -declar ation -recor dings -cam o -cas sette -good luck -cu tter -bo p -b ho -che ating -paci fic -ma res -tim er -col t -tr ous -tomor row -han sen -ci e -w ang -ban i -circu lar -ac ute -far mer -co ys -p se -ir ving -w j -haw kins -b ison -ur day -cru ising -o te -k ath -whi stle -your selves -ant is -sla sh -thorough ly -ke sh -ser ie -ex em -en ig -guil d -sh red -ho gan -ap o -ä ¸ -pu zz -ne tball -au ssi -panor ama -ws j -av is -ar ming -hum ph -brow ser -cri es -fo ggy -mat te -ðŁĮ » -it er -tal lest -by ron -cap tiv -je su -any ways -flag ship -p ton -we y -fay ette -financi al -f oul -solom on -jenni fer -cucu mber -ar gue -tex tile -wrest ler -john ston -pa stor -ðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ -cac tus -edi ble -re served -ric hie -met res -ingredi ent -h ella -un to -ch ol -cele bs -po ets -gra ham -hay den -coinci dence -b aw -communic ate -flet cher -/ - -tole do -ecu ador -coun sel -s laughter -line ar -at p -os u -jo el -ev ed -conqu er -ru stic -plic ity -recogn ise -room mate -cr acked -jas per -ph er -ðŁĮ º -wo ven -mo ist -ff c -ste ering -ni sh -stand ings -frequ ent -ar di -haz el -as msg -bau m -d art -si dd -nat h -ch ero -card board -c ss -n sfw -pa ir -ðŁĺį ðŁĺĺ -occur red -homeless ness -mal one -ph e -xi a -pad dy -decl are -theat re -b f -per sian -ta d -ax e -susp icious -lam b -mu cho -sen ior -st as -k ite -st ing -gra d -k af -wat ering -Ø ¯ -spi ral -th ms -educ ator -jer ome -of c -clo ck -su l -pe mb -.... ..... -park way -de aux -restric tions -m ons -need le -e j -le agues -water melon -am an -pl enary -max im -w ab -coming soon -bry ce -vi gil -super market -fortun ate -turquo ise -presi dent -li v -inter ns -feel in -fix tures -stun t -st aged -premi eres -lo k -prac titi -shor tage -log ne -ve c -con cor -roc ke -li g -com posed -syn thetic -di p -cam ila -ch is -j ou -su san -eye brows -supp lement -satis faction -moham mad -ti bet -house of -pu n -as sam -shado whun -psy ched -se duc -mand atory -her bert -sc allo -stream ers -proto col -block buster -produc es -sch nei -lau rel -tri be -time hop -pl a -mod elling -tv time -mtv stars -wi dow -me tric -ch am -con do -flow ering -ale c -d ms -inten sity - ¨ -mccar tney -islam abad -k b -f fi -ph al -anal og -f ond -h acks -positi vity -treat y -sub marine -conne ct -sel en -categor ies -cu b -organi ze -si k -quote oftheday -remin ding -am or -loc king -ðŁijı ðŁı¼ -comp ound -et te -b out -rec ur -fe rence -mi zz -tren d -hip ster -for tress -forth coming -preli min -o dyssey -ang p -del ici -even ings -ðŁĶ ¹ -i q -d w -da ir -kathr yn -christian ity -moon light -ha b -wh oo -f bf -se th -genu inely -pa x -char ity -deplo yed -b nb -bu cs -ju dg -con ge -plant ation -im press -car a -sc lub -sco py -land ers -compla ints -b ama -re build -x y -real ism -sh our -le in -brac elets -mer a -assas sin -an chor -ðŁijĮ ðŁı¼ -lin en -con fron -chronic le -comm ent -cat alog -il les -gor ge -me try -jung kook -love my -sent in -se em -fit ness -alli ed -ts man -digital transformation -pr an -lo ft -min ton -alden richards -en vel -cher ish -certain ty -zz z -rhin o -per kins -en rich -cape town -ome ter -sec tions -ske leton -def enders -ðŁĺ Ŀ -pen c -bri t -ja h -capital ism -ðŁ¥ ĩ -baz aar -re me -ex t -kk k -conver t -stor my -b ye -kar an -chry sler -ad os -pre ssed -syn c -ation day -dang er -bad ges -refu ses -em powering -ly m -ex ports -adoptdont shop -ðŁĩ ¯ -th c -awa ited -focu ses -fin ed -o at -haha hah -âģ © -n family -fi ona -luck ily -thr illing -ty ping -out break -di es -he u -craw l -ne sses -o ath -scri pts -gee ks -ðŁIJ Ŀ -p b -mathemat ics -al is -________ ________ -gymna stics -acti vism -recommend ation -gre n -wa in -cour ty -n apol -cau li -hor nets -g als -jo ckey -dir ty -at ar -enor mous -pe st -greg ation -an os -ii ii -def ends -black historymonth -at x -mb c -lugg age -wit ch -co b -la sts -cu m -gg g -ba thing -n ar -ce bu -ðŁį ĥ -navig ation -min e -re jo -ðŁİ Ģ -gif tide -re ta -use less -pu ll -defic it -al lu -ati me -it v -tr illion -pu e -ac ies -proce dure -l ori -jen ny -c ad -ul ously -dr ac -promo tes -ing the -can u -woo hoo -na omi -zar dari -ts u -be ir -sd g -le ver -we ber -ab ud -lun d -crow ded -deplo yment -ter rain -ken ny -ho f -witne ssed -lo ch -j k -bul ly -w ren -poe try -do ff -ww i -mo red -din i -cul ture -promp t - ¥ -maur ice -to pps -r m -cor respon -ab out -jewel s -gi br -eag le -ðŁĺĺ ðŁĺĺðŁĺĺ -l ending -sou ven -ç Ķ -contemporary art -establi shment -j ong -â̦ " -gat or -patri otic -mc coy -v ape -human e -feli z -coach ella -re posting -ste als -fu ller -n ering -at ra -( - -bla ke -he ather -wor ms -discipl inary -rede mption -y ard -am in -" @_ -d nc -t ds -k appa -ne wark -comm its -spe ars -j ams -t and -msn bc -inter medi -aim ed -at ic -teen th -observ ation -kash mir -kavan augh -ou l -san francisco -re u -bel ated -cho w -pass word -st ills -deta ined -sar i -day ton -dar ren -itali an -ar th -amu sic -ar bit -w m -v m -he m -dou g -my r -a sho -pre v -vin d -bra h -sta g -ภµ -pre views -gu k -con taining -leon ardo -sad dle -ru shing -st av -lon gh -gam bling -ve gas -reserv ation -end ale -bal a -fl a -vari ant -he dge -bulgar ia -nat ali -we aver -sol st -encoura ged -ap c -as parag -ne st -cycli sts -fe l -ìĬ ¤ -overwhel ming -pey ton -j it -a post -mb le -ble eding -neighbour hood -a very -expre ssions -mac donald -gi gs -mon ds -illu sion -n ct -cam ero -over head -my th -ol y -vi o -et v -lau rie -unve iling -pri or -con n -iron man -di ff -day in -crit ici -con go -re vision -wal e -direc tor -p ines -black pink -gar ner -cur ated -manit oba -h ac -common ly -bar ton -.... # -mor tality -live smatter -philos op -shor ter -con vince -fre ak -vend ors -insi ghtful -el ly -sens ors -e led -s berg -weight loss -u kip -sp ur -priv ate -qu a -ss c -, ... -supervis or -advis er -amaz ingly -less er -at es -mah on -oooo oo -sar as -pmo india -waff le -un ders -toler ance -sculp tures -her sh -kno cking -smo ke -cathol ic -gri m -tra veled -fli p -ge off -dinosa urs -sle pt -scar let -ok i -compla int -ob sc -nam i -la g -cross fit -u fc -mc cain -refe ree -sad ness -pen ny -li eu -mo de -ki er -vol s -w is -el on -she a -ba o -son ia -cla ire -em manuel -moist ure -di gest -vi ii -t eller -ch on -access ory -night club -foss il -aw an -hu sky -ab original -brand on -ffici ent -cou gars -ste d -ad mitted -igno red -content marketing -ag as -v ase -execu ted -negoti ations -she ad -n and -tab lets -go th -ts al -d fw -on ep -protec tor -sp ho -gaz ette -andre as -ss er -comp ilation -ha v -contain ers -bro ker -soc al -porcel ain -hy uk -air ing -ðŁĴ ° -publi sher -scen ario -spart ans -re viewing -itu des -ed el -pear son -ba sh -mau i -a ad -ðŁĮ Ĭ -li u -ul ate -program mes -fav our -web design -real ty -motiv ational -cro sses -' ... -bus ch -adjust able -ar jun -mist ak -dimen sion -pi stol -weigh s -en y -unve il -indy car -gor don -f ade -fran ken -qual ities -bet t -loc ate -ker r -sp c -confu sion -ne e -luck y -bas es -dep ends -fire fighter -ol a -re t -mar oon -ðŁĶ Ĭ -w am -defin ing -whe at -bi l -é s -b hai -psy ch -ta u -ic ans -thi k -ob ile -inspec tor -ìĨ Įë -ill on -go s -ev angel -fa i -si st -voc ation -bur ge -chi stan -renew ed -enthusi asm -en ting -ag ri -ike a -m sc -aero space -sens iti -memo ir -hosp ice -co caine -der ry -mechan ics -Ħ ภ-tin o -reduc es -collec tors -in justice -supp re -v ana -ab un -nap a -su sa -os lo -e ff -en core -lic ence -ched dar -z al -moun t -ðŁĴ IJ -threat ens -!! " -archi e -fu tsal -scu ba -jo s -gn on -se xi -s official -compar ing -domin ant -tof theday -fa it -propos als -gi ft -y as -cn c -l r -ha b -reser voir -beli efs -gener al -mar ti -t d -est e -ì ł -wi l -ðŁij ¯ -ðŁĶ « -sp x -et work -excer pt -e instein -hir o -sil hou -team ed -per ception -corri dor -mental health -hin ts -ben ny -induc ted -sw x -wi desp -spe ak -cher yl -dru g -ðŁĺ ķ -h f -asparag us -myster ies -fitz gerald -off er -therap ist -care er -dam aging -ts d -per u -wei bo -y ay -phoeni x -disc re -mac book -bar ker -stig ma -sp read -roc kies -kang ar -bri dg -pa i -bi shop -ta iled -capsu le -ðŁĴ ĵ -ge of -roy ale -short listed -o ste -ash amed -ch app -key e -cl a -screen shot -austri an -nati ve -en ight -juli et -michel e -ðŁĮ ´ -travel ers -pi l -football er -win chester -ðŁĻ Ħ -azer bai -gold eng -organis ations -interpre tation -predat or -ofthe week -lo gan -pok é -mari e -cal la -t nt -cin de -ge tic -fit fam -gra v -ow ens -ðŁĮ ± -shoot out -sal is -commissi ons -co he -p tic -ni xon -hi a -amb ition -mar ine -cruel ty -t k -cru de -sal ty -jim a -mon go -ir ony -on wards -arre sts -strang ers -ig er -cycli st -ra g -exten ds -tra dio -bour g -mo i -el la -e able -lex us -au l -der a -histor ian -mor ton -ti ff -man ner -ko t -d k -po inted -mar qu -a an -en ey -du blin -on poli -em ili -secre t -fl o -âļ ¡ -ba j -ste ep -accompan ied -rum ours -dev i -purch asing -fi g -pu b -sch oo -autonom ous -go alie -x ia -autom atically -re vers -ter o -fu ku -titan ic -shoo k -sand als -see kers -exc av -nor dic -bigo live -ba ke -r att -z ak -ne p -ðŁĺ ¤ -cand y -billi ons -book worm -pp et -à ³ -sur faces -sc ars -phil ip -do gg -ci gars -co te -transl ated -cur ator -sin dh -han gover -bre wer -on es -el ton -ðŁĴª ðŁı¼ -mar cu -elli ot -righ te -di oce -ru ss -rail ways -grand son -as cen -apo logy -awa it -mob ili -re spir -parti san -oli vi -stri ke -yo o -white house -expre ssed -pu ps -bed ford -cul tur -fro gs -fly ing -cav ali -c ds -fri ger -street photography -re solve -tali ban -kan g -cru shing -ju m -ðŁĺ Ĵ -william son -tan g -cur ly -t man -veter an -fa ire -artificial intelligence -un anim -pre n -back drop -fr ances -oc cer -doro thy -work ing -ar thr -conver ted -day light -serv ant -pad dle -compla ining -thir ty -nad al -ak u -ibra him -ad dressed -p iss -green house -batt alion -si mulator -out lets -embroi dery -ðŁĵ ± -fis cal -ger ard -sas sy -ðŁİī ðŁİīðŁİī -vent ures -mer it -public ity -ðŁij Ī -sophistic ated -c tu -conven tional -condol ences -isra el -tra dition -ar an -te ss -gla d -ðŁĺĬ ðŁĺĬ -correc tion -ge on -am d -or ship -be ast -ch ment -ì ŀ -nic o -wk nd -wel s -cushi on -beli e -vo c -idio ts -under neath -pu ma -corn ell -en ation -lu l -swa ch -ab ig -u rer -mi e -form erly -ca f -er nal -chor us -juli us -sen ator -âľ į -wh ir -salv ador -ph d -uni fied -boo ster -graph ical -w rec -son ny -mi z -dere rs -s all -ven s -tusc any -wi d -y ong -kur ds -w az -trol ls -mac ro -cat urday -pre ssing -sa sha -cent ennial -gu sts -em c -be fore -den ise -cu st -ðŁĵ ¢ -lo oo -base l -eng land -y olo -ar du -manife sto -do ha -ì ľ -kni ves -bourne mouth -bi bl -bar b -al icia -Ø © -com er -cycl one -g it -ane ws -character i -vent ura -in tra -sf giants -hu t -be a -dar win -ell er -al v -re ese -bl y -kar an -conclu sion -man ny -fla kes -unite blue -nad u -co pp -ed ges -lanca shire -i als -o tta -philipp e -l ent -che e -ment ors -festi val -an ism -compli mentary -r j -pu g -d ine -we i -cli ffs -sar my -ti veness -treas ury -il and -after math -rabb i -ou n -bou quet -herit age -zi on -sur render -shen an -in ks -kar l -gh ty -pol icing -exam ination -ce y -per su -measure ment -hydro gen -lu han -âłĢâłĢ âłĢâłĢ -war i -о Ð -j y -fow ler -mis h -al fre -âĺ ij -bb naija -cat alogue -recogn ised -sa ver -hu skies -col in -mun do -si va -p ng -discoun ted -man utd -fre sno -de vin -prelimin ary -tro phies -pla stics -du g -pro cu -indi go -g ard -dy lan -pit ches -ground breaking -in son -bl ac -an thology -f h -expl ic -r ard -admi ral -so chi -la shes -splen did -en vy -ad v -sex y -festiv ities -stic king -bi b -thr ill -op p -ari el -botan ical -endur ance -fe males -br icks -vat ican -black pool -ber mu -br ough -roll er -bi d -sue de -sloven ia -mm ing -ml b -med alist -di ans -rehabil itation -ne on -s go -li thu -ram os -z ed -pi anist -inten sive -broad band -stu dy -peter sburg -lu ca -ah hhh -phys ician -dill on -tele com -gri ef -mu n -ac ro -si ded -s ly -blo ws -classic cars -tri um -ar gy -? : -h ri -marsh mal -âĢ ĵ -to pping -war saw -tran sc -preserv ation -b av -re friger -experim ents -ä º -gl it -sli ga -g age -fac tor -flav ours -br ony -sp o -cook book -carri age -aw ay -ny fw -on ian -w g -simp sons -ro lex -ðŁı ¿ -cro sby -ãħ ¤ -cre di -syn dic -pu bs -ali fe -poor ly -mac ed -ðŁĺ ŀ -behin dthe -w enger -n ats -ðŁİ Ł -rubb ish -procedu res -typho on -opho bia -er do -fu el -vi era -bu mps -millenni um -new zealand -lec tures -it on -mil ky -respon ded -ê ° -landsc ape -.. @ -bo ther -âĸ ¶ -z hang -huawe i -tu ition -s worn -in u -y or -pa olo -au ditions -ab il -malay sian -ho ps -fe athers -mp le -au ts -ã o -boun ty -ic he -ì ĺ -sh q -pin ot -ge ars -disapp ear -video games -t na -alzheim er -ðŁĮ ŀ -a ji -under wear -swit ching -sign age -o scar -ec on -dro w -cl int -pl ated -gun dy -emb lem -ho es -ici st -nel ly -juni or -road show -miner als -at le -alexand ria -ac claimed -v ell -shi va -ad he -en ne -amne sty -h ounds -councill or -ðŁĴ ¦ -aes the -part nering -influ enced -mag no -fl are -extin ction -civil ian -maje sty -va il -law makers -rac ks -mc c -ori an -sp ices -er rors -may er -co ca -pa i -s ooooo -reti ring -ba thro -ðŁĻĮ ðŁĻĮ -âĸ ª -su f -endor sement -buil ding -broo ch -pal la -arvin d -ag ent -kar ate -r hi -c tv -ta ine -um m -ba x -reig ns -uni of -enterpri ses -adel e -fla ke -at tire -bru ce -ba hamas -gra vy -sa in -che ek -tri vi -lo v -e en -bb lo -lady gaga -itt a -. "- -du stin -observ atory -eigh th -bloom berg -kh s -f cc -gi st -commemor ate -ve er -sexu ality -ed c -nic ole -vac ancy -u ser -son a -:' ( -dipl oma -t end -up grades -Å Ł -jura ssic -cardi ac -dr s -widesp read -à ł -dail ies -vend or -sim plicity -wi der -len ses -supp lements -de pos -ob served -vin es -parti ally -renew al -collabor ate -ali g -fin ity -ph u -zz y -pe tit -ðŁĵ ħ -z in -i gu -sm ack -fall on -ðŁĵ £ -back wards -comp onent -o so -compati ble -bin ding -zur ich -thom e -w ounds -ly ric -fresh men -sne aky -fi bro -di et -emplo yer -in sect -h ated -sch er -raz or -n sw -boo ker -califor ni -av fc - ° -preten ding -pep si -al is -un titled -k art -grand parents -e the -o ck -lux emb -visu als -small business -abdul lah -min ho -su baru -h ra -reve aling -heart breaking -clar ity -am g -sl r -** ** -âŀ ĸ -recor d -ici ary -min ded -ye h -exce ssive -knu ck -icec ream -tru th -ev ic -ta stic -ant arc -ren dering -, , -mit t -loren zo -st patrick -bound ary -zi g -vo cab -osa ka -fur n -tu n -gu l -s ounding -blo gger -utter ly -g af -adv ancing -l cd -mar gin -lifel ong -solst ice -sh ra -wa its -ple ar -bre ach -en ligh -ad er -itt le -c ation -ho on -stu died -?? ??? -k ash -ev angeli -ps l -wei ghts -met als -ty res -tur no -wi e -car b -g ale -se al -sun ite -am ic -patter son -á n -eu ph -up stairs -quali fiers -khali fa -apple music -ìĨĮë ħ -vau ghan -al ter -cru iser -mu a -t ana -kat rina -id ols -spo iled -secre tly -fi bre -part nered -um es -gi ov -com et -screenshot saturday -k eller -fil tr -fe t -con way -pe u -bad minton -gi d -m ound -don key -bu ff -lea ther -lar gely -bro ch -int ments -am use -r k -sto ve -impac ted -con t -cr acks -prison er -bar i -contrac tor -ori oles -domin ate -pol ar -am elia -dr c -ðŁijĮ ðŁijĮ -vi st -su arez -injec tion -blo oms -ðŁļ¨ ðŁļ¨ -sti ff -pay pal -sno wing -thur sdays -goo se -we dge -educ ated -weak ness -de cker -abud ha -bree zy -Û Į -hope ful -o bi -rai der -gh am -de u -se ve -par tly -fu t -infu sed -mer ri -than e -some time -hu e -me in -cre dit -sli ding -ran de -cher ry -dead pool -sh ol -ar am -under wood -sky e -distur bing -m nt -poli shed -guardi ans -ha dn -pic asso -ari us -ak shay -ir ri -j h -happ en -la kh -dal ton -at the -s well -mar sha -re h -cour s -j kt -top us -serv ice -r ink -hack ers -dono van -hor o -tc m -may hem -cha se -dev ops -ken sing -sc up -sh ere -quali fication -c live -ton g -n ancy -mar is -der dale -ber man -cinde rella -jol ly -ci c -loo t -collecti bles -hom icide -g ge -epide mic -su ites -mu ddy -gi mme -e rec -- * -tal la -lis le -embro ide -ðŁĩ© ðŁĩª -veriz on -ve ctor -be anie -arti san -ga in -flo res -vi gil -u so -ðŁĻı ðŁı½ -grin ding -gh er -air ports -respon sive -shaf t -can cel -ceremon ies -e me -at ari -bru shes -eag er -bo hemi -children s -yan kee -ma a -suspen se -mor an -mac ar -sun flower -cre w -vo id -ke ar -fashi oned -jen nings -sunday funday -sub missions -me ad -her man -wa i -crit ically -le um -baek hyun -for cing -co bra -ãģ ® -acqu ire -al k -ge ology -pri mar -import antly -ire z -bunde sliga -curi osity -sen a -stric t -con soli -win ters -ven om -chelten ham -ðŁį º -cen a -t at -ba in -glo ver -under cover -as ses -car n -memorial day -am eli -i rene -ch on -syn thesis -spe edy -mitsu bi -sla yer -compos ite -under stands -pe w -inter rup -hen ri -mor row -an om -thof july -g lee -thre e -ðŁĺ ® -and hi -ch att -renew ables -ye s -trans fers -!!!! !!!! -bab u -du ter -lo ops -pe ers -o ilers -pau lo -ic ation -h mu -war a -mer cer -hom eland -fu ji -ale y -year book -re m -re en -ab sur -bo is -] : -caes ar -shot gun -kur dish -o ren -ra e -anci es -ty pic -f h -def ault -re plic -lu k -trans actions -r ys -infan try -ðŁį ¾ -cho w -chick ens -ba gh -wy att -ay e -gg i -bre ws -ed itions -mi ra -commen cement -pre su -peris cope -ic hi -guatem ala -zam bia -pain ts -wit ches -wan i -un dere -cro y -vo ws -us mc -hear ted -theat res -shu ffle -le vel -mul tic -squee ze -fer n -app et -post al -mal t -on board -ld nt -co o -s sc -k ac -ðŁĺ ĩ -sc rap -mar cos -deal ers -ann u -mill er -co ve -ul ary -vladi mir -be ef -th ur -pick led -se same -bengal uru -mo tt -kathle en -hi st -no tor -dr ank -du chess -snow fall -e ff -tin y -j n -sy our -speci alists -scot us -bay lor -eve rest -mali bu -pre m -harm ful -l ali -b ates -g ye -differen ti -and ra -geome try -el over -black out -== == -ko ta -inter act -asi an -la yo -samu rai -fi del -exhau sted -gla di -pd t -spher ic -anti qu -guit ar -stu ri -ho pper -ang le -f ills -sla p -mi th -rod ney -ong i -in som -pre venting -cassi dy -ap ho -ore gon -lo in -ham mond -contribu ting -f n -gar ri -ori on -comp elling -escap ing -aim ing -plu mb -bi stro -be asts -concer ning -bo e -do pp -shop local -stumb led -âĤ ¹ -naz is -âĢįâĻĤ ï¸ı -gest ure -war ts -us open -hi ggins -char li -hang s -bom bers -° : -fe eds -c ch -st il -nic ola -ðŁĵ º -clam ation -tro pic -af ro -ou k -expen ses -der rick -al ine -fa w -reg ard -im er -sat in -thi um -ry der -pear l -te ss -mm mmm -sen ses -ðŁĩ ¹ -positi ve -exhau st -occu r -nor ris -lil ly -is les -direc ting -yo fficial -count less -sam ar -on stage -flo ck -mir rors -arch er -mo i -k d -vi v -in os -si kh -le i -sen sory -br its -kno x -chest nut -op y -coli seum -z af -di vin -adap ter -:) )) -tem ple -ku n -hel mets -t df -gu ide -m old -o ids -lu ther -he is -monaster y -sp ree -k lu -brit ney -jagu ars -gre ats -c cc -ky rie -machin ery -cric ket -re ro -ab o -aspir ing -semi finals -ale ss -sig natures -var d -me th -her bal -hol den -king dom -ap or -reg gie -ore o -palestin ians -em mys -sec tional -ro i -ney mar -qu el -cu ll -l ka -haz el -estim ate -ul ties -go w -be a -purch ases -bel ts -protec ts -m é -gue ssing -bb o -clau dia -fr acking -jon ny -el k -cel tic -al mighty -ra je -courty ard -ig i -can es -ðŁĴª ðŁı» -bank rup -le thal -âľĮ ï¸ı -graphic design -vad er -penc ils -rough ly -dan te -m fg -const ell -cam el -j b -bloss oms -en to -balo chistan -cine mato -ill ard -jer sey -con sent -dent ed -con templ -sch er -hol i -lou gh -st our -a yo -begin ners -cur b -v hs -a jax -du ff -av eng -dom est -commit ting -ai red -cha p -hedge hog -disappo inting -freel ance -in land -char ms -ðŁĺį âĿ¤ï¸ı -ai sh -m x -buck le -ti dal -per mit -bo ating -ra cha -kend rick -b ello -b hi -ple a -estim ates -l b -apo logies -jay a -bb l -ast oni -inter state -main taining -el bow -mu p -ep it -ðŁĺ ¡ -viol ations -def end -be h -sl c -am ir -pur i -ti um -fi fa -blur ry -scri m -ðŁĻı ðŁı¾ -ma ple -rel atives -âĺ Ŀ -cho c -con nor -⾨ ⾨ -whi sp -list ings -ma ze -than king -ri dd -grass roots -shi fting -desper ately -gor illa -den i -ju les -stra th -g ley -ja in -bu ick -t anner -ðŁĴ Ŀ -ga e -pri m -it ors -n ano -separ ation -armen ia -bor deaux -ðŁ ħ -pj net -bu rial -e bon -glo ss -re new -gri er -spe eds -comic books -sym boli -pur poses -ãħł ãħł -spati al -no table -ci on -n ps -ho ffman -nor man -rt g -du sty -situ ated -tr an -k fc -em en -nic kel -hast ings -sett ling -gr it -l ena -w aw -art s -gu m -ca regi -le wis -sapp hire -rememb er -embed ded -t lc -bl at -serge ant -el sa -boot camp -bow man -photo graphic -pill ars -direction ers -classi fied -no is -ve er -barre ls -wh oop -ðŁĺ± ðŁĺ± -fe male -petro leum -medi a -e fc -poké mon -ठķ -enthusi astic -var un -pro files -pedi atric -acci dents -con rad -jan g -jo jo -ac or -ob server -l f -live stock -for gi -fo s -el m -an and -go e -c ere -avoi ding -gri t -om an -thank fully -scat tered -nick y -cylin der -chees y -di ver -mahe sh -cav es -ear liest -qu inte -subjec ts -b end -gul f -vocali st -glu e -pat ches -un stopp -sny der -demonstr ating -pi o -hor ns -wic kets -and the -r ama -yo on -stra ight -bed time -or ang -bul lets -sa urus -min ers -inci dents -! ... -ðŁİ ¸ -ag ers -hand les -stat es -in ity -d ons -incredi ble -emin em -avi v -ru dy -moz art -folk lore -appli ances -mt l -fre y -di as -hu a -page ant -stri ve -im prison -bul lish -r ana -al erts -bb mas -hy per -derby shire -re cre -re dd -debor ah -cosmo s -law son -mel anie -psy cho -ho or -doo dles -sni per -shad y -man tle -canadi an -new year -inter actions -separ ated -cor ds -spiritu ality -ap u -it o -p ct -pel osi -rebel lion -se iz -wor cester -sec tors -ul i -san ta -Ð µ -ðŁĩªðŁĩ ¸ -bi ased -class ical -gam ma -dee plear -emer ge -back er -sur ance -hand crafted -ðŁİ ¥ -franc is -mill an -ic i -cro wn -wo w -stri ped -un fair -relax ation -³ ï¸ı -embrac ing -she alth -pale o -martin i -dist illery -wr ink -or k -na th -hay ley -cour thouse -si ber -sa di -quiet ly -mel t -m sm -me h -smart phones -rel ent -pp ing -war wick -co logne -gli a -cot ton -pro g -lon e -ip sw -star ters -expan ds -u mp -su ed -ski pper -infe ctions -ing le -à ¡ -cler k -demonstr ate -ac ar -ðŁĺĤðŁĺĤ ðŁĺĤ -ti bet -bun s -alo m -demol ition -ssi a -g st -[ ] -so ar -âĺ Ģ -ðŁĺ ª -ðŁĵ Ĭ -dee pest -beyon d -are t -att ends -activ ated -di mit -âļª ï¸ı -high lighted -magaz ines -rum or -az za -steph ens -dol ph -sho ckey -mat s -we av -mel an -serv ers -tra um -ku sh -æ Ĺ -bab ys -pa z -a al -la use -break ers -canter bury -ul ture -mi ri -euro s -tane ous -impre ssions -du tch -il d -gh i -pur due -adequ ate -l p -sy ner -ang ler -du rable -gal ore -ro wn -mg mt -ðŁĵ Į -lu cia -âĺij ï¸ı -zay n -bor row -. ( -north umber -cru sh -eng a -su sh -extra vag -t out -ma hal -ali stic -ther mo -gall eries -es se -chi bi -attrac tions -lex ington -legislat ure -docu mented -resi den -brow nies -w f -st ool -plan ets -sho ppers -conduc tor -ms p -tr icky -fru ity -end ra -feel the -whi pped -hair style -re fer -oo k -oc topus -audi ences -ku mar -after no -op tim -c fl -ni p -gen i -alpha bet -ann ab -lam in -accep ts -l ng -ðŁĺ « -t ine -ac om -cheer leaders -t k -gr on -v g -k ung -ja x -dha bi -r ss -mack enzie -beir ut -clean up -gy psy -st ell -bur ger -hurric anes -educ ation -st ina -âĻ¡ âĻ¡ -unfortun ate -jere mi -bad ger -at ers -: â̦ -ter ra -subli me -stu d -y mca -mr u -duter te -bren nan -bul b -mel o -yl on -hack er -c red -gu d -as an -pad illa -embroide red -vietnam ese -pione ers -projec tion -re boot -id c -an ey -pri mer -suff ers -win ding -p on -sto day -mor n -u ch -all in -adid as -eliza beth -tu ck -o graphy -ðŁļ Ģ -be g -os borne -ghet to -r h -cn n -ir ma -ma kin -cab les -mur ders -oc ks -inst a -al as -si k -cu ff -la re -foo dies -o vic -at om -geome tric -em pathy -ภµ -cent enary -newsp apers -administr ative -ðŁİ Ĭ -sti ve -contrac tors -le tt -tas mania -awesom eness -den sity -ve en -prince ton -frequ ently -re ject -gh i -modu lar -ceram ics -sh ag -ki wi -can vas -sweat shirt -an j -ti mm -napol i -il er -appe als -hamil ton -ma yo -we ave -arrang ed -whar f -occu py -b vb -as aki -ot ter -nor m -vi es -de tox -tion al -dere k -id ad -ad missions -constitu ency -u pper -woo t -allo y -se ve -lu b -un comfortable -ed win -ab re -d wight -ar che -virtu ally -sp ol -pri e -ai i -er r -swit ch -bar ack -se ok -cou l -wn t -pou l -o live -caffe ine -cardi ff -notor ious -de mp -ex cess -bar r -t ford -a jay -bump ed -my thology -shel ley -fal con -shakespe are -must angs -no ted -bon e -civil ization -sy d -par sons -un official -hy ped -sp ends -oppo sed -v ings -space x -noti fication -deci ding -bio tech -out si -sal ah -! . -fe d -ss y -c ms -bad gers -cr o -ela ine -n ba -dy our -n ant -honey moon -climb ed -conom y -ath a -m ell -ne bula -nature photography -juli e -bm x -inve sted -mon o -lieu tenant -wat kins -techn ician -o se -ka e -ì Ľ -mc queen -pre ach -trav eller -flexi bility -ze bra -reta iler -p ant -ben der -brand t -squ id -war rant -veri fied -cas s -pier cing -hon ours -t ying -mor ris -kis sed -op rah -panor amic -me i -splat oon -wich ita -ari as -gal li -indy ref -good times -athe ist -confe ssion -ow ski -re pping -ad ditions -mechan ism -z im -j ans -su f -cho pped -beg innings -vitam ins -ãħ¤ ãħ¤ -or th -po les -ru b -antarc tica -indie film -web cam -ket ch -bre tt -cle ment -her on -defe ating -hydr o -buc ket -wand ering -sid ney -future of -b inge -on ies -knock out -administr ator -syn the -l ent -jan i -bar ley -premier league -ner ds -cr m -bra s -bot any -evol ved -rot ter -ro wed -tum or -weal thy -Â Ń -mon arch -li shed -da hl -ðŁİ ĥ -bu ch -ken yan -Ø § -red ness -assemb led -se mit -hud der -shro p -ran i -lear ning -mor y -iti a -geo graphic -worl dof -f b -pho sp -boo gie -am ped -? ... -che w -dwar f -ar us -s sen -ru sty -recru its -h k -gar de -app lause -vol umes -invol ves -ta c -hand bag -trans late -ffe l -se ym -aqu atic -trans fer -zo di -and r -acade mia -cr ater -te z -ar se -adap t -col oni -snow man -mal i -hang in -di schar -oy sters -pho e -colon el -w ba -hispan ic -thri ving -sh y -ag les -sales force -cre me -so les -la fayette -â ī -ter ia -ach a -sp erson -go go -car ly -the ore -am ore -vo x -af t -ãĤ ¹ -stap le -mu ffin -di agram -ino x -su stained -av ent -me ta -arbit r -dec ay -ado le -Ð ½ -ec ol -ph o -n k -o cu -gr anny -ç a -luxemb our -stad t -alber to -le vit -am as -d x -or phan -co bb -as c -lo gy -immen se -chan ts -off line -p ent -bre x -w inger -plan e -i el -nichol s -ca thy -nar uto -low ed -/ // -ignor ance -cat astro -you ts -sch en -buil d -haz i -s ine -critical role -du g -dete ct -lo gs -en amel -stpatrick sday -ed die -co pa -cigare ttes -ho ff -kay a -la goon -ra pha -air borne -choo se -puer tor -ke v -gui ding -fro sty -bor ough -mir a -ðŁİ Ĭ -cade t -anu sh -yo gi -e ger -fl ing -slo pe -nin th -we ston -foot wear -f n -may weather -a am -pla in -stair case -witne sses -work outs -ro bust -dex ter -co hort -ðŁļ Ĺ -sp ell -ha ze -o om -organ ising -wild fire -cont acts -av on -min o -upd ating -ðŁį » -li thium -ing ual -k is -au ga -lo com -de duc -u da -th ak -boy le -mp er -hot tie -eri k -re vised -is la -travel photography -oo za -en qui -confe rences -clo ver -g room -cur ves -live on -per f -displac ed -bo log -xx xx -ðŁĺ© ðŁĺ© -te al -ve ssels -rain forest -cal ci -pan ther -gira ffe -ta sted -imag ery -pad res -day time -bas s -ri pe -opio id -nu e -vin yl -invent or -sen s -process or -mu t -gad gets -bibl ical -shann on -jacqu eline -car y -the resistance -ali en -n vi -co sy -bi har -fo ley -ren d -mu gs -fa ken -cl one -ni allo -gra bbed -chi hu -power house -n tt -chero kee -spon ge -imple menting -rh ine -le one -ðŁį Ģ -pret tiest -infra red -impro v -swit ched -tu bes -con tr -bl k -projec ted -be aver -yo t -bbcra dio -thi gh -per secu -apologi ze -w ack -po ster -oli ver -az a -lou d -( ?) -f the -women shi -spar row -blu sh -us able -sc ales -it ative -peu ge -ne eding -legg ings -glam orous -mat ur -c z -wat t -da b -tam ar -et sym -bau er -heart felt -h n -else where -bir ch -alu mini -hu ck -e me -j l -traf ford -d z -por tions -ana sta -arthr itis -esp n -ber gen -viol ation -yo shi -c z -northumber land -clo sures -ðŁĩ¯ ðŁĩ -smi ley -r w -tel ugu -inten si -gre gg -ve ga -dun geon -south bound -ba il -domin ican -semi final -chap ters -h itch -van ity -trans iti -recomm ends -sati sf -bar ca -queen s -( ( -de struc -stra it -ra vi -dess erts -in tru -har am -k os -fo e -fat ty -pais ley -magn itude -dri dge -com ey -schem es -vision ary -our t -down loaded -ðŁĻĮ ðŁı½ -gd pr -lan i -p wc -gu ad -nic est -stake holders -re ferred -george town -arvind kejriwal -schnei der -in doors -all star -strand ed -gen der -ze pp -ma sses -ðŁIJ ± -pati ently -bl dg -z ab -we arab -vi vid -he ck -d ella -sy mb -je opar -la ger -à ª -comb ines -ne c -br ay -flo p -tx wx -jo ys -pon t -pro found -sur round -mad hu -ma ble -ay r -te as -n sa -open ly -er nest -ãĥ © -to po -g na -anti oxid -ti an -e tr -c ello -ma thi -gener osity -b iting -man ic -kel sey -chee ks -ten der -w th -pron oun -ultimat ely -gu sta -ari anag -ger ry -ble ed -red dy -mic h -mitsubi shi -oper ated -sex ually -ma u -cl lr -vi ds -co c -mel ted -ðŁĮ Ī -q ld -ite ch -instru mental -end game -ðŁĵ ĸ -ener gi -brow nie -tam il -at in -domin ated -pra ises -fire place -sens ational -men a -k arti -un prece -ru pt -ori ental -mc cor -tour naments -scen ter -re eves -prescri ption -sam e -fra u -tru ffle -em bo -roman s -bla sts -techno logical -pr at -b sb -y ar -tren dy -ac l -al ad -ðŁį ģ -o hh -bankrup t -tho ven -regar ds -is er -war wick -vine yards -real m -niallo fficial -do ta -ge mini -to do -v able -¨ ¨ -la u -wre ath -ju ve -nat asha -le ver -lor i -hor ser -cc tv -air bnb -es anders -sin clair -ema biggest -high school -con test -optimi stic -t te -ðŁĴķ ðŁĴķ -ss d -ye e -hel ena -con sen -ric ks -jes se -an ic -ðŁİ ¯ -re acts -ro be -independ ence -vol tage -m ington -s ant -à¸Ļ ภ--------- -------- -sentin el -ke tt -rehear sing -aaaa aaaa -sof the -stir ling -sear ch -wi gan -stand out -sna il -pent agon -Ä ģ -ch lor -cru st -net any -chemi st -disapp eared -ric ardo -sp iders -bo se -war ren -me ssing -bann ers -gu el -par ach -ma id -coun ted -epi le -bon fire -speech less -se tter -meas ured -rejec ts -nik ki -le ster -foren sic -fab rics -alo ha -pre served -wat ford -deta iling -dar th -bo u -car ly -... ' -tail gate -noti fications -å ¤ -pas sive -trous ers -balo ch -ro ther -typic ally -à ¥ -sp it -wi z -sic ily -technic ally -ex pose -st age -hu bb -cre am -cap s -po ke -sle ek -ju ne -tempor arily -de z -awak ens -l ame -_ - -ji ha -tues days -advis ed -advis ors -exi sted -dis agree -news room -lo sers -world tour -dr ying -al di -har ness -foot print -hobb it -p mln -i ro -que red -asse ss -gaz e -sa b -th ian -í Ĭ -ti f -ob serve -ev il -dra wer -swee p -cor y -co dy -kyo to -cal lum -n inj -lau rent -be i -sket ching -custom ized -du r -regre ts -knox ville -ìķ Ħ -mess aging -grac ie -abun dance -bi dding -bre wed -fl ouri -therapeu tic -alt itude -ho gs -bur ner -elec tro -wonder fully -he ater -post pon -li very -r all -ad as -a ac -sau l -brook lyn -play house -âĻ¥âĻ¥ âĻ¥ -char itable -in y -z ah -compet itions -be av -plu gged -o is -do om -astron om -speci alized -max i -ta ps -cellu lar -depre ssed -folklore thursday -cri b -e mul -ë° © -fi gh -ru z -car lisle -spe ar -side walk -de i -depend ent -lac es -nh s -ðŁĮ Ļ -reali zing -net work -ric he -re gin -re fresh -st ral -pa thology -pla id -psyched elic -hin d -u ka -algori thm -lin king -progre ssi -fe y -d ade -hydr ated -b ant -fam ed -cot sw -bo ise -as c -rac ing -ja vier -ww en -mar lins -poo p -swe pt -toni ghts -we f -ani me -slo vak -âŀĸ âŀĸ -cla us -lem me -cli ppers -re ls -arianag rande -r te -ko t -thal apathy -hungar ian -zu ma -y von -is u -jour neys -clin ics -be be -ww f -n ws -super heroes -er it -sle ague -identi fication -mo tto -ba i -sour ced -ill er -ap i -pri se -unprece dented -dam as -tuni sia -dra in -undere stim -e ther -quarter ly -rewar ding -al ham -wolver ine -cab ine -hyp no -nad ine -hav ana -da e -ðŁĵ Ī -dr on -read ings -b ati -pic o -mer ci -iti an -wal kers -el ope -mi key -god zilla -bur lington -abu ja -social ism -at ility -sh ell -harry potter -g no -ab ur -re leg -fel ici -ro gen -neuro science -inst in -ath am -vou chers -j arre -fu se -def ici -monte rey -de port -mid day -pp ard -fre ed -ame ter -wil t -n ingham -pr att -liber ty -slo gan -o to -pr i -co ated -c pd -ne tt -il las -mal awi -evol ve -accessi bility -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ -or nament -b p -el is -son line -chi ro -fl ick -ib m -ar ak -en ables -gar land -san e -cu ties -tri p -rotter dam -n ys -lam ps -lu cas -bo g -ra ils -travel led -hic ks -en u -sab ha -scru b -hi er -hart ford -fo o -fer nandez -tre vor -mat tress -appo intments -ale j -fe i -o logist -saf ar -oc ta -sr c -sha un -ambi ent -dri c -bi ker -she e -must ache -h ta -bo one -her ty -car dio -bra kes -rec ital -consi sts -overwhel med -cau l -robb ins -im it -al th -ur l -bi bli -on ne -black livesmatter -diffic ulties -tel ang -tall er -ðŁĵ Ĩ -deb ating -bur rito -mo vember -strength ening -bo e -te stam -mirac les -base ball -re nee -ðŁijī ðŁı» -al fa -âĺ ĺ -unstopp able -ec s -g mo -giftide as -path way -fen cing -ðŁİ ¤ -b ham -ra s -sk o -d led -thel ast -magn um -bin ary -wil de -wil der -wh ati -barbe cue -h ism -can oe -kur di -eli ve -advant ages -mad ame -bi er -mis sing -enter tain -air force -y ama -c is -hash tags -j is -ve il -dream y -ten se -may ward -ch ateau -hunt ington -âļ ĵ -v all -up on -bl ouse -dun es -ðŁĺ ´ -fert ility -m ole -curren cies -st u -ber lin -toa sted -div as -wal t -lar k -por a -hit ter -um er -chil led -bal ancing -fa is -y in -or tiz -east enders -h ate -ur al -ap ril -tim el -à ± -per o -sto cked -respec ts -th t -best friends -giving tuesday -be ad -inv ent -im i -nap les -comb ining -tok ens -thir st -ma sc -par rot -sp u -dent on -* -* -t res -subur ban -wid th -si ve -con tender -siri us -lo k -troop ers -outra ge -tur bo -frag ile -me ssed -do h -disc ord -netany ahu -re sign -forgi veness -mo han -mun ch -cam ou -identi fying -enab ling -hot ter -thorn ton -jai pur -ar ya -ðŁı» âĢįâĻĢï¸ı -mu staf -maj ors -o ke -du ffy -roh ing -til t -ðŁĩ®ðŁĩ ³ -rock star -she ep -hend rix -ra v -in vention -do u -lagun a -gru mpy -sw is -im pe -) ' -you ths -bun ker -st ache -oppo se -indi es -acceler ate -ml p -ed en -w ann -k ail -akshay kumar -su pt -pol ym -midd leton -extra ordin -wil son -australi an -alumini um -way ne -alum nus -mat ics -gri m -er nie -opp a -competit ors -rand all -h ence -decla res -pre aching -sha he -can e -sustain able -stap les -le dge -ad ena -doctor al -bur gundy -decor ate -ren dered -ri sen -pr ank -di or -bee thoven -flo or -ac com -to t -ho dg -touri sm -say in -objec tive -mar kers -premi ership -en abled -camou fla -gi ant -Ñ ģ -smo key -ric ket -pan g -de pending -s ation -evol ving -inter cep -cen sus -tof the -re en -mendo za -trum pet -marke ters -an it -ðŁĻ Ĭ -north western -v la -foto gra -blackand white -che wan -wi g -tro om -ginger bread -k n -ro mero -n fc -or chi -fun ko -sour ce -f s -ra ped -o st -tar ot -ann ually -ðŁĺ ¬ -r ill -del av -.. !! -se s -can n -medic are -ph el -ape x -guardi an -rema ined -r pm -a ñ -story month -instag ood -neighb our -p ing -sem ite -my stic -as cot -mat er -hand ful -dang ers -ti d -ana heim -opol y -sh allow -nami bia -tor ia -procu rement -big bang -announ cements -prosecu tor -beng als -sal le -en roll -ga stro -sugge stion -ba k -ha ul -budd hism -berni esanders -flu te -fati gue -cyn thia -cho i -ir win -gu a -str ous -h p -ba p -satisf ying -play a -ðŁİ ¼ -inst ap -al ice -t p -irri gation -ðŁĩ¬ðŁĩ § -in tric -clu es -ple x -sa x -he pat -dump ed -signific ance -by u -medic ation -pro v -tough est -corn ish -âŀ ľ -kel ley -u v -si zz -si bling -me st -di stor -diplom atic -aun tie -b hat -son ic -bren da -pump kins -ro ch -black burn -ur ged -shi a -arrange ments -floo d -sa unders -lec turer -nou ri -popul ations -diplom acy -consist ently -ðŁ¤ Ļ -t mund -cauli flower -l ily -vocab ulary -vari eties -coo ker -up town -qu ent -mo sa -re inde -velo city -spru ce -social medi -i ber -volun tary -proce ssed -bal tic -y ang -leban ese -d p -dol ly -arrange ment -y uri -cran berry -kal yan -elev ation -cli ff -pu shes -ìĬ ¤ -sil ic -co wx -eter nity -sla ves -vine gar -glou cester -con tained -breaking news -aga inst -renov ated -norm andy -hero in -ys m -mo ds -gre ek -un di -tren ch -v h -encoura ges -head ache -gr ange -: ' -ever green -Ù Ĭ -reck on -ab used -th ru -cho ice -ti dy -col der -scho ice -ha in -bru m -li ars -bre it -yor ker -sh ack -he idi -micha els -sco pic -fasci st -play ful -ca c -yas ss -sh ad -.. ? -qu en -ram irez -clif ton -pr s -best fan -âģ ł -gener ating -head set -disappo intment -abstr act -bo iled -paren thood -azerbai jan -exhib iting -bom bay -oli vier -ko so -un lea -mat ernity -iz er -si ves -r hu -col l -saskat chewan -fre akin -de k -na g -stab ili -ðŁį ķ -organi zer -bo sses -ar u -u va -at able -ta un -after wards -fert ili -ver ge -az i -mor ph -๠ģภ-jer k -cosme tic -ko w -stru st -ap ache -post cards -for mul -ì ĭ -spin al -jack pot -elec tri -Ã Ń -lo y -gra der -diab lo -ar di -he sit -f w -arch ery -pa sh -the ories -repe al -re live -per cy -âĺ Ĩ -im in -syn chron -sham poo -coup ons -o to -la i -thou ght -luxembour g -mo v -ðŁĺ ¥ -ge mma -se ated -m ga -strat ford -un certainty -shi fts -est o -fo ol -fire arms -cor rie -ki ki -appa rent -p ills -olym pia -fi d -elev ated -de cks -ignor ing -av alan -ro v -whist le -p tsd -milit ants -robo tic -pac ers -quil t -bankrupt cy -lic h -per cussion -celebr ity -al s -( ; -su t -pokemon go -h g -off s -gibr altar -scre ams -billi e -gen ome -mar in -be ams -arch bishop -em in -bedro oms -g ated -ol ly -warran ty -at own -cudd les -gun na -k ic -vi ve -cy mru -nar row -pro b -le o -refe rences -manufac tured -cho pper -brun swick -sem is -don ia -r ye -man o -hur ting -? # -hol li -investig ations -c els -ðŁĵ ŀ -le ster -temp les -sto rey -mc mahon -toi lets -wo of -ï¸ İ -le verage -at om -night mares -victor ious -haun ting -custom er -ag i -yo ongi -mon ty -ver onica -w ur -inti mid -blan kets -volu tion -j m -âĺ İ -am on -jud ith -ðŁĺİ ðŁĺİ -distr acted -dri p -hurric ane -and es -revel ation -tro op -ab leg -col lin -tibet an -wor rying -inter nationally -eat er -camero on -brad or -y uk -ðŁĴĹ ðŁĴĹ -tra k -slo pes -ci er -ne a -ol er -ta ka -albi on -volcan ic -am n -a fi -ob stac -face time -ger ing -n pr -metall ica -organ ic -ðŁĴ ¡ -ki dd -d ances -pemb ro -wash er -m its -om er -emo tionally -tan go -ip o -do cks -scan ning -spec s -tho m -the ology -emer gen -om i -g pa -selec tions -un necessary -ima ge -ter s -induc ed -gi gan -rent als -supp lied -m fa -shan kar -lat er -pa jam -cla ve -Ù ģ -ma hin -carl son -avi an -ano va -kati e -aj ith -design ated -chocol ates -investig ators -gla zed -prin cess -er ry -ra gn -ou rable -hr u -sun dance -peuge ot -steam punk -gh lin -gre ase -hi res -z ap -per ce -j ill -tom e -he hehe -joy ful -mae stro -ni shed -gene alo -v ich -p its -fox es -good man -emer son -lo bes -con verse -o ats -thom son -ra him -mal ware -ah i -man kind -re sin -im g -sw ood -kin der -sc roll -ar a -sak ura -ro bbed -xi on -ny a -c ism -ce dar -be in -mour ning -tor to -heath row -done gal -bar b -hydr ation -k or -elim ination -su pdates -hill s -appe ti -star red -ko m -gw en -dd d -cra y -sc anner -personal ised -seren ity -re design -meta ph -box ed -judg ment -no se -ë ¹ -er ad -ac ne -supp liers -ener getic -v om -as ap -ðŁĶ ¸ -ir vine -hat ch -la ss -ad ren -waff les -accur ately -ici o -itt le -se un -occup y -web cam -thene w -ent es -ga i -j w -accoun table -vis or -ir rit -licen sing -hudder sfield -gen ie -ðŁİ ¾ -atmo spheric -ten sions -spart an -clif ford -ol an -north bound -ame en -cen sor -u el -ster y -$ $ -far rell -hy ster -cl t -se dan -rep lied -descri bing -micro wave -sla b -pro sp -assi sting -ru bio -e than -hh hhh -gu ay -z man -ra ise -roll ing -o e -n ile -ambro se -scar borough -hero ic -coo ks -mor t -chop ra -ðŁĮ · -to b -shav ing -stac ey -dor m -motor sports -wi ki -fol ds -sp iced -stress ful -liter al -fu dge -pe ggy -wa ite -tre sses -se sh -pr ic -ðŁİ ħ -fri ght -r va -mumb ai -po m -tt v -cel lar -tom e -andro id -dor is -tsun ami -tin der -o ec -m wc -dor tmund -no thin -l iti -so u -believe in -at u -kno cks -mag ni -ss sss -ro hit -ine ws -ang i -m andy -ke ttle -intermedi ate -av ant -cur l -endor sed -ori o -ur t -consider ation -wi res -shel ters -b ino -vik ram -imple mented -ly dia -bu k -paro dy -c news -under graduate -canu cks -sam i -polit ically -ro tten -gh z -tex tiles -over load -moder ni -recre ational -fli r -bat on -typo graphy -ov ation -intrigu ing -pilgri mage -al ge -ad ays -tcm party -sp elled -cur ls -boo ze -ste m -ann es -ir ls -spon ge -sho pper -sig nation -bra ss -mi stress -le ah -beg inner -lau derdale -augu st -pre school -ta ping -tai pei -execu tives -b d -rhe tor -esc or -immun o -deeplear ning -stat ues -it us -manu script -ly ric -cor vette -mol ly -la ge -de p -cn bc -le st -je ssi -fi fe -griff ith -oppo sing -ran g -dr ills -respec tful -p ity -d ell -har ding -play boy -blo ke -shut out -k ili -o sp -se attle -bc poli -mis es -journ als -team ing -es ther -fre ddy -Ķ ï¸ı -metr ics -no tre -gar ry -for ty -navi gate -perio ds -bened ic -j id -da w -ance stors -restor ing -con g -aller gy -tit anium -c ence -lean ing -ab bas -v ast -uc f -roof ing -e man -seve rely -vo gue -ve au -in bound -d z -tane ously -stret ching -man chester -dr yer -dav is -kan th -the game -it ted -re tain -el les -conge stion -frat ernity -ol lie -lo ki -fre ely -cho o -pon y -sc ep -tab ly -bal t -rock n -di me -lo gging -ðŁį · -ad u -ha voc -water ford -char is -swee tie -run ning -ner d -erdo gan -z ara -weigh ing -fif ty -pre cise -low ell -kurdi stan -r yo -or th -syn th -lin ers -phenomen on -art illery -il legally -constru ct -nostal gic -gar th -al ta -shel ton -a sean -w ander -dur ban -di versi -bon o -cl on -le man -sh un -obstac les -appet ite -fe eder -respir atory -di xie -formu la -an to -so ber -extin ct -au c -ing les -legitim ate -; ; -min nie -ipsw ich -dram atically -ðŁijı ðŁı¼ -ingh am -milit ary -mon et -us navy -for k -dun no -play er -q otd -st oo -ex or -ethiop ian -film fest -pe red -c ate -sau di -in ner -sin cere -tion ality -ale e -de eds -cooper ative -ir onic -cro cod -br ary -post season -cam per -can ary -e in -exten sions -nb d -sher wood -spo kane -hu mp -jit su -ê ¹ -dar yl -p si -stab bed -offer ings -expe cts -cav al -body building -fr aming -f ca -ye arly -bom bed -sk il -resear ching -jud iciary -gree ted -tu dor -mil o -innov ate -ðŁĺ Ľ -r hs -ru by -contribu tor -fam er -soci ally -m lin -fi ery -ut ter -beau t -it os -de voted -rain bow -bar ney -pe ren -ar jun -r na -gab by -ut i -hann ity -pick le -ser v -qu akes -pp e -fe m -wh itec -j n -victor ies -ðŁ§ ¡ -gol fer -congratul ates -resul ting -mechan ic -ur ve -cen tered -kie v -an s -in cub -< < -c mo -bestfan army -dap h -en ham -on cology -ku sh -t xt -ori ented -fashion able -c sr -sa hara -r ack -pd p -han son -ภĩ -ti ers -ra r -pan am -in sky -sa hi -testam ent -asth ma -in her -fisher ies -or der -ho we -gall on -ep is -suz anne -drow ning -paneli sts -ðŁĺ ² -ë ¦ -al ach -commemor ative -at tribu -ðŁij » -mo o -visi onal -week sary -gu st -ak in -poin te -ee e -di spar -ni pp -dent al -st all -pi an -bor e -ul ster -tic k -ir r -tae hyung -micro phone -bermu da -ga ard -el er -plumb ing -hu gely -âļ« ï¸ı -race way -cam bridge -mar cel -burn ley -to ast -holly wood -fa sting -me red -hib ition -ca pped -benef icial -ow ning -cont amin -arab ian -to on -cap ac -hul u -sm ir -nutri ents -se in -graph s -con ditional -ðŁij ħ -or ac -play in -nor the -tor nad -mar ian -ju mbo -lex i -incredible india -road to -uk one -confu sing -sp h -shan k -pi ed -mq m -positi vely -sher ry -path ways -consi ders -tof u -argu ments -resil ient -che tt -with dra -ter o -ated ly -sw ana -he b -fli ght -har ley -decre ase -kind le -book shop -³ ï¸ı -marty rs -sm ur -mc cl -concer to -sti me -rejo ice -app lau -cle ment -mer kel -jai me -im mortal -isle of -mar co -youtu ber -stal king -me too -st ack -sp ouse -u st -lu v -âļ¾ ï¸ı -eque strian -ev ing -fl in -nick name -the big -as ar -st acks -wal ker -bor a -kidnapp ed -hur ling -humb old -rec alls -co pper -ann is -se o -mer ger -mu ir -ad dy -ðŁĴª ðŁĴª -be x -cr acy -con an -congratul ation -mid st -âĻ ¬ -for bi -op tic -cr ate -crocod ile -mad agas -secur ing -ast on -o gue -savi or -salis bury -love it -fuji film -cast les -as st -ar rows -sp acious -tr s -poly vore -progre ssion -m ri -nel son -bi m -indic ator -o da -pe pe -re signation -gu t -sne aker -log ically -az y -are lla -te aring -jo shi -ssion ism -q pr -mari ah -p x -ble ed -mi an -med ley -we iss -ker ry -gat ory -at al -madi son -av enger -nab y -pl and -gi les -fresh water -d ington -ta j -demonstr ates -n tv -bul bs -sunday morning -pe ake -souven ir -wa h -ton nes -m kt -complex ity -con den -ross i -b ing -y ds -su k -n go -mid land -ol y -life is -ri pple -mo reno -dd ers -tu s -á ĥ -bou l -x a -hol dings -wn y -shadowhun ters -ke i -asp ire -m ous -ow en -so ak -skir ts -moun taine -stor ming -ch rome -ri ots -sar ato -amaz e -less ness -nav ar -crit eria -ra fa -indul ge -ay er -por to -nam o -........ ........ -yi elds -val le -j h -mac ron -sa ins -dur ant -tra ilers -wo t -confeder ate -sh rin -id ol -form ally -ten e -motor cycles -than g -no de -bang er -dal y -p ats -enroll ment -au ctions -at al -ar bor -lo gos -de arest -trans action -dom ingo -fle a -ser mon -de ck -sin cere -questi oning -juli o -was p -pre tz -armen ian -k ham -inflam mation -picture sque -acci dental -film makers -ðŁĺ ļ -ðŁĴ į -ca sey -so b -yee zy -good will -parag ra -ss ly -fe ather -dy ed -assassin ation -na de -b cs -app lies -femin ine -fe u -ext ent -depu ties -l ack -psy chic -go i -kill ings -pse u -ðŁ¤ ª -un c -mar l -tan e -mck enna -sur fer -influ ences -free way -hack ney -mal aria -el and -te au -rema stered -Ø ± -raz or -gg y -cor ro -lak sh -fla ir -honest y -hoor ay -de pp -am c -wedne sdays -q a -ed its -- $ -se villa -dou bled -human ities -c cot -som os -r ine -af a -si oux -re construction -wel ding -th reads -am ish -encoura gement -po der -bo ck -bal m -p tions -stand up -accompli shments -guar ding -convic tion -ac ion -napo leon -depic ting -att ack -su i -wear able -âĸª ï¸ı -pot ter -esc ort -vis e -to ts -bo on -event profs -angu lar -womenshi storymonth -bar row -sch i -ac comp -ti k -l end -kensing ton -wol fe -st acked -cra shing -exhi bit -wing ed -sab rina -ma sa -k ms -alway s -et t -pla sma -counsel ing -pick les -nfl draft -mr s -inev itable -coura geous -staf ford -writers life -ho s -e j -gh yun -trade mark -adri an -influen cer -coron ation -ra ging -explo red -usa f -excep tion -eu x -tan ker -sw ami -pac ket -ðŁij¨ âĢį -f en -she en -a ero -j l -re gal -nw t -au ster -meh ta -char ge -a ste -b ate -inf eld -racec ourse -collap sed -fle ece -z il -al lie -alternati ves -geor ges -ðŁĵ į -quir ky -fc b -nat geo -philanthro py -bra i -every day -ðŁIJ ° -ach ers -ja an -fin es -q i -fisher man -distin ct -gri mes -nation alist -comm ence -ro wn -âĢ ³ -z ing -f ter -hr w -baro que -bl ender -kitt y -hoo ks -c ited -w anda -consen sus -reinde er -an and -supp ly -me ds -v n -ol ph -rat chet -shel don -secur ities -ë°© íĥ -cro m -mosqu ito -j eric -im mac -dimen sions -â ¤ -di ssi -sponge bob -dami en -steven son -jo anne -del ish -yi kes -than x -surve ys -postpon ed -alco holic -al ised -ðŁĻı ðŁı» -do ch -sen tim -mered ith -com pares -b ago -happy days -mo ss -ãħ ĭ -ne c -gn ment -frustr ated -comb in -ri v -ec lec -col lo -compli ment -actor slife -ct to -nic ar -op hon -apar the -man t -ja de -trol ley -optimi zation -eye on -eco logical -qui st -ep he -ॠĩ -cin co -appo ints -old school -c pr -behavi oral -min aj -:- ( -tag ging -ev al -jo aqu -ðŁĺ « -ha k -de me -jama ican -so s -hy att -hand book -libr arian -hanni bal -pump ing -ch om -f man -ga i -hu ll -respon ders -green ville -n us -vau gh -ðŁİī ðŁİī -ta xi -gold berg -man tra -te ase -forbi dden -metho dist -ati vity -* *** -ec t -mc gr -Ħ ëĭ -se b -amid st -disapp ear -thy ro -phili ps -er ina -v icious -stream er -million aire -ma p -str ick -hack athon -gh a -ed ic -mi ka -pe ck -ill i -anto ine -ar ca -op tic -ma ure -ðŁĩ¦ ðŁĩº -cla shes -man ly -âĺ ģ -al var -and res -me i -el m -ww ww -al tered -l te -ê¹ Ģ -mo jo -for rest -thal ai -non t -spee ches -acknow ledge -ign ite -x factor -ðŁ¥ Ĥ -mead ow -disru pt -debu ted -scrim mage -pharmaceu tical -fi dd -found ations -philosop her -et al -publi shers -bo ys -c ke -ru gged -opti mism -re be -phil harmon -nar cis -ral lies -lu is -go blue -fol ded -un acceptable -optim al -li sa -pol aro -+ . -en za -âĿ £ï¸ı -mon opoly -grace ful -dair y -du a -diffic ulty -judge ment -o si -mer sey -flu x -new found -ter ns -dimen sional -in vic -al ba -am it -abudha bi -alger ia -autom obile -the ad -lo tion -acceler ator -vac ant -iti on -lu f -al ic -pl l -bla zing -ba z -sen e -ðŁij ¼ -villa ins -direc tory -eis en -to ck -broch ure -ri pp -hb d -zayn malik -nic he -lo lol -certific ates -mor se -fac up -x ham -un wanted -im ports -carne gie -fan sign -mo u -r alph -destroy er -sw ing -trek king -cili ation -pit bull -g aps -ho well -defin itive -mc le -f ps -et z -bol ly -lyn n -gan o -at ure -fur suit -co il -na v -but ts -tro jans -eu re -en ko -sch umer -horri fic -install ment -br b -subur bs -a bel -vi r -de sh -cun ningham -ðŁIJ » -span n -sch we -ke mp -tr u -ste alth -qu es -le w -deli ghts -ko ch -hu mili -cr iti -il t -sp ells -mi ley -car ic -ðŁį ´ -lc fc -substitu te -oun g -? !! -af fir -predic table -class of -er r -cy press -chand ra -age ing -__ __ -ther land -don caster -el in -yo shi -sail ors -har ris -jo anna -niger ians -h ers -pla gue -pro cra -k no -can ton -busine s -un h -pra kash -c in -bow en -co ating -m als -be gging -smith son -ponti ac -sp ies -dam ian -pl ine -und ant -al ta -one ss -shame less -da q -bb m -wal es -stam pede -ser um -Ù Ĩ -cataly st -x n -ab sc -free zer -ch un -ari os -mc cre -fore head -he ars -damas cus -tac oma -ardu ino -encoun ters -stan ton -lg b -ab as -" .. -ke te -drac ula -ele m -g ne -zepp elin -la brador -pul p -op tional -or n -russi ans -san itation -hil ary -etsym ntt -pen alties -au st -ig ans -olympi an -medic aid -vers ace -va pe -re stra -pe ep -sexi est -st alls -di le -the a -punjab i -pupp y -tuesday motivation -ðŁĵ ļ -the flash -roc ket -mo dest -chihu ahu -on na -k sa -hur dles -ca ve -fail ures -sp lit -bo ho -gur l -disappo int -ho ward -nug get -fran z -stal ert -kaz akh -for getting -sch ri -ag ate -am at -eve rett -du et -veter inary -juli an -ch ills -bra ve -ghost busters -lan do -gre ets -profit able -d é -ti r -ze e -om en -pd x -gray son -har i -fix es -stab bing -swim mer -symb ols -compli ments -po se -func tioning -th nx -gi r -corpor ations -bar low -lo e -off season -distin ctive -marvel ous -nik on -enri que -ky u -ja ws -amo to -lom bar -travel blogger -fa h -ouri sm -tri stan -so e -ce ase -ðŁı ħ -z ac -mck enzie -taxpay ers -swim suit -bl o -les ley -kan sas -w ks -ki el -provo king -my les -str ing -kangar oo -galac tic -fif th -s ke -we ir -ll is -mat ory -ðŁĩ ¿ -un ci -re productive -roo ting -ti des -gad get -.... ...... -alex ander -bow ler -scre w -apo log -eri ka -wal ters -shet ty -lan e -ban ter -as ant -me so -v ain -" "" -us i -fer din -accomp lish -man sfield -bom bar -collabor ating -cla p -it ure -s da -smo ky -na k -im person -car la -com ra -bur gl -lo co -ti es -in hi -trac ey -se is -diss er -rr rr -dra y -prote ct -cor ona -hun ger -ck en -c eli -trou bled -predat ors -fic tional -shav ed -riche st -metab oli -ful ham -gro oming -mono chrome -wa sting -as co -ast e -ti sta -remedi es -ung soo -south end -perman ently -bu mble -procra stin -ident ical -practic ally -ma scul -su ke -assu red -val erie -devi ant -grizz lies -thi er -pur a -ne pal -not ts -bil ateral -spo il -car mel -cine matic -ph l -ni fty -ma o -hypo cri -la ser -pan try -mathemat ical -el isa -coordin ation -bel mont -a it -radi ant -bo iler -man g -f ag -cr c -h ams -br in -â¬ĩ ï¸ı -famil ia -âĿ £ -sab er -ru pert -gg an -rit z -mic h -sal ford -le vi -gra l -ðŁĴ ¤ -n ino -ce d -business man -ul tr -sim ply -compre ssion -pa ins -hal t -ë°©íĥ Ħ -landsc aping -n f -croo ked -er d -itt in -ddle ston -sur passed -ino a -da g -bl en -exten ding -at ing -al gae -ball er -u mar -snoo ker -col lu -flo wn -thu b -ridic ulously -ki sh -op le -di re -as ser -ari sto -sc iss -h ating -trou ble -syl via -suc cul -plo ts -sincere ly -al er -laure ate -br ack -att n -rif les -me to -collec tible -cu omo -conte stant -consist ency -ant z -rang es -abig ail -de b -mini ster -grow ers -an oo -hoo ver -dream er -nu cle -resear ch -mi y -sha hid -ma v -d honi -cin i -do j -hin dus -part ying -dal i -alon so -inform al -clark son -it ton -ki an -cit yo -mor i -la sted -as pen -libr ary -susp ici -qu at -den ial -fol der -ch ori -swee ping -eni x -ðŁį Ĥ -Ø Ń -nas car -handmade hour -mou l -heat wave -em er -exam ine -ib n -gr ind -po v -tion ist -m bo -she ila -integr ate -om es -take away -cer v -con nie -tic ket -ce led -bi en -visu ally -madagas car -sor ry -gu i -park run -tra its -la be -pois oning -à¥ Ģ -vi able -bohemi an -denti stry -bad os -spr outs -mask ed -te ddy -ðŁĺ · -sa f -sa as -ji ang -ti ght -spe aker -withdra wal -bc n -as signed -class rooms -fle ming -ðŁĴ « -super girl -tot als -table top -e books -horizon tal -cra z -flu sh -j ard -c dc -er son -ãħ ł -green wood -ni h -co x -ad a -lit re -go ing -v icky -cur ved -lou ie -gra ins -hy e -lon ge -reme dy -tra inee -san jay -super stars -ma ser -man u -s age -wh l -ðŁĺĤ ðŁĺŃ -ðŁijį ðŁı» -m sd -en z -rab hu -j oo -gh u -ac er -e po -resurrec tion -justice for -bl ended -mo da -avalan che -france sco -re spective -g s -ye ast -wel ch -devo tion -ge tin -athe ism -am ic -carol yn -lo c -ld nont -ave c -us da -le gged -bra very -b lower -cow boy -he h -sti ble -buff al -chann el -run chat -âĺķ ï¸ı -ide ology -best seller -y oo -pe anu -bon ne -fel ic -edi son -fr actu -naren dra -pp ets -seym our -ri viera -he ctor -necess arily -bi anca -soci eties -the best -w g -sent ences -win k -vacc ines -pal ooza -jam ming -as f -mp us -agre ements -ec k -ba c -hon ore -com pul -wild cat -im posed -yo ga -hud son -can celed -l ich -fu zzy -es que -ch uk -w vu -se k -fli pping -r hon -wi shed -wh a -cap ability -len ovo -ìĨĮëħ Ħëĭ -vi vo -tv d -nor a -sil k -pas adena -yo semite -valu ation -clo cks -u ber -mr c -dar kest -au bre -ss o -bell y -wrest lers -kill in -lou der -buck ley -ge el -ad on -un s -appe aling -ðŁij ¯ -semit ism -list ens -fit z -ãĥ³ ãĥ -ny lon -ar ty -seem ingly -hal a -su ited -et y -she ds -mu ffins -ap ric -um ents -u ta -jam mu -chelse afc -star z -yo ko -roo t -clean sing -di ar -pione ering -ihear tradio -dig iti -fin dyour -can o -ðŁĴ İ -z ol -spac ecraft -six ers -moi sturi -b ile -ti sts -hor ton -rang ing -colum bi -mete oro -senti ment -ep l -foo th -text book -drain age -r ly -sc ue -imran khan -ðŁĴ ¸ -margar ita -ed dy -predic ts -gamer gate -advis e -growth hacking -love you -ug and -v f -beng hazi -s later -ne wor -ch el -independence day -p np -cul len -hoo dies -num bered -brit t -t sa -kl tu -s ages -mom o -onep lus -col l -gu ts -w ta -mesm eri -enh ancing -chiro prac -j is -teen agers -m one -constell ation -sweep stakes -e ze -slovak ia -la ye -pear ce -wa ver -po gba -k ron -sur geons -mar x -ti d -gg a -desc end -p ours -upri sing -wal la -sab bath -bachel ore -mack in -k am -peter borough -hor a -ðŁĮŁ ðŁĮŁ -think big -r j -hy drau -sp al -univers it -ðŁı ī -mail online -league of -ten ants -w ally -lan ce -heav ens -dd r -bol ts -am ir -i phone -ci gar -en du -re i -el abor -r inging -john son -characteri stics -sal oon -algori thms -tal kin -m tn -di ve -region als -ff ice -hat i -deviant art -so tto -shir o -l ama -k we -f aded -por ting -tu mmy -est ates -buen os -ðŁ¦ ģ -beli ever -pen etr -dar n -sp ite -can opy -fashi oni -t illa -pet als -eli jah -bra wl -marty r -ë°©íĥĦ ìĨĮëħĦëĭ -mid town -eric h -d apper -sm town -me gam -ww w -le le -on s -cat fish -fir th -fossil friday -ball park -th aw -pot ent -illi e -cre ep -car p -so ap -gun dam -infe c -yy yyy -ठ¨ -z ag -rit t -calcu lator -bo ca -ok o -to ad -threat en -refin ed -olym pic -accompli shment -bacter ial -a ji -tat um -feli z -she ed -j at -th ic -jam al -ðĿ ĺ -lin a -ðŁIJ ¯ -jo king -yot po -pin ch -ak ron -her b -motiv ation -li a -ho stage -cre ek -gam ble -russ ell -patt i -fo tos -c pc -bro ken -back the -cla ys -u mm -stock ton -mat ernal -ü r -la kel -cent ury -be k -infe cted -ภ¡ -smack down -man ned -ta hoe -sm es -bas a -su la -augu sta -. * -rohing ya -gre ed -counsel or -silhou ette -gra vit -cla use -' - -bo bc -occa sions -now adays -dic tat -be ard -n ally -brigh test -kab ul -inc india -dhan ush -archae ological -che ape -mizz ou -d hi -ov ski -bax ter -asse mble -à ¢ -gi gi -ac am -wis ely -haz ard -north ampton -âľĪ ï¸ı -me th -bla sting -re unite -mu lus -ali zes -t read -mil a -ed ward -ko va -pe sto -ðŁij ¶ -vit z -hydrau lic -refurbi shed -mo tel -isab ella -hom me -sever ance -uph ol -mis erable -f ari -lat ter -ef er -crack ers -es l -ac io -yy j -in an -ec b -z ind -pan as -tru cking -re ed -sh aker -burge ss -em pire -ag nes -n ington -art works -fr s -ti le -bi ome -eu n -ch ong -americ ana -god father -go blin -i shi -! ). -temp ted -gen omics -mand ate -ck y -ðŁĴĻ ðŁĴĽ -som ali -br andy -in ven -spoke sperson -pc b -yu an -h g -fa z -starwar s -ro wan -blue grass -don g -d day -trin idad -er ton -ban ning -re tention -cu red -tober fest -re set -we is -deta ched -behindthe scenes -immun ity -ph a -bra y -ðŁij ½ -ran cho -ram say -est onia -nd tv -] . -cab aret -tar o -d v -show cases -plu m -ðŁij ¸ -son oma -pre pa -memor ab -e stu -drive way -u les -magn us -x r -nn n -much as -en ge -stre amed -fore stry -audio book -tro y -reck less -kil om -ru ler -ra k -proce ssion -i ons -po ole -noc tur -wh s -farm house -per a -par me -hypocri sy -s ics -v ant -cas k -holi stic -au st -Ð ¿ -in do -ðŁij© âĢį -di so -disp atch -ol sen -make it -en nis -cent re -ar range -ðŁĮ ¼ -sal ted -ea siest -f ate -reg atta -mo zz -ac an -sin i -g ically -ch ops -chick en -work in -ha gg -invol ve -wee ds -book day -wake up -ky r -michel in -fu ss -re juven -vac ancies -incar cer -m st -sc ents -sovere ign -kick er -à § -bo d -âĢĶ > -sa h -mob il -shrop shire -oph one -dress er -mis suni -hep burn -i mo -foli age -diagno stic -as san -cycl ing -guil t -c sa -puertor ico -win elover -wake field -do ggy -k he -pa pp -co g -al lot -cu ck -poe tic -mi o -re vit -mag ician -ç ¥ -ant enna -west wood -mber g -lux e -oat meal -Ø ¬ -te at -ffe e -sear ches -l ly -plu to -el on -let tering -inno cence -fa i -ann on -telang ana -ma it -neu ral -can ni -ar oma -a stor -fe x -co cac -mon etary -f ent -un sure -' @ -indi rec -teh ran -isol ation -li bs -make up -merce des -ff y -he tero -de o -sco m -cur sed -veteran sday -franken stein -shre ws -de co -ge ese -lefto ver -ha did -vari able -acade mics -carol in -under going -vari ation -na h -ssi er -gamer sunite -pur suing -emer ged -ll ers -control ling -ro aring -mete or -vol t -daw gs -be aver -is life -bathro oms -aci onal -pre vent -lake district -in als -y ani -gra bbing -sac ks -le z -sw ay -k ool -time s -klo pp -la de -con cord -resul ted -revi ve -recon ciliation -ol and -az z -gir o -mand arin -de en -nutriti onal -is coming -van i -aw www -der ived -love your -stop the -shou ting -nov ak -ðŁĻĮ ðŁı¾ -lo af -displa ying -sunday with -ma guire -ch eri -ðŁı Ł -re match -qu ic -Ú © -y in -ðŁĺ ¹ -ili ve -z ip -our ke -down loads -sw at -missi ss -care rs -t ment -proper ty -hahahaha haha -gi bbs -sur rey -ar ise -tic ism -sti a -ir ling -fro g -co se -bas sist -fore ig -lea u -pil lows -hol la -eli e -disclo sure -peanu ts -inte ch -ww c -plun ge -trium ph -cor i -sli ppers -ðŁĻı ðŁĻı -neutr ality -ma re -hair y -gang ster -hu mming -cust ard -mer lin -ale a -s by -dam p -mo han -ver bal -j st -gu tted -b jor -un finished -ðŁĩ¯ðŁĩ µ -un happy -âļ« ï¸ı -by pass -at su -fis cher -sa v -afric ans -re use -mid way -demo lished -ger rard -her cules -Ä Ł -medic ines -cl icking -sur round -jo ong -wav ing -tri bes -wet lands -offici el -argu ing -l le -do va -su zy -club house -ne gro -ob tain -ga o -gl ance -assi st -ch os -ãĤ ¢ -âĺ ķ -adri d -occur s -st ans -par don -livel i -emplo yed -re visit -ff xiv -bb le -ne aring -min er -ðŁĺ ¹ -giov anni -up to -mar vell -mar se -to wels -cb n -engine ered -y elling -spart an -si ans -ðŁĻĮ ðŁı¼ -se v -coyo te -sta di -t cm -app en -shenan igans -open access -so aked -ma squ -le vine -stro kes -l k -aparthe id -hipho p -char don -may may -ha asan -stri pped -fr o -scri ption -f ton -h f -pri sons -marsh al -ķ ãĤ -an cho -com promise -classi fication -buzz feed -bblo ggers -deser ving -) / -s way -ob o -camp ers -poder nfamily -p oured -bri e -squir rels -se ize -: # -le k -ti mb -st acy -nas daq -repe atedly -br at -mi ghty -competit or -mah one -de si -o ke -bm w -shi e -f cb -cheape st -minim alist -par amount -n ate -har as -insan ity -lat eral -ment ality -mo zam -ta pped -yad av -u sp -b way -the od -bil t -ra ids -em press -adap ted -pat ron -nut shell -ag ra -be aded -sundaywith marsha -vi king -proce ed -main tained -thinkbig sundaywithmarsha -sn es -mus ica -to wer -ch ab -bo k -sm t -insul t -harve sting -windo w -ru ther -be ige -dec al -indic ate -ma iling -ri ft -po le -ander son -ch oral -sp ride -l ili -ev elyn -imrankhan pti -.... " -ke red -un dp -water falls -se ars -le mans -world series -ri el -ani e -app ar -score rs -lam p -a than -phys icians -qu inoa -refu sing -vu itton -unle ash -s la -pat i -shou ts -inten tions -fo amed -europe an -neighbor hoods -me er -man son -du h -br at -con es -bow l -kazakh stan -ठ¿ -in appropriate -del hi -ketch up -ful ton -s ys -consul t -gar field -to go -f ml -f led -b ds -facilit ate -ree bok -selfi e -elev ate -activ ate -bi ble -ca wx -b ys -cam ille -sy ou -sk ool -her t -w bc -ple dges -recor der -po sh -ac re -so aking -mat il -v sco -shoot ings -pla r -e con -ðŁĻĮ ðŁı» -rashi d -u bi -ðŁ¤ ¤ -sw inging -wi pe -rap tor -m su -music video -dur ham -at tic -apar ty -fe tus -activ ation -aa z -motiv ate -ðŁĴķ ðŁĴķðŁĴķ -j al -ठ® -ag on -sche er -stal ker -fo ster -az zo -tele gram -vi gor -s laugh -screen shots -entrepre neu -kri stin -inten tion -ch illi -fr action -don a -ge a -tc u -s ite -la k -em il -d nt -bor o -wil kinson -re cu -ato day -t anya -bl anco -cd n -brilli antly -g cc -ac c -evacu ated -ther ine -den ny -cait lin -she pard -pou ch -hand held -sou theastern -ha a -à ´ -re solutions -led ger -sr in -r ar -shat tered -chim ney -im with -mete or -hand led -ra ke -town send -en han -shi py -duc t -tw x -inflam matory -war hammer -theat rical -gro s -sk ar -sco tty -ni el -tit o -tin i -conne ction -_ . -goldeng lobes -sha q -ðŁı ³ï¸ı -hall way -fron ts -effec tiveness -gla ston -d hs -ex pi -to h -c pl -sc s -re o -ha g -resemb lance -hor an -abu sive -qu er -virtu e -cho lester -a q -shan e -m ce -carri ers -di stress -re wind - ¡ -voo doo -int act -ann o -ðŁĺ ¤ -pi led -adi a -ãĥ ³ -en ow -di gs -light ly -goo fy -turb ine -governor s -con te -re open -pa h -i ve -cra fting -swee ps -jo di -an de -zu cker -kaw aii -o ko -v ai -out line -kri sti -ts n -insp o -qu int -fil thy -lyn ne -listen ers -depar ting -or d -t weed -, & -ale k -sel fish -nor ther -recogni zes -i ps -be s -a ed -w ills -pe at -surround ings -mon uments -ais le -be cker -la v -quant ity -v ah -helicop ters -tu cked -alv arez -sha pe -o bey -ad diti -road side -m ite -bl ers -ep age -j au -ignor ant -b ins -lu lu -x o -c fo -ee eee -apprentice ship -shef fiel -to i -ho k -faken ews -deplo y -aid an -husk ers -ãĢ İ -west brook -mi ster -confi gur -car r -fic a -proceed ings -ha w -ste ak -mur derer -pay day -a jo -p vc -don ates -bi af -nom nom -be it -k ali -x rp -ahmed abad -se mic -che y -x tra -an twer -head lining -squ ares -roun ded -flu ore -bol d -disa sters -am oo -gener ic -cran es -brief ly -gi g -auster ity -anticip ation -for ti -treas urer -cann y -ce cil -dete cted -check list -ภ§ -pam ela -bar bados -an field -hear ty -tx lege -peren ni -arro g -ing ram -âĹ ı -ty ne -spo on -r ation -am ba -m be -cam el -h hs -york shire -reflec tive -fre aks -to k -ju do -partic les -du bs -ban jo -accred itation -prover bs -over dose -inte gral -gu ang -mc s -super car -af b -al vin -ail s -x tre -st aging -tw ent -rabb its -mar o -inste m -dol l -cr ay -sant ana -ble ach -mini ons -che ap -man t -di vers -catal onia -lo is -mat ri -cou gar -kay ak -e gre -p so -a ia -å ® -char lton -tr acked -sc ari -pe tt -f wd -x in -gra vel -br ic -bigg boss -ar den -hu gging -pal ms -st v -li mb -the movie -handic ap -ri me -z ai -stu b -indi a -lithu ania -rhy th -p ita -maced onia -high ered -brid get -schwar z -ske let -hi kes -ant arctic -c ps -mash up -Ð ° -n ell -chand ra -he ir -an us -sher idan -mi mi -muse u -bec ca -an ir -bar rie -dioce se -compar able -ðŁı³ï¸ı âĢį -yuk on -me p -hor mon -mer ic -al f -con quered -christ church -ðŁĴĻ ðŁĴĻ -hazard ous -poo h -cont ing -retro spective -par ame -na ir -con sor -ho tra -astoni shing -cater pillar -u man -ti sm -t vs -serv ic -croy don -mor ales -c g -cu m -te ur -scan ada -s all -magno lia -el ise -th our -à® ¿ -ag omez -phel ps -ë°©íĥĦìĨĮëħĦëĭ ¨ -wh os -weav ing -si sd -pro poses -cro ws -pre sale -econom ies -bernar do -sha hid -air show -mc cann -hor ticul -nr l -du el -mongo lia -tou lou -requi rement -struc tured -ed i -o lives -he a -cu ter -Ð º -enthusi ast -harri et -domin ion -sub mer -ðŁį ĥ -sa ab -nes burg -mo ff -def ended -bur t -rewar ded -gold man -op tics -khali d -house holds -buc kets -ce cil -che ss -substan tial -ef l -oper ation -evalu ate -st n -rece ssion -l ll -tom as -tru ths -ak bar -s words -p act -embarra ss -ha o -ay urve -scrip ture -ny cc -op t -di ameter -sc ented -organi zers -re lat -ha e -dream ers -de se -ðŁĮ » -restric ted -n ale -r hp -dol an -mun ster -ha ired -consult ants -jo ints -hu mil -d ill -relent less -t é -af il -ut ilities -japan ese -condem n -pet ite -colli de -q f -peach es -cou rier -l ore -âĺİ ï¸ı -reli ability -ch uk -ðŁĻ ĥ -stu res -ge ther -ho stel -bi er -- _- -â ĩ -e ze -ta ilo -di ent -blu ff -chu ffed -pil ip -mon arch -e em -bu chan -b ick -op au -ku ps -ภ¢ -pist ons -sp ins -m and -ce st -bur ne -v ile -cher ries -bec kett -need les -pan ch -ë Ĥ -haha h -trou bles -insi sts -do you -g mc -mor tar -deleg ate -in n -g anda -sin atra -ठ¤ -spee ding -pu pil -pre mises -ali gnment -pi kach -as us -j alan -Ø µ -lime stone -fol kl -parme san -ce il -mo y -shawn mendes -ac up -hu st -ot es -med ina -ma di -gta v -censor ship -ar g -swe eney -sy kes -col o -foot steps -cann ed -adv ance -gta online -healthy living -ðŁį ¾ -a ig -p ality -oc s -he brew -im minent -berk shire -jeremi ah -out going -bak er -entr ata -ma ids -gro ves -bo c -a del -m fw -con science -arm ys -nut ella -conte stalert -novel ist -la h -ban ker -marque z -ðŁı ¡ -to ff -out age -gr p -ðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ -musc le -du dley -nvi dia -mi di -m uni -ess ays -dat ac -car ter -ภ£ -t ans -i ves -public ations -al er -ok wx -il u -cu tt -har p -out law -luther an -br ill -bo lic -do well -green land -be sties -path i -pay ton -gue st -har den -ðŁ¤ © -ann ed -evacu ation -po ised -mc der -b han -o i -envel ope -ci d -ca vi -ta pas -book review -grey hound -âĻ ª -fe ud -lun gs -for te -rai der -ff er -oni x -dep end -yn wa -rel ating -de vs -ðŁĴ IJ -acqui res -d ha -j yo -priv ati -can ine -k b -cra b -sar din -imag ining -k j -em por -down hill -ne z -ta eyeon -nick imin -gb p -à µ -w ap -sec co -ma shed -ðŁĴ¥ ðŁĴ¥ -augu stine -diss ol -dic tator -â ĵ -vi per -ed fringe -vau x -hard work -book let -no x -chi ff -ðŁĴ ¨ -observ ations -xbox one -u sher -ke er -lu p -dal las -cal gary -ma dra -di ous -k bs -wood ward -hero ine -lu mber -sea world -o ws -mc ke -maver ick -gu la -cross roads -fan g -s ade -nik ol -chee tah -me c -pp g -er ick -ðŁİ µ -tox ic -bj j -viol a -sp ire -ch ino -tra vis -institu tional -ha as -low ry -w ac -ea e -hu mid -mp ton -ru ck -je w -c ine -zim mer -se f -bhar at -fre es -aam ir -ðŁĴ ħ -z inc -wan e -multi player -royal wedding -e el -preci pit -qu ery -kimber ly -isa bel -ful fill -ig an -vau l -pan e -sc y -dig it -gun n -u tah -dog day -fi on -xia omi -da c -el ast -cha vez -ro blo -g ine -ten th -ab h -ke to -hur dle -na dia -memorab ilia -ha bs -qu an -h w -hv ac -pix ar -ec cle -kram er -accu ses -ðŁĴļ ðŁĴļ -per se -mean time -wa hl -atle tico -âĢ¢âĢ¢ âĢ¢âĢ¢ -ott oman -no vo -k us -conne cted -tru sts -d mv -spen cer -rahu lg -do ve -sto kes -bolog na -enthusi asts -à ª -rockstar games -ted cruz -du ras -s acked -late x -immer sive -cer t -lu cin -princi pals -fa res -sa ils -far n -am ent -saf fron -quent in -check point -fer ris -ex cur -ðŁijī ðŁı¼ -bai ley -se h -ter re -mad am -s band -wan derers -cumber batch -yy c -digit ally -blackandwhite photography -roll in -moroc can -ðŁĮ ħ -din ner -d well -to om -m ye -ez ra -cp fc -war hol -me er -jon ah -no aa -s gate -so on -secu lar -g ating -ti o -dri ver -si ssy -assan ge -ta th -ed mund -bobc ats -ra ji -po stage -stu ds -m gm -kat o -edin burgh -meet the -shir t -fa a -mens fashion -sp reads -wi m -car ts -phoe be -j ars -bot swana -Ù Ĥ -ed war -sk ar -ri ve -gu sty -c tv -ferdin and -su therland -nickimin aj -k v -si us -bee ch -re z -desi res -on ial -camp o -quar ry -lor raine -gil more -ig gy -µ ï¸ı -ho pping -avi z -ðŁĮ º -uni sex -dedic ate -att itudes -ste er -jun kie -rail way -y b -whi sper -key an -k us -ju g -di x -a ins -sum mon -ov ich -sy ed -her ald -ma ison -me ded -wild flower -main land -ri sky -ru kh -over looked -ki c -destro ys -nam an -ki p -z ano -champion sleague -ban dit -quin cy -smi le -cal vin -open ings -ta pp -ol ulu -spec tro -accred ited -ap k -pra ised -bar nett -pol len -premi ered -selen agomez -tou red -screen ings -uu u -mis o -en se -adam lambert -guel ph -har yana -hu tto -le ar -l tc -po ached -brex it -æ Ŀ -tt c -pa vement -mon gers -ro e -ad ers -ling ton -particip ant -ca red -ga il -y ates -lan tic -dash board -jo o -feli pe -ssi onist -bu m -s end -a eri -thu gs -luci fer -a he -dete ctor -fil ly -gas oline -ham per -hump day -the ta -the band -fore casts -o hhh -lo bb -hol l -cp u -az u -ad ar -hai ley -bu b -car t -quo ted -an archy -pan cre -twit art -al den -st ash -the less -or ni -belie bers -mor mon -partic le -avi ation -⬠Ĩ -webcam toy -sad dened -cru is -ham let -n ct -roll ins -marque e -saw yer -reli ance -a ura -di ec -soo thing -sig nings -ak is -à ³ -at kins -aer op -ðŁĮ ¿ -y ab -sh ari -con nol -du bbed -manufac ture -convin cing -feelthe bern -ra u -pu lit -on ec -gem stone -ur ging -bag u -ga h -aci ds -fi anc -zodi ac -sn oop -her rera -initi ated -ven ge -profess ors -pro di -stron ger -e mission -bb a -hal le -ta pp -haw an -wh im -compe ted -myr tle -ir port -cold play -ach e -ske p -m son -ss ic -calli graphy -swim mers -me y -pp c -thri ft -po c -re places -commu ter -âģ¦ âģ¦@ -go ers -lo gue -para dig -bas kets -sensiti vity -joh an -atl antis -& & -suit case -anxi ous -l h -str i -gal loway -stre ad -war den -gr ounded -ffici ency -li feat -reli c -disgu ise -island ers -f cofficial -classical music -b mc -en field -bi que -oak ley -bat man -sla ying -ner ves -mul tit -calci um -projec tor -scott sdale -ant ino -gri ps -kim mel -des mond -prote stors -hi atus -metaboli sm -conclu ded -press er -ti pping -sli de -e to -hun ting -aus open -ri k -pp ery -innov ators -pitch ers -ag ger -fun gi -z ad -proli fic -rockn roll -bl ames -ct ar -stam ford -q ad -mozz arella -insan ely -den ver -ph ouse -nom ad -ï ¿ -s ris -pro du -hen ley -pag an -am trak -ru bi -in cl -tu tor -sco tia -wo es -sing apo -fun nel -turn bull -know ledge -gri mm -real madrid -we are -missi les -con sol -emo jis -sne ak -smi ths -ru iz -br ou -i el -ha ver -ðŁĮ ļ -kin gof -basil ica -circul ation -prin ters -ta pping -ri dley -dra gged -ha j -writ er -fundament als -personal ities -me tre -stereo types -bur le -best of -n ffc -ha th -mini stries -a ali -trac ing -pav ed -ł ï¸ı -g ic -insp ire -tu g -ha re -repe ated -ex pon -lol li -rho de -pre cin -install ations -instag ram -az ar -i es -sole ly -du kes -mission ary -van guard -fursuit friday -on d -pol ari -ma st -har an -jos é -jack ed -ec oun -al ities -ne ph -ra vel -moder ated -sco w -s fb -uru guay -as o -ni g -au du -p ints -lat ina -ben z -m itting -char ted -mat ology -cit ro -biop ic -ðŁij Ń -djo kovic -fox y -agu il -so to -an ada -sin king -sc rap -hair s -bethan y -fact friday -ðŁIJ IJ -unlea shed -) ( -contra dic -ram on -coast line -y ong -sn sd -li gan -p ome -mit age -ge tt -wat i -ri sk -so aring -bru sh -f pl -av an -å Ĩ -lar son -sh ear -mul til -blu r -multi media -chun ky -par i -n ani -weir d -cholester ol -char les -dream ed -tan ning -puzz les -fr am -hand ball -ch ag -beli ze -al u -bang s -Ñ Ħ -detec tives -mc g -ish q -bo thered -saf c -mp ing -ten eri -g ays -sail or -an gi -mul ticul -gue ssed -ros é -high ways -bro om -chatt anoo -- ' -see ker -on ed -at f -lu c -> < -bar i -per cep -jewel ry -as ph -sor row -sl ing -mam moth -jac kie -ë § -wilt shire -sa o -can cell -im paired -tor ial -bre ed -guy en -jud ice -tit le -pro spective -applic ants -ðŁį Ĭ -epis cop -e id -b yo -stock ings -ðŁĴĥ ðŁĴĥ -ll p -sna g -keep it -l ough -ol son -matur ity -!! !" -cop ter -i sha -bl i -wil mington -tr youts -th ai -ðŁ¥ ³ -pe bble -kra ft -f p - º -ssi vely -li vin -contest ants -tex tures -jo an -h dr -film festival -prov ence -wi do -op end -c si -sto wn -cro ati -ad just -host ile -analy sts -il an -cu ppa -bru m -newfound land -good win -me tt -mall orca -plu gs -bu k -bb hutto -wrest le -sa ire -sho pped -for za -le head -vi vo -ba st -ro xy -reg is -hard working -hon olulu -desp air -young sters -ni g -impro mp -roll tide -de emed -tre ason -ru shed -for ged -ff f -pikach u -bri ggs -do it -ac cent -la us -gla ze -compet ent -a ho -photo g -mid field -le go -har vard -min orities -re illy -slic ed -once upon -initi ally -financi ally -landscape photography -har dro -qu o -mm ers -par kinson -smu gg -read iness -bru tally -glou cester -mp ed -bbhutto zardari -mur der -ye d -dat aviz -sr t -dow ning -bi ans -m ü -fle ck -fli pped -s ly -brilli ance -ri m -k um -bubb a -ko i -knit ted -sor g -ma is -ðŁĮ ² -ti ss -su stain -sen su -ak han -zi est -exam ines -chardon nay -user name -short list -re bs -on o -dar ing -hard wood -che que -righte ous -light ening -dir k -shra dd -du ra -down stairs -sh al -ami gos -ru ff -s law -ri es -red nation -man us -ðŁĩ§ ðŁĩ· -distin ction -u bun -dur an -mi gra -thi ans -la ver -domest ic -k x -jaz zy -justi fy -belong ing -insul ation -color stv -drun ken -chann eling -qu and -xi ii -enligh ten -kan o -fati ma -teen choice -terri fied -p ba -as ley -met museum -dun e -pack er -ki o -ðŁĴľ ðŁĴľ -bo iler -fas cism -ar mored -back grounds -in mates -embarra ssed -defin es -th d -we go -silic one -lo on -el ding -bor rowed -he mp -ak sh -kaw asaki -br y -de af -kill er -dispo sal -ðŁĩ ° -glaston bury -un covered -o xide -po ff -d ant -k j -ku ro -dri zzle -peop les -fe e -pro pri -dd lovato -pi ggy -ot is -aller gies -u bis -pengu in -ser a -vi z -prosp erous -ici des -tornad oes -sene gal -web cast -sto red -enchan ted -bb cone -bay area -entrepreneu rial -rednation rising -experim enting -ang an -lot to -they re -por e -er p -seren e -east wood -bro kers -bar ge -stal lion -timber lake -tailo red -dy stop -b ate -lat ors -di xit -bran son -dynam o -ky lie -shame ful -bt wn -spring time -mix ture -s ounded -lu ton -dad es -mal a -op ra -en ic -rahulg andhi -se wer -~~ ~~ -ky u -nor theastern -ca er -bc u -nir vana -kitch ens -ous y -al m -river dale -hid den -fl int -sp d -pat rons -katy perry -au gh -exhib itions -sm c -shu ts -at ore -da in -some thing -ber th -bo g -por ter -gen to -con cussion -ang lic -ro we -gr illing -scar lett -master ing -mor nin -comm ented -si me -si zing -christ y -ce os -st m -at ry -tari ffs -vac ation -pre judice -p su -paren tal -far age -can a -cap com -koso vo -you re -men stru -stal in -grape fruit -br an -che sa -dav en -exc el -!! ) -๠Į -distribu tor -ce a -bride sma -millenni al -wa in -ob serving -mis ery -plan etary -expo sing -bra ised -comp ton -don gha -q l -spring steen -th ul -syl ve -cab o -pal ad -niel sen -gaz ing -ba ja -r oud -orchi ds -johan nesburg -se man -d ji -oper ative -affe ction -eclec tic -at c -mut ant -aw x -nic e -mel bourne -indu lg -tu lip -dias pora -wel p -big gie -mississ auga -retri ever -or an -tam my -c ta -hipp o -seas oned -ger mans -eng v -marvell ous -im f -rela ys -mon tan -maur iti -me ister -as surance -reig ning -su fficient -han e -no thing -pos se -nav y -in love -brigh ton -en qu -ch ung -sweat y -es c -cal ed -man s -nicar agua -sl ices -mo cha -washington post -bb n -dam ned -grow ing -en burg -lo an -me s -wh oops -believ ers -spi el -vo daf -l at -s led -cricke ter -brown e -golf ers -bar ra -wat chers -lu igi -sw amy -mom s -pit ched -san tor -cr s -si re -sc amp -bo de -ste war -jon ny -ent ity -pac qui -mind ful -min india -bear ded -temp t -scorpi on -eat on -authori zed -ar to -s vp -op athy -cch ini -house music -disney world -âĢĶ @ -pro pose -di y -expen se -ten g -pupp ets -sm el -d aca -per ry -fin n -boo sting -lefto vers -cou gs -satell ites -man y -az e -g ong -fi e -metho do -fer ries -ðŁ¤Ķ ðŁ¤Ķ -explore rs -load er -attrac ted -il ton -godd amn -pi azza -doc tr -sav ing -paragra ph -visu alization -may ors -work flow -ack les -ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ -ठ¸ -twer k -clu t -lo ver -te ases -si an -o te -deter ior -accor d -l fw -swar ovski -nat al -tra ps -k ina -analy ze -laye red -bever ages -un it -ran som -pe shaw -dest ined -astro logy -si pping -miley cyrus -cam ino -marshmal low -bli ss -out back -fa q -int oler -humil ity -po ppin -hallo ween -mon tene -op hy -nu n -tattoo ed -a as -ðŁĮ ³ -dale y -qual ity -du sa -fisher men -swi f -ter rac -st au -le in -trol ling -ship ment -garden er -march madness -head band -gr t -bur nett -w and -!!!! !!!!! -gh e -du x -hu d -war ner -ðŁĩ ¦ -ex ile -rescu e -rat a -d han -duc ati -dro wn -bl ends -spi e -alli gator -simul taneously -broo ke -u ke -k har -comm union -ri ka -ford fc -chin atown -you rown -me y -can al -syste matic -de pri -ox ford -an il -w ut -equ ation -be z -fle ur -the good -lang ley -ad ity -ed ith -al fie -о ÑĤ -en cry -br ill -ex emp -ce sar -mb ling -ab ri -sc icom -j ing -school ing -mi ka -mechan isms -impromp tu -rhe a -moo re -crime a -be sto -wri ght -el ders -ro ds -kam al -folkl ore -be et -mini on -reli eve -thr o -team usa -pas cal -made with -boli via -itt i -free bies -desi red -best selling -l iness -la den -ke ane -mi sts -hipp ie -atta chment -@ / -se w -flan agan -âĿĹ ï¸ı -supre mac -stl cards -si as -q u -rh ys -ste ep -val leys -v w -pav ing -disp at -al ison -por te -id u -new sc -soc ket -mo s -co star -re vo -prote ins -stanley cup -m cal -ear ring -se cs -mc lean -cap ric -nick elo -ad en -v c -shou se -adap tive -maxi mize -entertain er -pro se -gri ffi -six teen -lam ar -mi rage -saudi arabia -awe ather -ru st -in filtr -fashion week -ðŁĺĬðŁĺĬ ðŁĺĬ -selec tive -bubb le -a den -fen nel -deci sive -m ta -mock ing -mb les -st amp -mu le -bernar do -gr in -po tt -j ingle -vet tel -colom bian -cam o -motivation monday -ba han -p ly -dh ary -k ami -x men -sleep er -gar a -my sti -confi dential -conflic ts -p neu -ce s -insur tech -clean se -me rely -va is -tu x -the great -shar on -ma j -hol a -eco systems -aj ay -aa j -hu sh -har mon -backto school -wiki leaks -reflec ted -ðŁĺ ĵ -commemor ating -ac et -buck ingham -messi ah -tu ous -hor net -to be -d q -he ine -mi g -pl ate -nichol son -sp ie -cumber land -nor mal -pho bia -happy halloween -city fc -mc el -gilli an -ke to -lu de -de mise -su ga -str ate -mcgr ath -visit scotland -foo led -cb r -gc se -col ori -po td -missuni verse -fin ances -ma poli -for ks -Ø ´ -cann on -medic inal -ðŁĹ ĵ -kh o -wre ck -pan to -bag el -gu ll -syndic ate -ic y -pr c -ki en -zi ka -ti sh -pe ta -c co -li za -ch ut -ex traction -el g -gl i -fu eled -pos it -respec tively -leice ster -br ink -vulner ability -im ported -e sha -ðŁ¦ ħ -r ural -re ll -gam ing -atlan tic -aband on -no ah -re solved -pro state -aller gic -ps d -âĺ ¹ -dun geon -fang irl -illumin ated -m hs -white sox -d ently -ck o -endor se -over ly -dazz ling -prior iti -night life -ut il -be have -flam en -east bound -ðŁĴ Ł -ilove you -gov uk -mozam bique -alle gi -dr i -testim onial -ath s -ì§ Ģ -mm y -shab by -pro secco -friend ships -cal am -dam ages -off set -jura ssic -jun o -arre ll -ðŁĴ © -interven tions -dare devil -car ver -run away -ran e -truste es -ha ute -dep ths -ðŁİ Ń -me in -sacrific es -con cier -ne sting -i zzy -me tam -ilove my -ur ine -du lu -mal hotra -ve ins -night ly -co at -an di -he witt -lon el -ci ble -wr ite -jen nie -sant ac -ĸ ï¸ı -str ato -singapo re -sop rano -kri sten -cheer ful -flee twood -fa iri -m eli -wa st -tur nt -sfor sale -sc rolling -angel ina -ren dition -jeric ho -nick y -or b -fla vo -patri ot -ash eville -sick ness -re fund -aggre ssion -b pl -ãĥ ĥ -elu sive -thi story -hang er -bu ffs -vil las -at kinson -sp h -ja it -decl ined -wo k -supre macy -oo tball -ey ang -ðŁİ ĵ -s ford -ath i -consu me -road ster -e so -u pro -reci pe -au f -uc i -ar on -oo oh -cs go -re ich -mc d -min ute -ladi es -pun k -rut gers -mee k -ariz on -ta j -land lord -de gra -autu mn -lyn x -us f -b hi -fairy tale -dongha e -bet sy -explo ded -chen nai -op a -pro tag -br ant -ðŁĵ °: -g f -pal li -ðŁı¼ âĢįâĻĢï¸ı -su t -ill ini -colum nist -shir tless -de centr -sear ched -ec or -bu ggy -s ack -ðŁĺĤ ðŁĺŃ -de t -ther i -or naments -bring back -to v -quarter finals -ic he -con stra -gi er -buchan an -vi x -kay aking -mu stread -swal low -mel b -sc af -op al -may oral -har at -ðŁ¦ ĭ -schedu les -id f -ha gue -ro z -a ah -d mc -du plic -ca che -orph an -frac ture -rec on -ch av -bun nies -al ain -mustaf a -ðŁİ Ļ -vac ations -dynam ite -tex ted -broad caster -ðŁĴ £ -ste amed -rock er -di etary -luxury travel -inaugur ated -sa wards -vaugh n -lincoln shire -click ed -kra ja -f anc -remo ves -layo ffs -mc far -bre eds -win nie -jon ghyun -incen tive -vari ations -pat ton -atur day -persist ent -pr un -pi ers -dal es -æ ĸ -breast feeding -r ance -ta wa -Ĥ âĸ -mur doch -cap tive -thi stle -nic a -commod ity -cou ldnt -board walk -graci ous -practiti oners -n gc -scru m -ner o -camoufla ge -col on -he i -phys icist -saturday morning -ten er -si won -colum ns -bru ne -y vr -ba ir -reti res -hal am -cab er -shaz am -min u -cas cade -milk shake -gri d -d ren -vin cent -so dium -plat ter -cheer leader -chen ko -y ak -elimin ated -ty po -y man -re think -âĿ Ĺ -ts ville -bernardo kath -ex tr -ðŁĺģ ðŁĺģðŁĺģ -ta o -re per -mo ths -em powered -c iting -transpor ted -mon ks -san at -cle ars -bachelore tte -camp bell -racha el -har le -hand ler -climb s -inter ference -rele ase -sh and -r bs -hr h -ãģ ª -val le -r é -sli me -w akes -chu bby -slo an -el ves -ath en -attor neys -micro scope -ston er -sc aling -o be -c out -se man -mid week -bal sam -ðŁĺį âĿ¤ -ti ful -v ish -lo tta -ri pping -re mn -ti re -le ap -ha vent -la by -hi mach -whisp ers -we in -ðŁİ ¸ -wild flowers -se le -u cc -li ability -az ine -sw ings -k ya -ta ir -re main -e do -flo ps -poc ket -grand ad -exam iner -gr is -ffe ct -ðŁijĬ ðŁı» -stud ded -heart beat -de acon -firm ly -infec tious -ste f -out lines -le asing -cla ws -sen se -tab s -hoo t -mo sul -spa wn -co a -hog warts -ve in -alban ia -manu el -b ino -vaux hall -scot land -go bucks -mat ty -phy sio -tor ino -const able -investig ated -s lower -mistak en -bay er -wild fires -vo ic -x on -time to -chas sis -bar ric -pi on -bald head -woo k -regi str -dra fts -b hs -li gue -l ick -staf fordshire -baf ta -dar ry -je anne -ven ding -cor p -⼠³ï¸ı -kid dos -fen way -ca o -west bound -ðŁĺ Ļ -dv r -quick er -bla h -goo die -ðŁĴĭ ðŁĴĭ -vo x -esp er -fac ade -cor relation -red bull -rou p -decl ining -chi ve -mc gee -tur o -in der -f eller -fu g -il ysm -mar di -peshaw ar -ki eran -ine ma -meat balls -pe ck -depre ssing -sen sing -gi z -dd ington -spring watch -ro aming -yellow stone -horse shoe -am man -week day -ol or -ðŁ¥ ° -boo sts -spr int -scar ves -je e -bee tro -cl an -all the -ìĦ ¸ë -enlighten ment -ado be -re generation -? @ -cont ag -yach ts -to u -mor a -en voy -r ani -go li -dhanush kraja -wood working -streng ths -se di -disc s -ar ina -sc on -lit e -ano ther -ðŁ¥ Ĭ -ye men -gu ern -sav vy -lo yed -biom ed -heart break -comra des -milli e -pat ch -un f -jar vis -bl aming -commemor ation -ge y -å ¥ -cardio vascular -alig ned -docu ment -. ? -aesthe tics -em u -the irs -le h -ps ic -si f -pl ateau -ex pend -domin ating -rob es -mauriti us -excep tionally -hom er -discover ies -bra un -ten nant -insul in -ðŁİ ® -car bs -te as -? !" -zi e -franco is -brow sing -th ol -cla rence -hel per -ob tained -cas sie -le es -! , -pome gran -hu bs -presti ge -] [ -mach er -bott led -pun ch -pi pe -o ch -gall ons -deliver ies -u ra -un day -mon de -depic ts -re gency -outra geous -khal ed -car o -he arti -za g -develop mental -over coming -stati stical -flavo red -for ds -cre atives -lau rence -di as -sun screen -in ked -pre acher -n ul -impac ting -auti stic -âļ Ķï¸ı -o ss -pel icans -cele ste -v b -ru mp -mc gra -fair fax -hu mor -bbc news -row ling -cal der -seam less -ag ne -p ti -mix ed -t shirts -mer ci -b tob -women instem -genealo gy -pre ven -l our -cra dle -gi use -Ð ¾ -chron o -fair ness -chocol ate -tor y -as da -pre scott -stret ched -al man -u il -re charge -in tre -ob st -hosp ital -hay ward -teneri fe -fried man -vap ing -confe ssions -ye ah -bal li -luck now -cor pse -sculp tor -amp ton -t pp -indic ates -sur plus -tru man -ðĿ Ļ -sin ha -in vo -sovere ign -ke v -establi shing -engra ved -assu ming -ðŁı ģ -sou za -fab i -ton ed -oun ge -del oit -dow ney -no ble -om or -car tridge -ðŁı IJ -u hur -hol loway -succe sses -r sa -âĦ ¢ -ma zz -tw d -disc ourse -. < -y at -satis fy -com pri -ठ¹ -graph ite -disser tation -ar ter -í Ķ -b ally -zom bi -ly ons -a ic -u bc -pra da -e il -da x -cla i -grand daughter -extravag anza -chall enge -ðŁ¤ ŀ -po ver -primar ily -dad dy -man a -bi kers -inqui ries -da un -fel ine -gener ative -he f -benef iting -lind sey -pol ka -demonstr ated -al le -rand y -o su -low key -weir dest -red bull -our y -n ous -wood stock -cre denti -nic er -g ado -aly ss -ap h -prepa redness -station ary -incorpor ated -dy er -sarato ga -cele sti -: " -antibio tics -or gs -inde fin -ap ron -и Ð -fif teen -no f -ðŁĶ Ŀ -ph x -te ga -m z -organiz ational -on air -band ung -pleas ures -mor i -secre tari -rac coon -ca shi -pil ates -k on -geof frey -la o -kam p -depart ments -back packing -an am -à « -crack down -aun ty -on do -li zzie -ph ers -cu n -ðŁĩ ± -k pop -pu t -inten tional -connol ly -bar clays -hs fb -swin don -u ku -s ally -a int -âľ ħ -pen ang -up lifting -epile psy -inter ro -bun gal -go ku -blue berries -ठ¦ -u ssia -sil ky -mou red -i stic -bri efs -me ats -go b -ch aser -state wide -pra sad -gl itch -ar in -ban ff -memb er -ðŁĺŃ âĿ¤ï¸ı -lo ving -hall a -ภ¡ -smo kers -yak u -scicom m -physi o -sw ol -lem ons -gel ato -ch ool -capit als -ki stan -ti ghts -spi kes -trav ellers -ik lan -commissi oning -ar ine -emabiggest fans -empha sis -front line -pad dock -destruc tive -ba ha -l inger -je wish -shet land -mc gin -mon key -ko z -s one -raj ini -te h -y en -c vs -masqu er -gir ly -we sle -was nt -bro dy -termin ator -gil le -mag gi -bir die -jeopar dy -cu bic -vm ware -intric ate -an up -to pia -east on -sab res -investig ates -bu sting -bil ingual -valent ino -in format -fer re -advent ur -hydr ate -for sy -az iz -san to -e de -whist ler -continu ously -d ham -un used -ji had -addic tive -vi dy -do b -i do -fi ed -ni versary -n one -fu er -ðŁĺį ðŁĺĺ -coven ant -prin table -immac ulate -o em -cl t -serv ants -consu med -un released -sc um -pack aged -me re -ìĦ¸ë ¸ -to by -ta f -spo ons -me al -f ball -fair field -jan et -silver stone -dart mouth -follow me -voy ager -kom bat -anni ver -ene w -mag dal -ho ve -sa th -grizz ly -car di -gart ner -sand y -kan ye -post ure -po ign -im pulse -radio logy -horiz ons -si am -aish war -= => -no che -tr is -el yn -com me -du i -ce c -councill ors -cudd ling -creep ing -loc ke -manag es -trans ferred -ne cks -di er -dan o -v ick -lun ches -d he -en sures -cri ss -ul ster -bann on -cont enders -sp am -sweet ness -med al -hon duras -arc tic -ultra sound -in fr -disco vers -ei ffel -ca sters -ru ben -du st -awe ed -atri um -lest we -se ared -ðŁĵº : -ty ne -ex changes -little mix -l le -astron auts -hersh ey -work day -kno b -so v -re signs -today show -der man -an th -af c -ta ster -sw oo -sa eed -per ing -narrow ly -rn li -best buy -panas onic -obst acle -farmer s -ðŁİ Ļ -pa wan -ki est -ang ers -absur d -oh my -sin o -pist achi -sp ice -giu li -prime time -ko w -k ens -ex agger -! ?! -u ba -midd les -ju dd -e jec -slam med -pen sions -of a -re create -b hp -xx l -liver pool -thre sh -pur ity -ni eu -hol ics -wr ath -ra do -gli o -am ma -dile mma -cr u -lets go -.... @ -âĿ ĵ -sugge sting -tru mps -hor us -f v -ic om -refer ring -predic tive -tar ts -ge tte -so ck -glo ssy -pin ky -al ec -thy me -ou ra -thero ad -pe tr -cr am -p fi -dv n -me ier -incen tives -tun nels -mobi l -rec ap -extra s -upri ght -rev amp -per severance -, - -ot p -mir ror -ar wx -ger ry -ma her -g or -hom epage -am is -ag ra -made le -best friend -sirius xm -bun dles -admir ing -t dsb -ðŁį ģ -ch as -slow ing -ro h -wall papers -â̦ / -tek ken -gang s -tal a -lind say -shou l -line backer -tool kit -ur anium -caly p -ab rams -mat thi -ðŁı ¿ -hon ourable -da yo -ver sail -tan k -st c -fr itz -spl end -pat ag -anno yed -on day -devast ated -chattanoo ga -national ism -mas sey -jen n -tail or -dev gn -org ans -zu cchini -on fox -sat ire -wex ford -dis grace -no to -vol ta -âĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı -à ¶ -home owners -poin ter -m cr -au sten -day sto -mo ons -pal ma -gra zing -e so -influen cers -shahid kapoor -compli ant -measure ments -develop s -y d -par l -p vt -rand olph -tor tured -ger ald -eli as -deepi kap -war mup -hick ory -g ap -co ffin -am our -re neg -moun ting -seven s -ig le -hi er -dec ad -tri ght -esc apes -wer ner -t fl -ful filled -ni ger -sour dough -re aper -choo ses -spin ner -week nd -fil tered -sh uk -kat i -old ham -open source -kh anna -at elier -conne c -opho bic -gla s -complic ations -ar son -counc ils -sm ol -as sy -lur king -ling ui -han ks -e in -Ù ħ -ru gs -n guyen -nou veau -men ace -le v -alad din -ru ining -round about -k m -con or -shoo ps -may day -traum atic -prab has -ka iser -k ita -rou ter -pe dro -re tar -stun ner -spani sh -distur bed -acade my -e learning -wit ty -sen g -fer al -av y -sta b -ke aton -ur du -ko to -hu i -coo ke -ari an -the personal -u ma -se ap -a sting -rhetor ic -hand writing -munici pality -consor tium -ðŁIJ Ł -glasgo w -ra ya -eli za -polym er -bro th -prac ti -correspon dent -addic ts -gay le -ail ing -o fe -p li -hear tw -st itch -sight ings -prie sts -sam o -slo th -good wood -roc co -sab c -summ it -l ace -pres ley -itt en -cin cy -thepersonal network -s week -pe gas -af con -regi stry -ci m -le th -dic ap -cand ice -flu ent -sm ack -pede stri -al oud -car ac -priyan kach -p gh -ir ons -dol ce -lat via -dece ased -thero ck -cla p -cen e -fo am -morris sey -gre t -essenti ally -com cast -be agle -argu es -ing ed -- â̦ -sa g -ha san -ðŁĻ Ĩ -ðŁį ° -nh ra -kann ada -indic ators -on er -bri xton -at as -screen play -sor ority -sha heed -he em -class mates -tain ment -es i -breast cancer -zucker berg -aur or -en cia -ref ers -kae per -vor tex -com part -lym ph -photograph ing -ste ff -rest ling -par sley -mom ento -th man -lac king -du tt -ocu lus -fin o -fren zy -ra sc -der n -dis missed -noo k -met gala -sh ill -rapha el -maver icks -exhib its -eag erly -c pa -amen ities -. âłĢ -exo dus -ern st -lit a -deal t -womens march -i ain -score board -campe ones -c en -ti ki -garri son -fidel ity -bra g -road map -psy chop -lo e -ble u -ðŁijĬ ðŁı¼ -sau vi -spr inger -temp tation -ru dolph -ac ura -wic z -parach ute -stro l -len ny -zi k -dom s -nb af -al pac -vivi an -ro ve -pre et -perpe tu -sna ke -air soft -infl atable -prin ces -ati e -ffe y -pati ent -m ire -chel le -sl ack -groo vy -# : -up loading -!!!!!!!! !!!!!!!! -siem ens -provi sion -v fx -need y -f ats -to poli -bhu tto -sa thletics -alu ms -t winning -south western -adop ting -last night -man ne -la ga -tw ell -ac ia --- -- -eye wear -hur ley -fle e -sa ch -pe cker -cost ly -is k -cr ates -polic y -ero sion -in go -wer k -ðŁIJ į -torto ise -therap ies -inter net -chihuahu a -ri ps -fre i -ed or -tai ji -t fc -do d -demp sey -christ in -chen g -hi ps -gra eme -com passionate -cavali ers -histor ic -soul ful -crimin al -ja c -vin ci -expi red -sur at -turi smo -k ona -se aweed -ber ts -le ica -expre ssing -a al -wor t -break fast -her ring -am used -rhu barb -mar tian -cospla yer -y ash -stri al -ra ul -refer ral -dw ts -j w -ad ler -cur tains -gu r -val ence -tyr one -sw fc -coach ed -re born -diabe tic -cho ke -nor folk -investig ative -ðŁĴ¯ ðŁĴ¯ -z id -v mas -phi e -objec tives -âľ ĭ -over due -di vers -mat su -ðŁİŁ ï¸ı -casu alties -ภ§ -al k -stand ardi -re alist -arti facts -pand or -ke x -in vin -( !) -ine y -par aly -mr t -fay e -the voice -on ga -de ed -skin ner -az wx -speci men -priyankach opra -nu evo -bar kley -toulou se -resu mes -football ers -cit i -fe tch -è re -lestwe forget -ðŁĻ ĭ -ch unk -dri fting -manipul ation -equ als -pu tt -ky ungsoo -âĿ¤ï¸ı # -ela stic -par ano -fo y -do ping -cin cy -ss ler -interrup ted -al ay -ado res -ame thy -con voy -ãĢ ı -Ĭ ãģ -black list -gener als -sa chin -bru shed -oun ces -non stop -illi ams -bt sarmy -u av -ru ff -bur ma -bi k -defen ce -schul tz -bo asts -lonel iness -go re -trans forms -alum na -@ @ -ra ppers -ne hru -car o -himalay an -wearab les -ge h -pepper mint -re development -flam ingo -cos by -big baldhead -ag ri -bare foot -sco pes -re gram -gh ana -ðŁİ « -i heart -sa die -carri e -microbi al -ku ala -sk ater -quer que -âĻ © -gen res -reas oning -ch ased -as o -sli pped -en can -vam os -ker s -ad verse -mo il -commod ities -with you -sil ent -hy pe -an de -am ination -whi spe -lit z -âļ½ï¸ı âļ½ï¸ı -ri ff -pp y -lam bs -gan esh -ab sent -regu lator -marse ille -en roll -par cel -wa p -by rd -ðŁĩ Ń -tu ber -country music -par l -contro llers -responsi bilities -we y -ch ate -montene gro -chic o -mil an -l ms -tra inees -appropri ately -un certain -popp ies -ed sheeran -nutr itious -gar o -deut sch -awe some -ãĥ ¼ -comfor tably -land marks -et i -re usable -daniel le -ro sal -co les -just ic -c cs -f anny -ni m -mc u -clin ch -at ene -mer ge -im db -ang lo -uc cino -pan ini -an not -bur berry -feat ure -predic ting -fashioni sta -s ask -imag inary -mm o -south sudan -spe ar -hu bble -jo inthe -coyo tes -sli go -ko dak -sit com -polaro id -roo ted -corru p -ðŁĻĮ ðŁĻĮ -bris ban -at z -ah l -re my -tal ent -aval on -ra da -pau line -locom otive -go ons -ne mo -maser ati -ic u -stu tt -histor ically -sm b -pres by -avo id -so oners -rhine stone -w ad -ri sing -tro t -mo des -reg ent -optimi ze -re ece -sm u -ver ti -newyork city -cor tez -ra c -in case -sin c -fiel ding -e tta -tiff any -al monds -sad dle -k rat -mat ter -g low -star ving -gl o -cra ppy -sl ur -st d -monit ors -recei pt -maymay entrata -mc il -un is -rain bows -cal dwell -pacqui ao -j op -a fe -hoo k -es sen -wiz ard -medi an -fla ws -com s -âĿ Ħ -ing h -ha ynes -anton io -tem plates -ou ter -na w -cardi gan -bel grade -ðŁĴ ī -hom o -a ise -ro pes -no ve -what you -tri gge -concep tion -ad ukone -na di -fri ars -sw er -adju sted -hot line -san ity -kau r -down loading -c gi -ten or -eth nic -app alach -ภ¸ -pa g -gol ds -on set -investig ator -car tel -peace fully -jarre tt -cat alan -poli o -n um -fru stration -dhar ma -my life -âľĮ ðŁı» -aber deen -mu sa -bin der -spark ly -fle eing -instin ct -co ping -domin ance -ill ers -er a -u conn -lo oms -living ston -gal i -he s -c ma -bel a -se ley -mon k -la ch -mar x - ´ -m erica -woman in -es sex -ra ina -jim i -nep tune -z ack -chine se -mart ins -chand elier -her n -with us -ear l -asph alt -modu les -st p -ul la -psychi atric -mile age -captiv ating -si der -men to -mor t -tran ce -tal bot -ab by -ì ĥ -âľĮ ðŁı¼ -j ak -daw n -turn up -scre wed -fe ds -blue print -ðŁĴĸ ðŁĴĸ -har sh -er os -insom nia -ban kers -ta emin -mis conduct -hu mber -gi di -edu ardo -con a -musc ular -consu ming -ra sh -don nie -di pped -col lie -samu el -melt down -ðŁĺįðŁĺį ðŁĺį -me z -exam ining -schwar tz -pri stine -ðŁIJ Ŀ -ve it -ful filling -an esthe -gue sses -dra ft -som me -soli d -pati onal -ho ped -evolu tionary -all er -enter tained -sli ps -lud wig -conclu des -sen sible -bon net -cra ze -tra s -haz ards -const antine -ed ics -star trek -to c -occu pational -in cheon -deepikap adukone -pizz as -new comer -de part -oppre ssion -ebon y -foss ils -tro jan -el en -ste aks -k hou -positi oning -ug by -red cross -ak h -dol ce -us mnt -pp en -dil ig -ma vs -call er -cost ello -⼠Ħ -dy n -thing s -rhin os -a xi -sar kar -con vocation -att ers -ss ss -fun gus -eu gen -russ o -squ at -w sb -eli on -william sburg -s off -defici ency -be arer -o kin -key stone -t wain -cal ming -break able -wa res -horser acing -com bs -bun ting -u it -t land -ðŁĴĻðŁĴĻ ðŁĴĻ -ga stron -sab ot -ick ers -commissi oners -sen ate -ii ot -ath ena -nit rogen -an tony -ero tic -di alo -mis sou -hypo cr -âľ Ī -kaeper nick -can v -d roo -clevel and -o sh -mon sta -stefan o -^ ) -sh ul -po ison -ha e -commerci als -ma ul -nit ro -co worker -alo e -vap or -t ents -russi an -qu id -question able -mid get -po ker -girl friends -sin the -erit rea -ten ure -depos its -buc keyes -spot ter -theod ore -trin ity -joaqu in -u cci -follow the -caf c -mp a -ðŁIJ » -plo tting -dom ino -ta ek -sion ally -dicap rio -pa p -car mel -ig er -bt cc -beth le -www bigbaldhead -foo die -bagh dad -mason ry -off ended -à · -ภģ -sc ro -vers es -ori ent -ar ches -pi yu -know your -gre e -ta kers -gu ard -dish on -bucket list -bha fc -war dly -ðŁİīðŁİ Ĭ -leigh ton -pe w -stra y -assaul ted -in hal -ly fe -amar keting -l x -kat z -ubun tu -me o -carto onist -turno ver -mi z -dis like -mul len -mo f -bl and -hi des -emer ges -chori zo -truste e -ma hog -lan sing -paralym pic -fa int -fa una -ch al -sn ar -cat h -bent on -cast illo -sli ppery -apric ot -oec d -bar o -l z -he ming -clow ns -co workers -peru vian -commu ters -y ell -ðŁļ ´ -under ing -v j -tt p -fli pk -w ana -soc ent -Ĥâĸ Ĥâĸ -ठĤ -oo sa -jag ger -di sm -e less -d ham -cali f -a official -ec lip -harro gate -gra pp -com rade -n tr -concentr ate -thi ghs -bit coin -bel arus -ë ĵ -end uring -now watching -industri al -pi p -ar on -ar at - ® -whit by -oooo ooo -sa ree -tic als -mis leading -yo on -year s -sle igh -roman ian -sciss ors -vam pires -ac up -ab ba -th weeksary -cent ri -fl ye -u o -c bi -bu ena -sin d -mar ino -bur r -re building -ठ² -anniver saire -ac ca -ðŁĴĢ ðŁĴĢ -gett ing -tu lips -wolf pack -âľį ï¸ı -more than -ta kin -ð٤ĺ ðŁı» -u be -mon ic -dou bts -mo wer -co balt -don ne -specul ation -argu ably -kak u -htt ps -prosecu tion -din ah -stam atic -disclo sed -bever ly -fl wx -cra bs -extraordin aire -war mest -imper i -o logists -trac es -par c -lake side -am r -ter i -hour ly -domin ation -ar row -shrews bury -ance stry -wr angler -trigge red -pen sac -roo ster -survi ves -a on -bo ko -val or -love is -la g -pe y -fo cal -out laws -bl anc -artic ho -wit s -marsh all -die go -support small -u ca -sa h -je et -syn ago -gover ning -ðŁĴ ¬ -sal ads -cre ate -miri am -cen sored -ami de -no u -z eta -allegi ance -* ) -bl m -ric an -pa stors -oly mpus -blo c -whir l -star ry -pr one -y k -p ne -congratul ating -be v -so ber -love island -sa ir -an ing -tutor ials -q e -lun d -in ist -cle ver -taxpay er -ali z -wren ch -dd ling -cap ri -h pa -ðŁı» âĢįâĻĤï¸ı -na j -o j -futuri stic -jelly fish -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ -cel ery -plan k -fil a -ne me -un healthy -lec tions -ðŁ§ ¡ -rit chie -n ws -mi kha -wonder woman -âĢ İ -hip stamatic -ka g -ðŁĴľðŁĴľ ðŁĴľ -poul try -mo w -wor ds -lo ff -ðŁ¤£ ðŁ¤£ -relat able -re mixes -keny atta -ke m -re signed -fo d -stra igh -j lo -hu tch -box ers -colle en -mag s -instruc tional -ko l -attrac ts -pra g -account ant -go ggles -br u -th ole -mar row -leu ke -oc to -pon ds -bubb ly -he ist -ìĹ ij -im p -a har -ha unt -hall mark -psy ch -kkkk kkkk -col umb -jump suit -cost co -si delines -ag gies -over turned -ni b -key chain -fu k -f af -mi am -assist ants -cy cled -ri der -dam mit -red wings -mag es -kin s -ì Ĥ -ho d -son t -carol ine -" ' -cu le -bra id -fel ony -ar ities -ruther ford -depic tion -isab elle -ro ach -k day -fifth harmony -em y -li gam -bari sta -albu querque -gro ss -ðŁį º -oo ks -ðŁij ¼ -dun can -try in -jag s -g ould -li tho -âģ £ -а Ð -sam my -tun g -cas ser -apo lo -aaaa a -man g -as ics -sh en -p ye -tur bul -ss p -saint sfc -on lin -n anny -he ster -do z -à¸ Ķ -th read -ren ts -kh and -ðŁĴª ðŁı½ -un conditional -rob son -car re -ph on -sacrific ed - £ -auto s -par ker -oc a -log in -kee gan -hard cover -dough nuts -ðŁĮ İ -spit fire -refresh ments -saskat oon -commod ore -j f -rub ber -halam adrid -child care -stra da -io m -ri k -dak ar -ther mom -cro pped -gar u -ali k -ven i -i ft -si ka -ritu als -z ul -e ch - © -su dan -l land -i me -do cker -ì ¤ -fe ared -fa o -wal ter -no g -mutu als -l h -ali gn -mon ia -concep tart -ðŁĻı ðŁı¼ -sco e -compet ence -sw ine -ly me -laun ch -green er -abstract art -inqu is -gran ada -ga elic -flu ff -d backs -grave yard -ba be -acade mic -adventur ous -joh ann -~ ! -bi bi -| # -pl ings -gett y -as b -âĿ¤ï¸ı @ -staf f -religi ons -bang or -world bookday -me gh -de vin -ash ore -meri dian -gi thub -qui z -all stars -be stest -ir resi -ack er -do te -war rington -pol ly -newor leans -cr ou -wi gs -che y -smithson ian -la sag -de tour -bor is -stra ps -mari ah -inten tionally -ko h -ðŁį ¸ -ssi an -mar issa -cor al -episcop al -casu alty -tom o -supply chain -sam p -on go -ro o -cavi ar -p fw -clau dio -buff alo -s ations -mat ty -snap back -l ds -al arms -mat te -âĺ Ķï¸ı -conditi oner -d ors -he x -fi zz -a stri -sus sex -secur ity -qa eda -all star -cocac ola -as one -cl icks -sc ans -mu te -he avier -ðŁİ § -âĺ ŀ -lv l -book boost -youtu be -fla shes -f jor -c su -explo de -do dge -cair n -gonz ales -th ill -pel le -hart ley -renew able -re tin -e stre -costar ica -shipy ard -nc fc -pri ya -a ghan -an ath -plu gin -co rey -re bound -or u -kat rin -hor mone -gi m -mahin dra -s sus -park land -har per -fanta stic -infer no -ep ilo -wrest ling -fe ct -c it -ac oun -to ssed -monu mental -char tered -bu st -pe tra -âĮ ļ -wildflower hour -sweat ers -* . -bl er -ate ch -go wan -demo graphic -bra l -suici de -renov ations -vu el -sin ister -ar mani -miso gy -ph arrell -nap s -un iting -crusad ers -cor gi -insu red -than i -no or -g q -d ada -bicy cles -snu ggle -sch an -ten berg -ss al -fe mme -bo il -½ ï¸ı -re ap -occur ring -hus sein -divi d -sto ke -sh alom -na ia -o lic -frustr ating -Ù ĩ -ig s -gro ver -scen arios -n ds -bru tality -med alli -bu on -sas s -skate boarding -ony x -lor ry -ny u -gau tam -mm ings -gu g -end i -lo thian -comm ando -chal k -ph ora -asse ssing -ti gh -crun chy -ad ay -is l -ci ara -pilgri ms -kam al -p to -brit anni -t ani -sm c -l ure -app store -ab y -golf ing -cl c -fa u -an as -shu tting -regul ated -carn age -scow boys -all enge -c ma -humbold t -rel le -ku mb -her i -refin ery -sound check -d wayne -bos nia -i sp -the alth -anni v -relev ance -my a -bag gage -dre ad -s bc -th ed -bu h -hi jab -lo id -ke w -c te -respec t -lovel ies -cu bes -celebr ate -dir t -sav ers -_ , -gar ment -pulit zer -mas jid -beat port -al arts -encry ption -s ner -ple ads -found ry -sym metry -ru mi -birth place -scallo ps -supp le -pivo tal -t ati -no de -so d -pro xim -tr ics -col dest -bren t -mand u -cla ir -e ach -and alu -hi ddleston -ðŁIJ º -mel ts -v ance -pin n -se ments -scre ened -sa chs -o bl -ic ha -âĺĺ ï¸ı -school ers -heal ed -lo gged -ð٤ĺ ðŁı¼ -ic us -bore dom -b ish -b ffs -tal king -sure sh -hoo kem -de on -de fl -ei leen -ðŁį ķ -women intech -ri sotto -rang er -adverti se -ภģภ-tel ly -la go -dart moor -d ong -sk ates -lo go -un ner -mail box -ma sala -lo oooo -amethy st -che wing -c bb -australi ans -rc mp -game art -# ... -kor n -extre mism -fruit ful -anci ent -pu bg -pol ite -wh it -mur als -m gr -line man -dav ao -ste ms -ten nis -av age -tu pac -gigan tic -hs bc -auto biography -up the -ี à¹Ī -re gal -fig uring -ku l -mis sy -hoo p -gra s -for ums -back lash -abduc ted -p nw -min ic -bu tt -bott oms -at on -ven g -ðŁĮ ı -del aney -prab hu -fan club -over haul -health ye -sy no -aa f -ren amed -kim i -un cle -man city -se u -qu anti -este em -um in -en zo -mel vin -under go -j har -far ah -coast ers -humph rey -mh z -children s -^ . -d hi -disrup tive -integr ating -r nb -over sized -a ide -ne au -docu mentation -ðŁijĢ ðŁijĢ -pal o -hear th -ri yad -pun ctu -abc news -secu res -boy band -bir ch -ju co -tra ff -legislat ors -bay a -ãĤ ¯ -no ises -collec ts -s warm -k ner -bi shops -stur geon -snapp ing -mo l -fre aky -chair person -tro p -lyn ch -car cin -art sy -e sto -cha i -fl ur -inv ali -sau sages -im el -j or -fun fact -wit ter -puni shed -ac ons -h ya -re versi -em c -dif fu -z x -sp aw -cla d -d mit -hol land -fre sco -pay roll -ab undant -stu ffing -mor o -c ny -boy cott -wend y -ele ven -pro voc -pil ot -tr x -be ad -climate action -ri on -assi e -ì ĸ -o sm -islam ic -ho ar -good reads -al ici -afterno ons -spoke sman -jo lie -it as -masc ara -âĻ© âĻ« -pre vail -beetro ot -lu jah -k li -dod ger - » -ru le -l n -scre am -ho bart -col bert -r tc -er m -pat ro -quo ting -s live -que st -non fiction -semin ary -prosecu tors -ve st -express way -g ge -nau tical -et f -ðŁİīðŁİ Ĭ -dur ation -cha ired -the film -fab io -she h -can o -ðŁĴª ðŁı» -with draw -! :) -cor pus -phen om -yel p -la wn -ent om -snapp er -but te -pin ball -pro xy -libr e -alle vi -n ada -gabri el -fo wl -eure ka -daph ne -tu nes -pun ched -wh ore -jo g -ren tial -man ners -o pe -wh ufc -gu th -revol t -sne aker -philharmon ic -ho ste -sovereign ty -ðŁĻıðŁĻı ðŁĻı -fish ing -sci art -fe ta -i pp -dump ing -kel own -gir i -dig its -sal u -san jay -twee ters -sp as -col chester -sc ab -ma dd -๠Ħภ-Ä ĩ -ged don -march for -do p -maure en -un plugged -di do -fashion blogger -up a -mex ic -tar y -pol ye -jame son -v t -grin der -mad dy -consult ancy -¬ ë -leagueof legends -ac cents -um ni -jane iro -tu ss -h ens -ampli fier -to shi -pret tier -pre vents -new town -red wood -vant age -ball ard -ar tof -a she -a sion -lac ey -ap at -gro ve -ภĦ -rw and -real tors -tra itor -bed ding -ö r -zi on -fla shing -cam pan -boom er -secretari at -ab ol -liti gation -cont amination -se dly -shred ded -in for -do herty -bench mark -ro che -skate board -sho vel -i zz -to pper -o ster -laby rin -autu m -k ong -hum mus -vi z -tech news -kla us -am using -socialmedi amarketing -i des -cast ell -ste e -underestim ate -cal ab -pa ign -b illing -unanim ously -g mb -fly fishing -hath away -commerci al -colour ing -skul ls -pivo t -te p -tb c -motor way -x press -construc tive -pu k -under lying -kir sten -mani ac -cha o -se ma -chiff on -ðŁijĮ ðŁı» -ver ona -kom o -stan doff -wi ped -c ated -bla ir -wor kin -m sc -bethle hem -swi pe -unexpe c -pe es -pe tri -orig ami -ðŁij ħ -mex ico -flav or -ru dd -cannab is -mar u -ri ddle -wor shi -sil on -sch at -ap se -tang er -bi ous -e er -questi oned -o zar -dan k -angle sey -char an -bak u -compe ten -re pri -bat ter -sa xon -cal ves -leng ths -$ $$ -âŀ ¡ï¸ı -immer sion -ga unt -car ry -cy to -b anda -shu tt -experi ence -el gin -mous se -ta z -ê µ -in correct -en z -b ham -mor on -so ver -ar un -ti pped -la ble -de arly -bau tista -í Ļ -mor tal -woo p -dt la -sho cks -dav os -ðŁĵ Ŀ -swim wear -her man -ðŁijĩ ðŁijĩ -z ir -neglec ted -grac ed -campu ses -av s -ar ora -swach hb -live pd -ac cra -enqui ries -shoo ters -kur t -vancou ver -brad ley -gar da -g ü -ol la -attrac ting -up ton -ne win -lu mia -furn ace -ev ers -e on -sw a -roo kies -a oc -v ss -bris ket -tor ch -yo da -heart land -tac o -ph ony -food bank -ab bey -bab ylon -u y -gre ate -expre sses -d andy -sc apes -survi vor -ron d -e ci -ha vin -ab el -chil dish -tor que -wav y -ur self -kanye west -year of -ale stine -o brien -al fon -sk ag -kore an -anchor age -val eri -de w -ðŁİ ¨ -land slide -car ole -christ en -go phers -af i -priyan ka -q q -power of -it te -pc so -tw ol -pr y -intellec tu -guer rero -pi les -wish list -w ren -time table -ë ı -prodi gy -gibb ons -. / -ne ur -anz ac -mur ray -vie st -pla ster -la ir -art gallery -inter continental -g br -bell ator -nam joon -mam mals -am el -y aw -saras ota -cam ar -bud ding -sum mari -aco sta -la sh -ey ou -post graduate -instruc tors -ti g -const ant -were wolf -ic os -cla s -glen n -bud ge -ðŁĻ Ĥ -er ta -sta ins -persecu tion -cumb ri -o ch -syner gy -hu ang -scand in -mid terms -comment ator -regar ded -perpe tual -bo iling -al p -lan ge -sch le -fac eli -twee ta -ri dden -ok toberfest -charlotte sville -ik lan -jo u -ch atham -b sc -ðŁį ¦ -stra uss -mel low -xx xx -happy hour -re actor -ww er -distr action -at orial -ðŁĴª ðŁı¼ -twin peaks -fay ette -a or -ko k -bro om -sy fy -ou se -am ag -Ø · -ubis oft -lu lu -hall mark -stu art -it ya -si deline -venge ance -re lu -sex ism -boun cing -un ites -gu stav -te ssa -stu mp -pro clamation -ima x -divid end -col by -ðŁį İ -play wright -un safe -co smo -ðŁĩ²ðŁĩ ½ -cup board -constitu ents -ang lia -ram page -ðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺį -than ked -take aways -shro ff -de bat -kh ur -conduc ts -format s -à © -port age -graph ers -u ten -pre m -mo ines -condem ns -s ous -l ps -f cs -deal ership -leuke mia -bure au -ski d -guardi ola -ca ster -thir d -avoi ded -en cyclo -c sr -vi xx -analy zing -she ar -dulu th -shap iro -chan ting -stre sses -as be -mil itia -ãĥ ª -col lin -arsen e -sure sh -teach ings -yi xing -sh ill -nu des -sv u -clear water -war ped -pro life -artist son -it u -versail les -galax y -ax el -spring st -cal a -hu hu -sc u -commit ments -exe ter -poign ant -mo tion -conserv atory -row dy -rec alled -mu sk -emb elli -so the -âĺ Ģ -sto pper -sch ild -to pe -el mo -zi el -j om -barn sley -snow den -on tour -jour ney -hills borough -par ole -w ts -mo ving -ag ility -tiv o -ff ers -kindle unlimited -g wen -ann an -ah mad -tex tured -hepat itis -dra m -insi ders -tis sues -ãĥ Ħ -fc barcelona -cr atic -na acp -pe can -f gm -custom ize -concer t -g sm -pe g -p one -justin trudeau -super cars -happy holidays -bu lar -ado x -lap tops -digital health -destin ation -gradu ally -áĥ ¦ -popp y -ss l -inhi bit -star light -of fro -glo omy -x per -hal der -im plants -le to -hass el -a as -un told -en ci -liber ia -or an -con tests -il ah -sma g -sc out -mari anne -cr yo -schedu ling -lo s -kan e -stutt gart -ne se -law rence -da in -pho tom -car ou -ภ£ -g wy -national dogday -roa sting -band camp -kentu cky -stret ches -ke rel -ca she -ãĤ ¸ -sta x -tran si -dog gie -at ric -hal le -ci vic -brow ning -lein ster -cat day -high land -joy ous -in cumb -or lando -ro mo -col ton -del ta -car ab -ro tc -aster oid -goose bumps -mo logy -yo ko -an ds -tomor rows -red carpet -sm p -ca sio -ðŁ¤£ðŁ¤£ ðŁ¤£ -se au -rejec tion -rot ating -bi partisan -th un -mat i -bon i -ol l -ener gye -do it -l j -mother hood -lou ise -neck laces -el ite -ni x -l cs -en v -gl u -le sh -cran k -su sie -m clau -so tu -crow ley -rat ri -use d -bre ton -alfre do -ye o -travel pics -ti pp -elli son -sax ophone -me red -heu ghan -ta ine -f es -vi ro -suppo sedly -i as -dige stive -y le -li zzy -wildlife photography -bri anna -west field -ra ined -am her -ðŁĺĦ ðŁĺĦ -distribu te -bott om -pre serving -oil and -craf ty -de scen -col ling -shakespeare sunday -r wc -ang led -ci an -t ations -mon tage -me yers -france sca -ðŁĮ · -wi ggins -san ford -volunte er -car ra -bar k -vari ed -pl in -am u -kap il -rock ers -qu ind -br ane -in mate -ent al -impro vis -michi gan -re tweeting -progre ssing -mercedes benz -smo ker -physi ology -dor ado -watt pad -h wa -sr bachchan -w ga -vol atility -hi re -ac ap -wn ba -hein z -stit ches -kidnapp ing -bur ys -lim b -f itters -thumb nail -ton e -mir and -desi rable -ad dison -tar an -tamil nadu -spec tator -soci ology -amit shah -remo tely -âĻ ¦ -ham id -r ds -g lee -smooth ly -sch ro -er c -lali ga -he als -us f -ni shi -d hu -un il -h le -tro mb -bhu tan -pilip inas -se ung -whit man -te y -min ce -snow boarding -re au -k ker -av o -zach ary -ran veer -ti k -gover n -qu al -beck y -anthropo logy -att en -grocer ies -de bit -war p -sil icon -hawa ii -ðŁĴ ħ -pomegran ate -pe er -orang es -people schoice -end ure -ðŁĴĽ ðŁĴĽ -ãĤ¹ ãĥ -ac ial -a haha -stu k -imper ial -bl ond -pow der -kno ts -vin ce -wood lands -den a -watch in -mat cha -ma hat -galax ies -middles brough -k ö -stre e -resc ues -wal do -lero y -desp ic -real ities -tm nt -ha q -un o -pe c -bolly wood -blin ds -design thinking -he ms -and hra -ab sen -fan s -ste ch -shire hour -bla ine -shak ti -pu rely -ðŁı ı -tra fal -ke ynes -gr ate -to bias -spon taneous -satur ated -caval ry -pri sc -ðŁĺ ij -wh t -pas si -~~ ~ -vir at -patt inson -la o -weir do -sym pathy -ju da -occa sionally -cred ited -stat u -es co -hil ly -esc ape -dischar ge -se er -may nard -sud bury -z lat -or al -we er -encoun tered -sm elling -over sight -ê ¸ -that cher -mack ay -you can -fre ep -freed oms -prophe cy -ho e -ishq ba -dra ke -qu its -pel led -tur k -o vi -wesle yan -new music -leg g -ch eng -h illi -ay y -pan ties -ad versity -ad jac -vaccin ation -ju ke -ga c -exce ed -time sof -sta ining -ep cot -v ital -up ward -bethe sda -apar k -ma hi -camp fire -enchan ting -rha pso -h z -na ver -fa x -vali dation -ac ad -ny r -as ym -coordin ated -depar ted -all ery -var ies -spr ite -chap lin -ss occer -s wat -bre t -relu ct -tunes app -super star -reminis cing -o co -home grown -dough nut -un canny -la pd -thyro id -! âĿ¤ï¸ı -botan ic -bre s -sp ade -i ste -echo es -du lil -bur sting -qui ero -ðŁij İ -loy ola -amuse ment -ha ils -sleep y -burgl ary -âľ ı -ro gue -cot land -mo ors -low er -wic ked -ðŁĶ Ĭ -compet iti -argent ine -yvon ne -karti keyan -ili ary -gat sby -precin ct -six ty -na ji -cam s -practiti oner -ðŁĺ³ ðŁĺ³ -pu ne -neg li -juli en -inv aded -cali br -cla m -duba i -mu k -lan tic -produc t -fe dex -ï¸ı : -eu ra -dari us -s ling -virtual reality -home stead -ðŁı³ï¸ıâĢį ðŁĮĪ -pac ed -in ha -pul mon -la zy -premi ering -ma stered -in he -con gregation -ba jo -sport ing -new jersey -hor ny -lma oo -leng thy -du t -yo gh -swe aring -philosoph ical -pap ua -in ski -know les -dy ke -âĢ ² -to ken -mc guire -ri ot -probab ility -mc con -gro s -su mat -c ite -da a -on da -mad dow -che w -board games -spar ked -re claimed -ad hd -ny se -imwith her -equ inox -boo ths -balsam ic -ha zy -dor chester -ag os -se aw -moder ator -seri ea -ander sen -pilgri m -âŃIJ âŃIJ -itch en -hal li -x ton -nathan iel -mun ition -celesti al -ga f -zo om -mark le -pen thouse -cal e -s fa -bar king -tu cket -em ery -cal orie -li que -ad ar -mc nam -tor tilla -wood pecker -mo town -bad ger -ayr shire -scram ble -dd ay -cra ziest -per rie -cho co -cast e -i ot -wre cked -selec ting -uss r -gra ft -pun t -lab ou -ir st -ba ek -Û Į -su ki -que u -ach at -te ster -aug mented -wc vb -sin ks -ðŁĵ » -ra ke -inter ne -be cause -belle vue -une arth -light en -ðŁĺ £ -turn around -labe led -unemp loyed -twitter kurds -le ia -h ye -great er -ðŁIJ İ -tim ed -i red -e tt -limit ations -cab e -s out -bee ch -anni hil -re trac -yo ona -ang er -den nis -supp lying -di z -" ( -sc ur -gun man -su ho -sauvi gnon -ภ¥ -wi ley -land on -choreo graphy -pre historic -ðŁı ĥ -var gas -assess ments -pinn acle -di i -chamber lain -ì Ī -v p -present ers -deut sche -sun shine -sal utes -r one -bu siest -- .- -motor ists -hemi sphere -al wx -ps p -ow a -den ying -cho c -gu tier -han uk -mus kete -jait ley -se wage -t ame -thin kers -shi m -se quo -pap ar -middle east -k wa -ke g -patag onia -no y -bar ça -take off -he a -à ¬ -n sc -g dc -ðŁij Ī -mou stache -mel ania -thr a -â¬Ĩ ï¸ı -pier ced -ze us -fon ts -ber a -it iner -q atar -contr ary -ire land -i fy -ou los -commun al -fin s -un paid -pa a -ðŁijĩ ðŁı» -ri os -ou p -f iller -cafe teria -à¸ Ń -kas i -cali ber -z ulu -v sco -ts ford -dragon fly -smo kin -pi st -psycho logist -diplom at -we bs -buc cane -à® ¾ -motiv ational -du ne -ba e -c fs -with out -er on -i ac -ate e -pen sion -fra zier -en sis -sk is -par ting -ger y -territ ories -nach os -eni ght -ever lasting -msd honi -tel e -sp un -po di -sab ah -environ mentally -ce ase -beau mont -mar ta -kel vin -ho ff -sun il -n da -co b -sh ale -ree dus -un boxing -u bio -re opened -n all -capsu les -mar r -himalay as -swee ter -ja z -f mr -twee ter -dha ka -na u -de mi -d fs -ta urus -fad ing -it utes -ci p -over flow -jef frey -don ny -car tunesapp -ðŁį ij -prefe cture -danc ed -c pt -ple asing -ital k -earth quakes -ul ation -hi o -ãĢ ĭ -ant an -nutri ent -de ere -selec ts -enrich ment -r iti -tram pol -bl amed -j ia -contribu tors -chesa peake -pi geons -tribun al -mad uro -w su -ilo ve -effici ently -dar cy -war ms -ar ra -ec u -ho wer -strugg led -rajini kanth -ðŁĺ¢ ðŁĺ¢ -hou sing -str at -eli x -disp ro -raf fic -thi erry -na sty -c fb -staf fing -al ma -back ers -hen son -sky walker -reale state -roo s -ness y -chan ce -cair ns -c ci -pe dal -ly ft -cross word -wait er -only in -kru ger -k ir -alej andro -car tier -car rera -re paired -ou at -un clear -un breakable -today in -qu eries -jo dy -gen ital -win ner -to l -kelown a -fascin ated -ãĥ ¬ -sris ri -squ ared -spr ung -negoti ate -priv ately -av en ->> >>> -g ical -gav in -chester field -zu mba -or r -nat alia -impeach ment -mn l -car at -criti que -credi ble -trac y -tan i -musi k -jig saw -gam bia -tol kien -fe u -as per -sav ory -fo xx -f itt -mar lon -l rt -v ell -p br -imprison ed -i om -chu l -wind shield -kay e -ba a -chor d -s art -al gon -minister ial -nat geo -la zio -nor ms -ðŁijį ðŁijį -lic king -fut bol -un sung -dalla scowboys -sh red -distur b -dev ine -be ards -ch f -b day -ro sso -ig or -ay i -si ren -k air -sti les -ro f -mag nets -un cover -mou se -bang ing -si ghted -spe ople -impac t -row land -kir a -environ ment -love the -p sis -mish ra -gl endale -ca jun -o che -de ception -sex ist -stra ws -s ga -buff er -apost le -sp l -pop up -ðŁļ Ĺ -r g -up er -ball in -i dy -occa sional -national park -ðŁı Ĭ -u an -innov ation -ภ« -te aparty -re tte -counter fe -b ha -rec s -ig en -ðŁĮ IJ -humming bird -cu r -ha ven -la zar -pue blo -: : -zi onist -op ath -inver ness -promo ter -carto on -cabine ts -mahog any -surve ying -r ational -feel ing -testi fy -so w -oc on -ภ¢ -ne el -mar is -sol itary -che mo -rad cliffe -sim ons -ros ary -new er -jo die -re tali -pra wn -pad dy -hen ge -k ala -im plant -at y -bren twood -par adox -ene z -re designed -p our -wy d -al de -௠ģ -sol d -biomed ical -๠Ĥ -tt tt -mat teo -ys er -new ton -de bun -ner dy -loo l -wo on -elisa beth -ec c -wh i -ach o -salv age -sal aries -qu ity -navig ating -oph thal -con soles -re built -o pec -ast ers -sho red -set list -kathr yn -rhy mes -re visiting -ash ish -li ft -re post -sole il -âı ± -weal th -sa at -we c -king james -flipk art -field work -se gu -mo dal -bu b -are rs -ðŁį Ĵ -clo oney -pad dington -necess ity -guth rie -pen te -li mo -jo sie -ar tin -en c -l hs -betra yal -info graphics -i er -mo a -hear ings -bon jour -sym bolic -ag ro -wed ges -krist ina -wild flower -athle tic -photograph y -pe sh -ca hill -chi lean -gou l -fi oren -ðŁij ¶ -z il -sk im -bad oo -deli a -tre ble -n cc -ðŁĩ¦ ðŁĩ -a house -bul lock -sol itude -ا٠Ĩ -can cers -futureof work -hu tch -water shed -war mongers -sp illed -colom bo -mo th -associ ations -weigh ed -global goals -not just -christ i -tor g -swe ating -man eu -clu sters -â̼ï¸ı â̼ï¸ı -ta ped -ul y -tru sting -yu suf -te in -ra b -, ,,, -sin ai -audi ble -explic it -cro wns -sch iz -at least -ðŁĹ £ -de bra -je suit -ene gger -z hen -one sie -i it -ss f -gur gaon -chak ra -bear cats -k ran -k awa -reque sting -han over -g end -sor os -mer cy -lovel y -do omed -tim my -ku z -ul l -ab ram -sa ison -ãĥ « -clean ers -re mo -circu its -bar red -o th -mo ist -madele ine -gall o -u j -per mits -hea viest -car ols -az te -gior gio -flo ats -decl aring -us rc -min at -craf ts -pri ma -conven i -nickelo deon -danc ing -ceremon ial -blo gg -tw p -anglic an -she k -k nick -( (( -hubb ard -harve y -hit man -fen g -we some -for za -s word -op us -bro m -gi bility -z al -m unch -dance hall -gre edy -hd mi -re birth -ðŁĺĭ ðŁĺĭ -s world -figur ine -com post -k f -engra ving -gior no -st ana -k man -ham ster -compos ers -aj e -func tionality -pol k -is ons -air planes -te se -hor rors -musc at -gi ven -sp ence -ðŁĩ¸ ðŁĩ -eli ot -ach illes -fre ck -crypto currencies -sou ther -hal o -bor neo -polit ic -hahahaha h -up state -si ena -obsc ure -hau sen -lloy d -happy friday -motor bike -bon a -americ as -hol s -- ( -spor ty -un aware -reven ues -christop her -bank sy -av an -ev apor -com press -eyel iner -to dos -buff y -renewable energy -ly rical -ar chan -rapi st -fair trade -lma ooo -beat z -pro active -la pse -ir ical -revers al -po de -mcin tyre -mac au -ãĥ ķãĤ -nash grier -f sa -g all -çĶ Ł -perpe tr -il ya -configur ation -% ; -str ange -rac i -ภĩ -pic kups -kov sky -mam mal -w ps -g able -compar ative -z h -save our -da vey -on etsy -mu ssels -mis er -cri stina -electr on -cra ve -lo ren -precipit ation -m z -ðŁį « -vin cen -snow board -no ida -ah n -marin ated -g tr -town hall -min is -bethe l -adv an -su ra -shi el -fur ry -ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ -lyn d -so il -sc ence -sen eca -shar jah -dick ens -credenti als -av ar -per k -requ iring -pre fer -j ian -de ca -r ach -ing for -del e -be ep -ðŁĴ » -cis ely -hu ddle -green sboro -haw king -ho ax -hang ar -ç ľ -mis o -lo vin -gre ta -ab ad -logi e -at an -snow flake -mahe sh -fear the -al kal -bobb lehead -ba hn -ju dged -fu tu -feli x -ðŁį ĵ -pi ke -der iv -notic es -au er -dis super -or da -wi pes -am ino -stri kers -foo tb -dram as -pun ching -score less -heming way -bi h -bal lad -chat ter -am mo -kle in -fabric ation -kari m -z end -hi sto -vol ta -rock y -marke ter -xtre me -sequ encing -paradig m -cle ats -boom ing -âģł âģł -block ade -promp ts -yogh urt -pur pose -nu r -regu late -nois y -ing rid -bird watching -bar tender -Ù ĥ -wor dof -cha otic -shor ty -el dest -z app -onceupon atime -fl yo -rit os -mike quind -ðŁIJ ´ -regi stering -. ] -ad ol -gg gg -pur ge -kid lit -ar bor -val ves -synago gue -o th -unanim ous -veri fication -dar rell -ãģ Ħ -vander bilt -tape stry -pro sper -did dy -dra fting -de cep -marqu is -st int -michael jackson -pee led -men us -bb b -sc are -ema il -wri gley -it is -f ell -some thin -bar ra -ed gar -di pping -pu ddle -sla de -lear ner -jal en -ðŁ§ IJ -the daily -mikequind azzi -ju x -iq bal -mckin ney -ra iser -ef an -dr one -cat o -pic ket -cro we -l att -uk o -giuse ppe -hin i -synthe si -ponti fex -song writing -to d -swit ches -din ners -h q -gabri elle -pensac ola -cir cle -expo ses -ev s -riyad h -pro men -o ck -sa j -cit ation -brew co -jo si -ep aper -dri f -point less -tang led -cri pp -line ups -fairi es -daz e -mour n -bla dder -sal z -bur undi -book mark -the people -sub sequ -princi pal -sk er -court ney -a oki -rac ers -ad m -mom a -critical role -hou n -shed ding -sa ka -ace ous -mck ay -hus bands - ½ -me da -accu sations -ro sel -nc is -witne ssing -or ama -go ds -hil ton -el man -ÃŃ n -meg ap -cra ven -announ cer -crit eri -sheffiel dissuper -milit ant -consu l -hoo ded -aby ss -b x -ma dam -lo cu -mary am -manic ure -grat is -ac tresses -ros ario -this dayin -king ly -gn ome -cel ine -r ous -he el -lil ac -vish al -ab h -thor ns -s ls -ne al -construc ting -be ren -s lang -ma ins -far ra -sar ko -pai ge -gu iller -l ala -ice berg -nou n -plann ers -u mmm -ou ses -ill ary -ma an -box ing -zi pper -srin agar -migu el -o str -mp o -responsi bly -lan terns -appli ance -x b -gren ade -neglec t -dy sle -ham mock -ne ctar -wit cher -r gv -di ence -ser bian -seed ed -cru z -bi sh -sp he -e q -sky rim -alge bra -phil ately -bungal ow -ge off -y ves -demand ed -consider ations -the vamp -pawan kalyan -co ded -grit ty -erup tion -se infeld -uni denti -ëĭ Ī -wor m -ac us -se ung -dun g -ro land -su d -di visions -ab lanc -shor test -j f -p oun -plant based -be to -tough er -mc o -don et -mark us -v fl -ðŁı ł -open ing -co ward -caber net -o xi -burle sque -sand ra -su mo -consi st -tho t -cay man -motor ola -gutier rez -d slr -y w -no bel -nov ice -moms demand -grun ge -sp or -d cc -pre sses -sli st -allot ment -voc ational -ft c -pu ja -lo ven -utt arak -tan dem -sh ep -come dians -anat om -cant wait -healthye ating -west side -mar gins -chi ang -asbe stos -stupi dity -proble matic -fit bit -: $ -ceil ings -shu a -protec tions -bio tic -beng ali -re sts -bien nale -tim o -cul min -e minent -affe ction -unbeliev ably -individu ally -canvas sing -wh itt -nov asco -chin son -h pe -go w -gloucester shire -pa o -thresh old -chev ron -s ine -we ther -pp ie -aqu ino -antwer p -âĸ ¬ -po on -inst af -equ ine -cinemato graphy -nbaf inals -vali ant -kil kenny -te rence -syste mic -sr l -p ound -made ira -pl ough -tre cht -mat ed -mp d -ransom ware -ph in -li qui -bb ce -boom er -i standwith -con ju -r te -nar a -foo lish -da shing -vier nes -br ite -da u -juni per -ai da -you now -ra zer -de i -repe ating -comfor ting -adjac ent -e to -ca sted -chat ur -mu er -syn th -san itary -mac le -independ ent -law ful -e erie -h or -ðŁĴ Ń -am rit -vel o -station ery -mu f -may may -contempl ating -elabor ate -gre gor -dri es -ac col -ภļ -schwarz enegger -ill nesses -day break -follow back -collu sion -electr onic -jo vi -hiro shima -ta w -hom ec -mic ah -qu itting -fro sting -ben fica -hel i -s ical -pic cad -corpor ate -ment orship -you are -sing er -shi va -ru ne -ing er -ri um -play able -doo p -wil low -ter re -ni p -at d -war bler -profession ally -er ase -proce ed -pedestri ans -mis chief -ben ding -alas kan -c kett -mo p -dd les -shut ter -ge ared -atene o -ma deline -g ations -o sha -der ick -sw ild -an gry -pat ents -hun k -decre ased -fr y -ðŁĴĸðŁĴĸ ðŁĴĸ -sal on -quant ities -d ario -ni gel -ku ma -jen n -happ ye -xx x -rex perience -pro s -au sch -rele ssly -ham burger -fuku shima -er ne -stat ec -ren d -may field -j one -lef ty -bern stein -sm il -gener ates -fore station -band its -ta yo -r ca -ac ci -rodri go -kn app -elo vers -vege tation -u ral -le ft -ħ ï¸ı -worl dre -sur i -embar k -w son -ba you -mu ller -mo vers -ðŁķ º -presby ter -l f -cre e -bat b -sal am -demonstr ations -an ec -n pc -it ics -to graphy -re inst -thur st -tal e -off ences -smart city -bro tha -ofthe year -in valuable -ear n -ðŁijı ðŁı½ -kre mlin -gra dy -town fc -guern sey -ma ha -contag ious -dre x -be en -( £ -nati vity -k tm -somer halder -comp ounds -íķ ĺ -" â̦ -af g -ott news -h ound -fire fly -cil an -donet sk -volunte ered -ak ira -è ª -sing ul -st h -dro wned -mand o -he ir -ðŁİīðŁİ Ī -tax is -y uki -vel d -k ans -el k -ran ts -hash tag -t eng -ro g -a at -gru b -e ber -in india -colo ssus -sig ni -so ever -mile stones -der o -differen tial -phu ket -master mind -an gh -mel ani -bro ker -actor vijay -stun ned -continu ity -af fl -vo cal -perenni al -fianc é -in complete -hun ts -re issue -domin ates -tur meric -ro am -ri on -bag ged -nas sau -fu t -x ox -national trust -jo ye -san o -hearth stone -dis respect -le es -h se -siber ian -offe e -re stock -wolf gang -re gan -plan o -un wind -re par -mil le -] , -skul l -fat ally -concep tual -ðŁĮ ² -f é -ber to -b ms -u a -mag na -notre dame -le te -la undering -heartw arming -buffe tt -go at -pe abo -wind mill -v ac -continu ally -az alea -mem brane -can cels -make yourown -athe red -p to -tor pe -ðŁĺ ł -ðŁĴ § -sc ares -le aking -z et -pix els -ac i -kh il -marath i -ðŁĻı ðŁı½ -u la -tam u -chandi garh -z agre -aa b -pronoun ced -aubre y -sand er -pun ta -har low -ic elan -celebr atory -so t -unci ation -stru ly -mc dowell -deepi ka -remin ders -my stical -ct c -chat ted -s ica -bar gains -ch hat -ru bin -m net -oiland gas -pel ican -o at -mor ality -k our -i h -nu clear -gc u -ric her -vene zia -m ma -le ith -ac company -rich mond -sports net -ba ahu -smu ggling -mm i -ðŁĩ®ðŁĩ ª -twi sts -sahi b -.... . -amb itions -il lo -histor ical -fo rec -show biz -pon ies -chas ers -remo del -will ing -prince sses -am ple -cushi ons -ac les -lot r -da ch -an the -in corporate -new bury -ki ri -fried rich -ab v -ball ers -alber t -ðŁij Ń -let i -nan op -ci de -anal o -n sf -)) )) -griffi ths -valen ci -ro ano -fun run -babys itting -ca day -ent re -u ck -slu g -tic al -the sims -ro ar -car ney -g am -sto we -fi d -bun ny -sham rock -pe cu -mol ina -go cougs -con tributes -transform ation -mo y -v aj -sever y -antioxid ants -thir teen -sight seeing -l j -reversi ble -odd ly -hoo kah -nou vel -hal al -fe i -stab les -mul t -ho pped -bra ids -inter change -ghana ian -ww ww -eth no -con junction -ago v -ye ti -earth and -ts p -con serve -heir loom -metaph or -woo f -tor io -self less -n wa -em ilia -yl ene -y xe -gi ar -moder ating -pro bz -b fi -ne er -du mmy -hanuk kah -we bber -k v -eye brow -dag ger -su mp -ra ges -ork ney -tb o -hal sey -assign ments -tr onic -scri b -co on -an war -# âĢİ -jal ape -flori da -qu aid -haw keyes -âĻ¡ âĻ¡ -street car -ro g -dat lantic -gran ola -un changed -expect ation -Ù ĩ -mar lin -gu mmy -ðŁĻı ðŁı¾ -awareness month -oil painting -mu th -per ch -jun to -villa gers -mor g -che ated -web comic -the future -d ps -la kings -men tioning -vo or -ident ities -accor d -mc gu -l pga -rum our -massi vely -m pls -heal y -d ate -sp oli -re visited -on t -al and -scru tiny -lakel and -bl ending -< / -an kara -jami edor -metab olic -f ences -ann y -å ħ -semic on -oo tt -space ship -wack y -le ta -ap ac -she e -in herit -do res -ðŁĩ¨ðŁĩ ¦ -gent e -tw ick -ri ms -gal ve -de ville -king fisher -scorpi o -ow l -al ar -vari an -ðŁĹ ĵ -vene tian -star dust -then orth -q ing -har rington -consul ate -spectac le -ho bbs -tur ks -gre er -mat ing -ðŁİ Ģ -ðŁĮ Ģ -direc ts -í ĭ -pompe o -vo iced -la os -tz u -pro me -pri sm -mer c -fortun ately -bc fc -mcdon nell -not sorry -smi led -t ba -for war -mid term -dar by -we instein -up grading -wol ff -bron co -cab ello -ðŁ¥ ĩ -fi able -shar pe -bat tered -sat o -myth ical -instap ic -pre pped -eni um -e spo -di aper -explan ations -who pping -ragn ar -pe el -antibio tic -l acks -harri son -li sm -au l -qu ail -martin a -sent encing -sc ams -di di -tr onics -ãħł ãħł -go ff -za in -param ore -cha ined -clin ton -li ff -cott ages -em on -reve rend -consu mer -ce an -t any -lum pur -e bay -sto ol -ðŁĺ» ðŁĺ» -ta pro -h ath -modern art -just ine -prover b -app y -tra x -mani fest -am bu -nai k -pe pp -r sd -mer chants -kitch ener -shi fted -li zz -âĺħâĺħ âĺħâĺħ -âĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ -uto pia -tom o -ou ted -com ers -chiroprac tic -book club -cin dy -pro hibition -se uss -ë¯ ¼ -thin kin -rr rr -go fund -t ack -om b -catastro phic -ling u -guild ford -bo td -ॠĭ -plan ter -^ ^ -win k -kath mandu -sto ppers -smooth ies -re efs -hin d -bell amy -Ħ ë -waste water -vo or -nat l -! ] -re el -y ap -scoo by -work space -corin thians -bl un -obli gation -g bbo -dy son -cra vings -ell ington -dap l -wre xham -earthand clouds -uk runchat -positi oned -kal b -four square -jo ck -im pending -even ing -ath y -pro claimed -c ites -ann apolis -san i -mar th -ir l -accom mo -ka a -fin a -y aa -di sper -ec ar -bha k -will y -ðŁĺĢ ðŁĺĢ -mcder mott -mo j -gener ational -u said -train ing -lon ely -lo res -impe cc -âĢ IJ -beav ers -ma ki -he b -aap l -å ı -wolver hampton -leader board -me u -c fa -easter n -hu r -civil war -ou rage -hor ned -le high -awar ds -evi dent -gi gab -r ous -ma del -ro byn -ur gently -k ors -en as -heis man -bam bam -fab ian -f om -evalu ating -assemb ly -out sourcing -hun tsville -ðŁĶ ª -justi fied -cashi er -sp aper -buc keye -analy tical -illumin ati -au tho -o j -sha de -geel ong -wh ey -he aton -terri bly -ele k -un charted -sd live -moto cross -her mes -dar shan -dar lington -cash mere -gri pping -cilan tro -pun ish -... : -ðŁĴ Ħ -inst ance -der i -lo bal -muk her -sp ar -thin ker -fre mont -com piled -color ado -vig ne -sm d -whe ad -villa ge -le ek -formula e -ta res -persist ence -?? ???? -ped ago -he z -alzheim ers -vul ture -off ence -is great -suff ra -kick in -h mmmm -broad way -ï¸ı @ -art i -alli son -endor ses -ry u -lolli pop -soy bean -kend all -cer a -inv ade -( ðŁĵ·: -conver ter -car pets -ho bo -fr it -pe ac -es qu -ern an -ou f -an il -di ffer -ch ing -bre cht -sp g -daven port -stra va -sever n -n gos -stor ians -fe te -parame dic -j hb -al amo -sne aking -gold coast -roof s -isi l -depic ted -projec tions -nu mb -o ss -ep i -glu cose -zid ane -infin iti -íĺ Ħ -ran som -ton ics -fal k -g ler -ou tw -re ss -week ly -the on -n ole -ðŁĩªðŁĩ º -vol ley -sum mar -neg ativity -sam son -ye w -aus votes -ju l -ju dy -f art -pra yed -pal ate -multicul tural -double header -cycl ones -pier re -ãģ ¨ -âĺ łï¸ı -rt w -conver ting -wir ral -l ari -ir relevant -austin mahone -an che -ya an -sd f -$ . -explo ding -ulti mate -prof ici -gofund me -cell ence -ep stein -bul lied -sep tic -à® ¤ -lu mber -cu ff -vsco cam -pl or -ภ¥ -se ok -ro to -venezu elan -sor ta -spir ited -daniel padilla -team sisd -radio active -icelan dic -ðŁĴ ¤ -ver e -accommo date -shi pp -ot ter -ol ina -e go -su la -san antonio -de as -simil arities -âļ ¾ -y om -bro ward -å ° -can cun -veri fy -on te -candle light -ìł ķ -inf ants -az am -ðŁĺ ° -le ven -un stable -bloom ington -x ford -con tour -y p -innov ator -histor ies -po y -lolo lol -ex pires -cat alo -bill boards -an ab -el ic -novasco tia -fa ire -ìĿ ´ -rock well -gr ille -az tec -joh or -ur struly -fi ren -dun lop -id le -port man -jo es -tx hsfb -hol m -cham ele -under world -lo ss -ti em -therap ists -past ure -pa ste -ing now -vul can -ra gon -lar kin -o shi -ho co -child hood -umb rel -success or -kath y -iz en -° ï¸ı -share holders -ol ga -ai b -he ap -fl aming -ro u -air tel -rat t -z ane -vo w -thor ough -sn ag -par th -un conscious -ve y -new release -gh ee -croati an -facilit ating -swan son -astor ia -to logy -master y -ðŁ¤ ij -bil bao -trou pe -the ori -chey enne -ro tt -shore line -gra sso -master chef -+ ) -vi x -ellen show -as g -an ak -ku ya -safar ilive -debu ting -blu m -list ener -v ins -book shelf -smart cities -makeyourown lane -; ; -ðŁIJ ¯ -ri zz -on ward -bull dog -bear ish -vir uses -fri gh -lin den -we iser -sn t -gon a -dre sden -fl anders -cu k -wheel ing -ba u -atu esday -surf ers -swi ft -mc call -arbitr ation -aw d -mon c -b ine -at x -re fr -mi ro -po sey -n are -rit ter -âģ ¦ -play book -blow out -sports manship -s oooooo -malay alam -gri ms -bur bank -infin ity -sar gent -oit nb -joseph ine -ski pping -par kin -excur sion -semin ars -jo har -par tridge -post game -ll ll -blan che -temp ting -m na -lu ka -is ers -to ffee -bar ron -he mmings -sa e -go hawks -cu pid -li mbs -con se -un common -z ada -head shot -so ils -pione er -mam ma -sem itic -pan dey -jamiedor nan -spl its -vel a -son i -ra ff -t mobile -âŀ ĸ -pra wns -lit er -enjo yment -egg plant -tu b -cultur al -us ic -suspici on -sy cam -summ ed -ma du -ho ck -up wards -eye ing -ri ve -assas sins -âĤ ¬ -out fy -chi ves -t ner -la is -por ridge -sad dest -w cc -vick i -sna ils -biz italk -mill an -ðŁĮ į -sam oa -j ing -mi key -gu j -chel ms -eli gibility -arma da -thro p -surger ies -ãĤ ¿ -mo hawk -ex its -me m -is lington -c me -land fill -kait lyn -ðŁİ ¼ -combin ations -tomorrow land -ver b -cor a -pre cisely -na om -ðŁĨ ķ -shr ink -sof tly -merce de -mand el -poo dle -ball erina -sop h -jux ta -y at -ary an -hesit ate -lo wered -gu lar -dungeon sand -ron an -my ri -sp f -men opau -gra sp -pa thi -fe asi -fla w -shi story -ste ward -gg le -fay re -cli que -credi bility -yo g -sec tion -mu sko -se ville -no tt -cal m -mate o -indic ted -fi ba -by l -lin o -u kin -!! # -enig ma -siri us -bu sc -ðŁį Ĭ -mac kerel -psal ms -a at -tomorrow spaper -ðŁĺ ĸ -p fc -........ ... -shre k -mul let -o sh -danger ously -immen sely -am ur -ðŁį Ĥ -pro por -sy a -london marathon -abo ve -obli gatory -pro v -ra cha -alex is -pri mary -sh h -ether net -d stv -cou gar -un lucky -ni l -steak house -mel a -fc bayern -cause way -ca therine -fluore scent -nx t -to kyo -au sp -releg ation -qui zz -shored itch -proud tobe -promo s -inter acting -home brew -da esh -w pg -stead ily -provin ces -bal lots -i ah -al to -< << -you u -ri ley -prefe rence -tra verse -incen se -am munition -ho dges -# @ -hail state -tart an -witch craft -vent ilation -liber tarian -! â̦ -ow es -% ! -ong chang -bru shing -le ic -fi ber -under attack -down load -ex pir -hy o -pompe y -mc bride -y ag -stre e -com bat -ten ding -ai ra -gug gen -ab ra -in na -fli ps -aw al -m ach -dol lar -inspir ations -z um -o du -it ty -video game -aqu aman -har u -bel fast -je b -but ch -us gs -calcu lus -go yal -mor gen -x finity -stand up -contrac ep -sab re -na be -in secure -gener ously -epit ome -l w -t ca -narr atives -don nell -pand as -ber gh -tu t -ker al -fel icity -br ampton -quinte t -nom ore -ðŁĶ ij -lo i -alham dulil -ðŁĶ¥ ðŁĶĹ -ston er -shaw l -clin ical -bren dan -gon e -fla wed -tri ppy -j g -al location -po aching -ve vo -mo cks -lef tist -bon uses -condem ned -abil ity -st ating -microbi ome -bio logist -for you -wahl berg -ss or -ift ar -w ul -ÑĦ оÑĤ -pom er -me me -ver te -tre ll -tra it -in let -hormon es -deliber ately -vill ar -battle ship -p bl -tw enti -ho kies -dal ail -say a -may fair -han s -die ts -⾨ ⾨ -od in -hot spur -pap i -k ana -k amp -fin na -flo tus -ti ans -unic orns -tribe ca -chang ers -fore ground -out a -inv aders -gett ys -tomorrowspaper stoday -mac millan -hand written -w fp -u de -state of -base d -âĺģ ï¸ı -cas m -psy ched -histor ians -fol d -d da -ag grav -p ans -green way -au sv -ðŁĺ ¶ -shradd ha -inde x -be sti -zim mer -t ness -eye shadow -ot te -go ts -distribu ting -pro min -yo l -ace a -tram rahim -hoo per -supre me -jam min -intu itive -quali fications -sli m -sid di -jay ne -tri pping -g tx -pun s -e manuel -om g -mid summer -in to -succul ent -ri en -new mexico -o or -hoo king -in f -ðŁ¤ Ŀ -flir ting -na hi -g friend -t ps -hel ix -z s -on ie -ct f -kri s -irresi stible -fla p -ðŁijıðŁı» ðŁijıðŁı» -us wnt -ru d -ram ps -pin oy -ot w -lol z -low ering -favor ite -t mc -phra ses -her mi -aver aging -em br -ben o -estu ary -sle eve -ribb ons -ta sh -ภ¹ -x f -aw gs -sun ited -brew eries -anir ud -pun ches -ol die -ip ads -wi fey -land lords -d ji -gun ner -íķ ´ -tex an -ex op -cas sandra -s off -ðŁļ « -igh ton -bak ers -awareness week -v all -ear p -bts bbmas -apologi zes -âļĵ ï¸ı -was ps -states man -snat ch -watch dog -ra fi -after party -spi ke -j er -peri ph -r nc -mu ll -le en -shi es -li eu -urstruly mahesh -mer ton -de sai -shi f -ðŁĮ ± -pe dic -gos ling -arrang ing -ww g -gen y -you uu -netfli x -e ttes -k wi -bernar dino -am iga -Ø ¨ -kashmir i -t ings -emer itus -de cat -ab domin -dc i -pha ses -d jan -be am -op ry -i shed -the ellenshow -the st -habit ats -to ons -mclau ghlin -ri pper -micro biology -tal aga -clu eless -ss u -cro che -bro mance -longe vity -zagre b -prev ented -tra ve -spo ilt -darry l -migra ine -al cat -dd dd -vi v -ser pent -mat tel -jam a -con quest -î Ħ -sam sung -presbyter ian -ket ch -fire fox -mo tif -le c -cho pping -cher no -j ann -ðŁIJ ° -pro lon -wake up -conver gence -mersey side -heart broken -lo oming -hal lucin -mai ze -commun ism -mo h -twitter storians -serge y -res eller -favor able -ed gy -re iter -mal aga -live me -ka hn -pul sion -big g -kim kardashian -ati o -tyr anny -ru ption -q ant -pro ven -by z -pu shaw -kri stin -e er -tar dis -ri z -awak en -mi ko -un documented -path finder -indirec t -resemb les -h ler -conce aled -scand al -re im -d nb -cr itters -attend ant -apprentice ships -aa u -scre amed -l su -fa h -har bour -ed d -bat sman -li ss -mi sha -spani el -it f -advan cement -fa c -close up -cecil ia -medi c -narcis si -lav ish -gi ac -ma ys -le it -wine wednesday -pushaw ard -let to -curren ts -bug atti -out ine -w j -un do -ler osis -devo tional -ðŁij « -on na -fais al -sa una -himach al -am ii -à® ® -di zzy -screen writing -ph x -sp n -ick i -ag irl -fi shes -wb z -pi m -bo ar -ac id -! .. -rocke feller -n ga -dra stically -simpli fy -dru mming -autum nal -gur mee -lor de -jo ann -give up -b our -am ura -der land -sim pler -wat son -tri dent -concor dia -bel lum -bre k -dum plings -vi on -dungeonsand dragons -sp ri -ascen sion -wil datlantic -u st -rob ins -legi on -insi st -jar o -gue ss -so b -bigh it -pool side -negoti ating -mc gill -bil d -techn icians -miti gation -ajay devgn -b to -ant en -cosmo politan -ðŁĺĬðŁĺĬ ðŁĺĬðŁĺĬ -patri oti -temp er -promen ade -nav ajo -nam m -wrink les -dc fc -le ach -bru nette -r f -cout inho -al ti -tradition ally -op tome -na z -accord ingly -rec ard -de ets -sw ell -po sure -whit ening -strang er -illi on -here ford -u wu -ro bber -cotsw olds -cl en -gor ge -nam aste -re lish -gri ff -adren aline -bla sio -val e -ê ² -toler ate -rail minindia -jen sen -ho ven -el lu -ob sole -eisen hower -unidenti fied -than niversary -body guard -Ø ¯ -i dge -sch al -stock port -sn i -re taining -po po -pix ie -oli thic -ki er -ha jj -sa z -cor bin -!!!! !!!!!! -v it -me gat -de h -circu it -af fleck -theore tical -hope less -u ab -slu mp -b ice -jam med -let stalk -can i -side ways -labyrin th -re fs -ha hn -jare d -ðŁį ¹ -jam bo -ph yl -enhan cement -c tr -ful lest -se ye -do ba -cho ic -yo s -cb j -andr é -re watch -pri ma -doctr ine -for gets -u hm -ar ound -u le -art lovers -shi raz -har th -ex tor -Å ¡ -unexpec tedly -eli us -y x -em my -se ac -ðŁijĩðŁijĩ ðŁijĩ -correc ted -com bu -wom anc -cou gh -what son -publi shes -divers ity -back bone -lock down -mesmeri zing -nor te -ma b -desig ner -í ģ -ra gh -mole cules -get outside -the beatles -semicon duc -nach o -lun es -ham mers -sul tan -o on -fe ren -att ach -ar qu -uttarak hand -s ash -; - -tre ad -i ko -ar thur -scandin avian -r ation -ga el -charge able -fish y -v ma -hand bags -char a -ay ne -de fam -sett lers -qad ri -pal ais -in wx -apocaly ptic -poo ja -a es -at ories -proof ing -n lp -ts la -v ina -li do -dee phouse -informat ics -v v -pp ings -di ss -à ¯ -uhur u -st ony -betra yed -b aff -my ra -as pen -allow ance -tam ara -ci f -cor bett -ser ge -di go -ambi gu -pain ters -p cr -p ca -nom s -lo ft -ve e -opend ata -ðŁIJ ± -alex andre -identi fies -fantasy football -re production -brom ley -ware agle -mm er -p ss -cu es -ay at -hut chinson -sar ac -jack man -ira h -ap ink -col s -aussi es -ex ecs -day ton -ðŁĻ Ĩ -im v -har am -chuck le -authent icity -ar do -incub ator -ภª -photo shopped -embrac ed -fight for -gor man -zz zz -schol astic -cri sps -te apo -mid night -ga ine -col lier -s ate -de tte -å Ń -imag ine -i ff -tw ili -i fication -teat ro -nor ma -es ur -emergen cies -rise up -r inger -hass le -cait lyn -tranqu il -vers a -se b -over look -gin i -bo go -se re -may ne -henri k -contamin ated -rhapso dy -pro portion -wildatlantic way -âģ© . -organis ers -tran e -stand ard -sper m -laun cher -ric ci -her ts -paper work -showcas ed -mer yl -pen a -p imp -disa strous -^. ^ -phar a -x is -fron tal -sw irl -sp ills -swag ger -smart watch -sizz ling -savi our -cat ar -bb cr -refurbi shment -dr is -citro en -absor b -patrioti sm -il leg -chro mo -fresh ers -ru s -lim iting -ef ish -down ed -man dir -hazel nut -p all -mac on -disappear ing -quali fies -bo on -bar racks -am ine -gen dere -ðŁļ ĺ -j es -ãĥ Ń -qu ito -middle weight -sch au -quad ru -aci ones -limit less -ðŁijĮ ðŁı½ -ch man -ar av -regulat ors -it up -batter sea -mil ford -g z -tic king -gh ou -cru shes -tu tu -dread ful -fam ine -for change -dalail ama -ðŁĴ į -whit aker -hash mi -h us -vo d -bet te -aa ah -iso o -ðŁ¥ Ī -ha ar -la ine -b v -all day -spr out -indie games -free bie -gree ks -but ler -ill in -ha al -ware ness -si ma -public health -gam a -wa a -oun g -goo oo -okin awa -off enders -im pose -ho c -young ster -story teller -sc ap -figh ter -+ , -whit es -music monday -re za -go ducks -bri a -mi um -cas per -cru mbs -a ad -marti alarts -ch p -ri gged -tn g -harve sted -sa k -do jo -mill wall -b nw -oc d -histor yof -t mr -si rens -fan ci -caregi vers -vir a -son i -recur ring -acknowle dged -ðŁı Ł -oph ile -bu cky -stre ssing -roo k -di gger -vi val -san do -fle et -si ers -sel caday -refre shed -anti fa -a que -po lo -disappear ance -de mb -âĮļ ï¸ı -ren ted -ber ger -g mb -cu la -ss al -goo dy -u hh -marcel o -w anna -soft ware -shop small -turt le -tom as -fri sco -ðŁĺį ðŁĴķ -jim enez -c su -day z -an do -wyn ne -choreo grapher -cerv ical -trail blazers -ed g -zend aya -travel blog -el s -whole some -co g -lab out -ar ney -del le -su isse -ma si -ine se -om be -fi ddle -re claim -pa u -wat cher -sla in -ber ty -opti mum -el ites -min is -tur key -patro ls -ger ard -au reli -wild ly -wal tz -br gy -w ob -cre st -+ ++ -ve z -fro sted -davi do -the x -param edics -p into -han k -du pont -ur g -fo stering -micro poetry -spec tre ----- > -ne uro -fri da -music al -galve ston -e ffic -sc ape -pal azzo -th all -pro visional -p js -au re -ðŁĶ ľ -mam amoo -kit ties -cre e -wa k -lo ool -lu pus -cn blue -à º -ðŁİ ¬ -rac ed -tro se -om as -stri de -co ors -⤠µï¸ı -in comparable -cy ril -broad er -arec lipse -ðŁį Ķ -inter val -ti ru -co working -w aco -a ham -a bee -flouri sh -the times -ol ini -kick boxing -lu cer -at la -as un -casser ole -mi aw -lobb ying -jan ice -cir que -re flex -le ary -sanat omy -tem pest -se mb -mur dering -us av -ro bo -on et -p cc -nati ves -life of -sa ha -ruth less -rel ates -appeti zer -pye ongchang -nor d -er u -a thing -ug ly -pl ying -bran ce -organ ise -kend ra -dat o -chees es -par ma -burn out -a stra -pre toria -adjust ment -uk u -sl o -li ken -fav ors -cli ve -be ets -snow donia -go tv -sy n -open house -pan i -portra yed -sl ated -me cca -ren al -supportsmall streamers -staf fs -da o -bi ker -vik tor -tit us -admi red -ðŁĵ ± -hurric an -he ats -gl ory -photo genic -mer i -de por -burn ham -or angu -dj ing -impre ssionism -ign ition -ca i -w ynn -de pe -cove ted -colla gen -sau s -or nam -administr ators -ss on -nh politics -hahahaha hahahaha -aspir ations -r gb -swol len -so we -sc r -diver gent -hou ghton -han oi -d ory -ni ki -land ry -b cci -ðŁijĮ ðŁijĮ -is mail -tri pod -her d -bhat t -dress age -tab by -ingu ish -hur on -à³ į -à ł -to das -evangel ical -chor ds -st john -slo ppy -marty r -face book -ali ght -sen sei -kath niel -r ites -zi one -u o -revel ations -weight lifting -pan o -nc wx -ac ton -à® ķ -Ø ² -som a -à¸ Ĺ -respec ting -mar che -fore man -be tty -ki k -shi bu -po on -argy le -k swx -et z -mar bella -brac kets -stand by -fire side -defi ance -v ex -britanni a -in habit -appo int -piyu sh -le ash -sci ento -fla sk -sen na -> : -at roc -sand erson -id lib -dhan ush -ðŁĺ Ļ -en thr -hit ch -de dly -al ley -dor k -mon do -cudd ly -mis sin -ye sss -night ing -j pn -w ary -ump ire -ma z -ê ³ -bab s -ĭ ãģ -stan ford -posse ssed -exce eded -ðŁĶ ¶ -wall art -tra p -j il -hi bis -sp ying -scri be -khali l -trans lator -lu mb -di zed -ch c -super vision -shut ter -ja g -_ * -yester days -ms f -hi hi -gonz aga -gille spie -vive k -ec static -this morning -ch us -ed es -ston ed -be es -ðŁĩ¹ ðŁĩ -tur in -ho ver -at rics -ster n -sam heughan -auti sm -mi ya -eye witness -writ ings -travel tips -chut ney -px rtg -keny ans -my stic -k rit -/ $ -red head -world ly -am us -op la -le ve -gab bana -se en -o clock -gang a -keen an -sc ent -ol dies -go green -corner stone -comp ly -con cours -ðŁİ¶ ðŁİ¶ -ha an -con fis -aw son -cle op -î Ģ -su zu -sau té -al gar -subscri ber -este emed -ãĤ¤ ãĥ -worth while -mel rose -flo ck -bri ghtly -viol inist -p ere -sli pping -and co -si gh -ha van -cu lo -m sa -fibro sis -matil da -ra fting -aw ard -ë ª -mm mm -ge aux -ste iner -sin n -help ers -beet les -ai mee -tai wan -pistachi o -mac beth -m zan -descend ants -on sale -in r -il m -grou se -sa ig -mo w -bi gre -adjust ments -tu la -mathe w -transl ates -mu h -bol lah -ðŁĴĽ ðŁĴĻ -amo res -ab outs -bomb shell -bla ster -x avi -s ns -k roger -ga ther -erad ic -daf t -chem o -ben ches -ðŁĩ© ðŁĩ -ut v -our a -n ko -gator ade -biaf ra -ok state -im danielpadilla -dom ains -open ingday -kid do -do i -ric e -day care -mac millan -ba thurst -cheer leading -ðŁ¦ ģ -cash back -k won -hob bies -exem pl -ries ling -âļ ª -ag les -ny s -every thing -nav is -ad di -magne sium -faceli ft -ark ham -grand es -extre mist -don at -vit ality -pump kin -be tta -sl td -arti san -li by -pe aked -ah hhhh -mary am -assi m -un sc -ment e -al aya -low ers -ar as -gri ev -le ip -gr ati -cri ses -spr ints -exe cute -w to -ms d -mag ical -re viewer -spark les -juke box -ðŁĺĤ âĿ¤ï¸ı -pay back -licen ses -dun kin -bel t -lake wood -h ateful -bud gets -rev amped -ph erson -ky iv -went worth -ro sen -cru ise -gi ggle -def star -assassin scre -ym outh -win kle -w fc -band wagon -b kk -w iring -kear ney -south side -pe tit -! ðŁĺį -nor dic -mir za -mu gabe -v l -scon es -k tv -sand al -du c -m alls -ðŁĴŀ ðŁĴŀ -it c -al ay -im pair -un rest -flo ss -c é -ab ou -var ying -muse o -ser ver -di ya -hibis cus -ero y -mer ritt -fin dom -f pp -un usually -go tt -conting ent -ali aa -ball on -jo l -hi ked -zy me -ay r -ag n -ga z -perio dic -spar ty -practi sing -lin ton -tal is -cy pri -womanin biz -radio disney -ðŁĮ ¼ -jump ers -endo cr -ðŁļ¨ ðŁļ¨ -and on -shar apo -mi er -ma sonic -fac tories -vi en -bb ers -ìĽ IJ -hol d -ke bab -be ak -approach ed -ac milan -mun ro -ko sher -excell ency -negoti ation -walt disneyworld -cr ouch -te asing -suppre ssion -en ya -b ce -transformation tuesday -cal lie -vis was -p gat -ic ted -end ings -esc u -recru ited -it fc -collabor ations -g ino -snu ck -ausch witz -i fc -x ii -ke sha -ger vais -clo ak -x l -sa ad -prob ation -pre cau -mac in -anasta si -le k -e azy -daysof code -mariah carey -yo g -stit ched -boy friends -sh ar -ph ile -ag u -twin kle -phi shing -week ender -ic ton -gurmee tramrahim -al ton -l eness -all an -pen ultimate -kry stal -go u -lan de -dis mant -ab using -nor se -pat erson -ed mun -ap an -xi umin -sk el -cat walk -re act -wal led -t angle -br yn -ve to -super moon -cas ablanc -appreci ates -ski d -bo th -catal ina -ele ague -cyber monday -cau tious -ðŁ¤ ĵ -nov o -hamp ton -ha ye -jose f -var an -lo bos -roano ke -orph ans -tt in -squ ads -ishqba aaz -black panther -e tu -k sh -cru mble -cess na -reli eved -scul ly -pollin ators -explore canada -ki es -kam loops -kir an -pri mal -sett lements -hot spot -brain storming -ce dric -bi ennial -sh ant -âĻ¡âĻ¡ âĻ¡ -do on -hear n -walk way -fe m -ve al -deport ation -tox ins -elimin ating -descen ding -by the -bla sphe -ha sta -comple ment -as cent -ri ga -provo st -âĸ ª -wee ping -anti semitism -employe e -unearth ed -pin o -natali e -bla d -ang ola -lock heed -in ian -ag r -ni ster -im pala -m ke -fan atic -âĺħ âĺħ -ðŁij ¸ -lu ch -simpli fied -gall ery -econom ic -cy borg -con i -sel ma -in ception -ko ala -dv ds -cre sted -m mor -visi ble -n sd -ðŁĻĮ ðŁı½ -w under -refriger ator -re opening -e era -carou sel -as p -balli stic -victor y -mo tive -tre y -sharapo va -si i -mon ter -int end -west chester -sp e -cy mb -vi dal -ll ama -uni v -fin er -crafts manship -jazz fest -b ch -ag gio -n cc -lamb da -tranqu ility -cis co -ba den -so bbing -of i -go ta -ru mored -war med -ore an -ac ton -mar ci -gh ani -âľ ĵ -as sorted -pembro ke -pen elope -da f -at ty -aim o -pretz el -carni val -than os -ko chi -mer sal -ham radio -ar twit -cas c -guer rilla -kush ner -k app -al ise -todd lers -steward ship -o tti -ter ri -tem pe -rest less -vit o -zay ed -rsp b -pi on -hi ppo -haw thorne -in as -am ily -nut cracker -lo p -d ali -tro pic -ðŁ¤ ł -ul o -jare dle -py rene -pale o -usa ir -m ould -it ated -gene tically -biom ass -ðŁĩ³ðŁĩ ± -do dd -practic ed -monarch s -un manned -m buhari -am al -photo gra -ko ol -bren don -ju ices -cu re -world bank -poin ters -ðŁĴ Ŀ -tur f -le ds -bor ussia -bapti sm -warwick shire -moun ts -gay o -be gg -co pied -asi ans -k g -moder nist -gi d -front man -concentr ated -y t -sc avenger -iron ically -adi c -ps n -ðŁ¥ ī -cultur ally -yu v -mac arthur -fertili zer -be withyou -ri gor -min ors -z oning -âĸ ł -ri r -adole scent -vin ny -ren g -sand stone -gu et -we sth -ple dged -lac ed -sp ide -v ai -ty coon -seiz ure -du p -appalach ian -ro k -cathol ics -sey chel -posse ss -la ger -jo di -cham p -stra s -d ina -cent uri -cal der -blur ay -ðŁĩ¨ðŁĩ ³ -mo do -an nette -youtu bers -chap s -ang ling -label ing -a qui -pk wy -ly le -bi sexual -lit ur -dug out -li bby -grey sanatomy -sub stances -august us -rall ying -fi del -ing ue -äº º -hallmark channel -tooth brush -m á -adi rond -ag gi -ðŁĵį : -cru sade -tax ation -k z -i ver -dou bling -room ie -wa b -en rolled -az on -a ju -grand children -as df -ðŁ¥ º -mat ic -ough ton -utili ze -ðŁĴ £ -pon der -rais in -dys function -co bain -butter nut -e man -su red -dri an -and friends -with the -on omy -heine ken -bri dal -leader ship -pyram ids -deutsch land -jo cel -bo wel -y qr -horse power -be acon -ing eni -gra dient -fer mented -mo om -thing y -pot assi -wrist band -bor d -bo died -ðŁĺŃ ðŁĺį -ma pp -ka u -cyber punk -ph ish -loo king -co ates -ap ur -am ie -uk labour -at in -g la -adop table -shel by -v illi -ri ya -m ingly -cli mber -bumble bee -ðŁĺ ¸ -c sd -âĿ ¥ -hospit alized -c ki -hat er -ch r -re tina -it a -fan base -beat rice -gwy ne -go ss -fo s -favor ited -swachhb harat -mal ade -mon mouth -" [ -si van -sh hh -command ing -sains burys -wee d -g man -ss w -rep tile -iv y -tro pics -roll ers -over cast -ex position -masquer ade -man crush -wa ist -spr inter -sle et -le vin -j pg -_ ( -o pel -explo it -ap a -po we -wrec king -jong in -or b -er ick -bo sco -pra ising -ber tr -to wing -in security -ku t -resto cked -rr p -prescri bed -trafal gar -per t -g ases -app rais -g har -music als -âĸ¬ âĸ¬ -mc fad -ag ony -conditi on -equi p -shi k -atra vel -ðŁĩ¿ ðŁĩ¦ -ke h -abduc tion -pe oria -wil kins -g ms -as d -ev i -ðŁĴĹ ðŁĴĹðŁĴĹ -u z -mo c -halle lujah -guad alu -lou vre -dra wing -go ve -ph ant -fri e -web dev -program mer -z able -games com -clari fy -li th -kin ky -âĿ £ -labour doorstep -son ata -ju ris -mai den -vi adu -buch arest -conditi oned -capit alist -u de -ps b -sp ca -lul la -footh ills -kay o -bon d -wom b -roun der -ce sar -bur sts -ap ra -sw oon -sab rin -fra grant -cle arer -ku brick -cli max -jour no -ag le -ðŁı½ âĢįâĻĢï¸ı -poo ch -hal e -sol it -sal mon -organis ms -bron son -art en -hodg son -alo ve -vent ure -bb i -ae a -ðŁIJ ¢ -ld n -d nr -o zone -el las -man ny -azz ur -un beat -tru ffles -th ong -ma ñ -las ers -ley e -gettys burg -back packs -or is -ma ison -craw ling -la bra -cl ing -dra gging -ste al -dou bt -de van -ck ers -agent sof -photo bomb -elon musk -abo y -dist ances -story line -sp i -nor than -europe ans -wh ale -ser pent -ðŁļ ² -fi or -tr it -ox o -awar ding -class mate -su fc -smar test -rich es -pr k -big foot -ar mb -bi polar -dw elling -om ars -k wan -gri me -m eng -freder ick -navar ro -sorry notsorry -jaredle to -pa ve -sl ack -barn sley -att ar -evic tion -accumul ation -o ir -cat chy -wel ter -vik as -has see -nik ita -mo yes -mathe ws -shi v -gat wick -pro filing -compan ions -mar rake -an tics -ðŁĻĮðŁĻĮ ðŁĻĮ -se se -bo i -bart lett -poison ous -ab uses -ym m -kam pala -guggen heim -imv kohli -dol om -bre e -thro ttle -gare th -fitz patrick -un ya -par ad -mar got -j nr -we a -potassi um -p nc -disgu ised -cra sh -ren ergy -ill ic -coup led -ni els -ci ones -æĹ ¥ -im ent -despic able -d ye -what cha -conne ctions -paralym pics -gaunt let -wait rose -suici dal -star ship -vap or -st ou -law maker -coo led -si mo -then o -offro ad -ja den -bas que -vick y -lu kaku -centr o -tri sh -strate gist -medic ations -hor st -b fc -gra il -sharp ly -ad itya -tom b -kau fman -tri pad -sam ba -pastor al -brit ney -sag an -hill side -mas ons -sar a -z one -x u -to tes -rob bie -app en -mon tag -der o -short film -charis matic -tat ors -ki ba -and ri -al arming -split ting -ic ar -th ug -scari est -sylve ster -an an -u trecht -a difference -me ade -bu ster -air strikes -cu ffs -account ants -ðŁĺ¡ ðŁĺ¡ -new t -bo tt -issu ing -cl ancy -wwen etwork -kyu hyun -rese mble -pajam as -sin k -kin ney -sul ph -or k -li es -la gh -or ton -ra hul -d sc -we will -re am -collo qui -shar ia -hec tic -sar casm -land er -tm z -endor f -ro z -ham mered -fri s -w adi -pope francis -he it -flash light -un born -op es -hol iness -ðŁIJ ¦ -nach t -im sa -gr acing -bj p -ver ts -c sc -home owner -a que -bigo try -anni e -bag h -âĿ¤ï¸ı ðŁĺį -car i -thom p -dispo sable -cardio logy -pat ented -hh hhhh -ld r -stephen son -cro res -fan ning -cli mat -ðŁijį ðŁijįðŁijį -ðŁijį ðŁı¼ -aer on -piccad illy -bank rupt -sil via -emplo y -don ny -commen ting -screen writer -io ta -ce an -anc ers -tu an -street wear -ठ¯ -sk ine -esp a -asi f -os ce -she ppard -more cam -bott le -der s -orac le -google play -aver aged -edmon ton -steph an -sister hood -cru sted -stag gering -methodo logy -congress woman -c abo -tri ggers -mil ky -gli de -tooth paste -room mates -nu ff -gu am -sprink les -alternati ve -wat fordfc -uof t -hal ey -cont acted -bun dy -pro stitu -gh ar -pre ston -on site -hil ar -g ts -c att -hamp stead -? ?! -ðŁĩ§ ðŁĩ -bbc qt -aless andro -resi st -ma idan -t ko -shad ing -pin up -gal lo -sin u -at ec -fun k -ac lu -stri des -rhy me -wet land -bbc springwatch -t ins -wild card -st our -flamen co -pau la -onto logy -gang sta -am ade -ãĤ « -t bs -skelet al -run ner -jard in -harri er -hun ted -z hen -believein film -de mean -au diti -re start -chon dri -âĿ¤ï¸ı ðŁĴĻ -mcla ren -ga b -sh um -au sa -lewi sham -y pg -k jv -fur nished -dor o -bon ded -mor ty -lat itude -_ ) -lo va -water ways -vin ai -shor th -drun k -c ay -ay ana -kap lan -capp uccino -spr o -life boat -has bro -spol ice -tor on -do ing -dam n -sh ree -foun tains -ent ation -mar u -boar der -to pless -j ada -chan ning -ul ls -en closure -gib son -fractu red -brit ton -à ¶ -t ous -por th -dra f -tra iling -mar gate -eli fe -down ward -lin n -gla des -girl power -ak rish -u ki -ron da -ts c -appreci ationday -vis ing -lo om -ðŁį ³ -mex ican -ar gos -y ya -jad ine -south port -d end -si sta -rede em -men g -bra xton -antioxid ant -s key -mp g -fin ding -vibr ation -ce u -kh art -di mini -cl ine -shel ly -hin es -ī ï¸ı -to pical -no ver -ma xx -prim itive -illustr ate -b ounds -tren ton -join tly -breed ers -u chi -wakeup america -b ada -ðŁĹ £ï¸ı -gu acam -sp heres -pere gr -youth ful -lo lo -bir min -t ly -jeremy corbyn -defe cts -co sm -a rent -v aa -bag els -medi ac -cori ander -ic ago -g haz -ab bas -re model -struc turing -pu m -out law -ad ani -r bc -gul ls -n li -confu se -ðŁijĩ ðŁı¼ -vil a -mcnam ara -correc tions -mug hal -ser i -re gain -ss b -lea ve -haha hah -gran de -di stressed -re chargeable -ho a -hou sed -sti l -attribu ted -opath ic -di ps -pri t -head phone -conclu de -pil o -he t -ut sa -nit in -je m -sni ppet -tutor ing -op er -sun k -en sla -cha u -ac orn -quinte ss -ran kin -affili ated -our lives -cl int -se ater -isa ac -ba shing -sme ar -nur se -doo dling -" ; -sa ku -atroc ities -im am -g fs -viol ating -comm end -brad shaw -er ville -b illed -b be -thul hu -i phones -moo se -di os -re w -me thane -strang ely -whis ky -ti ghtly -spiel berg -radi us -notic ing -wi f -ig nati -i fa -ap is -w ali -ha itian -bu shes -y z -v l -ex ited -asse l -tru ec -dom en -ash er -in king -newyear seve -hend ricks -bat i -ìĿ´ ì -rich ter -mon santo -con line -agre at -ðŁ¤ ¯ -master pieces -ar n -rough s -cle ve -se v -fashi ons -to ya -sh ail -cop eland -aqu ari -dec als -are you -y aya -a str -fon t -ml m -ar ca -pp or -pol lock -xper ia -conserv ation -chain saw -ag gie -?! ?!? -si le -sh on -ìĹ IJ -note books -marque tte -de us -bb led -spic er -mc cabe -nor wich -modi fication -boo sted -stru m -sales man -bang le -nis san -hez bollah -brea sts -a af -anth us -sk er -ow ed -her os -gi fs -fo sters -eat ers -du es -_ / -lymph oma -sf am -me gal -afri di -ag ic -p amp -jeal ousy -ðŁijĮ ðŁı¼ -calcul ate -napp ing -g ale -ðŁ¦ Ħ -lub bock -assu med -ren ting -íĥ ľ -subur b -ãĤ · -tech nic -u cla -in front -gar net -ster oids -stri ving -ho war -mo ver -le ton -bull do -is in -ci ao -sn z -fore front -d ams -mid wife -ma wards -cla pton -we in -subsi dies -spr oud -rother ham -phan tom -ar ach -spi el -rac ket -sel amat -no on -l bc -enti ally -ðŁĴ ¸ -sil ve -m oud -kine tic -y asi -ðŁİ © -o ol -mi ku -i za -fer a -flo ren -barber shop -groo t -z est -ne ars -stan is -z and -police man -juris dic -form ations -appar atus -sp d -arti fact -to sc -motiv ating -womanc rush -re dro -diagno stics -ra za -out fitters -el xn -dod gy -ry n -sh d -ortho don -ol de -jay anti -bal ances -quic kest -can ton -friday reads -! * -na a -a ak -ðŁĶ · -behavi ors -rasp berries -ä » -polit ical -cam il -å ľ -di k -ast ounding -lie be -novel ty -tur moil -sul ly -spring break -hon ouring -cc g -ðŁı Ĵ -my little -ky c -pro ms -ðŁķ Ĭ -à ¨ -bi ge -av ril -ðŁĩµðŁĩ ° -mari on -as ants -sur ya -oc tag -luf than -ac ron -fayette ville -ti que -love s -en ca -de kalb -ta ver -de vote -aux iliary -joh annes -tread mill -ay an -qu r -donald son -cher yl -" .... -s ven -kir sty -gun ners -ra dish -o ahu -v sky -i ble -con course -b ps -elo qu -ash ford -te bow -roblo x -ma da -dri ving -th day -spro ject -m ms -band ed -. !! -libr arians -flan nel -intoler ance -her al -ç µ -neme sis -list a -tar ak -cry pt -star plus -vish nu -sc ale -cr is -% ), -j illian -regg ae -pegas us -ol in -ip ment -man ic -l fc -godd ard -ite am -parl our -anch ors -lee minho -talla hassee -ant it -d ho -kid ney -y ash -batt led -az ad -gar is -faul kner -sni ff -papar azzi -ed m -phy llis -con tested -aa ay -se ca -k ton -vel ve -rain ier -for um -tam pab -ho sp -trac tors -ox fordshire -no tion -guang zhou -ðŁĺ ¯ -ref ill -wednesday motivation -sli der -mukher jee -pr att -fon taine -alph on -af ar -ts i -pest icides -fi ends -mo cking -bra w -tran sat -do ses -co res -hom ophobia -docu menting -zlat an -con doms -s é -sun set -kun st -ton ga -ภª -v ation -sp ray -chow der -ra ps -palla dium -nor wood -music history -hoo ker -si si -osp rey -ph ys -conce ded -bob cat -ar mad -ze it -Ù Ħ -ðŁĺģ ðŁĺģ -mer idi -ðŁĩ· ðŁĩº -corn wall -! ), -touch downs -ze it -chal et -mm m -al che -gor illa -fo ss -ati ku -lumin ous -ivan ka -be ek -sta res -sw iss -âĿ¤âĿ¤ âĿ¤âĿ¤ -scru bs -me ath -gusta v -jo gging -confe tti -as os -ers fc -breit bart -applic able -autho red -ya ho -h in -displac ement -j v -ðŁĮ¹ ðŁĮ¹ -ot c -non profits -diec ast -gu sto -inte stin -c ages -me en -lu kas -moon ey -ðŁĺ · -very day -tor ah -is sion -wa c -lever aging -ish able -cu se -le wood -may an -turn table -ju ice -tru sty -tu p -eti quette -supervis ors -stu n -gu zman -confe ren -ric o -fe ast -back ward -pol aris -mic he -jo g -h ing -field house -vel ing -sho cker -esc ence -ठ¾ -vi be -anasta sia -mar ched -kill ing -Ķ ë -fe tt -exop lan -... ( -snow day -lo h -ir ani -la khs -del a -po caly -boom ers -dictat orship -ac er -tur keys -quarter final -muskete ers -ðŁĴĽ ðŁĴļ -sf x -museum week -sc ala -ri sis -( ðŁĵ· -ãĢ Ĥ -z ies -bo eh -hu es -lu sci -dol a -impeach trump -roo d -don caster -tor re -hero es -fo yer -tar i -blur red -ke w -frank ly -dro id -ap al -Ð ¼ -y af -bre t -par agu -cac ao -ðŁĻĮ ðŁı¾ -ru e -head aches -shaw ty -char ley -pal er -go wns -correc tional -ðŁĺ© ðŁĺ© -breaking bad -ol ing -da p -endeav our -cit adel -tra d -incumb ent -medit ate -foo ted -ðŁĴ µ -shab bat -dayof the -wil lem -gal way -to red -marri age -f illion -sleeve less -aud itor -jin young -invin cible -kad una -a and -volcan oes -mon eti -indie gogo -buccane ers -ðŁijī ðŁı½ -ãĢ Ĥ -lay ton -cuck oo -hu mber -buzz er -Ï ī -to re -stra ins -sto m -pa ine -s we -du ff -z ou -si mi -li pp -ur n -se agu -ðŁĶ ® -sun dae -hi c -ðŁĺ ¨ -bull pen -u per -flyo ver -al dridge -glo bes -ali es -ken zie -ge es -y cle -sp lin -mag enta -j ha -bal u -gh orn -ti pper -wick er -taste of -con clave -ch ale -inv asi -cat er -dio xide -me gab -win n -at p -transform ative -nest led -hi g -bri dging -lil ies -chee red -bad dest -sc rolls -real is -dipl o -ðŁĶ « -conce ssion -prefe rences -explo des -er gon -introduc tory -ine au -ch af -som es -land rover -spir ation -sex y -sco recard -illustr ates -soul mate -wi en -inter disciplinary -fore casting -ent ities -glu ed -en lar -cur t -percep tions -boot leg -mi re -asho k -v az -hor ne -cal le -ac ulture -ther oy -night time -oc al -character design -ar mist -ðŁĺı ðŁĺı -yah oo -ac eae -to se -even to -sou t -nay anth -wh om -v are -ri gging -gen us -hi ve -com mands -sti e -day a -ethan ol -en f -hi fi -flu ence -cle mson -re invent -thermom eter -humor ous -emer ging -aci ón -ðŁĺĺ ðŁĺį -s ity -haw ke -accompan ying -t ility -ðŁĺ ª -re cess -protag onist -l ery -dun dal -int l -britt any -q bs -off the -marri ages -how to -viol ated -adel aide -wit t -lanc er -pak v -hu me -st ade -bra gging -ou tright -ad c -super st -real time -cu res -garden ers -ero ck -dale jr -ver o -bar tol -mo ti -mc fly -v pn -st ink -over rated -guer ra -e tis -ath ome -twd family -th ab -tn x -rafa el -family travel -x ley -sat anic -equ ations -ru dy -wal dorf -stan i -tu be -meas les -zimmer man -obli gations -i ously -bow ser -trans former -sho ppe -shak en -gh ouse -to d -ke tball -share holder -mar ca -kp mg -ak an -given chy -coast al -au th -roller coaster -mar ches -coordin ate -cine ma -apprentic es -par lor -mit o -men on -consider able -bar re -glo ss -enh ances -jaz eera -fal mouth -thra sh -stat en -k zn -eng el -samanth ap -flo ppy -sal om -ðŁıĨ ðŁıĨ -w ack -deliber ate -osc ill -herit ag -du sted -orni thology -pad dle -fer ns -bar un -cl ans -anticip ate -a ay -mat ically -é ĩ -tu mble -post man -unic ef -tro tter -op d -leaf let -ge ist -cease fire -scre ws -cre ation -wal nuts -longh orns -under statement -ab b -proxim ity -na x -un ity -turn pike -orda ined -dub step -chak ra -me ch -love her -look alike -donne in -vir on -Ù Ī -bang ers -vari ants -out dated -in ta -cri sto -sp elt -food and -f on -stefan i -margin al -hu tton -ti ara -tel ford -qu en -fair grounds -que tta -mikha il -heal er -v ball -ty re -under grad -gl end -hom ers -scri bed -main tains -po che -mis sal -mar ko -u as -á n -sh p -con vey -pad re -sab a -pu glia -madhu ri -pa xton -chap lain -n ago -ca si -... !!! -fli rt -sal eh -k are -di re -stam ped -extre me -ðŁĺĥ ðŁĺĥ -ho ppy -guadalu pe -advant aged -eu char -p low -un n -mac qu -port land -cla sh -pe s -lou bout -y p -keep ing -arca dia -fran kie -fi u -de th -encyclo pedia -si ze -inve sts -ðŁį © -geo logical -fran ç -con front -ðŁĺ ¥ -d ys -af m -tex an -graph ene -repost app -ac f -ur sula -gaz a -dd led -fu m -wsb tv -m be -fron tiers -chrono graph -ke s -inter faith -tab oo -spar ta -won do -flori st -em braces -ca w -no el -arch ers -ðŁIJ · -roman o -ban an -sh akers -melo dies -geo thermal -se phora -ìļ ° -оР´ -pro c -hand shake -pan de -popul ated -slow down -hor tons -registr ations -un deni -lan ts -pas sover -thak ur -li ef -adhe sive -pe tal -micro scopy -memph is -confir ming -air drop -mesm er -perce ived -ming le -lifel ine -gh j -worcester shire -pas sions -ach er -el lar -ah o -firen ze -bar ang -letter man -hat field -lu cha -je ter -e shop -william s -horo scope -pre de -east bourne -dur ga -di version -al trin -seis mic -premi osm -nar co -ti r -ori g -or m -land fall -ci ous -lin do -max ine -x ico -tra y -os wald -c ba -ric otta -n cr -mar au -ภ² -gladi ator -ch ery -lun g -u me -po psic -lon ging -can als -ta ya -decentr alized -sho pp -pres sures -mahar aj -eti had -wal greens -succe ssion -sign aling -li g -staf fer -north korea -def ying -as ma -de g -peri meter -oak ville -m sk -balti more -rece ip -de ple -ðŁĺŃ ðŁĺĤ -jambo ree -> .< -rsp b -puni sher -consider ably -in tothe -pari sian -acceler ated -polye ster -low es -fr ying -sauté ed -mou ths -seychel les -ra x -go dis -dak ota -house wives -the me -mat inee -black bird -ye sung -pre fers -pelle gr -in ated -trun ks -stronger together -re pet -re pairing -ped als -toler ant -her r -dun ne -indic ation -decat ur -b tv -exhibit ors -ik on -friday motivation -bra gg -live tweet -al ves -womens art -foreig ners -wal lets -min dy -lan ey -bb in -tv miaw -lif ter -tar get -tam e -dr ou -astro photography -mp c -g pu -nord strom -fric tion -run off -lov able -sp nfamily -ext ingui -bloo dy -sch el -arti stry -sw ish -scar ce -ph ils -max im -pos sum -com promised -sty li -sc fc -is sa -birmin gham -sket ched -angel ica -ordin ance -je ts -conqu er -ðŁĺ IJ -online shopping -s ori -reason ably -nue stro -ar turo -ch l -benef ici -spho to -wel t -ni kk -ðŁ¤ ŀ -dan ao -for mid -as se -af irst -âľ Ĥ -gil lette -as sor -an onym -sel ca -fe mi -bear able -y and -ar mory -cre pe -celtic fc -bra vo -in expensive -de lec -ge cko -new market -snow flakes -kab ir -con tra -can ning -mor pho -gar wal -ðŁĴĥ ðŁı» -fight ing -mu tation -woo dy -ju gg -gr aces -premiosm tvmiaw -kenne dy -gu p -sa e -op ha -off spring -fini sher -bet ts -span ning -mar j -h one -sh ing -contin ents -samanthap rabhu -un related -l acy -explo sions -benjam in -sophi e -no ting -micro soft -as sen -a hoy -i ker -ho fer -mo e -ah madi -yan n -an ak -ma hi -be u -aha h -creep er -baahu bali -am at -pri ory -haw keye -deloit te -sko da -print making -assemb ling -mirac ulous -no ch -sw o -leg a -oper ates -border lands -eli e -stron gh -rep tiles -pir ate -un fold - ¯ -qual comm -un predictable -ot r -rose wood -direc tional -counsel ors -corn ell -liber ated -j ad -ir regular -bulgar ian -high ness -vodaf one -sw ild -mini mize -gra zie -๠ĩ -r stats -stre ep -ome tric -humb le -lu mp -l ille -b ü -home depot -tripad visor -ki wan -a via -er z -ex ico -du f -blu men -mi zing -ar ma -in im -con stan -sor a -ju al -au n -tw ell -tren ches -her a -r k -po plar -recipe oftheday -ll an -bhu ban -short ages -ing don -bridge water -ðŁIJ ĺ -fortn ite -cam den -un cture -pro w -colon ies -t ks -n go -b hm -live pd -spl ace -sli ke -happye aster -ter rence -revol ver -j ed -yy yy -office of -m ts -exist ential -r ourke -explore bc -sse d -pri est -vix en -si ding -k pa -a har -ju ic -ob struc -foren sics -uk mfg -cancell ation -we ary -ab q -ele c -pri zed -deb ts -me zz -salv atore -m dc -gre tte -c gc -th on -snow storm -ts ch -cook ery -å ¹ -wa xing -n acional -mur s -ra ve -cap es -ger main -dri pping -sub mitting -ome lette -iter ation -aj es -shim mer -fu eling -ðŁĩ§ ðŁĩª -li po -bo bble -un follow -islam ist -hi ber -cat s -agentsof shield -sen si -____ _ -ster ia -inst al -ausp icious -har row -over land -femini sts -inst ant -char iot -blind ness -sp ed -sc arec -nu it -mini atures -ho seok -glo ck -fifa worldcup -e te -dis m -we iner -ex foli -ear ts -à¸ Ķ -my art -man il -iss ant -form a -in cu -buffal ob -in tim -mc cul -anj ali -po po -un doub -hil a -fun gal -thank ful -fu tur -en dish -ren ds -th ar -she ff -ring o -nichol ls -io wa -po tom -cl ams -ãģ Ħ -acon f -stadi ums -di mp -di k -residen ces -do v -caric ature -seagu ll -kl m -confe ss -sla pped -cele b -turb ines -pp v -nur ture -el ab -.... .# -tu ff -de press -al far -amii bo -di spon -e wing -que er -friend s -for re -âĺ ¼ -sw t -aqu arius -head liner -cur d -fi gs -o tters -love fl -kare em -go vegan -fri yay -consol ation -at ri -ì§ Ħ -âĺĿ ï¸ı -poly ne -gu ed -o ya -la us -intestin al -cam illa -scal p -pi r -leed s -horri fying -bore tum -dand elion -fer rer -ell ic -as x -so ren -re loaded -ale ague -navig ator -ine tte -add ams -al chemist -ak shay -dystop ian -awe c -n aya -al isa -ai led -ag or -avi ator -ali zer -smo bile -findyour park -cop ying -to ddy -sh ti -mon ger -cal houn -nap kin -break up -y atra -se thu -ric hi -eras mus -fer ry -am ore -prac tise -bo bo -power point -oo se -li ffe -chin a -sh ka -fad navis -du ane -war on -fal se -ðŁļ Ĥ -wa shes -disc ip -==== ==== -g k -ab b -stub born -medi eval -p ci -ðŁį ª -maril yn -h yo -man di -cr i -prede cess -continu ation -om usic -s lat -wh al -mall ory -bon n -shen zhen -ca i -âĺ ĥ -sa fest -for wards -dra wers -bla sted -sle e -mor phe -mb ta -dumb ass -ÑĦоÑĤ о -alhamdulil lah -ec lub -al beit -heal ey -ayurve da -adverti sed -cro cs -itt les -bry son -be i -nj pw -honore e -fu sed -ðŁĶ ĺ -mul tin -n aga -de parts -ko p -kin o -jhar khand -ed na -ax le -mil ton -supremac ist -marrake ch -domin ic -tran script -] [# -: ). -wo c -sur rounds -o gil -leaf lets -co well -whe w -tru de -proli fer -succe s -sports man -con dom -po che -k up -imprison ment -{ } -scram bled -å Ľ -ka ine -cell phone -metam or -con i -remn ants -ee z -down pour -afterno on -exerc ising -ber ser -architec ture -wick low -m ns -is p -bo c -n iss -mn wild -stu mble -r si -lu ffy -sil en -dd ad -bul lies -haw ker -bb cc -scu ba -e pp -que ts -for aging -pal let -ha di -cinemato grapher -cat chers -to aster -k hi -lite coin -kid lit -amher st -maur icio -ip ad -mar malade -fe y -don nelly -g to -est as -cere bral -ant grasso -zz led -vir gil -swa pped -ðŁĺħ ðŁĺħ -no dapl -greate st -nhl bruins -fra ser -b mo -ane w -. âĿ¤ï¸ı -se gregation -remark ably -mccor mick -lo gger -er as -contrac ting -âłĢ âłĢ -yor ks -uku lele -touch screen -de cked -ben n -south wark -ra vin -nu mis -ðŁ¤ Ļ -ru t -gre co -eth ic -red neck -ar r -t cs -ih ri -ðŁĩ« ðŁĩ· -l k -inher ited -zy k -viadu ct -marty red -hi gu -ss n -be in -street style -fer gie -bank of -æĹ ¥ -stake holder -exempl ary -cre ss -ess a -ero tica -intre pid -gom es -bra un -bethan y -bang tan -pulmon ary -m illing -doctor ate -trump russia -ठ° -s ani -bl att -pla u -depri ved -t le -ful ly -bour n -st ak -lufthan sa -kio sk -far oo -def y -bad an -ðŁĺĺ âĿ¤ï¸ı -rit z -tri sha -ran ds -middle sex -arab s -pro j -sport scenter -repe ats -iv f -bleed blue -as sure -o bs -territ orial -ele n -bever ley -ann ah -âĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı -z l -for good -science fiction -gla u -son ya -pri th -st weets -mix ers -mari o -ant elope -writing community -went z -den ham -be di -sf o -harley davidson -look book -immuno therapy -or phe -es ville -ed ged -tas k -sb ball -corro sion -kilom eters -co sting -play back -ke ke -di visi -u ter -re location -yel led -pen g -up beat -ser ve -âļ ł -hal en -stir ring -reh man -en v -schu macher -frag ment -alkal ine -sb k -resil i -share point -rol lover -tra sh -counter part -âĻ « -ob itu -à ½ -ãĤ ¹ -mul berry -ðŁİ Ĩ -auton omy -spra ying -nat l -love you -fran ki -nu k -esc ar -can teen -ali baba -de plor -mole cule -pu d -fort night -blon die -sp hin -portra yal -ta che -bu te -consi sting -freep alestine -c sp -im mort -d ns -ðŁĴ¥ ðŁĴ¥ -tour de -coo king -archi val -ga thers -bit t -b anc -pre mature -snow ball -poetry day -lou dly -fug itive -ed ay -em ra -ðŁĩ¸ ðŁĩª -sci en -node js -jur gen -je ong -band ana -un is -fox sports -v andy -pro visions -wee p -tu k -i ko -h oun -zig gy -z r -fil let -bat a -tin k -con e -we want -k ilo -hor ace -sl t -sc t -stay tuned -victor ia -umb ria -att acker -ingham shire -fright ening -no ir -fr at -con tempt -lia ison -ho i -br ink -tr ill -ni agar -kick ass -dun das -not my -rho de -bu mble -no xi -fa g -spec tators -mancrush monday -jin ping -distr act -dais y -wal den -portra it -ar thistory -vol tron -ev el -is c -ac m -r ite -na o -de ported -swe ats -ru fus -lo bo -labor day -gam o -ihri thik -bl it -abdomin al -ãħ¤ãħ¤ ãħ¤ãħ¤ -i it -e q -bu sy -allu arjun -un disclosed -de ton -pro create -ki l -ðŁİĤ ðŁİĤ -mitch ell -ki i -inherit ance -al p -jo burg -pat rolling -compul sory -un signed -ni am -l ga -eshop suk -tr illi -ma w -appreci ating -rock ab -mañ ana -an tal -mal vern -roy o -grand prix -sut ton -go ftheday -dig i -ãħĭãħĭ ãħĭãħĭ -t les -varan asi -erec ted -discip les -cont act -ðŁĺ µ -li d -⬠ĩ -scen tre -radi ator -ing tips -trans itions -thursday motivation -chem ical -separ ati -sal is -mi m -geo graphical -book fest -/ . -âľ ĭ -v ae -cur rie -ag garwal -acceler ation -the ses -lg m -u mass -pro portions -nat a -ani ans -ku ch -be acons -ap r -@ # -ðŁĴª ðŁı¾ -nu ke -sher aton -ki o -ma kati -polit ico -mor ale -ì Ļ -econom ically -gg ly -ss en -pa stries -intern ships -vic ente -fanta ken -aveng ers -accu se -slee pover -indic ated -the dream -ster one -ren ders -fro st -ou i -gre gg -d ore -⾨ ⾨⾨ -pu gs -sat y -nu mb -hems worth -tam i -la ssic -schi ff -igle sias -ag awa -] " -re shi -game stop -divor ced -theat er -clau di -un conventional -prophe ts -ac in -twel f -tow ering -t ml -sc lerosis -k wan -ge ts -distur b -na ira -ener g -pir acy -pru itt -noti fied -hen na -bra m -ground water -bl s -opti mis -$ ) -luci e -biz hour -fang irling -gr ills -or l -ver se -c ina -law less -artistson twitter -tele vised -marshmal lows -radio head -bar r -m fc -bre vi -mmor pg -g aya -âĸ « -sub titles -j t -disney land -to bago -nh m -groo ve -fi awec -" / -ba o -scra bble -om ni -ff l -um c -si mba -ali er -ter rell -plu me -mi di -dig nit -co c -bru t -ad ata -alche my -d sm -ðŁĺĨ ðŁĺĨ -win try -spa res -cu er -conclu sions -to ys -od or -fl ann -gar vey -scrip tions -inspec tions -cat ap -ang lo -st louis -heim er -at ay -tr ich -en yc -chil ds -vent il -mont p -guiller mo -circu lare -z ell -mode led -craf tsman -al ina -stimul ation -cashe w -ju das -best of -to ire -susp ends -scol lege -real ising -by tes -bloo ds -as si -ðŁĴ ¿ -o hs -ðŁį ĭ -scallo p -ठµ -gi fting -camo gie -wil kes -o zzy -ðŁ¤ ¤ -ver onic -sav oy -deme tri -baby girl -ðŁĺį ðŁĺŃ -so x -cly de -induc tee -count down -self care -ठľ -vi ka -tor re -phd chat -pe ars -aw h -suff rage -le sn -admir ation -mp p -shark week -schul z -santor ini -clo ver -( * -stras bourg -ex iting -so yu -finger print -che a -ãĢ ľ -vin dic -song writers -so a -prou der -nam a -= )) -simple st -delici ously -gil les -u q -mn wx -ep p -sh un -ken nel -fall on -ðŁIJ £ -sin d -tra gically -out es -modern ism -co ke -gy n -spi on -âĺ¹ ï¸ı -le am -compress or -apolog ise -twent yon -fan atics -âĻ » -sco tsman -sa wa -ko u -as er -ภļ -welter weight -phen om -twick enham -stri a -p out -ka z -gi am -cd p -ho y -emplo y -red mond -ภĦภ-sm ere -trance family -proto cols -pie ce -lu iz -iter acy -carl s -united states -har med -phd life -ch aw -foot prints -l é -cho ker -z ana -sli pper -eric sson -insul ting -articho ke -advis ing -acquis itions -op or -mut ations -re ar -ॠģ -pod cast -wi ther -kun g -íĺ ¸ -win slow -di apers -ðŁĵ¸ @ -ec ker -col lar -hu ey -gi ro -mono gram -kas ich -si veness -malay si -arom atic -gre s -gali leo -u ji -rob b -dr m -none theless -as a -: > -lo a -l np -at work -ag t -laksh mi -pipel ines -id al -stre l -re all -chain z -stone wall -san sk -ðŁı ´ -pied mont -hoste ss -ci u -t é -analy ses -wil helm -scott y -rw by -mosqu it -use mb -qu ins -ðŁij İ -tu cker -s conf -speci fications -psychi atry -broo kes -s ils -ol af -de to -co di -cli p -fil th -womancrush wednesday -go to -ang erous -be ale -w tc -paneli st -ne x -lar sen -emili o -tab leau -h itters -conce ived -americ ani -or tega -mar di -Ñ ĥ -pain tball -thir sty -new yorker -etis ation -go ss -we aker -u gh -tro ll -har ga -du al -ght ning -at ine -ðŁĺİ ðŁĺİðŁĺİ -cook out -pyrene es -po ss -authent ication -sports wear -yun ho -kir o -archi pel -shen ko -ren der -nov ation -divin ity -ðŁij £ -su fi -humb ling -ge opol -devote es -wait ress -tr ough -py ro -i ba -bl ing -gra f -epilo ts -bt r -of tball -bas king -domin os -so om -r ath -sher yl -qu el -astronom ical -wel d -track list -sig nee -slee pless -com man -ch ron -summ on -pure michigan -cri spr -sli p -la gi -ra q -um u -thal ap -char med -scru mp -quad copter -ski p -peter sen -mun i -ðŁĮ ¾ -mon aghan -tra ys -ick ed -canad aday -te gr -ï¿ ½ -hot ness -heavy metal -ab ar -gop debate -az ul -spider man -sun flowers -ľ ë -web comics -bar d -Ð ² -nichol as -slu sh -ram an -mark ham -ffici al -ff ler -íĬ ¸ -ple ss -anush ka -to to -sk aters -pro wrestling -compet es -ay ala -myster y -thr ills -mp g -independ ently -y ul -imper ative -formid able -tire less -st acking -ton gues -mal tese -pot ts -mat ti -char ting -chill out -super nova -ome o -sky sports -nu tty -ðŁĹĵ ï¸ı -ro han -insp ired -concier ge -ser ra -ma kk -gal at -chi pp -ye v -ì £ -reim bur -op ul -kimber ley -i eee -bre men -ch itec -or in -nak u -bon kers -foo ty -emer gence -ðŁĨ ĺ -sti p -serge i -zo ey -ai me -wou ld -dy es -destin y -vinai grette -dri er -circulare conomy -an archi -ss r -sch el -cin er -gro om -determin ing -gar min -cal ais -incarcer ation -bu kit -no i -chelms ford -mckin ley -chi pped -belong ed -tu mors -str oud -mi i -influen za -wwen xt -tun dra -tele communications -cat sofinstagram -t ages -beat ty -o du -ml kday -oo per -dang le -ak ley -cru mb -anti gua -ti mbers -rou hani -ðŁĴª ðŁĴªðŁĴª -ha fi -... !! -w cs -coo p -sn c -lit res -ãĢ Ĭ -ha z -co z -k ant -green field -cur ti -y ale -flye agles -what soever -wor thing -rou lette -flyeagles fly -un da -a inted -stand ing -lusci ous -h pc -effic acy -ash land -me ghan -ky wx -n pr -bath tub -ac os -h ani -mar cor -man tis -da isi -bo ba -ab bie -mu til -vi al -spy der -po z -g ti -el fie -nigh tw -metro id -anton i -mad die -dh ry -dar lings -ten ds -taek wondo -atlan ta -me ow -chlo e -ãĥ İ -ym es -siber ia -k con -gu es -mar iner -fac il -azz le -[ ... -han nover -bav aria -vir go -te uk -u sps -) # -wall a -sam pson -need less -ver bally -hay ley -bow led -pi us -lam pard -ham string -vol vo -road safety -cho king -sor bet -a hem -healthy food -brai ded -horticul ture -cr ative -che ek -ad do -the force -ko ko -schiz oph -j ie -w ada -twentyon epilots -h bcu -pro ton -pau ls -lou isa -lat am -kyr gy -com pac -sd k -sap i -?? ? -liber alism -ep silon -ai den -w usa -spra yed -baske tball -kim ono -blue wave -ali as -ë§ Ī -mug shot -ce c -do gre -ad ora -ðŁĵ· @ -kra kow -intrigu ed -exhau sting -astron omer -ven ison -lady bug -ci v -bra e -us m -bri be -acup uncture -pembro ke -ke ating -chi e -y ad -t si -sm i -see ding -gate shead -lis boa -gy p -canv ass -ðŁĶ´ âļªï¸ı -op i -ni r -soci etal -ly te -ati es -c sm -ar tery -al in -aka poor -abstr acts -â̦ â̦ -teen wolf -ne we -travel gram -sentim ental -per ched -han del -ho ek -f ay -coordin ating -anim ate -man ian -effor t -jer ky -f ck -adri enne -ma bly -tra ding -my el -spi ro -sol a -stor ing -over drive -monday morning -dream team -pul se -bon di -ber nie -pgat our -tri poli -son am -plat t -âļ ¡ -ag roup -îIJ Ĵ -inv ading -v cu -k ell -ñ os -un dead -pod casting -mercede sam -mana fort -cor tex -que so -impecc able -pal mer -wil doz -sport sc -guacam ole -dispen ser -cate gori -stun ts -per il -invit ations -dune din -xi e -achi eves -saf er -pre ds -ph an -knuck les -k ak -igno res -lovemy job -aru ba -ound ation -datac enter -co vert -gr ing -cou ple -ا ر -vol i -mc cle -arti sans -lu do -kal am -arom a -under taker -hu la -wiz kid -gu mb -god frey -bakers field -ker n -engine er -car ve -pal in -guaran tees -pe bbles -b ays -zi eg -fin k -â¬ĩï¸ı â¬ĩï¸ı -down pours -ro chelle -rasp berry -ðŁĺ ® -gra phies -stom p -caf es -ari zed -utt ar -cal vary -dri e -crusad er -bus an -tux edo -si u -seam us -cul tured -blan chard -town house -ge red -butter milk -flu ctu -roger federer -hel i -ðŁ¦ ĥ -u ous -ram esh -mu ppets -email marketing -ye ss -br ice -ri zio -pel o -donnein arte -u rable -inve stin -bump ing -raji v -sav a -thro wer -fore x -o hhhh -th rust -pull man -r fid -sep sis -le ed -fri ght -roun ding -ne b -ph ins -ai sha -utili zing -squ ats -gold smith -j ic -bo ks -vau s -i po -exclu sion -tari ff -po kes -min al -land s -en force -washington dc -or char -g x -mar ys -ey our -aussi e -bak ers -un popular -latin os -lar ge -pu tnam -bol o -wa de -pel o -di zz -ob struction -fla ppy -weare the -depend ence -pajam a -e te -y ann -e wan -disc la -a ay -kar ina -e ic -an trim -w soc -neg atively -kai do -fotogra fia -dh ru -colo ssal -mcle od -k wang -mani pu -ex hilar -us atoday -summer slam -co les -tapro om -unbeat able -de ma -tic ks -k ling -fil s -campaig ners -ภķ -brew ster -audu bon -qu ay -ch s -ki gali -d ler -strength ens -som al -sign ingday -gol ds -pig ment -orche stral -g q -lin kin -ðŁı ĩ -ta w -algar ve -ho v -ear le -gold fish -am ig -ex er -ben in -dru id -ðŁIJ ¸ -she m -quat tro -mer cen -men te -incorpor ating -bon anza -state fair -en de -concep tions -e es -âĻ¥ï¸ı âĻ¥ï¸ı -d son -fire arm -orb ital -we h -multi p -fo b -requi em -p light -thou se -sa id -oc re -remem brance -n old -chi pping -be v -er t -ca thy -sy m -ri ggs -m ley -dialo gues -sl ender -how l -gau teng -wd w -to bi -smo kes -im plo -b pm -ad n -mom basa -cap sul -bloom field -artic ul -cle o -goog led -flu ffy -l ard -en zyme -ve sti -ibra hi -fl ame -e mea -out ages -dispro por -ble ak -an sel -ick er -st louis -stock market -good friday -sau lt -stal led -pro m -ep som -b é -the se -sau ces -me w -lit fest -pre d -re u -kar ak -si enna -ell in -bio technology -ï¸ıâĥ£ - -tac tic -sa in -por k -mon za -ka j -lu sh -compart ment -chang ing -shraddha kapoor -fo al -ar tem -cu ando -can ola -ori ente -me sse -d ited -br c -box er -bbc two -s st -ment day -em ing -de wey -kof i -âŀĸâŀĸ âŀĸâŀĸ -reali zation -smo l -tw ood -san je -flag staff -ber wick -cor set -can ary -whistle blower -et ched -com posing -squee zed -bow er -auto desk -ne h -mathi eu -ba ja -Å Ĥ -hy dra -da im -am eri -insi sted -mer lot -gar ros -heart news -gaine sville -cut ler -bo de -ðŁĺī ðŁĺī -lew es -scoun try -g sa -us u -cc m -god awgs -phara oh -cra e -mor ley -hyp noti -f ades -neur ons -fu zz -ing co -high landers -star k -vig ne -pac kets -amar illo -reu ben -insul ts -bas ic -vec tor -n me -ac ruz -tro s -transm itter -ðŁĺ ŀ -interpre t -ðŁĺ ² -pre quel -mc gowan -dis semin -ðŁĴĺ ðŁĴĺ -mascul inity -indie gamedev -ali ve -te t -pe tal -ema iled -ar med -ko o -he er -ba ird -super junior -metro polis -delav in -decl ines -stit utes -Û ģ -p tbo -g lan -cho res -e aling -chri ssy -ste mc -vi an -assassin ated -pron ounce -illeg als -discover y -cav ill -fri fotos -f al -so i -sabot age -t int -p dc -ðŁİīðŁİ Ī -ãĤ Ĭãģ -ji o -endeav or -in sig -commit tees -she arer -me tz -mar rying -h dd -g by -fre t -tri sh -pu l -scrip ted -sa ki -l w -ke ye -shim i -nan aimo -ca h -à « -tem pered -ici an -du gg -dish washer -air field -s rugby -gr inch -y st -r ms -mahat ma -lan kan -disc ar -dige stion -no des -l ls -om ic -gu tter -tis garh -feder ico -election day -bo he -master card -fire ball -âľ Ķï¸ı -oy ster -p ong -do k -en route -m vc -beat the -ali stair -shu b -sh aming -cherno byl -ghi bli -the s -pin ion -d bs -sal ts -ic tion -epi ph -nc pol -in convenience -whit ley -inspec ting -wood ley -wi ener -skil let -no les -m ca -h ina -a sha -willing ness -well ness -tam ed -show time -dis advantaged -ber nat -us n -mission aries -coun selling -arrog ant -quant itative -leg alization -ho dge -energye fficiency -cameron dallas -pos sessions -p bb -harris burg -v g -hindu ism -happy thanksgiving -fi b -re acting -tweeta picture -pol iti -mu ppet -hur rah -pac e -coast guard -guar ded -as am -par ry -fore very -x q -oom f -ke anu -j ind -ri st -customer service -sac red -ðŁĺ º -ton er -occur rence -mat u -val dez -red d -is ak -power rangers -pe asant -raj ini -abra ham -e mil -car do -tr il -hair styles -obsole te -sam pler -direc tive -delavin kisses -ver ton -glo s -sp ay -paler mo -com ets -man ziel -chicag of -ski pped -pic torial -h ant -b mi -a ol -re opens -pad dling -devo s -fra ud -bas eline -que ues -sp ired -sn are -eu ve -descri ptions -daisi es -ca ching -gall eria -tri mmed -stin o -recy cla -ic ular -bir ken -raw lings -fli x -chic as -b gt -lik eli -argy ll -thel ove -ga ston -bl anca -ha k -f one -sailor moon -h aci -ima c -fl yn -de can -bel les -ap ic -zo g -taun ton -con stance -lasag na -ker nel -in ka -har bor -collec tively -calcul ated -av ille -shil pa -pur du -gi mm -fun er -a est -pembroke shire -nighting ale -n unes -hyper tension -hu bert -sli ders -infer tility -comm ended -transat lantic -metr ical -!! @ -Å Ł -ss g -bac ca -inver ted -fun factfriday -it ans -albu m -acqu ainted -ri er -whel an -sar ab -mu e -snoo ze -pi ff -agre eing -sp itting -jer maine -n ye -âľı ï¸ı -am bush -ze ph -con greg -univers ity -s app -wann abe -pat rice -ib d -do glo -fri dges -sun d -king ston -ar gon -kam en -hardro ck -ds ley -do lores -ì ° -ota ku -pi ping -be having -âŃIJï¸ıâŃIJï¸ı âŃIJï¸ı -blue bird -an sari -teapo t -fire work -cro p -log ans -ty ped -thick ness -ig ers -c fp -dys functional -contra sting -et ty -aston martin -tx st -dra grace -at tributes -marath on -manu scripts -john stone -ðŁĺ± ðŁĺ± -bo er -ay u -aru gula -poo rest -con du -assu mption -anag h -no h -delav in -sit ter -g ö -mor ow -kick start -com i -gl acial -ghe ad -ba in -ker shaw -en dof -fre ud -om at -i af -hu g -sign up -each other -defin ite -tu bing -shak ira -ðŁijı ðŁı½ -uu uu -sw in -sham bles -ol as -sk ell -brit ain -kn w -clu tter -om y -j ens -hang ed -city scape -scra ps -un locking -dead liest -er no -breast cancer -a it -inspec t -fu ri -ðŁĴ Į -ku d -ju le -or ah -mi ds -m dt -bur gring -r attle -pu sa -stal k -cle ans -iss ance -z ek -worth it -nam eis -musko ka -council man -urban art -bar rac -un solved -tu l -g ita -white board -soy beans -em ent -cont i -saturday motivation -conveni ently -doc king -t ado -âı © -sp ino -puppy love -po f -fabric ated -robb ers -adop ts -ti fied -kk r -indulg ence -notic eable -macqu arie -chap el -sensu al -ki ko -melan oma -lore tta -li ance -ab en -sp lus -ga al -ac ele -lib dems -compar isons -ðŁĮ µ -rhy thms -mer y -en capsul -nap ier -ðŁijĮ ðŁijĮðŁijĮ -ðŁij IJ -plat z -fre sno -re formed -ran bir -el it -the best -bhu shan -vin nie -impro vised -s ittin -re created -e ba -ec ker -ac rob -pon te -cor d -gi ddy -eur usd -fe ver -intu ition -gar i -dum mies -bud weiser -amend ments -te tra -sch nit -ay as -mar ys -ci st -k ani -ker mit -ðŁĺ±ðŁĺ± ðŁĺ± -tin ker -strol ling -di visional -niger i -omin ous -menstru al -kar ab -k hy -bw fc -pan handle -l illi -well er -stra pped -son the -transfer ring -ethe real -sne aks -ru dol -gab les -jac king -cin code -for tune -canadi ens -con for -ab normal -frank lin -tit a -mu la -persi st -cu ties -ki el -ðŁĩ± ðŁĩ -her mann -aw k -fi asco -ko to -we ta -hi ker -budd y -preven tive -mcgra w -game boy -forsy th -top shop -si ob -sad h -in tram -follow art -so aps -dragon ball -ou x -morri son -๠ĥ -lu bric -adul thood -morri sons -âļ łï¸ı -her mo -ta ka -stall one -mis use -team gb -ra gha -con fined -at y -hom ophobic -nw o -sky news -ho ya -ac rosse -wi iu -pur ée -jed dah -ðŁ¤ § -advis ers -ph ine -an is -scrump tious -ë° ķ -c ke -vin y -ter m -s dc -o do -home school -vas c -leop ards -debor ah -illic it -cur ran -as roma -nau ght -mar ig -brand i -em p -ðŁĺį ðŁijĮ -î Į -su spend -lu z -initi ation -sch aft -jensen ackles -craw ler -post doc -des ks -trail blazer -den omin -tri x -no ise -po et -± ï¸ı -s mug -vol atile -proof s -pharmac ist -sardin ia -mash able -kim chi -co ed -schal ke -doo dled -c sw -sh ur -ro x -do k -chris brown -mathemat ician -ab ound -ang elic -rock ford -d ole -yor kers -ms n -g man -xavi er -bor rowing -mark ings -longh orn -k ja -diver ted -mm it -euph oria -ay yy -te a -pa h -ck i -un cut -li ven -ky ung -fan art -mer ing -red ding -amo vie -gri di -c thulhu -schol arly -ju dah -th bewithyou -eu calyp -ðŁIJ ķ -hert fordshire -cour troom -by u -auc tioned -ple ase -mar cia -ê° ĵ -succe eded -el as -arvin d -t lot -saig on -re tt -ra kesh -fd ny -as en -se bring -gladi ators -you know -v lad -gol a -par ap -ÑĢ Ð¸ -sab cnews -one team -oh l -sun e -ri j -cd c -star gate -run down -plat o -ph c -chat ter -ra viol -mn f -mand ala -li et -ภķ -mari a -hun gover -consoli dation -fer rell -tradition al -ilove art -gal ap -ðŁı Į -que zon -espa ña -ðŁĩ¨ðŁĩ Ń -ho bby -steam boat -mali gn -guil lau -pro hi -its me -íĥ Ģ -in scription -al z -mari an -k ade -mm on -adju sting -ne sts -intern ally -ci r -vik ram -mal ala -k ph -fel icia -the real -cap tivity -at is -marcor ubio -kale ido -che v -mano j -le more -gent ri -vi ps -tro pe -" âĢĶ -pair ings -mal nutrition -fr ay -desig nation -brun omars -az e -tor rential -pan zer -ga il -under the -the ological -schizoph re -dazz le -freder ic -mo par -ad illa -so ggy -ra un -medi ocre -colo rec -i fe -p inst -blu ef - ² -world water -gir oud -clar inet -ad olf -tar antino -receip ts -assu mp -ðŁij Ł -coffe es -âľĬ ðŁı¾ -du plex -s of -r x -lin o -timber wolves -pan dit -mo tm -e ga -ay ama -ach s -outsi der -ll en -co er -til ly -cheese burger -ma ds -ple dis -emp ty -national parks -az iz -p mi -jun kies -f ener -sq n -è s -gener ation -cleop atra -bhuban es -mosqu es -ty free -popp ins -tw c -or well -n age -ka whi -hol low -dal ai -¨¨ ¨¨ -ou ro -m health -gi on -az o -vis as -reneg ade -re ic -w sop -ðŁĴļ ðŁĴĽ -e chel -tox icity -mü n -bun k -stimul ating -asth our -\ ' -ep h -ende mic -cn bc -shrin king -peabo dy -michel angelo -can yon -wal e -su mi -si ders -inu it -? . -profession alism -dr acing -plat oon -p ons -out bound -maple leafs -de sol -cen cy -a than -ver ma -ru bbing -ok an -ðŁij ł -mull ins -authent ic -Å į -alman ac -ga ia -bb q -on imo -ke h -ty a -tou ts -y av -re posit -, . -wi ght -se eyou -cal lof -done sia -bar gaining -gr anth -sd su -amphi theater -p su -re watching -wine tasting -peak district -dete cting -thur man -phe e -èª ķ -u mich -re r -sculp ted -go le -name sake -ðŁĶ ģ -serv icing -bau gh -pu gh -pen cil -dar th -munch kin -at orium -ten ers -sun y -rolling stones -mag ing -star rer -i dris -fe instein -ag ron -âĺºï¸ı âĺºï¸ı -supervis ed -chamele on -aggre gate -succe ssive -mo gul -inst yle -pol dark -custom e -ohio state -ha ya -ci des -broker age -angel ou -fifa wwc -de forestation -al ton -pam ph -hu gged -ho bo -change able -ku ber -bur roughs -demon etisation -cape cod -vers atility -or ice -le ila -womenin science -tu a -he dges -embarrass ment -ali fe -so ars -ni ghter -hy mn -gi pp -chas u -tech s -ni all -k illa -hi ka -cam els -valu e - ¢ -sc oops -mah moud -clu sive -adri ana -pac o -oz il -un as -transl ations -whispe rer -s bi -bu xton -bio tics -indi ffe -ken ney -k lar -et ching -barra best -inst ability -se ine -vo tel -blo gged -whis key -my space -t ant -lan dia -give back -illu s -aw ak -ac ab -f bloggers -cloud computing -blat ant -syri ans -band ra -sty n -an em -ke ted -kar thik -barun sob -pin ot -gu bernat -gay e -arti ste -i fied -conven tions -hu an -geni uses -eeee ee -fol ly -somer ville -pride month -ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸ -chemo therapy -paul s -bak ar -ìĦ¸ë¸ IJ -taiwan ese -fol lo -c ss -re ign -nn nn -fla un -catastro phe -iti es -frag ments -extre mists -ym oun -car men -eze kiel -conne cting -se h -man ta -remodel ing -we ymouth -at oms -ce m -ne well -lu mi -the open -mo c -mili band -g land -z shq -mag gie -mani acs -m sp -ad y -cre ams -le anne -e sta -py g -af finity -pray er -dun bar -ligh troom -ac adi -wyn onna -roman tic -state dept -sick le -wh os -lam o -et our -fin ity -shru b -shar pen -pun dit -ed on -af ore -mar s -jeff ery -ter ps -medal list -kath arine -accu sing -ta z -roy d -from home -confron tation -alle gh -ðŁijī ðŁijī -refresh er -ran veer -never land -jo jo -lu crative -en am -ca ver -pa edi -man jaro -flu ids -the ssal -oppre ssed -mu ss -joh anna -Ø ® -cn g -buil dthe -sett les -s ith -fu ego -cl amp -ar ag -pay er -ted x -mand y -inter stellar -fr c -ch and -b cc -mo lo -len til -johan sson -grims by -nature lovers -ðŁļ¨ ðŁļ¨ðŁļ¨ -shin de -x in -international dayof -transiti onal -sat a -cad dy -wo d -if u -ha ys -holl yo -j ang -ir c -co im -grad able -" " -ðŁį ´ -ঠ¾ -a el -n yo -west lake -time out -sof i -phenom ena -cultiv ation -ag no -un armed -so t -con j -gen o -royal navy -nutriti on -fair mont -ti relessly -sn g -re ty -mic a -lu cent -slo ane -droo l -riz al -od ell -critici zed -. '" -la ze -deser ted -co der -pra s -l illian -itiner ary -dav y -an ap -whi pping -hobo ken -kare ena -çľ Ł -vi us -ter n -nan tucket -mis understood -bu laga -st ant -chin ook -z am -reli es -d ss -ed mond -sket chy -m ell -fe x -rec tor -dist ill -day dream -wine maker -ri pley -billion aires -hel ene -ati f -cul prit -bertr and -wou ldnt -ma pped -v ak -gla dly -parliam ent -kidlit art -ware ness -goli ath -âĨ ĵ -view point -tat ted -fu ls -dor sey -ang lers -li ds -ki ya -bow les -be h -b ite -compati bility -ance stral -pro x -beha ved -gubernat orial -ch field -sab an -z h -teen y -shibu ya -holli day -pan cy -âĿĦï¸ı âĿĦï¸ı -seun gri -? , -ðŁĩ¦ ðŁĩ· -im itation -impac tful -any i -gene vie -añ os -bate man -gli der -af ar -ra sheed -effor tless -sh war -dach sh -er un -at os -kin i -ch d -kha ki -k lin -felici dades -bel o -as l -to ppers -fin ley -stac ey -rigor ous -kar ting -le ppard -car michael -be ret -c se -ak hi -mer ingue -ab an -ha ke -ger i -er jee -re sto -comm anders -pr it -fl or -ad ven -ex termin -remain der -å IJ -es g -martin o -lulla by -| @ -mi gn -in store -big bang -cor di -cau ley -ante bellum -dg ate -cro ck -span dex -scaf folding -ore os -ê°ĵ ìĦ¸ë¸IJ -pom ona -ma uro -uni versi -re mi -af ootball -t ant -sm alls -ne h -worl do -tropic al -mor ph -jav elin -gla r -arqu itec -reminis cent -tu bs -spide y -make u -syl la -progressi ves -blo t -shor ten -keep in -ch ak -ang st -super food -decad ent -ston y -neuro logical -ar boretum -ann ak -fe ma -per cu -dis respectful -small biz -lo x -co om -c sc -bs bi -pre valence -him ss -esp an -mo ga -fr ampton -sky map -mas se -levi athan -( ). -noctur nal -car ameli -ang or -amne sia -outsi ders -she alth -rhin o -ant ag -ag io -ðŁĴ° ðŁĴ° -take me -kab addi -c si -m sh -coch rane -thessal oni -sil a -ha us -du sting -obe se -mack lemore -mani sh -len in -m dc -gro wn -shef field -s rs -ke le -car son -ch um -dah lia -can tore -opp o -how ling -cyber crime -sur realism -sc ran -fa iz -thre n -rac ists -r out -pk not -se mana -sin i -mc cull -ma chi -alfon so -y b -sar dar -kend rick -den g -reci pro -on f -doom sday -bri bery -custom iz -art is -c pi -ðŁĻĪ ðŁĻĪ -sla va -let te -en s -âĿ¤ï¸ı ðŁĺĺ -cra yon -ad an -tr c -migr ate -simp son -row ers -king sley -farmers market -shee han -ne phe -bor non -car ton -mic key -all ure -u lu -sli pknot -heb do -gui do -dog celebration -online marketing -acceler ating -) .. -origin ated -macar oni -ed tech -out field -mit z -disc us -adverti ser -man or -ha shi -descri p -cap ita -ful bright -recep tor -con n -con ey -spion age -r attle -pre st -u li -blog post -acker ay -) â̦ -red velvet -mat th -inspir ing -b sd -ker ri -po con -mil lar -re pur -accent ure -ä ¹ -ram bo -ragnar ok -dele ting -british museum -pat ory -leip zig -flori an -sci fi -in ers -br ate -yo y -melis sa -ab er -ma sa -po te -mosquit oes -transpl ant -r pa -; )) -bast ille -yl an -joye ux -melo dic -cap tions -atri st -roch dale -gott i -pew die -cuties aturday -who is -aqu aculture -tiv a -sp el -he ss -ha ji -fred die -co per -brand o -v k -photo book -* , -my dayin -micha ela -brune i -sr ini -in te -Ä ± -de ol -d fc -separ ately -bun d -ve sts -to c -me ck -rein forced -constra ints -car roll -sq ft -re ver -cam per -bird man -in action -gener ators -triumph ant -pe sts -o vo -gy pt -al amo -sc aled -suresh pp -sd n -is mo -gi os -) @ -justic eleague -restaur ant -gab i -den gue -next gen -exemp li -ap ex -inspir ational -down side -kid z -u pl -et na -alvar o -fel dman -bar net -m ha -es ch -bloo ded ->>>> >>>> -kan i -ho fficial -casablanc a -bir ds -ty ga -sw amp -o day -new castle -nb ap -ci sion -cho ols -af lo -ne p -mon ton -ak b -super model -down time -th os -sc wx -snoo py -ag greg -yo ke -nor cal -we tt -prolon ged -me tast -beat er -f ta -t lap -disgu sted -y h -voice over -itch y -ip c -ðŁİ ¾ -phe asant -stra its -ram pant -j g -fer til -assu res -fortun es -sal inas -liz ards -kett le -i bs -cyn thi -he g -mc cr -soccer oos -happen ings -cor den -ðŁĺĤ ðŁijĮ -t ches -egre t -wolver ines -congratul ated -ho gg -bott ling -wr i -fer ri -bo sch -af ire -og den -s jo -j dm -sv t -con tex -tol lywood -min k -me se -super sonic -op oulos -å ¸ -âĶ ģ -knuck le -gu ise -gam i -chu cky -z inger -radi al -compla ined -bo da -fe tal -discipl ines -cor ro -ðŁĩ®ðŁĩ ¹ -op ted -filtr ation -ad nan -em cee -mi stre -insom ni -fer gus -tra jec -on don -med tech -tanger ine -madra s -gru e -cab s -z hu -sureshpp rabhu -insul ated -day swild -pp m -band ai -v day -s ff -squ id -lo thing -not dead -expre ssive -cu ll -ala stair -x u -up front -fish ers -en es -um d -dis missal -sti er -sel s -lu st -re active -prote ster -eyel ashes -al im -goo de -gre eng -da ir -com pen -anush ka -proto typing -ma pu -bear ings -ðŁIJ Ł -for me -bsbi botany -timo thy -out skirts -am bed -are tha -wend ell -stre aks -ni m -k pk -sne e -fit ter -quo ta -p ate -win ning -ðŁį Ń -sho pping -ma inst -cul ver -ste vie -mcfad den -counter parts -gren fell -fol som -dor set -tech crunch -⬠ħï¸ı -tip tuesday -us l -tre x -geor gie -ranveer official -lic ks -se wn -k f -' â̦ -jap s -p ate -orth op -fe sta -stra s -mon tal -hammer smith -fore most -wido ws -mad re -ite z -mito chondri -lig ans -z ona -cari bou -m ss -andre i -weather channel -gh c -: ... -ta ft -awe ather -al isation -bru tal -bliss ful -nik ola -mal icious -q m -mpg vip -bro die -bl itz -applau d -dri bb -v ague -dog go -transl ating -interpre ted -hat ched -ge tyour -benefici aries -spar ring -caes ars -aw illiams -la hat -bro ke -ti mp -virtu es -rel ying -pie tro -k tn -ici sts -pab lo -lou i -a ag -pn pp -cha st -pul ses -fini sh -usair force -type writer -thomp son -dog s -ut to -ãģ į -sand al -new ly -do ge -z w -wan kers -ne gr -mu cha -determin es -black fish -sk unk -mu ps -instru ment -phy to -daysto go -skin ned -hai der -con ten -ðŁIJ¾ ðŁIJ¾ -we iler -undoub tedly -chair ing -wall is -sh ard -zind abad -adul t -absor ption -pre sto -deplo ying -drum mond -battle front -seag ulls -how dy -juda ism -des de -part ition -âľ Ŀ -no logy -national bestfriend -lesn ar -film fare -co asts -christen sen -ac an -mb u -co pped -ru bble -sw c -fun nier -far ther -where as -nano technology -with stand -pil low -bow ers -to pe -it ly -con fit -ma kar -comfor ts -bo sh -cli pper -bal la -sti k -mil b -safe guard -musi que -eas port -ya z -pad ded -bad er -fore ign -chop in -archi ve -o ka -tran sporting -tml talk -aj it -consequ ence -sc roo -ff o -collabor ated -pug chat -ye mi -jav ed -au burn -o of -ma w -sau cer -miti gate -i les -evangeli st -ter ie -re cl -indic tment -cat a -bright ness -may the -whim sical -un lv -key word -cu min -med way -west world -tra w -im posing -form ity -coul ter -ab z -ny pd -grass i -kel sey -qld pol -clock work -f dr -di anne -âĺ ij -ad h -p ann -bra vely -ae ge -un lawful -ver di -pocaly pse -phar o -kar la -reson ance -ma stiff -la dak -bu u -ma iled -hi i -craw ley -tor rent -mach ado -liby an -effort lessly -fal sely -q vist -ke ef -craf thour -cheri shed -val kyrie -s ari -kal amaz -be he -ðŁĮ Ļ -th im -ro ddy -col trane -but chers -ach im -wk end -awk ward -cab rera -:) ))) -fran c -decl an -con dos -a ja -pandor amusic -char ter -ph ill -mon trose -hatch back -handic app -gre aves -eucalyp tus -ut most -t son -bur ton -mid wives -in cur -ðŁĺį # -moo d -compre ssed -tom a -must ang -mo g -as ana -te stic -sho tel -in sol -cor sair -nh q -ben ny -sm ma -kap ur -in con -jon as -ener gies -don al -as ad -se z -n pa -archi ved -stimul ate -do p -hy d -gri eving -ãĥ Ī -ron a -why te -tree house -ss ell -sand ro -ko bo -ther most -se clu -hi ya -ge ez -mam as -prisc illa -flav oured -fas s -w old -maker space -cospla y -p tv -happy valentinesday -sequo ia -love craft -gu an -d tm -ci i -yoko hama -pos thum -re q -ðŁĶµ âļªï¸ı -galat asar -dol by -hamp tons -disturb ance -stone henge -ok c -disrup ting -month sary -jun gle -head lights -du stin -micro sof -happy mothersday -ko ko -gra zi -te sto -na idu -mal ay -ari al -ru mb -ab oo -har man -tra pe -spo ils -je ho -go dly -lock screen -z un -pi ous -ma gento -l enders -prob able -corpor al -m our -aw al -su a -call me -ton ne -go vin -devast ation -x j -gear box -war lock -per me -it ate -gaza underattack -du val -paras ite -clement e -le th -i va -fro zen -tho les -to bin -cair n -s ill -luc kiest -conver ts -st ale -pan cra -euro pale -wis dom -sch ur -ì ¶ -verti go -bi j -u bc -nu re -righte ousness -mt c -factor y -ver st -revers ed -hur i -hee chul -fab er -ar r -ul ous -ven om -ph at -green ery -bra dy -à ¦ -: (( -never giveup -di sha -mo ta -health care -dun ham -dex po -den zel -bb ins -f ics -wh am -mc g -eli an -wat a -str alia -tel lu -pe sky -spin off -ar moured -re acted -do fficial -te du -sag ar -mor ally -paralle led -fi os -dow ner -dau gh -re do -world cup -tari q -bar ne -glaci ers -oc cult -barbar ian -her mosa -!! !) -y ur -inter nation -p ss -sit u -p int -american air -sw am -dopp ler -ðŁĴĻ ðŁĴľ -cincode mayo -le van -hell enic -mc ne -ju di -yu h -st x -qu are -ðŁĺĤ . -sti g -g els -mot ley -hard work -euro zone -e ad -ç¥ Ń -seab ir -ci us -la id -alpac a -presu mably -pewdie pie -boo ted -am ari -tam ine -sol ace -bar row -acade mies -x ian -om ination -dun geons -b ma -de ity -ai k -stab il -hir a -affection ate -ving ne -new port -ãħĭ ãħĭ -thir ds -re tains -aroma therapy -ski er -ni ma -do pe -cr inge -con domin -to or -anim ator -sar aj -seas cape -minim alism -lake shore -calla way -berg man -à¤ Ĺ -whisp ering -stupi d -ri ghtful -requ is -ir n -se va -ut pol -tuber culo -squ ish -de but -govern mental -christ ine -all man -weap on -s ito -bur i -lo lita -leaf y -fu ch -tin ted -mck en -a hahaha -ðŁĩµðŁĩ ¹ -repe al -ne gan -ðŁķ Ĭ -tail gating -game insight -ðŁıŁ ï¸ı -yaku za -z t -ti ring -pro posing -bow lers -tra itors -ak shi -cler gy -cit o -up sets -tu scal -symph onic -sil ently -shu ff -black well -ðŁĺĤ ) -ko be -rober to -ri dg -dc u -mer ino -ft p -east side -. ~ -nb l -mn leg -ts for -frau dul -ca pping -in my -gymna st -ston es -ss in -twe aks -shag gy -oak land -dem sin -sang ria -mm va -hen nessy -down ton -ri ghtly -in it -aga ve -ob last -northe ast -friend ship -dal a -tro phy -ðŁij ½ -mag in -margar itas -ê · -ww fc -fa sh -di ke -cu d -char t -ðŁij ® -refuge es -jop lin -n cs -imp y -firm ware -pas cu -flam in -health tech -bell letstalk -w aka -ol ls -la go -co wan -bombar dier -sh ome -ðŁĻ ħ -mc master -na ve -well s -u ta -tell ers -mis fits -kap il -face off -af firm -a pro -whit epaper -super yacht -speci mens -al located -... , -- __ -ka w -dachsh und -djo ker -s work -qui ere -or um -ðŁIJ ł -som m -c mt -ingh our -skin ny -lgb ti -gi ggles -break away -resear ched -par ity -my al -ms l -re tained -si vity -make inindia -sol ves -defam ation -wal tham -sri racha -road way -concep tu -al in -iw ant -å Ī -del ft -tender loin -ga ins -faul ts -sw ire -st ellen -pol lo -dy ne -bornon thisday -asdf ghj -sq l -sali m -advis es -vo ip -ìĹij ìĨ -un touched -she il -ontari o -uph ill -so bre -de shi -nov ella -du tton -craw fish -ا٠Ĩ -ma a -tw ine -kal in -ðŁĩµðŁĩ Ń -ye ss -brook s -hoo siers -ton ka -umbrel las -ay ers -ate am -acqu iring -su ction -ä n -wi es -tari ans -soci o -mat tb -shepher ds -o so -charity tuesday -s logans -ninj as -al bat -by te -bash ir -trampol ine -mydayin la -i ja -bas el -ror y -gol die -fi rec -un noticed -pecu liar -sch a -ker son -mour ns -liquid ity -qu ipment -hi bs -ar s -aeron au -slide show -sla bs -delici ousness -sk itchen -hta fc -full erton -cre ighton -aer ob -procrastin ation -az ores -white hall -uss occer -medi ation -djoker nole -and me -um en -noxi ous -jo ss -ili fe -anni vers -sudan ese -et res -under mine -whole foods -diso be -kor i -ade le -eli z -can ti -al on -gymna sium -sarko die -meteoro logist -yl de -ste en -stamp collecting -nas al -lo tt -fran ks -ex ol -ack i -good year -animal rights -y les -vio lets -mm es -s thel -ra pping -tu scan -wai ver -tur ner -eat local -northe asthour -anim ations -tom morow -t sh -ff ame -bra e -pe tron -glam our -br yn -d cs -bal es -ðŁĶ ¶ -bro v -bre v -b ons -physi que -car ne -x e -elix ir -vol ved -l oma -ìľ ł -æ ĺ -van u -ri gs -bal ance -va res -bon ita -sprink le -perfec to -di on -le ak -calcu tta -o ba -d ma -c mon -tun er -pneu monia -bo gus -apolo ge -cl ough -bor ne -)) )) -revi ved -o varian -ner f -c legg -fan fest -cho u -reali zes -mc n -li gu -leg alize -just saying -for ster -bo sni -k hi -in dom -hei del -en cryp -si ss -ed di -mar bles -brisban e -y ing -pre paid -wal sall -cooper ate -orche str -mar isa -ho wie -che wy -bren ner -andro meda -e gan -sto cki -cav endish -ag an -ban o -de ir -go g -bl k -re thinking -ch ig -rhe u -sni p -p eng -semin ole -m swx -an nex -lyn da -lewisham ilton -cu mul -tb l -dolph in -agu ero -........ .... -pre lude -at our -gr anger -too ting -ro tun -dis ar -home items -da res -**** **** -ðŁij Ĩ -compre h -jin x -as well -iri e -circul ating -ðŁIJ ¥ -over board -cultiv ate -rhe tt -oriente ering -ca k -bal kans -s itt -jas min -britney spears -ro tor -se aling -g bc -oc ci -f as -eman cip -com er -war time -tic kle -son ny -pac es -log g -at rix -sr p -g win -do bbs -uz be -the wanted -dru sh -ex tru -m icky -honore es -dar win -re dux -mm j -ram i -jalape ño -io c -do ver -ju ju -whit ney -s eng -en ly -au ch -archipel ago -vigil ant -man gal -wil dest -parano id -hal i -bb ly -sanc tioned -real ms -con co -u ddin -c sk -play time -libr a -sav ag -oc tane -rec tan -re turn -par rish -mor rha -cc p -c mu -sa iled -se vent -ro sie -pil ing -he w -boar ded -seg ments -neph ro -( . -cr ats -bak es -ðŁį ¸ -back tothe -sibl ing -kirk land -ke o -gu wa -bre ads -ðŁĺľ ðŁĺľ -t q -haras sed -ga u -wil bur -j isoo -ep er -li sam -tri ppin -sh ino -ru kh -beast mode -cho a -inst aweather -rich land -gar i -fe z -cowboy snation -fur suit -k run -a en -sycam ore -se gun -ent ennial -di h -o ax -demsin philly -ðŁĻ Ģ -sn hl -pen nies -pass words -ma kin -ty e -d eng -kni gh -jeep life -hel pline -a for -zz zz -ste amy -pic ker -iter ate -happen ingnow -ki b -bloom berg -martyr dom -bul ly -assor tment -a hora -zo e -no i -illu stri -agar wal -p sc -electr onica -recruit er -gar diner -rad ha -naf ta -dot net -pi ero -geor g -bel s -ðŁĺĤ ðŁĺį -tuberculo sis -run nin -mor is -haul ing -ev oc -bre thren -sha ir -frame works -a stu -ri gid -ku ma -kre me -jin nah -insu rers -ny u -f ere -nol lywood -good vibes -- ... -toi le -sk ril -instaweather pro -cze ch -pa vel -one piece -nike plus -fi let -cav ity -ðŁı½ âĢįâĻĤï¸ı -ðŁİ £ -dra stic -dail ys -siam ese -re bu -oste o -lar k -f re -sh elling -p é -glad ys -ðŁıĢ ðŁıĢ -gusta ve -submer ged -grand stand -att u -won t -f pv -b ley -jon i -ang ames -weigh ted -al ou -ठ¶ -les bians -f j -anni es -am l -dor ia -dav in -be ta -can c -madewith unity -ha j -bad lands -mu l -blu ec -pa wn -cov ington -neuro logy -htt weets -dysle xia -thel ove -ne at -fork lift -autom ate -une ven -monte ss -he in -ha g -rel ics -competiti veness -can elo -mar tens -bullet proof -sk ittles -g ya -pri mo -americ afirst -woo o -abor tions -?? !! -ma che -ld ers -rl ly -preli ms -direc t -cour se -swa in -super cell -ec centric -sting ray -ple ts -wil cox -west in -okan agan -kir an -car bo -bomb ings -ra rest -bo h -gaw d -di gg -mo ana -enti rety -en closed -dodge ball -par ton -milky way -at r -thorough bred -re ally -qant as -epiph any -ine e -aero smith -spi eth -ar thro -ell ini -du bu -bra ving -âļ½ âļ½ -re structuring -illumin ate -equ ili -mp i -ash ton -pony tail -ma scots -flat tering -cru m -ast a -à® ° -stranger things -bar nab -ر ÙĬ -make shift -got cha -will am -cho irs -kilom etres -gho sh -eu than -dol ly -un ning -the ar -cre we -w sw -j ace -dis miss -ke an -ho ta -kh at -~ > -thir u -ren dez -hart man -tee ssi -cas ca -z ah -hydr ange -fo d -aw p -mzan si -thick er -nago ya -ne va -sti que -cast el -dam ian -there by -ji ang -ale k -music islife -ra q -calla han -gou ache -somal iland -sean hannity -ra heem -lo se -elo ve -whar ton -rectan gular -illustr ating -har ne -auti sma -scra pped -ell and -decre e -nag pur -ki pp -so re -n md -ma as -gun a -gart ner -bel li -then ight -je on -gendere quality -gi ver -a el -gar ments -ne u -mardi gras -mar sden -ro wer -pollu ted -camer aman -vin od -be asley -cro c -ji u -hollyo aks -anesthe sia -al les -ste ward -lati mes -ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸ -tic ian -gor ia -come dic -ðŁ¤Ķ ð٤ĶðŁ¤Ķ -nai ve -sli ons -ł Ī -bur glar -ðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃðŁĺŃ -york shi -se ñ -fan boy -lau rel -inci dence -potom ac -rober ta -presi den -pr yor -os bourne -w ku -te me -pal ae -ðŁ¥ º -re boun -itu de -red dish -k hand -coloni alism -north carolina -ðĿ Ĵ -manne quin -lady bird -ta sty -knowledge able -g shore -ðŁĮ Į -à® © -qu aker -salz burg -med alists -chy na -bridesma id -ma ori -ro p -outra ged -in adequate -truck ers -al ana -ìĿ ¼ -ri x -oooo oooo -command ments -lam beth -aa j -eco friendly -bla z -morecam be -boun cy -rou x -rai ded -mi zed -sh c -gaw x -labor atories -ru bs -rest room -consult ations -ca jun -virgin i -so ir -rev ue -ple in -wag er -ç ¹ -we do -growing up -! ðŁĺĬ -face ted -sin ners -ho vering -ti ene -seas oning -an ja -leg go -il is -fla x -dev o -ash ram -mati sse -ker i -go wer -bo tox -mar shes -unh cr -ts m -opti mus -dun i -stu ffs -so k -order ly -n bad -islam ophobia -raviol i -fab er -cre ds -won ka -in fusion -over weight -daily news -assi mil -acol lege -medalli on -kili manjaro -sti ff -tham es -sun ken -th ard -my dubai -hilari ously -han nel -plu mber -fair view -separ ating -rasc al -qui en -necess ities -confeder ation -ll ll -: ] -weak nesses -bron co -ra ffles -el ot -ãĤ¸ ãĥ -advent calendar -ðŁİ ¹ -stra vel -tun ic -k su -im peach -e spionage -! - -di ment -cur rant -bio de -commu ting -by ron -ðŁĴĵ ðŁĴĵ -shad ed -tr uro -cray ons -ar ne -h sc -fre aked -dram ati -fle ek -u cd -marl borough -^ - -cross ings -mal o -black ops -bin ance -cho ked -chen ey -pl o -ge stures -val edic -ryan air -rem ington -v cs -mc kee -ec z -be gs -nail art -mayor of -happy fathersday -war t -pet itions -n ingly -clean energy -bro x -sl alom -exist ent -ab ay -ug liest -tom p -stom a -sel by -goal scorer -ben ji -overwhel mingly -lan s -semiconduc tor -south korea -re scheduled -sk yl -en listed -dow ski -si del -rosen berg -nas ser -white head -pri us -har are -en n -ry der -í Ĥ -mon g -clas ico -transpor ter -po tty -is me -** *** -vic e -sk it -ode ssa -l mp -her n -raci ally -pin oy -paragu ay -obitu ary -go es -bu cha -side walks -angu lar -un constitutional -transiti oning -i bu -gu ys -un packing -oooo oo -black girl -ber gs - ¯ -wordof theday -trump train -thunder bolt -m si -fasci sts -ठ¬ -t sk -collap ses -raje sh -loveis love -migr ating -set back -ðŁĺĬ âĿ¤ï¸ı -t els -safety first -nar rated -jae joong -un answered -lique ur -en nes -dal go -bill ings -salt water -mer maids -lon gs -clap ham -we arec -pic collage -n ach -h ace -pois oned -lo th -ag na -adel rey -guar dia -poli shing -peace keeping -d all -p isa -la pland -process ors -de andre -so bs -p once -dra ins -c be -ðŁİ¥ : -spla sh -meat ball -fon tana -worcester shirehour -ne v -bri sk -b int -ac r -po x -cay enne -skril lex -j fc -hahahaha hahaha -gla s -en gul -tempor al -oni zed -con cre -com pose -vibr ations -plant ers -fer t -criticalrole fanart -t bli -sch allenge -huck abee -munici pal -iam bic -radi os -ne vis -dura bility -mc cla -horse back -inst itutes -ful fill -atta ch -ate ur -ak an -resi sting -illumin ation -hand le -hair care -om ent -macle od -ka iser -g no -bear down -ly f -gl omer -distor tion -z m -san k -roo sters -is now -as ports -ag en -wo ken -st george -ro mper -my le -econom ists -ru to -t will -health and -d ito -ws l -tair p -pra kash -mic heal -h ts -w rights -kat su -fioren tina -defen seman -d itch -var sity -texan scheer -ba ham -sc anned -we il -seduc tive -ðŁijį ðŁı½ -fu e -er win -dav ison -ter ran -moo ds -wool f -re source -@ . -cu sh -ðŁį ° -regre ssion -cur led -la zer -jo anne -ab bott -mo z -down ers -mm mmmm -valent ina -k hair -dream t -cro ok -che k -ste aming -nephe ws -cl eric -as ober -indefin itely -w ye -us news -joy ce -flu shing -wynonna earp -ron do -kis s -hot dog -bar ns -sax ophon -far ley -gas p -decre asing -al way -pe x -l sd -shi ft -p outine -ra zz -rescu ing -ni ko -ho ch -cc l -u aap -n ts -m car -il wx -conqu ering -ket tering -stur dy -delay ing -sto k -vani shed -cath ar -bin gham -in v -ic hiro -he mo -budge ting -[... ] -be ss -sebasti an -slow ed -ðĿ ij -musli m -stun s -acton climate -ve a -se ton -rose tta -oun t -hard in -flu id -ca w -ðŁ¥ Ĥ -yach t -un l -sp hy -provoc ative -or ic -is back -__ _ -nicol as -gy an -loo se -fl in -reb ate -: :: -! "@ -com icon -she ff -down stream -chic hester -beach life -mom life -diabe te -ar ra -van e -ok u -ye o -man go -try out -app ell -he irs -arjun a -dd u -na veen -movi c -soci alists -s back -criteri on -soyu z -k her -da z -yol anda -wine oclock -re ina -one w -leon ard -en dez -u bs -support local -facilit ated -carameli zed -b pa -vuel ta -my tho -m ami -spe are -nbap layoffs -fe vre -nick jonas -im print -c so -craig slist -la salle -gi deon -ha doop -dis regard -w ud -tu c -ma gee -acou stics -ta a -qui e -pol a -cr t -dw yer -dis sec -capit ol -men tion -kn oll -he igh -fin ders -plac ements -l se -indi ra -gur i -madhuri dixit -kingdom s -iambic pent -geor gina -je ky -conflic ting -bay an -aga tha -uph old -dr on -vic ar -ex pat -periph eral -pe ssi -fa f -ance stor -? .. -wid get -pun c -comm enced -beav s -air waves -ad dis -po a -de sses -co den -vu e -ru pee -kar in -spo ck -m sy -ภ° -pr ick -fill more -ti fication -thing sto -sar de -em ile -pere ira -n ad -bright ening -arre sting -wo king -usc g -sp ill -raspberry pi -hu go -ite c -is ma -cuff links -optimi zed -oc c -mi wx -en ka -el ited -afford able -sa kh -coron ado -ho h -at ul -ai oli -jim cantore -accoun ted -vin ay -her mit -groo ves -ran ch -r illa -we tter -ou tof -veter in -ni kov -ki an -fair banks -ram apho -n iti -k ko -ru sty -ne stle -tv xq -shahe er -âĿ¤âĿ¤ âĿ¤âĿ¤ -penn ant -gem stones -dem debate -ðŁIJ Ĭ -auton ews -support indiefilm -mach o -ve x -new sat -ne ti -conce ssions -can died -yof the -mac au -den ds -cricke ters -san iti -mari ano -gh at -ar toftheday -¡ ľ -e gos -gen oa -chat bots -bri er -al labout -mon ty -spi ed -r tr -comfor t -sni ppets -real time -gra in -exam ined -en lightening -tt u -god bless -release the -sing ular -ki ans -ha ka -sor ren -defe ct -mar g -equ ities -d orian -su ka -per l -aishwar ya -pul lover -preci sion -fair way -ne ve -rive ting -vill anova -en com -ak o -passion ately -europale ague -siem pre -x vi -enligh tened -c fr -âĺħâĺħ âĺħâĺħ -wast eland -is f -new comers -emergen cy -amphi theatre -- . -text books -figur ative -tre mb -pe sc -ab hin -ab bot -ac acia -har ds -por sche -kau ai -el isa -car rick -abo u -elli er -be ch -neu tron -galap agos -ru ben -in nis -how to -nun s -sab ine -i ac -clin ched -no tori -fi ves -cairn gor -per i -gr c -ðŁĴ¯ ðŁĴ¯ -mal m -twelf th -di ff -rout ines -marty n -lin den -synthesi zer -nu mber -game cube -fal kirk -byz antine -queu ing -gr ill -scal able -char red -rou ting -her bali -gri zz -ðŁĺŃðŁĺŃ ðŁĺŃ -tol l -termin als -l pc -ab d -war mups -remo vable -¯ \ -vi go -pap aya -ne ve -lov ingly -jo kers -ib les -sse tt -poten ti -pel e -gi gi -sadi q -leg acy -son o -ru pees -retar ded -ele e -par r -fi ance -ey re -say ers -pend ants -mak nae -al bans -adap ting -p ff -pu berty -ji u -ing rad -hypocr ite -diplom ats -phys ical -rob by -bon sai -ãģ · -f att -catal unya -âľ ĸï¸ı -ro ma -more land -so e -conver sions -stl blues -shol m -gra ssy -pra do -on u -assaul ting -> _ -sett es -dis graceful -aph ra -âļ½ï¸ı âļ½ï¸ı -ठª -kil n -goal tender -s ru -philanthro pist -b als -th n -stu den -sando val -dogre scue -eli ons -asse ssed -lar go -hec tares -sh rm -sa if -cle avage -no ches -n ene -fat alities -cur ing -clean ser -al es -p vp -south bank -pizz eria -marsh als -kni fe -an dover -tbli ghtning -sr sly -ou te -digi mon -timesof india -prome the -le bo -f su -wit z -rever e -man as -mam ba -ch ica -gu an -exhibit or -csr racing -d ere -xx xxx -gu sta -story time -ston ey -organ ics -and u -se am -min ogue -anushka sharma -ab a -ðŁİĻ ï¸ı -ugand an -chro matic -as sn -document aries -sh t -ru paul -loy d -k ats -e us -ite ch -me dusa -pan ty -kel logg -et to -talla de -sha a -do st -p ms -mari ana -je ster -croo ks -ðŁĶ ¬ -min danao -ind hoven -ðŁ¤ ª -le xi -tv n -jan is -co te -ãģ Ĩ -ser rano -iw m -ðŁIJ ¬ -k ke -distribu tors -cap u -counterfe it -camp site -ag gie -ðŁĺ ¼ -chhat tisgarh -~ @ -state u -san di -prevent able -cl s -can ne -mm c -i ver -sa haran -pal is -night out -do s -ap ia -absc bn -manag erial -aro se -mo wx -aro sa -ðŁĮ ³ -under dog -remo ver -astronom ers -lent ils -su scep -smoo ther -pend leton -fau cet -e mory -dal mati -af cb -tic us -exem pt -en rol -d heim -ðŁIJ º -restric tion -star fish -sto w -snor kel -thunder birds -she ad -homo sexual -dy n -as li -andre tti -dou che -dom o -tar mac -slu mber -pr onto -first dayof -mini ature -mari achi -argu s -recomm ending -mobi les -in ce -illustri ous -or c -adver ts -gr its -wea sel -pag oda -over pass -gre ys -maxi mus -arma gh -wood land -sun ni -ðŁĴ ī -ë Ŀ -ti one -soci o -ho s -ðŁ¤Ĺ ðŁ¤Ĺ -wind sor -subsequ ent -munch ies -id h -exclu ding -e mi -cu th -z ai -week days -law suits -barn ard -Ø ª -pe tting -net es -mul ligan -pharmac ists -ra quel -e ton -cran ston -gil ded -cle ary -ce ph -ra a -pam per -lombar di -as in -sher ry -pro d -for te -ari anism -buffalob ills -æľ ¬ -ðŁĶ¥ # -uu u -just ices -car ina -nat in -mas low -dro oling -cog nac -cam ber -el ong -r dr -in en -convic tions -am use -tro ck -harm less -visit ation -gen omic -bl and -beno it -chim p -tuscal oosa -gre asy -x po -gil t -se q -per mitted -christma seve -book s -mu e -old school -human right -be ati -ðŁĶ Ŀ -sh at -sculp ting -h wan -fern andes -sci utto -fu entes -endeav ors -maid stone -un paralleled -shou ted -queen of -mer c -band ic -ve da -sel angor -pi le -ja han -intimid ating -disapp ears -cl ich -za ha -w urst -hi v -fod ils -cor dless -aaaa aa -hy dra -bel inda -e els -bu f -su staining -rugby league -no c -brig itte -( ðŁĵ¸: -tromb one -soo the -smo g -ad p -stab le -ing ley -diagno se -ms g -we ss -tic keting -one e -nsw pol -e up -auto psy -adity anath -sun down -river front -si ya -p is -hier archy -dur ango -di jk -ren shaw -he aps -epide mi -david bowie -interne tof -dd i -nation ality -mb ar -air y -win der -w alia -elli ott -c x -bav arian -pl att -an tw -wi wx -sof ter -ne ha -h eller -th and -dani ela -bo ast -degra dation -ðŁĴ¦ ðŁĴ¦ -transform ing -man e -av ut -ðŁĺĪ ðŁĺĪ -vo ter -the e -t ate -pu ff -in door -sop roud -boy ce -boris johnson -wait in -immun ology -ðŁıĨðŁıĨ ðŁıĨ -âĿ Į -street food -liz asober -cavali er -c elia -need le -motor ing -g ato -, ) -ra de -harve st -t ms -jar pad -on ey -air men -v re -impair ment -abhi shek -snoo p -l ant -fam ously -bl ou -s ze -g ander -un touch -tu f -dee jay -col lateral -b ind -ðŁļ © -pin ning -ic n -' ; -the economist -ul tram -worldwater day -ti poff -the i -feed ers -campa ign -sc umb -day weekend -yo m -pe dic -h ough -ps v -pl in -on de -boston marathon -az zy -* _* -con ley -thi ago -hoo o -gal erie -luci d -je tt -gl itz -final fantasy -achiev ers -y ung -peregr ine -op hi -dam es -biom ar -âĺĢï¸ı âĺĢï¸ı -sk c -l ics -fl ank -ar rahman -ho of -uphol stery -t ats -wo z - ¿ -snor ing -ra er -l ju -ap d -pl ating -kan u -im ation -fragr ances -m ra -mor ay -mo tt -im muni -hearti es -bho pal -tim ers -g ata -color way -car nation -win get -si ghs -s ville -optimi st -chate au -olympi ans -ci o -singer songwriter -ny o -fi bers -bur ch -ag ro -mil ne -ig bo -cr amer -ation als -dan ube -pad ma -nor mani -en forced -bre ck -boeh ner -ar den -sur rendered -pros thetic -om a -ha iled -calcul ations -w fa -bi b -fcb live -fon da -west coast -que sts -friend ly -to wie -fit ch -bal ot -star dom -scrat ching -ho sa -thi ka -o ven -stro ke -out post -pharmaceu ticals -hi kari -mu y -af d -fallon tonight -squ at -or u -dra ined -chocol at -ë¯ ¼ -wor ths -ri b -mu j -that s -residen te -it el -boo st -mi gos -mul led -la a -etsy shop -don keys -me k -p tc -flin ders -e hs -ro hit -mu ir -g ad -compos itions -åĨ Ļ -combu stion -i kh -yemen i -wav ed -gar ci -ak os -oo ds -fu sion -se que -s lan -pl ur -kic chasu -shenan do -s ams -worl den -horo witz -with me -mic robes -k ki -ðŁĴĶ ðŁĴĶ -w su -patch work -fre er -y aki -the art -symboli sm -mil er -bt n -ma bu -side kick -motiv ates -sag itt -natur als -serv iced -ps ori -pa ola -qu ig -i badan -gi ggs -ë ³ -sciento logy -si oux -salam at -d res -cad bury -d hawan -ci ón -_ ' -swa pping -maris ka -james bond -explo sives -ay les -af er -s agu -cen sor -tom a -jeff erson -ring ed -par tist -ir responsible -aguil ar -vac ay -equ itable -altrin cham -ac ur -man ish -ger min -schoo led -pu tter -ed ad -nav al -toast y -sol areclipse -dish u -coy ne -ac co -mu ck -mar an -el os -len der -cro ix -worth less -ha ber -gun men -ðŁį ĵ -zen ith -t enders -hur st -hol tz -itali ans -car low -u cd -characteri stic -bun g -av l -u th -sa sia -rs l -red man -neighbor ing -green peace -sti ps -follow party -y gk -en os -omni bus -na issance -chri ssy -secu re -call back -ji hoon -memor y -block er -l anta -daf fodils -bil t -ffer ty -fau st -ie c -nipp les -so g -m nd -jagu ar -bol dly -ab poli -pro position -gun sense -evan sville -cu tters -we go -dou n -do x -stal lions -ka j -shi ppers -j awa -vol o -le ven -pap rika -kov ich -jor di -induc tees -app alling -dial ysis -allevi ate -âĢĶ âĢĶ -pie ter -mid wi -q tr -juli ette -inter mission -haw ks -act ment -one ill -k lin -vam ps -fam ous -cou ld -autom obi -da an -west end -elli p -nh c -mel anch -web series -ton gue -snat ched -smy th -tan gible -sl i -e asing -bar stool -over lay -afford ability -ting ed -ter as -ay ush -wanna one -rh ine -dan a -sh ana -kend al -fer tile -w ir -repl eni -lar vae -is ro -con vos -ab brevi -u cc -hun gry -bur rows -ag er -nav i -mat in -du per -cer n -ma don -ķ ï¸ı -é ģ -tu ps -hy att -sh ep -friday night -wis er -hei di -hat ton -p gh -foun tain -wrist bands -ahmadi yya -aeri al -subscri bed -so los -m ace -sla yed -for fe -dul ce -christ mass -arun jaitley -viol ate -ob stru -ni eces -w vu -idy l -fa ze -pre serves -infr inge -premi ers -inter vals -agen cy -( © -stand alone -di mes -bo er -param eters -ge tit -ðŁĺĺðŁĺĺ ðŁĺĺðŁĺĺ -tu lane -for given -scol l -mb ps -smash bros -rob bi -prima vera -ali st -ghost ly -ay at -ye ats -impre ssionist -ear phones -caul field -wai kiki -sal ute -sc ou -mu ay -louis vuitton -bak hta -ado g -inven tions -hur d -forec lo -stream line -thalai var -ch snews -will ard -t sn -euro parl -cru sher -my sore -gro wer -ra ping -pat ti -g den -sm w -muf ti -kid man -ab r -soun ders -skep tical -ðŁĶ İ -sun dar -i me -fer g -feather weight -ar lington -pas qu -ag azine -wearab le -nati c -mccl ure -inter mitt -hor de -six ties -car te -bha v -ze al -experi ential -ador ned -som mer -eno te -hypo thesis -stin ky -pro to -dead lines -vo gel -mus ings -monc ton -gu ter -f le -aci on -voice of -ta sha -inhabit ants -type face -s ba -bts x -ðŁĶ Ĵ -wor x -u hc -jo ko -cell ars -gor o -continu um -... & -weather cee -ha p -sr k -ris ers -lonely planet -un named -co eur -ðŁį Į -the world -ili ke -fa sten -ami go -ri ba -ramapho sa -staf fers -had ley -? ?" -fi ore -sal ut -hu ff -bez os -Ñ ĭ -ra der -kam ala -in line -fill ers -um atic -all in -shat ter -re in -o ku -ch ases -fla gged -baby metal -water stones -ts b -cut out -op hel -aam a -rockab illy -sto lic -jet blue -ich ick -down ton -uzbe kistan -pat na -la q -gr ange -) _/ -subsi di -sc p -newsc ast -it sa -twee tyour -e mor -archae ologists -uni fication -por ta -q x -protec tors -pro hib -charis ma -car tag -ren fre -scul pt -guwa hati -de ma -boo p -unf pa -dex ter -lay la -alleg es -sou ps -never again -l ys -cal c -bar oness -visu alize -ger ber -absor bed -i ers -a han -fon tein -detec tors -verst appen -sv c -formul ated -ac dc -li x -in competent -bh k -lour des -water house -snow ed -appreci ative -sig ma -lizasober ano -pen ned -pay check -tall inn -fanc afe -par isi -av alley -vi g -ru fc -hard ship -so cute -po ise -ì ¹ -roth schild -k ly -???? ???? -l hp -il ay -f hs -am ad -ide als -brad bury -bal boa -nic ot -kid nap -wol ve -tas manian -op t -matthi as -ãĥ³ ãĤ -super markets -mylittle pony -me lee -li ster -gr oun -fe dora -kind ness -en en -bra hms -¯\ _( -ros well -mar lene -ic u -re formation -or ail -he brides -dispar ities -terrac otta -swal lows -re id -influ encing -flu or -den e -tum our -blon des -thunder bird -sh eva -moga dishu -ka b -cre eps -i ving -ene ed -anno y -âĶ Ģ -intri gue -enqu iry -ar aj -tur al -kuber netes -end lessly -divi dends -tor a -ti sh -commemor ates -un ra -tri b -pon ty -ne m -diss ent -brew ingco -ðŁĺ ½ -nor mali -bi of -( ... -chil len -ì£ ¼ -mell on -av is -mccor mack -ing ra -enrich ed -custome rexperience -testo sterone -snu g -sett i -ger onimo -inqui rer -bre aches -very thing -bloom ing -mu ra -dispo s -bi de -de va -shade sof -in trin -sh ev -s ven -nayanth ara -gan esha -c ws -ber ta -label led -use um -nick named -ma han -car uso -ap ur -ðŁij Ĩ -w q -orphan age -discar ded -mag nu -lu e -je on -bridge port -pac ing -mercur y -( ðŁĵ¸ -marx ist -amphi bious -transplant ation -stit ching -then burg -gradu al -ãĤ Į -ro ft -ma ils -ine c -guy ana -dopp elg -ver o -re write -head less -harb augh -gate way -car sforsale -sw i -st is -mach t -un de -sura baya -stap leton -nur turing -mil ner -ya o -lma oooo -ko sh -arsen al -k ame -er ry -ar royo -dis misses -ru bbed -rc b -lew d -dil u -and or -vi de -ur in -inter sec -ha ar -al b -year swith -app leton -é al -ul livan -suc cu -monter rey -d mx -artem is -ron nie -farm land -s football -gro tto -anth i -ãĢ ģ -à® Ł -vid ya -jimmy fallon -ൠį -t zer -gravit ational -w thr -u hhh -e hr -tin ker -ti juana -scran ton -ram charan -bar clay -re van -m si -ka p -wr s -we thenorth -tor al -sat u -gro m -fac ep -erick son -z yn -se dge -oo dle -spur sofficial -ds p -sic ilian -soli hull -recei vers -ladak h -hend rick -ther i -presi ding -mc guinness -litt ers -gun nar -gh oul -wi b -n tv -kar o -fro ck -b lau -ampli fy -all is -ul lah -memo irs -kh loe -intercep tions -pet day -lo oney -con fin -ch ay -piyush goyal -frequ encies -ut z -event ual -warm ly -obli vion -an ka -ta it -âĿ¤ï¸ı . -director ial -ru lers -prince s -mu ck -stur ridge -deu ce -abri dged -bagu ette -un cles -pen du -min ding -forre ster -av ila -wall er -wall street -ment or -hin o -high way -crom well -fanart friday -mb i -co yle -a hi -tro ve -spie gel -pay tm -mcin tosh -jan sen -nit i -nash ville -len o -leicester shire -le gos -dic t -ðŁĵ ½ -sp ad -beverly hills -sy rah -separ ates -z ain -un fit -dra gs -tan ia -over flowing -hri thik -haw thorn -z ani -mac far -fi de -to tem -pe ds -fundament ally -cal ico -sin ner -j ä -hil de -ds d -ten ay -ta hit -mil f -lie b -inform ing -up lift -ra el -mortg ages -lec t -ii ii -guillau me -compos ites -old smobile -l end -gar th -com mish -bapti zed -scorpi ons -ru cker -bringback our -alli ance -thalap athy -tal i -sp ans -eri dge -wither spoon -lin da -sky lar -kor n -hom s -Ä į -sil enced -caf fe -ar ty -dist inguish -to wed -pun g -jessic a -ear nest -beau fort -t ama -study abroad -si khs -new bie -nav ratri -mar ble -loun ging -lit ter -dal it -so sa -iz es -gra de -com promising -tr iton -de tta -v j -chau ffe -spec tral -powe red -montess ori -artic ulate -hal ton -al co -ye y -mn twins -acoun ty -ðŁijı ðŁı¾ -âī Ī -mad men -kal a -gru m -chi k -ati s -su me -akh tar -job search -high lighter -bo ath -âĦ ¹ -tar zan -lam bo -âĽĦ ï¸ı -ox fam -dump ster -pretz els -mac os -incl ined -fac tual -adverti sers -shu i -pu ree -ml pfi -anti dote -cap o -pa str -merc ado -but ton -ar min -ag g -lol la -horri bly -er rands -christop he -time snow -monday motiv -li ss -scand als -mc i -dispropor tion -âĺ İ -sur pass -samar itan -so tho -pu rest -fl att -trivi atuesday -delec table -leop old -hermi one -chou dhary -en rich -¡ ¡ -subsi diary -ine qualities -bachel or -auto immune -la kota -i hop -ad jec -the simpsons -sh es -se k -gret chen -up stream -hin akhan -coper nic -x tina -lu g -tough ness -e ad -cli pped -bi us -sl v -fah ren -dee pak -ca u -x an -im mature -dig ni -bo bs -shred ding -but tery -accommod ations -de ven -chun ks -super league -sky bet -kil dare -je et -ë į -ce k -wrec ks -pro pane -oh l -tb d -quo i -trum pp -mi mo -reluct ant -ver ne -o ic -ma gh -ar nau -se ver -li dge -stair way -kicchasu deep -ðŁĶ º -mach ining -aama admi -ot i -c da -al it -pan y -inst alls -ac ct -e shop -di em -hard well -fulfill ment -sc afe -qu ack -extrac ts -swee tened -fi ghton -f di -d inger -wal tham -us ur -refe rees -seok jin -gran n -af rin -th n -sch af -par cels -bet is -amar ine -nom an -kh tar -mor itz -cou pling -bar ons -ðŁIJ ¸ -à ¸ -sl p -sad ler -x ander -tri ad -mc millan -kh z -divi ding -ìĹijìĨ Į -dar yl -zed d -le ys -pla ques -flu ori -tipper ary -on nell -di dier -lang ford -im c -the sun -bir dies -ar cha -ye ssss -t di -dar ia -cand ace -al tam -pal aces -ch it -sant am -event ful -book of -ad b -mon stax -cre ole -co el -âĸ ½ -we aren -sten nis -she ath -ati sm -gron ingen -mlpfi m -le pre -wrong ly -rsp ca -rendez vous -acknowle dging -pel vic -solic itor -sla ys -nue stra -lo d -is lander -fer oci -fashion show -ra ss -dge on -adole scents -sma shes -negli gence -grate ful -ved ere -sw oop -ing l -apol ice -vand alism -gan n -jo ao -di supdates -zimbab we -under age -radi ance -w of -bour geo -pla s -cr ani -gh ue -wrec kem -warran ts -re form -jim mie -at wood -ys l -neil himself -l bj -i man -tan to -nois se -ver bs -equip o -al together -mam ent -l ice -dou glass -tier ney -pri med -j hal -furn itu -braz ili -v ill -past els -n ison -u ff -paral ysis -jay e -im po -ðŁij ģ -strate gically -pakistan is -was sup -super bike -thank u -tru elove -sha ikh -israel is -vi p -to g -li en -la ker -grey hounds -cul ars -bian chi -balot elli -ar ran -loo s -str ates -he bron -ar vo -sunder land -the al -tomb stone -sand man -c pac -thanks giving -love him -lat ino -an in -aka if -ĭ ãĤ -tor quay -di est -alli anz -ðŁĺ ķ -golf club -cl lr -wal cott -sch nau -promp ted -nomin ating -len nox -val et -mon ro -may ward -e ph -ðŁĶ Ķ -inter oper -r da -re flex -arm chair -ê° ķ -stri pper -por ti -ph arm -ham za -ni reland -ne ue -h pv -port foli -sun burn -fris bee -be al -bapti ste -x h -ty m -pr ati -o vers -haz rat -deser t -der ry -us ky -em mett -ach arya -)_/ ¯ -shu d -may a -ham ill -ra im -nr c -fitt ings -cur vy -ðŁı ĩ -ster ling -à¥ Ģ -wal kin -short cuts -mil ly -ast ur -alpha be -pl i -pe z -miss you -rad ford -ml g -ta eyang -notjust lakes -du mps -seren dip -le ur -ra ving -e ster -de priv -absc bn -ðŁijĩ ðŁı» -scar city -o cr -mean ings -cap t -da hl -fer mentation -bri oche -to win -out lander -massi mo -en cro -ðŁ¥ ³ -buil t -po tam -kir i -tm w -monit ored -k ites -peoples vote -gray son -íģ ¬ -afri ka -a dies -i vote -gy ne -g annon -di x -c mc -ou ral -fox andfriends -bel i -ig ne -gl an -katrin akaif -co politics -qual itative -p si -lu cci -disc oura -âĺ ® -kel li -gau tam -carac as -reale st -pu la -in us -hill top -make aw -atten borough -tw y -r arity -peck ham -ma hon -corn elius -clin icians -ton line -tb i -paradi se -ka si -inev it -fresh ness -colling wood -lun atic -defen se -cop d -in fra -wain wright -sains bury -alab am -te ma -lac o -chec ker -releg ated -tren t -stal ks -huff post -bhubanes war -ast ral -share your -prim rose -hi me -cat an -end ment -en dow -cle mens -mal oney -hil ary -game time -den ise -collabor ators -b wo -radic als -gue tta -ici on -au a -snap matic -sat chel -excav ation -base man -s ão -gn ation -fel d -surve y -shah zad -ma st -anirud hofficial -tru cker -ot ago -geo graph -ethe l -âļ¡ï¸ı âļ¡ï¸ı -s ver -mu tt -internetof things -ancho red -wh ouse -bang la -bal main -ç¹ ĭãģ -break fa -á Ģ -twi ster -te tris -ca v -stag s -g z -au b -stor med -hel ens -yar mouth -st asy -gustav o -co sc -vin son -up p -sc ricket -assump tions -app e -nu h -u er -pre mise -n aga -e amon -coron ary -na f -north side -el mer -ro tar -out lining -el f -re surg -kat elyn -in can -hyster ia -ce e -am bani -pro lly -Į ãĤĬãģ -ax es -san jose -rem brandt -mag pie -even ly -scor sese -qu aint -f g -b buk -indian football -weare all -spd wy -pis ces -ec g -âĺħâĺħâĺħâĺħ âĺħ -pre orders -: | -ni pple -sal azar -ju me -jail break -min n -bas sett -ze tta -jef free -ad jun -tic on -san diego -drink local -chol era -solic itors -o bo -com post -ni an -wr a -tre ach -ic ic -profession al -del ve -leg ate -histor ia -cro issant -con noisse -nam o -palli ative -chem trails -i ority -global warming -comic art -behavi oural -re sted -li as -cli mates -Ł ãģĦ -rut land -nou rish -menopau se -hot ties -demen ti -ve spa -mel ville -anal ogue -tz man -str ung -im perfect -gl are -cir cling -ros berg -rec o -oc ity -lo ire -em be -do ssier -ne el -nan do -me a -gal vani -fin esse -ag p -berke ley -asi m -âĺº âĺº -quil ted -ish ere -un matched -po tion -for z -at re -selfi es -juli ana -ðŁļ ¶ -âĸ º -mel ton -âłĢâłĢâłĢâłĢ âłĢâłĢâłĢâłĢ -spin rilla -pur cell -ed p -at leti -tony awards -ra ja -pro gno -mol ten -stu ff -p ally -nobel prize -âĻ» ï¸ı -spiritu al -spe ake -sa sha -bri um -tru ss -critici ze -assassinscre ed -yor uba -u lo -fire man -workin progress -ef cc -fla res -ro bot -hi kers -cl l -shado wing -pat sy -leh man -c ns -å ± -guad al -à± į -ra pe -r honda -paralle ls -son ja -langu age -land ings -z ola -cr amps -bur ning -apprais al -jol la -ham m -kas a -gul ly -f go -uly sses -ri be -ðŁĴ Ħ -ib u -eti enne -bri ar -fin ely -comb ating -y ql -go tham -we chat -to paz -primar ies -l se -iz z -hel e -dispon ible -cy stic -bel ichick -th rush -kansas city -ge om -soli di -red bubble -by stand -cambridge shire -par fait -ast le -ow o -ind ore -stom ping -sm elly -ðŁ¤ ĸ -locom o -adm itting -hol me -clock wise -min sk -mc co -for get -ev p -cam ra -ab ella -yo tes -universit yof -mé xico -silver ado -ric ket -crom bie -pu j -eradic ate -deli ght -y go -glam ping -vic a -du ggan -coun ters -cf d -sc our -react js -pu ram -paras ites -in ki -vill en -stel la -li mbo -ang as -k cr -ðŁĴļðŁĴļ ðŁĴļ -vap ori -mum ford -oli gar -à ¼ -al oo -boo ties -ad r -k elli -dru mmers -av ici -nature uk -ron al -in trac -un splash -le che -g oma -el ine -envir o -bi onic -bu eno -mi k -av in -star ling -em powers -cake day -boy cot -ðŁĴļ ðŁĴļ -ðŁĮ¸ ðŁĮ¸ -v ach -m ci -fractu res -ger i -sk ing -exclu ded -lu ce -ja ve -ig gy -evi den -aki stan -a wn -mor als -luci fer -ha ban -tumb ling -sunday motivation -mo sley -captain america -sch icago -the one -mo td -d ts -ðŁIJ ¼ -rep ell -ii i -locu st -geo spatial -mer sey -immer se -desc end -ber nade -j s -boat sales -win der -cran k -sing leton -candid acy -ben a -ðŁı» âĢį -high lander -ol t -k prs -healthy lifestyle -four teen -end the -ith aca -circul ated -r ans -pre valent -ha vas -splend or -roo ster -kalamaz oo -jewell ers -enne dy -rou sey -es y -cann ons -ornam ental -// // -ren don -win ne -mol ding -eid mubarak -coun tess -simon a -ha wa -fo es -du ster -sb u -por tray -mar ries -goo dday -cho co -achi ever -ðŁĺ¹ ðŁĺ¹ -pre neur -tr amp -tom i -n bat -garden chat -farra khan -ever glades -ab ru -sou sa -se ce -homes wee -terre strial -bar it -sri devi -ol u -mel inda -f rick -can dies -ðŁĺŃ ðŁĴķ -qu reshi -family fun -exor cist -cardin al -ny t -dies el -cu mulus -capric orn -si ology -lor na -dou gie -an die -super sport -c fl -п ÑĢи -say ang -pe ek -ภĬ -lo be -j em -ing lis -gg led -c sn -amne sty -chu ps -ba es -sau er -ðŁı IJ -mongo lian -en et -back street -dr illed -acce ssing -ce o -b se -ai ken -pur r -wor sen -whe res -war k -testi fying -bu ri -bla st -aw g -ðŁĵ ĭ -re defining -hear ing -u ci -c mp -bon i -tail oring -ta ji -noc chi -em t -stephen king -ne et -compla ins -campaig ner -luci ano -twili ght -ti esto -pas sports -flo yd -cathe dr -na ked -caregi ver -b coz -ade cides -ku ri -ly k -br aries -dren ched -disc lose -ðŁĴª ðŁı½ -le blanc -je tty -gar ty -chip mun -b su -rhyth mic -ic z -fri d -anne x -ame x -solo ist -lanc ers -arro whead -speci fication -simul ated -na is -inver te -bo wing -wor ship -f z -abo ss -sha q -ì¶ ķ -challeng ers -an arch -aamaadmi party -ãħĭãħĭ ãħĭ -suffol k -so corro -sn ell -cla dding -absor bing -shaw a -particip ates -ðŁį Ķ -book stores -bak u -seap ort -ko jima -gab y -pack ard -electr ician -let it -mo wing -fa wad -young jae -hot mail -men ing -u rie -intim acy -con ti -: ") -lifeis good -in ciner -i dri -craz iness -jour nos -fran chi -bott len -al da -ff es -k x -south we -air a -clay ton -sco ti -f j -bri ga -ð٤ĺ ðŁı» -demonstr ators -y z -stor k -na q -casc ades -travel chat -plat a -pad ma -fran ci -at tain -bat girl -lom bard -hoo s -d dos -neon atal -discla imer -r ss -r ant -di sen -tex aste -so cal -frac tal -cam ry -stri fe -sn acking -mu h -sant ander -mor ons -gra f -par ades -hu ston -dru pal -mi ento -kir stel -hy de -vom it -forti fied -sphin x -da v -bir yani -win nings -s baseball -mer ged -lovel ondon -ling ering -dream big -car leton -liveli hood -djan go -astri d -gri ds -down e -bru ised -s ne -scarec row -hel ium -f nc -bi ggs -an ter -restor ative -em pires -ab del -life style -kiwan is -colloqui um -me en -pr ick -anti que -ze b -mi mic -edmon ds -ðŁijĬ ðŁijĬ -q ing -pp el -mc gill -interpre ting -âŀ ķ -rash ad -do ka -narr ator -electro magnetic -ash by -sau ra -iran deal -âģ īï¸ı -krish nan -in di -ff en -bre a -os man -multin ational -chi ppe -recruit ers -aus biz -p ounding -re gen -cur sor -refu sal -mac s -in ak -ax ial -wa ifu -up cycled -hindu stan -cas sini -carly le -scrat ches -re ef -man atee -eat ery -ðŁĵ ¢ -un condition -sen pai -on ther -comic book -pro sciutto -de mar -mi se -ma ge -fre ec -aye sha -al der -android games -ley ton -ho ck -door way -chicagof ire -aali yah -sw elling -bi x -. ðŁĺĤ -evan kirstel -torpe do -kon stant -genevie ve -ma ia -ha user -do torg -hide ous -fi k -sp raw -e ek -z appa -wan dered -' ' -ra jan -bam bi -( $) -wid ening -tool box -sa ir -illumin ating -pra ys -out patient -i w -day o -lo b -sw fl -sha des -gu ms -coo kin -ko di -gri ffin -traum ati -ste a -slaugh tered -god bless -air time -pseu do -b sa -hau led -ar if -à¸Ńภĩ -le l -wc po -mil iti -char ters -worl da -ru k -k gs -digital india -is able -idyl lic -esp ino -marie tta -e bo -team canada -ab our -wil ton -rock stars -fav ored -phys ic -wrink le -tb r -d print -ball arat -ad al -z ey -ðŁĺį ðŁĶ¥ -tom lin -mt r -pal sy -fener bah -tight en -phil ia -ir oning -ry u -b ant -enqu ire -ca ir -abur ger -tru n -green berg -chau han -ir ina -sh ani -trend setter -pre tt -zaf ar -alo ve -v ici -pan ic -no o -lu stre -disrup ted -bal lis -son sof -mon si -inst ac -ake st -ëĭ ¤ -kw ame -horror movies -distric t -sau cy -mb an -ar mies -with drawn -med ics -loft us -er oom -be kind -ar ns -all on -un ison -davi ds -cr at -nicot ine -so or -sm x -on co -cospla ying -zombi es -har ms -e ger -ro sy -moon shine -fe in -ce tt -du brov -reg ents -ben itez -ðŁijıðŁı¼ ðŁijıðŁı¼ -ste c -m alia -prioriti ze -ic eland -ft se -v amo -lam ont -homo sexuality -bre es -regu i -cb p -te j -sky sports -deter gent -sha sta -de rel -conserv ancy -colori zed -accol ades -vis o -show your -nan ow -bice ps -us ability -bi m -dailys ketch -pearl jam -stran gest -mega deth -broad casts -bar ren -ar ton -chri ss -confi gu -lu res -is the -e ul -railway ana -global health -gi anni -u aap -s lum -consci ously -ab re -n up -bud get -v ada -e sch -real ness -er ased -th unt -be z -armist ice -ðŁij ¹ -sh run -o led -driver less -ðŁ¤· ðŁı»âĢįâĻĢï¸ı -won dr -sk an -sal aam -mother land -h wang -gen o -gang nam -tw right -endor sing -en ic -ador ation -pau sed -patric ks -do cked -plat te -ff xv -ethnic ity -auto show -side show -after life -re located -orphan ed -food network -dare to -and ra -sla ps -v live -swim s -re imagined -mist le -re vise -real ity -bhar ti -ðŁĴĻ ðŁĴĽ -late st -prou dest -gra sses -lan yard -fresh est -carcin oma -anom aly -zieg ler -sum ner -ly rix -gor g -is d -av el -swild life -me squ -john cena -euro league -sab er -master ful -yar ra -cogn ition -jacob son -abo lic -sir loin -shuk la -moj ito -su pere -st weet -me z -e sa -rudol f -gur a -where you -tt m -win s -trust worthy -ny k -bra den -table top -good food -es on -be k -lingui stic -gra ys -ch ath -h cs -mon i -de ans -cu ssions -ch ell -slo ws -he mi -d app -shar pie -boo sters -a os -str ack -se dona -mu eller -hard wick -or nate -thor a -sal ud -o twol -ch um -mi ho -for age -thel ittle -tear ful -ones elf -min dy -sm g -gmb h -emer ald -ðŁĶ´ âļªï¸ı -tu tti -recep tions -re vising -i brox -tope ka -sal ami -expan se -i books -dob son -cli o -at s -ðŁļ Į -mo ha -is ance -shu tters -moo t -jan ine -marvel comics -jor dani -pos er -kenne th -hy ung -de ja -ase ball -speci ality -eu ston -classic car -had ith -ðŁIJ ī -chas ing -iz o -gros ven -ag lia -thisdayin history -t row -om ile -hu ar -by n -sal ine -div ine -demon ic -ty ran -han dover -revit alization -pa ella -cryp tic -se dg -m end -dun kirk -bre d -wal d -sport scar -a ard -whe aton -da ener -k lan -br t -bakhta war -spi res -schu bert -ro ti -poli sh -o se -ag ame -wonder con -prote stant -bo sa -ðŁĺ Ł -d ü -joy ride -ger trude -âĿ Ŀ -gil a -v h -tw a -tra v -swal lowed -star ve -la in -ent ren -rei ki -su kh -cra ic -az u -web page -kee fe -hypo the -hir sch -hel le -camp ground -w amy -tra vi -sha hi -san deep -ru i -han uman -dw p -reposit ory -no or -no ff -un real -p ell -black history -har vick -ma scar -pay ee -pa sha -gastron omy -d ÃŃ -ai g -rosen thal -open day -embelli shed -t tip -sun bathing -go pack -end ome -ï¸ı # -invali d -final four -st fu -squish y -ra sta -mo sch -jam esc -die trich -sel a -mel b -el vi -t dp -sun i -sli t -j ha -bi za -spi ked -l li -l illard -vam pi -syno psis -az har -kendrick lamar -ĮãĤĬãģ ŁãģĦ -heart less -country file -air play -arrog ance -pre e -virtu oso -ãħłãħł ãħłãħł -raj u -le bu -for ward -tu g -dro s -mondaymotiv aton -concep cion -thel o -pad i -looo ol -ÑĢ Ð¾Ð´ -it ss -eth ical -end uro -__ : -expend iture -mon ste -mas king -terri ers -ib is -e mber -cu mple -punctu ation -pi per -ir vin -ade e -yy yyyy -flash backs -cel sius -don nie -bo gota -ben evol -the script -shil pa -pro se -fin dia -ze ke -ne ko -do ves -blues lyrix -fro sh -sowe to -mp lo -al ai -sab i -raq qa -wf tv -stro ller -ian somerhalder -ðŁĶ ª -an on -mo seley -! ?!? -sta king -mol y -car tri -c sg -ast or -transc end -ma er -de ux -cow girl -sas k -pun ter -ma ken -o ates -love tt -grow ler -sag in -v n -ssi ble -officeof rg -y mc -sab ar -faul ty -ap ha -ak on -ðŁij « -snow don -ae w -raise the -ðĿ ĵ -grue some -clement ine -sp ing -lat a -worlden viron -mi mic -can aria -bakhtawar bz -ao a -fal a -ãĤ Ń -avi va -you uuu -thi gh -la dders -gu mbo -tz ky -fu zz -plastic pollution -est ate -strength ened -k ant -dr in -cal vert -transform ational -frigh tened -mac lean -elited angerous -ear thy -t son -to da -j nu -.. , -mic hal -i ban -je ong -is real -sim coe -exclu sives -blue bells -ben e -te u -pil sner -pens ke -athe ists -m pu -cartag ena -ðŁĴĹ ðŁĴĹ -million aires -kk kk -it ar -subscri ptions -remo te -ma fi -hin ton -w cc -ho k -ds b -ab leton -sevent y -pun ks -e indhoven -sh one -mcfar lane -lim popo -empha si -à ¼ -sin fo -pe tre -man grove -ch ino -ber tie -play lists -push awards -p af -deb bie -c do -r ino -ðŁı¾ âĢįâĻĤï¸ı -fol ke -bon nar -th ine -sl an -hal ter -evi e -aw some -vul tures -spar ky -seiz ures -âľ Ķ -ram one -ine ffe -al n -pro ctor -ast ra -the voice -gro te -sci on -dead line -am aya -tain ted -patter ned -exce eding -cross fit -kay lee -drop box -ru shes -tack led -mo by -retro gamer -n cbd -benef itting -shay kh -guild hall -gen try -dream cast -dread ed -bun dled -th aw -revol ving -n pt -kylie jenner -imagin ative -ron i -over came -family time -ds burg -car naval -relation ship -recogni zable -cor oner -ho le -fan fic -emir ates -bur ritos -analy se -thin ner -ne es -galli poli -bl r -cat woman --- >> -au lt -ada ily -nau ghty -ili o -solit aire -mtv br -jocel yn -arun ach -rep ent -south gate -hy acin -essenti al -fent on -and um -it or -go pal -sl inger -po sei -aw il -wi elding -ra ila -eli as -a sto -à ¤ -tend ency -str ata -ker t -< - -im acele -da es -sti mulus -han ley -fit nes -ec stasy -lim ous -ha iling -ðŁ¤ Ń -chis wick -tar ies -sla v -pul i -moderni zation -black mail -b ingham -h fx -+ + -ðŁĩ®ðŁĩ ³ -ni v -we a -profess or -k off -bol ster -su ave -sequ ences -pepper oni -not te -dre n -ãģ¨ ç¹ĭãģ -hs v -o ga -ap tly -z ad -excel si -rin ka -mol dova -min n -ma bel -conferen cing -bas ing -of er -ob si -hamill himself -care less -brief ed -inhe rent -par ish -dub nation -town sville -sar awak -gee ky -doncaster isgreat -was abi -gu p -phen o -dra inthe -carrie underwood -ble eds -bbc world -ane w -alta f -dul wich -ani ston -w ti -sumat ra -gra fton -bl n -me ster -bode ga -re go -es q -an jo -sump tuous -mai sie -ï¿ ½ -wil t -jak ob -el vis -se pul -mu ster -air pollution -president e -happy monday -exten sively -fl ondon -t ls -play ing -pe ed -din ho -var dy -pi ka -n iro -au cus -ðŁį ¦ -nu ll -el ondon -juvent us -imag ines -dis ab -lit o -d ura -work places -promo te -mc caf -wood work -waw x -à® ª -tt ino -shar i -sem per -better together -ðŁijĬ ðŁı» -ze bra -pon dering -en chil -ho m -cosm ic -tan z -mo cked -ec cc -ath ed -abo lish -prop eller -paris agreement -assemb lies -indu stry -fraudul ent -pe sa -chang min -ax x -ðŁĴ µ -irr ational -cu sa -ramad han -octa via -on elove -jac ki -bar ak -taxi der -seri ous -nathan fillion -mc en -ch k -po part -grav ity -copp ola -reading fc -illu sions -j ig -ww x -re sh -ex porting -buzz ard -âĻ ¤ -p cm -lan apar -ko s -arom as -antal ya -ww dc -ven a -phil a -ball in -ðŁij Ħ -quin ta -ma o -f ery -eigh ty -sentim ents -safe guarding -r wa -pu ffs -luc ille -de cath -sl u -nu gent -de ter -braz il -ze iss -super bowl -subsi dy -alter n -hi dalgo -enz ymes -ä ½ -tag ne -hair dresser -adri en -walk out -oppo ses -can tina -bed side -af an -ðŁĶ Ĺ -prophe tic -dan es -un successful -super charged -pk k -exem ption -hart le -secu lar -cli pping -br s -united way -c net -pat chy -ha gan -e en -âļ ľ -var a -sym pathi -never trump -affir mation -om f -ny cfc -ma ja -sur ro -keer th -up scale -sandal wood -mon archy -kno bs -å ĭ -po tholes -hunger games -ter races -na sir -coun sell -welcome to -wa q -se aman -m ita -stun ningly -on theroad -in ability -) !! -bon go -ant v -sp ut -worldenviron mentday -resu sc -y td -fi m -eun hyuk -sa chin -rose anne -cler mont -ape c -am ina -v ening -n antes -al most -sin us -ex as -ty l -ti en -ple ad -lanc s -bur naby -re k -jo om -observ ers -disco graphy -cl g -âĻ ¦ -sn ack -r ti -o ily -crystal li -bru te -web development -topp ings -la f -an is -ad der -reli ving -car lin -battle of -we g -syri an -pon t -n dc -lagh ate -yu ma -sp p -p iti -ro bbing -mart ing -rey kja -raj put -nc ds -kie wicz -âĢ¢ âĢ¢ -vam pire -substan tially -opio ids -nepal i -k line -ar oo -under stand -lit t -u it -thro mbo -sar ies -qu ot -b alling -t tr -s gh -philip p -br ant -ac l -m ello -whit taker -. ; -defi ant -b gc -repl ying -mir ren -metamor pho -sch wab -bul ge -utili zed -pick ering -par don -d sa -à¸ Ī -doo ley -cumul ative -Ð » -ur gency -e mir -+ /- -¦ Ī -ot as -âı ³ -station ed -grape vine -ar ac -karan johar -f ancy -sau l -coo gs -lgbt q -ا٠ħ -jav i -u mmer -pl l -den is -dai pur -pu ffin -lewi sham -fand om -co pe -ves matter -s ve -hel pless -deo dor -ostr ich -kaz an -friday the -con dor -v x -sophom ores -rob les -cu tt -cli mbers -ë¦ ¬ -sle g -sn f -mac ys -hydr ating -grou pe -po yn -mou lin -hg tv -lmfa ooo -sulph ur -asdfghj kl -annab elle -hump back -bra ved -viswas am -multi purpose -hu midi -escor ted -barb ican -f ad -cor sa -ðŁ¤ « -pi ppa -here to -can y -ser gi -or cas -o vie -ed ou -s any -glob alization -man cini -food truck -f is -defi brill -sch re -sma fia -love wins -la ut -k aka -hol lande -game on -resurg ence -out side -olympi ad -int an -abstr action -rapi d -pal om -cal le -jas min -attack ers -swag g -mit ra -ky lo -à® ² -her mitage -gor do -e ira -so sfam -roll out -exc ite -sy nod -mer rill -c als -as sa -liveli hoods -ju ve -the black -gopack go -ant lers -alban ian -wool ly -qu iche -puri fication -are th -smar thome -ne k -all blacks -mex icans -is m -ger ms -comple xion -mar ck -u shi -ðŁIJ IJ -char l -ca stic -till erson -giuli ani -biode gradable -mal bec -bo is -ju bil -im es -r ame -gene tic -esp nu -ch ley -so ho -go pher -g sc -buu ren -cu be -bridesma ids -webin ars -to e -mani pur -viol ently -notic ias -ex changing -chi ev -replac eable -muay thai -bu ss -sp il -instal ment -div ya -cait lin -o lim -fil tering -whirl wind -sta red -prior it -pr am -pompe ii -mono logue -k ite -bu ka -â̦ .. -vac cine -bre ro -woz ni -sol ent -re ferr -my rt -gridi ron -galatasar ay -fro ze -clare mont -ðŁ¥ ĥ -victori as -ssel dorf -pa stures -net neutrality -ch or -ðŁij ģ -ಠ¿ -we ho -symp tom -jo sel -in ous -dragon con -power ball -p te -four thofjuly -ec la -ear buds -where abouts -salt life -depriv ation -ch ter -wi ggle -syste m -ps st -ch az -d any -ri mo -oax aca -lanapar rilla -barcel on -melanch oly -way back -ho tro -n si -l illy -kur o -ja han -intellec t -board game -ðŁı Ĭ -sneak peek -k prc -jail s -cand el -zan zi -mor timer -star ch -ra gs -p fa -long live -k art -gir ona -cro cker -christop h -precau tions -war ship -per m -paren t -van gogh -gif ford -allegh eny -ra yn -ut m -sten cil -rec alling -pen ney -z azzle -ìĥ Ŀ -hin ds -aren as -nu ev -law ler -gu in -do this -ðŁij ķ -ì¶ķ íķĺ -we g -ti b -ri din -complex es -turbul ent -pe sos -de marcus -vall arta -sam sun -kis ses -hein rich -deport es -wil ms -ur d -then ext -inki gayo -ho wi -fir sts -carri age -clean liness -mas war -is ch -ax el -si zzle -road house -fr ans -ent ourage -co bble -boo th -benedic t -tal on -fc u -year ofthe -ray on -raider nation -fo yle -ko val -pi anos -l pg -bur mese -man ure -geo caching -cosc ino -b np -fer ra -stro phy -mar ais -ce es -legen dof -kat niss -eno ch -av ed -you know -d prk -ðŁĺ¢ ðŁĺ¢ -sp un -pro st -sor rows -cent red -ke a -gal icia -? ðŁ¤Ķ -ÑĢод а -bou chard -ðŁĴĻ ðŁĴľ -yu i -seed lings -jon ah -reco vers -ny rd -board room -su ma -my japs -tun g -sha i -ir gc -eli o -wag ons -ka shi -polic emen -john nie -ale coscino -shop ify -dot ted -de tri -va w -to fficial -in your -chal mers -trac ed -no vi -by es -ari el -nipp on -la pel -gri ez -b gs -fool ing -d ita -vijay sethu -nm wx -as ot -kr anti -hel m -ve di -sic kest -mo chi -k abo -shru bs -he red -b sp -sq m -ham r -dul kar -anth a -nr f -avoid ance -at en -publi x -be arers -nas i -ha p -h ells -ðŁĸ ¥ -ภ· -thelast jedi -oh wx -ðŁį « -wa hoo -there se -rec aps -ss nhq -bird photography -v ay -pet ti -pau lo -bel vedere -( * -gr l -du vet -c pec -sa it -por sch -meas urable -avi ators -fre mantle -bre en -on om -me and -life saving -eu ref -en don -embar as -aira sia -el is -dun kin -star magic -s ill -porto bello -ki efer -ex e -mu ted -ãģ ¦ -we thepeople -logi a -liber al -theforce awakens -min ed -haun ts -freck les -care taker -s india -âķ IJ -dev lin -list on -direction er -oh n -fi garo -em manuel -du bois -cl ones -bru ise -ðŁİĪ ðŁİī -disin fe -der matology -as r -s watch -dis comfort -tam anna -pi day -mack en -k atic -delu sional -shaw nee -gu d -al bino -p ali -din gh -cucu mbers -coffe y -anticip ating -treas ured -web summit -shel tered -sav or -pedago gy -m gs -sh ma -s bu -den ali -cam pos -bubble gum -o ir -le aps -y ler -r one -sansk rit -min t -meat less -futuri st -du de -a vel -prote sted -squ ire -z aki -sz n -har court -cycl one -bour dain -gather ings -d ant -advent urer -parag on -alt man -dd ing -ban erjee -snorkel ing -mother well -mis sy -en der -glo ws -ki wis -chick pea -por o -e fron -app t -u y -speci fied -gab by -e strada -com bos -bour bon -vin i -var un -steph ani -key words -car vings -amit abh -wr ought -tw al -re els -clu bbing -ubi quit -cri t -ambed kar -æ Ļ -prun ing -vaccin ated -boe ing -s ks -lo ona -hypno sis -edel man -pho l -he w -colo sse -mckin sey -u on -to te -sacrific ing -ox i -n ang -e mu -пÑĢи ÑĢода -m th -kers wednesday -argu ed -timel apse -ris king -regul ating -ni gh -likeli hood -cu bic -au ction -rein for -pi stor -no ses -ye l -snu ggles -pe i -jean ette -ta ku -ri th -guy z -ภŀ -y te -ver ted -pay soff -jau regui -hoo ligans -procedu ral -mi b -har dy -el eng -chec kers -all ine -the met -prou dof -keerth yofficial -collabor ator -ni u -infl icted -adv ani -re twee -memor iam -f icial -ti ghter -sal em -re viewers -br ics -ben digo -am ell -tur kish -sush maswar -paul son -pal awan -mol lie -stitch er -s burgh -ir u -hay dn -en ers -aro a -u zzi -saraj evo -hel a -apol lo -nine ty -vac a -sp on -vent u -jel ena -hei fer -avo ids -sp ine -pri ze -mar ist -re creating -me de -woo den -find lay -ro fl -n di -compreh end -yu go -y ü -to work -u fos -son ar -pi ston -recor ding -tent ative -art forsale -pel lets -fre do -ÙĪ Ø± -mu ses -custom ization -pro found -is ner -ide ally -si am -plan kton -cm dr -man ger -fran ken -customiz able -ठ® -walk away -swi vel -vast ly -no ton -lex a -ex moor -z as -tan te -reduc tions -lol ly -hip sters -benef ited -ë ² -ww www -mascul ine -fi ji -dre y -ph ill -ane ous -nic ol -men dez -disapp ro -ch ner -through s -shen mue -east man -ðŁIJ İ -yu ck -under tale -re ys -go beavs -eng en -c na -mer r -bir k -ãģ¨ç¹ĭãģ ĮãĤĬãģŁãģĦ -âĥ£ @ -yn na -ste ed -offen der -at um -vani shing -presi denti -love them -g nocchi -fri ggin -per il -mad hya -ag ne -dee jay -mar nock -m tb -fold able -@ ___ -stand re -bron x -bow ski -fin ite -cro ckett -b sf -ge tit -seren awilliams -mir o -ignati us -sla y -rin se -fon due -sel dom -s more -gan i -dy ce -dmit ry -cru mb -late post -pri mark -oh ana -flor als -do a -remembrance day -d ds -azi one -toon ami -air port -æĿ ± -th ad -fi st -dine sh -dr who -ad words -admi rer -pro je -kyrgy z -à « -manife station -le wan -j ic -thi bau -le ased -van ity -nouri shed -never theless -aug mente -fu elled -che ad -wil shere -ru di -p z -my co -mor ro -herbali fe -hardro ck -de man -dre ality -sp ades -ce vic -bha i -bar on -ultimat efan -hou news -to bi -stru t -ke el -affili ation -the masters -sm al -hu e -este ban -con v -om nic -datab ases -co v -ter ti -st g -snoop dogg -metab ol -leth bridge -ðŁı» âĢįâĻĢï¸ı -year ling -residente vil -nws l -iy aki -griez mann -c ous -ðŁĵĿ : -tor ian -sam i -ðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ðŁĶ¥ -g are -alli ances -whit field -we ther -refin ing -coy i -kra ken -ðŁĺĺ âĿ¤ -singul arity -lil i -h ns -bol dand -waw rinka -misogy ny -lo vers -c q -b dg -ad ona -gar ter -women of -sc d -recogn ising -mun a -str ou -sign alling -lare do -hell boy -alek sand -un available -pedi atric -as in -mer ia -ri shi -futuri sm -w ye -polari zed -e we -pro pel -in forms -cre ase -~ " -arti ston -like for -heidel berg -er ra -life in -len ny -inter rupt -cohe rent -ca z -vick ers -le veled -f bs -cab ins -bu mmed -apost les -we h -ten don -souven irs -infu ri -pier ce -asse t -m las -go th -di ggin -ann as -yl or -th waite -sw el -pan era -mur derers -croo ked -bs go -ac u -a on -re an -one of -ko hl -bloo dh -pest icide -lost dog -fle xing -ëĤ ĺ -su pra -eter nally -ðŁļ Ļ -pa olo -ol an -mom o -is elle -captain marvel -s lou -mistak enly -akhi lesh -mer t -il inan -bu on -bal kan -mir ro -mill en -der ail -dam on -tit i -bi os -re don -pic ard -par te -ðŁ¤ Ł -Ø º -son ics -fir sth -dd c -veg ans -tur ban -ni gan -lot tie -lyn don -star buck -pink floyd -life styles -am ara -a she -r sc -val a -sm er -cw gc -cli ent -buen as -jag an -coo ps -ðŁijij ðŁijij -speci alizes -snag ged -g lar -ben net -wildlife wednesday -bow den -pi k -art in -empor ium -ar l -re ba -pas ser -disappo ints -additi ve -âľĬ ðŁı½ -bay er -missou la -ha skell -comm ences -ni x -ne man -explo ited -plastic surgery -cc d -aso cial -vo t -sie gel -fro ome -kap am -far a -e ha -pro bes -mw f -meet ing -p bb -ak ins -mistle toe -kingdom hearts -for kids -ec r -bal e -escor ts -adidas originals -k wa -k ts -hallo ffame -ðŁĺį . -wag s -pot ted -o wing -honey comb -he fty -uro logy -mer le -b pd -stri pping -re ich -k state -gu ay -yon ge -shak ti -g loom -bat t -son om -n ery -el ba -blan ks -hel le -triple ts -bom bay -ak arta -ab ia -transm itted -rol f -ja is -angular js -fi erc -m ss -trac e -ॠĩ -tom bs -old man -kom bucha -fo l -e health -cere als -are lli -in ari -ðŁĴ © -wo l -liber ties -fa wn -af firm -nun avut -hyster ical -k drama -art es -âĢ¢âĢ¢âĢ¢âĢ¢ âĢ¢âĢ¢âĢ¢âĢ¢ -valent in -man slaughter -gal es -eo in -energi zed -del s -with draws -st les -sar castic -ram esh -incredi bles -lock hart -ya wn -ultimatefan live -oooooooo oooooooo -mu en -guru dev -te er -pe eling -new snow -lingui stics -direc tv -ag end -uni lever -ru ger -han dedly -ero se -li mel -the c -royal ties -fini shers -nr g -m gt -fid get -com ps -bac on -aggre ssively -ab it -ch â -tar de -slu gger -q anda -gre ening -d ats -ensla ved -spec tor -o ye -fre ef -b hand -stop brexit -mis conceptions -cav a -ðŁĺįðŁĺįðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺįðŁĺį -multit asking -hou sel -ferre ira -cen time -ank les -jo dh -hel ly -fro me -out tuesday -nar nia -bal aji -l bloggers -jyo ti -ðŁį ĩ -lan cia -cap ri -y ap -nat ash -down fall -." âĢĶ -à ® -ligam ent -coat ings -ai ded -hi ko -fall ing -encryp ted -yeg food -infringe ment -cu di -ce p -ðŁĺį ðŁĺĤ -tra d -super rugby -ed win -wh iche -vi meo -lay ne -in vigor -he he -dubrov nik -bie ber -u tr -sham an -op ers -ham ill -en ig -di f -ar um -scrap book -min h -diver gence -mckin non -life time -guter res -wil le -ple as -patt y -mic ron -k z -dom aine -ru sher -m ds -ches ney -screw driver -âģ© , -sle dge -hau er -chan a -stam ina -sprink ler -pl n -he ff -bol ton -om on -car rington -accor dion -jor ge -inter ception -in puts -gu ll -tran scription -vanu atu -it ical -eth os -tic h -spac ey -pee king -u mi -ha ger -psycho tic -illi an -illi a -bonnar oo -an ese -pu c -laghate parth -en hall -econom ical -dre dge -% - -u we -tu bular -scoun cil -pe asants -fl er -tumb ler -he p -ford ham -row ley -initi als -ev asion -er nation -plu gins -coch ran -c attle -acid ity -ðŁİĬ ðŁİī -re grann -jump man -ef ace -x ma -patri archy -esco bar -cristi an -tip ton -nu eva -hack ney -back seat -kill arney -aid an -sta dion -simul taneous -ida ho -a je -u th -figu re -clo s -bur k -volun tar -rec ite -macfar lane -cur few -bou do -w gn -sti x -sla p -scrat ched -philli p -jour ne -ex pelled -wa z -u ke -tati ana -ou e -ho pp -dimit ri -ðŁĵ £ -mato logist -electri fying -blu ffs -bill smafia -az cardinals -y aa -x mas -shar a -r ith -g ills -dre s -bar ton -authori zation -imperi alism -home of -to do -foot path -band width -visit spain -moh sin -erup ted -mi ki -insig nia -mike l -ss h -ger a -bank holiday -aw an -t weak -star craft -e al -construc tion -skelet ons -le ep -ine m -bar clay -ship wreck -monsi eur -yo h -ron t -form ative -ser o -le p -horse man -hoo sier -haz mat -cylin ders -cen ti -ðŁĴ¥ðŁĴ¥ ðŁĴ¥ -re em -na ire -mus ically -gras shopper -est onian -termin ology -ro main -blogger rt -tox in -stan ce -cultiv ated -an ast -ðŁIJ į -shi mano -go pher -ene i -recycla ble -gam ification -fight for -c q -avoc ados -ke ys -eli ke -gly cer -shak ur -mobili zation -gal ley -expla in -ex changed -pe th -obe dience -illa ge -en nis -ãĥ ŀ -wi v -walla bies -ma ar -ig ers -fin tech -fin alized -wo j -meaning less -in field -onna ise -e et -bron te -pass ages -ðŁij § -strick land -northern lights -lom ond -h tc -wr ay -shi fter -di alog -ðŁį į ->> >>>> -te atime -ste ch -sic huan -qu ill -fran ca -comple mentary -bar rington -marcu s -mal am -goo oo -for sa -elec tra -af s -âĹ Ĩ -tri fe -sn azzy -fo lia -and olan -after dark -wood son -stra de -litt lest -o gun -con wy -co wards -ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ -íĬ ¸ -se ul -mur phy -dun ks -kapil shar -jo achim -wom ack -equal ity -aver ages -a ine -ðŁ¦ Ī -tac ular -dis ability -u ked -mid century -bar thol -teas ers -tab ern -nj caa -sp out -op i -ku bball -bl om -so ar -popu lism -meth yl -ðŁijĬ ðŁı¼ -o spre -alo ils -ðŁĵ ĸ -ðŁĮ ļ -x er -sp illing -publ ica -car dam -adi sh -sa cha -p kg -bu da -lyric ist -i bc -gru mp -ho ver -hal ep -anti body -anem one -âĻ¥âĻ¥ âĻ¥âĻ¥ -m cl -litho graph -cc u -s fest -path ic -calli ster -otta wa -gun sn -rut ger -hali but -en vision -differenti ate -ðŁļĢ ðŁļĢ -pir an -lat el -uc n -trou bad -ra ine -fierc ely -learn english -lea se -wex mondays -em it -dray ton -bur rell -scuba diving -hol ler -dr u -clo cked -w ral -ap ro -trans lucent -w bo -patri arch -mo ja -lan nister -fish ery -ne derland -mil dly -mi rai -ma ko -ja p -ðŁĺ©ðŁĺ© ðŁĺ© -pro statec -p anna -ar ama -under taking -tomp kins -ne op -soli ds -sav oury -e ames -cut lery -wood bridge -steam er -ri zzo -wild cat -rat na -lamin ated -kin eni -jal ap -ai des -acknowle dges -?! ?!?! -! ðŁİī -w afc -mag gio -ha ves -dar je -of i -gr il -v asi -bru x -mo hd -fake speare -arn old -r mb -for be -wal leye -ro di -therapeu tics -strate gi -ob ste -mu dder -download able -dd ings -d ca -asi angames -campe on -appropri ation -th century -ram atta -dra ped -bul lion -mu c -one x -se greg -ophel ia -bod ily -âĿ¤ ðŁĺį -wi zar -te ased -ade my -to id -sur a -lazar us -sn ickers -ma se -lo h -bow ed -bibli o -x change -har lan -gho shal -flavor ful -bha gat -alle z -whiche ver -ten stein -disc er -organ iser -mt g -dream liner -t se -hok kaido -mo k -indulg ent -hick man -blin ded -al yn -aaa ah -sp ool -lough borough -inter pret -et v -aristo tle -optimi zing -avici i -madu rai -ju li -naw az -mat chups -ab ide -paint ing -w elling -vel i -octag on -in scribed -po king -plac er -life cycle -kili g -g sp -eli ves -cle ments -na sheed -me sut -incarcer ated -dist illed -wal ang -delic acy -del gado -che z -ch ita -ad ero -tu x -pati l -o do -abh cosmetics -tv c -p bc -in accurate -hardwork paysoff -ball er -quot ation -merchandi sing -ga stri -defen ses -dro gba -bex hill -ban kno -win ona -si eg -p gs -hahah ha -agu chi -su bram -mirac le -de sch -li bre -ba cher -ent ine -bbcra di -lou dest -r ps -pi erc -fr yer -storm trooper -rafael nadal -pas co -exhau stion -epic onetsy -rc tid -kel lie -ga ines -d bz -sm riti -s bridge -lim ited -cla w -technic al -bio graphical -ado red -ภ° -exclu de -ac adia -key boards -fur man -so ca -sur u -ni ps -sw aps -server less -run e -pu ffy -north ampton -nish ings -hen der -cartri dges -gun shot -ðŁĵ ¹ -fil ament -respon dents -pey ton -mountaine er -mer ging -life span -intimid ation -p afc -nl wx -expan sive -pur r -f ck -ca e -at ti -tele thon -so hn -mend el -lo pes -dor i -un broken -te red -tast ings -in active -disin tegr -t assel -share the -pi ano -is lay -air space -z awa -ricci ardo -ming ton -fresh er -cur ry -re vs -pharo ah -h mv -exhilar ating -wh oo -lin kin -kri spy -competen cy -ste wards -ne bu -kat su -ad mins -baz ar -as ar -giving back -s summit -song z -lin us -raj kumar -farm ington -fanta sia -ðŁĺ´ ðŁĺ´ -so bri -lis se -barry more -pri sm -blo b -sen ew -mono xide -exp ire -eigh teen -di pper -xi ao -kil t -hin ch -bbc sport -bam boo -p ter -ex al -ðŁ¦ ĭ -ham lin -expe ditions -star gazing -food security -wy lie -ul f -st ingly -on storm -lo eb -bro ome -bn ha -pancre atic -eli ve -!!!!!!!! !!! -ther apper -ortho pedic -avengers endgame -antit rust -ìļ ° -go te -om d -off side -gy llen -win eries -white water -ad l -lu pita -exce eds -consi sted -chew bacca -ash leigh -nhl jets -is san -sh ld -hay at -cran berries -ð٤ĺ ðŁı½ -rock the -spring training -fall out -dairy free -wa j -un decided -so wn -rc n -north wales -htt r -fu mble -d its -comp elled -popu list -min ted -blan chett -. '' -pro pulsion -m illa -au berg -her tz -h ta -u daipur -serendip ity -azte cs -als ace -ðŁIJ ij -lu n -sho es -char li -gar za -ðŁĴ Ł -pro biotics -fox tv -ol is -mi ff -loc alized -diffu ser -si gue -fun ko -rend ous -ðŁĴ ij -jeky ll diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/special_tokens_map.json b/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/special_tokens_map.json deleted file mode 100644 index ae0c5be..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/special_tokens_map.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "bos_token": { - "content": "<|startoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false - }, - "eos_token": { - "content": "<|endoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false - }, - "pad_token": "!", - "unk_token": { - "content": "<|endoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false - } -} diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/tokenizer_config.json b/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/tokenizer_config.json deleted file mode 100644 index bd2abe1..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/tokenizer_config.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "add_prefix_space": false, - "added_tokens_decoder": { - "0": { - "content": "!", - "lstrip": false, - "normalized": false, - "rstrip": false, - "single_word": false, - "special": true - }, - "49406": { - "content": "<|startoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false, - "special": true - }, - "49407": { - "content": "<|endoftext|>", - "lstrip": false, - "normalized": true, - "rstrip": false, - "single_word": false, - "special": true - } - }, - "bos_token": "<|startoftext|>", - "clean_up_tokenization_spaces": true, - "do_lower_case": true, - "eos_token": "<|endoftext|>", - "errors": "replace", - "model_max_length": 77, - "pad_token": "!", - "tokenizer_class": "CLIPTokenizer", - "unk_token": "<|endoftext|>" -} diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/vocab.json b/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/vocab.json deleted file mode 100644 index 469be27..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/tokenizer/vocab.json +++ /dev/null @@ -1,49410 +0,0 @@ -{ - "!": 0, - "!!": 1443, - "!!!": 11194, - "!!!!": 4003, - "!!!!!!!!": 11281, - "!!!!!!!!!!!!!!!!": 30146, - "!!!!!!!!!!!": 49339, - "!!!!!!!!!!": 35579, - "!!!!!!!!!": 28560, - "!!!!!!!!": 21622, - "!!!!!!!": 15203, - "!!!!!!": 9168, - "!!!!!": 5203, - "!!!!": 2360, - "!!!\"": 28048, - "!!!)": 42532, - "!!!": 995, - "!!\"": 20556, - "!!#": 34997, - "!!)": 28352, - "!!": 748, - "!!@": 40705, - "!\"": 2947, - "!\"@": 43819, - "!#": 9670, - "!'": 13222, - "!),": 37904, - "!).": 26225, - "!)": 4571, - "!*": 37737, - "!,": 29325, - "!-": 43499, - "!...": 22121, - "!..": 35475, - "!.": 22517, - "!:)": 31671, - "!:": 17545, - "!": 256, - "!?!": 29767, - "!?!?": 47081, - "!?": 6004, - "!@": 15117, - "!]": 34466, - "!â̦": 35068, - "!âĿ¤ï¸ı": 32559, - "!ðŁİī": 49085, - "!ðŁĺĬ": 43434, - "!ðŁĺį": 36438, - "\"": 1, - "\"!": 10377, - "\"\"": 41530, - "\"\"\"": 25539, - "\"\"": 8575, - "\"#": 8345, - "\"'": 31065, - "\"(": 32741, - "\")": 13112, - "\",": 4332, - "\"-": 9375, - "\"....": 37785, - "\"...": 9049, - "\"..": 25403, - "\".": 2811, - "\"/": 39486, - "\":": 7811, - "\";": 37549, - "\"": 257, - "\"?": 11727, - "\"@": 1512, - "\"@_": 20236, - "\"[": 36930, - "\"â̦": 33993, - "\"âĢĶ": 41151, - "#": 2, - "##": 15483, - "#...": 31491, - "#:": 30144, - "#": 258, - "#@": 35062, - "#â̦": 12834, - "#âĢİ": 34262, - "$": 3, - "$$": 24233, - "$$$": 31859, - "$$": 14929, - "$)": 39460, - "$.": 34682, - "$": 259, - "%": 4, - "%!": 35070, - "%),": 37819, - "%)": 16063, - "%,": 14505, - "%-": 48784, - "%.": 12475, - "%;": 33379, - "%": 260, - "&": 5, - "&&": 27791, - "&": 261, - "'": 6, - "'!": 13781, - "'\"": 19479, - "'#": 15319, - "''": 46594, - "''": 8445, - "')": 19175, - "',": 5662, - "'-": 26152, - "'...": 20474, - "'.": 4645, - "':": 7182, - "';": 44517, - "'": 262, - "'?": 17242, - "'@": 26397, - "'d": 1896, - "'ll": 1342, - "'m": 880, - "'re": 982, - "'s": 568, - "'t": 713, - "'ve": 1200, - "'â̦": 42120, - "(": 7, - "(!)": 30253, - "(\"": 18741, - "(#": 6229, - "($)": 46597, - "($": 15186, - "(&": 15042, - "('": 18235, - "((": 22944, - "(((": 33287, - "((": 13796, - "().": 41737, - "()": 8475, - "(*": 48004, - "(*": 39575, - "(+": 12903, - "(-": 20228, - "(...": 45159, - "(.": 43055, - "(:": 8528, - "(;": 23983, - "(": 263, - "(?)": 22885, - "(@": 2181, - "(£": 33987, - "(©": 44886, - "(ðŁĵ·:": 34610, - "(ðŁĵ·": 37999, - "(ðŁĵ¸:": 44422, - "(ðŁĵ¸": 45204, - ")": 8, - ")!!": 47518, - ")!": 7805, - ")\"": 13046, - ")#": 39981, - ")'": 23613, - ")(": 27956, - "))": 13720, - "))))": 42911, - "))))": 34181, - ")))": 18305, - "))": 5167, - "),": 2361, - ")-": 19034, - ")...": 15274, - ")..": 41822, - ").": 1818, - ")/": 26616, - "):": 4143, - ");": 19686, - ")": 264, - ")?": 18765, - ")@": 41928, - ")_/": 45028, - ")_/¯": 45781, - ")â̦": 41844, - "*": 9, - "*)": 30956, - "**": 9825, - "****": 21326, - "********": 42974, - "*****": 43571, - "****": 25167, - "***": 7829, - "**": 4441, - "*,": 41895, - "*-*": 23568, - "*.": 31304, - "*": 265, - "*_*": 44535, - "+": 10, - "+)": 34810, - "++": 47298, - "+++": 35986, - "++": 19056, - "+,": 35885, - "+.": 25238, - "+/-": 47614, - "+": 266, - ",": 11, - ",\"": 3823, - ",#": 11215, - ",&": 26905, - ",'": 10599, - ",)": 44493, - ",,": 21340, - ",,,,": 33225, - ",,,": 14811, - ",,": 8844, - ",-": 29821, - ",...": 20365, - ",.": 41277, - ",": 267, - ",@": 13975, - ",â̦": 14601, - "-": 12, - "-\"": 18646, - "-#": 10151, - "-$": 24946, - "-'": 28010, - "-(": 33345, - "-)": 3535, - "-*": 21527, - "--": 2154, - "----": 5753, - "--------": 11772, - "----------------": 23122, - "----": 30164, - "---->": 35999, - "---": 11079, - "--->": 14518, - "--": 2432, - "-->": 6422, - "-->>": 47252, - "-.-": 32765, - "-...": 43147, - "-.": 44040, - "-": 268, - "->": 5081, - "-@": 10087, - "-_-": 27227, - "-__": 42718, - "-â̦": 30047, - ".": 13, - ".!!": 37805, - ".!": 14030, - ".\"": 18650, - ".\"-": 21234, - ".\"": 1081, - ".\"âĢĶ": 48703, - ".#": 5014, - ".'\"": 41558, - ".''": 49379, - ".'": 5938, - ".(": 22294, - ".)": 5376, - ".*": 26145, - ".,": 5276, - ".-": 12481, - "..": 608, - "..!!": 23707, - "..!": 17994, - "..\"": 15229, - "..#": 15735, - "..,": 47143, - "...": 3002, - "...!!!": 38351, - "...!!": 39915, - "...!": 16860, - "...\"": 5240, - "...#": 8195, - "...&": 44979, - "...'": 23167, - "...(": 37981, - "...)": 14040, - "...,": 42717, - "....": 2386, - "....\"": 26689, - "....#": 20346, - ".....": 34151, - ".....#": 38867, - "........": 8246, - "................": 24855, - "............": 42965, - "...........": 35008, - "..........": 25526, - ".........": 19881, - "........": 14720, - ".......": 9917, - "......": 5590, - ".....": 3104, - "....": 1390, - "....@": 29790, - "...:": 34570, - "...": 678, - "...?": 16388, - "...@": 12672, - "..": 852, - "..?": 23875, - "..@": 21124, - "./": 31975, - ".:": 15811, - ".;": 47596, - ".": 269, - ".<": 29442, - ".?": 29294, - ".@": 1230, - ".]": 33511, - ".~": 42651, - ".â̦": 18047, - ".âĿ¤ï¸ı": 39085, - ".âłĢ": 30097, - ".ðŁĺĤ": 46580, - "/": 14, - "/#": 13217, - "/$": 36266, - "/-": 19811, - "/.": 39382, - "//": 15348, - "////": 46271, - "///": 22734, - "//": 3502, - "/": 270, - "/@": 8216, - "0": 15, - "0": 271, - "1": 16, - "1": 272, - "2": 17, - "2": 273, - "3": 18, - "3": 274, - "4": 19, - "4": 275, - "5": 20, - "5": 276, - "6": 21, - "6": 277, - "7": 22, - "7": 278, - "8": 23, - "8": 279, - "9": 24, - "9": 280, - ":": 25, - ":\"": 29498, - ":\")": 46432, - ":\"": 12089, - ":#": 26625, - ":$": 33769, - ":'": 8017, - ":'(": 21250, - ":')": 10701, - ":'": 23851, - ":((": 42496, - ":(": 5965, - ":)": 11070, - ":))))": 42339, - ":)))": 21840, - ":))": 10164, - ":).": 39010, - ":)": 1408, - ":*": 12617, - ":-": 13021, - ":-(": 25137, - ":-)": 4223, - ":-": 10323, - ":...": 42140, - "://": 12441, - ":/": 13604, - "::": 33077, - ":::": 43818, - "::": 9788, - ":": 281, - ":>": 39677, - ":@": 14339, - ":]": 43486, - ":|": 45986, - ":â̦": 22365, - ";": 26, - ";))": 41873, - ";)": 3661, - ";-": 35657, - ";-)": 10475, - ";;": 34824, - ";;": 24492, - ";": 282, - "<": 27, - "<-": 47280, - "": 34308, - "<<": 24588, - "<": 283, - "<<": 16482, - "<<<": 35054, - "<|endoftext|>": 49407, - "<|startoftext|>": 49406, - "=": 28, - "=))": 39587, - "=)": 17840, - "=": 284, - "==": 11748, - "====": 21734, - "========": 38952, - "==>": 29688, - "=>": 9714, - ">": 29, - ">.<": 38507, - ">:": 36196, - ">": 285, - "><": 28015, - ">>": 8270, - ">>": 2988, - ">>>": 6395, - ">>>>": 18461, - ">>>>": 18435, - ">>>>>": 32972, - ">>>>>>": 48947, - ">>>>>>>>": 41947, - ">_": 44144, - "?": 30, - "?!": 9785, - "?!!": 25342, - "?!\"": 29315, - "?!": 2835, - "?!?!": 16349, - "?!?!?!": 49084, - "?!?!?": 37619, - "?!?": 11395, - "?\"": 3283, - "?#": 24018, - "?'": 13610, - "?)": 9626, - "?,": 41628, - "?...": 22641, - "?..": 43905, - "?.": 41251, - "?:": 21067, - "?": 286, - "??": 5195, - "??!!": 43219, - "??!": 37341, - "??\"": 44996, - "??": 2197, - "???": 40017, - "???": 3824, - "????": 15936, - "????": 10362, - "?????": 21370, - "??????": 34589, - "????????": 45091, - "?@": 29258, - "?ð٤Ķ": 47928, - "@": 31, - "@#": 39397, - "@.": 43730, - "@/": 28639, - "@": 287, - "@@": 30314, - "@_": 2692, - "@__": 17042, - "@___": 48308, - "A": 32, - "A": 288, - "B": 33, - "B": 289, - "C": 34, - "C": 290, - "D": 35, - "D": 291, - "E": 36, - "E": 292, - "F": 37, - "F": 293, - "G": 38, - "G": 294, - "H": 39, - "H": 295, - "I": 40, - "I": 296, - "J": 41, - "J": 297, - "K": 42, - "K": 298, - "L": 43, - "L": 299, - "M": 44, - "M": 300, - "N": 45, - "N": 301, - "O": 46, - "O": 302, - "P": 47, - "P": 303, - "Q": 48, - "Q": 304, - "R": 49, - "R": 305, - "S": 50, - "S": 306, - "T": 51, - "T": 307, - "U": 52, - "U": 308, - "V": 53, - "V": 309, - "W": 54, - "W": 310, - "X": 55, - "X": 311, - "Y": 56, - "Y": 312, - "Z": 57, - "Z": 313, - "[": 58, - "[#": 11115, - "[...": 39975, - "[...]": 43790, - "[": 314, - "[@": 15148, - "[]": 22240, - "\\": 59, - "\\'": 41239, - "\\": 315, - "]": 60, - "]\"": 39434, - "],": 34067, - "].": 26262, - "]:": 21641, - "]": 316, - "][#": 39009, - "][": 29329, - "^": 61, - "^)": 30720, - "^-": 43516, - "^.": 31552, - "^.^": 35791, - "^": 317, - "^^": 34454, - "^^": 9064, - "^_": 14423, - "^_^": 15995, - "_": 62, - "_'": 44701, - "_(": 36951, - "_)": 37393, - "_*": 36237, - "_,": 31417, - "_-": 23193, - "_.": 26841, - "_/": 37647, - "_:": 13109, - "_": 318, - "__": 2355, - "__:": 47043, - "__": 3838, - "___": 43812, - "___": 13530, - "____": 4727, - "____": 25350, - "_____": 38803, - "________": 9549, - "________________": 20115, - "`": 63, - "`": 319, - "a": 64, - "a": 320, - "aa": 1821, - "aa": 3894, - "aaa": 14376, - "aaa": 9583, - "aaaa": 6727, - "aaaa": 19336, - "aaaaa": 31095, - "aaaaaa": 44413, - "aaaaaaaa": 23126, - "aaaah": 49151, - "aaah": 35856, - "aaay": 37846, - "aab": 34108, - "aac": 23251, - "aac": 11346, - "aad": 20464, - "aad": 35894, - "aaf": 37638, - "aaf": 31534, - "aag": 42174, - "aah": 28990, - "aaj": 28727, - "aaj": 43411, - "aak": 37739, - "aal": 22268, - "aal": 30208, - "aali": 27896, - "aaliyah": 46577, - "aam": 12943, - "aam": 22775, - "aama": 45018, - "aamaadmi": 45563, - "aamaadmiparty": 46406, - "aamir": 27456, - "aan": 20705, - "aan": 13426, - "aand": 38054, - "aap": 12023, - "aap": 12052, - "aapl": 34516, - "aar": 4695, - "aar": 13234, - "aard": 46932, - "aaron": 13948, - "aaron": 7709, - "aas": 28542, - "aas": 32205, - "aat": 34018, - "aat": 35004, - "aau": 35426, - "aay": 38281, - "aay": 40249, - "aaz": 26770, - "ab": 596, - "ab": 3937, - "aba": 44204, - "aba": 11102, - "abad": 33444, - "abad": 7155, - "aban": 41662, - "aband": 8595, - "abandon": 28805, - "abandoned": 11227, - "abar": 17860, - "abar": 39805, - "abas": 25402, - "abay": 43542, - "abb": 38954, - "abb": 38297, - "abba": 30870, - "abbas": 37494, - "abbas": 24412, - "abbey": 31927, - "abbey": 10132, - "abbie": 39949, - "abbo": 13536, - "abbot": 44046, - "abbott": 43737, - "abbott": 15649, - "abbrevi": 44843, - "abby": 30586, - "abby": 14694, - "abc": 13137, - "abc": 5334, - "abcnews": 31566, - "abd": 44093, - "abdel": 46511, - "abdomin": 35335, - "abdominal": 39328, - "abdu": 13361, - "abduc": 17884, - "abducted": 31520, - "abduction": 36984, - "abdul": 14227, - "abdul": 15593, - "abdullah": 21317, - "abe": 15856, - "abe": 12734, - "abee": 36037, - "abel": 31938, - "abel": 25318, - "abella": 46156, - "aben": 40865, - "aber": 7828, - "aber": 41867, - "aberdeen": 30539, - "aberdeen": 17236, - "abh": 27484, - "abh": 33649, - "abhcosmetics": 49189, - "abhi": 18113, - "abhin": 44045, - "abhishek": 44502, - "abi": 16867, - "abi": 14161, - "abia": 48604, - "abide": 49163, - "abig": 20863, - "abigail": 25686, - "abil": 21135, - "abilities": 8724, - "ability": 35146, - "ability": 3024, - "abit": 48668, - "ablanc": 33716, - "able": 10102, - "able": 863, - "abled": 10655, - "ableg": 24055, - "ables": 8486, - "ableton": 47169, - "ably": 6748, - "abnormal": 40934, - "abo": 2889, - "abo": 21861, - "aboard": 11661, - "abol": 31768, - "abolic": 46827, - "abolish": 47403, - "aboo": 42433, - "abor": 8416, - "aboriginal": 20422, - "abortion": 12336, - "abortions": 43218, - "aboss": 46401, - "abou": 36455, - "abou": 44053, - "abound": 41037, - "abour": 46637, - "about": 20204, - "about": 781, - "abouts": 36339, - "above": 35019, - "above": 4348, - "aboy": 37077, - "abpoli": 44779, - "abq": 38767, - "abr": 44932, - "abra": 10694, - "abra": 35087, - "abraham": 40623, - "abraham": 15869, - "abram": 33255, - "abrams": 29852, - "abre": 22472, - "abre": 46756, - "abri": 28605, - "abridged": 45333, - "abroad": 11253, - "abru": 46295, - "abs": 18431, - "abs": 11109, - "absc": 25389, - "abscbn": 44260, - "abscbn": 45810, - "absen": 32453, - "absence": 19240, - "absent": 30363, - "absol": 4624, - "absolu": 7055, - "absolut": 4666, - "absolute": 7501, - "absolutely": 4703, - "absor": 14303, - "absorb": 35806, - "absorbed": 45059, - "absorbing": 46412, - "absorption": 42210, - "abstr": 7530, - "abstract": 23885, - "abstract": 10197, - "abstractart": 31170, - "abstraction": 47696, - "abstracts": 40065, - "absur": 21639, - "absurd": 29757, - "abt": 9850, - "abu": 9167, - "abu": 11787, - "abud": 20180, - "abudha": 21450, - "abudhabi": 25256, - "abuja": 23371, - "abun": 20544, - "abundance": 23236, - "abundant": 31611, - "abur": 23377, - "aburger": 46660, - "abuse": 7678, - "abused": 23855, - "abuses": 37132, - "abusing": 36558, - "abusive": 26858, - "abv": 34172, - "aby": 16342, - "aby": 31378, - "abyss": 33632, - "abz": 42292, - "ac": 546, - "ac": 2816, - "aca": 9213, - "acab": 41388, - "acacia": 44047, - "acad": 32537, - "acade": 2892, - "academia": 22662, - "academic": 31178, - "academic": 7935, - "academics": 26417, - "academies": 42569, - "academy": 29968, - "academy": 4041, - "acadi": 41455, - "acadia": 49236, - "acam": 26172, - "acan": 42227, - "acan": 26318, - "acap": 32357, - "acar": 22232, - "acare": 16961, - "acc": 26805, - "acc": 9318, - "acca": 30883, - "acce": 8564, - "acceler": 10161, - "accelerate": 23619, - "accelerated": 38513, - "accelerating": 41821, - "acceleration": 39387, - "accelerator": 25261, - "accent": 28110, - "accent": 18931, - "accents": 31738, - "accenture": 41853, - "accep": 4616, - "accept": 16447, - "accept": 9338, - "acceptable": 14209, - "acceptance": 17090, - "accepted": 9159, - "accepting": 12855, - "accepts": 22338, - "access": 7596, - "access": 3822, - "accessi": 10787, - "accessibility": 23407, - "accessible": 13977, - "accessing": 46339, - "accessories": 10220, - "accessory": 20417, - "acci": 4263, - "acci": 33943, - "accident": 6608, - "accidental": 24895, - "accidentally": 11061, - "accidents": 22072, - "acclaimed": 21172, - "acco": 44730, - "accol": 33858, - "accolades": 46731, - "accom": 23658, - "accommo": 34495, - "accommod": 14386, - "accommodate": 34708, - "accommodation": 18066, - "accommodations": 45536, - "accomp": 24985, - "accompan": 14746, - "accompanied": 20715, - "accompany": 34142, - "accompanying": 38179, - "accompli": 10205, - "accomplish": 25542, - "accomplished": 16462, - "accomplishment": 26100, - "accomplishments": 24965, - "accor": 4182, - "accord": 34293, - "accord": 28513, - "according": 4717, - "accordingly": 35535, - "accordion": 48760, - "accoun": 3081, - "account": 18424, - "account": 4684, - "accountability": 19377, - "accountable": 24216, - "accountant": 31026, - "accountants": 37222, - "accounted": 43951, - "accounting": 14805, - "accounts": 9974, - "accra": 31900, - "accred": 17451, - "accreditation": 27015, - "accredited": 27647, - "acct": 45569, - "accu": 5618, - "accumul": 19275, - "accumulation": 37112, - "accur": 6551, - "accuracy": 18423, - "accurate": 8858, - "accurately": 24206, - "accusations": 33615, - "accuse": 39414, - "accused": 9434, - "accuses": 27496, - "accusing": 41474, - "acdc": 45067, - "ace": 2675, - "ace": 804, - "acea": 35219, - "aceae": 38153, - "acele": 40868, - "aceous": 33610, - "acer": 37990, - "acer": 25809, - "aces": 5725, - "acet": 28735, - "acf": 38389, - "ach": 972, - "ach": 987, - "acha": 22686, - "acharya": 45780, - "achat": 32706, - "ache": 27771, - "ache": 7214, - "ached": 17048, - "acher": 38442, - "acher": 17936, - "achers": 25051, - "aches": 14823, - "achi": 3264, - "achi": 9087, - "achiev": 8160, - "achieve": 14798, - "achieve": 8175, - "achieved": 12359, - "achievement": 8245, - "achievements": 16114, - "achiever": 46286, - "achievers": 44544, - "achieves": 40123, - "achieving": 16120, - "achilles": 33327, - "achim": 42335, - "aching": 12864, - "acho": 33130, - "achs": 41195, - "aci": 4359, - "aci": 34100, - "acia": 30163, - "acial": 32422, - "acid": 35474, - "acid": 10085, - "acidity": 48800, - "acids": 27751, - "acies": 20162, - "acin": 39442, - "acing": 9442, - "acio": 26202, - "acion": 44965, - "acion": 24968, - "acional": 26435, - "aciones": 35832, - "acious": 16020, - "acity": 7511, - "ación": 38175, - "ack": 877, - "ack": 725, - "acked": 5698, - "acker": 31201, - "acker": 7940, - "ackeray": 41843, - "acki": 42857, - "acking": 5515, - "ackles": 28503, - "acknow": 13563, - "acknowle": 18100, - "acknowledge": 25209, - "acknowledged": 35913, - "acknowledges": 49083, - "acknowledging": 45645, - "acks": 3858, - "acl": 47593, - "acl": 23073, - "acle": 6504, - "acles": 34164, - "aclu": 37354, - "acm": 39317, - "acmilan": 36500, - "acne": 24195, - "aco": 9463, - "aco": 8800, - "acol": 17431, - "acollege": 43468, - "acom": 17224, - "acom": 22342, - "acon": 11621, - "acon": 11571, - "aconf": 38851, - "acons": 31599, - "acor": 22076, - "acorn": 37537, - "acos": 39943, - "acosta": 31994, - "acou": 8794, - "acoun": 31295, - "acounty": 45449, - "acoustic": 10616, - "acoustics": 43873, - "acp": 19627, - "acqu": 7946, - "acquainted": 40713, - "acqui": 12194, - "acquire": 21576, - "acquired": 15932, - "acquires": 27376, - "acquiring": 42785, - "acquis": 14207, - "acquisition": 16543, - "acquisitions": 39649, - "acr": 43648, - "acre": 26749, - "acre": 9493, - "acres": 11630, - "acro": 21060, - "acrob": 40891, - "acron": 37770, - "across": 2500, - "acrosse": 40979, - "acruz": 40455, - "acry": 10440, - "acrylic": 12252, - "acs": 11782, - "act": 10305, - "act": 1393, - "acted": 10971, - "acti": 4786, - "acting": 6319, - "action": 12493, - "action": 1816, - "actions": 6271, - "activ": 3430, - "activate": 26737, - "activated": 22249, - "activation": 26769, - "active": 19009, - "active": 4046, - "actively": 18645, - "activi": 7230, - "activism": 20117, - "activist": 10850, - "activists": 12649, - "activities": 6514, - "activity": 6206, - "actment": 44807, - "acton": 36167, - "acton": 36697, - "actonclimate": 43797, - "actor": 12181, - "actor": 4035, - "actors": 9255, - "actorslife": 25117, - "actorvijay": 34033, - "actress": 5805, - "actresses": 33639, - "acts": 6816, - "actu": 2375, - "actual": 7488, - "actually": 2955, - "acu": 9204, - "acu": 48475, - "aculture": 38145, - "acup": 30869, - "acup": 27278, - "acupuncture": 40043, - "acur": 44719, - "acura": 30120, - "acus": 33710, - "acute": 19734, - "acy": 18717, - "acy": 2356, - "ad": 594, - "ad": 680, - "ada": 25785, - "ada": 1886, - "adaily": 47254, - "adal": 46646, - "adam": 6037, - "adam": 4944, - "adamlambert": 27659, - "adams": 7942, - "adan": 41802, - "adani": 37499, - "adap": 6341, - "adapt": 22666, - "adaptation": 16566, - "adapted": 26657, - "adapter": 21839, - "adapting": 44120, - "adaptive": 28672, - "adar": 27702, - "adar": 32681, - "adas": 23250, - "adata": 39500, - "aday": 31367, - "aday": 10280, - "adays": 24337, - "adb": 45630, - "adc": 38201, - "add": 19408, - "add": 3536, - "addams": 38912, - "added": 4149, - "adder": 47557, - "addi": 36378, - "addic": 5709, - "addict": 14614, - "addicted": 16275, - "addiction": 11751, - "addictive": 29638, - "addicts": 29997, - "adding": 8676, - "addis": 43911, - "addison": 32369, - "additi": 26927, - "addition": 6698, - "additional": 10666, - "additions": 22575, - "additive": 48546, - "addo": 40001, - "address": 5834, - "addressed": 20817, - "addresses": 12702, - "addressing": 10594, - "adds": 9944, - "addy": 24746, - "ade": 2194, - "ade": 1928, - "adecides": 46374, - "aded": 9994, - "adee": 47054, - "adel": 4434, - "adel": 27308, - "adelaide": 38193, - "adelaide": 11611, - "adele": 42843, - "adele": 21220, - "adelrey": 43627, - "ademy": 49123, - "aden": 28669, - "aden": 28688, - "adena": 23648, - "adequ": 18232, - "adequate": 22281, - "ader": 21365, - "adero": 49185, - "aders": 27672, - "ades": 5793, - "adh": 42301, - "adhd": 32649, - "adhe": 21175, - "adhesive": 38429, - "adi": 2486, - "adi": 8779, - "adia": 26874, - "adic": 36780, - "adid": 8086, - "adidas": 22396, - "adidas": 9589, - "adidasoriginals": 48575, - "adies": 45834, - "adifference": 37217, - "adilla": 41167, - "ading": 15000, - "adio": 15060, - "adirond": 36843, - "adish": 49009, - "adity": 28596, - "aditya": 37186, - "adityanath": 44437, - "adjac": 32517, - "adjacent": 33836, - "adjec": 45512, - "adju": 16413, - "adjun": 45995, - "adjust": 13784, - "adjust": 28073, - "adjustable": 20476, - "adjusted": 30515, - "adjusting": 41132, - "adjustment": 36081, - "adjustments": 36331, - "adl": 49351, - "adler": 30222, - "adm": 9892, - "adm": 33604, - "admi": 11666, - "admin": 12528, - "admini": 6434, - "administr": 12174, - "administration": 9502, - "administrative": 22424, - "administrator": 22603, - "administrators": 36123, - "admins": 49297, - "admir": 17031, - "admiral": 21013, - "admiration": 39569, - "admire": 17791, - "admired": 36103, - "admirer": 48344, - "admiring": 29835, - "admission": 11315, - "admissions": 22463, - "admit": 13769, - "admits": 16332, - "admitted": 20427, - "admitting": 46148, - "adn": 40339, - "adnan": 42037, - "ado": 4775, - "ado": 2933, - "adobe": 29256, - "adobe": 16484, - "adog": 44913, - "adol": 33512, - "adole": 22704, - "adolescent": 36793, - "adolescents": 45656, - "adolf": 41179, - "adon": 25907, - "adona": 48419, - "adop": 4183, - "adopt": 16441, - "adopt": 11159, - "adoptable": 36905, - "adoptdont": 19674, - "adoptdontshop": 20089, - "adopted": 12538, - "adopting": 30158, - "adoption": 11544, - "adopts": 40853, - "ador": 4992, - "ador": 9162, - "adora": 40031, - "adorable": 6298, - "adoration": 46781, - "adore": 15502, - "adored": 49233, - "adores": 30290, - "adorned": 44953, - "ados": 20079, - "adox": 32188, - "adp": 44426, - "adr": 46189, - "adren": 24204, - "adrenaline": 35552, - "adri": 5935, - "adrian": 25012, - "adrian": 13163, - "adriana": 41363, - "adrid": 26562, - "adrien": 47469, - "adrienne": 40081, - "ads": 2485, - "adu": 16882, - "adu": 24446, - "adukone": 30511, - "adul": 7222, - "adult": 42209, - "adult": 7115, - "adulthood": 40964, - "adults": 9391, - "adv": 1647, - "adv": 21018, - "advan": 33411, - "advance": 27291, - "advance": 7022, - "advanced": 7465, - "advancement": 35437, - "advances": 15852, - "advancing": 21355, - "advani": 48189, - "advant": 7017, - "advantage": 8573, - "advantaged": 38361, - "advantages": 23506, - "adven": 41670, - "advent": 3071, - "advent": 15199, - "adventcalendar": 43492, - "adventur": 29627, - "adventure": 17251, - "adventure": 4377, - "adventurer": 48098, - "adventures": 7941, - "adventurous": 31179, - "adver": 4806, - "adverse": 30348, - "adversity": 32516, - "advert": 19080, - "adverti": 5682, - "advertise": 31473, - "advertised": 38987, - "advertisement": 18713, - "advertiser": 41829, - "advertisers": 45472, - "advertising": 8158, - "adverts": 44306, - "advice": 4973, - "advis": 4634, - "advise": 25962, - "advised": 23196, - "adviser": 20367, - "advisers": 40984, - "advises": 42761, - "advising": 39648, - "advisor": 12380, - "advisors": 23197, - "advisory": 10224, - "advoc": 6657, - "advocacy": 14443, - "advocate": 12044, - "advocates": 17757, - "adwords": 48343, - "ady": 41446, - "ady": 8781, - "ae": 5548, - "ae": 4542, - "aea": 37048, - "aed": 26912, - "aege": 42304, - "ael": 41533, - "ael": 43340, - "aen": 43085, - "aer": 10195, - "aeri": 27685, - "aerial": 44866, - "aerial": 12440, - "aero": 10196, - "aero": 25026, - "aerob": 42824, - "aeron": 37286, - "aeronau": 42816, - "aerop": 27735, - "aerosmith": 43253, - "aerospace": 20530, - "aes": 10617, - "aes": 35677, - "aest": 40694, - "aesthe": 21181, - "aesthetic": 16179, - "aesthetics": 29295, - "aew": 47108, - "af": 702, - "af": 4391, - "afa": 24953, - "afan": 47474, - "afar": 41637, - "afar": 37866, - "afb": 27022, - "afc": 29742, - "afc": 6571, - "afcb": 44276, - "afcon": 30019, - "afd": 44626, - "afe": 30487, - "afe": 13912, - "afer": 44707, - "aff": 8849, - "aff": 14864, - "affair": 13998, - "affairs": 9830, - "affe": 4556, - "affect": 11361, - "affected": 9715, - "affecting": 18448, - "affection": 33780, - "affection": 28381, - "affectionate": 42578, - "affects": 17285, - "affili": 12120, - "affiliate": 18652, - "affiliated": 37540, - "affiliation": 48377, - "affinity": 41451, - "affir": 25343, - "affirm": 42711, - "affirm": 48625, - "affirmation": 47495, - "affl": 34036, - "affleck": 35584, - "afford": 7951, - "afford": 13223, - "affordability": 44828, - "affordable": 43944, - "affordable": 8926, - "afg": 33994, - "afgh": 9029, - "afghan": 15919, - "afghanistan": 9836, - "afi": 24074, - "afi": 31958, - "afil": 27209, - "afire": 42010, - "afirst": 38601, - "afl": 15132, - "afl": 14356, - "aflo": 41959, - "afm": 38385, - "afootball": 41694, - "afor": 43102, - "afore": 41468, - "afp": 18311, - "afraid": 9474, - "afri": 13888, - "afric": 2136, - "africa": 3093, - "african": 17471, - "african": 4736, - "africans": 26534, - "afridi": 37651, - "afrika": 45833, - "afrin": 45586, - "afro": 16267, - "afro": 21795, - "afs": 48960, - "aft": 22693, - "after": 2278, - "after": 953, - "afterdark": 48966, - "afterlife": 46790, - "aftermath": 20958, - "afterno": 22330, - "afternoon": 39035, - "afternoon": 2716, - "afternoons": 31631, - "afterparty": 35305, - "afterwards": 23911, - "ag": 602, - "ag": 5241, - "aga": 1050, - "aga": 4654, - "again": 1495, - "against": 23838, - "against": 1601, - "agame": 46943, - "agan": 42946, - "agan": 9178, - "agar": 13199, - "agar": 17544, - "agarwal": 43117, - "agas": 20430, - "agate": 25454, - "agatha": 43896, - "agave": 42671, - "agawa": 39433, - "agazine": 44942, - "age": 4758, - "age": 805, - "aged": 3889, - "ageing": 25349, - "agen": 10101, - "agen": 43696, - "agencies": 13887, - "agency": 44885, - "agency": 6270, - "agend": 48653, - "agenda": 8728, - "agent": 21210, - "agent": 6576, - "agents": 10199, - "agentsof": 37074, - "agentsofshield": 38801, - "ager": 44847, - "ager": 10443, - "agers": 22123, - "ages": 2321, - "agg": 45482, - "aggarwal": 39386, - "agger": 27836, - "aggi": 36844, - "aggie": 44244, - "aggie": 37618, - "aggies": 31047, - "aggio": 36685, - "aggrav": 35203, - "aggre": 10426, - "aggreg": 41968, - "aggregate": 41318, - "aggression": 28900, - "aggressive": 16295, - "aggressively": 48667, - "agh": 17917, - "agh": 14402, - "aghan": 31276, - "agi": 24036, - "agi": 17645, - "agic": 37652, - "agile": 16276, - "agility": 32161, - "aging": 4336, - "agio": 41746, - "agirl": 35469, - "agle": 37035, - "agle": 16702, - "agles": 36374, - "agles": 22679, - "aglia": 46912, - "agm": 19162, - "agn": 36474, - "agna": 43626, - "agne": 29374, - "agne": 48303, - "agnes": 26213, - "agno": 41540, - "ago": 6276, - "ago": 1468, - "agomez": 27127, - "agon": 26775, - "agon": 14901, - "agony": 36977, - "agor": 38920, - "agos": 32657, - "agov": 34227, - "agp": 46048, - "agr": 36639, - "agra": 26660, - "agra": 29830, - "agram": 2447, - "agre": 3180, - "agreat": 37594, - "agree": 5953, - "agreed": 12774, - "agreeing": 40720, - "agreement": 8286, - "agreements": 25865, - "agrees": 17854, - "agri": 20527, - "agri": 30326, - "agricul": 7234, - "agricultural": 15440, - "agriculture": 9720, - "agro": 33178, - "agro": 44589, - "agron": 41314, - "agroup": 40099, - "ags": 16926, - "agt": 39681, - "agu": 3922, - "agu": 36544, - "agua": 18482, - "aguchi": 49206, - "ague": 2095, - "aguero": 42964, - "agues": 7000, - "aguil": 27946, - "aguilar": 44715, - "ah": 1772, - "ah": 1288, - "aha": 12082, - "aha": 8429, - "ahah": 38661, - "ahaha": 32423, - "ahahaha": 42620, - "aham": 36036, - "ahan": 45061, - "ahan": 19255, - "ahar": 31038, - "ahar": 38760, - "ahe": 27688, - "ahead": 3158, - "ahem": 39995, - "ahh": 13152, - "ahhh": 14769, - "ahhhh": 21054, - "ahhhhh": 36392, - "ahi": 45349, - "ahi": 24154, - "ahl": 30433, - "ahmad": 32167, - "ahmad": 16902, - "ahmadi": 38656, - "ahmadiyya": 44865, - "ahmed": 19491, - "ahmed": 12081, - "ahmedabad": 26966, - "ahn": 33405, - "aho": 28114, - "aho": 38444, - "ahora": 43113, - "ahouse": 33197, - "ahoy": 38652, - "ahs": 16937, - "ahu": 11908, - "ahu": 16515, - "ai": 2014, - "ai": 2215, - "aia": 27046, - "aib": 34780, - "aic": 29454, - "aid": 13723, - "aid": 5182, - "aida": 33830, - "aidan": 48814, - "aidan": 26945, - "aide": 31558, - "aide": 9746, - "aided": 48707, - "aiden": 40020, - "aides": 49082, - "aids": 11759, - "aig": 27295, - "aig": 46989, - "aii": 22478, - "aik": 42575, - "aiken": 46342, - "ail": 1457, - "ail": 9154, - "ailed": 38919, - "ailing": 29999, - "ails": 27024, - "aim": 6787, - "aim": 11255, - "aime": 39872, - "aimed": 20247, - "aimee": 36318, - "aiming": 21768, - "aimo": 36706, - "aims": 13326, - "ain": 8326, - "ain": 2210, - "aine": 48983, - "aine": 17634, - "ains": 27621, - "aint": 29543, - "aint": 13099, - "ainted": 39933, - "aioli": 43949, - "air": 1281, - "air": 1922, - "aira": 35085, - "aira": 46444, - "airasia": 48020, - "airbnb": 23098, - "airborne": 22755, - "airbus": 15324, - "aircraft": 7706, - "airdrop": 38434, - "aire": 7682, - "aired": 21938, - "aires": 17034, - "airfield": 40525, - "airforce": 23511, - "airing": 20453, - "airline": 14847, - "airlines": 8929, - "airmen": 44499, - "airplane": 16451, - "airplanes": 33319, - "airplay": 47024, - "airpollution": 47362, - "airport": 48337, - "airport": 3259, - "airports": 21543, - "airs": 18539, - "airshow": 27139, - "airsoft": 30134, - "airspace": 49280, - "airstrikes": 37220, - "airtel": 34784, - "airtime": 46617, - "airwaves": 43910, - "airways": 14299, - "airy": 44453, - "ais": 7616, - "ais": 11393, - "aise": 30505, - "aish": 21946, - "aisha": 40211, - "aishwar": 29687, - "aishwarya": 44019, - "aisle": 26917, - "ait": 25613, - "ait": 40814, - "aj": 3990, - "aj": 6342, - "aja": 42343, - "aja": 19633, - "ajax": 21933, - "ajay": 22494, - "ajay": 28726, - "ajaydevgn": 35515, - "aje": 48818, - "aje": 33315, - "ajes": 38791, - "aji": 26102, - "aji": 21153, - "ajit": 42261, - "ajith": 24118, - "ajo": 26958, - "aju": 36855, - "ak": 819, - "ak": 1196, - "aka": 19154, - "aka": 3412, - "akaif": 45736, - "akan": 43678, - "akan": 38244, - "akapoor": 40064, - "akarta": 48603, - "akb": 41962, - "akbar": 27180, - "ake": 10558, - "ake": 5776, - "aked": 6115, - "aker": 14245, - "aker": 3074, - "akers": 5788, - "akes": 4764, - "akest": 46679, - "akh": 14821, - "akh": 30660, - "akhan": 28158, - "akhi": 41660, - "akhilesh": 48495, - "akhtar": 45458, - "aki": 18173, - "aki": 6592, - "akin": 24630, - "akin": 13601, - "aking": 1809, - "akins": 48568, - "akira": 34001, - "akis": 27732, - "akistan": 46221, - "akley": 39908, - "ako": 44027, - "ako": 14541, - "akon": 47105, - "akos": 44659, - "akrish": 37434, - "akron": 26115, - "aks": 2953, - "aksh": 28226, - "akshay": 21483, - "akshay": 38914, - "akshaykumar": 23624, - "akshi": 42634, - "aku": 18151, - "aku": 20815, - "aky": 11977, - "al": 526, - "al": 566, - "ala": 12783, - "ala": 3449, - "alab": 6365, - "alabam": 45880, - "alabama": 8422, - "alach": 24622, - "alad": 23074, - "aladdin": 29951, - "alai": 47072, - "alain": 28999, - "alam": 16612, - "alam": 16012, - "alamo": 41922, - "alamo": 34632, - "alan": 9563, - "alan": 5773, - "alana": 43405, - "aland": 34304, - "aland": 6819, - "alar": 34333, - "alarm": 11321, - "alarming": 37209, - "alarms": 31236, - "alarts": 31422, - "alas": 7276, - "alas": 22412, - "alaska": 9562, - "alaskan": 33898, - "alastair": 42062, - "alay": 30289, - "alay": 36450, - "alaya": 36397, - "alb": 45248, - "alba": 25254, - "alban": 10882, - "albania": 29170, - "albanian": 47721, - "albans": 44119, - "albany": 17359, - "albat": 42797, - "albeit": 38984, - "alber": 6413, - "albert": 34174, - "albert": 9507, - "alberta": 11048, - "alberto": 22714, - "albi": 18512, - "albino": 48062, - "albion": 24071, - "albu": 2216, - "album": 40712, - "album": 2431, - "albums": 10705, - "albuquerque": 31079, - "alcat": 35361, - "alche": 37909, - "alchemist": 38913, - "alchemy": 39501, - "alco": 6848, - "alco": 45446, - "alcohol": 9426, - "alcoholic": 25098, - "ald": 4539, - "ald": 2928, - "alda": 46440, - "alde": 33114, - "alden": 17155, - "alden": 27710, - "aldenrichards": 20051, - "alder": 18220, - "alder": 46571, - "aldi": 23204, - "aldo": 9933, - "aldridge": 38084, - "alds": 14285, - "aldu": 6505, - "aldub": 10532, - "aldub": 15247, - "ale": 1440, - "ale": 1336, - "alea": 26518, - "aleague": 38909, - "alec": 29804, - "alec": 19954, - "alecoscino": 47948, - "aled": 4970, - "alee": 24515, - "alej": 23440, - "alejandro": 32950, - "alek": 26906, - "alek": 43310, - "aleksand": 48429, - "alem": 11825, - "aleppo": 19258, - "aler": 25674, - "aler": 27335, - "alert": 4662, - "alerts": 22144, - "ales": 44171, - "ales": 5962, - "aless": 21864, - "alessandro": 37344, - "alestine": 31945, - "alex": 2959, - "alex": 4134, - "alexa": 16273, - "alexand": 10696, - "alexander": 25527, - "alexander": 7563, - "alexandra": 19054, - "alexandre": 35711, - "alexandria": 21171, - "alexis": 35023, - "alexis": 14243, - "aley": 21635, - "alf": 27098, - "alfa": 23482, - "alfar": 38870, - "alfie": 28598, - "alfon": 31947, - "alfonso": 41784, - "alfre": 20982, - "alfred": 16553, - "alfredo": 32291, - "algae": 25654, - "algar": 36291, - "algarve": 40290, - "alge": 24336, - "algebra": 33694, - "alger": 18568, - "algeria": 25257, - "algon": 33007, - "algori": 14912, - "algorithm": 23295, - "algorithms": 26039, - "alham": 23352, - "alhamdulil": 35129, - "alhamdulillah": 38982, - "ali": 835, - "ali": 3558, - "alia": 2492, - "aliaa": 36468, - "alian": 3464, - "alias": 40026, - "alibaba": 39231, - "alic": 25265, - "alice": 23759, - "alice": 9192, - "alici": 31630, - "alicia": 20914, - "alie": 8697, - "alien": 22846, - "alien": 9639, - "aliens": 14883, - "alier": 39493, - "alies": 38086, - "alife": 41347, - "alife": 21100, - "alig": 21272, - "alight": 36157, - "align": 31160, - "aligned": 29292, - "alignment": 27267, - "alik": 31141, - "alike": 12665, - "alim": 42075, - "alin": 42746, - "alin": 40063, - "alina": 39529, - "aline": 21799, - "aling": 5169, - "alion": 19049, - "alis": 21308, - "alis": 20114, - "alisa": 38918, - "alisation": 42143, - "alise": 36718, - "alised": 25099, - "alism": 5607, - "alison": 28653, - "alison": 16970, - "alist": 44900, - "alist": 3320, - "alistair": 40551, - "alistic": 22302, - "alists": 5653, - "alit": 45566, - "alities": 27925, - "ality": 1694, - "alive": 40467, - "alive": 4716, - "aliz": 30979, - "alization": 8026, - "alize": 10268, - "alized": 6141, - "alizer": 38922, - "alizes": 26181, - "alizing": 13023, - "alk": 30246, - "alk": 21577, - "alkal": 33450, - "alkaline": 39210, - "all": 813, - "all": 615, - "alla": 13884, - "alla": 14000, - "allabout": 43996, - "allah": 6378, - "allan": 36552, - "allan": 15404, - "allblacks": 47728, - "allday": 35862, - "alle": 4870, - "alle": 29478, - "alled": 7379, - "alleg": 7456, - "allegations": 16992, - "alleged": 12133, - "allegedly": 14177, - "alleges": 45051, - "allegh": 41479, - "allegheny": 47851, - "allegi": 28832, - "allegiance": 30955, - "allen": 16712, - "allen": 6386, - "allenge": 31387, - "aller": 10116, - "aller": 30630, - "allergic": 28809, - "allergies": 28247, - "allergy": 24408, - "allery": 32542, - "alles": 43354, - "allevi": 31682, - "alleviate": 44799, - "alley": 36205, - "alley": 10329, - "allez": 49137, - "alli": 4123, - "alli": 15268, - "alliance": 45404, - "alliance": 8945, - "alliances": 48403, - "allianz": 45740, - "allie": 25040, - "allied": 20045, - "allies": 17277, - "alligator": 28574, - "allin": 45007, - "allin": 22395, - "alline": 48182, - "alling": 2992, - "allis": 45309, - "allison": 34602, - "allison": 16578, - "allman": 42611, - "allo": 8107, - "allo": 18389, - "allocated": 42716, - "allocation": 35139, - "allon": 46693, - "allot": 26363, - "allotment": 33750, - "allow": 5645, - "allow": 6722, - "allowance": 35696, - "allowed": 7885, - "allowing": 12458, - "allows": 9966, - "alloy": 22467, - "alls": 1997, - "allstar": 31247, - "allstar": 22974, - "allstars": 31198, - "allthe": 29253, - "allu": 20157, - "alluarjun": 39333, - "allure": 41814, - "ally": 7461, - "ally": 769, - "alm": 28303, - "alma": 32933, - "alma": 18337, - "alman": 29394, - "almanac": 41268, - "almighty": 21898, - "almond": 15646, - "almonds": 30468, - "almost": 47534, - "almost": 2671, - "aln": 47203, - "alo": 3435, - "alo": 6183, - "aloe": 30728, - "alog": 15813, - "alogue": 9101, - "aloha": 23160, - "aloils": 49002, - "alom": 22236, - "alon": 14097, - "alon": 42846, - "alone": 4702, - "along": 8300, - "along": 2528, - "alongside": 8646, - "alonso": 25704, - "aloo": 46187, - "alore": 14323, - "alot": 16945, - "alou": 43180, - "aloud": 30028, - "alove": 46669, - "alove": 37045, - "alp": 32020, - "alp": 39342, - "alpac": 30128, - "alpaca": 42561, - "alph": 6720, - "alpha": 11807, - "alpha": 8624, - "alphabe": 45796, - "alphabet": 22335, - "alphon": 37865, - "alpine": 17055, - "alps": 18191, - "already": 2426, - "alright": 10866, - "als": 23982, - "als": 938, - "alsace": 49388, - "also": 1446, - "alt": 9995, - "alt": 10006, - "alta": 24470, - "alta": 25378, - "altaf": 47342, - "altam": 45624, - "altar": 16385, - "alter": 4949, - "alter": 21393, - "altered": 25201, - "altern": 47463, - "alternate": 15926, - "alternati": 16699, - "alternative": 37327, - "alternative": 8248, - "alternatives": 25041, - "alth": 23463, - "alth": 5863, - "although": 9421, - "alti": 35531, - "alties": 17276, - "altitude": 23241, - "altman": 48100, - "alto": 35053, - "alto": 17518, - "altogether": 45689, - "alton": 41331, - "alton": 36550, - "altrin": 38458, - "altrincham": 44718, - "alty": 5546, - "alu": 4776, - "alu": 27991, - "alum": 5404, - "alum": 10553, - "alumin": 14563, - "alumini": 22908, - "aluminium": 23631, - "aluminum": 15251, - "alumna": 30313, - "alumni": 6646, - "alumnus": 23633, - "alums": 30155, - "alv": 20928, - "alvar": 25196, - "alvarez": 26924, - "alvaro": 41941, - "alves": 38547, - "alvin": 27023, - "alway": 14046, - "alway": 43764, - "always": 24997, - "always": 1466, - "alwx": 32768, - "aly": 6468, - "aly": 12910, - "alyn": 49150, - "alyss": 29490, - "alyssa": 18898, - "alz": 12936, - "alz": 41128, - "alzheim": 15212, - "alzheimer": 21151, - "alzheimers": 34592, - "am": 548, - "am": 687, - "ama": 18206, - "ama": 1696, - "amad": 45095, - "amade": 37366, - "amag": 32049, - "amal": 15315, - "amal": 36753, - "aman": 19890, - "aman": 10110, - "amand": 14560, - "amanda": 10036, - "amar": 6424, - "amar": 19607, - "amara": 48522, - "amari": 42565, - "amarillo": 40449, - "amarine": 45591, - "amarketing": 30788, - "amas": 22716, - "amas": 15667, - "amat": 38664, - "amat": 25455, - "amate": 12453, - "amateur": 14287, - "amaya": 47210, - "amaz": 1185, - "amaze": 24846, - "amazed": 18944, - "amazing": 15949, - "amazing": 1370, - "amazingly": 20368, - "amazon": 13630, - "amazon": 4140, - "amb": 9042, - "amb": 16853, - "amba": 27003, - "ambani": 45967, - "ambas": 5634, - "ambassad": 5758, - "ambassador": 6795, - "ambassadors": 16832, - "ambed": 42089, - "ambedkar": 48131, - "amber": 18292, - "amber": 9986, - "ambi": 11844, - "ambient": 23447, - "ambigu": 35702, - "ambition": 20673, - "ambitions": 34152, - "ambitious": 18666, - "ambro": 17585, - "ambrose": 24253, - "ambu": 34423, - "ambul": 13944, - "ambulance": 15555, - "ambush": 40725, - "amc": 24942, - "amc": 16921, - "amd": 20845, - "ame": 3995, - "ame": 780, - "amed": 5660, - "ameen": 24229, - "amel": 31988, - "amel": 10960, - "ameli": 21599, - "amelia": 21433, - "amell": 48198, - "amen": 18716, - "amen": 12335, - "amend": 12425, - "amendment": 15019, - "amendments": 40901, - "amenities": 30096, - "ament": 27528, - "amer": 17081, - "amer": 16147, - "ameri": 40422, - "americ": 1283, - "america": 2224, - "americafirst": 43216, - "american": 8746, - "american": 2151, - "americana": 26221, - "americanair": 42538, - "americani": 39726, - "americans": 6676, - "americas": 33343, - "americas": 18142, - "ames": 5469, - "ameter": 23393, - "amethy": 30291, - "amethyst": 31485, - "amex": 46390, - "amg": 21324, - "amher": 32311, - "amherst": 39065, - "ami": 6100, - "ami": 3065, - "amic": 25824, - "amic": 21383, - "amid": 18908, - "amid": 11953, - "amide": 30952, - "amidst": 25172, - "amie": 36901, - "amig": 40294, - "amiga": 35329, - "amigo": 44991, - "amigos": 28176, - "amii": 35462, - "amiibo": 38871, - "amily": 36732, - "amin": 14337, - "amin": 20235, - "amina": 47531, - "amination": 30355, - "amine": 35823, - "aming": 3507, - "amino": 33464, - "amir": 26029, - "amir": 21973, - "amis": 29829, - "amish": 24958, - "amit": 15083, - "amit": 25255, - "amitabh": 48124, - "amitshah": 32374, - "aml": 43185, - "amma": 29786, - "amman": 29243, - "ammo": 33474, - "ammunition": 35060, - "amn": 24073, - "amne": 14596, - "amnesia": 41741, - "amnesty": 46330, - "amnesty": 21177, - "amo": 4833, - "amo": 11156, - "amodi": 9826, - "amon": 17492, - "amon": 24046, - "among": 12310, - "among": 4265, - "amongst": 12520, - "amoo": 26977, - "amor": 19977, - "amor": 15973, - "amore": 38937, - "amore": 22691, - "amores": 36338, - "amos": 18133, - "amoto": 25492, - "amount": 6403, - "amounts": 16747, - "amour": 29908, - "amovie": 41062, - "amp": 3521, - "amp": 6259, - "amped": 22640, - "amphi": 16379, - "amphibious": 45206, - "amphitheater": 41285, - "amphitheatre": 44039, - "ample": 34162, - "amples": 14536, - "ampli": 15647, - "amplifier": 31743, - "amplify": 45308, - "amps": 19252, - "ampton": 29410, - "ampton": 9347, - "amr": 30916, - "amreading": 16546, - "amrit": 33849, - "ams": 1396, - "amster": 9110, - "amsterdam": 9441, - "amtrak": 27855, - "amu": 11347, - "amu": 32336, - "amur": 35014, - "amura": 35487, - "amus": 36269, - "amuse": 21421, - "amuse": 44367, - "amused": 30212, - "amusement": 32570, - "amusic": 20266, - "amusing": 31789, - "amwriting": 9660, - "amy": 10547, - "amy": 5187, - "an": 514, - "an": 550, - "ana": 6588, - "ana": 1388, - "anab": 34742, - "anada": 27948, - "anag": 12115, - "anagh": 40774, - "anaheim": 23728, - "anak": 34814, - "anak": 38658, - "anal": 2785, - "analo": 34179, - "analog": 19963, - "analogue": 46031, - "analy": 4611, - "analyse": 47246, - "analyses": 39695, - "analysis": 5296, - "analyst": 14198, - "analysts": 28075, - "analytical": 34550, - "analytics": 8558, - "analyze": 28519, - "analyzing": 32107, - "anam": 29525, - "anan": 37215, - "anand": 25073, - "anand": 22083, - "anap": 41566, - "anarch": 46405, - "anarchi": 39879, - "anarchy": 27707, - "anas": 31382, - "anas": 12633, - "anast": 48902, - "anasta": 22915, - "anastasi": 36534, - "anastasia": 37975, - "anat": 10045, - "anath": 31277, - "anatom": 33759, - "anatomy": 15376, - "anc": 1124, - "anc": 17758, - "anca": 14583, - "ance": 7165, - "ance": 884, - "anced": 5071, - "ancer": 17415, - "ancers": 37296, - "ances": 3515, - "ancestor": 43904, - "ancestors": 24405, - "ancestral": 41615, - "ancestry": 30922, - "anch": 9489, - "anche": 34679, - "ancho": 26610, - "anchor": 20030, - "anchor": 13201, - "anchorage": 31950, - "anchored": 45926, - "anchors": 37830, - "anci": 4192, - "ancient": 31495, - "ancient": 5810, - "ancies": 21647, - "ancing": 7797, - "anco": 15459, - "ancy": 16282, - "ancy": 3633, - "and": 672, - "and": 537, - "anda": 2911, - "andalu": 31443, - "andco": 36302, - "ande": 26889, - "ande": 30354, - "ander": 3740, - "ander": 3935, - "anders": 10880, - "andersen": 32661, - "anderson": 26683, - "anderson": 6510, - "andes": 24052, - "andfriends": 36871, - "andhi": 21617, - "andhra": 32452, - "andi": 28870, - "andi": 14354, - "andie": 46318, - "andme": 42831, - "ando": 35950, - "ando": 5986, - "andolan": 48965, - "andon": 36488, - "andor": 45243, - "andover": 44177, - "andr": 22661, - "andra": 46795, - "andra": 21730, - "andre": 2657, - "andre": 9400, - "andrea": 10895, - "andreas": 20444, - "andrei": 42137, - "andres": 25197, - "andretti": 44291, - "andrew": 11717, - "andrew": 4847, - "andrews": 14506, - "andri": 37208, - "andro": 4417, - "andro": 17980, - "android": 24284, - "android": 5191, - "androidgames": 46572, - "andromeda": 42942, - "andré": 35609, - "ands": 32257, - "andthe": 22111, - "andu": 44200, - "andum": 47266, - "andy": 9447, - "andy": 2888, - "ane": 5846, - "ane": 3051, - "anec": 33965, - "anem": 41395, - "anemone": 49019, - "aneous": 48273, - "anes": 15381, - "anese": 48778, - "anesthe": 30622, - "anesthesia": 43353, - "anew": 39084, - "anew": 47341, - "anews": 20919, - "aney": 22387, - "anfield": 26993, - "ang": 883, - "ang": 2704, - "anga": 11641, - "angames": 43178, - "angan": 28264, - "angas": 46180, - "ange": 2960, - "ange": 3039, - "angel": 5029, - "angel": 5130, - "angela": 12354, - "angeles": 7382, - "angeli": 15265, - "angelic": 41038, - "angelica": 38582, - "angelina": 28890, - "angelo": 14342, - "angelou": 41328, - "angels": 7809, - "anger": 32737, - "anger": 6788, - "angerous": 39716, - "angers": 29756, - "angh": 34030, - "angi": 28003, - "angi": 24301, - "angie": 18859, - "angle": 21749, - "angle": 6946, - "angled": 32322, - "angler": 22284, - "anglers": 41608, - "angles": 18627, - "anglesey": 31850, - "anglia": 32076, - "anglic": 28322, - "anglican": 33284, - "angling": 36824, - "anglo": 39515, - "anglo": 30408, - "ango": 19090, - "angola": 36636, - "angor": 41740, - "angp": 19992, - "angry": 33910, - "angry": 9054, - "angs": 18441, - "angst": 41714, - "angu": 11209, - "angular": 43584, - "angular": 24981, - "angularjs": 48608, - "angus": 19688, - "ani": 1326, - "ani": 3624, - "ania": 9866, - "anian": 9945, - "anians": 39393, - "anic": 23113, - "anie": 26697, - "anie": 7671, - "anil": 28589, - "anil": 34619, - "anim": 2190, - "animal": 10697, - "animal": 4668, - "animalrights": 42859, - "animals": 4995, - "animate": 40076, - "animated": 13360, - "animation": 10344, - "animations": 42870, - "animator": 42591, - "anime": 23314, - "anime": 6469, - "anin": 45735, - "aning": 30972, - "anir": 27089, - "anirud": 35278, - "anirudhofficial": 45917, - "anis": 40986, - "anis": 47556, - "anism": 20947, - "anist": 16729, - "anistan": 9727, - "aniston": 47344, - "anit": 23683, - "anita": 18544, - "anium": 14794, - "anj": 22443, - "anja": 43440, - "anjali": 38834, - "anjo": 47353, - "ank": 13339, - "ank": 10029, - "anka": 45324, - "ankara": 34309, - "ankle": 14777, - "ankles": 48688, - "ann": 850, - "ann": 5424, - "anna": 13821, - "anna": 2160, - "annab": 22336, - "annabelle": 47661, - "annah": 39166, - "annah": 14327, - "annak": 41720, - "annan": 32166, - "annapolis": 34491, - "annas": 48467, - "anne": 9139, - "anne": 4083, - "anned": 27352, - "anner": 12642, - "annes": 24343, - "annette": 36821, - "annex": 42958, - "annex": 46389, - "anni": 2438, - "anni": 13728, - "annie": 37270, - "annie": 12173, - "annies": 43184, - "annihil": 32734, - "annis": 24742, - "anniv": 31399, - "anniver": 29671, - "annivers": 42836, - "anniversaire": 30882, - "anniversary": 3048, - "anno": 9901, - "anno": 26871, - "annon": 26385, - "annot": 30411, - "announ": 1806, - "announce": 3682, - "announced": 4103, - "announcement": 6932, - "announcements": 23735, - "announcer": 33626, - "announces": 6500, - "announcing": 11593, - "annoy": 45138, - "annoyed": 29863, - "annoying": 15248, - "annu": 21698, - "annual": 2906, - "annually": 23703, - "anny": 34313, - "anny": 5291, - "ano": 5617, - "ano": 2658, - "anom": 21612, - "anomaly": 46811, - "anon": 47079, - "anon": 13667, - "anonym": 38605, - "anonymous": 15036, - "anoo": 25690, - "anor": 13243, - "anor": 16596, - "anos": 20132, - "another": 29274, - "another": 1380, - "anova": 24116, - "ans": 24586, - "ans": 885, - "ansari": 40748, - "ansel": 40356, - "answ": 3369, - "answe": 14391, - "answer": 4518, - "answered": 14499, - "answering": 18280, - "answers": 8692, - "ant": 1103, - "ant": 773, - "anta": 3023, - "antag": 41745, - "antal": 39355, - "antalya": 47440, - "antan": 32899, - "antarc": 21338, - "antarctic": 27077, - "antarctica": 22587, - "ante": 19311, - "ante": 9769, - "antebellum": 41683, - "antelope": 39177, - "anten": 35517, - "antenna": 26370, - "anter": 46508, - "antes": 14927, - "antgrasso": 39074, - "anth": 3737, - "anth": 29741, - "antha": 47981, - "anthe": 34167, - "anthem": 12504, - "anthi": 45261, - "anthology": 21009, - "anthony": 17477, - "anthony": 6113, - "anthro": 10019, - "anthropo": 18538, - "anthropology": 32407, - "anthus": 37639, - "anti": 3120, - "anti": 3564, - "antibio": 18954, - "antibiotic": 34387, - "antibiotics": 29499, - "antibody": 49018, - "antic": 8260, - "anticip": 11435, - "anticipate": 38280, - "anticipated": 18605, - "anticipating": 48067, - "anticipation": 26983, - "antics": 37126, - "antidote": 45476, - "antifa": 35926, - "antigua": 39910, - "antine": 17641, - "antino": 27818, - "antioxid": 23010, - "antioxidant": 37452, - "antioxidants": 34208, - "antiqu": 21745, - "antique": 46517, - "antique": 9060, - "antiques": 17365, - "antis": 19748, - "antisemitism": 36630, - "antit": 37833, - "antitrust": 49343, - "antlers": 47720, - "antly": 5265, - "anto": 16826, - "anto": 24486, - "antoine": 25188, - "anton": 5497, - "anton": 19644, - "antoni": 39958, - "antonio": 30497, - "antonio": 7842, - "antony": 30707, - "antrim": 40252, - "ants": 1589, - "antv": 47520, - "antw": 44460, - "antwer": 26970, - "antwerp": 33797, - "antz": 25684, - "anu": 8537, - "anu": 17152, - "anup": 29617, - "anus": 27084, - "anush": 22765, - "anushka": 42080, - "anushka": 39822, - "anushkasharma": 44203, - "anwar": 34261, - "anxi": 9021, - "anxiety": 11103, - "anxious": 27793, - "any": 1307, - "any": 1504, - "anya": 11173, - "anybody": 10071, - "anyi": 41632, - "anymore": 7372, - "anyone": 2302, - "anything": 3582, - "anytime": 13924, - "anyway": 8931, - "anyways": 19778, - "anywhere": 8863, - "anz": 14445, - "anz": 19425, - "anza": 14669, - "anzac": 31977, - "ao": 7313, - "ao": 5703, - "aoa": 47119, - "aoc": 31918, - "aofficial": 30840, - "aoki": 33602, - "aol": 40643, - "aon": 30928, - "aon": 48476, - "aor": 32044, - "aos": 46860, - "ap": 688, - "ap": 2728, - "apa": 36954, - "apa": 13537, - "apac": 34320, - "apache": 23921, - "apal": 38017, - "apan": 36562, - "apar": 9161, - "apark": 32528, - "apart": 6474, - "apart": 7803, - "aparthe": 25121, - "apartheid": 26597, - "apartment": 8285, - "apartments": 15791, - "aparty": 26767, - "apat": 31755, - "apathy": 18145, - "apc": 20300, - "apd": 44563, - "ape": 6098, - "ape": 2609, - "apec": 47530, - "aper": 13681, - "aper": 5858, - "apers": 15846, - "apes": 9550, - "apeu": 19040, - "apex": 41935, - "apex": 23712, - "aph": 16341, - "aph": 29491, - "apha": 47104, - "apho": 21758, - "aphra": 44147, - "api": 23342, - "api": 14674, - "apia": 44259, - "apic": 40679, - "aping": 18456, - "apink": 35725, - "apis": 37575, - "apk": 27648, - "apo": 4089, - "apo": 19758, - "apocaly": 13932, - "apocalypse": 17571, - "apocalyptic": 35675, - "apol": 5023, - "apolice": 45663, - "apolis": 9598, - "apollo": 48213, - "apollo": 11554, - "apolo": 31094, - "apolog": 25530, - "apologe": 42908, - "apologi": 14977, - "apologies": 21959, - "apologise": 39608, - "apologize": 22879, - "apologizes": 35298, - "apology": 20768, - "apor": 21871, - "apore": 6679, - "apost": 20309, - "apostle": 33051, - "apostles": 48457, - "app": 882, - "app": 2231, - "appa": 4884, - "appa": 13110, - "appalach": 30523, - "appalachian": 36806, - "appalling": 44797, - "appar": 26698, - "apparatus": 37716, - "apparel": 13972, - "apparent": 23963, - "apparently": 5287, - "appe": 3748, - "appe": 45949, - "appeal": 9625, - "appealing": 25909, - "appeals": 22447, - "appear": 5544, - "appear": 9308, - "appearance": 7238, - "appearances": 17214, - "appeared": 11561, - "appearing": 18759, - "appears": 8743, - "appell": 43833, - "appen": 37201, - "appen": 26589, - "apper": 18780, - "appet": 21686, - "appeti": 24179, - "appetite": 24481, - "appetizer": 36065, - "applau": 24713, - "applaud": 42152, - "applause": 22650, - "apple": 8629, - "apple": 3055, - "applemusic": 21390, - "apples": 14032, - "appleton": 45250, - "appli": 15495, - "appliance": 33677, - "appliances": 22134, - "applic": 4235, - "applicable": 37927, - "applicants": 28035, - "application": 7241, - "applications": 7341, - "applied": 12636, - "applies": 24910, - "apply": 4356, - "applying": 17965, - "appo": 5433, - "appoint": 36190, - "appointed": 11087, - "appointment": 10890, - "appointments": 23439, - "appoints": 25132, - "apprais": 36972, - "appraisal": 46108, - "appreci": 3474, - "appreciate": 6263, - "appreciated": 9264, - "appreciates": 36573, - "appreciating": 39352, - "appreciation": 9212, - "appreciationday": 37438, - "appreciative": 45074, - "appren": 10582, - "apprentic": 15662, - "apprentice": 19122, - "apprentice": 17985, - "apprentices": 38252, - "apprenticeship": 26939, - "apprenticeships": 35425, - "appro": 2398, - "approach": 7781, - "approach": 6241, - "approached": 36499, - "approaches": 14962, - "approaching": 12164, - "appropri": 8446, - "appropriate": 10768, - "appropriately": 30383, - "appropriation": 49110, - "approval": 13549, - "approve": 19064, - "approved": 9412, - "approves": 18107, - "approx": 18266, - "approxim": 14201, - "approximately": 16128, - "apps": 7020, - "appstore": 31377, - "appt": 48112, - "appy": 34420, - "apr": 39396, - "apr": 11177, - "apra": 37027, - "apric": 25923, - "apricot": 30815, - "april": 23548, - "april": 2484, - "apro": 42712, - "apro": 49051, - "apron": 29502, - "aps": 8868, - "apse": 31843, - "apt": 17921, - "aptly": 47313, - "apu": 22166, - "apur": 36900, - "apur": 45193, - "aq": 14018, - "aq": 26862, - "aqu": 4458, - "aqua": 18613, - "aquaculture": 41885, - "aquaman": 35098, - "aquari": 37605, - "aquarium": 16814, - "aquarius": 38879, - "aquatic": 22658, - "aque": 35927, - "aque": 37268, - "aqui": 36826, - "aquino": 33796, - "ar": 516, - "ar": 625, - "ara": 24161, - "ara": 3340, - "arab": 5405, - "arab": 12028, - "arabia": 11746, - "arabian": 24663, - "arabic": 16709, - "arabs": 39155, - "arac": 47620, - "arach": 37689, - "arag": 41502, - "araj": 45142, - "arak": 23416, - "aram": 19223, - "aram": 21473, - "arama": 49066, - "aran": 20839, - "aran": 19641, - "aras": 36399, - "arat": 30856, - "arav": 35836, - "arbit": 20267, - "arbitr": 22702, - "arbitration": 34845, - "arbor": 33516, - "arbor": 24878, - "arboretum": 41719, - "arc": 4997, - "arc": 11592, - "arca": 25189, - "arca": 37612, - "arcade": 13331, - "arcadia": 38372, - "arch": 2458, - "arch": 8557, - "archa": 45619, - "archae": 10121, - "archaeological": 26163, - "archaeologists": 45035, - "archaeology": 14868, - "archan": 33359, - "archbishop": 23994, - "arche": 22474, - "archer": 21824, - "archers": 38407, - "archery": 23935, - "arches": 30771, - "archi": 4479, - "archie": 20557, - "archipel": 39750, - "archipelago": 43025, - "architec": 3359, - "architect": 12192, - "architects": 13290, - "architectural": 15360, - "architecture": 39038, - "architecture": 4920, - "archival": 39249, - "archive": 42257, - "archive": 10548, - "archived": 42379, - "archives": 9411, - "archy": 15643, - "arctic": 29716, - "arctic": 9138, - "ard": 3793, - "ard": 746, - "arden": 44600, - "arden": 27057, - "ardi": 23932, - "ardi": 19837, - "ardo": 35735, - "ardo": 9394, - "ards": 1654, - "ardu": 20906, - "arduino": 25398, - "are": 1076, - "are": 631, - "area": 2445, - "areas": 5429, - "arec": 18136, - "areclipse": 36030, - "ared": 5369, - "arel": 12798, - "arella": 24784, - "arelli": 48619, - "aren": 4033, - "aren": 4318, - "arena": 5463, - "arenas": 47860, - "arent": 37487, - "arer": 14857, - "arers": 33159, - "ares": 12224, - "arest": 11708, - "aret": 22247, - "areth": 47725, - "aretha": 42090, - "areyou": 37607, - "arez": 13108, - "arg": 27285, - "argent": 7812, - "argentina": 9789, - "argentine": 32582, - "argon": 40737, - "argos": 37443, - "argu": 7440, - "arguably": 30899, - "argue": 19788, - "argued": 48153, - "argues": 30045, - "arguing": 26549, - "argument": 16224, - "arguments": 24693, - "argus": 44300, - "argy": 21066, - "argyle": 36179, - "argyll": 40667, - "ari": 1221, - "ari": 3681, - "aria": 8883, - "arial": 42431, - "arian": 29980, - "arian": 6953, - "ariana": 14892, - "arianag": 23025, - "arianagrande": 23321, - "arianism": 44351, - "arians": 19104, - "arias": 22567, - "arie": 18774, - "ariel": 47959, - "ariel": 21025, - "aries": 5213, - "arif": 46621, - "arily": 12993, - "arin": 29564, - "arin": 18612, - "arina": 29271, - "arine": 29586, - "aring": 2142, - "ario": 8862, - "arios": 25392, - "aris": 15227, - "arise": 26490, - "arist": 12110, - "aristo": 25666, - "aristotle": 49156, - "arities": 31069, - "arity": 16608, - "arium": 11809, - "arius": 21482, - "ariz": 6516, - "arized": 40167, - "arizon": 28936, - "arizona": 7106, - "arjun": 24565, - "arjun": 20477, - "arjuna": 43835, - "ark": 11921, - "ark": 12010, - "arkansas": 12227, - "arkham": 36381, - "arl": 48542, - "arlington": 44940, - "arlington": 17865, - "arly": 3637, - "arm": 5671, - "arm": 4793, - "arma": 15887, - "arma": 38716, - "armad": 37897, - "armada": 34938, - "armagh": 44313, - "armani": 31314, - "armb": 37096, - "armchair": 45757, - "armed": 40471, - "armed": 8202, - "armen": 13145, - "armenia": 22008, - "armenian": 24891, - "armies": 46686, - "armin": 45481, - "arming": 19766, - "armist": 38150, - "armistice": 46765, - "armor": 16167, - "armored": 28214, - "armory": 38610, - "armour": 18503, - "armoured": 42514, - "arms": 5706, - "armstrong": 15005, - "army": 13541, - "army": 3133, - "armys": 27311, - "arn": 9348, - "arn": 37597, - "arnau": 45556, - "arne": 43509, - "arney": 35962, - "arnold": 49096, - "arnold": 13609, - "arns": 46692, - "aro": 7514, - "aro": 11551, - "aroa": 48209, - "arom": 16831, - "aroma": 40143, - "aroma": 26390, - "aromas": 47439, - "aromatherapy": 42584, - "aromatic": 39669, - "aron": 30855, - "aron": 28926, - "aroo": 47581, - "arora": 31897, - "arosa": 44264, - "arose": 44262, - "around": 35615, - "around": 1630, - "arqu": 35654, - "arquitec": 41703, - "arr": 39106, - "arr": 42489, - "arra": 32918, - "arra": 43827, - "arrahman": 44554, - "arran": 45722, - "arrang": 16711, - "arrange": 15410, - "arrange": 26311, - "arranged": 22451, - "arrangement": 23822, - "arrangements": 23792, - "arranging": 35321, - "array": 17293, - "arre": 4374, - "arrell": 28846, - "arrest": 9320, - "arrested": 5845, - "arresting": 43930, - "arrests": 20683, - "arri": 2115, - "arrival": 9073, - "arrivals": 19583, - "arrive": 8851, - "arrived": 3514, - "arrives": 9905, - "arriving": 10884, - "arro": 15729, - "arrog": 26997, - "arrogance": 47025, - "arrogant": 40582, - "arrow": 30920, - "arrow": 11149, - "arrowhead": 46393, - "arrows": 24768, - "arroyo": 45237, - "ars": 42815, - "ars": 864, - "arse": 22665, - "arsen": 5330, - "arsenal": 45234, - "arsenal": 6084, - "arsene": 32117, - "arson": 29937, - "art": 1486, - "art": 794, - "arta": 12031, - "arte": 13482, - "arte": 12947, - "artem": 40387, - "artemis": 45256, - "arten": 37043, - "arter": 29449, - "artery": 40062, - "artes": 48629, - "artforsale": 48239, - "artgallery": 31982, - "arth": 7146, - "arth": 20265, - "arthistory": 39313, - "arthr": 20807, - "arthritis": 22916, - "arthro": 43255, - "arthur": 35660, - "arthur": 8550, - "arti": 1635, - "arti": 34601, - "artic": 3003, - "articho": 30937, - "artichoke": 39647, - "article": 3550, - "articles": 11939, - "articul": 40343, - "articulate": 45444, - "artif": 8950, - "artifact": 37718, - "artifacts": 30249, - "artificial": 19357, - "artificial": 12040, - "artificialintelligence": 20799, - "artillery": 24465, - "artin": 33168, - "artin": 48540, - "artis": 41794, - "artisan": 36389, - "artisan": 21535, - "artisans": 40140, - "artist": 14326, - "artist": 2456, - "artiste": 41402, - "artistic": 12421, - "artiston": 48443, - "artistry": 38570, - "artists": 4899, - "artistson": 32127, - "artistsontwitter": 39469, - "artlovers": 35617, - "arto": 28464, - "artof": 31751, - "artoftheday": 43990, - "arton": 46744, - "arts": 22040, - "arts": 3812, - "artsy": 31588, - "arturo": 38591, - "artwit": 36713, - "artwork": 4188, - "artworks": 26215, - "arty": 45417, - "arty": 25916, - "aru": 13757, - "aru": 23907, - "aruba": 40131, - "arugula": 40770, - "arum": 48732, - "arun": 16105, - "arun": 31877, - "arunach": 47260, - "arunjaitley": 44874, - "arus": 22644, - "arvin": 16971, - "arvind": 21209, - "arvind": 41079, - "arvindkejriwal": 22971, - "arvo": 45726, - "arwx": 29824, - "ary": 4617, - "ary": 856, - "arya": 23594, - "aryan": 34966, - "as": 587, - "as": 601, - "asa": 39676, - "asa": 11914, - "asad": 42376, - "asaki": 22455, - "asam": 40603, - "asan": 22379, - "asan": 17841, - "asana": 42363, - "asant": 25536, - "asants": 37766, - "asap": 24199, - "asap": 10822, - "asar": 24733, - "asar": 49299, - "asb": 31186, - "asbe": 32113, - "asbestos": 33765, - "asc": 22720, - "asc": 23305, - "ascen": 20767, - "ascension": 35499, - "ascent": 36625, - "asci": 12753, - "asco": 25578, - "asco": 17488, - "ascot": 23723, - "ascri": 15506, - "asd": 36988, - "asda": 29391, - "asdf": 36857, - "asdfghj": 42758, - "asdfghjkl": 47660, - "ase": 8083, - "ase": 894, - "asean": 24472, - "aseball": 46903, - "ased": 2134, - "asen": 41085, - "aser": 39615, - "aser": 7209, - "ases": 3762, - "asf": 25863, - "asg": 34813, - "ash": 2067, - "ash": 2612, - "asha": 40572, - "asha": 13472, - "ashamed": 20633, - "ashby": 46531, - "ashe": 48523, - "ashe": 31752, - "asher": 37585, - "ashes": 12587, - "asheville": 28897, - "ashford": 37796, - "ashi": 15563, - "ashi": 15934, - "ashish": 33145, - "ashland": 39938, - "ashleigh": 49356, - "ashley": 17825, - "ashley": 8957, - "asho": 20273, - "ashok": 38141, - "ashore": 31194, - "ashram": 43445, - "ashton": 43264, - "ashton": 12228, - "ashtra": 18118, - "asi": 3596, - "asi": 12562, - "asia": 5741, - "asian": 21737, - "asian": 7128, - "asiangames": 49108, - "asians": 36771, - "asics": 31097, - "aside": 13676, - "asif": 37302, - "asim": 46050, - "asin": 48432, - "asin": 44347, - "asing": 4194, - "asingly": 15803, - "asion": 31753, - "asis": 12398, - "ask": 11027, - "ask": 2765, - "asked": 3993, - "asking": 5914, - "asks": 7953, - "asl": 41650, - "asleep": 10749, - "asley": 28206, - "asli": 44290, - "asm": 13851, - "asma": 38497, - "asmsg": 19839, - "aso": 30343, - "aso": 27932, - "asober": 43749, - "asocial": 48557, - "ason": 1163, - "asone": 31249, - "asons": 4249, - "asos": 37924, - "asot": 47968, - "asp": 17814, - "asp": 36666, - "asparag": 20301, - "asparagus": 20604, - "aspe": 10894, - "aspect": 19681, - "aspects": 18203, - "aspen": 35695, - "aspen": 25712, - "asper": 32991, - "asph": 28019, - "asphalt": 30574, - "aspir": 12669, - "aspirations": 36127, - "aspire": 24836, - "aspiring": 21862, - "asports": 43695, - "asr": 48052, - "asroma": 41000, - "ass": 12664, - "ass": 5301, - "assa": 47715, - "assad": 18699, - "assam": 19930, - "assan": 26352, - "assange": 27565, - "assas": 9603, - "assassin": 14366, - "assassin": 20029, - "assassinated": 40488, - "assassination": 24907, - "assassins": 34918, - "assassinscre": 36428, - "assassinscreed": 46082, - "assau": 7908, - "assaul": 19596, - "assault": 9679, - "assaulted": 30785, - "assaulting": 44143, - "asse": 3166, - "asse": 38600, - "assel": 37582, - "assemb": 5531, - "assemble": 26169, - "assembled": 22627, - "assemblies": 47406, - "assembling": 38670, - "assembly": 34542, - "assembly": 7059, - "assen": 38651, - "asser": 25665, - "asses": 21596, - "assess": 9209, - "assess": 23211, - "assessed": 44160, - "assessing": 31364, - "assessment": 10590, - "assessments": 32753, - "asset": 48463, - "asset": 13039, - "assets": 13170, - "assi": 2907, - "assi": 39540, - "assie": 31624, - "assign": 14190, - "assigned": 25767, - "assignment": 17342, - "assignments": 34257, - "assim": 36394, - "assimil": 43467, - "assist": 26558, - "assist": 10286, - "assistance": 11685, - "assistant": 6799, - "assistants": 31054, - "assisted": 18095, - "assisting": 24243, - "assists": 12675, - "assn": 44208, - "asso": 17617, - "assoc": 18891, - "associ": 3566, - "associate": 11777, - "associated": 11164, - "associates": 17358, - "association": 5578, - "associations": 33209, - "assor": 38604, - "assorted": 36701, - "assortment": 43112, - "asst": 24767, - "assu": 8328, - "assume": 19294, - "assumed": 37661, - "assuming": 29422, - "assump": 41182, - "assumption": 40773, - "assumptions": 45948, - "assurance": 28408, - "assure": 39161, - "assured": 25591, - "assures": 41988, - "assy": 29940, - "assy": 12963, - "ast": 1761, - "ast": 1242, - "asta": 43269, - "aste": 25033, - "aste": 25579, - "aster": 11013, - "aster": 9526, - "asteroid": 32253, - "asters": 33139, - "asth": 16684, - "asthma": 24610, - "asthour": 41238, - "astic": 15876, - "asting": 29984, - "astle": 46141, - "asto": 47275, - "aston": 24760, - "aston": 13879, - "astoni": 21962, - "astonishing": 27110, - "astonmartin": 40760, - "astor": 26391, - "astor": 47086, - "astoria": 34798, - "astounding": 37748, - "astr": 37609, - "astra": 47205, - "astra": 36079, - "astral": 45889, - "astri": 31243, - "astrid": 46499, - "astro": 8563, - "astro": 15318, - "astrology": 28526, - "astron": 7982, - "astronaut": 18376, - "astronauts": 29733, - "astronom": 23264, - "astronomer": 40036, - "astronomers": 44268, - "astronomical": 39775, - "astronomy": 17472, - "astrophotography": 38559, - "astros": 17598, - "asts": 10452, - "astu": 43137, - "astur": 45795, - "asu": 13157, - "asu": 16001, - "asun": 36044, - "asure": 3813, - "asus": 27269, - "aswell": 42978, - "asx": 38906, - "asy": 8524, - "asy": 2333, - "asylum": 15638, - "asym": 32539, - "at": 527, - "at": 536, - "ata": 4236, - "atable": 23909, - "atal": 24877, - "atal": 24797, - "atan": 33446, - "atar": 20128, - "atar": 7995, - "atari": 21549, - "atas": 30057, - "atay": 39518, - "atc": 28383, - "atch": 15938, - "atd": 33890, - "ate": 992, - "ate": 671, - "ateam": 42784, - "ateau": 16359, - "atec": 37352, - "atech": 31306, - "ated": 14589, - "ated": 943, - "atedly": 24698, - "atee": 32839, - "ateful": 5419, - "atelier": 29932, - "ately": 3862, - "atem": 17116, - "aten": 47984, - "atene": 30405, - "ateneo": 33904, - "ater": 18597, - "ater": 5877, - "ateral": 18819, - "aters": 22364, - "ates": 20370, - "ates": 1150, - "atest": 1705, - "ateur": 43677, - "atf": 28013, - "ath": 1374, - "ath": 1649, - "atha": 22530, - "atham": 23383, - "athan": 41260, - "athan": 26701, - "athe": 8963, - "athed": 47402, - "atheism": 25823, - "atheist": 22571, - "atheists": 47155, - "athen": 29112, - "athena": 30705, - "athens": 13524, - "ather": 6171, - "ather": 1817, - "athered": 34091, - "athers": 17266, - "athi": 28918, - "athing": 36069, - "athle": 3310, - "athlete": 7388, - "athletes": 7125, - "athletic": 33182, - "athletic": 9028, - "athletics": 7019, - "athlon": 14670, - "athome": 38217, - "athon": 4951, - "aths": 28835, - "athy": 34488, - "athy": 13183, - "ati": 591, - "ati": 6751, - "atia": 10908, - "atic": 20248, - "atic": 2647, - "atically": 13558, - "atics": 15666, - "atie": 30137, - "aties": 40060, - "atif": 41592, - "atiku": 37912, - "atile": 15474, - "atility": 23373, - "atime": 20158, - "atin": 36903, - "atin": 23047, - "atine": 39741, - "ating": 25653, - "ating": 1074, - "atio": 35401, - "ation": 2265, - "ation": 656, - "ational": 14205, - "ational": 3108, - "ationals": 44593, - "ationday": 20082, - "ations": 986, - "atis": 45456, - "atis": 41142, - "atism": 45638, - "ative": 18422, - "ative": 1648, - "atively": 11929, - "atives": 5629, - "ativity": 25166, - "atkins": 27734, - "atkinson": 28908, - "atl": 5411, - "atl": 10629, - "atla": 36043, - "atlan": 6818, - "atlanta": 39964, - "atlanta": 6839, - "atlantic": 28804, - "atlantic": 8189, - "atlantis": 27790, - "atlas": 15775, - "atle": 21170, - "atleast": 33231, - "atleti": 46067, - "atletico": 27501, - "atm": 14127, - "atmo": 8271, - "atmosphere": 10506, - "atmospheric": 24223, - "ato": 7987, - "ato": 4364, - "atoday": 26799, - "atom": 22418, - "atom": 24031, - "atomic": 18996, - "atoms": 41434, - "aton": 31525, - "aton": 10012, - "atop": 17455, - "ator": 10748, - "ator": 1962, - "atore": 28314, - "atorial": 32040, - "atories": 35678, - "atorium": 41306, - "ators": 3389, - "atory": 5920, - "atos": 41643, - "atour": 42967, - "atown": 24000, - "atp": 38105, - "atp": 19817, - "atr": 43247, - "atra": 20227, - "atra": 14401, - "atravel": 36981, - "atre": 46057, - "atri": 13882, - "atri": 38889, - "atric": 32238, - "atric": 13652, - "atrics": 36253, - "atrist": 41879, - "atrium": 29725, - "atrix": 43003, - "atro": 18724, - "atroc": 36197, - "atrocities": 37551, - "atry": 28334, - "ats": 46890, - "ats": 1032, - "atsu": 26531, - "att": 1017, - "att": 7103, - "atta": 7282, - "atta": 9146, - "attach": 43676, - "attach": 35653, - "attached": 11038, - "attachment": 28638, - "attack": 24971, - "attack": 3815, - "attacked": 12366, - "attacker": 39288, - "attackers": 47701, - "attacking": 16813, - "attacks": 7321, - "attain": 46459, - "attar": 37110, - "attemp": 4933, - "attempt": 7409, - "attempted": 17408, - "attempting": 18195, - "attempts": 15610, - "atten": 4084, - "atten": 32408, - "attenborough": 45860, - "attend": 9841, - "attend": 5802, - "attendance": 11928, - "attendant": 35424, - "attended": 8140, - "attendees": 14648, - "attending": 6696, - "attends": 22248, - "attention": 4936, - "atters": 30675, - "atthe": 21489, - "atti": 49265, - "atti": 16235, - "attic": 26766, - "attire": 21222, - "attitude": 10648, - "attitudes": 27611, - "attle": 14685, - "attle": 5030, - "attn": 25677, - "attor": 8856, - "attorney": 10372, - "attorneys": 29113, - "attrac": 7154, - "attract": 17010, - "attracted": 28493, - "attracting": 31909, - "attraction": 16807, - "attractions": 22307, - "attractive": 12231, - "attracts": 31024, - "attribu": 24624, - "attributed": 37520, - "attributes": 40763, - "attu": 43173, - "atty": 36705, - "atu": 15191, - "atu": 24295, - "atuesday": 34841, - "atul": 1744, - "atul": 43948, - "atum": 48295, - "atur": 14986, - "aturday": 29027, - "ature": 25305, - "ature": 4490, - "atures": 7358, - "atus": 14795, - "atv": 19598, - "atwood": 45680, - "atwork": 39680, - "atx": 34849, - "atx": 20136, - "aty": 40974, - "aty": 33107, - "atz": 30432, - "au": 627, - "au": 2566, - "aua": 45906, - "aub": 45938, - "auberg": 49382, - "aubre": 25899, - "aubrey": 34110, - "auburn": 42269, - "auburn": 14534, - "auc": 24489, - "auch": 43024, - "auck": 14588, - "auckland": 16072, - "auction": 48160, - "auction": 6462, - "auctioned": 41073, - "auctions": 24876, - "aucus": 47374, - "aud": 16107, - "aud": 19711, - "audi": 5091, - "audi": 10277, - "audible": 33227, - "audience": 6863, - "audiences": 22328, - "audio": 13792, - "audio": 5766, - "audiobook": 26282, - "audit": 12505, - "audit": 17625, - "auditi": 37377, - "audition": 18673, - "auditions": 21134, - "auditor": 38050, - "auditorium": 15063, - "audre": 16075, - "audrey": 18812, - "audu": 27934, - "audubon": 40275, - "auer": 33460, - "auf": 28924, - "aug": 15397, - "aug": 5720, - "auga": 22797, - "augh": 28310, - "augh": 14005, - "augmente": 48356, - "augmented": 32708, - "augu": 2610, - "august": 24353, - "august": 3171, - "augusta": 26144, - "augustine": 27397, - "augustus": 36835, - "auk": 19058, - "aul": 20695, - "aul": 34391, - "ault": 47253, - "ault": 10219, - "aun": 10608, - "aun": 38721, - "aunt": 12685, - "auntie": 23783, - "aunty": 29528, - "aur": 8156, - "aur": 17282, - "aura": 27728, - "aure": 36010, - "aureli": 35980, - "auror": 30067, - "aurora": 13500, - "aus": 10624, - "aus": 7630, - "ausa": 37384, - "ausbiz": 46543, - "ausch": 33926, - "auschwitz": 36523, - "ausopen": 27831, - "ausp": 35039, - "auspicious": 38806, - "auspol": 8241, - "aussi": 19762, - "aussie": 40230, - "aussie": 14424, - "aussies": 35727, - "aust": 26301, - "aust": 25418, - "austen": 29885, - "auster": 25030, - "austerity": 26982, - "austin": 12845, - "austin": 5125, - "austinmahone": 34678, - "austr": 2518, - "australi": 13798, - "australia": 3444, - "australian": 23630, - "australian": 6258, - "australians": 31488, - "austri": 8946, - "austria": 11960, - "austrian": 20638, - "ausv": 35206, - "ausvotes": 34661, - "aut": 12343, - "auth": 2381, - "auth": 38247, - "authent": 18158, - "authentic": 41266, - "authentic": 10369, - "authentication": 39746, - "authenticity": 35734, - "autho": 34552, - "author": 14447, - "author": 4358, - "authored": 37928, - "authori": 19207, - "authorities": 12729, - "authority": 10524, - "authorization": 48854, - "authorized": 28463, - "authors": 10765, - "auti": 8200, - "autism": 36256, - "autism": 11244, - "autisma": 43324, - "autistic": 29360, - "auto": 3917, - "auto": 5668, - "autobiography": 31509, - "autodesk": 40415, - "autograph": 10657, - "autograph": 13722, - "autographed": 16309, - "autographs": 17376, - "autoimmune": 45509, - "autom": 4114, - "automate": 43203, - "automated": 19022, - "automatic": 12126, - "automatically": 20725, - "automation": 12328, - "automobi": 44813, - "automobile": 25258, - "automotive": 12607, - "auton": 13100, - "autonews": 43975, - "autonom": 17870, - "autonomous": 20722, - "autonomy": 39223, - "autopsy": 44436, - "autos": 31118, - "autoshow": 46788, - "auts": 21140, - "autu": 5445, - "autum": 31783, - "autumn": 28940, - "autumn": 6110, - "autumnal": 35481, - "aux": 18154, - "aux": 8909, - "auxiliary": 37778, - "av": 722, - "av": 8484, - "ava": 12385, - "avage": 31505, - "avail": 1651, - "avail": 16686, - "availability": 17551, - "available": 1685, - "aval": 18012, - "avalan": 23970, - "avalanche": 25815, - "avalley": 45082, - "avalon": 30436, - "avan": 27971, - "avan": 33351, - "avant": 24305, - "avar": 33423, - "avatar": 18219, - "ave": 10062, - "ave": 4860, - "avec": 25828, - "aved": 47918, - "avel": 46817, - "avel": 48088, - "aven": 5963, - "aven": 32971, - "aveng": 21935, - "avenger": 24799, - "avengers": 39413, - "avengers": 12016, - "avengersendgame": 49342, - "avent": 22700, - "avenue": 7042, - "aver": 8788, - "aver": 11403, - "average": 6254, - "averaged": 37310, - "averages": 48982, - "averaging": 35266, - "avery": 20313, - "aves": 14023, - "avfc": 21304, - "avg": 19452, - "avgeek": 11114, - "avi": 3324, - "avi": 11297, - "avia": 38710, - "avian": 24115, - "aviation": 27717, - "aviation": 7617, - "aviator": 38921, - "aviators": 48011, - "avici": 46192, - "avicii": 49158, - "avid": 19118, - "avier": 14598, - "avila": 45339, - "aville": 40689, - "avin": 46204, - "avis": 45163, - "avis": 19765, - "aviv": 22130, - "aviva": 47122, - "aviz": 27607, - "avl": 44749, - "avo": 4496, - "avo": 32400, - "avoc": 12291, - "avocado": 14135, - "avocados": 48911, - "avoi": 16797, - "avoid": 30448, - "avoid": 5983, - "avoidance": 47983, - "avoided": 32103, - "avoiding": 22086, - "avoids": 48220, - "avon": 22790, - "avon": 17348, - "avril": 37763, - "avs": 31896, - "avut": 44472, - "avy": 29973, - "aw": 808, - "aw": 5557, - "awa": 4820, - "awa": 6872, - "await": 20769, - "awaited": 20092, - "awaiting": 14872, - "awaits": 15635, - "awak": 9776, - "awak": 41387, - "awake": 14695, - "awaken": 35412, - "awakening": 17017, - "awakens": 23191, - "awal": 42447, - "awal": 35090, - "awan": 48869, - "awan": 20420, - "awar": 5745, - "award": 36310, - "award": 2047, - "awarded": 7368, - "awarding": 37089, - "awards": 34528, - "awards": 2320, - "aware": 4427, - "aware": 7196, - "awareness": 19217, - "awareness": 4823, - "awarenessmonth": 34278, - "awarenessweek": 35294, - "away": 21088, - "away": 1520, - "aways": 12782, - "awaz": 18586, - "awd": 34846, - "awe": 1693, - "awe": 14106, - "aweather": 42142, - "aweather": 28681, - "awec": 38916, - "aweed": 29724, - "awesom": 16727, - "awesome": 30390, - "awesome": 1848, - "awesomeness": 22430, - "awful": 13617, - "awg": 46350, - "awgs": 35275, - "awh": 39566, - "awhile": 19171, - "awi": 15167, - "awil": 47271, - "awilliams": 42163, - "awk": 8888, - "awk": 40943, - "awkward": 42337, - "awkward": 10304, - "awn": 46222, - "awp": 43300, - "aws": 19658, - "awsome": 47196, - "awson": 36286, - "aww": 11568, - "awww": 15634, - "awwww": 26460, - "awx": 28385, - "ax": 3165, - "ax": 9203, - "axe": 19861, - "axel": 47889, - "axel": 32131, - "axes": 45970, - "axi": 30672, - "axial": 46550, - "axis": 19614, - "axle": 39003, - "axx": 47411, - "ay": 658, - "ay": 551, - "aya": 5917, - "ayala": 39827, - "ayama": 41194, - "ayan": 37781, - "ayan": 16269, - "ayana": 37400, - "ayas": 40904, - "ayat": 44902, - "ayat": 35720, - "aye": 21661, - "aye": 12446, - "ayer": 24852, - "ayers": 42783, - "ayesha": 46570, - "ayi": 33025, - "ayles": 44706, - "ayne": 35669, - "ayo": 21929, - "ayo": 18708, - "ayr": 23002, - "ayr": 36473, - "ayrshire": 32687, - "ays": 785, - "ayu": 40769, - "ayurve": 27185, - "ayurveda": 38986, - "ayush": 44831, - "ayy": 32514, - "ayyy": 41052, - "az": 854, - "az": 5468, - "aza": 22883, - "azad": 37838, - "azalea": 34087, - "azam": 34727, - "azar": 27911, - "azcardinals": 48846, - "aze": 41157, - "aze": 28485, - "azer": 19169, - "azerbai": 20649, - "azerbaijan": 23888, - "azhar": 47019, - "azi": 23914, - "azi": 18452, - "azine": 29140, - "azione": 48335, - "aziz": 41205, - "aziz": 29630, - "azo": 41227, - "azon": 36854, - "azores": 42826, - "azte": 33270, - "aztec": 34749, - "aztecs": 49387, - "azu": 27701, - "azu": 46963, - "azul": 39807, - "azure": 18514, - "azwx": 30262, - "azy": 24783, - "azz": 9817, - "azz": 26453, - "azza": 22255, - "azzi": 18758, - "azzle": 39974, - "azzo": 26779, - "azzur": 37055, - "azzy": 44534, - "añ": 23716, - "años": 41634, - "b": 65, - "b": 321, - "ba": 932, - "ba": 1792, - "baa": 33004, - "baahu": 34145, - "baahubali": 38663, - "bab": 1202, - "bab": 19039, - "baba": 12631, - "babe": 31177, - "babe": 7716, - "babes": 14253, - "babies": 6635, - "babs": 36217, - "babu": 21623, - "baby": 7268, - "baby": 1794, - "babygirl": 39554, - "babylon": 31928, - "babymetal": 45013, - "babys": 22266, - "babysitting": 34186, - "bac": 2791, - "bac": 25867, - "bacca": 40708, - "bach": 11773, - "bach": 8758, - "bachchan": 17690, - "bachel": 11283, - "bachelor": 45508, - "bachelor": 16766, - "bachelore": 26009, - "bachelorette": 29093, - "bacher": 49211, - "back": 1663, - "back": 893, - "backbone": 35635, - "backdrop": 20802, - "backed": 12721, - "backer": 22183, - "backers": 32934, - "background": 5994, - "backgrounds": 28215, - "backing": 14935, - "backlash": 31519, - "backpack": 14894, - "backpacking": 29524, - "backpacks": 37063, - "backs": 7562, - "backseat": 48812, - "backstage": 9236, - "backstreet": 46337, - "backthe": 26127, - "backto": 18703, - "backtoschool": 28730, - "backtothe": 43059, - "backup": 14415, - "backward": 37964, - "backwards": 21283, - "backyard": 12608, - "bacon": 48666, - "bacon": 7104, - "bacter": 11814, - "bacteria": 16556, - "bacterial": 26101, - "bad": 2564, - "bad": 2103, - "bada": 37475, - "badan": 39149, - "badass": 11616, - "baddest": 38112, - "baden": 36690, - "bader": 42254, - "badge": 11301, - "badger": 32686, - "badger": 22363, - "badgers": 22521, - "badges": 20084, - "badlands": 43192, - "badly": 13684, - "badminton": 21412, - "badoo": 33192, - "bados": 25755, - "bae": 32834, - "bae": 6855, - "baek": 18557, - "baek": 32702, - "baekhyun": 21572, - "baes": 46332, - "baf": 13616, - "baff": 35693, - "bafta": 29199, - "bag": 3408, - "bag": 3365, - "bage": 9698, - "bagel": 28777, - "bagels": 37489, - "baggage": 31402, - "bagged": 34047, - "bagh": 21659, - "bagh": 37271, - "baghdad": 30763, - "bago": 25105, - "bags": 6136, - "bagu": 27749, - "baguette": 45334, - "bah": 8372, - "bah": 16685, - "baha": 29592, - "baham": 43718, - "bahamas": 21224, - "bahan": 28704, - "bahn": 33452, - "bahrain": 12503, - "bai": 6232, - "bai": 23339, - "bail": 22933, - "bail": 16986, - "bailey": 27535, - "bailey": 10180, - "bain": 40784, - "bain": 21593, - "bair": 29059, - "baird": 40474, - "bait": 18010, - "baj": 20713, - "baja": 40418, - "baja": 28374, - "bajo": 32619, - "bak": 4059, - "bak": 23742, - "bakar": 41414, - "bake": 20736, - "bake": 11878, - "baked": 10364, - "baker": 27303, - "baker": 7743, - "bakers": 35293, - "bakers": 40231, - "bakersfield": 40149, - "bakery": 13377, - "bakes": 43057, - "bakhta": 44912, - "bakhtawar": 46937, - "bakhtawarbz": 47118, - "baking": 11467, - "baku": 46417, - "baku": 31852, - "bal": 1398, - "bal": 2282, - "bala": 20291, - "balaji": 48694, - "balance": 42894, - "balance": 6827, - "balanced": 15273, - "balances": 37733, - "balancing": 23541, - "balboa": 45098, - "balcony": 16169, - "bald": 11153, - "bald": 14875, - "baldhead": 29191, - "baldwin": 16242, - "bale": 48573, - "bale": 18873, - "bales": 42879, - "bali": 16432, - "bali": 10900, - "balkan": 48499, - "balkans": 42987, - "ball": 3807, - "ball": 1069, - "balla": 42246, - "ballad": 33472, - "ballarat": 46645, - "ballard": 31750, - "baller": 49194, - "baller": 25655, - "ballerina": 34962, - "ballers": 34173, - "ballet": 10703, - "balli": 29406, - "ballin": 47444, - "ballin": 33057, - "balling": 47588, - "ballis": 46675, - "ballistic": 36667, - "ballo": 8871, - "ballon": 36469, - "balloon": 13634, - "balloons": 18130, - "ballot": 14185, - "ballots": 35051, - "ballpark": 26080, - "ballroom": 15493, - "balls": 6927, - "bally": 17275, - "bally": 29451, - "balm": 24962, - "balmain": 45929, - "balo": 12395, - "baloch": 23173, - "balochistan": 21918, - "balot": 44615, - "balotelli": 45721, - "bals": 44154, - "balsam": 29121, - "balsamic": 32654, - "balt": 24441, - "balti": 8400, - "baltic": 23817, - "baltimore": 38502, - "baltimore": 9582, - "balu": 38093, - "bam": 6383, - "bam": 12686, - "bama": 20021, - "bambam": 34538, - "bambi": 46596, - "bamboo": 49322, - "bamboo": 16748, - "ban": 1159, - "ban": 2777, - "bana": 18428, - "banan": 38410, - "banana": 8922, - "bananas": 19121, - "banc": 39252, - "band": 4613, - "band": 1963, - "banda": 31865, - "bandai": 42054, - "bandana": 39265, - "bandcamp": 32229, - "banded": 37804, - "bandic": 44400, - "bandit": 27639, - "bandits": 33940, - "bandra": 41393, - "bands": 7858, - "bandung": 29512, - "bandwagon": 36432, - "bandwidth": 48859, - "bane": 9597, - "banerjee": 48102, - "banff": 29565, - "bang": 3524, - "bang": 6907, - "bangalore": 14697, - "banger": 24872, - "bangers": 38311, - "banging": 33033, - "bangkok": 12351, - "bangla": 10339, - "bangla": 45928, - "bangladesh": 11245, - "bangle": 37634, - "bangor": 31190, - "bangs": 27992, - "bangtan": 39131, - "bani": 19732, - "banjo": 27014, - "bank": 7061, - "bank": 2723, - "banker": 27316, - "bankers": 30599, - "bankholiday": 48868, - "banking": 9566, - "bankno": 49201, - "bankof": 39120, - "bankrup": 21904, - "bankrupt": 23077, - "bankrupt": 37288, - "bankruptcy": 23978, - "banks": 6367, - "banksy": 33350, - "bann": 5304, - "banned": 12012, - "banner": 9185, - "banners": 23145, - "banning": 26246, - "bannon": 29710, - "bano": 42947, - "banquet": 14254, - "bans": 15146, - "bant": 23301, - "bant": 46657, - "banter": 25535, - "bao": 39487, - "bao": 20408, - "bap": 7415, - "bap": 23754, - "bapti": 15477, - "baptism": 36765, - "baptist": 13274, - "baptiste": 45770, - "baptized": 45400, - "bar": 1040, - "bar": 2411, - "bara": 19345, - "barack": 18670, - "barack": 22481, - "barackobama": 18885, - "barak": 47419, - "barak": 16260, - "barang": 38446, - "barb": 24173, - "barb": 20913, - "barbados": 26992, - "barbar": 7906, - "barbara": 10937, - "barbarian": 42530, - "barbe": 18372, - "barbecue": 23501, - "barber": 19517, - "barber": 12296, - "barbershop": 37707, - "barbican": 47668, - "barbie": 16923, - "barca": 22942, - "barcel": 6134, - "barcelon": 47820, - "barcelona": 6412, - "barclay": 48877, - "barclay": 45276, - "barclays": 29538, - "bard": 39812, - "bard": 17514, - "bare": 16023, - "bare": 14318, - "barefoot": 30327, - "barely": 12684, - "bargain": 15076, - "bargaining": 41282, - "bargains": 34126, - "barge": 28272, - "bari": 21428, - "bari": 28016, - "barista": 31078, - "barit": 46300, - "bark": 32333, - "bark": 16560, - "barker": 20618, - "barking": 32676, - "barkley": 30266, - "barley": 22607, - "barlow": 25483, - "barn": 10490, - "barn": 10942, - "barnab": 43272, - "barnard": 44332, - "barne": 42527, - "barnes": 13102, - "barnet": 41943, - "barnett": 27650, - "barney": 24563, - "barns": 43759, - "barnsley": 37109, - "barnsley": 32153, - "baro": 17422, - "baro": 30817, - "baron": 48371, - "baron": 19349, - "baroness": 45056, - "barons": 45596, - "baroque": 25065, - "barr": 39473, - "barr": 22492, - "barra": 28442, - "barra": 33542, - "barrabest": 41376, - "barrac": 40835, - "barracks": 35822, - "barre": 13840, - "barre": 38257, - "barred": 33261, - "barrel": 11703, - "barrels": 22059, - "barren": 46743, - "barrett": 18701, - "barri": 8660, - "barric": 29189, - "barrie": 27090, - "barrier": 15706, - "barriers": 16321, - "barrington": 48954, - "barron": 34881, - "barrow": 42568, - "barrow": 24983, - "barry": 18028, - "barry": 8461, - "barrymore": 49310, - "bars": 8616, - "barstool": 44826, - "bart": 14838, - "bart": 12870, - "bartender": 33498, - "barthol": 48989, - "bartlett": 37130, - "bartol": 38209, - "barton": 48853, - "barton": 20345, - "baru": 16356, - "barun": 38278, - "barunsob": 41398, - "barça": 32788, - "bas": 1244, - "bas": 11420, - "basa": 26142, - "base": 2776, - "base": 4579, - "baseball": 23479, - "baseball": 3470, - "based": 35196, - "based": 2812, - "basel": 42803, - "basel": 20903, - "baseline": 40648, - "baseman": 45910, - "basement": 14792, - "bases": 20496, - "bash": 20462, - "bash": 10972, - "bashing": 37545, - "bashir": 42799, - "basic": 40452, - "basic": 7696, - "basically": 9125, - "basics": 15825, - "basil": 19225, - "basil": 14936, - "basilica": 27879, - "basin": 16117, - "basing": 47321, - "basis": 12278, - "baske": 3713, - "basket": 10338, - "basketball": 40023, - "basketball": 3835, - "baskets": 27787, - "basking": 39769, - "basque": 37175, - "bass": 22831, - "bass": 5992, - "bassett": 45992, - "bassist": 26496, - "bast": 28092, - "basti": 8559, - "bastille": 41874, - "bat": 2121, - "bat": 6575, - "bata": 39277, - "batb": 33962, - "batch": 9413, - "bate": 25034, - "bate": 28277, - "bateman": 41635, - "bates": 21727, - "batgirl": 46460, - "bath": 6064, - "bath": 5713, - "bathing": 20144, - "bathro": 21201, - "bathroom": 8470, - "bathrooms": 26434, - "baths": 19442, - "bathtub": 39942, - "bathurst": 36365, - "bati": 23362, - "bati": 37589, - "batman": 27811, - "batman": 7223, - "baton": 24331, - "bats": 14984, - "batsman": 35432, - "batt": 2407, - "batt": 48595, - "battalion": 20820, - "batter": 12654, - "batter": 31855, - "battered": 34375, - "batteries": 16666, - "battersea": 35839, - "battery": 7870, - "batting": 17401, - "battle": 7344, - "battle": 3528, - "battled": 37837, - "battlefield": 16055, - "battlefront": 42214, - "battleof": 47560, - "battles": 14213, - "battleship": 35165, - "battling": 17268, - "bau": 6055, - "bau": 34840, - "bauer": 22903, - "baugh": 41301, - "baum": 19840, - "bautista": 31881, - "bav": 21075, - "bavaria": 39977, - "bavarian": 44458, - "baw": 19808, - "bax": 21216, - "baxter": 26168, - "bay": 3631, - "bay": 2174, - "baya": 31573, - "bayan": 43895, - "bayarea": 28260, - "bayer": 48548, - "bayer": 29183, - "bayern": 14666, - "baylor": 21721, - "bayou": 33955, - "bays": 40156, - "baz": 10430, - "baz": 25268, - "bazaar": 20070, - "bazar": 49298, - "bb": 1174, - "bb": 3529, - "bba": 27762, - "bball": 15664, - "bbb": 33535, - "bbc": 5123, - "bbc": 5188, - "bbcc": 39052, - "bbce": 33818, - "bbcnews": 29370, - "bbcone": 28259, - "bbcqt": 37343, - "bbcr": 35802, - "bbcra": 17115, - "bbcradi": 49213, - "bbcradio": 22876, - "bbcsport": 49321, - "bbcspringwatch": 37358, - "bbctwo": 40395, - "bbcworld": 47340, - "bbe": 37559, - "bbed": 9077, - "bber": 7933, - "bbers": 36494, - "bbhutto": 28085, - "bbhuttozardari": 28135, - "bbi": 37047, - "bbin": 38553, - "bbing": 9787, - "bbins": 42504, - "bbl": 21961, - "bble": 26570, - "bble": 5924, - "bbled": 37626, - "bbles": 18093, - "bblo": 21231, - "bbloggers": 26614, - "bbly": 43031, - "bbm": 25382, - "bbmas": 22145, - "bbn": 28427, - "bbnaija": 20984, - "bbo": 21892, - "bbq": 41270, - "bbq": 6726, - "bbs": 10002, - "bbuk": 45978, - "bby": 11166, - "bby": 3810, - "bc": 3116, - "bc": 2162, - "bcc": 41509, - "bcci": 36138, - "bce": 36510, - "bcfc": 34359, - "bch": 36684, - "bcn": 25766, - "bcoz": 46373, - "bcpoli": 24389, - "bcs": 24909, - "bcu": 28299, - "bd": 24358, - "bd": 11165, - "bday": 33022, - "bday": 5781, - "bdg": 48418, - "bds": 26732, - "be": 571, - "be": 655, - "bea": 21886, - "bea": 20925, - "beach": 6068, - "beach": 2117, - "beaches": 12183, - "beachlife": 43824, - "beacon": 36883, - "beacon": 18858, - "beacons": 39395, - "bead": 31621, - "bead": 23557, - "beaded": 26661, - "beads": 14099, - "beagle": 30044, - "beak": 36498, - "beal": 45769, - "beale": 39717, - "beam": 35339, - "beam": 13663, - "beams": 23993, - "bean": 16471, - "bean": 5328, - "beanie": 21534, - "beans": 8302, - "bear": 6375, - "bear": 4298, - "bearable": 38608, - "bearcats": 33242, - "beard": 26157, - "beard": 9052, - "bearded": 28459, - "beardown": 43687, - "beards": 33020, - "bearer": 30686, - "bearers": 47986, - "bearing": 18370, - "bearings": 42083, - "bearish": 34829, - "bears": 6182, - "beasley": 43349, - "beast": 20847, - "beast": 6957, - "beastmode": 43076, - "beasts": 21771, - "beat": 3774, - "beat": 3018, - "beaten": 10864, - "beater": 41974, - "beati": 44386, - "beating": 10078, - "beatles": 11961, - "beatport": 31421, - "beatrice": 36922, - "beats": 6289, - "beatthe": 40550, - "beatty": 39903, - "beatz": 33363, - "beau": 1016, - "beau": 14298, - "beaufort": 45423, - "beaumont": 32857, - "beaut": 24559, - "beauti": 1154, - "beauties": 14874, - "beautiful": 13662, - "beautiful": 1215, - "beautifully": 10627, - "beauty": 12881, - "beauty": 2488, - "beav": 23260, - "beaver": 26432, - "beaver": 22874, - "beavers": 34513, - "beavs": 43909, - "bebe": 23331, - "bec": 6899, - "bec": 10773, - "became": 5464, - "because": 32714, - "because": 1631, - "becca": 27088, - "bech": 44055, - "beck": 8256, - "beck": 10396, - "becker": 26918, - "beckett": 27249, - "beckham": 18764, - "becky": 32406, - "becky": 18921, - "become": 2989, - "becomes": 6766, - "becoming": 6208, - "bed": 4152, - "bed": 2722, - "bedding": 31761, - "bedford": 20779, - "bedi": 39181, - "bedro": 18415, - "bedroom": 8411, - "bedrooms": 23996, - "beds": 13914, - "bedside": 47473, - "bedtime": 22115, - "bee": 6097, - "bee": 5028, - "beech": 32733, - "beech": 27596, - "beef": 21703, - "beef": 6529, - "beek": 37915, - "been": 33986, - "been": 1025, - "beep": 33432, - "beer": 8885, - "beer": 2544, - "beers": 10907, - "bees": 36249, - "bees": 9100, - "beet": 12582, - "beet": 28621, - "beethoven": 23656, - "beetle": 16534, - "beetles": 36317, - "beetro": 29251, - "beetroot": 31638, - "beets": 36087, - "before": 20898, - "before": 1348, - "beg": 2219, - "beg": 22401, - "began": 8636, - "begg": 36769, - "begging": 25371, - "begin": 19197, - "begin": 4947, - "beginner": 24351, - "beginners": 21930, - "beginning": 5791, - "beginnings": 22581, - "begins": 4635, - "begs": 43531, - "begun": 10514, - "beh": 21971, - "beh": 41612, - "beha": 5737, - "behalf": 11470, - "behave": 28825, - "behaved": 41617, - "behavi": 6149, - "behaving": 40745, - "behavior": 10461, - "behavioral": 25135, - "behaviors": 37741, - "behaviour": 14655, - "behavioural": 46019, - "behe": 42329, - "behin": 2335, - "behind": 2403, - "behindthe": 21104, - "behindthescenes": 26253, - "behold": 15929, - "bei": 38991, - "bei": 23227, - "beige": 26677, - "beij": 11547, - "beijing": 11796, - "bein": 39117, - "bein": 24168, - "being": 13481, - "being": 1265, - "beings": 17998, - "beingsalmankhan": 19637, - "beir": 20176, - "beirut": 22352, - "beit": 26963, - "bek": 46846, - "bek": 26135, - "bekind": 46691, - "bel": 1308, - "bel": 3543, - "bela": 30555, - "belarus": 30849, - "belated": 20256, - "belfast": 35100, - "belfast": 10015, - "belgi": 7001, - "belgian": 15008, - "belgium": 10239, - "belgrade": 30502, - "beli": 1859, - "beli": 45842, - "belichick": 46132, - "belie": 20854, - "beliebers": 27714, - "belief": 14802, - "beliefs": 20575, - "believ": 4972, - "believe": 15819, - "believe": 2649, - "believed": 13380, - "believein": 24294, - "believeinfilm": 37375, - "believer": 26057, - "believers": 28434, - "believes": 12017, - "believing": 19551, - "belinda": 44415, - "belize": 27990, - "bell": 5417, - "bell": 3718, - "bella": 18282, - "bella": 10418, - "bellamy": 34461, - "bellator": 31985, - "belle": 13587, - "belle": 11496, - "belles": 40678, - "bellevue": 32715, - "belli": 43335, - "bellletstalk": 42695, - "bello": 21954, - "bells": 12811, - "bellum": 35493, - "belly": 25901, - "belly": 10404, - "belmont": 25612, - "belo": 8379, - "belo": 41649, - "belong": 16453, - "belong": 13596, - "belonged": 39893, - "belonging": 28193, - "belongs": 14395, - "beloved": 9363, - "below": 3788, - "bels": 43127, - "belt": 36416, - "belt": 7373, - "belts": 21888, - "belvedere": 48003, - "ben": 1465, - "ben": 3518, - "bena": 46249, - "bench": 17770, - "bench": 8771, - "benches": 36349, - "benchmark": 31775, - "bend": 22100, - "bend": 13332, - "bender": 22551, - "bendigo": 48197, - "bending": 33897, - "bene": 12091, - "bene": 47151, - "beneath": 16850, - "bened": 13216, - "benedic": 24402, - "benedict": 47896, - "benedict": 18027, - "benef": 3260, - "benefici": 38593, - "beneficial": 24660, - "beneficiaries": 42160, - "benefit": 6399, - "benefited": 48266, - "benefiting": 29474, - "benefits": 5465, - "benefitting": 47222, - "benevol": 47060, - "benfica": 33873, - "beng": 6962, - "bengal": 17404, - "bengal": 16374, - "bengali": 33774, - "bengals": 23737, - "bengaluru": 21707, - "benghazi": 25967, - "benin": 40296, - "benitez": 46711, - "benjam": 10550, - "benjamin": 38647, - "benjamin": 12131, - "benji": 43548, - "benn": 39097, - "bennet": 48536, - "bennett": 12186, - "benny": 42369, - "benny": 20595, - "beno": 35268, - "benoit": 44373, - "benson": 19578, - "bent": 9809, - "bent": 18369, - "bentley": 16859, - "benton": 30812, - "benz": 27937, - "benz": 13470, - "ber": 867, - "ber": 1516, - "bera": 32802, - "bere": 17458, - "bered": 9193, - "beren": 33654, - "beret": 41658, - "berg": 12022, - "berg": 3294, - "bergen": 22918, - "berger": 35933, - "berger": 13873, - "bergh": 35120, - "bergman": 42597, - "bergs": 43592, - "berk": 15633, - "berke": 14639, - "berkeley": 46049, - "berkeley": 16667, - "berkshire": 27300, - "berlin": 23532, - "berlin": 5891, - "berman": 21514, - "bermu": 21032, - "bermuda": 24644, - "bern": 9195, - "bern": 18382, - "bernade": 46242, - "bernar": 11962, - "bernard": 14579, - "bernardino": 35328, - "bernardo": 27137, - "bernardo": 28696, - "bernardokath": 29081, - "bernat": 40578, - "berni": 18798, - "bernie": 40093, - "bernie": 10503, - "berniesanders": 23745, - "bernstein": 33936, - "berra": 15089, - "berries": 8319, - "berry": 15334, - "berry": 3488, - "bers": 6408, - "berser": 39037, - "bert": 17340, - "bert": 2358, - "berta": 45187, - "berth": 28317, - "bertie": 47182, - "berto": 34073, - "bertr": 36962, - "bertrand": 41594, - "berts": 30205, - "berty": 35973, - "berwick": 40407, - "bery": 11411, - "bes": 26911, - "bes": 3635, - "beside": 13519, - "besides": 17596, - "bespoke": 15612, - "bess": 43791, - "best": 3419, - "best": 949, - "bestbuy": 29749, - "bestest": 31199, - "bestfan": 23880, - "bestfanarmy": 24590, - "bestfriend": 29832, - "bestfriend": 11856, - "bestfriends": 23555, - "besti": 35210, - "bestie": 17188, - "besties": 27346, - "besto": 28615, - "bestof": 27892, - "bestof": 39533, - "bestseller": 25841, - "bestselling": 28632, - "bet": 1051, - "bet": 4430, - "beta": 43188, - "beta": 9505, - "betes": 10255, - "beth": 9993, - "beth": 4892, - "bethan": 18781, - "bethany": 39130, - "bethany": 27952, - "bethe": 12624, - "bethel": 33410, - "bethesda": 32527, - "bethle": 30760, - "bethlehem": 31827, - "betis": 45590, - "beto": 33721, - "betra": 18436, - "betrayal": 33171, - "betrayed": 35692, - "bets": 17107, - "betsy": 28946, - "bett": 17715, - "bett": 20489, - "betta": 36387, - "bette": 35855, - "better": 10320, - "better": 1539, - "bettertogether": 47392, - "betting": 14319, - "betts": 38637, - "betty": 36175, - "betty": 14350, - "between": 1957, - "beu": 38660, - "bev": 40324, - "bev": 30968, - "bever": 9924, - "beverage": 18694, - "beverages": 28521, - "beverley": 39165, - "beverly": 30906, - "beverly": 16728, - "beverlyhills": 45363, - "beware": 14532, - "bewithyou": 36787, - "bex": 18676, - "bex": 24748, - "bexhill": 49200, - "bey": 3234, - "bey": 6767, - "beyon": 11447, - "beyonce": 16632, - "beyoncé": 19219, - "beyond": 22246, - "beyond": 4432, - "bez": 28592, - "bez": 46764, - "bezos": 45000, - "bf": 19858, - "bf": 7990, - "bfc": 37183, - "bff": 11984, - "bffs": 31462, - "bfi": 34244, - "bg": 16674, - "bg": 11295, - "bgc": 47598, - "bgs": 47963, - "bgt": 40665, - "bh": 9930, - "bh": 13603, - "bha": 6144, - "bha": 33068, - "bhafc": 30779, - "bhagat": 49136, - "bhai": 48370, - "bhai": 20508, - "bhak": 34501, - "bham": 31874, - "bham": 23491, - "bhan": 27356, - "bhand": 48679, - "bhar": 9108, - "bharat": 27454, - "bharat": 17430, - "bharti": 46803, - "bhat": 23784, - "bhatt": 36143, - "bhav": 44950, - "bhi": 28943, - "bhi": 21955, - "bhk": 45070, - "bhm": 38741, - "bho": 19721, - "bhopal": 44573, - "bhp": 29776, - "bhs": 29195, - "bhu": 9172, - "bhuban": 38729, - "bhubanes": 41213, - "bhubaneswar": 45888, - "bhushan": 40884, - "bhutan": 32391, - "bhutto": 30153, - "bi": 717, - "bi": 3035, - "bia": 3841, - "biaf": 26961, - "biafra": 36355, - "bian": 19531, - "bian": 9027, - "bianca": 25854, - "bianchi": 45720, - "bians": 28141, - "bias": 11268, - "biased": 22178, - "bib": 44607, - "bib": 21022, - "bibi": 31182, - "bibl": 20912, - "bible": 26738, - "bible": 7583, - "bibli": 23465, - "biblical": 22841, - "biblio": 49131, - "bic": 5960, - "bic": 10675, - "bice": 35589, - "biceps": 46735, - "bick": 27238, - "bicy": 9247, - "bicycle": 11652, - "bicycles": 31326, - "bid": 21035, - "bid": 5553, - "bidding": 23237, - "bide": 45178, - "biden": 19451, - "bids": 16148, - "bie": 5561, - "bie": 4173, - "bieber": 48725, - "bieber": 7535, - "bien": 19176, - "bien": 25742, - "biennale": 33776, - "biennial": 36609, - "bier": 27226, - "bier": 23508, - "bies": 7867, - "big": 1915, - "big": 1205, - "bigbaldhead": 30325, - "bigbang": 41680, - "bigbang": 23734, - "bigdata": 9440, - "bige": 37762, - "bigfoot": 37095, - "bigg": 15312, - "bigg": 35399, - "biggboss": 27056, - "bigger": 6806, - "biggest": 19483, - "biggest": 3505, - "biggie": 28392, - "biggs": 46507, - "bigh": 18106, - "bighit": 35508, - "bigo": 14278, - "bigolive": 20735, - "bigotry": 37269, - "bigre": 36330, - "bih": 33471, - "bihar": 22849, - "bij": 42478, - "bik": 30306, - "bike": 11686, - "bike": 3701, - "biker": 36100, - "biker": 23449, - "bikers": 29468, - "bikes": 9227, - "bikin": 12638, - "biking": 19157, - "bikini": 14531, - "bil": 3092, - "bil": 20506, - "bilateral": 25599, - "bilbao": 34802, - "bild": 35512, - "bile": 25943, - "bilingual": 29623, - "bilities": 13582, - "bility": 4694, - "bill": 4444, - "bill": 2886, - "billboard": 10856, - "billboards": 34741, - "billed": 37558, - "billi": 7693, - "billie": 23990, - "billing": 31797, - "billings": 43615, - "billion": 14520, - "billion": 5729, - "billionaire": 19475, - "billionaires": 41590, - "billions": 20742, - "bills": 9810, - "billsmafia": 48845, - "billy": 15626, - "billy": 6814, - "bilt": 44770, - "bilt": 26654, - "bim": 46737, - "bim": 24775, - "bin": 4849, - "bin": 5346, - "binance": 43520, - "binary": 23497, - "bind": 44513, - "binder": 30541, - "binding": 21287, - "bine": 34848, - "bing": 24818, - "bing": 5665, - "binge": 22600, - "bingham": 43785, - "bingham": 47296, - "bingo": 18418, - "bino": 29172, - "bino": 24313, - "bins": 26934, - "bint": 43647, - "bio": 2830, - "bio": 5162, - "biode": 43502, - "biodegradable": 47740, - "biodiversity": 17428, - "biof": 45158, - "biographical": 49232, - "biography": 15423, - "biological": 18821, - "biologist": 35149, - "biology": 9796, - "biom": 13010, - "biomar": 44549, - "biomass": 36746, - "biome": 26218, - "biomed": 29280, - "biomedical": 33117, - "bionic": 46201, - "biop": 15009, - "biopic": 27942, - "bios": 48505, - "biotech": 22514, - "biotechnology": 40375, - "biotic": 33773, - "biotics": 41371, - "bious": 31845, - "bipartisan": 32266, - "bipolar": 37097, - "bique": 27809, - "bir": 921, - "bir": 16284, - "birch": 31569, - "birch": 22907, - "bird": 6908, - "bird": 3329, - "birdie": 29612, - "birdies": 45618, - "birding": 15851, - "birdman": 41915, - "birdphotography": 47999, - "birds": 41951, - "birds": 4337, - "birdwatching": 33497, - "birk": 48289, - "birken": 40661, - "birmin": 37482, - "birmingham": 38580, - "birmingham": 7720, - "birth": 1128, - "birth": 5397, - "birthday": 7381, - "birthday": 1166, - "birthdays": 17954, - "birthplace": 31429, - "biryani": 46489, - "bis": 5064, - "bis": 14461, - "biscu": 11532, - "biscuit": 18731, - "biscuits": 18248, - "bisexual": 36829, - "bish": 33690, - "bish": 31461, - "bishop": 20625, - "bishop": 8024, - "bishops": 31579, - "bison": 19741, - "bistro": 21770, - "bit": 3010, - "bit": 2010, - "bitcoin": 30848, - "bitcoin": 6366, - "bite": 41613, - "biting": 23016, - "bits": 7747, - "bitt": 39251, - "bius": 45525, - "bix": 46579, - "biz": 8212, - "biz": 5431, - "biza": 47013, - "bizar": 14886, - "bizarre": 16965, - "bizhour": 39462, - "bizitalk": 34929, - "bj": 4592, - "bj": 18229, - "bjj": 27437, - "bjor": 26525, - "bjp": 37264, - "bjp": 6178, - "bk": 15099, - "bk": 14083, - "bkk": 36433, - "bl": 833, - "bl": 9467, - "bla": 2205, - "bla": 19630, - "blac": 21008, - "black": 2025, - "black": 1449, - "blackand": 12809, - "blackandwhite": 23688, - "blackandwhite": 19506, - "blackandwhitephotography": 27544, - "blackberry": 16470, - "blackbird": 38526, - "blackburn": 23789, - "blackfish": 42193, - "blackfriday": 16445, - "blackgirl": 43591, - "blackhawks": 19203, - "blackhistory": 46982, - "blackhistorymonth": 20135, - "blacklist": 30295, - "blacklivesmatter": 23467, - "blackmail": 47295, - "blackops": 43519, - "blackout": 21733, - "blackpanther": 36592, - "blackpink": 20339, - "blackpool": 21031, - "blacks": 16351, - "blackwell": 42642, - "blad": 36635, - "bladder": 33593, - "blade": 10264, - "blades": 16893, - "blah": 29212, - "blaine": 32457, - "blair": 31824, - "blair": 14749, - "blake": 20229, - "blake": 9579, - "blame": 10695, - "blamed": 32906, - "blames": 27841, - "blaming": 29287, - "blan": 4609, - "blanc": 30936, - "blanc": 13301, - "blanca": 40670, - "blanchard": 40177, - "blanche": 34875, - "blanchett": 49378, - "blanco": 26801, - "bland": 44372, - "bland": 30799, - "blank": 15134, - "blanket": 12878, - "blankets": 24042, - "blanks": 48599, - "blasio": 35553, - "blasphe": 36622, - "blast": 46349, - "blast": 5964, - "blasted": 38976, - "blaster": 36341, - "blasting": 26178, - "blasts": 23067, - "blat": 22048, - "blatant": 41391, - "blatt": 39138, - "blau": 45307, - "blaz": 43413, - "blaze": 15497, - "blazer": 17606, - "blazers": 16984, - "blazing": 25267, - "bldg": 22981, - "ble": 1447, - "ble": 1059, - "bleach": 27034, - "bleak": 40355, - "bled": 12006, - "bleed": 23027, - "bleed": 24791, - "bleedblue": 39160, - "bleeding": 20311, - "bleeds": 47339, - "blen": 25651, - "blend": 10780, - "blended": 25813, - "blender": 25066, - "blending": 34307, - "blends": 28572, - "bler": 31305, - "bler": 11979, - "blers": 26930, - "bles": 5763, - "bless": 9640, - "bless": 5387, - "blessed": 4411, - "blessing": 10729, - "blessings": 11185, - "bleu": 30114, - "blew": 18176, - "bley": 43176, - "bli": 1450, - "bli": 28051, - "blin": 9678, - "blin": 5406, - "blind": 17248, - "blind": 8351, - "blinded": 49149, - "blindness": 38812, - "blinds": 32449, - "bling": 39764, - "bling": 7097, - "blink": 18976, - "bliss": 28531, - "bliss": 12893, - "blissful": 42145, - "blit": 39327, - "blitz": 42151, - "blitz": 17548, - "blizz": 13075, - "blizzard": 16111, - "blk": 42950, - "blk": 22872, - "blm": 30957, - "bln": 47348, - "blo": 1204, - "blo": 25505, - "blob": 49312, - "bloc": 30961, - "block": 4638, - "block": 4593, - "blockade": 33489, - "blockbuster": 19939, - "blockchain": 6653, - "blocked": 9106, - "blocker": 44767, - "blocking": 12652, - "blocks": 10113, - "blog": 16376, - "blog": 2589, - "blogg": 33282, - "blogged": 41380, - "blogger": 21352, - "blogger": 7806, - "bloggerrt": 48898, - "bloggers": 11627, - "blogging": 18090, - "blogpost": 41842, - "blogs": 16682, - "bloke": 24384, - "blom": 48996, - "blon": 7958, - "blond": 32426, - "blonde": 10711, - "blondes": 45130, - "blondie": 39236, - "bloo": 2373, - "blood": 9231, - "blood": 3590, - "blooded": 41946, - "bloodh": 48480, - "bloods": 39539, - "bloody": 38568, - "bloody": 9468, - "bloom": 7311, - "bloom": 10257, - "bloomberg": 43109, - "bloomberg": 21238, - "bloomfield": 40342, - "blooming": 45175, - "blooming": 19266, - "bloomington": 34731, - "blooms": 21439, - "bloss": 10017, - "blossom": 14472, - "blossoms": 21916, - "blot": 41710, - "blou": 44506, - "blouse": 23525, - "blow": 15230, - "blow": 10211, - "blower": 25832, - "blowing": 12087, - "blown": 11848, - "blowout": 34857, - "blows": 21063, - "blr": 47250, - "bls": 39458, - "blu": 1263, - "blu": 10273, - "blue": 3829, - "blue": 1746, - "bluebells": 47150, - "blueberries": 29551, - "blueberry": 18251, - "bluebird": 40747, - "bluec": 43194, - "bluef": 41174, - "bluegrass": 26241, - "bluejays": 18684, - "blueprint": 30594, - "blues": 17566, - "blues": 5159, - "blueslyrix": 47068, - "bluet": 13469, - "bluetooth": 14052, - "bluewave": 40025, - "bluff": 27232, - "bluffs": 48844, - "blum": 34818, - "blumen": 38714, - "blun": 34472, - "blunt": 19305, - "blur": 12102, - "blur": 27976, - "bluray": 36818, - "blurred": 38013, - "blurry": 21977, - "blush": 22889, - "blvd": 12578, - "bly": 20930, - "bly": 4426, - "bm": 4773, - "bm": 15916, - "bma": 42573, - "bmc": 27807, - "bmi": 40642, - "bmo": 39083, - "bms": 34074, - "bmw": 26637, - "bmw": 7869, - "bmx": 22535, - "bn": 10496, - "bn": 7992, - "bnb": 20010, - "bnha": 49336, - "bnp": 47910, - "bnw": 35903, - "bo": 647, - "bo": 2525, - "boa": 14732, - "boar": 7837, - "boar": 35473, - "board": 10419, - "board": 1972, - "boarded": 43052, - "boarder": 37414, - "boardgame": 47829, - "boardgames": 32646, - "boarding": 10086, - "boardroom": 47937, - "boards": 7963, - "boardwalk": 29043, - "boast": 44467, - "boasts": 30309, - "boat": 12426, - "boat": 4440, - "boath": 45461, - "boating": 21951, - "boats": 10080, - "boatsales": 46244, - "bob": 8444, - "bob": 4423, - "boba": 39948, - "bobb": 16891, - "bobble": 38796, - "bobblehead": 33451, - "bobby": 17847, - "bobby": 7816, - "bobc": 26153, - "bobcat": 37896, - "bobcats": 27568, - "bobo": 38939, - "bobs": 45533, - "boc": 27307, - "boc": 39042, - "boca": 26094, - "bock": 24961, - "bod": 17904, - "bod": 26340, - "boda": 42030, - "bode": 28452, - "bode": 40429, - "bodega": 47350, - "bodied": 36892, - "bodies": 9799, - "bodily": 49119, - "body": 7132, - "body": 1774, - "bodybuilding": 24538, - "bodyguard": 35565, - "boe": 23476, - "boe": 21773, - "boeh": 38002, - "boehner": 44599, - "boeing": 48135, - "boeing": 11857, - "boer": 44889, - "boer": 40768, - "bog": 23426, - "bog": 28318, - "bogo": 35769, - "bogota": 47059, - "bogus": 42907, - "boh": 43238, - "bohe": 40541, - "bohemi": 21552, - "bohemian": 25753, - "boho": 25444, - "boi": 37129, - "boi": 12673, - "boil": 31332, - "boiled": 23886, - "boiler": 28212, - "boiler": 25615, - "boiling": 32019, - "bois": 47742, - "bois": 21640, - "boise": 23304, - "bok": 26671, - "bok": 15289, - "boko": 30929, - "boks": 40216, - "bol": 2860, - "bol": 8413, - "bola": 12840, - "bold": 26975, - "bold": 8911, - "boldand": 48413, - "boldly": 44778, - "boli": 12722, - "bolic": 27343, - "bolivia": 28628, - "bollah": 36336, - "bolly": 25302, - "bollywood": 32448, - "bollywood": 9604, - "bolo": 40236, - "bolog": 22818, - "bologna": 27513, - "bolster": 47304, - "bolt": 13131, - "bolton": 48757, - "bolton": 16598, - "bolts": 26028, - "bom": 3012, - "bom": 19469, - "bomb": 18091, - "bomb": 6331, - "bombar": 25544, - "bombardier": 42700, - "bombay": 48602, - "bombay": 23890, - "bombed": 24542, - "bomber": 15436, - "bombers": 21786, - "bombing": 14475, - "bombings": 43236, - "bombs": 14410, - "bombshell": 36340, - "bon": 1871, - "bon": 4216, - "bona": 33342, - "bonanza": 40304, - "bond": 37022, - "bond": 6826, - "bonded": 37390, - "bondi": 40092, - "bonding": 19609, - "bonds": 15786, - "bone": 22502, - "bone": 6195, - "bones": 9476, - "bonfire": 23151, - "bongo": 47519, - "boni": 32269, - "boni": 46356, - "bonita": 42896, - "bonjour": 33176, - "bonkers": 39865, - "bonn": 38969, - "bonnar": 47191, - "bonnaroo": 48777, - "bonne": 25844, - "bonnet": 30636, - "bonnie": 18555, - "bono": 24476, - "bons": 42883, - "bonsai": 44129, - "bonus": 8164, - "bonuses": 35144, - "boo": 824, - "boo": 7317, - "boogie": 22639, - "book": 2828, - "book": 1116, - "bookboost": 31257, - "bookclub": 34438, - "bookday": 26327, - "booked": 12584, - "booker": 21302, - "bookfest": 39381, - "booking": 10145, - "bookings": 18345, - "booklet": 27405, - "bookmark": 33596, - "bookof": 45629, - "bookreview": 27362, - "books": 44382, - "books": 2161, - "bookshelf": 34821, - "bookshop": 24705, - "bookstore": 17999, - "bookstores": 46416, - "bookworm": 20743, - "boom": 9609, - "boom": 7121, - "boomer": 33819, - "boomer": 31766, - "boomers": 37988, - "booming": 33487, - "boon": 24979, - "boon": 35821, - "boone": 23453, - "boop": 45047, - "boost": 44639, - "boost": 6260, - "boosted": 37631, - "booster": 20877, - "boosters": 46859, - "boosting": 28480, - "boosts": 29247, - "boot": 10843, - "boot": 8087, - "bootcamp": 22051, - "booted": 42564, - "booth": 47895, - "booth": 3971, - "booths": 32653, - "booties": 46188, - "bootleg": 38139, - "boots": 7319, - "booze": 24341, - "bop": 19720, - "bor": 1141, - "bor": 15093, - "bora": 24736, - "bord": 36891, - "bordeaux": 22009, - "border": 16304, - "border": 6177, - "borderlands": 38676, - "borders": 13900, - "bore": 14084, - "bore": 24638, - "bored": 8933, - "boredom": 31460, - "boretum": 38902, - "borg": 14770, - "borgh": 17180, - "boring": 12519, - "boris": 31212, - "boris": 15704, - "borisjohnson": 44481, - "born": 17695, - "born": 2683, - "borne": 42910, - "borne": 9328, - "borneo": 33332, - "bornon": 41811, - "bornonthisday": 42757, - "boro": 26796, - "boro": 7974, - "borough": 22761, - "borough": 6203, - "borrow": 22293, - "borrowed": 28224, - "borrowing": 41045, - "borussia": 36764, - "bos": 14885, - "bos": 9644, - "bosa": 46946, - "bosch": 42009, - "bosch": 19466, - "bosco": 36960, - "bose": 23142, - "bosh": 42244, - "bosni": 42924, - "bosnia": 31396, - "boss": 17935, - "boss": 4206, - "bosses": 23906, - "boston": 11540, - "boston": 4399, - "bostonmarathon": 44533, - "bot": 4136, - "bot": 6947, - "botan": 12554, - "botanic": 32560, - "botanical": 21026, - "botany": 22612, - "botd": 34451, - "both": 36575, - "both": 2212, - "bother": 21125, - "bothered": 27997, - "botox": 43449, - "bots": 13721, - "botswana": 27584, - "bott": 3520, - "bott": 37225, - "bottle": 37306, - "bottle": 5392, - "bottled": 29331, - "bottlen": 46439, - "bottles": 9754, - "bottling": 42006, - "bottom": 32314, - "bottom": 5931, - "bottoms": 31524, - "bou": 3728, - "bou": 23165, - "bouchard": 47930, - "boudo": 48827, - "bought": 4142, - "boul": 24830, - "boulder": 18260, - "boule": 17652, - "boulevard": 19504, - "boun": 5993, - "bounce": 14316, - "bouncing": 32060, - "bouncy": 43415, - "bound": 15140, - "bound": 4567, - "boundaries": 18690, - "boundary": 21344, - "bounds": 37469, - "bounty": 21142, - "bouquet": 20961, - "bour": 2934, - "bour": 35486, - "bourbon": 48118, - "bourbon": 14652, - "bourdain": 48095, - "bourg": 20690, - "bourgeo": 45672, - "bourn": 39143, - "bourne": 13789, - "bourne": 5192, - "bournemouth": 20911, - "bout": 19982, - "bout": 8123, - "bouti": 10926, - "boutique": 12179, - "bow": 2297, - "bow": 4040, - "bowden": 48538, - "bowed": 49130, - "bowel": 36880, - "bowen": 25368, - "bower": 40414, - "bowers": 42238, - "bowie": 13036, - "bowing": 46398, - "bowl": 26719, - "bowl": 3814, - "bowled": 39987, - "bowler": 25528, - "bowlers": 42632, - "bowles": 41611, - "bowling": 10390, - "bowls": 17787, - "bowman": 22052, - "bows": 17000, - "bowser": 38234, - "bowski": 48311, - "box": 2774, - "box": 2063, - "boxed": 24190, - "boxer": 40394, - "boxer": 15363, - "boxers": 31019, - "boxes": 8350, - "boxing": 33669, - "boxing": 5554, - "boy": 2927, - "boy": 1876, - "boyband": 31568, - "boyce": 44480, - "boycot": 46208, - "boycott": 31615, - "boycott": 19559, - "boyd": 18295, - "boyfriend": 7328, - "boyfriends": 36541, - "boyle": 22802, - "boys": 25223, - "boys": 2034, - "boyz": 16152, - "bp": 23410, - "bp": 11558, - "bpa": 43855, - "bpd": 48587, - "bpl": 28901, - "bpm": 40338, - "bps": 37794, - "br": 711, - "br": 7532, - "bra": 1195, - "bra": 5860, - "brac": 6663, - "brace": 8376, - "brace": 9183, - "bracelet": 8969, - "bracelets": 20027, - "braces": 19249, - "brack": 25676, - "bracket": 14780, - "brackets": 36183, - "brad": 4848, - "brad": 9405, - "bradbury": 45097, - "braden": 46842, - "bradford": 15062, - "bradley": 31905, - "bradley": 10952, - "brador": 24062, - "bradshaw": 37556, - "brady": 42494, - "brady": 11117, - "brae": 42874, - "brae": 40040, - "brag": 30110, - "bragg": 38545, - "bragging": 38199, - "brah": 20276, - "brahms": 45114, - "brai": 25048, - "braid": 31067, - "braided": 39997, - "braids": 34221, - "brain": 9454, - "brain": 4812, - "brains": 17129, - "brainstorming": 36607, - "braised": 28363, - "brake": 14937, - "brakes": 23456, - "bral": 31309, - "bram": 14815, - "bram": 39456, - "brampton": 35124, - "bran": 3684, - "bran": 28348, - "brance": 36072, - "brance": 15413, - "branch": 7998, - "branches": 15843, - "brand": 3910, - "brand": 2896, - "branded": 18097, - "brandi": 41003, - "branding": 10841, - "brando": 41892, - "brandon": 20423, - "brandon": 9166, - "brands": 8681, - "brandt": 22552, - "brandy": 26232, - "brane": 32340, - "branson": 28280, - "brant": 28951, - "brant": 47592, - "braries": 46377, - "brary": 24520, - "bras": 22611, - "brasil": 18991, - "brass": 24348, - "brass": 11655, - "brat": 26717, - "brat": 26631, - "brate": 41864, - "braun": 39129, - "braun": 29309, - "brave": 25461, - "brave": 7769, - "braved": 47663, - "bravely": 42303, - "bravery": 25831, - "braves": 14422, - "braving": 43258, - "bravo": 38613, - "bravo": 13006, - "braw": 37871, - "brawl": 26066, - "braxton": 37451, - "bray": 26256, - "bray": 22993, - "braz": 4625, - "brazil": 47459, - "brazil": 6305, - "brazili": 45697, - "brazilian": 12111, - "brb": 25316, - "brc": 40393, - "bre": 887, - "bre": 7782, - "brea": 7318, - "brea": 46538, - "breach": 21363, - "breaches": 45173, - "bread": 18886, - "bread": 5066, - "breads": 43064, - "break": 2206, - "break": 2568, - "breakable": 30691, - "breakaway": 42732, - "breakdown": 14519, - "breaker": 14814, - "breakers": 22270, - "breakfa": 45931, - "breakfast": 30210, - "breakfast": 3290, - "breaking": 14698, - "breaking": 2755, - "breakingbad": 38032, - "breakingnews": 23837, - "breakout": 16752, - "breaks": 7263, - "breakthrough": 18802, - "breakup": 38931, - "breast": 12930, - "breast": 9475, - "breastcancer": 40813, - "breastcancer": 30065, - "breastfeeding": 29033, - "breasts": 37637, - "breath": 9508, - "breath": 9576, - "breathe": 11364, - "breathing": 14959, - "breathtaking": 14709, - "brecht": 34622, - "breck": 44598, - "bred": 46929, - "bred": 16008, - "bree": 7892, - "bree": 37138, - "breed": 28030, - "breed": 13791, - "breeders": 37472, - "breeding": 16544, - "breeds": 29021, - "breen": 48013, - "brees": 46721, - "breeze": 13125, - "breezy": 21451, - "breit": 23864, - "breitbart": 37926, - "brek": 35494, - "bremen": 39861, - "bren": 5209, - "brenda": 23786, - "brendan": 35134, - "brendan": 15414, - "brendon": 36756, - "brennan": 22372, - "brenner": 42941, - "brent": 31439, - "brent": 16355, - "brentwood": 33108, - "brero": 47781, - "bres": 32561, - "bret": 38020, - "bret": 32548, - "brethren": 43134, - "breton": 32290, - "brett": 22591, - "brett": 12394, - "brev": 42882, - "brevi": 39475, - "brew": 5048, - "brew": 7253, - "brewco": 33582, - "brewed": 23238, - "brewer": 20756, - "breweries": 35277, - "brewers": 17618, - "brewery": 8850, - "brewing": 8275, - "brewingco": 45155, - "brews": 21663, - "brewster": 40274, - "brex": 22726, - "brexit": 27666, - "brexit": 5801, - "brgy": 35983, - "bri": 1036, - "bri": 18636, - "bria": 35890, - "brian": 9824, - "brian": 4989, - "brianna": 32308, - "briar": 46119, - "bribe": 40042, - "bribery": 41792, - "bric": 27055, - "brice": 40190, - "brick": 13937, - "brick": 9518, - "bricks": 21029, - "brics": 48196, - "brid": 16995, - "bridal": 36875, - "bridal": 14284, - "bride": 18342, - "bride": 8964, - "brides": 18067, - "bridesma": 28356, - "bridesmaid": 43399, - "bridesmaids": 47754, - "bridg": 20623, - "bridge": 8647, - "bridge": 2465, - "bridgeport": 45201, - "bridges": 11811, - "bridget": 27073, - "bridgewater": 38732, - "bridging": 38109, - "brie": 26622, - "brief": 9435, - "brief": 8954, - "briefed": 47326, - "briefing": 12991, - "briefly": 26980, - "briefs": 29557, - "brien": 13504, - "brier": 43995, - "brig": 11081, - "briga": 46448, - "brigade": 16032, - "briggs": 28108, - "brigh": 6710, - "bright": 10383, - "bright": 4852, - "brighten": 18208, - "brightening": 43929, - "brighter": 18507, - "brightest": 26159, - "brightly": 36298, - "brightness": 42280, - "brighton": 28416, - "brighton": 9470, - "brigitte": 44421, - "brill": 27342, - "brill": 28601, - "brilli": 3821, - "brilliance": 28146, - "brilliant": 4106, - "brilliantly": 26803, - "brin": 25620, - "bring": 11596, - "bring": 2430, - "bringback": 28969, - "bringbackour": 45403, - "bringing": 4777, - "brings": 5138, - "brink": 39296, - "brink": 28796, - "brioche": 45818, - "bris": 9385, - "bris": 15783, - "brisban": 30431, - "brisbane": 42932, - "brisbane": 12407, - "brisk": 43646, - "brisket": 31920, - "bristol": 18159, - "bristol": 8010, - "brit": 2318, - "brit": 20066, - "britain": 40802, - "britain": 6272, - "britanni": 31373, - "britannia": 36188, - "brite": 33827, - "briti": 8155, - "british": 8651, - "british": 3504, - "britishmuseum": 41858, - "britney": 37192, - "britney": 21853, - "britneyspears": 42990, - "brits": 21832, - "britt": 10811, - "britt": 25976, - "brittany": 38187, - "brittany": 18818, - "britton": 37422, - "brium": 46079, - "brixton": 30056, - "bro": 927, - "bro": 4410, - "broad": 3491, - "broad": 12623, - "broadband": 21050, - "broadcast": 8967, - "broadcaster": 29005, - "broadcasting": 14403, - "broadcasts": 46742, - "broader": 36029, - "broadway": 34599, - "broadway": 9092, - "broc": 15587, - "broccoli": 19094, - "broch": 21419, - "brochure": 25275, - "brock": 14841, - "brock": 16745, - "brodie": 42150, - "brody": 29608, - "broke": 42165, - "broke": 6509, - "broken": 26126, - "broken": 5107, - "broker": 34032, - "broker": 20449, - "brokerage": 41327, - "brokers": 28271, - "brom": 18972, - "brom": 33296, - "bromance": 35353, - "bromley": 35715, - "bron": 4011, - "bron": 10243, - "bronco": 43488, - "bronco": 34370, - "broncos": 12516, - "bronson": 37042, - "bronte": 48936, - "bronx": 48310, - "bronx": 17183, - "brony": 21084, - "bronze": 8459, - "broo": 5204, - "brooch": 21207, - "brook": 4782, - "brook": 7322, - "brooke": 28576, - "brooke": 12549, - "brookes": 39707, - "brooklyn": 23253, - "brooklyn": 6983, - "brooks": 42779, - "brooks": 9991, - "broom": 32046, - "broom": 28008, - "broome": 49335, - "bros": 7776, - "broth": 29994, - "brotha": 33974, - "brother": 12697, - "brother": 3157, - "brotherhood": 19059, - "brothers": 4548, - "brou": 27874, - "brough": 21033, - "brought": 4222, - "brov": 42881, - "brow": 6547, - "brow": 15895, - "broward": 34719, - "brown": 6315, - "brown": 2866, - "browne": 28440, - "brownie": 23045, - "brownies": 22312, - "browning": 32241, - "browns": 14051, - "brows": 14998, - "browse": 19060, - "browser": 19768, - "browsing": 29318, - "brox": 43539, - "brs": 47485, - "brt": 46936, - "bru": 1698, - "bru": 31028, - "bruce": 21223, - "bruce": 7085, - "bruh": 17575, - "bruins": 14736, - "bruise": 48048, - "bruised": 46502, - "brum": 23862, - "brum": 28078, - "brun": 6870, - "brunch": 9113, - "brune": 29057, - "brunei": 41898, - "brunette": 35528, - "bruno": 14568, - "brunomars": 41156, - "brunswick": 24012, - "brush": 27969, - "brush": 8594, - "brushed": 30298, - "brushes": 21550, - "brushing": 35072, - "brussels": 11020, - "brut": 39499, - "brutal": 42144, - "brutal": 14556, - "brutality": 31348, - "brutally": 28132, - "brute": 47552, - "brux": 49093, - "bry": 6587, - "bry": 28228, - "bryan": 16134, - "bryan": 10412, - "bryant": 12256, - "bryce": 19895, - "bryn": 36569, - "bryn": 42877, - "bryson": 38990, - "bs": 11783, - "bs": 1329, - "bsa": 46619, - "bsb": 23070, - "bsbi": 41728, - "bsbibotany": 42086, - "bsc": 32031, - "bsd": 41848, - "bse": 46341, - "bsf": 48314, - "bsgo": 48474, - "bsp": 47977, - "bst": 19698, - "bsu": 46385, - "bt": 3317, - "bt": 4205, - "btc": 10315, - "btcc": 30759, - "btn": 44681, - "bto": 35516, - "btob": 29379, - "btr": 39767, - "bts": 15154, - "bts": 4007, - "btsarmy": 30302, - "btsbbmas": 35297, - "btsx": 44971, - "btv": 38541, - "btw": 9520, - "btwn": 28284, - "bu": 609, - "bu": 5831, - "bub": 27704, - "bub": 33158, - "bubb": 9739, - "bubba": 28149, - "bubble": 28687, - "bubble": 10799, - "bubblegum": 48078, - "bubbles": 17648, - "bubbly": 31034, - "buc": 8207, - "buccane": 32830, - "buccaneers": 38058, - "buch": 22623, - "bucha": 43582, - "buchan": 27237, - "buchanan": 28975, - "bucharest": 37013, - "buck": 6061, - "buck": 11433, - "bucket": 22596, - "bucket": 10498, - "bucketlist": 30778, - "buckets": 27168, - "buckeye": 34549, - "buckeyes": 30741, - "buckingham": 28736, - "buckle": 21948, - "buckley": 25905, - "bucks": 6103, - "bucky": 35916, - "bucs": 20011, - "bud": 2942, - "bud": 10737, - "buda": 18520, - "buda": 49012, - "budapest": 19202, - "budd": 7296, - "buddha": 13981, - "buddhism": 23744, - "buddhist": 18697, - "buddies": 14543, - "budding": 31992, - "buddy": 40948, - "buddy": 6557, - "budge": 32005, - "budget": 46758, - "budget": 5639, - "budgeting": 43789, - "budgets": 36419, - "buds": 14665, - "budweiser": 40900, - "buen": 15640, - "buena": 30876, - "buenas": 48529, - "bueno": 46202, - "buenos": 26055, - "buf": 44417, - "buff": 5456, - "buff": 21416, - "buffal": 25836, - "buffalo": 31231, - "buffalo": 8054, - "buffalob": 38831, - "buffalobills": 44352, - "buffe": 13724, - "buffer": 33050, - "buffet": 17829, - "buffett": 34081, - "buffs": 28906, - "buffy": 33356, - "bug": 14453, - "bug": 8162, - "bugatti": 35451, - "buggy": 28963, - "bugs": 13850, - "buh": 31406, - "buhari": 14661, - "buick": 22000, - "buil": 1354, - "build": 22739, - "build": 3289, - "builder": 14474, - "builders": 17694, - "building": 21206, - "building": 2307, - "buildings": 8866, - "builds": 16449, - "buildthe": 41497, - "built": 45824, - "built": 3874, - "buk": 28084, - "buk": 24317, - "buka": 47778, - "bukit": 39888, - "bul": 2572, - "bul": 10200, - "bula": 18726, - "bulaga": 41575, - "bular": 32187, - "bulb": 22373, - "bulbs": 24808, - "bulgar": 15424, - "bulgaria": 20295, - "bulgarian": 38693, - "bulge": 47603, - "bulk": 19643, - "bull": 4537, - "bull": 6029, - "bulldo": 37675, - "bulldog": 34828, - "bulldog": 15611, - "bulldogs": 13916, - "bullet": 14340, - "bullet": 12465, - "bulletin": 19638, - "bulletproof": 43212, - "bullets": 22117, - "bullied": 34689, - "bullies": 39050, - "bullion": 49114, - "bullish": 22142, - "bullock": 33198, - "bullpen": 38081, - "bulls": 10313, - "bully": 43111, - "bully": 20190, - "bullying": 13548, - "bum": 27683, - "bum": 14226, - "bumble": 25585, - "bumble": 39303, - "bumblebee": 36911, - "bummed": 48456, - "bump": 9783, - "bump": 15877, - "bumped": 22495, - "bumper": 17881, - "bumping": 40196, - "bumps": 21115, - "bun": 2591, - "bun": 13665, - "bunch": 7796, - "bund": 41905, - "bunde": 18841, - "bundesliga": 21582, - "bundle": 11793, - "bundled": 47228, - "bundles": 29834, - "bundy": 37332, - "bung": 44748, - "bungal": 29549, - "bungalow": 33696, - "bunk": 41236, - "bunker": 23615, - "bunnies": 28998, - "bunny": 34198, - "bunny": 9258, - "buns": 22235, - "bunting": 30695, - "buon": 31350, - "buon": 48498, - "bur": 1039, - "bur": 17362, - "burbank": 34862, - "burberry": 30412, - "burch": 44588, - "burden": 18687, - "bure": 11902, - "bureau": 32098, - "bureau": 15400, - "burg": 19505, - "burg": 3499, - "burge": 20522, - "burger": 22356, - "burger": 6548, - "burgers": 13007, - "burgess": 26211, - "burgh": 18141, - "burgh": 4965, - "burgl": 25554, - "burglar": 43365, - "burglary": 32573, - "burgring": 40823, - "burgundy": 23650, - "buri": 46348, - "buri": 42614, - "burial": 22012, - "buried": 14233, - "burk": 48822, - "burke": 15340, - "burle": 27891, - "burlesque": 33732, - "burlington": 23370, - "burma": 30305, - "burmese": 47906, - "burn": 7934, - "burn": 4285, - "burnaby": 47541, - "burne": 27246, - "burned": 15022, - "burner": 23243, - "burnett": 28558, - "burnham": 36111, - "burning": 46107, - "burning": 8405, - "burnley": 24653, - "burnout": 36078, - "burns": 10234, - "burnt": 15185, - "burr": 30879, - "burrell": 49045, - "burrito": 23473, - "burritos": 47245, - "burroughs": 41337, - "burrows": 44846, - "burst": 13005, - "bursting": 32566, - "bursts": 37026, - "burt": 27162, - "burton": 42354, - "burton": 12704, - "burundi": 33595, - "bury": 12276, - "bury": 3899, - "burys": 32362, - "bus": 1319, - "bus": 2840, - "busan": 40172, - "busc": 35000, - "busch": 20475, - "buses": 12879, - "bush": 11191, - "bush": 6867, - "bushes": 37578, - "busiest": 32764, - "busine": 4598, - "busines": 25364, - "business": 8346, - "business": 1716, - "businesses": 7287, - "businessman": 25635, - "buss": 47764, - "bust": 31299, - "bust": 9959, - "busted": 18643, - "buster": 37219, - "buster": 12094, - "busters": 16362, - "busting": 29622, - "busy": 39332, - "busy": 4354, - "but": 2201, - "but": 767, - "butch": 35102, - "butcher": 18732, - "butchers": 42334, - "bute": 39240, - "butes": 14630, - "butler": 35867, - "butler": 10702, - "butt": 12500, - "butt": 31523, - "butte": 31678, - "butter": 5427, - "butter": 6952, - "butterflies": 16232, - "butterfly": 9738, - "buttermilk": 40180, - "butternut": 36867, - "buttery": 45535, - "button": 45480, - "button": 8007, - "buttons": 16188, - "butts": 25309, - "buu": 42313, - "buuren": 47752, - "buxton": 41370, - "buy": 11632, - "buy": 2131, - "buyer": 14682, - "buyers": 14663, - "buying": 6566, - "buys": 15560, - "buzz": 7866, - "buzz": 8706, - "buzzard": 47434, - "buzzer": 38064, - "buzzfeed": 26613, - "buzzing": 18511, - "bv": 18958, - "bv": 35861, - "bvb": 22454, - "bw": 17672, - "bw": 15120, - "bway": 26652, - "bwfc": 40918, - "bwo": 45902, - "bx": 33633, - "by": 1713, - "by": 638, - "bye": 20076, - "bye": 4460, - "byes": 47958, - "byl": 34994, - "byn": 46917, - "byn": 11890, - "byo": 28039, - "bypass": 26530, - "byr": 15534, - "byrd": 30369, - "byrne": 19676, - "byron": 43504, - "byron": 19775, - "bys": 26740, - "bystand": 46138, - "byte": 42798, - "bytes": 39538, - "bythe": 36621, - "byu": 41072, - "byu": 23770, - "byz": 35406, - "byzantine": 44081, - "bz": 13631, - "bé": 40365, - "bü": 38706, - "c": 66, - "c": 322, - "ca": 772, - "ca": 1684, - "caa": 19316, - "cab": 3033, - "cab": 11912, - "cabaret": 26263, - "cabbage": 18407, - "cabe": 32731, - "cabello": 34371, - "caber": 29062, - "cabernet": 33730, - "cabin": 14178, - "cabine": 23354, - "cabinet": 9937, - "cabinets": 33083, - "cabins": 48455, - "cable": 7925, - "cables": 22408, - "cabo": 37318, - "cabo": 28370, - "cabrera": 42338, - "cabs": 42048, - "cac": 8298, - "cac": 23872, - "cacao": 38022, - "cache": 28993, - "caching": 40655, - "cactus": 19794, - "cad": 6297, - "cad": 20166, - "caday": 34187, - "cadbury": 44698, - "caddy": 41521, - "cade": 10497, - "cade": 17306, - "cadet": 22764, - "cadets": 19160, - "cadillac": 18156, - "cae": 49264, - "caer": 28298, - "caes": 15740, - "caesar": 21642, - "caesars": 42162, - "caf": 3471, - "caf": 20867, - "cafc": 30748, - "cafe": 15201, - "cafe": 4979, - "cafes": 40166, - "cafeteria": 32817, - "caffe": 18258, - "caffe": 45416, - "caffeine": 22487, - "café": 15304, - "cag": 15714, - "cage": 11838, - "cages": 37939, - "cah": 40519, - "cahill": 33185, - "cai": 38971, - "cai": 36116, - "cain": 13747, - "caine": 16799, - "cair": 15804, - "cair": 46659, - "cairn": 31264, - "cairn": 42467, - "cairngor": 44067, - "cairns": 32941, - "cairo": 19615, - "cait": 14116, - "caitlin": 47768, - "caitlin": 26809, - "caitlyn": 35763, - "cajun": 43425, - "cajun": 33044, - "cak": 42986, - "cake": 15295, - "cake": 2972, - "cakeday": 46207, - "cakes": 5950, - "cal": 1198, - "cal": 6372, - "cala": 32133, - "calab": 31795, - "calais": 39886, - "calam": 28841, - "calc": 45055, - "calci": 22824, - "calcium": 27815, - "calcu": 15328, - "calcul": 15734, - "calculate": 37656, - "calculated": 40688, - "calculations": 44605, - "calculator": 26093, - "calculus": 35104, - "calcutta": 42901, - "calder": 29372, - "calder": 36817, - "caldwell": 30484, - "cale": 32674, - "caleb": 19619, - "caled": 28421, - "calend": 6057, - "calendar": 7122, - "calendars": 17229, - "calf": 17508, - "calgary": 27415, - "calgary": 10797, - "calhoun": 38929, - "cali": 2857, - "cali": 16337, - "caliber": 32820, - "calibr": 32597, - "calico": 45379, - "calif": 30839, - "califor": 3526, - "californi": 21303, - "california": 3729, - "call": 7950, - "call": 1620, - "calla": 20658, - "callahan": 43313, - "callaway": 42596, - "callback": 44764, - "calle": 47699, - "calle": 38144, - "called": 2726, - "caller": 30666, - "calli": 16338, - "callie": 36512, - "calligraphy": 27775, - "calling": 4597, - "callister": 49026, - "callme": 42449, - "callof": 41280, - "calls": 4572, - "callum": 23224, - "calm": 34990, - "calm": 7011, - "calming": 30690, - "calorie": 32679, - "calories": 18029, - "cals": 47714, - "calum": 16405, - "calvary": 40169, - "calvert": 47134, - "calves": 31857, - "calvin": 27642, - "calvin": 17345, - "caly": 10244, - "calyp": 29851, - "cam": 1004, - "cam": 5982, - "camar": 31991, - "camber": 44362, - "cambo": 14662, - "cambodia": 17347, - "cambridge": 24651, - "cambridge": 9334, - "cambridgeshire": 46139, - "camden": 38735, - "camden": 17984, - "came": 1986, - "camel": 27005, - "camel": 21914, - "camels": 41357, - "cameo": 19492, - "camer": 4961, - "camera": 3934, - "cameraman": 43347, - "cameras": 12172, - "camero": 20320, - "cameron": 19634, - "cameron": 8057, - "camerondallas": 40587, - "cameroon": 24061, - "camil": 37745, - "camila": 19919, - "camilla": 38897, - "camille": 26741, - "camino": 28529, - "camo": 28702, - "camo": 19716, - "camogie": 39547, - "camou": 23588, - "camoufla": 23667, - "camouflage": 29049, - "camp": 2854, - "camp": 2877, - "campa": 2793, - "campaig": 9448, - "campaign": 44524, - "campaign": 3193, - "campaigner": 46364, - "campaigners": 40272, - "campaigning": 19594, - "campaigns": 15669, - "campan": 31765, - "campbell": 29094, - "campbell": 8806, - "campe": 16672, - "campeon": 49109, - "campeones": 30105, - "camper": 41914, - "camper": 24522, - "campers": 26619, - "campfire": 32530, - "campground": 46969, - "camping": 9982, - "campo": 27600, - "campos": 48077, - "camps": 12806, - "campsite": 44243, - "campu": 19687, - "campus": 4560, - "campuses": 31895, - "camra": 46155, - "camry": 46472, - "cams": 32590, - "can": 950, - "can": 753, - "cana": 28341, - "canad": 13193, - "canada": 2698, - "canadaday": 39800, - "canadi": 4329, - "canadian": 22160, - "canadian": 5255, - "canadians": 18989, - "canadiens": 40932, - "canal": 28585, - "canal": 9535, - "canals": 38483, - "canaria": 47117, - "canary": 40409, - "canary": 24523, - "canberra": 16719, - "canc": 43189, - "cancel": 12026, - "cancel": 21546, - "canceled": 25874, - "cancell": 28027, - "cancellation": 38765, - "cancelled": 13270, - "cancels": 34089, - "cancer": 12690, - "cancer": 3148, - "cancers": 33201, - "cancun": 34721, - "cand": 4986, - "candace": 45623, - "candel": 47834, - "candi": 6034, - "candice": 30024, - "candid": 7884, - "candid": 19206, - "candidacy": 46248, - "candidate": 6475, - "candidates": 8619, - "candied": 43982, - "candies": 46305, - "candle": 18995, - "candle": 12674, - "candlelight": 34724, - "candles": 15472, - "candy": 20741, - "candy": 6417, - "cane": 23644, - "cane": 14716, - "canelo": 43210, - "canes": 21902, - "cani": 35592, - "canine": 27380, - "cann": 4139, - "cann": 23709, - "cannab": 7577, - "cannabis": 31837, - "cannabis": 8861, - "canne": 44252, - "canned": 27290, - "cannes": 13773, - "canni": 26389, - "canning": 38621, - "cannon": 28771, - "cannon": 15661, - "cannons": 46269, - "cannot": 4785, - "canny": 26986, - "cano": 31668, - "cano": 25937, - "canoe": 23503, - "canola": 40389, - "canon": 17749, - "canon": 9310, - "canopy": 26061, - "cans": 13707, - "cant": 13395, - "cant": 5784, - "canteen": 39230, - "canter": 19301, - "canterbury": 22271, - "canti": 42845, - "cantina": 47472, - "canton": 37735, - "canton": 25363, - "cantore": 41769, - "cantwait": 33760, - "canu": 20171, - "canucks": 24321, - "canv": 30714, - "canvas": 22441, - "canvas": 7483, - "canvass": 40054, - "canvassing": 33783, - "cany": 47674, - "canyon": 41246, - "canyon": 9755, - "cao": 29207, - "cap": 1289, - "cap": 3938, - "capabilities": 19512, - "capability": 25885, - "capable": 14742, - "capac": 24665, - "capacity": 8970, - "capcom": 28342, - "cape": 10288, - "cape": 6631, - "capecod": 41339, - "capes": 38785, - "capetown": 20059, - "capit": 6889, - "capita": 41833, - "capital": 11198, - "capital": 5439, - "capitalism": 20068, - "capitalist": 37015, - "capitals": 29579, - "capitol": 43880, - "capitol": 11375, - "capo": 45477, - "capp": 16718, - "capped": 24659, - "capping": 42656, - "cappuccino": 37402, - "capri": 48699, - "capri": 30982, - "capric": 28667, - "capricorn": 46314, - "caps": 23185, - "capsu": 15608, - "capsul": 40341, - "capsule": 20627, - "capsules": 32870, - "capt": 45815, - "capt": 17369, - "captain": 14958, - "captain": 4621, - "captainamerica": 46229, - "captainmarvel": 48492, - "captains": 18706, - "caption": 11327, - "captions": 41878, - "captiv": 19776, - "captivating": 30580, - "captive": 29038, - "captivity": 41141, - "capture": 8818, - "captured": 8020, - "captures": 15305, - "capturing": 19548, - "capu": 44241, - "car": 811, - "car": 1615, - "cara": 20016, - "carab": 32251, - "carac": 30029, - "caracas": 45854, - "caramel": 14788, - "carameli": 41739, - "caramelized": 43854, - "carat": 32981, - "carav": 13814, - "caravan": 18566, - "carb": 21379, - "carbo": 43235, - "carbon": 14038, - "carbon": 7549, - "carbs": 29313, - "carcin": 31587, - "carcinoma": 46810, - "card": 10793, - "card": 2601, - "cardam": 49008, - "cardboard": 19845, - "cardi": 6211, - "cardi": 29677, - "cardiac": 21256, - "cardiff": 22488, - "cardiff": 9781, - "cardigan": 30501, - "cardin": 8457, - "cardinal": 46310, - "cardinal": 16472, - "cardinals": 12837, - "cardio": 15003, - "cardio": 23455, - "cardiology": 37276, - "cardiovascular": 29291, - "cardo": 40625, - "cards": 4094, - "care": 2050, - "care": 1776, - "cared": 27675, - "career": 20609, - "career": 3061, - "careers": 10090, - "careful": 11999, - "carefully": 15789, - "caregi": 22042, - "caregiver": 46372, - "caregivers": 35909, - "careless": 47325, - "carers": 26484, - "cares": 10968, - "caretaker": 48037, - "carey": 14895, - "cargo": 12490, - "cari": 18497, - "cari": 37273, - "carib": 9757, - "caribbean": 10368, - "caribou": 42135, - "caric": 25337, - "caricature": 38857, - "carina": 44357, - "caring": 13083, - "carl": 8273, - "carl": 9482, - "carla": 25552, - "carleton": 46496, - "carlin": 47559, - "carlisle": 23276, - "carlo": 17861, - "carlo": 15266, - "carlos": 9538, - "carlow": 44745, - "carls": 39635, - "carlson": 24114, - "carlton": 18934, - "carly": 23166, - "carly": 22689, - "carlyle": 46555, - "carmel": 30757, - "carmel": 25601, - "carmen": 41427, - "carmen": 18834, - "carmichael": 41657, - "carn": 21597, - "carnage": 31385, - "carnation": 44577, - "carnaval": 47238, - "carne": 17053, - "carne": 42885, - "carnegie": 25287, - "carney": 34194, - "carni": 8438, - "carnival": 36708, - "carnival": 10577, - "caro": 30317, - "caro": 29344, - "carol": 4242, - "carol": 11489, - "carole": 31955, - "carolin": 26418, - "carolina": 7027, - "caroline": 31064, - "caroline": 12641, - "carols": 33269, - "carolyn": 25825, - "carou": 32224, - "carousel": 36665, - "carp": 26085, - "carpen": 15584, - "carpenter": 18475, - "carpet": 6922, - "carpets": 34612, - "carr": 26951, - "carr": 17136, - "carra": 32332, - "carre": 31114, - "carrera": 32952, - "carri": 4739, - "carriage": 47885, - "carriage": 21087, - "carrick": 44052, - "carrie": 30334, - "carrie": 15848, - "carried": 12960, - "carrier": 12308, - "carriers": 26865, - "carries": 17982, - "carrieunderwood": 47338, - "carrington": 48759, - "carroll": 41911, - "carroll": 14893, - "carrot": 15435, - "carrots": 19299, - "carry": 31863, - "carry": 6998, - "carrying": 9920, - "cars": 3346, - "carsforsale": 45222, - "carson": 41766, - "carson": 13171, - "cart": 27705, - "cart": 13065, - "cartag": 45042, - "cartagena": 47157, - "carte": 44949, - "cartel": 30529, - "carter": 27330, - "carter": 7260, - "cartier": 32951, - "carto": 5487, - "carton": 41812, - "cartoon": 33082, - "cartoon": 7651, - "cartoonist": 30793, - "cartoons": 17673, - "cartri": 47084, - "cartridge": 29432, - "cartridges": 49249, - "carts": 27581, - "cartunesapp": 32888, - "caruso": 45192, - "carve": 40152, - "carved": 15127, - "carver": 28850, - "carving": 19428, - "carvings": 48123, - "cary": 22844, - "cas": 1671, - "cas": 13831, - "casa": 14643, - "casablanc": 36572, - "casablanca": 41950, - "casc": 36714, - "casca": 43296, - "cascade": 29065, - "cascades": 46454, - "case": 17698, - "case": 2068, - "cases": 6888, - "casey": 24899, - "casey": 12836, - "cash": 11050, - "cash": 5131, - "cashback": 36368, - "cashe": 32233, - "cashew": 39531, - "cashi": 29517, - "cashier": 34547, - "cashmere": 34566, - "casi": 38350, - "casino": 10473, - "casio": 32261, - "cask": 26299, - "casm": 35198, - "casper": 35892, - "cass": 22556, - "cassandra": 35289, - "casser": 31093, - "casserole": 36045, - "cassette": 19717, - "cassi": 14942, - "cassidy": 21757, - "cassie": 29323, - "cassini": 46554, - "cast": 2509, - "cast": 1970, - "caste": 32693, - "casted": 33838, - "castel": 43306, - "castell": 31792, - "caster": 32101, - "caster": 8449, - "casters": 29721, - "castic": 47737, - "castillo": 30813, - "casting": 7087, - "castle": 12496, - "castle": 3540, - "castles": 24766, - "castro": 16950, - "casts": 10595, - "casu": 15345, - "casual": 10129, - "casually": 18840, - "casualties": 30244, - "casualty": 31222, - "cat": 1481, - "cat": 2368, - "cata": 42279, - "catal": 12792, - "catalan": 30532, - "catalina": 36576, - "catalo": 34740, - "catalog": 20036, - "catalogue": 20985, - "catalonia": 27039, - "catalunya": 44132, - "cataly": 15894, - "catalyst": 25387, - "catan": 45893, - "catap": 39514, - "catar": 35801, - "catastro": 22736, - "catastrophe": 41422, - "catastrophic": 34448, - "catch": 18901, - "catch": 3042, - "catcher": 15965, - "catchers": 39060, - "catches": 17213, - "catching": 8617, - "catchy": 37114, - "catday": 32243, - "cate": 6357, - "cate": 24510, - "cated": 31823, - "categor": 17006, - "categori": 40117, - "categories": 19971, - "category": 9432, - "cater": 16634, - "cater": 38101, - "catering": 16697, - "caterpillar": 27111, - "catfish": 26077, - "cath": 9196, - "cath": 30811, - "cathar": 43784, - "cathe": 7174, - "cathedr": 46370, - "cathedral": 7865, - "catherine": 35035, - "catherine": 12339, - "catho": 7595, - "cathol": 16315, - "catholic": 20382, - "catholic": 7757, - "catholics": 36808, - "cathy": 40326, - "cathy": 22731, - "cation": 21367, - "cato": 33558, - "cats": 38800, - "cats": 3989, - "catsofinstagram": 39901, - "catsoftwitter": 17273, - "catt": 37339, - "cattle": 48799, - "cattle": 13644, - "caturday": 20892, - "catwalk": 36565, - "catwoman": 47251, - "cau": 1121, - "cau": 45529, - "caucus": 18847, - "caught": 4520, - "caul": 23460, - "cauley": 41682, - "caulfield": 44906, - "cauli": 20123, - "cauliflower": 23802, - "cause": 18982, - "cause": 1394, - "caused": 8940, - "causes": 9775, - "causeway": 35034, - "causing": 10779, - "caution": 15656, - "cautious": 36579, - "cav": 4942, - "cav": 45935, - "cava": 48682, - "caval": 24537, - "cavali": 20783, - "cavalier": 44488, - "cavaliers": 30194, - "cavalry": 32467, - "cave": 25441, - "cave": 9654, - "cavendish": 42945, - "caver": 41487, - "caves": 22096, - "cavi": 27360, - "caviar": 31228, - "cavill": 40492, - "cavity": 43156, - "cavs": 16800, - "caw": 38405, - "caw": 43804, - "cawx": 26739, - "cay": 11876, - "cay": 37399, - "cayenne": 43650, - "cayman": 33737, - "caz": 48451, - "cb": 4034, - "cb": 8830, - "cba": 38472, - "cbb": 31487, - "cbc": 14096, - "cbc": 14523, - "cbd": 13176, - "cbe": 43639, - "cbi": 30875, - "cbj": 35608, - "cbn": 26579, - "cbp": 46723, - "cbr": 28762, - "cbs": 16788, - "cbs": 8009, - "cc": 2976, - "cc": 2021, - "cca": 17987, - "ccc": 21856, - "ccd": 48556, - "ccg": 37755, - "cch": 21789, - "cchini": 28467, - "cci": 32942, - "cci": 8196, - "ccl": 43773, - "ccm": 40435, - "cco": 28786, - "ccot": 24950, - "ccp": 43045, - "ccs": 30400, - "cctv": 23097, - "ccu": 49023, - "cd": 4308, - "cd": 4480, - "cda": 45565, - "cdc": 41098, - "cdc": 25779, - "cdn": 8886, - "cdn": 26802, - "cdnpoli": 11645, - "cdo": 47187, - "cdp": 39624, - "cds": 20784, - "cdt": 18455, - "ce": 685, - "ce": 629, - "cea": 28355, - "cean": 34409, - "cean": 37295, - "cease": 32856, - "cease": 25499, - "ceasefire": 38291, - "cebu": 20146, - "cec": 29694, - "cec": 40029, - "cecil": 26987, - "cecil": 27169, - "cecilia": 35440, - "ced": 25634, - "ced": 2323, - "cedar": 24167, - "cedar": 13799, - "cedric": 36608, - "cee": 45966, - "cee": 15015, - "cees": 47914, - "ceil": 27275, - "ceiling": 12374, - "ceilings": 33770, - "cek": 45544, - "cel": 2269, - "cel": 7597, - "cele": 1314, - "celeb": 38862, - "celeb": 19393, - "celebr": 1372, - "celebrate": 31414, - "celebrate": 2694, - "celebrated": 9184, - "celebrates": 7564, - "celebrating": 3382, - "celebration": 4615, - "celebrations": 10825, - "celebratory": 34115, - "celebrities": 17071, - "celebrity": 23981, - "celebrity": 7320, - "celebs": 19803, - "celed": 25741, - "celer": 9621, - "celery": 30990, - "celeste": 29364, - "celesti": 29497, - "celestial": 32669, - "celi": 25567, - "celia": 44489, - "celine": 33644, - "cell": 9316, - "cell": 5533, - "cellar": 24282, - "cellars": 44976, - "cellence": 34687, - "cello": 23013, - "cellphone": 39029, - "cells": 8890, - "cellu": 16791, - "cellular": 23268, - "cels": 24021, - "celsius": 47057, - "celtic": 21897, - "celtic": 10523, - "celticfc": 38612, - "celtics": 16226, - "cem": 41435, - "ceme": 10517, - "cement": 4369, - "cements": 19448, - "cemetery": 11660, - "cen": 1306, - "cen": 30106, - "cena": 21591, - "cence": 24410, - "cency": 41259, - "cene": 30038, - "censor": 24230, - "censor": 44709, - "censored": 30951, - "censorship": 27284, - "census": 23677, - "cent": 1784, - "cent": 3662, - "centenary": 22422, - "centennial": 20895, - "center": 16651, - "center": 2119, - "centered": 24584, - "centers": 14494, - "centi": 48889, - "centime": 48687, - "centr": 2370, - "central": 13448, - "central": 3339, - "centre": 26310, - "centre": 2916, - "centred": 47925, - "centres": 19354, - "centri": 30872, - "centric": 19297, - "centro": 37178, - "cents": 11934, - "centu": 16818, - "centuri": 36816, - "centuries": 19014, - "century": 26134, - "century": 4275, - "ceo": 46340, - "ceo": 3559, - "ceos": 28332, - "cep": 2632, - "cep": 48714, - "ceph": 44343, - "cept": 3678, - "ception": 12346, - "cer": 1364, - "cer": 1925, - "cera": 34608, - "ceram": 10677, - "ceramic": 15112, - "ceramics": 22438, - "cere": 3984, - "cere": 22085, - "cereal": 17581, - "cereals": 48618, - "cerebral": 39073, - "ceremon": 15796, - "ceremonial": 33281, - "ceremonies": 21547, - "ceremony": 5193, - "cern": 44851, - "cers": 13638, - "cert": 27522, - "certain": 8526, - "certain": 7883, - "certainly": 10883, - "certainty": 20054, - "certi": 4888, - "certific": 9443, - "certificate": 11786, - "certificates": 25281, - "certification": 14735, - "certified": 9288, - "cerv": 25738, - "cervical": 35953, - "ces": 28715, - "ces": 1604, - "cesar": 37025, - "cesar": 28603, - "cess": 2314, - "cess": 1554, - "cessna": 36596, - "cest": 27245, - "cester": 15769, - "cester": 12718, - "cet": 14960, - "cett": 46708, - "ceu": 37457, - "cevic": 48369, - "cey": 20971, - "cf": 10189, - "cf": 11171, - "cfa": 34521, - "cfb": 32931, - "cfc": 11577, - "cfd": 46171, - "cfl": 46320, - "cfl": 22332, - "cfo": 26937, - "cfp": 40756, - "cfr": 44033, - "cfs": 32835, - "cg": 27118, - "cg": 14740, - "cgc": 38775, - "cgi": 30520, - "ch": 540, - "ch": 634, - "cha": 1587, - "cha": 4541, - "chab": 26670, - "chad": 13095, - "chad": 12923, - "chae": 9460, - "chaf": 38123, - "chag": 27989, - "chai": 31590, - "chai": 18919, - "chain": 13898, - "chain": 3946, - "chained": 34402, - "chains": 14438, - "chainsaw": 37617, - "chainz": 39687, - "chair": 4728, - "chair": 4269, - "chaired": 31664, - "chairing": 42205, - "chairman": 6901, - "chairperson": 31584, - "chairs": 12033, - "chak": 13702, - "chak": 41713, - "chakra": 38304, - "chakra": 33241, - "chal": 7397, - "chal": 30809, - "chale": 38099, - "chalet": 37907, - "chalk": 31362, - "chalk": 17846, - "chall": 2073, - "challeng": 4138, - "challenge": 29462, - "challenge": 2836, - "challenged": 17380, - "challenger": 18228, - "challengers": 46404, - "challenges": 6280, - "challenging": 11754, - "chalmers": 47955, - "cham": 1290, - "cham": 19951, - "chamber": 18983, - "chamber": 7642, - "chamberlain": 32756, - "chambers": 16501, - "chamele": 34759, - "chameleon": 41317, - "champ": 36813, - "champ": 6602, - "champag": 10283, - "champagne": 11007, - "champi": 1680, - "champion": 2643, - "champion": 3950, - "champions": 4227, - "championship": 3429, - "championships": 7047, - "championsleague": 27638, - "champs": 6240, - "chan": 1255, - "chan": 6704, - "chana": 48752, - "chanc": 13931, - "chance": 32940, - "chance": 2594, - "chancellor": 15886, - "chances": 10870, - "chand": 7126, - "chand": 41508, - "chandelier": 30570, - "chandi": 12482, - "chandigarh": 34106, - "chandler": 17595, - "chandra": 27082, - "chandra": 25348, - "chanel": 16951, - "chang": 2233, - "chang": 16461, - "change": 11608, - "change": 1799, - "changeable": 41335, - "changed": 4907, - "changer": 18406, - "changers": 35185, - "changes": 4938, - "changing": 40384, - "changing": 5621, - "changmin": 47410, - "chann": 8804, - "channel": 25837, - "channel": 3847, - "channeling": 28197, - "channels": 13961, - "channing": 37417, - "chant": 18165, - "chant": 13521, - "chanting": 32111, - "chants": 22723, - "chanyeol": 18805, - "chao": 31815, - "chaos": 10853, - "chaotic": 33501, - "chap": 3825, - "chap": 21939, - "chapel": 40859, - "chapel": 10137, - "chaplain": 38348, - "chaplin": 32545, - "chapman": 17968, - "chapp": 20634, - "chaps": 36823, - "chapter": 6014, - "chapters": 22936, - "char": 1054, - "char": 16017, - "chara": 35668, - "charac": 2792, - "character": 10997, - "character": 4009, - "characterdesign": 38149, - "characteri": 20920, - "characteristic": 44747, - "characteristics": 26037, - "characters": 6564, - "charan": 31851, - "charcoal": 19268, - "chard": 17524, - "chardon": 26599, - "chardonnay": 28161, - "charge": 25032, - "charge": 5948, - "chargeable": 35664, - "charged": 7916, - "charger": 13090, - "chargers": 17352, - "charges": 8962, - "charging": 12514, - "chariot": 38811, - "charis": 24449, - "charisma": 45041, - "charismatic": 37205, - "charitable": 23256, - "charities": 18493, - "charity": 20008, - "charity": 4607, - "charitytuesday": 42794, - "charl": 47736, - "charle": 10217, - "charles": 27983, - "charles": 5127, - "charleston": 15478, - "charley": 38027, - "charli": 21784, - "charli": 49392, - "charlie": 16764, - "charlie": 6393, - "charlotte": 18445, - "charlotte": 7871, - "charlottesville": 32027, - "charlton": 27048, - "charm": 10876, - "charmed": 39790, - "charming": 12177, - "charms": 21944, - "charred": 44085, - "chart": 42685, - "chart": 5053, - "charted": 27939, - "charter": 42345, - "charter": 13569, - "chartered": 31298, - "charters": 46626, - "charting": 39841, - "charts": 10728, - "chas": 10717, - "chas": 29838, - "chase": 21503, - "chase": 3859, - "chased": 30342, - "chaser": 29560, - "chasers": 34158, - "chases": 45011, - "chasing": 46909, - "chasing": 13376, - "chassis": 29188, - "chast": 42176, - "chasu": 41352, - "chat": 5355, - "chat": 2402, - "chatbots": 43994, - "chate": 30377, - "chateau": 44582, - "chateau": 23520, - "chath": 46849, - "chatham": 32030, - "chats": 13263, - "chatt": 21618, - "chattanoo": 28009, - "chattanooga": 29866, - "chatted": 34124, - "chatter": 33473, - "chatter": 41103, - "chatting": 12401, - "chatur": 33839, - "chau": 11263, - "chau": 37536, - "chauffe": 45440, - "chauhan": 46663, - "chav": 28997, - "chavez": 27480, - "chaw": 39639, - "chay": 45317, - "chaz": 47815, - "chc": 36233, - "chd": 41645, - "che": 983, - "che": 3842, - "chea": 39580, - "chead": 48358, - "cheap": 27036, - "cheap": 8678, - "cheape": 26164, - "cheaper": 17776, - "cheapest": 26640, - "cheat": 18180, - "cheated": 34285, - "cheating": 19722, - "chec": 1113, - "check": 7672, - "check": 1217, - "checked": 10387, - "checker": 45883, - "checkers": 48181, - "checking": 7441, - "checklist": 26989, - "checkout": 13101, - "checkpoint": 27531, - "checks": 13737, - "ched": 11341, - "ched": 2146, - "cheddar": 20551, - "chee": 5326, - "chee": 20944, - "cheek": 40000, - "cheek": 21227, - "cheeks": 23019, - "cheeky": 15068, - "cheer": 9733, - "cheer": 6918, - "cheered": 38111, - "cheerful": 28882, - "cheering": 14289, - "cheerleader": 29072, - "cheerleaders": 22343, - "cheerleading": 36366, - "cheers": 6562, - "chees": 15182, - "cheese": 10738, - "cheese": 4108, - "cheeseburger": 41200, - "cheesecake": 17803, - "cheeses": 36076, - "cheesy": 22093, - "cheetah": 27431, - "chef": 12137, - "chef": 4895, - "chefs": 14486, - "chek": 43745, - "chel": 3084, - "chel": 25970, - "chell": 46854, - "chelle": 30141, - "chelms": 34936, - "chelmsford": 39890, - "chelse": 19071, - "chelsea": 6031, - "chelseafc": 25927, - "chelten": 18889, - "cheltenham": 21589, - "chem": 5667, - "chem": 13698, - "chemi": 7179, - "chemical": 39376, - "chemical": 9208, - "chemicals": 17426, - "chemist": 23138, - "chemistry": 8841, - "chemo": 33095, - "chemo": 36348, - "chemotherapy": 41412, - "chemtrails": 46015, - "chen": 5907, - "chen": 8983, - "cheney": 43522, - "cheng": 32512, - "cheng": 30190, - "chenko": 29073, - "chennai": 28948, - "chennai": 12791, - "cheon": 11498, - "cheque": 28168, - "cher": 3597, - "cher": 3466, - "cheri": 26471, - "cherish": 20053, - "cherished": 42325, - "cherno": 35376, - "chernobyl": 40554, - "chero": 19844, - "cherokee": 22860, - "cherries": 27248, - "cherry": 21470, - "cherry": 7325, - "chers": 5789, - "chery": 38478, - "cheryl": 37784, - "cheryl": 20600, - "ches": 18346, - "ches": 1910, - "chesa": 28349, - "chesapeake": 32909, - "cheshire": 17130, - "chesney": 48747, - "chess": 27170, - "chess": 8397, - "chest": 18217, - "chest": 10563, - "chester": 10466, - "chester": 3343, - "chesterfield": 32975, - "chestnut": 21834, - "chet": 9663, - "chett": 24695, - "chev": 7152, - "chev": 41145, - "chevro": 12850, - "chevrolet": 13240, - "chevron": 33792, - "chevy": 16581, - "chew": 32645, - "chew": 22642, - "chewan": 23689, - "chewbacca": 49355, - "chewing": 31486, - "chewy": 42940, - "chey": 26968, - "chey": 31208, - "cheyenne": 34805, - "chez": 49183, - "chez": 10556, - "chf": 33021, - "chfield": 41619, - "chhat": 34127, - "chhattisgarh": 44246, - "chi": 1337, - "chi": 4039, - "chia": 19147, - "chiang": 33764, - "chibi": 22306, - "chic": 2627, - "chic": 9091, - "chica": 44190, - "chicag": 16778, - "chicago": 15038, - "chicago": 3530, - "chicagof": 40638, - "chicagofire": 46576, - "chicas": 40664, - "chichester": 43823, - "chick": 3170, - "chick": 11238, - "chicken": 26322, - "chicken": 3717, - "chickens": 21658, - "chickpea": 48109, - "chicks": 17810, - "chico": 30379, - "chie": 40046, - "chie": 12388, - "chief": 16830, - "chief": 3455, - "chiefs": 11419, - "chiev": 47761, - "chiff": 27407, - "chiffon": 31817, - "chig": 42952, - "chihu": 22857, - "chihuahu": 25437, - "chihuahua": 30181, - "chik": 45455, - "chil": 1333, - "child": 4392, - "child": 2913, - "childcare": 31133, - "childhood": 34772, - "childhood": 7551, - "childish": 31939, - "childre": 2135, - "children": 11101, - "children": 2153, - "childrens": 31551, - "childrens": 21553, - "childs": 39521, - "chile": 10022, - "chilean": 33186, - "chili": 13033, - "chill": 6498, - "chill": 6382, - "chilled": 23540, - "chillen": 45160, - "chilli": 26787, - "chilli": 17067, - "chillin": 10347, - "chilling": 10179, - "chillout": 39842, - "chills": 25460, - "chilly": 14450, - "chim": 10543, - "chimney": 26821, - "chimp": 44374, - "chin": 6555, - "chin": 8979, - "china": 38943, - "china": 2817, - "chinatown": 28582, - "chine": 4013, - "chinese": 30568, - "chinese": 4271, - "ching": 34621, - "ching": 1439, - "chino": 47181, - "chino": 27440, - "chinook": 41577, - "chinson": 33786, - "chio": 19650, - "chip": 19271, - "chip": 8730, - "chipmun": 46384, - "chipot": 17702, - "chipotle": 19284, - "chipp": 39854, - "chippe": 46541, - "chipped": 39892, - "chipping": 40323, - "chips": 8855, - "chir": 15564, - "chiro": 23413, - "chiroprac": 25987, - "chiropractic": 34437, - "chis": 19920, - "chistan": 20523, - "chiswick": 47290, - "chit": 13515, - "chit": 45626, - "chita": 49184, - "chitec": 39862, - "chive": 29222, - "chives": 34921, - "chk": 47424, - "chl": 38592, - "chley": 47748, - "chlo": 10374, - "chloe": 39966, - "chloe": 13992, - "chlor": 23135, - "chman": 35835, - "chment": 20848, - "chner": 48277, - "cho": 1327, - "cho": 5150, - "choa": 43077, - "choc": 32772, - "choc": 21983, - "choco": 46285, - "choco": 32692, - "chocol": 3443, - "chocolat": 44631, - "chocolate": 29389, - "chocolate": 3820, - "chocolates": 24120, - "choi": 23749, - "choic": 35606, - "choice": 23857, - "choice": 4051, - "choices": 11016, - "choir": 9214, - "choirs": 43277, - "choke": 30231, - "choked": 43521, - "choker": 39642, - "choking": 39993, - "chol": 19802, - "cholera": 45999, - "cholester": 26861, - "cholesterol": 27982, - "chom": 25151, - "chon": 20416, - "chon": 21601, - "chondri": 37379, - "chong": 26220, - "choo": 3869, - "choo": 24437, - "chool": 29578, - "chools": 41958, - "choose": 22756, - "choose": 5073, - "chooses": 29923, - "choosing": 13475, - "chop": 10458, - "chop": 16663, - "chopin": 42256, - "chopped": 22580, - "chopper": 24011, - "chopping": 35375, - "chopra": 24258, - "chops": 26321, - "chor": 7567, - "chor": 47795, - "choral": 26684, - "chord": 33005, - "chords": 36152, - "choreo": 17443, - "choreographer": 35952, - "choreography": 32749, - "chores": 40483, - "chori": 25718, - "chorizo": 30802, - "chorus": 20869, - "chos": 26559, - "chose": 11090, - "chosen": 10044, - "chou": 16960, - "chou": 42917, - "choudhary": 45503, - "chow": 20257, - "chow": 21657, - "chowder": 37886, - "chp": 35896, - "chr": 36918, - "chri": 1135, - "chris": 9907, - "chris": 2978, - "chrisbrown": 41035, - "chriss": 46745, - "chrissy": 44762, - "chrissy": 40485, - "christ": 1403, - "christ": 6703, - "christchurch": 27100, - "christen": 31956, - "christensen": 42226, - "christi": 3328, - "christi": 33213, - "christian": 11792, - "christian": 4729, - "christianity": 20000, - "christians": 14842, - "christie": 16084, - "christin": 30189, - "christina": 15925, - "christine": 42610, - "christine": 14712, - "christma": 12039, - "christmas": 18174, - "christmas": 1677, - "christmaseve": 44381, - "christmass": 44873, - "christop": 7917, - "christoph": 47844, - "christophe": 45486, - "christopher": 33349, - "christopher": 9630, - "christy": 28331, - "chro": 13207, - "chromatic": 44207, - "chrome": 24843, - "chrome": 9529, - "chromo": 35809, - "chron": 5577, - "chron": 39781, - "chronic": 10115, - "chronic": 13677, - "chronicle": 20034, - "chronicles": 18905, - "chrono": 29387, - "chronograph": 38397, - "chry": 13508, - "chrysler": 20078, - "chs": 40277, - "chs": 8391, - "chsnews": 44919, - "cht": 11384, - "chter": 47811, - "chu": 3799, - "chu": 13622, - "chubby": 29109, - "chuck": 13211, - "chuck": 9894, - "chuckle": 35733, - "chucky": 42026, - "chuffed": 27233, - "chuk": 25878, - "chuk": 27221, - "chul": 33001, - "chum": 46869, - "chum": 41767, - "chun": 14693, - "chun": 25391, - "chung": 28418, - "chunk": 30275, - "chunks": 45538, - "chunky": 27978, - "chups": 46331, - "chur": 2309, - "church": 14956, - "church": 2735, - "churches": 15539, - "churchill": 17527, - "chus": 36246, - "chut": 28788, - "chutney": 36261, - "chy": 15131, - "chy": 8096, - "chyna": 43398, - "châ": 48669, - "ci": 698, - "ci": 5798, - "cia": 4019, - "cial": 1143, - "cian": 32323, - "ciao": 37677, - "ciara": 31369, - "cible": 28873, - "cic": 14539, - "cic": 21517, - "cid": 27359, - "cide": 34178, - "cider": 13547, - "cides": 41326, - "cie": 19730, - "cier": 24067, - "cies": 6785, - "cif": 35698, - "cigar": 26031, - "cigar": 16525, - "cigare": 13044, - "cigarette": 18548, - "cigarettes": 22750, - "cigars": 20750, - "cii": 42408, - "cil": 9217, - "cil": 2998, - "cilan": 33998, - "cilantro": 34568, - "cili": 18977, - "ciliation": 25294, - "cim": 30021, - "cin": 2396, - "cin": 25367, - "cina": 39467, - "cincin": 13291, - "cincinnati": 14197, - "cinco": 25131, - "cincode": 40930, - "cincodemayo": 42542, - "cincy": 30015, - "cincy": 30286, - "cinde": 20660, - "cinderella": 21515, - "cindy": 34439, - "cindy": 18532, - "cine": 4015, - "cine": 27451, - "cinema": 38251, - "cinema": 6443, - "cinemas": 14845, - "cinematic": 25602, - "cinemato": 21919, - "cinematographer": 39059, - "cinematography": 33802, - "ciner": 39882, - "cing": 4014, - "cini": 25699, - "cinnam": 12768, - "cinnamon": 13460, - "cino": 18616, - "cio": 44584, - "cio": 9954, - "cion": 22024, - "ciones": 37155, - "cious": 38466, - "cip": 32884, - "cir": 2459, - "cir": 41135, - "circa": 10411, - "circle": 33574, - "circle": 7117, - "circles": 19411, - "circling": 46036, - "circu": 5143, - "circuit": 35583, - "circuit": 9801, - "circuits": 33260, - "circul": 16618, - "circular": 19733, - "circulare": 39525, - "circulareconomy": 39878, - "circulated": 46258, - "circulating": 42980, - "circulation": 27880, - "circum": 13406, - "circumstances": 18786, - "circus": 11833, - "cirque": 36049, - "cis": 9459, - "cis": 23513, - "cisco": 36689, - "cisco": 19290, - "cise": 19657, - "cisely": 33434, - "cision": 41957, - "cism": 24166, - "cist": 40906, - "cit": 4420, - "cit": 31294, - "citadel": 38036, - "citation": 33581, - "cite": 32641, - "cited": 25069, - "cites": 34490, - "citi": 4280, - "citi": 30270, - "cities": 5441, - "citing": 29088, - "citiz": 5816, - "citizen": 11720, - "citizen": 9814, - "citizens": 7949, - "citizenship": 17386, - "cito": 42636, - "citro": 27941, - "citroen": 35805, - "citrus": 17379, - "city": 5002, - "city": 1305, - "cityfc": 28751, - "cityo": 25709, - "cityof": 11595, - "cityscape": 40808, - "ciu": 39693, - "cius": 42559, - "civ": 40039, - "civic": 32240, - "civic": 11888, - "civil": 6923, - "civil": 6450, - "civilian": 21187, - "civilians": 18076, - "civilization": 22503, - "civilwar": 34524, - "ción": 44700, - "cj": 15238, - "cj": 15205, - "ck": 916, - "ck": 868, - "cke": 25224, - "cke": 40989, - "cked": 3441, - "cken": 25566, - "cker": 15509, - "cker": 4744, - "ckers": 37073, - "cket": 5525, - "ckett": 33899, - "ckey": 15029, - "ckey": 3657, - "cki": 36916, - "cki": 41055, - "cking": 4805, - "cko": 28818, - "cks": 2031, - "cky": 26229, - "cky": 3083, - "cl": 969, - "cl": 6482, - "cla": 940, - "cla": 20636, - "clad": 31606, - "cladding": 46411, - "clai": 29459, - "claim": 4290, - "claim": 6607, - "claimed": 9010, - "claiming": 15286, - "claims": 6852, - "clair": 31441, - "clair": 14039, - "claire": 20410, - "claire": 10460, - "clam": 13588, - "clam": 32598, - "clamation": 21793, - "clamp": 41501, - "clams": 38849, - "clan": 29252, - "clan": 14114, - "clancy": 37227, - "clans": 38279, - "clap": 30037, - "clap": 25546, - "clapham": 43619, - "clapton": 37683, - "clar": 3617, - "clara": 19468, - "clare": 18948, - "clare": 15927, - "claremont": 47789, - "clarence": 29320, - "clari": 15175, - "clarify": 37004, - "clarinet": 41178, - "clarity": 21323, - "clark": 13340, - "clark": 7521, - "clarke": 11548, - "clarkson": 25706, - "clas": 32003, - "clash": 38367, - "clash": 9359, - "clashes": 25193, - "clasico": 43567, - "class": 2876, - "class": 1874, - "classes": 6919, - "classi": 2507, - "classic": 9353, - "classic": 2713, - "classical": 22179, - "classical": 11355, - "classicalmusic": 27806, - "classiccar": 46906, - "classiccars": 21064, - "classics": 10634, - "classification": 26612, - "classified": 22056, - "classmate": 37090, - "classmates": 30062, - "classof": 25345, - "classroom": 9001, - "classrooms": 25768, - "classy": 11615, - "clau": 7526, - "claude": 17461, - "claudi": 39439, - "claudia": 21893, - "claudio": 31230, - "claus": 23317, - "clause": 26151, - "clave": 24111, - "claw": 49230, - "claw": 19106, - "claws": 29161, - "clay": 10402, - "clay": 8823, - "clays": 26128, - "clayton": 46445, - "clayton": 19413, - "clc": 31380, - "cle": 1321, - "cle": 2537, - "clean": 3572, - "clean": 3772, - "cleaned": 17468, - "cleanenergy": 43538, - "cleaner": 15619, - "cleaners": 33258, - "cleaning": 7210, - "cleanliness": 47886, - "cleans": 40827, - "cleanse": 28717, - "cleanser": 44170, - "cleansing": 25931, - "cleanup": 22353, - "clear": 4631, - "clear": 3143, - "clearance": 17959, - "cleared": 14880, - "clearer": 37031, - "clearing": 15481, - "clearly": 7767, - "clears": 29092, - "clearwater": 32124, - "cleary": 44342, - "cleats": 33486, - "cleavage": 44165, - "cled": 12827, - "clegg": 42915, - "clemens": 45896, - "clement": 22592, - "clement": 24714, - "clemente": 42461, - "clementine": 47112, - "clements": 49175, - "clemson": 38170, - "clemson": 19537, - "clen": 35547, - "cleo": 40344, - "cleop": 36287, - "cleopatra": 41212, - "cler": 11828, - "clergy": 42635, - "cleric": 43748, - "clerk": 22230, - "clermont": 47529, - "cles": 8077, - "cleve": 37599, - "clevel": 7701, - "cleveland": 30716, - "cleveland": 8430, - "clever": 30977, - "clever": 13385, - "clg": 47546, - "cli": 1503, - "clich": 44407, - "click": 16676, - "click": 3585, - "clicked": 29015, - "clicking": 26542, - "clicks": 31250, - "client": 48528, - "client": 7467, - "clients": 8114, - "clif": 13182, - "cliff": 23827, - "cliff": 10625, - "cliffe": 15170, - "clifford": 24226, - "cliffs": 20953, - "clifton": 23878, - "climat": 37283, - "climate": 7854, - "climate": 4589, - "climateaction": 31622, - "climatechange": 11055, - "climates": 46022, - "climax": 37033, - "climb": 7421, - "climb": 10649, - "climbed": 22528, - "climber": 36910, - "climbers": 47648, - "climbing": 9877, - "climbs": 29098, - "clin": 2879, - "clinch": 30404, - "clinched": 44064, - "cline": 37460, - "cling": 37068, - "cling": 4760, - "clinic": 7926, - "clinical": 35133, - "clinical": 9148, - "clinicians": 45866, - "clinics": 23330, - "clint": 37542, - "clint": 21160, - "clinton": 34403, - "clinton": 5820, - "clio": 46889, - "clip": 39712, - "clip": 9289, - "clipped": 45524, - "clipper": 42245, - "clippers": 23319, - "clipping": 47484, - "clips": 16594, - "clique": 34983, - "clive": 36086, - "clive": 21509, - "cll": 46091, - "cllr": 45743, - "cllr": 23034, - "clo": 1194, - "cloak": 36528, - "clock": 19878, - "clock": 6716, - "clocked": 49049, - "clocks": 25895, - "clockwise": 46150, - "clockwork": 42297, - "clon": 24477, - "clone": 22854, - "clones": 48047, - "clooney": 33161, - "clos": 48821, - "close": 10603, - "close": 2660, - "closed": 4552, - "closely": 13478, - "closer": 6377, - "closes": 11354, - "closest": 14975, - "closet": 14221, - "closeup": 35439, - "closing": 7101, - "closure": 13249, - "closures": 22923, - "cloth": 14559, - "clothes": 7080, - "clothing": 7425, - "clou": 4069, - "cloud": 12965, - "cloud": 3887, - "cloudcomputing": 41390, - "clouds": 6244, - "cloudy": 13106, - "clough": 42909, - "clover": 39574, - "clover": 22812, - "clow": 18386, - "clown": 15329, - "clowns": 30820, - "cls": 44251, - "clt": 29651, - "clt": 24236, - "clu": 996, - "club": 9642, - "club": 1736, - "clubbing": 48128, - "clubhouse": 26553, - "clubs": 9437, - "clue": 14994, - "clueless": 35350, - "clues": 23764, - "clusive": 41362, - "cluster": 15595, - "clusters": 33217, - "clut": 28507, - "clutch": 13953, - "clutter": 40804, - "cly": 12037, - "clyde": 39557, - "clyde": 18469, - "cm": 10190, - "cm": 3741, - "cma": 30554, - "cma": 31388, - "cmc": 45839, - "cmdr": 48250, - "cme": 34946, - "cmo": 24589, - "cmon": 42904, - "cmp": 46355, - "cms": 22520, - "cmt": 42727, - "cmu": 43046, - "cn": 3886, - "cn": 16200, - "cna": 48287, - "cnbc": 41242, - "cnbc": 24371, - "cnblue": 36018, - "cnc": 20571, - "cnet": 47487, - "cnews": 24319, - "cng": 41496, - "cnn": 22405, - "cnn": 8259, - "cns": 46095, - "cny": 31614, - "co": 622, - "co": 1320, - "coa": 29167, - "coach": 3275, - "coach": 2312, - "coached": 30228, - "coachella": 20222, - "coaches": 6924, - "coaching": 7766, - "coal": 10227, - "coal": 7919, - "coalition": 12920, - "coast": 6398, - "coast": 3720, - "coastal": 38246, - "coastal": 10852, - "coaster": 15944, - "coasters": 31548, - "coastguard": 40601, - "coastline": 27959, - "coasts": 42225, - "coat": 28869, - "coat": 7356, - "coated": 23401, - "coates": 36899, - "coating": 25369, - "coatings": 48706, - "coats": 18075, - "cob": 20140, - "cob": 32863, - "cobain": 36866, - "cobalt": 30896, - "cobb": 22719, - "cobble": 47894, - "cobra": 21574, - "coc": 23036, - "coc": 39498, - "coca": 21197, - "cocac": 26393, - "cocacola": 31248, - "cocaine": 20534, - "coch": 18599, - "cochran": 48798, - "cochrane": 41752, - "coco": 11850, - "coco": 13316, - "cocoa": 18074, - "cocon": 8597, - "coconut": 9581, - "cod": 16132, - "cod": 11915, - "code": 11582, - "code": 3217, - "coded": 33703, - "coden": 43914, - "coder": 41561, - "codes": 14566, - "codi": 39711, - "coding": 12647, - "cody": 23222, - "cody": 12666, - "coe": 15386, - "coed": 41028, - "coel": 45633, - "coer": 41198, - "coeur": 44986, - "coffe": 2255, - "coffee": 12898, - "coffee": 2453, - "coffees": 41184, - "coffey": 48066, - "cofficial": 18757, - "coffin": 29907, - "cog": 26362, - "cog": 35960, - "cogn": 12210, - "cognac": 44361, - "cognition": 46825, - "cognitive": 16584, - "cohe": 20669, - "cohen": 13381, - "coherent": 48450, - "cohort": 22782, - "coil": 25307, - "coim": 41528, - "coin": 14651, - "coin": 4170, - "coinci": 14015, - "coincidence": 19807, - "coins": 10530, - "coke": 39602, - "coke": 14035, - "col": 754, - "col": 9371, - "cola": 15444, - "colbert": 31647, - "colby": 32068, - "colchester": 31715, - "cold": 11146, - "cold": 3153, - "colder": 23859, - "coldest": 31438, - "coldplay": 27770, - "cole": 9305, - "cole": 8166, - "coleman": 15774, - "coles": 40265, - "coles": 30398, - "coli": 18877, - "coli": 15910, - "colin": 20989, - "colin": 10238, - "coliseum": 21836, - "coll": 25982, - "coll": 23898, - "colla": 2929, - "collab": 14013, - "collabor": 4437, - "collaborate": 21271, - "collaborated": 42265, - "collaborating": 25545, - "collaboration": 6642, - "collaborations": 36520, - "collaborative": 15841, - "collaborator": 48186, - "collaborators": 45901, - "collage": 11258, - "collagen": 36120, - "collap": 16881, - "collapse": 16520, - "collapsed": 25037, - "collapses": 43601, - "collar": 39662, - "collar": 13497, - "collateral": 44512, - "colle": 1801, - "colleague": 13067, - "colleagues": 8203, - "collec": 1733, - "collect": 10186, - "collected": 11980, - "collecti": 18530, - "collectible": 25680, - "collectibles": 21519, - "collecting": 10325, - "collection": 2548, - "collections": 12760, - "collective": 10162, - "collectively": 40687, - "collector": 13522, - "collectors": 20540, - "collects": 31576, - "colleen": 31020, - "college": 13512, - "college": 2229, - "colleges": 17357, - "collegi": 16311, - "collegiate": 18068, - "colli": 8262, - "collide": 27214, - "collie": 30611, - "collier": 35748, - "collin": 24056, - "collin": 32116, - "colling": 32319, - "collingwood": 45873, - "collins": 8684, - "collision": 15407, - "collo": 25115, - "colloqui": 37243, - "colloquium": 46514, - "collu": 25658, - "collusion": 33864, - "colo": 7300, - "colo": 27288, - "cologne": 22216, - "cology": 19187, - "colom": 8987, - "colombia": 12901, - "colombian": 28701, - "colombo": 33207, - "colon": 8280, - "colon": 29050, - "colonel": 22674, - "coloni": 22667, - "colonial": 16530, - "colonialism": 43385, - "colonies": 38738, - "colony": 18767, - "color": 4036, - "color": 3140, - "colorado": 34580, - "colorado": 6742, - "colorec": 41171, - "colored": 11775, - "colorful": 11444, - "colori": 28764, - "coloring": 17696, - "colorized": 46730, - "colors": 5389, - "colorstv": 28195, - "colorway": 44576, - "colossal": 40258, - "colosse": 48142, - "colossus": 34022, - "colour": 10240, - "colour": 4769, - "coloured": 17111, - "colourful": 15562, - "colouring": 31803, - "colours": 7626, - "cols": 35726, - "colt": 19726, - "colton": 32249, - "coltrane": 42333, - "colts": 16135, - "colum": 4164, - "columb": 31043, - "columbi": 25947, - "columbia": 9410, - "columbus": 11273, - "column": 10593, - "columnist": 28958, - "columns": 29056, - "com": 610, - "com": 2464, - "coma": 19620, - "comb": 3587, - "comb": 16380, - "combat": 35083, - "combat": 9275, - "combating": 46121, - "combe": 14363, - "combin": 25112, - "combination": 11312, - "combinations": 34950, - "combine": 12919, - "combined": 10427, - "combines": 22991, - "combining": 23561, - "combo": 10155, - "combos": 48117, - "combs": 30694, - "combu": 35629, - "combustion": 44654, - "comcast": 30043, - "come": 4225, - "come": 891, - "comeback": 8234, - "comedian": 13848, - "comedians": 33758, - "comedic": 43360, - "comedy": 19346, - "comedy": 4749, - "comer": 42997, - "comer": 20916, - "comers": 34436, - "comes": 2091, - "comet": 21405, - "comets": 40636, - "comey": 22957, - "comfor": 6563, - "comfort": 44000, - "comfort": 7808, - "comfortable": 8652, - "comfortably": 30392, - "comforting": 33835, - "comforts": 42243, - "comfy": 15736, - "comi": 40781, - "comic": 7729, - "comic": 4962, - "comicart": 46018, - "comicbook": 46564, - "comicbooks": 22018, - "comiccon": 18379, - "comicon": 43820, - "comics": 4256, - "comin": 18164, - "coming": 14916, - "coming": 1171, - "comingsoon": 19894, - "comm": 965, - "comm": 11413, - "comman": 39780, - "command": 18391, - "command": 11350, - "commander": 11265, - "commanders": 41667, - "commanding": 36933, - "commandments": 43409, - "commando": 31361, - "commands": 38163, - "comme": 29692, - "commemor": 9495, - "commemorate": 21242, - "commemorates": 45149, - "commemorating": 28734, - "commemoration": 29288, - "commemorative": 24623, - "commen": 15795, - "commence": 25059, - "commenced": 43908, - "commencement": 21666, - "commences": 48551, - "commend": 37555, - "commended": 40702, - "comment": 20035, - "comment": 5761, - "commentary": 14146, - "commentator": 32016, - "commented": 28328, - "commenting": 37292, - "comments": 6606, - "commer": 4028, - "commerce": 8333, - "commerci": 15601, - "commercial": 31802, - "commercial": 6287, - "commercials": 30724, - "commish": 45399, - "commissi": 6000, - "commission": 5292, - "commissioned": 16565, - "commissioner": 10221, - "commissioners": 30702, - "commissioning": 29585, - "commissions": 20668, - "commit": 3041, - "commit": 11797, - "commitment": 7770, - "commitments": 32136, - "commits": 20241, - "committed": 7907, - "committee": 5636, - "committees": 40504, - "committing": 21937, - "commod": 9496, - "commodities": 30350, - "commodity": 29041, - "commodore": 31129, - "common": 8414, - "common": 4176, - "commonly": 20344, - "commons": 16653, - "commonwealth": 16569, - "comms": 18832, - "commu": 9561, - "commun": 1515, - "communal": 32809, - "communi": 16164, - "communic": 4784, - "communicate": 19809, - "communication": 7999, - "communications": 10052, - "communion": 28579, - "communism": 35387, - "communist": 18602, - "communities": 6361, - "community": 14784, - "community": 1927, - "commute": 15898, - "commuter": 27782, - "commuters": 30823, - "commuting": 43503, - "como": 16236, - "comp": 2561, - "comp": 11679, - "compac": 40014, - "compact": 13690, - "compan": 1995, - "companies": 5361, - "companion": 14963, - "companions": 37124, - "company": 2634, - "compar": 7580, - "comparable": 27092, - "comparative": 33388, - "compare": 13771, - "compared": 10544, - "compares": 25104, - "comparing": 20564, - "comparison": 14186, - "comparisons": 40870, - "compart": 30072, - "compartment": 40383, - "compass": 19438, - "compassion": 14463, - "compassionate": 30193, - "compati": 17295, - "compatibility": 41614, - "compatible": 21286, - "compe": 5254, - "compelled": 49375, - "compelling": 21766, - "compen": 42079, - "compens": 15172, - "compensation": 18663, - "compet": 2932, - "compete": 10038, - "competed": 27767, - "competen": 31853, - "competence": 31165, - "competency": 49293, - "competent": 28113, - "competes": 39826, - "competing": 13068, - "competit": 15892, - "competiti": 32581, - "competition": 3742, - "competitions": 23259, - "competitive": 10687, - "competitiveness": 43209, - "competitor": 26633, - "competitors": 23638, - "compilation": 20446, - "compiled": 34579, - "compla": 7428, - "complain": 19292, - "complained": 42029, - "complaining": 20812, - "complains": 46363, - "complaint": 20391, - "complaints": 20020, - "comple": 1730, - "complement": 36624, - "complementary": 48953, - "complete": 3263, - "completed": 5976, - "completely": 5989, - "completes": 19321, - "completing": 14949, - "completion": 15915, - "complex": 16099, - "complex": 6324, - "complexes": 47870, - "complexion": 47732, - "complexity": 24815, - "compli": 5270, - "compliance": 14658, - "compliant": 29893, - "complic": 11460, - "complicated": 16621, - "complications": 29936, - "compliment": 25116, - "complimentary": 20948, - "compliments": 25477, - "comply": 36281, - "component": 21284, - "components": 16816, - "compos": 7783, - "compose": 43659, - "composed": 19916, - "composer": 12104, - "composers": 33314, - "composing": 40412, - "composite": 21606, - "composites": 45395, - "composition": 17510, - "compositions": 44652, - "compost": 46002, - "compost": 33307, - "compound": 19980, - "compounds": 33991, - "compre": 8483, - "compreh": 42976, - "comprehen": 12050, - "comprehend": 48230, - "comprehensive": 13854, - "compress": 33353, - "compressed": 42359, - "compression": 25638, - "compressor": 39607, - "compri": 29445, - "compromise": 26611, - "compromised": 38576, - "compromising": 45436, - "comps": 48665, - "compton": 28364, - "compu": 11639, - "compul": 25869, - "compulsory": 39345, - "computing": 12732, - "comra": 25553, - "comrade": 30844, - "comrades": 29282, - "coms": 30493, - "con": 616, - "con": 2457, - "cona": 30605, - "conan": 24750, - "conce": 9145, - "concealed": 35419, - "conceded": 37895, - "conceived": 39725, - "concentr": 11085, - "concentrate": 30846, - "concentrated": 36776, - "concentration": 18565, - "concep": 8389, - "concepcion": 47035, - "concept": 6353, - "conceptart": 31162, - "conception": 30510, - "conceptions": 40307, - "concepts": 16763, - "conceptu": 42745, - "conceptual": 34070, - "concer": 2228, - "concern": 12928, - "concerned": 12020, - "concerning": 21772, - "concerns": 11134, - "concert": 32180, - "concert": 3066, - "concerto": 24710, - "concerts": 14418, - "concession": 38117, - "concessions": 43981, - "concier": 28859, - "concierge": 39850, - "conclave": 38098, - "conclu": 9627, - "conclude": 37525, - "concluded": 27825, - "concludes": 30634, - "conclusion": 20932, - "conclusions": 39507, - "conco": 43034, - "concor": 19913, - "concord": 26448, - "concordia": 35492, - "concours": 36282, - "concourse": 37793, - "concre": 43658, - "concrete": 9637, - "concussion": 28321, - "condem": 13287, - "condemn": 27212, - "condemned": 35145, - "condemns": 32092, - "conden": 24816, - "conditi": 11170, - "condition": 36978, - "condition": 7336, - "conditional": 24671, - "conditioned": 37014, - "conditioner": 31239, - "conditioning": 18181, - "conditions": 5892, - "condo": 19952, - "condol": 18661, - "condolences": 20836, - "condom": 39021, - "condomin": 42589, - "condoms": 37878, - "condor": 47643, - "condos": 42342, - "condu": 40772, - "conduc": 5379, - "conduct": 11647, - "conducted": 13080, - "conducting": 16787, - "conductor": 22317, - "conducts": 32084, - "cone": 39279, - "cone": 10266, - "cones": 26718, - "coney": 41837, - "conf": 6477, - "confe": 1968, - "confeder": 17104, - "confederate": 24864, - "confederation": 43484, - "conferen": 37961, - "conference": 2230, - "conferences": 22811, - "conferencing": 47320, - "confess": 38860, - "confession": 22572, - "confessions": 29404, - "confetti": 37923, - "confi": 5005, - "confidence": 8510, - "confident": 12365, - "confidential": 28712, - "configu": 46746, - "configur": 26950, - "configuration": 33378, - "confin": 45316, - "confined": 40973, - "confir": 3930, - "confirm": 12130, - "confirmation": 19645, - "confirmed": 6346, - "confirming": 38433, - "confirms": 11803, - "confis": 36285, - "confit": 42241, - "confl": 8173, - "conflic": 19029, - "conflict": 10397, - "conflicting": 43894, - "conflicts": 28713, - "confor": 40933, - "confron": 20033, - "confront": 38382, - "confrontation": 41478, - "confu": 6890, - "confuse": 37503, - "confused": 10946, - "confusing": 24683, - "confusion": 20493, - "cong": 24407, - "conge": 20013, - "congestion": 24432, - "congo": 20334, - "congr": 1227, - "congrats": 1887, - "congratul": 1750, - "congratulate": 16633, - "congratulated": 42004, - "congratulates": 24580, - "congratulating": 30967, - "congratulation": 24751, - "congratulations": 1864, - "congre": 7947, - "congreg": 40727, - "congregation": 32618, - "congress": 12452, - "congress": 4599, - "congressional": 15239, - "congressman": 17145, - "congresswoman": 37317, - "coni": 39031, - "coni": 36651, - "conj": 41543, - "conju": 33821, - "conjunction": 34226, - "conley": 44536, - "conline": 37593, - "conn": 41836, - "conn": 20329, - "conne": 8437, - "connec": 29933, - "connect": 19969, - "connected": 27506, - "connecting": 41429, - "connection": 26840, - "connections": 37161, - "connie": 25739, - "connoisse": 46012, - "connol": 27739, - "connolly": 29537, - "connor": 21984, - "connor": 10218, - "conom": 2664, - "conomy": 22529, - "conor": 29955, - "conor": 19478, - "conqu": 13382, - "conquer": 38585, - "conquer": 19821, - "conquered": 27099, - "conquering": 43778, - "conquest": 35367, - "conrad": 22073, - "cons": 10311, - "consci": 9427, - "conscience": 27310, - "conscious": 14914, - "consciously": 46755, - "consciousness": 17894, - "conse": 34887, - "consecu": 12084, - "consecutive": 12413, - "consen": 23110, - "consensus": 25071, - "consent": 21922, - "consequ": 13003, - "consequence": 42262, - "consequences": 15682, - "conserv": 4649, - "conservancy": 46729, - "conservation": 37616, - "conservation": 8322, - "conservative": 11421, - "conservatives": 17631, - "conservatory": 32140, - "conserve": 34231, - "consi": 2899, - "consider": 12471, - "consider": 6734, - "considerable": 38256, - "considerably": 38510, - "consideration": 24310, - "considerations": 33700, - "considered": 9487, - "considering": 10761, - "considers": 24691, - "consist": 10410, - "consist": 33735, - "consisted": 49354, - "consistency": 25683, - "consistent": 16439, - "consistently": 23799, - "consisting": 39241, - "consists": 23458, - "consol": 27869, - "consolation": 38888, - "console": 13403, - "consoles": 33136, - "consoli": 21586, - "consolidation": 41111, - "consor": 27108, - "consortium": 29988, - "conspir": 12680, - "conspiracy": 15236, - "const": 3826, - "constable": 29179, - "constan": 38718, - "constance": 40682, - "constant": 32000, - "constant": 13111, - "constantine": 30640, - "constantly": 14336, - "constell": 21913, - "constellation": 25991, - "constitu": 6299, - "constituency": 22464, - "constituents": 32075, - "constitution": 12157, - "constitutional": 16091, - "constra": 28973, - "constraints": 41910, - "constru": 3983, - "construc": 13321, - "construct": 24467, - "constructed": 16876, - "constructing": 33653, - "construction": 48873, - "construction": 4585, - "constructive": 31810, - "consu": 4689, - "consul": 5295, - "consul": 33630, - "consulate": 34341, - "consult": 9438, - "consult": 26727, - "consultancy": 31735, - "consultant": 14196, - "consultants": 27203, - "consultation": 15777, - "consultations": 43424, - "consulting": 15883, - "consume": 28919, - "consumed": 29653, - "consumer": 34408, - "consumer": 10422, - "consumers": 14014, - "consuming": 30607, - "consumption": 14904, - "cont": 2036, - "cont": 21425, - "contact": 39367, - "contact": 3523, - "contacted": 37331, - "contacts": 22789, - "contag": 29259, - "contagious": 33984, - "contain": 9948, - "contain": 15187, - "contained": 23836, - "container": 14913, - "containers": 20448, - "containing": 20281, - "contains": 12844, - "contamin": 24662, - "contaminated": 35773, - "contamination": 31770, - "conte": 15402, - "conte": 26882, - "contempl": 21924, - "contemplating": 33854, - "contempor": 14538, - "contemporary": 16607, - "contemporary": 8859, - "contemporaryart": 20212, - "contempt": 39293, - "conten": 42201, - "contender": 23573, - "contenders": 29711, - "content": 15526, - "content": 4750, - "contentmarketing": 20429, - "contents": 14850, - "contest": 23103, - "contest": 4576, - "contestalert": 27313, - "contestant": 25682, - "contestants": 28062, - "contested": 37845, - "contests": 32210, - "contex": 42015, - "context": 13089, - "conti": 46431, - "conti": 40842, - "contin": 1918, - "continent": 19623, - "continental": 14089, - "continents": 38642, - "conting": 27104, - "contingent": 36467, - "continu": 4688, - "continually": 34086, - "continuation": 38964, - "continue": 3942, - "continued": 10150, - "continues": 4305, - "continuing": 11009, - "continuity": 34035, - "continuous": 17033, - "continuously": 29634, - "continuum": 44978, - "contour": 34733, - "contr": 22871, - "contra": 9880, - "contra": 38620, - "contrac": 7581, - "contracep": 35109, - "contract": 6120, - "contracting": 39091, - "contractor": 21429, - "contractors": 22427, - "contracts": 16563, - "contradic": 27957, - "contrary": 32805, - "contrast": 18501, - "contrasting": 40758, - "contribu": 4753, - "contribute": 14112, - "contributed": 19397, - "contributes": 34203, - "contributing": 21762, - "contribution": 11116, - "contributions": 14465, - "contributor": 24553, - "contributors": 32908, - "contro": 2372, - "control": 9963, - "control": 3366, - "controlled": 14140, - "controller": 12929, - "controllers": 30374, - "controlling": 26427, - "controls": 15746, - "controversi": 13674, - "controversial": 14617, - "controversy": 18659, - "conv": 48382, - "conve": 18421, - "conven": 7283, - "conveni": 33278, - "convenience": 17859, - "convenient": 18978, - "conveniently": 40844, - "convention": 6752, - "conventional": 20835, - "conventions": 41404, - "conver": 6336, - "convergence": 35381, - "convers": 4577, - "conversation": 5690, - "conversations": 12326, - "converse": 24149, - "conversion": 15111, - "conversions": 44137, - "convert": 20074, - "converted": 20808, - "converter": 34611, - "convertible": 19608, - "converting": 34674, - "converts": 42470, - "convey": 38342, - "convic": 11150, - "convicted": 18668, - "conviction": 24967, - "convictions": 44366, - "convin": 12889, - "convince": 20351, - "convinced": 17388, - "convincing": 27742, - "convo": 19372, - "convocation": 30674, - "convos": 44842, - "convoy": 30292, - "conway": 21410, - "conwy": 48971, - "cony": 14501, - "coo": 1664, - "coo": 21691, - "coogs": 47624, - "cook": 9726, - "cook": 5977, - "cookbook": 21086, - "cooke": 29979, - "cooked": 11452, - "cooker": 23806, - "cookery": 38779, - "cookie": 9367, - "cookies": 8320, - "cookin": 46610, - "cooking": 39248, - "cooking": 6283, - "cookout": 39743, - "cooks": 24256, - "cool": 5594, - "cool": 2077, - "cooled": 37170, - "cooler": 11078, - "coolest": 10566, - "cooling": 15291, - "coom": 41726, - "coon": 34260, - "coon": 16958, - "coop": 39917, - "coop": 18910, - "cooper": 7264, - "cooper": 8133, - "cooperate": 42936, - "cooperation": 11785, - "cooperative": 24517, - "coops": 48531, - "coordin": 8187, - "coordinate": 38250, - "coordinated": 32540, - "coordinating": 40075, - "coordination": 25611, - "coordinator": 13967, - "coors": 36025, - "cop": 3196, - "cop": 7070, - "copa": 22749, - "copd": 45876, - "cope": 47635, - "cope": 12564, - "copeland": 37604, - "copen": 15637, - "copenhagen": 17390, - "coper": 41891, - "copernic": 45519, - "copied": 36770, - "copies": 9851, - "coping": 30545, - "copolitics": 45846, - "copp": 20937, - "copped": 42229, - "copper": 24741, - "copper": 10333, - "coppola": 47427, - "cops": 10719, - "copter": 28049, - "copy": 11376, - "copy": 4509, - "copying": 38925, - "copyright": 15778, - "cor": 851, - "cor": 18559, - "cora": 34953, - "coral": 31220, - "coral": 12054, - "corbett": 35699, - "corbin": 35578, - "corbyn": 14026, - "cord": 40893, - "cord": 11181, - "corden": 41999, - "cordi": 41681, - "cordless": 44412, - "cords": 22164, - "core": 19622, - "core": 5000, - "cores": 37874, - "corey": 31279, - "corey": 15288, - "corgi": 31320, - "cori": 26508, - "coriander": 37491, - "corin": 17716, - "corinthians": 34471, - "cork": 18148, - "cork": 10376, - "corn": 5202, - "corn": 5894, - "cornelius": 45865, - "cornell": 38689, - "cornell": 20859, - "corner": 18509, - "corner": 5253, - "corners": 19584, - "cornerstone": 36280, - "cornish": 23774, - "cornwall": 37903, - "cornwall": 10777, - "coron": 13210, - "corona": 25564, - "coronado": 43946, - "coronary": 45955, - "coronation": 25014, - "coroner": 47241, - "corp": 29203, - "corp": 10918, - "corpor": 4258, - "corporal": 42445, - "corporate": 33877, - "corporate": 6838, - "corporation": 11282, - "corporations": 25482, - "corps": 11330, - "corpse": 29408, - "corpus": 31672, - "correc": 5011, - "correct": 8340, - "corrected": 35628, - "correction": 20843, - "correctional": 38030, - "corrections": 37507, - "correctly": 15359, - "correlation": 29218, - "correspon": 20203, - "correspondent": 29996, - "corri": 12974, - "corridor": 20592, - "corrie": 23961, - "corro": 24936, - "corro": 42033, - "corrosion": 39191, - "corru": 6501, - "corrup": 30429, - "corrupt": 15194, - "corruption": 9141, - "corsa": 47670, - "corsair": 42367, - "corset": 40408, - "cortex": 40109, - "cortez": 30461, - "corvette": 24367, - "cory": 23221, - "cory": 18329, - "cos": 5865, - "cos": 5700, - "cosby": 30324, - "cosc": 45944, - "coscino": 47909, - "cose": 26495, - "cosm": 37486, - "cosme": 9628, - "cosmetic": 23918, - "cosmetics": 12896, - "cosmic": 47398, - "cosmic": 18304, - "cosmo": 12829, - "cosmo": 32072, - "cosmopolitan": 35518, - "cosmos": 22151, - "cospla": 15149, - "cosplay": 42401, - "cosplay": 6435, - "cosplayer": 30215, - "cosplaying": 46701, - "cost": 11360, - "cost": 4713, - "costa": 10480, - "costar": 28659, - "costarica": 31272, - "costco": 31045, - "costello": 30667, - "costing": 39193, - "costly": 30170, - "costs": 7628, - "costu": 5786, - "costume": 7235, - "costumes": 15150, - "cosy": 22848, - "cot": 4718, - "cot": 5871, - "cote": 44234, - "cote": 20751, - "cotland": 32576, - "cotsw": 23303, - "cotswolds": 35546, - "cott": 8211, - "cott": 11349, - "cottage": 12155, - "cottages": 34405, - "cotton": 22218, - "cotton": 7050, - "cou": 1368, - "couch": 12724, - "cougar": 35028, - "cougar": 27042, - "cougars": 20425, - "cough": 35631, - "cough": 18498, - "cougs": 28482, - "coul": 22483, - "could": 44812, - "could": 1510, - "couldn": 4072, - "couldnt": 29042, - "coulter": 42291, - "coun": 939, - "counc": 12927, - "council": 18187, - "council": 3620, - "councill": 15732, - "councillor": 21179, - "councillors": 29695, - "councilman": 40833, - "councils": 29938, - "counsel": 13780, - "counsel": 19814, - "counseling": 25000, - "counsell": 47510, - "counselling": 40581, - "counselor": 26148, - "counselors": 38688, - "count": 6073, - "count": 5887, - "countdown": 39559, - "countdown": 7500, - "counted": 23149, - "counter": 10134, - "counter": 7352, - "counterfe": 33067, - "counterfeit": 44242, - "counterpart": 39216, - "counterparts": 42106, - "counters": 46170, - "countess": 46276, - "counties": 12338, - "counting": 9723, - "countless": 21819, - "countries": 5489, - "country": 7896, - "country": 2157, - "countryfile": 47023, - "countrymusic": 30372, - "countryside": 16303, - "counts": 12264, - "county": 18734, - "county": 2116, - "coup": 9871, - "coup": 16479, - "coupe": 16773, - "couple": 40136, - "couple": 3377, - "coupled": 37153, - "couples": 14752, - "coupling": 45595, - "coupon": 14019, - "coupons": 23945, - "cour": 1391, - "coura": 4436, - "courage": 9828, - "courageous": 25005, - "courier": 27217, - "cours": 21493, - "course": 43225, - "course": 2613, - "courses": 9464, - "court": 16837, - "court": 2908, - "courte": 5088, - "courtesy": 5228, - "courthouse": 22205, - "courtney": 33601, - "courtney": 15990, - "courtroom": 41071, - "courts": 13514, - "courty": 20121, - "courtyard": 21900, - "cous": 48397, - "cousin": 7780, - "cousins": 14073, - "cout": 29118, - "coutinho": 35530, - "couture": 14808, - "cov": 19384, - "cov": 48385, - "cove": 21700, - "cove": 14708, - "coven": 12483, - "covenant": 29647, - "coventry": 18007, - "cover": 13534, - "cover": 2202, - "coverage": 6810, - "covered": 5603, - "covering": 9462, - "covers": 7745, - "covert": 40134, - "coveted": 36119, - "covington": 43196, - "cow": 5076, - "cow": 9706, - "cowan": 42699, - "coward": 33729, - "cowards": 48972, - "cowboy": 25833, - "cowboy": 13657, - "cowboys": 11864, - "cowboysnation": 43082, - "cowell": 39015, - "cowgirl": 47090, - "coworker": 30727, - "coworkers": 30821, - "coworking": 36034, - "cows": 15204, - "cowx": 23831, - "cox": 25784, - "cox": 11597, - "coy": 12765, - "coy": 15742, - "coyi": 48407, - "coyle": 45348, - "coyne": 44729, - "coyo": 16614, - "coyote": 26586, - "coyotes": 30423, - "coys": 19736, - "coz": 39922, - "coz": 14282, - "cozy": 14873, - "cp": 7905, - "cp": 9130, - "cpa": 30095, - "cpac": 45731, - "cpc": 26125, - "cpd": 23402, - "cpec": 48007, - "cpfc": 27553, - "cpi": 41795, - "cpl": 26852, - "cpr": 25134, - "cps": 27078, - "cpt": 32892, - "cpu": 27700, - "cq": 48910, - "cq": 48417, - "cr": 1075, - "cr": 3483, - "cra": 1184, - "cra": 18362, - "crab": 27382, - "crab": 11574, - "crabs": 30908, - "crack": 11222, - "crack": 10334, - "crackdown": 29527, - "cracked": 19826, - "cracker": 16298, - "crackers": 26200, - "cracking": 13008, - "cracks": 21426, - "cracy": 24749, - "cradle": 29384, - "crae": 40438, - "craf": 10873, - "craft": 7717, - "craft": 3588, - "craftbeer": 12371, - "crafted": 12424, - "crafthour": 42324, - "crafting": 26886, - "crafts": 33276, - "crafts": 13383, - "craftsman": 39528, - "craftsmanship": 36682, - "crafty": 32317, - "craic": 46962, - "craig": 14042, - "craig": 8061, - "craigslist": 43865, - "cram": 29809, - "cramer": 44592, - "cramps": 46106, - "cran": 7761, - "cranberries": 49361, - "cranberry": 23824, - "crane": 14626, - "cranes": 26979, - "crani": 45674, - "crank": 46246, - "crank": 32283, - "cranston": 44340, - "crap": 11899, - "crappy": 30475, - "crash": 37150, - "crash": 5033, - "crashed": 16638, - "crashes": 17013, - "crashing": 24991, - "crat": 46696, - "crate": 24756, - "crater": 22663, - "crates": 30172, - "cratic": 32175, - "crative": 39999, - "crats": 43056, - "crave": 33397, - "craven": 33625, - "craving": 18344, - "cravings": 34476, - "craw": 7400, - "crawfish": 42772, - "crawford": 15918, - "crawl": 20106, - "crawler": 41012, - "crawley": 42316, - "crawling": 37066, - "cray": 24184, - "cray": 27032, - "crayon": 41801, - "crayons": 43508, - "craz": 25776, - "craze": 30637, - "craziest": 32690, - "craziness": 46436, - "crazy": 17540, - "crazy": 3578, - "crc": 25618, - "cre": 798, - "cre": 17762, - "cream": 23184, - "cream": 3867, - "creams": 41447, - "creamy": 17206, - "crease": 48441, - "create": 30949, - "create": 3380, - "created": 4080, - "creates": 10361, - "creati": 6714, - "creating": 5524, - "creation": 38293, - "creation": 6900, - "creations": 17411, - "creative": 15237, - "creative": 4450, - "creatives": 29352, - "creativity": 9636, - "creator": 10173, - "creators": 17981, - "creature": 14317, - "creatures": 13938, - "cred": 7314, - "cred": 22377, - "credenti": 29487, - "credentials": 33422, - "credi": 21097, - "credibility": 34984, - "credible": 32983, - "credit": 21467, - "credit": 3900, - "credited": 32480, - "credits": 10654, - "creds": 43462, - "cree": 33961, - "cree": 36014, - "creed": 18845, - "creek": 26120, - "creek": 5526, - "creep": 8153, - "creep": 26084, - "creeper": 38662, - "creeping": 29697, - "creeps": 45135, - "creepy": 11943, - "creighton": 42823, - "creme": 22681, - "creole": 45632, - "crepe": 38611, - "crescent": 18211, - "cress": 39124, - "crest": 35985, - "crest": 15760, - "crested": 36656, - "crete": 8584, - "crew": 21560, - "crew": 3462, - "crewe": 43284, - "crews": 10463, - "cri": 1621, - "cri": 38962, - "crib": 23271, - "cric": 4328, - "cricke": 19098, - "cricket": 21859, - "cricket": 5373, - "cricketer": 28439, - "cricketers": 43986, - "cried": 15290, - "cries": 19769, - "crime": 13872, - "crime": 4896, - "crimea": 28614, - "crimes": 11827, - "crimin": 5874, - "criminal": 30197, - "criminal": 8255, - "criminals": 18783, - "crimson": 19437, - "cringe": 42588, - "cripp": 33588, - "cris": 37818, - "crises": 36403, - "crisis": 5712, - "crisp": 15145, - "crispr": 39784, - "crisps": 35744, - "crispy": 16458, - "criss": 29708, - "cristi": 12699, - "cristian": 48808, - "cristiano": 14807, - "cristina": 33395, - "cristo": 38315, - "crit": 3613, - "crit": 48130, - "criteri": 33627, - "criteria": 24849, - "criterion": 43841, - "criti": 25333, - "critic": 12417, - "critic": 19361, - "critical": 15314, - "critical": 6808, - "critically": 21570, - "criticalrole": 33606, - "criticalrole": 22742, - "criticalrolefanart": 43663, - "critici": 20333, - "criticism": 17405, - "criticize": 46081, - "criticized": 41557, - "critics": 16946, - "critique": 32982, - "critters": 35423, - "crm": 22610, - "cro": 1192, - "cro": 22522, - "croati": 28072, - "croatia": 13323, - "croatian": 34795, - "croc": 43350, - "croche": 35352, - "crochet": 17554, - "crock": 41685, - "crocker": 47843, - "crockett": 48313, - "crocod": 24519, - "crocodile": 24757, - "crocs": 38988, - "croft": 16657, - "croissant": 46011, - "croix": 44735, - "crom": 25082, - "crombie": 46162, - "cromwell": 45345, - "cron": 17361, - "croo": 16443, - "crook": 43744, - "crooked": 48473, - "crooked": 25644, - "crooks": 44226, - "crop": 40751, - "crop": 9955, - "cropped": 31139, - "crops": 16290, - "crore": 18274, - "crores": 37281, - "cros": 16670, - "crosby": 21095, - "cross": 5266, - "cross": 3417, - "crossed": 11731, - "crosses": 20473, - "crossfit": 47214, - "crossfit": 20395, - "crossing": 8673, - "crossings": 43517, - "crossover": 17194, - "crossroads": 27427, - "crossword": 32945, - "crou": 31206, - "crouch": 36506, - "crow": 3138, - "crow": 16019, - "crowd": 12036, - "crowd": 4570, - "crowded": 20182, - "crowdfunding": 17971, - "crowds": 16092, - "crowe": 33560, - "crowley": 32287, - "crown": 22190, - "crown": 6902, - "crowned": 16109, - "crowns": 33229, - "crows": 27134, - "croy": 21676, - "croydon": 27116, - "crs": 28449, - "crt": 43877, - "cru": 1815, - "cru": 29788, - "cruci": 18499, - "crucial": 12396, - "crude": 20677, - "cruel": 16073, - "cruel": 17573, - "cruelty": 20675, - "cruis": 27721, - "cruise": 36425, - "cruise": 6764, - "cruiser": 21394, - "cruises": 19214, - "cruising": 19743, - "crum": 43268, - "crumb": 48327, - "crumb": 39909, - "crumble": 36595, - "crumbs": 35893, - "crun": 17407, - "crunch": 16620, - "crunchy": 31366, - "crusad": 19133, - "crusade": 36846, - "crusader": 40171, - "crusaders": 31319, - "crush": 22296, - "crush": 7610, - "crushed": 18270, - "crusher": 44923, - "crushes": 35844, - "crushing": 20790, - "crust": 23136, - "crusted": 37314, - "cruz": 33689, - "cruz": 8403, - "cry": 2837, - "cry": 6290, - "crying": 6828, - "cryo": 32215, - "cryp": 4865, - "crypt": 37814, - "cryptic": 46925, - "crypto": 8080, - "crypto": 9608, - "cryptocurrencies": 33329, - "cryptocurrency": 12070, - "cryst": 15891, - "crystal": 17387, - "crystal": 6517, - "crystalli": 47551, - "crystals": 18350, - "cs": 11978, - "cs": 2804, - "csa": 26355, - "csc": 41727, - "csc": 37266, - "csd": 36913, - "cse": 41659, - "csg": 47085, - "csgo": 28928, - "csi": 41750, - "csi": 28070, - "csk": 43036, - "csm": 40061, - "csn": 46329, - "cso": 43864, - "csp": 39243, - "csr": 32105, - "csr": 24598, - "csrracing": 44193, - "css": 41418, - "css": 19846, - "cst": 17016, - "csu": 35948, - "csu": 31261, - "csw": 41031, - "ct": 3381, - "ct": 1122, - "cta": 28397, - "ctar": 27842, - "ctc": 34123, - "cte": 31410, - "cted": 2910, - "ctf": 35250, - "cthulhu": 41064, - "cting": 7985, - "ction": 17578, - "ction": 1569, - "ctions": 7021, - "ctive": 9313, - "cto": 17445, - "ctor": 8108, - "ctr": 35602, - "ctr": 18481, - "cts": 6936, - "ctto": 25118, - "ctu": 20834, - "cture": 17668, - "ctv": 21213, - "ctv": 27590, - "cu": 729, - "cu": 11224, - "cuando": 40388, - "cub": 16938, - "cub": 19972, - "cuba": 11576, - "cuban": 15536, - "cube": 47753, - "cube": 11353, - "cubes": 31413, - "cubic": 48159, - "cubic": 29614, - "cubs": 9858, - "cuck": 26364, - "cuckoo": 38062, - "cucu": 16705, - "cucumber": 19787, - "cucumbers": 48065, - "cud": 42684, - "cudd": 12820, - "cuddle": 19568, - "cuddles": 24001, - "cuddling": 29696, - "cuddly": 36208, - "cudi": 48713, - "cue": 13424, - "cuer": 39506, - "cues": 35719, - "cuff": 34693, - "cuff": 22414, - "cufflinks": 43938, - "cuffs": 37221, - "cuis": 9938, - "cuisine": 10605, - "cuk": 34838, - "cul": 1877, - "cula": 35935, - "cular": 10940, - "culars": 45719, - "cule": 31066, - "cules": 18984, - "culin": 14772, - "culinary": 16466, - "cull": 21880, - "cull": 42061, - "cullen": 25973, - "culmin": 33778, - "culo": 36305, - "culprit": 41593, - "cult": 11965, - "cultiv": 16781, - "cultivate": 42983, - "cultivated": 48901, - "cultivation": 41539, - "cultur": 20780, - "cultural": 34908, - "cultural": 6753, - "culturally": 36783, - "culture": 20197, - "culture": 3673, - "cultured": 40176, - "cultures": 19552, - "culver": 42103, - "cum": 20142, - "cum": 27119, - "cumb": 10858, - "cumber": 15309, - "cumberbatch": 27541, - "cumberland": 28747, - "cumbri": 32010, - "cumbria": 17953, - "cumin": 42285, - "cumple": 47050, - "cumul": 42961, - "cumulative": 47610, - "cumulus": 46313, - "cun": 12423, - "cun": 29532, - "cunningham": 25321, - "cuomo": 25681, - "cup": 5059, - "cup": 1937, - "cupboard": 32074, - "cupcake": 17025, - "cupcakes": 12747, - "cupid": 34885, - "cuppa": 28077, - "cups": 11463, - "cur": 1092, - "cur": 33073, - "curated": 20341, - "curator": 20753, - "curb": 21931, - "curd": 38881, - "cure": 36758, - "cure": 9088, - "cured": 26248, - "cures": 38204, - "curfew": 48826, - "curi": 12640, - "curing": 44169, - "curiosity": 21583, - "curious": 9865, - "curl": 24306, - "curled": 43734, - "curling": 18543, - "curls": 24340, - "curly": 20795, - "curran": 40999, - "currant": 43501, - "curren": 6142, - "currencies": 23530, - "currency": 7853, - "current": 3653, - "currently": 3792, - "currents": 35450, - "curric": 16201, - "curriculum": 17947, - "currie": 39385, - "curry": 49285, - "curry": 8051, - "curse": 18479, - "cursed": 26408, - "cursor": 46546, - "curt": 38137, - "curtain": 17223, - "curtains": 30223, - "curti": 39925, - "curtis": 13808, - "curve": 15792, - "curved": 25789, - "curves": 22814, - "curvy": 45788, - "cus": 2736, - "cusa": 47414, - "cuse": 37950, - "cush": 43731, - "cushi": 15333, - "cushion": 20853, - "cushions": 34163, - "cussion": 16658, - "cussions": 46853, - "cust": 20900, - "custard": 26516, - "custo": 4376, - "custody": 16176, - "custom": 2662, - "custom": 4996, - "custome": 41323, - "customer": 24035, - "customer": 5102, - "customerexperience": 45167, - "customers": 5528, - "customerservice": 40611, - "customiz": 41793, - "customizable": 48253, - "customization": 48244, - "customize": 32179, - "customized": 23229, - "customs": 16880, - "cut": 10511, - "cut": 3032, - "cute": 16031, - "cute": 2242, - "cuteness": 19342, - "cuter": 27151, - "cutest": 8032, - "cuth": 44328, - "cutie": 10733, - "cuties": 40939, - "cuties": 23420, - "cutiesaturday": 41883, - "cutler": 40428, - "cutlery": 49073, - "cutout": 45016, - "cuts": 7435, - "cutt": 27338, - "cutt": 47647, - "cutter": 19719, - "cutters": 44783, - "cutting": 7266, - "cuz": 9215, - "cv": 13531, - "cv": 13947, - "cvs": 29603, - "cw": 10652, - "cw": 11065, - "cwc": 19179, - "cwgc": 48527, - "cws": 45186, - "cx": 44457, - "cx": 14283, - "cy": 1470, - "cy": 1678, - "cyber": 5830, - "cyber": 10210, - "cybercrime": 41772, - "cybermonday": 36578, - "cyberpunk": 36896, - "cybersecurity": 10581, - "cyborg": 36650, - "cycl": 9791, - "cycle": 19083, - "cycle": 5072, - "cycled": 31055, - "cycles": 14605, - "cycli": 12201, - "cycling": 26353, - "cycling": 6321, - "cyclist": 20686, - "cyclists": 20303, - "cyclo": 18122, - "cyclone": 48094, - "cyclone": 20917, - "cyclones": 34669, - "cylin": 18569, - "cylinder": 22092, - "cylinders": 48888, - "cymb": 36677, - "cymru": 24005, - "cyn": 14324, - "cynthi": 41994, - "cynthia": 23748, - "cyp": 14809, - "cypress": 25347, - "cypri": 36481, - "cyprus": 15263, - "cyril": 36028, - "cyrus": 14204, - "cystic": 46131, - "cyto": 31864, - "cz": 22898, - "cz": 22921, - "cze": 12152, - "czech": 43151, - "czech": 16141, - "cé": 36454, - "cé": 18317, - "d": 67, - "d": 323, - "da": 925, - "da": 1140, - "daa": 32642, - "daan": 44814, - "dab": 10413, - "dab": 22900, - "dac": 16222, - "dac": 27478, - "daca": 28477, - "dach": 34166, - "dachsh": 41641, - "dachshund": 42720, - "dad": 4346, - "dad": 2639, - "dada": 31325, - "daddy": 29466, - "daddy": 6546, - "dade": 23299, - "dades": 28289, - "dads": 12741, - "dae": 23358, - "dae": 15422, - "daener": 46934, - "daes": 47282, - "daesh": 35047, - "daf": 9972, - "daf": 36704, - "daffodils": 44769, - "daft": 36347, - "dag": 11434, - "dag": 25650, - "dagger": 34251, - "dah": 16976, - "dah": 11776, - "dahl": 45816, - "dahl": 22621, - "dahlia": 41768, - "dai": 13559, - "dai": 10632, - "dail": 14676, - "dailies": 21260, - "daily": 6689, - "daily": 2873, - "dailynews": 43466, - "dailys": 43160, - "dailysketch": 46738, - "daim": 40421, - "dain": 32222, - "dain": 28315, - "daipur": 47631, - "dair": 19998, - "dair": 42078, - "dairy": 25243, - "dairy": 10302, - "dairyfree": 49366, - "dais": 10502, - "daisi": 39947, - "daisies": 40654, - "daisy": 39310, - "daisy": 12865, - "dak": 6999, - "dak": 16095, - "dakar": 31137, - "dakota": 38522, - "dakota": 12358, - "dal": 2476, - "dal": 5601, - "dala": 42675, - "dalai": 41222, - "dalail": 35169, - "dalailama": 35849, - "dale": 11533, - "dale": 4677, - "dalejr": 38207, - "dales": 29031, - "daley": 28544, - "dalgo": 43614, - "dali": 36735, - "dali": 25703, - "dalit": 45432, - "dall": 43631, - "dalla": 16772, - "dallas": 27414, - "dallas": 5759, - "dallascowboys": 33016, - "dalmati": 44275, - "dalton": 21488, - "daly": 24873, - "dam": 1880, - "dam": 4926, - "damage": 6822, - "damaged": 13568, - "damages": 28842, - "damaging": 20610, - "damas": 23345, - "damascus": 25396, - "dame": 10069, - "dames": 44548, - "dami": 17783, - "damian": 43307, - "damian": 25375, - "damien": 25090, - "dammit": 31057, - "damn": 37409, - "damn": 4451, - "damned": 28428, - "damon": 48503, - "damon": 18244, - "damp": 26520, - "dams": 37680, - "dan": 2257, - "dan": 2284, - "dana": 44834, - "dana": 13777, - "danao": 38598, - "danc": 3945, - "dance": 10619, - "dance": 2724, - "danced": 32891, - "dancehall": 33300, - "dancer": 11400, - "dancers": 13153, - "dances": 24083, - "dancing": 33280, - "dancing": 6226, - "dand": 12593, - "dandelion": 38903, - "dandy": 31932, - "dane": 19330, - "danes": 47477, - "dang": 4283, - "dang": 14992, - "danger": 20083, - "danger": 11212, - "dangerous": 7350, - "dangerously": 35012, - "dangers": 23726, - "dangle": 39907, - "dani": 3001, - "dani": 17009, - "daniel": 7859, - "daniel": 4981, - "daniela": 44466, - "danielle": 30396, - "danielle": 15292, - "danielpadilla": 34702, - "daniels": 16146, - "danish": 15467, - "dank": 31849, - "dann": 11951, - "danny": 14950, - "danny": 7621, - "dano": 29703, - "dans": 16241, - "dant": 48097, - "dant": 28237, - "dante": 21911, - "danube": 44594, - "dany": 47816, - "dao": 36099, - "dap": 12149, - "dap": 38034, - "daph": 24591, - "daphne": 31687, - "dapl": 34478, - "dapp": 46857, - "dapper": 26071, - "daq": 25381, - "dar": 1377, - "dar": 6242, - "dara": 17064, - "darby": 34366, - "darcy": 32916, - "dare": 14833, - "dare": 9863, - "daredevil": 28849, - "dares": 42973, - "dareto": 46794, - "dari": 16292, - "dari": 14552, - "daria": 45622, - "daries": 18184, - "daring": 28166, - "dario": 33918, - "darius": 32606, - "darje": 49089, - "dark": 5724, - "dark": 3144, - "darker": 18737, - "darkest": 25898, - "darkness": 10521, - "darling": 13048, - "darlings": 39961, - "darlington": 34565, - "darn": 26059, - "darrell": 33522, - "darren": 20263, - "darren": 12275, - "darry": 29200, - "darryl": 35359, - "darshan": 34564, - "dart": 14001, - "dart": 19841, - "darth": 41304, - "darth": 23164, - "dartmoor": 31477, - "dartmouth": 29667, - "darts": 15246, - "darwin": 43013, - "darwin": 20926, - "daryl": 45607, - "daryl": 24532, - "das": 9940, - "das": 7359, - "dash": 13858, - "dash": 10206, - "dashboard": 27679, - "dashi": 12876, - "dashing": 33825, - "dat": 1717, - "dat": 9445, - "data": 14876, - "data": 2281, - "datab": 11941, - "database": 14678, - "databases": 48384, - "datac": 27329, - "datacenter": 40133, - "datasci": 14496, - "datascience": 15748, - "dataviz": 28138, - "date": 34300, - "date": 1524, - "dated": 13564, - "dates": 7228, - "dating": 8534, - "dation": 15311, - "datlantic": 34270, - "dato": 36075, - "dats": 48674, - "dau": 3162, - "dau": 33828, - "daugh": 42523, - "daughter": 3944, - "daughters": 13585, - "daun": 29470, - "dav": 3700, - "dav": 46488, - "davao": 31502, - "dave": 10089, - "dave": 5077, - "daven": 28350, - "davenport": 34624, - "davey": 33391, - "davi": 1732, - "david": 4640, - "david": 2259, - "davidbowie": 44448, - "davido": 35989, - "davids": 46695, - "davidson": 13166, - "davies": 13120, - "davin": 43187, - "davis": 24426, - "davis": 5536, - "davison": 43725, - "davos": 31887, - "davy": 41565, - "daw": 5971, - "daw": 24404, - "dawg": 18660, - "dawgs": 26431, - "dawn": 30590, - "dawn": 7689, - "dawson": 18611, - "dax": 29458, - "day": 1405, - "day": 575, - "daya": 38165, - "daybreak": 33862, - "daycare": 36363, - "daydream": 41587, - "dayin": 20332, - "daylight": 20809, - "dayo": 29856, - "dayo": 46605, - "dayof": 16272, - "dayofthe": 38043, - "days": 1161, - "daysof": 12379, - "daysofcode": 36537, - "daysto": 29886, - "daystogo": 42198, - "dayswild": 42052, - "daytime": 22830, - "dayton": 35729, - "dayton": 20262, - "daytona": 16335, - "dayweekend": 44526, - "dayz": 35949, - "daz": 15449, - "daz": 43844, - "daze": 33591, - "dazz": 17149, - "dazzle": 41164, - "dazzling": 28821, - "db": 19100, - "db": 8128, - "dbacks": 31175, - "dbs": 40558, - "dbz": 49226, - "dc": 5074, - "dc": 2743, - "dca": 49107, - "dcc": 33747, - "dccomics": 17610, - "dcfc": 35526, - "dci": 35336, - "dcs": 42878, - "dcu": 42647, - "dd": 1353, - "dd": 3766, - "dda": 35202, - "ddad": 39049, - "dday": 32689, - "dday": 26243, - "ddc": 48513, - "ddd": 24183, - "dddd": 35362, - "dden": 5013, - "dder": 9300, - "dders": 24827, - "ddi": 44450, - "ddin": 17175, - "dding": 48101, - "dding": 8974, - "ddings": 49106, - "ddington": 29238, - "ddle": 17633, - "ddle": 8357, - "ddled": 38392, - "ddles": 33901, - "ddleston": 25647, - "ddling": 30981, - "ddlovato": 28244, - "ddos": 46463, - "ddr": 26027, - "dds": 48334, - "ddu": 43836, - "ddy": 14981, - "ddy": 7876, - "de": 561, - "de": 654, - "dea": 18477, - "deacon": 29155, - "dead": 3906, - "dead": 2747, - "deadliest": 40811, - "deadline": 47209, - "deadline": 8458, - "deadlines": 44959, - "deadly": 10756, - "deadpool": 21471, - "deaf": 28229, - "deaf": 18358, - "deal": 7249, - "deal": 2696, - "dealer": 15218, - "dealers": 21697, - "dealership": 32096, - "dealing": 13138, - "deals": 4469, - "dealt": 30101, - "dean": 13807, - "dean": 5828, - "deandre": 43635, - "deans": 46852, - "dear": 15696, - "dear": 3817, - "dearest": 24880, - "dearly": 31880, - "deas": 34715, - "death": 7163, - "death": 2767, - "deaths": 12253, - "deau": 12399, - "deaux": 19883, - "deb": 2987, - "deb": 25687, - "debat": 32082, - "debate": 5196, - "debates": 19239, - "debating": 23472, - "debbie": 47186, - "debbie": 16735, - "debit": 32410, - "debor": 16738, - "deborah": 40997, - "deborah": 22150, - "debra": 33233, - "debris": 19208, - "debt": 8932, - "debts": 38770, - "debu": 9790, - "debun": 33123, - "debut": 42608, - "debut": 4085, - "debuted": 25215, - "debuting": 34817, - "debuts": 17044, - "dec": 3063, - "dec": 4628, - "deca": 33428, - "decad": 29914, - "decade": 11099, - "decadent": 41716, - "decades": 10488, - "decal": 26678, - "decals": 37606, - "decan": 40677, - "decat": 35334, - "decath": 47455, - "decatur": 38540, - "decay": 22703, - "dece": 3534, - "deceased": 30035, - "december": 3864, - "decent": 10698, - "decentr": 28960, - "decentralized": 38485, - "decep": 33529, - "deception": 33046, - "deci": 2262, - "decide": 8447, - "decided": 4939, - "decides": 17269, - "deciding": 22513, - "decision": 5575, - "decisions": 9903, - "decisive": 28690, - "deck": 24885, - "deck": 6943, - "decked": 39096, - "decker": 21449, - "decks": 23968, - "decl": 7091, - "decla": 10739, - "declan": 42341, - "declar": 18040, - "declaration": 19714, - "declare": 19856, - "declared": 13845, - "declares": 23641, - "declaring": 33273, - "decline": 15084, - "declined": 28911, - "declines": 40478, - "declining": 29221, - "deco": 26412, - "deco": 16422, - "decor": 5148, - "decor": 6928, - "decorate": 23651, - "decorated": 15917, - "decorating": 16968, - "decoration": 16029, - "decorations": 19158, - "decorative": 19289, - "decre": 12284, - "decrease": 24703, - "decreased": 33913, - "decreasing": 43763, - "decree": 43327, - "ded": 16744, - "ded": 1241, - "dedic": 4701, - "dedicate": 27610, - "dedicated": 6770, - "dedication": 10188, - "dedly": 36204, - "deduc": 22799, - "dee": 5268, - "dee": 6705, - "deed": 30260, - "deeds": 24516, - "deejay": 48304, - "deejay": 44511, - "deemed": 28102, - "deen": 26456, - "deen": 12912, - "deep": 5462, - "deep": 3383, - "deepak": 45528, - "deeper": 15224, - "deepest": 22245, - "deephouse": 35684, - "deepi": 19371, - "deepika": 34120, - "deepikap": 29903, - "deepikapadukone": 30646, - "deeplear": 22181, - "deeplearning": 24362, - "deeply": 11449, - "deer": 19454, - "deer": 8700, - "deere": 32901, - "dees": 12547, - "deets": 35537, - "def": 2044, - "def": 11649, - "defam": 35670, - "defamation": 42741, - "default": 21650, - "defe": 4148, - "defeat": 8477, - "defeated": 8927, - "defeating": 22594, - "defeats": 16317, - "defect": 44013, - "defects": 37485, - "defen": 3619, - "defence": 30307, - "defence": 9659, - "defend": 21970, - "defend": 11397, - "defended": 27161, - "defender": 10618, - "defenders": 20063, - "defending": 13098, - "defends": 20134, - "defense": 45875, - "defense": 6021, - "defenseman": 43714, - "defenses": 49198, - "defensive": 10824, - "defi": 17244, - "defiance": 36186, - "defiant": 47597, - "defibrill": 47684, - "defic": 18022, - "defici": 23387, - "deficiency": 30685, - "deficit": 20156, - "defin": 3188, - "define": 14919, - "defined": 15278, - "defines": 28218, - "defining": 20504, - "definite": 40793, - "definitely": 4824, - "definition": 11405, - "definitive": 25298, - "defl": 31467, - "deforestation": 41330, - "defstar": 36427, - "defy": 39148, - "defying": 38496, - "deg": 38498, - "degra": 28939, - "degradation": 44468, - "degre": 4653, - "degree": 7119, - "degrees": 8000, - "deh": 35582, - "dei": 33833, - "dei": 23279, - "deir": 42948, - "deity": 42574, - "deja": 46902, - "dek": 23901, - "dekalb": 37775, - "del": 1233, - "del": 2003, - "dela": 37986, - "delaney": 31528, - "delav": 23706, - "delavin": 40477, - "delavin": 40776, - "delavinkisses": 40631, - "delaware": 17547, - "delay": 12955, - "delay": 10934, - "delayed": 14567, - "delaying": 43781, - "delays": 11232, - "dele": 7922, - "dele": 33431, - "delec": 38615, - "delectable": 45500, - "deleg": 8046, - "delegate": 27259, - "delegates": 14623, - "delegation": 14632, - "delete": 19204, - "deleted": 16588, - "deleting": 41857, - "delft": 42749, - "delgado": 49182, - "delhi": 26723, - "delhi": 5717, - "deli": 1932, - "deli": 18601, - "delia": 33193, - "deliber": 18316, - "deliberate": 38271, - "deliberately": 35163, - "delic": 13366, - "delicacy": 49181, - "delicate": 18768, - "delici": 19993, - "delicious": 3959, - "deliciously": 39589, - "deliciousness": 42819, - "delight": 46165, - "delight": 13073, - "delighted": 5943, - "delightful": 15513, - "delights": 25330, - "deline": 18797, - "delines": 13562, - "delish": 25093, - "deliver": 19561, - "deliver": 7396, - "delivered": 7278, - "deliveries": 29336, - "delivering": 9943, - "delivers": 11753, - "delivery": 5619, - "dell": 24381, - "dell": 10242, - "della": 22986, - "delle": 35963, - "deloit": 29428, - "deloitte": 38667, - "dels": 48636, - "delta": 32250, - "delta": 8768, - "delu": 18779, - "delusional": 48059, - "delux": 13709, - "deluxe": 14056, - "delve": 46008, - "dely": 15040, - "dem": 3251, - "dem": 7825, - "dema": 40268, - "dema": 45046, - "deman": 48366, - "demand": 13072, - "demand": 5650, - "demanded": 33699, - "demanding": 17099, - "demands": 14241, - "demar": 46566, - "demarcus": 47873, - "demb": 35930, - "demdebate": 43973, - "deme": 25143, - "demean": 37376, - "demen": 12604, - "dementi": 46028, - "dementia": 14047, - "demetri": 39553, - "demi": 32879, - "demi": 14480, - "demise": 28756, - "demo": 2930, - "demo": 7380, - "democr": 3573, - "democracy": 7758, - "democrat": 15431, - "democratic": 9149, - "democrats": 8865, - "demographic": 31308, - "demol": 19382, - "demolished": 26537, - "demolition": 22237, - "demon": 5635, - "demon": 12085, - "demonetisation": 41338, - "demonic": 46920, - "demons": 18388, - "demonstr": 8579, - "demonstrate": 22231, - "demonstrated": 29477, - "demonstrates": 24806, - "demonstrating": 22107, - "demonstration": 16722, - "demonstrations": 33964, - "demonstrators": 46450, - "demos": 19304, - "demp": 22490, - "dempsey": 30188, - "dems": 10989, - "demsin": 42664, - "demsinphilly": 43091, - "den": 1177, - "den": 1181, - "dena": 32431, - "denali": 48076, - "dence": 3370, - "dency": 11659, - "dend": 37447, - "dends": 43985, - "dene": 45128, - "dened": 19571, - "deng": 43098, - "deng": 41788, - "dengue": 41932, - "denham": 39180, - "deni": 21995, - "denial": 25716, - "denied": 15780, - "denies": 19565, - "denim": 13606, - "denis": 47630, - "denis": 18750, - "denise": 45900, - "denise": 20899, - "denmark": 13268, - "dennis": 32738, - "dennis": 10534, - "denny": 26808, - "denomin": 41016, - "dens": 16533, - "dense": 19353, - "density": 22431, - "dent": 3593, - "dent": 1258, - "dental": 24635, - "dental": 8382, - "dentally": 10346, - "dented": 21923, - "denti": 4418, - "dential": 5459, - "dentist": 17816, - "dentistry": 25754, - "dently": 28817, - "denton": 23567, - "dents": 1517, - "denver": 27847, - "denver": 8569, - "deny": 18679, - "denying": 32771, - "denzel": 42503, - "deo": 26406, - "deo": 12121, - "deodor": 47639, - "deol": 41902, - "deon": 31466, - "deon": 16079, - "dep": 6079, - "dep": 24370, - "depar": 10794, - "depart": 5343, - "depart": 30649, - "departed": 32541, - "departing": 26902, - "department": 5744, - "departments": 29523, - "departs": 38998, - "departure": 17850, - "depe": 36118, - "depend": 13894, - "depend": 27371, - "dependence": 40243, - "dependent": 23280, - "depending": 23673, - "depends": 20497, - "depic": 11307, - "depicted": 34637, - "depicting": 24970, - "depiction": 31071, - "depicts": 29340, - "deple": 38504, - "deplo": 9356, - "deplor": 39232, - "deploy": 26944, - "deployed": 20009, - "deploying": 42212, - "deployment": 20183, - "depo": 14276, - "depor": 36110, - "deport": 23389, - "deportation": 36617, - "deported": 39320, - "deportes": 47878, - "depos": 21266, - "deposit": 16775, - "deposits": 30740, - "depot": 12589, - "depp": 24941, - "depre": 7107, - "depress": 38869, - "depressed": 23269, - "depressing": 29235, - "depression": 10023, - "depri": 28587, - "depriv": 45809, - "deprivation": 47810, - "deprived": 39140, - "dept": 9201, - "depth": 10350, - "depths": 28855, - "depu": 6912, - "deputies": 24914, - "deputy": 7932, - "der": 839, - "der": 801, - "dera": 20696, - "derail": 48502, - "derby": 13904, - "derby": 7177, - "derbyshire": 22147, - "derdale": 21513, - "dere": 5701, - "dere": 44194, - "dered": 3776, - "derek": 22461, - "derek": 11205, - "derel": 46728, - "derer": 11289, - "derers": 20882, - "deri": 34573, - "derick": 33908, - "dering": 6076, - "deriv": 33458, - "derived": 26461, - "derland": 35488, - "derman": 29740, - "dermatology": 48051, - "dern": 30086, - "dero": 37203, - "dero": 34026, - "derrick": 21798, - "derry": 45777, - "derry": 20535, - "ders": 37307, - "ders": 1923, - "derson": 12677, - "dery": 17172, - "des": 6797, - "des": 1437, - "desai": 35316, - "desc": 13866, - "descen": 32318, - "descend": 26004, - "descend": 46241, - "descendants": 36323, - "descending": 36620, - "descent": 19375, - "desch": 49209, - "descri": 4637, - "describe": 10967, - "described": 14671, - "describes": 13678, - "describing": 24239, - "descrip": 41832, - "description": 13951, - "descriptions": 40653, - "desde": 42218, - "dese": 27195, - "deser": 3659, - "desert": 45776, - "desert": 7301, - "deserted": 41560, - "deserve": 7043, - "deserved": 10061, - "deserves": 9079, - "deserving": 26615, - "desh": 25320, - "desh": 7448, - "deshi": 42769, - "desi": 6772, - "desi": 26635, - "desig": 1250, - "design": 8359, - "design": 1681, - "designated": 24119, - "designation": 41155, - "designed": 4486, - "designer": 35640, - "designer": 5728, - "designers": 12720, - "designing": 13467, - "designs": 6747, - "designthinking": 32450, - "desirable": 32368, - "desire": 11858, - "desired": 28631, - "desires": 27598, - "desk": 11937, - "desk": 6550, - "desks": 41014, - "desktop": 14345, - "desmond": 27821, - "desol": 41258, - "desp": 3642, - "despair": 28097, - "desper": 10144, - "desperate": 15072, - "desperately": 21993, - "despic": 32442, - "despicable": 37158, - "despite": 5325, - "dess": 7096, - "dess": 10001, - "dessert": 9753, - "desserts": 22948, - "desses": 43913, - "dest": 6540, - "dest": 4549, - "destin": 4934, - "destination": 32191, - "destination": 9179, - "destinations": 16981, - "destined": 28525, - "destiny": 39875, - "destiny": 10867, - "destro": 8287, - "destroy": 8308, - "destroy": 11930, - "destroyed": 9965, - "destroyer": 25291, - "destroying": 19613, - "destroys": 27634, - "destruc": 22945, - "destruction": 14281, - "destructive": 29591, - "det": 28966, - "det": 15366, - "deta": 1914, - "detached": 26252, - "detail": 7657, - "detailed": 12609, - "detailing": 23163, - "details": 2353, - "detained": 20260, - "dete": 5606, - "detec": 17991, - "detect": 22744, - "detected": 26988, - "detecting": 41290, - "detection": 16220, - "detective": 13672, - "detectives": 27994, - "detector": 27689, - "detectors": 45063, - "detention": 16908, - "deter": 10742, - "deter": 47458, - "detergent": 46726, - "deterior": 28512, - "determin": 8325, - "determination": 17410, - "determine": 16768, - "determined": 14371, - "determines": 42192, - "determining": 39884, - "deth": 38375, - "deto": 39710, - "deton": 39335, - "detour": 31211, - "detox": 22459, - "detri": 47951, - "detro": 6210, - "detroit": 19404, - "detroit": 7073, - "detta": 45438, - "dette": 35750, - "deu": 21457, - "deuce": 45332, - "deus": 37625, - "deut": 14970, - "deutsch": 30389, - "deutsche": 32760, - "deutschland": 36878, - "deux": 47089, - "dev": 2797, - "dev": 3670, - "deva": 45179, - "devan": 37072, - "devast": 12913, - "devastated": 29865, - "devastating": 19280, - "devastation": 42452, - "devel": 1820, - "develop": 1966, - "develop": 7708, - "developed": 8763, - "developer": 10929, - "developers": 13248, - "developing": 8131, - "development": 2855, - "developmental": 29347, - "developments": 17393, - "develops": 29895, - "deven": 45537, - "devgn": 29871, - "devi": 12926, - "devi": 20717, - "deviant": 25593, - "deviantart": 26046, - "device": 8163, - "devices": 9067, - "devil": 8894, - "devil": 8043, - "deville": 34329, - "devils": 11683, - "devin": 31193, - "devin": 20996, - "devine": 33019, - "devlin": 48040, - "devo": 11861, - "devo": 43444, - "devon": 16205, - "devon": 10046, - "devops": 21504, - "devos": 40646, - "devote": 37777, - "devoted": 24561, - "devotees": 39759, - "devotion": 25821, - "devotional": 35456, - "devs": 27374, - "dew": 31952, - "dew": 16358, - "dewey": 40399, - "dex": 10030, - "dex": 13790, - "dexpo": 42502, - "dexter": 45049, - "dexter": 22781, - "dey": 11829, - "dez": 23190, - "dez": 8122, - "df": 12908, - "df": 10468, - "dfc": 41903, - "dfs": 32880, - "dfw": 20439, - "dg": 2394, - "dg": 9742, - "dgate": 41684, - "dge": 4016, - "dge": 1360, - "dged": 11830, - "dgeon": 45655, - "dgers": 8733, - "dges": 5432, - "dging": 9565, - "dh": 6669, - "dh": 9960, - "dha": 11629, - "dha": 27377, - "dhabi": 22349, - "dhaka": 32877, - "dham": 29635, - "dham": 30838, - "dhan": 12542, - "dhan": 28569, - "dhanush": 26162, - "dhanush": 36200, - "dhanushkraja": 29266, - "dhar": 12397, - "dharma": 30536, - "dhary": 28706, - "dhawan": 44699, - "dhe": 29706, - "dheim": 44280, - "dhi": 31553, - "dhi": 26166, - "dho": 37834, - "dhoni": 25698, - "dhru": 40257, - "dhry": 39960, - "dhs": 26849, - "dhu": 32387, - "di": 570, - "di": 1618, - "dia": 7351, - "dia": 3357, - "diab": 15954, - "diabe": 19167, - "diabete": 43826, - "diabetes": 10319, - "diabetic": 30230, - "diablo": 23931, - "diag": 6851, - "diagno": 7736, - "diagnose": 44429, - "diagnosed": 16979, - "diagnosis": 15715, - "diagnostic": 26351, - "diagnostics": 37723, - "diagram": 22697, - "dial": 18416, - "dial": 11381, - "dialo": 30709, - "dialog": 48945, - "dialogue": 11288, - "dialogues": 40330, - "dialysis": 44798, - "diam": 4347, - "diameter": 27189, - "diamon": 8873, - "diamond": 18535, - "diamond": 6235, - "diamonds": 12687, - "dian": 16021, - "dian": 4998, - "diana": 12803, - "diane": 15855, - "dianne": 42299, - "dians": 21041, - "diaper": 34382, - "diapers": 39659, - "diar": 25932, - "diaries": 15541, - "diary": 10380, - "dias": 22137, - "dias": 29354, - "diaspora": 28390, - "diaz": 17688, - "dic": 1404, - "dic": 6717, - "dicap": 30023, - "dicaprio": 30755, - "dice": 14406, - "dick": 14413, - "dick": 9554, - "dickens": 33421, - "dict": 45360, - "dict": 15159, - "dictat": 26156, - "dictator": 27399, - "dictatorship": 37989, - "dictionary": 19699, - "did": 1861, - "did": 1335, - "diddy": 33527, - "didi": 34396, - "didier": 45614, - "didn": 2376, - "didnt": 13057, - "dido": 31725, - "didyou": 12295, - "didyouknow": 12506, - "die": 3150, - "die": 2082, - "diec": 27729, - "diecast": 37936, - "died": 3622, - "diego": 30940, - "diego": 6306, - "diem": 45571, - "dience": 33686, - "dient": 27231, - "dier": 29702, - "dier": 16394, - "dies": 20104, - "dies": 1862, - "diesel": 46312, - "diesel": 10591, - "diest": 45739, - "diet": 21295, - "diet": 6582, - "dietary": 29009, - "dietrich": 47005, - "diets": 35173, - "dif": 18656, - "dif": 48731, - "diff": 44073, - "diff": 20331, - "diffe": 1967, - "differ": 34620, - "differen": 14903, - "difference": 4731, - "differences": 14003, - "different": 2731, - "differenti": 21729, - "differential": 34027, - "differentiate": 49032, - "differently": 18325, - "diffic": 6140, - "difficult": 7405, - "difficulties": 23468, - "difficulty": 25245, - "diffu": 31603, - "diffuser": 49400, - "dig": 1831, - "dig": 9887, - "dige": 17820, - "digest": 20413, - "digestion": 40533, - "digestive": 32304, - "digg": 43240, - "digger": 35919, - "diggin": 48466, - "digging": 14971, - "digi": 15627, - "digi": 39361, - "digimon": 44181, - "digit": 14899, - "digit": 27472, - "digital": 4704, - "digital": 2794, - "digitalart": 16987, - "digitalhealth": 32190, - "digitalindia": 46630, - "digitally": 27543, - "digitalmarketing": 15299, - "digitaltransformation": 20047, - "digiti": 25935, - "digits": 31710, - "digni": 45532, - "dignit": 39497, - "dignity": 17744, - "digo": 35701, - "digs": 26877, - "dih": 43089, - "dii": 32755, - "dijk": 44444, - "dik": 38854, - "dik": 37747, - "dike": 42683, - "dil": 7643, - "dil": 17942, - "dile": 25428, - "dilemma": 29787, - "dilig": 30664, - "dill": 12318, - "dill": 27206, - "dillon": 21056, - "dilu": 45242, - "dim": 19576, - "dim": 17523, - "dime": 24443, - "dimen": 10935, - "dimension": 20479, - "dimensional": 25252, - "dimensions": 25086, - "diment": 43500, - "dimes": 44888, - "dimini": 37459, - "dimit": 22250, - "dimitri": 48840, - "dimp": 38853, - "din": 1462, - "din": 5673, - "dina": 36815, - "dinah": 30903, - "dine": 20951, - "dine": 12989, - "diner": 16963, - "dinesh": 48341, - "ding": 7545, - "ding": 796, - "dinger": 45580, - "dingh": 48064, - "dings": 5473, - "dington": 24804, - "dinho": 47370, - "dini": 20196, - "dining": 8658, - "dinner": 27548, - "dinner": 2571, - "dinners": 33570, - "dino": 9692, - "dino": 14077, - "dinosa": 18955, - "dinosaur": 15095, - "dinosaurs": 20387, - "dio": 3779, - "dio": 1521, - "dioce": 20763, - "diocese": 27091, - "dion": 42899, - "dion": 16250, - "dior": 23655, - "dios": 37563, - "dious": 27417, - "dioxide": 38102, - "dip": 19918, - "dip": 11343, - "dipl": 8490, - "diplo": 38115, - "diplom": 11169, - "diploma": 21251, - "diplomacy": 23798, - "diplomat": 32828, - "diplomatic": 23782, - "diplomats": 44126, - "dipped": 30610, - "dipper": 49317, - "dipping": 33544, - "dips": 37522, - "dir": 4251, - "dir": 8478, - "dire": 38355, - "dire": 25664, - "direc": 1534, - "direct": 43224, - "direct": 6016, - "directed": 8392, - "directing": 21817, - "direction": 15923, - "direction": 5407, - "directional": 38687, - "directioner": 48042, - "directioners": 22055, - "directions": 16440, - "directive": 40630, - "directly": 9701, - "director": 20337, - "director": 2681, - "directorial": 45327, - "directors": 11940, - "directory": 25272, - "directs": 34349, - "directv": 48652, - "dirk": 28171, - "dirt": 31415, - "dirt": 11795, - "dirty": 20127, - "dirty": 7615, - "dis": 1518, - "dis": 6112, - "disa": 3882, - "disab": 47380, - "disabilities": 17350, - "disability": 48986, - "disability": 13261, - "disabled": 13613, - "disadvantaged": 40577, - "disagree": 23199, - "disapp": 5384, - "disappear": 21148, - "disappear": 25173, - "disappearance": 35929, - "disappeared": 23139, - "disappearing": 35819, - "disappears": 44406, - "disappo": 7605, - "disappoint": 25446, - "disappointed": 13794, - "disappointing": 21941, - "disappointment": 23884, - "disappoints": 48545, - "disappro": 48276, - "disar": 42971, - "disaster": 9072, - "disasters": 26976, - "disastrous": 35790, - "disc": 1472, - "disc": 10712, - "discar": 40532, - "discarded": 45197, - "discer": 49140, - "dischar": 22671, - "discharge": 32485, - "disci": 9559, - "discip": 38951, - "discipl": 10467, - "disciples": 39366, - "disciplinary": 20232, - "discipline": 18903, - "disciplines": 42032, - "discla": 40248, - "disclaimer": 46465, - "disclo": 17481, - "disclose": 46379, - "disclosed": 30905, - "disclosure": 26502, - "disco": 2475, - "disco": 11964, - "discography": 47545, - "discomfort": 48054, - "discord": 23582, - "discoun": 18515, - "discount": 7638, - "discounted": 20993, - "discounts": 18186, - "discoura": 45850, - "discourse": 29441, - "discover": 10539, - "discover": 4834, - "discovered": 6986, - "discoveries": 29308, - "discovering": 17967, - "discovers": 29719, - "discovery": 40491, - "discovery": 8027, - "discre": 20616, - "discrimin": 11721, - "discrimination": 14775, - "discs": 29270, - "discu": 1984, - "discus": 41828, - "discuss": 4312, - "discussed": 11300, - "discusses": 8116, - "discussing": 5900, - "discussion": 5060, - "discussions": 13806, - "dise": 4262, - "disease": 5336, - "diseases": 12035, - "disen": 46468, - "disgrace": 29877, - "disgraceful": 44146, - "disgu": 9793, - "disguise": 27803, - "disguised": 37149, - "disgusted": 41977, - "disgusting": 16218, - "dish": 11039, - "dish": 4531, - "disha": 42498, - "dishes": 11412, - "dishon": 30777, - "dishu": 44728, - "dishwasher": 40524, - "disin": 19484, - "disinfe": 48050, - "disintegr": 49275, - "disk": 17970, - "dislike": 30796, - "dism": 30836, - "dism": 38821, - "dismant": 36557, - "dismiss": 43287, - "dismissal": 42068, - "dismissed": 30087, - "dismisses": 45238, - "disney": 6729, - "disney": 4696, - "disneyland": 39481, - "disneyland": 13661, - "disneyworld": 28469, - "diso": 26305, - "disobe": 42841, - "dison": 19310, - "disorder": 12635, - "disorders": 17114, - "disp": 11073, - "dispar": 24633, - "disparities": 45122, - "dispat": 28652, - "dispatch": 26306, - "dispen": 19077, - "dispenser": 40116, - "disper": 34499, - "displa": 9326, - "displac": 17718, - "displaced": 22817, - "displacement": 37931, - "display": 4456, - "displayed": 18967, - "displaying": 26468, - "displays": 15648, - "dispo": 13651, - "dispon": 38872, - "disponible": 46130, - "dispos": 45177, - "disposable": 37275, - "disposal": 28231, - "dispro": 32927, - "dispropor": 40354, - "disproportion": 45492, - "disregard": 43869, - "disrespect": 34055, - "disrespectful": 41723, - "disru": 13763, - "disrup": 14641, - "disrupt": 25214, - "disrupted": 46674, - "disrupting": 42419, - "disruption": 19635, - "disruptive": 31554, - "diss": 10766, - "diss": 35688, - "dissec": 43879, - "dissemin": 40463, - "dissent": 45154, - "disser": 25560, - "dissertation": 29448, - "dissi": 25088, - "dissol": 27398, - "dissuper": 33461, - "dist": 5479, - "dist": 12116, - "distance": 7964, - "distances": 37078, - "distant": 18949, - "distill": 41586, - "distilled": 49179, - "distillery": 22200, - "distin": 11892, - "distinct": 25056, - "distinction": 28183, - "distinctive": 25486, - "distingui": 15053, - "distinguish": 45418, - "distinguished": 16513, - "distor": 23781, - "distortion": 43690, - "distr": 11885, - "distract": 39309, - "distracted": 24049, - "distraction": 32039, - "distress": 26866, - "distressed": 37515, - "distri": 5987, - "distribu": 6138, - "distribute": 32313, - "distributed": 16419, - "distributing": 35216, - "distribution": 10484, - "distributor": 28354, - "distributors": 44240, - "distric": 3208, - "district": 46683, - "district": 3506, - "districts": 17565, - "distur": 11732, - "disturb": 33018, - "disturb": 39449, - "disturbance": 42416, - "disturbed": 29967, - "disturbing": 21476, - "disupdates": 45667, - "dit": 5752, - "dit": 2524, - "dita": 47965, - "ditch": 43715, - "ditch": 19291, - "dited": 40392, - "diti": 2363, - "dition": 16452, - "dition": 3015, - "ditional": 4322, - "ditions": 4503, - "dito": 43705, - "dits": 49374, - "dity": 16436, - "dium": 2903, - "div": 5293, - "div": 14869, - "diva": 13605, - "divas": 23534, - "dive": 26042, - "dive": 9058, - "diver": 13119, - "diver": 22094, - "divergence": 48735, - "divergent": 36132, - "divers": 30241, - "divers": 27038, - "diverse": 11464, - "diversi": 24475, - "diversion": 38457, - "diversity": 35634, - "diversity": 6257, - "diverted": 41049, - "dives": 13893, - "divi": 8375, - "divid": 31337, - "divide": 18842, - "divided": 18689, - "dividend": 32067, - "dividends": 45146, - "dividing": 45605, - "divin": 21838, - "divine": 46919, - "divine": 10976, - "diving": 9886, - "divinity": 39754, - "divisi": 39196, - "division": 5378, - "divisional": 40912, - "divisions": 33715, - "divor": 13543, - "divorce": 17060, - "divorced": 39437, - "divya": 47767, - "diwali": 18218, - "dix": 45838, - "dix": 27620, - "dixie": 24484, - "dixit": 28279, - "dixon": 16086, - "diy": 28472, - "diy": 7845, - "diya": 36459, - "diz": 32740, - "dized": 36232, - "dizz": 40239, - "dizzy": 35464, - "dj": 3761, - "dj": 3723, - "djan": 35338, - "django": 46498, - "dji": 35284, - "dji": 28379, - "djing": 36113, - "djo": 19432, - "djoker": 42721, - "djokernole": 42830, - "djokovic": 27944, - "djs": 18117, - "dk": 20702, - "dk": 16196, - "dl": 12558, - "dl": 9373, - "dlc": 19079, - "dle": 11057, - "dle": 3287, - "dled": 23494, - "dler": 40279, - "dles": 7890, - "dless": 14997, - "dley": 12808, - "dling": 18221, - "dly": 3069, - "dm": 19070, - "dm": 4667, - "dma": 42903, - "dman": 18826, - "dmc": 28991, - "dmit": 31607, - "dmitry": 48326, - "dms": 19955, - "dmv": 27508, - "dmx": 45255, - "dn": 11552, - "dn": 7459, - "dna": 8790, - "dnb": 35422, - "dnc": 20237, - "dnd": 11678, - "dnr": 37051, - "dns": 39245, - "dnt": 26795, - "do": 639, - "do": 818, - "doa": 48332, - "dob": 29640, - "doba": 35605, - "dobbs": 43006, - "dobson": 46888, - "doc": 3009, - "doc": 7251, - "doch": 25101, - "dock": 17311, - "dock": 8997, - "docked": 46784, - "docker": 31152, - "docking": 40845, - "docks": 24091, - "docs": 15157, - "doctor": 7872, - "doctor": 5547, - "doctoral": 23649, - "doctorate": 39134, - "doctors": 9705, - "doctorwho": 12996, - "doctr": 28497, - "doctrine": 35612, - "docu": 4433, - "document": 29293, - "document": 15121, - "documentaries": 44209, - "documentary": 7881, - "documentation": 31560, - "documented": 22310, - "documenting": 37876, - "documents": 14105, - "dod": 13847, - "dod": 30187, - "dodd": 36748, - "dodge": 31263, - "dodge": 12093, - "dodgeball": 43244, - "dodger": 31641, - "dodgers": 12422, - "dodgy": 37727, - "doe": 13296, - "does": 2397, - "does": 1897, - "doesn": 2503, - "doesnt": 17937, - "dof": 8277, - "doff": 20193, - "dofficial": 42516, - "dog": 4326, - "dog": 1929, - "dogcelebration": 41819, - "dogday": 27475, - "doge": 42187, - "dogg": 20749, - "doggie": 32237, - "doggo": 42155, - "doggy": 26359, - "doglo": 40733, - "dogre": 40030, - "dogrescue": 44158, - "dogs": 42182, - "dogs": 3255, - "dogsoftwitter": 19415, - "doh": 23581, - "doha": 20908, - "doherty": 31774, - "doi": 36361, - "doin": 15412, - "doing": 37408, - "doing": 1960, - "doit": 32272, - "doit": 28109, - "doj": 25700, - "dojo": 35901, - "dok": 40547, - "dok": 41034, - "doka": 46528, - "dol": 2287, - "dol": 19170, - "dola": 38005, - "dolan": 27200, - "dolby": 42414, - "dolce": 30033, - "dolce": 30661, - "dole": 41040, - "doll": 27031, - "doll": 9286, - "dollar": 35092, - "dollar": 7474, - "dollars": 10669, - "dolls": 15090, - "dolly": 43281, - "dolly": 23821, - "dolom": 37137, - "dolores": 40741, - "dolph": 8900, - "dolph": 22257, - "dolphin": 42963, - "dolphin": 16464, - "dolphins": 14002, - "dom": 2164, - "dom": 1919, - "domain": 15492, - "domaine": 48744, - "domains": 36358, - "dome": 8515, - "dome": 9827, - "domen": 37584, - "domest": 21936, - "domestic": 28189, - "domestic": 9043, - "domin": 4361, - "dominance": 30546, - "dominant": 20565, - "dominate": 21431, - "dominated": 23048, - "dominates": 34043, - "dominating": 29303, - "domination": 30919, - "domingo": 24882, - "dominic": 39007, - "dominic": 19095, - "dominican": 22934, - "dominion": 27155, - "domino": 30752, - "dominos": 39770, - "domo": 44293, - "doms": 30126, - "don": 1067, - "don": 847, - "dona": 26789, - "donal": 42375, - "donald": 5990, - "donald": 4335, - "donaldson": 37783, - "donaldtrump": 6652, - "donat": 36384, - "donate": 6429, - "donated": 8705, - "donates": 26960, - "donating": 12621, - "donation": 7924, - "donations": 9928, - "doncaster": 38008, - "doncaster": 25352, - "doncasterisgreat": 47333, - "done": 5136, - "done": 1700, - "donegal": 24172, - "donesia": 41281, - "donet": 33724, - "donetsk": 33999, - "dong": 26242, - "dong": 31478, - "dongha": 28365, - "donghae": 28945, - "donia": 24014, - "donkey": 21415, - "donkeys": 44644, - "donna": 9158, - "donne": 30897, - "donnein": 38308, - "donneinarte": 40193, - "donnell": 35118, - "donnelly": 39070, - "donnie": 47058, - "donnie": 30609, - "donny": 37291, - "donny": 32887, - "dono": 14840, - "donor": 18013, - "donors": 17887, - "donovan": 21499, - "dons": 22127, - "dont": 8094, - "dont": 4632, - "donut": 18471, - "donuts": 13970, - "doo": 4543, - "doo": 11643, - "doodle": 9388, - "doodled": 41030, - "doodles": 22156, - "doodling": 37548, - "dooley": 47609, - "doom": 23263, - "doom": 14344, - "doomed": 33251, - "doomsday": 41791, - "doon": 36612, - "doop": 33886, - "door": 7188, - "door": 2489, - "doors": 4228, - "doorstep": 19533, - "doorway": 46575, - "dop": 42381, - "dop": 31722, - "dope": 42587, - "dope": 10094, - "doping": 30285, - "dopp": 21774, - "doppelg": 45216, - "doppler": 42540, - "dor": 2766, - "dor": 8695, - "dora": 18104, - "dorado": 32350, - "dorchester": 32656, - "dore": 39423, - "dores": 34323, - "dorf": 17296, - "dori": 49270, - "doria": 43186, - "dorian": 44016, - "doris": 24285, - "dork": 36206, - "dorm": 24263, - "doro": 15498, - "doro": 37389, - "dorothy": 20805, - "dors": 31240, - "dorset": 42109, - "dorset": 16047, - "dorsey": 41607, - "dortmund": 24290, - "dory": 36135, - "dos": 44258, - "dos": 5474, - "dose": 11497, - "doses": 37873, - "dossier": 46042, - "dost": 44222, - "dot": 7473, - "dot": 7004, - "dota": 23085, - "dotcom": 12443, - "dote": 31202, - "dothis": 47864, - "dotnet": 43124, - "dotorg": 46587, - "dots": 19019, - "dotted": 47950, - "dou": 1756, - "dou": 23608, - "doub": 19631, - "double": 13013, - "double": 3200, - "doubled": 24948, - "doubleheader": 34668, - "doubles": 12539, - "doubling": 36850, - "doubt": 37071, - "doubt": 8671, - "doubts": 30894, - "douche": 44292, - "doug": 20271, - "doug": 10758, - "dough": 15785, - "dough": 14983, - "doughnut": 32555, - "doughnuts": 31124, - "dougie": 46317, - "dougla": 9140, - "douglas": 10065, - "douglass": 45692, - "doun": 44785, - "dov": 38856, - "dova": 26551, - "dove": 27511, - "dove": 18281, - "dover": 43019, - "dover": 14683, - "doves": 47067, - "dow": 8022, - "dow": 10688, - "dowell": 27344, - "down": 1833, - "down": 1136, - "downe": 46501, - "downed": 35814, - "downer": 42522, - "downers": 43739, - "downey": 29429, - "downfall": 48702, - "downhill": 27387, - "downing": 28140, - "download": 35076, - "download": 3794, - "downloadable": 49105, - "downloaded": 22961, - "downloading": 30519, - "downloads": 26481, - "downpour": 39034, - "downpours": 40160, - "downs": 10706, - "downside": 41937, - "downstairs": 28174, - "downstream": 43822, - "downtime": 41964, - "downton": 45023, - "downton": 42668, - "downtown": 18230, - "downtown": 5061, - "downward": 37430, - "dowski": 43556, - "dox": 44786, - "dox": 14510, - "doyle": 17728, - "doyou": 27256, - "doz": 31106, - "dozen": 16401, - "dozens": 17883, - "dp": 23820, - "dp": 6465, - "dprint": 46644, - "dprinting": 16194, - "dprk": 47920, - "dps": 34288, - "dq": 28741, - "dr": 1084, - "dr": 1701, - "dra": 1114, - "dra": 7402, - "drac": 20168, - "dracing": 41253, - "dracula": 25405, - "draf": 37426, - "draft": 30624, - "draft": 5198, - "drafted": 19129, - "drafting": 33528, - "drafts": 29194, - "drag": 8452, - "drag": 12463, - "dragged": 27884, - "dragging": 37069, - "dragon": 9187, - "dragon": 5471, - "dragonball": 40959, - "dragoncon": 47802, - "dragonfly": 32824, - "dragons": 10203, - "dragrace": 40762, - "drags": 45368, - "drain": 23347, - "drain": 19467, - "drainage": 25953, - "drained": 44630, - "drains": 43638, - "drainthe": 47337, - "drake": 32504, - "drake": 8958, - "dral": 7503, - "dram": 6937, - "dram": 32170, - "drama": 5055, - "dramas": 33467, - "dramati": 43512, - "dramatic": 11240, - "dramatically": 24495, - "drank": 21712, - "draped": 49113, - "drastic": 43159, - "drastically": 35478, - "drau": 18621, - "draw": 17675, - "draw": 4001, - "drawer": 23219, - "drawers": 38975, - "drawing": 36996, - "drawing": 3610, - "drawings": 13397, - "drawn": 8893, - "draws": 12043, - "dray": 25562, - "drayton": 49044, - "drc": 21434, - "dre": 960, - "dre": 14584, - "dread": 17412, - "dread": 31403, - "dreaded": 47227, - "dreadful": 35846, - "dreality": 48367, - "dream": 4595, - "dream": 2984, - "dreambig": 46495, - "dreamcast": 47226, - "dreamed": 27984, - "dreamer": 25692, - "dreamers": 27194, - "dreaming": 11662, - "dreamliner": 49143, - "dreams": 4405, - "dreamt": 43743, - "dreamteam": 40090, - "dreamy": 23517, - "dred": 10903, - "dredge": 48783, - "dren": 29068, - "dren": 47309, - "drenched": 46378, - "dres": 48852, - "dres": 44697, - "dresden": 34836, - "dress": 12622, - "dress": 2595, - "dressage": 36144, - "dressed": 6559, - "dresser": 26346, - "dresses": 8184, - "dressing": 6348, - "drew": 18792, - "drew": 5281, - "drex": 33985, - "drey": 48271, - "dri": 1203, - "dri": 28833, - "drian": 36870, - "dribb": 42153, - "dric": 23448, - "dridge": 22956, - "drie": 40170, - "dried": 16037, - "drier": 39877, - "dries": 33857, - "drif": 33585, - "drift": 18194, - "drifting": 30276, - "drill": 11626, - "drilled": 46338, - "drilling": 18634, - "drills": 24378, - "drin": 3375, - "drin": 47133, - "drink": 14131, - "drink": 3979, - "drinking": 5778, - "drinklocal": 45998, - "drinks": 6732, - "drip": 24050, - "dripping": 38787, - "dris": 35804, - "drive": 11402, - "drive": 2620, - "driven": 9314, - "driver": 27563, - "driver": 4383, - "driverless": 46769, - "drivers": 7384, - "drives": 11441, - "driveway": 26273, - "driving": 37800, - "driving": 4161, - "drizzle": 28240, - "drm": 39674, - "dro": 1494, - "dro": 12442, - "drogba": 49199, - "droid": 38016, - "drome": 9157, - "dron": 43898, - "dron": 23360, - "drone": 33557, - "drone": 9397, - "drones": 14006, - "droo": 30715, - "drool": 41554, - "drooling": 44360, - "drop": 16407, - "drop": 3387, - "dropbox": 47216, - "dropped": 6792, - "dropping": 8339, - "drops": 6437, - "dros": 47033, - "drou": 38558, - "drought": 13935, - "drove": 13753, - "drow": 21159, - "drown": 28571, - "drowned": 34005, - "drowning": 24618, - "drs": 21257, - "dru": 2275, - "dru": 49048, - "drug": 20601, - "drug": 5600, - "drugs": 8021, - "druid": 40297, - "drum": 13353, - "drum": 8698, - "drummer": 13618, - "drummers": 46191, - "drumming": 35480, - "drummond": 42213, - "drums": 11690, - "drun": 15488, - "drunk": 37398, - "drunk": 8232, - "drunken": 28196, - "drupal": 46481, - "drush": 43009, - "drwho": 48342, - "dry": 13544, - "dry": 4501, - "dryer": 24425, - "drying": 23203, - "ds": 3361, - "ds": 646, - "dsa": 47607, - "dsb": 47168, - "dsb": 14257, - "dsburg": 47237, - "dsc": 37240, - "dsd": 45383, - "dsley": 40740, - "dslr": 33740, - "dsm": 39502, - "dson": 40310, - "dsp": 45291, - "dss": 41580, - "dstv": 35027, - "dt": 13104, - "dt": 7427, - "dthe": 13863, - "dtla": 31885, - "dtm": 42407, - "dts": 46233, - "du": 691, - "du": 3686, - "dua": 25244, - "dual": 39739, - "dual": 5347, - "duane": 38946, - "dub": 14526, - "dub": 13144, - "duba": 5485, - "dubai": 32599, - "dubai": 5985, - "dubbed": 27740, - "dublin": 20707, - "dublin": 6145, - "dubnation": 47329, - "dubois": 48046, - "dubrov": 46709, - "dubrovnik": 48724, - "dubs": 27013, - "dubstep": 38303, - "dubu": 43257, - "duc": 979, - "duc": 36446, - "ducati": 28570, - "ducation": 17197, - "duce": 3660, - "duchess": 21713, - "duck": 12708, - "duck": 6910, - "ducks": 11202, - "duct": 26829, - "dude": 48087, - "dude": 5710, - "dudes": 14449, - "dudley": 27324, - "due": 2887, - "duel": 27143, - "dues": 37646, - "duet": 25457, - "duf": 38713, - "duff": 38071, - "duff": 21934, - "duffy": 23599, - "dug": 22743, - "dug": 21000, - "dugg": 40523, - "duggan": 46169, - "dugout": 36831, - "duh": 26716, - "dui": 29693, - "duk": 14160, - "duke": 18402, - "duke": 7732, - "dukes": 27914, - "dul": 6738, - "dulce": 44872, - "dulil": 32565, - "dulkar": 47980, - "dull": 19433, - "dulu": 28865, - "duluth": 32109, - "dulwich": 47343, - "dum": 13400, - "dum": 11564, - "dumb": 15901, - "dumb": 12464, - "dumbass": 38980, - "dummies": 40899, - "dummy": 34246, - "dump": 12655, - "dump": 17146, - "dumped": 23768, - "dumping": 31707, - "dumplings": 35495, - "dumps": 45804, - "dumpster": 45467, - "dun": 2616, - "dun": 18284, - "dunbar": 41453, - "duncan": 31084, - "duncan": 13502, - "dundal": 38185, - "dundas": 39300, - "dundee": 18619, - "dune": 32833, - "dune": 28208, - "dunedin": 40121, - "dunes": 23526, - "dung": 33712, - "dungeon": 28812, - "dungeon": 22931, - "dungeons": 42572, - "dungeonsand": 34970, - "dungeonsanddragons": 35497, - "dunham": 42501, - "duni": 43454, - "dunk": 17222, - "dunkin": 48022, - "dunkin": 36415, - "dunkirk": 46928, - "dunks": 48977, - "dunlop": 34753, - "dunn": 19185, - "dunne": 38538, - "dunno": 24502, - "duo": 8696, - "dup": 36805, - "dup": 10445, - "duper": 44850, - "duplex": 41186, - "duplic": 28992, - "dupont": 35994, - "dur": 4355, - "dur": 23230, - "dura": 28173, - "dura": 47382, - "durability": 43671, - "durable": 22285, - "duran": 28185, - "durango": 44443, - "durant": 24861, - "duras": 27518, - "duration": 31663, - "durban": 24474, - "dure": 19108, - "durga": 38456, - "durham": 26765, - "durham": 14335, - "during": 1590, - "dus": 9931, - "dusa": 28546, - "dusk": 19708, - "dust": 29723, - "dust": 8349, - "dusted": 38274, - "duster": 46280, - "dustin": 42423, - "dustin": 21235, - "dusting": 41756, - "dusty": 22029, - "dut": 32625, - "dutch": 22277, - "dutch": 7991, - "duter": 21624, - "duterte": 22371, - "duties": 19603, - "dutt": 30081, - "dutton": 42771, - "duty": 6458, - "duval": 42459, - "duvet": 48006, - "dux": 28562, - "dv": 4288, - "dv": 26265, - "dvd": 7170, - "dvds": 36655, - "dvn": 29811, - "dvr": 29210, - "dw": 8455, - "dw": 19997, - "dwar": 13487, - "dwarf": 22643, - "dwayne": 31395, - "dwell": 27549, - "dwell": 18755, - "dwelling": 37098, - "dwight": 22473, - "dwp": 46976, - "dwts": 30220, - "dwyer": 43878, - "dx": 22717, - "dx": 15679, - "dy": 1444, - "dy": 907, - "dyce": 48325, - "dye": 37159, - "dye": 15997, - "dyed": 24906, - "dyer": 29495, - "dyes": 39874, - "dying": 5115, - "dyk": 12142, - "dyke": 32632, - "dylan": 21004, - "dylan": 9900, - "dyn": 44289, - "dyn": 30669, - "dynam": 5735, - "dynamic": 10057, - "dynamics": 14329, - "dynamite": 29003, - "dynamo": 28281, - "dynasty": 14593, - "dyne": 42756, - "dyou": 11484, - "dyour": 22525, - "dys": 11022, - "dys": 38384, - "dysfunction": 36865, - "dysfunctional": 40757, - "dysle": 33681, - "dyslexia": 43199, - "dyson": 34475, - "dyssey": 17435, - "dystop": 28276, - "dystopian": 38915, - "dz": 24421, - "dz": 22913, - "dé": 25466, - "dü": 46948, - "dÃŃ": 46988, - "e": 68, - "e": 324, - "ea": 2150, - "ea": 8100, - "eable": 20693, - "each": 31442, - "each": 2416, - "eachother": 40792, - "ead": 42556, - "ead": 45523, - "eae": 27446, - "eag": 3743, - "eager": 21551, - "eagerly": 30094, - "eagle": 20207, - "eagle": 7517, - "eagles": 6920, - "eal": 48872, - "ealing": 40484, - "eames": 49072, - "eamon": 45954, - "ean": 13327, - "ear": 1055, - "ear": 8373, - "earbuds": 47807, - "eared": 9127, - "earl": 30573, - "earl": 14235, - "earle": 40292, - "earlier": 4297, - "earliest": 22097, - "early": 15840, - "early": 2090, - "earn": 33977, - "earn": 8465, - "earned": 8898, - "earnest": 45422, - "earning": 14550, - "earnings": 15912, - "earns": 16760, - "earp": 35296, - "earphones": 44905, - "earring": 28664, - "earrings": 9136, - "ears": 9861, - "eart": 7086, - "earth": 5184, - "earth": 3475, - "earthand": 34229, - "earthandclouds": 34480, - "earthday": 19481, - "earthquake": 10060, - "earthquakes": 32895, - "earthy": 47139, - "earts": 38824, - "eas": 5740, - "ease": 13574, - "easier": 8817, - "easiest": 26314, - "easily": 8197, - "easing": 44825, - "easport": 42251, - "east": 5022, - "east": 2602, - "eastbound": 28827, - "eastbourne": 38455, - "eastenders": 23545, - "easter": 14783, - "easter": 4811, - "eastern": 34522, - "eastern": 6311, - "eastman": 48280, - "easton": 29619, - "eastside": 42650, - "eastwood": 28270, - "easy": 18308, - "easy": 3176, - "eat": 5418, - "eat": 3384, - "eaten": 16750, - "eater": 24060, - "eaters": 37645, - "eatery": 46559, - "eating": 4371, - "eatlocal": 42868, - "eaton": 28462, - "eats": 13188, - "eau": 17608, - "eazy": 36536, - "eb": 12283, - "eb": 8677, - "eba": 40889, - "ebay": 34412, - "ebay": 4099, - "eber": 34020, - "ebo": 46635, - "ebola": 15864, - "ebon": 22013, - "ebony": 30651, - "ebook": 13122, - "ebooks": 25774, - "ec": 747, - "ec": 10879, - "eca": 18465, - "ecar": 34500, - "ecb": 26205, - "ecc": 33128, - "eccc": 47401, - "eccentric": 43228, - "eccle": 27494, - "ece": 2163, - "eces": 5905, - "ecg": 45983, - "ech": 15797, - "ech": 31147, - "echel": 41233, - "echo": 17366, - "echo": 13989, - "echoes": 32564, - "eci": 31936, - "eck": 25866, - "eck": 15969, - "ecker": 39661, - "ecker": 40890, - "ecla": 47806, - "eclec": 25114, - "eclectic": 28382, - "eclip": 30841, - "eclipse": 11505, - "eclub": 38983, - "eco": 5106, - "eco": 10077, - "ecofriendly": 43412, - "ecol": 22706, - "ecological": 25127, - "ecology": 18578, - "ecommerce": 15529, - "econ": 26755, - "econ": 21158, - "econom": 2768, - "economic": 36649, - "economic": 5259, - "economical": 48782, - "economically": 39406, - "economics": 12625, - "economies": 27136, - "economist": 18836, - "economists": 43701, - "economy": 5644, - "ecor": 28962, - "ecosystem": 15788, - "ecosystems": 28725, - "ecoun": 27924, - "ecr": 48572, - "ecraft": 11439, - "ecs": 23485, - "ecstasy": 47286, - "ecstatic": 36244, - "ect": 25168, - "ecu": 13087, - "ecu": 32919, - "ecuador": 19813, - "ecz": 43530, - "ed": 843, - "ed": 538, - "eda": 10804, - "edad": 44724, - "eday": 39258, - "edc": 21245, - "edchat": 14702, - "edd": 35431, - "eddi": 42930, - "eddie": 22748, - "eddie": 9517, - "eddy": 25959, - "ede": 29632, - "eded": 19555, - "edel": 20460, - "edelman": 48139, - "eden": 23621, - "eden": 13741, - "eder": 16249, - "edes": 36247, - "edfringe": 27402, - "edg": 35955, - "edgar": 33543, - "edgar": 17914, - "edge": 16914, - "edge": 5461, - "edged": 39188, - "edges": 20938, - "edgy": 35393, - "edi": 8750, - "edi": 27148, - "edible": 19795, - "edic": 25184, - "edics": 30641, - "edin": 6524, - "edinburgh": 27574, - "edinburgh": 8068, - "eding": 5742, - "edison": 25846, - "edit": 8239, - "edit": 8013, - "edited": 13945, - "edith": 28597, - "editing": 10178, - "edition": 3062, - "editions": 21664, - "editor": 7661, - "editorial": 12325, - "editors": 19486, - "edits": 24945, - "edm": 37843, - "edm": 13539, - "edmon": 11275, - "edmond": 41581, - "edmonds": 46520, - "edmonton": 37311, - "edmonton": 15058, - "edmun": 36561, - "edmund": 27567, - "edna": 39002, - "edo": 29145, - "edo": 18096, - "edon": 41467, - "edor": 30184, - "edou": 47678, - "edp": 46066, - "eds": 1941, - "edsheeran": 30386, - "edt": 15071, - "edtech": 41825, - "edtech": 15262, - "edu": 11757, - "edu": 11799, - "eduardo": 30604, - "educ": 2200, - "educate": 17563, - "educated": 21447, - "education": 22358, - "education": 2806, - "educational": 10400, - "educator": 19875, - "educators": 15420, - "edwar": 27586, - "edward": 26184, - "edward": 7450, - "edwards": 12627, - "edwin": 48718, - "edwin": 22471, - "edy": 17072, - "edy": 4144, - "ee": 2644, - "ee": 4708, - "eed": 17513, - "eee": 24632, - "eee": 9361, - "eeee": 11696, - "eeee": 17570, - "eeeee": 26938, - "eeeeee": 41407, - "eek": 46591, - "eel": 27462, - "eels": 44416, - "eem": 27236, - "een": 47490, - "een": 21230, - "eer": 35409, - "eer": 31846, - "eera": 36664, - "eerie": 33846, - "ees": 40308, - "eet": 48935, - "eez": 39033, - "ef": 1490, - "ef": 1829, - "efa": 16999, - "eface": 48804, - "efan": 33556, - "efc": 22065, - "efcc": 46087, - "efer": 26199, - "eff": 20548, - "eff": 21715, - "effe": 2808, - "effec": 3943, - "effect": 5436, - "effective": 6837, - "effectively": 17516, - "effectiveness": 26847, - "effects": 7331, - "effic": 36004, - "efficacy": 39937, - "effici": 6670, - "efficiency": 11823, - "efficient": 11334, - "efficiently": 32915, - "effor": 6356, - "effort": 40078, - "effort": 6255, - "effortless": 41639, - "effortlessly": 42320, - "efforts": 6847, - "efish": 35813, - "efl": 27172, - "efron": 48111, - "efs": 7389, - "eg": 8053, - "eg": 14599, - "ega": 41193, - "egan": 42943, - "eger": 46704, - "eger": 22767, - "egg": 13778, - "egg": 5911, - "eggplant": 34906, - "eggs": 7099, - "ego": 34712, - "ego": 14250, - "egos": 43992, - "egre": 27044, - "egret": 42002, - "egy": 5224, - "egyp": 10250, - "egypt": 7267, - "egyptian": 12428, - "eh": 9277, - "eh": 9135, - "eha": 48563, - "ehealth": 48617, - "ehr": 45271, - "ehs": 44648, - "ei": 4006, - "ei": 18264, - "eic": 40251, - "eid": 28038, - "eid": 13979, - "eidmubarak": 46275, - "eiffel": 29720, - "eigh": 13468, - "eight": 7910, - "eighteen": 49316, - "eighth": 21237, - "eighty": 47449, - "eil": 29457, - "eileen": 31468, - "ein": 29944, - "ein": 24524, - "eindhoven": 47172, - "eing": 7702, - "einstein": 20587, - "eira": 47708, - "eis": 13802, - "eisen": 25273, - "eisenhower": 35562, - "either": 6036, - "ej": 19887, - "ej": 25009, - "ejec": 29771, - "ek": 4212, - "ek": 2092, - "el": 544, - "el": 832, - "ela": 11284, - "ela": 3787, - "elab": 38866, - "elabor": 26034, - "elaborate": 33855, - "elaine": 22523, - "elan": 17763, - "elan": 18399, - "eland": 24930, - "eland": 6275, - "elas": 41078, - "elast": 27479, - "elastic": 30282, - "elba": 48598, - "elbow": 21965, - "eld": 5684, - "elder": 11791, - "elder": 14416, - "elderly": 15455, - "elders": 28617, - "eldest": 33503, - "elding": 28223, - "elds": 13466, - "ele": 2084, - "ele": 9766, - "eleague": 36577, - "eleanor": 18604, - "elearning": 29969, - "elec": 1564, - "elec": 38768, - "elect": 15336, - "elected": 8828, - "election": 19312, - "election": 4247, - "electionday": 40540, - "elections": 6949, - "elector": 16465, - "electoral": 19544, - "electr": 3654, - "electra": 48959, - "electri": 23927, - "electric": 19547, - "electric": 5031, - "electrical": 12176, - "electrician": 46422, - "electricity": 10950, - "electrifying": 48843, - "electro": 11648, - "electro": 23244, - "electromagnetic": 46530, - "electron": 33396, - "electronic": 33865, - "electronic": 9273, - "electronica": 43119, - "electronics": 13081, - "eled": 20357, - "elee": 44112, - "eleg": 8075, - "elegance": 19146, - "elegant": 11124, - "elek": 34559, - "elem": 25406, - "element": 14909, - "elementary": 8143, - "elements": 10925, - "elen": 30654, - "elen": 39164, - "elena": 19421, - "eleng": 48180, - "eleph": 7554, - "elephant": 10299, - "elephants": 16871, - "eler": 24646, - "eless": 15244, - "eless": 30837, - "elets": 19400, - "elev": 7921, - "elevate": 26736, - "elevated": 23967, - "elevation": 23826, - "elevator": 19021, - "eleven": 31617, - "eleven": 17795, - "elf": 45961, - "elf": 11924, - "elfie": 39955, - "elg": 28790, - "elgin": 31868, - "eli": 1018, - "eli": 6292, - "elia": 10956, - "elian": 42508, - "elias": 47274, - "elias": 29902, - "elic": 34743, - "elic": 13492, - "elie": 38677, - "elie": 26501, - "elier": 14634, - "elife": 37429, - "elife": 12719, - "eligibility": 34937, - "eligible": 16978, - "elijah": 26065, - "elike": 48913, - "elim": 9296, - "elimin": 11386, - "eliminate": 19655, - "eliminated": 29075, - "eliminating": 36619, - "elimination": 24176, - "elin": 25353, - "elin": 13458, - "eline": 46199, - "eline": 7153, - "eling": 9990, - "elio": 47943, - "elion": 30682, - "elions": 44159, - "eliot": 33326, - "elis": 23411, - "elis": 48021, - "elisa": 25610, - "elisa": 44051, - "elisabeth": 33127, - "elise": 27124, - "elit": 40882, - "elite": 32277, - "elite": 6553, - "elited": 43943, - "elitedangerous": 47138, - "elites": 35975, - "elius": 35623, - "elive": 49338, - "elive": 23505, - "elives": 49174, - "elix": 32926, - "elixir": 42887, - "eliz": 42844, - "eliza": 6132, - "eliza": 29992, - "elizabeth": 22397, - "elizabeth": 7026, - "elk": 34013, - "elk": 21896, - "ell": 826, - "ell": 812, - "ella": 20692, - "ella": 2957, - "elland": 43326, - "ellar": 38443, - "ellas": 37053, - "elle": 12818, - "elle": 4765, - "elled": 13146, - "ellen": 14007, - "ellen": 12312, - "ellenshow": 34812, - "eller": 20927, - "eller": 4465, - "ellers": 19010, - "elles": 24431, - "elli": 3367, - "elli": 6673, - "ellic": 38905, - "ellie": 16769, - "ellier": 44054, - "ellin": 40374, - "elling": 2220, - "ellington": 34477, - "ellini": 43256, - "elliot": 20761, - "elliott": 44456, - "elliott": 13788, - "ellip": 44816, - "ellis": 11553, - "ellison": 32295, - "ello": 2512, - "ellor": 14594, - "ells": 2433, - "ellu": 35560, - "elly": 8041, - "elly": 20355, - "elm": 25199, - "elm": 22082, - "elman": 33622, - "elmer": 45958, - "elmo": 32150, - "elo": 6170, - "elo": 13490, - "elon": 26381, - "elon": 20406, - "elondon": 47377, - "elong": 44363, - "elonmusk": 37076, - "elope": 23367, - "eloqu": 37795, - "elos": 44733, - "elot": 43490, - "elove": 43319, - "elove": 19165, - "elover": 21732, - "elovers": 33946, - "els": 35958, - "els": 1645, - "elsa": 22050, - "else": 18857, - "else": 3344, - "elsewhere": 22906, - "elson": 19624, - "elt": 18692, - "elton": 20758, - "elu": 14208, - "elusive": 28903, - "elves": 29111, - "elvi": 47008, - "elvis": 47359, - "elvis": 14498, - "elxn": 37726, - "ely": 12189, - "ely": 1273, - "elyn": 29691, - "elyn": 18126, - "em": 908, - "em": 2270, - "ema": 7002, - "ema": 11131, - "emabiggest": 23101, - "emabiggestfans": 29587, - "email": 33537, - "email": 4462, - "emailed": 40470, - "emailmarketing": 40188, - "emails": 12871, - "eman": 24416, - "eman": 36868, - "emancip": 42996, - "emanuel": 35232, - "emb": 3692, - "embar": 8266, - "embaras": 48019, - "embark": 33953, - "embarra": 11382, - "embarrass": 27183, - "embarrassed": 28217, - "embarrassing": 19653, - "embarrassment": 41346, - "embassy": 13598, - "embe": 46041, - "embed": 19703, - "embedded": 22046, - "embelli": 32144, - "embellished": 46992, - "ember": 47049, - "emblem": 21163, - "embo": 23065, - "embr": 35267, - "embrac": 16928, - "embrace": 12118, - "embraced": 35739, - "embraces": 38404, - "embracing": 22196, - "embro": 12550, - "embroi": 18667, - "embroide": 21530, - "embroidered": 22381, - "embroidery": 20823, - "emc": 20897, - "emc": 31602, - "emcee": 42038, - "eme": 22910, - "eme": 21548, - "emea": 40352, - "emed": 11028, - "emen": 22033, - "ement": 40841, - "ement": 2057, - "ements": 11058, - "emer": 3132, - "emer": 25727, - "emerald": 46878, - "emerald": 16980, - "emerge": 22182, - "emerged": 26425, - "emergen": 24096, - "emergence": 39867, - "emergencies": 35759, - "emergency": 44038, - "emergency": 5897, - "emerges": 30801, - "emerging": 38174, - "emerging": 11113, - "emeritus": 35333, - "emerson": 24147, - "emery": 32678, - "emi": 44327, - "emi": 18525, - "emil": 26794, - "emil": 40624, - "emile": 43926, - "emili": 20709, - "emilia": 34238, - "emilio": 39722, - "emily": 14545, - "emily": 7640, - "emin": 17227, - "emin": 23995, - "eminem": 22129, - "eminent": 33779, - "eming": 40398, - "emir": 13337, - "emir": 47613, - "emirates": 47244, - "emirates": 17867, - "emission": 27761, - "emissions": 14172, - "emit": 49043, - "emma": 18177, - "emma": 7445, - "emmanuel": 48045, - "emmanuel": 20411, - "emmett": 45779, - "emmy": 35625, - "emmy": 17089, - "emmys": 21875, - "emo": 3738, - "emo": 19381, - "emoji": 16327, - "emojis": 27870, - "emon": 34406, - "emor": 45034, - "emory": 44274, - "emotion": 17464, - "emotional": 7357, - "emotionally": 24088, - "emotions": 12904, - "emp": 3831, - "emp": 41004, - "empathy": 22420, - "emper": 12522, - "emperor": 13828, - "empha": 16237, - "emphasi": 47176, - "emphasis": 29588, - "empire": 26212, - "empire": 7614, - "empires": 46510, - "emplo": 3409, - "employ": 37290, - "employ": 39626, - "employe": 5037, - "employed": 26567, - "employee": 36631, - "employee": 9560, - "employees": 7377, - "employer": 21296, - "employers": 17647, - "employment": 10959, - "empor": 27386, - "emporium": 48541, - "empower": 13612, - "empower": 17230, - "empowered": 29087, - "empowering": 20086, - "empowerment": 15747, - "empowers": 46206, - "empress": 26656, - "empty": 41203, - "empty": 7893, - "emra": 39259, - "ems": 2858, - "emt": 46360, - "emu": 48149, - "emu": 29296, - "emul": 23272, - "emy": 31076, - "en": 524, - "en": 576, - "ena": 3452, - "enab": 17308, - "enable": 15642, - "enabled": 23666, - "enables": 23417, - "enabling": 23590, - "enam": 41486, - "enamel": 22746, - "enary": 13132, - "enas": 34536, - "enation": 20860, - "enberg": 15658, - "enburg": 28430, - "enc": 33169, - "enca": 37774, - "encan": 30345, - "encapsul": 40874, - "ence": 6495, - "ence": 954, - "enced": 6549, - "ences": 3777, - "enchan": 17290, - "enchanted": 28258, - "enchanting": 32531, - "enchil": 47396, - "enci": 32207, - "encia": 30068, - "encies": 18729, - "encing": 10326, - "enclosed": 43243, - "enclosure": 37419, - "encom": 44026, - "encore": 20549, - "encoun": 17309, - "encounter": 13164, - "encountered": 32492, - "encounters": 25399, - "encoura": 6169, - "encourage": 12090, - "encouraged": 20299, - "encouragement": 24959, - "encourages": 23848, - "encouraging": 15875, - "encro": 45822, - "encry": 28600, - "encryp": 42928, - "encrypted": 48710, - "encryption": 31423, - "ency": 3484, - "encyclo": 32104, - "encyclopedia": 38376, - "end": 945, - "end": 806, - "enda": 6735, - "endale": 20290, - "endange": 13990, - "endangered": 14931, - "ende": 11373, - "ende": 40306, - "endeav": 18134, - "endeavor": 40502, - "endeavors": 44394, - "endeavour": 38035, - "ended": 2622, - "endemic": 41241, - "endent": 16265, - "ender": 48106, - "ender": 12383, - "enders": 7418, - "endez": 43850, - "endgame": 23042, - "endi": 31359, - "ending": 2695, - "endings": 36516, - "endish": 38841, - "endless": 12688, - "endlessly": 45145, - "endment": 45894, - "endo": 13476, - "endo": 15830, - "endocr": 36486, - "endof": 40786, - "endome": 46996, - "endon": 48018, - "endor": 8092, - "endorf": 37249, - "endorse": 28819, - "endorsed": 24307, - "endorsement": 21205, - "endorses": 34603, - "endorsing": 46779, - "endow": 45895, - "endra": 22321, - "ends": 1339, - "endthe": 46256, - "endu": 26032, - "endur": 19557, - "endurance": 21027, - "endure": 32419, - "enduring": 30851, - "enduro": 47042, - "ene": 3297, - "ene": 6049, - "ened": 2494, - "eneed": 45137, - "enegger": 33235, - "enei": 48906, - "enemies": 15824, - "enemy": 10310, - "enen": 45113, - "ener": 2244, - "ener": 13600, - "energ": 39451, - "energetic": 24197, - "energi": 23044, - "energies": 42374, - "energized": 48635, - "energy": 14974, - "energy": 2650, - "energye": 32271, - "energyefficiency": 40586, - "eners": 48208, - "enes": 42066, - "eness": 11806, - "enet": 46336, - "enew": 29672, - "enews": 13442, - "eney": 20706, - "enez": 33110, - "enf": 38167, - "enfield": 27808, - "enfor": 10592, - "enforce": 40224, - "enforced": 44597, - "enforcement": 12460, - "eng": 1035, - "eng": 6730, - "enga": 22297, - "engag": 6793, - "engage": 11089, - "engaged": 11475, - "engagement": 7281, - "engaging": 13060, - "enge": 26279, - "enge": 2742, - "engel": 38265, - "engen": 48286, - "enger": 6618, - "engers": 7533, - "engine": 3355, - "engine": 5857, - "engineer": 40151, - "engineer": 8517, - "engineered": 26580, - "engineering": 5273, - "engineers": 11494, - "engines": 14487, - "england": 20904, - "england": 3595, - "english": 15942, - "english": 3469, - "engra": 17560, - "engraved": 29421, - "engraving": 33309, - "engul": 43655, - "engv": 28401, - "enh": 7449, - "enhall": 48781, - "enham": 24592, - "enhan": 26827, - "enhance": 13993, - "enhanced": 16070, - "enhancement": 35601, - "enhances": 38259, - "enhancing": 25986, - "eni": 4395, - "eni": 17538, - "enic": 46780, - "enic": 28292, - "enig": 19754, - "enig": 48730, - "enight": 32848, - "enight": 20640, - "enigma": 34998, - "ening": 1133, - "enium": 34380, - "enix": 25720, - "enjo": 1498, - "enjoy": 12981, - "enjoy": 2218, - "enjoyable": 17444, - "enjoyed": 5045, - "enjoying": 3603, - "enjoyment": 34905, - "enjoys": 17024, - "enka": 43942, - "enko": 25312, - "enlar": 38136, - "enligh": 21364, - "enlighten": 28200, - "enlightened": 44032, - "enlightening": 44005, - "enlightenment": 29255, - "enlisted": 43555, - "enly": 43023, - "enn": 43563, - "enna": 8095, - "enne": 21176, - "enne": 11518, - "ennedy": 46266, - "ennes": 43613, - "enni": 7049, - "ennial": 14220, - "ennis": 48923, - "ennis": 26309, - "eno": 9429, - "eno": 12843, - "enoch": 47917, - "enor": 13955, - "enormous": 20129, - "enos": 44759, - "enote": 44955, - "enough": 2744, - "enow": 26876, - "enqu": 28417, - "enqui": 22810, - "enquire": 46658, - "enquiries": 31901, - "enquiry": 45141, - "enri": 18915, - "enrich": 20058, - "enrich": 45504, - "enriched": 45166, - "enrichment": 32903, - "enrique": 25489, - "enrol": 44279, - "enroll": 23739, - "enroll": 30366, - "enrolled": 36853, - "enrollment": 24875, - "enroute": 40548, - "ens": 41799, - "ens": 1323, - "ense": 12657, - "ense": 27658, - "ensemble": 14843, - "ensis": 32842, - "ensla": 37535, - "enslaved": 48675, - "ensure": 7492, - "ensures": 29707, - "ensuring": 19403, - "ent": 724, - "ent": 621, - "enta": 17681, - "ental": 32342, - "ental": 6168, - "entary": 9833, - "entation": 37412, - "ente": 17433, - "ente": 9935, - "ented": 3800, - "entennial": 43088, - "enter": 2963, - "enter": 3819, - "entered": 10679, - "entering": 12580, - "enterpri": 7339, - "enterprise": 9220, - "enterprises": 21219, - "enters": 15287, - "entertain": 5566, - "entertain": 23510, - "entertained": 30631, - "entertainer": 28674, - "entertaining": 13897, - "entertainment": 6166, - "entes": 24213, - "enthr": 36202, - "enthusi": 9631, - "enthusiasm": 20525, - "enthusiast": 27153, - "enthusiastic": 22068, - "enthusiasts": 27514, - "enti": 1938, - "ential": 5194, - "entially": 37695, - "entic": 10340, - "entine": 49212, - "enting": 20526, - "entire": 4709, - "entirely": 13911, - "entirety": 43242, - "entit": 15209, - "entities": 38134, - "entitled": 18680, - "entity": 28455, - "ently": 2922, - "ento": 21917, - "ento": 8762, - "entom": 31676, - "entourage": 47893, - "entr": 7129, - "entrance": 9129, - "entrata": 27304, - "entre": 34188, - "entre": 19600, - "entren": 46959, - "entrepre": 4583, - "entreprene": 4789, - "entrepreneu": 26784, - "entrepreneur": 12119, - "entrepreneur": 8033, - "entrepreneurial": 28261, - "entrepreneurs": 11054, - "entrepreneurship": 12858, - "entries": 13766, - "entry": 5362, - "ents": 870, - "entu": 6650, - "enty": 5657, - "enu": 23430, - "env": 32280, - "env": 39207, - "envel": 20052, - "envelope": 27358, - "envir": 3512, - "enviro": 46200, - "environ": 3599, - "environment": 33039, - "environment": 5501, - "environmental": 7831, - "environmentally": 32855, - "environments": 19577, - "envision": 49031, - "envoy": 29263, - "envy": 21017, - "eny": 20482, - "enya": 36509, - "enyc": 39520, - "enz": 25805, - "enz": 31873, - "enza": 25239, - "enzie": 14839, - "enzo": 31543, - "enzyme": 40348, - "enzymes": 47465, - "eo": 16054, - "eo": 11712, - "eoin": 48634, - "eon": 31915, - "eos": 17805, - "ep": 1178, - "ep": 1117, - "epa": 15866, - "epage": 26931, - "epaper": 33584, - "epcot": 32524, - "eper": 43071, - "eph": 45752, - "eph": 41240, - "ephe": 25129, - "epi": 7219, - "epi": 34641, - "epic": 12683, - "epic": 4991, - "epiconetsy": 49222, - "epide": 17382, - "epidemi": 44447, - "epidemic": 21522, - "epile": 23150, - "epilepsy": 29547, - "epilo": 31291, - "epilots": 39766, - "epiph": 40561, - "epiphany": 43251, - "epis": 24616, - "episcop": 28037, - "episcopal": 31221, - "episo": 2708, - "episode": 2965, - "episodes": 11837, - "epit": 21967, - "epitome": 35114, - "epl": 25950, - "epo": 25810, - "epp": 39054, - "epp": 39593, - "eps": 4090, - "epsilon": 40019, - "epsom": 40364, - "epstein": 34688, - "eq": 39331, - "eq": 33692, - "equ": 2563, - "equal": 17373, - "equal": 10433, - "equality": 48981, - "equality": 9578, - "equally": 18172, - "equals": 30278, - "equation": 28591, - "equations": 38225, - "eque": 19518, - "equestrian": 24728, - "equi": 8752, - "equili": 43262, - "equine": 33801, - "equinox": 32652, - "equip": 6526, - "equip": 36979, - "equipment": 6893, - "equipo": 45688, - "equipped": 18331, - "equitable": 44717, - "equities": 44015, - "equity": 11293, - "equivalent": 19489, - "er": 517, - "er": 528, - "era": 30548, - "era": 2072, - "erable": 18801, - "erad": 24194, - "eradic": 36346, - "eradicate": 46164, - "eral": 6222, - "eran": 13069, - "eras": 19325, - "eras": 39090, - "erase": 33893, - "erased": 46762, - "erasmus": 38935, - "erc": 5360, - "erc": 32382, - "erd": 25645, - "erdo": 21112, - "erdogan": 24453, - "ere": 17907, - "ere": 642, - "erec": 21526, - "erected": 39365, - "ered": 9097, - "eres": 15751, - "ergon": 38120, - "ergy": 19550, - "eri": 2769, - "eri": 9509, - "eria": 11634, - "erial": 5409, - "eric": 1206, - "eric": 5396, - "erica": 13208, - "erich": 26070, - "erick": 27434, - "erick": 36959, - "erickson": 45286, - "ericsson": 39645, - "eridge": 45408, - "erie": 7005, - "eries": 9099, - "erik": 22805, - "erik": 16532, - "erika": 25531, - "erin": 17532, - "erin": 11333, - "erina": 25176, - "ering": 1785, - "erit": 23335, - "eritrea": 30738, - "erjee": 41665, - "erly": 14380, - "erm": 31649, - "erman": 17990, - "ern": 6992, - "ern": 12140, - "ernal": 20868, - "ernan": 34617, - "ernation": 48796, - "erne": 33930, - "ernest": 23006, - "ernie": 23636, - "ernity": 14653, - "erno": 40812, - "ernst": 30099, - "ero": 3211, - "ero": 3732, - "erock": 38206, - "eron": 32837, - "eroom": 46690, - "eros": 30597, - "erose": 48657, - "erosion": 30174, - "erotic": 30708, - "erotica": 39126, - "erous": 6384, - "eroy": 36461, - "erp": 28268, - "err": 22479, - "err": 25346, - "erra": 48446, - "errands": 45485, - "error": 12097, - "errors": 21195, - "erry": 45236, - "erry": 24124, - "ers": 4840, - "ers": 612, - "ersfc": 37925, - "ership": 2884, - "erson": 25780, - "erson": 6811, - "ert": 40325, - "ert": 3112, - "erta": 32007, - "erton": 26245, - "erts": 12921, - "eru": 36068, - "erun": 41642, - "erup": 17093, - "erupted": 48862, - "eruption": 33705, - "erville": 37557, - "erwin": 43724, - "ery": 12467, - "ery": 1692, - "erz": 38711, - "es": 957, - "es": 542, - "esa": 46834, - "esa": 12489, - "esanders": 23099, - "esc": 3330, - "esc": 28420, - "escal": 15902, - "escap": 11499, - "escape": 32484, - "escape": 7568, - "escaped": 18707, - "escapes": 29916, - "escaping": 21767, - "escar": 39229, - "escence": 37972, - "esch": 46760, - "esch": 41945, - "esco": 32482, - "escobar": 48807, - "escor": 24360, - "escort": 24976, - "escorted": 47667, - "escorts": 48574, - "escu": 36517, - "esday": 19553, - "ese": 18766, - "ese": 2260, - "esg": 41674, - "esh": 17119, - "esh": 13407, - "esha": 28799, - "eshop": 38451, - "eshop": 45570, - "eshopsuk": 39349, - "esi": 30064, - "esis": 12414, - "esk": 19359, - "esl": 26201, - "eso": 29890, - "eso": 28921, - "esof": 17047, - "eson": 46845, - "esp": 3849, - "esp": 13870, - "espa": 37301, - "espan": 41731, - "españa": 41118, - "especially": 4878, - "esper": 29216, - "espino": 46633, - "espionage": 43498, - "espn": 22917, - "espn": 7540, - "espnu": 47747, - "espo": 34381, - "esports": 16035, - "espresso": 17098, - "esq": 47352, - "esqu": 34616, - "esque": 25877, - "ess": 3118, - "ess": 9764, - "essa": 39125, - "essay": 12751, - "essays": 27328, - "esse": 22305, - "essen": 30489, - "essence": 17830, - "essenti": 11163, - "essential": 47264, - "essential": 6895, - "essentially": 30042, - "essentials": 16191, - "essex": 30563, - "essex": 11623, - "est": 2291, - "est": 1509, - "esta": 41449, - "esta": 10135, - "estab": 7010, - "establi": 8412, - "establish": 19709, - "established": 13143, - "establishing": 29420, - "establishment": 20213, - "estas": 39072, - "estate": 47130, - "estate": 6159, - "estates": 26054, - "este": 12968, - "este": 20579, - "esteban": 48381, - "esteem": 31541, - "esteemed": 36293, - "ester": 45808, - "esthe": 18468, - "esther": 24393, - "estim": 8904, - "estimate": 21883, - "estimated": 16665, - "estimates": 21957, - "esto": 31589, - "esto": 23958, - "estonia": 26260, - "estonian": 48895, - "estrada": 48116, - "estre": 31271, - "estu": 26272, - "estuary": 35269, - "esur": 35758, - "esville": 39187, - "esy": 46268, - "et": 1169, - "et": 875, - "eta": 8761, - "etal": 25221, - "etary": 13074, - "etc": 5353, - "etched": 40411, - "etching": 41375, - "ete": 38820, - "ete": 40245, - "eter": 8587, - "eter": 17007, - "eternal": 13732, - "eternally": 48486, - "eternity": 23832, - "eters": 18392, - "etf": 31661, - "eth": 4819, - "eth": 5927, - "ethan": 24245, - "ethan": 15958, - "ethanol": 38166, - "ethe": 21312, - "ethel": 45921, - "ether": 23349, - "ethere": 18705, - "ethereal": 40925, - "ethereum": 19612, - "ethernet": 35026, - "ethi": 10327, - "ethic": 39104, - "ethical": 47041, - "ethical": 17679, - "ethics": 13355, - "ethiop": 10897, - "ethiopia": 13920, - "ethiopian": 24507, - "ethnic": 30522, - "ethnic": 16344, - "ethnicity": 46787, - "ethno": 34225, - "ethos": 48768, - "eti": 11188, - "eti": 30394, - "etienne": 46118, - "eties": 15137, - "etihad": 38489, - "etiquette": 37957, - "etis": 38216, - "etisation": 39733, - "etna": 41940, - "eto": 27829, - "eto": 33837, - "eton": 44339, - "etour": 41462, - "etr": 23012, - "etres": 42838, - "ets": 3442, - "etsy": 13237, - "etsy": 6282, - "etsym": 22902, - "etsymntt": 25416, - "etsyshop": 44643, - "ett": 32729, - "ett": 24998, - "etta": 30466, - "ette": 19981, - "ette": 5212, - "ettes": 35326, - "etto": 44219, - "etty": 40759, - "etu": 36593, - "etv": 49155, - "etv": 20325, - "etwork": 20585, - "ety": 25920, - "ety": 2746, - "etz": 36181, - "etz": 25301, - "eu": 1506, - "eu": 3238, - "eucalyp": 41068, - "eucalyptus": 42351, - "euchar": 38362, - "eugen": 30678, - "eugene": 17760, - "eul": 46749, - "eun": 16431, - "eun": 26219, - "eunhyuk": 47526, - "eup": 44435, - "euph": 21386, - "euphoria": 41051, - "eur": 18343, - "eur": 12018, - "eura": 32605, - "eure": 25311, - "euref": 48017, - "eureka": 31686, - "euro": 2039, - "euro": 8463, - "euroleague": 46821, - "europa": 18290, - "europale": 42473, - "europaleague": 44029, - "europarl": 44922, - "europe": 4198, - "europe": 3848, - "european": 26712, - "european": 4759, - "europeans": 37082, - "euros": 22274, - "eurovision": 17593, - "eurozone": 42555, - "eurusd": 40895, - "eus": 44214, - "euston": 46905, - "euthan": 43280, - "euve": 40652, - "eux": 25019, - "ev": 776, - "ev": 10133, - "eva": 6845, - "evacu": 13187, - "evacuated": 26806, - "evacuation": 27353, - "eval": 25139, - "eval": 9703, - "evalu": 10314, - "evaluate": 27174, - "evaluating": 34541, - "evaluation": 17640, - "evan": 12821, - "evan": 12847, - "evangel": 20518, - "evangeli": 21372, - "evangelical": 36151, - "evangelist": 42275, - "evankirstel": 46581, - "evans": 8836, - "evansville": 44782, - "evapor": 33352, - "evasion": 48795, - "eve": 5732, - "eve": 1866, - "eved": 19820, - "evel": 39315, - "evelyn": 26687, - "evement": 8210, - "even": 6359, - "even": 1427, - "evening": 34487, - "evening": 2285, - "evenings": 19994, - "evenly": 45974, - "event": 10612, - "event": 1655, - "eventful": 45628, - "evento": 38155, - "eventprofs": 24980, - "events": 3667, - "eventu": 14055, - "eventual": 45321, - "eventually": 14397, - "ever": 888, - "ever": 1247, - "everest": 21722, - "everett": 25456, - "everglades": 46294, - "evergreen": 23852, - "everlasting": 32849, - "evers": 31914, - "everton": 13315, - "every": 1091, - "every": 1505, - "everybody": 5901, - "everyday": 25049, - "everyday": 5160, - "everyone": 1584, - "everything": 36376, - "everything": 2410, - "everytime": 16911, - "everywhere": 6364, - "eves": 7323, - "evi": 5348, - "evi": 36989, - "evic": 21336, - "eviction": 37111, - "eviden": 46220, - "evidence": 6439, - "evident": 34529, - "evie": 47195, - "evil": 23218, - "evil": 6006, - "eville": 16143, - "eving": 24729, - "evo": 17962, - "evo": 13169, - "evoc": 43133, - "evol": 5350, - "evolu": 7725, - "evolution": 8902, - "evolutionary": 30629, - "evolve": 23406, - "evolved": 22613, - "evolving": 23675, - "evp": 46154, - "evs": 33576, - "ew": 11942, - "ew": 15428, - "ewan": 40247, - "ewe": 48438, - "ewing": 38873, - "ews": 9878, - "ex": 659, - "ex": 4118, - "exac": 5460, - "exact": 12651, - "exactly": 5840, - "exagger": 29766, - "exal": 49324, - "exam": 4428, - "exam": 8785, - "examination": 20970, - "examine": 25728, - "examined": 44004, - "examiner": 29149, - "examines": 28160, - "examining": 30616, - "example": 6228, - "examples": 14790, - "exams": 14028, - "exas": 47536, - "exc": 1302, - "excav": 20733, - "excavation": 45909, - "exce": 10999, - "exceed": 32521, - "exceeded": 36221, - "exceeding": 47213, - "exceeds": 49353, - "excel": 28351, - "excel": 18754, - "excell": 3298, - "excellence": 8171, - "excellency": 36503, - "excellent": 4239, - "excelsi": 47315, - "excep": 8882, - "except": 8541, - "exception": 25018, - "exceptional": 13425, - "exceptionally": 29306, - "excer": 17737, - "excerpt": 20586, - "excess": 22491, - "excessive": 21332, - "exchange": 6616, - "exchanged": 48919, - "exchanges": 29730, - "exchanging": 47760, - "excit": 10510, - "excite": 47711, - "excited": 1889, - "excitement": 11407, - "exciting": 4300, - "exclu": 3114, - "exclude": 49235, - "excluded": 46216, - "excluding": 44326, - "exclusion": 40219, - "exclusive": 3747, - "exclusively": 13565, - "exclusives": 47149, - "excu": 7324, - "excur": 27533, - "excursion": 34869, - "excuse": 9266, - "excuses": 19388, - "exe": 3554, - "exe": 48027, - "exec": 15052, - "execs": 35728, - "execu": 4360, - "execute": 36405, - "executed": 20432, - "execution": 18085, - "executive": 5944, - "executives": 24357, - "exem": 19753, - "exemp": 28602, - "exempl": 36371, - "exemplary": 39123, - "exempli": 41934, - "exempt": 44278, - "exemption": 47481, - "exer": 40295, - "exerc": 5932, - "exercise": 7016, - "exercises": 19669, - "exercising": 39036, - "exeter": 32137, - "exeter": 18837, - "exfoli": 38823, - "exhau": 11154, - "exhaust": 21812, - "exhausted": 21741, - "exhausting": 40035, - "exhaustion": 49221, - "exhi": 3022, - "exhib": 3783, - "exhibit": 24992, - "exhibit": 8209, - "exhibiting": 23889, - "exhibition": 4219, - "exhibitions": 28311, - "exhibitor": 44192, - "exhibitors": 38542, - "exhibits": 30093, - "exhilar": 40262, - "exhilarating": 49289, - "exi": 5297, - "exico": 38712, - "exile": 28566, - "exist": 10899, - "exist": 9645, - "existed": 23198, - "existence": 13832, - "existent": 43541, - "existential": 38752, - "existing": 12886, - "exists": 14608, - "exit": 9374, - "exited": 37581, - "exiting": 39577, - "exits": 34943, - "exmoor": 48260, - "exo": 15600, - "exo": 5842, - "exodus": 30098, - "exol": 42856, - "exop": 35288, - "exoplan": 37980, - "exor": 24506, - "exorcist": 46309, - "exotic": 15639, - "exp": 9923, - "exp": 19066, - "expan": 7512, - "expand": 10382, - "expand": 13141, - "expanded": 18390, - "expanding": 15755, - "expands": 22223, - "expanse": 46886, - "expansion": 10138, - "expansive": 49261, - "expat": 43900, - "expe": 2560, - "expect": 9802, - "expect": 5716, - "expectation": 34273, - "expectations": 12529, - "expected": 5573, - "expecting": 12525, - "expects": 24536, - "expedition": 16761, - "expeditions": 49327, - "expelled": 48834, - "expen": 7216, - "expend": 29302, - "expenditure": 47044, - "expense": 28473, - "expenses": 21797, - "expensive": 9649, - "exper": 1533, - "experi": 4723, - "experience": 31867, - "experience": 2415, - "experienced": 10417, - "experiences": 8233, - "experiencing": 16643, - "experiential": 44952, - "experim": 6697, - "experiment": 13079, - "experimental": 16539, - "experimenting": 28263, - "experiments": 21077, - "expert": 6284, - "expertise": 16555, - "experts": 6960, - "expi": 26850, - "expir": 35077, - "expire": 49315, - "expired": 30200, - "expires": 34739, - "expl": 3261, - "expla": 3517, - "explain": 48918, - "explain": 7304, - "explained": 14229, - "explaining": 13136, - "explains": 6655, - "explan": 13294, - "explanation": 16577, - "explanations": 34383, - "explic": 21011, - "explicit": 33228, - "explo": 3586, - "explode": 31262, - "exploded": 28947, - "explodes": 38119, - "exploding": 34683, - "exploit": 36953, - "exploited": 48554, - "explor": 11958, - "exploration": 14043, - "explore": 10405, - "explore": 5147, - "explorebc": 38754, - "explorecanada": 36600, - "explored": 25016, - "explorer": 15776, - "explorers": 28491, - "explores": 13996, - "exploring": 7584, - "explosion": 13785, - "explosions": 38646, - "explosive": 18888, - "explosives": 44705, - "expo": 7820, - "expo": 6344, - "expon": 27905, - "export": 14444, - "exporting": 47433, - "exports": 20088, - "expose": 23181, - "exposed": 12180, - "exposes": 33575, - "exposing": 28362, - "exposition": 36943, - "exposure": 11903, - "expre": 6085, - "express": 18553, - "express": 5642, - "expressed": 20777, - "expresses": 31931, - "expressing": 30207, - "expression": 11357, - "expressions": 20314, - "expressive": 42060, - "expressway": 31658, - "exquis": 16575, - "exquisite": 17958, - "ext": 5711, - "ext": 20072, - "exten": 5555, - "extend": 14492, - "extended": 9614, - "extending": 25652, - "extends": 20688, - "extension": 10275, - "extensions": 24525, - "extensive": 16870, - "extensively": 47365, - "extent": 24913, - "exter": 9797, - "exterior": 19352, - "extermin": 41671, - "external": 15028, - "extin": 13553, - "extinct": 24488, - "extinction": 21186, - "extingui": 38567, - "extor": 35620, - "extr": 29082, - "extra": 6416, - "extra": 4231, - "extrac": 18550, - "extract": 18962, - "extraction": 28789, - "extracts": 45576, - "extraordin": 23628, - "extraordinaire": 30909, - "extraordinary": 10982, - "extras": 29817, - "extravag": 22299, - "extravaganza": 29461, - "extre": 3978, - "extreme": 38357, - "extreme": 8331, - "extremely": 6519, - "extremism": 31493, - "extremist": 36383, - "extremists": 41425, - "extru": 43010, - "ey": 1541, - "ey": 1477, - "eyang": 28915, - "eye": 5034, - "eye": 3272, - "eyebrow": 34250, - "eyebrows": 19923, - "eyed": 15512, - "eyeing": 34916, - "eyel": 17075, - "eyelashes": 42074, - "eyeliner": 33354, - "eyeon": 25126, - "eyes": 3095, - "eyeshadow": 35213, - "eyewear": 30165, - "eyewitness": 36258, - "eyou": 31996, - "eyour": 40229, - "eyre": 44115, - "ez": 10082, - "ez": 8387, - "eze": 25993, - "eze": 27229, - "ezekiel": 41428, - "ezra": 27552, - "f": 69, - "f": 325, - "fa": 778, - "fa": 2800, - "faa": 27577, - "fab": 2833, - "fab": 5492, - "faber": 43461, - "faber": 42488, - "fabi": 29425, - "fabian": 34539, - "fabio": 31666, - "fabric": 16217, - "fabric": 10033, - "fabricated": 40851, - "fabrication": 33476, - "fabrics": 23159, - "fabulous": 5189, - "fac": 1053, - "fac": 35438, - "facade": 29217, - "face": 2545, - "face": 1710, - "facebook": 36156, - "facebook": 2943, - "faced": 10941, - "faceli": 32023, - "facelift": 36380, - "faceoff": 42710, - "facep": 45285, - "faces": 4905, - "faceted": 43435, - "facetime": 24076, - "facial": 11909, - "facil": 39973, - "facilit": 13567, - "facilitate": 26733, - "facilitated": 43853, - "facilitating": 34796, - "facilities": 10388, - "facility": 8165, - "facing": 7619, - "fact": 17189, - "fact": 3598, - "factfriday": 27953, - "faction": 14629, - "factor": 21082, - "factor": 8124, - "factories": 36492, - "factors": 12733, - "factory": 42483, - "factory": 6072, - "facts": 5085, - "factual": 45471, - "faculty": 9504, - "facup": 25283, - "fad": 12632, - "fad": 47669, - "fade": 20486, - "faded": 26051, - "fades": 40441, - "fading": 32882, - "fadnavis": 38945, - "faf": 31052, - "faf": 43903, - "fag": 25617, - "fag": 39305, - "fah": 25495, - "fah": 35429, - "fahren": 45527, - "fai": 20519, - "fai": 26384, - "fail": 7105, - "fail": 6801, - "failed": 8314, - "failing": 15757, - "fails": 13388, - "failure": 8732, - "failures": 25442, - "faint": 30807, - "fair": 3031, - "fair": 2849, - "fairbanks": 43962, - "faire": 34745, - "faire": 20798, - "fairfax": 29368, - "fairfield": 29664, - "fairgrounds": 38325, - "fairi": 28884, - "fairies": 33590, - "fairly": 14961, - "fairmont": 41547, - "fairness": 29388, - "fairs": 8655, - "fairtrade": 33361, - "fairview": 43479, - "fairway": 44022, - "fairy": 17021, - "fairy": 10444, - "fairytale": 28944, - "fais": 23542, - "faisal": 35459, - "fait": 20567, - "faith": 10653, - "faith": 5080, - "faithful": 15511, - "faiz": 41775, - "fake": 18794, - "fake": 5777, - "faken": 22853, - "fakenews": 26943, - "fakespeare": 49095, - "fal": 2778, - "fal": 40494, - "fala": 47120, - "falcon": 22498, - "falcon": 13571, - "falcons": 13834, - "falk": 34648, - "falkirk": 44080, - "fall": 6489, - "fall": 2359, - "fallen": 8688, - "falling": 48709, - "falling": 7293, - "fallon": 39596, - "fallon": 21281, - "fallontonight": 44627, - "fallout": 49365, - "fallout": 16009, - "falls": 4778, - "falmouth": 38261, - "false": 38948, - "false": 9078, - "falsely": 42321, - "fam": 1058, - "fam": 5128, - "fame": 6573, - "famed": 23302, - "famer": 24554, - "famil": 3395, - "famili": 8488, - "familia": 25622, - "familiar": 10020, - "families": 4612, - "family": 8137, - "family": 1315, - "familyfun": 46308, - "familytime": 47236, - "familytravel": 38222, - "famine": 35847, - "famous": 44811, - "famous": 4096, - "famously": 44505, - "fan": 1675, - "fan": 2261, - "fanart": 41059, - "fanart": 7855, - "fanartfriday": 45346, - "fanatic": 36643, - "fanatics": 39610, - "fanbase": 36921, - "fanboy": 43369, - "fanc": 29017, - "fancafe": 45080, - "fanci": 35908, - "fanclub": 31530, - "fancy": 47622, - "fancy": 6733, - "fand": 19684, - "fandom": 47634, - "fandom": 11534, - "fanfest": 42916, - "fanfic": 47243, - "fang": 14269, - "fang": 27428, - "fangirl": 28813, - "fangirling": 39463, - "fanning": 37282, - "fanny": 30401, - "fans": 32454, - "fans": 1840, - "fansign": 25288, - "fant": 4467, - "fanta": 2703, - "fantaken": 39412, - "fantasia": 49306, - "fantastic": 31289, - "fantastic": 2935, - "fantasy": 15124, - "fantasy": 5267, - "fantasyfootball": 35713, - "fao": 31155, - "faq": 28533, - "far": 1578, - "far": 2384, - "fara": 48562, - "farage": 28340, - "farah": 31547, - "fare": 8620, - "fare": 6461, - "fares": 27525, - "farewell": 10734, - "fargo": 18870, - "fari": 26197, - "farley": 43761, - "farm": 9066, - "farm": 3985, - "farmer": 19735, - "farmer": 10474, - "farmers": 29752, - "farmers": 6402, - "farmersmarket": 41808, - "farmhouse": 26293, - "farming": 10399, - "farmington": 49305, - "farmland": 45258, - "farms": 11277, - "farn": 27527, - "faroo": 39147, - "farra": 33657, - "farrakhan": 46293, - "farrell": 24234, - "fart": 34664, - "farther": 42233, - "fas": 4830, - "fas": 42995, - "fasci": 17191, - "fascin": 7327, - "fascinated": 32964, - "fascinating": 8640, - "fascism": 28213, - "fascist": 23870, - "fascists": 43598, - "fash": 42682, - "fashi": 2099, - "fashion": 6976, - "fashion": 2444, - "fashionable": 24597, - "fashionblogger": 31726, - "fashioned": 21563, - "fashioni": 26062, - "fashionista": 30415, - "fashions": 37601, - "fashionshow": 45653, - "fashionweek": 28684, - "fass": 42398, - "fast": 8509, - "fast": 1953, - "fasten": 44990, - "faster": 8835, - "fastest": 9808, - "fasting": 24656, - "fat": 4751, - "fat": 5484, - "fatal": 12124, - "fatalities": 44168, - "fatally": 34069, - "fate": 26315, - "fate": 11734, - "father": 11607, - "father": 3224, - "fathers": 12780, - "fathersday": 16731, - "fati": 13430, - "fatigue": 23747, - "fatima": 28202, - "fats": 30151, - "fatt": 44131, - "fatty": 22953, - "fau": 5571, - "fau": 31381, - "faucet": 44273, - "faul": 16230, - "faulkner": 37840, - "fault": 13862, - "faults": 42752, - "faulty": 47103, - "fauna": 30808, - "faust": 44772, - "faux": 19429, - "fav": 1355, - "fav": 5426, - "fave": 7272, - "faves": 18003, - "favor": 1766, - "favor": 12160, - "favorable": 35392, - "favored": 46640, - "favorite": 35262, - "favorite": 1916, - "favorited": 36926, - "favorites": 10564, - "favors": 36085, - "favour": 3111, - "favour": 20469, - "favourite": 3342, - "favourites": 16585, - "favs": 18879, - "faw": 21800, - "fawad": 46425, - "fawn": 48624, - "fax": 32535, - "fax": 9337, - "fay": 8939, - "fay": 40074, - "faye": 30257, - "fayette": 32043, - "fayette": 19782, - "fayetteville": 37771, - "fayre": 34982, - "faz": 26238, - "faze": 44880, - "fb": 22637, - "fb": 3307, - "fball": 29663, - "fbf": 20004, - "fbi": 10293, - "fbloggers": 41389, - "fbs": 48454, - "fc": 4278, - "fc": 1399, - "fca": 24540, - "fcb": 26639, - "fcb": 25045, - "fcbarcelona": 32174, - "fcbayern": 35033, - "fcblive": 44608, - "fcc": 21240, - "fck": 40080, - "fck": 49263, - "fcofficial": 27805, - "fcs": 32095, - "fcu": 47898, - "fd": 16972, - "fd": 11525, - "fda": 17823, - "fdi": 45579, - "fdn": 18563, - "fdny": 41084, - "fdr": 42298, - "fe": 623, - "fe": 873, - "fear": 8744, - "fear": 5402, - "feared": 31154, - "fearless": 17470, - "fears": 13867, - "fearthe": 33449, - "feasi": 34977, - "feast": 37963, - "feast": 9564, - "feat": 1703, - "feat": 5611, - "feather": 24905, - "feather": 17871, - "feathers": 21138, - "featherweight": 44939, - "feature": 30413, - "feature": 4527, - "featured": 4743, - "features": 4643, - "featuring": 3706, - "feb": 4317, - "febru": 4202, - "february": 4248, - "fect": 31293, - "fed": 22518, - "fed": 7035, - "feder": 4737, - "federal": 6369, - "federation": 15530, - "federer": 18246, - "federico": 40539, - "fedex": 32603, - "fedora": 45111, - "feds": 30593, - "fee": 28242, - "fee": 9224, - "feed": 6662, - "feed": 5839, - "feedback": 8683, - "feeder": 24482, - "feeders": 44523, - "feeding": 9879, - "feeds": 21788, - "feel": 2408, - "feel": 2051, - "feelin": 19903, - "feeling": 33087, - "feeling": 3045, - "feelings": 9452, - "feels": 4808, - "feelthe": 22322, - "feelthebern": 27743, - "fees": 11765, - "feet": 4804, - "fei": 23441, - "fei": 34217, - "fein": 46707, - "feinstein": 41313, - "fel": 2081, - "fel": 20304, - "feld": 45913, - "feld": 14219, - "feldman": 41942, - "feli": 7498, - "felic": 25845, - "felici": 23379, - "felicia": 41139, - "felicidades": 41648, - "felicity": 35123, - "feline": 29471, - "felipe": 27681, - "felix": 33455, - "felix": 16514, - "feliz": 26104, - "feliz": 20221, - "fell": 33540, - "fell": 6266, - "fella": 17586, - "fellas": 18787, - "feller": 29226, - "fellow": 12099, - "fellow": 5242, - "fellows": 15766, - "fellowship": 13857, - "felony": 31068, - "felt": 5413, - "fem": 24574, - "fem": 36615, - "fema": 41721, - "female": 22062, - "female": 3970, - "females": 21028, - "femi": 38607, - "femin": 11423, - "femini": 11894, - "feminine": 24911, - "feminism": 18784, - "feminist": 14921, - "feminists": 38809, - "femme": 31331, - "fen": 5509, - "fen": 25024, - "fence": 12679, - "fences": 34312, - "fencing": 23489, - "fender": 17117, - "fener": 41208, - "fenerbah": 46652, - "feng": 33291, - "fennel": 28689, - "fent": 26395, - "fenton": 47265, - "fenway": 29206, - "fer": 1765, - "fer": 2897, - "fera": 37705, - "feral": 29972, - "ferdin": 25541, - "ferdinand": 27591, - "fere": 43144, - "feren": 35652, - "ference": 19984, - "ferg": 44938, - "fergie": 39119, - "fergu": 10988, - "fergus": 42041, - "ferguson": 11904, - "fermentation": 45817, - "fermented": 36886, - "fern": 10747, - "fern": 21685, - "fernandes": 44391, - "fernandez": 23436, - "fernando": 17140, - "ferns": 38277, - "feroci": 45652, - "ferr": 7256, - "ferra": 47911, - "ferrari": 9606, - "ferre": 29626, - "ferred": 10432, - "ferreira": 48686, - "ferrell": 41112, - "ferrer": 38904, - "ferri": 42008, - "ferries": 28489, - "ferris": 27532, - "ferry": 38936, - "ferry": 10278, - "fers": 12378, - "fert": 14925, - "fert": 43662, - "fertil": 41987, - "fertile": 44837, - "fertili": 23912, - "fertility": 23528, - "fertilizer": 36786, - "fery": 47448, - "fes": 32300, - "fest": 17383, - "fest": 2590, - "festa": 42124, - "festi": 1943, - "festiv": 19222, - "festival": 20946, - "festival": 2240, - "festivals": 17834, - "festive": 9533, - "festivities": 21020, - "fet": 21409, - "feta": 31705, - "fetal": 42031, - "fetch": 30271, - "fete": 34629, - "fett": 37979, - "fetus": 26768, - "feu": 24912, - "feu": 32990, - "feud": 27365, - "fever": 40896, - "fever": 9989, - "fevre": 43861, - "few": 1939, - "fewer": 19128, - "fex": 41584, - "fex": 26392, - "fey": 39069, - "fey": 23298, - "fez": 43081, - "ff": 1021, - "ff": 1304, - "ffa": 15355, - "ffame": 42873, - "ffc": 19832, - "ffe": 1138, - "ffe": 8631, - "ffect": 29151, - "ffed": 8448, - "ffee": 26377, - "ffel": 22656, - "ffen": 46537, - "ffer": 27369, - "ffer": 11636, - "ffers": 32163, - "fferty": 44771, - "ffes": 46441, - "ffey": 30138, - "fff": 28106, - "ffi": 19961, - "ffic": 4762, - "ffice": 26044, - "ffici": 3639, - "fficial": 39818, - "fficial": 6463, - "fficiency": 27800, - "fficient": 20424, - "ffin": 12779, - "ffin": 7367, - "ffing": 16592, - "ffins": 17898, - "ffl": 39490, - "ffle": 7749, - "ffler": 39819, - "ffles": 19344, - "ffman": 15823, - "ffo": 42264, - "ffs": 4424, - "ffxiv": 26569, - "ffxv": 46786, - "ffy": 26404, - "ffy": 7795, - "fg": 45977, - "fg": 6823, - "fgm": 32178, - "fgo": 46113, - "fh": 21649, - "fh": 21010, - "fhs": 45094, - "fi": 701, - "fi": 3589, - "fia": 8827, - "fiable": 34373, - "fianc": 27752, - "fiance": 44114, - "fiancé": 34039, - "fiasco": 40944, - "fiat": 16740, - "fiawec": 39485, - "fib": 40594, - "fiba": 34993, - "fiber": 35074, - "fiber": 12612, - "fibers": 44587, - "fibre": 21401, - "fibro": 21294, - "fibrosis": 36307, - "fic": 1788, - "fic": 2059, - "fica": 26952, - "fically": 14854, - "fication": 4523, - "fications": 12512, - "ficial": 48192, - "fics": 42505, - "fiction": 6218, - "fictional": 25570, - "fid": 34197, - "fid": 23966, - "fidd": 25218, - "fiddle": 35968, - "fide": 45375, - "fidel": 21740, - "fidel": 36837, - "fidelity": 30109, - "fidget": 48664, - "fie": 28487, - "fie": 10348, - "fied": 29642, - "fied": 2853, - "fiel": 1361, - "field": 7571, - "field": 1570, - "fielder": 11046, - "fieldhouse": 37969, - "fielding": 30465, - "fields": 6494, - "fieldwork": 33155, - "fiends": 37869, - "fier": 11167, - "fier": 10598, - "fierc": 48609, - "fierce": 13896, - "fiercely": 49039, - "fiers": 16113, - "fiery": 24557, - "fies": 9537, - "fiesta": 14580, - "fif": 5309, - "fifa": 21976, - "fifa": 8516, - "fifaworldcup": 38819, - "fifawwc": 41329, - "fife": 24374, - "fifteen": 29504, - "fifth": 25515, - "fifth": 8772, - "fifthharmony": 31075, - "fifty": 24456, - "fifty": 15978, - "fig": 4814, - "fig": 20719, - "figaro": 48044, - "figh": 23274, - "fight": 5262, - "fight": 2757, - "fighter": 35884, - "fighter": 6438, - "fighters": 7371, - "fightfor": 48909, - "fightfor": 35740, - "fighting": 38625, - "fighting": 4652, - "fighton": 45578, - "fights": 12132, - "figs": 38882, - "figu": 6390, - "figur": 16948, - "figurative": 44042, - "figure": 48820, - "figure": 5274, - "figured": 15630, - "figures": 8739, - "figurine": 33306, - "figuring": 31513, - "fiji": 48270, - "fiji": 18285, - "fik": 46589, - "fil": 1142, - "fil": 14915, - "fila": 30992, - "filament": 49252, - "file": 12545, - "file": 4512, - "filed": 13864, - "files": 7850, - "filet": 43155, - "fili": 9590, - "filing": 16576, - "filip": 14368, - "filipino": 19153, - "fill": 15904, - "fill": 6277, - "filled": 5589, - "filler": 32816, - "fillers": 45005, - "fillet": 39276, - "filling": 9736, - "fillion": 38048, - "fillmore": 43922, - "fills": 21750, - "filly": 27690, - "film": 5117, - "film": 1860, - "filmed": 15801, - "filmfare": 42224, - "filmfest": 24508, - "filmfestival": 28066, - "filming": 6866, - "filmmaker": 17202, - "filmmakers": 24896, - "filmmaking": 18226, - "films": 5370, - "fils": 40271, - "filter": 7541, - "filtered": 29926, - "filtering": 47770, - "filters": 18385, - "filth": 39713, - "filthy": 26899, - "filtr": 21408, - "filtration": 42036, - "fim": 47525, - "fin": 735, - "fin": 10663, - "fina": 34497, - "final": 11968, - "final": 1755, - "finale": 7844, - "finalfantasy": 44543, - "finalfour": 46999, - "finalist": 12620, - "finalists": 13422, - "finalized": 48930, - "finally": 1992, - "finals": 4536, - "finan": 4807, - "finance": 6117, - "finances": 28767, - "financi": 12846, - "financial": 19783, - "financial": 4930, - "financially": 28124, - "financing": 18375, - "finch": 18523, - "find": 18638, - "find": 1416, - "finder": 15045, - "finders": 43884, - "findia": 47064, - "finding": 37455, - "finding": 6002, - "findings": 16529, - "findlay": 48227, - "findom": 36463, - "finds": 6680, - "findyour": 25936, - "findyourpark": 38924, - "fine": 12042, - "fine": 3797, - "fineart": 7484, - "fineart": 16005, - "fineartamerica": 7724, - "fined": 20094, - "finely": 46120, - "finer": 36681, - "fines": 25053, - "finesse": 46047, - "finest": 7707, - "fing": 6485, - "fing": 17955, - "finger": 13480, - "finger": 8895, - "fingerprint": 39579, - "fingers": 9690, - "fini": 2405, - "finish": 42178, - "finish": 3958, - "finished": 3078, - "finisher": 38636, - "finishers": 48661, - "finishes": 13078, - "finishing": 7912, - "finite": 48312, - "finity": 41463, - "finity": 21273, - "fink": 40158, - "finland": 10775, - "finley": 41652, - "finn": 28479, - "finn": 16925, - "finna": 35180, - "finnish": 19616, - "fino": 30083, - "fins": 32810, - "fintech": 48929, - "fintech": 8899, - "fion": 27476, - "fiona": 20099, - "fior": 37086, - "fiore": 44997, - "fioren": 33188, - "fiorentina": 43713, - "fios": 42521, - "fir": 770, - "fir": 16233, - "fire": 2951, - "fire": 1769, - "firearm": 40311, - "firearms": 23960, - "fireball": 40543, - "firec": 42806, - "fired": 8846, - "firefighter": 20498, - "firefighters": 12600, - "firefly": 33997, - "firefox": 35372, - "fireman": 46085, - "firen": 34752, - "firenze": 38445, - "fireplace": 23050, - "fires": 8749, - "fireside": 36185, - "firework": 40750, - "fireworks": 10641, - "firing": 15105, - "firm": 16936, - "firm": 7705, - "firmly": 29156, - "firms": 13655, - "firmware": 42691, - "first": 6853, - "first": 874, - "firstdayof": 44297, - "firsth": 48512, - "firsts": 47884, - "firth": 26078, - "fis": 7846, - "fis": 47683, - "fiscal": 20825, - "fischer": 26532, - "fish": 6431, - "fish": 2759, - "fisher": 11175, - "fisher": 9176, - "fisheries": 24612, - "fisherman": 25055, - "fishermen": 28547, - "fishers": 42065, - "fishery": 49057, - "fishes": 35470, - "fishing": 31703, - "fishing": 4935, - "fishy": 35665, - "fist": 48340, - "fist": 17085, - "fit": 2366, - "fit": 2478, - "fitbit": 33768, - "fitch": 44614, - "fitfam": 20662, - "fitnes": 47285, - "fitness": 20044, - "fitness": 4838, - "fits": 6401, - "fitt": 32994, - "fitted": 14863, - "fitter": 42096, - "fitters": 32364, - "fitting": 11769, - "fittings": 45787, - "fitz": 11120, - "fitz": 25913, - "fitzgerald": 20606, - "fitzpatrick": 37141, - "fiu": 38374, - "five": 19508, - "five": 3127, - "fives": 44066, - "fix": 4596, - "fix": 6028, - "fixed": 9393, - "fixes": 25473, - "fixing": 17423, - "fixture": 17317, - "fixtures": 19904, - "fizz": 31242, - "fj": 43183, - "fj": 46447, - "fjor": 31260, - "fk": 12410, - "fl": 1082, - "fl": 2685, - "fla": 1577, - "fla": 20292, - "flag": 11536, - "flag": 4859, - "flagged": 45012, - "flags": 12221, - "flagship": 19779, - "flagstaff": 40406, - "flair": 24938, - "flake": 21221, - "flakes": 20934, - "flam": 10559, - "flame": 40351, - "flame": 13484, - "flamen": 28826, - "flamenco": 37362, - "flames": 13441, - "flamin": 42693, - "flaming": 34782, - "flamingo": 30323, - "flan": 14572, - "flanagan": 28641, - "flanders": 34837, - "flank": 44553, - "flann": 39510, - "flannel": 37807, - "flap": 35253, - "flappy": 40241, - "flare": 21185, - "flares": 46088, - "flash": 6089, - "flash": 5815, - "flashback": 14616, - "flashback": 11988, - "flashbackfriday": 15014, - "flashbacks": 47056, - "flashes": 31259, - "flashing": 31764, - "flashlight": 37256, - "flask": 36194, - "flat": 8986, - "flat": 6313, - "flats": 17228, - "flatt": 45498, - "flattering": 43267, - "flaun": 41421, - "flav": 7191, - "flavo": 28895, - "flavor": 31835, - "flavor": 11818, - "flavored": 29350, - "flavorful": 49135, - "flavors": 16930, - "flavour": 17026, - "flavoured": 42397, - "flavours": 21083, - "flaw": 14268, - "flaw": 34978, - "flawed": 35136, - "flawless": 15531, - "flaws": 30492, - "flax": 43443, - "fle": 2428, - "fle": 44964, - "flea": 24883, - "fleck": 28143, - "fled": 26731, - "flee": 19427, - "flee": 30167, - "fleece": 25038, - "fleeing": 30543, - "fleek": 43513, - "fleet": 35922, - "fleet": 9147, - "fleetwood": 28883, - "fleming": 25769, - "fler": 48789, - "flesh": 17495, - "flet": 16102, - "fletcher": 19810, - "fleur": 28593, - "flew": 13768, - "flex": 16426, - "flex": 12038, - "flexi": 10032, - "flexibility": 22547, - "flexible": 14502, - "flexing": 48483, - "fli": 2472, - "flick": 13746, - "flick": 23414, - "flickr": 17755, - "flies": 8070, - "flight": 24701, - "flight": 3795, - "flights": 10515, - "flin": 24730, - "flin": 43816, - "flinders": 44647, - "fling": 22768, - "flint": 28306, - "flint": 18324, - "flip": 20385, - "flip": 11035, - "flipk": 30829, - "flipkart": 33154, - "flipped": 28144, - "flipping": 25881, - "flips": 35089, - "flir": 24330, - "flirt": 38352, - "flirting": 35243, - "flix": 40663, - "flo": 1945, - "flo": 20711, - "float": 16123, - "floating": 12619, - "floats": 33272, - "flock": 36297, - "flock": 21822, - "flondon": 47366, - "floo": 4062, - "flood": 23793, - "flood": 7148, - "flooded": 19706, - "flooding": 10204, - "floods": 16369, - "floor": 23657, - "floor": 4125, - "flooring": 19227, - "floors": 15671, - "flop": 22994, - "floppy": 38267, - "flops": 29146, - "flor": 15784, - "flor": 41669, - "flora": 18906, - "floral": 10732, - "florals": 48331, - "floren": 37706, - "florence": 11617, - "flores": 21537, - "flori": 3482, - "florian": 41861, - "florida": 34264, - "florida": 3966, - "florist": 38403, - "floss": 36453, - "flotus": 35181, - "flour": 18592, - "flouri": 23239, - "flourish": 36038, - "flow": 2180, - "flow": 5608, - "flower": 12772, - "flower": 4055, - "flowering": 19953, - "flowers": 4023, - "flowing": 14922, - "flown": 25659, - "flows": 16715, - "floyd": 46369, - "floyd": 13656, - "flu": 3698, - "flu": 13528, - "fluctu": 40181, - "fluence": 38169, - "fluent": 30025, - "fluff": 31174, - "fluffy": 40346, - "fluffy": 17054, - "fluid": 43803, - "fluid": 16717, - "fluids": 41490, - "fluor": 45127, - "fluore": 26974, - "fluorescent": 35036, - "fluori": 45611, - "flur": 31591, - "flush": 25777, - "flushing": 43754, - "flute": 23746, - "flux": 25249, - "flwx": 30907, - "fly": 5666, - "fly": 3228, - "flye": 30873, - "flyeagles": 39927, - "flyeaglesfly": 39931, - "flyer": 11875, - "flyers": 14181, - "flyfishing": 31800, - "flying": 20782, - "flying": 4610, - "flyn": 40676, - "flynn": 15721, - "flyo": 33506, - "flyover": 38083, - "fm": 13715, - "fm": 3689, - "fman": 25152, - "fml": 26730, - "fmr": 32875, - "fn": 22773, - "fn": 21763, - "fnc": 46506, - "fo": 898, - "fo": 6157, - "foal": 40386, - "foam": 30039, - "foam": 14587, - "foamed": 26711, - "fob": 40315, - "focal": 30934, - "focu": 5827, - "focus": 4353, - "focused": 9319, - "focuses": 20093, - "focusing": 15551, - "fod": 31015, - "fod": 43299, - "fodils": 44411, - "foe": 22952, - "foes": 46279, - "fog": 9417, - "foggy": 19770, - "foil": 17302, - "fol": 1106, - "fol": 48616, - "fold": 35201, - "fold": 11021, - "foldable": 48307, - "folded": 25233, - "folder": 25717, - "folding": 15464, - "folds": 24266, - "foley": 22850, - "foli": 7713, - "folia": 48964, - "foliage": 26350, - "folio": 10772, - "folk": 10665, - "folk": 6032, - "folke": 47190, - "folkl": 27273, - "folklore": 22133, - "folklore": 28620, - "folklorethursday": 23270, - "folks": 5422, - "follo": 41417, - "follow": 1964, - "follow": 1979, - "followart": 40957, - "followback": 33863, - "followed": 6499, - "follower": 17039, - "followers": 4856, - "following": 3473, - "followme": 29668, - "followparty": 44757, - "follows": 11287, - "followthe": 30747, - "folly": 41408, - "folsom": 42108, - "fom": 34540, - "fon": 5017, - "fon": 38318, - "fond": 19964, - "fonda": 44609, - "fondue": 48321, - "fone": 40672, - "font": 37610, - "font": 16248, - "fontaine": 37864, - "fontana": 43643, - "fontein": 45062, - "fonts": 32801, - "foo": 1183, - "foo": 23435, - "food": 4586, - "food": 1559, - "foodand": 38317, - "foodbank": 31926, - "foodie": 30762, - "foodie": 9847, - "foodies": 22416, - "foodnetwork": 46793, - "foods": 7057, - "foodsecurity": 49329, - "foodtruck": 47682, - "fool": 23959, - "fool": 12212, - "fooled": 28761, - "fooling": 47964, - "foolish": 33824, - "fools": 15946, - "foot": 6702, - "foot": 4738, - "footage": 11130, - "footb": 33466, - "football": 9376, - "football": 1882, - "footballer": 20646, - "footballers": 30269, - "footed": 38040, - "footh": 25951, - "foothills": 37020, - "footpath": 48858, - "footprint": 23206, - "footprints": 39640, - "footsteps": 27289, - "footwear": 22772, - "footy": 39866, - "footy": 18922, - "for": 645, - "for": 556, - "forage": 46871, - "foraging": 39056, - "forall": 17824, - "forbe": 49098, - "forbes": 13925, - "forbi": 24754, - "forbidden": 25164, - "force": 12068, - "force": 2869, - "forced": 8201, - "forces": 5381, - "forchange": 35848, - "forcing": 21573, - "ford": 3751, - "ford": 1623, - "fordfc": 28581, - "fordham": 48792, - "fords": 29351, - "fordshire": 14645, - "fore": 1484, - "fore": 1332, - "forec": 34155, - "forecast": 7361, - "forecasting": 38133, - "forecasts": 27696, - "foreclo": 44916, - "forefront": 37679, - "foreground": 35186, - "forehead": 25394, - "foreig": 26497, - "foreign": 42255, - "foreign": 6046, - "foreigners": 38549, - "foreman": 36174, - "foremost": 42128, - "foren": 16526, - "forensic": 23158, - "forensics": 38763, - "forest": 18760, - "forest": 4167, - "forestation": 33939, - "forestry": 26281, - "forests": 14095, - "forever": 14748, - "forever": 3225, - "forevery": 40605, - "forex": 40200, - "forex": 17395, - "forfe": 44871, - "forge": 19232, - "forged": 28105, - "forget": 46153, - "forget": 2678, - "forgets": 35613, - "forgetting": 25452, - "forgi": 22080, - "forgive": 15332, - "forgiven": 44894, - "forgiveness": 23585, - "forgood": 39169, - "forgot": 6483, - "forgotten": 7994, - "fork": 24501, - "fork": 13700, - "forkids": 48571, - "forklift": 43202, - "forks": 28769, - "forlife": 17624, - "form": 1157, - "form": 1907, - "forma": 38829, - "formal": 12978, - "formally": 24867, - "format": 16252, - "format": 11874, - "formation": 2510, - "formations": 37715, - "formative": 48882, - "formats": 32085, - "forme": 42085, - "formed": 6528, - "former": 2276, - "formerly": 20866, - "formid": 38599, - "formidable": 39834, - "forming": 15443, - "formity": 42290, - "forms": 5161, - "formu": 8689, - "formul": 23923, - "formula": 24485, - "formula": 10776, - "formulae": 34586, - "formulated": 45066, - "forre": 38876, - "forrest": 25205, - "forrester": 45338, - "forsa": 48958, - "forsale": 13303, - "forster": 42923, - "forsy": 29629, - "forsyth": 40952, - "fort": 12300, - "fort": 2921, - "forte": 44350, - "forte": 27367, - "forth": 17068, - "forth": 11932, - "forthcoming": 19989, - "forthe": 12521, - "forti": 26984, - "fortified": 46486, - "fortn": 14428, - "fortnight": 39235, - "fortnite": 38734, - "fortnite": 17890, - "fortress": 19988, - "fortun": 6950, - "fortunate": 19898, - "fortunately": 34358, - "fortune": 40931, - "fortune": 11451, - "fortunes": 41989, - "forty": 24399, - "forum": 37851, - "forum": 4538, - "forums": 31518, - "forwar": 34364, - "forward": 47031, - "forward": 2342, - "forwards": 38974, - "foryou": 35150, - "forz": 46056, - "forza": 33293, - "forza": 28089, - "fos": 36925, - "fos": 22081, - "foss": 14240, - "foss": 37911, - "fossil": 20419, - "fossil": 15202, - "fossilfriday": 26079, - "fossils": 30652, - "foster": 26778, - "foster": 8139, - "fostering": 35996, - "fosters": 37644, - "foto": 15908, - "foto": 12823, - "fotogra": 23687, - "fotografia": 40256, - "fotos": 26124, - "fou": 14516, - "fought": 10844, - "foul": 19784, - "foun": 3154, - "found": 3454, - "found": 1546, - "foundation": 4058, - "foundations": 25219, - "founded": 12240, - "founder": 5145, - "founders": 14602, - "founding": 15317, - "foundry": 31426, - "fountain": 44863, - "fountain": 13405, - "fountains": 37411, - "four": 5113, - "four": 2721, - "foursquare": 34484, - "fourteen": 46255, - "fourth": 7516, - "fourthofjuly": 47805, - "fow": 17084, - "fowl": 31685, - "fowler": 20980, - "fox": 5007, - "fox": 3240, - "foxandfriends": 45841, - "foxes": 24145, - "foxnews": 18830, - "foxsports": 39267, - "foxtv": 49396, - "foxx": 32993, - "foxy": 27945, - "foy": 30284, - "foyer": 38011, - "foyle": 47902, - "fp": 28058, - "fp": 8941, - "fpl": 27970, - "fpp": 36464, - "fps": 25300, - "fpv": 43175, - "fr": 936, - "fr": 5512, - "fra": 3368, - "fra": 15644, - "frac": 15607, - "fracking": 21894, - "fractal": 46471, - "fraction": 26788, - "fractu": 25847, - "fracture": 28995, - "fractured": 37421, - "fractures": 46213, - "frag": 13093, - "fragile": 23579, - "fragment": 39209, - "fragments": 41424, - "fragr": 15403, - "fragrance": 17874, - "fragrances": 44567, - "fragrant": 37030, - "fram": 27987, - "frame": 11029, - "frame": 6481, - "framed": 13135, - "frames": 15479, - "framework": 13195, - "frameworks": 43136, - "framing": 24539, - "frampton": 41733, - "fran": 2118, - "fran": 18878, - "franc": 3872, - "franc": 42340, - "franca": 48952, - "france": 12045, - "france": 3552, - "frances": 20803, - "francesca": 32327, - "francesco": 25816, - "franch": 11756, - "franchi": 46438, - "franchise": 13664, - "franci": 46458, - "francis": 22187, - "francis": 7660, - "francisco": 6887, - "franco": 17934, - "franco": 17052, - "francois": 29317, - "frank": 5390, - "frank": 5229, - "franken": 20487, - "franken": 48252, - "frankenstein": 26410, - "frankfur": 17442, - "frankfurt": 18598, - "franki": 39227, - "frankie": 38373, - "frankie": 16215, - "franklin": 40935, - "franklin": 9999, - "frankly": 38015, - "franks": 42855, - "frans": 47892, - "franz": 25449, - "franç": 38381, - "fraser": 39082, - "fraser": 16754, - "frat": 15225, - "frat": 39292, - "fraternity": 24433, - "frau": 23063, - "fraud": 40647, - "fraud": 9961, - "fraudul": 42655, - "fraudulent": 47408, - "fray": 41154, - "frazier": 32841, - "frc": 41507, - "fre": 821, - "fre": 43165, - "freak": 20352, - "freak": 13701, - "freaked": 43511, - "freakin": 23900, - "freaking": 11992, - "freaks": 27009, - "freaky": 31583, - "freck": 33328, - "freckles": 48036, - "fred": 9486, - "fred": 6678, - "freddie": 41890, - "freddie": 17014, - "freddy": 24394, - "freder": 10745, - "frederic": 41165, - "frederick": 37103, - "frederick": 18570, - "fredo": 48241, - "free": 2065, - "free": 1139, - "freebie": 35865, - "freebies": 28630, - "freec": 46569, - "freed": 12585, - "freed": 23392, - "freedom": 17992, - "freedom": 4511, - "freedoms": 32500, - "freef": 48678, - "freel": 14174, - "freelance": 21942, - "freely": 24436, - "freeman": 16450, - "freep": 32499, - "freepalestine": 39242, - "freer": 44676, - "frees": 27455, - "freestyle": 15594, - "freeway": 24927, - "freeze": 14187, - "freezer": 25390, - "freezing": 12499, - "frei": 30183, - "freight": 17023, - "fremantle": 48012, - "fremont": 34578, - "fren": 2919, - "french": 13118, - "french": 3461, - "frenzy": 30084, - "frequ": 9211, - "frequencies": 45319, - "frequency": 18825, - "frequent": 19836, - "frequently": 22434, - "fresco": 31609, - "fresh": 4065, - "fresh": 2975, - "fresher": 49284, - "freshers": 35810, - "freshest": 46809, - "freshly": 16081, - "freshman": 9381, - "freshmen": 21292, - "freshness": 45872, - "freshwater": 24803, - "fresno": 40879, - "fresno": 20995, - "fret": 40510, - "freud": 40787, - "frey": 22136, - "frey": 9082, - "fri": 815, - "fri": 6882, - "friars": 30513, - "fric": 18981, - "frick": 46304, - "friction": 38563, - "frid": 46388, - "frida": 36001, - "friday": 6350, - "friday": 1461, - "fridayfeeling": 11952, - "fridaymotivation": 38544, - "fridaynight": 44858, - "fridayreads": 37736, - "fridays": 15589, - "fridaythe": 47642, - "fridge": 13491, - "fridges": 40734, - "frie": 36999, - "fried": 13743, - "fried": 7310, - "friedman": 29402, - "friedrich": 34171, - "friend": 3017, - "friend": 1625, - "friendly": 44612, - "friendly": 4681, - "friends": 38875, - "friends": 1574, - "friendship": 42674, - "friendship": 7679, - "friendships": 28840, - "fries": 11369, - "frifotos": 40493, - "friger": 20785, - "friggin": 48300, - "frigh": 34831, - "fright": 24277, - "fright": 40207, - "frightened": 47136, - "frightening": 39290, - "fringe": 10640, - "fris": 37252, - "frisbee": 45768, - "frisco": 35945, - "frit": 34614, - "fritz": 29860, - "friyay": 38887, - "frm": 12951, - "fro": 626, - "fro": 26603, - "frock": 45306, - "frog": 26494, - "frog": 11438, - "frogs": 20781, - "from": 8330, - "from": 633, - "frome": 48691, - "fromhome": 41477, - "fromthe": 18756, - "fron": 1847, - "fron": 18036, - "front": 10996, - "front": 2184, - "frontal": 35794, - "frontier": 18253, - "frontiers": 38396, - "frontline": 29589, - "frontman": 36775, - "fronts": 26846, - "froome": 48560, - "frosh": 47069, - "frost": 39420, - "frost": 11619, - "frosted": 35988, - "frosting": 33872, - "frosty": 22760, - "froze": 47788, - "frozen": 42464, - "frozen": 8507, - "frs": 26216, - "fru": 3248, - "fruit": 16771, - "fruit": 5190, - "fruitful": 31494, - "fruits": 13282, - "fruity": 22320, - "frustr": 16046, - "frustrated": 25111, - "frustrating": 31342, - "frustration": 30535, - "fry": 33914, - "fry": 13686, - "fryer": 49217, - "frying": 38516, - "fs": 23699, - "fs": 3854, - "fsa": 33373, - "fsu": 44185, - "fsu": 19317, - "ft": 3391, - "ft": 981, - "fta": 41975, - "ftc": 33752, - "fted": 5612, - "fter": 25063, - "fthe": 22886, - "ftheday": 9823, - "fting": 6174, - "fton": 26605, - "ftp": 42649, - "fts": 3767, - "ftse": 46717, - "ftw": 19298, - "fty": 17494, - "fu": 665, - "fu": 9098, - "fuch": 42617, - "fudge": 24270, - "fue": 43723, - "fuego": 41500, - "fuel": 21113, - "fuel": 5945, - "fueled": 28792, - "fueling": 38793, - "fuelled": 48357, - "fuels": 19365, - "fuentes": 44393, - "fuer": 29645, - "fug": 29227, - "fugitive": 39257, - "fuji": 15573, - "fuji": 21634, - "fujifilm": 24765, - "fuk": 31051, - "fuku": 20728, - "fukushima": 33929, - "ful": 1814, - "ful": 857, - "fulbright": 41834, - "fulfill": 43675, - "fulfill": 27467, - "fulfilled": 29919, - "fulfilling": 30621, - "fulfillment": 45573, - "fulham": 25574, - "full": 9407, - "full": 1476, - "fuller": 20225, - "fullerton": 42822, - "fullest": 35603, - "fully": 39142, - "fully": 2401, - "fulness": 10526, - "fuls": 41606, - "fulton": 26725, - "fum": 38393, - "fumble": 49373, - "fun": 1229, - "fun": 1499, - "func": 8679, - "function": 8093, - "functional": 12885, - "functionality": 33316, - "functioning": 25479, - "functions": 18001, - "fund": 19089, - "fund": 4877, - "fundam": 11670, - "fundament": 18852, - "fundamental": 17627, - "fundamentally": 45378, - "fundamentals": 27887, - "funday": 15439, - "funded": 10588, - "funding": 5588, - "fundra": 6201, - "fundraiser": 10049, - "fundraising": 10755, - "funds": 7066, - "funer": 40693, - "funeral": 10606, - "funfact": 31596, - "funfactfriday": 40710, - "fungal": 38838, - "fungi": 27837, - "fungus": 30677, - "funk": 37353, - "funk": 13372, - "funko": 49402, - "funko": 23697, - "funky": 16492, - "funnel": 27862, - "funnier": 42232, - "funniest": 15557, - "funny": 19124, - "funny": 3789, - "funrun": 34185, - "fur": 2395, - "fur": 9686, - "furi": 40816, - "furious": 17522, - "furman": 49238, - "furn": 21348, - "furnace": 31913, - "furnished": 37388, - "furnitu": 45696, - "furniture": 7993, - "furry": 33414, - "furry": 15351, - "fursuit": 25306, - "fursuit": 43083, - "fursuitfriday": 27917, - "further": 5583, - "fury": 14404, - "fus": 18419, - "fuse": 23386, - "fused": 38994, - "fusion": 44661, - "fusion": 9364, - "fuss": 26331, - "fut": 21460, - "fut": 34049, - "futbol": 33014, - "futsal": 20558, - "futu": 33454, - "futur": 38840, - "future": 7959, - "future": 1904, - "futureof": 22599, - "futureofwork": 33202, - "futures": 13488, - "futuri": 19068, - "futurism": 48435, - "futurist": 48086, - "futuristic": 30987, - "fuzz": 47128, - "fuzz": 40443, - "fuzzy": 25876, - "fv": 29795, - "fw": 23934, - "fw": 5277, - "fwd": 27052, - "fx": 17807, - "fx": 9025, - "fy": 8440, - "fy": 2702, - "fyi": 16014, - "fying": 5294, - "fz": 46400, - "fé": 34072, - "g": 70, - "g": 326, - "ga": 1275, - "ga": 1531, - "gaa": 10715, - "gaal": 40867, - "gaard": 24645, - "gab": 3927, - "gab": 37382, - "gabbana": 36272, - "gabby": 48115, - "gabby": 24567, - "gabe": 18916, - "gabi": 41931, - "gable": 33387, - "gables": 40928, - "gabri": 8311, - "gabriel": 31684, - "gabriel": 13244, - "gabrielle": 33572, - "gaby": 46420, - "gac": 32520, - "gad": 7786, - "gad": 44651, - "gadget": 25525, - "gadgets": 22840, - "gado": 29489, - "gae": 22003, - "gael": 35663, - "gaelic": 31173, - "gaf": 21354, - "gaf": 32670, - "gag": 14121, - "gag": 18844, - "gaga": 9782, - "gage": 21081, - "gah": 27750, - "gai": 24214, - "gai": 25153, - "gaia": 41269, - "gail": 41160, - "gail": 27676, - "gain": 21536, - "gain": 6202, - "gaine": 35747, - "gained": 14489, - "gaines": 49225, - "gainesville": 40427, - "gaining": 15260, - "gains": 42751, - "gains": 12107, - "gal": 2001, - "gal": 4488, - "gala": 7211, - "galac": 18864, - "galactic": 25514, - "galap": 41115, - "galapagos": 44057, - "galat": 39853, - "galatasar": 42413, - "galatasaray": 47787, - "galax": 5647, - "galaxies": 32435, - "galaxy": 32130, - "galaxy": 6545, - "gale": 37658, - "gale": 21380, - "galerie": 44539, - "gales": 48633, - "gali": 17546, - "gali": 30552, - "galicia": 47927, - "galileo": 39671, - "gall": 3011, - "gall": 33374, - "galla": 16847, - "gallagher": 19168, - "galleria": 40656, - "galleries": 22304, - "gallery": 36648, - "gallery": 3830, - "galley": 48917, - "galli": 22568, - "gallipoli": 47249, - "gallo": 37350, - "gallo": 33265, - "gallon": 24615, - "gallons": 29335, - "galloway": 27796, - "galore": 22286, - "gals": 20125, - "galvani": 46046, - "galve": 34328, - "galveston": 36003, - "galway": 38045, - "galway": 17112, - "gam": 1162, - "gam": 34195, - "gama": 35873, - "gambia": 32988, - "gamble": 26121, - "gambling": 20287, - "game": 2882, - "game": 1063, - "gameart": 31490, - "gameboy": 40951, - "gamecube": 44079, - "gameday": 9241, - "gamedev": 7544, - "gameinsight": 42626, - "gameof": 10987, - "gameofthrones": 11822, - "gameon": 47691, - "gameplay": 16794, - "gamer": 12595, - "gamer": 11598, - "gamergate": 25961, - "gamers": 16166, - "gamersunite": 26423, - "games": 18551, - "games": 1955, - "gamescom": 37003, - "gamestop": 39436, - "gametime": 45899, - "gami": 42025, - "gamification": 48908, - "gaming": 28803, - "gaming": 4017, - "gamma": 22180, - "gamo": 39325, - "gan": 1822, - "gan": 1670, - "gand": 8399, - "ganda": 27261, - "gander": 44508, - "gandhi": 12322, - "ganesh": 30362, - "ganesha": 45185, - "gang": 8066, - "gang": 5674, - "ganga": 36275, - "gangnam": 46777, - "gangs": 29844, - "gangsta": 37365, - "gangster": 26514, - "gani": 48324, - "gann": 45665, - "gannon": 45837, - "gano": 25304, - "gao": 26556, - "gaon": 19279, - "gap": 29906, - "gap": 7609, - "gaps": 25296, - "gar": 1099, - "gar": 5824, - "gara": 28710, - "garage": 8474, - "garbage": 13760, - "garci": 44658, - "garcia": 10529, - "gard": 7751, - "gard": 21003, - "garda": 31906, - "garde": 22649, - "garden": 4674, - "garden": 2756, - "gardenchat": 46292, - "gardener": 28554, - "gardeners": 38205, - "gardening": 10483, - "gardens": 6152, - "gardiner": 43121, - "gardner": 18710, - "gare": 5633, - "gare": 48402, - "gareth": 37140, - "gareth": 18175, - "garfield": 26728, - "garh": 16762, - "gari": 40898, - "gari": 43080, - "garis": 37839, - "garland": 23418, - "garlic": 9685, - "garment": 31418, - "garments": 43341, - "garmin": 39885, - "garner": 20340, - "garnet": 37669, - "garo": 30388, - "garrett": 15881, - "garri": 21764, - "garrison": 30108, - "garros": 40425, - "garry": 24398, - "gars": 12055, - "gart": 18380, - "gart": 18751, - "garten": 14684, - "garter": 48420, - "garth": 45398, - "garth": 24469, - "gartner": 43334, - "gartner": 29678, - "garty": 46383, - "garu": 31140, - "garvey": 39511, - "garwal": 38623, - "gary": 10535, - "gary": 4516, - "garza": 49393, - "gas": 5047, - "gas": 2474, - "gases": 36971, - "gasoline": 27691, - "gasp": 43762, - "gaston": 40669, - "gastri": 49197, - "gastro": 23740, - "gastron": 30699, - "gastronomy": 46987, - "gat": 5314, - "gat": 18941, - "gata": 44575, - "gate": 8071, - "gate": 3302, - "gated": 23997, - "gates": 9472, - "gateshead": 40051, - "gateway": 45221, - "gateway": 14943, - "gather": 36345, - "gather": 12602, - "gathered": 14646, - "gathering": 9197, - "gatherings": 48096, - "gathers": 39250, - "gating": 27561, - "gation": 11095, - "gations": 33906, - "gato": 44492, - "gator": 20216, - "gator": 16390, - "gatorade": 36354, - "gators": 17173, - "gatory": 24796, - "gatsby": 32586, - "gatwick": 37122, - "gau": 5919, - "gau": 43068, - "gauge": 18728, - "gaunt": 31862, - "gauntlet": 37163, - "gautam": 45853, - "gautam": 31356, - "gauteng": 40333, - "gav": 8966, - "gave": 3485, - "gavin": 32974, - "gavin": 16389, - "gaw": 15405, - "gawd": 43239, - "gawx": 43420, - "gay": 7460, - "gay": 5627, - "gaya": 39477, - "gaye": 41401, - "gayle": 29998, - "gayo": 36768, - "gays": 28001, - "gaz": 4837, - "gaz": 36475, - "gaza": 38391, - "gaza": 10112, - "gazaunderattack": 42458, - "gaze": 23212, - "gazette": 20443, - "gazing": 28373, - "gb": 8727, - "gb": 4619, - "gba": 18528, - "gbbo": 34474, - "gbc": 42993, - "gbp": 27391, - "gbr": 31984, - "gby": 40509, - "gc": 8577, - "gc": 6043, - "gcc": 26804, - "gcse": 28763, - "gcu": 34137, - "gd": 13264, - "gd": 14604, - "gdc": 32793, - "gden": 44928, - "gdp": 17100, - "gdpr": 22963, - "ge": 619, - "ge": 710, - "gea": 26790, - "gear": 15532, - "gear": 4802, - "gearbox": 42454, - "geared": 33903, - "gearing": 19027, - "gears": 21147, - "geaux": 36313, - "gecko": 38616, - "ged": 17252, - "ged": 3480, - "geddon": 31720, - "gedly": 13991, - "gee": 9806, - "gee": 9071, - "geek": 17920, - "geek": 7135, - "geeks": 20110, - "geeky": 47332, - "geel": 25906, - "geelong": 34555, - "gees": 38088, - "geese": 26413, - "geez": 42394, - "geh": 30320, - "geist": 38290, - "gel": 7343, - "gel": 5697, - "gelato": 29577, - "gels": 42552, - "gely": 14637, - "gem": 14261, - "gem": 7613, - "gement": 19495, - "gemini": 23086, - "gemma": 23952, - "gems": 14355, - "gemstone": 27747, - "gemstones": 43972, - "gen": 1024, - "gen": 3278, - "gence": 16088, - "gency": 5245, - "gend": 33247, - "gender": 22976, - "gender": 5906, - "gendere": 35824, - "genderequality": 43338, - "gene": 5822, - "gene": 7962, - "genealo": 24142, - "genealogy": 29381, - "gener": 1832, - "general": 20576, - "general": 3658, - "generally": 19256, - "generals": 30296, - "generate": 16896, - "generated": 19450, - "generates": 33938, - "generating": 23882, - "generation": 41211, - "generation": 4883, - "generational": 34506, - "generations": 12247, - "generative": 29472, - "generator": 19399, - "generators": 41917, - "generic": 26978, - "generosity": 23015, - "generous": 12570, - "generously": 35113, - "genes": 19683, - "genesis": 13518, - "genetic": 47746, - "genetic": 13578, - "genetically": 36745, - "genetics": 18276, - "geneva": 14799, - "genevie": 41633, - "genevieve": 46584, - "geni": 22334, - "genic": 15750, - "genie": 24221, - "genital": 32960, - "genius": 8235, - "geniuses": 41406, - "geno": 41544, - "geno": 46776, - "genoa": 43993, - "genoci": 14687, - "genocide": 15903, - "genome": 23991, - "genomic": 44371, - "genomics": 26227, - "genre": 14249, - "genres": 30340, - "gens": 17449, - "gent": 3685, - "gent": 7139, - "gente": 34325, - "gentle": 7262, - "gentle": 13577, - "gentleman": 13293, - "gentlemen": 11692, - "gently": 17187, - "gento": 28320, - "gentri": 41148, - "gentry": 47225, - "gents": 18862, - "genu": 9182, - "genuine": 12184, - "genuinely": 20006, - "genus": 38161, - "geny": 35323, - "geo": 5038, - "geo": 11604, - "geocaching": 47908, - "geof": 20629, - "geoff": 33697, - "geoff": 20386, - "geoffrey": 29520, - "geograph": 45920, - "geographic": 22635, - "geographical": 39380, - "geography": 17101, - "geological": 38380, - "geology": 21578, - "geom": 46135, - "geome": 12958, - "geometric": 22419, - "geometry": 21731, - "geon": 20844, - "geon": 7295, - "geons": 15914, - "geopol": 39758, - "geor": 2549, - "georg": 43126, - "george": 8377, - "george": 3296, - "georges": 25042, - "georgetown": 22970, - "georgie": 42115, - "georgina": 43892, - "geospatial": 46238, - "geothermal": 38413, - "geous": 3068, - "ger": 1291, - "ger": 1502, - "gera": 48867, - "gerald": 29901, - "gerald": 13269, - "gerard": 35979, - "gerard": 20826, - "gerber": 45058, - "gered": 40179, - "geri": 41664, - "geri": 46214, - "gering": 24077, - "germain": 38786, - "german": 14972, - "german": 4710, - "germans": 28400, - "germany": 4464, - "germin": 44721, - "germs": 47731, - "geronimo": 45171, - "gerrard": 26538, - "gerry": 29825, - "gerry": 23026, - "gers": 3314, - "gertrude": 46950, - "gervais": 36527, - "gery": 32845, - "ges": 3316, - "gest": 11843, - "gest": 2033, - "gesture": 21780, - "gestures": 43524, - "get": 5670, - "get": 779, - "geta": 13155, - "getaway": 16131, - "gether": 27224, - "getic": 20661, - "getin": 25822, - "getit": 44891, - "getit": 48315, - "getoutside": 35644, - "gets": 39448, - "gets": 2127, - "gett": 6647, - "gett": 27965, - "gettable": 15620, - "gette": 29800, - "gettin": 13428, - "getting": 30885, - "getting": 1500, - "getty": 31185, - "getty": 13965, - "gettys": 35189, - "gettysburg": 37062, - "getyour": 42159, - "gey": 29289, - "gf": 28953, - "gf": 10846, - "gfriend": 35245, - "gfs": 37553, - "gg": 1129, - "gg": 3286, - "gga": 26003, - "ggan": 25626, - "gge": 21521, - "gge": 31659, - "gged": 6095, - "gger": 12367, - "gger": 3493, - "ggers": 7480, - "ggg": 20143, - "gggg": 33513, - "ggi": 21662, - "ggin": 17160, - "gging": 4966, - "ggins": 12444, - "ggle": 34981, - "ggle": 11430, - "ggled": 46328, - "ggles": 14703, - "ggling": 16523, - "ggly": 39407, - "ggs": 4797, - "ggy": 24935, - "ggy": 6476, - "gh": 583, - "gh": 790, - "gha": 10010, - "gha": 25183, - "gham": 21456, - "ghan": 18945, - "ghan": 6624, - "ghana": 30330, - "ghana": 9731, - "ghanaian": 34223, - "ghani": 36699, - "ghar": 37334, - "ghar": 36973, - "ghat": 43989, - "ghaz": 37493, - "ghc": 42139, - "ghe": 10754, - "ghe": 28561, - "ghead": 40783, - "ghee": 34794, - "gher": 21542, - "gher": 14796, - "ghet": 18447, - "ghetti": 17485, - "ghetto": 22403, - "ghi": 22436, - "ghi": 22279, - "ghibli": 40555, - "ghj": 38439, - "ghlin": 24131, - "gho": 4307, - "ghorn": 38094, - "ghosh": 43279, - "ghoshal": 49134, - "ghost": 11417, - "ghost": 7108, - "ghostbusters": 25462, - "ghostly": 44901, - "ghosts": 16737, - "ghou": 35843, - "ghoul": 45302, - "ghouse": 38238, - "ghs": 14157, - "ght": 1413, - "ght": 630, - "ghted": 4963, - "ghter": 2427, - "ghters": 12994, - "ghtful": 8334, - "ghting": 3019, - "ghtly": 6993, - "ghtning": 39740, - "ghton": 16353, - "ghts": 1259, - "ghty": 20968, - "ghty": 5866, - "ghu": 25808, - "ghue": 45675, - "ghyun": 25010, - "ghz": 24325, - "gi": 707, - "gi": 4478, - "gia": 8864, - "giac": 35444, - "giam": 39623, - "gian": 17274, - "gian": 12866, - "gianni": 46752, - "giant": 23668, - "giant": 4687, - "giants": 7076, - "giar": 34241, - "gib": 9816, - "gibb": 18964, - "gibbons": 31974, - "gibbs": 26488, - "gibility": 33297, - "gible": 13159, - "gibr": 20206, - "gibraltar": 23988, - "gibson": 37420, - "gibson": 12178, - "gic": 27900, - "gic": 2570, - "gical": 32973, - "gically": 26320, - "gid": 36774, - "gid": 21413, - "giddy": 40894, - "gideon": 43867, - "gidi": 30603, - "gie": 11459, - "gie": 3991, - "gier": 28974, - "gies": 5505, - "gif": 11363, - "gif": 11677, - "gifford": 47850, - "gifs": 37643, - "gift": 20569, - "gift": 2733, - "gifted": 15110, - "giftide": 20152, - "giftideas": 23487, - "gifting": 39546, - "gifts": 5836, - "gig": 26981, - "gig": 7471, - "gigab": 34530, - "gigan": 24104, - "gigantic": 31507, - "giggle": 36426, - "giggles": 42731, - "giggs": 44692, - "gigi": 44106, - "gigi": 26171, - "gigs": 20316, - "gil": 3997, - "gil": 10088, - "gila": 46952, - "gilbert": 14154, - "gilded": 44341, - "giles": 24802, - "gill": 14280, - "gill": 12003, - "gille": 29610, - "gilles": 39590, - "gillespie": 36242, - "gillette": 38603, - "gilli": 13695, - "gillian": 28753, - "gills": 48851, - "gilmore": 27603, - "gilt": 44378, - "gim": 31284, - "gimm": 40692, - "gimme": 21525, - "gin": 3374, - "gin": 4941, - "gina": 15604, - "gine": 27482, - "ging": 10829, - "ging": 3905, - "ginger": 16287, - "ginger": 9718, - "gingerbread": 23692, - "gini": 35768, - "gino": 36521, - "gins": 18328, - "gio": 16329, - "gio": 8050, - "gion": 41226, - "gior": 14920, - "giorgio": 33271, - "giorno": 33310, - "gios": 41927, - "gious": 14419, - "giov": 21404, - "giovanni": 26574, - "gipp": 41351, - "gir": 1077, - "gir": 25481, - "gira": 16949, - "giraffe": 22826, - "giri": 31709, - "girl": 3914, - "girl": 1611, - "girlfriend": 8217, - "girlfriends": 30736, - "girlpower": 37433, - "girls": 15480, - "girls": 1917, - "girly": 29605, - "giro": 39664, - "giro": 26454, - "girona": 47842, - "giroud": 41177, - "gis": 16266, - "gis": 12773, - "gist": 21241, - "git": 16060, - "git": 20918, - "gita": 40838, - "github": 31196, - "giu": 17931, - "giuli": 29762, - "giuliani": 47739, - "giuse": 29385, - "giuseppe": 33563, - "give": 4120, - "give": 1781, - "giveaway": 5310, - "giveaways": 18974, - "giveback": 41385, - "given": 33323, - "given": 4302, - "givenchy": 38245, - "giver": 43339, - "gives": 3926, - "giveup": 35485, - "giving": 14673, - "giving": 2339, - "givingback": 49300, - "givingtuesday": 23556, - "giz": 29237, - "gk": 38953, - "gk": 18719, - "gl": 1849, - "gl": 14751, - "gla": 1523, - "gla": 36904, - "glaci": 14924, - "glacial": 40782, - "glacier": 19282, - "glaciers": 42528, - "glad": 20841, - "glad": 4761, - "glades": 37432, - "gladi": 21742, - "gladiator": 38477, - "gladiators": 41087, - "gladly": 41598, - "gladys": 43168, - "glam": 8738, - "glam": 16905, - "glamorous": 22896, - "glamour": 42876, - "glamour": 17499, - "glamping": 46167, - "glan": 40482, - "glan": 45844, - "glance": 26557, - "gland": 41441, - "glar": 48535, - "glar": 41702, - "glare": 46035, - "glas": 29935, - "glas": 43654, - "glasgo": 6757, - "glasgow": 29990, - "glasgow": 7363, - "glass": 16305, - "glass": 3313, - "glasses": 6116, - "glaston": 26848, - "glastonbury": 28233, - "glau": 39171, - "glaze": 28112, - "glazed": 24122, - "gle": 7166, - "gle": 2865, - "glee": 32379, - "glee": 21614, - "glen": 6158, - "glen": 11049, - "glend": 38332, - "glendale": 33043, - "glenn": 32004, - "glenn": 12861, - "gler": 34649, - "gley": 21998, - "gli": 5896, - "gli": 28791, - "glia": 22217, - "glide": 37321, - "glider": 41636, - "glimp": 12888, - "glimpse": 13817, - "glio": 29785, - "glit": 21079, - "glitch": 29563, - "glitter": 16528, - "glitz": 44542, - "glo": 1721, - "glo": 30474, - "glob": 13363, - "global": 6707, - "global": 2779, - "globalgoals": 33211, - "globalhealth": 46751, - "globalization": 47680, - "globally": 17775, - "globalwarming": 46017, - "globe": 19436, - "globe": 9368, - "globes": 38085, - "glock": 38818, - "glomer": 43689, - "gloom": 48594, - "gloomy": 32199, - "glori": 7270, - "gloria": 19244, - "glorious": 9171, - "glory": 36107, - "glory": 7285, - "glos": 40633, - "gloss": 38258, - "gloss": 22014, - "glossy": 29802, - "glou": 15989, - "gloucester": 28133, - "gloucester": 23835, - "gloucestershire": 33789, - "glove": 16078, - "glover": 21594, - "gloves": 12363, - "glow": 30472, - "glow": 10111, - "glowing": 18437, - "glows": 48107, - "glu": 5952, - "glu": 32281, - "glucose": 34642, - "glue": 22103, - "glued": 38135, - "gluten": 15482, - "gluten": 15524, - "glutenfree": 16138, - "gly": 13027, - "glycer": 48914, - "gm": 18743, - "gm": 5918, - "gma": 18155, - "gmail": 11119, - "gman": 41043, - "gman": 36936, - "gmb": 35934, - "gmb": 31799, - "gmbh": 46877, - "gmc": 27257, - "gmo": 23486, - "gms": 36987, - "gmt": 13803, - "gn": 2455, - "gn": 9831, - "gna": 23009, - "gnation": 45912, - "gne": 25407, - "gni": 5104, - "gnment": 25110, - "gno": 23376, - "gno": 43686, - "gnocchi": 48299, - "gnome": 33643, - "gnon": 20561, - "go": 650, - "go": 861, - "goa": 14399, - "goal": 9003, - "goal": 3321, - "goalie": 20723, - "goalkeeper": 16601, - "goals": 3295, - "goalscorer": 43547, - "goaltender": 44151, - "goat": 34082, - "goat": 9530, - "goats": 18393, - "gob": 29559, - "gobeavs": 48285, - "goblin": 26223, - "goblue": 25232, - "gobucks": 29175, - "gocougs": 34202, - "god": 4190, - "god": 1731, - "godawgs": 40436, - "godbless": 46616, - "godbless": 44007, - "godd": 16589, - "goddamn": 28495, - "goddard": 37827, - "goddess": 10808, - "godfather": 26222, - "godfrey": 40148, - "godis": 38521, - "godly": 42438, - "gods": 33620, - "gods": 10328, - "goducks": 35889, - "godzilla": 23369, - "goe": 22084, - "goers": 27784, - "goes": 43581, - "goes": 2635, - "gof": 17537, - "goff": 34399, - "goftheday": 39360, - "gofund": 34445, - "gofundme": 34686, - "gog": 42949, - "goggles": 31027, - "gogh": 19697, - "gogo": 22688, - "gogreen": 36279, - "gohawks": 34884, - "goi": 24917, - "goin": 13939, - "going": 25787, - "going": 1245, - "goku": 29550, - "gol": 1537, - "gol": 18257, - "gola": 41090, - "gold": 4999, - "gold": 2209, - "goldberg": 25161, - "goldcoast": 34634, - "golden": 10763, - "golden": 3878, - "goldeng": 20650, - "goldenglobes": 26842, - "goldfish": 40293, - "goldie": 42805, - "goldman": 27164, - "golds": 30526, - "golds": 40283, - "goldsmith": 40214, - "gole": 41297, - "golf": 9096, - "golf": 3096, - "golfclub": 45742, - "golfer": 24579, - "golfers": 28441, - "golfing": 31379, - "goli": 29265, - "goliath": 41602, - "gom": 7051, - "goma": 46198, - "gomes": 39128, - "gomez": 16433, - "gon": 1854, - "gon": 3379, - "gona": 34835, - "gone": 35135, - "gone": 3601, - "gong": 28486, - "gonna": 2562, - "gonz": 10587, - "gonzaga": 36241, - "gonzale": 17512, - "gonzales": 31265, - "gonzalez": 18198, - "goo": 1381, - "goo": 17882, - "good": 2185, - "good": 886, - "goodbye": 6968, - "goodday": 46284, - "goode": 42076, - "goodfood": 46844, - "goodfriday": 40360, - "goodie": 29213, - "goodies": 13308, - "goodluck": 19718, - "goodman": 24146, - "goodmorning": 14421, - "goodness": 10531, - "goodnight": 8540, - "goodreads": 31629, - "goods": 9340, - "goodtimes": 22570, - "goodvibes": 43146, - "goodwill": 24902, - "goodwin": 28080, - "goodwood": 30008, - "goody": 35937, - "goodyear": 42858, - "goofy": 26879, - "goog": 18581, - "google": 12195, - "google": 3460, - "googled": 40345, - "googleplay": 37309, - "goon": 15267, - "goons": 30440, - "goooo": 35876, - "goooo": 48957, - "goose": 21445, - "goose": 13822, - "goosebumps": 32254, - "gop": 18942, - "gop": 6250, - "gopack": 46995, - "gopackgo": 47719, - "gopal": 47268, - "gopdebate": 39806, - "gopher": 47750, - "gopher": 48905, - "gophers": 31957, - "gopro": 17511, - "gor": 1747, - "gor": 29827, - "gordo": 47707, - "gordon": 20485, - "gordon": 8244, - "gore": 30311, - "gore": 17872, - "gorg": 46815, - "gorge": 35548, - "gorge": 20038, - "gorgeous": 3241, - "gori": 12461, - "goria": 43359, - "gorilla": 37910, - "gorilla": 21994, - "gorman": 35741, - "goro": 44977, - "gory": 7160, - "gos": 20517, - "gos": 5693, - "gosh": 15395, - "gosling": 35320, - "gosp": 9617, - "gospel": 11313, - "goss": 39734, - "goss": 36924, - "gossi": 15684, - "gossip": 18963, - "got": 10125, - "got": 1005, - "gota": 36693, - "gotcha": 43275, - "gote": 49345, - "goth": 48465, - "goth": 20437, - "gotham": 46123, - "gotham": 18299, - "gothic": 15426, - "goti": 9497, - "goto": 39715, - "gots": 35215, - "gott": 5089, - "gott": 36466, - "gotta": 4633, - "gotten": 5889, - "gotti": 41881, - "gotv": 36089, - "gou": 10520, - "gou": 36555, - "gouache": 43314, - "goul": 33187, - "gould": 31087, - "gour": 13580, - "gourmet": 19111, - "gov": 4022, - "gov": 4564, - "gove": 36997, - "govegan": 38886, - "gover": 10471, - "gover": 16759, - "govern": 2351, - "govern": 32404, - "governance": 13386, - "governing": 30946, - "government": 3149, - "governmental": 42609, - "governments": 19582, - "governor": 17459, - "governor": 6630, - "governors": 26881, - "govin": 42451, - "govt": 5345, - "govuk": 28830, - "gow": 21885, - "gow": 33788, - "gowan": 31307, - "gower": 43448, - "gown": 13719, - "gowns": 38029, - "goyal": 35105, - "gp": 19329, - "gp": 5051, - "gpa": 24098, - "gps": 13639, - "gpu": 38561, - "gq": 40286, - "gq": 31324, - "gr": 709, - "gr": 6062, - "gra": 782, - "gra": 15276, - "grab": 4646, - "grabbed": 22856, - "grabbing": 26440, - "grabs": 17076, - "grac": 11323, - "grace": 13225, - "grace": 5142, - "graced": 31894, - "graceful": 25242, - "graces": 38629, - "graci": 11174, - "gracias": 16463, - "gracie": 23235, - "gracing": 37263, - "gracious": 29044, - "grad": 19869, - "grad": 7291, - "gradable": 41529, - "grade": 45435, - "grade": 3394, - "graded": 13823, - "grader": 23930, - "graders": 10930, - "grades": 10838, - "gradient": 36885, - "grading": 19016, - "grads": 17811, - "gradu": 3230, - "gradual": 45210, - "gradually": 32192, - "graduate": 6675, - "graduated": 15128, - "graduates": 12236, - "graduating": 14819, - "graduation": 8060, - "grady": 33980, - "graeme": 30192, - "graf": 46478, - "graf": 39765, - "graff": 10656, - "graffiti": 11676, - "graft": 32698, - "grafton": 47347, - "graham": 19805, - "graham": 7711, - "grail": 37184, - "grain": 44003, - "grain": 12109, - "grains": 25791, - "gral": 25631, - "gram": 2949, - "gram": 2338, - "grammar": 16077, - "grammy": 15388, - "grammys": 18121, - "grams": 6294, - "gran": 3892, - "gran": 14493, - "granada": 31172, - "grand": 3058, - "grand": 2991, - "grandad": 29148, - "grandchildren": 36856, - "granddaughter": 29460, - "grande": 37514, - "grande": 10757, - "grandes": 36382, - "grandfather": 15346, - "grandma": 10525, - "grandmother": 17469, - "grandpa": 14582, - "grandparents": 21311, - "grandprix": 39358, - "grandson": 20766, - "grandstand": 43172, - "grange": 45027, - "grange": 23850, - "granger": 42968, - "granite": 18813, - "grann": 45585, - "granny": 22710, - "granola": 34271, - "grant": 18682, - "grant": 5442, - "granted": 14156, - "granth": 41283, - "grants": 15123, - "grape": 19131, - "grape": 15959, - "grapefruit": 28347, - "grapes": 18580, - "grapevine": 47619, - "graph": 1349, - "graph": 4407, - "graphene": 38387, - "grapher": 14987, - "graphers": 32088, - "graphic": 15653, - "graphic": 4245, - "graphical": 20878, - "graphicdesign": 21907, - "graphics": 9492, - "graphies": 40164, - "graphite": 29447, - "graphs": 24670, - "graphy": 4897, - "grapp": 30843, - "gras": 31517, - "gras": 17584, - "grasp": 34975, - "grass": 11584, - "grass": 5922, - "grasses": 46807, - "grasshopper": 48894, - "grassi": 42294, - "grasso": 34808, - "grassroots": 21991, - "grassy": 44140, - "grat": 9221, - "grate": 32463, - "grateful": 45659, - "grateful": 5730, - "grati": 36402, - "gratis": 33638, - "gratitude": 12614, - "grav": 20663, - "grave": 16606, - "grave": 9981, - "gravel": 27054, - "graves": 17665, - "graveyard": 31176, - "gravit": 26150, - "gravitational": 45268, - "gravity": 47426, - "gravity": 15160, - "gravy": 21225, - "gray": 12703, - "gray": 7048, - "grays": 46848, - "grayson": 45831, - "grayson": 25471, - "grazi": 42427, - "grazie": 38698, - "grazing": 29889, - "grc": 44069, - "gre": 689, - "gre": 17878, - "grease": 24132, - "greasy": 44376, - "great": 3265, - "great": 830, - "greate": 31930, - "greater": 32725, - "greater": 7033, - "greatest": 39080, - "greatest": 4153, - "greatly": 13978, - "greatness": 14189, - "greats": 21855, - "greaves": 42350, - "greco": 39103, - "gree": 9987, - "gree": 30774, - "greece": 6965, - "greed": 26147, - "greedy": 33301, - "greek": 23844, - "greek": 6842, - "greeks": 35866, - "green": 2762, - "green": 1901, - "greenberg": 46662, - "greene": 16383, - "greener": 31169, - "greenery": 42493, - "greenfield": 39924, - "greeng": 42077, - "greenhouse": 20819, - "greening": 48673, - "greenland": 27345, - "greenpeace": 44755, - "greens": 10235, - "greensboro": 33436, - "greenville": 25156, - "greenway": 35205, - "greenwich": 18658, - "greenwood": 25782, - "greer": 34345, - "greet": 11042, - "greet": 11997, - "greeted": 24546, - "greeting": 17754, - "greetings": 11569, - "greets": 25464, - "greg": 6894, - "greg": 7943, - "gregation": 20131, - "gregg": 39422, - "gregg": 22929, - "gregor": 33856, - "gregor": 16177, - "gregory": 16253, - "gren": 13941, - "gren": 20119, - "grenade": 33679, - "grenfell": 42107, - "gres": 39670, - "gress": 2752, - "gret": 30041, - "greta": 33443, - "gretchen": 45516, - "grette": 38774, - "grew": 10451, - "grey": 9190, - "grey": 5046, - "greyhound": 27363, - "greyhounds": 45718, - "greys": 44311, - "greysanatomy": 36833, - "gri": 2169, - "gri": 18484, - "grid": 29067, - "grid": 9882, - "gridi": 41063, - "gridiron": 47786, - "grids": 46500, - "grief": 21058, - "grier": 22016, - "griev": 36400, - "grieving": 42383, - "griez": 47962, - "griezmann": 48396, - "griff": 17855, - "griff": 35551, - "griffi": 28676, - "griffin": 46612, - "griffin": 13161, - "griffith": 24375, - "griffiths": 34182, - "gril": 49091, - "grill": 44083, - "grill": 9519, - "grille": 34748, - "grilled": 10691, - "grilling": 28324, - "grills": 39464, - "grim": 20383, - "grim": 23635, - "grime": 37101, - "grimes": 25057, - "grimm": 27865, - "grims": 34861, - "grimsby": 41513, - "grin": 11033, - "grin": 28697, - "grinch": 40527, - "grind": 25730, - "grind": 11810, - "grinder": 31733, - "grinding": 21541, - "gring": 40135, - "grip": 15521, - "gripping": 34567, - "grips": 27819, - "gris": 29150, - "grit": 22037, - "grit": 22087, - "grits": 44307, - "gritty": 33704, - "grizz": 14877, - "grizz": 44088, - "grizzlies": 25594, - "grizzly": 29676, - "grl": 48005, - "gro": 1464, - "gro": 12691, - "grocer": 11633, - "groceries": 32409, - "grocery": 13826, - "grom": 45284, - "gron": 22345, - "groningen": 45639, - "groo": 9015, - "groom": 39883, - "groom": 22813, - "grooming": 25575, - "groot": 37708, - "groove": 39484, - "groove": 17680, - "grooves": 43954, - "groovy": 30143, - "gros": 26834, - "gros": 32639, - "gross": 31080, - "gross": 11541, - "grosven": 46911, - "grote": 47207, - "grotto": 45260, - "grou": 1582, - "groun": 45110, - "ground": 9558, - "ground": 2461, - "groundbreaking": 21006, - "grounded": 27799, - "grounds": 8454, - "groundwater": 39457, - "group": 19045, - "group": 1771, - "groupe": 47654, - "groups": 6776, - "grouse": 36327, - "grove": 31756, - "grove": 7463, - "grover": 31345, - "groves": 27306, - "grow": 3179, - "grow": 4559, - "grower": 44925, - "growers": 25689, - "growing": 28429, - "growing": 4425, - "growingup": 43433, - "growler": 47096, - "grown": 41762, - "grown": 7120, - "grows": 13352, - "growth": 17925, - "growth": 4026, - "growthhacking": 25963, - "grp": 27321, - "grt": 28557, - "gru": 5957, - "grub": 34019, - "grue": 42047, - "gruesome": 47111, - "grum": 45454, - "grump": 49015, - "grumpy": 23610, - "grun": 16203, - "grunge": 33745, - "gry": 16140, - "gry": 5364, - "gs": 25818, - "gs": 1345, - "gsa": 40433, - "gsc": 47751, - "gshore": 43392, - "gsm": 32181, - "gsp": 49173, - "gst": 22239, - "gt": 16151, - "gt": 4725, - "gta": 14826, - "gta": 15338, - "gtaonline": 27292, - "gtav": 27283, - "gti": 39954, - "gto": 39071, - "gtr": 33407, - "gts": 37338, - "gtx": 35230, - "gu": 700, - "gu": 12916, - "gua": 23751, - "guacam": 37477, - "guacamole": 40115, - "guad": 22966, - "guadal": 46097, - "guadalu": 36994, - "guadalupe": 38360, - "guam": 37325, - "guan": 44191, - "guan": 42406, - "guang": 27019, - "guangzhou": 37857, - "guar": 4119, - "guaran": 9242, - "guarantee": 17421, - "guaranteed": 14731, - "guarantees": 40154, - "guard": 30776, - "guard": 4901, - "guarded": 40602, - "guardi": 12008, - "guardia": 43628, - "guardian": 23713, - "guardian": 9498, - "guardians": 21479, - "guarding": 24966, - "guardiola": 32100, - "guards": 12810, - "guatem": 19423, - "guatemala": 21670, - "guay": 48591, - "guay": 24247, - "gubernat": 41400, - "gubernatorial": 41618, - "gucci": 16779, - "gud": 48061, - "gud": 22378, - "gue": 2030, - "gue": 2917, - "gued": 38893, - "guel": 23146, - "guelph": 27660, - "guer": 10391, - "guern": 29277, - "guernsey": 33982, - "guerra": 38215, - "guerrero": 31967, - "guerrilla": 36715, - "gues": 39971, - "gues": 12601, - "guess": 35506, - "guess": 3135, - "guessed": 28005, - "guesses": 30623, - "guessing": 21891, - "guest": 27349, - "guest": 3781, - "guests": 6212, - "guet": 36797, - "guetta": 45904, - "guez": 12313, - "gug": 31358, - "guggen": 35086, - "guggenheim": 37135, - "gui": 2587, - "gui": 25746, - "guid": 11437, - "guidance": 12508, - "guide": 21845, - "guide": 3555, - "guided": 13194, - "guidelines": 16591, - "guides": 14375, - "guiding": 22759, - "guido": 41818, - "guil": 5008, - "guild": 19755, - "guild": 16597, - "guildford": 34450, - "guildhall": 47224, - "guillau": 41123, - "guillaume": 45394, - "guiller": 33660, - "guillermo": 39524, - "guilt": 26354, - "guilty": 9761, - "guin": 13284, - "guin": 47863, - "guine": 13759, - "guinea": 18537, - "guinness": 16648, - "guire": 18209, - "guise": 42024, - "guit": 3759, - "guitar": 21746, - "guitar": 5084, - "guitarist": 13035, - "guitars": 15023, - "guj": 34935, - "gujar": 12698, - "gujarat": 14714, - "guk": 20280, - "gul": 5530, - "gul": 21350, - "gula": 27426, - "gular": 34969, - "gulf": 22101, - "gulf": 11279, - "gull": 48764, - "gull": 28778, - "gulls": 37501, - "gully": 46112, - "gum": 22041, - "gum": 11235, - "gumb": 40147, - "gumbo": 47126, - "gummy": 34276, - "gums": 46609, - "gun": 2748, - "gun": 3496, - "guna": 43333, - "gundam": 26087, - "gundy": 21162, - "gunman": 32743, - "gunmen": 44738, - "gunn": 27473, - "gunna": 24002, - "gunnar": 45301, - "gunner": 35285, - "gunners": 37788, - "guns": 7591, - "gunsense": 44781, - "gunshot": 49250, - "gunsn": 49028, - "gup": 38632, - "gup": 47335, - "gupta": 15905, - "gur": 3218, - "gur": 30224, - "gura": 46836, - "gurgaon": 33240, - "guri": 43888, - "gurl": 25445, - "gurmee": 35482, - "gurmeetramrahim": 36549, - "guru": 18629, - "guru": 10800, - "gurudev": 48647, - "gus": 8018, - "gust": 24629, - "gusta": 23024, - "gusta": 44196, - "gustav": 32062, - "gustav": 37921, - "gustave": 43170, - "gustavo": 45943, - "gusto": 37937, - "gusts": 20896, - "gusty": 27589, - "gut": 24780, - "gut": 13486, - "guter": 44963, - "guterres": 48738, - "guth": 31696, - "guthrie": 33164, - "gutier": 32773, - "gutierrez": 33739, - "guts": 25983, - "gutted": 26524, - "gutter": 40537, - "guwa": 43063, - "guwahati": 45045, - "guy": 10008, - "guy": 2149, - "guyana": 45215, - "guyen": 28031, - "guys": 43588, - "guys": 1791, - "guyz": 48170, - "guzman": 37960, - "gv": 15462, - "gv": 17336, - "gw": 7172, - "gw": 15717, - "gwen": 32165, - "gwen": 24182, - "gwin": 43005, - "gwy": 32226, - "gwyne": 36923, - "gx": 40227, - "gy": 2168, - "gy": 1164, - "gya": 43214, - "gyan": 43814, - "gye": 21728, - "gyllen": 49348, - "gym": 9902, - "gym": 5222, - "gymna": 13517, - "gymnasium": 42847, - "gymnast": 42658, - "gymnastics": 20116, - "gyn": 39603, - "gyne": 45836, - "gyp": 40053, - "gypsy": 22354, - "gypt": 41921, - "gz": 45937, - "gz": 35841, - "gö": 40778, - "gü": 31907, - "h": 71, - "h": 327, - "ha": 560, - "ha": 1429, - "haa": 26814, - "haal": 35869, - "haan": 36284, - "haar": 45247, - "haar": 35859, - "haas": 27443, - "haasan": 26601, - "hab": 20573, - "hab": 20002, - "haban": 46225, - "haber": 44737, - "habit": 8491, - "habit": 17215, - "habitat": 11747, - "habitats": 35344, - "habits": 14540, - "habs": 27489, - "hac": 20343, - "hace": 43623, - "haci": 40674, - "hack": 6610, - "hack": 11182, - "hackathon": 25182, - "hacked": 19575, - "hacker": 22376, - "hackers": 21498, - "hacking": 12939, - "hackney": 48811, - "hackney": 24928, - "hacks": 19965, - "had": 10660, - "had": 1100, - "hadi": 39058, - "hadid": 26415, - "hadith": 46907, - "hadley": 44995, - "hadn": 21480, - "hadoop": 43868, - "hae": 30723, - "hae": 27193, - "hafi": 39914, - "hag": 26855, - "hag": 43207, - "hagan": 47489, - "hagen": 14664, - "hager": 48773, - "hagg": 26324, - "hague": 28988, - "hah": 18108, - "hah": 13680, - "haha": 1913, - "haha": 3060, - "hahah": 27253, - "hahah": 15441, - "hahaha": 4722, - "hahahah": 37513, - "hahahah": 20096, - "hahahaha": 8058, - "hahahaha": 9501, - "hahahahah": 33334, - "hahahahaha": 16347, - "hahahahahaha": 26487, - "hahahahahahaha": 43653, - "hahahahahahahaha": 36126, - "hahahha": 49205, - "hahn": 35596, - "hai": 8734, - "hai": 5234, - "haider": 42200, - "haiku": 19542, - "hail": 15272, - "hail": 8634, - "hailed": 44604, - "hailey": 27703, - "hailing": 47288, - "hails": 32571, - "hailstate": 35063, - "hain": 23861, - "hair": 4658, - "hair": 2225, - "haircare": 43682, - "haircut": 14711, - "hairdresser": 47468, - "haired": 27202, - "hairs": 27951, - "hairstyle": 22324, - "hairstyles": 40627, - "hairy": 26513, - "haiti": 17368, - "haitian": 37577, - "haj": 27885, - "haj": 43191, - "haji": 41889, - "hajj": 35576, - "hak": 25142, - "hak": 40671, - "haka": 44011, - "hake": 41663, - "hal": 1296, - "hal": 8708, - "hala": 25918, - "halal": 34216, - "halam": 29061, - "halamadrid": 31132, - "halder": 32201, - "hale": 37038, - "hale": 14701, - "halen": 39204, - "halep": 49017, - "haley": 37330, - "haley": 16839, - "half": 7453, - "half": 2349, - "halftime": 13742, - "halfway": 16736, - "hali": 9860, - "hali": 43030, - "halibut": 49030, - "halifax": 13411, - "hall": 6850, - "hall": 2140, - "halla": 29569, - "halle": 27763, - "halle": 32239, - "hallelujah": 36993, - "halli": 32665, - "hallmark": 31040, - "hallmark": 32053, - "hallmarkchannel": 36840, - "hallo": 3463, - "halloffame": 48578, - "halloween": 28537, - "halloween": 3739, - "halls": 18052, - "hallucin": 35385, - "hallway": 26845, - "halo": 33331, - "halo": 11918, - "halsey": 34256, - "halt": 25640, - "halter": 47194, - "halton": 45445, - "ham": 1522, - "ham": 1714, - "hama": 17944, - "hamas": 14818, - "hamburg": 18409, - "hamburger": 33928, - "hamid": 32377, - "hamil": 6725, - "hamill": 45784, - "hamill": 48729, - "hamillhimself": 47324, - "hamilton": 22448, - "hamilton": 7684, - "hamlet": 27722, - "hamlin": 49326, - "hamm": 46110, - "hammer": 15331, - "hammer": 9401, - "hammered": 37251, - "hammers": 35649, - "hammersmith": 42127, - "hammock": 33682, - "hammond": 21761, - "hamont": 18518, - "hamp": 6665, - "hamper": 27692, - "hampshire": 16006, - "hampstead": 37340, - "hampton": 36582, - "hampton": 12285, - "hamptons": 42415, - "hamr": 47979, - "hamradio": 36712, - "hams": 25619, - "hamster": 33313, - "hamstring": 39990, - "hamza": 45762, - "han": 1545, - "han": 3565, - "hana": 16801, - "hand": 1722, - "hand": 2463, - "handbag": 22654, - "handbags": 35667, - "handball": 27988, - "handbook": 25147, - "handcrafted": 22185, - "handed": 10881, - "handedly": 48656, - "handel": 40072, - "handful": 23725, - "handheld": 26812, - "handic": 17812, - "handicap": 27063, - "handicapp": 42349, - "handing": 19196, - "handle": 43681, - "handle": 7245, - "handled": 26824, - "handler": 29097, - "handles": 22124, - "handling": 14071, - "handmade": 18054, - "handmade": 6737, - "handmadehour": 25724, - "handover": 46922, - "hands": 3500, - "handshake": 38418, - "handsome": 7438, - "handwriting": 29986, - "handwritten": 35192, - "handy": 13479, - "hane": 28411, - "hang": 3351, - "hang": 5592, - "hangar": 33439, - "hanged": 40807, - "hanger": 28905, - "hangin": 22670, - "hanging": 4850, - "hangout": 17572, - "hangover": 20755, - "hangs": 21785, - "hani": 39944, - "hani": 18374, - "hank": 35993, - "hank": 17655, - "hanks": 29943, - "hanley": 47284, - "hann": 5584, - "hanna": 10075, - "hannah": 18622, - "hannah": 9142, - "hannel": 43477, - "hanni": 19493, - "hannibal": 25149, - "hannity": 24569, - "hannover": 39976, - "hanoi": 36134, - "hanover": 33246, - "hans": 35172, - "hans": 16628, - "hansen": 19729, - "hanson": 24602, - "hant": 40641, - "hanuk": 32774, - "hanukkah": 34247, - "hanuman": 46975, - "hao": 27184, - "hap": 44981, - "hap": 47988, - "happ": 784, - "happen": 21486, - "happen": 4506, - "happened": 4402, - "happening": 4284, - "happeningnow": 43107, - "happenings": 41998, - "happens": 4988, - "happier": 14118, - "happiest": 13811, - "happily": 17316, - "happiness": 5096, - "happy": 2952, - "happy": 900, - "happybirthday": 9651, - "happybirthday": 12207, - "happydays": 25106, - "happye": 33922, - "happyeaster": 38745, - "happyfathersday": 43534, - "happyfriday": 33340, - "happyhalloween": 28750, - "happyholidays": 32186, - "happyhour": 32036, - "happymonday": 47364, - "happymothersday": 42425, - "happynewyear": 18655, - "happythanksgiving": 40593, - "happyvalentinesday": 42403, - "haps": 9114, - "haq": 32445, - "har": 915, - "har": 5888, - "hara": 10367, - "haram": 35732, - "haram": 22950, - "haran": 27921, - "harare": 43562, - "haras": 26644, - "harass": 16481, - "harassed": 43067, - "harassment": 16641, - "harat": 28984, - "harb": 5856, - "harbaugh": 45220, - "harbor": 40686, - "harbor": 10202, - "harbour": 35430, - "harbour": 10011, - "harcourt": 48093, - "hard": 3312, - "hard": 1626, - "hardcover": 31123, - "harden": 27350, - "harder": 12274, - "hardest": 15258, - "hardin": 43802, - "harding": 24382, - "hardly": 17363, - "hardro": 28126, - "hardrock": 48365, - "hardrock": 40739, - "hards": 44048, - "hardship": 45085, - "hardt": 17922, - "hardware": 11957, - "hardwell": 45572, - "hardwick": 46864, - "hardwood": 28167, - "hardwork": 42554, - "hardwork": 27404, - "hardworking": 28095, - "hardworkpaysoff": 49193, - "hardy": 48179, - "hardy": 14113, - "hare": 27903, - "hare": 18464, - "harga": 39738, - "hari": 25472, - "hari": 8981, - "harlan": 49133, - "harle": 29096, - "harlem": 17771, - "harley": 24702, - "harley": 13632, - "harleydavidson": 39183, - "harlow": 34113, - "harm": 16656, - "harm": 14452, - "harman": 42434, - "harmed": 39637, - "harmful": 21725, - "harmless": 44369, - "harmon": 10828, - "harmon": 28729, - "harmony": 10785, - "harms": 46703, - "harne": 43323, - "harness": 23205, - "harold": 16917, - "harp": 27339, - "harper": 31288, - "harper": 12634, - "harri": 6639, - "harrier": 37372, - "harriet": 27154, - "harrington": 34340, - "harris": 25356, - "harris": 6925, - "harrisburg": 40590, - "harrison": 34389, - "harrison": 10540, - "harro": 18939, - "harrogate": 30842, - "harrow": 38807, - "harry": 11094, - "harry": 3600, - "harrypotter": 23375, - "harsh": 30596, - "harsh": 16944, - "hart": 9335, - "hart": 7752, - "hartford": 23434, - "harth": 35619, - "hartle": 47482, - "hartley": 31268, - "hartman": 43294, - "haru": 35099, - "harvard": 28118, - "harvard": 12848, - "harve": 6405, - "harvest": 44495, - "harvest": 8971, - "harvested": 35899, - "harvesting": 26674, - "harvey": 33289, - "harvey": 9586, - "harvick": 46983, - "haryana": 27661, - "has": 13855, - "has": 791, - "hasan": 30049, - "hasbro": 37405, - "hash": 6338, - "hash": 19199, - "hashi": 41831, - "hashmi": 35852, - "hashtag": 34015, - "hashtag": 9238, - "hashtags": 23514, - "haskell": 48550, - "hasn": 9143, - "hass": 9298, - "hassan": 15829, - "hassee": 37117, - "hassel": 32204, - "hassle": 35762, - "hast": 18146, - "hasta": 36623, - "hastings": 22035, - "hat": 3447, - "hat": 3801, - "hatch": 24202, - "hatch": 17809, - "hatchback": 42348, - "hatched": 42158, - "hate": 23546, - "hate": 3753, - "hated": 21298, - "hateful": 36418, - "hater": 36917, - "haters": 14027, - "hates": 14957, - "hatfield": 38448, - "hath": 27894, - "hath": 34416, - "hathaway": 31801, - "hati": 26045, - "hating": 25668, - "hatred": 19046, - "hats": 9812, - "hatt": 8747, - "hatton": 44861, - "hau": 5152, - "hauer": 48751, - "haul": 23743, - "haul": 12332, - "hauled": 46620, - "hauling": 43132, - "haun": 9676, - "haunt": 31039, - "haunted": 14944, - "haunting": 24034, - "haunts": 48035, - "haus": 41755, - "haus": 16478, - "hausen": 33338, - "hauser": 46586, - "haute": 28854, - "hav": 13443, - "hav": 20447, - "havan": 36304, - "havana": 23357, - "havas": 46261, - "have": 18053, - "have": 720, - "haven": 33074, - "haven": 3871, - "havent": 29130, - "haver": 27876, - "haves": 49088, - "havin": 31937, - "having": 1977, - "havoc": 24447, - "haw": 2788, - "haw": 26954, - "hawa": 6067, - "hawa": 46278, - "hawai": 15800, - "hawaii": 32413, - "hawaii": 8265, - "hawaiian": 17734, - "hawan": 27765, - "hawk": 14704, - "hawk": 8218, - "hawke": 38178, - "hawker": 39051, - "hawkeye": 38666, - "hawkeyes": 34266, - "hawking": 33437, - "hawkins": 19740, - "hawks": 44806, - "hawks": 5841, - "hawthorn": 45372, - "hawthorne": 36730, - "hay": 4871, - "hay": 11367, - "haya": 41325, - "hayat": 49360, - "hayden": 19806, - "haydn": 48207, - "haye": 36583, - "hayes": 13555, - "hayley": 39986, - "hayley": 22204, - "haynes": 30496, - "hays": 41524, - "hayward": 29400, - "haz": 5040, - "haz": 39921, - "hazard": 26174, - "hazard": 15178, - "hazardous": 27102, - "hazards": 30639, - "haze": 22785, - "hazel": 19838, - "hazel": 21882, - "hazelnut": 35816, - "hazi": 22740, - "hazmat": 48887, - "hazrat": 45775, - "hazy": 32655, - "hb": 6854, - "hb": 12576, - "hbcu": 40008, - "hbd": 25277, - "hbd": 13594, - "hbo": 15252, - "hc": 15831, - "hc": 7821, - "hcs": 46850, - "hd": 11601, - "hd": 4414, - "hdd": 40508, - "hdmi": 33302, - "hdr": 28065, - "he": 651, - "he": 797, - "hea": 27150, - "hea": 32790, - "head": 1603, - "head": 1375, - "headache": 23849, - "headaches": 38025, - "headband": 28556, - "headed": 6153, - "header": 11077, - "heading": 4409, - "headless": 45219, - "headlights": 42422, - "headline": 10891, - "headliner": 38880, - "headlines": 14706, - "headlining": 26971, - "headphone": 37524, - "headphones": 14906, - "headquarters": 13041, - "heads": 5174, - "headset": 23883, - "headshot": 34890, - "heal": 1231, - "heal": 13833, - "healed": 31456, - "healer": 38328, - "healey": 38985, - "healing": 9295, - "heals": 32384, - "health": 2145, - "health": 1728, - "healthand": 43704, - "healthcare": 42500, - "healthcare": 6023, - "healthier": 18242, - "healthtech": 42694, - "healthy": 10330, - "healthy": 3782, - "healthye": 31532, - "healthyeating": 33761, - "healthyfood": 39996, - "healthylifestyle": 46254, - "healthyliving": 27293, - "healy": 34299, - "heap": 34781, - "heaps": 44446, - "hear": 2749, - "hear": 2584, - "heard": 4063, - "hearing": 46353, - "hearing": 5541, - "hearings": 33175, - "hearn": 36613, - "hears": 25395, - "heart": 4975, - "heart": 1936, - "heartbeat": 29154, - "heartbreak": 29281, - "heartbreaking": 21322, - "heartbroken": 35383, - "hearted": 21679, - "heartfelt": 22904, - "hearth": 31563, - "hearthstone": 34054, - "hearti": 29345, - "hearties": 44572, - "heartland": 31923, - "heartless": 47022, - "heartnews": 40426, - "hearts": 5516, - "heartw": 30002, - "heartwarming": 34080, - "hearty": 26994, - "heat": 12175, - "heat": 4403, - "heated": 17057, - "heater": 23246, - "heath": 12794, - "heath": 11719, - "heather": 20230, - "heather": 12470, - "heathrow": 24171, - "heating": 12478, - "heaton": 34557, - "heats": 36106, - "heatwave": 25726, - "heav": 2409, - "heaven": 15520, - "heaven": 5545, - "heavenly": 19117, - "heavens": 26026, - "heavier": 31253, - "heaviest": 33268, - "heavily": 14123, - "heavy": 12048, - "heavy": 4200, - "heavymetal": 39804, - "heavyweight": 17448, - "heb": 24700, - "heb": 34515, - "hebdo": 41817, - "hebrew": 27298, - "hebrides": 45121, - "hebron": 45725, - "hec": 18932, - "heck": 22985, - "heck": 14427, - "hectares": 44162, - "hectic": 37245, - "hector": 25852, - "hed": 18271, - "hedge": 16229, - "hedge": 20294, - "hedgehog": 21940, - "hedges": 41345, - "hee": 18364, - "hee": 15773, - "heechul": 42487, - "heed": 15118, - "heel": 33646, - "heel": 16861, - "heels": 10909, - "heem": 30061, - "heer": 40473, - "hef": 29473, - "heff": 48756, - "hefty": 48584, - "heg": 41995, - "heh": 25834, - "hehe": 48723, - "hehe": 10658, - "hehehe": 24138, - "hei": 6101, - "hei": 29051, - "heidel": 42927, - "heidelberg": 48445, - "heidi": 44860, - "heidi": 23867, - "heifer": 48219, - "heigh": 43883, - "height": 10788, - "heights": 8418, - "heim": 10931, - "heim": 9768, - "heimer": 39517, - "hein": 15487, - "hein": 43206, - "heine": 28742, - "heineken": 36874, - "heinrich": 47877, - "heinz": 32359, - "heir": 27083, - "heir": 34007, - "heirloom": 34232, - "heirs": 43834, - "heis": 21849, - "heisman": 34537, - "heist": 31035, - "heit": 37255, - "hel": 919, - "hel": 11579, - "hela": 48212, - "held": 4042, - "hele": 46129, - "helen": 17576, - "helen": 11291, - "helena": 23109, - "helene": 41591, - "helens": 45940, - "heli": 33874, - "heli": 40183, - "helicop": 10035, - "helicopter": 11956, - "helicopters": 26922, - "helium": 46505, - "helix": 35247, - "hell": 8410, - "hell": 4141, - "hella": 19800, - "hellboy": 48428, - "helle": 48600, - "helle": 46968, - "hellenic": 42544, - "heller": 44464, - "hello": 12887, - "hello": 3306, - "hells": 47989, - "helly": 48690, - "helm": 47970, - "helm": 19520, - "helmet": 11122, - "helmets": 21843, - "help": 8641, - "help": 1318, - "helped": 4845, - "helper": 29321, - "helpers": 36316, - "helpful": 12695, - "helping": 3875, - "helpless": 47638, - "helpline": 43101, - "helps": 5144, - "helsin": 17842, - "helsinki": 19626, - "hem": 20270, - "hem": 11148, - "hemi": 14256, - "hemi": 46856, - "heming": 30819, - "hemingway": 33470, - "hemisphere": 32767, - "hemmings": 34882, - "hemo": 43788, - "hemp": 28225, - "hemp": 18467, - "hems": 32451, - "hemsworth": 39428, - "hen": 2385, - "hen": 8047, - "hence": 23640, - "hend": 11560, - "hender": 49248, - "henderson": 14348, - "hendrick": 45296, - "hendricks": 37588, - "hendrix": 23605, - "henge": 33104, - "henley": 27853, - "henna": 39455, - "hennessy": 42667, - "henri": 19431, - "henri": 21610, - "henrik": 35772, - "henry": 16018, - "henry": 5508, - "hens": 31742, - "henson": 32935, - "hep": 17724, - "hep": 48791, - "hepat": 23767, - "hepatitis": 32169, - "hepburn": 26348, - "her": 1223, - "her": 899, - "hera": 38724, - "heral": 37809, - "herald": 27625, - "herald": 12851, - "herb": 26116, - "herb": 15302, - "herbal": 21868, - "herbali": 44087, - "herbalife": 48364, - "herbert": 19935, - "herbs": 17320, - "hercules": 26539, - "herd": 36142, - "herd": 18589, - "here": 9134, - "here": 763, - "hered": 47976, - "hereford": 35543, - "heres": 13566, - "hereto": 47673, - "heri": 31392, - "herit": 4720, - "heritag": 38273, - "heritage": 20962, - "heritage": 5455, - "herman": 31890, - "herman": 21568, - "hermann": 40942, - "hermes": 34563, - "hermi": 35265, - "hermione": 45502, - "hermit": 43953, - "hermitage": 47706, - "hermo": 40967, - "hermosa": 42531, - "hern": 30571, - "hern": 43576, - "hernandez": 17707, - "hero": 7338, - "hero": 3756, - "heroes": 38010, - "heroes": 5506, - "heroic": 24255, - "heroin": 23841, - "heroine": 27420, - "heron": 22593, - "heros": 37642, - "herr": 38537, - "herrera": 27755, - "herring": 30211, - "hers": 25359, - "herself": 9207, - "hersh": 20379, - "hershey": 29734, - "hert": 26744, - "hertfordshire": 41070, - "herts": 35784, - "herty": 23454, - "hertz": 49383, - "hes": 30553, - "hes": 12784, - "hesit": 23933, - "hesitate": 34967, - "hess": 41888, - "hester": 31105, - "het": 37527, - "het": 19678, - "hetero": 26405, - "heu": 20105, - "heughan": 32298, - "hew": 48141, - "hew": 43051, - "hewitt": 28871, - "hex": 16255, - "hex": 31241, - "hey": 10759, - "hey": 2189, - "hez": 34591, - "hezbollah": 37636, - "hf": 26606, - "hf": 20603, - "hfx": 47297, - "hg": 23986, - "hg": 26237, - "hgtv": 47657, - "hh": 3280, - "hh": 5180, - "hhh": 8281, - "hhhh": 19391, - "hhhh": 13121, - "hhhhh": 24246, - "hhhhhh": 37278, - "hhs": 27006, - "hi": 677, - "hi": 1883, - "hia": 20672, - "hiatus": 27823, - "hib": 15922, - "hiber": 38799, - "hibis": 36226, - "hibiscus": 36460, - "hibition": 24658, - "hibs": 42814, - "hic": 3549, - "hic": 38079, - "hick": 14813, - "hickman": 49148, - "hickory": 29905, - "hicks": 23429, - "hid": 15552, - "hid": 14451, - "hidalgo": 47464, - "hidden": 28305, - "hidden": 7029, - "hiddleston": 31444, - "hide": 17725, - "hide": 9379, - "hideous": 46588, - "hides": 30800, - "hiding": 11371, - "hie": 15763, - "hier": 23433, - "hier": 29913, - "hierarchy": 44442, - "hifi": 38168, - "hig": 38108, - "higgins": 21783, - "high": 1487, - "high": 1400, - "higher": 5321, - "highered": 27072, - "highest": 5317, - "highland": 32244, - "highland": 16062, - "highlander": 46251, - "highlanders": 40445, - "highlands": 16883, - "highlight": 8264, - "highlighted": 22252, - "highlighter": 45460, - "highlighting": 17344, - "highlights": 6173, - "highly": 5302, - "highness": 38694, - "highs": 15144, - "highschool": 23102, - "highway": 45344, - "highway": 7620, - "highways": 28007, - "higu": 39115, - "hihi": 36240, - "hii": 42315, - "hijab": 31407, - "hika": 41356, - "hikari": 44624, - "hike": 9404, - "hiked": 36471, - "hiker": 40947, - "hikers": 46090, - "hikes": 27076, - "hiking": 9118, - "hiko": 48708, - "hil": 3508, - "hil": 17927, - "hila": 38837, - "hilar": 37337, - "hilari": 7784, - "hilarious": 8358, - "hilariously": 43476, - "hilary": 45898, - "hilary": 25415, - "hilde": 45382, - "hill": 3671, - "hill": 2682, - "hillary": 13257, - "hillary": 7074, - "hillaryclinton": 15357, - "hilli": 32513, - "hills": 24178, - "hills": 5289, - "hillsborough": 32157, - "hillside": 37194, - "hilltop": 45858, - "hilly": 32483, - "hilton": 33621, - "hilton": 14012, - "him": 4128, - "him": 1269, - "himach": 29132, - "himachal": 35461, - "himalay": 17552, - "himalayan": 30318, - "himalayas": 32872, - "hime": 45892, - "himself": 4530, - "himss": 41730, - "hin": 1676, - "hin": 37930, - "hina": 40571, - "hinakhan": 45518, - "hinch": 49320, - "hind": 34460, - "hind": 23293, - "hindi": 14967, - "hinds": 47859, - "hindu": 17587, - "hindu": 12053, - "hinduism": 40592, - "hindus": 25701, - "hindustan": 46553, - "hines": 37462, - "hing": 37968, - "hini": 33564, - "hino": 45343, - "hint": 11868, - "hinton": 47165, - "hints": 20594, - "hio": 32897, - "hip": 11725, - "hip": 6584, - "hipho": 8819, - "hiphop": 26598, - "hiphop": 10914, - "hipp": 13607, - "hippie": 28637, - "hippo": 28398, - "hippo": 36729, - "hips": 30191, - "hipstamatic": 31002, - "hipster": 19987, - "hipsters": 48265, - "hir": 4959, - "hir": 14728, - "hira": 42577, - "hire": 32356, - "hire": 8243, - "hired": 17602, - "hires": 24133, - "hiring": 7835, - "hiro": 17396, - "hiro": 20588, - "hiroshima": 33867, - "hirsch": 46967, - "his": 15211, - "his": 787, - "hism": 23502, - "hispan": 16843, - "hispanic": 22676, - "hist": 21710, - "hist": 13779, - "histo": 33479, - "histor": 2993, - "historia": 46010, - "historian": 20697, - "historians": 35200, - "historic": 30195, - "historic": 5726, - "historical": 34154, - "historical": 8039, - "historically": 30445, - "histories": 34736, - "history": 11142, - "history": 1695, - "historymonth": 19356, - "historyof": 35905, - "hit": 5453, - "hit": 2341, - "hitch": 22937, - "hitch": 36203, - "hitler": 16518, - "hitman": 33290, - "hits": 4712, - "hitter": 23538, - "hitters": 39724, - "hitting": 7957, - "hiv": 44410, - "hiv": 11018, - "hive": 38162, - "hive": 18521, - "hiya": 42393, - "hk": 22648, - "hk": 12307, - "hl": 8297, - "hl": 5956, - "hle": 32389, - "hler": 35418, - "hm": 17913, - "hm": 7631, - "hmm": 13725, - "hmmm": 17032, - "hmmmm": 34598, - "hms": 14625, - "hmu": 21630, - "hmv": 49288, - "hn": 22905, - "hn": 7478, - "hns": 48412, - "ho": 606, - "ho": 2971, - "hoa": 37517, - "hoar": 31628, - "hoax": 33438, - "hob": 18212, - "hobart": 31646, - "hobb": 16175, - "hobbies": 36370, - "hobbit": 23207, - "hobbs": 34343, - "hobby": 41120, - "hobby": 17557, - "hobo": 34613, - "hobo": 41334, - "hoboken": 41568, - "hoc": 35880, - "hoch": 43772, - "hock": 34914, - "hock": 46574, - "hockey": 16499, - "hockey": 4111, - "hoco": 34771, - "hod": 31062, - "hodg": 23660, - "hodge": 40585, - "hodges": 35061, - "hodgson": 37044, - "hoe": 32502, - "hoe": 11262, - "hoek": 40073, - "hoes": 21164, - "hof": 20186, - "hof": 12789, - "hofer": 38654, - "hoff": 32860, - "hoff": 22751, - "hofficial": 41949, - "hoffman": 22026, - "hog": 12075, - "hog": 13255, - "hogan": 19757, - "hogg": 42005, - "hogs": 23242, - "hogwarts": 29168, - "hoh": 43947, - "hoi": 39295, - "hok": 26942, - "hok": 47167, - "hokies": 35168, - "hokkaido": 49145, - "hol": 1187, - "hol": 7349, - "hola": 28724, - "hold": 36496, - "hold": 3254, - "holden": 21869, - "holder": 7862, - "holders": 10074, - "holding": 5050, - "holdings": 24832, - "holds": 7286, - "hole": 47242, - "hole": 5341, - "holes": 11266, - "holi": 2093, - "holi": 21926, - "holic": 16348, - "holics": 29782, - "holiday": 13168, - "holiday": 2878, - "holidays": 5372, - "holiness": 37259, - "holistic": 26300, - "holl": 27699, - "holla": 26500, - "holland": 31608, - "holland": 9978, - "hollande": 47690, - "holler": 49047, - "holli": 24019, - "holliday": 41624, - "hollow": 41221, - "hollow": 16691, - "holloway": 29435, - "holly": 12731, - "holly": 11923, - "hollyo": 41525, - "hollyoaks": 43352, - "hollywood": 24655, - "hollywood": 5518, - "holm": 34758, - "holm": 12739, - "holme": 46149, - "holmes": 12756, - "holo": 10317, - "holocau": 14688, - "holocaust": 16476, - "hols": 33344, - "holt": 18868, - "holtz": 44743, - "holy": 13910, - "holy": 4874, - "hom": 906, - "hom": 47397, - "homa": 9557, - "homage": 17746, - "home": 2143, - "home": 1137, - "homebrew": 35046, - "homec": 33869, - "homecoming": 9008, - "homedecor": 15695, - "homedepot": 38707, - "homegrown": 32554, - "homeitems": 42972, - "homeland": 21633, - "homeless": 18403, - "homeless": 9661, - "homelessness": 19851, - "homemade": 7889, - "homeof": 48856, - "homeowner": 37267, - "homeowners": 29882, - "homepage": 29828, - "homer": 29307, - "homer": 16931, - "homers": 38333, - "homes": 19480, - "homes": 5416, - "homeschool": 40994, - "homestead": 32609, - "homeswee": 46298, - "hometown": 12238, - "homework": 12495, - "homicide": 21520, - "homie": 12540, - "homies": 18893, - "homme": 26193, - "homo": 18129, - "homo": 30504, - "homophobia": 37875, - "homophobic": 40975, - "homosexual": 44288, - "homosexuality": 46720, - "homs": 45413, - "hon": 1279, - "hon": 10296, - "honda": 8553, - "honduras": 29715, - "hone": 38640, - "honest": 7814, - "honest": 9602, - "honestly": 9155, - "honesty": 24939, - "honey": 9843, - "honey": 6406, - "honeycomb": 48583, - "honeymoon": 22527, - "hong": 12144, - "hong": 8598, - "hongkong": 16659, - "honi": 17918, - "honolulu": 28096, - "honor": 9206, - "honor": 3402, - "honorable": 19498, - "honorary": 15675, - "honore": 25868, - "honored": 5494, - "honoree": 38993, - "honorees": 43012, - "honoring": 10771, - "honors": 10248, - "honour": 8240, - "honourable": 29855, - "honoured": 11945, - "honouring": 37754, - "honours": 22558, - "hoo": 2300, - "hoo": 7920, - "hood": 18681, - "hood": 3222, - "hooded": 33631, - "hoodie": 13444, - "hoodies": 25974, - "hoods": 16664, - "hoof": 44555, - "hook": 30488, - "hook": 10395, - "hookah": 34214, - "hooked": 18138, - "hookem": 31465, - "hooker": 37891, - "hooking": 35240, - "hooks": 25068, - "hooligans": 48176, - "hoon": 21368, - "hooo": 44538, - "hoop": 31516, - "hoop": 19573, - "hooper": 35221, - "hoops": 9351, - "hoor": 22155, - "hooray": 24940, - "hoos": 46462, - "hoosier": 48886, - "hoosiers": 42780, - "hoot": 29164, - "hoover": 25691, - "hop": 10848, - "hop": 5833, - "hope": 5263, - "hope": 1683, - "hoped": 30628, - "hopeful": 21453, - "hopefully": 7602, - "hopeless": 35586, - "hopes": 10018, - "hoping": 7207, - "hopkins": 17821, - "hopp": 48839, - "hopped": 34220, - "hopper": 21748, - "hopping": 27606, - "hoppy": 38359, - "hops": 21137, - "hor": 1407, - "hor": 33847, - "hora": 26013, - "horace": 39282, - "horan": 26857, - "horde": 44947, - "hore": 15380, - "horiz": 8144, - "horizon": 17924, - "horizon": 11920, - "horizons": 29685, - "horizontal": 25775, - "hormon": 27096, - "hormone": 31283, - "hormones": 35162, - "horn": 15771, - "horn": 9607, - "horne": 38143, - "horned": 34526, - "hornet": 28739, - "hornets": 20124, - "horns": 22109, - "horny": 32622, - "horo": 21500, - "horoscope": 38453, - "horowitz": 44669, - "horri": 8656, - "horrible": 13726, - "horribly": 45484, - "horrific": 25314, - "horrifying": 38901, - "horror": 13787, - "horror": 5032, - "horrormovies": 46682, - "horrors": 33321, - "horse": 8562, - "horse": 4558, - "horseback": 43673, - "horseman": 48885, - "horsepower": 36882, - "horser": 23096, - "horseracing": 30693, - "horses": 8809, - "horseshoe": 29242, - "horst": 37182, - "hort": 19482, - "horticul": 27141, - "horticulture": 39998, - "horton": 25945, - "hortons": 38422, - "horus": 29794, - "hos": 44320, - "hos": 25008, - "hosa": 44618, - "hose": 19662, - "hoseok": 38817, - "hosp": 2847, - "hosp": 37853, - "hospice": 20533, - "hospit": 7180, - "hospital": 29399, - "hospital": 3851, - "hospitality": 11657, - "hospitalized": 36915, - "hospitals": 13816, - "host": 17403, - "host": 3953, - "hostage": 26119, - "hoste": 31700, - "hosted": 6017, - "hostel": 27225, - "hostess": 39692, - "hostile": 28074, - "hosting": 4857, - "hosts": 8718, - "hot": 2851, - "hot": 2069, - "hota": 43289, - "hotdog": 43758, - "hotel": 14591, - "hotel": 2738, - "hotels": 8654, - "hotline": 30516, - "hotmail": 46427, - "hotness": 39803, - "hotra": 27109, - "hotro": 47823, - "hotspot": 36606, - "hotspur": 35176, - "hotter": 23591, - "hottest": 8279, - "hottie": 22804, - "hotties": 46027, - "hou": 1011, - "hou": 10122, - "hough": 44529, - "houghton": 36133, - "houn": 39273, - "houn": 33607, - "hound": 33996, - "hound": 13561, - "hounds": 21178, - "hounews": 48373, - "hour": 14930, - "hour": 2232, - "hourly": 30918, - "hours": 2382, - "house": 4107, - "house": 1212, - "housed": 37518, - "household": 12412, - "households": 27167, - "housel": 48685, - "housemusic": 28468, - "houseof": 19928, - "houses": 7791, - "housewives": 38523, - "housing": 32924, - "housing": 5734, - "houston": 16564, - "houston": 5663, - "hov": 40291, - "hove": 29674, - "hoven": 35559, - "hover": 36252, - "hover": 49016, - "hovering": 43437, - "how": 7470, - "how": 829, - "howar": 37672, - "howard": 25447, - "howard": 7632, - "howdy": 42216, - "howe": 8179, - "howe": 24614, - "howell": 25297, - "hower": 32920, - "however": 8467, - "howi": 47883, - "howie": 42939, - "howl": 40332, - "howling": 41771, - "howto": 38191, - "howto": 44060, - "hoy": 39625, - "hoy": 13278, - "hoya": 40978, - "hp": 23753, - "hp": 6371, - "hpa": 30983, - "hpc": 39936, - "hpe": 33787, - "hpv": 45765, - "hq": 33571, - "hq": 4693, - "hr": 4810, - "hr": 4086, - "hra": 21320, - "hra": 17212, - "hrc": 18139, - "hrh": 29103, - "hri": 21068, - "hrithik": 45371, - "hrs": 7157, - "hru": 24127, - "hrw": 25064, - "hs": 9343, - "hs": 2466, - "hsbc": 31508, - "hsc": 43510, - "hse": 34057, - "hsfb": 29539, - "hsv": 47311, - "ht": 11123, - "ht": 7801, - "hta": 23452, - "hta": 49384, - "htafc": 42821, - "htc": 48942, - "htc": 17635, - "html": 18231, - "hts": 43710, - "htt": 10620, - "http": 15066, - "https": 30901, - "httr": 49372, - "httweets": 43198, - "hu": 845, - "hu": 5949, - "hua": 22138, - "huan": 41405, - "huang": 32013, - "huar": 46916, - "huawe": 17709, - "huawei": 21128, - "hub": 18775, - "hub": 7028, - "hubb": 23183, - "hubbard": 33288, - "hubble": 30421, - "hubby": 16947, - "hubert": 40699, - "hubs": 29327, - "huck": 22909, - "huckabee": 43666, - "hud": 7169, - "hud": 28563, - "hudder": 22629, - "huddersfield": 24220, - "huddle": 33435, - "hudson": 25873, - "hudson": 11260, - "hue": 48380, - "hue": 21465, - "hues": 38003, - "huey": 39663, - "huff": 18746, - "huff": 44999, - "huffpost": 45887, - "hug": 40790, - "hug": 10359, - "huge": 2699, - "hugely": 24648, - "hugged": 41333, - "hugging": 27058, - "hugh": 8723, - "hugh": 15385, - "hughes": 11418, - "hugo": 43935, - "hugo": 17132, - "hugs": 14248, - "huh": 13348, - "huhu": 32134, - "hui": 29978, - "hul": 7911, - "hula": 40145, - "hulk": 17637, - "hull": 25154, - "hull": 10375, - "hulu": 24666, - "hum": 5823, - "hum": 16283, - "human": 3175, - "human": 2751, - "humane": 20220, - "humanitarian": 14170, - "humanities": 24949, - "humanity": 9420, - "humanright": 44385, - "humanrights": 14148, - "humans": 8324, - "humb": 9988, - "humber": 30602, - "humber": 38063, - "humble": 38703, - "humble": 10889, - "humbled": 19682, - "humbling": 39757, - "humbold": 24739, - "humboldt": 31389, - "hume": 38197, - "humid": 14778, - "humid": 27447, - "humidi": 47666, - "humidity": 15469, - "humil": 27205, - "humili": 25332, - "humility": 28535, - "humming": 26515, - "hummingbird": 33072, - "hummus": 31785, - "humor": 29369, - "humor": 11186, - "humorous": 38173, - "humour": 19161, - "hump": 16673, - "hump": 24529, - "humpback": 47662, - "humpday": 27693, - "humph": 19767, - "humphrey": 31549, - "hun": 1616, - "hun": 10795, - "hundre": 8505, - "hundred": 11898, - "hundreds": 8879, - "hung": 13825, - "hungar": 19420, - "hungarian": 23325, - "hungary": 17232, - "hunger": 25565, - "hunger": 10184, - "hungergames": 47507, - "hungover": 41110, - "hungry": 44845, - "hungry": 8451, - "hunk": 33912, - "hunt": 16498, - "hunt": 5774, - "hunted": 37373, - "hunter": 16531, - "hunter": 6099, - "hunters": 16115, - "hunting": 27830, - "hunting": 7507, - "huntington": 23521, - "hunts": 34041, - "huntsville": 34544, - "hur": 2305, - "hur": 34523, - "hurd": 44915, - "hurdle": 27486, - "hurdles": 25440, - "huri": 42486, - "hurley": 30166, - "hurling": 24738, - "huron": 36147, - "hurrah": 40599, - "hurric": 6543, - "hurrican": 36105, - "hurricane": 24051, - "hurricane": 8782, - "hurricanes": 22357, - "hurry": 10921, - "hurst": 44742, - "hurst": 11760, - "hurt": 7413, - "hurting": 24017, - "hurts": 13059, - "hus": 5111, - "hus": 35853, - "husband": 6179, - "husbands": 33612, - "hush": 28728, - "husk": 19246, - "huskers": 26946, - "huskies": 20988, - "husky": 20421, - "huss": 13733, - "hussain": 17940, - "hussein": 31336, - "hust": 27279, - "hustle": 15709, - "huston": 46480, - "hut": 20924, - "hut": 16503, - "hutch": 31018, - "hutch": 33203, - "hutchinson": 35721, - "hutto": 27662, - "hutton": 38321, - "hv": 17209, - "hv": 18593, - "hvac": 27492, - "hw": 27491, - "hw": 18876, - "hwa": 32352, - "hwan": 44390, - "hwang": 46775, - "hwy": 13812, - "hy": 1441, - "hy": 17827, - "hya": 31600, - "hyacin": 47263, - "hyatt": 44856, - "hyatt": 25146, - "hybri": 9084, - "hybrid": 10156, - "hyd": 42382, - "hyde": 46484, - "hyde": 16343, - "hyder": 13960, - "hyderabad": 14801, - "hydr": 8031, - "hydra": 44414, - "hydra": 40420, - "hydrange": 43298, - "hydrate": 29628, - "hydrated": 23300, - "hydrating": 47653, - "hydration": 24174, - "hydrau": 26017, - "hydraulic": 26189, - "hydro": 8368, - "hydro": 22595, - "hydrogen": 20974, - "hye": 32724, - "hye": 25792, - "hygi": 16277, - "hygiene": 19591, - "hymn": 41350, - "hyo": 38960, - "hyo": 35078, - "hyp": 16964, - "hype": 30353, - "hype": 11111, - "hyped": 22507, - "hyper": 7997, - "hyper": 22146, - "hypertension": 40698, - "hypno": 23355, - "hypnosis": 48138, - "hypnoti": 40440, - "hypo": 10252, - "hypocr": 30711, - "hypocri": 25606, - "hypocrisy": 26296, - "hypocrite": 44125, - "hypothe": 46966, - "hypothesis": 44956, - "hyster": 24235, - "hysteria": 45965, - "hysterical": 48627, - "hyuk": 20452, - "hyun": 11831, - "hyun": 8589, - "hyundai": 17094, - "hyung": 46901, - "hyung": 16551, - "hz": 32533, - "i": 72, - "i": 328, - "ia": 12486, - "ia": 1073, - "iac": 32838, - "iac": 44063, - "iaf": 40789, - "iah": 35052, - "iain": 30103, - "ial": 11530, - "ial": 1974, - "ials": 20940, - "iam": 3579, - "iam": 11415, - "iambic": 43668, - "iambicpent": 43891, - "iamsrk": 15103, - "ian": 7723, - "ian": 1800, - "ians": 6451, - "iansomerhalder": 47077, - "iart": 18413, - "iartg": 18669, - "ias": 32303, - "ias": 14620, - "ib": 3962, - "ib": 13554, - "iba": 39763, - "ibadan": 44691, - "iban": 47145, - "ibc": 49014, - "ibd": 40732, - "iber": 23814, - "ibi": 12337, - "ibis": 47048, - "ibiza": 13853, - "ible": 37792, - "ibles": 44102, - "ibm": 23415, - "ibm": 13918, - "ibn": 25729, - "ibooks": 46887, - "ibra": 15476, - "ibrahi": 40350, - "ibrahim": 20816, - "ibrox": 46883, - "ibs": 41993, - "ibu": 43587, - "ibu": 46117, - "ic": 535, - "ic": 1029, - "ica": 2576, - "icago": 37492, - "ical": 6082, - "ical": 1110, - "ically": 3161, - "icals": 13999, - "ican": 17653, - "ican": 5246, - "icans": 20511, - "icar": 37211, - "ication": 21629, - "icc": 12945, - "ice": 2739, - "ice": 733, - "iceberg": 33662, - "icec": 13636, - "icecream": 21334, - "iced": 8049, - "icelan": 34114, - "iceland": 46716, - "iceland": 11935, - "icelandic": 34705, - "ices": 1931, - "ich": 5333, - "ich": 1232, - "icha": 31453, - "iche": 28972, - "iche": 21143, - "ichi": 21669, - "ichi": 14647, - "ichick": 45022, - "ichiro": 43787, - "ici": 948, - "ici": 22189, - "icia": 11774, - "icial": 17543, - "icial": 6397, - "ician": 40522, - "ician": 5374, - "icians": 6264, - "iciary": 21329, - "icic": 46006, - "icide": 6558, - "icides": 28253, - "icing": 7676, - "icio": 24207, - "icion": 45905, - "icious": 3325, - "icist": 21165, - "icists": 42171, - "icity": 7243, - "ick": 1168, - "ick": 1068, - "icked": 39799, - "icker": 40357, - "ickers": 30701, - "icki": 35468, - "icking": 6619, - "icks": 3727, - "icky": 11587, - "icn": 44516, - "ico": 13697, - "ico": 3040, - "icom": 17693, - "icom": 29796, - "icon": 13843, - "icon": 5646, - "iconic": 6959, - "icons": 15553, - "icop": 9389, - "icos": 32002, - "ics": 1324, - "ict": 6349, - "icted": 36515, - "iction": 40560, - "icton": 36548, - "icu": 45118, - "icu": 30443, - "icular": 40660, - "icus": 31459, - "icy": 28780, - "icy": 3495, - "icymi": 5315, - "icz": 46387, - "id": 1568, - "id": 1014, - "ida": 11032, - "ida": 11600, - "idad": 22462, - "idaho": 48817, - "idaho": 15165, - "idal": 39684, - "idan": 17929, - "idc": 22386, - "ide": 1909, - "ide": 14104, - "idea": 3612, - "ideal": 8789, - "ideally": 48247, - "ideals": 45096, - "ideas": 4452, - "ident": 7113, - "identi": 6009, - "identical": 25587, - "identification": 23337, - "identified": 15217, - "identifies": 35712, - "identify": 10949, - "identifying": 23589, - "identities": 34292, - "identity": 8892, - "ideology": 25840, - "iders": 8980, - "ides": 31791, - "idf": 28987, - "idge": 35567, - "idh": 44325, - "idi": 9611, - "idi": 14264, - "idio": 15994, - "idiot": 14087, - "idiots": 20856, - "idk": 8972, - "idle": 34754, - "idlib": 36199, - "ido": 6763, - "ido": 29641, - "idol": 24866, - "idol": 8884, - "idols": 21398, - "idr": 10106, - "idri": 46435, - "idris": 41312, - "ids": 6111, - "idu": 28655, - "idy": 33058, - "idyl": 44879, - "idyllic": 46632, - "ie": 6789, - "ie": 1718, - "iec": 44773, - "ied": 10059, - "ieee": 39860, - "iel": 27875, - "iel": 22729, - "ience": 1542, - "ient": 13115, - "ier": 33173, - "ier": 5912, - "iers": 45060, - "ies": 27912, - "ies": 963, - "iest": 10818, - "if": 8063, - "if": 878, - "ifa": 37574, - "ifc": 36524, - "ife": 41172, - "ife": 19590, - "iff": 35753, - "ification": 35755, - "ified": 41403, - "ift": 31143, - "iftar": 35153, - "ifu": 41523, - "ify": 32807, - "ig": 1089, - "ig": 3072, - "iga": 16493, - "igan": 27468, - "igans": 25419, - "igbo": 44591, - "ige": 10806, - "igen": 33070, - "iger": 30758, - "iger": 20685, - "igers": 40755, - "igers": 48928, - "iggy": 46219, - "iggy": 27604, - "igh": 2712, - "igh": 5451, - "ight": 14571, - "ight": 897, - "ighton": 35292, - "igi": 21901, - "igle": 29912, - "iglesias": 39432, - "ign": 7303, - "ign": 2326, - "ignati": 37573, - "ignatius": 48318, - "igne": 45843, - "ignite": 25210, - "ignition": 36115, - "igno": 15375, - "ignor": 7653, - "ignorance": 22735, - "ignorant": 26933, - "ignore": 12304, - "ignored": 20428, - "ignores": 40129, - "ignoring": 23969, - "igor": 33024, - "igs": 31344, - "igu": 21279, - "ih": 12162, - "ih": 34135, - "ihear": 13043, - "iheart": 30332, - "iheartawards": 18811, - "iheartradio": 25934, - "ihop": 45511, - "ihri": 39108, - "ihrithik": 39326, - "ii": 5103, - "ii": 2329, - "iii": 46236, - "iii": 6572, - "iiii": 20133, - "iiii": 45393, - "iiot": 30704, - "iit": 39330, - "iit": 33238, - "ij": 7337, - "ija": 42802, - "ik": 3903, - "ik": 10177, - "ika": 18188, - "ike": 12329, - "ike": 19696, - "ikea": 20528, - "iker": 38653, - "ikh": 44655, - "ikh": 12758, - "iklan": 32028, - "iklan": 29584, - "iko": 35659, - "iko": 39272, - "ikon": 38543, - "ikon": 19156, - "iku": 17780, - "il": 543, - "il": 958, - "ila": 4344, - "ilah": 32211, - "ilan": 13889, - "ilan": 28076, - "iland": 20957, - "ilation": 16180, - "ilay": 45093, - "ild": 22278, - "ild": 17164, - "ile": 18398, - "ile": 989, - "iled": 3358, - "iler": 22446, - "iler": 3615, - "ilers": 8975, - "iles": 42274, - "ili": 2076, - "ili": 19601, - "ilia": 14855, - "ilian": 10272, - "iliary": 32585, - "ilife": 42835, - "ilike": 44989, - "ilinan": 48497, - "iling": 3299, - "ilio": 47256, - "ilion": 12561, - "ilis": 43442, - "ilit": 11178, - "ilities": 5446, - "ility": 1787, - "ilive": 26478, - "ill": 828, - "ill": 660, - "illa": 8877, - "illa": 3043, - "illac": 17218, - "illage": 48922, - "illard": 21920, - "illary": 33667, - "illas": 23404, - "ille": 18213, - "ille": 5559, - "illed": 2527, - "illeg": 35808, - "illegal": 7983, - "illegally": 24466, - "illegals": 40490, - "iller": 23341, - "iller": 2956, - "illers": 30547, - "illery": 14514, - "illes": 20037, - "illi": 1086, - "illi": 25187, - "illia": 48776, - "illiams": 30301, - "illian": 48775, - "illian": 17355, - "illic": 37152, - "illicit": 40998, - "illie": 26083, - "illin": 35868, - "illing": 2803, - "illini": 28957, - "illino": 8920, - "illinois": 9414, - "illion": 35542, - "illion": 2035, - "illness": 11145, - "illnesses": 33861, - "illo": 34153, - "illo": 7588, - "illon": 20516, - "ills": 1900, - "illu": 3025, - "illumin": 11446, - "illuminate": 43261, - "illuminated": 28814, - "illuminati": 34551, - "illuminating": 46601, - "illumination": 43680, - "illus": 41386, - "illusion": 20318, - "illusions": 47429, - "illustr": 6268, - "illustrate": 37468, - "illustrated": 13151, - "illustrates": 38129, - "illustrating": 43322, - "illustration": 6052, - "illustrations": 17852, - "illustrator": 16649, - "illustri": 43116, - "illustrious": 44304, - "illy": 11707, - "illy": 9532, - "ilm": 36326, - "ilo": 4220, - "ilo": 14835, - "ilove": 7183, - "ilove": 32914, - "iloveart": 41114, - "ilovemy": 28863, - "iloveyou": 28829, - "ils": 1543, - "ilt": 25334, - "ilton": 28494, - "ilu": 27337, - "ilwx": 43777, - "ily": 4881, - "ily": 1026, - "ilya": 33377, - "ilysm": 29228, - "im": 732, - "im": 1496, - "ima": 2414, - "ima": 6432, - "imac": 40675, - "imacele": 47281, - "imag": 2316, - "image": 24101, - "image": 2867, - "imagery": 22828, - "images": 4952, - "imagin": 18178, - "imaginary": 30417, - "imagination": 13783, - "imaginative": 47233, - "imagine": 35752, - "imagine": 4826, - "imagined": 18478, - "imagines": 47379, - "imaging": 14231, - "imagining": 27384, - "imam": 37552, - "imam": 19024, - "iman": 45684, - "iman": 16247, - "imation": 44566, - "imax": 32066, - "imc": 45616, - "imdanielpadilla": 36357, - "imdb": 30407, - "ime": 44937, - "ime": 31151, - "imel": 31594, - "iment": 37157, - "imer": 21802, - "imes": 47744, - "imf": 28403, - "img": 24157, - "imi": 23559, - "imin": 23942, - "imit": 23462, - "imitation": 41630, - "imma": 19487, - "immac": 25085, - "immaculate": 29649, - "immature": 45531, - "immedi": 7366, - "immediate": 14440, - "immediately": 10108, - "immen": 17278, - "immense": 22722, - "immensely": 35013, - "immer": 13954, - "immerse": 46240, - "immersion": 31861, - "immersive": 27521, - "immigr": 5851, - "immigrant": 16474, - "immigrants": 14460, - "immigration": 9588, - "imminent": 27299, - "immort": 39244, - "immortal": 24717, - "immun": 8961, - "immune": 15606, - "immuni": 44571, - "immunity": 26254, - "immuno": 24361, - "immunology": 44483, - "immunotherapy": 39185, - "imo": 26349, - "imo": 13738, - "imp": 3335, - "imp": 31037, - "impac": 7573, - "impact": 33036, - "impact": 3844, - "impacted": 21424, - "impactful": 41631, - "impacting": 29359, - "impacts": 15069, - "impair": 36451, - "impaired": 28028, - "impairment": 44501, - "impala": 36641, - "impe": 23612, - "impeach": 16874, - "impeach": 43497, - "impeachment": 32979, - "impeachtrump": 38006, - "impecc": 34511, - "impeccable": 40111, - "impending": 34486, - "imper": 7727, - "imperative": 39833, - "imperfect": 46034, - "imperi": 30911, - "imperial": 32425, - "imperial": 12361, - "imperialism": 48855, - "imperson": 25551, - "implant": 33106, - "implants": 32202, - "imple": 7423, - "implement": 17966, - "implementation": 15102, - "implemented": 24315, - "implementing": 22862, - "implic": 15269, - "implications": 19229, - "implo": 40337, - "impo": 45704, - "import": 2336, - "import": 16294, - "importance": 6821, - "important": 2829, - "importantly": 21580, - "imported": 28798, - "imports": 25286, - "impose": 35879, - "imposed": 25871, - "imposing": 42289, - "impossible": 9815, - "impre": 3763, - "impress": 20015, - "impressed": 9689, - "impression": 14468, - "impressionism": 36114, - "impressionist": 44904, - "impressions": 22276, - "impressive": 6634, - "imprint": 43863, - "imprison": 22141, - "imprisoned": 32999, - "imprisonment": 39024, - "impro": 2531, - "impromp": 28100, - "impromptu": 28611, - "improv": 22868, - "improve": 4971, - "improved": 9446, - "improvement": 10790, - "improvements": 16320, - "improves": 18035, - "improving": 10381, - "improvis": 32343, - "improvised": 40886, - "impulse": 29683, - "impy": 42690, - "imran": 19647, - "imran": 19212, - "imrankhan": 25956, - "imrankhanpti": 26688, - "ims": 17800, - "imsa": 37262, - "imv": 35731, - "imvkohli": 37136, - "imwith": 26822, - "imwithher": 32651, - "in": 512, - "in": 530, - "ina": 18026, - "ina": 1366, - "inability": 47517, - "inaccurate": 49192, - "inaction": 41916, - "inactive": 49274, - "inadequate": 43403, - "inak": 46549, - "inal": 19178, - "inals": 26438, - "inan": 26204, - "inappropriate": 26722, - "inari": 48620, - "inary": 11337, - "inas": 36731, - "inas": 12362, - "inated": 38530, - "ination": 4706, - "inau": 10832, - "inaugu": 11309, - "inaugur": 11448, - "inaugural": 11340, - "inaugurated": 29011, - "inauguration": 16805, - "inbound": 24420, - "inbox": 18683, - "inc": 14570, - "inc": 4438, - "incan": 45964, - "incar": 18070, - "incarcer": 26334, - "incarcerated": 49178, - "incarceration": 39887, - "incase": 30463, - "ince": 44303, - "incen": 13259, - "incense": 35059, - "incentive": 29024, - "incentives": 29813, - "inception": 36653, - "inch": 6523, - "incheon": 30645, - "inches": 10809, - "inci": 5747, - "incidence": 43371, - "incident": 10103, - "incidents": 22120, - "incindia": 26161, - "inciner": 46434, - "incl": 27857, - "incl": 13338, - "inclined": 45470, - "inclu": 1738, - "include": 5942, - "included": 7414, - "includes": 6197, - "including": 2814, - "inclusion": 12079, - "inclusive": 13393, - "income": 8044, - "incoming": 15416, - "incomparable": 36027, - "incompetent": 45069, - "incomplete": 34040, - "incon": 42372, - "inconvenience": 40563, - "incorpor": 19335, - "incorporate": 34168, - "incorporated": 29494, - "incorporating": 40303, - "incorrect": 31872, - "incre": 1870, - "increase": 5230, - "increased": 9156, - "increases": 13797, - "increasing": 10270, - "increasingly": 16106, - "incredi": 2883, - "incredible": 22128, - "incredible": 3457, - "incredibleindia": 24680, - "incredibles": 48641, - "incredibly": 9513, - "incu": 38830, - "incub": 24587, - "incubator": 35736, - "incumb": 32246, - "incumbent": 38038, - "incur": 42356, - "ind": 5386, - "ind": 4655, - "inda": 15710, - "inde": 2645, - "indeed": 10031, - "indefin": 29501, - "indefinitely": 43750, - "independ": 4147, - "independence": 23117, - "independence": 7955, - "independenceday": 25971, - "independent": 33844, - "independent": 7088, - "independently": 39831, - "inder": 29225, - "index": 35209, - "index": 9458, - "indhoven": 44229, - "indi": 1098, - "indi": 46536, - "india": 27067, - "india": 1762, - "indian": 7685, - "indian": 3606, - "indiana": 8615, - "indianapolis": 17196, - "indianfootball": 45979, - "indians": 10271, - "indic": 7136, - "indicate": 26679, - "indicated": 39416, - "indicates": 29412, - "indication": 38539, - "indicator": 24776, - "indicators": 30054, - "indicted": 34992, - "indictment": 42278, - "indie": 5260, - "indie": 9383, - "indiedev": 10863, - "indiefilm": 22588, - "indiegame": 17969, - "indiegamedev": 40466, - "indiegames": 35864, - "indiegogo": 38057, - "indies": 23618, - "indiffe": 41372, - "indigen": 8348, - "indigenous": 9303, - "indigo": 21002, - "indira": 43887, - "indirec": 26398, - "indirect": 35416, - "indivi": 5649, - "individu": 9574, - "individual": 8512, - "individually": 33782, - "individuals": 11990, - "indo": 26303, - "indo": 18297, - "indom": 42926, - "indone": 6180, - "indonesia": 7229, - "indonesian": 19593, - "indoor": 44478, - "indoor": 9546, - "indoors": 22973, - "indore": 46143, - "indu": 2298, - "induc": 7973, - "induced": 24103, - "inducted": 20596, - "inductee": 39558, - "inductees": 44796, - "induction": 18338, - "indul": 19402, - "indulg": 28388, - "indulge": 24851, - "indulgence": 40856, - "indulgent": 49147, - "industri": 5082, - "industrial": 30853, - "industrial": 7520, - "industries": 11700, - "industry": 47407, - "industry": 3318, - "indv": 16942, - "indy": 9821, - "indy": 10098, - "indycar": 20484, - "indyref": 22569, - "ine": 855, - "ine": 715, - "ineau": 38122, - "inec": 45214, - "ined": 2038, - "inee": 43252, - "inee": 7986, - "inees": 13056, - "ineffe": 47202, - "inely": 18234, - "inem": 48876, - "inema": 29232, - "inen": 44365, - "inequalities": 45507, - "inequality": 17372, - "iner": 17438, - "iner": 5155, - "iners": 41863, - "ines": 2137, - "inese": 35966, - "iness": 1463, - "inet": 8121, - "inette": 38911, - "inev": 19527, - "inevit": 45871, - "inevitable": 25004, - "inews": 24300, - "inexpensive": 38614, - "iney": 30254, - "inez": 12700, - "inf": 1529, - "inf": 35241, - "infamous": 18688, - "infan": 17219, - "infant": 19192, - "infantry": 21655, - "infants": 34726, - "infe": 7164, - "infec": 26088, - "infected": 26136, - "infection": 14774, - "infections": 22227, - "infectious": 29157, - "infeld": 25035, - "infer": 16258, - "inferno": 31290, - "infertility": 40701, - "infield": 48933, - "infiltr": 28683, - "infin": 6246, - "infinite": 12748, - "infiniti": 34644, - "infinity": 34863, - "infinity": 12895, - "infl": 7627, - "inflam": 16080, - "inflammation": 24893, - "inflammatory": 26831, - "inflatable": 30135, - "inflation": 17497, - "inflicted": 48188, - "influ": 4835, - "influen": 13229, - "influence": 9199, - "influenced": 21183, - "influencer": 25013, - "influencers": 29891, - "influences": 24926, - "influencing": 45126, - "influential": 17553, - "influenza": 39897, - "info": 5680, - "info": 2222, - "infographic": 10076, - "infographics": 33172, - "infor": 31773, - "inform": 10241, - "inform": 19449, - "informal": 25705, - "informat": 29625, - "informatics": 35685, - "information": 3204, - "informative": 19364, - "informed": 13876, - "informing": 45388, - "informs": 48440, - "infosec": 17863, - "infr": 29718, - "infra": 7312, - "infra": 45877, - "infrared": 22867, - "infrastructure": 9034, - "infringe": 44882, - "infringement": 48712, - "infront": 37668, - "infu": 15048, - "infuri": 48461, - "infused": 21461, - "infusion": 43464, - "ing": 653, - "ing": 519, - "inga": 15233, - "ingco": 40444, - "ingday": 16561, - "ingdon": 38731, - "inge": 11790, - "inge": 7071, - "inged": 30046, - "ingen": 19088, - "ingeni": 36884, - "inger": 33883, - "inger": 3541, - "ingfor": 33430, - "ingh": 9170, - "ingh": 30495, - "ingham": 24497, - "ingham": 4291, - "inghamshire": 39289, - "inghour": 42728, - "inging": 4066, - "ingl": 45662, - "ingle": 22228, - "ingle": 17005, - "ingles": 24490, - "ingley": 44428, - "inglis": 46327, - "ingly": 4796, - "ingnow": 34766, - "ingo": 30175, - "ingo": 9012, - "ingra": 45165, - "ingrad": 44124, - "ingram": 26998, - "ingredi": 9272, - "ingredient": 19799, - "ingredients": 11788, - "ingrid": 33496, - "ings": 895, - "ingthe": 20170, - "ingtips": 39373, - "ington": 11846, - "ington": 2156, - "ingu": 8714, - "ingual": 22795, - "ingue": 36838, - "ingui": 12788, - "inguish": 36146, - "inha": 32612, - "inhabit": 36189, - "inhabitants": 44968, - "inhal": 30786, - "inhe": 32617, - "inher": 24611, - "inherent": 47327, - "inherit": 34322, - "inheritance": 39341, - "inherited": 39111, - "inhi": 25557, - "inhibit": 32196, - "inho": 12984, - "ini": 6154, - "ini": 3581, - "inian": 36638, - "inim": 38717, - "inindia": 34021, - "ining": 1389, - "inist": 30976, - "init": 42670, - "initi": 4580, - "initial": 13980, - "initially": 28123, - "initials": 48794, - "initiated": 27756, - "initiation": 41009, - "initiative": 8152, - "initiatives": 16549, - "inity": 22126, - "inj": 5112, - "injec": 13688, - "injection": 21438, - "inju": 5006, - "injured": 7505, - "injuries": 9481, - "injury": 6223, - "injustice": 20541, - "ink": 4547, - "ink": 967, - "inka": 40685, - "inked": 29356, - "inki": 46176, - "inkigayo": 47882, - "inking": 37586, - "inks": 20966, - "inktober": 9387, - "inland": 21943, - "inlet": 35161, - "inline": 45004, - "inlove": 28415, - "inmate": 32341, - "inmates": 28216, - "inmy": 42657, - "inn": 27260, - "inn": 5569, - "inna": 35088, - "inner": 24512, - "inner": 6955, - "inning": 4415, - "innings": 11580, - "innis": 44059, - "inno": 7961, - "innocence": 26383, - "innocent": 11241, - "innov": 2890, - "innovate": 24549, - "innovation": 33063, - "innovation": 4272, - "innovations": 18817, - "innovative": 8494, - "innovator": 34735, - "innovators": 27834, - "ino": 4211, - "ino": 2691, - "inoa": 25649, - "inos": 21828, - "inous": 47801, - "inox": 22698, - "input": 16952, - "inputs": 48763, - "inqu": 10628, - "inqui": 18527, - "inquirer": 45172, - "inquiries": 29469, - "inquiry": 15865, - "inquis": 31171, - "inr": 36325, - "ins": 12786, - "ins": 1041, - "insan": 7875, - "insane": 10260, - "insanely": 27846, - "insanity": 26645, - "inscribed": 49168, - "inscription": 41127, - "insec": 15744, - "insect": 21297, - "insects": 18714, - "insecure": 35112, - "insecurity": 36964, - "inser": 13830, - "insert": 18807, - "insi": 3453, - "inside": 19141, - "inside": 2912, - "insider": 13300, - "insiders": 32171, - "insig": 40503, - "insight": 8795, - "insightful": 20354, - "insights": 8729, - "insignia": 48864, - "insist": 35504, - "insisted": 40423, - "insists": 27255, - "inski": 32630, - "insky": 24607, - "insol": 42366, - "insom": 21755, - "insomni": 42040, - "insomnia": 30598, - "inson": 21007, - "insp": 1597, - "inspec": 7915, - "inspect": 40815, - "inspecting": 40565, - "inspection": 15142, - "inspections": 39513, - "inspector": 20514, - "inspir": 2573, - "inspiration": 4195, - "inspirational": 41936, - "inspirational": 9855, - "inspirations": 35093, - "inspire": 27901, - "inspire": 8583, - "inspired": 39849, - "inspired": 3516, - "inspires": 17245, - "inspiring": 41847, - "inspiring": 5705, - "inspo": 26897, - "inst": 1264, - "inst": 1581, - "insta": 22411, - "insta": 11694, - "instability": 41377, - "instac": 46678, - "instaf": 33800, - "instag": 14612, - "instagood": 23718, - "instagram": 27910, - "instagram": 2659, - "instal": 38805, - "install": 6940, - "install": 11168, - "installation": 9358, - "installations": 27909, - "installed": 8807, - "installing": 18301, - "installment": 25315, - "installs": 45568, - "instalment": 47766, - "instance": 34572, - "instant": 38810, - "instant": 10635, - "instantly": 17703, - "instap": 23758, - "instapic": 34378, - "instaweather": 43078, - "instaweatherpro": 43150, - "inste": 3571, - "instead": 4191, - "instein": 13421, - "instem": 27030, - "instin": 23382, - "instinct": 30544, - "institu": 4257, - "institute": 5861, - "institutes": 43674, - "institution": 18823, - "institutional": 27442, - "institutions": 15207, - "instore": 41679, - "instru": 4544, - "instruc": 19648, - "instruction": 19407, - "instructional": 31022, - "instructions": 17040, - "instructor": 16087, - "instructors": 31998, - "instrument": 42196, - "instrument": 15806, - "instrumental": 23041, - "instruments": 14793, - "instyle": 41321, - "insu": 8805, - "insul": 9615, - "insulated": 42051, - "insulation": 28194, - "insulin": 29311, - "insult": 26673, - "insulting": 39646, - "insults": 40451, - "insur": 5024, - "insurance": 5870, - "insured": 31321, - "insurers": 43142, - "insurtech": 28716, - "int": 1828, - "int": 1207, - "inta": 38314, - "intact": 26870, - "intake": 19539, - "intan": 47695, - "inte": 1598, - "inte": 41900, - "intech": 26504, - "inted": 6147, - "integr": 5151, - "integral": 27018, - "integrate": 25735, - "integrated": 12797, - "integrating": 31555, - "integration": 12583, - "integrity": 14791, - "intel": 11778, - "intel": 11426, - "intellec": 13281, - "intellect": 47828, - "intellectu": 31966, - "intellectual": 18069, - "intelli": 5324, - "intellig": 5632, - "intelligence": 6846, - "intelligent": 14063, - "inten": 2967, - "intend": 36674, - "intended": 16812, - "intense": 10258, - "intensi": 22928, - "intensity": 19956, - "intensive": 21049, - "intent": 18881, - "intention": 26786, - "intentional": 29536, - "intentionally": 31215, - "intentions": 26710, - "inter": 1006, - "inter": 10093, - "interact": 21736, - "interacting": 35045, - "interaction": 17650, - "interactions": 22162, - "interactive": 9456, - "intercep": 23676, - "interception": 48762, - "interceptions": 45313, - "interchange": 34222, - "intercontinental": 31983, - "interdisciplinary": 38132, - "intere": 2008, - "interest": 5095, - "interested": 4620, - "interesting": 3628, - "interests": 16425, - "interface": 18753, - "interfaith": 38399, - "interference": 29099, - "interim": 19509, - "interior": 10700, - "interior": 7305, - "interiordesign": 12902, - "interiors": 14836, - "intermedi": 20246, - "intermediate": 24304, - "intermission": 44805, - "intermitt": 44946, - "intern": 9976, - "intern": 14068, - "internal": 11285, - "internally": 41134, - "internation": 42534, - "international": 8566, - "international": 2436, - "internationaldayof": 41518, - "internationally": 24059, - "internationalwomensday": 17682, - "interne": 32713, - "internet": 30180, - "internet": 4757, - "internetof": 44449, - "internetofthings": 45925, - "interns": 19902, - "internship": 16661, - "internships": 39410, - "interoper": 45754, - "interpre": 11162, - "interpret": 49154, - "interpret": 40459, - "interpretation": 20652, - "interpreted": 42157, - "interpreting": 46525, - "interro": 29548, - "interrup": 21609, - "interrupt": 48449, - "interrupted": 30288, - "intersec": 45246, - "intersection": 19210, - "interstate": 21963, - "interstellar": 41506, - "interval": 36032, - "intervals": 44884, - "interven": 18245, - "intervention": 16804, - "interventions": 28848, - "interview": 2885, - "interviewed": 11688, - "interviewing": 16399, - "interviews": 9910, - "intestin": 37938, - "intestinal": 38896, - "inthe": 7486, - "inti": 14459, - "intim": 38832, - "intimacy": 46430, - "intimate": 16382, - "intimid": 24041, - "intimidating": 44405, - "intimidation": 49258, - "inting": 15571, - "intl": 38186, - "intl": 14224, - "intment": 9020, - "intments": 21420, - "into": 35235, - "into": 1095, - "intoler": 28534, - "intolerance": 37808, - "intothe": 38511, - "intra": 20922, - "intrac": 46195, - "intram": 40956, - "intre": 29397, - "intrepid": 39127, - "intri": 15421, - "intric": 23763, - "intricate": 29616, - "intrigu": 18856, - "intrigue": 45140, - "intrigued": 40034, - "intriguing": 24334, - "intrin": 45181, - "intro": 2999, - "intro": 13224, - "introduc": 3621, - "introduce": 9813, - "introduced": 10446, - "introduces": 12933, - "introducing": 6256, - "introduction": 11812, - "introductory": 38121, - "intru": 22949, - "ints": 2514, - "intu": 17225, - "intuition": 40897, - "intuitive": 35224, - "inu": 21131, - "inuit": 41250, - "inus": 45857, - "inv": 2279, - "inv": 43786, - "inva": 10084, - "invade": 34609, - "invaded": 32596, - "invaders": 35188, - "invading": 40101, - "invali": 31592, - "invalid": 46998, - "invaluable": 33976, - "invasi": 38100, - "invasion": 13378, - "invasive": 19554, - "inve": 2024, - "inven": 26233, - "invent": 11665, - "invent": 23558, - "invented": 14100, - "invention": 23607, - "inventions": 44914, - "inventor": 22836, - "inventory": 19444, - "inver": 12061, - "inverness": 33080, - "inverte": 46397, - "inverted": 40709, - "invest": 4180, - "invest": 9716, - "invested": 22536, - "investig": 4626, - "investigate": 15703, - "investigated": 29180, - "investigates": 29621, - "investigating": 13713, - "investigation": 8194, - "investigations": 24020, - "investigative": 30233, - "investigator": 30528, - "investigators": 24121, - "investin": 40195, - "investing": 10554, - "investment": 5605, - "investments": 14675, - "investor": 15490, - "investors": 10486, - "invests": 38378, - "invic": 25253, - "invigor": 48722, - "invin": 30252, - "invincible": 38052, - "invisible": 16093, - "invit": 12454, - "invitation": 15032, - "invitational": 14511, - "invitations": 40120, - "invite": 8109, - "invited": 7731, - "invites": 16034, - "inviting": 14349, - "invo": 29417, - "invol": 4000, - "involve": 26325, - "involved": 5320, - "involvement": 19502, - "involves": 22652, - "involving": 14786, - "inwx": 35674, - "iny": 23257, - "inyour": 47954, - "io": 3167, - "io": 3752, - "ioc": 43018, - "iom": 33000, - "iom": 31135, - "ion": 14871, - "ion": 3668, - "ions": 26289, - "ior": 7354, - "ior": 2498, - "iority": 46016, - "iors": 6427, - "ios": 6614, - "iot": 32694, - "iot": 6627, - "iota": 37294, - "ious": 6994, - "iously": 38233, - "iow": 7439, - "iowa": 38847, - "iowa": 8290, - "ip": 1719, - "ip": 8600, - "ipa": 11199, - "ipad": 39067, - "ipad": 7491, - "ipads": 35281, - "ipc": 41981, - "iphone": 26030, - "iphone": 4314, - "iphones": 37561, - "ipl": 13440, - "ipment": 37824, - "ipo": 40218, - "ipo": 24090, - "ipod": 17889, - "ipp": 31706, - "ips": 26910, - "ipsw": 22221, - "ipswich": 24494, - "iq": 15554, - "iq": 19996, - "iqbal": 33553, - "ir": 582, - "ir": 742, - "ira": 4923, - "ira": 5371, - "irah": 35724, - "iran": 19273, - "iran": 5075, - "irandeal": 46533, - "irani": 37984, - "iranian": 14158, - "iraq": 8543, - "iraqi": 18617, - "irc": 41527, - "ird": 2770, - "ire": 3013, - "ire": 1454, - "ired": 32728, - "ired": 2995, - "ireland": 32806, - "ireland": 4157, - "irene": 21600, - "ires": 12435, - "irez": 21581, - "irgc": 47942, - "iri": 2155, - "iri": 13880, - "irical": 33366, - "irie": 42979, - "irina": 46664, - "iring": 10169, - "iris": 16437, - "irish": 9386, - "irish": 4889, - "irl": 34494, - "irl": 8570, - "irling": 26493, - "irls": 24344, - "irma": 22406, - "irn": 42603, - "iro": 23209, - "iro": 7280, - "iron": 7699, - "iron": 5391, - "ironic": 24518, - "ironically": 36779, - "ironing": 46655, - "ironman": 20330, - "irons": 30032, - "irony": 20681, - "irport": 27769, - "irr": 24641, - "irrational": 47413, - "irregular": 38692, - "irrelevant": 34677, - "irresi": 31200, - "irresistible": 35252, - "irresponsible": 44714, - "irri": 21484, - "irrigation": 23761, - "irrit": 24218, - "irs": 6086, - "irst": 32701, - "iru": 48206, - "irvin": 47053, - "irvine": 24201, - "irving": 19738, - "irwin": 23750, - "iry": 7239, - "is": 595, - "is": 533, - "isa": 11034, - "isa": 6536, - "isaac": 37544, - "isaac": 13659, - "isab": 13357, - "isabel": 27466, - "isabella": 26192, - "isabelle": 31072, - "isable": 46631, - "isai": 15365, - "isaiah": 17952, - "isak": 40619, - "isance": 46893, - "isation": 7194, - "isback": 43811, - "isc": 39316, - "isch": 47888, - "isco": 5736, - "iscoming": 26458, - "isd": 46816, - "isd": 12002, - "ise": 7669, - "ise": 1479, - "ised": 2861, - "iselle": 48491, - "iser": 23080, - "iser": 5626, - "isers": 34879, - "ises": 5153, - "isf": 44036, - "isgreat": 34595, - "ish": 6844, - "ish": 1061, - "isha": 28050, - "ishable": 37949, - "ished": 35341, - "ishere": 46053, - "ishi": 26224, - "ishq": 27996, - "ishqba": 32503, - "ishqbaaaz": 36591, - "isi": 7233, - "isi": 17880, - "isil": 34636, - "isin": 37676, - "ising": 3426, - "isis": 7531, - "isk": 30171, - "isl": 31368, - "isla": 22807, - "islam": 6003, - "islam": 8770, - "islamabad": 19959, - "islamic": 31627, - "islamic": 9552, - "islamist": 38798, - "islamophobia": 43459, - "island": 13408, - "island": 2619, - "islander": 45651, - "islanders": 27804, - "islands": 7145, - "islay": 49279, - "isle": 19082, - "isle": 11849, - "isleof": 24718, - "isles": 21816, - "islife": 26433, - "islington": 34945, - "ism": 47730, - "ism": 1935, - "isma": 43937, - "ismail": 36140, - "isme": 43570, - "ismo": 41926, - "isms": 18700, - "isn": 2923, - "isner": 48246, - "isnow": 43694, - "isnt": 19416, - "iso": 2462, - "iso": 12263, - "isol": 11414, - "isolated": 19044, - "isolation": 26400, - "ison": 12949, - "ison": 4553, - "isons": 33318, - "isoo": 35857, - "isp": 31397, - "isp": 39041, - "isra": 3591, - "israel": 20837, - "israel": 4779, - "israeli": 8994, - "israelis": 45713, - "isreal": 47147, - "isro": 44841, - "iss": 11738, - "iss": 4950, - "issa": 38579, - "issa": 7560, - "issan": 49358, - "issance": 40828, - "issant": 38828, - "isse": 18986, - "ission": 37946, - "issu": 2049, - "issue": 3202, - "issued": 9246, - "issues": 4082, - "issuing": 37226, - "ist": 9751, - "ist": 2304, - "istanbul": 12258, - "istandwith": 33820, - "iste": 32563, - "ister": 14555, - "isthe": 46748, - "istic": 29556, - "ists": 8426, - "isu": 17030, - "isu": 23328, - "it": 529, - "it": 585, - "ita": 36920, - "ita": 2864, - "itable": 8915, - "ital": 2306, - "ital": 1660, - "itali": 11644, - "italia": 11025, - "italian": 20264, - "italian": 5175, - "italians": 44744, - "italk": 32894, - "italy": 4052, - "itan": 18383, - "itans": 40711, - "itar": 47161, - "itarian": 11599, - "itary": 17604, - "itas": 31634, - "itas": 13436, - "itate": 42457, - "itated": 36744, - "itation": 5070, - "itative": 22892, - "itc": 36449, - "itch": 2387, - "itch": 8147, - "itchen": 32664, - "itchy": 41980, - "ite": 2732, - "ite": 802, - "iteam": 37828, - "itec": 3099, - "itec": 43936, - "itech": 44215, - "itech": 23040, - "ited": 8603, - "ited": 1108, - "itel": 44638, - "itely": 4605, - "item": 8532, - "items": 6207, - "iter": 7938, - "iter": 19773, - "iteracy": 39634, - "iterate": 43106, - "iteration": 38790, - "ites": 2454, - "itez": 42131, - "itf": 35436, - "itfc": 36519, - "ith": 6133, - "ith": 1757, - "ithaca": 46257, - "iti": 760, - "iti": 6165, - "itia": 22634, - "itian": 23365, - "itic": 11950, - "itical": 48767, - "itics": 33967, - "ities": 41423, - "ities": 1480, - "itim": 15676, - "itiner": 32803, - "itinerary": 41564, - "iting": 1257, - "ition": 25263, - "ition": 1104, - "itions": 5540, - "itious": 13329, - "itis": 33539, - "itis": 8388, - "itive": 3067, - "itly": 42240, - "ito": 22167, - "ito": 4661, - "iton": 21119, - "itor": 47267, - "itor": 4584, - "itors": 22005, - "itos": 24560, - "its": 7140, - "its": 902, - "itsa": 45032, - "itself": 7290, - "itsme": 41125, - "itss": 47040, - "itt": 1031, - "itt": 11228, - "itta": 21233, - "itte": 31962, - "itted": 24429, - "itten": 30014, - "itten": 4343, - "itter": 11456, - "itters": 13082, - "itti": 28629, - "ittin": 25646, - "itting": 3147, - "ittle": 24208, - "ittle": 21366, - "ittles": 38989, - "itton": 25707, - "itty": 35096, - "itu": 1668, - "itu": 32128, - "itude": 43382, - "itude": 5012, - "itudes": 20459, - "itunes": 7007, - "itup": 35838, - "iture": 25547, - "itus": 24364, - "itutes": 32883, - "itv": 20159, - "itv": 12805, - "ity": 2480, - "ity": 696, - "itya": 32055, - "itz": 14544, - "itz": 7807, - "iu": 14292, - "iu": 15575, - "ium": 10762, - "ius": 6740, - "iv": 6775, - "iv": 9315, - "iva": 42463, - "ivan": 15544, - "ivan": 15689, - "ivanka": 37914, - "ive": 26885, - "ive": 8653, - "ived": 15654, - "iver": 36849, - "iver": 44254, - "ives": 27333, - "ivf": 39159, - "iving": 45136, - "ivory": 16776, - "ivote": 45835, - "ivy": 36939, - "ivy": 16045, - "iw": 13058, - "iw": 46604, - "iwant": 42747, - "iwd": 16815, - "iwm": 44237, - "ix": 13272, - "ix": 8756, - "iy": 13704, - "iya": 18595, - "iyaki": 48395, - "iz": 2845, - "iz": 8407, - "iza": 37704, - "ization": 10847, - "ize": 10885, - "ized": 7690, - "izen": 34776, - "izer": 23895, - "izes": 45434, - "izing": 17354, - "izo": 46910, - "izz": 31779, - "izz": 46128, - "izzy": 28861, - "j": 73, - "j": 329, - "ja": 1586, - "ja": 2641, - "jaan": 25052, - "jab": 8059, - "jab": 9439, - "jac": 2293, - "jac": 30198, - "jace": 43286, - "jack": 2679, - "jack": 3267, - "jacked": 27923, - "jacket": 6164, - "jackets": 14745, - "jacki": 47418, - "jackie": 28023, - "jackie": 11716, - "jacking": 40929, - "jackman": 35723, - "jackpot": 23926, - "jacks": 19649, - "jackson": 12321, - "jackson": 4363, - "jacksonville": 19263, - "jaco": 6840, - "jacob": 14385, - "jacob": 9222, - "jacobs": 17482, - "jacobson": 46826, - "jacqu": 14495, - "jacqueline": 22843, - "jacques": 17799, - "jad": 12976, - "jad": 38691, - "jada": 37416, - "jade": 25123, - "jade": 14513, - "jaden": 37174, - "jadine": 37445, - "jae": 16869, - "jae": 15765, - "jaejoong": 43610, - "jaf": 19362, - "jag": 7984, - "jag": 36236, - "jagan": 48530, - "jagger": 30835, - "jags": 31086, - "jagu": 10096, - "jaguar": 44777, - "jaguar": 14757, - "jaguars": 21854, - "jah": 20067, - "jah": 11084, - "jahan": 44404, - "jahan": 47827, - "jai": 10542, - "jai": 13819, - "jail": 18574, - "jail": 9332, - "jailbreak": 45990, - "jailed": 19456, - "jails": 47833, - "jaime": 24716, - "jain": 21999, - "jaipur": 23593, - "jais": 48607, - "jait": 28910, - "jaitley": 32776, - "jak": 9225, - "jak": 30589, - "jakarta": 15471, - "jake": 13140, - "jake": 7419, - "jakob": 47358, - "jal": 8380, - "jal": 26773, - "jalan": 27270, - "jalap": 49081, - "jalape": 34263, - "jalapeño": 43017, - "jalen": 33548, - "jam": 1434, - "jam": 5201, - "jama": 8977, - "jama": 35366, - "jamaica": 13019, - "jamaican": 25144, - "jamal": 26108, - "jambo": 35599, - "jamboree": 38506, - "jame": 12341, - "james": 6963, - "james": 2392, - "jamesbond": 44704, - "jamesc": 47004, - "jameson": 31731, - "jami": 15092, - "jamie": 16454, - "jamie": 8078, - "jamiedor": 34310, - "jamiedornan": 34896, - "jammed": 35590, - "jammin": 35223, - "jamming": 25862, - "jammu": 25926, - "jams": 20243, - "jan": 1891, - "jan": 3334, - "jana": 18182, - "jane": 12389, - "jane": 6736, - "janeiro": 31740, - "janet": 29665, - "janet": 15872, - "jang": 41526, - "jang": 22074, - "jani": 22606, - "janice": 36048, - "janine": 46896, - "janis": 44233, - "jann": 35377, - "jans": 22578, - "jansen": 45354, - "janu": 3623, - "january": 3697, - "jap": 2299, - "jap": 49062, - "japan": 4502, - "japan": 3400, - "japanese": 27211, - "japanese": 4925, - "japs": 42121, - "jar": 5120, - "jar": 10837, - "jard": 25778, - "jardin": 37371, - "jare": 17654, - "jared": 35597, - "jared": 12571, - "jaredle": 36739, - "jaredleto": 37106, - "jaro": 35505, - "jarpad": 44497, - "jarre": 23385, - "jarrett": 30531, - "jars": 27583, - "jarvis": 29286, - "jas": 4492, - "jas": 17559, - "jasmin": 42989, - "jasmin": 47700, - "jasmine": 17056, - "jason": 10009, - "jason": 5395, - "jasper": 19827, - "jat": 26106, - "jau": 26932, - "jauregui": 48175, - "jav": 6234, - "java": 12918, - "javascri": 16289, - "javascript": 16423, - "jave": 46218, - "javed": 42268, - "javelin": 41701, - "javi": 47627, - "javier": 23307, - "jaw": 14804, - "jaw": 17307, - "jawa": 44790, - "jaws": 25491, - "jax": 22348, - "jax": 12390, - "jay": 3427, - "jay": 4155, - "jaya": 21960, - "jayanti": 37732, - "jaye": 45703, - "jayne": 35228, - "jays": 12393, - "jaz": 3465, - "jaz": 32874, - "jazeera": 38260, - "jazz": 11488, - "jazz": 4528, - "jazzfest": 36683, - "jazzy": 28191, - "jb": 21915, - "jb": 13637, - "jc": 14991, - "jc": 11517, - "jd": 18289, - "jd": 14125, - "jdm": 42013, - "je": 1013, - "je": 8776, - "jeal": 9964, - "jealous": 11093, - "jealousy": 37654, - "jean": 13943, - "jean": 6473, - "jeanette": 48167, - "jeanne": 29201, - "jeans": 10157, - "jeb": 35101, - "jec": 1347, - "ject": 6070, - "jed": 12166, - "jed": 38748, - "jeddah": 40982, - "jedi": 16681, - "jee": 29250, - "jee": 14870, - "jeep": 16593, - "jeep": 11286, - "jeeplife": 43100, - "jeet": 45542, - "jeet": 30944, - "jef": 10276, - "jeff": 6245, - "jeff": 5550, - "jefferson": 44711, - "jefferson": 13976, - "jeffery": 41470, - "jeffree": 45994, - "jeffrey": 32886, - "jeffrey": 16027, - "jeho": 42437, - "jeky": 43893, - "jekyll": 49405, - "jel": 9794, - "jelena": 48218, - "jelly": 19110, - "jelly": 13762, - "jellyfish": 30988, - "jem": 46326, - "jem": 37530, - "jen": 2554, - "jen": 12997, - "jenkins": 16162, - "jenn": 33921, - "jenn": 29869, - "jenna": 17125, - "jenner": 14260, - "jenni": 6774, - "jennie": 28875, - "jennifer": 19786, - "jennifer": 8613, - "jennings": 21564, - "jenny": 20165, - "jenny": 13414, - "jens": 40806, - "jensen": 35558, - "jensen": 19004, - "jensenackles": 41011, - "jeon": 45200, - "jeon": 43337, - "jeong": 47146, - "jeong": 39264, - "jeopar": 22988, - "jeopardy": 29613, - "jer": 2310, - "jer": 35307, - "jere": 5614, - "jeremi": 22362, - "jeremiah": 27301, - "jeremy": 14656, - "jeremy": 8127, - "jeremycorbyn": 37484, - "jeric": 25084, - "jericho": 28892, - "jerk": 23917, - "jerky": 40079, - "jermaine": 40722, - "jerome": 19876, - "jerry": 18163, - "jerry": 9164, - "jersey": 21921, - "jersey": 4471, - "jerseys": 15518, - "jerus": 12257, - "jerusalem": 12557, - "jes": 7686, - "jes": 35826, - "jess": 5313, - "jess": 13758, - "jesse": 23112, - "jesse": 11770, - "jessi": 24373, - "jessic": 14881, - "jessica": 45421, - "jessica": 8178, - "jessie": 19424, - "jester": 44225, - "jesu": 19777, - "jesuit": 33234, - "jesus": 4070, - "jet": 11515, - "jet": 6565, - "jetblue": 45021, - "jeter": 38450, - "jets": 38584, - "jets": 10025, - "jett": 44541, - "jetty": 46382, - "jew": 27450, - "jewel": 4880, - "jewel": 17591, - "jewell": 9777, - "jewellers": 46265, - "jewellery": 11192, - "jewelry": 28018, - "jewelry": 6039, - "jewels": 20205, - "jewish": 29594, - "jewish": 9104, - "jews": 14200, - "jf": 31130, - "jf": 33718, - "jfc": 43652, - "jfk": 18486, - "jg": 41986, - "jg": 35138, - "jh": 24858, - "jh": 21485, - "jha": 47012, - "jha": 38092, - "jhal": 45695, - "jhar": 31546, - "jharkhand": 39001, - "jhb": 34631, - "ji": 3252, - "ji": 2697, - "jia": 32907, - "jian": 33427, - "jiang": 43309, - "jiang": 25762, - "jic": 48350, - "jic": 40215, - "jid": 24403, - "jie": 40005, - "jig": 15136, - "jig": 47430, - "jigsaw": 32987, - "jiha": 23194, - "jihad": 29637, - "jihoon": 44765, - "jil": 36225, - "jill": 24136, - "jill": 15254, - "jillian": 37820, - "jim": 3190, - "jim": 4550, - "jima": 20679, - "jimcantore": 43950, - "jimenez": 35947, - "jimi": 30565, - "jimin": 16286, - "jimmie": 45679, - "jimmy": 12215, - "jimmy": 6817, - "jimmyfallon": 45265, - "jin": 7927, - "jin": 8485, - "jind": 40609, - "jing": 34933, - "jing": 28607, - "jingle": 28699, - "jinnah": 43141, - "jinping": 39308, - "jinx": 42977, - "jinyoung": 38051, - "jio": 40501, - "jis": 25988, - "jis": 23515, - "jisoo": 43070, - "jit": 11947, - "jit": 20308, - "jitsu": 24530, - "jiu": 43351, - "jiu": 44123, - "jj": 12502, - "jj": 12790, - "jk": 20189, - "jk": 9702, - "jkt": 21494, - "jl": 25027, - "jl": 22911, - "jlo": 31017, - "jm": 24044, - "jm": 18657, - "jn": 24576, - "jn": 21717, - "jnr": 37145, - "jnu": 47142, - "jo": 683, - "jo": 3804, - "joachim": 48979, - "joan": 28064, - "joan": 12710, - "joann": 35484, - "joanna": 25357, - "joanne": 43736, - "joanne": 25092, - "joao": 45666, - "joaqu": 25140, - "joaquin": 30745, - "job": 13114, - "job": 2075, - "jobs": 3735, - "jobsearch": 45459, - "joburg": 39343, - "jocel": 36879, - "jocelyn": 47259, - "jock": 34485, - "jockey": 20126, - "jodh": 48689, - "jodi": 36812, - "jodi": 26888, - "jodie": 33100, - "jody": 32959, - "joe": 9309, - "joe": 3305, - "joel": 19819, - "joel": 11429, - "joes": 34756, - "joey": 16281, - "joey": 10455, - "jog": 37967, - "jog": 31691, - "jogging": 37922, - "joh": 1201, - "johan": 17416, - "johan": 27789, - "johann": 31180, - "johanna": 41494, - "johannes": 37779, - "johannesburg": 28377, - "johansson": 41512, - "johar": 34871, - "john": 2004, - "john": 1742, - "johncena": 46820, - "johnnie": 47947, - "johnny": 14464, - "johnny": 6904, - "johns": 14515, - "johnson": 26036, - "johnson": 4010, - "johnston": 19791, - "johnstone": 40766, - "johor": 34750, - "join": 14737, - "join": 1384, - "joined": 4954, - "joining": 5118, - "joins": 5681, - "joint": 6640, - "jointhe": 30422, - "jointly": 37471, - "joints": 27204, - "jojo": 41484, - "jojo": 22075, - "joke": 7198, - "joker": 18200, - "jokers": 44101, - "jokes": 11336, - "joking": 26112, - "joko": 44975, - "jol": 9174, - "jol": 36470, - "jolie": 31633, - "jolla": 46109, - "jolly": 21516, - "jom": 32152, - "jon": 3026, - "jon": 6139, - "jona": 6629, - "jonah": 47934, - "jonah": 27556, - "jonas": 42373, - "jonas": 13650, - "jonathan": 19026, - "jonathan": 7762, - "jone": 33934, - "jones": 19091, - "jones": 3538, - "jong": 20214, - "jong": 14726, - "jonghyun": 29023, - "jongin": 36957, - "joni": 43177, - "jonny": 28454, - "jonny": 21895, - "joo": 25807, - "joo": 27680, - "joom": 47543, - "joon": 18547, - "joong": 26544, - "jop": 30486, - "joplin": 42688, - "jor": 2482, - "jor": 31595, - "jordan": 14644, - "jordan": 4388, - "jordani": 46898, - "jordi": 44795, - "jorge": 48761, - "jorge": 18225, - "jos": 20560, - "jos": 19661, - "jose": 4647, - "jose": 7075, - "josef": 36584, - "josel": 47800, - "joseph": 14163, - "joseph": 6478, - "josephine": 34866, - "josh": 9998, - "josh": 5679, - "joshi": 24786, - "joshu": 9112, - "joshua": 11852, - "josi": 33583, - "josie": 33167, - "joss": 42834, - "josé": 27922, - "jou": 19921, - "jou": 32029, - "jour": 2078, - "jour": 17142, - "journ": 4563, - "journal": 6626, - "journalism": 10123, - "journalist": 9914, - "journalists": 12249, - "journals": 24391, - "journe": 48833, - "journey": 32156, - "journey": 3749, - "journeys": 23329, - "journo": 37034, - "journos": 46437, - "jovi": 33866, - "joy": 6308, - "joy": 4273, - "joyce": 43753, - "joyce": 15275, - "joye": 34052, - "joyeux": 41876, - "joyful": 24139, - "joyous": 32245, - "joyride": 46949, - "joys": 22996, - "jp": 18249, - "jp": 10557, - "jpg": 36950, - "jpn": 36212, - "jr": 13973, - "jr": 3605, - "js": 46243, - "js": 8006, - "jst": 26523, - "jt": 39480, - "jt": 18119, - "ju": 669, - "ju": 9970, - "jual": 38720, - "juan": 17148, - "juan": 9274, - "juana": 9081, - "jubi": 15485, - "jubil": 47743, - "jubilee": 16907, - "juco": 31570, - "jud": 8363, - "juda": 32478, - "judah": 41066, - "judaism": 42217, - "judas": 39532, - "judd": 29770, - "judg": 20012, - "judge": 16824, - "judge": 5656, - "judged": 33453, - "judgement": 25246, - "judges": 12575, - "judging": 16570, - "judgment": 24191, - "judi": 42546, - "judice": 28032, - "judicial": 19579, - "judiciary": 24545, - "judith": 24047, - "judo": 27011, - "judy": 34663, - "judy": 16510, - "jug": 27619, - "jugg": 38628, - "juic": 38761, - "juice": 37954, - "juice": 6916, - "juices": 36757, - "juicy": 17623, - "juju": 43020, - "juke": 32519, - "jukebox": 36411, - "jul": 34662, - "jul": 15975, - "jule": 40819, - "jules": 21996, - "juli": 3614, - "juli": 49160, - "julia": 10207, - "julian": 25459, - "julian": 12643, - "juliana": 46059, - "julie": 22534, - "julie": 10505, - "julien": 32595, - "juliet": 20641, - "juliette": 44804, - "julio": 24888, - "julius": 20870, - "july": 2272, - "jum": 20791, - "jumbo": 24678, - "jume": 45989, - "jump": 5519, - "jump": 6423, - "jumped": 16901, - "jumper": 16558, - "jumpers": 36485, - "jumping": 11476, - "jumpman": 48803, - "jumps": 18911, - "jumpsuit": 31044, - "jun": 1637, - "jun": 7719, - "junction": 11320, - "june": 23188, - "june": 2345, - "jung": 13086, - "jung": 13031, - "jungkook": 20040, - "jungle": 42421, - "jungle": 10865, - "juni": 4029, - "junior": 21167, - "junior": 5027, - "juniors": 16811, - "juniper": 33829, - "junk": 16000, - "junkie": 27613, - "junkies": 41207, - "juno": 28845, - "junto": 34282, - "jupit": 15270, - "jupiter": 16212, - "jur": 15896, - "jura": 14715, - "jurassic": 28844, - "jurassic": 21255, - "jurgen": 39263, - "juris": 37010, - "jurisdic": 37714, - "jury": 12931, - "jus": 14999, - "just": 1770, - "just": 761, - "justi": 14700, - "justic": 30399, - "justice": 16904, - "justice": 3604, - "justicefor": 25812, - "justiceleague": 41929, - "justices": 44356, - "justified": 34546, - "justify": 28192, - "justin": 7537, - "justin": 4394, - "justinbieber": 12501, - "justine": 34418, - "justintrudeau": 32184, - "justsaying": 42922, - "juve": 47717, - "juve": 23092, - "juven": 12944, - "juvenile": 19333, - "juvent": 13908, - "juventus": 47378, - "juventus": 16208, - "jux": 33552, - "juxta": 34964, - "jv": 37932, - "jv": 11805, - "jw": 30221, - "jw": 24215, - "jy": 20979, - "jyo": 27378, - "jyoti": 48696, - "jä": 45381, - "k": 74, - "k": 330, - "ka": 1595, - "ka": 1525, - "kaa": 34496, - "kab": 6554, - "kab": 45134, - "kabaddi": 41749, - "kabir": 38619, - "kabo": 47974, - "kabul": 26160, - "kac": 21693, - "kach": 14341, - "kad": 10901, - "kade": 41130, - "kaduna": 38053, - "kae": 22542, - "kaeper": 30070, - "kaepernick": 30713, - "kaf": 19870, - "kag": 13666, - "kag": 31003, - "kah": 16068, - "kah": 15463, - "kahn": 35397, - "kai": 12752, - "kai": 9601, - "kaido": 40255, - "kail": 23623, - "kaine": 39028, - "kair": 33027, - "kaiser": 43685, - "kaiser": 29960, - "kait": 19326, - "kaitlyn": 34948, - "kaj": 44788, - "kaj": 40381, - "kak": 10401, - "kak": 40128, - "kaka": 47689, - "kaku": 30900, - "kal": 4187, - "kal": 18712, - "kala": 45453, - "kala": 33105, - "kalam": 40142, - "kalamaz": 42328, - "kalamazoo": 46264, - "kalb": 34483, - "kale": 17162, - "kale": 16625, - "kaleido": 41144, - "kali": 17844, - "kali": 26964, - "kalin": 42776, - "kalyan": 23825, - "kam": 4104, - "kam": 26011, - "kamal": 31371, - "kamal": 28619, - "kamala": 45003, - "kame": 45235, - "kamen": 40738, - "kami": 28707, - "kamloops": 36602, - "kamp": 35179, - "kamp": 29522, - "kampala": 37134, - "kan": 2532, - "kan": 8101, - "kana": 35178, - "kand": 17478, - "kane": 32218, - "kane": 9765, - "kang": 12226, - "kang": 20789, - "kangar": 20622, - "kangaroo": 25513, - "kani": 40907, - "kani": 41948, - "kann": 18533, - "kannada": 30053, - "kano": 28201, - "kans": 34012, - "kansas": 25507, - "kansas": 6539, - "kansascity": 46134, - "kant": 39923, - "kant": 47132, - "kanth": 24427, - "kanu": 44565, - "kany": 13590, - "kanye": 29680, - "kanye": 14965, - "kanyewest": 31943, - "kap": 6804, - "kap": 45279, - "kapam": 48561, - "kapil": 32337, - "kapil": 42709, - "kapilshar": 48978, - "kaplan": 37401, - "kapoor": 9117, - "kapp": 36717, - "kappa": 20239, - "kapur": 42371, - "kar": 1813, - "kar": 5933, - "kara": 12552, - "karab": 40916, - "karachi": 13671, - "karak": 40372, - "karan": 20077, - "karan": 20931, - "karanjohar": 47621, - "karao": 16262, - "karaoke": 16640, - "karate": 21211, - "kardashi": 13619, - "kardashian": 14578, - "kare": 14310, - "kare": 38354, - "kareem": 38885, - "kareena": 41569, - "karen": 17719, - "karen": 10349, - "kari": 15339, - "kari": 15161, - "karim": 33477, - "karin": 43917, - "karina": 40250, - "karl": 20967, - "karl": 13134, - "karla": 42309, - "karma": 17658, - "karnat": 13994, - "karnataka": 15515, - "karo": 45305, - "kart": 47841, - "kart": 21310, - "karthik": 41397, - "karti": 23053, - "kartikeyan": 32584, - "karting": 41655, - "kas": 6119, - "kas": 14372, - "kasa": 46111, - "kash": 6954, - "kash": 21371, - "kashi": 47945, - "kashmir": 20251, - "kashmir": 10783, - "kashmiri": 35331, - "kasi": 45870, - "kasi": 32819, - "kasich": 39666, - "kat": 2844, - "kat": 9341, - "kata": 14558, - "kate": 11620, - "kate": 6699, - "katelyn": 45963, - "kath": 7386, - "kath": 19745, - "katharine": 41473, - "katherine": 17687, - "kathle": 18721, - "kathleen": 21709, - "kathmandu": 34456, - "kathniel": 36159, - "kathr": 14905, - "kathryn": 33142, - "kathryn": 19999, - "kathy": 34775, - "kathy": 18795, - "kati": 6515, - "kati": 29928, - "katic": 48058, - "katie": 24117, - "katie": 9076, - "katniss": 47916, - "kato": 27573, - "katrin": 31282, - "katrina": 21397, - "katrinakaif": 45845, - "kats": 44213, - "katsu": 49296, - "katsu": 43712, - "katy": 17609, - "katy": 14435, - "katyperry": 28309, - "katz": 30790, - "kau": 9299, - "kau": 36895, - "kauai": 44050, - "kaufman": 37188, - "kaur": 30518, - "kav": 10228, - "kavan": 18576, - "kavanaugh": 20252, - "kaw": 10842, - "kaw": 42719, - "kawa": 33244, - "kawaii": 26891, - "kawasaki": 28227, - "kawhi": 41220, - "kay": 4673, - "kay": 9862, - "kaya": 22752, - "kayak": 27043, - "kayaking": 28977, - "kaye": 33003, - "kayla": 17139, - "kaylee": 47215, - "kayo": 37021, - "kaz": 8812, - "kaz": 39622, - "kazakh": 25451, - "kazakhstan": 26720, - "kazan": 47641, - "kb": 27381, - "kb": 19960, - "kbs": 27418, - "kc": 10869, - "kc": 8638, - "kca": 14347, - "kcon": 39970, - "kcr": 46181, - "kd": 21826, - "kd": 15597, - "kday": 31074, - "kdrama": 48628, - "ke": 643, - "ke": 618, - "kea": 47926, - "kean": 43288, - "keane": 28635, - "keanu": 40608, - "kear": 21562, - "kearney": 36435, - "keating": 40045, - "keaton": 29975, - "kebab": 36497, - "ked": 11730, - "ked": 1243, - "kee": 9724, - "kee": 6760, - "keef": 42323, - "keefe": 46965, - "keegan": 31122, - "keel": 48376, - "keen": 17714, - "keen": 13218, - "keenan": 36276, - "keep": 2924, - "keep": 1726, - "keeper": 7650, - "keepers": 16130, - "keepin": 41712, - "keeping": 38371, - "keeping": 4873, - "keepit": 28044, - "keeps": 6333, - "keer": 27412, - "keerth": 47500, - "keerthyofficial": 48185, - "kees": 10791, - "keg": 32785, - "keh": 41272, - "keh": 36983, - "kei": 18735, - "kei": 24835, - "keith": 18762, - "keith": 8252, - "kej": 15674, - "kejri": 16617, - "kejriwal": 17334, - "keke": 39195, - "kel": 2825, - "kel": 7553, - "kele": 41765, - "kell": 16082, - "kell": 40103, - "keller": 21407, - "kelley": 23776, - "kelli": 45852, - "kelli": 46190, - "kellie": 49224, - "kellogg": 44218, - "kelly": 13417, - "kelly": 5220, - "kelown": 31708, - "kelowna": 32963, - "kelsey": 42295, - "kelsey": 23018, - "kelvin": 32859, - "kem": 31013, - "kem": 17349, - "kemp": 18302, - "kemp": 25325, - "ken": 1838, - "ken": 1702, - "kend": 7497, - "kendal": 44836, - "kendall": 34607, - "kendall": 16238, - "kendra": 36074, - "kendrick": 41787, - "kendrick": 21953, - "kendricklamar": 47020, - "kenne": 6209, - "kennedy": 38631, - "kennedy": 9004, - "kennel": 39595, - "kenneth": 46900, - "kenneth": 17839, - "kenney": 41373, - "kenny": 20185, - "kenny": 9595, - "kens": 29765, - "kensing": 21505, - "kensington": 24988, - "kent": 13875, - "kent": 8214, - "kentu": 9045, - "kentucky": 32230, - "kentucky": 10014, - "keny": 17374, - "kenya": 6181, - "kenyan": 22624, - "kenyans": 36263, - "kenyatta": 31012, - "kenzie": 38087, - "keo": 43062, - "kept": 7737, - "ker": 2352, - "ker": 1485, - "keral": 35122, - "kerala": 11881, - "kered": 26690, - "kerel": 32232, - "keri": 43447, - "kermit": 40908, - "kern": 40150, - "kernel": 40684, - "kerr": 20491, - "kerri": 41849, - "kerry": 24795, - "kerry": 13097, - "kers": 30347, - "kers": 2880, - "kershaw": 40785, - "kerson": 42810, - "kerswednesday": 48152, - "kert": 47279, - "kes": 38398, - "kes": 1115, - "kesh": 19751, - "kesha": 36526, - "kest": 15080, - "ket": 2715, - "ket": 1236, - "ketball": 38240, - "ketch": 22590, - "ketch": 35371, - "ketchup": 26724, - "kete": 25404, - "keted": 41396, - "keting": 15951, - "keto": 27485, - "keto": 28754, - "kets": 1632, - "kett": 23124, - "kett": 10312, - "kettering": 43779, - "kettle": 41992, - "kettle": 24303, - "kev": 22758, - "kev": 29419, - "kevin": 9419, - "kevin": 4685, - "kew": 38014, - "kew": 31409, - "kex": 30251, - "key": 2891, - "key": 1458, - "keyan": 27617, - "keyboard": 13017, - "keyboards": 49237, - "keychain": 31050, - "keye": 40516, - "keye": 20635, - "keyes": 18336, - "keynes": 32462, - "keynote": 7556, - "keys": 48912, - "keys": 6355, - "keystone": 30688, - "keyword": 42284, - "keywords": 48122, - "kf": 33308, - "kf": 42119, - "kfc": 22032, - "kg": 36772, - "kg": 7817, - "kgs": 46629, - "kh": 2166, - "kh": 7452, - "kha": 7333, - "kha": 18929, - "khair": 43742, - "khaki": 41646, - "khal": 13070, - "khaled": 29343, - "khali": 11324, - "khalid": 27166, - "khalifa": 21389, - "khalil": 36229, - "kham": 24892, - "khan": 13318, - "khan": 3873, - "khand": 43384, - "khand": 31110, - "khanna": 29931, - "khar": 18340, - "khar": 28578, - "khart": 37458, - "khat": 43290, - "khe": 26360, - "kher": 43843, - "khi": 39062, - "khi": 42925, - "khil": 34101, - "khloe": 45312, - "kho": 14022, - "kho": 28774, - "khou": 30656, - "khs": 21239, - "khtar": 45593, - "khu": 14041, - "khur": 32083, - "khy": 40917, - "khz": 45604, - "ki": 848, - "ki": 2608, - "kia": 8712, - "kian": 43961, - "kian": 25708, - "kians": 44010, - "kib": 43108, - "kiba": 37207, - "kic": 24003, - "kic": 27633, - "kicchasu": 44665, - "kicchasudeep": 45560, - "kick": 4102, - "kick": 4289, - "kickass": 39299, - "kickboxing": 36041, - "kicked": 12479, - "kicker": 26338, - "kickin": 34597, - "kicking": 7802, - "kickoff": 10245, - "kicks": 6989, - "kickstart": 40780, - "kickstarter": 13228, - "kid": 3948, - "kid": 3551, - "kidd": 24082, - "kidding": 14535, - "kiddo": 36360, - "kiddos": 29205, - "kidlit": 39064, - "kidlit": 33515, - "kidlitart": 41600, - "kidman": 44931, - "kidnap": 45100, - "kidnapp": 16183, - "kidnapped": 24737, - "kidnapping": 32361, - "kidney": 37835, - "kidney": 14610, - "kids": 15561, - "kids": 1911, - "kidz": 41938, - "kie": 8544, - "kie": 3094, - "kiefer": 48026, - "kiel": 40940, - "kiel": 25509, - "kien": 28782, - "kier": 20403, - "kier": 35575, - "kieran": 29231, - "kies": 36601, - "kies": 4993, - "kiest": 29755, - "kiev": 24585, - "kiewicz": 47574, - "kigali": 40278, - "kii": 39340, - "kik": 36176, - "kiki": 23962, - "kiko": 40861, - "kil": 4912, - "kil": 39337, - "kildare": 45541, - "kili": 24386, - "kilig": 49172, - "kilimanjaro": 43470, - "kilkenny": 33805, - "kill": 6163, - "kill": 4367, - "killa": 41355, - "killarney": 48813, - "killed": 3733, - "killer": 28230, - "killer": 6613, - "killers": 17614, - "killin": 25903, - "killing": 37977, - "killing": 5923, - "killings": 24918, - "kills": 9795, - "kiln": 44150, - "kilo": 39281, - "kilom": 26285, - "kilometers": 39192, - "kilometres": 43278, - "kilt": 49319, - "kim": 4639, - "kim": 4606, - "kimber": 16796, - "kimberley": 39859, - "kimberly": 27465, - "kimchi": 41027, - "kimi": 31536, - "kimkardashian": 35400, - "kimmel": 27820, - "kimono": 40024, - "kin": 1442, - "kin": 2667, - "kina": 28518, - "kind": 7204, - "kind": 3044, - "kinda": 6612, - "kinder": 12711, - "kinder": 24159, - "kindergarten": 16749, - "kindle": 24704, - "kindle": 10746, - "kindleunlimited": 32164, - "kindly": 13952, - "kindness": 45112, - "kindness": 10614, - "kinds": 14879, - "kine": 17607, - "kineni": 49080, - "kinetic": 37699, - "king": 2365, - "king": 674, - "kingdom": 21870, - "kingdom": 7364, - "kingdomhearts": 48570, - "kingdoms": 43890, - "kingfisher": 34330, - "kingjames": 33153, - "kingly": 33642, - "kingof": 27878, - "kings": 18590, - "kings": 4232, - "kingsley": 41807, - "kingston": 40736, - "kingston": 15393, - "kini": 41644, - "kinky": 37006, - "kinney": 37233, - "kino": 39000, - "kins": 31060, - "kins": 4386, - "kinson": 12095, - "kio": 28210, - "kio": 39401, - "kiosk": 39146, - "kip": 27636, - "kip": 15986, - "kipp": 43329, - "kir": 3476, - "kir": 32949, - "kira": 33038, - "kiran": 43234, - "kiran": 36603, - "kirby": 17065, - "kiri": 34170, - "kiri": 45826, - "kirk": 10639, - "kirk": 11508, - "kirkland": 43061, - "kiro": 39749, - "kirstel": 46483, - "kirsten": 31813, - "kirsty": 37787, - "kis": 3199, - "kis": 22796, - "kish": 25662, - "kiss": 43757, - "kiss": 5946, - "kissed": 22561, - "kisses": 47876, - "kisses": 11220, - "kissing": 18637, - "kistan": 29580, - "kit": 4566, - "kit": 4274, - "kita": 29961, - "kitch": 3850, - "kitchen": 18131, - "kitchen": 4485, - "kitchener": 34428, - "kitchens": 28301, - "kite": 47777, - "kite": 19867, - "kites": 45829, - "kits": 13730, - "kitt": 10840, - "kitten": 13063, - "kittens": 17216, - "kitties": 36013, - "kitty": 25067, - "kitty": 8417, - "kiwan": 38709, - "kiwanis": 46513, - "kiwi": 22440, - "kiwis": 48108, - "kiya": 41610, - "kj": 27385, - "kj": 28238, - "kja": 41048, - "kjv": 37387, - "kk": 4390, - "kk": 10849, - "kka": 19002, - "kke": 44239, - "kker": 32399, - "kki": 44672, - "kkk": 20073, - "kkkk": 15834, - "kkkk": 47160, - "kkkkkkkk": 31042, - "kko": 43965, - "kkr": 40855, - "kl": 8498, - "kl": 14134, - "kla": 11249, - "klan": 46935, - "klar": 41374, - "klaus": 31788, - "kle": 7612, - "kle": 7432, - "klein": 33475, - "klein": 17579, - "kley": 18594, - "kli": 31640, - "klin": 44809, - "klin": 41647, - "kline": 47580, - "kling": 40270, - "klm": 38859, - "klo": 15296, - "klopp": 26446, - "kltu": 25978, - "klu": 21852, - "kly": 45090, - "km": 29954, - "km": 4590, - "kman": 33312, - "kms": 24996, - "kn": 4825, - "kn": 23693, - "knapp": 33945, - "kne": 6358, - "knee": 9897, - "knees": 19115, - "kner": 31578, - "knew": 5009, - "kni": 6312, - "knick": 33286, - "knicks": 17657, - "knife": 44176, - "knife": 8960, - "knigh": 43099, - "knight": 17949, - "knight": 7355, - "knights": 10385, - "knit": 18745, - "knit": 14313, - "knitted": 28151, - "knitting": 18863, - "knives": 20910, - "kno": 1482, - "kno": 25362, - "knob": 29736, - "knobs": 47504, - "knock": 14195, - "knock": 11583, - "knocked": 15325, - "knocking": 20380, - "knockout": 22602, - "knocks": 24296, - "knoll": 43882, - "knot": 18412, - "knots": 32428, - "know": 4179, - "know": 1038, - "knowing": 9267, - "knowledge": 27864, - "knowledge": 5510, - "knowledgeable": 43391, - "knowles": 32631, - "known": 3102, - "knows": 4309, - "knowyour": 30773, - "knox": 18630, - "knox": 21833, - "knoxville": 23232, - "knu": 14812, - "knuck": 21333, - "knuckle": 42023, - "knuckles": 40127, - "knw": 40803, - "ko": 1313, - "ko": 2448, - "koala": 36654, - "kobe": 42644, - "kobe": 14470, - "kobo": 42390, - "koch": 25331, - "kochi": 36710, - "kodak": 30425, - "kodi": 46611, - "kof": 17528, - "koff": 47303, - "kofi": 40400, - "koh": 13379, - "koh": 31216, - "kohl": 48479, - "kohli": 17549, - "koi": 28150, - "kojima": 46419, - "kok": 32045, - "kok": 11225, - "koko": 42426, - "koko": 40003, - "kol": 7142, - "kol": 31023, - "kolkata": 18011, - "kom": 6686, - "kom": 24181, - "kombat": 29670, - "kombucha": 48615, - "komo": 31820, - "kon": 5743, - "kon": 29519, - "kona": 30203, - "kong": 31784, - "kong": 6506, - "konstant": 46583, - "koo": 12225, - "koo": 40472, - "kook": 16003, - "kool": 36755, - "kool": 26444, - "kop": 16623, - "kop": 38999, - "kor": 6428, - "kor": 24175, - "kore": 3919, - "korea": 5915, - "korean": 31949, - "korean": 8034, - "kori": 42842, - "korn": 45412, - "korn": 31492, - "kors": 34535, - "kos": 47438, - "kos": 22951, - "kosh": 45233, - "kosher": 36502, - "koso": 23892, - "kosovo": 28343, - "kot": 23323, - "kot": 20701, - "kota": 21735, - "koto": 40945, - "koto": 29977, - "kou": 18502, - "kou": 39614, - "kour": 34134, - "kov": 17733, - "kov": 15156, - "kova": 26185, - "koval": 47903, - "kovic": 16886, - "kovich": 44794, - "kovsky": 33384, - "kow": 29764, - "kow": 23919, - "kowski": 17649, - "koz": 29598, - "kp": 16174, - "kp": 16894, - "kpa": 38759, - "kph": 41138, - "kpk": 42094, - "kpmg": 38243, - "kpop": 29534, - "kpop": 15859, - "kprc": 47832, - "kprs": 46253, - "kr": 7309, - "kr": 14107, - "kra": 5762, - "kraft": 28057, - "kraja": 29016, - "kraken": 48408, - "krakow": 40033, - "kram": 19075, - "kramer": 27495, - "kran": 33243, - "kranti": 47969, - "krat": 30470, - "kre": 8362, - "kreme": 43140, - "kremlin": 33979, - "kri": 3679, - "kris": 35251, - "kris": 12261, - "krish": 11487, - "krishna": 15863, - "krishnan": 46535, - "krispy": 49292, - "krist": 16490, - "kristen": 28881, - "kristen": 16644, - "kristi": 26895, - "kristin": 35408, - "kristin": 26785, - "kristina": 33180, - "krit": 36265, - "kro": 16193, - "kroger": 36344, - "kron": 25999, - "kru": 10609, - "kruger": 32948, - "krun": 43084, - "kry": 13995, - "krystal": 36554, - "ks": 10470, - "ks": 662, - "ksa": 25439, - "ksh": 36594, - "kst": 17420, - "kstate": 48590, - "ksu": 43496, - "kswx": 36180, - "kt": 17238, - "kt": 7792, - "ktm": 33989, - "ktn": 42170, - "kton": 37848, - "kts": 48577, - "ktv": 36444, - "ku": 1836, - "ku": 4827, - "kuala": 30336, - "kubball": 48995, - "kuber": 41336, - "kubernetes": 45144, - "kubrick": 37032, - "kuch": 39394, - "kud": 40818, - "kudos": 14481, - "kul": 11325, - "kul": 31514, - "kum": 18086, - "kum": 28148, - "kuma": 43139, - "kuma": 33920, - "kumar": 22329, - "kumar": 7674, - "kumb": 31391, - "kun": 6849, - "kun": 21842, - "kung": 39656, - "kung": 22347, - "kunst": 37881, - "kup": 39023, - "kups": 27240, - "kur": 4862, - "kurdi": 23504, - "kurdish": 21644, - "kurdistan": 24459, - "kurds": 20888, - "kuri": 46375, - "kuro": 28239, - "kuro": 47826, - "kurt": 31903, - "kurt": 14527, - "kus": 27618, - "kus": 27505, - "kush": 22264, - "kush": 24594, - "kushner": 36716, - "kut": 17283, - "kut": 36965, - "kuwait": 19679, - "kuya": 34815, - "kuz": 33253, - "kv": 27594, - "kv": 34249, - "kw": 10072, - "kw": 18339, - "kwa": 32784, - "kwa": 48576, - "kwame": 46681, - "kwan": 37100, - "kwan": 39447, - "kwang": 40260, - "kwe": 26050, - "kwi": 35327, - "kwon": 36369, - "kx": 28190, - "kx": 46442, - "ky": 2018, - "ky": 2383, - "kya": 29142, - "kyc": 37758, - "kyiv": 36422, - "kyle": 15847, - "kyle": 7539, - "kylie": 28282, - "kylie": 17983, - "kyliejenner": 47232, - "kylo": 47704, - "kyo": 13150, - "kyo": 6281, - "kyoto": 23223, - "kyr": 26329, - "kyrgy": 40013, - "kyrgyz": 48346, - "kyrie": 21857, - "kyu": 28296, - "kyu": 25490, - "kyuhyun": 37229, - "kyung": 41058, - "kyungsoo": 30280, - "kywx": 39940, - "kz": 48743, - "kz": 36848, - "kzn": 38264, - "kö": 32437, - "l": 75, - "l": 331, - "la": 572, - "la": 1210, - "laa": 44642, - "lab": 3537, - "lab": 4352, - "labe": 25749, - "label": 12235, - "label": 9093, - "labeled": 32720, - "labeling": 36825, - "labelled": 45188, - "labels": 17413, - "lable": 31879, - "labor": 11201, - "labor": 7878, - "laboratories": 43421, - "laboratory": 17664, - "laborday": 39324, - "labou": 32700, - "labour": 19586, - "labour": 6019, - "labourdoorstep": 37008, - "labout": 35961, - "labra": 37067, - "labrador": 25409, - "labs": 12021, - "laby": 29131, - "labyrin": 31782, - "labyrinth": 35594, - "lac": 4477, - "lac": 16189, - "lace": 30012, - "lace": 5421, - "laced": 36800, - "laces": 23281, - "lacey": 31754, - "lach": 30558, - "lack": 24915, - "lack": 8069, - "lacking": 30080, - "lacks": 34388, - "laco": 45882, - "lacrosse": 12915, - "lacy": 38645, - "lad": 15991, - "lad": 10707, - "ladak": 42312, - "ladakh": 45295, - "ladder": 16637, - "ladders": 47125, - "lade": 26447, - "laden": 28634, - "ladi": 12934, - "ladies": 28932, - "ladies": 3431, - "lads": 9803, - "lady": 7275, - "lady": 2909, - "ladybird": 43389, - "ladybug": 40038, - "ladygaga": 21232, - "laf": 47555, - "lafayette": 22683, - "lag": 30932, - "lag": 20394, - "laga": 30161, - "lage": 24369, - "lager": 36811, - "lager": 22989, - "lagh": 37237, - "laghate": 47565, - "laghateparth": 48780, - "lagi": 39786, - "lago": 42698, - "lago": 31476, - "lagoon": 22753, - "lagos": 12728, - "lagun": 18500, - "laguna": 23609, - "lah": 27315, - "lah": 4299, - "lahat": 42164, - "lahore": 16733, - "lai": 23947, - "laid": 42560, - "laid": 11160, - "lain": 46958, - "lain": 17151, - "laine": 35860, - "lair": 31981, - "lais": 34923, - "lak": 12890, - "lak": 26793, - "lake": 6441, - "lake": 2553, - "lakedistrict": 26437, - "lakel": 26133, - "lakeland": 34306, - "laker": 45717, - "lakers": 13570, - "lakes": 9265, - "lakeshore": 42595, - "lakeside": 30915, - "lakewood": 36417, - "lakh": 21487, - "lakhs": 37985, - "lakings": 34289, - "lakota": 45510, - "laksh": 24937, - "lakshmi": 39682, - "lal": 12301, - "lal": 19430, - "lala": 33661, - "lali": 21726, - "laliga": 32383, - "lam": 2022, - "lam": 5704, - "lama": 26049, - "lamar": 28678, - "lamar": 17284, - "lamb": 19863, - "lamb": 10034, - "lambda": 36687, - "lambert": 14574, - "lambeth": 43410, - "lambo": 45464, - "lamborgh": 18709, - "lamborghini": 19462, - "lambs": 30361, - "lame": 23192, - "lamin": 22337, - "laminated": 49079, - "lamo": 41461, - "lamont": 46719, - "lamp": 26700, - "lamp": 10725, - "lampard": 39989, - "lamps": 23424, - "lan": 1193, - "lan": 4872, - "lana": 15406, - "lanapar": 47437, - "lanaparrilla": 47819, - "lanc": 11872, - "lanca": 15694, - "lancashire": 20939, - "lancaster": 16446, - "lance": 26025, - "lance": 11609, - "lancer": 38195, - "lancers": 46392, - "lancia": 48698, - "lancs": 47540, - "land": 1567, - "land": 973, - "lande": 36556, - "landed": 9873, - "lander": 37247, - "lander": 9666, - "landers": 20019, - "landfall": 38465, - "landfill": 34947, - "landia": 41384, - "landing": 8292, - "landings": 46104, - "landlord": 28938, - "landlords": 35283, - "landmark": 15208, - "landmarks": 30393, - "lando": 25463, - "lando": 7065, - "landon": 32748, - "landrover": 38125, - "landry": 36137, - "lands": 40223, - "lands": 2961, - "landsc": 4384, - "landscape": 21123, - "landscape": 5727, - "landscapephotography": 28125, - "landscapes": 15344, - "landscaping": 25642, - "landslide": 31954, - "lane": 25534, - "lane": 3980, - "lanes": 10345, - "laney": 38552, - "lang": 7969, - "lang": 8578, - "lange": 32021, - "langford": 45615, - "langley": 28595, - "langu": 4095, - "language": 46103, - "language": 4781, - "languages": 13527, - "lani": 22964, - "lanka": 16221, - "lankan": 40531, - "lannister": 49056, - "lans": 43550, - "lansing": 30805, - "lant": 44504, - "lanta": 44768, - "lantern": 17185, - "lanterns": 33676, - "lantic": 32601, - "lantic": 27678, - "lants": 38425, - "lanyard": 46808, - "lao": 32475, - "lao": 29521, - "laos": 34353, - "lap": 7213, - "lap": 8639, - "lapd": 32557, - "lapel": 47961, - "lapland": 43633, - "laps": 18711, - "lapse": 33365, - "laptop": 10464, - "laptops": 32189, - "laq": 45026, - "lar": 1592, - "lar": 1652, - "lara": 19435, - "lard": 40347, - "lare": 22415, - "laredo": 48427, - "large": 40234, - "large": 3638, - "largely": 21418, - "larger": 12567, - "largest": 4960, - "largo": 44161, - "lari": 34676, - "lark": 43164, - "lark": 23536, - "larkin": 34769, - "larry": 18642, - "larry": 8242, - "lars": 8669, - "larsen": 39721, - "larson": 27973, - "larvae": 44840, - "las": 8295, - "las": 2552, - "lasag": 31210, - "lasagna": 40683, - "lasalle": 43866, - "laser": 25607, - "laser": 9885, - "lasers": 37060, - "lash": 31995, - "lash": 18480, - "lashes": 21015, - "lass": 24203, - "lass": 18263, - "lassic": 39430, - "last": 10600, - "last": 952, - "lasted": 25711, - "lasting": 13434, - "lastnight": 30159, - "lasts": 20141, - "lasvegas": 17789, - "lat": 1591, - "lat": 28437, - "lata": 47114, - "latam": 40012, - "late": 13267, - "late": 2325, - "latel": 49035, - "lately": 11824, - "latepost": 48328, - "later": 24109, - "later": 2941, - "lateral": 26646, - "latest": 46805, - "latest": 2053, - "latex": 27520, - "lati": 16357, - "latimes": 43356, - "latin": 16695, - "latin": 9888, - "latina": 27936, - "latino": 45734, - "latino": 19470, - "latinos": 40233, - "lation": 6191, - "latitude": 37392, - "lative": 15719, - "lator": 9291, - "lators": 28278, - "latt": 33561, - "latte": 17697, - "latter": 26198, - "latvia": 30034, - "lau": 1853, - "lau": 23090, - "lauderdale": 24352, - "laugh": 4969, - "laugh": 6332, - "laughed": 16746, - "laughing": 8301, - "laughs": 14322, - "laughter": 10722, - "laun": 2944, - "launch": 31168, - "launch": 2904, - "launched": 6125, - "launcher": 35782, - "launches": 7023, - "launching": 8565, - "laundering": 34079, - "laundry": 14797, - "laur": 15256, - "laura": 17091, - "laura": 7763, - "laure": 16932, - "laureate": 25675, - "laurel": 43370, - "laurel": 19942, - "lauren": 10456, - "lauren": 7634, - "laurence": 29353, - "laurent": 23226, - "laurie": 20326, - "laus": 38895, - "laus": 28111, - "lause": 22269, - "laut": 47688, - "lav": 13767, - "lav": 26919, - "lava": 16765, - "laven": 15047, - "lavender": 16033, - "laver": 28188, - "lavish": 35443, - "law": 2874, - "law": 2606, - "lawful": 33845, - "lawler": 47862, - "lawless": 39468, - "lawmaker": 37169, - "lawmakers": 21190, - "lawn": 31675, - "lawn": 11024, - "lawrence": 32221, - "lawrence": 8820, - "laws": 7306, - "lawson": 22152, - "lawsuit": 14346, - "lawsuits": 44331, - "lawyer": 10552, - "lawyers": 14232, - "lax": 17750, - "lax": 10024, - "lay": 7205, - "lay": 6360, - "laye": 25995, - "layer": 12411, - "layered": 28520, - "layers": 15900, - "laying": 12333, - "layla": 45050, - "layne": 48721, - "layo": 21738, - "layoffs": 29019, - "layout": 17314, - "lays": 19546, - "layton": 38061, - "laz": 18806, - "lazar": 33075, - "lazarus": 49126, - "laze": 41559, - "lazer": 43735, - "lazio": 33010, - "lazy": 32614, - "lazy": 10753, - "lb": 21958, - "lb": 7422, - "lbc": 37694, - "lbj": 45683, - "lbloggers": 48695, - "lbs": 8912, - "lc": 9584, - "lc": 7225, - "lcd": 21356, - "lcfc": 25339, - "lcs": 32279, - "ld": 1431, - "ld": 730, - "lder": 6945, - "lders": 43221, - "ldn": 37050, - "ldn": 2517, - "ldnont": 25827, - "ldnt": 21690, - "ldr": 37279, - "lds": 31235, - "le": 534, - "le": 579, - "lea": 2246, - "lea": 13324, - "leach": 35527, - "lead": 1328, - "lead": 2784, - "leader": 14806, - "leader": 3236, - "leaderboard": 34519, - "leaders": 3546, - "leadership": 36876, - "leadership": 3652, - "leading": 3833, - "leads": 5335, - "leaf": 9377, - "leaf": 7232, - "leaflet": 38289, - "leaflets": 39014, - "leafs": 16688, - "leafy": 42616, - "leagu": 13317, - "league": 16635, - "league": 2313, - "leagueof": 26022, - "leagueoflegends": 31737, - "leagues": 19888, - "leah": 24350, - "leah": 19308, - "leak": 42900, - "leak": 15489, - "leaked": 14353, - "leaking": 34097, - "leaks": 15657, - "leam": 39606, - "lean": 12447, - "lean": 8208, - "leaning": 24411, - "leanne": 41448, - "leans": 9357, - "leap": 29129, - "leap": 15392, - "leaps": 48080, - "lear": 1146, - "lear": 27663, - "learn": 16959, - "learn": 1768, - "learned": 6048, - "learnenglish": 49040, - "learner": 33547, - "learners": 19572, - "learning": 22632, - "learning": 2378, - "learns": 17569, - "learnt": 18959, - "leary": 36051, - "lease": 49041, - "lease": 14394, - "leased": 48352, - "leash": 36192, - "leasing": 29160, - "least": 3651, - "leather": 21417, - "leather": 5862, - "leau": 26498, - "leav": 3198, - "leave": 37512, - "leave": 3258, - "leaves": 5579, - "leaving": 5216, - "leban": 9360, - "lebanese": 23819, - "lebanon": 11695, - "leblanc": 46381, - "lebo": 44184, - "lebron": 11971, - "lebu": 47030, - "lec": 944, - "lec": 35374, - "leche": 46197, - "lect": 45392, - "lection": 18252, - "lections": 30995, - "lecture": 6617, - "lecturer": 23795, - "lectures": 21118, - "led": 8767, - "led": 912, - "ledge": 23647, - "ledge": 4815, - "ledger": 26817, - "leds": 36763, - "lee": 6224, - "lee": 2592, - "leed": 16483, - "leed": 40206, - "leeds": 38900, - "leeds": 7420, - "leek": 34585, - "leeminho": 37831, - "leen": 35311, - "leen": 15940, - "leep": 48875, - "leep": 10191, - "lees": 29324, - "lees": 34056, - "lef": 9152, - "left": 33949, - "left": 1823, - "leftist": 35143, - "lefto": 17437, - "leftover": 26414, - "leftovers": 28481, - "lefty": 33935, - "leg": 1211, - "leg": 4924, - "lega": 38674, - "legacy": 44108, - "legacy": 6447, - "legal": 17743, - "legal": 3998, - "legalization": 40584, - "legalize": 42921, - "legally": 14152, - "legate": 46009, - "lege": 8065, - "legen": 6105, - "legend": 5480, - "legend": 3539, - "legendary": 6053, - "legendof": 47915, - "legends": 6396, - "leges": 15356, - "legg": 18474, - "legg": 32511, - "legged": 25830, - "leggings": 22895, - "leggo": 43441, - "legi": 11183, - "legion": 35503, - "legion": 14525, - "legis": 7200, - "legislat": 16486, - "legislation": 14143, - "legislative": 16755, - "legislators": 31572, - "legislature": 22309, - "legit": 12563, - "legitim": 17656, - "legitimate": 24491, - "lego": 28117, - "lego": 7849, - "legos": 45359, - "legs": 7072, - "leh": 19105, - "leh": 29298, - "lehead": 28090, - "lehigh": 34527, - "lehman": 46094, - "lei": 15828, - "lei": 21830, - "leia": 32723, - "leic": 35073, - "leica": 30206, - "leice": 10026, - "leicester": 28795, - "leicester": 11510, - "leicestershire": 45358, - "leigh": 14849, - "leigh": 9292, - "leighton": 30782, - "leila": 41342, - "lein": 20026, - "lein": 28551, - "leinster": 32242, - "leip": 36401, - "leipzig": 41860, - "leis": 13133, - "leisure": 15849, - "leit": 35446, - "leith": 34141, - "lek": 26626, - "lek": 36535, - "lel": 46623, - "lele": 26075, - "lem": 10213, - "lem": 8428, - "leman": 24478, - "lemans": 26694, - "lement": 9693, - "lements": 15833, - "lemme": 23318, - "lemon": 12272, - "lemon": 7184, - "lemonade": 18884, - "lemons": 29576, - "lemore": 41147, - "len": 3687, - "len": 2159, - "lena": 22038, - "lend": 45397, - "lend": 24987, - "lender": 44734, - "lenders": 42443, - "lending": 20209, - "lene": 17628, - "leness": 36551, - "leng": 7861, - "length": 10130, - "lengths": 31858, - "lengthy": 32624, - "lenin": 41760, - "lennon": 18360, - "lennox": 45748, - "lenny": 48448, - "lenny": 30124, - "leno": 45357, - "lenovo": 25886, - "lens": 8666, - "lenses": 21264, - "lent": 20943, - "lent": 22605, - "lentil": 41511, - "lentils": 44269, - "leo": 24008, - "leo": 8312, - "leon": 6581, - "leon": 9763, - "leonard": 43849, - "leonard": 13142, - "leonardo": 20282, - "leone": 22864, - "leop": 11234, - "leopard": 15931, - "leopards": 40996, - "leopold": 45501, - "lep": 48884, - "leppard": 41656, - "lepre": 45641, - "ler": 5587, - "ler": 1803, - "lero": 15067, - "lerosis": 35455, - "leroy": 32441, - "lers": 6247, - "lery": 38184, - "les": 4339, - "les": 840, - "lesbian": 17419, - "lesbians": 43182, - "lesh": 32282, - "lesley": 25506, - "lesli": 13649, - "leslie": 16244, - "lesn": 39568, - "lesnar": 42223, - "less": 3242, - "less": 1285, - "lesser": 20369, - "lessly": 13103, - "lessness": 24847, - "lesson": 7714, - "lessons": 7199, - "lest": 24372, - "lest": 6794, - "lester": 23157, - "lester": 24023, - "lestwe": 29726, - "lestweforget": 30273, - "let": 1898, - "let": 1094, - "leta": 34319, - "lete": 34078, - "letes": 6815, - "leth": 30022, - "leth": 42462, - "lethal": 21905, - "lethbridge": 48390, - "leti": 34176, - "letics": 14504, - "letit": 46423, - "leto": 32203, - "leton": 37674, - "leton": 7462, - "lets": 10448, - "lets": 3243, - "letsgo": 16967, - "letsgo": 29789, - "letstalk": 35591, - "lett": 22428, - "lett": 9778, - "lette": 41798, - "lette": 10301, - "letter": 15567, - "letter": 4861, - "lettering": 26382, - "letterman": 38447, - "letters": 9181, - "letting": 9510, - "letto": 35449, - "lettu": 17933, - "lettuce": 18573, - "leu": 15691, - "leuke": 31031, - "leukemia": 32097, - "leum": 21571, - "leur": 45806, - "lev": 17022, - "lev": 29950, - "levan": 42543, - "leve": 36271, - "level": 21682, - "level": 2931, - "leveled": 48453, - "levels": 6295, - "leven": 44792, - "leven": 34729, - "lever": 20178, - "lever": 23094, - "leverage": 24030, - "leveraging": 37948, - "levi": 25630, - "levi": 19113, - "leviathan": 41736, - "levin": 36949, - "levine": 26594, - "levit": 22715, - "levy": 17147, - "lew": 5063, - "lew": 25329, - "lewan": 48349, - "lewd": 45241, - "lewes": 40431, - "lewi": 19589, - "lewis": 22043, - "lewis": 6020, - "lewisham": 37385, - "lewisham": 47633, - "lewishamilton": 42960, - "lewood": 37951, - "lex": 6586, - "lex": 9658, - "lexa": 48259, - "lexi": 44231, - "lexi": 24679, - "lexington": 22308, - "lexus": 20694, - "ley": 2565, - "ley": 1066, - "leye": 37061, - "leys": 45609, - "leys": 14834, - "leyton": 46573, - "lez": 26442, - "lf": 33960, - "lf": 22078, - "lfc": 37826, - "lfc": 8267, - "lfw": 28514, - "lg": 4546, - "lg": 11368, - "lga": 39348, - "lgb": 25401, - "lgbt": 11743, - "lgbt": 9592, - "lgbti": 42730, - "lgbtq": 47625, - "lgbtq": 14939, - "lgm": 39389, - "lh": 27794, - "lh": 31159, - "lhp": 45092, - "lhs": 33170, - "li": 554, - "li": 4250, - "lia": 26118, - "lia": 6964, - "liability": 29139, - "liaison": 39294, - "liam": 5258, - "liam": 7167, - "lian": 18058, - "liance": 40864, - "liar": 16334, - "liars": 23863, - "lias": 46021, - "lib": 10249, - "lib": 13345, - "libby": 36832, - "libdems": 40869, - "liber": 3425, - "liberal": 48032, - "liberal": 9985, - "liberalism": 40018, - "liberals": 15981, - "liberated": 38690, - "liberation": 19507, - "liberia": 32208, - "libertarian": 35067, - "liberties": 48623, - "liberty": 23397, - "liberty": 8480, - "libr": 2856, - "libra": 43038, - "librarian": 25148, - "librarians": 37806, - "libraries": 14277, - "library": 25713, - "library": 3519, - "libre": 49210, - "libre": 31681, - "libs": 26401, - "liby": 36390, - "libya": 16417, - "libyan": 42319, - "lic": 2508, - "lic": 3376, - "lice": 45691, - "licen": 6706, - "licence": 20550, - "license": 10337, - "licensed": 18752, - "licenses": 36414, - "licensing": 24219, - "lich": 23979, - "lich": 25875, - "lick": 29197, - "lick": 17541, - "licking": 33013, - "licks": 42117, - "lics": 44552, - "lid": 39369, - "lid": 17678, - "lidge": 45558, - "lido": 35683, - "lids": 41609, - "lie": 6570, - "lie": 2538, - "lieb": 45387, - "liebe": 37749, - "lied": 6486, - "lief": 38428, - "lien": 45716, - "lier": 3626, - "liers": 19303, - "lies": 37236, - "lies": 3205, - "liest": 14020, - "liet": 41107, - "lieu": 20401, - "lieu": 35313, - "lieutenant": 22538, - "lif": 16456, - "life": 2666, - "life": 970, - "lifeat": 27801, - "lifeboat": 37404, - "lifecycle": 49171, - "lifein": 48447, - "lifeis": 24824, - "lifeisgood": 46433, - "lifel": 15025, - "lifeline": 38438, - "lifelong": 21358, - "lifeof": 36061, - "lifesaving": 48016, - "lifespan": 49257, - "lifestyle": 46512, - "lifestyle": 7037, - "lifestyles": 48521, - "lifetime": 48737, - "lifetime": 9107, - "liff": 34404, - "liffe": 38942, - "lift": 33146, - "lift": 6779, - "lifted": 16783, - "lifter": 38555, - "lifting": 10857, - "lifts": 18291, - "lig": 19915, - "lig": 38493, - "liga": 16802, - "ligam": 31077, - "ligament": 48705, - "ligan": 27962, - "ligans": 42133, - "ligh": 7510, - "light": 3885, - "light": 1395, - "lighted": 18404, - "lighten": 32717, - "lightening": 28170, - "lighter": 14102, - "lighthouse": 13717, - "lighting": 5799, - "lightly": 26878, - "lightning": 7756, - "lightroom": 41454, - "lights": 3073, - "lightweight": 16278, - "ligu": 42920, - "ligue": 29196, - "lik": 4831, - "lik": 18495, - "like": 9175, - "like": 789, - "liked": 7112, - "likefor": 48444, - "likeli": 40666, - "likelihood": 48158, - "likely": 5256, - "liken": 36084, - "likes": 4724, - "liking": 16810, - "lil": 6012, - "lil": 4461, - "lilac": 33647, - "lili": 26686, - "lili": 48411, - "lilies": 38110, - "lillard": 47016, - "lille": 38705, - "lilli": 40920, - "lillian": 41563, - "lilly": 47825, - "lilly": 21815, - "lily": 23803, - "lily": 10647, - "lim": 2377, - "lim": 17204, - "lima": 17589, - "limb": 27061, - "limb": 32363, - "limbo": 46179, - "limbs": 34886, - "lime": 17385, - "lime": 11193, - "limel": 48658, - "limer": 16915, - "limerick": 19501, - "limestone": 27272, - "limit": 18933, - "limit": 9973, - "limitations": 32730, - "limited": 49229, - "limited": 3472, - "limiting": 35812, - "limitless": 35833, - "limits": 11966, - "limo": 33166, - "limous": 47287, - "limpopo": 47175, - "lin": 1254, - "lin": 2424, - "lina": 26110, - "lincol": 6239, - "lincoln": 16957, - "lincoln": 7454, - "lincolnshire": 29014, - "lind": 6492, - "linda": 45410, - "linda": 10760, - "linden": 44076, - "linden": 34832, - "lindo": 38467, - "lindsay": 29846, - "lindsay": 16858, - "lindsey": 29475, - "lindsey": 18128, - "line": 3674, - "line": 1148, - "linear": 19816, - "linebacker": 29848, - "lined": 11842, - "lineman": 31501, - "linen": 20032, - "liner": 11618, - "liners": 24463, - "lines": 3418, - "liness": 28633, - "lineup": 7316, - "lineups": 33589, - "ling": 4851, - "ling": 1358, - "linger": 29593, - "lingerie": 18473, - "lingering": 46494, - "lings": 11390, - "lington": 27673, - "lington": 9002, - "lingu": 34449, - "lingui": 29942, - "linguistic": 46847, - "linguistics": 48651, - "lining": 11589, - "link": 18433, - "link": 2468, - "linke": 15088, - "linked": 11059, - "linkedin": 16302, - "linkin": 40287, - "linkin": 49291, - "linking": 23296, - "links": 8113, - "linn": 37431, - "lino": 41189, - "lino": 34995, - "lins": 6567, - "linson": 15401, - "linton": 36479, - "linus": 49303, - "linux": 14061, - "lio": 19395, - "lion": 8872, - "lion": 5567, - "lionel": 19441, - "lions": 7093, - "lip": 8630, - "lip": 8546, - "lipo": 38795, - "lipp": 38074, - "lips": 8847, - "lipse": 10351, - "lipstick": 15618, - "liqu": 6310, - "lique": 32680, - "liqueur": 43612, - "liqui": 33817, - "liquid": 18366, - "liquid": 10158, - "liquidity": 42812, - "liquor": 17828, - "lis": 7297, - "lis": 12749, - "lisa": 25236, - "lisa": 7424, - "lisam": 43072, - "lisboa": 40052, - "lisbon": 17708, - "lish": 12658, - "lish": 2354, - "lished": 22620, - "lisle": 21529, - "lism": 34390, - "liss": 45489, - "liss": 35433, - "lisse": 49309, - "list": 1734, - "list": 1998, - "lista": 37812, - "listed": 6457, - "listen": 17454, - "listen": 2672, - "listened": 15347, - "listener": 34819, - "listeners": 26901, - "listening": 3656, - "listens": 25912, - "lister": 45109, - "listing": 8145, - "listings": 21987, - "liston": 48041, - "lists": 12281, - "lit": 2213, - "lit": 4350, - "lita": 30100, - "lite": 29273, - "lite": 13694, - "litecoin": 39063, - "liter": 3085, - "liter": 34904, - "literacy": 12841, - "literal": 24269, - "literally": 4719, - "literary": 13586, - "literature": 11072, - "litfest": 40369, - "lith": 37005, - "lithium": 22794, - "litho": 31088, - "lithograph": 49022, - "lithu": 21045, - "lithuania": 27068, - "liti": 24292, - "litigation": 31769, - "lito": 47381, - "litre": 25786, - "litres": 39919, - "litt": 1216, - "litt": 47583, - "litter": 45431, - "litter": 17118, - "litters": 45300, - "little": 7024, - "little": 1274, - "littlemix": 29731, - "littlest": 48969, - "litur": 36830, - "litz": 30357, - "liu": 20466, - "liv": 13895, - "liv": 19901, - "livan": 12785, - "live": 3215, - "live": 1064, - "lived": 8867, - "livel": 17973, - "liveli": 26566, - "livelihood": 46497, - "livelihoods": 47716, - "lively": 19663, - "liveme": 35396, - "livemusic": 15688, - "liven": 41057, - "liveon": 22815, - "livepd": 38742, - "livepd": 31899, - "liver": 4755, - "liver": 12639, - "liverpool": 29778, - "liverpool": 5366, - "livery": 23248, - "lives": 3247, - "livesmatter": 20348, - "livestock": 22079, - "livestream": 16844, - "livetweet": 38546, - "livin": 28061, - "living": 10965, - "living": 2815, - "livingston": 30551, - "lix": 45068, - "liz": 8632, - "liz": 12242, - "liza": 28787, - "lizard": 17221, - "lizards": 41991, - "lizasober": 44487, - "lizasoberano": 45076, - "lizz": 34430, - "lizzie": 29530, - "lizzy": 32306, - "lj": 34211, - "lj": 32273, - "lju": 44562, - "lk": 39110, - "lk": 26596, - "lka": 21881, - "ll": 1657, - "ll": 865, - "lla": 15419, - "llama": 36679, - "llan": 17281, - "llan": 38728, - "lland": 31150, - "llc": 17161, - "lle": 26550, - "lle": 29732, - "llen": 41197, - "ller": 7722, - "llers": 26426, - "lli": 47015, - "lli": 13368, - "llis": 25518, - "lll": 27177, - "llll": 34874, - "llll": 43485, - "llo": 19293, - "lloy": 10092, - "lloyd": 33339, - "lloyd": 12400, - "llp": 28042, - "lls": 40535, - "lly": 26379, - "lm": 6981, - "lm": 15282, - "lma": 4493, - "lmao": 5121, - "lmaoo": 32623, - "lmaooo": 33362, - "lmaoooo": 45232, - "lmfa": 8928, - "lmfao": 11068, - "lmfaooo": 47658, - "lmp": 43575, - "lms": 30381, - "ln": 31644, - "ln": 18654, - "lng": 22339, - "lnp": 39679, - "lo": 549, - "lo": 2982, - "loa": 39678, - "load": 4515, - "load": 2834, - "loaded": 6756, - "loader": 28492, - "loading": 9975, - "loads": 8691, - "loaf": 26467, - "loaf": 18273, - "loan": 28431, - "loan": 8176, - "loans": 14206, - "lob": 11197, - "lob": 46606, - "lobal": 34574, - "lobb": 27698, - "lobby": 12449, - "lobbying": 36047, - "lobe": 46325, - "lobes": 24148, - "lobo": 39323, - "lobos": 36586, - "lobster": 13793, - "loc": 1378, - "loc": 25826, - "local": 9202, - "local": 2029, - "localized": 49399, - "locally": 15603, - "locals": 15041, - "locate": 20490, - "located": 5677, - "location": 4372, - "locations": 9580, - "loch": 20188, - "loch": 14101, - "lock": 7201, - "lock": 4381, - "lockdown": 35636, - "locke": 29698, - "locked": 8371, - "locker": 14053, - "lockhart": 48642, - "lockheed": 36637, - "locking": 19978, - "locks": 13212, - "lockscreen": 42439, - "loco": 25555, - "locom": 22798, - "locomo": 46147, - "locomotive": 30439, - "locu": 33635, - "locust": 46237, - "lod": 45650, - "lodge": 10504, - "loe": 30113, - "loe": 25484, - "loeb": 49334, - "lof": 15011, - "loff": 31008, - "loft": 35707, - "loft": 20049, - "loftus": 46689, - "log": 3239, - "log": 7383, - "logan": 20655, - "logan": 10569, - "logans": 40752, - "logg": 43002, - "logged": 31457, - "logger": 39089, - "logging": 24444, - "logi": 3177, - "logia": 48031, - "logic": 10670, - "logical": 4791, - "logically": 24782, - "logie": 33445, - "logies": 7378, - "login": 31121, - "logist": 7407, - "logistics": 14755, - "logists": 12233, - "logne": 19911, - "logo": 31480, - "logo": 5750, - "logos": 24879, - "logs": 22745, - "logue": 27785, - "logy": 22721, - "logy": 1659, - "loh": 49129, - "loh": 37983, - "loi": 35128, - "loid": 31408, - "loin": 21760, - "loire": 46040, - "lois": 27040, - "lok": 19908, - "lok": 23575, - "loki": 24435, - "lol": 10721, - "lol": 1824, - "lola": 19065, - "lolita": 42615, - "lolla": 45483, - "lolli": 27906, - "lollipop": 34605, - "lolly": 48264, - "lolo": 16895, - "lolo": 37481, - "lolol": 25280, - "lololol": 34738, - "lolz": 35260, - "lom": 9279, - "loma": 42889, - "lombar": 25493, - "lombard": 46461, - "lombardi": 44346, - "lomond": 48941, - "lon": 1235, - "lon": 6507, - "london": 6835, - "london": 1789, - "londonmarathon": 35018, - "lone": 22220, - "lone": 13576, - "lonel": 28872, - "loneliness": 30310, - "lonely": 34509, - "lonely": 12368, - "lonelyplanet": 44984, - "long": 4792, - "long": 1538, - "longe": 25793, - "longer": 5349, - "longest": 10731, - "longevity": 35354, - "longh": 20286, - "longhorn": 41047, - "longhorns": 38295, - "longing": 38482, - "longlive": 47840, - "longs": 43618, - "longtime": 19685, - "loo": 731, - "loo": 11804, - "look": 8874, - "look": 1012, - "lookalike": 38307, - "lookbook": 39184, - "looked": 4913, - "lookin": 11254, - "looking": 36898, - "looking": 1312, - "lookout": 18330, - "looks": 1606, - "lool": 33125, - "loom": 37440, - "loom": 17199, - "looming": 35384, - "looms": 30550, - "loon": 28222, - "loona": 48137, - "looney": 45315, - "looo": 20902, - "loool": 36016, - "looool": 47038, - "looooo": 31484, - "loop": 19606, - "loop": 10408, - "loops": 21625, - "loos": 45723, - "loose": 43815, - "loose": 9786, - "loot": 21518, - "lop": 36734, - "lop": 17066, - "lopes": 49269, - "lopez": 12982, - "lor": 2179, - "lor": 11335, - "lord": 18896, - "lord": 3486, - "lorde": 35483, - "lords": 14969, - "lore": 12880, - "lore": 27218, - "loren": 13602, - "loren": 33398, - "lorenzo": 21342, - "lores": 34510, - "loretta": 40863, - "lori": 20164, - "lori": 23095, - "lorna": 46316, - "lorraine": 27602, - "lorry": 31354, - "los": 32217, - "los": 3087, - "losange": 14037, - "losangeles": 14638, - "lose": 43318, - "lose": 5354, - "loser": 18168, - "losers": 23201, - "loses": 14263, - "losing": 7918, - "loss": 34761, - "loss": 4327, - "losses": 16909, - "lost": 14258, - "lost": 2624, - "lostdog": 48482, - "lot": 5132, - "lot": 1954, - "loth": 43625, - "lothian": 31360, - "lothing": 42058, - "lotion": 25260, - "lotr": 34165, - "lots": 2958, - "lott": 42854, - "lotta": 29125, - "lotte": 16535, - "lotte": 7274, - "lottery": 16975, - "lottie": 48517, - "lotto": 28265, - "lotus": 13824, - "lou": 2207, - "lou": 9745, - "loubout": 38369, - "loud": 22884, - "loud": 7464, - "louder": 25904, - "loudest": 49214, - "loudly": 39256, - "lough": 21927, - "lough": 28045, - "loughborough": 49153, - "loui": 42173, - "louie": 25790, - "louis": 8916, - "louis": 4459, - "louisa": 40011, - "louise": 32275, - "louise": 13076, - "louisi": 12187, - "louisiana": 12946, - "louisville": 13860, - "louisvuitton": 44911, - "loun": 6466, - "lounge": 7141, - "lounging": 45430, - "lour": 29383, - "lourdes": 45071, - "louvre": 36995, - "lov": 8923, - "lov": 21229, - "lova": 37394, - "lovable": 38565, - "lovato": 18960, - "love": 2618, - "love": 793, - "lovecraft": 42405, - "loved": 3249, - "lovefl": 38884, - "loveher": 38306, - "lovehim": 45733, - "loveis": 30931, - "loveisland": 30970, - "loveislove": 43603, - "loveit": 24764, - "lovel": 8999, - "lovelies": 31412, - "lovelondon": 46493, - "lovely": 33250, - "lovely": 2165, - "lovemy": 20041, - "lovemyjob": 40130, - "loven": 33754, - "lover": 28508, - "lover": 7168, - "lovers": 48416, - "lovers": 5973, - "loves": 37773, - "loves": 3925, - "lovethe": 33040, - "lovethem": 48298, - "lovett": 47095, - "lovewins": 47687, - "loveyou": 39226, - "loveyou": 25964, - "loveyour": 26462, - "lovin": 33442, - "lovin": 16354, - "loving": 29568, - "loving": 3721, - "lovingly": 44100, - "low": 1049, - "low": 1042, - "loway": 16104, - "lowe": 17910, - "lowed": 22733, - "lowell": 24458, - "lower": 32578, - "lower": 4909, - "lowered": 34968, - "lowering": 35261, - "lowers": 36398, - "lowes": 38515, - "lowest": 12098, - "lowing": 8283, - "lowkey": 29481, - "lowry": 27444, - "lows": 4406, - "lox": 41725, - "loy": 4519, - "loy": 23929, - "loyal": 13032, - "loyalty": 14686, - "loyd": 44212, - "loyed": 29279, - "loyment": 18307, - "loyola": 32569, - "lp": 22282, - "lp": 6392, - "lpc": 44092, - "lpg": 47905, - "lpga": 34295, - "lps": 32094, - "lr": 20572, - "lr": 7041, - "lrt": 32996, - "ls": 19051, - "ls": 1268, - "lsd": 43766, - "lse": 46127, - "lse": 43886, - "lsu": 35428, - "lsu": 15672, - "lt": 13642, - "lt": 3333, - "ltc": 27664, - "ltd": 6802, - "lte": 25202, - "lton": 14237, - "lu": 664, - "lu": 9657, - "lub": 22469, - "lub": 11836, - "lubbock": 37660, - "lubric": 40963, - "luc": 7013, - "luc": 28014, - "luca": 21053, - "lucas": 23425, - "lucas": 10225, - "lucci": 45849, - "luce": 46217, - "lucent": 41552, - "lucer": 36042, - "luch": 36646, - "lucha": 38449, - "luci": 8787, - "lucia": 22290, - "luciano": 46365, - "lucid": 44540, - "lucie": 39461, - "lucifer": 46224, - "lucifer": 27687, - "lucille": 47454, - "lucin": 27523, - "luck": 9647, - "luck": 2820, - "luckiest": 42469, - "luckily": 20100, - "lucknow": 29407, - "lucky": 20495, - "lucky": 4133, - "lucrative": 41485, - "lucy": 17262, - "lucy": 10120, - "lud": 14288, - "lude": 28755, - "ludo": 40141, - "ludwig": 30633, - "lue": 45199, - "luf": 25264, - "lufc": 17818, - "luffy": 39047, - "lufthan": 37769, - "lufthansa": 39145, - "lug": 45521, - "lugg": 19673, - "luggage": 20138, - "luhan": 20975, - "luigi": 28444, - "luis": 25231, - "luis": 11339, - "luiz": 39633, - "lujah": 31639, - "luk": 21652, - "luka": 34878, - "lukaku": 37177, - "lukas": 37941, - "luke": 11970, - "luke": 5652, - "lul": 20861, - "lulla": 37019, - "lullaby": 41676, - "lulu": 32052, - "lulu": 26935, - "lum": 18112, - "lum": 5997, - "lumb": 36231, - "lumber": 27421, - "lumber": 34692, - "lumi": 41437, - "lumia": 31912, - "lumin": 15867, - "luminous": 37913, - "lump": 38704, - "lumpur": 34411, - "lun": 3221, - "lun": 49390, - "luna": 14425, - "lunar": 16043, - "lunatic": 45874, - "lunch": 10954, - "lunch": 2772, - "luncheon": 15104, - "lunches": 29705, - "lunchtime": 14330, - "lund": 30975, - "lund": 20181, - "lunes": 35648, - "lung": 38479, - "lung": 16271, - "lungs": 27366, - "lup": 27413, - "lupita": 49352, - "lupus": 36017, - "lur": 14439, - "lure": 31376, - "lures": 46747, - "lurking": 29941, - "lus": 7158, - "lusci": 38004, - "luscious": 39935, - "lush": 40382, - "lush": 16263, - "lust": 42071, - "lust": 12662, - "lustre": 46673, - "luther": 21848, - "luther": 17208, - "lutheran": 27341, - "luton": 28288, - "luv": 24726, - "luv": 8502, - "lux": 3439, - "lux": 16704, - "luxe": 26373, - "luxemb": 21314, - "luxembour": 22712, - "luxembourg": 23949, - "luxu": 16112, - "luxurious": 17292, - "luxury": 12083, - "luxury": 5247, - "luxurytravel": 29010, - "luz": 41008, - "lv": 10862, - "lv": 11184, - "lvl": 31256, - "lw": 40515, - "lw": 35115, - "lx": 30789, - "ly": 1251, - "ly": 597, - "lydia": 24316, - "lyf": 43688, - "lyfe": 30787, - "lyft": 32944, - "lying": 7175, - "lyk": 46376, - "lyle": 36828, - "lym": 20087, - "lyme": 31167, - "lymph": 30073, - "lymphoma": 37648, - "lyn": 3957, - "lyn": 5054, - "lynch": 31586, - "lynch": 13560, - "lynd": 33416, - "lynda": 42959, - "lyndon": 48518, - "lynn": 25303, - "lynn": 10667, - "lynne": 26900, - "lynx": 28941, - "lyon": 17176, - "lyons": 29453, - "lyric": 24366, - "lyric": 21291, - "lyrical": 33358, - "lyricist": 49013, - "lyrics": 9551, - "lyrix": 46814, - "lys": 45054, - "lyte": 40059, - "lywood": 4012, - "lz": 30818, - "lé": 39641, - "m": 76, - "m": 332, - "ma": 577, - "ma": 1226, - "maa": 42774, - "maa": 21555, - "maan": 33668, - "maar": 48927, - "maas": 43332, - "mab": 35639, - "mabel": 47319, - "mable": 23001, - "mably": 40082, - "mabu": 44682, - "mac": 1961, - "mac": 4945, - "macar": 21558, - "macaroni": 41824, - "macarthur": 36785, - "macau": 43984, - "macau": 33370, - "macbeth": 36321, - "macbook": 20617, - "macdonald": 20315, - "mace": 44869, - "maced": 21102, - "macedonia": 27071, - "macfar": 45374, - "macfarlane": 48825, - "mach": 2637, - "mach": 35091, - "machado": 42318, - "mache": 43220, - "macher": 29330, - "machi": 41783, - "machin": 17972, - "machine": 11539, - "machine": 4169, - "machinelearning": 13621, - "machinery": 21858, - "machines": 11108, - "machining": 45562, - "macho": 43977, - "macht": 45225, - "macin": 36533, - "mack": 8590, - "mack": 12145, - "mackay": 32497, - "macken": 48057, - "mackenzie": 22351, - "mackerel": 35002, - "mackin": 26010, - "macklemore": 41758, - "macle": 33843, - "maclean": 47137, - "macleod": 43684, - "macmillan": 36364, - "macmillan": 35191, - "macon": 35818, - "macos": 45469, - "macqu": 38365, - "macquarie": 40858, - "macro": 20891, - "macro": 16626, - "macron": 24859, - "macs": 46548, - "macy": 17113, - "macys": 47652, - "mad": 2740, - "mad": 3843, - "mada": 37799, - "madagas": 24758, - "madagascar": 25744, - "madam": 33634, - "madam": 27538, - "madame": 23507, - "madd": 31717, - "madden": 19093, - "maddie": 39959, - "maddie": 18875, - "maddow": 32644, - "maddy": 31734, - "made": 5388, - "made": 1105, - "madein": 13670, - "madeira": 33810, - "madel": 34532, - "madele": 29831, - "madeleine": 33264, - "madeline": 33905, - "madewith": 28627, - "madewithunity": 43190, - "madhu": 23000, - "madhuri": 38346, - "madhuridixit": 43889, - "madhya": 48302, - "madi": 6527, - "madi": 27282, - "madison": 24798, - "madison": 8791, - "madmen": 45452, - "madness": 8755, - "madon": 44852, - "madonna": 14137, - "madra": 27416, - "madras": 42046, - "madre": 42130, - "madri": 5529, - "madrid": 5909, - "mads": 41201, - "madu": 34913, - "madurai": 49159, - "maduro": 32912, - "mae": 16898, - "mae": 17339, - "maer": 47088, - "maestro": 24140, - "mafi": 47164, - "mafia": 14890, - "mag": 1191, - "mag": 4508, - "maga": 8694, - "magaz": 2974, - "magazine": 3113, - "magazines": 22253, - "magdal": 29673, - "mage": 46568, - "mage": 10923, - "magee": 43872, - "magenta": 38091, - "magento": 42442, - "mages": 31059, - "maggi": 29611, - "maggie": 41443, - "maggie": 14524, - "maggio": 49087, - "magh": 45555, - "magi": 19270, - "magic": 13061, - "magic": 3778, - "magical": 36408, - "magical": 7823, - "magician": 26368, - "magin": 42678, - "maging": 41310, - "magn": 10290, - "magna": 34076, - "magne": 9921, - "magnesium": 36379, - "magnet": 18240, - "magnetic": 13838, - "magnets": 33030, - "magni": 24297, - "magnific": 9725, - "magnificent": 10724, - "magnitude": 22955, - "magno": 21184, - "magnolia": 27123, - "magnu": 45198, - "magnum": 23496, - "magnus": 26275, - "magpie": 45973, - "mags": 31021, - "maguire": 26470, - "mah": 7206, - "mah": 10801, - "maha": 12237, - "maha": 33983, - "mahal": 22301, - "mahan": 45191, - "mahar": 11635, - "maharaj": 38488, - "maharashtra": 19328, - "mahat": 32434, - "mahatma": 40530, - "mahe": 15756, - "maher": 29826, - "mahesh": 33448, - "mahesh": 22095, - "mahi": 32529, - "mahi": 38659, - "mahin": 24113, - "mahindra": 31285, - "mahmoud": 41361, - "mahog": 30804, - "mahogany": 33084, - "mahon": 45864, - "mahon": 20371, - "mahone": 26634, - "mai": 7138, - "mai": 14595, - "maia": 46585, - "maid": 23148, - "maid": 10226, - "maidan": 37346, - "maiden": 37011, - "maiden": 13809, - "maids": 27305, - "maidstone": 44395, - "mail": 10478, - "mail": 2614, - "mailbox": 31482, - "mailed": 42314, - "mailing": 26680, - "mailonline": 26021, - "mails": 45213, - "main": 3904, - "main": 2623, - "maine": 18639, - "maine": 7836, - "mained": 15609, - "mainedcm": 15845, - "mainland": 27629, - "mainly": 15280, - "mains": 33656, - "mainst": 42102, - "mainstream": 18034, - "maintain": 12954, - "maintained": 26665, - "maintaining": 21964, - "maintains": 38335, - "mainten": 9399, - "maintenance": 9610, - "mais": 28153, - "maisie": 47355, - "maison": 37065, - "maison": 27626, - "mait": 26387, - "maize": 35386, - "maj": 2948, - "maj": 28723, - "maja": 47498, - "maje": 9852, - "majestic": 15335, - "majesty": 21188, - "major": 8008, - "major": 3350, - "majority": 10508, - "majors": 23597, - "mak": 11271, - "mak": 19253, - "makar": 42242, - "makati": 39402, - "make": 3232, - "make": 1078, - "makeaw": 45859, - "makeinindia": 42739, - "makeit": 26308, - "maken": 47093, - "makeover": 17926, - "maker": 15196, - "maker": 4836, - "makers": 6577, - "makerspace": 42400, - "makes": 2088, - "makeshift": 43274, - "makeu": 41707, - "makeup": 26402, - "makeup": 5853, - "makeyourown": 34090, - "makeyourownlane": 34823, - "maki": 34514, - "makin": 43096, - "makin": 22407, - "making": 17976, - "making": 1665, - "makk": 39852, - "maknae": 44118, - "mako": 49061, - "mal": 1662, - "mal": 3796, - "mala": 28290, - "malade": 36928, - "malaga": 35395, - "malala": 41137, - "malam": 48956, - "malaria": 24929, - "malawi": 23405, - "malay": 5323, - "malay": 42430, - "malayalam": 34860, - "malaysi": 39668, - "malaysia": 8146, - "malaysian": 21136, - "malbec": 47741, - "malcol": 12645, - "malcolm": 14139, - "maldives": 16795, - "male": 11326, - "male": 2801, - "males": 14426, - "malhotra": 28866, - "mali": 6701, - "mali": 22669, - "malia": 46714, - "malibu": 21723, - "malicious": 42147, - "malign": 41122, - "malik": 11394, - "mall": 10984, - "mall": 6220, - "mallorca": 28082, - "mallory": 38968, - "malls": 36447, - "malm": 44071, - "malnutrition": 41153, - "malo": 43518, - "malone": 19852, - "maloney": 45897, - "mals": 25370, - "malt": 21688, - "malta": 16989, - "maltese": 39838, - "malvern": 39356, - "malware": 24153, - "mam": 4404, - "mam": 17778, - "mama": 7133, - "mamamoo": 36012, - "mamas": 42395, - "mamba": 44189, - "mament": 45690, - "mami": 43858, - "mamma": 34893, - "mammal": 33385, - "mammals": 31987, - "mammoth": 28022, - "man": 723, - "man": 786, - "mana": 29467, - "mana": 15837, - "manafort": 40108, - "manag": 1830, - "manage": 9770, - "managed": 7928, - "management": 3319, - "manager": 3898, - "managerial": 44261, - "managers": 12853, - "manages": 29699, - "managing": 10892, - "manas": 44188, - "manatee": 46558, - "mance": 2324, - "manchester": 24424, - "manchester": 4651, - "mancini": 47681, - "mancity": 31538, - "mancrush": 36945, - "mancrushmonday": 39307, - "mand": 4325, - "mand": 27244, - "mandala": 41106, - "mandarin": 26455, - "mandate": 26228, - "mandatory": 19934, - "mandel": 34960, - "mandela": 16280, - "mandi": 38961, - "mandir": 35815, - "mando": 34006, - "mands": 12340, - "mandu": 31440, - "mandy": 41505, - "mandy": 24302, - "mane": 44471, - "mane": 16044, - "maneu": 33216, - "mang": 25616, - "mang": 31096, - "manga": 11873, - "mangal": 43027, - "manger": 48251, - "mango": 43831, - "mango": 13962, - "mangrove": 47180, - "manhatt": 10152, - "manhattan": 10961, - "mani": 5654, - "mani": 10718, - "mania": 8435, - "maniac": 31814, - "maniacs": 41444, - "manian": 40077, - "manic": 23017, - "manic": 37825, - "manicure": 33637, - "manife": 14379, - "manifest": 34422, - "manifestation": 48348, - "manifesto": 20907, - "manil": 38827, - "manila": 10969, - "manipu": 40261, - "manipul": 19237, - "manipulation": 30277, - "manipur": 47757, - "manish": 41759, - "manish": 44720, - "manit": 15693, - "manitoba": 20342, - "manjaro": 41489, - "mankind": 24155, - "manly": 25194, - "mann": 19396, - "mann": 4783, - "manne": 30160, - "manned": 26139, - "mannequin": 43388, - "manner": 20700, - "manners": 31693, - "manning": 15996, - "manny": 37054, - "manny": 20933, - "mano": 15753, - "mano": 24016, - "manoj": 41146, - "manor": 41830, - "manor": 13614, - "mans": 28422, - "mans": 7746, - "mansfield": 25543, - "manship": 15460, - "mansion": 13404, - "manslaughter": 48632, - "manson": 26715, - "mant": 25122, - "mant": 27037, - "manta": 41431, - "mantis": 39946, - "mantle": 22159, - "mantra": 25162, - "manu": 3404, - "manu": 25799, - "manual": 12268, - "manuel": 29171, - "manuel": 9567, - "manufac": 5105, - "manufacture": 27741, - "manufactured": 24010, - "manufacturer": 15668, - "manufacturers": 18763, - "manufacturing": 8386, - "manure": 47907, - "manus": 28181, - "manuscript": 24365, - "manuscripts": 40765, - "manutd": 20994, - "many": 28484, - "many": 1346, - "manziel": 40637, - "mao": 47447, - "mao": 25605, - "maori": 43400, - "map": 25180, - "map": 3923, - "maple": 21980, - "maple": 10570, - "mapleleafs": 41257, - "mapoli": 28768, - "mapp": 36894, - "mapped": 41596, - "mapping": 15231, - "maps": 8765, - "mapu": 42082, - "mar": 675, - "mar": 3091, - "mara": 15655, - "marais": 47913, - "maran": 44732, - "marath": 16274, - "marathi": 34102, - "marathon": 40764, - "marathon": 5910, - "marau": 38475, - "marbella": 36182, - "marble": 45429, - "marble": 13071, - "marbles": 42931, - "marc": 14054, - "marc": 9075, - "marca": 38242, - "marcel": 17726, - "marcel": 24652, - "marcelo": 35939, - "march": 10638, - "march": 2227, - "marche": 36173, - "marched": 37976, - "marches": 38249, - "marchfor": 31721, - "marching": 15082, - "marchmadness": 28555, - "marci": 36698, - "marcia": 41075, - "marck": 47733, - "marco": 24719, - "marco": 10924, - "marcor": 39945, - "marcorubio": 41143, - "marcos": 21696, - "marcu": 20760, - "marcus": 48955, - "marcus": 9895, - "mardi": 39728, - "mardi": 29229, - "mardigras": 43343, - "mare": 26512, - "mare": 8870, - "mares": 19724, - "marg": 44014, - "margar": 16838, - "margare": 10232, - "margaret": 12185, - "margarita": 25958, - "margaritas": 42679, - "margate": 37428, - "margin": 19464, - "margin": 21357, - "marginal": 38320, - "margins": 33763, - "margot": 37144, - "mari": 2603, - "mari": 19322, - "maria": 41109, - "maria": 6595, - "mariachi": 44299, - "mariah": 31214, - "mariah": 24789, - "mariahcarey": 36538, - "marian": 41129, - "marian": 24677, - "mariana": 44224, - "marianne": 32214, - "mariano": 43988, - "marie": 20657, - "marie": 7864, - "marietta": 46634, - "marig": 41002, - "marijuana": 9864, - "maril": 14611, - "marilyn": 38959, - "marilyn": 18489, - "marin": 8910, - "marin": 23992, - "marina": 12060, - "marinated": 33406, - "marine": 20674, - "marine": 5746, - "mariner": 39972, - "mariners": 19086, - "marines": 15018, - "marino": 30878, - "mario": 39176, - "mario": 7600, - "marion": 37765, - "marion": 18397, - "maris": 21512, - "maris": 33093, - "marisa": 42938, - "mariska": 44703, - "marissa": 31219, - "marist": 48223, - "mariti": 13124, - "maritime": 14331, - "marj": 38639, - "mark": 3805, - "mark": 2110, - "marke": 2399, - "marked": 12360, - "marker": 18170, - "markers": 23664, - "market": 11614, - "market": 2196, - "marketer": 33482, - "marketers": 23682, - "marketing": 19535, - "marketing": 2905, - "marketplace": 18241, - "markets": 7292, - "markham": 39817, - "marking": 14705, - "markings": 41046, - "markle": 32672, - "marko": 38338, - "marks": 5466, - "markus": 33725, - "marl": 24922, - "marlborough": 43515, - "marlene": 45117, - "marley": 16504, - "marlin": 34275, - "marlins": 23309, - "marlon": 32995, - "marmalade": 39068, - "marnock": 48305, - "maro": 27029, - "maroon": 20501, - "marqu": 20704, - "marque": 13012, - "marquee": 27725, - "marquette": 37624, - "marquez": 27317, - "marquis": 33530, - "marr": 32871, - "marrake": 37125, - "marrakech": 39006, - "marri": 3839, - "marriage": 38047, - "marriage": 7040, - "marriages": 38190, - "married": 6791, - "marries": 46283, - "marriott": 19211, - "marrow": 31030, - "marry": 13288, - "marrying": 40507, - "mars": 41469, - "mars": 7496, - "marsden": 43344, - "marse": 26577, - "marseille": 30365, - "marsh": 9237, - "marsh": 13505, - "marsha": 21491, - "marshal": 26608, - "marshall": 30939, - "marshall": 9811, - "marshals": 44175, - "marshes": 43450, - "marshmal": 21069, - "marshmallow": 28530, - "marshmallows": 39471, - "mart": 2348, - "mart": 7772, - "marta": 32858, - "martens": 43211, - "marth": 34493, - "martha": 16427, - "marti": 20577, - "martial": 17088, - "martialarts": 35895, - "martian": 30214, - "martin": 6929, - "martin": 3690, - "martina": 34393, - "martinez": 13913, - "marting": 47570, - "martini": 22199, - "martino": 41675, - "martins": 30569, - "marty": 9926, - "marty": 17169, - "martyn": 44075, - "martyr": 36155, - "martyr": 26067, - "martyrdom": 43110, - "martyred": 39114, - "martyrs": 24707, - "maru": 37413, - "maru": 31838, - "marvel": 13835, - "marvel": 5996, - "marvelcomics": 46897, - "marvell": 26576, - "marvellous": 28402, - "marvelous": 25487, - "marvin": 19675, - "marx": 30559, - "marx": 26001, - "marxist": 45205, - "mary": 5146, - "mary": 2676, - "maryam": 33636, - "maryam": 36393, - "maryland": 11379, - "marys": 40905, - "marys": 40228, - "mas": 5226, - "mas": 1412, - "masa": 24995, - "masa": 41868, - "masala": 31483, - "masc": 23564, - "mascar": 46984, - "mascara": 31635, - "mascot": 13983, - "mascots": 43266, - "mascul": 25589, - "masculine": 48269, - "masculinity": 40465, - "mase": 49128, - "maser": 25798, - "maserati": 30442, - "mash": 12317, - "mash": 15680, - "mashable": 41026, - "mashed": 27395, - "mashup": 27079, - "masi": 35965, - "masjid": 31420, - "mask": 19262, - "mask": 8306, - "masked": 25757, - "masking": 47046, - "masks": 19055, - "maslow": 44359, - "mason": 17424, - "mason": 9699, - "masonic": 36491, - "masonry": 30764, - "masons": 37195, - "masqu": 26593, - "masquer": 29604, - "masquerade": 36944, - "mass": 4636, - "mass": 4854, - "massach": 14484, - "massachuse": 14577, - "massachusetts": 14756, - "massacre": 14696, - "massage": 13055, - "masse": 41735, - "masses": 22978, - "massey": 29868, - "massi": 17239, - "massimo": 45821, - "massive": 4818, - "massively": 34297, - "mast": 45916, - "mast": 27920, - "master": 4534, - "master": 3498, - "mastercard": 40542, - "masterchef": 34809, - "masterclass": 17529, - "mastered": 32616, - "masterful": 46823, - "mastering": 28326, - "mastermind": 34029, - "masterpiece": 12066, - "masterpieces": 37596, - "masters": 6913, - "mastery": 34800, - "mastiff": 42311, - "maswar": 47887, - "mat": 905, - "mat": 9063, - "mata": 17270, - "match": 7733, - "match": 2439, - "matcha": 32433, - "matchday": 15947, - "matched": 17792, - "matches": 8609, - "matching": 11840, - "matchup": 19355, - "matchups": 49162, - "mate": 6137, - "mate": 2936, - "mated": 33813, - "mateo": 34991, - "mater": 23724, - "materi": 7084, - "material": 7118, - "materials": 8161, - "maternal": 26131, - "maternity": 23894, - "mates": 5817, - "math": 13277, - "math": 6025, - "mathe": 8725, - "mathemat": 11901, - "mathematical": 25609, - "mathematician": 41036, - "mathematics": 20113, - "mathew": 36333, - "mathews": 37120, - "mathi": 23014, - "mathieu": 40417, - "maths": 14763, - "mati": 12716, - "mati": 32268, - "matic": 36859, - "matic": 7900, - "matically": 38282, - "matics": 23634, - "matil": 26751, - "matilda": 36308, - "matin": 44849, - "matinee": 38525, - "mating": 34346, - "mation": 11701, - "matisse": 43446, - "mato": 13127, - "matologist": 48842, - "matology": 27940, - "matory": 25519, - "matri": 27041, - "matrix": 18078, - "mats": 22259, - "matsu": 30242, - "matt": 7972, - "matt": 3972, - "mattb": 42791, - "matte": 31237, - "matte": 19771, - "mattel": 35365, - "matteo": 33120, - "matter": 30471, - "matter": 3828, - "matters": 5708, - "matth": 41846, - "matthe": 5116, - "matthew": 17588, - "matthew": 7008, - "matthews": 16739, - "matthi": 29853, - "matthias": 45104, - "matti": 39840, - "mattress": 23438, - "matty": 31233, - "matty": 29176, - "matu": 40616, - "matur": 22897, - "mature": 14417, - "maturity": 28047, - "mau": 8134, - "mau": 23033, - "maui": 20463, - "maul": 30725, - "maur": 10574, - "maure": 25191, - "maureen": 31723, - "maurice": 20200, - "mauricio": 39066, - "mauriti": 28406, - "mauritius": 29305, - "mauro": 41691, - "mav": 25697, - "maver": 16700, - "maverick": 27425, - "mavericks": 30092, - "mavs": 30665, - "maw": 39351, - "maw": 42271, - "mawards": 37682, - "max": 4898, - "max": 3902, - "maxi": 8554, - "maxi": 23266, - "maxim": 19892, - "maxim": 38574, - "maximize": 28673, - "maximum": 13162, - "maximus": 44312, - "maxine": 38468, - "maxwell": 19611, - "maxx": 37466, - "may": 1686, - "may": 1270, - "maya": 45783, - "maya": 12987, - "mayan": 37952, - "maybe": 3746, - "mayday": 29957, - "mayer": 21196, - "mayfair": 35171, - "mayfield": 33933, - "mayhem": 21502, - "maymay": 26600, - "maymay": 33853, - "maymayentrata": 30480, - "maynard": 32487, - "mayne": 35771, - "mayo": 22449, - "mayo": 11280, - "mayor": 15429, - "mayor": 4676, - "mayoral": 28983, - "mayorof": 43533, - "mayors": 28501, - "mays": 35445, - "maythe": 42281, - "mayward": 45751, - "mayward": 23519, - "mayweather": 22774, - "maz": 9177, - "maz": 36215, - "mazda": 18506, - "maze": 21988, - "mazz": 29439, - "mañ": 37059, - "mañana": 39354, - "mb": 758, - "mb": 3996, - "mba": 8329, - "mban": 46685, - "mbar": 44452, - "mbb": 10736, - "mbc": 20137, - "mbe": 38395, - "mbe": 27004, - "mber": 5467, - "mber": 1034, - "mberg": 26372, - "mbers": 5443, - "mbi": 45347, - "mble": 20310, - "mble": 4756, - "mbles": 28693, - "mbling": 28604, - "mbo": 25733, - "mbo": 11319, - "mbps": 44896, - "mbs": 10370, - "mbta": 38979, - "mbu": 42228, - "mbuhari": 36752, - "mc": 1278, - "mc": 4126, - "mca": 40570, - "mca": 14635, - "mcal": 28663, - "mcar": 43776, - "mcbride": 35080, - "mcc": 21192, - "mccabe": 37628, - "mccaf": 47385, - "mccain": 20397, - "mccall": 34844, - "mccann": 27140, - "mccar": 9570, - "mccarthy": 16974, - "mccartney": 19958, - "mccl": 24709, - "mccla": 43672, - "mccle": 40139, - "mcclure": 44945, - "mcco": 46152, - "mccon": 32638, - "mccor": 23057, - "mccormack": 45164, - "mccormick": 39088, - "mccoy": 20218, - "mccr": 41996, - "mccre": 25393, - "mccul": 38833, - "mccull": 41782, - "mcd": 28930, - "mcder": 27355, - "mcdermott": 34504, - "mcdon": 12171, - "mcdonald": 10741, - "mcdonalds": 17674, - "mcdonnell": 34360, - "mcdowell": 34119, - "mce": 26864, - "mcel": 28752, - "mcen": 47423, - "mcfad": 36976, - "mcfadden": 42105, - "mcfar": 29020, - "mcfarlane": 47174, - "mcfc": 16416, - "mcfly": 38211, - "mcg": 42507, - "mcg": 27995, - "mcgee": 29223, - "mcgill": 46524, - "mcgill": 35511, - "mcgin": 29596, - "mcgowan": 40462, - "mcgr": 25169, - "mcgra": 29367, - "mcgrath": 28759, - "mcgraw": 40950, - "mcgregor": 19642, - "mcgu": 34294, - "mcguinness": 45299, - "mcguire": 32635, - "mci": 46212, - "mci": 45491, - "mcil": 30481, - "mcin": 18770, - "mcintosh": 45353, - "mcintyre": 33369, - "mck": 6781, - "mckay": 33611, - "mcke": 27424, - "mckee": 43529, - "mcken": 42619, - "mckenna": 24924, - "mckenzie": 25502, - "mckin": 15437, - "mckinley": 39891, - "mckinney": 33554, - "mckinnon": 48736, - "mckinsey": 48143, - "mcl": 49021, - "mcla": 12565, - "mclaren": 37381, - "mclaren": 16789, - "mclau": 32285, - "mclaughlin": 35346, - "mcle": 25299, - "mclean": 28666, - "mcleod": 40259, - "mcm": 12251, - "mcmahon": 24026, - "mcmaster": 42703, - "mcmillan": 45603, - "mcn": 42919, - "mcnam": 32682, - "mcnamara": 37506, - "mcne": 42545, - "mco": 33723, - "mcqueen": 22544, - "mcr": 29884, - "mcr": 16966, - "mcs": 27020, - "mcu": 30403, - "md": 8637, - "md": 4732, - "mdc": 38773, - "mdc": 41761, - "mds": 48746, - "mdt": 40822, - "me": 613, - "me": 614, - "mea": 46045, - "mea": 17711, - "mead": 12134, - "mead": 21567, - "meade": 37218, - "meado": 16402, - "meadow": 25213, - "meadow": 17195, - "meadows": 17178, - "meal": 29662, - "meal": 5478, - "meals": 11229, - "mean": 4189, - "mean": 3450, - "meand": 48015, - "meaning": 14586, - "meaning": 8342, - "meaningful": 17480, - "meaningless": 48932, - "meanings": 45814, - "means": 3494, - "meant": 8674, - "meantime": 27499, - "meanwhile": 9650, - "meas": 5867, - "measles": 38230, - "measurable": 48010, - "measure": 15261, - "measure": 10579, - "measured": 23154, - "measurement": 20973, - "measurements": 29894, - "measures": 11936, - "measuring": 18064, - "meat": 10805, - "meat": 6480, - "meatball": 43642, - "meatballs": 29233, - "meath": 37920, - "meatless": 48085, - "meats": 29558, - "mec": 27432, - "mecca": 36095, - "mech": 38305, - "mechan": 6715, - "mechanic": 24582, - "mechanical": 14467, - "mechanics": 20536, - "mechanism": 22576, - "mechanisms": 28610, - "meck": 41908, - "med": 1948, - "med": 2177, - "meda": 33614, - "medal": 29714, - "medal": 6974, - "medalist": 21040, - "medalists": 43397, - "medalli": 31349, - "medallion": 43469, - "medallist": 41472, - "medals": 14710, - "mede": 48225, - "meded": 27627, - "medi": 1436, - "media": 22064, - "media": 1895, - "mediac": 37490, - "median": 30491, - "mediation": 42829, - "medic": 3602, - "medic": 35441, - "medicaid": 25421, - "medical": 18432, - "medical": 4116, - "medicare": 23710, - "medication": 23771, - "medications": 37181, - "medicinal": 28772, - "medicine": 5616, - "medicines": 26541, - "medics": 46688, - "medieval": 38956, - "medieval": 10789, - "medina": 27281, - "mediocre": 41170, - "medit": 19130, - "meditate": 38039, - "meditation": 10827, - "mediter": 14194, - "mediterran": 14358, - "mediterranean": 15327, - "medium": 8675, - "medley": 24793, - "meds": 25075, - "medtech": 42044, - "medusa": 44216, - "medway": 42286, - "mee": 1725, - "mee": 14075, - "meek": 28935, - "meen": 37940, - "meen": 46515, - "meer": 26714, - "meer": 27555, - "meet": 5714, - "meet": 1633, - "meeting": 48566, - "meeting": 2071, - "meetings": 9980, - "meets": 5972, - "meetthe": 27575, - "meetup": 15430, - "meg": 11500, - "meg": 16186, - "mega": 15979, - "mega": 9068, - "megab": 38103, - "megadeth": 46741, - "megal": 37650, - "megam": 26073, - "megan": 19127, - "megan": 11503, - "megap": 33624, - "megat": 35581, - "megh": 31192, - "meghan": 39939, - "meghan": 18261, - "meh": 10512, - "meh": 22211, - "mehta": 25031, - "mei": 22564, - "mei": 25198, - "meier": 29812, - "mein": 28857, - "mein": 21466, - "meister": 28407, - "mek": 44645, - "mel": 1902, - "mel": 6834, - "mela": 35032, - "melan": 22261, - "melanch": 44818, - "melancholy": 47821, - "melani": 34031, - "melania": 32796, - "melanie": 22153, - "melanoma": 40862, - "melb": 47007, - "melb": 28980, - "melbourne": 28387, - "melbourne": 6995, - "melee": 45108, - "meli": 28885, - "melinda": 46303, - "melis": 18913, - "melissa": 41866, - "melissa": 13030, - "mell": 22531, - "mell": 41583, - "mello": 47594, - "mellon": 45162, - "mellow": 32034, - "melo": 10354, - "melo": 22374, - "melodic": 41877, - "melodies": 38412, - "melody": 19119, - "melon": 12146, - "melrose": 36296, - "melt": 22209, - "melt": 15957, - "meltdown": 30613, - "melted": 23037, - "melting": 19247, - "melton": 46062, - "melts": 31446, - "melville": 46030, - "melvin": 31544, - "mely": 6373, - "mem": 4937, - "mem": 34944, - "memb": 2114, - "member": 29566, - "member": 1640, - "members": 2567, - "membership": 11562, - "membrane": 34088, - "meme": 35157, - "meme": 9169, - "memes": 12828, - "memo": 15967, - "memo": 19334, - "memoir": 20532, - "memoirs": 45311, - "memor": 1858, - "memorab": 26271, - "memorabilia": 27488, - "memorable": 13172, - "memorial": 16285, - "memorial": 4642, - "memorialday": 21598, - "memoriam": 48191, - "memories": 4304, - "memory": 44766, - "memory": 5137, - "memph": 10285, - "memphis": 38432, - "memphis": 11298, - "men": 1552, - "men": 1656, - "mena": 23052, - "menace": 29949, - "mend": 8151, - "mend": 46927, - "mendel": 49268, - "mendes": 18060, - "mendez": 48275, - "mendo": 19327, - "mendoza": 23680, - "meng": 37102, - "meng": 37450, - "mening": 46428, - "menon": 38255, - "menopau": 34974, - "menopause": 46026, - "mens": 16924, - "mens": 10495, - "mensfashion": 27578, - "menstru": 28345, - "menstrual": 40915, - "menswear": 18803, - "ment": 1585, - "ment": 777, - "mental": 8611, - "mental": 3448, - "mentalhealth": 20593, - "mentalhealth": 13022, - "mentality": 26647, - "mentally": 14307, - "mentary": 4468, - "mentation": 9512, - "mentday": 40397, - "mente": 40302, - "mente": 36396, - "mented": 9249, - "menting": 14471, - "mention": 43881, - "mention": 6762, - "mentioned": 11948, - "mentioning": 34290, - "mentions": 12334, - "mento": 30582, - "mentor": 45342, - "mentor": 11642, - "mentoring": 19610, - "mentors": 20945, - "mentorship": 33878, - "ments": 1827, - "menu": 6225, - "menus": 33534, - "meo": 30792, - "meow": 39965, - "meow": 17246, - "mep": 27095, - "mer": 1316, - "mer": 2452, - "mera": 20028, - "merc": 34357, - "merc": 44399, - "mercado": 45479, - "merce": 8409, - "mercede": 34959, - "mercedes": 26403, - "mercedes": 10685, - "mercedesam": 40107, - "mercedesbenz": 32347, - "mercen": 40301, - "mercer": 21632, - "merch": 11504, - "merchandi": 14954, - "merchandise": 16808, - "merchandising": 49196, - "merchant": 19563, - "merchants": 34427, - "merci": 23364, - "merci": 29378, - "mercur": 11471, - "mercury": 45203, - "mercury": 12653, - "mercy": 33249, - "mercy": 10815, - "mere": 29657, - "mere": 10342, - "mered": 24657, - "mered": 32297, - "meredith": 25103, - "merely": 28718, - "merge": 30406, - "merged": 46492, - "merger": 24744, - "merging": 49256, - "meri": 17993, - "meri": 36109, - "meria": 48433, - "meric": 27097, - "merica": 30561, - "meridi": 37901, - "meridian": 31195, - "mering": 41060, - "meringue": 41661, - "merino": 42648, - "merit": 20830, - "merkel": 24715, - "merle": 48586, - "merlin": 26517, - "merlot": 40424, - "mermaid": 16064, - "mermaids": 43617, - "mero": 19097, - "merr": 48288, - "merri": 21462, - "merrill": 47713, - "merritt": 36462, - "merry": 14167, - "merry": 5779, - "merrychristmas": 19672, - "mers": 4199, - "mersal": 36711, - "mersey": 25248, - "mersey": 46239, - "merseyside": 35382, - "mert": 48496, - "merton": 35315, - "mery": 40873, - "meryl": 35787, - "mes": 28432, - "mes": 3029, - "mesa": 18956, - "mese": 42018, - "mesh": 15030, - "mesm": 18695, - "mesmer": 38435, - "mesmeri": 25985, - "mesmerizing": 35637, - "meso": 25537, - "mesqu": 46819, - "mess": 2490, - "mess": 8188, - "message": 3918, - "messages": 9390, - "messaging": 23234, - "messe": 40391, - "messed": 23580, - "messenger": 17389, - "messi": 19394, - "messi": 11252, - "messiah": 28737, - "messing": 23144, - "messy": 15987, - "mest": 23780, - "mester": 47349, - "mesut": 49177, - "met": 5249, - "met": 2340, - "meta": 14803, - "meta": 22701, - "metab": 16150, - "metabol": 48389, - "metaboli": 25573, - "metabolic": 34311, - "metabolism": 27824, - "metal": 8935, - "metal": 4044, - "metall": 19084, - "metallic": 17257, - "metallica": 24079, - "metals": 21375, - "metam": 28862, - "metamor": 39030, - "metamorpho": 47601, - "metaph": 24189, - "metaphor": 34233, - "metast": 41973, - "mete": 11226, - "meteor": 26429, - "meteor": 26823, - "meteoro": 25948, - "meteorologist": 42849, - "meter": 10104, - "meters": 13247, - "metgala": 30089, - "meth": 21867, - "meth": 26177, - "methane": 37565, - "metho": 5770, - "method": 10284, - "methodist": 25165, - "methodo": 28488, - "methodology": 37316, - "methods": 12200, - "methyl": 48999, - "metmuseum": 28207, - "meto": 25679, - "metoo": 24722, - "metr": 15086, - "metre": 27889, - "metres": 19798, - "metric": 19950, - "metrical": 40704, - "metrics": 24396, - "metro": 7257, - "metro": 6784, - "metroid": 39957, - "metropolis": 40476, - "metropolitan": 19013, - "metry": 20039, - "mets": 9633, - "mett": 28081, - "metz": 40506, - "meu": 34520, - "mew": 40368, - "mex": 3213, - "mex": 18387, - "mexic": 31728, - "mexican": 37442, - "mexican": 8186, - "mexicans": 47729, - "mexico": 31834, - "mexico": 4604, - "mey": 28584, - "mey": 27777, - "meyer": 13963, - "meyers": 32326, - "mez": 30615, - "mez": 46833, - "mezz": 38771, - "mf": 18199, - "mf": 11067, - "mfa": 24107, - "mfc": 39474, - "mfg": 21912, - "mfw": 27309, - "mg": 10003, - "mg": 8014, - "mga": 23954, - "mgm": 27572, - "mgmt": 22288, - "mgr": 31500, - "mgs": 48073, - "mgt": 48663, - "mh": 9962, - "mh": 10834, - "mha": 41944, - "mhealth": 41225, - "mhs": 28815, - "mhz": 31550, - "mi": 714, - "mi": 2251, - "mia": 5852, - "miam": 31053, - "miami": 15106, - "miami": 4891, - "mian": 24792, - "miaw": 36046, - "mib": 48178, - "mic": 1213, - "mic": 3816, - "mica": 41551, - "micah": 33870, - "mice": 19030, - "mich": 25628, - "mich": 23029, - "micha": 2083, - "michael": 6051, - "michael": 2511, - "michaela": 41897, - "michaeljackson": 33532, - "michaels": 23868, - "michal": 47144, - "miche": 37966, - "micheal": 43709, - "michel": 5158, - "michel": 17153, - "michelangelo": 41245, - "michele": 20642, - "michelin": 26330, - "michelle": 19028, - "michelle": 8625, - "michi": 5658, - "michigan": 32344, - "michigan": 6296, - "mick": 15171, - "mick": 12592, - "mickey": 41813, - "mickey": 13053, - "micky": 43011, - "micro": 3160, - "micro": 11374, - "microbes": 44671, - "microbi": 19496, - "microbial": 30335, - "microbiology": 35348, - "microbiome": 35148, - "micron": 48742, - "microphone": 24643, - "micropoetry": 35997, - "microscope": 29114, - "microscopy": 38431, - "microsof": 42424, - "microsoft": 38650, - "microsoft": 7254, - "microwave": 24240, - "mics": 16554, - "mid": 2192, - "mid": 4734, - "midcentury": 48988, - "midd": 2983, - "midday": 23390, - "middle": 9849, - "middle": 3694, - "middleeast": 32783, - "middles": 29769, - "middlesbrough": 32436, - "middlesex": 39154, - "middleton": 23627, - "middleweight": 35829, - "midfield": 28116, - "midfielder": 13423, - "midget": 30734, - "midi": 39496, - "midi": 27326, - "midland": 24822, - "midlands": 18062, - "midnight": 35746, - "midnight": 6302, - "mids": 40821, - "midst": 24752, - "midsummer": 35234, - "midterm": 34365, - "midterms": 32015, - "midtown": 26069, - "midway": 26536, - "midweek": 29120, - "midwest": 16627, - "midwi": 44802, - "midwife": 37681, - "midwives": 42355, - "mie": 20865, - "mie": 10555, - "miento": 46482, - "mier": 36490, - "mies": 8840, - "miff": 49398, - "mig": 28743, - "might": 2727, - "mighty": 26632, - "mighty": 7815, - "mign": 41678, - "migos": 44640, - "migr": 3736, - "migra": 28186, - "migraine": 35360, - "migrant": 18902, - "migrants": 15814, - "migrate": 41804, - "migrating": 43604, - "migration": 11891, - "migu": 12279, - "miguel": 33672, - "miguel": 14436, - "miho": 46870, - "mii": 39896, - "mik": 15096, - "mik": 46203, - "mika": 28609, - "mika": 25185, - "mike": 5884, - "mike": 3178, - "mikel": 48865, - "mikequind": 33508, - "mikequindazzi": 33551, - "mikey": 34934, - "mikey": 23368, - "mikha": 30999, - "mikhail": 38327, - "miki": 48863, - "miko": 35413, - "miku": 37703, - "mil": 1469, - "mil": 12826, - "mila": 26183, - "milan": 30380, - "milan": 8552, - "milano": 18585, - "milb": 42248, - "mild": 16085, - "mildly": 49059, - "mile": 7833, - "mile": 6243, - "mileage": 30579, - "miler": 44680, - "miles": 3446, - "milestone": 13485, - "milestones": 34025, - "miley": 25336, - "miley": 14321, - "mileycyrus": 28528, - "milf": 45386, - "milford": 35840, - "mili": 16698, - "miliband": 41440, - "milit": 3715, - "militant": 33629, - "militants": 23974, - "military": 24498, - "military": 4323, - "militi": 46625, - "militia": 32114, - "milk": 13409, - "milk": 5205, - "milkshake": 29066, - "milky": 37320, - "milky": 21120, - "milkyway": 43246, - "mill": 4221, - "mill": 6637, - "milla": 49381, - "millan": 34930, - "millan": 22188, - "millar": 41851, - "mille": 34066, - "millen": 48501, - "millenni": 10406, - "millennial": 28357, - "millennials": 18804, - "millennium": 21116, - "miller": 21699, - "miller": 5733, - "milli": 5340, - "millie": 29283, - "milling": 39133, - "million": 13154, - "million": 2506, - "millionaire": 25179, - "millionaires": 47159, - "millions": 8492, - "mills": 10331, - "millwall": 35902, - "milly": 45794, - "milne": 44590, - "milner": 45230, - "milo": 24548, - "milton": 39004, - "milton": 17360, - "milwau": 13452, - "milwaukee": 14259, - "mim": 39379, - "mimi": 27086, - "mimic": 47116, - "mimic": 46519, - "mimo": 45551, - "min": 771, - "min": 3331, - "mina": 15281, - "minaj": 25136, - "minal": 40222, - "minat": 33275, - "mince": 32396, - "mind": 5890, - "mind": 2575, - "mindanao": 44228, - "minded": 21330, - "mindful": 28457, - "mindfulness": 15707, - "minding": 45337, - "minds": 9244, - "mindset": 14217, - "mindy": 46875, - "mindy": 38551, - "mine": 20149, - "mine": 3347, - "minecraft": 15678, - "mined": 48034, - "minent": 12533, - "miner": 14109, - "miner": 26572, - "mineral": 17692, - "minerals": 21169, - "miners": 22119, - "mines": 16211, - "ming": 10868, - "ming": 2107, - "mingham": 7590, - "mingle": 38437, - "mingly": 36909, - "mington": 49283, - "mington": 23119, - "minh": 48734, - "minho": 21318, - "mini": 1810, - "mini": 3954, - "miniature": 44298, - "miniature": 16377, - "miniatures": 38816, - "minic": 31522, - "minim": 10005, - "minimal": 18458, - "minimalism": 42594, - "minimalist": 26641, - "minimize": 38697, - "minimum": 12244, - "minindia": 28458, - "mining": 8473, - "minion": 28622, - "minions": 27035, - "minis": 33409, - "minis": 35976, - "minister": 25688, - "minister": 3569, - "ministerial": 33008, - "ministers": 16406, - "ministries": 27895, - "ministry": 8742, - "mink": 42017, - "minn": 45991, - "minn": 47318, - "minne": 7083, - "minneapolis": 16977, - "minneso": 9380, - "minnesota": 9968, - "minnie": 24493, - "mino": 22791, - "minogue": 44202, - "minor": 8522, - "minorities": 28119, - "minority": 16210, - "minors": 36789, - "mins": 6196, - "minsk": 46151, - "minster": 11189, - "mint": 48084, - "mint": 7506, - "minted": 49377, - "minton": 20050, - "minu": 29064, - "minus": 15358, - "minute": 28931, - "minute": 4497, - "minutes": 3056, - "mio": 26366, - "mir": 2750, - "mir": 6585, - "mira": 21665, - "mira": 22762, - "mirac": 13685, - "miracle": 49208, - "miracle": 11543, - "miracles": 23478, - "miraculous": 38671, - "mirage": 28679, - "mirai": 49060, - "mirand": 32367, - "miranda": 17590, - "mire": 38140, - "mire": 30140, - "miri": 22273, - "miriam": 30950, - "miro": 34851, - "miro": 48317, - "mirren": 47600, - "mirro": 48500, - "mirror": 29823, - "mirror": 7220, - "mirrors": 21823, - "mirza": 36440, - "mis": 866, - "mis": 11239, - "mischief": 33896, - "misconceptions": 48681, - "misconduct": 30601, - "mise": 46567, - "mise": 17267, - "miser": 33394, - "miserable": 26196, - "misery": 28360, - "mises": 24390, - "misfits": 42708, - "mish": 15494, - "mish": 20981, - "misha": 35434, - "mishra": 33042, - "misleading": 30862, - "mism": 15948, - "miso": 27657, - "miso": 33441, - "misogy": 31315, - "misogyny": 48415, - "miss": 6984, - "miss": 1526, - "missal": 38337, - "missed": 3955, - "misses": 15844, - "missi": 3008, - "missile": 14411, - "missiles": 27868, - "missin": 36209, - "missing": 23509, - "missing": 3423, - "mission": 12738, - "mission": 2406, - "missionaries": 40580, - "missionary": 27915, - "missions": 6990, - "mississ": 26483, - "mississauga": 28393, - "mississi": 11687, - "mississippi": 12232, - "missou": 30710, - "missoula": 48549, - "missouri": 11835, - "missuni": 26347, - "missuniverse": 28766, - "missy": 48105, - "missy": 31515, - "missyou": 45799, - "mist": 12610, - "mist": 11946, - "mistak": 20478, - "mistake": 11303, - "mistaken": 29182, - "mistakenly": 48494, - "mistakes": 12824, - "mister": 26949, - "mister": 18895, - "mistle": 46800, - "mistletoe": 48569, - "mistre": 42039, - "mistress": 24349, - "mists": 28636, - "misty": 18799, - "misunderstood": 41574, - "misuse": 40970, - "mit": 3303, - "mit": 4551, - "mita": 47514, - "mitage": 27964, - "mitch": 6969, - "mitch": 14150, - "mitchell": 39339, - "mitchell": 9007, - "mite": 26929, - "mith": 21752, - "mith": 17948, - "miti": 17857, - "mitigate": 42273, - "mitigation": 35514, - "mito": 38254, - "mitochondri": 42132, - "mitra": 47703, - "mits": 24086, - "mitsu": 17905, - "mitsubi": 21604, - "mitsubishi": 23030, - "mitt": 17321, - "mitt": 21341, - "mitted": 10307, - "mitting": 27938, - "mitz": 41827, - "mium": 35891, - "miwx": 43941, - "mix": 3210, - "mix": 3285, - "mixed": 29376, - "mixed": 6780, - "mixer": 17200, - "mixers": 39175, - "mixes": 19061, - "mixing": 15588, - "mixtape": 11044, - "mixture": 28286, - "miy": 25695, - "miya": 36257, - "miz": 20881, - "miz": 30795, - "mize": 19076, - "mized": 43418, - "mizing": 38715, - "mizz": 19985, - "mizzou": 26165, - "mj": 13117, - "mj": 14733, - "mk": 11581, - "mk": 8937, - "mke": 36642, - "mkt": 24814, - "ml": 3627, - "ml": 5780, - "mla": 16723, - "mlas": 48464, - "mlb": 21039, - "mlb": 7482, - "mley": 40329, - "mlg": 45801, - "mlin": 24556, - "mlk": 17941, - "mlkday": 39905, - "mlm": 37611, - "mln": 18971, - "mlp": 23620, - "mlpfi": 45475, - "mlpfim": 45640, - "mls": 13077, - "mm": 1028, - "mm": 2848, - "mma": 34140, - "mma": 6096, - "mmc": 44253, - "mme": 13105, - "mmed": 19570, - "mmer": 35717, - "mmer": 7508, - "mmers": 28128, - "mmes": 42862, - "mmi": 34147, - "mming": 21038, - "mming": 16507, - "mmings": 31357, - "mmit": 41050, - "mmj": 43015, - "mmm": 37908, - "mmm": 7641, - "mmmm": 36312, - "mmmm": 13180, - "mmmmm": 21808, - "mmmmmm": 43740, - "mmo": 30418, - "mmon": 41131, - "mmor": 36657, - "mmorpg": 39476, - "mms": 37803, - "mmva": 42666, - "mmy": 28837, - "mmy": 8722, - "mn": 5086, - "mn": 4057, - "mna": 34877, - "mnd": 44776, - "mnet": 34129, - "mnf": 41105, - "mnl": 32980, - "mnleg": 42653, - "mns": 39040, - "mnt": 21477, - "mntwins": 45448, - "mnwild": 39044, - "mnwx": 39592, - "mo": 617, - "mo": 2080, - "moa": 33174, - "moana": 43241, - "mob": 2818, - "mob": 12754, - "mobi": 9451, - "mobil": 26343, - "mobil": 29815, - "mobile": 12935, - "mobile": 3451, - "mobiles": 44302, - "mobili": 20770, - "mobility": 12546, - "mobilization": 48916, - "moby": 47219, - "moc": 41439, - "moc": 36992, - "mocha": 28425, - "mochi": 47973, - "mock": 15641, - "mock": 12759, - "mocked": 47400, - "mocking": 28692, - "mocking": 37870, - "mocks": 35142, - "mod": 6362, - "mod": 10893, - "moda": 25814, - "modal": 33157, - "mode": 20402, - "mode": 6493, - "model": 4591, - "model": 2863, - "modeled": 39527, - "modeling": 13706, - "modelling": 19946, - "models": 6176, - "moder": 2894, - "moderate": 16435, - "moderated": 27928, - "moderating": 34242, - "moderator": 32659, - "modern": 11706, - "modern": 4077, - "modernart": 34417, - "moderni": 24328, - "modernism": 39601, - "modernist": 36773, - "modernization": 47294, - "modes": 30454, - "modest": 25436, - "modi": 9047, - "modi": 7774, - "modification": 37630, - "modified": 17964, - "modo": 36820, - "mods": 23843, - "modu": 9036, - "modular": 22437, - "module": 16757, - "modules": 30575, - "moe": 38655, - "moe": 17938, - "mof": 30798, - "moff": 27160, - "mog": 42362, - "moga": 41732, - "mogadishu": 45133, - "mogul": 41320, - "moh": 18979, - "moh": 35388, - "moha": 46892, - "moham": 7923, - "mohamed": 18472, - "mohammad": 19926, - "mohammed": 16168, - "mohan": 26521, - "mohan": 23586, - "mohawk": 34942, - "mohd": 49094, - "mohsin": 48861, - "moi": 20691, - "moi": 21825, - "moil": 30349, - "moines": 32091, - "moist": 19831, - "moist": 33263, - "moisture": 20412, - "moisturi": 25942, - "moj": 34505, - "moja": 49055, - "mojito": 46830, - "mojo": 25204, - "mok": 49146, - "mol": 4246, - "mol": 31582, - "mold": 21846, - "molding": 46274, - "moldova": 47317, - "mole": 9927, - "mole": 23529, - "molecular": 19370, - "molecule": 39233, - "molecules": 35643, - "molina": 34201, - "mollie": 48203, - "molly": 24368, - "molly": 12573, - "molo": 41510, - "mology": 32255, - "molten": 46071, - "moly": 47083, - "mom": 1614, - "mom": 2543, - "moma": 33605, - "mombasa": 40340, - "moment": 12197, - "moment": 2495, - "momento": 30078, - "moments": 5251, - "momentum": 15722, - "momlife": 43825, - "momma": 14508, - "mommy": 12456, - "momo": 48490, - "momo": 25980, - "moms": 28446, - "moms": 10042, - "momsdemand": 33744, - "mon": 749, - "mon": 2173, - "mona": 19143, - "monaco": 14938, - "monaghan": 39797, - "monarch": 27235, - "monarch": 22619, - "monarchs": 36750, - "monarchy": 47503, - "monaster": 19422, - "monastery": 21850, - "monc": 34847, - "moncton": 44962, - "mond": 14522, - "mond": 4475, - "monday": 6205, - "monday": 2098, - "mondaymorning": 40089, - "mondaymotiv": 45488, - "mondaymotivation": 8198, - "mondaymotivaton": 47034, - "mondays": 13815, - "monde": 29339, - "mondo": 36207, - "monds": 20317, - "mone": 25990, - "monet": 24499, - "monetary": 26394, - "moneti": 38056, - "money": 12743, - "money": 2327, - "mong": 43566, - "monger": 38928, - "mongers": 27670, - "mongo": 20680, - "mongolia": 27144, - "mongolian": 46335, - "moni": 46851, - "monia": 31161, - "monic": 30893, - "monica": 13540, - "monit": 9014, - "monitor": 10198, - "monitored": 45828, - "monitoring": 11030, - "monitors": 30478, - "monk": 30557, - "monk": 16424, - "monkey": 29597, - "monkey": 9465, - "monkeys": 15781, - "monks": 29090, - "monmouth": 36929, - "mono": 8220, - "mono": 22537, - "monochrome": 25576, - "monogram": 39665, - "monologue": 47776, - "monopoly": 25241, - "monoxide": 49314, - "monro": 45750, - "monroe": 13625, - "mons": 19885, - "monsanto": 37592, - "monsi": 46677, - "monsieur": 48879, - "monsoon": 18872, - "monsta": 30718, - "monstax": 45631, - "monste": 47045, - "monster": 14454, - "monster": 6060, - "monsters": 11546, - "mont": 5186, - "mont": 5382, - "montag": 37202, - "montage": 32325, - "montal": 42126, - "montan": 28405, - "montana": 11436, - "monte": 8711, - "monte": 14667, - "montene": 28538, - "montenegro": 30378, - "monter": 36673, - "monterey": 23388, - "monterrey": 45254, - "montess": 43205, - "montessori": 45443, - "montgom": 13852, - "montgomery": 14951, - "month": 7680, - "month": 1924, - "monthly": 8764, - "months": 3109, - "monthsary": 42420, - "monton": 41961, - "montp": 39523, - "montre": 8434, - "montreal": 9262, - "montrose": 42347, - "monty": 43997, - "monty": 24038, - "monu": 9748, - "monument": 12019, - "monumental": 31297, - "monuments": 26916, - "mony": 4117, - "monza": 40380, - "moo": 4953, - "moo": 24626, - "mood": 42358, - "mood": 5394, - "moods": 43727, - "moody": 17170, - "moom": 36887, - "moon": 6334, - "moon": 3293, - "mooney": 37942, - "moonlight": 20001, - "moons": 29887, - "moonshine": 46706, - "moor": 14817, - "moor": 11877, - "moore": 28613, - "moore": 6708, - "moors": 32577, - "moose": 37562, - "moose": 17338, - "moot": 46895, - "mop": 33900, - "mopar": 41166, - "mor": 657, - "mor": 18614, - "mora": 29262, - "moral": 11246, - "morale": 39404, - "morales": 27117, - "morality": 34133, - "morally": 42519, - "morals": 46223, - "moran": 21557, - "moray": 44569, - "more": 5434, - "more": 750, - "morecam": 37305, - "morecambe": 43414, - "mored": 20195, - "moreland": 44135, - "moreno": 24826, - "morethan": 30889, - "morg": 34284, - "morgan": 15432, - "morgan": 6075, - "morgen": 35106, - "mori": 25710, - "mori": 29514, - "moris": 43131, - "moritz": 45594, - "morley": 40439, - "mormon": 27715, - "morn": 22393, - "mornin": 28327, - "morning": 10769, - "morning": 1119, - "mornings": 12106, - "moro": 31613, - "moroc": 11996, - "moroccan": 27546, - "morocco": 15228, - "moron": 31875, - "morons": 46477, - "morow": 40779, - "morph": 23915, - "morph": 41700, - "morphe": 38978, - "morpho": 38622, - "morrha": 43044, - "morri": 9876, - "morris": 22560, - "morris": 9090, - "morrison": 40961, - "morrison": 14094, - "morrisons": 40965, - "morrissey": 30040, - "morro": 48363, - "morrow": 21611, - "mors": 13064, - "morse": 25282, - "mort": 24257, - "mort": 30583, - "mortal": 31883, - "mortal": 14680, - "mortality": 20347, - "mortar": 27258, - "mortg": 12069, - "mortgage": 13988, - "mortgages": 45391, - "mortimer": 47836, - "morton": 20698, - "morty": 37391, - "mory": 22633, - "mos": 28658, - "mos": 9593, - "mosa": 14164, - "mosa": 23809, - "mosaic": 17506, - "mosch": 47003, - "mosco": 9840, - "moscow": 10371, - "moseley": 47080, - "moses": 18451, - "mosley": 46228, - "mosqu": 15215, - "mosque": 12694, - "mosques": 41214, - "mosquit": 39699, - "mosquito": 25083, - "mosquitoes": 41870, - "moss": 25107, - "moss": 12815, - "most": 7034, - "most": 1096, - "mostly": 8829, - "mosul": 29165, - "mot": 16352, - "mot": 15452, - "mota": 42499, - "motd": 46232, - "motel": 26191, - "moth": 33208, - "moth": 11736, - "mother": 7455, - "mother": 3050, - "motherhood": 32274, - "motherland": 46774, - "mothers": 10546, - "mothersday": 15583, - "motherwell": 48104, - "moths": 29086, - "moti": 38210, - "motif": 35373, - "motion": 32139, - "motion": 7860, - "motiv": 3183, - "motivate": 26771, - "motivated": 16521, - "motivates": 44684, - "motivating": 37720, - "motivation": 26117, - "motivation": 4193, - "motivational": 32832, - "motivational": 20472, - "motivationmonday": 28703, - "motive": 36669, - "motley": 42553, - "motm": 41192, - "moto": 10646, - "moto": 11431, - "motocross": 34562, - "motogp": 16615, - "motor": 3975, - "motor": 7659, - "motorbike": 33341, - "motorcycle": 10297, - "motorcycles": 24869, - "motoring": 44491, - "motorists": 32766, - "motorola": 33738, - "motors": 14989, - "motorsport": 18371, - "motorsports": 24264, - "motorway": 31808, - "motown": 32685, - "mott": 44570, - "mott": 21708, - "motto": 23338, - "mou": 2809, - "mou": 25289, - "moud": 37698, - "moul": 25725, - "mould": 36743, - "moulin": 47656, - "moun": 2023, - "mound": 21414, - "mount": 20553, - "mount": 5532, - "mountain": 14547, - "mountain": 3965, - "mountaine": 24841, - "mountaineer": 49255, - "mountains": 5873, - "mounted": 17897, - "mounting": 29910, - "mounts": 36767, - "mour": 9053, - "mour": 42446, - "moured": 29555, - "mourinho": 18536, - "mourn": 33592, - "mourning": 24169, - "mourns": 42811, - "mous": 24837, - "mous": 17425, - "mouse": 33032, - "mouse": 9301, - "mousse": 31869, - "moustache": 32795, - "mouth": 15152, - "mouth": 4932, - "mouths": 38518, - "mov": 23950, - "move": 16624, - "move": 2783, - "moved": 6997, - "movember": 23474, - "movement": 5208, - "movements": 19665, - "mover": 37673, - "movers": 33957, - "moves": 6880, - "movi": 1707, - "movic": 43838, - "movie": 11247, - "movie": 2016, - "movies": 4772, - "moving": 32160, - "moving": 3584, - "mow": 31006, - "mow": 36329, - "mower": 30895, - "mowing": 46424, - "mowx": 44263, - "moy": 27276, - "moy": 34205, - "moyes": 37119, - "moz": 14761, - "moz": 43738, - "mozam": 26648, - "mozambique": 28831, - "mozart": 22132, - "mozz": 26317, - "mozzarella": 27845, - "mp": 1037, - "mp": 1246, - "mpa": 30749, - "mpc": 38560, - "mpd": 33814, - "mped": 28134, - "mper": 22803, - "mpg": 39830, - "mpg": 37454, - "mpgvip": 42149, - "mph": 5306, - "mpi": 43263, - "mping": 27999, - "mple": 21139, - "mplo": 47071, - "mpls": 34298, - "mpo": 33674, - "mpp": 39570, - "mps": 5504, - "mption": 9717, - "mpton": 27448, - "mpu": 47156, - "mpus": 25864, - "mpy": 17192, - "mq": 19103, - "mqm": 24687, - "mr": 3139, - "mr": 1982, - "mra": 44568, - "mrc": 25897, - "mri": 24773, - "mrs": 25003, - "mrs": 4255, - "mrt": 30256, - "mru": 22370, - "mrw": 15303, - "ms": 3525, - "ms": 988, - "msa": 36306, - "msc": 31826, - "msc": 20529, - "msd": 25804, - "msd": 36407, - "msdhoni": 32850, - "msf": 36239, - "msg": 44430, - "msg": 10928, - "msh": 41751, - "msi": 43597, - "msi": 45278, - "msk": 38501, - "msl": 42736, - "msm": 22210, - "msn": 18824, - "msn": 41042, - "msnbc": 20245, - "mson": 27773, - "mson": 12298, - "msp": 41445, - "msp": 22318, - "mss": 42136, - "mss": 48610, - "mst": 26335, - "msu": 26763, - "msu": 17298, - "mswx": 42957, - "msy": 43919, - "mt": 4252, - "mt": 3284, - "mta": 28691, - "mtb": 48306, - "mtb": 18747, - "mtc": 42482, - "mtg": 49142, - "mtg": 13648, - "mth": 48151, - "mtl": 22135, - "mtn": 26041, - "mtn": 18953, - "mtr": 46650, - "mts": 38751, - "mtv": 8099, - "mtv": 12555, - "mtvbr": 47258, - "mtvhottest": 16751, - "mtvstars": 19948, - "mu": 670, - "mu": 6411, - "mua": 21395, - "muay": 44910, - "muaythai": 47763, - "mubarak": 17957, - "muc": 49115, - "much": 14300, - "much": 1238, - "mucha": 42191, - "muchas": 26278, - "mucho": 19864, - "muck": 44731, - "muck": 45330, - "mud": 17491, - "mud": 11673, - "mudder": 49104, - "muddy": 21524, - "mue": 44383, - "mue": 40717, - "mueller": 46863, - "mueller": 14719, - "muen": 48646, - "muer": 33840, - "muf": 33852, - "mufc": 9013, - "muffin": 22696, - "muffins": 25922, - "mufti": 44930, - "mug": 16339, - "mug": 9722, - "mugabe": 36441, - "mughal": 37508, - "mugs": 22852, - "mugshot": 40028, - "muh": 36335, - "muh": 46475, - "muham": 10043, - "muhammad": 12259, - "muir": 44650, - "muir": 24745, - "muj": 44635, - "muk": 17327, - "muk": 32600, - "mukher": 34575, - "mukherjee": 37862, - "mul": 1899, - "mul": 43193, - "mula": 40937, - "mulator": 17463, - "mulberry": 39221, - "mule": 28695, - "mull": 17313, - "mull": 35310, - "mulled": 44641, - "mullen": 30797, - "muller": 33956, - "mullet": 35010, - "mulligan": 44336, - "mullins": 41265, - "mult": 34219, - "multi": 3947, - "multi": 6400, - "multic": 21683, - "multicul": 28004, - "multicultural": 34667, - "multil": 27975, - "multimedia": 27977, - "multin": 38996, - "multinational": 46540, - "multip": 40314, - "multiplayer": 27460, - "multiple": 6470, - "multipurpose": 47665, - "multit": 27814, - "multitasking": 48684, - "mulus": 26180, - "mum": 15565, - "mum": 4030, - "mumb": 5850, - "mumbai": 24279, - "mumbai": 6971, - "mumford": 46184, - "mummy": 16301, - "mums": 17868, - "mun": 2617, - "mun": 21059, - "muna": 48424, - "munch": 23587, - "munch": 33299, - "munchies": 44324, - "munchkin": 41305, - "mund": 14244, - "mundo": 20990, - "muni": 27327, - "muni": 39795, - "munich": 13526, - "munici": 12159, - "municipal": 43667, - "municipal": 16600, - "municipality": 29987, - "munition": 32668, - "munro": 36501, - "munster": 27201, - "mup": 21966, - "muppet": 40598, - "muppets": 40187, - "mups": 42195, - "mur": 2144, - "mur": 18293, - "mura": 45176, - "mural": 12315, - "murals": 31499, - "murder": 28136, - "murder": 5787, - "murdered": 13158, - "murderer": 26956, - "murderers": 48472, - "murdering": 36055, - "murders": 22409, - "murdoch": 29037, - "murphy": 48976, - "murphy": 8914, - "murray": 31978, - "murray": 7513, - "murs": 38783, - "mus": 2198, - "mus": 8103, - "musa": 30540, - "musc": 5696, - "muscat": 33322, - "muscle": 27323, - "muscle": 9269, - "muscles": 16786, - "muscular": 30606, - "muse": 2369, - "muse": 15686, - "museo": 36457, - "muses": 48243, - "museu": 27087, - "museum": 15602, - "museum": 2786, - "museums": 15542, - "museumweek": 37996, - "mush": 7635, - "mushroom": 13011, - "mushrooms": 14730, - "musi": 15628, - "music": 4110, - "music": 1179, - "musica": 26668, - "musical": 36002, - "musical": 5173, - "musically": 48893, - "musicals": 36974, - "musichistory": 37890, - "musician": 11179, - "musicians": 12498, - "musicislife": 43311, - "musicmonday": 35887, - "musicvideo": 26764, - "musik": 32986, - "musings": 44961, - "musique": 42250, - "musk": 32143, - "musk": 19063, - "muskete": 32775, - "musketeers": 37993, - "musko": 34987, - "muskoka": 40832, - "musli": 4958, - "muslim": 43795, - "muslim": 7060, - "muslims": 10513, - "muss": 41493, - "mussels": 33393, - "must": 6783, - "must": 2048, - "mustache": 23451, - "mustaf": 23596, - "mustafa": 29000, - "mustang": 42361, - "mustang": 13309, - "mustangs": 22500, - "mustard": 15794, - "muster": 47361, - "mustread": 28978, - "mut": 12598, - "mut": 22839, - "mutant": 28384, - "mutation": 38626, - "mutations": 39651, - "mute": 31252, - "muted": 48028, - "muth": 34280, - "mutil": 39950, - "mutt": 45924, - "mutu": 17574, - "mutual": 15055, - "mutuals": 31158, - "muy": 44625, - "mv": 10580, - "mv": 8269, - "mvc": 40549, - "mvp": 8905, - "mw": 16725, - "mw": 11206, - "mwc": 24289, - "mwf": 48565, - "mx": 21947, - "mx": 9575, - "my": 1152, - "my": 607, - "mya": 31401, - "myal": 42735, - "myan": 13761, - "myanmar": 14764, - "myart": 38826, - "myco": 48362, - "mydayin": 41896, - "mydayinla": 42801, - "mydubai": 43475, - "mye": 27551, - "myel": 40084, - "myers": 15993, - "myjaps": 47939, - "myle": 43700, - "myles": 25511, - "mylife": 30537, - "mylittle": 37757, - "mylittlepony": 45107, - "myo": 16206, - "myr": 20272, - "myra": 35694, - "myri": 34972, - "myrt": 47785, - "myrtle": 27768, - "mys": 11724, - "myself": 3245, - "mysore": 44924, - "myspace": 41382, - "myster": 4669, - "mysteries": 20605, - "mysterious": 12650, - "mystery": 39828, - "mystery": 6711, - "mysti": 28711, - "mystic": 36264, - "mystic": 23722, - "mystical": 34122, - "myth": 20322, - "myth": 13878, - "mythical": 34377, - "mytho": 43857, - "mythology": 22496, - "myths": 18675, - "mz": 29509, - "mz": 33400, - "mzan": 36322, - "mzansi": 43301, - "má": 36842, - "mé": 21890, - "méxico": 46159, - "mü": 28142, - "mün": 41235, - "n": 77, - "n": 333, - "na": 1097, - "na": 1272, - "naa": 37738, - "naacp": 32176, - "nab": 6951, - "nab": 19440, - "nabe": 35111, - "naby": 24800, - "nac": 14557, - "nac": 18950, - "nach": 12168, - "nach": 43622, - "nacho": 35647, - "nachos": 32847, - "nacht": 37261, - "nacional": 38782, - "nad": 6204, - "nad": 43928, - "nada": 31683, - "nadal": 20814, - "nade": 24908, - "nadi": 30512, - "nadia": 27487, - "nadine": 23356, - "nadu": 20936, - "nae": 19374, - "naf": 16161, - "naf": 45956, - "nafta": 43123, - "nag": 6694, - "nag": 23902, - "naga": 45953, - "naga": 38997, - "nagar": 17490, - "nage": 41219, - "nago": 38349, - "nagoya": 43303, - "nagpur": 43328, - "nah": 26421, - "nah": 11129, - "nahi": 35244, - "nai": 6230, - "nai": 10692, - "naia": 31340, - "naidu": 42429, - "naija": 16326, - "naik": 34424, - "nail": 19459, - "nail": 9059, - "nailart": 43532, - "nailed": 19035, - "nails": 8469, - "nair": 27107, - "naira": 39450, - "naire": 48892, - "nairobi": 17756, - "nais": 46396, - "naissance": 44761, - "naive": 43362, - "naj": 30985, - "naji": 32589, - "nak": 9248, - "nak": 25550, - "naked": 46371, - "naked": 11478, - "naku": 39864, - "nal": 14132, - "nal": 3119, - "nale": 27198, - "nall": 32869, - "nally": 26158, - "nam": 1410, - "nam": 12344, - "nama": 39586, - "naman": 27635, - "namaste": 35549, - "name": 18160, - "name": 1981, - "named": 3194, - "nameis": 40831, - "nament": 3916, - "naments": 16540, - "names": 6130, - "namesake": 41298, - "nami": 20393, - "namibia": 23731, - "naming": 19367, - "namjoon": 31986, - "namm": 35524, - "namo": 46013, - "namo": 24854, - "nan": 4375, - "nan": 7750, - "nana": 18761, - "nanaimo": 40518, - "nancy": 21511, - "nancy": 11425, - "nand": 20435, - "nandez": 12764, - "nando": 46044, - "nang": 48148, - "nani": 27980, - "nanny": 31104, - "nano": 15835, - "nano": 22006, - "nanop": 34177, - "nanotechnology": 42235, - "nanow": 46734, - "nant": 22526, - "nantes": 47533, - "nantucket": 41573, - "nao": 39319, - "naom": 34955, - "naomi": 20173, - "nap": 6568, - "nap": 11012, - "napa": 20545, - "napier": 40875, - "napkin": 38930, - "naples": 23560, - "napo": 18715, - "napol": 20122, - "napoleon": 24969, - "napoli": 22445, - "napp": 11359, - "napping": 37657, - "naps": 31317, - "naq": 46453, - "nar": 2977, - "nar": 20145, - "nara": 33823, - "narcis": 25229, - "narcissi": 35442, - "narco": 38461, - "nard": 18216, - "nare": 34853, - "naren": 8468, - "narendr": 9807, - "narendra": 25848, - "narendramodi": 9853, - "narnia": 48693, - "narr": 11845, - "narrated": 43609, - "narrative": 15933, - "narratives": 35117, - "narrator": 46529, - "narrow": 24006, - "narrow": 16652, - "narrowly": 29747, - "naruto": 22732, - "nas": 3090, - "nas": 15250, - "nasa": 6841, - "nasal": 42853, - "nascar": 25723, - "nascar": 7868, - "nasdaq": 26629, - "nash": 6771, - "nash": 13620, - "nasheed": 49176, - "nashgrier": 33372, - "nashville": 45356, - "nashville": 8585, - "nasi": 47987, - "nasir": 47509, - "nassau": 34048, - "nasser": 43559, - "nasty": 32930, - "nasty": 8709, - "nat": 1276, - "nat": 11310, - "nata": 39392, - "natal": 28516, - "natali": 20296, - "natalia": 32978, - "natalie": 36634, - "natalie": 13595, - "natash": 48701, - "natasha": 23093, - "nate": 26643, - "nate": 7587, - "natgeo": 33009, - "natgeo": 25046, - "nath": 22203, - "nath": 19843, - "nathan": 13028, - "nathan": 9711, - "nathanfillion": 47422, - "nathaniel": 32667, - "nati": 1060, - "nati": 13384, - "natic": 44944, - "natin": 44358, - "nation": 2317, - "nation": 2670, - "national": 3126, - "national": 1362, - "nationalbestfriend": 42222, - "nationaldogday": 32227, - "nationalism": 29867, - "nationalist": 25058, - "nationality": 44451, - "nationally": 15130, - "nationalpark": 33060, - "nationalparks": 41204, - "nationals": 10784, - "nationaltrust": 34051, - "nations": 7654, - "nationwide": 13795, - "native": 20639, - "native": 4562, - "natives": 36060, - "nativity": 33988, - "natl": 39225, - "natl": 34465, - "nato": 13139, - "nats": 21106, - "natu": 2775, - "natur": 6800, - "natural": 13198, - "natural": 3288, - "naturally": 12995, - "naturals": 44686, - "nature": 9382, - "nature": 2625, - "naturelovers": 41514, - "naturephotography": 22533, - "natures": 15616, - "natureuk": 46193, - "nau": 5955, - "nau": 32878, - "naught": 41001, - "naughty": 47255, - "naughty": 15101, - "nautical": 31660, - "nav": 3413, - "nav": 25308, - "navajo": 35523, - "naval": 44725, - "naval": 13273, - "navar": 24848, - "navarro": 37104, - "nave": 42704, - "naveen": 43837, - "naver": 32534, - "navi": 16159, - "navi": 44848, - "navig": 12507, - "navigate": 24400, - "navigating": 33134, - "navigation": 20148, - "navigator": 38910, - "navis": 36377, - "navratri": 45428, - "navy": 28414, - "navy": 5598, - "naw": 16259, - "naw": 30500, - "nawaz": 49161, - "nawaz": 19523, - "nax": 38299, - "nay": 11704, - "nay": 16182, - "naya": 38917, - "nayanth": 38157, - "nayanthara": 45184, - "naz": 6363, - "naz": 35534, - "nazi": 12972, - "nazis": 21778, - "nb": 6459, - "nb": 6813, - "nba": 22524, - "nba": 5139, - "nbad": 43458, - "nbaf": 30127, - "nbafinals": 33803, - "nbap": 41956, - "nbaplayoffs": 43860, - "nbat": 46291, - "nbc": 9352, - "nbc": 8799, - "nbd": 24526, - "nbl": 42652, - "nc": 5021, - "nc": 4911, - "nca": 6921, - "ncaa": 9418, - "ncbd": 47221, - "ncc": 33195, - "ncc": 36686, - "ncds": 47573, - "ncfc": 31274, - "ncis": 33617, - "ncpol": 40562, - "ncr": 38474, - "ncs": 42689, - "nct": 27723, - "nct": 20319, - "ncwx": 36166, - "nd": 5625, - "nd": 1764, - "nda": 32862, - "ndc": 47564, - "ndi": 48229, - "ndp": 19257, - "nds": 31347, - "ndtv": 26261, - "ne": 557, - "ne": 1422, - "nea": 24068, - "neal": 33652, - "neal": 16730, - "near": 11296, - "near": 2252, - "nearby": 13314, - "nearest": 18985, - "nearing": 26571, - "nearly": 4816, - "nears": 37710, - "neat": 43201, - "neat": 15465, - "neath": 18315, - "neau": 31559, - "neb": 40209, - "nebra": 13371, - "nebraska": 14565, - "nebu": 49295, - "nebula": 22532, - "nec": 25109, - "nec": 22992, - "necess": 6961, - "necessarily": 25853, - "necessary": 8955, - "necessities": 43483, - "necessity": 33163, - "neck": 6066, - "neck": 6906, - "necklace": 7385, - "necklaces": 32276, - "necks": 29701, - "nectar": 33683, - "ned": 16030, - "ned": 1369, - "nederland": 49058, - "nee": 20494, - "nee": 10601, - "need": 3229, - "need": 1262, - "needed": 4049, - "needing": 22894, - "needle": 44490, - "needle": 19886, - "needles": 27250, - "needless": 39984, - "needs": 2536, - "needy": 30150, - "neel": 33092, - "neel": 46043, - "neer": 34245, - "nees": 47248, - "neet": 46362, - "neg": 5513, - "negan": 42623, - "negative": 8869, - "negatively": 40254, - "negativity": 34658, - "neglec": 18827, - "neglect": 33680, - "neglected": 31893, - "negli": 32594, - "negligence": 45658, - "negoti": 10216, - "negotiate": 32969, - "negotiating": 35510, - "negotiation": 36504, - "negotiations": 20433, - "negr": 42190, - "negro": 26554, - "neh": 40416, - "neh": 41697, - "neha": 44463, - "nehru": 30316, - "nei": 9366, - "neigh": 4061, - "neighb": 6534, - "neighbor": 7759, - "neighbor": 14485, - "neighborhood": 9471, - "neighborhoods": 26713, - "neighboring": 44754, - "neighbors": 13037, - "neighbour": 15858, - "neighbour": 23719, - "neighbourhood": 20312, - "neighbours": 17594, - "neil": 13591, - "neil": 8030, - "neilhimself": 45682, - "neill": 19324, - "neither": 14398, - "nek": 47727, - "neko": 47066, - "nel": 5476, - "nel": 2693, - "nell": 27081, - "nell": 8117, - "nelly": 21166, - "nels": 19296, - "nelson": 24774, - "nelson": 8586, - "nem": 45153, - "neman": 48553, - "neme": 30993, - "nemesis": 37811, - "nemo": 30441, - "nen": 17817, - "nen": 15451, - "nene": 44167, - "neo": 14562, - "neo": 11017, - "neon": 21043, - "neon": 13919, - "neonatal": 46464, - "neop": 49069, - "nep": 20739, - "nep": 41960, - "nepal": 25597, - "nepal": 10066, - "nepali": 47579, - "neph": 27926, - "nephe": 41810, - "nephew": 11689, - "nephews": 43747, - "nephro": 43054, - "neptune": 30566, - "ner": 2064, - "ner": 998, - "nerd": 24452, - "nerd": 12273, - "nerds": 22609, - "nerdy": 33124, - "nered": 17583, - "nerf": 42914, - "nering": 20226, - "nero": 29048, - "ners": 2129, - "nerve": 18571, - "nerves": 27813, - "nervous": 13928, - "nery": 48597, - "nes": 5457, - "nes": 4980, - "nesburg": 27159, - "nese": 32220, - "ness": 7187, - "ness": 1294, - "nesses": 20107, - "nessy": 32939, - "nest": 20302, - "nest": 8719, - "nesting": 28860, - "nestle": 43967, - "nestled": 38107, - "nests": 41133, - "net": 1851, - "net": 2315, - "netany": 23137, - "netanyahu": 23583, - "netball": 19761, - "netes": 44335, - "netfli": 6304, - "netflix": 35325, - "netflix": 6600, - "nether": 9946, - "netherlands": 11060, - "neti": 43980, - "netneutrality": 47794, - "nets": 8582, - "nett": 23403, - "nett": 6975, - "nette": 13271, - "network": 23285, - "network": 3304, - "networking": 9818, - "networks": 10004, - "neu": 3855, - "neu": 43342, - "neue": 45764, - "neur": 19001, - "neur": 31976, - "neural": 26388, - "neuro": 7401, - "neuro": 36000, - "neurological": 41718, - "neurology": 43197, - "neurons": 40442, - "neuroscience": 23381, - "neutr": 17207, - "neutral": 17011, - "neutrality": 26511, - "neutron": 44056, - "nev": 10236, - "nev": 43645, - "neva": 43304, - "nevada": 13499, - "neve": 44099, - "neve": 44023, - "never": 6746, - "never": 1426, - "neveragain": 45053, - "neverforget": 19242, - "nevergiveup": 42497, - "neverland": 41483, - "nevertheless": 48355, - "nevertrump": 47494, - "neville": 19269, - "nevis": 43670, - "new": 1218, - "new": 686, - "newark": 20240, - "newbie": 45427, - "newborn": 18320, - "newbury": 34169, - "newcastle": 41955, - "newcastle": 9302, - "newcomer": 30648, - "newcomers": 44037, - "newe": 40068, - "newell": 41436, - "newer": 33099, - "newest": 4990, - "newfound": 25250, - "newfoundland": 28079, - "newh": 18546, - "newin": 31911, - "newjersey": 32621, - "newly": 42186, - "newly": 7056, - "newman": 15815, - "newmarket": 38617, - "newmexico": 35238, - "newmusic": 32510, - "newmusic": 17201, - "newor": 25969, - "neworleans": 31205, - "newport": 42580, - "newport": 14846, - "newprofile": 14633, - "newprofilepic": 14754, - "newrelease": 34793, - "news": 6216, - "news": 1120, - "newsat": 43979, - "newsc": 28656, - "newscast": 45031, - "newsle": 10727, - "newsletter": 11069, - "newsnow": 48650, - "newsp": 7109, - "newspaper": 8786, - "newspapers": 22423, - "newsroom": 23200, - "newt": 37224, - "newton": 33122, - "newton": 12606, - "newtown": 31747, - "newyear": 22161, - "newyear": 12999, - "newyearseve": 37587, - "newyork": 18140, - "newyork": 10454, - "newyorkcity": 30460, - "newyorker": 39732, - "newzealand": 21117, - "nex": 6897, - "nex": 39720, - "next": 12434, - "next": 1131, - "nextgen": 41933, - "nexus": 19053, - "ney": 3857, - "ney": 1438, - "neymar": 21878, - "neys": 12616, - "nez": 27388, - "nf": 15195, - "nf": 25643, - "nfamily": 20098, - "nfc": 23695, - "nffc": 27893, - "nfl": 11219, - "nfl": 4691, - "nfldraft": 25002, - "ng": 10352, - "ng": 5215, - "nga": 35477, - "ngc": 29046, - "ngo": 38740, - "ngo": 24821, - "ngos": 34627, - "nguyen": 29947, - "nh": 3760, - "nh": 10803, - "nhc": 44817, - "nhl": 12290, - "nhl": 8167, - "nhlbruins": 39081, - "nhljets": 49357, - "nhm": 39483, - "nhpolitics": 36125, - "nhq": 42368, - "nhra": 30052, - "nhs": 23282, - "nhs": 7695, - "ni": 697, - "ni": 3256, - "nia": 3098, - "niag": 18071, - "niagar": 39298, - "niagara": 18965, - "niall": 41354, - "niall": 8327, - "niallo": 22855, - "niallofficial": 23084, - "niam": 39347, - "nian": 46003, - "nib": 31049, - "nic": 2109, - "nic": 6651, - "nica": 29040, - "nicar": 25119, - "nicaragua": 28423, - "nice": 28386, - "nice": 1805, - "nicely": 12303, - "nicer": 29488, - "nicest": 22967, - "niche": 25279, - "nichol": 7668, - "nicholas": 39814, - "nicholas": 13148, - "nicholls": 38846, - "nichols": 22730, - "nicholson": 28745, - "nick": 4209, - "nick": 4253, - "nickel": 22034, - "nickelo": 28668, - "nickelodeon": 33279, - "nicki": 17738, - "nickimin": 27390, - "nickiminaj": 27593, - "nickjonas": 43862, - "nickname": 24731, - "nicknamed": 45190, - "nicks": 15049, - "nicky": 28893, - "nicky": 22091, - "nico": 20850, - "nico": 17779, - "nicol": 9919, - "nicol": 48274, - "nicola": 21791, - "nicolas": 43813, - "nicolas": 18918, - "nicole": 21246, - "nicole": 10000, - "nicot": 45099, - "nicotine": 46697, - "nie": 9524, - "nie": 3501, - "niece": 12795, - "nieces": 44877, - "niel": 19109, - "niel": 26837, - "niels": 37154, - "nielsen": 28372, - "nier": 13014, - "nies": 10586, - "niest": 15007, - "nieu": 29781, - "nific": 4748, - "nifty": 25604, - "nig": 27933, - "nig": 28099, - "nigan": 48516, - "nigel": 33919, - "nigel": 15153, - "niger": 4524, - "niger": 29920, - "nigeri": 40913, - "nigeria": 6106, - "nigerian": 12167, - "nigerians": 25358, - "nigh": 13525, - "nigh": 48157, - "night": 3870, - "night": 930, - "nightclub": 20418, - "nighter": 41349, - "nighting": 36211, - "nightingale": 40696, - "nightlife": 28823, - "nightly": 28868, - "nightmare": 12867, - "nightmares": 24032, - "nightout": 44257, - "nights": 4296, - "nighttime": 38147, - "nightw": 39956, - "nih": 25783, - "nik": 5126, - "nik": 13705, - "nike": 16300, - "nike": 5783, - "nikeplus": 43154, - "niki": 36136, - "nikita": 37118, - "nikk": 38596, - "nikki": 23156, - "nikki": 16689, - "niko": 43771, - "nikol": 27430, - "nikola": 42146, - "nikon": 25488, - "nikon": 13849, - "nikov": 43960, - "nil": 16852, - "nil": 35030, - "nile": 24252, - "nim": 30402, - "nim": 42093, - "nima": 42586, - "nin": 5794, - "nin": 14145, - "nina": 13891, - "nine": 16213, - "nine": 7330, - "ninety": 48214, - "ning": 6050, - "ning": 762, - "ningham": 23395, - "ningly": 43537, - "nings": 4588, - "nington": 26214, - "ninj": 23225, - "ninja": 11969, - "ninjas": 42796, - "nino": 25633, - "ninten": 6184, - "nintendo": 13969, - "nintendo": 7886, - "nintendoswitch": 16404, - "ninth": 22770, - "nip": 33889, - "nip": 22333, - "nipp": 24634, - "nipple": 45987, - "nipples": 44774, - "nippon": 47960, - "nips": 49241, - "nir": 15503, - "nir": 40057, - "nireland": 45763, - "niro": 47373, - "nirvana": 28300, - "nis": 5609, - "nis": 3786, - "nish": 19834, - "nish": 13256, - "nished": 24141, - "nishi": 32386, - "nishings": 49247, - "nison": 45700, - "niss": 39043, - "nissan": 37635, - "nissan": 11082, - "nist": 17782, - "nister": 36640, - "nit": 4087, - "nit": 19011, - "nite": 8427, - "niti": 43964, - "niti": 45355, - "nitin": 37529, - "nitro": 30726, - "nitrogen": 30706, - "niture": 7840, - "nity": 12707, - "niu": 48187, - "niv": 47300, - "niversary": 29643, - "nix": 48552, - "nix": 32278, - "nixon": 20671, - "nj": 8343, - "nj": 6672, - "njcaa": 48992, - "njpw": 38992, - "nk": 22708, - "nk": 17456, - "nko": 36353, - "nl": 12057, - "nl": 7655, - "nli": 37502, - "nlp": 35680, - "nlwx": 49260, - "nm": 15956, - "nm": 11370, - "nmd": 43331, - "nme": 40454, - "nmwx": 47967, - "nn": 8947, - "nn": 12925, - "nnn": 26277, - "nnnn": 41420, - "no": 578, - "no": 871, - "noaa": 27557, - "noah": 28806, - "noah": 11519, - "nobel": 33742, - "nobel": 15605, - "nobelprize": 46074, - "noble": 29430, - "noble": 12051, - "nobody": 7009, - "noc": 16988, - "noc": 44420, - "nocchi": 46359, - "noch": 38672, - "noche": 29689, - "noches": 44166, - "nock": 16993, - "noctur": 26291, - "nocturnal": 41738, - "nod": 18648, - "nodapl": 39079, - "node": 31434, - "node": 24871, - "nodejs": 39262, - "nodes": 40534, - "noel": 38406, - "noel": 17496, - "nof": 29505, - "noff": 46979, - "nofilter": 16418, - "nog": 31157, - "noh": 40775, - "noi": 43115, - "noi": 39889, - "noida": 33404, - "noir": 39291, - "noir": 12953, - "nois": 22057, - "noise": 41018, - "noise": 9307, - "noises": 31575, - "noisse": 45686, - "noisy": 33495, - "nokia": 17731, - "nol": 8055, - "nola": 13289, - "nolan": 17323, - "nold": 40322, - "nole": 34654, - "noles": 40569, - "nollywood": 43145, - "nology": 42221, - "nom": 2981, - "nom": 12799, - "nomad": 27849, - "noman": 45592, - "nomin": 5643, - "nominate": 17122, - "nominated": 8710, - "nominating": 45747, - "nomination": 14136, - "nominations": 17124, - "nominee": 14122, - "nominees": 17873, - "nomnom": 26962, - "nomore": 35126, - "noms": 35706, - "non": 4282, - "non": 3353, - "none": 29644, - "none": 8906, - "nonetheless": 39675, - "nonfiction": 31654, - "nonprofit": 19315, - "nonprofits": 37935, - "nonsense": 19136, - "nonstop": 30300, - "nont": 25207, - "noo": 6759, - "noo": 46672, - "noodle": 19521, - "noodles": 15782, - "nook": 30088, - "noon": 37693, - "noon": 2347, - "noor": 46978, - "noor": 31323, - "nope": 15625, - "nor": 1062, - "nor": 6190, - "nora": 25890, - "norcal": 41970, - "nord": 19261, - "nord": 36067, - "nordic": 36439, - "nordic": 20734, - "nordstrom": 38562, - "norfolk": 30232, - "norfolk": 12202, - "norm": 10990, - "norm": 22457, - "norma": 35757, - "normal": 28748, - "normal": 5967, - "normali": 45157, - "normally": 15870, - "norman": 22027, - "norman": 11338, - "normandy": 23840, - "normani": 44596, - "norms": 33011, - "norris": 21814, - "norse": 36559, - "norte": 35638, - "north": 3468, - "north": 2188, - "northampton": 49246, - "northampton": 26175, - "northan": 37081, - "northbound": 24228, - "northcarolina": 43386, - "northe": 24675, - "northeast": 42673, - "northeast": 13009, - "northeastern": 28297, - "northeasthour": 42869, - "norther": 26908, - "northern": 17210, - "northern": 5049, - "northernlights": 48940, - "northkorea": 38495, - "northside": 45957, - "northumber": 22295, - "northumberland": 22922, - "northwales": 49371, - "northwest": 12894, - "northwestern": 23685, - "norton": 18032, - "norway": 8780, - "norwe": 14414, - "norwegian": 15971, - "norwich": 37629, - "norwich": 15812, - "norwood": 37889, - "nos": 13420, - "nose": 24192, - "nose": 8231, - "noses": 48163, - "nostal": 12076, - "nostalgia": 16622, - "nostalgic": 24468, - "not": 2534, - "not": 783, - "notable": 22023, - "notch": 19476, - "notdead": 42059, - "note": 10910, - "note": 3246, - "notebook": 16365, - "notebooks": 37623, - "noted": 22501, - "notes": 5795, - "nothin": 24291, - "nothing": 28412, - "nothing": 2586, - "noti": 10686, - "notic": 6915, - "notice": 6683, - "noticeable": 40857, - "noticed": 9324, - "notices": 33459, - "noticias": 47759, - "noticing": 37571, - "notification": 22512, - "notifications": 23169, - "notified": 39454, - "noting": 38649, - "notion": 37856, - "notjust": 33212, - "notjustlakes": 45803, - "notmy": 39301, - "noto": 29878, - "noton": 48258, - "notor": 21711, - "notori": 44065, - "notorious": 22489, - "notre": 24397, - "notre": 15306, - "notredame": 34077, - "notsorry": 34361, - "nott": 9333, - "nott": 34989, - "notte": 47308, - "nottingham": 12852, - "notts": 25598, - "nou": 8751, - "nou": 30953, - "noun": 33663, - "nouri": 23796, - "nourish": 46025, - "nourished": 48354, - "nous": 29485, - "nouveau": 29948, - "nouvel": 34215, - "nov": 2264, - "nov": 4293, - "nova": 11236, - "novak": 26465, - "novasco": 33785, - "novascotia": 34744, - "novation": 39753, - "nove": 30507, - "novel": 15044, - "novel": 6080, - "novelist": 27314, - "novella": 42770, - "novels": 16040, - "novelty": 37750, - "november": 3680, - "nover": 37465, - "novi": 47957, - "novice": 33743, - "novo": 27504, - "novo": 36581, - "now": 2040, - "now": 692, - "nowadays": 26155, - "nowhere": 14108, - "nowplaying": 3708, - "nowwatching": 30852, - "nox": 27406, - "noxi": 39304, - "noxious": 42833, - "noy": 32787, - "np": 18205, - "np": 6314, - "npa": 42378, - "npc": 33966, - "npr": 39941, - "npr": 24078, - "nps": 22025, - "npt": 47231, - "nr": 6574, - "nr": 9713, - "nra": 17286, - "nrc": 45786, - "nrf": 47982, - "nrg": 48662, - "nrl": 27142, - "nrl": 18127, - "ns": 12405, - "ns": 1373, - "nsa": 23004, - "nsc": 32792, - "nsd": 36659, - "nsf": 34180, - "nsfw": 19847, - "nsi": 47824, - "nsw": 21301, - "nsw": 11693, - "nswpol": 44434, - "nt": 10902, - "nt": 3207, - "ntr": 30845, - "nts": 43775, - "ntt": 22859, - "ntv": 24807, - "ntv": 45304, - "nu": 1156, - "nu": 9444, - "nucle": 25693, - "nuclear": 34136, - "nuclear": 7279, - "nude": 16630, - "nudes": 32122, - "nue": 22834, - "nuestra": 45649, - "nuestro": 38590, - "nuev": 47861, - "nueva": 48810, - "nuevo": 30265, - "nufc": 15720, - "nuff": 37324, - "nug": 13471, - "nugent": 47457, - "nugget": 25448, - "nuggets": 18970, - "nuh": 45950, - "nuit": 38815, - "nuk": 39228, - "nuke": 39399, - "nul": 29358, - "null": 47376, - "num": 17896, - "num": 30534, - "numb": 34639, - "numb": 39427, - "number": 44078, - "number": 2842, - "numbered": 25975, - "numbers": 6121, - "numer": 11442, - "numerous": 17082, - "numis": 39100, - "nun": 12511, - "nun": 28540, - "nunavut": 48626, - "nunes": 40697, - "nuns": 44061, - "nup": 46757, - "nur": 3920, - "nur": 33493, - "nure": 42480, - "nurse": 37547, - "nurse": 10058, - "nursery": 15540, - "nurses": 12938, - "nursing": 11126, - "nurture": 38865, - "nurturing": 45229, - "nus": 25157, - "nus": 18239, - "nut": 10358, - "nut": 6491, - "nutcracker": 36733, - "nutella": 27312, - "nutr": 6198, - "nutri": 15470, - "nutrient": 32900, - "nutrients": 24668, - "nutriti": 17978, - "nutrition": 41546, - "nutrition": 7989, - "nutritional": 26457, - "nutritious": 30387, - "nuts": 8644, - "nutshell": 26659, - "nutty": 39846, - "nv": 17217, - "nv": 16985, - "nvi": 22847, - "nvidia": 27325, - "nw": 7826, - "nw": 7030, - "nwa": 34237, - "nwo": 40976, - "nws": 23333, - "nws": 30998, - "nwsl": 48394, - "nwt": 25029, - "nx": 18810, - "nx": 16997, - "nxt": 35037, - "nxt": 17804, - "ny": 1383, - "ny": 1350, - "nya": 24165, - "nyc": 13304, - "nyc": 2832, - "nycc": 27187, - "nycfc": 47497, - "nye": 40723, - "nye": 13416, - "nyfw": 21089, - "nyk": 46841, - "nylon": 25915, - "nyo": 41534, - "nyo": 44586, - "nypd": 42293, - "nypd": 18279, - "nyr": 32538, - "nyrd": 47936, - "nys": 36375, - "nys": 23423, - "nyse": 32650, - "nyt": 46311, - "nyt": 12816, - "nytimes": 13772, - "nyu": 43143, - "nyu": 31355, - "nz": 10142, - "nz": 7082, - "o": 78, - "o": 334, - "oa": 11994, - "oahu": 37790, - "oak": 6010, - "oak": 7221, - "oakland": 42663, - "oakland": 12077, - "oakley": 27810, - "oaks": 16734, - "oakville": 38500, - "oasis": 18185, - "oat": 20095, - "oat": 34132, - "oates": 47094, - "oath": 20108, - "oatmeal": 26374, - "oats": 24150, - "oax": 43090, - "oaxaca": 47818, - "ob": 1411, - "ob": 14908, - "oba": 42902, - "oba": 15147, - "obam": 13174, - "obama": 4276, - "obamacare": 18005, - "obe": 11897, - "obe": 29117, - "obedience": 48921, - "ober": 15284, - "obese": 41757, - "obesity": 19499, - "obey": 26926, - "obi": 21454, - "obi": 18414, - "obile": 20513, - "obitu": 39218, - "obituary": 43580, - "objec": 7970, - "object": 14115, - "objective": 23663, - "objectives": 30238, - "objects": 13770, - "obl": 31452, - "oblast": 42672, - "obli": 11416, - "obligation": 34473, - "obligations": 38232, - "obligatory": 35020, - "oblivion": 45323, - "obo": 46001, - "obo": 26618, - "obrien": 31946, - "obs": 39162, - "obsc": 20392, - "obscure": 33337, - "obse": 8433, - "observ": 9050, - "observation": 20250, - "observations": 27409, - "observatory": 21236, - "observe": 23217, - "observed": 21267, - "observer": 22077, - "observers": 47544, - "observing": 28359, - "obsessed": 9744, - "obsession": 15718, - "obsi": 47323, - "obsole": 35561, - "obsolete": 40628, - "obst": 29398, - "obstac": 24075, - "obstacle": 29751, - "obstacles": 24480, - "obste": 49103, - "obstru": 44876, - "obstruc": 38762, - "obstruction": 40240, - "obtain": 26555, - "obtained": 29322, - "obvious": 13959, - "obviously": 10068, - "oc": 1566, - "oc": 6603, - "oca": 31120, - "ocal": 38148, - "occ": 43940, - "occa": 8530, - "occasion": 12280, - "occasional": 33059, - "occasionally": 32479, - "occasions": 26154, - "occer": 20804, - "occi": 42994, - "occu": 7863, - "occult": 42529, - "occup": 11152, - "occupation": 18624, - "occupational": 30644, - "occupied": 17271, - "occupy": 22453, - "occupy": 24210, - "occur": 11264, - "occur": 21813, - "occurred": 19850, - "occurrence": 40615, - "occurring": 31335, - "occurs": 26563, - "ocd": 35904, - "oce": 3509, - "ocean": 12941, - "ocean": 4918, - "oceans": 16792, - "och": 29334, - "och": 32011, - "oche": 33045, - "oci": 9891, - "ocity": 46039, - "ock": 33579, - "ock": 21313, - "ocks": 22410, - "oclock": 36274, - "oco": 32553, - "ocon": 33090, - "ocr": 45813, - "ocre": 40320, - "ocs": 27297, - "oct": 4565, - "octa": 23444, - "octag": 37768, - "octagon": 49167, - "octane": 43040, - "octavia": 47416, - "octo": 31032, - "october": 3481, - "octopus": 22327, - "ocu": 22709, - "oculus": 30082, - "od": 4886, - "od": 9719, - "oda": 24777, - "oday": 41954, - "odd": 15525, - "odd": 11387, - "oddly": 34213, - "odds": 11555, - "ode": 19125, - "ode": 19639, - "odell": 41556, - "odessa": 43574, - "odi": 12223, - "odi": 18853, - "odin": 35175, - "odisha": 15737, - "odo": 49188, - "odo": 40993, - "odor": 39509, - "odu": 35095, - "odu": 39904, - "odyssey": 19991, - "oe": 24251, - "oe": 11667, - "oec": 24288, - "oecd": 30816, - "oem": 29650, - "oes": 3643, - "of": 684, - "of": 539, - "ofa": 29774, - "ofc": 19877, - "ofe": 30000, - "ofer": 47322, - "off": 892, - "off": 1007, - "offe": 8261, - "offee": 34059, - "offen": 7231, - "offence": 34594, - "offences": 33972, - "offended": 30765, - "offender": 48294, - "offenders": 35878, - "offense": 15253, - "offensive": 11037, - "offer": 20607, - "offer": 3271, - "offered": 9395, - "offering": 6896, - "offerings": 24535, - "offers": 4679, - "offic": 3276, - "office": 18033, - "office": 2171, - "officeof": 38750, - "officeofrg": 47100, - "officer": 4683, - "officers": 6335, - "offices": 10933, - "offici": 1401, - "official": 5768, - "official": 1868, - "officially": 4226, - "officials": 7658, - "officiel": 26548, - "offl": 16851, - "offline": 22724, - "offro": 32198, - "offroad": 37173, - "offs": 23987, - "offseason": 25485, - "offset": 28843, - "offshore": 15496, - "offside": 49347, - "offspring": 38635, - "offthe": 38189, - "ofi": 36692, - "ofi": 49090, - "oficial": 18061, - "oft": 16693, - "oftball": 39768, - "often": 4864, - "ofthe": 7592, - "oftheday": 6988, - "oftheweek": 20654, - "oftheyear": 33975, - "og": 11542, - "og": 8555, - "oga": 47312, - "ogden": 42011, - "ogil": 39013, - "ography": 22399, - "ogue": 24761, - "ogun": 48970, - "oh": 5648, - "oh": 1779, - "ohana": 48330, - "ohh": 23076, - "ohhh": 27697, - "ohhhh": 40201, - "ohi": 5207, - "ohio": 18951, - "ohio": 6155, - "ohiostate": 41324, - "ohl": 45547, - "ohl": 41095, - "ohmy": 29758, - "ohn": 48043, - "ohs": 39542, - "ohwx": 47993, - "oi": 27357, - "oi": 13934, - "oic": 45554, - "oid": 14758, - "oids": 21847, - "oil": 11973, - "oil": 2870, - "oiland": 32316, - "oilandgas": 34130, - "oilers": 21627, - "oilpainting": 34279, - "oils": 17886, - "oily": 47550, - "oir": 48079, - "oir": 37113, - "ois": 23262, - "oit": 18453, - "oitnb": 34865, - "oj": 30986, - "oj": 34553, - "ok": 1944, - "ok": 2481, - "oka": 42258, - "oka": 19092, - "okan": 41263, - "okanagan": 43233, - "okay": 4917, - "okc": 42418, - "okc": 18357, - "oke": 26636, - "oke": 23598, - "oki": 20390, - "okin": 30687, - "okinawa": 35877, - "okla": 9431, - "oklahoma": 10170, - "oko": 26892, - "oko": 26095, - "okstate": 36356, - "oktoberfest": 32026, - "oku": 45010, - "oku": 43829, - "okwx": 27336, - "ol": 562, - "ol": 2985, - "ola": 20499, - "ola": 3373, - "olaf": 39709, - "olan": 48489, - "olan": 24227, - "oland": 26452, - "olas": 40800, - "old": 4931, - "old": 896, - "olde": 37731, - "older": 7700, - "oldest": 9285, - "oldham": 29929, - "oldie": 35280, - "oldies": 36278, - "oldman": 48614, - "olds": 8580, - "oldschool": 44384, - "oldschool": 25133, - "oldsmobile": 45396, - "ole": 9089, - "ole": 1947, - "oled": 46768, - "oler": 24069, - "oles": 16962, - "olf": 16346, - "olga": 34779, - "oli": 3811, - "oli": 8810, - "olic": 31341, - "oligar": 46185, - "olim": 47769, - "olin": 37823, - "olin": 18283, - "olina": 34711, - "oline": 17441, - "oling": 38033, - "olini": 36040, - "olis": 49397, - "olithic": 35574, - "olive": 22486, - "olive": 9898, - "oliver": 22882, - "oliver": 9261, - "olives": 27149, - "olivi": 20773, - "olivia": 11697, - "olivier": 23891, - "oll": 32270, - "oll": 15510, - "olla": 31908, - "ollie": 24434, - "olls": 42697, - "olly": 23998, - "olo": 14628, - "olo": 7606, - "ological": 12345, - "ologist": 23442, - "ologists": 30912, - "ology": 4627, - "olor": 29245, - "olph": 25077, - "ols": 2236, - "olsen": 26307, - "olson": 28046, - "olt": 46252, - "olu": 16502, - "olu": 46302, - "olulu": 27645, - "oly": 20323, - "oly": 24823, - "olym": 3594, - "olympi": 13597, - "olympia": 23965, - "olympiad": 47694, - "olympian": 25420, - "olympians": 44583, - "olympic": 26099, - "olympic": 6388, - "olympics": 7629, - "olympus": 30960, - "om": 547, - "om": 3932, - "oma": 44603, - "oma": 5358, - "omaha": 16509, - "oman": 22088, - "oman": 10871, - "omar": 19488, - "omar": 13367, - "omars": 37099, - "omas": 36023, - "omat": 40788, - "omb": 34447, - "ombe": 35967, - "omd": 49346, - "ome": 3693, - "ome": 5832, - "omed": 16835, - "omega": 13465, - "omelette": 38789, - "omen": 9969, - "omen": 25469, - "oment": 43683, - "omeo": 39844, - "omer": 24087, - "omer": 17902, - "omes": 25736, - "ometer": 20060, - "ometric": 38702, - "omez": 12541, - "omf": 47496, - "omfg": 12523, - "omg": 35233, - "omg": 3186, - "omi": 24097, - "omi": 10341, - "omic": 40536, - "omic": 12793, - "omics": 15138, - "omile": 46915, - "omin": 16457, - "omination": 42571, - "oming": 10796, - "ominous": 40914, - "omni": 18793, - "omni": 39489, - "omnibus": 44760, - "omnic": 48383, - "omo": 14478, - "omo": 11066, - "omon": 48758, - "omor": 29431, - "oms": 3770, - "omusic": 38965, - "omy": 40805, - "omy": 6884, - "on": 521, - "on": 525, - "ona": 2687, - "onair": 29511, - "onal": 918, - "onboard": 21689, - "once": 16331, - "once": 2654, - "onceupon": 28122, - "onceuponatime": 33505, - "onco": 46700, - "oncology": 24593, - "ond": 27918, - "ond": 2636, - "onda": 32643, - "onday": 29864, - "onde": 44532, - "ondo": 29529, - "ondon": 42043, - "ondon": 11851, - "one": 1980, - "one": 637, - "onec": 27746, - "oned": 28012, - "oned": 4698, - "onedirection": 16245, - "onee": 44433, - "oneill": 44808, - "onelove": 47417, - "onent": 12147, - "onents": 11709, - "oneof": 48478, - "onep": 20440, - "onepiece": 43153, - "oneplus": 25981, - "oner": 30055, - "oner": 6071, - "oners": 12324, - "ones": 20757, - "ones": 1575, - "oneself": 46874, - "onesie": 33237, - "oness": 25379, - "onet": 36058, - "oneteam": 41094, - "onetsy": 33392, - "onew": 43848, - "onews": 18696, - "onex": 49116, - "oney": 44498, - "oney": 9408, - "onf": 41790, - "onfox": 29874, - "ong": 2787, - "ong": 846, - "onga": 30259, - "ongchang": 35071, - "ongi": 21754, - "ongo": 31226, - "ongoing": 10393, - "ongs": 12143, - "oni": 4385, - "oni": 8048, - "onia": 8001, - "onial": 27599, - "onian": 21090, - "onic": 15838, - "onic": 3711, - "onica": 14631, - "onics": 9779, - "onie": 35249, - "onies": 22601, - "onimo": 41271, - "oning": 5197, - "onion": 10985, - "onions": 15255, - "onist": 10099, - "onists": 19659, - "onix": 27370, - "onized": 43657, - "onlin": 31103, - "online": 12940, - "online": 2027, - "onlinemarketing": 41820, - "onlineshopping": 38587, - "only": 11646, - "only": 1033, - "onlyin": 32947, - "onna": 25438, - "onna": 35458, - "onnaise": 48934, - "onne": 23466, - "onnell": 45613, - "ono": 28165, - "ono": 14388, - "onom": 48014, - "onomy": 36873, - "onpoli": 20708, - "ons": 26076, - "ons": 708, - "onsale": 36324, - "onset": 30527, - "onsite": 37336, - "onstage": 21821, - "onstorm": 49333, - "ont": 34303, - "ont": 11157, - "ontari": 6739, - "ontario": 42766, - "ontario": 7436, - "onte": 34723, - "onthe": 12241, - "onther": 46563, - "ontheroad": 47516, - "onthisday": 6862, - "onto": 11745, - "onto": 3141, - "ontology": 37364, - "ontour": 32155, - "onu": 44142, - "onward": 34827, - "onwards": 20682, - "ony": 9490, - "ony": 2926, - "onym": 11483, - "onymous": 13038, - "onyx": 31353, - "oo": 574, - "oo": 2822, - "ood": 16429, - "ood": 738, - "oodle": 45289, - "oods": 44660, - "oof": 42270, - "ooh": 16806, - "ook": 22326, - "ook": 8394, - "ooks": 31082, - "ool": 37702, - "ool": 929, - "oom": 22786, - "oom": 15002, - "oomf": 40607, - "oon": 35651, - "oon": 7100, - "ooo": 9571, - "oooh": 28927, - "oooo": 4002, - "oooo": 13643, - "ooooo": 12532, - "oooooo": 43590, - "oooooo": 20372, - "ooooooo": 30859, - "oooooooo": 15473, - "oooooooo": 43408, - "oooooooooooooooo": 48645, - "oop": 7326, - "ooper": 39906, - "oops": 9116, - "oor": 35239, - "oos": 9896, - "oosa": 30834, - "oose": 38941, - "oot": 17667, - "ootball": 28914, - "ootd": 16547, - "ooth": 12682, - "oott": 34316, - "ooza": 22809, - "op": 676, - "op": 3691, - "opa": 28949, - "opal": 28982, - "opar": 18167, - "opath": 33079, - "opathic": 37521, - "opathy": 28466, - "opau": 27239, - "opd": 38288, - "ope": 31694, - "ope": 11440, - "opec": 33138, - "opel": 36952, - "open": 3647, - "open": 1488, - "openaccess": 26591, - "opend": 28069, - "opendata": 35709, - "openday": 46991, - "opened": 5303, - "opener": 8998, - "openhouse": 36091, - "opening": 33728, - "opening": 2516, - "openingday": 36359, - "openings": 27643, - "openly": 23005, - "opens": 4801, - "opensource": 29930, - "oper": 2796, - "oper": 37533, - "opera": 8056, - "operate": 19306, - "operated": 23031, - "operates": 38675, - "operating": 12218, - "operation": 27173, - "operation": 7639, - "operational": 18237, - "operations": 8106, - "operative": 28380, - "operator": 15972, - "operators": 19267, - "opers": 48728, - "opes": 37258, - "oph": 6796, - "opha": 38634, - "ophel": 45017, - "ophelia": 49118, - "ophi": 44547, - "ophile": 35915, - "opho": 12900, - "ophobia": 21111, - "ophobic": 29934, - "ophon": 25120, - "ophone": 26345, - "ophthal": 33135, - "ophy": 28539, - "opi": 40056, - "opi": 48994, - "opin": 7636, - "opini": 14825, - "opinion": 7843, - "opinions": 16192, - "opio": 17371, - "opioid": 22833, - "opioids": 47578, - "opla": 36270, - "ople": 25663, - "opol": 15173, - "opoly": 23729, - "opor": 39650, - "opoulos": 42020, - "opp": 2020, - "opp": 21024, - "oppa": 23637, - "oppo": 7399, - "oppo": 41770, - "opponent": 17002, - "opponents": 19664, - "oppor": 2914, - "opportun": 2939, - "opportunities": 5978, - "opportunity": 4004, - "oppos": 10091, - "oppose": 23617, - "opposed": 22509, - "opposes": 47471, - "opposing": 24376, - "opposite": 12872, - "opposition": 11062, - "oppre": 17341, - "oppressed": 41492, - "oppression": 30650, - "opra": 28291, - "oprah": 22562, - "opry": 35340, - "ops": 3054, - "opt": 45103, - "opt": 27188, - "opted": 42035, - "opti": 6580, - "optic": 25190, - "optic": 24755, - "optical": 16822, - "optics": 27165, - "optim": 22331, - "optimal": 25235, - "optimi": 9737, - "optimis": 39459, - "optimism": 25226, - "optimist": 44581, - "optimistic": 23104, - "optimization": 25125, - "optimize": 30456, - "optimized": 43939, - "optimizing": 49157, - "optimum": 35974, - "optimus": 43453, - "option": 8464, - "optional": 25411, - "options": 7063, - "optome": 35533, - "opul": 39858, - "opus": 33295, - "opy": 21835, - "or": 523, - "or": 541, - "ora": 4301, - "orac": 24673, - "oracle": 37308, - "oracle": 15966, - "orah": 40820, - "orail": 45120, - "oral": 32490, - "oral": 6007, - "orama": 33619, - "oran": 32209, - "oran": 28395, - "orang": 22116, - "orange": 13957, - "orange": 4287, - "oranges": 32417, - "orangu": 36112, - "orb": 28894, - "orb": 36958, - "orbit": 19713, - "orbital": 40312, - "orc": 44305, - "orca": 18631, - "orcas": 47676, - "orch": 11893, - "orchar": 40226, - "orchard": 19530, - "orche": 8004, - "orchestr": 42937, - "orchestra": 9573, - "orchestral": 40285, - "orchi": 23696, - "orchid": 18678, - "orchids": 28376, - "ord": 26903, - "ord": 11502, - "orda": 33462, - "ordained": 38302, - "order": 24613, - "order": 2191, - "ordered": 8335, - "ordering": 19588, - "orderly": 43457, - "orders": 6187, - "ordin": 4378, - "ordinance": 38583, - "ordinary": 8012, - "ore": 3580, - "ore": 1423, - "orean": 36696, - "ored": 5133, - "oregon": 21759, - "oregon": 8035, - "oren": 21645, - "oreo": 21873, - "oreos": 41688, - "ores": 17328, - "org": 3401, - "org": 5593, - "organ": 3338, - "organ": 13213, - "organi": 3636, - "organic": 24080, - "organic": 5980, - "organics": 44199, - "organis": 13204, - "organisation": 15868, - "organisations": 20651, - "organise": 36073, - "organised": 13191, - "organiser": 49141, - "organisers": 35778, - "organising": 22787, - "organisms": 37041, - "organiz": 11107, - "organization": 8064, - "organizational": 29510, - "organizations": 13453, - "organize": 19973, - "organized": 10681, - "organizer": 23905, - "organizers": 27191, - "organizing": 15779, - "organs": 29872, - "orgs": 29500, - "ori": 1540, - "ori": 8693, - "oria": 11474, - "orial": 8648, - "orian": 21193, - "oric": 43810, - "orice": 41341, - "orie": 18815, - "orient": 13149, - "orient": 30770, - "oriental": 23056, - "orientation": 16873, - "oriente": 40390, - "oriented": 24596, - "orienteering": 42985, - "ories": 5934, - "orig": 2273, - "orig": 38463, - "origami": 31832, - "origin": 2555, - "origin": 12372, - "original": 18496, - "original": 3117, - "originally": 12849, - "originals": 16953, - "originated": 41823, - "origins": 16291, - "orin": 39863, - "oring": 3006, - "orio": 24308, - "orioles": 21430, - "orion": 21765, - "oris": 37064, - "orities": 7903, - "ority": 5556, - "orium": 12015, - "ork": 22202, - "ork": 37235, - "orkney": 34254, - "orl": 39465, - "orlando": 32247, - "orlando": 7827, - "orleans": 11127, - "orm": 38464, - "orn": 25412, - "orn": 8130, - "ornam": 36122, - "ornament": 23409, - "ornamental": 46270, - "ornaments": 28968, - "ornate": 46865, - "orni": 27713, - "ornithology": 38275, - "orns": 19340, - "oro": 9848, - "oro": 14573, - "orous": 19286, - "orph": 17318, - "orphan": 22718, - "orphan": 28994, - "orphanage": 45196, - "orphaned": 46792, - "orphans": 36588, - "orphe": 39186, - "orr": 32977, - "ors": 1127, - "orship": 20846, - "ort": 1019, - "ortega": 39727, - "orth": 22584, - "orth": 24461, - "ortho": 11366, - "orthodon": 37730, - "orthodox": 19008, - "orthop": 42123, - "orthopedic": 49341, - "ortiz": 23544, - "orton": 37238, - "oru": 44629, - "oru": 31281, - "orum": 42724, - "orwell": 41218, - "ory": 16983, - "ory": 1985, - "os": 2211, - "os": 1299, - "osa": 16340, - "osa": 17237, - "osaka": 21347, - "osborne": 22402, - "osbourne": 43376, - "osc": 5092, - "oscar": 21157, - "oscar": 8191, - "oscars": 11098, - "osce": 37303, - "oscill": 38272, - "ose": 46942, - "ose": 22541, - "osh": 30717, - "osh": 35011, - "osha": 33907, - "oshi": 34770, - "osi": 25247, - "osi": 17636, - "osis": 13903, - "osity": 12730, - "oslo": 20547, - "osm": 31626, - "osman": 46539, - "oso": 42793, - "oso": 21285, - "osp": 24387, - "ospre": 49001, - "osprey": 37893, - "oss": 29362, - "oss": 34640, - "ost": 23701, - "ost": 18749, - "oste": 20632, - "osteo": 43163, - "oster": 31781, - "ostr": 33673, - "ostrich": 47640, - "osu": 29480, - "osu": 19818, - "oswald": 38471, - "ot": 1863, - "ot": 2062, - "ota": 17509, - "ota": 8741, - "otago": 45919, - "otaku": 40743, - "otas": 47616, - "otc": 37934, - "otd": 5683, - "ote": 28511, - "ote": 19744, - "otes": 27280, - "oth": 33262, - "oth": 33519, - "other": 9758, - "other": 1010, - "others": 3326, - "otherwise": 12376, - "oti": 19567, - "oti": 45564, - "otic": 9671, - "otis": 28246, - "otive": 10877, - "oto": 23946, - "oto": 23399, - "otp": 29822, - "otr": 38685, - "ots": 5769, - "ott": 10167, - "ott": 7936, - "otta": 7623, - "otta": 20941, - "ottawa": 49027, - "ottawa": 9019, - "otte": 35214, - "otter": 34710, - "otter": 22456, - "otters": 38883, - "otti": 36721, - "ottnews": 33995, - "otto": 17730, - "ottoman": 27503, - "otw": 35259, - "otwol": 46868, - "ou": 520, - "ou": 6544, - "ouat": 32954, - "ouch": 13493, - "oud": 1359, - "oue": 48838, - "ouf": 34618, - "ough": 4204, - "ough": 991, - "ought": 2253, - "oughton": 36860, - "oui": 39421, - "ouk": 21796, - "oul": 20253, - "oul": 8081, - "ould": 859, - "oulos": 32808, - "oun": 636, - "oun": 20960, - "ounce": 15027, - "ounces": 30299, - "ound": 2013, - "ound": 853, - "oundation": 40132, - "ounded": 9634, - "ounding": 11944, - "ounds": 2753, - "oung": 35875, - "oung": 25341, - "ounge": 29427, - "ount": 43801, - "ount": 4172, - "ounts": 10963, - "oup": 32815, - "our": 727, - "our": 581, - "oura": 29806, - "oura": 36352, - "ourable": 24126, - "ourage": 34525, - "oural": 45840, - "oured": 6956, - "ouri": 12696, - "ouring": 12000, - "ourism": 25496, - "ourke": 26480, - "ourlives": 37541, - "ouro": 41224, - "ours": 1491, - "ourse": 15415, - "ourselves": 10124, - "ourt": 22960, - "oury": 29484, - "ous": 1987, - "ous": 879, - "ouse": 32048, - "ouse": 7603, - "ouses": 33666, - "ously": 2501, - "ousness": 10689, - "ousy": 28302, - "out": 1130, - "out": 620, - "outa": 35187, - "outage": 27320, - "outages": 40353, - "outback": 28532, - "outbound": 41256, - "outbreak": 20103, - "outcome": 16552, - "outcomes": 14016, - "outdated": 38313, - "outdoor": 19184, - "outdoor": 6368, - "outdoors": 10469, - "oute": 44180, - "outed": 34435, - "outer": 30499, - "outer": 14188, - "outes": 39600, - "outfield": 41826, - "outfit": 6525, - "outfits": 16366, - "outfitters": 37725, - "outfy": 34920, - "outgoing": 27302, - "outh": 16933, - "outh": 8111, - "outine": 35452, - "outing": 11251, - "outlander": 45820, - "outlander": 17095, - "outlaw": 37498, - "outlaw": 27340, - "outlaws": 30935, - "outlet": 16855, - "outlets": 20822, - "outline": 26894, - "outlines": 29159, - "outlining": 45960, - "outlook": 12983, - "outof": 43958, - "outpatient": 46603, - "outpost": 44622, - "output": 17255, - "outra": 14262, - "outrage": 23577, - "outraged": 43402, - "outrageous": 29342, - "outre": 14373, - "outreach": 15297, - "outright": 38200, - "outs": 5790, - "outsi": 22515, - "outside": 47693, - "outside": 2782, - "outsider": 41196, - "outsiders": 41742, - "outskirts": 42088, - "outsourcing": 34543, - "outstanding": 6387, - "outta": 15807, - "outtuesday": 48692, - "outw": 34650, - "oux": 40960, - "oux": 14228, - "ov": 6420, - "ov": 8479, - "ova": 12762, - "oval": 15039, - "ovarian": 42913, - "ovation": 24333, - "ove": 8649, - "ove": 15456, - "oven": 44620, - "oven": 12579, - "over": 1658, - "over": 962, - "overall": 6914, - "overboard": 42982, - "overcame": 47235, - "overcast": 36942, - "overcome": 14365, - "overcoming": 29348, - "overdose": 27017, - "overdrive": 40088, - "overdue": 30240, - "overflow": 32885, - "overflowing": 45370, - "overhaul": 31531, - "overhead": 20321, - "overland": 38808, - "overlay": 44827, - "overload": 24327, - "overlook": 35767, - "overlooked": 27632, - "overlooking": 17319, - "overly": 28820, - "overnight": 9913, - "overpass": 44310, - "overrated": 38214, - "overs": 45774, - "overs": 17329, - "overseas": 15100, - "oversight": 32494, - "oversized": 31557, - "overtime": 19347, - "overturned": 31048, - "overview": 14789, - "overwatch": 18124, - "overweight": 43465, - "overwhel": 12204, - "overwhelmed": 23459, - "overwhelming": 20306, - "overwhelmingly": 43549, - "ovi": 32508, - "ovic": 22417, - "ovich": 27623, - "ovie": 47677, - "ovo": 41920, - "ovo": 18065, - "ovski": 26167, - "ow": 2032, - "ow": 2250, - "owa": 32770, - "owe": 19073, - "owed": 37641, - "owen": 24838, - "owen": 12056, - "owens": 20664, - "owes": 35069, - "owing": 48582, - "owl": 34332, - "owl": 9899, - "owls": 18247, - "own": 3845, - "own": 1758, - "owned": 8536, - "owner": 5019, - "owners": 7712, - "ownership": 16583, - "owning": 24661, - "owns": 17533, - "owo": 46142, - "ows": 27423, - "owski": 22573, - "ox": 3282, - "ox": 12071, - "oxfam": 45466, - "oxford": 28588, - "oxford": 8824, - "oxfordshire": 37855, - "oxi": 33731, - "oxi": 48147, - "oxid": 17701, - "oxide": 28235, - "oxo": 37088, - "oxy": 12432, - "oxygen": 16214, - "oy": 6638, - "oy": 12437, - "oya": 38894, - "oye": 48677, - "oyster": 40545, - "oyster": 17253, - "oysters": 22672, - "oz": 10584, - "oz": 6044, - "ozar": 31848, - "ozil": 41365, - "ozone": 37052, - "ozzy": 39549, - "p": 79, - "p": 335, - "pa": 765, - "pa": 2217, - "paa": 32812, - "pab": 9354, - "pablo": 42172, - "pablo": 14473, - "pac": 2332, - "pac": 7608, - "pace": 40600, - "pace": 9450, - "paced": 32611, - "pacers": 23976, - "paces": 43001, - "paci": 5699, - "pacific": 19723, - "pacific": 6654, - "pacing": 45202, - "pack": 2711, - "pack": 3420, - "package": 7053, - "packaged": 29656, - "packages": 14305, - "packaging": 11658, - "packard": 46421, - "packed": 5883, - "packer": 28209, - "packers": 14294, - "packet": 25022, - "packets": 40448, - "packing": 9829, - "packs": 11086, - "paco": 41364, - "pacqui": 28456, - "pacquiao": 30485, - "pact": 27182, - "pad": 3798, - "pad": 7601, - "padded": 42253, - "paddington": 33162, - "paddle": 38276, - "paddle": 20811, - "paddling": 40645, - "paddock": 29590, - "paddy": 33103, - "paddy": 19855, - "padi": 47037, - "padilla": 22380, - "padma": 44595, - "padma": 46457, - "padre": 38343, - "padres": 22829, - "pads": 17353, - "paedi": 41488, - "paella": 46924, - "paf": 47185, - "pafc": 49259, - "pag": 4151, - "pag": 30525, - "pagan": 27854, - "page": 14996, - "page": 2504, - "pageant": 22139, - "pages": 8082, - "pagoda": 44309, - "pah": 41054, - "pah": 26884, - "pai": 20624, - "pai": 21198, - "paid": 5057, - "paige": 33659, - "paige": 16022, - "paign": 31796, - "pain": 2141, - "pain": 4495, - "paine": 38069, - "painful": 16361, - "pains": 25639, - "paint": 7948, - "paint": 5185, - "paintball": 39730, - "painted": 6433, - "painter": 10888, - "painters": 35703, - "painting": 49164, - "painting": 3086, - "paintings": 9956, - "paints": 21672, - "pair": 19848, - "pair": 4038, - "paired": 12433, - "pairing": 16313, - "pairings": 41152, - "pairs": 9950, - "pais": 16878, - "paisley": 22954, - "pajam": 24110, - "pajama": 40244, - "pajamas": 37231, - "pak": 13186, - "pak": 9094, - "paki": 3438, - "pakistan": 10713, - "pakistan": 3994, - "pakistani": 14050, - "pakistanis": 45707, - "pakv": 38196, - "pal": 1850, - "pal": 3611, - "pala": 17895, - "palace": 6381, - "palaces": 45625, - "palad": 28371, - "palae": 43379, - "palais": 35673, - "palate": 34666, - "palawan": 48202, - "palazzo": 36006, - "pale": 4768, - "pale": 12518, - "paleo": 36741, - "paleo": 22198, - "paler": 38028, - "palermo": 40635, - "palestin": 9449, - "palestine": 11682, - "palestinian": 11764, - "palestinians": 21874, - "palette": 13901, - "pali": 48063, - "palin": 40153, - "palis": 44256, - "pality": 27296, - "pall": 35817, - "palla": 21208, - "palladium": 37888, - "pallet": 39057, - "palli": 28954, - "palliative": 46014, - "pally": 46073, - "palm": 19651, - "palm": 8612, - "palma": 29888, - "palmer": 40112, - "palmer": 13633, - "palms": 27059, - "palo": 31562, - "palom": 47698, - "palooza": 25861, - "pals": 11043, - "palsy": 46651, - "pam": 8228, - "pam": 18513, - "pamela": 26991, - "pamp": 37653, - "pamper": 44345, - "pamph": 41332, - "pan": 1072, - "pan": 7437, - "panam": 24606, - "panama": 15522, - "panas": 26207, - "panasonic": 29750, - "pancake": 18723, - "pancakes": 15308, - "panch": 27251, - "pancra": 42472, - "pancre": 27708, - "pancreatic": 49337, - "pancy": 41625, - "pand": 5631, - "panda": 12952, - "pandas": 35119, - "pande": 38419, - "pandey": 34895, - "pandit": 41191, - "pandor": 30250, - "pandora": 17727, - "pandoramusic": 42344, - "pane": 27470, - "panel": 3724, - "paneli": 19410, - "panelist": 39719, - "panelists": 24619, - "panels": 12735, - "panera": 48471, - "pang": 16756, - "pang": 23672, - "panhandle": 40919, - "pani": 36092, - "panic": 46671, - "panic": 14124, - "panini": 30410, - "pann": 42302, - "panna": 49065, - "pano": 36165, - "panor": 12962, - "panorama": 19763, - "panoramic": 22563, - "pans": 35204, - "pant": 22550, - "panther": 22825, - "panther": 13262, - "panthers": 10494, - "panties": 32515, - "panto": 28776, - "pantry": 25608, - "pants": 5003, - "panty": 44217, - "pany": 45567, - "panzer": 41159, - "pao": 33790, - "paola": 44689, - "paolo": 48488, - "paolo": 21133, - "pap": 1884, - "pap": 30756, - "papa": 12211, - "papar": 32782, - "paparazzi": 37842, - "papaya": 44098, - "paper": 8680, - "paper": 2802, - "paperback": 17928, - "papers": 8204, - "paperwork": 35785, - "papi": 35177, - "papp": 26361, - "paprika": 44793, - "papua": 32629, - "par": 699, - "par": 9163, - "para": 18355, - "para": 8976, - "parach": 23147, - "parachute": 30122, - "parad": 37143, - "parade": 5809, - "parades": 46479, - "paradi": 6658, - "paradig": 27786, - "paradigm": 33485, - "paradise": 45869, - "paradise": 7247, - "paradox": 33109, - "parag": 11866, - "paragon": 48099, - "paragra": 24903, - "paragraph": 28499, - "paragu": 38021, - "paraguay": 43579, - "paral": 15143, - "paralle": 13184, - "parallel": 18201, - "paralleled": 42520, - "parallels": 46101, - "paraly": 30255, - "paralym": 18727, - "paralympic": 30806, - "paralympics": 37162, - "paralysis": 45702, - "param": 12250, - "parame": 27106, - "paramedic": 34630, - "paramedics": 35991, - "parameters": 44890, - "paramore": 34401, - "paramount": 26642, - "parano": 30283, - "paranoid": 43029, - "paranor": 16940, - "paranormal": 19047, - "parap": 41091, - "paras": 15198, - "parasite": 42460, - "parasites": 46175, - "parc": 30914, - "parcel": 30367, - "parcels": 45589, - "pard": 18773, - "pardon": 47606, - "pardon": 26565, - "pare": 18202, - "pared": 5498, - "paren": 3106, - "parent": 47848, - "parent": 10183, - "parental": 28339, - "parenthood": 23887, - "parenting": 14529, - "parents": 3731, - "pares": 12420, - "parfait": 46140, - "pari": 17961, - "pari": 27979, - "paris": 13982, - "paris": 3445, - "parisagreement": 47405, - "parish": 47328, - "parish": 13020, - "parisi": 45081, - "parisian": 38512, - "parity": 42734, - "park": 4985, - "park": 1452, - "parked": 16487, - "parker": 31119, - "parker": 8365, - "parkin": 34868, - "parking": 5984, - "parkinson": 28129, - "parkland": 31287, - "parkrun": 25747, - "parks": 6873, - "parkway": 19882, - "parl": 30373, - "parl": 29897, - "parliam": 5941, - "parliament": 41599, - "parliament": 7151, - "parliamentary": 17912, - "parlor": 38253, - "parlour": 37829, - "parma": 36077, - "parme": 26295, - "parmesan": 27274, - "paro": 17429, - "parody": 24318, - "parole": 32158, - "parr": 44113, - "parrish": 43043, - "parrot": 23565, - "parry": 40604, - "parsley": 30077, - "parsons": 22505, - "part": 1872, - "part": 1551, - "parte": 48508, - "parth": 34790, - "parti": 10509, - "partial": 18957, - "partially": 21269, - "partic": 2871, - "partici": 9540, - "particip": 4400, - "participant": 27674, - "participants": 10237, - "participate": 9433, - "participated": 14252, - "participates": 46414, - "participating": 11535, - "participation": 13529, - "particle": 27716, - "particles": 27012, - "particul": 11408, - "particular": 14098, - "particularly": 12170, - "parties": 9032, - "parting": 32844, - "partisan": 20772, - "partist": 44713, - "partition": 42219, - "partly": 21459, - "partner": 5210, - "partner": 4568, - "partnered": 21402, - "partnering": 21182, - "partners": 5568, - "partnership": 6123, - "partnerships": 17418, - "parton": 43245, - "partridge": 34872, - "parts": 5149, - "party": 12877, - "party": 1580, - "partying": 25702, - "pas": 1341, - "pas": 9525, - "pasadena": 25892, - "pascal": 28626, - "pasco": 49220, - "pascu": 42692, - "pash": 23936, - "pasha": 46986, - "paso": 18542, - "pasqu": 44941, - "pass": 5016, - "pass": 3511, - "passage": 16477, - "passages": 48937, - "passed": 4957, - "passenger": 12311, - "passengers": 12781, - "passer": 48544, - "passes": 7633, - "passi": 32471, - "passing": 6589, - "passion": 8822, - "passion": 5332, - "passionate": 10947, - "passionately": 44028, - "passions": 38441, - "passive": 23171, - "passover": 38426, - "passport": 14739, - "passports": 46368, - "password": 20258, - "passwords": 43095, - "past": 7315, - "past": 2729, - "pasta": 10441, - "paste": 34765, - "paste": 17038, - "pastel": 19457, - "pastels": 45699, - "pastor": 19792, - "pastor": 9664, - "pastoral": 37191, - "pastors": 30959, - "pastr": 45478, - "pastries": 39409, - "pastry": 18582, - "pasture": 34764, - "pastures": 47793, - "pat": 1300, - "pat": 7036, - "patag": 29862, - "patagonia": 32786, - "patch": 29284, - "patch": 8721, - "patches": 22104, - "patchwork": 44675, - "patchy": 47488, - "pate": 42122, - "pate": 42098, - "patel": 14168, - "patent": 14692, - "patented": 37277, - "patents": 33911, - "paterson": 36560, - "path": 7408, - "path": 5035, - "pathetic": 18222, - "pathfinder": 35415, - "pathi": 34976, - "pathi": 27347, - "pathic": 49025, - "patho": 18534, - "pathology": 23290, - "paths": 16333, - "pathway": 23488, - "pathways": 24690, - "pathy": 13330, - "pati": 2799, - "pati": 26708, - "patience": 13575, - "patient": 30139, - "patient": 6262, - "patiently": 22980, - "patients": 5543, - "patil": 49187, - "patio": 14304, - "pational": 30627, - "patna": 45025, - "patory": 41859, - "patreon": 17165, - "patri": 4771, - "patriarch": 49054, - "patriarchy": 48806, - "patric": 12569, - "patrice": 40731, - "patricia": 18143, - "patrick": 12078, - "patrick": 5286, - "patricks": 46783, - "patriot": 28896, - "patriot": 15692, - "patrioti": 35520, - "patriotic": 20217, - "patriotism": 35807, - "patriots": 8707, - "patro": 31650, - "patrol": 10073, - "patrolling": 39344, - "patrols": 35978, - "patron": 26658, - "patron": 17683, - "patrons": 28308, - "pats": 24874, - "patsy": 46093, - "patt": 12637, - "patter": 4982, - "pattern": 7447, - "patterned": 47212, - "patterns": 11637, - "patterson": 21384, - "patti": 44927, - "patti": 26123, - "pattinson": 32474, - "patton": 29026, - "patty": 48741, - "patty": 18321, - "pau": 1834, - "pau": 35970, - "paul": 6035, - "paul": 2597, - "paula": 37363, - "paula": 16777, - "pauline": 30438, - "paulo": 48002, - "paulo": 21628, - "pauls": 41413, - "pauls": 40010, - "paulson": 48201, - "pause": 19439, - "paused": 46782, - "pav": 6661, - "pave": 37107, - "paved": 27898, - "pavel": 43152, - "pavement": 27669, - "pavilion": 13374, - "paving": 28651, - "paw": 14009, - "paw": 16016, - "pawan": 29754, - "pawankalyan": 33702, - "pawn": 43195, - "paws": 16714, - "pax": 20007, - "pax": 19033, - "paxton": 38347, - "pay": 2642, - "pay": 3345, - "payback": 36413, - "paycheck": 45078, - "payday": 26957, - "payee": 46985, - "payer": 41503, - "paying": 8341, - "payment": 10596, - "payments": 11832, - "payne": 12775, - "paypal": 21442, - "payroll": 31610, - "pays": 10845, - "paysoff": 48174, - "paytm": 45352, - "payton": 27348, - "paz": 22267, - "pb": 20112, - "pb": 10981, - "pba": 28205, - "pbb": 48567, - "pbb": 40589, - "pbc": 49191, - "pbl": 35166, - "pbr": 32998, - "pbs": 17908, - "pc": 6782, - "pc": 3808, - "pca": 35705, - "pcb": 26235, - "pcc": 36059, - "pci": 38957, - "pcm": 47436, - "pcr": 35704, - "pcs": 11917, - "pcso": 31963, - "pct": 22168, - "pd": 4387, - "pd": 4675, - "pdates": 16842, - "pdc": 40498, - "pdf": 15181, - "pdp": 24601, - "pdt": 21743, - "pdx": 25470, - "pdx": 16153, - "pe": 661, - "pe": 956, - "pea": 13915, - "peabo": 34083, - "peabody": 41244, - "peac": 34615, - "peace": 6249, - "peace": 3021, - "peaceful": 9461, - "peacefully": 30530, - "peacekeeping": 43630, - "peach": 10522, - "peach": 11538, - "peaches": 27216, - "peak": 18572, - "peak": 6026, - "peakdistrict": 41289, - "peake": 24810, - "peaked": 36391, - "peaks": 14067, - "pean": 11563, - "peanu": 25843, - "peanut": 12491, - "peanuts": 26503, - "pear": 4910, - "pear": 18820, - "pearce": 25996, - "pearl": 21806, - "pearl": 8560, - "pearljam": 46739, - "pearls": 19581, - "pears": 39565, - "pearson": 20461, - "peas": 15937, - "peasant": 40621, - "peasants": 48788, - "peat": 26914, - "pebble": 28056, - "pebbles": 40155, - "pec": 32447, - "pec": 17611, - "pecan": 32177, - "peck": 25186, - "peck": 29234, - "pecker": 30169, - "peckham": 45863, - "pecu": 34200, - "peculiar": 42808, - "ped": 13197, - "ped": 2966, - "pedago": 34590, - "pedagogy": 48072, - "pedal": 32943, - "pedal": 19621, - "pedals": 38535, - "pede": 12862, - "pede": 19560, - "pedestri": 30027, - "pedestrian": 18256, - "pedestrians": 33895, - "pedi": 12967, - "pedia": 11733, - "pediatric": 48431, - "pediatric": 22071, - "pedic": 35319, - "pedic": 44528, - "pedro": 29963, - "pedro": 15114, - "peds": 45377, - "pee": 12988, - "pee": 11196, - "peed": 47369, - "peek": 46323, - "peek": 7569, - "peeking": 48771, - "peel": 34386, - "peel": 17158, - "peeled": 33533, - "peeling": 48649, - "peep": 25425, - "peep": 16857, - "peeps": 11681, - "peer": 32416, - "peer": 14432, - "peers": 21626, - "pees": 31830, - "peg": 32182, - "peg": 11207, - "pegas": 30018, - "pegasus": 37822, - "peggy": 24271, - "pei": 48166, - "pei": 12917, - "pel": 4286, - "pel": 7006, - "pele": 44105, - "pelican": 34131, - "pelicans": 29363, - "pell": 46981, - "pelle": 31267, - "pelled": 32506, - "pellegr": 38529, - "pellets": 48240, - "pelo": 40192, - "pelo": 40238, - "pelosi": 22169, - "pelvic": 45646, - "pemb": 19880, - "pembro": 24084, - "pembroke": 36702, - "pembroke": 40044, - "pembrokeshire": 40695, - "pen": 1501, - "pen": 5356, - "pena": 35788, - "penalties": 25417, - "penalty": 11491, - "penang": 29545, - "penc": 20065, - "pence": 18002, - "pencil": 41303, - "pencil": 11200, - "pencils": 21909, - "pend": 3052, - "pendant": 12415, - "pendants": 44117, - "pending": 12770, - "pendleton": 44272, - "pendu": 45336, - "penelope": 36703, - "penetr": 26058, - "peng": 42955, - "peng": 39200, - "pengu": 8854, - "penguin": 28249, - "penguin": 14952, - "penguins": 16557, - "peninsu": 13464, - "peninsula": 14070, - "penn": 7760, - "penn": 11128, - "pennant": 43971, - "penned": 45077, - "penney": 47856, - "pennies": 43094, - "pennsylvania": 13673, - "penny": 20400, - "penny": 11388, - "pens": 13307, - "pens": 13310, - "pensac": 30925, - "pensacola": 33573, - "pension": 32840, - "pension": 17764, - "pensions": 29773, - "penske": 47154, - "pent": 10699, - "pent": 22725, - "pentagon": 23133, - "pente": 33165, - "penthouse": 32673, - "penultimate": 36553, - "peop": 1030, - "people": 10573, - "people": 1047, - "peoples": 28241, - "peoples": 14627, - "peopleschoice": 32418, - "peoplesvote": 45830, - "peoria": 36985, - "pep": 12761, - "pep": 14898, - "pepe": 24778, - "pepp": 34425, - "pepper": 14861, - "pepper": 8253, - "peppermint": 30321, - "pepperoni": 47307, - "peppers": 14650, - "pepsi": 21307, - "per": 703, - "per": 1284, - "pera": 26294, - "perce": 24135, - "perceived": 38436, - "percent": 16328, - "percent": 9017, - "percentage": 19477, - "percep": 28017, - "perception": 20591, - "perceptions": 38138, - "perch": 34281, - "perched": 40071, - "percu": 41722, - "percussion": 23980, - "percy": 23940, - "pere": 8665, - "pere": 36300, - "pered": 24509, - "peregr": 37479, - "peregrine": 44546, - "pereira": 43927, - "peren": 24564, - "perenni": 26996, - "perennial": 34038, - "perez": 15107, - "perf": 22816, - "perfe": 1624, - "perfec": 6599, - "perfect": 17261, - "perfect": 1878, - "perfection": 9646, - "perfectly": 8037, - "perfecto": 42898, - "perfor": 2311, - "perform": 3866, - "perform": 5940, - "performan": 8973, - "performance": 2714, - "performances": 9553, - "performed": 9997, - "performer": 17061, - "performers": 18476, - "performing": 5170, - "performs": 13839, - "perfu": 14214, - "perfume": 17525, - "perhaps": 9297, - "peri": 12618, - "peri": 44068, - "perience": 19302, - "peril": 40119, - "peril": 48301, - "perimeter": 38499, - "pering": 29746, - "perio": 5101, - "period": 6131, - "periodic": 36476, - "periods": 24401, - "periph": 35308, - "peripheral": 43901, - "peris": 19461, - "periscope": 21668, - "perk": 33424, - "perkins": 20057, - "perks": 17660, - "perl": 44018, - "perm": 47847, - "perman": 9018, - "permanent": 11144, - "permanently": 25584, - "perme": 42456, - "permission": 15822, - "permit": 21950, - "permits": 33267, - "permitted": 44380, - "pero": 23551, - "perpe": 15749, - "perpetr": 33376, - "perpetu": 30132, - "perpetual": 32018, - "perrie": 32691, - "perry": 28478, - "perry": 7899, - "pers": 3688, - "pers": 10710, - "perse": 27498, - "persecu": 22878, - "persecution": 32009, - "perseverance": 29820, - "persi": 11509, - "persian": 19859, - "persist": 19412, - "persist": 40938, - "persistence": 34588, - "persistent": 29028, - "person": 3510, - "person": 2533, - "persona": 18401, - "personal": 10114, - "personal": 4121, - "personalised": 24186, - "personalities": 27888, - "personality": 10386, - "personalized": 17845, - "personally": 13885, - "personnel": 14546, - "persons": 14592, - "perspec": 17997, - "perspective": 8996, - "perspectives": 18777, - "persu": 20972, - "pert": 36970, - "pert": 16306, - "perth": 19067, - "perth": 11011, - "peru": 20612, - "peru": 12964, - "peruvian": 30822, - "pes": 38368, - "pes": 2598, - "pesa": 47409, - "pesc": 44044, - "pesh": 33184, - "peshaw": 28524, - "peshawar": 29230, - "pesky": 42512, - "pesos": 47872, - "pessi": 43902, - "pest": 20130, - "pest": 9425, - "pesticide": 48481, - "pesticides": 37868, - "pesto": 26186, - "pests": 41919, - "pet": 2167, - "pet": 3703, - "peta": 28785, - "petal": 38430, - "petal": 40469, - "petals": 26064, - "petday": 45314, - "pete": 14479, - "pete": 8571, - "peter": 5093, - "peter": 3696, - "peterborough": 26012, - "peters": 16336, - "petersburg": 21052, - "petersen": 39794, - "peterson": 16877, - "peth": 48920, - "petit": 36437, - "petit": 21276, - "petite": 27213, - "petition": 10975, - "petitions": 43536, - "petr": 29808, - "petra": 31300, - "petre": 47179, - "petri": 31831, - "petro": 8716, - "petrol": 18149, - "petroleum": 22063, - "petron": 42875, - "pets": 7663, - "pett": 27051, - "petti": 48001, - "petting": 44334, - "petty": 17324, - "peu": 21411, - "peuge": 22893, - "peugeot": 24129, - "pew": 21608, - "pew": 30783, - "pewdie": 41882, - "pewdiepie": 42563, - "pex": 43765, - "pey": 14966, - "pey": 30933, - "peyton": 49254, - "peyton": 20307, - "pez": 45798, - "pez": 10482, - "pf": 16680, - "pf": 12572, - "pfa": 47839, - "pfc": 35007, - "pff": 44121, - "pfi": 29810, - "pfw": 31229, - "pg": 12476, - "pg": 5211, - "pga": 13351, - "pgat": 36514, - "pgatour": 40094, - "pgh": 44862, - "pgh": 30031, - "pgs": 49204, - "ph": 745, - "ph": 2042, - "pha": 4443, - "pha": 26255, - "phal": 19962, - "phan": 8731, - "phan": 40126, - "phant": 36998, - "phantom": 37688, - "phantom": 14490, - "phar": 5570, - "phara": 35792, - "pharaoh": 40437, - "pharm": 45761, - "pharma": 17831, - "pharmac": 8193, - "pharmaceu": 19490, - "pharmaceutical": 25217, - "pharmaceuticals": 44623, - "pharmacist": 41024, - "pharmacists": 44337, - "pharmacy": 15293, - "pharo": 42308, - "pharoah": 49287, - "pharrell": 31316, - "phase": 8304, - "phases": 35337, - "phat": 42492, - "phc": 41102, - "phd": 20875, - "phd": 8472, - "phdchat": 39564, - "phdlife": 39638, - "phe": 4787, - "phe": 19853, - "pheasant": 41983, - "phee": 41292, - "phel": 23711, - "phelps": 27128, - "phen": 7718, - "pheno": 47336, - "phenom": 31673, - "phenom": 39618, - "phenomen": 11304, - "phenomena": 41538, - "phenomenal": 15035, - "phenomenon": 24464, - "pher": 9194, - "pher": 19828, - "phers": 29531, - "pherson": 36421, - "phew": 10295, - "phi": 2239, - "phi": 12220, - "phia": 9228, - "phic": 3977, - "phie": 30237, - "phies": 17062, - "phil": 2821, - "phil": 6199, - "phila": 47443, - "philadel": 9428, - "philadelphia": 9749, - "philanthro": 16587, - "philanthropist": 44153, - "philanthropy": 25047, - "philately": 33695, - "phile": 36543, - "philharmon": 25228, - "philharmonic": 31699, - "phili": 4277, - "philia": 46654, - "philip": 20748, - "philip": 11074, - "philipp": 5623, - "philipp": 47591, - "philippe": 20942, - "philippine": 17629, - "philippines": 8149, - "philips": 25175, - "phill": 42346, - "phill": 48272, - "philli": 6456, - "phillies": 18748, - "phillip": 48832, - "phillip": 19323, - "phillips": 11041, - "philly": 19545, - "philly": 7785, - "philos": 8395, - "philosop": 20349, - "philosoph": 10187, - "philosopher": 25220, - "philosophical": 32628, - "philosophy": 12213, - "phils": 38573, - "phin": 33816, - "phine": 40985, - "phins": 40210, - "phish": 36897, - "phishing": 36546, - "phl": 25603, - "pho": 816, - "pho": 22707, - "phobia": 28749, - "phoe": 22673, - "phoebe": 27582, - "phoeni": 6778, - "phoenix": 20615, - "phoenix": 7793, - "phol": 48140, - "phon": 19602, - "phon": 31115, - "phone": 15486, - "phone": 1951, - "phones": 6351, - "phony": 31925, - "phora": 31363, - "phosp": 22638, - "photo": 1153, - "photo": 1125, - "photobomb": 37075, - "photobook": 41894, - "photog": 28115, - "photogenic": 36108, - "photogra": 36754, - "photograph": 1688, - "photograph": 8853, - "photographed": 11573, - "photographer": 5748, - "photographers": 17141, - "photographic": 22053, - "photographing": 30074, - "photographs": 15759, - "photography": 33183, - "photography": 2108, - "photom": 32223, - "photoo": 11106, - "photooftheday": 11933, - "photos": 2479, - "photoshoot": 11121, - "photoshop": 12419, - "photoshopped": 35738, - "phouse": 27848, - "php": 17370, - "phra": 12777, - "phrase": 18809, - "phrases": 35264, - "phs": 16495, - "phu": 21274, - "phuket": 34028, - "phx": 35466, - "phx": 29507, - "phy": 6484, - "phy": 4292, - "phyl": 35600, - "phyllis": 37844, - "phys": 3734, - "phys": 37894, - "physi": 13782, - "physic": 46641, - "physical": 44127, - "physical": 6671, - "physically": 18105, - "physician": 21055, - "physicians": 26702, - "physicist": 29052, - "physics": 9369, - "physio": 29574, - "physio": 29177, - "physiology": 32349, - "physique": 42884, - "phyto": 42197, - "pi": 741, - "pi": 5357, - "pia": 8918, - "pian": 24637, - "pianist": 21048, - "piano": 49278, - "piano": 7894, - "pianos": 47904, - "piazza": 28496, - "pic": 901, - "pic": 1282, - "pical": 5482, - "picard": 48507, - "picasso": 21481, - "piccad": 33876, - "piccadilly": 37287, - "piccollage": 43621, - "pick": 6379, - "pick": 3142, - "picked": 6018, - "picker": 43105, - "pickering": 47605, - "picket": 33559, - "picking": 9545, - "pickle": 24570, - "pickled": 21705, - "pickles": 25001, - "picks": 8551, - "pickup": 15382, - "pickups": 33383, - "picnic": 12007, - "pico": 23363, - "picoftheday": 18319, - "pics": 2559, - "pict": 18778, - "pictorial": 40640, - "picture": 11663, - "picture": 1674, - "pictured": 7647, - "pictures": 3646, - "picturesque": 24894, - "pid": 5225, - "piday": 48056, - "pie": 12065, - "pie": 5319, - "piece": 39632, - "piece": 2754, - "pieces": 6194, - "pied": 24686, - "pied": 12713, - "piedmont": 39691, - "pier": 5641, - "pier": 11348, - "pierc": 49216, - "pierce": 48462, - "pierce": 16782, - "pierced": 32799, - "piercing": 22557, - "piero": 43125, - "pierre": 34670, - "pierre": 11985, - "piers": 29030, - "pies": 6898, - "pieter": 44801, - "pietro": 42169, - "piff": 40719, - "pig": 12009, - "pig": 9619, - "pigeon": 18008, - "pigeons": 32910, - "piggy": 28245, - "pigment": 40284, - "pigs": 16228, - "pik": 48539, - "pika": 47372, - "pikach": 27268, - "pikachu": 28107, - "pike": 33457, - "pike": 14011, - "pil": 2893, - "pil": 20645, - "pilates": 29518, - "pile": 44403, - "pile": 13930, - "piled": 26873, - "piles": 31968, - "pilgri": 13966, - "pilgrim": 32662, - "pilgrimage": 24335, - "pilgrims": 31370, - "piling": 43050, - "pilip": 27234, - "pilipinas": 32392, - "pill": 14830, - "pill": 19226, - "pillar": 17322, - "pillars": 22054, - "pillow": 42237, - "pillow": 12182, - "pillows": 26499, - "pills": 23964, - "pilo": 37526, - "pilot": 31619, - "pilot": 6687, - "pilots": 15586, - "pilsner": 47153, - "pim": 15285, - "pim": 35472, - "pimp": 35789, - "pin": 2629, - "pin": 5164, - "pinball": 31679, - "pinch": 26114, - "pine": 9398, - "pine": 7374, - "pineapple": 14831, - "pines": 20338, - "ping": 23720, - "ping": 2089, - "pinion": 40557, - "pink": 11151, - "pink": 3360, - "pinkfloyd": 48520, - "pinky": 29803, - "pinn": 31448, - "pinnacle": 32754, - "pinned": 12165, - "pinning": 44515, - "pino": 36633, - "pinot": 41399, - "pinot": 21146, - "pinoy": 43578, - "pinoy": 35258, - "pins": 14619, - "pinst": 41173, - "pint": 42537, - "pint": 13584, - "pinterest": 15379, - "pinto": 35992, - "pints": 27935, - "pinup": 37349, - "pio": 22108, - "pion": 36728, - "pion": 29190, - "pione": 7975, - "pioneer": 34892, - "pioneer": 12459, - "pioneering": 25933, - "pioneers": 22383, - "pious": 42441, - "pip": 30854, - "pipe": 29333, - "pipe": 10459, - "pipel": 12387, - "pipeline": 14151, - "pipelines": 39683, - "piper": 47052, - "piper": 16293, - "pipes": 16991, - "piping": 40744, - "pippa": 47672, - "pir": 4351, - "pir": 38899, - "piracy": 39452, - "piran": 49034, - "pirate": 38680, - "pirate": 13592, - "pirates": 10442, - "pire": 16613, - "pires": 14988, - "pis": 9230, - "pis": 44441, - "pisa": 43632, - "pisces": 45982, - "piss": 20818, - "pissed": 17989, - "pist": 15556, - "pist": 32826, - "pistachi": 29760, - "pistachio": 36320, - "pistol": 20480, - "piston": 48236, - "pistons": 27242, - "pistor": 48162, - "pit": 2946, - "pit": 7476, - "pita": 27070, - "pitbull": 25295, - "pitch": 8992, - "pitch": 5872, - "pitched": 28447, - "pitcher": 13445, - "pitchers": 27835, - "pitches": 21005, - "pitching": 16455, - "piti": 47568, - "pits": 24144, - "pitt": 7607, - "pitt": 15599, - "pitts": 9531, - "pittsburgh": 10453, - "pity": 24380, - "pius": 39988, - "pivo": 18009, - "pivot": 31805, - "pivotal": 31432, - "pix": 6185, - "pix": 13088, - "pixar": 27493, - "pixel": 14384, - "pixel": 13241, - "pixelart": 18516, - "pixels": 34099, - "pixie": 35573, - "piyu": 30772, - "piyush": 36191, - "piyushgoyal": 45318, - "pizz": 3897, - "pizza": 4474, - "pizzas": 30647, - "pizzeria": 44174, - "pj": 12524, - "pj": 17179, - "pjnet": 22011, - "pjs": 36009, - "pk": 10149, - "pk": 10991, - "pkg": 49011, - "pkk": 47480, - "pknot": 41779, - "pkwy": 36827, - "pl": 712, - "pl": 5678, - "pla": 841, - "pla": 19945, - "plac": 2331, - "place": 14884, - "place": 1445, - "placed": 9729, - "placement": 16724, - "placements": 43885, - "placer": 49170, - "places": 4448, - "placing": 18531, - "plague": 25360, - "plaid": 23291, - "plain": 22776, - "plain": 10709, - "plains": 16345, - "plan": 1740, - "plan": 2970, - "pland": 24801, - "plane": 22728, - "plane": 5363, - "planes": 12581, - "planet": 16833, - "planet": 5172, - "planetary": 28361, - "planets": 22315, - "plank": 30991, - "plankton": 48249, - "plann": 6409, - "planned": 8169, - "planner": 18083, - "planners": 33664, - "planning": 4446, - "plano": 34063, - "plans": 4181, - "plant": 8521, - "plant": 3912, - "plantation": 20014, - "plantbased": 33720, - "planted": 14286, - "planter": 34453, - "planters": 43661, - "planting": 13922, - "plants": 5829, - "plaque": 16097, - "plaques": 45610, - "plar": 26754, - "plas": 45673, - "plasma": 24999, - "plaster": 31980, - "plastic": 15645, - "plastic": 6102, - "plasticpollution": 47129, - "plastics": 20999, - "plasticsurgery": 48555, - "plat": 3172, - "plata": 46456, - "plate": 28744, - "plate": 5135, - "plateau": 29301, - "plated": 21161, - "plates": 11485, - "platform": 5549, - "platforms": 13551, - "platin": 10267, - "plating": 44564, - "platinum": 10979, - "plato": 41101, - "platoon": 41254, - "platt": 44459, - "platt": 40097, - "platte": 46785, - "platter": 29071, - "platz": 40878, - "plau": 39139, - "play": 1222, - "play": 1453, - "playa": 23756, - "playable": 33885, - "playback": 39194, - "playbook": 34856, - "playboy": 24383, - "played": 3432, - "player": 24503, - "player": 2477, - "players": 3030, - "playful": 23871, - "playground": 15861, - "playhouse": 23254, - "playin": 24674, - "playing": 47368, - "playing": 1629, - "playlist": 9180, - "playlists": 47183, - "playo": 5804, - "playoff": 9655, - "playoffs": 9548, - "plays": 5134, - "playstation": 11332, - "playtime": 43037, - "playwright": 32070, - "plaza": 8943, - "plc": 16827, - "ple": 926, - "ple": 1619, - "plea": 21956, - "plead": 47539, - "pleads": 31425, - "plear": 21362, - "pleas": 8481, - "pleas": 48740, - "pleasant": 12271, - "please": 41074, - "please": 1474, - "pleased": 6107, - "pleasing": 32893, - "pleasure": 5854, - "pleasures": 29513, - "pledge": 11507, - "pledged": 36799, - "pledges": 26746, - "pledis": 41202, - "plein": 43429, - "plenary": 19891, - "plenty": 7524, - "pler": 17677, - "ples": 6248, - "pless": 39821, - "pless": 17059, - "plets": 43230, - "plex": 23765, - "plex": 15241, - "pley": 19543, - "pli": 30001, - "pli": 45797, - "plic": 5806, - "plicity": 19823, - "plight": 40317, - "plin": 44531, - "plin": 32335, - "pline": 25376, - "pling": 12899, - "plings": 31184, - "pll": 47629, - "pll": 25266, - "pln": 48755, - "plo": 1778, - "plo": 43523, - "plor": 34695, - "plot": 9918, - "plots": 25672, - "plotting": 30751, - "plough": 33811, - "plow": 38363, - "pls": 5572, - "plu": 2052, - "plug": 12628, - "plugged": 23261, - "plugin": 31278, - "plugins": 48797, - "plugs": 28083, - "plum": 26267, - "plum": 16202, - "plumb": 21769, - "plumber": 43478, - "plumbing": 24647, - "plume": 39495, - "plun": 15122, - "plunge": 26506, - "plur": 44664, - "plus": 3097, - "plush": 18926, - "pluto": 26380, - "ply": 17249, - "ply": 28705, - "plying": 36071, - "plym": 11907, - "plymouth": 13786, - "plz": 10538, - "pm": 13699, - "pm": 990, - "pmi": 41206, - "pmln": 23208, - "pmo": 18782, - "pmoindia": 20374, - "pms": 44223, - "pn": 14431, - "pn": 13774, - "pnc": 37148, - "pne": 30966, - "pneu": 28714, - "pneumonia": 42906, - "png": 20992, - "pnp": 25972, - "pnpp": 42175, - "pnw": 31521, - "po": 628, - "po": 3057, - "poa": 43912, - "poached": 27665, - "poaching": 35140, - "poc": 13232, - "poc": 27780, - "pocaly": 37987, - "pocalypse": 42307, - "poche": 38336, - "poche": 39022, - "pocket": 29147, - "pocket": 8504, - "pockets": 19566, - "pocon": 41850, - "pod": 3583, - "pod": 7446, - "podcast": 39654, - "podcast": 4294, - "podcasting": 40106, - "podcasts": 19392, - "pode": 33368, - "poder": 24960, - "podernfamily": 26620, - "podi": 32853, - "podium": 14093, - "pods": 18776, - "poe": 4746, - "poe": 19254, - "poem": 9436, - "poems": 15577, - "poet": 41019, - "poet": 9872, - "poetic": 26365, - "poetry": 20192, - "poetry": 6038, - "poetryday": 39255, - "poets": 19804, - "pof": 40850, - "poff": 28236, - "pogba": 25998, - "poign": 29682, - "poignant": 32138, - "poin": 9074, - "point": 13280, - "point": 2301, - "pointe": 24631, - "pointed": 20703, - "pointer": 29883, - "pointers": 36760, - "pointing": 19233, - "pointless": 33586, - "points": 3396, - "pois": 17008, - "poise": 45087, - "poised": 27354, - "poison": 30722, - "poison": 17074, - "poisoned": 43624, - "poisoning": 25750, - "poisonous": 37131, - "pok": 15387, - "poke": 6892, - "poke": 23186, - "pokemon": 16239, - "pokemon": 9528, - "pokemongo": 23985, - "poker": 30735, - "poker": 11865, - "pokes": 40221, - "poking": 49169, - "poké": 20656, - "pokémon": 22066, - "pol": 977, - "pol": 7649, - "pola": 43876, - "poland": 9834, - "polar": 21432, - "polar": 12214, - "polari": 27919, - "polaris": 37965, - "polarized": 48437, - "polaro": 25237, - "polaroid": 30427, - "poldark": 41322, - "pole": 26682, - "pole": 8170, - "poles": 22585, - "poli": 9675, - "poli": 5414, - "polic": 16126, - "police": 15535, - "police": 2120, - "policeman": 37713, - "policemen": 47946, - "polici": 10819, - "policies": 10993, - "policing": 20969, - "policy": 30173, - "policy": 4660, - "polio": 30533, - "polis": 16133, - "polish": 46941, - "polish": 9632, - "polished": 21478, - "polishing": 43629, - "polit": 2247, - "politan": 15337, - "polite": 31497, - "politi": 40597, - "politic": 33333, - "political": 37744, - "political": 4197, - "politically": 24323, - "politician": 15960, - "politicians": 12914, - "politico": 39403, - "politics": 4929, - "polk": 33317, - "polka": 29476, - "poll": 7032, - "pollen": 27651, - "pollin": 19152, - "pollinators": 36599, - "polling": 18024, - "pollo": 42755, - "pollock": 37614, - "polls": 11813, - "pollu": 8370, - "polluted": 43346, - "pollution": 10384, - "polly": 31204, - "polo": 35928, - "polo": 10229, - "poly": 6833, - "poly": 18367, - "polye": 31730, - "polyester": 38514, - "polym": 23626, - "polymer": 29993, - "polyne": 38892, - "polyvore": 24771, - "pom": 7548, - "pom": 24280, - "pome": 27963, - "pomegran": 29326, - "pomegranate": 32415, - "pomer": 35156, - "pomona": 41690, - "pompe": 18352, - "pompeii": 47775, - "pompeo": 34351, - "pompey": 35079, - "pon": 3809, - "pon": 22391, - "ponce": 43637, - "pond": 10750, - "ponder": 36863, - "pondering": 47395, - "ponds": 31033, - "pone": 32183, - "pong": 40546, - "pong": 17710, - "ponies": 34157, - "pons": 41255, - "pont": 47563, - "pont": 22997, - "ponte": 40892, - "ponti": 15527, - "pontiac": 25373, - "pontifex": 33566, - "ponty": 45152, - "pony": 24438, - "pony": 12678, - "ponytail": 43265, - "poo": 6601, - "poo": 14389, - "pooch": 37037, - "poodle": 34961, - "pooh": 27103, - "pooja": 35676, - "pool": 12484, - "pool": 2831, - "poole": 26290, - "pools": 18736, - "poolside": 35509, - "poon": 33799, - "poon": 36178, - "poop": 23310, - "poor": 14528, - "poor": 3665, - "poorest": 40771, - "poorly": 21101, - "pop": 6530, - "pop": 2852, - "popart": 47425, - "popcorn": 15034, - "pope": 16994, - "pope": 9283, - "popefrancis": 37254, - "poplar": 38726, - "popo": 38835, - "popo": 35572, - "popp": 13156, - "popped": 14934, - "poppies": 30385, - "poppin": 28536, - "popping": 18152, - "poppins": 41216, - "poppy": 32194, - "poppy": 15447, - "pops": 11705, - "popsic": 38481, - "popu": 3785, - "popul": 6593, - "popular": 15854, - "popular": 4368, - "popularity": 19235, - "populated": 38420, - "population": 8423, - "populations": 23797, - "populism": 48998, - "populist": 49376, - "popup": 33053, - "por": 817, - "por": 7697, - "pora": 23537, - "porcel": 19409, - "porcelain": 20451, - "porch": 17154, - "pore": 28267, - "pork": 40379, - "pork": 7897, - "poro": 48110, - "porridge": 34924, - "porsch": 48009, - "porsche": 44049, - "porsche": 8783, - "port": 1641, - "port": 1418, - "porta": 45037, - "portable": 11949, - "portage": 32087, - "portal": 14982, - "porte": 28654, - "ported": 16879, - "porter": 28319, - "porter": 10318, - "porters": 15670, - "portfoli": 45766, - "portfolio": 11938, - "porth": 37425, - "porti": 45760, - "porting": 26052, - "portion": 13739, - "portions": 22914, - "portland": 38366, - "portland": 8880, - "portman": 34755, - "porto": 24853, - "porto": 18947, - "portobello": 48025, - "portra": 4175, - "portrait": 39312, - "portrait": 5352, - "portraits": 14203, - "portray": 46282, - "portrayal": 39238, - "portrayed": 36093, - "ports": 7734, - "portsm": 17063, - "portsmouth": 19074, - "portu": 7159, - "portugal": 9503, - "portugue": 17498, - "portuguese": 18019, - "pos": 1780, - "pos": 11839, - "pose": 25478, - "pose": 4230, - "posed": 5206, - "posei": 47270, - "poser": 46899, - "poses": 9773, - "posey": 34852, - "posh": 26748, - "posing": 10518, - "posit": 28793, - "positi": 7895, - "position": 4657, - "positioned": 34482, - "positioning": 30657, - "positions": 12188, - "positive": 21811, - "positive": 4844, - "positively": 24688, - "positivity": 19966, - "poss": 39745, - "posse": 17414, - "posse": 28413, - "possess": 36810, - "possessed": 36220, - "possession": 16154, - "possessions": 40588, - "possi": 2521, - "possibilities": 17932, - "possibility": 18517, - "possible": 3134, - "possibly": 8601, - "possum": 38575, - "post": 3489, - "post": 1549, - "postage": 27570, - "postal": 21687, - "postcard": 14785, - "postcards": 23922, - "postdoc": 41013, - "posted": 4752, - "poster": 22881, - "poster": 3574, - "posters": 9673, - "postgame": 34873, - "postgraduate": 31997, - "posthum": 42410, - "posting": 7559, - "postman": 38285, - "postpon": 23247, - "postponed": 25097, - "posts": 7824, - "postseason": 24521, - "posture": 29681, - "posure": 35539, - "pot": 3547, - "pot": 5168, - "potam": 45825, - "potassi": 36889, - "potassium": 37147, - "potat": 5975, - "potato": 8527, - "potatoes": 11567, - "potd": 28765, - "pote": 41869, - "poten": 4454, - "potent": 26082, - "potenti": 44104, - "potential": 5100, - "potentially": 16508, - "potholes": 47506, - "potion": 46055, - "potom": 38848, - "potomac": 43372, - "pots": 19234, - "pott": 28698, - "potted": 48581, - "potter": 24975, - "potter": 9026, - "pottery": 18396, - "potts": 39839, - "potty": 43569, - "potus": 8740, - "pou": 9423, - "pouch": 26811, - "poul": 22485, - "poultry": 31005, - "poun": 33719, - "pound": 33809, - "pound": 10674, - "pounding": 46544, - "pounds": 10752, - "pour": 33112, - "pour": 8180, - "poured": 26621, - "pouring": 16098, - "pours": 26005, - "pout": 39621, - "poutine": 43768, - "pov": 25731, - "pover": 8432, - "pover": 29464, - "poverty": 9095, - "pow": 1317, - "pow": 17745, - "powder": 32427, - "powder": 9674, - "powe": 36955, - "powell": 13305, - "power": 2789, - "power": 1807, - "powerball": 47803, - "powered": 45442, - "powered": 7332, - "powerful": 4875, - "powerhouse": 22858, - "powering": 16231, - "powerof": 31961, - "powerpoint": 38940, - "powerrangers": 40620, - "powers": 9422, - "pox": 43649, - "poy": 34737, - "poyn": 47655, - "poz": 39953, - "pp": 604, - "pp": 4186, - "ppa": 10416, - "ppard": 23391, - "ppc": 27778, - "ppe": 24573, - "ppe": 11867, - "pped": 1873, - "ppel": 46523, - "ppen": 30663, - "pper": 6719, - "pper": 2440, - "ppers": 5232, - "ppery": 27833, - "ppet": 20744, - "ppets": 25849, - "ppg": 27433, - "ppi": 9594, - "ppie": 33795, - "ppin": 8076, - "pping": 22214, - "pping": 1682, - "ppings": 35687, - "ppl": 6758, - "pple": 12302, - "ppm": 42053, - "ppo": 10215, - "ppor": 37613, - "ppp": 14017, - "pps": 10683, - "ppv": 38864, - "ppy": 30360, - "ppy": 3860, - "pr": 766, - "pr": 4150, - "pra": 1865, - "pra": 19285, - "prab": 17901, - "prabhas": 29959, - "prabhu": 31529, - "prac": 2243, - "practi": 29995, - "practic": 5495, - "practical": 10792, - "practically": 25588, - "practice": 3349, - "practiced": 36749, - "practices": 9040, - "practicing": 12750, - "practise": 38938, - "practising": 36478, - "practiti": 19909, - "practitioner": 32591, - "practitioners": 29045, - "prada": 29456, - "pradesh": 15384, - "prado": 44141, - "prag": 31025, - "prague": 14940, - "prairi": 12629, - "prairie": 14753, - "praise": 10013, - "praised": 27649, - "praises": 23049, - "praising": 36961, - "prakash": 43708, - "prakash": 25366, - "pram": 47774, - "pran": 20048, - "prank": 23654, - "pras": 41562, - "prasad": 29562, - "prat": 23069, - "prati": 45773, - "pratt": 37863, - "pratt": 23396, - "prawn": 33102, - "prawns": 34903, - "pray": 12671, - "pray": 6041, - "prayed": 34665, - "prayer": 41452, - "prayer": 6583, - "prayers": 8393, - "prayfor": 18443, - "praying": 11550, - "prays": 46602, - "prc": 28781, - "pre": 679, - "pre": 2900, - "preach": 22545, - "preacher": 29357, - "preaching": 23642, - "precau": 36532, - "precautions": 47845, - "prece": 15361, - "preci": 5470, - "precin": 27908, - "precinct": 32587, - "precious": 8226, - "precipit": 27463, - "precipitation": 33399, - "precise": 24457, - "precisely": 34954, - "precision": 44021, - "precision": 15621, - "pred": 40370, - "predat": 13364, - "predator": 20653, - "predators": 25569, - "prede": 38454, - "predecess": 38963, - "predic": 4876, - "predict": 16900, - "predictable": 25344, - "predicted": 18702, - "predicting": 30414, - "prediction": 16296, - "predictions": 15125, - "predictive": 29798, - "predicts": 25960, - "preds": 40125, - "pree": 47026, - "preet": 30131, - "prefe": 14542, - "prefecture": 32890, - "prefer": 33426, - "prefer": 11450, - "preference": 35057, - "preferences": 38118, - "preferred": 18772, - "prefers": 38528, - "pregame": 18575, - "pregn": 7190, - "pregnancy": 12769, - "pregnant": 11195, - "prehistoric": 32750, - "prejudice": 28337, - "preli": 15523, - "prelimin": 19990, - "preliminary": 20997, - "prelims": 43223, - "prelude": 42966, - "prem": 32090, - "prem": 21724, - "premature": 39253, - "premi": 2413, - "premier": 16996, - "premier": 5539, - "premiere": 5367, - "premiered": 27652, - "premieres": 19907, - "premiering": 32615, - "premierleague": 22608, - "premiers": 44883, - "premiership": 23665, - "premiosm": 38460, - "premiosmtvmiaw": 38630, - "premise": 45952, - "premises": 27266, - "premium": 8011, - "pren": 20801, - "preneur": 46288, - "preorder": 16703, - "preorders": 45985, - "prep": 6430, - "prep": 7277, - "prepa": 26270, - "prepaid": 42934, - "prepar": 4968, - "preparation": 11651, - "preparations": 19135, - "prepare": 7014, - "prepared": 7677, - "preparedness": 29492, - "prepares": 16375, - "preparing": 7365, - "prepped": 34379, - "prepping": 16459, - "preps": 14765, - "prequel": 40461, - "pres": 1385, - "pres": 8529, - "presale": 27135, - "presby": 30447, - "presbyter": 33959, - "presbyterian": 35370, - "preschool": 24354, - "prescott": 29392, - "prescri": 14851, - "prescribed": 36968, - "prescription": 23061, - "preseason": 13813, - "presen": 16742, - "presence": 8848, - "present": 2344, - "present": 2881, - "presentation": 4594, - "presentations": 16998, - "presented": 4587, - "presenter": 18587, - "presenters": 32759, - "presenting": 5339, - "presents": 4215, - "preserv": 17616, - "preservation": 21074, - "preserve": 15570, - "preserved": 23161, - "preserves": 44881, - "preserving": 32315, - "presi": 1697, - "presiden": 43374, - "presidency": 18077, - "president": 19900, - "president": 1940, - "presidente": 47363, - "presidenti": 48297, - "presidential": 8503, - "presidents": 16726, - "presiding": 45298, - "presley": 30013, - "press": 4124, - "press": 2124, - "pressed": 20080, - "presser": 27826, - "presses": 33748, - "pressing": 20893, - "pressure": 6083, - "pressures": 38487, - "prest": 41840, - "presti": 12245, - "prestige": 29328, - "prestigious": 15888, - "presto": 42211, - "preston": 37335, - "preston": 15179, - "presu": 21667, - "presumably": 42562, - "pret": 9652, - "preten": 15871, - "pretend": 18111, - "pretending": 21306, - "pretoria": 36080, - "prett": 46667, - "prettier": 31745, - "prettiest": 22866, - "pretty": 18286, - "pretty": 2111, - "pretz": 24890, - "pretzel": 36707, - "pretzels": 45468, - "prev": 20274, - "prevail": 31637, - "prevalence": 41729, - "prevalent": 46260, - "preven": 29382, - "prevent": 26436, - "prevent": 7968, - "preventable": 44250, - "prevented": 35356, - "preventing": 21756, - "prevention": 9500, - "preventive": 40949, - "prevents": 31746, - "preview": 4449, - "previews": 20279, - "previous": 9252, - "previously": 13359, - "prey": 17131, - "prez": 17956, - "pri": 955, - "pri": 23400, - "pric": 24275, - "price": 13254, - "price": 2827, - "priced": 16934, - "priceless": 15743, - "prices": 5954, - "pricing": 14800, - "prick": 43921, - "prick": 46516, - "pride": 15323, - "pride": 3436, - "pridemonth": 41410, - "prie": 22477, - "priest": 38756, - "priest": 14222, - "priests": 30005, - "prim": 22004, - "prima": 35611, - "prima": 33277, - "primal": 36604, - "primar": 21579, - "primaries": 46126, - "primarily": 29465, - "primark": 48329, - "primary": 35024, - "primary": 5814, - "primavera": 44899, - "prime": 14162, - "prime": 5183, - "primed": 45694, - "primer": 22388, - "primetime": 29763, - "primitive": 37467, - "primo": 43215, - "primrose": 45891, - "prin": 1588, - "prince": 9457, - "prince": 4735, - "princes": 45329, - "princes": 30136, - "princess": 24123, - "princess": 5079, - "princesses": 34161, - "princeton": 22433, - "princi": 5129, - "principal": 33599, - "principal": 8860, - "principals": 27524, - "principle": 19595, - "principles": 13755, - "print": 17851, - "print": 3557, - "printable": 29648, - "printed": 7978, - "printer": 14521, - "printers": 27881, - "printing": 7369, - "printmaking": 38669, - "prints": 7704, - "prior": 20328, - "prior": 10572, - "priorit": 47773, - "prioriti": 28822, - "priorities": 15232, - "prioritize": 46715, - "priority": 12451, - "priory": 38665, - "prisc": 32468, - "priscilla": 42396, - "prise": 23343, - "prism": 49311, - "prism": 34356, - "prison": 9281, - "prison": 6622, - "prisoner": 21427, - "prisoners": 17460, - "prisons": 26607, - "pristine": 30618, - "prit": 41668, - "prit": 37523, - "prith": 39173, - "prius": 43561, - "priv": 3270, - "privacy": 10437, - "private": 20362, - "private": 4439, - "privately": 32970, - "privati": 27379, - "privi": 8367, - "privileg": 18015, - "privilege": 11537, - "privileged": 18166, - "prix": 10875, - "priya": 31275, - "priyan": 16488, - "priyanka": 31959, - "priyankach": 30030, - "priyankachopra": 30264, - "prize": 48222, - "prize": 4521, - "prized": 38769, - "prizes": 9268, - "prk": 37094, - "pro": 644, - "pro": 2630, - "proactive": 33364, - "prob": 17706, - "prob": 24007, - "probab": 3907, - "probability": 32637, - "probable": 42444, - "probably": 4047, - "probation": 36531, - "probe": 14359, - "probes": 48564, - "probiotics": 49395, - "proble": 2719, - "problem": 4324, - "problematic": 33767, - "problems": 4671, - "probs": 16330, - "probz": 34243, - "proc": 38417, - "proce": 4076, - "procedu": 18204, - "procedural": 48177, - "procedure": 20163, - "procedures": 21109, - "proceed": 26664, - "proceed": 33894, - "proceedings": 26953, - "proceeds": 11882, - "process": 17291, - "process": 4078, - "processed": 23816, - "processes": 15169, - "processing": 11737, - "procession": 26288, - "processor": 22838, - "processors": 43634, - "proclaimed": 34489, - "proclamation": 32065, - "procra": 25361, - "procrastin": 25586, - "procrastination": 42825, - "procreate": 39336, - "proctor": 47204, - "procu": 21001, - "procurement": 23733, - "prod": 44349, - "prod": 11991, - "prodi": 27759, - "prodigy": 31973, - "produ": 27852, - "produc": 1471, - "produce": 7529, - "produced": 7479, - "producer": 7064, - "producers": 13883, - "produces": 19940, - "producing": 13579, - "product": 32602, - "product": 4306, - "production": 4146, - "productions": 14166, - "productive": 9697, - "productivity": 12800, - "products": 3964, - "prof": 15043, - "prof": 5488, - "profe": 2611, - "profess": 5486, - "professi": 3705, - "profession": 8104, - "profession": 19671, - "professional": 46007, - "professional": 4774, - "professionalism": 41252, - "professionally": 33892, - "professionals": 10165, - "professor": 47302, - "professor": 6092, - "professors": 27758, - "profici": 34685, - "profile": 14291, - "profile": 6444, - "profiles": 22070, - "profiling": 37123, - "profit": 16941, - "profit": 7909, - "profitable": 25465, - "profits": 13410, - "profound": 48245, - "profound": 22998, - "profs": 19260, - "prog": 22219, - "progno": 46070, - "program": 4162, - "program": 2737, - "programme": 6322, - "programmer": 37001, - "programmes": 20468, - "programming": 10831, - "programs": 7345, - "progre": 7069, - "progress": 4421, - "progressi": 23297, - "progressing": 32346, - "progression": 24772, - "progressive": 12208, - "progressives": 41709, - "prohi": 41124, - "prohib": 45040, - "prohibition": 34440, - "proj": 39156, - "proje": 48345, - "projec": 1610, - "project": 15911, - "project": 1965, - "projected": 22873, - "projection": 22384, - "projections": 34638, - "projector": 27816, - "projects": 5090, - "proli": 19710, - "prolife": 32126, - "prolifer": 39018, - "prolific": 27839, - "prolly": 45968, - "prolon": 35379, - "prolonged": 41972, - "prom": 40363, - "prom": 7944, - "prome": 34355, - "promen": 33578, - "promenade": 35522, - "promethe": 44183, - "promin": 35217, - "prominent": 19172, - "promis": 3963, - "promise": 6745, - "promised": 11516, - "promises": 12064, - "promising": 14183, - "promo": 3037, - "promo": 6755, - "promos": 35044, - "promote": 47384, - "promote": 8003, - "promoted": 16395, - "promoter": 33081, - "promotes": 20169, - "promoting": 9695, - "promotion": 9259, - "promotional": 17619, - "promotions": 19142, - "promp": 11671, - "prompt": 20198, - "prompted": 45746, - "prompts": 33490, - "proms": 37759, - "pron": 13285, - "prone": 30964, - "pronoun": 23022, - "pronounce": 40489, - "pronounced": 34109, - "pronto": 44296, - "proof": 17020, - "proof": 5248, - "proofing": 35679, - "proofs": 41023, - "prop": 19123, - "prop": 16254, - "propag": 12151, - "propaganda": 14718, - "propane": 45546, - "propel": 48439, - "propeller": 47404, - "proper": 3577, - "proper": 8205, - "properly": 12560, - "properties": 10922, - "property": 26486, - "property": 5043, - "prophe": 9662, - "prophecy": 32501, - "prophet": 15549, - "prophetic": 47476, - "prophets": 39441, - "propor": 35016, - "proportion": 35775, - "proportions": 39391, - "propos": 9455, - "proposal": 12139, - "proposals": 20568, - "propose": 28471, - "proposed": 10615, - "proposes": 27133, - "proposing": 42631, - "proposition": 44780, - "propri": 28243, - "props": 15249, - "propulsion": 49380, - "pros": 33925, - "pros": 14147, - "prosciutto": 46565, - "prose": 47063, - "prose": 28675, - "prosecco": 28839, - "prosecu": 12136, - "prosecution": 30902, - "prosecutor": 23736, - "prosecutors": 31656, - "prosp": 24242, - "prospec": 12693, - "prospect": 11211, - "prospective": 28034, - "prospects": 15372, - "prosper": 16121, - "prosper": 33526, - "prosperity": 17203, - "prosperous": 28252, - "prost": 47923, - "prostate": 28808, - "prostatec": 49064, - "prosthetic": 44602, - "prostitu": 37333, - "protag": 28950, - "protagonist": 38183, - "prote": 1845, - "protec": 5640, - "protect": 25563, - "protect": 4817, - "protected": 12266, - "protecting": 11710, - "protection": 6238, - "protections": 33772, - "protective": 17028, - "protector": 20441, - "protectors": 45039, - "protects": 21889, - "protein": 8088, - "proteins": 28661, - "protest": 6279, - "protestant": 46945, - "protested": 48089, - "protester": 42073, - "protesters": 12660, - "protesting": 18788, - "protestors": 27822, - "protests": 12450, - "proto": 8672, - "proto": 44958, - "protocol": 19938, - "protocols": 39631, - "proton": 40009, - "prototype": 16675, - "prototyping": 42081, - "prou": 5739, - "proud": 11080, - "proud": 1679, - "prouder": 39585, - "proudest": 46806, - "proudly": 11203, - "proudof": 48184, - "proudtobe": 35043, - "prov": 23772, - "prov": 35021, - "prove": 10107, - "proved": 16473, - "proven": 35405, - "proven": 14569, - "provence": 28067, - "prover": 18312, - "proverb": 34419, - "proverbs": 27016, - "proves": 16119, - "provi": 2289, - "provide": 4832, - "provided": 9046, - "providence": 19331, - "provider": 14409, - "providers": 17120, - "provides": 7161, - "providing": 7250, - "provin": 12074, - "province": 8978, - "provinces": 35050, - "provincial": 16002, - "proving": 18055, - "provision": 30148, - "provisional": 36008, - "provisions": 39269, - "provo": 15367, - "provoc": 31618, - "provocative": 43809, - "provoking": 25510, - "provost": 36627, - "prow": 38737, - "prowrestling": 39825, - "prox": 41616, - "proxim": 31436, - "proximity": 38298, - "proxy": 31680, - "prs": 23879, - "pru": 12961, - "pruitt": 39453, - "prun": 29029, - "pruning": 48133, - "pry": 31965, - "pryor": 43375, - "ps": 3982, - "ps": 814, - "psa": 14031, - "psal": 13859, - "psalm": 17995, - "psalms": 35003, - "psb": 37017, - "psc": 43118, - "psd": 28810, - "pse": 19737, - "pse": 5423, - "pseu": 24919, - "pseudo": 46618, - "psg": 17123, - "psi": 45848, - "psi": 24533, - "psic": 29299, - "psis": 33041, - "psl": 21373, - "psn": 36781, - "pso": 27045, - "pson": 7487, - "psori": 44688, - "psp": 32769, - "pss": 35718, - "pss": 42535, - "psst": 47814, - "pst": 12692, - "psu": 41286, - "psu": 28338, - "psv": 44530, - "psy": 3576, - "psy": 11056, - "psych": 31041, - "psych": 20509, - "psyched": 19932, - "psyched": 35199, - "psychedelic": 23292, - "psychi": 18147, - "psychiatric": 30578, - "psychiatry": 39706, - "psychic": 24916, - "psycho": 6472, - "psycho": 22154, - "psychological": 18153, - "psychologist": 32827, - "psychology": 12352, - "psychop": 30112, - "psychotic": 48774, - "pt": 11139, - "pt": 1459, - "pta": 11586, - "ptbo": 40481, - "ptc": 44646, - "pte": 47804, - "pter": 49323, - "pti": 29375, - "pti": 10491, - "ptic": 20670, - "ption": 3479, - "ptions": 24963, - "pto": 31372, - "pto": 34092, - "pton": 19780, - "pts": 5886, - "ptsd": 23973, - "ptv": 42402, - "pu": 755, - "pu": 11780, - "pub": 20720, - "pub": 6301, - "puberty": 44122, - "pubg": 31496, - "publ": 3434, - "publi": 1617, - "public": 3592, - "public": 2122, - "publica": 49007, - "publication": 13538, - "publications": 27334, - "publichealth": 35872, - "publicity": 20831, - "publicly": 18554, - "publish": 19032, - "published": 4311, - "publisher": 20455, - "publishers": 25222, - "publishes": 35633, - "publishing": 10994, - "publix": 47985, - "pubs": 21099, - "puc": 48779, - "puck": 17550, - "pud": 39234, - "pudding": 14025, - "puddle": 33545, - "pue": 20161, - "pueblo": 33076, - "puer": 8968, - "puerto": 12289, - "puertor": 22757, - "puertorico": 26356, - "puff": 44477, - "puff": 17184, - "puffin": 47632, - "puffs": 47453, - "puffy": 49245, - "pug": 20950, - "pug": 17739, - "pugchat": 42266, - "pugh": 41302, - "puglia": 38345, - "pugs": 39425, - "puj": 46163, - "puja": 33753, - "puk": 31811, - "pul": 2469, - "pul": 40512, - "pula": 45856, - "puli": 47293, - "pulit": 27745, - "pulitzer": 31419, - "pull": 20155, - "pull": 6857, - "pulled": 8525, - "pulling": 12897, - "pullman": 40203, - "pullover": 44020, - "pulls": 16041, - "pulmon": 32613, - "pulmonary": 39132, - "pulp": 25410, - "pulse": 40091, - "pulse": 12485, - "pulses": 42177, - "pulsion": 35398, - "pum": 37497, - "puma": 20858, - "pump": 5179, - "pump": 9173, - "pumped": 12796, - "pumping": 25150, - "pumpkin": 36386, - "pumpkin": 8842, - "pumpkins": 23787, - "pumps": 18540, - "pun": 2707, - "pun": 19929, - "punc": 43907, - "punch": 29332, - "punch": 10730, - "punched": 31689, - "punches": 35279, - "punching": 33468, - "punctu": 31565, - "punctuation": 47051, - "pundit": 41466, - "pune": 32593, - "pune": 14488, - "pung": 45420, - "puni": 11479, - "punish": 34569, - "punished": 31598, - "punisher": 38509, - "punishment": 19099, - "punjab": 19405, - "punjab": 12883, - "punjabi": 25430, - "punk": 28933, - "punk": 7246, - "punks": 47171, - "puns": 35231, - "punt": 32699, - "punta": 34112, - "punter": 47092, - "pup": 11926, - "pup": 11302, - "pupil": 27265, - "pupils": 13628, - "pupp": 7116, - "puppet": 18439, - "puppets": 28475, - "puppies": 14820, - "puppy": 25431, - "puppy": 6829, - "puppylove": 40849, - "pups": 20778, - "pur": 1727, - "pur": 6265, - "pura": 25596, - "puram": 46174, - "purcell": 46065, - "purch": 8384, - "purchase": 5481, - "purchased": 13399, - "purchases": 21887, - "purchasing": 20718, - "purdu": 40691, - "purdue": 22280, - "pure": 14202, - "pure": 5979, - "puree": 45474, - "purely": 32459, - "puremichigan": 39783, - "purest": 45497, - "purge": 33514, - "puri": 16910, - "puri": 21974, - "purification": 47724, - "purity": 29780, - "purple": 17837, - "purple": 5496, - "purpose": 33492, - "purpose": 7391, - "purposes": 22020, - "purr": 49262, - "purr": 46343, - "purse": 16480, - "pursue": 19463, - "pursuing": 26424, - "pursuit": 16469, - "purée": 40981, - "pus": 13841, - "pusa": 40825, - "push": 16028, - "push": 6831, - "pushaw": 35407, - "pushaward": 35448, - "pushawards": 47184, - "pushed": 16155, - "pushes": 23828, - "pushing": 11549, - "put": 29535, - "put": 1983, - "putin": 10693, - "putnam": 40235, - "puts": 7898, - "putt": 30279, - "putter": 44723, - "putting": 5154, - "puzz": 19760, - "puzzle": 12875, - "puzzles": 27986, - "pv": 14517, - "pv": 13495, - "pvc": 26959, - "pvp": 44172, - "pvt": 29898, - "pw": 19419, - "pw": 16067, - "pwc": 22965, - "px": 24790, - "px": 10262, - "pxrtg": 36262, - "py": 4005, - "py": 7504, - "pye": 31099, - "pyeongchang": 36066, - "pyg": 41450, - "pyram": 14405, - "pyramid": 18725, - "pyramids": 36877, - "pyrene": 36740, - "pyrenees": 39744, - "pyro": 39762, - "python": 13370, - "pz": 48361, - "pé": 43167, - "q": 80, - "q": 336, - "qa": 24944, - "qa": 16360, - "qad": 27844, - "qadri": 35672, - "qaeda": 31246, - "qanda": 48672, - "qanon": 19182, - "qant": 35404, - "qantas": 43250, - "qatar": 32804, - "qatar": 10872, - "qb": 8073, - "qbs": 38188, - "qc": 17406, - "qe": 30974, - "qf": 27215, - "qi": 25054, - "qi": 11256, - "qing": 46522, - "qing": 34339, - "ql": 28366, - "qld": 23039, - "qld": 13765, - "qldpol": 42296, - "qm": 42148, - "qotd": 24504, - "qpr": 24788, - "qq": 31960, - "qr": 18193, - "qs": 14364, - "qt": 15013, - "qtr": 44803, - "qu": 666, - "qu": 28646, - "qua": 20363, - "quack": 45575, - "quad": 11656, - "quad": 13419, - "quadcopter": 39792, - "quadru": 35831, - "quaid": 34265, - "quail": 34392, - "quaint": 45976, - "quake": 8421, - "quaker": 43395, - "quakes": 24572, - "qual": 9979, - "qual": 32405, - "qualcomm": 38683, - "quali": 4574, - "qualification": 21508, - "qualifications": 35225, - "qualified": 11927, - "qualifier": 18733, - "qualifiers": 21388, - "qualifies": 35820, - "qualify": 17019, - "qualifying": 11895, - "qualitative": 45847, - "qualities": 20488, - "quality": 28545, - "quality": 3027, - "quan": 11669, - "quan": 27490, - "quand": 28198, - "quant": 15050, - "quanti": 31540, - "quantitative": 40583, - "quantities": 33917, - "quantity": 26920, - "quantum": 15320, - "quar": 3856, - "quare": 42549, - "quarry": 27601, - "quart": 7851, - "quarter": 8816, - "quarter": 6632, - "quarterback": 16545, - "quarterfinal": 37992, - "quarterfinals": 28971, - "quarterly": 23350, - "quarters": 10146, - "quartet": 18056, - "quartz": 17752, - "quat": 25715, - "quattro": 40300, - "quay": 40276, - "quay": 17304, - "que": 1147, - "que": 2319, - "quebec": 15373, - "queen": 6407, - "queen": 2997, - "queenof": 44398, - "queens": 22943, - "queens": 9330, - "queensland": 15168, - "queer": 38874, - "queer": 18161, - "quel": 39774, - "quel": 21879, - "quen": 23876, - "quen": 38324, - "quent": 23808, - "quentin": 27530, - "quer": 17378, - "quer": 26859, - "quered": 23210, - "queries": 32958, - "querque": 30338, - "query": 27464, - "ques": 25328, - "ques": 7715, - "queso": 40110, - "quest": 31653, - "quest": 4846, - "questi": 2391, - "question": 18961, - "question": 4382, - "questionable": 30733, - "questioned": 31847, - "questioning": 24887, - "questions": 3883, - "quests": 44611, - "quet": 8513, - "quets": 39055, - "quetta": 38326, - "quette": 18993, - "queu": 32705, - "queue": 18549, - "queues": 40649, - "queuing": 44082, - "quez": 18677, - "quezon": 41117, - "qui": 1912, - "qui": 18046, - "quic": 26474, - "quiche": 47723, - "quick": 5969, - "quick": 3712, - "quicker": 29211, - "quickest": 37734, - "quickly": 7787, - "quid": 30732, - "quie": 43875, - "quien": 43482, - "quiere": 42723, - "quiero": 32567, - "quiet": 17853, - "quiet": 7557, - "quietly": 22208, - "quig": 44690, - "quil": 12305, - "quill": 48951, - "quilt": 23977, - "quilted": 46052, - "quin": 8607, - "quin": 17167, - "quincy": 27640, - "quind": 32339, - "quinn": 12306, - "quinoa": 26703, - "quins": 39701, - "quint": 26898, - "quinta": 47446, - "quinte": 22098, - "quintess": 37538, - "quintet": 35125, - "quipment": 42813, - "quir": 15943, - "quirky": 25044, - "quis": 15064, - "quist": 25128, - "quit": 19358, - "quit": 11140, - "quite": 4135, - "quito": 35828, - "quits": 32505, - "quitting": 33871, - "quity": 33133, - "quiz": 31197, - "quiz": 8344, - "quizz": 35041, - "quo": 3046, - "quo": 28127, - "quoi": 45549, - "quot": 5452, - "quot": 47587, - "quota": 42097, - "quotation": 49195, - "quote": 15446, - "quote": 4020, - "quoted": 27706, - "quoteoftheday": 19975, - "quotes": 5808, - "quoting": 31651, - "qur": 37782, - "quran": 19690, - "qureshi": 46307, - "qvist": 42322, - "qx": 45038, - "r": 81, - "r": 337, - "ra": 559, - "ra": 1735, - "raa": 44344, - "rab": 14816, - "rab": 33224, - "rabb": 6875, - "rabbi": 20959, - "rabbit": 10274, - "rabbits": 27028, - "rabhu": 25806, - "rable": 10182, - "rac": 1773, - "rac": 30462, - "raccoon": 29516, - "race": 10978, - "race": 2471, - "racec": 18814, - "racecourse": 25036, - "raced": 36021, - "racer": 16798, - "racers": 33603, - "races": 8605, - "raceway": 24650, - "rach": 6876, - "rach": 33429, - "racha": 21952, - "racha": 35022, - "rachael": 29095, - "rachel": 13511, - "rachel": 8029, - "raci": 33381, - "racial": 13801, - "racially": 43577, - "racing": 23306, - "racing": 3699, - "racism": 11276, - "racist": 9684, - "racists": 41777, - "rack": 24600, - "rack": 12034, - "racket": 37691, - "racks": 21191, - "rad": 4473, - "rad": 8238, - "rada": 30437, - "radar": 9672, - "radcliffe": 33096, - "rade": 44494, - "rade": 17911, - "rader": 45002, - "radford": 45800, - "radha": 43122, - "radi": 5772, - "radial": 42028, - "radiance": 45670, - "radiant": 25614, - "radiation": 18210, - "radiator": 39372, - "radic": 18082, - "radical": 13712, - "radicals": 45903, - "radio": 7176, - "radio": 2638, - "radioactive": 34704, - "radiodisney": 36483, - "radiohead": 39472, - "radiology": 29684, - "radios": 43669, - "radish": 37789, - "radius": 37570, - "rado": 29784, - "rae": 21646, - "rae": 15051, - "rael": 45390, - "raer": 44561, - "raf": 11495, - "raf": 11490, - "rafa": 14352, - "rafa": 24850, - "rafael": 38221, - "rafael": 19216, - "rafaelnadal": 49219, - "raff": 34900, - "raffic": 32928, - "raffle": 13752, - "raffles": 43489, - "rafi": 35304, - "raft": 9233, - "rafting": 36309, - "rag": 13958, - "rag": 20687, - "rage": 8593, - "rages": 34253, - "ragh": 35642, - "ragha": 40972, - "raging": 25015, - "ragn": 24125, - "ragnar": 34385, - "ragnarok": 41856, - "ragon": 34768, - "rags": 47838, - "rah": 12277, - "rah": 8766, - "raheem": 43317, - "rahim": 24152, - "rahman": 19680, - "rahu": 13129, - "rahul": 37239, - "rahul": 17440, - "rahulg": 27510, - "rahulgandhi": 28293, - "rai": 9165, - "rai": 9638, - "raid": 6877, - "raided": 43417, - "raider": 27368, - "raider": 21455, - "raidernation": 47901, - "raiders": 11817, - "raids": 26655, - "rail": 4573, - "rail": 6879, - "raila": 47273, - "railminindia": 35557, - "railroad": 17080, - "rails": 23427, - "railway": 27614, - "railway": 7856, - "railwayana": 46750, - "railways": 20765, - "raim": 45785, - "rain": 3128, - "rain": 2443, - "raina": 30564, - "rainbow": 24562, - "rainbow": 6286, - "rainbows": 30483, - "raine": 49038, - "raine": 6871, - "rained": 32310, - "rainf": 15024, - "rainfall": 15350, - "rainforest": 22823, - "rainier": 37850, - "raining": 13964, - "rains": 14272, - "rainy": 10222, - "rais": 14729, - "raise": 24249, - "raise": 5078, - "raised": 6027, - "raiser": 33555, - "raises": 13297, - "raisethe": 47109, - "raisin": 36864, - "raising": 6883, - "raj": 5958, - "raj": 10813, - "raja": 46069, - "raja": 19150, - "rajan": 46595, - "rajas": 16185, - "rajasthan": 18017, - "raje": 21899, - "rajesh": 43602, - "raji": 27569, - "rajini": 29600, - "rajini": 40622, - "rajinikanth": 32922, - "rajiv": 40197, - "rajkumar": 49304, - "rajput": 47572, - "raju": 47029, - "rak": 13523, - "rak": 26287, - "rake": 26825, - "rake": 32712, - "rakesh": 41083, - "ral": 8062, - "ral": 1406, - "rale": 14192, - "raleigh": 18207, - "rall": 23249, - "rallies": 25230, - "rally": 18882, - "rally": 5041, - "rallying": 36836, - "ralph": 25290, - "ralph": 12234, - "ram": 1976, - "ram": 2007, - "rama": 22112, - "ramad": 12736, - "ramadan": 15547, - "ramadhan": 47415, - "raman": 39816, - "ramapho": 43963, - "ramaphosa": 44993, - "ramatta": 49112, - "rambo": 41855, - "ramcharan": 45275, - "rame": 47745, - "ramen": 18892, - "ramesh": 48640, - "ramesh": 40186, - "rami": 43016, - "ramirez": 23877, - "ramon": 27958, - "ramone": 47201, - "ramos": 21046, - "ramp": 14271, - "rampage": 32077, - "rampant": 41985, - "ramps": 35257, - "rams": 10292, - "ramsay": 26259, - "ramsey": 19215, - "ran": 1433, - "ran": 4031, - "rana": 22143, - "ranbir": 40881, - "rance": 29034, - "ranch": 43955, - "ranch": 10659, - "rancho": 26258, - "rand": 5628, - "rand": 18718, - "randall": 23639, - "rande": 21469, - "randolph": 29899, - "random": 11396, - "random": 6160, - "randomly": 17272, - "rands": 39153, - "randy": 29479, - "randy": 13279, - "rane": 28852, - "rang": 4043, - "rang": 24377, - "range": 13627, - "range": 3818, - "ranger": 31472, - "ranger": 13593, - "rangers": 7664, - "ranges": 25685, - "ranging": 25946, - "rani": 29264, - "rani": 22631, - "rank": 11501, - "ranked": 8307, - "rankin": 37539, - "ranking": 12347, - "rankings": 12596, - "ranks": 14469, - "rano": 18608, - "rans": 46259, - "ransom": 28523, - "ransom": 34646, - "ransomware": 33815, - "rant": 46467, - "rant": 9819, - "rants": 34014, - "ranveer": 32402, - "ranveer": 41482, - "ranveerofficial": 42116, - "rao": 16913, - "rap": 7773, - "rap": 7348, - "rape": 46099, - "rape": 10070, - "raped": 23700, - "rapha": 22754, - "raphael": 30091, - "rapi": 8610, - "rapid": 47697, - "rapid": 12205, - "rapidly": 16710, - "rapids": 18848, - "raping": 44926, - "rapist": 33360, - "rapp": 19283, - "rapper": 11860, - "rappers": 30315, - "rapping": 42864, - "raps": 37887, - "raptor": 26762, - "raptors": 17035, - "raq": 39787, - "raq": 43312, - "raqqa": 47074, - "raquel": 44338, - "rar": 26819, - "rar": 24605, - "rard": 21012, - "rare": 18992, - "rare": 3865, - "rarely": 17315, - "rarest": 43237, - "rarity": 45862, - "ras": 23492, - "ras": 8224, - "rasc": 30085, - "rascal": 43481, - "rash": 14917, - "rash": 30608, - "rashad": 46527, - "rasheed": 41638, - "rashi": 19426, - "rashid": 26757, - "rasp": 10487, - "raspberries": 37742, - "raspberry": 40162, - "raspberry": 13615, - "raspberrypi": 43934, - "rass": 45654, - "rasta": 47002, - "rat": 3806, - "rat": 8985, - "rata": 28568, - "ratchet": 25078, - "rate": 5068, - "rated": 8183, - "rates": 6864, - "rath": 18268, - "rath": 39772, - "rather": 5252, - "rati": 11486, - "rating": 10567, - "ratings": 14176, - "ratio": 15893, - "ration": 27002, - "ration": 35662, - "rational": 33086, - "ratna": 49078, - "ratri": 32288, - "rats": 19043, - "ratt": 20737, - "ratt": 34785, - "rattle": 40824, - "rattle": 41839, - "rau": 27744, - "raul": 30218, - "raun": 41169, - "rav": 14367, - "rav": 23606, - "rave": 38784, - "rave": 17601, - "ravel": 27927, - "raven": 10269, - "raven": 16803, - "ravens": 17946, - "ravi": 22947, - "ravi": 19538, - "ravin": 39099, - "raving": 45807, - "raviol": 41104, - "ravioli": 43460, - "raw": 10166, - "raw": 6323, - "rawlings": 40662, - "rax": 38520, - "ray": 5312, - "ray": 3077, - "raya": 29991, - "raymond": 16683, - "rayn": 47852, - "rayon": 47900, - "rays": 11064, - "raz": 9700, - "raz": 19087, - "raza": 37724, - "razer": 33832, - "razor": 24934, - "razor": 21300, - "razz": 43769, - "rb": 12740, - "rb": 7477, - "rbc": 37500, - "rbi": 15687, - "rbs": 29102, - "rc": 7575, - "rc": 7457, - "rca": 33942, - "rcb": 45240, - "rcmp": 31489, - "rcn": 49370, - "rctid": 49223, - "rd": 13501, - "rd": 1973, - "rda": 45755, - "rdr": 44364, - "rds": 32378, - "re": 515, - "re": 810, - "rea": 11521, - "reach": 4483, - "reach": 4279, - "reached": 6878, - "reaches": 14462, - "reaching": 11358, - "react": 36566, - "react": 15065, - "reacted": 42515, - "reacting": 40595, - "reaction": 7189, - "reactions": 18438, - "reactive": 42072, - "reactjs": 46173, - "reactor": 32037, - "reacts": 23115, - "read": 933, - "read": 1199, - "reader": 9884, - "readers": 10335, - "readiness": 28131, - "reading": 17556, - "reading": 2337, - "readingfc": 47428, - "readings": 23361, - "reads": 6597, - "ready": 17351, - "ready": 1112, - "reagan": 17767, - "real": 2017, - "real": 1532, - "realdonaldtrump": 7025, - "reale": 5930, - "realest": 45855, - "realestate": 32937, - "realestate": 6569, - "reali": 4185, - "realis": 38114, - "realise": 14773, - "realised": 17945, - "realising": 39537, - "realism": 20024, - "realist": 30248, - "realistic": 16157, - "realities": 32443, - "reality": 46802, - "reality": 5004, - "realization": 40402, - "realize": 7538, - "realized": 10489, - "realizes": 42918, - "realizing": 23284, - "reall": 39686, - "really": 43249, - "really": 1414, - "realm": 23083, - "realmadrid": 27866, - "realms": 43033, - "realness": 46761, - "realtime": 44002, - "realtime": 38203, - "realtor": 18038, - "realtors": 31759, - "realty": 20471, - "ream": 37242, - "ream": 15219, - "rean": 48477, - "reap": 31334, - "reaper": 29922, - "rear": 39652, - "rear": 10223, - "reas": 9121, - "reason": 12882, - "reason": 3893, - "reasonable": 18558, - "reasonably": 38589, - "reasoning": 30341, - "reasons": 5686, - "reau": 32398, - "reb": 12370, - "reb": 18796, - "reba": 48543, - "rebate": 43817, - "rebe": 25227, - "rebec": 10774, - "rebecca": 12892, - "rebel": 8185, - "rebel": 12248, - "rebellion": 22170, - "rebels": 13623, - "rebirth": 33303, - "reboot": 22385, - "reborn": 30229, - "reboun": 43381, - "rebound": 31280, - "rebounds": 19190, - "rebs": 28164, - "rebu": 43162, - "rebuild": 20022, - "rebuilding": 30880, - "rebuilt": 33137, - "rec": 1020, - "rec": 11243, - "recall": 15151, - "recalled": 32142, - "recalling": 47855, - "recalls": 24740, - "recap": 29816, - "recap": 8337, - "recaps": 47997, - "recard": 35536, - "rece": 1890, - "recei": 2148, - "receip": 38503, - "receipt": 30479, - "receipts": 41181, - "receive": 4800, - "received": 4178, - "receiver": 17659, - "receivers": 45294, - "receives": 10027, - "receiving": 7252, - "recent": 3969, - "recently": 4482, - "recep": 17450, - "reception": 8364, - "receptions": 46881, - "receptor": 41835, - "recess": 38182, - "recession": 27176, - "recharge": 29396, - "rechargeable": 37516, - "reci": 2037, - "recipe": 28923, - "recipe": 4614, - "recipeoftheday": 38727, - "recipes": 9243, - "recipi": 10136, - "recipient": 13703, - "recipients": 18940, - "recipro": 41789, - "recital": 23457, - "recite": 48824, - "reck": 11715, - "reckless": 26284, - "reckon": 23854, - "recl": 42277, - "reclaim": 35969, - "reclaimed": 32648, - "reco": 2535, - "reco": 46038, - "recogn": 6343, - "recogni": 5329, - "recognise": 19824, - "recognised": 20986, - "recognising": 48423, - "recognition": 9415, - "recognizable": 47240, - "recognize": 10905, - "recognized": 9929, - "recognizes": 26909, - "recognizing": 19666, - "recomm": 4540, - "recommend": 11628, - "recommend": 8942, - "recommendation": 20118, - "recommendations": 16516, - "recommended": 11100, - "recommending": 44301, - "recommends": 22940, - "recon": 15371, - "recon": 28996, - "reconciliation": 26451, - "reconstruction": 24955, - "recor": 1723, - "record": 21328, - "record": 2717, - "recorded": 9392, - "recorder": 26747, - "recording": 48237, - "recording": 6942, - "recordings": 19715, - "records": 4529, - "recover": 16785, - "recovered": 16444, - "recovering": 19005, - "recovers": 47935, - "recovery": 6591, - "recre": 22148, - "recreate": 29775, - "recreated": 40888, - "recreating": 48224, - "recreation": 17331, - "recreational": 24329, - "recru": 4745, - "recruit": 9011, - "recruit": 15585, - "recruited": 36518, - "recruiter": 43120, - "recruiters": 46542, - "recruiting": 10533, - "recruitment": 10541, - "recruits": 22647, - "recs": 33069, - "rectan": 43041, - "rectangular": 43321, - "rector": 41585, - "recu": 26798, - "recur": 19983, - "recurring": 35912, - "recy": 6790, - "recycla": 40659, - "recyclable": 48907, - "recycle": 19366, - "recycled": 16829, - "recycling": 12566, - "red": 1893, - "red": 736, - "redbubble": 46137, - "redbull": 29483, - "redbull": 29219, - "redcarpet": 32259, - "redcross": 30659, - "redd": 22149, - "redd": 40618, - "redding": 41061, - "reddish": 43383, - "reddit": 15226, - "reddy": 23028, - "rede": 10913, - "redeem": 37449, - "redefining": 46352, - "redemption": 20233, - "redesign": 24188, - "redesigned": 33111, - "redevelopment": 30322, - "redhead": 36267, - "redi": 7976, - "redman": 44753, - "redmond": 39627, - "rednation": 28180, - "rednationrising": 28262, - "redneck": 39105, - "redness": 22626, - "redo": 42524, - "redon": 48506, - "redro": 37722, - "reds": 11221, - "redskins": 19023, - "redsox": 19144, - "reduc": 5015, - "reduce": 6604, - "reduced": 10821, - "reduces": 20539, - "reducing": 13836, - "reduction": 12219, - "reductions": 48263, - "redux": 43014, - "redvelvet": 41845, - "redwings": 31058, - "redwood": 31748, - "ree": 9282, - "ree": 5813, - "reebok": 26734, - "reece": 30457, - "reed": 26209, - "reed": 10435, - "reedus": 32865, - "reef": 46557, - "reef": 15624, - "reefs": 34459, - "reel": 34467, - "reel": 17166, - "reels": 48127, - "reem": 48891, - "reen": 21638, - "reen": 23679, - "rees": 18314, - "reese": 20929, - "reeves": 23060, - "ref": 4067, - "ref": 9591, - "refe": 5624, - "refer": 18425, - "refer": 22325, - "referee": 20398, - "referees": 45583, - "referen": 13535, - "reference": 10214, - "references": 24009, - "referendum": 16732, - "referr": 47784, - "referral": 30219, - "referred": 22969, - "referring": 29797, - "refers": 30069, - "refill": 37859, - "refin": 13455, - "refined": 26098, - "refinery": 31393, - "refining": 48406, - "reflec": 4608, - "reflect": 13373, - "reflected": 28732, - "reflecting": 19700, - "reflection": 11884, - "reflections": 16647, - "reflective": 27008, - "reflects": 15821, - "reflex": 45756, - "reflex": 36050, - "reform": 45678, - "reform": 8875, - "reformation": 45119, - "reformed": 40880, - "reforms": 19274, - "refr": 34850, - "refre": 11995, - "refresh": 17836, - "refresh": 23288, - "refreshed": 35925, - "refresher": 41481, - "refreshing": 14159, - "refreshments": 31127, - "refriger": 21076, - "refrigerator": 36662, - "refs": 35595, - "refu": 3545, - "refuge": 5638, - "refuge": 17432, - "refugee": 11556, - "refugees": 42687, - "refugees": 8316, - "refund": 28899, - "refur": 15519, - "refurbi": 18259, - "refurbished": 26190, - "refurbishment": 35803, - "refusal": 46547, - "refuse": 16412, - "refused": 17190, - "refuses": 20085, - "refusing": 26704, - "reg": 5472, - "reg": 12353, - "regain": 37510, - "regal": 31512, - "regal": 25028, - "regan": 34062, - "regar": 5881, - "regard": 21801, - "regarded": 32017, - "regarding": 8493, - "regardless": 17220, - "regards": 23079, - "regatta": 26316, - "regen": 46545, - "regency": 29341, - "regeneration": 29257, - "regent": 30455, - "regents": 46710, - "regg": 12757, - "reggae": 37821, - "reggae": 15214, - "reggie": 21872, - "regi": 1608, - "regime": 11378, - "regiment": 18603, - "regin": 23287, - "regina": 16841, - "region": 16542, - "region": 4341, - "regional": 5552, - "regionals": 26043, - "regions": 14530, - "regis": 28094, - "register": 3967, - "registered": 10254, - "registering": 33510, - "registr": 29193, - "registration": 7302, - "registrations": 38423, - "registry": 30020, - "rego": 47351, - "regram": 30329, - "regrann": 48802, - "regre": 8627, - "regression": 43733, - "regret": 14374, - "regrets": 23231, - "regu": 3411, - "regui": 46722, - "regul": 11847, - "regular": 14882, - "regular": 6307, - "regularly": 17263, - "regulat": 14575, - "regulate": 33494, - "regulated": 31384, - "regulating": 48156, - "regulation": 14267, - "regulations": 16654, - "regulator": 30364, - "regulators": 35837, - "regulatory": 17717, - "reh": 21492, - "reha": 10193, - "rehab": 16973, - "rehabil": 17930, - "rehabilitation": 21042, - "rehear": 7273, - "rehearsal": 11482, - "rehearsals": 17977, - "rehearsing": 23125, - "rehman": 39206, - "rei": 15343, - "rei": 26033, - "reic": 41230, - "reich": 48589, - "reich": 28929, - "reid": 45125, - "reid": 11744, - "reig": 13092, - "reign": 41419, - "reign": 14827, - "reigning": 28409, - "reigns": 21217, - "reiki": 46960, - "reilly": 28120, - "reim": 35421, - "reimagined": 46799, - "reimbur": 39857, - "rein": 9240, - "rein": 45009, - "reina": 43847, - "reinde": 23810, - "reindeer": 25072, - "reinfor": 48161, - "reinforced": 41909, - "reinst": 33969, - "reinvent": 38171, - "reissue": 34042, - "reiter": 35394, - "rejec": 9958, - "reject": 22435, - "rejected": 17505, - "rejection": 32264, - "rejects": 23155, - "rejo": 20150, - "rejoice": 24712, - "rejuven": 26332, - "rek": 47542, - "rek": 19201, - "rel": 1825, - "rel": 5233, - "rela": 4362, - "reland": 15220, - "relat": 27192, - "relatable": 31010, - "relate": 17520, - "related": 5880, - "relates": 36064, - "relating": 27373, - "relation": 4561, - "relation": 16207, - "relations": 10100, - "relationship": 47239, - "relationship": 5837, - "relationships": 10610, - "relative": 17265, - "relatively": 18351, - "relatives": 21981, - "relax": 6777, - "relax": 9035, - "relaxation": 22194, - "relaxed": 18999, - "relaxing": 10256, - "relay": 12403, - "relays": 28404, - "rele": 1602, - "release": 29100, - "release": 2706, - "released": 3410, - "releases": 7393, - "releasethe": 44008, - "releasing": 10321, - "releg": 23378, - "relegated": 45884, - "relegation": 35040, - "relent": 22213, - "relentless": 27207, - "relessly": 33927, - "relev": 9349, - "relevance": 31400, - "relevant": 10568, - "reli": 2674, - "reliability": 27220, - "reliable": 13714, - "reliance": 27727, - "relic": 27802, - "relics": 43208, - "relief": 7518, - "relies": 41579, - "relieve": 28623, - "relieved": 36597, - "religi": 4940, - "religion": 8803, - "religions": 31189, - "religious": 8289, - "relish": 35550, - "relive": 23939, - "reliving": 47558, - "rell": 28802, - "rell": 7127, - "rella": 9952, - "relle": 31390, - "reloaded": 38908, - "relocated": 46791, - "relocation": 39198, - "rels": 23320, - "relu": 32058, - "reluct": 32549, - "reluctant": 45552, - "rely": 4158, - "relying": 42168, - "rem": 15098, - "rem": 21637, - "rema": 4569, - "remain": 29144, - "remain": 6415, - "remainder": 41672, - "remained": 23714, - "remaining": 11392, - "remains": 6807, - "remake": 16234, - "remark": 11136, - "remarkable": 12404, - "remarkably": 39087, - "remarks": 15001, - "remastered": 24932, - "rematch": 26473, - "rembrandt": 45972, - "reme": 20071, - "remedi": 18442, - "remedies": 25581, - "remedy": 25794, - "remem": 7966, - "rememb": 7062, - "remember": 22045, - "remember": 2195, - "remembered": 11763, - "remembering": 8135, - "remembers": 12551, - "remembrance": 40321, - "remembrance": 15860, - "remembranceday": 48333, - "rement": 7173, - "rements": 12667, - "remi": 41693, - "remin": 3216, - "remind": 9868, - "reminded": 12309, - "reminder": 5565, - "reminders": 34121, - "reminding": 19976, - "reminds": 8303, - "remington": 43527, - "reminis": 17723, - "reminiscent": 41704, - "reminiscing": 32552, - "remix": 8519, - "remixes": 31011, - "remn": 29127, - "remnants": 39032, - "remo": 4064, - "remo": 33259, - "remodel": 34159, - "remodel": 37495, - "remodeling": 41432, - "remote": 47163, - "remote": 9687, - "remotely": 32375, - "removable": 44095, - "removal": 13679, - "remove": 9709, - "removed": 10289, - "remover": 44267, - "removes": 29018, - "removing": 18504, - "remy": 30434, - "ren": 737, - "ren": 2596, - "rena": 12591, - "renais": 15409, - "renaissance": 16007, - "renal": 36096, - "renamed": 31535, - "renault": 17600, - "rence": 19245, - "rence": 1553, - "rences": 8545, - "rend": 33932, - "rend": 22851, - "render": 39752, - "render": 13024, - "rendered": 23652, - "rendering": 21339, - "renders": 39419, - "rendez": 43293, - "rendezvous": 45644, - "rendition": 28891, - "rendon": 46272, - "rendous": 49403, - "rends": 38842, - "rene": 15438, - "rene": 12597, - "renee": 23480, - "reneg": 29909, - "renegade": 41229, - "renergy": 37151, - "renew": 6645, - "renew": 22015, - "renewable": 31269, - "renewable": 15941, - "renewableenergy": 33357, - "renewables": 21619, - "renewal": 21270, - "renewed": 20524, - "renfre": 45043, - "reng": 36795, - "reno": 11520, - "reno": 12831, - "renov": 9984, - "renovated": 23839, - "renovation": 17121, - "renovations": 31311, - "renowned": 14727, - "rens": 18183, - "renshaw": 44445, - "rent": 17377, - "rent": 1609, - "rental": 12193, - "rentals": 24105, - "rented": 35932, - "rential": 31692, - "renting": 37662, - "rently": 2615, - "rents": 31109, - "reo": 15963, - "reo": 26854, - "reon": 15761, - "reopen": 26883, - "reopened": 32868, - "reopening": 36663, - "reopens": 40644, - "rep": 4229, - "rep": 6487, - "repair": 8419, - "repaired": 32953, - "repairing": 38534, - "repairs": 16297, - "repar": 34065, - "repe": 5785, - "repeal": 42622, - "repeal": 23938, - "repeat": 10192, - "repeated": 27904, - "repeatedly": 26630, - "repeating": 33834, - "repeats": 39158, - "repell": 46235, - "repent": 47261, - "reper": 29085, - "repet": 38533, - "repl": 13047, - "replac": 6069, - "replace": 9466, - "replaceable": 47762, - "replaced": 13200, - "replacement": 10835, - "replaces": 27781, - "replacing": 18647, - "replay": 16875, - "repleni": 44839, - "replic": 21651, - "replica": 18125, - "replied": 24238, - "replies": 18808, - "reply": 8965, - "replying": 47599, - "repor": 2628, - "report": 2417, - "reported": 7598, - "reportedly": 10953, - "reporter": 11019, - "reporters": 18454, - "reporting": 9218, - "reports": 4908, - "reposit": 41276, - "repository": 46977, - "repost": 33147, - "repost": 7217, - "repostapp": 38388, - "reposting": 20223, - "reppin": 19163, - "repping": 22574, - "repre": 3397, - "represent": 8293, - "represent": 8406, - "representation": 13520, - "representative": 13175, - "representatives": 15591, - "represented": 12299, - "representing": 7561, - "represents": 14433, - "repri": 31854, - "reproduction": 35714, - "reproductive": 25522, - "reps": 14265, - "reptile": 36938, - "reptiles": 38679, - "republic": 6376, - "republic": 7185, - "republican": 9842, - "republicans": 12384, - "repur": 41852, - "req": 42411, - "requ": 10664, - "reque": 9539, - "request": 7813, - "requested": 16199, - "requesting": 33245, - "requests": 17087, - "requi": 4863, - "requiem": 40316, - "require": 14437, - "required": 8500, - "requirement": 27146, - "requirements": 12860, - "requires": 13396, - "requiring": 33425, - "requis": 42602, - "rer": 41295, - "rer": 3407, - "rera": 14301, - "rero": 21860, - "rers": 18869, - "res": 4466, - "res": 934, - "resc": 3956, - "rescheduled": 43553, - "rescu": 8618, - "rescue": 28567, - "rescue": 5718, - "rescued": 11919, - "rescues": 32439, - "rescuing": 43770, - "rese": 13000, - "resear": 6090, - "research": 25694, - "research": 2379, - "researched": 42733, - "researcher": 18334, - "researchers": 9522, - "researching": 24544, - "reseller": 35391, - "resemb": 16916, - "resemblance": 26856, - "resemble": 37230, - "resembles": 35417, - "reser": 16420, - "reserv": 11906, - "reservation": 20289, - "reservations": 19307, - "reserve": 6911, - "reserved": 19796, - "reserves": 19705, - "reservoir": 20574, - "reset": 26250, - "resh": 47432, - "reshi": 39435, - "resi": 2152, - "residen": 22311, - "residence": 11672, - "residences": 38855, - "residency": 18545, - "resident": 9016, - "residente": 44637, - "residentevil": 48393, - "residential": 11002, - "residents": 6008, - "resign": 23584, - "resignation": 24779, - "resigned": 31014, - "resigns": 29738, - "resil": 10932, - "resili": 39212, - "resilience": 15271, - "resilient": 24694, - "resin": 24156, - "resist": 37345, - "resist": 9587, - "resistance": 7392, - "resistant": 17542, - "resisting": 43679, - "resolution": 9977, - "resolutions": 26816, - "resolve": 20787, - "resolved": 28807, - "reson": 18092, - "resonance": 42310, - "resort": 6594, - "resorts": 18839, - "resource": 43729, - "resource": 9760, - "resources": 6723, - "respec": 7466, - "respect": 31411, - "respect": 4916, - "respected": 19126, - "respectful": 24379, - "respecting": 36172, - "respective": 25817, - "respectively": 28794, - "respects": 23553, - "respir": 20771, - "respiratory": 24483, - "respon": 2421, - "respond": 12355, - "responded": 21121, - "respondents": 49253, - "responders": 25155, - "responding": 18037, - "responds": 17436, - "response": 5399, - "responses": 19006, - "responsi": 5490, - "responsibilities": 30375, - "responsibility": 11272, - "responsible": 8936, - "responsibly": 33675, - "responsive": 21544, - "ress": 34651, - "ress": 13629, - "resso": 15133, - "rest": 10974, - "rest": 2539, - "restart": 37378, - "restaur": 3775, - "restaurant": 41930, - "restaurant": 4489, - "restaurants": 11714, - "rested": 46020, - "resting": 18044, - "restless": 36724, - "restling": 30076, - "resto": 11118, - "resto": 41666, - "restock": 34060, - "restocked": 36966, - "restor": 8984, - "restoration": 11989, - "restorative": 46509, - "restore": 14008, - "restored": 14238, - "restoring": 24406, - "restra": 25424, - "restric": 11036, - "restricted": 27197, - "restriction": 44282, - "restrictions": 19884, - "restroom": 43423, - "restructuring": 43260, - "rests": 33775, - "resu": 10095, - "resul": 2655, - "result": 5659, - "resulted": 26449, - "resulting": 24581, - "results": 3790, - "resume": 15077, - "resumes": 30268, - "resur": 14865, - "resurg": 45962, - "resurgence": 47692, - "resurrec": 18487, - "resurrection": 25811, - "resusc": 47523, - "ret": 20500, - "ret": 10048, - "reta": 20153, - "retail": 14910, - "retail": 6455, - "retailer": 22549, - "retailers": 19418, - "retain": 24430, - "retained": 42737, - "retaining": 35571, - "retains": 42583, - "retali": 33101, - "retar": 29964, - "retarded": 44111, - "retention": 26247, - "rethink": 29078, - "rethinking": 42951, - "reti": 4721, - "retin": 31270, - "retina": 36919, - "retire": 18846, - "retired": 11477, - "retirement": 9205, - "retires": 29060, - "retiring": 21200, - "retrac": 32735, - "retreat": 11210, - "retri": 16918, - "retriever": 28394, - "retro": 6535, - "retro": 7755, - "retrogamer": 47220, - "retrogaming": 11316, - "retrospective": 27105, - "rett": 41082, - "rett": 8425, - "rette": 33066, - "return": 43042, - "return": 3458, - "returned": 10476, - "returning": 9290, - "returns": 5020, - "retwee": 48190, - "retweet": 3195, - "retweeted": 12705, - "retweeting": 32345, - "retweets": 10160, - "rety": 41550, - "reu": 20255, - "reu": 40371, - "reuben": 40450, - "reunion": 10247, - "reunite": 26179, - "reunited": 13516, - "reusable": 30395, - "reuse": 26535, - "reut": 15210, - "reuters": 15569, - "rev": 8424, - "rev": 11789, - "revamp": 29819, - "revamped": 36420, - "revan": 45277, - "reve": 3115, - "reveal": 8052, - "revealed": 7171, - "revealing": 21321, - "reveals": 6621, - "revel": 14133, - "revelation": 24053, - "revelations": 36163, - "reven": 10171, - "revenge": 12717, - "revenue": 10637, - "revenues": 33348, - "rever": 14829, - "rever": 41913, - "revere": 44187, - "reverend": 34407, - "revers": 20726, - "reversal": 33367, - "reverse": 12812, - "reversed": 42485, - "reversi": 31601, - "reversible": 34212, - "revi": 8317, - "review": 2268, - "reviewed": 16678, - "reviewer": 36409, - "reviewers": 48195, - "reviewing": 20458, - "reviews": 7227, - "revise": 46801, - "revised": 22806, - "revising": 46882, - "revision": 20335, - "revisit": 26568, - "revisited": 34302, - "revisiting": 33144, - "revit": 26367, - "revitalization": 46923, - "revival": 14142, - "revive": 26450, - "revived": 42912, - "revo": 28660, - "revol": 13447, - "revolt": 31697, - "revolu": 4900, - "revolution": 17699, - "revolution": 6644, - "revolutionary": 14734, - "revolver": 38747, - "revolving": 47230, - "revs": 49286, - "revue": 43428, - "rew": 37564, - "rewar": 15857, - "reward": 11223, - "rewarded": 27163, - "rewarding": 23351, - "rewards": 15235, - "rewatch": 35610, - "rewatching": 41287, - "rewind": 26867, - "rewrite": 45218, - "rex": 13002, - "rex": 10904, - "rexperience": 33924, - "rey": 9681, - "rey": 4517, - "reyes": 18255, - "reykja": 47571, - "reyn": 11998, - "reynolds": 14309, - "reys": 48284, - "rez": 27597, - "rez": 15192, - "reza": 35888, - "rf": 35529, - "rf": 16368, - "rfc": 19003, - "rfid": 40204, - "rg": 33055, - "rg": 14897, - "rgb": 36128, - "rgv": 33685, - "rh": 8745, - "rh": 22404, - "rha": 19473, - "rhapso": 32532, - "rhapsody": 35774, - "rhe": 9186, - "rhea": 28612, - "rhetor": 24359, - "rhetoric": 29985, - "rhett": 42984, - "rheu": 42953, - "rhi": 21212, - "rhin": 12269, - "rhine": 22863, - "rhine": 44833, - "rhinestone": 30450, - "rhino": 41744, - "rhino": 20056, - "rhinos": 30671, - "rho": 7637, - "rhode": 39302, - "rhode": 27907, - "rhodes": 17785, - "rhon": 25882, - "rhonda": 46100, - "rhp": 27199, - "rhs": 24551, - "rhu": 23897, - "rhubarb": 30213, - "rhy": 7740, - "rhyme": 37356, - "rhymes": 33143, - "rhys": 28647, - "rhyth": 27069, - "rhythm": 16172, - "rhythmic": 46386, - "rhythms": 40872, - "ri": 553, - "ri": 2574, - "ria": 3650, - "rial": 15200, - "rian": 7788, - "rib": 44634, - "rib": 18298, - "riba": 44992, - "ribb": 10081, - "ribbon": 12114, - "ribbons": 35271, - "ribe": 46115, - "ribs": 17519, - "ric": 920, - "ric": 4798, - "rica": 14230, - "rical": 18109, - "rican": 30958, - "ricardo": 23140, - "ricci": 35783, - "ricciardo": 49282, - "rice": 36362, - "rice": 4741, - "rich": 5223, - "rich": 4021, - "richar": 9350, - "richard": 9080, - "richard": 4470, - "richards": 11372, - "richardson": 15984, - "riche": 23286, - "richer": 34138, - "riches": 37093, - "richest": 25572, - "richi": 38934, - "richie": 19797, - "richland": 43079, - "richmond": 34143, - "richmond": 11292, - "richter": 37591, - "rick": 6237, - "rick": 3064, - "ricket": 46161, - "ricket": 23671, - "ricks": 23111, - "ricky": 19188, - "ricky": 12814, - "rico": 37962, - "rico": 11362, - "ricotta": 38473, - "rics": 7353, - "ricul": 6980, - "rid": 18103, - "rid": 9874, - "ridd": 21990, - "ridden": 32025, - "riddle": 31839, - "ride": 15816, - "ride": 2994, - "rider": 31056, - "rider": 9707, - "riders": 10826, - "rides": 11308, - "ridg": 42646, - "ridge": 16580, - "ridge": 6352, - "ridic": 9624, - "ridiculous": 12659, - "ridiculously": 25661, - "ridin": 47869, - "riding": 6765, - "ridley": 27883, - "rie": 14824, - "rie": 5322, - "ried": 7552, - "riel": 26696, - "rien": 35237, - "rier": 40714, - "rier": 13336, - "ries": 28179, - "ries": 3059, - "riesling": 36372, - "rif": 7044, - "riff": 30359, - "rifle": 15354, - "rifles": 25678, - "rift": 26681, - "rig": 18462, - "rig": 13871, - "riga": 36626, - "rigged": 35897, - "rigging": 38160, - "riggs": 40328, - "righ": 15391, - "right": 13341, - "right": 1155, - "righte": 20762, - "righteous": 28169, - "righteousness": 42481, - "rightful": 42601, - "rightly": 42669, - "rights": 3336, - "rigid": 43138, - "rigor": 36788, - "rigorous": 41654, - "rigs": 42893, - "rihanna": 13744, - "rij": 41097, - "rik": 31136, - "rik": 27832, - "rika": 28580, - "ril": 12270, - "ril": 2388, - "riley": 35056, - "riley": 12260, - "rill": 23705, - "rilla": 43956, - "rilla": 18685, - "rim": 28147, - "rim": 12199, - "rime": 27064, - "rimin": 11527, - "rimo": 47817, - "rims": 34327, - "rin": 5859, - "rin": 11739, - "rina": 12869, - "rine": 24952, - "ring": 8318, - "ring": 2540, - "ringed": 44712, - "ringer": 35761, - "ringing": 26035, - "ringo": 38845, - "rings": 5751, - "rington": 12455, - "rink": 21497, - "rinka": 47316, - "rino": 47188, - "rinse": 48320, - "rio": 15681, - "rio": 5782, - "rion": 31623, - "rion": 34046, - "rios": 32814, - "riot": 32636, - "riot": 14218, - "riots": 24844, - "rious": 6340, - "rip": 10353, - "rip": 4243, - "ripe": 22832, - "ripley": 41589, - "ripp": 25276, - "ripped": 17815, - "ripper": 35347, - "ripping": 29126, - "ripple": 24825, - "rips": 30182, - "rir": 36792, - "ris": 6108, - "ris": 1999, - "rise": 13641, - "rise": 3151, - "risen": 23653, - "risers": 44983, - "rises": 13362, - "riseup": 35760, - "rish": 18378, - "rish": 18927, - "rishi": 48434, - "rising": 30452, - "rising": 5448, - "risis": 37998, - "risk": 27967, - "risk": 4213, - "risking": 48155, - "risks": 12474, - "risky": 27630, - "risotto": 31471, - "rist": 40610, - "rit": 5156, - "rit": 17333, - "rita": 16178, - "ritchie": 30997, - "rite": 39318, - "rite": 18429, - "rites": 36160, - "rith": 48169, - "rith": 48850, - "riti": 32904, - "rito": 19379, - "ritos": 33507, - "ritt": 26092, - "ritter": 34854, - "ritu": 13391, - "ritual": 19712, - "rituals": 31145, - "ritz": 39151, - "ritz": 25627, - "rium": 33884, - "riv": 25113, - "rival": 13412, - "rival": 15629, - "rivalry": 19511, - "rivals": 15135, - "rive": 27588, - "rive": 34917, - "river": 5239, - "river": 2473, - "rivera": 18275, - "riverdale": 28304, - "riverfront": 44439, - "rivers": 10723, - "riverside": 15809, - "riveting": 44024, - "riviera": 25851, - "rix": 43407, - "rix": 9483, - "riya": 36908, - "riyad": 31564, - "riyadh": 33577, - "riz": 18426, - "riz": 35411, - "rizal": 41555, - "rizio": 40191, - "rizz": 34826, - "rizzo": 49076, - "rj": 26016, - "rj": 20949, - "rk": 38725, - "rk": 21422, - "rl": 18041, - "rl": 14590, - "rlly": 43222, - "rly": 25954, - "rm": 20202, - "rm": 8431, - "rmb": 49097, - "rms": 40529, - "rn": 13206, - "rn": 7666, - "rna": 24566, - "rnb": 31556, - "rnc": 35309, - "rnli": 29748, - "ro": 532, - "ro": 2795, - "roa": 8313, - "roach": 31073, - "road": 4370, - "road": 1759, - "roadhouse": 47891, - "roadmap": 30111, - "roads": 6189, - "roadsafety": 39992, - "roadshow": 21168, - "roadside": 26928, - "roadster": 28920, - "roadto": 24681, - "roadtrip": 15094, - "roadway": 42744, - "roam": 34045, - "roaming": 29240, - "roano": 34184, - "roanoke": 36587, - "roar": 34193, - "roar": 18483, - "roaring": 26428, - "roast": 11404, - "roasted": 10479, - "roasting": 32228, - "rob": 2668, - "rob": 6442, - "robb": 14059, - "robb": 39673, - "robbed": 24163, - "robber": 35545, - "robbers": 40852, - "robbery": 16393, - "robbi": 44898, - "robbie": 37200, - "robbie": 15970, - "robbing": 47569, - "robbins": 23461, - "robby": 44128, - "robe": 23116, - "rober": 4532, - "robert": 8811, - "robert": 3929, - "roberta": 43373, - "roberto": 42645, - "roberto": 16227, - "roberts": 10366, - "robertson": 17643, - "robes": 29304, - "robi": 16743, - "robin": 6681, - "robin": 7988, - "robins": 35502, - "robinson": 8523, - "robles": 47646, - "roblo": 27481, - "roblox": 37798, - "robo": 4672, - "robo": 36057, - "robot": 46089, - "robot": 8797, - "robotic": 23975, - "robotics": 13546, - "robots": 13473, - "robson": 31113, - "robust": 22780, - "robyn": 34533, - "roc": 3268, - "roc": 13776, - "rocco": 30009, - "roch": 23788, - "rochdale": 41880, - "roche": 31776, - "rochelle": 40161, - "rochester": 18057, - "rock": 2640, - "rock": 2172, - "rockab": 39353, - "rockabilly": 45019, - "rocke": 19914, - "rocked": 16116, - "rockefeller": 35476, - "rocker": 29008, - "rockers": 32338, - "rocket": 25435, - "rocket": 8383, - "rockets": 13292, - "rockford": 41039, - "rockies": 20621, - "rockin": 12073, - "rocking": 7081, - "rockn": 24442, - "rocknroll": 27840, - "rocks": 6135, - "rockstar": 23603, - "rockstar": 18000, - "rockstargames": 27516, - "rockstars": 46639, - "rockthe": 49363, - "rockwell": 34747, - "rocky": 33481, - "rocky": 9648, - "rod": 9712, - "rod": 8291, - "roddy": 42332, - "rode": 18449, - "rodeo": 18250, - "rodgers": 17612, - "rodi": 49100, - "rodney": 21753, - "rodri": 11053, - "rodrigo": 33944, - "rodriguez": 14057, - "rods": 28618, - "roe": 27671, - "roe": 9996, - "rof": 33029, - "rofl": 48228, - "roft": 45212, - "rog": 34269, - "rog": 34017, - "rogen": 23380, - "roger": 13929, - "roger": 7735, - "rogerfederer": 40182, - "rogers": 10661, - "rogue": 32575, - "rogue": 15162, - "roh": 14933, - "roh": 29840, - "rohan": 39848, - "rohing": 23600, - "rohingya": 26146, - "rohit": 44649, - "rohit": 24299, - "roi": 21877, - "rok": 36807, - "rol": 3393, - "rol": 7818, - "roland": 33713, - "roland": 19569, - "role": 18485, - "role": 3414, - "roles": 11871, - "rolex": 21093, - "rolf": 48606, - "roll": 4711, - "roll": 3341, - "rolled": 11982, - "roller": 21034, - "roller": 12342, - "rollercoaster": 38248, - "rollers": 36941, - "rollin": 27545, - "rolling": 24250, - "rolling": 6347, - "rollingstones": 41309, - "rollins": 27724, - "rollout": 47710, - "rollover": 39214, - "rolls": 8614, - "rolltide": 28101, - "rom": 11377, - "rom": 19205, - "roma": 44134, - "roma": 11631, - "romain": 48897, - "roman": 4416, - "roman": 7370, - "romance": 7215, - "romania": 15884, - "romanian": 30866, - "romano": 38409, - "romans": 23066, - "romantic": 41457, - "romantic": 8821, - "rome": 9406, - "rome": 5243, - "romeo": 14429, - "romero": 23694, - "romney": 19287, - "romo": 32248, - "romper": 43699, - "ron": 2393, - "ron": 3372, - "rona": 42385, - "ronal": 46194, - "ronald": 15683, - "ronaldo": 13463, - "ronan": 34971, - "rond": 31935, - "ronda": 37436, - "rondo": 43756, - "rone": 48082, - "rone": 32763, - "roni": 47234, - "ronnie": 45257, - "ronnie": 16421, - "rons": 19536, - "ront": 48881, - "roo": 1249, - "roo": 31227, - "rood": 38007, - "roof": 9120, - "roof": 6449, - "roofing": 24415, - "roofs": 34635, - "rooftop": 16319, - "rook": 35918, - "rookie": 9771, - "rookies": 31917, - "room": 8845, - "room": 1530, - "roomie": 36851, - "roommate": 19825, - "roommates": 37323, - "rooms": 6328, - "rooney": 17712, - "roos": 32938, - "roosevel": 17644, - "roosevelt": 18488, - "rooster": 46263, - "rooster": 30926, - "roosters": 43693, - "root": 25930, - "root": 9728, - "rooted": 30428, - "rooting": 25523, - "roots": 8084, - "rop": 43401, - "rope": 9953, - "ropes": 30506, - "ror": 8668, - "ror": 2843, - "rors": 12072, - "rory": 42804, - "rory": 17813, - "ros": 5288, - "ros": 6930, - "rosa": 14393, - "rosal": 30397, - "rosario": 33640, - "rosary": 33098, - "rosberg": 46037, - "rose": 6146, - "rose": 3568, - "roseanne": 47528, - "rosel": 33616, - "rosemary": 19472, - "rosen": 13214, - "rosen": 36424, - "rosenberg": 43558, - "rosenthal": 46990, - "roses": 9061, - "rosetta": 43800, - "rosewood": 38686, - "rosie": 43049, - "rosie": 16888, - "ross": 8801, - "ross": 2158, - "rosse": 11602, - "rossi": 24817, - "rosso": 33023, - "roster": 12487, - "roswell": 45116, - "rosy": 46705, - "rosé": 28006, - "rot": 10055, - "rot": 9643, - "rotar": 45959, - "rotary": 14654, - "rotating": 32265, - "rotation": 18089, - "rotc": 32252, - "roth": 17741, - "roth": 19139, - "rother": 23174, - "rotherham": 37687, - "rothschild": 45089, - "roti": 46940, - "roto": 34698, - "rotor": 42991, - "rots": 16642, - "rott": 34806, - "rotten": 24324, - "rotter": 22614, - "rotterdam": 23422, - "rotun": 42970, - "rou": 2964, - "rou": 34783, - "roud": 28375, - "rouge": 16209, - "rough": 11699, - "rough": 8511, - "roughly": 21910, - "roughs": 37598, - "rouhani": 39912, - "roulette": 39930, - "roun": 5602, - "round": 9403, - "round": 2522, - "roundabout": 29953, - "rounded": 26973, - "rounder": 37024, - "rounding": 40208, - "rounds": 11242, - "roundtable": 19386, - "roundup": 17503, - "roup": 29220, - "rourke": 38753, - "rous": 33645, - "rous": 34531, - "rousey": 46267, - "rout": 7502, - "rout": 41778, - "route": 5261, - "router": 29962, - "routes": 14923, - "routine": 12319, - "routines": 44074, - "routing": 44086, - "roux": 43416, - "rov": 23971, - "rove": 30130, - "rover": 12776, - "rovers": 16373, - "row": 5275, - "row": 1044, - "rowan": 26240, - "rowdy": 32141, - "rowe": 28323, - "rowed": 22615, - "rower": 43345, - "rowers": 41806, - "rowing": 12807, - "rowland": 33037, - "rowley": 48793, - "rowling": 29371, - "rown": 22287, - "rown": 25060, - "rows": 9409, - "rox": 14111, - "rox": 41033, - "roxy": 28093, - "roy": 2128, - "roy": 6354, - "royal": 6691, - "royal": 3853, - "royale": 20630, - "royalnavy": 41545, - "royals": 13335, - "royalties": 48660, - "royalty": 18296, - "royalwedding": 27461, - "royce": 18444, - "royd": 41476, - "royo": 39357, - "roz": 28989, - "roz": 37250, - "rp": 17305, - "rp": 8174, - "rpa": 41872, - "rpg": 12445, - "rpm": 23715, - "rps": 49215, - "rr": 5311, - "rr": 9126, - "rrp": 36967, - "rrr": 18267, - "rrrr": 25561, - "rrrr": 34444, - "rs": 6978, - "rs": 1724, - "rsa": 29437, - "rsc": 48524, - "rsd": 34426, - "rsi": 39046, - "rsl": 44752, - "rsp": 16381, - "rspb": 38508, - "rspb": 36727, - "rspca": 45643, - "rss": 46466, - "rss": 22350, - "rstats": 38700, - "rsvp": 9774, - "rt": 8959, - "rt": 8991, - "rtc": 31648, - "rte": 33822, - "rte": 23322, - "rtg": 22028, - "rti": 47549, - "rtr": 43999, - "rts": 8496, - "rtw": 34673, - "ru": 681, - "ru": 13735, - "rub": 15862, - "rub": 22586, - "rubb": 19597, - "rubbed": 45239, - "rubber": 31131, - "rubber": 11331, - "rubbing": 41262, - "rubbish": 21108, - "rubble": 42230, - "ruben": 44058, - "ruben": 29722, - "rubi": 27856, - "rubin": 34128, - "rubio": 24244, - "rubs": 43422, - "ruby": 24552, - "ruby": 11493, - "ruck": 27449, - "rucker": 45402, - "rud": 35256, - "rudd": 31836, - "rude": 16548, - "rudi": 48360, - "rudol": 40927, - "rudolf": 46835, - "rudolph": 30119, - "rudy": 38226, - "rudy": 22131, - "rue": 38024, - "rue": 19276, - "rufc": 45084, - "ruff": 28177, - "ruff": 30304, - "rufus": 39322, - "rug": 4217, - "rug": 19220, - "rugby": 15091, - "rugby": 4964, - "rugbyleague": 44419, - "ruger": 48655, - "rugged": 25225, - "rugs": 29946, - "rui": 46974, - "ruin": 16256, - "ruined": 17231, - "ruining": 29952, - "ruins": 16094, - "ruiz": 27873, - "ruk": 46628, - "rukh": 43075, - "rukh": 27631, - "rule": 31643, - "rule": 6175, - "ruled": 16324, - "ruler": 26286, - "rulers": 45328, - "rules": 5272, - "ruling": 14690, - "rum": 9223, - "rum": 11233, - "rumb": 42432, - "rumble": 18900, - "rumi": 31428, - "rumor": 22254, - "rumored": 36694, - "rumors": 16160, - "rumour": 34296, - "rumours": 20716, - "rump": 29366, - "run": 1639, - "run": 1934, - "runaway": 28851, - "runchat": 25838, - "rundown": 41100, - "rune": 33882, - "rune": 49244, - "runner": 37370, - "runner": 7913, - "runners": 10571, - "runnin": 43130, - "running": 24451, - "running": 2761, - "runoff": 38564, - "runs": 5586, - "runway": 13927, - "rup": 7996, - "rup": 14980, - "rupaul": 44211, - "rupee": 43916, - "rupees": 44110, - "rupert": 25625, - "rupt": 23055, - "ruption": 35403, - "rural": 28801, - "rural": 8737, - "rus": 35811, - "rus": 5998, - "rush": 12148, - "rush": 6973, - "rushed": 28104, - "rusher": 48745, - "rushes": 47217, - "rushing": 20284, - "russ": 6285, - "russ": 20764, - "russell": 26122, - "russell": 8150, - "russi": 2600, - "russia": 4018, - "russian": 30731, - "russian": 4868, - "russians": 25413, - "russo": 30679, - "rust": 28682, - "rust": 14212, - "rustic": 19822, - "rusty": 43966, - "rusty": 22646, - "rut": 14973, - "rut": 39102, - "rutger": 49029, - "rutgers": 28934, - "ruth": 15798, - "ruth": 12029, - "ruther": 26676, - "rutherford": 31070, - "ruthless": 36063, - "rutland": 46024, - "ruto": 43702, - "ruz": 23275, - "rv": 17135, - "rv": 17951, - "rva": 24278, - "rw": 9085, - "rw": 22926, - "rwa": 47452, - "rwand": 31758, - "rwanda": 15427, - "rwby": 39698, - "rwc": 32321, - "rx": 41188, - "rx": 15945, - "ry": 1511, - "ry": 913, - "ryan": 8682, - "ryan": 4053, - "ryanair": 43526, - "ryder": 43564, - "ryder": 21805, - "rye": 24015, - "rye": 17409, - "rying": 7838, - "ryn": 37728, - "ryo": 24460, - "rys": 21654, - "ryu": 46656, - "ryu": 34604, - "ré": 29106, - "s": 82, - "s": 338, - "sa": 774, - "sa": 1344, - "saa": 13429, - "saab": 27158, - "saad": 36530, - "saas": 25761, - "saat": 33151, - "sab": 3233, - "sab": 23213, - "saba": 38344, - "sabah": 32854, - "saban": 41620, - "sabar": 47102, - "sabbath": 26008, - "sabc": 30010, - "sabcnews": 41093, - "saber": 46822, - "saber": 25624, - "sabha": 23431, - "sabi": 47073, - "sabine": 44062, - "sable": 19224, - "sabot": 30700, - "sabotage": 40496, - "sabre": 35110, - "sabres": 29620, - "sabrin": 37029, - "sabrina": 24994, - "sac": 3632, - "sac": 12905, - "sach": 30168, - "sacha": 49010, - "sachin": 47527, - "sachin": 30297, - "sachs": 31451, - "sack": 28964, - "sack": 14979, - "sacked": 27519, - "sacks": 26441, - "sacram": 13334, - "sacramento": 16065, - "sacred": 40612, - "sacred": 12477, - "sacri": 15283, - "sacrif": 12117, - "sacrific": 16919, - "sacrifice": 12556, - "sacrificed": 31116, - "sacrifices": 28858, - "sacrificing": 48146, - "sad": 2810, - "sad": 3719, - "saddened": 27720, - "saddest": 34925, - "saddle": 30469, - "saddle": 20283, - "sade": 27429, - "sadh": 40955, - "sadi": 22207, - "sadie": 30333, - "sadiq": 44107, - "sadler": 45600, - "sadly": 11603, - "sadness": 20399, - "sae": 38633, - "sae": 34883, - "saeed": 29745, - "saf": 2125, - "saf": 25760, - "safar": 23443, - "safari": 14091, - "safarilive": 34816, - "safc": 27998, - "safe": 2901, - "safe": 2996, - "safeguard": 42249, - "safeguarding": 47451, - "safely": 11513, - "safer": 40124, - "safer": 15504, - "safest": 38973, - "safety": 19050, - "safety": 3406, - "safetyfirst": 43608, - "saffron": 27529, - "sag": 6609, - "sag": 30048, - "saga": 15758, - "sagan": 37193, - "sagar": 42518, - "sage": 25800, - "sage": 7509, - "sages": 25979, - "sagin": 47097, - "sagitt": 44685, - "sagu": 44708, - "sah": 30943, - "sah": 26342, - "saha": 36062, - "sahara": 24599, - "saharan": 44255, - "sahi": 24608, - "sahib": 34150, - "sai": 16048, - "sai": 10886, - "said": 40319, - "said": 1946, - "saif": 44164, - "saig": 36328, - "saigon": 41081, - "sail": 7528, - "sail": 12156, - "sailed": 43047, - "sailing": 11003, - "sailor": 28002, - "sailor": 16076, - "sailormoon": 40673, - "sailors": 25355, - "sails": 27526, - "sain": 21226, - "sain": 40378, - "sains": 24860, - "sainsbury": 45879, - "sainsburys": 36934, - "saint": 11274, - "saint": 5599, - "saints": 8769, - "saintsfc": 31102, - "sair": 46600, - "sair": 30971, - "saire": 28087, - "saison": 33256, - "sait": 48008, - "saj": 33580, - "sak": 11511, - "sak": 35900, - "saka": 33609, - "sake": 12874, - "sakh": 43945, - "saki": 40514, - "saku": 37550, - "sakura": 24162, - "sal": 980, - "sal": 6126, - "sala": 17300, - "salaam": 46773, - "salad": 6188, - "salads": 30948, - "salah": 22516, - "salam": 19007, - "salam": 33963, - "salamat": 44696, - "salami": 46885, - "salaries": 33132, - "salary": 16312, - "salazar": 45988, - "sale": 17786, - "sale": 1690, - "saleh": 38353, - "salem": 48194, - "salem": 16884, - "sales": 13347, - "sales": 3765, - "salesforce": 22680, - "salesman": 37633, - "salford": 25629, - "sali": 15411, - "salim": 42760, - "salinas": 41990, - "saline": 46918, - "salis": 20667, - "salis": 39378, - "salisbury": 24763, - "sall": 27122, - "sall": 20883, - "salle": 23738, - "sally": 29542, - "sally": 13349, - "salman": 13754, - "salman": 16219, - "salmankhan": 15177, - "salmon": 37040, - "salmon": 9137, - "salom": 38268, - "salon": 33916, - "salon": 11105, - "saloon": 26038, - "sals": 16307, - "salsa": 16442, - "salt": 12763, - "salt": 6611, - "salted": 26313, - "saltlife": 47809, - "salts": 40559, - "saltwater": 43616, - "salty": 20678, - "salu": 31711, - "salud": 46867, - "salut": 44998, - "salute": 44908, - "salute": 9747, - "salutes": 32762, - "salv": 8299, - "salvador": 20874, - "salvage": 33131, - "salvation": 19534, - "salvatore": 38772, - "salz": 33594, - "salzburg": 43396, - "sam": 1644, - "sam": 3730, - "sama": 19272, - "samanth": 11465, - "samantha": 15466, - "samanthap": 38266, - "samanthaprabhu": 38643, - "samar": 21820, - "samaritan": 45495, - "samba": 37190, - "same": 23062, - "same": 2208, - "samheughan": 36255, - "sami": 48400, - "sami": 24322, - "sammy": 31091, - "sammy": 16758, - "samo": 30006, - "samoa": 34932, - "samp": 31225, - "sample": 9542, - "sampler": 40629, - "samples": 13387, - "sampling": 19522, - "sampson": 39983, - "sams": 44667, - "samson": 34659, - "samsun": 47875, - "samsung": 35369, - "samsung": 8115, - "samu": 7646, - "samuel": 30612, - "samuel": 12787, - "samurai": 21739, - "san": 1489, - "san": 2223, - "sana": 19434, - "sanantonio": 34714, - "sanat": 29091, - "sanatomy": 36052, - "sanc": 7398, - "sance": 15930, - "sanchez": 13971, - "sanctioned": 43032, - "sanctions": 17790, - "sanctu": 12712, - "sanctuary": 14044, - "sand": 2147, - "sand": 5094, - "sandal": 36445, - "sandal": 42185, - "sandals": 20731, - "sandalwood": 47502, - "sandeep": 46973, - "sander": 34111, - "sanders": 10429, - "sanderson": 36198, - "sandi": 44249, - "sandiego": 45997, - "sandiego": 15793, - "sandman": 45730, - "sando": 35921, - "sandoval": 44157, - "sandra": 33733, - "sandra": 13415, - "sandro": 42389, - "sands": 5936, - "sandstone": 36796, - "sandwich": 17050, - "sandwich": 8687, - "sandwiches": 19667, - "sandy": 29679, - "sandy": 10355, - "sane": 23419, - "sanford": 32330, - "sanfrancisco": 20254, - "sang": 13235, - "sang": 11684, - "sange": 12466, - "sangria": 42665, - "sani": 39137, - "sani": 34492, - "sanitary": 33842, - "sanitation": 25414, - "saniti": 43987, - "sanity": 30517, - "sanjay": 31712, - "sanjay": 25796, - "sanje": 40405, - "sanjose": 45971, - "sank": 43692, - "sano": 34053, - "sans": 16982, - "sansk": 39689, - "sanskrit": 48083, - "sant": 8356, - "sant": 23120, - "santa": 22175, - "santa": 4555, - "santac": 28876, - "santam": 45627, - "santana": 27033, - "santander": 46476, - "santi": 13856, - "santiago": 16568, - "santo": 29631, - "santo": 18400, - "santor": 28448, - "santorini": 39573, - "santos": 16582, - "sany": 47679, - "sao": 28026, - "sap": 8089, - "sap": 11591, - "sapi": 40016, - "sapp": 13427, - "sapp": 40729, - "sapphire": 22044, - "sar": 1808, - "sar": 9424, - "sara": 37196, - "sara": 10063, - "sarab": 40716, - "sarac": 35722, - "sarah": 9086, - "sarah": 5327, - "saraj": 42592, - "sarajevo": 48211, - "saras": 20373, - "sarasota": 31990, - "sarato": 24845, - "saratoga": 29496, - "sarawak": 47331, - "sarcasm": 37246, - "sarcastic": 48639, - "sardar": 41786, - "sarde": 43925, - "sardin": 27383, - "sardinia": 41025, - "sare": 13051, - "saree": 30860, - "sargent": 34864, - "sari": 42327, - "sari": 20261, - "saries": 47586, - "sarkar": 30673, - "sarko": 33658, - "sarkodie": 42848, - "sarmy": 20954, - "sart": 33006, - "sary": 15398, - "sas": 3960, - "sas": 5235, - "sash": 35656, - "sasha": 46078, - "sasha": 20894, - "sasia": 44751, - "sask": 47091, - "sask": 30416, - "saskat": 17102, - "saskatchewan": 23899, - "saskatoon": 31128, - "sass": 31351, - "sassy": 20827, - "sat": 1382, - "sat": 3279, - "sata": 41520, - "satan": 19446, - "satanic": 38224, - "satchel": 45908, - "sate": 35749, - "satell": 9031, - "satellite": 10316, - "satellites": 28483, - "sath": 29675, - "sathletics": 30154, - "sati": 7038, - "satin": 21803, - "sation": 23674, - "sations": 31232, - "satire": 29875, - "satis": 9906, - "satisf": 22941, - "satisfaction": 19925, - "satisfied": 18101, - "satisfy": 29444, - "satisfying": 23755, - "sato": 34376, - "satu": 45283, - "satur": 1634, - "saturated": 32466, - "saturday": 12537, - "saturday": 1748, - "saturdaymorning": 29053, - "saturdaymotivation": 40843, - "saturdays": 18930, - "saturn": 17312, - "saty": 39426, - "sau": 2096, - "sau": 19455, - "sauce": 5520, - "saucer": 42272, - "sauces": 40367, - "saucy": 46684, - "saudi": 24511, - "saudi": 8548, - "saudiarabia": 28680, - "sauer": 46333, - "saul": 47623, - "saul": 23252, - "sault": 40361, - "sauna": 35460, - "saunders": 23794, - "saur": 13227, - "saura": 46532, - "saurus": 22118, - "saus": 36121, - "sausage": 11855, - "sausages": 31593, - "sauté": 36290, - "sautéed": 38517, - "sauvi": 30116, - "sauvignon": 32745, - "sav": 2248, - "sav": 26533, - "sava": 40198, - "savag": 43039, - "savage": 11859, - "savannah": 18662, - "save": 5895, - "save": 2673, - "saved": 7137, - "saveour": 33390, - "saver": 20987, - "savers": 31416, - "saves": 12907, - "savethe": 18031, - "savi": 14721, - "saving": 28498, - "saving": 6979, - "savings": 10651, - "savior": 24762, - "saviour": 35800, - "savor": 48071, - "savory": 32992, - "savoury": 49071, - "savoy": 39552, - "savvy": 29278, - "saw": 12429, - "saw": 2425, - "sawa": 39613, - "sawards": 29012, - "sawyer": 27726, - "sax": 14169, - "sax": 23766, - "saxon": 31856, - "saxophon": 43760, - "saxophone": 32296, - "say": 3047, - "say": 1451, - "saya": 35170, - "sayang": 46322, - "sayers": 44116, - "sayin": 23662, - "saying": 4455, - "says": 1563, - "saz": 35577, - "sb": 5576, - "sb": 4977, - "sba": 44970, - "sback": 43840, - "sband": 27539, - "sbaseball": 46491, - "sbball": 39190, - "sbc": 31404, - "sberg": 20358, - "sbi": 41369, - "sbk": 39211, - "sboro": 18909, - "sbridge": 49228, - "sbs": 18883, - "sbu": 48075, - "sbu": 46281, - "sburg": 7390, - "sburgh": 48205, - "sbury": 14081, - "sby": 26519, - "sby": 10287, - "sc": 663, - "sc": 3219, - "sca": 11001, - "scab": 31716, - "scaf": 28981, - "scafe": 45574, - "scaffolding": 41687, - "scal": 10859, - "scala": 37997, - "scalable": 44084, - "scale": 37817, - "scale": 5879, - "scaled": 41923, - "scales": 22891, - "scaling": 29116, - "scallo": 19936, - "scallop": 39544, - "scallops": 31430, - "scalp": 38898, - "scam": 17620, - "scam": 13215, - "scamp": 28451, - "scams": 34395, - "scan": 10650, - "scan": 11261, - "scanada": 27121, - "scand": 8110, - "scandal": 35420, - "scandal": 11622, - "scandals": 45490, - "scandin": 32014, - "scandinavian": 35661, - "scanned": 43719, - "scanner": 24185, - "scanning": 24092, - "scans": 31251, - "scap": 35883, - "scape": 36005, - "scape": 12314, - "scapes": 31933, - "scar": 4171, - "scar": 18088, - "scarborough": 24254, - "scarce": 38572, - "scarcity": 45812, - "scare": 33536, - "scare": 15920, - "scarec": 38814, - "scarecrow": 46504, - "scared": 9870, - "scares": 34096, - "scarf": 13365, - "scari": 27050, - "scariest": 37213, - "scarlet": 20389, - "scarlett": 28325, - "scars": 20747, - "scarves": 29249, - "scary": 9250, - "scat": 13899, - "scattered": 22090, - "scavenger": 36778, - "scc": 19458, - "scd": 48422, - "scen": 2204, - "scenario": 20456, - "scenarios": 31346, - "scence": 33418, - "scene": 3562, - "scenery": 16025, - "scenes": 5415, - "scenic": 15394, - "scent": 36277, - "scent": 7683, - "scented": 27190, - "scenter": 23059, - "scentre": 39371, - "scents": 26336, - "scep": 24439, - "scfc": 38578, - "sch": 844, - "sch": 7542, - "scha": 42809, - "schaf": 45588, - "schaft": 41010, - "schal": 35568, - "schalke": 41029, - "schallenge": 43665, - "schan": 31328, - "schar": 15085, - "schat": 31842, - "schau": 35830, - "sche": 3038, - "sche": 7289, - "schedu": 4207, - "schedule": 5521, - "scheduled": 10986, - "schedules": 28986, - "scheduling": 32216, - "scheer": 26776, - "schel": 39881, - "schel": 38569, - "schem": 17720, - "scheme": 9024, - "schemes": 22958, - "schen": 22738, - "scher": 21925, - "scher": 21299, - "schi": 13731, - "schi": 24984, - "schicago": 46230, - "schiff": 39431, - "schild": 32148, - "schiz": 33230, - "schizoph": 40004, - "schizophre": 41163, - "schle": 32022, - "schmid": 17375, - "schmidt": 18463, - "schnau": 45745, - "schnei": 19941, - "schneider": 22972, - "schnit": 40903, - "scho": 2493, - "schoice": 23860, - "schol": 4498, - "scholar": 7192, - "scholar": 12830, - "scholarly": 41065, - "scholars": 13818, - "scholarship": 9070, - "scholarships": 17866, - "scholastic": 35743, - "schoo": 20721, - "school": 6063, - "school": 1228, - "schooled": 44722, - "schoolers": 31455, - "schooling": 28608, - "schools": 3513, - "schre": 47685, - "schri": 25453, - "schro": 32381, - "schu": 11318, - "schubert": 46939, - "schul": 14945, - "schultz": 30308, - "schulz": 39572, - "schumacher": 39208, - "schumer": 25313, - "schur": 42475, - "schwab": 47602, - "schwar": 13985, - "schwartz": 30617, - "schwarz": 27074, - "schwarzenegger": 33860, - "schwe": 25324, - "sci": 2267, - "sci": 8309, - "sciart": 31704, - "scicom": 28606, - "scicomm": 29573, - "scien": 39261, - "science": 10201, - "science": 2497, - "sciencefiction": 39170, - "sciences": 11481, - "scienti": 4338, - "scientific": 9750, - "scientist": 11083, - "scientists": 8045, - "sciento": 36193, - "scientology": 44694, - "scifi": 41862, - "scifi": 12230, - "scion": 47208, - "sciss": 25667, - "scissors": 30867, - "sciutto": 44392, - "sclerosis": 39446, - "sclub": 20017, - "sco": 1065, - "sco": 4763, - "scoe": 31164, - "scol": 13599, - "scoll": 44895, - "scollege": 39536, - "scom": 26407, - "scon": 17163, - "scon": 29272, - "scones": 36443, - "sconf": 39704, - "scoo": 14199, - "scooby": 34469, - "scoop": 13829, - "scoops": 41360, - "scope": 7979, - "scopes": 30328, - "scopic": 23869, - "scopy": 20018, - "scor": 8442, - "score": 12067, - "score": 4431, - "scoreboard": 30104, - "scorecard": 38128, - "scored": 6143, - "scoreless": 33469, - "scorer": 16572, - "scorers": 26699, - "scores": 7039, - "scoring": 9198, - "scorpi": 15445, - "scorpio": 34331, - "scorpion": 28461, - "scorpions": 45401, - "scorsese": 45975, - "scot": 2496, - "scot": 9271, - "scotch": 16687, - "scoti": 46446, - "scotia": 27859, - "scotland": 29174, - "scotland": 4203, - "scots": 17260, - "scotsman": 39612, - "scott": 7775, - "scott": 3664, - "scotti": 6227, - "scottish": 18039, - "scottish": 7442, - "scottsdale": 27817, - "scotty": 39697, - "scotty": 26836, - "scotus": 21720, - "scou": 44909, - "scoun": 16110, - "scouncil": 48787, - "scountry": 40432, - "scour": 46172, - "scout": 32213, - "scout": 10786, - "scouting": 19072, - "scouts": 14837, - "scow": 27929, - "scowboys": 31386, - "scp": 45030, - "scr": 36131, - "scra": 11187, - "scrabble": 39488, - "scram": 17289, - "scramble": 32688, - "scrambled": 39026, - "scran": 41774, - "scranton": 45274, - "scrap": 27950, - "scrap": 21695, - "scrapbook": 48733, - "scrapped": 43325, - "scraps": 40809, - "scrat": 9572, - "scratch": 13258, - "scratched": 48831, - "scratches": 46556, - "scratching": 44617, - "scre": 1795, - "scream": 31645, - "scream": 13239, - "screamed": 35427, - "screaming": 12891, - "screams": 23989, - "screen": 5351, - "screen": 3750, - "screened": 31450, - "screening": 6688, - "screenings": 27655, - "screenplay": 30058, - "screens": 12689, - "screenshot": 20637, - "screenshot": 12646, - "screenshots": 26783, - "screenshotsaturday": 21406, - "screenwriter": 37293, - "screenwriting": 35465, - "screw": 25529, - "screw": 14225, - "screwdriver": 48748, - "screwed": 30592, - "screws": 38292, - "scri": 2139, - "scrib": 34259, - "scribe": 36228, - "scribed": 38334, - "scricket": 45947, - "scrim": 21978, - "scrimmage": 25216, - "scrip": 11955, - "script": 8374, - "scripted": 40513, - "scription": 26604, - "scriptions": 39512, - "scripts": 20109, - "scripture": 27186, - "scro": 30768, - "scroll": 24160, - "scrolling": 28889, - "scrolls": 38113, - "scroo": 42263, - "scru": 7589, - "scrub": 23432, - "scrubs": 37919, - "scrum": 29047, - "scrump": 39791, - "scrumptious": 40987, - "scrutiny": 34305, - "scs": 26853, - "sct": 39284, - "scu": 8181, - "scu": 32135, - "scuba": 39053, - "scuba": 20559, - "scubadiving": 49046, - "scue": 25955, - "scul": 4948, - "scully": 36598, - "sculp": 6093, - "sculpt": 45044, - "sculpted": 41296, - "sculpting": 44389, - "sculptor": 29409, - "sculpture": 8757, - "sculptures": 20378, - "scum": 29655, - "scumb": 44525, - "scup": 21506, - "scur": 32742, - "scwx": 41966, - "scy": 27471, - "sd": 3080, - "sd": 4159, - "sda": 25548, - "sdale": 12327, - "sday": 5902, - "sday": 1376, - "sdays": 14491, - "sdc": 40992, - "sdcc": 13246, - "sden": 17241, - "sdf": 34681, - "sdg": 20177, - "sdgs": 16261, - "sdk": 40015, - "sdlive": 34561, - "sdn": 41925, - "sdsu": 41284, - "se": 567, - "se": 611, - "sea": 5970, - "sea": 2102, - "seab": 15728, - "seabir": 42558, - "seac": 35626, - "seaf": 9336, - "seafood": 12472, - "seag": 15730, - "seagu": 38076, - "seagull": 38858, - "seagulls": 42215, - "seahawks": 15341, - "seal": 21381, - "seal": 10159, - "sealed": 13358, - "sealing": 42992, - "seals": 18179, - "seam": 13710, - "seam": 44201, - "seaman": 47513, - "seamless": 29373, - "seamus": 40175, - "sean": 11406, - "sean": 6077, - "seanhannity": 43316, - "seap": 29983, - "seaport": 46418, - "sear": 1612, - "search": 23129, - "search": 1920, - "searched": 28961, - "searches": 26378, - "searching": 10626, - "seared": 29727, - "sears": 26693, - "seas": 7329, - "seas": 9556, - "seascape": 42593, - "seaside": 18867, - "season": 19288, - "season": 1367, - "seasonal": 14215, - "seasoned": 28399, - "seasoning": 43439, - "seasons": 8635, - "seat": 19670, - "seat": 4922, - "seated": 23953, - "seater": 37543, - "seating": 16240, - "seats": 6944, - "seattle": 24388, - "seattle": 6274, - "seau": 32263, - "seaw": 32658, - "seaweed": 30204, - "seaworld": 27422, - "seb": 35766, - "seb": 25171, - "sebasti": 10324, - "sebastian": 43792, - "sebastian": 13181, - "sebring": 41086, - "sec": 2875, - "sec": 5338, - "seca": 37847, - "secco": 27394, - "sece": 46297, - "seclu": 42392, - "secon": 1846, - "second": 9329, - "second": 2241, - "secondary": 13107, - "seconds": 6541, - "secre": 2460, - "secret": 20710, - "secret": 4145, - "secretari": 29515, - "secretariat": 31767, - "secretary": 6552, - "secretly": 21400, - "secrets": 9735, - "secs": 28665, - "sect": 15772, - "section": 34986, - "section": 4853, - "sectional": 21876, - "sections": 20061, - "sector": 6579, - "sectors": 22173, - "secu": 4894, - "secular": 47483, - "secular": 27560, - "secur": 2557, - "secure": 44763, - "secure": 7515, - "secured": 16848, - "secures": 31567, - "securing": 24759, - "securities": 25080, - "security": 31245, - "security": 2741, - "sed": 14034, - "sed": 1252, - "sedan": 24237, - "sedg": 46926, - "sedge": 45288, - "sedi": 29269, - "sedly": 31771, - "sedona": 46862, - "seduc": 19933, - "seductive": 43721, - "see": 1751, - "see": 862, - "seed": 14064, - "seed": 6488, - "seeded": 33688, - "seeding": 40050, - "seedlings": 47933, - "seeds": 9128, - "seeing": 3214, - "seek": 8839, - "seeker": 28011, - "seekers": 20732, - "seeking": 8592, - "seeks": 12594, - "seem": 20043, - "seem": 7523, - "seemed": 17240, - "seemingly": 25917, - "seems": 4453, - "seen": 36273, - "seen": 2041, - "seer": 32486, - "sees": 7594, - "seeyou": 41279, - "sef": 27453, - "seg": 10551, - "sega": 16122, - "segment": 15615, - "segments": 43053, - "segreg": 49117, - "segregation": 39086, - "segu": 33156, - "segun": 43087, - "seh": 27536, - "seh": 41430, - "sehun": 17705, - "sei": 13130, - "sei": 15907, - "sein": 24669, - "seine": 41378, - "seinfeld": 33706, - "seis": 25559, - "seismic": 38459, - "seiz": 22171, - "seize": 26624, - "seized": 15826, - "seizure": 36804, - "seizures": 47199, - "sek": 45515, - "sek": 25880, - "sel": 1000, - "sel": 4098, - "sela": 47006, - "selamat": 37692, - "selangor": 44402, - "selby": 43546, - "selca": 38606, - "selcaday": 35924, - "seldom": 48322, - "sele": 29137, - "selec": 3014, - "select": 8690, - "selected": 6881, - "selecting": 32696, - "selection": 6724, - "selections": 24099, - "selective": 28686, - "selects": 32902, - "selen": 19970, - "selena": 14677, - "selenagomez": 27653, - "seley": 30556, - "self": 10139, - "self": 1322, - "selfcare": 39560, - "selfi": 3007, - "selfie": 26735, - "selfie": 3666, - "selfies": 46058, - "selfies": 10050, - "selfish": 26907, - "selfless": 34236, - "sell": 10279, - "sell": 5119, - "seller": 11779, - "sellers": 16562, - "selling": 4396, - "sells": 14306, - "selma": 36652, - "sels": 42070, - "selves": 4505, - "sely": 8402, - "sem": 8645, - "sem": 17106, - "sema": 31816, - "seman": 29119, - "seman": 28378, - "semana": 41780, - "semb": 36054, - "seme": 10855, - "sement": 10714, - "sements": 31449, - "semester": 11905, - "semi": 11023, - "semi": 6684, - "semic": 26967, - "semicon": 34315, - "semiconduc": 35646, - "semiconductor": 43551, - "semifinal": 22935, - "semifinals": 21863, - "semin": 5595, - "seminar": 7269, - "seminars": 34870, - "seminary": 31655, - "seminole": 42956, - "semis": 24013, - "semit": 22628, - "semite": 23721, - "semitic": 34894, - "semitism": 25911, - "semper": 47391, - "sen": 1057, - "sen": 2249, - "sena": 21584, - "senate": 30703, - "senate": 6843, - "senator": 20871, - "senator": 8495, - "senators": 16889, - "send": 27684, - "send": 3625, - "sending": 6985, - "sends": 10817, - "sene": 25269, - "seneca": 33419, - "senegal": 28255, - "senew": 49313, - "seng": 43022, - "seng": 29971, - "senior": 19865, - "senior": 3415, - "seniors": 8138, - "senna": 36195, - "senpai": 46562, - "sens": 5218, - "sens": 22837, - "sensation": 19383, - "sensational": 23051, - "sense": 29162, - "sense": 4747, - "sensei": 36158, - "senses": 21809, - "sensi": 38802, - "sensible": 30635, - "sensing": 29236, - "sensiti": 20531, - "sensitive": 13734, - "sensitivity": 27788, - "sensor": 15330, - "sensors": 20356, - "sensory": 21831, - "sensu": 28157, - "sensual": 40860, - "sent": 6200, - "sent": 3676, - "sentence": 12737, - "sentenced": 17773, - "sentences": 25858, - "sentencing": 34394, - "senti": 19042, - "sentim": 25102, - "sentiment": 25949, - "sentimental": 40070, - "sentiments": 47450, - "sentin": 20042, - "sentinel": 23123, - "senting": 3924, - "seo": 24743, - "seo": 8622, - "seok": 34697, - "seok": 22482, - "seokjin": 45584, - "seoul": 13253, - "sep": 3212, - "sep": 10434, - "separ": 6859, - "separate": 13886, - "separated": 22163, - "separately": 41904, - "separates": 45365, - "separati": 39377, - "separating": 43480, - "separation": 22007, - "sephora": 38414, - "sepsis": 40205, - "sept": 5380, - "septe": 3672, - "september": 3707, - "septic": 34690, - "sepul": 47360, - "seq": 44379, - "sequ": 5491, - "seque": 44662, - "sequel": 15701, - "sequence": 18833, - "sequences": 47306, - "sequencing": 33484, - "sequo": 32781, - "sequoia": 42404, - "ser": 803, - "ser": 2771, - "sera": 28250, - "serbia": 19038, - "serbian": 33687, - "sere": 35770, - "seren": 7880, - "serena": 19519, - "serenawilliams": 48316, - "serendip": 45805, - "serendipity": 49386, - "serene": 28269, - "serenity": 24187, - "serge": 13477, - "serge": 35700, - "sergeant": 22049, - "sergei": 39870, - "sergey": 35390, - "sergi": 47675, - "sergio": 18359, - "seri": 2763, - "seri": 37509, - "serial": 14216, - "serie": 19752, - "seriea": 32660, - "series": 1857, - "serious": 47421, - "serious": 4770, - "seriously": 4885, - "sermon": 24884, - "sero": 48883, - "serpent": 37084, - "serpent": 35364, - "serra": 39851, - "serrano": 44236, - "sers": 13509, - "serum": 25385, - "serv": 1297, - "serv": 24571, - "servant": 20810, - "servants": 29652, - "serve": 39202, - "serve": 2838, - "served": 4740, - "server": 36458, - "server": 8398, - "serverless": 49243, - "servers": 22262, - "serves": 9915, - "servic": 27115, - "service": 21496, - "service": 2086, - "serviced": 44687, - "services": 3100, - "servicing": 41300, - "serving": 5722, - "sery": 14279, - "ses": 23708, - "ses": 1386, - "sesame": 21706, - "sese": 37128, - "sesh": 24274, - "session": 2550, - "sessions": 6327, - "set": 7965, - "set": 1167, - "setback": 43605, - "seth": 20005, - "seth": 11870, - "sethu": 38933, - "setlist": 33141, - "seton": 43799, - "sets": 4650, - "sett": 4984, - "sett": 17567, - "sette": 14613, - "setter": 23153, - "settes": 44145, - "setti": 45170, - "setting": 5264, - "settings": 18628, - "settle": 15075, - "settled": 18310, - "settlement": 16494, - "settlements": 36605, - "settlers": 35671, - "settles": 41498, - "settling": 22036, - "setup": 11092, - "seu": 31539, - "seul": 48975, - "seum": 18838, - "seun": 24209, - "seung": 32393, - "seung": 33711, - "seungri": 41627, - "seuss": 34441, - "sev": 26585, - "sev": 37600, - "seva": 42604, - "seve": 21458, - "seve": 22468, - "sevel": 17439, - "seven": 7874, - "seven": 5757, - "sevens": 29911, - "sevent": 43048, - "seventeen": 19337, - "seventh": 17568, - "seventy": 47170, - "sever": 3250, - "sever": 45557, - "several": 5560, - "severance": 26194, - "severe": 6215, - "severely": 24417, - "severn": 34626, - "severy": 34207, - "sevilla": 24947, - "seville": 34988, - "sew": 28640, - "sewage": 32777, - "sewer": 28294, - "sewing": 15974, - "sewn": 42118, - "sex": 3548, - "sex": 5937, - "sexi": 20562, - "sexiest": 25426, - "sexism": 32059, - "sexist": 33047, - "sexu": 14741, - "sexual": 6749, - "sexuality": 21244, - "sexually": 23032, - "sexy": 21019, - "sexy": 38127, - "sey": 6317, - "sey": 2258, - "seychel": 36809, - "seychelles": 38519, - "seye": 35604, - "seym": 22657, - "seymour": 25850, - "seys": 15081, - "sez": 42377, - "señ": 43368, - "sf": 4435, - "sf": 4915, - "sfa": 32675, - "sfam": 37649, - "sfb": 27930, - "sfc": 14129, - "sfest": 49024, - "sff": 42056, - "sfgiants": 20923, - "sfield": 11801, - "sfo": 39182, - "sfootball": 45259, - "sfor": 9115, - "sford": 28917, - "sforsale": 28888, - "sfw": 18073, - "sfx": 37995, - "sg": 9599, - "sg": 7611, - "sga": 33049, - "sgate": 27558, - "sgh": 47590, - "sgo": 5393, - "sgo": 21044, - "sgt": 13748, - "sh": 552, - "sh": 849, - "sha": 1514, - "sha": 3337, - "shaa": 44221, - "shab": 8323, - "shabbat": 38042, - "shabby": 28838, - "shack": 23866, - "shack": 18785, - "shad": 3182, - "shad": 23874, - "shade": 34554, - "shade": 10097, - "shaded": 43506, - "shades": 46608, - "shades": 9270, - "shadesof": 45180, - "shading": 37348, - "shado": 9325, - "shadow": 15243, - "shadow": 7068, - "shadowhun": 19931, - "shadowhunters": 24834, - "shadowing": 46092, - "shadows": 12971, - "shady": 22158, - "shaf": 12032, - "shaft": 21545, - "shag": 22439, - "shaggy": 42662, - "shah": 13203, - "shah": 8439, - "shahe": 23643, - "shaheed": 30060, - "shaheer": 43969, - "shahi": 46972, - "shahid": 25696, - "shahid": 27138, - "shahidkapoor": 29892, - "shahzad": 45915, - "shai": 47941, - "shaikh": 45712, - "shail": 37603, - "shair": 43135, - "shak": 8385, - "shake": 8206, - "shake": 8251, - "shaken": 38237, - "shaker": 26210, - "shakers": 38411, - "shakes": 19668, - "shakespe": 9890, - "shakespeare": 22499, - "shakespeare": 12488, - "shakespearesunday": 32320, - "shaking": 19101, - "shakira": 40795, - "shakti": 48593, - "shakti": 32458, - "shakur": 48915, - "shal": 15056, - "shal": 28175, - "shale": 32864, - "shall": 4742, - "shallow": 23730, - "shalom": 31339, - "sham": 6453, - "sham": 9005, - "shaman": 48727, - "shambles": 40799, - "shame": 14776, - "shame": 7593, - "shameful": 28283, - "shameless": 25380, - "shaming": 40553, - "shampoo": 23944, - "shamrock": 34199, - "shan": 5171, - "shan": 8834, - "shana": 44835, - "shand": 29101, - "shane": 26863, - "shane": 11572, - "shang": 11141, - "shanghai": 12742, - "shani": 46665, - "shank": 24685, - "shankar": 24108, - "shann": 9932, - "shannon": 22842, - "shannon": 13581, - "shant": 36610, - "shap": 5581, - "shape": 26925, - "shape": 6448, - "shaped": 10127, - "shapes": 15377, - "shaping": 18632, - "shapiro": 32110, - "shaq": 46402, - "shaq": 26843, - "shar": 1669, - "shar": 36542, - "shara": 48849, - "sharapo": 36489, - "sharapova": 36671, - "shard": 42207, - "share": 7585, - "share": 1978, - "shared": 5368, - "shareholder": 38241, - "shareholders": 34778, - "sharepoint": 39213, - "shares": 4974, - "sharethe": 49277, - "shareyour": 45890, - "shari": 27738, - "shari": 47390, - "sharia": 37244, - "sharif": 15501, - "sharing": 3567, - "sharjah": 33420, - "shark": 15836, - "shark": 7980, - "sharks": 10047, - "sharkweek": 39571, - "sharma": 10105, - "sharon": 28722, - "sharon": 14138, - "sharp": 17126, - "sharp": 8157, - "sharpe": 34374, - "sharpen": 41465, - "sharpie": 46858, - "sharply": 37185, - "shasta": 46727, - "shat": 12169, - "shat": 44388, - "shatter": 45008, - "shattered": 26820, - "shau": 13750, - "shaun": 23446, - "shaun": 16669, - "shav": 11410, - "shave": 17735, - "shaved": 25571, - "shaving": 24261, - "shaw": 6122, - "shaw": 6805, - "shawa": 46413, - "shawl": 35132, - "shawn": 16677, - "shawn": 10970, - "shawnee": 48060, - "shawnmendes": 27277, - "shawty": 38026, - "shay": 10778, - "shay": 18361, - "shaykh": 47223, - "shaz": 18618, - "shazam": 29063, - "shc": 43419, - "shd": 37729, - "she": 1729, - "she": 1043, - "shea": 20407, - "shead": 44287, - "shead": 20434, - "shealth": 41743, - "shealth": 22197, - "shear": 27974, - "shear": 32108, - "shearer": 40505, - "sheath": 45637, - "shed": 16586, - "shed": 1492, - "shedding": 33608, - "sheds": 25921, - "shee": 23450, - "shee": 34321, - "sheed": 26105, - "sheehan": 41809, - "sheen": 25025, - "sheep": 23604, - "sheep": 9629, - "sheer": 17577, - "sheeran": 18561, - "sheet": 7298, - "sheets": 12744, - "shef": 8237, - "sheff": 38844, - "sheff": 43821, - "sheffiel": 26940, - "sheffield": 41763, - "sheffield": 10420, - "sheffieldissuper": 33628, - "sheh": 31667, - "sheikh": 15031, - "sheil": 42765, - "sheila": 25734, - "shek": 33285, - "shel": 3159, - "shelby": 36906, - "shelby": 16885, - "sheldon": 25079, - "shelf": 10955, - "shell": 23374, - "shell": 6648, - "shelley": 22497, - "shelling": 43166, - "shells": 19265, - "shelly": 37461, - "shelter": 8599, - "sheltered": 48070, - "shelters": 24312, - "shelton": 24471, - "shelves": 16225, - "shem": 40299, - "shen": 10154, - "shen": 31098, - "shenan": 20965, - "shenando": 44666, - "shenanigans": 26590, - "shenko": 39751, - "shenmue": 48279, - "shenzhen": 38970, - "shep": 33757, - "shep": 44857, - "shepard": 26810, - "shepher": 11008, - "shepherd": 13242, - "shepherds": 42792, - "sheppard": 37304, - "sher": 3570, - "sher": 4510, - "sheraton": 39400, - "shere": 21507, - "sheri": 9235, - "sheridan": 27085, - "sheriff": 10309, - "sherlock": 17294, - "sherman": 17822, - "sherry": 44348, - "sherry": 24689, - "shers": 14141, - "sherwood": 24527, - "sheryl": 39773, - "shes": 45514, - "shes": 2502, - "shet": 15850, - "shetland": 29595, - "shetty": 25533, - "shev": 45182, - "sheva": 45132, - "shh": 35025, - "shhh": 36932, - "shi": 823, - "shi": 3533, - "shia": 23791, - "shibu": 36177, - "shibuya": 41623, - "shie": 26638, - "shiel": 33413, - "shield": 8670, - "shields": 19085, - "shies": 35312, - "shif": 35317, - "shift": 43767, - "shift": 6905, - "shifted": 34429, - "shifter": 48944, - "shifting": 21992, - "shifts": 23957, - "shik": 36980, - "shil": 14370, - "shill": 32121, - "shill": 30090, - "shilpa": 47062, - "shilpa": 40690, - "shim": 11986, - "shim": 32780, - "shima": 14382, - "shimano": 48904, - "shimi": 40517, - "shimmer": 38792, - "shin": 5664, - "shin": 11784, - "shinde": 41516, - "shine": 17582, - "shine": 3780, - "shinee": 19660, - "shines": 16015, - "shing": 38641, - "shing": 1743, - "shining": 10485, - "shino": 43074, - "shiny": 12190, - "ship": 7645, - "ship": 1158, - "shipment": 28553, - "shipp": 34709, - "shipped": 15279, - "shippers": 44789, - "shipping": 5721, - "ships": 3262, - "shipwreck": 48878, - "shipy": 26828, - "shipyard": 31273, - "shir": 1956, - "shiraz": 35618, - "shire": 11975, - "shire": 2968, - "shirehour": 32456, - "shirley": 18189, - "shiro": 26048, - "shirt": 27576, - "shirt": 2523, - "shirtless": 28959, - "shirts": 5803, - "shistory": 34979, - "shiv": 18042, - "shiv": 37121, - "shiva": 33881, - "shiva": 21174, - "shka": 38944, - "shld": 49359, - "shma": 48074, - "shment": 8802, - "shments": 18822, - "sho": 719, - "sho": 13756, - "shock": 19617, - "shock": 8736, - "shocked": 15787, - "shocker": 37971, - "shockey": 22258, - "shocking": 13394, - "shocks": 31886, - "shoe": 16308, - "shoe": 7342, - "shoes": 49391, - "shoes": 4079, - "shol": 21472, - "sholm": 44139, - "shome": 42701, - "shon": 19526, - "shon": 37621, - "shone": 47173, - "shoo": 1975, - "shook": 20730, - "shoops": 29956, - "shoot": 12531, - "shoot": 3704, - "shooter": 13645, - "shooters": 31902, - "shooting": 3992, - "shootings": 26753, - "shootout": 20666, - "shoots": 14144, - "shop": 5738, - "shop": 1557, - "shopify": 47949, - "shoplocal": 21775, - "shopp": 38486, - "shoppe": 38236, - "shopped": 28088, - "shopper": 24346, - "shoppers": 22316, - "shopping": 42101, - "shopping": 4266, - "shops": 6467, - "shopsmall": 35942, - "shor": 3209, - "shore": 14717, - "shore": 5928, - "shored": 33140, - "shoreditch": 35042, - "shoreline": 34807, - "shores": 18102, - "short": 6803, - "short": 3005, - "shortage": 19910, - "shortages": 38730, - "shortcuts": 45793, - "shorten": 41711, - "shorter": 20350, - "shortest": 33717, - "shortfilm": 37204, - "shorth": 37397, - "shortlist": 28163, - "shortlisted": 20631, - "shortly": 11967, - "shorts": 9680, - "shorty": 33502, - "shot": 9805, - "shot": 2000, - "shotel": 42365, - "shotgun": 21643, - "shots": 5342, - "shou": 3890, - "shoul": 29847, - "should": 14947, - "should": 1535, - "shoulder": 8476, - "shoulders": 18738, - "shouldn": 9416, - "shour": 20025, - "shouse": 28671, - "shout": 7335, - "shout": 5214, - "shouted": 44397, - "shouting": 26464, - "shoutout": 8274, - "shouts": 26709, - "shovel": 31778, - "show": 2133, - "show": 1080, - "showbiz": 34156, - "showcas": 14290, - "showcase": 7265, - "showcased": 35786, - "showcases": 26266, - "showcasing": 17036, - "showdown": 15576, - "showed": 7150, - "shower": 7777, - "showers": 9893, - "showing": 3649, - "shown": 8506, - "showroom": 16821, - "shows": 2665, - "showtime": 40576, - "showtime": 15442, - "showyour": 46733, - "shp": 38341, - "shq": 21145, - "shr": 10118, - "shra": 21360, - "shradd": 28172, - "shraddha": 35208, - "shraddhakapoor": 40385, - "shre": 12101, - "shred": 19756, - "shred": 33017, - "shredded": 31772, - "shredding": 45534, - "shree": 37410, - "shrek": 35009, - "shrews": 26411, - "shrewsbury": 30921, - "shri": 8838, - "shri": 11424, - "shrimp": 12727, - "shrin": 24865, - "shrine": 16156, - "shrink": 34957, - "shrinking": 41243, - "shrm": 44163, - "shro": 15259, - "shroff": 32081, - "shrop": 22630, - "shropshire": 26344, - "shru": 14911, - "shrub": 41464, - "shrubs": 47975, - "shrun": 46767, - "shs": 16184, - "sht": 44210, - "shti": 38927, - "shu": 2872, - "shu": 17651, - "shua": 33771, - "shub": 40552, - "shud": 45782, - "shuff": 42641, - "shuffle": 21681, - "shui": 45473, - "shuk": 29927, - "shukla": 46829, - "shul": 30721, - "shum": 37383, - "shun": 24479, - "shun": 39594, - "shur": 41032, - "shut": 8702, - "shut": 8282, - "shutdown": 16051, - "shutout": 24385, - "shuts": 28313, - "shutt": 31866, - "shutter": 36235, - "shutter": 33902, - "shutters": 46894, - "shutting": 31383, - "shuttle": 15842, - "shwar": 41640, - "shy": 22678, - "shy": 9682, - "si": 564, - "si": 2990, - "sia": 2357, - "siam": 29686, - "siam": 48248, - "siamese": 43161, - "sian": 28510, - "sian": 6221, - "sians": 26583, - "sias": 28645, - "siber": 22206, - "siberia": 39969, - "siberian": 34058, - "sibl": 14338, - "sible": 14507, - "sibling": 43060, - "sibling": 23779, - "siblings": 17156, - "sic": 8278, - "sic": 1118, - "sica": 34125, - "sical": 33875, - "sichuan": 48950, - "sicilian": 45292, - "sicily": 23179, - "sick": 11143, - "sick": 5359, - "sickest": 47972, - "sickle": 41459, - "sickness": 28898, - "sics": 26297, - "sid": 10117, - "sid": 15119, - "sidd": 19842, - "siddi": 35227, - "side": 5869, - "side": 1145, - "sided": 21061, - "sidekick": 44683, - "sidel": 43557, - "sideline": 32056, - "sidelines": 31046, - "sider": 30581, - "siders": 41249, - "sides": 7578, - "sideshow": 46789, - "sidewalk": 23278, - "sidewalks": 43583, - "sideways": 35593, - "siding": 38758, - "sidney": 22598, - "sie": 8533, - "sie": 5685, - "sieg": 49203, - "siege": 18460, - "siegel": 48559, - "siem": 18434, - "siemens": 30147, - "siempre": 44030, - "siena": 33336, - "sienna": 40373, - "sier": 10028, - "sier": 7444, - "sierra": 13552, - "siers": 35923, - "sies": 16367, - "siest": 18323, - "sif": 29300, - "sig": 872, - "sig": 19145, - "sigh": 36303, - "sigh": 15505, - "sighs": 44579, - "sight": 16897, - "sight": 6329, - "sighted": 33034, - "sighting": 17507, - "sightings": 30004, - "sights": 17364, - "sightseeing": 34210, - "sigma": 45075, - "sigma": 15697, - "sign": 5538, - "sign": 2292, - "signage": 21156, - "signal": 10781, - "signaling": 38492, - "signalling": 48426, - "signals": 17150, - "signation": 24347, - "signature": 9189, - "signatures": 21865, - "signed": 3163, - "signee": 39778, - "signi": 34023, - "signific": 6374, - "significance": 23769, - "significant": 8735, - "significantly": 16187, - "signing": 4401, - "signingday": 40282, - "signings": 27731, - "signs": 4659, - "signup": 40791, - "sigue": 49401, - "sii": 36672, - "sik": 19974, - "sik": 22413, - "sika": 31144, - "sikh": 21829, - "sikhs": 45426, - "sil": 1556, - "sil": 8315, - "sila": 41754, - "sile": 37620, - "silen": 39048, - "silence": 8462, - "silenced": 45415, - "silent": 30352, - "silent": 8487, - "silently": 42640, - "silhou": 20589, - "silhouette": 26149, - "silic": 23830, - "silicon": 32412, - "silicon": 17888, - "silicone": 28221, - "silk": 25891, - "silk": 9743, - "silky": 29554, - "sill": 42468, - "sill": 48024, - "silly": 11883, - "silon": 31841, - "sils": 39708, - "silva": 16489, - "silve": 37697, - "silver": 7525, - "silver": 3467, - "silverado": 46160, - "silverstone": 29666, - "silvia": 37289, - "sim": 5026, - "sim": 10740, - "sima": 35871, - "simba": 39492, - "simcoe": 47148, - "sime": 28329, - "simi": 38073, - "simil": 7202, - "similar": 8547, - "similarities": 34716, - "simm": 13001, - "simmons": 14699, - "simo": 37171, - "simon": 8796, - "simon": 6668, - "simona": 46277, - "simone": 19062, - "simons": 33097, - "simp": 2542, - "simple": 19018, - "simple": 4129, - "simpler": 35489, - "simplest": 39588, - "simpli": 16868, - "simplicity": 21262, - "simplified": 36647, - "simplify": 35479, - "simply": 25637, - "simply": 6151, - "simpson": 41805, - "simpson": 11750, - "simpsons": 21092, - "sims": 14021, - "simul": 9845, - "simulated": 46395, - "simulation": 18610, - "simulator": 20821, - "simultaneous": 48816, - "simultaneously": 28575, - "sin": 1303, - "sin": 3421, - "sina": 19541, - "sinai": 33226, - "sinatra": 27262, - "sinc": 30464, - "since": 1855, - "sincere": 24513, - "sincere": 24886, - "sincerely": 25673, - "sinclair": 23100, - "sind": 39598, - "sind": 30877, - "sindh": 20754, - "sindia": 48038, - "sine": 22741, - "sine": 33793, - "sinfo": 47178, - "sing": 1387, - "sing": 1197, - "singapo": 27861, - "singapore": 28879, - "singapore": 6754, - "singer": 33880, - "singer": 5108, - "singers": 15613, - "singersongwriter": 44585, - "singh": 19445, - "singh": 5715, - "singing": 5864, - "single": 19524, - "single": 2688, - "singles": 12025, - "singleton": 46247, - "singly": 16619, - "sings": 13635, - "singul": 34003, - "singular": 44009, - "singularity": 48410, - "sinha": 29416, - "sini": 41781, - "sini": 26319, - "sinister": 31313, - "sink": 37232, - "sink": 14551, - "sinking": 27949, - "sinks": 32710, - "sinn": 36315, - "sinner": 45380, - "sinners": 43436, - "sino": 29759, - "sins": 9345, - "sinthe": 30737, - "sinu": 37351, - "sinus": 47535, - "sio": 10807, - "siob": 40954, - "siology": 46315, - "sion": 5676, - "sion": 1015, - "sional": 14533, - "sionally": 30754, - "sions": 4060, - "sioux": 44695, - "sioux": 24954, - "sip": 16096, - "sipping": 28527, - "sir": 10708, - "sir": 3846, - "sire": 28450, - "siren": 33026, - "sirens": 35907, - "siri": 13986, - "siri": 18394, - "sirius": 23574, - "sirius": 34999, - "siriusxm": 29833, - "sirloin": 46828, - "sis": 18132, - "sis": 2580, - "sisd": 27132, - "sisi": 37892, - "siss": 42929, - "sissy": 27564, - "sist": 20520, - "sista": 37448, - "sister": 17417, - "sister": 3677, - "sisterhood": 37313, - "sisters": 6404, - "sit": 7387, - "sit": 4037, - "sitcom": 30426, - "site": 26792, - "site": 1988, - "sites": 7236, - "sith": 41499, - "sito": 42613, - "sits": 12726, - "sitt": 42988, - "sitter": 40777, - "sittin": 40887, - "sitting": 4919, - "situ": 5562, - "situ": 42536, - "situated": 22030, - "situation": 7144, - "situations": 19096, - "sity": 38177, - "sity": 5477, - "siu": 40174, - "sium": 8090, - "sius": 27595, - "siva": 20991, - "sivan": 36931, - "sive": 23572, - "sive": 1875, - "sively": 10343, - "siveness": 39667, - "sives": 23896, - "sivity": 42738, - "siwon": 29055, - "six": 5968, - "six": 4093, - "sixers": 25941, - "sixteen": 28677, - "sixth": 12909, - "sixties": 44948, - "sixty": 32588, - "siya": 44440, - "size": 38377, - "size": 3235, - "sized": 9832, - "sizes": 10253, - "sizing": 28330, - "sizz": 23778, - "sizzle": 47890, - "sizzling": 35799, - "sj": 7536, - "sj": 16010, - "sjo": 42012, - "sk": 909, - "sk": 2058, - "ska": 7495, - "skag": 31948, - "skan": 46772, - "skar": 27587, - "skar": 26835, - "skate": 13740, - "skate": 12745, - "skateboard": 31777, - "skateboarding": 31352, - "skater": 30337, - "skaters": 39824, - "skates": 31479, - "skc": 44551, - "ske": 6261, - "ske": 25516, - "skel": 36564, - "skelet": 27075, - "skeletal": 37369, - "skeleton": 20062, - "skeletons": 48874, - "skell": 40801, - "skep": 27772, - "skeptical": 44934, - "sker": 37640, - "sker": 33600, - "sket": 3744, - "sketch": 11767, - "sketch": 5269, - "sketchbook": 18899, - "sketched": 38581, - "sketches": 17622, - "sketching": 23228, - "sketchy": 41582, - "skey": 37453, - "ski": 3327, - "ski": 3428, - "skid": 36574, - "skid": 32099, - "skier": 42585, - "skies": 7244, - "skiing": 14400, - "skil": 24543, - "skill": 15598, - "skill": 10604, - "skilled": 17535, - "skillet": 40568, - "skills": 4113, - "skim": 33191, - "skin": 5821, - "skin": 3575, - "skincare": 12648, - "skine": 37300, - "sking": 46215, - "skinned": 42199, - "skinner": 30261, - "skinny": 42729, - "skinny": 15457, - "skins": 11594, - "skip": 39793, - "skip": 14296, - "skipped": 40639, - "skipper": 22226, - "skipping": 34867, - "skir": 8919, - "skirt": 12386, - "skirts": 24840, - "skis": 32843, - "skit": 43573, - "skitchen": 42820, - "skittles": 43213, - "sko": 15141, - "sko": 23493, - "skoda": 38668, - "skool": 26743, - "skril": 43149, - "skrillex": 43651, - "sks": 48136, - "sku": 10836, - "skul": 17561, - "skull": 34068, - "skull": 12092, - "skulls": 31804, - "skunk": 42194, - "sky": 3075, - "sky": 2390, - "skybet": 45540, - "skye": 21475, - "skyl": 43554, - "skylar": 45411, - "skyline": 14606, - "skymap": 41734, - "skynews": 40977, - "skype": 17069, - "skyrim": 33693, - "skysports": 39845, - "skysports": 46725, - "skywalker": 32936, - "sl": 2621, - "sl": 7489, - "sla": 2725, - "sla": 26707, - "slab": 24241, - "slabs": 42818, - "slack": 37108, - "slack": 30142, - "slade": 33546, - "slain": 35972, - "slalom": 43540, - "slam": 14891, - "slam": 10131, - "slammed": 29772, - "slams": 18907, - "slan": 44663, - "slan": 47193, - "sland": 11294, - "slang": 33655, - "slap": 48830, - "slap": 21751, - "slapped": 38861, - "slaps": 46796, - "slash": 19749, - "slat": 38966, - "slate": 17919, - "slated": 36094, - "slater": 25968, - "slaugh": 26782, - "slaughter": 19815, - "slaughtered": 46615, - "slav": 47292, - "slava": 41797, - "slave": 14029, - "slavery": 15754, - "slaves": 23833, - "slaw": 28178, - "slay": 48319, - "slay": 19380, - "slayed": 44870, - "slayer": 21605, - "slaying": 27812, - "slays": 45648, - "slc": 21972, - "sle": 1709, - "sleague": 23336, - "sled": 28438, - "sledge": 48750, - "slee": 17642, - "slee": 38977, - "sleek": 23187, - "sleep": 4656, - "sleep": 3840, - "sleeper": 28709, - "sleeping": 6982, - "sleepless": 39779, - "sleepover": 39415, - "sleeps": 16610, - "sleepy": 32572, - "sleepy": 14497, - "sleet": 36948, - "sleeve": 35270, - "sleeve": 10536, - "sleeveless": 38049, - "sleeves": 19691, - "sleg": 47650, - "sleigh": 30865, - "slender": 40331, - "slept": 20388, - "sler": 14066, - "sley": 17198, - "sley": 6496, - "sli": 1811, - "sli": 44824, - "slic": 19692, - "slice": 13431, - "sliced": 28121, - "slices": 28424, - "slick": 18341, - "slide": 27828, - "slide": 8837, - "slider": 37861, - "sliders": 40700, - "slides": 15939, - "slideshow": 42817, - "sliding": 21468, - "slife": 15448, - "sliga": 21080, - "slight": 14297, - "slightly": 8456, - "sligo": 30424, - "slike": 38744, - "slim": 35226, - "slim": 12364, - "slime": 29107, - "sling": 28021, - "sling": 32607, - "slinger": 47269, - "slions": 43363, - "slip": 39785, - "slip": 12105, - "slipknot": 41816, - "slipped": 30344, - "slipper": 39644, - "slippers": 26509, - "slippery": 30814, - "slipping": 36301, - "slips": 30632, - "slist": 33749, - "slit": 47011, - "slive": 31652, - "slo": 4303, - "slo": 36083, - "sloan": 29110, - "sloane": 41553, - "slogan": 23398, - "slogans": 42795, - "slope": 22769, - "slopes": 24066, - "sloppy": 36154, - "slot": 14500, - "sloth": 30007, - "slots": 19238, - "slou": 48493, - "slovak": 23315, - "slovakia": 25994, - "sloven": 17018, - "slovenia": 21037, - "slow": 6674, - "slow": 5444, - "slowdown": 38421, - "slowed": 43793, - "slower": 29181, - "slowing": 29839, - "slowly": 9568, - "slows": 46855, - "slp": 45599, - "slr": 21325, - "sls": 33651, - "slt": 39283, - "sltd": 36388, - "slu": 7224, - "slu": 47456, - "slug": 34190, - "slugger": 48671, - "slum": 46754, - "slumber": 44295, - "slump": 35588, - "slur": 30476, - "slush": 39815, - "slv": 45526, - "sly": 28145, - "sly": 21062, - "sm": 978, - "sm": 2764, - "sma": 4357, - "sma": 11854, - "smack": 21280, - "smack": 30026, - "smackdown": 26138, - "smafia": 47686, - "smag": 32212, - "smal": 48379, - "small": 5244, - "small": 2442, - "smallbiz": 41724, - "smallbiz": 18987, - "smallbusiness": 21316, - "smalle": 18490, - "smaller": 12431, - "smallest": 18686, - "smalls": 41696, - "sman": 9612, - "smar": 3201, - "smart": 5383, - "smart": 4115, - "smartcities": 34822, - "smartcity": 33973, - "smarter": 18990, - "smartest": 37092, - "smarthome": 47726, - "smartphone": 11290, - "smartphones": 22212, - "smartwatch": 35798, - "smash": 17258, - "smash": 10332, - "smashbros": 44897, - "smashed": 18410, - "smashes": 45657, - "smashing": 19632, - "smatter": 16537, - "smb": 30446, - "smc": 31375, - "smc": 28312, - "smd": 34582, - "sme": 11758, - "sme": 15650, - "smear": 37546, - "smel": 28476, - "smell": 9688, - "smelling": 32493, - "smells": 14668, - "smelly": 46145, - "smen": 15961, - "smer": 48526, - "smere": 39629, - "smes": 26141, - "smg": 46876, - "smh": 9623, - "smi": 5655, - "smi": 40049, - "smil": 33937, - "smile": 27641, - "smile": 3490, - "smiled": 34362, - "smiles": 8726, - "smiley": 22925, - "smiling": 9200, - "smir": 24667, - "smith": 10527, - "smith": 2915, - "smiths": 27872, - "smithson": 25372, - "smithsonian": 31209, - "smm": 19510, - "smma": 42370, - "smo": 2513, - "smo": 13437, - "smobile": 38923, - "smog": 44425, - "smoke": 20381, - "smoke": 6664, - "smoked": 11161, - "smoker": 32348, - "smokers": 29571, - "smokes": 40336, - "smokey": 23670, - "smokin": 32825, - "smoking": 9038, - "smoky": 25549, - "smol": 29939, - "smol": 40403, - "smoo": 5430, - "smooth": 10958, - "smooth": 8990, - "smoother": 44271, - "smoothie": 16668, - "smoothies": 34458, - "smoothly": 32380, - "smore": 48323, - "smp": 32260, - "smriti": 49227, - "sms": 10409, - "smt": 26672, - "smtown": 26072, - "smu": 10878, - "smu": 30458, - "smug": 41021, - "smugg": 28130, - "smuggling": 34146, - "smur": 24708, - "smusic": 19191, - "smw": 44929, - "smx": 46699, - "smy": 14381, - "smyth": 44822, - "sn": 1672, - "sn": 5844, - "sna": 4032, - "snack": 47548, - "snack": 10039, - "snacking": 46474, - "snacks": 12349, - "snag": 34789, - "snag": 28043, - "snagged": 48534, - "snail": 23132, - "snails": 34928, - "snake": 30133, - "snake": 8798, - "snakes": 19605, - "snap": 4578, - "snap": 7404, - "snapback": 31234, - "snapchat": 7799, - "snapmatic": 45907, - "snapp": 10185, - "snapped": 15543, - "snapper": 31677, - "snapping": 31581, - "snaps": 16890, - "snapshot": 18243, - "snar": 30810, - "snare": 40651, - "snat": 18457, - "snatch": 35302, - "snatched": 44821, - "snation": 14362, - "snazzy": 48963, - "snc": 39918, - "sne": 3791, - "sne": 46503, - "sneak": 27871, - "sneak": 6917, - "sneaker": 31698, - "sneaker": 24781, - "sneakers": 17397, - "sneaking": 34633, - "sneakpeek": 47831, - "sneaks": 40926, - "sneaky": 21293, - "snee": 42095, - "snell": 46410, - "sner": 31424, - "snes": 26667, - "snews": 18623, - "snf": 47651, - "sng": 41549, - "snhl": 43093, - "sni": 7186, - "sni": 35570, - "snickers": 49127, - "sniff": 37841, - "snip": 42954, - "sniper": 22157, - "snippet": 37531, - "snippets": 44001, - "snl": 16011, - "sno": 8567, - "sno": 17802, - "snoo": 11352, - "snooker": 25657, - "snoop": 44503, - "snoop": 27754, - "snoopdogg": 48388, - "snoopy": 41967, - "snooze": 40718, - "snor": 16590, - "snoring": 44560, - "snorkel": 44285, - "snorkeling": 48103, - "snow": 3880, - "snow": 2583, - "snowball": 39254, - "snowboard": 33403, - "snowboarding": 32397, - "snowday": 37982, - "snowden": 32154, - "snowdon": 47107, - "snowdonia": 36088, - "snowed": 45073, - "snowfall": 21714, - "snowflake": 33447, - "snowflakes": 38618, - "snowing": 21443, - "snowman": 22668, - "snowstorm": 38777, - "snowy": 14191, - "snp": 15301, - "sns": 36343, - "snsd": 27961, - "snt": 34834, - "snu": 9694, - "snuck": 36522, - "snug": 45169, - "snuggle": 31327, - "snuggles": 48165, - "sny": 17526, - "snyder": 22106, - "snz": 37678, - "so": 759, - "so": 706, - "soa": 39584, - "soak": 24839, - "soaked": 26592, - "soaking": 26750, - "soap": 26086, - "soap": 11088, - "soaps": 40958, - "soar": 48997, - "soar": 22241, - "soaring": 27968, - "soars": 41348, - "sob": 24900, - "sob": 35507, - "sobbing": 36691, - "sober": 30969, - "sober": 24487, - "sobre": 42768, - "sobri": 49308, - "sobs": 43636, - "soc": 3253, - "soc": 7741, - "soca": 49239, - "socal": 46470, - "socal": 20450, - "soccer": 16268, - "soccer": 4233, - "socceroos": 41997, - "socent": 30831, - "sochi": 21014, - "soci": 1720, - "social": 4803, - "social": 2346, - "socialism": 23372, - "socialist": 18450, - "socialists": 43839, - "socially": 24555, - "socialmedi": 23813, - "socialmedia": 9600, - "socialmediamarketing": 31790, - "societal": 40058, - "societies": 25855, - "society": 3757, - "socio": 44319, - "socio": 42790, - "sociology": 32373, - "sock": 29801, - "sock": 18277, - "socket": 28657, - "socks": 8774, - "socorro": 46409, - "socute": 45086, - "sod": 31435, - "soda": 13533, - "sodium": 29070, - "soe": 44136, - "soe": 25498, - "soever": 34024, - "sof": 1571, - "sof": 41187, - "sofa": 15723, - "soff": 35290, - "soff": 30684, - "sofficial": 20563, - "sofi": 41537, - "sofia": 18914, - "sofinstagram": 17301, - "soft": 12778, - "soft": 3773, - "softball": 8369, - "softer": 44462, - "softhe": 23127, - "softly": 34958, - "software": 35941, - "software": 5847, - "softwitter": 11311, - "sog": 44775, - "soggy": 41168, - "sohn": 49267, - "soho": 47749, - "soho": 17592, - "soi": 40495, - "soil": 33417, - "soil": 9216, - "soils": 34891, - "soir": 43427, - "sok": 43456, - "sol": 1175, - "sol": 9941, - "sola": 40086, - "solace": 42567, - "solar": 16990, - "solar": 5199, - "solareclipse": 44727, - "sold": 33116, - "sold": 3939, - "soldi": 5098, - "soldier": 9355, - "soldiers": 7547, - "sole": 10519, - "sole": 8576, - "soleil": 33148, - "solely": 27913, - "solent": 47783, - "soles": 22682, - "soli": 3911, - "solic": 19369, - "solicitor": 45647, - "solicitors": 46000, - "solid": 30626, - "solid": 6148, - "solidar": 10415, - "solidarity": 10983, - "solidi": 46136, - "solids": 49070, - "solihull": 45293, - "solit": 37039, - "solitaire": 47257, - "solitary": 33094, - "solitude": 33199, - "solo": 17626, - "solo": 5797, - "soloist": 46391, - "solom": 15768, - "solomon": 19785, - "solos": 44868, - "solst": 20298, - "solstice": 21359, - "solu": 2487, - "solution": 4575, - "solutions": 5140, - "solve": 8917, - "solved": 13451, - "solves": 42740, - "solving": 15581, - "som": 734, - "som": 10672, - "soma": 36170, - "somal": 40281, - "somali": 26231, - "somalia": 17051, - "somaliland": 43315, - "some": 1132, - "some": 836, - "somebody": 8305, - "someday": 17127, - "somehow": 11735, - "someone": 2100, - "somer": 9656, - "somerhalder": 33990, - "somerset": 14926, - "somerville": 41409, - "somes": 38124, - "somethin": 33541, - "something": 28316, - "something": 2006, - "sometime": 21464, - "sometimes": 4237, - "somewhat": 17864, - "somewhere": 8119, - "somm": 42726, - "somme": 30625, - "sommer": 44954, - "somos": 24951, - "son": 1176, - "son": 825, - "sona": 21249, - "sonam": 40096, - "sonar": 48235, - "sonata": 37009, - "sone": 29599, - "song": 6868, - "song": 2295, - "songs": 4641, - "songwriter": 13034, - "songwriters": 39583, - "songwriting": 33567, - "songz": 49302, - "soni": 34899, - "soni": 35911, - "sonia": 20409, - "sonic": 23785, - "sonic": 9132, - "sonics": 48511, - "sonja": 46102, - "sonline": 23412, - "sonny": 43000, - "sonny": 20880, - "sono": 44109, - "sonom": 48596, - "sonoma": 26269, - "sons": 5502, - "sonsof": 46676, - "sont": 31063, - "sonthe": 40923, - "sony": 16042, - "sony": 8748, - "sonya": 39172, - "soo": 5517, - "soo": 8602, - "soom": 39771, - "soon": 27559, - "soon": 1745, - "sooner": 18968, - "sooners": 30449, - "sooo": 11526, - "soooo": 13658, - "sooooo": 21199, - "soooooo": 34859, - "soor": 46698, - "soothe": 44424, - "soothing": 27730, - "sop": 3974, - "sop": 19194, - "soph": 34963, - "sophi": 6192, - "sophia": 16790, - "sophie": 38648, - "sophie": 12357, - "sophistic": 17646, - "sophisticated": 20833, - "sophom": 13696, - "sophomore": 15242, - "sophomores": 47645, - "soprano": 28880, - "soproud": 44479, - "sor": 1852, - "sor": 16872, - "sora": 38719, - "sorbet": 39994, - "sore": 43330, - "sore": 15454, - "sored": 6731, - "soren": 38907, - "sorg": 28152, - "sori": 38588, - "sorority": 30059, - "soros": 33248, - "sorren": 44012, - "sorrow": 28020, - "sorrows": 47924, - "sorry": 25745, - "sorry": 3675, - "sorrynotsorry": 37105, - "sort": 8450, - "sorta": 34700, - "sorted": 13221, - "sorting": 19198, - "sorts": 12577, - "sory": 16257, - "sos": 25145, - "sos": 5792, - "sosa": 45433, - "sosfam": 47709, - "sot": 41542, - "sot": 34116, - "sothe": 32145, - "sotho": 45496, - "soto": 27947, - "sotto": 26047, - "sotu": 32286, - "sou": 1101, - "sou": 24293, - "sought": 18874, - "soul": 8701, - "soul": 3755, - "soulful": 30196, - "soulmate": 38130, - "souls": 10951, - "soun": 19474, - "sound": 5236, - "sound": 3608, - "soundcheck": 31394, - "soundcloud": 15190, - "sounded": 28287, - "sounders": 44933, - "sounding": 21351, - "sounds": 5694, - "soundtrack": 11389, - "soup": 7077, - "soups": 45052, - "sour": 2235, - "sour": 12049, - "source": 23698, - "source": 3634, - "sourced": 23340, - "sources": 5124, - "sourcing": 19574, - "sourdough": 29921, - "souri": 11674, - "sous": 32093, - "sousa": 46296, - "sout": 38156, - "sout": 32732, - "south": 2938, - "south": 2045, - "southafrica": 15184, - "southampton": 15767, - "southbank": 44173, - "southbound": 22932, - "southeast": 13942, - "southeastern": 26813, - "southend": 25583, - "souther": 33330, - "southern": 17704, - "southern": 5036, - "southgate": 47262, - "southkorea": 43552, - "southport": 37446, - "southside": 36436, - "southsudan": 30419, - "southwark": 39098, - "southwe": 46443, - "southwest": 13320, - "southwestern": 30157, - "souven": 20210, - "souvenir": 24811, - "souvenirs": 48460, - "souza": 29424, - "sov": 29737, - "sover": 31876, - "sovere": 17736, - "sovereign": 29418, - "sovereign": 26337, - "sovereignty": 31701, - "soviet": 14274, - "sow": 33089, - "sowe": 36130, - "soweto": 47070, - "sown": 49369, - "sox": 39556, - "sox": 8657, - "soy": 16524, - "soy": 15010, - "soybean": 34606, - "soybeans": 40840, - "soyu": 39578, - "soyuz": 43842, - "sp": 588, - "sp": 4393, - "spa": 7852, - "spa": 6692, - "spac": 10336, - "space": 7857, - "space": 2138, - "spacecraft": 25940, - "spaces": 9006, - "spaceship": 34317, - "spacex": 22511, - "spacey": 48770, - "spacious": 24769, - "spad": 45362, - "spade": 32562, - "spades": 48368, - "spaghetti": 18440, - "spain": 5083, - "spal": 26018, - "spam": 29712, - "spam": 14624, - "span": 4270, - "span": 14537, - "spandex": 41686, - "spani": 16721, - "spaniel": 35435, - "spanish": 29966, - "spanish": 6013, - "spann": 25323, - "spanning": 38638, - "spans": 45407, - "spaper": 34548, - "spar": 3378, - "spar": 34576, - "spare": 12615, - "spares": 39505, - "spark": 9555, - "spark": 11047, - "sparked": 32647, - "sparkle": 18287, - "sparkles": 36410, - "sparkling": 17893, - "sparkly": 30542, - "sparks": 15046, - "sparky": 47198, - "sparring": 42161, - "sparrow": 22888, - "spart": 10143, - "sparta": 38401, - "spartan": 26582, - "spartan": 24225, - "spartans": 20457, - "sparty": 36477, - "spas": 31714, - "spati": 19200, - "spatial": 22022, - "spaw": 31605, - "spawn": 29166, - "spay": 40634, - "spc": 20492, - "spca": 37018, - "spd": 37717, - "spd": 28307, - "spdwy": 45981, - "spe": 876, - "spe": 36676, - "speak": 20599, - "speak": 4208, - "speake": 46077, - "speaker": 25764, - "speaker": 4914, - "speakers": 7675, - "speaking": 3714, - "speaks": 5661, - "spear": 23277, - "spear": 30420, - "speare": 43859, - "spears": 20242, - "spec": 1711, - "spec": 18596, - "speci": 1969, - "special": 11422, - "special": 1689, - "specialist": 10630, - "specialists": 21719, - "speciality": 46904, - "specialized": 23265, - "specializes": 48533, - "specially": 4513, - "specials": 11983, - "specialty": 18262, - "species": 6330, - "specific": 10528, - "specifically": 17174, - "specification": 46394, - "specifications": 39705, - "specified": 48114, - "specimen": 30263, - "specimens": 42715, - "specs": 24093, - "spect": 3416, - "spectac": 7242, - "spectacle": 34342, - "spectacular": 8404, - "spectator": 32372, - "spectators": 39306, - "spective": 6633, - "spector": 48676, - "spectral": 45441, - "spectre": 35998, - "spectro": 27646, - "spectrum": 13532, - "specul": 19209, - "speculation": 30898, - "sped": 38813, - "spee": 4050, - "speech": 19556, - "speech": 4902, - "speeches": 25208, - "speechless": 23152, - "speed": 6860, - "speed": 4163, - "speeding": 27264, - "speeds": 22017, - "speedway": 11480, - "speedy": 21603, - "spel": 41887, - "spell": 22784, - "spell": 11230, - "spelled": 24339, - "spelling": 15614, - "spells": 25335, - "spelt": 38316, - "spen": 5087, - "spence": 33324, - "spencer": 27509, - "spencer": 10678, - "spend": 4664, - "spending": 5961, - "spends": 22508, - "spent": 4429, - "speople": 33035, - "sper": 8213, - "sper": 15313, - "sperm": 35781, - "sperson": 22687, - "spf": 34973, - "spg": 34623, - "sph": 28909, - "sph": 24684, - "sphe": 33691, - "spher": 18349, - "sphere": 6987, - "spheres": 37478, - "spheric": 21744, - "sphin": 39237, - "sphinx": 46487, - "spho": 20442, - "sphoto": 38594, - "sphy": 43808, - "spi": 3174, - "spi": 37080, - "spic": 17264, - "spice": 29761, - "spice": 10141, - "spiced": 24267, - "spicer": 37627, - "spices": 21194, - "spicy": 10915, - "spide": 36801, - "spider": 11963, - "spider": 7622, - "spiderman": 39808, - "spiderman": 18427, - "spiders": 23141, - "spidey": 41706, - "spie": 28573, - "spie": 28746, - "spied": 43998, - "spiegel": 45351, - "spiel": 28435, - "spiel": 37690, - "spielberg": 37569, - "spies": 25374, - "spieth": 43254, - "spike": 35306, - "spike": 15310, - "spiked": 47014, - "spikes": 29582, - "spil": 47765, - "spill": 43933, - "spill": 18006, - "spilled": 33206, - "spilling": 49006, - "spills": 35796, - "spin": 6288, - "spin": 9226, - "spinach": 14747, - "spinal": 23925, - "spine": 48221, - "spine": 19646, - "sping": 47113, - "spinner": 29924, - "spinning": 13987, - "spino": 40848, - "spinoff": 42513, - "spinrilla": 46064, - "spins": 27243, - "spion": 39604, - "spionage": 41838, - "spir": 3745, - "spiral": 19873, - "spiration": 38126, - "spire": 27439, - "spired": 40650, - "spires": 46938, - "spiri": 4024, - "spirit": 18224, - "spirit": 4071, - "spirited": 34701, - "spirits": 13192, - "spiritu": 7237, - "spiritual": 46076, - "spiritual": 9473, - "spirituality": 22165, - "spiro": 40085, - "spit": 18115, - "spit": 23177, - "spite": 26060, - "spitfire": 31126, - "spitting": 40721, - "spl": 2470, - "spl": 33052, - "spla": 4809, - "splac": 16059, - "splace": 38743, - "splash": 43641, - "splash": 11879, - "splat": 15733, - "splatoon": 22565, - "splay": 3169, - "splen": 18552, - "splend": 29861, - "splendid": 21016, - "splendor": 46262, - "splin": 38090, - "split": 25443, - "split": 9109, - "splits": 34897, - "splitting": 37210, - "splus": 40866, - "spn": 35467, - "spn": 19414, - "spnfamily": 38566, - "spo": 1261, - "spo": 21085, - "spock": 43918, - "spoil": 25600, - "spoiled": 21399, - "spoiler": 16512, - "spoilers": 18326, - "spoils": 42436, - "spoilt": 35358, - "spokane": 24528, - "spoke": 13890, - "spoke": 6518, - "spoken": 12979, - "spokesman": 31632, - "spokesperson": 26234, - "spol": 22476, - "spol": 8132, - "spoli": 34301, - "spolice": 37406, - "spon": 1715, - "spon": 48216, - "sponge": 22861, - "sponge": 24345, - "spongebob": 25089, - "spons": 5597, - "sponsor": 10424, - "sponsor": 7574, - "sponsored": 7197, - "sponsoring": 16181, - "sponsors": 11005, - "sponsorship": 17632, - "spontaneous": 32465, - "spoo": 11248, - "spooky": 15369, - "spool": 49152, - "spoon": 27001, - "spoon": 14024, - "spoons": 29661, - "spor": 1475, - "spor": 33746, - "sport": 4379, - "sport": 2364, - "sporting": 32620, - "sporting": 8944, - "sports": 6436, - "sports": 2054, - "sportsc": 40114, - "sportscar": 46931, - "sportscenter": 39157, - "sportsman": 39020, - "sportsmanship": 34858, - "sportsnet": 34144, - "sportswear": 39747, - "sporty": 33346, - "spot": 3223, - "spot": 3049, - "spotify": 7193, - "spotlight": 7901, - "spots": 7670, - "spotted": 4533, - "spotter": 30742, - "spotting": 15885, - "spouse": 24724, - "spout": 48993, - "spp": 47567, - "spr": 1536, - "spr": 19417, - "spra": 12966, - "spraw": 46590, - "spray": 37885, - "spray": 10449, - "sprayed": 40022, - "spraying": 39224, - "spre": 18740, - "spread": 20620, - "spread": 5284, - "spreading": 11821, - "spreads": 27579, - "spree": 21851, - "spri": 35498, - "spride": 26685, - "spring": 5166, - "spring": 2420, - "springbreak": 37753, - "springer": 30117, - "springfield": 16599, - "springs": 7308, - "springst": 32132, - "springsteen": 28367, - "springtime": 28285, - "springtraining": 49364, - "springwatch": 29239, - "sprink": 15817, - "sprinkle": 42897, - "sprinkler": 48754, - "sprinkles": 37326, - "sprint": 29248, - "sprint": 10751, - "sprinter": 36947, - "sprints": 36404, - "sprite": 32544, - "spro": 13902, - "spro": 37403, - "sproject": 37802, - "sproud": 37686, - "sprout": 35863, - "sprouts": 25756, - "spru": 17041, - "spruce": 23812, - "sprung": 32968, - "sps": 13869, - "spu": 23566, - "spun": 47922, - "spun": 32852, - "spur": 15206, - "spur": 20361, - "spurs": 10916, - "spursofficial": 45290, - "sput": 47521, - "spx": 20584, - "spy": 13861, - "spy": 6656, - "spyder": 39952, - "spying": 36227, - "sq": 9370, - "sq": 11590, - "sqft": 41912, - "sql": 42759, - "sql": 18938, - "sqm": 47978, - "sqn": 41209, - "squ": 1653, - "squad": 13892, - "squad": 4234, - "squadron": 18579, - "squads": 36590, - "square": 19314, - "square": 3999, - "squared": 32967, - "squares": 26972, - "squash": 13312, - "squat": 44628, - "squat": 30680, - "squats": 40213, - "sque": 9721, - "sque": 8097, - "squee": 14420, - "squeeze": 21684, - "squeezed": 40413, - "squid": 42057, - "squid": 22553, - "squir": 9683, - "squire": 48090, - "squirrel": 14004, - "squirrels": 26623, - "squish": 42607, - "squishy": 47001, - "sr": 3437, - "sr": 5428, - "srbachchan": 32353, - "src": 23445, - "sre": 17748, - "sri": 11051, - "sri": 9276, - "sridevi": 46301, - "srilan": 15559, - "srilanka": 16922, - "srin": 26818, - "srinagar": 33671, - "srini": 41899, - "sriracha": 42743, - "sris": 27851, - "srisri": 32966, - "srk": 44982, - "srk": 11216, - "srl": 33808, - "srp": 43004, - "srs": 41764, - "srsly": 44179, - "srt": 28139, - "sru": 44152, - "srugby": 40526, - "ss": 690, - "ss": 632, - "ssa": 6088, - "ssal": 31330, - "ssal": 35936, - "ssb": 37511, - "ssc": 21692, - "ssc": 20364, - "ssd": 23107, - "sse": 9030, - "sse": 8938, - "ssed": 38755, - "ssed": 1804, - "ssel": 17402, - "ssel": 19373, - "sseldorf": 47792, - "ssell": 42388, - "ssels": 8355, - "ssen": 39408, - "ssen": 22645, - "sser": 20445, - "sses": 1802, - "ssett": 44103, - "ssf": 33239, - "ssg": 40707, - "ssh": 48866, - "ssi": 834, - "ssi": 14953, - "ssia": 22238, - "ssian": 31218, - "ssible": 47099, - "ssic": 27774, - "ssic": 17077, - "ssie": 7572, - "ssier": 26422, - "ssil": 15026, - "ssin": 42660, - "ssing": 2112, - "ssion": 16050, - "ssion": 1627, - "ssional": 13727, - "ssionism": 24787, - "ssionist": 27682, - "ssions": 4137, - "ssive": 2734, - "ssively": 28060, - "ssl": 32195, - "ssler": 30287, - "ssly": 24904, - "ssn": 39116, - "ssnhq": 47998, - "sso": 25900, - "sso": 7914, - "ssoccer": 32546, - "sson": 36124, - "sson": 7271, - "ssor": 35152, - "ssp": 31101, - "ssr": 39880, - "sss": 11176, - "ssss": 30676, - "ssss": 15880, - "sssss": 24298, - "sst": 40396, - "ssu": 35351, - "ssummit": 49301, - "ssus": 31286, - "ssw": 36937, - "ssy": 22519, - "ssy": 8661, - "st": 522, - "st": 545, - "sta": 1363, - "sta": 2745, - "stab": 7726, - "stab": 29974, - "stabbed": 24534, - "stabbing": 25474, - "stabil": 42576, - "stabili": 23903, - "stability": 16716, - "stable": 44427, - "stable": 10492, - "stables": 34218, - "stac": 10175, - "stacey": 41653, - "stacey": 24262, - "stache": 23616, - "stack": 24723, - "stack": 11257, - "stacked": 24990, - "stacking": 39836, - "stacks": 24734, - "stacy": 26628, - "stad": 15832, - "stad": 16485, - "stade": 38198, - "stadi": 26587, - "stadion": 48815, - "stadium": 3390, - "stadiums": 38852, - "stadt": 22713, - "staf": 2367, - "staff": 31188, - "staff": 2813, - "staffer": 38494, - "staffers": 44994, - "staffing": 32932, - "stafford": 25006, - "staffordshire": 29198, - "staffs": 36098, - "stag": 12088, - "stag": 20277, - "stage": 23182, - "stage": 2170, - "staged": 19906, - "stages": 12297, - "staggering": 37315, - "staging": 27026, - "stagram": 19503, - "stags": 45936, - "stain": 3933, - "stain": 14603, - "stained": 13751, - "staining": 32523, - "stainless": 12320, - "stains": 32008, - "stair": 7240, - "stair": 17662, - "staircase": 22777, - "stairs": 9577, - "stairway": 45559, - "stak": 39144, - "stake": 15955, - "stake": 7937, - "stakeholder": 39122, - "stakeholders": 22968, - "stakes": 7519, - "staking": 47082, - "stal": 3861, - "stal": 5535, - "stale": 42471, - "stalert": 25450, - "stalin": 28346, - "stalk": 40826, - "stalk": 14878, - "stalker": 26777, - "stalking": 24721, - "stalks": 45886, - "stall": 24636, - "stall": 12058, - "stalled": 40362, - "stallion": 28273, - "stallions": 44787, - "stallone": 40969, - "stalls": 25427, - "stam": 4663, - "stamatic": 30904, - "stamford": 27843, - "stamina": 48753, - "stamp": 28694, - "stamp": 12771, - "stampcollecting": 42852, - "stamped": 38356, - "stampede": 25384, - "stamps": 13827, - "stan": 2203, - "stan": 2434, - "stana": 33311, - "stanbul": 11231, - "stance": 48900, - "stance": 3542, - "stances": 15054, - "stand": 1819, - "stand": 2087, - "standalone": 44887, - "standard": 35780, - "standard": 5807, - "standardi": 30247, - "standards": 9022, - "standby": 36184, - "standing": 39934, - "standing": 2862, - "standings": 19835, - "standoff": 31821, - "standout": 23131, - "standre": 48309, - "stands": 6446, - "standup": 35108, - "standup": 24964, - "standwith": 19540, - "stanford": 36219, - "stanford": 15087, - "stang": 12536, - "stani": 38228, - "stanis": 37711, - "stanley": 19048, - "stanley": 10079, - "stanleycup": 28662, - "stans": 26564, - "stant": 41576, - "stant": 4906, - "stanton": 25400, - "stap": 10438, - "staple": 22695, - "staples": 23646, - "stapleton": 45228, - "star": 993, - "star": 1565, - "starbuck": 48519, - "starbucks": 9499, - "starch": 47837, - "starcraft": 48871, - "stardom": 44616, - "stardust": 34337, - "stare": 18094, - "stared": 47772, - "stares": 37916, - "starfish": 44283, - "stargate": 41099, - "stargazing": 49328, - "staring": 13800, - "stark": 40446, - "stark": 15353, - "starlight": 32197, - "starling": 46205, - "starmagic": 48023, - "starplus": 37815, - "starr": 19186, - "starred": 24180, - "starrer": 41311, - "starring": 6660, - "starry": 30963, - "stars": 2895, - "starship": 37166, - "start": 17466, - "start": 1572, - "started": 2760, - "starter": 7800, - "starters": 22222, - "starting": 2530, - "startrek": 30642, - "startrek": 15349, - "starts": 3105, - "startu": 6996, - "startup": 18049, - "startup": 5882, - "startups": 9056, - "starve": 46957, - "starving": 30473, - "starwar": 17287, - "starwars": 26239, - "starwars": 7887, - "starz": 25928, - "stas": 19866, - "stash": 27711, - "stasy": 45942, - "stat": 3004, - "stat": 15216, - "state": 3492, - "state": 1295, - "statec": 33931, - "stated": 19629, - "statedept": 41458, - "statefair": 40305, - "statement": 5401, - "statements": 19513, - "staten": 38263, - "stateof": 35195, - "states": 22125, - "states": 4218, - "statesman": 35301, - "stateu": 44248, - "statewide": 29561, - "stati": 9622, - "static": 16363, - "stating": 35147, - "station": 13498, - "station": 2631, - "stationary": 29493, - "stationed": 47618, - "stationery": 33851, - "stations": 10051, - "statistical": 29349, - "statistics": 14165, - "stats": 7294, - "statu": 32481, - "statue": 8222, - "statues": 24363, - "status": 6414, - "stau": 28550, - "staur": 3709, - "stav": 20285, - "stax": 32235, - "stay": 4714, - "stay": 2277, - "stayed": 13805, - "staying": 8993, - "stays": 13311, - "staytuned": 39285, - "stc": 29859, - "std": 30477, - "ste": 795, - "ste": 2686, - "stea": 46614, - "stead": 16101, - "stead": 11031, - "steadily": 35049, - "steady": 12937, - "steak": 26955, - "steak": 8913, - "steakhouse": 35031, - "steaks": 30655, - "steal": 37070, - "steal": 10181, - "stealing": 14242, - "steals": 20224, - "stealth": 25327, - "steam": 10962, - "steam": 6972, - "steamboat": 41121, - "steamed": 29007, - "steamer": 49075, - "steaming": 43746, - "steampunk": 24130, - "steamy": 43104, - "stec": 46713, - "stech": 48949, - "stech": 32455, - "sted": 20426, - "sted": 1356, - "stee": 31793, - "steed": 48293, - "steel": 6938, - "steel": 4726, - "steele": 19460, - "steelers": 14430, - "steen": 42851, - "steen": 18625, - "steep": 28648, - "steep": 20714, - "steer": 27612, - "steering": 19833, - "stef": 29158, - "stefan": 15004, - "stefan": 18829, - "stefani": 38319, - "stefano": 30719, - "steff": 30075, - "stein": 13653, - "stein": 5818, - "steiner": 36314, - "stel": 9102, - "stel": 10798, - "stell": 22355, - "stella": 46178, - "stella": 17869, - "stellar": 13810, - "stellen": 42754, - "stem": 24342, - "stem": 6761, - "stemc": 40486, - "stems": 31503, - "sten": 7652, - "sten": 7877, - "stencil": 47854, - "stennis": 45636, - "step": 15572, - "step": 3348, - "steph": 3522, - "steph": 16251, - "stephan": 37312, - "stephani": 48121, - "stephanie": 14361, - "stephen": 10421, - "stephen": 6078, - "stephenking": 46361, - "stephens": 22256, - "stephenson": 37280, - "stepped": 18384, - "stepping": 15906, - "steps": 5408, - "ster": 1022, - "ster": 881, - "stere": 9229, - "stered": 6935, - "stereo": 15992, - "stereo": 17400, - "stereotypes": 27890, - "steria": 38804, - "stering": 14175, - "sterling": 45790, - "sterling": 9378, - "stern": 36254, - "stern": 2945, - "steroids": 37670, - "sterone": 39418, - "sters": 2132, - "stery": 24232, - "stest": 8556, - "stev": 11640, - "steve": 7412, - "steve": 3803, - "steven": 10973, - "steven": 8016, - "stevens": 13877, - "stevenson": 25091, - "stevie": 42104, - "stevie": 18969, - "stew": 17906, - "stewar": 28453, - "steward": 34980, - "steward": 43355, - "stewards": 49294, - "stewardship": 36720, - "stewart": 8120, - "stfu": 47000, - "stg": 48387, - "stgeorge": 43698, - "sth": 13456, - "sth": 34004, - "sthe": 16491, - "sthel": 42863, - "sti": 860, - "sti": 12439, - "stia": 26492, - "stible": 25835, - "stic": 5868, - "stic": 1561, - "stical": 16660, - "stically": 19041, - "stick": 5483, - "stick": 4987, - "sticker": 11270, - "stickers": 11613, - "sticking": 21021, - "sticks": 10016, - "sticky": 18887, - "stics": 5449, - "stie": 38164, - "stie": 11000, - "stier": 42069, - "sties": 16428, - "stiff": 43471, - "stiff": 21441, - "stig": 4088, - "stig": 42551, - "stigate": 15390, - "stigma": 20619, - "stik": 42247, - "stil": 21790, - "stil": 37519, - "stiles": 33028, - "still": 13209, - "still": 1170, - "stills": 20259, - "stim": 18269, - "stime": 24711, - "stimul": 16434, - "stimulate": 42380, - "stimulating": 41237, - "stimulation": 39530, - "stimulus": 47283, - "stin": 2588, - "stin": 4025, - "stina": 22359, - "stine": 7098, - "sting": 19868, - "sting": 1271, - "stingly": 49332, - "stingray": 43229, - "stink": 38213, - "stinky": 44957, - "stino": 40658, - "stint": 33531, - "stion": 10812, - "stip": 39869, - "stips": 44756, - "stique": 43305, - "stir": 12416, - "stir": 19564, - "stirling": 23128, - "stirring": 39205, - "stis": 45224, - "stit": 14110, - "stitch": 30003, - "stitch": 14771, - "stitched": 36540, - "stitcher": 48204, - "stitches": 32360, - "stitching": 45208, - "stitu": 14585, - "stitutes": 40479, - "stive": 22426, - "stix": 48829, - "stjohn": 36153, - "stl": 14179, - "stl": 12527, - "stlblues": 44138, - "stlcards": 28644, - "stle": 7698, - "stles": 48638, - "stlouis": 40358, - "stlouis": 39516, - "stm": 28333, - "stn": 27175, - "sto": 928, - "sto": 5723, - "stock": 5899, - "stock": 3206, - "stocked": 23552, - "stockholm": 16024, - "stocki": 42944, - "stocking": 17335, - "stockings": 28040, - "stockmarket": 40359, - "stockport": 35569, - "stocks": 9321, - "stockton": 26130, - "stoday": 22392, - "stok": 43782, - "stoke": 31338, - "stoke": 13550, - "stoked": 13160, - "stokes": 27512, - "stol": 11401, - "stol": 6700, - "stole": 10995, - "stolen": 8704, - "stolic": 45020, - "stom": 2343, - "stom": 38068, - "stoma": 43545, - "stomach": 14722, - "stomp": 40165, - "stomping": 46144, - "ston": 4101, - "ston": 1839, - "stone": 7694, - "stone": 2441, - "stoned": 36248, - "stonehenge": 42417, - "stoner": 35131, - "stoner": 29115, - "stones": 42659, - "stones": 6885, - "stonewall": 39688, - "stoney": 44198, - "stony": 41717, - "stony": 35691, - "stoo": 24505, - "stood": 9151, - "stool": 34413, - "stool": 22314, - "stop": 6005, - "stop": 1691, - "stopbrexit": 48680, - "stopp": 15738, - "stopped": 6015, - "stopper": 32147, - "stoppers": 34457, - "stopping": 10735, - "stops": 9822, - "stopthe": 26463, - "stor": 809, - "stor": 17740, - "storage": 6824, - "store": 17769, - "store": 2183, - "stored": 28257, - "stores": 6370, - "storey": 24025, - "storians": 34628, - "stories": 3784, - "storing": 40087, - "stork": 46452, - "storm": 7434, - "storm": 2819, - "stormed": 45939, - "stormhour": 12161, - "storming": 24842, - "storms": 6464, - "stormtrooper": 49218, - "stormy": 20075, - "stors": 7178, - "story": 6512, - "story": 1134, - "storyline": 37079, - "storymonth": 23717, - "storyteller": 35882, - "storytelling": 14457, - "storytime": 44197, - "stos": 19281, - "stou": 37168, - "stour": 37361, - "stour": 21928, - "stout": 16550, - "stove": 21423, - "stow": 44284, - "stow": 17046, - "stowe": 34196, - "stown": 28071, - "stown": 7939, - "stp": 30576, - "stpatrick": 21343, - "stpatricksday": 22747, - "str": 807, - "str": 15913, - "stra": 1894, - "stra": 6253, - "strack": 46861, - "strada": 31134, - "strade": 48968, - "straigh": 31016, - "straight": 22114, - "straight": 4241, - "strain": 16887, - "strains": 38067, - "strait": 22946, - "straits": 41984, - "stral": 23289, - "stralia": 42510, - "stran": 18411, - "strand": 18214, - "strand": 17826, - "stranded": 22975, - "strang": 11138, - "strange": 33380, - "strange": 7288, - "strangely": 37566, - "stranger": 35541, - "stranger": 14149, - "strangers": 20684, - "strangerthings": 43271, - "strangest": 46740, - "strap": 13946, - "strapped": 40922, - "straps": 31213, - "stras": 36814, - "stras": 42125, - "strasbourg": 39576, - "strat": 11345, - "strat": 32925, - "strata": 47278, - "strate": 3532, - "strate": 28758, - "strategi": 49102, - "strategic": 10246, - "strategically": 45706, - "strategies": 9942, - "strategist": 37180, - "strategy": 5637, - "strates": 45724, - "stratford": 23955, - "strath": 21997, - "stration": 3156, - "strato": 28878, - "strauss": 32033, - "strava": 34625, - "stravel": 43494, - "straw": 7430, - "straw": 16438, - "strawberries": 17796, - "strawberry": 10233, - "straws": 33048, - "stray": 30784, - "stray": 15712, - "stre": 1079, - "stre": 19652, - "stread": 27797, - "streak": 11749, - "streaks": 42092, - "stream": 8659, - "stream": 3322, - "streamed": 26280, - "streamer": 25178, - "streamers": 19937, - "streaming": 6278, - "streamline": 44917, - "streams": 13545, - "stree": 35082, - "stree": 32438, - "streep": 38701, - "street": 4839, - "street": 2012, - "streetart": 12948, - "streetcar": 34268, - "streetfood": 44486, - "streetphotography": 20786, - "streets": 6058, - "streetstyle": 39118, - "streetwear": 37298, - "strel": 39685, - "stren": 4349, - "streng": 4472, - "strength": 15475, - "strength": 5959, - "strengthen": 16318, - "strengthened": 47131, - "strengthening": 23475, - "strengthens": 40280, - "strengths": 29268, - "stress": 17297, - "stress": 5843, - "stressed": 16497, - "stresses": 32112, - "stressful": 24268, - "stressing": 35917, - "stret": 12265, - "stretch": 10064, - "stretched": 29393, - "stretches": 32231, - "stretching": 24423, - "stri": 1493, - "stri": 27795, - "stria": 39620, - "strial": 30217, - "strian": 12924, - "stric": 2607, - "strick": 25181, - "strickland": 48939, - "strict": 21585, - "strictly": 16475, - "stride": 36024, - "strides": 37355, - "stries": 18171, - "strife": 46473, - "strike": 20774, - "strike": 5767, - "striker": 12448, - "strikers": 33465, - "strikes": 9280, - "striking": 13392, - "string": 25512, - "string": 9696, - "strings": 15699, - "strip": 9317, - "stripe": 19368, - "striped": 22192, - "stripes": 14239, - "stripped": 26602, - "stripper": 45759, - "stripping": 48588, - "strips": 19000, - "strive": 22140, - "striving": 37671, - "stro": 3121, - "stro": 6186, - "stroke": 44621, - "stroke": 10403, - "strokes": 26595, - "strol": 30123, - "stroll": 15924, - "stroller": 47076, - "strolling": 40911, - "strom": 14707, - "stron": 4165, - "strong": 10436, - "strong": 2389, - "stronger": 27760, - "stronger": 9245, - "strongertogether": 38532, - "strongest": 16171, - "strongh": 38678, - "strongly": 15507, - "strophy": 47912, - "strou": 48425, - "stroud": 39895, - "strous": 23752, - "stru": 1666, - "struc": 3311, - "struck": 10861, - "struction": 12497, - "structural": 16899, - "structure": 5285, - "structured": 27147, - "structures": 14171, - "structuring": 37496, - "strugg": 5176, - "struggle": 8443, - "struggled": 32921, - "struggles": 17446, - "struggling": 12135, - "struly": 34118, - "strum": 37632, - "strung": 46033, - "strust": 23920, - "strut": 48375, - "stry": 17325, - "stry": 2245, - "sts": 1088, - "stu": 858, - "stu": 23531, - "stuart": 32054, - "stuart": 11723, - "stub": 27066, - "stubborn": 38955, - "stuck": 6596, - "stud": 22368, - "stud": 13319, - "studded": 29153, - "studen": 44156, - "student": 14681, - "student": 2556, - "students": 1712, - "studi": 5691, - "studied": 21369, - "studies": 6426, - "studio": 17798, - "studio": 3155, - "studios": 6231, - "studs": 27571, - "study": 21051, - "study": 3123, - "studyabroad": 45425, - "studying": 8826, - "stuff": 46072, - "stuff": 3487, - "stuffed": 11781, - "stuffing": 31612, - "stuffs": 43455, - "stuk": 32424, - "stumb": 16784, - "stumble": 39045, - "stumbled": 21776, - "stump": 32064, - "stun": 3088, - "stun": 37959, - "stunned": 34034, - "stunner": 29965, - "stunning": 3769, - "stunningly": 47515, - "stuns": 43796, - "stunt": 19905, - "stunts": 40118, - "stupi": 18975, - "stupid": 42600, - "stupid": 8085, - "stupidity": 33766, - "stur": 10676, - "sturdy": 43780, - "stures": 27223, - "sturgeon": 31580, - "sturi": 21747, - "sturridge": 45331, - "stutt": 30444, - "stuttgart": 32219, - "stv": 27060, - "stv": 9708, - "stweet": 46832, - "stweets": 39174, - "stx": 42548, - "sty": 1421, - "sty": 2920, - "style": 12356, - "style": 1844, - "styled": 17974, - "styles": 6948, - "styli": 38577, - "styling": 14597, - "stylish": 10378, - "stylist": 15928, - "styn": 41394, - "su": 605, - "su": 2937, - "sua": 42448, - "suarez": 21437, - "suave": 47305, - "sub": 1783, - "sub": 7765, - "subaru": 21319, - "subjec": 16090, - "subject": 10300, - "subjects": 22099, - "subli": 16350, - "sublime": 22367, - "submarine": 19968, - "submer": 27156, - "submerged": 43171, - "submission": 16571, - "submissions": 21566, - "submit": 10423, - "submitted": 15189, - "submitting": 38788, - "subram": 49207, - "subs": 16398, - "subscri": 5838, - "subscribe": 9839, - "subscribed": 44867, - "subscriber": 36292, - "subscribers": 17337, - "subscription": 17979, - "subscriptions": 47162, - "subsequ": 33598, - "subsequent": 44323, - "subsi": 14856, - "subsidi": 45029, - "subsidiary": 45506, - "subsidies": 37685, - "subsidy": 47462, - "substan": 17487, - "substance": 19309, - "substances": 36834, - "substantial": 27171, - "substantially": 47577, - "substitu": 18529, - "substitute": 25340, - "subtitles": 39479, - "subtle": 16536, - "subur": 12517, - "suburb": 37664, - "suburban": 23570, - "suburbs": 25317, - "subway": 12196, - "suc": 1869, - "succe": 7981, - "succeed": 13556, - "succeeded": 41077, - "succes": 39019, - "success": 3695, - "success": 3034, - "successes": 29436, - "successful": 4670, - "successfully": 9934, - "succession": 38491, - "successive": 41319, - "successor": 34774, - "succu": 45253, - "succul": 25671, - "succulent": 35236, - "such": 2046, - "suction": 42786, - "sud": 8067, - "sud": 33714, - "sudan": 31149, - "sudan": 13474, - "sudanese": 42837, - "sudbury": 32488, - "sudden": 10833, - "sudden": 15433, - "suddenly": 11076, - "sue": 14045, - "sue": 6641, - "sued": 22225, - "suede": 21036, - "sues": 17105, - "suf": 21204, - "suf": 22579, - "sufc": 37091, - "suff": 4866, - "suffe": 13510, - "suffer": 13557, - "suffered": 14766, - "suffering": 10140, - "suffers": 22389, - "sufficient": 28410, - "suffol": 13775, - "suffolk": 46408, - "suffolk": 15685, - "suffra": 34596, - "suffrage": 39567, - "sufi": 39756, - "sug": 3189, - "suga": 28757, - "sugar": 12418, - "sugar": 5574, - "sugge": 6345, - "suggest": 13356, - "suggested": 18790, - "suggesti": 15033, - "suggesting": 29792, - "suggestion": 23741, - "suggestions": 16052, - "suggests": 13333, - "suho": 32744, - "sui": 24972, - "suici": 16372, - "suicidal": 37165, - "suicide": 31310, - "suicide": 8247, - "suing": 18309, - "suisse": 35964, - "suit": 11887, - "suit": 3940, - "suitable": 17476, - "suitcase": 27792, - "suite": 9346, - "suited": 25919, - "suites": 21523, - "suits": 9949, - "suk": 24820, - "suk": 6886, - "suka": 44017, - "suke": 25590, - "sukh": 46961, - "suki": 32704, - "sul": 1767, - "sul": 19879, - "sula": 34713, - "sula": 26143, - "sullivan": 14477, - "sully": 37752, - "sulph": 37234, - "sulphur": 47659, - "sultan": 35650, - "sultan": 17049, - "sum": 7054, - "sum": 8257, - "suma": 47938, - "sumat": 32640, - "sumatra": 47346, - "sume": 45457, - "sumi": 41248, - "summ": 1309, - "summar": 34657, - "summari": 31993, - "summary": 13435, - "summed": 34912, - "summer": 5500, - "summer": 1673, - "summers": 18254, - "summerslam": 40264, - "summertime": 19025, - "summit": 30011, - "summit": 3768, - "summon": 27622, - "summon": 39782, - "sumner": 46813, - "sumo": 33734, - "sump": 34252, - "sumptuous": 47354, - "sums": 13325, - "sun": 968, - "sun": 2176, - "sunbathing": 46994, - "sunburn": 45767, - "sund": 40735, - "sundae": 38078, - "sundance": 24128, - "sundar": 44936, - "sunday": 6649, - "sunday": 1706, - "sundayfunday": 21565, - "sundaymorning": 24809, - "sundaymotivation": 46227, - "sundays": 15827, - "sundaywith": 26469, - "sundaywithmarsha": 26662, - "sunder": 15097, - "sunderland": 45727, - "sunderland": 18851, - "sundown": 44438, - "sune": 41096, - "sunflower": 21559, - "sunflowers": 39809, - "sung": 16903, - "sung": 6047, - "sunglasses": 12906, - "suni": 17663, - "suni": 47010, - "sunil": 32861, - "sunite": 21382, - "sunited": 35276, - "sunk": 37534, - "sunken": 43473, - "sunlight": 17996, - "sunni": 44315, - "sunny": 15632, - "sunny": 5438, - "sunrise": 5610, - "suns": 18322, - "sunscreen": 29355, - "sunset": 37880, - "sunset": 3424, - "sunsets": 17721, - "sunshine": 32761, - "sunshine": 5385, - "suny": 41308, - "sup": 19078, - "sup": 8249, - "supdates": 24177, - "super": 1642, - "super": 1994, - "superb": 8930, - "superbike": 45709, - "superbowl": 47461, - "superbowl": 16467, - "supercar": 27021, - "supercars": 32185, - "supercell": 43227, - "supercharged": 47479, - "supere": 46831, - "superfood": 41715, - "supergirl": 25771, - "superhero": 14049, - "superheroes": 23334, - "superint": 17615, - "superintendent": 19020, - "superior": 13205, - "superjunior": 40475, - "superleague": 45539, - "superman": 11237, - "supermarket": 19897, - "supermarkets": 45106, - "supermodel": 41963, - "supermoon": 36571, - "supernatural": 15484, - "supernova": 39843, - "superrugby": 48717, - "supersonic": 42019, - "supersport": 46319, - "superst": 38202, - "superstar": 32551, - "superstar": 10472, - "superstars": 25797, - "supervis": 12709, - "supervised": 41316, - "supervision": 36234, - "supervisor": 20366, - "supervisors": 37958, - "superyacht": 42714, - "supp": 1023, - "supper": 15727, - "supple": 31431, - "supplement": 19924, - "supplements": 21265, - "supplied": 24106, - "supplier": 18043, - "suppliers": 24196, - "supplies": 9384, - "supply": 25074, - "supply": 6389, - "supplychain": 31224, - "supplying": 32739, - "suppo": 6941, - "suppor": 2104, - "support": 12062, - "support": 1425, - "supported": 8038, - "supporter": 12992, - "supporters": 7403, - "supportindiefilm": 43976, - "supporting": 3976, - "supportive": 18313, - "supportlocal": 43852, - "supports": 8336, - "supportsmall": 30941, - "supportsmallstreamers": 36097, - "suppose": 18924, - "supposed": 9119, - "supposedly": 32302, - "suppre": 20542, - "suppression": 36508, - "supra": 48485, - "supre": 5875, - "supremac": 28643, - "supremacist": 39005, - "supremacy": 28913, - "supreme": 35222, - "supreme": 7468, - "supt": 23625, - "sur": 1090, - "sur": 7123, - "sura": 33412, - "sura": 49125, - "surabaya": 45227, - "surance": 22184, - "surat": 30201, - "sure": 14320, - "sure": 1650, - "sured": 36869, - "surely": 11409, - "sures": 12725, - "suresh": 32118, - "suresh": 31464, - "sureshpp": 41924, - "sureshpprabhu": 42050, - "surf": 10176, - "surf": 10322, - "surface": 7744, - "surfaces": 20746, - "surfer": 24925, - "surfers": 34842, - "surfing": 15762, - "surg": 13045, - "surge": 17457, - "surgeon": 16039, - "surgeons": 26000, - "surger": 5122, - "surgeries": 34940, - "surgery": 5344, - "surgical": 16386, - "suri": 14130, - "suri": 33952, - "suring": 16817, - "suriya": 17832, - "surpass": 45494, - "surpassed": 25648, - "surplus": 29413, - "surpri": 3244, - "surprise": 5099, - "surprised": 8949, - "surprises": 16920, - "surprising": 14964, - "surprisingly": 17367, - "surreal": 18408, - "surrealism": 41773, - "surrender": 20964, - "surrendered": 44601, - "surrey": 26489, - "surrey": 14315, - "surro": 47499, - "surroun": 8250, - "surround": 26543, - "surround": 22999, - "surrounded": 13589, - "surrounding": 12544, - "surroundings": 26915, - "surrounds": 39012, - "suru": 49240, - "surve": 8952, - "surveill": 15408, - "surveillance": 15578, - "survey": 45914, - "survey": 6809, - "surveying": 33085, - "surveys": 25096, - "survi": 3440, - "surviv": 12922, - "survival": 10172, - "survive": 10431, - "survived": 13483, - "survives": 30927, - "surviving": 18609, - "survivor": 31934, - "survivor": 10944, - "survivors": 13711, - "surya": 37767, - "sus": 8091, - "sus": 3036, - "susa": 20546, - "susan": 19922, - "susan": 10168, - "suscep": 44270, - "sush": 22298, - "sushi": 11729, - "sushmaswar": 48200, - "susie": 32284, - "susp": 7971, - "suspec": 10298, - "suspect": 9065, - "suspected": 15579, - "suspects": 18265, - "suspen": 10578, - "suspend": 41007, - "suspended": 13126, - "suspends": 39535, - "suspense": 21556, - "suspension": 15417, - "suspici": 25714, - "suspicion": 34910, - "suspicious": 19862, - "sussex": 31244, - "sussex": 13266, - "sustain": 4644, - "sustain": 28156, - "sustainability": 9635, - "sustainable": 23645, - "sustainable": 7078, - "sustained": 22699, - "sustaining": 44418, - "sut": 23984, - "sut": 28956, - "sutherland": 27592, - "sutton": 39359, - "sutton": 18564, - "suv": 15985, - "suz": 9957, - "suzanne": 24617, - "suzu": 36289, - "suzuki": 16892, - "suzy": 26552, - "sv": 6508, - "sv": 17083, - "svc": 45065, - "sve": 47637, - "sven": 37786, - "sven": 45183, - "sver": 45923, - "sville": 44580, - "sville": 6741, - "svp": 28465, - "svt": 42014, - "svu": 32123, - "sw": 1220, - "sw": 4457, - "swa": 4707, - "swa": 31916, - "swach": 20862, - "swachhb": 31898, - "swachhbharat": 36927, - "swag": 8852, - "swag": 8177, - "swagg": 47702, - "swagger": 35797, - "swain": 43226, - "swal": 13433, - "swallow": 28979, - "swallowed": 46956, - "swallows": 45124, - "swam": 42539, - "swami": 25021, - "swamp": 41953, - "swamp": 16595, - "swamy": 28445, - "swan": 8215, - "swan": 12530, - "swana": 24699, - "swans": 19516, - "swansea": 16567, - "swanson": 34797, - "swap": 15234, - "swapped": 39077, - "swapping": 44702, - "swaps": 49242, - "swar": 11680, - "swarm": 31577, - "swarovski": 28515, - "swat": 32547, - "swat": 26482, - "swatch": 48053, - "sway": 26443, - "sway": 26617, - "swc": 42231, - "swe": 2350, - "swe": 38070, - "swear": 7406, - "swearing": 32627, - "sweat": 10282, - "sweat": 12663, - "sweater": 11455, - "sweaters": 31303, - "sweating": 33215, - "sweats": 39321, - "sweatshirt": 22442, - "sweaty": 28419, - "sweden": 8760, - "swedish": 11585, - "swee": 1812, - "sweek": 30017, - "sweeney": 27286, - "sweep": 23220, - "sweep": 13669, - "sweeping": 25719, - "sweeps": 26887, - "sweepstakes": 25992, - "sweet": 10957, - "sweet": 2418, - "sweetened": 45577, - "sweeter": 32873, - "sweetest": 15180, - "sweethe": 16316, - "sweetheart": 18079, - "sweetie": 24450, - "sweetness": 29713, - "sweets": 18045, - "swel": 48470, - "swell": 35538, - "swell": 21490, - "swelling": 46578, - "swept": 23311, - "swer": 30514, - "swfc": 30227, - "swfl": 46607, - "swi": 3881, - "swi": 45223, - "swick": 17159, - "swif": 28548, - "swift": 34843, - "swift": 8229, - "swild": 33909, - "swild": 38696, - "swildlife": 46818, - "swim": 4928, - "swim": 7681, - "swimmer": 25475, - "swimmers": 27776, - "swimming": 7411, - "swims": 46798, - "swimsuit": 25504, - "swimwear": 31889, - "swin": 14554, - "swin": 40798, - "swindon": 29540, - "swine": 31166, - "swing": 25292, - "swing": 7429, - "swinging": 26760, - "swings": 29141, - "swipe": 31828, - "swire": 42753, - "swirl": 35795, - "swis": 23611, - "swish": 38571, - "swiss": 37917, - "swiss": 9287, - "swit": 3726, - "switch": 22480, - "switch": 5893, - "switched": 22869, - "switches": 33569, - "switching": 21155, - "swith": 17299, - "switzer": 9835, - "switzerland": 9912, - "swivel": 48256, - "swo": 38673, - "swol": 29575, - "swollen": 36129, - "swoo": 29744, - "swood": 24158, - "swoon": 37028, - "swoop": 45661, - "sword": 33294, - "sword": 11356, - "swords": 27181, - "swork": 42722, - "sworld": 33305, - "sworn": 21130, - "sworth": 13322, - "swt": 38878, - "swx": 20597, - "sx": 9402, - "sx": 17806, - "sxsw": 13369, - "sy": 974, - "sy": 2126, - "sya": 35017, - "sycam": 34911, - "sycamore": 43086, - "syd": 4525, - "syd": 22504, - "sydney": 15878, - "sydney": 5278, - "syed": 27624, - "syfy": 32047, - "sykes": 27287, - "syl": 6452, - "sylla": 41708, - "sylvania": 12011, - "sylve": 28369, - "sylvester": 37214, - "sylvia": 25670, - "sym": 3645, - "sym": 40327, - "symb": 22987, - "symbol": 13085, - "symboli": 22019, - "symbolic": 33177, - "symbolism": 44679, - "symbols": 25476, - "symmetry": 31427, - "symp": 11468, - "sympathi": 47493, - "sympathy": 32477, - "symph": 9544, - "symphonic": 42639, - "symphony": 11180, - "sympo": 9730, - "symposium": 9971, - "symptom": 47799, - "symptoms": 12956, - "syn": 3758, - "syn": 36090, - "synago": 30945, - "synagogue": 33518, - "sync": 20081, - "synchron": 23943, - "syndic": 21098, - "syndicate": 28779, - "syndrome": 10927, - "syner": 22283, - "synergy": 32012, - "syno": 31533, - "synod": 47712, - "synopsis": 47018, - "synth": 33841, - "synth": 24462, - "synthe": 22604, - "synthesi": 33565, - "synthesis": 21602, - "synthesizer": 44077, - "synthetic": 19917, - "syou": 26742, - "syour": 21718, - "syrac": 17279, - "syracuse": 19640, - "syrah": 45364, - "syri": 18917, - "syria": 5563, - "syrian": 47562, - "syrian": 10041, - "syrians": 41392, - "syrup": 16611, - "sys": 26726, - "syste": 1933, - "system": 47813, - "system": 2422, - "systematic": 28586, - "systemic": 33807, - "systems": 4828, - "sz": 13438, - "sz": 15879, - "sze": 44507, - "szn": 48092, - "são": 45911, - "sé": 37879, - "t": 83, - "t": 339, - "ta": 648, - "ta": 1397, - "taa": 43874, - "tab": 2648, - "tab": 14724, - "tabby": 36145, - "tabern": 48991, - "tability": 15770, - "table": 12108, - "table": 2175, - "tableau": 39723, - "tables": 7822, - "tablet": 12494, - "tabletop": 46843, - "tabletop": 25773, - "tablets": 20436, - "tably": 24440, - "taboo": 38400, - "tabs": 29163, - "tac": 3145, - "tac": 22653, - "tache": 39239, - "tack": 6339, - "tack": 34446, - "tackle": 10294, - "tackled": 47218, - "tackles": 18021, - "tackling": 19628, - "taco": 31924, - "taco": 12436, - "tacoma": 25397, - "tacos": 14090, - "tactic": 40377, - "tactical": 17137, - "tactics": 16410, - "tacular": 48985, - "tad": 15890, - "tad": 19860, - "tado": 40846, - "tae": 15257, - "tae": 15580, - "taehyung": 24642, - "taek": 30753, - "taekwondo": 39963, - "taemin": 30600, - "taeyang": 45802, - "taeyeon": 27389, - "taf": 29660, - "taft": 42141, - "tag": 3456, - "tag": 3640, - "tage": 2669, - "tages": 39902, - "tagged": 12969, - "tagging": 25138, - "tagne": 47467, - "tags": 11606, - "tah": 14822, - "tah": 7090, - "tahit": 45385, - "tahoe": 26140, - "tai": 6511, - "tai": 13040, - "taiji": 30185, - "tail": 7156, - "tail": 4132, - "tailed": 20626, - "tailgate": 23168, - "tailgating": 42625, - "tailo": 27230, - "tailor": 29870, - "tailored": 28275, - "tailoring": 46357, - "tails": 16066, - "tain": 2841, - "tain": 1908, - "taine": 21214, - "taine": 32299, - "tained": 10212, - "taining": 7565, - "tainment": 30063, - "tains": 3952, - "tainted": 47211, - "taipei": 24356, - "tair": 29143, - "tairp": 43707, - "tait": 45325, - "taiwan": 36319, - "taiwan": 12626, - "taiwanese": 41416, - "taj": 28937, - "taj": 24805, - "taji": 46358, - "tak": 15070, - "tak": 14458, - "taka": 24070, - "taka": 40968, - "take": 5052, - "take": 1172, - "takeaway": 25737, - "takeaways": 32080, - "takeme": 41748, - "taken": 2807, - "takeoff": 32789, - "takeover": 11863, - "taker": 17939, - "takers": 30775, - "takes": 2633, - "takin": 30890, - "taking": 2019, - "taku": 48168, - "tal": 976, - "tal": 2066, - "tala": 29845, - "talaga": 35349, - "talbot": 30585, - "tale": 33971, - "tale": 7798, - "talent": 30435, - "talent": 5114, - "talented": 5331, - "talents": 16136, - "tales": 9469, - "tali": 12122, - "tali": 45406, - "taliban": 20788, - "talis": 36480, - "tality": 15631, - "talk": 12462, - "talk": 1841, - "talked": 10153, - "talkin": 26040, - "talking": 31463, - "talking": 2578, - "talks": 3237, - "tall": 11664, - "tall": 7771, - "talla": 21528, - "tallade": 44220, - "tallahassee": 37832, - "taller": 23470, - "tallest": 19774, - "tallinn": 45079, - "tally": 16323, - "talon": 47897, - "tam": 2661, - "tam": 12246, - "tama": 45424, - "tamanna": 48055, - "tamar": 22901, - "tamara": 35697, - "tame": 38557, - "tame": 32778, - "tamed": 40575, - "tami": 39429, - "tamil": 23046, - "tamil": 14033, - "tamilnadu": 32371, - "tamine": 42566, - "tammy": 28396, - "tampa": 10906, - "tampab": 37852, - "tamu": 34105, - "tan": 2123, - "tan": 5039, - "tana": 21396, - "tand": 20244, - "tandem": 33756, - "tane": 13344, - "tane": 24923, - "taneous": 22275, - "taneously": 24422, - "tang": 10425, - "tang": 20794, - "tanger": 31844, - "tangerine": 42045, - "tangible": 44823, - "tangle": 36568, - "tangled": 33587, - "tango": 24089, - "tani": 31374, - "tani": 32985, - "tania": 45369, - "tank": 29858, - "tank": 6172, - "tanker": 25020, - "tanks": 14223, - "tann": 19174, - "tanner": 22001, - "tanning": 27985, - "tans": 27332, - "tant": 41383, - "tant": 41695, - "tante": 48262, - "tanto": 45685, - "tany": 34410, - "tanya": 26800, - "tanz": 47399, - "tanzania": 15711, - "tao": 29084, - "tao": 18923, - "tap": 17923, - "tap": 7888, - "tapas": 27361, - "tape": 18332, - "tape": 5749, - "taped": 33219, - "tapes": 17903, - "tapestry": 33525, - "taping": 24355, - "tapp": 27644, - "tapp": 27764, - "tapped": 26649, - "tapping": 27882, - "tapro": 34415, - "taproom": 40266, - "taps": 23267, - "tar": 2002, - "tar": 6977, - "tara": 15264, - "tarak": 37813, - "taran": 32370, - "tarantino": 41180, - "tarde": 48670, - "tardis": 35410, - "tares": 34587, - "targe": 9620, - "target": 38556, - "target": 5400, - "targeted": 14968, - "targeting": 15818, - "targets": 12468, - "tari": 4238, - "tari": 38012, - "tarian": 11762, - "tarians": 42789, - "taries": 47291, - "tariff": 40220, - "tariffs": 28335, - "tariq": 42526, - "tarmac": 44294, - "taro": 26264, - "tarot": 23702, - "tart": 16707, - "tart": 14120, - "tartan": 35064, - "tarts": 29799, - "tary": 31729, - "tary": 5065, - "tarzan": 45463, - "tas": 6538, - "tas": 10163, - "tash": 35272, - "tasha": 44967, - "task": 39189, - "task": 10549, - "tasks": 19453, - "tasmania": 22429, - "tasmanian": 45102, - "tassel": 49276, - "tast": 10839, - "taste": 14314, - "taste": 5219, - "tasted": 22827, - "tasteof": 38097, - "taster": 29743, - "tastes": 13736, - "tastic": 21337, - "tasting": 7656, - "tastings": 49273, - "tasty": 43390, - "tasty": 8568, - "tat": 2652, - "tat": 21592, - "tata": 19300, - "tate": 44476, - "tate": 13295, - "tath": 27566, - "tati": 31433, - "tatiana": 48837, - "tation": 5280, - "tations": 32324, - "tator": 18791, - "tators": 37206, - "tats": 44557, - "tatt": 9232, - "tatted": 41605, - "tattoo": 15980, - "tattoo": 6325, - "tattooed": 28541, - "tattoos": 14900, - "tatum": 26103, - "tau": 6620, - "tau": 20510, - "taught": 9306, - "taun": 23910, - "taunton": 40681, - "taurus": 32881, - "taver": 37776, - "tavern": 18644, - "taw": 33868, - "taw": 40289, - "tawa": 29035, - "tawards": 14351, - "tax": 4581, - "tax": 3879, - "taxation": 36847, - "taxes": 11462, - "taxi": 25160, - "taxi": 11380, - "taxider": 47420, - "taxis": 34009, - "taxpay": 17986, - "taxpayer": 30978, - "taxpayers": 25503, - "tay": 6542, - "tay": 15073, - "taya": 38484, - "tayl": 3913, - "taylor": 9044, - "taylor": 3961, - "taylorswift": 18936, - "tayo": 33941, - "taz": 41475, - "taz": 31870, - "tb": 1990, - "tb": 7490, - "tba": 34363, - "tball": 8390, - "tball": 1467, - "tbc": 31807, - "tbd": 45548, - "tbh": 13238, - "tbi": 45868, - "tbl": 42962, - "tbli": 43664, - "tblightning": 44178, - "tbo": 34255, - "tbr": 46643, - "tbs": 37368, - "tbt": 2950, - "tc": 6820, - "tc": 5454, - "tca": 35116, - "tch": 10744, - "tch": 4048, - "tches": 42001, - "tcm": 21501, - "tcm": 26588, - "tcmparty": 24338, - "tcot": 8995, - "tcs": 39107, - "tcu": 26791, - "td": 20578, - "td": 3192, - "tdf": 21844, - "tdi": 45621, - "tdp": 47009, - "tds": 20238, - "tdsb": 29836, - "te": 600, - "te": 756, - "tea": 41053, - "tea": 3274, - "teach": 2043, - "teach": 6865, - "teacher": 18051, - "teacher": 4008, - "teachers": 5069, - "teaches": 17110, - "teaching": 5141, - "teachings": 32119, - "teal": 22821, - "team": 2085, - "team": 1027, - "teamcanada": 46636, - "teamed": 20590, - "teamgb": 40971, - "teaming": 24392, - "teammate": 17900, - "teammates": 13921, - "teams": 3891, - "teamsisd": 34703, - "teamusa": 28625, - "teamwork": 14657, - "teaparty": 33065, - "teapo": 35745, - "teapot": 40749, - "tear": 15802, - "tear": 11862, - "tearful": 46873, - "tearing": 24785, - "tears": 7688, - "teas": 23003, - "teas": 29314, - "tease": 25163, - "teased": 49122, - "teaser": 8982, - "teasers": 48990, - "teases": 28509, - "teasing": 36507, - "teat": 26376, - "teatime": 48948, - "teatro": 35756, - "teau": 24931, - "tebow": 37797, - "tec": 17381, - "tec": 11612, - "tech": 1782, - "tech": 2061, - "techcrunch": 42110, - "techn": 6252, - "technews": 31787, - "technic": 16639, - "technic": 37666, - "technical": 49231, - "technical": 7582, - "technically": 23180, - "technician": 22540, - "technicians": 35513, - "techno": 2599, - "techno": 17564, - "technological": 23068, - "technologies": 10040, - "technology": 3089, - "techs": 41353, - "ted": 4841, - "ted": 775, - "tedcruz": 27517, - "teddy": 25758, - "teddy": 11798, - "tedly": 8539, - "tedu": 42517, - "tedx": 17950, - "tedx": 41504, - "tee": 12676, - "tee": 3385, - "teed": 13692, - "teen": 5398, - "teen": 4697, - "teenage": 14069, - "teenager": 19338, - "teenagers": 25989, - "teenchoice": 28203, - "teens": 12375, - "teenth": 20249, - "teenwolf": 40067, - "teeny": 41622, - "teer": 48648, - "tees": 9641, - "teessi": 43295, - "teeth": 8225, - "tega": 29508, - "tegr": 39801, - "teh": 18720, - "teh": 29601, - "tehran": 26399, - "tein": 33223, - "tej": 46724, - "tek": 17489, - "tek": 18294, - "tekken": 29843, - "tel": 4978, - "tel": 2226, - "telang": 23469, - "telangana": 26386, - "tele": 3103, - "tele": 32851, - "telecom": 21057, - "telecommunications": 39900, - "telegram": 26780, - "telegraph": 14713, - "telephone": 17243, - "telescope": 19037, - "telethon": 49266, - "televised": 39470, - "television": 8608, - "telford": 38323, - "tell": 16069, - "tell": 2330, - "teller": 20415, - "tellers": 42707, - "telling": 5507, - "tells": 5217, - "tellu": 42511, - "telly": 31475, - "tels": 43607, - "telugu": 22927, - "tely": 5630, - "tem": 2404, - "tem": 17536, - "tema": 45881, - "teme": 43378, - "temp": 2684, - "temp": 11097, - "tempe": 36723, - "temper": 5981, - "temper": 35521, - "temperature": 9543, - "temperatures": 11575, - "tempered": 40521, - "tempest": 36053, - "templ": 16679, - "template": 18591, - "templates": 30498, - "temple": 21841, - "temple": 5620, - "temples": 24024, - "tempo": 19625, - "tempor": 4858, - "temporal": 43656, - "temporarily": 23189, - "temporary": 6513, - "temps": 11668, - "tempt": 28460, - "temptation": 30118, - "tempted": 26226, - "tempting": 34876, - "ten": 1149, - "ten": 2581, - "tenant": 16954, - "tenants": 26023, - "tenay": 45384, - "tenberg": 31329, - "tend": 17630, - "tend": 21252, - "tendency": 47277, - "tender": 23020, - "tender": 9838, - "tenderloin": 42750, - "tenders": 44741, - "tending": 35084, - "tendon": 48459, - "tends": 39962, - "tene": 24868, - "tened": 13682, - "tener": 29054, - "teneri": 28000, - "tenerife": 29401, - "teners": 41307, - "teness": 18018, - "teng": 34016, - "teng": 28474, - "tennant": 29310, - "tennes": 9514, - "tennessee": 10053, - "tennis": 31504, - "tennis": 5298, - "tenor": 30521, - "tens": 14062, - "tense": 23518, - "tension": 15221, - "tensions": 24224, - "tenstein": 49139, - "tent": 18505, - "tent": 10782, - "tentative": 48238, - "tenth": 27483, - "tention": 12191, - "tents": 30730, - "tenure": 30739, - "teo": 18665, - "tep": 31806, - "tequ": 17502, - "tequila": 18510, - "ter": 704, - "ter": 652, - "tera": 15155, - "teras": 44830, - "tere": 11329, - "tered": 49272, - "tered": 4389, - "terence": 33806, - "teresa": 19081, - "teri": 30917, - "teria": 22685, - "terie": 42276, - "tering": 7929, - "term": 40991, - "term": 4780, - "termin": 4766, - "terminal": 11816, - "terminals": 44091, - "terminator": 29609, - "terminology": 48896, - "terms": 8663, - "tern": 41572, - "tern": 12959, - "terns": 25251, - "tero": 20727, - "tero": 24697, - "terps": 41471, - "terr": 3921, - "terra": 22366, - "terra": 18816, - "terrac": 28549, - "terrace": 13820, - "terraces": 47508, - "terracotta": 45123, - "terrain": 20184, - "terran": 43726, - "terre": 33888, - "terre": 27537, - "terrell": 39494, - "terrence": 38746, - "terrestrial": 46299, - "terri": 4504, - "terri": 36722, - "terrible": 9741, - "terribly": 34558, - "terrier": 14455, - "terriers": 47047, - "terrific": 13837, - "terrified": 28204, - "terrifying": 18526, - "territ": 10720, - "territorial": 39163, - "territories": 32846, - "territory": 13936, - "terror": 9596, - "terror": 9327, - "terrori": 6836, - "terrorism": 10583, - "terrorist": 10575, - "terrorists": 12835, - "terry": 19378, - "terry": 8561, - "ters": 24102, - "ters": 1737, - "terti": 48386, - "tery": 4184, - "tes": 8019, - "tes": 3609, - "tesco": 15434, - "tese": 33320, - "tesla": 12254, - "tess": 21807, - "tess": 20840, - "tessa": 32063, - "test": 7738, - "test": 1628, - "testam": 23477, - "testament": 24609, - "tested": 10576, - "tester": 32707, - "testi": 18373, - "testic": 42364, - "testify": 33088, - "testifying": 46347, - "testim": 12553, - "testimonial": 28834, - "testimony": 18672, - "testing": 4967, - "testo": 42428, - "testosterone": 45168, - "tests": 8715, - "tet": 40468, - "tet": 13275, - "tetra": 40902, - "tetris": 45934, - "teu": 47152, - "teuk": 39979, - "teur": 27120, - "tex": 2056, - "tex": 11728, - "texan": 35287, - "texan": 38386, - "texans": 17580, - "texanscheer": 43717, - "texas": 15713, - "texas": 3403, - "texaste": 46469, - "text": 18169, - "text": 4160, - "textbook": 25952, - "textbooks": 44041, - "texted": 29004, - "textile": 19789, - "textiles": 24326, - "texting": 18600, - "texts": 12767, - "texture": 16505, - "textured": 32168, - "textures": 28063, - "tey": 32395, - "tez": 22664, - "tf": 18828, - "tf": 5001, - "tfc": 30186, - "tfl": 29918, - "tford": 22493, - "tful": 17108, - "tfw": 16741, - "tg": 7665, - "tg": 11981, - "tgif": 14483, - "th": 513, - "th": 640, - "tha": 18470, - "tha": 4715, - "thab": 38219, - "thad": 48339, - "thai": 28054, - "thai": 8825, - "thail": 7258, - "thailand": 7469, - "thak": 22801, - "thakur": 38427, - "thal": 7967, - "thal": 12323, - "thala": 17784, - "thalai": 25206, - "thalaivar": 44918, - "thalap": 39789, - "thalapathy": 45405, - "thalapathy": 23324, - "thall": 36007, - "tham": 11761, - "tham": 8896, - "thames": 43472, - "thames": 15321, - "than": 792, - "than": 1126, - "thand": 44465, - "thane": 21463, - "thang": 24870, - "thani": 31322, - "thank": 2790, - "thank": 1144, - "thanked": 32079, - "thankful": 38839, - "thankful": 6217, - "thankfully": 22089, - "thanking": 21989, - "thanks": 5672, - "thanks": 1085, - "thanksgiving": 45732, - "thanksgiving": 6167, - "thanku": 45710, - "thankyou": 18050, - "thankyou": 9911, - "thanniversary": 35564, - "thanos": 36709, - "thanx": 25095, - "thar": 14396, - "thar": 38843, - "thard": 43474, - "that": 6303, - "that": 682, - "thatcher": 32496, - "thats": 44636, - "thats": 9254, - "thaw": 26081, - "thaw": 47229, - "thbewithyou": 41067, - "thc": 20091, - "thcentury": 49111, - "thd": 28219, - "thday": 37801, - "the": 599, - "the": 518, - "thea": 15935, - "thea": 25429, - "thead": 25259, - "theal": 45728, - "thealth": 31398, - "thear": 43283, - "theart": 44678, - "theast": 8378, - "theastern": 17877, - "theat": 2263, - "theater": 39438, - "theater": 6128, - "theaters": 14689, - "theatre": 19857, - "theatre": 3292, - "theatres": 21680, - "theatrical": 26833, - "theband": 27695, - "thebeatles": 35645, - "thebest": 40883, - "thebest": 25856, - "thebig": 24732, - "theblack": 47718, - "thec": 48659, - "thed": 31405, - "thedaily": 33550, - "theday": 4408, - "thedream": 39417, - "thee": 44475, - "thee": 15108, - "theeconomist": 44518, - "theellenshow": 35342, - "thefilm": 31665, - "theflash": 25434, - "theforce": 40002, - "theforceawakens": 48033, - "theft": 13286, - "thefuture": 34287, - "thegame": 24428, - "thegood": 28594, - "thegreat": 28721, - "thei": 44522, - "their": 911, - "theirs": 29297, - "thel": 5403, - "thelast": 23495, - "thelastjedi": 47992, - "theless": 27712, - "theli": 15277, - "thelittle": 46872, - "thelo": 47036, - "thelove": 40668, - "thelove": 43200, - "them": 5435, - "them": 1180, - "themasters": 48378, - "theme": 38524, - "theme": 5849, - "themed": 10126, - "themes": 17849, - "themet": 48183, - "themovie": 27062, - "themselves": 6503, - "then": 5929, - "then": 1594, - "thenburg": 45209, - "thene": 17012, - "thenew": 24212, - "thenext": 47881, - "thenight": 43336, - "theno": 37172, - "thenorth": 34338, - "theo": 17043, - "theo": 18084, - "theod": 26653, - "theodore": 30743, - "theological": 41162, - "theology": 24095, - "theon": 34653, - "theone": 46231, - "theopen": 41438, - "theore": 22690, - "theoretical": 35585, - "theori": 34804, - "theories": 23937, - "theory": 7143, - "thepeople": 33597, - "thepersonal": 29981, - "thepersonalnetwork": 30016, - "thephoto": 18303, - "thephotohour": 18607, - "ther": 1160, - "ther": 743, - "therap": 4499, - "therapeu": 19332, - "therapeutic": 23240, - "therapeutics": 49101, - "therapies": 30179, - "therapist": 20608, - "therapists": 34763, - "therapper": 49340, - "therapy": 5257, - "there": 5283, - "there": 997, - "thereal": 8074, - "thereal": 41140, - "thereby": 43308, - "thered": 10208, - "therefore": 16865, - "theres": 18494, - "theresa": 14126, - "therese": 47996, - "theresistance": 22845, - "theri": 28967, - "theri": 45297, - "therine": 26807, - "therine": 9239, - "thering": 7891, - "therland": 25351, - "thermal": 13689, - "thermo": 22303, - "thermom": 31138, - "thermometer": 38172, - "thermost": 42391, - "thern": 10919, - "thern": 3137, - "thero": 13165, - "theroad": 29807, - "therock": 30036, - "theroy": 38146, - "thers": 1959, - "thes": 40556, - "thes": 6460, - "thescript": 47061, - "these": 40366, - "these": 1071, - "theses": 39388, - "thesimpsons": 45513, - "thesims": 34192, - "thesis": 10673, - "thessal": 41491, - "thessaloni": 41753, - "thest": 35343, - "thesun": 45617, - "theta": 27694, - "thetic": 7954, - "thetimes": 36039, - "thevamp": 33701, - "thevoice": 47206, - "thevoice": 30258, - "thewalkingdead": 18087, - "thewanted": 43008, - "theworld": 44988, - "theworld": 17475, - "thex": 35990, - "they": 15174, - "they": 889, - "theyre": 28266, - "thfc": 17729, - "thi": 2362, - "thi": 9111, - "thia": 17943, - "thiago": 44537, - "thian": 23214, - "thians": 28187, - "thibau": 48351, - "thic": 26107, - "thic": 11794, - "thick": 18417, - "thick": 11006, - "thicker": 43302, - "thickness": 40754, - "thief": 18508, - "thier": 25595, - "thierry": 32929, - "thieves": 17899, - "thigh": 47124, - "thigh": 22877, - "thighs": 30847, - "thik": 20512, - "thika": 44619, - "thill": 31266, - "thim": 42331, - "thin": 2178, - "thin": 7847, - "thine": 47192, - "thing": 7499, - "thing": 946, - "things": 30670, - "things": 1739, - "thingsto": 43924, - "thingy": 36888, - "think": 9820, - "think": 1331, - "thinkbig": 26015, - "thinkbigsundaywithmarsha": 26666, - "thinker": 34577, - "thinkers": 32779, - "thinkin": 34443, - "thinking": 3291, - "thinks": 6109, - "thinner": 47247, - "thir": 6030, - "third": 32102, - "third": 3981, - "thirds": 42582, - "thirst": 23563, - "thirsty": 39731, - "thirsty": 17521, - "thirteen": 34209, - "thirty": 20813, - "thiru": 43292, - "this": 4340, - "this": 589, - "thisday": 6532, - "thisdayin": 33641, - "thisdayinhistory": 46913, - "thisi": 7299, - "thisis": 14887, - "thismorning": 36245, - "thistle": 29039, - "thistory": 28904, - "thium": 21804, - "thletics": 17765, - "thm": 10407, - "thman": 30079, - "thms": 19874, - "thn": 44155, - "thn": 45587, - "thnx": 25480, - "tho": 1325, - "tho": 5025, - "thof": 18943, - "thofjuly": 21613, - "thol": 29319, - "thole": 31029, - "tholes": 42465, - "thology": 9881, - "thom": 2585, - "thom": 24094, - "thomas": 12574, - "thomas": 3888, - "thome": 21289, - "thomp": 37274, - "thompson": 42181, - "thompson": 8535, - "thomson": 24151, - "thon": 38776, - "thon": 8924, - "thong": 37058, - "thood": 15623, - "thor": 4130, - "thor": 13691, - "thora": 46866, - "thorn": 12957, - "thorn": 18466, - "thorne": 18025, - "thorns": 33650, - "thornton": 23592, - "thorough": 15294, - "thorough": 34788, - "thoroughbred": 43248, - "thoroughly": 19750, - "thorpe": 18099, - "thos": 41965, - "those": 1753, - "thot": 33736, - "thou": 1513, - "thou": 17781, - "though": 2846, - "thought": 23948, - "thought": 2449, - "thoughtful": 19592, - "thoughts": 3618, - "thour": 27125, - "thousand": 9344, - "thousands": 7089, - "thouse": 40318, - "thouse": 7819, - "thoven": 23078, - "thr": 1111, - "thr": 19138, - "thra": 17761, - "thra": 32797, - "thrash": 38262, - "thre": 1607, - "thread": 31108, - "thread": 8815, - "threads": 24957, - "threat": 7527, - "threat": 7212, - "threaten": 26097, - "threatened": 16391, - "threatening": 16400, - "threatens": 20555, - "threats": 12766, - "three": 21615, - "three": 2097, - "thren": 41776, - "thresh": 29779, - "threshold": 33791, - "threw": 12746, - "thri": 8713, - "thrift": 27779, - "thrill": 21023, - "thrilled": 7879, - "thriller": 9653, - "thrilling": 20101, - "thrills": 39829, - "thrive": 17669, - "thriving": 22677, - "thro": 2101, - "thro": 28624, - "throat": 16371, - "thrombo": 47585, - "throne": 15999, - "thrones": 8072, - "throp": 34939, - "throttle": 37139, - "through": 6091, - "through": 1417, - "throughout": 6721, - "throughs": 48278, - "throw": 3315, - "throw": 6293, - "throwback": 6001, - "throwback": 5058, - "throwbackthursday": 6326, - "thrower": 40199, - "throwing": 9734, - "thrown": 15079, - "throws": 14723, - "thru": 23856, - "thru": 6162, - "thrush": 46133, - "thrust": 40202, - "ths": 2079, - "tht": 23554, - "thu": 3837, - "thu": 14153, - "thub": 25660, - "thug": 37212, - "thug": 18137, - "thugs": 27686, - "thul": 28368, - "thulhu": 37560, - "thum": 14679, - "thumb": 19514, - "thumb": 18674, - "thumbnail": 32365, - "thumbs": 17599, - "thun": 32267, - "thunder": 6161, - "thunder": 8951, - "thunderbird": 45131, - "thunderbirds": 44286, - "thunderbolt": 43596, - "thunderstorm": 12005, - "thunderstorms": 19525, - "thunt": 46763, - "thur": 1837, - "thur": 21704, - "thurman": 41291, - "thurs": 9908, - "thursday": 11218, - "thursday": 2221, - "thursdaymotivation": 39375, - "thursdays": 21444, - "thursdaythoughts": 14866, - "thurst": 33970, - "thus": 12457, - "thusi": 9488, - "thwaite": 48469, - "thweeksary": 30871, - "thx": 5913, - "thy": 7804, - "thy": 3362, - "thyme": 29805, - "thyro": 25174, - "thyroid": 32558, - "ti": 555, - "ti": 2605, - "tia": 6709, - "tial": 2826, - "tially": 14503, - "tian": 23011, - "tian": 8125, - "tians": 35182, - "tiara": 38322, - "tib": 47868, - "tibet": 19927, - "tibet": 22234, - "tibetan": 24057, - "tible": 11453, - "tic": 890, - "tic": 1550, - "tica": 9669, - "tical": 34191, - "tical": 4342, - "tically": 13375, - "ticals": 30861, - "tice": 3122, - "tich": 48769, - "tician": 43358, - "ticism": 26491, - "tick": 24640, - "tick": 15617, - "ticket": 25740, - "ticket": 4500, - "ticketing": 44432, - "tickets": 2015, - "ticking": 35842, - "tickle": 42999, - "ticks": 40269, - "tico": 17670, - "ticon": 45996, - "tics": 2419, - "ticul": 15538, - "ticus": 44277, - "tid": 26002, - "tid": 23727, - "tidal": 21949, - "tide": 15698, - "tide": 9105, - "tides": 25524, - "tidy": 23858, - "tie": 14072, - "tie": 3422, - "tied": 9889, - "tiem": 34762, - "tien": 47538, - "tiene": 43438, - "tier": 14390, - "tier": 6598, - "tierney": 45693, - "tiers": 24604, - "ties": 25556, - "ties": 2499, - "tiest": 18300, - "tiesto": 46367, - "tif": 23216, - "tiff": 11112, - "tiff": 20699, - "tiffany": 30467, - "tiffany": 14446, - "tification": 43923, - "tified": 40854, - "tiful": 29123, - "tify": 6677, - "tig": 31999, - "tiger": 11954, - "tiger": 6531, - "tigers": 6934, - "tigh": 31365, - "tight": 25763, - "tight": 9123, - "tighten": 46653, - "tighter": 48193, - "tightly": 37568, - "tights": 29581, - "tijuana": 45273, - "tik": 24986, - "tik": 32403, - "tiki": 30107, - "til": 6124, - "til": 1763, - "tile": 26217, - "tile": 8227, - "tiles": 10607, - "tility": 38180, - "till": 17462, - "till": 4267, - "tilla": 26063, - "tillerson": 47738, - "tilly": 41199, - "tilt": 23601, - "tim": 1292, - "tim": 3863, - "timate": 4754, - "timb": 26627, - "timber": 14441, - "timber": 16246, - "timberlake": 28274, - "timbers": 39911, - "timberwolves": 41190, - "time": 3764, - "time": 788, - "timed": 32727, - "timehop": 19944, - "timel": 23549, - "timelapse": 48154, - "timeless": 15558, - "timeline": 11492, - "timely": 19250, - "timeout": 41536, - "timer": 19725, - "timers": 44574, - "times": 26445, - "times": 1661, - "timesnow": 45487, - "timesof": 32522, - "timesofindia": 44182, - "timetable": 31971, - "timeto": 29187, - "timing": 13624, - "timm": 22444, - "timmy": 33252, - "timo": 13390, - "timo": 33777, - "timothy": 42087, - "timothy": 18560, - "timp": 42166, - "tin": 1310, - "tin": 5420, - "tina": 9257, - "tinder": 24287, - "tine": 22341, - "ting": 7451, - "ting": 694, - "tinged": 44829, - "tings": 35332, - "tini": 26839, - "tink": 39278, - "tinker": 45272, - "tinker": 40910, - "tino": 20538, - "tins": 37359, - "tint": 40497, - "tinted": 42618, - "tiny": 21716, - "tiny": 5591, - "tio": 27562, - "tion": 2274, - "tion": 740, - "tional": 22460, - "tional": 2986, - "tionality": 24514, - "tionally": 12409, - "tionary": 8381, - "tione": 44318, - "tioned": 9083, - "tioning": 15528, - "tionist": 25732, - "tions": 1371, - "tious": 14255, - "tip": 15383, - "tip": 4623, - "tipoff": 44521, - "tipp": 32294, - "tipped": 31878, - "tipper": 38095, - "tipperary": 45612, - "tipping": 27827, - "tips": 3173, - "tipton": 48809, - "tiptuesday": 42112, - "tique": 37772, - "tir": 25467, - "tir": 38462, - "tire": 29128, - "tire": 9362, - "tired": 6533, - "tireless": 39835, - "tirelessly": 41548, - "tires": 15533, - "tiring": 42630, - "tiru": 36033, - "tis": 7839, - "tis": 7394, - "tise": 13745, - "tisgarh": 40538, - "tish": 45148, - "tish": 28784, - "tism": 27113, - "tiss": 28155, - "tissue": 15368, - "tissues": 32172, - "tist": 7902, - "tista": 25580, - "tists": 25944, - "tit": 1991, - "tit": 13202, - "tita": 40936, - "titan": 13496, - "titan": 15516, - "titanic": 20729, - "titanium": 24409, - "titans": 13066, - "titi": 17434, - "titi": 48504, - "title": 28033, - "title": 3644, - "titled": 9939, - "titles": 9780, - "tito": 26838, - "titus": 36102, - "tium": 21975, - "tiv": 1835, - "tiva": 41886, - "tive": 14640, - "tive": 1420, - "tively": 9883, - "tiveness": 20955, - "tives": 7570, - "tivity": 9859, - "tivo": 32162, - "tix": 5835, - "tiz": 19376, - "tj": 18890, - "tj": 18988, - "tk": 22344, - "tk": 20676, - "tko": 37347, - "tks": 38739, - "tl": 14325, - "tl": 8190, - "tland": 30697, - "tlap": 41976, - "tlc": 22047, - "tle": 39141, - "tle": 5825, - "tles": 39363, - "tless": 17427, - "tlot": 41080, - "tls": 47367, - "tly": 37483, - "tly": 1646, - "tm": 9430, - "tm": 7789, - "tman": 20796, - "tmc": 35263, - "tment": 26485, - "tml": 39445, - "tmltalk": 42260, - "tmnt": 32444, - "tmobile": 34901, - "tmr": 35906, - "tmrw": 16496, - "tms": 44496, - "tmund": 23801, - "tmw": 45827, - "tmz": 37248, - "tn": 3827, - "tn": 7248, - "tna": 21150, - "tnam": 8079, - "tner": 34922, - "tness": 35212, - "tney": 9523, - "tng": 35898, - "tnt": 20659, - "tnx": 38220, - "to": 580, - "to": 531, - "toa": 17916, - "toad": 26096, - "toast": 24654, - "toast": 10920, - "toasted": 23533, - "toaster": 39061, - "toasty": 44726, - "tob": 24260, - "tobac": 12611, - "tobacco": 13905, - "tobago": 39482, - "tobe": 17534, - "tobe": 28740, - "tober": 18162, - "tober": 2925, - "toberfest": 26249, - "tobi": 40335, - "tobi": 48374, - "tobias": 32464, - "tobin": 42466, - "toby": 29659, - "toby": 18333, - "toc": 41907, - "toc": 30643, - "tock": 25274, - "tod": 38239, - "tod": 33568, - "toda": 47141, - "todas": 36150, - "today": 11800, - "today": 721, - "todayin": 32957, - "todays": 13513, - "todayshow": 29739, - "todd": 10398, - "todd": 9951, - "toddler": 17772, - "toddlers": 36719, - "toddy": 38926, - "todo": 48857, - "todo": 23087, - "todos": 33355, - "toe": 47756, - "toe": 11344, - "toes": 16511, - "tof": 6659, - "toff": 27319, - "toffee": 34880, - "tofficial": 47953, - "tofthe": 23678, - "toftheday": 20566, - "tofu": 24692, - "tog": 45715, - "toge": 1903, - "together": 17858, - "together": 1952, - "togo": 26729, - "tography": 33968, - "toh": 26851, - "toi": 7472, - "toi": 26941, - "toid": 49124, - "toile": 43148, - "toilet": 11071, - "toilets": 24027, - "toire": 39534, - "tok": 16690, - "tok": 27010, - "token": 32634, - "token": 17134, - "tokens": 23562, - "tokyo": 35038, - "tokyo": 6667, - "tol": 4678, - "tol": 32962, - "told": 3527, - "tole": 15677, - "toledo": 19812, - "toler": 12150, - "tolerance": 20377, - "tolerant": 38536, - "tolerate": 35556, - "tolkien": 32989, - "toll": 44090, - "toll": 14155, - "tollywood": 42016, - "tology": 34799, - "tom": 999, - "tom": 2435, - "toma": 42360, - "toma": 44710, - "tomas": 35944, - "tomas": 27178, - "tomat": 12041, - "tomato": 9867, - "tomatoes": 13004, - "tomb": 37187, - "tomb": 15582, - "tombs": 48613, - "tombstone": 45729, - "tome": 24137, - "tome": 24283, - "tomi": 46290, - "tomlin": 46649, - "tomlinson": 17484, - "tommorow": 42871, - "tommy": 16573, - "tommy": 8876, - "tomo": 31223, - "tomo": 34434, - "tomor": 1277, - "tomorrow": 19728, - "tomorrow": 1293, - "tomorrowland": 34951, - "tomorrows": 32258, - "tomorrowspaper": 35005, - "tomorrowspaperstoday": 35190, - "tomp": 43544, - "tompkins": 49068, - "toms": 10545, - "tomy": 18730, - "ton": 838, - "ton": 917, - "tona": 13459, - "tone": 32366, - "tone": 8408, - "toned": 29426, - "toner": 40614, - "tones": 14744, - "tong": 21510, - "tonga": 37882, - "tongue": 44820, - "tongue": 13626, - "tongues": 39837, - "toni": 17766, - "toni": 17171, - "tonic": 17808, - "tonics": 34647, - "tonight": 1009, - "tonights": 23312, - "tonite": 13449, - "tonka": 42781, - "tonline": 45867, - "tonne": 42450, - "tonnes": 24813, - "tons": 7555, - "tony": 9150, - "tony": 4767, - "tonyawards": 46068, - "too": 1843, - "too": 1256, - "took": 2280, - "tool": 13718, - "tool": 5999, - "toolbox": 46599, - "toolkit": 29849, - "tools": 5771, - "toom": 27550, - "toon": 24664, - "toon": 19701, - "toonami": 48336, - "toons": 35345, - "toor": 42590, - "tooth": 15316, - "tooth": 12030, - "toothbrush": 36841, - "toothpaste": 37322, - "tooting": 42969, - "top": 5534, - "top": 1253, - "topaz": 46125, - "tope": 32149, - "tope": 42239, - "topeka": 46884, - "topia": 29618, - "topic": 8720, - "topical": 37464, - "topics": 11916, - "topless": 37415, - "topo": 23008, - "topoli": 30152, - "topp": 19529, - "topped": 12588, - "topper": 31780, - "toppers": 41651, - "topping": 21071, - "toppings": 47554, - "topps": 20201, - "tops": 8154, - "topshop": 40953, - "topus": 21495, - "tor": 937, - "tor": 1208, - "tora": 45147, - "torah": 37945, - "toral": 45282, - "torch": 31921, - "torch": 15820, - "tore": 38066, - "tore": 19385, - "tored": 38046, - "torg": 33214, - "tori": 17689, - "tori": 17539, - "toria": 23732, - "torial": 28029, - "torian": 48399, - "tories": 14193, - "torino": 29178, - "torio": 34235, - "torn": 8572, - "torn": 18023, - "tornad": 24676, - "tornado": 9062, - "tornadoes": 28254, - "toro": 17892, - "toron": 37407, - "toronto": 16866, - "toronto": 4514, - "torpe": 34093, - "torpedo": 46582, - "torquay": 45738, - "torque": 31940, - "torre": 39563, - "torre": 38009, - "torrent": 42317, - "torrential": 41158, - "torres": 16049, - "tors": 2546, - "tortilla": 32683, - "torto": 24170, - "tortoise": 30178, - "torture": 16013, - "tortured": 29900, - "tory": 29390, - "tory": 4214, - "tos": 6094, - "tosc": 37719, - "tose": 38154, - "tosh": 17109, - "toshi": 31744, - "toss": 19656, - "tossed": 31296, - "tot": 4618, - "tot": 23659, - "total": 13507, - "total": 4445, - "totally": 5440, - "totals": 25772, - "tote": 48145, - "tote": 19031, - "totem": 45376, - "totes": 37199, - "tothe": 12222, - "toto": 39823, - "tots": 24978, - "totten": 14360, - "tottenham": 14889, - "tou": 1879, - "tou": 29261, - "touch": 9480, - "touch": 4526, - "touchdown": 18664, - "touchdowns": 37905, - "touched": 13190, - "touches": 14832, - "touching": 14088, - "touchscreen": 39095, - "tough": 12063, - "tough": 5499, - "tougher": 33722, - "toughest": 23773, - "toughness": 45522, - "toulou": 27145, - "toulouse": 30267, - "tour": 2710, - "tour": 1760, - "tourde": 39247, - "toured": 27654, - "touri": 4224, - "touring": 11853, - "tourism": 23661, - "tourism": 6556, - "tourist": 12123, - "tourists": 15546, - "tournament": 4097, - "tournaments": 23058, - "tourney": 12603, - "tours": 8948, - "tous": 37424, - "tout": 22300, - "touts": 41274, - "tov": 28970, - "tow": 11557, - "tow": 18653, - "toward": 8508, - "towards": 4447, - "towed": 45419, - "towel": 15953, - "towels": 26578, - "tower": 26669, - "tower": 4730, - "towering": 39444, - "towers": 12701, - "towie": 44613, - "towin": 45819, - "towing": 36963, - "town": 4068, - "town": 1605, - "townfc": 33981, - "townhall": 33408, - "townhouse": 40178, - "towns": 14173, - "townsend": 26826, - "township": 14622, - "townsville": 47330, - "towork": 48233, - "tox": 7742, - "tox": 16145, - "toxic": 27436, - "toxic": 12348, - "toxicity": 41234, - "toxin": 48899, - "toxins": 36618, - "toy": 14387, - "toy": 5988, - "toya": 37602, - "toyo": 7644, - "toyota": 8908, - "toys": 39508, - "toys": 7162, - "tp": 23760, - "tp": 15188, - "tpp": 29411, - "tps": 35246, - "tq": 43066, - "tr": 635, - "tr": 6337, - "tra": 752, - "tra": 2483, - "trac": 2266, - "trace": 48611, - "trace": 14767, - "traced": 47956, - "traces": 30913, - "tracey": 25558, - "tracing": 27897, - "track": 10887, - "track": 2700, - "tracked": 27049, - "tracker": 18123, - "tracking": 10428, - "tracklist": 39777, - "tracks": 7579, - "tract": 4690, - "traction": 10644, - "tractor": 14607, - "tractors": 37854, - "tracy": 32984, - "tracy": 15508, - "trad": 48716, - "trad": 38037, - "trade": 10457, - "trade": 3629, - "traded": 18860, - "trademark": 25011, - "trader": 17700, - "traders": 19112, - "trades": 18519, - "trading": 40083, - "trading": 6520, - "tradio": 20689, - "tradition": 20838, - "tradition": 8784, - "traditional": 41113, - "traditional": 5604, - "traditionally": 35532, - "traditions": 18016, - "traf": 3227, - "trafal": 32461, - "trafalgar": 36969, - "traff": 31571, - "traffic": 12080, - "traffic": 3399, - "trafficking": 15983, - "trafford": 22912, - "trage": 12430, - "tragedy": 14082, - "tragic": 14828, - "tragically": 39599, - "trail": 11523, - "trail": 4921, - "trailblazer": 41015, - "trailblazers": 35954, - "trailer": 4700, - "trailers": 24862, - "trailing": 37427, - "trails": 10633, - "train": 9122, - "train": 3231, - "trained": 10874, - "trainee": 25795, - "trainees": 30382, - "trainer": 9767, - "trainers": 18871, - "training": 34508, - "training": 2199, - "trains": 9541, - "trait": 35160, - "traitor": 31760, - "traitors": 42633, - "traits": 25748, - "trajec": 42042, - "trak": 24065, - "tral": 14609, - "tram": 9800, - "tram": 17500, - "tramp": 46289, - "trampol": 32905, - "trampoline": 42800, - "tramrahim": 35220, - "tran": 1357, - "tran": 22031, - "trance": 30584, - "trance": 18671, - "trancefamily": 39630, - "trane": 35779, - "tranqu": 18912, - "tranquil": 35764, - "tranquility": 36688, - "trans": 1826, - "trans": 8126, - "transaction": 24881, - "transactions": 21653, - "transat": 37872, - "transatlantic": 40703, - "transc": 21073, - "transcend": 47087, - "transcript": 39008, - "transcription": 48765, - "transfer": 22659, - "transfer": 7134, - "transferred": 29700, - "transferring": 40924, - "transfers": 21621, - "transform": 8142, - "transform": 12288, - "transformation": 34204, - "transformation": 7832, - "transformational": 47135, - "transformationtuesday": 36511, - "transformative": 38106, - "transformed": 17453, - "transformer": 38235, - "transformers": 17843, - "transforming": 44470, - "transforming": 19251, - "transforms": 30312, - "transgender": 17732, - "transi": 32236, - "transit": 10174, - "transiti": 22939, - "transition": 11391, - "transitional": 41519, - "transitioning": 43586, - "transitions": 39374, - "transl": 12243, - "translate": 22655, - "translated": 20752, - "translates": 36334, - "translating": 42156, - "translation": 12153, - "translations": 41367, - "translator": 36230, - "translucent": 49052, - "transm": 18861, - "transmission": 16103, - "transmitted": 48605, - "transmitter": 40457, - "transp": 11726, - "transpa": 18524, - "transparen": 16108, - "transparency": 16828, - "transparent": 19017, - "transpl": 16038, - "transplant": 41871, - "transplant": 18771, - "transplantation": 45207, - "transpor": 19406, - "transport": 10231, - "transport": 7362, - "transportation": 10911, - "transported": 29089, - "transporter": 43568, - "transporting": 42259, - "trap": 36224, - "trap": 9677, - "trape": 42435, - "trapped": 15592, - "traps": 28517, - "tras": 30638, - "trash": 39215, - "trash": 9798, - "traum": 22263, - "trauma": 13846, - "traumati": 46613, - "traumatic": 29958, - "trav": 7586, - "trav": 46955, - "trave": 35357, - "travel": 2824, - "travel": 1949, - "travelblog": 35957, - "travelblogger": 25494, - "travelchat": 46455, - "traveled": 20384, - "traveler": 17794, - "travelers": 20644, - "travelgram": 40069, - "traveling": 9365, - "travelled": 23428, - "traveller": 22546, - "travellers": 29583, - "travelling": 11190, - "travelphotography": 22808, - "travelpics": 32293, - "travels": 11472, - "traveltips": 36260, - "traveltuesday": 16713, - "traverse": 35058, - "travi": 46971, - "travis": 27441, - "travis": 12287, - "traw": 42288, - "trax": 34421, - "tray": 38470, - "tray": 14621, - "trays": 39798, - "trc": 41803, - "tre": 975, - "tre": 6033, - "treach": 46005, - "tread": 26182, - "tread": 35658, - "treadmill": 37780, - "treas": 8591, - "treason": 28103, - "treasure": 9922, - "treasured": 48068, - "treasurer": 26985, - "treasures": 16500, - "treasury": 20956, - "treat": 3968, - "treat": 3901, - "treated": 9772, - "treating": 13842, - "treatment": 4869, - "treatments": 15839, - "treats": 8878, - "treaty": 19967, - "treble": 33194, - "trecht": 33812, - "tree": 13354, - "tree": 2677, - "treehouse": 42387, - "trees": 4682, - "trek": 13236, - "trek": 8136, - "trekking": 25293, - "trell": 35159, - "tremb": 44043, - "tremend": 14659, - "tremendous": 15988, - "tren": 2579, - "trench": 23846, - "trenches": 38723, - "trend": 19986, - "trend": 6643, - "trending": 6087, - "trends": 7015, - "trendsetter": 46666, - "trendy": 23072, - "trent": 45885, - "trent": 15548, - "trenton": 37470, - "tres": 23569, - "tress": 4733, - "tresses": 24273, - "trevor": 23437, - "trevor": 13219, - "trex": 42114, - "trey": 36670, - "trey": 16939, - "tri": 924, - "tri": 9618, - "triad": 45602, - "trial": 5991, - "trials": 10992, - "triangle": 14615, - "triathlon": 18080, - "trib": 45151, - "tribal": 16629, - "tribe": 19943, - "tribe": 11365, - "tribeca": 35184, - "tribes": 26546, - "tribu": 3028, - "tribun": 14311, - "tribunal": 32911, - "tribune": 18556, - "tribute": 5493, - "tributes": 15537, - "tric": 9511, - "tric": 4081, - "trich": 39519, - "trick": 17177, - "trick": 8172, - "tricks": 13177, - "tricky": 22319, - "trics": 31437, - "trident": 35491, - "tridge": 18722, - "tried": 4554, - "tries": 4315, - "trife": 48962, - "trigge": 30509, - "trigger": 16158, - "triggered": 30924, - "triggers": 37319, - "tright": 29915, - "tril": 40626, - "trill": 39297, - "trilli": 39350, - "trillion": 20160, - "trilo": 15183, - "trilogy": 16862, - "trim": 14182, - "trimmed": 40657, - "trin": 6628, - "trinidad": 26244, - "trinity": 30744, - "trinity": 12267, - "trio": 10263, - "trip": 23421, - "trip": 2529, - "tripad": 37189, - "tripadvisor": 38708, - "triple": 16519, - "triple": 7673, - "triplets": 48601, - "tripod": 36141, - "tripoli": 40095, - "trippin": 43073, - "tripping": 35229, - "trippy": 35137, - "trips": 12292, - "tris": 29690, - "trish": 40511, - "trish": 37179, - "trisha": 39152, - "tristan": 25497, - "trit": 37087, - "triton": 45437, - "triu": 14782, - "trium": 21065, - "triumph": 26507, - "triumph": 15307, - "triumphant": 41918, - "trivi": 21228, - "trivia": 10642, - "triviatuesday": 45499, - "trix": 41017, - "tro": 1046, - "tro": 3332, - "trock": 44368, - "trojan": 30653, - "trojans": 25310, - "trol": 10306, - "troll": 39737, - "troll": 17103, - "trolley": 25124, - "trolling": 28552, - "trolls": 20890, - "tromb": 32390, - "trombone": 44423, - "tron": 19057, - "tron": 10684, - "tronic": 34258, - "tronics": 34397, - "troom": 23691, - "troop": 12492, - "troop": 24054, - "trooper": 18327, - "troopers": 23576, - "troops": 10109, - "trop": 31585, - "trope": 41150, - "trophies": 20998, - "trophy": 42676, - "trophy": 6502, - "tropic": 21794, - "tropic": 36736, - "tropical": 41699, - "tropical": 8686, - "tropics": 36940, - "tros": 40456, - "trose": 36022, - "trot": 30453, - "trotter": 38287, - "trou": 5181, - "troubad": 49037, - "trouble": 25669, - "trouble": 7848, - "troubled": 25568, - "troubles": 27254, - "trough": 39761, - "troupe": 34803, - "trous": 19727, - "trousers": 23172, - "trout": 14853, - "trove": 45350, - "trow": 46914, - "troy": 26283, - "troy": 12819, - "trs": 24770, - "tru": 931, - "tru": 25326, - "truck": 14781, - "truck": 4629, - "trucker": 45918, - "truckers": 43404, - "trucking": 26208, - "trucks": 9569, - "trude": 39017, - "trudeau": 15752, - "true": 13096, - "true": 2328, - "truec": 37583, - "truelove": 45711, - "truffle": 23064, - "truffles": 37057, - "truly": 4545, - "trum": 11766, - "trum": 11399, - "truman": 29414, - "trump": 9124, - "trump": 1797, - "trumpet": 23681, - "trumpp": 45550, - "trumprussia": 39135, - "trumps": 29793, - "trumptrain": 43595, - "trun": 16163, - "trun": 46661, - "trunk": 18347, - "trunks": 38531, - "truro": 43507, - "truss": 46080, - "trust": 17691, - "trust": 3876, - "truste": 17356, - "trusted": 16538, - "trustee": 30803, - "trustees": 28853, - "trusting": 33221, - "trusts": 27507, - "trustworthy": 46840, - "trusty": 37955, - "truth": 21335, - "truth": 4319, - "truths": 27179, - "trx": 31620, - "try": 4487, - "try": 1209, - "tryin": 31085, - "trying": 2551, - "tryna": 15702, - "tryout": 43832, - "tryouts": 28053, - "ts": 2290, - "ts": 590, - "tsa": 25977, - "tsal": 20438, - "tsb": 45015, - "tsc": 37437, - "tsch": 38778, - "tsd": 20611, - "tse": 49144, - "tsfor": 42654, - "tsford": 32823, - "tsh": 42872, - "tshirt": 14907, - "tshirts": 29377, - "tsi": 40048, - "tsi": 37867, - "tsk": 43600, - "tsla": 35681, - "tsm": 43452, - "tsman": 20046, - "tsn": 44921, - "tsn": 26896, - "tson": 42353, - "tson": 47140, - "tsp": 34230, - "tsu": 13950, - "tsu": 20175, - "tsun": 19155, - "tsunami": 24286, - "tsville": 29080, - "tt": 971, - "tt": 1402, - "tta": 2646, - "ttc": 27668, - "tte": 23105, - "tte": 3070, - "tted": 15163, - "tten": 11351, - "tten": 17479, - "tter": 18691, - "tter": 5165, - "tters": 6318, - "ttes": 9293, - "tti": 5237, - "ttin": 36589, - "tting": 1188, - "ttino": 47389, - "ttip": 46993, - "ttle": 9253, - "ttm": 46838, - "tto": 8759, - "tto": 8105, - "tton": 10562, - "ttot": 12480, - "ttp": 30828, - "ttr": 47589, - "tts": 11570, - "ttt": 17256, - "tttt": 33119, - "ttu": 44006, - "ttv": 24281, - "tty": 11457, - "tty": 1856, - "tu": 764, - "tu": 5760, - "tua": 41344, - "tual": 4799, - "tuan": 37297, - "tub": 34907, - "tub": 15450, - "tube": 38229, - "tube": 3308, - "tuber": 30371, - "tuberculo": 42606, - "tuberculosis": 43129, - "tubes": 22870, - "tubing": 40794, - "tubs": 41705, - "tubular": 48786, - "tuc": 14456, - "tuc": 43871, - "tuck": 22398, - "tucked": 26923, - "tucker": 39703, - "tucker": 15726, - "tucket": 32677, - "tucson": 17250, - "tudor": 24547, - "tue": 17515, - "tues": 2283, - "tues": 12113, - "tuesday": 10209, - "tuesday": 2519, - "tuesdaymotivation": 25432, - "tuesdays": 23195, - "tuesdaythoughts": 17988, - "tuf": 44510, - "tuff": 38868, - "tug": 47032, - "tug": 27902, - "tuition": 21129, - "tuk": 39271, - "tuk": 14993, - "tul": 9069, - "tul": 40837, - "tula": 36332, - "tulane": 44893, - "tulip": 28389, - "tulips": 30886, - "tulsa": 18850, - "tum": 12932, - "tum": 8843, - "tumb": 8831, - "tumble": 38284, - "tumbler": 48790, - "tumbling": 46226, - "tumblr": 11841, - "tummy": 26053, - "tumor": 22616, - "tumors": 39894, - "tumour": 45129, - "tun": 1415, - "tun": 21349, - "tuna": 15037, - "tundra": 39899, - "tune": 11427, - "tune": 3300, - "tuned": 5898, - "tunein": 16809, - "tuner": 42905, - "tunes": 31688, - "tunes": 10810, - "tunesapp": 32550, - "tung": 47940, - "tung": 31092, - "tuni": 16270, - "tunic": 43495, - "tuning": 19585, - "tunisia": 23346, - "tunnel": 11096, - "tunnels": 29814, - "tuous": 28738, - "tup": 37956, - "tup": 4507, - "tupac": 31506, - "tups": 44855, - "tur": 985, - "tur": 17182, - "tura": 16127, - "tural": 45143, - "tural": 4261, - "turb": 18973, - "turban": 48515, - "turbine": 26880, - "turbines": 38863, - "turbo": 23578, - "turbo": 13668, - "turbul": 31100, - "turbulent": 47871, - "ture": 4321, - "ture": 941, - "tured": 3987, - "turer": 11993, - "turers": 16956, - "tures": 2400, - "turf": 36762, - "turf": 12510, - "turi": 11896, - "turin": 36251, - "turing": 5812, - "turismo": 30202, - "turk": 8254, - "turk": 32507, - "turkey": 35977, - "turkey": 4790, - "turkeys": 37991, - "turkish": 48199, - "turkish": 9278, - "turks": 34344, - "turmeric": 34044, - "turmoil": 37751, - "turn": 5522, - "turn": 2105, - "turnaround": 32719, - "turnbull": 27863, - "turned": 3771, - "turner": 42867, - "turner": 8777, - "turning": 4976, - "turno": 21377, - "turnout": 11654, - "turnover": 30794, - "turnpike": 38301, - "turns": 3185, - "turnt": 28887, - "turntable": 37953, - "turnup": 30591, - "turo": 29224, - "turquo": 19390, - "turquoise": 19899, - "turt": 13716, - "turtle": 35943, - "turtle": 10912, - "turtles": 17862, - "tus": 24828, - "tus": 7079, - "tusc": 17909, - "tuscal": 42638, - "tuscaloosa": 44375, - "tuscan": 42865, - "tuscany": 20885, - "tuss": 31741, - "tut": 35121, - "tutor": 10054, - "tutor": 27858, - "tutorial": 12857, - "tutorials": 30973, - "tutoring": 37532, - "tutti": 46880, - "tutu": 35845, - "tux": 28720, - "tux": 49186, - "tuxedo": 40173, - "tv": 3197, - "tv": 1583, - "tvc": 49190, - "tvd": 25889, - "tvmiaw": 38554, - "tvn": 44232, - "tvs": 27114, - "tvtime": 19947, - "tvxq": 43968, - "tw": 966, - "tw": 12842, - "twa": 46954, - "twain": 30689, - "twal": 48126, - "tware": 5707, - "twc": 41217, - "twd": 29440, - "twd": 19343, - "twdfamily": 38218, - "twe": 18365, - "tweak": 48870, - "tweaks": 42661, - "twee": 1330, - "tweed": 26904, - "tweeps": 14928, - "tweet": 11826, - "tweet": 1842, - "tweeta": 32024, - "tweetapicture": 40596, - "tweeted": 7841, - "tweeter": 32876, - "tweeters": 31713, - "tweeting": 8901, - "tweets": 3560, - "tweetyour": 45033, - "twel": 14476, - "twelf": 39443, - "twelfth": 44072, - "twell": 38722, - "twell": 30162, - "twelve": 19694, - "twent": 27027, - "twenti": 35167, - "twenty": 13016, - "twentyon": 39609, - "twentyonepilots": 40007, - "twer": 13923, - "twerk": 28506, - "twi": 5537, - "twice": 6970, - "twick": 34326, - "twickenham": 39619, - "twil": 12804, - "twili": 35754, - "twilight": 46366, - "twilight": 14512, - "twill": 43703, - "twin": 9342, - "twin": 6769, - "twine": 42775, - "twinkle": 36545, - "twinning": 30156, - "twinpeaks": 32042, - "twins": 8040, - "twist": 10589, - "twisted": 18233, - "twister": 45933, - "twists": 34149, - "twit": 1643, - "twit": 18704, - "twitart": 27709, - "twitch": 13251, - "twitch": 9153, - "twitter": 7546, - "twitter": 1989, - "twitterkurds": 32722, - "twitterstorians": 35389, - "two": 17211, - "two": 1237, - "twol": 31964, - "twood": 40404, - "twood": 13245, - "twp": 33283, - "twright": 46778, - "twt": 6825, - "twx": 26830, - "twy": 45861, - "tx": 6636, - "tx": 5200, - "txhsfb": 34757, - "txlege": 26995, - "txst": 40761, - "txt": 24595, - "txwx": 22995, - "ty": 1260, - "ty": 744, - "tya": 41273, - "tycoon": 36803, - "tye": 43097, - "tyfree": 41215, - "tyga": 41952, - "tying": 22559, - "tyl": 47537, - "tyler": 14787, - "tyler": 7058, - "tym": 45772, - "tyne": 27000, - "tyne": 29729, - "tyour": 16823, - "type": 15673, - "type": 3877, - "typed": 40753, - "typeface": 44969, - "types": 7543, - "typewriter": 42180, - "typho": 17486, - "typhoon": 21110, - "typic": 21648, - "typical": 9854, - "typically": 23175, - "typing": 20102, - "typo": 18831, - "typo": 29076, - "typography": 24332, - "tyr": 15590, - "tyran": 46921, - "tyranny": 35402, - "tyre": 38330, - "tyre": 16864, - "tyres": 21376, - "tyrone": 30226, - "tyson": 16616, - "tz": 7710, - "tz": 4983, - "tzer": 45267, - "tzky": 47127, - "tzman": 46032, - "tzu": 34354, - "té": 27208, - "té": 39694, - "u": 84, - "u": 340, - "ua": 34075, - "ua": 8441, - "uaap": 46753, - "uaap": 43774, - "uab": 35587, - "uae": 9752, - "ual": 1921, - "ually": 10767, - "uan": 33062, - "uas": 38339, - "uav": 30303, - "ub": 18430, - "ub": 13494, - "uba": 29768, - "ubc": 42479, - "ubc": 29455, - "ube": 30892, - "uber": 25896, - "uber": 10668, - "ubi": 26758, - "ubio": 32867, - "ubiquit": 48129, - "ubis": 28248, - "ubisoft": 32051, - "ubs": 43851, - "ubun": 28184, - "ubuntu": 30791, - "uc": 4903, - "uc": 12438, - "uca": 30942, - "ucc": 44844, - "ucc": 29138, - "ucci": 30746, - "uccino": 30409, - "ucd": 44746, - "ucd": 43514, - "ucf": 24414, - "uch": 19465, - "uch": 22394, - "uchi": 37473, - "uci": 46354, - "uci": 28925, - "uck": 34189, - "ucl": 12013, - "ucl": 13647, - "ucla": 37667, - "ucla": 17259, - "ucn": 49036, - "uconn": 30549, - "ud": 6560, - "ud": 5765, - "uda": 22800, - "udaipur": 49385, - "uddin": 43035, - "ude": 37016, - "ude": 35194, - "ue": 16696, - "ue": 1190, - "uefa": 19189, - "uel": 24231, - "uer": 45951, - "ues": 2526, - "uf": 17777, - "uf": 19230, - "ufc": 20396, - "ufc": 6490, - "uff": 45701, - "ufo": 19443, - "ufos": 48234, - "ug": 3754, - "ug": 16061, - "uga": 16056, - "ugand": 25965, - "uganda": 11125, - "ugandan": 44206, - "ugby": 30658, - "ugh": 39736, - "ugh": 12755, - "ugliest": 43543, - "ugly": 36070, - "ugly": 8159, - "ugu": 18144, - "uh": 17661, - "uh": 9219, - "uhc": 44974, - "uhh": 35938, - "uhhh": 45270, - "uhm": 35614, - "uhur": 29434, - "uhuru": 35690, - "ui": 17326, - "ui": 11458, - "uil": 29395, - "uit": 30696, - "uit": 47584, - "uj": 33266, - "uji": 39672, - "uk": 2294, - "uk": 1432, - "uka": 23294, - "uke": 48836, - "uke": 28577, - "uked": 48987, - "uki": 37435, - "uki": 9009, - "ukin": 34996, - "ukip": 20360, - "uklabour": 36902, - "ukmfg": 38764, - "uko": 33562, - "ukone": 24682, - "ukrain": 15468, - "ukraine": 7768, - "ukrainian": 16927, - "ukrunchat": 34481, - "uku": 29541, - "uku": 36082, - "ukulele": 39094, - "ul": 914, - "ul": 6625, - "ula": 34104, - "ula": 9506, - "ular": 4927, - "ulary": 21701, - "ulate": 20467, - "ulation": 32896, - "ule": 35616, - "ules": 26274, - "ulf": 49331, - "uli": 41841, - "uli": 22174, - "ull": 33254, - "ulla": 30577, - "ullah": 45310, - "ullivan": 45252, - "ulls": 37418, - "ulo": 46084, - "ulo": 36738, - "ulous": 42490, - "ulous": 4281, - "ulously": 20167, - "ulster": 29709, - "ulster": 24639, - "ult": 4380, - "ulti": 11925, - "ulties": 21884, - "ultimat": 16522, - "ultimate": 34684, - "ultimate": 5377, - "ultimatefan": 48372, - "ultimatefanlive": 48644, - "ultimately": 23023, - "ultr": 25636, - "ultra": 11398, - "ultra": 8118, - "ultram": 44519, - "ultrasound": 29717, - "ulture": 22272, - "ulty": 8036, - "ulu": 41815, - "ulu": 15659, - "ulum": 17235, - "uly": 33220, - "ulysses": 46114, - "um": 1622, - "um": 1008, - "uma": 29982, - "uma": 9256, - "uman": 27112, - "umar": 25656, - "umass": 39390, - "umatic": 45006, - "umb": 7493, - "umber": 19195, - "umbrel": 34773, - "umbrella": 17143, - "umbrellas": 42782, - "umbria": 39287, - "umc": 39491, - "umd": 42067, - "ume": 38480, - "umen": 42832, - "uments": 25924, - "umer": 23539, - "umes": 21403, - "umi": 48772, - "umi": 15458, - "umich": 41294, - "umin": 31542, - "umm": 26129, - "umm": 21215, - "ummer": 47628, - "ummm": 33665, - "umni": 31739, - "ump": 22224, - "umpire": 36214, - "ums": 8643, - "umu": 39788, - "un": 569, - "un": 2271, - "una": 6385, - "unable": 17793, - "unacceptable": 25234, - "unanim": 20800, - "unanimous": 33520, - "unanimously": 31798, - "unanswered": 43611, - "unarmed": 41541, - "unas": 41366, - "unavailable": 48430, - "unaware": 33347, - "unbeat": 37056, - "unbeatable": 40267, - "unbeaten": 19228, - "unbeliev": 11383, - "unbelievable": 13306, - "unbelievably": 33781, - "unborn": 37257, - "unboxing": 32866, - "unbreakable": 32956, - "unbroken": 49271, - "unc": 24921, - "unc": 15322, - "uncanny": 32556, - "uncertain": 30384, - "uncertainty": 23956, - "unch": 1527, - "unchanged": 34272, - "uncharted": 34560, - "unci": 25521, - "unciation": 34117, - "uncle": 31537, - "uncle": 8002, - "unclear": 32955, - "uncles": 45335, - "uncomfortable": 22470, - "uncommon": 34888, - "uncondition": 46561, - "unconditional": 31112, - "unconscious": 34791, - "unconstitutional": 43585, - "unconventional": 39440, - "uncover": 33031, - "uncovered": 28234, - "uncture": 38736, - "uncut": 41056, - "und": 9762, - "und": 9732, - "unda": 39932, - "undant": 25377, - "unday": 29338, - "unde": 45226, - "undead": 40105, - "undecided": 49368, - "undefeated": 15326, - "undeni": 38424, - "under": 1473, - "under": 1798, - "underage": 45669, - "underattack": 35075, - "undercover": 21595, - "underdog": 44266, - "undere": 21675, - "underestim": 23348, - "underestimate": 31794, - "undergo": 31545, - "undergoing": 26419, - "undergrad": 38331, - "undergraduate": 24320, - "underground": 9396, - "undering": 30826, - "underlying": 31812, - "undermine": 42839, - "underneath": 20857, - "underrated": 19494, - "unders": 20376, - "understand": 47582, - "understand": 4600, - "understanding": 7522, - "understands": 21607, - "understatement": 38296, - "understood": 17303, - "undertaker": 40144, - "undertaking": 49067, - "undertale": 48283, - "underthe": 41161, - "underwater": 14760, - "underway": 6273, - "underwear": 21154, - "underwood": 21474, - "underworld": 34760, - "undi": 23845, - "undisclosed": 39334, - "undo": 35454, - "undocumented": 35414, - "undoub": 38836, - "undoubtedly": 42204, - "undp": 26691, - "une": 4522, - "une": 10966, - "unearth": 32716, - "unearthed": 36632, - "unemp": 15139, - "unemployed": 32721, - "unemployment": 19350, - "unes": 6394, - "unesco": 16216, - "uneven": 43204, - "unex": 9484, - "unexpe": 10802, - "unexpec": 31829, - "unexpected": 12293, - "unexpectedly": 35622, - "unf": 29285, - "unfair": 22193, - "unfinished": 26526, - "unfit": 45367, - "unfold": 38681, - "unfollow": 38797, - "unfor": 14010, - "unforgettable": 16173, - "unfortun": 10194, - "unfortunate": 22361, - "unfortunately": 12863, - "unfpa": 45048, - "ung": 10439, - "ung": 4334, - "unga": 19151, - "ungsoo": 25582, - "unh": 25365, - "unhappy": 26528, - "unhcr": 43451, - "unhealthy": 30994, - "uni": 1107, - "uni": 5926, - "unic": 7648, - "unicef": 38286, - "unicef": 19259, - "unicorn": 15660, - "unicorns": 35183, - "unidenti": 33707, - "unidentified": 35563, - "unification": 45036, - "unified": 20876, - "uniform": 11075, - "uniforms": 17838, - "unil": 32388, - "unilever": 48654, - "uniof": 21218, - "union": 14210, - "union": 3503, - "unions": 18353, - "unis": 30482, - "unis": 39266, - "unisex": 27609, - "unison": 46694, - "unit": 28522, - "unit": 5695, - "unite": 15078, - "unite": 11305, - "uniteblue": 20935, - "united": 10898, - "united": 2690, - "unitedstates": 39636, - "unitedway": 47486, - "unites": 32061, - "uniting": 31318, - "units": 10394, - "unity": 38300, - "unity": 8581, - "univ": 36680, - "univ": 14896, - "univer": 15574, - "univers": 5855, - "universal": 19148, - "universal": 8754, - "universe": 6104, - "universi": 41692, - "universit": 26019, - "universities": 16408, - "university": 40728, - "university": 2182, - "universityof": 46158, - "unk": 5542, - "unknown": 8685, - "unl": 43807, - "unlawful": 42305, - "unle": 19677, - "unlea": 23893, - "unleash": 26706, - "unleashed": 27955, - "unless": 10602, - "unlike": 16694, - "unlikely": 18904, - "unlimited": 11015, - "unlock": 18649, - "unlocked": 16770, - "unlocking": 40810, - "unlucky": 35029, - "unlv": 42283, - "unmanned": 36751, - "unmatched": 46054, - "unn": 38364, - "unnamed": 44985, - "unnecessary": 24100, - "unner": 31481, - "unning": 43282, - "unnoticed": 42807, - "uno": 32446, - "uno": 17078, - "unofficial": 22506, - "unpacking": 43589, - "unpaid": 32811, - "unparalleled": 44396, - "unplugged": 31724, - "unpopular": 40232, - "unprece": 23054, - "unprecedented": 23344, - "unpredictable": 38684, - "unra": 45150, - "unreal": 46980, - "unreal": 15636, - "unrelated": 38644, - "unreleased": 29654, - "unrest": 36452, - "uns": 25908, - "unsafe": 32071, - "unsc": 36395, - "unseen": 19069, - "unsigned": 39346, - "unsolved": 40836, - "unsplash": 46196, - "unstable": 34730, - "unstopp": 22105, - "unstoppable": 23484, - "unsuccessful": 47478, - "unsung": 33015, - "unsure": 26396, - "unt": 19654, - "unt": 6537, - "until": 1942, - "untitled": 21309, - "unto": 19801, - "untold": 32206, - "untouch": 44509, - "untouched": 42764, - "unused": 29636, - "unusual": 12613, - "unusually": 36465, - "unve": 6685, - "unveil": 20483, - "unveiled": 13572, - "unveiling": 20327, - "unveils": 15057, - "unwanted": 25285, - "unwind": 34064, - "unya": 37142, - "uo": 30874, - "uo": 36162, - "uof": 11155, - "uoft": 37329, - "uon": 48144, - "uous": 40185, - "up": 1083, - "up": 705, - "upa": 31727, - "upbeat": 39201, - "upcoming": 4196, - "upcycled": 46552, - "upd": 3226, - "update": 2491, - "updated": 5974, - "updates": 4904, - "updating": 22792, - "uper": 38082, - "uper": 33056, - "upfront": 42064, - "upgrade": 10365, - "upgraded": 18577, - "upgrades": 21253, - "upgrading": 34368, - "uph": 14128, - "uphill": 42767, - "uphol": 26195, - "uphold": 43897, - "upholstery": 44556, - "upl": 41939, - "uplift": 45389, - "uplifting": 29546, - "upload": 13968, - "uploaded": 16793, - "uploading": 30145, - "upon": 23524, - "upon": 5067, - "upp": 19549, - "upp": 45946, - "upper": 22465, - "upper": 7067, - "upri": 15982, - "upright": 29818, - "uprising": 26006, - "upro": 28922, - "ups": 6926, - "upscale": 47501, - "upset": 11214, - "upsets": 42637, - "upside": 15362, - "upstairs": 21387, - "upstate": 33335, - "upstream": 45517, - "upthe": 31510, - "upto": 26575, - "upton": 31910, - "uptown": 23807, - "upward": 32526, - "upwards": 34915, - "uq": 39591, - "ur": 565, - "ur": 1775, - "ura": 29337, - "ura": 3544, - "urable": 40194, - "ural": 23547, - "ural": 33948, - "uran": 16197, - "uranium": 29850, - "urban": 7931, - "urban": 5800, - "urbanart": 40834, - "urd": 47880, - "urday": 19742, - "urdu": 29976, - "ure": 5514, - "ure": 726, - "ured": 4210, - "urer": 20864, - "ures": 2288, - "urg": 35995, - "urge": 14852, - "urged": 23790, - "urgency": 47612, - "urgent": 13693, - "urgently": 34534, - "urges": 16692, - "urging": 27748, - "uri": 11052, - "uri": 8699, - "urie": 46429, - "urin": 45245, - "urine": 28864, - "uring": 1351, - "url": 23464, - "urn": 38075, - "uro": 17343, - "uro": 5925, - "urology": 48585, - "urope": 14918, - "urs": 4794, - "urself": 31942, - "urst": 19181, - "urstruly": 34751, - "urstrulymahesh": 35314, - "ursula": 38390, - "urt": 24309, - "uru": 16322, - "uru": 11768, - "uruguay": 27931, - "urus": 14246, - "urve": 24583, - "ury": 8642, - "ury": 2106, - "us": 904, - "us": 718, - "usa": 9491, - "usa": 2547, - "usability": 46736, - "usable": 22890, - "usaf": 25017, - "usage": 19137, - "usaid": 34507, - "usair": 36742, - "usairforce": 42179, - "usarmy": 19132, - "usatoday": 40263, - "usav": 36056, - "usb": 10281, - "usc": 13346, - "usc": 14995, - "uscg": 43932, - "usd": 7485, - "usda": 25829, - "use": 4419, - "use": 1483, - "used": 32289, - "used": 2026, - "useful": 9784, - "useless": 20154, - "usemb": 39700, - "user": 21248, - "user": 7031, - "username": 28162, - "users": 7433, - "uses": 5282, - "useum": 45189, - "usf": 32385, - "usf": 28942, - "usgs": 35103, - "ush": 12001, - "ush": 18335, - "usher": 27411, - "ushi": 47734, - "usi": 25540, - "usic": 34909, - "usic": 16753, - "using": 1996, - "usky": 45778, - "usl": 42113, - "usm": 40041, - "usmc": 21678, - "usmnt": 30662, - "usn": 40579, - "usnavy": 24500, - "usnews": 43752, - "uso": 21539, - "usopen": 21782, - "usp": 26651, - "usps": 39980, - "usrc": 33274, - "uss": 11545, - "uss": 9260, - "ussia": 29553, - "ussoccer": 42828, - "ussr": 32697, - "ust": 35501, - "ust": 24725, - "usu": 4254, - "usu": 40434, - "usual": 6129, - "usually": 8296, - "usur": 45582, - "uswnt": 35255, - "ut": 1419, - "ut": 3641, - "uta": 42706, - "uta": 25925, - "utah": 27474, - "utah": 9312, - "utc": 18196, - "utd": 10493, - "ute": 16856, - "ute": 3130, - "uten": 32089, - "uter": 39197, - "utes": 2850, - "uth": 48819, - "uth": 44750, - "uti": 24568, - "util": 28824, - "utili": 17015, - "utilities": 27210, - "utility": 14941, - "utilize": 36861, - "utilized": 47604, - "utilizing": 40212, - "utm": 47853, - "utmost": 42352, - "uto": 18866, - "uto": 13683, - "utopia": 34433, - "utpol": 42605, - "utr": 48726, - "utrecht": 37216, - "uts": 11740, - "utsa": 37528, - "utt": 17096, - "uttar": 40168, - "uttarak": 33755, - "uttarakhand": 35655, - "utter": 18769, - "utter": 24558, - "utterly": 21353, - "utto": 42183, - "utv": 36351, - "utz": 45320, - "uu": 5702, - "uu": 14553, - "uuu": 44355, - "uuu": 27656, - "uuuu": 16720, - "uuuu": 40797, - "uv": 23777, - "uv": 15977, - "uva": 23908, - "uw": 13933, - "uw": 19166, - "uwe": 48785, - "uwu": 35544, - "ux": 9251, - "ux": 6213, - "uy": 31929, - "uy": 48113, - "uz": 19398, - "uz": 36991, - "uzbe": 43007, - "uzbekistan": 45024, - "uzzi": 48210, - "v": 85, - "v": 341, - "va": 4648, - "va": 1892, - "vaa": 37488, - "vable": 23088, - "vac": 3125, - "vac": 34085, - "vaca": 48215, - "vacancies": 26333, - "vacancy": 21247, - "vacant": 25262, - "vacation": 28336, - "vacation": 6561, - "vacations": 29002, - "vacay": 44716, - "vacc": 13342, - "vaccin": 19164, - "vaccinated": 48134, - "vaccination": 32518, - "vaccine": 47780, - "vaccine": 17493, - "vaccines": 25860, - "vach": 46211, - "vacu": 16058, - "vacuum": 18420, - "vad": 11880, - "vada": 46759, - "vader": 21908, - "vae": 39384, - "vag": 13015, - "vague": 42154, - "vah": 26921, - "vai": 26893, - "vai": 36802, - "vail": 21189, - "vain": 25538, - "vais": 28719, - "vaj": 34206, - "vak": 16288, - "vak": 41597, - "val": 1214, - "val": 1560, - "vala": 48525, - "valdez": 40617, - "vale": 35554, - "vale": 10820, - "valedic": 43525, - "valen": 12630, - "valence": 30225, - "valenci": 34183, - "valencia": 16559, - "valent": 3655, - "valent": 15300, - "valentin": 48631, - "valentina": 43741, - "valentine": 11208, - "valentine": 5876, - "valentines": 10259, - "valentinesday": 12369, - "valentino": 29624, - "valeri": 31951, - "valerie": 25592, - "valet": 45749, - "vali": 8230, - "valiant": 33804, - "valid": 15126, - "validation": 32536, - "valkyrie": 42326, - "vall": 23523, - "vall": 35295, - "vallarta": 47874, - "valle": 24857, - "valle": 29105, - "valley": 18354, - "valley": 3136, - "valleys": 28649, - "valor": 30930, - "vals": 7431, - "valu": 6291, - "valuable": 10056, - "valuation": 25894, - "value": 41358, - "value": 4602, - "valued": 17801, - "values": 8857, - "valve": 17001, - "valves": 33517, - "vam": 9983, - "vamo": 46718, - "vamos": 30346, - "vamp": 10680, - "vampi": 47017, - "vampire": 47576, - "vampire": 13220, - "vampires": 30868, - "vamps": 44810, - "van": 2446, - "van": 2451, - "vana": 20543, - "vanc": 6320, - "vance": 31447, - "vancou": 6750, - "vancouver": 31904, - "vancouver": 7208, - "vand": 11691, - "vandalism": 45664, - "vander": 16264, - "vanderbilt": 33524, - "vandy": 39268, - "vane": 43828, - "vaness": 13328, - "vanessa": 16836, - "vangogh": 47849, - "vanguard": 27916, - "vani": 15396, - "vani": 26459, - "vania": 10998, - "vanilla": 11974, - "vanished": 43783, - "vanishing": 48296, - "vanity": 48353, - "vanity": 22938, - "vans": 11711, - "vant": 26298, - "vantage": 31749, - "vanu": 42892, - "vanuatu": 48766, - "vap": 10462, - "vape": 25423, - "vape": 20219, - "vaping": 29403, - "vapor": 37167, - "vapor": 30729, - "vapori": 46183, - "var": 3187, - "var": 12998, - "vara": 47492, - "varan": 36585, - "varanasi": 39364, - "vard": 21866, - "vard": 8773, - "vardy": 47371, - "vare": 38159, - "vares": 42895, - "vargas": 32752, - "vari": 3354, - "variable": 26416, - "varian": 34334, - "variant": 20293, - "variants": 38312, - "variation": 26420, - "variations": 29025, - "varied": 32334, - "varies": 32543, - "varieties": 23805, - "variety": 8396, - "various": 7395, - "varsity": 43716, - "varsity": 8574, - "varun": 48120, - "varun": 22069, - "vary": 18855, - "varying": 36456, - "vas": 5669, - "vas": 5995, - "vasc": 40995, - "vascular": 19218, - "vase": 20431, - "vasi": 49092, - "vast": 24413, - "vast": 16414, - "vastly": 48257, - "vat": 11588, - "vat": 18363, - "vatican": 21030, - "vation": 37884, - "vau": 6391, - "vaugh": 25158, - "vaughan": 21392, - "vaughn": 29013, - "vaul": 27469, - "vault": 15240, - "vaus": 40217, - "vaux": 27403, - "vauxhall": 29173, - "vaw": 47952, - "vay": 48000, - "vaz": 38142, - "vb": 29365, - "vb": 8778, - "vball": 38329, - "vc": 28670, - "vc": 7952, - "vcs": 43528, - "vcu": 40102, - "vd": 9515, - "vday": 42055, - "ve": 673, - "ve": 563, - "vea": 43798, - "veal": 36616, - "veau": 24419, - "vec": 19912, - "vector": 40453, - "vector": 21533, - "ved": 19515, - "ved": 1102, - "veda": 44401, - "vedere": 45660, - "vedi": 47971, - "vee": 35708, - "vee": 17073, - "veen": 22432, - "veer": 21243, - "veer": 22058, - "veg": 9048, - "veg": 16460, - "vega": 22930, - "vegan": 15705, - "vegan": 5615, - "vegans": 48514, - "vegas": 20288, - "vegas": 4413, - "vege": 6219, - "vegetable": 15725, - "vegetables": 14119, - "vegetarian": 14600, - "vegetation": 33947, - "veggie": 19401, - "veggies": 16767, - "vehic": 3973, - "vehicle": 5299, - "vehicles": 8361, - "veil": 23516, - "vein": 29169, - "veins": 28867, - "veit": 30620, - "vel": 942, - "vel": 1287, - "vela": 34898, - "veld": 34011, - "veled": 15370, - "veli": 49166, - "veling": 37970, - "vell": 21173, - "vell": 32997, - "velo": 14357, - "velo": 33850, - "velocity": 23811, - "vels": 5109, - "velve": 37849, - "velvet": 11063, - "vely": 1708, - "vember": 3477, - "vement": 3129, - "vements": 11104, - "ven": 1240, - "ven": 1638, - "vena": 47442, - "vend": 10851, - "vending": 29202, - "vendor": 21261, - "vendors": 20353, - "vene": 5365, - "veness": 10516, - "venetian": 34336, - "venezia": 34139, - "venezu": 10939, - "venezuela": 12839, - "venezuelan": 34699, - "veng": 31526, - "venge": 27757, - "vengeance": 32057, - "veni": 31142, - "venice": 11010, - "vening": 47532, - "venison": 40037, - "venom": 42491, - "venom": 21588, - "vens": 20884, - "vent": 4373, - "vent": 5687, - "ventil": 39522, - "ventilation": 35066, - "venting": 15731, - "vention": 4122, - "vents": 12833, - "ventu": 48217, - "ventura": 20921, - "venture": 37046, - "venture": 12543, - "ventures": 20829, - "venue": 5097, - "venues": 18120, - "venus": 14691, - "ver": 624, - "ver": 667, - "vera": 13350, - "verage": 3725, - "verb": 34952, - "verbal": 26522, - "verbally": 39985, - "verbs": 45687, - "verde": 16935, - "verdi": 42306, - "verdict": 18030, - "vere": 11135, - "vere": 34707, - "vered": 2868, - "verge": 23913, - "veri": 11638, - "verification": 33521, - "verified": 22555, - "verify": 34722, - "vering": 4630, - "veriz": 19707, - "verizon": 21532, - "verma": 41261, - "vermont": 19241, - "vern": 2214, - "vern": 12586, - "verne": 45553, - "vernon": 18348, - "vero": 45217, - "vero": 38208, - "verona": 31819, - "veronic": 39551, - "veronica": 24039, - "vers": 1219, - "vers": 2094, - "versa": 35765, - "versace": 25422, - "versail": 29857, - "versailles": 32129, - "versary": 2940, - "versatile": 18110, - "versatility": 41340, - "verse": 39466, - "verse": 3131, - "verses": 30769, - "versi": 8934, - "version": 3273, - "versions": 16190, - "versity": 1906, - "verst": 42484, - "verstappen": 45064, - "versus": 14548, - "versy": 18522, - "vert": 11742, - "verte": 35158, - "verted": 48173, - "verti": 30459, - "vertical": 14293, - "vertigo": 42477, - "verton": 40632, - "verts": 37265, - "very": 11698, - "very": 1070, - "veryday": 37944, - "verything": 45174, - "ves": 9616, - "ves": 1003, - "vesmatter": 47636, - "vespa": 46029, - "vessel": 16387, - "vessels": 22822, - "vest": 31657, - "vest": 12473, - "vesti": 40349, - "vests": 41906, - "vet": 12294, - "vet": 5951, - "veter": 4330, - "veteran": 20797, - "veteran": 8814, - "veterans": 7092, - "veteransday": 26409, - "veterin": 43959, - "veterinary": 25458, - "veto": 36570, - "vets": 13113, - "vette": 17045, - "vettel": 28700, - "vevo": 35141, - "vex": 36187, - "vex": 43978, - "vey": 34792, - "vey": 3884, - "vez": 35987, - "vez": 17226, - "vf": 25966, - "vfl": 33726, - "vfx": 30149, - "vg": 40591, - "vg": 22346, - "vh": 46953, - "vh": 23847, - "vhs": 21932, - "vi": 603, - "vi": 4259, - "via": 1048, - "viable": 25752, - "viadu": 37012, - "viaduct": 39113, - "vial": 39951, - "vian": 40487, - "vian": 16124, - "vibe": 37974, - "vibe": 12813, - "vibes": 7764, - "vibr": 9527, - "vibrant": 14270, - "vibration": 37456, - "vibrations": 43660, - "vic": 1555, - "vic": 4412, - "vica": 46168, - "vicar": 43899, - "vice": 43572, - "vice": 6931, - "vicente": 39411, - "vices": 8332, - "vich": 24143, - "vici": 46670, - "vicious": 25177, - "vick": 15116, - "vick": 29704, - "vickers": 48452, - "vicki": 34927, - "vicky": 37176, - "vicky": 25788, - "victi": 6861, - "victim": 9133, - "victims": 7131, - "victor": 2423, - "victor": 10690, - "victori": 17555, - "victoria": 39286, - "victoria": 6127, - "victorian": 12350, - "victorias": 47791, - "victories": 24577, - "victorious": 24033, - "victory": 36668, - "victory": 4127, - "vid": 17233, - "vid": 9284, - "vida": 19015, - "vidal": 36678, - "vide": 1334, - "vide": 45244, - "video": 9478, - "video": 1455, - "videogame": 35097, - "videogames": 21149, - "videos": 6081, - "vids": 23035, - "vidy": 29639, - "vidya": 45264, - "vie": 922, - "vie": 8538, - "vien": 36493, - "vienna": 12670, - "vier": 15352, - "vier": 11987, - "viera": 21114, - "viernes": 33826, - "vies": 22458, - "viest": 31979, - "viet": 17558, - "viet": 13128, - "vietnam": 19558, - "vietnam": 8623, - "vietnamese": 22382, - "view": 12004, - "view": 1093, - "viewed": 7226, - "viewer": 15061, - "viewers": 14275, - "viewing": 7124, - "viewpoint": 41604, - "views": 2758, - "vig": 8549, - "vig": 45083, - "vigil": 21538, - "vigil": 19896, - "vigilant": 43026, - "vigne": 40447, - "vigne": 34581, - "vigo": 44097, - "vigor": 26781, - "vii": 17759, - "viii": 20414, - "vijay": 12014, - "vijay": 10823, - "vijaysethu": 47966, - "vik": 10764, - "vik": 17181, - "vika": 39562, - "vikas": 37116, - "viking": 26663, - "viking": 15897, - "vikings": 11713, - "vikram": 41136, - "vikram": 24314, - "viktor": 36101, - "vil": 1338, - "vil": 3000, - "vila": 37505, - "vile": 27247, - "vill": 10481, - "vill": 45698, - "villa": 3203, - "villa": 7754, - "village": 34584, - "village": 4331, - "villagers": 34283, - "villages": 17621, - "villain": 15425, - "villains": 25271, - "villanova": 44025, - "villar": 35164, - "villas": 28907, - "ville": 11110, - "ville": 1930, - "villen": 46177, - "villi": 36907, - "vimeo": 48720, - "vin": 1379, - "vin": 2558, - "vina": 35682, - "vinai": 37396, - "vinaigrette": 39876, - "vinay": 43952, - "vince": 32429, - "vince": 6236, - "vincen": 33402, - "vincent": 29069, - "vincent": 10357, - "vinci": 30199, - "vind": 20275, - "vindic": 39582, - "vine": 8471, - "vine": 7721, - "vinegar": 23834, - "vines": 21268, - "vineyard": 16527, - "vineyards": 23082, - "ving": 5375, - "ving": 903, - "vingne": 42579, - "vings": 22510, - "vini": 48119, - "vinnie": 40885, - "vinny": 36794, - "vino": 14509, - "vinod": 43348, - "vins": 34820, - "vinson": 45945, - "vintag": 10936, - "vintage": 13654, - "vintage": 3266, - "viny": 40990, - "vinyl": 22835, - "vinyl": 5754, - "vio": 11913, - "vio": 20324, - "viol": 3164, - "viola": 27438, - "violate": 44875, - "violated": 38192, - "violating": 37554, - "violation": 22919, - "violations": 21969, - "violence": 5450, - "violent": 11565, - "violently": 47758, - "violet": 16118, - "violets": 42861, - "violin": 17058, - "violinist": 36299, - "vion": 35496, - "vious": 6418, - "viously": 7149, - "vip": 45714, - "vip": 7111, - "viper": 27401, - "vips": 41149, - "vir": 1790, - "vir": 25319, - "vira": 35910, - "viral": 11653, - "virat": 32473, - "virgil": 39076, - "virgin": 5651, - "virgin": 12103, - "virgini": 43426, - "virginia": 6728, - "virgo": 39978, - "viro": 32301, - "viron": 38309, - "virtu": 7977, - "virtual": 18059, - "virtual": 7790, - "virtually": 22475, - "virtualreality": 32608, - "virtue": 26860, - "virtues": 42167, - "virtuoso": 47027, - "virus": 11808, - "viruses": 34830, - "vis": 1301, - "vis": 5337, - "visa": 12802, - "visas": 41228, - "vise": 24977, - "vised": 14810, - "vish": 12024, - "vish": 29124, - "vishal": 33648, - "vishnu": 37816, - "visi": 1409, - "visibility": 15921, - "visible": 36658, - "visible": 8626, - "vising": 37439, - "vision": 11147, - "vision": 2515, - "visional": 24627, - "visionary": 22959, - "visions": 13804, - "visit": 3388, - "visit": 1600, - "visitation": 44370, - "visited": 5580, - "visiting": 4680, - "visitor": 13881, - "visitors": 9160, - "visits": 8489, - "visitscotland": 28760, - "visitspain": 48860, - "vism": 15514, - "viso": 46732, - "visor": 24217, - "vist": 21436, - "vista": 13865, - "visu": 7739, - "visual": 17004, - "visual": 7195, - "visualization": 28500, - "visualize": 45057, - "visually": 25743, - "visuals": 21315, - "viswas": 36513, - "viswasam": 47664, - "vit": 4056, - "vit": 35580, - "vita": 15700, - "vital": 32525, - "vital": 10585, - "vitality": 36385, - "vitam": 9856, - "vitamin": 13675, - "vitamins": 22582, - "vito": 36725, - "vity": 4893, - "vitz": 26188, - "vius": 41571, - "viv": 21827, - "viv": 35363, - "viva": 17399, - "vival": 35920, - "vive": 18980, - "vive": 24004, - "vivek": 36243, - "vivi": 11625, - "vivian": 30129, - "vivid": 22984, - "vivo": 28091, - "vivo": 25888, - "vix": 28976, - "vix": 34811, - "vixen": 38757, - "vixx": 32106, - "viz": 28251, - "viz": 31786, - "vj": 45439, - "vj": 30827, - "vk": 41893, - "vl": 37580, - "vl": 36442, - "vla": 23686, - "vlad": 41089, - "vladi": 19320, - "vladimir": 21702, - "vlive": 46797, - "vlog": 18894, - "vm": 16204, - "vm": 20269, - "vma": 35666, - "vmas": 30236, - "vmware": 29615, - "vn": 47098, - "vn": 25076, - "vo": 947, - "vo": 3951, - "voc": 4105, - "voc": 20855, - "vocab": 21346, - "vocabulary": 23804, - "vocal": 34037, - "vocal": 13147, - "vocali": 19134, - "vocalist": 22102, - "vocals": 17666, - "vocation": 20521, - "vocational": 33751, - "vod": 11820, - "vod": 35854, - "vodaf": 28436, - "vodafone": 38695, - "vodka": 13646, - "vogel": 44960, - "vogue": 24418, - "vogue": 13178, - "voic": 29185, - "voice": 13179, - "voice": 3386, - "voiced": 34352, - "voiceof": 44966, - "voiceover": 41979, - "voices": 9144, - "void": 21561, - "voip": 42762, - "voir": 16036, - "vol": 1343, - "vol": 7945, - "volatile": 41022, - "volatility": 32355, - "volcan": 9916, - "volcanic": 24072, - "volcano": 14581, - "volcanoes": 38055, - "voli": 40138, - "volk": 13432, - "volkswag": 14407, - "volkswagen": 15342, - "volley": 7130, - "volley": 34656, - "volleyball": 7458, - "volo": 44791, - "vols": 20404, - "volt": 26430, - "volta": 29879, - "volta": 33480, - "voltage": 23118, - "voltron": 39314, - "volu": 3563, - "volume": 8284, - "volumes": 22651, - "volun": 3356, - "voluntar": 48823, - "voluntary": 23815, - "volunte": 3556, - "volunteer": 32331, - "volunteer": 7114, - "volunteered": 34000, - "volunteering": 14902, - "volunteers": 5939, - "volution": 24043, - "volved": 42888, - "volvo": 39991, - "volvo": 16906, - "vom": 24198, - "vomit": 46485, - "von": 11269, - "von": 8497, - "voo": 19497, - "voodoo": 26869, - "voor": 34291, - "voor": 34464, - "vor": 8338, - "vor": 5308, - "vore": 18215, - "vortex": 30071, - "vos": 16863, - "vot": 48558, - "vote": 6830, - "vote": 2187, - "voted": 6454, - "votel": 41379, - "voter": 44474, - "voter": 14065, - "voters": 8925, - "votes": 6693, - "voting": 5756, - "vou": 11045, - "voucher": 18190, - "vouchers": 23384, - "vous": 10636, - "vow": 34787, - "vows": 21677, - "vox": 29215, - "vox": 22692, - "voy": 10622, - "voy": 15021, - "voyage": 16299, - "voyager": 29669, - "vp": 32758, - "vp": 3896, - "vpn": 38212, - "vr": 16840, - "vr": 5921, - "vre": 44500, - "vre": 17501, - "vs": 11385, - "vs": 1547, - "vsco": 26752, - "vsco": 32822, - "vscocam": 34694, - "vsky": 37791, - "vss": 31919, - "vt": 31732, - "vt": 10291, - "vu": 8664, - "vu": 13230, - "vue": 43915, - "vue": 19313, - "vuel": 31312, - "vuelta": 43856, - "vuitton": 26705, - "vul": 6856, - "vulcan": 34767, - "vulner": 11213, - "vulnerability": 28797, - "vulnerable": 14332, - "vulture": 34593, - "vultures": 47197, - "vv": 19264, - "vv": 35686, - "vw": 28650, - "vw": 13250, - "vx": 47644, - "vy": 11566, - "vy": 5157, - "w": 86, - "w": 342, - "wa": 869, - "wa": 2663, - "waa": 35874, - "wab": 19893, - "wab": 36852, - "wac": 27445, - "wac": 37947, - "wack": 22880, - "wack": 38270, - "wacky": 34318, - "waco": 36035, - "wad": 11133, - "wad": 30451, - "wada": 40006, - "wade": 40237, - "wade": 14180, - "wadi": 37253, - "waf": 17638, - "wafc": 49086, - "waff": 13940, - "waffle": 20375, - "waffles": 24205, - "wag": 5764, - "wag": 19177, - "wage": 10716, - "wager": 43430, - "wages": 19114, - "wagner": 18081, - "wagon": 13260, - "wagons": 47944, - "wags": 48580, - "wah": 24812, - "wah": 18014, - "wahl": 27500, - "wahlberg": 35151, - "wahoo": 47995, - "wai": 11469, - "wai": 21569, - "waifu": 46551, - "waikiki": 44907, - "wain": 28358, - "wain": 20120, - "wainwright": 45878, - "waist": 36946, - "waist": 18459, - "wait": 10021, - "wait": 1885, - "waite": 24272, - "waited": 18492, - "waiter": 32946, - "waitin": 44482, - "waiting": 2680, - "waitress": 39760, - "waitrose": 37164, - "waits": 21361, - "waiver": 42866, - "waj": 49367, - "wak": 11172, - "wak": 36015, - "waka": 42696, - "wake": 10501, - "wake": 5731, - "wakefield": 26358, - "wakes": 29108, - "wakeup": 26328, - "wakeup": 35380, - "wakeupamerica": 37474, - "waking": 13025, - "wal": 1056, - "wal": 6903, - "wala": 16468, - "walang": 49180, - "walcott": 45744, - "wald": 46930, - "wald": 15724, - "walden": 39311, - "waldo": 32440, - "waldorf": 38227, - "wale": 41247, - "wale": 20336, - "wales": 25383, - "wales": 5110, - "walgreens": 38490, - "wali": 37576, - "wali": 14768, - "walia": 44455, - "walk": 8588, - "walk": 2374, - "walkaway": 48255, - "walked": 8667, - "walker": 24735, - "walker": 6150, - "walkers": 23366, - "walkin": 45792, - "walking": 12644, - "walking": 3941, - "walkingdead": 14948, - "walkout": 47470, - "walks": 8192, - "walkway": 36614, - "wall": 4316, - "wall": 2569, - "walla": 26007, - "walla": 39982, - "wallabies": 48926, - "wallace": 12535, - "wallart": 36223, - "walled": 36567, - "waller": 45340, - "wallet": 12154, - "wallets": 38550, - "walleye": 49099, - "wallis": 42206, - "wallpaper": 10560, - "wallpapers": 29841, - "walls": 8258, - "wallstreet": 45341, - "wally": 26024, - "walmart": 11972, - "walnut": 16310, - "walnuts": 38294, - "walsall": 42935, - "walsh": 12856, - "walt": 23535, - "walt": 14312, - "waltdisneyworld": 36505, - "walter": 31156, - "walter": 10645, - "walters": 25532, - "waltham": 42742, - "waltham": 45581, - "walton": 19485, - "waltz": 35982, - "wam": 20503, - "wamy": 46970, - "wan": 2060, - "wan": 4557, - "wana": 30830, - "wand": 14636, - "wand": 28559, - "wanda": 25070, - "wander": 12985, - "wander": 24473, - "wandered": 46593, - "wanderers": 27540, - "wandering": 22597, - "wanderlust": 16129, - "wane": 27459, - "wang": 19731, - "wang": 11900, - "wani": 21674, - "wankers": 42189, - "wann": 23622, - "wanna": 35940, - "wanna": 3836, - "wannabe": 40730, - "wannaone": 44832, - "want": 18356, - "want": 1280, - "wanted": 3146, - "wanting": 12801, - "wants": 3107, - "wap": 27393, - "wap": 30368, - "waq": 47512, - "war": 984, - "war": 2238, - "wara": 21631, - "warbler": 33891, - "warcraft": 13660, - "ward": 7728, - "ward": 1460, - "warden": 27798, - "wardly": 30780, - "wardro": 14247, - "wardrobe": 15020, - "wards": 2593, - "ware": 7416, - "ware": 4476, - "wareagle": 35716, - "warehouse": 13054, - "wareness": 41601, - "wareness": 35870, - "wares": 30692, - "warfare": 15739, - "warhammer": 26832, - "warhol": 27554, - "wari": 20977, - "wark": 46346, - "wark": 15164, - "warlock": 42455, - "warm": 14725, - "warm": 3616, - "warmed": 36695, - "warmer": 14328, - "warmest": 30910, - "warming": 8606, - "warmly": 45322, - "warmongers": 33205, - "warms": 32917, - "warmth": 19636, - "warmup": 29904, - "warmups": 44094, - "warn": 19360, - "warned": 16409, - "warner": 28564, - "warner": 13402, - "warning": 4994, - "warnings": 18098, - "warns": 14086, - "waron": 38947, - "warp": 32411, - "warped": 32125, - "warran": 17392, - "warrant": 22554, - "warrants": 45677, - "warranty": 23999, - "warren": 23143, - "warren": 9234, - "warri": 4109, - "warrington": 31203, - "warrior": 18998, - "warrior": 8148, - "warriors": 6421, - "wars": 3931, - "warsaw": 21072, - "warship": 47846, - "wart": 43535, - "wart": 7346, - "wartime": 42998, - "warts": 21781, - "warwick": 23081, - "warwick": 22215, - "warwickshire": 36766, - "wary": 36213, - "was": 3398, - "was": 739, - "wasabi": 47334, - "wash": 3363, - "wash": 7810, - "washed": 14092, - "washer": 24085, - "washes": 38950, - "washing": 13029, - "washington": 16774, - "washington": 4365, - "washingtondc": 40225, - "washingtonpost": 28426, - "wasn": 5044, - "wasnt": 29607, - "wasp": 24889, - "wasps": 35300, - "wassup": 45708, - "wast": 28886, - "waste": 18157, - "waste": 6065, - "wasted": 18278, - "wasteland": 44035, - "wastewater": 34463, - "wasting": 25577, - "wat": 800, - "wat": 10621, - "wata": 42509, - "watch": 7046, - "watch": 1239, - "watchdog": 35303, - "watched": 5775, - "watcher": 35971, - "watchers": 28443, - "watches": 9521, - "watchin": 32432, - "watching": 2113, - "water": 2505, - "water": 1573, - "watercolor": 14211, - "watercolour": 18377, - "waterfall": 16403, - "waterfalls": 26692, - "waterford": 24448, - "waterfront": 16605, - "waterhouse": 45072, - "watering": 19871, - "waterloo": 17465, - "watermelon": 19889, - "waterproof": 17613, - "waters": 7753, - "watershed": 33204, - "waterstones": 45014, - "waterways": 37395, - "watford": 23162, - "watfordfc": 37328, - "wati": 27966, - "watkins": 22539, - "watson": 35490, - "watson": 9294, - "watt": 22899, - "watt": 15805, - "wattpad": 32351, - "watts": 14750, - "wau": 9479, - "wav": 6054, - "wave": 17530, - "wave": 4535, - "waved": 44657, - "waver": 25997, - "waves": 7882, - "waving": 26545, - "wavy": 31941, - "waw": 22039, - "wawrinka": 48414, - "wawx": 47387, - "wax": 18789, - "wax": 11910, - "waxing": 38781, - "way": 3079, - "way": 923, - "wayback": 47822, - "wayne": 23632, - "wayne": 7003, - "ways": 1248, - "waz": 20889, - "waz": 48835, - "wb": 10726, - "wb": 12377, - "wba": 22675, - "wbb": 14482, - "wbc": 26745, - "wbo": 49053, - "wbz": 35471, - "wc": 4842, - "wc": 5755, - "wcc": 47166, - "wcc": 34926, - "wcpo": 46624, - "wcs": 39916, - "wcvb": 32709, - "wcw": 9041, - "wd": 15998, - "wd": 7494, - "wdw": 40334, - "we": 598, - "we": 649, - "wea": 37146, - "wea": 47301, - "weak": 12128, - "weak": 10128, - "weaker": 39735, - "weakness": 21448, - "weaknesses": 43487, - "weal": 14759, - "wealth": 33150, - "wealth": 7904, - "wealthy": 22617, - "weap": 6156, - "weapon": 42612, - "weapon": 10537, - "weapons": 10007, - "wear": 12206, - "wear": 2839, - "wearab": 22983, - "wearable": 44943, - "wearable": 24973, - "wearables": 30319, - "weare": 4264, - "weare": 27867, - "weareall": 45980, - "wearec": 43620, - "wearen": 45635, - "weareone": 16149, - "weareoneexo": 16448, - "wearethe": 40242, - "wearing": 3309, - "wears": 11869, - "weary": 38766, - "weasel": 44308, - "weather": 8808, - "weather": 2237, - "weathercee": 44980, - "weatherchannel": 42138, - "weav": 22260, - "weave": 22450, - "weaver": 20297, - "weaving": 27131, - "web": 2055, - "web": 4601, - "webb": 15708, - "webber": 34248, - "webcam": 24211, - "webcam": 22589, - "webcamtoy": 27719, - "webcast": 28256, - "webcomic": 34286, - "webcomics": 39811, - "webdesign": 20470, - "webdev": 37000, - "webdevelopment": 47553, - "weber": 20179, - "webin": 8460, - "webinar": 8921, - "webinars": 47755, - "webpage": 46964, - "webs": 32829, - "webseries": 44819, - "website": 3364, - "websites": 19278, - "webster": 19471, - "websummit": 48069, - "wec": 33152, - "wechat": 46124, - "wed": 1687, - "wed": 3478, - "wedd": 7576, - "wedding": 11204, - "wedding": 3101, - "weddings": 15964, - "wedge": 21446, - "wedges": 33179, - "wedne": 2380, - "wednesday": 9311, - "wednesday": 2689, - "wednesdaymotivation": 37860, - "wednesdays": 24943, - "wednesdaywisdom": 11445, - "wedo": 43432, - "weds": 19107, - "wee": 716, - "wee": 8288, - "weed": 36935, - "weed": 8015, - "weeds": 26326, - "week": 1286, - "week": 994, - "weekday": 29244, - "weekdays": 44330, - "weekend": 17205, - "weekend": 1456, - "weekender": 36547, - "weekends": 14564, - "weekly": 34652, - "weekly": 5885, - "weeknd": 29925, - "weeks": 2898, - "weeksary": 24628, - "ween": 17517, - "ween": 1599, - "weep": 39270, - "weeping": 36629, - "weer": 32491, - "weet": 17742, - "weets": 13454, - "wef": 23313, - "weg": 47867, - "weg": 47561, - "wego": 44784, - "wego": 28220, - "weh": 48458, - "weh": 40313, - "weho": 47798, - "wei": 6958, - "wei": 20952, - "weibo": 20613, - "weigh": 10565, - "weigh": 17346, - "weighed": 33210, - "weighing": 24455, - "weighs": 20481, - "weight": 12723, - "weight": 3868, - "weighted": 43179, - "weightlifting": 36164, - "weightloss": 20359, - "weights": 21374, - "weil": 43720, - "weiler": 42203, - "wein": 29134, - "wein": 37684, - "weiner": 38822, - "weinstein": 34367, - "weir": 11299, - "weir": 25517, - "weird": 27981, - "weird": 5613, - "weirdest": 29482, - "weirdo": 32476, - "weis": 26251, - "weiser": 34833, - "weiss": 24794, - "wel": 1267, - "wel": 8042, - "welch": 25820, - "welcom": 11578, - "welcome": 18318, - "welcome": 1881, - "welcomed": 12590, - "welcomes": 9304, - "welcometo": 47511, - "welcoming": 8775, - "weld": 39776, - "welding": 24956, - "welfare": 12129, - "well": 3277, - "well": 1123, - "wellbeing": 14273, - "weller": 40921, - "welling": 49165, - "wellington": 15389, - "wellness": 40574, - "wellness": 9904, - "wells": 42705, - "wells": 9804, - "welove": 13573, - "welp": 28391, - "wels": 20852, - "welsh": 19173, - "welsh": 10977, - "welt": 38595, - "welter": 37115, - "welterweight": 39617, - "wemb": 15213, - "wembley": 16579, - "wen": 6590, - "wen": 11278, - "wend": 15166, - "wendell": 42091, - "wendy": 31616, - "wendy": 14074, - "wenger": 21105, - "went": 18633, - "went": 2437, - "wentworth": 36423, - "wentz": 39179, - "wer": 6316, - "wer": 2980, - "were": 15461, - "were": 1365, - "wered": 6605, - "weren": 13611, - "werewolf": 32001, - "werk": 30176, - "werner": 29917, - "wers": 7110, - "wes": 18620, - "wes": 14738, - "wesle": 29606, - "wesley": 17332, - "wesleyan": 32509, - "wesome": 33292, - "wess": 44431, - "west": 2973, - "west": 1593, - "westbound": 29208, - "westbrook": 26948, - "westchester": 36675, - "westcoast": 44610, - "westend": 44815, - "wester": 9846, - "western": 17079, - "western": 4463, - "westfield": 32309, - "westh": 36798, - "westin": 43232, - "westlake": 41535, - "westminster": 15158, - "weston": 22771, - "westside": 33762, - "westwood": 26371, - "westworld": 42287, - "wet": 12406, - "wet": 6682, - "weta": 40946, - "wethenorth": 45281, - "wethepeople": 48030, - "wether": 33794, - "wether": 48405, - "wetland": 37357, - "wetlands": 26547, - "wett": 41971, - "wetter": 43957, - "wewant": 39280, - "wewill": 37241, - "wex": 17234, - "wexford": 29876, - "wexmondays": 49042, - "wey": 30376, - "wey": 19781, - "weymouth": 41433, - "wf": 14576, - "wf": 22313, - "wfa": 44606, - "wfc": 36431, - "wfp": 35193, - "wftv": 47075, - "wg": 21091, - "wg": 25857, - "wga": 32354, - "wgn": 48828, - "wh": 573, - "wh": 13844, - "wha": 18994, - "wha": 25884, - "whal": 38967, - "whale": 37083, - "whale": 11650, - "whales": 17722, - "wham": 42506, - "whar": 15517, - "wharf": 22452, - "wharton": 43320, - "what": 4268, - "what": 768, - "whatcha": 37160, - "whate": 6695, - "whatever": 6743, - "whati": 23500, - "whats": 9263, - "whats": 13084, - "whatsapp": 10119, - "whatsoever": 39928, - "whatson": 35632, - "whatyou": 30508, - "whe": 2009, - "whead": 34583, - "wheat": 20505, - "wheat": 10303, - "wheaton": 46933, - "wheel": 7360, - "wheel": 6744, - "wheelchair": 17713, - "wheeler": 18405, - "wheeling": 34839, - "wheels": 8025, - "whel": 9792, - "whelan": 40715, - "when": 8753, - "when": 827, - "whenever": 10500, - "where": 7052, - "where": 1234, - "whereabouts": 47808, - "whereas": 42234, - "wheres": 46345, - "wherever": 14103, - "whereyou": 46837, - "whether": 5903, - "whew": 39016, - "whey": 34556, - "whi": 4295, - "whi": 33129, - "which": 1448, - "whiche": 48719, - "whichever": 49138, - "whil": 8499, - "while": 1519, - "whilst": 8596, - "whim": 27766, - "whimsical": 42282, - "whip": 14412, - "whipped": 22323, - "whipping": 41567, - "whir": 20873, - "whirl": 30962, - "whirlwind": 47771, - "whis": 6024, - "whiskey": 41381, - "whiskey": 11610, - "whisky": 37567, - "whisky": 12599, - "whisp": 21986, - "whispe": 30356, - "whisper": 27616, - "whisperer": 41368, - "whispering": 42599, - "whispers": 29133, - "whist": 13640, - "whistle": 23972, - "whistle": 19746, - "whistleblower": 40410, - "whistler": 29633, - "whit": 4398, - "whit": 31498, - "whitaker": 35851, - "whitby": 30858, - "white": 4699, - "white": 1579, - "whiteboard": 40839, - "whitec": 24575, - "whitehall": 42827, - "whitehead": 43560, - "whitehouse": 20776, - "whitening": 35540, - "whitepaper": 42713, - "whites": 35886, - "whites": 18835, - "whitesox": 28816, - "whitewater": 49350, - "whitfield": 48404, - "whitley": 40564, - "whitman": 32394, - "whitney": 43021, - "whitney": 18048, - "whitt": 33784, - "whittaker": 47595, - "whl": 25801, - "who": 2969, - "who": 822, - "whoa": 16943, - "whoever": 11137, - "whois": 41884, - "whole": 10360, - "whole": 2954, - "wholefoods": 42840, - "wholesale": 18306, - "wholesome": 35959, - "whom": 38158, - "whom": 12873, - "whoo": 20003, - "whoo": 49290, - "whoop": 22060, - "whoops": 28433, - "whopping": 34384, - "whore": 31690, - "whos": 41460, - "whos": 27130, - "whose": 6933, - "whouse": 45927, - "whs": 26292, - "wht": 32470, - "whufc": 31695, - "whun": 18272, - "why": 11040, - "why": 1182, - "whyte": 42386, - "wi": 820, - "wi": 5585, - "wib": 45303, - "wic": 7834, - "wich": 9759, - "wich": 5238, - "wichita": 22566, - "wick": 6798, - "wick": 6479, - "wicked": 32579, - "wicked": 12825, - "wicker": 38096, - "wicket": 19180, - "wickets": 22110, - "wicklow": 39039, - "wicz": 30121, - "wid": 11886, - "wid": 20886, - "wide": 19341, - "wide": 3184, - "widely": 16195, - "widening": 46598, - "wider": 21263, - "widesp": 20598, - "widespread": 21258, - "widget": 43906, - "wido": 28068, - "widow": 19949, - "widows": 42129, - "width": 23571, - "wie": 21378, - "wie": 9131, - "wielding": 47272, - "wien": 38131, - "wiener": 40567, - "wies": 42788, - "wif": 37572, - "wife": 3607, - "wifey": 35282, - "wifi": 11026, - "wig": 23690, - "wig": 12216, - "wigan": 23130, - "wiggins": 32329, - "wiggle": 47812, - "wight": 41278, - "wight": 15545, - "wigs": 31207, - "wii": 8005, - "wiiu": 40980, - "wiki": 10373, - "wiki": 24265, - "wikileaks": 28731, - "wikipedia": 15176, - "wil": 1352, - "wil": 20581, - "wilbur": 43069, - "wilcox": 43231, - "wild": 2780, - "wild": 3220, - "wildatlantic": 35500, - "wildatlanticway": 35776, - "wildcard": 37360, - "wildcat": 49077, - "wildcat": 25870, - "wildcats": 15909, - "wilde": 23498, - "wilder": 14343, - "wilder": 23499, - "wilderness": 16506, - "wildest": 43028, - "wildfire": 22788, - "wildfires": 29184, - "wildflower": 27628, - "wildflower": 33181, - "wildflowerhour": 31302, - "wildflowers": 29136, - "wildlife": 13298, - "wildlife": 5250, - "wildlifephotography": 32307, - "wildlifewednesday": 48537, - "wildly": 35981, - "wildoz": 40113, - "wiley": 32747, - "wilhelm": 39696, - "wilkes": 39548, - "wilkins": 36986, - "wilkinson": 26797, - "will": 5062, - "will": 751, - "willam": 43276, - "willard": 44920, - "wille": 48739, - "willem": 38044, - "willi": 2256, - "william": 8420, - "william": 4705, - "williams": 38452, - "williams": 4075, - "williamsburg": 30683, - "williamson": 20793, - "willie": 13907, - "willing": 34160, - "willing": 11718, - "willingness": 40573, - "willis": 18491, - "willow": 33887, - "willow": 15665, - "wills": 26913, - "willy": 34502, - "willy": 19599, - "wilmington": 28052, - "wilms": 47879, - "wilshere": 48359, - "wilson": 23629, - "wilson": 5622, - "wilt": 23394, - "wilt": 47357, - "wilton": 46638, - "wiltshire": 28025, - "wim": 8662, - "wim": 27580, - "wimble": 11752, - "wimbledon": 12229, - "win": 831, - "win": 1225, - "winchester": 20647, - "wind": 6812, - "wind": 3630, - "winder": 44454, - "winder": 46245, - "winding": 22390, - "windmill": 34084, - "windo": 3110, - "window": 26675, - "window": 4879, - "windows": 5437, - "winds": 12668, - "winds": 7012, - "windshield": 33002, - "windsor": 44322, - "windsor": 12884, - "windy": 13446, - "wine": 7375, - "wine": 2604, - "winelover": 26357, - "winemaker": 41588, - "wineoclock": 43846, - "wineries": 49349, - "winery": 15500, - "wines": 8263, - "winetasting": 41288, - "winewednesday": 35447, - "wing": 8141, - "wing": 1340, - "winged": 24993, - "winger": 22727, - "winget": 44578, - "wings": 5178, - "wink": 34455, - "wink": 25859, - "winkle": 36430, - "winn": 38104, - "winne": 46273, - "winner": 32961, - "winner": 2520, - "winners": 4320, - "winni": 13018, - "winnie": 29022, - "winning": 42099, - "winning": 2577, - "winnings": 46490, - "winnipeg": 14369, - "winona": 49202, - "wins": 46839, - "wins": 2718, - "winslow": 39658, - "winston": 14848, - "winter": 7340, - "winter": 2541, - "winters": 21587, - "wintry": 39504, - "wip": 10447, - "wipe": 26761, - "wiped": 31822, - "wipes": 33463, - "wir": 16849, - "wir": 44838, - "wire": 7558, - "wire": 7794, - "wired": 18935, - "wireless": 9103, - "wires": 24311, - "wiring": 36434, - "wirral": 34675, - "wis": 3392, - "wis": 20405, - "wiscon": 9857, - "wisconsin": 10265, - "wisdom": 42474, - "wisdom": 5425, - "wise": 19116, - "wise": 5558, - "wisely": 26173, - "wiser": 44859, - "wish": 11328, - "wish": 2412, - "wished": 25883, - "wishes": 6045, - "wishing": 5307, - "wishlist": 31969, - "wit": 584, - "wit": 8531, - "witch": 20139, - "witch": 10083, - "witchcraft": 35065, - "witcher": 33684, - "witches": 21673, - "with": 1435, - "with": 593, - "withdra": 24696, - "withdraw": 31670, - "withdrawal": 25765, - "withdrawn": 46687, - "withdraws": 48637, - "wither": 39655, - "witherspoon": 45409, - "within": 4154, - "withme": 44670, - "without": 32836, - "without": 2193, - "withstand": 42236, - "withthe": 36872, - "withus": 30572, - "withyou": 30351, - "witne": 12096, - "witness": 8793, - "witnessed": 20187, - "witnesses": 22778, - "witnessing": 33618, - "wits": 30938, - "witt": 38194, - "witt": 17168, - "witter": 31597, - "witty": 29970, - "witz": 44186, - "witz": 13265, - "wiv": 48925, - "wives": 14378, - "wiwx": 44461, - "wiz": 7730, - "wiz": 23178, - "wizar": 49121, - "wizard": 30490, - "wizard": 14295, - "wizards": 19140, - "wizkid": 40146, - "wj": 19739, - "wj": 35453, - "wk": 11512, - "wk": 11528, - "wkend": 42336, - "wknd": 20851, - "wks": 25508, - "wku": 43377, - "wl": 13299, - "wl": 9613, - "wm": 20268, - "wm": 15790, - "wn": 1186, - "wn": 757, - "wnba": 32358, - "wned": 8628, - "wns": 12950, - "wnt": 22484, - "wny": 24833, - "wo": 1613, - "wo": 11132, - "woah": 17751, - "wob": 35984, - "woc": 39011, - "wod": 41522, - "woes": 27860, - "wof": 45671, - "woj": 48931, - "wok": 28912, - "woke": 9331, - "woken": 43697, - "woking": 43931, - "wol": 2798, - "wol": 48622, - "wold": 42399, - "wolf": 9453, - "wolf": 5916, - "wolfe": 24989, - "wolff": 34369, - "wolfgang": 34061, - "wolfpack": 30887, - "wolve": 45101, - "wolver": 14334, - "wolverhampton": 34518, - "wolverine": 23353, - "wolverines": 42003, - "wolves": 9372, - "wom": 1087, - "womack": 48980, - "woman": 15716, - "woman": 2308, - "womanc": 35630, - "womancrush": 37721, - "womancrushwednesday": 39714, - "womanin": 30562, - "womaninbiz": 36482, - "womb": 37023, - "women": 3648, - "women": 1507, - "womenin": 13062, - "womeninscience": 41343, - "womeninstem": 29380, - "womenintech": 31470, - "womenof": 48421, - "womens": 12822, - "womens": 14408, - "womensart": 38548, - "womensday": 13956, - "womenshi": 22887, - "womenshistorymonth": 24982, - "womensmarch": 30102, - "won": 1528, - "won": 1749, - "wonder": 2070, - "wonder": 3936, - "wondercon": 46944, - "wondered": 15550, - "wonderful": 2582, - "wonderfully": 23245, - "wondering": 8360, - "wonderland": 13874, - "wonders": 14048, - "wonderwoman": 31000, - "wondo": 38402, - "wondr": 46771, - "wong": 17876, - "wonka": 43463, - "wont": 43174, - "wont": 15952, - "woo": 1867, - "woo": 9322, - "wood": 3269, - "wood": 1704, - "woodbridge": 49074, - "wooden": 48226, - "wooden": 9057, - "woodland": 44314, - "woodland": 17447, - "woodlands": 32430, - "woodley": 40566, - "woodpecker": 32684, - "woods": 6267, - "woodson": 48967, - "woodstock": 29486, - "woodward": 27419, - "woodwork": 47386, - "woodworking": 29267, - "woody": 38627, - "woody": 17144, - "woof": 34234, - "woof": 24028, - "woohoo": 20172, - "wook": 29192, - "wool": 9967, - "wool": 13283, - "woolf": 43728, - "woolly": 47722, - "woon": 33126, - "wooo": 43217, - "woop": 31884, - "woot": 22466, - "wor": 641, - "worcester": 22172, - "worcester": 19580, - "worcestershire": 38440, - "worcestershirehour": 43644, - "word": 8272, - "word": 2653, - "wordof": 33500, - "wordoftheday": 43594, - "wordpress": 15193, - "words": 31007, - "words": 2709, - "wore": 8953, - "work": 1636, - "work": 951, - "workday": 29735, - "worked": 5410, - "worker": 8098, - "workers": 4795, - "workflow": 28502, - "workforce": 14672, - "workin": 31825, - "workin": 26323, - "working": 20806, - "working": 1699, - "workinprogress": 46086, - "workout": 6773, - "workouts": 22779, - "workplace": 11959, - "workplaces": 47383, - "works": 2322, - "workshop": 3832, - "workshops": 12262, - "workspace": 34470, - "worl": 5221, - "world": 2334, - "world": 1002, - "worlda": 46627, - "worldbank": 36759, - "worldbookday": 31191, - "worldcup": 42525, - "worldcup": 8650, - "worlden": 44668, - "worldenviron": 47115, - "worldenvironmentday": 47522, - "worldly": 36268, - "worldo": 41698, - "worldof": 22636, - "worldre": 33951, - "worlds": 7691, - "worldseries": 26695, - "worldtour": 23202, - "worldwater": 41176, - "worldwaterday": 44520, - "worldwide": 6214, - "worm": 33709, - "worm": 10945, - "worms": 20231, - "worn": 9037, - "worried": 11911, - "worries": 17684, - "worry": 7534, - "worrying": 24058, - "worse": 8236, - "worsen": 46344, - "worshi": 31840, - "worship": 46399, - "worship": 9023, - "worst": 5719, - "wort": 30209, - "worth": 10671, - "worth": 2450, - "worthing": 39929, - "worthit": 40830, - "worthless": 44736, - "worths": 44633, - "worthwhile": 36295, - "worthy": 8881, - "worx": 44973, - "wot": 24863, - "wou": 5279, - "would": 39873, - "would": 1311, - "wouldn": 5878, - "wouldnt": 41595, - "wound": 19231, - "wounded": 14859, - "wounds": 21290, - "woven": 19830, - "wow": 22191, - "wow": 2781, - "woz": 44558, - "wozni": 47782, - "wp": 15378, - "wp": 13302, - "wpg": 35048, - "wps": 33386, - "wq": 45195, - "wr": 1189, - "wr": 8028, - "wra": 3852, - "wra": 46004, - "wral": 49050, - "wrangler": 30923, - "wrap": 7094, - "wrapped": 9875, - "wrapping": 15223, - "wraps": 18236, - "wrath": 29783, - "wray": 48943, - "wrc": 16004, - "wre": 3168, - "wreath": 23091, - "wrec": 20879, - "wreck": 28775, - "wreck": 15017, - "wrecked": 32695, - "wreckem": 45676, - "wrecking": 36956, - "wrecks": 45545, - "wren": 20191, - "wren": 31970, - "wrench": 30980, - "wrest": 4177, - "wrestle": 17097, - "wrestle": 28086, - "wrestlemania": 18849, - "wrestler": 19790, - "wrestlers": 25902, - "wrestling": 31292, - "wrestling": 5904, - "wrexham": 34479, - "wri": 7667, - "wri": 42007, - "wright": 28616, - "wright": 6991, - "wrights": 43711, - "wrigley": 33538, - "wrink": 22201, - "wrinkle": 46642, - "wrinkles": 35525, - "wrist": 19243, - "wrist": 16139, - "wristband": 36890, - "wristbands": 44864, - "writ": 2902, - "write": 28874, - "write": 4946, - "writer": 27886, - "writer": 4422, - "writers": 18742, - "writers": 7307, - "writerslife": 25007, - "writes": 8023, - "writing": 16053, - "writing": 2979, - "writingcommunity": 39178, - "writings": 36259, - "written": 5231, - "wro": 5447, - "wrong": 18381, - "wrong": 3669, - "wrongly": 45642, - "wrote": 5796, - "wrought": 48125, - "wrs": 45280, - "ws": 6300, - "ws": 799, - "wsb": 30681, - "wsbtv": 38394, - "wsj": 19764, - "wski": 12548, - "wsl": 43706, - "wsoc": 40253, - "wson": 33954, - "wsop": 41231, - "wsu": 44674, - "wsu": 32913, - "wsw": 43285, - "wt": 15873, - "wt": 12255, - "wta": 25984, - "wtc": 39718, - "wtf": 6891, - "wth": 23021, - "wthr": 45269, - "wti": 47345, - "wto": 36406, - "wts": 32159, - "wu": 9710, - "wu": 9837, - "wud": 43870, - "wul": 35154, - "wunder": 36661, - "wur": 24040, - "wurst": 44409, - "wusa": 40021, - "wut": 28590, - "wv": 18920, - "wv": 14743, - "wvu": 44878, - "wvu": 25879, - "ww": 3181, - "ww": 4491, - "wwc": 26505, - "wwdc": 47441, - "wwe": 12112, - "wwe": 5290, - "wwen": 23308, - "wwenetwork": 37228, - "wwenxt": 39898, - "wwer": 32038, - "wwf": 23332, - "wwfc": 42681, - "wwg": 35322, - "wwi": 20194, - "wwii": 10261, - "www": 26074, - "www": 9667, - "wwwbigbaldhead": 30761, - "wwww": 34224, - "wwww": 25200, - "wwwww": 48268, - "wwx": 47431, - "wx": 18192, - "wx": 3561, - "wy": 4665, - "wy": 7625, - "wyatt": 21660, - "wyd": 33113, - "wye": 48436, - "wye": 43751, - "wylie": 49330, - "wyn": 11802, - "wyn": 17504, - "wynn": 36117, - "wynne": 35951, - "wynonna": 41456, - "wynonnaearp": 43755, - "wyoming": 18693, - "x": 87, - "x": 343, - "xa": 24831, - "xan": 45530, - "xander": 45601, - "xavi": 36342, - "xavier": 41044, - "xavier": 18567, - "xb": 33678, - "xbox": 18063, - "xbox": 7748, - "xboxone": 27410, - "xc": 12515, - "xchange": 49132, - "xd": 6380, - "xe": 42886, - "xe": 19183, - "xen": 15568, - "xer": 49005, - "xf": 35274, - "xfactor": 25211, - "xfinity": 35107, - "xford": 34732, - "xh": 45771, - "xham": 25284, - "xi": 2467, - "xi": 7376, - "xia": 19854, - "xia": 20724, - "xian": 42570, - "xiao": 49318, - "xiaomi": 27477, - "xico": 38469, - "xide": 17398, - "xie": 40122, - "xie": 15976, - "xii": 36525, - "xiii": 28199, - "xim": 11217, - "xin": 27053, - "xin": 41517, - "xing": 14383, - "xion": 24164, - "xis": 35793, - "xit": 5316, - "xiumin": 36563, - "xiv": 16125, - "xj": 42453, - "xl": 36529, - "xl": 8833, - "xley": 38223, - "xm": 18626, - "xma": 48805, - "xmas": 48848, - "xmas": 6425, - "xmen": 28708, - "xn": 25388, - "xo": 26936, - "xo": 9000, - "xon": 29186, - "xon": 8482, - "xox": 11531, - "xox": 34050, - "xoxo": 13313, - "xp": 15651, - "xper": 32200, - "xperia": 37615, - "xpo": 44377, - "xpress": 31809, - "xq": 40606, - "xr": 26276, - "xrp": 26965, - "xs": 16397, - "xt": 1052, - "xtina": 45520, - "xton": 32666, - "xton": 10597, - "xtra": 26969, - "xtre": 27025, - "xtreme": 33483, - "xu": 42063, - "xu": 37198, - "xv": 17768, - "xvi": 44031, - "xx": 5675, - "xx": 3553, - "xxl": 29777, - "xxx": 33923, - "xxx": 8352, - "xxxx": 32035, - "xxxx": 22819, - "xxxxx": 44195, - "xy": 20023, - "xy": 11443, - "y": 88, - "y": 344, - "ya": 5018, - "ya": 1430, - "yaa": 48847, - "yaa": 34498, - "yaan": 34680, - "yab": 27737, - "yach": 9039, - "yacht": 43806, - "yacht": 12859, - "yachts": 29260, - "yad": 13276, - "yad": 40047, - "yadav": 26650, - "yaf": 38019, - "yag": 35081, - "yah": 16170, - "yah": 12381, - "yaho": 37929, - "yahoo": 38152, - "yahoo": 16846, - "yak": 11014, - "yak": 29074, - "yaki": 44677, - "yaku": 29572, - "yakuza": 42628, - "yal": 16198, - "yal": 13418, - "yale": 39926, - "yale": 17157, - "yall": 9210, - "yam": 6666, - "yam": 19318, - "yama": 23512, - "yamaha": 18854, - "yan": 3949, - "yan": 4788, - "yana": 18698, - "yand": 38609, - "yang": 23818, - "yang": 12605, - "yani": 26439, - "yankee": 21554, - "yankees": 11889, - "yann": 40246, - "yann": 38657, - "yao": 45231, - "yap": 48700, - "yap": 34468, - "yar": 6786, - "yar": 23071, - "yard": 20234, - "yard": 4313, - "yards": 7550, - "yarmouth": 45941, - "yarn": 19702, - "yarra": 46824, - "yas": 8168, - "yas": 20570, - "yash": 30216, - "yash": 37836, - "yasi": 37700, - "yasss": 23873, - "yat": 29443, - "yat": 34965, - "yates": 27677, - "yatra": 38932, - "yav": 41275, - "yaw": 31989, - "yawn": 48643, - "yay": 20614, - "yay": 6712, - "yaya": 37608, - "yaz": 19348, - "yaz": 42252, - "yb": 41785, - "yb": 27615, - "yc": 11931, - "ycle": 38089, - "yd": 29896, - "yd": 9534, - "yday": 15899, - "yds": 24819, - "ye": 693, - "ye": 4582, - "yea": 13687, - "yeah": 29405, - "yeah": 3908, - "year": 5163, - "year": 935, - "yearbook": 21636, - "yearling": 48392, - "yearly": 24541, - "yearof": 31944, - "yearofthe": 47899, - "years": 30864, - "years": 1151, - "yearsof": 14932, - "yearswith": 45249, - "yeast": 25819, - "yeats": 44903, - "yed": 28137, - "yed": 3301, - "yee": 18114, - "yee": 23108, - "yeezy": 24901, - "yeg": 16854, - "yeg": 11976, - "yegfood": 48711, - "yeh": 21331, - "yel": 3323, - "yel": 48164, - "yell": 30824, - "yelled": 39199, - "yelling": 26581, - "yellow": 12059, - "yellow": 4481, - "yellowstone": 29241, - "yelp": 31674, - "yemen": 29276, - "yemen": 12513, - "yemeni": 44656, - "yemi": 42267, - "yen": 29602, - "yen": 17960, - "yeo": 32292, - "yeo": 43830, - "yeol": 15808, - "yeon": 16602, - "yep": 10964, - "yer": 15491, - "yer": 2371, - "yers": 3722, - "yes": 21620, - "yes": 1958, - "yess": 42778, - "yess": 40189, - "yesss": 36210, - "yessss": 45620, - "yester": 1905, - "yesterday": 1926, - "yesterdays": 36238, - "yesung": 38527, - "yet": 2296, - "yeti": 34228, - "yev": 39855, - "yew": 34660, - "yey": 45447, - "yg": 16396, - "ygk": 44758, - "ygo": 46166, - "yh": 41978, - "yi": 5826, - "yi": 14762, - "yield": 16825, - "yields": 24856, - "yikes": 25094, - "yin": 26476, - "yin": 23543, - "ying": 42933, - "ying": 910, - "yixing": 32120, - "yk": 30965, - "yl": 2656, - "yl": 4045, - "ylan": 41875, - "ylde": 42850, - "yle": 32305, - "yle": 10770, - "ylene": 34239, - "yler": 48081, - "yles": 42860, - "ylon": 22375, - "ylor": 48468, - "ym": 1786, - "ym": 19587, - "yman": 29077, - "ymc": 47101, - "ymca": 22369, - "yment": 8199, - "ymes": 39968, - "ymi": 5271, - "ymm": 37133, - "ymoun": 41426, - "ymouth": 36429, - "yn": 2823, - "yn": 4100, - "yne": 18238, - "ynes": 18020, - "ynn": 10499, - "ynna": 48292, - "ynwa": 27372, - "yo": 586, - "yo": 3497, - "yoda": 31922, - "yof": 5966, - "yofficial": 21818, - "yofthe": 43983, - "yog": 34985, - "yog": 36539, - "yoga": 25872, - "yoga": 5523, - "yogh": 32626, - "yoghurt": 33491, - "yogi": 22766, - "yogur": 16137, - "yogurt": 16819, - "yoh": 48880, - "yoke": 41969, - "yoko": 25929, - "yoko": 32256, - "yokohama": 42409, - "yol": 19387, - "yol": 35218, - "yolanda": 43845, - "yolo": 20905, - "yom": 34718, - "yom": 44527, - "yon": 10147, - "yon": 7604, - "yong": 27960, - "yong": 20887, - "yonge": 48592, - "yoo": 25842, - "yoo": 20775, - "yoon": 30863, - "yoon": 22113, - "yoona": 32736, - "yoongi": 24037, - "yor": 2028, - "yor": 21132, - "york": 5318, - "york": 2705, - "yorker": 23865, - "yorkers": 41041, - "yorks": 39093, - "yorkshi": 43367, - "yorkshire": 27007, - "yorkshire": 8633, - "yoruba": 46083, - "yos": 35607, - "yosemite": 25893, - "yoshi": 22920, - "yoshi": 25354, - "yot": 22875, - "yotes": 46157, - "yotpo": 26113, - "you": 1562, - "you": 592, - "youare": 33879, - "youcan": 32498, - "youknow": 47919, - "youknow": 41088, - "youn": 1596, - "young": 6939, - "young": 1888, - "younger": 10414, - "youngest": 12316, - "youngjae": 46426, - "youngster": 35881, - "youngsters": 28098, - "younow": 33831, - "your": 2130, - "your": 695, - "youre": 28344, - "youre": 19695, - "yourown": 28583, - "yours": 3834, - "yourself": 3053, - "yourselves": 19747, - "youth": 10743, - "youth": 3281, - "youthful": 37480, - "youths": 23614, - "youts": 22737, - "youtu": 13868, - "youtube": 31258, - "youtube": 3895, - "youtuber": 24720, - "youtubers": 36822, - "youu": 35055, - "youuu": 35324, - "youuuu": 47123, - "yoy": 41865, - "yp": 38370, - "yp": 34734, - "ypg": 37386, - "yql": 46122, - "yqr": 36881, - "yr": 18395, - "yr": 4333, - "yrs": 4822, - "ys": 1971, - "ys": 961, - "yser": 33121, - "ysis": 4843, - "ysl": 45681, - "ysm": 23842, - "yst": 40528, - "yt": 36777, - "yt": 14779, - "ytd": 47524, - "yte": 48172, - "yu": 3371, - "yu": 8887, - "yuan": 26236, - "yuck": 48282, - "yugo": 48231, - "yuh": 42547, - "yui": 47932, - "yuk": 17037, - "yuk": 24063, - "yuki": 34010, - "yukon": 27094, - "yul": 39832, - "yum": 6869, - "yum": 7259, - "yuma": 47566, - "yummy": 7687, - "yun": 14976, - "yun": 18288, - "yung": 44545, - "yung": 17676, - "yunho": 39748, - "yup": 13231, - "yur": 42533, - "yuri": 23823, - "yusuf": 33222, - "yuv": 36784, - "yves": 33698, - "yvon": 23327, - "yvonne": 32583, - "yvr": 29058, - "yw": 33741, - "yx": 35624, - "yxe": 34240, - "yy": 3433, - "yy": 8321, - "yya": 37444, - "yyc": 27542, - "yyc": 11741, - "yyj": 26203, - "yyy": 11514, - "yyyy": 38749, - "yyyy": 16955, - "yyyyy": 26089, - "yyyyyy": 47055, - "yz": 37579, - "yz": 46451, - "yü": 48232, - "z": 89, - "z": 345, - "za": 3710, - "za": 2186, - "zab": 22982, - "zable": 37002, - "zac": 25501, - "zac": 19159, - "zach": 13401, - "zach": 11815, - "zachary": 32401, - "zack": 30567, - "zack": 19120, - "zad": 47314, - "zad": 27838, - "zada": 34889, - "zaf": 21837, - "zafar": 46668, - "zag": 26091, - "zag": 29346, - "zagre": 34107, - "zagreb": 35355, - "zah": 23258, - "zah": 43297, - "zaha": 44408, - "zai": 44329, - "zai": 27065, - "zain": 34400, - "zain": 45366, - "zak": 13050, - "zak": 20738, - "zaki": 48091, - "zal": 20552, - "zal": 33298, - "zam": 7218, - "zam": 41578, - "zambia": 21671, - "zan": 7284, - "zan": 17835, - "zana": 39643, - "zand": 37712, - "zane": 34786, - "zani": 45373, - "zania": 15059, - "zano": 27637, - "zanzi": 47835, - "zap": 24134, - "zapp": 33504, - "zappa": 46592, - "zar": 5458, - "zar": 16392, - "zara": 24454, - "zardari": 20174, - "zas": 48261, - "zation": 3683, - "zawa": 49281, - "zay": 7102, - "zayed": 36726, - "zayn": 22292, - "zayn": 10308, - "zaynmalik": 25278, - "zazzle": 47857, - "ze": 2254, - "ze": 1298, - "zeal": 44951, - "zealand": 7618, - "zeb": 46518, - "zebra": 47394, - "zebra": 22548, - "zed": 21047, - "zed": 1993, - "zedd": 45608, - "zee": 25468, - "zee": 14080, - "zeiss": 47460, - "zeit": 37898, - "zeit": 37906, - "zek": 40829, - "zeke": 47065, - "zel": 10389, - "zel": 12027, - "zelda": 17138, - "zell": 39526, - "zen": 8518, - "zen": 3928, - "zend": 33478, - "zendaya": 35956, - "zenith": 44740, - "zens": 15298, - "zeph": 40726, - "zepp": 22977, - "zeppelin": 25408, - "zer": 6118, - "zer": 3716, - "zero": 14867, - "zero": 5848, - "zers": 9547, - "zes": 4073, - "zest": 37709, - "zet": 34098, - "zeta": 30954, - "zetta": 45993, - "zeus": 32800, - "zey": 46647, - "zh": 33389, - "zh": 41621, - "zhang": 21127, - "zhen": 37374, - "zhen": 33236, - "zhou": 17384, - "zhu": 42049, - "zi": 2651, - "zi": 5819, - "zia": 13764, - "zid": 30235, - "zidane": 34643, - "zie": 29316, - "zie": 8956, - "zieg": 40157, - "ziegler": 46812, - "ziel": 32151, - "zier": 15399, - "zies": 38001, - "ziest": 28159, - "zig": 15950, - "zig": 21345, - "ziggy": 39274, - "zik": 30125, - "zika": 28783, - "zil": 25039, - "zil": 33190, - "zilla": 17879, - "zim": 8112, - "zim": 22577, - "zimbab": 12373, - "zimbabwe": 45668, - "zimbabwe": 13583, - "zimmer": 27452, - "zimmer": 35211, - "zimmerman": 38231, - "zin": 14085, - "zin": 21278, - "zinc": 27458, - "zind": 26206, - "zindabad": 42208, - "zine": 16100, - "zing": 25062, - "zing": 3152, - "zinger": 42027, - "zio": 13906, - "zion": 31763, - "zion": 20963, - "zione": 36161, - "zionist": 33078, - "zip": 26479, - "zip": 16083, - "zipper": 33670, - "zir": 31892, - "zl": 39168, - "zlat": 32489, - "zlatan": 37877, - "zm": 43691, - "zman": 24248, - "zn": 18004, - "zo": 4397, - "zo": 5056, - "zodi": 22660, - "zodiac": 27753, - "zoe": 43114, - "zoe": 16662, - "zoey": 39871, - "zog": 40680, - "zol": 25939, - "zola": 46105, - "zom": 6623, - "zombi": 29452, - "zombie": 11819, - "zombies": 46702, - "zombies": 16517, - "zon": 15109, - "zon": 14618, - "zona": 42134, - "zone": 37197, - "zone": 4442, - "zones": 17247, - "zoning": 36790, - "zoo": 8182, - "zoo": 7147, - "zoom": 32671, - "zoom": 13909, - "zor": 17605, - "zou": 38072, - "zr": 39275, - "zs": 35248, - "zshq": 41442, - "zt": 42629, - "zu": 4091, - "zu": 14184, - "zucchini": 29873, - "zucker": 26890, - "zuckerberg": 30066, - "zul": 31146, - "zulu": 32821, - "zum": 35094, - "zuma": 23326, - "zumba": 32976, - "zun": 42440, - "zur": 17128, - "zurich": 21288, - "zw": 42188, - "zx": 31604, - "zy": 6615, - "zy": 2303, - "zyk": 39112, - "zyme": 36472, - "zyn": 45287, - "zz": 1544, - "zz": 4943, - "zza": 14642, - "zzi": 13974, - "zzie": 18635, - "zzle": 7873, - "zzled": 39075, - "zzo": 14036, - "zzy": 21275, - "zzy": 8353, - "zzz": 20055, - "zzzz": 35742, - "zzzz": 43103, - "{": 90, - "{": 346, - "{}": 39025, - "|": 91, - "|#": 31183, - "|": 347, - "|@": 41677, - "||": 7566, - "}": 92, - "}": 348, - "~": 93, - "~!": 31181, - "~\"": 48442, - "~": 349, - "~>": 43291, - "~@": 44247, - "~~": 11461, - "~~": 16671, - "~~~": 32472, - "~~~~": 28295, - "¡": 94, - "¡": 350, - "¡ï¸ı": 15113, - "¡ï¸ı": 4174, - "¡ľ": 43991, - "¢": 95, - "¢": 351, - "£": 96, - "£": 352, - "£ï¸ı": 18446, - "¤": 97, - "¤": 353, - "¥": 98, - "¥": 354, - "¦": 99, - "¦": 355, - "¦Ī": 47615, - "§": 100, - "§": 356, - "¨": 101, - "¨": 357, - "©": 102, - "©": 358, - "ª": 103, - "ª": 359, - "«": 104, - "«": 360, - "¬": 105, - "¬": 361, - "¬ë": 31736, - "®": 106, - "®": 362, - "¯": 107, - "¯": 363, - "°": 108, - "°:": 21787, - "°": 364, - "°ï¸ı": 34777, - "±": 109, - "±": 365, - "±ï¸ı": 41020, - "²": 110, - "²": 366, - "³": 111, - "³": 367, - "³ï¸ı": 22195, - "³ï¸ı": 24706, - "´": 112, - "´": 368, - "µ": 113, - "µ": 369, - "µï¸ı": 27605, - "¶": 114, - "¶": 370, - "·": 115, - "·": 371, - "¸": 116, - "¸": 372, - "¸ë": 19693, - "¹": 117, - "¹": 373, - "º": 118, - "º": 374, - "»": 119, - "»": 375, - "¼": 120, - "¼": 376, - "½": 121, - "½": 377, - "½ï¸ı": 31333, - "¾": 122, - "¾": 378, - "¿": 123, - "¿": 379, - "À": 124, - "À": 380, - "Á": 125, - "Á": 381, - "Â": 126, - "Â": 382, - "¡": 26868, - "¡": 10830, - "¡¡": 45505, - "¢": 41359, - "£": 31117, - "£": 1950, - "Â¥": 20199, - "¨": 19957, - "¨¨": 23089, - "¨¨¨¨": 41223, - "©": 31148, - "©": 5811, - "«": 14434, - "®": 30857, - "®": 8436, - "¯": 38682, - "¯": 43593, - "¯\\": 44096, - "¯\\_(": 45115, - "°": 21305, - "°": 6858, - "²": 41175, - "´": 30560, - "´": 12559, - "·": 14844, - "º": 28059, - "»": 31642, - "»": 7599, - "½": 33613, - "¿": 44559, - "¿": 17133, - "ÂŃ": 22618, - "Ã": 127, - "Ã": 383, - "á": 7261, - "á": 22229, - "án": 38340, - "án": 21385, - "â": 26170, - "ã": 19339, - "ão": 21141, - "ä": 10896, - "ä": 47276, - "än": 42787, - "Ã¥": 23176, - "æ": 42495, - "ç": 10067, - "ça": 22711, - "è": 12138, - "è": 37761, - "ère": 30272, - "ès": 41210, - "é": 3459, - "é": 4166, - "éal": 45251, - "ée": 13489, - "és": 20507, - "ê": 27515, - "ë": 29526, - "ë": 40520, - "î": 48704, - "ï": 35689, - "ñ": 6445, - "ña": 17753, - "ño": 16574, - "ños": 40104, - "ó": 8891, - "ó": 27733, - "ón": 13926, - "ô": 26815, - "ö": 7255, - "ö": 37423, - "ör": 31762, - "ø": 17483, - "ø": 45598, - "ú": 17963, - "ú": 36019, - "ü": 6522, - "ü": 47177, - "ür": 26132, - "ÃĹ": 16165, - "Ãł": 36149, - "Ãł": 21259, - "ÃŃ": 8366, - "ÃŃ": 23928, - "ÃŃa": 16609, - "ÃŃn": 33623, - "Ä": 128, - "Ä": 384, - "ı": 18562, - "ı": 41901, - "Äģ": 23134, - "Äĩ": 31719, - "Äį": 45414, - "ÄŁ": 26540, - "Å": 129, - "Å": 385, - "Å¡": 35621, - "ÅĤ": 40419, - "Åį": 41267, - "ÅŁ": 21254, - "ÅŁ": 40706, - "Æ": 130, - "Æ": 386, - "Ç": 131, - "Ç": 387, - "È": 132, - "È": 388, - "É": 133, - "É": 389, - "Ê": 134, - "Ê": 390, - "Ë": 135, - "Ë": 391, - "Ì": 136, - "Ì": 392, - "Ìĩ": 16384, - "Í": 137, - "Í": 393, - "Î": 138, - "Î": 394, - "Ï": 139, - "Ï": 395, - "Ïī": 38065, - "Ð": 140, - "Ð": 396, - "а": 16912, - "а": 27080, - "аÐ": 31090, - "в": 39813, - "е": 22176, - "и": 16701, - "иÐ": 29503, - "к": 27152, - "л": 47611, - "м": 38018, - "н": 22705, - "о": 13506, - "о": 29386, - "оÐ": 20978, - "од": 38416, - "оÑĤ": 28599, - "п": 26302, - "пÑĢи": 46321, - "пÑĢиÑĢода": 48150, - "Ñ": 141, - "Ñ": 397, - "ÑĢ": 16370, - "ÑĢи": 41092, - "ÑĢод": 47039, - "ÑĢода": 47929, - "Ñģ": 23669, - "ÑĤ": 17875, - "Ñĥ": 39729, - "ÑĦ": 27993, - "ÑĦоÑĤ": 35155, - "ÑĦоÑĤо": 38981, - "Ñĭ": 45001, - "Ò": 142, - "Ò": 398, - "Ó": 143, - "Ó": 399, - "Ô": 144, - "Ô": 400, - "Õ": 145, - "Õ": 401, - "Ö": 146, - "Ö": 402, - "×": 147, - "×": 403, - "Ø": 148, - "Ø": 404, - "ا": 6042, - "ا": 22625, - "اØ": 13189, - "ار": 40137, - "اÙ": 8453, - "اÙĦ": 12973, - "اÙħ": 47626, - "اÙĨ": 42773, - "اÙĨ": 33200, - "ب": 16378, - "ب": 35330, - "Ø©": 20915, - "ت": 18197, - "ت": 44333, - "ج": 26375, - "Ø®": 41495, - "د": 19872, - "د": 35566, - "ر": 10948, - "ر": 24933, - "رÙĬ": 43273, - "ز": 36169, - "س": 17856, - "Ø´": 28770, - "ص": 27271, - "Ø·": 32050, - "ع": 18843, - "غ": 48510, - "ØŃ": 25722, - "Ù": 149, - "Ù": 405, - "Ùģ": 24112, - "ÙĤ": 27585, - "Ùĥ": 33499, - "ÙĦ": 14251, - "ÙĦ": 37899, - "Ùħ": 12986, - "Ùħ": 29945, - "ÙĨ": 16655, - "ÙĨ": 25386, - "Ùĩ": 34274, - "Ùĩ": 31343, - "ÙĪ": 12203, - "ÙĪ": 38310, - "ÙĪØ±": 48242, - "ÙĬ": 12046, - "ÙĬ": 23853, - "Ú": 150, - "Ú": 406, - "Ú©": 26475, - "Û": 151, - "Û": 407, - "Ûģ": 40480, - "ÛĮ": 21452, - "ÛĮ": 32703, - "Ü": 152, - "Ü": 408, - "Ý": 153, - "Ý": 409, - "Þ": 154, - "Þ": 410, - "ß": 155, - "ß": 411, - "à": 156, - "à": 412, - "à¤": 3124, - "त": 27263, - "द": 29552, - "न": 26090, - "प": 44149, - "ब": 43599, - "म": 48254, - "म": 26774, - "य": 37299, - "र": 39136, - "र": 19052, - "ल": 30881, - "व": 39545, - "श": 43181, - "स": 28505, - "ह": 29446, - "ा": 37973, - "ा": 13343, - "ि": 26721, - "à¤Ĥ": 30833, - "à¤ķ": 22067, - "à¤Ĺ": 42598, - "à¤ľ": 39561, - "à¥": 7410, - "à¥Ģ": 45791, - "à¥Ģ": 25751, - "à¥ģ": 39653, - "à¥ĩ": 48612, - "à¥ĩ": 25130, - "à¥ĭ": 34452, - "à¥į": 19389, - "à¦": 11322, - "া": 41532, - "à§": 26339, - "à¨": 15741, - "à©": 32086, - "àª": 22990, - "à«": 48347, - "à¬": 32791, - "à®": 6022, - "த": 34691, - "ன": 43394, - "ப": 47388, - "à®®": 35463, - "à®°": 43270, - "ல": 47705, - "ா": 32831, - "ி": 27126, - "à®ķ": 36168, - "à®Ł": 45263, - "à¯": 11259, - "à¯ģ": 33115, - "à¯į": 16631, - "à°": 12100, - "à±": 23550, - "à±į": 46098, - "à²": 9992, - "ಿ": 47797, - "à³": 20745, - "à³į": 36148, - "à´": 15418, - "àµ": 27392, - "àµį": 45266, - "à¶": 29881, - "à·": 30766, - "à¸": 1777, - "ม": 26137, - "ม": 29570, - "ย": 27241, - "ย": 33091, - "ร": 32225, - "ร": 27331, - "ล": 34696, - "ล": 32746, - "ว": 26990, - "ว": 30245, - "ส": 37883, - "ส": 35737, - "ห": 33064, - "ะ": 43920, - "ะ": 49234, - "ั": 14978, - "า": 11529, - "า": 38476, - "าà¸": 12330, - "ิ": 17092, - "ี": 22421, - "ี": 20278, - "ีà¹Ī": 31511, - "ื": 47991, - "ุ": 30524, - "ู": 35273, - "à¸ģ": 30767, - "à¸ģà¸": 31474, - "à¸Ħ": 31757, - "à¸Ħà¸": 39628, - "à¸ĩ": 24603, - "à¸ĩ": 33382, - "à¸Ī": 47608, - "à¸Ĭ": 46324, - "à¸Ķ": 31107, - "à¸Ķ": 38825, - "à¸ķ": 40273, - "à¸ķ": 41108, - "à¸Ĺ": 36171, - "à¸Ļ": 17474, - "à¸Ļ": 17639, - "à¸Ļà¸": 23121, - "à¸ļ": 33859, - "à¸ļ": 39616, - "à¸ŀ": 48171, - "à¸Ń": 13398, - "à¸Ń": 32818, - "à¸Ńà¸": 14649, - "à¸Ńà¸ĩ": 46622, - "à¹": 4484, - "à¹Ģ": 13729, - "à¹Ģà¸": 14076, - "à¹ģà¸": 23916, - "à¹Ĥ": 33118, - "à¹ĥ": 40962, - "à¹Ħà¸": 31718, - "à¹ĩ": 38699, - "à¹Ī": 11722, - "à¹ī": 13123, - "à¹Į": 28353, - "à¼": 46186, - "à½": 39219, - "á": 157, - "á": 413, - "á´": 19036, - "áµ": 17330, - "áĢ": 45932, - "áĥ": 24829, - "áĥ¦": 32193, - "â": 158, - "â": 414, - "â¤": 25087, - "⤵ï¸ı": 36026, - "â¬": 7930, - "â¬ħï¸ı": 42111, - "â¬Ĩ": 27718, - "â¬Ĩï¸ı": 32798, - "â¬ĩ": 10917, - "â¬ĩ": 39370, - "â¬ĩï¸ı": 25621, - "â¬ĩï¸ı": 13984, - "â¬ĩï¸ıâ¬ĩï¸ı": 40159, - "âĢ": 728, - "âĢ¢": 9485, - "âĢ¢": 2701, - "âĢ¢âĢ¢": 15006, - "âĢ¢âĢ¢": 47575, - "âĢ¢âĢ¢âĢ¢âĢ¢": 27502, - "âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢": 48630, - "â̦": 7095, - "â̦\"": 20215, - "â̦..": 47779, - "â̦.": 18615, - "â̦/": 29842, - "â̦": 959, - "â̦â̦": 40066, - "â̲": 32633, - "â̳": 25061, - "â̼": 6578, - "â̼ï¸ı": 15622, - "â̼ï¸ı": 8310, - "â̼ï¸ıâ̼ï¸ı": 33218, - "âĢĭ": 17086, - "âĢĭ": 9844, - "âĢį": 4244, - "âĢįâĻ": 5177, - "âĢįâĻĢï¸ı": 18897, - "âĢįâĻĢï¸ı": 9605, - "âĢįâĻĤ": 8832, - "âĢįâĻĤï¸ı": 21779, - "âĢįâĻĤï¸ı": 10613, - "âĢİ": 31001, - "âĢIJ": 34512, - "âĢĵ": 21070, - "âĢĵ": 1224, - "âĢĶ": 6718, - "âĢĶ": 2005, - "âĢĶ>": 26341, - "âĢĶ@": 28470, - "âĢĶâĢĶ": 10037, - "âĢĶâĢĶ": 44800, - "âĢĶâĢĶâĢĶâĢĶ": 17797, - "âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ": 34432, - "âĢķ": 14236, - "âģ": 1667, - "âģ£": 31089, - "âģ£": 16845, - "âģ¦": 2773, - "âģ¦": 34855, - "âģ¦@": 2859, - "âģ¦âģ¦@": 27783, - "âģ©": 20097, - "âģ©,": 48749, - "âģ©.": 35777, - "âģ©": 2918, - "âģīï¸ı": 46534, - "âģł": 23881, - "âģł": 13503, - "âģłâģł": 33488, - "âĤ": 5227, - "âĤ¬": 34919, - "âĤ¬": 6309, - "âĤ¹": 21777, - "âĥ": 2805, - "âĥ£": 11250, - "âĥ£": 3076, - "âĥ£@": 48291, - "âĦ": 8604, - "âĦ¢": 29438, - "âĦ¢": 11675, - "âĦ¹": 45462, - "âĨ": 6059, - "âĨĴ": 7481, - "âĨĵ": 41603, - "âĩ": 27228, - "âĪ": 17788, - "âī": 22684, - "âīĪ": 45451, - "âĮ": 17848, - "âĮļ": 31301, - "âĮļï¸ı": 35931, - "âı": 7960, - "âı©": 40847, - "âı°": 12714, - "âı±": 33149, - "âı³": 47617, - "âĵ": 27400, - "âĶ": 13389, - "âĶĢ": 45139, - "âĶģ": 42022, - "âķ": 17027, - "âķIJ": 48039, - "âĸ": 4168, - "âĸª": 21203, - "âĸª": 36628, - "âĸªï¸ı": 24974, - "âĸ«": 39478, - "âĸ¬": 33798, - "âĸ¬âĸ¬": 36975, - "âĸ¶": 12509, - "âĸ¶": 21126, - "âĸ¶ï¸ı": 14442, - "âĸº": 46061, - "âĸº": 12086, - "âĸ½": 45634, - "âĸł": 36791, - "âĹ": 9323, - "âĹĨ": 48961, - "âĹı": 26999, - "âĺ": 1741, - "âĺ®": 45851, - "âĺ¹": 28811, - "âĺ¹ï¸ı": 39605, - "âĺº": 5010, - "âĺº": 8703, - "âĺºâĺº": 46051, - "âĺºï¸ı": 11506, - "âĺºï¸ı": 7779, - "âĺºï¸ıâĺºï¸ı": 41315, - "âĺ¼": 38877, - "âĺĢ": 32146, - "âĺĢ": 22242, - "âĺĢï¸ı": 12817, - "âĺĢï¸ı": 8219, - "âĺĢï¸ıâĺĢï¸ı": 44550, - "âĺģ": 25195, - "âĺģï¸ı": 35197, - "âĺĥ": 38972, - "âĺħ": 9339, - "âĺħ": 10643, - "âĺħâĺħ": 12681, - "âĺħâĺħ": 36644, - "âĺħâĺħâĺħâĺħ": 34431, - "âĺħâĺħâĺħâĺħ": 44034, - "âĺħâĺħâĺħâĺħâĺħ": 45984, - "âĺĨ": 23941, - "âĺĨ": 13439, - "âĺİ": 24045, - "âĺİ": 45493, - "âĺİï¸ı": 27219, - "âĺij": 20983, - "âĺij": 42300, - "âĺijï¸ı": 22291, - "âĺĶï¸ı": 31238, - "âĺķ": 11454, - "âĺķ": 26561, - "âĺķï¸ı": 25839, - "âĺķï¸ı": 15499, - "âĺĺ": 23483, - "âĺĺï¸ı": 31454, - "âĺĿ": 21982, - "âĺĿï¸ı": 38891, - "âĺŀ": 31255, - "âĺłï¸ı": 34672, - "âĻ": 1548, - "âĻ¡": 11091, - "âĻ¡": 6251, - "âĻ¡âĻ¡": 22360, - "âĻ¡âĻ¡": 34267, - "âĻ¡âĻ¡âĻ¡": 36611, - "âϤ": 47435, - "âĻ¥": 4622, - "âĻ¥": 3405, - "âĻ¥âĻ¥": 12975, - "âĻ¥âĻ¥": 19604, - "âĻ¥âĻ¥âĻ¥": 23255, - "âĻ¥âĻ¥âĻ¥âĻ¥": 49020, - "âĻ¥ï¸ı": 17774, - "âĻ¥ï¸ı": 10561, - "âĻ¥ï¸ıâĻ¥ï¸ı": 40309, - "âϦ": 32376, - "âϦ": 47547, - "âĻ©": 30339, - "âĻ©âĻ«": 31636, - "âĻª": 27364, - "âĻª": 12382, - "âĻ«": 39217, - "âĻ«": 10814, - "âϬ": 24753, - "âĻ»": 39611, - "âĻ»ï¸ı": 46075, - "âļ": 2234, - "âļ¡": 40098, - "âļ¡": 20712, - "âļ¡ï¸ı": 19500, - "âļ¡ï¸ı": 11605, - "âļ¡ï¸ıâļ¡ï¸ı": 45922, - "âļª": 11922, - "âļª": 36373, - "âļªï¸ı": 22251, - "âļªï¸ı": 17885, - "âļ«": 15374, - "âļ«ï¸ı": 26529, - "âļ«ï¸ı": 24649, - "âļ½": 4867, - "âļ½": 13173, - "âļ½âļ½": 43259, - "âļ½ï¸ı": 11342, - "âļ½ï¸ı": 6768, - "âļ½ï¸ıâļ½ï¸ı": 30358, - "âļ½ï¸ıâļ½ï¸ı": 44148, - "âļ¾": 11314, - "âļ¾": 34717, - "âļ¾ï¸ı": 24727, - "âļ¾ï¸ı": 14858, - "âļĵ": 23522, - "âļĵï¸ı": 35299, - "âļĶï¸ı": 29361, - "âļľ": 47491, - "âļł": 39203, - "âļłï¸ı": 40966, - "âļłï¸ı": 15596, - "âĽ": 7956, - "âĽ³ï¸ı": 29204, - "âĽĦ": 30668, - "âĽĦï¸ı": 45465, - "âľ": 1508, - "⾨": 7181, - "⾨": 3531, - "⾨⾨": 35174, - "⾨⾨": 21985, - "⾨⾨⾨": 39424, - "âľĤ": 38602, - "âľħ": 29544, - "âľħ": 5564, - "âľĪ": 10682, - "âľĪ": 30712, - "âľĪï¸ı": 26176, - "âľĪï¸ı": 13413, - "âľĬ": 12392, - "âľĬ": 17819, - "âľĬðŁı½": 48547, - "âľĬðŁı¾": 41185, - "âľĭ": 39383, - "âľĭ": 30239, - "âľĮ": 6419, - "âľĮ": 12656, - "âľĮï¸ı": 21906, - "âľĮï¸ı": 12239, - "âľĮðŁı»": 30538, - "âľĮðŁı¼": 30588, - "âľį": 20872, - "âľįï¸ı": 30888, - "âľı": 32574, - "âľıï¸ı": 40724, - "âľĵ": 36700, - "âľĶ": 47200, - "âľĶ": 13749, - "âľĶï¸ı": 40544, - "âľĶï¸ı": 9191, - "âľĸï¸ı": 44133, - "âľĿ": 42220, - "âĿ": 1045, - "âĿ£": 37007, - "âĿ£": 25623, - "âĿ£ï¸ı": 25240, - "âĿ¤": 1266, - "âĿ¤": 2720, - "âĿ¤âĿ¤": 9033, - "âĿ¤âĿ¤": 14058, - "âĿ¤âĿ¤âĿ¤": 16708, - "âĿ¤âĿ¤âĿ¤âĿ¤": 37918, - "âĿ¤âĿ¤âĿ¤âĿ¤": 43970, - "âĿ¤ï¸ı": 2626, - "âĿ¤ï¸ı#": 30281, - "âĿ¤ï¸ı.": 45326, - "âĿ¤ï¸ı": 1752, - "âĿ¤ï¸ı@": 31187, - "âĿ¤ï¸ıâĿ¤ï¸ı": 6713, - "âĿ¤ï¸ıâĿ¤ï¸ı": 10363, - "âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı": 12282, - "âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı": 39167, - "âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı": 29880, - "âĿ¤ï¸ıðŁĴĻ": 37380, - "âĿ¤ï¸ıðŁĺį": 37272, - "âĿ¤ï¸ıðŁĺĺ": 41800, - "âĿ¤ðŁĺį": 49120, - "âĿ¥": 36914, - "âĿĦ": 8501, - "âĿĦ": 30494, - "âĿĦï¸ı": 16834, - "âĿĦï¸ı": 12402, - "âĿĦï¸ıâĿĦï¸ı": 41626, - "âĿĮ": 44485, - "âĿĮ": 17975, - "âĿĵ": 29791, - "âĿĹ": 12868, - "âĿĹ": 29079, - "âĿĹï¸ı": 28642, - "âĿĹï¸ı": 17391, - "âĿĿ": 46951, - "âŀ": 3257, - "âŀ¡": 12854, - "âŀ¡ï¸ı": 31860, - "âŀ¡ï¸ı": 4956, - "âŀ¤": 18651, - "âŀķ": 46526, - "âŀĸ": 21327, - "âŀĸ": 34902, - "âŀĸâŀĸ": 23316, - "âŀĸâŀĸâŀĸâŀĸ": 40401, - "âŀľ": 23775, - "âł": 5689, - "âłĢ": 9691, - "âłĢ": 8621, - "âłĢâłĢ": 11466, - "âłĢâłĢ": 39092, - "âłĢâłĢâłĢâłĢ": 20976, - "âłĢâłĢâłĢâłĢâłĢâłĢâłĢâłĢ": 46063, - "âŃ": 5527, - "âŃIJ": 6410, - "âŃIJ": 19012, - "âŃIJâŃIJ": 32663, - "âŃIJï¸ı": 12427, - "âŃIJï¸ı": 10251, - "âŃIJï¸ıâŃIJï¸ı": 18640, - "âŃIJï¸ıâŃIJï¸ıâŃIJï¸ı": 40746, - "ã": 159, - "ã": 415, - "ãĢ": 4092, - "ãĢģ": 45262, - "ãĢĤ": 38060, - "ãĢĤ": 38000, - "ãĢĬ": 39920, - "ãĢĭ": 32898, - "ãĢĮ": 18116, - "ãĢį": 19149, - "ãĢİ": 26947, - "ãĢı": 30293, - "ãĢIJ": 12534, - "ãĢij": 12990, - "ãĢľ": 39581, - "ãģ": 4813, - "ãģ¦": 48029, - "ãģ¨": 34671, - "ãģ¨ç¹ĭãģ": 47310, - "ãģ¨ç¹ĭãģĮãĤĬãģŁãģĦ": 48290, - "ãģª": 29104, - "ãģ®": 21575, - "ãģ·": 44130, - "ãģĦ": 33523, - "ãģĦ": 38850, - "ãģĨ": 44235, - "ãģį": 42184, - "ãĤ": 3909, - "ãĤ¢": 26560, - "ãĤ¤": 19319, - "ãĤ¤ãĥ": 36294, - "ãĤ«": 37367, - "ãĤ¯": 31574, - "ãĤ·": 37665, - "ãĤ¸": 32234, - "ãĤ¸ãĥ": 43491, - "ãĤ¹": 22694, - "ãĤ¹": 39220, - "ãĤ¹ãĥ": 32421, - "ãĤ¿": 34941, - "ãĤĬãģ": 40500, - "ãĤĮ": 45211, - "ãĤŃ": 47121, - "ãĥ": 2429, - "ãĥ©": 23007, - "ãĥª": 32115, - "ãĥ«": 33257, - "ãĥ¬": 32965, - "ãĥ³": 17671, - "ãĥ³": 26875, - "ãĥ³ãĤ": 45105, - "ãĥ³ãĥ": 25914, - "ãĥ»": 8415, - "ãĥ»": 11158, - "ãĥ»ãĥ»": 13949, - "ãĥ»ãĥ»ãĥ»": 14234, - "ãĥ¼": 13457, - "ãĥ¼": 30391, - "ãĥ¼ãĥ": 18584, - "ãĥĥ": 28902, - "ãĥĦ": 32173, - "ãĥĪ": 42384, - "ãĥİ": 39967, - "ãĥķãĤ": 33371, - "ãĥŀ": 48924, - "ãĥŃ": 35827, - "ãħ": 5947, - "ãħ¤": 21096, - "ãħ¤ãħ¤": 22583, - "ãħ¤ãħ¤ãħ¤ãħ¤": 39329, - "ãħĭ": 13052, - "ãħĭ": 25108, - "ãħĭãħĭ": 16604, - "ãħĭãħĭ": 42581, - "ãħĭãħĭãħĭ": 46407, - "ãħĭãħĭãħĭãħĭ": 39362, - "ãħł": 16089, - "ãħł": 25781, - "ãħłãħł": 22021, - "ãħłãħł": 34398, - "ãħłãħłãħłãħł": 47028, - "ä": 160, - "ä": 416, - "ä¸": 19759, - "ä¹": 41854, - "äº": 21078, - "人": 36839, - "ä»": 37743, - "ä½": 47466, - "å": 161, - "å": 417, - "å¤": 23170, - "å¥": 29290, - "å®": 27047, - "å°": 34720, - "å±": 46096, - "å¸": 42021, - "å¹": 38780, - "åħ": 34314, - "åĨ": 27972, - "åĨĻ": 44653, - "åĪ": 42748, - "åĭ": 47505, - "åı": 34517, - "åIJ": 41673, - "åĽ": 39027, - "åľ": 37746, - "åŃ": 35751, - "æ": 162, - "æ": 418, - "æĸ": 29032, - "æĹ": 22265, - "æĹ¥": 39121, - "æĹ¥": 37156, - "æĺ": 42891, - "æĻ": 48132, - "æľ": 19277, - "æľ¬": 44353, - "æĿ": 27667, - "æĿ±": 48338, - "ç": 163, - "ç": 419, - "ç¥": 26369, - "ç¥Ń": 42557, - "çµ": 37810, - "ç¹": 43431, - "ç¹ĭãģ": 45930, - "çĶ": 20211, - "çĶŁ": 33375, - "çľ": 33440, - "羣": 41570, - "è": 164, - "è": 420, - "èª": 34002, - "èªķ": 41293, - "é": 165, - "é": 421, - "éģ": 44854, - "éĩ": 38283, - "ê": 166, - "ê": 422, - "ê°": 21122, - "ê°ĵ": 41076, - "ê°ĵìĦ¸ë¸IJ": 41689, - "ê°ķ": 45758, - "ê²": 35555, - "ê³": 36216, - "êµ": 31871, - "ê·": 42680, - "ê¸": 32495, - "ê¹": 24531, - "ê¹Ģ": 25203, - "ë": 167, - "ë": 423, - "ë¦": 24621, - "리": 47649, - "ë§": 28024, - "ë§Ī": 40027, - "ëª": 36311, - "ë¯": 19528, - "민": 34442, - "민": 44632, - "ë°": 15810, - "ë°©": 23273, - "ë°©íĥ": 25081, - "ë°©íĥĦ": 25641, - "ë°©íĥĦìĨĮëħĦëĭ": 26068, - "ë°©íĥĦìĨĮëħĦëĭ¨": 27129, - "ë°ķ": 40988, - "ë²": 48267, - "ë³": 44693, - "ë¹": 24193, - "ëĤ": 27252, - "ëĤĺ": 48484, - "ëĭ": 13094, - "ëĭ¤": 46680, - "ëĭĪ": 33708, - "ëį": 45543, - "ëı": 31972, - "ëĵ": 30850, - "ëĿ": 44317, - "ì": 168, - "ì": 424, - "ì£": 39856, - "주": 45161, - "ì¤": 31153, - "ì§": 16279, - "ì§Ģ": 28836, - "ì§Ħ": 38890, - "ì°": 40742, - "ì¶": 42476, - "ì¶ķ": 46403, - "ì¶ķíķĺ": 47866, - "ì¹": 45088, - "ìĤ": 31061, - "ìĥ": 30587, - "ìĥĿ": 47858, - "ìĦ": 15074, - "ìĦ¸ë": 29254, - "ìĦ¸ë¸": 29658, - "ìĦ¸ë¸IJ": 41415, - "ìĨ": 15115, - "ìĨĮë": 20515, - "ìĨĮëħ": 21391, - "ìĨĮëħĦëĭ": 25887, - "ìĪ": 32757, - "ìĬ": 12125, - "ìĬ¤": 20305, - "ìĬ¤": 23829, - "ìĭ": 23924, - "ìķ": 16071, - "ìķĦ": 23233, - "ìĸ": 31625, - "ìĹ": 13252, - "ìĹIJ": 37622, - "ìĹij": 31036, - "ìĹijìĨ": 42763, - "ìĹijìĨĮ": 45606, - "ìĺ": 21144, - "ìĻ": 39405, - "ìļ": 18541, - "ìļ°": 38415, - "ìļ°": 49344, - "ìĽ": 22543, - "ìĽIJ": 36495, - "ìľ": 20909, - "ìľł": 42890, - "ìĿ": 8276, - "ìĿ´": 12286, - "ìĿ´": 34746, - "ìĿ´ì": 37590, - "ìĿ¼": 43406, - "ìŀ": 20849, - "ìł": 20580, - "ìłķ": 34725, - "í": 169, - "í": 425, - "íģ": 35641, - "íģ¬": 45832, - "íĤ": 43565, - "íĥ": 15012, - "íĥĢ": 41126, - "íĥľ": 37663, - "íĬ": 23215, - "íĬ¸": 48974, - "íĬ¸": 39820, - "íĭ": 34350, - "íĶ": 29450, - "íķ": 15197, - "íķ´": 35286, - "íķĺ": 33992, - "íĺ": 15962, - "íĺ¸": 39657, - "íĺĦ": 34645, - "íĻ": 31882, - "î": 170, - "î": 426, - "îĢ": 36288, - "îĦ": 35368, - "îĮ": 41006, - "îIJ": 16929, - "îIJĴ": 40100, - "ï": 171, - "ï": 427, - "ï¸": 842, - "ï¸İ": 24029, - "ï¸ı": 1392, - "ï¸ı#": 46997, - "ï¸ı:": 32604, - "ï¸ı": 1001, - "ï¸ı@": 34600, - "ï¸ıâĥ£": 17394, - "ï¸ıâĥ£-": 40376, - "ï¸ıâĥ£": 4603, - "ï¿": 27850, - "�": 47356, - "�": 39802, - "ð": 172, - "ð": 428, - "ðĿ": 6874, - "ðĿIJ": 15889, - "ðĿij": 43794, - "ðĿĴ": 43387, - "ðĿĵ": 47110, - "ðĿĹ": 18865, - "ðĿĺ": 26109, - "ðĿĻ": 29415, - "ðŁ": 558, - "ð٤": 1793, - "ðŁ¤£": 9665, - "ðŁ¤£": 9909, - "ðŁ¤£ðŁ¤£": 16430, - "ðŁ¤£ðŁ¤£": 31009, - "ðŁ¤£ðŁ¤£ðŁ¤£": 32262, - "ðŁ¤¤": 39550, - "ðŁ¤¤": 26759, - "ðŁ¤¦": 17186, - "ðŁ¤§": 40983, - "ðŁ¤©": 27351, - "ðŁ¤©": 16074, - "ðŁ¤ª": 44230, - "ðŁ¤ª": 24920, - "ðŁ¤«": 47671, - "ðŁ¤¯": 37595, - "ðŁ¤·": 13185, - "ðŁ¤·ðŁı»âĢįâĻĢï¸ı": 46770, - "ð٤ij": 34801, - "ð٤ĵ": 36580, - "ð٤ĵ": 18928, - "ð٤Ķ": 12706, - "ð٤Ķ": 6497, - "ð٤Ķð٤Ķ": 28490, - "ð٤Ķð٤Ķð٤Ķ": 43361, - "ð٤ĸ": 46146, - "ð٤Ĺ": 16646, - "ð٤Ĺ": 10465, - "ð٤Ĺð٤Ĺ": 44321, - "ð٤ĺ": 10623, - "ð٤ĺ": 17288, - "ð٤ĺðŁı»": 46449, - "ð٤ĺðŁı»": 30891, - "ð٤ĺðŁı¼": 31458, - "ð٤ĺðŁı½": 49362, - "ð٤Ļ": 23800, - "ð٤Ļ": 39101, - "ð٤Ŀ": 35242, - "ð٤ŀ": 29463, - "ð٤ŀ": 38597, - "ðŁ¤Ł": 48509, - "ðŁ¤ł": 36737, - "ð٤Ń": 47289, - "ðŁ¥": 4156, - "ðŁ¥°": 29246, - "ðŁ¥°": 17597, - "ðŁ¥³": 45823, - "ðŁ¥³": 28055, - "ðŁ¥º": 43380, - "ðŁ¥º": 36858, - "ðŁ¥Ĥ": 43805, - "ðŁ¥Ĥ": 25212, - "ðŁ¥ĥ": 47790, - "ðŁ¥ĩ": 34372, - "ðŁ¥ĩ": 20069, - "ðŁ¥Ī": 35858, - "ðŁ¥ī": 36782, - "ðŁ¥Ĭ": 29275, - "ð٦": 6040, - "ð٦ģ": 36367, - "ð٦ģ": 26056, - "ð٦ĥ": 40184, - "ð٦Ħ": 37659, - "ð٦ħ": 28800, - "ð٦Ī": 48984, - "ð٦ĭ": 49325, - "ð٦ĭ": 28985, - "ð٧": 8792, - "ðŁ§¡": 30996, - "ðŁ§¡": 24578, - "ð٧IJ": 33549, - "ðŁħ": 22010, - "ðŁĨ": 9536, - "ðŁĨķ": 34956, - "ðŁĨĺ": 39868, - "ðŁĨļ": 16325, - "ðŁĩ": 1173, - "ðŁĩ¦": 12469, - "ðŁĩ¦": 28565, - "ðŁĩ¦ðŁĩ": 33196, - "ðŁĩ¦ðŁĩ·": 41629, - "ðŁĩ¦ðŁĩº": 25192, - "ðŁĩ§": 14660, - "ðŁĩ§ðŁĩ": 37342, - "ðŁĩ§ðŁĩª": 38794, - "ðŁĩ§ðŁĩ·": 28182, - "ðŁĩ¨": 8889, - "ðŁĩ¨ðŁĩ": 8989, - "ðŁĩ¨ðŁĩ¦": 34324, - "ðŁĩ¨ðŁĩ¦": 16364, - "ðŁĩ¨ðŁĩ³": 36819, - "ðŁĩ¨ðŁĩŃ": 41119, - "ðŁĩ©": 15222, - "ðŁĩ©ðŁĩ": 36350, - "ðŁĩ©ðŁĩª": 21531, - "ðŁĩª": 11428, - "ðŁĩª": 12331, - "ðŁĩªðŁĩ": 13917, - "ðŁĩªðŁĩ¸": 22177, - "ðŁĩªðŁĩº": 34655, - "ðŁĩ«": 12977, - "ðŁĩ«ðŁĩ·": 39109, - "ðŁĩ«ðŁĩ·": 16223, - "ðŁĩ¬": 8129, - "ðŁĩ¬ðŁĩ": 8354, - "ðŁĩ¬ðŁĩ§": 23762, - "ðŁĩ¬ðŁĩ§": 11559, - "ðŁĩ®": 8268, - "ðŁĩ®ðŁĩ": 8347, - "ðŁĩ®ðŁĩª": 34148, - "ðŁĩ®ðŁĩ³": 47299, - "ðŁĩ®ðŁĩ³": 23602, - "ðŁĩ®ðŁĩ¹": 42034, - "ðŁĩ®ðŁĩ¹": 17070, - "ðŁĩ¯": 20090, - "ðŁĩ¯ðŁĩ": 22924, - "ðŁĩ¯ðŁĩµ": 26527, - "ðŁĩ°": 28232, - "ðŁĩ±": 29533, - "ðŁĩ±ðŁĩ": 40941, - "ðŁĩ²": 16411, - "ðŁĩ²ðŁĩ": 17562, - "ðŁĩ²ðŁĩ½": 32073, - "ðŁĩ³": 16645, - "ðŁĩ³ðŁĩ": 17747, - "ðŁĩ³ðŁĩ±": 36747, - "ðŁĩµ": 12127, - "ðŁĩµðŁĩ": 13608, - "ðŁĩµðŁĩ°": 37764, - "ðŁĩµðŁĩ¹": 42621, - "ðŁĩµðŁĩŃ": 42777, - "ðŁĩ·": 16026, - "ðŁĩ·": 9869, - "ðŁĩ·ðŁĩº": 37902, - "ðŁĩ¸": 19447, - "ðŁĩ¸ðŁĩ": 33325, - "ðŁĩ¸ðŁĩª": 39260, - "ðŁĩ¹": 21810, - "ðŁĩ¹ðŁĩ": 36250, - "ðŁĩº": 4054, - "ðŁĩº": 17467, - "ðŁĩºðŁĩ": 4131, - "ðŁĩºðŁĩ¸": 8907, - "ðŁĩºðŁĩ¸": 5688, - "ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸": 18739, - "ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸": 41411, - "ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸": 43357, - "ðŁĩ¿": 25520, - "ðŁĩ¿ðŁĩ¦": 36982, - "ðŁĩŃ": 30370, - "ðŁĮ": 1576, - "ðŁĮ±": 35318, - "ðŁĮ±": 20665, - "ðŁĮ²": 34071, - "ðŁĮ²": 28154, - "ðŁĮ³": 44265, - "ðŁĮ³": 28543, - "ðŁĮ´": 20643, - "ðŁĮ´": 15968, - "ðŁĮµ": 40871, - "ðŁĮ·": 32328, - "ðŁĮ·": 24259, - "ðŁĮ¸": 16314, - "ðŁĮ¸": 10980, - "ðŁĮ¸ðŁĮ¸": 46210, - "ðŁĮ¹": 14990, - "ðŁĮ¹": 10662, - "ðŁĮ¹ðŁĮ¹": 37933, - "ðŁĮº": 27608, - "ðŁĮº": 19829, - "ðŁĮ»": 27196, - "ðŁĮ»": 19772, - "ðŁĮ¼": 36484, - "ðŁĮ¼": 26312, - "ðŁĮ¾": 39796, - "ðŁĮ¿": 27736, - "ðŁĮ¿": 18588, - "ðŁĮĢ": 34348, - "ðŁĮħ": 27547, - "ðŁĮĪ": 23038, - "ðŁĮĪ": 13042, - "ðŁĮĬ": 20465, - "ðŁĮĬ": 14302, - "ðŁĮĮ": 43393, - "ðŁĮį": 34931, - "ðŁĮį": 18641, - "ðŁĮİ": 31125, - "ðŁĮİ": 16969, - "ðŁĮı": 31527, - "ðŁĮIJ": 33071, - "ðŁĮĻ": 42330, - "ðŁĮĻ": 23283, - "ðŁĮļ": 49004, - "ðŁĮļ": 27877, - "ðŁĮŀ": 21152, - "ðŁĮŀ": 12980, - "ðŁĮŁ": 13196, - "ðŁĮŁ": 8542, - "ðŁĮŁðŁĮŁ": 26014, - "ðŁį": 2011, - "ðŁį¦": 47375, - "ðŁį¦": 32032, - "ðŁį©": 38379, - "ðŁįª": 38958, - "ðŁį«": 47994, - "ðŁį«": 33401, - "ðŁį°": 43732, - "ðŁį°": 30051, - "ðŁį³": 37441, - "ðŁį´": 41531, - "ðŁį´": 25338, - "ðŁį·": 24445, - "ðŁį·": 18072, - "ðŁį¸": 43058, - "ðŁį¸": 31217, - "ðŁį¹": 35598, - "ðŁįº": 31081, - "ðŁįº": 21590, - "ðŁį»": 22793, - "ðŁį»": 13167, - "ðŁį¾": 27294, - "ðŁį¾": 21656, - "ðŁįĢ": 22865, - "ðŁįĢ": 15764, - "ðŁįģ": 29837, - "ðŁįģ": 23075, - "ðŁįĤ": 35015, - "ðŁįĤ": 25721, - "ðŁįĥ": 27157, - "ðŁįĥ": 20147, - "ðŁįĩ": 48697, - "ðŁįĬ": 35001, - "ðŁįĬ": 28036, - "ðŁįĭ": 39543, - "ðŁįĮ": 44987, - "ðŁįį": 48946, - "ðŁįİ": 32069, - "ðŁįij": 32889, - "ðŁįĴ": 33160, - "ðŁįĵ": 44739, - "ðŁįĵ": 33456, - "ðŁįĶ": 46415, - "ðŁįĶ": 36031, - "ðŁįķ": 31469, - "ðŁįķ": 23904, - "ðŁįŃ": 42100, - "ðŁİ": 1165, - "ðŁİ£": 43158, - "ðŁİ¤": 23490, - "ðŁİ¤": 15690, - "ðŁİ¥": 22186, - "ðŁİ¥:": 43640, - "ðŁİ¥": 13233, - "ðŁİ§": 31254, - "ðŁİ§": 14266, - "ðŁİ¨": 31953, - "ðŁİ¨": 13461, - "ðŁİ©": 37701, - "ðŁİ«": 30331, - "ðŁİ¬": 36020, - "ðŁİ¬": 18150, - "ðŁİ®": 29312, - "ðŁİ¯": 23114, - "ðŁİµ": 27435, - "ðŁİµ": 14946, - "ðŁİ¶": 11755, - "ðŁİ¶": 6011, - "ðŁİ¶ðŁİ¶": 36283, - "ðŁİ¸": 29135, - "ðŁİ¸": 22122, - "ðŁİ¹": 43493, - "ðŁİ¼": 34949, - "ðŁİ¼": 23757, - "ðŁİ¾": 41982, - "ðŁİ¾": 24222, - "ðŁİĢ": 34347, - "ðŁİĢ": 20151, - "ðŁİģ": 18368, - "ðŁİģ": 13462, - "ðŁİĤ": 13026, - "ðŁİĤ": 10392, - "ðŁİĤðŁİĤ": 39338, - "ðŁİĥ": 22622, - "ðŁİĥ": 16780, - "ðŁİĦ": 12942, - "ðŁİĦ": 11267, - "ðŁİħ": 17685, - "ðŁİħ": 24276, - "ðŁİĨ": 39222, - "ðŁİĪ": 16142, - "ðŁİĪ": 14448, - "ðŁİĪðŁİī": 48049, - "ðŁİī": 4310, - "ðŁİī:": 17310, - "ðŁİī": 3986, - "ðŁİīðŁİ": 11473, - "ðŁİīðŁİĪ": 40499, - "ðŁİīðŁİĪ": 34008, - "ðŁİīðŁİī": 25159, - "ðŁİīðŁİī": 13450, - "ðŁİīðŁİīðŁİī": 20828, - "ðŁİīðŁİĬ": 31662, - "ðŁİīðŁİĬ": 30781, - "ðŁİĬ": 22763, - "ðŁİĬ": 22425, - "ðŁİĬðŁİī": 48801, - "ðŁİĵ": 28916, - "ðŁİĵ": 18744, - "ðŁİĻ": 29001, - "ðŁİĻ": 29753, - "ðŁİĻï¸ı": 44205, - "ðŁİŁ": 19248, - "ðŁİŁ": 21107, - "ðŁİŁï¸ı": 30243, - "ðŁİŃ": 28856, - "ðŁı": 1109, - "ðŁı¡": 27318, - "ðŁı³ï¸ı": 26844, - "ðŁı³ï¸ıâĢį": 27093, - "ðŁı³ï¸ıâĢįðŁĮĪ": 32610, - "ðŁı´": 39690, - "ðŁı´": 19704, - "ðŁı»": 5042, - "ðŁı»": 3702, - "ðŁı»âĢį": 46250, - "ðŁı»âĢįâĻĢï¸ı": 48391, - "ðŁı»âĢįâĻĢï¸ı": 23595, - "ðŁı»âĢįâĻĤï¸ı": 30984, - "ðŁı¼": 6193, - "ðŁı¼": 4027, - "ðŁı¼âĢįâĻĢï¸ı": 28955, - "ðŁı½": 8514, - "ðŁı½": 6114, - "ðŁı½âĢįâĻĢï¸ı": 37036, - "ðŁı½âĢįâĻĤï¸ı": 43157, - "ðŁı¾": 10230, - "ðŁı¾": 7778, - "ðŁı¾âĢįâĻĤï¸ı": 47189, - "ðŁı¿": 29854, - "ðŁı¿": 21094, - "ðŁıĢ": 13708, - "ðŁıĢ": 8813, - "ðŁıĢðŁıĢ": 43169, - "ðŁıģ": 29423, - "ðŁıģ": 17473, - "ðŁıĥ": 16820, - "ðŁıĥ": 32751, - "ðŁıħ": 25500, - "ðŁıĨ": 9585, - "ðŁıĨ": 5596, - "ðŁıĨðŁıĨ": 18946, - "ðŁıĨðŁıĨ": 38269, - "ðŁıĨðŁıĨðŁıĨ": 44484, - "ðŁıĩ": 45789, - "ðŁıĩ": 40288, - "ðŁıĪ": 16144, - "ðŁıĪ": 10477, - "ðŁıī": 26020, - "ðŁıĬ": 33061, - "ðŁıĬ": 47830, - "ðŁıĮ": 41116, - "ðŁıı": 32460, - "ðŁıIJ": 46334, - "ðŁıIJ": 29433, - "ðŁıĴ": 37756, - "ðŁıŁ": 35914, - "ðŁıŁ": 26472, - "ðŁıŁï¸ı": 42627, - "ðŁıł": 33727, - "ðŁIJ": 2074, - "ðŁIJ¢": 37049, - "ðŁIJ£": 39597, - "ðŁIJ¥": 42981, - "ðŁIJ¦": 37260, - "ðŁIJ¬": 44238, - "ðŁIJ¯": 34825, - "ðŁIJ¯": 26111, - "ðŁIJ°": 35378, - "ðŁIJ°": 25050, - "ðŁIJ±": 35710, - "ðŁIJ±": 22979, - "ðŁIJ´": 33509, - "ðŁIJ¶": 14466, - "ðŁIJ¶": 10631, - "ðŁIJ·": 38408, - "ðŁIJ¸": 45597, - "ðŁIJ¸": 40298, - "ðŁIJº": 44281, - "ðŁIJº": 31445, - "ðŁIJ»": 30750, - "ðŁIJ»": 25322, - "ðŁIJ¼": 46234, - "ðŁIJ¾": 16057, - "ðŁIJ¾": 11317, - "ðŁIJ¾ðŁIJ¾": 42202, - "ðŁIJī": 46908, - "ðŁIJĬ": 43974, - "ðŁIJį": 48903, - "ðŁIJį": 30177, - "ðŁIJİ": 48281, - "ðŁIJİ": 32726, - "ðŁIJIJ": 47735, - "ðŁIJIJ": 27954, - "ðŁIJij": 49389, - "ðŁIJķ": 41069, - "ðŁIJĺ": 38733, - "ðŁIJĿ": 30619, - "ðŁIJĿ": 20111, - "ðŁIJŁ": 42084, - "ðŁIJŁ": 29989, - "ðŁIJł": 42725, - "ðŁij": 964, - "ðŁij£": 39755, - "ðŁij§": 48938, - "ðŁij¨": 18966, - "ðŁij¨âĢį": 25023, - "ðŁij©": 18800, - "ðŁij©âĢį": 26304, - "ðŁij«": 47106, - "ðŁij«": 35457, - "ðŁij®": 42686, - "ðŁij¯": 25910, - "ðŁij¯": 20582, - "ðŁij¶": 26187, - "ðŁij¶": 33189, - "ðŁij¸": 26268, - "ðŁij¸": 36645, - "ðŁij¹": 46766, - "ðŁij»": 24625, - "ðŁij»": 16243, - "ðŁij¼": 25270, - "ðŁij¼": 31083, - "ðŁij½": 42677, - "ðŁij½": 26257, - "ðŁijĢ": 11524, - "ðŁijĢ": 5908, - "ðŁijĢðŁijĢ": 31561, - "ðŁijģ": 47796, - "ðŁijģ": 45705, - "ðŁijĦ": 47445, - "ðŁijħ": 31833, - "ðŁijħ": 24672, - "ðŁijĨ": 42975, - "ðŁijĨ": 45194, - "ðŁijĩ": 7662, - "ðŁijĩ": 7475, - "ðŁijĩðŁı»": 45811, - "ðŁijĩðŁı»": 32813, - "ðŁijĩðŁı¼": 37504, - "ðŁijĩðŁijĩ": 17915, - "ðŁijĩðŁijĩ": 31891, - "ðŁijĩðŁijĩðŁijĩ": 35627, - "ðŁijĪ": 32794, - "ðŁijĪ": 20832, - "ðŁijī": 9477, - "ðŁijī": 3988, - "ðŁijīðŁı»": 23481, - "ðŁijīðŁı¼": 27534, - "ðŁijīðŁı½": 38059, - "ðŁijīðŁijī": 41480, - "ðŁijĬ": 8897, - "ðŁijĬ": 9704, - "ðŁijĬðŁı»": 47393, - "ðŁijĬðŁı»": 29152, - "ðŁijĬðŁı¼": 49000, - "ðŁijĬðŁı¼": 30115, - "ðŁijĬðŁijĬ": 46521, - "ðŁijĭ": 19351, - "ðŁijĭ": 17686, - "ðŁijĮ": 4890, - "ðŁijĮ": 4494, - "ðŁijĮðŁı»": 31818, - "ðŁijĮðŁı»": 18606, - "ðŁijĮðŁı¼": 37655, - "ðŁijĮðŁı¼": 20031, - "ðŁijĮðŁı½": 35834, - "ðŁijĮðŁijĮ": 36139, - "ðŁijĮðŁijĮ": 21435, - "ðŁijĮðŁijĮðŁijĮ": 40876, - "ðŁijį": 4686, - "ðŁijį": 4201, - "ðŁijįðŁı»": 25803, - "ðŁijįðŁı»": 15129, - "ðŁijįðŁı¼": 37285, - "ðŁijįðŁı¼": 19689, - "ðŁijįðŁı½": 43722, - "ðŁijįðŁijį": 33012, - "ðŁijįðŁijį": 18997, - "ðŁijįðŁijįðŁijį": 37284, - "ðŁijİ": 39702, - "ðŁijİ": 32568, - "ðŁijı": 3802, - "ðŁijı": 4829, - "ðŁijıðŁı»": 19236, - "ðŁijıðŁı»": 17029, - "ðŁijıðŁı»ðŁijıðŁı»": 35254, - "ðŁijıðŁı¼": 24496, - "ðŁijıðŁı¼": 19979, - "ðŁijıðŁı¼ðŁijıðŁı¼": 46712, - "ðŁijıðŁı½": 40796, - "ðŁijıðŁı½": 33978, - "ðŁijıðŁı¾": 45450, - "ðŁijıðŁijı": 10356, - "ðŁijıðŁijı": 16706, - "ðŁijıðŁijıðŁijı": 17254, - "ðŁijIJ": 40877, - "ðŁijij": 14955, - "ðŁijij": 8717, - "ðŁijijðŁijij": 48532, - "ðŁijķ": 47865, - "ðŁijŁ": 41183, - "ðŁijł": 41264, - "ðŁijŃ": 34175, - "ðŁijŃ": 27943, - "ðŁĴ": 837, - "ðŁĴ¡": 24081, - "ðŁĴ£": 36862, - "ðŁĴ£": 29006, - "ðŁĴ¤": 34706, - "ðŁĴ¤": 25632, - "ðŁĴ¥": 12209, - "ðŁĴ¥": 7347, - "ðŁĴ¥ðŁĴ¥": 27396, - "ðŁĴ¥ðŁĴ¥": 39246, - "ðŁĴ¥ðŁĴ¥ðŁĴ¥": 48890, - "ðŁĴ¦": 21180, - "ðŁĴ¦": 14060, - "ðŁĴ¦ðŁĴ¦": 44469, - "ðŁĴ§": 34095, - "ðŁĴ¨": 27408, - "ðŁĴ¨": 17891, - "ðŁĴ©": 48621, - "ðŁĴ©": 28847, - "ðŁĴª": 5475, - "ðŁĴª": 6440, - "ðŁĴªðŁı»": 31669, - "ðŁĴªðŁı»": 21903, - "ðŁĴªðŁı¼": 32041, - "ðŁĴªðŁı¼": 20759, - "ðŁĴªðŁı½": 46380, - "ðŁĴªðŁı½": 31111, - "ðŁĴªðŁı¾": 39398, - "ðŁĴªðŁĴª": 24747, - "ðŁĴªðŁĴªðŁĴª": 39913, - "ðŁĴ«": 25770, - "ðŁĴ«": 12526, - "ðŁĴ¬": 30947, - "ðŁĴ¯": 10611, - "ðŁĴ¯": 7018, - "ðŁĴ¯ðŁĴ¯": 30234, - "ðŁĴ¯ðŁĴ¯": 44070, - "ðŁĴ°": 20454, - "ðŁĴ°": 14078, - "ðŁĴ°ðŁĴ°": 41747, - "ðŁĴµ": 47412, - "ðŁĴµ": 38041, - "ðŁĴ¸": 37696, - "ðŁĴ¸": 25957, - "ðŁĴ»": 33433, - "ðŁĴ»": 18135, - "ðŁĴ¿": 39541, - "ðŁĴĢ": 14888, - "ðŁĴĢ": 12158, - "ðŁĴĢðŁĴĢ": 30884, - "ðŁĴģ": 13997, - "ðŁĴģ": 14392, - "ðŁĴĥ": 9947, - "ðŁĴĥ": 14333, - "ðŁĴĥðŁı»": 38624, - "ðŁĴĥðŁĴĥ": 28041, - "ðŁĴĦ": 46116, - "ðŁĴĦ": 34571, - "ðŁĴħ": 27457, - "ðŁĴħ": 32414, - "ðŁĴī": 44316, - "ðŁĴī": 30503, - "ðŁĴĭ": 12217, - "ðŁĴĭ": 7417, - "ðŁĴĭðŁĴĭ": 29214, - "ðŁĴĮ": 40817, - "ðŁĴį": 35850, - "ðŁĴį": 24898, - "ðŁĴİ": 25938, - "ðŁĴİ": 15874, - "ðŁĴIJ": 27375, - "ðŁĴIJ": 20554, - "ðŁĴij": 49404, - "ðŁĴĵ": 20628, - "ðŁĴĵ": 12568, - "ðŁĴĵðŁĴĵ": 43505, - "ðŁĴĶ": 18880, - "ðŁĴĶ": 10704, - "ðŁĴĶðŁĴĶ": 44673, - "ðŁĴķ": 5412, - "ðŁĴķ": 3082, - "ðŁĴķðŁĴķ": 23106, - "ðŁĴķðŁĴķ": 14117, - "ðŁĴķðŁĴķðŁĴķ": 26772, - "ðŁĴĸ": 8466, - "ðŁĴĸ": 5582, - "ðŁĴĸðŁĴĸ": 19562, - "ðŁĴĸðŁĴĸ": 30595, - "ðŁĴĸðŁĴĸðŁĴĸ": 33915, - "ðŁĴĹ": 10148, - "ðŁĴĹ": 6690, - "ðŁĴĹðŁĴĹ": 47158, - "ðŁĴĹðŁĴĹ": 24064, - "ðŁĴĹðŁĴĹðŁĴĹ": 36990, - "ðŁĴĺ": 18223, - "ðŁĴĺ": 10816, - "ðŁĴĺðŁĴĺ": 40464, - "ðŁĴĻ": 5305, - "ðŁĴĻ": 4074, - "ðŁĴĻðŁĴĻ": 17833, - "ðŁĴĻðŁĴĻ": 27101, - "ðŁĴĻðŁĴĻðŁĴĻ": 30698, - "ðŁĴĻðŁĴĽ": 46804, - "ðŁĴĻðŁĴĽ": 26230, - "ðŁĴĻðŁĴľ": 47931, - "ðŁĴĻðŁĴľ": 42541, - "ðŁĴļ": 8102, - "ðŁĴļ": 6521, - "ðŁĴļðŁĴļ": 27497, - "ðŁĴļðŁĴļ": 46209, - "ðŁĴļðŁĴļðŁĴļ": 46182, - "ðŁĴļðŁĴĽ": 41232, - "ðŁĴĽ": 8221, - "ðŁĴĽ": 6233, - "ðŁĴĽðŁĴĻ": 36337, - "ðŁĴĽðŁĴļ": 37994, - "ðŁĴĽðŁĴĽ": 32420, - "ðŁĴľ": 6832, - "ðŁĴľ": 4882, - "ðŁĴľðŁĴľ": 17280, - "ðŁĴľðŁĴľ": 28211, - "ðŁĴľðŁĴľðŁĴľ": 31004, - "ðŁĴĿ": 36761, - "ðŁĴĿ": 22002, - "ðŁĴŀ": 14862, - "ðŁĴŀ": 8988, - "ðŁĴŀðŁĴŀ": 36448, - "ðŁĴŁ": 49394, - "ðŁĴŁ": 28828, - "ðŁĴŃ": 33848, - "ðŁĵ": 1497, - "ðŁĵ¢": 46560, - "ðŁĵ¢": 20901, - "ðŁĵ£": 48841, - "ðŁĵ£": 21282, - "ðŁĵ°:": 28952, - "ðŁĵ°": 14985, - "ðŁĵ±": 36104, - "ðŁĵ±": 20824, - "ðŁĵ²": 19363, - "ðŁĵ·": 6966, - "ðŁĵ·:": 8294, - "ðŁĵ·": 5551, - "ðŁĵ·@": 40032, - "ðŁĵ¸": 8401, - "ðŁĵ¸:": 10379, - "ðŁĵ¸": 6074, - "ðŁĵ¸@": 39660, - "ðŁĵ¹": 49251, - "ðŁĵº": 21792, - "ðŁĵº:": 29728, - "ðŁĵº": 10450, - "ðŁĵ»": 32711, - "ðŁĵ»": 15882, - "ðŁĵ½": 45361, - "ðŁĵħ": 21277, - "ðŁĵĨ": 23471, - "ðŁĵĪ": 23359, - "ðŁĵĬ": 22244, - "ðŁĵĭ": 46351, - "ðŁĵĮ": 22289, - "ðŁĵį": 25043, - "ðŁĵį:": 36845, - "ðŁĵį": 8903, - "ðŁĵĸ": 49003, - "ðŁĵĸ": 23043, - "ðŁĵļ": 25433, - "ðŁĵļ": 15566, - "ðŁĵĿ": 31888, - "ðŁĵĿ:": 48398, - "ðŁĵĿ": 15853, - "ðŁĵŀ": 24022, - "ðŁĶ": 1428, - "ðŁĶ¥": 3191, - "ðŁĶ¥#": 44354, - "ðŁĶ¥": 3016, - "ðŁĶ¥ðŁĶ¥": 5692, - "ðŁĶ¥ðŁĶ¥": 11771, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥": 11004, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥": 23408, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥": 30989, - "ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥": 48401, - "ðŁĶ¥ðŁĶĹ": 35130, - "ðŁĶª": 47078, - "ðŁĶª": 34545, - "ðŁĶ«": 38116, - "ðŁĶ«": 20583, - "ðŁĶ¬": 44227, - "ðŁĶ®": 38077, - "ðŁĶ´": 12408, - "ðŁĶ´": 10854, - "ðŁĶ´âļªï¸ı": 46879, - "ðŁĶ´âļªï¸ı": 40055, - "ðŁĶµ": 17531, - "ðŁĶµ": 17193, - "ðŁĶµâļªï¸ı": 42412, - "ðŁĶ¶": 42880, - "ðŁĶ¶": 36222, - "ðŁĶ·": 37740, - "ðŁĶ¸": 24200, - "ðŁĶ¹": 19995, - "ðŁĶº": 45561, - "ðŁĶģ": 41299, - "ðŁĶĬ": 32580, - "ðŁĶĬ": 20502, - "ðŁĶİ": 44935, - "ðŁĶij": 35127, - "ðŁĶĴ": 44972, - "ðŁĶĶ": 45753, - "ðŁĶĹ": 47475, - "ðŁĶĹ": 14561, - "ðŁĶĺ": 38995, - "ðŁĶľ": 36011, - "ðŁĶĿ": 44387, - "ðŁĶĿ": 29506, - "ðŁķ": 7692, - "ðŁķº": 33958, - "ðŁķĬ": 42624, - "ðŁķĬ": 37760, - "ðŁĸ": 6269, - "ðŁĸ¤": 17603, - "ðŁĸ¤": 10860, - "ðŁĸ¥": 47990, - "ðŁĹ": 7045, - "ðŁĹ£": 33232, - "ðŁĹ£": 18583, - "ðŁĹ£ï¸ı": 37476, - "ðŁĹĵ": 34335, - "ðŁĹĵ": 28773, - "ðŁĹĵï¸ı": 39847, - "ðŁĺ": 668, - "ðŁĺ¡": 21968, - "ðŁĺ¡": 17452, - "ðŁĺ¡ðŁĺ¡": 37223, - "ðŁĺ¢": 14308, - "ðŁĺ¢": 9925, - "ðŁĺ¢ðŁĺ¢": 32923, - "ðŁĺ¢ðŁĺ¢": 47921, - "ðŁĺ£": 32718, - "ðŁĺ¤": 26872, - "ðŁĺ¤": 20740, - "ðŁĺ¥": 38383, - "ðŁĺ¥": 23951, - "ðŁĺ¨": 38080, - "ðŁĺ©": 9051, - "ðŁĺ©": 9494, - "ðŁĺ©ðŁĺ©": 22820, - "ðŁĺ©ðŁĺ©": 38031, - "ðŁĺ©ðŁĺ©ðŁĺ©": 49063, - "ðŁĺª": 38181, - "ðŁĺª": 22243, - "ðŁĺ«": 25141, - "ðŁĺ«": 22340, - "ðŁĺ¬": 23704, - "ðŁĺ¬": 14549, - "ðŁĺ®": 40163, - "ðŁĺ®": 21616, - "ðŁĺ¯": 37858, - "ðŁĺ°": 34728, - "ðŁĺ±": 10938, - "ðŁĺ±": 9055, - "ðŁĺ±ðŁĺ±": 22061, - "ðŁĺ±ðŁĺ±": 40767, - "ðŁĺ±ðŁĺ±ðŁĺ±": 40909, - "ðŁĺ²": 40460, - "ðŁĺ²": 24620, - "ðŁĺ³": 12047, - "ðŁĺ³": 8223, - "ðŁĺ³ðŁĺ³": 32592, - "ðŁĺ´": 23527, - "ðŁĺ´": 16415, - "ðŁĺ´ðŁĺ´": 49307, - "ðŁĺµ": 39368, - "ðŁĺ¶": 35207, - "ðŁĺ·": 37943, - "ðŁĺ·": 25759, - "ðŁĺ¸": 36912, - "ðŁĺ¹": 26477, - "ðŁĺ¹": 26573, - "ðŁĺ¹ðŁĺ¹": 46287, - "ðŁĺº": 40613, - "ðŁĺ»": 15453, - "ðŁĺ»": 12911, - "ðŁĺ»ðŁĺ»": 34414, - "ðŁĺ¼": 44245, - "ðŁĺ½": 45156, - "ðŁĺĢ": 12832, - "ðŁĺĢ": 7334, - "ðŁĺĢðŁĺĢ": 34503, - "ðŁĺģ": 6967, - "ðŁĺģ": 4821, - "ðŁĺģðŁĺģ": 37900, - "ðŁĺģðŁĺģ": 19213, - "ðŁĺģðŁĺģðŁĺģ": 29083, - "ðŁĺĤ": 1424, - "ðŁĺĤ)": 42643, - "ðŁĺĤ.": 42550, - "ðŁĺĤ": 1558, - "ðŁĺĤâĿ¤ï¸ı": 36412, - "ðŁĺĤðŁijĮ": 42000, - "ðŁĺĤðŁĺĤ": 2286, - "ðŁĺĤðŁĺĤ": 4112, - "ðŁĺĤðŁĺĤðŁĺĤ": 22233, - "ðŁĺĤðŁĺĤðŁĺĤ": 4887, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 9936, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 11522, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 19295, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 33415, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 48973, - "ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ": 28504, - "ðŁĺĤðŁĺį": 43128, - "ðŁĺĤðŁĺŃ": 28965, - "ðŁĺĤðŁĺŃ": 25802, - "ðŁĺĥ": 14079, - "ðŁĺĥ": 8520, - "ðŁĺĥðŁĺĥ": 38358, - "ðŁĺĦ": 12141, - "ðŁĺĦ": 7624, - "ðŁĺĦðŁĺĦ": 32312, - "ðŁĺħ": 15245, - "ðŁĺħ": 9188, - "ðŁĺħðŁĺħ": 39078, - "ðŁĺĨ": 16541, - "ðŁĺĨ": 10943, - "ðŁĺĨðŁĺĨ": 39503, - "ðŁĺĩ": 21694, - "ðŁĺĩ": 13091, - "ðŁĺĪ": 14377, - "ðŁĺĪ": 9756, - "ðŁĺĪðŁĺĪ": 44473, - "ðŁĺī": 9740, - "ðŁĺī": 4955, - "ðŁĺīðŁĺī": 40430, - "ðŁĺĬ": 4692, - "ðŁĺĬ": 3020, - "ðŁĺĬâĿ¤ï¸ı": 43606, - "ðŁĺĬðŁĺĬ": 12838, - "ðŁĺĬðŁĺĬ": 20842, - "ðŁĺĬðŁĺĬðŁĺĬ": 28685, - "ðŁĺĬðŁĺĬðŁĺĬðŁĺĬ": 35519, - "ðŁĺĭ": 12391, - "ðŁĺĭ": 7203, - "ðŁĺĭðŁĺĭ": 33304, - "ðŁĺĮ": 19221, - "ðŁĺĮ": 12163, - "ðŁĺį": 1796, - "ðŁĺį#": 42357, - "ðŁĺį.": 48579, - "ðŁĺį": 1754, - "ðŁĺįâĿ¤": 29122, - "ðŁĺįâĿ¤ï¸ı": 21945, - "ðŁĺįðŁijĮ": 41005, - "ðŁĺįðŁĴķ": 35946, - "ðŁĺįðŁĶ¥": 46648, - "ðŁĺįðŁĺĤ": 48715, - "ðŁĺįðŁĺį": 3663, - "ðŁĺįðŁĺį": 6471, - "ðŁĺįðŁĺįðŁĺį": 30614, - "ðŁĺįðŁĺįðŁĺį": 7703, - "ðŁĺįðŁĺįðŁĺįðŁĺį": 16603, - "ðŁĺįðŁĺįðŁĺįðŁĺį": 18925, - "ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį": 32078, - "ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį": 48683, - "ðŁĺįðŁĺĺ": 29646, - "ðŁĺįðŁĺĺ": 19849, - "ðŁĺįðŁĺŃ": 39555, - "ðŁĺİ": 7426, - "ðŁĺİ": 4345, - "ðŁĺİðŁĺİ": 24048, - "ðŁĺİðŁĺİðŁĺİ": 39742, - "ðŁĺı": 11624, - "ðŁĺı": 6909, - "ðŁĺıðŁĺı": 38151, - "ðŁĺIJ": 38586, - "ðŁĺIJ": 19618, - "ðŁĺij": 32469, - "ðŁĺij": 18937, - "ðŁĺĴ": 20792, - "ðŁĺĴ": 11702, - "ðŁĺĵ": 28733, - "ðŁĺĶ": 19532, - "ðŁĺĶ": 11432, - "ðŁĺķ": 45741, - "ðŁĺķ": 20602, - "ðŁĺĸ": 35006, - "ðŁĺĺ": 4240, - "ðŁĺĺ": 3352, - "ðŁĺĺâĿ¤": 48409, - "ðŁĺĺâĿ¤ï¸ı": 39150, - "ðŁĺĺðŁĺį": 38176, - "ðŁĺĺðŁĺĺ": 15663, - "ðŁĺĺðŁĺĺ": 10507, - "ðŁĺĺðŁĺĺðŁĺĺ": 20208, - "ðŁĺĺðŁĺĺðŁĺĺðŁĺĺ": 44892, - "ðŁĺĻ": 36201, - "ðŁĺĻ": 29209, - "ðŁĺļ": 24897, - "ðŁĺļ": 19102, - "ðŁĺĽ": 24550, - "ðŁĺĽ": 15745, - "ðŁĺľ": 13226, - "ðŁĺľ": 7830, - "ðŁĺľðŁĺľ": 43065, - "ðŁĺĿ": 20064, - "ðŁĺĿ": 12970, - "ðŁĺŀ": 40458, - "ðŁĺŀ": 21103, - "ðŁĺŁ": 46947, - "ðŁĺł": 34094, - "ðŁĺŃ": 2962, - "ðŁĺŃ": 3915, - "ðŁĺŃâĿ¤ï¸ı": 29567, - "ðŁĺŃðŁĴķ": 46306, - "ðŁĺŃðŁĺĤ": 38505, - "ðŁĺŃðŁĺį": 36893, - "ðŁĺŃðŁĺŃ": 5300, - "ðŁĺŃðŁĺŃ": 11834, - "ðŁĺŃðŁĺŃðŁĺŃ": 44089, - "ðŁĺŃðŁĺŃðŁĺŃ": 13116, - "ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ": 19793, - "ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ": 27322, - "ðŁĺŃðŁĺŃðŁĺŃðŁĺŃðŁĺŃ": 43366, - "ðŁĻ": 1478, - "ðŁĻĢ": 43092, - "ðŁĻĤ": 32006, - "ðŁĻĤ": 14860, - "ðŁĻĥ": 27222, - "ðŁĻĥ": 15652, - "ðŁĻĦ": 20648, - "ðŁĻĦ": 13049, - "ðŁĻħ": 42702, - "ðŁĻĨ": 30050, - "ðŁĻĨ": 35730, - "ðŁĻĪ": 12661, - "ðŁĻĪ": 9516, - "ðŁĻĪðŁĻĪ": 41796, - "ðŁĻĬ": 23684, - "ðŁĻĬ": 16636, - "ðŁĻĭ": 19193, - "ðŁĻĭ": 30274, - "ðŁĻĮ": 4366, - "ðŁĻĮ": 4855, - "ðŁĻĮðŁı»": 26756, - "ðŁĻĮðŁı»": 15799, - "ðŁĻĮðŁı¼": 26584, - "ðŁĻĮðŁı¼": 15364, - "ðŁĻĮðŁı½": 36660, - "ðŁĻĮðŁı½": 22962, - "ðŁĻĮðŁı¾": 38023, - "ðŁĻĮðŁı¾": 26466, - "ðŁĻĮðŁĻĮ": 21202, - "ðŁĻĮðŁĻĮ": 30430, - "ðŁĻĮðŁĻĮðŁĻĮ": 37127, - "ðŁĻı": 4260, - "ðŁĻı": 5503, - "ðŁĻıðŁı»": 25100, - "ðŁĻıðŁı»": 16650, - "ðŁĻıðŁı¼": 31163, - "ðŁĻıðŁı¼": 18952, - "ðŁĻıðŁı½": 34103, - "ðŁĻıðŁı½": 21540, - "ðŁĻıðŁı¾": 34277, - "ðŁĻıðŁı¾": 21979, - "ðŁĻıðŁĻı": 18227, - "ðŁĻıðŁĻı": 26510, - "ðŁĻıðŁĻıðŁĻı": 31702, - "ðŁļ": 2730, - "ðŁļ¨": 12198, - "ðŁļ¨": 6056, - "ðŁļ¨ðŁļ¨": 36487, - "ðŁļ¨ðŁļ¨": 21440, - "ðŁļ¨ðŁļ¨ðŁļ¨": 41515, - "ðŁļ©": 44514, - "ðŁļ«": 35291, - "ðŁļ²": 37085, - "ðŁļ´": 30825, - "ðŁļ¶": 46060, - "ðŁļĢ": 22400, - "ðŁļĢ": 13542, - "ðŁļĢðŁļĢ": 49033, - "ðŁļĤ": 38949, - "ðŁļĮ": 46891, - "ðŁļĹ": 33054, - "ðŁļĹ": 22783, - "ðŁļĺ": 35825, - "ðŁļĻ": 48487, - "ðŁĽ": 11306, - "ñ": 173, - "ñ": 429, - "ò": 174, - "ò": 430, - "ó": 175, - "ó": 431, - "ô": 176, - "ô": 432, - "õ": 177, - "õ": 433, - "ö": 178, - "ö": 434, - "÷": 179, - "÷": 435, - "ø": 180, - "ø": 436, - "ù": 181, - "ù": 437, - "ú": 182, - "ú": 438, - "û": 183, - "û": 439, - "ü": 184, - "ü": 440, - "ý": 185, - "ý": 441, - "þ": 186, - "þ": 442, - "ÿ": 187, - "ÿ": 443, - "Ā": 188, - "Ā": 444, - "ā": 189, - "ā": 445, - "Ă": 190, - "Ă": 446, - "ă": 191, - "ă": 447, - "Ą": 192, - "Ą": 448, - "ą": 193, - "ą": 449, - "Ć": 194, - "Ć": 450, - "ć": 195, - "ć": 451, - "Ĉ": 196, - "Ĉ": 452, - "ĉ": 197, - "ĉ": 453, - "Ċ": 198, - "Ċ": 454, - "ċ": 199, - "ċ": 455, - "Č": 200, - "Č": 456, - "č": 201, - "č": 457, - "Ď": 202, - "Ď": 458, - "ď": 203, - "ď": 459, - "Đ": 204, - "Đ": 460, - "đ": 205, - "đ": 461, - "Ē": 206, - "Ē": 462, - "ē": 207, - "ē": 463, - "Ĕ": 208, - "Ĕ": 464, - "ĕ": 209, - "ĕ": 465, - "Ė": 210, - "Ė": 466, - "ė": 211, - "ė": 467, - "Ę": 212, - "Ę": 468, - "ę": 213, - "ę": 469, - "Ě": 214, - "Ě": 470, - "ě": 215, - "ě": 471, - "Ĝ": 216, - "Ĝ": 472, - "ĝ": 217, - "ĝ": 473, - "Ğ": 218, - "Ğ": 474, - "ğ": 219, - "ğ": 475, - "Ġ": 220, - "Ġ": 476, - "ġ": 221, - "ġ": 477, - "Ģ": 222, - "Ģ": 478, - "Ģï¸ı": 9668, - "Ģï¸ı": 5511, - "ģ": 223, - "ģ": 479, - "ģà¸": 15016, - "Ĥ": 224, - "Ĥ": 480, - "Ĥâĸ": 29036, - "ĤâĸĤâĸ": 30832, - "ĥ": 225, - "ĥ": 481, - "Ħ": 226, - "Ħ": 482, - "Ħà¸": 20537, - "Ħë": 34462, - "Ħëĭ": 25170, - "ħ": 227, - "ħ": 483, - "ħï¸ı": 33950, - "Ĩ": 228, - "Ĩ": 484, - "ĩ": 229, - "ĩ": 485, - "Ī": 230, - "Ī": 486, - "ī": 231, - "ī": 487, - "īï¸ı": 37463, - "Ĭ": 232, - "Ĭ": 488, - "Ĭãģ": 30294, - "ĭ": 233, - "ĭ": 489, - "ĭãģ": 36218, - "ĭãĤ": 45737, - "Į": 234, - "Į": 490, - "ĮãĤĬãģ": 45969, - "ĮãĤĬãģŁãģĦ": 47021, - "Įë": 17003, - "į": 235, - "į": 491, - "İ": 236, - "İ": 492, - "ı": 237, - "ı": 493, - "IJ": 238, - "IJ": 494, - "ij": 239, - "ij": 495, - "Ĵ": 240, - "Ĵ": 496, - "ĵ": 241, - "ĵ": 497, - "Ķ": 242, - "Ķ": 498, - "Ķë": 37978, - "Ķï¸ı": 24395, - "Ķï¸ı": 7443, - "ķ": 243, - "ķ": 499, - "ķãĤ": 26609, - "ķï¸ı": 44853, - "ĸ": 244, - "ĸ": 500, - "ĸï¸ı": 28877, - "Ĺ": 245, - "Ĺ": 501, - "ĺ": 246, - "ĺ": 502, - "Ļ": 247, - "Ļ": 503, - "ļ": 248, - "ļ": 504, - "Ľ": 249, - "Ľ": 505, - "ľ": 250, - "ľ": 506, - "ľë": 39810, - "Ŀ": 251, - "Ŀ": 507, - "ŀ": 252, - "ŀ": 508, - "Ł": 253, - "Ł": 509, - "ŁãģĦ": 46023, - "ł": 254, - "ł": 510, - "łï¸ı": 27899, - "łï¸ı": 12715, - "łĪ": 43364, - "Ń": 255, - "Ń": 511 -} diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/unet/config.json b/checkpoints/sudo-ai/zero123plus-v1.2/unet/config.json deleted file mode 100644 index cacbdd9..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/unet/config.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "_class_name": "UNet2DConditionModel", - "_diffusers_version": "0.24.0", - "_name_or_path": "D:\\.cache\\huggingface\\hub\\models--stabilityai--stable-diffusion-2\\snapshots\\1e128c8891e52218b74cde8f26dbfc701cb99d79\\unet", - "act_fn": "silu", - "addition_embed_type": null, - "addition_embed_type_num_heads": 64, - "addition_time_embed_dim": null, - "attention_head_dim": [ - 5, - 10, - 20, - 20 - ], - "attention_type": "default", - "block_out_channels": [ - 320, - 640, - 1280, - 1280 - ], - "center_input_sample": false, - "class_embed_type": null, - "class_embeddings_concat": false, - "conv_in_kernel": 3, - "conv_out_kernel": 3, - "cross_attention_dim": 1024, - "cross_attention_norm": null, - "down_block_types": [ - "CrossAttnDownBlock2D", - "CrossAttnDownBlock2D", - "CrossAttnDownBlock2D", - "DownBlock2D" - ], - "downsample_padding": 1, - "dropout": 0.0, - "dual_cross_attention": false, - "encoder_hid_dim": null, - "encoder_hid_dim_type": null, - "flip_sin_to_cos": true, - "freq_shift": 0, - "in_channels": 4, - "layers_per_block": 2, - "mid_block_only_cross_attention": null, - "mid_block_scale_factor": 1, - "mid_block_type": "UNetMidBlock2DCrossAttn", - "norm_eps": 1e-05, - "norm_num_groups": 32, - "num_attention_heads": null, - "num_class_embeds": null, - "only_cross_attention": false, - "out_channels": 4, - "projection_class_embeddings_input_dim": null, - "resnet_out_scale_factor": 1.0, - "resnet_skip_time_act": false, - "resnet_time_scale_shift": "default", - "reverse_transformer_layers_per_block": null, - "sample_size": 96, - "time_cond_proj_dim": null, - "time_embedding_act_fn": null, - "time_embedding_dim": null, - "time_embedding_type": "positional", - "timestep_post_act": null, - "transformer_layers_per_block": 1, - "up_block_types": [ - "UpBlock2D", - "CrossAttnUpBlock2D", - "CrossAttnUpBlock2D", - "CrossAttnUpBlock2D" - ], - "upcast_attention": false, - "use_linear_projection": true -} diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/vae/config.json b/checkpoints/sudo-ai/zero123plus-v1.2/vae/config.json deleted file mode 100644 index 96a7aaa..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/vae/config.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "_class_name": "AutoencoderKL", - "_diffusers_version": "0.24.0", - "_name_or_path": "D:\\.cache\\huggingface\\hub\\models--sudo-ai--zero123plus-v1.1\\snapshots\\36df7de980afd15f80b2e1a4e9a920d7020e2654\\vae", - "act_fn": "silu", - "block_out_channels": [ - 128, - 256, - 512, - 512 - ], - "down_block_types": [ - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D", - "DownEncoderBlock2D" - ], - "force_upcast": true, - "in_channels": 3, - "latent_channels": 4, - "layers_per_block": 2, - "norm_num_groups": 32, - "out_channels": 3, - "sample_size": 256, - "scaling_factor": 0.18215, - "up_block_types": [ - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D", - "UpDecoderBlock2D" - ] -} diff --git a/checkpoints/sudo-ai/zero123plus-v1.2/vision_encoder/config.json b/checkpoints/sudo-ai/zero123plus-v1.2/vision_encoder/config.json deleted file mode 100644 index 5e55ea1..0000000 --- a/checkpoints/sudo-ai/zero123plus-v1.2/vision_encoder/config.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "_name_or_path": "D:\\.cache\\huggingface\\hub\\models--sudo-ai--zero123plus-v1.1\\snapshots\\36df7de980afd15f80b2e1a4e9a920d7020e2654\\vision_encoder", - "architectures": [ - "CLIPVisionModelWithProjection" - ], - "attention_dropout": 0.0, - "dropout": 0.0, - "hidden_act": "gelu", - "hidden_size": 1280, - "image_size": 224, - "initializer_factor": 1.0, - "initializer_range": 0.02, - "intermediate_size": 5120, - "layer_norm_eps": 1e-05, - "model_type": "clip_vision_model", - "num_attention_heads": 16, - "num_channels": 3, - "num_hidden_layers": 32, - "patch_size": 14, - "projection_dim": 1024, - "torch_dtype": "float16", - "transformers_version": "4.36.0" -} diff --git a/checkpoints/tgs/place tgs model here.txt b/checkpoints/tgs/place tgs model here.txt deleted file mode 100644 index e69de29..0000000 diff --git a/configs/NeuS.conf b/configs/NeuS.conf deleted file mode 100644 index c868c83..0000000 --- a/configs/NeuS.conf +++ /dev/null @@ -1,70 +0,0 @@ -general { - base_exp_dir = ./outputs/NeuS/ -} - -dataset { - object_viewidx = 1, - imSize = [256, 256], - stage = coarse, - mtype = mlp -} - -validate { - validate_resolution_level = 1, - save_freq = 5000, - val_freq = 5000, - val_mesh_freq =5000, - report_freq = 200, -} - -model { - nerf { - D = 8, - d_in = 4, - d_in_view = 3, - W = 256, - multires = 10, - multires_view = 4, - output_ch = 4, - skips=[4], - use_viewdirs=True - } - - sdf_network { - d_out = 257, - d_in = 3, - d_hidden = 256, - n_layers = 8, - skip_in = [4], - multires = 6, - bias = 0.5, - scale = 1.0, - geometric_init = True, - weight_norm = True - } - - variance_network { - init_val = 0.3 - } - - rendering_network { - d_feature = 256, - mode = no_view_dir, - d_in = 6, - d_out = 3, - d_hidden = 256, - n_layers = 4, - weight_norm = True, - multires_view = 0, - squeeze_out = True - } - - neus_renderer { - n_samples = 64, - n_importance = 64, - n_outside = 0, - up_sample_steps = 4, # 1 for simple coarse-to-fine sampling - perturb = 1.0, - sdf_decay_param = 100 - } -} diff --git a/configs/tgs_config.yaml b/configs/tgs_config.yaml deleted file mode 100644 index 50eab4e..0000000 --- a/configs/tgs_config.yaml +++ /dev/null @@ -1,150 +0,0 @@ -data: - background_color: [1.0, 1.0, 1.0] - cond_width: 252 # multiply of 14 - cond_height: 252 - - relative_pose: true - - num_workers: 16 - eval_batch_size: 1 - eval_height: 512 - eval_width: 512 - -system: - camera_embedder_cls: tgs.models.networks.MLP - camera_embedder: - dim_in: 25 # c2w + [fx, fy, cx, cy] - dim_out: 768 - n_neurons: 768 - n_hidden_layers: 1 - activation: silu - - image_feature: - out_dim: 773 - - image_tokenizer_cls: tgs.models.tokenizers.image.DINOV2SingleImageTokenizer - image_tokenizer: - pretrained_model_name_or_path: "facebook/dinov2-base" - width: ${data.cond_width} - height: ${data.cond_height} - - modulation: true - modulation_zero_init: true - modulation_single_layer: true - modulation_cond_dim: ${system.camera_embedder.dim_out} # c2w + intrinsic - - freeze_backbone_params: false - enable_memory_efficient_attention: ${system.backbone.enable_memory_efficient_attention} - enable_gradient_checkpointing: ${system.backbone.gradient_checkpointing} - - tokenizer_cls: tgs.models.tokenizers.triplane.TriplaneLearnablePositionalEmbedding - tokenizer: - plane_size: 32 - num_channels: 512 - - backbone_cls: tgs.models.transformers.Transformer1D - backbone: - in_channels: ${system.tokenizer.num_channels} - num_attention_heads: 8 - attention_head_dim: 64 - num_layers: 10 - cross_attention_dim: 768 # hard-code, =DINO feature dim - - norm_type: "layer_norm" - - enable_memory_efficient_attention: false - gradient_checkpointing: false - - post_processor_cls: tgs.models.networks.TriplaneUpsampleNetwork - post_processor: - in_channels: ${system.tokenizer.num_channels} - out_channels: 80 - - pointcloud_generator_cls: tgs.models.pointclouds.simplepoint.SimplePointGenerator - pointcloud_generator: - camera_embedder_cls: tgs.models.networks.MLP - camera_embedder: - dim_in: 25 # c2w + [fx, fy, cx, cy] - dim_out: 768 - n_neurons: 768 - n_hidden_layers: 1 - activation: silu - - image_tokenizer_cls: tgs.models.tokenizers.image.DINOV2SingleImageTokenizer - image_tokenizer: - pretrained_model_name_or_path: "facebook/dinov2-base" - width: ${data.cond_width} - height: ${data.cond_height} - - modulation: true - modulation_zero_init: true - modulation_single_layer: true - modulation_cond_dim: ${system.camera_embedder.dim_out} # c2w + intrinsic - - freeze_backbone_params: true - enable_memory_efficient_attention: ${system.backbone.enable_memory_efficient_attention} - enable_gradient_checkpointing: false - - tokenizer_cls: tgs.models.tokenizers.point.PointLearnablePositionalEmbedding - tokenizer: - num_pcl: 2048 - num_channels: 512 - - backbone_cls: tgs.models.transformers.Transformer1D - backbone: - in_channels: ${system.pointcloud_generator.tokenizer.num_channels} - num_attention_heads: 8 - attention_head_dim: 64 - num_layers: 10 - cross_attention_dim: 768 # hard-code, =DINO feature dim - - norm_type: "layer_norm" - - enable_memory_efficient_attention: ${system.backbone.enable_memory_efficient_attention} - gradient_checkpointing: ${system.backbone.gradient_checkpointing} - - post_processor_cls: tgs.models.networks.PointOutLayer - post_processor: - in_channels: 512 - out_channels: 3 - - pointcloud_upsampling_cls: tgs.models.snowflake.model_spdpp.SnowflakeModelSPDPP - pointcloud_upsampling: - input_channels: 768 - dim_feat: 128 - num_p0: 2048 - radius: 1 - bounding: true - use_fps: true - up_factors: [2,4] - token_type: "image_token" - - pointcloud_encoder_cls: tgs.models.pointclouds.pointnet.LocalPoolPointnet - pointcloud_encoder: - input_channels: 776 # 3 + 3 + 768 + 1 + 1 [xyz, local features] - c_dim: ${system.tokenizer.num_channels} - hidden_dim: 128 - plane_size: ${system.tokenizer.plane_size} - n_blocks: 5 - radius: ${system.renderer.radius} - - renderer_cls: tgs.models.renderer.GS3DRenderer - renderer: - sh_degree: 3 - radius: 0.6 - mlp_network_config: - n_neurons: ${system.renderer.gs_out.in_channels} - n_hidden_layers: 2 - activation: silu - gs_out: - in_channels: 128 - xyz_offset: true - restrict_offset: true - use_rgb: false - feature_channels: - xyz: 3 - scaling: 3 - rotation: 4 - opacity: 1 - shs: ${shsdim:${system.renderer.sh_degree}} - clip_scaling: 0.2 \ No newline at end of file diff --git a/configs/tsr_config.yaml b/configs/tsr_config.yaml deleted file mode 100644 index fa3e59a..0000000 --- a/configs/tsr_config.yaml +++ /dev/null @@ -1,38 +0,0 @@ -cond_image_size: 512 - -image_tokenizer_cls: tsr.models.tokenizers.image.DINOSingleImageTokenizer -image_tokenizer: - pretrained_model_name_or_path: "facebook/dino-vitb16" - -tokenizer_cls: tsr.models.tokenizers.triplane.Triplane1DTokenizer -tokenizer: - plane_size: 32 - num_channels: 1024 - -backbone_cls: tsr.models.transformer.transformer_1d.Transformer1D -backbone: - in_channels: ${tokenizer.num_channels} - num_attention_heads: 16 - attention_head_dim: 64 - num_layers: 16 - cross_attention_dim: 768 - -post_processor_cls: tsr.models.network_utils.TriplaneUpsampleNetwork -post_processor: - in_channels: 1024 - out_channels: 40 - -decoder_cls: tsr.models.network_utils.NeRFMLP -decoder: - in_channels: 120 # 3 * 40 - n_neurons: 64 - n_hidden_layers: 9 - activation: silu - -renderer_cls: tsr.models.nerf_renderer.TriplaneNeRFRenderer -renderer: - radius: 0.87 # slightly larger than 0.5 * sqrt(3) - feature_reduction: concat - density_activation: exp - density_bias: -1.0 - num_samples_per_ray: 128 \ No newline at end of file diff --git a/crm/imagedream/__init__.py b/crm/imagedream/__init__.py deleted file mode 100644 index 1ba541c..0000000 --- a/crm/imagedream/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from .model_zoo import build_model diff --git a/crm/imagedream/camera_utils.py b/crm/imagedream/camera_utils.py deleted file mode 100644 index e3a5d80..0000000 --- a/crm/imagedream/camera_utils.py +++ /dev/null @@ -1,99 +0,0 @@ -import numpy as np -import torch - - -def create_camera_to_world_matrix(elevation, azimuth): - elevation = np.radians(elevation) - azimuth = np.radians(azimuth) - # Convert elevation and azimuth angles to Cartesian coordinates on a unit sphere - x = np.cos(elevation) * np.sin(azimuth) - y = np.sin(elevation) - z = np.cos(elevation) * np.cos(azimuth) - - # Calculate camera position, target, and up vectors - camera_pos = np.array([x, y, z]) - target = np.array([0, 0, 0]) - up = np.array([0, 1, 0]) - - # Construct view matrix - forward = target - camera_pos - forward /= np.linalg.norm(forward) - right = np.cross(forward, up) - right /= np.linalg.norm(right) - new_up = np.cross(right, forward) - new_up /= np.linalg.norm(new_up) - cam2world = np.eye(4) - cam2world[:3, :3] = np.array([right, new_up, -forward]).T - cam2world[:3, 3] = camera_pos - return cam2world - - -def convert_opengl_to_blender(camera_matrix): - if isinstance(camera_matrix, np.ndarray): - # Construct transformation matrix to convert from OpenGL space to Blender space - flip_yz = np.array([[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) - camera_matrix_blender = np.dot(flip_yz, camera_matrix) - else: - # Construct transformation matrix to convert from OpenGL space to Blender space - flip_yz = torch.tensor( - [[1, 0, 0, 0], [0, 0, -1, 0], [0, 1, 0, 0], [0, 0, 0, 1]] - ) - if camera_matrix.ndim == 3: - flip_yz = flip_yz.unsqueeze(0) - camera_matrix_blender = torch.matmul(flip_yz.to(camera_matrix), camera_matrix) - return camera_matrix_blender - - -def normalize_camera(camera_matrix): - """normalize the camera location onto a unit-sphere""" - if isinstance(camera_matrix, np.ndarray): - camera_matrix = camera_matrix.reshape(-1, 4, 4) - translation = camera_matrix[:, :3, 3] - translation = translation / ( - np.linalg.norm(translation, axis=1, keepdims=True) + 1e-8 - ) - camera_matrix[:, :3, 3] = translation - else: - camera_matrix = camera_matrix.reshape(-1, 4, 4) - translation = camera_matrix[:, :3, 3] - translation = translation / ( - torch.norm(translation, dim=1, keepdim=True) + 1e-8 - ) - camera_matrix[:, :3, 3] = translation - return camera_matrix.reshape(-1, 16) - - -def get_camera( - num_frames, - elevation=15, - azimuth_start=0, - azimuth_span=360, - blender_coord=True, - extra_view=False, -): - angle_gap = azimuth_span / num_frames - cameras = [] - for azimuth in np.arange(azimuth_start, azimuth_span + azimuth_start, angle_gap): - camera_matrix = create_camera_to_world_matrix(elevation, azimuth) - if blender_coord: - camera_matrix = convert_opengl_to_blender(camera_matrix) - cameras.append(camera_matrix.flatten()) - - if extra_view: - dim = len(cameras[0]) - cameras.append(np.zeros(dim)) - return torch.tensor(np.stack(cameras, 0)).float() - - -def get_camera_for_index(data_index): - """ - 按照当前我们的数据格式, 以000为正对我们的情况: - 000是正面, ev: 0, azimuth: 0 - 001是左边, ev: 0, azimuth: -90 - 002是下面, ev: -90, azimuth: 0 - 003是背面, ev: 0, azimuth: 180 - 004是右边, ev: 0, azimuth: 90 - 005是上面, ev: 90, azimuth: 0 - """ - params = [(0, 0), (0, -90), (-90, 0), (0, 180), (0, 90), (90, 0)] - return get_camera(1, *params[data_index]) \ No newline at end of file diff --git a/crm/imagedream/configs/sd_v2_base_ipmv.yaml b/crm/imagedream/configs/sd_v2_base_ipmv.yaml deleted file mode 100644 index 234fa01..0000000 --- a/crm/imagedream/configs/sd_v2_base_ipmv.yaml +++ /dev/null @@ -1,61 +0,0 @@ -model: - target: imagedream.ldm.interface.LatentDiffusionInterface - params: - linear_start: 0.00085 - linear_end: 0.0120 - timesteps: 1000 - scale_factor: 0.18215 - parameterization: "eps" - - unet_config: - target: imagedream.ldm.modules.diffusionmodules.openaimodel.MultiViewUNetModel - params: - image_size: 32 # unused - in_channels: 4 - out_channels: 4 - model_channels: 320 - attention_resolutions: [ 4, 2, 1 ] - num_res_blocks: 2 - channel_mult: [ 1, 2, 4, 4 ] - num_head_channels: 64 # need to fix for flash-attn - use_spatial_transformer: True - use_linear_in_transformer: True - transformer_depth: 1 - context_dim: 1024 - use_checkpoint: False - legacy: False - camera_dim: 16 - with_ip: True - ip_dim: 16 # ip token length - ip_mode: "local_resample" - - vae_config: - target: imagedream.ldm.models.autoencoder.AutoencoderKL - params: - embed_dim: 4 - monitor: val/rec_loss - ddconfig: - #attn_type: "vanilla-xformers" - double_z: true - z_channels: 4 - resolution: 256 - in_channels: 3 - out_ch: 3 - ch: 128 - ch_mult: - - 1 - - 2 - - 4 - - 4 - num_res_blocks: 2 - attn_resolutions: [] - dropout: 0.0 - lossconfig: - target: torch.nn.Identity - - clip_config: - target: imagedream.ldm.modules.encoders.modules.FrozenOpenCLIPEmbedder - params: - freeze: True - layer: "penultimate" - ip_mode: "local_resample" diff --git a/crm/imagedream/configs/sd_v2_base_ipmv_ch8.yaml b/crm/imagedream/configs/sd_v2_base_ipmv_ch8.yaml deleted file mode 100644 index 1979885..0000000 --- a/crm/imagedream/configs/sd_v2_base_ipmv_ch8.yaml +++ /dev/null @@ -1,61 +0,0 @@ -model: - target: imagedream.ldm.interface.LatentDiffusionInterface - params: - linear_start: 0.00085 - linear_end: 0.0120 - timesteps: 1000 - scale_factor: 0.18215 - parameterization: "eps" - - unet_config: - target: imagedream.ldm.modules.diffusionmodules.openaimodel.MultiViewUNetModel - params: - image_size: 32 # unused - in_channels: 8 - out_channels: 8 - model_channels: 320 - attention_resolutions: [ 4, 2, 1 ] - num_res_blocks: 2 - channel_mult: [ 1, 2, 4, 4 ] - num_head_channels: 64 # need to fix for flash-attn - use_spatial_transformer: True - use_linear_in_transformer: True - transformer_depth: 1 - context_dim: 1024 - use_checkpoint: False - legacy: False - camera_dim: 16 - with_ip: True - ip_dim: 16 # ip token length - ip_mode: "local_resample" - - vae_config: - target: imagedream.ldm.models.autoencoder.AutoencoderKL - params: - embed_dim: 4 - monitor: val/rec_loss - ddconfig: - #attn_type: "vanilla-xformers" - double_z: true - z_channels: 4 - resolution: 256 - in_channels: 3 - out_ch: 3 - ch: 128 - ch_mult: - - 1 - - 2 - - 4 - - 4 - num_res_blocks: 2 - attn_resolutions: [] - dropout: 0.0 - lossconfig: - target: torch.nn.Identity - - clip_config: - target: imagedream.ldm.modules.encoders.modules.FrozenOpenCLIPEmbedder - params: - freeze: True - layer: "penultimate" - ip_mode: "local_resample" diff --git a/crm/imagedream/configs/sd_v2_base_ipmv_chin8.yaml b/crm/imagedream/configs/sd_v2_base_ipmv_chin8.yaml deleted file mode 100644 index b6010de..0000000 --- a/crm/imagedream/configs/sd_v2_base_ipmv_chin8.yaml +++ /dev/null @@ -1,61 +0,0 @@ -model: - target: imagedream.ldm.interface.LatentDiffusionInterface - params: - linear_start: 0.00085 - linear_end: 0.0120 - timesteps: 1000 - scale_factor: 0.18215 - parameterization: "eps" - - unet_config: - target: imagedream.ldm.modules.diffusionmodules.openaimodel.MultiViewUNetModelStage2 - params: - image_size: 32 # unused - in_channels: 8 - out_channels: 4 - model_channels: 320 - attention_resolutions: [ 4, 2, 1 ] - num_res_blocks: 2 - channel_mult: [ 1, 2, 4, 4 ] - num_head_channels: 64 # need to fix for flash-attn - use_spatial_transformer: True - use_linear_in_transformer: True - transformer_depth: 1 - context_dim: 1024 - use_checkpoint: False - legacy: False - camera_dim: 16 - with_ip: True - ip_dim: 16 # ip token length - ip_mode: "local_resample" - - vae_config: - target: imagedream.ldm.models.autoencoder.AutoencoderKL - params: - embed_dim: 4 - monitor: val/rec_loss - ddconfig: - #attn_type: "vanilla-xformers" - double_z: true - z_channels: 4 - resolution: 256 - in_channels: 3 - out_ch: 3 - ch: 128 - ch_mult: - - 1 - - 2 - - 4 - - 4 - num_res_blocks: 2 - attn_resolutions: [] - dropout: 0.0 - lossconfig: - target: torch.nn.Identity - - clip_config: - target: imagedream.ldm.modules.encoders.modules.FrozenOpenCLIPEmbedder - params: - freeze: True - layer: "penultimate" - ip_mode: "local_resample" diff --git a/crm/imagedream/configs/sd_v2_base_ipmv_local.yaml b/crm/imagedream/configs/sd_v2_base_ipmv_local.yaml deleted file mode 100644 index f50e728..0000000 --- a/crm/imagedream/configs/sd_v2_base_ipmv_local.yaml +++ /dev/null @@ -1,62 +0,0 @@ -model: - target: imagedream.ldm.interface.LatentDiffusionInterface - params: - linear_start: 0.00085 - linear_end: 0.0120 - timesteps: 1000 - scale_factor: 0.18215 - parameterization: "eps" - - unet_config: - target: imagedream.ldm.modules.diffusionmodules.openaimodel.MultiViewUNetModel - params: - image_size: 32 # unused - in_channels: 4 - out_channels: 4 - model_channels: 320 - attention_resolutions: [ 4, 2, 1 ] - num_res_blocks: 2 - channel_mult: [ 1, 2, 4, 4 ] - num_head_channels: 64 # need to fix for flash-attn - use_spatial_transformer: True - use_linear_in_transformer: True - transformer_depth: 1 - context_dim: 1024 - use_checkpoint: False - legacy: False - camera_dim: 16 - with_ip: True - ip_dim: 16 # ip token length - ip_mode: "local_resample" - ip_weight: 1.0 # adjust for similarity to image - - vae_config: - target: imagedream.ldm.models.autoencoder.AutoencoderKL - params: - embed_dim: 4 - monitor: val/rec_loss - ddconfig: - #attn_type: "vanilla-xformers" - double_z: true - z_channels: 4 - resolution: 256 - in_channels: 3 - out_ch: 3 - ch: 128 - ch_mult: - - 1 - - 2 - - 4 - - 4 - num_res_blocks: 2 - attn_resolutions: [] - dropout: 0.0 - lossconfig: - target: torch.nn.Identity - - clip_config: - target: imagedream.ldm.modules.encoders.modules.FrozenOpenCLIPEmbedder - params: - freeze: True - layer: "penultimate" - ip_mode: "local_resample" diff --git a/crm/imagedream/ldm/interface.py b/crm/imagedream/ldm/interface.py deleted file mode 100644 index 716c0a2..0000000 --- a/crm/imagedream/ldm/interface.py +++ /dev/null @@ -1,206 +0,0 @@ -from typing import List -from functools import partial - -import numpy as np -import torch -import torch.nn as nn - -from .modules.diffusionmodules.util import ( - make_beta_schedule, - extract_into_tensor, - enforce_zero_terminal_snr, - noise_like, -) -from .util import exists, default, instantiate_from_config -from .modules.distributions.distributions import DiagonalGaussianDistribution - - -class DiffusionWrapper(nn.Module): - def __init__(self, diffusion_model): - super().__init__() - self.diffusion_model = diffusion_model - - def forward(self, *args, **kwargs): - return self.diffusion_model(*args, **kwargs) - - -class LatentDiffusionInterface(nn.Module): - """a simple interface class for LDM inference""" - - def __init__( - self, - unet_config, - clip_config, - vae_config, - parameterization="eps", - scale_factor=0.18215, - beta_schedule="linear", - timesteps=1000, - linear_start=0.00085, - linear_end=0.0120, - cosine_s=8e-3, - given_betas=None, - zero_snr=False, - *args, - **kwargs, - ): - super().__init__() - - unet = instantiate_from_config(unet_config) - self.model = DiffusionWrapper(unet) - self.clip_model = instantiate_from_config(clip_config) - self.vae_model = instantiate_from_config(vae_config) - - self.parameterization = parameterization - self.scale_factor = scale_factor - self.register_schedule( - given_betas=given_betas, - beta_schedule=beta_schedule, - timesteps=timesteps, - linear_start=linear_start, - linear_end=linear_end, - cosine_s=cosine_s, - zero_snr=zero_snr - ) - - def register_schedule( - self, - given_betas=None, - beta_schedule="linear", - timesteps=1000, - linear_start=1e-4, - linear_end=2e-2, - cosine_s=8e-3, - zero_snr=False - ): - if exists(given_betas): - betas = given_betas - else: - betas = make_beta_schedule( - beta_schedule, - timesteps, - linear_start=linear_start, - linear_end=linear_end, - cosine_s=cosine_s, - ) - if zero_snr: - print("--- using zero snr---") - betas = enforce_zero_terminal_snr(betas).numpy() - alphas = 1.0 - betas - alphas_cumprod = np.cumprod(alphas, axis=0) - alphas_cumprod_prev = np.append(1.0, alphas_cumprod[:-1]) - - (timesteps,) = betas.shape - self.num_timesteps = int(timesteps) - self.linear_start = linear_start - self.linear_end = linear_end - assert ( - alphas_cumprod.shape[0] == self.num_timesteps - ), "alphas have to be defined for each timestep" - - to_torch = partial(torch.tensor, dtype=torch.float32) - - self.register_buffer("betas", to_torch(betas)) - self.register_buffer("alphas_cumprod", to_torch(alphas_cumprod)) - self.register_buffer("alphas_cumprod_prev", to_torch(alphas_cumprod_prev)) - - # calculations for diffusion q(x_t | x_{t-1}) and others - self.register_buffer("sqrt_alphas_cumprod", to_torch(np.sqrt(alphas_cumprod))) - self.register_buffer( - "sqrt_one_minus_alphas_cumprod", to_torch(np.sqrt(1.0 - alphas_cumprod)) - ) - self.register_buffer( - "log_one_minus_alphas_cumprod", to_torch(np.log(1.0 - alphas_cumprod)) - ) - eps = 1e-8 # Added this epsilon to avoid divide by zero errors - self.register_buffer( - "sqrt_recip_alphas_cumprod", to_torch(np.sqrt(1.0 / (alphas_cumprod + eps))) - ) - self.register_buffer( - "sqrt_recipm1_alphas_cumprod", to_torch(np.sqrt(1.0 / (alphas_cumprod + eps) - 1)) - ) - - # calculations for posterior q(x_{t-1} | x_t, x_0) - self.v_posterior = 0 - posterior_variance = (1 - self.v_posterior) * betas * ( - 1.0 - alphas_cumprod_prev - ) / (1.0 - alphas_cumprod) + self.v_posterior * betas - # above: equal to 1. / (1. / (1. - alpha_cumprod_tm1) + alpha_t / beta_t) - self.register_buffer("posterior_variance", to_torch(posterior_variance)) - # below: log calculation clipped because the posterior variance is 0 at the beginning of the diffusion chain - self.register_buffer( - "posterior_log_variance_clipped", - to_torch(np.log(np.maximum(posterior_variance, 1e-20))), - ) - self.register_buffer( - "posterior_mean_coef1", - to_torch(betas * np.sqrt(alphas_cumprod_prev) / (1.0 - alphas_cumprod)), - ) - self.register_buffer( - "posterior_mean_coef2", - to_torch( - (1.0 - alphas_cumprod_prev) * np.sqrt(alphas) / (1.0 - alphas_cumprod) - ), - ) - - def q_sample(self, x_start, t, noise=None): - noise = default(noise, lambda: torch.randn_like(x_start)) - return ( - extract_into_tensor(self.sqrt_alphas_cumprod, t, x_start.shape) * x_start - + extract_into_tensor(self.sqrt_one_minus_alphas_cumprod, t, x_start.shape) - * noise - ) - - def get_v(self, x, noise, t): - return ( - extract_into_tensor(self.sqrt_alphas_cumprod, t, x.shape) * noise - - extract_into_tensor(self.sqrt_one_minus_alphas_cumprod, t, x.shape) * x - ) - - def predict_start_from_noise(self, x_t, t, noise): - return ( - extract_into_tensor(self.sqrt_recip_alphas_cumprod, t, x_t.shape) * x_t - - extract_into_tensor(self.sqrt_recipm1_alphas_cumprod, t, x_t.shape) - * noise - ) - - def predict_start_from_z_and_v(self, x_t, t, v): - return ( - extract_into_tensor(self.sqrt_alphas_cumprod, t, x_t.shape) * x_t - - extract_into_tensor(self.sqrt_one_minus_alphas_cumprod, t, x_t.shape) * v - ) - - def predict_eps_from_z_and_v(self, x_t, t, v): - return ( - extract_into_tensor(self.sqrt_alphas_cumprod, t, x_t.shape) * v - + extract_into_tensor(self.sqrt_one_minus_alphas_cumprod, t, x_t.shape) - * x_t - ) - - def apply_model(self, x_noisy, t, cond, **kwargs): - assert isinstance(cond, dict), "cond has to be a dictionary" - return self.model(x_noisy, t, **cond, **kwargs) - - def get_learned_conditioning(self, prompts: List[str]): - return self.clip_model(prompts) - - def get_learned_image_conditioning(self, images): - return self.clip_model.forward_image(images) - - def get_first_stage_encoding(self, encoder_posterior): - if isinstance(encoder_posterior, DiagonalGaussianDistribution): - z = encoder_posterior.sample() - elif isinstance(encoder_posterior, torch.Tensor): - z = encoder_posterior - else: - raise NotImplementedError( - f"encoder_posterior of type '{type(encoder_posterior)}' not yet implemented" - ) - return self.scale_factor * z - - def encode_first_stage(self, x): - return self.vae_model.encode(x) - - def decode_first_stage(self, z): - z = 1.0 / self.scale_factor * z - return self.vae_model.decode(z) diff --git a/crm/imagedream/ldm/models/__init__.py b/crm/imagedream/ldm/models/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/crm/imagedream/ldm/models/autoencoder.py b/crm/imagedream/ldm/models/autoencoder.py deleted file mode 100644 index 8941041..0000000 --- a/crm/imagedream/ldm/models/autoencoder.py +++ /dev/null @@ -1,270 +0,0 @@ -import torch -import torch.nn.functional as F -from contextlib import contextmanager - -from ..modules.diffusionmodules.model import Encoder, Decoder -from ..modules.distributions.distributions import DiagonalGaussianDistribution - -from ..util import instantiate_from_config -from ..modules.ema import LitEma - - -class AutoencoderKL(torch.nn.Module): - def __init__( - self, - ddconfig, - lossconfig, - embed_dim, - ckpt_path=None, - ignore_keys=[], - image_key="image", - colorize_nlabels=None, - monitor=None, - ema_decay=None, - learn_logvar=False, - ): - super().__init__() - self.learn_logvar = learn_logvar - self.image_key = image_key - self.encoder = Encoder(**ddconfig) - self.decoder = Decoder(**ddconfig) - self.loss = instantiate_from_config(lossconfig) - assert ddconfig["double_z"] - self.quant_conv = torch.nn.Conv2d(2 * ddconfig["z_channels"], 2 * embed_dim, 1) - self.post_quant_conv = torch.nn.Conv2d(embed_dim, ddconfig["z_channels"], 1) - self.embed_dim = embed_dim - if colorize_nlabels is not None: - assert type(colorize_nlabels) == int - self.register_buffer("colorize", torch.randn(3, colorize_nlabels, 1, 1)) - if monitor is not None: - self.monitor = monitor - - self.use_ema = ema_decay is not None - if self.use_ema: - self.ema_decay = ema_decay - assert 0.0 < ema_decay < 1.0 - self.model_ema = LitEma(self, decay=ema_decay) - print(f"Keeping EMAs of {len(list(self.model_ema.buffers()))}.") - - if ckpt_path is not None: - self.init_from_ckpt(ckpt_path, ignore_keys=ignore_keys) - - def init_from_ckpt(self, path, ignore_keys=list()): - sd = torch.load(path, map_location="cpu")["state_dict"] - keys = list(sd.keys()) - for k in keys: - for ik in ignore_keys: - if k.startswith(ik): - print("Deleting key {} from state_dict.".format(k)) - del sd[k] - self.load_state_dict(sd, strict=False) - print(f"Restored from {path}") - - @contextmanager - def ema_scope(self, context=None): - if self.use_ema: - self.model_ema.store(self.parameters()) - self.model_ema.copy_to(self) - if context is not None: - print(f"{context}: Switched to EMA weights") - try: - yield None - finally: - if self.use_ema: - self.model_ema.restore(self.parameters()) - if context is not None: - print(f"{context}: Restored training weights") - - def on_train_batch_end(self, *args, **kwargs): - if self.use_ema: - self.model_ema(self) - - def encode(self, x): - h = self.encoder(x) - moments = self.quant_conv(h) - posterior = DiagonalGaussianDistribution(moments) - return posterior - - def decode(self, z): - z = self.post_quant_conv(z) - dec = self.decoder(z) - return dec - - def forward(self, input, sample_posterior=True): - posterior = self.encode(input) - if sample_posterior: - z = posterior.sample() - else: - z = posterior.mode() - dec = self.decode(z) - return dec, posterior - - def get_input(self, batch, k): - x = batch[k] - if len(x.shape) == 3: - x = x[..., None] - x = x.permute(0, 3, 1, 2).to(memory_format=torch.contiguous_format).float() - return x - - def training_step(self, batch, batch_idx, optimizer_idx): - inputs = self.get_input(batch, self.image_key) - reconstructions, posterior = self(inputs) - - if optimizer_idx == 0: - # train encoder+decoder+logvar - aeloss, log_dict_ae = self.loss( - inputs, - reconstructions, - posterior, - optimizer_idx, - self.global_step, - last_layer=self.get_last_layer(), - split="train", - ) - self.log( - "aeloss", - aeloss, - prog_bar=True, - logger=True, - on_step=True, - on_epoch=True, - ) - self.log_dict( - log_dict_ae, prog_bar=False, logger=True, on_step=True, on_epoch=False - ) - return aeloss - - if optimizer_idx == 1: - # train the discriminator - discloss, log_dict_disc = self.loss( - inputs, - reconstructions, - posterior, - optimizer_idx, - self.global_step, - last_layer=self.get_last_layer(), - split="train", - ) - - self.log( - "discloss", - discloss, - prog_bar=True, - logger=True, - on_step=True, - on_epoch=True, - ) - self.log_dict( - log_dict_disc, prog_bar=False, logger=True, on_step=True, on_epoch=False - ) - return discloss - - def validation_step(self, batch, batch_idx): - log_dict = self._validation_step(batch, batch_idx) - with self.ema_scope(): - log_dict_ema = self._validation_step(batch, batch_idx, postfix="_ema") - return log_dict - - def _validation_step(self, batch, batch_idx, postfix=""): - inputs = self.get_input(batch, self.image_key) - reconstructions, posterior = self(inputs) - aeloss, log_dict_ae = self.loss( - inputs, - reconstructions, - posterior, - 0, - self.global_step, - last_layer=self.get_last_layer(), - split="val" + postfix, - ) - - discloss, log_dict_disc = self.loss( - inputs, - reconstructions, - posterior, - 1, - self.global_step, - last_layer=self.get_last_layer(), - split="val" + postfix, - ) - - self.log(f"val{postfix}/rec_loss", log_dict_ae[f"val{postfix}/rec_loss"]) - self.log_dict(log_dict_ae) - self.log_dict(log_dict_disc) - return self.log_dict - - def configure_optimizers(self): - lr = self.learning_rate - ae_params_list = ( - list(self.encoder.parameters()) - + list(self.decoder.parameters()) - + list(self.quant_conv.parameters()) - + list(self.post_quant_conv.parameters()) - ) - if self.learn_logvar: - print(f"{self.__class__.__name__}: Learning logvar") - ae_params_list.append(self.loss.logvar) - opt_ae = torch.optim.Adam(ae_params_list, lr=lr, betas=(0.5, 0.9)) - opt_disc = torch.optim.Adam( - self.loss.discriminator.parameters(), lr=lr, betas=(0.5, 0.9) - ) - return [opt_ae, opt_disc], [] - - def get_last_layer(self): - return self.decoder.conv_out.weight - - @torch.no_grad() - def log_images(self, batch, only_inputs=False, log_ema=False, **kwargs): - log = dict() - x = self.get_input(batch, self.image_key) - x = x.to(self.device) - if not only_inputs: - xrec, posterior = self(x) - if x.shape[1] > 3: - # colorize with random projection - assert xrec.shape[1] > 3 - x = self.to_rgb(x) - xrec = self.to_rgb(xrec) - log["samples"] = self.decode(torch.randn_like(posterior.sample())) - log["reconstructions"] = xrec - if log_ema or self.use_ema: - with self.ema_scope(): - xrec_ema, posterior_ema = self(x) - if x.shape[1] > 3: - # colorize with random projection - assert xrec_ema.shape[1] > 3 - xrec_ema = self.to_rgb(xrec_ema) - log["samples_ema"] = self.decode( - torch.randn_like(posterior_ema.sample()) - ) - log["reconstructions_ema"] = xrec_ema - log["inputs"] = x - return log - - def to_rgb(self, x): - assert self.image_key == "segmentation" - if not hasattr(self, "colorize"): - self.register_buffer("colorize", torch.randn(3, x.shape[1], 1, 1).to(x)) - x = F.conv2d(x, weight=self.colorize) - x = 2.0 * (x - x.min()) / (x.max() - x.min()) - 1.0 - return x - - -class IdentityFirstStage(torch.nn.Module): - def __init__(self, *args, vq_interface=False, **kwargs): - self.vq_interface = vq_interface - super().__init__() - - def encode(self, x, *args, **kwargs): - return x - - def decode(self, x, *args, **kwargs): - return x - - def quantize(self, x, *args, **kwargs): - if self.vq_interface: - return x, None, [None, None, None] - return x - - def forward(self, x, *args, **kwargs): - return x diff --git a/crm/imagedream/ldm/models/diffusion/__init__.py b/crm/imagedream/ldm/models/diffusion/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/crm/imagedream/ldm/models/diffusion/ddim.py b/crm/imagedream/ldm/models/diffusion/ddim.py deleted file mode 100644 index 9bd9c84..0000000 --- a/crm/imagedream/ldm/models/diffusion/ddim.py +++ /dev/null @@ -1,437 +0,0 @@ -"""SAMPLING ONLY.""" - -import torch -import numpy as np -from tqdm import tqdm -from functools import partial - -import comfy.utils - -from ...modules.diffusionmodules.util import ( - make_ddim_sampling_parameters, - make_ddim_timesteps, - noise_like, - extract_into_tensor, -) - - -class DDIMSampler(object): - def __init__(self, model, schedule="linear", **kwargs): - super().__init__() - self.model = model - self.ddpm_num_timesteps = model.num_timesteps - self.schedule = schedule - - def register_buffer(self, name, attr): - if type(attr) == torch.Tensor: - if attr.device != torch.device("cuda"): - attr = attr.to(torch.device("cuda")) - setattr(self, name, attr) - - def make_schedule( - self, ddim_num_steps, ddim_discretize="uniform", ddim_eta=0.0, verbose=True - ): - self.ddim_timesteps = make_ddim_timesteps( - ddim_discr_method=ddim_discretize, - num_ddim_timesteps=ddim_num_steps, - num_ddpm_timesteps=self.ddpm_num_timesteps, - verbose=verbose, - ) - alphas_cumprod = self.model.alphas_cumprod - assert ( - alphas_cumprod.shape[0] == self.ddpm_num_timesteps - ), "alphas have to be defined for each timestep" - to_torch = lambda x: x.clone().detach().to(torch.float32).to(self.model.device) - - self.register_buffer("betas", to_torch(self.model.betas)) - self.register_buffer("alphas_cumprod", to_torch(alphas_cumprod)) - self.register_buffer( - "alphas_cumprod_prev", to_torch(self.model.alphas_cumprod_prev) - ) - - # calculations for diffusion q(x_t | x_{t-1}) and others - self.register_buffer( - "sqrt_alphas_cumprod", to_torch(np.sqrt(alphas_cumprod.cpu())) - ) - self.register_buffer( - "sqrt_one_minus_alphas_cumprod", - to_torch(np.sqrt(1.0 - alphas_cumprod.cpu())), - ) - self.register_buffer( - "log_one_minus_alphas_cumprod", to_torch(np.log(1.0 - alphas_cumprod.cpu())) - ) - self.register_buffer( - "sqrt_recip_alphas_cumprod", to_torch(np.sqrt(1.0 / alphas_cumprod.cpu())) - ) - self.register_buffer( - "sqrt_recipm1_alphas_cumprod", - to_torch(np.sqrt(1.0 / alphas_cumprod.cpu() - 1)), - ) - - # ddim sampling parameters - ddim_sigmas, ddim_alphas, ddim_alphas_prev = make_ddim_sampling_parameters( - alphacums=alphas_cumprod.cpu(), - ddim_timesteps=self.ddim_timesteps, - eta=ddim_eta, - verbose=verbose, - ) - self.register_buffer("ddim_sigmas", ddim_sigmas) - self.register_buffer("ddim_alphas", ddim_alphas) - self.register_buffer("ddim_alphas_prev", ddim_alphas_prev) - self.register_buffer("ddim_sqrt_one_minus_alphas", np.sqrt(1.0 - ddim_alphas)) - sigmas_for_original_sampling_steps = ddim_eta * torch.sqrt( - (1 - self.alphas_cumprod_prev) - / (1 - self.alphas_cumprod) - * (1 - self.alphas_cumprod / self.alphas_cumprod_prev) - ) - self.register_buffer( - "ddim_sigmas_for_original_num_steps", sigmas_for_original_sampling_steps - ) - - @torch.no_grad() - def sample( - self, - S, - batch_size, - shape, - conditioning=None, - callback=None, - normals_sequence=None, - img_callback=None, - quantize_x0=False, - eta=0.0, - mask=None, - x0=None, - temperature=1.0, - noise_dropout=0.0, - score_corrector=None, - corrector_kwargs=None, - verbose=True, - x_T=None, - log_every_t=100, - unconditional_guidance_scale=1.0, - unconditional_conditioning=None, - # this has to come in the same format as the conditioning, # e.g. as encoded tokens, ... - **kwargs, - ): - if conditioning is not None: - if isinstance(conditioning, dict): - cbs = conditioning[list(conditioning.keys())[0]].shape[0] - if cbs != batch_size: - print( - f"Warning: Got {cbs} conditionings but batch-size is {batch_size}" - ) - else: - if conditioning.shape[0] != batch_size: - print( - f"Warning: Got {conditioning.shape[0]} conditionings but batch-size is {batch_size}" - ) - - self.make_schedule(ddim_num_steps=S, ddim_eta=eta, verbose=verbose) - # sampling - C, H, W = shape - size = (batch_size, C, H, W) - - samples, intermediates = self.ddim_sampling( - conditioning, - size, - callback=callback, - img_callback=img_callback, - quantize_denoised=quantize_x0, - mask=mask, - x0=x0, - ddim_use_original_steps=False, - noise_dropout=noise_dropout, - temperature=temperature, - score_corrector=score_corrector, - corrector_kwargs=corrector_kwargs, - x_T=x_T, - log_every_t=log_every_t, - unconditional_guidance_scale=unconditional_guidance_scale, - unconditional_conditioning=unconditional_conditioning, - **kwargs, - ) - return samples, intermediates - - @torch.no_grad() - def ddim_sampling( - self, - cond, - shape, - x_T=None, - ddim_use_original_steps=False, - callback=None, - timesteps=None, - quantize_denoised=False, - mask=None, - x0=None, - img_callback=None, - log_every_t=100, - temperature=1.0, - noise_dropout=0.0, - score_corrector=None, - corrector_kwargs=None, - unconditional_guidance_scale=1.0, - unconditional_conditioning=None, - **kwargs, - ): - """ - when inference time: all values of parameter - cond.keys(): dict_keys(['context', 'camera', 'num_frames', 'ip', 'ip_img']) - shape: (5, 4, 32, 32) - x_T: None - ddim_use_original_steps: False - timesteps: None - callback: None - quantize_denoised: False - mask: None - image_callback: None - log_every_t: 100 - temperature: 1.0 - noise_dropout: 0.0 - score_corrector: None - corrector_kwargs: None - unconditional_guidance_scale: 5 - unconditional_conditioning.keys(): dict_keys(['context', 'camera', 'num_frames', 'ip', 'ip_img']) - kwargs: {} - """ - device = self.model.betas.device - b = shape[0] - if x_T is None: - img = torch.randn(shape, device=device) # shape: torch.Size([5, 4, 32, 32]) mean: -0.00, std: 1.00, min: -3.64, max: 3.94 - else: - img = x_T - - if timesteps is None: # equal with set time step in hf - timesteps = ( - self.ddpm_num_timesteps - if ddim_use_original_steps - else self.ddim_timesteps - ) - elif timesteps is not None and not ddim_use_original_steps: - subset_end = ( - int( - min(timesteps / self.ddim_timesteps.shape[0], 1) - * self.ddim_timesteps.shape[0] - ) - - 1 - ) - timesteps = self.ddim_timesteps[:subset_end] - - intermediates = {"x_inter": [img], "pred_x0": [img]} - time_range = ( # reversed timesteps - reversed(range(0, timesteps)) - if ddim_use_original_steps - else np.flip(timesteps) - ) - total_steps = timesteps if ddim_use_original_steps else timesteps.shape[0] - iterator = tqdm(time_range, desc="DDIM Sampler", total=total_steps) - - comfy_pbar = comfy.utils.ProgressBar(total_steps) - - for i, step in enumerate(iterator): - index = total_steps - i - 1 - ts = torch.full((b,), step, device=device, dtype=torch.long) - - if mask is not None: - assert x0 is not None - img_orig = self.model.q_sample( - x0, ts - ) # TODO: deterministic forward pass? - img = img_orig * mask + (1.0 - mask) * img - - outs = self.p_sample_ddim( - img, - cond, - ts, - index=index, - use_original_steps=ddim_use_original_steps, - quantize_denoised=quantize_denoised, - temperature=temperature, - noise_dropout=noise_dropout, - score_corrector=score_corrector, - corrector_kwargs=corrector_kwargs, - unconditional_guidance_scale=unconditional_guidance_scale, - unconditional_conditioning=unconditional_conditioning, - **kwargs, - ) - img, pred_x0 = outs - if callback: - callback(i) - if img_callback: - img_callback(pred_x0, i) - - if index % log_every_t == 0 or index == total_steps - 1: - intermediates["x_inter"].append(img) - intermediates["pred_x0"].append(pred_x0) - - comfy_pbar.update_absolute(i + 1) - - return img, intermediates - - @torch.no_grad() - def p_sample_ddim( - self, - x, - c, - t, - index, - repeat_noise=False, - use_original_steps=False, - quantize_denoised=False, - temperature=1.0, - noise_dropout=0.0, - score_corrector=None, - corrector_kwargs=None, - unconditional_guidance_scale=1.0, - unconditional_conditioning=None, - dynamic_threshold=None, - **kwargs, - ): - b, *_, device = *x.shape, x.device - - if unconditional_conditioning is None or unconditional_guidance_scale == 1.0: - model_output = self.model.apply_model(x, t, c) - else: - x_in = torch.cat([x] * 2) - t_in = torch.cat([t] * 2) - if isinstance(c, dict): - assert isinstance(unconditional_conditioning, dict) - c_in = dict() - for k in c: - if isinstance(c[k], list): - c_in[k] = [ - torch.cat([unconditional_conditioning[k][i], c[k][i]]) - for i in range(len(c[k])) - ] - elif isinstance(c[k], torch.Tensor): - c_in[k] = torch.cat([unconditional_conditioning[k], c[k]]) - else: - assert c[k] == unconditional_conditioning[k] - c_in[k] = c[k] - elif isinstance(c, list): - c_in = list() - assert isinstance(unconditional_conditioning, list) - for i in range(len(c)): - c_in.append(torch.cat([unconditional_conditioning[i], c[i]])) - else: - c_in = torch.cat([unconditional_conditioning, c]) - model_uncond, model_t = self.model.apply_model(x_in, t_in, c_in).chunk(2) - model_output = model_uncond + unconditional_guidance_scale * ( - model_t - model_uncond - ) - - - if self.model.parameterization == "v": - print("using v!") - e_t = self.model.predict_eps_from_z_and_v(x, t, model_output) - else: - e_t = model_output - - if score_corrector is not None: - assert self.model.parameterization == "eps", "not implemented" - e_t = score_corrector.modify_score( - self.model, e_t, x, t, c, **corrector_kwargs - ) - - alphas = self.model.alphas_cumprod if use_original_steps else self.ddim_alphas - alphas_prev = ( - self.model.alphas_cumprod_prev - if use_original_steps - else self.ddim_alphas_prev - ) - sqrt_one_minus_alphas = ( - self.model.sqrt_one_minus_alphas_cumprod - if use_original_steps - else self.ddim_sqrt_one_minus_alphas - ) - sigmas = ( - self.model.ddim_sigmas_for_original_num_steps - if use_original_steps - else self.ddim_sigmas - ) - # select parameters corresponding to the currently considered timestep - a_t = torch.full((b, 1, 1, 1), alphas[index], device=device) - a_prev = torch.full((b, 1, 1, 1), alphas_prev[index], device=device) - sigma_t = torch.full((b, 1, 1, 1), sigmas[index], device=device) - sqrt_one_minus_at = torch.full( - (b, 1, 1, 1), sqrt_one_minus_alphas[index], device=device - ) - - # current prediction for x_0 - if self.model.parameterization != "v": - pred_x0 = (x - sqrt_one_minus_at * e_t) / a_t.sqrt() - else: - pred_x0 = self.model.predict_start_from_z_and_v(x, t, model_output) - - if quantize_denoised: - pred_x0, _, *_ = self.model.first_stage_model.quantize(pred_x0) - - if dynamic_threshold is not None: - raise NotImplementedError() - - # direction pointing to x_t - dir_xt = (1.0 - a_prev - sigma_t**2).sqrt() * e_t - noise = sigma_t * noise_like(x.shape, device, repeat_noise) * temperature - if noise_dropout > 0.0: - noise = torch.nn.functional.dropout(noise, p=noise_dropout) - x_prev = a_prev.sqrt() * pred_x0 + dir_xt + noise - return x_prev, pred_x0 - - @torch.no_grad() - def stochastic_encode(self, x0, t, use_original_steps=False, noise=None): - # fast, but does not allow for exact reconstruction - # t serves as an index to gather the correct alphas - if use_original_steps: - sqrt_alphas_cumprod = self.sqrt_alphas_cumprod - sqrt_one_minus_alphas_cumprod = self.sqrt_one_minus_alphas_cumprod - else: - sqrt_alphas_cumprod = torch.sqrt(self.ddim_alphas) - sqrt_one_minus_alphas_cumprod = self.ddim_sqrt_one_minus_alphas - - if noise is None: - noise = torch.randn_like(x0) - return ( - extract_into_tensor(sqrt_alphas_cumprod, t, x0.shape) * x0 - + extract_into_tensor(sqrt_one_minus_alphas_cumprod, t, x0.shape) * noise - ) - - @torch.no_grad() - def decode( - self, - x_latent, - cond, - t_start, - unconditional_guidance_scale=1.0, - unconditional_conditioning=None, - use_original_steps=False, - **kwargs, - ): - timesteps = ( - np.arange(self.ddpm_num_timesteps) - if use_original_steps - else self.ddim_timesteps - ) - timesteps = timesteps[:t_start] - - time_range = np.flip(timesteps) - total_steps = timesteps.shape[0] - - iterator = tqdm(time_range, desc="Decoding image", total=total_steps) - x_dec = x_latent - for i, step in enumerate(iterator): - index = total_steps - i - 1 - ts = torch.full( - (x_latent.shape[0],), step, device=x_latent.device, dtype=torch.long - ) - x_dec, _ = self.p_sample_ddim( - x_dec, - cond, - ts, - index=index, - use_original_steps=use_original_steps, - unconditional_guidance_scale=unconditional_guidance_scale, - unconditional_conditioning=unconditional_conditioning, - **kwargs, - ) - return x_dec diff --git a/crm/imagedream/ldm/modules/__init__.py b/crm/imagedream/ldm/modules/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/crm/imagedream/ldm/modules/attention.py b/crm/imagedream/ldm/modules/attention.py deleted file mode 100644 index 0693788..0000000 --- a/crm/imagedream/ldm/modules/attention.py +++ /dev/null @@ -1,456 +0,0 @@ -from inspect import isfunction -import math -import torch -import torch.nn.functional as F -from torch import nn, einsum -from einops import rearrange, repeat -from typing import Optional, Any - -from .diffusionmodules.util import checkpoint - - -try: - import xformers - import xformers.ops - - XFORMERS_IS_AVAILBLE = True -except: - XFORMERS_IS_AVAILBLE = False - -# CrossAttn precision handling -import os - -_ATTN_PRECISION = os.environ.get("ATTN_PRECISION", "fp32") - - -def exists(val): - return val is not None - - -def uniq(arr): - return {el: True for el in arr}.keys() - - -def default(val, d): - if exists(val): - return val - return d() if isfunction(d) else d - - -def max_neg_value(t): - return -torch.finfo(t.dtype).max - - -def init_(tensor): - dim = tensor.shape[-1] - std = 1 / math.sqrt(dim) - tensor.uniform_(-std, std) - return tensor - - -# feedforward -class GEGLU(nn.Module): - def __init__(self, dim_in, dim_out): - super().__init__() - self.proj = nn.Linear(dim_in, dim_out * 2) - - def forward(self, x): - x, gate = self.proj(x).chunk(2, dim=-1) - return x * F.gelu(gate) - - -class FeedForward(nn.Module): - def __init__(self, dim, dim_out=None, mult=4, glu=False, dropout=0.0): - super().__init__() - inner_dim = int(dim * mult) - dim_out = default(dim_out, dim) - project_in = ( - nn.Sequential(nn.Linear(dim, inner_dim), nn.GELU()) - if not glu - else GEGLU(dim, inner_dim) - ) - - self.net = nn.Sequential( - project_in, nn.Dropout(dropout), nn.Linear(inner_dim, dim_out) - ) - - def forward(self, x): - return self.net(x) - - -def zero_module(module): - """ - Zero out the parameters of a module and return it. - """ - for p in module.parameters(): - p.detach().zero_() - return module - - -def Normalize(in_channels): - return torch.nn.GroupNorm( - num_groups=32, num_channels=in_channels, eps=1e-6, affine=True - ) - - -class SpatialSelfAttention(nn.Module): - def __init__(self, in_channels): - super().__init__() - self.in_channels = in_channels - - self.norm = Normalize(in_channels) - self.q = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - self.k = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - self.v = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - self.proj_out = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - - def forward(self, x): - h_ = x - h_ = self.norm(h_) - q = self.q(h_) - k = self.k(h_) - v = self.v(h_) - - # compute attention - b, c, h, w = q.shape - q = rearrange(q, "b c h w -> b (h w) c") - k = rearrange(k, "b c h w -> b c (h w)") - w_ = torch.einsum("bij,bjk->bik", q, k) - - w_ = w_ * (int(c) ** (-0.5)) - w_ = torch.nn.functional.softmax(w_, dim=2) - - # attend to values - v = rearrange(v, "b c h w -> b c (h w)") - w_ = rearrange(w_, "b i j -> b j i") - h_ = torch.einsum("bij,bjk->bik", v, w_) - h_ = rearrange(h_, "b c (h w) -> b c h w", h=h) - h_ = self.proj_out(h_) - - return x + h_ - - -class MemoryEfficientCrossAttention(nn.Module): - # https://github.com/MatthieuTPHR/diffusers/blob/d80b531ff8060ec1ea982b65a1b8df70f73aa67c/src/diffusers/models/attention.py#L223 - def __init__(self, query_dim, context_dim=None, heads=8, dim_head=64, dropout=0.0, **kwargs): - super().__init__() - print( - f"Setting up {self.__class__.__name__}. Query dim is {query_dim}, context_dim is {context_dim} and using " - f"{heads} heads." - ) - inner_dim = dim_head * heads - context_dim = default(context_dim, query_dim) - - self.heads = heads - self.dim_head = dim_head - - self.with_ip = kwargs.get("with_ip", False) - if self.with_ip and (context_dim is not None): - self.to_k_ip = nn.Linear(context_dim, inner_dim, bias=False) - self.to_v_ip = nn.Linear(context_dim, inner_dim, bias=False) - self.ip_dim= kwargs.get("ip_dim", 16) - self.ip_weight = kwargs.get("ip_weight", 1.0) - - self.to_q = nn.Linear(query_dim, inner_dim, bias=False) - self.to_k = nn.Linear(context_dim, inner_dim, bias=False) - self.to_v = nn.Linear(context_dim, inner_dim, bias=False) - - self.to_out = nn.Sequential( - nn.Linear(inner_dim, query_dim), nn.Dropout(dropout) - ) - self.attention_op: Optional[Any] = None - - def forward(self, x, context=None, mask=None): - q = self.to_q(x) - - has_ip = self.with_ip and (context is not None) - if has_ip: - # context dim [(b frame_num), (77 + img_token), 1024] - token_len = context.shape[1] - context_ip = context[:, -self.ip_dim:, :] - k_ip = self.to_k_ip(context_ip) - v_ip = self.to_v_ip(context_ip) - context = context[:, :(token_len - self.ip_dim), :] - - context = default(context, x) - k = self.to_k(context) - v = self.to_v(context) - - b, _, _ = q.shape - q, k, v = map( - lambda t: t.unsqueeze(3) - .reshape(b, t.shape[1], self.heads, self.dim_head) - .permute(0, 2, 1, 3) - .reshape(b * self.heads, t.shape[1], self.dim_head) - .contiguous(), - (q, k, v), - ) - - # actually compute the attention, what we cannot get enough of - out = xformers.ops.memory_efficient_attention( - q, k, v, attn_bias=None, op=self.attention_op - ) - - if has_ip: - k_ip, v_ip = map( - lambda t: t.unsqueeze(3) - .reshape(b, t.shape[1], self.heads, self.dim_head) - .permute(0, 2, 1, 3) - .reshape(b * self.heads, t.shape[1], self.dim_head) - .contiguous(), - (k_ip, v_ip), - ) - # actually compute the attention, what we cannot get enough of - out_ip = xformers.ops.memory_efficient_attention( - q, k_ip, v_ip, attn_bias=None, op=self.attention_op - ) - out = out + self.ip_weight * out_ip - - if exists(mask): - raise NotImplementedError - out = ( - out.unsqueeze(0) - .reshape(b, self.heads, out.shape[1], self.dim_head) - .permute(0, 2, 1, 3) - .reshape(b, out.shape[1], self.heads * self.dim_head) - ) - return self.to_out(out) - - -class BasicTransformerBlock(nn.Module): - def __init__( - self, - dim, - n_heads, - d_head, - dropout=0.0, - context_dim=None, - gated_ff=True, - checkpoint=True, - disable_self_attn=False, - **kwargs - ): - super().__init__() - assert XFORMERS_IS_AVAILBLE, "xformers is not available" - attn_cls = MemoryEfficientCrossAttention - self.disable_self_attn = disable_self_attn - self.attn1 = attn_cls( - query_dim=dim, - heads=n_heads, - dim_head=d_head, - dropout=dropout, - context_dim=context_dim if self.disable_self_attn else None, - ) # is a self-attention if not self.disable_self_attn - self.ff = FeedForward(dim, dropout=dropout, glu=gated_ff) - self.attn2 = attn_cls( - query_dim=dim, - context_dim=context_dim, - heads=n_heads, - dim_head=d_head, - dropout=dropout, - **kwargs - ) # is self-attn if context is none - self.norm1 = nn.LayerNorm(dim) - self.norm2 = nn.LayerNorm(dim) - self.norm3 = nn.LayerNorm(dim) - self.checkpoint = checkpoint - - def forward(self, x, context=None): - return checkpoint( - self._forward, (x, context), self.parameters(), self.checkpoint - ) - - def _forward(self, x, context=None): - x = ( - self.attn1( - self.norm1(x), context=context if self.disable_self_attn else None - ) - + x - ) - x = self.attn2(self.norm2(x), context=context) + x - x = self.ff(self.norm3(x)) + x - return x - - -class SpatialTransformer(nn.Module): - """ - Transformer block for image-like data. - First, project the input (aka embedding) - and reshape to b, t, d. - Then apply standard transformer action. - Finally, reshape to image - NEW: use_linear for more efficiency instead of the 1x1 convs - """ - - def __init__( - self, - in_channels, - n_heads, - d_head, - depth=1, - dropout=0.0, - context_dim=None, - disable_self_attn=False, - use_linear=False, - use_checkpoint=True, - **kwargs - ): - super().__init__() - if exists(context_dim) and not isinstance(context_dim, list): - context_dim = [context_dim] - self.in_channels = in_channels - inner_dim = n_heads * d_head - self.norm = Normalize(in_channels) - if not use_linear: - self.proj_in = nn.Conv2d( - in_channels, inner_dim, kernel_size=1, stride=1, padding=0 - ) - else: - self.proj_in = nn.Linear(in_channels, inner_dim) - - self.transformer_blocks = nn.ModuleList( - [ - BasicTransformerBlock( - inner_dim, - n_heads, - d_head, - dropout=dropout, - context_dim=context_dim[d], - disable_self_attn=disable_self_attn, - checkpoint=use_checkpoint, - **kwargs - ) - for d in range(depth) - ] - ) - if not use_linear: - self.proj_out = zero_module( - nn.Conv2d(inner_dim, in_channels, kernel_size=1, stride=1, padding=0) - ) - else: - self.proj_out = zero_module(nn.Linear(in_channels, inner_dim)) - self.use_linear = use_linear - - def forward(self, x, context=None): - # note: if no context is given, cross-attention defaults to self-attention - if not isinstance(context, list): - context = [context] - b, c, h, w = x.shape - x_in = x - x = self.norm(x) - if not self.use_linear: - x = self.proj_in(x) - x = rearrange(x, "b c h w -> b (h w) c").contiguous() - if self.use_linear: - x = self.proj_in(x) - for i, block in enumerate(self.transformer_blocks): - x = block(x, context=context[i]) - if self.use_linear: - x = self.proj_out(x) - x = rearrange(x, "b (h w) c -> b c h w", h=h, w=w).contiguous() - if not self.use_linear: - x = self.proj_out(x) - return x + x_in - - -class BasicTransformerBlock3D(BasicTransformerBlock): - def forward(self, x, context=None, num_frames=1): - return checkpoint( - self._forward, (x, context, num_frames), self.parameters(), self.checkpoint - ) - - def _forward(self, x, context=None, num_frames=1): - x = rearrange(x, "(b f) l c -> b (f l) c", f=num_frames).contiguous() - x = ( - self.attn1( - self.norm1(x), - context=context if self.disable_self_attn else None - ) - + x - ) - x = rearrange(x, "b (f l) c -> (b f) l c", f=num_frames).contiguous() - x = self.attn2(self.norm2(x), context=context) + x - x = self.ff(self.norm3(x)) + x - return x - - -class SpatialTransformer3D(nn.Module): - """3D self-attention""" - - def __init__( - self, - in_channels, - n_heads, - d_head, - depth=1, - dropout=0.0, - context_dim=None, - disable_self_attn=False, - use_linear=False, - use_checkpoint=True, - **kwargs - ): - super().__init__() - if exists(context_dim) and not isinstance(context_dim, list): - context_dim = [context_dim] - self.in_channels = in_channels - inner_dim = n_heads * d_head - self.norm = Normalize(in_channels) - if not use_linear: - self.proj_in = nn.Conv2d( - in_channels, inner_dim, kernel_size=1, stride=1, padding=0 - ) - else: - self.proj_in = nn.Linear(in_channels, inner_dim) - - self.transformer_blocks = nn.ModuleList( - [ - BasicTransformerBlock3D( - inner_dim, - n_heads, - d_head, - dropout=dropout, - context_dim=context_dim[d], - disable_self_attn=disable_self_attn, - checkpoint=use_checkpoint, - **kwargs - ) - for d in range(depth) - ] - ) - if not use_linear: - self.proj_out = zero_module( - nn.Conv2d(inner_dim, in_channels, kernel_size=1, stride=1, padding=0) - ) - else: - self.proj_out = zero_module(nn.Linear(in_channels, inner_dim)) - self.use_linear = use_linear - - def forward(self, x, context=None, num_frames=1): - # note: if no context is given, cross-attention defaults to self-attention - if not isinstance(context, list): - context = [context] - b, c, h, w = x.shape - x_in = x - x = self.norm(x) - if not self.use_linear: - x = self.proj_in(x) - x = rearrange(x, "b c h w -> b (h w) c").contiguous() - if self.use_linear: - x = self.proj_in(x) - for i, block in enumerate(self.transformer_blocks): - x = block(x, context=context[i], num_frames=num_frames) - if self.use_linear: - x = self.proj_out(x) - x = rearrange(x, "b (h w) c -> b c h w", h=h, w=w).contiguous() - if not self.use_linear: - x = self.proj_out(x) - return x + x_in diff --git a/crm/imagedream/ldm/modules/diffusionmodules/__init__.py b/crm/imagedream/ldm/modules/diffusionmodules/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/crm/imagedream/ldm/modules/diffusionmodules/adaptors.py b/crm/imagedream/ldm/modules/diffusionmodules/adaptors.py deleted file mode 100644 index 547e7f4..0000000 --- a/crm/imagedream/ldm/modules/diffusionmodules/adaptors.py +++ /dev/null @@ -1,163 +0,0 @@ -# modified from https://github.com/mlfoundations/open_flamingo/blob/main/open_flamingo/src/helpers.py -import math - -import torch -import torch.nn as nn - - -# FFN -def FeedForward(dim, mult=4): - inner_dim = int(dim * mult) - return nn.Sequential( - nn.LayerNorm(dim), - nn.Linear(dim, inner_dim, bias=False), - nn.GELU(), - nn.Linear(inner_dim, dim, bias=False), - ) - - -def reshape_tensor(x, heads): - bs, length, width = x.shape - #(bs, length, width) --> (bs, length, n_heads, dim_per_head) - x = x.view(bs, length, heads, -1) - # (bs, length, n_heads, dim_per_head) --> (bs, n_heads, length, dim_per_head) - x = x.transpose(1, 2) - # (bs, n_heads, length, dim_per_head) --> (bs*n_heads, length, dim_per_head) - x = x.reshape(bs, heads, length, -1) - return x - - -class PerceiverAttention(nn.Module): - def __init__(self, *, dim, dim_head=64, heads=8): - super().__init__() - self.scale = dim_head**-0.5 - self.dim_head = dim_head - self.heads = heads - inner_dim = dim_head * heads - - self.norm1 = nn.LayerNorm(dim) - self.norm2 = nn.LayerNorm(dim) - - self.to_q = nn.Linear(dim, inner_dim, bias=False) - self.to_kv = nn.Linear(dim, inner_dim * 2, bias=False) - self.to_out = nn.Linear(inner_dim, dim, bias=False) - - - def forward(self, x, latents): - """ - Args: - x (torch.Tensor): image features - shape (b, n1, D) - latent (torch.Tensor): latent features - shape (b, n2, D) - """ - x = self.norm1(x) - latents = self.norm2(latents) - - b, l, _ = latents.shape - - q = self.to_q(latents) - kv_input = torch.cat((x, latents), dim=-2) - k, v = self.to_kv(kv_input).chunk(2, dim=-1) - - q = reshape_tensor(q, self.heads) - k = reshape_tensor(k, self.heads) - v = reshape_tensor(v, self.heads) - - # attention - scale = 1 / math.sqrt(math.sqrt(self.dim_head)) - weight = (q * scale) @ (k * scale).transpose(-2, -1) # More stable with f16 than dividing afterwards - weight = torch.softmax(weight.float(), dim=-1).type(weight.dtype) - out = weight @ v - - out = out.permute(0, 2, 1, 3).reshape(b, l, -1) - - return self.to_out(out) - - -class ImageProjModel(torch.nn.Module): - """Projection Model""" - def __init__(self, - cross_attention_dim=1024, - clip_embeddings_dim=1024, - clip_extra_context_tokens=4): - super().__init__() - self.cross_attention_dim = cross_attention_dim - self.clip_extra_context_tokens = clip_extra_context_tokens - - # from 1024 -> 4 * 1024 - self.proj = torch.nn.Linear( - clip_embeddings_dim, - self.clip_extra_context_tokens * cross_attention_dim) - self.norm = torch.nn.LayerNorm(cross_attention_dim) - - def forward(self, image_embeds): - embeds = image_embeds - clip_extra_context_tokens = self.proj(embeds).reshape(-1, self.clip_extra_context_tokens, self.cross_attention_dim) - clip_extra_context_tokens = self.norm(clip_extra_context_tokens) - return clip_extra_context_tokens - - -class SimpleReSampler(nn.Module): - def __init__(self, embedding_dim=1280, output_dim=1024): - super().__init__() - self.proj_out = nn.Linear(embedding_dim, output_dim) - self.norm_out = nn.LayerNorm(output_dim) - - def forward(self, latents): - """ - latents: B 256 N - """ - latents = self.proj_out(latents) - return self.norm_out(latents) - - -class Resampler(nn.Module): - def __init__( - self, - dim=1024, - depth=8, - dim_head=64, - heads=16, - num_queries=8, - embedding_dim=768, - output_dim=1024, - ff_mult=4, - ): - super().__init__() - self.latents = nn.Parameter(torch.randn(1, num_queries, dim) / dim**0.5) - self.proj_in = nn.Linear(embedding_dim, dim) - self.proj_out = nn.Linear(dim, output_dim) - self.norm_out = nn.LayerNorm(output_dim) - - self.layers = nn.ModuleList([]) - for _ in range(depth): - self.layers.append( - nn.ModuleList( - [ - PerceiverAttention(dim=dim, - dim_head=dim_head, - heads=heads), - FeedForward(dim=dim, mult=ff_mult), - ] - ) - ) - - def forward(self, x): - latents = self.latents.repeat(x.size(0), 1, 1) - x = self.proj_in(x) - for attn, ff in self.layers: - latents = attn(x, latents) + latents - latents = ff(latents) + latents - - latents = self.proj_out(latents) - return self.norm_out(latents) - - -if __name__ == '__main__': - resampler = Resampler(embedding_dim=1280) - resampler = SimpleReSampler(embedding_dim=1280) - tensor = torch.rand(4, 257, 1280) - embed = resampler(tensor) - # embed = (tensor) - print(embed.shape) diff --git a/crm/imagedream/ldm/modules/diffusionmodules/model.py b/crm/imagedream/ldm/modules/diffusionmodules/model.py deleted file mode 100644 index 090df6b..0000000 --- a/crm/imagedream/ldm/modules/diffusionmodules/model.py +++ /dev/null @@ -1,1018 +0,0 @@ -# pytorch_diffusion + derived encoder decoder -import math -import torch -import torch.nn as nn -import numpy as np -from einops import rearrange -from typing import Optional, Any - -from ..attention import MemoryEfficientCrossAttention - -try: - import xformers - import xformers.ops - - XFORMERS_IS_AVAILBLE = True -except: - XFORMERS_IS_AVAILBLE = False - print("No module 'xformers'. Proceeding without it.") - - -def get_timestep_embedding(timesteps, embedding_dim): - """ - This matches the implementation in Denoising Diffusion Probabilistic Models: - From Fairseq. - Build sinusoidal embeddings. - This matches the implementation in tensor2tensor, but differs slightly - from the description in Section 3.5 of "Attention Is All You Need". - """ - assert len(timesteps.shape) == 1 - - half_dim = embedding_dim // 2 - emb = math.log(10000) / (half_dim - 1) - emb = torch.exp(torch.arange(half_dim, dtype=torch.float32) * -emb) - emb = emb.to(device=timesteps.device) - emb = timesteps.float()[:, None] * emb[None, :] - emb = torch.cat([torch.sin(emb), torch.cos(emb)], dim=1) - if embedding_dim % 2 == 1: # zero pad - emb = torch.nn.functional.pad(emb, (0, 1, 0, 0)) - return emb - - -def nonlinearity(x): - # swish - return x * torch.sigmoid(x) - - -def Normalize(in_channels, num_groups=32): - return torch.nn.GroupNorm( - num_groups=num_groups, num_channels=in_channels, eps=1e-6, affine=True - ) - - -class Upsample(nn.Module): - def __init__(self, in_channels, with_conv): - super().__init__() - self.with_conv = with_conv - if self.with_conv: - self.conv = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=3, stride=1, padding=1 - ) - - def forward(self, x): - x = torch.nn.functional.interpolate(x, scale_factor=2.0, mode="nearest") - if self.with_conv: - x = self.conv(x) - return x - - -class Downsample(nn.Module): - def __init__(self, in_channels, with_conv): - super().__init__() - self.with_conv = with_conv - if self.with_conv: - # no asymmetric padding in torch conv, must do it ourselves - self.conv = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=3, stride=2, padding=0 - ) - - def forward(self, x): - if self.with_conv: - pad = (0, 1, 0, 1) - x = torch.nn.functional.pad(x, pad, mode="constant", value=0) - x = self.conv(x) - else: - x = torch.nn.functional.avg_pool2d(x, kernel_size=2, stride=2) - return x - - -class ResnetBlock(nn.Module): - def __init__( - self, - *, - in_channels, - out_channels=None, - conv_shortcut=False, - dropout, - temb_channels=512, - ): - super().__init__() - self.in_channels = in_channels - out_channels = in_channels if out_channels is None else out_channels - self.out_channels = out_channels - self.use_conv_shortcut = conv_shortcut - - self.norm1 = Normalize(in_channels) - self.conv1 = torch.nn.Conv2d( - in_channels, out_channels, kernel_size=3, stride=1, padding=1 - ) - if temb_channels > 0: - self.temb_proj = torch.nn.Linear(temb_channels, out_channels) - self.norm2 = Normalize(out_channels) - self.dropout = torch.nn.Dropout(dropout) - self.conv2 = torch.nn.Conv2d( - out_channels, out_channels, kernel_size=3, stride=1, padding=1 - ) - if self.in_channels != self.out_channels: - if self.use_conv_shortcut: - self.conv_shortcut = torch.nn.Conv2d( - in_channels, out_channels, kernel_size=3, stride=1, padding=1 - ) - else: - self.nin_shortcut = torch.nn.Conv2d( - in_channels, out_channels, kernel_size=1, stride=1, padding=0 - ) - - def forward(self, x, temb): - h = x - h = self.norm1(h) - h = nonlinearity(h) - h = self.conv1(h) - - if temb is not None: - h = h + self.temb_proj(nonlinearity(temb))[:, :, None, None] - - h = self.norm2(h) - h = nonlinearity(h) - h = self.dropout(h) - h = self.conv2(h) - - if self.in_channels != self.out_channels: - if self.use_conv_shortcut: - x = self.conv_shortcut(x) - else: - x = self.nin_shortcut(x) - - return x + h - - -class AttnBlock(nn.Module): - def __init__(self, in_channels): - super().__init__() - self.in_channels = in_channels - - self.norm = Normalize(in_channels) - self.q = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - self.k = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - self.v = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - self.proj_out = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - - def forward(self, x): - h_ = x - h_ = self.norm(h_) - q = self.q(h_) - k = self.k(h_) - v = self.v(h_) - - # compute attention - b, c, h, w = q.shape - q = q.reshape(b, c, h * w) - q = q.permute(0, 2, 1) # b,hw,c - k = k.reshape(b, c, h * w) # b,c,hw - w_ = torch.bmm(q, k) # b,hw,hw w[b,i,j]=sum_c q[b,i,c]k[b,c,j] - w_ = w_ * (int(c) ** (-0.5)) - w_ = torch.nn.functional.softmax(w_, dim=2) - - # attend to values - v = v.reshape(b, c, h * w) - w_ = w_.permute(0, 2, 1) # b,hw,hw (first hw of k, second of q) - h_ = torch.bmm(v, w_) # b, c,hw (hw of q) h_[b,c,j] = sum_i v[b,c,i] w_[b,i,j] - h_ = h_.reshape(b, c, h, w) - - h_ = self.proj_out(h_) - - return x + h_ - - -class MemoryEfficientAttnBlock(nn.Module): - """ - Uses xformers efficient implementation, - see https://github.com/MatthieuTPHR/diffusers/blob/d80b531ff8060ec1ea982b65a1b8df70f73aa67c/src/diffusers/models/attention.py#L223 - Note: this is a single-head self-attention operation - """ - - # - def __init__(self, in_channels): - super().__init__() - self.in_channels = in_channels - - self.norm = Normalize(in_channels) - self.q = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - self.k = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - self.v = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - self.proj_out = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=1, stride=1, padding=0 - ) - self.attention_op: Optional[Any] = None - - def forward(self, x): - h_ = x - h_ = self.norm(h_) - q = self.q(h_) - k = self.k(h_) - v = self.v(h_) - - # compute attention - B, C, H, W = q.shape - q, k, v = map(lambda x: rearrange(x, "b c h w -> b (h w) c"), (q, k, v)) - - q, k, v = map( - lambda t: t.unsqueeze(3) - .reshape(B, t.shape[1], 1, C) - .permute(0, 2, 1, 3) - .reshape(B * 1, t.shape[1], C) - .contiguous(), - (q, k, v), - ) - out = xformers.ops.memory_efficient_attention( - q, k, v, attn_bias=None, op=self.attention_op - ) - - out = ( - out.unsqueeze(0) - .reshape(B, 1, out.shape[1], C) - .permute(0, 2, 1, 3) - .reshape(B, out.shape[1], C) - ) - out = rearrange(out, "b (h w) c -> b c h w", b=B, h=H, w=W, c=C) - out = self.proj_out(out) - return x + out - - -class MemoryEfficientCrossAttentionWrapper(MemoryEfficientCrossAttention): - def forward(self, x, context=None, mask=None): - b, c, h, w = x.shape - x = rearrange(x, "b c h w -> b (h w) c") - out = super().forward(x, context=context, mask=mask) - out = rearrange(out, "b (h w) c -> b c h w", h=h, w=w, c=c) - return x + out - - -def make_attn(in_channels, attn_type="vanilla", attn_kwargs=None): - assert attn_type in [ - "vanilla", - "vanilla-xformers", - "memory-efficient-cross-attn", - "linear", - "none", - ], f"attn_type {attn_type} unknown" - if XFORMERS_IS_AVAILBLE and attn_type == "vanilla": - attn_type = "vanilla-xformers" - print(f"making attention of type '{attn_type}' with {in_channels} in_channels") - if attn_type == "vanilla": - assert attn_kwargs is None - return AttnBlock(in_channels) - elif attn_type == "vanilla-xformers": - print(f"building MemoryEfficientAttnBlock with {in_channels} in_channels...") - return MemoryEfficientAttnBlock(in_channels) - elif type == "memory-efficient-cross-attn": - attn_kwargs["query_dim"] = in_channels - return MemoryEfficientCrossAttentionWrapper(**attn_kwargs) - elif attn_type == "none": - return nn.Identity(in_channels) - else: - raise NotImplementedError() - - -class Model(nn.Module): - def __init__( - self, - *, - ch, - out_ch, - ch_mult=(1, 2, 4, 8), - num_res_blocks, - attn_resolutions, - dropout=0.0, - resamp_with_conv=True, - in_channels, - resolution, - use_timestep=True, - use_linear_attn=False, - attn_type="vanilla", - ): - super().__init__() - if use_linear_attn: - attn_type = "linear" - self.ch = ch - self.temb_ch = self.ch * 4 - self.num_resolutions = len(ch_mult) - self.num_res_blocks = num_res_blocks - self.resolution = resolution - self.in_channels = in_channels - - self.use_timestep = use_timestep - if self.use_timestep: - # timestep embedding - self.temb = nn.Module() - self.temb.dense = nn.ModuleList( - [ - torch.nn.Linear(self.ch, self.temb_ch), - torch.nn.Linear(self.temb_ch, self.temb_ch), - ] - ) - - # downsampling - self.conv_in = torch.nn.Conv2d( - in_channels, self.ch, kernel_size=3, stride=1, padding=1 - ) - - curr_res = resolution - in_ch_mult = (1,) + tuple(ch_mult) - self.down = nn.ModuleList() - for i_level in range(self.num_resolutions): - block = nn.ModuleList() - attn = nn.ModuleList() - block_in = ch * in_ch_mult[i_level] - block_out = ch * ch_mult[i_level] - for i_block in range(self.num_res_blocks): - block.append( - ResnetBlock( - in_channels=block_in, - out_channels=block_out, - temb_channels=self.temb_ch, - dropout=dropout, - ) - ) - block_in = block_out - if curr_res in attn_resolutions: - attn.append(make_attn(block_in, attn_type=attn_type)) - down = nn.Module() - down.block = block - down.attn = attn - if i_level != self.num_resolutions - 1: - down.downsample = Downsample(block_in, resamp_with_conv) - curr_res = curr_res // 2 - self.down.append(down) - - # middle - self.mid = nn.Module() - self.mid.block_1 = ResnetBlock( - in_channels=block_in, - out_channels=block_in, - temb_channels=self.temb_ch, - dropout=dropout, - ) - self.mid.attn_1 = make_attn(block_in, attn_type=attn_type) - self.mid.block_2 = ResnetBlock( - in_channels=block_in, - out_channels=block_in, - temb_channels=self.temb_ch, - dropout=dropout, - ) - - # upsampling - self.up = nn.ModuleList() - for i_level in reversed(range(self.num_resolutions)): - block = nn.ModuleList() - attn = nn.ModuleList() - block_out = ch * ch_mult[i_level] - skip_in = ch * ch_mult[i_level] - for i_block in range(self.num_res_blocks + 1): - if i_block == self.num_res_blocks: - skip_in = ch * in_ch_mult[i_level] - block.append( - ResnetBlock( - in_channels=block_in + skip_in, - out_channels=block_out, - temb_channels=self.temb_ch, - dropout=dropout, - ) - ) - block_in = block_out - if curr_res in attn_resolutions: - attn.append(make_attn(block_in, attn_type=attn_type)) - up = nn.Module() - up.block = block - up.attn = attn - if i_level != 0: - up.upsample = Upsample(block_in, resamp_with_conv) - curr_res = curr_res * 2 - self.up.insert(0, up) # prepend to get consistent order - - # end - self.norm_out = Normalize(block_in) - self.conv_out = torch.nn.Conv2d( - block_in, out_ch, kernel_size=3, stride=1, padding=1 - ) - - def forward(self, x, t=None, context=None): - # assert x.shape[2] == x.shape[3] == self.resolution - if context is not None: - # assume aligned context, cat along channel axis - x = torch.cat((x, context), dim=1) - if self.use_timestep: - # timestep embedding - assert t is not None - temb = get_timestep_embedding(t, self.ch) - temb = self.temb.dense[0](temb) - temb = nonlinearity(temb) - temb = self.temb.dense[1](temb) - else: - temb = None - - # downsampling - hs = [self.conv_in(x)] - for i_level in range(self.num_resolutions): - for i_block in range(self.num_res_blocks): - h = self.down[i_level].block[i_block](hs[-1], temb) - if len(self.down[i_level].attn) > 0: - h = self.down[i_level].attn[i_block](h) - hs.append(h) - if i_level != self.num_resolutions - 1: - hs.append(self.down[i_level].downsample(hs[-1])) - - # middle - h = hs[-1] - h = self.mid.block_1(h, temb) - h = self.mid.attn_1(h) - h = self.mid.block_2(h, temb) - - # upsampling - for i_level in reversed(range(self.num_resolutions)): - for i_block in range(self.num_res_blocks + 1): - h = self.up[i_level].block[i_block]( - torch.cat([h, hs.pop()], dim=1), temb - ) - if len(self.up[i_level].attn) > 0: - h = self.up[i_level].attn[i_block](h) - if i_level != 0: - h = self.up[i_level].upsample(h) - - # end - h = self.norm_out(h) - h = nonlinearity(h) - h = self.conv_out(h) - return h - - def get_last_layer(self): - return self.conv_out.weight - - -class Encoder(nn.Module): - def __init__( - self, - *, - ch, - out_ch, - ch_mult=(1, 2, 4, 8), - num_res_blocks, - attn_resolutions, - dropout=0.0, - resamp_with_conv=True, - in_channels, - resolution, - z_channels, - double_z=True, - use_linear_attn=False, - attn_type="vanilla", - **ignore_kwargs, - ): - super().__init__() - if use_linear_attn: - attn_type = "linear" - self.ch = ch - self.temb_ch = 0 - self.num_resolutions = len(ch_mult) - self.num_res_blocks = num_res_blocks - self.resolution = resolution - self.in_channels = in_channels - - # downsampling - self.conv_in = torch.nn.Conv2d( - in_channels, self.ch, kernel_size=3, stride=1, padding=1 - ) - - curr_res = resolution - in_ch_mult = (1,) + tuple(ch_mult) - self.in_ch_mult = in_ch_mult - self.down = nn.ModuleList() - for i_level in range(self.num_resolutions): - block = nn.ModuleList() - attn = nn.ModuleList() - block_in = ch * in_ch_mult[i_level] - block_out = ch * ch_mult[i_level] - for i_block in range(self.num_res_blocks): - block.append( - ResnetBlock( - in_channels=block_in, - out_channels=block_out, - temb_channels=self.temb_ch, - dropout=dropout, - ) - ) - block_in = block_out - if curr_res in attn_resolutions: - attn.append(make_attn(block_in, attn_type=attn_type)) - down = nn.Module() - down.block = block - down.attn = attn - if i_level != self.num_resolutions - 1: - down.downsample = Downsample(block_in, resamp_with_conv) - curr_res = curr_res // 2 - self.down.append(down) - - # middle - self.mid = nn.Module() - self.mid.block_1 = ResnetBlock( - in_channels=block_in, - out_channels=block_in, - temb_channels=self.temb_ch, - dropout=dropout, - ) - self.mid.attn_1 = make_attn(block_in, attn_type=attn_type) - self.mid.block_2 = ResnetBlock( - in_channels=block_in, - out_channels=block_in, - temb_channels=self.temb_ch, - dropout=dropout, - ) - - # end - self.norm_out = Normalize(block_in) - self.conv_out = torch.nn.Conv2d( - block_in, - 2 * z_channels if double_z else z_channels, - kernel_size=3, - stride=1, - padding=1, - ) - - def forward(self, x): - # timestep embedding - temb = None - - # downsampling - hs = [self.conv_in(x)] - for i_level in range(self.num_resolutions): - for i_block in range(self.num_res_blocks): - h = self.down[i_level].block[i_block](hs[-1], temb) - if len(self.down[i_level].attn) > 0: - h = self.down[i_level].attn[i_block](h) - hs.append(h) - if i_level != self.num_resolutions - 1: - hs.append(self.down[i_level].downsample(hs[-1])) - - # middle - h = hs[-1] - h = self.mid.block_1(h, temb) - h = self.mid.attn_1(h) - h = self.mid.block_2(h, temb) - - # end - h = self.norm_out(h) - h = nonlinearity(h) - h = self.conv_out(h) - return h - - -class Decoder(nn.Module): - def __init__( - self, - *, - ch, - out_ch, - ch_mult=(1, 2, 4, 8), - num_res_blocks, - attn_resolutions, - dropout=0.0, - resamp_with_conv=True, - in_channels, - resolution, - z_channels, - give_pre_end=False, - tanh_out=False, - use_linear_attn=False, - attn_type="vanilla", - **ignorekwargs, - ): - super().__init__() - if use_linear_attn: - attn_type = "linear" - self.ch = ch - self.temb_ch = 0 - self.num_resolutions = len(ch_mult) - self.num_res_blocks = num_res_blocks - self.resolution = resolution - self.in_channels = in_channels - self.give_pre_end = give_pre_end - self.tanh_out = tanh_out - - # compute in_ch_mult, block_in and curr_res at lowest res - in_ch_mult = (1,) + tuple(ch_mult) - block_in = ch * ch_mult[self.num_resolutions - 1] - curr_res = resolution // 2 ** (self.num_resolutions - 1) - self.z_shape = (1, z_channels, curr_res, curr_res) - print( - "Working with z of shape {} = {} dimensions.".format( - self.z_shape, np.prod(self.z_shape) - ) - ) - - # z to block_in - self.conv_in = torch.nn.Conv2d( - z_channels, block_in, kernel_size=3, stride=1, padding=1 - ) - - # middle - self.mid = nn.Module() - self.mid.block_1 = ResnetBlock( - in_channels=block_in, - out_channels=block_in, - temb_channels=self.temb_ch, - dropout=dropout, - ) - self.mid.attn_1 = make_attn(block_in, attn_type=attn_type) - self.mid.block_2 = ResnetBlock( - in_channels=block_in, - out_channels=block_in, - temb_channels=self.temb_ch, - dropout=dropout, - ) - - # upsampling - self.up = nn.ModuleList() - for i_level in reversed(range(self.num_resolutions)): - block = nn.ModuleList() - attn = nn.ModuleList() - block_out = ch * ch_mult[i_level] - for i_block in range(self.num_res_blocks + 1): - block.append( - ResnetBlock( - in_channels=block_in, - out_channels=block_out, - temb_channels=self.temb_ch, - dropout=dropout, - ) - ) - block_in = block_out - if curr_res in attn_resolutions: - attn.append(make_attn(block_in, attn_type=attn_type)) - up = nn.Module() - up.block = block - up.attn = attn - if i_level != 0: - up.upsample = Upsample(block_in, resamp_with_conv) - curr_res = curr_res * 2 - self.up.insert(0, up) # prepend to get consistent order - - # end - self.norm_out = Normalize(block_in) - self.conv_out = torch.nn.Conv2d( - block_in, out_ch, kernel_size=3, stride=1, padding=1 - ) - - def forward(self, z): - # assert z.shape[1:] == self.z_shape[1:] - self.last_z_shape = z.shape - - # timestep embedding - temb = None - - # z to block_in - h = self.conv_in(z) - - # middle - h = self.mid.block_1(h, temb) - h = self.mid.attn_1(h) - h = self.mid.block_2(h, temb) - - # upsampling - for i_level in reversed(range(self.num_resolutions)): - for i_block in range(self.num_res_blocks + 1): - h = self.up[i_level].block[i_block](h, temb) - if len(self.up[i_level].attn) > 0: - h = self.up[i_level].attn[i_block](h) - if i_level != 0: - h = self.up[i_level].upsample(h) - - # end - if self.give_pre_end: - return h - - h = self.norm_out(h) - h = nonlinearity(h) - h = self.conv_out(h) - if self.tanh_out: - h = torch.tanh(h) - return h - - -class SimpleDecoder(nn.Module): - def __init__(self, in_channels, out_channels, *args, **kwargs): - super().__init__() - self.model = nn.ModuleList( - [ - nn.Conv2d(in_channels, in_channels, 1), - ResnetBlock( - in_channels=in_channels, - out_channels=2 * in_channels, - temb_channels=0, - dropout=0.0, - ), - ResnetBlock( - in_channels=2 * in_channels, - out_channels=4 * in_channels, - temb_channels=0, - dropout=0.0, - ), - ResnetBlock( - in_channels=4 * in_channels, - out_channels=2 * in_channels, - temb_channels=0, - dropout=0.0, - ), - nn.Conv2d(2 * in_channels, in_channels, 1), - Upsample(in_channels, with_conv=True), - ] - ) - # end - self.norm_out = Normalize(in_channels) - self.conv_out = torch.nn.Conv2d( - in_channels, out_channels, kernel_size=3, stride=1, padding=1 - ) - - def forward(self, x): - for i, layer in enumerate(self.model): - if i in [1, 2, 3]: - x = layer(x, None) - else: - x = layer(x) - - h = self.norm_out(x) - h = nonlinearity(h) - x = self.conv_out(h) - return x - - -class UpsampleDecoder(nn.Module): - def __init__( - self, - in_channels, - out_channels, - ch, - num_res_blocks, - resolution, - ch_mult=(2, 2), - dropout=0.0, - ): - super().__init__() - # upsampling - self.temb_ch = 0 - self.num_resolutions = len(ch_mult) - self.num_res_blocks = num_res_blocks - block_in = in_channels - curr_res = resolution // 2 ** (self.num_resolutions - 1) - self.res_blocks = nn.ModuleList() - self.upsample_blocks = nn.ModuleList() - for i_level in range(self.num_resolutions): - res_block = [] - block_out = ch * ch_mult[i_level] - for i_block in range(self.num_res_blocks + 1): - res_block.append( - ResnetBlock( - in_channels=block_in, - out_channels=block_out, - temb_channels=self.temb_ch, - dropout=dropout, - ) - ) - block_in = block_out - self.res_blocks.append(nn.ModuleList(res_block)) - if i_level != self.num_resolutions - 1: - self.upsample_blocks.append(Upsample(block_in, True)) - curr_res = curr_res * 2 - - # end - self.norm_out = Normalize(block_in) - self.conv_out = torch.nn.Conv2d( - block_in, out_channels, kernel_size=3, stride=1, padding=1 - ) - - def forward(self, x): - # upsampling - h = x - for k, i_level in enumerate(range(self.num_resolutions)): - for i_block in range(self.num_res_blocks + 1): - h = self.res_blocks[i_level][i_block](h, None) - if i_level != self.num_resolutions - 1: - h = self.upsample_blocks[k](h) - h = self.norm_out(h) - h = nonlinearity(h) - h = self.conv_out(h) - return h - - -class LatentRescaler(nn.Module): - def __init__(self, factor, in_channels, mid_channels, out_channels, depth=2): - super().__init__() - # residual block, interpolate, residual block - self.factor = factor - self.conv_in = nn.Conv2d( - in_channels, mid_channels, kernel_size=3, stride=1, padding=1 - ) - self.res_block1 = nn.ModuleList( - [ - ResnetBlock( - in_channels=mid_channels, - out_channels=mid_channels, - temb_channels=0, - dropout=0.0, - ) - for _ in range(depth) - ] - ) - self.attn = AttnBlock(mid_channels) - self.res_block2 = nn.ModuleList( - [ - ResnetBlock( - in_channels=mid_channels, - out_channels=mid_channels, - temb_channels=0, - dropout=0.0, - ) - for _ in range(depth) - ] - ) - - self.conv_out = nn.Conv2d( - mid_channels, - out_channels, - kernel_size=1, - ) - - def forward(self, x): - x = self.conv_in(x) - for block in self.res_block1: - x = block(x, None) - x = torch.nn.functional.interpolate( - x, - size=( - int(round(x.shape[2] * self.factor)), - int(round(x.shape[3] * self.factor)), - ), - ) - x = self.attn(x) - for block in self.res_block2: - x = block(x, None) - x = self.conv_out(x) - return x - - -class MergedRescaleEncoder(nn.Module): - def __init__( - self, - in_channels, - ch, - resolution, - out_ch, - num_res_blocks, - attn_resolutions, - dropout=0.0, - resamp_with_conv=True, - ch_mult=(1, 2, 4, 8), - rescale_factor=1.0, - rescale_module_depth=1, - ): - super().__init__() - intermediate_chn = ch * ch_mult[-1] - self.encoder = Encoder( - in_channels=in_channels, - num_res_blocks=num_res_blocks, - ch=ch, - ch_mult=ch_mult, - z_channels=intermediate_chn, - double_z=False, - resolution=resolution, - attn_resolutions=attn_resolutions, - dropout=dropout, - resamp_with_conv=resamp_with_conv, - out_ch=None, - ) - self.rescaler = LatentRescaler( - factor=rescale_factor, - in_channels=intermediate_chn, - mid_channels=intermediate_chn, - out_channels=out_ch, - depth=rescale_module_depth, - ) - - def forward(self, x): - x = self.encoder(x) - x = self.rescaler(x) - return x - - -class MergedRescaleDecoder(nn.Module): - def __init__( - self, - z_channels, - out_ch, - resolution, - num_res_blocks, - attn_resolutions, - ch, - ch_mult=(1, 2, 4, 8), - dropout=0.0, - resamp_with_conv=True, - rescale_factor=1.0, - rescale_module_depth=1, - ): - super().__init__() - tmp_chn = z_channels * ch_mult[-1] - self.decoder = Decoder( - out_ch=out_ch, - z_channels=tmp_chn, - attn_resolutions=attn_resolutions, - dropout=dropout, - resamp_with_conv=resamp_with_conv, - in_channels=None, - num_res_blocks=num_res_blocks, - ch_mult=ch_mult, - resolution=resolution, - ch=ch, - ) - self.rescaler = LatentRescaler( - factor=rescale_factor, - in_channels=z_channels, - mid_channels=tmp_chn, - out_channels=tmp_chn, - depth=rescale_module_depth, - ) - - def forward(self, x): - x = self.rescaler(x) - x = self.decoder(x) - return x - - -class Upsampler(nn.Module): - def __init__(self, in_size, out_size, in_channels, out_channels, ch_mult=2): - super().__init__() - assert out_size >= in_size - num_blocks = int(np.log2(out_size // in_size)) + 1 - factor_up = 1.0 + (out_size % in_size) - print( - f"Building {self.__class__.__name__} with in_size: {in_size} --> out_size {out_size} and factor {factor_up}" - ) - self.rescaler = LatentRescaler( - factor=factor_up, - in_channels=in_channels, - mid_channels=2 * in_channels, - out_channels=in_channels, - ) - self.decoder = Decoder( - out_ch=out_channels, - resolution=out_size, - z_channels=in_channels, - num_res_blocks=2, - attn_resolutions=[], - in_channels=None, - ch=in_channels, - ch_mult=[ch_mult for _ in range(num_blocks)], - ) - - def forward(self, x): - x = self.rescaler(x) - x = self.decoder(x) - return x - - -class Resize(nn.Module): - def __init__(self, in_channels=None, learned=False, mode="bilinear"): - super().__init__() - self.with_conv = learned - self.mode = mode - if self.with_conv: - print( - f"Note: {self.__class__.__name} uses learned downsampling and will ignore the fixed {mode} mode" - ) - raise NotImplementedError() - assert in_channels is not None - # no asymmetric padding in torch conv, must do it ourselves - self.conv = torch.nn.Conv2d( - in_channels, in_channels, kernel_size=4, stride=2, padding=1 - ) - - def forward(self, x, scale_factor=1.0): - if scale_factor == 1.0: - return x - else: - x = torch.nn.functional.interpolate( - x, mode=self.mode, align_corners=False, scale_factor=scale_factor - ) - return x diff --git a/crm/imagedream/ldm/modules/diffusionmodules/openaimodel.py b/crm/imagedream/ldm/modules/diffusionmodules/openaimodel.py deleted file mode 100644 index daaf862..0000000 --- a/crm/imagedream/ldm/modules/diffusionmodules/openaimodel.py +++ /dev/null @@ -1,1135 +0,0 @@ -from abc import abstractmethod -import math - -import numpy as np -import torch -import torch as th -import torch.nn as nn -import torch.nn.functional as F -from einops import rearrange, repeat - -from crm.imagedream.ldm.modules.diffusionmodules.util import ( - checkpoint, - conv_nd, - linear, - avg_pool_nd, - zero_module, - normalization, - timestep_embedding, - convert_module_to_f16, - convert_module_to_f32 -) -from crm.imagedream.ldm.modules.attention import ( - SpatialTransformer, - SpatialTransformer3D, - exists -) -from crm.imagedream.ldm.modules.diffusionmodules.adaptors import ( - Resampler, - ImageProjModel -) - -## go -class AttentionPool2d(nn.Module): - """ - Adapted from CLIP: https://github.com/openai/CLIP/blob/main/clip/model.py - """ - - def __init__( - self, - spacial_dim: int, - embed_dim: int, - num_heads_channels: int, - output_dim: int = None, - ): - super().__init__() - self.positional_embedding = nn.Parameter( - th.randn(embed_dim, spacial_dim**2 + 1) / embed_dim**0.5 - ) - self.qkv_proj = conv_nd(1, embed_dim, 3 * embed_dim, 1) - self.c_proj = conv_nd(1, embed_dim, output_dim or embed_dim, 1) - self.num_heads = embed_dim // num_heads_channels - self.attention = QKVAttention(self.num_heads) - - def forward(self, x): - b, c, *_spatial = x.shape - x = x.reshape(b, c, -1) # NC(HW) - x = th.cat([x.mean(dim=-1, keepdim=True), x], dim=-1) # NC(HW+1) - x = x + self.positional_embedding[None, :, :].to(x.dtype) # NC(HW+1) - x = self.qkv_proj(x) - x = self.attention(x) - x = self.c_proj(x) - return x[:, :, 0] - - -class TimestepBlock(nn.Module): - """ - Any module where forward() takes timestep embeddings as a second argument. - """ - - @abstractmethod - def forward(self, x, emb): - """ - Apply the module to `x` given `emb` timestep embeddings. - """ - - -class TimestepEmbedSequential(nn.Sequential, TimestepBlock): - """ - A sequential module that passes timestep embeddings to the children that - support it as an extra input. - """ - - def forward(self, x, emb, context=None, num_frames=1): - for layer in self: - if isinstance(layer, TimestepBlock): - x = layer(x, emb) - elif isinstance(layer, SpatialTransformer3D): - x = layer(x, context, num_frames=num_frames) - elif isinstance(layer, SpatialTransformer): - x = layer(x, context) - else: - x = layer(x) - return x - - -class Upsample(nn.Module): - """ - An upsampling layer with an optional convolution. - :param channels: channels in the inputs and outputs. - :param use_conv: a bool determining if a convolution is applied. - :param dims: determines if the signal is 1D, 2D, or 3D. If 3D, then - upsampling occurs in the inner-two dimensions. - """ - - def __init__(self, channels, use_conv, dims=2, out_channels=None, padding=1): - super().__init__() - self.channels = channels - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.dims = dims - if use_conv: - self.conv = conv_nd( - dims, self.channels, self.out_channels, 3, padding=padding - ) - - def forward(self, x): - assert x.shape[1] == self.channels - if self.dims == 3: - x = F.interpolate( - x, (x.shape[2], x.shape[3] * 2, x.shape[4] * 2), mode="nearest" - ) - else: - x = F.interpolate(x, scale_factor=2, mode="nearest") - if self.use_conv: - x = self.conv(x) - return x - - -class TransposedUpsample(nn.Module): - "Learned 2x upsampling without padding" - - def __init__(self, channels, out_channels=None, ks=5): - super().__init__() - self.channels = channels - self.out_channels = out_channels or channels - - self.up = nn.ConvTranspose2d( - self.channels, self.out_channels, kernel_size=ks, stride=2 - ) - - def forward(self, x): - return self.up(x) - - -class Downsample(nn.Module): - """ - A downsampling layer with an optional convolution. - :param channels: channels in the inputs and outputs. - :param use_conv: a bool determining if a convolution is applied. - :param dims: determines if the signal is 1D, 2D, or 3D. If 3D, then - downsampling occurs in the inner-two dimensions. - """ - - def __init__(self, channels, use_conv, dims=2, out_channels=None, padding=1): - super().__init__() - self.channels = channels - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.dims = dims - stride = 2 if dims != 3 else (1, 2, 2) - if use_conv: - self.op = conv_nd( - dims, - self.channels, - self.out_channels, - 3, - stride=stride, - padding=padding, - ) - else: - assert self.channels == self.out_channels - self.op = avg_pool_nd(dims, kernel_size=stride, stride=stride) - - def forward(self, x): - assert x.shape[1] == self.channels - return self.op(x) - - -class ResBlock(TimestepBlock): - """ - A residual block that can optionally change the number of channels. - :param channels: the number of input channels. - :param emb_channels: the number of timestep embedding channels. - :param dropout: the rate of dropout. - :param out_channels: if specified, the number of out channels. - :param use_conv: if True and out_channels is specified, use a spatial - convolution instead of a smaller 1x1 convolution to change the - channels in the skip connection. - :param dims: determines if the signal is 1D, 2D, or 3D. - :param use_checkpoint: if True, use gradient checkpointing on this module. - :param up: if True, use this block for upsampling. - :param down: if True, use this block for downsampling. - """ - - def __init__( - self, - channels, - emb_channels, - dropout, - out_channels=None, - use_conv=False, - use_scale_shift_norm=False, - dims=2, - use_checkpoint=False, - up=False, - down=False, - ): - super().__init__() - self.channels = channels - self.emb_channels = emb_channels - self.dropout = dropout - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.use_checkpoint = use_checkpoint - self.use_scale_shift_norm = use_scale_shift_norm - - self.in_layers = nn.Sequential( - normalization(channels), - nn.SiLU(), - conv_nd(dims, channels, self.out_channels, 3, padding=1), - ) - - self.updown = up or down - - if up: - self.h_upd = Upsample(channels, False, dims) - self.x_upd = Upsample(channels, False, dims) - elif down: - self.h_upd = Downsample(channels, False, dims) - self.x_upd = Downsample(channels, False, dims) - else: - self.h_upd = self.x_upd = nn.Identity() - - self.emb_layers = nn.Sequential( - nn.SiLU(), - linear( - emb_channels, - 2 * self.out_channels if use_scale_shift_norm else self.out_channels, - ), - ) - self.out_layers = nn.Sequential( - normalization(self.out_channels), - nn.SiLU(), - nn.Dropout(p=dropout), - zero_module( - conv_nd(dims, self.out_channels, self.out_channels, 3, padding=1) - ), - ) - - if self.out_channels == channels: - self.skip_connection = nn.Identity() - elif use_conv: - self.skip_connection = conv_nd( - dims, channels, self.out_channels, 3, padding=1 - ) - else: - self.skip_connection = conv_nd(dims, channels, self.out_channels, 1) - - def forward(self, x, emb): - """ - Apply the block to a Tensor, conditioned on a timestep embedding. - :param x: an [N x C x ...] Tensor of features. - :param emb: an [N x emb_channels] Tensor of timestep embeddings. - :return: an [N x C x ...] Tensor of outputs. - """ - return checkpoint( - self._forward, (x, emb), self.parameters(), self.use_checkpoint - ) - - def _forward(self, x, emb): - if self.updown: - in_rest, in_conv = self.in_layers[:-1], self.in_layers[-1] - h = in_rest(x) - h = self.h_upd(h) - x = self.x_upd(x) - h = in_conv(h) - else: - h = self.in_layers(x) - emb_out = self.emb_layers(emb).type(h.dtype) - while len(emb_out.shape) < len(h.shape): - emb_out = emb_out[..., None] - if self.use_scale_shift_norm: - out_norm, out_rest = self.out_layers[0], self.out_layers[1:] - scale, shift = th.chunk(emb_out, 2, dim=1) - h = out_norm(h) * (1 + scale) + shift - h = out_rest(h) - else: - h = h + emb_out - h = self.out_layers(h) - return self.skip_connection(x) + h - - -class AttentionBlock(nn.Module): - """ - An attention block that allows spatial positions to attend to each other. - Originally ported from here, but adapted to the N-d case. - https://github.com/hojonathanho/diffusion/blob/1e0dceb3b3495bbe19116a5e1b3596cd0706c543/diffusion_tf/models/unet.py#L66. - """ - - def __init__( - self, - channels, - num_heads=1, - num_head_channels=-1, - use_checkpoint=False, - use_new_attention_order=False, - ): - super().__init__() - self.channels = channels - if num_head_channels == -1: - self.num_heads = num_heads - else: - assert ( - channels % num_head_channels == 0 - ), f"q,k,v channels {channels} is not divisible by num_head_channels {num_head_channels}" - self.num_heads = channels // num_head_channels - self.use_checkpoint = use_checkpoint - self.norm = normalization(channels) - self.qkv = conv_nd(1, channels, channels * 3, 1) - if use_new_attention_order: - # split qkv before split heads - self.attention = QKVAttention(self.num_heads) - else: - # split heads before split qkv - self.attention = QKVAttentionLegacy(self.num_heads) - - self.proj_out = zero_module(conv_nd(1, channels, channels, 1)) - - def forward(self, x): - return checkpoint( - self._forward, (x,), self.parameters(), True - ) # TODO: check checkpoint usage, is True # TODO: fix the .half call!!! - # return pt_checkpoint(self._forward, x) # pytorch - - def _forward(self, x): - b, c, *spatial = x.shape - x = x.reshape(b, c, -1) - qkv = self.qkv(self.norm(x)) - h = self.attention(qkv) - h = self.proj_out(h) - return (x + h).reshape(b, c, *spatial) - - -def count_flops_attn(model, _x, y): - """ - A counter for the `thop` package to count the operations in an - attention operation. - Meant to be used like: - macs, params = thop.profile( - model, - inputs=(inputs, timestamps), - custom_ops={QKVAttention: QKVAttention.count_flops}, - ) - """ - b, c, *spatial = y[0].shape - num_spatial = int(np.prod(spatial)) - # We perform two matmuls with the same number of ops. - # The first computes the weight matrix, the second computes - # the combination of the value vectors. - matmul_ops = 2 * b * (num_spatial**2) * c - model.total_ops += th.DoubleTensor([matmul_ops]) - - -class QKVAttentionLegacy(nn.Module): - """ - A module which performs QKV attention. Matches legacy QKVAttention + input/ouput heads shaping - """ - - def __init__(self, n_heads): - super().__init__() - self.n_heads = n_heads - - def forward(self, qkv): - """ - Apply QKV attention. - :param qkv: an [N x (H * 3 * C) x T] tensor of Qs, Ks, and Vs. - :return: an [N x (H * C) x T] tensor after attention. - """ - bs, width, length = qkv.shape - assert width % (3 * self.n_heads) == 0 - ch = width // (3 * self.n_heads) - q, k, v = qkv.reshape(bs * self.n_heads, ch * 3, length).split(ch, dim=1) - scale = 1 / math.sqrt(math.sqrt(ch)) - weight = th.einsum( - "bct,bcs->bts", q * scale, k * scale - ) # More stable with f16 than dividing afterwards - weight = th.softmax(weight.float(), dim=-1).type(weight.dtype) - a = th.einsum("bts,bcs->bct", weight, v) - return a.reshape(bs, -1, length) - - @staticmethod - def count_flops(model, _x, y): - return count_flops_attn(model, _x, y) - - -class QKVAttention(nn.Module): - """ - A module which performs QKV attention and splits in a different order. - """ - - def __init__(self, n_heads): - super().__init__() - self.n_heads = n_heads - - def forward(self, qkv): - """ - Apply QKV attention. - :param qkv: an [N x (3 * H * C) x T] tensor of Qs, Ks, and Vs. - :return: an [N x (H * C) x T] tensor after attention. - """ - bs, width, length = qkv.shape - assert width % (3 * self.n_heads) == 0 - ch = width // (3 * self.n_heads) - q, k, v = qkv.chunk(3, dim=1) - scale = 1 / math.sqrt(math.sqrt(ch)) - weight = th.einsum( - "bct,bcs->bts", - (q * scale).view(bs * self.n_heads, ch, length), - (k * scale).view(bs * self.n_heads, ch, length), - ) # More stable with f16 than dividing afterwards - weight = th.softmax(weight.float(), dim=-1).type(weight.dtype) - a = th.einsum("bts,bcs->bct", weight, v.reshape(bs * self.n_heads, ch, length)) - return a.reshape(bs, -1, length) - - @staticmethod - def count_flops(model, _x, y): - return count_flops_attn(model, _x, y) - - -class Timestep(nn.Module): - def __init__(self, dim): - super().__init__() - self.dim = dim - - def forward(self, t): - return timestep_embedding(t, self.dim) - - -class MultiViewUNetModel(nn.Module): - """ - The full multi-view UNet model with attention, timestep embedding and camera embedding. - :param in_channels: channels in the input Tensor. - :param model_channels: base channel count for the model. - :param out_channels: channels in the output Tensor. - :param num_res_blocks: number of residual blocks per downsample. - :param attention_resolutions: a collection of downsample rates at which - attention will take place. May be a set, list, or tuple. - For example, if this contains 4, then at 4x downsampling, attention - will be used. - :param dropout: the dropout probability. - :param channel_mult: channel multiplier for each level of the UNet. - :param conv_resample: if True, use learned convolutions for upsampling and - downsampling. - :param dims: determines if the signal is 1D, 2D, or 3D. - :param num_classes: if specified (as an int), then this model will be - class-conditional with `num_classes` classes. - :param use_checkpoint: use gradient checkpointing to reduce memory usage. - :param num_heads: the number of attention heads in each attention layer. - :param num_heads_channels: if specified, ignore num_heads and instead use - a fixed channel width per attention head. - :param num_heads_upsample: works with num_heads to set a different number - of heads for upsampling. Deprecated. - :param use_scale_shift_norm: use a FiLM-like conditioning mechanism. - :param resblock_updown: use residual blocks for up/downsampling. - :param use_new_attention_order: use a different attention pattern for potentially - increased efficiency. - :param camera_dim: dimensionality of camera input. - """ - - def __init__( - self, - image_size, - in_channels, - model_channels, - out_channels, - num_res_blocks, - attention_resolutions, - dropout=0, - channel_mult=(1, 2, 4, 8), - conv_resample=True, - dims=2, - num_classes=None, - use_checkpoint=False, - use_fp16=False, - use_bf16=False, - num_heads=-1, - num_head_channels=-1, - num_heads_upsample=-1, - use_scale_shift_norm=False, - resblock_updown=False, - use_new_attention_order=False, - use_spatial_transformer=False, # custom transformer support - transformer_depth=1, # custom transformer support - context_dim=None, # custom transformer support - n_embed=None, # custom support for prediction of discrete ids into codebook of first stage vq model - legacy=True, - disable_self_attentions=None, - num_attention_blocks=None, - disable_middle_self_attn=False, - use_linear_in_transformer=False, - adm_in_channels=None, - camera_dim=None, - with_ip=False, # wether add image prompt images - ip_dim=0, # number of extra token, 4 for global 16 for local - ip_weight=1.0, # weight for image prompt context - ip_mode="local_resample", # which mode of adaptor, global or local - ): - super().__init__() - if use_spatial_transformer: - assert ( - context_dim is not None - ), "Fool!! You forgot to include the dimension of your cross-attention conditioning..." - - if context_dim is not None: - assert ( - use_spatial_transformer - ), "Fool!! You forgot to use the spatial transformer for your cross-attention conditioning..." - from omegaconf.listconfig import ListConfig - - if type(context_dim) == ListConfig: - context_dim = list(context_dim) - - if num_heads_upsample == -1: - num_heads_upsample = num_heads - - if num_heads == -1: - assert ( - num_head_channels != -1 - ), "Either num_heads or num_head_channels has to be set" - - if num_head_channels == -1: - assert ( - num_heads != -1 - ), "Either num_heads or num_head_channels has to be set" - - self.image_size = image_size - self.in_channels = in_channels - self.model_channels = model_channels - self.out_channels = out_channels - if isinstance(num_res_blocks, int): - self.num_res_blocks = len(channel_mult) * [num_res_blocks] - else: - if len(num_res_blocks) != len(channel_mult): - raise ValueError( - "provide num_res_blocks either as an int (globally constant) or " - "as a list/tuple (per-level) with the same length as channel_mult" - ) - self.num_res_blocks = num_res_blocks - if disable_self_attentions is not None: - # should be a list of booleans, indicating whether to disable self-attention in TransformerBlocks or not - assert len(disable_self_attentions) == len(channel_mult) - if num_attention_blocks is not None: - assert len(num_attention_blocks) == len(self.num_res_blocks) - assert all( - map( - lambda i: self.num_res_blocks[i] >= num_attention_blocks[i], - range(len(num_attention_blocks)), - ) - ) - print( - f"Constructor of UNetModel received num_attention_blocks={num_attention_blocks}. " - f"This option has LESS priority than attention_resolutions {attention_resolutions}, " - f"i.e., in cases where num_attention_blocks[i] > 0 but 2**i not in attention_resolutions, " - f"attention will still not be set." - ) - - self.attention_resolutions = attention_resolutions - self.dropout = dropout - self.channel_mult = channel_mult - self.conv_resample = conv_resample - self.num_classes = num_classes - self.use_checkpoint = use_checkpoint - self.dtype = th.float16 if use_fp16 else th.float32 - self.dtype = th.bfloat16 if use_bf16 else self.dtype - self.num_heads = num_heads - self.num_head_channels = num_head_channels - self.num_heads_upsample = num_heads_upsample - self.predict_codebook_ids = n_embed is not None - - self.with_ip = with_ip # wether there is image prompt - self.ip_dim = ip_dim # num of extra token, 4 for global 16 for local - self.ip_weight = ip_weight - assert ip_mode in ["global", "local_resample"] - self.ip_mode = ip_mode # which mode of adaptor - - time_embed_dim = model_channels * 4 - self.time_embed = nn.Sequential( - linear(model_channels, time_embed_dim), - nn.SiLU(), - linear(time_embed_dim, time_embed_dim), - ) - - if camera_dim is not None: - time_embed_dim = model_channels * 4 - self.camera_embed = nn.Sequential( - linear(camera_dim, time_embed_dim), - nn.SiLU(), - linear(time_embed_dim, time_embed_dim), - ) - - if self.num_classes is not None: - if isinstance(self.num_classes, int): - self.label_emb = nn.Embedding(num_classes, time_embed_dim) - elif self.num_classes == "continuous": - print("setting up linear c_adm embedding layer") - self.label_emb = nn.Linear(1, time_embed_dim) - elif self.num_classes == "sequential": - assert adm_in_channels is not None - self.label_emb = nn.Sequential( - nn.Sequential( - linear(adm_in_channels, time_embed_dim), - nn.SiLU(), - linear(time_embed_dim, time_embed_dim), - ) - ) - else: - raise ValueError() - - if self.with_ip and (context_dim is not None) and ip_dim > 0: - if self.ip_mode == "local_resample": - # ip-adapter-plus - hidden_dim = 1280 - self.image_embed = Resampler( - dim=context_dim, - depth=4, - dim_head=64, - heads=12, - num_queries=ip_dim, # num token - embedding_dim=hidden_dim, - output_dim=context_dim, - ff_mult=4, - ) - elif self.ip_mode == "global": - self.image_embed = ImageProjModel( - cross_attention_dim=context_dim, - clip_extra_context_tokens=ip_dim) - else: - raise ValueError(f"{self.ip_mode} is not supported") - - self.input_blocks = nn.ModuleList( - [ - TimestepEmbedSequential( - conv_nd(dims, in_channels, model_channels, 3, padding=1) - ) - ] - ) - self._feature_size = model_channels - input_block_chans = [model_channels] - ch = model_channels - ds = 1 - for level, mult in enumerate(channel_mult): - for nr in range(self.num_res_blocks[level]): - layers = [ - ResBlock( - ch, - time_embed_dim, - dropout, - out_channels=mult * model_channels, - dims=dims, - use_checkpoint=use_checkpoint, - use_scale_shift_norm=use_scale_shift_norm, - ) - ] - ch = mult * model_channels - if ds in attention_resolutions: - if num_head_channels == -1: - dim_head = ch // num_heads - else: - num_heads = ch // num_head_channels - dim_head = num_head_channels - if legacy: - # num_heads = 1 - dim_head = ( - ch // num_heads - if use_spatial_transformer - else num_head_channels - ) - if exists(disable_self_attentions): - disabled_sa = disable_self_attentions[level] - else: - disabled_sa = False - - if ( - not exists(num_attention_blocks) - or nr < num_attention_blocks[level] - ): - layers.append( - AttentionBlock( - ch, - use_checkpoint=use_checkpoint, - num_heads=num_heads, - num_head_channels=dim_head, - use_new_attention_order=use_new_attention_order, - ) - if not use_spatial_transformer - else SpatialTransformer3D( - ch, - num_heads, - dim_head, - depth=transformer_depth, - context_dim=context_dim, - disable_self_attn=disabled_sa, - use_linear=use_linear_in_transformer, - use_checkpoint=use_checkpoint, - with_ip=self.with_ip, - ip_dim=self.ip_dim, - ip_weight=self.ip_weight - ) - ) - self.input_blocks.append(TimestepEmbedSequential(*layers)) - self._feature_size += ch - input_block_chans.append(ch) - - if level != len(channel_mult) - 1: - out_ch = ch - self.input_blocks.append( - TimestepEmbedSequential( - ResBlock( - ch, - time_embed_dim, - dropout, - out_channels=out_ch, - dims=dims, - use_checkpoint=use_checkpoint, - use_scale_shift_norm=use_scale_shift_norm, - down=True, - ) - if resblock_updown - else Downsample( - ch, conv_resample, dims=dims, out_channels=out_ch - ) - ) - ) - ch = out_ch - input_block_chans.append(ch) - ds *= 2 - self._feature_size += ch - - if num_head_channels == -1: - dim_head = ch // num_heads - else: - num_heads = ch // num_head_channels - dim_head = num_head_channels - if legacy: - # num_heads = 1 - dim_head = ch // num_heads if use_spatial_transformer else num_head_channels - self.middle_block = TimestepEmbedSequential( - ResBlock( - ch, - time_embed_dim, - dropout, - dims=dims, - use_checkpoint=use_checkpoint, - use_scale_shift_norm=use_scale_shift_norm, - ), - AttentionBlock( - ch, - use_checkpoint=use_checkpoint, - num_heads=num_heads, - num_head_channels=dim_head, - use_new_attention_order=use_new_attention_order, - ) - if not use_spatial_transformer - else SpatialTransformer3D( # always uses a self-attn - ch, - num_heads, - dim_head, - depth=transformer_depth, - context_dim=context_dim, - disable_self_attn=disable_middle_self_attn, - use_linear=use_linear_in_transformer, - use_checkpoint=use_checkpoint, - with_ip=self.with_ip, - ip_dim=self.ip_dim, - ip_weight=self.ip_weight - ), - ResBlock( - ch, - time_embed_dim, - dropout, - dims=dims, - use_checkpoint=use_checkpoint, - use_scale_shift_norm=use_scale_shift_norm, - ), - ) - self._feature_size += ch - - self.output_blocks = nn.ModuleList([]) - for level, mult in list(enumerate(channel_mult))[::-1]: - for i in range(self.num_res_blocks[level] + 1): - ich = input_block_chans.pop() - layers = [ - ResBlock( - ch + ich, - time_embed_dim, - dropout, - out_channels=model_channels * mult, - dims=dims, - use_checkpoint=use_checkpoint, - use_scale_shift_norm=use_scale_shift_norm, - ) - ] - ch = model_channels * mult - if ds in attention_resolutions: - if num_head_channels == -1: - dim_head = ch // num_heads - else: - num_heads = ch // num_head_channels - dim_head = num_head_channels - if legacy: - # num_heads = 1 - dim_head = ( - ch // num_heads - if use_spatial_transformer - else num_head_channels - ) - if exists(disable_self_attentions): - disabled_sa = disable_self_attentions[level] - else: - disabled_sa = False - - if ( - not exists(num_attention_blocks) - or i < num_attention_blocks[level] - ): - layers.append( - AttentionBlock( - ch, - use_checkpoint=use_checkpoint, - num_heads=num_heads_upsample, - num_head_channels=dim_head, - use_new_attention_order=use_new_attention_order, - ) - if not use_spatial_transformer - else SpatialTransformer3D( - ch, - num_heads, - dim_head, - depth=transformer_depth, - context_dim=context_dim, - disable_self_attn=disabled_sa, - use_linear=use_linear_in_transformer, - use_checkpoint=use_checkpoint, - with_ip=self.with_ip, - ip_dim=self.ip_dim, - ip_weight=self.ip_weight - ) - ) - if level and i == self.num_res_blocks[level]: - out_ch = ch - layers.append( - ResBlock( - ch, - time_embed_dim, - dropout, - out_channels=out_ch, - dims=dims, - use_checkpoint=use_checkpoint, - use_scale_shift_norm=use_scale_shift_norm, - up=True, - ) - if resblock_updown - else Upsample(ch, conv_resample, dims=dims, out_channels=out_ch) - ) - ds //= 2 - self.output_blocks.append(TimestepEmbedSequential(*layers)) - self._feature_size += ch - - self.out = nn.Sequential( - normalization(ch), - nn.SiLU(), - zero_module(conv_nd(dims, model_channels, out_channels, 3, padding=1)), - ) - if self.predict_codebook_ids: - self.id_predictor = nn.Sequential( - normalization(ch), - conv_nd(dims, model_channels, n_embed, 1), - # nn.LogSoftmax(dim=1) # change to cross_entropy and produce non-normalized logits - ) - - def convert_to_fp16(self): - """ - Convert the torso of the model to float16. - """ - self.input_blocks.apply(convert_module_to_f16) - self.middle_block.apply(convert_module_to_f16) - self.output_blocks.apply(convert_module_to_f16) - - def convert_to_fp32(self): - """ - Convert the torso of the model to float32. - """ - self.input_blocks.apply(convert_module_to_f32) - self.middle_block.apply(convert_module_to_f32) - self.output_blocks.apply(convert_module_to_f32) - - def forward( - self, - x, - timesteps=None, - context=None, - y=None, - camera=None, - num_frames=1, - **kwargs, - ): - """ - Apply the model to an input batch. - :param x: an [(N x F) x C x ...] Tensor of inputs. F is the number of frames (views). - :param timesteps: a 1-D batch of timesteps. - :param context: a dict conditioning plugged in via crossattn - :param y: an [N] Tensor of labels, if class-conditional, default None. - :param num_frames: a integer indicating number of frames for tensor reshaping. - :return: an [(N x F) x C x ...] Tensor of outputs. F is the number of frames (views). - """ - assert ( - x.shape[0] % num_frames == 0 - ), "[UNet] input batch size must be dividable by num_frames!" - assert (y is not None) == ( - self.num_classes is not None - ), "must specify y if and only if the model is class-conditional" - - hs = [] - t_emb = timestep_embedding(timesteps, self.model_channels, repeat_only=False) # shape: torch.Size([B, 320]) mean: 0.18, std: 0.68, min: -1.00, max: 1.00 - emb = self.time_embed(t_emb) # shape: torch.Size([B, 1280]) mean: 0.12, std: 0.57, min: -5.73, max: 6.51 - - if self.num_classes is not None: - assert y.shape[0] == x.shape[0] - emb = emb + self.label_emb(y) - - # Add camera embeddings - if camera is not None: - assert camera.shape[0] == emb.shape[0] - # camera embed: shape: torch.Size([B, 1280]) mean: -0.02, std: 0.27, min: -7.23, max: 2.04 - emb = emb + self.camera_embed(camera) - ip = kwargs.get("ip", None) - ip_img = kwargs.get("ip_img", None) - - if ip_img is not None: - x[(num_frames-1)::num_frames, :, :, :] = ip_img - - if ip is not None: - ip_emb = self.image_embed(ip) # shape: torch.Size([B, 16, 1024]) mean: -0.00, std: 1.00, min: -11.65, max: 7.31 - context = torch.cat((context, ip_emb), 1) # shape: torch.Size([B, 93, 1024]) mean: -0.00, std: 1.00, min: -11.65, max: 7.31 - - h = x.type(self.dtype) - for module in self.input_blocks: - h = module(h, emb, context, num_frames=num_frames) - hs.append(h) - h = self.middle_block(h, emb, context, num_frames=num_frames) - for module in self.output_blocks: - h = th.cat([h, hs.pop()], dim=1) - h = module(h, emb, context, num_frames=num_frames) - h = h.type(x.dtype) # shape: torch.Size([10, 320, 32, 32]) mean: -0.67, std: 3.96, min: -42.74, max: 25.58 - if self.predict_codebook_ids: # False - return self.id_predictor(h) - else: - return self.out(h) # shape: torch.Size([10, 4, 32, 32]) mean: -0.00, std: 0.91, min: -3.65, max: 3.93 - - - - -class MultiViewUNetModelStage2(MultiViewUNetModel): - """ - The full multi-view UNet model with attention, timestep embedding and camera embedding. - :param in_channels: channels in the input Tensor. - :param model_channels: base channel count for the model. - :param out_channels: channels in the output Tensor. - :param num_res_blocks: number of residual blocks per downsample. - :param attention_resolutions: a collection of downsample rates at which - attention will take place. May be a set, list, or tuple. - For example, if this contains 4, then at 4x downsampling, attention - will be used. - :param dropout: the dropout probability. - :param channel_mult: channel multiplier for each level of the UNet. - :param conv_resample: if True, use learned convolutions for upsampling and - downsampling. - :param dims: determines if the signal is 1D, 2D, or 3D. - :param num_classes: if specified (as an int), then this model will be - class-conditional with `num_classes` classes. - :param use_checkpoint: use gradient checkpointing to reduce memory usage. - :param num_heads: the number of attention heads in each attention layer. - :param num_heads_channels: if specified, ignore num_heads and instead use - a fixed channel width per attention head. - :param num_heads_upsample: works with num_heads to set a different number - of heads for upsampling. Deprecated. - :param use_scale_shift_norm: use a FiLM-like conditioning mechanism. - :param resblock_updown: use residual blocks for up/downsampling. - :param use_new_attention_order: use a different attention pattern for potentially - increased efficiency. - :param camera_dim: dimensionality of camera input. - """ - - def __init__( - self, - image_size, - in_channels, - model_channels, - out_channels, - num_res_blocks, - attention_resolutions, - dropout=0, - channel_mult=(1, 2, 4, 8), - conv_resample=True, - dims=2, - num_classes=None, - use_checkpoint=False, - use_fp16=False, - use_bf16=False, - num_heads=-1, - num_head_channels=-1, - num_heads_upsample=-1, - use_scale_shift_norm=False, - resblock_updown=False, - use_new_attention_order=False, - use_spatial_transformer=False, # custom transformer support - transformer_depth=1, # custom transformer support - context_dim=None, # custom transformer support - n_embed=None, # custom support for prediction of discrete ids into codebook of first stage vq model - legacy=True, - disable_self_attentions=None, - num_attention_blocks=None, - disable_middle_self_attn=False, - use_linear_in_transformer=False, - adm_in_channels=None, - camera_dim=None, - with_ip=False, # wether add image prompt images - ip_dim=0, # number of extra token, 4 for global 16 for local - ip_weight=1.0, # weight for image prompt context - ip_mode="local_resample", # which mode of adaptor, global or local - ): - super().__init__( - image_size, - in_channels, - model_channels, - out_channels, - num_res_blocks, - attention_resolutions, - dropout, - channel_mult, - conv_resample, - dims, - num_classes, - use_checkpoint, - use_fp16, - use_bf16, - num_heads, - num_head_channels, - num_heads_upsample, - use_scale_shift_norm, - resblock_updown, - use_new_attention_order, - use_spatial_transformer, - transformer_depth, - context_dim, - n_embed, - legacy, - disable_self_attentions, - num_attention_blocks, - disable_middle_self_attn, - use_linear_in_transformer, - adm_in_channels, - camera_dim, - with_ip, - ip_dim, - ip_weight, - ip_mode, - ) - - def forward( - self, - x, - timesteps=None, - context=None, - y=None, - camera=None, - num_frames=1, - **kwargs, - ): - """ - Apply the model to an input batch. - :param x: an [(N x F) x C x ...] Tensor of inputs. F is the number of frames (views). - :param timesteps: a 1-D batch of timesteps. - :param context: a dict conditioning plugged in via crossattn - :param y: an [N] Tensor of labels, if class-conditional, default None. - :param num_frames: a integer indicating number of frames for tensor reshaping. - :return: an [(N x F) x C x ...] Tensor of outputs. F is the number of frames (views). - """ - assert ( - x.shape[0] % num_frames == 0 - ), "[UNet] input batch size must be dividable by num_frames!" - assert (y is not None) == ( - self.num_classes is not None - ), "must specify y if and only if the model is class-conditional" - - hs = [] - t_emb = timestep_embedding(timesteps, self.model_channels, repeat_only=False) # shape: torch.Size([B, 320]) mean: 0.18, std: 0.68, min: -1.00, max: 1.00 - emb = self.time_embed(t_emb) # shape: torch.Size([B, 1280]) mean: 0.12, std: 0.57, min: -5.73, max: 6.51 - - if self.num_classes is not None: - assert y.shape[0] == x.shape[0] - emb = emb + self.label_emb(y) - - # Add camera embeddings - if camera is not None: - assert camera.shape[0] == emb.shape[0] - # camera embed: shape: torch.Size([B, 1280]) mean: -0.02, std: 0.27, min: -7.23, max: 2.04 - emb = emb + self.camera_embed(camera) - ip = kwargs.get("ip", None) - ip_img = kwargs.get("ip_img", None) - pixel_images = kwargs.get("pixel_images", None) - - if ip_img is not None: - x[(num_frames-1)::num_frames, :, :, :] = ip_img - - x = torch.cat((x, pixel_images), dim=1) - - if ip is not None: - ip_emb = self.image_embed(ip) # shape: torch.Size([B, 16, 1024]) mean: -0.00, std: 1.00, min: -11.65, max: 7.31 - context = torch.cat((context, ip_emb), 1) # shape: torch.Size([B, 93, 1024]) mean: -0.00, std: 1.00, min: -11.65, max: 7.31 - - h = x.type(self.dtype) - for module in self.input_blocks: - h = module(h, emb, context, num_frames=num_frames) - hs.append(h) - h = self.middle_block(h, emb, context, num_frames=num_frames) - for module in self.output_blocks: - h = th.cat([h, hs.pop()], dim=1) - h = module(h, emb, context, num_frames=num_frames) - h = h.type(x.dtype) # shape: torch.Size([10, 320, 32, 32]) mean: -0.67, std: 3.96, min: -42.74, max: 25.58 - if self.predict_codebook_ids: # False - return self.id_predictor(h) - else: - return self.out(h) # shape: torch.Size([10, 4, 32, 32]) mean: -0.00, std: 0.91, min: -3.65, max: 3.93 - \ No newline at end of file diff --git a/crm/imagedream/ldm/modules/diffusionmodules/util.py b/crm/imagedream/ldm/modules/diffusionmodules/util.py deleted file mode 100644 index 665af3e..0000000 --- a/crm/imagedream/ldm/modules/diffusionmodules/util.py +++ /dev/null @@ -1,353 +0,0 @@ -# adopted from -# https://github.com/openai/improved-diffusion/blob/main/improved_diffusion/gaussian_diffusion.py -# and -# https://github.com/lucidrains/denoising-diffusion-pytorch/blob/7706bdfc6f527f58d33f84b7b522e61e6e3164b3/denoising_diffusion_pytorch/denoising_diffusion_pytorch.py -# and -# https://github.com/openai/guided-diffusion/blob/0ba878e517b276c45d1195eb29f6f5f72659a05b/guided_diffusion/nn.py -# -# thanks! - - -import os -import math -import torch -import torch.nn as nn -import numpy as np -from einops import repeat -import importlib - - -def instantiate_from_config(config): - if not "target" in config: - if config == "__is_first_stage__": - return None - elif config == "__is_unconditional__": - return None - raise KeyError("Expected key `target` to instantiate.") - return get_obj_from_str(config["target"])(**config.get("params", dict())) - - -def get_obj_from_str(string, reload=False): - module, cls = string.rsplit(".", 1) - if reload: - module_imp = importlib.import_module(module) - importlib.reload(module_imp) - return getattr(importlib.import_module(module, package=None), cls) - - -def make_beta_schedule( - schedule, n_timestep, linear_start=1e-4, linear_end=2e-2, cosine_s=8e-3 -): - if schedule == "linear": - betas = ( - torch.linspace( - linear_start**0.5, linear_end**0.5, n_timestep, dtype=torch.float64 - ) - ** 2 - ) - - elif schedule == "cosine": - timesteps = ( - torch.arange(n_timestep + 1, dtype=torch.float64) / n_timestep + cosine_s - ) - alphas = timesteps / (1 + cosine_s) * np.pi / 2 - alphas = torch.cos(alphas).pow(2) - alphas = alphas / alphas[0] - betas = 1 - alphas[1:] / alphas[:-1] - betas = np.clip(betas, a_min=0, a_max=0.999) - - elif schedule == "sqrt_linear": - betas = torch.linspace( - linear_start, linear_end, n_timestep, dtype=torch.float64 - ) - elif schedule == "sqrt": - betas = ( - torch.linspace(linear_start, linear_end, n_timestep, dtype=torch.float64) - ** 0.5 - ) - else: - raise ValueError(f"schedule '{schedule}' unknown.") - return betas.numpy() - -def enforce_zero_terminal_snr(betas): - betas = torch.tensor(betas) if not isinstance(betas, torch.Tensor) else betas - # Convert betas to alphas_bar_sqrt - alphas =1 - betas - alphas_bar = alphas.cumprod(0) - alphas_bar_sqrt = alphas_bar.sqrt() - # Store old values. - alphas_bar_sqrt_0 = alphas_bar_sqrt[0].clone() - alphas_bar_sqrt_T = alphas_bar_sqrt[-1].clone() - # Shift so last timestep is zero. - alphas_bar_sqrt -= alphas_bar_sqrt_T - # Scale so first timestep is back to old value. - alphas_bar_sqrt *= alphas_bar_sqrt_0 / (alphas_bar_sqrt_0 - alphas_bar_sqrt_T) - # Convert alphas_bar_sqrt to betas - alphas_bar = alphas_bar_sqrt ** 2 - alphas = alphas_bar[1:] / alphas_bar[:-1] - alphas = torch.cat ([alphas_bar[0:1], alphas]) - betas = 1 - alphas - return betas - - -def make_ddim_timesteps( - ddim_discr_method, num_ddim_timesteps, num_ddpm_timesteps, verbose=True -): - if ddim_discr_method == "uniform": - c = num_ddpm_timesteps // num_ddim_timesteps - ddim_timesteps = np.asarray(list(range(0, num_ddpm_timesteps, c))) - elif ddim_discr_method == "quad": - ddim_timesteps = ( - (np.linspace(0, np.sqrt(num_ddpm_timesteps * 0.8), num_ddim_timesteps)) ** 2 - ).astype(int) - else: - raise NotImplementedError( - f'There is no ddim discretization method called "{ddim_discr_method}"' - ) - - # assert ddim_timesteps.shape[0] == num_ddim_timesteps - # add one to get the final alpha values right (the ones from first scale to data during sampling) - steps_out = ddim_timesteps + 1 - if verbose: - print(f"Selected timesteps for ddim sampler: {steps_out}") - return steps_out - - -def make_ddim_sampling_parameters(alphacums, ddim_timesteps, eta, verbose=True): - # select alphas for computing the variance schedule - alphas = alphacums[ddim_timesteps] - alphas_prev = np.asarray([alphacums[0]] + alphacums[ddim_timesteps[:-1]].tolist()) - - # according the the formula provided in https://arxiv.org/abs/2010.02502 - sigmas = eta * np.sqrt( - (1 - alphas_prev) / (1 - alphas) * (1 - alphas / alphas_prev) - ) - if verbose: - print( - f"Selected alphas for ddim sampler: a_t: {alphas}; a_(t-1): {alphas_prev}" - ) - print( - f"For the chosen value of eta, which is {eta}, " - f"this results in the following sigma_t schedule for ddim sampler {sigmas}" - ) - return sigmas, alphas, alphas_prev - - -def betas_for_alpha_bar(num_diffusion_timesteps, alpha_bar, max_beta=0.999): - """ - Create a beta schedule that discretizes the given alpha_t_bar function, - which defines the cumulative product of (1-beta) over time from t = [0,1]. - :param num_diffusion_timesteps: the number of betas to produce. - :param alpha_bar: a lambda that takes an argument t from 0 to 1 and - produces the cumulative product of (1-beta) up to that - part of the diffusion process. - :param max_beta: the maximum beta to use; use values lower than 1 to - prevent singularities. - """ - betas = [] - for i in range(num_diffusion_timesteps): - t1 = i / num_diffusion_timesteps - t2 = (i + 1) / num_diffusion_timesteps - betas.append(min(1 - alpha_bar(t2) / alpha_bar(t1), max_beta)) - return np.array(betas) - - -def extract_into_tensor(a, t, x_shape): - b, *_ = t.shape - out = a.gather(-1, t) - return out.reshape(b, *((1,) * (len(x_shape) - 1))) - - -def checkpoint(func, inputs, params, flag): - """ - Evaluate a function without caching intermediate activations, allowing for - reduced memory at the expense of extra compute in the backward pass. - :param func: the function to evaluate. - :param inputs: the argument sequence to pass to `func`. - :param params: a sequence of parameters `func` depends on but does not - explicitly take as arguments. - :param flag: if False, disable gradient checkpointing. - """ - if flag: - args = tuple(inputs) + tuple(params) - return CheckpointFunction.apply(func, len(inputs), *args) - else: - return func(*inputs) - - -class CheckpointFunction(torch.autograd.Function): - @staticmethod - def forward(ctx, run_function, length, *args): - ctx.run_function = run_function - ctx.input_tensors = list(args[:length]) - ctx.input_params = list(args[length:]) - - with torch.no_grad(): - output_tensors = ctx.run_function(*ctx.input_tensors) - return output_tensors - - @staticmethod - def backward(ctx, *output_grads): - ctx.input_tensors = [x.detach().requires_grad_(True) for x in ctx.input_tensors] - with torch.enable_grad(): - # Fixes a bug where the first op in run_function modifies the - # Tensor storage in place, which is not allowed for detach()'d - # Tensors. - shallow_copies = [x.view_as(x) for x in ctx.input_tensors] - output_tensors = ctx.run_function(*shallow_copies) - input_grads = torch.autograd.grad( - output_tensors, - ctx.input_tensors + ctx.input_params, - output_grads, - allow_unused=True, - ) - del ctx.input_tensors - del ctx.input_params - del output_tensors - return (None, None) + input_grads - - -def timestep_embedding(timesteps, dim, max_period=10000, repeat_only=False): - """ - Create sinusoidal timestep embeddings. - :param timesteps: a 1-D Tensor of N indices, one per batch element. - These may be fractional. - :param dim: the dimension of the output. - :param max_period: controls the minimum frequency of the embeddings. - :return: an [N x dim] Tensor of positional embeddings. - """ - if not repeat_only: - half = dim // 2 - freqs = torch.exp( - -math.log(max_period) - * torch.arange(start=0, end=half, dtype=torch.float32) - / half - ).to(device=timesteps.device) - args = timesteps[:, None].float() * freqs[None] - embedding = torch.cat([torch.cos(args), torch.sin(args)], dim=-1) - if dim % 2: - embedding = torch.cat( - [embedding, torch.zeros_like(embedding[:, :1])], dim=-1 - ) - else: - embedding = repeat(timesteps, "b -> b d", d=dim) - # import pdb; pdb.set_trace() - return embedding - - -def zero_module(module): - """ - Zero out the parameters of a module and return it. - """ - for p in module.parameters(): - p.detach().zero_() - return module - - -def scale_module(module, scale): - """ - Scale the parameters of a module and return it. - """ - for p in module.parameters(): - p.detach().mul_(scale) - return module - - -def mean_flat(tensor): - """ - Take the mean over all non-batch dimensions. - """ - return tensor.mean(dim=list(range(1, len(tensor.shape)))) - - -def normalization(channels): - """ - Make a standard normalization layer. - :param channels: number of input channels. - :return: an nn.Module for normalization. - """ - return GroupNorm32(32, channels) - - -# PyTorch 1.7 has SiLU, but we support PyTorch 1.5. -class SiLU(nn.Module): - def forward(self, x): - return x * torch.sigmoid(x) - - -class GroupNorm32(nn.GroupNorm): - def forward(self, x): - return super().forward(x.float()).type(x.dtype) - - -def conv_nd(dims, *args, **kwargs): - """ - Create a 1D, 2D, or 3D convolution module. - """ - if dims == 1: - return nn.Conv1d(*args, **kwargs) - elif dims == 2: - return nn.Conv2d(*args, **kwargs) - elif dims == 3: - return nn.Conv3d(*args, **kwargs) - raise ValueError(f"unsupported dimensions: {dims}") - - -def linear(*args, **kwargs): - """ - Create a linear module. - """ - return nn.Linear(*args, **kwargs) - - -def avg_pool_nd(dims, *args, **kwargs): - """ - Create a 1D, 2D, or 3D average pooling module. - """ - if dims == 1: - return nn.AvgPool1d(*args, **kwargs) - elif dims == 2: - return nn.AvgPool2d(*args, **kwargs) - elif dims == 3: - return nn.AvgPool3d(*args, **kwargs) - raise ValueError(f"unsupported dimensions: {dims}") - - -class HybridConditioner(nn.Module): - def __init__(self, c_concat_config, c_crossattn_config): - super().__init__() - self.concat_conditioner = instantiate_from_config(c_concat_config) - self.crossattn_conditioner = instantiate_from_config(c_crossattn_config) - - def forward(self, c_concat, c_crossattn): - c_concat = self.concat_conditioner(c_concat) - c_crossattn = self.crossattn_conditioner(c_crossattn) - return {"c_concat": [c_concat], "c_crossattn": [c_crossattn]} - - -def noise_like(shape, device, repeat=False): - repeat_noise = lambda: torch.randn((1, *shape[1:]), device=device).repeat( - shape[0], *((1,) * (len(shape) - 1)) - ) - noise = lambda: torch.randn(shape, device=device) - return repeat_noise() if repeat else noise() - - -# dummy replace -def convert_module_to_f16(l): - """ - Convert primitive modules to float16. - """ - if isinstance(l, (nn.Conv1d, nn.Conv2d, nn.Conv3d)): - l.weight.data = l.weight.data.half() - if l.bias is not None: - l.bias.data = l.bias.data.half() - -def convert_module_to_f32(l): - """ - Convert primitive modules to float32, undoing convert_module_to_f16(). - """ - if isinstance(l, (nn.Conv1d, nn.Conv2d, nn.Conv3d)): - l.weight.data = l.weight.data.float() - if l.bias is not None: - l.bias.data = l.bias.data.float() diff --git a/crm/imagedream/ldm/modules/distributions/__init__.py b/crm/imagedream/ldm/modules/distributions/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/crm/imagedream/ldm/modules/distributions/distributions.py b/crm/imagedream/ldm/modules/distributions/distributions.py deleted file mode 100644 index 0b61f03..0000000 --- a/crm/imagedream/ldm/modules/distributions/distributions.py +++ /dev/null @@ -1,102 +0,0 @@ -import torch -import numpy as np - - -class AbstractDistribution: - def sample(self): - raise NotImplementedError() - - def mode(self): - raise NotImplementedError() - - -class DiracDistribution(AbstractDistribution): - def __init__(self, value): - self.value = value - - def sample(self): - return self.value - - def mode(self): - return self.value - - -class DiagonalGaussianDistribution(object): - def __init__(self, parameters, deterministic=False): - self.parameters = parameters - self.mean, self.logvar = torch.chunk(parameters, 2, dim=1) - self.logvar = torch.clamp(self.logvar, -30.0, 20.0) - self.deterministic = deterministic - self.std = torch.exp(0.5 * self.logvar) - self.var = torch.exp(self.logvar) - if self.deterministic: - self.var = self.std = torch.zeros_like(self.mean).to( - device=self.parameters.device - ) - - def sample(self): - x = self.mean + self.std * torch.randn(self.mean.shape).to( - device=self.parameters.device - ) - return x - - def kl(self, other=None): - if self.deterministic: - return torch.Tensor([0.0]) - else: - if other is None: - return 0.5 * torch.sum( - torch.pow(self.mean, 2) + self.var - 1.0 - self.logvar, - dim=[1, 2, 3], - ) - else: - return 0.5 * torch.sum( - torch.pow(self.mean - other.mean, 2) / other.var - + self.var / other.var - - 1.0 - - self.logvar - + other.logvar, - dim=[1, 2, 3], - ) - - def nll(self, sample, dims=[1, 2, 3]): - if self.deterministic: - return torch.Tensor([0.0]) - logtwopi = np.log(2.0 * np.pi) - return 0.5 * torch.sum( - logtwopi + self.logvar + torch.pow(sample - self.mean, 2) / self.var, - dim=dims, - ) - - def mode(self): - return self.mean - - -def normal_kl(mean1, logvar1, mean2, logvar2): - """ - source: https://github.com/openai/guided-diffusion/blob/27c20a8fab9cb472df5d6bdd6c8d11c8f430b924/guided_diffusion/losses.py#L12 - Compute the KL divergence between two gaussians. - Shapes are automatically broadcasted, so batches can be compared to - scalars, among other use cases. - """ - tensor = None - for obj in (mean1, logvar1, mean2, logvar2): - if isinstance(obj, torch.Tensor): - tensor = obj - break - assert tensor is not None, "at least one argument must be a Tensor" - - # Force variances to be Tensors. Broadcasting helps convert scalars to - # Tensors, but it does not work for torch.exp(). - logvar1, logvar2 = [ - x if isinstance(x, torch.Tensor) else torch.tensor(x).to(tensor) - for x in (logvar1, logvar2) - ] - - return 0.5 * ( - -1.0 - + logvar2 - - logvar1 - + torch.exp(logvar1 - logvar2) - + ((mean1 - mean2) ** 2) * torch.exp(-logvar2) - ) diff --git a/crm/imagedream/ldm/modules/ema.py b/crm/imagedream/ldm/modules/ema.py deleted file mode 100644 index 97b5ae2..0000000 --- a/crm/imagedream/ldm/modules/ema.py +++ /dev/null @@ -1,86 +0,0 @@ -import torch -from torch import nn - - -class LitEma(nn.Module): - def __init__(self, model, decay=0.9999, use_num_upates=True): - super().__init__() - if decay < 0.0 or decay > 1.0: - raise ValueError("Decay must be between 0 and 1") - - self.m_name2s_name = {} - self.register_buffer("decay", torch.tensor(decay, dtype=torch.float32)) - self.register_buffer( - "num_updates", - torch.tensor(0, dtype=torch.int) - if use_num_upates - else torch.tensor(-1, dtype=torch.int), - ) - - for name, p in model.named_parameters(): - if p.requires_grad: - # remove as '.'-character is not allowed in buffers - s_name = name.replace(".", "") - self.m_name2s_name.update({name: s_name}) - self.register_buffer(s_name, p.clone().detach().data) - - self.collected_params = [] - - def reset_num_updates(self): - del self.num_updates - self.register_buffer("num_updates", torch.tensor(0, dtype=torch.int)) - - def forward(self, model): - decay = self.decay - - if self.num_updates >= 0: - self.num_updates += 1 - decay = min(self.decay, (1 + self.num_updates) / (10 + self.num_updates)) - - one_minus_decay = 1.0 - decay - - with torch.no_grad(): - m_param = dict(model.named_parameters()) - shadow_params = dict(self.named_buffers()) - - for key in m_param: - if m_param[key].requires_grad: - sname = self.m_name2s_name[key] - shadow_params[sname] = shadow_params[sname].type_as(m_param[key]) - shadow_params[sname].sub_( - one_minus_decay * (shadow_params[sname] - m_param[key]) - ) - else: - assert not key in self.m_name2s_name - - def copy_to(self, model): - m_param = dict(model.named_parameters()) - shadow_params = dict(self.named_buffers()) - for key in m_param: - if m_param[key].requires_grad: - m_param[key].data.copy_(shadow_params[self.m_name2s_name[key]].data) - else: - assert not key in self.m_name2s_name - - def store(self, parameters): - """ - Save the current parameters for restoring later. - Args: - parameters: Iterable of `torch.nn.Parameter`; the parameters to be - temporarily stored. - """ - self.collected_params = [param.clone() for param in parameters] - - def restore(self, parameters): - """ - Restore the parameters stored with the `store` method. - Useful to validate the model with EMA parameters without affecting the - original optimization process. Store the parameters before the - `copy_to` method. After validation (or model saving), use this to - restore the former parameters. - Args: - parameters: Iterable of `torch.nn.Parameter`; the parameters to be - updated with the stored parameters. - """ - for c_param, param in zip(self.collected_params, parameters): - param.data.copy_(c_param.data) diff --git a/crm/imagedream/ldm/modules/encoders/__init__.py b/crm/imagedream/ldm/modules/encoders/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/crm/imagedream/ldm/modules/encoders/modules.py b/crm/imagedream/ldm/modules/encoders/modules.py deleted file mode 100644 index 8efe14f..0000000 --- a/crm/imagedream/ldm/modules/encoders/modules.py +++ /dev/null @@ -1,329 +0,0 @@ -import torch -import torch.nn as nn -from torch.utils.checkpoint import checkpoint - -from transformers import T5Tokenizer, T5EncoderModel, CLIPTokenizer, CLIPTextModel - -import numpy as np -import open_clip -from PIL import Image -from ...util import default, count_params - - -class AbstractEncoder(nn.Module): - def __init__(self): - super().__init__() - - def encode(self, *args, **kwargs): - raise NotImplementedError - - -class IdentityEncoder(AbstractEncoder): - def encode(self, x): - return x - - -class ClassEmbedder(nn.Module): - def __init__(self, embed_dim, n_classes=1000, key="class", ucg_rate=0.1): - super().__init__() - self.key = key - self.embedding = nn.Embedding(n_classes, embed_dim) - self.n_classes = n_classes - self.ucg_rate = ucg_rate - - def forward(self, batch, key=None, disable_dropout=False): - if key is None: - key = self.key - # this is for use in crossattn - c = batch[key][:, None] - if self.ucg_rate > 0.0 and not disable_dropout: - mask = 1.0 - torch.bernoulli(torch.ones_like(c) * self.ucg_rate) - c = mask * c + (1 - mask) * torch.ones_like(c) * (self.n_classes - 1) - c = c.long() - c = self.embedding(c) - return c - - def get_unconditional_conditioning(self, bs, device="cuda"): - uc_class = ( - self.n_classes - 1 - ) # 1000 classes --> 0 ... 999, one extra class for ucg (class 1000) - uc = torch.ones((bs,), device=device) * uc_class - uc = {self.key: uc} - return uc - - -def disabled_train(self, mode=True): - """Overwrite model.train with this function to make sure train/eval mode - does not change anymore.""" - return self - - -class FrozenT5Embedder(AbstractEncoder): - """Uses the T5 transformer encoder for text""" - - def __init__( - self, version="google/t5-v1_1-large", device="cuda", max_length=77, freeze=True - ): # others are google/t5-v1_1-xl and google/t5-v1_1-xxl - super().__init__() - self.tokenizer = T5Tokenizer.from_pretrained(version) - self.transformer = T5EncoderModel.from_pretrained(version) - self.device = device - self.max_length = max_length # TODO: typical value? - if freeze: - self.freeze() - - def freeze(self): - self.transformer = self.transformer.eval() - # self.train = disabled_train - for param in self.parameters(): - param.requires_grad = False - - def forward(self, text): - batch_encoding = self.tokenizer( - text, - truncation=True, - max_length=self.max_length, - return_length=True, - return_overflowing_tokens=False, - padding="max_length", - return_tensors="pt", - ) - tokens = batch_encoding["input_ids"].to(self.device) - outputs = self.transformer(input_ids=tokens) - - z = outputs.last_hidden_state - return z - - def encode(self, text): - return self(text) - - -class FrozenCLIPEmbedder(AbstractEncoder): - """Uses the CLIP transformer encoder for text (from huggingface)""" - - LAYERS = ["last", "pooled", "hidden"] - - def __init__( - self, - version="openai/clip-vit-large-patch14", - device="cuda", - max_length=77, - freeze=True, - layer="last", - layer_idx=None, - ): # clip-vit-base-patch32 - super().__init__() - assert layer in self.LAYERS - self.tokenizer = CLIPTokenizer.from_pretrained(version) - self.transformer = CLIPTextModel.from_pretrained(version) - self.device = device - self.max_length = max_length - if freeze: - self.freeze() - self.layer = layer - self.layer_idx = layer_idx - if layer == "hidden": - assert layer_idx is not None - assert 0 <= abs(layer_idx) <= 12 - - def freeze(self): - self.transformer = self.transformer.eval() - # self.train = disabled_train - for param in self.parameters(): - param.requires_grad = False - - def forward(self, text): - batch_encoding = self.tokenizer( - text, - truncation=True, - max_length=self.max_length, - return_length=True, - return_overflowing_tokens=False, - padding="max_length", - return_tensors="pt", - ) - tokens = batch_encoding["input_ids"].to(self.device) - outputs = self.transformer( - input_ids=tokens, output_hidden_states=self.layer == "hidden" - ) - if self.layer == "last": - z = outputs.last_hidden_state - elif self.layer == "pooled": - z = outputs.pooler_output[:, None, :] - else: - z = outputs.hidden_states[self.layer_idx] - return z - - def encode(self, text): - return self(text) - - -class FrozenOpenCLIPEmbedder(AbstractEncoder, nn.Module): - """ - Uses the OpenCLIP transformer encoder for text - """ - - LAYERS = [ - # "pooled", - "last", - "penultimate", - ] - - def __init__( - self, - arch="ViT-H-14", - version="laion2b_s32b_b79k", - device="cuda", - max_length=77, - freeze=True, - layer="last", - ip_mode=None - ): - """_summary_ - - Args: - ip_mode (str, optional): what is the image promcessing mode. Defaults to None. - - """ - super().__init__() - assert layer in self.LAYERS - model, _, preprocess = open_clip.create_model_and_transforms( - arch, device=torch.device("cpu"), pretrained=version - ) - if ip_mode is None: - del model.visual - - self.model = model - self.preprocess = preprocess - self.device = device - self.max_length = max_length - self.ip_mode = ip_mode - if freeze: - self.freeze() - self.layer = layer - if self.layer == "last": - self.layer_idx = 0 - elif self.layer == "penultimate": - self.layer_idx = 1 - else: - raise NotImplementedError() - - def freeze(self): - self.model = self.model.eval() - for param in self.parameters(): - param.requires_grad = False - - def forward(self, text): - tokens = open_clip.tokenize(text) - z = self.encode_with_transformer(tokens.to(self.device)) - return z - - def forward_image(self, pil_image): - if isinstance(pil_image, Image.Image): - pil_image = [pil_image] - if isinstance(pil_image, torch.Tensor): - pil_image = pil_image.cpu().numpy() - if isinstance(pil_image, np.ndarray): - if pil_image.ndim == 3: - pil_image = pil_image[None, :, :, :] - pil_image = [Image.fromarray(x) for x in pil_image] - - images = [] - for image in pil_image: - images.append(self.preprocess(image).to(self.device)) - - image = torch.stack(images, 0) # to [b, 3, h, w] - if self.ip_mode == "global": - image_features = self.model.encode_image(image) - image_features /= image_features.norm(dim=-1, keepdim=True) - elif "local" in self.ip_mode: - image_features = self.encode_image_with_transformer(image) - - return image_features # b, l - - def encode_image_with_transformer(self, x): - visual = self.model.visual - x = visual.conv1(x) # shape = [*, width, grid, grid] - x = x.reshape(x.shape[0], x.shape[1], -1) # shape = [*, width, grid ** 2] - x = x.permute(0, 2, 1) # shape = [*, grid ** 2, width] - - # class embeddings and positional embeddings - x = torch.cat( - [visual.class_embedding.to(x.dtype) + \ - torch.zeros(x.shape[0], 1, x.shape[-1], dtype=x.dtype, device=x.device), - x], dim=1) # shape = [*, grid ** 2 + 1, width] - x = x + visual.positional_embedding.to(x.dtype) - - # a patch_dropout of 0. would mean it is disabled and this function would do nothing but return what was passed in - # x = visual.patch_dropout(x) - x = visual.ln_pre(x) - - x = x.permute(1, 0, 2) # NLD -> LND - hidden = self.image_transformer_forward(x) - x = hidden[-2].permute(1, 0, 2) # LND -> NLD - return x - - def image_transformer_forward(self, x): - encoder_states = () - trans = self.model.visual.transformer - for r in trans.resblocks: - if trans.grad_checkpointing and not torch.jit.is_scripting(): - # TODO: handle kwargs https://github.com/pytorch/pytorch/issues/79887#issuecomment-1161758372 - x = checkpoint(r, x, None, None, None) - else: - x = r(x, attn_mask=None) - encoder_states = encoder_states + (x, ) - return encoder_states - - def encode_with_transformer(self, text): - x = self.model.token_embedding(text) # [batch_size, n_ctx, d_model] - x = x + self.model.positional_embedding - x = x.permute(1, 0, 2) # NLD -> LND - x = self.text_transformer_forward(x, attn_mask=self.model.attn_mask) - x = x.permute(1, 0, 2) # LND -> NLD - x = self.model.ln_final(x) - return x - - def text_transformer_forward(self, x: torch.Tensor, attn_mask=None): - for i, r in enumerate(self.model.transformer.resblocks): - if i == len(self.model.transformer.resblocks) - self.layer_idx: - break - if ( - self.model.transformer.grad_checkpointing - and not torch.jit.is_scripting() - ): - x = checkpoint(r, x, attn_mask) - else: - x = r(x, attn_mask=attn_mask) - return x - - def encode(self, text): - return self(text) - - -class FrozenCLIPT5Encoder(AbstractEncoder): - def __init__( - self, - clip_version="openai/clip-vit-large-patch14", - t5_version="google/t5-v1_1-xl", - device="cuda", - clip_max_length=77, - t5_max_length=77, - ): - super().__init__() - self.clip_encoder = FrozenCLIPEmbedder( - clip_version, device, max_length=clip_max_length - ) - self.t5_encoder = FrozenT5Embedder(t5_version, device, max_length=t5_max_length) - print( - f"{self.clip_encoder.__class__.__name__} has {count_params(self.clip_encoder)*1.e-6:.2f} M parameters, " - f"{self.t5_encoder.__class__.__name__} comes with {count_params(self.t5_encoder)*1.e-6:.2f} M params." - ) - - def encode(self, text): - return self(text) - - def forward(self, text): - clip_z = self.clip_encoder.encode(text) - t5_z = self.t5_encoder.encode(text) - return [clip_z, t5_z] diff --git a/crm/imagedream/ldm/util.py b/crm/imagedream/ldm/util.py deleted file mode 100644 index f541504..0000000 --- a/crm/imagedream/ldm/util.py +++ /dev/null @@ -1,226 +0,0 @@ -import importlib - -import random -import torch -import numpy as np -from collections import abc - -import multiprocessing as mp -from threading import Thread -from queue import Queue - -from inspect import isfunction -from PIL import Image, ImageDraw, ImageFont - - -def log_txt_as_img(wh, xc, size=10): - # wh a tuple of (width, height) - # xc a list of captions to plot - b = len(xc) - txts = list() - for bi in range(b): - txt = Image.new("RGB", wh, color="white") - draw = ImageDraw.Draw(txt) - font = ImageFont.truetype("data/DejaVuSans.ttf", size=size) - nc = int(40 * (wh[0] / 256)) - lines = "\n".join( - xc[bi][start : start + nc] for start in range(0, len(xc[bi]), nc) - ) - - try: - draw.text((0, 0), lines, fill="black", font=font) - except UnicodeEncodeError: - print("Cant encode string for logging. Skipping.") - - txt = np.array(txt).transpose(2, 0, 1) / 127.5 - 1.0 - txts.append(txt) - txts = np.stack(txts) - txts = torch.tensor(txts) - return txts - - -def ismap(x): - if not isinstance(x, torch.Tensor): - return False - return (len(x.shape) == 4) and (x.shape[1] > 3) - - -def isimage(x): - if not isinstance(x, torch.Tensor): - return False - return (len(x.shape) == 4) and (x.shape[1] == 3 or x.shape[1] == 1) - - -def exists(x): - return x is not None - - -def default(val, d): - if exists(val): - return val - return d() if isfunction(d) else d - - -def mean_flat(tensor): - """ - https://github.com/openai/guided-diffusion/blob/27c20a8fab9cb472df5d6bdd6c8d11c8f430b924/guided_diffusion/nn.py#L86 - Take the mean over all non-batch dimensions. - """ - return tensor.mean(dim=list(range(1, len(tensor.shape)))) - - -def count_params(model, verbose=False): - total_params = sum(p.numel() for p in model.parameters()) - if verbose: - print(f"{model.__class__.__name__} has {total_params * 1.e-6:.2f} M params.") - return total_params - - -def instantiate_from_config(config): - if not "target" in config: - if config == "__is_first_stage__": - return None - elif config == "__is_unconditional__": - return None - raise KeyError("Expected key `target` to instantiate.") - # import pdb; pdb.set_trace() - return get_obj_from_str(config["target"])(**config.get("params", dict())) - - -def get_obj_from_str(string, reload=False): - module, cls = string.rsplit(".", 1) - # import pdb; pdb.set_trace() - if reload: - module_imp = importlib.import_module(module) - importlib.reload(module_imp) - return getattr(importlib.import_module(module, package=None), cls) - - -def _do_parallel_data_prefetch(func, Q, data, idx, idx_to_fn=False): - # create dummy dataset instance - - # run prefetching - if idx_to_fn: - res = func(data, worker_id=idx) - else: - res = func(data) - Q.put([idx, res]) - Q.put("Done") - - -def parallel_data_prefetch( - func: callable, - data, - n_proc, - target_data_type="ndarray", - cpu_intensive=True, - use_worker_id=False, -): - # if target_data_type not in ["ndarray", "list"]: - # raise ValueError( - # "Data, which is passed to parallel_data_prefetch has to be either of type list or ndarray." - # ) - if isinstance(data, np.ndarray) and target_data_type == "list": - raise ValueError("list expected but function got ndarray.") - elif isinstance(data, abc.Iterable): - if isinstance(data, dict): - print( - f'WARNING:"data" argument passed to parallel_data_prefetch is a dict: Using only its values and disregarding keys.' - ) - data = list(data.values()) - if target_data_type == "ndarray": - data = np.asarray(data) - else: - data = list(data) - else: - raise TypeError( - f"The data, that shall be processed parallel has to be either an np.ndarray or an Iterable, but is actually {type(data)}." - ) - - if cpu_intensive: - Q = mp.Queue(1000) - proc = mp.Process - else: - Q = Queue(1000) - proc = Thread - # spawn processes - if target_data_type == "ndarray": - arguments = [ - [func, Q, part, i, use_worker_id] - for i, part in enumerate(np.array_split(data, n_proc)) - ] - else: - step = ( - int(len(data) / n_proc + 1) - if len(data) % n_proc != 0 - else int(len(data) / n_proc) - ) - arguments = [ - [func, Q, part, i, use_worker_id] - for i, part in enumerate( - [data[i : i + step] for i in range(0, len(data), step)] - ) - ] - processes = [] - for i in range(n_proc): - p = proc(target=_do_parallel_data_prefetch, args=arguments[i]) - processes += [p] - - # start processes - print(f"Start prefetching...") - import time - - start = time.time() - gather_res = [[] for _ in range(n_proc)] - try: - for p in processes: - p.start() - - k = 0 - while k < n_proc: - # get result - res = Q.get() - if res == "Done": - k += 1 - else: - gather_res[res[0]] = res[1] - - except Exception as e: - print("Exception: ", e) - for p in processes: - p.terminate() - - raise e - finally: - for p in processes: - p.join() - print(f"Prefetching complete. [{time.time() - start} sec.]") - - if target_data_type == "ndarray": - if not isinstance(gather_res[0], np.ndarray): - return np.concatenate([np.asarray(r) for r in gather_res], axis=0) - - # order outputs - return np.concatenate(gather_res, axis=0) - elif target_data_type == "list": - out = [] - for r in gather_res: - out.extend(r) - return out - else: - return gather_res - -def set_seed(seed=None): - random.seed(seed) - np.random.seed(seed) - if seed is not None: - torch.manual_seed(seed) - torch.cuda.manual_seed_all(seed) - -def add_random_background(image, bg_color=None): - bg_color = np.random.rand() * 255 if bg_color is None else bg_color - image = np.array(image) - rgb, alpha = image[..., :3], image[..., 3:] - alpha = alpha.astype(np.float32) / 255.0 - image_new = rgb * alpha + bg_color * (1 - alpha) - return Image.fromarray(image_new.astype(np.uint8)) \ No newline at end of file diff --git a/crm/imagedream/model_zoo.py b/crm/imagedream/model_zoo.py deleted file mode 100644 index 0257936..0000000 --- a/crm/imagedream/model_zoo.py +++ /dev/null @@ -1,64 +0,0 @@ -""" Utiliy functions to load pre-trained models more easily """ -import os -import pkg_resources -from omegaconf import OmegaConf - -import torch -from huggingface_hub import hf_hub_download - -from crm.imagedream.ldm.util import instantiate_from_config - - -PRETRAINED_MODELS = { - "sd-v2.1-base-4view-ipmv": { - "config": "sd_v2_base_ipmv.yaml", - "repo_id": "Peng-Wang/ImageDream", - "filename": "sd-v2.1-base-4view-ipmv.pt", - }, - "sd-v2.1-base-4view-ipmv-local": { - "config": "sd_v2_base_ipmv_local.yaml", - "repo_id": "Peng-Wang/ImageDream", - "filename": "sd-v2.1-base-4view-ipmv-local.pt", - }, -} - - -def get_config_file(config_path): - cfg_file = pkg_resources.resource_filename( - "imagedream", os.path.join("configs", config_path) - ) - if not os.path.exists(cfg_file): - raise RuntimeError(f"Config {config_path} not available!") - return cfg_file - - -def build_model(model_name, config_path=None, ckpt_path=None, cache_dir=None): - if (config_path is not None) and (ckpt_path is not None): - config = OmegaConf.load(config_path) - model = instantiate_from_config(config.model) - model.load_state_dict(torch.load(ckpt_path, map_location="cpu"), strict=False) - return model - - if not model_name in PRETRAINED_MODELS: - raise RuntimeError( - f"Model name {model_name} is not a pre-trained model. Available models are:\n- " - + "\n- ".join(PRETRAINED_MODELS.keys()) - ) - model_info = PRETRAINED_MODELS[model_name] - - # Instiantiate the model - print(f"Loading model from config: {model_info['config']}") - config_file = get_config_file(model_info["config"]) - config = OmegaConf.load(config_file) - model = instantiate_from_config(config.model) - - # Load pre-trained checkpoint from huggingface - if not ckpt_path: - ckpt_path = hf_hub_download( - repo_id=model_info["repo_id"], - filename=model_info["filename"], - cache_dir=cache_dir, - ) - print(f"Loading model from cache file: {ckpt_path}") - model.load_state_dict(torch.load(ckpt_path, map_location="cpu"), strict=False) - return model diff --git a/crm/libs/base_utils.py b/crm/libs/base_utils.py deleted file mode 100644 index 9233461..0000000 --- a/crm/libs/base_utils.py +++ /dev/null @@ -1,84 +0,0 @@ -import numpy as np -import cv2 -import torch -import numpy as np -from PIL import Image - - -def instantiate_from_config(config): - if not "target" in config: - raise KeyError("Expected key `target` to instantiate.") - return get_obj_from_str(config["target"])(**config.get("params", dict())) - - -def get_obj_from_str(string, reload=False): - import importlib - module, cls = string.rsplit(".", 1) - if reload: - module_imp = importlib.import_module(module) - importlib.reload(module_imp) - return getattr(importlib.import_module(module, package=None), cls) - - -def tensor_detail(t): - assert type(t) == torch.Tensor - print(f"shape: {t.shape} mean: {t.mean():.2f}, std: {t.std():.2f}, min: {t.min():.2f}, max: {t.max():.2f}") - - - -def drawRoundRec(draw, color, x, y, w, h, r): - drawObject = draw - - '''Rounds''' - drawObject.ellipse((x, y, x + r, y + r), fill=color) - drawObject.ellipse((x + w - r, y, x + w, y + r), fill=color) - drawObject.ellipse((x, y + h - r, x + r, y + h), fill=color) - drawObject.ellipse((x + w - r, y + h - r, x + w, y + h), fill=color) - - '''rec.s''' - drawObject.rectangle((x + r / 2, y, x + w - (r / 2), y + h), fill=color) - drawObject.rectangle((x, y + r / 2, x + w, y + h - (r / 2)), fill=color) - - -def do_resize_content(original_image: Image, scale_rate): - # resize image content wile retain the original image size - if scale_rate != 1: - # Calculate the new size after rescaling - new_size = tuple(int(dim * scale_rate) for dim in original_image.size) - # Resize the image while maintaining the aspect ratio - resized_image = original_image.resize(new_size) - # Create a new image with the original size and black background - padded_image = Image.new("RGBA", original_image.size, (0, 0, 0, 0)) - paste_position = ((original_image.width - resized_image.width) // 2, (original_image.height - resized_image.height) // 2) - padded_image.paste(resized_image, paste_position) - return padded_image - else: - return original_image - -def add_stroke(img, color=(255, 255, 255), stroke_radius=3): - # color in R, G, B format - if isinstance(img, Image.Image): - assert img.mode == "RGBA" - img = cv2.cvtColor(np.array(img), cv2.COLOR_RGBA2BGRA) - else: - assert img.shape[2] == 4 - gray = img[:,:, 3] - ret, binary = cv2.threshold(gray,127,255,cv2.THRESH_BINARY) - contours, hierarchy = cv2.findContours(binary,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE) - res = cv2.drawContours(img, contours,-1, tuple(color)[::-1] + (255,), stroke_radius) - return Image.fromarray(cv2.cvtColor(res,cv2.COLOR_BGRA2RGBA)) - -def make_blob(image_size=(512, 512), sigma=0.2): - """ - make 2D blob image with: - I(x, y)=1-\exp \left(-\frac{(x-H / 2)^2+(y-W / 2)^2}{2 \sigma^2 HS}\right) - """ - import numpy as np - H, W = image_size - x = np.arange(0, W, 1, float) - y = np.arange(0, H, 1, float) - x, y = np.meshgrid(x, y) - x0 = W // 2 - y0 = H // 2 - img = 1 - np.exp(-((x - x0) ** 2 + (y - y0) ** 2) / (2 * sigma ** 2 * H * W)) - return (img * 255).astype(np.uint8) \ No newline at end of file diff --git a/crm/libs/sample.py b/crm/libs/sample.py deleted file mode 100644 index f241e87..0000000 --- a/crm/libs/sample.py +++ /dev/null @@ -1,380 +0,0 @@ -import numpy as np -import torch -from crm.imagedream.camera_utils import get_camera_for_index -from crm.imagedream.ldm.util import set_seed, add_random_background -from crm.libs.base_utils import do_resize_content -from crm.imagedream.ldm.models.diffusion.ddim import DDIMSampler -from torchvision import transforms as T - - -class ImageDreamDiffusion: - def __init__( - self, - model, - device, - dtype, - mode, - num_frames, - camera_views, - ref_position, - random_background=False, - offset_noise=False, - resize_rate=1, - image_size=256, - seed=1234, - ) -> None: - assert mode in ["pixel", "local"] - size = image_size - self.seed = seed - batch_size = max(4, num_frames) - - neg_texts = "uniform low no texture ugly, boring, bad anatomy, blurry, pixelated, obscure, unnatural colors, poor lighting, dull, and unclear." - uc = model.get_learned_conditioning([neg_texts]).to(device) - sampler = DDIMSampler(model) - - # pre-compute camera matrices - camera = [get_camera_for_index(i).squeeze() for i in camera_views] - camera[ref_position] = torch.zeros_like(camera[ref_position]) # set ref camera to zero - camera = torch.stack(camera) - camera = camera.repeat(batch_size // num_frames, 1).to(device) - - self.image_transform = T.Compose( - [ - T.Resize((size, size)), - T.ToTensor(), # scale image pixels from [0,255] to [0,1] values - T.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)), - ] - ) - self.dtype = dtype - self.ref_position = ref_position - self.mode = mode - self.random_background = random_background - self.resize_rate = resize_rate - self.num_frames = num_frames - self.size = size - self.device = device - self.batch_size = batch_size - self.model = model - self.sampler = sampler - self.uc = uc - self.camera = camera - self.offset_noise = offset_noise - - @staticmethod - def i2i( - model, - image_size, - prompt, - uc, - sampler, - ip=None, - step=20, - scale=5.0, - batch_size=8, - ddim_eta=0.0, - dtype=torch.float32, - device="cuda", - camera=None, - num_frames=4, - pixel_control=False, - transform=None, - offset_noise=False, - ): - """ The function supports additional image prompt. - Args: - model (_type_): the image dream model - image_size (_type_): size of diffusion output (standard 256) - prompt (_type_): text prompt for the image (prompt in type str) - uc (_type_): unconditional vector (tensor in shape [1, 77, 1024]) - sampler (_type_): imagedream.ldm.models.diffusion.ddim.DDIMSampler - ip (Image, optional): the image prompt. Defaults to None. - step (int, optional): _description_. Defaults to 20. - scale (float, optional): _description_. Defaults to 7.5. - batch_size (int, optional): _description_. Defaults to 8. - ddim_eta (float, optional): _description_. Defaults to 0.0. - dtype (_type_, optional): _description_. Defaults to torch.float32. - device (str, optional): _description_. Defaults to "cuda". - camera (_type_, optional): camera info in tensor, shape: torch.Size([5, 16]) mean: 0.11, std: 0.49, min: -1.00, max: 1.00 - num_frames (int, optional): _num of frames (views) to generate - pixel_control: whether to use pixel conditioning. Defaults to False, True when using pixel mode - transform: Compose( - Resize(size=(256, 256), interpolation=bilinear, max_size=None, antialias=warn) - ToTensor() - Normalize(mean=(0.5, 0.5, 0.5), std=(0.5, 0.5, 0.5)) - ) - """ - ip_raw = ip - if type(prompt) != list: - prompt = [prompt] - with torch.no_grad(), torch.autocast(device_type=torch.device(device).type, dtype=dtype): - c = model.get_learned_conditioning(prompt).to( - device - ) # shape: torch.Size([1, 77, 1024]) mean: -0.17, std: 1.02, min: -7.50, max: 13.05 - c_ = {"context": c.repeat(batch_size, 1, 1)} # batch_size - uc_ = {"context": uc.repeat(batch_size, 1, 1)} - - if camera is not None: - c_["camera"] = uc_["camera"] = ( - camera # shape: torch.Size([5, 16]) mean: 0.11, std: 0.49, min: -1.00, max: 1.00 - ) - c_["num_frames"] = uc_["num_frames"] = num_frames - - if ip is not None: - ip_embed = model.get_learned_image_conditioning(ip).to( - device - ) # shape: torch.Size([1, 257, 1280]) mean: 0.06, std: 0.53, min: -6.83, max: 11.12 - ip_ = ip_embed.repeat(batch_size, 1, 1) - c_["ip"] = ip_ - uc_["ip"] = torch.zeros_like(ip_) - - if pixel_control: - assert camera is not None - ip = transform(ip).to( - device - ) # shape: torch.Size([3, 256, 256]) mean: 0.33, std: 0.37, min: -1.00, max: 1.00 - ip_img = model.get_first_stage_encoding( - model.encode_first_stage(ip[None, :, :, :]) - ) # shape: torch.Size([1, 4, 32, 32]) mean: 0.23, std: 0.77, min: -4.42, max: 3.55 - c_["ip_img"] = ip_img - uc_["ip_img"] = torch.zeros_like(ip_img) - - shape = [4, image_size // 8, image_size // 8] # [4, 32, 32] - if offset_noise: - ref = transform(ip_raw).to(device) - ref_latent = model.get_first_stage_encoding(model.encode_first_stage(ref[None, :, :, :])) - ref_mean = ref_latent.mean(dim=(-1, -2), keepdim=True) - time_steps = torch.randint(model.num_timesteps - 1, model.num_timesteps, (batch_size,), device=device) - x_T = model.q_sample(torch.ones([batch_size] + shape, device=device) * ref_mean, time_steps) - - samples_ddim, _ = ( - sampler.sample( # shape: torch.Size([5, 4, 32, 32]) mean: 0.29, std: 0.85, min: -3.38, max: 4.43 - S=step, - conditioning=c_, - batch_size=batch_size, - shape=shape, - verbose=False, - unconditional_guidance_scale=scale, - unconditional_conditioning=uc_, - eta=ddim_eta, - x_T=x_T if offset_noise else None, - ) - ) - - x_sample = model.decode_first_stage(samples_ddim) - x_sample = torch.clamp((x_sample + 1.0) / 2.0, min=0.0, max=1.0) - x_sample = x_sample.permute(0, 2, 3, 1) # (N, H, W, 3) in [0, 1] - - return x_sample - - def diffuse(self, t, ip, n_test=2): - set_seed(self.seed) - ip = do_resize_content(ip, self.resize_rate) - if self.random_background: - ip = add_random_background(ip) - - images = [] - for _ in range(n_test): - img = self.i2i( - self.model, - self.size, - t, - self.uc, - self.sampler, - ip=ip, - step=50, - scale=5, - batch_size=self.batch_size, - ddim_eta=0.0, - dtype=self.dtype, - device=self.device, - camera=self.camera, - num_frames=self.num_frames, - pixel_control=(self.mode == "pixel"), - transform=self.image_transform, - offset_noise=self.offset_noise, - ) - img = np.concatenate(img, 1) - img = np.concatenate((img, ip.resize((self.size, self.size))), axis=1) - images.append(img) - set_seed() # unset random and numpy seed - return images - - -class ImageDreamDiffusionStage2: - def __init__( - self, - model, - device, - dtype, - num_frames, - camera_views, - ref_position, - random_background=False, - offset_noise=False, - resize_rate=1, - mode="pixel", - image_size=256, - seed=1234, - ) -> None: - assert mode in ["pixel", "local"] - - size = image_size - self.seed = seed - batch_size = max(4, num_frames) - - neg_texts = "uniform low no texture ugly, boring, bad anatomy, blurry, pixelated, obscure, unnatural colors, poor lighting, dull, and unclear." - uc = model.get_learned_conditioning([neg_texts]).to(device) - sampler = DDIMSampler(model) - - # pre-compute camera matrices - camera = [get_camera_for_index(i).squeeze() for i in camera_views] - if ref_position is not None: - camera[ref_position] = torch.zeros_like(camera[ref_position]) # set ref camera to zero - camera = torch.stack(camera) - camera = camera.repeat(batch_size // num_frames, 1).to(device) - - self.image_transform = T.Compose( - [ - T.Resize((size, size)), - T.ToTensor(), - T.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)), - ] - ) - - self.dtype = dtype - self.mode = mode - self.ref_position = ref_position - self.random_background = random_background - self.resize_rate = resize_rate - self.num_frames = num_frames - self.size = size - self.device = device - self.batch_size = batch_size - self.model = model - self.sampler = sampler - self.uc = uc - self.camera = camera - self.offset_noise = offset_noise - - @staticmethod - def i2iStage2( - model, - image_size, - prompt, - uc, - sampler, - pixel_images, - ip=None, - step=20, - scale=5.0, - batch_size=8, - ddim_eta=0.0, - dtype=torch.float32, - device="cuda", - camera=None, - num_frames=4, - pixel_control=False, - transform=None, - offset_noise=False, - ): - ip_raw = ip - if type(prompt) != list: - prompt = [prompt] - with torch.no_grad(), torch.autocast(device_type=torch.device(device).type, dtype=dtype): - c = model.get_learned_conditioning(prompt).to( - device - ) # shape: torch.Size([1, 77, 1024]) mean: -0.17, std: 1.02, min: -7.50, max: 13.05 - c_ = {"context": c.repeat(batch_size, 1, 1)} # batch_size - uc_ = {"context": uc.repeat(batch_size, 1, 1)} - - if camera is not None: - c_["camera"] = uc_["camera"] = ( - camera # shape: torch.Size([5, 16]) mean: 0.11, std: 0.49, min: -1.00, max: 1.00 - ) - c_["num_frames"] = uc_["num_frames"] = num_frames - - if ip is not None: - ip_embed = model.get_learned_image_conditioning(ip).to( - device - ) # shape: torch.Size([1, 257, 1280]) mean: 0.06, std: 0.53, min: -6.83, max: 11.12 - ip_ = ip_embed.repeat(batch_size, 1, 1) - c_["ip"] = ip_ - uc_["ip"] = torch.zeros_like(ip_) - - if pixel_control: - assert camera is not None - - transed_pixel_images = torch.stack([transform(i).to(device) for i in pixel_images]) - latent_pixel_images = model.get_first_stage_encoding(model.encode_first_stage(transed_pixel_images)) - - c_["pixel_images"] = latent_pixel_images - uc_["pixel_images"] = torch.zeros_like(latent_pixel_images) - - shape = [4, image_size // 8, image_size // 8] # [4, 32, 32] - if offset_noise: - ref = transform(ip_raw).to(device) - ref_latent = model.get_first_stage_encoding(model.encode_first_stage(ref[None, :, :, :])) - ref_mean = ref_latent.mean(dim=(-1, -2), keepdim=True) - time_steps = torch.randint(model.num_timesteps - 1, model.num_timesteps, (batch_size,), device=device) - x_T = model.q_sample(torch.ones([batch_size] + shape, device=device) * ref_mean, time_steps) - - samples_ddim, _ = ( - sampler.sample( # shape: torch.Size([5, 4, 32, 32]) mean: 0.29, std: 0.85, min: -3.38, max: 4.43 - S=step, - conditioning=c_, - batch_size=batch_size, - shape=shape, - verbose=False, - unconditional_guidance_scale=scale, - unconditional_conditioning=uc_, - eta=ddim_eta, - x_T=x_T if offset_noise else None, - ) - ) - x_sample = model.decode_first_stage(samples_ddim) - x_sample = torch.clamp((x_sample + 1.0) / 2.0, min=0.0, max=1.0) - x_sample = x_sample.permute(0, 2, 3, 1) # (N, H, W, 3) in [0, 1] - - return x_sample - - @torch.no_grad() - def diffuse(self, t, ip, pixel_images, n_test=2): - set_seed(self.seed) - ip = do_resize_content(ip, self.resize_rate) - pixel_images = [do_resize_content(i, self.resize_rate) for i in pixel_images] - - if self.random_background: - bg_color = np.random.rand() * 255 - ip = add_random_background(ip, bg_color) - pixel_images = [add_random_background(i, bg_color) for i in pixel_images] - - images = [] - for _ in range(n_test): - img = self.i2iStage2( - self.model, - self.size, - t, - self.uc, - self.sampler, - pixel_images=pixel_images, - ip=ip, - step=50, - scale=5, - batch_size=self.batch_size, - ddim_eta=0.0, - dtype=self.dtype, - device=self.device, - camera=self.camera, - num_frames=self.num_frames, - pixel_control=(self.mode == "pixel"), - transform=self.image_transform, - offset_noise=self.offset_noise, - ) - img = np.concatenate(img, 1) - img = np.concatenate( - (img, ip.resize((self.size, self.size)), *[i.resize((self.size, self.size)) for i in pixel_images]), - axis=1, - ) - images.append(img) - set_seed() # unset random and numpy seed - return images diff --git a/crm/model/__init__.py b/crm/model/__init__.py deleted file mode 100644 index d2ab114..0000000 --- a/crm/model/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from crm.model.crm.model import CRM \ No newline at end of file diff --git a/crm/model/archs/__init__.py b/crm/model/archs/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/crm/model/archs/decoders/__init__.py b/crm/model/archs/decoders/__init__.py deleted file mode 100644 index 8b13789..0000000 --- a/crm/model/archs/decoders/__init__.py +++ /dev/null @@ -1 +0,0 @@ - diff --git a/crm/model/archs/decoders/shape_texture_net.py b/crm/model/archs/decoders/shape_texture_net.py deleted file mode 100644 index 706d95c..0000000 --- a/crm/model/archs/decoders/shape_texture_net.py +++ /dev/null @@ -1,62 +0,0 @@ -import torch -import torch.nn as nn -import torch.nn.functional as F - - -class TetTexNet(nn.Module): - def __init__(self, plane_reso=64, padding=0.1, fea_concat=True): - super().__init__() - # self.c_dim = c_dim - self.plane_reso = plane_reso - self.padding = padding - self.fea_concat = fea_concat - - def forward(self, rolled_out_feature, query): - # rolled_out_feature: rolled-out triplane feature - # query: queried xyz coordinates (should be scaled consistently to ptr cloud) - - plane_reso = self.plane_reso - - triplane_feature = dict() - triplane_feature['xy'] = rolled_out_feature[:, :, :, 0: plane_reso] - triplane_feature['yz'] = rolled_out_feature[:, :, :, plane_reso: 2 * plane_reso] - triplane_feature['zx'] = rolled_out_feature[:, :, :, 2 * plane_reso:] - - query_feature_xy = self.sample_plane_feature(query, triplane_feature['xy'], 'xy') - query_feature_yz = self.sample_plane_feature(query, triplane_feature['yz'], 'yz') - query_feature_zx = self.sample_plane_feature(query, triplane_feature['zx'], 'zx') - - if self.fea_concat: - query_feature = torch.cat((query_feature_xy, query_feature_yz, query_feature_zx), dim=1) - else: - query_feature = query_feature_xy + query_feature_yz + query_feature_zx - - output = query_feature.permute(0, 2, 1) - - return output - - # uses values from plane_feature and pixel locations from vgrid to interpolate feature - def sample_plane_feature(self, query, plane_feature, plane): - # CYF note: - # for pretraining, query are uniformly sampled positions w.i. [-scale, scale] - # for training, query are essentially tetrahedra grid vertices, which are - # also within [-scale, scale] in the current version! - # xy range [-scale, scale] - if plane == 'xy': - xy = query[:, :, [0, 1]] - elif plane == 'yz': - xy = query[:, :, [1, 2]] - elif plane == 'zx': - xy = query[:, :, [2, 0]] - else: - raise ValueError("Error! Invalid plane type!") - - xy = xy[:, :, None].float() - # not seem necessary to rescale the grid, because from - # https://pytorch.org/docs/stable/generated/torch.nn.functional.grid_sample.html, - # it specifies sampling locations normalized by plane_feature's spatial dimension, - # which is within [-scale, scale] as specified by encoder's calling of coordinate2index() - vgrid = 1.0 * xy - sampled_feat = F.grid_sample(plane_feature, vgrid, padding_mode='border', align_corners=True, mode='bilinear').squeeze(-1) - - return sampled_feat diff --git a/crm/model/archs/mlp_head.py b/crm/model/archs/mlp_head.py deleted file mode 100644 index 7b87ff5..0000000 --- a/crm/model/archs/mlp_head.py +++ /dev/null @@ -1,40 +0,0 @@ -import torch.nn as nn -import torch.nn.functional as F - - -class SdfMlp(nn.Module): - def __init__(self, input_dim, hidden_dim=512, bias=True): - super().__init__() - self.input_dim = input_dim - self.hidden_dim = hidden_dim - - self.fc1 = nn.Linear(input_dim, hidden_dim, bias=bias) - self.fc2 = nn.Linear(hidden_dim, hidden_dim, bias=bias) - self.fc3 = nn.Linear(hidden_dim, 4, bias=bias) - - - def forward(self, input): - x = F.relu(self.fc1(input)) - x = F.relu(self.fc2(x)) - out = self.fc3(x) - return out - - -class RgbMlp(nn.Module): - def __init__(self, input_dim, hidden_dim=512, bias=True): - super().__init__() - self.input_dim = input_dim - self.hidden_dim = hidden_dim - - self.fc1 = nn.Linear(input_dim, hidden_dim, bias=bias) - self.fc2 = nn.Linear(hidden_dim, hidden_dim, bias=bias) - self.fc3 = nn.Linear(hidden_dim, 3, bias=bias) - - def forward(self, input): - x = F.relu(self.fc1(input)) - x = F.relu(self.fc2(x)) - out = self.fc3(x) - - return out - - \ No newline at end of file diff --git a/crm/model/archs/unet.py b/crm/model/archs/unet.py deleted file mode 100644 index e43b72b..0000000 --- a/crm/model/archs/unet.py +++ /dev/null @@ -1,53 +0,0 @@ -''' -Codes are from: -https://github.com/jaxony/unet-pytorch/blob/master/model.py -''' - -import torch -import torch.nn as nn -from diffusers import UNet2DModel -import einops -class UNetPP(nn.Module): - ''' - Wrapper for UNet in diffusers - ''' - def __init__(self, in_channels): - super(UNetPP, self).__init__() - self.in_channels = in_channels - self.unet = UNet2DModel( - sample_size=[256, 256*3], - in_channels=in_channels, - out_channels=32, - layers_per_block=2, - block_out_channels=(64, 128, 128, 128*2, 128*2, 128*4, 128*4), - down_block_types=( - "DownBlock2D", - "DownBlock2D", - "DownBlock2D", - "AttnDownBlock2D", - "AttnDownBlock2D", - "AttnDownBlock2D", - "DownBlock2D", - ), - up_block_types=( - "UpBlock2D", - "AttnUpBlock2D", - "AttnUpBlock2D", - "AttnUpBlock2D", - "UpBlock2D", - "UpBlock2D", - "UpBlock2D", - ), - ) - - self.unet.enable_xformers_memory_efficient_attention() - if in_channels > 12: - self.learned_plane = torch.nn.parameter.Parameter(torch.zeros([1,in_channels-12,256,256*3])) - - def forward(self, x, t=256): - learned_plane = self.learned_plane - if x.shape[1] < self.in_channels: - learned_plane = einops.repeat(learned_plane, '1 C H W -> B C H W', B=x.shape[0]).to(x.device) - x = torch.cat([x, learned_plane], dim = 1) - return self.unet(x, t).sample - diff --git a/crm/model/crm/model.py b/crm/model/crm/model.py deleted file mode 100644 index 9c86063..0000000 --- a/crm/model/crm/model.py +++ /dev/null @@ -1,194 +0,0 @@ -import torch.nn as nn -import torch -import torch.nn.functional as F - -import numpy as np - -import cv2 -import trimesh -import nvdiffrast.torch as dr - -from crm.model.archs.decoders.shape_texture_net import TetTexNet -from crm.model.archs.unet import UNetPP -from crm.util.renderer import Renderer -from crm.model.archs.mlp_head import SdfMlp, RgbMlp -import xatlas - -from mesh_processer.mesh import Mesh - - -class Dummy: - pass - -class CRM(nn.Module): - def __init__(self, specs): - super(CRM, self).__init__() - - self.specs = specs - # configs - input_specs = specs["Input"] - self.input = Dummy() - self.input.scale = input_specs['scale'] - self.input.resolution = input_specs['resolution'] - self.tet_grid_size = input_specs['tet_grid_size'] - self.camera_angle_num = input_specs['camera_angle_num'] - - self.arch = Dummy() - self.arch.fea_concat = specs["ArchSpecs"]["fea_concat"] - self.arch.mlp_bias = specs["ArchSpecs"]["mlp_bias"] - - self.dec = Dummy() - self.dec.c_dim = specs["DecoderSpecs"]["c_dim"] - self.dec.plane_resolution = specs["DecoderSpecs"]["plane_resolution"] - - self.geo_type = specs["Train"].get("geo_type", "flex") # "dmtet" or "flex" - - self.unet2 = UNetPP(in_channels=self.dec.c_dim) - - mlp_chnl_s = 3 if self.arch.fea_concat else 1 # 3 for queried triplane feature concatenation - self.decoder = TetTexNet(plane_reso=self.dec.plane_resolution, fea_concat=self.arch.fea_concat) - - if self.geo_type == "flex": - self.weightMlp = nn.Sequential( - nn.Linear(mlp_chnl_s * 32 * 8, 512), - nn.SiLU(), - nn.Linear(512, 21)) - - self.sdfMlp = SdfMlp(mlp_chnl_s * 32, 512, bias=self.arch.mlp_bias) - self.rgbMlp = RgbMlp(mlp_chnl_s * 32, 512, bias=self.arch.mlp_bias) - self.renderer = Renderer(tet_grid_size=self.tet_grid_size, camera_angle_num=self.camera_angle_num, - scale=self.input.scale, geo_type = self.geo_type) - - - self.spob = True if specs['Pretrain']['mode'] is None else False # whether to add sphere - self.radius = specs['Pretrain']['radius'] # used when spob - - self.denoising = True - from diffusers import DDIMScheduler - self.scheduler = DDIMScheduler.from_pretrained("stabilityai/stable-diffusion-2-1-base", subfolder="scheduler") - - def decode(self, data, triplane_feature2): - if self.geo_type == "flex": - tet_verts = self.renderer.flexicubes.verts.unsqueeze(0) - tet_indices = self.renderer.flexicubes.indices - - dec_verts = self.decoder(triplane_feature2, tet_verts) - out = self.sdfMlp(dec_verts) - - weight = None - if self.geo_type == "flex": - grid_feat = torch.index_select(input=dec_verts, index=self.renderer.flexicubes.indices.reshape(-1),dim=1) - grid_feat = grid_feat.reshape(dec_verts.shape[0], self.renderer.flexicubes.indices.shape[0], self.renderer.flexicubes.indices.shape[1] * dec_verts.shape[-1]) - weight = self.weightMlp(grid_feat) - weight = weight * 0.1 - - pred_sdf, deformation = out[..., 0], out[..., 1:] - if self.spob: - pred_sdf = pred_sdf + self.radius - torch.sqrt((tet_verts**2).sum(-1)) - - _, verts, faces = self.renderer(data, pred_sdf, deformation, tet_verts, tet_indices, weight= weight) - return verts[0].unsqueeze(0), faces[0].int() - - def export_mesh(self, data, out_dir, ind, device=None, tri_fea_2 = None): - verts = data['verts'] - faces = data['faces'] - - dec_verts = self.decoder(tri_fea_2, verts.unsqueeze(0)) - colors = self.rgbMlp(dec_verts).squeeze().detach().cpu().numpy() - # Expect predicted colors value range from [-1, 1] - colors = (colors * 0.5 + 0.5).clip(0, 1) - - verts = verts.squeeze().cpu().numpy() - faces = faces[..., [2, 1, 0]].squeeze().cpu().numpy() - - # export the final mesh - with torch.no_grad(): - mesh = trimesh.Trimesh(verts, faces, vertex_colors=colors, process=False) # important, process=True leads to seg fault... - mesh.export(out_dir / f'{ind}.obj') - - @torch.no_grad() - def get_mesh_wt_uv(self, ctx, data, device, res, tri_fea_2=None): - - mesh_v = data['verts'].squeeze().cpu().numpy() - mesh_pos_idx = data['faces'].squeeze().cpu().numpy() - - def interpolate(attr, rast, attr_idx, rast_db=None): - return dr.interpolate(attr.contiguous(), rast, attr_idx, rast_db=rast_db, - diff_attrs=None if rast_db is None else 'all') - - vmapping, indices, uvs = xatlas.parametrize(mesh_v, mesh_pos_idx) - - mesh_v = torch.tensor(mesh_v, dtype=torch.float32, device=device) - mesh_pos_idx = torch.tensor(mesh_pos_idx, dtype=torch.int64, device=device) - - # Convert to tensors - indices_int64 = indices.astype(np.uint64, casting='same_kind').view(np.int64) - - uvs = torch.tensor(uvs, dtype=torch.float32, device=mesh_v.device) - mesh_tex_idx = torch.tensor(indices_int64, dtype=torch.int64, device=mesh_v.device) - # mesh_v_tex. ture - uv_clip = uvs[None, ...] * 2.0 - 1.0 - - # pad to four component coordinate - uv_clip4 = torch.cat((uv_clip, torch.zeros_like(uv_clip[..., 0:1]), torch.ones_like(uv_clip[..., 0:1])), dim=-1) - - # rasterize - rast, _ = dr.rasterize(ctx, uv_clip4, mesh_tex_idx.int(), res) - - # Interpolate world space position - gb_pos, _ = interpolate(mesh_v[None, ...], rast, mesh_pos_idx.int()) - mask = rast[..., 3:4] > 0 - - # return uvs, mesh_tex_idx, gb_pos, mask - gb_pos_unsqz = gb_pos.view(-1, 3) - mask_unsqz = mask.view(-1) - tex_unsqz = torch.zeros_like(gb_pos_unsqz) + 1 - - gb_mask_pos = gb_pos_unsqz[mask_unsqz] - - gb_mask_pos = gb_mask_pos[None, ] - - with torch.no_grad(): - - dec_verts = self.decoder(tri_fea_2, gb_mask_pos) - colors = self.rgbMlp(dec_verts).squeeze() - - # Expect predicted colors value range from [-1, 1] - lo, hi = (-1, 1) - colors = (colors - lo) * (255 / (hi - lo)) - colors = colors.clip(0, 255) - - tex_unsqz[mask_unsqz] = colors - - tex = tex_unsqz.view(res + (3,)) - - verts = mesh_v.squeeze().cpu().numpy() - faces = mesh_pos_idx[..., [2, 1, 0]].squeeze().cpu().numpy() - # faces = mesh_pos_idx - # faces = faces.detach().cpu().numpy() - # faces = faces[..., [2, 1, 0]] - indices = indices[..., [2, 1, 0]] - - verts = verts[:, [0, 2, 1]] - verts[:, 2] *= -1 - - #uvs[:, 1] = 1 - uvs[:, 1] - - # Get albedo texture map - img = np.asarray(tex.data.cpu().numpy(), dtype=np.float32) - mask = np.sum(img.astype(float), axis=-1, keepdims=True) - mask = (mask <= 3.0).astype(float) - kernel = np.ones((3, 3), 'uint8') - dilate_img = cv2.dilate(img, kernel, iterations=1) - img = img * (1 - mask) + dilate_img * mask - img = img.clip(0, 255).astype(np.uint8) / 255 - - mesh_v = torch.tensor(verts, dtype=torch.float32, device=device) - mesh_f = torch.tensor(faces, dtype=torch.int32, device=device) - mesh_vt = uvs.clone().detach() - mesh_ft = torch.tensor(indices.astype(np.int32), dtype=torch.int32, device=device) - albedo = torch.tensor(img, dtype=torch.float32, device=device) - - mesh = Mesh(v=mesh_v, f=mesh_f, vt=mesh_vt, ft=mesh_ft, albedo=albedo, device=device) - mesh.auto_normal() - return mesh \ No newline at end of file diff --git a/crm/util/__init__.py b/crm/util/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/crm/util/flexicubes_geometry.py b/crm/util/flexicubes_geometry.py deleted file mode 100644 index 315a481..0000000 --- a/crm/util/flexicubes_geometry.py +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch -from flexicubes.flexicubes import FlexiCubes -# from dmtet import sdf_reg_loss_batch -import torch.nn.functional as F - -def get_center_boundary_index(grid_res, device): - v = torch.zeros((grid_res + 1, grid_res + 1, grid_res + 1), dtype=torch.bool, device=device) - v[grid_res // 2 + 1, grid_res // 2 + 1, grid_res // 2 + 1] = True - center_indices = torch.nonzero(v.reshape(-1)) - - v[grid_res // 2 + 1, grid_res // 2 + 1, grid_res // 2 + 1] = False - v[:2, ...] = True - v[-2:, ...] = True - v[:, :2, ...] = True - v[:, -2:, ...] = True - v[:, :, :2] = True - v[:, :, -2:] = True - boundary_indices = torch.nonzero(v.reshape(-1)) - return center_indices, boundary_indices - -############################################################################### -# Geometry interface -############################################################################### -class FlexiCubesGeometry(object): - def __init__( - self, grid_res=64, scale=2.0, device='cuda', renderer=None, - render_type='neural_render', args=None): - super(FlexiCubesGeometry, self).__init__() - self.grid_res = grid_res - self.device = device - self.args = args - self.fc = FlexiCubes(device, weight_scale=0.5) - self.verts, self.indices = self.fc.construct_voxel_grid(grid_res) - if isinstance(scale, list): - self.verts[:, 0] = self.verts[:, 0] * scale[0] - self.verts[:, 1] = self.verts[:, 1] * scale[1] - self.verts[:, 2] = self.verts[:, 2] * scale[1] - else: - self.verts = self.verts * scale - - all_edges = self.indices[:, self.fc.cube_edges].reshape(-1, 2) - self.all_edges = torch.unique(all_edges, dim=0) - - # Parameters used for fix boundary sdf - self.center_indices, self.boundary_indices = get_center_boundary_index(self.grid_res, device) - self.renderer = renderer - self.render_type = render_type - - def getAABB(self): - return torch.min(self.verts, dim=0).values, torch.max(self.verts, dim=0).values - - def get_mesh(self, v_deformed_nx3, sdf_n, weight_n=None, with_uv=False, indices=None, is_training=False): - if indices is None: - indices = self.indices - - verts, faces, v_reg_loss = self.fc(v_deformed_nx3, sdf_n, indices, self.grid_res, - beta_fx12=weight_n[:, :12], alpha_fx8=weight_n[:, 12:20], - gamma_f=weight_n[:, 20], training=is_training - ) - return verts, faces, v_reg_loss - - - def render_mesh(self, mesh_v_nx3, mesh_f_fx3, camera_mv_bx4x4, resolution=256, hierarchical_mask=False): - return_value = dict() - if self.render_type == 'neural_render': - tex_pos, mask, hard_mask, rast, v_pos_clip, mask_pyramid, depth = self.renderer.render_mesh( - mesh_v_nx3.unsqueeze(dim=0), - mesh_f_fx3.int(), - camera_mv_bx4x4, - mesh_v_nx3.unsqueeze(dim=0), - resolution=resolution, - device=self.device, - hierarchical_mask=hierarchical_mask - ) - - return_value['tex_pos'] = tex_pos - return_value['mask'] = mask - return_value['hard_mask'] = hard_mask - return_value['rast'] = rast - return_value['v_pos_clip'] = v_pos_clip - return_value['mask_pyramid'] = mask_pyramid - return_value['depth'] = depth - else: - raise NotImplementedError - - return return_value - - def render(self, v_deformed_bxnx3=None, sdf_bxn=None, camera_mv_bxnviewx4x4=None, resolution=256): - # Here I assume a batch of meshes (can be different mesh and geometry), for the other shapes, the batch is 1 - v_list = [] - f_list = [] - n_batch = v_deformed_bxnx3.shape[0] - all_render_output = [] - for i_batch in range(n_batch): - verts_nx3, faces_fx3 = self.get_mesh(v_deformed_bxnx3[i_batch], sdf_bxn[i_batch]) - v_list.append(verts_nx3) - f_list.append(faces_fx3) - render_output = self.render_mesh(verts_nx3, faces_fx3, camera_mv_bxnviewx4x4[i_batch], resolution) - all_render_output.append(render_output) - - # Concatenate all render output - return_keys = all_render_output[0].keys() - return_value = dict() - for k in return_keys: - value = [v[k] for v in all_render_output] - return_value[k] = value - # We can do concatenation outside of the render - return return_value diff --git a/crm/util/renderer.py b/crm/util/renderer.py deleted file mode 100644 index 72e80c9..0000000 --- a/crm/util/renderer.py +++ /dev/null @@ -1,49 +0,0 @@ - -import torch -import torch.nn as nn -import nvdiffrast.torch as dr -from .flexicubes_geometry import FlexiCubesGeometry - -class Renderer(nn.Module): - def __init__(self, tet_grid_size, camera_angle_num, scale, geo_type): - super().__init__() - - self.tet_grid_size = tet_grid_size - self.camera_angle_num = camera_angle_num - self.scale = scale - self.geo_type = geo_type - self.glctx = dr.RasterizeCudaContext() - - if self.geo_type == "flex": - self.flexicubes = FlexiCubesGeometry(grid_res = self.tet_grid_size) - - def forward(self, data, sdf, deform, verts, tets, training=False, weight = None): - - results = {} - - deform = torch.tanh(deform) / self.tet_grid_size * self.scale / 0.95 - if self.geo_type == "flex": - deform = deform *0.5 - - v_deformed = verts + deform - - verts_list = [] - faces_list = [] - reg_list = [] - n_shape = verts.shape[0] - for i in range(n_shape): - verts_i, faces_i, reg_i = self.flexicubes.get_mesh(v_deformed[i], sdf[i].squeeze(dim=-1), - with_uv=False, indices=tets, weight_n=weight[i], is_training=training) - - verts_list.append(verts_i) - faces_list.append(faces_i) - reg_list.append(reg_i) - verts = verts_list - faces = faces_list - - flexicubes_surface_reg = torch.cat(reg_list).mean() - flexicubes_weight_reg = (weight ** 2).mean() - results["flex_surf_loss"] = flexicubes_surface_reg - results["flex_weight_loss"] = flexicubes_weight_reg - - return results, verts, faces \ No newline at end of file diff --git a/crm/util/utils.py b/crm/util/utils.py deleted file mode 100644 index e4cb35e..0000000 --- a/crm/util/utils.py +++ /dev/null @@ -1,194 +0,0 @@ -import numpy as np -import torch -import random - - -# Reworked so this matches gluPerspective / glm::perspective, using fovy -def perspective(fovx=0.7854, aspect=1.0, n=0.1, f=1000.0, device=None): - # y = np.tan(fovy / 2) - x = np.tan(fovx / 2) - return torch.tensor([[1/x, 0, 0, 0], - [ 0, -aspect/x, 0, 0], - [ 0, 0, -(f+n)/(f-n), -(2*f*n)/(f-n)], - [ 0, 0, -1, 0]], dtype=torch.float32, device=device) - - -def translate(x, y, z, device=None): - return torch.tensor([[1, 0, 0, x], - [0, 1, 0, y], - [0, 0, 1, z], - [0, 0, 0, 1]], dtype=torch.float32, device=device) - - -def rotate_x(a, device=None): - s, c = np.sin(a), np.cos(a) - return torch.tensor([[1, 0, 0, 0], - [0, c, -s, 0], - [0, s, c, 0], - [0, 0, 0, 1]], dtype=torch.float32, device=device) - - -def rotate_y(a, device=None): - s, c = np.sin(a), np.cos(a) - return torch.tensor([[ c, 0, s, 0], - [ 0, 1, 0, 0], - [-s, 0, c, 0], - [ 0, 0, 0, 1]], dtype=torch.float32, device=device) - - -def rotate_z(a, device=None): - s, c = np.sin(a), np.cos(a) - return torch.tensor([[c, -s, 0, 0], - [s, c, 0, 0], - [0, 0, 1, 0], - [0, 0, 0, 1]], dtype=torch.float32, device=device) - -@torch.no_grad() -def batch_random_rotation_translation(b, t, device=None): - m = np.random.normal(size=[b, 3, 3]) - m[:, 1] = np.cross(m[:, 0], m[:, 2]) - m[:, 2] = np.cross(m[:, 0], m[:, 1]) - m = m / np.linalg.norm(m, axis=2, keepdims=True) - m = np.pad(m, [[0, 0], [0, 1], [0, 1]], mode='constant') - m[:, 3, 3] = 1.0 - m[:, :3, 3] = np.random.uniform(-t, t, size=[b, 3]) - return torch.tensor(m, dtype=torch.float32, device=device) - -@torch.no_grad() -def random_rotation_translation(t, device=None): - m = np.random.normal(size=[3, 3]) - m[1] = np.cross(m[0], m[2]) - m[2] = np.cross(m[0], m[1]) - m = m / np.linalg.norm(m, axis=1, keepdims=True) - m = np.pad(m, [[0, 1], [0, 1]], mode='constant') - m[3, 3] = 1.0 - m[:3, 3] = np.random.uniform(-t, t, size=[3]) - return torch.tensor(m, dtype=torch.float32, device=device) - - -@torch.no_grad() -def random_rotation(device=None): - m = np.random.normal(size=[3, 3]) - m[1] = np.cross(m[0], m[2]) - m[2] = np.cross(m[0], m[1]) - m = m / np.linalg.norm(m, axis=1, keepdims=True) - m = np.pad(m, [[0, 1], [0, 1]], mode='constant') - m[3, 3] = 1.0 - m[:3, 3] = np.array([0,0,0]).astype(np.float32) - return torch.tensor(m, dtype=torch.float32, device=device) - - -def dot(x: torch.Tensor, y: torch.Tensor) -> torch.Tensor: - return torch.sum(x*y, -1, keepdim=True) - - -def length(x: torch.Tensor, eps: float =1e-20) -> torch.Tensor: - return torch.sqrt(torch.clamp(dot(x,x), min=eps)) # Clamp to avoid nan gradients because grad(sqrt(0)) = NaN - - -def safe_normalize(x: torch.Tensor, eps: float =1e-20) -> torch.Tensor: - return x / length(x, eps) - - -def lr_schedule(iter, warmup_iter, scheduler_decay): - if iter < warmup_iter: - return iter / warmup_iter - return max(0.0, 10 ** ( - -(iter - warmup_iter) * scheduler_decay)) - - -def trans_depth(depth): - depth = depth[0].detach().cpu().numpy() - valid = depth > 0 - depth[valid] -= depth[valid].min() - depth[valid] = ((depth[valid] / depth[valid].max()) * 255) - return depth.astype('uint8') - - -def nan_to_num(input, nan=0.0, posinf=None, neginf=None, *, out=None): - assert isinstance(input, torch.Tensor) - if posinf is None: - posinf = torch.finfo(input.dtype).max - if neginf is None: - neginf = torch.finfo(input.dtype).min - assert nan == 0 - return torch.clamp(input.unsqueeze(0).nansum(0), min=neginf, max=posinf, out=out) - - -def load_item(filepath): - with open(filepath, 'r') as f: - items = [name.strip() for name in f.readlines()] - return set(items) - -def load_prompt(filepath): - uuid2prompt = {} - with open(filepath, 'r') as f: - for line in f.readlines(): - list_line = line.split(',') - uuid2prompt[list_line[0]] = ','.join(list_line[1:]).strip() - return uuid2prompt - -def resize_and_center_image(image_tensor, scale=0.95, c = 0, shift = 0, rgb=False, aug_shift = 0): - if scale == 1: - return image_tensor - B, C, H, W = image_tensor.shape - new_H, new_W = int(H * scale), int(W * scale) - resized_image = torch.nn.functional.interpolate(image_tensor, size=(new_H, new_W), mode='bilinear', align_corners=False).squeeze(0) - background = torch.zeros_like(image_tensor) + c - start_y, start_x = (H - new_H) // 2, (W - new_W) // 2 - if shift == 0: - background[:, :, start_y:start_y + new_H, start_x:start_x + new_W] = resized_image - else: - for i in range(B): - randx = random.randint(-shift, shift) - randy = random.randint(-shift, shift) - if rgb == True: - if i == 0 or i==2 or i==4: - randx = 0 - randy = 0 - background[i, :, start_y+randy:start_y + new_H+randy, start_x+randx:start_x + new_W+randx] = resized_image[i] - if aug_shift == 0: - return background - for i in range(B): - for j in range(C): - background[i, j, :, :] += (random.random() - 0.5)*2 * aug_shift / 255 - return background - -def get_tri(triview_color, dim = 1, blender=True, c = 0, scale=0.95, shift = 0, fix = False, rgb=False, aug_shift = 0): - # triview_color: [6,C,H,W] - # rgb is useful when shift is not 0 - triview_color = resize_and_center_image(triview_color, scale=scale, c = c, shift=shift,rgb=rgb, aug_shift = aug_shift) - if blender is False: - triview_color0 = torch.rot90(triview_color[0],k=2,dims=[1,2]) - triview_color1 = torch.rot90(triview_color[4],k=1,dims=[1,2]).flip(2).flip(1) - triview_color2 = torch.rot90(triview_color[5],k=1,dims=[1,2]).flip(2) - triview_color3 = torch.rot90(triview_color[3],k=2,dims=[1,2]).flip(2) - triview_color4 = torch.rot90(triview_color[1],k=3,dims=[1,2]).flip(1) - triview_color5 = torch.rot90(triview_color[2],k=3,dims=[1,2]).flip(1).flip(2) - else: - triview_color0 = torch.rot90(triview_color[2],k=2,dims=[1,2]) - triview_color1 = torch.rot90(triview_color[4],k=0,dims=[1,2]).flip(2).flip(1) - triview_color2 = torch.rot90(torch.rot90(triview_color[0],k=3,dims=[1,2]).flip(2), k=2,dims=[1,2]) - triview_color3 = torch.rot90(torch.rot90(triview_color[5],k=2,dims=[1,2]).flip(2), k=2,dims=[1,2]) - triview_color4 = torch.rot90(triview_color[1],k=2,dims=[1,2]).flip(1).flip(1).flip(2) - triview_color5 = torch.rot90(triview_color[3],k=1,dims=[1,2]).flip(1).flip(2) - if fix == True: - triview_color0[1] = triview_color0[1] * 0 - triview_color0[2] = triview_color0[2] * 0 - triview_color3[1] = triview_color3[1] * 0 - triview_color3[2] = triview_color3[2] * 0 - - triview_color1[0] = triview_color1[0] * 0 - triview_color1[1] = triview_color1[1] * 0 - triview_color4[0] = triview_color4[0] * 0 - triview_color4[1] = triview_color4[1] * 0 - - triview_color2[0] = triview_color2[0] * 0 - triview_color2[2] = triview_color2[2] * 0 - triview_color5[0] = triview_color5[0] * 0 - triview_color5[2] = triview_color5[2] * 0 - color_tensor1_gt = torch.cat((triview_color0, triview_color1, triview_color2), dim=2) - color_tensor2_gt = torch.cat((triview_color3, triview_color4, triview_color5), dim=2) - color_tensor_gt = torch.cat((color_tensor1_gt, color_tensor2_gt), dim = dim) - return color_tensor_gt - diff --git a/data/samples_tets/128_tets_0.npz b/data/samples_tets/128_tets_0.npz deleted file mode 100644 index 8684f02..0000000 Binary files a/data/samples_tets/128_tets_0.npz and /dev/null differ diff --git a/data/samples_tets/128_tets_1.npz b/data/samples_tets/128_tets_1.npz deleted file mode 100644 index e7f1c97..0000000 Binary files a/data/samples_tets/128_tets_1.npz and /dev/null differ diff --git a/data/samples_tets/128_tets_2.npz b/data/samples_tets/128_tets_2.npz deleted file mode 100644 index 07e5202..0000000 Binary files a/data/samples_tets/128_tets_2.npz and /dev/null differ diff --git a/data/samples_tets/128_tets_3.npz b/data/samples_tets/128_tets_3.npz deleted file mode 100644 index 3e0aa5e..0000000 Binary files a/data/samples_tets/128_tets_3.npz and /dev/null differ diff --git a/data/samples_tets/128_verts.npz b/data/samples_tets/128_verts.npz deleted file mode 100644 index ab071cc..0000000 Binary files a/data/samples_tets/128_verts.npz and /dev/null differ diff --git a/data/tets/128_tets.npz b/data/tets/128_tets.npz deleted file mode 100644 index 156b7fd..0000000 Binary files a/data/tets/128_tets.npz and /dev/null differ diff --git a/data/tets/32_tets.npz b/data/tets/32_tets.npz deleted file mode 100644 index cffeeba..0000000 Binary files a/data/tets/32_tets.npz and /dev/null differ diff --git a/data/tets/64_tets.npz b/data/tets/64_tets.npz deleted file mode 100644 index 8515e35..0000000 Binary files a/data/tets/64_tets.npz and /dev/null differ diff --git a/era3d/mvdiffusion/data/dataset.py b/era3d/mvdiffusion/data/dataset.py deleted file mode 100644 index f4e5ba7..0000000 --- a/era3d/mvdiffusion/data/dataset.py +++ /dev/null @@ -1,138 +0,0 @@ -# import decord -# decord.bridge.set_bridge('torch') - -from torch.utils.data import Dataset -from einops import rearrange -from typing import Literal, Tuple, Optional, Any -import glob -import os -import json -import random -import cv2 -import math -import numpy as np -import torch -from PIL import Image - - -class MVDiffusionDatasetV1(Dataset): - def __init__( - self, - root_dir: str, - num_views: int, - bg_color: Any, - img_wh: Tuple[int, int], - validation: bool = False, - num_validation_samples: int = 64, - num_samples: Optional[int] = None, - caption_path: Optional[str] = None, - elevation_range_deg: Tuple[float,float] = (-90, 90), - azimuth_range_deg: Tuple[float, float] = (0, 360), - ): - self.all_obj_paths = sorted(glob.glob(os.path.join(root_dir, "*/*"))) - if not validation: - self.all_obj_paths = self.all_obj_paths[:-num_validation_samples] - else: - self.all_obj_paths = self.all_obj_paths[-num_validation_samples:] - if num_samples is not None: - self.all_obj_paths = self.all_obj_paths[:num_samples] - self.all_obj_ids = [os.path.basename(path) for path in self.all_obj_paths] - self.num_views = num_views - self.bg_color = bg_color - self.img_wh = img_wh - - def get_bg_color(self): - if self.bg_color == 'white': - bg_color = np.array([1., 1., 1.], dtype=np.float32) - elif self.bg_color == 'black': - bg_color = np.array([0., 0., 0.], dtype=np.float32) - elif self.bg_color == 'gray': - bg_color = np.array([0.5, 0.5, 0.5], dtype=np.float32) - elif self.bg_color == 'random': - bg_color = np.random.rand(3) - elif isinstance(self.bg_color, float): - bg_color = np.array([self.bg_color] * 3, dtype=np.float32) - else: - raise NotImplementedError - return bg_color - - def load_image(self, img_path, bg_color, return_type='np'): - # not using cv2 as may load in uint16 format - # img = cv2.imread(img_path, cv2.IMREAD_UNCHANGED) # [0, 255] - # img = cv2.resize(img, self.img_wh, interpolation=cv2.INTER_CUBIC) - # pil always returns uint8 - img = np.array(Image.open(img_path).resize(self.img_wh)) - img = img.astype(np.float32) / 255. # [0, 1] - assert img.shape[-1] == 4 # RGBA - - alpha = img[...,3:4] - img = img[...,:3] * alpha + bg_color * (1 - alpha) - - if return_type == "np": - pass - elif return_type == "pt": - img = torch.from_numpy(img) - else: - raise NotImplementedError - - return img - - def __len__(self): - return len(self.all_obj_ids) - - def __getitem__(self, index): - obj_path = self.all_obj_paths[index] - obj_id = self.all_obj_ids[index] - with open(os.path.join(obj_path, 'meta.json')) as f: - meta = json.loads(f.read()) - - num_views_all = len(meta['locations']) - num_groups = num_views_all // self.num_views - - # random a set of 4 views - # the data is arranged in ascending order of the azimuth angle - group_ids = random.sample(range(num_groups), k=2) - cond_group_id, tgt_group_id = group_ids - cond_location = meta['locations'][cond_group_id * self.num_views + random.randint(0, self.num_views - 1)] - tgt_locations = meta['locations'][tgt_group_id * self.num_views : tgt_group_id * self.num_views + self.num_views] - # random an order - start_id = random.randint(0, self.num_views - 1) - tgt_locations = tgt_locations[start_id:] + tgt_locations[:start_id] - - cond_elevation = cond_location['elevation'] - cond_azimuth = cond_location['azimuth'] - tgt_elevations = [loc['elevation'] for loc in tgt_locations] - tgt_azimuths = [loc['azimuth'] for loc in tgt_locations] - - elevations = [ele - cond_elevation for ele in tgt_elevations] - azimuths = [(azi - cond_azimuth) % (math.pi * 2) for azi in tgt_azimuths] - elevations = torch.as_tensor(elevations).float() - azimuths = torch.as_tensor(azimuths).float() - elevations_cond = torch.as_tensor([cond_elevation] * self.num_views).float() - - bg_color = self.get_bg_color() - img_tensors_in = [ - self.load_image(os.path.join(obj_path, cond_location['frames'][0]['name']), bg_color, return_type='pt').permute(2, 0, 1) - ] * self.num_views - img_tensors_out = [] - for loc in tgt_locations: - img_path = os.path.join(obj_path, loc['frames'][0]['name']) - img_tensor = self.load_image(img_path, bg_color, return_type="pt").permute(2, 0, 1) - img_tensors_out.append(img_tensor) - img_tensors_in = torch.stack(img_tensors_in, dim=0).float() # (Nv, 3, H, W) - img_tensors_out = torch.stack(img_tensors_out, dim=0).float() # (Nv, 3, H, W) - - camera_embeddings = torch.stack([elevations_cond, elevations, azimuths], dim=-1) # (Nv, 3) - - return { - 'elevations_cond': elevations_cond, - 'elevations_cond_deg': torch.rad2deg(elevations_cond), - 'elevations': elevations, - 'azimuths': azimuths, - 'elevations_deg': torch.rad2deg(elevations), - 'azimuths_deg': torch.rad2deg(azimuths), - 'imgs_in': img_tensors_in, - 'imgs_out': img_tensors_out, - 'camera_embeddings': camera_embeddings - } - diff --git a/era3d/mvdiffusion/data/dataset_nc.py b/era3d/mvdiffusion/data/dataset_nc.py deleted file mode 100644 index c6a8158..0000000 --- a/era3d/mvdiffusion/data/dataset_nc.py +++ /dev/null @@ -1,178 +0,0 @@ -# import decord -# decord.bridge.set_bridge('torch') - -from torch.utils.data import Dataset -from einops import rearrange -from typing import Literal, Tuple, Optional, Any -import glob -import os -import json -import random -import cv2 -import math -import numpy as np -import torch -from PIL import Image -from .normal_utils import trans_normal, img2normal, normal2img - -""" -load normal and color images together -""" -class MVDiffusionDatasetV2(Dataset): - def __init__( - self, - root_dir: str, - num_views: int, - bg_color: Any, - img_wh: Tuple[int, int], - validation: bool = False, - num_validation_samples: int = 64, - num_samples: Optional[int] = None, - caption_path: Optional[str] = None, - elevation_range_deg: Tuple[float,float] = (-90, 90), - azimuth_range_deg: Tuple[float, float] = (0, 360), - ): - self.all_obj_paths = sorted(glob.glob(os.path.join(root_dir, "*/*"))) - if not validation: - self.all_obj_paths = self.all_obj_paths[:-num_validation_samples] - else: - self.all_obj_paths = self.all_obj_paths[-num_validation_samples:] - if num_samples is not None: - self.all_obj_paths = self.all_obj_paths[:num_samples] - self.all_obj_ids = [os.path.basename(path) for path in self.all_obj_paths] - self.num_views = num_views - self.bg_color = bg_color - self.img_wh = img_wh - - def get_bg_color(self): - if self.bg_color == 'white': - bg_color = np.array([1., 1., 1.], dtype=np.float32) - elif self.bg_color == 'black': - bg_color = np.array([0., 0., 0.], dtype=np.float32) - elif self.bg_color == 'gray': - bg_color = np.array([0.5, 0.5, 0.5], dtype=np.float32) - elif self.bg_color == 'random': - bg_color = np.random.rand(3) - elif isinstance(self.bg_color, float): - bg_color = np.array([self.bg_color] * 3, dtype=np.float32) - else: - raise NotImplementedError - return bg_color - - def load_image(self, img_path, bg_color, return_type='np'): - # not using cv2 as may load in uint16 format - # img = cv2.imread(img_path, cv2.IMREAD_UNCHANGED) # [0, 255] - # img = cv2.resize(img, self.img_wh, interpolation=cv2.INTER_CUBIC) - # pil always returns uint8 - img = np.array(Image.open(img_path).resize(self.img_wh)) - img = img.astype(np.float32) / 255. # [0, 1] - assert img.shape[-1] == 4 # RGBA - - alpha = img[...,3:4] - img = img[...,:3] * alpha + bg_color * (1 - alpha) - - if return_type == "np": - pass - elif return_type == "pt": - img = torch.from_numpy(img) - else: - raise NotImplementedError - - return img, alpha - - def load_normal(self, img_path, bg_color, alpha, RT_w2c=None, RT_w2c_cond=None, return_type='np'): - # not using cv2 as may load in uint16 format - # img = cv2.imread(img_path, cv2.IMREAD_UNCHANGED) # [0, 255] - # img = cv2.resize(img, self.img_wh, interpolation=cv2.INTER_CUBIC) - # pil always returns uint8 - normal = np.array(Image.open(img_path).resize(self.img_wh)) - - assert normal.shape[-1] == 3 # RGB - - normal = trans_normal(img2normal(normal), RT_w2c, RT_w2c_cond) - img = normal2img(normal) - - img = img.astype(np.float32) / 255. # [0, 1] - - img = img[...,:3] * alpha + bg_color * (1 - alpha) - - if return_type == "np": - pass - elif return_type == "pt": - img = torch.from_numpy(img) - else: - raise NotImplementedError - - return img - - def __len__(self): - return len(self.all_obj_ids) - - def __getitem__(self, index): - obj_path = self.all_obj_paths[index] - obj_id = self.all_obj_ids[index] - with open(os.path.join(obj_path, 'meta.json')) as f: - meta = json.loads(f.read()) - - num_views_all = len(meta['locations']) - num_groups = num_views_all // self.num_views - - # random a set of 4 views - # the data is arranged in ascending order of the azimuth angle - group_ids = random.sample(range(num_groups), k=2) - cond_group_id, tgt_group_id = group_ids - cond_location = meta['locations'][cond_group_id * self.num_views + random.randint(0, self.num_views - 1)] - tgt_locations = meta['locations'][tgt_group_id * self.num_views : tgt_group_id * self.num_views + self.num_views] - # random an order - start_id = random.randint(0, self.num_views - 1) - tgt_locations = tgt_locations[start_id:] + tgt_locations[:start_id] - - cond_elevation = cond_location['elevation'] - cond_azimuth = cond_location['azimuth'] - cond_c2w = cond_location['transform_matrix'] - cond_w2c = np.linalg.inv(cond_c2w) - tgt_elevations = [loc['elevation'] for loc in tgt_locations] - tgt_azimuths = [loc['azimuth'] for loc in tgt_locations] - tgt_c2ws = [loc['transform_matrix'] for loc in tgt_locations] - tgt_w2cs = [np.linalg.inv(loc['transform_matrix']) for loc in tgt_locations] - - elevations = [ele - cond_elevation for ele in tgt_elevations] - azimuths = [(azi - cond_azimuth) % (math.pi * 2) for azi in tgt_azimuths] - elevations = torch.as_tensor(elevations).float() - azimuths = torch.as_tensor(azimuths).float() - elevations_cond = torch.as_tensor([cond_elevation] * self.num_views).float() - - bg_color = self.get_bg_color() - img_tensors_in = [ - self.load_image(os.path.join(obj_path, cond_location['frames'][0]['name']), bg_color, return_type='pt')[0].permute(2, 0, 1) - ] * self.num_views - img_tensors_out = [] - normal_tensors_out = [] - for loc, tgt_w2c in zip(tgt_locations, tgt_w2cs): - img_path = os.path.join(obj_path, loc['frames'][0]['name']) - img_tensor, alpha = self.load_image(img_path, bg_color, return_type="pt") - img_tensor = img_tensor.permute(2, 0, 1) - img_tensors_out.append(img_tensor) - - normal_path = os.path.join(obj_path, loc['frames'][1]['name']) - normal_tensor = self.load_normal(normal_path, bg_color, alpha, RT_w2c=tgt_w2c, RT_w2c_cond=cond_w2c, return_type="pt").permute(2, 0, 1) - normal_tensors_out.append(normal_tensor) - img_tensors_in = torch.stack(img_tensors_in, dim=0).float() # (Nv, 3, H, W) - img_tensors_out = torch.stack(img_tensors_out, dim=0).float() # (Nv, 3, H, W) - normal_tensors_out = torch.stack(normal_tensors_out, dim=0).float() # (Nv, 3, H, W) - - camera_embeddings = torch.stack([elevations_cond, elevations, azimuths], dim=-1) # (Nv, 3) - - return { - 'elevations_cond': elevations_cond, - 'elevations_cond_deg': torch.rad2deg(elevations_cond), - 'elevations': elevations, - 'azimuths': azimuths, - 'elevations_deg': torch.rad2deg(elevations), - 'azimuths_deg': torch.rad2deg(azimuths), - 'imgs_in': img_tensors_in, - 'imgs_out': img_tensors_out, - 'normals_out': normal_tensors_out, - 'camera_embeddings': camera_embeddings - } - diff --git a/era3d/mvdiffusion/data/fixed_prompt_embeds_6view/clr_embeds.pt b/era3d/mvdiffusion/data/fixed_prompt_embeds_6view/clr_embeds.pt deleted file mode 100644 index 6d7331b..0000000 Binary files a/era3d/mvdiffusion/data/fixed_prompt_embeds_6view/clr_embeds.pt and /dev/null differ diff --git a/era3d/mvdiffusion/data/fixed_prompt_embeds_6view/normal_embeds.pt b/era3d/mvdiffusion/data/fixed_prompt_embeds_6view/normal_embeds.pt deleted file mode 100644 index a469093..0000000 Binary files a/era3d/mvdiffusion/data/fixed_prompt_embeds_6view/normal_embeds.pt and /dev/null differ diff --git a/era3d/mvdiffusion/data/generate_fixed_text_embeds.py b/era3d/mvdiffusion/data/generate_fixed_text_embeds.py deleted file mode 100644 index 66c3d3d..0000000 --- a/era3d/mvdiffusion/data/generate_fixed_text_embeds.py +++ /dev/null @@ -1,78 +0,0 @@ -from transformers import CLIPTokenizer, CLIPTextModel -import torch -import os - -root = '/mnt/data/lipeng/' -pretrained_model_name_or_path = 'stabilityai/stable-diffusion-2-1-unclip' - - -weight_dtype = torch.float16 -device = torch.device("cuda:0") -tokenizer = CLIPTokenizer.from_pretrained(pretrained_model_name_or_path, subfolder="tokenizer") -text_encoder = CLIPTextModel.from_pretrained(pretrained_model_name_or_path, subfolder='text_encoder') -text_encoder = text_encoder.to(device, dtype=weight_dtype) - -def generate_mv_embeds(): - path = './fixed_prompt_embeds_8view' - os.makedirs(path, exist_ok=True) - views = ["front", "front_right", "right", "back_right", "back", " back_left", "left", "front_left"] - # views = ["front", "front_right", "right", "back", "left", "front_left"] - # views = ["front", "right", "back", "left"] - clr_prompt = [f"a rendering image of 3D models, {view} view, color map." for view in views] - normal_prompt = [f"a rendering image of 3D models, {view} view, normal map." for view in views] - - - for id, text_prompt in enumerate([clr_prompt, normal_prompt]): - print(text_prompt) - text_inputs = tokenizer(text_prompt, padding="max_length", max_length=tokenizer.model_max_length, truncation=True, return_tensors="pt").to(device) - text_input_ids = text_inputs.input_ids - untruncated_ids = tokenizer(text_prompt, padding="longest", return_tensors="pt").input_ids - if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal( - text_input_ids, untruncated_ids): - removed_text = tokenizer.batch_decode( - untruncated_ids[:, tokenizer.model_max_length - 1 : -1] - ) - if hasattr(text_encoder.config, "use_attention_mask") and text_encoder.config.use_attention_mask: - attention_mask = text_inputs.attention_mask.to(device) - else: - attention_mask = None - prompt_embeds = text_encoder(text_input_ids.to(device), attention_mask=attention_mask,) - prompt_embeds = prompt_embeds[0].detach().cpu() - print(prompt_embeds.shape) - - - # print(prompt_embeds.dtype) - if id == 0: - torch.save(prompt_embeds, f'./{path}/clr_embeds.pt') - else: - torch.save(prompt_embeds, f'./{path}/normal_embeds.pt') - print('done') - - -def generate_img_embeds(): - path = './fixed_prompt_embeds_persp2ortho' - os.makedirs(path, exist_ok=True) - text_prompt = ["a orthogonal renderining image of 3D models"] - print(text_prompt) - text_inputs = tokenizer(text_prompt, padding="max_length", max_length=tokenizer.model_max_length, truncation=True, return_tensors="pt").to(device) - text_input_ids = text_inputs.input_ids - untruncated_ids = tokenizer(text_prompt, padding="longest", return_tensors="pt").input_ids - if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal( - text_input_ids, untruncated_ids): - removed_text = tokenizer.batch_decode( - untruncated_ids[:, tokenizer.model_max_length - 1 : -1] - ) - if hasattr(text_encoder.config, "use_attention_mask") and text_encoder.config.use_attention_mask: - attention_mask = text_inputs.attention_mask.to(device) - else: - attention_mask = None - prompt_embeds = text_encoder(text_input_ids.to(device), attention_mask=attention_mask,) - prompt_embeds = prompt_embeds[0].detach().cpu() - print(prompt_embeds.shape) - - # print(prompt_embeds.dtype) - - torch.save(prompt_embeds, f'./{path}/embeds.pt') - print('done') - -generate_img_embeds() \ No newline at end of file diff --git a/era3d/mvdiffusion/data/normal_utils.py b/era3d/mvdiffusion/data/normal_utils.py deleted file mode 100644 index 1a39008..0000000 --- a/era3d/mvdiffusion/data/normal_utils.py +++ /dev/null @@ -1,78 +0,0 @@ -import numpy as np -def deg2rad(deg): - return deg*np.pi/180 - -def inv_RT(RT): - # RT_h = np.concatenate([RT, np.array([[0,0,0,1]])], axis=0) - RT_inv = np.linalg.inv(RT) - - return RT_inv[:3, :] -def camNormal2worldNormal(rot_c2w, camNormal): - H,W,_ = camNormal.shape - normal_img = np.matmul(rot_c2w[None, :, :], camNormal.reshape(-1,3)[:, :, None]).reshape([H, W, 3]) - - return normal_img - -def worldNormal2camNormal(rot_w2c, normal_map_world): - H,W,_ = normal_map_world.shape - # normal_img = np.matmul(rot_w2c[None, :, :], worldNormal.reshape(-1,3)[:, :, None]).reshape([H, W, 3]) - - # faster version - # Reshape the normal map into a 2D array where each row represents a normal vector - normal_map_flat = normal_map_world.reshape(-1, 3) - - # Transform the normal vectors using the transformation matrix - normal_map_camera_flat = np.dot(normal_map_flat, rot_w2c.T) - - # Reshape the transformed normal map back to its original shape - normal_map_camera = normal_map_camera_flat.reshape(normal_map_world.shape) - - return normal_map_camera - -def trans_normal(normal, RT_w2c, RT_w2c_target): - - # normal_world = camNormal2worldNormal(np.linalg.inv(RT_w2c[:3,:3]), normal) - # normal_target_cam = worldNormal2camNormal(RT_w2c_target[:3,:3], normal_world) - - relative_RT = np.matmul(RT_w2c_target[:3,:3], np.linalg.inv(RT_w2c[:3,:3])) - return worldNormal2camNormal(relative_RT[:3,:3], normal) - -def trans_normal_complex(normal, RT_w2c, RT_w2c_rela_to_cond): - # camview -> world -> condview - normal_world = camNormal2worldNormal(np.linalg.inv(RT_w2c[:3,:3]), normal) - # debug_normal_world = normal2img(normal_world) - - # relative_RT = np.matmul(RT_w2c_rela_to_cond[:3,:3], np.linalg.inv(RT_w2c[:3,:3])) - normal_target_cam = worldNormal2camNormal(RT_w2c_rela_to_cond[:3,:3], normal_world) - # normal_condview = normal2img(normal_target_cam) - return normal_target_cam -def img2normal(img): - return (img/255.)*2-1 - -def normal2img(normal): - return np.uint8((normal*0.5+0.5)*255) - -def norm_normalize(normal, dim=-1): - - normal = normal/(np.linalg.norm(normal, axis=dim, keepdims=True)+1e-6) - - return normal - -def plot_grid_images(images, row, col, path=None): - import cv2 - """ - Args: - images: np.array [B, H, W, 3] - row: - col: - save_path: - - Returns: - - """ - images = images.detach().cpu().numpy() - assert row * col == images.shape[0] - images = np.vstack([np.hstack(images[r * col:(r + 1) * col]) for r in range(row)]) - if path: - cv2.imwrite(path, images[:,:,::-1] * 255) - return images \ No newline at end of file diff --git a/era3d/mvdiffusion/data/single_image_dataset.py b/era3d/mvdiffusion/data/single_image_dataset.py deleted file mode 100644 index 03c580a..0000000 --- a/era3d/mvdiffusion/data/single_image_dataset.py +++ /dev/null @@ -1,248 +0,0 @@ -from typing import Dict -import numpy as np -from omegaconf import DictConfig, ListConfig -import torch -from torch.utils.data import Dataset -from pathlib import Path -import json -from PIL import Image -from torchvision import transforms -from einops import rearrange -from typing import Literal, Tuple, Optional, Any -import cv2 -import random - -import json -import os, sys -import math - -from glob import glob - -import PIL.Image -from .normal_utils import trans_normal, normal2img, img2normal -import pdb - -import cv2 -import numpy as np - -def add_margin(pil_img, color=0, size=256): - width, height = pil_img.size - result = Image.new(pil_img.mode, (size, size), color) - result.paste(pil_img, ((size - width) // 2, (size - height) // 2)) - return result - -def scale_and_place_object(image, scale_factor): - assert np.shape(image)[-1]==4 # RGBA - - # Extract the alpha channel (transparency) and the object (RGB channels) - alpha_channel = image[:, :, 3] - - # Find the bounding box coordinates of the object - coords = cv2.findNonZero(alpha_channel) - x, y, width, height = cv2.boundingRect(coords) - - # Calculate the scale factor for resizing - original_height, original_width = image.shape[:2] - - if width > height: - size = width - original_size = original_width - else: - size = height - original_size = original_height - - scale_factor = min(scale_factor, size / (original_size+0.0)) - - new_size = scale_factor * original_size - scale_factor = new_size / size - - # Calculate the new size based on the scale factor - new_width = int(width * scale_factor) - new_height = int(height * scale_factor) - - center_x = original_width // 2 - center_y = original_height // 2 - - paste_x = center_x - (new_width // 2) - paste_y = center_y - (new_height // 2) - - # Resize the object (RGB channels) to the new size - rescaled_object = cv2.resize(image[y:y+height, x:x+width], (new_width, new_height)) - - # Create a new RGBA image with the resized image - new_image = np.zeros((original_height, original_width, 4), dtype=np.uint8) - - new_image[paste_y:paste_y + new_height, paste_x:paste_x + new_width] = rescaled_object - - return new_image - -class SingleImageDataset(Dataset): - def __init__(self, - num_views: int, - img_wh: Tuple[int, int], - bg_color: str, - crop_size: int = 224, - single_image: Optional[PIL.Image.Image] = None, - images_dir: Optional[str] = None, - num_validation_samples: Optional[int] = None, - filepaths: Optional[list] = None, - cond_type: Optional[str] = None, - prompt_embeds_path: Optional[str] = None, - gt_path: Optional[str] = None, - dtype: Optional[torch.dtype] = torch.float16, - ) -> None: - """Create a dataset from a folder of images. - If you pass in a root directory it will be searched for images - ending in ext (ext can be a list) - """ - self.images_dir = images_dir - self.num_views = num_views - self.img_wh = img_wh - self.crop_size = crop_size - self.bg_color = bg_color - self.cond_type = cond_type - self.gt_path = gt_path - self.dtype = dtype - - - if single_image is None: - if filepaths is None: - # Get a list of all files in the directory - file_list = os.listdir(self.images_dir) - else: - file_list = filepaths - - # Filter the files that end with .png or .jpg - self.file_list = [file for file in file_list if file.endswith(('.png', '.jpg', '.webp'))] - else: - self.file_list = None - - # load all images - self.all_images = [] - self.all_alphas = [] - bg_color = self.get_bg_color() - - if single_image is not None: - image, alpha = self.load_image(None, bg_color, return_type='pt', Imagefile=single_image) - self.all_images.append(image) - self.all_alphas.append(alpha) - else: - for file in self.file_list: - print(os.path.join(self.images_dir, file)) - image, alpha = self.load_image(os.path.join(self.images_dir, file), bg_color, return_type='pt') - self.all_images.append(image) - self.all_alphas.append(alpha) - - - self.all_images = self.all_images[:num_validation_samples] - self.all_alphas = self.all_alphas[:num_validation_samples] - - try: - self.normal_text_embeds = torch.load(f'{prompt_embeds_path}/normal_embeds.pt') - self.color_text_embeds = torch.load(f'{prompt_embeds_path}/clr_embeds.pt') # 4view - except: - self.color_text_embeds = torch.load(f'{prompt_embeds_path}/embeds.pt') - self.normal_text_embeds = None - - def __len__(self): - return len(self.all_images) - - def get_bg_color(self): - if self.bg_color == 'white': - bg_color = np.array([1., 1., 1.], dtype=np.float32) - elif self.bg_color == 'black': - bg_color = np.array([0., 0., 0.], dtype=np.float32) - elif self.bg_color == 'gray': - bg_color = np.array([0.5, 0.5, 0.5], dtype=np.float32) - elif self.bg_color == 'random': - bg_color = np.random.rand(3) - elif isinstance(self.bg_color, float): - bg_color = np.array([self.bg_color] * 3, dtype=np.float32) - else: - raise NotImplementedError - return bg_color - - - def load_image(self, img_path, bg_color, return_type='np', Imagefile=None): - # pil always returns uint8 - if Imagefile is None: - image_input = Image.open(img_path) - else: - image_input = Imagefile - image_size = self.img_wh[0] - - if self.crop_size!=-1: - alpha_np = np.asarray(image_input)[:, :, 3] - coords = np.stack(np.nonzero(alpha_np), 1)[:, (1, 0)] - min_x, min_y = np.min(coords, 0) - max_x, max_y = np.max(coords, 0) - ref_img_ = image_input.crop((min_x, min_y, max_x, max_y)) - h, w = ref_img_.height, ref_img_.width - scale = self.crop_size / max(h, w) - h_, w_ = int(scale * h), int(scale * w) - ref_img_ = ref_img_.resize((w_, h_)) - image_input = add_margin(ref_img_, size=image_size) - else: - image_input = add_margin(image_input, size=max(image_input.height, image_input.width)) - image_input = image_input.resize((image_size, image_size)) - - # img = scale_and_place_object(img, self.scale_ratio) - img = np.array(image_input) - img = img.astype(np.float32) / 255. # [0, 1] - assert img.shape[-1] == 4 # RGBA - - alpha = img[...,3:4] - img = img[...,:3] * alpha + bg_color * (1 - alpha) - - if return_type == "np": - pass - elif return_type == "pt": - img = torch.from_numpy(img) - alpha = torch.from_numpy(alpha) - else: - raise NotImplementedError - - return img, alpha - - - def __getitem__(self, index): - image = self.all_images[index%len(self.all_images)] - alpha = self.all_alphas[index%len(self.all_images)] - if self.file_list is not None: - filename = self.file_list[index%len(self.all_images)].replace(".png", "") - else: - filename = 'null' - img_tensors_in = [ - image.permute(2, 0, 1) - ] * self.num_views - - alpha_tensors_in = [ - alpha.permute(2, 0, 1) - ] * self.num_views - - img_tensors_in = torch.stack(img_tensors_in, dim=0).to(self.dtype) # (Nv, 3, H, W) - alpha_tensors_in = torch.stack(alpha_tensors_in, dim=0).to(self.dtype) # (Nv, 3, H, W) - - if self.gt_path is not None: - gt_image = self.gt_images[index%len(self.all_images)] - gt_alpha = self.gt_alpha[index%len(self.all_images)] - gt_img_tensors_in = [gt_image.permute(2, 0, 1) ] * self.num_views - gt_alpha_tensors_in = [gt_alpha.permute(2, 0, 1) ] * self.num_views - gt_img_tensors_in = torch.stack(gt_img_tensors_in, dim=0).to(self.dtype) - gt_alpha_tensors_in = torch.stack(gt_alpha_tensors_in, dim=0).to(self.dtype) - - normal_prompt_embeddings = self.normal_text_embeds if hasattr(self, 'normal_text_embeds') else None - color_prompt_embeddings = self.color_text_embeds if hasattr(self, 'color_text_embeds') else None - - out = { - 'imgs_in': img_tensors_in, - 'alphas': alpha_tensors_in, - 'normal_prompt_embeddings': normal_prompt_embeddings, - 'color_prompt_embeddings': color_prompt_embeddings, - 'filename': filename, - } - - return out - - - diff --git a/era3d/mvdiffusion/models/transformer_mv2d_image.py b/era3d/mvdiffusion/models/transformer_mv2d_image.py deleted file mode 100644 index 68d8b4d..0000000 --- a/era3d/mvdiffusion/models/transformer_mv2d_image.py +++ /dev/null @@ -1,1029 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -from dataclasses import dataclass -from typing import Any, Dict, Optional - -import torch -import torch.nn.functional as F -from torch import nn - -from diffusers.configuration_utils import ConfigMixin, register_to_config -from diffusers.models.embeddings import ImagePositionalEmbeddings -from diffusers.utils import BaseOutput, deprecate -from diffusers.utils.torch_utils import maybe_allow_in_graph -from diffusers.models.attention import FeedForward, AdaLayerNorm, AdaLayerNormZero, Attention -from diffusers.models.embeddings import PatchEmbed -from diffusers.models.lora import LoRACompatibleConv, LoRACompatibleLinear -from diffusers.models.modeling_utils import ModelMixin -from diffusers.utils.import_utils import is_xformers_available - -from einops import rearrange, repeat -import pdb -import random - - -if is_xformers_available(): - import xformers - import xformers.ops -else: - xformers = None - -def my_repeat(tensor, num_repeats): - """ - Repeat a tensor along a given dimension - """ - if len(tensor.shape) == 3: - return repeat(tensor, "b d c -> (b v) d c", v=num_repeats) - elif len(tensor.shape) == 4: - return repeat(tensor, "a b d c -> (a v) b d c", v=num_repeats) - - -@dataclass -class TransformerMV2DModelOutput(BaseOutput): - """ - The output of [`Transformer2DModel`]. - - Args: - sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` or `(batch size, num_vector_embeds - 1, num_latent_pixels)` if [`Transformer2DModel`] is discrete): - The hidden states output conditioned on the `encoder_hidden_states` input. If discrete, returns probability - distributions for the unnoised latent pixels. - """ - - sample: torch.FloatTensor - - -class TransformerMV2DModel(ModelMixin, ConfigMixin): - """ - A 2D Transformer model for image-like data. - - Parameters: - num_attention_heads (`int`, *optional*, defaults to 16): The number of heads to use for multi-head attention. - attention_head_dim (`int`, *optional*, defaults to 88): The number of channels in each head. - in_channels (`int`, *optional*): - The number of channels in the input and output (specify if the input is **continuous**). - num_layers (`int`, *optional*, defaults to 1): The number of layers of Transformer blocks to use. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - cross_attention_dim (`int`, *optional*): The number of `encoder_hidden_states` dimensions to use. - sample_size (`int`, *optional*): The width of the latent images (specify if the input is **discrete**). - This is fixed during training since it is used to learn a number of position embeddings. - num_vector_embeds (`int`, *optional*): - The number of classes of the vector embeddings of the latent pixels (specify if the input is **discrete**). - Includes the class for the masked latent pixel. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to use in feed-forward. - num_embeds_ada_norm ( `int`, *optional*): - The number of diffusion steps used during training. Pass if at least one of the norm_layers is - `AdaLayerNorm`. This is fixed during training since it is used to learn a number of embeddings that are - added to the hidden states. - - During inference, you can denoise for up to but not more steps than `num_embeds_ada_norm`. - attention_bias (`bool`, *optional*): - Configure if the `TransformerBlocks` attention should contain a bias parameter. - """ - - @register_to_config - def __init__( - self, - num_attention_heads: int = 16, - attention_head_dim: int = 88, - in_channels: Optional[int] = None, - out_channels: Optional[int] = None, - num_layers: int = 1, - dropout: float = 0.0, - norm_num_groups: int = 32, - cross_attention_dim: Optional[int] = None, - attention_bias: bool = False, - sample_size: Optional[int] = None, - num_vector_embeds: Optional[int] = None, - patch_size: Optional[int] = None, - activation_fn: str = "geglu", - num_embeds_ada_norm: Optional[int] = None, - use_linear_projection: bool = False, - only_cross_attention: bool = False, - upcast_attention: bool = False, - norm_type: str = "layer_norm", - norm_elementwise_affine: bool = True, - num_views: int = 1, - cd_attention_last: bool=False, - cd_attention_mid: bool=False, - multiview_attention: bool=True, - sparse_mv_attention: bool = False, - mvcd_attention: bool=False - ): - super().__init__() - self.use_linear_projection = use_linear_projection - self.num_attention_heads = num_attention_heads - self.attention_head_dim = attention_head_dim - inner_dim = num_attention_heads * attention_head_dim - - # 1. Transformer2DModel can process both standard continuous images of shape `(batch_size, num_channels, width, height)` as well as quantized image embeddings of shape `(batch_size, num_image_vectors)` - # Define whether input is continuous or discrete depending on configuration - self.is_input_continuous = (in_channels is not None) and (patch_size is None) - self.is_input_vectorized = num_vector_embeds is not None - self.is_input_patches = in_channels is not None and patch_size is not None - - if norm_type == "layer_norm" and num_embeds_ada_norm is not None: - deprecation_message = ( - f"The configuration file of this model: {self.__class__} is outdated. `norm_type` is either not set or" - " incorrectly set to `'layer_norm'`.Make sure to set `norm_type` to `'ada_norm'` in the config." - " Please make sure to update the config accordingly as leaving `norm_type` might led to incorrect" - " results in future versions. If you have downloaded this checkpoint from the Hugging Face Hub, it" - " would be very nice if you could open a Pull request for the `transformer/config.json` file" - ) - deprecate("norm_type!=num_embeds_ada_norm", "1.0.0", deprecation_message, standard_warn=False) - norm_type = "ada_norm" - - if self.is_input_continuous and self.is_input_vectorized: - raise ValueError( - f"Cannot define both `in_channels`: {in_channels} and `num_vector_embeds`: {num_vector_embeds}. Make" - " sure that either `in_channels` or `num_vector_embeds` is None." - ) - elif self.is_input_vectorized and self.is_input_patches: - raise ValueError( - f"Cannot define both `num_vector_embeds`: {num_vector_embeds} and `patch_size`: {patch_size}. Make" - " sure that either `num_vector_embeds` or `num_patches` is None." - ) - elif not self.is_input_continuous and not self.is_input_vectorized and not self.is_input_patches: - raise ValueError( - f"Has to define `in_channels`: {in_channels}, `num_vector_embeds`: {num_vector_embeds}, or patch_size:" - f" {patch_size}. Make sure that `in_channels`, `num_vector_embeds` or `num_patches` is not None." - ) - - # 2. Define input layers - if self.is_input_continuous: - self.in_channels = in_channels - - self.norm = torch.nn.GroupNorm(num_groups=norm_num_groups, num_channels=in_channels, eps=1e-6, affine=True) - if use_linear_projection: - self.proj_in = LoRACompatibleLinear(in_channels, inner_dim) - else: - self.proj_in = LoRACompatibleConv(in_channels, inner_dim, kernel_size=1, stride=1, padding=0) - elif self.is_input_vectorized: - assert sample_size is not None, "Transformer2DModel over discrete input must provide sample_size" - assert num_vector_embeds is not None, "Transformer2DModel over discrete input must provide num_embed" - - self.height = sample_size - self.width = sample_size - self.num_vector_embeds = num_vector_embeds - self.num_latent_pixels = self.height * self.width - - self.latent_image_embedding = ImagePositionalEmbeddings( - num_embed=num_vector_embeds, embed_dim=inner_dim, height=self.height, width=self.width - ) - elif self.is_input_patches: - assert sample_size is not None, "Transformer2DModel over patched input must provide sample_size" - - self.height = sample_size - self.width = sample_size - - self.patch_size = patch_size - self.pos_embed = PatchEmbed( - height=sample_size, - width=sample_size, - patch_size=patch_size, - in_channels=in_channels, - embed_dim=inner_dim, - ) - - # 3. Define transformers blocks - self.transformer_blocks = nn.ModuleList( - [ - BasicMVTransformerBlock( - inner_dim, - num_attention_heads, - attention_head_dim, - dropout=dropout, - cross_attention_dim=cross_attention_dim, - activation_fn=activation_fn, - num_embeds_ada_norm=num_embeds_ada_norm, - attention_bias=attention_bias, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - norm_type=norm_type, - norm_elementwise_affine=norm_elementwise_affine, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention - ) - for d in range(num_layers) - ] - ) - - # 4. Define output layers - self.out_channels = in_channels if out_channels is None else out_channels - if self.is_input_continuous: - # TODO: should use out_channels for continuous projections - if use_linear_projection: - self.proj_out = LoRACompatibleLinear(inner_dim, in_channels) - else: - self.proj_out = LoRACompatibleConv(inner_dim, in_channels, kernel_size=1, stride=1, padding=0) - elif self.is_input_vectorized: - self.norm_out = nn.LayerNorm(inner_dim) - self.out = nn.Linear(inner_dim, self.num_vector_embeds - 1) - elif self.is_input_patches: - self.norm_out = nn.LayerNorm(inner_dim, elementwise_affine=False, eps=1e-6) - self.proj_out_1 = nn.Linear(inner_dim, 2 * inner_dim) - self.proj_out_2 = nn.Linear(inner_dim, patch_size * patch_size * self.out_channels) - - def forward( - self, - hidden_states: torch.Tensor, - encoder_hidden_states: Optional[torch.Tensor] = None, - timestep: Optional[torch.LongTensor] = None, - class_labels: Optional[torch.LongTensor] = None, - cross_attention_kwargs: Dict[str, Any] = None, - attention_mask: Optional[torch.Tensor] = None, - encoder_attention_mask: Optional[torch.Tensor] = None, - return_dict: bool = True, - ): - """ - The [`Transformer2DModel`] forward method. - - Args: - hidden_states (`torch.LongTensor` of shape `(batch size, num latent pixels)` if discrete, `torch.FloatTensor` of shape `(batch size, channel, height, width)` if continuous): - Input `hidden_states`. - encoder_hidden_states ( `torch.FloatTensor` of shape `(batch size, sequence len, embed dims)`, *optional*): - Conditional embeddings for cross attention layer. If not given, cross-attention defaults to - self-attention. - timestep ( `torch.LongTensor`, *optional*): - Used to indicate denoising step. Optional timestep to be applied as an embedding in `AdaLayerNorm`. - class_labels ( `torch.LongTensor` of shape `(batch size, num classes)`, *optional*): - Used to indicate class labels conditioning. Optional class labels to be applied as an embedding in - `AdaLayerZeroNorm`. - encoder_attention_mask ( `torch.Tensor`, *optional*): - Cross-attention mask applied to `encoder_hidden_states`. Two formats supported: - - * Mask `(batch, sequence_length)` True = keep, False = discard. - * Bias `(batch, 1, sequence_length)` 0 = keep, -10000 = discard. - - If `ndim == 2`: will be interpreted as a mask, then converted into a bias consistent with the format - above. This bias will be added to the cross-attention scores. - return_dict (`bool`, *optional*, defaults to `True`): - Whether or not to return a [`~models.unet_2d_condition.UNet2DConditionOutput`] instead of a plain - tuple. - - Returns: - If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a - `tuple` where the first element is the sample tensor. - """ - # ensure attention_mask is a bias, and give it a singleton query_tokens dimension. - # we may have done this conversion already, e.g. if we came here via UNet2DConditionModel#forward. - # we can tell by counting dims; if ndim == 2: it's a mask rather than a bias. - # expects mask of shape: - # [batch, key_tokens] - # adds singleton query_tokens dimension: - # [batch, 1, key_tokens] - # this helps to broadcast it as a bias over attention scores, which will be in one of the following shapes: - # [batch, heads, query_tokens, key_tokens] (e.g. torch sdp attn) - # [batch * heads, query_tokens, key_tokens] (e.g. xformers or classic attn) - if attention_mask is not None and attention_mask.ndim == 2: - # assume that mask is expressed as: - # (1 = keep, 0 = discard) - # convert mask into a bias that can be added to attention scores: - # (keep = +0, discard = -10000.0) - attention_mask = (1 - attention_mask.to(hidden_states.dtype)) * -10000.0 - attention_mask = attention_mask.unsqueeze(1) - - # convert encoder_attention_mask to a bias the same way we do for attention_mask - if encoder_attention_mask is not None and encoder_attention_mask.ndim == 2: - encoder_attention_mask = (1 - encoder_attention_mask.to(hidden_states.dtype)) * -10000.0 - encoder_attention_mask = encoder_attention_mask.unsqueeze(1) - - # 1. Input - if self.is_input_continuous: - batch, _, height, width = hidden_states.shape - residual = hidden_states - - hidden_states = self.norm(hidden_states) - if not self.use_linear_projection: - hidden_states = self.proj_in(hidden_states) - inner_dim = hidden_states.shape[1] - hidden_states = hidden_states.permute(0, 2, 3, 1).reshape(batch, height * width, inner_dim) - else: - inner_dim = hidden_states.shape[1] - hidden_states = hidden_states.permute(0, 2, 3, 1).reshape(batch, height * width, inner_dim) - hidden_states = self.proj_in(hidden_states) - elif self.is_input_vectorized: - hidden_states = self.latent_image_embedding(hidden_states) - elif self.is_input_patches: - hidden_states = self.pos_embed(hidden_states) - - # 2. Blocks - for block in self.transformer_blocks: - hidden_states = block( - hidden_states, - attention_mask=attention_mask, - encoder_hidden_states=encoder_hidden_states, - encoder_attention_mask=encoder_attention_mask, - timestep=timestep, - cross_attention_kwargs=cross_attention_kwargs, - class_labels=class_labels, - ) - - # 3. Output - if self.is_input_continuous: - if not self.use_linear_projection: - hidden_states = hidden_states.reshape(batch, height, width, inner_dim).permute(0, 3, 1, 2).contiguous() - hidden_states = self.proj_out(hidden_states) - else: - hidden_states = self.proj_out(hidden_states) - hidden_states = hidden_states.reshape(batch, height, width, inner_dim).permute(0, 3, 1, 2).contiguous() - - output = hidden_states + residual - elif self.is_input_vectorized: - hidden_states = self.norm_out(hidden_states) - logits = self.out(hidden_states) - # (batch, self.num_vector_embeds - 1, self.num_latent_pixels) - logits = logits.permute(0, 2, 1) - - # log(p(x_0)) - output = F.log_softmax(logits.double(), dim=1).float() - elif self.is_input_patches: - # TODO: cleanup! - conditioning = self.transformer_blocks[0].norm1.emb( - timestep, class_labels, hidden_dtype=hidden_states.dtype - ) - shift, scale = self.proj_out_1(F.silu(conditioning)).chunk(2, dim=1) - hidden_states = self.norm_out(hidden_states) * (1 + scale[:, None]) + shift[:, None] - hidden_states = self.proj_out_2(hidden_states) - - # unpatchify - height = width = int(hidden_states.shape[1] ** 0.5) - hidden_states = hidden_states.reshape( - shape=(-1, height, width, self.patch_size, self.patch_size, self.out_channels) - ) - hidden_states = torch.einsum("nhwpqc->nchpwq", hidden_states) - output = hidden_states.reshape( - shape=(-1, self.out_channels, height * self.patch_size, width * self.patch_size) - ) - - if not return_dict: - return (output,) - - return TransformerMV2DModelOutput(sample=output) - - -@maybe_allow_in_graph -class BasicMVTransformerBlock(nn.Module): - r""" - A basic Transformer block. - - Parameters: - dim (`int`): The number of channels in the input and output. - num_attention_heads (`int`): The number of heads to use for multi-head attention. - attention_head_dim (`int`): The number of channels in each head. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - cross_attention_dim (`int`, *optional*): The size of the encoder_hidden_states vector for cross attention. - only_cross_attention (`bool`, *optional*): - Whether to use only cross-attention layers. In this case two cross attention layers are used. - double_self_attention (`bool`, *optional*): - Whether to use two self-attention layers. In this case no cross attention layers are used. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to be used in feed-forward. - num_embeds_ada_norm (: - obj: `int`, *optional*): The number of diffusion steps used during training. See `Transformer2DModel`. - attention_bias (: - obj: `bool`, *optional*, defaults to `False`): Configure if the attentions should contain a bias parameter. - """ - - def __init__( - self, - dim: int, - num_attention_heads: int, - attention_head_dim: int, - dropout=0.0, - cross_attention_dim: Optional[int] = None, - activation_fn: str = "geglu", - num_embeds_ada_norm: Optional[int] = None, - attention_bias: bool = False, - only_cross_attention: bool = False, - double_self_attention: bool = False, - upcast_attention: bool = False, - norm_elementwise_affine: bool = True, - norm_type: str = "layer_norm", - final_dropout: bool = False, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - mvcd_attention: bool = False - ): - super().__init__() - self.only_cross_attention = only_cross_attention - - self.use_ada_layer_norm_zero = (num_embeds_ada_norm is not None) and norm_type == "ada_norm_zero" - self.use_ada_layer_norm = (num_embeds_ada_norm is not None) and norm_type == "ada_norm" - - if norm_type in ("ada_norm", "ada_norm_zero") and num_embeds_ada_norm is None: - raise ValueError( - f"`norm_type` is set to {norm_type}, but `num_embeds_ada_norm` is not defined. Please make sure to" - f" define `num_embeds_ada_norm` if setting `norm_type` to {norm_type}." - ) - - # Define 3 blocks. Each block has its own normalization layer. - # 1. Self-Attn - if self.use_ada_layer_norm: - self.norm1 = AdaLayerNorm(dim, num_embeds_ada_norm) - elif self.use_ada_layer_norm_zero: - self.norm1 = AdaLayerNormZero(dim, num_embeds_ada_norm) - else: - self.norm1 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - - self.multiview_attention = multiview_attention - self.sparse_mv_attention = sparse_mv_attention - self.mvcd_attention = mvcd_attention - - self.attn1 = CustomAttention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - processor=MVAttnProcessor() - ) - - # 2. Cross-Attn - if cross_attention_dim is not None or double_self_attention: - # We currently only use AdaLayerNormZero for self attention where there will only be one attention block. - # I.e. the number of returned modulation chunks from AdaLayerZero would not make sense if returned during - # the second cross attention block. - self.norm2 = ( - AdaLayerNorm(dim, num_embeds_ada_norm) - if self.use_ada_layer_norm - else nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - ) - self.attn2 = Attention( - query_dim=dim, - cross_attention_dim=cross_attention_dim if not double_self_attention else None, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - upcast_attention=upcast_attention, - ) # is self-attn if encoder_hidden_states is none - else: - self.norm2 = None - self.attn2 = None - - # 3. Feed-forward - self.norm3 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - self.ff = FeedForward(dim, dropout=dropout, activation_fn=activation_fn, final_dropout=final_dropout) - - # let chunk size default to None - self._chunk_size = None - self._chunk_dim = 0 - - self.num_views = num_views - - self.cd_attention_last = cd_attention_last - - if self.cd_attention_last: - # Joint task -Attn - self.attn_joint_last = CustomJointAttention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - processor=JointAttnProcessor() - ) - nn.init.zeros_(self.attn_joint_last.to_out[0].weight.data) - self.norm_joint_last = AdaLayerNorm(dim, num_embeds_ada_norm) if self.use_ada_layer_norm else nn.LayerNorm(dim) - - - self.cd_attention_mid = cd_attention_mid - - if self.cd_attention_mid: - print("cross-domain attn in the middle") - # Joint task -Attn - self.attn_joint_mid = CustomJointAttention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - processor=JointAttnProcessor() - ) - nn.init.zeros_(self.attn_joint_mid.to_out[0].weight.data) - self.norm_joint_mid = AdaLayerNorm(dim, num_embeds_ada_norm) if self.use_ada_layer_norm else nn.LayerNorm(dim) - - def set_chunk_feed_forward(self, chunk_size: Optional[int], dim: int): - # Sets chunk feed-forward - self._chunk_size = chunk_size - self._chunk_dim = dim - - def forward( - self, - hidden_states: torch.FloatTensor, - attention_mask: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - timestep: Optional[torch.LongTensor] = None, - cross_attention_kwargs: Dict[str, Any] = None, - class_labels: Optional[torch.LongTensor] = None, - ): - assert attention_mask is None # not supported yet - # Notice that normalization is always applied before the real computation in the following blocks. - # 1. Self-Attention - if self.use_ada_layer_norm: - norm_hidden_states = self.norm1(hidden_states, timestep) - elif self.use_ada_layer_norm_zero: - norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1( - hidden_states, timestep, class_labels, hidden_dtype=hidden_states.dtype - ) - else: - norm_hidden_states = self.norm1(hidden_states) - - cross_attention_kwargs = cross_attention_kwargs if cross_attention_kwargs is not None else {} - - attn_output = self.attn1( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None, - attention_mask=attention_mask, - num_views=self.num_views, - multiview_attention=self.multiview_attention, - sparse_mv_attention=self.sparse_mv_attention, - mvcd_attention=self.mvcd_attention, - **cross_attention_kwargs, - ) - - - if self.use_ada_layer_norm_zero: - attn_output = gate_msa.unsqueeze(1) * attn_output - hidden_states = attn_output + hidden_states - - # joint attention twice - if self.cd_attention_mid: - norm_hidden_states = ( - self.norm_joint_mid(hidden_states, timestep) if self.use_ada_layer_norm else self.norm_joint_mid(hidden_states) - ) - hidden_states = self.attn_joint_mid(norm_hidden_states) + hidden_states - - # 2. Cross-Attention - if self.attn2 is not None: - norm_hidden_states = ( - self.norm2(hidden_states, timestep) if self.use_ada_layer_norm else self.norm2(hidden_states) - ) - - attn_output = self.attn2( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states, - attention_mask=encoder_attention_mask, - **cross_attention_kwargs, - ) - hidden_states = attn_output + hidden_states - - # 3. Feed-forward - norm_hidden_states = self.norm3(hidden_states) - - if self.use_ada_layer_norm_zero: - norm_hidden_states = norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None] - - if self._chunk_size is not None: - # "feed_forward_chunk_size" can be used to save memory - if norm_hidden_states.shape[self._chunk_dim] % self._chunk_size != 0: - raise ValueError( - f"`hidden_states` dimension to be chunked: {norm_hidden_states.shape[self._chunk_dim]} has to be divisible by chunk size: {self._chunk_size}. Make sure to set an appropriate `chunk_size` when calling `unet.enable_forward_chunking`." - ) - - num_chunks = norm_hidden_states.shape[self._chunk_dim] // self._chunk_size - ff_output = torch.cat( - [self.ff(hid_slice) for hid_slice in norm_hidden_states.chunk(num_chunks, dim=self._chunk_dim)], - dim=self._chunk_dim, - ) - else: - ff_output = self.ff(norm_hidden_states) - - if self.use_ada_layer_norm_zero: - ff_output = gate_mlp.unsqueeze(1) * ff_output - - hidden_states = ff_output + hidden_states - - if self.cd_attention_last: - norm_hidden_states = ( - self.norm_joint_last(hidden_states, timestep) if self.use_ada_layer_norm else self.norm_joint_last(hidden_states) - ) - hidden_states = self.attn_joint_last(norm_hidden_states) + hidden_states - - return hidden_states - - -class CustomAttention(Attention): - def set_use_memory_efficient_attention_xformers( - self, use_memory_efficient_attention_xformers: bool, *args, **kwargs - ): - processor = XFormersMVAttnProcessor() - self.set_processor(processor) - # print("using xformers attention processor") - - -class CustomJointAttention(Attention): - def set_use_memory_efficient_attention_xformers( - self, use_memory_efficient_attention_xformers: bool, *args, **kwargs - ): - processor = XFormersJointAttnProcessor() - self.set_processor(processor) - # print("using xformers attention processor") - -class MVAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_views=1, - multiview_attention=True - ): - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - # print('query', query.shape, 'key', key.shape, 'value', value.shape) - #([bx4, 1024, 320]) key torch.Size([bx4, 1024, 320]) value torch.Size([bx4, 1024, 320]) - # pdb.set_trace() - # multi-view self-attention - if multiview_attention: - if num_views <= 6: - # after use xformer; possible to train with 6 views - key = rearrange(key, "(b t) d c -> b (t d) c", t=num_views).repeat_interleave(num_views, dim=0) - value = rearrange(value, "(b t) d c -> b (t d) c", t=num_views).repeat_interleave(num_views, dim=0) - else:# apply sparse attention - pass - # print("use sparse attention") - # # seems that the sparse random sampling cause problems - # # don't use random sampling, just fix the indexes - # onekey = rearrange(key, "(b t) d c -> b t d c", t=num_views) - # onevalue = rearrange(value, "(b t) d c -> b t d c", t=num_views) - # allkeys = [] - # allvalues = [] - # all_indexes = { - # 0 : [0, 2, 3, 4], - # 1: [0, 1, 3, 5], - # 2: [0, 2, 3, 4], - # 3: [0, 2, 3, 4], - # 4: [0, 2, 3, 4], - # 5: [0, 1, 3, 5] - # } - # for jj in range(num_views): - # # valid_index = [x for x in range(0, num_views) if x!= jj] - # # indexes = random.sample(valid_index, 3) + [jj] + [0] - # indexes = all_indexes[jj] - - # indexes = torch.tensor(indexes).long().to(key.device) - # allkeys.append(onekey[:, indexes]) - # allvalues.append(onevalue[:, indexes]) - # keys = torch.stack(allkeys, dim=1) # checked, should be dim=1 - # values = torch.stack(allvalues, dim=1) - # key = rearrange(keys, 'b t f d c -> (b t) (f d) c') - # value = rearrange(values, 'b t f d c -> (b t) (f d) c') - - - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - attention_probs = attn.get_attention_scores(query, key, attention_mask) - hidden_states = torch.bmm(attention_probs, value) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - -class XFormersMVAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_views=1., - multiview_attention=True, - sparse_mv_attention=False, - mvcd_attention=False, - ): - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - # from yuancheng; here attention_mask is None - if attention_mask is not None: - # expand our mask's singleton query_tokens dimension: - # [batch*heads, 1, key_tokens] -> - # [batch*heads, query_tokens, key_tokens] - # so that it can be added as a bias onto the attention scores that xformers computes: - # [batch*heads, query_tokens, key_tokens] - # we do this explicitly because xformers doesn't broadcast the singleton dimension for us. - _, query_tokens, _ = hidden_states.shape - attention_mask = attention_mask.expand(-1, query_tokens, -1) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key_raw = attn.to_k(encoder_hidden_states) - value_raw = attn.to_v(encoder_hidden_states) - - # print('query', query.shape, 'key', key.shape, 'value', value.shape) - #([bx4, 1024, 320]) key torch.Size([bx4, 1024, 320]) value torch.Size([bx4, 1024, 320]) - # pdb.set_trace() - # multi-view self-attention - if multiview_attention: - if not sparse_mv_attention: - key = my_repeat(rearrange(key_raw, "(b t) d c -> b (t d) c", t=num_views), num_views) - value = my_repeat(rearrange(value_raw, "(b t) d c -> b (t d) c", t=num_views), num_views) - else: - key_front = my_repeat(rearrange(key_raw, "(b t) d c -> b t d c", t=num_views)[:, 0, :, :], num_views) # [(b t), d, c] - value_front = my_repeat(rearrange(value_raw, "(b t) d c -> b t d c", t=num_views)[:, 0, :, :], num_views) - key = torch.cat([key_front, key_raw], dim=1) # shape (b t) (2 d) c - value = torch.cat([value_front, value_raw], dim=1) - - if mvcd_attention: - # memory efficient, cross domain attention - key_0, key_1 = torch.chunk(key_raw, dim=0, chunks=2) # keys shape (b t) d c - value_0, value_1 = torch.chunk(value_raw, dim=0, chunks=2) - key_cross = torch.concat([key_1, key_0], dim=0) - value_cross = torch.concat([value_1, value_0], dim=0) # shape (b t) d c - key = torch.cat([key, key_cross], dim=1) - value = torch.cat([value, value_cross], dim=1) # shape (b t) (t+1 d) c - else: - # print("don't use multiview attention.") - key = key_raw - value = value_raw - - query = attn.head_to_batch_dim(query) - key = attn.head_to_batch_dim(key) - value = attn.head_to_batch_dim(value) - - hidden_states = xformers.ops.memory_efficient_attention(query, key, value, attn_bias=attention_mask) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - - -class XFormersJointAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_tasks=2 - ): - - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - # from yuancheng; here attention_mask is None - if attention_mask is not None: - # expand our mask's singleton query_tokens dimension: - # [batch*heads, 1, key_tokens] -> - # [batch*heads, query_tokens, key_tokens] - # so that it can be added as a bias onto the attention scores that xformers computes: - # [batch*heads, query_tokens, key_tokens] - # we do this explicitly because xformers doesn't broadcast the singleton dimension for us. - _, query_tokens, _ = hidden_states.shape - attention_mask = attention_mask.expand(-1, query_tokens, -1) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - assert num_tasks == 2 # only support two tasks now - - key_0, key_1 = torch.chunk(key, dim=0, chunks=2) # keys shape (b t) d c - value_0, value_1 = torch.chunk(value, dim=0, chunks=2) - key = torch.cat([key_0, key_1], dim=1) # (b t) 2d c - value = torch.cat([value_0, value_1], dim=1) # (b t) 2d c - key = torch.cat([key]*2, dim=0) # ( 2 b t) 2d c - value = torch.cat([value]*2, dim=0) # (2 b t) 2d c - - - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - hidden_states = xformers.ops.memory_efficient_attention(query, key, value, attn_bias=attention_mask) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - -class JointAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_tasks=2 - ): - - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - assert num_tasks == 2 # only support two tasks now - - key_0, key_1 = torch.chunk(key, dim=0, chunks=2) # keys shape (b t) d c - value_0, value_1 = torch.chunk(value, dim=0, chunks=2) - key = torch.cat([key_0, key_1], dim=1) # (b t) 2d c - value = torch.cat([value_0, value_1], dim=1) # (b t) 2d c - key = torch.cat([key]*2, dim=0) # ( 2 b t) 2d c - value = torch.cat([value]*2, dim=0) # (2 b t) 2d c - - - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - attention_probs = attn.get_attention_scores(query, key, attention_mask) - hidden_states = torch.bmm(attention_probs, value) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - diff --git a/era3d/mvdiffusion/models/transformer_mv2d_rowwise.py b/era3d/mvdiffusion/models/transformer_mv2d_rowwise.py deleted file mode 100644 index 5bf9643..0000000 --- a/era3d/mvdiffusion/models/transformer_mv2d_rowwise.py +++ /dev/null @@ -1,978 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -from dataclasses import dataclass -from typing import Any, Dict, Optional - -import torch -import torch.nn.functional as F -from torch import nn - -from diffusers.configuration_utils import ConfigMixin, register_to_config -from diffusers.models.embeddings import ImagePositionalEmbeddings -from diffusers.utils import BaseOutput, deprecate -from diffusers.utils.torch_utils import maybe_allow_in_graph -from diffusers.models.attention import FeedForward, AdaLayerNorm, AdaLayerNormZero, Attention -from diffusers.models.embeddings import PatchEmbed -from diffusers.models.lora import LoRACompatibleConv, LoRACompatibleLinear -from diffusers.models.modeling_utils import ModelMixin -from diffusers.utils.import_utils import is_xformers_available - -from einops import rearrange -import pdb -import random -import math - - -if is_xformers_available(): - import xformers - import xformers.ops -else: - xformers = None - - -@dataclass -class TransformerMV2DModelOutput(BaseOutput): - """ - The output of [`Transformer2DModel`]. - - Args: - sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` or `(batch size, num_vector_embeds - 1, num_latent_pixels)` if [`Transformer2DModel`] is discrete): - The hidden states output conditioned on the `encoder_hidden_states` input. If discrete, returns probability - distributions for the unnoised latent pixels. - """ - - sample: torch.FloatTensor - - -class TransformerMV2DModel(ModelMixin, ConfigMixin): - """ - A 2D Transformer model for image-like data. - - Parameters: - num_attention_heads (`int`, *optional*, defaults to 16): The number of heads to use for multi-head attention. - attention_head_dim (`int`, *optional*, defaults to 88): The number of channels in each head. - in_channels (`int`, *optional*): - The number of channels in the input and output (specify if the input is **continuous**). - num_layers (`int`, *optional*, defaults to 1): The number of layers of Transformer blocks to use. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - cross_attention_dim (`int`, *optional*): The number of `encoder_hidden_states` dimensions to use. - sample_size (`int`, *optional*): The width of the latent images (specify if the input is **discrete**). - This is fixed during training since it is used to learn a number of position embeddings. - num_vector_embeds (`int`, *optional*): - The number of classes of the vector embeddings of the latent pixels (specify if the input is **discrete**). - Includes the class for the masked latent pixel. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to use in feed-forward. - num_embeds_ada_norm ( `int`, *optional*): - The number of diffusion steps used during training. Pass if at least one of the norm_layers is - `AdaLayerNorm`. This is fixed during training since it is used to learn a number of embeddings that are - added to the hidden states. - - During inference, you can denoise for up to but not more steps than `num_embeds_ada_norm`. - attention_bias (`bool`, *optional*): - Configure if the `TransformerBlocks` attention should contain a bias parameter. - """ - - @register_to_config - def __init__( - self, - num_attention_heads: int = 16, - attention_head_dim: int = 88, - in_channels: Optional[int] = None, - out_channels: Optional[int] = None, - num_layers: int = 1, - dropout: float = 0.0, - norm_num_groups: int = 32, - cross_attention_dim: Optional[int] = None, - attention_bias: bool = False, - sample_size: Optional[int] = None, - num_vector_embeds: Optional[int] = None, - patch_size: Optional[int] = None, - activation_fn: str = "geglu", - num_embeds_ada_norm: Optional[int] = None, - use_linear_projection: bool = False, - only_cross_attention: bool = False, - upcast_attention: bool = False, - norm_type: str = "layer_norm", - norm_elementwise_affine: bool = True, - num_views: int = 1, - cd_attention_last: bool=False, - cd_attention_mid: bool=False, - multiview_attention: bool=True, - sparse_mv_attention: bool = True, # not used - mvcd_attention: bool=False - ): - super().__init__() - self.use_linear_projection = use_linear_projection - self.num_attention_heads = num_attention_heads - self.attention_head_dim = attention_head_dim - inner_dim = num_attention_heads * attention_head_dim - - # 1. Transformer2DModel can process both standard continuous images of shape `(batch_size, num_channels, width, height)` as well as quantized image embeddings of shape `(batch_size, num_image_vectors)` - # Define whether input is continuous or discrete depending on configuration - self.is_input_continuous = (in_channels is not None) and (patch_size is None) - self.is_input_vectorized = num_vector_embeds is not None - self.is_input_patches = in_channels is not None and patch_size is not None - - if norm_type == "layer_norm" and num_embeds_ada_norm is not None: - deprecation_message = ( - f"The configuration file of this model: {self.__class__} is outdated. `norm_type` is either not set or" - " incorrectly set to `'layer_norm'`.Make sure to set `norm_type` to `'ada_norm'` in the config." - " Please make sure to update the config accordingly as leaving `norm_type` might led to incorrect" - " results in future versions. If you have downloaded this checkpoint from the Hugging Face Hub, it" - " would be very nice if you could open a Pull request for the `transformer/config.json` file" - ) - deprecate("norm_type!=num_embeds_ada_norm", "1.0.0", deprecation_message, standard_warn=False) - norm_type = "ada_norm" - - if self.is_input_continuous and self.is_input_vectorized: - raise ValueError( - f"Cannot define both `in_channels`: {in_channels} and `num_vector_embeds`: {num_vector_embeds}. Make" - " sure that either `in_channels` or `num_vector_embeds` is None." - ) - elif self.is_input_vectorized and self.is_input_patches: - raise ValueError( - f"Cannot define both `num_vector_embeds`: {num_vector_embeds} and `patch_size`: {patch_size}. Make" - " sure that either `num_vector_embeds` or `num_patches` is None." - ) - elif not self.is_input_continuous and not self.is_input_vectorized and not self.is_input_patches: - raise ValueError( - f"Has to define `in_channels`: {in_channels}, `num_vector_embeds`: {num_vector_embeds}, or patch_size:" - f" {patch_size}. Make sure that `in_channels`, `num_vector_embeds` or `num_patches` is not None." - ) - - # 2. Define input layers - if self.is_input_continuous: - self.in_channels = in_channels - - self.norm = torch.nn.GroupNorm(num_groups=norm_num_groups, num_channels=in_channels, eps=1e-6, affine=True) - if use_linear_projection: - self.proj_in = LoRACompatibleLinear(in_channels, inner_dim) - else: - self.proj_in = LoRACompatibleConv(in_channels, inner_dim, kernel_size=1, stride=1, padding=0) - elif self.is_input_vectorized: - assert sample_size is not None, "Transformer2DModel over discrete input must provide sample_size" - assert num_vector_embeds is not None, "Transformer2DModel over discrete input must provide num_embed" - - self.height = sample_size - self.width = sample_size - self.num_vector_embeds = num_vector_embeds - self.num_latent_pixels = self.height * self.width - - self.latent_image_embedding = ImagePositionalEmbeddings( - num_embed=num_vector_embeds, embed_dim=inner_dim, height=self.height, width=self.width - ) - elif self.is_input_patches: - assert sample_size is not None, "Transformer2DModel over patched input must provide sample_size" - - self.height = sample_size - self.width = sample_size - - self.patch_size = patch_size - self.pos_embed = PatchEmbed( - height=sample_size, - width=sample_size, - patch_size=patch_size, - in_channels=in_channels, - embed_dim=inner_dim, - ) - - # 3. Define transformers blocks - self.transformer_blocks = nn.ModuleList( - [ - BasicMVTransformerBlock( - inner_dim, - num_attention_heads, - attention_head_dim, - dropout=dropout, - cross_attention_dim=cross_attention_dim, - activation_fn=activation_fn, - num_embeds_ada_norm=num_embeds_ada_norm, - attention_bias=attention_bias, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - norm_type=norm_type, - norm_elementwise_affine=norm_elementwise_affine, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - mvcd_attention=mvcd_attention - ) - for d in range(num_layers) - ] - ) - - # 4. Define output layers - self.out_channels = in_channels if out_channels is None else out_channels - if self.is_input_continuous: - # TODO: should use out_channels for continuous projections - if use_linear_projection: - self.proj_out = LoRACompatibleLinear(inner_dim, in_channels) - else: - self.proj_out = LoRACompatibleConv(inner_dim, in_channels, kernel_size=1, stride=1, padding=0) - elif self.is_input_vectorized: - self.norm_out = nn.LayerNorm(inner_dim) - self.out = nn.Linear(inner_dim, self.num_vector_embeds - 1) - elif self.is_input_patches: - self.norm_out = nn.LayerNorm(inner_dim, elementwise_affine=False, eps=1e-6) - self.proj_out_1 = nn.Linear(inner_dim, 2 * inner_dim) - self.proj_out_2 = nn.Linear(inner_dim, patch_size * patch_size * self.out_channels) - - def forward( - self, - hidden_states: torch.Tensor, - encoder_hidden_states: Optional[torch.Tensor] = None, - timestep: Optional[torch.LongTensor] = None, - class_labels: Optional[torch.LongTensor] = None, - cross_attention_kwargs: Dict[str, Any] = None, - attention_mask: Optional[torch.Tensor] = None, - encoder_attention_mask: Optional[torch.Tensor] = None, - return_dict: bool = True, - ): - """ - The [`Transformer2DModel`] forward method. - - Args: - hidden_states (`torch.LongTensor` of shape `(batch size, num latent pixels)` if discrete, `torch.FloatTensor` of shape `(batch size, channel, height, width)` if continuous): - Input `hidden_states`. - encoder_hidden_states ( `torch.FloatTensor` of shape `(batch size, sequence len, embed dims)`, *optional*): - Conditional embeddings for cross attention layer. If not given, cross-attention defaults to - self-attention. - timestep ( `torch.LongTensor`, *optional*): - Used to indicate denoising step. Optional timestep to be applied as an embedding in `AdaLayerNorm`. - class_labels ( `torch.LongTensor` of shape `(batch size, num classes)`, *optional*): - Used to indicate class labels conditioning. Optional class labels to be applied as an embedding in - `AdaLayerZeroNorm`. - encoder_attention_mask ( `torch.Tensor`, *optional*): - Cross-attention mask applied to `encoder_hidden_states`. Two formats supported: - - * Mask `(batch, sequence_length)` True = keep, False = discard. - * Bias `(batch, 1, sequence_length)` 0 = keep, -10000 = discard. - - If `ndim == 2`: will be interpreted as a mask, then converted into a bias consistent with the format - above. This bias will be added to the cross-attention scores. - return_dict (`bool`, *optional*, defaults to `True`): - Whether or not to return a [`~models.unet_2d_condition.UNet2DConditionOutput`] instead of a plain - tuple. - - Returns: - If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a - `tuple` where the first element is the sample tensor. - """ - # ensure attention_mask is a bias, and give it a singleton query_tokens dimension. - # we may have done this conversion already, e.g. if we came here via UNet2DConditionModel#forward. - # we can tell by counting dims; if ndim == 2: it's a mask rather than a bias. - # expects mask of shape: - # [batch, key_tokens] - # adds singleton query_tokens dimension: - # [batch, 1, key_tokens] - # this helps to broadcast it as a bias over attention scores, which will be in one of the following shapes: - # [batch, heads, query_tokens, key_tokens] (e.g. torch sdp attn) - # [batch * heads, query_tokens, key_tokens] (e.g. xformers or classic attn) - if attention_mask is not None and attention_mask.ndim == 2: - # assume that mask is expressed as: - # (1 = keep, 0 = discard) - # convert mask into a bias that can be added to attention scores: - # (keep = +0, discard = -10000.0) - attention_mask = (1 - attention_mask.to(hidden_states.dtype)) * -10000.0 - attention_mask = attention_mask.unsqueeze(1) - - # convert encoder_attention_mask to a bias the same way we do for attention_mask - if encoder_attention_mask is not None and encoder_attention_mask.ndim == 2: - encoder_attention_mask = (1 - encoder_attention_mask.to(hidden_states.dtype)) * -10000.0 - encoder_attention_mask = encoder_attention_mask.unsqueeze(1) - - # 1. Input - if self.is_input_continuous: - batch, _, height, width = hidden_states.shape - residual = hidden_states - - hidden_states = self.norm(hidden_states) - if not self.use_linear_projection: - hidden_states = self.proj_in(hidden_states) - inner_dim = hidden_states.shape[1] - hidden_states = hidden_states.permute(0, 2, 3, 1).reshape(batch, height * width, inner_dim) - else: - inner_dim = hidden_states.shape[1] - hidden_states = hidden_states.permute(0, 2, 3, 1).reshape(batch, height * width, inner_dim) - hidden_states = self.proj_in(hidden_states) - elif self.is_input_vectorized: - hidden_states = self.latent_image_embedding(hidden_states) - elif self.is_input_patches: - hidden_states = self.pos_embed(hidden_states) - - # 2. Blocks - for block in self.transformer_blocks: - hidden_states = block( - hidden_states, - attention_mask=attention_mask, - encoder_hidden_states=encoder_hidden_states, - encoder_attention_mask=encoder_attention_mask, - timestep=timestep, - cross_attention_kwargs=cross_attention_kwargs, - class_labels=class_labels, - ) - - # 3. Output - if self.is_input_continuous: - if not self.use_linear_projection: - hidden_states = hidden_states.reshape(batch, height, width, inner_dim).permute(0, 3, 1, 2).contiguous() - hidden_states = self.proj_out(hidden_states) - else: - hidden_states = self.proj_out(hidden_states) - hidden_states = hidden_states.reshape(batch, height, width, inner_dim).permute(0, 3, 1, 2).contiguous() - - output = hidden_states + residual - elif self.is_input_vectorized: - hidden_states = self.norm_out(hidden_states) - logits = self.out(hidden_states) - # (batch, self.num_vector_embeds - 1, self.num_latent_pixels) - logits = logits.permute(0, 2, 1) - - # log(p(x_0)) - output = F.log_softmax(logits.double(), dim=1).float() - elif self.is_input_patches: - # TODO: cleanup! - conditioning = self.transformer_blocks[0].norm1.emb( - timestep, class_labels, hidden_dtype=hidden_states.dtype - ) - shift, scale = self.proj_out_1(F.silu(conditioning)).chunk(2, dim=1) - hidden_states = self.norm_out(hidden_states) * (1 + scale[:, None]) + shift[:, None] - hidden_states = self.proj_out_2(hidden_states) - - # unpatchify - height = width = int(hidden_states.shape[1] ** 0.5) - hidden_states = hidden_states.reshape( - shape=(-1, height, width, self.patch_size, self.patch_size, self.out_channels) - ) - hidden_states = torch.einsum("nhwpqc->nchpwq", hidden_states) - output = hidden_states.reshape( - shape=(-1, self.out_channels, height * self.patch_size, width * self.patch_size) - ) - - if not return_dict: - return (output,) - - return TransformerMV2DModelOutput(sample=output) - - -@maybe_allow_in_graph -class BasicMVTransformerBlock(nn.Module): - r""" - A basic Transformer block. - - Parameters: - dim (`int`): The number of channels in the input and output. - num_attention_heads (`int`): The number of heads to use for multi-head attention. - attention_head_dim (`int`): The number of channels in each head. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - cross_attention_dim (`int`, *optional*): The size of the encoder_hidden_states vector for cross attention. - only_cross_attention (`bool`, *optional*): - Whether to use only cross-attention layers. In this case two cross attention layers are used. - double_self_attention (`bool`, *optional*): - Whether to use two self-attention layers. In this case no cross attention layers are used. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to be used in feed-forward. - num_embeds_ada_norm (: - obj: `int`, *optional*): The number of diffusion steps used during training. See `Transformer2DModel`. - attention_bias (: - obj: `bool`, *optional*, defaults to `False`): Configure if the attentions should contain a bias parameter. - """ - - def __init__( - self, - dim: int, - num_attention_heads: int, - attention_head_dim: int, - dropout=0.0, - cross_attention_dim: Optional[int] = None, - activation_fn: str = "geglu", - num_embeds_ada_norm: Optional[int] = None, - attention_bias: bool = False, - only_cross_attention: bool = False, - double_self_attention: bool = False, - upcast_attention: bool = False, - norm_elementwise_affine: bool = True, - norm_type: str = "layer_norm", - final_dropout: bool = False, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - mvcd_attention: bool = False, - rowwise_attention: bool = True - ): - super().__init__() - self.only_cross_attention = only_cross_attention - - self.use_ada_layer_norm_zero = (num_embeds_ada_norm is not None) and norm_type == "ada_norm_zero" - self.use_ada_layer_norm = (num_embeds_ada_norm is not None) and norm_type == "ada_norm" - - if norm_type in ("ada_norm", "ada_norm_zero") and num_embeds_ada_norm is None: - raise ValueError( - f"`norm_type` is set to {norm_type}, but `num_embeds_ada_norm` is not defined. Please make sure to" - f" define `num_embeds_ada_norm` if setting `norm_type` to {norm_type}." - ) - - # Define 3 blocks. Each block has its own normalization layer. - # 1. Self-Attn - if self.use_ada_layer_norm: - self.norm1 = AdaLayerNorm(dim, num_embeds_ada_norm) - elif self.use_ada_layer_norm_zero: - self.norm1 = AdaLayerNormZero(dim, num_embeds_ada_norm) - else: - self.norm1 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - - self.multiview_attention = multiview_attention - self.mvcd_attention = mvcd_attention - self.rowwise_attention = multiview_attention and rowwise_attention - - # rowwise multiview attention - - print('INFO: using row wise attention...') - - self.attn1 = CustomAttention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - processor=MVAttnProcessor() - ) - - # 2. Cross-Attn - if cross_attention_dim is not None or double_self_attention: - # We currently only use AdaLayerNormZero for self attention where there will only be one attention block. - # I.e. the number of returned modulation chunks from AdaLayerZero would not make sense if returned during - # the second cross attention block. - self.norm2 = ( - AdaLayerNorm(dim, num_embeds_ada_norm) - if self.use_ada_layer_norm - else nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - ) - self.attn2 = Attention( - query_dim=dim, - cross_attention_dim=cross_attention_dim if not double_self_attention else None, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - upcast_attention=upcast_attention, - ) # is self-attn if encoder_hidden_states is none - else: - self.norm2 = None - self.attn2 = None - - # 3. Feed-forward - self.norm3 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - self.ff = FeedForward(dim, dropout=dropout, activation_fn=activation_fn, final_dropout=final_dropout) - - # let chunk size default to None - self._chunk_size = None - self._chunk_dim = 0 - - self.num_views = num_views - - self.cd_attention_last = cd_attention_last - - if self.cd_attention_last: - # Joint task -Attn - self.attn_joint = CustomJointAttention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - processor=JointAttnProcessor() - ) - nn.init.zeros_(self.attn_joint.to_out[0].weight.data) - self.norm_joint = AdaLayerNorm(dim, num_embeds_ada_norm) if self.use_ada_layer_norm else nn.LayerNorm(dim) - - - self.cd_attention_mid = cd_attention_mid - - if self.cd_attention_mid: - print("joint twice") - # Joint task -Attn - self.attn_joint_twice = CustomJointAttention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - processor=JointAttnProcessor() - ) - nn.init.zeros_(self.attn_joint_twice.to_out[0].weight.data) - self.norm_joint_twice = AdaLayerNorm(dim, num_embeds_ada_norm) if self.use_ada_layer_norm else nn.LayerNorm(dim) - - def set_chunk_feed_forward(self, chunk_size: Optional[int], dim: int): - # Sets chunk feed-forward - self._chunk_size = chunk_size - self._chunk_dim = dim - - def forward( - self, - hidden_states: torch.FloatTensor, - attention_mask: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - timestep: Optional[torch.LongTensor] = None, - cross_attention_kwargs: Dict[str, Any] = None, - class_labels: Optional[torch.LongTensor] = None, - ): - assert attention_mask is None # not supported yet - # Notice that normalization is always applied before the real computation in the following blocks. - # 1. Self-Attention - if self.use_ada_layer_norm: - norm_hidden_states = self.norm1(hidden_states, timestep) - elif self.use_ada_layer_norm_zero: - norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1( - hidden_states, timestep, class_labels, hidden_dtype=hidden_states.dtype - ) - else: - norm_hidden_states = self.norm1(hidden_states) - - cross_attention_kwargs = cross_attention_kwargs if cross_attention_kwargs is not None else {} - - attn_output = self.attn1( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None, - attention_mask=attention_mask, - multiview_attention=self.multiview_attention, - mvcd_attention=self.mvcd_attention, - num_views=self.num_views, - **cross_attention_kwargs, - ) - - if self.use_ada_layer_norm_zero: - attn_output = gate_msa.unsqueeze(1) * attn_output - hidden_states = attn_output + hidden_states - - # joint attention twice - if self.cd_attention_mid: - norm_hidden_states = ( - self.norm_joint_twice(hidden_states, timestep) if self.use_ada_layer_norm else self.norm_joint_twice(hidden_states) - ) - hidden_states = self.attn_joint_twice(norm_hidden_states) + hidden_states - - # 2. Cross-Attention - if self.attn2 is not None: - norm_hidden_states = ( - self.norm2(hidden_states, timestep) if self.use_ada_layer_norm else self.norm2(hidden_states) - ) - - attn_output = self.attn2( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states, - attention_mask=encoder_attention_mask, - **cross_attention_kwargs, - ) - hidden_states = attn_output + hidden_states - - # 3. Feed-forward - norm_hidden_states = self.norm3(hidden_states) - - if self.use_ada_layer_norm_zero: - norm_hidden_states = norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None] - - if self._chunk_size is not None: - # "feed_forward_chunk_size" can be used to save memory - if norm_hidden_states.shape[self._chunk_dim] % self._chunk_size != 0: - raise ValueError( - f"`hidden_states` dimension to be chunked: {norm_hidden_states.shape[self._chunk_dim]} has to be divisible by chunk size: {self._chunk_size}. Make sure to set an appropriate `chunk_size` when calling `unet.enable_forward_chunking`." - ) - - num_chunks = norm_hidden_states.shape[self._chunk_dim] // self._chunk_size - ff_output = torch.cat( - [self.ff(hid_slice) for hid_slice in norm_hidden_states.chunk(num_chunks, dim=self._chunk_dim)], - dim=self._chunk_dim, - ) - else: - ff_output = self.ff(norm_hidden_states) - - if self.use_ada_layer_norm_zero: - ff_output = gate_mlp.unsqueeze(1) * ff_output - - hidden_states = ff_output + hidden_states - - if self.cd_attention_last: - norm_hidden_states = ( - self.norm_joint(hidden_states, timestep) if self.use_ada_layer_norm else self.norm_joint(hidden_states) - ) - hidden_states = self.attn_joint(norm_hidden_states) + hidden_states - - return hidden_states - - -class CustomAttention(Attention): - def set_use_memory_efficient_attention_xformers( - self, use_memory_efficient_attention_xformers: bool, *args, **kwargs - ): - processor = XFormersMVAttnProcessor() - self.set_processor(processor) - # print("using xformers attention processor") - - -class CustomJointAttention(Attention): - def set_use_memory_efficient_attention_xformers( - self, use_memory_efficient_attention_xformers: bool, *args, **kwargs - ): - processor = XFormersJointAttnProcessor() - self.set_processor(processor) - # print("using xformers attention processor") - -class MVAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_views=1, - multiview_attention=True - ): - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - height = int(math.sqrt(sequence_length)) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - # print('query', query.shape, 'key', key.shape, 'value', value.shape) - #([bx4, 1024, 320]) key torch.Size([bx4, 1024, 320]) value torch.Size([bx4, 1024, 320]) - # pdb.set_trace() - # multi-view self-attention - key = rearrange(key, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) - value = rearrange(value, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) - query = rearrange(query, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) # torch.Size([192, 384, 320]) - - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - attention_probs = attn.get_attention_scores(query, key, attention_mask) - hidden_states = torch.bmm(attention_probs, value) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - hidden_states = rearrange(hidden_states, "(b h) (v w) c -> (b v) (h w) c", v=num_views, h=height) - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - -class XFormersMVAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_views=1, - multiview_attention=True, - mvcd_attention=False, - ): - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - height = int(math.sqrt(sequence_length)) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - # from yuancheng; here attention_mask is None - if attention_mask is not None: - # expand our mask's singleton query_tokens dimension: - # [batch*heads, 1, key_tokens] -> - # [batch*heads, query_tokens, key_tokens] - # so that it can be added as a bias onto the attention scores that xformers computes: - # [batch*heads, query_tokens, key_tokens] - # we do this explicitly because xformers doesn't broadcast the singleton dimension for us. - _, query_tokens, _ = hidden_states.shape - attention_mask = attention_mask.expand(-1, query_tokens, -1) - - if attn.group_norm is not None: - print('Warning: using group norm, pay attention to use it in row-wise attention') - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key_raw = attn.to_k(encoder_hidden_states) - value_raw = attn.to_v(encoder_hidden_states) - - # print('query', query.shape, 'key', key.shape, 'value', value.shape) - # pdb.set_trace() - - key = rearrange(key_raw, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) - value = rearrange(value_raw, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) - query = rearrange(query, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) # torch.Size([192, 384, 320]) - if mvcd_attention: - # memory efficient, cross domain attention - key_0, key_1 = torch.chunk(key_raw, dim=0, chunks=2) # keys shape (b t) d c - value_0, value_1 = torch.chunk(value_raw, dim=0, chunks=2) - key_cross = torch.concat([key_1, key_0], dim=0) - value_cross = torch.concat([value_1, value_0], dim=0) # shape (b t) d c - key = torch.cat([key, key_cross], dim=1) - value = torch.cat([value, value_cross], dim=1) # shape (b t) (t+1 d) c - - - query = attn.head_to_batch_dim(query) # torch.Size([960, 384, 64]) - key = attn.head_to_batch_dim(key) - value = attn.head_to_batch_dim(value) - - hidden_states = xformers.ops.memory_efficient_attention(query, key, value, attn_bias=attention_mask) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - # print(hidden_states.shape) - hidden_states = rearrange(hidden_states, "(b h) (v w) c -> (b v) (h w) c", v=num_views, h=height) - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - -class XFormersJointAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_tasks=2 - ): - - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - # from yuancheng; here attention_mask is None - if attention_mask is not None: - # expand our mask's singleton query_tokens dimension: - # [batch*heads, 1, key_tokens] -> - # [batch*heads, query_tokens, key_tokens] - # so that it can be added as a bias onto the attention scores that xformers computes: - # [batch*heads, query_tokens, key_tokens] - # we do this explicitly because xformers doesn't broadcast the singleton dimension for us. - _, query_tokens, _ = hidden_states.shape - attention_mask = attention_mask.expand(-1, query_tokens, -1) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - assert num_tasks == 2 # only support two tasks now - - key_0, key_1 = torch.chunk(key, dim=0, chunks=2) # keys shape (b t) d c - value_0, value_1 = torch.chunk(value, dim=0, chunks=2) - key = torch.cat([key_0, key_1], dim=1) # (b t) 2d c - value = torch.cat([value_0, value_1], dim=1) # (b t) 2d c - key = torch.cat([key]*2, dim=0) # ( 2 b t) 2d c - value = torch.cat([value]*2, dim=0) # (2 b t) 2d c - - - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - hidden_states = xformers.ops.memory_efficient_attention(query, key, value, attn_bias=attention_mask) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - -class JointAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_tasks=2 - ): - - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - assert num_tasks == 2 # only support two tasks now - - key_0, key_1 = torch.chunk(key, dim=0, chunks=2) # keys shape (b t) d c - value_0, value_1 = torch.chunk(value, dim=0, chunks=2) - key = torch.cat([key_0, key_1], dim=1) # (b t) 2d c - value = torch.cat([value_0, value_1], dim=1) # (b t) 2d c - key = torch.cat([key]*2, dim=0) # ( 2 b t) 2d c - value = torch.cat([value]*2, dim=0) # (2 b t) 2d c - - - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - attention_probs = attn.get_attention_scores(query, key, attention_mask) - hidden_states = torch.bmm(attention_probs, value) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states \ No newline at end of file diff --git a/era3d/mvdiffusion/models/transformer_mv2d_self_rowwise.py b/era3d/mvdiffusion/models/transformer_mv2d_self_rowwise.py deleted file mode 100644 index 4eca703..0000000 --- a/era3d/mvdiffusion/models/transformer_mv2d_self_rowwise.py +++ /dev/null @@ -1,1038 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -from dataclasses import dataclass -from typing import Any, Dict, Optional - -import torch -import torch.nn.functional as F -from torch import nn - -from diffusers.configuration_utils import ConfigMixin, register_to_config -from diffusers.models.embeddings import ImagePositionalEmbeddings -from diffusers.utils import BaseOutput, deprecate -from diffusers.utils.torch_utils import maybe_allow_in_graph -from diffusers.models.attention import FeedForward, AdaLayerNorm, AdaLayerNormZero, Attention -from diffusers.models.embeddings import PatchEmbed -from diffusers.models.lora import LoRACompatibleConv, LoRACompatibleLinear -from diffusers.models.modeling_utils import ModelMixin -from diffusers.utils.import_utils import is_xformers_available - -from einops import rearrange -import pdb -import random -import math - - -if is_xformers_available(): - import xformers - import xformers.ops -else: - xformers = None - - -@dataclass -class TransformerMV2DModelOutput(BaseOutput): - """ - The output of [`Transformer2DModel`]. - - Args: - sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` or `(batch size, num_vector_embeds - 1, num_latent_pixels)` if [`Transformer2DModel`] is discrete): - The hidden states output conditioned on the `encoder_hidden_states` input. If discrete, returns probability - distributions for the unnoised latent pixels. - """ - - sample: torch.FloatTensor - - -class TransformerMV2DModel(ModelMixin, ConfigMixin): - """ - A 2D Transformer model for image-like data. - - Parameters: - num_attention_heads (`int`, *optional*, defaults to 16): The number of heads to use for multi-head attention. - attention_head_dim (`int`, *optional*, defaults to 88): The number of channels in each head. - in_channels (`int`, *optional*): - The number of channels in the input and output (specify if the input is **continuous**). - num_layers (`int`, *optional*, defaults to 1): The number of layers of Transformer blocks to use. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - cross_attention_dim (`int`, *optional*): The number of `encoder_hidden_states` dimensions to use. - sample_size (`int`, *optional*): The width of the latent images (specify if the input is **discrete**). - This is fixed during training since it is used to learn a number of position embeddings. - num_vector_embeds (`int`, *optional*): - The number of classes of the vector embeddings of the latent pixels (specify if the input is **discrete**). - Includes the class for the masked latent pixel. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to use in feed-forward. - num_embeds_ada_norm ( `int`, *optional*): - The number of diffusion steps used during training. Pass if at least one of the norm_layers is - `AdaLayerNorm`. This is fixed during training since it is used to learn a number of embeddings that are - added to the hidden states. - - During inference, you can denoise for up to but not more steps than `num_embeds_ada_norm`. - attention_bias (`bool`, *optional*): - Configure if the `TransformerBlocks` attention should contain a bias parameter. - """ - - @register_to_config - def __init__( - self, - num_attention_heads: int = 16, - attention_head_dim: int = 88, - in_channels: Optional[int] = None, - out_channels: Optional[int] = None, - num_layers: int = 1, - dropout: float = 0.0, - norm_num_groups: int = 32, - cross_attention_dim: Optional[int] = None, - attention_bias: bool = False, - sample_size: Optional[int] = None, - num_vector_embeds: Optional[int] = None, - patch_size: Optional[int] = None, - activation_fn: str = "geglu", - num_embeds_ada_norm: Optional[int] = None, - use_linear_projection: bool = False, - only_cross_attention: bool = False, - upcast_attention: bool = False, - norm_type: str = "layer_norm", - norm_elementwise_affine: bool = True, - num_views: int = 1, - cd_attention_mid: bool=False, - cd_attention_last: bool=False, - multiview_attention: bool=True, - sparse_mv_attention: bool = True, # not used - mvcd_attention: bool=False, - use_dino: bool=False - ): - super().__init__() - self.use_linear_projection = use_linear_projection - self.num_attention_heads = num_attention_heads - self.attention_head_dim = attention_head_dim - inner_dim = num_attention_heads * attention_head_dim - - # 1. Transformer2DModel can process both standard continuous images of shape `(batch_size, num_channels, width, height)` as well as quantized image embeddings of shape `(batch_size, num_image_vectors)` - # Define whether input is continuous or discrete depending on configuration - self.is_input_continuous = (in_channels is not None) and (patch_size is None) - self.is_input_vectorized = num_vector_embeds is not None - self.is_input_patches = in_channels is not None and patch_size is not None - - if norm_type == "layer_norm" and num_embeds_ada_norm is not None: - deprecation_message = ( - f"The configuration file of this model: {self.__class__} is outdated. `norm_type` is either not set or" - " incorrectly set to `'layer_norm'`.Make sure to set `norm_type` to `'ada_norm'` in the config." - " Please make sure to update the config accordingly as leaving `norm_type` might led to incorrect" - " results in future versions. If you have downloaded this checkpoint from the Hugging Face Hub, it" - " would be very nice if you could open a Pull request for the `transformer/config.json` file" - ) - deprecate("norm_type!=num_embeds_ada_norm", "1.0.0", deprecation_message, standard_warn=False) - norm_type = "ada_norm" - - if self.is_input_continuous and self.is_input_vectorized: - raise ValueError( - f"Cannot define both `in_channels`: {in_channels} and `num_vector_embeds`: {num_vector_embeds}. Make" - " sure that either `in_channels` or `num_vector_embeds` is None." - ) - elif self.is_input_vectorized and self.is_input_patches: - raise ValueError( - f"Cannot define both `num_vector_embeds`: {num_vector_embeds} and `patch_size`: {patch_size}. Make" - " sure that either `num_vector_embeds` or `num_patches` is None." - ) - elif not self.is_input_continuous and not self.is_input_vectorized and not self.is_input_patches: - raise ValueError( - f"Has to define `in_channels`: {in_channels}, `num_vector_embeds`: {num_vector_embeds}, or patch_size:" - f" {patch_size}. Make sure that `in_channels`, `num_vector_embeds` or `num_patches` is not None." - ) - - # 2. Define input layers - if self.is_input_continuous: - self.in_channels = in_channels - - self.norm = torch.nn.GroupNorm(num_groups=norm_num_groups, num_channels=in_channels, eps=1e-6, affine=True) - if use_linear_projection: - self.proj_in = LoRACompatibleLinear(in_channels, inner_dim) - else: - self.proj_in = LoRACompatibleConv(in_channels, inner_dim, kernel_size=1, stride=1, padding=0) - elif self.is_input_vectorized: - assert sample_size is not None, "Transformer2DModel over discrete input must provide sample_size" - assert num_vector_embeds is not None, "Transformer2DModel over discrete input must provide num_embed" - - self.height = sample_size - self.width = sample_size - self.num_vector_embeds = num_vector_embeds - self.num_latent_pixels = self.height * self.width - - self.latent_image_embedding = ImagePositionalEmbeddings( - num_embed=num_vector_embeds, embed_dim=inner_dim, height=self.height, width=self.width - ) - elif self.is_input_patches: - assert sample_size is not None, "Transformer2DModel over patched input must provide sample_size" - - self.height = sample_size - self.width = sample_size - - self.patch_size = patch_size - self.pos_embed = PatchEmbed( - height=sample_size, - width=sample_size, - patch_size=patch_size, - in_channels=in_channels, - embed_dim=inner_dim, - ) - - # 3. Define transformers blocks - self.transformer_blocks = nn.ModuleList( - [ - BasicMVTransformerBlock( - inner_dim, - num_attention_heads, - attention_head_dim, - dropout=dropout, - cross_attention_dim=cross_attention_dim, - activation_fn=activation_fn, - num_embeds_ada_norm=num_embeds_ada_norm, - attention_bias=attention_bias, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - norm_type=norm_type, - norm_elementwise_affine=norm_elementwise_affine, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - mvcd_attention=mvcd_attention, - use_dino=use_dino - ) - for d in range(num_layers) - ] - ) - - # 4. Define output layers - self.out_channels = in_channels if out_channels is None else out_channels - if self.is_input_continuous: - # TODO: should use out_channels for continuous projections - if use_linear_projection: - self.proj_out = LoRACompatibleLinear(inner_dim, in_channels) - else: - self.proj_out = LoRACompatibleConv(inner_dim, in_channels, kernel_size=1, stride=1, padding=0) - elif self.is_input_vectorized: - self.norm_out = nn.LayerNorm(inner_dim) - self.out = nn.Linear(inner_dim, self.num_vector_embeds - 1) - elif self.is_input_patches: - self.norm_out = nn.LayerNorm(inner_dim, elementwise_affine=False, eps=1e-6) - self.proj_out_1 = nn.Linear(inner_dim, 2 * inner_dim) - self.proj_out_2 = nn.Linear(inner_dim, patch_size * patch_size * self.out_channels) - - def forward( - self, - hidden_states: torch.Tensor, - encoder_hidden_states: Optional[torch.Tensor] = None, - dino_feature: Optional[torch.Tensor] = None, - timestep: Optional[torch.LongTensor] = None, - class_labels: Optional[torch.LongTensor] = None, - cross_attention_kwargs: Dict[str, Any] = None, - attention_mask: Optional[torch.Tensor] = None, - encoder_attention_mask: Optional[torch.Tensor] = None, - return_dict: bool = True, - ): - """ - The [`Transformer2DModel`] forward method. - - Args: - hidden_states (`torch.LongTensor` of shape `(batch size, num latent pixels)` if discrete, `torch.FloatTensor` of shape `(batch size, channel, height, width)` if continuous): - Input `hidden_states`. - encoder_hidden_states ( `torch.FloatTensor` of shape `(batch size, sequence len, embed dims)`, *optional*): - Conditional embeddings for cross attention layer. If not given, cross-attention defaults to - self-attention. - timestep ( `torch.LongTensor`, *optional*): - Used to indicate denoising step. Optional timestep to be applied as an embedding in `AdaLayerNorm`. - class_labels ( `torch.LongTensor` of shape `(batch size, num classes)`, *optional*): - Used to indicate class labels conditioning. Optional class labels to be applied as an embedding in - `AdaLayerZeroNorm`. - encoder_attention_mask ( `torch.Tensor`, *optional*): - Cross-attention mask applied to `encoder_hidden_states`. Two formats supported: - - * Mask `(batch, sequence_length)` True = keep, False = discard. - * Bias `(batch, 1, sequence_length)` 0 = keep, -10000 = discard. - - If `ndim == 2`: will be interpreted as a mask, then converted into a bias consistent with the format - above. This bias will be added to the cross-attention scores. - return_dict (`bool`, *optional*, defaults to `True`): - Whether or not to return a [`~models.unet_2d_condition.UNet2DConditionOutput`] instead of a plain - tuple. - - Returns: - If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a - `tuple` where the first element is the sample tensor. - """ - # ensure attention_mask is a bias, and give it a singleton query_tokens dimension. - # we may have done this conversion already, e.g. if we came here via UNet2DConditionModel#forward. - # we can tell by counting dims; if ndim == 2: it's a mask rather than a bias. - # expects mask of shape: - # [batch, key_tokens] - # adds singleton query_tokens dimension: - # [batch, 1, key_tokens] - # this helps to broadcast it as a bias over attention scores, which will be in one of the following shapes: - # [batch, heads, query_tokens, key_tokens] (e.g. torch sdp attn) - # [batch * heads, query_tokens, key_tokens] (e.g. xformers or classic attn) - if attention_mask is not None and attention_mask.ndim == 2: - # assume that mask is expressed as: - # (1 = keep, 0 = discard) - # convert mask into a bias that can be added to attention scores: - # (keep = +0, discard = -10000.0) - attention_mask = (1 - attention_mask.to(hidden_states.dtype)) * -10000.0 - attention_mask = attention_mask.unsqueeze(1) - - # convert encoder_attention_mask to a bias the same way we do for attention_mask - if encoder_attention_mask is not None and encoder_attention_mask.ndim == 2: - encoder_attention_mask = (1 - encoder_attention_mask.to(hidden_states.dtype)) * -10000.0 - encoder_attention_mask = encoder_attention_mask.unsqueeze(1) - - # 1. Input - if self.is_input_continuous: - batch, _, height, width = hidden_states.shape - residual = hidden_states - - hidden_states = self.norm(hidden_states) - if not self.use_linear_projection: - hidden_states = self.proj_in(hidden_states) - inner_dim = hidden_states.shape[1] - hidden_states = hidden_states.permute(0, 2, 3, 1).reshape(batch, height * width, inner_dim) - else: - inner_dim = hidden_states.shape[1] - hidden_states = hidden_states.permute(0, 2, 3, 1).reshape(batch, height * width, inner_dim) - hidden_states = self.proj_in(hidden_states) - elif self.is_input_vectorized: - hidden_states = self.latent_image_embedding(hidden_states) - elif self.is_input_patches: - hidden_states = self.pos_embed(hidden_states) - - # 2. Blocks - for block in self.transformer_blocks: - hidden_states = block( - hidden_states, - attention_mask=attention_mask, - encoder_hidden_states=encoder_hidden_states, - dino_feature=dino_feature, - encoder_attention_mask=encoder_attention_mask, - timestep=timestep, - cross_attention_kwargs=cross_attention_kwargs, - class_labels=class_labels, - ) - - # 3. Output - if self.is_input_continuous: - if not self.use_linear_projection: - hidden_states = hidden_states.reshape(batch, height, width, inner_dim).permute(0, 3, 1, 2).contiguous() - hidden_states = self.proj_out(hidden_states) - else: - hidden_states = self.proj_out(hidden_states) - hidden_states = hidden_states.reshape(batch, height, width, inner_dim).permute(0, 3, 1, 2).contiguous() - - output = hidden_states + residual - elif self.is_input_vectorized: - hidden_states = self.norm_out(hidden_states) - logits = self.out(hidden_states) - # (batch, self.num_vector_embeds - 1, self.num_latent_pixels) - logits = logits.permute(0, 2, 1) - - # log(p(x_0)) - output = F.log_softmax(logits.double(), dim=1).float() - elif self.is_input_patches: - # TODO: cleanup! - conditioning = self.transformer_blocks[0].norm1.emb( - timestep, class_labels, hidden_dtype=hidden_states.dtype - ) - shift, scale = self.proj_out_1(F.silu(conditioning)).chunk(2, dim=1) - hidden_states = self.norm_out(hidden_states) * (1 + scale[:, None]) + shift[:, None] - hidden_states = self.proj_out_2(hidden_states) - - # unpatchify - height = width = int(hidden_states.shape[1] ** 0.5) - hidden_states = hidden_states.reshape( - shape=(-1, height, width, self.patch_size, self.patch_size, self.out_channels) - ) - hidden_states = torch.einsum("nhwpqc->nchpwq", hidden_states) - output = hidden_states.reshape( - shape=(-1, self.out_channels, height * self.patch_size, width * self.patch_size) - ) - - if not return_dict: - return (output,) - - return TransformerMV2DModelOutput(sample=output) - - -@maybe_allow_in_graph -class BasicMVTransformerBlock(nn.Module): - r""" - A basic Transformer block. - - Parameters: - dim (`int`): The number of channels in the input and output. - num_attention_heads (`int`): The number of heads to use for multi-head attention. - attention_head_dim (`int`): The number of channels in each head. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - cross_attention_dim (`int`, *optional*): The size of the encoder_hidden_states vector for cross attention. - only_cross_attention (`bool`, *optional*): - Whether to use only cross-attention layers. In this case two cross attention layers are used. - double_self_attention (`bool`, *optional*): - Whether to use two self-attention layers. In this case no cross attention layers are used. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to be used in feed-forward. - num_embeds_ada_norm (: - obj: `int`, *optional*): The number of diffusion steps used during training. See `Transformer2DModel`. - attention_bias (: - obj: `bool`, *optional*, defaults to `False`): Configure if the attentions should contain a bias parameter. - """ - - def __init__( - self, - dim: int, - num_attention_heads: int, - attention_head_dim: int, - dropout=0.0, - cross_attention_dim: Optional[int] = None, - activation_fn: str = "geglu", - num_embeds_ada_norm: Optional[int] = None, - attention_bias: bool = False, - only_cross_attention: bool = False, - double_self_attention: bool = False, - upcast_attention: bool = False, - norm_elementwise_affine: bool = True, - norm_type: str = "layer_norm", - final_dropout: bool = False, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - mvcd_attention: bool = False, - rowwise_attention: bool = True, - use_dino: bool = False - ): - super().__init__() - self.only_cross_attention = only_cross_attention - - self.use_ada_layer_norm_zero = (num_embeds_ada_norm is not None) and norm_type == "ada_norm_zero" - self.use_ada_layer_norm = (num_embeds_ada_norm is not None) and norm_type == "ada_norm" - - if norm_type in ("ada_norm", "ada_norm_zero") and num_embeds_ada_norm is None: - raise ValueError( - f"`norm_type` is set to {norm_type}, but `num_embeds_ada_norm` is not defined. Please make sure to" - f" define `num_embeds_ada_norm` if setting `norm_type` to {norm_type}." - ) - - # Define 3 blocks. Each block has its own normalization layer. - # 1. Self-Attn - if self.use_ada_layer_norm: - self.norm1 = AdaLayerNorm(dim, num_embeds_ada_norm) - elif self.use_ada_layer_norm_zero: - self.norm1 = AdaLayerNormZero(dim, num_embeds_ada_norm) - else: - self.norm1 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - - self.multiview_attention = multiview_attention - self.mvcd_attention = mvcd_attention - self.cd_attention_mid = cd_attention_mid - self.rowwise_attention = multiview_attention and rowwise_attention - - if mvcd_attention and (not cd_attention_mid): - # add cross domain attn to self attn - self.attn1 = CustomJointAttention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - processor=JointAttnProcessor() - ) - else: - self.attn1 = Attention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention - ) - # 1.1 rowwise multiview attention - if self.rowwise_attention: - # print('INFO: using self+row_wise mv attention...') - self.norm_mv = ( - AdaLayerNorm(dim, num_embeds_ada_norm) - if self.use_ada_layer_norm - else nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - ) - self.attn_mv = CustomAttention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - processor=MVAttnProcessor() - ) - nn.init.zeros_(self.attn_mv.to_out[0].weight.data) - else: - self.norm_mv = None - self.attn_mv = None - - # # 1.2 rowwise cross-domain attn - # if mvcd_attention: - # self.attn_joint = CustomJointAttention( - # query_dim=dim, - # heads=num_attention_heads, - # dim_head=attention_head_dim, - # dropout=dropout, - # bias=attention_bias, - # cross_attention_dim=cross_attention_dim if only_cross_attention else None, - # upcast_attention=upcast_attention, - # processor=JointAttnProcessor() - # ) - # nn.init.zeros_(self.attn_joint.to_out[0].weight.data) - # self.norm_joint = AdaLayerNorm(dim, num_embeds_ada_norm) if self.use_ada_layer_norm else nn.LayerNorm(dim) - # else: - # self.attn_joint = None - # self.norm_joint = None - - # 2. Cross-Attn - if cross_attention_dim is not None or double_self_attention: - # We currently only use AdaLayerNormZero for self attention where there will only be one attention block. - # I.e. the number of returned modulation chunks from AdaLayerZero would not make sense if returned during - # the second cross attention block. - self.norm2 = ( - AdaLayerNorm(dim, num_embeds_ada_norm) - if self.use_ada_layer_norm - else nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - ) - self.attn2 = Attention( - query_dim=dim, - cross_attention_dim=cross_attention_dim if not double_self_attention else None, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - upcast_attention=upcast_attention, - ) # is self-attn if encoder_hidden_states is none - else: - self.norm2 = None - self.attn2 = None - - # 3. Feed-forward - self.norm3 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - self.ff = FeedForward(dim, dropout=dropout, activation_fn=activation_fn, final_dropout=final_dropout) - - # let chunk size default to None - self._chunk_size = None - self._chunk_dim = 0 - - self.num_views = num_views - - - def set_chunk_feed_forward(self, chunk_size: Optional[int], dim: int): - # Sets chunk feed-forward - self._chunk_size = chunk_size - self._chunk_dim = dim - - def forward( - self, - hidden_states: torch.FloatTensor, - attention_mask: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - timestep: Optional[torch.LongTensor] = None, - cross_attention_kwargs: Dict[str, Any] = None, - class_labels: Optional[torch.LongTensor] = None, - dino_feature: Optional[torch.FloatTensor] = None - ): - assert attention_mask is None # not supported yet - # Notice that normalization is always applied before the real computation in the following blocks. - # 1. Self-Attention - if self.use_ada_layer_norm: - norm_hidden_states = self.norm1(hidden_states, timestep) - elif self.use_ada_layer_norm_zero: - norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1( - hidden_states, timestep, class_labels, hidden_dtype=hidden_states.dtype - ) - else: - norm_hidden_states = self.norm1(hidden_states) - - cross_attention_kwargs = cross_attention_kwargs if cross_attention_kwargs is not None else {} - - attn_output = self.attn1( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None, - attention_mask=attention_mask, - # multiview_attention=self.multiview_attention, - # mvcd_attention=self.mvcd_attention, - **cross_attention_kwargs, - ) - - - if self.use_ada_layer_norm_zero: - attn_output = gate_msa.unsqueeze(1) * attn_output - hidden_states = attn_output + hidden_states - - # import pdb;pdb.set_trace() - # 1.1 row wise multiview attention - if self.rowwise_attention: - norm_hidden_states = ( - self.norm_mv(hidden_states, timestep) if self.use_ada_layer_norm else self.norm_mv(hidden_states) - ) - attn_output = self.attn_mv( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None, - attention_mask=attention_mask, - num_views=self.num_views, - multiview_attention=self.multiview_attention, - cd_attention_mid=self.cd_attention_mid, - **cross_attention_kwargs, - ) - hidden_states = attn_output + hidden_states - - - # 2. Cross-Attention - if self.attn2 is not None: - norm_hidden_states = ( - self.norm2(hidden_states, timestep) if self.use_ada_layer_norm else self.norm2(hidden_states) - ) - - attn_output = self.attn2( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states, - attention_mask=encoder_attention_mask, - **cross_attention_kwargs, - ) - hidden_states = attn_output + hidden_states - - # 3. Feed-forward - norm_hidden_states = self.norm3(hidden_states) - - if self.use_ada_layer_norm_zero: - norm_hidden_states = norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None] - - if self._chunk_size is not None: - # "feed_forward_chunk_size" can be used to save memory - if norm_hidden_states.shape[self._chunk_dim] % self._chunk_size != 0: - raise ValueError( - f"`hidden_states` dimension to be chunked: {norm_hidden_states.shape[self._chunk_dim]} has to be divisible by chunk size: {self._chunk_size}. Make sure to set an appropriate `chunk_size` when calling `unet.enable_forward_chunking`." - ) - - num_chunks = norm_hidden_states.shape[self._chunk_dim] // self._chunk_size - ff_output = torch.cat( - [self.ff(hid_slice) for hid_slice in norm_hidden_states.chunk(num_chunks, dim=self._chunk_dim)], - dim=self._chunk_dim, - ) - else: - ff_output = self.ff(norm_hidden_states) - - if self.use_ada_layer_norm_zero: - ff_output = gate_mlp.unsqueeze(1) * ff_output - - hidden_states = ff_output + hidden_states - - return hidden_states - - -class CustomAttention(Attention): - def set_use_memory_efficient_attention_xformers( - self, use_memory_efficient_attention_xformers: bool, *args, **kwargs - ): - processor = XFormersMVAttnProcessor() - self.set_processor(processor) - # print("using xformers attention processor") - - -class CustomJointAttention(Attention): - def set_use_memory_efficient_attention_xformers( - self, use_memory_efficient_attention_xformers: bool, *args, **kwargs - ): - processor = XFormersJointAttnProcessor() - self.set_processor(processor) - # print("using xformers attention processor") - -class MVAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_views=1, - cd_attention_mid=False - ): - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - height = int(math.sqrt(sequence_length)) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - # print('query', query.shape, 'key', key.shape, 'value', value.shape) - #([bx4, 1024, 320]) key torch.Size([bx4, 1024, 320]) value torch.Size([bx4, 1024, 320]) - # pdb.set_trace() - # multi-view self-attention - def transpose(tensor): - tensor = rearrange(tensor, "(b v) (h w) c -> b v h w c", v=num_views, h=height) - tensor_0, tensor_1 = torch.chunk(tensor, dim=0, chunks=2) # b v h w c - tensor = torch.cat([tensor_0, tensor_1], dim=3) # b v h 2w c - tensor = rearrange(tensor, "b v h w c -> (b h) (v w) c", v=num_views, h=height) - return tensor - - if cd_attention_mid: - key = transpose(key) - value = transpose(value) - query = transpose(query) - else: - key = rearrange(key, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) - value = rearrange(value, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) - query = rearrange(query, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) # torch.Size([192, 384, 320]) - - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - attention_probs = attn.get_attention_scores(query, key, attention_mask) - hidden_states = torch.bmm(attention_probs, value) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - if cd_attention_mid: - hidden_states = rearrange(hidden_states, "(b h) (v w) c -> b v h w c", v=num_views, h=height) - hidden_states_0, hidden_states_1 = torch.chunk(hidden_states, dim=3, chunks=2) # b v h w c - hidden_states = torch.cat([hidden_states_0, hidden_states_1], dim=0) # 2b v h w c - hidden_states = rearrange(hidden_states, "b v h w c -> (b v) (h w) c", v=num_views, h=height) - else: - hidden_states = rearrange(hidden_states, "(b h) (v w) c -> (b v) (h w) c", v=num_views, h=height) - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - -class XFormersMVAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_views=1, - multiview_attention=True, - cd_attention_mid=False - ): - # print(num_views) - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - height = int(math.sqrt(sequence_length)) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - # from yuancheng; here attention_mask is None - if attention_mask is not None: - # expand our mask's singleton query_tokens dimension: - # [batch*heads, 1, key_tokens] -> - # [batch*heads, query_tokens, key_tokens] - # so that it can be added as a bias onto the attention scores that xformers computes: - # [batch*heads, query_tokens, key_tokens] - # we do this explicitly because xformers doesn't broadcast the singleton dimension for us. - _, query_tokens, _ = hidden_states.shape - attention_mask = attention_mask.expand(-1, query_tokens, -1) - - if attn.group_norm is not None: - print('Warning: using group norm, pay attention to use it in row-wise attention') - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key_raw = attn.to_k(encoder_hidden_states) - value_raw = attn.to_v(encoder_hidden_states) - - # print('query', query.shape, 'key', key.shape, 'value', value.shape) - # pdb.set_trace() - def transpose(tensor): - tensor = rearrange(tensor, "(b v) (h w) c -> b v h w c", v=num_views, h=height) - tensor_0, tensor_1 = torch.chunk(tensor, dim=0, chunks=2) # b v h w c - tensor = torch.cat([tensor_0, tensor_1], dim=3) # b v h 2w c - tensor = rearrange(tensor, "b v h w c -> (b h) (v w) c", v=num_views, h=height) - return tensor - # print(mvcd_attention) - # import pdb;pdb.set_trace() - if cd_attention_mid: - key = transpose(key_raw) - value = transpose(value_raw) - query = transpose(query) - else: - key = rearrange(key_raw, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) - value = rearrange(value_raw, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) - query = rearrange(query, "(b v) (h w) c -> (b h) (v w) c", v=num_views, h=height) # torch.Size([192, 384, 320]) - - - query = attn.head_to_batch_dim(query) # torch.Size([960, 384, 64]) - key = attn.head_to_batch_dim(key) - value = attn.head_to_batch_dim(value) - - hidden_states = xformers.ops.memory_efficient_attention(query, key, value, attn_bias=attention_mask) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if cd_attention_mid: - hidden_states = rearrange(hidden_states, "(b h) (v w) c -> b v h w c", v=num_views, h=height) - hidden_states_0, hidden_states_1 = torch.chunk(hidden_states, dim=3, chunks=2) # b v h w c - hidden_states = torch.cat([hidden_states_0, hidden_states_1], dim=0) # 2b v h w c - hidden_states = rearrange(hidden_states, "b v h w c -> (b v) (h w) c", v=num_views, h=height) - else: - hidden_states = rearrange(hidden_states, "(b h) (v w) c -> (b v) (h w) c", v=num_views, h=height) - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - -class XFormersJointAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_tasks=2 - ): - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - # from yuancheng; here attention_mask is None - if attention_mask is not None: - # expand our mask's singleton query_tokens dimension: - # [batch*heads, 1, key_tokens] -> - # [batch*heads, query_tokens, key_tokens] - # so that it can be added as a bias onto the attention scores that xformers computes: - # [batch*heads, query_tokens, key_tokens] - # we do this explicitly because xformers doesn't broadcast the singleton dimension for us. - _, query_tokens, _ = hidden_states.shape - attention_mask = attention_mask.expand(-1, query_tokens, -1) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - assert num_tasks == 2 # only support two tasks now - - def transpose(tensor): - tensor_0, tensor_1 = torch.chunk(tensor, dim=0, chunks=2) # bv hw c - tensor = torch.cat([tensor_0, tensor_1], dim=1) # bv 2hw c - return tensor - key = transpose(key) - value = transpose(value) - query = transpose(query) - # from icecream import ic - # ic(key.shape, value.shape, query.shape) - # import pdb;pdb.set_trace() - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - hidden_states = xformers.ops.memory_efficient_attention(query, key, value, attn_bias=attention_mask) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - hidden_states_normal, hidden_states_color = torch.chunk(hidden_states, dim=1, chunks=2) - hidden_states = torch.cat([hidden_states_normal, hidden_states_color], dim=0) # 2bv hw c - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - -class JointAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_tasks=2 - ): - - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - assert num_tasks == 2 # only support two tasks now - - def transpose(tensor): - tensor_0, tensor_1 = torch.chunk(tensor, dim=0, chunks=2) # bv hw c - tensor = torch.cat([tensor_0, tensor_1], dim=1) # bv 2hw c - return tensor - key = transpose(key) - value = transpose(value) - query = transpose(query) - - - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - attention_probs = attn.get_attention_scores(query, key, attention_mask) - hidden_states = torch.bmm(attention_probs, value) - hidden_states = attn.batch_to_head_dim(hidden_states) - - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - hidden_states = torch.cat([hidden_states[:, 0], hidden_states[:, 1]], dim=0) # 2bv hw c - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states \ No newline at end of file diff --git a/era3d/mvdiffusion/models/unet_mv2d_blocks.py b/era3d/mvdiffusion/models/unet_mv2d_blocks.py deleted file mode 100644 index 928443f..0000000 --- a/era3d/mvdiffusion/models/unet_mv2d_blocks.py +++ /dev/null @@ -1,971 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -from typing import Any, Dict, Optional, Tuple - -import numpy as np -import torch -import torch.nn.functional as F -from torch import nn - -from diffusers.utils import is_torch_version, logging -from diffusers.models.normalization import AdaGroupNorm -from diffusers.models.attention_processor import Attention, AttnAddedKVProcessor, AttnAddedKVProcessor2_0 -from diffusers.models.transformers.dual_transformer_2d import DualTransformer2DModel -from diffusers.models.resnet import Downsample2D, FirDownsample2D, FirUpsample2D, KDownsample2D, KUpsample2D, ResnetBlock2D, Upsample2D - -from diffusers.models.unets.unet_2d_blocks import DownBlock2D, ResnetDownsampleBlock2D, AttnDownBlock2D, CrossAttnDownBlock2D, SimpleCrossAttnDownBlock2D, SkipDownBlock2D, AttnSkipDownBlock2D, DownEncoderBlock2D, AttnDownEncoderBlock2D, KDownBlock2D, KCrossAttnDownBlock2D -from diffusers.models.unets.unet_2d_blocks import UpBlock2D, ResnetUpsampleBlock2D, CrossAttnUpBlock2D, SimpleCrossAttnUpBlock2D, AttnUpBlock2D, SkipUpBlock2D, AttnSkipUpBlock2D, UpDecoderBlock2D, AttnUpDecoderBlock2D, KUpBlock2D, KCrossAttnUpBlock2D - - -logger = logging.get_logger(__name__) # pylint: disable=invalid-name - - -def get_down_block( - down_block_type, - num_layers, - in_channels, - out_channels, - temb_channels, - add_downsample, - resnet_eps, - resnet_act_fn, - transformer_layers_per_block=1, - num_attention_heads=None, - resnet_groups=None, - cross_attention_dim=None, - downsample_padding=None, - dual_cross_attention=False, - use_linear_projection=False, - only_cross_attention=False, - upcast_attention=False, - resnet_time_scale_shift="default", - resnet_skip_time_act=False, - resnet_out_scale_factor=1.0, - cross_attention_norm=None, - attention_head_dim=None, - downsample_type=None, - num_views=1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - selfattn_block: str = "custom", - mvcd_attention: bool=False, - use_dino: bool = False -): - # If attn head dim is not defined, we default it to the number of heads - if attention_head_dim is None: - logger.warn( - f"It is recommended to provide `attention_head_dim` when calling `get_down_block`. Defaulting `attention_head_dim` to {num_attention_heads}." - ) - attention_head_dim = num_attention_heads - - down_block_type = down_block_type[7:] if down_block_type.startswith("UNetRes") else down_block_type - if down_block_type == "DownBlock2D": - return DownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif down_block_type == "ResnetDownsampleBlock2D": - return ResnetDownsampleBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - resnet_time_scale_shift=resnet_time_scale_shift, - skip_time_act=resnet_skip_time_act, - output_scale_factor=resnet_out_scale_factor, - ) - elif down_block_type == "AttnDownBlock2D": - if add_downsample is False: - downsample_type = None - else: - downsample_type = downsample_type or "conv" # default to 'conv' - return AttnDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - downsample_type=downsample_type, - ) - elif down_block_type == "CrossAttnDownBlock2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for CrossAttnDownBlock2D") - return CrossAttnDownBlock2D( - num_layers=num_layers, - transformer_layers_per_block=transformer_layers_per_block, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - cross_attention_dim=cross_attention_dim, - num_attention_heads=num_attention_heads, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - # custom MV2D attention block - elif down_block_type == "CrossAttnDownBlockMV2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for CrossAttnDownBlockMV2D") - return CrossAttnDownBlockMV2D( - num_layers=num_layers, - transformer_layers_per_block=transformer_layers_per_block, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - cross_attention_dim=cross_attention_dim, - num_attention_heads=num_attention_heads, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - selfattn_block=selfattn_block, - mvcd_attention=mvcd_attention, - use_dino=use_dino - ) - elif down_block_type == "SimpleCrossAttnDownBlock2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for SimpleCrossAttnDownBlock2D") - return SimpleCrossAttnDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - cross_attention_dim=cross_attention_dim, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - skip_time_act=resnet_skip_time_act, - output_scale_factor=resnet_out_scale_factor, - only_cross_attention=only_cross_attention, - cross_attention_norm=cross_attention_norm, - ) - elif down_block_type == "SkipDownBlock2D": - return SkipDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - downsample_padding=downsample_padding, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif down_block_type == "AttnSkipDownBlock2D": - return AttnSkipDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif down_block_type == "DownEncoderBlock2D": - return DownEncoderBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif down_block_type == "AttnDownEncoderBlock2D": - return AttnDownEncoderBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif down_block_type == "KDownBlock2D": - return KDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - ) - elif down_block_type == "KCrossAttnDownBlock2D": - return KCrossAttnDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - cross_attention_dim=cross_attention_dim, - attention_head_dim=attention_head_dim, - add_self_attention=True if not add_downsample else False, - ) - raise ValueError(f"{down_block_type} does not exist.") - - -def get_up_block( - up_block_type, - num_layers, - in_channels, - out_channels, - prev_output_channel, - temb_channels, - add_upsample, - resnet_eps, - resnet_act_fn, - transformer_layers_per_block=1, - num_attention_heads=None, - resnet_groups=None, - cross_attention_dim=None, - dual_cross_attention=False, - use_linear_projection=False, - only_cross_attention=False, - upcast_attention=False, - resnet_time_scale_shift="default", - resnet_skip_time_act=False, - resnet_out_scale_factor=1.0, - cross_attention_norm=None, - attention_head_dim=None, - upsample_type=None, - num_views=1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - selfattn_block: str = "custom", - mvcd_attention: bool=False, - use_dino: bool = False -): - # If attn head dim is not defined, we default it to the number of heads - if attention_head_dim is None: - logger.warn( - f"It is recommended to provide `attention_head_dim` when calling `get_up_block`. Defaulting `attention_head_dim` to {num_attention_heads}." - ) - attention_head_dim = num_attention_heads - - up_block_type = up_block_type[7:] if up_block_type.startswith("UNetRes") else up_block_type - if up_block_type == "UpBlock2D": - return UpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif up_block_type == "ResnetUpsampleBlock2D": - return ResnetUpsampleBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - resnet_time_scale_shift=resnet_time_scale_shift, - skip_time_act=resnet_skip_time_act, - output_scale_factor=resnet_out_scale_factor, - ) - elif up_block_type == "CrossAttnUpBlock2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for CrossAttnUpBlock2D") - return CrossAttnUpBlock2D( - num_layers=num_layers, - transformer_layers_per_block=transformer_layers_per_block, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - cross_attention_dim=cross_attention_dim, - num_attention_heads=num_attention_heads, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - # custom MV2D attention block - elif up_block_type == "CrossAttnUpBlockMV2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for CrossAttnUpBlockMV2D") - return CrossAttnUpBlockMV2D( - num_layers=num_layers, - transformer_layers_per_block=transformer_layers_per_block, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - cross_attention_dim=cross_attention_dim, - num_attention_heads=num_attention_heads, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - selfattn_block=selfattn_block, - mvcd_attention=mvcd_attention, - use_dino=use_dino - ) - elif up_block_type == "SimpleCrossAttnUpBlock2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for SimpleCrossAttnUpBlock2D") - return SimpleCrossAttnUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - cross_attention_dim=cross_attention_dim, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - skip_time_act=resnet_skip_time_act, - output_scale_factor=resnet_out_scale_factor, - only_cross_attention=only_cross_attention, - cross_attention_norm=cross_attention_norm, - ) - elif up_block_type == "AttnUpBlock2D": - if add_upsample is False: - upsample_type = None - else: - upsample_type = upsample_type or "conv" # default to 'conv' - - return AttnUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - upsample_type=upsample_type, - ) - elif up_block_type == "SkipUpBlock2D": - return SkipUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif up_block_type == "AttnSkipUpBlock2D": - return AttnSkipUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif up_block_type == "UpDecoderBlock2D": - return UpDecoderBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - resnet_time_scale_shift=resnet_time_scale_shift, - temb_channels=temb_channels, - ) - elif up_block_type == "AttnUpDecoderBlock2D": - return AttnUpDecoderBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - temb_channels=temb_channels, - ) - elif up_block_type == "KUpBlock2D": - return KUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - ) - elif up_block_type == "KCrossAttnUpBlock2D": - return KCrossAttnUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - cross_attention_dim=cross_attention_dim, - attention_head_dim=attention_head_dim, - ) - - raise ValueError(f"{up_block_type} does not exist.") - - -class UNetMidBlockMV2DCrossAttn(nn.Module): - def __init__( - self, - in_channels: int, - temb_channels: int, - dropout: float = 0.0, - num_layers: int = 1, - transformer_layers_per_block: int = 1, - resnet_eps: float = 1e-6, - resnet_time_scale_shift: str = "default", - resnet_act_fn: str = "swish", - resnet_groups: int = 32, - resnet_pre_norm: bool = True, - num_attention_heads=1, - output_scale_factor=1.0, - cross_attention_dim=1280, - dual_cross_attention=False, - use_linear_projection=False, - upcast_attention=False, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - selfattn_block: str = "custom", - mvcd_attention: bool=False, - use_dino: bool = False - ): - super().__init__() - - self.has_cross_attention = True - self.num_attention_heads = num_attention_heads - resnet_groups = resnet_groups if resnet_groups is not None else min(in_channels // 4, 32) - if selfattn_block == "custom": - from .transformer_mv2d import TransformerMV2DModel - elif selfattn_block == "rowwise": - from .transformer_mv2d_rowwise import TransformerMV2DModel - elif selfattn_block == "self_rowwise": - from .transformer_mv2d_self_rowwise import TransformerMV2DModel - else: - raise NotImplementedError - - # there is always at least one resnet - resnets = [ - ResnetBlock2D( - in_channels=in_channels, - out_channels=in_channels, - temb_channels=temb_channels, - eps=resnet_eps, - groups=resnet_groups, - dropout=dropout, - time_embedding_norm=resnet_time_scale_shift, - non_linearity=resnet_act_fn, - output_scale_factor=output_scale_factor, - pre_norm=resnet_pre_norm, - ) - ] - attentions = [] - - for _ in range(num_layers): - if not dual_cross_attention: - attentions.append( - TransformerMV2DModel( - num_attention_heads, - in_channels // num_attention_heads, - in_channels=in_channels, - num_layers=transformer_layers_per_block, - cross_attention_dim=cross_attention_dim, - norm_num_groups=resnet_groups, - use_linear_projection=use_linear_projection, - upcast_attention=upcast_attention, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention, - use_dino=use_dino - ) - ) - else: - raise NotImplementedError - resnets.append( - ResnetBlock2D( - in_channels=in_channels, - out_channels=in_channels, - temb_channels=temb_channels, - eps=resnet_eps, - groups=resnet_groups, - dropout=dropout, - time_embedding_norm=resnet_time_scale_shift, - non_linearity=resnet_act_fn, - output_scale_factor=output_scale_factor, - pre_norm=resnet_pre_norm, - ) - ) - - self.attentions = nn.ModuleList(attentions) - self.resnets = nn.ModuleList(resnets) - - def forward( - self, - hidden_states: torch.FloatTensor, - temb: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - attention_mask: Optional[torch.FloatTensor] = None, - cross_attention_kwargs: Optional[Dict[str, Any]] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - dino_feature: Optional[torch.FloatTensor] = None - ) -> torch.FloatTensor: - hidden_states = self.resnets[0](hidden_states, temb) - for attn, resnet in zip(self.attentions, self.resnets[1:]): - hidden_states = attn( - hidden_states, - encoder_hidden_states=encoder_hidden_states, - cross_attention_kwargs=cross_attention_kwargs, - attention_mask=attention_mask, - encoder_attention_mask=encoder_attention_mask, - dino_feature=dino_feature, - return_dict=False, - )[0] - hidden_states = resnet(hidden_states, temb) - - return hidden_states - - -class CrossAttnUpBlockMV2D(nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - prev_output_channel: int, - temb_channels: int, - dropout: float = 0.0, - num_layers: int = 1, - transformer_layers_per_block: int = 1, - resnet_eps: float = 1e-6, - resnet_time_scale_shift: str = "default", - resnet_act_fn: str = "swish", - resnet_groups: int = 32, - resnet_pre_norm: bool = True, - num_attention_heads=1, - cross_attention_dim=1280, - output_scale_factor=1.0, - add_upsample=True, - dual_cross_attention=False, - use_linear_projection=False, - only_cross_attention=False, - upcast_attention=False, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - selfattn_block: str = "custom", - mvcd_attention: bool=False, - use_dino: bool = False - ): - super().__init__() - resnets = [] - attentions = [] - - self.has_cross_attention = True - self.num_attention_heads = num_attention_heads - - if selfattn_block == "custom": - from .transformer_mv2d import TransformerMV2DModel - elif selfattn_block == "rowwise": - from .transformer_mv2d_rowwise import TransformerMV2DModel - elif selfattn_block == "self_rowwise": - from .transformer_mv2d_self_rowwise import TransformerMV2DModel - else: - raise NotImplementedError - - for i in range(num_layers): - res_skip_channels = in_channels if (i == num_layers - 1) else out_channels - resnet_in_channels = prev_output_channel if i == 0 else out_channels - - resnets.append( - ResnetBlock2D( - in_channels=resnet_in_channels + res_skip_channels, - out_channels=out_channels, - temb_channels=temb_channels, - eps=resnet_eps, - groups=resnet_groups, - dropout=dropout, - time_embedding_norm=resnet_time_scale_shift, - non_linearity=resnet_act_fn, - output_scale_factor=output_scale_factor, - pre_norm=resnet_pre_norm, - ) - ) - if not dual_cross_attention: - attentions.append( - TransformerMV2DModel( - num_attention_heads, - out_channels // num_attention_heads, - in_channels=out_channels, - num_layers=transformer_layers_per_block, - cross_attention_dim=cross_attention_dim, - norm_num_groups=resnet_groups, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention, - use_dino=use_dino - ) - ) - else: - raise NotImplementedError - self.attentions = nn.ModuleList(attentions) - self.resnets = nn.ModuleList(resnets) - - if add_upsample: - self.upsamplers = nn.ModuleList([Upsample2D(out_channels, use_conv=True, out_channels=out_channels)]) - else: - self.upsamplers = None - - self.gradient_checkpointing = False - - def forward( - self, - hidden_states: torch.FloatTensor, - res_hidden_states_tuple: Tuple[torch.FloatTensor, ...], - temb: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - cross_attention_kwargs: Optional[Dict[str, Any]] = None, - upsample_size: Optional[int] = None, - attention_mask: Optional[torch.FloatTensor] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - dino_feature: Optional[torch.FloatTensor] = None - ): - for resnet, attn in zip(self.resnets, self.attentions): - # pop res hidden states - res_hidden_states = res_hidden_states_tuple[-1] - res_hidden_states_tuple = res_hidden_states_tuple[:-1] - hidden_states = torch.cat([hidden_states, res_hidden_states], dim=1) - - if self.training and self.gradient_checkpointing: - - def create_custom_forward(module, return_dict=None): - def custom_forward(*inputs): - if return_dict is not None: - return module(*inputs, return_dict=return_dict) - else: - return module(*inputs) - - return custom_forward - - ckpt_kwargs: Dict[str, Any] = {"use_reentrant": False} if is_torch_version(">=", "1.11.0") else {} - hidden_states = torch.utils.checkpoint.checkpoint( - create_custom_forward(resnet), - hidden_states, - temb, - **ckpt_kwargs, - ) - hidden_states = torch.utils.checkpoint.checkpoint( - create_custom_forward(attn, return_dict=False), - hidden_states, - encoder_hidden_states, - dino_feature, - None, # timestep - None, # class_labels - cross_attention_kwargs, - attention_mask, - encoder_attention_mask, - **ckpt_kwargs, - )[0] - else: - hidden_states = resnet(hidden_states, temb) - hidden_states = attn( - hidden_states, - encoder_hidden_states=encoder_hidden_states, - cross_attention_kwargs=cross_attention_kwargs, - attention_mask=attention_mask, - encoder_attention_mask=encoder_attention_mask, - dino_feature=dino_feature, - return_dict=False, - )[0] - - if self.upsamplers is not None: - for upsampler in self.upsamplers: - hidden_states = upsampler(hidden_states, upsample_size) - - return hidden_states - - -class CrossAttnDownBlockMV2D(nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - temb_channels: int, - dropout: float = 0.0, - num_layers: int = 1, - transformer_layers_per_block: int = 1, - resnet_eps: float = 1e-6, - resnet_time_scale_shift: str = "default", - resnet_act_fn: str = "swish", - resnet_groups: int = 32, - resnet_pre_norm: bool = True, - num_attention_heads=1, - cross_attention_dim=1280, - output_scale_factor=1.0, - downsample_padding=1, - add_downsample=True, - dual_cross_attention=False, - use_linear_projection=False, - only_cross_attention=False, - upcast_attention=False, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - selfattn_block: str = "custom", - mvcd_attention: bool=False, - use_dino: bool = False - ): - super().__init__() - resnets = [] - attentions = [] - - self.has_cross_attention = True - self.num_attention_heads = num_attention_heads - if selfattn_block == "custom": - from .transformer_mv2d import TransformerMV2DModel - elif selfattn_block == "rowwise": - from .transformer_mv2d_rowwise import TransformerMV2DModel - elif selfattn_block == "self_rowwise": - from .transformer_mv2d_self_rowwise import TransformerMV2DModel - else: - raise NotImplementedError - - for i in range(num_layers): - in_channels = in_channels if i == 0 else out_channels - resnets.append( - ResnetBlock2D( - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - eps=resnet_eps, - groups=resnet_groups, - dropout=dropout, - time_embedding_norm=resnet_time_scale_shift, - non_linearity=resnet_act_fn, - output_scale_factor=output_scale_factor, - pre_norm=resnet_pre_norm, - ) - ) - if not dual_cross_attention: - attentions.append( - TransformerMV2DModel( - num_attention_heads, - out_channels // num_attention_heads, - in_channels=out_channels, - num_layers=transformer_layers_per_block, - cross_attention_dim=cross_attention_dim, - norm_num_groups=resnet_groups, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention, - use_dino=use_dino - ) - ) - else: - raise NotImplementedError - self.attentions = nn.ModuleList(attentions) - self.resnets = nn.ModuleList(resnets) - - if add_downsample: - self.downsamplers = nn.ModuleList( - [ - Downsample2D( - out_channels, use_conv=True, out_channels=out_channels, padding=downsample_padding, name="op" - ) - ] - ) - else: - self.downsamplers = None - - self.gradient_checkpointing = False - - def forward( - self, - hidden_states: torch.FloatTensor, - temb: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - dino_feature: Optional[torch.FloatTensor] = None, - attention_mask: Optional[torch.FloatTensor] = None, - cross_attention_kwargs: Optional[Dict[str, Any]] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - additional_residuals=None, - ): - output_states = () - - blocks = list(zip(self.resnets, self.attentions)) - - for i, (resnet, attn) in enumerate(blocks): - if self.training and self.gradient_checkpointing: - - def create_custom_forward(module, return_dict=None): - def custom_forward(*inputs): - if return_dict is not None: - return module(*inputs, return_dict=return_dict) - else: - return module(*inputs) - - return custom_forward - - ckpt_kwargs: Dict[str, Any] = {"use_reentrant": False} if is_torch_version(">=", "1.11.0") else {} - hidden_states = torch.utils.checkpoint.checkpoint( - create_custom_forward(resnet), - hidden_states, - temb, - **ckpt_kwargs, - ) - hidden_states = torch.utils.checkpoint.checkpoint( - create_custom_forward(attn, return_dict=False), - hidden_states, - encoder_hidden_states, - dino_feature, - None, # timestep - None, # class_labels - cross_attention_kwargs, - attention_mask, - encoder_attention_mask, - **ckpt_kwargs, - )[0] - else: - hidden_states = resnet(hidden_states, temb) - hidden_states = attn( - hidden_states, - encoder_hidden_states=encoder_hidden_states, - dino_feature=dino_feature, - cross_attention_kwargs=cross_attention_kwargs, - attention_mask=attention_mask, - encoder_attention_mask=encoder_attention_mask, - return_dict=False, - )[0] - - # apply additional residuals to the output of the last pair of resnet and attention blocks - if i == len(blocks) - 1 and additional_residuals is not None: - hidden_states = hidden_states + additional_residuals - - output_states = output_states + (hidden_states,) - - if self.downsamplers is not None: - for downsampler in self.downsamplers: - hidden_states = downsampler(hidden_states) - - output_states = output_states + (hidden_states,) - - return hidden_states, output_states - diff --git a/era3d/mvdiffusion/models/unet_mv2d_condition.py b/era3d/mvdiffusion/models/unet_mv2d_condition.py deleted file mode 100644 index 7bd9f9b..0000000 --- a/era3d/mvdiffusion/models/unet_mv2d_condition.py +++ /dev/null @@ -1,1679 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -from dataclasses import dataclass -from typing import Any, Dict, List, Optional, Tuple, Union -import os - -import torch -import torch.nn as nn -import torch.utils.checkpoint - -from diffusers.configuration_utils import ConfigMixin, register_to_config -from diffusers.loaders import UNet2DConditionLoadersMixin -from diffusers.utils import BaseOutput, logging -from diffusers.models.activations import get_activation -from diffusers.models.attention_processor import AttentionProcessor, AttnProcessor -from diffusers.models.embeddings import ( - GaussianFourierProjection, - ImageHintTimeEmbedding, - ImageProjection, - ImageTimeEmbedding, - TextImageProjection, - TextImageTimeEmbedding, - TextTimeEmbedding, - TimestepEmbedding, - Timesteps, -) -from diffusers.models.modeling_utils import ModelMixin, load_state_dict, _load_state_dict_into_model -from diffusers.models.unets.unet_2d_blocks import ( - CrossAttnDownBlock2D, - CrossAttnUpBlock2D, - DownBlock2D, - UNetMidBlock2DCrossAttn, - UNetMidBlock2DSimpleCrossAttn, - UpBlock2D, -) -from diffusers.utils import ( - CONFIG_NAME, - FLAX_WEIGHTS_NAME, - SAFETENSORS_WEIGHTS_NAME, - WEIGHTS_NAME, - _add_variant, - _get_model_file, - deprecate, - is_torch_version, - logging, -) -from diffusers.utils.import_utils import is_accelerate_available -from diffusers.utils.hub_utils import HF_HUB_OFFLINE -from huggingface_hub.constants import HUGGINGFACE_HUB_CACHE -DIFFUSERS_CACHE = HUGGINGFACE_HUB_CACHE - -from diffusers import __version__ -from .unet_mv2d_blocks import ( - CrossAttnDownBlockMV2D, - CrossAttnUpBlockMV2D, - UNetMidBlockMV2DCrossAttn, - get_down_block, - get_up_block, -) -from einops import rearrange, repeat - -from diffusers import __version__ - - -logger = logging.get_logger(__name__) # pylint: disable=invalid-name - - -@dataclass -class UNetMV2DConditionOutput(BaseOutput): - """ - The output of [`UNet2DConditionModel`]. - - Args: - sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)`): - The hidden states output conditioned on `encoder_hidden_states` input. Output of last layer of model. - """ - - sample: torch.FloatTensor = None - - -class ResidualBlock(nn.Module): - def __init__(self, dim): - super(ResidualBlock, self).__init__() - self.linear1 = nn.Linear(dim, dim) - self.activation = nn.SiLU() - self.linear2 = nn.Linear(dim, dim) - - def forward(self, x): - identity = x - out = self.linear1(x) - out = self.activation(out) - out = self.linear2(out) - out += identity - out = self.activation(out) - return out - -class ResidualLiner(nn.Module): - def __init__(self, in_features, out_features, dim, act=None, num_block=1): - super(ResidualLiner, self).__init__() - self.linear_in = nn.Sequential(nn.Linear(in_features, dim), nn.SiLU()) - - blocks = nn.ModuleList() - for _ in range(num_block): - blocks.append(ResidualBlock(dim)) - self.blocks = blocks - - self.linear_out = nn.Linear(dim, out_features) - self.act = act - - def forward(self, x): - out = self.linear_in(x) - for block in self.blocks: - out = block(out) - out = self.linear_out(out) - if self.act is not None: - out = self.act(out) - return out - -class BasicConvBlock(nn.Module): - def __init__(self, in_channels, out_channels, stride=1): - super(BasicConvBlock, self).__init__() - self.conv1 = nn.Conv2d(in_channels, out_channels, kernel_size=3, stride=stride, padding=1, bias=False) - self.norm1 = nn.GroupNorm(num_groups=8, num_channels=in_channels, affine=True) - self.act = nn.SiLU() - self.conv2 = nn.Conv2d(out_channels, out_channels, kernel_size=3, stride=1, padding=1, bias=False) - self.norm2 = nn.GroupNorm(num_groups=8, num_channels=in_channels, affine=True) - self.downsample = nn.Sequential() - if stride != 1 or in_channels != out_channels: - self.downsample = nn.Sequential( - nn.Conv2d(in_channels, out_channels, kernel_size=1, stride=stride, bias=False), - nn.GroupNorm(num_groups=8, num_channels=in_channels, affine=True) - ) - - def forward(self, x): - identity = x - out = self.conv1(x) - out = self.norm1(out) - out = self.act(out) - out = self.conv2(out) - out = self.norm2(out) - out += self.downsample(identity) - out = self.act(out) - return out - -class UNetMV2DConditionModel(ModelMixin, ConfigMixin, UNet2DConditionLoadersMixin): - r""" - A conditional 2D UNet model that takes a noisy sample, conditional state, and a timestep and returns a sample - shaped output. - - This model inherits from [`ModelMixin`]. Check the superclass documentation for it's generic methods implemented - for all models (such as downloading or saving). - - Parameters: - sample_size (`int` or `Tuple[int, int]`, *optional*, defaults to `None`): - Height and width of input/output sample. - in_channels (`int`, *optional*, defaults to 4): Number of channels in the input sample. - out_channels (`int`, *optional*, defaults to 4): Number of channels in the output. - center_input_sample (`bool`, *optional*, defaults to `False`): Whether to center the input sample. - flip_sin_to_cos (`bool`, *optional*, defaults to `False`): - Whether to flip the sin to cos in the time embedding. - freq_shift (`int`, *optional*, defaults to 0): The frequency shift to apply to the time embedding. - down_block_types (`Tuple[str]`, *optional*, defaults to `("CrossAttnDownBlock2D", "CrossAttnDownBlock2D", "CrossAttnDownBlock2D", "DownBlock2D")`): - The tuple of downsample blocks to use. - mid_block_type (`str`, *optional*, defaults to `"UNetMidBlock2DCrossAttn"`): - Block type for middle of UNet, it can be either `UNetMidBlock2DCrossAttn` or - `UNetMidBlock2DSimpleCrossAttn`. If `None`, the mid block layer is skipped. - up_block_types (`Tuple[str]`, *optional*, defaults to `("UpBlock2D", "CrossAttnUpBlock2D", "CrossAttnUpBlock2D", "CrossAttnUpBlock2D")`): - The tuple of upsample blocks to use. - only_cross_attention(`bool` or `Tuple[bool]`, *optional*, default to `False`): - Whether to include self-attention in the basic transformer blocks, see - [`~models.attention.BasicTransformerBlock`]. - block_out_channels (`Tuple[int]`, *optional*, defaults to `(320, 640, 1280, 1280)`): - The tuple of output channels for each block. - layers_per_block (`int`, *optional*, defaults to 2): The number of layers per block. - downsample_padding (`int`, *optional*, defaults to 1): The padding to use for the downsampling convolution. - mid_block_scale_factor (`float`, *optional*, defaults to 1.0): The scale factor to use for the mid block. - act_fn (`str`, *optional*, defaults to `"silu"`): The activation function to use. - norm_num_groups (`int`, *optional*, defaults to 32): The number of groups to use for the normalization. - If `None`, normalization and activation layers is skipped in post-processing. - norm_eps (`float`, *optional*, defaults to 1e-5): The epsilon to use for the normalization. - cross_attention_dim (`int` or `Tuple[int]`, *optional*, defaults to 1280): - The dimension of the cross attention features. - transformer_layers_per_block (`int` or `Tuple[int]`, *optional*, defaults to 1): - The number of transformer blocks of type [`~models.attention.BasicTransformerBlock`]. Only relevant for - [`~models.unet_2d_blocks.CrossAttnDownBlock2D`], [`~models.unet_2d_blocks.CrossAttnUpBlock2D`], - [`~models.unet_2d_blocks.UNetMidBlock2DCrossAttn`]. - encoder_hid_dim (`int`, *optional*, defaults to None): - If `encoder_hid_dim_type` is defined, `encoder_hidden_states` will be projected from `encoder_hid_dim` - dimension to `cross_attention_dim`. - encoder_hid_dim_type (`str`, *optional*, defaults to `None`): - If given, the `encoder_hidden_states` and potentially other embeddings are down-projected to text - embeddings of dimension `cross_attention` according to `encoder_hid_dim_type`. - attention_head_dim (`int`, *optional*, defaults to 8): The dimension of the attention heads. - num_attention_heads (`int`, *optional*): - The number of attention heads. If not defined, defaults to `attention_head_dim` - resnet_time_scale_shift (`str`, *optional*, defaults to `"default"`): Time scale shift config - for ResNet blocks (see [`~models.resnet.ResnetBlock2D`]). Choose from `default` or `scale_shift`. - class_embed_type (`str`, *optional*, defaults to `None`): - The type of class embedding to use which is ultimately summed with the time embeddings. Choose from `None`, - `"timestep"`, `"identity"`, `"projection"`, or `"simple_projection"`. - addition_embed_type (`str`, *optional*, defaults to `None`): - Configures an optional embedding which will be summed with the time embeddings. Choose from `None` or - "text". "text" will use the `TextTimeEmbedding` layer. - addition_time_embed_dim: (`int`, *optional*, defaults to `None`): - Dimension for the timestep embeddings. - num_class_embeds (`int`, *optional*, defaults to `None`): - Input dimension of the learnable embedding matrix to be projected to `time_embed_dim`, when performing - class conditioning with `class_embed_type` equal to `None`. - time_embedding_type (`str`, *optional*, defaults to `positional`): - The type of position embedding to use for timesteps. Choose from `positional` or `fourier`. - time_embedding_dim (`int`, *optional*, defaults to `None`): - An optional override for the dimension of the projected time embedding. - time_embedding_act_fn (`str`, *optional*, defaults to `None`): - Optional activation function to use only once on the time embeddings before they are passed to the rest of - the UNet. Choose from `silu`, `mish`, `gelu`, and `swish`. - timestep_post_act (`str`, *optional*, defaults to `None`): - The second activation function to use in timestep embedding. Choose from `silu`, `mish` and `gelu`. - time_cond_proj_dim (`int`, *optional*, defaults to `None`): - The dimension of `cond_proj` layer in the timestep embedding. - conv_in_kernel (`int`, *optional*, default to `3`): The kernel size of `conv_in` layer. - conv_out_kernel (`int`, *optional*, default to `3`): The kernel size of `conv_out` layer. - projection_class_embeddings_input_dim (`int`, *optional*): The dimension of the `class_labels` input when - `class_embed_type="projection"`. Required when `class_embed_type="projection"`. - class_embeddings_concat (`bool`, *optional*, defaults to `False`): Whether to concatenate the time - embeddings with the class embeddings. - mid_block_only_cross_attention (`bool`, *optional*, defaults to `None`): - Whether to use cross attention with the mid block when using the `UNetMidBlock2DSimpleCrossAttn`. If - `only_cross_attention` is given as a single boolean and `mid_block_only_cross_attention` is `None`, the - `only_cross_attention` value is used as the value for `mid_block_only_cross_attention`. Default to `False` - otherwise. - """ - - _supports_gradient_checkpointing = True - - @register_to_config - def __init__( - self, - sample_size: Optional[int] = None, - in_channels: int = 4, - out_channels: int = 4, - center_input_sample: bool = False, - flip_sin_to_cos: bool = True, - freq_shift: int = 0, - down_block_types: Tuple[str] = ( - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "DownBlock2D", - ), - mid_block_type: Optional[str] = "UNetMidBlockMV2DCrossAttn", - up_block_types: Tuple[str] = ("UpBlock2D", "CrossAttnUpBlockMV2D", "CrossAttnUpBlockMV2D", "CrossAttnUpBlockMV2D"), - only_cross_attention: Union[bool, Tuple[bool]] = False, - block_out_channels: Tuple[int] = (320, 640, 1280, 1280), - layers_per_block: Union[int, Tuple[int]] = 2, - downsample_padding: int = 1, - mid_block_scale_factor: float = 1, - act_fn: str = "silu", - norm_num_groups: Optional[int] = 32, - norm_eps: float = 1e-5, - cross_attention_dim: Union[int, Tuple[int]] = 1280, - transformer_layers_per_block: Union[int, Tuple[int]] = 1, - encoder_hid_dim: Optional[int] = None, - encoder_hid_dim_type: Optional[str] = None, - attention_head_dim: Union[int, Tuple[int]] = 8, - num_attention_heads: Optional[Union[int, Tuple[int]]] = None, - dual_cross_attention: bool = False, - use_linear_projection: bool = False, - class_embed_type: Optional[str] = None, - addition_embed_type: Optional[str] = None, - addition_time_embed_dim: Optional[int] = None, - num_class_embeds: Optional[int] = None, - upcast_attention: bool = False, - resnet_time_scale_shift: str = "default", - resnet_skip_time_act: bool = False, - resnet_out_scale_factor: int = 1.0, - time_embedding_type: str = "positional", - time_embedding_dim: Optional[int] = None, - time_embedding_act_fn: Optional[str] = None, - timestep_post_act: Optional[str] = None, - time_cond_proj_dim: Optional[int] = None, - conv_in_kernel: int = 3, - conv_out_kernel: int = 3, - projection_class_embeddings_input_dim: Optional[int] = None, - projection_camera_embeddings_input_dim: Optional[int] = None, - class_embeddings_concat: bool = False, - mid_block_only_cross_attention: Optional[bool] = None, - cross_attention_norm: Optional[str] = None, - addition_embed_type_num_heads=64, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - selfattn_block: str = "custom", - mvcd_attention: bool = False, - regress_elevation: bool = False, - regress_focal_length: bool = False, - num_regress_blocks: int = 4, - use_dino: bool = False, - addition_downsample: bool = False, - addition_channels: Optional[Tuple[int]] = (1280, 1280, 1280), - ): - super().__init__() - - self.sample_size = sample_size - self.num_views = num_views - self.mvcd_attention = mvcd_attention - if num_attention_heads is not None: - raise ValueError( - "At the moment it is not possible to define the number of attention heads via `num_attention_heads` because of a naming issue as described in https://github.com/huggingface/diffusers/issues/2011#issuecomment-1547958131. Passing `num_attention_heads` will only be supported in diffusers v0.19." - ) - - # If `num_attention_heads` is not defined (which is the case for most models) - # it will default to `attention_head_dim`. This looks weird upon first reading it and it is. - # The reason for this behavior is to correct for incorrectly named variables that were introduced - # when this library was created. The incorrect naming was only discovered much later in https://github.com/huggingface/diffusers/issues/2011#issuecomment-1547958131 - # Changing `attention_head_dim` to `num_attention_heads` for 40,000+ configurations is too backwards breaking - # which is why we correct for the naming here. - num_attention_heads = num_attention_heads or attention_head_dim - - # Check inputs - if len(down_block_types) != len(up_block_types): - raise ValueError( - f"Must provide the same number of `down_block_types` as `up_block_types`. `down_block_types`: {down_block_types}. `up_block_types`: {up_block_types}." - ) - - if len(block_out_channels) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `block_out_channels` as `down_block_types`. `block_out_channels`: {block_out_channels}. `down_block_types`: {down_block_types}." - ) - - if not isinstance(only_cross_attention, bool) and len(only_cross_attention) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `only_cross_attention` as `down_block_types`. `only_cross_attention`: {only_cross_attention}. `down_block_types`: {down_block_types}." - ) - - if not isinstance(num_attention_heads, int) and len(num_attention_heads) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `num_attention_heads` as `down_block_types`. `num_attention_heads`: {num_attention_heads}. `down_block_types`: {down_block_types}." - ) - - if not isinstance(attention_head_dim, int) and len(attention_head_dim) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `attention_head_dim` as `down_block_types`. `attention_head_dim`: {attention_head_dim}. `down_block_types`: {down_block_types}." - ) - - if isinstance(cross_attention_dim, list) and len(cross_attention_dim) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `cross_attention_dim` as `down_block_types`. `cross_attention_dim`: {cross_attention_dim}. `down_block_types`: {down_block_types}." - ) - - if not isinstance(layers_per_block, int) and len(layers_per_block) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `layers_per_block` as `down_block_types`. `layers_per_block`: {layers_per_block}. `down_block_types`: {down_block_types}." - ) - - # input - conv_in_padding = (conv_in_kernel - 1) // 2 - self.conv_in = nn.Conv2d( - in_channels, block_out_channels[0], kernel_size=conv_in_kernel, padding=conv_in_padding - ) - - # time - if time_embedding_type == "fourier": - time_embed_dim = time_embedding_dim or block_out_channels[0] * 2 - if time_embed_dim % 2 != 0: - raise ValueError(f"`time_embed_dim` should be divisible by 2, but is {time_embed_dim}.") - self.time_proj = GaussianFourierProjection( - time_embed_dim // 2, set_W_to_weight=False, log=False, flip_sin_to_cos=flip_sin_to_cos - ) - timestep_input_dim = time_embed_dim - elif time_embedding_type == "positional": - time_embed_dim = time_embedding_dim or block_out_channels[0] * 4 - - self.time_proj = Timesteps(block_out_channels[0], flip_sin_to_cos, freq_shift) - timestep_input_dim = block_out_channels[0] - else: - raise ValueError( - f"{time_embedding_type} does not exist. Please make sure to use one of `fourier` or `positional`." - ) - - self.time_embedding = TimestepEmbedding( - timestep_input_dim, - time_embed_dim, - act_fn=act_fn, - post_act_fn=timestep_post_act, - cond_proj_dim=time_cond_proj_dim, - ) - - if encoder_hid_dim_type is None and encoder_hid_dim is not None: - encoder_hid_dim_type = "text_proj" - self.register_to_config(encoder_hid_dim_type=encoder_hid_dim_type) - logger.info("encoder_hid_dim_type defaults to 'text_proj' as `encoder_hid_dim` is defined.") - - if encoder_hid_dim is None and encoder_hid_dim_type is not None: - raise ValueError( - f"`encoder_hid_dim` has to be defined when `encoder_hid_dim_type` is set to {encoder_hid_dim_type}." - ) - - if encoder_hid_dim_type == "text_proj": - self.encoder_hid_proj = nn.Linear(encoder_hid_dim, cross_attention_dim) - elif encoder_hid_dim_type == "text_image_proj": - # image_embed_dim DOESN'T have to be `cross_attention_dim`. To not clutter the __init__ too much - # they are set to `cross_attention_dim` here as this is exactly the required dimension for the currently only use - # case when `addition_embed_type == "text_image_proj"` (Kadinsky 2.1)` - self.encoder_hid_proj = TextImageProjection( - text_embed_dim=encoder_hid_dim, - image_embed_dim=cross_attention_dim, - cross_attention_dim=cross_attention_dim, - ) - elif encoder_hid_dim_type == "image_proj": - # Kandinsky 2.2 - self.encoder_hid_proj = ImageProjection( - image_embed_dim=encoder_hid_dim, - cross_attention_dim=cross_attention_dim, - ) - elif encoder_hid_dim_type is not None: - raise ValueError( - f"encoder_hid_dim_type: {encoder_hid_dim_type} must be None, 'text_proj' or 'text_image_proj'." - ) - else: - self.encoder_hid_proj = None - - # class embedding - if class_embed_type is None and num_class_embeds is not None: - self.class_embedding = nn.Embedding(num_class_embeds, time_embed_dim) - elif class_embed_type == "timestep": - self.class_embedding = TimestepEmbedding(timestep_input_dim, time_embed_dim, act_fn=act_fn) - elif class_embed_type == "identity": - self.class_embedding = nn.Identity(time_embed_dim, time_embed_dim) - elif class_embed_type == "projection": - if projection_class_embeddings_input_dim is None: - raise ValueError( - "`class_embed_type`: 'projection' requires `projection_class_embeddings_input_dim` be set" - ) - # The projection `class_embed_type` is the same as the timestep `class_embed_type` except - # 1. the `class_labels` inputs are not first converted to sinusoidal embeddings - # 2. it projects from an arbitrary input dimension. - # - # Note that `TimestepEmbedding` is quite general, being mainly linear layers and activations. - # When used for embedding actual timesteps, the timesteps are first converted to sinusoidal embeddings. - # As a result, `TimestepEmbedding` can be passed arbitrary vectors. - self.class_embedding = TimestepEmbedding(projection_class_embeddings_input_dim, time_embed_dim) - elif class_embed_type == "simple_projection": - if projection_class_embeddings_input_dim is None: - raise ValueError( - "`class_embed_type`: 'simple_projection' requires `projection_class_embeddings_input_dim` be set" - ) - self.class_embedding = nn.Linear(projection_class_embeddings_input_dim, time_embed_dim) - else: - self.class_embedding = None - - if addition_embed_type == "text": - if encoder_hid_dim is not None: - text_time_embedding_from_dim = encoder_hid_dim - else: - text_time_embedding_from_dim = cross_attention_dim - - self.add_embedding = TextTimeEmbedding( - text_time_embedding_from_dim, time_embed_dim, num_heads=addition_embed_type_num_heads - ) - elif addition_embed_type == "text_image": - # text_embed_dim and image_embed_dim DON'T have to be `cross_attention_dim`. To not clutter the __init__ too much - # they are set to `cross_attention_dim` here as this is exactly the required dimension for the currently only use - # case when `addition_embed_type == "text_image"` (Kadinsky 2.1)` - self.add_embedding = TextImageTimeEmbedding( - text_embed_dim=cross_attention_dim, image_embed_dim=cross_attention_dim, time_embed_dim=time_embed_dim - ) - elif addition_embed_type == "text_time": - self.add_time_proj = Timesteps(addition_time_embed_dim, flip_sin_to_cos, freq_shift) - self.add_embedding = TimestepEmbedding(projection_class_embeddings_input_dim, time_embed_dim) - elif addition_embed_type == "image": - # Kandinsky 2.2 - self.add_embedding = ImageTimeEmbedding(image_embed_dim=encoder_hid_dim, time_embed_dim=time_embed_dim) - elif addition_embed_type == "image_hint": - # Kandinsky 2.2 ControlNet - self.add_embedding = ImageHintTimeEmbedding(image_embed_dim=encoder_hid_dim, time_embed_dim=time_embed_dim) - elif addition_embed_type is not None: - raise ValueError(f"addition_embed_type: {addition_embed_type} must be None, 'text' or 'text_image'.") - - if time_embedding_act_fn is None: - self.time_embed_act = None - else: - self.time_embed_act = get_activation(time_embedding_act_fn) - - self.down_blocks = nn.ModuleList([]) - self.up_blocks = nn.ModuleList([]) - - if isinstance(only_cross_attention, bool): - if mid_block_only_cross_attention is None: - mid_block_only_cross_attention = only_cross_attention - - only_cross_attention = [only_cross_attention] * len(down_block_types) - - if mid_block_only_cross_attention is None: - mid_block_only_cross_attention = False - - if isinstance(num_attention_heads, int): - num_attention_heads = (num_attention_heads,) * len(down_block_types) - - if isinstance(attention_head_dim, int): - attention_head_dim = (attention_head_dim,) * len(down_block_types) - - if isinstance(cross_attention_dim, int): - cross_attention_dim = (cross_attention_dim,) * len(down_block_types) - - if isinstance(layers_per_block, int): - layers_per_block = [layers_per_block] * len(down_block_types) - - if isinstance(transformer_layers_per_block, int): - transformer_layers_per_block = [transformer_layers_per_block] * len(down_block_types) - - if class_embeddings_concat: - # The time embeddings are concatenated with the class embeddings. The dimension of the - # time embeddings passed to the down, middle, and up blocks is twice the dimension of the - # regular time embeddings - blocks_time_embed_dim = time_embed_dim * 2 - else: - blocks_time_embed_dim = time_embed_dim - - # down - output_channel = block_out_channels[0] - for i, down_block_type in enumerate(down_block_types): - input_channel = output_channel - output_channel = block_out_channels[i] - is_final_block = i == len(block_out_channels) - 1 - - down_block = get_down_block( - down_block_type, - num_layers=layers_per_block[i], - transformer_layers_per_block=transformer_layers_per_block[i], - in_channels=input_channel, - out_channels=output_channel, - temb_channels=blocks_time_embed_dim, - add_downsample=not is_final_block, - resnet_eps=norm_eps, - resnet_act_fn=act_fn, - resnet_groups=norm_num_groups, - cross_attention_dim=cross_attention_dim[i], - num_attention_heads=num_attention_heads[i], - downsample_padding=downsample_padding, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention[i], - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - resnet_skip_time_act=resnet_skip_time_act, - resnet_out_scale_factor=resnet_out_scale_factor, - cross_attention_norm=cross_attention_norm, - attention_head_dim=attention_head_dim[i] if attention_head_dim[i] is not None else output_channel, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - selfattn_block=selfattn_block, - mvcd_attention=mvcd_attention, - use_dino=use_dino - ) - self.down_blocks.append(down_block) - - # mid - if mid_block_type == "UNetMidBlock2DCrossAttn": - self.mid_block = UNetMidBlock2DCrossAttn( - transformer_layers_per_block=transformer_layers_per_block[-1], - in_channels=block_out_channels[-1], - temb_channels=blocks_time_embed_dim, - resnet_eps=norm_eps, - resnet_act_fn=act_fn, - output_scale_factor=mid_block_scale_factor, - resnet_time_scale_shift=resnet_time_scale_shift, - cross_attention_dim=cross_attention_dim[-1], - num_attention_heads=num_attention_heads[-1], - resnet_groups=norm_num_groups, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - upcast_attention=upcast_attention, - ) - # custom MV2D attention block - elif mid_block_type == "UNetMidBlockMV2DCrossAttn": - self.mid_block = UNetMidBlockMV2DCrossAttn( - transformer_layers_per_block=transformer_layers_per_block[-1], - in_channels=block_out_channels[-1], - temb_channels=blocks_time_embed_dim, - resnet_eps=norm_eps, - resnet_act_fn=act_fn, - output_scale_factor=mid_block_scale_factor, - resnet_time_scale_shift=resnet_time_scale_shift, - cross_attention_dim=cross_attention_dim[-1], - num_attention_heads=num_attention_heads[-1], - resnet_groups=norm_num_groups, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - upcast_attention=upcast_attention, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - selfattn_block=selfattn_block, - mvcd_attention=mvcd_attention, - use_dino=use_dino - ) - elif mid_block_type == "UNetMidBlock2DSimpleCrossAttn": - self.mid_block = UNetMidBlock2DSimpleCrossAttn( - in_channels=block_out_channels[-1], - temb_channels=blocks_time_embed_dim, - resnet_eps=norm_eps, - resnet_act_fn=act_fn, - output_scale_factor=mid_block_scale_factor, - cross_attention_dim=cross_attention_dim[-1], - attention_head_dim=attention_head_dim[-1], - resnet_groups=norm_num_groups, - resnet_time_scale_shift=resnet_time_scale_shift, - skip_time_act=resnet_skip_time_act, - only_cross_attention=mid_block_only_cross_attention, - cross_attention_norm=cross_attention_norm, - ) - elif mid_block_type is None: - self.mid_block = None - else: - raise ValueError(f"unknown mid_block_type : {mid_block_type}") - - self.addition_downsample = addition_downsample - if self.addition_downsample: - inc = block_out_channels[-1] - self.downsample = nn.MaxPool2d(kernel_size=3, stride=2, padding=1) - self.conv_block = nn.ModuleList() - self.conv_block.append(BasicConvBlock(inc, addition_channels[0], stride=1)) - for dim_ in addition_channels[1:-1]: - self.conv_block.append(BasicConvBlock(dim_, dim_, stride=1)) - self.conv_block.append(BasicConvBlock(dim_, inc)) - self.addition_conv_out = nn.Conv2d(inc, inc, kernel_size=1, bias=False) - nn.init.zeros_(self.addition_conv_out.weight.data) - self.addition_act_out = nn.SiLU() - self.upsample = nn.Upsample(scale_factor=2, mode='bilinear', align_corners=True) - - self.regress_elevation = regress_elevation - self.regress_focal_length = regress_focal_length - if regress_elevation or regress_focal_length: - self.pool = nn.AdaptiveAvgPool2d((1, 1)) - self.camera_embedding = TimestepEmbedding(projection_camera_embeddings_input_dim, time_embed_dim=time_embed_dim) - - regress_in_dim = block_out_channels[-1]*2 if mvcd_attention else block_out_channels - - if regress_elevation: - self.elevation_regressor = ResidualLiner(regress_in_dim, 1, 1280, act=None, num_block=num_regress_blocks) - if regress_focal_length: - self.focal_regressor = ResidualLiner(regress_in_dim, 1, 1280, act=None, num_block=num_regress_blocks) - ''' - self.regress_elevation = regress_elevation - self.regress_focal_length = regress_focal_length - if regress_elevation and (not regress_focal_length): - print("Regressing elevation") - cam_dim = 1 - elif regress_focal_length and (not regress_elevation): - print("Regressing focal length") - cam_dim = 6 - elif regress_elevation and regress_focal_length: - print("Regressing both elevation and focal length") - cam_dim = 7 - else: - cam_dim = 0 - assert projection_camera_embeddings_input_dim == 2*cam_dim, "projection_camera_embeddings_input_dim should be 2*cam_dim" - if regress_elevation or regress_focal_length: - self.elevation_regressor = nn.ModuleList([ - nn.Linear(block_out_channels[-1], 1280), - nn.SiLU(), - nn.Linear(1280, 1280), - nn.SiLU(), - nn.Linear(1280, cam_dim) - ]) - self.pool = nn.AdaptiveAvgPool2d((1, 1)) - self.focal_act = nn.Softmax(dim=-1) - self.camera_embedding = TimestepEmbedding(projection_camera_embeddings_input_dim, time_embed_dim=time_embed_dim) - ''' - - # count how many layers upsample the images - self.num_upsamplers = 0 - - # up - reversed_block_out_channels = list(reversed(block_out_channels)) - reversed_num_attention_heads = list(reversed(num_attention_heads)) - reversed_layers_per_block = list(reversed(layers_per_block)) - reversed_cross_attention_dim = list(reversed(cross_attention_dim)) - reversed_transformer_layers_per_block = list(reversed(transformer_layers_per_block)) - only_cross_attention = list(reversed(only_cross_attention)) - - output_channel = reversed_block_out_channels[0] - for i, up_block_type in enumerate(up_block_types): - is_final_block = i == len(block_out_channels) - 1 - - prev_output_channel = output_channel - output_channel = reversed_block_out_channels[i] - input_channel = reversed_block_out_channels[min(i + 1, len(block_out_channels) - 1)] - - # add upsample block for all BUT final layer - if not is_final_block: - add_upsample = True - self.num_upsamplers += 1 - else: - add_upsample = False - - up_block = get_up_block( - up_block_type, - num_layers=reversed_layers_per_block[i] + 1, - transformer_layers_per_block=reversed_transformer_layers_per_block[i], - in_channels=input_channel, - out_channels=output_channel, - prev_output_channel=prev_output_channel, - temb_channels=blocks_time_embed_dim, - add_upsample=add_upsample, - resnet_eps=norm_eps, - resnet_act_fn=act_fn, - resnet_groups=norm_num_groups, - cross_attention_dim=reversed_cross_attention_dim[i], - num_attention_heads=reversed_num_attention_heads[i], - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention[i], - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - resnet_skip_time_act=resnet_skip_time_act, - resnet_out_scale_factor=resnet_out_scale_factor, - cross_attention_norm=cross_attention_norm, - attention_head_dim=attention_head_dim[i] if attention_head_dim[i] is not None else output_channel, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - selfattn_block=selfattn_block, - mvcd_attention=mvcd_attention, - use_dino=use_dino - ) - self.up_blocks.append(up_block) - prev_output_channel = output_channel - - # out - if norm_num_groups is not None: - self.conv_norm_out = nn.GroupNorm( - num_channels=block_out_channels[0], num_groups=norm_num_groups, eps=norm_eps - ) - - self.conv_act = get_activation(act_fn) - - else: - self.conv_norm_out = None - self.conv_act = None - - conv_out_padding = (conv_out_kernel - 1) // 2 - self.conv_out = nn.Conv2d( - block_out_channels[0], out_channels, kernel_size=conv_out_kernel, padding=conv_out_padding - ) - - @property - def attn_processors(self) -> Dict[str, AttentionProcessor]: - r""" - Returns: - `dict` of attention processors: A dictionary containing all attention processors used in the model with - indexed by its weight name. - """ - # set recursively - processors = {} - - def fn_recursive_add_processors(name: str, module: torch.nn.Module, processors: Dict[str, AttentionProcessor]): - if hasattr(module, "set_processor"): - processors[f"{name}.processor"] = module.processor - - for sub_name, child in module.named_children(): - fn_recursive_add_processors(f"{name}.{sub_name}", child, processors) - - return processors - - for name, module in self.named_children(): - fn_recursive_add_processors(name, module, processors) - - return processors - - def set_attn_processor(self, processor: Union[AttentionProcessor, Dict[str, AttentionProcessor]]): - r""" - Sets the attention processor to use to compute attention. - - Parameters: - processor (`dict` of `AttentionProcessor` or only `AttentionProcessor`): - The instantiated processor class or a dictionary of processor classes that will be set as the processor - for **all** `Attention` layers. - - If `processor` is a dict, the key needs to define the path to the corresponding cross attention - processor. This is strongly recommended when setting trainable attention processors. - - """ - count = len(self.attn_processors.keys()) - - if isinstance(processor, dict) and len(processor) != count: - raise ValueError( - f"A dict of processors was passed, but the number of processors {len(processor)} does not match the" - f" number of attention layers: {count}. Please make sure to pass {count} processor classes." - ) - - def fn_recursive_attn_processor(name: str, module: torch.nn.Module, processor): - if hasattr(module, "set_processor"): - if not isinstance(processor, dict): - module.set_processor(processor) - else: - module.set_processor(processor.pop(f"{name}.processor")) - - for sub_name, child in module.named_children(): - fn_recursive_attn_processor(f"{name}.{sub_name}", child, processor) - - for name, module in self.named_children(): - fn_recursive_attn_processor(name, module, processor) - - def set_default_attn_processor(self): - """ - Disables custom attention processors and sets the default attention implementation. - """ - self.set_attn_processor(AttnProcessor()) - - def set_attention_slice(self, slice_size): - r""" - Enable sliced attention computation. - - When this option is enabled, the attention module splits the input tensor in slices to compute attention in - several steps. This is useful for saving some memory in exchange for a small decrease in speed. - - Args: - slice_size (`str` or `int` or `list(int)`, *optional*, defaults to `"auto"`): - When `"auto"`, input to the attention heads is halved, so attention is computed in two steps. If - `"max"`, maximum amount of memory is saved by running only one slice at a time. If a number is - provided, uses as many slices as `attention_head_dim // slice_size`. In this case, `attention_head_dim` - must be a multiple of `slice_size`. - """ - sliceable_head_dims = [] - - def fn_recursive_retrieve_sliceable_dims(module: torch.nn.Module): - if hasattr(module, "set_attention_slice"): - sliceable_head_dims.append(module.sliceable_head_dim) - - for child in module.children(): - fn_recursive_retrieve_sliceable_dims(child) - - # retrieve number of attention layers - for module in self.children(): - fn_recursive_retrieve_sliceable_dims(module) - - num_sliceable_layers = len(sliceable_head_dims) - - if slice_size == "auto": - # half the attention head size is usually a good trade-off between - # speed and memory - slice_size = [dim // 2 for dim in sliceable_head_dims] - elif slice_size == "max": - # make smallest slice possible - slice_size = num_sliceable_layers * [1] - - slice_size = num_sliceable_layers * [slice_size] if not isinstance(slice_size, list) else slice_size - - if len(slice_size) != len(sliceable_head_dims): - raise ValueError( - f"You have provided {len(slice_size)}, but {self.config} has {len(sliceable_head_dims)} different" - f" attention layers. Make sure to match `len(slice_size)` to be {len(sliceable_head_dims)}." - ) - - for i in range(len(slice_size)): - size = slice_size[i] - dim = sliceable_head_dims[i] - if size is not None and size > dim: - raise ValueError(f"size {size} has to be smaller or equal to {dim}.") - - # Recursively walk through all the children. - # Any children which exposes the set_attention_slice method - # gets the message - def fn_recursive_set_attention_slice(module: torch.nn.Module, slice_size: List[int]): - if hasattr(module, "set_attention_slice"): - module.set_attention_slice(slice_size.pop()) - - for child in module.children(): - fn_recursive_set_attention_slice(child, slice_size) - - reversed_slice_size = list(reversed(slice_size)) - for module in self.children(): - fn_recursive_set_attention_slice(module, reversed_slice_size) - - def _set_gradient_checkpointing(self, module, value=False): - if isinstance(module, (CrossAttnDownBlock2D, CrossAttnDownBlockMV2D, DownBlock2D, CrossAttnUpBlock2D, CrossAttnUpBlockMV2D, UpBlock2D)): - module.gradient_checkpointing = value - - def forward( - self, - sample: torch.FloatTensor, - timestep: Union[torch.Tensor, float, int], - encoder_hidden_states: torch.Tensor, - class_labels: Optional[torch.Tensor] = None, - timestep_cond: Optional[torch.Tensor] = None, - attention_mask: Optional[torch.Tensor] = None, - cross_attention_kwargs: Optional[Dict[str, Any]] = None, - added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None, - down_block_additional_residuals: Optional[Tuple[torch.Tensor]] = None, - mid_block_additional_residual: Optional[torch.Tensor] = None, - encoder_attention_mask: Optional[torch.Tensor] = None, - dino_feature: Optional[torch.Tensor] = None, - return_dict: bool = True, - vis_max_min: bool = False, - ) -> Union[UNetMV2DConditionOutput, Tuple]: - r""" - The [`UNet2DConditionModel`] forward method. - - Args: - sample (`torch.FloatTensor`): - The noisy input tensor with the following shape `(batch, channel, height, width)`. - timestep (`torch.FloatTensor` or `float` or `int`): The number of timesteps to denoise an input. - encoder_hidden_states (`torch.FloatTensor`): - The encoder hidden states with shape `(batch, sequence_length, feature_dim)`. - encoder_attention_mask (`torch.Tensor`): - A cross-attention mask of shape `(batch, sequence_length)` is applied to `encoder_hidden_states`. If - `True` the mask is kept, otherwise if `False` it is discarded. Mask will be converted into a bias, - which adds large negative values to the attention scores corresponding to "discard" tokens. - return_dict (`bool`, *optional*, defaults to `True`): - Whether or not to return a [`~models.unet_2d_condition.UNet2DConditionOutput`] instead of a plain - tuple. - cross_attention_kwargs (`dict`, *optional*): - A kwargs dictionary that if specified is passed along to the [`AttnProcessor`]. - added_cond_kwargs: (`dict`, *optional*): - A kwargs dictionary containin additional embeddings that if specified are added to the embeddings that - are passed along to the UNet blocks. - - Returns: - [`~models.unet_2d_condition.UNet2DConditionOutput`] or `tuple`: - If `return_dict` is True, an [`~models.unet_2d_condition.UNet2DConditionOutput`] is returned, otherwise - a `tuple` is returned where the first element is the sample tensor. - """ - record_max_min = {} - # By default samples have to be AT least a multiple of the overall upsampling factor. - # The overall upsampling factor is equal to 2 ** (# num of upsampling layers). - # However, the upsampling interpolation output size can be forced to fit any upsampling size - # on the fly if necessary. - default_overall_up_factor = 2**self.num_upsamplers - - # upsample size should be forwarded when sample is not a multiple of `default_overall_up_factor` - forward_upsample_size = False - upsample_size = None - - if any(s % default_overall_up_factor != 0 for s in sample.shape[-2:]): - logger.info("Forward upsample size to force interpolation output size.") - forward_upsample_size = True - - # ensure attention_mask is a bias, and give it a singleton query_tokens dimension - # expects mask of shape: - # [batch, key_tokens] - # adds singleton query_tokens dimension: - # [batch, 1, key_tokens] - # this helps to broadcast it as a bias over attention scores, which will be in one of the following shapes: - # [batch, heads, query_tokens, key_tokens] (e.g. torch sdp attn) - # [batch * heads, query_tokens, key_tokens] (e.g. xformers or classic attn) - if attention_mask is not None: - # assume that mask is expressed as: - # (1 = keep, 0 = discard) - # convert mask into a bias that can be added to attention scores: - # (keep = +0, discard = -10000.0) - attention_mask = (1 - attention_mask.to(sample.dtype)) * -10000.0 - attention_mask = attention_mask.unsqueeze(1) - - # convert encoder_attention_mask to a bias the same way we do for attention_mask - if encoder_attention_mask is not None: - encoder_attention_mask = (1 - encoder_attention_mask.to(sample.dtype)) * -10000.0 - encoder_attention_mask = encoder_attention_mask.unsqueeze(1) - - # 0. center input if necessary - if self.config.center_input_sample: - sample = 2 * sample - 1.0 - # 1. time - timesteps = timestep - if not torch.is_tensor(timesteps): - # TODO: this requires sync between CPU and GPU. So try to pass timesteps as tensors if you can - # This would be a good case for the `match` statement (Python 3.10+) - is_mps = sample.device.type == "mps" - if isinstance(timestep, float): - dtype = torch.float32 if is_mps else torch.float64 - else: - dtype = torch.int32 if is_mps else torch.int64 - timesteps = torch.tensor([timesteps], dtype=dtype, device=sample.device) - elif len(timesteps.shape) == 0: - timesteps = timesteps[None].to(sample.device) - - # broadcast to batch dimension in a way that's compatible with ONNX/Core ML - timesteps = timesteps.expand(sample.shape[0]) - - t_emb = self.time_proj(timesteps) - - # `Timesteps` does not contain any weights and will always return f32 tensors - # but time_embedding might actually be running in fp16. so we need to cast here. - # there might be better ways to encapsulate this. - t_emb = t_emb.to(dtype=sample.dtype) - - emb = self.time_embedding(t_emb, timestep_cond) - aug_emb = None - if self.class_embedding is not None: - if class_labels is None: - raise ValueError("class_labels should be provided when num_class_embeds > 0") - - if self.config.class_embed_type == "timestep": - class_labels = self.time_proj(class_labels) - - # `Timesteps` does not contain any weights and will always return f32 tensors - # there might be better ways to encapsulate this. - class_labels = class_labels.to(dtype=sample.dtype) - - class_emb = self.class_embedding(class_labels).to(dtype=sample.dtype) - if self.config.class_embeddings_concat: - emb = torch.cat([emb, class_emb], dim=-1) - else: - emb = emb + class_emb - - if self.config.addition_embed_type == "text": - aug_emb = self.add_embedding(encoder_hidden_states) - elif self.config.addition_embed_type == "text_image": - # Kandinsky 2.1 - style - if "image_embeds" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `addition_embed_type` set to 'text_image' which requires the keyword argument `image_embeds` to be passed in `added_cond_kwargs`" - ) - - image_embs = added_cond_kwargs.get("image_embeds") - text_embs = added_cond_kwargs.get("text_embeds", encoder_hidden_states) - aug_emb = self.add_embedding(text_embs, image_embs) - elif self.config.addition_embed_type == "text_time": - # SDXL - style - if "text_embeds" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `text_embeds` to be passed in `added_cond_kwargs`" - ) - text_embeds = added_cond_kwargs.get("text_embeds") - if "time_ids" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `time_ids` to be passed in `added_cond_kwargs`" - ) - time_ids = added_cond_kwargs.get("time_ids") - time_embeds = self.add_time_proj(time_ids.flatten()) - time_embeds = time_embeds.reshape((text_embeds.shape[0], -1)) - - add_embeds = torch.concat([text_embeds, time_embeds], dim=-1) - add_embeds = add_embeds.to(emb.dtype) - aug_emb = self.add_embedding(add_embeds) - elif self.config.addition_embed_type == "image": - # Kandinsky 2.2 - style - if "image_embeds" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `addition_embed_type` set to 'image' which requires the keyword argument `image_embeds` to be passed in `added_cond_kwargs`" - ) - image_embs = added_cond_kwargs.get("image_embeds") - aug_emb = self.add_embedding(image_embs) - elif self.config.addition_embed_type == "image_hint": - # Kandinsky 2.2 - style - if "image_embeds" not in added_cond_kwargs or "hint" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `addition_embed_type` set to 'image_hint' which requires the keyword arguments `image_embeds` and `hint` to be passed in `added_cond_kwargs`" - ) - image_embs = added_cond_kwargs.get("image_embeds") - hint = added_cond_kwargs.get("hint") - aug_emb, hint = self.add_embedding(image_embs, hint) - sample = torch.cat([sample, hint], dim=1) - - emb = emb + aug_emb if aug_emb is not None else emb - emb_pre_act = emb - if self.time_embed_act is not None: - emb = self.time_embed_act(emb) - - if self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == "text_proj": - encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states) - elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == "text_image_proj": - # Kadinsky 2.1 - style - if "image_embeds" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `encoder_hid_dim_type` set to 'text_image_proj' which requires the keyword argument `image_embeds` to be passed in `added_conditions`" - ) - - image_embeds = added_cond_kwargs.get("image_embeds") - encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states, image_embeds) - elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == "image_proj": - # Kandinsky 2.2 - style - if "image_embeds" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `encoder_hid_dim_type` set to 'image_proj' which requires the keyword argument `image_embeds` to be passed in `added_conditions`" - ) - image_embeds = added_cond_kwargs.get("image_embeds") - encoder_hidden_states = self.encoder_hid_proj(image_embeds) - # 2. pre-process - sample = self.conv_in(sample) - # 3. down - - is_controlnet = mid_block_additional_residual is not None and down_block_additional_residuals is not None - is_adapter = mid_block_additional_residual is None and down_block_additional_residuals is not None - - down_block_res_samples = (sample,) - for i, downsample_block in enumerate(self.down_blocks): - if hasattr(downsample_block, "has_cross_attention") and downsample_block.has_cross_attention: - # For t2i-adapter CrossAttnDownBlock2D - additional_residuals = {} - if is_adapter and len(down_block_additional_residuals) > 0: - additional_residuals["additional_residuals"] = down_block_additional_residuals.pop(0) - - sample, res_samples = downsample_block( - hidden_states=sample, - temb=emb, - encoder_hidden_states=encoder_hidden_states, - dino_feature=dino_feature, - attention_mask=attention_mask, - cross_attention_kwargs=cross_attention_kwargs, - encoder_attention_mask=encoder_attention_mask, - **additional_residuals, - ) - else: - sample, res_samples = downsample_block(hidden_states=sample, temb=emb) - - if is_adapter and len(down_block_additional_residuals) > 0: - sample += down_block_additional_residuals.pop(0) - - down_block_res_samples += res_samples - - if is_controlnet: - new_down_block_res_samples = () - - for down_block_res_sample, down_block_additional_residual in zip( - down_block_res_samples, down_block_additional_residuals - ): - down_block_res_sample = down_block_res_sample + down_block_additional_residual - new_down_block_res_samples = new_down_block_res_samples + (down_block_res_sample,) - - down_block_res_samples = new_down_block_res_samples - - if self.addition_downsample: - global_sample = sample - global_sample = self.downsample(global_sample) - for layer in self.conv_block: - global_sample = layer(global_sample) - global_sample = self.addition_act_out(self.addition_conv_out(global_sample)) - global_sample = self.upsample(global_sample) - # 4. mid - if self.mid_block is not None: - sample = self.mid_block( - sample, - emb, - encoder_hidden_states=encoder_hidden_states, - dino_feature=dino_feature, - attention_mask=attention_mask, - cross_attention_kwargs=cross_attention_kwargs, - encoder_attention_mask=encoder_attention_mask, - ) - # 4.1 regress elevation and focal length - # # predict elevation -> embed -> projection -> add to time emb - if self.regress_elevation or self.regress_focal_length: - pool_embeds = self.pool(sample.detach()).squeeze(-1).squeeze(-1) # (2B, C) - if self.mvcd_attention: - pool_embeds_normal, pool_embeds_color = torch.chunk(pool_embeds, 2, dim=0) - pool_embeds = torch.cat([pool_embeds_normal, pool_embeds_color], dim=-1) # (B, 2C) - pose_pred = [] - if self.regress_elevation: - ele_pred = self.elevation_regressor(pool_embeds) - ele_pred = rearrange(ele_pred, '(b v) c -> b v c', v=self.num_views) - ele_pred = torch.mean(ele_pred, dim=1) - pose_pred.append(ele_pred) # b, c - - if self.regress_focal_length: - focal_pred = self.focal_regressor(pool_embeds) - focal_pred = rearrange(focal_pred, '(b v) c -> b v c', v=self.num_views) - focal_pred = torch.mean(focal_pred, dim=1) - pose_pred.append(focal_pred) - pose_pred = torch.cat(pose_pred, dim=-1) - # 'e_de_da_sincos', (B, 2) - pose_embeds = torch.cat([ - torch.sin(pose_pred), - torch.cos(pose_pred) - ], dim=-1) - pose_embeds = self.camera_embedding(pose_embeds) - pose_embeds = torch.repeat_interleave(pose_embeds, self.num_views, 0) - if self.mvcd_attention: - pose_embeds = torch.cat([pose_embeds,] * 2, dim=0) - - emb = pose_embeds + emb_pre_act - if self.time_embed_act is not None: - emb = self.time_embed_act(emb) - - if is_controlnet: - sample = sample + mid_block_additional_residual - - if self.addition_downsample: - sample = sample + global_sample - - # 5. up - for i, upsample_block in enumerate(self.up_blocks): - is_final_block = i == len(self.up_blocks) - 1 - - res_samples = down_block_res_samples[-len(upsample_block.resnets) :] - down_block_res_samples = down_block_res_samples[: -len(upsample_block.resnets)] - - # if we have not reached the final block and need to forward the - # upsample size, we do it here - if not is_final_block and forward_upsample_size: - upsample_size = down_block_res_samples[-1].shape[2:] - - if hasattr(upsample_block, "has_cross_attention") and upsample_block.has_cross_attention: - sample = upsample_block( - hidden_states=sample, - temb=emb, - res_hidden_states_tuple=res_samples, - encoder_hidden_states=encoder_hidden_states, - dino_feature=dino_feature, - cross_attention_kwargs=cross_attention_kwargs, - upsample_size=upsample_size, - attention_mask=attention_mask, - encoder_attention_mask=encoder_attention_mask, - ) - else: - sample = upsample_block( - hidden_states=sample, temb=emb, res_hidden_states_tuple=res_samples, upsample_size=upsample_size - ) - if torch.isnan(sample).any() or torch.isinf(sample).any(): - print("NAN in sample, stop training.") - exit() - # 6. post-process - if self.conv_norm_out: - sample = self.conv_norm_out(sample) - sample = self.conv_act(sample) - sample = self.conv_out(sample) - if not return_dict: - return (sample, pose_pred) - if self.regress_elevation or self.regress_focal_length: - return UNetMV2DConditionOutput(sample=sample), pose_pred - else: - return UNetMV2DConditionOutput(sample=sample) - - - @classmethod - def from_pretrained_2d( - cls, pretrained_model_name_or_path: Optional[Union[str, os.PathLike]], - camera_embedding_type: str, num_views: int, sample_size: int, - zero_init_conv_in: bool = True, zero_init_camera_projection: bool = False, - projection_camera_embeddings_input_dim: int=2, - cd_attention_last: bool = False, num_regress_blocks: int = 4, - cd_attention_mid: bool = False, multiview_attention: bool = True, - sparse_mv_attention: bool = False, selfattn_block: str = 'custom', mvcd_attention: bool = False, - in_channels: int = 8, out_channels: int = 4, unclip: bool = False, regress_elevation: bool = False, regress_focal_length: bool = False, - init_mvattn_with_selfattn: bool= False, use_dino: bool = False, addition_downsample: bool = False, - **kwargs - ): - r""" - Instantiate a pretrained PyTorch model from a pretrained model configuration. - - The model is set in evaluation mode - `model.eval()` - by default, and dropout modules are deactivated. To - train the model, set it back in training mode with `model.train()`. - - Parameters: - pretrained_model_name_or_path (`str` or `os.PathLike`, *optional*): - Can be either: - - - A string, the *model id* (for example `google/ddpm-celebahq-256`) of a pretrained model hosted on - the Hub. - - A path to a *directory* (for example `./my_model_directory`) containing the model weights saved - with [`~ModelMixin.save_pretrained`]. - - cache_dir (`Union[str, os.PathLike]`, *optional*): - Path to a directory where a downloaded pretrained model configuration is cached if the standard cache - is not used. - torch_dtype (`str` or `torch.dtype`, *optional*): - Override the default `torch.dtype` and load the model with another dtype. If `"auto"` is passed, the - dtype is automatically derived from the model's weights. - force_download (`bool`, *optional*, defaults to `False`): - Whether or not to force the (re-)download of the model weights and configuration files, overriding the - cached versions if they exist. - resume_download (`bool`, *optional*, defaults to `False`): - Whether or not to resume downloading the model weights and configuration files. If set to `False`, any - incompletely downloaded files are deleted. - proxies (`Dict[str, str]`, *optional*): - A dictionary of proxy servers to use by protocol or endpoint, for example, `{'http': 'foo.bar:3128', - 'http://hostname': 'foo.bar:4012'}`. The proxies are used on each request. - output_loading_info (`bool`, *optional*, defaults to `False`): - Whether or not to also return a dictionary containing missing keys, unexpected keys and error messages. - local_files_only(`bool`, *optional*, defaults to `False`): - Whether to only load local model weights and configuration files or not. If set to `True`, the model - won't be downloaded from the Hub. - use_auth_token (`str` or *bool*, *optional*): - The token to use as HTTP bearer authorization for remote files. If `True`, the token generated from - `diffusers-cli login` (stored in `~/.huggingface`) is used. - revision (`str`, *optional*, defaults to `"main"`): - The specific model version to use. It can be a branch name, a tag name, a commit id, or any identifier - allowed by Git. - from_flax (`bool`, *optional*, defaults to `False`): - Load the model weights from a Flax checkpoint save file. - subfolder (`str`, *optional*, defaults to `""`): - The subfolder location of a model file within a larger model repository on the Hub or locally. - mirror (`str`, *optional*): - Mirror source to resolve accessibility issues if you're downloading a model in China. We do not - guarantee the timeliness or safety of the source, and you should refer to the mirror site for more - information. - device_map (`str` or `Dict[str, Union[int, str, torch.device]]`, *optional*): - A map that specifies where each submodule should go. It doesn't need to be defined for each - parameter/buffer name; once a given module name is inside, every submodule of it will be sent to the - same device. - - Set `device_map="auto"` to have 🤗 Accelerate automatically compute the most optimized `device_map`. For - more information about each option see [designing a device - map](https://hf.co/docs/accelerate/main/en/usage_guides/big_modeling#designing-a-device-map). - max_memory (`Dict`, *optional*): - A dictionary device identifier for the maximum memory. Will default to the maximum memory available for - each GPU and the available CPU RAM if unset. - offload_folder (`str` or `os.PathLike`, *optional*): - The path to offload weights if `device_map` contains the value `"disk"`. - offload_state_dict (`bool`, *optional*): - If `True`, temporarily offloads the CPU state dict to the hard drive to avoid running out of CPU RAM if - the weight of the CPU state dict + the biggest shard of the checkpoint does not fit. Defaults to `True` - when there is some disk offload. - low_cpu_mem_usage (`bool`, *optional*, defaults to `True` if torch version >= 1.9.0 else `False`): - Speed up model loading only loading the pretrained weights and not initializing the weights. This also - tries to not use more than 1x model size in CPU memory (including peak memory) while loading the model. - Only supported for PyTorch >= 1.9.0. If you are using an older version of PyTorch, setting this - argument to `True` will raise an error. - variant (`str`, *optional*): - Load weights from a specified `variant` filename such as `"fp16"` or `"ema"`. This is ignored when - loading `from_flax`. - use_safetensors (`bool`, *optional*, defaults to `None`): - If set to `None`, the `safetensors` weights are downloaded if they're available **and** if the - `safetensors` library is installed. If set to `True`, the model is forcibly loaded from `safetensors` - weights. If set to `False`, `safetensors` weights are not loaded. - - - - To use private or [gated models](https://huggingface.co/docs/hub/models-gated#gated-models), log-in with - `huggingface-cli login`. You can also activate the special - ["offline-mode"](https://huggingface.co/diffusers/installation.html#offline-mode) to use this method in a - firewalled environment. - - - - Example: - - ```py - from diffusers import UNet2DConditionModel - - unet = UNet2DConditionModel.from_pretrained("runwayml/stable-diffusion-v1-5", subfolder="unet") - ``` - - If you get the error message below, you need to finetune the weights for your downstream task: - - ```bash - Some weights of UNet2DConditionModel were not initialized from the model checkpoint at runwayml/stable-diffusion-v1-5 and are newly initialized because the shapes did not match: - - conv_in.weight: found shape torch.Size([320, 4, 3, 3]) in the checkpoint and torch.Size([320, 9, 3, 3]) in the model instantiated - You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference. - ``` - """ - cache_dir = kwargs.pop("cache_dir", DIFFUSERS_CACHE) - ignore_mismatched_sizes = kwargs.pop("ignore_mismatched_sizes", False) - force_download = kwargs.pop("force_download", False) - from_flax = kwargs.pop("from_flax", False) - resume_download = kwargs.pop("resume_download", False) - proxies = kwargs.pop("proxies", None) - output_loading_info = kwargs.pop("output_loading_info", False) - local_files_only = kwargs.pop("local_files_only", HF_HUB_OFFLINE) - use_auth_token = kwargs.pop("use_auth_token", None) - revision = kwargs.pop("revision", None) - torch_dtype = kwargs.pop("torch_dtype", None) - subfolder = kwargs.pop("subfolder", None) - device_map = kwargs.pop("device_map", None) - max_memory = kwargs.pop("max_memory", None) - offload_folder = kwargs.pop("offload_folder", None) - offload_state_dict = kwargs.pop("offload_state_dict", False) - variant = kwargs.pop("variant", None) - use_safetensors = kwargs.pop("use_safetensors", None) - - if use_safetensors: - raise ValueError( - "`use_safetensors`=True but safetensors is not installed. Please install safetensors with `pip install safetensors" - ) - - allow_pickle = False - if use_safetensors is None: - use_safetensors = True - allow_pickle = True - - if device_map is not None and not is_accelerate_available(): - raise NotImplementedError( - "Loading and dispatching requires `accelerate`. Please make sure to install accelerate or set" - " `device_map=None`. You can install accelerate with `pip install accelerate`." - ) - - # Check if we can handle device_map and dispatching the weights - if device_map is not None and not is_torch_version(">=", "1.9.0"): - raise NotImplementedError( - "Loading and dispatching requires torch >= 1.9.0. Please either update your PyTorch version or set" - " `device_map=None`." - ) - - # Load config if we don't provide a configuration - config_path = pretrained_model_name_or_path - - user_agent = { - "diffusers": __version__, - "file_type": "model", - "framework": "pytorch", - } - - # load config - config, unused_kwargs, commit_hash = cls.load_config( - config_path, - cache_dir=cache_dir, - return_unused_kwargs=True, - return_commit_hash=True, - force_download=force_download, - resume_download=resume_download, - proxies=proxies, - local_files_only=local_files_only, - use_auth_token=use_auth_token, - revision=revision, - subfolder=subfolder, - device_map=device_map, - max_memory=max_memory, - offload_folder=offload_folder, - offload_state_dict=offload_state_dict, - user_agent=user_agent, - **kwargs, - ) - - # modify config - config["_class_name"] = cls.__name__ - config['in_channels'] = in_channels - config['out_channels'] = out_channels - config['sample_size'] = sample_size # training resolution - config['num_views'] = num_views - config['cd_attention_last'] = cd_attention_last - config['cd_attention_mid'] = cd_attention_mid - config['multiview_attention'] = multiview_attention - config['sparse_mv_attention'] = sparse_mv_attention - config['selfattn_block'] = selfattn_block - config['mvcd_attention'] = mvcd_attention - config["down_block_types"] = [ - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "DownBlock2D" - ] - config['mid_block_type'] = "UNetMidBlockMV2DCrossAttn" - config["up_block_types"] = [ - "UpBlock2D", - "CrossAttnUpBlockMV2D", - "CrossAttnUpBlockMV2D", - "CrossAttnUpBlockMV2D" - ] - - - config['regress_elevation'] = regress_elevation # true - config['regress_focal_length'] = regress_focal_length # true - config['projection_camera_embeddings_input_dim'] = projection_camera_embeddings_input_dim # 2 for elevation and 10 for focal_length - config['use_dino'] = use_dino - config['num_regress_blocks'] = num_regress_blocks - config['addition_downsample'] = addition_downsample - # load model - model_file = None - if from_flax: - raise NotImplementedError - else: - if use_safetensors: - try: - model_file = _get_model_file( - pretrained_model_name_or_path, - weights_name=_add_variant(SAFETENSORS_WEIGHTS_NAME, variant), - cache_dir=cache_dir, - force_download=force_download, - resume_download=resume_download, - proxies=proxies, - local_files_only=local_files_only, - use_auth_token=use_auth_token, - revision=revision, - subfolder=subfolder, - user_agent=user_agent, - commit_hash=commit_hash, - ) - except IOError as e: - if not allow_pickle: - raise e - pass - if model_file is None: - model_file = _get_model_file( - pretrained_model_name_or_path, - weights_name=_add_variant(WEIGHTS_NAME, variant), - cache_dir=cache_dir, - force_download=force_download, - resume_download=resume_download, - proxies=proxies, - local_files_only=local_files_only, - use_auth_token=use_auth_token, - revision=revision, - subfolder=subfolder, - user_agent=user_agent, - commit_hash=commit_hash, - ) - - model = cls.from_config(config, **unused_kwargs) - import copy - state_dict_pretrain = load_state_dict(model_file, variant=variant) - state_dict = copy.deepcopy(state_dict_pretrain) - - if init_mvattn_with_selfattn: - for key in state_dict_pretrain: - if 'attn1' in key: - key_mv = key.replace('attn1', 'attn_mv') - state_dict[key_mv] = state_dict_pretrain[key] - if 'to_out.0.weight' in key: - nn.init.zeros_(state_dict[key_mv].data) - if 'transformer_blocks' in key and 'norm1' in key: # in case that initialize the norm layer in resnet block - key_mv = key.replace('norm1', 'norm_mv') - state_dict[key_mv] = state_dict_pretrain[key] - # del state_dict_pretrain - - model._convert_deprecated_attention_blocks(state_dict) - - conv_in_weight = state_dict['conv_in.weight'] - conv_out_weight = state_dict['conv_out.weight'] - model, missing_keys, unexpected_keys, mismatched_keys, error_msgs = cls._load_pretrained_model_2d( - model, - state_dict, - model_file, - pretrained_model_name_or_path, - ignore_mismatched_sizes=True, - ) - if any([key == 'conv_in.weight' for key, _, _ in mismatched_keys]): - # initialize from the original SD structure - model.conv_in.weight.data[:,:4] = conv_in_weight - - # whether to place all zero to new layers? - if zero_init_conv_in: - model.conv_in.weight.data[:,4:] = 0. - - if any([key == 'conv_out.weight' for key, _, _ in mismatched_keys]): - # initialize from the original SD structure - model.conv_out.weight.data[:,:4] = conv_out_weight - if out_channels == 8: # copy for the last 4 channels - model.conv_out.weight.data[:, 4:] = conv_out_weight - - if zero_init_camera_projection: # true - params = [p for p in model.camera_embedding.parameters()] - torch.nn.init.zeros_(params[-1].data) - - loading_info = { - "missing_keys": missing_keys, - "unexpected_keys": unexpected_keys, - "mismatched_keys": mismatched_keys, - "error_msgs": error_msgs, - } - - if torch_dtype is not None and not isinstance(torch_dtype, torch.dtype): - raise ValueError( - f"{torch_dtype} needs to be of type `torch.dtype`, e.g. `torch.float16`, but is {type(torch_dtype)}." - ) - elif torch_dtype is not None: - model = model.to(torch_dtype) - - model.register_to_config(_name_or_path=pretrained_model_name_or_path) - - # Set model in evaluation mode to deactivate DropOut modules by default - model.eval() - if output_loading_info: - return model, loading_info - return model - - @classmethod - def _load_pretrained_model_2d( - cls, - model, - state_dict, - resolved_archive_file, - pretrained_model_name_or_path, - ignore_mismatched_sizes=False, - ): - # Retrieve missing & unexpected_keys - model_state_dict = model.state_dict() - loaded_keys = list(state_dict.keys()) - - expected_keys = list(model_state_dict.keys()) - - original_loaded_keys = loaded_keys - - missing_keys = list(set(expected_keys) - set(loaded_keys)) - unexpected_keys = list(set(loaded_keys) - set(expected_keys)) - - # Make sure we are able to load base models as well as derived models (with heads) - model_to_load = model - - def _find_mismatched_keys( - state_dict, - model_state_dict, - loaded_keys, - ignore_mismatched_sizes, - ): - mismatched_keys = [] - if ignore_mismatched_sizes: - for checkpoint_key in loaded_keys: - model_key = checkpoint_key - - if ( - model_key in model_state_dict - and state_dict[checkpoint_key].shape != model_state_dict[model_key].shape - ): - mismatched_keys.append( - (checkpoint_key, state_dict[checkpoint_key].shape, model_state_dict[model_key].shape) - ) - del state_dict[checkpoint_key] - return mismatched_keys - - if state_dict is not None: - # Whole checkpoint - mismatched_keys = _find_mismatched_keys( - state_dict, - model_state_dict, - original_loaded_keys, - ignore_mismatched_sizes, - ) - error_msgs = _load_state_dict_into_model(model_to_load, state_dict) - - if len(error_msgs) > 0: - error_msg = "\n\t".join(error_msgs) - if "size mismatch" in error_msg: - error_msg += ( - "\n\tYou may consider adding `ignore_mismatched_sizes=True` in the model `from_pretrained` method." - ) - raise RuntimeError(f"Error(s) in loading state_dict for {model.__class__.__name__}:\n\t{error_msg}") - - if len(unexpected_keys) > 0: - logger.warning( - f"Some weights of the model checkpoint at {pretrained_model_name_or_path} were not used when" - f" initializing {model.__class__.__name__}: {unexpected_keys}\n- This IS expected if you are" - f" initializing {model.__class__.__name__} from the checkpoint of a model trained on another task" - " or with another architecture (e.g. initializing a BertForSequenceClassification model from a" - " BertForPreTraining model).\n- This IS NOT expected if you are initializing" - f" {model.__class__.__name__} from the checkpoint of a model that you expect to be exactly" - " identical (initializing a BertForSequenceClassification model from a" - " BertForSequenceClassification model)." - ) - else: - logger.info(f"All model checkpoint weights were used when initializing {model.__class__.__name__}.\n") - if len(missing_keys) > 0: - logger.warning( - f"Some weights of {model.__class__.__name__} were not initialized from the model checkpoint at" - f" {pretrained_model_name_or_path} and are newly initialized: {missing_keys}\nYou should probably" - " TRAIN this model on a down-stream task to be able to use it for predictions and inference." - ) - elif len(mismatched_keys) == 0: - logger.info( - f"All the weights of {model.__class__.__name__} were initialized from the model checkpoint at" - f" {pretrained_model_name_or_path}.\nIf your task is similar to the task the model of the" - f" checkpoint was trained on, you can already use {model.__class__.__name__} for predictions" - " without further training." - ) - if len(mismatched_keys) > 0: - mismatched_warning = "\n".join( - [ - f"- {key}: found shape {shape1} in the checkpoint and {shape2} in the model instantiated" - for key, shape1, shape2 in mismatched_keys - ] - ) - logger.warning( - f"Some weights of {model.__class__.__name__} were not initialized from the model checkpoint at" - f" {pretrained_model_name_or_path} and are newly initialized because the shapes did not" - f" match:\n{mismatched_warning}\nYou should probably TRAIN this model on a down-stream task to be" - " able to use it for predictions and inference." - ) - - return model, missing_keys, unexpected_keys, mismatched_keys, error_msgs - diff --git a/era3d/mvdiffusion/pipelines/pipeline_mvdiffusion_unclip.py b/era3d/mvdiffusion/pipelines/pipeline_mvdiffusion_unclip.py deleted file mode 100644 index c465393..0000000 --- a/era3d/mvdiffusion/pipelines/pipeline_mvdiffusion_unclip.py +++ /dev/null @@ -1,637 +0,0 @@ -import inspect -import warnings -from typing import Callable, List, Optional, Union, Dict, Any -import PIL -import torch -from packaging import version -from transformers import CLIPImageProcessor, CLIPVisionModelWithProjection, CLIPFeatureExtractor, CLIPTokenizer, CLIPTextModel -from diffusers.utils.import_utils import is_accelerate_available -from diffusers.configuration_utils import FrozenDict -from diffusers.image_processor import VaeImageProcessor -from diffusers.models import AutoencoderKL, UNet2DConditionModel -from diffusers.models.embeddings import get_timestep_embedding -from diffusers.schedulers import KarrasDiffusionSchedulers -from diffusers.utils import deprecate, logging -from diffusers.utils.torch_utils import randn_tensor -from diffusers.pipelines.pipeline_utils import DiffusionPipeline, ImagePipelineOutput -from diffusers.pipelines.stable_diffusion.stable_unclip_image_normalizer import StableUnCLIPImageNormalizer -import os -import torchvision.transforms.functional as TF -from einops import rearrange -import comfy.utils -logger = logging.get_logger(__name__) - -class StableUnCLIPImg2ImgPipeline(DiffusionPipeline): - """ - Pipeline for text-guided image to image generation using stable unCLIP. - - This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the - library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.) - - Args: - feature_extractor ([`CLIPFeatureExtractor`]): - Feature extractor for image pre-processing before being encoded. - image_encoder ([`CLIPVisionModelWithProjection`]): - CLIP vision model for encoding images. - image_normalizer ([`StableUnCLIPImageNormalizer`]): - Used to normalize the predicted image embeddings before the noise is applied and un-normalize the image - embeddings after the noise has been applied. - image_noising_scheduler ([`KarrasDiffusionSchedulers`]): - Noise schedule for adding noise to the predicted image embeddings. The amount of noise to add is determined - by `noise_level` in `StableUnCLIPPipeline.__call__`. - tokenizer (`CLIPTokenizer`): - Tokenizer of class - [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer). - text_encoder ([`CLIPTextModel`]): - Frozen text-encoder. - unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents. - scheduler ([`KarrasDiffusionSchedulers`]): - A scheduler to be used in combination with `unet` to denoise the encoded image latents. - vae ([`AutoencoderKL`]): - Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations. - """ - # image encoding components - feature_extractor: CLIPFeatureExtractor - image_encoder: CLIPVisionModelWithProjection - # image noising components - image_normalizer: StableUnCLIPImageNormalizer - image_noising_scheduler: KarrasDiffusionSchedulers - # regular denoising components - tokenizer: CLIPTokenizer - text_encoder: CLIPTextModel - unet: UNet2DConditionModel - scheduler: KarrasDiffusionSchedulers - vae: AutoencoderKL - - def __init__( - self, - # image encoding components - feature_extractor: CLIPFeatureExtractor, - image_encoder: CLIPVisionModelWithProjection, - # image noising components - image_normalizer: StableUnCLIPImageNormalizer, - image_noising_scheduler: KarrasDiffusionSchedulers, - # regular denoising components - tokenizer: CLIPTokenizer, - text_encoder: CLIPTextModel, - unet: UNet2DConditionModel, - scheduler: KarrasDiffusionSchedulers, - # vae - vae: AutoencoderKL, - num_views: int = 4, - ): - super().__init__() - - self.register_modules( - feature_extractor=feature_extractor, - image_encoder=image_encoder, - image_normalizer=image_normalizer, - image_noising_scheduler=image_noising_scheduler, - tokenizer=tokenizer, - text_encoder=text_encoder, - unet=unet, - scheduler=scheduler, - vae=vae, - ) - self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1) - self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor) - self.num_views: int = num_views - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_slicing - def enable_vae_slicing(self): - r""" - Enable sliced VAE decoding. - - When this option is enabled, the VAE will split the input tensor in slices to compute decoding in several - steps. This is useful to save some memory and allow larger batch sizes. - """ - self.vae.enable_slicing() - - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_slicing - def disable_vae_slicing(self): - r""" - Disable sliced VAE decoding. If `enable_vae_slicing` was previously invoked, this method will go back to - computing decoding in one step. - """ - self.vae.disable_slicing() - - def enable_sequential_cpu_offload(self, gpu_id=0): - r""" - Offloads all models to CPU using accelerate, significantly reducing memory usage. When called, the pipeline's - models have their state dicts saved to CPU and then are moved to a `torch.device('meta') and loaded to GPU only - when their specific submodule has its `forward` method called. - """ - if is_accelerate_available(): - from accelerate import cpu_offload - else: - raise ImportError("Please install accelerate via `pip install accelerate`") - - device = torch.device(f"cuda:{gpu_id}") - - # TODO: self.image_normalizer.{scale,unscale} are not covered by the offload hooks, so they fails if added to the list - models = [ - self.image_encoder, - self.text_encoder, - self.unet, - self.vae, - ] - for cpu_offloaded_model in models: - if cpu_offloaded_model is not None: - cpu_offload(cpu_offloaded_model, device) - - @property - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline._execution_device - def _execution_device(self): - r""" - Returns the device on which the pipeline's models will be executed. After calling - `pipeline.enable_sequential_cpu_offload()` the execution device can only be inferred from Accelerate's module - hooks. - """ - if not hasattr(self.unet, "_hf_hook"): - return self.device - for module in self.unet.modules(): - if ( - hasattr(module, "_hf_hook") - and hasattr(module._hf_hook, "execution_device") - and module._hf_hook.execution_device is not None - ): - return torch.device(module._hf_hook.execution_device) - return self.device - - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline._encode_prompt - def _encode_prompt( - self, - prompt, - device, - num_images_per_prompt, - do_classifier_free_guidance, - negative_prompt=None, - prompt_embeds: Optional[torch.FloatTensor] = None, - negative_prompt_embeds: Optional[torch.FloatTensor] = None, - lora_scale: Optional[float] = None, - ): - r""" - Encodes the prompt into text encoder hidden states. - - Args: - prompt (`str` or `List[str]`, *optional*): - prompt to be encoded - device: (`torch.device`): - torch device - num_images_per_prompt (`int`): - number of images that should be generated per prompt - do_classifier_free_guidance (`bool`): - whether to use classifier free guidance or not - negative_prompt (`str` or `List[str]`, *optional*): - The prompt or prompts not to guide the image generation. If not defined, one has to pass - `negative_prompt_embeds`. instead. If not defined, one has to pass `negative_prompt_embeds`. instead. - Ignored when not using guidance (i.e., ignored if `guidance_scale` is less than `1`). - prompt_embeds (`torch.FloatTensor`, *optional*): - Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not - provided, text embeddings will be generated from `prompt` input argument. - negative_prompt_embeds (`torch.FloatTensor`, *optional*): - Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt - weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input - argument. - """ - prompt_embeds = prompt_embeds.to(dtype=self.text_encoder.dtype, device=device) - - if do_classifier_free_guidance: - # For classifier free guidance, we need to do two forward passes. - # Here we concatenate the unconditional and text embeddings into a single batch - # to avoid doing two forward passes - normal_prompt_embeds, color_prompt_embeds = torch.chunk(prompt_embeds, 2, dim=0) - - prompt_embeds = torch.cat([normal_prompt_embeds, normal_prompt_embeds, color_prompt_embeds, color_prompt_embeds], 0) - - return prompt_embeds - - def _encode_image( - self, - image_pil, - device, - num_images_per_prompt, - do_classifier_free_guidance, - noise_level: int=0, - generator: Optional[torch.Generator] = None - ): - dtype = next(self.image_encoder.parameters()).dtype - # ______________________________clip image embedding______________________________ - image = self.feature_extractor(images=image_pil, return_tensors="pt").pixel_values - image = image.to(device=device, dtype=dtype) - image_embeds = self.image_encoder(image).image_embeds - - image_embeds = self.noise_image_embeddings( - image_embeds=image_embeds, - noise_level=noise_level, - generator=generator, - ) - # duplicate image embeddings for each generation per prompt, using mps friendly method - # image_embeds = image_embeds.unsqueeze(1) - # note: the condition input is same - image_embeds = image_embeds.repeat(num_images_per_prompt, 1) - - if do_classifier_free_guidance: - normal_image_embeds, color_image_embeds = torch.chunk(image_embeds, 2, dim=0) - negative_prompt_embeds = torch.zeros_like(normal_image_embeds) - - # For classifier free guidance, we need to do two forward passes. - # Here we concatenate the unconditional and text embeddings into a single batch - # to avoid doing two forward passes - image_embeds = torch.cat([negative_prompt_embeds, normal_image_embeds, negative_prompt_embeds, color_image_embeds], 0) - - # _____________________________vae input latents__________________________________________________ - image_pt = torch.stack([TF.to_tensor(img) for img in image_pil], dim=0).to(device) - image_pt = image_pt * 2.0 - 1.0 - image_latents = self.vae.encode(image_pt).latent_dist.mode() * self.vae.config.scaling_factor - # Note: repeat differently from official pipelines - image_latents = image_latents.repeat(num_images_per_prompt, 1, 1, 1) - - if do_classifier_free_guidance: - normal_image_latents, color_image_latents = torch.chunk(image_latents, 2, dim=0) - image_latents = torch.cat([torch.zeros_like(normal_image_latents), normal_image_latents, - torch.zeros_like(color_image_latents), color_image_latents], 0) - - return image_embeds, image_latents - - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.decode_latents - def decode_latents(self, latents): - latents = 1 / self.vae.config.scaling_factor * latents - image = self.vae.decode(latents).sample - image = (image / 2 + 0.5).clamp(0, 1) - # we always cast to float32 as this does not cause significant overhead and is compatible with bfloat16 - image = image.cpu().permute(0, 2, 3, 1).float().numpy() - return image - - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs - def prepare_extra_step_kwargs(self, generator, eta): - # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature - # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers. - # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502 - # and should be between [0, 1] - - accepts_eta = "eta" in set(inspect.signature(self.scheduler.step).parameters.keys()) - extra_step_kwargs = {} - if accepts_eta: - extra_step_kwargs["eta"] = eta - - # check if the scheduler accepts generator - accepts_generator = "generator" in set(inspect.signature(self.scheduler.step).parameters.keys()) - if accepts_generator: - extra_step_kwargs["generator"] = generator - return extra_step_kwargs - - def check_inputs( - self, - prompt, - image, - height, - width, - callback_steps, - noise_level, - ): - if height % 8 != 0 or width % 8 != 0: - raise ValueError(f"`height` and `width` have to be divisible by 8 but are {height} and {width}.") - - if (callback_steps is None) or ( - callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0) - ): - raise ValueError( - f"`callback_steps` has to be a positive integer but is {callback_steps} of type" - f" {type(callback_steps)}." - ) - - if prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)): - raise ValueError(f"`prompt` has to be of type `str` or `list` but is {type(prompt)}") - - - if noise_level < 0 or noise_level >= self.image_noising_scheduler.config.num_train_timesteps: - raise ValueError( - f"`noise_level` must be between 0 and {self.image_noising_scheduler.config.num_train_timesteps - 1}, inclusive." - ) - - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents - def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None): - shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor) - if isinstance(generator, list) and len(generator) != batch_size: - raise ValueError( - f"You have passed a list of generators of length {len(generator)}, but requested an effective batch" - f" size of {batch_size}. Make sure the batch size matches the length of the generators." - ) - - if latents is None: - latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype) - else: - latents = latents.to(device) - - # scale the initial noise by the standard deviation required by the scheduler - latents = latents * self.scheduler.init_noise_sigma - return latents - - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_unclip.StableUnCLIPPipeline.noise_image_embeddings - def noise_image_embeddings( - self, - image_embeds: torch.Tensor, - noise_level: int, - noise: Optional[torch.FloatTensor] = None, - generator: Optional[torch.Generator] = None, - ): - """ - Add noise to the image embeddings. The amount of noise is controlled by a `noise_level` input. A higher - `noise_level` increases the variance in the final un-noised images. - - The noise is applied in two ways - 1. A noise schedule is applied directly to the embeddings - 2. A vector of sinusoidal time embeddings are appended to the output. - - In both cases, the amount of noise is controlled by the same `noise_level`. - - The embeddings are normalized before the noise is applied and un-normalized after the noise is applied. - """ - if noise is None: - noise = randn_tensor( - image_embeds.shape, generator=generator, device=image_embeds.device, dtype=image_embeds.dtype - ) - - noise_level = torch.tensor([noise_level] * image_embeds.shape[0], device=image_embeds.device) - - image_embeds = self.image_normalizer.scale(image_embeds) - - image_embeds = self.image_noising_scheduler.add_noise(image_embeds, timesteps=noise_level, noise=noise) - - image_embeds = self.image_normalizer.unscale(image_embeds) - - noise_level = get_timestep_embedding( - timesteps=noise_level, embedding_dim=image_embeds.shape[-1], flip_sin_to_cos=True, downscale_freq_shift=0 - ) - - # `get_timestep_embeddings` does not contain any weights and will always return f32 tensors, - # but we might actually be running in fp16. so we need to cast here. - # there might be better ways to encapsulate this. - noise_level = noise_level.to(image_embeds.dtype) - - image_embeds = torch.cat((image_embeds, noise_level), 1) - - return image_embeds - - @torch.no_grad() - # @replace_example_docstring(EXAMPLE_DOC_STRING) - def __call__( - self, - image: Union[torch.FloatTensor, PIL.Image.Image], - prompt: Union[str, List[str]], - prompt_embeds: torch.FloatTensor = None, - dino_feature: torch.FloatTensor = None, - height: Optional[int] = None, - width: Optional[int] = None, - num_inference_steps: int = 20, - guidance_scale: float = 10, - negative_prompt: Optional[Union[str, List[str]]] = None, - num_images_per_prompt: Optional[int] = 1, - eta: float = 0.0, - generator: Optional[torch.Generator] = None, - latents: Optional[torch.FloatTensor] = None, - negative_prompt_embeds: Optional[torch.FloatTensor] = None, - output_type: Optional[str] = "pil", - return_dict: bool = True, - callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None, - callback_steps: int = 1, - cross_attention_kwargs: Optional[Dict[str, Any]] = None, - noise_level: int = 0, - image_embeds: Optional[torch.FloatTensor] = None, - return_elevation_focal: Optional[bool] = False, - gt_img_in: Optional[torch.FloatTensor] = None, - ): - r""" - Function invoked when calling the pipeline for generation. - - Args: - prompt (`str` or `List[str]`, *optional*): - The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`. - instead. - image (`torch.FloatTensor` or `PIL.Image.Image`): - `Image`, or tensor representing an image batch. The image will be encoded to its CLIP embedding which - the unet will be conditioned on. Note that the image is _not_ encoded by the vae and then used as the - latents in the denoising process such as in the standard stable diffusion text guided image variation - process. - height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor): - The height in pixels of the generated image. - width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor): - The width in pixels of the generated image. - num_inference_steps (`int`, *optional*, defaults to 20): - The number of denoising steps. More denoising steps usually lead to a higher quality image at the - expense of slower inference. - guidance_scale (`float`, *optional*, defaults to 10.0): - Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598). - `guidance_scale` is defined as `w` of equation 2. of [Imagen - Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale > - 1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`, - usually at the expense of lower image quality. - negative_prompt (`str` or `List[str]`, *optional*): - The prompt or prompts not to guide the image generation. If not defined, one has to pass - `negative_prompt_embeds`. instead. If not defined, one has to pass `negative_prompt_embeds`. instead. - Ignored when not using guidance (i.e., ignored if `guidance_scale` is less than `1`). - num_images_per_prompt (`int`, *optional*, defaults to 1): - The number of images to generate per prompt. - eta (`float`, *optional*, defaults to 0.0): - Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to - [`schedulers.DDIMScheduler`], will be ignored for others. - generator (`torch.Generator` or `List[torch.Generator]`, *optional*): - One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html) - to make generation deterministic. - latents (`torch.FloatTensor`, *optional*): - Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image - generation. Can be used to tweak the same generation with different prompts. If not provided, a latents - tensor will ge generated by sampling using the supplied random `generator`. - prompt_embeds (`torch.FloatTensor`, *optional*): - Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not - provided, text embeddings will be generated from `prompt` input argument. - negative_prompt_embeds (`torch.FloatTensor`, *optional*): - Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt - weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input - argument. - output_type (`str`, *optional*, defaults to `"pil"`): - The output format of the generate image. Choose between - [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`. - return_dict (`bool`, *optional*, defaults to `True`): - Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a - plain tuple. - callback (`Callable`, *optional*): - A function that will be called every `callback_steps` steps during inference. The function will be - called with the following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`. - callback_steps (`int`, *optional*, defaults to 1): - The frequency at which the `callback` function will be called. If not specified, the callback will be - called at every step. - cross_attention_kwargs (`dict`, *optional*): - A kwargs dictionary that if specified is passed along to the `AttnProcessor` as defined under - `self.processor` in - [diffusers.cross_attention](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/cross_attention.py). - noise_level (`int`, *optional*, defaults to `0`): - The amount of noise to add to the image embeddings. A higher `noise_level` increases the variance in - the final un-noised images. See `StableUnCLIPPipeline.noise_image_embeddings` for details. - image_embeds (`torch.FloatTensor`, *optional*): - Pre-generated CLIP embeddings to condition the unet on. Note that these are not latents to be used in - the denoising process. If you want to provide pre-generated latents, pass them to `__call__` as - `latents`. - - Examples: - - Returns: - [`~pipelines.ImagePipelineOutput`] or `tuple`: [`~ pipeline_utils.ImagePipelineOutput`] if `return_dict` is - True, otherwise a `tuple`. When returning a tuple, the first element is a list with the generated images. - """ - # 0. Default height and width to unet - height = height or self.unet.config.sample_size * self.vae_scale_factor - width = width or self.unet.config.sample_size * self.vae_scale_factor - - # 1. Check inputs. Raise error if not correct - self.check_inputs( - prompt=prompt, - image=image, - height=height, - width=width, - callback_steps=callback_steps, - noise_level=noise_level - ) - - # 2. Define call parameters - if isinstance(image, list): - batch_size = len(image) - elif isinstance(image, torch.Tensor): - batch_size = image.shape[0] - assert batch_size >= self.num_views and batch_size % self.num_views == 0 - elif isinstance(image, PIL.Image.Image): - image = [image]*self.num_views*2 - batch_size = self.num_views*2 - - if isinstance(prompt, str): - prompt = [prompt] * self.num_views * 2 - - device = self._execution_device - - # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2) - # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1` - # corresponds to doing no classifier free guidance. - do_classifier_free_guidance = guidance_scale != 1.0 - - # 3. Encode input prompt - text_encoder_lora_scale = ( - cross_attention_kwargs.get("scale", None) if cross_attention_kwargs is not None else None - ) - prompt_embeds = self._encode_prompt( - prompt=prompt, - device=device, - num_images_per_prompt=num_images_per_prompt, - do_classifier_free_guidance=do_classifier_free_guidance, - negative_prompt=negative_prompt, - prompt_embeds=prompt_embeds, - negative_prompt_embeds=negative_prompt_embeds, - lora_scale=text_encoder_lora_scale, - ) - - - # 4. Encoder input image - if isinstance(image, list): - image_pil = image - elif isinstance(image, torch.Tensor): - image_pil = [TF.to_pil_image(image[i]) for i in range(image.shape[0])] - noise_level = torch.tensor([noise_level], device=device) - image_embeds, image_latents = self._encode_image( - image_pil=image_pil, - device=device, - num_images_per_prompt=num_images_per_prompt, - do_classifier_free_guidance=do_classifier_free_guidance, - noise_level=noise_level, - generator=generator, - ) - - # 5. Prepare timesteps - self.scheduler.set_timesteps(num_inference_steps, device=device) - timesteps = self.scheduler.timesteps - - # 6. Prepare latent variables - num_channels_latents = self.unet.config.out_channels - if gt_img_in is not None: - latents = gt_img_in * self.scheduler.init_noise_sigma - else: - latents = self.prepare_latents( - batch_size=batch_size, - num_channels_latents=num_channels_latents, - height=height, - width=width, - dtype=prompt_embeds.dtype, - device=device, - generator=generator, - latents=latents, - ) - - # 7. Prepare extra step kwargs. TODO: Logic should ideally just be moved out of the pipeline - extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta) - - eles, focals = [], [] - # 8. Denoising loop - comfy_pbar = comfy.utils.ProgressBar(num_inference_steps) - for i, t in enumerate(self.progress_bar(timesteps)): - if do_classifier_free_guidance: - normal_latents, color_latents = torch.chunk(latents, 2, dim=0) - latent_model_input = torch.cat([normal_latents, normal_latents, color_latents, color_latents], 0) - else: - latent_model_input = latents - latent_model_input = torch.cat([ - latent_model_input, image_latents - ], dim=1) - latent_model_input = self.scheduler.scale_model_input(latent_model_input, t) - - # predict the noise residual - unet_out = self.unet( - latent_model_input, - t, - encoder_hidden_states=prompt_embeds, - dino_feature=dino_feature, - class_labels=image_embeds, - cross_attention_kwargs=cross_attention_kwargs, - return_dict=False) - - noise_pred = unet_out[0] - if return_elevation_focal: - uncond_pose, pose = torch.chunk(unet_out[1], 2, 0) - pose = uncond_pose + guidance_scale * (pose - uncond_pose) - ele = pose[:, 0].detach().cpu().numpy() # b - eles.append(ele) - focal = pose[:, 1].detach().cpu().numpy() - focals.append(focal) - - # perform guidance - if do_classifier_free_guidance: - normal_noise_pred_uncond, normal_noise_pred_text, color_noise_pred_uncond, color_noise_pred_text = torch.chunk(noise_pred, 4, dim=0) - - noise_pred_uncond, noise_pred_text = torch.cat([normal_noise_pred_uncond, color_noise_pred_uncond], 0), torch.cat([normal_noise_pred_text, color_noise_pred_text], 0) - noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond) - - # compute the previous noisy sample x_t -> x_t-1 - latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0] - - if callback is not None and i % callback_steps == 0: - callback(i, t, latents) - - comfy_pbar.update_absolute(i + 1) - - # 9. Post-processing - if not output_type == "latent": - if num_channels_latents == 8: - latents = torch.cat([latents[:, :4], latents[:, 4:]], dim=0) - with torch.no_grad(): - image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0] - else: - image = latents - - image = self.image_processor.postprocess(image, output_type=output_type) - - # Offload last model to CPU - # if hasattr(self, "final_offload_hook") and self.final_offload_hook is not None: - # self.final_offload_hook.offload() - if not return_dict: - return (image, ) - if return_elevation_focal: - return ImagePipelineOutput(images=image), eles, focals - else: - return ImagePipelineOutput(images=image) diff --git a/era3d/utils/misc.py b/era3d/utils/misc.py deleted file mode 100644 index 634b399..0000000 --- a/era3d/utils/misc.py +++ /dev/null @@ -1,44 +0,0 @@ -import os -from omegaconf import OmegaConf -from packaging import version -from typing import Dict, Optional, List -from dataclasses import dataclass - - -# ============ Register OmegaConf Recolvers ============= # -OmegaConf.register_new_resolver('calc_exp_lr_decay_rate', lambda factor, n: factor**(1./n), replace=True) -OmegaConf.register_new_resolver('add', lambda a, b: a + b, replace=True) -OmegaConf.register_new_resolver('sub', lambda a, b: a - b, replace=True) -OmegaConf.register_new_resolver('mul', lambda a, b: a * b, replace=True) -OmegaConf.register_new_resolver('div', lambda a, b: a / b, replace=True) -OmegaConf.register_new_resolver('idiv', lambda a, b: a // b, replace=True) -OmegaConf.register_new_resolver('basename', lambda p: os.path.basename(p), replace=True) -# ======================================================= # - - -@dataclass -class TestConfig: - num_views: int - dataset: Dict - - -def load_config(*yaml_files): - yaml_confs = [OmegaConf.load(f) for f in yaml_files] - conf = OmegaConf.merge(*yaml_confs) - OmegaConf.resolve(conf) - - schema = OmegaConf.structured(TestConfig) - conf = OmegaConf.merge(schema, conf) - return conf - - -def config_to_primitive(config, resolve=True): - return OmegaConf.to_container(config, resolve=resolve) - - -def dump_config(path, config): - with open(path, 'w') as fp: - OmegaConf.save(config=config, f=fp) - -def parse_version(ver): - return version.parse(ver) diff --git a/flexicubes/__init__.py b/flexicubes/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/flexicubes/flexicubes.py b/flexicubes/flexicubes.py deleted file mode 100644 index 26d7b91..0000000 --- a/flexicubes/flexicubes.py +++ /dev/null @@ -1,579 +0,0 @@ -# Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. -import torch -from .tables import * - -__all__ = [ - 'FlexiCubes' -] - - -class FlexiCubes: - """ - This class implements the FlexiCubes method for extracting meshes from scalar fields. - It maintains a series of lookup tables and indices to support the mesh extraction process. - FlexiCubes, a differentiable variant of the Dual Marching Cubes (DMC) scheme, enhances - the geometric fidelity and mesh quality of reconstructed meshes by dynamically adjusting - the surface representation through gradient-based optimization. - - During instantiation, the class loads DMC tables from a file and transforms them into - PyTorch tensors on the specified device. - - Attributes: - device (str): Specifies the computational device (default is "cuda"). - dmc_table (torch.Tensor): Dual Marching Cubes (DMC) table that encodes the edges - associated with each dual vertex in 256 Marching Cubes (MC) configurations. - num_vd_table (torch.Tensor): Table holding the number of dual vertices in each of - the 256 MC configurations. - check_table (torch.Tensor): Table resolving ambiguity in cases C16 and C19 - of the DMC configurations. - tet_table (torch.Tensor): Lookup table used in tetrahedralizing the isosurface. - quad_split_1 (torch.Tensor): Indices for splitting a quad into two triangles - along one diagonal. - quad_split_2 (torch.Tensor): Alternative indices for splitting a quad into - two triangles along the other diagonal. - quad_split_train (torch.Tensor): Indices for splitting a quad into four triangles - during training by connecting all edges to their midpoints. - cube_corners (torch.Tensor): Defines the positions of a standard unit cube's - eight corners in 3D space, ordered starting from the origin (0,0,0), - moving along the x-axis, then y-axis, and finally z-axis. - Used as a blueprint for generating a voxel grid. - cube_corners_idx (torch.Tensor): Cube corners indexed as powers of 2, used - to retrieve the case id. - cube_edges (torch.Tensor): Edge connections in a cube, listed in pairs. - Used to retrieve edge vertices in DMC. - edge_dir_table (torch.Tensor): A mapping tensor that associates edge indices with - their corresponding axis. For instance, edge_dir_table[0] = 0 indicates that the - first edge is oriented along the x-axis. - dir_faces_table (torch.Tensor): A tensor that maps the corresponding axis of shared edges - across four adjacent cubes to the shared faces of these cubes. For instance, - dir_faces_table[0] = [5, 4] implies that for four cubes sharing an edge along - the x-axis, the first and second cubes share faces indexed as 5 and 4, respectively. - This tensor is only utilized during isosurface tetrahedralization. - adj_pairs (torch.Tensor): - A tensor containing index pairs that correspond to neighboring cubes that share the same edge. - qef_reg_scale (float): - The scaling factor applied to the regularization loss to prevent issues with singularity - when solving the QEF. This parameter is only used when a 'grad_func' is specified. - weight_scale (float): - The scale of weights in FlexiCubes. Should be between 0 and 1. - """ - - def __init__(self, device="cuda", qef_reg_scale=1e-3, weight_scale=0.99): - - self.device = device - self.dmc_table = torch.tensor(dmc_table, dtype=torch.long, device=device, requires_grad=False) - self.num_vd_table = torch.tensor(num_vd_table, - dtype=torch.long, device=device, requires_grad=False) - self.check_table = torch.tensor( - check_table, - dtype=torch.long, device=device, requires_grad=False) - - self.tet_table = torch.tensor(tet_table, dtype=torch.long, device=device, requires_grad=False) - self.quad_split_1 = torch.tensor([0, 1, 2, 0, 2, 3], dtype=torch.long, device=device, requires_grad=False) - self.quad_split_2 = torch.tensor([0, 1, 3, 3, 1, 2], dtype=torch.long, device=device, requires_grad=False) - self.quad_split_train = torch.tensor( - [0, 1, 1, 2, 2, 3, 3, 0], dtype=torch.long, device=device, requires_grad=False) - - self.cube_corners = torch.tensor([[0, 0, 0], [1, 0, 0], [0, 1, 0], [1, 1, 0], [0, 0, 1], [ - 1, 0, 1], [0, 1, 1], [1, 1, 1]], dtype=torch.float, device=device) - self.cube_corners_idx = torch.pow(2, torch.arange(8, requires_grad=False)) - self.cube_edges = torch.tensor([0, 1, 1, 5, 4, 5, 0, 4, 2, 3, 3, 7, 6, 7, 2, 6, - 2, 0, 3, 1, 7, 5, 6, 4], dtype=torch.long, device=device, requires_grad=False) - - self.edge_dir_table = torch.tensor([0, 2, 0, 2, 0, 2, 0, 2, 1, 1, 1, 1], - dtype=torch.long, device=device) - self.dir_faces_table = torch.tensor([ - [[5, 4], [3, 2], [4, 5], [2, 3]], - [[5, 4], [1, 0], [4, 5], [0, 1]], - [[3, 2], [1, 0], [2, 3], [0, 1]] - ], dtype=torch.long, device=device) - self.adj_pairs = torch.tensor([0, 1, 1, 3, 3, 2, 2, 0], dtype=torch.long, device=device) - self.qef_reg_scale = qef_reg_scale - self.weight_scale = weight_scale - - def construct_voxel_grid(self, res): - """ - Generates a voxel grid based on the specified resolution. - - Args: - res (int or list[int]): The resolution of the voxel grid. If an integer - is provided, it is used for all three dimensions. If a list or tuple - of 3 integers is provided, they define the resolution for the x, - y, and z dimensions respectively. - - Returns: - (torch.Tensor, torch.Tensor): Returns the vertices and the indices of the - cube corners (index into vertices) of the constructed voxel grid. - The vertices are centered at the origin, with the length of each - dimension in the grid being one. - """ - base_cube_f = torch.arange(8).to(self.device) - if isinstance(res, int): - res = (res, res, res) - voxel_grid_template = torch.ones(res, device=self.device) - - res = torch.tensor([res], dtype=torch.float, device=self.device) - coords = torch.nonzero(voxel_grid_template).float() / res # N, 3 - verts = (self.cube_corners.unsqueeze(0) / res + coords.unsqueeze(1)).reshape(-1, 3) - cubes = (base_cube_f.unsqueeze(0) + - torch.arange(coords.shape[0], device=self.device).unsqueeze(1) * 8).reshape(-1) - - verts_rounded = torch.round(verts * 10**5) / (10**5) - verts_unique, inverse_indices = torch.unique(verts_rounded, dim=0, return_inverse=True) - cubes = inverse_indices[cubes.reshape(-1)].reshape(-1, 8) - - return verts_unique - 0.5, cubes - - def __call__(self, x_nx3, s_n, cube_fx8, res, beta_fx12=None, alpha_fx8=None, - gamma_f=None, training=False, output_tetmesh=False, grad_func=None): - r""" - Main function for mesh extraction from scalar field using FlexiCubes. This function converts - discrete signed distance fields, encoded on voxel grids and additional per-cube parameters, - to triangle or tetrahedral meshes using a differentiable operation as described in - `Flexible Isosurface Extraction for Gradient-Based Mesh Optimization`_. FlexiCubes enhances - mesh quality and geometric fidelity by adjusting the surface representation based on gradient - optimization. The output surface is differentiable with respect to the input vertex positions, - scalar field values, and weight parameters. - - If you intend to extract a surface mesh from a fixed Signed Distance Field without the - optimization of parameters, it is suggested to provide the "grad_func" which should - return the surface gradient at any given 3D position. When grad_func is provided, the process - to determine the dual vertex position adapts to solve a Quadratic Error Function (QEF), as - described in the `Manifold Dual Contouring`_ paper, and employs an smart splitting strategy. - Please note, this approach is non-differentiable. - - For more details and example usage in optimization, refer to the - `Flexible Isosurface Extraction for Gradient-Based Mesh Optimization`_ SIGGRAPH 2023 paper. - - Args: - x_nx3 (torch.Tensor): Coordinates of the voxel grid vertices, can be deformed. - s_n (torch.Tensor): Scalar field values at each vertex of the voxel grid. Negative values - denote that the corresponding vertex resides inside the isosurface. This affects - the directions of the extracted triangle faces and volume to be tetrahedralized. - cube_fx8 (torch.Tensor): Indices of 8 vertices for each cube in the voxel grid. - res (int or list[int]): The resolution of the voxel grid. If an integer is provided, it - is used for all three dimensions. If a list or tuple of 3 integers is provided, they - specify the resolution for the x, y, and z dimensions respectively. - beta_fx12 (torch.Tensor, optional): Weight parameters for the cube edges to adjust dual - vertices positioning. Defaults to uniform value for all edges. - alpha_fx8 (torch.Tensor, optional): Weight parameters for the cube corners to adjust dual - vertices positioning. Defaults to uniform value for all vertices. - gamma_f (torch.Tensor, optional): Weight parameters to control the splitting of - quadrilaterals into triangles. Defaults to uniform value for all cubes. - training (bool, optional): If set to True, applies differentiable quad splitting for - training. Defaults to False. - output_tetmesh (bool, optional): If set to True, outputs a tetrahedral mesh, otherwise, - outputs a triangular mesh. Defaults to False. - grad_func (callable, optional): A function to compute the surface gradient at specified - 3D positions (input: Nx3 positions). The function should return gradients as an Nx3 - tensor. If None, the original FlexiCubes algorithm is utilized. Defaults to None. - - Returns: - (torch.Tensor, torch.LongTensor, torch.Tensor): Tuple containing: - - Vertices for the extracted triangular/tetrahedral mesh. - - Faces for the extracted triangular/tetrahedral mesh. - - Regularizer L_dev, computed per dual vertex. - - .. _Flexible Isosurface Extraction for Gradient-Based Mesh Optimization: - https://research.nvidia.com/labs/toronto-ai/flexicubes/ - .. _Manifold Dual Contouring: - https://people.engr.tamu.edu/schaefer/research/dualsimp_tvcg.pdf - """ - - surf_cubes, occ_fx8 = self._identify_surf_cubes(s_n, cube_fx8) - if surf_cubes.sum() == 0: - return torch.zeros( - (0, 3), - device=self.device), torch.zeros( - (0, 4), - dtype=torch.long, device=self.device) if output_tetmesh else torch.zeros( - (0, 3), - dtype=torch.long, device=self.device), torch.zeros( - (0), - device=self.device) - beta_fx12, alpha_fx8, gamma_f = self._normalize_weights(beta_fx12, alpha_fx8, gamma_f, surf_cubes) - - case_ids = self._get_case_id(occ_fx8, surf_cubes, res) - - surf_edges, idx_map, edge_counts, surf_edges_mask = self._identify_surf_edges(s_n, cube_fx8, surf_cubes) - - vd, L_dev, vd_gamma, vd_idx_map = self._compute_vd( - x_nx3, cube_fx8[surf_cubes], surf_edges, s_n, case_ids, beta_fx12, alpha_fx8, gamma_f, idx_map, grad_func) - vertices, faces, s_edges, edge_indices = self._triangulate( - s_n, surf_edges, vd, vd_gamma, edge_counts, idx_map, vd_idx_map, surf_edges_mask, training, grad_func) - if not output_tetmesh: - return vertices, faces, L_dev - else: - vertices, tets = self._tetrahedralize( - x_nx3, s_n, cube_fx8, vertices, faces, surf_edges, s_edges, vd_idx_map, case_ids, edge_indices, - surf_cubes, training) - return vertices, tets, L_dev - - def _compute_reg_loss(self, vd, ue, edge_group_to_vd, vd_num_edges): - """ - Regularizer L_dev as in Equation 8 - """ - dist = torch.norm(ue - torch.index_select(input=vd, index=edge_group_to_vd, dim=0), dim=-1) - mean_l2 = torch.zeros_like(vd[:, 0]) - mean_l2 = (mean_l2).index_add_(0, edge_group_to_vd, dist) / vd_num_edges.squeeze(1).float() - mad = (dist - torch.index_select(input=mean_l2, index=edge_group_to_vd, dim=0)).abs() - return mad - - def _normalize_weights(self, beta_fx12, alpha_fx8, gamma_f, surf_cubes): - """ - Normalizes the given weights to be non-negative. If input weights are None, it creates and returns a set of weights of ones. - """ - n_cubes = surf_cubes.shape[0] - - if beta_fx12 is not None: - beta_fx12 = (torch.tanh(beta_fx12) * self.weight_scale + 1) - else: - beta_fx12 = torch.ones((n_cubes, 12), dtype=torch.float, device=self.device) - - if alpha_fx8 is not None: - alpha_fx8 = (torch.tanh(alpha_fx8) * self.weight_scale + 1) - else: - alpha_fx8 = torch.ones((n_cubes, 8), dtype=torch.float, device=self.device) - - if gamma_f is not None: - gamma_f = torch.sigmoid(gamma_f) * self.weight_scale + (1 - self.weight_scale)/2 - else: - gamma_f = torch.ones((n_cubes), dtype=torch.float, device=self.device) - - return beta_fx12[surf_cubes], alpha_fx8[surf_cubes], gamma_f[surf_cubes] - - @torch.no_grad() - def _get_case_id(self, occ_fx8, surf_cubes, res): - """ - Obtains the ID of topology cases based on cell corner occupancy. This function resolves the - ambiguity in the Dual Marching Cubes (DMC) configurations as described in Section 1.3 of the - supplementary material. It should be noted that this function assumes a regular grid. - """ - case_ids = (occ_fx8[surf_cubes] * self.cube_corners_idx.to(self.device).unsqueeze(0)).sum(-1) - - problem_config = self.check_table.to(self.device)[case_ids] - to_check = problem_config[..., 0] == 1 - problem_config = problem_config[to_check] - if not isinstance(res, (list, tuple)): - res = [res, res, res] - - # The 'problematic_configs' only contain configurations for surface cubes. Next, we construct a 3D array, - # 'problem_config_full', to store configurations for all cubes (with default config for non-surface cubes). - # This allows efficient checking on adjacent cubes. - problem_config_full = torch.zeros(list(res) + [5], device=self.device, dtype=torch.long) - vol_idx = torch.nonzero(problem_config_full[..., 0] == 0) # N, 3 - vol_idx_problem = vol_idx[surf_cubes][to_check] - problem_config_full[vol_idx_problem[..., 0], vol_idx_problem[..., 1], vol_idx_problem[..., 2]] = problem_config - vol_idx_problem_adj = vol_idx_problem + problem_config[..., 1:4] - - within_range = ( - vol_idx_problem_adj[..., 0] >= 0) & ( - vol_idx_problem_adj[..., 0] < res[0]) & ( - vol_idx_problem_adj[..., 1] >= 0) & ( - vol_idx_problem_adj[..., 1] < res[1]) & ( - vol_idx_problem_adj[..., 2] >= 0) & ( - vol_idx_problem_adj[..., 2] < res[2]) - - vol_idx_problem = vol_idx_problem[within_range] - vol_idx_problem_adj = vol_idx_problem_adj[within_range] - problem_config = problem_config[within_range] - problem_config_adj = problem_config_full[vol_idx_problem_adj[..., 0], - vol_idx_problem_adj[..., 1], vol_idx_problem_adj[..., 2]] - # If two cubes with cases C16 and C19 share an ambiguous face, both cases are inverted. - to_invert = (problem_config_adj[..., 0] == 1) - idx = torch.arange(case_ids.shape[0], device=self.device)[to_check][within_range][to_invert] - case_ids.index_put_((idx,), problem_config[to_invert][..., -1]) - return case_ids - - @torch.no_grad() - def _identify_surf_edges(self, s_n, cube_fx8, surf_cubes): - """ - Identifies grid edges that intersect with the underlying surface by checking for opposite signs. As each edge - can be shared by multiple cubes, this function also assigns a unique index to each surface-intersecting edge - and marks the cube edges with this index. - """ - occ_n = s_n < 0 - all_edges = cube_fx8[surf_cubes][:, self.cube_edges].reshape(-1, 2) - unique_edges, _idx_map, counts = torch.unique(all_edges, dim=0, return_inverse=True, return_counts=True) - - unique_edges = unique_edges.long() - mask_edges = occ_n[unique_edges.reshape(-1)].reshape(-1, 2).sum(-1) == 1 - - surf_edges_mask = mask_edges[_idx_map] - counts = counts[_idx_map] - - mapping = torch.ones((unique_edges.shape[0]), dtype=torch.long, device=cube_fx8.device) * -1 - mapping[mask_edges] = torch.arange(mask_edges.sum(), device=cube_fx8.device) - # Shaped as [number of cubes x 12 edges per cube]. This is later used to map a cube edge to the unique index - # for a surface-intersecting edge. Non-surface-intersecting edges are marked with -1. - idx_map = mapping[_idx_map] - surf_edges = unique_edges[mask_edges] - return surf_edges, idx_map, counts, surf_edges_mask - - @torch.no_grad() - def _identify_surf_cubes(self, s_n, cube_fx8): - """ - Identifies grid cubes that intersect with the underlying surface by checking if the signs at - all corners are not identical. - """ - occ_n = s_n < 0 - occ_fx8 = occ_n[cube_fx8.reshape(-1)].reshape(-1, 8) - _occ_sum = torch.sum(occ_fx8, -1) - surf_cubes = (_occ_sum > 0) & (_occ_sum < 8) - return surf_cubes, occ_fx8 - - def _linear_interp(self, edges_weight, edges_x): - """ - Computes the location of zero-crossings on 'edges_x' using linear interpolation with 'edges_weight'. - """ - edge_dim = edges_weight.dim() - 2 - assert edges_weight.shape[edge_dim] == 2 - edges_weight = torch.cat([torch.index_select(input=edges_weight, index=torch.tensor(1, device=self.device), dim=edge_dim), - - torch.index_select(input=edges_weight, index=torch.tensor(0, device=self.device), dim=edge_dim)], edge_dim) - denominator = edges_weight.sum(edge_dim) - ue = (edges_x * edges_weight).sum(edge_dim) / denominator - return ue - - def _solve_vd_QEF(self, p_bxnx3, norm_bxnx3, c_bx3=None): - p_bxnx3 = p_bxnx3.reshape(-1, 7, 3) - norm_bxnx3 = norm_bxnx3.reshape(-1, 7, 3) - c_bx3 = c_bx3.reshape(-1, 3) - A = norm_bxnx3 - B = ((p_bxnx3) * norm_bxnx3).sum(-1, keepdims=True) - - A_reg = (torch.eye(3, device=p_bxnx3.device) * self.qef_reg_scale).unsqueeze(0).repeat(p_bxnx3.shape[0], 1, 1) - B_reg = (self.qef_reg_scale * c_bx3).unsqueeze(-1) - A = torch.cat([A, A_reg], 1) - B = torch.cat([B, B_reg], 1) - dual_verts = torch.linalg.lstsq(A, B).solution.squeeze(-1) - return dual_verts - - def _compute_vd(self, x_nx3, surf_cubes_fx8, surf_edges, s_n, case_ids, beta_fx12, alpha_fx8, gamma_f, idx_map, grad_func): - """ - Computes the location of dual vertices as described in Section 4.2 - """ - alpha_nx12x2 = torch.index_select(input=alpha_fx8, index=self.cube_edges, dim=1).reshape(-1, 12, 2) - surf_edges_x = torch.index_select(input=x_nx3, index=surf_edges.reshape(-1), dim=0).reshape(-1, 2, 3) - surf_edges_s = torch.index_select(input=s_n, index=surf_edges.reshape(-1), dim=0).reshape(-1, 2, 1) - zero_crossing = self._linear_interp(surf_edges_s, surf_edges_x) - - idx_map = idx_map.reshape(-1, 12) - num_vd = torch.index_select(input=self.num_vd_table, index=case_ids, dim=0) - edge_group, edge_group_to_vd, edge_group_to_cube, vd_num_edges, vd_gamma = [], [], [], [], [] - - total_num_vd = 0 - vd_idx_map = torch.zeros((case_ids.shape[0], 12), dtype=torch.long, device=self.device, requires_grad=False) - if grad_func is not None: - normals = torch.nn.functional.normalize(grad_func(zero_crossing), dim=-1) - vd = [] - for num in torch.unique(num_vd): - cur_cubes = (num_vd == num) # consider cubes with the same numbers of vd emitted (for batching) - curr_num_vd = cur_cubes.sum() * num - curr_edge_group = self.dmc_table[case_ids[cur_cubes], :num].reshape(-1, num * 7) - curr_edge_group_to_vd = torch.arange( - curr_num_vd, device=self.device).unsqueeze(-1).repeat(1, 7) + total_num_vd - total_num_vd += curr_num_vd - curr_edge_group_to_cube = torch.arange(idx_map.shape[0], device=self.device)[ - cur_cubes].unsqueeze(-1).repeat(1, num * 7).reshape_as(curr_edge_group) - - curr_mask = (curr_edge_group != -1) - edge_group.append(torch.masked_select(curr_edge_group, curr_mask)) - edge_group_to_vd.append(torch.masked_select(curr_edge_group_to_vd.reshape_as(curr_edge_group), curr_mask)) - edge_group_to_cube.append(torch.masked_select(curr_edge_group_to_cube, curr_mask)) - vd_num_edges.append(curr_mask.reshape(-1, 7).sum(-1, keepdims=True)) - vd_gamma.append(torch.masked_select(gamma_f, cur_cubes).unsqueeze(-1).repeat(1, num).reshape(-1)) - - if grad_func is not None: - with torch.no_grad(): - cube_e_verts_idx = idx_map[cur_cubes] - curr_edge_group[~curr_mask] = 0 - - verts_group_idx = torch.gather(input=cube_e_verts_idx, dim=1, index=curr_edge_group) - verts_group_idx[verts_group_idx == -1] = 0 - verts_group_pos = torch.index_select( - input=zero_crossing, index=verts_group_idx.reshape(-1), dim=0).reshape(-1, num.item(), 7, 3) - v0 = x_nx3[surf_cubes_fx8[cur_cubes][:, 0]].reshape(-1, 1, 1, 3).repeat(1, num.item(), 1, 1) - curr_mask = curr_mask.reshape(-1, num.item(), 7, 1) - verts_centroid = (verts_group_pos * curr_mask).sum(2) / (curr_mask.sum(2)) - - normals_bx7x3 = torch.index_select(input=normals, index=verts_group_idx.reshape(-1), dim=0).reshape( - -1, num.item(), 7, - 3) - curr_mask = curr_mask.squeeze(2) - vd.append(self._solve_vd_QEF((verts_group_pos - v0) * curr_mask, normals_bx7x3 * curr_mask, - verts_centroid - v0.squeeze(2)) + v0.reshape(-1, 3)) - edge_group = torch.cat(edge_group) - edge_group_to_vd = torch.cat(edge_group_to_vd) - edge_group_to_cube = torch.cat(edge_group_to_cube) - vd_num_edges = torch.cat(vd_num_edges) - vd_gamma = torch.cat(vd_gamma) - - if grad_func is not None: - vd = torch.cat(vd) - L_dev = torch.zeros([1], device=self.device) - else: - vd = torch.zeros((total_num_vd, 3), device=self.device) - beta_sum = torch.zeros((total_num_vd, 1), device=self.device) - - idx_group = torch.gather(input=idx_map.reshape(-1), dim=0, index=edge_group_to_cube * 12 + edge_group) - - x_group = torch.index_select(input=surf_edges_x, index=idx_group.reshape(-1), dim=0).reshape(-1, 2, 3) - s_group = torch.index_select(input=surf_edges_s, index=idx_group.reshape(-1), dim=0).reshape(-1, 2, 1) - - zero_crossing_group = torch.index_select( - input=zero_crossing, index=idx_group.reshape(-1), dim=0).reshape(-1, 3) - - alpha_group = torch.index_select(input=alpha_nx12x2.reshape(-1, 2), dim=0, - index=edge_group_to_cube * 12 + edge_group).reshape(-1, 2, 1) - ue_group = self._linear_interp(s_group * alpha_group, x_group) - - beta_group = torch.gather(input=beta_fx12.reshape(-1), dim=0, - index=edge_group_to_cube * 12 + edge_group).reshape(-1, 1) - beta_sum = beta_sum.index_add_(0, index=edge_group_to_vd, source=beta_group) - vd = vd.index_add_(0, index=edge_group_to_vd, source=ue_group * beta_group) / beta_sum - L_dev = self._compute_reg_loss(vd, zero_crossing_group, edge_group_to_vd, vd_num_edges) - - v_idx = torch.arange(vd.shape[0], device=self.device) # + total_num_vd - - vd_idx_map = (vd_idx_map.reshape(-1)).scatter(dim=0, index=edge_group_to_cube * - 12 + edge_group, src=v_idx[edge_group_to_vd]) - - return vd, L_dev, vd_gamma, vd_idx_map - - def _triangulate(self, s_n, surf_edges, vd, vd_gamma, edge_counts, idx_map, vd_idx_map, surf_edges_mask, training, grad_func): - """ - Connects four neighboring dual vertices to form a quadrilateral. The quadrilaterals are then split into - triangles based on the gamma parameter, as described in Section 4.3. - """ - with torch.no_grad(): - group_mask = (edge_counts == 4) & surf_edges_mask # surface edges shared by 4 cubes. - group = idx_map.reshape(-1)[group_mask] - vd_idx = vd_idx_map[group_mask] - edge_indices, indices = torch.sort(group, stable=True) - quad_vd_idx = vd_idx[indices].reshape(-1, 4) - - # Ensure all face directions point towards the positive SDF to maintain consistent winding. - s_edges = s_n[surf_edges[edge_indices.reshape(-1, 4)[:, 0]].reshape(-1)].reshape(-1, 2) - flip_mask = s_edges[:, 0] > 0 - quad_vd_idx = torch.cat((quad_vd_idx[flip_mask][:, [0, 1, 3, 2]], - quad_vd_idx[~flip_mask][:, [2, 3, 1, 0]])) - if grad_func is not None: - # when grad_func is given, split quadrilaterals along the diagonals with more consistent gradients. - with torch.no_grad(): - vd_gamma = torch.nn.functional.normalize(grad_func(vd), dim=-1) - quad_gamma = torch.index_select(input=vd_gamma, index=quad_vd_idx.reshape(-1), dim=0).reshape(-1, 4, 3) - gamma_02 = (quad_gamma[:, 0] * quad_gamma[:, 2]).sum(-1, keepdims=True) - gamma_13 = (quad_gamma[:, 1] * quad_gamma[:, 3]).sum(-1, keepdims=True) - else: - quad_gamma = torch.index_select(input=vd_gamma, index=quad_vd_idx.reshape(-1), dim=0).reshape(-1, 4) - gamma_02 = torch.index_select(input=quad_gamma, index=torch.tensor( - 0, device=self.device), dim=1) * torch.index_select(input=quad_gamma, index=torch.tensor(2, device=self.device), dim=1) - gamma_13 = torch.index_select(input=quad_gamma, index=torch.tensor( - 1, device=self.device), dim=1) * torch.index_select(input=quad_gamma, index=torch.tensor(3, device=self.device), dim=1) - if not training: - mask = (gamma_02 > gamma_13).squeeze(1) - faces = torch.zeros((quad_gamma.shape[0], 6), dtype=torch.long, device=quad_vd_idx.device) - faces[mask] = quad_vd_idx[mask][:, self.quad_split_1] - faces[~mask] = quad_vd_idx[~mask][:, self.quad_split_2] - faces = faces.reshape(-1, 3) - else: - vd_quad = torch.index_select(input=vd, index=quad_vd_idx.reshape(-1), dim=0).reshape(-1, 4, 3) - vd_02 = (torch.index_select(input=vd_quad, index=torch.tensor(0, device=self.device), dim=1) + - torch.index_select(input=vd_quad, index=torch.tensor(2, device=self.device), dim=1)) / 2 - vd_13 = (torch.index_select(input=vd_quad, index=torch.tensor(1, device=self.device), dim=1) + - torch.index_select(input=vd_quad, index=torch.tensor(3, device=self.device), dim=1)) / 2 - weight_sum = (gamma_02 + gamma_13) + 1e-8 - vd_center = ((vd_02 * gamma_02.unsqueeze(-1) + vd_13 * gamma_13.unsqueeze(-1)) / - weight_sum.unsqueeze(-1)).squeeze(1) - vd_center_idx = torch.arange(vd_center.shape[0], device=self.device) + vd.shape[0] - vd = torch.cat([vd, vd_center]) - faces = quad_vd_idx[:, self.quad_split_train].reshape(-1, 4, 2) - faces = torch.cat([faces, vd_center_idx.reshape(-1, 1, 1).repeat(1, 4, 1)], -1).reshape(-1, 3) - return vd, faces, s_edges, edge_indices - - def _tetrahedralize( - self, x_nx3, s_n, cube_fx8, vertices, faces, surf_edges, s_edges, vd_idx_map, case_ids, edge_indices, - surf_cubes, training): - """ - Tetrahedralizes the interior volume to produce a tetrahedral mesh, as described in Section 4.5. - """ - occ_n = s_n < 0 - occ_fx8 = occ_n[cube_fx8.reshape(-1)].reshape(-1, 8) - occ_sum = torch.sum(occ_fx8, -1) - - inside_verts = x_nx3[occ_n] - mapping_inside_verts = torch.ones((occ_n.shape[0]), dtype=torch.long, device=self.device) * -1 - mapping_inside_verts[occ_n] = torch.arange(occ_n.sum(), device=self.device) + vertices.shape[0] - """ - For each grid edge connecting two grid vertices with different - signs, we first form a four-sided pyramid by connecting one - of the grid vertices with four mesh vertices that correspond - to the grid edge and then subdivide the pyramid into two tetrahedra - """ - inside_verts_idx = mapping_inside_verts[surf_edges[edge_indices.reshape(-1, 4)[:, 0]].reshape(-1, 2)[ - s_edges < 0]] - if not training: - inside_verts_idx = inside_verts_idx.unsqueeze(1).expand(-1, 2).reshape(-1) - else: - inside_verts_idx = inside_verts_idx.unsqueeze(1).expand(-1, 4).reshape(-1) - - tets_surface = torch.cat([faces, inside_verts_idx.unsqueeze(-1)], -1) - """ - For each grid edge connecting two grid vertices with the - same sign, the tetrahedron is formed by the two grid vertices - and two vertices in consecutive adjacent cells - """ - inside_cubes = (occ_sum == 8) - inside_cubes_center = x_nx3[cube_fx8[inside_cubes].reshape(-1)].reshape(-1, 8, 3).mean(1) - inside_cubes_center_idx = torch.arange( - inside_cubes_center.shape[0], device=inside_cubes.device) + vertices.shape[0] + inside_verts.shape[0] - - surface_n_inside_cubes = surf_cubes | inside_cubes - edge_center_vertex_idx = torch.ones(((surface_n_inside_cubes).sum(), 13), - dtype=torch.long, device=x_nx3.device) * -1 - surf_cubes = surf_cubes[surface_n_inside_cubes] - inside_cubes = inside_cubes[surface_n_inside_cubes] - edge_center_vertex_idx[surf_cubes, :12] = vd_idx_map.reshape(-1, 12) - edge_center_vertex_idx[inside_cubes, 12] = inside_cubes_center_idx - - all_edges = cube_fx8[surface_n_inside_cubes][:, self.cube_edges].reshape(-1, 2) - unique_edges, _idx_map, counts = torch.unique(all_edges, dim=0, return_inverse=True, return_counts=True) - unique_edges = unique_edges.long() - mask_edges = occ_n[unique_edges.reshape(-1)].reshape(-1, 2).sum(-1) == 2 - mask = mask_edges[_idx_map] - counts = counts[_idx_map] - mapping = torch.ones((unique_edges.shape[0]), dtype=torch.long, device=self.device) * -1 - mapping[mask_edges] = torch.arange(mask_edges.sum(), device=self.device) - idx_map = mapping[_idx_map] - - group_mask = (counts == 4) & mask - group = idx_map.reshape(-1)[group_mask] - edge_indices, indices = torch.sort(group) - cube_idx = torch.arange((_idx_map.shape[0] // 12), dtype=torch.long, - device=self.device).unsqueeze(1).expand(-1, 12).reshape(-1)[group_mask] - edge_idx = torch.arange((12), dtype=torch.long, device=self.device).unsqueeze( - 0).expand(_idx_map.shape[0] // 12, -1).reshape(-1)[group_mask] - # Identify the face shared by the adjacent cells. - cube_idx_4 = cube_idx[indices].reshape(-1, 4) - edge_dir = self.edge_dir_table[edge_idx[indices]].reshape(-1, 4)[..., 0] - shared_faces_4x2 = self.dir_faces_table[edge_dir].reshape(-1) - cube_idx_4x2 = cube_idx_4[:, self.adj_pairs].reshape(-1) - # Identify an edge of the face with different signs and - # select the mesh vertex corresponding to the identified edge. - case_ids_expand = torch.ones((surface_n_inside_cubes).sum(), dtype=torch.long, device=x_nx3.device) * 255 - case_ids_expand[surf_cubes] = case_ids - cases = case_ids_expand[cube_idx_4x2] - quad_edge = edge_center_vertex_idx[cube_idx_4x2, self.tet_table[cases, shared_faces_4x2]].reshape(-1, 2) - mask = (quad_edge == -1).sum(-1) == 0 - inside_edge = mapping_inside_verts[unique_edges[mask_edges][edge_indices].reshape(-1)].reshape(-1, 2) - tets_inside = torch.cat([quad_edge, inside_edge], -1)[mask] - - tets = torch.cat([tets_surface, tets_inside]) - vertices = torch.cat([vertices, inside_verts, inside_cubes_center]) - return vertices, tets diff --git a/flexicubes/loss.py b/flexicubes/loss.py deleted file mode 100644 index ba507f0..0000000 --- a/flexicubes/loss.py +++ /dev/null @@ -1,95 +0,0 @@ -# Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. -import torch -import torch_scatter - -############################################################################### -# Pytorch implementation of the developability regularizer introduced in paper -# "Developability of Triangle Meshes" by Stein et al. -############################################################################### -def mesh_developable_reg(mesh): - - verts = mesh.vertices - tris = mesh.faces - - device = verts.device - V = verts.shape[0] - F = tris.shape[0] - - POS_EPS = 1e-6 - REL_EPS = 1e-6 - - def normalize(vecs): - return vecs / (torch.linalg.norm(vecs, dim=-1, keepdim=True) + POS_EPS) - - tri_pos = verts[tris] - - vert_normal_covariance_sum = torch.zeros((V, 9), device=device) - vert_area = torch.zeros(V, device=device) - vert_degree = torch.zeros(V, dtype=torch.int32, device=device) - - for iC in range(3): # loop over three corners of each triangle - - # gather tri verts - pRoot = tri_pos[:, iC, :] - pA = tri_pos[:, (iC + 1) % 3, :] - pB = tri_pos[:, (iC + 2) % 3, :] - - # compute the corner angle & normal - vA = pA - pRoot - vAn = normalize(vA) - vB = pB - pRoot - vBn = normalize(vB) - area_normal = torch.linalg.cross(vA, vB, dim=-1) - face_area = 0.5 * torch.linalg.norm(area_normal, dim=-1) - normal = normalize(area_normal) - corner_angle = torch.acos(torch.clamp(torch.sum(vAn * vBn, dim=-1), min=-1., max=1.)) - - # add up the contribution to the covariance matrix - outer = normal[:, :, None] @ normal[:, None, :] - contrib = corner_angle[:, None] * outer.reshape(-1, 9) - - # scatter the result to the appropriate matrices - vert_normal_covariance_sum = torch_scatter.scatter_add(src=contrib, - index=tris[:, iC], - dim=-2, - out=vert_normal_covariance_sum) - - vert_area = torch_scatter.scatter_add(src=face_area / 3., - index=tris[:, iC], - dim=-1, - out=vert_area) - - vert_degree = torch_scatter.scatter_add(src=torch.ones(F, dtype=torch.int32, device=device), - index=tris[:, iC], - dim=-1, - out=vert_degree) - - # The energy is the smallest eigenvalue of the outer-product matrix - vert_normal_covariance_sum = vert_normal_covariance_sum.reshape( - -1, 3, 3) # reshape to a batch of matrices - vert_normal_covariance_sum = vert_normal_covariance_sum + torch.eye( - 3, device=device)[None, :, :] * REL_EPS - - min_eigvals = torch.min(torch.linalg.eigvals(vert_normal_covariance_sum).abs(), dim=-1).values - - # Mask out degree-3 vertices - vert_area = torch.where(vert_degree == 3, torch.tensor(0, dtype=vert_area.dtype,device=vert_area.device), vert_area) - - # Adjust the vertex area weighting so it is unit-less, and 1 on average - vert_area = vert_area * (V / torch.sum(vert_area, dim=-1, keepdim=True)) - - return vert_area * min_eigvals - -def sdf_reg_loss(sdf, all_edges): - sdf_f1x6x2 = sdf[all_edges.reshape(-1)].reshape(-1,2) - mask = torch.sign(sdf_f1x6x2[...,0]) != torch.sign(sdf_f1x6x2[...,1]) - sdf_f1x6x2 = sdf_f1x6x2[mask] - sdf_diff = torch.nn.functional.binary_cross_entropy_with_logits(sdf_f1x6x2[...,0], (sdf_f1x6x2[...,1] > 0).float()) + \ - torch.nn.functional.binary_cross_entropy_with_logits(sdf_f1x6x2[...,1], (sdf_f1x6x2[...,0] > 0).float()) - return sdf_diff \ No newline at end of file diff --git a/flexicubes/tables.py b/flexicubes/tables.py deleted file mode 100644 index 5873e77..0000000 --- a/flexicubes/tables.py +++ /dev/null @@ -1,791 +0,0 @@ -# Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. -dmc_table = [ -[[-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 8, 9, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 8, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 7, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [4, 7, 8, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 7, 9, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 9, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [4, 5, 9, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 5, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 5, 8, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 7, 8, 9, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 5, 7, 9, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 5, 7, 8, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 5, 7, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 8, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 8, 9, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 8, -1, -1, -1, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 4, 7, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [4, 7, 8, -1, -1, -1, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 4, 7, 9, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 9, -1, -1, -1, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 8, 11, -1, -1, -1], [4, 5, 9, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 5, -1, -1, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 4, 5, 8, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 7, 8, 9, -1, -1, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 5, 7, 9, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 5, 7, 8, -1, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 5, 7, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 9, 10, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 8, 9, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 8, -1, -1, -1, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 7, -1, -1, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 9, 10, -1, -1, -1], [4, 7, 8, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 4, 7, 9, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 9, -1, -1, -1, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [4, 5, 9, -1, -1, -1, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 4, 5, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 4, 5, 8, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 7, 8, 9, -1, -1, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 5, 7, 9, -1, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 5, 7, 8, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 5, 7, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 8, 10, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 9, 10, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[8, 9, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 8, -1, -1, -1, -1], [1, 3, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 7, 10, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 9, 10, 11, -1, -1], [4, 7, 8, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 9, 10, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 9, -1, -1, -1, -1], [1, 3, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 8, 10, 11, -1, -1], [4, 5, 9, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 5, 10, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 8, 10, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 7, 8, 9, -1, -1, -1], [1, 3, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 5, 7, 9, 10, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 5, 7, 8, 10, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 7, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 8, 9, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 6, 8, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 6, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [4, 6, 8, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 6, 9, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 9, -1, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [4, 5, 9, -1, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 5, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 5, 8, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 6, 8, 9, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 5, 6, 9, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 5, 6, 8, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 5, 6, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 6, 7, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 6, 7, 8, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [2, 3, 6, 7, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 6, 7, 8, 9, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 4, 6, 8, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 4, 6, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [2, 3, 4, 6, 8, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 4, 6, 9, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 9, -1, -1, -1, -1], [2, 3, 6, 7, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 6, 7, 8, -1, -1], [4, 5, 9, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 5, -1, -1, -1], [2, 3, 6, 7, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 4, 5, 6, 7, 8], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 5, 6, 8, 9, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 5, 6, 9, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 2, 3, 5, 6, 8], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 5, 6, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 10, -1, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [1, 2, 10, -1, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 9, 10, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 8, 9, 10, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 6, 8, 11, -1, -1, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 6, 11, -1, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 9, 10, -1, -1, -1], [4, 6, 8, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 4, 6, 9, 10, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 9, -1, -1, -1, -1], [1, 2, 10, -1, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [4, 5, 9, -1, -1, -1, -1], [1, 2, 10, -1, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1]], -[[0, 2, 4, 5, 10, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 4, 5, 8, 10, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 6, 8, 9, 11, -1, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 5, 6, 9, 11, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 5, 6, 8, 10, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 5, 6, 10, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 6, 7, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 6, 7, 8, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 6, 7, 9, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[6, 7, 8, 9, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 6, 8, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 6, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 6, 8, 9, 10], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 6, 9, 10, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 9, -1, -1, -1, -1], [1, 3, 6, 7, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 6, 7, 8, 10, -1], [4, 5, 9, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 5, 6, 7, 10], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 6, 7, 8, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 5, 6, 8, 9, 10], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 5, 6, 9, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 8, 9, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 8, -1, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 7, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [4, 7, 8, -1, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 7, 9, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 6, 9, 10, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [4, 6, 9, 10, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 6, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 6, 8, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[6, 7, 8, 9, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 6, 7, 9, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 6, 7, 8, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 6, 7, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 11, -1, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 8, 11, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [2, 3, 11, -1, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 8, 9, 11, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 8, -1, -1, -1, -1], [2, 3, 11, -1, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 4, 7, 11, -1, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [4, 7, 8, -1, -1, -1, -1], [2, 3, 11, -1, -1, -1, -1], [5, 6, 10, -1, -1, -1, -1]], -[[1, 2, 4, 7, 9, 11, -1], [5, 6, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 6, 9, 10, -1, -1, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 8, 11, -1, -1, -1], [4, 6, 9, 10, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 6, 10, -1, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 4, 6, 8, 10, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[6, 7, 8, 9, 10, -1, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 6, 7, 9, 10, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 6, 7, 8, 10, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 6, 7, 10, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 5, 6, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [1, 2, 5, 6, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 5, 6, 9, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 5, 6, 8, 9, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 8, -1, -1, -1, -1], [1, 2, 5, 6, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 7, -1, -1, -1], [1, 2, 5, 6, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 5, 6, 9, -1, -1], [4, 7, 8, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 4, 5, 6, 7, 9], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 4, 6, 9, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [1, 2, 4, 6, 9, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 4, 6, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 4, 6, 8, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 6, 7, 8, 9, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 2, 3, 6, 7, 9], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 6, 7, 8, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 6, 7, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 5, 6, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 5, 6, 8, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 5, 6, 9, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 6, 8, 9, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 8, -1, -1, -1, -1], [1, 3, 5, 6, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 5, 6, 7, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 5, 6, 9, 11, -1], [4, 7, 8, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 6, 7, 9, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 6, 9, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 6, 8, 9, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 6, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 6, 8, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 6, 7, 8, 9, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 6, 7, 8, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[6, 7, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 7, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [5, 7, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [5, 7, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 8, 9, -1, -1, -1], [5, 7, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 8, 10, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 5, 10, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [4, 5, 8, 10, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 5, 9, 10, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 9, 10, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [4, 7, 9, 10, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 7, 10, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 7, 8, 10, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[8, 9, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 9, 10, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 8, 10, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 10, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 5, 7, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 5, 7, 8, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [2, 3, 5, 7, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 5, 7, 8, 9, 10], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 4, 5, 8, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 4, 5, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [2, 3, 4, 5, 8, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 4, 5, 9, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 4, 7, 9, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 4, 7, 8, 9, 10], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 2, 3, 4, 7, 10], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 8, -1, -1, -1, -1], [1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 8, 9, 10, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 9, 10, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 2, 3, 8, 10, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 10, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 5, 7, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [1, 2, 5, 7, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 5, 7, 9, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 5, 7, 8, 9, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 4, 5, 8, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 2, 3, 4, 5, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 4, 5, 8, 9, 11], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 9, -1, -1, -1, -1], [2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 4, 7, 9, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [1, 2, 4, 7, 9, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 4, 7, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 4, 7, 8, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 2, 8, 9, 11, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 2, 3, 9, 11, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 2, 8, 11, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[2, 3, 11, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 5, 7, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 5, 7, 8, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 5, 7, 9, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[5, 7, 8, 9, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 5, 8, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 5, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 5, 8, 9, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 5, 9, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 4, 7, 9, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 4, 7, 8, 9, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 4, 7, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[4, 7, 8, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[1, 3, 8, 9, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 1, 9, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[0, 3, 8, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]], -[[-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1]] -] -num_vd_table = [0, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 3, 1, 2, 2, -2, 1, 2, 1, 2, 1, 1, 2, 1, 1, 2, 2, 2, 1, 2, 3, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, -1, 2, 1, 2, 2, 1, 1, 2, 1, 1, 1, 1, 2, 2, 2, 1, 1, 2, 1, 2, 3, 2, 2, 1, 1, 1, 1, -1, 1, 2, 1, 1, 1, 2, 1, 2, 2, 2, 1, 1, 1, 1, 1, 2, 3, 2, 2, 2, 2, 2, 1, 3, 4, 2, -2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 2, 1, 1, 2, 2, 2, 2, 2, -3, 2, 1, 2, 1, 1, 1, 1, 1, 1, 2, 2, 3, 2, 3, 2, 4, 2, 2, 2, 2, 1, 2, 1, 2, 1, 1, -2, 1, 1, 2, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, -1, 2, 1, 1, 1, 2, 2, 2, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, -1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, -1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0] -check_table = [ -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 1, 0, 0, 194], -[1, -1, 0, 0, 193], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, 1, 0, 164], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, -1, 0, 161], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, 0, 1, 152], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, 0, 1, 145], -[1, 0, 0, 1, 144], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, 0, -1, 137], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, 1, 0, 133], -[1, 0, 1, 0, 132], -[1, 1, 0, 0, 131], -[1, 1, 0, 0, 130], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, 0, 1, 100], -[0, 0, 0, 0, 0], -[1, 0, 0, 1, 98], -[0, 0, 0, 0, 0], -[1, 0, 0, 1, 96], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, 1, 0, 88], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, -1, 0, 82], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, 1, 0, 74], -[0, 0, 0, 0, 0], -[1, 0, 1, 0, 72], -[0, 0, 0, 0, 0], -[1, 0, 0, -1, 70], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, -1, 0, 0, 67], -[0, 0, 0, 0, 0], -[1, -1, 0, 0, 65], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 1, 0, 0, 56], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, -1, 0, 0, 52], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 1, 0, 0, 44], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 1, 0, 0, 40], -[0, 0, 0, 0, 0], -[1, 0, 0, -1, 38], -[1, 0, -1, 0, 37], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, -1, 0, 33], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, -1, 0, 0, 28], -[0, 0, 0, 0, 0], -[1, 0, -1, 0, 26], -[1, 0, 0, -1, 25], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, -1, 0, 0, 20], -[0, 0, 0, 0, 0], -[1, 0, -1, 0, 18], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, 0, -1, 9], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[1, 0, 0, -1, 6], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0], -[0, 0, 0, 0, 0] -] -tet_table = [ -[-1, -1, -1, -1, -1, -1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[1, 1, 1, 1, 1, 1], -[4, 4, 4, 4, 4, 4], -[0, 0, 0, 0, 0, 0], -[4, 0, 0, 4, 4, -1], -[1, 1, 1, 1, 1, 1], -[4, 4, 4, 4, 4, 4], -[0, 4, 0, 4, 4, -1], -[0, 0, 0, 0, 0, 0], -[1, 1, 1, 1, 1, 1], -[5, 5, 5, 5, 5, 5], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[1, 1, 1, 1, 1, 1], -[2, 2, 2, 2, 2, 2], -[0, 0, 0, 0, 0, 0], -[2, 0, 2, -1, 0, 2], -[1, 1, 1, 1, 1, 1], -[2, -1, 2, 4, 4, 2], -[0, 0, 0, 0, 0, 0], -[2, 0, 2, 4, 4, 2], -[1, 1, 1, 1, 1, 1], -[2, 4, 2, 4, 4, 2], -[0, 4, 0, 4, 4, 0], -[2, 0, 2, 0, 0, 2], -[1, 1, 1, 1, 1, 1], -[2, 5, 2, 5, 5, 2], -[0, 0, 0, 0, 0, 0], -[2, 0, 2, 0, 0, 2], -[1, 1, 1, 1, 1, 1], -[1, 1, 1, 1, 1, 1], -[0, 1, 1, -1, 0, 1], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 2, 2], -[4, 1, 1, 4, 4, 1], -[0, 1, 1, 0, 0, 1], -[4, 0, 0, 4, 4, 0], -[2, 2, 2, 2, 2, 2], -[-1, 1, 1, 4, 4, 1], -[0, 1, 1, 4, 4, 1], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 2, 2], -[5, 1, 1, 5, 5, 1], -[0, 1, 1, 0, 0, 1], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 2, 2], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[8, 8, 8, 8, 8, 8], -[1, 1, 1, 4, 4, 1], -[0, 0, 0, 0, 0, 0], -[4, 0, 0, 4, 4, 0], -[4, 4, 4, 4, 4, 4], -[1, 1, 1, 4, 4, 1], -[0, 4, 0, 4, 4, 0], -[0, 0, 0, 0, 0, 0], -[4, 4, 4, 4, 4, 4], -[1, 1, 1, 5, 5, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[5, 5, 5, 5, 5, 5], -[6, 6, 6, 6, 6, 6], -[6, -1, 0, 6, 0, 6], -[6, 0, 0, 6, 0, 6], -[6, 1, 1, 6, 1, 6], -[4, 4, 4, 4, 4, 4], -[0, 0, 0, 0, 0, 0], -[4, 0, 0, 4, 4, 4], -[1, 1, 1, 1, 1, 1], -[6, 4, -1, 6, 4, 6], -[6, 4, 0, 6, 4, 6], -[6, 0, 0, 6, 0, 6], -[6, 1, 1, 6, 1, 6], -[5, 5, 5, 5, 5, 5], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[1, 1, 1, 1, 1, 1], -[2, 2, 2, 2, 2, 2], -[0, 0, 0, 0, 0, 0], -[2, 0, 2, 2, 0, 2], -[1, 1, 1, 1, 1, 1], -[2, 2, 2, 2, 2, 2], -[0, 0, 0, 0, 0, 0], -[2, 0, 2, 2, 2, 2], -[1, 1, 1, 1, 1, 1], -[2, 4, 2, 2, 4, 2], -[0, 4, 0, 4, 4, 0], -[2, 0, 2, 2, 0, 2], -[1, 1, 1, 1, 1, 1], -[2, 2, 2, 2, 2, 2], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[1, 1, 1, 1, 1, 1], -[6, 1, 1, 6, -1, 6], -[6, 1, 1, 6, 0, 6], -[6, 0, 0, 6, 0, 6], -[6, 2, 2, 6, 2, 6], -[4, 1, 1, 4, 4, 1], -[0, 1, 1, 0, 0, 1], -[4, 0, 0, 4, 4, 4], -[2, 2, 2, 2, 2, 2], -[6, 1, 1, 6, 4, 6], -[6, 1, 1, 6, 4, 6], -[6, 0, 0, 6, 0, 6], -[6, 2, 2, 6, 2, 6], -[5, 1, 1, 5, 5, 1], -[0, 1, 1, 0, 0, 1], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 2, 2], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[6, 6, 6, 6, 6, 6], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[4, 4, 4, 4, 4, 4], -[1, 1, 1, 1, 4, 1], -[0, 4, 0, 4, 4, 0], -[0, 0, 0, 0, 0, 0], -[4, 4, 4, 4, 4, 4], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 5, 0, 5, 0, 5], -[5, 5, 5, 5, 5, 5], -[5, 5, 5, 5, 5, 5], -[0, 5, 0, 5, 0, 5], -[-1, 5, 0, 5, 0, 5], -[1, 5, 1, 5, 1, 5], -[4, 5, -1, 5, 4, 5], -[0, 5, 0, 5, 0, 5], -[4, 5, 0, 5, 4, 5], -[1, 5, 1, 5, 1, 5], -[4, 4, 4, 4, 4, 4], -[0, 4, 0, 4, 4, 4], -[0, 0, 0, 0, 0, 0], -[1, 1, 1, 1, 1, 1], -[6, 6, 6, 6, 6, 6], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[1, 1, 1, 1, 1, 1], -[2, 5, 2, 5, -1, 5], -[0, 5, 0, 5, 0, 5], -[2, 5, 2, 5, 0, 5], -[1, 5, 1, 5, 1, 5], -[2, 5, 2, 5, 4, 5], -[0, 5, 0, 5, 0, 5], -[2, 5, 2, 5, 4, 5], -[1, 5, 1, 5, 1, 5], -[2, 4, 2, 4, 4, 2], -[0, 4, 0, 4, 4, 4], -[2, 0, 2, 0, 0, 2], -[1, 1, 1, 1, 1, 1], -[2, 6, 2, 6, 6, 2], -[0, 0, 0, 0, 0, 0], -[2, 0, 2, 0, 0, 2], -[1, 1, 1, 1, 1, 1], -[1, 1, 1, 1, 1, 1], -[0, 1, 1, 1, 0, 1], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 2, 2], -[4, 1, 1, 1, 4, 1], -[0, 1, 1, 1, 0, 1], -[4, 0, 0, 4, 4, 0], -[2, 2, 2, 2, 2, 2], -[1, 1, 1, 1, 1, 1], -[0, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 2, 2], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 2, 2], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[5, 5, 5, 5, 5, 5], -[1, 1, 1, 1, 4, 1], -[0, 0, 0, 0, 0, 0], -[4, 0, 0, 4, 4, 0], -[4, 4, 4, 4, 4, 4], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[4, 4, 4, 4, 4, 4], -[1, 1, 1, 1, 1, 1], -[6, 0, 0, 6, 0, 6], -[0, 0, 0, 0, 0, 0], -[6, 6, 6, 6, 6, 6], -[5, 5, 5, 5, 5, 5], -[5, 5, 0, 5, 0, 5], -[5, 5, 0, 5, 0, 5], -[5, 5, 1, 5, 1, 5], -[4, 4, 4, 4, 4, 4], -[0, 0, 0, 0, 0, 0], -[4, 4, 0, 4, 4, 4], -[1, 1, 1, 1, 1, 1], -[4, 4, 4, 4, 4, 4], -[4, 4, 0, 4, 4, 4], -[0, 0, 0, 0, 0, 0], -[1, 1, 1, 1, 1, 1], -[8, 8, 8, 8, 8, 8], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[1, 1, 1, 1, 1, 1], -[2, 2, 2, 2, 2, 2], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 0, 2], -[1, 1, 1, 1, 1, 1], -[2, 2, 2, 2, 2, 2], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 2, 2], -[1, 1, 1, 1, 1, 1], -[2, 2, 2, 2, 2, 2], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[4, 1, 1, 4, 4, 1], -[2, 2, 2, 2, 2, 2], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[1, 1, 1, 1, 1, 1], -[1, 1, 1, 1, 1, 1], -[1, 1, 1, 1, 0, 1], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 2, 2], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[2, 4, 2, 4, 4, 2], -[1, 1, 1, 1, 1, 1], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 2, 2], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[2, 2, 2, 2, 2, 2], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[5, 5, 5, 5, 5, 5], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[4, 4, 4, 4, 4, 4], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[4, 4, 4, 4, 4, 4], -[1, 1, 1, 1, 1, 1], -[0, 0, 0, 0, 0, 0], -[0, 0, 0, 0, 0, 0], -[12, 12, 12, 12, 12, 12] -] diff --git a/flexicubes/util.py b/flexicubes/util.py deleted file mode 100644 index e7de64f..0000000 --- a/flexicubes/util.py +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. -import numpy as np -import torch -import nvdiffrast.torch as dr - -############################################################################### -# Functions adapted from https://github.com/NVlabs/nvdiffrec -############################################################################### - -def dot(x: torch.Tensor, y: torch.Tensor) -> torch.Tensor: - return torch.sum(x*y, -1, keepdim=True) - -def length(x: torch.Tensor, eps: float =1e-8) -> torch.Tensor: - return torch.sqrt(torch.clamp(dot(x,x), min=eps)) # Clamp to avoid nan gradients because grad(sqrt(0)) = NaN - -def safe_normalize(x: torch.Tensor, eps: float =1e-8) -> torch.Tensor: - return x / length(x, eps) - -def perspective(fovy=0.7854, aspect=1.0, n=0.1, f=1000.0, device=None): - y = np.tan(fovy / 2) - return torch.tensor([[1/(y*aspect), 0, 0, 0], - [ 0, 1/-y, 0, 0], - [ 0, 0, -(f+n)/(f-n), -(2*f*n)/(f-n)], - [ 0, 0, -1, 0]], dtype=torch.float32, device=device) - -def translate(x, y, z, device=None): - return torch.tensor([[1, 0, 0, x], - [0, 1, 0, y], - [0, 0, 1, z], - [0, 0, 0, 1]], dtype=torch.float32, device=device) - -@torch.no_grad() -def random_rotation_translation(t, device=None): - m = np.random.normal(size=[3, 3]) - m[1] = np.cross(m[0], m[2]) - m[2] = np.cross(m[0], m[1]) - m = m / np.linalg.norm(m, axis=1, keepdims=True) - m = np.pad(m, [[0, 1], [0, 1]], mode='constant') - m[3, 3] = 1.0 - m[:3, 3] = np.random.uniform(-t, t, size=[3]) - return torch.tensor(m, dtype=torch.float32, device=device) - -def rotate_x(a, device=None): - s, c = np.sin(a), np.cos(a) - return torch.tensor([[1, 0, 0, 0], - [0, c, s, 0], - [0, -s, c, 0], - [0, 0, 0, 1]], dtype=torch.float32, device=device) - -def rotate_y(a, device=None): - s, c = np.sin(a), np.cos(a) - return torch.tensor([[ c, 0, s, 0], - [ 0, 1, 0, 0], - [-s, 0, c, 0], - [ 0, 0, 0, 1]], dtype=torch.float32, device=device) - -class SimpleMesh: - def __init__(self, vertices, faces): - self.vertices = vertices - self.faces = faces - - def auto_normals(self): - v0 = self.vertices[self.faces[:, 0], :] - v1 = self.vertices[self.faces[:, 1], :] - v2 = self.vertices[self.faces[:, 2], :] - nrm = safe_normalize(torch.cross(v1 - v0, v2 - v0, dim=-1)) - self.nrm = nrm - -def xfm_points(points, matrix): - '''Transform points. - Args: - points: Tensor containing 3D points with shape [minibatch_size, num_vertices, 3] or [1, num_vertices, 3] - matrix: A 4x4 transform matrix with shape [minibatch_size, 4, 4] - use_python: Use PyTorch's torch.matmul (for validation) - Returns: - Transformed points in homogeneous 4D with shape [minibatch_size, num_vertices, 4]. - ''' - out = torch.matmul( - torch.nn.functional.pad(points, pad=(0, 1), mode='constant', value=1.0), torch.transpose(matrix, 1, 2)) - if torch.is_anomaly_enabled(): - assert torch.all(torch.isfinite(out)), "Output of xfm_points contains inf or NaN" - return out - -def interpolate(attr, rast, attr_idx, rast_db=None): - return dr.interpolate( - attr, rast, attr_idx, rast_db=rast_db, - diff_attrs=None if rast_db is None else 'all') \ No newline at end of file diff --git a/gen_3d_modules/Era3D/mvdiffusion/data/single_image_dataset.py b/gen_3d_modules/Era3D/mvdiffusion/data/single_image_dataset.py index 03c580a..2915c41 100644 --- a/gen_3d_modules/Era3D/mvdiffusion/data/single_image_dataset.py +++ b/gen_3d_modules/Era3D/mvdiffusion/data/single_image_dataset.py @@ -1,26 +1,14 @@ -from typing import Dict import numpy as np -from omegaconf import DictConfig, ListConfig import torch from torch.utils.data import Dataset -from pathlib import Path -import json from PIL import Image -from torchvision import transforms -from einops import rearrange from typing import Literal, Tuple, Optional, Any import cv2 -import random import json -import os, sys -import math - -from glob import glob +import os import PIL.Image -from .normal_utils import trans_normal, normal2img, img2normal -import pdb import cv2 import numpy as np diff --git a/gen_3d_modules/InstantMesh/models/geometry/rep_3d/dmtet.py b/gen_3d_modules/InstantMesh/models/geometry/rep_3d/dmtet.py deleted file mode 100644 index b6a7093..0000000 --- a/gen_3d_modules/InstantMesh/models/geometry/rep_3d/dmtet.py +++ /dev/null @@ -1,504 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch -import numpy as np -import os -from . import Geometry -from .dmtet_utils import get_center_boundary_index -import torch.nn.functional as F - - -############################################################################### -# DMTet utility functions -############################################################################### -def create_mt_variable(device): - triangle_table = torch.tensor( - [ - [-1, -1, -1, -1, -1, -1], - [1, 0, 2, -1, -1, -1], - [4, 0, 3, -1, -1, -1], - [1, 4, 2, 1, 3, 4], - [3, 1, 5, -1, -1, -1], - [2, 3, 0, 2, 5, 3], - [1, 4, 0, 1, 5, 4], - [4, 2, 5, -1, -1, -1], - [4, 5, 2, -1, -1, -1], - [4, 1, 0, 4, 5, 1], - [3, 2, 0, 3, 5, 2], - [1, 3, 5, -1, -1, -1], - [4, 1, 2, 4, 3, 1], - [3, 0, 4, -1, -1, -1], - [2, 0, 1, -1, -1, -1], - [-1, -1, -1, -1, -1, -1] - ], dtype=torch.long, device=device) - - num_triangles_table = torch.tensor([0, 1, 1, 2, 1, 2, 2, 1, 1, 2, 2, 1, 2, 1, 1, 0], dtype=torch.long, device=device) - base_tet_edges = torch.tensor([0, 1, 0, 2, 0, 3, 1, 2, 1, 3, 2, 3], dtype=torch.long, device=device) - v_id = torch.pow(2, torch.arange(4, dtype=torch.long, device=device)) - return triangle_table, num_triangles_table, base_tet_edges, v_id - - -def sort_edges(edges_ex2): - with torch.no_grad(): - order = (edges_ex2[:, 0] > edges_ex2[:, 1]).long() - order = order.unsqueeze(dim=1) - a = torch.gather(input=edges_ex2, index=order, dim=1) - b = torch.gather(input=edges_ex2, index=1 - order, dim=1) - return torch.stack([a, b], -1) - - -############################################################################### -# marching tetrahedrons (differentiable) -############################################################################### - -def marching_tets(pos_nx3, sdf_n, tet_fx4, triangle_table, num_triangles_table, base_tet_edges, v_id): - with torch.no_grad(): - occ_n = sdf_n > 0 - occ_fx4 = occ_n[tet_fx4.reshape(-1)].reshape(-1, 4) - occ_sum = torch.sum(occ_fx4, -1) - valid_tets = (occ_sum > 0) & (occ_sum < 4) - occ_sum = occ_sum[valid_tets] - - # find all vertices - all_edges = tet_fx4[valid_tets][:, base_tet_edges].reshape(-1, 2) - all_edges = sort_edges(all_edges) - unique_edges, idx_map = torch.unique(all_edges, dim=0, return_inverse=True) - - unique_edges = unique_edges.long() - mask_edges = occ_n[unique_edges.reshape(-1)].reshape(-1, 2).sum(-1) == 1 - mapping = torch.ones((unique_edges.shape[0]), dtype=torch.long, device=sdf_n.device) * -1 - mapping[mask_edges] = torch.arange(mask_edges.sum(), dtype=torch.long, device=sdf_n.device) - idx_map = mapping[idx_map] # map edges to verts - - interp_v = unique_edges[mask_edges] # .long() - edges_to_interp = pos_nx3[interp_v.reshape(-1)].reshape(-1, 2, 3) - edges_to_interp_sdf = sdf_n[interp_v.reshape(-1)].reshape(-1, 2, 1) - edges_to_interp_sdf[:, -1] *= -1 - - denominator = edges_to_interp_sdf.sum(1, keepdim=True) - - edges_to_interp_sdf = torch.flip(edges_to_interp_sdf, [1]) / denominator - verts = (edges_to_interp * edges_to_interp_sdf).sum(1) - - idx_map = idx_map.reshape(-1, 6) - - tetindex = (occ_fx4[valid_tets] * v_id.unsqueeze(0)).sum(-1) - num_triangles = num_triangles_table[tetindex] - - # Generate triangle indices - faces = torch.cat( - ( - torch.gather( - input=idx_map[num_triangles == 1], dim=1, - index=triangle_table[tetindex[num_triangles == 1]][:, :3]).reshape(-1, 3), - torch.gather( - input=idx_map[num_triangles == 2], dim=1, - index=triangle_table[tetindex[num_triangles == 2]][:, :6]).reshape(-1, 3), - ), dim=0) - return verts, faces - - -def create_tetmesh_variables(device='cuda'): - tet_table = torch.tensor( - [[-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], - [0, 4, 5, 6, -1, -1, -1, -1, -1, -1, -1, -1], - [1, 4, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1], - [1, 0, 8, 7, 0, 5, 8, 7, 0, 5, 6, 8], - [2, 5, 7, 9, -1, -1, -1, -1, -1, -1, -1, -1], - [2, 0, 9, 7, 0, 4, 9, 7, 0, 4, 6, 9], - [2, 1, 9, 5, 1, 4, 9, 5, 1, 4, 8, 9], - [6, 0, 1, 2, 6, 1, 2, 8, 6, 8, 2, 9], - [3, 6, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1], - [3, 0, 9, 8, 0, 4, 9, 8, 0, 4, 5, 9], - [3, 1, 9, 6, 1, 4, 9, 6, 1, 4, 7, 9], - [5, 0, 1, 3, 5, 1, 3, 7, 5, 7, 3, 9], - [3, 2, 8, 6, 2, 5, 8, 6, 2, 5, 7, 8], - [4, 0, 2, 3, 4, 2, 3, 7, 4, 7, 3, 8], - [4, 1, 2, 3, 4, 2, 3, 5, 4, 5, 3, 6], - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]], dtype=torch.long, device=device) - num_tets_table = torch.tensor([0, 1, 1, 3, 1, 3, 3, 3, 1, 3, 3, 3, 3, 3, 3, 0], dtype=torch.long, device=device) - return tet_table, num_tets_table - - -def marching_tets_tetmesh( - pos_nx3, sdf_n, tet_fx4, triangle_table, num_triangles_table, base_tet_edges, v_id, - return_tet_mesh=False, ori_v=None, num_tets_table=None, tet_table=None): - with torch.no_grad(): - occ_n = sdf_n > 0 - occ_fx4 = occ_n[tet_fx4.reshape(-1)].reshape(-1, 4) - occ_sum = torch.sum(occ_fx4, -1) - valid_tets = (occ_sum > 0) & (occ_sum < 4) - occ_sum = occ_sum[valid_tets] - - # find all vertices - all_edges = tet_fx4[valid_tets][:, base_tet_edges].reshape(-1, 2) - all_edges = sort_edges(all_edges) - unique_edges, idx_map = torch.unique(all_edges, dim=0, return_inverse=True) - - unique_edges = unique_edges.long() - mask_edges = occ_n[unique_edges.reshape(-1)].reshape(-1, 2).sum(-1) == 1 - mapping = torch.ones((unique_edges.shape[0]), dtype=torch.long, device=sdf_n.device) * -1 - mapping[mask_edges] = torch.arange(mask_edges.sum(), dtype=torch.long, device=sdf_n.device) - idx_map = mapping[idx_map] # map edges to verts - - interp_v = unique_edges[mask_edges] # .long() - edges_to_interp = pos_nx3[interp_v.reshape(-1)].reshape(-1, 2, 3) - edges_to_interp_sdf = sdf_n[interp_v.reshape(-1)].reshape(-1, 2, 1) - edges_to_interp_sdf[:, -1] *= -1 - - denominator = edges_to_interp_sdf.sum(1, keepdim=True) - - edges_to_interp_sdf = torch.flip(edges_to_interp_sdf, [1]) / denominator - verts = (edges_to_interp * edges_to_interp_sdf).sum(1) - - idx_map = idx_map.reshape(-1, 6) - - tetindex = (occ_fx4[valid_tets] * v_id.unsqueeze(0)).sum(-1) - num_triangles = num_triangles_table[tetindex] - - # Generate triangle indices - faces = torch.cat( - ( - torch.gather( - input=idx_map[num_triangles == 1], dim=1, - index=triangle_table[tetindex[num_triangles == 1]][:, :3]).reshape(-1, 3), - torch.gather( - input=idx_map[num_triangles == 2], dim=1, - index=triangle_table[tetindex[num_triangles == 2]][:, :6]).reshape(-1, 3), - ), dim=0) - if not return_tet_mesh: - return verts, faces - occupied_verts = ori_v[occ_n] - mapping = torch.ones((pos_nx3.shape[0]), dtype=torch.long, device="cuda") * -1 - mapping[occ_n] = torch.arange(occupied_verts.shape[0], device="cuda") - tet_fx4 = mapping[tet_fx4.reshape(-1)].reshape((-1, 4)) - - idx_map = torch.cat([tet_fx4[valid_tets] + verts.shape[0], idx_map], -1) # t x 10 - tet_verts = torch.cat([verts, occupied_verts], 0) - num_tets = num_tets_table[tetindex] - - tets = torch.cat( - ( - torch.gather(input=idx_map[num_tets == 1], dim=1, index=tet_table[tetindex[num_tets == 1]][:, :4]).reshape( - -1, - 4), - torch.gather(input=idx_map[num_tets == 3], dim=1, index=tet_table[tetindex[num_tets == 3]][:, :12]).reshape( - -1, - 4), - ), dim=0) - # add fully occupied tets - fully_occupied = occ_fx4.sum(-1) == 4 - tet_fully_occupied = tet_fx4[fully_occupied] + verts.shape[0] - tets = torch.cat([tets, tet_fully_occupied]) - - return verts, faces, tet_verts, tets - - -############################################################################### -# Compact tet grid -############################################################################### - -def compact_tets(pos_nx3, sdf_n, tet_fx4): - with torch.no_grad(): - # Find surface tets - occ_n = sdf_n > 0 - occ_fx4 = occ_n[tet_fx4.reshape(-1)].reshape(-1, 4) - occ_sum = torch.sum(occ_fx4, -1) - valid_tets = (occ_sum > 0) & (occ_sum < 4) # one value per tet, these are the surface tets - - valid_vtx = tet_fx4[valid_tets].reshape(-1) - unique_vtx, idx_map = torch.unique(valid_vtx, dim=0, return_inverse=True) - new_pos = pos_nx3[unique_vtx] - new_sdf = sdf_n[unique_vtx] - new_tets = idx_map.reshape(-1, 4) - return new_pos, new_sdf, new_tets - - -############################################################################### -# Subdivide volume -############################################################################### - -def batch_subdivide_volume(tet_pos_bxnx3, tet_bxfx4, grid_sdf): - device = tet_pos_bxnx3.device - # get new verts - tet_fx4 = tet_bxfx4[0] - edges = [0, 1, 0, 2, 0, 3, 1, 2, 1, 3, 2, 3] - all_edges = tet_fx4[:, edges].reshape(-1, 2) - all_edges = sort_edges(all_edges) - unique_edges, idx_map = torch.unique(all_edges, dim=0, return_inverse=True) - idx_map = idx_map + tet_pos_bxnx3.shape[1] - all_values = torch.cat([tet_pos_bxnx3, grid_sdf], -1) - mid_points_pos = all_values[:, unique_edges.reshape(-1)].reshape( - all_values.shape[0], -1, 2, - all_values.shape[-1]).mean(2) - new_v = torch.cat([all_values, mid_points_pos], 1) - new_v, new_sdf = new_v[..., :3], new_v[..., 3] - - # get new tets - - idx_a, idx_b, idx_c, idx_d = tet_fx4[:, 0], tet_fx4[:, 1], tet_fx4[:, 2], tet_fx4[:, 3] - idx_ab = idx_map[0::6] - idx_ac = idx_map[1::6] - idx_ad = idx_map[2::6] - idx_bc = idx_map[3::6] - idx_bd = idx_map[4::6] - idx_cd = idx_map[5::6] - - tet_1 = torch.stack([idx_a, idx_ab, idx_ac, idx_ad], dim=1) - tet_2 = torch.stack([idx_b, idx_bc, idx_ab, idx_bd], dim=1) - tet_3 = torch.stack([idx_c, idx_ac, idx_bc, idx_cd], dim=1) - tet_4 = torch.stack([idx_d, idx_ad, idx_cd, idx_bd], dim=1) - tet_5 = torch.stack([idx_ab, idx_ac, idx_ad, idx_bd], dim=1) - tet_6 = torch.stack([idx_ab, idx_ac, idx_bd, idx_bc], dim=1) - tet_7 = torch.stack([idx_cd, idx_ac, idx_bd, idx_ad], dim=1) - tet_8 = torch.stack([idx_cd, idx_ac, idx_bc, idx_bd], dim=1) - - tet_np = torch.cat([tet_1, tet_2, tet_3, tet_4, tet_5, tet_6, tet_7, tet_8], dim=0) - tet_np = tet_np.reshape(1, -1, 4).expand(tet_pos_bxnx3.shape[0], -1, -1) - tet = tet_np.long().to(device) - - return new_v, tet, new_sdf - - -############################################################################### -# Adjacency -############################################################################### -def tet_to_tet_adj_sparse(tet_tx4): - # include self connection!!!!!!!!!!!!!!!!!!! - with torch.no_grad(): - t = tet_tx4.shape[0] - device = tet_tx4.device - idx_array = torch.LongTensor( - [0, 1, 2, - 1, 0, 3, - 2, 3, 0, - 3, 2, 1]).to(device).reshape(4, 3).unsqueeze(0).expand(t, -1, -1) # (t, 4, 3) - - # get all faces - all_faces = torch.gather(input=tet_tx4.unsqueeze(1).expand(-1, 4, -1), index=idx_array, dim=-1).reshape( - -1, - 3) # (tx4, 3) - all_faces_tet_idx = torch.arange(t, device=device).unsqueeze(-1).expand(-1, 4).reshape(-1) - # sort and group - all_faces_sorted, _ = torch.sort(all_faces, dim=1) - - all_faces_unique, inverse_indices, counts = torch.unique( - all_faces_sorted, dim=0, return_counts=True, - return_inverse=True) - tet_face_fx3 = all_faces_unique[counts == 2] - counts = counts[inverse_indices] # tx4 - valid = (counts == 2) - - group = inverse_indices[valid] - # print (inverse_indices.shape, group.shape, all_faces_tet_idx.shape) - _, indices = torch.sort(group) - all_faces_tet_idx_grouped = all_faces_tet_idx[valid][indices] - tet_face_tetidx_fx2 = torch.stack([all_faces_tet_idx_grouped[::2], all_faces_tet_idx_grouped[1::2]], dim=-1) - - tet_adj_idx = torch.cat([tet_face_tetidx_fx2, torch.flip(tet_face_tetidx_fx2, [1])]) - adj_self = torch.arange(t, device=tet_tx4.device) - adj_self = torch.stack([adj_self, adj_self], -1) - tet_adj_idx = torch.cat([tet_adj_idx, adj_self]) - - tet_adj_idx = torch.unique(tet_adj_idx, dim=0) - values = torch.ones( - tet_adj_idx.shape[0], device=tet_tx4.device).float() - adj_sparse = torch.sparse.FloatTensor( - tet_adj_idx.t(), values, torch.Size([t, t])) - - # normalization - neighbor_num = 1.0 / torch.sparse.sum( - adj_sparse, dim=1).to_dense() - values = torch.index_select(neighbor_num, 0, tet_adj_idx[:, 0]) - adj_sparse = torch.sparse.FloatTensor( - tet_adj_idx.t(), values, torch.Size([t, t])) - return adj_sparse - - -############################################################################### -# Compact grid -############################################################################### - -def get_tet_bxfx4x3(bxnxz, bxfx4): - n_batch, z = bxnxz.shape[0], bxnxz.shape[2] - gather_input = bxnxz.unsqueeze(2).expand( - n_batch, bxnxz.shape[1], 4, z) - gather_index = bxfx4.unsqueeze(-1).expand( - n_batch, bxfx4.shape[1], 4, z).long() - tet_bxfx4xz = torch.gather( - input=gather_input, dim=1, index=gather_index) - - return tet_bxfx4xz - - -def shrink_grid(tet_pos_bxnx3, tet_bxfx4, grid_sdf): - with torch.no_grad(): - assert tet_pos_bxnx3.shape[0] == 1 - - occ = grid_sdf[0] > 0 - occ_sum = get_tet_bxfx4x3(occ.unsqueeze(0).unsqueeze(-1), tet_bxfx4).reshape(-1, 4).sum(-1) - mask = (occ_sum > 0) & (occ_sum < 4) - - # build connectivity graph - adj_matrix = tet_to_tet_adj_sparse(tet_bxfx4[0]) - mask = mask.float().unsqueeze(-1) - - # Include a one ring of neighbors - for i in range(1): - mask = torch.sparse.mm(adj_matrix, mask) - mask = mask.squeeze(-1) > 0 - - mapping = torch.zeros((tet_pos_bxnx3.shape[1]), device=tet_pos_bxnx3.device, dtype=torch.long) - new_tet_bxfx4 = tet_bxfx4[:, mask].long() - selected_verts_idx = torch.unique(new_tet_bxfx4) - new_tet_pos_bxnx3 = tet_pos_bxnx3[:, selected_verts_idx] - mapping[selected_verts_idx] = torch.arange(selected_verts_idx.shape[0], device=tet_pos_bxnx3.device) - new_tet_bxfx4 = mapping[new_tet_bxfx4.reshape(-1)].reshape(new_tet_bxfx4.shape) - new_grid_sdf = grid_sdf[:, selected_verts_idx] - return new_tet_pos_bxnx3, new_tet_bxfx4, new_grid_sdf - - -############################################################################### -# Regularizer -############################################################################### - -def sdf_reg_loss(sdf, all_edges): - sdf_f1x6x2 = sdf[all_edges.reshape(-1)].reshape(-1, 2) - mask = torch.sign(sdf_f1x6x2[..., 0]) != torch.sign(sdf_f1x6x2[..., 1]) - sdf_f1x6x2 = sdf_f1x6x2[mask] - sdf_diff = torch.nn.functional.binary_cross_entropy_with_logits( - sdf_f1x6x2[..., 0], - (sdf_f1x6x2[..., 1] > 0).float()) + \ - torch.nn.functional.binary_cross_entropy_with_logits( - sdf_f1x6x2[..., 1], - (sdf_f1x6x2[..., 0] > 0).float()) - return sdf_diff - - -def sdf_reg_loss_batch(sdf, all_edges): - sdf_f1x6x2 = sdf[:, all_edges.reshape(-1)].reshape(sdf.shape[0], -1, 2) - mask = torch.sign(sdf_f1x6x2[..., 0]) != torch.sign(sdf_f1x6x2[..., 1]) - sdf_f1x6x2 = sdf_f1x6x2[mask] - sdf_diff = torch.nn.functional.binary_cross_entropy_with_logits(sdf_f1x6x2[..., 0], (sdf_f1x6x2[..., 1] > 0).float()) + \ - torch.nn.functional.binary_cross_entropy_with_logits(sdf_f1x6x2[..., 1], (sdf_f1x6x2[..., 0] > 0).float()) - return sdf_diff - - -############################################################################### -# Geometry interface -############################################################################### -class DMTetGeometry(Geometry): - def __init__( - self, grid_res=64, scale=2.0, device='cuda', renderer=None, - render_type='neural_render', args=None): - super(DMTetGeometry, self).__init__() - self.grid_res = grid_res - self.device = device - self.args = args - tets = np.load('data/tets/%d_compress.npz' % (grid_res)) - self.verts = torch.from_numpy(tets['vertices']).float().to(self.device) - # Make sure the tet is zero-centered and length is equal to 1 - length = self.verts.max(dim=0)[0] - self.verts.min(dim=0)[0] - length = length.max() - mid = (self.verts.max(dim=0)[0] + self.verts.min(dim=0)[0]) / 2.0 - self.verts = (self.verts - mid.unsqueeze(dim=0)) / length - if isinstance(scale, list): - self.verts[:, 0] = self.verts[:, 0] * scale[0] - self.verts[:, 1] = self.verts[:, 1] * scale[1] - self.verts[:, 2] = self.verts[:, 2] * scale[1] - else: - self.verts = self.verts * scale - self.indices = torch.from_numpy(tets['tets']).long().to(self.device) - self.triangle_table, self.num_triangles_table, self.base_tet_edges, self.v_id = create_mt_variable(self.device) - self.tet_table, self.num_tets_table = create_tetmesh_variables(self.device) - # Parameters for regularization computation - edges = torch.tensor([0, 1, 0, 2, 0, 3, 1, 2, 1, 3, 2, 3], dtype=torch.long, device=self.device) - all_edges = self.indices[:, edges].reshape(-1, 2) - all_edges_sorted = torch.sort(all_edges, dim=1)[0] - self.all_edges = torch.unique(all_edges_sorted, dim=0) - - # Parameters used for fix boundary sdf - self.center_indices, self.boundary_indices = get_center_boundary_index(self.verts) - self.renderer = renderer - self.render_type = render_type - - def getAABB(self): - return torch.min(self.verts, dim=0).values, torch.max(self.verts, dim=0).values - - def get_mesh(self, v_deformed_nx3, sdf_n, with_uv=False, indices=None): - if indices is None: - indices = self.indices - verts, faces = marching_tets( - v_deformed_nx3, sdf_n, indices, self.triangle_table, - self.num_triangles_table, self.base_tet_edges, self.v_id) - faces = torch.cat( - [faces[:, 0:1], - faces[:, 2:3], - faces[:, 1:2], ], dim=-1) - return verts, faces - - def get_tet_mesh(self, v_deformed_nx3, sdf_n, with_uv=False, indices=None): - if indices is None: - indices = self.indices - verts, faces, tet_verts, tets = marching_tets_tetmesh( - v_deformed_nx3, sdf_n, indices, self.triangle_table, - self.num_triangles_table, self.base_tet_edges, self.v_id, return_tet_mesh=True, - num_tets_table=self.num_tets_table, tet_table=self.tet_table, ori_v=v_deformed_nx3) - faces = torch.cat( - [faces[:, 0:1], - faces[:, 2:3], - faces[:, 1:2], ], dim=-1) - return verts, faces, tet_verts, tets - - def render_mesh(self, mesh_v_nx3, mesh_f_fx3, camera_mv_bx4x4, resolution=256, hierarchical_mask=False): - return_value = dict() - if self.render_type == 'neural_render': - tex_pos, mask, hard_mask, rast, v_pos_clip, mask_pyramid, depth = self.renderer.render_mesh( - mesh_v_nx3.unsqueeze(dim=0), - mesh_f_fx3.int(), - camera_mv_bx4x4, - mesh_v_nx3.unsqueeze(dim=0), - resolution=resolution, - device=self.device, - hierarchical_mask=hierarchical_mask - ) - - return_value['tex_pos'] = tex_pos - return_value['mask'] = mask - return_value['hard_mask'] = hard_mask - return_value['rast'] = rast - return_value['v_pos_clip'] = v_pos_clip - return_value['mask_pyramid'] = mask_pyramid - return_value['depth'] = depth - else: - raise NotImplementedError - - return return_value - - def render(self, v_deformed_bxnx3=None, sdf_bxn=None, camera_mv_bxnviewx4x4=None, resolution=256): - # Here I assume a batch of meshes (can be different mesh and geometry), for the other shapes, the batch is 1 - v_list = [] - f_list = [] - n_batch = v_deformed_bxnx3.shape[0] - all_render_output = [] - for i_batch in range(n_batch): - verts_nx3, faces_fx3 = self.get_mesh(v_deformed_bxnx3[i_batch], sdf_bxn[i_batch]) - v_list.append(verts_nx3) - f_list.append(faces_fx3) - render_output = self.render_mesh(verts_nx3, faces_fx3, camera_mv_bxnviewx4x4[i_batch], resolution) - all_render_output.append(render_output) - - # Concatenate all render output - return_keys = all_render_output[0].keys() - return_value = dict() - for k in return_keys: - value = [v[k] for v in all_render_output] - return_value[k] = value - # We can do concatenation outside of the render - return return_value diff --git a/gen_3d_modules/InstantMesh/models/geometry/rep_3d/dmtet_utils.py b/gen_3d_modules/InstantMesh/models/geometry/rep_3d/dmtet_utils.py deleted file mode 100644 index 8d466a9..0000000 --- a/gen_3d_modules/InstantMesh/models/geometry/rep_3d/dmtet_utils.py +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch - - -def get_center_boundary_index(verts): - length_ = torch.sum(verts ** 2, dim=-1) - center_idx = torch.argmin(length_) - boundary_neg = verts == verts.max() - boundary_pos = verts == verts.min() - boundary = torch.bitwise_or(boundary_pos, boundary_neg) - boundary = torch.sum(boundary.float(), dim=-1) - boundary_idx = torch.nonzero(boundary) - return center_idx, boundary_idx.squeeze(dim=-1) diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/__init__.py b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/__init__.py deleted file mode 100644 index 5fd361f..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/__init__.py +++ /dev/null @@ -1,3 +0,0 @@ -import pointnet2_ops.pointnet2_modules -import pointnet2_ops.pointnet2_utils -from pointnet2_ops._version import __version__ diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/ball_query.h b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/ball_query.h deleted file mode 100644 index 1bbc638..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/ball_query.h +++ /dev/null @@ -1,5 +0,0 @@ -#pragma once -#include - -at::Tensor ball_query(at::Tensor new_xyz, at::Tensor xyz, const float radius, - const int nsample); diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/cuda_utils.h b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/cuda_utils.h deleted file mode 100644 index 0fd5b6e..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/cuda_utils.h +++ /dev/null @@ -1,41 +0,0 @@ -#ifndef _CUDA_UTILS_H -#define _CUDA_UTILS_H - -#include -#include -#include - -#include -#include - -#include - -#define TOTAL_THREADS 512 - -inline int opt_n_threads(int work_size) { - const int pow_2 = std::log(static_cast(work_size)) / std::log(2.0); - - return max(min(1 << pow_2, TOTAL_THREADS), 1); -} - -inline dim3 opt_block_config(int x, int y) { - const int x_threads = opt_n_threads(x); - const int y_threads = - max(min(opt_n_threads(y), TOTAL_THREADS / x_threads), 1); - dim3 block_config(x_threads, y_threads, 1); - - return block_config; -} - -#define CUDA_CHECK_ERRORS() \ - do { \ - cudaError_t err = cudaGetLastError(); \ - if (cudaSuccess != err) { \ - fprintf(stderr, "CUDA kernel failed : %s\n%s at L:%d in %s\n", \ - cudaGetErrorString(err), __PRETTY_FUNCTION__, __LINE__, \ - __FILE__); \ - exit(-1); \ - } \ - } while (0) - -#endif diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/group_points.h b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/group_points.h deleted file mode 100644 index ad20cda..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/group_points.h +++ /dev/null @@ -1,5 +0,0 @@ -#pragma once -#include - -at::Tensor group_points(at::Tensor points, at::Tensor idx); -at::Tensor group_points_grad(at::Tensor grad_out, at::Tensor idx, const int n); diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/interpolate.h b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/interpolate.h deleted file mode 100644 index 26b3464..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/interpolate.h +++ /dev/null @@ -1,10 +0,0 @@ -#pragma once - -#include -#include - -std::vector three_nn(at::Tensor unknowns, at::Tensor knows); -at::Tensor three_interpolate(at::Tensor points, at::Tensor idx, - at::Tensor weight); -at::Tensor three_interpolate_grad(at::Tensor grad_out, at::Tensor idx, - at::Tensor weight, const int m); diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/sampling.h b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/sampling.h deleted file mode 100644 index d795271..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/sampling.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once -#include - -at::Tensor gather_points(at::Tensor points, at::Tensor idx); -at::Tensor gather_points_grad(at::Tensor grad_out, at::Tensor idx, const int n); -at::Tensor furthest_point_sampling(at::Tensor points, const int nsamples); diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/utils.h b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/utils.h deleted file mode 100644 index 5f080ed..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/utils.h +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once -#include -#include - -#define CHECK_CUDA(x) \ - do { \ - AT_ASSERT(x.is_cuda(), #x " must be a CUDA tensor"); \ - } while (0) - -#define CHECK_CONTIGUOUS(x) \ - do { \ - AT_ASSERT(x.is_contiguous(), #x " must be a contiguous tensor"); \ - } while (0) - -#define CHECK_IS_INT(x) \ - do { \ - AT_ASSERT(x.scalar_type() == at::ScalarType::Int, \ - #x " must be an int tensor"); \ - } while (0) - -#define CHECK_IS_FLOAT(x) \ - do { \ - AT_ASSERT(x.scalar_type() == at::ScalarType::Float, \ - #x " must be a float tensor"); \ - } while (0) diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query.cpp b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query.cpp deleted file mode 100644 index b1797c1..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query.cpp +++ /dev/null @@ -1,32 +0,0 @@ -#include "ball_query.h" -#include "utils.h" - -void query_ball_point_kernel_wrapper(int b, int n, int m, float radius, - int nsample, const float *new_xyz, - const float *xyz, int *idx); - -at::Tensor ball_query(at::Tensor new_xyz, at::Tensor xyz, const float radius, - const int nsample) { - CHECK_CONTIGUOUS(new_xyz); - CHECK_CONTIGUOUS(xyz); - CHECK_IS_FLOAT(new_xyz); - CHECK_IS_FLOAT(xyz); - - if (new_xyz.is_cuda()) { - CHECK_CUDA(xyz); - } - - at::Tensor idx = - torch::zeros({new_xyz.size(0), new_xyz.size(1), nsample}, - at::device(new_xyz.device()).dtype(at::ScalarType::Int)); - - if (new_xyz.is_cuda()) { - query_ball_point_kernel_wrapper(xyz.size(0), xyz.size(1), new_xyz.size(1), - radius, nsample, new_xyz.data_ptr(), - xyz.data_ptr(), idx.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return idx; -} diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query_gpu.cu b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query_gpu.cu deleted file mode 100644 index 559aef9..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query_gpu.cu +++ /dev/null @@ -1,54 +0,0 @@ -#include -#include -#include - -#include "cuda_utils.h" - -// input: new_xyz(b, m, 3) xyz(b, n, 3) -// output: idx(b, m, nsample) -__global__ void query_ball_point_kernel(int b, int n, int m, float radius, - int nsample, - const float *__restrict__ new_xyz, - const float *__restrict__ xyz, - int *__restrict__ idx) { - int batch_index = blockIdx.x; - xyz += batch_index * n * 3; - new_xyz += batch_index * m * 3; - idx += m * nsample * batch_index; - - int index = threadIdx.x; - int stride = blockDim.x; - - float radius2 = radius * radius; - for (int j = index; j < m; j += stride) { - float new_x = new_xyz[j * 3 + 0]; - float new_y = new_xyz[j * 3 + 1]; - float new_z = new_xyz[j * 3 + 2]; - for (int k = 0, cnt = 0; k < n && cnt < nsample; ++k) { - float x = xyz[k * 3 + 0]; - float y = xyz[k * 3 + 1]; - float z = xyz[k * 3 + 2]; - float d2 = (new_x - x) * (new_x - x) + (new_y - y) * (new_y - y) + - (new_z - z) * (new_z - z); - if (d2 < radius2) { - if (cnt == 0) { - for (int l = 0; l < nsample; ++l) { - idx[j * nsample + l] = k; - } - } - idx[j * nsample + cnt] = k; - ++cnt; - } - } - } -} - -void query_ball_point_kernel_wrapper(int b, int n, int m, float radius, - int nsample, const float *new_xyz, - const float *xyz, int *idx) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - query_ball_point_kernel<<>>( - b, n, m, radius, nsample, new_xyz, xyz, idx); - - CUDA_CHECK_ERRORS(); -} diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/bindings.cpp b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/bindings.cpp deleted file mode 100644 index d1916ce..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/bindings.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ball_query.h" -#include "group_points.h" -#include "interpolate.h" -#include "sampling.h" - -PYBIND11_MODULE(TORCH_EXTENSION_NAME, m) { - m.def("gather_points", &gather_points); - m.def("gather_points_grad", &gather_points_grad); - m.def("furthest_point_sampling", &furthest_point_sampling); - - m.def("three_nn", &three_nn); - m.def("three_interpolate", &three_interpolate); - m.def("three_interpolate_grad", &three_interpolate_grad); - - m.def("ball_query", &ball_query); - - m.def("group_points", &group_points); - m.def("group_points_grad", &group_points_grad); -} diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points.cpp b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points.cpp deleted file mode 100644 index 285a4bd..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points.cpp +++ /dev/null @@ -1,62 +0,0 @@ -#include "group_points.h" -#include "utils.h" - -void group_points_kernel_wrapper(int b, int c, int n, int npoints, int nsample, - const float *points, const int *idx, - float *out); - -void group_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - int nsample, const float *grad_out, - const int *idx, float *grad_points); - -at::Tensor group_points(at::Tensor points, at::Tensor idx) { - CHECK_CONTIGUOUS(points); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(points); - CHECK_IS_INT(idx); - - if (points.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({points.size(0), points.size(1), idx.size(1), idx.size(2)}, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - group_points_kernel_wrapper(points.size(0), points.size(1), points.size(2), - idx.size(1), idx.size(2), - points.data_ptr(), idx.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} - -at::Tensor group_points_grad(at::Tensor grad_out, at::Tensor idx, const int n) { - CHECK_CONTIGUOUS(grad_out); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(grad_out); - CHECK_IS_INT(idx); - - if (grad_out.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({grad_out.size(0), grad_out.size(1), n}, - at::device(grad_out.device()).dtype(at::ScalarType::Float)); - - if (grad_out.is_cuda()) { - group_points_grad_kernel_wrapper( - grad_out.size(0), grad_out.size(1), n, idx.size(1), idx.size(2), - grad_out.data_ptr(), idx.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points_gpu.cu b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points_gpu.cu deleted file mode 100644 index 57c2b1b..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points_gpu.cu +++ /dev/null @@ -1,75 +0,0 @@ -#include -#include - -#include "cuda_utils.h" - -// input: points(b, c, n) idx(b, npoints, nsample) -// output: out(b, c, npoints, nsample) -__global__ void group_points_kernel(int b, int c, int n, int npoints, - int nsample, - const float *__restrict__ points, - const int *__restrict__ idx, - float *__restrict__ out) { - int batch_index = blockIdx.x; - points += batch_index * n * c; - idx += batch_index * npoints * nsample; - out += batch_index * npoints * nsample * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * npoints; i += stride) { - const int l = i / npoints; - const int j = i % npoints; - for (int k = 0; k < nsample; ++k) { - int ii = idx[j * nsample + k]; - out[(l * npoints + j) * nsample + k] = points[l * n + ii]; - } - } -} - -void group_points_kernel_wrapper(int b, int c, int n, int npoints, int nsample, - const float *points, const int *idx, - float *out) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - - group_points_kernel<<>>( - b, c, n, npoints, nsample, points, idx, out); - - CUDA_CHECK_ERRORS(); -} - -// input: grad_out(b, c, npoints, nsample), idx(b, npoints, nsample) -// output: grad_points(b, c, n) -__global__ void group_points_grad_kernel(int b, int c, int n, int npoints, - int nsample, - const float *__restrict__ grad_out, - const int *__restrict__ idx, - float *__restrict__ grad_points) { - int batch_index = blockIdx.x; - grad_out += batch_index * npoints * nsample * c; - idx += batch_index * npoints * nsample; - grad_points += batch_index * n * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * npoints; i += stride) { - const int l = i / npoints; - const int j = i % npoints; - for (int k = 0; k < nsample; ++k) { - int ii = idx[j * nsample + k]; - atomicAdd(grad_points + l * n + ii, - grad_out[(l * npoints + j) * nsample + k]); - } - } -} - -void group_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - int nsample, const float *grad_out, - const int *idx, float *grad_points) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - - group_points_grad_kernel<<>>( - b, c, n, npoints, nsample, grad_out, idx, grad_points); - - CUDA_CHECK_ERRORS(); -} diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate.cpp b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate.cpp deleted file mode 100644 index cdee31c..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate.cpp +++ /dev/null @@ -1,99 +0,0 @@ -#include "interpolate.h" -#include "utils.h" - -void three_nn_kernel_wrapper(int b, int n, int m, const float *unknown, - const float *known, float *dist2, int *idx); -void three_interpolate_kernel_wrapper(int b, int c, int m, int n, - const float *points, const int *idx, - const float *weight, float *out); -void three_interpolate_grad_kernel_wrapper(int b, int c, int n, int m, - const float *grad_out, - const int *idx, const float *weight, - float *grad_points); - -std::vector three_nn(at::Tensor unknowns, at::Tensor knows) { - CHECK_CONTIGUOUS(unknowns); - CHECK_CONTIGUOUS(knows); - CHECK_IS_FLOAT(unknowns); - CHECK_IS_FLOAT(knows); - - if (unknowns.is_cuda()) { - CHECK_CUDA(knows); - } - - at::Tensor idx = - torch::zeros({unknowns.size(0), unknowns.size(1), 3}, - at::device(unknowns.device()).dtype(at::ScalarType::Int)); - at::Tensor dist2 = - torch::zeros({unknowns.size(0), unknowns.size(1), 3}, - at::device(unknowns.device()).dtype(at::ScalarType::Float)); - - if (unknowns.is_cuda()) { - three_nn_kernel_wrapper(unknowns.size(0), unknowns.size(1), knows.size(1), - unknowns.data_ptr(), knows.data_ptr(), - dist2.data_ptr(), idx.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return {dist2, idx}; -} - -at::Tensor three_interpolate(at::Tensor points, at::Tensor idx, - at::Tensor weight) { - CHECK_CONTIGUOUS(points); - CHECK_CONTIGUOUS(idx); - CHECK_CONTIGUOUS(weight); - CHECK_IS_FLOAT(points); - CHECK_IS_INT(idx); - CHECK_IS_FLOAT(weight); - - if (points.is_cuda()) { - CHECK_CUDA(idx); - CHECK_CUDA(weight); - } - - at::Tensor output = - torch::zeros({points.size(0), points.size(1), idx.size(1)}, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - three_interpolate_kernel_wrapper( - points.size(0), points.size(1), points.size(2), idx.size(1), - points.data_ptr(), idx.data_ptr(), weight.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} -at::Tensor three_interpolate_grad(at::Tensor grad_out, at::Tensor idx, - at::Tensor weight, const int m) { - CHECK_CONTIGUOUS(grad_out); - CHECK_CONTIGUOUS(idx); - CHECK_CONTIGUOUS(weight); - CHECK_IS_FLOAT(grad_out); - CHECK_IS_INT(idx); - CHECK_IS_FLOAT(weight); - - if (grad_out.is_cuda()) { - CHECK_CUDA(idx); - CHECK_CUDA(weight); - } - - at::Tensor output = - torch::zeros({grad_out.size(0), grad_out.size(1), m}, - at::device(grad_out.device()).dtype(at::ScalarType::Float)); - - if (grad_out.is_cuda()) { - three_interpolate_grad_kernel_wrapper( - grad_out.size(0), grad_out.size(1), grad_out.size(2), m, - grad_out.data_ptr(), idx.data_ptr(), - weight.data_ptr(), output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate_gpu.cu b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate_gpu.cu deleted file mode 100644 index 81c5548..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate_gpu.cu +++ /dev/null @@ -1,154 +0,0 @@ -#include -#include -#include - -#include "cuda_utils.h" - -// input: unknown(b, n, 3) known(b, m, 3) -// output: dist2(b, n, 3), idx(b, n, 3) -__global__ void three_nn_kernel(int b, int n, int m, - const float *__restrict__ unknown, - const float *__restrict__ known, - float *__restrict__ dist2, - int *__restrict__ idx) { - int batch_index = blockIdx.x; - unknown += batch_index * n * 3; - known += batch_index * m * 3; - dist2 += batch_index * n * 3; - idx += batch_index * n * 3; - - int index = threadIdx.x; - int stride = blockDim.x; - for (int j = index; j < n; j += stride) { - float ux = unknown[j * 3 + 0]; - float uy = unknown[j * 3 + 1]; - float uz = unknown[j * 3 + 2]; - - double best1 = 1e40, best2 = 1e40, best3 = 1e40; - int besti1 = 0, besti2 = 0, besti3 = 0; - for (int k = 0; k < m; ++k) { - float x = known[k * 3 + 0]; - float y = known[k * 3 + 1]; - float z = known[k * 3 + 2]; - float d = (ux - x) * (ux - x) + (uy - y) * (uy - y) + (uz - z) * (uz - z); - if (d < best1) { - best3 = best2; - besti3 = besti2; - best2 = best1; - besti2 = besti1; - best1 = d; - besti1 = k; - } else if (d < best2) { - best3 = best2; - besti3 = besti2; - best2 = d; - besti2 = k; - } else if (d < best3) { - best3 = d; - besti3 = k; - } - } - dist2[j * 3 + 0] = best1; - dist2[j * 3 + 1] = best2; - dist2[j * 3 + 2] = best3; - - idx[j * 3 + 0] = besti1; - idx[j * 3 + 1] = besti2; - idx[j * 3 + 2] = besti3; - } -} - -void three_nn_kernel_wrapper(int b, int n, int m, const float *unknown, - const float *known, float *dist2, int *idx) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - three_nn_kernel<<>>(b, n, m, unknown, known, - dist2, idx); - - CUDA_CHECK_ERRORS(); -} - -// input: points(b, c, m), idx(b, n, 3), weight(b, n, 3) -// output: out(b, c, n) -__global__ void three_interpolate_kernel(int b, int c, int m, int n, - const float *__restrict__ points, - const int *__restrict__ idx, - const float *__restrict__ weight, - float *__restrict__ out) { - int batch_index = blockIdx.x; - points += batch_index * m * c; - - idx += batch_index * n * 3; - weight += batch_index * n * 3; - - out += batch_index * n * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * n; i += stride) { - const int l = i / n; - const int j = i % n; - float w1 = weight[j * 3 + 0]; - float w2 = weight[j * 3 + 1]; - float w3 = weight[j * 3 + 2]; - - int i1 = idx[j * 3 + 0]; - int i2 = idx[j * 3 + 1]; - int i3 = idx[j * 3 + 2]; - - out[i] = points[l * m + i1] * w1 + points[l * m + i2] * w2 + - points[l * m + i3] * w3; - } -} - -void three_interpolate_kernel_wrapper(int b, int c, int m, int n, - const float *points, const int *idx, - const float *weight, float *out) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - three_interpolate_kernel<<>>( - b, c, m, n, points, idx, weight, out); - - CUDA_CHECK_ERRORS(); -} - -// input: grad_out(b, c, n), idx(b, n, 3), weight(b, n, 3) -// output: grad_points(b, c, m) - -__global__ void three_interpolate_grad_kernel( - int b, int c, int n, int m, const float *__restrict__ grad_out, - const int *__restrict__ idx, const float *__restrict__ weight, - float *__restrict__ grad_points) { - int batch_index = blockIdx.x; - grad_out += batch_index * n * c; - idx += batch_index * n * 3; - weight += batch_index * n * 3; - grad_points += batch_index * m * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * n; i += stride) { - const int l = i / n; - const int j = i % n; - float w1 = weight[j * 3 + 0]; - float w2 = weight[j * 3 + 1]; - float w3 = weight[j * 3 + 2]; - - int i1 = idx[j * 3 + 0]; - int i2 = idx[j * 3 + 1]; - int i3 = idx[j * 3 + 2]; - - atomicAdd(grad_points + l * m + i1, grad_out[i] * w1); - atomicAdd(grad_points + l * m + i2, grad_out[i] * w2); - atomicAdd(grad_points + l * m + i3, grad_out[i] * w3); - } -} - -void three_interpolate_grad_kernel_wrapper(int b, int c, int n, int m, - const float *grad_out, - const int *idx, const float *weight, - float *grad_points) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - three_interpolate_grad_kernel<<>>( - b, c, n, m, grad_out, idx, weight, grad_points); - - CUDA_CHECK_ERRORS(); -} diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling.cpp b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling.cpp deleted file mode 100644 index ddbdc11..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling.cpp +++ /dev/null @@ -1,87 +0,0 @@ -#include "sampling.h" -#include "utils.h" - -void gather_points_kernel_wrapper(int b, int c, int n, int npoints, - const float *points, const int *idx, - float *out); -void gather_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - const float *grad_out, const int *idx, - float *grad_points); - -void furthest_point_sampling_kernel_wrapper(int b, int n, int m, - const float *dataset, float *temp, - int *idxs); - -at::Tensor gather_points(at::Tensor points, at::Tensor idx) { - CHECK_CONTIGUOUS(points); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(points); - CHECK_IS_INT(idx); - - if (points.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({points.size(0), points.size(1), idx.size(1)}, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - gather_points_kernel_wrapper(points.size(0), points.size(1), points.size(2), - idx.size(1), points.data_ptr(), - idx.data_ptr(), output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} - -at::Tensor gather_points_grad(at::Tensor grad_out, at::Tensor idx, - const int n) { - CHECK_CONTIGUOUS(grad_out); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(grad_out); - CHECK_IS_INT(idx); - - if (grad_out.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({grad_out.size(0), grad_out.size(1), n}, - at::device(grad_out.device()).dtype(at::ScalarType::Float)); - - if (grad_out.is_cuda()) { - gather_points_grad_kernel_wrapper(grad_out.size(0), grad_out.size(1), n, - idx.size(1), grad_out.data_ptr(), - idx.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} -at::Tensor furthest_point_sampling(at::Tensor points, const int nsamples) { - CHECK_CONTIGUOUS(points); - CHECK_IS_FLOAT(points); - - at::Tensor output = - torch::zeros({points.size(0), nsamples}, - at::device(points.device()).dtype(at::ScalarType::Int)); - - at::Tensor tmp = - torch::full({points.size(0), points.size(1)}, 1e10, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - furthest_point_sampling_kernel_wrapper( - points.size(0), points.size(1), nsamples, points.data_ptr(), - tmp.data_ptr(), output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling_gpu.cu b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling_gpu.cu deleted file mode 100644 index fc573f0..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling_gpu.cu +++ /dev/null @@ -1,229 +0,0 @@ -#include -#include - -#include "cuda_utils.h" - -// input: points(b, c, n) idx(b, m) -// output: out(b, c, m) -__global__ void gather_points_kernel(int b, int c, int n, int m, - const float *__restrict__ points, - const int *__restrict__ idx, - float *__restrict__ out) { - for (int i = blockIdx.x; i < b; i += gridDim.x) { - for (int l = blockIdx.y; l < c; l += gridDim.y) { - for (int j = threadIdx.x; j < m; j += blockDim.x) { - int a = idx[i * m + j]; - out[(i * c + l) * m + j] = points[(i * c + l) * n + a]; - } - } - } -} - -void gather_points_kernel_wrapper(int b, int c, int n, int npoints, - const float *points, const int *idx, - float *out) { - gather_points_kernel<<>>(b, c, n, npoints, - points, idx, out); - - CUDA_CHECK_ERRORS(); -} - -// input: grad_out(b, c, m) idx(b, m) -// output: grad_points(b, c, n) -__global__ void gather_points_grad_kernel(int b, int c, int n, int m, - const float *__restrict__ grad_out, - const int *__restrict__ idx, - float *__restrict__ grad_points) { - for (int i = blockIdx.x; i < b; i += gridDim.x) { - for (int l = blockIdx.y; l < c; l += gridDim.y) { - for (int j = threadIdx.x; j < m; j += blockDim.x) { - int a = idx[i * m + j]; - atomicAdd(grad_points + (i * c + l) * n + a, - grad_out[(i * c + l) * m + j]); - } - } - } -} - -void gather_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - const float *grad_out, const int *idx, - float *grad_points) { - gather_points_grad_kernel<<>>( - b, c, n, npoints, grad_out, idx, grad_points); - - CUDA_CHECK_ERRORS(); -} - -__device__ void __update(float *__restrict__ dists, int *__restrict__ dists_i, - int idx1, int idx2) { - const float v1 = dists[idx1], v2 = dists[idx2]; - const int i1 = dists_i[idx1], i2 = dists_i[idx2]; - dists[idx1] = max(v1, v2); - dists_i[idx1] = v2 > v1 ? i2 : i1; -} - -// Input dataset: (b, n, 3), tmp: (b, n) -// Ouput idxs (b, m) -template -__global__ void furthest_point_sampling_kernel( - int b, int n, int m, const float *__restrict__ dataset, - float *__restrict__ temp, int *__restrict__ idxs) { - if (m <= 0) return; - __shared__ float dists[block_size]; - __shared__ int dists_i[block_size]; - - int batch_index = blockIdx.x; - dataset += batch_index * n * 3; - temp += batch_index * n; - idxs += batch_index * m; - - int tid = threadIdx.x; - const int stride = block_size; - - int old = 0; - if (threadIdx.x == 0) idxs[0] = old; - - __syncthreads(); - for (int j = 1; j < m; j++) { - int besti = 0; - float best = -1; - float x1 = dataset[old * 3 + 0]; - float y1 = dataset[old * 3 + 1]; - float z1 = dataset[old * 3 + 2]; - for (int k = tid; k < n; k += stride) { - float x2, y2, z2; - x2 = dataset[k * 3 + 0]; - y2 = dataset[k * 3 + 1]; - z2 = dataset[k * 3 + 2]; - float mag = (x2 * x2) + (y2 * y2) + (z2 * z2); - if (mag <= 1e-3) continue; - - float d = - (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1) + (z2 - z1) * (z2 - z1); - - float d2 = min(d, temp[k]); - temp[k] = d2; - besti = d2 > best ? k : besti; - best = d2 > best ? d2 : best; - } - dists[tid] = best; - dists_i[tid] = besti; - __syncthreads(); - - if (block_size >= 512) { - if (tid < 256) { - __update(dists, dists_i, tid, tid + 256); - } - __syncthreads(); - } - if (block_size >= 256) { - if (tid < 128) { - __update(dists, dists_i, tid, tid + 128); - } - __syncthreads(); - } - if (block_size >= 128) { - if (tid < 64) { - __update(dists, dists_i, tid, tid + 64); - } - __syncthreads(); - } - if (block_size >= 64) { - if (tid < 32) { - __update(dists, dists_i, tid, tid + 32); - } - __syncthreads(); - } - if (block_size >= 32) { - if (tid < 16) { - __update(dists, dists_i, tid, tid + 16); - } - __syncthreads(); - } - if (block_size >= 16) { - if (tid < 8) { - __update(dists, dists_i, tid, tid + 8); - } - __syncthreads(); - } - if (block_size >= 8) { - if (tid < 4) { - __update(dists, dists_i, tid, tid + 4); - } - __syncthreads(); - } - if (block_size >= 4) { - if (tid < 2) { - __update(dists, dists_i, tid, tid + 2); - } - __syncthreads(); - } - if (block_size >= 2) { - if (tid < 1) { - __update(dists, dists_i, tid, tid + 1); - } - __syncthreads(); - } - - old = dists_i[0]; - if (tid == 0) idxs[j] = old; - } -} - -void furthest_point_sampling_kernel_wrapper(int b, int n, int m, - const float *dataset, float *temp, - int *idxs) { - unsigned int n_threads = opt_n_threads(n); - - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - - switch (n_threads) { - case 512: - furthest_point_sampling_kernel<512> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 256: - furthest_point_sampling_kernel<256> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 128: - furthest_point_sampling_kernel<128> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 64: - furthest_point_sampling_kernel<64> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 32: - furthest_point_sampling_kernel<32> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 16: - furthest_point_sampling_kernel<16> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 8: - furthest_point_sampling_kernel<8> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 4: - furthest_point_sampling_kernel<4> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 2: - furthest_point_sampling_kernel<2> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 1: - furthest_point_sampling_kernel<1> - <<>>(b, n, m, dataset, temp, idxs); - break; - default: - furthest_point_sampling_kernel<512> - <<>>(b, n, m, dataset, temp, idxs); - } - - CUDA_CHECK_ERRORS(); -} diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_version.py b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_version.py deleted file mode 100644 index 528787c..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_version.py +++ /dev/null @@ -1 +0,0 @@ -__version__ = "3.0.0" diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_modules.py b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_modules.py deleted file mode 100644 index a0ad4f6..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_modules.py +++ /dev/null @@ -1,209 +0,0 @@ -from typing import List, Optional, Tuple - -import torch -import torch.nn as nn -import torch.nn.functional as F -from pointnet2_ops import pointnet2_utils - - -def build_shared_mlp(mlp_spec: List[int], bn: bool = True): - layers = [] - for i in range(1, len(mlp_spec)): - layers.append( - nn.Conv2d(mlp_spec[i - 1], mlp_spec[i], kernel_size=1, bias=not bn) - ) - if bn: - layers.append(nn.BatchNorm2d(mlp_spec[i])) - layers.append(nn.ReLU(True)) - - return nn.Sequential(*layers) - - -class _PointnetSAModuleBase(nn.Module): - def __init__(self): - super(_PointnetSAModuleBase, self).__init__() - self.npoint = None - self.groupers = None - self.mlps = None - - def forward( - self, xyz: torch.Tensor, features: Optional[torch.Tensor] - ) -> Tuple[torch.Tensor, torch.Tensor]: - r""" - Parameters - ---------- - xyz : torch.Tensor - (B, N, 3) tensor of the xyz coordinates of the features - features : torch.Tensor - (B, C, N) tensor of the descriptors of the the features - - Returns - ------- - new_xyz : torch.Tensor - (B, npoint, 3) tensor of the new features' xyz - new_features : torch.Tensor - (B, \sum_k(mlps[k][-1]), npoint) tensor of the new_features descriptors - """ - - new_features_list = [] - - xyz_flipped = xyz.transpose(1, 2).contiguous() - new_xyz = ( - pointnet2_utils.gather_operation( - xyz_flipped, pointnet2_utils.furthest_point_sample(xyz, self.npoint) - ) - .transpose(1, 2) - .contiguous() - if self.npoint is not None - else None - ) - - for i in range(len(self.groupers)): - new_features = self.groupers[i]( - xyz, new_xyz, features - ) # (B, C, npoint, nsample) - - new_features = self.mlps[i](new_features) # (B, mlp[-1], npoint, nsample) - new_features = F.max_pool2d( - new_features, kernel_size=[1, new_features.size(3)] - ) # (B, mlp[-1], npoint, 1) - new_features = new_features.squeeze(-1) # (B, mlp[-1], npoint) - - new_features_list.append(new_features) - - return new_xyz, torch.cat(new_features_list, dim=1) - - -class PointnetSAModuleMSG(_PointnetSAModuleBase): - r"""Pointnet set abstrction layer with multiscale grouping - - Parameters - ---------- - npoint : int - Number of features - radii : list of float32 - list of radii to group with - nsamples : list of int32 - Number of samples in each ball query - mlps : list of list of int32 - Spec of the pointnet before the global max_pool for each scale - bn : bool - Use batchnorm - """ - - def __init__(self, npoint, radii, nsamples, mlps, bn=True, use_xyz=True): - # type: (PointnetSAModuleMSG, int, List[float], List[int], List[List[int]], bool, bool) -> None - super(PointnetSAModuleMSG, self).__init__() - - assert len(radii) == len(nsamples) == len(mlps) - - self.npoint = npoint - self.groupers = nn.ModuleList() - self.mlps = nn.ModuleList() - for i in range(len(radii)): - radius = radii[i] - nsample = nsamples[i] - self.groupers.append( - pointnet2_utils.QueryAndGroup(radius, nsample, use_xyz=use_xyz) - if npoint is not None - else pointnet2_utils.GroupAll(use_xyz) - ) - mlp_spec = mlps[i] - if use_xyz: - mlp_spec[0] += 3 - - self.mlps.append(build_shared_mlp(mlp_spec, bn)) - - -class PointnetSAModule(PointnetSAModuleMSG): - r"""Pointnet set abstrction layer - - Parameters - ---------- - npoint : int - Number of features - radius : float - Radius of ball - nsample : int - Number of samples in the ball query - mlp : list - Spec of the pointnet before the global max_pool - bn : bool - Use batchnorm - """ - - def __init__( - self, mlp, npoint=None, radius=None, nsample=None, bn=True, use_xyz=True - ): - # type: (PointnetSAModule, List[int], int, float, int, bool, bool) -> None - super(PointnetSAModule, self).__init__( - mlps=[mlp], - npoint=npoint, - radii=[radius], - nsamples=[nsample], - bn=bn, - use_xyz=use_xyz, - ) - - -class PointnetFPModule(nn.Module): - r"""Propigates the features of one set to another - - Parameters - ---------- - mlp : list - Pointnet module parameters - bn : bool - Use batchnorm - """ - - def __init__(self, mlp, bn=True): - # type: (PointnetFPModule, List[int], bool) -> None - super(PointnetFPModule, self).__init__() - self.mlp = build_shared_mlp(mlp, bn=bn) - - def forward(self, unknown, known, unknow_feats, known_feats): - # type: (PointnetFPModule, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - Parameters - ---------- - unknown : torch.Tensor - (B, n, 3) tensor of the xyz positions of the unknown features - known : torch.Tensor - (B, m, 3) tensor of the xyz positions of the known features - unknow_feats : torch.Tensor - (B, C1, n) tensor of the features to be propigated to - known_feats : torch.Tensor - (B, C2, m) tensor of features to be propigated - - Returns - ------- - new_features : torch.Tensor - (B, mlp[-1], n) tensor of the features of the unknown features - """ - - if known is not None: - dist, idx = pointnet2_utils.three_nn(unknown, known) - dist_recip = 1.0 / (dist + 1e-8) - norm = torch.sum(dist_recip, dim=2, keepdim=True) - weight = dist_recip / norm - - interpolated_feats = pointnet2_utils.three_interpolate( - known_feats, idx, weight - ) - else: - interpolated_feats = known_feats.expand( - *(known_feats.size()[0:2] + [unknown.size(1)]) - ) - - if unknow_feats is not None: - new_features = torch.cat( - [interpolated_feats, unknow_feats], dim=1 - ) # (B, C2 + C1, n) - else: - new_features = interpolated_feats - - new_features = new_features.unsqueeze(-1) - new_features = self.mlp(new_features) - - return new_features.squeeze(-1) diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_utils.py b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_utils.py deleted file mode 100644 index 150fccc..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_utils.py +++ /dev/null @@ -1,379 +0,0 @@ -import torch -import torch.nn as nn -import warnings -from torch.autograd import Function -from typing import * - -try: - import pointnet2_ops._ext as _ext -except ImportError: - from torch.utils.cpp_extension import load - import glob - import os.path as osp - import os - - warnings.warn("Unable to load pointnet2_ops cpp extension. JIT Compiling.") - - _ext_src_root = osp.join(osp.dirname(__file__), "_ext-src") - _ext_sources = glob.glob(osp.join(_ext_src_root, "src", "*.cpp")) + glob.glob( - osp.join(_ext_src_root, "src", "*.cu") - ) - _ext_headers = glob.glob(osp.join(_ext_src_root, "include", "*")) - - os.environ["TORCH_CUDA_ARCH_LIST"] = "3.7+PTX;5.0;6.0;6.1;6.2;7.0;7.5" - _ext = load( - "_ext", - sources=_ext_sources, - extra_include_paths=[osp.join(_ext_src_root, "include")], - extra_cflags=["-O3"], - extra_cuda_cflags=["-O3", "-Xfatbin", "-compress-all"], - with_cuda=True, - ) - - -class FurthestPointSampling(Function): - @staticmethod - def forward(ctx, xyz, npoint): - # type: (Any, torch.Tensor, int) -> torch.Tensor - r""" - Uses iterative furthest point sampling to select a set of npoint features that have the largest - minimum distance - - Parameters - ---------- - xyz : torch.Tensor - (B, N, 3) tensor where N > npoint - npoint : int32 - number of features in the sampled set - - Returns - ------- - torch.Tensor - (B, npoint) tensor containing the set - """ - out = _ext.furthest_point_sampling(xyz, npoint) - - ctx.mark_non_differentiable(out) - - return out - - @staticmethod - def backward(ctx, grad_out): - return () - - -furthest_point_sample = FurthestPointSampling.apply - - -class GatherOperation(Function): - @staticmethod - def forward(ctx, features, idx): - # type: (Any, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - - Parameters - ---------- - features : torch.Tensor - (B, C, N) tensor - - idx : torch.Tensor - (B, npoint) tensor of the features to gather - - Returns - ------- - torch.Tensor - (B, C, npoint) tensor - """ - - ctx.save_for_backward(idx, features) - - return _ext.gather_points(features, idx) - - @staticmethod - def backward(ctx, grad_out): - idx, features = ctx.saved_tensors - N = features.size(2) - - grad_features = _ext.gather_points_grad(grad_out.contiguous(), idx, N) - return grad_features, None - - -gather_operation = GatherOperation.apply - - -class ThreeNN(Function): - @staticmethod - def forward(ctx, unknown, known): - # type: (Any, torch.Tensor, torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor] - r""" - Find the three nearest neighbors of unknown in known - Parameters - ---------- - unknown : torch.Tensor - (B, n, 3) tensor of known features - known : torch.Tensor - (B, m, 3) tensor of unknown features - - Returns - ------- - dist : torch.Tensor - (B, n, 3) l2 distance to the three nearest neighbors - idx : torch.Tensor - (B, n, 3) index of 3 nearest neighbors - """ - dist2, idx = _ext.three_nn(unknown, known) - dist = torch.sqrt(dist2) - - ctx.mark_non_differentiable(dist, idx) - - return dist, idx - - @staticmethod - def backward(ctx, grad_dist, grad_idx): - return () - - -three_nn = ThreeNN.apply - - -class ThreeInterpolate(Function): - @staticmethod - def forward(ctx, features, idx, weight): - # type(Any, torch.Tensor, torch.Tensor, torch.Tensor) -> Torch.Tensor - r""" - Performs weight linear interpolation on 3 features - Parameters - ---------- - features : torch.Tensor - (B, c, m) Features descriptors to be interpolated from - idx : torch.Tensor - (B, n, 3) three nearest neighbors of the target features in features - weight : torch.Tensor - (B, n, 3) weights - - Returns - ------- - torch.Tensor - (B, c, n) tensor of the interpolated features - """ - ctx.save_for_backward(idx, weight, features) - - return _ext.three_interpolate(features, idx, weight) - - @staticmethod - def backward(ctx, grad_out): - # type: (Any, torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor] - r""" - Parameters - ---------- - grad_out : torch.Tensor - (B, c, n) tensor with gradients of ouputs - - Returns - ------- - grad_features : torch.Tensor - (B, c, m) tensor with gradients of features - - None - - None - """ - idx, weight, features = ctx.saved_tensors - m = features.size(2) - - grad_features = _ext.three_interpolate_grad( - grad_out.contiguous(), idx, weight, m - ) - - return grad_features, torch.zeros_like(idx), torch.zeros_like(weight) - - -three_interpolate = ThreeInterpolate.apply - - -class GroupingOperation(Function): - @staticmethod - def forward(ctx, features, idx): - # type: (Any, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - - Parameters - ---------- - features : torch.Tensor - (B, C, N) tensor of features to group - idx : torch.Tensor - (B, npoint, nsample) tensor containing the indicies of features to group with - - Returns - ------- - torch.Tensor - (B, C, npoint, nsample) tensor - """ - ctx.save_for_backward(idx, features) - - return _ext.group_points(features, idx) - - @staticmethod - def backward(ctx, grad_out): - # type: (Any, torch.tensor) -> Tuple[torch.Tensor, torch.Tensor] - r""" - - Parameters - ---------- - grad_out : torch.Tensor - (B, C, npoint, nsample) tensor of the gradients of the output from forward - - Returns - ------- - torch.Tensor - (B, C, N) gradient of the features - None - """ - idx, features = ctx.saved_tensors - N = features.size(2) - - grad_features = _ext.group_points_grad(grad_out.contiguous(), idx, N) - - return grad_features, torch.zeros_like(idx) - - -grouping_operation = GroupingOperation.apply - - -class BallQuery(Function): - @staticmethod - def forward(ctx, radius, nsample, xyz, new_xyz): - # type: (Any, float, int, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - - Parameters - ---------- - radius : float - radius of the balls - nsample : int - maximum number of features in the balls - xyz : torch.Tensor - (B, N, 3) xyz coordinates of the features - new_xyz : torch.Tensor - (B, npoint, 3) centers of the ball query - - Returns - ------- - torch.Tensor - (B, npoint, nsample) tensor with the indicies of the features that form the query balls - """ - output = _ext.ball_query(new_xyz, xyz, radius, nsample) - - ctx.mark_non_differentiable(output) - - return output - - @staticmethod - def backward(ctx, grad_out): - return () - - -ball_query = BallQuery.apply - - -class QueryAndGroup(nn.Module): - r""" - Groups with a ball query of radius - - Parameters - --------- - radius : float32 - Radius of ball - nsample : int32 - Maximum number of features to gather in the ball - """ - - def __init__(self, radius, nsample, use_xyz=True): - # type: (QueryAndGroup, float, int, bool) -> None - super(QueryAndGroup, self).__init__() - self.radius, self.nsample, self.use_xyz = radius, nsample, use_xyz - - def forward(self, xyz, new_xyz, features=None): - # type: (QueryAndGroup, torch.Tensor. torch.Tensor, torch.Tensor) -> Tuple[Torch.Tensor] - r""" - Parameters - ---------- - xyz : torch.Tensor - xyz coordinates of the features (B, N, 3) - new_xyz : torch.Tensor - centriods (B, npoint, 3) - features : torch.Tensor - Descriptors of the features (B, C, N) - - Returns - ------- - new_features : torch.Tensor - (B, 3 + C, npoint, nsample) tensor - """ - - idx = ball_query(self.radius, self.nsample, xyz, new_xyz) - xyz_trans = xyz.transpose(1, 2).contiguous() - grouped_xyz = grouping_operation(xyz_trans, idx) # (B, 3, npoint, nsample) - grouped_xyz -= new_xyz.transpose(1, 2).unsqueeze(-1) - - if features is not None: - grouped_features = grouping_operation(features, idx) - if self.use_xyz: - new_features = torch.cat( - [grouped_xyz, grouped_features], dim=1 - ) # (B, C + 3, npoint, nsample) - else: - new_features = grouped_features - else: - assert ( - self.use_xyz - ), "Cannot have not features and not use xyz as a feature!" - new_features = grouped_xyz - - return new_features - - -class GroupAll(nn.Module): - r""" - Groups all features - - Parameters - --------- - """ - - def __init__(self, use_xyz=True): - # type: (GroupAll, bool) -> None - super(GroupAll, self).__init__() - self.use_xyz = use_xyz - - def forward(self, xyz, new_xyz, features=None): - # type: (GroupAll, torch.Tensor, torch.Tensor, torch.Tensor) -> Tuple[torch.Tensor] - r""" - Parameters - ---------- - xyz : torch.Tensor - xyz coordinates of the features (B, N, 3) - new_xyz : torch.Tensor - Ignored - features : torch.Tensor - Descriptors of the features (B, C, N) - - Returns - ------- - new_features : torch.Tensor - (B, C + 3, 1, N) tensor - """ - - grouped_xyz = xyz.transpose(1, 2).unsqueeze(2) - if features is not None: - grouped_features = features.unsqueeze(2) - if self.use_xyz: - new_features = torch.cat( - [grouped_xyz, grouped_features], dim=1 - ) # (B, 3 + C, 1, N) - else: - new_features = grouped_features - else: - new_features = grouped_xyz - - return new_features diff --git a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/setup.py b/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/setup.py deleted file mode 100644 index fc39d02..0000000 --- a/gen_3d_modules/TriplaneGaussian/models/snowflake/pointnet2_ops_lib/setup.py +++ /dev/null @@ -1,41 +0,0 @@ -import glob -import os -import os.path as osp - -from setuptools import find_packages, setup -import torch -from torch.utils.cpp_extension import BuildExtension, CUDAExtension - -this_dir = osp.dirname(osp.abspath(__file__)) -_ext_src_root = osp.join("pointnet2_ops", "_ext-src") -_ext_sources = glob.glob(osp.join(_ext_src_root, "src", "*.cpp")) + glob.glob( - osp.join(_ext_src_root, "src", "*.cu") -) -_ext_headers = glob.glob(osp.join(_ext_src_root, "include", "*")) - -requirements = [] - -exec(open(osp.join("pointnet2_ops", "_version.py")).read()) - -os.environ["TORCH_CUDA_ARCH_LIST"] = ".".join(map(str, torch.cuda.get_device_capability())) -# os.environ["TORCH_CUDA_ARCH_LIST"] = "5.0;6.0;6.1;6.2;7.0;7.5;8.0;8.6" -setup( - name="pointnet2_ops", - version=__version__, - author="Erik Wijmans", - packages=find_packages(), - install_requires=requirements, - ext_modules=[ - CUDAExtension( - name="pointnet2_ops._ext", - sources=_ext_sources, - extra_compile_args={ - "cxx": ["-O3"], - "nvcc": ["-O3", "-Xfatbin", "-compress-all"], - }, - include_dirs=[osp.join(this_dir, _ext_src_root, "include")], - ) - ], - cmdclass={"build_ext": BuildExtension}, - include_package_data=True, -) diff --git a/install.py b/install.py index d035130..d666850 100644 --- a/install.py +++ b/install.py @@ -1,5 +1,86 @@ -# Called after requirements.txt is installed: -# https://github.com/ltdrdata/ComfyUI-Manager/blob/386af67a4c34db3525aa89af47a6f78c819926f2/prestartup_script.py#L495 -# https://github.com/ltdrdata/ComfyUI-Manager/blob/386af67a4c34db3525aa89af47a6f78c819926f2/cm-cli.py#L106 +# This script is called by ComfyUI-Manager & Comfy-CLI after requirements.txt is installed: +# https://github.com/ltdrdata/ComfyUI-Manager/tree/386af67a4c34db3525aa89af47a6f78c819926f2?tab=readme-ov-file#custom-node-support-guide + +import sys +import os +from os.path import dirname +import glob +import subprocess +import traceback + +if sys.argv[0] == 'install.py': + sys.path.append('.') # for portable version + +COMFY3D_ROOT_ABS_PATH = dirname(__file__) +BUILD_SCRIPT_ROOT_ABS_PATH = os.path.join(COMFY3D_ROOT_ABS_PATH, "_Pre_Builds/_Build_Scripts") +sys.path.append(BUILD_SCRIPT_ROOT_ABS_PATH) + +try: + from build_utils import ( + get_platform_config_name, + git_folder_parallel, + install_remote_packages, + build_config, + PYTHON_PATH, + WHEELS_ROOT_ABS_PATH, + PYTHON_VERSION + ) + from shared_utils.log_utils import cstr + + def try_auto_build_all(builds_dir): + cstr(f"Try building all required packages...").msg.print() + result = subprocess.run( + [PYTHON_PATH, "auto_build_all.py", "--output_root_dir", builds_dir], + cwd=BUILD_SCRIPT_ROOT_ABS_PATH, shell=True, text=True, capture_output=True + ) + build_succeed = result.returncode == 0 + + cstr(f"[Comfy3D BUILD LOG]\n{result.stdout}").msg.print() + if not build_succeed: + cstr(f"[Comfy3D BUILD ERROR LOG]\n{result.stderr}").error.print() + + return build_succeed + + def install_local_wheels(builds_dir): + for wheel_path in glob.glob(os.path.join(builds_dir, "**/*.whl"), recursive=True): + subprocess.run([PYTHON_PATH, "-s", "-m", "pip", "install", wheel_path]) + cstr(f"pip install {wheel_path} to {PYTHON_PATH}").msg.print() + + # Install packages that needs specify remote url + install_remote_packages(build_config.remote_packages.keys()) + + # Get the target remote pre-built wheels directory name and path + platform_config_name = get_platform_config_name() + remote_builds_dir_name = f"{build_config.wheels_dir_name}/{platform_config_name}" + # Get the directory path which wheels will be downloaded or build into it + builds_dir = os.path.join(WHEELS_ROOT_ABS_PATH, platform_config_name) + + build_succeed = False + # Download pre-build wheels if exist + if git_folder_parallel(build_config.repo_id, remote_builds_dir_name, recursive=True, root_outdir=builds_dir): + build_succeed = True + # Build the wheels if couldn't find pre-build wheels + elif try_auto_build_all(builds_dir): + build_succeed = True + + if build_succeed: + install_local_wheels(builds_dir) + cstr("Successfully installed all required wheels").msg.print() + else: + raise RuntimeError("Comfy3D build failed") + + # Download python cpp source files for current python environment + remote_pycpp_dir_name = f"_Python_Source_cpp/{PYTHON_VERSION}" + python_root_dir = dirname(PYTHON_PATH) + if git_folder_parallel(build_config.repo_id, remote_pycpp_dir_name, recursive=True, root_outdir=python_root_dir): + cstr("Successfully downloaded required python cpp source files").msg.print() + else: + cstr(f"[WARNING] Couldn't download directory {remote_pycpp_dir_name} in remote repository {build_config.repo_id} to {python_root_dir}, some nodes may not work properly!").warning.print() + + cstr("Successfully installed Comfy3D! Let's Accelerate🚀").msg.print() + +except Exception as e: + cstr("Comfy3D install failed: Dependency installation has failed. Please install manually: https://github.com/MrForExample/ComfyUI-3D-Pack/tree/main/_Pre_Builds/README.md.").error.print() + traceback.print_exc() diff --git a/install_miniconda.bat b/install_miniconda.bat deleted file mode 100644 index 5b0ecf8..0000000 --- a/install_miniconda.bat +++ /dev/null @@ -1,23 +0,0 @@ -@echo off - -set "requirements_txt=%~dp0\requirements.txt" -set "requirements_post_txt=%~dp0\requirements_post.txt" -set "python_miniconda_exec=..\..\..\python_miniconda_env\ComfyUI\python.exe" - -echo Starting to install ComfyUI-3D-Pack... - -if exist "%python_miniconda_exec%" ( - echo Installing with Miniconda Environment - - "%python_miniconda_exec%" -s -m pip install -r "%requirements_txt%" - "%python_miniconda_exec%" -s -m pip install -r "%requirements_post_txt%" - - "%python_miniconda_exec%" -s -m pip install --force-reinstall xformers --index-url https://download.pytorch.org/whl/cu121 - -) else ( - echo ERROR: Cannot find Miniconda Environment "%python_miniconda_exec%" -) - -echo Install Finished. Press any key to continue... - -pause \ No newline at end of file diff --git a/install_windows_portable_win_py310_cu121.bat b/install_windows_portable_win_py310_cu121.bat deleted file mode 100644 index 32bb6ab..0000000 --- a/install_windows_portable_win_py310_cu121.bat +++ /dev/null @@ -1,31 +0,0 @@ -@echo off - -set "requirements_txt=%~dp0\requirements.txt" -set "requirements_post_txt=%~dp0\requirements_post_win_py310_cu121.txt" -set "python_exec=..\..\..\python_embeded\python.exe" - -set "python_target_include=..\..\..\python_embeded\include" -set "python_target_libs=..\..\..\python_embeded\libs" -set "python_include=%~dp0\_Pre_Builds\_Python310_cpp\include" -set "python_libs=%~dp0\_Pre_Builds\_Python310_cpp\libs" - -echo Starting to install ComfyUI-3D-Pack... - -if exist "%python_exec%" ( - echo Installing with ComfyUI Windows Portable Python Embeded Environment - - xcopy /s /i "%python_include%" "%python_target_include%" - xcopy /s /i "%python_libs%" "%python_target_libs%" - - "%python_exec%" -s -m pip install -r "%requirements_txt%" - "%python_exec%" -s -m pip install -r "%requirements_post_txt%" - - "%python_exec%" -s -m pip install --force-reinstall xformers --index-url https://download.pytorch.org/whl/cu121 - -) else ( - echo ERROR: Cannot find ComfyUI Windows Portable Python Embeded Environment "%python_exec%" -) - -echo Install Finished. Press any key to continue... - -pause \ No newline at end of file diff --git a/install_windows_portable_win_py311_cu121.bat b/install_windows_portable_win_py311_cu121.bat deleted file mode 100644 index 5c7b08a..0000000 --- a/install_windows_portable_win_py311_cu121.bat +++ /dev/null @@ -1,31 +0,0 @@ -@echo off - -set "requirements_txt=%~dp0\requirements.txt" -set "requirements_post_txt=%~dp0\requirements_post_win_py311_cu121.txt" -set "python_exec=..\..\..\python_embeded\python.exe" - -set "python_target_include=..\..\..\python_embeded\include" -set "python_target_libs=..\..\..\python_embeded\libs" -set "python_include=%~dp0\_Pre_Builds\_Python311_cpp\include" -set "python_libs=%~dp0\_Pre_Builds\_Python311_cpp\libs" - -echo Starting to install ComfyUI-3D-Pack... - -if exist "%python_exec%" ( - echo Installing with ComfyUI Windows Portable Python Embeded Environment - - xcopy /s /i "%python_include%" "%python_target_include%" - xcopy /s /i "%python_libs%" "%python_target_libs%" - - "%python_exec%" -s -m pip install -r "%requirements_txt%" - "%python_exec%" -s -m pip install -r "%requirements_post_txt%" - - "%python_exec%" -s -m pip install --force-reinstall xformers --index-url https://download.pytorch.org/whl/cu121 - -) else ( - echo ERROR: Cannot find ComfyUI Windows Portable Python Embeded Environment "%python_exec%" -) - -echo Install Finished. Press any key to continue... - -pause \ No newline at end of file diff --git a/install_windows_portable_win_py312_cu121.bat b/install_windows_portable_win_py312_cu121.bat deleted file mode 100644 index ddaefd6..0000000 --- a/install_windows_portable_win_py312_cu121.bat +++ /dev/null @@ -1,31 +0,0 @@ -@echo off - -set "requirements_txt=%~dp0\requirements.txt" -set "requirements_post_txt=%~dp0\requirements_post_win_py312_cu121.txt" -set "python_exec=..\..\..\python_embeded\python.exe" - -set "python_target_include=..\..\..\python_embeded\include" -set "python_target_libs=..\..\..\python_embeded\libs" -set "python_include=%~dp0\_Pre_Builds\_Python312_cpp\include" -set "python_libs=%~dp0\_Pre_Builds\_Python312_cpp\libs" - -echo Starting to install ComfyUI-3D-Pack... - -if exist "%python_exec%" ( - echo Installing with ComfyUI Windows Portable Python Embeded Environment - - xcopy /s /i "%python_include%" "%python_target_include%" - xcopy /s /i "%python_libs%" "%python_target_libs%" - - "%python_exec%" -s -m pip install -r "%requirements_txt%" - "%python_exec%" -s -m pip install -r "%requirements_post_txt%" - - "%python_exec%" -s -m pip install --force-reinstall xformers --index-url https://download.pytorch.org/whl/cu121 - -) else ( - echo ERROR: Cannot find ComfyUI Windows Portable Python Embeded Environment "%python_exec%" -) - -echo Install Finished. Press any key to continue... - -pause \ No newline at end of file diff --git a/instant_mesh/__init__.py b/instant_mesh/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/instant_mesh/data/__init__.py b/instant_mesh/data/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/instant_mesh/data/objaverse.py b/instant_mesh/data/objaverse.py deleted file mode 100644 index ffa2e0e..0000000 --- a/instant_mesh/data/objaverse.py +++ /dev/null @@ -1,325 +0,0 @@ -import os, sys -import math -import json -import importlib -from pathlib import Path - -import cv2 -import random -import numpy as np -from PIL import Image -import webdataset as wds -import pytorch_lightning as pl - -import torch -import torch.nn.functional as F -from torch.utils.data import Dataset -from torch.utils.data import DataLoader -from torch.utils.data.distributed import DistributedSampler -from torchvision import transforms - -from instant_mesh.utils.train_util import instantiate_from_config -from instant_mesh.utils.camera_util import ( - FOV_to_intrinsics, - center_looking_at_camera_pose, - get_circular_camera_poses, -) - - -class DataModuleFromConfig(pl.LightningDataModule): - def __init__( - self, - batch_size=8, - num_workers=4, - train=None, - validation=None, - test=None, - **kwargs, - ): - super().__init__() - - self.batch_size = batch_size - self.num_workers = num_workers - - self.dataset_configs = dict() - if train is not None: - self.dataset_configs['train'] = train - if validation is not None: - self.dataset_configs['validation'] = validation - if test is not None: - self.dataset_configs['test'] = test - - def setup(self, stage): - - if stage in ['fit']: - self.datasets = dict((k, instantiate_from_config(self.dataset_configs[k])) for k in self.dataset_configs) - else: - raise NotImplementedError - - def train_dataloader(self): - - sampler = DistributedSampler(self.datasets['train']) - return wds.WebLoader(self.datasets['train'], batch_size=self.batch_size, num_workers=self.num_workers, shuffle=False, sampler=sampler) - - def val_dataloader(self): - - sampler = DistributedSampler(self.datasets['validation']) - return wds.WebLoader(self.datasets['validation'], batch_size=1, num_workers=self.num_workers, shuffle=False, sampler=sampler) - - def test_dataloader(self): - - return wds.WebLoader(self.datasets['test'], batch_size=self.batch_size, num_workers=self.num_workers, shuffle=False) - - -class ObjaverseData(Dataset): - def __init__(self, - root_dir='objaverse/', - meta_fname='valid_paths.json', - input_image_dir='rendering_random_32views', - target_image_dir='rendering_random_32views', - input_view_num=6, - target_view_num=4, - total_view_n=32, - fov=50, - camera_rotation=True, - validation=False, - ): - self.root_dir = Path(root_dir) - self.input_image_dir = input_image_dir - self.target_image_dir = target_image_dir - - self.input_view_num = input_view_num - self.target_view_num = target_view_num - self.total_view_n = total_view_n - self.fov = fov - self.camera_rotation = camera_rotation - - with open(os.path.join(root_dir, meta_fname)) as f: - filtered_dict = json.load(f) - paths = filtered_dict['good_objs'] - self.paths = paths - - self.depth_scale = 6.0 - - total_objects = len(self.paths) - print('============= length of dataset %d =============' % len(self.paths)) - - def __len__(self): - return len(self.paths) - - def load_im(self, path, color): - ''' - replace background pixel with random color in rendering - ''' - pil_img = Image.open(path) - - image = np.asarray(pil_img, dtype=np.float32) / 255. - alpha = image[:, :, 3:] - image = image[:, :, :3] * alpha + color * (1 - alpha) - - image = torch.from_numpy(image).permute(2, 0, 1).contiguous().float() - alpha = torch.from_numpy(alpha).permute(2, 0, 1).contiguous().float() - return image, alpha - - def __getitem__(self, index): - while True: - input_image_path = os.path.join(self.root_dir, self.input_image_dir, self.paths[index]) - target_image_path = os.path.join(self.root_dir, self.target_image_dir, self.paths[index]) - - indices = np.random.choice(range(self.total_view_n), self.input_view_num + self.target_view_num, replace=False) - input_indices = indices[:self.input_view_num] - target_indices = indices[self.input_view_num:] - - '''background color, default: white''' - bg_white = [1., 1., 1.] - bg_black = [0., 0., 0.] - - image_list = [] - alpha_list = [] - depth_list = [] - normal_list = [] - pose_list = [] - - try: - input_cameras = np.load(os.path.join(input_image_path, 'cameras.npz'))['cam_poses'] - for idx in input_indices: - image, alpha = self.load_im(os.path.join(input_image_path, '%03d.png' % idx), bg_white) - normal, _ = self.load_im(os.path.join(input_image_path, '%03d_normal.png' % idx), bg_black) - depth = cv2.imread(os.path.join(input_image_path, '%03d_depth.png' % idx), cv2.IMREAD_UNCHANGED) / 255.0 * self.depth_scale - depth = torch.from_numpy(depth).unsqueeze(0) - pose = input_cameras[idx] - pose = np.concatenate([pose, np.array([[0, 0, 0, 1]])], axis=0) - - image_list.append(image) - alpha_list.append(alpha) - depth_list.append(depth) - normal_list.append(normal) - pose_list.append(pose) - - target_cameras = np.load(os.path.join(target_image_path, 'cameras.npz'))['cam_poses'] - for idx in target_indices: - image, alpha = self.load_im(os.path.join(target_image_path, '%03d.png' % idx), bg_white) - normal, _ = self.load_im(os.path.join(target_image_path, '%03d_normal.png' % idx), bg_black) - depth = cv2.imread(os.path.join(target_image_path, '%03d_depth.png' % idx), cv2.IMREAD_UNCHANGED) / 255.0 * self.depth_scale - depth = torch.from_numpy(depth).unsqueeze(0) - pose = target_cameras[idx] - pose = np.concatenate([pose, np.array([[0, 0, 0, 1]])], axis=0) - - image_list.append(image) - alpha_list.append(alpha) - depth_list.append(depth) - normal_list.append(normal) - pose_list.append(pose) - - except Exception as e: - print(e) - index = np.random.randint(0, len(self.paths)) - continue - - break - - images = torch.stack(image_list, dim=0).float() # (6+V, 3, H, W) - alphas = torch.stack(alpha_list, dim=0).float() # (6+V, 1, H, W) - depths = torch.stack(depth_list, dim=0).float() # (6+V, 1, H, W) - normals = torch.stack(normal_list, dim=0).float() # (6+V, 3, H, W) - w2cs = torch.from_numpy(np.stack(pose_list, axis=0)).float() # (6+V, 4, 4) - c2ws = torch.linalg.inv(w2cs).float() - - normals = normals * 2.0 - 1.0 - normals = F.normalize(normals, dim=1) - normals = (normals + 1.0) / 2.0 - normals = torch.lerp(torch.zeros_like(normals), normals, alphas) - - # random rotation along z axis - if self.camera_rotation: - degree = np.random.uniform(0, math.pi * 2) - rot = torch.tensor([ - [np.cos(degree), -np.sin(degree), 0, 0], - [np.sin(degree), np.cos(degree), 0, 0], - [0, 0, 1, 0], - [0, 0, 0, 1], - ]).unsqueeze(0).float() - c2ws = torch.matmul(rot, c2ws) - - # rotate normals - N, _, H, W = normals.shape - normals = normals * 2.0 - 1.0 - normals = torch.matmul(rot[:, :3, :3], normals.view(N, 3, -1)).view(N, 3, H, W) - normals = F.normalize(normals, dim=1) - normals = (normals + 1.0) / 2.0 - normals = torch.lerp(torch.zeros_like(normals), normals, alphas) - - # random scaling - if np.random.rand() < 0.5: - scale = np.random.uniform(0.7, 1.1) - c2ws[:, :3, 3] *= scale - depths *= scale - - # instrinsics of perspective cameras - K = FOV_to_intrinsics(self.fov) - Ks = K.unsqueeze(0).repeat(self.input_view_num + self.target_view_num, 1, 1).float() - - data = { - 'input_images': images[:self.input_view_num], # (6, 3, H, W) - 'input_alphas': alphas[:self.input_view_num], # (6, 1, H, W) - 'input_depths': depths[:self.input_view_num], # (6, 1, H, W) - 'input_normals': normals[:self.input_view_num], # (6, 3, H, W) - 'input_c2ws': c2ws[:self.input_view_num], # (6, 4, 4) - 'input_Ks': Ks[:self.input_view_num], # (6, 3, 3) - - # lrm generator input and supervision - 'target_images': images[self.input_view_num:], # (V, 3, H, W) - 'target_alphas': alphas[self.input_view_num:], # (V, 1, H, W) - 'target_depths': depths[self.input_view_num:], # (V, 1, H, W) - 'target_normals': normals[self.input_view_num:], # (V, 3, H, W) - 'target_c2ws': c2ws[self.input_view_num:], # (V, 4, 4) - 'target_Ks': Ks[self.input_view_num:], # (V, 3, 3) - } - return data - - -class ValidationData(Dataset): - def __init__(self, - root_dir='objaverse/', - input_view_num=6, - input_image_size=320, - fov=30, - ): - self.root_dir = Path(root_dir) - self.input_view_num = input_view_num - self.input_image_size = input_image_size - self.fov = fov - - self.paths = sorted(os.listdir(self.root_dir)) - print('============= length of dataset %d =============' % len(self.paths)) - - cam_distance = 4.0 - azimuths = np.array([30, 90, 150, 210, 270, 330]) - elevations = np.array([20, -10, 20, -10, 20, -10]) - azimuths = np.deg2rad(azimuths) - elevations = np.deg2rad(elevations) - - x = cam_distance * np.cos(elevations) * np.cos(azimuths) - y = cam_distance * np.cos(elevations) * np.sin(azimuths) - z = cam_distance * np.sin(elevations) - - cam_locations = np.stack([x, y, z], axis=-1) - cam_locations = torch.from_numpy(cam_locations).float() - c2ws = center_looking_at_camera_pose(cam_locations) - self.c2ws = c2ws.float() - self.Ks = FOV_to_intrinsics(self.fov).unsqueeze(0).repeat(6, 1, 1).float() - - render_c2ws = get_circular_camera_poses(M=8, radius=cam_distance, elevation=20.0) - render_Ks = FOV_to_intrinsics(self.fov).unsqueeze(0).repeat(render_c2ws.shape[0], 1, 1) - self.render_c2ws = render_c2ws.float() - self.render_Ks = render_Ks.float() - - def __len__(self): - return len(self.paths) - - def load_im(self, path, color): - ''' - replace background pixel with random color in rendering - ''' - pil_img = Image.open(path) - pil_img = pil_img.resize((self.input_image_size, self.input_image_size), resample=Image.BICUBIC) - - image = np.asarray(pil_img, dtype=np.float32) / 255. - if image.shape[-1] == 4: - alpha = image[:, :, 3:] - image = image[:, :, :3] * alpha + color * (1 - alpha) - else: - alpha = np.ones_like(image[:, :, :1]) - - image = torch.from_numpy(image).permute(2, 0, 1).contiguous().float() - alpha = torch.from_numpy(alpha).permute(2, 0, 1).contiguous().float() - return image, alpha - - def __getitem__(self, index): - # load data - input_image_path = os.path.join(self.root_dir, self.paths[index]) - - '''background color, default: white''' - bkg_color = [1.0, 1.0, 1.0] - - image_list = [] - alpha_list = [] - - for idx in range(self.input_view_num): - image, alpha = self.load_im(os.path.join(input_image_path, f'{idx:03d}.png'), bkg_color) - image_list.append(image) - alpha_list.append(alpha) - - images = torch.stack(image_list, dim=0).float() - alphas = torch.stack(alpha_list, dim=0).float() - - data = { - 'input_images': images, - 'input_alphas': alphas, - 'input_c2ws': self.c2ws, - 'input_Ks': self.Ks, - - 'render_c2ws': self.render_c2ws, - 'render_Ks': self.render_Ks, - } - return data diff --git a/instant_mesh/data/objaverse_zero123plus.py b/instant_mesh/data/objaverse_zero123plus.py deleted file mode 100644 index 7376e35..0000000 --- a/instant_mesh/data/objaverse_zero123plus.py +++ /dev/null @@ -1,124 +0,0 @@ -import os -import json -import numpy as np -import webdataset as wds -import pytorch_lightning as pl -import torch -from torch.utils.data import Dataset -from torch.utils.data.distributed import DistributedSampler -from PIL import Image -from pathlib import Path - -from instant_mesh.utils.train_util import instantiate_from_config - - -class DataModuleFromConfig(pl.LightningDataModule): - def __init__( - self, - batch_size=8, - num_workers=4, - train=None, - validation=None, - test=None, - **kwargs, - ): - super().__init__() - - self.batch_size = batch_size - self.num_workers = num_workers - - self.dataset_configs = dict() - if train is not None: - self.dataset_configs['train'] = train - if validation is not None: - self.dataset_configs['validation'] = validation - if test is not None: - self.dataset_configs['test'] = test - - def setup(self, stage): - - if stage in ['fit']: - self.datasets = dict((k, instantiate_from_config(self.dataset_configs[k])) for k in self.dataset_configs) - else: - raise NotImplementedError - - def train_dataloader(self): - - sampler = DistributedSampler(self.datasets['train']) - return wds.WebLoader(self.datasets['train'], batch_size=self.batch_size, num_workers=self.num_workers, shuffle=False, sampler=sampler) - - def val_dataloader(self): - - sampler = DistributedSampler(self.datasets['validation']) - return wds.WebLoader(self.datasets['validation'], batch_size=4, num_workers=self.num_workers, shuffle=False, sampler=sampler) - - def test_dataloader(self): - - return wds.WebLoader(self.datasets['test'], batch_size=self.batch_size, num_workers=self.num_workers, shuffle=False) - - -class ObjaverseData(Dataset): - def __init__(self, - root_dir='objaverse/', - meta_fname='valid_paths.json', - image_dir='rendering_zero123plus', - validation=False, - ): - self.root_dir = Path(root_dir) - self.image_dir = image_dir - - with open(os.path.join(root_dir, meta_fname)) as f: - lvis_dict = json.load(f) - paths = [] - for k in lvis_dict.keys(): - paths.extend(lvis_dict[k]) - self.paths = paths - - total_objects = len(self.paths) - if validation: - self.paths = self.paths[-16:] # used last 16 as validation - else: - self.paths = self.paths[:-16] - print('============= length of dataset %d =============' % len(self.paths)) - - def __len__(self): - return len(self.paths) - - def load_im(self, path, color): - pil_img = Image.open(path) - - image = np.asarray(pil_img, dtype=np.float32) / 255. - alpha = image[:, :, 3:] - image = image[:, :, :3] * alpha + color * (1 - alpha) - - image = torch.from_numpy(image).permute(2, 0, 1).contiguous().float() - alpha = torch.from_numpy(alpha).permute(2, 0, 1).contiguous().float() - return image, alpha - - def __getitem__(self, index): - while True: - image_path = os.path.join(self.root_dir, self.image_dir, self.paths[index]) - - '''background color, default: white''' - bkg_color = [1., 1., 1.] - - img_list = [] - try: - for idx in range(7): - img, alpha = self.load_im(os.path.join(image_path, '%03d.png' % idx), bkg_color) - img_list.append(img) - - except Exception as e: - print(e) - index = np.random.randint(0, len(self.paths)) - continue - - break - - imgs = torch.stack(img_list, dim=0).float() - - data = { - 'cond_imgs': imgs[0], # (3, H, W) - 'target_imgs': imgs[1:], # (6, 3, H, W) - } - return data diff --git a/instant_mesh/model.py b/instant_mesh/model.py deleted file mode 100644 index c3d3562..0000000 --- a/instant_mesh/model.py +++ /dev/null @@ -1,303 +0,0 @@ -import os -import numpy as np -import torch -import torch.nn.functional as F -from torchvision.transforms import v2 -from torchvision.utils import make_grid, save_image -from torchmetrics.image.lpip import LearnedPerceptualImagePatchSimilarity -import pytorch_lightning as pl -from einops import rearrange, repeat - -from instant_mesh.utils.train_util import instantiate_from_config - - -class MVRecon(pl.LightningModule): - def __init__( - self, - lrm_generator_config, - lrm_path=None, - input_size=256, - render_size=192, - ): - super(MVRecon, self).__init__() - - self.input_size = input_size - self.render_size = render_size - - # init modules - self.lrm_generator = instantiate_from_config(lrm_generator_config) - if lrm_path is not None: - lrm_ckpt = torch.load(lrm_path) - self.lrm_generator.load_state_dict(lrm_ckpt['weights'], strict=False) - - self.lpips = LearnedPerceptualImagePatchSimilarity(net_type='vgg') - - self.validation_step_outputs = [] - - def on_fit_start(self): - if self.global_rank == 0: - os.makedirs(os.path.join(self.logdir, 'images'), exist_ok=True) - os.makedirs(os.path.join(self.logdir, 'images_val'), exist_ok=True) - - def prepare_batch_data(self, batch): - lrm_generator_input = {} - render_gt = {} # for supervision - - # input images - images = batch['input_images'] - images = v2.functional.resize( - images, self.input_size, interpolation=3, antialias=True).clamp(0, 1) - - lrm_generator_input['images'] = images.to(self.device) - - # input cameras and render cameras - input_c2ws = batch['input_c2ws'].flatten(-2) - input_Ks = batch['input_Ks'].flatten(-2) - target_c2ws = batch['target_c2ws'].flatten(-2) - target_Ks = batch['target_Ks'].flatten(-2) - render_cameras_input = torch.cat([input_c2ws, input_Ks], dim=-1) - render_cameras_target = torch.cat([target_c2ws, target_Ks], dim=-1) - render_cameras = torch.cat([render_cameras_input, render_cameras_target], dim=1) - - input_extrinsics = input_c2ws[:, :, :12] - input_intrinsics = torch.stack([ - input_Ks[:, :, 0], input_Ks[:, :, 4], - input_Ks[:, :, 2], input_Ks[:, :, 5], - ], dim=-1) - cameras = torch.cat([input_extrinsics, input_intrinsics], dim=-1) - - # add noise to input cameras - cameras = cameras + torch.rand_like(cameras) * 0.04 - 0.02 - - lrm_generator_input['cameras'] = cameras.to(self.device) - lrm_generator_input['render_cameras'] = render_cameras.to(self.device) - - # target images - target_images = torch.cat([batch['input_images'], batch['target_images']], dim=1) - target_depths = torch.cat([batch['input_depths'], batch['target_depths']], dim=1) - target_alphas = torch.cat([batch['input_alphas'], batch['target_alphas']], dim=1) - - # random crop - render_size = np.random.randint(self.render_size, 513) - target_images = v2.functional.resize( - target_images, render_size, interpolation=3, antialias=True).clamp(0, 1) - target_depths = v2.functional.resize( - target_depths, render_size, interpolation=0, antialias=True) - target_alphas = v2.functional.resize( - target_alphas, render_size, interpolation=0, antialias=True) - - crop_params = v2.RandomCrop.get_params( - target_images, output_size=(self.render_size, self.render_size)) - target_images = v2.functional.crop(target_images, *crop_params) - target_depths = v2.functional.crop(target_depths, *crop_params)[:, :, 0:1] - target_alphas = v2.functional.crop(target_alphas, *crop_params)[:, :, 0:1] - - lrm_generator_input['render_size'] = render_size - lrm_generator_input['crop_params'] = crop_params - - render_gt['target_images'] = target_images.to(self.device) - render_gt['target_depths'] = target_depths.to(self.device) - render_gt['target_alphas'] = target_alphas.to(self.device) - - return lrm_generator_input, render_gt - - def prepare_validation_batch_data(self, batch): - lrm_generator_input = {} - - # input images - images = batch['input_images'] - images = v2.functional.resize( - images, self.input_size, interpolation=3, antialias=True).clamp(0, 1) - - lrm_generator_input['images'] = images.to(self.device) - - input_c2ws = batch['input_c2ws'].flatten(-2) - input_Ks = batch['input_Ks'].flatten(-2) - - input_extrinsics = input_c2ws[:, :, :12] - input_intrinsics = torch.stack([ - input_Ks[:, :, 0], input_Ks[:, :, 4], - input_Ks[:, :, 2], input_Ks[:, :, 5], - ], dim=-1) - cameras = torch.cat([input_extrinsics, input_intrinsics], dim=-1) - - lrm_generator_input['cameras'] = cameras.to(self.device) - - render_c2ws = batch['render_c2ws'].flatten(-2) - render_Ks = batch['render_Ks'].flatten(-2) - render_cameras = torch.cat([render_c2ws, render_Ks], dim=-1) - - lrm_generator_input['render_cameras'] = render_cameras.to(self.device) - lrm_generator_input['render_size'] = 384 - lrm_generator_input['crop_params'] = None - - return lrm_generator_input - - def forward_lrm_generator( - self, - images, - cameras, - render_cameras, - render_size=192, - crop_params=None, - chunk_size=1, - ): - planes = torch.utils.checkpoint.checkpoint( - self.lrm_generator.forward_planes, - images, - cameras, - use_reentrant=False, - ) - frames = [] - for i in range(0, render_cameras.shape[1], chunk_size): - frames.append( - torch.utils.checkpoint.checkpoint( - self.lrm_generator.synthesizer, - planes, - cameras=render_cameras[:, i:i+chunk_size], - render_size=render_size, - crop_params=crop_params, - use_reentrant=False - ) - ) - frames = { - k: torch.cat([r[k] for r in frames], dim=1) - for k in frames[0].keys() - } - return frames - - def forward(self, lrm_generator_input): - images = lrm_generator_input['images'] - cameras = lrm_generator_input['cameras'] - render_cameras = lrm_generator_input['render_cameras'] - render_size = lrm_generator_input['render_size'] - crop_params = lrm_generator_input['crop_params'] - - out = self.forward_lrm_generator( - images, - cameras, - render_cameras, - render_size=render_size, - crop_params=crop_params, - chunk_size=1, - ) - render_images = torch.clamp(out['images_rgb'], 0.0, 1.0) - render_depths = out['images_depth'] - render_alphas = torch.clamp(out['images_weight'], 0.0, 1.0) - - out = { - 'render_images': render_images, - 'render_depths': render_depths, - 'render_alphas': render_alphas, - } - return out - - def training_step(self, batch, batch_idx): - lrm_generator_input, render_gt = self.prepare_batch_data(batch) - - render_out = self.forward(lrm_generator_input) - - loss, loss_dict = self.compute_loss(render_out, render_gt) - - self.log_dict(loss_dict, prog_bar=True, logger=True, on_step=True, on_epoch=True) - - if self.global_step % 1000 == 0 and self.global_rank == 0: - B, N, C, H, W = render_gt['target_images'].shape - N_in = lrm_generator_input['images'].shape[1] - - input_images = v2.functional.resize( - lrm_generator_input['images'], (H, W), interpolation=3, antialias=True).clamp(0, 1) - input_images = torch.cat( - [input_images, torch.ones(B, N-N_in, C, H, W).to(input_images)], dim=1) - - input_images = rearrange( - input_images, 'b n c h w -> b c h (n w)') - target_images = rearrange( - render_gt['target_images'], 'b n c h w -> b c h (n w)') - render_images = rearrange( - render_out['render_images'], 'b n c h w -> b c h (n w)') - target_alphas = rearrange( - repeat(render_gt['target_alphas'], 'b n 1 h w -> b n 3 h w'), 'b n c h w -> b c h (n w)') - render_alphas = rearrange( - repeat(render_out['render_alphas'], 'b n 1 h w -> b n 3 h w'), 'b n c h w -> b c h (n w)') - target_depths = rearrange( - repeat(render_gt['target_depths'], 'b n 1 h w -> b n 3 h w'), 'b n c h w -> b c h (n w)') - render_depths = rearrange( - repeat(render_out['render_depths'], 'b n 1 h w -> b n 3 h w'), 'b n c h w -> b c h (n w)') - MAX_DEPTH = torch.max(target_depths) - target_depths = target_depths / MAX_DEPTH * target_alphas - render_depths = render_depths / MAX_DEPTH - - grid = torch.cat([ - input_images, - target_images, render_images, - target_alphas, render_alphas, - target_depths, render_depths, - ], dim=-2) - grid = make_grid(grid, nrow=target_images.shape[0], normalize=True, value_range=(0, 1)) - - save_image(grid, os.path.join(self.logdir, 'images', f'train_{self.global_step:07d}.png')) - - return loss - - def compute_loss(self, render_out, render_gt): - # NOTE: the rgb value range of OpenLRM is [0, 1] - render_images = render_out['render_images'] - target_images = render_gt['target_images'].to(render_images) - render_images = rearrange(render_images, 'b n ... -> (b n) ...') * 2.0 - 1.0 - target_images = rearrange(target_images, 'b n ... -> (b n) ...') * 2.0 - 1.0 - - loss_mse = F.mse_loss(render_images, target_images) - loss_lpips = 2.0 * self.lpips(render_images, target_images) - - render_alphas = render_out['render_alphas'] - target_alphas = render_gt['target_alphas'] - loss_mask = F.mse_loss(render_alphas, target_alphas) - - loss = loss_mse + loss_lpips + loss_mask - - prefix = 'train' - loss_dict = {} - loss_dict.update({f'{prefix}/loss_mse': loss_mse}) - loss_dict.update({f'{prefix}/loss_lpips': loss_lpips}) - loss_dict.update({f'{prefix}/loss_mask': loss_mask}) - loss_dict.update({f'{prefix}/loss': loss}) - - return loss, loss_dict - - @torch.no_grad() - def validation_step(self, batch, batch_idx): - lrm_generator_input = self.prepare_validation_batch_data(batch) - - render_out = self.forward(lrm_generator_input) - render_images = render_out['render_images'] - render_images = rearrange(render_images, 'b n c h w -> b c h (n w)') - - self.validation_step_outputs.append(render_images) - - def on_validation_epoch_end(self): - images = torch.cat(self.validation_step_outputs, dim=-1) - - all_images = self.all_gather(images) - all_images = rearrange(all_images, 'r b c h w -> (r b) c h w') - - if self.global_rank == 0: - image_path = os.path.join(self.logdir, 'images_val', f'val_{self.global_step:07d}.png') - - grid = make_grid(all_images, nrow=1, normalize=True, value_range=(0, 1)) - save_image(grid, image_path) - print(f"Saved image to {image_path}") - - self.validation_step_outputs.clear() - - def configure_optimizers(self): - lr = self.learning_rate - - params = [] - - params.append({"params": self.lrm_generator.parameters(), "lr": lr, "weight_decay": 0.01 }) - - optimizer = torch.optim.AdamW(params, lr=lr, betas=(0.90, 0.95)) - scheduler = torch.optim.lr_scheduler.CosineAnnealingWarmRestarts(optimizer, 3000, eta_min=lr/10) - - return {'optimizer': optimizer, 'lr_scheduler': scheduler} diff --git a/instant_mesh/model_mesh.py b/instant_mesh/model_mesh.py deleted file mode 100644 index 9c446b1..0000000 --- a/instant_mesh/model_mesh.py +++ /dev/null @@ -1,325 +0,0 @@ -import os -import numpy as np -import torch -import torch.nn.functional as F -from torchvision.transforms import v2 -from torchvision.utils import make_grid, save_image -from torchmetrics.image.lpip import LearnedPerceptualImagePatchSimilarity -import pytorch_lightning as pl -from einops import rearrange, repeat - -from instant_mesh.utils.train_util import instantiate_from_config - - -# Regulrarization loss for FlexiCubes -def sdf_reg_loss_batch(sdf, all_edges): - sdf_f1x6x2 = sdf[:, all_edges.reshape(-1)].reshape(sdf.shape[0], -1, 2) - mask = torch.sign(sdf_f1x6x2[..., 0]) != torch.sign(sdf_f1x6x2[..., 1]) - sdf_f1x6x2 = sdf_f1x6x2[mask] - sdf_diff = F.binary_cross_entropy_with_logits( - sdf_f1x6x2[..., 0], (sdf_f1x6x2[..., 1] > 0).float()) + \ - F.binary_cross_entropy_with_logits( - sdf_f1x6x2[..., 1], (sdf_f1x6x2[..., 0] > 0).float()) - return sdf_diff - - -class MVRecon(pl.LightningModule): - def __init__( - self, - lrm_generator_config, - input_size=256, - render_size=512, - init_ckpt=None, - ): - super(MVRecon, self).__init__() - - self.input_size = input_size - self.render_size = render_size - - # init modules - self.lrm_generator = instantiate_from_config(lrm_generator_config) - - self.lpips = LearnedPerceptualImagePatchSimilarity(net_type='vgg') - - # Load weights from pretrained MVRecon model, and use the mlp - # weights to initialize the weights of sdf and rgb mlps. - if init_ckpt is not None: - sd = torch.load(init_ckpt, map_location='cpu')['state_dict'] - sd = {k: v for k, v in sd.items() if k.startswith('lrm_generator')} - sd_fc = {} - for k, v in sd.items(): - if k.startswith('lrm_generator.synthesizer.decoder.net.'): - if k.startswith('lrm_generator.synthesizer.decoder.net.6.'): # last layer - # Here we assume the density filed's isosurface threshold is t, - # we reverse the sign of density filed to initialize SDF field. - # -(w*x + b - t) = (-w)*x + (t - b) - if 'weight' in k: - sd_fc[k.replace('net.', 'net_sdf.')] = -v[0:1] - else: - sd_fc[k.replace('net.', 'net_sdf.')] = 10.0 - v[0:1] - sd_fc[k.replace('net.', 'net_rgb.')] = v[1:4] - else: - sd_fc[k.replace('net.', 'net_sdf.')] = v - sd_fc[k.replace('net.', 'net_rgb.')] = v - else: - sd_fc[k] = v - sd_fc = {k.replace('lrm_generator.', ''): v for k, v in sd_fc.items()} - # missing `net_deformation` and `net_weight` parameters - self.lrm_generator.load_state_dict(sd_fc, strict=False) - print(f'Loaded weights from {init_ckpt}') - - self.validation_step_outputs = [] - - def on_fit_start(self): - device = torch.device(f'cuda:{self.global_rank}') - self.lrm_generator.init_flexicubes_geometry(device) - if self.global_rank == 0: - os.makedirs(os.path.join(self.logdir, 'images'), exist_ok=True) - os.makedirs(os.path.join(self.logdir, 'images_val'), exist_ok=True) - - def prepare_batch_data(self, batch): - lrm_generator_input = {} - render_gt = {} - - # input images - images = batch['input_images'] - images = v2.functional.resize( - images, self.input_size, interpolation=3, antialias=True).clamp(0, 1) - - lrm_generator_input['images'] = images.to(self.device) - - # input cameras and render cameras - input_c2ws = batch['input_c2ws'] - input_Ks = batch['input_Ks'] - target_c2ws = batch['target_c2ws'] - - render_c2ws = torch.cat([input_c2ws, target_c2ws], dim=1) - render_w2cs = torch.linalg.inv(render_c2ws) - - input_extrinsics = input_c2ws.flatten(-2) - input_extrinsics = input_extrinsics[:, :, :12] - input_intrinsics = input_Ks.flatten(-2) - input_intrinsics = torch.stack([ - input_intrinsics[:, :, 0], input_intrinsics[:, :, 4], - input_intrinsics[:, :, 2], input_intrinsics[:, :, 5], - ], dim=-1) - cameras = torch.cat([input_extrinsics, input_intrinsics], dim=-1) - - # add noise to input_cameras - cameras = cameras + torch.rand_like(cameras) * 0.04 - 0.02 - - lrm_generator_input['cameras'] = cameras.to(self.device) - lrm_generator_input['render_cameras'] = render_w2cs.to(self.device) - - # target images - target_images = torch.cat([batch['input_images'], batch['target_images']], dim=1) - target_depths = torch.cat([batch['input_depths'], batch['target_depths']], dim=1) - target_alphas = torch.cat([batch['input_alphas'], batch['target_alphas']], dim=1) - target_normals = torch.cat([batch['input_normals'], batch['target_normals']], dim=1) - - render_size = self.render_size - target_images = v2.functional.resize( - target_images, render_size, interpolation=3, antialias=True).clamp(0, 1) - target_depths = v2.functional.resize( - target_depths, render_size, interpolation=0, antialias=True) - target_alphas = v2.functional.resize( - target_alphas, render_size, interpolation=0, antialias=True) - target_normals = v2.functional.resize( - target_normals, render_size, interpolation=3, antialias=True) - - lrm_generator_input['render_size'] = render_size - - render_gt['target_images'] = target_images.to(self.device) - render_gt['target_depths'] = target_depths.to(self.device) - render_gt['target_alphas'] = target_alphas.to(self.device) - render_gt['target_normals'] = target_normals.to(self.device) - - return lrm_generator_input, render_gt - - def prepare_validation_batch_data(self, batch): - lrm_generator_input = {} - - # input images - images = batch['input_images'] - images = v2.functional.resize( - images, self.input_size, interpolation=3, antialias=True).clamp(0, 1) - - lrm_generator_input['images'] = images.to(self.device) - - # input cameras - input_c2ws = batch['input_c2ws'].flatten(-2) - input_Ks = batch['input_Ks'].flatten(-2) - - input_extrinsics = input_c2ws[:, :, :12] - input_intrinsics = torch.stack([ - input_Ks[:, :, 0], input_Ks[:, :, 4], - input_Ks[:, :, 2], input_Ks[:, :, 5], - ], dim=-1) - cameras = torch.cat([input_extrinsics, input_intrinsics], dim=-1) - - lrm_generator_input['cameras'] = cameras.to(self.device) - - # render cameras - render_c2ws = batch['render_c2ws'] - render_w2cs = torch.linalg.inv(render_c2ws) - - lrm_generator_input['render_cameras'] = render_w2cs.to(self.device) - lrm_generator_input['render_size'] = 384 - - return lrm_generator_input - - def forward_lrm_generator(self, images, cameras, render_cameras, render_size=512): - planes = torch.utils.checkpoint.checkpoint( - self.lrm_generator.forward_planes, - images, - cameras, - use_reentrant=False, - ) - out = self.lrm_generator.forward_geometry( - planes, - render_cameras, - render_size, - ) - return out - - def forward(self, lrm_generator_input): - images = lrm_generator_input['images'] - cameras = lrm_generator_input['cameras'] - render_cameras = lrm_generator_input['render_cameras'] - render_size = lrm_generator_input['render_size'] - - out = self.forward_lrm_generator( - images, cameras, render_cameras, render_size=render_size) - - return out - - def training_step(self, batch, batch_idx): - lrm_generator_input, render_gt = self.prepare_batch_data(batch) - - render_out = self.forward(lrm_generator_input) - - loss, loss_dict = self.compute_loss(render_out, render_gt) - - self.log_dict(loss_dict, prog_bar=True, logger=True, on_step=True, on_epoch=True) - - if self.global_step % 1000 == 0 and self.global_rank == 0: - B, N, C, H, W = render_gt['target_images'].shape - N_in = lrm_generator_input['images'].shape[1] - - target_images = rearrange( - render_gt['target_images'], 'b n c h w -> b c h (n w)') - render_images = rearrange( - render_out['img'], 'b n c h w -> b c h (n w)') - target_alphas = rearrange( - repeat(render_gt['target_alphas'], 'b n 1 h w -> b n 3 h w'), 'b n c h w -> b c h (n w)') - render_alphas = rearrange( - repeat(render_out['mask'], 'b n 1 h w -> b n 3 h w'), 'b n c h w -> b c h (n w)') - target_depths = rearrange( - repeat(render_gt['target_depths'], 'b n 1 h w -> b n 3 h w'), 'b n c h w -> b c h (n w)') - render_depths = rearrange( - repeat(render_out['depth'], 'b n 1 h w -> b n 3 h w'), 'b n c h w -> b c h (n w)') - target_normals = rearrange( - render_gt['target_normals'], 'b n c h w -> b c h (n w)') - render_normals = rearrange( - render_out['normal'], 'b n c h w -> b c h (n w)') - MAX_DEPTH = torch.max(target_depths) - target_depths = target_depths / MAX_DEPTH * target_alphas - render_depths = render_depths / MAX_DEPTH - - grid = torch.cat([ - target_images, render_images, - target_alphas, render_alphas, - target_depths, render_depths, - target_normals, render_normals, - ], dim=-2) - grid = make_grid(grid, nrow=target_images.shape[0], normalize=True, value_range=(0, 1)) - - image_path = os.path.join(self.logdir, 'images', f'train_{self.global_step:07d}.png') - save_image(grid, image_path) - print(f"Saved image to {image_path}") - - return loss - - def compute_loss(self, render_out, render_gt): - # NOTE: the rgb value range of OpenLRM is [0, 1] - render_images = render_out['img'] - target_images = render_gt['target_images'].to(render_images) - render_images = rearrange(render_images, 'b n ... -> (b n) ...') * 2.0 - 1.0 - target_images = rearrange(target_images, 'b n ... -> (b n) ...') * 2.0 - 1.0 - loss_mse = F.mse_loss(render_images, target_images) - loss_lpips = 2.0 * self.lpips(render_images, target_images) - - render_alphas = render_out['mask'] - target_alphas = render_gt['target_alphas'] - loss_mask = F.mse_loss(render_alphas, target_alphas) - - render_depths = render_out['depth'] - target_depths = render_gt['target_depths'] - loss_depth = 0.5 * F.l1_loss(render_depths[target_alphas>0], target_depths[target_alphas>0]) - - render_normals = render_out['normal'] * 2.0 - 1.0 - target_normals = render_gt['target_normals'] * 2.0 - 1.0 - similarity = (render_normals * target_normals).sum(dim=-3).abs() - normal_mask = target_alphas.squeeze(-3) - loss_normal = 1 - similarity[normal_mask>0].mean() - loss_normal = 0.2 * loss_normal - - # flexicubes regularization loss - sdf = render_out['sdf'] - sdf_reg_loss = render_out['sdf_reg_loss'] - sdf_reg_loss_entropy = sdf_reg_loss_batch(sdf, self.lrm_generator.geometry.all_edges).mean() * 0.01 - _, flexicubes_surface_reg, flexicubes_weights_reg = sdf_reg_loss - flexicubes_surface_reg = flexicubes_surface_reg.mean() * 0.5 - flexicubes_weights_reg = flexicubes_weights_reg.mean() * 0.1 - - loss_reg = sdf_reg_loss_entropy + flexicubes_surface_reg + flexicubes_weights_reg - - loss = loss_mse + loss_lpips + loss_mask + loss_depth + loss_normal + loss_reg - - prefix = 'train' - loss_dict = {} - loss_dict.update({f'{prefix}/loss_mse': loss_mse}) - loss_dict.update({f'{prefix}/loss_lpips': loss_lpips}) - loss_dict.update({f'{prefix}/loss_mask': loss_mask}) - loss_dict.update({f'{prefix}/loss_normal': loss_normal}) - loss_dict.update({f'{prefix}/loss_depth': loss_depth}) - loss_dict.update({f'{prefix}/loss_reg_sdf': sdf_reg_loss_entropy}) - loss_dict.update({f'{prefix}/loss_reg_surface': flexicubes_surface_reg}) - loss_dict.update({f'{prefix}/loss_reg_weights': flexicubes_weights_reg}) - loss_dict.update({f'{prefix}/loss': loss}) - - return loss, loss_dict - - @torch.no_grad() - def validation_step(self, batch, batch_idx): - lrm_generator_input = self.prepare_validation_batch_data(batch) - - render_out = self.forward(lrm_generator_input) - render_images = render_out['img'] - render_images = rearrange(render_images, 'b n c h w -> b c h (n w)') - - self.validation_step_outputs.append(render_images) - - def on_validation_epoch_end(self): - images = torch.cat(self.validation_step_outputs, dim=-1) - - all_images = self.all_gather(images) - all_images = rearrange(all_images, 'r b c h w -> (r b) c h w') - - if self.global_rank == 0: - image_path = os.path.join(self.logdir, 'images_val', f'val_{self.global_step:07d}.png') - - grid = make_grid(all_images, nrow=1, normalize=True, value_range=(0, 1)) - save_image(grid, image_path) - print(f"Saved image to {image_path}") - - self.validation_step_outputs.clear() - - def configure_optimizers(self): - lr = self.learning_rate - - optimizer = torch.optim.AdamW( - self.lrm_generator.parameters(), lr=lr, betas=(0.90, 0.95), weight_decay=0.01) - scheduler = torch.optim.lr_scheduler.CosineAnnealingWarmRestarts(optimizer, 100000, eta_min=0) - - return {'optimizer': optimizer, 'lr_scheduler': scheduler} \ No newline at end of file diff --git a/instant_mesh/models/__init__.py b/instant_mesh/models/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/instant_mesh/models/decoder/__init__.py b/instant_mesh/models/decoder/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/instant_mesh/models/decoder/transformer.py b/instant_mesh/models/decoder/transformer.py deleted file mode 100644 index d8e628c..0000000 --- a/instant_mesh/models/decoder/transformer.py +++ /dev/null @@ -1,123 +0,0 @@ -# Copyright (c) 2023, Zexin He -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - - -import torch -import torch.nn as nn - - -class BasicTransformerBlock(nn.Module): - """ - Transformer block that takes in a cross-attention condition and another modulation vector applied to sub-blocks. - """ - # use attention from torch.nn.MultiHeadAttention - # Block contains a cross-attention layer, a self-attention layer, and a MLP - def __init__( - self, - inner_dim: int, - cond_dim: int, - num_heads: int, - eps: float, - attn_drop: float = 0., - attn_bias: bool = False, - mlp_ratio: float = 4., - mlp_drop: float = 0., - ): - super().__init__() - - self.norm1 = nn.LayerNorm(inner_dim) - self.cross_attn = nn.MultiheadAttention( - embed_dim=inner_dim, num_heads=num_heads, kdim=cond_dim, vdim=cond_dim, - dropout=attn_drop, bias=attn_bias, batch_first=True) - self.norm2 = nn.LayerNorm(inner_dim) - self.self_attn = nn.MultiheadAttention( - embed_dim=inner_dim, num_heads=num_heads, - dropout=attn_drop, bias=attn_bias, batch_first=True) - self.norm3 = nn.LayerNorm(inner_dim) - self.mlp = nn.Sequential( - nn.Linear(inner_dim, int(inner_dim * mlp_ratio)), - nn.GELU(), - nn.Dropout(mlp_drop), - nn.Linear(int(inner_dim * mlp_ratio), inner_dim), - nn.Dropout(mlp_drop), - ) - - def forward(self, x, cond): - # x: [N, L, D] - # cond: [N, L_cond, D_cond] - x = x + self.cross_attn(self.norm1(x), cond, cond)[0] - before_sa = self.norm2(x) - x = x + self.self_attn(before_sa, before_sa, before_sa)[0] - x = x + self.mlp(self.norm3(x)) - return x - - -class TriplaneTransformer(nn.Module): - """ - Transformer with condition that generates a triplane representation. - - Reference: - Timm: https://github.com/huggingface/pytorch-image-models/blob/main/timm/models/vision_transformer.py#L486 - """ - def __init__( - self, - inner_dim: int, - image_feat_dim: int, - triplane_low_res: int, - triplane_high_res: int, - triplane_dim: int, - num_layers: int, - num_heads: int, - eps: float = 1e-6, - ): - super().__init__() - - # attributes - self.triplane_low_res = triplane_low_res - self.triplane_high_res = triplane_high_res - self.triplane_dim = triplane_dim - - # modules - # initialize pos_embed with 1/sqrt(dim) * N(0, 1) - self.pos_embed = nn.Parameter(torch.randn(1, 3*triplane_low_res**2, inner_dim) * (1. / inner_dim) ** 0.5) - self.layers = nn.ModuleList([ - BasicTransformerBlock( - inner_dim=inner_dim, cond_dim=image_feat_dim, num_heads=num_heads, eps=eps) - for _ in range(num_layers) - ]) - self.norm = nn.LayerNorm(inner_dim, eps=eps) - self.deconv = nn.ConvTranspose2d(inner_dim, triplane_dim, kernel_size=2, stride=2, padding=0) - - def forward(self, image_feats): - # image_feats: [N, L_cond, D_cond] - - N = image_feats.shape[0] - H = W = self.triplane_low_res - L = 3 * H * W - - x = self.pos_embed.repeat(N, 1, 1) # [N, L, D] - for layer in self.layers: - x = layer(x, image_feats) - x = self.norm(x) - - # separate each plane and apply deconv - x = x.view(N, 3, H, W, -1) - x = torch.einsum('nihwd->indhw', x) # [3, N, D, H, W] - x = x.contiguous().view(3*N, -1, H, W) # [3*N, D, H, W] - x = self.deconv(x) # [3*N, D', H', W'] - x = x.view(3, N, *x.shape[-3:]) # [3, N, D', H', W'] - x = torch.einsum('indhw->nidhw', x) # [N, 3, D', H', W'] - x = x.contiguous() - - return x diff --git a/instant_mesh/models/encoder/__init__.py b/instant_mesh/models/encoder/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/instant_mesh/models/encoder/dino.py b/instant_mesh/models/encoder/dino.py deleted file mode 100644 index 684444c..0000000 --- a/instant_mesh/models/encoder/dino.py +++ /dev/null @@ -1,550 +0,0 @@ -# coding=utf-8 -# Copyright 2021 Google AI, Ross Wightman, The HuggingFace Inc. team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -""" PyTorch ViT model.""" - - -import collections.abc -import math -from typing import Dict, List, Optional, Set, Tuple, Union - -import torch -from torch import nn - -from transformers.activations import ACT2FN -from transformers.modeling_outputs import ( - BaseModelOutput, - BaseModelOutputWithPooling, -) -from transformers import PreTrainedModel, ViTConfig -from transformers.pytorch_utils import find_pruneable_heads_and_indices, prune_linear_layer - - -class ViTEmbeddings(nn.Module): - """ - Construct the CLS token, position and patch embeddings. Optionally, also the mask token. - """ - - def __init__(self, config: ViTConfig, use_mask_token: bool = False) -> None: - super().__init__() - - self.cls_token = nn.Parameter(torch.randn(1, 1, config.hidden_size)) - self.mask_token = nn.Parameter(torch.zeros(1, 1, config.hidden_size)) if use_mask_token else None - self.patch_embeddings = ViTPatchEmbeddings(config) - num_patches = self.patch_embeddings.num_patches - self.position_embeddings = nn.Parameter(torch.randn(1, num_patches + 1, config.hidden_size)) - self.dropout = nn.Dropout(config.hidden_dropout_prob) - self.config = config - - def interpolate_pos_encoding(self, embeddings: torch.Tensor, height: int, width: int) -> torch.Tensor: - """ - This method allows to interpolate the pre-trained position encodings, to be able to use the model on higher - resolution images. - - Source: - https://github.com/facebookresearch/dino/blob/de9ee3df6cf39fac952ab558447af1fa1365362a/vision_transformer.py#L174 - """ - - num_patches = embeddings.shape[1] - 1 - num_positions = self.position_embeddings.shape[1] - 1 - if num_patches == num_positions and height == width: - return self.position_embeddings - class_pos_embed = self.position_embeddings[:, 0] - patch_pos_embed = self.position_embeddings[:, 1:] - dim = embeddings.shape[-1] - h0 = height // self.config.patch_size - w0 = width // self.config.patch_size - # we add a small number to avoid floating point error in the interpolation - # see discussion at https://github.com/facebookresearch/dino/issues/8 - h0, w0 = h0 + 0.1, w0 + 0.1 - patch_pos_embed = patch_pos_embed.reshape(1, int(math.sqrt(num_positions)), int(math.sqrt(num_positions)), dim) - patch_pos_embed = patch_pos_embed.permute(0, 3, 1, 2) - patch_pos_embed = nn.functional.interpolate( - patch_pos_embed, - scale_factor=(h0 / math.sqrt(num_positions), w0 / math.sqrt(num_positions)), - mode="bicubic", - align_corners=False, - ) - assert int(h0) == patch_pos_embed.shape[-2] and int(w0) == patch_pos_embed.shape[-1] - patch_pos_embed = patch_pos_embed.permute(0, 2, 3, 1).view(1, -1, dim) - return torch.cat((class_pos_embed.unsqueeze(0), patch_pos_embed), dim=1) - - def forward( - self, - pixel_values: torch.Tensor, - bool_masked_pos: Optional[torch.BoolTensor] = None, - interpolate_pos_encoding: bool = False, - ) -> torch.Tensor: - batch_size, num_channels, height, width = pixel_values.shape - embeddings = self.patch_embeddings(pixel_values, interpolate_pos_encoding=interpolate_pos_encoding) - - if bool_masked_pos is not None: - seq_length = embeddings.shape[1] - mask_tokens = self.mask_token.expand(batch_size, seq_length, -1) - # replace the masked visual tokens by mask_tokens - mask = bool_masked_pos.unsqueeze(-1).type_as(mask_tokens) - embeddings = embeddings * (1.0 - mask) + mask_tokens * mask - - # add the [CLS] token to the embedded patch tokens - cls_tokens = self.cls_token.expand(batch_size, -1, -1) - embeddings = torch.cat((cls_tokens, embeddings), dim=1) - - # add positional encoding to each token - if interpolate_pos_encoding: - embeddings = embeddings + self.interpolate_pos_encoding(embeddings, height, width) - else: - embeddings = embeddings + self.position_embeddings - - embeddings = self.dropout(embeddings) - - return embeddings - - -class ViTPatchEmbeddings(nn.Module): - """ - This class turns `pixel_values` of shape `(batch_size, num_channels, height, width)` into the initial - `hidden_states` (patch embeddings) of shape `(batch_size, seq_length, hidden_size)` to be consumed by a - Transformer. - """ - - def __init__(self, config): - super().__init__() - image_size, patch_size = config.image_size, config.patch_size - num_channels, hidden_size = config.num_channels, config.hidden_size - - image_size = image_size if isinstance(image_size, collections.abc.Iterable) else (image_size, image_size) - patch_size = patch_size if isinstance(patch_size, collections.abc.Iterable) else (patch_size, patch_size) - num_patches = (image_size[1] // patch_size[1]) * (image_size[0] // patch_size[0]) - self.image_size = image_size - self.patch_size = patch_size - self.num_channels = num_channels - self.num_patches = num_patches - - self.projection = nn.Conv2d(num_channels, hidden_size, kernel_size=patch_size, stride=patch_size) - - def forward(self, pixel_values: torch.Tensor, interpolate_pos_encoding: bool = False) -> torch.Tensor: - batch_size, num_channels, height, width = pixel_values.shape - if num_channels != self.num_channels: - raise ValueError( - "Make sure that the channel dimension of the pixel values match with the one set in the configuration." - f" Expected {self.num_channels} but got {num_channels}." - ) - if not interpolate_pos_encoding: - if height != self.image_size[0] or width != self.image_size[1]: - raise ValueError( - f"Input image size ({height}*{width}) doesn't match model" - f" ({self.image_size[0]}*{self.image_size[1]})." - ) - embeddings = self.projection(pixel_values).flatten(2).transpose(1, 2) - return embeddings - - -class ViTSelfAttention(nn.Module): - def __init__(self, config: ViTConfig) -> None: - super().__init__() - if config.hidden_size % config.num_attention_heads != 0 and not hasattr(config, "embedding_size"): - raise ValueError( - f"The hidden size {config.hidden_size,} is not a multiple of the number of attention " - f"heads {config.num_attention_heads}." - ) - - self.num_attention_heads = config.num_attention_heads - self.attention_head_size = int(config.hidden_size / config.num_attention_heads) - self.all_head_size = self.num_attention_heads * self.attention_head_size - - self.query = nn.Linear(config.hidden_size, self.all_head_size, bias=config.qkv_bias) - self.key = nn.Linear(config.hidden_size, self.all_head_size, bias=config.qkv_bias) - self.value = nn.Linear(config.hidden_size, self.all_head_size, bias=config.qkv_bias) - - self.dropout = nn.Dropout(config.attention_probs_dropout_prob) - - def transpose_for_scores(self, x: torch.Tensor) -> torch.Tensor: - new_x_shape = x.size()[:-1] + (self.num_attention_heads, self.attention_head_size) - x = x.view(new_x_shape) - return x.permute(0, 2, 1, 3) - - def forward( - self, hidden_states, head_mask: Optional[torch.Tensor] = None, output_attentions: bool = False - ) -> Union[Tuple[torch.Tensor, torch.Tensor], Tuple[torch.Tensor]]: - mixed_query_layer = self.query(hidden_states) - - key_layer = self.transpose_for_scores(self.key(hidden_states)) - value_layer = self.transpose_for_scores(self.value(hidden_states)) - query_layer = self.transpose_for_scores(mixed_query_layer) - - # Take the dot product between "query" and "key" to get the raw attention scores. - attention_scores = torch.matmul(query_layer, key_layer.transpose(-1, -2)) - - attention_scores = attention_scores / math.sqrt(self.attention_head_size) - - # Normalize the attention scores to probabilities. - attention_probs = nn.functional.softmax(attention_scores, dim=-1) - - # This is actually dropping out entire tokens to attend to, which might - # seem a bit unusual, but is taken from the original Transformer paper. - attention_probs = self.dropout(attention_probs) - - # Mask heads if we want to - if head_mask is not None: - attention_probs = attention_probs * head_mask - - context_layer = torch.matmul(attention_probs, value_layer) - - context_layer = context_layer.permute(0, 2, 1, 3).contiguous() - new_context_layer_shape = context_layer.size()[:-2] + (self.all_head_size,) - context_layer = context_layer.view(new_context_layer_shape) - - outputs = (context_layer, attention_probs) if output_attentions else (context_layer,) - - return outputs - - -class ViTSelfOutput(nn.Module): - """ - The residual connection is defined in ViTLayer instead of here (as is the case with other models), due to the - layernorm applied before each block. - """ - - def __init__(self, config: ViTConfig) -> None: - super().__init__() - self.dense = nn.Linear(config.hidden_size, config.hidden_size) - self.dropout = nn.Dropout(config.hidden_dropout_prob) - - def forward(self, hidden_states: torch.Tensor, input_tensor: torch.Tensor) -> torch.Tensor: - hidden_states = self.dense(hidden_states) - hidden_states = self.dropout(hidden_states) - - return hidden_states - - -class ViTAttention(nn.Module): - def __init__(self, config: ViTConfig) -> None: - super().__init__() - self.attention = ViTSelfAttention(config) - self.output = ViTSelfOutput(config) - self.pruned_heads = set() - - def prune_heads(self, heads: Set[int]) -> None: - if len(heads) == 0: - return - heads, index = find_pruneable_heads_and_indices( - heads, self.attention.num_attention_heads, self.attention.attention_head_size, self.pruned_heads - ) - - # Prune linear layers - self.attention.query = prune_linear_layer(self.attention.query, index) - self.attention.key = prune_linear_layer(self.attention.key, index) - self.attention.value = prune_linear_layer(self.attention.value, index) - self.output.dense = prune_linear_layer(self.output.dense, index, dim=1) - - # Update hyper params and store pruned heads - self.attention.num_attention_heads = self.attention.num_attention_heads - len(heads) - self.attention.all_head_size = self.attention.attention_head_size * self.attention.num_attention_heads - self.pruned_heads = self.pruned_heads.union(heads) - - def forward( - self, - hidden_states: torch.Tensor, - head_mask: Optional[torch.Tensor] = None, - output_attentions: bool = False, - ) -> Union[Tuple[torch.Tensor, torch.Tensor], Tuple[torch.Tensor]]: - self_outputs = self.attention(hidden_states, head_mask, output_attentions) - - attention_output = self.output(self_outputs[0], hidden_states) - - outputs = (attention_output,) + self_outputs[1:] # add attentions if we output them - return outputs - - -class ViTIntermediate(nn.Module): - def __init__(self, config: ViTConfig) -> None: - super().__init__() - self.dense = nn.Linear(config.hidden_size, config.intermediate_size) - if isinstance(config.hidden_act, str): - self.intermediate_act_fn = ACT2FN[config.hidden_act] - else: - self.intermediate_act_fn = config.hidden_act - - def forward(self, hidden_states: torch.Tensor) -> torch.Tensor: - hidden_states = self.dense(hidden_states) - hidden_states = self.intermediate_act_fn(hidden_states) - - return hidden_states - - -class ViTOutput(nn.Module): - def __init__(self, config: ViTConfig) -> None: - super().__init__() - self.dense = nn.Linear(config.intermediate_size, config.hidden_size) - self.dropout = nn.Dropout(config.hidden_dropout_prob) - - def forward(self, hidden_states: torch.Tensor, input_tensor: torch.Tensor) -> torch.Tensor: - hidden_states = self.dense(hidden_states) - hidden_states = self.dropout(hidden_states) - - hidden_states = hidden_states + input_tensor - - return hidden_states - - -def modulate(x, shift, scale): - return x * (1 + scale.unsqueeze(1)) + shift.unsqueeze(1) - - -class ViTLayer(nn.Module): - """This corresponds to the Block class in the timm implementation.""" - - def __init__(self, config: ViTConfig) -> None: - super().__init__() - self.chunk_size_feed_forward = config.chunk_size_feed_forward - self.seq_len_dim = 1 - self.attention = ViTAttention(config) - self.intermediate = ViTIntermediate(config) - self.output = ViTOutput(config) - self.layernorm_before = nn.LayerNorm(config.hidden_size, eps=config.layer_norm_eps) - self.layernorm_after = nn.LayerNorm(config.hidden_size, eps=config.layer_norm_eps) - - self.adaLN_modulation = nn.Sequential( - nn.SiLU(), - nn.Linear(config.hidden_size, 4 * config.hidden_size, bias=True) - ) - nn.init.constant_(self.adaLN_modulation[-1].weight, 0) - nn.init.constant_(self.adaLN_modulation[-1].bias, 0) - - def forward( - self, - hidden_states: torch.Tensor, - adaln_input: torch.Tensor = None, - head_mask: Optional[torch.Tensor] = None, - output_attentions: bool = False, - ) -> Union[Tuple[torch.Tensor, torch.Tensor], Tuple[torch.Tensor]]: - shift_msa, scale_msa, shift_mlp, scale_mlp = self.adaLN_modulation(adaln_input).chunk(4, dim=1) - - self_attention_outputs = self.attention( - modulate(self.layernorm_before(hidden_states), shift_msa, scale_msa), # in ViT, layernorm is applied before self-attention - head_mask, - output_attentions=output_attentions, - ) - attention_output = self_attention_outputs[0] - outputs = self_attention_outputs[1:] # add self attentions if we output attention weights - - # first residual connection - hidden_states = attention_output + hidden_states - - # in ViT, layernorm is also applied after self-attention - layer_output = modulate(self.layernorm_after(hidden_states), shift_mlp, scale_mlp) - layer_output = self.intermediate(layer_output) - - # second residual connection is done here - layer_output = self.output(layer_output, hidden_states) - - outputs = (layer_output,) + outputs - - return outputs - - -class ViTEncoder(nn.Module): - def __init__(self, config: ViTConfig) -> None: - super().__init__() - self.config = config - self.layer = nn.ModuleList([ViTLayer(config) for _ in range(config.num_hidden_layers)]) - self.gradient_checkpointing = False - - def forward( - self, - hidden_states: torch.Tensor, - adaln_input: torch.Tensor = None, - head_mask: Optional[torch.Tensor] = None, - output_attentions: bool = False, - output_hidden_states: bool = False, - return_dict: bool = True, - ) -> Union[tuple, BaseModelOutput]: - all_hidden_states = () if output_hidden_states else None - all_self_attentions = () if output_attentions else None - - for i, layer_module in enumerate(self.layer): - if output_hidden_states: - all_hidden_states = all_hidden_states + (hidden_states,) - - layer_head_mask = head_mask[i] if head_mask is not None else None - - if self.gradient_checkpointing and self.training: - layer_outputs = self._gradient_checkpointing_func( - layer_module.__call__, - hidden_states, - adaln_input, - layer_head_mask, - output_attentions, - ) - else: - layer_outputs = layer_module(hidden_states, adaln_input, layer_head_mask, output_attentions) - - hidden_states = layer_outputs[0] - - if output_attentions: - all_self_attentions = all_self_attentions + (layer_outputs[1],) - - if output_hidden_states: - all_hidden_states = all_hidden_states + (hidden_states,) - - if not return_dict: - return tuple(v for v in [hidden_states, all_hidden_states, all_self_attentions] if v is not None) - return BaseModelOutput( - last_hidden_state=hidden_states, - hidden_states=all_hidden_states, - attentions=all_self_attentions, - ) - - -class ViTPreTrainedModel(PreTrainedModel): - """ - An abstract class to handle weights initialization and a simple interface for downloading and loading pretrained - models. - """ - - config_class = ViTConfig - base_model_prefix = "vit" - main_input_name = "pixel_values" - supports_gradient_checkpointing = True - _no_split_modules = ["ViTEmbeddings", "ViTLayer"] - - def _init_weights(self, module: Union[nn.Linear, nn.Conv2d, nn.LayerNorm]) -> None: - """Initialize the weights""" - if isinstance(module, (nn.Linear, nn.Conv2d)): - # Upcast the input in `fp32` and cast it back to desired `dtype` to avoid - # `trunc_normal_cpu` not implemented in `half` issues - module.weight.data = nn.init.trunc_normal_( - module.weight.data.to(torch.float32), mean=0.0, std=self.config.initializer_range - ).to(module.weight.dtype) - if module.bias is not None: - module.bias.data.zero_() - elif isinstance(module, nn.LayerNorm): - module.bias.data.zero_() - module.weight.data.fill_(1.0) - elif isinstance(module, ViTEmbeddings): - module.position_embeddings.data = nn.init.trunc_normal_( - module.position_embeddings.data.to(torch.float32), - mean=0.0, - std=self.config.initializer_range, - ).to(module.position_embeddings.dtype) - - module.cls_token.data = nn.init.trunc_normal_( - module.cls_token.data.to(torch.float32), - mean=0.0, - std=self.config.initializer_range, - ).to(module.cls_token.dtype) - - -class ViTModel(ViTPreTrainedModel): - def __init__(self, config: ViTConfig, add_pooling_layer: bool = True, use_mask_token: bool = False): - super().__init__(config) - self.config = config - - self.embeddings = ViTEmbeddings(config, use_mask_token=use_mask_token) - self.encoder = ViTEncoder(config) - - self.layernorm = nn.LayerNorm(config.hidden_size, eps=config.layer_norm_eps) - self.pooler = ViTPooler(config) if add_pooling_layer else None - - # Initialize weights and apply final processing - self.post_init() - - def get_input_embeddings(self) -> ViTPatchEmbeddings: - return self.embeddings.patch_embeddings - - def _prune_heads(self, heads_to_prune: Dict[int, List[int]]) -> None: - """ - Prunes heads of the model. heads_to_prune: dict of {layer_num: list of heads to prune in this layer} See base - class PreTrainedModel - """ - for layer, heads in heads_to_prune.items(): - self.encoder.layer[layer].attention.prune_heads(heads) - - def forward( - self, - pixel_values: Optional[torch.Tensor] = None, - adaln_input: Optional[torch.Tensor] = None, - bool_masked_pos: Optional[torch.BoolTensor] = None, - head_mask: Optional[torch.Tensor] = None, - output_attentions: Optional[bool] = None, - output_hidden_states: Optional[bool] = None, - interpolate_pos_encoding: Optional[bool] = None, - return_dict: Optional[bool] = None, - ) -> Union[Tuple, BaseModelOutputWithPooling]: - r""" - bool_masked_pos (`torch.BoolTensor` of shape `(batch_size, num_patches)`, *optional*): - Boolean masked positions. Indicates which patches are masked (1) and which aren't (0). - """ - output_attentions = output_attentions if output_attentions is not None else self.config.output_attentions - output_hidden_states = ( - output_hidden_states if output_hidden_states is not None else self.config.output_hidden_states - ) - return_dict = return_dict if return_dict is not None else self.config.use_return_dict - - if pixel_values is None: - raise ValueError("You have to specify pixel_values") - - # Prepare head mask if needed - # 1.0 in head_mask indicate we keep the head - # attention_probs has shape bsz x n_heads x N x N - # input head_mask has shape [num_heads] or [num_hidden_layers x num_heads] - # and head_mask is converted to shape [num_hidden_layers x batch x num_heads x seq_length x seq_length] - head_mask = self.get_head_mask(head_mask, self.config.num_hidden_layers) - - # TODO: maybe have a cleaner way to cast the input (from `ImageProcessor` side?) - expected_dtype = self.embeddings.patch_embeddings.projection.weight.dtype - if pixel_values.dtype != expected_dtype: - pixel_values = pixel_values.to(expected_dtype) - - embedding_output = self.embeddings( - pixel_values, bool_masked_pos=bool_masked_pos, interpolate_pos_encoding=interpolate_pos_encoding - ) - - encoder_outputs = self.encoder( - embedding_output, - adaln_input=adaln_input, - head_mask=head_mask, - output_attentions=output_attentions, - output_hidden_states=output_hidden_states, - return_dict=return_dict, - ) - sequence_output = encoder_outputs[0] - sequence_output = self.layernorm(sequence_output) - pooled_output = self.pooler(sequence_output) if self.pooler is not None else None - - if not return_dict: - head_outputs = (sequence_output, pooled_output) if pooled_output is not None else (sequence_output,) - return head_outputs + encoder_outputs[1:] - - return BaseModelOutputWithPooling( - last_hidden_state=sequence_output, - pooler_output=pooled_output, - hidden_states=encoder_outputs.hidden_states, - attentions=encoder_outputs.attentions, - ) - - -class ViTPooler(nn.Module): - def __init__(self, config: ViTConfig): - super().__init__() - self.dense = nn.Linear(config.hidden_size, config.hidden_size) - self.activation = nn.Tanh() - - def forward(self, hidden_states): - # We "pool" the model by simply taking the hidden state corresponding - # to the first token. - first_token_tensor = hidden_states[:, 0] - pooled_output = self.dense(first_token_tensor) - pooled_output = self.activation(pooled_output) - return pooled_output \ No newline at end of file diff --git a/instant_mesh/models/encoder/dino_wrapper.py b/instant_mesh/models/encoder/dino_wrapper.py deleted file mode 100644 index e84fd51..0000000 --- a/instant_mesh/models/encoder/dino_wrapper.py +++ /dev/null @@ -1,80 +0,0 @@ -# Copyright (c) 2023, Zexin He -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - - -import torch.nn as nn -from transformers import ViTImageProcessor -from einops import rearrange, repeat -from .dino import ViTModel - - -class DinoWrapper(nn.Module): - """ - Dino v1 wrapper using huggingface transformer implementation. - """ - def __init__(self, model_name: str, freeze: bool = True): - super().__init__() - self.model, self.processor = self._build_dino(model_name) - self.camera_embedder = nn.Sequential( - nn.Linear(16, self.model.config.hidden_size, bias=True), - nn.SiLU(), - nn.Linear(self.model.config.hidden_size, self.model.config.hidden_size, bias=True) - ) - if freeze: - self._freeze() - - def forward(self, image, camera): - # image: [B, N, C, H, W] - # camera: [B, N, D] - # RGB image with [0,1] scale and properly sized - if image.ndim == 5: - image = rearrange(image, 'b n c h w -> (b n) c h w') - dtype = image.dtype - inputs = self.processor( - images=image.float(), - return_tensors="pt", - do_rescale=False, - do_resize=False, - ).to(self.model.device).to(dtype) - # embed camera - N = camera.shape[1] - camera_embeddings = self.camera_embedder(camera) - camera_embeddings = rearrange(camera_embeddings, 'b n d -> (b n) d') - embeddings = camera_embeddings - # This resampling of positional embedding uses bicubic interpolation - outputs = self.model(**inputs, adaln_input=embeddings, interpolate_pos_encoding=True) - last_hidden_states = outputs.last_hidden_state - return last_hidden_states - - def _freeze(self): - print(f"======== Freezing DinoWrapper ========") - self.model.eval() - for name, param in self.model.named_parameters(): - param.requires_grad = False - - @staticmethod - def _build_dino(model_name: str, proxy_error_retries: int = 3, proxy_error_cooldown: int = 5): - import requests - try: - model = ViTModel.from_pretrained(model_name, add_pooling_layer=False) - processor = ViTImageProcessor.from_pretrained(model_name) - return model, processor - except requests.exceptions.ProxyError as err: - if proxy_error_retries > 0: - print(f"Huggingface ProxyError: Retrying in {proxy_error_cooldown} seconds...") - import time - time.sleep(proxy_error_cooldown) - return DinoWrapper._build_dino(model_name, proxy_error_retries - 1, proxy_error_cooldown) - else: - raise err diff --git a/instant_mesh/models/geometry/__init__.py b/instant_mesh/models/geometry/__init__.py deleted file mode 100644 index 89e9a6c..0000000 --- a/instant_mesh/models/geometry/__init__.py +++ /dev/null @@ -1,7 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. diff --git a/instant_mesh/models/geometry/camera/__init__.py b/instant_mesh/models/geometry/camera/__init__.py deleted file mode 100644 index c5c7082..0000000 --- a/instant_mesh/models/geometry/camera/__init__.py +++ /dev/null @@ -1,16 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch -from torch import nn - - -class Camera(nn.Module): - def __init__(self): - super(Camera, self).__init__() - pass diff --git a/instant_mesh/models/geometry/camera/perspective_camera.py b/instant_mesh/models/geometry/camera/perspective_camera.py deleted file mode 100644 index 7dcab0d..0000000 --- a/instant_mesh/models/geometry/camera/perspective_camera.py +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch -from . import Camera -import numpy as np - - -def projection(x=0.1, n=1.0, f=50.0, near_plane=None): - if near_plane is None: - near_plane = n - return np.array( - [[n / x, 0, 0, 0], - [0, n / -x, 0, 0], - [0, 0, -(f + near_plane) / (f - near_plane), -(2 * f * near_plane) / (f - near_plane)], - [0, 0, -1, 0]]).astype(np.float32) - - -class PerspectiveCamera(Camera): - def __init__(self, fovy=49.0, device='cuda'): - super(PerspectiveCamera, self).__init__() - self.device = device - focal = np.tan(fovy / 180.0 * np.pi * 0.5) - self.proj_mtx = torch.from_numpy(projection(x=focal, f=1000.0, n=1.0, near_plane=0.1)).to(self.device).unsqueeze(dim=0) - - def project(self, points_bxnx4): - out = torch.matmul( - points_bxnx4, - torch.transpose(self.proj_mtx, 1, 2)) - return out diff --git a/instant_mesh/models/geometry/render/__init__.py b/instant_mesh/models/geometry/render/__init__.py deleted file mode 100644 index 483cfab..0000000 --- a/instant_mesh/models/geometry/render/__init__.py +++ /dev/null @@ -1,8 +0,0 @@ -import torch - -class Renderer(): - def __init__(self): - pass - - def forward(self): - pass \ No newline at end of file diff --git a/instant_mesh/models/geometry/render/neural_render.py b/instant_mesh/models/geometry/render/neural_render.py deleted file mode 100644 index 4734644..0000000 --- a/instant_mesh/models/geometry/render/neural_render.py +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch -import torch.nn.functional as F -import nvdiffrast.torch as dr -from . import Renderer - -_FG_LUT = None - - -def interpolate(attr, rast, attr_idx, rast_db=None): - return dr.interpolate( - attr.contiguous(), rast, attr_idx, rast_db=rast_db, - diff_attrs=None if rast_db is None else 'all') - - -def xfm_points(points, matrix, use_python=True): - '''Transform points. - Args: - points: Tensor containing 3D points with shape [minibatch_size, num_vertices, 3] or [1, num_vertices, 3] - matrix: A 4x4 transform matrix with shape [minibatch_size, 4, 4] - use_python: Use PyTorch's torch.matmul (for validation) - Returns: - Transformed points in homogeneous 4D with shape [minibatch_size, num_vertices, 4]. - ''' - out = torch.matmul(torch.nn.functional.pad(points, pad=(0, 1), mode='constant', value=1.0), torch.transpose(matrix, 1, 2)) - if torch.is_anomaly_enabled(): - assert torch.all(torch.isfinite(out)), "Output of xfm_points contains inf or NaN" - return out - - -def dot(x, y): - return torch.sum(x * y, -1, keepdim=True) - - -def compute_vertex_normal(v_pos, t_pos_idx): - i0 = t_pos_idx[:, 0] - i1 = t_pos_idx[:, 1] - i2 = t_pos_idx[:, 2] - - v0 = v_pos[i0, :] - v1 = v_pos[i1, :] - v2 = v_pos[i2, :] - - face_normals = torch.cross(v1 - v0, v2 - v0) - - # Splat face normals to vertices - v_nrm = torch.zeros_like(v_pos) - v_nrm.scatter_add_(0, i0[:, None].repeat(1, 3), face_normals) - v_nrm.scatter_add_(0, i1[:, None].repeat(1, 3), face_normals) - v_nrm.scatter_add_(0, i2[:, None].repeat(1, 3), face_normals) - - # Normalize, replace zero (degenerated) normals with some default value - v_nrm = torch.where( - dot(v_nrm, v_nrm) > 1e-20, v_nrm, torch.as_tensor([0.0, 0.0, 1.0]).to(v_nrm) - ) - v_nrm = F.normalize(v_nrm, dim=1) - assert torch.all(torch.isfinite(v_nrm)) - - return v_nrm - - -class NeuralRender(Renderer): - def __init__(self, device='cuda', camera_model=None): - super(NeuralRender, self).__init__() - self.device = device - self.ctx = dr.RasterizeCudaContext(device=device) - self.projection_mtx = None - self.camera = camera_model - - def render_mesh( - self, - mesh_v_pos_bxnx3, - mesh_t_pos_idx_fx3, - camera_mv_bx4x4, - mesh_v_feat_bxnxd, - resolution=256, - spp=1, - device='cuda', - hierarchical_mask=False - ): - assert not hierarchical_mask - - mtx_in = torch.tensor(camera_mv_bx4x4, dtype=torch.float32, device=device) if not torch.is_tensor(camera_mv_bx4x4) else camera_mv_bx4x4 - v_pos = xfm_points(mesh_v_pos_bxnx3, mtx_in) # Rotate it to camera coordinates - v_pos_clip = self.camera.project(v_pos) # Projection in the camera - - v_nrm = compute_vertex_normal(mesh_v_pos_bxnx3[0], mesh_t_pos_idx_fx3.long()) # vertex normals in world coordinates - - # Render the image, - # Here we only return the feature (3D location) at each pixel, which will be used as the input for neural render - num_layers = 1 - mask_pyramid = None - assert mesh_t_pos_idx_fx3.shape[0] > 0 # Make sure we have shapes - mesh_v_feat_bxnxd = torch.cat([mesh_v_feat_bxnxd.repeat(v_pos.shape[0], 1, 1), v_pos], dim=-1) # Concatenate the pos - - with dr.DepthPeeler(self.ctx, v_pos_clip, mesh_t_pos_idx_fx3, [resolution * spp, resolution * spp]) as peeler: - for _ in range(num_layers): - rast, db = peeler.rasterize_next_layer() - gb_feat, _ = interpolate(mesh_v_feat_bxnxd, rast, mesh_t_pos_idx_fx3) - - hard_mask = torch.clamp(rast[..., -1:], 0, 1) - antialias_mask = dr.antialias( - hard_mask.clone().contiguous(), rast, v_pos_clip, - mesh_t_pos_idx_fx3) - - depth = gb_feat[..., -2:-1] - ori_mesh_feature = gb_feat[..., :-4] - - normal, _ = interpolate(v_nrm[None, ...], rast, mesh_t_pos_idx_fx3) - normal = dr.antialias(normal.clone().contiguous(), rast, v_pos_clip, mesh_t_pos_idx_fx3) - normal = F.normalize(normal, dim=-1) - normal = torch.lerp(torch.zeros_like(normal), (normal + 1.0) / 2.0, hard_mask.float()) # black background - - return ori_mesh_feature, antialias_mask, hard_mask, rast, v_pos_clip, mask_pyramid, depth, normal diff --git a/instant_mesh/models/geometry/rep_3d/__init__.py b/instant_mesh/models/geometry/rep_3d/__init__.py deleted file mode 100644 index a3d5628..0000000 --- a/instant_mesh/models/geometry/rep_3d/__init__.py +++ /dev/null @@ -1,18 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch -import numpy as np - - -class Geometry(): - def __init__(self): - pass - - def forward(self): - pass diff --git a/instant_mesh/models/geometry/rep_3d/dmtet.py b/instant_mesh/models/geometry/rep_3d/dmtet.py deleted file mode 100644 index b6a7093..0000000 --- a/instant_mesh/models/geometry/rep_3d/dmtet.py +++ /dev/null @@ -1,504 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch -import numpy as np -import os -from . import Geometry -from .dmtet_utils import get_center_boundary_index -import torch.nn.functional as F - - -############################################################################### -# DMTet utility functions -############################################################################### -def create_mt_variable(device): - triangle_table = torch.tensor( - [ - [-1, -1, -1, -1, -1, -1], - [1, 0, 2, -1, -1, -1], - [4, 0, 3, -1, -1, -1], - [1, 4, 2, 1, 3, 4], - [3, 1, 5, -1, -1, -1], - [2, 3, 0, 2, 5, 3], - [1, 4, 0, 1, 5, 4], - [4, 2, 5, -1, -1, -1], - [4, 5, 2, -1, -1, -1], - [4, 1, 0, 4, 5, 1], - [3, 2, 0, 3, 5, 2], - [1, 3, 5, -1, -1, -1], - [4, 1, 2, 4, 3, 1], - [3, 0, 4, -1, -1, -1], - [2, 0, 1, -1, -1, -1], - [-1, -1, -1, -1, -1, -1] - ], dtype=torch.long, device=device) - - num_triangles_table = torch.tensor([0, 1, 1, 2, 1, 2, 2, 1, 1, 2, 2, 1, 2, 1, 1, 0], dtype=torch.long, device=device) - base_tet_edges = torch.tensor([0, 1, 0, 2, 0, 3, 1, 2, 1, 3, 2, 3], dtype=torch.long, device=device) - v_id = torch.pow(2, torch.arange(4, dtype=torch.long, device=device)) - return triangle_table, num_triangles_table, base_tet_edges, v_id - - -def sort_edges(edges_ex2): - with torch.no_grad(): - order = (edges_ex2[:, 0] > edges_ex2[:, 1]).long() - order = order.unsqueeze(dim=1) - a = torch.gather(input=edges_ex2, index=order, dim=1) - b = torch.gather(input=edges_ex2, index=1 - order, dim=1) - return torch.stack([a, b], -1) - - -############################################################################### -# marching tetrahedrons (differentiable) -############################################################################### - -def marching_tets(pos_nx3, sdf_n, tet_fx4, triangle_table, num_triangles_table, base_tet_edges, v_id): - with torch.no_grad(): - occ_n = sdf_n > 0 - occ_fx4 = occ_n[tet_fx4.reshape(-1)].reshape(-1, 4) - occ_sum = torch.sum(occ_fx4, -1) - valid_tets = (occ_sum > 0) & (occ_sum < 4) - occ_sum = occ_sum[valid_tets] - - # find all vertices - all_edges = tet_fx4[valid_tets][:, base_tet_edges].reshape(-1, 2) - all_edges = sort_edges(all_edges) - unique_edges, idx_map = torch.unique(all_edges, dim=0, return_inverse=True) - - unique_edges = unique_edges.long() - mask_edges = occ_n[unique_edges.reshape(-1)].reshape(-1, 2).sum(-1) == 1 - mapping = torch.ones((unique_edges.shape[0]), dtype=torch.long, device=sdf_n.device) * -1 - mapping[mask_edges] = torch.arange(mask_edges.sum(), dtype=torch.long, device=sdf_n.device) - idx_map = mapping[idx_map] # map edges to verts - - interp_v = unique_edges[mask_edges] # .long() - edges_to_interp = pos_nx3[interp_v.reshape(-1)].reshape(-1, 2, 3) - edges_to_interp_sdf = sdf_n[interp_v.reshape(-1)].reshape(-1, 2, 1) - edges_to_interp_sdf[:, -1] *= -1 - - denominator = edges_to_interp_sdf.sum(1, keepdim=True) - - edges_to_interp_sdf = torch.flip(edges_to_interp_sdf, [1]) / denominator - verts = (edges_to_interp * edges_to_interp_sdf).sum(1) - - idx_map = idx_map.reshape(-1, 6) - - tetindex = (occ_fx4[valid_tets] * v_id.unsqueeze(0)).sum(-1) - num_triangles = num_triangles_table[tetindex] - - # Generate triangle indices - faces = torch.cat( - ( - torch.gather( - input=idx_map[num_triangles == 1], dim=1, - index=triangle_table[tetindex[num_triangles == 1]][:, :3]).reshape(-1, 3), - torch.gather( - input=idx_map[num_triangles == 2], dim=1, - index=triangle_table[tetindex[num_triangles == 2]][:, :6]).reshape(-1, 3), - ), dim=0) - return verts, faces - - -def create_tetmesh_variables(device='cuda'): - tet_table = torch.tensor( - [[-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], - [0, 4, 5, 6, -1, -1, -1, -1, -1, -1, -1, -1], - [1, 4, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1], - [1, 0, 8, 7, 0, 5, 8, 7, 0, 5, 6, 8], - [2, 5, 7, 9, -1, -1, -1, -1, -1, -1, -1, -1], - [2, 0, 9, 7, 0, 4, 9, 7, 0, 4, 6, 9], - [2, 1, 9, 5, 1, 4, 9, 5, 1, 4, 8, 9], - [6, 0, 1, 2, 6, 1, 2, 8, 6, 8, 2, 9], - [3, 6, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1], - [3, 0, 9, 8, 0, 4, 9, 8, 0, 4, 5, 9], - [3, 1, 9, 6, 1, 4, 9, 6, 1, 4, 7, 9], - [5, 0, 1, 3, 5, 1, 3, 7, 5, 7, 3, 9], - [3, 2, 8, 6, 2, 5, 8, 6, 2, 5, 7, 8], - [4, 0, 2, 3, 4, 2, 3, 7, 4, 7, 3, 8], - [4, 1, 2, 3, 4, 2, 3, 5, 4, 5, 3, 6], - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]], dtype=torch.long, device=device) - num_tets_table = torch.tensor([0, 1, 1, 3, 1, 3, 3, 3, 1, 3, 3, 3, 3, 3, 3, 0], dtype=torch.long, device=device) - return tet_table, num_tets_table - - -def marching_tets_tetmesh( - pos_nx3, sdf_n, tet_fx4, triangle_table, num_triangles_table, base_tet_edges, v_id, - return_tet_mesh=False, ori_v=None, num_tets_table=None, tet_table=None): - with torch.no_grad(): - occ_n = sdf_n > 0 - occ_fx4 = occ_n[tet_fx4.reshape(-1)].reshape(-1, 4) - occ_sum = torch.sum(occ_fx4, -1) - valid_tets = (occ_sum > 0) & (occ_sum < 4) - occ_sum = occ_sum[valid_tets] - - # find all vertices - all_edges = tet_fx4[valid_tets][:, base_tet_edges].reshape(-1, 2) - all_edges = sort_edges(all_edges) - unique_edges, idx_map = torch.unique(all_edges, dim=0, return_inverse=True) - - unique_edges = unique_edges.long() - mask_edges = occ_n[unique_edges.reshape(-1)].reshape(-1, 2).sum(-1) == 1 - mapping = torch.ones((unique_edges.shape[0]), dtype=torch.long, device=sdf_n.device) * -1 - mapping[mask_edges] = torch.arange(mask_edges.sum(), dtype=torch.long, device=sdf_n.device) - idx_map = mapping[idx_map] # map edges to verts - - interp_v = unique_edges[mask_edges] # .long() - edges_to_interp = pos_nx3[interp_v.reshape(-1)].reshape(-1, 2, 3) - edges_to_interp_sdf = sdf_n[interp_v.reshape(-1)].reshape(-1, 2, 1) - edges_to_interp_sdf[:, -1] *= -1 - - denominator = edges_to_interp_sdf.sum(1, keepdim=True) - - edges_to_interp_sdf = torch.flip(edges_to_interp_sdf, [1]) / denominator - verts = (edges_to_interp * edges_to_interp_sdf).sum(1) - - idx_map = idx_map.reshape(-1, 6) - - tetindex = (occ_fx4[valid_tets] * v_id.unsqueeze(0)).sum(-1) - num_triangles = num_triangles_table[tetindex] - - # Generate triangle indices - faces = torch.cat( - ( - torch.gather( - input=idx_map[num_triangles == 1], dim=1, - index=triangle_table[tetindex[num_triangles == 1]][:, :3]).reshape(-1, 3), - torch.gather( - input=idx_map[num_triangles == 2], dim=1, - index=triangle_table[tetindex[num_triangles == 2]][:, :6]).reshape(-1, 3), - ), dim=0) - if not return_tet_mesh: - return verts, faces - occupied_verts = ori_v[occ_n] - mapping = torch.ones((pos_nx3.shape[0]), dtype=torch.long, device="cuda") * -1 - mapping[occ_n] = torch.arange(occupied_verts.shape[0], device="cuda") - tet_fx4 = mapping[tet_fx4.reshape(-1)].reshape((-1, 4)) - - idx_map = torch.cat([tet_fx4[valid_tets] + verts.shape[0], idx_map], -1) # t x 10 - tet_verts = torch.cat([verts, occupied_verts], 0) - num_tets = num_tets_table[tetindex] - - tets = torch.cat( - ( - torch.gather(input=idx_map[num_tets == 1], dim=1, index=tet_table[tetindex[num_tets == 1]][:, :4]).reshape( - -1, - 4), - torch.gather(input=idx_map[num_tets == 3], dim=1, index=tet_table[tetindex[num_tets == 3]][:, :12]).reshape( - -1, - 4), - ), dim=0) - # add fully occupied tets - fully_occupied = occ_fx4.sum(-1) == 4 - tet_fully_occupied = tet_fx4[fully_occupied] + verts.shape[0] - tets = torch.cat([tets, tet_fully_occupied]) - - return verts, faces, tet_verts, tets - - -############################################################################### -# Compact tet grid -############################################################################### - -def compact_tets(pos_nx3, sdf_n, tet_fx4): - with torch.no_grad(): - # Find surface tets - occ_n = sdf_n > 0 - occ_fx4 = occ_n[tet_fx4.reshape(-1)].reshape(-1, 4) - occ_sum = torch.sum(occ_fx4, -1) - valid_tets = (occ_sum > 0) & (occ_sum < 4) # one value per tet, these are the surface tets - - valid_vtx = tet_fx4[valid_tets].reshape(-1) - unique_vtx, idx_map = torch.unique(valid_vtx, dim=0, return_inverse=True) - new_pos = pos_nx3[unique_vtx] - new_sdf = sdf_n[unique_vtx] - new_tets = idx_map.reshape(-1, 4) - return new_pos, new_sdf, new_tets - - -############################################################################### -# Subdivide volume -############################################################################### - -def batch_subdivide_volume(tet_pos_bxnx3, tet_bxfx4, grid_sdf): - device = tet_pos_bxnx3.device - # get new verts - tet_fx4 = tet_bxfx4[0] - edges = [0, 1, 0, 2, 0, 3, 1, 2, 1, 3, 2, 3] - all_edges = tet_fx4[:, edges].reshape(-1, 2) - all_edges = sort_edges(all_edges) - unique_edges, idx_map = torch.unique(all_edges, dim=0, return_inverse=True) - idx_map = idx_map + tet_pos_bxnx3.shape[1] - all_values = torch.cat([tet_pos_bxnx3, grid_sdf], -1) - mid_points_pos = all_values[:, unique_edges.reshape(-1)].reshape( - all_values.shape[0], -1, 2, - all_values.shape[-1]).mean(2) - new_v = torch.cat([all_values, mid_points_pos], 1) - new_v, new_sdf = new_v[..., :3], new_v[..., 3] - - # get new tets - - idx_a, idx_b, idx_c, idx_d = tet_fx4[:, 0], tet_fx4[:, 1], tet_fx4[:, 2], tet_fx4[:, 3] - idx_ab = idx_map[0::6] - idx_ac = idx_map[1::6] - idx_ad = idx_map[2::6] - idx_bc = idx_map[3::6] - idx_bd = idx_map[4::6] - idx_cd = idx_map[5::6] - - tet_1 = torch.stack([idx_a, idx_ab, idx_ac, idx_ad], dim=1) - tet_2 = torch.stack([idx_b, idx_bc, idx_ab, idx_bd], dim=1) - tet_3 = torch.stack([idx_c, idx_ac, idx_bc, idx_cd], dim=1) - tet_4 = torch.stack([idx_d, idx_ad, idx_cd, idx_bd], dim=1) - tet_5 = torch.stack([idx_ab, idx_ac, idx_ad, idx_bd], dim=1) - tet_6 = torch.stack([idx_ab, idx_ac, idx_bd, idx_bc], dim=1) - tet_7 = torch.stack([idx_cd, idx_ac, idx_bd, idx_ad], dim=1) - tet_8 = torch.stack([idx_cd, idx_ac, idx_bc, idx_bd], dim=1) - - tet_np = torch.cat([tet_1, tet_2, tet_3, tet_4, tet_5, tet_6, tet_7, tet_8], dim=0) - tet_np = tet_np.reshape(1, -1, 4).expand(tet_pos_bxnx3.shape[0], -1, -1) - tet = tet_np.long().to(device) - - return new_v, tet, new_sdf - - -############################################################################### -# Adjacency -############################################################################### -def tet_to_tet_adj_sparse(tet_tx4): - # include self connection!!!!!!!!!!!!!!!!!!! - with torch.no_grad(): - t = tet_tx4.shape[0] - device = tet_tx4.device - idx_array = torch.LongTensor( - [0, 1, 2, - 1, 0, 3, - 2, 3, 0, - 3, 2, 1]).to(device).reshape(4, 3).unsqueeze(0).expand(t, -1, -1) # (t, 4, 3) - - # get all faces - all_faces = torch.gather(input=tet_tx4.unsqueeze(1).expand(-1, 4, -1), index=idx_array, dim=-1).reshape( - -1, - 3) # (tx4, 3) - all_faces_tet_idx = torch.arange(t, device=device).unsqueeze(-1).expand(-1, 4).reshape(-1) - # sort and group - all_faces_sorted, _ = torch.sort(all_faces, dim=1) - - all_faces_unique, inverse_indices, counts = torch.unique( - all_faces_sorted, dim=0, return_counts=True, - return_inverse=True) - tet_face_fx3 = all_faces_unique[counts == 2] - counts = counts[inverse_indices] # tx4 - valid = (counts == 2) - - group = inverse_indices[valid] - # print (inverse_indices.shape, group.shape, all_faces_tet_idx.shape) - _, indices = torch.sort(group) - all_faces_tet_idx_grouped = all_faces_tet_idx[valid][indices] - tet_face_tetidx_fx2 = torch.stack([all_faces_tet_idx_grouped[::2], all_faces_tet_idx_grouped[1::2]], dim=-1) - - tet_adj_idx = torch.cat([tet_face_tetidx_fx2, torch.flip(tet_face_tetidx_fx2, [1])]) - adj_self = torch.arange(t, device=tet_tx4.device) - adj_self = torch.stack([adj_self, adj_self], -1) - tet_adj_idx = torch.cat([tet_adj_idx, adj_self]) - - tet_adj_idx = torch.unique(tet_adj_idx, dim=0) - values = torch.ones( - tet_adj_idx.shape[0], device=tet_tx4.device).float() - adj_sparse = torch.sparse.FloatTensor( - tet_adj_idx.t(), values, torch.Size([t, t])) - - # normalization - neighbor_num = 1.0 / torch.sparse.sum( - adj_sparse, dim=1).to_dense() - values = torch.index_select(neighbor_num, 0, tet_adj_idx[:, 0]) - adj_sparse = torch.sparse.FloatTensor( - tet_adj_idx.t(), values, torch.Size([t, t])) - return adj_sparse - - -############################################################################### -# Compact grid -############################################################################### - -def get_tet_bxfx4x3(bxnxz, bxfx4): - n_batch, z = bxnxz.shape[0], bxnxz.shape[2] - gather_input = bxnxz.unsqueeze(2).expand( - n_batch, bxnxz.shape[1], 4, z) - gather_index = bxfx4.unsqueeze(-1).expand( - n_batch, bxfx4.shape[1], 4, z).long() - tet_bxfx4xz = torch.gather( - input=gather_input, dim=1, index=gather_index) - - return tet_bxfx4xz - - -def shrink_grid(tet_pos_bxnx3, tet_bxfx4, grid_sdf): - with torch.no_grad(): - assert tet_pos_bxnx3.shape[0] == 1 - - occ = grid_sdf[0] > 0 - occ_sum = get_tet_bxfx4x3(occ.unsqueeze(0).unsqueeze(-1), tet_bxfx4).reshape(-1, 4).sum(-1) - mask = (occ_sum > 0) & (occ_sum < 4) - - # build connectivity graph - adj_matrix = tet_to_tet_adj_sparse(tet_bxfx4[0]) - mask = mask.float().unsqueeze(-1) - - # Include a one ring of neighbors - for i in range(1): - mask = torch.sparse.mm(adj_matrix, mask) - mask = mask.squeeze(-1) > 0 - - mapping = torch.zeros((tet_pos_bxnx3.shape[1]), device=tet_pos_bxnx3.device, dtype=torch.long) - new_tet_bxfx4 = tet_bxfx4[:, mask].long() - selected_verts_idx = torch.unique(new_tet_bxfx4) - new_tet_pos_bxnx3 = tet_pos_bxnx3[:, selected_verts_idx] - mapping[selected_verts_idx] = torch.arange(selected_verts_idx.shape[0], device=tet_pos_bxnx3.device) - new_tet_bxfx4 = mapping[new_tet_bxfx4.reshape(-1)].reshape(new_tet_bxfx4.shape) - new_grid_sdf = grid_sdf[:, selected_verts_idx] - return new_tet_pos_bxnx3, new_tet_bxfx4, new_grid_sdf - - -############################################################################### -# Regularizer -############################################################################### - -def sdf_reg_loss(sdf, all_edges): - sdf_f1x6x2 = sdf[all_edges.reshape(-1)].reshape(-1, 2) - mask = torch.sign(sdf_f1x6x2[..., 0]) != torch.sign(sdf_f1x6x2[..., 1]) - sdf_f1x6x2 = sdf_f1x6x2[mask] - sdf_diff = torch.nn.functional.binary_cross_entropy_with_logits( - sdf_f1x6x2[..., 0], - (sdf_f1x6x2[..., 1] > 0).float()) + \ - torch.nn.functional.binary_cross_entropy_with_logits( - sdf_f1x6x2[..., 1], - (sdf_f1x6x2[..., 0] > 0).float()) - return sdf_diff - - -def sdf_reg_loss_batch(sdf, all_edges): - sdf_f1x6x2 = sdf[:, all_edges.reshape(-1)].reshape(sdf.shape[0], -1, 2) - mask = torch.sign(sdf_f1x6x2[..., 0]) != torch.sign(sdf_f1x6x2[..., 1]) - sdf_f1x6x2 = sdf_f1x6x2[mask] - sdf_diff = torch.nn.functional.binary_cross_entropy_with_logits(sdf_f1x6x2[..., 0], (sdf_f1x6x2[..., 1] > 0).float()) + \ - torch.nn.functional.binary_cross_entropy_with_logits(sdf_f1x6x2[..., 1], (sdf_f1x6x2[..., 0] > 0).float()) - return sdf_diff - - -############################################################################### -# Geometry interface -############################################################################### -class DMTetGeometry(Geometry): - def __init__( - self, grid_res=64, scale=2.0, device='cuda', renderer=None, - render_type='neural_render', args=None): - super(DMTetGeometry, self).__init__() - self.grid_res = grid_res - self.device = device - self.args = args - tets = np.load('data/tets/%d_compress.npz' % (grid_res)) - self.verts = torch.from_numpy(tets['vertices']).float().to(self.device) - # Make sure the tet is zero-centered and length is equal to 1 - length = self.verts.max(dim=0)[0] - self.verts.min(dim=0)[0] - length = length.max() - mid = (self.verts.max(dim=0)[0] + self.verts.min(dim=0)[0]) / 2.0 - self.verts = (self.verts - mid.unsqueeze(dim=0)) / length - if isinstance(scale, list): - self.verts[:, 0] = self.verts[:, 0] * scale[0] - self.verts[:, 1] = self.verts[:, 1] * scale[1] - self.verts[:, 2] = self.verts[:, 2] * scale[1] - else: - self.verts = self.verts * scale - self.indices = torch.from_numpy(tets['tets']).long().to(self.device) - self.triangle_table, self.num_triangles_table, self.base_tet_edges, self.v_id = create_mt_variable(self.device) - self.tet_table, self.num_tets_table = create_tetmesh_variables(self.device) - # Parameters for regularization computation - edges = torch.tensor([0, 1, 0, 2, 0, 3, 1, 2, 1, 3, 2, 3], dtype=torch.long, device=self.device) - all_edges = self.indices[:, edges].reshape(-1, 2) - all_edges_sorted = torch.sort(all_edges, dim=1)[0] - self.all_edges = torch.unique(all_edges_sorted, dim=0) - - # Parameters used for fix boundary sdf - self.center_indices, self.boundary_indices = get_center_boundary_index(self.verts) - self.renderer = renderer - self.render_type = render_type - - def getAABB(self): - return torch.min(self.verts, dim=0).values, torch.max(self.verts, dim=0).values - - def get_mesh(self, v_deformed_nx3, sdf_n, with_uv=False, indices=None): - if indices is None: - indices = self.indices - verts, faces = marching_tets( - v_deformed_nx3, sdf_n, indices, self.triangle_table, - self.num_triangles_table, self.base_tet_edges, self.v_id) - faces = torch.cat( - [faces[:, 0:1], - faces[:, 2:3], - faces[:, 1:2], ], dim=-1) - return verts, faces - - def get_tet_mesh(self, v_deformed_nx3, sdf_n, with_uv=False, indices=None): - if indices is None: - indices = self.indices - verts, faces, tet_verts, tets = marching_tets_tetmesh( - v_deformed_nx3, sdf_n, indices, self.triangle_table, - self.num_triangles_table, self.base_tet_edges, self.v_id, return_tet_mesh=True, - num_tets_table=self.num_tets_table, tet_table=self.tet_table, ori_v=v_deformed_nx3) - faces = torch.cat( - [faces[:, 0:1], - faces[:, 2:3], - faces[:, 1:2], ], dim=-1) - return verts, faces, tet_verts, tets - - def render_mesh(self, mesh_v_nx3, mesh_f_fx3, camera_mv_bx4x4, resolution=256, hierarchical_mask=False): - return_value = dict() - if self.render_type == 'neural_render': - tex_pos, mask, hard_mask, rast, v_pos_clip, mask_pyramid, depth = self.renderer.render_mesh( - mesh_v_nx3.unsqueeze(dim=0), - mesh_f_fx3.int(), - camera_mv_bx4x4, - mesh_v_nx3.unsqueeze(dim=0), - resolution=resolution, - device=self.device, - hierarchical_mask=hierarchical_mask - ) - - return_value['tex_pos'] = tex_pos - return_value['mask'] = mask - return_value['hard_mask'] = hard_mask - return_value['rast'] = rast - return_value['v_pos_clip'] = v_pos_clip - return_value['mask_pyramid'] = mask_pyramid - return_value['depth'] = depth - else: - raise NotImplementedError - - return return_value - - def render(self, v_deformed_bxnx3=None, sdf_bxn=None, camera_mv_bxnviewx4x4=None, resolution=256): - # Here I assume a batch of meshes (can be different mesh and geometry), for the other shapes, the batch is 1 - v_list = [] - f_list = [] - n_batch = v_deformed_bxnx3.shape[0] - all_render_output = [] - for i_batch in range(n_batch): - verts_nx3, faces_fx3 = self.get_mesh(v_deformed_bxnx3[i_batch], sdf_bxn[i_batch]) - v_list.append(verts_nx3) - f_list.append(faces_fx3) - render_output = self.render_mesh(verts_nx3, faces_fx3, camera_mv_bxnviewx4x4[i_batch], resolution) - all_render_output.append(render_output) - - # Concatenate all render output - return_keys = all_render_output[0].keys() - return_value = dict() - for k in return_keys: - value = [v[k] for v in all_render_output] - return_value[k] = value - # We can do concatenation outside of the render - return return_value diff --git a/instant_mesh/models/geometry/rep_3d/dmtet_utils.py b/instant_mesh/models/geometry/rep_3d/dmtet_utils.py deleted file mode 100644 index 8d466a9..0000000 --- a/instant_mesh/models/geometry/rep_3d/dmtet_utils.py +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch - - -def get_center_boundary_index(verts): - length_ = torch.sum(verts ** 2, dim=-1) - center_idx = torch.argmin(length_) - boundary_neg = verts == verts.max() - boundary_pos = verts == verts.min() - boundary = torch.bitwise_or(boundary_pos, boundary_neg) - boundary = torch.sum(boundary.float(), dim=-1) - boundary_idx = torch.nonzero(boundary) - return center_idx, boundary_idx.squeeze(dim=-1) diff --git a/instant_mesh/models/geometry/rep_3d/extract_texture_map.py b/instant_mesh/models/geometry/rep_3d/extract_texture_map.py deleted file mode 100644 index a5d62bb..0000000 --- a/instant_mesh/models/geometry/rep_3d/extract_texture_map.py +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch -import xatlas -import numpy as np -import nvdiffrast.torch as dr - - -# ============================================================================================== -def interpolate(attr, rast, attr_idx, rast_db=None): - return dr.interpolate(attr.contiguous(), rast, attr_idx, rast_db=rast_db, diff_attrs=None if rast_db is None else 'all') - - -def xatlas_uvmap(ctx, mesh_v, mesh_pos_idx, resolution): - vmapping, indices, uvs = xatlas.parametrize(mesh_v.detach().cpu().numpy(), mesh_pos_idx.detach().cpu().numpy()) - - # Convert to tensors - indices_int64 = indices.astype(np.uint64, casting='same_kind').view(np.int64) - - uvs = torch.tensor(uvs, dtype=torch.float32, device=mesh_v.device) - mesh_tex_idx = torch.tensor(indices_int64, dtype=torch.int64, device=mesh_v.device) - # mesh_v_tex. ture - uv_clip = uvs[None, ...] * 2.0 - 1.0 - - # pad to four component coordinate - uv_clip4 = torch.cat((uv_clip, torch.zeros_like(uv_clip[..., 0:1]), torch.ones_like(uv_clip[..., 0:1])), dim=-1) - - # rasterize - rast, _ = dr.rasterize(ctx, uv_clip4, mesh_tex_idx.int(), (resolution, resolution)) - - # Interpolate world space position - gb_pos, _ = interpolate(mesh_v[None, ...], rast, mesh_pos_idx.int()) - mask = rast[..., 3:4] > 0 - return uvs, mesh_tex_idx, gb_pos, mask diff --git a/instant_mesh/models/geometry/rep_3d/flexicubes_geometry.py b/instant_mesh/models/geometry/rep_3d/flexicubes_geometry.py deleted file mode 100644 index 96db9c1..0000000 --- a/instant_mesh/models/geometry/rep_3d/flexicubes_geometry.py +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch -import numpy as np -import os -from . import Geometry -from flexicubes.flexicubes import FlexiCubes -from .dmtet import sdf_reg_loss_batch -import torch.nn.functional as F - -def get_center_boundary_index(grid_res, device): - v = torch.zeros((grid_res + 1, grid_res + 1, grid_res + 1), dtype=torch.bool, device=device) - v[grid_res // 2 + 1, grid_res // 2 + 1, grid_res // 2 + 1] = True - center_indices = torch.nonzero(v.reshape(-1)) - - v[grid_res // 2 + 1, grid_res // 2 + 1, grid_res // 2 + 1] = False - v[:2, ...] = True - v[-2:, ...] = True - v[:, :2, ...] = True - v[:, -2:, ...] = True - v[:, :, :2] = True - v[:, :, -2:] = True - boundary_indices = torch.nonzero(v.reshape(-1)) - return center_indices, boundary_indices - -############################################################################### -# Geometry interface -############################################################################### -class FlexiCubesGeometry(Geometry): - def __init__( - self, grid_res=64, scale=2.0, device='cuda', renderer=None, - render_type='neural_render', args=None): - super(FlexiCubesGeometry, self).__init__() - self.grid_res = grid_res - self.device = device - self.args = args - self.fc = FlexiCubes(device, weight_scale=0.5) - self.verts, self.indices = self.fc.construct_voxel_grid(grid_res) - if isinstance(scale, list): - self.verts[:, 0] = self.verts[:, 0] * scale[0] - self.verts[:, 1] = self.verts[:, 1] * scale[1] - self.verts[:, 2] = self.verts[:, 2] * scale[1] - else: - self.verts = self.verts * scale - - all_edges = self.indices[:, self.fc.cube_edges].reshape(-1, 2) - self.all_edges = torch.unique(all_edges, dim=0) - - # Parameters used for fix boundary sdf - self.center_indices, self.boundary_indices = get_center_boundary_index(self.grid_res, device) - self.renderer = renderer - self.render_type = render_type - - def getAABB(self): - return torch.min(self.verts, dim=0).values, torch.max(self.verts, dim=0).values - - def get_mesh(self, v_deformed_nx3, sdf_n, weight_n=None, with_uv=False, indices=None, is_training=False): - if indices is None: - indices = self.indices - - verts, faces, v_reg_loss = self.fc(v_deformed_nx3, sdf_n, indices, self.grid_res, - beta_fx12=weight_n[:, :12], alpha_fx8=weight_n[:, 12:20], - gamma_f=weight_n[:, 20], training=is_training - ) - return verts, faces, v_reg_loss - - - def render_mesh(self, mesh_v_nx3, mesh_f_fx3, camera_mv_bx4x4, resolution=256, hierarchical_mask=False): - return_value = dict() - if self.render_type == 'neural_render': - tex_pos, mask, hard_mask, rast, v_pos_clip, mask_pyramid, depth, normal = self.renderer.render_mesh( - mesh_v_nx3.unsqueeze(dim=0), - mesh_f_fx3.int(), - camera_mv_bx4x4, - mesh_v_nx3.unsqueeze(dim=0), - resolution=resolution, - device=self.device, - hierarchical_mask=hierarchical_mask - ) - - return_value['tex_pos'] = tex_pos - return_value['mask'] = mask - return_value['hard_mask'] = hard_mask - return_value['rast'] = rast - return_value['v_pos_clip'] = v_pos_clip - return_value['mask_pyramid'] = mask_pyramid - return_value['depth'] = depth - return_value['normal'] = normal - else: - raise NotImplementedError - - return return_value - - def render(self, v_deformed_bxnx3=None, sdf_bxn=None, camera_mv_bxnviewx4x4=None, resolution=256): - # Here I assume a batch of meshes (can be different mesh and geometry), for the other shapes, the batch is 1 - v_list = [] - f_list = [] - n_batch = v_deformed_bxnx3.shape[0] - all_render_output = [] - for i_batch in range(n_batch): - verts_nx3, faces_fx3 = self.get_mesh(v_deformed_bxnx3[i_batch], sdf_bxn[i_batch]) - v_list.append(verts_nx3) - f_list.append(faces_fx3) - render_output = self.render_mesh(verts_nx3, faces_fx3, camera_mv_bxnviewx4x4[i_batch], resolution) - all_render_output.append(render_output) - - # Concatenate all render output - return_keys = all_render_output[0].keys() - return_value = dict() - for k in return_keys: - value = [v[k] for v in all_render_output] - return_value[k] = value - # We can do concatenation outside of the render - return return_value diff --git a/instant_mesh/models/lrm.py b/instant_mesh/models/lrm.py deleted file mode 100644 index 2128bac..0000000 --- a/instant_mesh/models/lrm.py +++ /dev/null @@ -1,209 +0,0 @@ -# Copyright (c) 2023, Zexin He -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import numpy as np -import torch -import torch.nn as nn -import mcubes -import nvdiffrast.torch as dr -from einops import rearrange, repeat - -from .encoder.dino_wrapper import DinoWrapper -from .decoder.transformer import TriplaneTransformer -from .renderer.synthesizer import TriplaneSynthesizer -from ..utils.mesh_util import xatlas_uvmap - - -class InstantNeRF(nn.Module): - """ - Full model of the large reconstruction model. - """ - def __init__( - self, - encoder_freeze: bool = False, - encoder_model_name: str = 'facebook/dino-vitb16', - encoder_feat_dim: int = 768, - transformer_dim: int = 1024, - transformer_layers: int = 16, - transformer_heads: int = 16, - triplane_low_res: int = 32, - triplane_high_res: int = 64, - triplane_dim: int = 80, - rendering_samples_per_ray: int = 128, - ): - super().__init__() - - # modules - self.encoder = DinoWrapper( - model_name=encoder_model_name, - freeze=encoder_freeze, - ) - - self.transformer = TriplaneTransformer( - inner_dim=transformer_dim, - num_layers=transformer_layers, - num_heads=transformer_heads, - image_feat_dim=encoder_feat_dim, - triplane_low_res=triplane_low_res, - triplane_high_res=triplane_high_res, - triplane_dim=triplane_dim, - ) - - self.synthesizer = TriplaneSynthesizer( - triplane_dim=triplane_dim, - samples_per_ray=rendering_samples_per_ray, - ) - - def forward_planes(self, images, cameras): - # images: [B, V, C_img, H_img, W_img] - # cameras: [B, V, 16] - B = images.shape[0] - - # encode images - image_feats = self.encoder(images, cameras) - image_feats = rearrange(image_feats, '(b v) l d -> b (v l) d', b=B) - - # transformer generating planes - planes = self.transformer(image_feats) - - return planes - - def forward_synthesizer(self, planes, render_cameras, render_size: int): - render_results = self.synthesizer( - planes, - render_cameras, - render_size, - ) - return render_results - - def forward(self, images, cameras, render_cameras, render_size: int): - # images: [B, V, C_img, H_img, W_img] - # cameras: [B, V, 16] - # render_cameras: [B, M, D_cam_render] - # render_size: int - B, M = render_cameras.shape[:2] - - planes = self.forward_planes(images, cameras) - - # render target views - render_results = self.synthesizer(planes, render_cameras, render_size) - - return { - 'planes': planes, - **render_results, - } - - def get_texture_prediction(self, planes, tex_pos, hard_mask=None): - ''' - Predict Texture given triplanes - :param planes: the triplane feature map - :param tex_pos: Position we want to query the texture field - :param hard_mask: 2D silhoueete of the rendered image - ''' - tex_pos = torch.cat(tex_pos, dim=0) - if not hard_mask is None: - tex_pos = tex_pos * hard_mask.float() - batch_size = tex_pos.shape[0] - tex_pos = tex_pos.reshape(batch_size, -1, 3) - ################### - # We use mask to get the texture location (to save the memory) - if hard_mask is not None: - n_point_list = torch.sum(hard_mask.long().reshape(hard_mask.shape[0], -1), dim=-1) - sample_tex_pose_list = [] - max_point = n_point_list.max() - expanded_hard_mask = hard_mask.reshape(batch_size, -1, 1).expand(-1, -1, 3) > 0.5 - for i in range(tex_pos.shape[0]): - tex_pos_one_shape = tex_pos[i][expanded_hard_mask[i]].reshape(1, -1, 3) - if tex_pos_one_shape.shape[1] < max_point: - tex_pos_one_shape = torch.cat( - [tex_pos_one_shape, torch.zeros( - 1, max_point - tex_pos_one_shape.shape[1], 3, - device=tex_pos_one_shape.device, dtype=torch.float32)], dim=1) - sample_tex_pose_list.append(tex_pos_one_shape) - tex_pos = torch.cat(sample_tex_pose_list, dim=0) - - tex_feat = torch.utils.checkpoint.checkpoint( - self.synthesizer.forward_points, - planes, - tex_pos, - use_reentrant=False, - )['rgb'] - - if hard_mask is not None: - final_tex_feat = torch.zeros( - planes.shape[0], hard_mask.shape[1] * hard_mask.shape[2], tex_feat.shape[-1], device=tex_feat.device) - expanded_hard_mask = hard_mask.reshape(hard_mask.shape[0], -1, 1).expand(-1, -1, final_tex_feat.shape[-1]) > 0.5 - for i in range(planes.shape[0]): - final_tex_feat[i][expanded_hard_mask[i]] = tex_feat[i][:n_point_list[i]].reshape(-1) - tex_feat = final_tex_feat - - return tex_feat.reshape(planes.shape[0], hard_mask.shape[1], hard_mask.shape[2], tex_feat.shape[-1]) - - def extract_mesh( - self, - planes: torch.Tensor, - mesh_resolution: int = 256, - mesh_threshold: int = 10.0, - use_texture_map: bool = False, - texture_resolution: int = 1024, - **kwargs, - ): - ''' - Extract a 3D mesh from triplane nerf. Only support batch_size 1. - :param planes: triplane features - :param mesh_resolution: marching cubes resolution - :param mesh_threshold: iso-surface threshold - :param use_texture_map: use texture map or vertex color - :param texture_resolution: the resolution of texture map - ''' - assert planes.shape[0] == 1 - device = planes.device - - grid_out = self.synthesizer.forward_grid( - planes=planes, - grid_size=mesh_resolution, - ) - - vertices, faces = mcubes.marching_cubes( - grid_out['sigma'].squeeze(0).squeeze(-1).cpu().numpy(), - mesh_threshold, - ) - vertices = vertices / (mesh_resolution - 1) * 2 - 1 - - if not use_texture_map: - # query vertex colors - vertices_tensor = torch.tensor(vertices, dtype=torch.float32, device=device).unsqueeze(0) - vertices_colors = self.synthesizer.forward_points( - planes, vertices_tensor)['rgb'].squeeze(0).cpu().numpy() - vertices_colors = (vertices_colors * 255).astype(np.uint8) - - return vertices, faces, vertices_colors - - # use x-atlas to get uv mapping for the mesh - vertices = torch.tensor(vertices, dtype=torch.float32, device=device) - faces = torch.tensor(faces.astype(int), dtype=torch.long, device=device) - - ctx = dr.RasterizeCudaContext(device=device) - uvs, mesh_tex_idx, gb_pos, tex_hard_mask = xatlas_uvmap( - ctx, vertices, faces, resolution=texture_resolution) - tex_hard_mask = tex_hard_mask.float() - - # query the texture field to get the RGB color for texture map - tex_feat = self.get_texture_prediction( - planes, [gb_pos], tex_hard_mask) - background_feature = torch.zeros_like(tex_feat) - img_feat = torch.lerp(background_feature, tex_feat, tex_hard_mask) - texture_map = img_feat.permute(0, 3, 1, 2).squeeze(0) - - return vertices, faces, uvs, mesh_tex_idx, texture_map \ No newline at end of file diff --git a/instant_mesh/models/lrm_mesh.py b/instant_mesh/models/lrm_mesh.py deleted file mode 100644 index cb6e351..0000000 --- a/instant_mesh/models/lrm_mesh.py +++ /dev/null @@ -1,382 +0,0 @@ -# Copyright (c) 2023, Tencent Inc -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import numpy as np -import torch -import torch.nn as nn -import nvdiffrast.torch as dr -from einops import rearrange, repeat - -from .encoder.dino_wrapper import DinoWrapper -from .decoder.transformer import TriplaneTransformer -from .renderer.synthesizer_mesh import TriplaneSynthesizer -from .geometry.camera.perspective_camera import PerspectiveCamera -from .geometry.render.neural_render import NeuralRender -from .geometry.rep_3d.flexicubes_geometry import FlexiCubesGeometry -from ..utils.mesh_util import xatlas_uvmap - - -class InstantMesh(nn.Module): - """ - Full model of the large reconstruction model. - """ - def __init__( - self, - encoder_freeze: bool = False, - encoder_model_name: str = 'facebook/dino-vitb16', - encoder_feat_dim: int = 768, - transformer_dim: int = 1024, - transformer_layers: int = 16, - transformer_heads: int = 16, - triplane_low_res: int = 32, - triplane_high_res: int = 64, - triplane_dim: int = 80, - rendering_samples_per_ray: int = 128, - grid_res: int = 128, - grid_scale: float = 2.0, - ): - super().__init__() - - # attributes - self.grid_res = grid_res - self.grid_scale = grid_scale - self.deformation_multiplier = 4.0 - - # modules - self.encoder = DinoWrapper( - model_name=encoder_model_name, - freeze=encoder_freeze, - ) - - self.transformer = TriplaneTransformer( - inner_dim=transformer_dim, - num_layers=transformer_layers, - num_heads=transformer_heads, - image_feat_dim=encoder_feat_dim, - triplane_low_res=triplane_low_res, - triplane_high_res=triplane_high_res, - triplane_dim=triplane_dim, - ) - - self.synthesizer = TriplaneSynthesizer( - triplane_dim=triplane_dim, - samples_per_ray=rendering_samples_per_ray, - ) - - def init_flexicubes_geometry(self, device, fovy=50.0): - camera = PerspectiveCamera(fovy=fovy, device=device) - renderer = NeuralRender(device, camera_model=camera) - self.geometry = FlexiCubesGeometry( - grid_res=self.grid_res, - scale=self.grid_scale, - renderer=renderer, - render_type='neural_render', - device=device, - ) - - def forward_planes(self, images, cameras): - # images: [B, V, C_img, H_img, W_img] - # cameras: [B, V, 16] - B = images.shape[0] - - # encode images - image_feats = self.encoder(images, cameras) - image_feats = rearrange(image_feats, '(b v) l d -> b (v l) d', b=B) - - # decode triplanes - planes = self.transformer(image_feats) - - return planes - - def get_sdf_deformation_prediction(self, planes): - ''' - Predict SDF and deformation for tetrahedron vertices - :param planes: triplane feature map for the geometry - ''' - init_position = self.geometry.verts.unsqueeze(0).expand(planes.shape[0], -1, -1) - - # Step 1: predict the SDF and deformation - sdf, deformation, weight = torch.utils.checkpoint.checkpoint( - self.synthesizer.get_geometry_prediction, - planes, - init_position, - self.geometry.indices, - use_reentrant=False, - ) - - # Step 2: Normalize the deformation to avoid the flipped triangles. - deformation = 1.0 / (self.grid_res * self.deformation_multiplier) * torch.tanh(deformation) - sdf_reg_loss = torch.zeros(sdf.shape[0], device=sdf.device, dtype=torch.float32) - - #### - # Step 3: Fix some sdf if we observe empty shape (full positive or full negative) - sdf_bxnxnxn = sdf.reshape((sdf.shape[0], self.grid_res + 1, self.grid_res + 1, self.grid_res + 1)) - sdf_less_boundary = sdf_bxnxnxn[:, 1:-1, 1:-1, 1:-1].reshape(sdf.shape[0], -1) - pos_shape = torch.sum((sdf_less_boundary > 0).int(), dim=-1) - neg_shape = torch.sum((sdf_less_boundary < 0).int(), dim=-1) - zero_surface = torch.bitwise_or(pos_shape == 0, neg_shape == 0) - if torch.sum(zero_surface).item() > 0: - update_sdf = torch.zeros_like(sdf[0:1]) - max_sdf = sdf.max() - min_sdf = sdf.min() - update_sdf[:, self.geometry.center_indices] += (1.0 - min_sdf) # greater than zero - update_sdf[:, self.geometry.boundary_indices] += (-1 - max_sdf) # smaller than zero - new_sdf = torch.zeros_like(sdf) - for i_batch in range(zero_surface.shape[0]): - if zero_surface[i_batch]: - new_sdf[i_batch:i_batch + 1] += update_sdf - update_mask = (new_sdf == 0).float() - # Regulraization here is used to push the sdf to be a different sign (make it not fully positive or fully negative) - sdf_reg_loss = torch.abs(sdf).mean(dim=-1).mean(dim=-1) - sdf_reg_loss = sdf_reg_loss * zero_surface.float() - sdf = sdf * update_mask + new_sdf * (1 - update_mask) - - # Step 4: Here we remove the gradient for the bad sdf (full positive or full negative) - final_sdf = [] - final_def = [] - for i_batch in range(zero_surface.shape[0]): - if zero_surface[i_batch]: - final_sdf.append(sdf[i_batch: i_batch + 1].detach()) - final_def.append(deformation[i_batch: i_batch + 1].detach()) - else: - final_sdf.append(sdf[i_batch: i_batch + 1]) - final_def.append(deformation[i_batch: i_batch + 1]) - sdf = torch.cat(final_sdf, dim=0) - deformation = torch.cat(final_def, dim=0) - return sdf, deformation, sdf_reg_loss, weight - - def get_geometry_prediction(self, planes=None): - ''' - Function to generate mesh with give triplanes - :param planes: triplane features - ''' - # Step 1: first get the sdf and deformation value for each vertices in the tetrahedon grid. - sdf, deformation, sdf_reg_loss, weight = self.get_sdf_deformation_prediction(planes) - v_deformed = self.geometry.verts.unsqueeze(dim=0).expand(sdf.shape[0], -1, -1) + deformation - tets = self.geometry.indices - n_batch = planes.shape[0] - v_list = [] - f_list = [] - flexicubes_surface_reg_list = [] - - # Step 2: Using marching tet to obtain the mesh - for i_batch in range(n_batch): - verts, faces, flexicubes_surface_reg = self.geometry.get_mesh( - v_deformed[i_batch], - sdf[i_batch].squeeze(dim=-1), - with_uv=False, - indices=tets, - weight_n=weight[i_batch].squeeze(dim=-1), - is_training=self.training, - ) - flexicubes_surface_reg_list.append(flexicubes_surface_reg) - v_list.append(verts) - f_list.append(faces) - - flexicubes_surface_reg = torch.cat(flexicubes_surface_reg_list).mean() - flexicubes_weight_reg = (weight ** 2).mean() - - return v_list, f_list, sdf, deformation, v_deformed, (sdf_reg_loss, flexicubes_surface_reg, flexicubes_weight_reg) - - def get_texture_prediction(self, planes, tex_pos, hard_mask=None): - ''' - Predict Texture given triplanes - :param planes: the triplane feature map - :param tex_pos: Position we want to query the texture field - :param hard_mask: 2D silhoueete of the rendered image - ''' - tex_pos = torch.cat(tex_pos, dim=0) - if not hard_mask is None: - tex_pos = tex_pos * hard_mask.float() - batch_size = tex_pos.shape[0] - tex_pos = tex_pos.reshape(batch_size, -1, 3) - ################### - # We use mask to get the texture location (to save the memory) - if hard_mask is not None: - n_point_list = torch.sum(hard_mask.long().reshape(hard_mask.shape[0], -1), dim=-1) - sample_tex_pose_list = [] - max_point = n_point_list.max() - expanded_hard_mask = hard_mask.reshape(batch_size, -1, 1).expand(-1, -1, 3) > 0.5 - for i in range(tex_pos.shape[0]): - tex_pos_one_shape = tex_pos[i][expanded_hard_mask[i]].reshape(1, -1, 3) - if tex_pos_one_shape.shape[1] < max_point: - tex_pos_one_shape = torch.cat( - [tex_pos_one_shape, torch.zeros( - 1, max_point - tex_pos_one_shape.shape[1], 3, - device=tex_pos_one_shape.device, dtype=torch.float32)], dim=1) - sample_tex_pose_list.append(tex_pos_one_shape) - tex_pos = torch.cat(sample_tex_pose_list, dim=0) - - tex_feat = torch.utils.checkpoint.checkpoint( - self.synthesizer.get_texture_prediction, - planes, - tex_pos, - use_reentrant=False, - ) - - if hard_mask is not None: - final_tex_feat = torch.zeros( - planes.shape[0], hard_mask.shape[1] * hard_mask.shape[2], tex_feat.shape[-1], device=tex_feat.device) - expanded_hard_mask = hard_mask.reshape(hard_mask.shape[0], -1, 1).expand(-1, -1, final_tex_feat.shape[-1]) > 0.5 - for i in range(planes.shape[0]): - final_tex_feat[i][expanded_hard_mask[i]] = tex_feat[i][:n_point_list[i]].reshape(-1) - tex_feat = final_tex_feat - - return tex_feat.reshape(planes.shape[0], hard_mask.shape[1], hard_mask.shape[2], tex_feat.shape[-1]) - - def render_mesh(self, mesh_v, mesh_f, cam_mv, render_size=256): - ''' - Function to render a generated mesh with nvdiffrast - :param mesh_v: List of vertices for the mesh - :param mesh_f: List of faces for the mesh - :param cam_mv: 4x4 rotation matrix - :return: - ''' - return_value_list = [] - for i_mesh in range(len(mesh_v)): - return_value = self.geometry.render_mesh( - mesh_v[i_mesh], - mesh_f[i_mesh].int(), - cam_mv[i_mesh], - resolution=render_size, - hierarchical_mask=False - ) - return_value_list.append(return_value) - - return_keys = return_value_list[0].keys() - return_value = dict() - for k in return_keys: - value = [v[k] for v in return_value_list] - return_value[k] = value - - mask = torch.cat(return_value['mask'], dim=0) - hard_mask = torch.cat(return_value['hard_mask'], dim=0) - tex_pos = return_value['tex_pos'] - depth = torch.cat(return_value['depth'], dim=0) - normal = torch.cat(return_value['normal'], dim=0) - return mask, hard_mask, tex_pos, depth, normal - - def forward_geometry(self, planes, render_cameras, render_size=256): - ''' - Main function of our Generator. It first generate 3D mesh, then render it into 2D image - with given `render_cameras`. - :param planes: triplane features - :param render_cameras: cameras to render generated 3D shape - ''' - B, NV = render_cameras.shape[:2] - - # Generate 3D mesh first - mesh_v, mesh_f, sdf, deformation, v_deformed, sdf_reg_loss = self.get_geometry_prediction(planes) - - # Render the mesh into 2D image (get 3d position of each image plane) - cam_mv = render_cameras - run_n_view = cam_mv.shape[1] - antilias_mask, hard_mask, tex_pos, depth, normal = self.render_mesh(mesh_v, mesh_f, cam_mv, render_size=render_size) - - tex_hard_mask = hard_mask - tex_pos = [torch.cat([pos[i_view:i_view + 1] for i_view in range(run_n_view)], dim=2) for pos in tex_pos] - tex_hard_mask = torch.cat( - [torch.cat( - [tex_hard_mask[i * run_n_view + i_view: i * run_n_view + i_view + 1] - for i_view in range(run_n_view)], dim=2) - for i in range(planes.shape[0])], dim=0) - - # Querying the texture field to predict the texture feature for each pixel on the image - tex_feat = self.get_texture_prediction(planes, tex_pos, tex_hard_mask) - background_feature = torch.ones_like(tex_feat) # white background - - # Merge them together - img_feat = tex_feat * tex_hard_mask + background_feature * (1 - tex_hard_mask) - - # We should split it back to the original image shape - img_feat = torch.cat( - [torch.cat( - [img_feat[i:i + 1, :, render_size * i_view: render_size * (i_view + 1)] - for i_view in range(run_n_view)], dim=0) for i in range(len(tex_pos))], dim=0) - - img = img_feat.clamp(0, 1).permute(0, 3, 1, 2).unflatten(0, (B, NV)) - antilias_mask = antilias_mask.permute(0, 3, 1, 2).unflatten(0, (B, NV)) - depth = -depth.permute(0, 3, 1, 2).unflatten(0, (B, NV)) # transform negative depth to positive - normal = normal.permute(0, 3, 1, 2).unflatten(0, (B, NV)) - - out = { - 'img': img, - 'mask': antilias_mask, - 'depth': depth, - 'normal': normal, - 'sdf': sdf, - 'mesh_v': mesh_v, - 'mesh_f': mesh_f, - 'sdf_reg_loss': sdf_reg_loss, - } - return out - - def forward(self, images, cameras, render_cameras, render_size: int): - # images: [B, V, C_img, H_img, W_img] - # cameras: [B, V, 16] - # render_cameras: [B, M, D_cam_render] - # render_size: int - B, M = render_cameras.shape[:2] - - planes = self.forward_planes(images, cameras) - out = self.forward_geometry(planes, render_cameras, render_size=render_size) - - return { - 'planes': planes, - **out - } - - def extract_mesh( - self, - planes: torch.Tensor, - use_texture_map: bool = False, - texture_resolution: int = 1024, - **kwargs, - ): - ''' - Extract a 3D mesh from FlexiCubes. Only support batch_size 1. - :param planes: triplane features - :param use_texture_map: use texture map or vertex color - :param texture_resolution: the resolution of texure map - ''' - assert planes.shape[0] == 1 - device = planes.device - - # predict geometry first - mesh_v, mesh_f, sdf, deformation, v_deformed, sdf_reg_loss = self.get_geometry_prediction(planes) - vertices, faces = mesh_v[0], mesh_f[0] - - if not use_texture_map: - # query vertex colors - vertices_tensor = vertices.unsqueeze(0) - vertices_colors = self.synthesizer.get_texture_prediction( - planes, vertices_tensor).clamp(0, 1).squeeze(0).cpu().numpy() - vertices_colors = (vertices_colors * 255).astype(np.uint8) - - return vertices.cpu().numpy(), faces.cpu().numpy(), vertices_colors - - # use x-atlas to get uv mapping for the mesh - ctx = dr.RasterizeCudaContext(device=device) - uvs, mesh_tex_idx, gb_pos, tex_hard_mask = xatlas_uvmap( - self.geometry.renderer.ctx, vertices, faces, resolution=texture_resolution) - tex_hard_mask = tex_hard_mask.float() - - # query the texture field to get the RGB color for texture map - tex_feat = self.get_texture_prediction( - planes, [gb_pos], tex_hard_mask) - background_feature = torch.zeros_like(tex_feat) - img_feat = torch.lerp(background_feature, tex_feat, tex_hard_mask) - texture_map = img_feat.permute(0, 3, 1, 2).squeeze(0) - - return vertices, faces, uvs, mesh_tex_idx, texture_map \ No newline at end of file diff --git a/instant_mesh/models/renderer/__init__.py b/instant_mesh/models/renderer/__init__.py deleted file mode 100644 index 2c772e4..0000000 --- a/instant_mesh/models/renderer/__init__.py +++ /dev/null @@ -1,9 +0,0 @@ -# SPDX-FileCopyrightText: Copyright (c) 2021-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# SPDX-License-Identifier: LicenseRef-NvidiaProprietary -# -# NVIDIA CORPORATION, its affiliates and licensors retain all intellectual -# property and proprietary rights in and to this material, related -# documentation and any modifications thereto. Any use, reproduction, -# disclosure or distribution of this material and related documentation -# without an express license agreement from NVIDIA CORPORATION or -# its affiliates is strictly prohibited. diff --git a/instant_mesh/models/renderer/synthesizer.py b/instant_mesh/models/renderer/synthesizer.py deleted file mode 100644 index 8db9fbd..0000000 --- a/instant_mesh/models/renderer/synthesizer.py +++ /dev/null @@ -1,203 +0,0 @@ -# ORIGINAL LICENSE -# SPDX-FileCopyrightText: Copyright (c) 2021-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# SPDX-License-Identifier: LicenseRef-NvidiaProprietary -# -# Modified by Jiale Xu -# The modifications are subject to the same license as the original. - - -import itertools -import torch -import torch.nn as nn - -from .utils.renderer import ImportanceRenderer -from .utils.ray_sampler import RaySampler - - -class OSGDecoder(nn.Module): - """ - Triplane decoder that gives RGB and sigma values from sampled features. - Using ReLU here instead of Softplus in the original implementation. - - Reference: - EG3D: https://github.com/NVlabs/eg3d/blob/main/eg3d/training/triplane.py#L112 - """ - def __init__(self, n_features: int, - hidden_dim: int = 64, num_layers: int = 4, activation: nn.Module = nn.ReLU): - super().__init__() - self.net = nn.Sequential( - nn.Linear(3 * n_features, hidden_dim), - activation(), - *itertools.chain(*[[ - nn.Linear(hidden_dim, hidden_dim), - activation(), - ] for _ in range(num_layers - 2)]), - nn.Linear(hidden_dim, 1 + 3), - ) - # init all bias to zero - for m in self.modules(): - if isinstance(m, nn.Linear): - nn.init.zeros_(m.bias) - - def forward(self, sampled_features, ray_directions): - # Aggregate features by mean - # sampled_features = sampled_features.mean(1) - # Aggregate features by concatenation - _N, n_planes, _M, _C = sampled_features.shape - sampled_features = sampled_features.permute(0, 2, 1, 3).reshape(_N, _M, n_planes*_C) - x = sampled_features - - N, M, C = x.shape - x = x.contiguous().view(N*M, C) - - x = self.net(x) - x = x.view(N, M, -1) - rgb = torch.sigmoid(x[..., 1:])*(1 + 2*0.001) - 0.001 # Uses sigmoid clamping from MipNeRF - sigma = x[..., 0:1] - - return {'rgb': rgb, 'sigma': sigma} - - -class TriplaneSynthesizer(nn.Module): - """ - Synthesizer that renders a triplane volume with planes and a camera. - - Reference: - EG3D: https://github.com/NVlabs/eg3d/blob/main/eg3d/training/triplane.py#L19 - """ - - DEFAULT_RENDERING_KWARGS = { - 'ray_start': 'auto', - 'ray_end': 'auto', - 'box_warp': 2., - 'white_back': True, - 'disparity_space_sampling': False, - 'clamp_mode': 'softplus', - 'sampler_bbox_min': -1., - 'sampler_bbox_max': 1., - } - - def __init__(self, triplane_dim: int, samples_per_ray: int): - super().__init__() - - # attributes - self.triplane_dim = triplane_dim - self.rendering_kwargs = { - **self.DEFAULT_RENDERING_KWARGS, - 'depth_resolution': samples_per_ray // 2, - 'depth_resolution_importance': samples_per_ray // 2, - } - - # renderings - self.renderer = ImportanceRenderer() - self.ray_sampler = RaySampler() - - # modules - self.decoder = OSGDecoder(n_features=triplane_dim) - - def forward(self, planes, cameras, render_size=128, crop_params=None): - # planes: (N, 3, D', H', W') - # cameras: (N, M, D_cam) - # render_size: int - assert planes.shape[0] == cameras.shape[0], "Batch size mismatch for planes and cameras" - N, M = cameras.shape[:2] - - cam2world_matrix = cameras[..., :16].view(N, M, 4, 4) - intrinsics = cameras[..., 16:25].view(N, M, 3, 3) - - # Create a batch of rays for volume rendering - ray_origins, ray_directions = self.ray_sampler( - cam2world_matrix=cam2world_matrix.reshape(-1, 4, 4), - intrinsics=intrinsics.reshape(-1, 3, 3), - render_size=render_size, - ) - assert N*M == ray_origins.shape[0], "Batch size mismatch for ray_origins" - assert ray_origins.dim() == 3, "ray_origins should be 3-dimensional" - - # Crop rays if crop_params is available - if crop_params is not None: - ray_origins = ray_origins.reshape(N*M, render_size, render_size, 3) - ray_directions = ray_directions.reshape(N*M, render_size, render_size, 3) - i, j, h, w = crop_params - ray_origins = ray_origins[:, i:i+h, j:j+w, :].reshape(N*M, -1, 3) - ray_directions = ray_directions[:, i:i+h, j:j+w, :].reshape(N*M, -1, 3) - - # Perform volume rendering - rgb_samples, depth_samples, weights_samples = self.renderer( - planes.repeat_interleave(M, dim=0), self.decoder, ray_origins, ray_directions, self.rendering_kwargs, - ) - - # Reshape into 'raw' neural-rendered image - if crop_params is not None: - Himg, Wimg = crop_params[2:] - else: - Himg = Wimg = render_size - rgb_images = rgb_samples.permute(0, 2, 1).reshape(N, M, rgb_samples.shape[-1], Himg, Wimg).contiguous() - depth_images = depth_samples.permute(0, 2, 1).reshape(N, M, 1, Himg, Wimg) - weight_images = weights_samples.permute(0, 2, 1).reshape(N, M, 1, Himg, Wimg) - - out = { - 'images_rgb': rgb_images, - 'images_depth': depth_images, - 'images_weight': weight_images, - } - return out - - def forward_grid(self, planes, grid_size: int, aabb: torch.Tensor = None): - # planes: (N, 3, D', H', W') - # grid_size: int - # aabb: (N, 2, 3) - if aabb is None: - aabb = torch.tensor([ - [self.rendering_kwargs['sampler_bbox_min']] * 3, - [self.rendering_kwargs['sampler_bbox_max']] * 3, - ], device=planes.device, dtype=planes.dtype).unsqueeze(0).repeat(planes.shape[0], 1, 1) - assert planes.shape[0] == aabb.shape[0], "Batch size mismatch for planes and aabb" - N = planes.shape[0] - - # create grid points for triplane query - grid_points = [] - for i in range(N): - grid_points.append(torch.stack(torch.meshgrid( - torch.linspace(aabb[i, 0, 0], aabb[i, 1, 0], grid_size, device=planes.device), - torch.linspace(aabb[i, 0, 1], aabb[i, 1, 1], grid_size, device=planes.device), - torch.linspace(aabb[i, 0, 2], aabb[i, 1, 2], grid_size, device=planes.device), - indexing='ij', - ), dim=-1).reshape(-1, 3)) - cube_grid = torch.stack(grid_points, dim=0).to(planes.device) - - features = self.forward_points(planes, cube_grid) - - # reshape into grid - features = { - k: v.reshape(N, grid_size, grid_size, grid_size, -1) - for k, v in features.items() - } - return features - - def forward_points(self, planes, points: torch.Tensor, chunk_size: int = 2**20): - # planes: (N, 3, D', H', W') - # points: (N, P, 3) - N, P = points.shape[:2] - - # query triplane in chunks - outs = [] - for i in range(0, points.shape[1], chunk_size): - chunk_points = points[:, i:i+chunk_size] - - # query triplane - chunk_out = self.renderer.run_model_activated( - planes=planes, - decoder=self.decoder, - sample_coordinates=chunk_points, - sample_directions=torch.zeros_like(chunk_points), - options=self.rendering_kwargs, - ) - outs.append(chunk_out) - - # concatenate the outputs - point_features = { - k: torch.cat([out[k] for out in outs], dim=1) - for k in outs[0].keys() - } - return point_features diff --git a/instant_mesh/models/renderer/synthesizer_mesh.py b/instant_mesh/models/renderer/synthesizer_mesh.py deleted file mode 100644 index dc31838..0000000 --- a/instant_mesh/models/renderer/synthesizer_mesh.py +++ /dev/null @@ -1,141 +0,0 @@ -# ORIGINAL LICENSE -# SPDX-FileCopyrightText: Copyright (c) 2021-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# SPDX-License-Identifier: LicenseRef-NvidiaProprietary -# -# Modified by Jiale Xu -# The modifications are subject to the same license as the original. - -import itertools -import torch -import torch.nn as nn - -from .utils.renderer import generate_planes, project_onto_planes, sample_from_planes - - -class OSGDecoder(nn.Module): - """ - Triplane decoder that gives RGB and sigma values from sampled features. - Using ReLU here instead of Softplus in the original implementation. - - Reference: - EG3D: https://github.com/NVlabs/eg3d/blob/main/eg3d/training/triplane.py#L112 - """ - def __init__(self, n_features: int, - hidden_dim: int = 64, num_layers: int = 4, activation: nn.Module = nn.ReLU): - super().__init__() - - self.net_sdf = nn.Sequential( - nn.Linear(3 * n_features, hidden_dim), - activation(), - *itertools.chain(*[[ - nn.Linear(hidden_dim, hidden_dim), - activation(), - ] for _ in range(num_layers - 2)]), - nn.Linear(hidden_dim, 1), - ) - self.net_rgb = nn.Sequential( - nn.Linear(3 * n_features, hidden_dim), - activation(), - *itertools.chain(*[[ - nn.Linear(hidden_dim, hidden_dim), - activation(), - ] for _ in range(num_layers - 2)]), - nn.Linear(hidden_dim, 3), - ) - self.net_deformation = nn.Sequential( - nn.Linear(3 * n_features, hidden_dim), - activation(), - *itertools.chain(*[[ - nn.Linear(hidden_dim, hidden_dim), - activation(), - ] for _ in range(num_layers - 2)]), - nn.Linear(hidden_dim, 3), - ) - self.net_weight = nn.Sequential( - nn.Linear(8 * 3 * n_features, hidden_dim), - activation(), - *itertools.chain(*[[ - nn.Linear(hidden_dim, hidden_dim), - activation(), - ] for _ in range(num_layers - 2)]), - nn.Linear(hidden_dim, 21), - ) - - # init all bias to zero - for m in self.modules(): - if isinstance(m, nn.Linear): - nn.init.zeros_(m.bias) - - def get_geometry_prediction(self, sampled_features, flexicubes_indices): - _N, n_planes, _M, _C = sampled_features.shape - sampled_features = sampled_features.permute(0, 2, 1, 3).reshape(_N, _M, n_planes*_C) - - sdf = self.net_sdf(sampled_features) - deformation = self.net_deformation(sampled_features) - - grid_features = torch.index_select(input=sampled_features, index=flexicubes_indices.reshape(-1), dim=1) - grid_features = grid_features.reshape( - sampled_features.shape[0], flexicubes_indices.shape[0], flexicubes_indices.shape[1] * sampled_features.shape[-1]) - weight = self.net_weight(grid_features) * 0.1 - - return sdf, deformation, weight - - def get_texture_prediction(self, sampled_features): - _N, n_planes, _M, _C = sampled_features.shape - sampled_features = sampled_features.permute(0, 2, 1, 3).reshape(_N, _M, n_planes*_C) - - rgb = self.net_rgb(sampled_features) - rgb = torch.sigmoid(rgb)*(1 + 2*0.001) - 0.001 # Uses sigmoid clamping from MipNeRF - - return rgb - - -class TriplaneSynthesizer(nn.Module): - """ - Synthesizer that renders a triplane volume with planes and a camera. - - Reference: - EG3D: https://github.com/NVlabs/eg3d/blob/main/eg3d/training/triplane.py#L19 - """ - - DEFAULT_RENDERING_KWARGS = { - 'ray_start': 'auto', - 'ray_end': 'auto', - 'box_warp': 2., - 'white_back': True, - 'disparity_space_sampling': False, - 'clamp_mode': 'softplus', - 'sampler_bbox_min': -1., - 'sampler_bbox_max': 1., - } - - def __init__(self, triplane_dim: int, samples_per_ray: int): - super().__init__() - - # attributes - self.triplane_dim = triplane_dim - self.rendering_kwargs = { - **self.DEFAULT_RENDERING_KWARGS, - 'depth_resolution': samples_per_ray // 2, - 'depth_resolution_importance': samples_per_ray // 2, - } - - # modules - self.plane_axes = generate_planes() - self.decoder = OSGDecoder(n_features=triplane_dim) - - def get_geometry_prediction(self, planes, sample_coordinates, flexicubes_indices): - plane_axes = self.plane_axes.to(planes.device) - sampled_features = sample_from_planes( - plane_axes, planes, sample_coordinates, padding_mode='zeros', box_warp=self.rendering_kwargs['box_warp']) - - sdf, deformation, weight = self.decoder.get_geometry_prediction(sampled_features, flexicubes_indices) - return sdf, deformation, weight - - def get_texture_prediction(self, planes, sample_coordinates): - plane_axes = self.plane_axes.to(planes.device) - sampled_features = sample_from_planes( - plane_axes, planes, sample_coordinates, padding_mode='zeros', box_warp=self.rendering_kwargs['box_warp']) - - rgb = self.decoder.get_texture_prediction(sampled_features) - return rgb diff --git a/instant_mesh/models/renderer/utils/__init__.py b/instant_mesh/models/renderer/utils/__init__.py deleted file mode 100644 index 2c772e4..0000000 --- a/instant_mesh/models/renderer/utils/__init__.py +++ /dev/null @@ -1,9 +0,0 @@ -# SPDX-FileCopyrightText: Copyright (c) 2021-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# SPDX-License-Identifier: LicenseRef-NvidiaProprietary -# -# NVIDIA CORPORATION, its affiliates and licensors retain all intellectual -# property and proprietary rights in and to this material, related -# documentation and any modifications thereto. Any use, reproduction, -# disclosure or distribution of this material and related documentation -# without an express license agreement from NVIDIA CORPORATION or -# its affiliates is strictly prohibited. diff --git a/instant_mesh/models/renderer/utils/math_utils.py b/instant_mesh/models/renderer/utils/math_utils.py deleted file mode 100644 index 4cf9d2b..0000000 --- a/instant_mesh/models/renderer/utils/math_utils.py +++ /dev/null @@ -1,118 +0,0 @@ -# MIT License - -# Copyright (c) 2022 Petr Kellnhofer - -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: - -# The above copyright notice and this permission notice shall be included in all -# copies or substantial portions of the Software. - -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. - -import torch - -def transform_vectors(matrix: torch.Tensor, vectors4: torch.Tensor) -> torch.Tensor: - """ - Left-multiplies MxM @ NxM. Returns NxM. - """ - res = torch.matmul(vectors4, matrix.T) - return res - - -def normalize_vecs(vectors: torch.Tensor) -> torch.Tensor: - """ - Normalize vector lengths. - """ - return vectors / (torch.norm(vectors, dim=-1, keepdim=True)) - -def torch_dot(x: torch.Tensor, y: torch.Tensor): - """ - Dot product of two tensors. - """ - return (x * y).sum(-1) - - -def get_ray_limits_box(rays_o: torch.Tensor, rays_d: torch.Tensor, box_side_length): - """ - Author: Petr Kellnhofer - Intersects rays with the [-1, 1] NDC volume. - Returns min and max distance of entry. - Returns -1 for no intersection. - https://www.scratchapixel.com/lessons/3d-basic-rendering/minimal-ray-tracer-rendering-simple-shapes/ray-box-intersection - """ - o_shape = rays_o.shape - rays_o = rays_o.detach().reshape(-1, 3) - rays_d = rays_d.detach().reshape(-1, 3) - - - bb_min = [-1*(box_side_length/2), -1*(box_side_length/2), -1*(box_side_length/2)] - bb_max = [1*(box_side_length/2), 1*(box_side_length/2), 1*(box_side_length/2)] - bounds = torch.tensor([bb_min, bb_max], dtype=rays_o.dtype, device=rays_o.device) - is_valid = torch.ones(rays_o.shape[:-1], dtype=bool, device=rays_o.device) - - # Precompute inverse for stability. - invdir = 1 / rays_d - sign = (invdir < 0).long() - - # Intersect with YZ plane. - tmin = (bounds.index_select(0, sign[..., 0])[..., 0] - rays_o[..., 0]) * invdir[..., 0] - tmax = (bounds.index_select(0, 1 - sign[..., 0])[..., 0] - rays_o[..., 0]) * invdir[..., 0] - - # Intersect with XZ plane. - tymin = (bounds.index_select(0, sign[..., 1])[..., 1] - rays_o[..., 1]) * invdir[..., 1] - tymax = (bounds.index_select(0, 1 - sign[..., 1])[..., 1] - rays_o[..., 1]) * invdir[..., 1] - - # Resolve parallel rays. - is_valid[torch.logical_or(tmin > tymax, tymin > tmax)] = False - - # Use the shortest intersection. - tmin = torch.max(tmin, tymin) - tmax = torch.min(tmax, tymax) - - # Intersect with XY plane. - tzmin = (bounds.index_select(0, sign[..., 2])[..., 2] - rays_o[..., 2]) * invdir[..., 2] - tzmax = (bounds.index_select(0, 1 - sign[..., 2])[..., 2] - rays_o[..., 2]) * invdir[..., 2] - - # Resolve parallel rays. - is_valid[torch.logical_or(tmin > tzmax, tzmin > tmax)] = False - - # Use the shortest intersection. - tmin = torch.max(tmin, tzmin) - tmax = torch.min(tmax, tzmax) - - # Mark invalid. - tmin[torch.logical_not(is_valid)] = -1 - tmax[torch.logical_not(is_valid)] = -2 - - return tmin.reshape(*o_shape[:-1], 1), tmax.reshape(*o_shape[:-1], 1) - - -def linspace(start: torch.Tensor, stop: torch.Tensor, num: int): - """ - Creates a tensor of shape [num, *start.shape] whose values are evenly spaced from start to end, inclusive. - Replicates but the multi-dimensional bahaviour of numpy.linspace in PyTorch. - """ - # create a tensor of 'num' steps from 0 to 1 - steps = torch.arange(num, dtype=torch.float32, device=start.device) / (num - 1) - - # reshape the 'steps' tensor to [-1, *([1]*start.ndim)] to allow for broadcastings - # - using 'steps.reshape([-1, *([1]*start.ndim)])' would be nice here but torchscript - # "cannot statically infer the expected size of a list in this contex", hence the code below - for i in range(start.ndim): - steps = steps.unsqueeze(-1) - - # the output starts at 'start' and increments until 'stop' in each dimension - out = start[None] + steps * (stop - start)[None] - - return out diff --git a/instant_mesh/models/renderer/utils/ray_marcher.py b/instant_mesh/models/renderer/utils/ray_marcher.py deleted file mode 100644 index ea1db43..0000000 --- a/instant_mesh/models/renderer/utils/ray_marcher.py +++ /dev/null @@ -1,72 +0,0 @@ -# SPDX-FileCopyrightText: Copyright (c) 2021-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# SPDX-License-Identifier: LicenseRef-NvidiaProprietary -# -# NVIDIA CORPORATION, its affiliates and licensors retain all intellectual -# property and proprietary rights in and to this material, related -# documentation and any modifications thereto. Any use, reproduction, -# disclosure or distribution of this material and related documentation -# without an express license agreement from NVIDIA CORPORATION or -# its affiliates is strictly prohibited. -# -# Modified by Jiale Xu -# The modifications are subject to the same license as the original. - - -""" -The ray marcher takes the raw output of the implicit representation and uses the volume rendering equation to produce composited colors and depths. -Based off of the implementation in MipNeRF (this one doesn't do any cone tracing though!) -""" - -import torch -import torch.nn as nn -import torch.nn.functional as F - - -class MipRayMarcher2(nn.Module): - def __init__(self, activation_factory): - super().__init__() - self.activation_factory = activation_factory - - def run_forward(self, colors, densities, depths, rendering_options, normals=None): - dtype = colors.dtype - deltas = depths[:, :, 1:] - depths[:, :, :-1] - colors_mid = (colors[:, :, :-1] + colors[:, :, 1:]) / 2 - densities_mid = (densities[:, :, :-1] + densities[:, :, 1:]) / 2 - depths_mid = (depths[:, :, :-1] + depths[:, :, 1:]) / 2 - - # using factory mode for better usability - densities_mid = self.activation_factory(rendering_options)(densities_mid).to(dtype) - - density_delta = densities_mid * deltas - - alpha = 1 - torch.exp(-density_delta).to(dtype) - - alpha_shifted = torch.cat([torch.ones_like(alpha[:, :, :1]), 1-alpha + 1e-10], -2) - weights = alpha * torch.cumprod(alpha_shifted, -2)[:, :, :-1] - weights = weights.to(dtype) - - composite_rgb = torch.sum(weights * colors_mid, -2) - weight_total = weights.sum(2) - # composite_depth = torch.sum(weights * depths_mid, -2) / weight_total - composite_depth = torch.sum(weights * depths_mid, -2) - - # clip the composite to min/max range of depths - composite_depth = torch.nan_to_num(composite_depth, float('inf')).to(dtype) - composite_depth = torch.clamp(composite_depth, torch.min(depths), torch.max(depths)) - - if rendering_options.get('white_back', False): - composite_rgb = composite_rgb + 1 - weight_total - - # rendered value scale is 0-1, comment out original mipnerf scaling - # composite_rgb = composite_rgb * 2 - 1 # Scale to (-1, 1) - - return composite_rgb, composite_depth, weights - - - def forward(self, colors, densities, depths, rendering_options, normals=None): - if normals is not None: - composite_rgb, composite_depth, composite_normals, weights = self.run_forward(colors, densities, depths, rendering_options, normals) - return composite_rgb, composite_depth, composite_normals, weights - - composite_rgb, composite_depth, weights = self.run_forward(colors, densities, depths, rendering_options) - return composite_rgb, composite_depth, weights diff --git a/instant_mesh/models/renderer/utils/ray_sampler.py b/instant_mesh/models/renderer/utils/ray_sampler.py deleted file mode 100644 index ae5151d..0000000 --- a/instant_mesh/models/renderer/utils/ray_sampler.py +++ /dev/null @@ -1,141 +0,0 @@ -# SPDX-FileCopyrightText: Copyright (c) 2021-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# SPDX-License-Identifier: LicenseRef-NvidiaProprietary -# -# NVIDIA CORPORATION, its affiliates and licensors retain all intellectual -# property and proprietary rights in and to this material, related -# documentation and any modifications thereto. Any use, reproduction, -# disclosure or distribution of this material and related documentation -# without an express license agreement from NVIDIA CORPORATION or -# its affiliates is strictly prohibited. -# -# Modified by Jiale Xu -# The modifications are subject to the same license as the original. - - -""" -The ray sampler is a module that takes in camera matrices and resolution and batches of rays. -Expects cam2world matrices that use the OpenCV camera coordinate system conventions. -""" - -import torch - -class RaySampler(torch.nn.Module): - def __init__(self): - super().__init__() - self.ray_origins_h, self.ray_directions, self.depths, self.image_coords, self.rendering_options = None, None, None, None, None - - - def forward(self, cam2world_matrix, intrinsics, render_size): - """ - Create batches of rays and return origins and directions. - - cam2world_matrix: (N, 4, 4) - intrinsics: (N, 3, 3) - render_size: int - - ray_origins: (N, M, 3) - ray_dirs: (N, M, 2) - """ - - dtype = cam2world_matrix.dtype - device = cam2world_matrix.device - N, M = cam2world_matrix.shape[0], render_size**2 - cam_locs_world = cam2world_matrix[:, :3, 3] - fx = intrinsics[:, 0, 0] - fy = intrinsics[:, 1, 1] - cx = intrinsics[:, 0, 2] - cy = intrinsics[:, 1, 2] - sk = intrinsics[:, 0, 1] - - uv = torch.stack(torch.meshgrid( - torch.arange(render_size, dtype=dtype, device=device), - torch.arange(render_size, dtype=dtype, device=device), - indexing='ij', - )) - uv = uv.flip(0).reshape(2, -1).transpose(1, 0) - uv = uv.unsqueeze(0).repeat(cam2world_matrix.shape[0], 1, 1) - - x_cam = uv[:, :, 0].view(N, -1) * (1./render_size) + (0.5/render_size) - y_cam = uv[:, :, 1].view(N, -1) * (1./render_size) + (0.5/render_size) - z_cam = torch.ones((N, M), dtype=dtype, device=device) - - x_lift = (x_cam - cx.unsqueeze(-1) + cy.unsqueeze(-1)*sk.unsqueeze(-1)/fy.unsqueeze(-1) - sk.unsqueeze(-1)*y_cam/fy.unsqueeze(-1)) / fx.unsqueeze(-1) * z_cam - y_lift = (y_cam - cy.unsqueeze(-1)) / fy.unsqueeze(-1) * z_cam - - cam_rel_points = torch.stack((x_lift, y_lift, z_cam, torch.ones_like(z_cam)), dim=-1).to(dtype) - - _opencv2blender = torch.tensor([ - [1, 0, 0, 0], - [0, -1, 0, 0], - [0, 0, -1, 0], - [0, 0, 0, 1], - ], dtype=dtype, device=device).unsqueeze(0).repeat(N, 1, 1) - - cam2world_matrix = torch.bmm(cam2world_matrix, _opencv2blender) - - world_rel_points = torch.bmm(cam2world_matrix, cam_rel_points.permute(0, 2, 1)).permute(0, 2, 1)[:, :, :3] - - ray_dirs = world_rel_points - cam_locs_world[:, None, :] - ray_dirs = torch.nn.functional.normalize(ray_dirs, dim=2).to(dtype) - - ray_origins = cam_locs_world.unsqueeze(1).repeat(1, ray_dirs.shape[1], 1) - - return ray_origins, ray_dirs - - -class OrthoRaySampler(torch.nn.Module): - def __init__(self): - super().__init__() - self.ray_origins_h, self.ray_directions, self.depths, self.image_coords, self.rendering_options = None, None, None, None, None - - - def forward(self, cam2world_matrix, ortho_scale, render_size): - """ - Create batches of rays and return origins and directions. - - cam2world_matrix: (N, 4, 4) - ortho_scale: float - render_size: int - - ray_origins: (N, M, 3) - ray_dirs: (N, M, 3) - """ - - N, M = cam2world_matrix.shape[0], render_size**2 - - uv = torch.stack(torch.meshgrid( - torch.arange(render_size, dtype=torch.float32, device=cam2world_matrix.device), - torch.arange(render_size, dtype=torch.float32, device=cam2world_matrix.device), - indexing='ij', - )) - uv = uv.flip(0).reshape(2, -1).transpose(1, 0) - uv = uv.unsqueeze(0).repeat(cam2world_matrix.shape[0], 1, 1) - - x_cam = uv[:, :, 0].view(N, -1) * (1./render_size) + (0.5/render_size) - y_cam = uv[:, :, 1].view(N, -1) * (1./render_size) + (0.5/render_size) - z_cam = torch.zeros((N, M), device=cam2world_matrix.device) - - x_lift = (x_cam - 0.5) * ortho_scale - y_lift = (y_cam - 0.5) * ortho_scale - - cam_rel_points = torch.stack((x_lift, y_lift, z_cam, torch.ones_like(z_cam)), dim=-1) - - _opencv2blender = torch.tensor([ - [1, 0, 0, 0], - [0, -1, 0, 0], - [0, 0, -1, 0], - [0, 0, 0, 1], - ], dtype=torch.float32, device=cam2world_matrix.device).unsqueeze(0).repeat(N, 1, 1) - - cam2world_matrix = torch.bmm(cam2world_matrix, _opencv2blender) - - ray_origins = torch.bmm(cam2world_matrix, cam_rel_points.permute(0, 2, 1)).permute(0, 2, 1)[:, :, :3] - - ray_dirs_cam = torch.stack([ - torch.zeros((N, M), device=cam2world_matrix.device), - torch.zeros((N, M), device=cam2world_matrix.device), - torch.ones((N, M), device=cam2world_matrix.device), - ], dim=-1) - ray_dirs = torch.bmm(cam2world_matrix[:, :3, :3], ray_dirs_cam.permute(0, 2, 1)).permute(0, 2, 1) - - return ray_origins, ray_dirs diff --git a/instant_mesh/models/renderer/utils/renderer.py b/instant_mesh/models/renderer/utils/renderer.py deleted file mode 100644 index 95c4c72..0000000 --- a/instant_mesh/models/renderer/utils/renderer.py +++ /dev/null @@ -1,323 +0,0 @@ -# SPDX-FileCopyrightText: Copyright (c) 2021-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# SPDX-License-Identifier: LicenseRef-NvidiaProprietary -# -# NVIDIA CORPORATION, its affiliates and licensors retain all intellectual -# property and proprietary rights in and to this material, related -# documentation and any modifications thereto. Any use, reproduction, -# disclosure or distribution of this material and related documentation -# without an express license agreement from NVIDIA CORPORATION or -# its affiliates is strictly prohibited. -# -# Modified by Jiale Xu -# The modifications are subject to the same license as the original. - - -""" -The renderer is a module that takes in rays, decides where to sample along each -ray, and computes pixel colors using the volume rendering equation. -""" - -import torch -import torch.nn as nn -import torch.nn.functional as F - -from .ray_marcher import MipRayMarcher2 -from . import math_utils - - -def generate_planes(): - """ - Defines planes by the three vectors that form the "axes" of the - plane. Should work with arbitrary number of planes and planes of - arbitrary orientation. - - Bugfix reference: https://github.com/NVlabs/eg3d/issues/67 - """ - return torch.tensor([[[1, 0, 0], - [0, 1, 0], - [0, 0, 1]], - [[1, 0, 0], - [0, 0, 1], - [0, 1, 0]], - [[0, 0, 1], - [0, 1, 0], - [1, 0, 0]]], dtype=torch.float32) - -def project_onto_planes(planes, coordinates): - """ - Does a projection of a 3D point onto a batch of 2D planes, - returning 2D plane coordinates. - - Takes plane axes of shape n_planes, 3, 3 - # Takes coordinates of shape N, M, 3 - # returns projections of shape N*n_planes, M, 2 - """ - N, M, C = coordinates.shape - n_planes, _, _ = planes.shape - coordinates = coordinates.unsqueeze(1).expand(-1, n_planes, -1, -1).reshape(N*n_planes, M, 3) - inv_planes = torch.linalg.inv(planes).unsqueeze(0).expand(N, -1, -1, -1).reshape(N*n_planes, 3, 3) - projections = torch.bmm(coordinates, inv_planes) - return projections[..., :2] - -def sample_from_planes(plane_axes, plane_features, coordinates, mode='bilinear', padding_mode='zeros', box_warp=None): - assert padding_mode == 'zeros' - N, n_planes, C, H, W = plane_features.shape - _, M, _ = coordinates.shape - plane_features = plane_features.view(N*n_planes, C, H, W) - dtype = plane_features.dtype - - coordinates = (2/box_warp) * coordinates # add specific box bounds - - projected_coordinates = project_onto_planes(plane_axes, coordinates).unsqueeze(1) - output_features = torch.nn.functional.grid_sample( - plane_features, - projected_coordinates.to(dtype), - mode=mode, - padding_mode=padding_mode, - align_corners=False, - ).permute(0, 3, 2, 1).reshape(N, n_planes, M, C) - return output_features - -def sample_from_3dgrid(grid, coordinates): - """ - Expects coordinates in shape (batch_size, num_points_per_batch, 3) - Expects grid in shape (1, channels, H, W, D) - (Also works if grid has batch size) - Returns sampled features of shape (batch_size, num_points_per_batch, feature_channels) - """ - batch_size, n_coords, n_dims = coordinates.shape - sampled_features = torch.nn.functional.grid_sample( - grid.expand(batch_size, -1, -1, -1, -1), - coordinates.reshape(batch_size, 1, 1, -1, n_dims), - mode='bilinear', - padding_mode='zeros', - align_corners=False, - ) - N, C, H, W, D = sampled_features.shape - sampled_features = sampled_features.permute(0, 4, 3, 2, 1).reshape(N, H*W*D, C) - return sampled_features - -class ImportanceRenderer(torch.nn.Module): - """ - Modified original version to filter out-of-box samples as TensoRF does. - - Reference: - TensoRF: https://github.com/apchenstu/TensoRF/blob/main/models/tensorBase.py#L277 - """ - def __init__(self): - super().__init__() - self.activation_factory = self._build_activation_factory() - self.ray_marcher = MipRayMarcher2(self.activation_factory) - self.plane_axes = generate_planes() - - def _build_activation_factory(self): - def activation_factory(options: dict): - if options['clamp_mode'] == 'softplus': - return lambda x: F.softplus(x - 1) # activation bias of -1 makes things initialize better - else: - assert False, "Renderer only supports `clamp_mode`=`softplus`!" - return activation_factory - - def _forward_pass(self, depths: torch.Tensor, ray_directions: torch.Tensor, ray_origins: torch.Tensor, - planes: torch.Tensor, decoder: nn.Module, rendering_options: dict): - """ - Additional filtering is applied to filter out-of-box samples. - Modifications made by Zexin He. - """ - - # context related variables - batch_size, num_rays, samples_per_ray, _ = depths.shape - device = depths.device - - # define sample points with depths - sample_directions = ray_directions.unsqueeze(-2).expand(-1, -1, samples_per_ray, -1).reshape(batch_size, -1, 3) - sample_coordinates = (ray_origins.unsqueeze(-2) + depths * ray_directions.unsqueeze(-2)).reshape(batch_size, -1, 3) - - # filter out-of-box samples - mask_inbox = \ - (rendering_options['sampler_bbox_min'] <= sample_coordinates) & \ - (sample_coordinates <= rendering_options['sampler_bbox_max']) - mask_inbox = mask_inbox.all(-1) - - # forward model according to all samples - _out = self.run_model(planes, decoder, sample_coordinates, sample_directions, rendering_options) - - # set out-of-box samples to zeros(rgb) & -inf(sigma) - SAFE_GUARD = 3 - DATA_TYPE = _out['sigma'].dtype - colors_pass = torch.zeros(batch_size, num_rays * samples_per_ray, 3, device=device, dtype=DATA_TYPE) - densities_pass = torch.nan_to_num(torch.full((batch_size, num_rays * samples_per_ray, 1), -float('inf'), device=device, dtype=DATA_TYPE)) / SAFE_GUARD - colors_pass[mask_inbox], densities_pass[mask_inbox] = _out['rgb'][mask_inbox], _out['sigma'][mask_inbox] - - # reshape back - colors_pass = colors_pass.reshape(batch_size, num_rays, samples_per_ray, colors_pass.shape[-1]) - densities_pass = densities_pass.reshape(batch_size, num_rays, samples_per_ray, densities_pass.shape[-1]) - - return colors_pass, densities_pass - - def forward(self, planes, decoder, ray_origins, ray_directions, rendering_options): - # self.plane_axes = self.plane_axes.to(ray_origins.device) - - if rendering_options['ray_start'] == rendering_options['ray_end'] == 'auto': - ray_start, ray_end = math_utils.get_ray_limits_box(ray_origins, ray_directions, box_side_length=rendering_options['box_warp']) - is_ray_valid = ray_end > ray_start - if torch.any(is_ray_valid).item(): - ray_start[~is_ray_valid] = ray_start[is_ray_valid].min() - ray_end[~is_ray_valid] = ray_start[is_ray_valid].max() - depths_coarse = self.sample_stratified(ray_origins, ray_start, ray_end, rendering_options['depth_resolution'], rendering_options['disparity_space_sampling']) - else: - # Create stratified depth samples - depths_coarse = self.sample_stratified(ray_origins, rendering_options['ray_start'], rendering_options['ray_end'], rendering_options['depth_resolution'], rendering_options['disparity_space_sampling']) - - # Coarse Pass - colors_coarse, densities_coarse = self._forward_pass( - depths=depths_coarse, ray_directions=ray_directions, ray_origins=ray_origins, - planes=planes, decoder=decoder, rendering_options=rendering_options) - - # Fine Pass - N_importance = rendering_options['depth_resolution_importance'] - if N_importance > 0: - _, _, weights = self.ray_marcher(colors_coarse, densities_coarse, depths_coarse, rendering_options) - - depths_fine = self.sample_importance(depths_coarse, weights, N_importance) - - colors_fine, densities_fine = self._forward_pass( - depths=depths_fine, ray_directions=ray_directions, ray_origins=ray_origins, - planes=planes, decoder=decoder, rendering_options=rendering_options) - - all_depths, all_colors, all_densities = self.unify_samples(depths_coarse, colors_coarse, densities_coarse, - depths_fine, colors_fine, densities_fine) - - rgb_final, depth_final, weights = self.ray_marcher(all_colors, all_densities, all_depths, rendering_options) - else: - rgb_final, depth_final, weights = self.ray_marcher(colors_coarse, densities_coarse, depths_coarse, rendering_options) - - return rgb_final, depth_final, weights.sum(2) - - def run_model(self, planes, decoder, sample_coordinates, sample_directions, options): - plane_axes = self.plane_axes.to(planes.device) - sampled_features = sample_from_planes(plane_axes, planes, sample_coordinates, padding_mode='zeros', box_warp=options['box_warp']) - - out = decoder(sampled_features, sample_directions) - if options.get('density_noise', 0) > 0: - out['sigma'] += torch.randn_like(out['sigma']) * options['density_noise'] - return out - - def run_model_activated(self, planes, decoder, sample_coordinates, sample_directions, options): - out = self.run_model(planes, decoder, sample_coordinates, sample_directions, options) - out['sigma'] = self.activation_factory(options)(out['sigma']) - return out - - def sort_samples(self, all_depths, all_colors, all_densities): - _, indices = torch.sort(all_depths, dim=-2) - all_depths = torch.gather(all_depths, -2, indices) - all_colors = torch.gather(all_colors, -2, indices.expand(-1, -1, -1, all_colors.shape[-1])) - all_densities = torch.gather(all_densities, -2, indices.expand(-1, -1, -1, 1)) - return all_depths, all_colors, all_densities - - def unify_samples(self, depths1, colors1, densities1, depths2, colors2, densities2, normals1=None, normals2=None): - all_depths = torch.cat([depths1, depths2], dim = -2) - all_colors = torch.cat([colors1, colors2], dim = -2) - all_densities = torch.cat([densities1, densities2], dim = -2) - - if normals1 is not None and normals2 is not None: - all_normals = torch.cat([normals1, normals2], dim = -2) - else: - all_normals = None - - _, indices = torch.sort(all_depths, dim=-2) - all_depths = torch.gather(all_depths, -2, indices) - all_colors = torch.gather(all_colors, -2, indices.expand(-1, -1, -1, all_colors.shape[-1])) - all_densities = torch.gather(all_densities, -2, indices.expand(-1, -1, -1, 1)) - - if all_normals is not None: - all_normals = torch.gather(all_normals, -2, indices.expand(-1, -1, -1, all_normals.shape[-1])) - return all_depths, all_colors, all_normals, all_densities - - return all_depths, all_colors, all_densities - - def sample_stratified(self, ray_origins, ray_start, ray_end, depth_resolution, disparity_space_sampling=False): - """ - Return depths of approximately uniformly spaced samples along rays. - """ - N, M, _ = ray_origins.shape - if disparity_space_sampling: - depths_coarse = torch.linspace(0, - 1, - depth_resolution, - device=ray_origins.device).reshape(1, 1, depth_resolution, 1).repeat(N, M, 1, 1) - depth_delta = 1/(depth_resolution - 1) - depths_coarse += torch.rand_like(depths_coarse) * depth_delta - depths_coarse = 1./(1./ray_start * (1. - depths_coarse) + 1./ray_end * depths_coarse) - else: - if type(ray_start) == torch.Tensor: - depths_coarse = math_utils.linspace(ray_start, ray_end, depth_resolution).permute(1,2,0,3) - depth_delta = (ray_end - ray_start) / (depth_resolution - 1) - depths_coarse += torch.rand_like(depths_coarse) * depth_delta[..., None] - else: - depths_coarse = torch.linspace(ray_start, ray_end, depth_resolution, device=ray_origins.device).reshape(1, 1, depth_resolution, 1).repeat(N, M, 1, 1) - depth_delta = (ray_end - ray_start)/(depth_resolution - 1) - depths_coarse += torch.rand_like(depths_coarse) * depth_delta - - return depths_coarse - - def sample_importance(self, z_vals, weights, N_importance): - """ - Return depths of importance sampled points along rays. See NeRF importance sampling for more. - """ - with torch.no_grad(): - batch_size, num_rays, samples_per_ray, _ = z_vals.shape - - z_vals = z_vals.reshape(batch_size * num_rays, samples_per_ray) - weights = weights.reshape(batch_size * num_rays, -1) # -1 to account for loss of 1 sample in MipRayMarcher - - # smooth weights - weights = torch.nn.functional.max_pool1d(weights.unsqueeze(1), 2, 1, padding=1) - weights = torch.nn.functional.avg_pool1d(weights, 2, 1).squeeze() - weights = weights + 0.01 - - z_vals_mid = 0.5 * (z_vals[: ,:-1] + z_vals[: ,1:]) - importance_z_vals = self.sample_pdf(z_vals_mid, weights[:, 1:-1], - N_importance).detach().reshape(batch_size, num_rays, N_importance, 1) - return importance_z_vals - - def sample_pdf(self, bins, weights, N_importance, det=False, eps=1e-5): - """ - Sample @N_importance samples from @bins with distribution defined by @weights. - Inputs: - bins: (N_rays, N_samples_+1) where N_samples_ is "the number of coarse samples per ray - 2" - weights: (N_rays, N_samples_) - N_importance: the number of samples to draw from the distribution - det: deterministic or not - eps: a small number to prevent division by zero - Outputs: - samples: the sampled samples - """ - N_rays, N_samples_ = weights.shape - weights = weights + eps # prevent division by zero (don't do inplace op!) - pdf = weights / torch.sum(weights, -1, keepdim=True) # (N_rays, N_samples_) - cdf = torch.cumsum(pdf, -1) # (N_rays, N_samples), cumulative distribution function - cdf = torch.cat([torch.zeros_like(cdf[: ,:1]), cdf], -1) # (N_rays, N_samples_+1) - # padded to 0~1 inclusive - - if det: - u = torch.linspace(0, 1, N_importance, device=bins.device) - u = u.expand(N_rays, N_importance) - else: - u = torch.rand(N_rays, N_importance, device=bins.device) - u = u.contiguous() - - inds = torch.searchsorted(cdf, u, right=True) - below = torch.clamp_min(inds-1, 0) - above = torch.clamp_max(inds, N_samples_) - - inds_sampled = torch.stack([below, above], -1).view(N_rays, 2*N_importance) - cdf_g = torch.gather(cdf, 1, inds_sampled).view(N_rays, N_importance, 2) - bins_g = torch.gather(bins, 1, inds_sampled).view(N_rays, N_importance, 2) - - denom = cdf_g[...,1]-cdf_g[...,0] - denom[denom 0 and radius > 0 - - elevation = np.deg2rad(elevation) - - camera_positions = [] - for i in range(M): - azimuth = 2 * np.pi * i / M - x = radius * np.cos(elevation) * np.cos(azimuth) - y = radius * np.cos(elevation) * np.sin(azimuth) - z = radius * np.sin(elevation) - camera_positions.append([x, y, z]) - camera_positions = np.array(camera_positions) - camera_positions = torch.from_numpy(camera_positions).float() - extrinsics = center_looking_at_camera_pose(camera_positions) - return extrinsics - -def FOV_to_intrinsics(fov, device='cpu'): - """ - Creates a 3x3 camera intrinsics matrix from the camera field of view, specified in degrees. - Note the intrinsics are returned as normalized by image size, rather than in pixel units. - Assumes principal point is at image center. - """ - focal_length = 0.5 / np.tan(np.deg2rad(fov) * 0.5) - intrinsics = torch.tensor([[focal_length, 0, 0.5], [0, focal_length, 0.5], [0, 0, 1]], device=device) - return intrinsics - -def oribt_camera_poses_to_input_cameras(azimuths, elevations, batch_size=1, radius=4.0, fov=30.0): - """ - Args: - azimuths (list) - elevations (list) - radius (float or list) - """ - # (0, 180/-180, 0) -> (0, 180, 360) - azimuths = [360 + angle if angle < 0 else angle for angle in azimuths] - azimuths = np.array(azimuths).astype(float) - elevations = -np.array(elevations).astype(float) - if isinstance(radius, list): - radius = np.array(radius).astype(float) - - c2ws = spherical_camera_pose(azimuths, elevations, radius) - c2ws = c2ws.float().flatten(-2) - - Ks = FOV_to_intrinsics(fov).unsqueeze(0).repeat(azimuths.shape[0], 1, 1).float().flatten(-2) - - extrinsics = c2ws[:, :12] - intrinsics = torch.stack([Ks[:, 0], Ks[:, 4], Ks[:, 2], Ks[:, 5]], dim=-1) - cameras = torch.cat([extrinsics, intrinsics], dim=-1) - - return cameras.unsqueeze(0).repeat(batch_size, 1, 1) diff --git a/instant_mesh/utils/infer_util.py b/instant_mesh/utils/infer_util.py deleted file mode 100644 index f2faf2b..0000000 --- a/instant_mesh/utils/infer_util.py +++ /dev/null @@ -1,97 +0,0 @@ -import os -import imageio -import rembg -import torch -import numpy as np -import PIL.Image -from PIL import Image -from typing import Any - - -def remove_background(image: PIL.Image.Image, - rembg_session: Any = None, - force: bool = False, - **rembg_kwargs, -) -> PIL.Image.Image: - do_remove = True - if image.mode == "RGBA" and image.getextrema()[3][0] < 255: - do_remove = False - do_remove = do_remove or force - if do_remove: - image = rembg.remove(image, session=rembg_session, **rembg_kwargs) - return image - - -def resize_foreground( - image: PIL.Image.Image, - ratio: float, -) -> PIL.Image.Image: - image = np.array(image) - assert image.shape[-1] == 4 - alpha = np.where(image[..., 3] > 0) - y1, y2, x1, x2 = ( - alpha[0].min(), - alpha[0].max(), - alpha[1].min(), - alpha[1].max(), - ) - # crop the foreground - fg = image[y1:y2, x1:x2] - # pad to square - size = max(fg.shape[0], fg.shape[1]) - ph0, pw0 = (size - fg.shape[0]) // 2, (size - fg.shape[1]) // 2 - ph1, pw1 = size - fg.shape[0] - ph0, size - fg.shape[1] - pw0 - new_image = np.pad( - fg, - ((ph0, ph1), (pw0, pw1), (0, 0)), - mode="constant", - constant_values=((0, 0), (0, 0), (0, 0)), - ) - - # compute padding according to the ratio - new_size = int(new_image.shape[0] / ratio) - # pad to size, double side - ph0, pw0 = (new_size - size) // 2, (new_size - size) // 2 - ph1, pw1 = new_size - size - ph0, new_size - size - pw0 - new_image = np.pad( - new_image, - ((ph0, ph1), (pw0, pw1), (0, 0)), - mode="constant", - constant_values=((0, 0), (0, 0), (0, 0)), - ) - new_image = PIL.Image.fromarray(new_image) - return new_image - - -def images_to_video( - images: torch.Tensor, - output_path: str, - fps: int = 30, -) -> None: - # images: (N, C, H, W) - video_dir = os.path.dirname(output_path) - video_name = os.path.basename(output_path) - os.makedirs(video_dir, exist_ok=True) - - frames = [] - for i in range(len(images)): - frame = (images[i].permute(1, 2, 0).cpu().numpy() * 255).astype(np.uint8) - assert frame.shape[0] == images.shape[2] and frame.shape[1] == images.shape[3], \ - f"Frame shape mismatch: {frame.shape} vs {images.shape}" - assert frame.min() >= 0 and frame.max() <= 255, \ - f"Frame value out of range: {frame.min()} ~ {frame.max()}" - frames.append(frame) - imageio.mimwrite(output_path, np.stack(frames), fps=fps, quality=10) - - -def save_video( - frames: torch.Tensor, - output_path: str, - fps: int = 30, -) -> None: - # images: (N, C, H, W) - frames = [(frame.permute(1, 2, 0).cpu().numpy() * 255).astype(np.uint8) for frame in frames] - writer = imageio.get_writer(output_path, fps=fps) - for frame in frames: - writer.append_data(frame) - writer.close() \ No newline at end of file diff --git a/instant_mesh/utils/mesh_util.py b/instant_mesh/utils/mesh_util.py deleted file mode 100644 index 0ec4663..0000000 --- a/instant_mesh/utils/mesh_util.py +++ /dev/null @@ -1,181 +0,0 @@ -# Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# -# NVIDIA CORPORATION & AFFILIATES and its licensors retain all intellectual property -# and proprietary rights in and to this software, related documentation -# and any modifications thereto. Any use, reproduction, disclosure or -# distribution of this software and related documentation without an express -# license agreement from NVIDIA CORPORATION & AFFILIATES is strictly prohibited. - -import torch -import xatlas -import trimesh -import cv2 -import numpy as np -import nvdiffrast.torch as dr -from PIL import Image - - -def save_obj(pointnp_px3, facenp_fx3, colornp_px3, fpath): - - pointnp_px3 = pointnp_px3 @ np.array([[1, 0, 0], [0, 1, 0], [0, 0, -1]]) - facenp_fx3 = facenp_fx3[:, [2, 1, 0]] - - mesh = trimesh.Trimesh( - vertices=pointnp_px3, - faces=facenp_fx3, - vertex_colors=colornp_px3, - ) - mesh.export(fpath, 'obj') - - -def save_glb(pointnp_px3, facenp_fx3, colornp_px3, fpath): - - pointnp_px3 = pointnp_px3 @ np.array([[-1, 0, 0], [0, 1, 0], [0, 0, -1]]) - - mesh = trimesh.Trimesh( - vertices=pointnp_px3, - faces=facenp_fx3, - vertex_colors=colornp_px3, - ) - mesh.export(fpath, 'glb') - - -def save_obj_with_mtl(pointnp_px3, tcoords_px2, facenp_fx3, facetex_fx3, texmap_hxwx3, fname): - import os - fol, na = os.path.split(fname) - na, _ = os.path.splitext(na) - - matname = '%s/%s.mtl' % (fol, na) - fid = open(matname, 'w') - fid.write('newmtl material_0\n') - fid.write('Kd 1 1 1\n') - fid.write('Ka 0 0 0\n') - fid.write('Ks 0.4 0.4 0.4\n') - fid.write('Ns 10\n') - fid.write('illum 2\n') - fid.write('map_Kd %s.png\n' % na) - fid.close() - #### - - fid = open(fname, 'w') - fid.write('mtllib %s.mtl\n' % na) - - for pidx, p in enumerate(pointnp_px3): - pp = p - fid.write('v %f %f %f\n' % (pp[0], pp[1], pp[2])) - - for pidx, p in enumerate(tcoords_px2): - pp = p - fid.write('vt %f %f\n' % (pp[0], pp[1])) - - fid.write('usemtl material_0\n') - for i, f in enumerate(facenp_fx3): - f1 = f + 1 - f2 = facetex_fx3[i] + 1 - fid.write('f %d/%d %d/%d %d/%d\n' % (f1[0], f2[0], f1[1], f2[1], f1[2], f2[2])) - fid.close() - - # save texture map - lo, hi = 0, 1 - img = np.asarray(texmap_hxwx3, dtype=np.float32) - img = (img - lo) * (255 / (hi - lo)) - img = img.clip(0, 255) - mask = np.sum(img.astype(np.float32), axis=-1, keepdims=True) - mask = (mask <= 3.0).astype(np.float32) - kernel = np.ones((3, 3), 'uint8') - dilate_img = cv2.dilate(img, kernel, iterations=1) - img = img * (1 - mask) + dilate_img * mask - img = img.clip(0, 255).astype(np.uint8) - Image.fromarray(np.ascontiguousarray(img[::-1, :, :]), 'RGB').save(f'{fol}/{na}.png') - - -def loadobj(meshfile): - v = [] - f = [] - meshfp = open(meshfile, 'r') - for line in meshfp.readlines(): - data = line.strip().split(' ') - data = [da for da in data if len(da) > 0] - if len(data) != 4: - continue - if data[0] == 'v': - v.append([float(d) for d in data[1:]]) - if data[0] == 'f': - data = [da.split('/')[0] for da in data] - f.append([int(d) for d in data[1:]]) - meshfp.close() - - # torch need int64 - facenp_fx3 = np.array(f, dtype=np.int64) - 1 - pointnp_px3 = np.array(v, dtype=np.float32) - return pointnp_px3, facenp_fx3 - - -def loadobjtex(meshfile): - v = [] - vt = [] - f = [] - ft = [] - meshfp = open(meshfile, 'r') - for line in meshfp.readlines(): - data = line.strip().split(' ') - data = [da for da in data if len(da) > 0] - if not ((len(data) == 3) or (len(data) == 4) or (len(data) == 5)): - continue - if data[0] == 'v': - assert len(data) == 4 - - v.append([float(d) for d in data[1:]]) - if data[0] == 'vt': - if len(data) == 3 or len(data) == 4: - vt.append([float(d) for d in data[1:3]]) - if data[0] == 'f': - data = [da.split('/') for da in data] - if len(data) == 4: - f.append([int(d[0]) for d in data[1:]]) - ft.append([int(d[1]) for d in data[1:]]) - elif len(data) == 5: - idx1 = [1, 2, 3] - data1 = [data[i] for i in idx1] - f.append([int(d[0]) for d in data1]) - ft.append([int(d[1]) for d in data1]) - idx2 = [1, 3, 4] - data2 = [data[i] for i in idx2] - f.append([int(d[0]) for d in data2]) - ft.append([int(d[1]) for d in data2]) - meshfp.close() - - # torch need int64 - facenp_fx3 = np.array(f, dtype=np.int64) - 1 - ftnp_fx3 = np.array(ft, dtype=np.int64) - 1 - pointnp_px3 = np.array(v, dtype=np.float32) - uvs = np.array(vt, dtype=np.float32) - return pointnp_px3, facenp_fx3, uvs, ftnp_fx3 - - -# ============================================================================================== -def interpolate(attr, rast, attr_idx, rast_db=None): - return dr.interpolate(attr.contiguous(), rast, attr_idx, rast_db=rast_db, diff_attrs=None if rast_db is None else 'all') - - -def xatlas_uvmap(ctx, mesh_v, mesh_pos_idx, resolution): - vmapping, indices, uvs = xatlas.parametrize(mesh_v.detach().cpu().numpy(), mesh_pos_idx.detach().cpu().numpy()) - - # Convert to tensors - indices_int64 = indices.astype(np.uint64, casting='same_kind').view(np.int64) - - uvs = torch.tensor(uvs, dtype=torch.float32, device=mesh_v.device) - mesh_tex_idx = torch.tensor(indices_int64, dtype=torch.int64, device=mesh_v.device) - # mesh_v_tex. ture - uv_clip = uvs[None, ...] * 2.0 - 1.0 - - # pad to four component coordinate - uv_clip4 = torch.cat((uv_clip, torch.zeros_like(uv_clip[..., 0:1]), torch.ones_like(uv_clip[..., 0:1])), dim=-1) - - # rasterize - rast, _ = dr.rasterize(ctx, uv_clip4, mesh_tex_idx.int(), (resolution, resolution)) - - # Interpolate world space position - gb_pos, _ = interpolate(mesh_v[None, ...], rast, mesh_pos_idx.int()) - mask = rast[..., 3:4] > 0 - return uvs, mesh_tex_idx, gb_pos, mask diff --git a/instant_mesh/utils/train_util.py b/instant_mesh/utils/train_util.py deleted file mode 100644 index 2e65421..0000000 --- a/instant_mesh/utils/train_util.py +++ /dev/null @@ -1,26 +0,0 @@ -import importlib - - -def count_params(model, verbose=False): - total_params = sum(p.numel() for p in model.parameters()) - if verbose: - print(f"{model.__class__.__name__} has {total_params*1.e-6:.2f} M params.") - return total_params - - -def instantiate_from_config(config): - if not "target" in config: - if config == '__is_first_stage__': - return None - elif config == "__is_unconditional__": - return None - raise KeyError("Expected key `target` to instantiate.") - return get_obj_from_str(config["target"])(**config.get("params", dict())) - - -def get_obj_from_str(string, reload=False): - module, cls = string.rsplit(".", 1) - if reload: - module_imp = importlib.import_module(module) - importlib.reload(module_imp) - return getattr(importlib.import_module(module, package=None), cls) diff --git a/lgm/acc_configs/gpu1.yaml b/lgm/acc_configs/gpu1.yaml deleted file mode 100644 index bbbabf2..0000000 --- a/lgm/acc_configs/gpu1.yaml +++ /dev/null @@ -1,15 +0,0 @@ -compute_environment: LOCAL_MACHINE -debug: false -distributed_type: 'NO' -downcast_bf16: 'no' -machine_rank: 0 -main_training_function: main -mixed_precision: bf16 -num_machines: 1 -num_processes: 1 -rdzv_backend: static -same_network: true -tpu_env: [] -tpu_use_cluster: false -tpu_use_sudo: false -use_cpu: false diff --git a/lgm/acc_configs/gpu4.yaml b/lgm/acc_configs/gpu4.yaml deleted file mode 100644 index 6f4c538..0000000 --- a/lgm/acc_configs/gpu4.yaml +++ /dev/null @@ -1,15 +0,0 @@ -compute_environment: LOCAL_MACHINE -debug: false -distributed_type: MULTI_GPU -downcast_bf16: 'no' -machine_rank: 0 -main_training_function: main -mixed_precision: fp16 -num_machines: 1 -num_processes: 4 -rdzv_backend: static -same_network: true -tpu_env: [] -tpu_use_cluster: false -tpu_use_sudo: false -use_cpu: false diff --git a/lgm/acc_configs/gpu6.yaml b/lgm/acc_configs/gpu6.yaml deleted file mode 100644 index 32ef41c..0000000 --- a/lgm/acc_configs/gpu6.yaml +++ /dev/null @@ -1,15 +0,0 @@ -compute_environment: LOCAL_MACHINE -debug: false -distributed_type: MULTI_GPU -downcast_bf16: 'no' -machine_rank: 0 -main_training_function: main -mixed_precision: fp16 -num_machines: 1 -num_processes: 6 -rdzv_backend: static -same_network: true -tpu_env: [] -tpu_use_cluster: false -tpu_use_sudo: false -use_cpu: false diff --git a/lgm/acc_configs/gpu8.yaml b/lgm/acc_configs/gpu8.yaml deleted file mode 100644 index 46b5c35..0000000 --- a/lgm/acc_configs/gpu8.yaml +++ /dev/null @@ -1,15 +0,0 @@ -compute_environment: LOCAL_MACHINE -debug: false -distributed_type: MULTI_GPU -downcast_bf16: 'no' -machine_rank: 0 -main_training_function: main -mixed_precision: bf16 -num_machines: 1 -num_processes: 8 -rdzv_backend: static -same_network: true -tpu_env: [] -tpu_use_cluster: false -tpu_use_sudo: false -use_cpu: false diff --git a/lgm/core/__init__.py b/lgm/core/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/lgm/core/attention.py b/lgm/core/attention.py deleted file mode 100644 index 8e74717..0000000 --- a/lgm/core/attention.py +++ /dev/null @@ -1,158 +0,0 @@ -# Copyright (c) Meta Platforms, Inc. and affiliates. -# -# This source code is licensed under the Apache License, Version 2.0 -# found in the LICENSE file in the root directory of this source tree. - -# References: -# https://github.com/facebookresearch/dino/blob/master/vision_transformer.py -# https://github.com/rwightman/pytorch-image-models/tree/master/timm/models/vision_transformer.py - -import os -import logging - -from torch import Tensor -from torch import nn -from .utils import setup_logger - -setup_logger('', logging.INFO, [logging.INFO, logging.WARNING], [logging.ERROR, logging.CRITICAL], logging.Formatter('%(message)s')) - -XFORMERS_ENABLED = os.environ.get("XFORMERS_DISABLED") is None -try: - if XFORMERS_ENABLED: - from xformers.ops import memory_efficient_attention, unbind - - XFORMERS_AVAILABLE = True - logging.warn("xFormers is available (Attention)") - else: - logging.warn("xFormers is disabled (Attention)") - raise ImportError -except ImportError: - XFORMERS_AVAILABLE = False - logging.warn("xFormers is not available (Attention)") - -class Attention(nn.Module): - def __init__( - self, - dim: int, - num_heads: int = 8, - qkv_bias: bool = False, - proj_bias: bool = True, - attn_drop: float = 0.0, - proj_drop: float = 0.0, - ) -> None: - super().__init__() - self.num_heads = num_heads - head_dim = dim // num_heads - self.scale = head_dim**-0.5 - - self.qkv = nn.Linear(dim, dim * 3, bias=qkv_bias) - self.attn_drop = nn.Dropout(attn_drop) - self.proj = nn.Linear(dim, dim, bias=proj_bias) - self.proj_drop = nn.Dropout(proj_drop) - - def forward(self, x: Tensor) -> Tensor: - B, N, C = x.shape - qkv = self.qkv(x).reshape(B, N, 3, self.num_heads, C // self.num_heads).permute(2, 0, 3, 1, 4) - - q, k, v = qkv[0] * self.scale, qkv[1], qkv[2] - attn = q @ k.transpose(-2, -1) - - attn = attn.softmax(dim=-1) - attn = self.attn_drop(attn) - - x = (attn @ v).transpose(1, 2).reshape(B, N, C) - x = self.proj(x) - x = self.proj_drop(x) - return x - - -class MemEffAttention(Attention): - def forward(self, x: Tensor, attn_bias=None) -> Tensor: - if not XFORMERS_AVAILABLE: - if attn_bias is not None: - raise AssertionError("xFormers is required for using nested tensors") - return super().forward(x) - - B, N, C = x.shape - qkv = self.qkv(x).reshape(B, N, 3, self.num_heads, C // self.num_heads) - - q, k, v = unbind(qkv, 2) - - x = memory_efficient_attention(q, k, v, attn_bias=attn_bias) - x = x.reshape([B, N, C]) - - x = self.proj(x) - x = self.proj_drop(x) - return x - - -class CrossAttention(nn.Module): - def __init__( - self, - dim: int, - dim_q: int, - dim_k: int, - dim_v: int, - num_heads: int = 8, - qkv_bias: bool = False, - proj_bias: bool = True, - attn_drop: float = 0.0, - proj_drop: float = 0.0, - ) -> None: - super().__init__() - self.dim = dim - self.num_heads = num_heads - head_dim = dim // num_heads - self.scale = head_dim**-0.5 - - self.to_q = nn.Linear(dim_q, dim, bias=qkv_bias) - self.to_k = nn.Linear(dim_k, dim, bias=qkv_bias) - self.to_v = nn.Linear(dim_v, dim, bias=qkv_bias) - self.attn_drop = nn.Dropout(attn_drop) - self.proj = nn.Linear(dim, dim, bias=proj_bias) - self.proj_drop = nn.Dropout(proj_drop) - - def forward(self, q: Tensor, k: Tensor, v: Tensor) -> Tensor: - # q: [B, N, Cq] - # k: [B, M, Ck] - # v: [B, M, Cv] - # return: [B, N, C] - - B, N, _ = q.shape - M = k.shape[1] - - q = self.scale * self.to_q(q).reshape(B, N, self.num_heads, self.dim // self.num_heads).permute(0, 2, 1, 3) # [B, nh, N, C/nh] - k = self.to_k(k).reshape(B, M, self.num_heads, self.dim // self.num_heads).permute(0, 2, 1, 3) # [B, nh, M, C/nh] - v = self.to_v(v).reshape(B, M, self.num_heads, self.dim // self.num_heads).permute(0, 2, 1, 3) # [B, nh, M, C/nh] - - attn = q @ k.transpose(-2, -1) # [B, nh, N, M] - - attn = attn.softmax(dim=-1) # [B, nh, N, M] - attn = self.attn_drop(attn) - - x = (attn @ v).transpose(1, 2).reshape(B, N, -1) # [B, nh, N, M] @ [B, nh, M, C/nh] --> [B, nh, N, C/nh] --> [B, N, nh, C/nh] --> [B, N, C] - x = self.proj(x) - x = self.proj_drop(x) - return x - - -class MemEffCrossAttention(CrossAttention): - def forward(self, q: Tensor, k: Tensor, v: Tensor, attn_bias=None) -> Tensor: - if not XFORMERS_AVAILABLE: - if attn_bias is not None: - raise AssertionError("xFormers is required for using nested tensors") - return super().forward(x) - - B, N, _ = q.shape - M = k.shape[1] - - q = self.scale * self.to_q(q).reshape(B, N, self.num_heads, self.dim // self.num_heads) # [B, N, nh, C/nh] - k = self.to_k(k).reshape(B, M, self.num_heads, self.dim // self.num_heads) # [B, M, nh, C/nh] - v = self.to_v(v).reshape(B, M, self.num_heads, self.dim // self.num_heads) # [B, M, nh, C/nh] - - x = memory_efficient_attention(q, k, v, attn_bias=attn_bias) - x = x.reshape(B, N, -1) - - x = self.proj(x) - x = self.proj_drop(x) - return x diff --git a/lgm/core/gs.py b/lgm/core/gs.py deleted file mode 100644 index f84274d..0000000 --- a/lgm/core/gs.py +++ /dev/null @@ -1,186 +0,0 @@ -import numpy as np - -import torch -import torch.nn as nn -import torch.nn.functional as F - -from diff_gaussian_rasterization import ( - GaussianRasterizationSettings, - GaussianRasterizer, -) - -from lgm.core.options import Options - -import kiui - -class GaussianRenderer: - def __init__(self, opt: Options): - - self.opt = opt - self.bg_color = torch.tensor([1, 1, 1], dtype=torch.float32, device="cuda") - - # intrinsics - self.tan_half_fov = np.tan(0.5 * np.deg2rad(self.opt.fovy)) - self.proj_matrix = torch.zeros(4, 4, dtype=torch.float32) - self.proj_matrix[0, 0] = 1 / self.tan_half_fov - self.proj_matrix[1, 1] = 1 / self.tan_half_fov - self.proj_matrix[2, 2] = (opt.zfar + opt.znear) / (opt.zfar - opt.znear) - self.proj_matrix[3, 2] = - (opt.zfar * opt.znear) / (opt.zfar - opt.znear) - self.proj_matrix[2, 3] = 1 - - def render(self, gaussians, cam_view, cam_view_proj, cam_pos, bg_color=None, scale_modifier=1): - # gaussians: [B, N, 14] - # cam_view, cam_view_proj: [B, V, 4, 4] - # cam_pos: [B, V, 3] - - device = gaussians.device - B, V = cam_view.shape[:2] - - # loop of loop... - images = [] - alphas = [] - for b in range(B): - - # pos, opacity, scale, rotation, shs - means3D = gaussians[b, :, 0:3].contiguous().float() - opacity = gaussians[b, :, 3:4].contiguous().float() - scales = gaussians[b, :, 4:7].contiguous().float() - rotations = gaussians[b, :, 7:11].contiguous().float() - rgbs = gaussians[b, :, 11:].contiguous().float() # [N, 3] - - for v in range(V): - - # render novel views - view_matrix = cam_view[b, v].float() - view_proj_matrix = cam_view_proj[b, v].float() - campos = cam_pos[b, v].float() - - raster_settings = GaussianRasterizationSettings( - image_height=self.opt.output_size, - image_width=self.opt.output_size, - tanfovx=self.tan_half_fov, - tanfovy=self.tan_half_fov, - bg=self.bg_color if bg_color is None else bg_color, - scale_modifier=scale_modifier, - viewmatrix=view_matrix, - projmatrix=view_proj_matrix, - sh_degree=0, - campos=campos, - prefiltered=False, - debug=False, - ) - - rasterizer = GaussianRasterizer(raster_settings=raster_settings) - - # Rasterize visible Gaussians to image, obtain their radii (on screen). - rendered_image, radii, rendered_depth, rendered_alpha = rasterizer( - means3D=means3D, - means2D=torch.zeros_like(means3D, dtype=torch.float32, device=device), - shs=None, - colors_precomp=rgbs, - opacities=opacity, - scales=scales, - rotations=rotations, - cov3D_precomp=None, - ) - - rendered_image = rendered_image.clamp(0, 1) - - images.append(rendered_image) - alphas.append(rendered_alpha) - - images = torch.stack(images, dim=0).view(B, V, 3, self.opt.output_size, self.opt.output_size) - alphas = torch.stack(alphas, dim=0).view(B, V, 1, self.opt.output_size, self.opt.output_size) - - return { - "image": images, # [B, V, 3, H, W] - "alpha": alphas, # [B, V, 1, H, W] - } - - - def to_ply(self, gaussians, compatible=True): - # gaussians: [B, N, 14] - # compatible: save pre-activated gaussians as in the original paper - - assert gaussians.shape[0] == 1, 'only support batch size 1' - - from plyfile import PlyData, PlyElement - - means3D = gaussians[0, :, 0:3].contiguous().float() - opacity = gaussians[0, :, 3:4].contiguous().float() - scales = gaussians[0, :, 4:7].contiguous().float() - rotations = gaussians[0, :, 7:11].contiguous().float() - shs = gaussians[0, :, 11:].unsqueeze(1).contiguous().float() # [N, 1, 3] - - # prune by opacity - mask = opacity.squeeze(-1) >= 0.005 - means3D = means3D[mask] - opacity = opacity[mask] - scales = scales[mask] - rotations = rotations[mask] - shs = shs[mask] - - # invert activation to make it compatible with the original ply format - if compatible: - opacity = kiui.op.inverse_sigmoid(opacity) - scales = torch.log(scales + 1e-8) - shs = (shs - 0.5) / 0.28209479177387814 - - xyzs = means3D.detach().cpu().numpy() - f_dc = shs.detach().transpose(1, 2).flatten(start_dim=1).contiguous().cpu().numpy() - opacities = opacity.detach().cpu().numpy() - scales = scales.detach().cpu().numpy() - rotations = rotations.detach().cpu().numpy() - - l = ['x', 'y', 'z'] - # All channels except the 3 DC - for i in range(f_dc.shape[1]): - l.append('f_dc_{}'.format(i)) - l.append('opacity') - for i in range(scales.shape[1]): - l.append('scale_{}'.format(i)) - for i in range(rotations.shape[1]): - l.append('rot_{}'.format(i)) - - dtype_full = [(attribute, 'f4') for attribute in l] - - elements = np.empty(xyzs.shape[0], dtype=dtype_full) - attributes = np.concatenate((xyzs, f_dc, opacities, scales, rotations), axis=1) - elements[:] = list(map(tuple, attributes)) - el = PlyElement.describe(elements, 'vertex') - - return PlyData([el]) - - def create_from_ply(self, plydata, compatible=True): - - xyz = np.stack((np.asarray(plydata.elements[0]["x"]), - np.asarray(plydata.elements[0]["y"]), - np.asarray(plydata.elements[0]["z"])), axis=1) - print("Number of points at loading : ", xyz.shape[0]) - - opacities = np.asarray(plydata.elements[0]["opacity"])[..., np.newaxis] - - shs = np.zeros((xyz.shape[0], 3)) - shs[:, 0] = np.asarray(plydata.elements[0]["f_dc_0"]) - shs[:, 1] = np.asarray(plydata.elements[0]["f_dc_1"]) - shs[:, 2] = np.asarray(plydata.elements[0]["f_dc_2"]) - - scale_names = [p.name for p in plydata.elements[0].properties if p.name.startswith("scale_")] - scales = np.zeros((xyz.shape[0], len(scale_names))) - for idx, attr_name in enumerate(scale_names): - scales[:, idx] = np.asarray(plydata.elements[0][attr_name]) - - rot_names = [p.name for p in plydata.elements[0].properties if p.name.startswith("rot_")] - rots = np.zeros((xyz.shape[0], len(rot_names))) - for idx, attr_name in enumerate(rot_names): - rots[:, idx] = np.asarray(plydata.elements[0][attr_name]) - - gaussians = np.concatenate([xyz, opacities, scales, rots, shs], axis=1) - gaussians = torch.from_numpy(gaussians).float() # cpu - - if compatible: - gaussians[..., 3:4] = torch.sigmoid(gaussians[..., 3:4]) - gaussians[..., 4:7] = torch.exp(gaussians[..., 4:7]) - gaussians[..., 11:] = 0.28209479177387814 * gaussians[..., 11:] + 0.5 - - return gaussians \ No newline at end of file diff --git a/lgm/core/options.py b/lgm/core/options.py deleted file mode 100644 index ba6e8f1..0000000 --- a/lgm/core/options.py +++ /dev/null @@ -1,117 +0,0 @@ -from dataclasses import dataclass -from typing import Tuple, Literal, Dict, Optional - - -@dataclass -class Options: - ### model - # Unet image input size - input_size: int = 256 - # Unet definition - down_channels: Tuple[int, ...] = (64, 128, 256, 512, 1024, 1024) - down_attention: Tuple[bool, ...] = (False, False, False, True, True, True) - mid_attention: bool = True - up_channels: Tuple[int, ...] = (1024, 1024, 512, 256) - up_attention: Tuple[bool, ...] = (True, True, True, False) - # Unet output size, dependent on the input_size and U-Net structure! - splat_size: int = 64 - # gaussian render size - output_size: int = 256 - - ### dataset - # data mode (only support s3 now) - data_mode: Literal['s3'] = 's3' - # fovy of the dataset - fovy: float = 49.1 - # camera near plane - znear: float = 0.5 - # camera far plane - zfar: float = 2.5 - # number of all views (input + output) - num_views: int = 12 - # number of views - num_input_views: int = 4 - # camera radius - cam_radius: float = 1.5 # to better use [-1, 1]^3 space - # num workers - num_workers: int = 8 - - ### training - # workspace - workspace: str = './workspace' - # resume - resume: Optional[str] = None - # batch size (per-GPU) - batch_size: int = 8 - # gradient accumulation - gradient_accumulation_steps: int = 1 - # training epochs - num_epochs: int = 30 - # lpips loss weight - lambda_lpips: float = 1.0 - # gradient clip - gradient_clip: float = 1.0 - # mixed precision - mixed_precision: str = 'bf16' - # learning rate - lr: float = 4e-4 - # augmentation prob for grid distortion - prob_grid_distortion: float = 0.5 - # augmentation prob for camera jitter - prob_cam_jitter: float = 0.5 - - ### testing - # test image path - test_path: Optional[str] = None - - ### misc - # nvdiffrast backend setting - force_cuda_rast: bool = False - # render fancy video with gaussian scaling effect - fancy_video: bool = False - - -# all the default settings -config_defaults: Dict[str, Options] = {} -config_doc: Dict[str, str] = {} - -config_doc['default'] = 'the default settings for LGM' -config_defaults['default'] = Options() - -config_doc['small'] = 'small model with lower resolution Gaussians' -config_defaults['small'] = Options( - input_size=256, - splat_size=64, - output_size=256, - batch_size=8, - gradient_accumulation_steps=1, - mixed_precision='bf16', -) - -config_doc['big'] = 'big model with higher resolution Gaussians' -config_defaults['big'] = Options( - input_size=256, - up_channels=(1024, 1024, 512, 256, 128), # one more decoder - up_attention=(True, True, True, False, False), - splat_size=128, - output_size=512, # render & supervise Gaussians at a higher resolution. - batch_size=8, - num_views=8, - gradient_accumulation_steps=1, - mixed_precision='bf16', -) - -config_doc['tiny'] = 'tiny model for ablation' -config_defaults['tiny'] = Options( - input_size=256, - down_channels=(32, 64, 128, 256, 512), - down_attention=(False, False, False, False, True), - up_channels=(512, 256, 128), - up_attention=(True, False, False, False), - splat_size=64, - output_size=256, - batch_size=16, - num_views=8, - gradient_accumulation_steps=1, - mixed_precision='bf16', -) diff --git a/lgm/core/provider_objaverse.py b/lgm/core/provider_objaverse.py deleted file mode 100644 index d73f646..0000000 --- a/lgm/core/provider_objaverse.py +++ /dev/null @@ -1,172 +0,0 @@ -import os -import cv2 -import random -import numpy as np - -import torch -import torch.nn as nn -import torch.nn.functional as F -import torchvision.transforms.functional as TF -from torch.utils.data import Dataset - -import kiui -from lgm.core.options import Options -from lgm.core.utils import get_rays, grid_distortion, orbit_camera_jitter - -IMAGENET_DEFAULT_MEAN = (0.485, 0.456, 0.406) -IMAGENET_DEFAULT_STD = (0.229, 0.224, 0.225) - - -class ObjaverseDataset(Dataset): - - def _warn(self): - raise NotImplementedError('this dataset is just an example and cannot be used directly, you should modify it to your own setting! (search keyword TODO)') - - def __init__(self, opt: Options, training=True): - - self.opt = opt - self.training = training - - # TODO: remove this barrier - self._warn() - - # TODO: load the list of objects for training - self.items = [] - with open('TODO: file containing the list', 'r') as f: - for line in f.readlines(): - self.items.append(line.strip()) - - # naive split - if self.training: - self.items = self.items[:-self.opt.batch_size] - else: - self.items = self.items[-self.opt.batch_size:] - - # default camera intrinsics - self.tan_half_fov = np.tan(0.5 * np.deg2rad(self.opt.fovy)) - self.proj_matrix = torch.zeros(4, 4, dtype=torch.float32) - self.proj_matrix[0, 0] = 1 / self.tan_half_fov - self.proj_matrix[1, 1] = 1 / self.tan_half_fov - self.proj_matrix[2, 2] = (self.opt.zfar + self.opt.znear) / (self.opt.zfar - self.opt.znear) - self.proj_matrix[3, 2] = - (self.opt.zfar * self.opt.znear) / (self.opt.zfar - self.opt.znear) - self.proj_matrix[2, 3] = 1 - - - def __len__(self): - return len(self.items) - - def __getitem__(self, idx): - - uid = self.items[idx] - results = {} - - # load num_views images - images = [] - masks = [] - cam_poses = [] - - vid_cnt = 0 - - # TODO: choose views, based on your rendering settings - if self.training: - # input views are in (36, 72), other views are randomly selected - vids = np.random.permutation(np.arange(36, 73))[:self.opt.num_input_views].tolist() + np.random.permutation(100).tolist() - else: - # fixed views - vids = np.arange(36, 73, 4).tolist() + np.arange(100).tolist() - - for vid in vids: - - image_path = os.path.join(uid, 'rgb', f'{vid:03d}.png') - camera_path = os.path.join(uid, 'pose', f'{vid:03d}.txt') - - try: - # TODO: load data (modify self.client here) - image = np.frombuffer(self.client.get(image_path), np.uint8) - image = torch.from_numpy(cv2.imdecode(image, cv2.IMREAD_UNCHANGED).astype(np.float32) / 255) # [512, 512, 4] in [0, 1] - c2w = [float(t) for t in self.client.get(camera_path).decode().strip().split(' ')] - c2w = torch.tensor(c2w, dtype=torch.float32).reshape(4, 4) - except Exception as e: - # print(f'[WARN] dataset {uid} {vid}: {e}') - continue - - # TODO: you may have a different camera system - # blender world + opencv cam --> opengl world & cam - c2w[1] *= -1 - c2w[[1, 2]] = c2w[[2, 1]] - c2w[:3, 1:3] *= -1 # invert up and forward direction - - # scale up radius to fully use the [-1, 1]^3 space! - c2w[:3, 3] *= self.opt.cam_radius / 1.5 # 1.5 is the default scale - - image = image.permute(2, 0, 1) # [4, 512, 512] - mask = image[3:4] # [1, 512, 512] - image = image[:3] * mask + (1 - mask) # [3, 512, 512], to white bg - image = image[[2,1,0]].contiguous() # bgr to rgb - - images.append(image) - masks.append(mask.squeeze(0)) - cam_poses.append(c2w) - - vid_cnt += 1 - if vid_cnt == self.opt.num_views: - break - - if vid_cnt < self.opt.num_views: - print(f'[WARN] dataset {uid}: not enough valid views, only {vid_cnt} views found!') - n = self.opt.num_views - vid_cnt - images = images + [images[-1]] * n - masks = masks + [masks[-1]] * n - cam_poses = cam_poses + [cam_poses[-1]] * n - - images = torch.stack(images, dim=0) # [V, C, H, W] - masks = torch.stack(masks, dim=0) # [V, H, W] - cam_poses = torch.stack(cam_poses, dim=0) # [V, 4, 4] - - # normalized camera feats as in paper (transform the first pose to a fixed position) - transform = torch.tensor([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, self.opt.cam_radius], [0, 0, 0, 1]], dtype=torch.float32) @ torch.inverse(cam_poses[0]) - cam_poses = transform.unsqueeze(0) @ cam_poses # [V, 4, 4] - - images_input = F.interpolate(images[:self.opt.num_input_views].clone(), size=(self.opt.input_size, self.opt.input_size), mode='bilinear', align_corners=False) # [V, C, H, W] - cam_poses_input = cam_poses[:self.opt.num_input_views].clone() - - # data augmentation - if self.training: - # apply random grid distortion to simulate 3D inconsistency - if random.random() < self.opt.prob_grid_distortion: - images_input[1:] = grid_distortion(images_input[1:]) - # apply camera jittering (only to input!) - if random.random() < self.opt.prob_cam_jitter: - cam_poses_input[1:] = orbit_camera_jitter(cam_poses_input[1:]) - - images_input = TF.normalize(images_input, IMAGENET_DEFAULT_MEAN, IMAGENET_DEFAULT_STD) - - # resize render ground-truth images, range still in [0, 1] - results['images_output'] = F.interpolate(images, size=(self.opt.output_size, self.opt.output_size), mode='bilinear', align_corners=False) # [V, C, output_size, output_size] - results['masks_output'] = F.interpolate(masks.unsqueeze(1), size=(self.opt.output_size, self.opt.output_size), mode='bilinear', align_corners=False) # [V, 1, output_size, output_size] - - # build rays for input views - rays_embeddings = [] - for i in range(self.opt.num_input_views): - rays_o, rays_d = get_rays(cam_poses_input[i], self.opt.input_size, self.opt.input_size, self.opt.fovy) # [h, w, 3] - rays_plucker = torch.cat([torch.cross(rays_o, rays_d, dim=-1), rays_d], dim=-1) # [h, w, 6] - rays_embeddings.append(rays_plucker) - - - rays_embeddings = torch.stack(rays_embeddings, dim=0).permute(0, 3, 1, 2).contiguous() # [V, 6, h, w] - final_input = torch.cat([images_input, rays_embeddings], dim=1) # [V=4, 9, H, W] - results['input'] = final_input - - # opengl to colmap camera for gaussian renderer - cam_poses[:, :3, 1:3] *= -1 # invert up & forward direction - - # cameras needed by gaussian rasterizer - cam_view = torch.inverse(cam_poses).transpose(1, 2) # [V, 4, 4] - cam_view_proj = cam_view @ self.proj_matrix # [V, 4, 4] - cam_pos = - cam_poses[:, :3, 3] # [V, 3] - - results['cam_view'] = cam_view - results['cam_view_proj'] = cam_view_proj - results['cam_pos'] = cam_pos - - return results \ No newline at end of file diff --git a/lgm/core/unet.py b/lgm/core/unet.py deleted file mode 100644 index dcf75cd..0000000 --- a/lgm/core/unet.py +++ /dev/null @@ -1,319 +0,0 @@ -import torch -import torch.nn as nn -import torch.nn.functional as F - -import numpy as np -from typing import Tuple, Literal -from functools import partial - -from lgm.core.attention import MemEffAttention - -class MVAttention(nn.Module): - def __init__( - self, - dim: int, - num_heads: int = 8, - qkv_bias: bool = False, - proj_bias: bool = True, - attn_drop: float = 0.0, - proj_drop: float = 0.0, - groups: int = 32, - eps: float = 1e-5, - residual: bool = True, - skip_scale: float = 1, - num_frames: int = 4, # WARN: hardcoded! - ): - super().__init__() - - self.residual = residual - self.skip_scale = skip_scale - self.num_frames = num_frames - - self.norm = nn.GroupNorm(num_groups=groups, num_channels=dim, eps=eps, affine=True) - self.attn = MemEffAttention(dim, num_heads, qkv_bias, proj_bias, attn_drop, proj_drop) - - def forward(self, x): - # x: [B*V, C, H, W] - BV, C, H, W = x.shape - B = BV // self.num_frames # assert BV % self.num_frames == 0 - - res = x - x = self.norm(x) - - x = x.reshape(B, self.num_frames, C, H, W).permute(0, 1, 3, 4, 2).reshape(B, -1, C) - x = self.attn(x) - x = x.reshape(B, self.num_frames, H, W, C).permute(0, 1, 4, 2, 3).reshape(BV, C, H, W) - - if self.residual: - x = (x + res) * self.skip_scale - return x - -class ResnetBlock(nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - resample: Literal['default', 'up', 'down'] = 'default', - groups: int = 32, - eps: float = 1e-5, - skip_scale: float = 1, # multiplied to output - ): - super().__init__() - - self.in_channels = in_channels - self.out_channels = out_channels - self.skip_scale = skip_scale - - self.norm1 = nn.GroupNorm(num_groups=groups, num_channels=in_channels, eps=eps, affine=True) - self.conv1 = nn.Conv2d(in_channels, out_channels, kernel_size=3, stride=1, padding=1) - - self.norm2 = nn.GroupNorm(num_groups=groups, num_channels=out_channels, eps=eps, affine=True) - self.conv2 = nn.Conv2d(out_channels, out_channels, kernel_size=3, stride=1, padding=1) - - self.act = F.silu - - self.resample = None - if resample == 'up': - self.resample = partial(F.interpolate, scale_factor=2.0, mode="nearest") - elif resample == 'down': - self.resample = nn.AvgPool2d(kernel_size=2, stride=2) - - self.shortcut = nn.Identity() - if self.in_channels != self.out_channels: - self.shortcut = nn.Conv2d(in_channels, out_channels, kernel_size=1, bias=True) - - - def forward(self, x): - res = x - - x = self.norm1(x) - x = self.act(x) - - if self.resample: - res = self.resample(res) - x = self.resample(x) - - x = self.conv1(x) - x = self.norm2(x) - x = self.act(x) - x = self.conv2(x) - - x = (x + self.shortcut(res)) * self.skip_scale - - return x - -class DownBlock(nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - num_layers: int = 1, - downsample: bool = True, - attention: bool = True, - attention_heads: int = 16, - skip_scale: float = 1, - ): - super().__init__() - - nets = [] - attns = [] - for i in range(num_layers): - in_channels = in_channels if i == 0 else out_channels - nets.append(ResnetBlock(in_channels, out_channels, skip_scale=skip_scale)) - if attention: - attns.append(MVAttention(out_channels, attention_heads, skip_scale=skip_scale)) - else: - attns.append(None) - self.nets = nn.ModuleList(nets) - self.attns = nn.ModuleList(attns) - - self.downsample = None - if downsample: - self.downsample = nn.Conv2d(out_channels, out_channels, kernel_size=3, stride=2, padding=1) - - def forward(self, x): - xs = [] - - for attn, net in zip(self.attns, self.nets): - x = net(x) - if attn: - x = attn(x) - xs.append(x) - - if self.downsample: - x = self.downsample(x) - xs.append(x) - - return x, xs - - -class MidBlock(nn.Module): - def __init__( - self, - in_channels: int, - num_layers: int = 1, - attention: bool = True, - attention_heads: int = 16, - skip_scale: float = 1, - ): - super().__init__() - - nets = [] - attns = [] - # first layer - nets.append(ResnetBlock(in_channels, in_channels, skip_scale=skip_scale)) - # more layers - for i in range(num_layers): - nets.append(ResnetBlock(in_channels, in_channels, skip_scale=skip_scale)) - if attention: - attns.append(MVAttention(in_channels, attention_heads, skip_scale=skip_scale)) - else: - attns.append(None) - self.nets = nn.ModuleList(nets) - self.attns = nn.ModuleList(attns) - - def forward(self, x): - x = self.nets[0](x) - for attn, net in zip(self.attns, self.nets[1:]): - if attn: - x = attn(x) - x = net(x) - return x - - -class UpBlock(nn.Module): - def __init__( - self, - in_channels: int, - prev_out_channels: int, - out_channels: int, - num_layers: int = 1, - upsample: bool = True, - attention: bool = True, - attention_heads: int = 16, - skip_scale: float = 1, - ): - super().__init__() - - nets = [] - attns = [] - for i in range(num_layers): - cin = in_channels if i == 0 else out_channels - cskip = prev_out_channels if (i == num_layers - 1) else out_channels - - nets.append(ResnetBlock(cin + cskip, out_channels, skip_scale=skip_scale)) - if attention: - attns.append(MVAttention(out_channels, attention_heads, skip_scale=skip_scale)) - else: - attns.append(None) - self.nets = nn.ModuleList(nets) - self.attns = nn.ModuleList(attns) - - self.upsample = None - if upsample: - self.upsample = nn.Conv2d(out_channels, out_channels, kernel_size=3, stride=1, padding=1) - - def forward(self, x, xs): - - for attn, net in zip(self.attns, self.nets): - res_x = xs[-1] - xs = xs[:-1] - x = torch.cat([x, res_x], dim=1) - x = net(x) - if attn: - x = attn(x) - - if self.upsample: - x = F.interpolate(x, scale_factor=2.0, mode='nearest') - x = self.upsample(x) - - return x - - -# it could be asymmetric! -class UNet(nn.Module): - def __init__( - self, - in_channels: int = 3, - out_channels: int = 3, - down_channels: Tuple[int, ...] = (64, 128, 256, 512, 1024), - down_attention: Tuple[bool, ...] = (False, False, False, True, True), - mid_attention: bool = True, - up_channels: Tuple[int, ...] = (1024, 512, 256), - up_attention: Tuple[bool, ...] = (True, True, False), - layers_per_block: int = 2, - skip_scale: float = np.sqrt(0.5), - ): - super().__init__() - - # first - self.conv_in = nn.Conv2d(in_channels, down_channels[0], kernel_size=3, stride=1, padding=1) - - # down - down_blocks = [] - cout = down_channels[0] - for i in range(len(down_channels)): - cin = cout - cout = down_channels[i] - - down_blocks.append(DownBlock( - cin, cout, - num_layers=layers_per_block, - downsample=(i != len(down_channels) - 1), # not final layer - attention=down_attention[i], - skip_scale=skip_scale, - )) - self.down_blocks = nn.ModuleList(down_blocks) - - # mid - self.mid_block = MidBlock(down_channels[-1], attention=mid_attention, skip_scale=skip_scale) - - # up - up_blocks = [] - cout = up_channels[0] - for i in range(len(up_channels)): - cin = cout - cout = up_channels[i] - cskip = down_channels[max(-2 - i, -len(down_channels))] # for assymetric - - up_blocks.append(UpBlock( - cin, cskip, cout, - num_layers=layers_per_block + 1, # one more layer for up - upsample=(i != len(up_channels) - 1), # not final layer - attention=up_attention[i], - skip_scale=skip_scale, - )) - self.up_blocks = nn.ModuleList(up_blocks) - - # last - self.norm_out = nn.GroupNorm(num_channels=up_channels[-1], num_groups=32, eps=1e-5) - self.conv_out = nn.Conv2d(up_channels[-1], out_channels, kernel_size=3, stride=1, padding=1) - - - def forward(self, x): - # x: [B, Cin, H, W] - - # first - x = self.conv_in(x) - - # down - xss = [x] - for block in self.down_blocks: - x, xs = block(x) - xss.extend(xs) - - # mid - x = self.mid_block(x) - - # up - for block in self.up_blocks: - xs = xss[-len(block.nets):] - xss = xss[:-len(block.nets)] - x = block(x, xs) - - # last - x = self.norm_out(x) - x = F.silu(x) - x = self.conv_out(x) # [B, Cout, H', W'] - - return x diff --git a/lgm/core/utils.py b/lgm/core/utils.py deleted file mode 100644 index 655f921..0000000 --- a/lgm/core/utils.py +++ /dev/null @@ -1,134 +0,0 @@ -import numpy as np -import logging -import sys - -import torch -import torch.nn as nn -import torch.nn.functional as F - -import roma -from kiui.op import safe_normalize - -def get_rays(pose, h, w, fovy, opengl=True): - - x, y = torch.meshgrid( - torch.arange(w, device=pose.device), - torch.arange(h, device=pose.device), - indexing="xy", - ) - x = x.flatten() - y = y.flatten() - - cx = w * 0.5 - cy = h * 0.5 - - focal = h * 0.5 / np.tan(0.5 * np.deg2rad(fovy)) - - camera_dirs = F.pad( - torch.stack( - [ - (x - cx + 0.5) / focal, - (y - cy + 0.5) / focal * (-1.0 if opengl else 1.0), - ], - dim=-1, - ), - (0, 1), - value=(-1.0 if opengl else 1.0), - ) # [hw, 3] - - rays_d = camera_dirs @ pose[:3, :3].transpose(0, 1) # [hw, 3] - rays_o = pose[:3, 3].unsqueeze(0).expand_as(rays_d) # [hw, 3] - - rays_o = rays_o.view(h, w, 3) - rays_d = safe_normalize(rays_d).view(h, w, 3) - - return rays_o, rays_d - -def orbit_camera_jitter(poses, strength=0.1): - # poses: [B, 4, 4], assume orbit camera in opengl format - # random orbital rotate - - B = poses.shape[0] - rotvec_x = poses[:, :3, 1] * strength * np.pi * (torch.rand(B, 1, device=poses.device) * 2 - 1) - rotvec_y = poses[:, :3, 0] * strength * np.pi / 2 * (torch.rand(B, 1, device=poses.device) * 2 - 1) - - rot = roma.rotvec_to_rotmat(rotvec_x) @ roma.rotvec_to_rotmat(rotvec_y) - R = rot @ poses[:, :3, :3] - T = rot @ poses[:, :3, 3:] - - new_poses = poses.clone() - new_poses[:, :3, :3] = R - new_poses[:, :3, 3:] = T - - return new_poses - -def grid_distortion(images, strength=0.5): - # images: [B, C, H, W] - # num_steps: int, grid resolution for distortion - # strength: float in [0, 1], strength of distortion - - B, C, H, W = images.shape - - num_steps = np.random.randint(8, 17) - grid_steps = torch.linspace(-1, 1, num_steps) - - # have to loop batch... - grids = [] - for b in range(B): - # construct displacement - x_steps = torch.linspace(0, 1, num_steps) # [num_steps], inclusive - x_steps = (x_steps + strength * (torch.rand_like(x_steps) - 0.5) / (num_steps - 1)).clamp(0, 1) # perturb - x_steps = (x_steps * W).long() # [num_steps] - x_steps[0] = 0 - x_steps[-1] = W - xs = [] - for i in range(num_steps - 1): - xs.append(torch.linspace(grid_steps[i], grid_steps[i + 1], x_steps[i + 1] - x_steps[i])) - xs = torch.cat(xs, dim=0) # [W] - - y_steps = torch.linspace(0, 1, num_steps) # [num_steps], inclusive - y_steps = (y_steps + strength * (torch.rand_like(y_steps) - 0.5) / (num_steps - 1)).clamp(0, 1) # perturb - y_steps = (y_steps * H).long() # [num_steps] - y_steps[0] = 0 - y_steps[-1] = H - ys = [] - for i in range(num_steps - 1): - ys.append(torch.linspace(grid_steps[i], grid_steps[i + 1], y_steps[i + 1] - y_steps[i])) - ys = torch.cat(ys, dim=0) # [H] - - # construct grid - grid_x, grid_y = torch.meshgrid(xs, ys, indexing='xy') # [H, W] - grid = torch.stack([grid_x, grid_y], dim=-1) # [H, W, 2] - - grids.append(grid) - - grids = torch.stack(grids, dim=0).to(images.device) # [B, H, W, 2] - - # grid sample - images = F.grid_sample(images, grids, align_corners=False) - - return images - -class WarningFilter(logging.Filter): - def filter(self, record): - if record.levelno == logging.WARNING: - record.msg = f"Warn!: {record.msg}" - return True - -def create_handler(stream, levels, formatter): - handler = logging.StreamHandler(stream) - handler.setLevel(min(levels)) - handler.addFilter(lambda record: record.levelno in levels) - handler.addFilter(WarningFilter()) # Apply the custom filter - handler.setFormatter(formatter) - - return handler -def setup_logger(logger_name, level, stdout_levels, stderr_levels, formatter): - logger = logging.getLogger(logger_name) - for handler in logger.handlers[:]: - logger.removeHandler(handler) - logger.setLevel(level) - stdout_handler = create_handler(sys.stdout, stdout_levels, formatter) - stderr_handler = create_handler(sys.stderr, stderr_levels, formatter) - logger.addHandler(stdout_handler) - logger.addHandler(stderr_handler) \ No newline at end of file diff --git a/lgm/mvdream/mv_unet.py b/lgm/mvdream/mv_unet.py deleted file mode 100644 index 2071d2a..0000000 --- a/lgm/mvdream/mv_unet.py +++ /dev/null @@ -1,1025 +0,0 @@ -import math -import numpy as np -from inspect import isfunction -from typing import Optional, Any, List - -import torch -import torch.nn as nn -import torch.nn.functional as F -from einops import rearrange, repeat - -from diffusers.configuration_utils import ConfigMixin -from diffusers.models.modeling_utils import ModelMixin - -from kiui.cam import orbit_camera - -def memory_efficient_attention(q, k, v, attn_bias=None): - """ - Implements a memory-efficient attention mechanism. - - Parameters: - - q, k, v: Query, Key, Value tensors of shape (batch_size, seq_len_q, dim) - - attn_bias: Optional bias tensor of shape (seq_len_k, seq_len_v) - - Returns: - - output tensor of shape (batch_size, seq_len_q, dim) - """ - # Calculate attention scores - scores = torch.matmul(q, k.transpose(-2, -1)) / math.sqrt(k.size(-1)) - if attn_bias is not None: - scores += attn_bias - - # Apply softmax to get attention weights - attention_weights = torch.nn.functional.softmax(scores, dim=-1) - - # Compute the weighted sum of values - output = torch.matmul(attention_weights, v) - - return output - -def get_camera( - num_frames, elevation=0, azimuth_start=0, azimuth_span=360, blender_coord=True, extra_view=False, -): - angle_gap = azimuth_span / num_frames - cameras = [] - for azimuth in np.arange(azimuth_start, azimuth_span + azimuth_start, angle_gap): - - pose = orbit_camera(elevation, azimuth, radius=1) # [4, 4] - - # opengl to blender - if blender_coord: - pose[2] *= -1 - pose[[1, 2]] = pose[[2, 1]] - - cameras.append(pose.flatten()) - - if extra_view: - cameras.append(np.zeros_like(cameras[0])) - - return torch.from_numpy(np.stack(cameras, axis=0)).float() # [num_frames, 16] - - -def timestep_embedding(timesteps, dim, max_period=10000, repeat_only=False): - """ - Create sinusoidal timestep embeddings. - :param timesteps: a 1-D Tensor of N indices, one per batch element. - These may be fractional. - :param dim: the dimension of the output. - :param max_period: controls the minimum frequency of the embeddings. - :return: an [N x dim] Tensor of positional embeddings. - """ - if not repeat_only: - half = dim // 2 - freqs = torch.exp( - -math.log(max_period) - * torch.arange(start=0, end=half, dtype=torch.float32) - / half - ).to(device=timesteps.device) - args = timesteps[:, None] * freqs[None] - embedding = torch.cat([torch.cos(args), torch.sin(args)], dim=-1) - if dim % 2: - embedding = torch.cat( - [embedding, torch.zeros_like(embedding[:, :1])], dim=-1 - ) - else: - embedding = repeat(timesteps, "b -> b d", d=dim) - # import pdb; pdb.set_trace() - return embedding - - -def zero_module(module): - """ - Zero out the parameters of a module and return it. - """ - for p in module.parameters(): - p.detach().zero_() - return module - - -def conv_nd(dims, *args, **kwargs): - """ - Create a 1D, 2D, or 3D convolution module. - """ - if dims == 1: - return nn.Conv1d(*args, **kwargs) - elif dims == 2: - return nn.Conv2d(*args, **kwargs) - elif dims == 3: - return nn.Conv3d(*args, **kwargs) - raise ValueError(f"unsupported dimensions: {dims}") - - -def avg_pool_nd(dims, *args, **kwargs): - """ - Create a 1D, 2D, or 3D average pooling module. - """ - if dims == 1: - return nn.AvgPool1d(*args, **kwargs) - elif dims == 2: - return nn.AvgPool2d(*args, **kwargs) - elif dims == 3: - return nn.AvgPool3d(*args, **kwargs) - raise ValueError(f"unsupported dimensions: {dims}") - - -def default(val, d): - if val is not None: - return val - return d() if isfunction(d) else d - - -class GEGLU(nn.Module): - def __init__(self, dim_in, dim_out): - super().__init__() - self.proj = nn.Linear(dim_in, dim_out * 2) - - def forward(self, x): - x, gate = self.proj(x).chunk(2, dim=-1) - return x * F.gelu(gate) - - -class FeedForward(nn.Module): - def __init__(self, dim, dim_out=None, mult=4, glu=False, dropout=0.0): - super().__init__() - inner_dim = int(dim * mult) - dim_out = default(dim_out, dim) - project_in = ( - nn.Sequential(nn.Linear(dim, inner_dim), nn.GELU()) - if not glu - else GEGLU(dim, inner_dim) - ) - - self.net = nn.Sequential( - project_in, nn.Dropout(dropout), nn.Linear(inner_dim, dim_out) - ) - - def forward(self, x): - return self.net(x) - - -class MemoryEfficientCrossAttention(nn.Module): - # https://github.com/MatthieuTPHR/diffusers/blob/d80b531ff8060ec1ea982b65a1b8df70f73aa67c/src/diffusers/models/attention.py#L223 - def __init__( - self, - query_dim, - context_dim=None, - heads=8, - dim_head=64, - dropout=0.0, - ip_dim=0, - ip_weight=1, - ): - super().__init__() - - inner_dim = dim_head * heads - context_dim = default(context_dim, query_dim) - - self.heads = heads - self.dim_head = dim_head - - self.ip_dim = ip_dim - self.ip_weight = ip_weight - - if self.ip_dim > 0: - self.to_k_ip = nn.Linear(context_dim, inner_dim, bias=False) - self.to_v_ip = nn.Linear(context_dim, inner_dim, bias=False) - - self.to_q = nn.Linear(query_dim, inner_dim, bias=False) - self.to_k = nn.Linear(context_dim, inner_dim, bias=False) - self.to_v = nn.Linear(context_dim, inner_dim, bias=False) - - self.to_out = nn.Sequential( - nn.Linear(inner_dim, query_dim), nn.Dropout(dropout) - ) - self.attention_op: Optional[Any] = None - - def forward(self, x, context=None): - q = self.to_q(x) - context = default(context, x) - - if self.ip_dim > 0: - # context: [B, 77 + 16(ip), 1024] - token_len = context.shape[1] - context_ip = context[:, -self.ip_dim :, :] - k_ip = self.to_k_ip(context_ip) - v_ip = self.to_v_ip(context_ip) - context = context[:, : (token_len - self.ip_dim), :] - - k = self.to_k(context) - v = self.to_v(context) - - b, _, _ = q.shape - q, k, v = map( - lambda t: t.unsqueeze(3) - .reshape(b, t.shape[1], self.heads, self.dim_head) - .permute(0, 2, 1, 3) - .reshape(b * self.heads, t.shape[1], self.dim_head) - .contiguous(), - (q, k, v), - ) - - # actually compute the attention, what we cannot get enough of - out = memory_efficient_attention( - q, k, v, attn_bias=None, op=self.attention_op - ) - - if self.ip_dim > 0: - k_ip, v_ip = map( - lambda t: t.unsqueeze(3) - .reshape(b, t.shape[1], self.heads, self.dim_head) - .permute(0, 2, 1, 3) - .reshape(b * self.heads, t.shape[1], self.dim_head) - .contiguous(), - (k_ip, v_ip), - ) - # actually compute the attention, what we cannot get enough of - out_ip = memory_efficient_attention( - q, k_ip, v_ip, attn_bias=None, op=self.attention_op - ) - out = out + self.ip_weight * out_ip - - out = ( - out.unsqueeze(0) - .reshape(b, self.heads, out.shape[1], self.dim_head) - .permute(0, 2, 1, 3) - .reshape(b, out.shape[1], self.heads * self.dim_head) - ) - return self.to_out(out) - - -class BasicTransformerBlock3D(nn.Module): - - def __init__( - self, - dim, - n_heads, - d_head, - context_dim, - dropout=0.0, - gated_ff=True, - ip_dim=0, - ip_weight=1, - ): - super().__init__() - - self.attn1 = MemoryEfficientCrossAttention( - query_dim=dim, - context_dim=None, # self-attention - heads=n_heads, - dim_head=d_head, - dropout=dropout, - ) - self.ff = FeedForward(dim, dropout=dropout, glu=gated_ff) - self.attn2 = MemoryEfficientCrossAttention( - query_dim=dim, - context_dim=context_dim, - heads=n_heads, - dim_head=d_head, - dropout=dropout, - # ip only applies to cross-attention - ip_dim=ip_dim, - ip_weight=ip_weight, - ) - self.norm1 = nn.LayerNorm(dim) - self.norm2 = nn.LayerNorm(dim) - self.norm3 = nn.LayerNorm(dim) - - def forward(self, x, context=None, num_frames=1): - x = rearrange(x, "(b f) l c -> b (f l) c", f=num_frames).contiguous() - x = self.attn1(self.norm1(x), context=None) + x - x = rearrange(x, "b (f l) c -> (b f) l c", f=num_frames).contiguous() - x = self.attn2(self.norm2(x), context=context) + x - x = self.ff(self.norm3(x)) + x - return x - - -class SpatialTransformer3D(nn.Module): - - def __init__( - self, - in_channels, - n_heads, - d_head, - context_dim, # cross attention input dim - depth=1, - dropout=0.0, - ip_dim=0, - ip_weight=1, - ): - super().__init__() - - if not isinstance(context_dim, list): - context_dim = [context_dim] - - self.in_channels = in_channels - - inner_dim = n_heads * d_head - self.norm = nn.GroupNorm(num_groups=32, num_channels=in_channels, eps=1e-6, affine=True) - self.proj_in = nn.Linear(in_channels, inner_dim) - - self.transformer_blocks = nn.ModuleList( - [ - BasicTransformerBlock3D( - inner_dim, - n_heads, - d_head, - context_dim=context_dim[d], - dropout=dropout, - ip_dim=ip_dim, - ip_weight=ip_weight, - ) - for d in range(depth) - ] - ) - - self.proj_out = zero_module(nn.Linear(in_channels, inner_dim)) - - - def forward(self, x, context=None, num_frames=1): - # note: if no context is given, cross-attention defaults to self-attention - if not isinstance(context, list): - context = [context] - b, c, h, w = x.shape - x_in = x - x = self.norm(x) - x = rearrange(x, "b c h w -> b (h w) c").contiguous() - x = self.proj_in(x) - for i, block in enumerate(self.transformer_blocks): - x = block(x, context=context[i], num_frames=num_frames) - x = self.proj_out(x) - x = rearrange(x, "b (h w) c -> b c h w", h=h, w=w).contiguous() - - return x + x_in - - -class PerceiverAttention(nn.Module): - def __init__(self, *, dim, dim_head=64, heads=8): - super().__init__() - self.scale = dim_head ** -0.5 - self.dim_head = dim_head - self.heads = heads - inner_dim = dim_head * heads - - self.norm1 = nn.LayerNorm(dim) - self.norm2 = nn.LayerNorm(dim) - - self.to_q = nn.Linear(dim, inner_dim, bias=False) - self.to_kv = nn.Linear(dim, inner_dim * 2, bias=False) - self.to_out = nn.Linear(inner_dim, dim, bias=False) - - def forward(self, x, latents): - """ - Args: - x (torch.Tensor): image features - shape (b, n1, D) - latent (torch.Tensor): latent features - shape (b, n2, D) - """ - x = self.norm1(x) - latents = self.norm2(latents) - - b, l, _ = latents.shape - - q = self.to_q(latents) - kv_input = torch.cat((x, latents), dim=-2) - k, v = self.to_kv(kv_input).chunk(2, dim=-1) - - q, k, v = map( - lambda t: t.reshape(b, t.shape[1], self.heads, -1) - .transpose(1, 2) - .reshape(b, self.heads, t.shape[1], -1) - .contiguous(), - (q, k, v), - ) - - # attention - scale = 1 / math.sqrt(math.sqrt(self.dim_head)) - weight = (q * scale) @ (k * scale).transpose(-2, -1) # More stable with f16 than dividing afterwards - weight = torch.softmax(weight.float(), dim=-1).type(weight.dtype) - out = weight @ v - - out = out.permute(0, 2, 1, 3).reshape(b, l, -1) - - return self.to_out(out) - - -class Resampler(nn.Module): - def __init__( - self, - dim=1024, - depth=8, - dim_head=64, - heads=16, - num_queries=8, - embedding_dim=768, - output_dim=1024, - ff_mult=4, - ): - super().__init__() - self.latents = nn.Parameter(torch.randn(1, num_queries, dim) / dim ** 0.5) - self.proj_in = nn.Linear(embedding_dim, dim) - self.proj_out = nn.Linear(dim, output_dim) - self.norm_out = nn.LayerNorm(output_dim) - - self.layers = nn.ModuleList([]) - for _ in range(depth): - self.layers.append( - nn.ModuleList( - [ - PerceiverAttention(dim=dim, dim_head=dim_head, heads=heads), - nn.Sequential( - nn.LayerNorm(dim), - nn.Linear(dim, dim * ff_mult, bias=False), - nn.GELU(), - nn.Linear(dim * ff_mult, dim, bias=False), - ) - ] - ) - ) - - def forward(self, x): - latents = self.latents.repeat(x.size(0), 1, 1) - x = self.proj_in(x) - for attn, ff in self.layers: - latents = attn(x, latents) + latents - latents = ff(latents) + latents - - latents = self.proj_out(latents) - return self.norm_out(latents) - - -class CondSequential(nn.Sequential): - """ - A sequential module that passes timestep embeddings to the children that - support it as an extra input. - """ - - def forward(self, x, emb, context=None, num_frames=1): - for layer in self: - if isinstance(layer, ResBlock): - x = layer(x, emb) - elif isinstance(layer, SpatialTransformer3D): - x = layer(x, context, num_frames=num_frames) - else: - x = layer(x) - return x - - -class Upsample(nn.Module): - """ - An upsampling layer with an optional convolution. - :param channels: channels in the inputs and outputs. - :param use_conv: a bool determining if a convolution is applied. - :param dims: determines if the signal is 1D, 2D, or 3D. If 3D, then - upsampling occurs in the inner-two dimensions. - """ - - def __init__(self, channels, use_conv, dims=2, out_channels=None, padding=1): - super().__init__() - self.channels = channels - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.dims = dims - if use_conv: - self.conv = conv_nd( - dims, self.channels, self.out_channels, 3, padding=padding - ) - - def forward(self, x): - assert x.shape[1] == self.channels - if self.dims == 3: - x = F.interpolate( - x, (x.shape[2], x.shape[3] * 2, x.shape[4] * 2), mode="nearest" - ) - else: - x = F.interpolate(x, scale_factor=2, mode="nearest") - if self.use_conv: - x = self.conv(x) - return x - - -class Downsample(nn.Module): - """ - A downsampling layer with an optional convolution. - :param channels: channels in the inputs and outputs. - :param use_conv: a bool determining if a convolution is applied. - :param dims: determines if the signal is 1D, 2D, or 3D. If 3D, then - downsampling occurs in the inner-two dimensions. - """ - - def __init__(self, channels, use_conv, dims=2, out_channels=None, padding=1): - super().__init__() - self.channels = channels - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.dims = dims - stride = 2 if dims != 3 else (1, 2, 2) - if use_conv: - self.op = conv_nd( - dims, - self.channels, - self.out_channels, - 3, - stride=stride, - padding=padding, - ) - else: - assert self.channels == self.out_channels - self.op = avg_pool_nd(dims, kernel_size=stride, stride=stride) - - def forward(self, x): - assert x.shape[1] == self.channels - return self.op(x) - - -class ResBlock(nn.Module): - """ - A residual block that can optionally change the number of channels. - :param channels: the number of input channels. - :param emb_channels: the number of timestep embedding channels. - :param dropout: the rate of dropout. - :param out_channels: if specified, the number of out channels. - :param use_conv: if True and out_channels is specified, use a spatial - convolution instead of a smaller 1x1 convolution to change the - channels in the skip connection. - :param dims: determines if the signal is 1D, 2D, or 3D. - :param up: if True, use this block for upsampling. - :param down: if True, use this block for downsampling. - """ - - def __init__( - self, - channels, - emb_channels, - dropout, - out_channels=None, - use_conv=False, - use_scale_shift_norm=False, - dims=2, - up=False, - down=False, - ): - super().__init__() - self.channels = channels - self.emb_channels = emb_channels - self.dropout = dropout - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.use_scale_shift_norm = use_scale_shift_norm - - self.in_layers = nn.Sequential( - nn.GroupNorm(32, channels), - nn.SiLU(), - conv_nd(dims, channels, self.out_channels, 3, padding=1), - ) - - self.updown = up or down - - if up: - self.h_upd = Upsample(channels, False, dims) - self.x_upd = Upsample(channels, False, dims) - elif down: - self.h_upd = Downsample(channels, False, dims) - self.x_upd = Downsample(channels, False, dims) - else: - self.h_upd = self.x_upd = nn.Identity() - - self.emb_layers = nn.Sequential( - nn.SiLU(), - nn.Linear( - emb_channels, - 2 * self.out_channels if use_scale_shift_norm else self.out_channels, - ), - ) - self.out_layers = nn.Sequential( - nn.GroupNorm(32, self.out_channels), - nn.SiLU(), - nn.Dropout(p=dropout), - zero_module( - conv_nd(dims, self.out_channels, self.out_channels, 3, padding=1) - ), - ) - - if self.out_channels == channels: - self.skip_connection = nn.Identity() - elif use_conv: - self.skip_connection = conv_nd( - dims, channels, self.out_channels, 3, padding=1 - ) - else: - self.skip_connection = conv_nd(dims, channels, self.out_channels, 1) - - def forward(self, x, emb): - if self.updown: - in_rest, in_conv = self.in_layers[:-1], self.in_layers[-1] - h = in_rest(x) - h = self.h_upd(h) - x = self.x_upd(x) - h = in_conv(h) - else: - h = self.in_layers(x) - emb_out = self.emb_layers(emb).type(h.dtype) - while len(emb_out.shape) < len(h.shape): - emb_out = emb_out[..., None] - if self.use_scale_shift_norm: - out_norm, out_rest = self.out_layers[0], self.out_layers[1:] - scale, shift = torch.chunk(emb_out, 2, dim=1) - h = out_norm(h) * (1 + scale) + shift - h = out_rest(h) - else: - h = h + emb_out - h = self.out_layers(h) - return self.skip_connection(x) + h - - -class MultiViewUNetModel(ModelMixin, ConfigMixin): - """ - The full multi-view UNet model with attention, timestep embedding and camera embedding. - :param in_channels: channels in the input Tensor. - :param model_channels: base channel count for the model. - :param out_channels: channels in the output Tensor. - :param num_res_blocks: number of residual blocks per downsample. - :param attention_resolutions: a collection of downsample rates at which - attention will take place. May be a set, list, or tuple. - For example, if this contains 4, then at 4x downsampling, attention - will be used. - :param dropout: the dropout probability. - :param channel_mult: channel multiplier for each level of the UNet. - :param conv_resample: if True, use learned convolutions for upsampling and - downsampling. - :param dims: determines if the signal is 1D, 2D, or 3D. - :param num_classes: if specified (as an int), then this model will be - class-conditional with `num_classes` classes. - :param num_heads: the number of attention heads in each attention layer. - :param num_heads_channels: if specified, ignore num_heads and instead use - a fixed channel width per attention head. - :param num_heads_upsample: works with num_heads to set a different number - of heads for upsampling. Deprecated. - :param use_scale_shift_norm: use a FiLM-like conditioning mechanism. - :param resblock_updown: use residual blocks for up/downsampling. - :param use_new_attention_order: use a different attention pattern for potentially - increased efficiency. - :param camera_dim: dimensionality of camera input. - """ - - def __init__( - self, - image_size, - in_channels, - model_channels, - out_channels, - num_res_blocks, - attention_resolutions, - dropout=0, - channel_mult=(1, 2, 4, 8), - conv_resample=True, - dims=2, - num_classes=None, - num_heads=-1, - num_head_channels=-1, - num_heads_upsample=-1, - use_scale_shift_norm=False, - resblock_updown=False, - transformer_depth=1, - context_dim=None, - n_embed=None, - num_attention_blocks=None, - adm_in_channels=None, - camera_dim=None, - ip_dim=0, # imagedream uses ip_dim > 0 - ip_weight=1.0, - **kwargs, - ): - super().__init__() - assert context_dim is not None - - if num_heads_upsample == -1: - num_heads_upsample = num_heads - - if num_heads == -1: - assert ( - num_head_channels != -1 - ), "Either num_heads or num_head_channels has to be set" - - if num_head_channels == -1: - assert ( - num_heads != -1 - ), "Either num_heads or num_head_channels has to be set" - - self.image_size = image_size - self.in_channels = in_channels - self.model_channels = model_channels - self.out_channels = out_channels - if isinstance(num_res_blocks, int): - self.num_res_blocks = len(channel_mult) * [num_res_blocks] - else: - if len(num_res_blocks) != len(channel_mult): - raise ValueError( - "provide num_res_blocks either as an int (globally constant) or " - "as a list/tuple (per-level) with the same length as channel_mult" - ) - self.num_res_blocks = num_res_blocks - - if num_attention_blocks is not None: - assert len(num_attention_blocks) == len(self.num_res_blocks) - assert all( - map( - lambda i: self.num_res_blocks[i] >= num_attention_blocks[i], - range(len(num_attention_blocks)), - ) - ) - print( - f"Constructor of UNetModel received num_attention_blocks={num_attention_blocks}. " - f"This option has LESS priority than attention_resolutions {attention_resolutions}, " - f"i.e., in cases where num_attention_blocks[i] > 0 but 2**i not in attention_resolutions, " - f"attention will still not be set." - ) - - self.attention_resolutions = attention_resolutions - self.dropout = dropout - self.channel_mult = channel_mult - self.conv_resample = conv_resample - self.num_classes = num_classes - self.num_heads = num_heads - self.num_head_channels = num_head_channels - self.num_heads_upsample = num_heads_upsample - self.predict_codebook_ids = n_embed is not None - - self.ip_dim = ip_dim - self.ip_weight = ip_weight - - if self.ip_dim > 0: - self.image_embed = Resampler( - dim=context_dim, - depth=4, - dim_head=64, - heads=12, - num_queries=ip_dim, # num token - embedding_dim=1280, - output_dim=context_dim, - ff_mult=4, - ) - - time_embed_dim = model_channels * 4 - self.time_embed = nn.Sequential( - nn.Linear(model_channels, time_embed_dim), - nn.SiLU(), - nn.Linear(time_embed_dim, time_embed_dim), - ) - - if camera_dim is not None: - time_embed_dim = model_channels * 4 - self.camera_embed = nn.Sequential( - nn.Linear(camera_dim, time_embed_dim), - nn.SiLU(), - nn.Linear(time_embed_dim, time_embed_dim), - ) - - if self.num_classes is not None: - if isinstance(self.num_classes, int): - self.label_emb = nn.Embedding(self.num_classes, time_embed_dim) - elif self.num_classes == "continuous": - # print("setting up linear c_adm embedding layer") - self.label_emb = nn.Linear(1, time_embed_dim) - elif self.num_classes == "sequential": - assert adm_in_channels is not None - self.label_emb = nn.Sequential( - nn.Sequential( - nn.Linear(adm_in_channels, time_embed_dim), - nn.SiLU(), - nn.Linear(time_embed_dim, time_embed_dim), - ) - ) - else: - raise ValueError() - - self.input_blocks = nn.ModuleList( - [ - CondSequential( - conv_nd(dims, in_channels, model_channels, 3, padding=1) - ) - ] - ) - self._feature_size = model_channels - input_block_chans = [model_channels] - ch = model_channels - ds = 1 - for level, mult in enumerate(channel_mult): - for nr in range(self.num_res_blocks[level]): - layers: List[Any] = [ - ResBlock( - ch, - time_embed_dim, - dropout, - out_channels=mult * model_channels, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - ) - ] - ch = mult * model_channels - if ds in attention_resolutions: - if num_head_channels == -1: - dim_head = ch // num_heads - else: - num_heads = ch // num_head_channels - dim_head = num_head_channels - - if num_attention_blocks is None or nr < num_attention_blocks[level]: - layers.append( - SpatialTransformer3D( - ch, - num_heads, - dim_head, - context_dim=context_dim, - depth=transformer_depth, - ip_dim=self.ip_dim, - ip_weight=self.ip_weight, - ) - ) - self.input_blocks.append(CondSequential(*layers)) - self._feature_size += ch - input_block_chans.append(ch) - if level != len(channel_mult) - 1: - out_ch = ch - self.input_blocks.append( - CondSequential( - ResBlock( - ch, - time_embed_dim, - dropout, - out_channels=out_ch, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - down=True, - ) - if resblock_updown - else Downsample( - ch, conv_resample, dims=dims, out_channels=out_ch - ) - ) - ) - ch = out_ch - input_block_chans.append(ch) - ds *= 2 - self._feature_size += ch - - if num_head_channels == -1: - dim_head = ch // num_heads - else: - num_heads = ch // num_head_channels - dim_head = num_head_channels - - self.middle_block = CondSequential( - ResBlock( - ch, - time_embed_dim, - dropout, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - ), - SpatialTransformer3D( - ch, - num_heads, - dim_head, - context_dim=context_dim, - depth=transformer_depth, - ip_dim=self.ip_dim, - ip_weight=self.ip_weight, - ), - ResBlock( - ch, - time_embed_dim, - dropout, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - ), - ) - self._feature_size += ch - - self.output_blocks = nn.ModuleList([]) - for level, mult in list(enumerate(channel_mult))[::-1]: - for i in range(self.num_res_blocks[level] + 1): - ich = input_block_chans.pop() - layers = [ - ResBlock( - ch + ich, - time_embed_dim, - dropout, - out_channels=model_channels * mult, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - ) - ] - ch = model_channels * mult - if ds in attention_resolutions: - if num_head_channels == -1: - dim_head = ch // num_heads - else: - num_heads = ch // num_head_channels - dim_head = num_head_channels - - if num_attention_blocks is None or i < num_attention_blocks[level]: - layers.append( - SpatialTransformer3D( - ch, - num_heads, - dim_head, - context_dim=context_dim, - depth=transformer_depth, - ip_dim=self.ip_dim, - ip_weight=self.ip_weight, - ) - ) - if level and i == self.num_res_blocks[level]: - out_ch = ch - layers.append( - ResBlock( - ch, - time_embed_dim, - dropout, - out_channels=out_ch, - dims=dims, - use_scale_shift_norm=use_scale_shift_norm, - up=True, - ) - if resblock_updown - else Upsample(ch, conv_resample, dims=dims, out_channels=out_ch) - ) - ds //= 2 - self.output_blocks.append(CondSequential(*layers)) - self._feature_size += ch - - self.out = nn.Sequential( - nn.GroupNorm(32, ch), - nn.SiLU(), - zero_module(conv_nd(dims, model_channels, out_channels, 3, padding=1)), - ) - if self.predict_codebook_ids: - self.id_predictor = nn.Sequential( - nn.GroupNorm(32, ch), - conv_nd(dims, model_channels, n_embed, 1), - # nn.LogSoftmax(dim=1) # change to cross_entropy and produce non-normalized logits - ) - - def forward( - self, - x, - timesteps=None, - context=None, - y=None, - camera=None, - num_frames=1, - ip=None, - ip_img=None, - **kwargs, - ): - """ - Apply the model to an input batch. - :param x: an [(N x F) x C x ...] Tensor of inputs. F is the number of frames (views). - :param timesteps: a 1-D batch of timesteps. - :param context: conditioning plugged in via crossattn - :param y: an [N] Tensor of labels, if class-conditional. - :param num_frames: a integer indicating number of frames for tensor reshaping. - :return: an [(N x F) x C x ...] Tensor of outputs. F is the number of frames (views). - """ - assert ( - x.shape[0] % num_frames == 0 - ), "input batch size must be dividable by num_frames!" - assert (y is not None) == ( - self.num_classes is not None - ), "must specify y if and only if the model is class-conditional" - - hs = [] - - t_emb = timestep_embedding(timesteps, self.model_channels, repeat_only=False).to(x.dtype) - - emb = self.time_embed(t_emb) - - if self.num_classes is not None: - assert y is not None - assert y.shape[0] == x.shape[0] - emb = emb + self.label_emb(y) - - # Add camera embeddings - if camera is not None: - emb = emb + self.camera_embed(camera) - - # imagedream variant - if self.ip_dim > 0: - x[(num_frames - 1) :: num_frames, :, :, :] = ip_img # place at [4, 9] - ip_emb = self.image_embed(ip) - context = torch.cat((context, ip_emb), 1) - - h = x - for module in self.input_blocks: - h = module(h, emb, context, num_frames=num_frames) - hs.append(h) - h = self.middle_block(h, emb, context, num_frames=num_frames) - for module in self.output_blocks: - h = torch.cat([h, hs.pop()], dim=1) - h = module(h, emb, context, num_frames=num_frames) - h = h.type(x.dtype) - if self.predict_codebook_ids: - return self.id_predictor(h) - else: - return self.out(h) diff --git a/lgm/mvdream/pipeline_mvdream.py b/lgm/mvdream/pipeline_mvdream.py deleted file mode 100644 index 8a4448a..0000000 --- a/lgm/mvdream/pipeline_mvdream.py +++ /dev/null @@ -1,566 +0,0 @@ -import torch -import torch.nn.functional as F -import inspect -import numpy as np -from typing import Callable, List, Optional, Union -from transformers import CLIPTextModel, CLIPTokenizer, CLIPVisionModel, CLIPImageProcessor -from diffusers import AutoencoderKL, DiffusionPipeline -from diffusers.utils import ( - deprecate, - is_accelerate_available, - is_accelerate_version, - logging, -) -from diffusers.configuration_utils import FrozenDict -from diffusers.schedulers import DDIMScheduler -from diffusers.utils.torch_utils import randn_tensor - -import comfy.utils - -from lgm.mvdream.mv_unet import MultiViewUNetModel, get_camera - -logger = logging.get_logger(__name__) # pylint: disable=invalid-name - - -class MVDreamPipeline(DiffusionPipeline): - - _optional_components = ["feature_extractor", "image_encoder"] - - def __init__( - self, - vae: AutoencoderKL, - unet: MultiViewUNetModel, - tokenizer: CLIPTokenizer, - text_encoder: CLIPTextModel, - scheduler: DDIMScheduler, - # imagedream variant - feature_extractor: CLIPImageProcessor, - image_encoder: CLIPVisionModel, - requires_safety_checker: bool = False, - ): - super().__init__() - - if hasattr(scheduler.config, "steps_offset") and scheduler.config.steps_offset != 1: # type: ignore - deprecation_message = ( - f"The configuration file of this scheduler: {scheduler} is outdated. `steps_offset`" - f" should be set to 1 instead of {scheduler.config.steps_offset}. Please make sure " # type: ignore - "to update the config accordingly as leaving `steps_offset` might led to incorrect results" - " in future versions. If you have downloaded this checkpoint from the Hugging Face Hub," - " it would be very nice if you could open a Pull request for the `scheduler/scheduler_config.json`" - " file" - ) - deprecate( - "steps_offset!=1", "1.0.0", deprecation_message, standard_warn=False - ) - new_config = dict(scheduler.config) - new_config["steps_offset"] = 1 - scheduler._internal_dict = FrozenDict(new_config) - - if hasattr(scheduler.config, "clip_sample") and scheduler.config.clip_sample is True: # type: ignore - deprecation_message = ( - f"The configuration file of this scheduler: {scheduler} has not set the configuration `clip_sample`." - " `clip_sample` should be set to False in the configuration file. Please make sure to update the" - " config accordingly as not setting `clip_sample` in the config might lead to incorrect results in" - " future versions. If you have downloaded this checkpoint from the Hugging Face Hub, it would be very" - " nice if you could open a Pull request for the `scheduler/scheduler_config.json` file" - ) - deprecate( - "clip_sample not set", "1.0.0", deprecation_message, standard_warn=False - ) - new_config = dict(scheduler.config) - new_config["clip_sample"] = False - scheduler._internal_dict = FrozenDict(new_config) - - self.register_modules( - vae=vae, - unet=unet, - scheduler=scheduler, - tokenizer=tokenizer, - text_encoder=text_encoder, - feature_extractor=feature_extractor, - image_encoder=image_encoder, - ) - self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1) - self.register_to_config(requires_safety_checker=requires_safety_checker) - - def enable_vae_slicing(self): - r""" - Enable sliced VAE decoding. - - When this option is enabled, the VAE will split the input tensor in slices to compute decoding in several - steps. This is useful to save some memory and allow larger batch sizes. - """ - self.vae.enable_slicing() - - def disable_vae_slicing(self): - r""" - Disable sliced VAE decoding. If `enable_vae_slicing` was previously invoked, this method will go back to - computing decoding in one step. - """ - self.vae.disable_slicing() - - def enable_vae_tiling(self): - r""" - Enable tiled VAE decoding. - - When this option is enabled, the VAE will split the input tensor into tiles to compute decoding and encoding in - several steps. This is useful to save a large amount of memory and to allow the processing of larger images. - """ - self.vae.enable_tiling() - - def disable_vae_tiling(self): - r""" - Disable tiled VAE decoding. If `enable_vae_tiling` was previously invoked, this method will go back to - computing decoding in one step. - """ - self.vae.disable_tiling() - - def enable_sequential_cpu_offload(self, gpu_id=0): - r""" - Offloads all models to CPU using accelerate, significantly reducing memory usage. When called, unet, - text_encoder, vae and safety checker have their state dicts saved to CPU and then are moved to a - `torch.device('meta') and loaded to GPU only when their specific submodule has its `forward` method called. - Note that offloading happens on a submodule basis. Memory savings are higher than with - `enable_model_cpu_offload`, but performance is lower. - """ - if is_accelerate_available() and is_accelerate_version(">=", "0.14.0"): - from accelerate import cpu_offload - else: - raise ImportError( - "`enable_sequential_cpu_offload` requires `accelerate v0.14.0` or higher" - ) - - device = torch.device(f"cuda:{gpu_id}") - - if self.device.type != "cpu": - self.to("cpu", silence_dtype_warnings=True) - torch.cuda.empty_cache() # otherwise we don't see the memory savings (but they probably exist) - - for cpu_offloaded_model in [self.unet, self.text_encoder, self.vae]: - cpu_offload(cpu_offloaded_model, device) - - def enable_model_cpu_offload(self, gpu_id=0): - r""" - Offloads all models to CPU using accelerate, reducing memory usage with a low impact on performance. Compared - to `enable_sequential_cpu_offload`, this method moves one whole model at a time to the GPU when its `forward` - method is called, and the model remains in GPU until the next model runs. Memory savings are lower than with - `enable_sequential_cpu_offload`, but performance is much better due to the iterative execution of the `unet`. - """ - if is_accelerate_available() and is_accelerate_version(">=", "0.17.0.dev0"): - from accelerate import cpu_offload_with_hook - else: - raise ImportError( - "`enable_model_offload` requires `accelerate v0.17.0` or higher." - ) - - device = torch.device(f"cuda:{gpu_id}") - - if self.device.type != "cpu": - self.to("cpu", silence_dtype_warnings=True) - torch.cuda.empty_cache() # otherwise we don't see the memory savings (but they probably exist) - - hook = None - for cpu_offloaded_model in [self.text_encoder, self.unet, self.vae]: - _, hook = cpu_offload_with_hook( - cpu_offloaded_model, device, prev_module_hook=hook - ) - - # We'll offload the last model manually. - self.final_offload_hook = hook - - @property - def _execution_device(self): - r""" - Returns the device on which the pipeline's models will be executed. After calling - `pipeline.enable_sequential_cpu_offload()` the execution device can only be inferred from Accelerate's module - hooks. - """ - if not hasattr(self.unet, "_hf_hook"): - return self.device - for module in self.unet.modules(): - if ( - hasattr(module, "_hf_hook") - and hasattr(module._hf_hook, "execution_device") - and module._hf_hook.execution_device is not None - ): - return torch.device(module._hf_hook.execution_device) - return self.device - - def _encode_prompt( - self, - prompt, - device, - num_images_per_prompt, - do_classifier_free_guidance: bool, - negative_prompt=None, - ): - r""" - Encodes the prompt into text encoder hidden states. - - Args: - prompt (`str` or `List[str]`, *optional*): - prompt to be encoded - device: (`torch.device`): - torch device - num_images_per_prompt (`int`): - number of images that should be generated per prompt - do_classifier_free_guidance (`bool`): - whether to use classifier free guidance or not - negative_prompt (`str` or `List[str]`, *optional*): - The prompt or prompts not to guide the image generation. If not defined, one has to pass - `negative_prompt_embeds`. instead. If not defined, one has to pass `negative_prompt_embeds`. instead. - Ignored when not using guidance (i.e., ignored if `guidance_scale` is less than `1`). - prompt_embeds (`torch.FloatTensor`, *optional*): - Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not - provided, text embeddings will be generated from `prompt` input argument. - negative_prompt_embeds (`torch.FloatTensor`, *optional*): - Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt - weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input - argument. - """ - if prompt is not None and isinstance(prompt, str): - batch_size = 1 - elif prompt is not None and isinstance(prompt, list): - batch_size = len(prompt) - else: - raise ValueError( - f"`prompt` should be either a string or a list of strings, but got {type(prompt)}." - ) - - text_inputs = self.tokenizer( - prompt, - padding="max_length", - max_length=self.tokenizer.model_max_length, - truncation=True, - return_tensors="pt", - ) - text_input_ids = text_inputs.input_ids - untruncated_ids = self.tokenizer( - prompt, padding="longest", return_tensors="pt" - ).input_ids - - if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal( - text_input_ids, untruncated_ids - ): - removed_text = self.tokenizer.batch_decode( - untruncated_ids[:, self.tokenizer.model_max_length - 1 : -1] - ) - logger.warning( - "The following part of your input was truncated because CLIP can only handle sequences up to" - f" {self.tokenizer.model_max_length} tokens: {removed_text}" - ) - - if ( - hasattr(self.text_encoder.config, "use_attention_mask") - and self.text_encoder.config.use_attention_mask - ): - attention_mask = text_inputs.attention_mask.to(device) - else: - attention_mask = None - - prompt_embeds = self.text_encoder( - text_input_ids.to(device), - attention_mask=attention_mask, - ) - prompt_embeds = prompt_embeds[0] - - prompt_embeds = prompt_embeds.to(dtype=self.text_encoder.dtype, device=device) - - bs_embed, seq_len, _ = prompt_embeds.shape - # duplicate text embeddings for each generation per prompt, using mps friendly method - prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1) - prompt_embeds = prompt_embeds.view( - bs_embed * num_images_per_prompt, seq_len, -1 - ) - - # get unconditional embeddings for classifier free guidance - if do_classifier_free_guidance: - uncond_tokens: List[str] - if negative_prompt is None: - uncond_tokens = [""] * batch_size - elif type(prompt) is not type(negative_prompt): - raise TypeError( - f"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=" - f" {type(prompt)}." - ) - elif isinstance(negative_prompt, str): - uncond_tokens = [negative_prompt] - elif batch_size != len(negative_prompt): - raise ValueError( - f"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:" - f" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches" - " the batch size of `prompt`." - ) - else: - uncond_tokens = negative_prompt - - max_length = prompt_embeds.shape[1] - uncond_input = self.tokenizer( - uncond_tokens, - padding="max_length", - max_length=max_length, - truncation=True, - return_tensors="pt", - ) - - if ( - hasattr(self.text_encoder.config, "use_attention_mask") - and self.text_encoder.config.use_attention_mask - ): - attention_mask = uncond_input.attention_mask.to(device) - else: - attention_mask = None - - negative_prompt_embeds = self.text_encoder( - uncond_input.input_ids.to(device), - attention_mask=attention_mask, - ) - negative_prompt_embeds = negative_prompt_embeds[0] - - # duplicate unconditional embeddings for each generation per prompt, using mps friendly method - seq_len = negative_prompt_embeds.shape[1] - - negative_prompt_embeds = negative_prompt_embeds.to( - dtype=self.text_encoder.dtype, device=device - ) - - negative_prompt_embeds = negative_prompt_embeds.repeat( - 1, num_images_per_prompt, 1 - ) - negative_prompt_embeds = negative_prompt_embeds.view( - batch_size * num_images_per_prompt, seq_len, -1 - ) - - # For classifier free guidance, we need to do two forward passes. - # Here we concatenate the unconditional and text embeddings into a single batch - # to avoid doing two forward passes - prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds]) - - return prompt_embeds - - def decode_latents(self, latents): - latents = 1 / self.vae.config.scaling_factor * latents - image = self.vae.decode(latents).sample - image = (image / 2 + 0.5).clamp(0, 1) - # we always cast to float32 as this does not cause significant overhead and is compatible with bfloat16 - image = image.cpu().permute(0, 2, 3, 1).float().numpy() - return image - - def prepare_extra_step_kwargs(self, generator, eta): - # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature - # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers. - # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502 - # and should be between [0, 1] - - accepts_eta = "eta" in set( - inspect.signature(self.scheduler.step).parameters.keys() - ) - extra_step_kwargs = {} - if accepts_eta: - extra_step_kwargs["eta"] = eta - - # check if the scheduler accepts generator - accepts_generator = "generator" in set( - inspect.signature(self.scheduler.step).parameters.keys() - ) - if accepts_generator: - extra_step_kwargs["generator"] = generator - return extra_step_kwargs - - def prepare_latents( - self, - batch_size, - num_channels_latents, - height, - width, - dtype, - device, - generator, - latents=None, - ): - shape = ( - batch_size, - num_channels_latents, - height // self.vae_scale_factor, - width // self.vae_scale_factor, - ) - if isinstance(generator, list) and len(generator) != batch_size: - raise ValueError( - f"You have passed a list of generators of length {len(generator)}, but requested an effective batch" - f" size of {batch_size}. Make sure the batch size matches the length of the generators." - ) - - if latents is None: - latents = randn_tensor( - shape, generator=generator, device=device, dtype=dtype - ) - else: - latents = latents.to(device) - - # scale the initial noise by the standard deviation required by the scheduler - latents = latents * self.scheduler.init_noise_sigma - return latents - - def encode_image(self, image, device, num_images_per_prompt): - dtype = next(self.image_encoder.parameters()).dtype - - if image.dtype == np.float32: - image = (image * 255).astype(np.uint8) - - image = self.feature_extractor(image, return_tensors="pt").pixel_values - image = image.to(device=device, dtype=dtype) - - image_embeds = self.image_encoder(image, output_hidden_states=True).hidden_states[-2] - image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0) - - return torch.zeros_like(image_embeds), image_embeds - - def encode_image_latents(self, image, device, num_images_per_prompt): - - dtype = next(self.image_encoder.parameters()).dtype - - image = torch.from_numpy(image).unsqueeze(0).permute(0, 3, 1, 2).to(device=device) # [1, 3, H, W] - image = 2 * image - 1 - image = F.interpolate(image, (256, 256), mode='bilinear', align_corners=False) - image = image.to(dtype=dtype) - - posterior = self.vae.encode(image).latent_dist - latents = posterior.sample() * self.vae.config.scaling_factor # [B, C, H, W] - latents = latents.repeat_interleave(num_images_per_prompt, dim=0) - - return torch.zeros_like(latents), latents - - @torch.no_grad() - def __call__( - self, - prompt: str = "", - image: Optional[np.ndarray] = None, - height: int = 256, - width: int = 256, - elevation: float = 0, - num_inference_steps: int = 50, - guidance_scale: float = 7.0, - negative_prompt: str = "", - num_images_per_prompt: int = 1, - eta: float = 0.0, - generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None, - output_type: Optional[str] = "numpy", # pil, numpy, latents - callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None, - callback_steps: int = 1, - num_frames: int = 4, - device=torch.device("cuda:0"), - ): - self.unet = self.unet.to(device=device) - self.vae = self.vae.to(device=device) - self.text_encoder = self.text_encoder.to(device=device) - - # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2) - # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1` - # corresponds to doing no classifier free guidance. - do_classifier_free_guidance = guidance_scale > 1.0 - - # Prepare timesteps - self.scheduler.set_timesteps(num_inference_steps, device=device) - timesteps = self.scheduler.timesteps - - # imagedream variant - if image is not None: - assert isinstance(image, np.ndarray) and image.dtype == np.float32 - self.image_encoder = self.image_encoder.to(device=device) - image_embeds_neg, image_embeds_pos = self.encode_image(image, device, num_images_per_prompt) - image_latents_neg, image_latents_pos = self.encode_image_latents(image, device, num_images_per_prompt) - - _prompt_embeds = self._encode_prompt( - prompt=prompt, - device=device, - num_images_per_prompt=num_images_per_prompt, - do_classifier_free_guidance=do_classifier_free_guidance, - negative_prompt=negative_prompt, - ) # type: ignore - prompt_embeds_neg, prompt_embeds_pos = _prompt_embeds.chunk(2) - - # Prepare latent variables - actual_num_frames = num_frames if image is None else num_frames + 1 - latents: torch.Tensor = self.prepare_latents( - actual_num_frames * num_images_per_prompt, - 4, - height, - width, - prompt_embeds_pos.dtype, - device, - generator, - None, - ) - - if image is not None: - camera = get_camera(num_frames, elevation=elevation, extra_view=True).to(dtype=latents.dtype, device=device) - else: - camera = get_camera(num_frames, elevation=elevation, extra_view=False).to(dtype=latents.dtype, device=device) - camera = camera.repeat_interleave(num_images_per_prompt, dim=0) - - # Prepare extra step kwargs. - extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta) - - # Denoising loop - timesteps_len = len(timesteps) - comfy_pbar = comfy.utils.ProgressBar(timesteps_len) - - num_warmup_steps = timesteps_len - num_inference_steps * self.scheduler.order - with self.progress_bar(total=num_inference_steps) as progress_bar: - for i, t in enumerate(timesteps): - # expand the latents if we are doing classifier free guidance - multiplier = 2 if do_classifier_free_guidance else 1 - latent_model_input = torch.cat([latents] * multiplier) - latent_model_input = self.scheduler.scale_model_input(latent_model_input, t) - - unet_inputs = { - 'x': latent_model_input, - 'timesteps': torch.tensor([t] * actual_num_frames * multiplier, dtype=latent_model_input.dtype, device=device), - 'context': torch.cat([prompt_embeds_neg] * actual_num_frames + [prompt_embeds_pos] * actual_num_frames), - 'num_frames': actual_num_frames, - 'camera': torch.cat([camera] * multiplier), - } - - if image is not None: - unet_inputs['ip'] = torch.cat([image_embeds_neg] * actual_num_frames + [image_embeds_pos] * actual_num_frames) - unet_inputs['ip_img'] = torch.cat([image_latents_neg] + [image_latents_pos]) # no repeat - - # predict the noise residual - noise_pred = self.unet.forward(**unet_inputs) - - # perform guidance - if do_classifier_free_guidance: - noise_pred_uncond, noise_pred_text = noise_pred.chunk(2) - noise_pred = noise_pred_uncond + guidance_scale * ( - noise_pred_text - noise_pred_uncond - ) - - # compute the previous noisy sample x_t -> x_t-1 - latents: torch.Tensor = self.scheduler.step( - noise_pred, t, latents, **extra_step_kwargs, return_dict=False - )[0] - - # call the callback, if provided - if i == len(timesteps) - 1 or ( - (i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0 - ): - progress_bar.update() - if callback is not None and i % callback_steps == 0: - callback(i, t, latents) # type: ignore - - comfy_pbar.update_absolute(i + 1) - - # Post-processing - if output_type == "latent": - image = latents - elif output_type == "pil": - image = self.decode_latents(latents) - image = self.numpy_to_pil(image) - else: # numpy - image = self.decode_latents(latents) - - # Offload last model to CPU - if hasattr(self, "final_offload_hook") and self.final_offload_hook is not None: - self.final_offload_hook.offload() - - return image \ No newline at end of file diff --git a/mcubes/PyMCubes-0.1.4-py311-cp311-linux_x86_64.whl b/mcubes/PyMCubes-0.1.4-py311-cp311-linux_x86_64.whl deleted file mode 100644 index 1624bd3..0000000 Binary files a/mcubes/PyMCubes-0.1.4-py311-cp311-linux_x86_64.whl and /dev/null differ diff --git a/mvdiffusion/data/fixed_poses/nine_views/000_back_RT.txt b/mvdiffusion/data/fixed_poses/nine_views/000_back_RT.txt deleted file mode 100644 index 7ef2610..0000000 --- a/mvdiffusion/data/fixed_poses/nine_views/000_back_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ --5.266582965850830078e-01 7.410295009613037109e-01 -4.165407419204711914e-01 -5.960464477539062500e-08 -5.865638996738198330e-08 4.900035560131072998e-01 8.717204332351684570e-01 -9.462351613365171943e-08 -8.500770330429077148e-01 4.590988159179687500e-01 -2.580644786357879639e-01 -1.300000071525573730e+00 diff --git a/mvdiffusion/data/fixed_poses/nine_views/000_back_left_RT.txt b/mvdiffusion/data/fixed_poses/nine_views/000_back_left_RT.txt deleted file mode 100644 index 7db25bb..0000000 --- a/mvdiffusion/data/fixed_poses/nine_views/000_back_left_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ --9.734988808631896973e-01 1.993551850318908691e-01 -1.120596975088119507e-01 -1.713633537292480469e-07 -3.790224578636980368e-09 4.900034964084625244e-01 8.717204928398132324e-01 1.772203575001185527e-07 -2.286916375160217285e-01 8.486189246177673340e-01 -4.770178496837615967e-01 -1.838477611541748047e+00 diff --git a/mvdiffusion/data/fixed_poses/nine_views/000_back_right_RT.txt b/mvdiffusion/data/fixed_poses/nine_views/000_back_right_RT.txt deleted file mode 100644 index be45ed8..0000000 --- a/mvdiffusion/data/fixed_poses/nine_views/000_back_right_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ -2.286914736032485962e-01 8.486190438270568848e-01 -4.770178198814392090e-01 1.564621925354003906e-07 --3.417914484771245043e-08 4.900034070014953613e-01 8.717205524444580078e-01 -7.293811421504869941e-08 -9.734990000724792480e-01 -1.993550658226013184e-01 1.120596155524253845e-01 -1.838477969169616699e+00 diff --git a/mvdiffusion/data/fixed_poses/nine_views/000_front_RT.txt b/mvdiffusion/data/fixed_poses/nine_views/000_front_RT.txt deleted file mode 100644 index 8278639..0000000 --- a/mvdiffusion/data/fixed_poses/nine_views/000_front_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ -5.266583561897277832e-01 -7.410295009613037109e-01 4.165407419204711914e-01 0.000000000000000000e+00 -5.865638996738198330e-08 4.900035560131072998e-01 8.717204332351684570e-01 9.462351613365171943e-08 --8.500770330429077148e-01 -4.590988159179687500e-01 2.580645382404327393e-01 -1.300000071525573730e+00 diff --git a/mvdiffusion/data/fixed_poses/nine_views/000_front_left_RT.txt b/mvdiffusion/data/fixed_poses/nine_views/000_front_left_RT.txt deleted file mode 100644 index 6255b9f..0000000 --- a/mvdiffusion/data/fixed_poses/nine_views/000_front_left_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ --2.286916971206665039e-01 -8.486189842224121094e-01 4.770179092884063721e-01 -2.458691596984863281e-07 -9.085837859856837895e-09 4.900034666061401367e-01 8.717205524444580078e-01 1.205695667749751010e-07 --9.734990000724792480e-01 1.993551701307296753e-01 -1.120597645640373230e-01 -1.838477969169616699e+00 diff --git a/mvdiffusion/data/fixed_poses/nine_views/000_front_right_RT.txt b/mvdiffusion/data/fixed_poses/nine_views/000_front_right_RT.txt deleted file mode 100644 index e1d76c8..0000000 --- a/mvdiffusion/data/fixed_poses/nine_views/000_front_right_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ -9.734989404678344727e-01 -1.993551850318908691e-01 1.120596975088119507e-01 -1.415610313415527344e-07 -3.790224578636980368e-09 4.900034964084625244e-01 8.717204928398132324e-01 -1.772203575001185527e-07 --2.286916375160217285e-01 -8.486189246177673340e-01 4.770178794860839844e-01 -1.838477611541748047e+00 diff --git a/mvdiffusion/data/fixed_poses/nine_views/000_left_RT.txt b/mvdiffusion/data/fixed_poses/nine_views/000_left_RT.txt deleted file mode 100644 index bd42197..0000000 --- a/mvdiffusion/data/fixed_poses/nine_views/000_left_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ --8.500771522521972656e-01 -4.590989053249359131e-01 2.580644488334655762e-01 0.000000000000000000e+00 --4.257411134744870651e-08 4.900034964084625244e-01 8.717204928398132324e-01 9.006067358541258727e-08 --5.266583561897277832e-01 7.410295605659484863e-01 -4.165408313274383545e-01 -1.300000071525573730e+00 diff --git a/mvdiffusion/data/fixed_poses/nine_views/000_right_RT.txt b/mvdiffusion/data/fixed_poses/nine_views/000_right_RT.txt deleted file mode 100644 index 2d37c02..0000000 --- a/mvdiffusion/data/fixed_poses/nine_views/000_right_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ -8.500770330429077148e-01 4.590989053249359131e-01 -2.580644488334655762e-01 5.960464477539062500e-08 --4.257411134744870651e-08 4.900034964084625244e-01 8.717204928398132324e-01 -9.006067358541258727e-08 -5.266583561897277832e-01 -7.410295605659484863e-01 4.165407419204711914e-01 -1.300000071525573730e+00 diff --git a/mvdiffusion/data/fixed_poses/nine_views/000_top_RT.txt b/mvdiffusion/data/fixed_poses/nine_views/000_top_RT.txt deleted file mode 100644 index 1d71f22..0000000 --- a/mvdiffusion/data/fixed_poses/nine_views/000_top_RT.txt +++ /dev/null @@ -1,3 +0,0 @@ -9.958608150482177734e-01 7.923202216625213623e-02 -4.453715682029724121e-02 -3.098167056236889039e-09 --9.089154005050659180e-02 8.681122064590454102e-01 -4.879753291606903076e-01 5.784738377201392723e-08 --2.028124157504862524e-08 4.900035560131072998e-01 8.717204332351684570e-01 -1.300000071525573730e+00 diff --git a/mvdiffusion/data/normal_utils.py b/mvdiffusion/data/normal_utils.py deleted file mode 100644 index dff3730..0000000 --- a/mvdiffusion/data/normal_utils.py +++ /dev/null @@ -1,45 +0,0 @@ -import numpy as np - -def camNormal2worldNormal(rot_c2w, camNormal): - H,W,_ = camNormal.shape - normal_img = np.matmul(rot_c2w[None, :, :], camNormal.reshape(-1,3)[:, :, None]).reshape([H, W, 3]) - - return normal_img - -def worldNormal2camNormal(rot_w2c, normal_map_world): - H,W,_ = normal_map_world.shape - # normal_img = np.matmul(rot_w2c[None, :, :], worldNormal.reshape(-1,3)[:, :, None]).reshape([H, W, 3]) - - # faster version - # Reshape the normal map into a 2D array where each row represents a normal vector - normal_map_flat = normal_map_world.reshape(-1, 3) - - # Transform the normal vectors using the transformation matrix - normal_map_camera_flat = np.dot(normal_map_flat, rot_w2c.T) - - # Reshape the transformed normal map back to its original shape - normal_map_camera = normal_map_camera_flat.reshape(normal_map_world.shape) - - return normal_map_camera - -def trans_normal(normal, RT_w2c, RT_w2c_target): - - # normal_world = camNormal2worldNormal(np.linalg.inv(RT_w2c[:3,:3]), normal) - # normal_target_cam = worldNormal2camNormal(RT_w2c_target[:3,:3], normal_world) - - relative_RT = np.matmul(RT_w2c_target[:3,:3], np.linalg.inv(RT_w2c[:3,:3])) - normal_target_cam = worldNormal2camNormal(relative_RT[:3,:3], normal) - - return normal_target_cam - -def img2normal(img): - return (img/255.)*2-1 - -def normal2img(normal): - return np.uint8((normal*0.5+0.5)*255) - -def norm_normalize(normal, dim=-1): - - normal = normal/(np.linalg.norm(normal, axis=dim, keepdims=True)+1e-6) - - return normal \ No newline at end of file diff --git a/mvdiffusion/data/objaverse_dataset.py b/mvdiffusion/data/objaverse_dataset.py deleted file mode 100644 index 57777c7..0000000 --- a/mvdiffusion/data/objaverse_dataset.py +++ /dev/null @@ -1,510 +0,0 @@ -from typing import Dict -import numpy as np -from omegaconf import DictConfig, ListConfig -import torch -from torch.utils.data import Dataset -from pathlib import Path -import json -from PIL import Image -from torchvision import transforms -from einops import rearrange -from typing import Literal, Tuple, Optional, Any -import random - -import json -import os, sys -import math - -from .normal_utils import trans_normal, normal2img, img2normal - - -class ObjaverseDataset(Dataset): - def __init__(self, - root_dir: str, - num_views: int, - bg_color: Any, - img_wh: Tuple[int, int], - object_list: str, - groups_num: int=1, - validation: bool = False, - data_view_num: int = 6, - num_validation_samples: int = 64, - num_samples: Optional[int] = None, - invalid_list: Optional[str] = None, - trans_norm_system: bool = True, # if True, transform all normals map into the cam system of front view - augment_data: bool = False, - read_normal: bool = True, - read_color: bool = False, - read_depth: bool = False, - read_mask: bool = True, - mix_color_normal: bool = False, - suffix: str = 'png', - subscene_tag: int = 3, - backup_scene: str = "9438abf986c7453a9f4df7c34aa2e65b" - ) -> None: - """Create a dataset from a folder of images. - If you pass in a root directory it will be searched for images - ending in ext (ext can be a list) - """ - self.root_dir = Path(root_dir) - self.num_views = num_views - self.bg_color = bg_color - self.validation = validation - self.num_samples = num_samples - self.trans_norm_system = trans_norm_system - self.augment_data = augment_data - self.invalid_list = invalid_list - self.groups_num = groups_num - print("augment data: ", self.augment_data) - self.img_wh = img_wh - self.read_normal = read_normal - self.read_color = read_color - self.read_depth = read_depth - self.read_mask = read_mask - self.mix_color_normal = mix_color_normal # mix load color and normal maps - self.suffix = suffix - self.subscene_tag = subscene_tag - - self.view_types = ['front', 'front_right', 'right', 'back', 'left', 'front_left'] - self.fix_cam_pose_dir = "./mvdiffusion/data/fixed_poses/nine_views" - - self.fix_cam_poses = self.load_fixed_poses() # world2cam matrix - - if object_list is not None: - with open(object_list) as f: - self.objects = json.load(f) - self.objects = [os.path.basename(o).replace(".glb", "") for o in self.objects] - else: - self.objects = os.listdir(self.root_dir) - self.objects = sorted(self.objects) - - if self.invalid_list is not None: - with open(self.invalid_list) as f: - self.invalid_objects = json.load(f) - self.invalid_objects = [os.path.basename(o).replace(".glb", "") for o in self.invalid_objects] - else: - self.invalid_objects = [] - - - self.all_objects = set(self.objects) - (set(self.invalid_objects) & set(self.objects)) - self.all_objects = list(self.all_objects) - - if not validation: - self.all_objects = self.all_objects[:-num_validation_samples] - else: - self.all_objects = self.all_objects[-num_validation_samples:] - if num_samples is not None: - self.all_objects = self.all_objects[:num_samples] - - print("loading ", len(self.all_objects), " objects in the dataset") - - if self.mix_color_normal: - self.backup_data = self.__getitem_mix__(0, backup_scene) - else: - self.backup_data = self.__getitem_joint__(0, backup_scene) - - def __len__(self): - return len(self.objects)*self.total_view - - def load_fixed_poses(self): - poses = {} - for face in self.view_types: - RT = np.loadtxt(os.path.join(self.fix_cam_pose_dir,'%03d_%s_RT.txt'%(0, face))) - poses[face] = RT - - return poses - - def cartesian_to_spherical(self, xyz): - ptsnew = np.hstack((xyz, np.zeros(xyz.shape))) - xy = xyz[:,0]**2 + xyz[:,1]**2 - z = np.sqrt(xy + xyz[:,2]**2) - theta = np.arctan2(np.sqrt(xy), xyz[:,2]) # for elevation angle defined from Z-axis down - #ptsnew[:,4] = np.arctan2(xyz[:,2], np.sqrt(xy)) # for elevation angle defined from XY-plane up - azimuth = np.arctan2(xyz[:,1], xyz[:,0]) - return np.array([theta, azimuth, z]) - - def get_T(self, target_RT, cond_RT): - R, T = target_RT[:3, :3], target_RT[:, -1] - T_target = -R.T @ T # change to cam2world - - R, T = cond_RT[:3, :3], cond_RT[:, -1] - T_cond = -R.T @ T - - theta_cond, azimuth_cond, z_cond = self.cartesian_to_spherical(T_cond[None, :]) - theta_target, azimuth_target, z_target = self.cartesian_to_spherical(T_target[None, :]) - - d_theta = theta_target - theta_cond - d_azimuth = (azimuth_target - azimuth_cond) % (2 * math.pi) - d_z = z_target - z_cond - - # d_T = torch.tensor([d_theta.item(), math.sin(d_azimuth.item()), math.cos(d_azimuth.item()), d_z.item()]) - return d_theta, d_azimuth - - def get_bg_color(self): - if self.bg_color == 'white': - bg_color = np.array([1., 1., 1.], dtype=np.float32) - elif self.bg_color == 'black': - bg_color = np.array([0., 0., 0.], dtype=np.float32) - elif self.bg_color == 'gray': - bg_color = np.array([0.5, 0.5, 0.5], dtype=np.float32) - elif self.bg_color == 'random': - bg_color = np.random.rand(3) - elif self.bg_color == 'three_choices': - white = np.array([1., 1., 1.], dtype=np.float32) - black = np.array([0., 0., 0.], dtype=np.float32) - gray = np.array([0.5, 0.5, 0.5], dtype=np.float32) - bg_color = random.choice([white, black, gray]) - elif isinstance(self.bg_color, float): - bg_color = np.array([self.bg_color] * 3, dtype=np.float32) - else: - raise NotImplementedError - return bg_color - - - - def load_mask(self, img_path, return_type='np'): - # not using cv2 as may load in uint16 format - # img = cv2.imread(img_path, cv2.IMREAD_UNCHANGED) # [0, 255] - # img = cv2.resize(img, self.img_wh, interpolation=cv2.INTER_CUBIC) - # pil always returns uint8 - img = np.array(Image.open(img_path).resize(self.img_wh)) - img = np.float32(img > 0) - - assert len(np.shape(img)) == 2 - - if return_type == "np": - pass - elif return_type == "pt": - img = torch.from_numpy(img) - else: - raise NotImplementedError - - return img - - def load_image(self, img_path, bg_color, alpha, return_type='np'): - # not using cv2 as may load in uint16 format - # img = cv2.imread(img_path, cv2.IMREAD_UNCHANGED) # [0, 255] - # img = cv2.resize(img, self.img_wh, interpolation=cv2.INTER_CUBIC) - # pil always returns uint8 - img = np.array(Image.open(img_path).resize(self.img_wh)) - img = img.astype(np.float32) / 255. # [0, 1] - assert img.shape[-1] == 3 or img.shape[-1] == 4 # RGB or RGBA - - if alpha is None and img.shape[-1] == 4: - alpha = img[:, :, 3:] - img = img[:, :, :3] - - if alpha.shape[-1] != 1: - alpha = alpha[:, :, None] - - img = img[...,:3] * alpha + bg_color * (1 - alpha) - - if return_type == "np": - pass - elif return_type == "pt": - img = torch.from_numpy(img) - else: - raise NotImplementedError - - return img - - def load_depth(self, img_path, bg_color, alpha, return_type='np'): - # not using cv2 as may load in uint16 format - # img = cv2.imread(img_path, cv2.IMREAD_UNCHANGED) # [0, 255] - # img = cv2.resize(img, self.img_wh, interpolation=cv2.INTER_CUBIC) - # pil always returns uint8 - img = np.array(Image.open(img_path).resize(self.img_wh)) - img = img.astype(np.float32) / 65535. # [0, 1] - - img[img > 0.4] = 0 - img = img / 0.4 - - assert img.ndim == 2 # depth - img = np.stack([img]*3, axis=-1) - - if alpha.shape[-1] != 1: - alpha = alpha[:, :, None] - - # print(np.max(img[:, :, 0])) - - img = img[...,:3] * alpha + bg_color * (1 - alpha) - - if return_type == "np": - pass - elif return_type == "pt": - img = torch.from_numpy(img) - else: - raise NotImplementedError - - return img - - def load_normal(self, img_path, bg_color, alpha, RT_w2c=None, RT_w2c_cond=None, return_type='np'): - # not using cv2 as may load in uint16 format - # img = cv2.imread(img_path, cv2.IMREAD_UNCHANGED) # [0, 255] - # img = cv2.resize(img, self.img_wh, interpolation=cv2.INTER_CUBIC) - # pil always returns uint8 - normal = np.array(Image.open(img_path).resize(self.img_wh)) - - assert normal.shape[-1] == 3 or normal.shape[-1] == 4 # RGB or RGBA - - if alpha is None and normal.shape[-1] == 4: - alpha = normal[:, :, 3:] / 255. - normal = normal[:, :, :3] - - normal = trans_normal(img2normal(normal), RT_w2c, RT_w2c_cond) - - img = (normal*0.5 + 0.5).astype(np.float32) # [0, 1] - - if alpha.shape[-1] != 1: - alpha = alpha[:, :, None] - - img = img[...,:3] * alpha + bg_color * (1 - alpha) - - if return_type == "np": - pass - elif return_type == "pt": - img = torch.from_numpy(img) - else: - raise NotImplementedError - - return img - - def __len__(self): - return len(self.all_objects) - - def __getitem_mix__(self, index, debug_object=None): - if debug_object is not None: - object_name = debug_object # - set_idx = random.sample(range(0, self.groups_num), 1)[0] # without replacement - else: - object_name = self.all_objects[index%len(self.all_objects)] - set_idx = 0 - - if self.augment_data: - cond_view = random.sample(self.view_types, k=1)[0] - else: - cond_view = 'front' - - - # ! if you would like predict depth; modify here - if random.random() < 0.5: - read_color, read_normal, read_depth = True, False, False - else: - read_color, read_normal, read_depth = False, True, False - - read_normal = read_normal & self.read_normal - read_depth = read_depth & self.read_depth - - assert (read_color and (read_normal or read_depth)) is False - - view_types = self.view_types - - cond_w2c = self.fix_cam_poses[cond_view] - - tgt_w2cs = [self.fix_cam_poses[view] for view in view_types] - - elevations = [] - azimuths = [] - - # get the bg color - bg_color = self.get_bg_color() - - if self.read_mask: - cond_alpha = self.load_mask(os.path.join(self.root_dir, object_name[:self.subscene_tag], object_name, "mask_%03d_%s.%s" % (set_idx, cond_view, self.suffix)), return_type='np') - else: - cond_alpha = None - img_tensors_in = [ - self.load_image(os.path.join(self.root_dir, object_name[:self.subscene_tag], object_name, "rgb_%03d_%s.%s" % (set_idx, cond_view, self.suffix)), bg_color, cond_alpha, return_type='pt').permute(2, 0, 1) - ] * self.num_views - img_tensors_out = [] - - for view, tgt_w2c in zip(view_types, tgt_w2cs): - img_path = os.path.join(self.root_dir, object_name[:self.subscene_tag], object_name, "rgb_%03d_%s.%s" % (set_idx, view, self.suffix)) - mask_path = os.path.join(self.root_dir, object_name[:self.subscene_tag], object_name, "mask_%03d_%s.%s" % (set_idx, view, self.suffix)) - normal_path = os.path.join(self.root_dir, object_name[:self.subscene_tag], object_name, "normals_%03d_%s.%s" % (set_idx, view, self.suffix)) - depth_path = os.path.join(self.root_dir, object_name[:self.subscene_tag], object_name, "depth_%03d_%s.%s" % (set_idx, view, self.suffix)) - if self.read_mask: - alpha = self.load_mask(mask_path, return_type='np') - else: - alpha = None - - if read_color: - img_tensor = self.load_image(img_path, bg_color, alpha, return_type="pt") - img_tensor = img_tensor.permute(2, 0, 1) - img_tensors_out.append(img_tensor) - - if read_normal: - normal_tensor = self.load_normal(normal_path, bg_color, alpha, RT_w2c=tgt_w2c, RT_w2c_cond=cond_w2c, return_type="pt").permute(2, 0, 1) - img_tensors_out.append(normal_tensor) - if read_depth: - depth_tensor = self.load_depth(depth_path, bg_color, alpha, return_type="pt").permute(2, 0, 1) - img_tensors_out.append(depth_tensor) - - # evelations, azimuths - elevation, azimuth = self.get_T(tgt_w2c, cond_w2c) - elevations.append(elevation) - azimuths.append(azimuth) - - img_tensors_in = torch.stack(img_tensors_in, dim=0).float() # (Nv, 3, H, W) - img_tensors_out = torch.stack(img_tensors_out, dim=0).float() # (Nv, 3, H, W) - - - elevations = torch.as_tensor(elevations).float().squeeze(1) - azimuths = torch.as_tensor(azimuths).float().squeeze(1) - elevations_cond = torch.as_tensor([0] * self.num_views).float() # fixed only use 4 views to train - camera_embeddings = torch.stack([elevations_cond, elevations, azimuths], dim=-1) # (Nv, 3) - - normal_class = torch.tensor([1, 0]).float() - normal_task_embeddings = torch.stack([normal_class]*self.num_views, dim=0) # (Nv, 2) - color_class = torch.tensor([0, 1]).float() - color_task_embeddings = torch.stack([color_class]*self.num_views, dim=0) # (Nv, 2) - if read_normal or read_depth: - task_embeddings = normal_task_embeddings - if read_color: - task_embeddings = color_task_embeddings - # print(elevations) - # print(azimuths) - return { - 'elevations_cond': elevations_cond, - 'elevations_cond_deg': torch.rad2deg(elevations_cond), - 'elevations': elevations, - 'azimuths': azimuths, - 'elevations_deg': torch.rad2deg(elevations), - 'azimuths_deg': torch.rad2deg(azimuths), - 'imgs_in': img_tensors_in, - 'imgs_out': img_tensors_out, - 'camera_embeddings': camera_embeddings, - 'task_embeddings': task_embeddings - } - - - def __getitem_joint__(self, index, debug_object=None): - if debug_object is not None: - object_name = debug_object # - set_idx = random.sample(range(0, self.groups_num), 1)[0] # without replacement - else: - object_name = self.all_objects[index%len(self.all_objects)] - set_idx = 0 - - if self.augment_data: - cond_view = random.sample(self.view_types, k=1)[0] - else: - cond_view = 'front' - - view_types = self.view_types - - cond_w2c = self.fix_cam_poses[cond_view] - - tgt_w2cs = [self.fix_cam_poses[view] for view in view_types] - - elevations = [] - azimuths = [] - - # get the bg color - bg_color = self.get_bg_color() - - if self.read_mask: - cond_alpha = self.load_mask(os.path.join(self.root_dir, object_name[:self.subscene_tag], object_name, "mask_%03d_%s.%s" % (set_idx, cond_view, self.suffix)), return_type='np') - else: - cond_alpha = None - img_tensors_in = [ - self.load_image(os.path.join(self.root_dir, object_name[:self.subscene_tag], object_name, "rgb_%03d_%s.%s" % (set_idx, cond_view, self.suffix)), bg_color, cond_alpha, return_type='pt').permute(2, 0, 1) - ] * self.num_views - img_tensors_out = [] - normal_tensors_out = [] - for view, tgt_w2c in zip(view_types, tgt_w2cs): - img_path = os.path.join(self.root_dir, object_name[:self.subscene_tag], object_name, "rgb_%03d_%s.%s" % (set_idx, view, self.suffix)) - mask_path = os.path.join(self.root_dir, object_name[:self.subscene_tag], object_name, "mask_%03d_%s.%s" % (set_idx, view, self.suffix)) - if self.read_mask: - alpha = self.load_mask(mask_path, return_type='np') - else: - alpha = None - - if self.read_color: - img_tensor = self.load_image(img_path, bg_color, alpha, return_type="pt") - img_tensor = img_tensor.permute(2, 0, 1) - img_tensors_out.append(img_tensor) - - if self.read_normal: - normal_path = os.path.join(self.root_dir, object_name[:self.subscene_tag], object_name, "normals_%03d_%s.%s" % (set_idx, view, self.suffix)) - normal_tensor = self.load_normal(normal_path, bg_color, alpha, RT_w2c=tgt_w2c, RT_w2c_cond=cond_w2c, return_type="pt").permute(2, 0, 1) - normal_tensors_out.append(normal_tensor) - - # evelations, azimuths - elevation, azimuth = self.get_T(tgt_w2c, cond_w2c) - elevations.append(elevation) - azimuths.append(azimuth) - - img_tensors_in = torch.stack(img_tensors_in, dim=0).float() # (Nv, 3, H, W) - if self.read_color: - img_tensors_out = torch.stack(img_tensors_out, dim=0).float() # (Nv, 3, H, W) - if self.read_normal: - normal_tensors_out = torch.stack(normal_tensors_out, dim=0).float() # (Nv, 3, H, W) - - elevations = torch.as_tensor(elevations).float().squeeze(1) - azimuths = torch.as_tensor(azimuths).float().squeeze(1) - elevations_cond = torch.as_tensor([0] * self.num_views).float() # fixed only use 4 views to train - - camera_embeddings = torch.stack([elevations_cond, elevations, azimuths], dim=-1) # (Nv, 3) - - normal_class = torch.tensor([1, 0]).float() - normal_task_embeddings = torch.stack([normal_class]*self.num_views, dim=0) # (Nv, 2) - color_class = torch.tensor([0, 1]).float() - color_task_embeddings = torch.stack([color_class]*self.num_views, dim=0) # (Nv, 2) - - return { - 'elevations_cond': elevations_cond, - 'elevations_cond_deg': torch.rad2deg(elevations_cond), - 'elevations': elevations, - 'azimuths': azimuths, - 'elevations_deg': torch.rad2deg(elevations), - 'azimuths_deg': torch.rad2deg(azimuths), - 'imgs_in': img_tensors_in, - 'imgs_out': img_tensors_out, - 'normals_out': normal_tensors_out, - 'camera_embeddings': camera_embeddings, - 'normal_task_embeddings': normal_task_embeddings, - 'color_task_embeddings': color_task_embeddings - } - - def __getitem__(self, index): - try: - if self.mix_color_normal: - data = self.__getitem_mix__(index) - else: - data = self.__getitem_joint__(index) - return data - except: - print("load error ", self.all_objects[index%len(self.all_objects)] ) - return self.backup_data - - -class ConcatDataset(torch.utils.data.Dataset): - def __init__(self, datasets, weights): - self.datasets = datasets - self.weights = weights - self.num_datasets = len(datasets) - - def __getitem__(self, i): - - chosen = random.choices(self.datasets, self.weights, k=1)[0] - return chosen[i] - - def __len__(self): - return max(len(d) for d in self.datasets) - -if __name__ == "__main__": - train_dataset = ObjaverseDataset( - root_dir="/ghome/l5/xxlong/.objaverse/hf-objaverse-v1/renderings", - size=(128, 128), - ext="hdf5", - default_trans=torch.zeros(3), - return_paths=False, - total_view=8, - validation=False, - object_list=None, - views_mode='fourviews' - ) - data0 = train_dataset[0] - data1 = train_dataset[50] - # print(data) diff --git a/mvdiffusion/data/single_image_dataset.py b/mvdiffusion/data/single_image_dataset.py deleted file mode 100644 index 09f57cb..0000000 --- a/mvdiffusion/data/single_image_dataset.py +++ /dev/null @@ -1,292 +0,0 @@ -import numpy as np -import torch -from torch.utils.data import Dataset -from PIL import Image -from typing import Literal, Tuple, Optional, Any -import cv2 - -import os -import math - - -import cv2 -import numpy as np - -def add_margin(pil_img, color=0, size=256): - width, height = pil_img.size - result = Image.new(pil_img.mode, (size, size), color) - result.paste(pil_img, ((size - width) // 2, (size - height) // 2)) - return result - -def scale_and_place_object(image, scale_factor): - assert np.shape(image)[-1]==4 # RGBA - - # Extract the alpha channel (transparency) and the object (RGB channels) - alpha_channel = image[:, :, 3] - - # Find the bounding box coordinates of the object - coords = cv2.findNonZero(alpha_channel) - x, y, width, height = cv2.boundingRect(coords) - - # Calculate the scale factor for resizing - original_height, original_width = image.shape[:2] - - if width > height: - size = width - original_size = original_width - else: - size = height - original_size = original_height - - scale_factor = min(scale_factor, size / (original_size+0.0)) - - new_size = scale_factor * original_size - scale_factor = new_size / size - - # Calculate the new size based on the scale factor - new_width = int(width * scale_factor) - new_height = int(height * scale_factor) - - center_x = original_width // 2 - center_y = original_height // 2 - - paste_x = center_x - (new_width // 2) - paste_y = center_y - (new_height // 2) - - # Resize the object (RGB channels) to the new size - rescaled_object = cv2.resize(image[y:y+height, x:x+width], (new_width, new_height)) - - # Create a new RGBA image with the resized image - new_image = np.zeros((original_height, original_width, 4), dtype=np.uint8) - - new_image[paste_y:paste_y + new_height, paste_x:paste_x + new_width] = rescaled_object - - return new_image - -class SingleImageDataset(Dataset): - def __init__(self, - fix_cam_pose_dir: str, - num_views: int, - img_wh: Tuple[int, int], - bg_color: str, - crop_size: int = 224, - single_image: Optional[Image.Image] = None, - num_validation_samples: Optional[int] = None, - root_dir: Optional[str] = '', - filepaths: Optional[list] = None, - cond_type: Optional[str] = None - ) -> None: - """Create a dataset from a folder of images. - If you pass in a root directory it will be searched for images - ending in ext (ext can be a list) - """ - self.root_dir = root_dir - self.num_views = num_views - self.img_wh = img_wh - self.crop_size = crop_size - self.bg_color = bg_color - self.cond_type = cond_type - - if self.num_views == 4: - self.view_types = ['front', 'right', 'back', 'left'] - elif self.num_views == 5: - self.view_types = ['front', 'front_right', 'right', 'back', 'left'] - elif self.num_views == 6: - self.view_types = ['front', 'front_right', 'right', 'back', 'left', 'front_left'] - - self.fix_cam_pose_dir = fix_cam_pose_dir - - self.fix_cam_poses = self.load_fixed_poses() # world2cam matrix - - if single_image is None: - if filepaths is None: - # Get a list of all files in the directory - file_list = os.listdir(self.root_dir) - else: - file_list = filepaths - - # Filter the files that end with .png or .jpg - self.file_list = [file for file in file_list if file.endswith(('.png', '.jpg'))] - else: - self.file_list = None - - # load all images - self.all_images = [] - self.all_alphas = [] - bg_color = self.get_bg_color() - - if single_image is not None: - image, alpha = self.load_image(None, bg_color, return_type='pt', Imagefile=single_image) - self.all_images.append(image) - self.all_alphas.append(alpha) - else: - for file in self.file_list: - print(os.path.join(self.root_dir, file)) - image, alpha = self.load_image(os.path.join(self.root_dir, file), bg_color, return_type='pt') - self.all_images.append(image) - self.all_alphas.append(alpha) - - self.all_images = self.all_images[:num_validation_samples] - self.all_alphas = self.all_alphas[:num_validation_samples] - - - def __len__(self): - return len(self.all_images) - - def load_fixed_poses(self): - poses = {} - for face in self.view_types: - RT = np.loadtxt(os.path.join(self.fix_cam_pose_dir,'%03d_%s_RT.txt'%(0, face))) - poses[face] = RT - - return poses - - def cartesian_to_spherical(self, xyz): - ptsnew = np.hstack((xyz, np.zeros(xyz.shape))) - xy = xyz[:,0]**2 + xyz[:,1]**2 - z = np.sqrt(xy + xyz[:,2]**2) - theta = np.arctan2(np.sqrt(xy), xyz[:,2]) # for elevation angle defined from Z-axis down - #ptsnew[:,4] = np.arctan2(xyz[:,2], np.sqrt(xy)) # for elevation angle defined from XY-plane up - azimuth = np.arctan2(xyz[:,1], xyz[:,0]) - return np.array([theta, azimuth, z]) - - def get_T(self, target_RT, cond_RT): - R, T = target_RT[:3, :3], target_RT[:, -1] - T_target = -R.T @ T # change to cam2world - - R, T = cond_RT[:3, :3], cond_RT[:, -1] - T_cond = -R.T @ T - - theta_cond, azimuth_cond, z_cond = self.cartesian_to_spherical(T_cond[None, :]) - theta_target, azimuth_target, z_target = self.cartesian_to_spherical(T_target[None, :]) - - d_theta = theta_target - theta_cond - d_azimuth = (azimuth_target - azimuth_cond) % (2 * math.pi) - d_z = z_target - z_cond - - # d_T = torch.tensor([d_theta.item(), math.sin(d_azimuth.item()), math.cos(d_azimuth.item()), d_z.item()]) - return d_theta, d_azimuth - - def get_bg_color(self): - if self.bg_color == 'white': - bg_color = np.array([1., 1., 1.], dtype=np.float32) - elif self.bg_color == 'black': - bg_color = np.array([0., 0., 0.], dtype=np.float32) - elif self.bg_color == 'gray': - bg_color = np.array([0.5, 0.5, 0.5], dtype=np.float32) - elif self.bg_color == 'random': - bg_color = np.random.rand(3) - elif isinstance(self.bg_color, float): - bg_color = np.array([self.bg_color] * 3, dtype=np.float32) - else: - raise NotImplementedError - return bg_color - - - def load_image(self, img_path, bg_color, return_type='np', Imagefile=None): - # pil always returns uint8 - if Imagefile is None: - image_input = Image.open(img_path) - else: - image_input = Imagefile - image_size = self.img_wh[0] - - if self.crop_size!=-1: - alpha_np = np.asarray(image_input)[:, :, 3] - coords = np.stack(np.nonzero(alpha_np), 1)[:, (1, 0)] - min_x, min_y = np.min(coords, 0) - max_x, max_y = np.max(coords, 0) - ref_img_ = image_input.crop((min_x, min_y, max_x, max_y)) - h, w = ref_img_.height, ref_img_.width - scale = self.crop_size / max(h, w) - h_, w_ = int(scale * h), int(scale * w) - ref_img_ = ref_img_.resize((w_, h_)) - image_input = add_margin(ref_img_, size=image_size) - else: - image_input = add_margin(image_input, size=max(image_input.height, image_input.width)) - image_input = image_input.resize((image_size, image_size)) - - # img = scale_and_place_object(img, self.scale_ratio) - img = np.array(image_input) - img = img.astype(np.float32) / 255. # [0, 1] - assert img.shape[-1] == 4 # RGBA - - alpha = img[...,3:4] - img = img[...,:3] * alpha + bg_color * (1 - alpha) - - if return_type == "np": - pass - elif return_type == "pt": - img = torch.from_numpy(img) - alpha = torch.from_numpy(alpha) - else: - raise NotImplementedError - - return img, alpha - - - def __len__(self): - return len(self.all_images) - - def __getitem__(self, index): - - image = self.all_images[index%len(self.all_images)] - alpha = self.all_alphas[index%len(self.all_images)] - if self.file_list is not None: - filename = self.file_list[index%len(self.all_images)].replace(".png", "") - else: - filename = 'null' - - cond_w2c = self.fix_cam_poses['front'] - - tgt_w2cs = [self.fix_cam_poses[view] for view in self.view_types] - - elevations = [] - azimuths = [] - - img_tensors_in = [ - image.permute(2, 0, 1) - ] * self.num_views - - alpha_tensors_in = [ - alpha.permute(2, 0, 1) - ] * self.num_views - - for view, tgt_w2c in zip(self.view_types, tgt_w2cs): - # evelations, azimuths - elevation, azimuth = self.get_T(tgt_w2c, cond_w2c) - elevations.append(elevation) - azimuths.append(azimuth) - - img_tensors_in = torch.stack(img_tensors_in, dim=0).float() # (Nv, 3, H, W) - alpha_tensors_in = torch.stack(alpha_tensors_in, dim=0).float() # (Nv, 3, H, W) - - elevations = torch.as_tensor(elevations).float().squeeze(1) - azimuths = torch.as_tensor(azimuths).float().squeeze(1) - elevations_cond = torch.as_tensor([0] * self.num_views).float() - - normal_class = torch.tensor([1, 0]).float() - normal_task_embeddings = torch.stack([normal_class]*self.num_views, dim=0) # (Nv, 2) - color_class = torch.tensor([0, 1]).float() - color_task_embeddings = torch.stack([color_class]*self.num_views, dim=0) # (Nv, 2) - - camera_embeddings = torch.stack([elevations_cond, elevations, azimuths], dim=-1) # (Nv, 3) - - out = { - 'elevations_cond': elevations_cond, - 'elevations_cond_deg': torch.rad2deg(elevations_cond), - 'elevations': elevations, - 'azimuths': azimuths, - 'elevations_deg': torch.rad2deg(elevations), - 'azimuths_deg': torch.rad2deg(azimuths), - 'imgs_in': img_tensors_in, - 'alphas': alpha_tensors_in, - 'camera_embeddings': camera_embeddings, - 'normal_task_embeddings': normal_task_embeddings, - 'color_task_embeddings': color_task_embeddings, - 'filename': filename, - } - - return out - - diff --git a/mvdiffusion/models/transformer_mv2d.py b/mvdiffusion/models/transformer_mv2d.py deleted file mode 100644 index cdd6438..0000000 --- a/mvdiffusion/models/transformer_mv2d.py +++ /dev/null @@ -1,985 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -from dataclasses import dataclass -from typing import Any, Dict, Optional - -import torch -import torch.nn.functional as F -from torch import nn - -from diffusers.configuration_utils import ConfigMixin, register_to_config -from diffusers.models.embeddings import ImagePositionalEmbeddings -from diffusers.utils import BaseOutput, deprecate -from diffusers.utils.torch_utils import maybe_allow_in_graph -from diffusers.models.attention import FeedForward, AdaLayerNorm, AdaLayerNormZero, Attention -from diffusers.models.embeddings import PatchEmbed -from diffusers.models.lora import LoRACompatibleConv, LoRACompatibleLinear -from diffusers.models.modeling_utils import ModelMixin -from diffusers.utils.import_utils import is_xformers_available - -from einops import rearrange, repeat - - -if is_xformers_available(): - import xformers - import xformers.ops -else: - xformers = None - -def my_repeat(tensor, num_repeats): - """ - Repeat a tensor along a given dimension - """ - if len(tensor.shape) == 3: - return repeat(tensor, "b d c -> (b v) d c", v=num_repeats) - elif len(tensor.shape) == 4: - return repeat(tensor, "a b d c -> (a v) b d c", v=num_repeats) - - -@dataclass -class TransformerMV2DModelOutput(BaseOutput): - """ - The output of [`Transformer2DModel`]. - - Args: - sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` or `(batch size, num_vector_embeds - 1, num_latent_pixels)` if [`Transformer2DModel`] is discrete): - The hidden states output conditioned on the `encoder_hidden_states` input. If discrete, returns probability - distributions for the unnoised latent pixels. - """ - - sample: torch.FloatTensor - - -class TransformerMV2DModel(ModelMixin, ConfigMixin): - """ - A 2D Transformer model for image-like data. - - Parameters: - num_attention_heads (`int`, *optional*, defaults to 16): The number of heads to use for multi-head attention. - attention_head_dim (`int`, *optional*, defaults to 88): The number of channels in each head. - in_channels (`int`, *optional*): - The number of channels in the input and output (specify if the input is **continuous**). - num_layers (`int`, *optional*, defaults to 1): The number of layers of Transformer blocks to use. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - cross_attention_dim (`int`, *optional*): The number of `encoder_hidden_states` dimensions to use. - sample_size (`int`, *optional*): The width of the latent images (specify if the input is **discrete**). - This is fixed during training since it is used to learn a number of position embeddings. - num_vector_embeds (`int`, *optional*): - The number of classes of the vector embeddings of the latent pixels (specify if the input is **discrete**). - Includes the class for the masked latent pixel. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to use in feed-forward. - num_embeds_ada_norm ( `int`, *optional*): - The number of diffusion steps used during training. Pass if at least one of the norm_layers is - `AdaLayerNorm`. This is fixed during training since it is used to learn a number of embeddings that are - added to the hidden states. - - During inference, you can denoise for up to but not more steps than `num_embeds_ada_norm`. - attention_bias (`bool`, *optional*): - Configure if the `TransformerBlocks` attention should contain a bias parameter. - """ - - @register_to_config - def __init__( - self, - num_attention_heads: int = 16, - attention_head_dim: int = 88, - in_channels: Optional[int] = None, - out_channels: Optional[int] = None, - num_layers: int = 1, - dropout: float = 0.0, - norm_num_groups: int = 32, - cross_attention_dim: Optional[int] = None, - attention_bias: bool = False, - sample_size: Optional[int] = None, - num_vector_embeds: Optional[int] = None, - patch_size: Optional[int] = None, - activation_fn: str = "geglu", - num_embeds_ada_norm: Optional[int] = None, - use_linear_projection: bool = False, - only_cross_attention: bool = False, - upcast_attention: bool = False, - norm_type: str = "layer_norm", - norm_elementwise_affine: bool = True, - num_views: int = 1, - cd_attention_last: bool=False, - cd_attention_mid: bool=False, - multiview_attention: bool=True, - sparse_mv_attention: bool = False, - mvcd_attention: bool=False - ): - super().__init__() - self.use_linear_projection = use_linear_projection - self.num_attention_heads = num_attention_heads - self.attention_head_dim = attention_head_dim - inner_dim = num_attention_heads * attention_head_dim - - # 1. Transformer2DModel can process both standard continuous images of shape `(batch_size, num_channels, width, height)` as well as quantized image embeddings of shape `(batch_size, num_image_vectors)` - # Define whether input is continuous or discrete depending on configuration - self.is_input_continuous = (in_channels is not None) and (patch_size is None) - self.is_input_vectorized = num_vector_embeds is not None - self.is_input_patches = in_channels is not None and patch_size is not None - - if norm_type == "layer_norm" and num_embeds_ada_norm is not None: - deprecation_message = ( - f"The configuration file of this model: {self.__class__} is outdated. `norm_type` is either not set or" - " incorrectly set to `'layer_norm'`.Make sure to set `norm_type` to `'ada_norm'` in the config." - " Please make sure to update the config accordingly as leaving `norm_type` might led to incorrect" - " results in future versions. If you have downloaded this checkpoint from the Hugging Face Hub, it" - " would be very nice if you could open a Pull request for the `transformer/config.json` file" - ) - deprecate("norm_type!=num_embeds_ada_norm", "1.0.0", deprecation_message, standard_warn=False) - norm_type = "ada_norm" - - if self.is_input_continuous and self.is_input_vectorized: - raise ValueError( - f"Cannot define both `in_channels`: {in_channels} and `num_vector_embeds`: {num_vector_embeds}. Make" - " sure that either `in_channels` or `num_vector_embeds` is None." - ) - elif self.is_input_vectorized and self.is_input_patches: - raise ValueError( - f"Cannot define both `num_vector_embeds`: {num_vector_embeds} and `patch_size`: {patch_size}. Make" - " sure that either `num_vector_embeds` or `num_patches` is None." - ) - elif not self.is_input_continuous and not self.is_input_vectorized and not self.is_input_patches: - raise ValueError( - f"Has to define `in_channels`: {in_channels}, `num_vector_embeds`: {num_vector_embeds}, or patch_size:" - f" {patch_size}. Make sure that `in_channels`, `num_vector_embeds` or `num_patches` is not None." - ) - - # 2. Define input layers - if self.is_input_continuous: - self.in_channels = in_channels - - self.norm = torch.nn.GroupNorm(num_groups=norm_num_groups, num_channels=in_channels, eps=1e-6, affine=True) - if use_linear_projection: - self.proj_in = LoRACompatibleLinear(in_channels, inner_dim) - else: - self.proj_in = LoRACompatibleConv(in_channels, inner_dim, kernel_size=1, stride=1, padding=0) - elif self.is_input_vectorized: - assert sample_size is not None, "Transformer2DModel over discrete input must provide sample_size" - assert num_vector_embeds is not None, "Transformer2DModel over discrete input must provide num_embed" - - self.height = sample_size - self.width = sample_size - self.num_vector_embeds = num_vector_embeds - self.num_latent_pixels = self.height * self.width - - self.latent_image_embedding = ImagePositionalEmbeddings( - num_embed=num_vector_embeds, embed_dim=inner_dim, height=self.height, width=self.width - ) - elif self.is_input_patches: - assert sample_size is not None, "Transformer2DModel over patched input must provide sample_size" - - self.height = sample_size - self.width = sample_size - - self.patch_size = patch_size - self.pos_embed = PatchEmbed( - height=sample_size, - width=sample_size, - patch_size=patch_size, - in_channels=in_channels, - embed_dim=inner_dim, - ) - - # 3. Define transformers blocks - self.transformer_blocks = nn.ModuleList( - [ - BasicMVTransformerBlock( - inner_dim, - num_attention_heads, - attention_head_dim, - dropout=dropout, - cross_attention_dim=cross_attention_dim, - activation_fn=activation_fn, - num_embeds_ada_norm=num_embeds_ada_norm, - attention_bias=attention_bias, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - norm_type=norm_type, - norm_elementwise_affine=norm_elementwise_affine, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention - ) - for d in range(num_layers) - ] - ) - - # 4. Define output layers - self.out_channels = in_channels if out_channels is None else out_channels - if self.is_input_continuous: - # TODO: should use out_channels for continuous projections - if use_linear_projection: - self.proj_out = LoRACompatibleLinear(inner_dim, in_channels) - else: - self.proj_out = LoRACompatibleConv(inner_dim, in_channels, kernel_size=1, stride=1, padding=0) - elif self.is_input_vectorized: - self.norm_out = nn.LayerNorm(inner_dim) - self.out = nn.Linear(inner_dim, self.num_vector_embeds - 1) - elif self.is_input_patches: - self.norm_out = nn.LayerNorm(inner_dim, elementwise_affine=False, eps=1e-6) - self.proj_out_1 = nn.Linear(inner_dim, 2 * inner_dim) - self.proj_out_2 = nn.Linear(inner_dim, patch_size * patch_size * self.out_channels) - - def forward( - self, - hidden_states: torch.Tensor, - encoder_hidden_states: Optional[torch.Tensor] = None, - timestep: Optional[torch.LongTensor] = None, - class_labels: Optional[torch.LongTensor] = None, - cross_attention_kwargs: Dict[str, Any] = None, - attention_mask: Optional[torch.Tensor] = None, - encoder_attention_mask: Optional[torch.Tensor] = None, - return_dict: bool = True, - ): - """ - The [`Transformer2DModel`] forward method. - - Args: - hidden_states (`torch.LongTensor` of shape `(batch size, num latent pixels)` if discrete, `torch.FloatTensor` of shape `(batch size, channel, height, width)` if continuous): - Input `hidden_states`. - encoder_hidden_states ( `torch.FloatTensor` of shape `(batch size, sequence len, embed dims)`, *optional*): - Conditional embeddings for cross attention layer. If not given, cross-attention defaults to - self-attention. - timestep ( `torch.LongTensor`, *optional*): - Used to indicate denoising step. Optional timestep to be applied as an embedding in `AdaLayerNorm`. - class_labels ( `torch.LongTensor` of shape `(batch size, num classes)`, *optional*): - Used to indicate class labels conditioning. Optional class labels to be applied as an embedding in - `AdaLayerZeroNorm`. - encoder_attention_mask ( `torch.Tensor`, *optional*): - Cross-attention mask applied to `encoder_hidden_states`. Two formats supported: - - * Mask `(batch, sequence_length)` True = keep, False = discard. - * Bias `(batch, 1, sequence_length)` 0 = keep, -10000 = discard. - - If `ndim == 2`: will be interpreted as a mask, then converted into a bias consistent with the format - above. This bias will be added to the cross-attention scores. - return_dict (`bool`, *optional*, defaults to `True`): - Whether or not to return a [`~models.unet_2d_condition.UNet2DConditionOutput`] instead of a plain - tuple. - - Returns: - If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a - `tuple` where the first element is the sample tensor. - """ - # ensure attention_mask is a bias, and give it a singleton query_tokens dimension. - # we may have done this conversion already, e.g. if we came here via UNet2DConditionModel#forward. - # we can tell by counting dims; if ndim == 2: it's a mask rather than a bias. - # expects mask of shape: - # [batch, key_tokens] - # adds singleton query_tokens dimension: - # [batch, 1, key_tokens] - # this helps to broadcast it as a bias over attention scores, which will be in one of the following shapes: - # [batch, heads, query_tokens, key_tokens] (e.g. torch sdp attn) - # [batch * heads, query_tokens, key_tokens] (e.g. xformers or classic attn) - if attention_mask is not None and attention_mask.ndim == 2: - # assume that mask is expressed as: - # (1 = keep, 0 = discard) - # convert mask into a bias that can be added to attention scores: - # (keep = +0, discard = -10000.0) - attention_mask = (1 - attention_mask.to(hidden_states.dtype)) * -10000.0 - attention_mask = attention_mask.unsqueeze(1) - - # convert encoder_attention_mask to a bias the same way we do for attention_mask - if encoder_attention_mask is not None and encoder_attention_mask.ndim == 2: - encoder_attention_mask = (1 - encoder_attention_mask.to(hidden_states.dtype)) * -10000.0 - encoder_attention_mask = encoder_attention_mask.unsqueeze(1) - - # 1. Input - if self.is_input_continuous: - batch, _, height, width = hidden_states.shape - residual = hidden_states - - hidden_states = self.norm(hidden_states) - if not self.use_linear_projection: - hidden_states = self.proj_in(hidden_states) - inner_dim = hidden_states.shape[1] - hidden_states = hidden_states.permute(0, 2, 3, 1).reshape(batch, height * width, inner_dim) - else: - inner_dim = hidden_states.shape[1] - hidden_states = hidden_states.permute(0, 2, 3, 1).reshape(batch, height * width, inner_dim) - hidden_states = self.proj_in(hidden_states) - elif self.is_input_vectorized: - hidden_states = self.latent_image_embedding(hidden_states) - elif self.is_input_patches: - hidden_states = self.pos_embed(hidden_states) - - # 2. Blocks - for block in self.transformer_blocks: - hidden_states = block( - hidden_states, - attention_mask=attention_mask, - encoder_hidden_states=encoder_hidden_states, - encoder_attention_mask=encoder_attention_mask, - timestep=timestep, - cross_attention_kwargs=cross_attention_kwargs, - class_labels=class_labels, - ) - - # 3. Output - if self.is_input_continuous: - if not self.use_linear_projection: - hidden_states = hidden_states.reshape(batch, height, width, inner_dim).permute(0, 3, 1, 2).contiguous() - hidden_states = self.proj_out(hidden_states) - else: - hidden_states = self.proj_out(hidden_states) - hidden_states = hidden_states.reshape(batch, height, width, inner_dim).permute(0, 3, 1, 2).contiguous() - - output = hidden_states + residual - elif self.is_input_vectorized: - hidden_states = self.norm_out(hidden_states) - logits = self.out(hidden_states) - # (batch, self.num_vector_embeds - 1, self.num_latent_pixels) - logits = logits.permute(0, 2, 1) - - # log(p(x_0)) - output = F.log_softmax(logits.double(), dim=1).float() - elif self.is_input_patches: - # TODO: cleanup! - conditioning = self.transformer_blocks[0].norm1.emb( - timestep, class_labels, hidden_dtype=hidden_states.dtype - ) - shift, scale = self.proj_out_1(F.silu(conditioning)).chunk(2, dim=1) - hidden_states = self.norm_out(hidden_states) * (1 + scale[:, None]) + shift[:, None] - hidden_states = self.proj_out_2(hidden_states) - - # unpatchify - height = width = int(hidden_states.shape[1] ** 0.5) - hidden_states = hidden_states.reshape( - shape=(-1, height, width, self.patch_size, self.patch_size, self.out_channels) - ) - hidden_states = torch.einsum("nhwpqc->nchpwq", hidden_states) - output = hidden_states.reshape( - shape=(-1, self.out_channels, height * self.patch_size, width * self.patch_size) - ) - - if not return_dict: - return (output,) - - return TransformerMV2DModelOutput(sample=output) - - -@maybe_allow_in_graph -class BasicMVTransformerBlock(nn.Module): - r""" - A basic Transformer block. - - Parameters: - dim (`int`): The number of channels in the input and output. - num_attention_heads (`int`): The number of heads to use for multi-head attention. - attention_head_dim (`int`): The number of channels in each head. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - cross_attention_dim (`int`, *optional*): The size of the encoder_hidden_states vector for cross attention. - only_cross_attention (`bool`, *optional*): - Whether to use only cross-attention layers. In this case two cross attention layers are used. - double_self_attention (`bool`, *optional*): - Whether to use two self-attention layers. In this case no cross attention layers are used. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to be used in feed-forward. - num_embeds_ada_norm (: - obj: `int`, *optional*): The number of diffusion steps used during training. See `Transformer2DModel`. - attention_bias (: - obj: `bool`, *optional*, defaults to `False`): Configure if the attentions should contain a bias parameter. - """ - - def __init__( - self, - dim: int, - num_attention_heads: int, - attention_head_dim: int, - dropout=0.0, - cross_attention_dim: Optional[int] = None, - activation_fn: str = "geglu", - num_embeds_ada_norm: Optional[int] = None, - attention_bias: bool = False, - only_cross_attention: bool = False, - double_self_attention: bool = False, - upcast_attention: bool = False, - norm_elementwise_affine: bool = True, - norm_type: str = "layer_norm", - final_dropout: bool = False, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - mvcd_attention: bool = False - ): - super().__init__() - self.only_cross_attention = only_cross_attention - - self.use_ada_layer_norm_zero = (num_embeds_ada_norm is not None) and norm_type == "ada_norm_zero" - self.use_ada_layer_norm = (num_embeds_ada_norm is not None) and norm_type == "ada_norm" - - if norm_type in ("ada_norm", "ada_norm_zero") and num_embeds_ada_norm is None: - raise ValueError( - f"`norm_type` is set to {norm_type}, but `num_embeds_ada_norm` is not defined. Please make sure to" - f" define `num_embeds_ada_norm` if setting `norm_type` to {norm_type}." - ) - - # Define 3 blocks. Each block has its own normalization layer. - # 1. Self-Attn - if self.use_ada_layer_norm: - self.norm1 = AdaLayerNorm(dim, num_embeds_ada_norm) - elif self.use_ada_layer_norm_zero: - self.norm1 = AdaLayerNormZero(dim, num_embeds_ada_norm) - else: - self.norm1 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - - self.multiview_attention = multiview_attention - self.sparse_mv_attention = sparse_mv_attention - self.mvcd_attention = mvcd_attention - - self.attn1 = CustomAttention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - processor=MVAttnProcessor() - ) - - # 2. Cross-Attn - if cross_attention_dim is not None or double_self_attention: - # We currently only use AdaLayerNormZero for self attention where there will only be one attention block. - # I.e. the number of returned modulation chunks from AdaLayerZero would not make sense if returned during - # the second cross attention block. - self.norm2 = ( - AdaLayerNorm(dim, num_embeds_ada_norm) - if self.use_ada_layer_norm - else nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - ) - self.attn2 = Attention( - query_dim=dim, - cross_attention_dim=cross_attention_dim if not double_self_attention else None, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - upcast_attention=upcast_attention, - ) # is self-attn if encoder_hidden_states is none - else: - self.norm2 = None - self.attn2 = None - - # 3. Feed-forward - self.norm3 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - self.ff = FeedForward(dim, dropout=dropout, activation_fn=activation_fn, final_dropout=final_dropout) - - # let chunk size default to None - self._chunk_size = None - self._chunk_dim = 0 - - self.num_views = num_views - - self.cd_attention_last = cd_attention_last - - if self.cd_attention_last: - # Joint task -Attn - self.attn_joint_last = CustomJointAttention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - processor=JointAttnProcessor() - ) - nn.init.zeros_(self.attn_joint_last.to_out[0].weight.data) - self.norm_joint_last = AdaLayerNorm(dim, num_embeds_ada_norm) if self.use_ada_layer_norm else nn.LayerNorm(dim) - - - self.cd_attention_mid = cd_attention_mid - - if self.cd_attention_mid: - # print("cross-domain attn in the middle") - # Joint task -Attn - self.attn_joint_mid = CustomJointAttention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - processor=JointAttnProcessor() - ) - nn.init.zeros_(self.attn_joint_mid.to_out[0].weight.data) - self.norm_joint_mid = AdaLayerNorm(dim, num_embeds_ada_norm) if self.use_ada_layer_norm else nn.LayerNorm(dim) - - def set_chunk_feed_forward(self, chunk_size: Optional[int], dim: int): - # Sets chunk feed-forward - self._chunk_size = chunk_size - self._chunk_dim = dim - - def forward( - self, - hidden_states: torch.FloatTensor, - attention_mask: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - timestep: Optional[torch.LongTensor] = None, - cross_attention_kwargs: Dict[str, Any] = None, - class_labels: Optional[torch.LongTensor] = None, - ): - assert attention_mask is None # not supported yet - # Notice that normalization is always applied before the real computation in the following blocks. - # 1. Self-Attention - if self.use_ada_layer_norm: - norm_hidden_states = self.norm1(hidden_states, timestep) - elif self.use_ada_layer_norm_zero: - norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1( - hidden_states, timestep, class_labels, hidden_dtype=hidden_states.dtype - ) - else: - norm_hidden_states = self.norm1(hidden_states) - - cross_attention_kwargs = cross_attention_kwargs if cross_attention_kwargs is not None else {} - - attn_output = self.attn1( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None, - attention_mask=attention_mask, - num_views=self.num_views, - multiview_attention=self.multiview_attention, - sparse_mv_attention=self.sparse_mv_attention, - mvcd_attention=self.mvcd_attention, - **cross_attention_kwargs, - ) - - - if self.use_ada_layer_norm_zero: - attn_output = gate_msa.unsqueeze(1) * attn_output - hidden_states = attn_output + hidden_states - - # joint attention twice - if self.cd_attention_mid: - norm_hidden_states = ( - self.norm_joint_mid(hidden_states, timestep) if self.use_ada_layer_norm else self.norm_joint_mid(hidden_states) - ) - hidden_states = self.attn_joint_mid(norm_hidden_states) + hidden_states - - # 2. Cross-Attention - if self.attn2 is not None: - norm_hidden_states = ( - self.norm2(hidden_states, timestep) if self.use_ada_layer_norm else self.norm2(hidden_states) - ) - - attn_output = self.attn2( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states, - attention_mask=encoder_attention_mask, - **cross_attention_kwargs, - ) - hidden_states = attn_output + hidden_states - - # 3. Feed-forward - norm_hidden_states = self.norm3(hidden_states) - - if self.use_ada_layer_norm_zero: - norm_hidden_states = norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None] - - if self._chunk_size is not None: - # "feed_forward_chunk_size" can be used to save memory - if norm_hidden_states.shape[self._chunk_dim] % self._chunk_size != 0: - raise ValueError( - f"`hidden_states` dimension to be chunked: {norm_hidden_states.shape[self._chunk_dim]} has to be divisible by chunk size: {self._chunk_size}. Make sure to set an appropriate `chunk_size` when calling `unet.enable_forward_chunking`." - ) - - num_chunks = norm_hidden_states.shape[self._chunk_dim] // self._chunk_size - ff_output = torch.cat( - [self.ff(hid_slice) for hid_slice in norm_hidden_states.chunk(num_chunks, dim=self._chunk_dim)], - dim=self._chunk_dim, - ) - else: - ff_output = self.ff(norm_hidden_states) - - if self.use_ada_layer_norm_zero: - ff_output = gate_mlp.unsqueeze(1) * ff_output - - hidden_states = ff_output + hidden_states - - if self.cd_attention_last: - norm_hidden_states = ( - self.norm_joint_last(hidden_states, timestep) if self.use_ada_layer_norm else self.norm_joint_last(hidden_states) - ) - hidden_states = self.attn_joint_last(norm_hidden_states) + hidden_states - - return hidden_states - - -class CustomAttention(Attention): - def set_use_memory_efficient_attention_xformers( - self, use_memory_efficient_attention_xformers: bool, *args, **kwargs - ): - processor = XFormersMVAttnProcessor() - self.set_processor(processor) - # print("using xformers attention processor") - - -class CustomJointAttention(Attention): - def set_use_memory_efficient_attention_xformers( - self, use_memory_efficient_attention_xformers: bool, *args, **kwargs - ): - processor = XFormersJointAttnProcessor() - self.set_processor(processor) - # print("using xformers attention processor") - -class MVAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_views=1, - multiview_attention=True - ): - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - # print('query', query.shape, 'key', key.shape, 'value', value.shape) - #([bx4, 1024, 320]) key torch.Size([bx4, 1024, 320]) value torch.Size([bx4, 1024, 320]) - # pdb.set_trace() - # multi-view self-attention - if multiview_attention: - key = rearrange(key, "(b t) d c -> b (t d) c", t=num_views).repeat_interleave(num_views, dim=0) - value = rearrange(value, "(b t) d c -> b (t d) c", t=num_views).repeat_interleave(num_views, dim=0) - - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - attention_probs = attn.get_attention_scores(query, key, attention_mask) - hidden_states = torch.bmm(attention_probs, value) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - -class XFormersMVAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_views=1., - multiview_attention=True, - sparse_mv_attention=False, - mvcd_attention=False, - ): - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - # from yuancheng; here attention_mask is None - if attention_mask is not None: - # expand our mask's singleton query_tokens dimension: - # [batch*heads, 1, key_tokens] -> - # [batch*heads, query_tokens, key_tokens] - # so that it can be added as a bias onto the attention scores that xformers computes: - # [batch*heads, query_tokens, key_tokens] - # we do this explicitly because xformers doesn't broadcast the singleton dimension for us. - _, query_tokens, _ = hidden_states.shape - attention_mask = attention_mask.expand(-1, query_tokens, -1) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key_raw = attn.to_k(encoder_hidden_states) - value_raw = attn.to_v(encoder_hidden_states) - - # print('query', query.shape, 'key', key.shape, 'value', value.shape) - #([bx4, 1024, 320]) key torch.Size([bx4, 1024, 320]) value torch.Size([bx4, 1024, 320]) - # pdb.set_trace() - # multi-view self-attention - if multiview_attention: - if not sparse_mv_attention: - key = my_repeat(rearrange(key_raw, "(b t) d c -> b (t d) c", t=num_views), num_views) - value = my_repeat(rearrange(value_raw, "(b t) d c -> b (t d) c", t=num_views), num_views) - else: - key_front = my_repeat(rearrange(key_raw, "(b t) d c -> b t d c", t=num_views)[:, 0, :, :], num_views) # [(b t), d, c] - value_front = my_repeat(rearrange(value_raw, "(b t) d c -> b t d c", t=num_views)[:, 0, :, :], num_views) - key = torch.cat([key_front, key_raw], dim=1) # shape (b t) (2 d) c - value = torch.cat([value_front, value_raw], dim=1) - - else: - # print("don't use multiview attention.") - key = key_raw - value = value_raw - - query = attn.head_to_batch_dim(query) - key = attn.head_to_batch_dim(key) - value = attn.head_to_batch_dim(value) - - hidden_states = xformers.ops.memory_efficient_attention(query, key, value, attn_bias=attention_mask) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - - -class XFormersJointAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_tasks=2 - ): - - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - # from yuancheng; here attention_mask is None - if attention_mask is not None: - # expand our mask's singleton query_tokens dimension: - # [batch*heads, 1, key_tokens] -> - # [batch*heads, query_tokens, key_tokens] - # so that it can be added as a bias onto the attention scores that xformers computes: - # [batch*heads, query_tokens, key_tokens] - # we do this explicitly because xformers doesn't broadcast the singleton dimension for us. - _, query_tokens, _ = hidden_states.shape - attention_mask = attention_mask.expand(-1, query_tokens, -1) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - assert num_tasks == 2 # only support two tasks now - - key_0, key_1 = torch.chunk(key, dim=0, chunks=2) # keys shape (b t) d c - value_0, value_1 = torch.chunk(value, dim=0, chunks=2) - key = torch.cat([key_0, key_1], dim=1) # (b t) 2d c - value = torch.cat([value_0, value_1], dim=1) # (b t) 2d c - key = torch.cat([key]*2, dim=0) # ( 2 b t) 2d c - value = torch.cat([value]*2, dim=0) # (2 b t) 2d c - - - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - hidden_states = xformers.ops.memory_efficient_attention(query, key, value, attn_bias=attention_mask) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - -class JointAttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states, - encoder_hidden_states=None, - attention_mask=None, - temb=None, - num_tasks=2 - ): - - residual = hidden_states - - if attn.spatial_norm is not None: - hidden_states = attn.spatial_norm(hidden_states, temb) - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size) - - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - assert num_tasks == 2 # only support two tasks now - - key_0, key_1 = torch.chunk(key, dim=0, chunks=2) # keys shape (b t) d c - value_0, value_1 = torch.chunk(value, dim=0, chunks=2) - key = torch.cat([key_0, key_1], dim=1) # (b t) 2d c - value = torch.cat([value_0, value_1], dim=1) # (b t) 2d c - key = torch.cat([key]*2, dim=0) # ( 2 b t) 2d c - value = torch.cat([value]*2, dim=0) # (2 b t) 2d c - - - query = attn.head_to_batch_dim(query).contiguous() - key = attn.head_to_batch_dim(key).contiguous() - value = attn.head_to_batch_dim(value).contiguous() - - attention_probs = attn.get_attention_scores(query, key, attention_mask) - hidden_states = torch.bmm(attention_probs, value) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states \ No newline at end of file diff --git a/mvdiffusion/models/unet_mv2d_blocks.py b/mvdiffusion/models/unet_mv2d_blocks.py deleted file mode 100644 index 53d141e..0000000 --- a/mvdiffusion/models/unet_mv2d_blocks.py +++ /dev/null @@ -1,922 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -from typing import Any, Dict, Optional, Tuple - -import numpy as np -import torch -import torch.nn.functional as F -from torch import nn - -from diffusers.utils import is_torch_version, logging -from diffusers.models.normalization import AdaGroupNorm -from diffusers.models.attention_processor import Attention, AttnAddedKVProcessor, AttnAddedKVProcessor2_0 -from diffusers.models.transformers.dual_transformer_2d import DualTransformer2DModel -from diffusers.models.resnet import Downsample2D, FirDownsample2D, FirUpsample2D, KDownsample2D, KUpsample2D, ResnetBlock2D, Upsample2D -from mvdiffusion.models.transformer_mv2d import TransformerMV2DModel - -from diffusers.models.unets.unet_2d_blocks import DownBlock2D, ResnetDownsampleBlock2D, AttnDownBlock2D, CrossAttnDownBlock2D, SimpleCrossAttnDownBlock2D, SkipDownBlock2D, AttnSkipDownBlock2D, DownEncoderBlock2D, AttnDownEncoderBlock2D, KDownBlock2D, KCrossAttnDownBlock2D -from diffusers.models.unets.unet_2d_blocks import UpBlock2D, ResnetUpsampleBlock2D, CrossAttnUpBlock2D, SimpleCrossAttnUpBlock2D, AttnUpBlock2D, SkipUpBlock2D, AttnSkipUpBlock2D, UpDecoderBlock2D, AttnUpDecoderBlock2D, KUpBlock2D, KCrossAttnUpBlock2D - - -logger = logging.get_logger(__name__) # pylint: disable=invalid-name - - -def get_down_block( - down_block_type, - num_layers, - in_channels, - out_channels, - temb_channels, - add_downsample, - resnet_eps, - resnet_act_fn, - transformer_layers_per_block=1, - num_attention_heads=None, - resnet_groups=None, - cross_attention_dim=None, - downsample_padding=None, - dual_cross_attention=False, - use_linear_projection=False, - only_cross_attention=False, - upcast_attention=False, - resnet_time_scale_shift="default", - resnet_skip_time_act=False, - resnet_out_scale_factor=1.0, - cross_attention_norm=None, - attention_head_dim=None, - downsample_type=None, - num_views=1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - mvcd_attention: bool=False -): - # If attn head dim is not defined, we default it to the number of heads - if attention_head_dim is None: - logger.warn( - f"It is recommended to provide `attention_head_dim` when calling `get_down_block`. Defaulting `attention_head_dim` to {num_attention_heads}." - ) - attention_head_dim = num_attention_heads - - down_block_type = down_block_type[7:] if down_block_type.startswith("UNetRes") else down_block_type - if down_block_type == "DownBlock2D": - return DownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif down_block_type == "ResnetDownsampleBlock2D": - return ResnetDownsampleBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - resnet_time_scale_shift=resnet_time_scale_shift, - skip_time_act=resnet_skip_time_act, - output_scale_factor=resnet_out_scale_factor, - ) - elif down_block_type == "AttnDownBlock2D": - if add_downsample is False: - downsample_type = None - else: - downsample_type = downsample_type or "conv" # default to 'conv' - return AttnDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - downsample_type=downsample_type, - ) - elif down_block_type == "CrossAttnDownBlock2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for CrossAttnDownBlock2D") - return CrossAttnDownBlock2D( - num_layers=num_layers, - transformer_layers_per_block=transformer_layers_per_block, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - cross_attention_dim=cross_attention_dim, - num_attention_heads=num_attention_heads, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - # custom MV2D attention block - elif down_block_type == "CrossAttnDownBlockMV2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for CrossAttnDownBlockMV2D") - return CrossAttnDownBlockMV2D( - num_layers=num_layers, - transformer_layers_per_block=transformer_layers_per_block, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - cross_attention_dim=cross_attention_dim, - num_attention_heads=num_attention_heads, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention - ) - elif down_block_type == "SimpleCrossAttnDownBlock2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for SimpleCrossAttnDownBlock2D") - return SimpleCrossAttnDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - cross_attention_dim=cross_attention_dim, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - skip_time_act=resnet_skip_time_act, - output_scale_factor=resnet_out_scale_factor, - only_cross_attention=only_cross_attention, - cross_attention_norm=cross_attention_norm, - ) - elif down_block_type == "SkipDownBlock2D": - return SkipDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - downsample_padding=downsample_padding, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif down_block_type == "AttnSkipDownBlock2D": - return AttnSkipDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif down_block_type == "DownEncoderBlock2D": - return DownEncoderBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif down_block_type == "AttnDownEncoderBlock2D": - return AttnDownEncoderBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - downsample_padding=downsample_padding, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif down_block_type == "KDownBlock2D": - return KDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - ) - elif down_block_type == "KCrossAttnDownBlock2D": - return KCrossAttnDownBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_downsample=add_downsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - cross_attention_dim=cross_attention_dim, - attention_head_dim=attention_head_dim, - add_self_attention=True if not add_downsample else False, - ) - raise ValueError(f"{down_block_type} does not exist.") - - -def get_up_block( - up_block_type, - num_layers, - in_channels, - out_channels, - prev_output_channel, - temb_channels, - add_upsample, - resnet_eps, - resnet_act_fn, - transformer_layers_per_block=1, - num_attention_heads=None, - resnet_groups=None, - cross_attention_dim=None, - dual_cross_attention=False, - use_linear_projection=False, - only_cross_attention=False, - upcast_attention=False, - resnet_time_scale_shift="default", - resnet_skip_time_act=False, - resnet_out_scale_factor=1.0, - cross_attention_norm=None, - attention_head_dim=None, - upsample_type=None, - num_views=1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - mvcd_attention: bool=False -): - # If attn head dim is not defined, we default it to the number of heads - if attention_head_dim is None: - logger.warn( - f"It is recommended to provide `attention_head_dim` when calling `get_up_block`. Defaulting `attention_head_dim` to {num_attention_heads}." - ) - attention_head_dim = num_attention_heads - - up_block_type = up_block_type[7:] if up_block_type.startswith("UNetRes") else up_block_type - if up_block_type == "UpBlock2D": - return UpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif up_block_type == "ResnetUpsampleBlock2D": - return ResnetUpsampleBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - resnet_time_scale_shift=resnet_time_scale_shift, - skip_time_act=resnet_skip_time_act, - output_scale_factor=resnet_out_scale_factor, - ) - elif up_block_type == "CrossAttnUpBlock2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for CrossAttnUpBlock2D") - return CrossAttnUpBlock2D( - num_layers=num_layers, - transformer_layers_per_block=transformer_layers_per_block, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - cross_attention_dim=cross_attention_dim, - num_attention_heads=num_attention_heads, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - # custom MV2D attention block - elif up_block_type == "CrossAttnUpBlockMV2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for CrossAttnUpBlockMV2D") - return CrossAttnUpBlockMV2D( - num_layers=num_layers, - transformer_layers_per_block=transformer_layers_per_block, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - cross_attention_dim=cross_attention_dim, - num_attention_heads=num_attention_heads, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention - ) - elif up_block_type == "SimpleCrossAttnUpBlock2D": - if cross_attention_dim is None: - raise ValueError("cross_attention_dim must be specified for SimpleCrossAttnUpBlock2D") - return SimpleCrossAttnUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - cross_attention_dim=cross_attention_dim, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - skip_time_act=resnet_skip_time_act, - output_scale_factor=resnet_out_scale_factor, - only_cross_attention=only_cross_attention, - cross_attention_norm=cross_attention_norm, - ) - elif up_block_type == "AttnUpBlock2D": - if add_upsample is False: - upsample_type = None - else: - upsample_type = upsample_type or "conv" # default to 'conv' - - return AttnUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - upsample_type=upsample_type, - ) - elif up_block_type == "SkipUpBlock2D": - return SkipUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif up_block_type == "AttnSkipUpBlock2D": - return AttnSkipUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - prev_output_channel=prev_output_channel, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - ) - elif up_block_type == "UpDecoderBlock2D": - return UpDecoderBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - resnet_time_scale_shift=resnet_time_scale_shift, - temb_channels=temb_channels, - ) - elif up_block_type == "AttnUpDecoderBlock2D": - return AttnUpDecoderBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - resnet_groups=resnet_groups, - attention_head_dim=attention_head_dim, - resnet_time_scale_shift=resnet_time_scale_shift, - temb_channels=temb_channels, - ) - elif up_block_type == "KUpBlock2D": - return KUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - ) - elif up_block_type == "KCrossAttnUpBlock2D": - return KCrossAttnUpBlock2D( - num_layers=num_layers, - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - add_upsample=add_upsample, - resnet_eps=resnet_eps, - resnet_act_fn=resnet_act_fn, - cross_attention_dim=cross_attention_dim, - attention_head_dim=attention_head_dim, - ) - - raise ValueError(f"{up_block_type} does not exist.") - - -class UNetMidBlockMV2DCrossAttn(nn.Module): - def __init__( - self, - in_channels: int, - temb_channels: int, - dropout: float = 0.0, - num_layers: int = 1, - transformer_layers_per_block: int = 1, - resnet_eps: float = 1e-6, - resnet_time_scale_shift: str = "default", - resnet_act_fn: str = "swish", - resnet_groups: int = 32, - resnet_pre_norm: bool = True, - num_attention_heads=1, - output_scale_factor=1.0, - cross_attention_dim=1280, - dual_cross_attention=False, - use_linear_projection=False, - upcast_attention=False, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - mvcd_attention: bool=False - ): - super().__init__() - - self.has_cross_attention = True - self.num_attention_heads = num_attention_heads - resnet_groups = resnet_groups if resnet_groups is not None else min(in_channels // 4, 32) - - # there is always at least one resnet - resnets = [ - ResnetBlock2D( - in_channels=in_channels, - out_channels=in_channels, - temb_channels=temb_channels, - eps=resnet_eps, - groups=resnet_groups, - dropout=dropout, - time_embedding_norm=resnet_time_scale_shift, - non_linearity=resnet_act_fn, - output_scale_factor=output_scale_factor, - pre_norm=resnet_pre_norm, - ) - ] - attentions = [] - - for _ in range(num_layers): - if not dual_cross_attention: - attentions.append( - TransformerMV2DModel( - num_attention_heads, - in_channels // num_attention_heads, - in_channels=in_channels, - num_layers=transformer_layers_per_block, - cross_attention_dim=cross_attention_dim, - norm_num_groups=resnet_groups, - use_linear_projection=use_linear_projection, - upcast_attention=upcast_attention, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention - ) - ) - else: - raise NotImplementedError - resnets.append( - ResnetBlock2D( - in_channels=in_channels, - out_channels=in_channels, - temb_channels=temb_channels, - eps=resnet_eps, - groups=resnet_groups, - dropout=dropout, - time_embedding_norm=resnet_time_scale_shift, - non_linearity=resnet_act_fn, - output_scale_factor=output_scale_factor, - pre_norm=resnet_pre_norm, - ) - ) - - self.attentions = nn.ModuleList(attentions) - self.resnets = nn.ModuleList(resnets) - - def forward( - self, - hidden_states: torch.FloatTensor, - temb: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - attention_mask: Optional[torch.FloatTensor] = None, - cross_attention_kwargs: Optional[Dict[str, Any]] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - ) -> torch.FloatTensor: - hidden_states = self.resnets[0](hidden_states, temb) - for attn, resnet in zip(self.attentions, self.resnets[1:]): - hidden_states = attn( - hidden_states, - encoder_hidden_states=encoder_hidden_states, - cross_attention_kwargs=cross_attention_kwargs, - attention_mask=attention_mask, - encoder_attention_mask=encoder_attention_mask, - return_dict=False, - )[0] - hidden_states = resnet(hidden_states, temb) - - return hidden_states - - -class CrossAttnUpBlockMV2D(nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - prev_output_channel: int, - temb_channels: int, - dropout: float = 0.0, - num_layers: int = 1, - transformer_layers_per_block: int = 1, - resnet_eps: float = 1e-6, - resnet_time_scale_shift: str = "default", - resnet_act_fn: str = "swish", - resnet_groups: int = 32, - resnet_pre_norm: bool = True, - num_attention_heads=1, - cross_attention_dim=1280, - output_scale_factor=1.0, - add_upsample=True, - dual_cross_attention=False, - use_linear_projection=False, - only_cross_attention=False, - upcast_attention=False, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - mvcd_attention: bool=False - ): - super().__init__() - resnets = [] - attentions = [] - - self.has_cross_attention = True - self.num_attention_heads = num_attention_heads - - for i in range(num_layers): - res_skip_channels = in_channels if (i == num_layers - 1) else out_channels - resnet_in_channels = prev_output_channel if i == 0 else out_channels - - resnets.append( - ResnetBlock2D( - in_channels=resnet_in_channels + res_skip_channels, - out_channels=out_channels, - temb_channels=temb_channels, - eps=resnet_eps, - groups=resnet_groups, - dropout=dropout, - time_embedding_norm=resnet_time_scale_shift, - non_linearity=resnet_act_fn, - output_scale_factor=output_scale_factor, - pre_norm=resnet_pre_norm, - ) - ) - if not dual_cross_attention: - attentions.append( - TransformerMV2DModel( - num_attention_heads, - out_channels // num_attention_heads, - in_channels=out_channels, - num_layers=transformer_layers_per_block, - cross_attention_dim=cross_attention_dim, - norm_num_groups=resnet_groups, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention - ) - ) - else: - raise NotImplementedError - self.attentions = nn.ModuleList(attentions) - self.resnets = nn.ModuleList(resnets) - - if add_upsample: - self.upsamplers = nn.ModuleList([Upsample2D(out_channels, use_conv=True, out_channels=out_channels)]) - else: - self.upsamplers = None - - self.gradient_checkpointing = False - - def forward( - self, - hidden_states: torch.FloatTensor, - res_hidden_states_tuple: Tuple[torch.FloatTensor, ...], - temb: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - cross_attention_kwargs: Optional[Dict[str, Any]] = None, - upsample_size: Optional[int] = None, - attention_mask: Optional[torch.FloatTensor] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - ): - for resnet, attn in zip(self.resnets, self.attentions): - # pop res hidden states - res_hidden_states = res_hidden_states_tuple[-1] - res_hidden_states_tuple = res_hidden_states_tuple[:-1] - hidden_states = torch.cat([hidden_states, res_hidden_states], dim=1) - - if self.training and self.gradient_checkpointing: - - def create_custom_forward(module, return_dict=None): - def custom_forward(*inputs): - if return_dict is not None: - return module(*inputs, return_dict=return_dict) - else: - return module(*inputs) - - return custom_forward - - ckpt_kwargs: Dict[str, Any] = {"use_reentrant": False} if is_torch_version(">=", "1.11.0") else {} - hidden_states = torch.utils.checkpoint.checkpoint( - create_custom_forward(resnet), - hidden_states, - temb, - **ckpt_kwargs, - ) - hidden_states = torch.utils.checkpoint.checkpoint( - create_custom_forward(attn, return_dict=False), - hidden_states, - encoder_hidden_states, - None, # timestep - None, # class_labels - cross_attention_kwargs, - attention_mask, - encoder_attention_mask, - **ckpt_kwargs, - )[0] - else: - hidden_states = resnet(hidden_states, temb) - hidden_states = attn( - hidden_states, - encoder_hidden_states=encoder_hidden_states, - cross_attention_kwargs=cross_attention_kwargs, - attention_mask=attention_mask, - encoder_attention_mask=encoder_attention_mask, - return_dict=False, - )[0] - - if self.upsamplers is not None: - for upsampler in self.upsamplers: - hidden_states = upsampler(hidden_states, upsample_size) - - return hidden_states - - -class CrossAttnDownBlockMV2D(nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - temb_channels: int, - dropout: float = 0.0, - num_layers: int = 1, - transformer_layers_per_block: int = 1, - resnet_eps: float = 1e-6, - resnet_time_scale_shift: str = "default", - resnet_act_fn: str = "swish", - resnet_groups: int = 32, - resnet_pre_norm: bool = True, - num_attention_heads=1, - cross_attention_dim=1280, - output_scale_factor=1.0, - downsample_padding=1, - add_downsample=True, - dual_cross_attention=False, - use_linear_projection=False, - only_cross_attention=False, - upcast_attention=False, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - mvcd_attention: bool=False - ): - super().__init__() - resnets = [] - attentions = [] - - self.has_cross_attention = True - self.num_attention_heads = num_attention_heads - - for i in range(num_layers): - in_channels = in_channels if i == 0 else out_channels - resnets.append( - ResnetBlock2D( - in_channels=in_channels, - out_channels=out_channels, - temb_channels=temb_channels, - eps=resnet_eps, - groups=resnet_groups, - dropout=dropout, - time_embedding_norm=resnet_time_scale_shift, - non_linearity=resnet_act_fn, - output_scale_factor=output_scale_factor, - pre_norm=resnet_pre_norm, - ) - ) - if not dual_cross_attention: - attentions.append( - TransformerMV2DModel( - num_attention_heads, - out_channels // num_attention_heads, - in_channels=out_channels, - num_layers=transformer_layers_per_block, - cross_attention_dim=cross_attention_dim, - norm_num_groups=resnet_groups, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention, - upcast_attention=upcast_attention, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention - ) - ) - else: - raise NotImplementedError - self.attentions = nn.ModuleList(attentions) - self.resnets = nn.ModuleList(resnets) - - if add_downsample: - self.downsamplers = nn.ModuleList( - [ - Downsample2D( - out_channels, use_conv=True, out_channels=out_channels, padding=downsample_padding, name="op" - ) - ] - ) - else: - self.downsamplers = None - - self.gradient_checkpointing = False - - def forward( - self, - hidden_states: torch.FloatTensor, - temb: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - attention_mask: Optional[torch.FloatTensor] = None, - cross_attention_kwargs: Optional[Dict[str, Any]] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - additional_residuals=None, - ): - output_states = () - - blocks = list(zip(self.resnets, self.attentions)) - - for i, (resnet, attn) in enumerate(blocks): - if self.training and self.gradient_checkpointing: - - def create_custom_forward(module, return_dict=None): - def custom_forward(*inputs): - if return_dict is not None: - return module(*inputs, return_dict=return_dict) - else: - return module(*inputs) - - return custom_forward - - ckpt_kwargs: Dict[str, Any] = {"use_reentrant": False} if is_torch_version(">=", "1.11.0") else {} - hidden_states = torch.utils.checkpoint.checkpoint( - create_custom_forward(resnet), - hidden_states, - temb, - **ckpt_kwargs, - ) - hidden_states = torch.utils.checkpoint.checkpoint( - create_custom_forward(attn, return_dict=False), - hidden_states, - encoder_hidden_states, - None, # timestep - None, # class_labels - cross_attention_kwargs, - attention_mask, - encoder_attention_mask, - **ckpt_kwargs, - )[0] - else: - hidden_states = resnet(hidden_states, temb) - hidden_states = attn( - hidden_states, - encoder_hidden_states=encoder_hidden_states, - cross_attention_kwargs=cross_attention_kwargs, - attention_mask=attention_mask, - encoder_attention_mask=encoder_attention_mask, - return_dict=False, - )[0] - - # apply additional residuals to the output of the last pair of resnet and attention blocks - if i == len(blocks) - 1 and additional_residuals is not None: - hidden_states = hidden_states + additional_residuals - - output_states = output_states + (hidden_states,) - - if self.downsamplers is not None: - for downsampler in self.downsamplers: - hidden_states = downsampler(hidden_states) - - output_states = output_states + (hidden_states,) - - return hidden_states, output_states - diff --git a/mvdiffusion/models/unet_mv2d_condition.py b/mvdiffusion/models/unet_mv2d_condition.py deleted file mode 100644 index 41e2228..0000000 --- a/mvdiffusion/models/unet_mv2d_condition.py +++ /dev/null @@ -1,1485 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -from dataclasses import dataclass -from typing import Any, Dict, List, Optional, Tuple, Union -import os - -import torch -import torch.nn as nn -import torch.utils.checkpoint - -from diffusers.configuration_utils import ConfigMixin, register_to_config -from diffusers.loaders import UNet2DConditionLoadersMixin -from diffusers.utils import BaseOutput, logging -from diffusers.models.activations import get_activation -from diffusers.models.attention_processor import AttentionProcessor, AttnProcessor -from diffusers.models.embeddings import ( - GaussianFourierProjection, - ImageHintTimeEmbedding, - ImageProjection, - ImageTimeEmbedding, - TextImageProjection, - TextImageTimeEmbedding, - TextTimeEmbedding, - TimestepEmbedding, - Timesteps, -) -from diffusers.models.modeling_utils import ModelMixin, load_state_dict, _load_state_dict_into_model -from diffusers.models.unets.unet_2d_blocks import ( - CrossAttnDownBlock2D, - CrossAttnUpBlock2D, - DownBlock2D, - UNetMidBlock2DCrossAttn, - UNetMidBlock2DSimpleCrossAttn, - UpBlock2D, -) -from huggingface_hub.constants import HF_HUB_OFFLINE, HUGGINGFACE_HUB_CACHE -from diffusers.utils import ( - CONFIG_NAME, - FLAX_WEIGHTS_NAME, - SAFETENSORS_WEIGHTS_NAME, - WEIGHTS_NAME, - _add_variant, - _get_model_file, - deprecate, - is_accelerate_available, - is_torch_version, - logging, -) -from diffusers import __version__ -from mvdiffusion.models.unet_mv2d_blocks import ( - CrossAttnDownBlockMV2D, - CrossAttnUpBlockMV2D, - UNetMidBlockMV2DCrossAttn, - get_down_block, - get_up_block, -) - - -logger = logging.get_logger(__name__) # pylint: disable=invalid-name - - -@dataclass -class UNetMV2DConditionOutput(BaseOutput): - """ - The output of [`UNet2DConditionModel`]. - - Args: - sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)`): - The hidden states output conditioned on `encoder_hidden_states` input. Output of last layer of model. - """ - - sample: torch.FloatTensor = None - - -class UNetMV2DConditionModel(ModelMixin, ConfigMixin, UNet2DConditionLoadersMixin): - r""" - A conditional 2D UNet model that takes a noisy sample, conditional state, and a timestep and returns a sample - shaped output. - - This model inherits from [`ModelMixin`]. Check the superclass documentation for it's generic methods implemented - for all models (such as downloading or saving). - - Parameters: - sample_size (`int` or `Tuple[int, int]`, *optional*, defaults to `None`): - Height and width of input/output sample. - in_channels (`int`, *optional*, defaults to 4): Number of channels in the input sample. - out_channels (`int`, *optional*, defaults to 4): Number of channels in the output. - center_input_sample (`bool`, *optional*, defaults to `False`): Whether to center the input sample. - flip_sin_to_cos (`bool`, *optional*, defaults to `False`): - Whether to flip the sin to cos in the time embedding. - freq_shift (`int`, *optional*, defaults to 0): The frequency shift to apply to the time embedding. - down_block_types (`Tuple[str]`, *optional*, defaults to `("CrossAttnDownBlock2D", "CrossAttnDownBlock2D", "CrossAttnDownBlock2D", "DownBlock2D")`): - The tuple of downsample blocks to use. - mid_block_type (`str`, *optional*, defaults to `"UNetMidBlock2DCrossAttn"`): - Block type for middle of UNet, it can be either `UNetMidBlock2DCrossAttn` or - `UNetMidBlock2DSimpleCrossAttn`. If `None`, the mid block layer is skipped. - up_block_types (`Tuple[str]`, *optional*, defaults to `("UpBlock2D", "CrossAttnUpBlock2D", "CrossAttnUpBlock2D", "CrossAttnUpBlock2D")`): - The tuple of upsample blocks to use. - only_cross_attention(`bool` or `Tuple[bool]`, *optional*, default to `False`): - Whether to include self-attention in the basic transformer blocks, see - [`~models.attention.BasicTransformerBlock`]. - block_out_channels (`Tuple[int]`, *optional*, defaults to `(320, 640, 1280, 1280)`): - The tuple of output channels for each block. - layers_per_block (`int`, *optional*, defaults to 2): The number of layers per block. - downsample_padding (`int`, *optional*, defaults to 1): The padding to use for the downsampling convolution. - mid_block_scale_factor (`float`, *optional*, defaults to 1.0): The scale factor to use for the mid block. - act_fn (`str`, *optional*, defaults to `"silu"`): The activation function to use. - norm_num_groups (`int`, *optional*, defaults to 32): The number of groups to use for the normalization. - If `None`, normalization and activation layers is skipped in post-processing. - norm_eps (`float`, *optional*, defaults to 1e-5): The epsilon to use for the normalization. - cross_attention_dim (`int` or `Tuple[int]`, *optional*, defaults to 1280): - The dimension of the cross attention features. - transformer_layers_per_block (`int` or `Tuple[int]`, *optional*, defaults to 1): - The number of transformer blocks of type [`~models.attention.BasicTransformerBlock`]. Only relevant for - [`~models.unet_2d_blocks.CrossAttnDownBlock2D`], [`~models.unet_2d_blocks.CrossAttnUpBlock2D`], - [`~models.unet_2d_blocks.UNetMidBlock2DCrossAttn`]. - encoder_hid_dim (`int`, *optional*, defaults to None): - If `encoder_hid_dim_type` is defined, `encoder_hidden_states` will be projected from `encoder_hid_dim` - dimension to `cross_attention_dim`. - encoder_hid_dim_type (`str`, *optional*, defaults to `None`): - If given, the `encoder_hidden_states` and potentially other embeddings are down-projected to text - embeddings of dimension `cross_attention` according to `encoder_hid_dim_type`. - attention_head_dim (`int`, *optional*, defaults to 8): The dimension of the attention heads. - num_attention_heads (`int`, *optional*): - The number of attention heads. If not defined, defaults to `attention_head_dim` - resnet_time_scale_shift (`str`, *optional*, defaults to `"default"`): Time scale shift config - for ResNet blocks (see [`~models.resnet.ResnetBlock2D`]). Choose from `default` or `scale_shift`. - class_embed_type (`str`, *optional*, defaults to `None`): - The type of class embedding to use which is ultimately summed with the time embeddings. Choose from `None`, - `"timestep"`, `"identity"`, `"projection"`, or `"simple_projection"`. - addition_embed_type (`str`, *optional*, defaults to `None`): - Configures an optional embedding which will be summed with the time embeddings. Choose from `None` or - "text". "text" will use the `TextTimeEmbedding` layer. - addition_time_embed_dim: (`int`, *optional*, defaults to `None`): - Dimension for the timestep embeddings. - num_class_embeds (`int`, *optional*, defaults to `None`): - Input dimension of the learnable embedding matrix to be projected to `time_embed_dim`, when performing - class conditioning with `class_embed_type` equal to `None`. - time_embedding_type (`str`, *optional*, defaults to `positional`): - The type of position embedding to use for timesteps. Choose from `positional` or `fourier`. - time_embedding_dim (`int`, *optional*, defaults to `None`): - An optional override for the dimension of the projected time embedding. - time_embedding_act_fn (`str`, *optional*, defaults to `None`): - Optional activation function to use only once on the time embeddings before they are passed to the rest of - the UNet. Choose from `silu`, `mish`, `gelu`, and `swish`. - timestep_post_act (`str`, *optional*, defaults to `None`): - The second activation function to use in timestep embedding. Choose from `silu`, `mish` and `gelu`. - time_cond_proj_dim (`int`, *optional*, defaults to `None`): - The dimension of `cond_proj` layer in the timestep embedding. - conv_in_kernel (`int`, *optional*, default to `3`): The kernel size of `conv_in` layer. - conv_out_kernel (`int`, *optional*, default to `3`): The kernel size of `conv_out` layer. - projection_class_embeddings_input_dim (`int`, *optional*): The dimension of the `class_labels` input when - `class_embed_type="projection"`. Required when `class_embed_type="projection"`. - class_embeddings_concat (`bool`, *optional*, defaults to `False`): Whether to concatenate the time - embeddings with the class embeddings. - mid_block_only_cross_attention (`bool`, *optional*, defaults to `None`): - Whether to use cross attention with the mid block when using the `UNetMidBlock2DSimpleCrossAttn`. If - `only_cross_attention` is given as a single boolean and `mid_block_only_cross_attention` is `None`, the - `only_cross_attention` value is used as the value for `mid_block_only_cross_attention`. Default to `False` - otherwise. - """ - - _supports_gradient_checkpointing = True - - @register_to_config - def __init__( - self, - sample_size: Optional[int] = None, - in_channels: int = 4, - out_channels: int = 4, - center_input_sample: bool = False, - flip_sin_to_cos: bool = True, - freq_shift: int = 0, - down_block_types: Tuple[str] = ( - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "DownBlock2D", - ), - mid_block_type: Optional[str] = "UNetMidBlockMV2DCrossAttn", - up_block_types: Tuple[str] = ("UpBlock2D", "CrossAttnUpBlockMV2D", "CrossAttnUpBlockMV2D", "CrossAttnUpBlockMV2D"), - only_cross_attention: Union[bool, Tuple[bool]] = False, - block_out_channels: Tuple[int] = (320, 640, 1280, 1280), - layers_per_block: Union[int, Tuple[int]] = 2, - downsample_padding: int = 1, - mid_block_scale_factor: float = 1, - act_fn: str = "silu", - norm_num_groups: Optional[int] = 32, - norm_eps: float = 1e-5, - cross_attention_dim: Union[int, Tuple[int]] = 1280, - transformer_layers_per_block: Union[int, Tuple[int]] = 1, - encoder_hid_dim: Optional[int] = None, - encoder_hid_dim_type: Optional[str] = None, - attention_head_dim: Union[int, Tuple[int]] = 8, - num_attention_heads: Optional[Union[int, Tuple[int]]] = None, - dual_cross_attention: bool = False, - use_linear_projection: bool = False, - class_embed_type: Optional[str] = None, - addition_embed_type: Optional[str] = None, - addition_time_embed_dim: Optional[int] = None, - num_class_embeds: Optional[int] = None, - upcast_attention: bool = False, - resnet_time_scale_shift: str = "default", - resnet_skip_time_act: bool = False, - resnet_out_scale_factor: int = 1.0, - time_embedding_type: str = "positional", - time_embedding_dim: Optional[int] = None, - time_embedding_act_fn: Optional[str] = None, - timestep_post_act: Optional[str] = None, - time_cond_proj_dim: Optional[int] = None, - conv_in_kernel: int = 3, - conv_out_kernel: int = 3, - projection_class_embeddings_input_dim: Optional[int] = None, - class_embeddings_concat: bool = False, - mid_block_only_cross_attention: Optional[bool] = None, - cross_attention_norm: Optional[str] = None, - addition_embed_type_num_heads=64, - num_views: int = 1, - cd_attention_last: bool = False, - cd_attention_mid: bool = False, - multiview_attention: bool = True, - sparse_mv_attention: bool = False, - mvcd_attention: bool = False - ): - super().__init__() - - self.sample_size = sample_size - - if num_attention_heads is not None: - raise ValueError( - "At the moment it is not possible to define the number of attention heads via `num_attention_heads` because of a naming issue as described in https://github.com/huggingface/diffusers/issues/2011#issuecomment-1547958131. Passing `num_attention_heads` will only be supported in diffusers v0.19." - ) - - # If `num_attention_heads` is not defined (which is the case for most models) - # it will default to `attention_head_dim`. This looks weird upon first reading it and it is. - # The reason for this behavior is to correct for incorrectly named variables that were introduced - # when this library was created. The incorrect naming was only discovered much later in https://github.com/huggingface/diffusers/issues/2011#issuecomment-1547958131 - # Changing `attention_head_dim` to `num_attention_heads` for 40,000+ configurations is too backwards breaking - # which is why we correct for the naming here. - num_attention_heads = num_attention_heads or attention_head_dim - - # Check inputs - if len(down_block_types) != len(up_block_types): - raise ValueError( - f"Must provide the same number of `down_block_types` as `up_block_types`. `down_block_types`: {down_block_types}. `up_block_types`: {up_block_types}." - ) - - if len(block_out_channels) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `block_out_channels` as `down_block_types`. `block_out_channels`: {block_out_channels}. `down_block_types`: {down_block_types}." - ) - - if not isinstance(only_cross_attention, bool) and len(only_cross_attention) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `only_cross_attention` as `down_block_types`. `only_cross_attention`: {only_cross_attention}. `down_block_types`: {down_block_types}." - ) - - if not isinstance(num_attention_heads, int) and len(num_attention_heads) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `num_attention_heads` as `down_block_types`. `num_attention_heads`: {num_attention_heads}. `down_block_types`: {down_block_types}." - ) - - if not isinstance(attention_head_dim, int) and len(attention_head_dim) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `attention_head_dim` as `down_block_types`. `attention_head_dim`: {attention_head_dim}. `down_block_types`: {down_block_types}." - ) - - if isinstance(cross_attention_dim, list) and len(cross_attention_dim) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `cross_attention_dim` as `down_block_types`. `cross_attention_dim`: {cross_attention_dim}. `down_block_types`: {down_block_types}." - ) - - if not isinstance(layers_per_block, int) and len(layers_per_block) != len(down_block_types): - raise ValueError( - f"Must provide the same number of `layers_per_block` as `down_block_types`. `layers_per_block`: {layers_per_block}. `down_block_types`: {down_block_types}." - ) - - # input - conv_in_padding = (conv_in_kernel - 1) // 2 - self.conv_in = nn.Conv2d( - in_channels, block_out_channels[0], kernel_size=conv_in_kernel, padding=conv_in_padding - ) - - # time - if time_embedding_type == "fourier": - time_embed_dim = time_embedding_dim or block_out_channels[0] * 2 - if time_embed_dim % 2 != 0: - raise ValueError(f"`time_embed_dim` should be divisible by 2, but is {time_embed_dim}.") - self.time_proj = GaussianFourierProjection( - time_embed_dim // 2, set_W_to_weight=False, log=False, flip_sin_to_cos=flip_sin_to_cos - ) - timestep_input_dim = time_embed_dim - elif time_embedding_type == "positional": - time_embed_dim = time_embedding_dim or block_out_channels[0] * 4 - - self.time_proj = Timesteps(block_out_channels[0], flip_sin_to_cos, freq_shift) - timestep_input_dim = block_out_channels[0] - else: - raise ValueError( - f"{time_embedding_type} does not exist. Please make sure to use one of `fourier` or `positional`." - ) - - self.time_embedding = TimestepEmbedding( - timestep_input_dim, - time_embed_dim, - act_fn=act_fn, - post_act_fn=timestep_post_act, - cond_proj_dim=time_cond_proj_dim, - ) - - if encoder_hid_dim_type is None and encoder_hid_dim is not None: - encoder_hid_dim_type = "text_proj" - self.register_to_config(encoder_hid_dim_type=encoder_hid_dim_type) - logger.info("encoder_hid_dim_type defaults to 'text_proj' as `encoder_hid_dim` is defined.") - - if encoder_hid_dim is None and encoder_hid_dim_type is not None: - raise ValueError( - f"`encoder_hid_dim` has to be defined when `encoder_hid_dim_type` is set to {encoder_hid_dim_type}." - ) - - if encoder_hid_dim_type == "text_proj": - self.encoder_hid_proj = nn.Linear(encoder_hid_dim, cross_attention_dim) - elif encoder_hid_dim_type == "text_image_proj": - # image_embed_dim DOESN'T have to be `cross_attention_dim`. To not clutter the __init__ too much - # they are set to `cross_attention_dim` here as this is exactly the required dimension for the currently only use - # case when `addition_embed_type == "text_image_proj"` (Kadinsky 2.1)` - self.encoder_hid_proj = TextImageProjection( - text_embed_dim=encoder_hid_dim, - image_embed_dim=cross_attention_dim, - cross_attention_dim=cross_attention_dim, - ) - elif encoder_hid_dim_type == "image_proj": - # Kandinsky 2.2 - self.encoder_hid_proj = ImageProjection( - image_embed_dim=encoder_hid_dim, - cross_attention_dim=cross_attention_dim, - ) - elif encoder_hid_dim_type is not None: - raise ValueError( - f"encoder_hid_dim_type: {encoder_hid_dim_type} must be None, 'text_proj' or 'text_image_proj'." - ) - else: - self.encoder_hid_proj = None - - # class embedding - if class_embed_type is None and num_class_embeds is not None: - self.class_embedding = nn.Embedding(num_class_embeds, time_embed_dim) - elif class_embed_type == "timestep": - self.class_embedding = TimestepEmbedding(timestep_input_dim, time_embed_dim, act_fn=act_fn) - elif class_embed_type == "identity": - self.class_embedding = nn.Identity(time_embed_dim, time_embed_dim) - elif class_embed_type == "projection": - if projection_class_embeddings_input_dim is None: - raise ValueError( - "`class_embed_type`: 'projection' requires `projection_class_embeddings_input_dim` be set" - ) - # The projection `class_embed_type` is the same as the timestep `class_embed_type` except - # 1. the `class_labels` inputs are not first converted to sinusoidal embeddings - # 2. it projects from an arbitrary input dimension. - # - # Note that `TimestepEmbedding` is quite general, being mainly linear layers and activations. - # When used for embedding actual timesteps, the timesteps are first converted to sinusoidal embeddings. - # As a result, `TimestepEmbedding` can be passed arbitrary vectors. - self.class_embedding = TimestepEmbedding(projection_class_embeddings_input_dim, time_embed_dim) - elif class_embed_type == "simple_projection": - if projection_class_embeddings_input_dim is None: - raise ValueError( - "`class_embed_type`: 'simple_projection' requires `projection_class_embeddings_input_dim` be set" - ) - self.class_embedding = nn.Linear(projection_class_embeddings_input_dim, time_embed_dim) - else: - self.class_embedding = None - - if addition_embed_type == "text": - if encoder_hid_dim is not None: - text_time_embedding_from_dim = encoder_hid_dim - else: - text_time_embedding_from_dim = cross_attention_dim - - self.add_embedding = TextTimeEmbedding( - text_time_embedding_from_dim, time_embed_dim, num_heads=addition_embed_type_num_heads - ) - elif addition_embed_type == "text_image": - # text_embed_dim and image_embed_dim DON'T have to be `cross_attention_dim`. To not clutter the __init__ too much - # they are set to `cross_attention_dim` here as this is exactly the required dimension for the currently only use - # case when `addition_embed_type == "text_image"` (Kadinsky 2.1)` - self.add_embedding = TextImageTimeEmbedding( - text_embed_dim=cross_attention_dim, image_embed_dim=cross_attention_dim, time_embed_dim=time_embed_dim - ) - elif addition_embed_type == "text_time": - self.add_time_proj = Timesteps(addition_time_embed_dim, flip_sin_to_cos, freq_shift) - self.add_embedding = TimestepEmbedding(projection_class_embeddings_input_dim, time_embed_dim) - elif addition_embed_type == "image": - # Kandinsky 2.2 - self.add_embedding = ImageTimeEmbedding(image_embed_dim=encoder_hid_dim, time_embed_dim=time_embed_dim) - elif addition_embed_type == "image_hint": - # Kandinsky 2.2 ControlNet - self.add_embedding = ImageHintTimeEmbedding(image_embed_dim=encoder_hid_dim, time_embed_dim=time_embed_dim) - elif addition_embed_type is not None: - raise ValueError(f"addition_embed_type: {addition_embed_type} must be None, 'text' or 'text_image'.") - - if time_embedding_act_fn is None: - self.time_embed_act = None - else: - self.time_embed_act = get_activation(time_embedding_act_fn) - - self.down_blocks = nn.ModuleList([]) - self.up_blocks = nn.ModuleList([]) - - if isinstance(only_cross_attention, bool): - if mid_block_only_cross_attention is None: - mid_block_only_cross_attention = only_cross_attention - - only_cross_attention = [only_cross_attention] * len(down_block_types) - - if mid_block_only_cross_attention is None: - mid_block_only_cross_attention = False - - if isinstance(num_attention_heads, int): - num_attention_heads = (num_attention_heads,) * len(down_block_types) - - if isinstance(attention_head_dim, int): - attention_head_dim = (attention_head_dim,) * len(down_block_types) - - if isinstance(cross_attention_dim, int): - cross_attention_dim = (cross_attention_dim,) * len(down_block_types) - - if isinstance(layers_per_block, int): - layers_per_block = [layers_per_block] * len(down_block_types) - - if isinstance(transformer_layers_per_block, int): - transformer_layers_per_block = [transformer_layers_per_block] * len(down_block_types) - - if class_embeddings_concat: - # The time embeddings are concatenated with the class embeddings. The dimension of the - # time embeddings passed to the down, middle, and up blocks is twice the dimension of the - # regular time embeddings - blocks_time_embed_dim = time_embed_dim * 2 - else: - blocks_time_embed_dim = time_embed_dim - - # down - output_channel = block_out_channels[0] - for i, down_block_type in enumerate(down_block_types): - input_channel = output_channel - output_channel = block_out_channels[i] - is_final_block = i == len(block_out_channels) - 1 - - down_block = get_down_block( - down_block_type, - num_layers=layers_per_block[i], - transformer_layers_per_block=transformer_layers_per_block[i], - in_channels=input_channel, - out_channels=output_channel, - temb_channels=blocks_time_embed_dim, - add_downsample=not is_final_block, - resnet_eps=norm_eps, - resnet_act_fn=act_fn, - resnet_groups=norm_num_groups, - cross_attention_dim=cross_attention_dim[i], - num_attention_heads=num_attention_heads[i], - downsample_padding=downsample_padding, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention[i], - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - resnet_skip_time_act=resnet_skip_time_act, - resnet_out_scale_factor=resnet_out_scale_factor, - cross_attention_norm=cross_attention_norm, - attention_head_dim=attention_head_dim[i] if attention_head_dim[i] is not None else output_channel, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention - ) - self.down_blocks.append(down_block) - - # mid - if mid_block_type == "UNetMidBlock2DCrossAttn": - self.mid_block = UNetMidBlock2DCrossAttn( - transformer_layers_per_block=transformer_layers_per_block[-1], - in_channels=block_out_channels[-1], - temb_channels=blocks_time_embed_dim, - resnet_eps=norm_eps, - resnet_act_fn=act_fn, - output_scale_factor=mid_block_scale_factor, - resnet_time_scale_shift=resnet_time_scale_shift, - cross_attention_dim=cross_attention_dim[-1], - num_attention_heads=num_attention_heads[-1], - resnet_groups=norm_num_groups, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - upcast_attention=upcast_attention, - ) - # custom MV2D attention block - elif mid_block_type == "UNetMidBlockMV2DCrossAttn": - self.mid_block = UNetMidBlockMV2DCrossAttn( - transformer_layers_per_block=transformer_layers_per_block[-1], - in_channels=block_out_channels[-1], - temb_channels=blocks_time_embed_dim, - resnet_eps=norm_eps, - resnet_act_fn=act_fn, - output_scale_factor=mid_block_scale_factor, - resnet_time_scale_shift=resnet_time_scale_shift, - cross_attention_dim=cross_attention_dim[-1], - num_attention_heads=num_attention_heads[-1], - resnet_groups=norm_num_groups, - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - upcast_attention=upcast_attention, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention - ) - elif mid_block_type == "UNetMidBlock2DSimpleCrossAttn": - self.mid_block = UNetMidBlock2DSimpleCrossAttn( - in_channels=block_out_channels[-1], - temb_channels=blocks_time_embed_dim, - resnet_eps=norm_eps, - resnet_act_fn=act_fn, - output_scale_factor=mid_block_scale_factor, - cross_attention_dim=cross_attention_dim[-1], - attention_head_dim=attention_head_dim[-1], - resnet_groups=norm_num_groups, - resnet_time_scale_shift=resnet_time_scale_shift, - skip_time_act=resnet_skip_time_act, - only_cross_attention=mid_block_only_cross_attention, - cross_attention_norm=cross_attention_norm, - ) - elif mid_block_type is None: - self.mid_block = None - else: - raise ValueError(f"unknown mid_block_type : {mid_block_type}") - - # count how many layers upsample the images - self.num_upsamplers = 0 - - # up - reversed_block_out_channels = list(reversed(block_out_channels)) - reversed_num_attention_heads = list(reversed(num_attention_heads)) - reversed_layers_per_block = list(reversed(layers_per_block)) - reversed_cross_attention_dim = list(reversed(cross_attention_dim)) - reversed_transformer_layers_per_block = list(reversed(transformer_layers_per_block)) - only_cross_attention = list(reversed(only_cross_attention)) - - output_channel = reversed_block_out_channels[0] - for i, up_block_type in enumerate(up_block_types): - is_final_block = i == len(block_out_channels) - 1 - - prev_output_channel = output_channel - output_channel = reversed_block_out_channels[i] - input_channel = reversed_block_out_channels[min(i + 1, len(block_out_channels) - 1)] - - # add upsample block for all BUT final layer - if not is_final_block: - add_upsample = True - self.num_upsamplers += 1 - else: - add_upsample = False - - up_block = get_up_block( - up_block_type, - num_layers=reversed_layers_per_block[i] + 1, - transformer_layers_per_block=reversed_transformer_layers_per_block[i], - in_channels=input_channel, - out_channels=output_channel, - prev_output_channel=prev_output_channel, - temb_channels=blocks_time_embed_dim, - add_upsample=add_upsample, - resnet_eps=norm_eps, - resnet_act_fn=act_fn, - resnet_groups=norm_num_groups, - cross_attention_dim=reversed_cross_attention_dim[i], - num_attention_heads=reversed_num_attention_heads[i], - dual_cross_attention=dual_cross_attention, - use_linear_projection=use_linear_projection, - only_cross_attention=only_cross_attention[i], - upcast_attention=upcast_attention, - resnet_time_scale_shift=resnet_time_scale_shift, - resnet_skip_time_act=resnet_skip_time_act, - resnet_out_scale_factor=resnet_out_scale_factor, - cross_attention_norm=cross_attention_norm, - attention_head_dim=attention_head_dim[i] if attention_head_dim[i] is not None else output_channel, - num_views=num_views, - cd_attention_last=cd_attention_last, - cd_attention_mid=cd_attention_mid, - multiview_attention=multiview_attention, - sparse_mv_attention=sparse_mv_attention, - mvcd_attention=mvcd_attention - ) - self.up_blocks.append(up_block) - prev_output_channel = output_channel - - # out - if norm_num_groups is not None: - self.conv_norm_out = nn.GroupNorm( - num_channels=block_out_channels[0], num_groups=norm_num_groups, eps=norm_eps - ) - - self.conv_act = get_activation(act_fn) - - else: - self.conv_norm_out = None - self.conv_act = None - - conv_out_padding = (conv_out_kernel - 1) // 2 - self.conv_out = nn.Conv2d( - block_out_channels[0], out_channels, kernel_size=conv_out_kernel, padding=conv_out_padding - ) - - @property - def attn_processors(self) -> Dict[str, AttentionProcessor]: - r""" - Returns: - `dict` of attention processors: A dictionary containing all attention processors used in the model with - indexed by its weight name. - """ - # set recursively - processors = {} - - def fn_recursive_add_processors(name: str, module: torch.nn.Module, processors: Dict[str, AttentionProcessor]): - if hasattr(module, "set_processor"): - processors[f"{name}.processor"] = module.processor - - for sub_name, child in module.named_children(): - fn_recursive_add_processors(f"{name}.{sub_name}", child, processors) - - return processors - - for name, module in self.named_children(): - fn_recursive_add_processors(name, module, processors) - - return processors - - def set_attn_processor(self, processor: Union[AttentionProcessor, Dict[str, AttentionProcessor]]): - r""" - Sets the attention processor to use to compute attention. - - Parameters: - processor (`dict` of `AttentionProcessor` or only `AttentionProcessor`): - The instantiated processor class or a dictionary of processor classes that will be set as the processor - for **all** `Attention` layers. - - If `processor` is a dict, the key needs to define the path to the corresponding cross attention - processor. This is strongly recommended when setting trainable attention processors. - - """ - count = len(self.attn_processors.keys()) - - if isinstance(processor, dict) and len(processor) != count: - raise ValueError( - f"A dict of processors was passed, but the number of processors {len(processor)} does not match the" - f" number of attention layers: {count}. Please make sure to pass {count} processor classes." - ) - - def fn_recursive_attn_processor(name: str, module: torch.nn.Module, processor): - if hasattr(module, "set_processor"): - if not isinstance(processor, dict): - module.set_processor(processor) - else: - module.set_processor(processor.pop(f"{name}.processor")) - - for sub_name, child in module.named_children(): - fn_recursive_attn_processor(f"{name}.{sub_name}", child, processor) - - for name, module in self.named_children(): - fn_recursive_attn_processor(name, module, processor) - - def set_default_attn_processor(self): - """ - Disables custom attention processors and sets the default attention implementation. - """ - self.set_attn_processor(AttnProcessor()) - - def set_attention_slice(self, slice_size): - r""" - Enable sliced attention computation. - - When this option is enabled, the attention module splits the input tensor in slices to compute attention in - several steps. This is useful for saving some memory in exchange for a small decrease in speed. - - Args: - slice_size (`str` or `int` or `list(int)`, *optional*, defaults to `"auto"`): - When `"auto"`, input to the attention heads is halved, so attention is computed in two steps. If - `"max"`, maximum amount of memory is saved by running only one slice at a time. If a number is - provided, uses as many slices as `attention_head_dim // slice_size`. In this case, `attention_head_dim` - must be a multiple of `slice_size`. - """ - sliceable_head_dims = [] - - def fn_recursive_retrieve_sliceable_dims(module: torch.nn.Module): - if hasattr(module, "set_attention_slice"): - sliceable_head_dims.append(module.sliceable_head_dim) - - for child in module.children(): - fn_recursive_retrieve_sliceable_dims(child) - - # retrieve number of attention layers - for module in self.children(): - fn_recursive_retrieve_sliceable_dims(module) - - num_sliceable_layers = len(sliceable_head_dims) - - if slice_size == "auto": - # half the attention head size is usually a good trade-off between - # speed and memory - slice_size = [dim // 2 for dim in sliceable_head_dims] - elif slice_size == "max": - # make smallest slice possible - slice_size = num_sliceable_layers * [1] - - slice_size = num_sliceable_layers * [slice_size] if not isinstance(slice_size, list) else slice_size - - if len(slice_size) != len(sliceable_head_dims): - raise ValueError( - f"You have provided {len(slice_size)}, but {self.config} has {len(sliceable_head_dims)} different" - f" attention layers. Make sure to match `len(slice_size)` to be {len(sliceable_head_dims)}." - ) - - for i in range(len(slice_size)): - size = slice_size[i] - dim = sliceable_head_dims[i] - if size is not None and size > dim: - raise ValueError(f"size {size} has to be smaller or equal to {dim}.") - - # Recursively walk through all the children. - # Any children which exposes the set_attention_slice method - # gets the message - def fn_recursive_set_attention_slice(module: torch.nn.Module, slice_size: List[int]): - if hasattr(module, "set_attention_slice"): - module.set_attention_slice(slice_size.pop()) - - for child in module.children(): - fn_recursive_set_attention_slice(child, slice_size) - - reversed_slice_size = list(reversed(slice_size)) - for module in self.children(): - fn_recursive_set_attention_slice(module, reversed_slice_size) - - def _set_gradient_checkpointing(self, module, value=False): - if isinstance(module, (CrossAttnDownBlock2D, CrossAttnDownBlockMV2D, DownBlock2D, CrossAttnUpBlock2D, CrossAttnUpBlockMV2D, UpBlock2D)): - module.gradient_checkpointing = value - - def forward( - self, - sample: torch.FloatTensor, - timestep: Union[torch.Tensor, float, int], - encoder_hidden_states: torch.Tensor, - class_labels: Optional[torch.Tensor] = None, - timestep_cond: Optional[torch.Tensor] = None, - attention_mask: Optional[torch.Tensor] = None, - cross_attention_kwargs: Optional[Dict[str, Any]] = None, - added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None, - down_block_additional_residuals: Optional[Tuple[torch.Tensor]] = None, - mid_block_additional_residual: Optional[torch.Tensor] = None, - encoder_attention_mask: Optional[torch.Tensor] = None, - return_dict: bool = True, - ) -> Union[UNetMV2DConditionOutput, Tuple]: - r""" - The [`UNet2DConditionModel`] forward method. - - Args: - sample (`torch.FloatTensor`): - The noisy input tensor with the following shape `(batch, channel, height, width)`. - timestep (`torch.FloatTensor` or `float` or `int`): The number of timesteps to denoise an input. - encoder_hidden_states (`torch.FloatTensor`): - The encoder hidden states with shape `(batch, sequence_length, feature_dim)`. - encoder_attention_mask (`torch.Tensor`): - A cross-attention mask of shape `(batch, sequence_length)` is applied to `encoder_hidden_states`. If - `True` the mask is kept, otherwise if `False` it is discarded. Mask will be converted into a bias, - which adds large negative values to the attention scores corresponding to "discard" tokens. - return_dict (`bool`, *optional*, defaults to `True`): - Whether or not to return a [`~models.unet_2d_condition.UNet2DConditionOutput`] instead of a plain - tuple. - cross_attention_kwargs (`dict`, *optional*): - A kwargs dictionary that if specified is passed along to the [`AttnProcessor`]. - added_cond_kwargs: (`dict`, *optional*): - A kwargs dictionary containin additional embeddings that if specified are added to the embeddings that - are passed along to the UNet blocks. - - Returns: - [`~models.unet_2d_condition.UNet2DConditionOutput`] or `tuple`: - If `return_dict` is True, an [`~models.unet_2d_condition.UNet2DConditionOutput`] is returned, otherwise - a `tuple` is returned where the first element is the sample tensor. - """ - # By default samples have to be AT least a multiple of the overall upsampling factor. - # The overall upsampling factor is equal to 2 ** (# num of upsampling layers). - # However, the upsampling interpolation output size can be forced to fit any upsampling size - # on the fly if necessary. - default_overall_up_factor = 2**self.num_upsamplers - - # upsample size should be forwarded when sample is not a multiple of `default_overall_up_factor` - forward_upsample_size = False - upsample_size = None - - if any(s % default_overall_up_factor != 0 for s in sample.shape[-2:]): - logger.info("Forward upsample size to force interpolation output size.") - forward_upsample_size = True - - # ensure attention_mask is a bias, and give it a singleton query_tokens dimension - # expects mask of shape: - # [batch, key_tokens] - # adds singleton query_tokens dimension: - # [batch, 1, key_tokens] - # this helps to broadcast it as a bias over attention scores, which will be in one of the following shapes: - # [batch, heads, query_tokens, key_tokens] (e.g. torch sdp attn) - # [batch * heads, query_tokens, key_tokens] (e.g. xformers or classic attn) - if attention_mask is not None: - # assume that mask is expressed as: - # (1 = keep, 0 = discard) - # convert mask into a bias that can be added to attention scores: - # (keep = +0, discard = -10000.0) - attention_mask = (1 - attention_mask.to(sample.dtype)) * -10000.0 - attention_mask = attention_mask.unsqueeze(1) - - # convert encoder_attention_mask to a bias the same way we do for attention_mask - if encoder_attention_mask is not None: - encoder_attention_mask = (1 - encoder_attention_mask.to(sample.dtype)) * -10000.0 - encoder_attention_mask = encoder_attention_mask.unsqueeze(1) - - # 0. center input if necessary - if self.config.center_input_sample: - sample = 2 * sample - 1.0 - - # 1. time - timesteps = timestep - if not torch.is_tensor(timesteps): - # TODO: this requires sync between CPU and GPU. So try to pass timesteps as tensors if you can - # This would be a good case for the `match` statement (Python 3.10+) - is_mps = sample.device.type == "mps" - if isinstance(timestep, float): - dtype = torch.float32 if is_mps else torch.float64 - else: - dtype = torch.int32 if is_mps else torch.int64 - timesteps = torch.tensor([timesteps], dtype=dtype, device=sample.device) - elif len(timesteps.shape) == 0: - timesteps = timesteps[None].to(sample.device) - - # broadcast to batch dimension in a way that's compatible with ONNX/Core ML - timesteps = timesteps.expand(sample.shape[0]) - - t_emb = self.time_proj(timesteps) - - # `Timesteps` does not contain any weights and will always return f32 tensors - # but time_embedding might actually be running in fp16. so we need to cast here. - # there might be better ways to encapsulate this. - t_emb = t_emb.to(dtype=sample.dtype) - - emb = self.time_embedding(t_emb, timestep_cond) - aug_emb = None - - if self.class_embedding is not None: - if class_labels is None: - raise ValueError("class_labels should be provided when num_class_embeds > 0") - - if self.config.class_embed_type == "timestep": - class_labels = self.time_proj(class_labels) - - # `Timesteps` does not contain any weights and will always return f32 tensors - # there might be better ways to encapsulate this. - class_labels = class_labels.to(dtype=sample.dtype) - - class_emb = self.class_embedding(class_labels).to(dtype=sample.dtype) - - if self.config.class_embeddings_concat: - emb = torch.cat([emb, class_emb], dim=-1) - else: - emb = emb + class_emb - - if self.config.addition_embed_type == "text": - aug_emb = self.add_embedding(encoder_hidden_states) - elif self.config.addition_embed_type == "text_image": - # Kandinsky 2.1 - style - if "image_embeds" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `addition_embed_type` set to 'text_image' which requires the keyword argument `image_embeds` to be passed in `added_cond_kwargs`" - ) - - image_embs = added_cond_kwargs.get("image_embeds") - text_embs = added_cond_kwargs.get("text_embeds", encoder_hidden_states) - aug_emb = self.add_embedding(text_embs, image_embs) - elif self.config.addition_embed_type == "text_time": - # SDXL - style - if "text_embeds" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `text_embeds` to be passed in `added_cond_kwargs`" - ) - text_embeds = added_cond_kwargs.get("text_embeds") - if "time_ids" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `time_ids` to be passed in `added_cond_kwargs`" - ) - time_ids = added_cond_kwargs.get("time_ids") - time_embeds = self.add_time_proj(time_ids.flatten()) - time_embeds = time_embeds.reshape((text_embeds.shape[0], -1)) - - add_embeds = torch.concat([text_embeds, time_embeds], dim=-1) - add_embeds = add_embeds.to(emb.dtype) - aug_emb = self.add_embedding(add_embeds) - elif self.config.addition_embed_type == "image": - # Kandinsky 2.2 - style - if "image_embeds" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `addition_embed_type` set to 'image' which requires the keyword argument `image_embeds` to be passed in `added_cond_kwargs`" - ) - image_embs = added_cond_kwargs.get("image_embeds") - aug_emb = self.add_embedding(image_embs) - elif self.config.addition_embed_type == "image_hint": - # Kandinsky 2.2 - style - if "image_embeds" not in added_cond_kwargs or "hint" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `addition_embed_type` set to 'image_hint' which requires the keyword arguments `image_embeds` and `hint` to be passed in `added_cond_kwargs`" - ) - image_embs = added_cond_kwargs.get("image_embeds") - hint = added_cond_kwargs.get("hint") - aug_emb, hint = self.add_embedding(image_embs, hint) - sample = torch.cat([sample, hint], dim=1) - - emb = emb + aug_emb if aug_emb is not None else emb - - if self.time_embed_act is not None: - emb = self.time_embed_act(emb) - - if self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == "text_proj": - encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states) - elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == "text_image_proj": - # Kadinsky 2.1 - style - if "image_embeds" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `encoder_hid_dim_type` set to 'text_image_proj' which requires the keyword argument `image_embeds` to be passed in `added_conditions`" - ) - - image_embeds = added_cond_kwargs.get("image_embeds") - encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states, image_embeds) - elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == "image_proj": - # Kandinsky 2.2 - style - if "image_embeds" not in added_cond_kwargs: - raise ValueError( - f"{self.__class__} has the config param `encoder_hid_dim_type` set to 'image_proj' which requires the keyword argument `image_embeds` to be passed in `added_conditions`" - ) - image_embeds = added_cond_kwargs.get("image_embeds") - encoder_hidden_states = self.encoder_hid_proj(image_embeds) - # 2. pre-process - sample = self.conv_in(sample) - - # 3. down - - is_controlnet = mid_block_additional_residual is not None and down_block_additional_residuals is not None - is_adapter = mid_block_additional_residual is None and down_block_additional_residuals is not None - - down_block_res_samples = (sample,) - for downsample_block in self.down_blocks: - if hasattr(downsample_block, "has_cross_attention") and downsample_block.has_cross_attention: - # For t2i-adapter CrossAttnDownBlock2D - additional_residuals = {} - if is_adapter and len(down_block_additional_residuals) > 0: - additional_residuals["additional_residuals"] = down_block_additional_residuals.pop(0) - - sample, res_samples = downsample_block( - hidden_states=sample, - temb=emb, - encoder_hidden_states=encoder_hidden_states, - attention_mask=attention_mask, - cross_attention_kwargs=cross_attention_kwargs, - encoder_attention_mask=encoder_attention_mask, - **additional_residuals, - ) - else: - sample, res_samples = downsample_block(hidden_states=sample, temb=emb) - - if is_adapter and len(down_block_additional_residuals) > 0: - sample += down_block_additional_residuals.pop(0) - - down_block_res_samples += res_samples - - if is_controlnet: - new_down_block_res_samples = () - - for down_block_res_sample, down_block_additional_residual in zip( - down_block_res_samples, down_block_additional_residuals - ): - down_block_res_sample = down_block_res_sample + down_block_additional_residual - new_down_block_res_samples = new_down_block_res_samples + (down_block_res_sample,) - - down_block_res_samples = new_down_block_res_samples - - # 4. mid - if self.mid_block is not None: - sample = self.mid_block( - sample, - emb, - encoder_hidden_states=encoder_hidden_states, - attention_mask=attention_mask, - cross_attention_kwargs=cross_attention_kwargs, - encoder_attention_mask=encoder_attention_mask, - ) - - if is_controlnet: - sample = sample + mid_block_additional_residual - - # 5. up - for i, upsample_block in enumerate(self.up_blocks): - is_final_block = i == len(self.up_blocks) - 1 - - res_samples = down_block_res_samples[-len(upsample_block.resnets) :] - down_block_res_samples = down_block_res_samples[: -len(upsample_block.resnets)] - - # if we have not reached the final block and need to forward the - # upsample size, we do it here - if not is_final_block and forward_upsample_size: - upsample_size = down_block_res_samples[-1].shape[2:] - - if hasattr(upsample_block, "has_cross_attention") and upsample_block.has_cross_attention: - sample = upsample_block( - hidden_states=sample, - temb=emb, - res_hidden_states_tuple=res_samples, - encoder_hidden_states=encoder_hidden_states, - cross_attention_kwargs=cross_attention_kwargs, - upsample_size=upsample_size, - attention_mask=attention_mask, - encoder_attention_mask=encoder_attention_mask, - ) - else: - sample = upsample_block( - hidden_states=sample, temb=emb, res_hidden_states_tuple=res_samples, upsample_size=upsample_size - ) - - # 6. post-process - if self.conv_norm_out: - sample = self.conv_norm_out(sample) - sample = self.conv_act(sample) - sample = self.conv_out(sample) - - if not return_dict: - return (sample,) - - return UNetMV2DConditionOutput(sample=sample) - - @classmethod - def from_pretrained_2d( - cls, pretrained_model_name_or_path: Optional[Union[str, os.PathLike]], - camera_embedding_type: str, num_views: int, sample_size: int, - zero_init_conv_in: bool = True, zero_init_camera_projection: bool = False, - projection_class_embeddings_input_dim: int=6, cd_attention_last: bool = False, - cd_attention_mid: bool = False, multiview_attention: bool = True, - sparse_mv_attention: bool = False, mvcd_attention: bool = False, - in_channels: int = 8, out_channels: int = 4, - **kwargs - ): - r""" - Instantiate a pretrained PyTorch model from a pretrained model configuration. - - The model is set in evaluation mode - `model.eval()` - by default, and dropout modules are deactivated. To - train the model, set it back in training mode with `model.train()`. - - Parameters: - pretrained_model_name_or_path (`str` or `os.PathLike`, *optional*): - Can be either: - - - A string, the *model id* (for example `google/ddpm-celebahq-256`) of a pretrained model hosted on - the Hub. - - A path to a *directory* (for example `./my_model_directory`) containing the model weights saved - with [`~ModelMixin.save_pretrained`]. - - cache_dir (`Union[str, os.PathLike]`, *optional*): - Path to a directory where a downloaded pretrained model configuration is cached if the standard cache - is not used. - torch_dtype (`str` or `torch.dtype`, *optional*): - Override the default `torch.dtype` and load the model with another dtype. If `"auto"` is passed, the - dtype is automatically derived from the model's weights. - force_download (`bool`, *optional*, defaults to `False`): - Whether or not to force the (re-)download of the model weights and configuration files, overriding the - cached versions if they exist. - resume_download (`bool`, *optional*, defaults to `False`): - Whether or not to resume downloading the model weights and configuration files. If set to `False`, any - incompletely downloaded files are deleted. - proxies (`Dict[str, str]`, *optional*): - A dictionary of proxy servers to use by protocol or endpoint, for example, `{'http': 'foo.bar:3128', - 'http://hostname': 'foo.bar:4012'}`. The proxies are used on each request. - output_loading_info (`bool`, *optional*, defaults to `False`): - Whether or not to also return a dictionary containing missing keys, unexpected keys and error messages. - local_files_only(`bool`, *optional*, defaults to `False`): - Whether to only load local model weights and configuration files or not. If set to `True`, the model - won't be downloaded from the Hub. - use_auth_token (`str` or *bool*, *optional*): - The token to use as HTTP bearer authorization for remote files. If `True`, the token generated from - `diffusers-cli login` (stored in `~/.huggingface`) is used. - revision (`str`, *optional*, defaults to `"main"`): - The specific model version to use. It can be a branch name, a tag name, a commit id, or any identifier - allowed by Git. - from_flax (`bool`, *optional*, defaults to `False`): - Load the model weights from a Flax checkpoint save file. - subfolder (`str`, *optional*, defaults to `""`): - The subfolder location of a model file within a larger model repository on the Hub or locally. - mirror (`str`, *optional*): - Mirror source to resolve accessibility issues if you're downloading a model in China. We do not - guarantee the timeliness or safety of the source, and you should refer to the mirror site for more - information. - device_map (`str` or `Dict[str, Union[int, str, torch.device]]`, *optional*): - A map that specifies where each submodule should go. It doesn't need to be defined for each - parameter/buffer name; once a given module name is inside, every submodule of it will be sent to the - same device. - - Set `device_map="auto"` to have 🤗 Accelerate automatically compute the most optimized `device_map`. For - more information about each option see [designing a device - map](https://hf.co/docs/accelerate/main/en/usage_guides/big_modeling#designing-a-device-map). - max_memory (`Dict`, *optional*): - A dictionary device identifier for the maximum memory. Will default to the maximum memory available for - each GPU and the available CPU RAM if unset. - offload_folder (`str` or `os.PathLike`, *optional*): - The path to offload weights if `device_map` contains the value `"disk"`. - offload_state_dict (`bool`, *optional*): - If `True`, temporarily offloads the CPU state dict to the hard drive to avoid running out of CPU RAM if - the weight of the CPU state dict + the biggest shard of the checkpoint does not fit. Defaults to `True` - when there is some disk offload. - low_cpu_mem_usage (`bool`, *optional*, defaults to `True` if torch version >= 1.9.0 else `False`): - Speed up model loading only loading the pretrained weights and not initializing the weights. This also - tries to not use more than 1x model size in CPU memory (including peak memory) while loading the model. - Only supported for PyTorch >= 1.9.0. If you are using an older version of PyTorch, setting this - argument to `True` will raise an error. - variant (`str`, *optional*): - Load weights from a specified `variant` filename such as `"fp16"` or `"ema"`. This is ignored when - loading `from_flax`. - use_safetensors (`bool`, *optional*, defaults to `None`): - If set to `None`, the `safetensors` weights are downloaded if they're available **and** if the - `safetensors` library is installed. If set to `True`, the model is forcibly loaded from `safetensors` - weights. If set to `False`, `safetensors` weights are not loaded. - - - - To use private or [gated models](https://huggingface.co/docs/hub/models-gated#gated-models), log-in with - `huggingface-cli login`. You can also activate the special - ["offline-mode"](https://huggingface.co/diffusers/installation.html#offline-mode) to use this method in a - firewalled environment. - - - - Example: - - ```py - from diffusers import UNet2DConditionModel - - unet = UNet2DConditionModel.from_pretrained("runwayml/stable-diffusion-v1-5", subfolder="unet") - ``` - - If you get the error message below, you need to finetune the weights for your downstream task: - - ```bash - Some weights of UNet2DConditionModel were not initialized from the model checkpoint at runwayml/stable-diffusion-v1-5 and are newly initialized because the shapes did not match: - - conv_in.weight: found shape torch.Size([320, 4, 3, 3]) in the checkpoint and torch.Size([320, 9, 3, 3]) in the model instantiated - You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference. - ``` - """ - cache_dir = kwargs.pop("cache_dir", HUGGINGFACE_HUB_CACHE) - ignore_mismatched_sizes = kwargs.pop("ignore_mismatched_sizes", False) - force_download = kwargs.pop("force_download", False) - from_flax = kwargs.pop("from_flax", False) - resume_download = kwargs.pop("resume_download", False) - proxies = kwargs.pop("proxies", None) - output_loading_info = kwargs.pop("output_loading_info", False) - local_files_only = kwargs.pop("local_files_only", HF_HUB_OFFLINE) - use_auth_token = kwargs.pop("use_auth_token", None) - revision = kwargs.pop("revision", None) - torch_dtype = kwargs.pop("torch_dtype", None) - subfolder = kwargs.pop("subfolder", None) - device_map = kwargs.pop("device_map", None) - max_memory = kwargs.pop("max_memory", None) - offload_folder = kwargs.pop("offload_folder", None) - offload_state_dict = kwargs.pop("offload_state_dict", False) - variant = kwargs.pop("variant", None) - use_safetensors = kwargs.pop("use_safetensors", None) - - allow_pickle = False - if use_safetensors is None: - use_safetensors = True - allow_pickle = True - - if device_map is not None and not is_accelerate_available(): - raise NotImplementedError( - "Loading and dispatching requires `accelerate`. Please make sure to install accelerate or set" - " `device_map=None`. You can install accelerate with `pip install accelerate`." - ) - - # Check if we can handle device_map and dispatching the weights - if device_map is not None and not is_torch_version(">=", "1.9.0"): - raise NotImplementedError( - "Loading and dispatching requires torch >= 1.9.0. Please either update your PyTorch version or set" - " `device_map=None`." - ) - - # Load config if we don't provide a configuration - config_path = pretrained_model_name_or_path - - user_agent = { - "diffusers": __version__, - "file_type": "model", - "framework": "pytorch", - } - - # load config - config, unused_kwargs, commit_hash = cls.load_config( - config_path, - cache_dir=cache_dir, - return_unused_kwargs=True, - return_commit_hash=True, - force_download=force_download, - resume_download=resume_download, - proxies=proxies, - local_files_only=local_files_only, - use_auth_token=use_auth_token, - revision=revision, - subfolder=subfolder, - device_map=device_map, - max_memory=max_memory, - offload_folder=offload_folder, - offload_state_dict=offload_state_dict, - user_agent=user_agent, - **kwargs, - ) - - # modify config - config["_class_name"] = cls.__name__ - config['in_channels'] = in_channels - config['out_channels'] = out_channels - config['sample_size'] = sample_size # training resolution - config['num_views'] = num_views - config['cd_attention_last'] = cd_attention_last - config['cd_attention_mid'] = cd_attention_mid - config['multiview_attention'] = multiview_attention - config['sparse_mv_attention'] = sparse_mv_attention - config['mvcd_attention'] = mvcd_attention - config["down_block_types"] = [ - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "CrossAttnDownBlockMV2D", - "DownBlock2D" - ] - config['mid_block_type'] = "UNetMidBlockMV2DCrossAttn" - config["up_block_types"] = [ - "UpBlock2D", - "CrossAttnUpBlockMV2D", - "CrossAttnUpBlockMV2D", - "CrossAttnUpBlockMV2D" - ] - config['class_embed_type'] = 'projection' - if camera_embedding_type == 'e_de_da_sincos': - config['projection_class_embeddings_input_dim'] = projection_class_embeddings_input_dim # default 6 - else: - raise NotImplementedError - - # load model - model_file = None - if from_flax: - raise NotImplementedError - else: - if use_safetensors: - try: - model_file = _get_model_file( - pretrained_model_name_or_path, - weights_name=_add_variant(SAFETENSORS_WEIGHTS_NAME, variant), - cache_dir=cache_dir, - force_download=force_download, - resume_download=resume_download, - proxies=proxies, - local_files_only=local_files_only, - use_auth_token=use_auth_token, - revision=revision, - subfolder=subfolder, - user_agent=user_agent, - commit_hash=commit_hash, - ) - except IOError as e: - if not allow_pickle: - raise e - pass - if model_file is None: - model_file = _get_model_file( - pretrained_model_name_or_path, - weights_name=_add_variant(WEIGHTS_NAME, variant), - cache_dir=cache_dir, - force_download=force_download, - resume_download=resume_download, - proxies=proxies, - local_files_only=local_files_only, - use_auth_token=use_auth_token, - revision=revision, - subfolder=subfolder, - user_agent=user_agent, - commit_hash=commit_hash, - ) - - model = cls.from_config(config, **unused_kwargs) - import copy - state_dict_v0 = load_state_dict(model_file, variant=variant) - state_dict = copy.deepcopy(state_dict_v0) - # attn_joint -> attn_joint_last; norm_joint -> norm_joint_last - # attn_joint_twice -> attn_joint_mid; norm_joint_twice -> norm_joint_mid - for key in state_dict_v0: - if 'attn_joint.' in key: - tmp = copy.deepcopy(key) - state_dict[key.replace("attn_joint.", "attn_joint_last.")] = state_dict.pop(tmp) - if 'norm_joint.' in key: - tmp = copy.deepcopy(key) - state_dict[key.replace("norm_joint.", "norm_joint_last.")] = state_dict.pop(tmp) - if 'attn_joint_twice.' in key: - tmp = copy.deepcopy(key) - state_dict[key.replace("attn_joint_twice.", "attn_joint_mid.")] = state_dict.pop(tmp) - if 'norm_joint_twice.' in key: - tmp = copy.deepcopy(key) - state_dict[key.replace("norm_joint_twice.", "norm_joint_mid.")] = state_dict.pop(tmp) - - model._convert_deprecated_attention_blocks(state_dict) - - conv_in_weight = state_dict['conv_in.weight'] - conv_out_weight = state_dict['conv_out.weight'] - model, missing_keys, unexpected_keys, mismatched_keys, error_msgs = cls._load_pretrained_model_2d( - model, - state_dict, - model_file, - pretrained_model_name_or_path, - ignore_mismatched_sizes=True, - ) - if any([key == 'conv_in.weight' for key, _, _ in mismatched_keys]): - # initialize from the original SD structure - model.conv_in.weight.data[:,:4] = conv_in_weight - - # whether to place all zero to new layers? - if zero_init_conv_in: - model.conv_in.weight.data[:,4:] = 0. - - if any([key == 'conv_out.weight' for key, _, _ in mismatched_keys]): - # initialize from the original SD structure - model.conv_out.weight.data[:,:4] = conv_out_weight - if out_channels == 8: # copy for the last 4 channels - model.conv_out.weight.data[:, 4:] = conv_out_weight - - if zero_init_camera_projection: - for p in model.class_embedding.parameters(): - torch.nn.init.zeros_(p) - - loading_info = { - "missing_keys": missing_keys, - "unexpected_keys": unexpected_keys, - "mismatched_keys": mismatched_keys, - "error_msgs": error_msgs, - } - - if torch_dtype is not None and not isinstance(torch_dtype, torch.dtype): - raise ValueError( - f"{torch_dtype} needs to be of type `torch.dtype`, e.g. `torch.float16`, but is {type(torch_dtype)}." - ) - elif torch_dtype is not None: - model = model.to(torch_dtype) - - model.register_to_config(_name_or_path=pretrained_model_name_or_path) - - # Set model in evaluation mode to deactivate DropOut modules by default - model.eval() - if output_loading_info: - return model, loading_info - - return model - - @classmethod - def _load_pretrained_model_2d( - cls, - model, - state_dict, - resolved_archive_file, - pretrained_model_name_or_path, - ignore_mismatched_sizes=False, - ): - # Retrieve missing & unexpected_keys - model_state_dict = model.state_dict() - loaded_keys = list(state_dict.keys()) - - expected_keys = list(model_state_dict.keys()) - - original_loaded_keys = loaded_keys - - missing_keys = list(set(expected_keys) - set(loaded_keys)) - unexpected_keys = list(set(loaded_keys) - set(expected_keys)) - - # Make sure we are able to load base models as well as derived models (with heads) - model_to_load = model - - def _find_mismatched_keys( - state_dict, - model_state_dict, - loaded_keys, - ignore_mismatched_sizes, - ): - mismatched_keys = [] - if ignore_mismatched_sizes: - for checkpoint_key in loaded_keys: - model_key = checkpoint_key - - if ( - model_key in model_state_dict - and state_dict[checkpoint_key].shape != model_state_dict[model_key].shape - ): - mismatched_keys.append( - (checkpoint_key, state_dict[checkpoint_key].shape, model_state_dict[model_key].shape) - ) - del state_dict[checkpoint_key] - return mismatched_keys - - if state_dict is not None: - # Whole checkpoint - mismatched_keys = _find_mismatched_keys( - state_dict, - model_state_dict, - original_loaded_keys, - ignore_mismatched_sizes, - ) - error_msgs = _load_state_dict_into_model(model_to_load, state_dict) - - if len(error_msgs) > 0: - error_msg = "\n\t".join(error_msgs) - if "size mismatch" in error_msg: - error_msg += ( - "\n\tYou may consider adding `ignore_mismatched_sizes=True` in the model `from_pretrained` method." - ) - raise RuntimeError(f"Error(s) in loading state_dict for {model.__class__.__name__}:\n\t{error_msg}") - - if len(unexpected_keys) > 0: - logger.warning( - f"Some weights of the model checkpoint at {pretrained_model_name_or_path} were not used when" - f" initializing {model.__class__.__name__}: {unexpected_keys}\n- This IS expected if you are" - f" initializing {model.__class__.__name__} from the checkpoint of a model trained on another task" - " or with another architecture (e.g. initializing a BertForSequenceClassification model from a" - " BertForPreTraining model).\n- This IS NOT expected if you are initializing" - f" {model.__class__.__name__} from the checkpoint of a model that you expect to be exactly" - " identical (initializing a BertForSequenceClassification model from a" - " BertForSequenceClassification model)." - ) - else: - logger.info(f"All model checkpoint weights were used when initializing {model.__class__.__name__}.\n") - if len(missing_keys) > 0: - logger.warning( - f"Some weights of {model.__class__.__name__} were not initialized from the model checkpoint at" - f" {pretrained_model_name_or_path} and are newly initialized: {missing_keys}\nYou should probably" - " TRAIN this model on a down-stream task to be able to use it for predictions and inference." - ) - elif len(mismatched_keys) == 0: - logger.info( - f"All the weights of {model.__class__.__name__} were initialized from the model checkpoint at" - f" {pretrained_model_name_or_path}.\nIf your task is similar to the task the model of the" - f" checkpoint was trained on, you can already use {model.__class__.__name__} for predictions" - " without further training." - ) - if len(mismatched_keys) > 0: - mismatched_warning = "\n".join( - [ - f"- {key}: found shape {shape1} in the checkpoint and {shape2} in the model instantiated" - for key, shape1, shape2 in mismatched_keys - ] - ) - logger.warning( - f"Some weights of {model.__class__.__name__} were not initialized from the model checkpoint at" - f" {pretrained_model_name_or_path} and are newly initialized because the shapes did not" - f" match:\n{mismatched_warning}\nYou should probably TRAIN this model on a down-stream task to be" - " able to use it for predictions and inference." - ) - - return model, missing_keys, unexpected_keys, mismatched_keys, error_msgs - diff --git a/mvdiffusion/pipelines/pipeline_mvdiffusion_image.py b/mvdiffusion/pipelines/pipeline_mvdiffusion_image.py deleted file mode 100644 index 84a5b3c..0000000 --- a/mvdiffusion/pipelines/pipeline_mvdiffusion_image.py +++ /dev/null @@ -1,517 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import inspect -import warnings -from typing import Callable, List, Optional, Union - -import PIL -import torch -import torchvision.transforms.functional as TF -from packaging import version -from transformers import CLIPImageProcessor, CLIPVisionModelWithProjection - -from diffusers.configuration_utils import FrozenDict -from diffusers.image_processor import VaeImageProcessor -from diffusers.models import AutoencoderKL, UNet2DConditionModel -from diffusers.schedulers import KarrasDiffusionSchedulers -from diffusers.utils import deprecate, logging -from diffusers.utils.torch_utils import randn_tensor -from diffusers.pipelines.pipeline_utils import DiffusionPipeline -from diffusers.pipelines.stable_diffusion import StableDiffusionPipelineOutput -from diffusers.pipelines.stable_diffusion.safety_checker import StableDiffusionSafetyChecker -from einops import rearrange, repeat - -import comfy.utils - -logger = logging.get_logger(__name__) # pylint: disable=invalid-name - - -class MVDiffusionImagePipeline(DiffusionPipeline): - r""" - Pipeline to generate image variations from an input image using Stable Diffusion. - - This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods - implemented for all pipelines (downloading, saving, running on a particular device, etc.). - - Args: - vae ([`AutoencoderKL`]): - Variational Auto-Encoder (VAE) model to encode and decode images to and from latent representations. - image_encoder ([`~transformers.CLIPVisionModelWithProjection`]): - Frozen CLIP image-encoder ([clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14)). - text_encoder ([`~transformers.CLIPTextModel`]): - Frozen text-encoder ([clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14)). - tokenizer ([`~transformers.CLIPTokenizer`]): - A `CLIPTokenizer` to tokenize text. - unet ([`UNet2DConditionModel`]): - A `UNet2DConditionModel` to denoise the encoded image latents. - scheduler ([`SchedulerMixin`]): - A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of - [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`]. - safety_checker ([`StableDiffusionSafetyChecker`]): - Classification module that estimates whether generated images could be considered offensive or harmful. - Please refer to the [model card](https://huggingface.co/runwayml/stable-diffusion-v1-5) for more details - about a model's potential harms. - feature_extractor ([`~transformers.CLIPImageProcessor`]): - A `CLIPImageProcessor` to extract features from generated images; used as inputs to the `safety_checker`. - """ - # TODO: feature_extractor is required to encode images (if they are in PIL format), - # we should give a descriptive message if the pipeline doesn't have one. - _optional_components = ["safety_checker"] - - def __init__( - self, - vae: AutoencoderKL, - image_encoder: CLIPVisionModelWithProjection, - unet: UNet2DConditionModel, - scheduler: KarrasDiffusionSchedulers, - safety_checker: StableDiffusionSafetyChecker, - feature_extractor: CLIPImageProcessor, - requires_safety_checker: bool = False, - camera_embedding_type: str = 'e_de_da_sincos', - num_views: int = 6 - ): - super().__init__() - - if safety_checker is None and requires_safety_checker: - logger.warn( - f"You have disabled the safety checker for {self.__class__} by passing `safety_checker=None`. Ensure" - " that you abide to the conditions of the Stable Diffusion license and do not expose unfiltered" - " results in services or applications open to the public. Both the diffusers team and Hugging Face" - " strongly recommend to keep the safety filter enabled in all public facing circumstances, disabling" - " it only for use-cases that involve analyzing network behavior or auditing its results. For more" - " information, please have a look at https://github.com/huggingface/diffusers/pull/254 ." - ) - - if safety_checker is not None and feature_extractor is None: - raise ValueError( - "Make sure to define a feature extractor when loading {self.__class__} if you want to use the safety" - " checker. If you do not want to use the safety checker, you can pass `'safety_checker=None'` instead." - ) - - is_unet_version_less_0_9_0 = hasattr(unet.config, "_diffusers_version") and version.parse( - version.parse(unet.config._diffusers_version).base_version - ) < version.parse("0.9.0.dev0") - is_unet_sample_size_less_64 = hasattr(unet.config, "sample_size") and unet.config.sample_size < 64 - if is_unet_version_less_0_9_0 and is_unet_sample_size_less_64: - deprecation_message = ( - "The configuration file of the unet has set the default `sample_size` to smaller than" - " 64 which seems highly unlikely .If you're checkpoint is a fine-tuned version of any of the" - " following: \n- CompVis/stable-diffusion-v1-4 \n- CompVis/stable-diffusion-v1-3 \n-" - " CompVis/stable-diffusion-v1-2 \n- CompVis/stable-diffusion-v1-1 \n- runwayml/stable-diffusion-v1-5" - " \n- runwayml/stable-diffusion-inpainting \n you should change 'sample_size' to 64 in the" - " configuration file. Please make sure to update the config accordingly as leaving `sample_size=32`" - " in the config might lead to incorrect results in future versions. If you have downloaded this" - " checkpoint from the Hugging Face Hub, it would be very nice if you could open a Pull request for" - " the `unet/config.json` file" - ) - deprecate("sample_size<64", "1.0.0", deprecation_message, standard_warn=False) - new_config = dict(unet.config) - new_config["sample_size"] = 64 - unet._internal_dict = FrozenDict(new_config) - - self.register_modules( - vae=vae, - image_encoder=image_encoder, - unet=unet, - scheduler=scheduler, - safety_checker=safety_checker, - feature_extractor=feature_extractor, - ) - self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1) - self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor) - self.register_to_config(requires_safety_checker=requires_safety_checker) - - self.camera_embedding_type: str = camera_embedding_type - self.num_views: int = num_views - - self.camera_embedding = torch.tensor( - [[ 0.0000, 0.0000, 0.0000, 1.0000, 0.0000], - [ 0.0000, -0.2362, 0.8125, 1.0000, 0.0000], - [ 0.0000, -0.1686, 1.6934, 1.0000, 0.0000], - [ 0.0000, 0.5220, 3.1406, 1.0000, 0.0000], - [ 0.0000, 0.6904, 4.8359, 1.0000, 0.0000], - [ 0.0000, 0.3733, 5.5859, 1.0000, 0.0000], - [ 0.0000, 0.0000, 0.0000, 0.0000, 1.0000], - [ 0.0000, -0.2362, 0.8125, 0.0000, 1.0000], - [ 0.0000, -0.1686, 1.6934, 0.0000, 1.0000], - [ 0.0000, 0.5220, 3.1406, 0.0000, 1.0000], - [ 0.0000, 0.6904, 4.8359, 0.0000, 1.0000], - [ 0.0000, 0.3733, 5.5859, 0.0000, 1.0000]], dtype=torch.float16) - - def _encode_image(self, image_pil, device, num_images_per_prompt, do_classifier_free_guidance): - dtype = next(self.image_encoder.parameters()).dtype - - image_pt = self.feature_extractor(images=image_pil, return_tensors="pt").pixel_values - image_pt = image_pt.to(device=device, dtype=dtype) - image_embeddings = self.image_encoder(image_pt).image_embeds - image_embeddings = image_embeddings.unsqueeze(1) - - # duplicate image embeddings for each generation per prompt, using mps friendly method - # Note: repeat differently from official pipelines - # B1B2B3B4 -> B1B2B3B4B1B2B3B4 - bs_embed, seq_len, _ = image_embeddings.shape - image_embeddings = image_embeddings.repeat(num_images_per_prompt, 1, 1) - - if do_classifier_free_guidance: - negative_prompt_embeds = torch.zeros_like(image_embeddings) - - # For classifier free guidance, we need to do two forward passes. - # Here we concatenate the unconditional and text embeddings into a single batch - # to avoid doing two forward passes - image_embeddings = torch.cat([negative_prompt_embeds, image_embeddings]) - - image_pt = torch.stack([TF.to_tensor(img) for img in image_pil], dim=0).to(device).to(dtype) - image_pt = image_pt * 2.0 - 1.0 - image_latents = self.vae.encode(image_pt).latent_dist.mode() * self.vae.config.scaling_factor - # Note: repeat differently from official pipelines - # B1B2B3B4 -> B1B2B3B4B1B2B3B4 - image_latents = image_latents.repeat(num_images_per_prompt, 1, 1, 1) - - if do_classifier_free_guidance: - image_latents = torch.cat([torch.zeros_like(image_latents), image_latents]) - - return image_embeddings, image_latents - - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.run_safety_checker - def run_safety_checker(self, image, device, dtype): - if self.safety_checker is None: - has_nsfw_concept = None - else: - if torch.is_tensor(image): - feature_extractor_input = self.image_processor.postprocess(image, output_type="pil") - else: - feature_extractor_input = self.image_processor.numpy_to_pil(image) - safety_checker_input = self.feature_extractor(feature_extractor_input, return_tensors="pt").to(device) - image, has_nsfw_concept = self.safety_checker( - images=image, clip_input=safety_checker_input.pixel_values.to(dtype) - ) - return image, has_nsfw_concept - - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.decode_latents - def decode_latents(self, latents): - warnings.warn( - "The decode_latents method is deprecated and will be removed in a future version. Please" - " use VaeImageProcessor instead", - FutureWarning, - ) - latents = 1 / self.vae.config.scaling_factor * latents - image = self.vae.decode(latents, return_dict=False)[0] - image = (image / 2 + 0.5).clamp(0, 1) - # we always cast to float32 as this does not cause significant overhead and is compatible with bfloat16 - image = image.cpu().permute(0, 2, 3, 1).float().numpy() - return image - - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs - def prepare_extra_step_kwargs(self, generator, eta): - # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature - # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers. - # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502 - # and should be between [0, 1] - - accepts_eta = "eta" in set(inspect.signature(self.scheduler.step).parameters.keys()) - extra_step_kwargs = {} - if accepts_eta: - extra_step_kwargs["eta"] = eta - - # check if the scheduler accepts generator - accepts_generator = "generator" in set(inspect.signature(self.scheduler.step).parameters.keys()) - if accepts_generator: - extra_step_kwargs["generator"] = generator - return extra_step_kwargs - - def check_inputs(self, image, height, width, callback_steps): - if ( - not isinstance(image, torch.Tensor) - and not isinstance(image, PIL.Image.Image) - and not isinstance(image, list) - ): - raise ValueError( - "`image` has to be of type `torch.FloatTensor` or `PIL.Image.Image` or `List[PIL.Image.Image]` but is" - f" {type(image)}" - ) - - if height % 8 != 0 or width % 8 != 0: - raise ValueError(f"`height` and `width` have to be divisible by 8 but are {height} and {width}.") - - if (callback_steps is None) or ( - callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0) - ): - raise ValueError( - f"`callback_steps` has to be a positive integer but is {callback_steps} of type" - f" {type(callback_steps)}." - ) - - # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents - def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None): - shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor) - if isinstance(generator, list) and len(generator) != batch_size: - raise ValueError( - f"You have passed a list of generators of length {len(generator)}, but requested an effective batch" - f" size of {batch_size}. Make sure the batch size matches the length of the generators." - ) - - if latents is None: - latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype) - else: - latents = latents.to(device) - - # scale the initial noise by the standard deviation required by the scheduler - latents = latents * self.scheduler.init_noise_sigma - return latents - - def prepare_camera_embedding(self, camera_embedding: Union[float, torch.Tensor], do_classifier_free_guidance, num_images_per_prompt=1): - # (B, 3) - camera_embedding = camera_embedding.to(dtype=self.unet.dtype, device=self.unet.device) - - if self.camera_embedding_type == 'e_de_da_sincos': - # (B, 6) - camera_embedding = torch.cat([ - torch.sin(camera_embedding), - torch.cos(camera_embedding) - ], dim=-1) - assert self.unet.config.class_embed_type == 'projection' - assert self.unet.config.projection_class_embeddings_input_dim == 6 or self.unet.config.projection_class_embeddings_input_dim == 10 - else: - raise NotImplementedError - - # Note: repeat differently from official pipelines - # B1B2B3B4 -> B1B2B3B4B1B2B3B4 - camera_embedding = camera_embedding.repeat(num_images_per_prompt, 1) - - if do_classifier_free_guidance: - camera_embedding = torch.cat([ - camera_embedding, - camera_embedding - ], dim=0) - - return camera_embedding - - @torch.no_grad() - def __call__( - self, - image: Union[List[PIL.Image.Image], torch.FloatTensor], - # elevation_cond: torch.FloatTensor, - # elevation: torch.FloatTensor, - # azimuth: torch.FloatTensor, - camera_embedding: Optional[torch.FloatTensor]=None, - height: Optional[int] = None, - width: Optional[int] = None, - num_inference_steps: int = 50, - guidance_scale: float = 7.5, - num_images_per_prompt: Optional[int] = 1, - eta: float = 0.0, - generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None, - latents: Optional[torch.FloatTensor] = None, - output_type: Optional[str] = "pil", - return_dict: bool = True, - callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None, - callback_steps: int = 1, - normal_cond: Optional[Union[List[PIL.Image.Image], torch.FloatTensor]] = None, - ): - r""" - The call function to the pipeline for generation. - - Args: - image (`PIL.Image.Image` or `List[PIL.Image.Image]` or `torch.FloatTensor`): - Image or images to guide image generation. If you provide a tensor, it needs to be compatible with - [`CLIPImageProcessor`](https://huggingface.co/lambdalabs/sd-image-variations-diffusers/blob/main/feature_extractor/preprocessor_config.json). - height (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`): - The height in pixels of the generated image. - width (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`): - The width in pixels of the generated image. - num_inference_steps (`int`, *optional*, defaults to 50): - The number of denoising steps. More denoising steps usually lead to a higher quality image at the - expense of slower inference. This parameter is modulated by `strength`. - guidance_scale (`float`, *optional*, defaults to 7.5): - A higher guidance scale value encourages the model to generate images closely linked to the text - `prompt` at the expense of lower image quality. Guidance scale is enabled when `guidance_scale > 1`. - num_images_per_prompt (`int`, *optional*, defaults to 1): - The number of images to generate per prompt. - eta (`float`, *optional*, defaults to 0.0): - Corresponds to parameter eta (η) from the [DDIM](https://arxiv.org/abs/2010.02502) paper. Only applies - to the [`~schedulers.DDIMScheduler`], and is ignored in other schedulers. - generator (`torch.Generator` or `List[torch.Generator]`, *optional*): - A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make - generation deterministic. - latents (`torch.FloatTensor`, *optional*): - Pre-generated noisy latents sampled from a Gaussian distribution, to be used as inputs for image - generation. Can be used to tweak the same generation with different prompts. If not provided, a latents - tensor is generated by sampling using the supplied random `generator`. - output_type (`str`, *optional*, defaults to `"pil"`): - The output format of the generated image. Choose between `PIL.Image` or `np.array`. - return_dict (`bool`, *optional*, defaults to `True`): - Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a - plain tuple. - callback (`Callable`, *optional*): - A function that calls every `callback_steps` steps during inference. The function is called with the - following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`. - callback_steps (`int`, *optional*, defaults to 1): - The frequency at which the `callback` function is called. If not specified, the callback is called at - every step. - - Returns: - [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] or `tuple`: - If `return_dict` is `True`, [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] is returned, - otherwise a `tuple` is returned where the first element is a list with the generated images and the - second element is a list of `bool`s indicating whether the corresponding generated image contains - "not-safe-for-work" (nsfw) content. - - Examples: - - ```py - from diffusers import StableDiffusionImageVariationPipeline - from PIL import Image - from io import BytesIO - import requests - - pipe = StableDiffusionImageVariationPipeline.from_pretrained( - "lambdalabs/sd-image-variations-diffusers", revision="v2.0" - ) - pipe = pipe.to("cuda") - - url = "https://lh3.googleusercontent.com/y-iFOHfLTwkuQSUegpwDdgKmOjRSTvPxat63dQLB25xkTs4lhIbRUFeNBWZzYf370g=s1200" - - response = requests.get(url) - image = Image.open(BytesIO(response.content)).convert("RGB") - - out = pipe(image, num_images_per_prompt=3, guidance_scale=15) - out["images"][0].save("result.jpg") - ``` - """ - # 0. Default height and width to unet - height = height or self.unet.config.sample_size * self.vae_scale_factor - width = width or self.unet.config.sample_size * self.vae_scale_factor - - # 1. Check inputs. Raise error if not correct - self.check_inputs(image, height, width, callback_steps) - - - # 2. Define call parameters - if isinstance(image, list): - batch_size = len(image) - elif isinstance(image, torch.Tensor): - batch_size = image.shape[0] - assert batch_size >= self.num_views and batch_size % self.num_views == 0 - elif isinstance(image, PIL.Image.Image): - image = [image]*self.num_views*2 - batch_size = self.num_views*2 - - device = self._execution_device - dtype = self.vae.dtype - # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2) - # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1` - # corresponds to doing no classifier free guidance. - do_classifier_free_guidance = guidance_scale != 1.0 - - # 3. Encode input image - if isinstance(image, list): - image_pil = image - elif isinstance(image, torch.Tensor): - image_pil = [TF.to_pil_image(image[i]) for i in range(image.shape[0])] - image_embeddings, image_latents = self._encode_image(image_pil, device, num_images_per_prompt, do_classifier_free_guidance) - - if normal_cond is not None: - if isinstance(normal_cond, list): - normal_cond_pil = normal_cond - elif isinstance(normal_cond, torch.Tensor): - normal_cond_pil = [TF.to_pil_image(normal_cond[i]) for i in range(normal_cond.shape[0])] - _, image_latents = self._encode_image(normal_cond_pil, device, num_images_per_prompt, do_classifier_free_guidance) - - - # assert len(elevation_cond) == batch_size and len(elevation) == batch_size and len(azimuth) == batch_size - # camera_embeddings = self.prepare_camera_condition(elevation_cond, elevation, azimuth, do_classifier_free_guidance=do_classifier_free_guidance, num_images_per_prompt=num_images_per_prompt) - - if camera_embedding is not None: - assert len(camera_embedding) == batch_size - else: - camera_embedding = self.camera_embedding.to(dtype) - camera_embedding = repeat(camera_embedding, "Nv Nce -> (B Nv) Nce", B=batch_size//len(camera_embedding)) - camera_embeddings = self.prepare_camera_embedding(camera_embedding, do_classifier_free_guidance=do_classifier_free_guidance, num_images_per_prompt=num_images_per_prompt) - - # 4. Prepare timesteps - self.scheduler.set_timesteps(num_inference_steps, device=device) - timesteps = self.scheduler.timesteps - - # 5. Prepare latent variables - num_channels_latents = self.unet.config.out_channels - latents = self.prepare_latents( - batch_size * num_images_per_prompt, - num_channels_latents, - height, - width, - image_embeddings.dtype, - device, - generator, - latents, - ) - - # 6. Prepare extra step kwargs. TODO: Logic should ideally just be moved out of the pipeline - extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta) - - # 7. Denoising loop - timesteps_len = len(timesteps) - comfy_pbar = comfy.utils.ProgressBar(timesteps_len) - - num_warmup_steps = timesteps_len - num_inference_steps * self.scheduler.order - with self.progress_bar(total=num_inference_steps) as progress_bar: - for i, t in enumerate(timesteps): - # expand the latents if we are doing classifier free guidance - latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents - latent_model_input = torch.cat([ - latent_model_input, image_latents - ], dim=1) - latent_model_input = self.scheduler.scale_model_input(latent_model_input, t) - - # predict the noise residual - noise_pred = self.unet(latent_model_input, t, encoder_hidden_states=image_embeddings, class_labels=camera_embeddings).sample - - # perform guidance - if do_classifier_free_guidance: - noise_pred_uncond, noise_pred_text = noise_pred.chunk(2) - noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond) - - # compute the previous noisy sample x_t -> x_t-1 - latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs).prev_sample - - # call the callback, if provided - if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0): - progress_bar.update() - if callback is not None and i % callback_steps == 0: - callback(i, t, latents) - - comfy_pbar.update_absolute(i + 1) - - if not output_type == "latent": - if num_channels_latents == 8: - latents = torch.cat([latents[:, :4], latents[:, 4:]], dim=0) - - image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0] - image, has_nsfw_concept = self.run_safety_checker(image, device, image_embeddings.dtype) - else: - image = latents - has_nsfw_concept = None - - if has_nsfw_concept is None: - do_denormalize = [True] * image.shape[0] - else: - do_denormalize = [not has_nsfw for has_nsfw in has_nsfw_concept] - - image = self.image_processor.postprocess(image, output_type=output_type, do_denormalize=do_denormalize) - - if not return_dict: - return (image, has_nsfw_concept) - - return StableDiffusionPipelineOutput(images=image, nsfw_content_detected=has_nsfw_concept) - diff --git a/mvdiffusion/utils/misc.py b/mvdiffusion/utils/misc.py deleted file mode 100644 index 61d93e9..0000000 --- a/mvdiffusion/utils/misc.py +++ /dev/null @@ -1,86 +0,0 @@ -import os -from omegaconf import OmegaConf -from packaging import version -from typing import Dict, Optional, Tuple, List -from dataclasses import dataclass - - -# ============ Register OmegaConf Recolvers ============= # -OmegaConf.register_new_resolver('calc_exp_lr_decay_rate', lambda factor, n: factor**(1./n), replace=True) -OmegaConf.register_new_resolver('add', lambda a, b: a + b, replace=True) -OmegaConf.register_new_resolver('sub', lambda a, b: a - b, replace=True) -OmegaConf.register_new_resolver('mul', lambda a, b: a * b, replace=True) -OmegaConf.register_new_resolver('div', lambda a, b: a / b, replace=True) -OmegaConf.register_new_resolver('idiv', lambda a, b: a // b, replace=True) -OmegaConf.register_new_resolver('basename', lambda p: os.path.basename(p), replace=True) -# ======================================================= # - - -def prompt(question): - inp = input(f"{question} (y/n)").lower().strip() - if inp and inp == 'y': - return True - if inp and inp == 'n': - return False - return prompt(question) - -@dataclass -class MVConfig: - pretrained_unet_path: str - revision: Optional[str] - validation_dataset: Dict - save_dir: str - seed: Optional[int] - validation_batch_size: int - dataloader_num_workers: int - - local_rank: int - - pipe_kwargs: Dict - pipe_validation_kwargs: Dict - unet_from_pretrained_kwargs: Dict - validation_guidance_scales: List[float] - validation_grid_nrow: int - camera_embedding_lr_mult: float - - num_views: int - camera_embedding_type: str - - pred_type: str # joint, or ablation - - enable_xformers_memory_efficient_attention: bool - - cond_on_normals: bool - cond_on_colors: bool - -def load_config(*yaml_files, cli_args=[]): - yaml_confs = [OmegaConf.load(f) for f in yaml_files] - cli_conf = OmegaConf.from_cli(cli_args) - conf = OmegaConf.merge(*yaml_confs, cli_conf) - OmegaConf.resolve(conf) - - schema = OmegaConf.structured(MVConfig) - conf = OmegaConf.merge(schema, conf) - return conf - -def config_to_primitive(config, resolve=True): - return OmegaConf.to_container(config, resolve=resolve) - - -def dump_config(path, config): - with open(path, 'w') as fp: - OmegaConf.save(config=config, f=fp) - -def get_rank(): - # SLURM_PROCID can be set even if SLURM is not managing the multiprocessing, - # therefore LOCAL_RANK needs to be checked first - rank_keys = ("RANK", "LOCAL_RANK", "SLURM_PROCID", "JSM_NAMESPACE_RANK") - for key in rank_keys: - rank = os.environ.get(key) - if rank is not None: - return int(rank) - return 0 - - -def parse_version(ver): - return version.parse(ver) diff --git a/nodes.py b/nodes.py index 1641f82..d4a9f74 100644 --- a/nodes.py +++ b/nodes.py @@ -82,7 +82,8 @@ from .shared_utils.image_utils import ( prepare_torch_img, torch_imgs_to_pils, troch_image_dilate, pils_rgba_to_rgb, pil_make_image_grid, pil_split_image, pils_to_torch_imgs, ) -from .shared_utils.common_utils import cstr, parse_save_filename, get_list_filenames, resume_or_download_model_from_hf +from .shared_utils.log_utils import cstr +from .shared_utils.common_utils import parse_save_filename, get_list_filenames, resume_or_download_model_from_hf DIFFUSERS_PIPE_DICT = OrderedDict([ ("MVDreamPipeline", MVDreamPipeline), diff --git a/pyproject.toml b/pyproject.toml index 5c14418..07be153 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,7 +3,7 @@ name = "comfyui-3d-pack" description = "Make ComfyUI generates 3D assets as good & convenient as it generates image/video!" version = "0.0.3" license = "LICENSE" -dependencies = ["cmake", "ninja", "numpy", "einops", "scipy", "kornia", "opencv-python", "pillow", "roma", "nerfacc>=0.5.3", "PyMCubes", "scikit-learn", "diffusers>=0.26.1", "transformers>=4.36.2", "safetensors", "open_clip_torch", "torchmetrics", "pytorch_msssim", "pytorch-lightning", "imageio", "imageio-ffmpeg", "matplotlib", "trimesh", "plyfile", "pygltflib", "xatlas", "pymeshlab", "torchtyping", "tqdm", "jaxtyping", "packaging", "OmegaConf", "pyhocon"] +dependencies = ["cmake", "ninja", "PyGithub", "requests", "numpy", "einops", "scipy", "kornia", "opencv-python", "pillow", "roma", "nerfacc>=0.5.3", "PyMCubes", "diffusers>=0.26.1", "transformers>=4.36.2", "safetensors", "open_clip_torch", "torchmetrics", "pytorch_msssim", "pytorch-lightning", "imageio", "imageio-ffmpeg", "matplotlib", "trimesh", "plyfile", "pygltflib", "xatlas", "pymeshlab", "torchtyping", "tqdm", "jaxtyping", "packaging", "OmegaConf", "pyhocon"] [project.urls] Repository = "https://github.com/MrForExample/ComfyUI-3D-Pack" diff --git a/requirements.txt b/requirements.txt index c764268..0f6fc4e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,11 @@ -# base +# build tools cmake ninja +# web tools +PyGithub +requests + # computational libraries numpy einops @@ -41,4 +45,4 @@ tqdm jaxtyping packaging OmegaConf -pyhocon +pyhocon \ No newline at end of file diff --git a/requirements_post.txt b/requirements_post.txt deleted file mode 100644 index c959d59..0000000 --- a/requirements_post.txt +++ /dev/null @@ -1,11 +0,0 @@ -# local -./_Pre_Builds/_Libs/pointnet2_ops -./_Pre_Builds/_Libs/simple-knn - -# remote -git+https://github.com/ashawkey/diff-gaussian-rasterization -git+https://github.com/NVlabs/nvdiffrast/ -git+https://github.com/facebookresearch/pytorch3d.git@stable -git+https://github.com/rusty1s/pytorch_scatter.git -git+https://github.com/ashawkey/kiuikit.git - diff --git a/requirements_post_win_py310_cu121.txt b/requirements_post_win_py310_cu121.txt deleted file mode 100644 index ccb4b70..0000000 --- a/requirements_post_win_py310_cu121.txt +++ /dev/null @@ -1,7 +0,0 @@ -_Pre_Builds/_Wheels_win_py310_cu121/diff_gaussian_rasterization-0.0.0-cp310-cp310-win_amd64.whl -_Pre_Builds/_Wheels_win_py310_cu121/kiui-0.2.4-py3-none-any.whl -_Pre_Builds/_Wheels_win_py310_cu121/nvdiffrast-0.3.1-py3-none-any.whl -_Pre_Builds/_Wheels_win_py310_cu121/pointnet2_ops-3.0.0-cp310-cp310-win_amd64.whl -_Pre_Builds/_Wheels_win_py310_cu121/pytorch3d-0.7.6-cp310-cp310-win_amd64.whl -_Pre_Builds/_Wheels_win_py310_cu121/simple_knn-0.0.0-cp310-cp310-win_amd64.whl -_Pre_Builds/_Wheels_win_py310_cu121/torch_scatter-2.1.2-cp310-cp310-win_amd64.whl \ No newline at end of file diff --git a/requirements_post_win_py311_cu121.txt b/requirements_post_win_py311_cu121.txt deleted file mode 100644 index fa73cf9..0000000 --- a/requirements_post_win_py311_cu121.txt +++ /dev/null @@ -1,7 +0,0 @@ -_Pre_Builds/_Wheels_win_py311_cu121/diff_gaussian_rasterization-0.0.0-cp311-cp311-win_amd64.whl -_Pre_Builds/_Wheels_win_py311_cu121/kiui-0.2.4-py3-none-any.whl -_Pre_Builds/_Wheels_win_py311_cu121/nvdiffrast-0.3.1-py3-none-any.whl -_Pre_Builds/_Wheels_win_py311_cu121/pointnet2_ops-3.0.0-cp311-cp311-win_amd64.whl -_Pre_Builds/_Wheels_win_py311_cu121/pytorch3d-0.7.6-cp311-cp311-win_amd64.whl -_Pre_Builds/_Wheels_win_py311_cu121/simple_knn-0.0.0-cp311-cp311-win_amd64.whl -_Pre_Builds/_Wheels_win_py311_cu121/torch_scatter-2.1.2-cp311-cp311-win_amd64.whl \ No newline at end of file diff --git a/requirements_post_win_py312_cu121.txt b/requirements_post_win_py312_cu121.txt deleted file mode 100644 index 586d15b..0000000 --- a/requirements_post_win_py312_cu121.txt +++ /dev/null @@ -1,7 +0,0 @@ -_Pre_Builds/_Wheels_win_py312_cu121/diff_gaussian_rasterization-0.0.0-cp312-cp312-win_amd64.whl -_Pre_Builds/_Wheels_win_py312_cu121/kiui-0.2.4-py3-none-any.whl -_Pre_Builds/_Wheels_win_py312_cu121/nvdiffrast-0.3.1-py3-none-any.whl -_Pre_Builds/_Wheels_win_py312_cu121/pointnet2_ops-3.0.0-cp312-cp312-win_amd64.whl -_Pre_Builds/_Wheels_win_py312_cu121/pytorch3d-0.7.6-cp312-cp312-win_amd64.whl -_Pre_Builds/_Wheels_win_py312_cu121/simple_knn-0.0.0-cp312-cp312-win_amd64.whl -_Pre_Builds/_Wheels_win_py312_cu121/torch_scatter-2.1.2-cp312-cp312-win_amd64.whl \ No newline at end of file diff --git a/shared_utils/common_utils.py b/shared_utils/common_utils.py index 4d42900..92ca14b 100644 --- a/shared_utils/common_utils.py +++ b/shared_utils/common_utils.py @@ -1,87 +1,14 @@ import os from os import listdir -from os.path import isfile, join, exists +from os.path import isfile, join, exists, dirname import sys from datetime import datetime +from shared_utils.log_utils import cstr -class cstr(str): - # Modified from: WAS Node Suite - class color: - END = '\33[0m' - BOLD = '\33[1m' - ITALIC = '\33[3m' - UNDERLINE = '\33[4m' - BLINK = '\33[5m' - BLINK2 = '\33[6m' - SELECTED = '\33[7m' - - BLACK = '\33[30m' - RED = '\33[31m' - GREEN = '\33[32m' - YELLOW = '\33[33m' - BLUE = '\33[34m' - VIOLET = '\33[35m' - BEIGE = '\33[36m' - WHITE = '\33[37m' - - BLACKBG = '\33[40m' - REDBG = '\33[41m' - GREENBG = '\33[42m' - YELLOWBG = '\33[43m' - BLUEBG = '\33[44m' - VIOLETBG = '\33[45m' - BEIGEBG = '\33[46m' - WHITEBG = '\33[47m' - - GREY = '\33[90m' - LIGHTRED = '\33[91m' - LIGHTGREEN = '\33[92m' - LIGHTYELLOW = '\33[93m' - LIGHTBLUE = '\33[94m' - LIGHTVIOLET = '\33[95m' - LIGHTBEIGE = '\33[96m' - LIGHTWHITE = '\33[97m' - - GREYBG = '\33[100m' - LIGHTREDBG = '\33[101m' - LIGHTGREENBG = '\33[102m' - LIGHTYELLOWBG = '\33[103m' - LIGHTBLUEBG = '\33[104m' - LIGHTVIOLETBG = '\33[105m' - LIGHTBEIGEBG = '\33[106m' - LIGHTWHITEBG = '\33[107m' - - @staticmethod - def add_code(name, code): - if not hasattr(cstr.color, name.upper()): - setattr(cstr.color, name.upper(), code) - else: - raise ValueError(f"'cstr' object already contains a code with the name '{name}'.") - - def __new__(cls, text): - return super().__new__(cls, text) - - def __getattr__(self, attr): - if attr.lower().startswith("_cstr"): - code = getattr(self.color, attr.upper().lstrip("_cstr")) - modified_text = self.replace(f"__{attr[1:]}__", f"{code}") - return cstr(modified_text) - elif attr.upper() in dir(self.color): - code = getattr(self.color, attr.upper()) - modified_text = f"{code}{self}{self.color.END}" - return cstr(modified_text) - elif attr.lower() in dir(cstr): - return getattr(cstr, attr.lower()) - else: - raise AttributeError(f"'cstr' object has no attribute '{attr}'") - - def print(self, **kwargs): - print(self, **kwargs) - -#! MESSAGE TEMPLATES -cstr.color.add_code("msg", f"{cstr.color.BLUE}[Comfy3D] {cstr.color.END}") -cstr.color.add_code("warning", f"{cstr.color.LIGHTYELLOW}[Comfy3D] [WARNING] {cstr.color.END}") -cstr.color.add_code("error", f"{cstr.color.RED}[Comfy3D] [ERROR] {cstr.color.END}") +def get_parent_dirpath_n_level_up(abs_path, n=1): + for i in range(n): + abs_path = dirname(abs_path) + return abs_path def get_persistent_directory(folder_name): if sys.platform == "win32": diff --git a/shared_utils/log_utils.py b/shared_utils/log_utils.py index eb6b359..4c0de0d 100644 --- a/shared_utils/log_utils.py +++ b/shared_utils/log_utils.py @@ -1,6 +1,85 @@ import logging import sys +class cstr(str): + # Modified from: WAS Node Suite + class color: + END = '\33[0m' + BOLD = '\33[1m' + ITALIC = '\33[3m' + UNDERLINE = '\33[4m' + BLINK = '\33[5m' + BLINK2 = '\33[6m' + SELECTED = '\33[7m' + + BLACK = '\33[30m' + RED = '\33[31m' + GREEN = '\33[32m' + YELLOW = '\33[33m' + BLUE = '\33[34m' + VIOLET = '\33[35m' + BEIGE = '\33[36m' + WHITE = '\33[37m' + + BLACKBG = '\33[40m' + REDBG = '\33[41m' + GREENBG = '\33[42m' + YELLOWBG = '\33[43m' + BLUEBG = '\33[44m' + VIOLETBG = '\33[45m' + BEIGEBG = '\33[46m' + WHITEBG = '\33[47m' + + GREY = '\33[90m' + LIGHTRED = '\33[91m' + LIGHTGREEN = '\33[92m' + LIGHTYELLOW = '\33[93m' + LIGHTBLUE = '\33[94m' + LIGHTVIOLET = '\33[95m' + LIGHTBEIGE = '\33[96m' + LIGHTWHITE = '\33[97m' + + GREYBG = '\33[100m' + LIGHTREDBG = '\33[101m' + LIGHTGREENBG = '\33[102m' + LIGHTYELLOWBG = '\33[103m' + LIGHTBLUEBG = '\33[104m' + LIGHTVIOLETBG = '\33[105m' + LIGHTBEIGEBG = '\33[106m' + LIGHTWHITEBG = '\33[107m' + + @staticmethod + def add_code(name, code): + if not hasattr(cstr.color, name.upper()): + setattr(cstr.color, name.upper(), code) + else: + raise ValueError(f"'cstr' object already contains a code with the name '{name}'.") + + def __new__(cls, text): + return super().__new__(cls, text) + + def __getattr__(self, attr): + if attr.lower().startswith("_cstr"): + code = getattr(self.color, attr.upper().lstrip("_cstr")) + modified_text = self.replace(f"__{attr[1:]}__", f"{code}") + return cstr(modified_text) + elif attr.upper() in dir(self.color): + code = getattr(self.color, attr.upper()) + modified_text = f"{code}{self}{self.color.END}" + return cstr(modified_text) + elif attr.lower() in dir(cstr): + return getattr(cstr, attr.lower()) + else: + raise AttributeError(f"'cstr' object has no attribute '{attr}'") + + def print(self, **kwargs): + print(self, **kwargs) + +#! MESSAGE TEMPLATES +cstr.color.add_code("msg", f"{cstr.color.BLUE}[Comfy3D] {cstr.color.END}") +cstr.color.add_code("warning", f"{cstr.color.LIGHTYELLOW}[Comfy3D] [WARNING] {cstr.color.END}") +cstr.color.add_code("error", f"{cstr.color.RED}[Comfy3D] [ERROR] {cstr.color.END}") + class WarningFilter(logging.Filter): def filter(self, record): if record.levelno == logging.WARNING: diff --git a/simple-knn/ext.cpp b/simple-knn/ext.cpp deleted file mode 100644 index ae6cefe..0000000 --- a/simple-knn/ext.cpp +++ /dev/null @@ -1,17 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#include -#include "spatial.h" - -PYBIND11_MODULE(TORCH_EXTENSION_NAME, m) { - m.def("distCUDA2", &distCUDA2); -} diff --git a/simple-knn/setup.py b/simple-knn/setup.py deleted file mode 100644 index 580d2bd..0000000 --- a/simple-knn/setup.py +++ /dev/null @@ -1,35 +0,0 @@ -# -# Copyright (C) 2023, Inria -# GRAPHDECO research group, https://team.inria.fr/graphdeco -# All rights reserved. -# -# This software is free for non-commercial, research and evaluation use -# under the terms of the LICENSE.md file. -# -# For inquiries contact george.drettakis@inria.fr -# - -from setuptools import setup -from torch.utils.cpp_extension import CUDAExtension, BuildExtension -import os - -cxx_compiler_flags = [] - -if os.name == 'nt': - cxx_compiler_flags.append("/wd4624") - -setup( - name="simple_knn", - ext_modules=[ - CUDAExtension( - name="simple_knn._C", - sources=[ - "spatial.cu", - "simple_knn.cu", - "ext.cpp"], - extra_compile_args={"nvcc": [], "cxx": cxx_compiler_flags}) - ], - cmdclass={ - 'build_ext': BuildExtension - } -) diff --git a/simple-knn/simple_knn.cu b/simple-knn/simple_knn.cu deleted file mode 100644 index 880a49b..0000000 --- a/simple-knn/simple_knn.cu +++ /dev/null @@ -1,222 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#define BOX_SIZE 1024 - -#include "cuda_runtime.h" -#include "device_launch_parameters.h" -#include "simple_knn.h" -#include -#include -#include -#include -#include -#include -#define __CUDACC__ -#include -#include -#include - -namespace cg = cooperative_groups; - -struct CustomMin -{ - __device__ __forceinline__ - float3 operator()(const float3& a, const float3& b) const { - return { min(a.x, b.x), min(a.y, b.y), min(a.z, b.z) }; - } -}; - -struct CustomMax -{ - __device__ __forceinline__ - float3 operator()(const float3& a, const float3& b) const { - return { max(a.x, b.x), max(a.y, b.y), max(a.z, b.z) }; - } -}; - -__host__ __device__ uint32_t prepMorton(uint32_t x) -{ - x = (x | (x << 16)) & 0x030000FF; - x = (x | (x << 8)) & 0x0300F00F; - x = (x | (x << 4)) & 0x030C30C3; - x = (x | (x << 2)) & 0x09249249; - return x; -} - -__host__ __device__ uint32_t coord2Morton(float3 coord, float3 minn, float3 maxx) -{ - uint32_t x = prepMorton(((coord.x - minn.x) / (maxx.x - minn.x)) * ((1 << 10) - 1)); - uint32_t y = prepMorton(((coord.y - minn.y) / (maxx.y - minn.y)) * ((1 << 10) - 1)); - uint32_t z = prepMorton(((coord.z - minn.z) / (maxx.z - minn.z)) * ((1 << 10) - 1)); - - return x | (y << 1) | (z << 2); -} - -__global__ void coord2Morton(int P, const float3* points, float3 minn, float3 maxx, uint32_t* codes) -{ - auto idx = cg::this_grid().thread_rank(); - if (idx >= P) - return; - - codes[idx] = coord2Morton(points[idx], minn, maxx); -} - -struct MinMax -{ - float3 minn; - float3 maxx; -}; - -__global__ void boxMinMax(uint32_t P, float3* points, uint32_t* indices, MinMax* boxes) -{ - auto idx = cg::this_grid().thread_rank(); - - MinMax me; - if (idx < P) - { - me.minn = points[indices[idx]]; - me.maxx = points[indices[idx]]; - } - else - { - me.minn = { FLT_MAX, FLT_MAX, FLT_MAX }; - me.maxx = { -FLT_MAX,-FLT_MAX,-FLT_MAX }; - } - - __shared__ MinMax redResult[BOX_SIZE]; - - for (int off = BOX_SIZE / 2; off >= 1; off /= 2) - { - if (threadIdx.x < 2 * off) - redResult[threadIdx.x] = me; - __syncthreads(); - - if (threadIdx.x < off) - { - MinMax other = redResult[threadIdx.x + off]; - me.minn.x = min(me.minn.x, other.minn.x); - me.minn.y = min(me.minn.y, other.minn.y); - me.minn.z = min(me.minn.z, other.minn.z); - me.maxx.x = max(me.maxx.x, other.maxx.x); - me.maxx.y = max(me.maxx.y, other.maxx.y); - me.maxx.z = max(me.maxx.z, other.maxx.z); - } - __syncthreads(); - } - - if (threadIdx.x == 0) - boxes[blockIdx.x] = me; -} - -__device__ __host__ float distBoxPoint(const MinMax& box, const float3& p) -{ - float3 diff = { 0, 0, 0 }; - if (p.x < box.minn.x || p.x > box.maxx.x) - diff.x = min(abs(p.x - box.minn.x), abs(p.x - box.maxx.x)); - if (p.y < box.minn.y || p.y > box.maxx.y) - diff.y = min(abs(p.y - box.minn.y), abs(p.y - box.maxx.y)); - if (p.z < box.minn.z || p.z > box.maxx.z) - diff.z = min(abs(p.z - box.minn.z), abs(p.z - box.maxx.z)); - return diff.x * diff.x + diff.y * diff.y + diff.z * diff.z; -} - -template -__device__ void updateKBest(const float3& ref, const float3& point, float* knn) -{ - float3 d = { point.x - ref.x, point.y - ref.y, point.z - ref.z }; - float dist = d.x * d.x + d.y * d.y + d.z * d.z; - for (int j = 0; j < K; j++) - { - if (knn[j] > dist) - { - float t = knn[j]; - knn[j] = dist; - dist = t; - } - } -} - -__global__ void boxMeanDist(uint32_t P, float3* points, uint32_t* indices, MinMax* boxes, float* dists) -{ - int idx = cg::this_grid().thread_rank(); - if (idx >= P) - return; - - float3 point = points[indices[idx]]; - float best[3] = { FLT_MAX, FLT_MAX, FLT_MAX }; - - for (int i = max(0, idx - 3); i <= min(P - 1, idx + 3); i++) - { - if (i == idx) - continue; - updateKBest<3>(point, points[indices[i]], best); - } - - float reject = best[2]; - best[0] = FLT_MAX; - best[1] = FLT_MAX; - best[2] = FLT_MAX; - - for (int b = 0; b < (P + BOX_SIZE - 1) / BOX_SIZE; b++) - { - MinMax box = boxes[b]; - float dist = distBoxPoint(box, point); - if (dist > reject || dist > best[2]) - continue; - - for (int i = b * BOX_SIZE; i < min(P, (b + 1) * BOX_SIZE); i++) - { - if (i == idx) - continue; - updateKBest<3>(point, points[indices[i]], best); - } - } - dists[indices[idx]] = (best[0] + best[1] + best[2]) / 3.0f; -} - -void SimpleKNN::knn(int P, float3* points, float* meanDists) -{ - float3* result; - cudaMalloc(&result, sizeof(float3)); - size_t temp_storage_bytes; - - float3 init = { 0, 0, 0 }, minn, maxx; - - cub::DeviceReduce::Reduce(nullptr, temp_storage_bytes, points, result, P, CustomMin(), init); - thrust::device_vector temp_storage(temp_storage_bytes); - - cub::DeviceReduce::Reduce(temp_storage.data().get(), temp_storage_bytes, points, result, P, CustomMin(), init); - cudaMemcpy(&minn, result, sizeof(float3), cudaMemcpyDeviceToHost); - - cub::DeviceReduce::Reduce(temp_storage.data().get(), temp_storage_bytes, points, result, P, CustomMax(), init); - cudaMemcpy(&maxx, result, sizeof(float3), cudaMemcpyDeviceToHost); - - thrust::device_vector morton(P); - thrust::device_vector morton_sorted(P); - coord2Morton << <(P + 255) / 256, 256 >> > (P, points, minn, maxx, morton.data().get()); - - thrust::device_vector indices(P); - thrust::sequence(indices.begin(), indices.end()); - thrust::device_vector indices_sorted(P); - - cub::DeviceRadixSort::SortPairs(nullptr, temp_storage_bytes, morton.data().get(), morton_sorted.data().get(), indices.data().get(), indices_sorted.data().get(), P); - temp_storage.resize(temp_storage_bytes); - - cub::DeviceRadixSort::SortPairs(temp_storage.data().get(), temp_storage_bytes, morton.data().get(), morton_sorted.data().get(), indices.data().get(), indices_sorted.data().get(), P); - - uint32_t num_boxes = (P + BOX_SIZE - 1) / BOX_SIZE; - thrust::device_vector boxes(num_boxes); - boxMinMax << > > (P, points, indices_sorted.data().get(), boxes.data().get()); - boxMeanDist << > > (P, points, indices_sorted.data().get(), boxes.data().get(), meanDists); - - cudaFree(result); -} diff --git a/simple-knn/simple_knn.h b/simple-knn/simple_knn.h deleted file mode 100644 index 3fcfdb8..0000000 --- a/simple-knn/simple_knn.h +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#ifndef SIMPLEKNN_H_INCLUDED -#define SIMPLEKNN_H_INCLUDED - -class SimpleKNN -{ -public: - static void knn(int P, float3* points, float* meanDists); -}; - -#endif \ No newline at end of file diff --git a/simple-knn/simple_knn/.gitkeep b/simple-knn/simple_knn/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/simple-knn/spatial.cu b/simple-knn/spatial.cu deleted file mode 100644 index 1a6a654..0000000 --- a/simple-knn/spatial.cu +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#include "spatial.h" -#include "simple_knn.h" - -torch::Tensor -distCUDA2(const torch::Tensor& points) -{ - const int P = points.size(0); - - auto float_opts = points.options().dtype(torch::kFloat32); - torch::Tensor means = torch::full({P}, 0.0, float_opts); - - SimpleKNN::knn(P, (float3*)points.contiguous().data(), means.contiguous().data()); - - return means; -} \ No newline at end of file diff --git a/simple-knn/spatial.h b/simple-knn/spatial.h deleted file mode 100644 index 280c953..0000000 --- a/simple-knn/spatial.h +++ /dev/null @@ -1,14 +0,0 @@ -/* - * Copyright (C) 2023, Inria - * GRAPHDECO research group, https://team.inria.fr/graphdeco - * All rights reserved. - * - * This software is free for non-commercial, research and evaluation use - * under the terms of the LICENSE.md file. - * - * For inquiries contact george.drettakis@inria.fr - */ - -#include - -torch::Tensor distCUDA2(const torch::Tensor& points); \ No newline at end of file diff --git a/tgs/__init__.py b/tgs/__init__.py deleted file mode 100644 index 889caab..0000000 --- a/tgs/__init__.py +++ /dev/null @@ -1,11 +0,0 @@ -import importlib -from .utils.typing import * - -def find(cls_string) -> Type: - cls_full_name = cls_string.split(".") - module_string = ".".join(cls_full_name[:-1]) - cls_name = cls_full_name[-1] - print(module_string) - module = importlib.import_module(module_string, package=__name__) - cls = getattr(module, cls_name) - return cls \ No newline at end of file diff --git a/tgs/data.py b/tgs/data.py deleted file mode 100644 index 153dd41..0000000 --- a/tgs/data.py +++ /dev/null @@ -1,237 +0,0 @@ -import json -import math -from dataclasses import dataclass, field - -import os -import imageio -import numpy as np -import torch -import torch.nn.functional as F -from PIL import Image -from torch.utils.data import Dataset - -from .utils.config import parse_structured -from .utils.ops import get_intrinsic_from_fov, get_ray_directions, get_rays -from .utils.typing import * - -@dataclass -class CustomImageDataModuleConfig: - background_color: Tuple[float, float, float] = field( - default_factory=lambda: (1.0, 1.0, 1.0) - ) - - relative_pose: bool = False - cond_height: int = 512 - cond_width: int = 512 - cond_camera_distance: float = 1.6 - cond_fovy_deg: float = 40.0 - cond_elevation_deg: float = 0.0 - cond_azimuth_deg: float = 0.0 - num_workers: int = 16 - - eval_height: int = 512 - eval_width: int = 512 - eval_batch_size: int = 1 - eval_elevation_deg: float = 0.0 - eval_camera_distance: float = 1.6 - eval_fovy_deg: float = 40.0 - n_test_views: int = 120 - num_views_output: int = 120 - only_3dgs: bool = False - -class CustomImageOrbitDataset(Dataset): - def __init__(self, reference_image, reference_mask, cfg: Any) -> None: - super().__init__() - self.cfg: CustomImageDataModuleConfig = parse_structured(CustomImageDataModuleConfig, cfg) - - self.n_views = self.cfg.n_test_views - assert self.n_views % self.cfg.num_views_output == 0 - - self.all_images = reference_image - self.all_masks = reference_mask - - azimuth_deg: Float[Tensor, "B"] = torch.linspace(0, 360.0, self.n_views + 1)[ - : self.n_views - ] - elevation_deg: Float[Tensor, "B"] = torch.full_like( - azimuth_deg, self.cfg.eval_elevation_deg - ) - camera_distances: Float[Tensor, "B"] = torch.full_like( - elevation_deg, self.cfg.eval_camera_distance - ) - - elevation = elevation_deg * math.pi / 180 - azimuth = azimuth_deg * math.pi / 180 - - # convert spherical coordinates to cartesian coordinates - # right hand coordinate system, x back, y right, z up - # elevation in (-90, 90), azimuth from +x to +y in (-180, 180) - camera_positions: Float[Tensor, "B 3"] = torch.stack( - [ - camera_distances * torch.cos(elevation) * torch.cos(azimuth), - camera_distances * torch.cos(elevation) * torch.sin(azimuth), - camera_distances * torch.sin(elevation), - ], - dim=-1, - ) - - # default scene center at origin - center: Float[Tensor, "B 3"] = torch.zeros_like(camera_positions) - # default camera up direction as +z - up: Float[Tensor, "B 3"] = torch.as_tensor([0, 0, 1], dtype=torch.float32)[ - None, : - ].repeat(self.n_views, 1) - - fovy_deg: Float[Tensor, "B"] = torch.full_like( - elevation_deg, self.cfg.eval_fovy_deg - ) - fovy = fovy_deg * math.pi / 180 - - lookat: Float[Tensor, "B 3"] = F.normalize(center - camera_positions, dim=-1) - right: Float[Tensor, "B 3"] = F.normalize(torch.cross(lookat, up), dim=-1) - up = F.normalize(torch.cross(right, lookat), dim=-1) - c2w3x4: Float[Tensor, "B 3 4"] = torch.cat( - [torch.stack([right, up, -lookat], dim=-1), camera_positions[:, :, None]], - dim=-1, - ) - c2w: Float[Tensor, "B 4 4"] = torch.cat( - [c2w3x4, torch.zeros_like(c2w3x4[:, :1])], dim=1 - ) - c2w[:, 3, 3] = 1.0 - - # get directions by dividing directions_unit_focal by focal length - focal_length: Float[Tensor, "B"] = ( - 0.5 * self.cfg.eval_height / torch.tan(0.5 * fovy) - ) - directions_unit_focal = get_ray_directions( - H=self.cfg.eval_height, - W=self.cfg.eval_width, - focal=1.0, - ) - directions: Float[Tensor, "B H W 3"] = directions_unit_focal[ - None, :, :, : - ].repeat(self.n_views, 1, 1, 1) - directions[:, :, :, :2] = ( - directions[:, :, :, :2] / focal_length[:, None, None, None] - ) - # must use normalize=True to normalize directions here - rays_o, rays_d = get_rays(directions, c2w, keepdim=True) - - intrinsic: Float[Tensor, "B 3 3"] = get_intrinsic_from_fov( - self.cfg.eval_fovy_deg * math.pi / 180, - H=self.cfg.eval_height, - W=self.cfg.eval_width, - bs=self.n_views, - ) - intrinsic_normed: Float[Tensor, "B 3 3"] = intrinsic.clone() - intrinsic_normed[..., 0, 2] /= self.cfg.eval_width - intrinsic_normed[..., 1, 2] /= self.cfg.eval_height - intrinsic_normed[..., 0, 0] /= self.cfg.eval_width - intrinsic_normed[..., 1, 1] /= self.cfg.eval_height - - self.rays_o, self.rays_d = rays_o, rays_d - self.intrinsic = intrinsic - self.intrinsic_normed = intrinsic_normed - self.c2w = c2w - self.camera_positions = camera_positions - - self.background_color = torch.as_tensor(self.cfg.background_color) - - # condition - self.intrinsic_cond = get_intrinsic_from_fov( - np.deg2rad(self.cfg.cond_fovy_deg), - H=self.cfg.cond_height, - W=self.cfg.cond_width, - ) - self.intrinsic_normed_cond = self.intrinsic_cond.clone() - self.intrinsic_normed_cond[..., 0, 2] /= self.cfg.cond_width - self.intrinsic_normed_cond[..., 1, 2] /= self.cfg.cond_height - self.intrinsic_normed_cond[..., 0, 0] /= self.cfg.cond_width - self.intrinsic_normed_cond[..., 1, 1] /= self.cfg.cond_height - - - if self.cfg.relative_pose: - self.c2w_cond = torch.as_tensor( - [ - [0, 0, 1, self.cfg.cond_camera_distance], - [1, 0, 0, 0], - [0, 1, 0, 0], - [0, 0, 0, 1], - ] - ).float() - else: - cond_elevation = self.cfg.cond_elevation_deg * math.pi / 180 - cond_azimuth = self.cfg.cond_azimuth_deg * math.pi / 180 - cond_camera_position: Float[Tensor, "3"] = torch.as_tensor( - [ - self.cfg.cond_camera_distance * np.cos(cond_elevation) * np.cos(cond_azimuth), - self.cfg.cond_camera_distance * np.cos(cond_elevation) * np.sin(cond_azimuth), - self.cfg.cond_camera_distance * np.sin(cond_elevation), - ], dtype=torch.float32 - ) - - cond_center: Float[Tensor, "3"] = torch.zeros_like(cond_camera_position) - cond_up: Float[Tensor, "3"] = torch.as_tensor([0, 0, 1], dtype=torch.float32) - cond_lookat: Float[Tensor, "3"] = F.normalize(cond_center - cond_camera_position, dim=-1) - cond_right: Float[Tensor, "3"] = F.normalize(torch.cross(cond_lookat, cond_up), dim=-1) - cond_up = F.normalize(torch.cross(cond_right, cond_lookat), dim=-1) - cond_c2w3x4: Float[Tensor, "3 4"] = torch.cat( - [torch.stack([cond_right, cond_up, -cond_lookat], dim=-1), cond_camera_position[:, None]], - dim=-1, - ) - cond_c2w: Float[Tensor, "4 4"] = torch.cat( - [cond_c2w3x4, torch.zeros_like(cond_c2w3x4[:1])], dim=0 - ) - cond_c2w[3, 3] = 1.0 - self.c2w_cond = cond_c2w - - def __len__(self): - if self.cfg.only_3dgs: - return len(self.all_images) - else: - return len(self.all_images) * self.n_views // self.cfg.num_views_output - - def __getitem__(self, index): - if self.cfg.only_3dgs: - scene_index = index - view_index = [0] - else: - scene_index = index * self.cfg.num_views_output // self.n_views - view_start = index % (self.n_views // self.cfg.num_views_output) - view_index = list(range(self.n_views))[view_start * self.cfg.num_views_output : - (view_start + 1) * self.cfg.num_views_output] - - mask_cond: Float[Tensor, "Hc Wc 1"] = self.resize_image(self.all_masks[scene_index].unsqueeze(2)) - rgb_cond: Float[Tensor, "Hc Wc 3"] = self.resize_image(self.all_images[scene_index]) * mask_cond + self.background_color[None, None, :] * (1 - mask_cond) - - out = { - "rgb_cond": rgb_cond, - "c2w_cond": self.c2w_cond.unsqueeze(0), - "mask_cond": mask_cond, - "intrinsic_cond": self.intrinsic_cond.unsqueeze(0), - "intrinsic_normed_cond": self.intrinsic_normed_cond.unsqueeze(0), - "view_index": torch.as_tensor(view_index), - "rays_o": self.rays_o[view_index], - "rays_d": self.rays_d[view_index], - "intrinsic": self.intrinsic[view_index], - "intrinsic_normed": self.intrinsic_normed[view_index], - "c2w": self.c2w[view_index], - "camera_positions": self.camera_positions[view_index], - } - out["c2w"][..., :3, 1:3] *= -1 - out["c2w_cond"][..., :3, 1:3] *= -1 - out["index"] = torch.as_tensor(scene_index) - out["background_color"] = self.background_color - instance_id = str(scene_index) - out["instance_id"] = instance_id - return out - - def resize_image(self, img): - img_new = img.permute(2, 0, 1).unsqueeze(0) - img_new = F.interpolate(img_new, (self.cfg.cond_width, self.cfg.cond_height), mode="bilinear", align_corners=False).contiguous() - return img_new.permute(0, 2, 3, 1) - - def collate(self, batch): - batch = torch.utils.data.default_collate(batch) - batch.update({"height": self.cfg.eval_height, "width": self.cfg.eval_width}) - return batch \ No newline at end of file diff --git a/tgs/models/__init__.py b/tgs/models/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/tgs/models/image_feature.py b/tgs/models/image_feature.py deleted file mode 100644 index 88d3424..0000000 --- a/tgs/models/image_feature.py +++ /dev/null @@ -1,48 +0,0 @@ -from dataclasses import dataclass -import torch -import torch.nn.functional as F -from einops import rearrange - -from ..utils.base import BaseModule -from ..utils.ops import compute_distance_transform -from ..utils.typing import * - -class ImageFeature(BaseModule): - @dataclass - class Config(BaseModule.Config): - use_rgb: bool = True - use_feature: bool = True - use_mask: bool = True - feature_dim: int = 128 - out_dim: int = 133 - backbone: str = "default" - freeze_backbone_params: bool = True - - cfg: Config - - def forward(self, rgb, mask=None, feature=None): - B, Nv, H, W = rgb.shape[:4] - rgb = rearrange(rgb, "B Nv H W C -> (B Nv) C H W") - if mask is not None: - mask = rearrange(mask, "B Nv H W C -> (B Nv) C H W") - - assert feature is not None - # reshape dino tokens to image-like size - feature = rearrange(feature, "B (Nv Nt) C -> (B Nv) Nt C", Nv=Nv) - feature = feature[:, 1:].reshape(B * Nv, H // 14, W // 14, -1).permute(0, 3, 1, 2).contiguous() - feature = F.interpolate(feature, size=(H, W), mode='bilinear', align_corners=False) - - if mask is not None and mask.is_floating_point(): - mask = mask > 0.5 - - image_features = [] - if self.cfg.use_rgb: - image_features.append(rgb) - if self.cfg.use_feature: - image_features.append(feature) - if self.cfg.use_mask: - image_features += [mask, compute_distance_transform(mask)] - - # detach features, occur error when with grad - image_features = torch.cat(image_features, dim=1)#.detach() - return rearrange(image_features, "(B Nv) C H W -> B Nv C H W", B=B, Nv=Nv).squeeze(1) \ No newline at end of file diff --git a/tgs/models/networks.py b/tgs/models/networks.py deleted file mode 100644 index 082671e..0000000 --- a/tgs/models/networks.py +++ /dev/null @@ -1,204 +0,0 @@ -from dataclasses import dataclass - -import torch -import torch.nn as nn -from einops import rearrange -import numpy as np - -from ..utils.base import BaseModule -from ..utils.ops import get_activation -from ..utils.typing import * - -class PointOutLayer(BaseModule): - @dataclass - class Config(BaseModule.Config): - in_channels: int = 1024 - out_channels: int = 3 - cfg: Config - def configure(self) -> None: - super().configure() - self.point_layer = nn.Linear(self.cfg.in_channels, self.cfg.out_channels) - self.initialize_weights() - - def initialize_weights(self): - nn.init.constant_(self.point_layer.weight, 0) - nn.init.constant_(self.point_layer.bias, 0) - - def forward(self, x): - return self.point_layer(x) - -class TriplaneUpsampleNetwork(BaseModule): - @dataclass - class Config(BaseModule.Config): - in_channels: int = 1024 - out_channels: int = 80 - - cfg: Config - - def configure(self) -> None: - super().configure() - self.upsample = nn.ConvTranspose2d( - self.cfg.in_channels, self.cfg.out_channels, kernel_size=2, stride=2 - ) - - def forward( - self, triplanes: Float[Tensor, "B 3 Ci Hp Wp"] - ) -> Float[Tensor, "B 3 Co Hp2 Wp2"]: - triplanes_up = rearrange( - self.upsample( - rearrange(triplanes, "B Np Ci Hp Wp -> (B Np) Ci Hp Wp", Np=3) - ), - "(B Np) Co Hp Wp -> B Np Co Hp Wp", - Np=3, - ) - return triplanes_up - - -class MLP(nn.Module): - def __init__( - self, - dim_in: int, - dim_out: int, - n_neurons: int, - n_hidden_layers: int, - activation: str = "relu", - output_activation: Optional[str] = None, - bias: bool = True, - ): - super().__init__() - layers = [ - self.make_linear( - dim_in, n_neurons, is_first=True, is_last=False, bias=bias - ), - self.make_activation(activation), - ] - for i in range(n_hidden_layers - 1): - layers += [ - self.make_linear( - n_neurons, n_neurons, is_first=False, is_last=False, bias=bias - ), - self.make_activation(activation), - ] - layers += [ - self.make_linear( - n_neurons, dim_out, is_first=False, is_last=True, bias=bias - ) - ] - self.layers = nn.Sequential(*layers) - self.output_activation = get_activation(output_activation) - - def forward(self, x): - x = self.layers(x) - x = self.output_activation(x) - return x - - def make_linear(self, dim_in, dim_out, is_first, is_last, bias=True): - layer = nn.Linear(dim_in, dim_out, bias=bias) - return layer - - def make_activation(self, activation): - if activation == "relu": - return nn.ReLU(inplace=True) - elif activation == "silu": - return nn.SiLU(inplace=True) - else: - raise NotImplementedError - -class GSProjection(nn.Module): - def __init__(self, - in_channels: int = 80, - sh_degree: int = 3, - init_scaling: float = -5.0, - init_density: float = 0.1) -> None: - super().__init__() - - self.out_keys = GS_KEYS + ["shs"] - self.out_channels = GS_CHANNELS + [(sh_degree + 1) ** 2 * 3] - - self.out_layers = nn.ModuleList() - for key, ch in zip(self.out_keys, self.out_channels): - layer = nn.Linear(in_channels, ch) - # initialize - nn.init.constant_(layer.weight, 0) - nn.init.constant_(layer.bias, 0) - - if key == "scaling": - nn.init.constant_(layer.bias, init_scaling) - elif key == "rotation": - nn.init.constant_(layer.bias, 0) - nn.init.constant_(layer.bias[0], 1.0) - elif key == "opacity": - inverse_sigmoid = lambda x: np.log(x / (1 - x)) - nn.init.constant_(layer.bias, inverse_sigmoid(init_density)) - - self.out_layers.append(layer) - - def forward(self, x): - ret = [] - for k, layer in zip(self.out_keys, self.out_layers): - v = layer(x) - if k == "rotation": - v = torch.nn.functional.normalize(v) - elif k == "scaling": - v = torch.exp(v) - # v = v.detach() # FIXME: for DEBUG - elif k == "opacity": - v = torch.sigmoid(v) - # elif k == "shs": - # v = torch.reshape(v, (v.shape[0], -1, 3)) - ret.append(v) - ret = torch.cat(ret, dim=-1) - return ret - -def get_encoding(n_input_dims: int, config) -> nn.Module: - raise NotImplementedError - - -def get_mlp(n_input_dims, n_output_dims, config) -> nn.Module: - raise NotImplementedError - - -# Resnet Blocks for pointnet -class ResnetBlockFC(nn.Module): - ''' Fully connected ResNet Block class. - - Args: - size_in (int): input dimension - size_out (int): output dimension - size_h (int): hidden dimension - ''' - - def __init__(self, size_in, size_out=None, size_h=None): - super().__init__() - # Attributes - if size_out is None: - size_out = size_in - - if size_h is None: - size_h = min(size_in, size_out) - - self.size_in = size_in - self.size_h = size_h - self.size_out = size_out - # Submodules - self.fc_0 = nn.Linear(size_in, size_h) - self.fc_1 = nn.Linear(size_h, size_out) - self.actvn = nn.ReLU() - - if size_in == size_out: - self.shortcut = None - else: - self.shortcut = nn.Linear(size_in, size_out, bias=False) - # Initialization - nn.init.zeros_(self.fc_1.weight) - - def forward(self, x): - net = self.fc_0(self.actvn(x)) - dx = self.fc_1(self.actvn(net)) - - if self.shortcut is not None: - x_s = self.shortcut(x) - else: - x_s = x - - return x_s + dx \ No newline at end of file diff --git a/tgs/models/pointclouds/LICENSE_POINTNET b/tgs/models/pointclouds/LICENSE_POINTNET deleted file mode 100644 index 5358ea9..0000000 --- a/tgs/models/pointclouds/LICENSE_POINTNET +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2020 Songyou Peng, Michael Niemeyer, Lars Mescheder, Marc Pollefeys, Andreas Geiger - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. \ No newline at end of file diff --git a/tgs/models/pointclouds/pointnet.py b/tgs/models/pointclouds/pointnet.py deleted file mode 100644 index 14b5cbe..0000000 --- a/tgs/models/pointclouds/pointnet.py +++ /dev/null @@ -1,121 +0,0 @@ -# modified from https://github.com/autonomousvision/convolutional_occupancy_networks/blob/master/src/encoder/pointnet.py -from dataclasses import dataclass -import torch -import torch.nn as nn -from torch_scatter import scatter_mean, scatter_max - -from tgs.utils.base import BaseModule -from tgs.models.networks import ResnetBlockFC -from tgs.utils.ops import scale_tensor - -class LocalPoolPointnet(BaseModule): - ''' PointNet-based encoder network with ResNet blocks for each point. - Number of input points are fixed. - - Args: - c_dim (int): dimension of latent code c - dim (int): input points dimension - hidden_dim (int): hidden dimension of the network - scatter_type (str): feature aggregation when doing local pooling - plane_resolution (int): defined resolution for plane feature - padding (float): conventional padding paramter of ONet for unit cube, so [-0.5, 0.5] -> [-0.55, 0.55] - n_blocks (int): number of blocks ResNetBlockFC layers - ''' - - @dataclass - class Config(BaseModule.Config): - input_channels: int = 3 - c_dim: int = 128 - hidden_dim: int = 128 - scatter_type: str = "max" - plane_size: int = 32 - n_blocks: int = 5 - radius: float = 1. - - cfg: Config - - def configure(self) -> None: - super().configure() - self.fc_pos = nn.Linear(self.cfg.input_channels, 2 * self.cfg.hidden_dim) - self.blocks = nn.ModuleList([ - ResnetBlockFC(2 * self.cfg.hidden_dim, self.cfg.hidden_dim) for i in range(self.cfg.n_blocks) - ]) - self.fc_c = nn.Linear(self.cfg.hidden_dim, self.cfg.c_dim) - - self.actvn = nn.ReLU() - - if self.cfg.scatter_type == 'max': - self.scatter = scatter_max - elif self.cfg.scatter_type == 'mean': - self.scatter = scatter_mean - else: - raise ValueError('incorrect scatter type') - - - def generate_plane_features(self, index, c): - # acquire indices of features in plane - # xy = normalize_coordinate(p.clone(), plane=plane, padding=self.padding) # normalize to the range of (0, 1) - # index = self.coordinate2index(x, self.cfg.plane_size) - - # scatter plane features from points - fea_plane = c.new_zeros(index.shape[0], self.cfg.c_dim, self.cfg.plane_size ** 2) - c = c.permute(0, 2, 1) # B x 512 x T - fea_plane = scatter_mean(c, index, out=fea_plane) # B x 512 x reso^2 - fea_plane = fea_plane.reshape(index.shape[0], self.cfg.c_dim, self.cfg.plane_size, self.cfg.plane_size) # sparce matrix (B x 512 x reso x reso) - - return fea_plane - - def pool_local(self, xy, index, c): - bs, fea_dim = c.shape[0], c.shape[2] - keys = xy.keys() - - c_out = 0 - for key in keys: - # scatter plane features from points - fea = self.scatter(c.permute(0, 2, 1), index[key], dim_size=self.cfg.plane_size ** 2) - if self.scatter == scatter_max: - fea = fea[0] - # gather feature back to points - fea = fea.gather(dim=2, index=index[key].expand(-1, fea_dim, -1)) - c_out += fea - return c_out.permute(0, 2, 1) - - def coordinate2index(self, x): - x = (x * self.cfg.plane_size).long() - index = x[..., 0] + self.cfg.plane_size * x[..., 1] - assert index.max() < self.cfg.plane_size ** 2 - return index[:, None, :] - - def forward(self, p): - batch_size, T, D = p.shape - - # acquire the index for each point - coord = {} - index = {} - - position = torch.clamp(p[..., :3], -self.cfg.radius + 1e-6, self.cfg.radius - 1e-6) - position_norm = scale_tensor(position, (-self.cfg.radius, self.cfg.radius), (0, 1)) - coord["xy"] = position_norm[..., [0, 1]] - coord["xz"] = position_norm[..., [0, 2]] - coord["yz"] = position_norm[..., [1, 2]] - index["xy"] = self.coordinate2index(coord["xy"]) - index["xz"] = self.coordinate2index(coord["xz"]) - index["yz"] = self.coordinate2index(coord["yz"]) - - net = self.fc_pos(p) - - net = self.blocks[0](net) - for block in self.blocks[1:]: - pooled = self.pool_local(coord, index, net) - net = torch.cat([net, pooled], dim=2) - net = block(net) - - c = self.fc_c(net) - - features = torch.stack([ - self.generate_plane_features(index["xy"], c), - self.generate_plane_features(index["xz"], c), - self.generate_plane_features(index["yz"], c) - ], dim=1) - - return features diff --git a/tgs/models/pointclouds/simplepoint.py b/tgs/models/pointclouds/simplepoint.py deleted file mode 100644 index 2fb028d..0000000 --- a/tgs/models/pointclouds/simplepoint.py +++ /dev/null @@ -1,110 +0,0 @@ -from dataclasses import dataclass, field -import torch -from einops import rearrange - -import tgs -from tgs.utils.base import BaseModule -from tgs.utils.typing import * - -class SimplePointGenerator(BaseModule): - @dataclass - class Config(BaseModule.Config): - camera_embedder_cls: str = "" - camera_embedder: dict = field(default_factory=dict) - - image_tokenizer_cls: str = "" - image_tokenizer: dict = field(default_factory=dict) - - tokenizer_cls: str = "" - tokenizer: dict = field(default_factory=dict) - - backbone_cls: str = "" - backbone: dict = field(default_factory=dict) - - post_processor_cls: str = "" - post_processor: dict = field(default_factory=dict) - - pointcloud_upsampling_cls: str = "" - pointcloud_upsampling: dict = field(default_factory=dict) - - flip_c2w_cond: bool = True - - cfg: Config - - def configure(self) -> None: - super().configure() - - self.image_tokenizer = tgs.find(self.cfg.image_tokenizer_cls)( - self.cfg.image_tokenizer - ) - - assert self.cfg.camera_embedder_cls == 'tgs.models.networks.MLP' - weights = self.cfg.camera_embedder.pop("weights") if "weights" in self.cfg.camera_embedder else None - self.camera_embedder = tgs.find(self.cfg.camera_embedder_cls)(**self.cfg.camera_embedder) - if weights: - from tgs.utils.misc import load_module_weights - weights_path, module_name = weights.split(":") - state_dict = load_module_weights( - weights_path, module_name=module_name, map_location="cpu" - ) - self.camera_embedder.load_state_dict(state_dict) - - self.tokenizer = tgs.find(self.cfg.tokenizer_cls)(self.cfg.tokenizer) - - self.backbone = tgs.find(self.cfg.backbone_cls)(self.cfg.backbone) - - self.post_processor = tgs.find(self.cfg.post_processor_cls)( - self.cfg.post_processor - ) - - self.pointcloud_upsampling = tgs.find(self.cfg.pointcloud_upsampling_cls)(self.cfg.pointcloud_upsampling) - - def forward(self, batch, encoder_hidden_states=None, **kwargs): - batch_size, n_input_views = batch["rgb_cond"].shape[:2] - - if encoder_hidden_states is None: - # Camera modulation - c2w_cond = batch["c2w_cond"].clone() - if self.cfg.flip_c2w_cond: - c2w_cond[..., :3, 1:3] *= -1 - camera_extri = c2w_cond.view(*c2w_cond.shape[:-2], -1) - camera_intri = batch["intrinsic_normed_cond"].view( - *batch["intrinsic_normed_cond"].shape[:-2], -1) - camera_feats = torch.cat([camera_intri, camera_extri], dim=-1) - # camera_feats = rearrange(camera_feats, 'B Nv C -> (B Nv) C') - - camera_feats = self.camera_embedder(camera_feats) - - encoder_hidden_states: Float[Tensor, "B Cit Nit"] = self.image_tokenizer( - rearrange(batch["rgb_cond"], 'B Nv H W C -> B Nv C H W'), - modulation_cond=camera_feats, - ) - encoder_hidden_states = rearrange( - encoder_hidden_states, 'B Nv C Nt -> B (Nv Nt) C', Nv=n_input_views) - - tokens: Float[Tensor, "B Ct Nt"] = self.tokenizer(batch_size) - - tokens = self.backbone( - tokens, - encoder_hidden_states=encoder_hidden_states, - modulation_cond=None, - ) - pointclouds = self.post_processor(self.tokenizer.detokenize(tokens)) - - upsampling_input = { - "input_image_tokens": encoder_hidden_states.permute(0, 2, 1), - "input_image_tokens_global": encoder_hidden_states[:, :1], - "c2w_cond": c2w_cond, - "rgb_cond": batch["rgb_cond"], - "intrinsic_cond": batch["intrinsic_cond"], - "intrinsic_normed_cond": batch["intrinsic_normed_cond"], - "points": pointclouds.float() - } - up_results = self.pointcloud_upsampling(upsampling_input) - up_results.insert(0, pointclouds) - pointclouds = up_results[-1] - out = { - "points": pointclouds, - "up_results": up_results - } - return out \ No newline at end of file diff --git a/tgs/models/renderer.py b/tgs/models/renderer.py deleted file mode 100644 index 256b025..0000000 --- a/tgs/models/renderer.py +++ /dev/null @@ -1,408 +0,0 @@ -from dataclasses import dataclass, field -from collections import defaultdict -from diff_gaussian_rasterization import GaussianRasterizationSettings, GaussianRasterizer -from plyfile import PlyData, PlyElement -import torch -import torch.nn as nn -import torch.nn.functional as F -import numpy as np -import math - -from ..utils.typing import * -from ..utils.base import BaseModule -from ..utils.ops import trunc_exp -from ..utils.ops import scale_tensor -from .networks import MLP -from einops import rearrange, reduce - -from mesh_processer.mesh_utils import construct_list_of_gs_attributes, write_gs_ply - -inverse_sigmoid = lambda x: np.log(x / (1 - x)) - -def getWorld2View2(R, t, translate=np.array([.0, .0, .0]), scale=1.0): - Rt = np.zeros((4, 4)) - Rt[:3, :3] = R.transpose() - Rt[:3, 3] = t - Rt[3, 3] = 1.0 - - C2W = np.linalg.inv(Rt) - cam_center = C2W[:3, 3] - cam_center = (cam_center + translate) * scale - C2W[:3, 3] = cam_center - Rt = np.linalg.inv(C2W) - return np.float32(Rt) - -def getProjectionMatrix(znear, zfar, fovX, fovY): - tanHalfFovY = math.tan((fovY / 2)) - tanHalfFovX = math.tan((fovX / 2)) - - top = tanHalfFovY * znear - bottom = -top - right = tanHalfFovX * znear - left = -right - - P = torch.zeros(4, 4) - - z_sign = 1.0 - - P[0, 0] = 2.0 * znear / (right - left) - P[1, 1] = 2.0 * znear / (top - bottom) - P[0, 2] = (right + left) / (right - left) - P[1, 2] = (top + bottom) / (top - bottom) - P[3, 2] = z_sign - P[2, 2] = z_sign * zfar / (zfar - znear) - P[2, 3] = -(zfar * znear) / (zfar - znear) - return P - -def intrinsic_to_fov(intrinsic, w, h): - fx, fy = intrinsic[0, 0], intrinsic[1, 1] - fov_x = 2 * torch.arctan2(w, 2 * fx) - fov_y = 2 * torch.arctan2(h, 2 * fy) - return fov_x, fov_y - - -class Camera: - def __init__(self, w2c, intrinsic, FoVx, FoVy, height, width, trans=np.array([0.0, 0.0, 0.0]), scale=1.0) -> None: - self.FoVx = FoVx - self.FoVy = FoVy - self.height = height - self.width = width - self.world_view_transform = w2c.transpose(0, 1) - - self.zfar = 100.0 - self.znear = 0.01 - - self.trans = trans - self.scale = scale - - self.projection_matrix = getProjectionMatrix(znear=self.znear, zfar=self.zfar, fovX=self.FoVx, fovY=self.FoVy).transpose(0,1).to(w2c.device) - self.full_proj_transform = (self.world_view_transform.unsqueeze(0).bmm(self.projection_matrix.unsqueeze(0))).squeeze(0) - self.camera_center = self.world_view_transform.inverse()[3, :3] - - @staticmethod - def from_c2w(c2w, intrinsic, height, width): - w2c = torch.inverse(c2w) - FoVx, FoVy = intrinsic_to_fov(intrinsic, w=torch.tensor(width, device=w2c.device), h=torch.tensor(height, device=w2c.device)) - return Camera(w2c=w2c, intrinsic=intrinsic, FoVx=FoVx, FoVy=FoVy, height=height, width=width) - -class GaussianModel(NamedTuple): - xyz: Tensor - opacity: Tensor - rotation: Tensor - scaling: Tensor - shs: Tensor - - def to_ply(self): - - xyz = self.xyz.detach().cpu().numpy() - normals = np.zeros_like(xyz) - features_dc = self.shs[:, :1] - features_rest = self.shs[:, 1:] - f_dc = features_dc.detach().flatten(start_dim=1).contiguous().cpu().numpy() - f_rest = features_rest.detach().flatten(start_dim=1).contiguous().cpu().numpy() - opacities = inverse_sigmoid(torch.clamp(self.opacity, 1e-3, 1 - 1e-3).detach().cpu().numpy()) - scale = np.log(self.scaling.detach().cpu().numpy()) - rotation = self.rotation.detach().cpu().numpy() - - return write_gs_ply(xyz, normals, f_dc, f_rest, opacities, scale, rotation, construct_list_of_gs_attributes(features_dc, features_rest, self.scaling, self.rotation)) - -class GSLayer(BaseModule): - @dataclass - class Config(BaseModule.Config): - in_channels: int = 128 - feature_channels: dict = field(default_factory=dict) - xyz_offset: bool = True - restrict_offset: bool = False - use_rgb: bool = False - clip_scaling: Optional[float] = None - init_scaling: float = -5.0 - init_density: float = 0.1 - - cfg: Config - - def configure(self, *args, **kwargs) -> None: - self.out_layers = nn.ModuleList() - for key, out_ch in self.cfg.feature_channels.items(): - if key == "shs" and self.cfg.use_rgb: - out_ch = 3 - layer = nn.Linear(self.cfg.in_channels, out_ch) - - # initialize - if not (key == "shs" and self.cfg.use_rgb): - nn.init.constant_(layer.weight, 0) - nn.init.constant_(layer.bias, 0) - if key == "scaling": - nn.init.constant_(layer.bias, self.cfg.init_scaling) - elif key == "rotation": - nn.init.constant_(layer.bias, 0) - nn.init.constant_(layer.bias[0], 1.0) - elif key == "opacity": - nn.init.constant_(layer.bias, inverse_sigmoid(self.cfg.init_density)) - - self.out_layers.append(layer) - - def forward(self, x, pts): - ret = {} - for k, layer in zip(self.cfg.feature_channels.keys(), self.out_layers): - v = layer(x) - if k == "rotation": - v = torch.nn.functional.normalize(v) - elif k == "scaling": - v = trunc_exp(v) - if self.cfg.clip_scaling is not None: - v = torch.clamp(v, min=0, max=self.cfg.clip_scaling) - elif k == "opacity": - v = torch.sigmoid(v) - elif k == "shs": - if self.cfg.use_rgb: - v = torch.sigmoid(v) - v = torch.reshape(v, (v.shape[0], -1, 3)) - elif k == "xyz": - if self.cfg.restrict_offset: - max_step = 1.2 / 32 - v = (torch.sigmoid(v) - 0.5) * max_step - v = v + pts if self.cfg.xyz_offset else pts - ret[k] = v - - return GaussianModel(**ret) - -class GS3DRenderer(BaseModule): - @dataclass - class Config(BaseModule.Config): - mlp_network_config: Optional[dict] = None - gs_out: dict = field(default_factory=dict) - sh_degree: int = 3 - scaling_modifier: float = 1.0 - random_background: bool = False - radius: float = 1.0 - feature_reduction: str = "concat" - projection_feature_dim: int = 773 - background_color: Tuple[float, float, float] = field( - default_factory=lambda: (1.0, 1.0, 1.0) - ) - - cfg: Config - - def configure(self, *args, **kwargs) -> None: - if self.cfg.feature_reduction == "mean": - mlp_in = 80 - elif self.cfg.feature_reduction == "concat": - mlp_in = 80 * 3 - else: - raise NotImplementedError - mlp_in = mlp_in + self.cfg.projection_feature_dim - if self.cfg.mlp_network_config is not None: - self.mlp_net = MLP(mlp_in, self.cfg.gs_out.in_channels, **self.cfg.mlp_network_config) - else: - self.cfg.gs_out.in_channels = mlp_in - self.gs_net = GSLayer(self.cfg.gs_out) - - def forward_gs(self, x, p): - if self.cfg.mlp_network_config is not None: - x = self.mlp_net(x) - return self.gs_net(x, p) - - def forward_single_view(self, - gs: GaussianModel, - viewpoint_camera: Camera, - background_color: Optional[Float[Tensor, "3"]], - ret_mask: bool = True, - ): - # Create zero tensor. We will use it to make pytorch return gradients of the 2D (screen-space) means - screenspace_points = torch.zeros_like(gs.xyz, dtype=gs.xyz.dtype, requires_grad=True, device=self.device) + 0 - try: - screenspace_points.retain_grad() - except: - pass - - bg_color = background_color - # Set up rasterization configuration - tanfovx = math.tan(viewpoint_camera.FoVx * 0.5) - tanfovy = math.tan(viewpoint_camera.FoVy * 0.5) - - raster_settings = GaussianRasterizationSettings( - image_height=int(viewpoint_camera.height), - image_width=int(viewpoint_camera.width), - tanfovx=tanfovx, - tanfovy=tanfovy, - bg=bg_color, - scale_modifier=self.cfg.scaling_modifier, - viewmatrix=viewpoint_camera.world_view_transform, - projmatrix=viewpoint_camera.full_proj_transform.float(), - sh_degree=self.cfg.sh_degree, - campos=viewpoint_camera.camera_center, - prefiltered=False, - debug=False - ) - - rasterizer = GaussianRasterizer(raster_settings=raster_settings) - - means3D = gs.xyz - means2D = screenspace_points - opacity = gs.opacity - - # If precomputed 3d covariance is provided, use it. If not, then it will be computed from - # scaling / rotation by the rasterizer. - scales = None - rotations = None - cov3D_precomp = None - scales = gs.scaling - rotations = gs.rotation - - # If precomputed colors are provided, use them. Otherwise, if it is desired to precompute colors - # from SHs in Python, do it. If not, then SH -> RGB conversion will be done by rasterizer. - shs = None - colors_precomp = None - if self.gs_net.cfg.use_rgb: - colors_precomp = gs.shs.squeeze(1) - else: - shs = gs.shs - - # Rasterize visible Gaussians to image, obtain their radii (on screen). - with torch.autocast(device_type=self.device.type, dtype=torch.float32): - rendered_image, radii, rendered_depth, rendered_alpha = rasterizer( - means3D = means3D, - means2D = means2D, - shs = shs, - colors_precomp = colors_precomp, - opacities = opacity, - scales = scales, - rotations = rotations, - cov3D_precomp = cov3D_precomp) - - ret = { - "comp_rgb": rendered_image.permute(1, 2, 0), - "comp_rgb_bg": bg_color - } - - if ret_mask: - mask_bg_color = torch.zeros(3, dtype=torch.float32, device=self.device) - raster_settings = GaussianRasterizationSettings( - image_height=int(viewpoint_camera.height), - image_width=int(viewpoint_camera.width), - tanfovx=tanfovx, - tanfovy=tanfovy, - bg=mask_bg_color, - scale_modifier=self.cfg.scaling_modifier, - viewmatrix=viewpoint_camera.world_view_transform, - projmatrix=viewpoint_camera.full_proj_transform.float(), - sh_degree=0, - campos=viewpoint_camera.camera_center, - prefiltered=False, - debug=False - ) - rasterizer = GaussianRasterizer(raster_settings=raster_settings) - - with torch.autocast(device_type=self.device.type, dtype=torch.float32): - rendered_mask, radii, rendered_depth, rendered_alpha = rasterizer( - means3D = means3D, - means2D = means2D, - # shs = , - colors_precomp = torch.ones_like(means3D), - opacities = opacity, - scales = scales, - rotations = rotations, - cov3D_precomp = cov3D_precomp) - ret["comp_mask"] = rendered_mask.permute(1, 2, 0) - - return ret - - def query_triplane( - self, - positions: Float[Tensor, "*B N 3"], - triplanes: Float[Tensor, "*B 3 Cp Hp Wp"], - ) -> Dict[str, Tensor]: - batched = positions.ndim == 3 - if not batched: - # no batch dimension - triplanes = triplanes[None, ...] - positions = positions[None, ...] - - positions = scale_tensor(positions, (-self.cfg.radius, self.cfg.radius), (-1, 1)) - indices2D: Float[Tensor, "B 3 N 2"] = torch.stack( - (positions[..., [0, 1]], positions[..., [0, 2]], positions[..., [1, 2]]), - dim=-3, - ) - out: Float[Tensor, "B3 Cp 1 N"] = F.grid_sample( - rearrange(triplanes, "B Np Cp Hp Wp -> (B Np) Cp Hp Wp", Np=3), - rearrange(indices2D, "B Np N Nd -> (B Np) () N Nd", Np=3), - align_corners=False, - mode="bilinear", - ) - if self.cfg.feature_reduction == "concat": - out = rearrange(out, "(B Np) Cp () N -> B N (Np Cp)", Np=3) - elif self.cfg.feature_reduction == "mean": - out = reduce(out, "(B Np) Cp () N -> B N Cp", Np=3, reduction="mean") - else: - raise NotImplementedError - - if not batched: - out = out.squeeze(0) - - return out - - def forward_single_batch( - self, - gs_hidden_features: Float[Tensor, "Np Cp"], - query_points: Float[Tensor, "Np 3"], - c2ws: Float[Tensor, "Nv 4 4"], - intrinsics: Float[Tensor, "Nv 4 4"], - height: int, - width: int, - background_color: Optional[Float[Tensor, "3"]], - ): - gs: GaussianModel = self.forward_gs(gs_hidden_features, query_points) - out_list = [] - - for c2w, intrinsic in zip(c2ws, intrinsics): - out_list.append(self.forward_single_view( - gs, - Camera.from_c2w(c2w, intrinsic, height, width), - background_color - )) - - out = defaultdict(list) - for out_ in out_list: - for k, v in out_.items(): - out[k].append(v) - out = {k: torch.stack(v, dim=0) for k, v in out.items()} - out["3dgs"] = gs - - return out - - def forward(self, - gs_hidden_features: Float[Tensor, "B Np Cp"], - query_points: Float[Tensor, "B Np 3"], - c2w: Float[Tensor, "B Nv 4 4"], - intrinsic: Float[Tensor, "B Nv 4 4"], - height, - width, - additional_features: Optional[Float[Tensor, "B C H W"]] = None, - background_color: Optional[Float[Tensor, "B 3"]] = None, - **kwargs): - batch_size = gs_hidden_features.shape[0] - out_list = [] - gs_hidden_features = self.query_triplane(query_points, gs_hidden_features) - if additional_features is not None: - gs_hidden_features = torch.cat([gs_hidden_features, additional_features], dim=-1) - - for b in range(batch_size): - out_list.append(self.forward_single_batch( - gs_hidden_features[b], - query_points[b], - c2w[b], - intrinsic[b], - height, width, - background_color[b] if background_color is not None else None)) - - out = defaultdict(list) - for out_ in out_list: - for k, v in out_.items(): - out[k].append(v) - for k, v in out.items(): - if isinstance(v[0], torch.Tensor): - out[k] = torch.stack(v, dim=0) - else: - out[k] = v - return out - \ No newline at end of file diff --git a/tgs/models/snowflake/LICENSE b/tgs/models/snowflake/LICENSE deleted file mode 100644 index 01c2b54..0000000 --- a/tgs/models/snowflake/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2021 AllenXiang - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/tgs/models/snowflake/SPD.py b/tgs/models/snowflake/SPD.py deleted file mode 100644 index eae592c..0000000 --- a/tgs/models/snowflake/SPD.py +++ /dev/null @@ -1,68 +0,0 @@ -# -*- coding: utf-8 -*- -# @Author: Peng Xiang - -import torch -import torch.nn as nn -from .utils import MLP_Res, MLP_CONV -from .skip_transformer import SkipTransformer - - -class SPD(nn.Module): - def __init__(self, dim_feat=512, up_factor=2, i=0, radius=1, bounding=True, global_feat=True): - """Snowflake Point Deconvolution""" - super(SPD, self).__init__() - self.i = i - self.up_factor = up_factor - - self.bounding = bounding - self.radius = radius - - self.global_feat = global_feat - self.ps_dim = 32 if global_feat else 64 - - self.mlp_1 = MLP_CONV(in_channel=3, layer_dims=[64, 128]) - self.mlp_2 = MLP_CONV(in_channel=128 * 2 + dim_feat if self.global_feat else 128, layer_dims=[256, 128]) - - self.skip_transformer = SkipTransformer(in_channel=128, dim=64) - - self.mlp_ps = MLP_CONV(in_channel=128, layer_dims=[64, self.ps_dim]) - self.ps = nn.ConvTranspose1d(self.ps_dim, 128, up_factor, up_factor, bias=False) # point-wise splitting - - self.up_sampler = nn.Upsample(scale_factor=up_factor) - self.mlp_delta_feature = MLP_Res(in_dim=256, hidden_dim=128, out_dim=128) - - self.mlp_delta = MLP_CONV(in_channel=128, layer_dims=[64, 3]) - - def forward(self, pcd_prev, feat_global=None, K_prev=None): - """ - Args: - pcd_prev: Tensor, (B, 3, N_prev) - feat_global: Tensor, (B, dim_feat, 1) - K_prev: Tensor, (B, 128, N_prev) - - Returns: - pcd_child: Tensor, up sampled point cloud, (B, 3, N_prev * up_factor) - K_curr: Tensor, displacement feature of current step, (B, 128, N_prev * up_factor) - """ - b, _, n_prev = pcd_prev.shape - feat_1 = self.mlp_1(pcd_prev) - feat_1 = torch.cat([feat_1, - torch.max(feat_1, 2, keepdim=True)[0].repeat((1, 1, feat_1.size(2))), - feat_global.repeat(1, 1, feat_1.size(2))], 1) if self.global_feat else feat_1 - Q = self.mlp_2(feat_1) - - H = self.skip_transformer(pcd_prev, K_prev if K_prev is not None else Q, Q) - - feat_child = self.mlp_ps(H) - feat_child = self.ps(feat_child) # (B, 128, N_prev * up_factor) - H_up = self.up_sampler(H) - K_curr = self.mlp_delta_feature(torch.cat([feat_child, H_up], 1)) - - delta = self.mlp_delta(torch.relu(K_curr)) - if self.bounding: - delta = torch.tanh(delta) / self.radius**self.i # (B, 3, N_prev * up_factor) - - pcd_child = self.up_sampler(pcd_prev) - pcd_child = pcd_child + delta - - return pcd_child, K_curr \ No newline at end of file diff --git a/tgs/models/snowflake/SPD_crossattn.py b/tgs/models/snowflake/SPD_crossattn.py deleted file mode 100644 index 90273e9..0000000 --- a/tgs/models/snowflake/SPD_crossattn.py +++ /dev/null @@ -1,81 +0,0 @@ -# -*- coding: utf-8 -*- -# @Author: Peng Xiang - -import torch -import torch.nn as nn -from .utils import MLP_Res, MLP_CONV -from .skip_transformer import SkipTransformer -from .attention import ResidualTransformerBlock - -class SPD_crossattn(nn.Module): - def __init__(self, dim_feat=512, up_factor=2, i=0, radius=1, bounding=True, global_feat=True): - """Snowflake Point Deconvolution""" - super().__init__() - self.i = i - self.up_factor = up_factor - - self.bounding = bounding - self.radius = radius - - self.global_feat = global_feat - self.ps_dim = 32 if global_feat else 64 - - self.mlp_1 = MLP_CONV(in_channel=3, layer_dims=[64, 128]) - self.pcd_image_attn = ResidualTransformerBlock( - device=torch.device('cuda'), - dtype=torch.float32, - n_data=128, - width=128, - heads=8, - init_scale=1.0, - ) - - self.mlp_2 = MLP_CONV(in_channel=128 * 2 + dim_feat if self.global_feat else 128, layer_dims=[256, 128]) - - self.skip_transformer = SkipTransformer(in_channel=128, dim=64) - - self.mlp_ps = MLP_CONV(in_channel=128, layer_dims=[64, self.ps_dim]) - self.ps = nn.ConvTranspose1d(self.ps_dim, 128, up_factor, up_factor, bias=False) # point-wise splitting - - self.up_sampler = nn.Upsample(scale_factor=up_factor) - self.mlp_delta_feature = MLP_Res(in_dim=256, hidden_dim=128, out_dim=128) - - self.mlp_delta = MLP_CONV(in_channel=128, layer_dims=[64, 3]) - - def forward(self, pcd_prev, feat_global=None, K_prev=None): - """ - Args: - pcd_prev: Tensor, (B, 3, N_prev) - feat_global: Tensor, (B, dim_feat, 1) - K_prev: Tensor, (B, 128, N_prev) - - Returns: - pcd_child: Tensor, up sampled point cloud, (B, 3, N_prev * up_factor) - K_curr: Tensor, displacement feature of current step, (B, 128, N_prev * up_factor) - """ - b, _, n_prev = pcd_prev.shape - feat_1 = self.mlp_1(pcd_prev) - # feat_1 = torch.cat([feat_1, - # torch.max(feat_1, 2, keepdim=True)[0].repeat((1, 1, feat_1.size(2))), - # feat_global.repeat(1, 1, feat_1.size(2))], 1) if self.global_feat else feat_1 - feat_1 = torch.permute(feat_1, (0, 2, 1)) - feat_global = torch.permute(feat_global, (0, 2, 1)) - feat_1 = self.pcd_image_attn(feat_1, feat_global) - Q = torch.permute(feat_1, (0, 2, 1)) - # Q = self.mlp_2(feat_1) - - H = self.skip_transformer(pcd_prev, K_prev if K_prev is not None else Q, Q) - - feat_child = self.mlp_ps(H) - feat_child = self.ps(feat_child) # (B, 128, N_prev * up_factor) - H_up = self.up_sampler(H) - K_curr = self.mlp_delta_feature(torch.cat([feat_child, H_up], 1)) - - delta = self.mlp_delta(torch.relu(K_curr)) - if self.bounding: - delta = torch.tanh(delta) / self.radius**self.i # (B, 3, N_prev * up_factor) - - pcd_child = self.up_sampler(pcd_prev) - pcd_child = pcd_child + delta - - return pcd_child, K_curr \ No newline at end of file diff --git a/tgs/models/snowflake/SPD_pp.py b/tgs/models/snowflake/SPD_pp.py deleted file mode 100644 index 886444e..0000000 --- a/tgs/models/snowflake/SPD_pp.py +++ /dev/null @@ -1,71 +0,0 @@ - -import torch -import torch.nn as nn -from .utils import MLP_Res, MLP_CONV -from .skip_transformer import SkipTransformer - -class SPD_pp(nn.Module): - def __init__(self, dim_feat=512, up_factor=2, i=0, radius=1, bounding=True, global_feat=True): - """Snowflake Point Deconvolution""" - super(SPD_pp, self).__init__() - self.i = i - self.up_factor = up_factor - - self.bounding = bounding - self.radius = radius - - self.global_feat = global_feat - self.ps_dim = 32 if global_feat else 64 - - self.mlp_1 = MLP_CONV(in_channel=3, layer_dims=[64, 128]) - self.mlp_2 = MLP_CONV( - in_channel=128 * 2 + dim_feat if self.global_feat else 128, layer_dims=[256, 128]) - - self.skip_transformer = SkipTransformer(in_channel=128, dim=64) - - self.mlp_ps = MLP_CONV(in_channel=128, layer_dims=[64, self.ps_dim]) - self.ps = nn.ConvTranspose1d( - self.ps_dim, 128, up_factor, up_factor, bias=False) # point-wise splitting - - self.up_sampler = nn.Upsample(scale_factor=up_factor) - self.mlp_delta_feature = MLP_Res( - in_dim=256, hidden_dim=128, out_dim=128) - - self.mlp_delta = MLP_CONV(in_channel=128, layer_dims=[64, 3]) - - def forward(self, pcd_prev, feat_cond=None, K_prev=None): - """ - Args: - pcd_prev: Tensor, (B, 3, N_prev) - feat_cond: Tensor, (B, dim_feat, N_prev) - K_prev: Tensor, (B, 128, N_prev) - - Returns: - pcd_child: Tensor, up sampled point cloud, (B, 3, N_prev * up_factor) - K_curr: Tensor, displacement feature of current step, (B, 128, N_prev * up_factor) - """ - b, _, n_prev = pcd_prev.shape - feat_1 = self.mlp_1(pcd_prev) - feat_1 = torch.cat([feat_1, - torch.max(feat_1, 2, keepdim=True)[ - 0].repeat((1, 1, feat_1.size(2))), - feat_cond], 1) if self.global_feat else feat_1 - Q = self.mlp_2(feat_1) - - H = self.skip_transformer( - pcd_prev, K_prev if K_prev is not None else Q, Q) - - feat_child = self.mlp_ps(H) - feat_child = self.ps(feat_child) # (B, 128, N_prev * up_factor) - H_up = self.up_sampler(H) - K_curr = self.mlp_delta_feature(torch.cat([feat_child, H_up], 1)) - - delta = self.mlp_delta(torch.relu(K_curr)) - if self.bounding: - # (B, 3, N_prev * up_factor) - delta = torch.tanh(delta) / self.radius**self.i - - pcd_child = self.up_sampler(pcd_prev) - pcd_child = pcd_child + delta - - return pcd_child, K_curr diff --git a/tgs/models/snowflake/attention.py b/tgs/models/snowflake/attention.py deleted file mode 100644 index 51d4d80..0000000 --- a/tgs/models/snowflake/attention.py +++ /dev/null @@ -1,239 +0,0 @@ -import torch -import torch.nn as nn -import math -import math -from typing import Optional -from typing import Callable, Iterable, Sequence, Union - -import torch - -def checkpoint( - func: Callable[..., Union[torch.Tensor, Sequence[torch.Tensor]]], - inputs: Sequence[torch.Tensor], - params: Iterable[torch.Tensor], - flag: bool, -): - """ - Evaluate a function without caching intermediate activations, allowing for - reduced memory at the expense of extra compute in the backward pass. - :param func: the function to evaluate. - :param inputs: the argument sequence to pass to `func`. - :param params: a sequence of parameters `func` depends on but does not - explicitly take as arguments. - :param flag: if False, disable gradient checkpointing. - """ - if flag: - args = tuple(inputs) + tuple(params) - return CheckpointFunction.apply(func, len(inputs), *args) - else: - return func(*inputs) - - -class CheckpointFunction(torch.autograd.Function): - @staticmethod - def forward(ctx, run_function, length, *args): - ctx.run_function = run_function - ctx.input_tensors = list(args[:length]) - ctx.input_params = list(args[length:]) - with torch.no_grad(): - output_tensors = ctx.run_function(*ctx.input_tensors) - return output_tensors - - @staticmethod - def backward(ctx, *output_grads): - ctx.input_tensors = [x.detach().requires_grad_(True) - for x in ctx.input_tensors] - with torch.enable_grad(): - # Fixes a bug where the first op in run_function modifies the - # Tensor storage in place, which is not allowed for detach()'d - # Tensors. - shallow_copies = [x.view_as(x) for x in ctx.input_tensors] - output_tensors = ctx.run_function(*shallow_copies) - input_grads = torch.autograd.grad( - output_tensors, - ctx.input_tensors + ctx.input_params, - output_grads, - allow_unused=True, - ) - del ctx.input_tensors - del ctx.input_params - del output_tensors - return (None, None) + input_grads - - -def init_linear(l, stddev): - nn.init.normal_(l.weight, std=stddev) - if l.bias is not None: - nn.init.constant_(l.bias, 0.0) - -class MLP(nn.Module): - def __init__(self, *, device: torch.device, dtype: torch.dtype, width: int, init_scale: float): - super().__init__() - self.width = width - self.c_fc = nn.Linear(width, width * 4, device=device, dtype=dtype) - self.c_proj = nn.Linear(width * 4, width, device=device, dtype=dtype) - self.gelu = nn.GELU() - init_linear(self.c_fc, init_scale) - init_linear(self.c_proj, init_scale) - - def forward(self, x): - return self.c_proj(self.gelu(self.c_fc(x))) - -class QKVMultiheadCrossAttention(nn.Module): - def __init__(self, *, device: torch.device, dtype: torch.dtype, heads: int, n_data: int): - super().__init__() - self.device = device - self.dtype = dtype - self.heads = heads - self.n_data = n_data - - def forward(self, q, kv): - _, n_ctx, _ = q.shape - bs, n_data, width = kv.shape - attn_ch = width // self.heads // 2 - scale = 1 / math.sqrt(math.sqrt(attn_ch)) - q = q.view(bs, n_ctx, self.heads, -1) - kv = kv.view(bs, n_data, self.heads, -1) - k, v = torch.split(kv, attn_ch, dim=-1) - weight = torch.einsum( - "bthc,bshc->bhts", q * scale, k * scale - ) # More stable with f16 than dividing afterwards - wdtype = weight.dtype - weight = torch.softmax(weight.float(), dim=-1).type(wdtype) - return torch.einsum("bhts,bshc->bthc", weight, v).reshape(bs, n_ctx, -1) - - - -class QKVMultiheadAttention(nn.Module): - def __init__(self, *, device: torch.device, dtype: torch.dtype, heads: int, n_ctx: int): - super().__init__() - self.device = device - self.dtype = dtype - self.heads = heads - self.n_ctx = n_ctx - - def forward(self, qkv): - bs, n_ctx, width = qkv.shape - attn_ch = width // self.heads // 3 - scale = 1 / math.sqrt(math.sqrt(attn_ch)) - qkv = qkv.view(bs, n_ctx, self.heads, -1) - q, k, v = torch.split(qkv, attn_ch, dim=-1) - weight = torch.einsum( - "bthc,bshc->bhts", q * scale, k * scale - ) # More stable with f16 than dividing afterwards - wdtype = weight.dtype - weight = torch.softmax(weight.float(), dim=-1).type(wdtype) - return torch.einsum("bhts,bshc->bthc", weight, v).reshape(bs, n_ctx, -1) - - - -class MultiheadCrossAttention(nn.Module): - def __init__( - self, - *, - device: torch.device, - dtype: torch.dtype, - n_data: int, - width: int, - heads: int, - init_scale: float, - data_width: Optional[int] = None, - ): - super().__init__() - self.n_data = n_data - self.width = width - self.heads = heads - self.data_width = width if data_width is None else data_width - self.c_q = nn.Linear(width, width, device=device, dtype=dtype) - self.c_kv = nn.Linear(self.data_width, width * 2, - device=device, dtype=dtype) - self.c_proj = nn.Linear(width, width, device=device, dtype=dtype) - self.attention = QKVMultiheadCrossAttention( - device=device, dtype=dtype, heads=heads, n_data=n_data - ) - init_linear(self.c_q, init_scale) - init_linear(self.c_kv, init_scale) - init_linear(self.c_proj, init_scale) - - def forward(self, x, data): - x = self.c_q(x) - data = self.c_kv(data) - x = checkpoint(self.attention, (x, data), (), True) - x = self.c_proj(x) - return x - - -class MultiheadAttention(nn.Module): - def __init__( - self, - *, - device: torch.device, - dtype: torch.dtype, - n_ctx: int, - width: int, - heads: int, - init_scale: float, - ): - super().__init__() - self.n_ctx = n_ctx - self.width = width - self.heads = heads - self.c_qkv = nn.Linear(width, width * 3, device=device, dtype=dtype) - self.c_proj = nn.Linear(width, width, device=device, dtype=dtype) - self.attention = QKVMultiheadAttention(device=device, dtype=dtype, heads=heads, n_ctx=n_ctx) - init_linear(self.c_qkv, init_scale) - init_linear(self.c_proj, init_scale) - - def forward(self, x): - x = self.c_qkv(x) - x = checkpoint(self.attention, (x,), (), True) - x = self.c_proj(x) - return x - - -class ResidualTransformerBlock(nn.Module): - def __init__( - self, - *, - device: torch.device, - dtype: torch.dtype, - n_data: int, - width: int, - heads: int, - data_width: Optional[int] = None, - init_scale: float = 1.0, - ): - super().__init__() - - if data_width is None: - data_width = width - - self.attn_cross = MultiheadCrossAttention( - device=device, - dtype=dtype, - n_data=n_data, - width=width, - heads=heads, - data_width=data_width, - init_scale=init_scale, - ) - self.attn_self = MultiheadAttention( - device=device, - dtype=dtype, - n_ctx=n_data, - width=width, - heads=heads, - init_scale=init_scale, - ) - self.ln_1 = nn.LayerNorm(width, device=device, dtype=dtype) - self.ln_2 = nn.LayerNorm(data_width, device=device, dtype=dtype) - self.ln_3 = nn.LayerNorm(width, device=device, dtype=dtype) - self.mlp = MLP(device=device, dtype=dtype, - width=width, init_scale=init_scale) - self.ln_4 = nn.LayerNorm(width, device=device, dtype=dtype) - - def forward(self, x: torch.Tensor, data: torch.Tensor): - x = x + self.attn_cross(self.ln_1(x), self.ln_2(data)) - x = x + self.attn_self(self.ln_3(x)) - x = x + self.mlp(self.ln_4(x)) - return x \ No newline at end of file diff --git a/tgs/models/snowflake/model_spdpp.py b/tgs/models/snowflake/model_spdpp.py deleted file mode 100644 index 2cbb192..0000000 --- a/tgs/models/snowflake/model_spdpp.py +++ /dev/null @@ -1,188 +0,0 @@ -import torch -import torch.nn as nn -import torch.nn.functional as F - -from tgs.utils.base import BaseModule -from tgs.utils.typing import * -from dataclasses import dataclass, field - -from pytorch3d.renderer import ( - AlphaCompositor, - NormWeightedCompositor, - PointsRasterizationSettings, - PointsRasterizer, - PointsRenderer) -from pytorch3d.renderer.cameras import CamerasBase -from pytorch3d.structures import Pointclouds -from pytorch3d.utils.camera_conversions import cameras_from_opencv_projection - -from .utils import fps_subsample -from einops import rearrange - -from .utils import MLP_CONV -from .SPD import SPD -from .SPD_crossattn import SPD_crossattn -from .SPD_pp import SPD_pp - -SPD_BLOCK = { - 'SPD': SPD, - 'SPD_crossattn': SPD_crossattn, - 'SPD_PP': SPD_pp, -} - - -def points_projection(points: Float[Tensor, "B Np 3"], - c2ws: Float[Tensor, "B 4 4"], - intrinsics: Float[Tensor, "B 3 3"], - local_features: Float[Tensor, "B C H W"], - raster_point_radius: float = 0.0075, # point size - raster_points_per_pixel: int = 1, # a single point per pixel, for now - bin_size: int = 0): - """ - points: (B, Np, 3) - """ - - B, C, H, W = local_features.shape - device = local_features.device - raster_settings = PointsRasterizationSettings( - image_size=(H, W), - radius=raster_point_radius, - points_per_pixel=raster_points_per_pixel, - bin_size=bin_size, - ) - Np = points.shape[1] - c2ws = c2ws.transpose(0, 1).flatten(0, 1) - intrinsics = intrinsics.transpose(0, 1).flatten(0, 1) - R = raster_settings.points_per_pixel - w2cs = torch.inverse(c2ws) - image_size = torch.as_tensor([H, W]).view( - 1, 2).expand(w2cs.shape[0], -1).to(device) - cameras = cameras_from_opencv_projection( - w2cs[:, :3, :3], w2cs[:, :3, 3], intrinsics, image_size) - rasterize = PointsRasterizer( - cameras=cameras, raster_settings=raster_settings) - fragments = rasterize(Pointclouds(points)) - fragments_idx: Tensor = fragments.idx.long() - visible_pixels = (fragments_idx > -1) # (B, H, W, R) - points_to_visible_pixels = fragments_idx[visible_pixels] - # Reshape local features to (B, H, W, R, C) - local_features = local_features.permute( - 0, 2, 3, 1).unsqueeze(-2).expand(-1, -1, -1, R, -1) # (B, H, W, R, C) - # Get local features corresponding to visible points - local_features_proj = torch.zeros(B * Np, C, device=device) - local_features_proj[points_to_visible_pixels] = local_features[visible_pixels] - local_features_proj = local_features_proj.reshape(B, Np, C) - return local_features_proj - - -class Decoder(nn.Module): - def __init__(self, input_channels=1152, dim_feat=512, num_p0=512, - radius=1, bounding=True, up_factors=None, - SPD_type='SPD', - token_type='image_token' - ): - super(Decoder, self).__init__() - # self.decoder_coarse = SeedGenerator(dim_feat=dim_feat, num_pc=num_p0) - if up_factors is None: - up_factors = [1] - else: - up_factors = up_factors - uppers = [] - self.num_p0 = num_p0 - self.mlp_feat_cond = MLP_CONV(in_channel=input_channels, - layer_dims=[dim_feat*2, dim_feat]) - - for i, factor in enumerate(up_factors): - uppers.append( - SPD_BLOCK[SPD_type](dim_feat=dim_feat, up_factor=factor, - i=i, bounding=bounding, radius=radius)) - self.uppers = nn.ModuleList(uppers) - self.token_type = token_type - - def calculate_pcl_token(self, pcl_token, up_factor): - up_token = F.interpolate(pcl_token, scale_factor=up_factor, mode='nearest') - return up_token - - def calculate_image_token(self, pcd, input_image_tokens, batch): - """ - Args: - """ - batch_size, n_input_views = batch["rgb_cond"].shape[:2] - h_cond, w_cond = batch["rgb_cond"].shape[2:4] - input_image_tokens = rearrange( - input_image_tokens, '(B Nv) C Nt -> B (Nv Nt) C', Nv=n_input_views) - local_features = input_image_tokens[:, 1:].reshape( - batch_size, h_cond // 14, w_cond // 14, -1).permute(0, 3, 1, 2) - local_features = F.interpolate(local_features, size=( - h_cond, w_cond), mode='bilinear', align_corners=False) - batch['c2w_cond'][..., :3, 1:3] *= -1 - local_features_proj = points_projection( - pcd, - batch['c2w_cond'], - batch['intrinsic_cond'], - local_features, - ) - local_features_proj = local_features_proj.permute(0, 2, 1).contiguous() - return local_features_proj - - def forward(self, x): - """ - Args: - points: Tensor, (b, num_p0, 3) - feat_cond: Tensor, (b, dim_feat) dinov2: 325x768 - # partial_coarse: Tensor, (b, n_coarse, 3) - """ - points = x['points'] - if self.token_type == 'pcl_token': - feat_cond = x['pcl_token'] - elif self.token_type == 'image_token': - feat_cond = x['input_image_tokens'] - feat_cond = self.mlp_feat_cond(feat_cond) - arr_pcd = [] - feat_prev = None - - pcd = torch.permute(points, (0, 2, 1)).contiguous() - pcl_up_scale = 1 - for upper in self.uppers: - if self.token_type == 'pcl_token': - up_cond = self.calculate_pcl_token( - feat_cond, pcl_up_scale) - pcl_up_scale *= upper.up_factor - elif self.token_type == 'image_token': - up_cond = self.calculate_image_token(points, feat_cond, x) - pcd, feat_prev = upper(pcd, up_cond, feat_prev) - points = torch.permute(pcd, (0, 2, 1)).contiguous() - arr_pcd.append(points) - return arr_pcd - - -class SnowflakeModelSPDPP(BaseModule): - """ - apply PC^2 / PCL token to decoder - """ - @dataclass - class Config(BaseModule.Config): - input_channels: int = 1152 - dim_feat: int = 128 - num_p0: int = 512 - radius: float = 1 - bounding: bool = True - use_fps: bool = True - up_factors: List[int] = field(default_factory=lambda: [2, 2]) - image_full_token_cond: bool = False - SPD_type: str = 'SPD_PP' - token_type: str = 'pcl_token' - cfg: Config - - def configure(self) -> None: - super().configure() - self.decoder = Decoder(input_channels=self.cfg.input_channels, - dim_feat=self.cfg.dim_feat, num_p0=self.cfg.num_p0, - radius=self.cfg.radius, up_factors=self.cfg.up_factors, bounding=self.cfg.bounding, - SPD_type=self.cfg.SPD_type, - token_type=self.cfg.token_type - ) - - def forward(self, x): - results = self.decoder(x) - return results \ No newline at end of file diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/__init__.py b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/__init__.py deleted file mode 100644 index 5fd361f..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/__init__.py +++ /dev/null @@ -1,3 +0,0 @@ -import pointnet2_ops.pointnet2_modules -import pointnet2_ops.pointnet2_utils -from pointnet2_ops._version import __version__ diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/ball_query.h b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/ball_query.h deleted file mode 100644 index 1bbc638..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/ball_query.h +++ /dev/null @@ -1,5 +0,0 @@ -#pragma once -#include - -at::Tensor ball_query(at::Tensor new_xyz, at::Tensor xyz, const float radius, - const int nsample); diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/cuda_utils.h b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/cuda_utils.h deleted file mode 100644 index 0fd5b6e..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/cuda_utils.h +++ /dev/null @@ -1,41 +0,0 @@ -#ifndef _CUDA_UTILS_H -#define _CUDA_UTILS_H - -#include -#include -#include - -#include -#include - -#include - -#define TOTAL_THREADS 512 - -inline int opt_n_threads(int work_size) { - const int pow_2 = std::log(static_cast(work_size)) / std::log(2.0); - - return max(min(1 << pow_2, TOTAL_THREADS), 1); -} - -inline dim3 opt_block_config(int x, int y) { - const int x_threads = opt_n_threads(x); - const int y_threads = - max(min(opt_n_threads(y), TOTAL_THREADS / x_threads), 1); - dim3 block_config(x_threads, y_threads, 1); - - return block_config; -} - -#define CUDA_CHECK_ERRORS() \ - do { \ - cudaError_t err = cudaGetLastError(); \ - if (cudaSuccess != err) { \ - fprintf(stderr, "CUDA kernel failed : %s\n%s at L:%d in %s\n", \ - cudaGetErrorString(err), __PRETTY_FUNCTION__, __LINE__, \ - __FILE__); \ - exit(-1); \ - } \ - } while (0) - -#endif diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/group_points.h b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/group_points.h deleted file mode 100644 index ad20cda..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/group_points.h +++ /dev/null @@ -1,5 +0,0 @@ -#pragma once -#include - -at::Tensor group_points(at::Tensor points, at::Tensor idx); -at::Tensor group_points_grad(at::Tensor grad_out, at::Tensor idx, const int n); diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/interpolate.h b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/interpolate.h deleted file mode 100644 index 26b3464..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/interpolate.h +++ /dev/null @@ -1,10 +0,0 @@ -#pragma once - -#include -#include - -std::vector three_nn(at::Tensor unknowns, at::Tensor knows); -at::Tensor three_interpolate(at::Tensor points, at::Tensor idx, - at::Tensor weight); -at::Tensor three_interpolate_grad(at::Tensor grad_out, at::Tensor idx, - at::Tensor weight, const int m); diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/sampling.h b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/sampling.h deleted file mode 100644 index d795271..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/sampling.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once -#include - -at::Tensor gather_points(at::Tensor points, at::Tensor idx); -at::Tensor gather_points_grad(at::Tensor grad_out, at::Tensor idx, const int n); -at::Tensor furthest_point_sampling(at::Tensor points, const int nsamples); diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/utils.h b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/utils.h deleted file mode 100644 index 5f080ed..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/include/utils.h +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once -#include -#include - -#define CHECK_CUDA(x) \ - do { \ - AT_ASSERT(x.is_cuda(), #x " must be a CUDA tensor"); \ - } while (0) - -#define CHECK_CONTIGUOUS(x) \ - do { \ - AT_ASSERT(x.is_contiguous(), #x " must be a contiguous tensor"); \ - } while (0) - -#define CHECK_IS_INT(x) \ - do { \ - AT_ASSERT(x.scalar_type() == at::ScalarType::Int, \ - #x " must be an int tensor"); \ - } while (0) - -#define CHECK_IS_FLOAT(x) \ - do { \ - AT_ASSERT(x.scalar_type() == at::ScalarType::Float, \ - #x " must be a float tensor"); \ - } while (0) diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query.cpp b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query.cpp deleted file mode 100644 index b1797c1..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query.cpp +++ /dev/null @@ -1,32 +0,0 @@ -#include "ball_query.h" -#include "utils.h" - -void query_ball_point_kernel_wrapper(int b, int n, int m, float radius, - int nsample, const float *new_xyz, - const float *xyz, int *idx); - -at::Tensor ball_query(at::Tensor new_xyz, at::Tensor xyz, const float radius, - const int nsample) { - CHECK_CONTIGUOUS(new_xyz); - CHECK_CONTIGUOUS(xyz); - CHECK_IS_FLOAT(new_xyz); - CHECK_IS_FLOAT(xyz); - - if (new_xyz.is_cuda()) { - CHECK_CUDA(xyz); - } - - at::Tensor idx = - torch::zeros({new_xyz.size(0), new_xyz.size(1), nsample}, - at::device(new_xyz.device()).dtype(at::ScalarType::Int)); - - if (new_xyz.is_cuda()) { - query_ball_point_kernel_wrapper(xyz.size(0), xyz.size(1), new_xyz.size(1), - radius, nsample, new_xyz.data_ptr(), - xyz.data_ptr(), idx.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return idx; -} diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query_gpu.cu b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query_gpu.cu deleted file mode 100644 index 559aef9..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/ball_query_gpu.cu +++ /dev/null @@ -1,54 +0,0 @@ -#include -#include -#include - -#include "cuda_utils.h" - -// input: new_xyz(b, m, 3) xyz(b, n, 3) -// output: idx(b, m, nsample) -__global__ void query_ball_point_kernel(int b, int n, int m, float radius, - int nsample, - const float *__restrict__ new_xyz, - const float *__restrict__ xyz, - int *__restrict__ idx) { - int batch_index = blockIdx.x; - xyz += batch_index * n * 3; - new_xyz += batch_index * m * 3; - idx += m * nsample * batch_index; - - int index = threadIdx.x; - int stride = blockDim.x; - - float radius2 = radius * radius; - for (int j = index; j < m; j += stride) { - float new_x = new_xyz[j * 3 + 0]; - float new_y = new_xyz[j * 3 + 1]; - float new_z = new_xyz[j * 3 + 2]; - for (int k = 0, cnt = 0; k < n && cnt < nsample; ++k) { - float x = xyz[k * 3 + 0]; - float y = xyz[k * 3 + 1]; - float z = xyz[k * 3 + 2]; - float d2 = (new_x - x) * (new_x - x) + (new_y - y) * (new_y - y) + - (new_z - z) * (new_z - z); - if (d2 < radius2) { - if (cnt == 0) { - for (int l = 0; l < nsample; ++l) { - idx[j * nsample + l] = k; - } - } - idx[j * nsample + cnt] = k; - ++cnt; - } - } - } -} - -void query_ball_point_kernel_wrapper(int b, int n, int m, float radius, - int nsample, const float *new_xyz, - const float *xyz, int *idx) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - query_ball_point_kernel<<>>( - b, n, m, radius, nsample, new_xyz, xyz, idx); - - CUDA_CHECK_ERRORS(); -} diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/bindings.cpp b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/bindings.cpp deleted file mode 100644 index d1916ce..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/bindings.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ball_query.h" -#include "group_points.h" -#include "interpolate.h" -#include "sampling.h" - -PYBIND11_MODULE(TORCH_EXTENSION_NAME, m) { - m.def("gather_points", &gather_points); - m.def("gather_points_grad", &gather_points_grad); - m.def("furthest_point_sampling", &furthest_point_sampling); - - m.def("three_nn", &three_nn); - m.def("three_interpolate", &three_interpolate); - m.def("three_interpolate_grad", &three_interpolate_grad); - - m.def("ball_query", &ball_query); - - m.def("group_points", &group_points); - m.def("group_points_grad", &group_points_grad); -} diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points.cpp b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points.cpp deleted file mode 100644 index 285a4bd..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points.cpp +++ /dev/null @@ -1,62 +0,0 @@ -#include "group_points.h" -#include "utils.h" - -void group_points_kernel_wrapper(int b, int c, int n, int npoints, int nsample, - const float *points, const int *idx, - float *out); - -void group_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - int nsample, const float *grad_out, - const int *idx, float *grad_points); - -at::Tensor group_points(at::Tensor points, at::Tensor idx) { - CHECK_CONTIGUOUS(points); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(points); - CHECK_IS_INT(idx); - - if (points.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({points.size(0), points.size(1), idx.size(1), idx.size(2)}, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - group_points_kernel_wrapper(points.size(0), points.size(1), points.size(2), - idx.size(1), idx.size(2), - points.data_ptr(), idx.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} - -at::Tensor group_points_grad(at::Tensor grad_out, at::Tensor idx, const int n) { - CHECK_CONTIGUOUS(grad_out); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(grad_out); - CHECK_IS_INT(idx); - - if (grad_out.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({grad_out.size(0), grad_out.size(1), n}, - at::device(grad_out.device()).dtype(at::ScalarType::Float)); - - if (grad_out.is_cuda()) { - group_points_grad_kernel_wrapper( - grad_out.size(0), grad_out.size(1), n, idx.size(1), idx.size(2), - grad_out.data_ptr(), idx.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points_gpu.cu b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points_gpu.cu deleted file mode 100644 index 57c2b1b..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/group_points_gpu.cu +++ /dev/null @@ -1,75 +0,0 @@ -#include -#include - -#include "cuda_utils.h" - -// input: points(b, c, n) idx(b, npoints, nsample) -// output: out(b, c, npoints, nsample) -__global__ void group_points_kernel(int b, int c, int n, int npoints, - int nsample, - const float *__restrict__ points, - const int *__restrict__ idx, - float *__restrict__ out) { - int batch_index = blockIdx.x; - points += batch_index * n * c; - idx += batch_index * npoints * nsample; - out += batch_index * npoints * nsample * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * npoints; i += stride) { - const int l = i / npoints; - const int j = i % npoints; - for (int k = 0; k < nsample; ++k) { - int ii = idx[j * nsample + k]; - out[(l * npoints + j) * nsample + k] = points[l * n + ii]; - } - } -} - -void group_points_kernel_wrapper(int b, int c, int n, int npoints, int nsample, - const float *points, const int *idx, - float *out) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - - group_points_kernel<<>>( - b, c, n, npoints, nsample, points, idx, out); - - CUDA_CHECK_ERRORS(); -} - -// input: grad_out(b, c, npoints, nsample), idx(b, npoints, nsample) -// output: grad_points(b, c, n) -__global__ void group_points_grad_kernel(int b, int c, int n, int npoints, - int nsample, - const float *__restrict__ grad_out, - const int *__restrict__ idx, - float *__restrict__ grad_points) { - int batch_index = blockIdx.x; - grad_out += batch_index * npoints * nsample * c; - idx += batch_index * npoints * nsample; - grad_points += batch_index * n * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * npoints; i += stride) { - const int l = i / npoints; - const int j = i % npoints; - for (int k = 0; k < nsample; ++k) { - int ii = idx[j * nsample + k]; - atomicAdd(grad_points + l * n + ii, - grad_out[(l * npoints + j) * nsample + k]); - } - } -} - -void group_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - int nsample, const float *grad_out, - const int *idx, float *grad_points) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - - group_points_grad_kernel<<>>( - b, c, n, npoints, nsample, grad_out, idx, grad_points); - - CUDA_CHECK_ERRORS(); -} diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate.cpp b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate.cpp deleted file mode 100644 index cdee31c..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate.cpp +++ /dev/null @@ -1,99 +0,0 @@ -#include "interpolate.h" -#include "utils.h" - -void three_nn_kernel_wrapper(int b, int n, int m, const float *unknown, - const float *known, float *dist2, int *idx); -void three_interpolate_kernel_wrapper(int b, int c, int m, int n, - const float *points, const int *idx, - const float *weight, float *out); -void three_interpolate_grad_kernel_wrapper(int b, int c, int n, int m, - const float *grad_out, - const int *idx, const float *weight, - float *grad_points); - -std::vector three_nn(at::Tensor unknowns, at::Tensor knows) { - CHECK_CONTIGUOUS(unknowns); - CHECK_CONTIGUOUS(knows); - CHECK_IS_FLOAT(unknowns); - CHECK_IS_FLOAT(knows); - - if (unknowns.is_cuda()) { - CHECK_CUDA(knows); - } - - at::Tensor idx = - torch::zeros({unknowns.size(0), unknowns.size(1), 3}, - at::device(unknowns.device()).dtype(at::ScalarType::Int)); - at::Tensor dist2 = - torch::zeros({unknowns.size(0), unknowns.size(1), 3}, - at::device(unknowns.device()).dtype(at::ScalarType::Float)); - - if (unknowns.is_cuda()) { - three_nn_kernel_wrapper(unknowns.size(0), unknowns.size(1), knows.size(1), - unknowns.data_ptr(), knows.data_ptr(), - dist2.data_ptr(), idx.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return {dist2, idx}; -} - -at::Tensor three_interpolate(at::Tensor points, at::Tensor idx, - at::Tensor weight) { - CHECK_CONTIGUOUS(points); - CHECK_CONTIGUOUS(idx); - CHECK_CONTIGUOUS(weight); - CHECK_IS_FLOAT(points); - CHECK_IS_INT(idx); - CHECK_IS_FLOAT(weight); - - if (points.is_cuda()) { - CHECK_CUDA(idx); - CHECK_CUDA(weight); - } - - at::Tensor output = - torch::zeros({points.size(0), points.size(1), idx.size(1)}, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - three_interpolate_kernel_wrapper( - points.size(0), points.size(1), points.size(2), idx.size(1), - points.data_ptr(), idx.data_ptr(), weight.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} -at::Tensor three_interpolate_grad(at::Tensor grad_out, at::Tensor idx, - at::Tensor weight, const int m) { - CHECK_CONTIGUOUS(grad_out); - CHECK_CONTIGUOUS(idx); - CHECK_CONTIGUOUS(weight); - CHECK_IS_FLOAT(grad_out); - CHECK_IS_INT(idx); - CHECK_IS_FLOAT(weight); - - if (grad_out.is_cuda()) { - CHECK_CUDA(idx); - CHECK_CUDA(weight); - } - - at::Tensor output = - torch::zeros({grad_out.size(0), grad_out.size(1), m}, - at::device(grad_out.device()).dtype(at::ScalarType::Float)); - - if (grad_out.is_cuda()) { - three_interpolate_grad_kernel_wrapper( - grad_out.size(0), grad_out.size(1), grad_out.size(2), m, - grad_out.data_ptr(), idx.data_ptr(), - weight.data_ptr(), output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate_gpu.cu b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate_gpu.cu deleted file mode 100644 index 81c5548..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/interpolate_gpu.cu +++ /dev/null @@ -1,154 +0,0 @@ -#include -#include -#include - -#include "cuda_utils.h" - -// input: unknown(b, n, 3) known(b, m, 3) -// output: dist2(b, n, 3), idx(b, n, 3) -__global__ void three_nn_kernel(int b, int n, int m, - const float *__restrict__ unknown, - const float *__restrict__ known, - float *__restrict__ dist2, - int *__restrict__ idx) { - int batch_index = blockIdx.x; - unknown += batch_index * n * 3; - known += batch_index * m * 3; - dist2 += batch_index * n * 3; - idx += batch_index * n * 3; - - int index = threadIdx.x; - int stride = blockDim.x; - for (int j = index; j < n; j += stride) { - float ux = unknown[j * 3 + 0]; - float uy = unknown[j * 3 + 1]; - float uz = unknown[j * 3 + 2]; - - double best1 = 1e40, best2 = 1e40, best3 = 1e40; - int besti1 = 0, besti2 = 0, besti3 = 0; - for (int k = 0; k < m; ++k) { - float x = known[k * 3 + 0]; - float y = known[k * 3 + 1]; - float z = known[k * 3 + 2]; - float d = (ux - x) * (ux - x) + (uy - y) * (uy - y) + (uz - z) * (uz - z); - if (d < best1) { - best3 = best2; - besti3 = besti2; - best2 = best1; - besti2 = besti1; - best1 = d; - besti1 = k; - } else if (d < best2) { - best3 = best2; - besti3 = besti2; - best2 = d; - besti2 = k; - } else if (d < best3) { - best3 = d; - besti3 = k; - } - } - dist2[j * 3 + 0] = best1; - dist2[j * 3 + 1] = best2; - dist2[j * 3 + 2] = best3; - - idx[j * 3 + 0] = besti1; - idx[j * 3 + 1] = besti2; - idx[j * 3 + 2] = besti3; - } -} - -void three_nn_kernel_wrapper(int b, int n, int m, const float *unknown, - const float *known, float *dist2, int *idx) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - three_nn_kernel<<>>(b, n, m, unknown, known, - dist2, idx); - - CUDA_CHECK_ERRORS(); -} - -// input: points(b, c, m), idx(b, n, 3), weight(b, n, 3) -// output: out(b, c, n) -__global__ void three_interpolate_kernel(int b, int c, int m, int n, - const float *__restrict__ points, - const int *__restrict__ idx, - const float *__restrict__ weight, - float *__restrict__ out) { - int batch_index = blockIdx.x; - points += batch_index * m * c; - - idx += batch_index * n * 3; - weight += batch_index * n * 3; - - out += batch_index * n * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * n; i += stride) { - const int l = i / n; - const int j = i % n; - float w1 = weight[j * 3 + 0]; - float w2 = weight[j * 3 + 1]; - float w3 = weight[j * 3 + 2]; - - int i1 = idx[j * 3 + 0]; - int i2 = idx[j * 3 + 1]; - int i3 = idx[j * 3 + 2]; - - out[i] = points[l * m + i1] * w1 + points[l * m + i2] * w2 + - points[l * m + i3] * w3; - } -} - -void three_interpolate_kernel_wrapper(int b, int c, int m, int n, - const float *points, const int *idx, - const float *weight, float *out) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - three_interpolate_kernel<<>>( - b, c, m, n, points, idx, weight, out); - - CUDA_CHECK_ERRORS(); -} - -// input: grad_out(b, c, n), idx(b, n, 3), weight(b, n, 3) -// output: grad_points(b, c, m) - -__global__ void three_interpolate_grad_kernel( - int b, int c, int n, int m, const float *__restrict__ grad_out, - const int *__restrict__ idx, const float *__restrict__ weight, - float *__restrict__ grad_points) { - int batch_index = blockIdx.x; - grad_out += batch_index * n * c; - idx += batch_index * n * 3; - weight += batch_index * n * 3; - grad_points += batch_index * m * c; - - const int index = threadIdx.y * blockDim.x + threadIdx.x; - const int stride = blockDim.y * blockDim.x; - for (int i = index; i < c * n; i += stride) { - const int l = i / n; - const int j = i % n; - float w1 = weight[j * 3 + 0]; - float w2 = weight[j * 3 + 1]; - float w3 = weight[j * 3 + 2]; - - int i1 = idx[j * 3 + 0]; - int i2 = idx[j * 3 + 1]; - int i3 = idx[j * 3 + 2]; - - atomicAdd(grad_points + l * m + i1, grad_out[i] * w1); - atomicAdd(grad_points + l * m + i2, grad_out[i] * w2); - atomicAdd(grad_points + l * m + i3, grad_out[i] * w3); - } -} - -void three_interpolate_grad_kernel_wrapper(int b, int c, int n, int m, - const float *grad_out, - const int *idx, const float *weight, - float *grad_points) { - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - three_interpolate_grad_kernel<<>>( - b, c, n, m, grad_out, idx, weight, grad_points); - - CUDA_CHECK_ERRORS(); -} diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling.cpp b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling.cpp deleted file mode 100644 index ddbdc11..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling.cpp +++ /dev/null @@ -1,87 +0,0 @@ -#include "sampling.h" -#include "utils.h" - -void gather_points_kernel_wrapper(int b, int c, int n, int npoints, - const float *points, const int *idx, - float *out); -void gather_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - const float *grad_out, const int *idx, - float *grad_points); - -void furthest_point_sampling_kernel_wrapper(int b, int n, int m, - const float *dataset, float *temp, - int *idxs); - -at::Tensor gather_points(at::Tensor points, at::Tensor idx) { - CHECK_CONTIGUOUS(points); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(points); - CHECK_IS_INT(idx); - - if (points.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({points.size(0), points.size(1), idx.size(1)}, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - gather_points_kernel_wrapper(points.size(0), points.size(1), points.size(2), - idx.size(1), points.data_ptr(), - idx.data_ptr(), output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} - -at::Tensor gather_points_grad(at::Tensor grad_out, at::Tensor idx, - const int n) { - CHECK_CONTIGUOUS(grad_out); - CHECK_CONTIGUOUS(idx); - CHECK_IS_FLOAT(grad_out); - CHECK_IS_INT(idx); - - if (grad_out.is_cuda()) { - CHECK_CUDA(idx); - } - - at::Tensor output = - torch::zeros({grad_out.size(0), grad_out.size(1), n}, - at::device(grad_out.device()).dtype(at::ScalarType::Float)); - - if (grad_out.is_cuda()) { - gather_points_grad_kernel_wrapper(grad_out.size(0), grad_out.size(1), n, - idx.size(1), grad_out.data_ptr(), - idx.data_ptr(), - output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} -at::Tensor furthest_point_sampling(at::Tensor points, const int nsamples) { - CHECK_CONTIGUOUS(points); - CHECK_IS_FLOAT(points); - - at::Tensor output = - torch::zeros({points.size(0), nsamples}, - at::device(points.device()).dtype(at::ScalarType::Int)); - - at::Tensor tmp = - torch::full({points.size(0), points.size(1)}, 1e10, - at::device(points.device()).dtype(at::ScalarType::Float)); - - if (points.is_cuda()) { - furthest_point_sampling_kernel_wrapper( - points.size(0), points.size(1), nsamples, points.data_ptr(), - tmp.data_ptr(), output.data_ptr()); - } else { - AT_ASSERT(false, "CPU not supported"); - } - - return output; -} diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling_gpu.cu b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling_gpu.cu deleted file mode 100644 index fc573f0..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_ext-src/src/sampling_gpu.cu +++ /dev/null @@ -1,229 +0,0 @@ -#include -#include - -#include "cuda_utils.h" - -// input: points(b, c, n) idx(b, m) -// output: out(b, c, m) -__global__ void gather_points_kernel(int b, int c, int n, int m, - const float *__restrict__ points, - const int *__restrict__ idx, - float *__restrict__ out) { - for (int i = blockIdx.x; i < b; i += gridDim.x) { - for (int l = blockIdx.y; l < c; l += gridDim.y) { - for (int j = threadIdx.x; j < m; j += blockDim.x) { - int a = idx[i * m + j]; - out[(i * c + l) * m + j] = points[(i * c + l) * n + a]; - } - } - } -} - -void gather_points_kernel_wrapper(int b, int c, int n, int npoints, - const float *points, const int *idx, - float *out) { - gather_points_kernel<<>>(b, c, n, npoints, - points, idx, out); - - CUDA_CHECK_ERRORS(); -} - -// input: grad_out(b, c, m) idx(b, m) -// output: grad_points(b, c, n) -__global__ void gather_points_grad_kernel(int b, int c, int n, int m, - const float *__restrict__ grad_out, - const int *__restrict__ idx, - float *__restrict__ grad_points) { - for (int i = blockIdx.x; i < b; i += gridDim.x) { - for (int l = blockIdx.y; l < c; l += gridDim.y) { - for (int j = threadIdx.x; j < m; j += blockDim.x) { - int a = idx[i * m + j]; - atomicAdd(grad_points + (i * c + l) * n + a, - grad_out[(i * c + l) * m + j]); - } - } - } -} - -void gather_points_grad_kernel_wrapper(int b, int c, int n, int npoints, - const float *grad_out, const int *idx, - float *grad_points) { - gather_points_grad_kernel<<>>( - b, c, n, npoints, grad_out, idx, grad_points); - - CUDA_CHECK_ERRORS(); -} - -__device__ void __update(float *__restrict__ dists, int *__restrict__ dists_i, - int idx1, int idx2) { - const float v1 = dists[idx1], v2 = dists[idx2]; - const int i1 = dists_i[idx1], i2 = dists_i[idx2]; - dists[idx1] = max(v1, v2); - dists_i[idx1] = v2 > v1 ? i2 : i1; -} - -// Input dataset: (b, n, 3), tmp: (b, n) -// Ouput idxs (b, m) -template -__global__ void furthest_point_sampling_kernel( - int b, int n, int m, const float *__restrict__ dataset, - float *__restrict__ temp, int *__restrict__ idxs) { - if (m <= 0) return; - __shared__ float dists[block_size]; - __shared__ int dists_i[block_size]; - - int batch_index = blockIdx.x; - dataset += batch_index * n * 3; - temp += batch_index * n; - idxs += batch_index * m; - - int tid = threadIdx.x; - const int stride = block_size; - - int old = 0; - if (threadIdx.x == 0) idxs[0] = old; - - __syncthreads(); - for (int j = 1; j < m; j++) { - int besti = 0; - float best = -1; - float x1 = dataset[old * 3 + 0]; - float y1 = dataset[old * 3 + 1]; - float z1 = dataset[old * 3 + 2]; - for (int k = tid; k < n; k += stride) { - float x2, y2, z2; - x2 = dataset[k * 3 + 0]; - y2 = dataset[k * 3 + 1]; - z2 = dataset[k * 3 + 2]; - float mag = (x2 * x2) + (y2 * y2) + (z2 * z2); - if (mag <= 1e-3) continue; - - float d = - (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1) + (z2 - z1) * (z2 - z1); - - float d2 = min(d, temp[k]); - temp[k] = d2; - besti = d2 > best ? k : besti; - best = d2 > best ? d2 : best; - } - dists[tid] = best; - dists_i[tid] = besti; - __syncthreads(); - - if (block_size >= 512) { - if (tid < 256) { - __update(dists, dists_i, tid, tid + 256); - } - __syncthreads(); - } - if (block_size >= 256) { - if (tid < 128) { - __update(dists, dists_i, tid, tid + 128); - } - __syncthreads(); - } - if (block_size >= 128) { - if (tid < 64) { - __update(dists, dists_i, tid, tid + 64); - } - __syncthreads(); - } - if (block_size >= 64) { - if (tid < 32) { - __update(dists, dists_i, tid, tid + 32); - } - __syncthreads(); - } - if (block_size >= 32) { - if (tid < 16) { - __update(dists, dists_i, tid, tid + 16); - } - __syncthreads(); - } - if (block_size >= 16) { - if (tid < 8) { - __update(dists, dists_i, tid, tid + 8); - } - __syncthreads(); - } - if (block_size >= 8) { - if (tid < 4) { - __update(dists, dists_i, tid, tid + 4); - } - __syncthreads(); - } - if (block_size >= 4) { - if (tid < 2) { - __update(dists, dists_i, tid, tid + 2); - } - __syncthreads(); - } - if (block_size >= 2) { - if (tid < 1) { - __update(dists, dists_i, tid, tid + 1); - } - __syncthreads(); - } - - old = dists_i[0]; - if (tid == 0) idxs[j] = old; - } -} - -void furthest_point_sampling_kernel_wrapper(int b, int n, int m, - const float *dataset, float *temp, - int *idxs) { - unsigned int n_threads = opt_n_threads(n); - - cudaStream_t stream = at::cuda::getCurrentCUDAStream(); - - switch (n_threads) { - case 512: - furthest_point_sampling_kernel<512> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 256: - furthest_point_sampling_kernel<256> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 128: - furthest_point_sampling_kernel<128> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 64: - furthest_point_sampling_kernel<64> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 32: - furthest_point_sampling_kernel<32> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 16: - furthest_point_sampling_kernel<16> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 8: - furthest_point_sampling_kernel<8> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 4: - furthest_point_sampling_kernel<4> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 2: - furthest_point_sampling_kernel<2> - <<>>(b, n, m, dataset, temp, idxs); - break; - case 1: - furthest_point_sampling_kernel<1> - <<>>(b, n, m, dataset, temp, idxs); - break; - default: - furthest_point_sampling_kernel<512> - <<>>(b, n, m, dataset, temp, idxs); - } - - CUDA_CHECK_ERRORS(); -} diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_version.py b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_version.py deleted file mode 100644 index 528787c..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/_version.py +++ /dev/null @@ -1 +0,0 @@ -__version__ = "3.0.0" diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_modules.py b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_modules.py deleted file mode 100644 index a0ad4f6..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_modules.py +++ /dev/null @@ -1,209 +0,0 @@ -from typing import List, Optional, Tuple - -import torch -import torch.nn as nn -import torch.nn.functional as F -from pointnet2_ops import pointnet2_utils - - -def build_shared_mlp(mlp_spec: List[int], bn: bool = True): - layers = [] - for i in range(1, len(mlp_spec)): - layers.append( - nn.Conv2d(mlp_spec[i - 1], mlp_spec[i], kernel_size=1, bias=not bn) - ) - if bn: - layers.append(nn.BatchNorm2d(mlp_spec[i])) - layers.append(nn.ReLU(True)) - - return nn.Sequential(*layers) - - -class _PointnetSAModuleBase(nn.Module): - def __init__(self): - super(_PointnetSAModuleBase, self).__init__() - self.npoint = None - self.groupers = None - self.mlps = None - - def forward( - self, xyz: torch.Tensor, features: Optional[torch.Tensor] - ) -> Tuple[torch.Tensor, torch.Tensor]: - r""" - Parameters - ---------- - xyz : torch.Tensor - (B, N, 3) tensor of the xyz coordinates of the features - features : torch.Tensor - (B, C, N) tensor of the descriptors of the the features - - Returns - ------- - new_xyz : torch.Tensor - (B, npoint, 3) tensor of the new features' xyz - new_features : torch.Tensor - (B, \sum_k(mlps[k][-1]), npoint) tensor of the new_features descriptors - """ - - new_features_list = [] - - xyz_flipped = xyz.transpose(1, 2).contiguous() - new_xyz = ( - pointnet2_utils.gather_operation( - xyz_flipped, pointnet2_utils.furthest_point_sample(xyz, self.npoint) - ) - .transpose(1, 2) - .contiguous() - if self.npoint is not None - else None - ) - - for i in range(len(self.groupers)): - new_features = self.groupers[i]( - xyz, new_xyz, features - ) # (B, C, npoint, nsample) - - new_features = self.mlps[i](new_features) # (B, mlp[-1], npoint, nsample) - new_features = F.max_pool2d( - new_features, kernel_size=[1, new_features.size(3)] - ) # (B, mlp[-1], npoint, 1) - new_features = new_features.squeeze(-1) # (B, mlp[-1], npoint) - - new_features_list.append(new_features) - - return new_xyz, torch.cat(new_features_list, dim=1) - - -class PointnetSAModuleMSG(_PointnetSAModuleBase): - r"""Pointnet set abstrction layer with multiscale grouping - - Parameters - ---------- - npoint : int - Number of features - radii : list of float32 - list of radii to group with - nsamples : list of int32 - Number of samples in each ball query - mlps : list of list of int32 - Spec of the pointnet before the global max_pool for each scale - bn : bool - Use batchnorm - """ - - def __init__(self, npoint, radii, nsamples, mlps, bn=True, use_xyz=True): - # type: (PointnetSAModuleMSG, int, List[float], List[int], List[List[int]], bool, bool) -> None - super(PointnetSAModuleMSG, self).__init__() - - assert len(radii) == len(nsamples) == len(mlps) - - self.npoint = npoint - self.groupers = nn.ModuleList() - self.mlps = nn.ModuleList() - for i in range(len(radii)): - radius = radii[i] - nsample = nsamples[i] - self.groupers.append( - pointnet2_utils.QueryAndGroup(radius, nsample, use_xyz=use_xyz) - if npoint is not None - else pointnet2_utils.GroupAll(use_xyz) - ) - mlp_spec = mlps[i] - if use_xyz: - mlp_spec[0] += 3 - - self.mlps.append(build_shared_mlp(mlp_spec, bn)) - - -class PointnetSAModule(PointnetSAModuleMSG): - r"""Pointnet set abstrction layer - - Parameters - ---------- - npoint : int - Number of features - radius : float - Radius of ball - nsample : int - Number of samples in the ball query - mlp : list - Spec of the pointnet before the global max_pool - bn : bool - Use batchnorm - """ - - def __init__( - self, mlp, npoint=None, radius=None, nsample=None, bn=True, use_xyz=True - ): - # type: (PointnetSAModule, List[int], int, float, int, bool, bool) -> None - super(PointnetSAModule, self).__init__( - mlps=[mlp], - npoint=npoint, - radii=[radius], - nsamples=[nsample], - bn=bn, - use_xyz=use_xyz, - ) - - -class PointnetFPModule(nn.Module): - r"""Propigates the features of one set to another - - Parameters - ---------- - mlp : list - Pointnet module parameters - bn : bool - Use batchnorm - """ - - def __init__(self, mlp, bn=True): - # type: (PointnetFPModule, List[int], bool) -> None - super(PointnetFPModule, self).__init__() - self.mlp = build_shared_mlp(mlp, bn=bn) - - def forward(self, unknown, known, unknow_feats, known_feats): - # type: (PointnetFPModule, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - Parameters - ---------- - unknown : torch.Tensor - (B, n, 3) tensor of the xyz positions of the unknown features - known : torch.Tensor - (B, m, 3) tensor of the xyz positions of the known features - unknow_feats : torch.Tensor - (B, C1, n) tensor of the features to be propigated to - known_feats : torch.Tensor - (B, C2, m) tensor of features to be propigated - - Returns - ------- - new_features : torch.Tensor - (B, mlp[-1], n) tensor of the features of the unknown features - """ - - if known is not None: - dist, idx = pointnet2_utils.three_nn(unknown, known) - dist_recip = 1.0 / (dist + 1e-8) - norm = torch.sum(dist_recip, dim=2, keepdim=True) - weight = dist_recip / norm - - interpolated_feats = pointnet2_utils.three_interpolate( - known_feats, idx, weight - ) - else: - interpolated_feats = known_feats.expand( - *(known_feats.size()[0:2] + [unknown.size(1)]) - ) - - if unknow_feats is not None: - new_features = torch.cat( - [interpolated_feats, unknow_feats], dim=1 - ) # (B, C2 + C1, n) - else: - new_features = interpolated_feats - - new_features = new_features.unsqueeze(-1) - new_features = self.mlp(new_features) - - return new_features.squeeze(-1) diff --git a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_utils.py b/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_utils.py deleted file mode 100644 index 150fccc..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/pointnet2_ops/pointnet2_utils.py +++ /dev/null @@ -1,379 +0,0 @@ -import torch -import torch.nn as nn -import warnings -from torch.autograd import Function -from typing import * - -try: - import pointnet2_ops._ext as _ext -except ImportError: - from torch.utils.cpp_extension import load - import glob - import os.path as osp - import os - - warnings.warn("Unable to load pointnet2_ops cpp extension. JIT Compiling.") - - _ext_src_root = osp.join(osp.dirname(__file__), "_ext-src") - _ext_sources = glob.glob(osp.join(_ext_src_root, "src", "*.cpp")) + glob.glob( - osp.join(_ext_src_root, "src", "*.cu") - ) - _ext_headers = glob.glob(osp.join(_ext_src_root, "include", "*")) - - os.environ["TORCH_CUDA_ARCH_LIST"] = "3.7+PTX;5.0;6.0;6.1;6.2;7.0;7.5" - _ext = load( - "_ext", - sources=_ext_sources, - extra_include_paths=[osp.join(_ext_src_root, "include")], - extra_cflags=["-O3"], - extra_cuda_cflags=["-O3", "-Xfatbin", "-compress-all"], - with_cuda=True, - ) - - -class FurthestPointSampling(Function): - @staticmethod - def forward(ctx, xyz, npoint): - # type: (Any, torch.Tensor, int) -> torch.Tensor - r""" - Uses iterative furthest point sampling to select a set of npoint features that have the largest - minimum distance - - Parameters - ---------- - xyz : torch.Tensor - (B, N, 3) tensor where N > npoint - npoint : int32 - number of features in the sampled set - - Returns - ------- - torch.Tensor - (B, npoint) tensor containing the set - """ - out = _ext.furthest_point_sampling(xyz, npoint) - - ctx.mark_non_differentiable(out) - - return out - - @staticmethod - def backward(ctx, grad_out): - return () - - -furthest_point_sample = FurthestPointSampling.apply - - -class GatherOperation(Function): - @staticmethod - def forward(ctx, features, idx): - # type: (Any, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - - Parameters - ---------- - features : torch.Tensor - (B, C, N) tensor - - idx : torch.Tensor - (B, npoint) tensor of the features to gather - - Returns - ------- - torch.Tensor - (B, C, npoint) tensor - """ - - ctx.save_for_backward(idx, features) - - return _ext.gather_points(features, idx) - - @staticmethod - def backward(ctx, grad_out): - idx, features = ctx.saved_tensors - N = features.size(2) - - grad_features = _ext.gather_points_grad(grad_out.contiguous(), idx, N) - return grad_features, None - - -gather_operation = GatherOperation.apply - - -class ThreeNN(Function): - @staticmethod - def forward(ctx, unknown, known): - # type: (Any, torch.Tensor, torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor] - r""" - Find the three nearest neighbors of unknown in known - Parameters - ---------- - unknown : torch.Tensor - (B, n, 3) tensor of known features - known : torch.Tensor - (B, m, 3) tensor of unknown features - - Returns - ------- - dist : torch.Tensor - (B, n, 3) l2 distance to the three nearest neighbors - idx : torch.Tensor - (B, n, 3) index of 3 nearest neighbors - """ - dist2, idx = _ext.three_nn(unknown, known) - dist = torch.sqrt(dist2) - - ctx.mark_non_differentiable(dist, idx) - - return dist, idx - - @staticmethod - def backward(ctx, grad_dist, grad_idx): - return () - - -three_nn = ThreeNN.apply - - -class ThreeInterpolate(Function): - @staticmethod - def forward(ctx, features, idx, weight): - # type(Any, torch.Tensor, torch.Tensor, torch.Tensor) -> Torch.Tensor - r""" - Performs weight linear interpolation on 3 features - Parameters - ---------- - features : torch.Tensor - (B, c, m) Features descriptors to be interpolated from - idx : torch.Tensor - (B, n, 3) three nearest neighbors of the target features in features - weight : torch.Tensor - (B, n, 3) weights - - Returns - ------- - torch.Tensor - (B, c, n) tensor of the interpolated features - """ - ctx.save_for_backward(idx, weight, features) - - return _ext.three_interpolate(features, idx, weight) - - @staticmethod - def backward(ctx, grad_out): - # type: (Any, torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor] - r""" - Parameters - ---------- - grad_out : torch.Tensor - (B, c, n) tensor with gradients of ouputs - - Returns - ------- - grad_features : torch.Tensor - (B, c, m) tensor with gradients of features - - None - - None - """ - idx, weight, features = ctx.saved_tensors - m = features.size(2) - - grad_features = _ext.three_interpolate_grad( - grad_out.contiguous(), idx, weight, m - ) - - return grad_features, torch.zeros_like(idx), torch.zeros_like(weight) - - -three_interpolate = ThreeInterpolate.apply - - -class GroupingOperation(Function): - @staticmethod - def forward(ctx, features, idx): - # type: (Any, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - - Parameters - ---------- - features : torch.Tensor - (B, C, N) tensor of features to group - idx : torch.Tensor - (B, npoint, nsample) tensor containing the indicies of features to group with - - Returns - ------- - torch.Tensor - (B, C, npoint, nsample) tensor - """ - ctx.save_for_backward(idx, features) - - return _ext.group_points(features, idx) - - @staticmethod - def backward(ctx, grad_out): - # type: (Any, torch.tensor) -> Tuple[torch.Tensor, torch.Tensor] - r""" - - Parameters - ---------- - grad_out : torch.Tensor - (B, C, npoint, nsample) tensor of the gradients of the output from forward - - Returns - ------- - torch.Tensor - (B, C, N) gradient of the features - None - """ - idx, features = ctx.saved_tensors - N = features.size(2) - - grad_features = _ext.group_points_grad(grad_out.contiguous(), idx, N) - - return grad_features, torch.zeros_like(idx) - - -grouping_operation = GroupingOperation.apply - - -class BallQuery(Function): - @staticmethod - def forward(ctx, radius, nsample, xyz, new_xyz): - # type: (Any, float, int, torch.Tensor, torch.Tensor) -> torch.Tensor - r""" - - Parameters - ---------- - radius : float - radius of the balls - nsample : int - maximum number of features in the balls - xyz : torch.Tensor - (B, N, 3) xyz coordinates of the features - new_xyz : torch.Tensor - (B, npoint, 3) centers of the ball query - - Returns - ------- - torch.Tensor - (B, npoint, nsample) tensor with the indicies of the features that form the query balls - """ - output = _ext.ball_query(new_xyz, xyz, radius, nsample) - - ctx.mark_non_differentiable(output) - - return output - - @staticmethod - def backward(ctx, grad_out): - return () - - -ball_query = BallQuery.apply - - -class QueryAndGroup(nn.Module): - r""" - Groups with a ball query of radius - - Parameters - --------- - radius : float32 - Radius of ball - nsample : int32 - Maximum number of features to gather in the ball - """ - - def __init__(self, radius, nsample, use_xyz=True): - # type: (QueryAndGroup, float, int, bool) -> None - super(QueryAndGroup, self).__init__() - self.radius, self.nsample, self.use_xyz = radius, nsample, use_xyz - - def forward(self, xyz, new_xyz, features=None): - # type: (QueryAndGroup, torch.Tensor. torch.Tensor, torch.Tensor) -> Tuple[Torch.Tensor] - r""" - Parameters - ---------- - xyz : torch.Tensor - xyz coordinates of the features (B, N, 3) - new_xyz : torch.Tensor - centriods (B, npoint, 3) - features : torch.Tensor - Descriptors of the features (B, C, N) - - Returns - ------- - new_features : torch.Tensor - (B, 3 + C, npoint, nsample) tensor - """ - - idx = ball_query(self.radius, self.nsample, xyz, new_xyz) - xyz_trans = xyz.transpose(1, 2).contiguous() - grouped_xyz = grouping_operation(xyz_trans, idx) # (B, 3, npoint, nsample) - grouped_xyz -= new_xyz.transpose(1, 2).unsqueeze(-1) - - if features is not None: - grouped_features = grouping_operation(features, idx) - if self.use_xyz: - new_features = torch.cat( - [grouped_xyz, grouped_features], dim=1 - ) # (B, C + 3, npoint, nsample) - else: - new_features = grouped_features - else: - assert ( - self.use_xyz - ), "Cannot have not features and not use xyz as a feature!" - new_features = grouped_xyz - - return new_features - - -class GroupAll(nn.Module): - r""" - Groups all features - - Parameters - --------- - """ - - def __init__(self, use_xyz=True): - # type: (GroupAll, bool) -> None - super(GroupAll, self).__init__() - self.use_xyz = use_xyz - - def forward(self, xyz, new_xyz, features=None): - # type: (GroupAll, torch.Tensor, torch.Tensor, torch.Tensor) -> Tuple[torch.Tensor] - r""" - Parameters - ---------- - xyz : torch.Tensor - xyz coordinates of the features (B, N, 3) - new_xyz : torch.Tensor - Ignored - features : torch.Tensor - Descriptors of the features (B, C, N) - - Returns - ------- - new_features : torch.Tensor - (B, C + 3, 1, N) tensor - """ - - grouped_xyz = xyz.transpose(1, 2).unsqueeze(2) - if features is not None: - grouped_features = features.unsqueeze(2) - if self.use_xyz: - new_features = torch.cat( - [grouped_xyz, grouped_features], dim=1 - ) # (B, 3 + C, 1, N) - else: - new_features = grouped_features - else: - new_features = grouped_xyz - - return new_features diff --git a/tgs/models/snowflake/pointnet2_ops_lib/setup.py b/tgs/models/snowflake/pointnet2_ops_lib/setup.py deleted file mode 100644 index fc39d02..0000000 --- a/tgs/models/snowflake/pointnet2_ops_lib/setup.py +++ /dev/null @@ -1,41 +0,0 @@ -import glob -import os -import os.path as osp - -from setuptools import find_packages, setup -import torch -from torch.utils.cpp_extension import BuildExtension, CUDAExtension - -this_dir = osp.dirname(osp.abspath(__file__)) -_ext_src_root = osp.join("pointnet2_ops", "_ext-src") -_ext_sources = glob.glob(osp.join(_ext_src_root, "src", "*.cpp")) + glob.glob( - osp.join(_ext_src_root, "src", "*.cu") -) -_ext_headers = glob.glob(osp.join(_ext_src_root, "include", "*")) - -requirements = [] - -exec(open(osp.join("pointnet2_ops", "_version.py")).read()) - -os.environ["TORCH_CUDA_ARCH_LIST"] = ".".join(map(str, torch.cuda.get_device_capability())) -# os.environ["TORCH_CUDA_ARCH_LIST"] = "5.0;6.0;6.1;6.2;7.0;7.5;8.0;8.6" -setup( - name="pointnet2_ops", - version=__version__, - author="Erik Wijmans", - packages=find_packages(), - install_requires=requirements, - ext_modules=[ - CUDAExtension( - name="pointnet2_ops._ext", - sources=_ext_sources, - extra_compile_args={ - "cxx": ["-O3"], - "nvcc": ["-O3", "-Xfatbin", "-compress-all"], - }, - include_dirs=[osp.join(this_dir, _ext_src_root, "include")], - ) - ], - cmdclass={"build_ext": BuildExtension}, - include_package_data=True, -) diff --git a/tgs/models/snowflake/skip_transformer.py b/tgs/models/snowflake/skip_transformer.py deleted file mode 100644 index 36462f7..0000000 --- a/tgs/models/snowflake/skip_transformer.py +++ /dev/null @@ -1,69 +0,0 @@ -# -*- coding: utf-8 -*- -# @Author: Peng Xiang - -import torch -from torch import nn, einsum -from .utils import MLP_Res, grouping_operation, query_knn - - -class SkipTransformer(nn.Module): - def __init__(self, in_channel, dim=256, n_knn=16, pos_hidden_dim=64, attn_hidden_multiplier=4): - super(SkipTransformer, self).__init__() - self.mlp_v = MLP_Res(in_dim=in_channel*2, hidden_dim=in_channel, out_dim=in_channel) - self.n_knn = n_knn - self.conv_key = nn.Conv1d(in_channel, dim, 1) - self.conv_query = nn.Conv1d(in_channel, dim, 1) - self.conv_value = nn.Conv1d(in_channel, dim, 1) - - self.pos_mlp = nn.Sequential( - nn.Conv2d(3, pos_hidden_dim, 1), - nn.BatchNorm2d(pos_hidden_dim), - nn.ReLU(), - nn.Conv2d(pos_hidden_dim, dim, 1) - ) - - self.attn_mlp = nn.Sequential( - nn.Conv2d(dim, dim * attn_hidden_multiplier, 1), - nn.BatchNorm2d(dim * attn_hidden_multiplier), - nn.ReLU(), - nn.Conv2d(dim * attn_hidden_multiplier, dim, 1) - ) - - self.conv_end = nn.Conv1d(dim, in_channel, 1) - - def forward(self, pos, key, query, include_self=True): - """ - Args: - pos: (B, 3, N) - key: (B, in_channel, N) - query: (B, in_channel, N) - include_self: boolean - - Returns: - Tensor: (B, in_channel, N), shape context feature - """ - value = self.mlp_v(torch.cat([key, query], 1)) - identity = value - key = self.conv_key(key) - query = self.conv_query(query) - value = self.conv_value(value) - b, dim, n = value.shape - - pos_flipped = pos.permute(0, 2, 1).contiguous() - idx_knn = query_knn(self.n_knn, pos_flipped, pos_flipped, include_self=include_self) - - key = grouping_operation(key, idx_knn) # b, dim, n, n_knn - qk_rel = query.reshape((b, -1, n, 1)) - key - - pos_rel = pos.reshape((b, -1, n, 1)) - grouping_operation(pos, idx_knn) # b, 3, n, n_knn - pos_embedding = self.pos_mlp(pos_rel) - - attention = self.attn_mlp(qk_rel + pos_embedding) # b, dim, n, n_knn - attention = torch.softmax(attention, -1) - - value = value.reshape((b, -1, n, 1)) + pos_embedding # - - agg = einsum('b c i j, b c i j -> b c i', attention, value) # b, dim, n - y = self.conv_end(agg) - - return y + identity diff --git a/tgs/models/snowflake/utils.py b/tgs/models/snowflake/utils.py deleted file mode 100644 index 6661e38..0000000 --- a/tgs/models/snowflake/utils.py +++ /dev/null @@ -1,741 +0,0 @@ -# -*- coding: utf-8 -*- -# @Author: Peng Xiang - -import types -import torch -import torch.nn.functional as F -import numpy as np -from torch import nn, einsum -from pointnet2_ops.pointnet2_utils import furthest_point_sample, \ - gather_operation, ball_query, three_nn, three_interpolate, grouping_operation - -class Conv1d(nn.Module): - def __init__(self, in_channel, out_channel, kernel_size=1, stride=1, if_bn=True, activation_fn=torch.relu): - super(Conv1d, self).__init__() - self.conv = nn.Conv1d(in_channel, out_channel, kernel_size, stride=stride) - self.if_bn = if_bn - self.bn = nn.BatchNorm1d(out_channel) - self.activation_fn = activation_fn - - def forward(self, input): - out = self.conv(input) - if self.if_bn: - out = self.bn(out) - - if self.activation_fn is not None: - out = self.activation_fn(out) - - return out - -class Conv2d(nn.Module): - def __init__(self, in_channel, out_channel, kernel_size=(1, 1), stride=(1, 1), if_bn=True, activation_fn=torch.relu): - super(Conv2d, self).__init__() - self.conv = nn.Conv2d(in_channel, out_channel, kernel_size, stride=stride) - self.if_bn = if_bn - self.bn = nn.BatchNorm2d(out_channel) - self.activation_fn = activation_fn - - def forward(self, input): - out = self.conv(input) - if self.if_bn: - out = self.bn(out) - - if self.activation_fn is not None: - out = self.activation_fn(out) - - return out - -class MLP(nn.Module): - def __init__(self, in_channel, layer_dims, bn=None): - super(MLP, self).__init__() - layers = [] - last_channel = in_channel - for out_channel in layer_dims[:-1]: - layers.append(nn.Linear(last_channel, out_channel)) - if bn: - layers.append(nn.BatchNorm1d(out_channel)) - layers.append(nn.ReLU()) - last_channel = out_channel - layers.append(nn.Linear(last_channel, layer_dims[-1])) - self.mlp = nn.Sequential(*layers) - - def forward(self, inputs): - return self.mlp(inputs) - -class MLP_CONV(nn.Module): - def __init__(self, in_channel, layer_dims, bn=None): - super(MLP_CONV, self).__init__() - layers = [] - last_channel = in_channel - for out_channel in layer_dims[:-1]: - layers.append(nn.Conv1d(last_channel, out_channel, 1)) - if bn: - layers.append(nn.BatchNorm1d(out_channel)) - layers.append(nn.ReLU()) - last_channel = out_channel - layers.append(nn.Conv1d(last_channel, layer_dims[-1], 1)) - self.mlp = nn.Sequential(*layers) - - def forward(self, inputs): - return self.mlp(inputs) - -class MLP_Res(nn.Module): - def __init__(self, in_dim=128, hidden_dim=None, out_dim=128): - super(MLP_Res, self).__init__() - if hidden_dim is None: - hidden_dim = in_dim - self.conv_1 = nn.Conv1d(in_dim, hidden_dim, 1) - self.conv_2 = nn.Conv1d(hidden_dim, out_dim, 1) - self.conv_shortcut = nn.Conv1d(in_dim, out_dim, 1) - - def forward(self, x): - """ - Args: - x: (B, out_dim, n) - """ - shortcut = self.conv_shortcut(x) - out = self.conv_2(torch.relu(self.conv_1(x))) + shortcut - return out - - -def sample_and_group(xyz, points, npoint, nsample, radius, use_xyz=True): - """ - Args: - xyz: Tensor, (B, 3, N) - points: Tensor, (B, f, N) - npoint: int - nsample: int - radius: float - use_xyz: boolean - - Returns: - new_xyz: Tensor, (B, 3, npoint) - new_points: Tensor, (B, 3 | f+3 | f, npoint, nsample) - idx_local: Tensor, (B, npoint, nsample) - grouped_xyz: Tensor, (B, 3, npoint, nsample) - - """ - xyz_flipped = xyz.permute(0, 2, 1).contiguous() # (B, N, 3) - new_xyz = gather_operation(xyz, furthest_point_sample(xyz_flipped, npoint)) # (B, 3, npoint) - - idx = ball_query(radius, nsample, xyz_flipped, new_xyz.permute(0, 2, 1).contiguous()) # (B, npoint, nsample) - grouped_xyz = grouping_operation(xyz, idx) # (B, 3, npoint, nsample) - grouped_xyz -= new_xyz.unsqueeze(3).repeat(1, 1, 1, nsample) - - if points is not None: - grouped_points = grouping_operation(points, idx) # (B, f, npoint, nsample) - if use_xyz: - new_points = torch.cat([grouped_xyz, grouped_points], 1) - else: - new_points = grouped_points - else: - new_points = grouped_xyz - - return new_xyz, new_points, idx, grouped_xyz - - -def sample_and_group_all(xyz, points, use_xyz=True): - """ - Args: - xyz: Tensor, (B, 3, nsample) - points: Tensor, (B, f, nsample) - use_xyz: boolean - - Returns: - new_xyz: Tensor, (B, 3, 1) - new_points: Tensor, (B, f|f+3|3, 1, nsample) - idx: Tensor, (B, 1, nsample) - grouped_xyz: Tensor, (B, 3, 1, nsample) - """ - b, _, nsample = xyz.shape - device = xyz.device - new_xyz = torch.zeros((1, 3, 1), dtype=torch.float, device=device).repeat(b, 1, 1) - grouped_xyz = xyz.reshape((b, 3, 1, nsample)) - idx = torch.arange(nsample, device=device).reshape(1, 1, nsample).repeat(b, 1, 1) - if points is not None: - if use_xyz: - new_points = torch.cat([xyz, points], 1) - else: - new_points = points - new_points = new_points.unsqueeze(2) - else: - new_points = grouped_xyz - - return new_xyz, new_points, idx, grouped_xyz - - -class PointNet_SA_Module(nn.Module): - def __init__(self, npoint, nsample, radius, in_channel, mlp, if_bn=True, group_all=False, use_xyz=True): - """ - Args: - npoint: int, number of points to sample - nsample: int, number of points in each local region - radius: float - in_channel: int, input channel of features(points) - mlp: list of int, - """ - super(PointNet_SA_Module, self).__init__() - self.npoint = npoint - self.nsample = nsample - self.radius = radius - self.mlp = mlp - self.group_all = group_all - self.use_xyz = use_xyz - if use_xyz: - in_channel += 3 - - last_channel = in_channel - self.mlp_conv = [] - for out_channel in mlp: - self.mlp_conv.append(Conv2d(last_channel, out_channel, if_bn=if_bn)) - last_channel = out_channel - - self.mlp_conv = nn.Sequential(*self.mlp_conv) - - def forward(self, xyz, points): - """ - Args: - xyz: Tensor, (B, 3, N) - points: Tensor, (B, f, N) - - Returns: - new_xyz: Tensor, (B, 3, npoint) - new_points: Tensor, (B, mlp[-1], npoint) - """ - if self.group_all: - new_xyz, new_points, idx, grouped_xyz = sample_and_group_all(xyz, points, self.use_xyz) - else: - new_xyz, new_points, idx, grouped_xyz = sample_and_group(xyz, points, self.npoint, self.nsample, self.radius, self.use_xyz) - - new_points = self.mlp_conv(new_points) - new_points = torch.max(new_points, 3)[0] - - return new_xyz, new_points - - -class PointNet_FP_Module(nn.Module): - def __init__(self, in_channel, mlp, use_points1=False, in_channel_points1=None, if_bn=True): - """ - Args: - in_channel: int, input channel of points2 - mlp: list of int - use_points1: boolean, if use points - in_channel_points1: int, input channel of points1 - """ - super(PointNet_FP_Module, self).__init__() - self.use_points1 = use_points1 - - if use_points1: - in_channel += in_channel_points1 - - last_channel = in_channel - self.mlp_conv = [] - for out_channel in mlp: - self.mlp_conv.append(Conv1d(last_channel, out_channel, if_bn=if_bn)) - last_channel = out_channel - - self.mlp_conv = nn.Sequential(*self.mlp_conv) - - def forward(self, xyz1, xyz2, points1, points2): - """ - Args: - xyz1: Tensor, (B, 3, N) - xyz2: Tensor, (B, 3, M) - points1: Tensor, (B, in_channel, N) - points2: Tensor, (B, in_channel, M) - - Returns:MLP_CONV - new_points: Tensor, (B, mlp[-1], N) - """ - dist, idx = three_nn(xyz1.permute(0, 2, 1).contiguous(), xyz2.permute(0, 2, 1).contiguous()) - dist = torch.clamp_min(dist, 1e-10) # (B, N, 3) - recip_dist = 1.0/dist - norm = torch.sum(recip_dist, 2, keepdim=True).repeat((1, 1, 3)) - weight = recip_dist / norm - interpolated_points = three_interpolate(points2, idx, weight) # B, in_channel, N - - if self.use_points1: - new_points = torch.cat([interpolated_points, points1], 1) - else: - new_points = interpolated_points - - new_points = self.mlp_conv(new_points) - return new_points - - -def square_distance(src, dst): - """ - Calculate Euclid distance between each two points. - - src^T * dst = xn * xm + yn * ym + zn * zm; - sum(src^2, dim=-1) = xn*xn + yn*yn + zn*zn; - sum(dst^2, dim=-1) = xm*xm + ym*ym + zm*zm; - dist = (xn - xm)^2 + (yn - ym)^2 + (zn - zm)^2 - = sum(src**2,dim=-1)+sum(dst**2,dim=-1)-2*src^T*dst - - Input: - src: source points, [B, N, C] - dst: target points, [B, M, C] - Output: - dist: per-point square distance, [B, N, M] - """ - B, N, _ = src.shape - _, M, _ = dst.shape - dist = -2 * torch.matmul(src, dst.permute(0, 2, 1)) # B, N, M - dist += torch.sum(src ** 2, -1).view(B, N, 1) - dist += torch.sum(dst ** 2, -1).view(B, 1, M) - return dist - - -def query_knn(nsample, xyz, new_xyz, include_self=True): - """Find k-NN of new_xyz in xyz""" - pad = 0 if include_self else 1 - sqrdists = square_distance(new_xyz, xyz) # B, S, N - idx = torch.argsort(sqrdists, dim=-1, descending=False)[:, :, pad: nsample+pad] - return idx.int() - - -def sample_and_group_knn(xyz, points, npoint, k, use_xyz=True, idx=None): - """ - Args: - xyz: Tensor, (B, 3, N) - points: Tensor, (B, f, N) - npoint: int - nsample: int - radius: float - use_xyz: boolean - - Returns: - new_xyz: Tensor, (B, 3, npoint) - new_points: Tensor, (B, 3 | f+3 | f, npoint, nsample) - idx_local: Tensor, (B, npoint, nsample) - grouped_xyz: Tensor, (B, 3, npoint, nsample) - - """ - xyz_flipped = xyz.permute(0, 2, 1).contiguous() # (B, N, 3) - new_xyz = gather_operation(xyz, furthest_point_sample(xyz_flipped, npoint)) # (B, 3, npoint) - if idx is None: - idx = query_knn(k, xyz_flipped, new_xyz.permute(0, 2, 1).contiguous()) - grouped_xyz = grouping_operation(xyz, idx) # (B, 3, npoint, nsample) - grouped_xyz -= new_xyz.unsqueeze(3).repeat(1, 1, 1, k) - - if points is not None: - grouped_points = grouping_operation(points, idx) # (B, f, npoint, nsample) - if use_xyz: - new_points = torch.cat([grouped_xyz, grouped_points], 1) - else: - new_points = grouped_points - else: - new_points = grouped_xyz - - return new_xyz, new_points, idx, grouped_xyz - - -class PointNet_SA_Module_KNN(nn.Module): - def __init__(self, npoint, nsample, in_channel, mlp, if_bn=True, group_all=False, use_xyz=True, if_idx=False): - """ - Args: - npoint: int, number of points to sample - nsample: int, number of points in each local region - radius: float - in_channel: int, input channel of features(points) - mlp: list of int, - """ - super(PointNet_SA_Module_KNN, self).__init__() - self.npoint = npoint - self.nsample = nsample - self.mlp = mlp - self.group_all = group_all - self.use_xyz = use_xyz - self.if_idx = if_idx - if use_xyz: - in_channel += 3 - - last_channel = in_channel - self.mlp_conv = [] - for out_channel in mlp[:-1]: - self.mlp_conv.append(Conv2d(last_channel, out_channel, if_bn=if_bn)) - last_channel = out_channel - self.mlp_conv.append(Conv2d(last_channel, mlp[-1], if_bn=False, activation_fn=None)) - self.mlp_conv = nn.Sequential(*self.mlp_conv) - - def forward(self, xyz, points, idx=None): - """ - Args: - xyz: Tensor, (B, 3, N) - points: Tensor, (B, f, N) - - Returns: - new_xyz: Tensor, (B, 3, npoint) - new_points: Tensor, (B, mlp[-1], npoint) - """ - if self.group_all: - new_xyz, new_points, idx, grouped_xyz = sample_and_group_all(xyz, points, self.use_xyz) - else: - new_xyz, new_points, idx, grouped_xyz = sample_and_group_knn(xyz, points, self.npoint, self.nsample, self.use_xyz, idx=idx) - - new_points = self.mlp_conv(new_points) - new_points = torch.max(new_points, 3)[0] - - if self.if_idx: - return new_xyz, new_points, idx - else: - return new_xyz, new_points - - -def fps_subsample(pcd, n_points=2048): - """ - Args - pcd: (b, 16384, 3) - - returns - new_pcd: (b, n_points, 3) - """ - new_pcd = gather_operation(pcd.permute(0, 2, 1).contiguous(), furthest_point_sample(pcd, n_points)) - new_pcd = new_pcd.permute(0, 2, 1).contiguous() - return new_pcd - - -class Transformer(nn.Module): - def __init__(self, in_channel, dim=256, n_knn=16, pos_hidden_dim=64, attn_hidden_multiplier=4): - super(Transformer, self).__init__() - self.n_knn = n_knn - self.conv_key = nn.Conv1d(dim, dim, 1) - self.conv_query = nn.Conv1d(dim, dim, 1) - self.conv_value = nn.Conv1d(dim, dim, 1) - - self.pos_mlp = nn.Sequential( - nn.Conv2d(3, pos_hidden_dim, 1), - nn.BatchNorm2d(pos_hidden_dim), - nn.ReLU(), - nn.Conv2d(pos_hidden_dim, dim, 1) - ) - - self.attn_mlp = nn.Sequential( - nn.Conv2d(dim, dim * attn_hidden_multiplier, 1), - nn.BatchNorm2d(dim * attn_hidden_multiplier), - nn.ReLU(), - nn.Conv2d(dim * attn_hidden_multiplier, dim, 1) - ) - - self.linear_start = nn.Conv1d(in_channel, dim, 1) - self.linear_end = nn.Conv1d(dim, in_channel, 1) - - def forward(self, x, pos): - """feed forward of transformer - Args: - x: Tensor of features, (B, in_channel, n) - pos: Tensor of positions, (B, 3, n) - - Returns: - y: Tensor of features with attention, (B, in_channel, n) - """ - - identity = x - - x = self.linear_start(x) - b, dim, n = x.shape - - pos_flipped = pos.permute(0, 2, 1).contiguous() - idx_knn = query_knn(self.n_knn, pos_flipped, pos_flipped) - key = self.conv_key(x) - value = self.conv_value(x) - query = self.conv_query(x) - - key = grouping_operation(key, idx_knn) # b, dim, n, n_knn - qk_rel = query.reshape((b, -1, n, 1)) - key - - pos_rel = pos.reshape((b, -1, n, 1)) - grouping_operation(pos, idx_knn) # b, 3, n, n_knn - pos_embedding = self.pos_mlp(pos_rel) # b, dim, n, n_knn - - attention = self.attn_mlp(qk_rel + pos_embedding) - attention = torch.softmax(attention, -1) - - value = value.reshape((b, -1, n, 1)) + pos_embedding - - agg = einsum('b c i j, b c i j -> b c i', attention, value) # b, dim, n - y = self.linear_end(agg) - - return y+identity - - -class CouplingLayer(nn.Module): - - def __init__(self, d, intermediate_dim, swap=False): - nn.Module.__init__(self) - self.d = d - (d // 2) - self.swap = swap - self.net_s_t = nn.Sequential( - nn.Linear(self.d, intermediate_dim), - nn.ReLU(inplace=True), - nn.Linear(intermediate_dim, intermediate_dim), - nn.ReLU(inplace=True), - nn.Linear(intermediate_dim, (d - self.d) * 2), - ) - - def forward(self, x, logpx=None, reverse=False): - - if self.swap: - x = torch.cat([x[:, self.d:], x[:, :self.d]], 1) - - in_dim = self.d - out_dim = x.shape[1] - self.d - - s_t = self.net_s_t(x[:, :in_dim]) - scale = torch.sigmoid(s_t[:, :out_dim] + 2.) - shift = s_t[:, out_dim:] - - logdetjac = torch.sum(torch.log(scale).view(scale.shape[0], -1), 1, keepdim=True) - - if not reverse: - y1 = x[:, self.d:] * scale + shift - delta_logp = -logdetjac - else: - y1 = (x[:, self.d:] - shift) / scale - delta_logp = logdetjac - - y = torch.cat([x[:, :self.d], y1], 1) if not self.swap else torch.cat([y1, x[:, :self.d]], 1) - - if logpx is None: - return y - else: - return y, logpx + delta_logp - - -class SequentialFlow(nn.Module): - """A generalized nn.Sequential container for normalizing flows. - """ - - def __init__(self, layersList): - super(SequentialFlow, self).__init__() - self.chain = nn.ModuleList(layersList) - - def forward(self, x, logpx=None, reverse=False, inds=None): - if inds is None: - if reverse: - inds = range(len(self.chain) - 1, -1, -1) - else: - inds = range(len(self.chain)) - - if logpx is None: - for i in inds: - x = self.chain[i](x, reverse=reverse) - return x - else: - for i in inds: - x, logpx = self.chain[i](x, logpx, reverse=reverse) - return x, logpx - - -def build_latent_flow(args): - chain = [] - for i in range(args.latent_flow_depth): - chain.append(CouplingLayer(args.latent_dim, args.latent_flow_hidden_dim, swap=(i % 2 == 0))) - return SequentialFlow(chain) - - -################## -## SpectralNorm ## -################## - -POWER_ITERATION_FN = "spectral_norm_power_iteration" - - -class SpectralNorm(object): - def __init__(self, name='weight', dim=0, eps=1e-12): - self.name = name - self.dim = dim - self.eps = eps - - def compute_weight(self, module, n_power_iterations): - if n_power_iterations < 0: - raise ValueError( - 'Expected n_power_iterations to be non-negative, but ' - 'got n_power_iterations={}'.format(n_power_iterations) - ) - - weight = getattr(module, self.name + '_orig') - u = getattr(module, self.name + '_u') - v = getattr(module, self.name + '_v') - weight_mat = weight - if self.dim != 0: - # permute dim to front - weight_mat = weight_mat.permute(self.dim, * [d for d in range(weight_mat.dim()) if d != self.dim]) - height = weight_mat.size(0) - weight_mat = weight_mat.reshape(height, -1) - with torch.no_grad(): - for _ in range(n_power_iterations): - # Spectral norm of weight equals to `u^T W v`, where `u` and `v` - # are the first left and right singular vectors. - # This power iteration produces approximations of `u` and `v`. - v = F.normalize(torch.matmul(weight_mat.t(), u), dim=0, eps=self.eps) - u = F.normalize(torch.matmul(weight_mat, v), dim=0, eps=self.eps) - setattr(module, self.name + '_u', u) - setattr(module, self.name + '_v', v) - - sigma = torch.dot(u, torch.matmul(weight_mat, v)) - weight = weight / sigma - setattr(module, self.name, weight) - - def remove(self, module): - weight = getattr(module, self.name) - delattr(module, self.name) - delattr(module, self.name + '_u') - delattr(module, self.name + '_orig') - module.register_parameter(self.name, torch.nn.Parameter(weight)) - - def get_update_method(self, module): - def update_fn(module, n_power_iterations): - self.compute_weight(module, n_power_iterations) - - return update_fn - - def __call__(self, module, unused_inputs): - del unused_inputs - self.compute_weight(module, n_power_iterations=0) - - # requires_grad might be either True or False during inference. - if not module.training: - r_g = getattr(module, self.name + '_orig').requires_grad - setattr(module, self.name, getattr(module, self.name).detach().requires_grad_(r_g)) - - @staticmethod - def apply(module, name, dim, eps): - fn = SpectralNorm(name, dim, eps) - weight = module._parameters[name] - height = weight.size(dim) - - u = F.normalize(weight.new_empty(height).normal_(0, 1), dim=0, eps=fn.eps) - v = F.normalize(weight.new_empty(int(weight.numel() / height)).normal_(0, 1), dim=0, eps=fn.eps) - delattr(module, fn.name) - module.register_parameter(fn.name + "_orig", weight) - # We still need to assign weight back as fn.name because all sorts of - # things may assume that it exists, e.g., when initializing weights. - # However, we can't directly assign as it could be an nn.Parameter and - # gets added as a parameter. Instead, we register weight.data as a - # buffer, which will cause weight to be included in the state dict - # and also supports nn.init due to shared storage. - module.register_buffer(fn.name, weight.data) - module.register_buffer(fn.name + "_u", u) - module.register_buffer(fn.name + "_v", v) - - setattr(module, POWER_ITERATION_FN, types.MethodType(fn.get_update_method(module), module)) - - module.register_forward_pre_hook(fn) - return fn - - -def inplace_spectral_norm(module, name='weight', dim=None, eps=1e-12): - r"""Applies spectral normalization to a parameter in the given module. - .. math:: - \mathbf{W} = \dfrac{\mathbf{W}}{\sigma(\mathbf{W})} \\ - \sigma(\mathbf{W}) = \max_{\mathbf{h}: \mathbf{h} \ne 0} \dfrac{\|\mathbf{W} \mathbf{h}\|_2}{\|\mathbf{h}\|_2} - Spectral normalization stabilizes the training of discriminators (critics) - in Generaive Adversarial Networks (GANs) by rescaling the weight tensor - with spectral norm :math:`\sigma` of the weight matrix calculated using - power iteration method. If the dimension of the weight tensor is greater - than 2, it is reshaped to 2D in power iteration method to get spectral - norm. This is implemented via a hook that calculates spectral norm and - rescales weight before every :meth:`~Module.forward` call. - See `Spectral Normalization for Generative Adversarial Networks`_ . - .. _`Spectral Normalization for Generative Adversarial Networks`: https://arxiv.org/abs/1802.05957 - Args: - module (nn.Module): containing module - name (str, optional): name of weight parameter - n_power_iterations (int, optional): number of power iterations to - calculate spectal norm - dim (int, optional): dimension corresponding to number of outputs, - the default is 0, except for modules that are instances of - ConvTranspose1/2/3d, when it is 1 - eps (float, optional): epsilon for numerical stability in - calculating norms - Returns: - The original module with the spectal norm hook - Example:: - >>> m = spectral_norm(nn.Linear(20, 40)) - Linear (20 -> 40) - >>> m.weight_u.size() - torch.Size([20]) - """ - if dim is None: - if isinstance(module, (torch.nn.ConvTranspose1d, torch.nn.ConvTranspose2d, torch.nn.ConvTranspose3d)): - dim = 1 - else: - dim = 0 - SpectralNorm.apply(module, name, dim=dim, eps=eps) - return module - - -def remove_spectral_norm(module, name='weight'): - r"""Removes the spectral normalization reparameterization from a module. - Args: - module (nn.Module): containing module - name (str, optional): name of weight parameter - Example: - >>> m = spectral_norm(nn.Linear(40, 10)) - >>> remove_spectral_norm(m) - """ - for k, hook in module._forward_pre_hooks.items(): - if isinstance(hook, SpectralNorm) and hook.name == name: - hook.remove(module) - del module._forward_pre_hooks[k] - return module - - raise ValueError("spectral_norm of '{}' not found in {}".format(name, module)) - - -def add_spectral_norm(model, logger=None): - """Applies spectral norm to all modules within the scope of a CNF.""" - - def apply_spectral_norm(module): - if 'weight' in module._parameters: - if logger: logger.info("Adding spectral norm to {}".format(module)) - inplace_spectral_norm(module, 'weight') - - def find_coupling_layer(module): - if isinstance(module, CouplingLayer): - module.apply(apply_spectral_norm) - else: - for child in module.children(): - find_coupling_layer(child) - - find_coupling_layer(model) - - -def spectral_norm_power_iteration(model, n_power_iterations=1): - - def recursive_power_iteration(module): - if hasattr(module, POWER_ITERATION_FN): - getattr(module, POWER_ITERATION_FN)(n_power_iterations) - - model.apply(recursive_power_iteration) - -def reparameterize_gaussian(mean, logvar): - std = torch.exp(0.5 * logvar) - eps = torch.randn(std.size()).to(mean) - return mean + std * eps - - - -def gaussian_entropy(logvar): - const = 0.5 * float(logvar.size(1)) * (1. + np.log(np.pi * 2)) - ent = 0.5 * logvar.sum(dim=1, keepdim=False) + const - return ent - - -def standard_normal_logprob(z): - dim = z.size(-1) - log_z = -0.5 * dim * np.log(2 * np.pi) - return log_z - z.pow(2) / 2 - -def truncated_normal_(tensor, mean=0, std=1, trunc_std=2): - """ - Taken from https://discuss.pytorch.org/t/implementing-truncated-normal-initializer/4778/15 - """ - size = tensor.shape - tmp = tensor.new_empty(size + (4,)).normal_() - valid = (tmp < trunc_std) & (tmp > -trunc_std) - ind = valid.max(-1, keepdim=True)[1] - tensor.data.copy_(tmp.gather(-1, ind).squeeze(-1)) - tensor.data.mul_(std).add_(mean) - return tensor \ No newline at end of file diff --git a/tgs/models/tokenizers/dinov2.py b/tgs/models/tokenizers/dinov2.py deleted file mode 100644 index 853aa89..0000000 --- a/tgs/models/tokenizers/dinov2.py +++ /dev/null @@ -1,1175 +0,0 @@ -# coding=utf-8 -# Copyright 2023 Meta AI and The HuggingFace Inc. team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -""" PyTorch DINOv2 model.""" - - -import collections.abc -import math -from typing import Dict, List, Optional, Set, Tuple, Union -from dataclasses import dataclass - -import torch -import torch.utils.checkpoint -from torch import nn -from torch.nn import BCEWithLogitsLoss, CrossEntropyLoss, MSELoss - -from transformers.activations import ACT2FN -from transformers.modeling_outputs import ( - BackboneOutput, - BaseModelOutput, - BaseModelOutputWithPooling, - ImageClassifierOutput, -) -from transformers.modeling_utils import PreTrainedModel -from transformers.pytorch_utils import ( - find_pruneable_heads_and_indices, - prune_linear_layer, -) -from transformers.utils import ( - add_code_sample_docstrings, - add_start_docstrings, - add_start_docstrings_to_model_forward, - logging, - replace_return_docstrings, -) -from transformers.utils.backbone_utils import BackboneMixin -from transformers.models.dinov2.configuration_dinov2 import Dinov2Config - -from tgs.models.transformers import MemoryEfficientAttentionMixin -from tgs.utils.typing import * - - -logger = logging.get_logger(__name__) - -# General docstring -_CONFIG_FOR_DOC = "Dinov2Config" - -# Base docstring -_CHECKPOINT_FOR_DOC = "facebook/dinov2-base" -_EXPECTED_OUTPUT_SHAPE = [1, 257, 768] - -# Image classification docstring -_IMAGE_CLASS_CHECKPOINT = "facebook/dinov2-base" - - -DINOV2_PRETRAINED_MODEL_ARCHIVE_LIST = [ - "facebook/dinov2-base", - # See all DINOv2 models at https://huggingface.co/models?filter=dinov2 -] - - -class Dinov2Embeddings(nn.Module): - """ - Construct the CLS token, mask token, position and patch embeddings. - """ - - def __init__(self, config: Dinov2Config) -> None: - super().__init__() - - self.cls_token = nn.Parameter(torch.randn(1, 1, config.hidden_size)) - # register as mask token as it's not used in optimization - # to avoid the use of find_unused_parameters_true - # self.mask_token = nn.Parameter(torch.zeros(1, config.hidden_size)) - self.register_buffer("mask_token", torch.zeros(1, config.hidden_size)) - self.patch_embeddings = Dinov2PatchEmbeddings(config) - num_patches = self.patch_embeddings.num_patches - self.position_embeddings = nn.Parameter( - torch.randn(1, num_patches + 1, config.hidden_size) - ) - self.dropout = nn.Dropout(config.hidden_dropout_prob) - self.config = config - - def interpolate_pos_encoding( - self, embeddings: torch.Tensor, height: int, width: int - ) -> torch.Tensor: - """ - This method allows to interpolate the pre-trained position encodings, to be able to use the model on higher - resolution images. - - Source: - https://github.com/facebookresearch/dino/blob/de9ee3df6cf39fac952ab558447af1fa1365362a/vision_transformer.py#L174 - """ - - num_patches = embeddings.shape[1] - 1 - num_positions = self.position_embeddings.shape[1] - 1 - if num_patches == num_positions and height == width: - return self.position_embeddings - class_pos_embed = self.position_embeddings[:, 0] - patch_pos_embed = self.position_embeddings[:, 1:] - dim = embeddings.shape[-1] - height = height // self.config.patch_size - width = width // self.config.patch_size - # we add a small number to avoid floating point error in the interpolation - # see discussion at https://github.com/facebookresearch/dino/issues/8 - height, width = height + 0.1, width + 0.1 - patch_pos_embed = patch_pos_embed.reshape( - 1, int(math.sqrt(num_positions)), int(math.sqrt(num_positions)), dim - ) - patch_pos_embed = patch_pos_embed.permute(0, 3, 1, 2) - patch_pos_embed = nn.functional.interpolate( - patch_pos_embed, - scale_factor=( - height / math.sqrt(num_positions), - width / math.sqrt(num_positions), - ), - mode="bicubic", - align_corners=False, - ) - if ( - int(height) != patch_pos_embed.shape[-2] - or int(width) != patch_pos_embed.shape[-1] - ): - raise ValueError( - "Width or height does not match with the interpolated position embeddings" - ) - patch_pos_embed = patch_pos_embed.permute(0, 2, 3, 1).view(1, -1, dim) - return torch.cat((class_pos_embed.unsqueeze(0), patch_pos_embed), dim=1) - - def forward( - self, pixel_values: torch.Tensor, bool_masked_pos: Optional[torch.Tensor] = None, - ) -> torch.Tensor: - batch_size, _, height, width = pixel_values.shape - patch_embeddings = self.patch_embeddings(pixel_values) - embeddings = patch_embeddings - - if bool_masked_pos is not None: - embeddings = torch.where( - bool_masked_pos.unsqueeze(-1), - self.mask_token.to(embeddings.dtype).unsqueeze(0), - embeddings, - ) - - # add the [CLS] token to the embedded patch tokens - cls_tokens = self.cls_token.expand(batch_size, -1, -1) - embeddings = torch.cat((cls_tokens, embeddings), dim=1) - - # add positional encoding to each token - embeddings = embeddings + self.interpolate_pos_encoding( - embeddings, height, width - ) - - embeddings = self.dropout(embeddings) - - return embeddings - - -class Dinov2PatchEmbeddings(nn.Module): - """ - This class turns `pixel_values` of shape `(batch_size, num_channels, height, width)` into the initial - `hidden_states` (patch embeddings) of shape `(batch_size, seq_length, hidden_size)` to be consumed by a - Transformer. - """ - - def __init__(self, config): - super().__init__() - image_size, patch_size = config.image_size, config.patch_size - num_channels, hidden_size = config.num_channels, config.hidden_size - - image_size = ( - image_size - if isinstance(image_size, collections.abc.Iterable) - else (image_size, image_size) - ) - patch_size = ( - patch_size - if isinstance(patch_size, collections.abc.Iterable) - else (patch_size, patch_size) - ) - num_patches = (image_size[1] // patch_size[1]) * ( - image_size[0] // patch_size[0] - ) - self.image_size = image_size - self.patch_size = patch_size - self.num_channels = num_channels - self.num_patches = num_patches - - self.projection = nn.Conv2d( - num_channels, hidden_size, kernel_size=patch_size, stride=patch_size - ) - - def forward(self, pixel_values: torch.Tensor) -> torch.Tensor: - num_channels = pixel_values.shape[1] - if num_channels != self.num_channels: - raise ValueError( - "Make sure that the channel dimension of the pixel values match with the one set in the configuration." - f" Expected {self.num_channels} but got {num_channels}." - ) - embeddings = self.projection(pixel_values).flatten(2).transpose(1, 2) - return embeddings - - -# Copied from transformers.models.vit.modeling_vit.ViTSelfAttention with ViT->Dinov2 -class Dinov2SelfAttention(nn.Module): - def __init__(self, config: Dinov2Config) -> None: - super().__init__() - if config.hidden_size % config.num_attention_heads != 0 and not hasattr( - config, "embedding_size" - ): - raise ValueError( - f"The hidden size {config.hidden_size,} is not a multiple of the number of attention " - f"heads {config.num_attention_heads}." - ) - - self.num_attention_heads = config.num_attention_heads - self.attention_head_size = int(config.hidden_size / config.num_attention_heads) - self.all_head_size = self.num_attention_heads * self.attention_head_size - self.attention_probs_dropout_prob = config.attention_probs_dropout_prob - - self.query = nn.Linear( - config.hidden_size, self.all_head_size, bias=config.qkv_bias - ) - self.key = nn.Linear( - config.hidden_size, self.all_head_size, bias=config.qkv_bias - ) - self.value = nn.Linear( - config.hidden_size, self.all_head_size, bias=config.qkv_bias - ) - - self.dropout = nn.Dropout(config.attention_probs_dropout_prob) - - self.use_memory_efficient_attention_xformers: bool = False - - def transpose_for_scores(self, x: torch.Tensor) -> torch.Tensor: - new_x_shape = x.size()[:-1] + ( - self.num_attention_heads, - self.attention_head_size, - ) - x = x.view(new_x_shape) - return x.permute(0, 2, 1, 3) - - def forward( - self, - hidden_states, - head_mask: Optional[torch.Tensor] = None, - output_attentions: bool = False, - ) -> Union[Tuple[torch.Tensor, torch.Tensor], Tuple[torch.Tensor]]: - mixed_query_layer = self.query(hidden_states) - - if self.use_memory_efficient_attention_xformers: - import xformers - assert head_mask is None and not output_attentions - new_size = hidden_states.size()[:-1] + ( - self.num_attention_heads, - self.attention_head_size, - ) - key_layer = self.key(hidden_states).view(new_size) - value_layer = self.value(hidden_states).view(new_size) - query_layer = mixed_query_layer.view(new_size) - context_layer = xformers.ops.memory_efficient_attention( - query_layer, key_layer, value_layer, p=self.attention_probs_dropout_prob - ) - context_layer = context_layer.view(*hidden_states.size()[:-1], -1) - else: - key_layer = self.transpose_for_scores(self.key(hidden_states)) - value_layer = self.transpose_for_scores(self.value(hidden_states)) - query_layer = self.transpose_for_scores(mixed_query_layer) - - # Take the dot product between "query" and "key" to get the raw attention scores. - attention_scores = torch.matmul(query_layer, key_layer.transpose(-1, -2)) - - attention_scores = attention_scores / math.sqrt(self.attention_head_size) - - # Normalize the attention scores to probabilities. - attention_probs = nn.functional.softmax(attention_scores, dim=-1) - - # This is actually dropping out entire tokens to attend to, which might - # seem a bit unusual, but is taken from the original Transformer paper. - attention_probs = self.dropout(attention_probs) - - # Mask heads if we want to - if head_mask is not None: - attention_probs = attention_probs * head_mask - - context_layer = torch.matmul(attention_probs, value_layer) - - context_layer = context_layer.permute(0, 2, 1, 3).contiguous() - new_context_layer_shape = context_layer.size()[:-2] + (self.all_head_size,) - context_layer = context_layer.view(new_context_layer_shape) - - outputs = ( - (context_layer, attention_probs) if output_attentions else (context_layer,) - ) - - return outputs - - def set_use_memory_efficient_attention_xformers( - self, valid: bool, attention_op: Optional[Callable] = None - ): - self.use_memory_efficient_attention_xformers = valid - - -# Copied from transformers.models.vit.modeling_vit.ViTSelfOutput with ViT->Dinov2 -class Dinov2SelfOutput(nn.Module): - """ - The residual connection is defined in Dinov2Layer instead of here (as is the case with other models), due to the - layernorm applied before each block. - """ - - def __init__(self, config: Dinov2Config) -> None: - super().__init__() - self.dense = nn.Linear(config.hidden_size, config.hidden_size) - self.dropout = nn.Dropout(config.hidden_dropout_prob) - - def forward( - self, hidden_states: torch.Tensor, input_tensor: torch.Tensor - ) -> torch.Tensor: - hidden_states = self.dense(hidden_states) - hidden_states = self.dropout(hidden_states) - - return hidden_states - - -# Copied from transformers.models.vit.modeling_vit.ViTAttention with ViT->Dinov2 -class Dinov2Attention(nn.Module): - def __init__(self, config: Dinov2Config) -> None: - super().__init__() - self.attention = Dinov2SelfAttention(config) - self.output = Dinov2SelfOutput(config) - self.pruned_heads = set() - - def prune_heads(self, heads: Set[int]) -> None: - if len(heads) == 0: - return - heads, index = find_pruneable_heads_and_indices( - heads, - self.attention.num_attention_heads, - self.attention.attention_head_size, - self.pruned_heads, - ) - - # Prune linear layers - self.attention.query = prune_linear_layer(self.attention.query, index) - self.attention.key = prune_linear_layer(self.attention.key, index) - self.attention.value = prune_linear_layer(self.attention.value, index) - self.output.dense = prune_linear_layer(self.output.dense, index, dim=1) - - # Update hyper params and store pruned heads - self.attention.num_attention_heads = self.attention.num_attention_heads - len( - heads - ) - self.attention.all_head_size = ( - self.attention.attention_head_size * self.attention.num_attention_heads - ) - self.pruned_heads = self.pruned_heads.union(heads) - - def forward( - self, - hidden_states: torch.Tensor, - head_mask: Optional[torch.Tensor] = None, - output_attentions: bool = False, - ) -> Union[Tuple[torch.Tensor, torch.Tensor], Tuple[torch.Tensor]]: - self_outputs = self.attention(hidden_states, head_mask, output_attentions) - - attention_output = self.output(self_outputs[0], hidden_states) - - outputs = (attention_output,) + self_outputs[ - 1: - ] # add attentions if we output them - return outputs - - -class Dinov2LayerScale(nn.Module): - def __init__(self, config) -> None: - super().__init__() - self.lambda1 = nn.Parameter( - config.layerscale_value * torch.ones(config.hidden_size) - ) - - def forward(self, hidden_state: torch.Tensor) -> torch.Tensor: - return hidden_state * self.lambda1 - - -# Copied from transformers.models.beit.modeling_beit.drop_path -def drop_path( - input: torch.Tensor, drop_prob: float = 0.0, training: bool = False -) -> torch.Tensor: - """ - Drop paths (Stochastic Depth) per sample (when applied in main path of residual blocks). - - Comment by Ross Wightman: This is the same as the DropConnect impl I created for EfficientNet, etc networks, - however, the original name is misleading as 'Drop Connect' is a different form of dropout in a separate paper... - See discussion: https://github.com/tensorflow/tpu/issues/494#issuecomment-532968956 ... I've opted for changing the - layer and argument names to 'drop path' rather than mix DropConnect as a layer name and use 'survival rate' as the - argument. - """ - if drop_prob == 0.0 or not training: - return input - keep_prob = 1 - drop_prob - shape = (input.shape[0],) + (1,) * ( - input.ndim - 1 - ) # work with diff dim tensors, not just 2D ConvNets - random_tensor = keep_prob + torch.rand( - shape, dtype=input.dtype, device=input.device - ) - random_tensor.floor_() # binarize - output = input.div(keep_prob) * random_tensor - return output - - -# Copied from transformers.models.beit.modeling_beit.BeitDropPath -class Dinov2DropPath(nn.Module): - """Drop paths (Stochastic Depth) per sample (when applied in main path of residual blocks).""" - - def __init__(self, drop_prob: Optional[float] = None) -> None: - super().__init__() - self.drop_prob = drop_prob - - def forward(self, hidden_states: torch.Tensor) -> torch.Tensor: - return drop_path(hidden_states, self.drop_prob, self.training) - - def extra_repr(self) -> str: - return "p={}".format(self.drop_prob) - - -class Dinov2MLP(nn.Module): - def __init__(self, config) -> None: - super().__init__() - in_features = out_features = config.hidden_size - hidden_features = int(config.hidden_size * config.mlp_ratio) - self.fc1 = nn.Linear(in_features, hidden_features, bias=True) - if isinstance(config.hidden_act, str): - self.activation = ACT2FN[config.hidden_act] - else: - self.activation = config.hidden_act - self.fc2 = nn.Linear(hidden_features, out_features, bias=True) - - def forward(self, hidden_state: torch.Tensor) -> torch.Tensor: - hidden_state = self.fc1(hidden_state) - hidden_state = self.activation(hidden_state) - hidden_state = self.fc2(hidden_state) - return hidden_state - - -class Dinov2SwiGLUFFN(nn.Module): - def __init__(self, config) -> None: - super().__init__() - in_features = out_features = config.hidden_size - hidden_features = int(config.hidden_size * config.mlp_ratio) - hidden_features = (int(hidden_features * 2 / 3) + 7) // 8 * 8 - - self.weights_in = nn.Linear(in_features, 2 * hidden_features, bias=True) - self.weights_out = nn.Linear(hidden_features, out_features, bias=True) - - def forward(self, hidden_state: torch.Tensor) -> torch.Tensor: - hidden_state = self.weights_in(hidden_state) - x1, x2 = hidden_state.chunk(2, dim=-1) - hidden = nn.functional.silu(x1) * x2 - return self.weights_out(hidden) - - -class Dinov2Layer(nn.Module, MemoryEfficientAttentionMixin): - """This corresponds to the Block class in the original implementation.""" - - def __init__(self, config: Dinov2Config) -> None: - super().__init__() - - self.norm1 = nn.LayerNorm(config.hidden_size, eps=config.layer_norm_eps) - self.norm1_modulation = None - self.attention = Dinov2Attention(config) - self.layer_scale1 = Dinov2LayerScale(config) - self.drop_path1 = ( - Dinov2DropPath(config.drop_path_rate) - if config.drop_path_rate > 0.0 - else nn.Identity() - ) - - self.norm2 = nn.LayerNorm(config.hidden_size, eps=config.layer_norm_eps) - self.norm2_modulation = None - - if config.use_swiglu_ffn: - self.mlp = Dinov2SwiGLUFFN(config) - else: - self.mlp = Dinov2MLP(config) - self.layer_scale2 = Dinov2LayerScale(config) - self.drop_path2 = ( - Dinov2DropPath(config.drop_path_rate) - if config.drop_path_rate > 0.0 - else nn.Identity() - ) - - def forward( - self, - hidden_states: torch.Tensor, - head_mask: Optional[torch.Tensor] = None, - modulation_cond: Optional[torch.Tensor] = None, - output_attentions: bool = False, - ) -> Union[Tuple[torch.Tensor, torch.Tensor], Tuple[torch.Tensor]]: - hidden_states_norm = self.norm1(hidden_states) - if self.norm1_modulation is not None: - assert modulation_cond is not None - hidden_states_norm = self.norm1_modulation( - hidden_states_norm, modulation_cond - ) - self_attention_outputs = self.attention( - hidden_states_norm, # in Dinov2, layernorm is applied before self-attention - head_mask, - output_attentions=output_attentions, - ) - attention_output = self_attention_outputs[0] - - attention_output = self.layer_scale1(attention_output) - outputs = self_attention_outputs[ - 1: - ] # add self attentions if we output attention weights - - # first residual connection - hidden_states = attention_output + hidden_states - - # in Dinov2, layernorm is also applied after self-attention - layer_output = self.norm2(hidden_states) - if self.norm2_modulation is not None: - assert modulation_cond is not None - layer_output = self.norm2_modulation(layer_output, modulation_cond) - layer_output = self.mlp(layer_output) - layer_output = self.layer_scale2(layer_output) - - # second residual connection - layer_output = layer_output + hidden_states - - outputs = (layer_output,) + outputs - - return outputs - - def register_ada_norm_modulation(self, norm1_mod: nn.Module, norm2_mod: nn.Module): - self.norm1_modulation = norm1_mod - self.norm2_modulation = norm2_mod - - -# Copied from transformers.models.vit.modeling_vit.ViTEncoder with ViT->Dinov2 -class Dinov2Encoder(nn.Module, MemoryEfficientAttentionMixin): - def __init__(self, config: Dinov2Config) -> None: - super().__init__() - self.config = config - self.layer = nn.ModuleList( - [Dinov2Layer(config) for _ in range(config.num_hidden_layers)] - ) - self.gradient_checkpointing = False - - def forward( - self, - hidden_states: torch.Tensor, - head_mask: Optional[torch.Tensor] = None, - modulation_cond: Optional[torch.Tensor] = None, - output_attentions: bool = False, - output_hidden_states: bool = False, - return_dict: bool = True, - ) -> Union[tuple, BaseModelOutput]: - all_hidden_states = () if output_hidden_states else None - all_self_attentions = () if output_attentions else None - - for i, layer_module in enumerate(self.layer): - if output_hidden_states: - all_hidden_states = all_hidden_states + (hidden_states,) - - layer_head_mask = head_mask[i] if head_mask is not None else None - - if self.gradient_checkpointing and self.training: - - def create_custom_forward(module): - def custom_forward(*inputs): - return module(*inputs, output_attentions) - - return custom_forward - - layer_outputs = torch.utils.checkpoint.checkpoint( - create_custom_forward(layer_module), - hidden_states, - layer_head_mask, - modulation_cond, - ) - else: - layer_outputs = layer_module( - hidden_states, layer_head_mask, modulation_cond, output_attentions - ) - - hidden_states = layer_outputs[0] - - if output_attentions: - all_self_attentions = all_self_attentions + (layer_outputs[1],) - - if output_hidden_states: - all_hidden_states = all_hidden_states + (hidden_states,) - - if not return_dict: - return tuple( - v - for v in [hidden_states, all_hidden_states, all_self_attentions] - if v is not None - ) - return BaseModelOutput( - last_hidden_state=hidden_states, - hidden_states=all_hidden_states, - attentions=all_self_attentions, - ) - - -class Dinov2PreTrainedModel(PreTrainedModel): - """ - An abstract class to handle weights initialization and a simple interface for downloading and loading pretrained - models. - """ - - config_class = Dinov2Config - base_model_prefix = "dinov2" - main_input_name = "pixel_values" - supports_gradient_checkpointing = True - - def _init_weights(self, module: Union[nn.Linear, nn.Conv2d, nn.LayerNorm]) -> None: - """Initialize the weights""" - if isinstance(module, (nn.Linear, nn.Conv2d)): - # Upcast the input in `fp32` and cast it back to desired `dtype` to avoid - # `trunc_normal_cpu` not implemented in `half` issues - module.weight.data = nn.init.trunc_normal_( - module.weight.data.to(torch.float32), - mean=0.0, - std=self.config.initializer_range, - ).to(module.weight.dtype) - if module.bias is not None: - module.bias.data.zero_() - elif isinstance(module, nn.LayerNorm): - module.bias.data.zero_() - module.weight.data.fill_(1.0) - elif isinstance(module, Dinov2Embeddings): - module.position_embeddings.data = nn.init.trunc_normal_( - module.position_embeddings.data.to(torch.float32), - mean=0.0, - std=self.config.initializer_range, - ).to(module.position_embeddings.dtype) - - module.cls_token.data = nn.init.trunc_normal_( - module.cls_token.data.to(torch.float32), - mean=0.0, - std=self.config.initializer_range, - ).to(module.cls_token.dtype) - - def _set_gradient_checkpointing( - self, module: Dinov2Encoder, value: bool = False - ) -> None: - if isinstance(module, Dinov2Encoder): - module.gradient_checkpointing = value - - -DINOV2_START_DOCSTRING = r""" - This model is a PyTorch [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) subclass. Use it - as a regular PyTorch Module and refer to the PyTorch documentation for all matter related to general usage and - behavior. - - Parameters: - config ([`Dinov2Config`]): Model configuration class with all the parameters of the model. - Initializing with a config file does not load the weights associated with the model, only the - configuration. Check out the [`~PreTrainedModel.from_pretrained`] method to load the model weights. -""" - -DINOV2_BASE_INPUTS_DOCSTRING = r""" - Args: - pixel_values (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)`): - Pixel values. Pixel values can be obtained using [`AutoImageProcessor`]. See - [`BitImageProcessor.preprocess`] for details. - - bool_masked_pos (`torch.BoolTensor` of shape `(batch_size, sequence_length)`): - Boolean masked positions. Indicates which patches are masked (1) and which aren't (0). Only relevant for - pre-training. - - head_mask (`torch.FloatTensor` of shape `(num_heads,)` or `(num_layers, num_heads)`, *optional*): - Mask to nullify selected heads of the self-attention modules. Mask values selected in `[0, 1]`: - - - 1 indicates the head is **not masked**, - - 0 indicates the head is **masked**. - - output_attentions (`bool`, *optional*): - Whether or not to return the attentions tensors of all attention layers. See `attentions` under returned - tensors for more detail. - output_hidden_states (`bool`, *optional*): - Whether or not to return the hidden states of all layers. See `hidden_states` under returned tensors for - more detail. - return_dict (`bool`, *optional*): - Whether or not to return a [`~utils.ModelOutput`] instead of a plain tuple. -""" - -DINOV2_INPUTS_DOCSTRING = r""" - Args: - pixel_values (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)`): - Pixel values. Pixel values can be obtained using [`AutoImageProcessor`]. See - [`BitImageProcessor.preprocess`] for details. - - head_mask (`torch.FloatTensor` of shape `(num_heads,)` or `(num_layers, num_heads)`, *optional*): - Mask to nullify selected heads of the self-attention modules. Mask values selected in `[0, 1]`: - - - 1 indicates the head is **not masked**, - - 0 indicates the head is **masked**. - - output_attentions (`bool`, *optional*): - Whether or not to return the attentions tensors of all attention layers. See `attentions` under returned - tensors for more detail. - output_hidden_states (`bool`, *optional*): - Whether or not to return the hidden states of all layers. See `hidden_states` under returned tensors for - more detail. - return_dict (`bool`, *optional*): - Whether or not to return a [`~utils.ModelOutput`] instead of a plain tuple. -""" - -@dataclass -class CustomBaseModelOutputWithPooling(BaseModelOutputWithPooling): - patch_embeddings: Optional[torch.FloatTensor] = None - - -@add_start_docstrings( - "The bare DINOv2 Model transformer outputting raw hidden-states without any specific head on top.", - DINOV2_START_DOCSTRING, -) -class Dinov2Model(Dinov2PreTrainedModel, MemoryEfficientAttentionMixin): - def __init__(self, config: Dinov2Config): - super().__init__(config) - self.config = config - - self.embeddings = Dinov2Embeddings(config) - self.encoder = Dinov2Encoder(config) - - self.layernorm = nn.LayerNorm(config.hidden_size, eps=config.layer_norm_eps) - - # Initialize weights and apply final processing - self.post_init() - - def get_input_embeddings(self) -> Dinov2PatchEmbeddings: - return self.embeddings.patch_embeddings - - def _prune_heads(self, heads_to_prune: Dict[int, List[int]]) -> None: - """ - Prunes heads of the model. heads_to_prune: dict of {layer_num: list of heads to prune in this layer} See base - class PreTrainedModel - """ - for layer, heads in heads_to_prune.items(): - self.encoder.layer[layer].attention.prune_heads(heads) - - @add_start_docstrings_to_model_forward(DINOV2_BASE_INPUTS_DOCSTRING) - @add_code_sample_docstrings( - checkpoint=_CHECKPOINT_FOR_DOC, - output_type=BaseModelOutputWithPooling, - config_class=_CONFIG_FOR_DOC, - modality="vision", - expected_output=_EXPECTED_OUTPUT_SHAPE, - ) - def forward( - self, - pixel_values: Optional[torch.Tensor] = None, - bool_masked_pos: Optional[torch.Tensor] = None, - head_mask: Optional[torch.Tensor] = None, - modulation_cond: Optional[torch.Tensor] = None, - output_attentions: Optional[bool] = None, - output_hidden_states: Optional[bool] = None, - return_dict: Optional[bool] = None, - ) -> Union[Tuple, BaseModelOutputWithPooling]: - output_attentions = ( - output_attentions - if output_attentions is not None - else self.config.output_attentions - ) - output_hidden_states = ( - output_hidden_states - if output_hidden_states is not None - else self.config.output_hidden_states - ) - return_dict = ( - return_dict if return_dict is not None else self.config.use_return_dict - ) - - if pixel_values is None: - raise ValueError("You have to specify pixel_values") - - # Prepare head mask if needed - # 1.0 in head_mask indicate we keep the head - # attention_probs has shape bsz x n_heads x N x N - # input head_mask has shape [num_heads] or [num_hidden_layers x num_heads] - # and head_mask is converted to shape [num_hidden_layers x batch x num_heads x seq_length x seq_length] - head_mask = self.get_head_mask(head_mask, self.config.num_hidden_layers) - - embedding_output = self.embeddings( - pixel_values, bool_masked_pos=bool_masked_pos - ) - - encoder_outputs = self.encoder( - embedding_output, - head_mask=head_mask, - modulation_cond=modulation_cond, - output_attentions=output_attentions, - output_hidden_states=output_hidden_states, - return_dict=return_dict, - ) - sequence_output = encoder_outputs[0] - sequence_output = self.layernorm(sequence_output) - pooled_output = sequence_output[:, 0, :] - - if not return_dict: - head_outputs = (sequence_output, pooled_output) - return head_outputs + encoder_outputs[1:] - - return CustomBaseModelOutputWithPooling( - last_hidden_state=sequence_output, - pooler_output=pooled_output, - hidden_states=encoder_outputs.hidden_states, - attentions=encoder_outputs.attentions, - patch_embeddings=embedding_output - ) - - def set_gradient_checkpointing(self, value: bool = False) -> None: - self._set_gradient_checkpointing(self.encoder, value) - - -@add_start_docstrings( - """ - Dinov2 Model transformer with an image classification head on top (a linear layer on top of the final hidden state - of the [CLS] token) e.g. for ImageNet. - """, - DINOV2_START_DOCSTRING, -) -class Dinov2ForImageClassification(Dinov2PreTrainedModel): - def __init__(self, config: Dinov2Config) -> None: - super().__init__(config) - - self.num_labels = config.num_labels - self.dinov2 = Dinov2Model(config) - - # Classifier head - self.classifier = ( - nn.Linear(config.hidden_size * 2, config.num_labels) - if config.num_labels > 0 - else nn.Identity() - ) - - # Initialize weights and apply final processing - self.post_init() - - @add_start_docstrings_to_model_forward(DINOV2_INPUTS_DOCSTRING) - @add_code_sample_docstrings( - checkpoint=_IMAGE_CLASS_CHECKPOINT, - output_type=ImageClassifierOutput, - config_class=_CONFIG_FOR_DOC, - ) - def forward( - self, - pixel_values: Optional[torch.Tensor] = None, - head_mask: Optional[torch.Tensor] = None, - labels: Optional[torch.Tensor] = None, - output_attentions: Optional[bool] = None, - output_hidden_states: Optional[bool] = None, - return_dict: Optional[bool] = None, - ) -> Union[tuple, ImageClassifierOutput]: - r""" - labels (`torch.LongTensor` of shape `(batch_size,)`, *optional*): - Labels for computing the image classification/regression loss. Indices should be in `[0, ..., - config.num_labels - 1]`. If `config.num_labels == 1` a regression loss is computed (Mean-Square loss), If - `config.num_labels > 1` a classification loss is computed (Cross-Entropy). - """ - return_dict = ( - return_dict if return_dict is not None else self.config.use_return_dict - ) - - outputs = self.dinov2( - pixel_values, - head_mask=head_mask, - output_attentions=output_attentions, - output_hidden_states=output_hidden_states, - return_dict=return_dict, - ) - - sequence_output = outputs[0] # batch_size, sequence_length, hidden_size - - cls_token = sequence_output[:, 0] - patch_tokens = sequence_output[:, 1:] - - linear_input = torch.cat([cls_token, patch_tokens.mean(dim=1)], dim=1) - - logits = self.classifier(linear_input) - - loss = None - if labels is not None: - # move labels to correct device to enable model parallelism - labels = labels.to(logits.device) - if self.config.problem_type is None: - if self.num_labels == 1: - self.config.problem_type = "regression" - elif self.num_labels > 1 and ( - labels.dtype == torch.long or labels.dtype == torch.int - ): - self.config.problem_type = "single_label_classification" - else: - self.config.problem_type = "multi_label_classification" - - if self.config.problem_type == "regression": - loss_fct = MSELoss() - if self.num_labels == 1: - loss = loss_fct(logits.squeeze(), labels.squeeze()) - else: - loss = loss_fct(logits, labels) - elif self.config.problem_type == "single_label_classification": - loss_fct = CrossEntropyLoss() - loss = loss_fct(logits.view(-1, self.num_labels), labels.view(-1)) - elif self.config.problem_type == "multi_label_classification": - loss_fct = BCEWithLogitsLoss() - loss = loss_fct(logits, labels) - - if not return_dict: - output = (logits,) + outputs[2:] - return ((loss,) + output) if loss is not None else output - - return ImageClassifierOutput( - loss=loss, - logits=logits, - hidden_states=outputs.hidden_states, - attentions=outputs.attentions, - ) - - -@add_start_docstrings( - """ - Dinov2 backbone, to be used with frameworks like DETR and MaskFormer. - """, - DINOV2_START_DOCSTRING, -) -class Dinov2Backbone(Dinov2PreTrainedModel, BackboneMixin): - def __init__(self, config): - super().__init__(config) - super()._init_backbone(config) - - self.num_features = [ - config.hidden_size for _ in range(config.num_hidden_layers + 1) - ] - self.embeddings = Dinov2Embeddings(config) - self.encoder = Dinov2Encoder(config) - - self.layernorm = nn.LayerNorm(config.hidden_size, eps=config.layer_norm_eps) - - # Initialize weights and apply final processing - self.post_init() - - def get_input_embeddings(self) -> Dinov2PatchEmbeddings: - return self.embeddings.patch_embeddings - - @add_start_docstrings_to_model_forward(DINOV2_INPUTS_DOCSTRING) - @replace_return_docstrings(output_type=BackboneOutput, config_class=_CONFIG_FOR_DOC) - def forward( - self, - pixel_values: torch.Tensor, - output_hidden_states: Optional[bool] = None, - output_attentions: Optional[bool] = None, - return_dict: Optional[bool] = None, - ) -> BackboneOutput: - """ - Returns: - - Examples: - - ```python - >>> from transformers import AutoImageProcessor, AutoBackbone - >>> import torch - >>> from PIL import Image - >>> import requests - - >>> url = "http://images.cocodataset.org/val2017/000000039769.jpg" - >>> image = Image.open(requests.get(url, stream=True).raw) - - >>> processor = AutoImageProcessor.from_pretrained("facebook/dinov2-base") - >>> model = AutoBackbone.from_pretrained( - ... "facebook/dinov2-base", out_features=["stage2", "stage5", "stage8", "stage11"] - ... ) - - >>> inputs = processor(image, return_tensors="pt") - - >>> outputs = model(**inputs) - >>> feature_maps = outputs.feature_maps - >>> list(feature_maps[-1].shape) - [1, 768, 16, 16] - ```""" - return_dict = ( - return_dict if return_dict is not None else self.config.use_return_dict - ) - output_hidden_states = ( - output_hidden_states - if output_hidden_states is not None - else self.config.output_hidden_states - ) - output_attentions = ( - output_attentions - if output_attentions is not None - else self.config.output_attentions - ) - - embedding_output = self.embeddings(pixel_values) - - outputs = self.encoder( - embedding_output, - output_hidden_states=True, - output_attentions=output_attentions, - return_dict=return_dict, - ) - - hidden_states = outputs.hidden_states if return_dict else outputs[1] - - feature_maps = () - for stage, hidden_state in zip(self.stage_names, hidden_states): - if stage in self.out_features: - if self.config.apply_layernorm: - hidden_state = self.layernorm(hidden_state) - if self.config.reshape_hidden_states: - batch_size, _, height, width = pixel_values.shape - patch_size = self.config.patch_size - hidden_state = hidden_state[:, 1:, :].reshape( - batch_size, width // patch_size, height // patch_size, -1 - ) - hidden_state = hidden_state.permute(0, 3, 1, 2).contiguous() - feature_maps += (hidden_state,) - - if not return_dict: - if output_hidden_states: - output = (feature_maps,) + outputs[1:] - else: - output = (feature_maps,) + outputs[2:] - return output - - return BackboneOutput( - feature_maps=feature_maps, - hidden_states=outputs.hidden_states if output_hidden_states else None, - attentions=outputs.attentions if output_attentions else None, - ) - - - -class CustomPatchEmbeddings(nn.Module): - """ - This class turns `pixel_values` of shape `(batch_size, num_channels, height, width)` into the initial - `hidden_states` (patch embeddings) of shape `(batch_size, seq_length, hidden_size)` to be consumed by a - Transformer. - """ - - def __init__(self, image_size: int, patch_size: int, num_channels: int, hidden_size: int): - super().__init__() - - image_size = ( - image_size - if isinstance(image_size, collections.abc.Iterable) - else (image_size, image_size) - ) - patch_size = ( - patch_size - if isinstance(patch_size, collections.abc.Iterable) - else (patch_size, patch_size) - ) - num_patches = (image_size[1] // patch_size[1]) * ( - image_size[0] // patch_size[0] - ) - self.image_size = image_size - self.patch_size = patch_size - self.num_channels = num_channels - self.num_patches = num_patches - - self.projection = nn.Conv2d( - num_channels, hidden_size, kernel_size=patch_size, stride=patch_size - ) - - def forward(self, pixel_values: torch.Tensor) -> torch.Tensor: - num_channels = pixel_values.shape[1] - if num_channels != self.num_channels: - raise ValueError( - "Make sure that the channel dimension of the pixel values match with the one set in the configuration." - f" Expected {self.num_channels} but got {num_channels}." - ) - embeddings = self.projection(pixel_values).flatten(2).transpose(1, 2) - return embeddings - - -class CustomEmbeddings(nn.Module): - """ - Construct the CLS token, mask token, position and patch embeddings. - """ - - def __init__(self, image_size: int, patch_size: int, num_channels: int, hidden_size: int) -> None: - super().__init__() - - self.image_size = image_size - self.patch_size = patch_size - self.num_channels = num_channels - self.hidden_size = hidden_size - - self.cls_token = nn.Parameter(torch.randn(1, 1, self.hidden_size)) - - self.patch_embeddings = CustomPatchEmbeddings(image_size, patch_size, num_channels, hidden_size) - num_patches = self.patch_embeddings.num_patches - self.position_embeddings = nn.Parameter( - torch.randn(1, num_patches + 1, self.hidden_size) - ) - - def interpolate_pos_encoding( - self, embeddings: torch.Tensor, height: int, width: int - ) -> torch.Tensor: - """ - This method allows to interpolate the pre-trained position encodings, to be able to use the model on higher - resolution images. - - Source: - https://github.com/facebookresearch/dino/blob/de9ee3df6cf39fac952ab558447af1fa1365362a/vision_transformer.py#L174 - """ - - num_patches = embeddings.shape[1] - 1 - num_positions = self.position_embeddings.shape[1] - 1 - if num_patches == num_positions and height == width: - return self.position_embeddings - class_pos_embed = self.position_embeddings[:, 0] - patch_pos_embed = self.position_embeddings[:, 1:] - dim = embeddings.shape[-1] - height = height // self.patch_size - width = width // self.patch_size - # we add a small number to avoid floating point error in the interpolation - # see discussion at https://github.com/facebookresearch/dino/issues/8 - height, width = height + 0.1, width + 0.1 - patch_pos_embed = patch_pos_embed.reshape( - 1, int(math.sqrt(num_positions)), int(math.sqrt(num_positions)), dim - ) - patch_pos_embed = patch_pos_embed.permute(0, 3, 1, 2) - patch_pos_embed = nn.functional.interpolate( - patch_pos_embed, - scale_factor=( - height / math.sqrt(num_positions), - width / math.sqrt(num_positions), - ), - mode="bicubic", - align_corners=False, - ) - if ( - int(height) != patch_pos_embed.shape[-2] - or int(width) != patch_pos_embed.shape[-1] - ): - raise ValueError( - "Width or height does not match with the interpolated position embeddings" - ) - patch_pos_embed = patch_pos_embed.permute(0, 2, 3, 1).view(1, -1, dim) - return torch.cat((class_pos_embed.unsqueeze(0), patch_pos_embed), dim=1) - - def forward( - self, pixel_values: torch.Tensor, - ) -> torch.Tensor: - batch_size, _, height, width = pixel_values.shape - patch_embeddings = self.patch_embeddings(pixel_values) - embeddings = patch_embeddings - - # add the [CLS] token to the embedded patch tokens - cls_tokens = self.cls_token.expand(batch_size, -1, -1) - embeddings = torch.cat((cls_tokens, embeddings), dim=1) - - # add positional encoding to each token - embeddings = embeddings + self.interpolate_pos_encoding( - embeddings, height, width - ) - - return embeddings \ No newline at end of file diff --git a/tgs/models/tokenizers/image.py b/tgs/models/tokenizers/image.py deleted file mode 100644 index eb8de83..0000000 --- a/tgs/models/tokenizers/image.py +++ /dev/null @@ -1,135 +0,0 @@ -from dataclasses import dataclass - -import torch -import torch.nn as nn -from einops import rearrange - -from tgs.utils.base import BaseModule -from tgs.models.tokenizers.dinov2 import Dinov2Model -from tgs.models.transformers import Modulation -from tgs.utils.typing import * - -class DINOV2SingleImageTokenizer(BaseModule): - @dataclass - class Config(BaseModule.Config): - pretrained_model_name_or_path: str = "facebook/dinov2-base" - width: int = 224 - height: int = 224 - modulation: bool = False - modulation_zero_init: bool = False - modulation_single_layer: bool = False - modulation_cond_dim: int = 16 - freeze_backbone_params: bool = True - enable_memory_efficient_attention: bool = False - enable_gradient_checkpointing: bool = False - use_patch_embeddings: bool = False - patch_embeddings_aggr_method: str = 'concat' - - cfg: Config - - def configure(self) -> None: - super().configure() - model: Dinov2Model - - if self.cfg.freeze_backbone_params: - # freeze dino backbone parameters - self.register_non_module( - "model", - Dinov2Model.from_pretrained(self.cfg.pretrained_model_name_or_path).to( - self.device - ), - ) - - model = self.non_module("model") - for p in model.parameters(): - p.requires_grad_(False) - model.eval() - else: - self.model = Dinov2Model.from_pretrained( - self.cfg.pretrained_model_name_or_path - ).to(self.device) - model = self.model - - model.set_use_memory_efficient_attention_xformers( - self.cfg.enable_memory_efficient_attention - ) - model.set_gradient_checkpointing(self.cfg.enable_gradient_checkpointing) - - # add modulation - if self.cfg.modulation: - modulations = [] - for layer in model.encoder.layer: - norm1_modulation = Modulation( - model.config.hidden_size, - self.cfg.modulation_cond_dim, - zero_init=self.cfg.modulation_zero_init, - single_layer=self.cfg.modulation_single_layer, - ) - norm2_modulation = Modulation( - model.config.hidden_size, - self.cfg.modulation_cond_dim, - zero_init=self.cfg.modulation_zero_init, - single_layer=self.cfg.modulation_single_layer, - ) - layer.register_ada_norm_modulation(norm1_modulation, norm2_modulation) - modulations += [norm1_modulation, norm2_modulation] - self.modulations = nn.ModuleList(modulations) - - self.register_buffer( - "image_mean", - torch.as_tensor([0.485, 0.456, 0.406]).reshape(1, 1, 3, 1, 1), - persistent=False, - ) - self.register_buffer( - "image_std", - torch.as_tensor([0.229, 0.224, 0.225]).reshape(1, 1, 3, 1, 1), - persistent=False, - ) - - def forward( - self, - images: Float[Tensor, "B *N C H W"], - modulation_cond: Optional[Float[Tensor, "B *N Cc"]], - ) -> Float[Tensor, "B *N Ct Nt"]: - model: Dinov2Model - if self.cfg.freeze_backbone_params: - model = self.non_module("model") - else: - model = self.model - - packed = False - if images.ndim == 4: - packed = True - images = images.unsqueeze(1) - if modulation_cond is not None: - assert modulation_cond.ndim == 2 - modulation_cond = modulation_cond.unsqueeze(1) - - batch_size, n_input_views = images.shape[:2] - images = (images - self.image_mean) / self.image_std - out = model( - rearrange(images, "B N C H W -> (B N) C H W"), - modulation_cond=rearrange(modulation_cond, "B N Cc -> (B N) Cc") - if modulation_cond is not None - else None, - ) - local_features, global_features = out.last_hidden_state, out.pooler_output - if self.cfg.use_patch_embeddings: - patch_embeddings = out.patch_embeddings - if self.cfg.patch_embeddings_aggr_method == 'concat': - local_features = torch.cat([local_features, patch_embeddings], dim=1) - elif self.cfg.patch_embeddings_aggr_method == 'add': - local_features = local_features + patch_embeddings - else: - raise NotImplementedError - local_features = local_features.permute(0, 2, 1) - local_features = rearrange( - local_features, "(B N) Ct Nt -> B N Ct Nt", B=batch_size - ) - if packed: - local_features = local_features.squeeze(1) - - return local_features - - def detokenize(self, *args, **kwargs): - raise NotImplementedError \ No newline at end of file diff --git a/tgs/models/tokenizers/point.py b/tgs/models/tokenizers/point.py deleted file mode 100644 index 99afb6c..0000000 --- a/tgs/models/tokenizers/point.py +++ /dev/null @@ -1,29 +0,0 @@ -from dataclasses import dataclass -import torch.nn as nn -from tgs.utils.base import BaseModule -from tgs.utils.typing import * -import torch - -class PointLearnablePositionalEmbedding(BaseModule): - @dataclass - class Config(BaseModule.Config): - num_pcl: int = 2048 - num_channels: int = 512 - - cfg: Config - - def configure(self) -> None: - super().configure() - self.pcl_embeddings = nn.Embedding( - self.cfg.num_pcl , self.cfg.num_channels - ) - - def forward(self, batch_size: int) -> Float[Tensor, "B Ct Nt"]: - range_ = torch.arange(self.cfg.num_pcl, device=self.device) - embeddings = self.pcl_embeddings(range_).unsqueeze(0).repeat((batch_size,1,1)) - return torch.permute(embeddings, (0,2,1)) - - def detokenize( - self, tokens: Float[Tensor, "B Ct Nt"] - ) -> Float[Tensor, "B 3 Ct Hp Wp"]: - return torch.permute(tokens, (0,2,1)) \ No newline at end of file diff --git a/tgs/models/tokenizers/triplane.py b/tgs/models/tokenizers/triplane.py deleted file mode 100644 index 8bd6774..0000000 --- a/tgs/models/tokenizers/triplane.py +++ /dev/null @@ -1,52 +0,0 @@ -from dataclasses import dataclass -import math - -import torch -import torch.nn as nn -from einops import rearrange, repeat - -from tgs.utils.base import BaseModule -from tgs.utils.typing import * - - -class TriplaneLearnablePositionalEmbedding(BaseModule): - @dataclass - class Config(BaseModule.Config): - plane_size: int = 32 - num_channels: int = 1024 - - cfg: Config - - def configure(self) -> None: - super().configure() - self.embeddings = nn.Parameter( - torch.randn( - (3, self.cfg.num_channels, self.cfg.plane_size, self.cfg.plane_size), - dtype=torch.float32, - ) - * 1 - / math.sqrt(self.cfg.num_channels) - ) - - def forward(self, batch_size: int, cond_embeddings: Float[Tensor, "B Ct"] = None) -> Float[Tensor, "B Ct Nt"]: - embeddings = repeat(self.embeddings, "Np Ct Hp Wp -> B Np Ct Hp Wp", B=batch_size) - if cond_embeddings is not None: - embeddings = embeddings + cond_embeddings - return rearrange( - embeddings, - "B Np Ct Hp Wp -> B Ct (Np Hp Wp)", - ) - - def detokenize( - self, tokens: Float[Tensor, "B Ct Nt"] - ) -> Float[Tensor, "B 3 Ct Hp Wp"]: - batch_size, Ct, Nt = tokens.shape - assert Nt == self.cfg.plane_size**2 * 3 - assert Ct == self.cfg.num_channels - return rearrange( - tokens, - "B Ct (Np Hp Wp) -> B Np Ct Hp Wp", - Np=3, - Hp=self.cfg.plane_size, - Wp=self.cfg.plane_size, - ) diff --git a/tgs/models/transformers.py b/tgs/models/transformers.py deleted file mode 100644 index 82ccb14..0000000 --- a/tgs/models/transformers.py +++ /dev/null @@ -1,908 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import torch -import torch.nn.functional as F -from torch import nn - -from diffusers.utils.torch_utils import maybe_allow_in_graph -from diffusers.models.activations import get_activation -from diffusers.models.attention_processor import Attention -from diffusers.models.embeddings import CombinedTimestepLabelEmbeddings - -from dataclasses import dataclass -from ..utils.base import BaseModule -from ..utils.typing import * - - -class MemoryEfficientAttentionMixin: - def enable_xformers_memory_efficient_attention( - self, attention_op: Optional[Callable] = None - ): - r""" - Enable memory efficient attention from [xFormers](https://facebookresearch.github.io/xformers/). When this - option is enabled, you should observe lower GPU memory usage and a potential speed up during inference. Speed - up during training is not guaranteed. - - - - ⚠️ When memory efficient attention and sliced attention are both enabled, memory efficient attention takes - precedent. - - - - Parameters: - attention_op (`Callable`, *optional*): - Override the default `None` operator for use as `op` argument to the - [`memory_efficient_attention()`](https://facebookresearch.github.io/xformers/components/ops.html#xformers.ops.memory_efficient_attention) - function of xFormers. - - Examples: - - ```py - >>> import torch - >>> from diffusers import DiffusionPipeline - >>> from xformers.ops import MemoryEfficientAttentionFlashAttentionOp - - >>> pipe = DiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-2-1", torch_dtype=torch.float16) - >>> pipe = pipe.to("cuda") - >>> pipe.enable_xformers_memory_efficient_attention(attention_op=MemoryEfficientAttentionFlashAttentionOp) - >>> # Workaround for not accepting attention shape using VAE for Flash Attention - >>> pipe.vae.enable_xformers_memory_efficient_attention(attention_op=None) - ``` - """ - self.set_use_memory_efficient_attention_xformers(True, attention_op) - - def disable_xformers_memory_efficient_attention(self): - r""" - Disable memory efficient attention from [xFormers](https://facebookresearch.github.io/xformers/). - """ - self.set_use_memory_efficient_attention_xformers(False) - - def set_use_memory_efficient_attention_xformers( - self, valid: bool, attention_op: Optional[Callable] = None - ) -> None: - # Recursively walk through all the children. - # Any children which exposes the set_use_memory_efficient_attention_xformers method - # gets the message - def fn_recursive_set_mem_eff(module: torch.nn.Module): - if hasattr(module, "set_use_memory_efficient_attention_xformers"): - module.set_use_memory_efficient_attention_xformers(valid, attention_op) - - for child in module.children(): - fn_recursive_set_mem_eff(child) - - for module in self.children(): - if isinstance(module, torch.nn.Module): - fn_recursive_set_mem_eff(module) - - -@maybe_allow_in_graph -class GatedSelfAttentionDense(nn.Module): - r""" - A gated self-attention dense layer that combines visual features and object features. - - Parameters: - query_dim (`int`): The number of channels in the query. - context_dim (`int`): The number of channels in the context. - n_heads (`int`): The number of heads to use for attention. - d_head (`int`): The number of channels in each head. - """ - - def __init__(self, query_dim: int, context_dim: int, n_heads: int, d_head: int): - super().__init__() - - # we need a linear projection since we need cat visual feature and obj feature - self.linear = nn.Linear(context_dim, query_dim) - - self.attn = Attention(query_dim=query_dim, heads=n_heads, dim_head=d_head) - self.ff = FeedForward(query_dim, activation_fn="geglu") - - self.norm1 = nn.LayerNorm(query_dim) - self.norm2 = nn.LayerNorm(query_dim) - - self.register_parameter("alpha_attn", nn.Parameter(torch.tensor(0.0))) - self.register_parameter("alpha_dense", nn.Parameter(torch.tensor(0.0))) - - self.enabled = True - - def forward(self, x: torch.Tensor, objs: torch.Tensor) -> torch.Tensor: - if not self.enabled: - return x - - n_visual = x.shape[1] - objs = self.linear(objs) - - x = ( - x - + self.alpha_attn.tanh() - * self.attn(self.norm1(torch.cat([x, objs], dim=1)))[:, :n_visual, :] - ) - x = x + self.alpha_dense.tanh() * self.ff(self.norm2(x)) - - return x - - -@maybe_allow_in_graph -class BasicTransformerBlock(nn.Module, MemoryEfficientAttentionMixin): - r""" - A basic Transformer block. - - Parameters: - dim (`int`): The number of channels in the input and output. - num_attention_heads (`int`): The number of heads to use for multi-head attention. - attention_head_dim (`int`): The number of channels in each head. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - cross_attention_dim (`int`, *optional*): The size of the encoder_hidden_states vector for cross attention. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to be used in feed-forward. - num_embeds_ada_norm (: - obj: `int`, *optional*): The number of diffusion steps used during training. See `Transformer2DModel`. - attention_bias (: - obj: `bool`, *optional*, defaults to `False`): Configure if the attentions should contain a bias parameter. - only_cross_attention (`bool`, *optional*): - Whether to use only cross-attention layers. In this case two cross attention layers are used. - double_self_attention (`bool`, *optional*): - Whether to use two self-attention layers. In this case no cross attention layers are used. - upcast_attention (`bool`, *optional*): - Whether to upcast the attention computation to float32. This is useful for mixed precision training. - norm_elementwise_affine (`bool`, *optional*, defaults to `True`): - Whether to use learnable elementwise affine parameters for normalization. - norm_type (`str`, *optional*, defaults to `"layer_norm"`): - The normalization layer to use. Can be `"layer_norm"`, `"ada_norm"` or `"ada_norm_zero"`. - final_dropout (`bool` *optional*, defaults to False): - Whether to apply a final dropout after the last feed-forward layer. - attention_type (`str`, *optional*, defaults to `"default"`): - The type of attention to use. Can be `"default"` or `"gated"` or `"gated-text-image"`. - """ - - def __init__( - self, - dim: int, - num_attention_heads: int, - attention_head_dim: int, - dropout=0.0, - cross_attention_dim: Optional[int] = None, - activation_fn: str = "geglu", - num_embeds_ada_norm: Optional[int] = None, - cond_dim_ada_norm_continuous: Optional[int] = None, - attention_bias: bool = False, - only_cross_attention: bool = False, - double_self_attention: bool = False, - upcast_attention: bool = False, - norm_elementwise_affine: bool = True, - norm_type: str = "layer_norm", - final_dropout: bool = False, - attention_type: str = "default", - ): - super().__init__() - self.only_cross_attention = only_cross_attention - - self.use_ada_layer_norm_zero = ( - num_embeds_ada_norm is not None - ) and norm_type == "ada_norm_zero" - self.use_ada_layer_norm = ( - num_embeds_ada_norm is not None - ) and norm_type == "ada_norm" - self.use_ada_layer_norm_continuous = ( - cond_dim_ada_norm_continuous is not None - ) and norm_type == "ada_norm_continuous" - - assert ( - int(self.use_ada_layer_norm) - + int(self.use_ada_layer_norm_continuous) - + int(self.use_ada_layer_norm_zero) - <= 1 - ) - - if norm_type in ("ada_norm", "ada_norm_zero") and num_embeds_ada_norm is None: - raise ValueError( - f"`norm_type` is set to {norm_type}, but `num_embeds_ada_norm` is not defined. Please make sure to" - f" define `num_embeds_ada_norm` if setting `norm_type` to {norm_type}." - ) - - # Define 3 blocks. Each block has its own normalization layer. - # 1. Self-Attn - if self.use_ada_layer_norm: - self.norm1 = AdaLayerNorm(dim, num_embeds_ada_norm) - elif self.use_ada_layer_norm_continuous: - self.norm1 = AdaLayerNormContinuous(dim, cond_dim_ada_norm_continuous) - elif self.use_ada_layer_norm_zero: - self.norm1 = AdaLayerNormZero(dim, num_embeds_ada_norm) - else: - self.norm1 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - self.attn1 = Attention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - ) - - # 2. Cross-Attn - if cross_attention_dim is not None or double_self_attention: - # We currently only use AdaLayerNormZero for self attention where there will only be one attention block. - # I.e. the number of returned modulation chunks from AdaLayerZero would not make sense if returned during - # the second cross attention block. - if self.use_ada_layer_norm: - self.norm2 = AdaLayerNorm(dim, num_embeds_ada_norm) - elif self.use_ada_layer_norm_continuous: - self.norm2 = AdaLayerNormContinuous(dim, cond_dim_ada_norm_continuous) - else: - self.norm2 = nn.LayerNorm( - dim, elementwise_affine=norm_elementwise_affine - ) - - self.attn2 = Attention( - query_dim=dim, - cross_attention_dim=cross_attention_dim - if not double_self_attention - else None, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - upcast_attention=upcast_attention, - ) # is self-attn if encoder_hidden_states is none - else: - self.norm2 = None - self.attn2 = None - - # 3. Feed-forward - if self.use_ada_layer_norm_continuous: - self.norm3 = AdaLayerNormContinuous(dim, cond_dim_ada_norm_continuous) - else: - self.norm3 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - self.ff = FeedForward( - dim, - dropout=dropout, - activation_fn=activation_fn, - final_dropout=final_dropout, - ) - - # 4. Fuser - if attention_type == "gated" or attention_type == "gated-text-image": - self.fuser = GatedSelfAttentionDense( - dim, cross_attention_dim, num_attention_heads, attention_head_dim - ) - - # let chunk size default to None - self._chunk_size = None - self._chunk_dim = 0 - - def set_chunk_feed_forward(self, chunk_size: Optional[int], dim: int): - # Sets chunk feed-forward - self._chunk_size = chunk_size - self._chunk_dim = dim - - def forward( - self, - hidden_states: torch.FloatTensor, - attention_mask: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - timestep: Optional[torch.LongTensor] = None, - modulation_cond: Optional[torch.FloatTensor] = None, - cross_attention_kwargs: Dict[str, Any] = None, - class_labels: Optional[torch.LongTensor] = None, - ) -> torch.FloatTensor: - # Notice that normalization is always applied before the real computation in the following blocks. - # 0. Self-Attention - if self.use_ada_layer_norm: - norm_hidden_states = self.norm1(hidden_states, timestep) - elif self.use_ada_layer_norm_continuous: - norm_hidden_states = self.norm1(hidden_states, modulation_cond) - elif self.use_ada_layer_norm_zero: - norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1( - hidden_states, timestep, class_labels, hidden_dtype=hidden_states.dtype - ) - else: - norm_hidden_states = self.norm1(hidden_states) - - # 1. Retrieve lora scale. - lora_scale = ( - cross_attention_kwargs.get("scale", 1.0) - if cross_attention_kwargs is not None - else 1.0 - ) - - # 2. Prepare GLIGEN inputs - cross_attention_kwargs = ( - cross_attention_kwargs.copy() if cross_attention_kwargs is not None else {} - ) - gligen_kwargs = cross_attention_kwargs.pop("gligen", None) - - attn_output = self.attn1( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states - if self.only_cross_attention - else None, - attention_mask=attention_mask, - **cross_attention_kwargs, - ) - if self.use_ada_layer_norm_zero: - attn_output = gate_msa.unsqueeze(1) * attn_output - hidden_states = attn_output + hidden_states - - # 2.5 GLIGEN Control - if gligen_kwargs is not None: - hidden_states = self.fuser(hidden_states, gligen_kwargs["objs"]) - # 2.5 ends - - # 3. Cross-Attention - if self.attn2 is not None: - if self.use_ada_layer_norm: - norm_hidden_states = self.norm2(hidden_states, timestep) - elif self.use_ada_layer_norm_continuous: - norm_hidden_states = self.norm2(hidden_states, modulation_cond) - else: - norm_hidden_states = self.norm2(hidden_states) - - attn_output = self.attn2( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states, - attention_mask=encoder_attention_mask, - **cross_attention_kwargs, - ) - hidden_states = attn_output + hidden_states - - # 4. Feed-forward - if self.use_ada_layer_norm_continuous: - norm_hidden_states = self.norm3(hidden_states, modulation_cond) - else: - norm_hidden_states = self.norm3(hidden_states) - - if self.use_ada_layer_norm_zero: - norm_hidden_states = ( - norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None] - ) - - if self._chunk_size is not None: - # "feed_forward_chunk_size" can be used to save memory - if norm_hidden_states.shape[self._chunk_dim] % self._chunk_size != 0: - raise ValueError( - f"`hidden_states` dimension to be chunked: {norm_hidden_states.shape[self._chunk_dim]} has to be divisible by chunk size: {self._chunk_size}. Make sure to set an appropriate `chunk_size` when calling `unet.enable_forward_chunking`." - ) - - num_chunks = norm_hidden_states.shape[self._chunk_dim] // self._chunk_size - ff_output = torch.cat( - [ - self.ff(hid_slice, scale=lora_scale) - for hid_slice in norm_hidden_states.chunk( - num_chunks, dim=self._chunk_dim - ) - ], - dim=self._chunk_dim, - ) - else: - ff_output = self.ff(norm_hidden_states, scale=lora_scale) - - if self.use_ada_layer_norm_zero: - ff_output = gate_mlp.unsqueeze(1) * ff_output - - hidden_states = ff_output + hidden_states - - return hidden_states - - -class FeedForward(nn.Module): - r""" - A feed-forward layer. - - Parameters: - dim (`int`): The number of channels in the input. - dim_out (`int`, *optional*): The number of channels in the output. If not given, defaults to `dim`. - mult (`int`, *optional*, defaults to 4): The multiplier to use for the hidden dimension. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to be used in feed-forward. - final_dropout (`bool` *optional*, defaults to False): Apply a final dropout. - """ - - def __init__( - self, - dim: int, - dim_out: Optional[int] = None, - mult: int = 4, - dropout: float = 0.0, - activation_fn: str = "geglu", - final_dropout: bool = False, - ): - super().__init__() - inner_dim = int(dim * mult) - dim_out = dim_out if dim_out is not None else dim - linear_cls = nn.Linear - - if activation_fn == "gelu": - act_fn = GELU(dim, inner_dim) - if activation_fn == "gelu-approximate": - act_fn = GELU(dim, inner_dim, approximate="tanh") - elif activation_fn == "geglu": - act_fn = GEGLU(dim, inner_dim) - elif activation_fn == "geglu-approximate": - act_fn = ApproximateGELU(dim, inner_dim) - - self.net = nn.ModuleList([]) - # project in - self.net.append(act_fn) - # project dropout - self.net.append(nn.Dropout(dropout)) - # project out - self.net.append(linear_cls(inner_dim, dim_out)) - # FF as used in Vision Transformer, MLP-Mixer, etc. have a final dropout - if final_dropout: - self.net.append(nn.Dropout(dropout)) - - def forward(self, hidden_states: torch.Tensor, scale: float = 1.0) -> torch.Tensor: - for module in self.net: - hidden_states = module(hidden_states) - return hidden_states - - -class GELU(nn.Module): - r""" - GELU activation function with tanh approximation support with `approximate="tanh"`. - - Parameters: - dim_in (`int`): The number of channels in the input. - dim_out (`int`): The number of channels in the output. - approximate (`str`, *optional*, defaults to `"none"`): If `"tanh"`, use tanh approximation. - """ - - def __init__(self, dim_in: int, dim_out: int, approximate: str = "none"): - super().__init__() - self.proj = nn.Linear(dim_in, dim_out) - self.approximate = approximate - - def gelu(self, gate: torch.Tensor) -> torch.Tensor: - if gate.device.type != "mps": - return F.gelu(gate, approximate=self.approximate) - # mps: gelu is not implemented for float16 - return F.gelu(gate.to(dtype=torch.float32), approximate=self.approximate).to( - dtype=gate.dtype - ) - - def forward(self, hidden_states): - hidden_states = self.proj(hidden_states) - hidden_states = self.gelu(hidden_states) - return hidden_states - - -class GEGLU(nn.Module): - r""" - A variant of the gated linear unit activation function from https://arxiv.org/abs/2002.05202. - - Parameters: - dim_in (`int`): The number of channels in the input. - dim_out (`int`): The number of channels in the output. - """ - - def __init__(self, dim_in: int, dim_out: int): - super().__init__() - linear_cls = nn.Linear - - self.proj = linear_cls(dim_in, dim_out * 2) - - def gelu(self, gate: torch.Tensor) -> torch.Tensor: - if gate.device.type != "mps": - return F.gelu(gate) - # mps: gelu is not implemented for float16 - return F.gelu(gate.to(dtype=torch.float32)).to(dtype=gate.dtype) - - def forward(self, hidden_states, scale: float = 1.0): - args = () - hidden_states, gate = self.proj(hidden_states, *args).chunk(2, dim=-1) - return hidden_states * self.gelu(gate) - - -class ApproximateGELU(nn.Module): - r""" - The approximate form of Gaussian Error Linear Unit (GELU). For more details, see section 2: - https://arxiv.org/abs/1606.08415. - - Parameters: - dim_in (`int`): The number of channels in the input. - dim_out (`int`): The number of channels in the output. - """ - - def __init__(self, dim_in: int, dim_out: int): - super().__init__() - self.proj = nn.Linear(dim_in, dim_out) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = self.proj(x) - return x * torch.sigmoid(1.702 * x) - - -class AdaLayerNorm(nn.Module): - r""" - Norm layer modified to incorporate timestep embeddings. - - Parameters: - embedding_dim (`int`): The size of each embedding vector. - num_embeddings (`int`): The size of the dictionary of embeddings. - """ - - def __init__(self, embedding_dim: int, num_embeddings: int): - super().__init__() - self.emb = nn.Embedding(num_embeddings, embedding_dim) - self.silu = nn.SiLU() - self.linear = nn.Linear(embedding_dim, embedding_dim * 2) - self.norm = nn.LayerNorm(embedding_dim, elementwise_affine=False) - - def forward(self, x: torch.Tensor, timestep: torch.Tensor) -> torch.Tensor: - emb = self.linear(self.silu(self.emb(timestep))) - scale, shift = torch.chunk(emb, 2, dim=1) - x = self.norm(x) * (1 + scale.unsqueeze(1)) + shift.unsqueeze(1) - return x - - -class AdaLayerNormContinuous(nn.Module): - r""" - Norm layer modified to incorporate arbitrary continuous embeddings. - - Parameters: - embedding_dim (`int`): The size of each embedding vector. - """ - - def __init__(self, embedding_dim: int, condition_dim: int): - super().__init__() - self.silu = nn.SiLU() - self.linear1 = nn.Linear(condition_dim, condition_dim) - self.linear2 = nn.Linear(condition_dim, embedding_dim * 2) - self.norm = nn.LayerNorm(embedding_dim, elementwise_affine=False) - - def forward(self, x: torch.Tensor, condition: torch.Tensor) -> torch.Tensor: - emb = self.linear2(self.silu(self.linear1(condition))) - scale, shift = torch.chunk(emb, 2, dim=1) - x = self.norm(x) * (1 + scale.unsqueeze(1)) + shift.unsqueeze(1) - return x - - -class Modulation(nn.Module): - def __init__(self, embedding_dim: int, condition_dim: int, zero_init: bool = False, single_layer: bool = False): - super().__init__() - self.silu = nn.SiLU() - if single_layer: - self.linear1 = nn.Identity() - else: - self.linear1 = nn.Linear(condition_dim, condition_dim) - - self.linear2 = nn.Linear(condition_dim, embedding_dim * 2) - - # Only zero init the last linear layer - if zero_init: - nn.init.zeros_(self.linear2.weight) - nn.init.zeros_(self.linear2.bias) - - def forward(self, x: torch.Tensor, condition: torch.Tensor) -> torch.Tensor: - emb = self.linear2(self.silu(self.linear1(condition))) - scale, shift = torch.chunk(emb, 2, dim=1) - x = x * (1 + scale.unsqueeze(1)) + shift.unsqueeze(1) - return x - - -class AdaLayerNormZero(nn.Module): - r""" - Norm layer adaptive layer norm zero (adaLN-Zero). - - Parameters: - embedding_dim (`int`): The size of each embedding vector. - num_embeddings (`int`): The size of the dictionary of embeddings. - """ - - def __init__(self, embedding_dim: int, num_embeddings: int): - super().__init__() - - self.emb = CombinedTimestepLabelEmbeddings(num_embeddings, embedding_dim) - - self.silu = nn.SiLU() - self.linear = nn.Linear(embedding_dim, 6 * embedding_dim, bias=True) - self.norm = nn.LayerNorm(embedding_dim, elementwise_affine=False, eps=1e-6) - - def forward( - self, - x: torch.Tensor, - timestep: torch.Tensor, - class_labels: torch.LongTensor, - hidden_dtype: Optional[torch.dtype] = None, - ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]: - emb = self.linear( - self.silu(self.emb(timestep, class_labels, hidden_dtype=hidden_dtype)) - ) - shift_msa, scale_msa, gate_msa, shift_mlp, scale_mlp, gate_mlp = emb.chunk( - 6, dim=1 - ) - x = self.norm(x) * (1 + scale_msa[:, None]) + shift_msa[:, None] - return x, gate_msa, shift_mlp, scale_mlp, gate_mlp - - -class AdaGroupNorm(nn.Module): - r""" - GroupNorm layer modified to incorporate timestep embeddings. - - Parameters: - embedding_dim (`int`): The size of each embedding vector. - num_embeddings (`int`): The size of the dictionary of embeddings. - num_groups (`int`): The number of groups to separate the channels into. - act_fn (`str`, *optional*, defaults to `None`): The activation function to use. - eps (`float`, *optional*, defaults to `1e-5`): The epsilon value to use for numerical stability. - """ - - def __init__( - self, - embedding_dim: int, - out_dim: int, - num_groups: int, - act_fn: Optional[str] = None, - eps: float = 1e-5, - ): - super().__init__() - self.num_groups = num_groups - self.eps = eps - - if act_fn is None: - self.act = None - else: - self.act = get_activation(act_fn) - - self.linear = nn.Linear(embedding_dim, out_dim * 2) - - def forward(self, x: torch.Tensor, emb: torch.Tensor) -> torch.Tensor: - if self.act: - emb = self.act(emb) - emb = self.linear(emb) - emb = emb[:, :, None, None] - scale, shift = emb.chunk(2, dim=1) - - x = F.group_norm(x, self.num_groups, eps=self.eps) - x = x * (1 + scale) + shift - return x - -class Transformer1D(BaseModule, MemoryEfficientAttentionMixin): - """ - A 1D Transformer model for sequence data. - - Parameters: - num_attention_heads (`int`, *optional*, defaults to 16): The number of heads to use for multi-head attention. - attention_head_dim (`int`, *optional*, defaults to 88): The number of channels in each head. - in_channels (`int`, *optional*): - The number of channels in the input and output (specify if the input is **continuous**). - num_layers (`int`, *optional*, defaults to 1): The number of layers of Transformer blocks to use. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - cross_attention_dim (`int`, *optional*): The number of `encoder_hidden_states` dimensions to use. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to use in feed-forward. - num_embeds_ada_norm ( `int`, *optional*): - The number of diffusion steps used during training. Pass if at least one of the norm_layers is - `AdaLayerNorm`. This is fixed during training since it is used to learn a number of embeddings that are - added to the hidden states. - - During inference, you can denoise for up to but not more steps than `num_embeds_ada_norm`. - attention_bias (`bool`, *optional*): - Configure if the `TransformerBlocks` attention should contain a bias parameter. - """ - - @dataclass - class Config(BaseModule.Config): - num_attention_heads: int = 16 - attention_head_dim: int = 88 - in_channels: Optional[int] = None - out_channels: Optional[int] = None - num_layers: int = 1 - dropout: float = 0.0 - norm_num_groups: int = 32 - cross_attention_dim: Optional[int] = None - attention_bias: bool = False - activation_fn: str = "geglu" - num_embeds_ada_norm: Optional[int] = None - cond_dim_ada_norm_continuous: Optional[int] = None - only_cross_attention: bool = False - double_self_attention: bool = False - upcast_attention: bool = False - norm_type: str = "layer_norm" - norm_elementwise_affine: bool = True - attention_type: str = "default" - enable_memory_efficient_attention: bool = False - gradient_checkpointing: bool = False - - cfg: Config - - def configure(self) -> None: - super().configure() - - self.num_attention_heads = self.cfg.num_attention_heads - self.attention_head_dim = self.cfg.attention_head_dim - inner_dim = self.num_attention_heads * self.attention_head_dim - - linear_cls = nn.Linear - - if self.cfg.norm_type == "layer_norm" and ( - self.cfg.num_embeds_ada_norm is not None - or self.cfg.cond_dim_ada_norm_continuous is not None - ): - raise ValueError("Incorrect norm_type.") - - # 2. Define input layers - self.in_channels = self.cfg.in_channels - - self.norm = torch.nn.GroupNorm( - num_groups=self.cfg.norm_num_groups, - num_channels=self.cfg.in_channels, - eps=1e-6, - affine=True, - ) - self.proj_in = linear_cls(self.cfg.in_channels, inner_dim) - - # 3. Define transformers blocks - self.transformer_blocks = nn.ModuleList( - [ - BasicTransformerBlock( - inner_dim, - self.num_attention_heads, - self.attention_head_dim, - dropout=self.cfg.dropout, - cross_attention_dim=self.cfg.cross_attention_dim, - activation_fn=self.cfg.activation_fn, - num_embeds_ada_norm=self.cfg.num_embeds_ada_norm, - cond_dim_ada_norm_continuous=self.cfg.cond_dim_ada_norm_continuous, - attention_bias=self.cfg.attention_bias, - only_cross_attention=self.cfg.only_cross_attention, - double_self_attention=self.cfg.double_self_attention, - upcast_attention=self.cfg.upcast_attention, - norm_type=self.cfg.norm_type, - norm_elementwise_affine=self.cfg.norm_elementwise_affine, - attention_type=self.cfg.attention_type, - ) - for d in range(self.cfg.num_layers) - ] - ) - - # 4. Define output layers - self.out_channels = ( - self.cfg.in_channels - if self.cfg.out_channels is None - else self.cfg.out_channels - ) - - self.proj_out = linear_cls(inner_dim, self.cfg.in_channels) - - self.gradient_checkpointing = self.cfg.gradient_checkpointing - - self.set_use_memory_efficient_attention_xformers( - self.cfg.enable_memory_efficient_attention - ) - - def forward( - self, - hidden_states: torch.Tensor, - encoder_hidden_states: Optional[torch.Tensor] = None, - timestep: Optional[torch.LongTensor] = None, - modulation_cond: Optional[torch.FloatTensor] = None, - class_labels: Optional[torch.LongTensor] = None, - cross_attention_kwargs: Dict[str, Any] = None, - attention_mask: Optional[torch.Tensor] = None, - encoder_attention_mask: Optional[torch.Tensor] = None, - ): - """ - The [`Transformer1DModel`] forward method. - - Args: - hidden_states (`torch.LongTensor` of shape `(batch size, num latent pixels)` if discrete, `torch.FloatTensor` of shape `(batch size, channel, height, width)` if continuous): - Input `hidden_states`. - encoder_hidden_states ( `torch.FloatTensor` of shape `(batch size, sequence len, embed dims)`, *optional*): - Conditional embeddings for cross attention layer. If not given, cross-attention defaults to - self-attention. - timestep ( `torch.LongTensor`, *optional*): - Used to indicate denoising step. Optional timestep to be applied as an embedding in `AdaLayerNorm`. - class_labels ( `torch.LongTensor` of shape `(batch size, num classes)`, *optional*): - Used to indicate class labels conditioning. Optional class labels to be applied as an embedding in - `AdaLayerZeroNorm`. - cross_attention_kwargs ( `Dict[str, Any]`, *optional*): - A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under - `self.processor` in - [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py). - attention_mask ( `torch.Tensor`, *optional*): - An attention mask of shape `(batch, key_tokens)` is applied to `encoder_hidden_states`. If `1` the mask - is kept, otherwise if `0` it is discarded. Mask will be converted into a bias, which adds large - negative values to the attention scores corresponding to "discard" tokens. - encoder_attention_mask ( `torch.Tensor`, *optional*): - Cross-attention mask applied to `encoder_hidden_states`. Two formats supported: - - * Mask `(batch, sequence_length)` True = keep, False = discard. - * Bias `(batch, 1, sequence_length)` 0 = keep, -10000 = discard. - - If `ndim == 2`: will be interpreted as a mask, then converted into a bias consistent with the format - above. This bias will be added to the cross-attention scores. - return_dict (`bool`, *optional*, defaults to `True`): - Whether or not to return a [`~models.unet_2d_condition.UNet2DConditionOutput`] instead of a plain - tuple. - - Returns: - If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a - `tuple` where the first element is the sample tensor. - """ - # ensure attention_mask is a bias, and give it a singleton query_tokens dimension. - # we may have done this conversion already, e.g. if we came here via UNet2DConditionModel#forward. - # we can tell by counting dims; if ndim == 2: it's a mask rather than a bias. - # expects mask of shape: - # [batch, key_tokens] - # adds singleton query_tokens dimension: - # [batch, 1, key_tokens] - # this helps to broadcast it as a bias over attention scores, which will be in one of the following shapes: - # [batch, heads, query_tokens, key_tokens] (e.g. torch sdp attn) - # [batch * heads, query_tokens, key_tokens] (e.g. xformers or classic attn) - if attention_mask is not None and attention_mask.ndim == 2: - # assume that mask is expressed as: - # (1 = keep, 0 = discard) - # convert mask into a bias that can be added to attention scores: - # (keep = +0, discard = -10000.0) - attention_mask = (1 - attention_mask.to(hidden_states.dtype)) * -10000.0 - attention_mask = attention_mask.unsqueeze(1) - - # convert encoder_attention_mask to a bias the same way we do for attention_mask - if encoder_attention_mask is not None and encoder_attention_mask.ndim == 2: - encoder_attention_mask = ( - 1 - encoder_attention_mask.to(hidden_states.dtype) - ) * -10000.0 - encoder_attention_mask = encoder_attention_mask.unsqueeze(1) - - # 1. Input - batch, _, seq_len = hidden_states.shape - residual = hidden_states - - hidden_states = self.norm(hidden_states) - inner_dim = hidden_states.shape[1] - hidden_states = hidden_states.permute(0, 2, 1).reshape( - batch, seq_len, inner_dim - ) - hidden_states = self.proj_in(hidden_states) - - # 2. Blocks - for block in self.transformer_blocks: - if self.training and self.gradient_checkpointing: - hidden_states = torch.utils.checkpoint.checkpoint( - block, - hidden_states, - attention_mask, - encoder_hidden_states, - encoder_attention_mask, - timestep, - modulation_cond, - cross_attention_kwargs, - class_labels, - use_reentrant=False, - ) - else: - hidden_states = block( - hidden_states, - attention_mask=attention_mask, - encoder_hidden_states=encoder_hidden_states, - encoder_attention_mask=encoder_attention_mask, - timestep=timestep, - modulation_cond=modulation_cond, - cross_attention_kwargs=cross_attention_kwargs, - class_labels=class_labels, - ) - - # 3. Output - hidden_states = self.proj_out(hidden_states) - hidden_states = ( - hidden_states.reshape(batch, seq_len, inner_dim) - .permute(0, 2, 1) - .contiguous() - ) - - output = hidden_states + residual - - return output diff --git a/tgs/utils/__init__.py b/tgs/utils/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/tgs/utils/base.py b/tgs/utils/base.py deleted file mode 100644 index e98f63c..0000000 --- a/tgs/utils/base.py +++ /dev/null @@ -1,129 +0,0 @@ -from dataclasses import dataclass - -import torch.nn as nn - -from .config import parse_structured -from .misc import get_device, load_module_weights -from .typing import * - - -class Configurable: - @dataclass - class Config: - pass - - def __init__(self, cfg: Optional[dict] = None) -> None: - super().__init__() - self.cfg = parse_structured(self.Config, cfg) - - -class Updateable: - def do_update_step( - self, epoch: int, global_step: int, on_load_weights: bool = False - ): - for attr in self.__dir__(): - if attr.startswith("_"): - continue - try: - module = getattr(self, attr) - except: - continue # ignore attributes like property, which can't be retrived using getattr? - if isinstance(module, Updateable): - module.do_update_step( - epoch, global_step, on_load_weights=on_load_weights - ) - self.update_step(epoch, global_step, on_load_weights=on_load_weights) - - def do_update_step_end(self, epoch: int, global_step: int): - for attr in self.__dir__(): - if attr.startswith("_"): - continue - try: - module = getattr(self, attr) - except: - continue # ignore attributes like property, which can't be retrived using getattr? - if isinstance(module, Updateable): - module.do_update_step_end(epoch, global_step) - self.update_step_end(epoch, global_step) - - def update_step(self, epoch: int, global_step: int, on_load_weights: bool = False): - # override this method to implement custom update logic - # if on_load_weights is True, you should be careful doing things related to model evaluations, - # as the models and tensors are not guarenteed to be on the same device - pass - - def update_step_end(self, epoch: int, global_step: int): - pass - - -def update_if_possible(module: Any, epoch: int, global_step: int) -> None: - if isinstance(module, Updateable): - module.do_update_step(epoch, global_step) - - -def update_end_if_possible(module: Any, epoch: int, global_step: int) -> None: - if isinstance(module, Updateable): - module.do_update_step_end(epoch, global_step) - - -class BaseObject(Updateable): - @dataclass - class Config: - pass - - cfg: Config # add this to every subclass of BaseObject to enable static type checking - - def __init__( - self, cfg: Optional[Union[dict, DictConfig]] = None, *args, **kwargs - ) -> None: - super().__init__() - self.cfg = parse_structured(self.Config, cfg) - self.device = get_device() - self.configure(*args, **kwargs) - - def configure(self, *args, **kwargs) -> None: - pass - - -class BaseModule(nn.Module, Updateable): - @dataclass - class Config: - weights: Optional[str] = None - freeze: Optional[bool] = False - - cfg: Config # add this to every subclass of BaseModule to enable static type checking - - def __init__( - self, cfg: Optional[Union[dict, DictConfig]] = None, *args, **kwargs - ) -> None: - super().__init__() - self.cfg = parse_structured(self.Config, cfg) - self.device = get_device() - self._non_modules = {} - self.configure(*args, **kwargs) - if self.cfg.weights is not None: - # format: path/to/weights:module_name - weights_path, module_name = self.cfg.weights.split(":") - state_dict = load_module_weights( - weights_path, module_name=module_name, map_location="cpu" - ) - self.load_state_dict(state_dict, strict=False) - # self.do_update_step( - # epoch, global_step, on_load_weights=True - # ) # restore states - - if self.cfg.freeze: - for params in self.parameters(): - params.requires_grad = False - - def configure(self, *args, **kwargs) -> None: - pass - - def register_non_module(self, name: str, module: nn.Module) -> None: - # non-modules won't be treated as model parameters - if name in self._non_modules: - raise ValueError(f"Non-module {name} already exists!") - self._non_modules[name] = module - - def non_module(self, name: str): - return self._non_modules.get(name, None) diff --git a/tgs/utils/config.py b/tgs/utils/config.py deleted file mode 100644 index 869bc39..0000000 --- a/tgs/utils/config.py +++ /dev/null @@ -1,72 +0,0 @@ -import os -from dataclasses import dataclass, field - -from omegaconf import OmegaConf - -from .typing import * - -# ============ Register OmegaConf Recolvers ============= # -OmegaConf.register_new_resolver("calc_exp_lr_decay_rate", lambda factor, n: factor ** (1.0 / n), replace=True) -OmegaConf.register_new_resolver("add", lambda a, b: a + b, replace=True) -OmegaConf.register_new_resolver("sub", lambda a, b: a - b, replace=True) -OmegaConf.register_new_resolver("mul", lambda a, b: a * b, replace=True) -OmegaConf.register_new_resolver("div", lambda a, b: a / b, replace=True) -OmegaConf.register_new_resolver("idiv", lambda a, b: a // b, replace=True) -OmegaConf.register_new_resolver("basename", lambda p: os.path.basename(p), replace=True) -OmegaConf.register_new_resolver("rmspace", lambda s, sub: s.replace(" ", sub), replace=True) -OmegaConf.register_new_resolver("tuple2", lambda s: [float(s), float(s)], replace=True) -OmegaConf.register_new_resolver("gt0", lambda s: s > 0, replace=True) -OmegaConf.register_new_resolver("not", lambda s: not s, replace=True) -OmegaConf.register_new_resolver("shsdim", lambda sh_degree: (sh_degree + 1) ** 2 * 3, replace=True) -# ======================================================= # - -# ============== Automatic Name Resolvers =============== # -def get_naming_convention(cfg): - # TODO - name = f"tgs_{cfg.system.backbone.num_layers}" - return name - -# ======================================================= # - -@dataclass -class ExperimentConfig: - n_gpus: int = 1 - data: dict = field(default_factory=dict) - system: dict = field(default_factory=dict) - -def load_config( - *yamls: str, cli_args: list = [], from_string=False, makedirs=True, **kwargs -) -> Any: - if from_string: - parse_func = OmegaConf.create - else: - parse_func = OmegaConf.load - yaml_confs = [] - for y in yamls: - conf = parse_func(y) - extends = conf.pop("extends", None) - if extends: - assert os.path.exists(extends), f"File {extends} does not exist." - yaml_confs.append(OmegaConf.load(extends)) - yaml_confs.append(conf) - cli_conf = OmegaConf.from_cli(cli_args) - cfg = OmegaConf.merge(*yaml_confs, cli_conf, kwargs) - OmegaConf.resolve(cfg) - assert isinstance(cfg, DictConfig) - scfg: ExperimentConfig = parse_structured(ExperimentConfig, cfg) - - return scfg - - -def config_to_primitive(config, resolve: bool = True) -> Any: - return OmegaConf.to_container(config, resolve=resolve) - - -def dump_config(path: str, config) -> None: - with open(path, "w") as fp: - OmegaConf.save(config=config, f=fp) - - -def parse_structured(fields: Any, cfg: Optional[Union[dict, DictConfig]] = None) -> Any: - scfg = OmegaConf.structured(fields(**cfg)) - return scfg diff --git a/tgs/utils/misc.py b/tgs/utils/misc.py deleted file mode 100644 index 7daf634..0000000 --- a/tgs/utils/misc.py +++ /dev/null @@ -1,88 +0,0 @@ -import os -import re - -import torch -from packaging import version - -from .typing import * - - -def parse_version(ver: str): - return version.parse(ver) - - -def get_rank(): - # SLURM_PROCID can be set even if SLURM is not managing the multiprocessing, - # therefore LOCAL_RANK needs to be checked first - rank_keys = ("RANK", "LOCAL_RANK", "SLURM_PROCID", "JSM_NAMESPACE_RANK") - for key in rank_keys: - rank = os.environ.get(key) - if rank is not None: - return int(rank) - return 0 - - -def get_device(): - return torch.device(f"cuda:{get_rank()}") - - -def load_module_weights( - path, module_name=None, ignore_modules=None, map_location=None -) -> Tuple[dict, int, int]: - if module_name is not None and ignore_modules is not None: - raise ValueError("module_name and ignore_modules cannot be both set") - if map_location is None: - map_location = get_device() - - ckpt = torch.load(path, map_location=map_location) - state_dict = ckpt["state_dict"] - state_dict_to_load = state_dict - - if ignore_modules is not None: - state_dict_to_load = {} - for k, v in state_dict.items(): - ignore = any( - [k.startswith(ignore_module + ".") for ignore_module in ignore_modules] - ) - if ignore: - continue - state_dict_to_load[k] = v - - if module_name is not None: - state_dict_to_load = {} - for k, v in state_dict.items(): - m = re.match(rf"^{module_name}\.(.*)$", k) - if m is None: - continue - state_dict_to_load[m.group(1)] = v - - return state_dict_to_load - -# convert a function into recursive style to handle nested dict/list/tuple variables -def make_recursive_func(func): - def wrapper(vars, *args, **kwargs): - if isinstance(vars, list): - return [wrapper(x, *args, **kwargs) for x in vars] - elif isinstance(vars, tuple): - return tuple([wrapper(x, *args, **kwargs) for x in vars]) - elif isinstance(vars, dict): - return {k: wrapper(v, *args, **kwargs) for k, v in vars.items()} - else: - return func(vars, *args, **kwargs) - - return wrapper - -@make_recursive_func -def todevice(vars, device="cuda"): - if isinstance(vars, torch.Tensor): - return vars.to(device) - elif isinstance(vars, str): - return vars - elif isinstance(vars, bool): - return vars - elif isinstance(vars, float): - return vars - elif isinstance(vars, int): - return vars - else: - raise NotImplementedError("invalid input type {} for tensor2numpy".format(type(vars))) diff --git a/tgs/utils/ops.py b/tgs/utils/ops.py deleted file mode 100644 index 29f0fd4..0000000 --- a/tgs/utils/ops.py +++ /dev/null @@ -1,279 +0,0 @@ -import math - -import numpy as np -import torch -import torch.nn.functional as F -from torch.autograd import Function -from torch.cuda.amp import custom_bwd, custom_fwd -from pytorch3d import io -from pytorch3d.renderer import ( - PointsRasterizationSettings, - PointsRasterizer) -from pytorch3d.structures import Pointclouds -from pytorch3d.utils.camera_conversions import cameras_from_opencv_projection -import cv2 - -from .typing import * - -ValidScale = Union[Tuple[float, float], Num[Tensor, "2 D"]] - -def scale_tensor( - dat: Num[Tensor, "... D"], inp_scale: ValidScale, tgt_scale: ValidScale -): - if inp_scale is None: - inp_scale = (0, 1) - if tgt_scale is None: - tgt_scale = (0, 1) - if isinstance(tgt_scale, Tensor): - assert dat.shape[-1] == tgt_scale.shape[-1] - dat = (dat - inp_scale[0]) / (inp_scale[1] - inp_scale[0]) - dat = dat * (tgt_scale[1] - tgt_scale[0]) + tgt_scale[0] - return dat - - -class _TruncExp(Function): # pylint: disable=abstract-method - # Implementation from torch-ngp: - # https://github.com/ashawkey/torch-ngp/blob/93b08a0d4ec1cc6e69d85df7f0acdfb99603b628/activation.py - @staticmethod - @custom_fwd(cast_inputs=torch.float32) - def forward(ctx, x): # pylint: disable=arguments-differ - ctx.save_for_backward(x) - return torch.exp(x) - - @staticmethod - @custom_bwd - def backward(ctx, g): # pylint: disable=arguments-differ - x = ctx.saved_tensors[0] - return g * torch.exp(torch.clamp(x, max=15)) - - -trunc_exp = _TruncExp.apply - - -def get_activation(name) -> Callable: - if name is None: - return lambda x: x - name = name.lower() - if name == "none": - return lambda x: x - elif name == "lin2srgb": - return lambda x: torch.where( - x > 0.0031308, - torch.pow(torch.clamp(x, min=0.0031308), 1.0 / 2.4) * 1.055 - 0.055, - 12.92 * x, - ).clamp(0.0, 1.0) - elif name == "exp": - return lambda x: torch.exp(x) - elif name == "shifted_exp": - return lambda x: torch.exp(x - 1.0) - elif name == "trunc_exp": - return trunc_exp - elif name == "shifted_trunc_exp": - return lambda x: trunc_exp(x - 1.0) - elif name == "sigmoid": - return lambda x: torch.sigmoid(x) - elif name == "tanh": - return lambda x: torch.tanh(x) - elif name == "shifted_softplus": - return lambda x: F.softplus(x - 1.0) - elif name == "scale_-11_01": - return lambda x: x * 0.5 + 0.5 - else: - try: - return getattr(F, name) - except AttributeError: - raise ValueError(f"Unknown activation function: {name}") - -def get_ray_directions( - H: int, - W: int, - focal: Union[float, Tuple[float, float]], - principal: Optional[Tuple[float, float]] = None, - use_pixel_centers: bool = True, -) -> Float[Tensor, "H W 3"]: - """ - Get ray directions for all pixels in camera coordinate. - Reference: https://www.scratchapixel.com/lessons/3d-basic-rendering/ - ray-tracing-generating-camera-rays/standard-coordinate-systems - - Inputs: - H, W, focal, principal, use_pixel_centers: image height, width, focal length, principal point and whether use pixel centers - Outputs: - directions: (H, W, 3), the direction of the rays in camera coordinate - """ - pixel_center = 0.5 if use_pixel_centers else 0 - - if isinstance(focal, float): - fx, fy = focal, focal - cx, cy = W / 2, H / 2 - else: - fx, fy = focal - assert principal is not None - cx, cy = principal - - i, j = torch.meshgrid( - torch.arange(W, dtype=torch.float32) + pixel_center, - torch.arange(H, dtype=torch.float32) + pixel_center, - indexing="xy", - ) - - directions: Float[Tensor, "H W 3"] = torch.stack( - [(i - cx) / fx, -(j - cy) / fy, -torch.ones_like(i)], -1 - ) - - return directions - - -def get_rays( - directions: Float[Tensor, "... 3"], - c2w: Float[Tensor, "... 4 4"], - keepdim=False, - noise_scale=0.0, -) -> Tuple[Float[Tensor, "... 3"], Float[Tensor, "... 3"]]: - # Rotate ray directions from camera coordinate to the world coordinate - assert directions.shape[-1] == 3 - - if directions.ndim == 2: # (N_rays, 3) - if c2w.ndim == 2: # (4, 4) - c2w = c2w[None, :, :] - assert c2w.ndim == 3 # (N_rays, 4, 4) or (1, 4, 4) - rays_d = (directions[:, None, :] * c2w[:, :3, :3]).sum(-1) # (N_rays, 3) - rays_o = c2w[:, :3, 3].expand(rays_d.shape) - elif directions.ndim == 3: # (H, W, 3) - assert c2w.ndim in [2, 3] - if c2w.ndim == 2: # (4, 4) - rays_d = (directions[:, :, None, :] * c2w[None, None, :3, :3]).sum( - -1 - ) # (H, W, 3) - rays_o = c2w[None, None, :3, 3].expand(rays_d.shape) - elif c2w.ndim == 3: # (B, 4, 4) - rays_d = (directions[None, :, :, None, :] * c2w[:, None, None, :3, :3]).sum( - -1 - ) # (B, H, W, 3) - rays_o = c2w[:, None, None, :3, 3].expand(rays_d.shape) - elif directions.ndim == 4: # (B, H, W, 3) - assert c2w.ndim == 3 # (B, 4, 4) - rays_d = (directions[:, :, :, None, :] * c2w[:, None, None, :3, :3]).sum( - -1 - ) # (B, H, W, 3) - rays_o = c2w[:, None, None, :3, 3].expand(rays_d.shape) - - # add camera noise to avoid grid-like artifect - # https://github.com/ashawkey/stable-dreamfusion/blob/49c3d4fa01d68a4f027755acf94e1ff6020458cc/nerf/utils.py#L373 - if noise_scale > 0: - rays_o = rays_o + torch.randn(3, device=rays_o.device) * noise_scale - rays_d = rays_d + torch.randn(3, device=rays_d.device) * noise_scale - - rays_d = F.normalize(rays_d, dim=-1) - if not keepdim: - rays_o, rays_d = rays_o.reshape(-1, 3), rays_d.reshape(-1, 3) - - return rays_o, rays_d - - -def get_projection_matrix( - fovy: Union[float, Float[Tensor, "B"]], aspect_wh: float, near: float, far: float -) -> Float[Tensor, "*B 4 4"]: - if isinstance(fovy, float): - proj_mtx = torch.zeros(4, 4, dtype=torch.float32) - proj_mtx[0, 0] = 1.0 / (math.tan(fovy / 2.0) * aspect_wh) - proj_mtx[1, 1] = -1.0 / math.tan( - fovy / 2.0 - ) # add a negative sign here as the y axis is flipped in nvdiffrast output - proj_mtx[2, 2] = -(far + near) / (far - near) - proj_mtx[2, 3] = -2.0 * far * near / (far - near) - proj_mtx[3, 2] = -1.0 - else: - batch_size = fovy.shape[0] - proj_mtx = torch.zeros(batch_size, 4, 4, dtype=torch.float32) - proj_mtx[:, 0, 0] = 1.0 / (torch.tan(fovy / 2.0) * aspect_wh) - proj_mtx[:, 1, 1] = -1.0 / torch.tan( - fovy / 2.0 - ) # add a negative sign here as the y axis is flipped in nvdiffrast output - proj_mtx[:, 2, 2] = -(far + near) / (far - near) - proj_mtx[:, 2, 3] = -2.0 * far * near / (far - near) - proj_mtx[:, 3, 2] = -1.0 - return proj_mtx - - -def get_mvp_matrix( - c2w: Float[Tensor, "*B 4 4"], proj_mtx: Float[Tensor, "*B 4 4"] -) -> Float[Tensor, "*B 4 4"]: - # calculate w2c from c2w: R' = Rt, t' = -Rt * t - # mathematically equivalent to (c2w)^-1 - if c2w.ndim == 2: - assert proj_mtx.ndim == 2 - w2c: Float[Tensor, "4 4"] = torch.zeros(4, 4).to(c2w) - w2c[:3, :3] = c2w[:3, :3].permute(1, 0) - w2c[:3, 3:] = -c2w[:3, :3].permute(1, 0) @ c2w[:3, 3:] - w2c[3, 3] = 1.0 - else: - w2c: Float[Tensor, "B 4 4"] = torch.zeros(c2w.shape[0], 4, 4).to(c2w) - w2c[:, :3, :3] = c2w[:, :3, :3].permute(0, 2, 1) - w2c[:, :3, 3:] = -c2w[:, :3, :3].permute(0, 2, 1) @ c2w[:, :3, 3:] - w2c[:, 3, 3] = 1.0 - # calculate mvp matrix by proj_mtx @ w2c (mv_mtx) - mvp_mtx = proj_mtx @ w2c - return mvp_mtx - -def get_intrinsic_from_fov(fov, H, W, bs=-1): - focal_length = 0.5 * H / np.tan(0.5 * fov) - intrinsic = np.identity(3, dtype=np.float32) - intrinsic[0, 0] = focal_length - intrinsic[1, 1] = focal_length - intrinsic[0, 2] = W / 2.0 - intrinsic[1, 2] = H / 2.0 - - if bs > 0: - intrinsic = intrinsic[None].repeat(bs, axis=0) - - return torch.from_numpy(intrinsic) - -def points_projection(points: Float[Tensor, "B Np 3"], - c2ws: Float[Tensor, "B 4 4"], - intrinsics: Float[Tensor, "B 3 3"], - local_features: Float[Tensor, "B C H W"], - # Rasterization settings - raster_point_radius: float = 0.0075, # point size - raster_points_per_pixel: int = 1, # a single point per pixel, for now - bin_size: int = 0): - B, C, H, W = local_features.shape - device = local_features.device - raster_settings = PointsRasterizationSettings( - image_size=(H, W), - radius=raster_point_radius, - points_per_pixel=raster_points_per_pixel, - bin_size=bin_size, - ) - Np = points.shape[1] - R = raster_settings.points_per_pixel - - w2cs = torch.inverse(c2ws) - image_size = torch.as_tensor([H, W]).view(1, 2).expand(w2cs.shape[0], -1).to(device) - cameras = cameras_from_opencv_projection(w2cs[:, :3, :3], w2cs[:, :3, 3], intrinsics, image_size) - - rasterize = PointsRasterizer(cameras=cameras, raster_settings=raster_settings) - fragments = rasterize(Pointclouds(points)) - fragments_idx: Tensor = fragments.idx.long() - visible_pixels = (fragments_idx > -1) # (B, H, W, R) - points_to_visible_pixels = fragments_idx[visible_pixels] - - # Reshape local features to (B, H, W, R, C) - local_features = local_features.permute(0, 2, 3, 1).unsqueeze(-2).expand(-1, -1, -1, R, -1) # (B, H, W, R, C) - - # Get local features corresponding to visible points - local_features_proj = torch.zeros(B * Np, C, device=device) - local_features_proj[points_to_visible_pixels] = local_features[visible_pixels] - local_features_proj = local_features_proj.reshape(B, Np, C) - - return local_features_proj - -def compute_distance_transform(mask: torch.Tensor): - image_size = mask.shape[-1] - distance_transform = torch.stack([ - torch.from_numpy(cv2.distanceTransform( - (1 - m), distanceType=cv2.DIST_L2, maskSize=cv2.DIST_MASK_3 - ) / (image_size / 2)) - for m in mask.squeeze(1).detach().cpu().numpy().astype(np.uint8) - ]).unsqueeze(1).clip(0, 1).to(mask.device) - return distance_transform \ No newline at end of file diff --git a/tgs/utils/saving.py b/tgs/utils/saving.py deleted file mode 100644 index f8be1bc..0000000 --- a/tgs/utils/saving.py +++ /dev/null @@ -1,314 +0,0 @@ -import os -import re -import shutil - -import cv2 -import imageio -import matplotlib.pyplot as plt -import numpy as np -import torch -from matplotlib import cm -from matplotlib.colors import LinearSegmentedColormap -from PIL import Image, ImageDraw - -from .typing import * - -class SaverMixin: - _save_dir: Optional[str] = None - - def set_save_dir(self, save_dir: str): - self._save_dir = save_dir - - def get_save_dir(self): - if self._save_dir is None: - raise ValueError("Save dir is not set") - return self._save_dir - - def convert_data(self, data): - if data is None: - return None - elif isinstance(data, np.ndarray): - return data - elif isinstance(data, torch.Tensor): - return data.detach().cpu().numpy() - elif isinstance(data, list): - return [self.convert_data(d) for d in data] - elif isinstance(data, dict): - return {k: self.convert_data(v) for k, v in data.items()} - else: - raise TypeError( - "Data must be in type numpy.ndarray, torch.Tensor, list or dict, getting", - type(data), - ) - - def get_save_path(self, filename): - save_path = os.path.join(self.get_save_dir(), filename) - os.makedirs(os.path.dirname(save_path), exist_ok=True) - return save_path - - DEFAULT_RGB_KWARGS = {"data_format": "HWC", "data_range": (0, 1)} - DEFAULT_UV_KWARGS = { - "data_format": "HWC", - "data_range": (0, 1), - "cmap": "checkerboard", - } - DEFAULT_GRAYSCALE_KWARGS = {"data_range": None, "cmap": "jet"} - DEFAULT_GRID_KWARGS = {"align": "max"} - - def get_rgb_image_(self, img, data_format, data_range, rgba=False): - img = self.convert_data(img) - assert data_format in ["CHW", "HWC"] - if data_format == "CHW": - img = img.transpose(1, 2, 0) - if img.dtype != np.uint8: - img = img.clip(min=data_range[0], max=data_range[1]) - img = ( - (img - data_range[0]) / (data_range[1] - data_range[0]) * 255.0 - ).astype(np.uint8) - nc = 4 if rgba else 3 - imgs = [img[..., start : start + nc] for start in range(0, img.shape[-1], nc)] - imgs = [ - img_ - if img_.shape[-1] == nc - else np.concatenate( - [ - img_, - np.zeros( - (img_.shape[0], img_.shape[1], nc - img_.shape[2]), - dtype=img_.dtype, - ), - ], - axis=-1, - ) - for img_ in imgs - ] - img = np.concatenate(imgs, axis=1) - if rgba: - img = cv2.cvtColor(img, cv2.COLOR_RGBA2BGRA) - else: - img = cv2.cvtColor(img, cv2.COLOR_RGB2BGR) - return img - - def _save_rgb_image( - self, - filename, - img, - data_format, - data_range - ): - img = self.get_rgb_image_(img, data_format, data_range) - cv2.imwrite(filename, img) - - def save_rgb_image( - self, - filename, - img, - data_format=DEFAULT_RGB_KWARGS["data_format"], - data_range=DEFAULT_RGB_KWARGS["data_range"], - ) -> str: - save_path = self.get_save_path(filename) - self._save_rgb_image(save_path, img, data_format, data_range) - return save_path - - def get_grayscale_image_(self, img, data_range, cmap): - img = self.convert_data(img) - img = np.nan_to_num(img) - if data_range is None: - img = (img - img.min()) / (img.max() - img.min()) - else: - img = img.clip(data_range[0], data_range[1]) - img = (img - data_range[0]) / (data_range[1] - data_range[0]) - assert cmap in [None, "jet", "magma", "spectral"] - if cmap == None: - img = (img * 255.0).astype(np.uint8) - img = np.repeat(img[..., None], 3, axis=2) - elif cmap == "jet": - img = (img * 255.0).astype(np.uint8) - img = cv2.applyColorMap(img, cv2.COLORMAP_JET) - elif cmap == "magma": - img = 1.0 - img - base = cm.get_cmap("magma") - num_bins = 256 - colormap = LinearSegmentedColormap.from_list( - f"{base.name}{num_bins}", base(np.linspace(0, 1, num_bins)), num_bins - )(np.linspace(0, 1, num_bins))[:, :3] - a = np.floor(img * 255.0) - b = (a + 1).clip(max=255.0) - f = img * 255.0 - a - a = a.astype(np.uint16).clip(0, 255) - b = b.astype(np.uint16).clip(0, 255) - img = colormap[a] + (colormap[b] - colormap[a]) * f[..., None] - img = (img * 255.0).astype(np.uint8) - elif cmap == "spectral": - colormap = plt.get_cmap("Spectral") - - def blend_rgba(image): - image = image[..., :3] * image[..., -1:] + ( - 1.0 - image[..., -1:] - ) # blend A to RGB - return image - - img = colormap(img) - img = blend_rgba(img) - img = (img * 255).astype(np.uint8) - img = cv2.cvtColor(img, cv2.COLOR_RGB2BGR) - return img - - def _save_grayscale_image( - self, - filename, - img, - data_range, - cmap, - ): - img = self.get_grayscale_image_(img, data_range, cmap) - cv2.imwrite(filename, img) - - def save_grayscale_image( - self, - filename, - img, - data_range=DEFAULT_GRAYSCALE_KWARGS["data_range"], - cmap=DEFAULT_GRAYSCALE_KWARGS["cmap"], - ) -> str: - save_path = self.get_save_path(filename) - self._save_grayscale_image(save_path, img, data_range, cmap) - return save_path - - def get_image_grid_(self, imgs, align): - if isinstance(imgs[0], list): - return np.concatenate( - [self.get_image_grid_(row, align) for row in imgs], axis=0 - ) - cols = [] - for col in imgs: - assert col["type"] in ["rgb", "uv", "grayscale"] - if col["type"] == "rgb": - rgb_kwargs = self.DEFAULT_RGB_KWARGS.copy() - rgb_kwargs.update(col["kwargs"]) - cols.append(self.get_rgb_image_(col["img"], **rgb_kwargs)) - elif col["type"] == "uv": - uv_kwargs = self.DEFAULT_UV_KWARGS.copy() - uv_kwargs.update(col["kwargs"]) - cols.append(self.get_uv_image_(col["img"], **uv_kwargs)) - elif col["type"] == "grayscale": - grayscale_kwargs = self.DEFAULT_GRAYSCALE_KWARGS.copy() - grayscale_kwargs.update(col["kwargs"]) - cols.append(self.get_grayscale_image_(col["img"], **grayscale_kwargs)) - - if align == "max": - h = max([col.shape[0] for col in cols]) - w = max([col.shape[1] for col in cols]) - elif align == "min": - h = min([col.shape[0] for col in cols]) - w = min([col.shape[1] for col in cols]) - elif isinstance(align, int): - h = align - w = align - elif ( - isinstance(align, tuple) - and isinstance(align[0], int) - and isinstance(align[1], int) - ): - h, w = align - else: - raise ValueError( - f"Unsupported image grid align: {align}, should be min, max, int or (int, int)" - ) - - for i in range(len(cols)): - if cols[i].shape[0] != h or cols[i].shape[1] != w: - cols[i] = cv2.resize(cols[i], (w, h), interpolation=cv2.INTER_LINEAR) - return np.concatenate(cols, axis=1) - - def save_image_grid( - self, - filename, - imgs, - align=DEFAULT_GRID_KWARGS["align"], - texts: Optional[List[float]] = None, - ): - save_path = self.get_save_path(filename) - img = self.get_image_grid_(imgs, align=align) - - if texts is not None: - img = Image.fromarray(img) - draw = ImageDraw.Draw(img) - black, white = (0, 0, 0), (255, 255, 255) - for i, text in enumerate(texts): - draw.text((2, (img.size[1] // len(texts)) * i + 1), f"{text}", white) - draw.text((0, (img.size[1] // len(texts)) * i + 1), f"{text}", white) - draw.text((2, (img.size[1] // len(texts)) * i - 1), f"{text}", white) - draw.text((0, (img.size[1] // len(texts)) * i - 1), f"{text}", white) - draw.text((1, (img.size[1] // len(texts)) * i), f"{text}", black) - img = np.asarray(img) - - cv2.imwrite(save_path, img) - return save_path - - def save_image(self, filename, img) -> str: - save_path = self.get_save_path(filename) - img = self.convert_data(img) - assert img.dtype == np.uint8 or img.dtype == np.uint16 - if img.ndim == 3 and img.shape[-1] == 3: - img = cv2.cvtColor(img, cv2.COLOR_RGB2BGR) - elif img.ndim == 3 and img.shape[-1] == 4: - img = cv2.cvtColor(img, cv2.COLOR_RGBA2BGRA) - cv2.imwrite(save_path, img) - return save_path - - def save_img_sequence( - self, - filename, - img_dir, - matcher, - save_format="mp4", - fps=30, - ) -> str: - assert save_format in ["gif", "mp4"] - if not filename.endswith(save_format): - filename += f".{save_format}" - save_path = self.get_save_path(filename) - matcher = re.compile(matcher) - img_dir = os.path.join(self.get_save_dir(), img_dir) - imgs = [] - for f in os.listdir(img_dir): - if matcher.search(f): - imgs.append(f) - imgs = sorted(imgs, key=lambda f: int(matcher.search(f).groups()[0])) - imgs = [cv2.imread(os.path.join(img_dir, f)) for f in imgs] - - if save_format == "gif": - imgs = [cv2.cvtColor(i, cv2.COLOR_BGR2RGB) for i in imgs] - imageio.mimsave(save_path, imgs, fps=fps, palettesize=256) - elif save_format == "mp4": - imgs = [cv2.cvtColor(i, cv2.COLOR_BGR2RGB) for i in imgs] - imageio.mimsave(save_path, imgs, fps=fps) - return save_path - - def save_img_sequences( - self, - seq_dir, - matcher, - save_format="mp4", - fps=30, - delete=True - ): - seq_dir_ = os.path.join(self.get_save_dir(), seq_dir) - for f in os.listdir(seq_dir_): - img_dir_ = os.path.join(seq_dir_, f) - if not os.path.isdir(img_dir_): - continue - try: - self.save_img_sequence( - os.path.join(seq_dir, f), - os.path.join(seq_dir, f), - matcher, - save_format=save_format, - fps=fps - ) - except: - raise ValueError(f"Video saving for directory {seq_dir_} failed!") - - if delete: - shutil.rmtree(img_dir_) diff --git a/tgs/utils/typing.py b/tgs/utils/typing.py deleted file mode 100644 index dee9f96..0000000 --- a/tgs/utils/typing.py +++ /dev/null @@ -1,40 +0,0 @@ -""" -This module contains type annotations for the project, using -1. Python type hints (https://docs.python.org/3/library/typing.html) for Python objects -2. jaxtyping (https://github.com/google/jaxtyping/blob/main/API.md) for PyTorch tensors - -Two types of typing checking can be used: -1. Static type checking with mypy (install with pip and enabled as the default linter in VSCode) -2. Runtime type checking with typeguard (install with pip and triggered at runtime, mainly for tensor dtype and shape checking) -""" - -# Basic types -from typing import ( - Any, - Callable, - Dict, - Iterable, - List, - Literal, - NamedTuple, - NewType, - Optional, - Sized, - Tuple, - Type, - TypeVar, - Union, -) - -# Tensor dtype -# for jaxtyping usage, see https://github.com/google/jaxtyping/blob/main/API.md -from jaxtyping import Bool, Complex, Float, Inexact, Int, Integer, Num, Shaped, UInt - -# Config type -from omegaconf import DictConfig - -# PyTorch Tensor type -from torch import Tensor - -# Runtime type checking decorator -from typeguard import typechecked as typechecker diff --git a/tsr/models/isosurface.py b/tsr/models/isosurface.py deleted file mode 100644 index 39c8389..0000000 --- a/tsr/models/isosurface.py +++ /dev/null @@ -1,48 +0,0 @@ -from typing import Callable, Optional, Tuple - -import numpy as np -import torch -import torch.nn as nn -from torchmcubes import marching_cubes - - -class IsosurfaceHelper(nn.Module): - points_range: Tuple[float, float] = (0, 1) - - @property - def grid_vertices(self) -> torch.FloatTensor: - raise NotImplementedError - - -class MarchingCubeHelper(IsosurfaceHelper): - def __init__(self, resolution: int) -> None: - super().__init__() - self.resolution = resolution - self.mc_func: Callable = marching_cubes - self._grid_vertices: Optional[torch.FloatTensor] = None - - @property - def grid_vertices(self) -> torch.FloatTensor: - if self._grid_vertices is None: - # keep the vertices on CPU so that we can support very large resolution - x, y, z = ( - torch.linspace(*self.points_range, self.resolution), - torch.linspace(*self.points_range, self.resolution), - torch.linspace(*self.points_range, self.resolution), - ) - x, y, z = torch.meshgrid(x, y, z, indexing="ij") - verts = torch.cat( - [x.reshape(-1, 1), y.reshape(-1, 1), z.reshape(-1, 1)], dim=-1 - ).reshape(-1, 3) - self._grid_vertices = verts - return self._grid_vertices - - def forward( - self, - level: torch.FloatTensor, - ) -> Tuple[torch.FloatTensor, torch.LongTensor]: - level = -level.view(self.resolution, self.resolution, self.resolution) - v_pos, t_pos_idx = self.mc_func(level.detach(), 0.0) - v_pos = v_pos[..., [2, 1, 0]] - v_pos = v_pos / (self.resolution - 1.0) - return v_pos, t_pos_idx diff --git a/tsr/models/nerf_renderer.py b/tsr/models/nerf_renderer.py deleted file mode 100644 index 0cf3ab6..0000000 --- a/tsr/models/nerf_renderer.py +++ /dev/null @@ -1,180 +0,0 @@ -from dataclasses import dataclass -from typing import Dict - -import torch -import torch.nn.functional as F -from einops import rearrange, reduce - -from ..utils import ( - BaseModule, - chunk_batch, - get_activation, - rays_intersect_bbox, - scale_tensor, -) - - -class TriplaneNeRFRenderer(BaseModule): - @dataclass - class Config(BaseModule.Config): - radius: float - - feature_reduction: str = "concat" - density_activation: str = "trunc_exp" - density_bias: float = -1.0 - color_activation: str = "sigmoid" - num_samples_per_ray: int = 128 - randomized: bool = False - - cfg: Config - - def configure(self) -> None: - assert self.cfg.feature_reduction in ["concat", "mean"] - self.chunk_size = 0 - - def set_chunk_size(self, chunk_size: int): - assert ( - chunk_size >= 0 - ), "chunk_size must be a non-negative integer (0 for no chunking)." - self.chunk_size = chunk_size - - def query_triplane( - self, - decoder: torch.nn.Module, - positions: torch.Tensor, - triplane: torch.Tensor, - ) -> Dict[str, torch.Tensor]: - input_shape = positions.shape[:-1] - positions = positions.view(-1, 3) - - # positions in (-radius, radius) - # normalized to (-1, 1) for grid sample - positions = scale_tensor( - positions, (-self.cfg.radius, self.cfg.radius), (-1, 1) - ) - - def _query_chunk(x): - indices2D: torch.Tensor = torch.stack( - (x[..., [0, 1]], x[..., [0, 2]], x[..., [1, 2]]), - dim=-3, - ) - out: torch.Tensor = F.grid_sample( - rearrange(triplane, "Np Cp Hp Wp -> Np Cp Hp Wp", Np=3), - rearrange(indices2D, "Np N Nd -> Np () N Nd", Np=3), - align_corners=False, - mode="bilinear", - ) - if self.cfg.feature_reduction == "concat": - out = rearrange(out, "Np Cp () N -> N (Np Cp)", Np=3) - elif self.cfg.feature_reduction == "mean": - out = reduce(out, "Np Cp () N -> N Cp", Np=3, reduction="mean") - else: - raise NotImplementedError - - net_out: Dict[str, torch.Tensor] = decoder(out) - return net_out - - if self.chunk_size > 0: - net_out = chunk_batch(_query_chunk, self.chunk_size, positions) - else: - net_out = _query_chunk(positions) - - net_out["density_act"] = get_activation(self.cfg.density_activation)( - net_out["density"] + self.cfg.density_bias - ) - net_out["color"] = get_activation(self.cfg.color_activation)( - net_out["features"] - ) - - net_out = {k: v.view(*input_shape, -1) for k, v in net_out.items()} - - return net_out - - def _forward( - self, - decoder: torch.nn.Module, - triplane: torch.Tensor, - rays_o: torch.Tensor, - rays_d: torch.Tensor, - **kwargs, - ): - rays_shape = rays_o.shape[:-1] - rays_o = rays_o.view(-1, 3) - rays_d = rays_d.view(-1, 3) - n_rays = rays_o.shape[0] - - t_near, t_far, rays_valid = rays_intersect_bbox(rays_o, rays_d, self.cfg.radius) - t_near, t_far = t_near[rays_valid], t_far[rays_valid] - - t_vals = torch.linspace( - 0, 1, self.cfg.num_samples_per_ray + 1, device=triplane.device - ) - t_mid = (t_vals[:-1] + t_vals[1:]) / 2.0 - z_vals = t_near * (1 - t_mid[None]) + t_far * t_mid[None] # (N_rays, N_samples) - - xyz = ( - rays_o[:, None, :] + z_vals[..., None] * rays_d[..., None, :] - ) # (N_rays, N_sample, 3) - - mlp_out = self.query_triplane( - decoder=decoder, - positions=xyz, - triplane=triplane, - ) - - eps = 1e-10 - # deltas = z_vals[:, 1:] - z_vals[:, :-1] # (N_rays, N_samples) - deltas = t_vals[1:] - t_vals[:-1] # (N_rays, N_samples) - alpha = 1 - torch.exp( - -deltas * mlp_out["density_act"][..., 0] - ) # (N_rays, N_samples) - accum_prod = torch.cat( - [ - torch.ones_like(alpha[:, :1]), - torch.cumprod(1 - alpha[:, :-1] + eps, dim=-1), - ], - dim=-1, - ) - weights = alpha * accum_prod # (N_rays, N_samples) - comp_rgb_ = (weights[..., None] * mlp_out["color"]).sum(dim=-2) # (N_rays, 3) - opacity_ = weights.sum(dim=-1) # (N_rays) - - comp_rgb = torch.zeros( - n_rays, 3, dtype=comp_rgb_.dtype, device=comp_rgb_.device - ) - opacity = torch.zeros(n_rays, dtype=opacity_.dtype, device=opacity_.device) - comp_rgb[rays_valid] = comp_rgb_ - opacity[rays_valid] = opacity_ - - comp_rgb += 1 - opacity[..., None] - comp_rgb = comp_rgb.view(*rays_shape, 3) - - return comp_rgb - - def forward( - self, - decoder: torch.nn.Module, - triplane: torch.Tensor, - rays_o: torch.Tensor, - rays_d: torch.Tensor, - ) -> Dict[str, torch.Tensor]: - if triplane.ndim == 4: - comp_rgb = self._forward(decoder, triplane, rays_o, rays_d) - else: - comp_rgb = torch.stack( - [ - self._forward(decoder, triplane[i], rays_o[i], rays_d[i]) - for i in range(triplane.shape[0]) - ], - dim=0, - ) - - return comp_rgb - - def train(self, mode=True): - self.randomized = mode and self.cfg.randomized - return super().train(mode=mode) - - def eval(self): - self.randomized = False - return super().eval() diff --git a/tsr/models/network_utils.py b/tsr/models/network_utils.py deleted file mode 100644 index 470c92b..0000000 --- a/tsr/models/network_utils.py +++ /dev/null @@ -1,124 +0,0 @@ -from dataclasses import dataclass -from typing import Optional - -import torch -import torch.nn as nn -from einops import rearrange - -from ..utils import BaseModule - - -class TriplaneUpsampleNetwork(BaseModule): - @dataclass - class Config(BaseModule.Config): - in_channels: int - out_channels: int - - cfg: Config - - def configure(self) -> None: - self.upsample = nn.ConvTranspose2d( - self.cfg.in_channels, self.cfg.out_channels, kernel_size=2, stride=2 - ) - - def forward(self, triplanes: torch.Tensor) -> torch.Tensor: - triplanes_up = rearrange( - self.upsample( - rearrange(triplanes, "B Np Ci Hp Wp -> (B Np) Ci Hp Wp", Np=3) - ), - "(B Np) Co Hp Wp -> B Np Co Hp Wp", - Np=3, - ) - return triplanes_up - - -class NeRFMLP(BaseModule): - @dataclass - class Config(BaseModule.Config): - in_channels: int - n_neurons: int - n_hidden_layers: int - activation: str = "relu" - bias: bool = True - weight_init: Optional[str] = "kaiming_uniform" - bias_init: Optional[str] = None - - cfg: Config - - def configure(self) -> None: - layers = [ - self.make_linear( - self.cfg.in_channels, - self.cfg.n_neurons, - bias=self.cfg.bias, - weight_init=self.cfg.weight_init, - bias_init=self.cfg.bias_init, - ), - self.make_activation(self.cfg.activation), - ] - for i in range(self.cfg.n_hidden_layers - 1): - layers += [ - self.make_linear( - self.cfg.n_neurons, - self.cfg.n_neurons, - bias=self.cfg.bias, - weight_init=self.cfg.weight_init, - bias_init=self.cfg.bias_init, - ), - self.make_activation(self.cfg.activation), - ] - layers += [ - self.make_linear( - self.cfg.n_neurons, - 4, # density 1 + features 3 - bias=self.cfg.bias, - weight_init=self.cfg.weight_init, - bias_init=self.cfg.bias_init, - ) - ] - self.layers = nn.Sequential(*layers) - - def make_linear( - self, - dim_in, - dim_out, - bias=True, - weight_init=None, - bias_init=None, - ): - layer = nn.Linear(dim_in, dim_out, bias=bias) - - if weight_init is None: - pass - elif weight_init == "kaiming_uniform": - torch.nn.init.kaiming_uniform_(layer.weight, nonlinearity="relu") - else: - raise NotImplementedError - - if bias: - if bias_init is None: - pass - elif bias_init == "zero": - torch.nn.init.zeros_(layer.bias) - else: - raise NotImplementedError - - return layer - - def make_activation(self, activation): - if activation == "relu": - return nn.ReLU(inplace=True) - elif activation == "silu": - return nn.SiLU(inplace=True) - else: - raise NotImplementedError - - def forward(self, x): - inp_shape = x.shape[:-1] - x = x.reshape(-1, x.shape[-1]) - - features = self.layers(x) - features = features.reshape(*inp_shape, -1) - out = {"density": features[..., 0:1], "features": features[..., 1:4]} - - return out diff --git a/tsr/models/tokenizers/image.py b/tsr/models/tokenizers/image.py deleted file mode 100644 index d4034b2..0000000 --- a/tsr/models/tokenizers/image.py +++ /dev/null @@ -1,66 +0,0 @@ -from dataclasses import dataclass - -import torch -import torch.nn as nn -from einops import rearrange -from huggingface_hub import hf_hub_download -from transformers.models.vit.modeling_vit import ViTModel - -from ...utils import BaseModule - - -class DINOSingleImageTokenizer(BaseModule): - @dataclass - class Config(BaseModule.Config): - pretrained_model_name_or_path: str = "facebook/dino-vitb16" - enable_gradient_checkpointing: bool = False - - cfg: Config - - def configure(self) -> None: - self.model: ViTModel = ViTModel( - ViTModel.config_class.from_pretrained( - hf_hub_download( - repo_id=self.cfg.pretrained_model_name_or_path, - filename="config.json", - ) - ) - ) - - if self.cfg.enable_gradient_checkpointing: - self.model.encoder.gradient_checkpointing = True - - self.register_buffer( - "image_mean", - torch.as_tensor([0.485, 0.456, 0.406]).reshape(1, 1, 3, 1, 1), - persistent=False, - ) - self.register_buffer( - "image_std", - torch.as_tensor([0.229, 0.224, 0.225]).reshape(1, 1, 3, 1, 1), - persistent=False, - ) - - def forward(self, images: torch.FloatTensor, **kwargs) -> torch.FloatTensor: - packed = False - if images.ndim == 4: - packed = True - images = images.unsqueeze(1) - - batch_size, n_input_views = images.shape[:2] - images = (images - self.image_mean) / self.image_std - out = self.model( - rearrange(images, "B N C H W -> (B N) C H W"), interpolate_pos_encoding=True - ) - local_features, global_features = out.last_hidden_state, out.pooler_output - local_features = local_features.permute(0, 2, 1) - local_features = rearrange( - local_features, "(B N) Ct Nt -> B N Ct Nt", B=batch_size - ) - if packed: - local_features = local_features.squeeze(1) - - return local_features - - def detokenize(self, *args, **kwargs): - raise NotImplementedError diff --git a/tsr/models/tokenizers/triplane.py b/tsr/models/tokenizers/triplane.py deleted file mode 100644 index ecdd7fd..0000000 --- a/tsr/models/tokenizers/triplane.py +++ /dev/null @@ -1,45 +0,0 @@ -import math -from dataclasses import dataclass - -import torch -import torch.nn as nn -from einops import rearrange, repeat - -from ...utils import BaseModule - - -class Triplane1DTokenizer(BaseModule): - @dataclass - class Config(BaseModule.Config): - plane_size: int - num_channels: int - - cfg: Config - - def configure(self) -> None: - self.embeddings = nn.Parameter( - torch.randn( - (3, self.cfg.num_channels, self.cfg.plane_size, self.cfg.plane_size), - dtype=torch.float32, - ) - * 1 - / math.sqrt(self.cfg.num_channels) - ) - - def forward(self, batch_size: int) -> torch.Tensor: - return rearrange( - repeat(self.embeddings, "Np Ct Hp Wp -> B Np Ct Hp Wp", B=batch_size), - "B Np Ct Hp Wp -> B Ct (Np Hp Wp)", - ) - - def detokenize(self, tokens: torch.Tensor) -> torch.Tensor: - batch_size, Ct, Nt = tokens.shape - assert Nt == self.cfg.plane_size**2 * 3 - assert Ct == self.cfg.num_channels - return rearrange( - tokens, - "B Ct (Np Hp Wp) -> B Np Ct Hp Wp", - Np=3, - Hp=self.cfg.plane_size, - Wp=self.cfg.plane_size, - ) diff --git a/tsr/models/transformer/attention.py b/tsr/models/transformer/attention.py deleted file mode 100644 index 34bd997..0000000 --- a/tsr/models/transformer/attention.py +++ /dev/null @@ -1,653 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# -------- -# -# Modified 2024 by the Tripo AI and Stability AI Team. -# -# Copyright (c) 2024 Tripo AI & Stability AI -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in all -# copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. - -from typing import Optional - -import torch -import torch.nn.functional as F -from torch import nn - - -class Attention(nn.Module): - r""" - A cross attention layer. - - Parameters: - query_dim (`int`): - The number of channels in the query. - cross_attention_dim (`int`, *optional*): - The number of channels in the encoder_hidden_states. If not given, defaults to `query_dim`. - heads (`int`, *optional*, defaults to 8): - The number of heads to use for multi-head attention. - dim_head (`int`, *optional*, defaults to 64): - The number of channels in each head. - dropout (`float`, *optional*, defaults to 0.0): - The dropout probability to use. - bias (`bool`, *optional*, defaults to False): - Set to `True` for the query, key, and value linear layers to contain a bias parameter. - upcast_attention (`bool`, *optional*, defaults to False): - Set to `True` to upcast the attention computation to `float32`. - upcast_softmax (`bool`, *optional*, defaults to False): - Set to `True` to upcast the softmax computation to `float32`. - cross_attention_norm (`str`, *optional*, defaults to `None`): - The type of normalization to use for the cross attention. Can be `None`, `layer_norm`, or `group_norm`. - cross_attention_norm_num_groups (`int`, *optional*, defaults to 32): - The number of groups to use for the group norm in the cross attention. - added_kv_proj_dim (`int`, *optional*, defaults to `None`): - The number of channels to use for the added key and value projections. If `None`, no projection is used. - norm_num_groups (`int`, *optional*, defaults to `None`): - The number of groups to use for the group norm in the attention. - spatial_norm_dim (`int`, *optional*, defaults to `None`): - The number of channels to use for the spatial normalization. - out_bias (`bool`, *optional*, defaults to `True`): - Set to `True` to use a bias in the output linear layer. - scale_qk (`bool`, *optional*, defaults to `True`): - Set to `True` to scale the query and key by `1 / sqrt(dim_head)`. - only_cross_attention (`bool`, *optional*, defaults to `False`): - Set to `True` to only use cross attention and not added_kv_proj_dim. Can only be set to `True` if - `added_kv_proj_dim` is not `None`. - eps (`float`, *optional*, defaults to 1e-5): - An additional value added to the denominator in group normalization that is used for numerical stability. - rescale_output_factor (`float`, *optional*, defaults to 1.0): - A factor to rescale the output by dividing it with this value. - residual_connection (`bool`, *optional*, defaults to `False`): - Set to `True` to add the residual connection to the output. - _from_deprecated_attn_block (`bool`, *optional*, defaults to `False`): - Set to `True` if the attention block is loaded from a deprecated state dict. - processor (`AttnProcessor`, *optional*, defaults to `None`): - The attention processor to use. If `None`, defaults to `AttnProcessor2_0` if `torch 2.x` is used and - `AttnProcessor` otherwise. - """ - - def __init__( - self, - query_dim: int, - cross_attention_dim: Optional[int] = None, - heads: int = 8, - dim_head: int = 64, - dropout: float = 0.0, - bias: bool = False, - upcast_attention: bool = False, - upcast_softmax: bool = False, - cross_attention_norm: Optional[str] = None, - cross_attention_norm_num_groups: int = 32, - added_kv_proj_dim: Optional[int] = None, - norm_num_groups: Optional[int] = None, - out_bias: bool = True, - scale_qk: bool = True, - only_cross_attention: bool = False, - eps: float = 1e-5, - rescale_output_factor: float = 1.0, - residual_connection: bool = False, - _from_deprecated_attn_block: bool = False, - processor: Optional["AttnProcessor"] = None, - out_dim: int = None, - ): - super().__init__() - self.inner_dim = out_dim if out_dim is not None else dim_head * heads - self.query_dim = query_dim - self.cross_attention_dim = ( - cross_attention_dim if cross_attention_dim is not None else query_dim - ) - self.upcast_attention = upcast_attention - self.upcast_softmax = upcast_softmax - self.rescale_output_factor = rescale_output_factor - self.residual_connection = residual_connection - self.dropout = dropout - self.fused_projections = False - self.out_dim = out_dim if out_dim is not None else query_dim - - # we make use of this private variable to know whether this class is loaded - # with an deprecated state dict so that we can convert it on the fly - self._from_deprecated_attn_block = _from_deprecated_attn_block - - self.scale_qk = scale_qk - self.scale = dim_head**-0.5 if self.scale_qk else 1.0 - - self.heads = out_dim // dim_head if out_dim is not None else heads - # for slice_size > 0 the attention score computation - # is split across the batch axis to save memory - # You can set slice_size with `set_attention_slice` - self.sliceable_head_dim = heads - - self.added_kv_proj_dim = added_kv_proj_dim - self.only_cross_attention = only_cross_attention - - if self.added_kv_proj_dim is None and self.only_cross_attention: - raise ValueError( - "`only_cross_attention` can only be set to True if `added_kv_proj_dim` is not None. Make sure to set either `only_cross_attention=False` or define `added_kv_proj_dim`." - ) - - if norm_num_groups is not None: - self.group_norm = nn.GroupNorm( - num_channels=query_dim, num_groups=norm_num_groups, eps=eps, affine=True - ) - else: - self.group_norm = None - - self.spatial_norm = None - - if cross_attention_norm is None: - self.norm_cross = None - elif cross_attention_norm == "layer_norm": - self.norm_cross = nn.LayerNorm(self.cross_attention_dim) - elif cross_attention_norm == "group_norm": - if self.added_kv_proj_dim is not None: - # The given `encoder_hidden_states` are initially of shape - # (batch_size, seq_len, added_kv_proj_dim) before being projected - # to (batch_size, seq_len, cross_attention_dim). The norm is applied - # before the projection, so we need to use `added_kv_proj_dim` as - # the number of channels for the group norm. - norm_cross_num_channels = added_kv_proj_dim - else: - norm_cross_num_channels = self.cross_attention_dim - - self.norm_cross = nn.GroupNorm( - num_channels=norm_cross_num_channels, - num_groups=cross_attention_norm_num_groups, - eps=1e-5, - affine=True, - ) - else: - raise ValueError( - f"unknown cross_attention_norm: {cross_attention_norm}. Should be None, 'layer_norm' or 'group_norm'" - ) - - linear_cls = nn.Linear - - self.linear_cls = linear_cls - self.to_q = linear_cls(query_dim, self.inner_dim, bias=bias) - - if not self.only_cross_attention: - # only relevant for the `AddedKVProcessor` classes - self.to_k = linear_cls(self.cross_attention_dim, self.inner_dim, bias=bias) - self.to_v = linear_cls(self.cross_attention_dim, self.inner_dim, bias=bias) - else: - self.to_k = None - self.to_v = None - - if self.added_kv_proj_dim is not None: - self.add_k_proj = linear_cls(added_kv_proj_dim, self.inner_dim) - self.add_v_proj = linear_cls(added_kv_proj_dim, self.inner_dim) - - self.to_out = nn.ModuleList([]) - self.to_out.append(linear_cls(self.inner_dim, self.out_dim, bias=out_bias)) - self.to_out.append(nn.Dropout(dropout)) - - # set attention processor - # We use the AttnProcessor2_0 by default when torch 2.x is used which uses - # torch.nn.functional.scaled_dot_product_attention for native Flash/memory_efficient_attention - # but only if it has the default `scale` argument. TODO remove scale_qk check when we move to torch 2.1 - if processor is None: - processor = ( - AttnProcessor2_0() - if hasattr(F, "scaled_dot_product_attention") and self.scale_qk - else AttnProcessor() - ) - self.set_processor(processor) - - def set_processor(self, processor: "AttnProcessor") -> None: - self.processor = processor - - def forward( - self, - hidden_states: torch.FloatTensor, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - attention_mask: Optional[torch.FloatTensor] = None, - **cross_attention_kwargs, - ) -> torch.Tensor: - r""" - The forward method of the `Attention` class. - - Args: - hidden_states (`torch.Tensor`): - The hidden states of the query. - encoder_hidden_states (`torch.Tensor`, *optional*): - The hidden states of the encoder. - attention_mask (`torch.Tensor`, *optional*): - The attention mask to use. If `None`, no mask is applied. - **cross_attention_kwargs: - Additional keyword arguments to pass along to the cross attention. - - Returns: - `torch.Tensor`: The output of the attention layer. - """ - # The `Attention` class can call different attention processors / attention functions - # here we simply pass along all tensors to the selected processor class - # For standard processors that are defined here, `**cross_attention_kwargs` is empty - return self.processor( - self, - hidden_states, - encoder_hidden_states=encoder_hidden_states, - attention_mask=attention_mask, - **cross_attention_kwargs, - ) - - def batch_to_head_dim(self, tensor: torch.Tensor) -> torch.Tensor: - r""" - Reshape the tensor from `[batch_size, seq_len, dim]` to `[batch_size // heads, seq_len, dim * heads]`. `heads` - is the number of heads initialized while constructing the `Attention` class. - - Args: - tensor (`torch.Tensor`): The tensor to reshape. - - Returns: - `torch.Tensor`: The reshaped tensor. - """ - head_size = self.heads - batch_size, seq_len, dim = tensor.shape - tensor = tensor.reshape(batch_size // head_size, head_size, seq_len, dim) - tensor = tensor.permute(0, 2, 1, 3).reshape( - batch_size // head_size, seq_len, dim * head_size - ) - return tensor - - def head_to_batch_dim(self, tensor: torch.Tensor, out_dim: int = 3) -> torch.Tensor: - r""" - Reshape the tensor from `[batch_size, seq_len, dim]` to `[batch_size, seq_len, heads, dim // heads]` `heads` is - the number of heads initialized while constructing the `Attention` class. - - Args: - tensor (`torch.Tensor`): The tensor to reshape. - out_dim (`int`, *optional*, defaults to `3`): The output dimension of the tensor. If `3`, the tensor is - reshaped to `[batch_size * heads, seq_len, dim // heads]`. - - Returns: - `torch.Tensor`: The reshaped tensor. - """ - head_size = self.heads - batch_size, seq_len, dim = tensor.shape - tensor = tensor.reshape(batch_size, seq_len, head_size, dim // head_size) - tensor = tensor.permute(0, 2, 1, 3) - - if out_dim == 3: - tensor = tensor.reshape(batch_size * head_size, seq_len, dim // head_size) - - return tensor - - def get_attention_scores( - self, - query: torch.Tensor, - key: torch.Tensor, - attention_mask: torch.Tensor = None, - ) -> torch.Tensor: - r""" - Compute the attention scores. - - Args: - query (`torch.Tensor`): The query tensor. - key (`torch.Tensor`): The key tensor. - attention_mask (`torch.Tensor`, *optional*): The attention mask to use. If `None`, no mask is applied. - - Returns: - `torch.Tensor`: The attention probabilities/scores. - """ - dtype = query.dtype - if self.upcast_attention: - query = query.float() - key = key.float() - - if attention_mask is None: - baddbmm_input = torch.empty( - query.shape[0], - query.shape[1], - key.shape[1], - dtype=query.dtype, - device=query.device, - ) - beta = 0 - else: - baddbmm_input = attention_mask - beta = 1 - - attention_scores = torch.baddbmm( - baddbmm_input, - query, - key.transpose(-1, -2), - beta=beta, - alpha=self.scale, - ) - del baddbmm_input - - if self.upcast_softmax: - attention_scores = attention_scores.float() - - attention_probs = attention_scores.softmax(dim=-1) - del attention_scores - - attention_probs = attention_probs.to(dtype) - - return attention_probs - - def prepare_attention_mask( - self, - attention_mask: torch.Tensor, - target_length: int, - batch_size: int, - out_dim: int = 3, - ) -> torch.Tensor: - r""" - Prepare the attention mask for the attention computation. - - Args: - attention_mask (`torch.Tensor`): - The attention mask to prepare. - target_length (`int`): - The target length of the attention mask. This is the length of the attention mask after padding. - batch_size (`int`): - The batch size, which is used to repeat the attention mask. - out_dim (`int`, *optional*, defaults to `3`): - The output dimension of the attention mask. Can be either `3` or `4`. - - Returns: - `torch.Tensor`: The prepared attention mask. - """ - head_size = self.heads - if attention_mask is None: - return attention_mask - - current_length: int = attention_mask.shape[-1] - if current_length != target_length: - if attention_mask.device.type == "mps": - # HACK: MPS: Does not support padding by greater than dimension of input tensor. - # Instead, we can manually construct the padding tensor. - padding_shape = ( - attention_mask.shape[0], - attention_mask.shape[1], - target_length, - ) - padding = torch.zeros( - padding_shape, - dtype=attention_mask.dtype, - device=attention_mask.device, - ) - attention_mask = torch.cat([attention_mask, padding], dim=2) - else: - # TODO: for pipelines such as stable-diffusion, padding cross-attn mask: - # we want to instead pad by (0, remaining_length), where remaining_length is: - # remaining_length: int = target_length - current_length - # TODO: re-enable tests/models/test_models_unet_2d_condition.py#test_model_xattn_padding - attention_mask = F.pad(attention_mask, (0, target_length), value=0.0) - - if out_dim == 3: - if attention_mask.shape[0] < batch_size * head_size: - attention_mask = attention_mask.repeat_interleave(head_size, dim=0) - elif out_dim == 4: - attention_mask = attention_mask.unsqueeze(1) - attention_mask = attention_mask.repeat_interleave(head_size, dim=1) - - return attention_mask - - def norm_encoder_hidden_states( - self, encoder_hidden_states: torch.Tensor - ) -> torch.Tensor: - r""" - Normalize the encoder hidden states. Requires `self.norm_cross` to be specified when constructing the - `Attention` class. - - Args: - encoder_hidden_states (`torch.Tensor`): Hidden states of the encoder. - - Returns: - `torch.Tensor`: The normalized encoder hidden states. - """ - assert ( - self.norm_cross is not None - ), "self.norm_cross must be defined to call self.norm_encoder_hidden_states" - - if isinstance(self.norm_cross, nn.LayerNorm): - encoder_hidden_states = self.norm_cross(encoder_hidden_states) - elif isinstance(self.norm_cross, nn.GroupNorm): - # Group norm norms along the channels dimension and expects - # input to be in the shape of (N, C, *). In this case, we want - # to norm along the hidden dimension, so we need to move - # (batch_size, sequence_length, hidden_size) -> - # (batch_size, hidden_size, sequence_length) - encoder_hidden_states = encoder_hidden_states.transpose(1, 2) - encoder_hidden_states = self.norm_cross(encoder_hidden_states) - encoder_hidden_states = encoder_hidden_states.transpose(1, 2) - else: - assert False - - return encoder_hidden_states - - @torch.no_grad() - def fuse_projections(self, fuse=True): - is_cross_attention = self.cross_attention_dim != self.query_dim - device = self.to_q.weight.data.device - dtype = self.to_q.weight.data.dtype - - if not is_cross_attention: - # fetch weight matrices. - concatenated_weights = torch.cat( - [self.to_q.weight.data, self.to_k.weight.data, self.to_v.weight.data] - ) - in_features = concatenated_weights.shape[1] - out_features = concatenated_weights.shape[0] - - # create a new single projection layer and copy over the weights. - self.to_qkv = self.linear_cls( - in_features, out_features, bias=False, device=device, dtype=dtype - ) - self.to_qkv.weight.copy_(concatenated_weights) - - else: - concatenated_weights = torch.cat( - [self.to_k.weight.data, self.to_v.weight.data] - ) - in_features = concatenated_weights.shape[1] - out_features = concatenated_weights.shape[0] - - self.to_kv = self.linear_cls( - in_features, out_features, bias=False, device=device, dtype=dtype - ) - self.to_kv.weight.copy_(concatenated_weights) - - self.fused_projections = fuse - - -class AttnProcessor: - r""" - Default processor for performing attention-related computations. - """ - - def __call__( - self, - attn: Attention, - hidden_states: torch.FloatTensor, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - attention_mask: Optional[torch.FloatTensor] = None, - ) -> torch.Tensor: - residual = hidden_states - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view( - batch_size, channel, height * width - ).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape - if encoder_hidden_states is None - else encoder_hidden_states.shape - ) - attention_mask = attn.prepare_attention_mask( - attention_mask, sequence_length, batch_size - ) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose( - 1, 2 - ) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states( - encoder_hidden_states - ) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - query = attn.head_to_batch_dim(query) - key = attn.head_to_batch_dim(key) - value = attn.head_to_batch_dim(value) - - attention_probs = attn.get_attention_scores(query, key, attention_mask) - hidden_states = torch.bmm(attention_probs, value) - hidden_states = attn.batch_to_head_dim(hidden_states) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape( - batch_size, channel, height, width - ) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states - - -class AttnProcessor2_0: - r""" - Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0). - """ - - def __init__(self): - if not hasattr(F, "scaled_dot_product_attention"): - raise ImportError( - "AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0." - ) - - def __call__( - self, - attn: Attention, - hidden_states: torch.FloatTensor, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - attention_mask: Optional[torch.FloatTensor] = None, - ) -> torch.FloatTensor: - residual = hidden_states - - input_ndim = hidden_states.ndim - - if input_ndim == 4: - batch_size, channel, height, width = hidden_states.shape - hidden_states = hidden_states.view( - batch_size, channel, height * width - ).transpose(1, 2) - - batch_size, sequence_length, _ = ( - hidden_states.shape - if encoder_hidden_states is None - else encoder_hidden_states.shape - ) - - if attention_mask is not None: - attention_mask = attn.prepare_attention_mask( - attention_mask, sequence_length, batch_size - ) - # scaled_dot_product_attention expects attention_mask shape to be - # (batch, heads, source_length, target_length) - attention_mask = attention_mask.view( - batch_size, attn.heads, -1, attention_mask.shape[-1] - ) - - if attn.group_norm is not None: - hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose( - 1, 2 - ) - - query = attn.to_q(hidden_states) - - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - elif attn.norm_cross: - encoder_hidden_states = attn.norm_encoder_hidden_states( - encoder_hidden_states - ) - - key = attn.to_k(encoder_hidden_states) - value = attn.to_v(encoder_hidden_states) - - inner_dim = key.shape[-1] - head_dim = inner_dim // attn.heads - - query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2) - - key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2) - value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2) - - # the output of sdp = (batch, num_heads, seq_len, head_dim) - # TODO: add support for attn.scale when we move to Torch 2.1 - hidden_states = F.scaled_dot_product_attention( - query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False - ) - - hidden_states = hidden_states.transpose(1, 2).reshape( - batch_size, -1, attn.heads * head_dim - ) - hidden_states = hidden_states.to(query.dtype) - - # linear proj - hidden_states = attn.to_out[0](hidden_states) - # dropout - hidden_states = attn.to_out[1](hidden_states) - - if input_ndim == 4: - hidden_states = hidden_states.transpose(-1, -2).reshape( - batch_size, channel, height, width - ) - - if attn.residual_connection: - hidden_states = hidden_states + residual - - hidden_states = hidden_states / attn.rescale_output_factor - - return hidden_states diff --git a/tsr/models/transformer/basic_transformer_block.py b/tsr/models/transformer/basic_transformer_block.py deleted file mode 100644 index 1ea41b0..0000000 --- a/tsr/models/transformer/basic_transformer_block.py +++ /dev/null @@ -1,334 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# -------- -# -# Modified 2024 by the Tripo AI and Stability AI Team. -# -# Copyright (c) 2024 Tripo AI & Stability AI -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in all -# copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. - -from typing import Optional - -import torch -import torch.nn.functional as F -from torch import nn - -from .attention import Attention - - -class BasicTransformerBlock(nn.Module): - r""" - A basic Transformer block. - - Parameters: - dim (`int`): The number of channels in the input and output. - num_attention_heads (`int`): The number of heads to use for multi-head attention. - attention_head_dim (`int`): The number of channels in each head. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - cross_attention_dim (`int`, *optional*): The size of the encoder_hidden_states vector for cross attention. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to be used in feed-forward. - attention_bias (: - obj: `bool`, *optional*, defaults to `False`): Configure if the attentions should contain a bias parameter. - only_cross_attention (`bool`, *optional*): - Whether to use only cross-attention layers. In this case two cross attention layers are used. - double_self_attention (`bool`, *optional*): - Whether to use two self-attention layers. In this case no cross attention layers are used. - upcast_attention (`bool`, *optional*): - Whether to upcast the attention computation to float32. This is useful for mixed precision training. - norm_elementwise_affine (`bool`, *optional*, defaults to `True`): - Whether to use learnable elementwise affine parameters for normalization. - norm_type (`str`, *optional*, defaults to `"layer_norm"`): - The normalization layer to use. Can be `"layer_norm"`, `"ada_norm"` or `"ada_norm_zero"`. - final_dropout (`bool` *optional*, defaults to False): - Whether to apply a final dropout after the last feed-forward layer. - """ - - def __init__( - self, - dim: int, - num_attention_heads: int, - attention_head_dim: int, - dropout=0.0, - cross_attention_dim: Optional[int] = None, - activation_fn: str = "geglu", - attention_bias: bool = False, - only_cross_attention: bool = False, - double_self_attention: bool = False, - upcast_attention: bool = False, - norm_elementwise_affine: bool = True, - norm_type: str = "layer_norm", - final_dropout: bool = False, - ): - super().__init__() - self.only_cross_attention = only_cross_attention - - assert norm_type == "layer_norm" - - # Define 3 blocks. Each block has its own normalization layer. - # 1. Self-Attn - self.norm1 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - self.attn1 = Attention( - query_dim=dim, - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - cross_attention_dim=cross_attention_dim if only_cross_attention else None, - upcast_attention=upcast_attention, - ) - - # 2. Cross-Attn - if cross_attention_dim is not None or double_self_attention: - # We currently only use AdaLayerNormZero for self attention where there will only be one attention block. - # I.e. the number of returned modulation chunks from AdaLayerZero would not make sense if returned during - # the second cross attention block. - self.norm2 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - - self.attn2 = Attention( - query_dim=dim, - cross_attention_dim=( - cross_attention_dim if not double_self_attention else None - ), - heads=num_attention_heads, - dim_head=attention_head_dim, - dropout=dropout, - bias=attention_bias, - upcast_attention=upcast_attention, - ) # is self-attn if encoder_hidden_states is none - else: - self.norm2 = None - self.attn2 = None - - # 3. Feed-forward - self.norm3 = nn.LayerNorm(dim, elementwise_affine=norm_elementwise_affine) - self.ff = FeedForward( - dim, - dropout=dropout, - activation_fn=activation_fn, - final_dropout=final_dropout, - ) - - # let chunk size default to None - self._chunk_size = None - self._chunk_dim = 0 - - def set_chunk_feed_forward(self, chunk_size: Optional[int], dim: int): - # Sets chunk feed-forward - self._chunk_size = chunk_size - self._chunk_dim = dim - - def forward( - self, - hidden_states: torch.FloatTensor, - attention_mask: Optional[torch.FloatTensor] = None, - encoder_hidden_states: Optional[torch.FloatTensor] = None, - encoder_attention_mask: Optional[torch.FloatTensor] = None, - ) -> torch.FloatTensor: - # Notice that normalization is always applied before the real computation in the following blocks. - # 0. Self-Attention - norm_hidden_states = self.norm1(hidden_states) - - attn_output = self.attn1( - norm_hidden_states, - encoder_hidden_states=( - encoder_hidden_states if self.only_cross_attention else None - ), - attention_mask=attention_mask, - ) - - hidden_states = attn_output + hidden_states - - # 3. Cross-Attention - if self.attn2 is not None: - norm_hidden_states = self.norm2(hidden_states) - - attn_output = self.attn2( - norm_hidden_states, - encoder_hidden_states=encoder_hidden_states, - attention_mask=encoder_attention_mask, - ) - hidden_states = attn_output + hidden_states - - # 4. Feed-forward - norm_hidden_states = self.norm3(hidden_states) - - if self._chunk_size is not None: - # "feed_forward_chunk_size" can be used to save memory - if norm_hidden_states.shape[self._chunk_dim] % self._chunk_size != 0: - raise ValueError( - f"`hidden_states` dimension to be chunked: {norm_hidden_states.shape[self._chunk_dim]} has to be divisible by chunk size: {self._chunk_size}. Make sure to set an appropriate `chunk_size` when calling `unet.enable_forward_chunking`." - ) - - num_chunks = norm_hidden_states.shape[self._chunk_dim] // self._chunk_size - ff_output = torch.cat( - [ - self.ff(hid_slice) - for hid_slice in norm_hidden_states.chunk( - num_chunks, dim=self._chunk_dim - ) - ], - dim=self._chunk_dim, - ) - else: - ff_output = self.ff(norm_hidden_states) - - hidden_states = ff_output + hidden_states - - return hidden_states - - -class FeedForward(nn.Module): - r""" - A feed-forward layer. - - Parameters: - dim (`int`): The number of channels in the input. - dim_out (`int`, *optional*): The number of channels in the output. If not given, defaults to `dim`. - mult (`int`, *optional*, defaults to 4): The multiplier to use for the hidden dimension. - dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use. - activation_fn (`str`, *optional*, defaults to `"geglu"`): Activation function to be used in feed-forward. - final_dropout (`bool` *optional*, defaults to False): Apply a final dropout. - """ - - def __init__( - self, - dim: int, - dim_out: Optional[int] = None, - mult: int = 4, - dropout: float = 0.0, - activation_fn: str = "geglu", - final_dropout: bool = False, - ): - super().__init__() - inner_dim = int(dim * mult) - dim_out = dim_out if dim_out is not None else dim - linear_cls = nn.Linear - - if activation_fn == "gelu": - act_fn = GELU(dim, inner_dim) - if activation_fn == "gelu-approximate": - act_fn = GELU(dim, inner_dim, approximate="tanh") - elif activation_fn == "geglu": - act_fn = GEGLU(dim, inner_dim) - elif activation_fn == "geglu-approximate": - act_fn = ApproximateGELU(dim, inner_dim) - - self.net = nn.ModuleList([]) - # project in - self.net.append(act_fn) - # project dropout - self.net.append(nn.Dropout(dropout)) - # project out - self.net.append(linear_cls(inner_dim, dim_out)) - # FF as used in Vision Transformer, MLP-Mixer, etc. have a final dropout - if final_dropout: - self.net.append(nn.Dropout(dropout)) - - def forward(self, hidden_states: torch.Tensor) -> torch.Tensor: - for module in self.net: - hidden_states = module(hidden_states) - return hidden_states - - -class GELU(nn.Module): - r""" - GELU activation function with tanh approximation support with `approximate="tanh"`. - - Parameters: - dim_in (`int`): The number of channels in the input. - dim_out (`int`): The number of channels in the output. - approximate (`str`, *optional*, defaults to `"none"`): If `"tanh"`, use tanh approximation. - """ - - def __init__(self, dim_in: int, dim_out: int, approximate: str = "none"): - super().__init__() - self.proj = nn.Linear(dim_in, dim_out) - self.approximate = approximate - - def gelu(self, gate: torch.Tensor) -> torch.Tensor: - if gate.device.type != "mps": - return F.gelu(gate, approximate=self.approximate) - # mps: gelu is not implemented for float16 - return F.gelu(gate.to(dtype=torch.float32), approximate=self.approximate).to( - dtype=gate.dtype - ) - - def forward(self, hidden_states): - hidden_states = self.proj(hidden_states) - hidden_states = self.gelu(hidden_states) - return hidden_states - - -class GEGLU(nn.Module): - r""" - A variant of the gated linear unit activation function from https://arxiv.org/abs/2002.05202. - - Parameters: - dim_in (`int`): The number of channels in the input. - dim_out (`int`): The number of channels in the output. - """ - - def __init__(self, dim_in: int, dim_out: int): - super().__init__() - linear_cls = nn.Linear - - self.proj = linear_cls(dim_in, dim_out * 2) - - def gelu(self, gate: torch.Tensor) -> torch.Tensor: - if gate.device.type != "mps": - return F.gelu(gate) - # mps: gelu is not implemented for float16 - return F.gelu(gate.to(dtype=torch.float32)).to(dtype=gate.dtype) - - def forward(self, hidden_states, scale: float = 1.0): - args = () - hidden_states, gate = self.proj(hidden_states, *args).chunk(2, dim=-1) - return hidden_states * self.gelu(gate) - - -class ApproximateGELU(nn.Module): - r""" - The approximate form of Gaussian Error Linear Unit (GELU). For more details, see section 2: - https://arxiv.org/abs/1606.08415. - - Parameters: - dim_in (`int`): The number of channels in the input. - dim_out (`int`): The number of channels in the output. - """ - - def __init__(self, dim_in: int, dim_out: int): - super().__init__() - self.proj = nn.Linear(dim_in, dim_out) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = self.proj(x) - return x * torch.sigmoid(1.702 * x) diff --git a/tsr/models/transformer/transformer_1d.py b/tsr/models/transformer/transformer_1d.py deleted file mode 100644 index a98d0fb..0000000 --- a/tsr/models/transformer/transformer_1d.py +++ /dev/null @@ -1,219 +0,0 @@ -# Copyright 2023 The HuggingFace Team. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# -------- -# -# Modified 2024 by the Tripo AI and Stability AI Team. -# -# Copyright (c) 2024 Tripo AI & Stability AI -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in all -# copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. - -from dataclasses import dataclass -from typing import Optional - -import torch -import torch.nn.functional as F -from torch import nn - -from ...utils import BaseModule -from .basic_transformer_block import BasicTransformerBlock - - -class Transformer1D(BaseModule): - @dataclass - class Config(BaseModule.Config): - num_attention_heads: int = 16 - attention_head_dim: int = 88 - in_channels: Optional[int] = None - out_channels: Optional[int] = None - num_layers: int = 1 - dropout: float = 0.0 - norm_num_groups: int = 32 - cross_attention_dim: Optional[int] = None - attention_bias: bool = False - activation_fn: str = "geglu" - only_cross_attention: bool = False - double_self_attention: bool = False - upcast_attention: bool = False - norm_type: str = "layer_norm" - norm_elementwise_affine: bool = True - gradient_checkpointing: bool = False - - cfg: Config - - def configure(self) -> None: - self.num_attention_heads = self.cfg.num_attention_heads - self.attention_head_dim = self.cfg.attention_head_dim - inner_dim = self.num_attention_heads * self.attention_head_dim - - linear_cls = nn.Linear - - # 2. Define input layers - self.in_channels = self.cfg.in_channels - - self.norm = torch.nn.GroupNorm( - num_groups=self.cfg.norm_num_groups, - num_channels=self.cfg.in_channels, - eps=1e-6, - affine=True, - ) - self.proj_in = linear_cls(self.cfg.in_channels, inner_dim) - - # 3. Define transformers blocks - self.transformer_blocks = nn.ModuleList( - [ - BasicTransformerBlock( - inner_dim, - self.num_attention_heads, - self.attention_head_dim, - dropout=self.cfg.dropout, - cross_attention_dim=self.cfg.cross_attention_dim, - activation_fn=self.cfg.activation_fn, - attention_bias=self.cfg.attention_bias, - only_cross_attention=self.cfg.only_cross_attention, - double_self_attention=self.cfg.double_self_attention, - upcast_attention=self.cfg.upcast_attention, - norm_type=self.cfg.norm_type, - norm_elementwise_affine=self.cfg.norm_elementwise_affine, - ) - for d in range(self.cfg.num_layers) - ] - ) - - # 4. Define output layers - self.out_channels = ( - self.cfg.in_channels - if self.cfg.out_channels is None - else self.cfg.out_channels - ) - - self.proj_out = linear_cls(inner_dim, self.cfg.in_channels) - - self.gradient_checkpointing = self.cfg.gradient_checkpointing - - def forward( - self, - hidden_states: torch.Tensor, - encoder_hidden_states: Optional[torch.Tensor] = None, - attention_mask: Optional[torch.Tensor] = None, - encoder_attention_mask: Optional[torch.Tensor] = None, - ): - """ - The [`Transformer1DModel`] forward method. - - Args: - hidden_states (`torch.LongTensor` of shape `(batch size, num latent pixels)` if discrete, `torch.FloatTensor` of shape `(batch size, channel, height, width)` if continuous): - Input `hidden_states`. - encoder_hidden_states ( `torch.FloatTensor` of shape `(batch size, sequence len, embed dims)`, *optional*): - Conditional embeddings for cross attention layer. If not given, cross-attention defaults to - self-attention. - attention_mask ( `torch.Tensor`, *optional*): - An attention mask of shape `(batch, key_tokens)` is applied to `encoder_hidden_states`. If `1` the mask - is kept, otherwise if `0` it is discarded. Mask will be converted into a bias, which adds large - negative values to the attention scores corresponding to "discard" tokens. - encoder_attention_mask ( `torch.Tensor`, *optional*): - Cross-attention mask applied to `encoder_hidden_states`. Two formats supported: - - * Mask `(batch, sequence_length)` True = keep, False = discard. - * Bias `(batch, 1, sequence_length)` 0 = keep, -10000 = discard. - - If `ndim == 2`: will be interpreted as a mask, then converted into a bias consistent with the format - above. This bias will be added to the cross-attention scores. - - Returns: - torch.FloatTensor - """ - # ensure attention_mask is a bias, and give it a singleton query_tokens dimension. - # we may have done this conversion already, e.g. if we came here via UNet2DConditionModel#forward. - # we can tell by counting dims; if ndim == 2: it's a mask rather than a bias. - # expects mask of shape: - # [batch, key_tokens] - # adds singleton query_tokens dimension: - # [batch, 1, key_tokens] - # this helps to broadcast it as a bias over attention scores, which will be in one of the following shapes: - # [batch, heads, query_tokens, key_tokens] (e.g. torch sdp attn) - # [batch * heads, query_tokens, key_tokens] (e.g. xformers or classic attn) - if attention_mask is not None and attention_mask.ndim == 2: - # assume that mask is expressed as: - # (1 = keep, 0 = discard) - # convert mask into a bias that can be added to attention scores: - # (keep = +0, discard = -10000.0) - attention_mask = (1 - attention_mask.to(hidden_states.dtype)) * -10000.0 - attention_mask = attention_mask.unsqueeze(1) - - # convert encoder_attention_mask to a bias the same way we do for attention_mask - if encoder_attention_mask is not None and encoder_attention_mask.ndim == 2: - encoder_attention_mask = ( - 1 - encoder_attention_mask.to(hidden_states.dtype) - ) * -10000.0 - encoder_attention_mask = encoder_attention_mask.unsqueeze(1) - - # 1. Input - batch, _, seq_len = hidden_states.shape - residual = hidden_states - - hidden_states = self.norm(hidden_states) - inner_dim = hidden_states.shape[1] - hidden_states = hidden_states.permute(0, 2, 1).reshape( - batch, seq_len, inner_dim - ) - hidden_states = self.proj_in(hidden_states) - - # 2. Blocks - for block in self.transformer_blocks: - if self.training and self.gradient_checkpointing: - hidden_states = torch.utils.checkpoint.checkpoint( - block, - hidden_states, - attention_mask, - encoder_hidden_states, - encoder_attention_mask, - use_reentrant=False, - ) - else: - hidden_states = block( - hidden_states, - attention_mask=attention_mask, - encoder_hidden_states=encoder_hidden_states, - encoder_attention_mask=encoder_attention_mask, - ) - - # 3. Output - hidden_states = self.proj_out(hidden_states) - hidden_states = ( - hidden_states.reshape(batch, seq_len, inner_dim) - .permute(0, 2, 1) - .contiguous() - ) - - output = hidden_states + residual - - return output diff --git a/tsr/system.py b/tsr/system.py deleted file mode 100644 index c6d42f9..0000000 --- a/tsr/system.py +++ /dev/null @@ -1,192 +0,0 @@ -import math -import os -from dataclasses import dataclass, field -from typing import List, Union - -import numpy as np -import PIL.Image -import torch -import torch.nn.functional as F -import trimesh -from einops import rearrange -from huggingface_hub import hf_hub_download -from omegaconf import OmegaConf -from PIL import Image - -from .models.isosurface import MarchingCubeHelper -from .utils import ( - BaseModule, - ImagePreprocessor, - find_class, - get_spherical_cameras, - scale_tensor, -) - - -class TSR(BaseModule): - @dataclass - class Config(BaseModule.Config): - cond_image_size: int - - image_tokenizer_cls: str - image_tokenizer: dict - - tokenizer_cls: str - tokenizer: dict - - backbone_cls: str - backbone: dict - - post_processor_cls: str - post_processor: dict - - decoder_cls: str - decoder: dict - - renderer_cls: str - renderer: dict - - cfg: Config - - @classmethod - def from_pretrained( - cls, weight_path: str, config_path: str - ): - cfg = OmegaConf.load(config_path) - OmegaConf.resolve(cfg) - model = cls(cfg) - ckpt = torch.load(weight_path, map_location="cpu") - model.load_state_dict(ckpt) - return model - - def configure(self): - self.image_tokenizer = find_class(self.cfg.image_tokenizer_cls)( - self.cfg.image_tokenizer - ) - self.tokenizer = find_class(self.cfg.tokenizer_cls)(self.cfg.tokenizer) - self.backbone = find_class(self.cfg.backbone_cls)(self.cfg.backbone) - self.post_processor = find_class(self.cfg.post_processor_cls)( - self.cfg.post_processor - ) - self.decoder = find_class(self.cfg.decoder_cls)(self.cfg.decoder) - self.renderer = find_class(self.cfg.renderer_cls)(self.cfg.renderer) - self.image_processor = ImagePreprocessor() - self.isosurface_helper = None - - def forward( - self, - image: Union[ - PIL.Image.Image, - np.ndarray, - torch.FloatTensor, - List[PIL.Image.Image], - List[np.ndarray], - List[torch.FloatTensor], - ], - device: str, - ) -> torch.FloatTensor: - rgb_cond = self.image_processor(image, self.cfg.cond_image_size)[:, None].to( - device - ) - batch_size = rgb_cond.shape[0] - - input_image_tokens: torch.Tensor = self.image_tokenizer( - rearrange(rgb_cond, "B Nv H W C -> B Nv C H W", Nv=1), - ) - - input_image_tokens = rearrange( - input_image_tokens, "B Nv C Nt -> B (Nv Nt) C", Nv=1 - ) - - tokens: torch.Tensor = self.tokenizer(batch_size) - - tokens = self.backbone( - tokens, - encoder_hidden_states=input_image_tokens, - ) - - scene_codes = self.post_processor(self.tokenizer.detokenize(tokens)) - return scene_codes - - def render( - self, - scene_codes, - n_views: int, - elevation_deg: float = 0.0, - camera_distance: float = 1.9, - fovy_deg: float = 40.0, - height: int = 256, - width: int = 256, - return_type: str = "pil", - ): - rays_o, rays_d = get_spherical_cameras( - n_views, elevation_deg, camera_distance, fovy_deg, height, width - ) - rays_o, rays_d = rays_o.to(scene_codes.device), rays_d.to(scene_codes.device) - - def process_output(image: torch.FloatTensor): - if return_type == "pt": - return image - elif return_type == "np": - return image.detach().cpu().numpy() - elif return_type == "pil": - return Image.fromarray( - (image.detach().cpu().numpy() * 255.0).astype(np.uint8) - ) - else: - raise NotImplementedError - - images = [] - for scene_code in scene_codes: - images_ = [] - for i in range(n_views): - with torch.no_grad(): - image = self.renderer( - self.decoder, scene_code, rays_o[i], rays_d[i] - ) - images_.append(process_output(image)) - images.append(images_) - - return images - - def set_marching_cubes_resolution(self, resolution: int): - if ( - self.isosurface_helper is not None - and self.isosurface_helper.resolution == resolution - ): - return - self.isosurface_helper = MarchingCubeHelper(resolution) - - def extract_mesh(self, scene_codes, resolution: int = 256, threshold: float = 25.0): - self.set_marching_cubes_resolution(resolution) - meshes = [] - for scene_code in scene_codes: - with torch.no_grad(): - density = self.renderer.query_triplane( - self.decoder, - scale_tensor( - self.isosurface_helper.grid_vertices.to(scene_codes.device), - self.isosurface_helper.points_range, - (-self.renderer.cfg.radius, self.renderer.cfg.radius), - ), - scene_code, - )["density_act"] - v_pos, t_pos_idx = self.isosurface_helper(-(density - threshold)) - v_pos = scale_tensor( - v_pos, - self.isosurface_helper.points_range, - (-self.renderer.cfg.radius, self.renderer.cfg.radius), - ) - with torch.no_grad(): - color = self.renderer.query_triplane( - self.decoder, - v_pos, - scene_code, - )["color"] - mesh = trimesh.Trimesh( - vertices=v_pos.cpu().numpy(), - faces=t_pos_idx.cpu().numpy(), - vertex_colors=color.cpu().numpy(), - ) - meshes.append(mesh) - return meshes diff --git a/tsr/utils.py b/tsr/utils.py deleted file mode 100644 index 3b07fa6..0000000 --- a/tsr/utils.py +++ /dev/null @@ -1,474 +0,0 @@ -import importlib -import math -from collections import defaultdict -from dataclasses import dataclass -from typing import Any, Callable, Dict, List, Optional, Tuple, Union - -import imageio -import numpy as np -import PIL.Image -import torch -import torch.nn as nn -import torch.nn.functional as F -import trimesh -from omegaconf import DictConfig, OmegaConf -from PIL import Image - -def parse_structured(fields: Any, cfg: Optional[Union[dict, DictConfig]] = None) -> Any: - scfg = OmegaConf.merge(OmegaConf.structured(fields), cfg) - return scfg - - -def find_class(cls_string): - module_string = ".".join(cls_string.split(".")[:-1]) - cls_name = cls_string.split(".")[-1] - module = importlib.import_module(module_string, package=None) - cls = getattr(module, cls_name) - return cls - - -def get_intrinsic_from_fov(fov, H, W, bs=-1): - focal_length = 0.5 * H / np.tan(0.5 * fov) - intrinsic = np.identity(3, dtype=np.float32) - intrinsic[0, 0] = focal_length - intrinsic[1, 1] = focal_length - intrinsic[0, 2] = W / 2.0 - intrinsic[1, 2] = H / 2.0 - - if bs > 0: - intrinsic = intrinsic[None].repeat(bs, axis=0) - - return torch.from_numpy(intrinsic) - - -class BaseModule(nn.Module): - @dataclass - class Config: - pass - - cfg: Config # add this to every subclass of BaseModule to enable static type checking - - def __init__( - self, cfg: Optional[Union[dict, DictConfig]] = None, *args, **kwargs - ) -> None: - super().__init__() - self.cfg = parse_structured(self.Config, cfg) - self.configure(*args, **kwargs) - - def configure(self, *args, **kwargs) -> None: - raise NotImplementedError - - -class ImagePreprocessor: - def convert_and_resize( - self, - image: Union[PIL.Image.Image, np.ndarray, torch.Tensor], - size: int, - ): - if isinstance(image, PIL.Image.Image): - image = torch.from_numpy(np.array(image).astype(np.float32) / 255.0) - elif isinstance(image, np.ndarray): - if image.dtype == np.uint8: - image = torch.from_numpy(image.astype(np.float32) / 255.0) - else: - image = torch.from_numpy(image) - elif isinstance(image, torch.Tensor): - pass - - batched = image.ndim == 4 - - if not batched: - image = image[None, ...] - image = F.interpolate( - image.permute(0, 3, 1, 2), - (size, size), - mode="bilinear", - align_corners=False, - antialias=True, - ).permute(0, 2, 3, 1) - if not batched: - image = image[0] - return image - - def __call__( - self, - image: Union[ - PIL.Image.Image, - np.ndarray, - torch.FloatTensor, - List[PIL.Image.Image], - List[np.ndarray], - List[torch.FloatTensor], - ], - size: int, - ) -> Any: - if isinstance(image, (np.ndarray, torch.FloatTensor)) and image.ndim == 4: - image = self.convert_and_resize(image, size) - else: - if not isinstance(image, list): - image = [image] - image = [self.convert_and_resize(im, size) for im in image] - image = torch.stack(image, dim=0) - return image - - -def rays_intersect_bbox( - rays_o: torch.Tensor, - rays_d: torch.Tensor, - radius: float, - near: float = 0.0, - valid_thresh: float = 0.01, -): - input_shape = rays_o.shape[:-1] - rays_o, rays_d = rays_o.view(-1, 3), rays_d.view(-1, 3) - rays_d_valid = torch.where( - rays_d.abs() < 1e-6, torch.full_like(rays_d, 1e-6), rays_d - ) - if type(radius) in [int, float]: - radius = torch.FloatTensor( - [[-radius, radius], [-radius, radius], [-radius, radius]] - ).to(rays_o.device) - radius = ( - 1.0 - 1.0e-3 - ) * radius # tighten the radius to make sure the intersection point lies in the bounding box - interx0 = (radius[..., 1] - rays_o) / rays_d_valid - interx1 = (radius[..., 0] - rays_o) / rays_d_valid - t_near = torch.minimum(interx0, interx1).amax(dim=-1).clamp_min(near) - t_far = torch.maximum(interx0, interx1).amin(dim=-1) - - # check wheter a ray intersects the bbox or not - rays_valid = t_far - t_near > valid_thresh - - t_near[torch.where(~rays_valid)] = 0.0 - t_far[torch.where(~rays_valid)] = 0.0 - - t_near = t_near.view(*input_shape, 1) - t_far = t_far.view(*input_shape, 1) - rays_valid = rays_valid.view(*input_shape) - - return t_near, t_far, rays_valid - - -def chunk_batch(func: Callable, chunk_size: int, *args, **kwargs) -> Any: - if chunk_size <= 0: - return func(*args, **kwargs) - B = None - for arg in list(args) + list(kwargs.values()): - if isinstance(arg, torch.Tensor): - B = arg.shape[0] - break - assert ( - B is not None - ), "No tensor found in args or kwargs, cannot determine batch size." - out = defaultdict(list) - out_type = None - # max(1, B) to support B == 0 - for i in range(0, max(1, B), chunk_size): - out_chunk = func( - *[ - arg[i : i + chunk_size] if isinstance(arg, torch.Tensor) else arg - for arg in args - ], - **{ - k: arg[i : i + chunk_size] if isinstance(arg, torch.Tensor) else arg - for k, arg in kwargs.items() - }, - ) - if out_chunk is None: - continue - out_type = type(out_chunk) - if isinstance(out_chunk, torch.Tensor): - out_chunk = {0: out_chunk} - elif isinstance(out_chunk, tuple) or isinstance(out_chunk, list): - chunk_length = len(out_chunk) - out_chunk = {i: chunk for i, chunk in enumerate(out_chunk)} - elif isinstance(out_chunk, dict): - pass - else: - print( - f"Return value of func must be in type [torch.Tensor, list, tuple, dict], get {type(out_chunk)}." - ) - exit(1) - for k, v in out_chunk.items(): - v = v if torch.is_grad_enabled() else v.detach() - out[k].append(v) - - if out_type is None: - return None - - out_merged: Dict[Any, Optional[torch.Tensor]] = {} - for k, v in out.items(): - if all([vv is None for vv in v]): - # allow None in return value - out_merged[k] = None - elif all([isinstance(vv, torch.Tensor) for vv in v]): - out_merged[k] = torch.cat(v, dim=0) - else: - raise TypeError( - f"Unsupported types in return value of func: {[type(vv) for vv in v if not isinstance(vv, torch.Tensor)]}" - ) - - if out_type is torch.Tensor: - return out_merged[0] - elif out_type in [tuple, list]: - return out_type([out_merged[i] for i in range(chunk_length)]) - elif out_type is dict: - return out_merged - - -ValidScale = Union[Tuple[float, float], torch.FloatTensor] - - -def scale_tensor(dat: torch.FloatTensor, inp_scale: ValidScale, tgt_scale: ValidScale): - if inp_scale is None: - inp_scale = (0, 1) - if tgt_scale is None: - tgt_scale = (0, 1) - if isinstance(tgt_scale, torch.FloatTensor): - assert dat.shape[-1] == tgt_scale.shape[-1] - dat = (dat - inp_scale[0]) / (inp_scale[1] - inp_scale[0]) - dat = dat * (tgt_scale[1] - tgt_scale[0]) + tgt_scale[0] - return dat - - -def get_activation(name) -> Callable: - if name is None: - return lambda x: x - name = name.lower() - if name == "none": - return lambda x: x - elif name == "exp": - return lambda x: torch.exp(x) - elif name == "sigmoid": - return lambda x: torch.sigmoid(x) - elif name == "tanh": - return lambda x: torch.tanh(x) - elif name == "softplus": - return lambda x: F.softplus(x) - else: - try: - return getattr(F, name) - except AttributeError: - raise ValueError(f"Unknown activation function: {name}") - - -def get_ray_directions( - H: int, - W: int, - focal: Union[float, Tuple[float, float]], - principal: Optional[Tuple[float, float]] = None, - use_pixel_centers: bool = True, - normalize: bool = True, -) -> torch.FloatTensor: - """ - Get ray directions for all pixels in camera coordinate. - Reference: https://www.scratchapixel.com/lessons/3d-basic-rendering/ - ray-tracing-generating-camera-rays/standard-coordinate-systems - - Inputs: - H, W, focal, principal, use_pixel_centers: image height, width, focal length, principal point and whether use pixel centers - Outputs: - directions: (H, W, 3), the direction of the rays in camera coordinate - """ - pixel_center = 0.5 if use_pixel_centers else 0 - - if isinstance(focal, float): - fx, fy = focal, focal - cx, cy = W / 2, H / 2 - else: - fx, fy = focal - assert principal is not None - cx, cy = principal - - i, j = torch.meshgrid( - torch.arange(W, dtype=torch.float32) + pixel_center, - torch.arange(H, dtype=torch.float32) + pixel_center, - indexing="xy", - ) - - directions = torch.stack([(i - cx) / fx, -(j - cy) / fy, -torch.ones_like(i)], -1) - - if normalize: - directions = F.normalize(directions, dim=-1) - - return directions - - -def get_rays( - directions, - c2w, - keepdim=False, - normalize=False, -) -> Tuple[torch.FloatTensor, torch.FloatTensor]: - # Rotate ray directions from camera coordinate to the world coordinate - assert directions.shape[-1] == 3 - - if directions.ndim == 2: # (N_rays, 3) - if c2w.ndim == 2: # (4, 4) - c2w = c2w[None, :, :] - assert c2w.ndim == 3 # (N_rays, 4, 4) or (1, 4, 4) - rays_d = (directions[:, None, :] * c2w[:, :3, :3]).sum(-1) # (N_rays, 3) - rays_o = c2w[:, :3, 3].expand(rays_d.shape) - elif directions.ndim == 3: # (H, W, 3) - assert c2w.ndim in [2, 3] - if c2w.ndim == 2: # (4, 4) - rays_d = (directions[:, :, None, :] * c2w[None, None, :3, :3]).sum( - -1 - ) # (H, W, 3) - rays_o = c2w[None, None, :3, 3].expand(rays_d.shape) - elif c2w.ndim == 3: # (B, 4, 4) - rays_d = (directions[None, :, :, None, :] * c2w[:, None, None, :3, :3]).sum( - -1 - ) # (B, H, W, 3) - rays_o = c2w[:, None, None, :3, 3].expand(rays_d.shape) - elif directions.ndim == 4: # (B, H, W, 3) - assert c2w.ndim == 3 # (B, 4, 4) - rays_d = (directions[:, :, :, None, :] * c2w[:, None, None, :3, :3]).sum( - -1 - ) # (B, H, W, 3) - rays_o = c2w[:, None, None, :3, 3].expand(rays_d.shape) - - if normalize: - rays_d = F.normalize(rays_d, dim=-1) - if not keepdim: - rays_o, rays_d = rays_o.reshape(-1, 3), rays_d.reshape(-1, 3) - - return rays_o, rays_d - - -def get_spherical_cameras( - n_views: int, - elevation_deg: float, - camera_distance: float, - fovy_deg: float, - height: int, - width: int, -): - azimuth_deg = torch.linspace(0, 360.0, n_views + 1)[:n_views] - elevation_deg = torch.full_like(azimuth_deg, elevation_deg) - camera_distances = torch.full_like(elevation_deg, camera_distance) - - elevation = elevation_deg * math.pi / 180 - azimuth = azimuth_deg * math.pi / 180 - - # convert spherical coordinates to cartesian coordinates - # right hand coordinate system, x back, y right, z up - # elevation in (-90, 90), azimuth from +x to +y in (-180, 180) - camera_positions = torch.stack( - [ - camera_distances * torch.cos(elevation) * torch.cos(azimuth), - camera_distances * torch.cos(elevation) * torch.sin(azimuth), - camera_distances * torch.sin(elevation), - ], - dim=-1, - ) - - # default scene center at origin - center = torch.zeros_like(camera_positions) - # default camera up direction as +z - up = torch.as_tensor([0, 0, 1], dtype=torch.float32)[None, :].repeat(n_views, 1) - - fovy = torch.full_like(elevation_deg, fovy_deg) * math.pi / 180 - - lookat = F.normalize(center - camera_positions, dim=-1) - right = F.normalize(torch.cross(lookat, up), dim=-1) - up = F.normalize(torch.cross(right, lookat), dim=-1) - c2w3x4 = torch.cat( - [torch.stack([right, up, -lookat], dim=-1), camera_positions[:, :, None]], - dim=-1, - ) - c2w = torch.cat([c2w3x4, torch.zeros_like(c2w3x4[:, :1])], dim=1) - c2w[:, 3, 3] = 1.0 - - # get directions by dividing directions_unit_focal by focal length - focal_length = 0.5 * height / torch.tan(0.5 * fovy) - directions_unit_focal = get_ray_directions( - H=height, - W=width, - focal=1.0, - ) - directions = directions_unit_focal[None, :, :, :].repeat(n_views, 1, 1, 1) - directions[:, :, :, :2] = ( - directions[:, :, :, :2] / focal_length[:, None, None, None] - ) - # must use normalize=True to normalize directions here - rays_o, rays_d = get_rays(directions, c2w, keepdim=True, normalize=True) - - return rays_o, rays_d - - -def remove_background( - image: PIL.Image.Image, - rembg_session: Any = None, - force: bool = False, - **rembg_kwargs, -) -> PIL.Image.Image: - import rembg - do_remove = True - if image.mode == "RGBA" and image.getextrema()[3][0] < 255: - do_remove = False - do_remove = do_remove or force - if do_remove: - image = rembg.remove(image, session=rembg_session, **rembg_kwargs) - return image - - -def resize_foreground( - image: PIL.Image.Image, - ratio: float, -) -> PIL.Image.Image: - image = np.array(image) - assert image.shape[-1] == 4 - alpha = np.where(image[..., 3] > 0) - y1, y2, x1, x2 = ( - alpha[0].min(), - alpha[0].max(), - alpha[1].min(), - alpha[1].max(), - ) - # crop the foreground - fg = image[y1:y2, x1:x2] - # pad to square - size = max(fg.shape[0], fg.shape[1]) - ph0, pw0 = (size - fg.shape[0]) // 2, (size - fg.shape[1]) // 2 - ph1, pw1 = size - fg.shape[0] - ph0, size - fg.shape[1] - pw0 - new_image = np.pad( - fg, - ((ph0, ph1), (pw0, pw1), (0, 0)), - mode="constant", - constant_values=((0, 0), (0, 0), (0, 0)), - ) - - # compute padding according to the ratio - new_size = int(new_image.shape[0] / ratio) - # pad to size, double side - ph0, pw0 = (new_size - size) // 2, (new_size - size) // 2 - ph1, pw1 = new_size - size - ph0, new_size - size - pw0 - new_image = np.pad( - new_image, - ((ph0, ph1), (pw0, pw1), (0, 0)), - mode="constant", - constant_values=((0, 0), (0, 0), (0, 0)), - ) - new_image = PIL.Image.fromarray(new_image) - return new_image - - -def save_video( - frames: List[PIL.Image.Image], - output_path: str, - fps: int = 30, -): - # use imageio to save video - frames = [np.array(frame) for frame in frames] - writer = imageio.get_writer(output_path, fps=fps) - for frame in frames: - writer.append_data(frame) - writer.close() - - -def to_gradio_3d_orientation(mesh): - mesh.apply_transform(trimesh.transformations.rotation_matrix(-np.pi/2, [1, 0, 0])) - mesh.apply_scale([1, 1, -1]) - mesh.apply_transform(trimesh.transformations.rotation_matrix(np.pi/2, [0, 1, 0])) - return mesh diff --git a/utils.py b/utils.py deleted file mode 100644 index eb6b359..0000000 --- a/utils.py +++ /dev/null @@ -1,26 +0,0 @@ -import logging -import sys - -class WarningFilter(logging.Filter): - def filter(self, record): - if record.levelno == logging.WARNING: - record.msg = f"Warn!: {record.msg}" - return True - -def create_handler(stream, levels, formatter): - handler = logging.StreamHandler(stream) - handler.setLevel(min(levels)) - handler.addFilter(lambda record: record.levelno in levels) - handler.addFilter(WarningFilter()) # Apply the custom filter - handler.setFormatter(formatter) - - return handler -def setup_logger(logger_name, level, stdout_levels, stderr_levels, formatter): - logger = logging.getLogger(logger_name) - for handler in logger.handlers[:]: - logger.removeHandler(handler) - logger.setLevel(level) - stdout_handler = create_handler(sys.stdout, stdout_levels, formatter) - stderr_handler = create_handler(sys.stderr, stderr_levels, formatter) - logger.addHandler(stdout_handler) - logger.addHandler(stderr_handler) \ No newline at end of file diff --git a/webserver/server.py b/webserver/server.py index b69695a..1b76957 100644 --- a/webserver/server.py +++ b/webserver/server.py @@ -2,7 +2,7 @@ import server import folder_paths as comfy_paths import os -from ..shared_utils.common_utils import cstr +from ..shared_utils.log_utils import cstr ROOT_PATH = os.path.join(comfy_paths.get_folder_paths("custom_nodes")[0], "ComfyUI-3D-Pack") diff --git a/zero123plus/model.py b/zero123plus/model.py deleted file mode 100644 index cc3e771..0000000 --- a/zero123plus/model.py +++ /dev/null @@ -1,271 +0,0 @@ -import os -import numpy as np -import torch -import torch.nn as nn -import torch.nn.functional as F -import pytorch_lightning as pl -from tqdm import tqdm -from torchvision.transforms import v2 -from torchvision.utils import make_grid, save_image -from einops import rearrange - -from diffusers import DiffusionPipeline, EulerAncestralDiscreteScheduler, DDPMScheduler, UNet2DConditionModel -from .pipeline import RefOnlyNoisedUNet - - -def scale_latents(latents): - latents = (latents - 0.22) * 0.75 - return latents - - -def unscale_latents(latents): - latents = latents / 0.75 + 0.22 - return latents - - -def scale_image(image): - image = image * 0.5 / 0.8 - return image - - -def unscale_image(image): - image = image / 0.5 * 0.8 - return image - - -def extract_into_tensor(a, t, x_shape): - b, *_ = t.shape - out = a.gather(-1, t) - return out.reshape(b, *((1,) * (len(x_shape) - 1))) - - -class MVDiffusion(pl.LightningModule): - def __init__( - self, - stable_diffusion_config, - drop_cond_prob=0.1, - ): - super(MVDiffusion, self).__init__() - - self.drop_cond_prob = drop_cond_prob - - self.register_schedule() - - # init modules - pipeline = DiffusionPipeline.from_pretrained(**stable_diffusion_config) - pipeline.scheduler = EulerAncestralDiscreteScheduler.from_config( - pipeline.scheduler.config, timestep_spacing='trailing' - ) - self.pipeline = pipeline - - train_sched = DDPMScheduler.from_config(self.pipeline.scheduler.config) - if isinstance(self.pipeline.unet, UNet2DConditionModel): - self.pipeline.unet = RefOnlyNoisedUNet(self.pipeline.unet, train_sched, self.pipeline.scheduler) - - self.train_scheduler = train_sched # use ddpm scheduler during training - - self.unet = pipeline.unet - - # validation output buffer - self.validation_step_outputs = [] - - def register_schedule(self): - self.num_timesteps = 1000 - - # replace scaled_linear schedule with linear schedule as Zero123++ - beta_start = 0.00085 - beta_end = 0.0120 - betas = torch.linspace(beta_start, beta_end, 1000, dtype=torch.float32) - - alphas = 1. - betas - alphas_cumprod = torch.cumprod(alphas, dim=0) - alphas_cumprod_prev = torch.cat([torch.ones(1, dtype=torch.float64), alphas_cumprod[:-1]], 0) - - self.register_buffer('betas', betas.float()) - self.register_buffer('alphas_cumprod', alphas_cumprod.float()) - self.register_buffer('alphas_cumprod_prev', alphas_cumprod_prev.float()) - - # calculations for diffusion q(x_t | x_{t-1}) and others - self.register_buffer('sqrt_alphas_cumprod', torch.sqrt(alphas_cumprod).float()) - self.register_buffer('sqrt_one_minus_alphas_cumprod', torch.sqrt(1 - alphas_cumprod).float()) - - self.register_buffer('sqrt_recip_alphas_cumprod', torch.sqrt(1. / alphas_cumprod).float()) - self.register_buffer('sqrt_recipm1_alphas_cumprod', torch.sqrt(1. / alphas_cumprod - 1).float()) - - def on_fit_start(self): - device = torch.device(f'cuda:{self.global_rank}') - self.pipeline.to(device) - if self.global_rank == 0: - os.makedirs(os.path.join(self.logdir, 'images'), exist_ok=True) - os.makedirs(os.path.join(self.logdir, 'images_val'), exist_ok=True) - - def prepare_batch_data(self, batch): - # prepare stable diffusion input - cond_imgs = batch['cond_imgs'] # (B, C, H, W) - cond_imgs = cond_imgs.to(self.device) - - # random resize the condition image - cond_size = np.random.randint(128, 513) - cond_imgs = v2.functional.resize(cond_imgs, cond_size, interpolation=3, antialias=True).clamp(0, 1) - - target_imgs = batch['target_imgs'] # (B, 6, C, H, W) - target_imgs = v2.functional.resize(target_imgs, 320, interpolation=3, antialias=True).clamp(0, 1) - target_imgs = rearrange(target_imgs, 'b (x y) c h w -> b c (x h) (y w)', x=3, y=2) # (B, C, 3H, 2W) - target_imgs = target_imgs.to(self.device) - - return cond_imgs, target_imgs - - @torch.no_grad() - def forward_vision_encoder(self, images): - dtype = next(self.pipeline.vision_encoder.parameters()).dtype - image_pil = [v2.functional.to_pil_image(images[i]) for i in range(images.shape[0])] - image_pt = self.pipeline.feature_extractor_clip(images=image_pil, return_tensors="pt").pixel_values - image_pt = image_pt.to(device=self.device, dtype=dtype) - global_embeds = self.pipeline.vision_encoder(image_pt, output_hidden_states=False).image_embeds - global_embeds = global_embeds.unsqueeze(-2) - - encoder_hidden_states = self.pipeline._encode_prompt("", self.device, 1, False)[0] - ramp = global_embeds.new_tensor(self.pipeline.config.ramping_coefficients).unsqueeze(-1) - encoder_hidden_states = encoder_hidden_states + global_embeds * ramp - - return encoder_hidden_states - - @torch.no_grad() - def encode_condition_image(self, images): - dtype = next(self.pipeline.vae.parameters()).dtype - image_pil = [v2.functional.to_pil_image(images[i]) for i in range(images.shape[0])] - image_pt = self.pipeline.feature_extractor_vae(images=image_pil, return_tensors="pt").pixel_values - image_pt = image_pt.to(device=self.device, dtype=dtype) - latents = self.pipeline.vae.encode(image_pt).latent_dist.sample() - return latents - - @torch.no_grad() - def encode_target_images(self, images): - dtype = next(self.pipeline.vae.parameters()).dtype - # equals to scaling images to [-1, 1] first and then call scale_image - images = (images - 0.5) / 0.8 # [-0.625, 0.625] - posterior = self.pipeline.vae.encode(images.to(dtype)).latent_dist - latents = posterior.sample() * self.pipeline.vae.config.scaling_factor - latents = scale_latents(latents) - return latents - - def forward_unet(self, latents, t, prompt_embeds, cond_latents): - dtype = next(self.pipeline.unet.parameters()).dtype - latents = latents.to(dtype) - prompt_embeds = prompt_embeds.to(dtype) - cond_latents = cond_latents.to(dtype) - cross_attention_kwargs = dict(cond_lat=cond_latents) - pred_noise = self.pipeline.unet( - latents, - t, - encoder_hidden_states=prompt_embeds, - cross_attention_kwargs=cross_attention_kwargs, - return_dict=False, - )[0] - return pred_noise - - def predict_start_from_z_and_v(self, x_t, t, v): - return ( - extract_into_tensor(self.sqrt_alphas_cumprod, t, x_t.shape) * x_t - - extract_into_tensor(self.sqrt_one_minus_alphas_cumprod, t, x_t.shape) * v - ) - - def get_v(self, x, noise, t): - return ( - extract_into_tensor(self.sqrt_alphas_cumprod, t, x.shape) * noise - - extract_into_tensor(self.sqrt_one_minus_alphas_cumprod, t, x.shape) * x - ) - - def training_step(self, batch, batch_idx): - # get input - cond_imgs, target_imgs = self.prepare_batch_data(batch) - - # sample random timestep - B = cond_imgs.shape[0] - - t = torch.randint(0, self.num_timesteps, size=(B,)).long().to(self.device) - - # classifier-free guidance - if np.random.rand() < self.drop_cond_prob: - prompt_embeds = self.pipeline._encode_prompt([""]*B, self.device, 1, False) - cond_latents = self.encode_condition_image(torch.zeros_like(cond_imgs)) - else: - prompt_embeds = self.forward_vision_encoder(cond_imgs) - cond_latents = self.encode_condition_image(cond_imgs) - - latents = self.encode_target_images(target_imgs) - noise = torch.randn_like(latents) - latents_noisy = self.train_scheduler.add_noise(latents, noise, t) - - v_pred = self.forward_unet(latents_noisy, t, prompt_embeds, cond_latents) - v_target = self.get_v(latents, noise, t) - - loss, loss_dict = self.compute_loss(v_pred, v_target) - - # logging - self.log_dict(loss_dict, prog_bar=True, logger=True, on_step=True, on_epoch=True) - self.log("global_step", self.global_step, prog_bar=True, logger=True, on_step=True, on_epoch=False) - lr = self.optimizers().param_groups[0]['lr'] - self.log('lr_abs', lr, prog_bar=True, logger=True, on_step=True, on_epoch=False) - - if self.global_step % 500 == 0 and self.global_rank == 0: - with torch.no_grad(): - latents_pred = self.predict_start_from_z_and_v(latents_noisy, t, v_pred) - - latents = unscale_latents(latents_pred) - images = unscale_image(self.pipeline.vae.decode(latents / self.pipeline.vae.config.scaling_factor, return_dict=False)[0]) # [-1, 1] - images = (images * 0.5 + 0.5).clamp(0, 1) - images = torch.cat([target_imgs, images], dim=-2) - - grid = make_grid(images, nrow=images.shape[0], normalize=True, value_range=(0, 1)) - save_image(grid, os.path.join(self.logdir, 'images', f'train_{self.global_step:07d}.png')) - - return loss - - def compute_loss(self, noise_pred, noise_gt): - loss = F.mse_loss(noise_pred, noise_gt) - - prefix = 'train' - loss_dict = {} - loss_dict.update({f'{prefix}/loss': loss}) - - return loss, loss_dict - - @torch.no_grad() - def validation_step(self, batch, batch_idx): - # get input - cond_imgs, target_imgs = self.prepare_batch_data(batch) - - images_pil = [v2.functional.to_pil_image(cond_imgs[i]) for i in range(cond_imgs.shape[0])] - - outputs = [] - for cond_img in images_pil: - latent = self.pipeline(cond_img, num_inference_steps=75, output_type='latent').images - image = unscale_image(self.pipeline.vae.decode(latent / self.pipeline.vae.config.scaling_factor, return_dict=False)[0]) # [-1, 1] - image = (image * 0.5 + 0.5).clamp(0, 1) - outputs.append(image) - outputs = torch.cat(outputs, dim=0).to(self.device) - images = torch.cat([target_imgs, outputs], dim=-2) - - self.validation_step_outputs.append(images) - - @torch.no_grad() - def on_validation_epoch_end(self): - images = torch.cat(self.validation_step_outputs, dim=0) - - all_images = self.all_gather(images) - all_images = rearrange(all_images, 'r b c h w -> (r b) c h w') - - if self.global_rank == 0: - grid = make_grid(all_images, nrow=8, normalize=True, value_range=(0, 1)) - save_image(grid, os.path.join(self.logdir, 'images_val', f'val_{self.global_step:07d}.png')) - - self.validation_step_outputs.clear() # free memory - - def configure_optimizers(self): - lr = self.learning_rate - - optimizer = torch.optim.AdamW(self.unet.parameters(), lr=lr) - scheduler = torch.optim.lr_scheduler.CosineAnnealingWarmRestarts(optimizer, 3000, eta_min=lr/4) - - return {'optimizer': optimizer, 'lr_scheduler': scheduler} diff --git a/zero123plus/pipeline.py b/zero123plus/pipeline.py deleted file mode 100644 index 4e8c94a..0000000 --- a/zero123plus/pipeline.py +++ /dev/null @@ -1,416 +0,0 @@ -from typing import Any, Dict, Optional -from diffusers.models import AutoencoderKL, UNet2DConditionModel -from diffusers.schedulers import KarrasDiffusionSchedulers - -import numpy -import torch -import torch.nn as nn -import torch.utils.checkpoint -import torch.distributed -import transformers -from collections import OrderedDict -from PIL import Image -from torchvision import transforms -from transformers import CLIPImageProcessor, CLIPTextModel, CLIPTokenizer - -import diffusers -from diffusers import ( - AutoencoderKL, - DDPMScheduler, - DiffusionPipeline, - EulerAncestralDiscreteScheduler, - UNet2DConditionModel, - ImagePipelineOutput -) -from diffusers.image_processor import VaeImageProcessor -from diffusers.models.attention_processor import Attention, AttnProcessor, XFormersAttnProcessor, AttnProcessor2_0 -from diffusers.utils.import_utils import is_xformers_available - -import comfy.utils - -def callback_update_comfy_bar(pipe, step_index, timestep, callback_kwargs): - pipe.comfy_pbar.update_absolute(step_index + 1) - return callback_kwargs - -def to_rgb_image(maybe_rgba: Image.Image): - if maybe_rgba.mode == 'RGB': - return maybe_rgba - elif maybe_rgba.mode == 'RGBA': - rgba = maybe_rgba - img = numpy.random.randint(255, 256, size=[rgba.size[1], rgba.size[0], 3], dtype=numpy.uint8) - img = Image.fromarray(img, 'RGB') - img.paste(rgba, mask=rgba.getchannel('A')) - return img - else: - raise ValueError("Unsupported image type.", maybe_rgba.mode) - - -class ReferenceOnlyAttnProc(torch.nn.Module): - def __init__( - self, - chained_proc, - enabled=False, - name=None - ) -> None: - super().__init__() - self.enabled = enabled - self.chained_proc = chained_proc - self.name = name - - def __call__( - self, attn: Attention, hidden_states, encoder_hidden_states=None, attention_mask=None, - mode="w", ref_dict: dict = None, is_cfg_guidance = False - ) -> Any: - if encoder_hidden_states is None: - encoder_hidden_states = hidden_states - if self.enabled and is_cfg_guidance: - res0 = self.chained_proc(attn, hidden_states[:1], encoder_hidden_states[:1], attention_mask) - hidden_states = hidden_states[1:] - encoder_hidden_states = encoder_hidden_states[1:] - if self.enabled: - if mode == 'w': - ref_dict[self.name] = encoder_hidden_states - elif mode == 'r': - encoder_hidden_states = torch.cat([encoder_hidden_states, ref_dict.pop(self.name)], dim=1) - elif mode == 'm': - encoder_hidden_states = torch.cat([encoder_hidden_states, ref_dict[self.name]], dim=1) - else: - assert False, mode - res = self.chained_proc(attn, hidden_states, encoder_hidden_states, attention_mask) - if self.enabled and is_cfg_guidance: - res = torch.cat([res0, res]) - return res - - -class RefOnlyNoisedUNet(torch.nn.Module): - def __init__(self, unet: UNet2DConditionModel, train_sched: DDPMScheduler, val_sched: EulerAncestralDiscreteScheduler) -> None: - super().__init__() - self.unet = unet - self.train_sched = train_sched - self.val_sched = val_sched - - unet_lora_attn_procs = dict() - for name, _ in unet.attn_processors.items(): - if torch.__version__ >= '2.0': - default_attn_proc = AttnProcessor2_0() - elif is_xformers_available(): - default_attn_proc = XFormersAttnProcessor() - else: - default_attn_proc = AttnProcessor() - unet_lora_attn_procs[name] = ReferenceOnlyAttnProc( - default_attn_proc, enabled=name.endswith("attn1.processor"), name=name - ) - unet.set_attn_processor(unet_lora_attn_procs) - - def __getattr__(self, name: str): - try: - return super().__getattr__(name) - except AttributeError: - return getattr(self.unet, name) - - def forward_cond(self, noisy_cond_lat, timestep, encoder_hidden_states, class_labels, ref_dict, is_cfg_guidance, **kwargs): - if is_cfg_guidance: - encoder_hidden_states = encoder_hidden_states[1:] - class_labels = class_labels[1:] - self.unet( - noisy_cond_lat, timestep, - encoder_hidden_states=encoder_hidden_states, - class_labels=class_labels, - cross_attention_kwargs=dict(mode="w", ref_dict=ref_dict), - **kwargs - ) - - def forward( - self, sample, timestep, encoder_hidden_states, class_labels=None, - *args, cross_attention_kwargs, - down_block_res_samples=None, mid_block_res_sample=None, - **kwargs - ): - cond_lat = cross_attention_kwargs['cond_lat'] - is_cfg_guidance = cross_attention_kwargs.get('is_cfg_guidance', False) - noise = torch.randn_like(cond_lat) - if self.training: - noisy_cond_lat = self.train_sched.add_noise(cond_lat, noise, timestep) - noisy_cond_lat = self.train_sched.scale_model_input(noisy_cond_lat, timestep) - else: - noisy_cond_lat = self.val_sched.add_noise(cond_lat, noise, timestep.reshape(-1)) - noisy_cond_lat = self.val_sched.scale_model_input(noisy_cond_lat, timestep.reshape(-1)) - ref_dict = {} - self.forward_cond( - noisy_cond_lat, timestep, - encoder_hidden_states, class_labels, - ref_dict, is_cfg_guidance, **kwargs - ) - weight_dtype = self.unet.dtype - return self.unet( - sample, timestep, - encoder_hidden_states, *args, - class_labels=class_labels, - cross_attention_kwargs=dict(mode="r", ref_dict=ref_dict, is_cfg_guidance=is_cfg_guidance), - down_block_additional_residuals=[ - sample.to(dtype=weight_dtype) for sample in down_block_res_samples - ] if down_block_res_samples is not None else None, - mid_block_additional_residual=( - mid_block_res_sample.to(dtype=weight_dtype) - if mid_block_res_sample is not None else None - ), - **kwargs - ) - - -def scale_latents(latents): - latents = (latents - 0.22) * 0.75 - return latents - - -def unscale_latents(latents): - latents = latents / 0.75 + 0.22 - return latents - - -def scale_image(image): - image = image * 0.5 / 0.8 - return image - - -def unscale_image(image): - image = image / 0.5 * 0.8 - return image - - -class DepthControlUNet(torch.nn.Module): - def __init__(self, unet: RefOnlyNoisedUNet, controlnet: Optional[diffusers.ControlNetModel] = None, conditioning_scale=1.0) -> None: - super().__init__() - self.unet = unet - if controlnet is None: - self.controlnet = diffusers.ControlNetModel.from_unet(unet.unet) - else: - self.controlnet = controlnet - DefaultAttnProc = AttnProcessor2_0 - if is_xformers_available(): - DefaultAttnProc = XFormersAttnProcessor - self.controlnet.set_attn_processor(DefaultAttnProc()) - self.conditioning_scale = conditioning_scale - - def __getattr__(self, name: str): - try: - return super().__getattr__(name) - except AttributeError: - return getattr(self.unet, name) - - def forward(self, sample, timestep, encoder_hidden_states, class_labels=None, *args, cross_attention_kwargs: dict, **kwargs): - cross_attention_kwargs = dict(cross_attention_kwargs) - control_depth = cross_attention_kwargs.pop('control_depth') - down_block_res_samples, mid_block_res_sample = self.controlnet( - sample, - timestep, - encoder_hidden_states=encoder_hidden_states, - controlnet_cond=control_depth, - conditioning_scale=self.conditioning_scale, - return_dict=False, - ) - return self.unet( - sample, - timestep, - encoder_hidden_states=encoder_hidden_states, - down_block_res_samples=down_block_res_samples, - mid_block_res_sample=mid_block_res_sample, - cross_attention_kwargs=cross_attention_kwargs - ) - - -class ModuleListDict(torch.nn.Module): - def __init__(self, procs: dict) -> None: - super().__init__() - self.keys = sorted(procs.keys()) - self.values = torch.nn.ModuleList(procs[k] for k in self.keys) - - def __getitem__(self, key): - return self.values[self.keys.index(key)] - - -class SuperNet(torch.nn.Module): - def __init__(self, state_dict: Dict[str, torch.Tensor]): - super().__init__() - state_dict = OrderedDict((k, state_dict[k]) for k in sorted(state_dict.keys())) - self.layers = torch.nn.ModuleList(state_dict.values()) - self.mapping = dict(enumerate(state_dict.keys())) - self.rev_mapping = {v: k for k, v in enumerate(state_dict.keys())} - - # .processor for unet, .self_attn for text encoder - self.split_keys = [".processor", ".self_attn"] - - # we add a hook to state_dict() and load_state_dict() so that the - # naming fits with `unet.attn_processors` - def map_to(module, state_dict, *args, **kwargs): - new_state_dict = {} - for key, value in state_dict.items(): - num = int(key.split(".")[1]) # 0 is always "layers" - new_key = key.replace(f"layers.{num}", module.mapping[num]) - new_state_dict[new_key] = value - - return new_state_dict - - def remap_key(key, state_dict): - for k in self.split_keys: - if k in key: - return key.split(k)[0] + k - return key.split('.')[0] - - def map_from(module, state_dict, *args, **kwargs): - all_keys = list(state_dict.keys()) - for key in all_keys: - replace_key = remap_key(key, state_dict) - new_key = key.replace(replace_key, f"layers.{module.rev_mapping[replace_key]}") - state_dict[new_key] = state_dict[key] - del state_dict[key] - - self._register_state_dict_hook(map_to) - self._register_load_state_dict_pre_hook(map_from, with_module=True) - - -class Zero123PlusPipeline(diffusers.StableDiffusionPipeline): - tokenizer: transformers.CLIPTokenizer - text_encoder: transformers.CLIPTextModel - vision_encoder: transformers.CLIPVisionModelWithProjection - - feature_extractor_clip: transformers.CLIPImageProcessor - unet: UNet2DConditionModel - scheduler: diffusers.schedulers.KarrasDiffusionSchedulers - - vae: AutoencoderKL - ramping: nn.Linear - - feature_extractor_vae: transformers.CLIPImageProcessor - - depth_transforms_multi = transforms.Compose([ - transforms.ToTensor(), - transforms.Normalize([0.5], [0.5]) - ]) - - def __init__( - self, - vae: AutoencoderKL, - text_encoder: CLIPTextModel, - tokenizer: CLIPTokenizer, - unet: UNet2DConditionModel, - scheduler: KarrasDiffusionSchedulers, - vision_encoder: transformers.CLIPVisionModelWithProjection, - feature_extractor_clip: CLIPImageProcessor, - feature_extractor_vae: CLIPImageProcessor, - ramping_coefficients: Optional[list] = None, - safety_checker=None, - ): - DiffusionPipeline.__init__(self) - - self.register_modules( - vae=vae, text_encoder=text_encoder, tokenizer=tokenizer, - unet=unet, scheduler=scheduler, safety_checker=None, - vision_encoder=vision_encoder, - feature_extractor_clip=feature_extractor_clip, - feature_extractor_vae=feature_extractor_vae - ) - self.register_to_config(ramping_coefficients=ramping_coefficients) - self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1) - self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor) - - def prepare(self): - train_sched = DDPMScheduler.from_config(self.scheduler.config) - if isinstance(self.unet, UNet2DConditionModel): - self.unet = RefOnlyNoisedUNet(self.unet, train_sched, self.scheduler).eval() - - def add_controlnet(self, controlnet: Optional[diffusers.ControlNetModel] = None, conditioning_scale=1.0): - self.prepare() - self.unet = DepthControlUNet(self.unet, controlnet, conditioning_scale) - return SuperNet(OrderedDict([('controlnet', self.unet.controlnet)])) - - def encode_condition_image(self, image: torch.Tensor): - image = self.vae.encode(image).latent_dist.sample() - return image - - @torch.no_grad() - def __call__( - self, - image: Image.Image = None, - prompt = "", - *args, - num_images_per_prompt: Optional[int] = 1, - guidance_scale=4.0, - depth_image: Image.Image = None, - output_type: Optional[str] = "pil", - width=640, - height=960, - num_inference_steps=28, - return_dict=True, - **kwargs - ): - self.prepare() - if image is None: - raise ValueError("Inputting embeddings not supported for this pipeline. Please pass an image.") - assert not isinstance(image, torch.Tensor) - image = to_rgb_image(image) - image_1 = self.feature_extractor_vae(images=image, return_tensors="pt").pixel_values - image_2 = self.feature_extractor_clip(images=image, return_tensors="pt").pixel_values - if depth_image is not None and hasattr(self.unet, "controlnet"): - depth_image = to_rgb_image(depth_image) - depth_image = self.depth_transforms_multi(depth_image).to( - device=self.unet.controlnet.device, dtype=self.unet.controlnet.dtype - ) - image = image_1.to(device=self.vae.device, dtype=self.vae.dtype) - image_2 = image_2.to(device=self.vae.device, dtype=self.vae.dtype) - cond_lat = self.encode_condition_image(image) - if guidance_scale > 1: - negative_lat = self.encode_condition_image(torch.zeros_like(image)) - cond_lat = torch.cat([negative_lat, cond_lat]) - encoded = self.vision_encoder(image_2, output_hidden_states=False) - global_embeds = encoded.image_embeds - global_embeds = global_embeds.unsqueeze(-2) - - if hasattr(self, "encode_prompt"): - encoder_hidden_states = self.encode_prompt( - prompt, - self.device, - num_images_per_prompt, - False - )[0] - else: - encoder_hidden_states = self._encode_prompt( - prompt, - self.device, - num_images_per_prompt, - False - ) - ramp = global_embeds.new_tensor(self.config.ramping_coefficients).unsqueeze(-1) - encoder_hidden_states = encoder_hidden_states + global_embeds * ramp - cak = dict(cond_lat=cond_lat) - if hasattr(self.unet, "controlnet"): - cak['control_depth'] = depth_image - - self.comfy_pbar = comfy.utils.ProgressBar(num_inference_steps) - - latents: torch.Tensor = super().__call__( - None, - *args, - cross_attention_kwargs=cak, - guidance_scale=guidance_scale, - num_images_per_prompt=num_images_per_prompt, - prompt_embeds=encoder_hidden_states, - num_inference_steps=num_inference_steps, - output_type='latent', - width=width, - height=height, - callback_on_step_end=callback_update_comfy_bar, - callback_on_step_end_tensor_inputs=[], - **kwargs - ).images - latents = unscale_latents(latents) - if not output_type == "latent": - image = unscale_image(self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]) - else: - image = latents - - image = self.image_processor.postprocess(image, output_type=output_type) - if not return_dict: - return (image,) - - return ImagePipelineOutput(images=image)